{"id":19187,"artifact_id":18171,"version":1,"data":{"version":1,"artifact":{"chain":"tezos","title":"Dream #20211206","artist":"tz1djshvCnhi5p5wAebiBb2XQLcvVKBqyH7F","tokenId":"573145","description":"An interactive 3D artwork, created by @neoyume\nOptimal experience :\n🔉 with sound ON (after a click on Chrome)\n🎧 with headphones\n🖥 on a computer\n\nMade with \nPolygonJs / ThreeJs\nLogic Pro X\n\nMore information\n➡️ neoyume.com","contractAddress":"KT1RJ6PbjHpwc3M5rw5s2Nbmefwbuwbdxton"},"snapshot":{"net":[{"data":{"url":"https://ipfs.arkivo.art/ipfs/QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw?creator=tz1djshvCnhi5p5wAebiBb2XQLcvVKBqyH7F&viewer=&objkt=573145","host":"ipfs.arkivo.art","path":"/ipfs/QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw","type":"http","query":"?creator=tz1djshvCnhi5p5wAebiBb2XQLcvVKBqyH7F&viewer=&objkt=573145","method":"GET","headers":{"sec-ch-ua":"\"HeadlessChrome\";v=\"119\", \"Chromium\";v=\"119\", \"Not?A_Brand\";v=\"24\"","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/119.0.6045.9 Safari/537.36","sec-ch-ua-mobile":"?0","sec-ch-ua-platform":"\"Linux\"","upgrade-insecure-requests":"1"},"fragment":"","postData":null,"protocol":"https:"},"type":1,"external":false,"timestamp":1723918834796},{"data":{"url":"https://ipfs.arkivo.art/ipfs/QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw?creator=tz1djshvCnhi5p5wAebiBb2XQLcvVKBqyH7F&viewer=&objkt=573145","body":"","status":301,"headers":{"date":"Sat, 17 Aug 2024 18:20:34 GMT","server":"nginx/1.27.0","location":"/ipfs/QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw/?creator=tz1djshvCnhi5p5wAebiBb2XQLcvVKBqyH7F&viewer=&objkt=573145","connection":"keep-alive","x-ipfs-path":"/ipfs/QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw","content-type":"text/html; charset=utf-8","x-ipfs-roots":"QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw","content-length":"162","access-control-allow-origin":"*","access-control-allow-headers":"Content-Type\nRange\nUser-Agent\nX-Requested-With","access-control-allow-methods":"GET\nHEAD\nOPTIONS","access-control-expose-headers":"Content-Length\nContent-Range\nX-Chunked-Output\nX-Ipfs-Path\nX-Ipfs-Roots\nX-Stream-Output"}},"type":2,"external":false,"timestamp":1723918834834},{"data":{"url":"https://ipfs.arkivo.art/ipfs/QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw/?creator=tz1djshvCnhi5p5wAebiBb2XQLcvVKBqyH7F&viewer=&objkt=573145","host":"ipfs.arkivo.art","path":"/ipfs/QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw/","type":"http","query":"?creator=tz1djshvCnhi5p5wAebiBb2XQLcvVKBqyH7F&viewer=&objkt=573145","method":"GET","headers":{"sec-ch-ua":"\"HeadlessChrome\";v=\"119\", \"Chromium\";v=\"119\", \"Not?A_Brand\";v=\"24\"","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/119.0.6045.9 Safari/537.36","sec-ch-ua-mobile":"?0","sec-ch-ua-platform":"\"Linux\"","upgrade-insecure-requests":"1"},"fragment":"","postData":null,"protocol":"https:"},"type":1,"external":false,"timestamp":1723918834834},{"data":{"url":"https://ipfs.arkivo.art/ipfs/QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw/?creator=tz1djshvCnhi5p5wAebiBb2XQLcvVKBqyH7F&viewer=&objkt=573145","body":"","status":200,"headers":{"date":"Sat, 17 Aug 2024 18:20:34 GMT","etag":"\"QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw\"","server":"nginx/1.27.0","connection":"keep-alive","x-ipfs-path":"/ipfs/QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw/","content-type":"text/html","x-ipfs-roots":"QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw","accept-ranges":"bytes","cache-control":"public, max-age=29030400, immutable","content-length":"2728","access-control-allow-origin":"*","access-control-allow-headers":"Content-Type\nRange\nUser-Agent\nX-Requested-With","access-control-allow-methods":"GET\nHEAD\nOPTIONS","access-control-expose-headers":"Content-Length\nContent-Range\nX-Chunked-Output\nX-Ipfs-Path\nX-Ipfs-Roots\nX-Stream-Output"}},"type":2,"external":false,"timestamp":1723918834851},{"data":{"url":"https://ipfs.arkivo.art/ipfs/QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw/style.css","host":"ipfs.arkivo.art","path":"/ipfs/QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw/style.css","type":"http","query":"","method":"GET","headers":{"referer":"https://ipfs.arkivo.art/ipfs/QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw/?creator=tz1djshvCnhi5p5wAebiBb2XQLcvVKBqyH7F&viewer=&objkt=573145","sec-ch-ua":"\"HeadlessChrome\";v=\"119\", \"Chromium\";v=\"119\", \"Not?A_Brand\";v=\"24\"","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/119.0.6045.9 Safari/537.36","sec-ch-ua-mobile":"?0","sec-ch-ua-platform":"\"Linux\""},"fragment":"","postData":null,"protocol":"https:"},"type":1,"external":false,"timestamp":1723918834882},{"data":{"url":"https://ipfs.arkivo.art/ipfs/QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw/style.css","body":"","status":200,"headers":{"date":"Sat, 17 Aug 2024 18:20:34 GMT","etag":"\"QmPbsQLLXNhFAwKHqFy7nJfyFfmhwqU4gypXMEAr9LWc7Y\"","server":"nginx/1.27.0","connection":"keep-alive","x-ipfs-path":"/ipfs/QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw/style.css","content-type":"text/css; charset=utf-8","x-ipfs-roots":"QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw,QmPbsQLLXNhFAwKHqFy7nJfyFfmhwqU4gypXMEAr9LWc7Y","accept-ranges":"bytes","cache-control":"public, max-age=29030400, immutable","content-length":"243","access-control-allow-origin":"*","access-control-allow-headers":"Content-Type, Range, User-Agent, X-Requested-With","access-control-allow-methods":"GET, HEAD, OPTIONS","access-control-expose-headers":"Content-Length, Content-Range, X-Chunked-Output, X-Ipfs-Path, X-Ipfs-Roots, X-Stream-Output"}},"type":2,"external":false,"timestamp":1723918834883},{"data":{"url":"https://ipfs.arkivo.art/ipfs/QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw/viewer.js","host":"ipfs.arkivo.art","path":"/ipfs/QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw/viewer.js","type":"http","query":"","method":"GET","headers":{"referer":"https://ipfs.arkivo.art/ipfs/QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw/?creator=tz1djshvCnhi5p5wAebiBb2XQLcvVKBqyH7F&viewer=&objkt=573145","sec-ch-ua":"\"HeadlessChrome\";v=\"119\", \"Chromium\";v=\"119\", \"Not?A_Brand\";v=\"24\"","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/119.0.6045.9 Safari/537.36","sec-ch-ua-mobile":"?0","sec-ch-ua-platform":"\"Linux\""},"fragment":"","postData":null,"protocol":"https:"},"type":1,"external":false,"timestamp":1723918834885},{"data":{"url":"https://ipfs.arkivo.art/ipfs/QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw/viewer.js","body":"","status":200,"headers":{"date":"Sat, 17 Aug 2024 18:20:34 GMT","etag":"\"QmRBYaJ9nRSUg8YGywhpJmBWfv65FRnaph84RVyJxa95PJ\"","server":"nginx/1.27.0","connection":"keep-alive","x-ipfs-path":"/ipfs/QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw/viewer.js","content-type":"text/javascript; charset=utf-8","x-ipfs-roots":"QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw,QmRBYaJ9nRSUg8YGywhpJmBWfv65FRnaph84RVyJxa95PJ","accept-ranges":"bytes","cache-control":"public, max-age=29030400, immutable","content-length":"11766","access-control-allow-origin":"*","access-control-allow-headers":"Content-Type, Range, User-Agent, X-Requested-With","access-control-allow-methods":"GET, HEAD, OPTIONS","access-control-expose-headers":"Content-Length, Content-Range, X-Chunked-Output, X-Ipfs-Path, X-Ipfs-Roots, X-Stream-Output"}},"type":2,"external":false,"timestamp":1723918834904},{"data":{"url":"https://ipfs.arkivo.art/ipfs/QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw/dream06.polygonjs","host":"ipfs.arkivo.art","path":"/ipfs/QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw/dream06.polygonjs","type":"http","query":"","method":"GET","headers":{"referer":"https://ipfs.arkivo.art/ipfs/QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw/?creator=tz1djshvCnhi5p5wAebiBb2XQLcvVKBqyH7F&viewer=&objkt=573145","sec-ch-ua":"\"HeadlessChrome\";v=\"119\", \"Chromium\";v=\"119\", \"Not?A_Brand\";v=\"24\"","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/119.0.6045.9 Safari/537.36","sec-ch-ua-mobile":"?0","sec-ch-ua-platform":"\"Linux\""},"fragment":"","postData":null,"protocol":"https:"},"type":1,"external":false,"timestamp":1723918834932},{"data":{"url":"https://ipfs.arkivo.art/ipfs/QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw/poster.jpg","host":"ipfs.arkivo.art","path":"/ipfs/QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw/poster.jpg","type":"http","query":"","method":"GET","headers":{"referer":"https://ipfs.arkivo.art/ipfs/QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw/?creator=tz1djshvCnhi5p5wAebiBb2XQLcvVKBqyH7F&viewer=&objkt=573145","sec-ch-ua":"\"HeadlessChrome\";v=\"119\", \"Chromium\";v=\"119\", \"Not?A_Brand\";v=\"24\"","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/119.0.6045.9 Safari/537.36","sec-ch-ua-mobile":"?0","sec-ch-ua-platform":"\"Linux\""},"fragment":"","postData":null,"protocol":"https:"},"type":1,"external":false,"timestamp":1723918834933},{"data":{"url":"https://ipfs.arkivo.art/ipfs/QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw/dream06.polygonjs","body":"","status":200,"headers":{"date":"Sat, 17 Aug 2024 18:20:34 GMT","etag":"\"QmSsfFMPFLHqKWQPCGC1CAKUdB6xJCo3SwTrYBDiobAZ21\"","server":"nginx/1.27.0","connection":"keep-alive","x-ipfs-path":"/ipfs/QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw/dream06.polygonjs","content-type":"application/zip","x-ipfs-roots":"QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw,QmSsfFMPFLHqKWQPCGC1CAKUdB6xJCo3SwTrYBDiobAZ21","accept-ranges":"bytes","cache-control":"public, max-age=29030400, immutable","content-length":"2996421","access-control-allow-origin":"*","access-control-allow-headers":"Content-Type, Range, User-Agent, X-Requested-With","access-control-allow-methods":"GET, HEAD, OPTIONS","access-control-expose-headers":"Content-Length, Content-Range, X-Chunked-Output, X-Ipfs-Path, X-Ipfs-Roots, X-Stream-Output"}},"type":2,"external":false,"timestamp":1723918834949},{"data":{"url":"https://ipfs.arkivo.art/ipfs/QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw/poster.jpg","body":"","status":200,"headers":{"date":"Sat, 17 Aug 2024 18:20:34 GMT","etag":"\"Qmf3aRF3vLEgs1AjrgJew5yG6QL4bLt6QaVnRqVcnomog8\"","server":"nginx/1.27.0","connection":"keep-alive","x-ipfs-path":"/ipfs/QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw/poster.jpg","content-type":"image/jpeg","x-ipfs-roots":"QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw,Qmf3aRF3vLEgs1AjrgJew5yG6QL4bLt6QaVnRqVcnomog8","accept-ranges":"bytes","cache-control":"public, max-age=29030400, immutable","content-length":"32737","access-control-allow-origin":"*","access-control-allow-headers":"Content-Type, Range, User-Agent, X-Requested-With","access-control-allow-methods":"GET, HEAD, OPTIONS","access-control-expose-headers":"Content-Length, Content-Range, X-Chunked-Output, X-Ipfs-Path, X-Ipfs-Roots, X-Stream-Output"}},"type":2,"external":false,"timestamp":1723918834949},{"data":{"url":"blob:https://ipfs.arkivo.art/28a14b97-eba2-4edb-9c3b-3ffc4ff88b7f","host":"","path":"https://ipfs.arkivo.art/28a14b97-eba2-4edb-9c3b-3ffc4ff88b7f","type":"http","query":"","method":"GET","headers":{"origin":"https://ipfs.arkivo.art","referer":"","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/119.0.6045.9 Safari/537.36"},"fragment":"","postData":null,"protocol":"blob:"},"type":1,"external":false,"timestamp":1723918835422},{"data":{"url":"blob:https://ipfs.arkivo.art/28a14b97-eba2-4edb-9c3b-3ffc4ff88b7f","body":"\"/*! For license information please see all.js.LICENSE.txt */\\nvar POLY=function(t){var e={};function n(i){if(e[i])return e[i].exports;var s=e[i]={i:i,l:!1,exports:{}};return t[i].call(s.exports,s,s.exports,n),s.l=!0,s.exports}return n.m=t,n.c=e,n.d=function(t,e,i){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:i})},n.r=function(t){\\\\\\\"undefined\\\\\\\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:\\\\\\\"Module\\\\\\\"}),Object.defineProperty(t,\\\\\\\"__esModule\\\\\\\",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&\\\\\\\"object\\\\\\\"==typeof t&&t&&t.__esModule)return t;var i=Object.create(null);if(n.r(i),Object.defineProperty(i,\\\\\\\"default\\\\\\\",{enumerable:!0,value:t}),2&e&&\\\\\\\"string\\\\\\\"!=typeof t)for(var s in t)n.d(i,s,function(e){return t[e]}.bind(null,s));return i},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,\\\\\\\"a\\\\\\\",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p=\\\\\\\"https://unpkg.com/@polygonjs/polygonjs@1.1.204/dist/\\\\\\\",n(n.s=216)}([function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return r}));var i=n(3),s=n(8);class r{constructor(t=0,e=0,n=0){this.x=t,this.y=e,this.z=n}set(t,e,n){return void 0===n&&(n=this.z),this.x=t,this.y=e,this.z=n,this}setScalar(t){return this.x=t,this.y=t,this.z=t,this}setX(t){return this.x=t,this}setY(t){return this.y=t,this}setZ(t){return this.z=t,this}setComponent(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;case 2:this.z=e;break;default:throw new Error(\\\\\\\"index is out of range: \\\\\\\"+t)}return this}getComponent(t){switch(t){case 0:return this.x;case 1:return this.y;case 2:return this.z;default:throw new Error(\\\\\\\"index is out of range: \\\\\\\"+t)}}clone(){return new this.constructor(this.x,this.y,this.z)}copy(t){return this.x=t.x,this.y=t.y,this.z=t.z,this}add(t,e){return void 0!==e?(console.warn(\\\\\\\"THREE.Vector3: .add() now only accepts one argument. Use .addVectors( a, b ) instead.\\\\\\\"),this.addVectors(t,e)):(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,e){return void 0!==e?(console.warn(\\\\\\\"THREE.Vector3: .sub() now only accepts one argument. Use .subVectors( a, b ) instead.\\\\\\\"),this.subVectors(t,e)):(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,e){return void 0!==e?(console.warn(\\\\\\\"THREE.Vector3: .multiply() now only accepts one argument. Use .multiplyVectors( a, b ) instead.\\\\\\\"),this.multiplyVectors(t,e)):(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 t&&t.isEuler||console.error(\\\\\\\"THREE.Vector3: .applyEuler() now expects an Euler rotation rather than a Vector3 and order.\\\\\\\"),this.applyQuaternion(a.setFromEuler(t))}applyAxisAngle(t,e){return this.applyQuaternion(a.setFromAxisAngle(t,e))}applyMatrix3(t){const 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){const e=this.x,n=this.y,i=this.z,s=t.elements,r=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])*r,this.y=(s[1]*e+s[5]*n+s[9]*i+s[13])*r,this.z=(s[2]*e+s[6]*n+s[10]*i+s[14])*r,this}applyQuaternion(t){const e=this.x,n=this.y,i=this.z,s=t.x,r=t.y,o=t.z,a=t.w,l=a*e+r*i-o*n,c=a*n+o*e-s*i,h=a*i+s*n-r*e,u=-s*e-r*n-o*i;return this.x=l*a+u*-s+c*-o-h*-r,this.y=c*a+u*-r+h*-s-l*-o,this.z=h*a+u*-o+l*-r-c*-s,this}project(t){return this.applyMatrix4(t.matrixWorldInverse).applyMatrix4(t.projectionMatrix)}unproject(t){return this.applyMatrix4(t.projectionMatrixInverse).applyMatrix4(t.matrixWorld)}transformDirection(t){const e=this.x,n=this.y,i=this.z,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){const n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(t,Math.min(e,n)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this}roundToZero(){return this.x=this.x<0?Math.ceil(this.x):Math.floor(this.x),this.y=this.y<0?Math.ceil(this.y):Math.floor(this.y),this.z=this.z<0?Math.ceil(this.z):Math.floor(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,e){return void 0!==e?(console.warn(\\\\\\\"THREE.Vector3: .cross() now only accepts one argument. Use .crossVectors( a, b ) instead.\\\\\\\"),this.crossVectors(t,e)):this.crossVectors(this,t)}crossVectors(t,e){const n=t.x,i=t.y,s=t.z,r=e.x,o=e.y,a=e.z;return this.x=i*a-s*o,this.y=s*r-n*a,this.z=n*o-i*r,this}projectOnVector(t){const e=t.lengthSq();if(0===e)return this.set(0,0,0);const n=t.dot(this)/e;return this.copy(t).multiplyScalar(n)}projectOnPlane(t){return o.copy(this).projectOnVector(t),this.sub(o)}reflect(t){return this.sub(o.copy(t).multiplyScalar(2*this.dot(t)))}angleTo(t){const e=Math.sqrt(this.lengthSq()*t.lengthSq());if(0===e)return Math.PI/2;const n=this.dot(t)/e;return Math.acos(i.d(n,-1,1))}distanceTo(t){return Math.sqrt(this.distanceToSquared(t))}distanceToSquared(t){const e=this.x-t.x,n=this.y-t.y,i=this.z-t.z;return e*e+n*n+i*i}manhattanDistanceTo(t){return Math.abs(this.x-t.x)+Math.abs(this.y-t.y)+Math.abs(this.z-t.z)}setFromSpherical(t){return this.setFromSphericalCoords(t.radius,t.phi,t.theta)}setFromSphericalCoords(t,e,n){const i=Math.sin(e)*t;return this.x=i*Math.sin(n),this.y=Math.cos(e)*t,this.z=i*Math.cos(n),this}setFromCylindrical(t){return this.setFromCylindricalCoords(t.radius,t.theta,t.y)}setFromCylindricalCoords(t,e,n){return this.x=t*Math.sin(e),this.y=n,this.z=t*Math.cos(e),this}setFromMatrixPosition(t){const e=t.elements;return this.x=e[12],this.y=e[13],this.z=e[14],this}setFromMatrixScale(t){const e=this.setFromMatrixColumn(t,0).length(),n=this.setFromMatrixColumn(t,1).length(),i=this.setFromMatrixColumn(t,2).length();return this.x=e,this.y=n,this.z=i,this}setFromMatrixColumn(t,e){return this.fromArray(t.elements,4*e)}setFromMatrix3Column(t,e){return this.fromArray(t.elements,3*e)}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,n){return void 0!==n&&console.warn(\\\\\\\"THREE.Vector3: offset has been removed from .fromBufferAttribute().\\\\\\\"),this.x=t.getX(e),this.y=t.getY(e),this.z=t.getZ(e),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this}randomDirection(){const t=2*(Math.random()-.5),e=Math.random()*Math.PI*2,n=Math.sqrt(1-t**2);return this.x=n*Math.cos(e),this.y=n*Math.sin(e),this.z=t,this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z}}r.prototype.isVector3=!0;const o=new r,a=new s.a},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"hb\\\\\\\",(function(){return i})),n.d(e,\\\\\\\"Tc\\\\\\\",(function(){return s})),n.d(e,\\\\\\\"u\\\\\\\",(function(){return r})),n.d(e,\\\\\\\"s\\\\\\\",(function(){return o})),n.d(e,\\\\\\\"t\\\\\\\",(function(){return a})),n.d(e,\\\\\\\"k\\\\\\\",(function(){return l})),n.d(e,\\\\\\\"Fb\\\\\\\",(function(){return c})),n.d(e,\\\\\\\"Gb\\\\\\\",(function(){return h})),n.d(e,\\\\\\\"gd\\\\\\\",(function(){return u})),n.d(e,\\\\\\\"H\\\\\\\",(function(){return d})),n.d(e,\\\\\\\"i\\\\\\\",(function(){return p})),n.d(e,\\\\\\\"z\\\\\\\",(function(){return _})),n.d(e,\\\\\\\"F\\\\\\\",(function(){return m})),n.d(e,\\\\\\\"ub\\\\\\\",(function(){return f})),n.d(e,\\\\\\\"xb\\\\\\\",(function(){return g})),n.d(e,\\\\\\\"e\\\\\\\",(function(){return v})),n.d(e,\\\\\\\"Sc\\\\\\\",(function(){return y})),n.d(e,\\\\\\\"mb\\\\\\\",(function(){return x})),n.d(e,\\\\\\\"v\\\\\\\",(function(){return b})),n.d(e,\\\\\\\"b\\\\\\\",(function(){return w})),n.d(e,\\\\\\\"Rc\\\\\\\",(function(){return T})),n.d(e,\\\\\\\"xc\\\\\\\",(function(){return A})),n.d(e,\\\\\\\"jb\\\\\\\",(function(){return M})),n.d(e,\\\\\\\"ib\\\\\\\",(function(){return E})),n.d(e,\\\\\\\"jd\\\\\\\",(function(){return S})),n.d(e,\\\\\\\"Ab\\\\\\\",(function(){return C})),n.d(e,\\\\\\\"Pc\\\\\\\",(function(){return N})),n.d(e,\\\\\\\"Eb\\\\\\\",(function(){return L})),n.d(e,\\\\\\\"Nc\\\\\\\",(function(){return O})),n.d(e,\\\\\\\"Db\\\\\\\",(function(){return P})),n.d(e,\\\\\\\"A\\\\\\\",(function(){return R})),n.d(e,\\\\\\\"Bb\\\\\\\",(function(){return I})),n.d(e,\\\\\\\"B\\\\\\\",(function(){return F})),n.d(e,\\\\\\\"Cb\\\\\\\",(function(){return D})),n.d(e,\\\\\\\"Oc\\\\\\\",(function(){return B})),n.d(e,\\\\\\\"tb\\\\\\\",(function(){return z})),n.d(e,\\\\\\\"g\\\\\\\",(function(){return k})),n.d(e,\\\\\\\"S\\\\\\\",(function(){return U})),n.d(e,\\\\\\\"T\\\\\\\",(function(){return G})),n.d(e,\\\\\\\"C\\\\\\\",(function(){return V})),n.d(e,\\\\\\\"L\\\\\\\",(function(){return H})),n.d(e,\\\\\\\"K\\\\\\\",(function(){return j})),n.d(e,\\\\\\\"yb\\\\\\\",(function(){return W})),n.d(e,\\\\\\\"nb\\\\\\\",(function(){return q})),n.d(e,\\\\\\\"lb\\\\\\\",(function(){return X})),n.d(e,\\\\\\\"c\\\\\\\",(function(){return Y})),n.d(e,\\\\\\\"vb\\\\\\\",(function(){return $})),n.d(e,\\\\\\\"ab\\\\\\\",(function(){return J})),n.d(e,\\\\\\\"vc\\\\\\\",(function(){return Z})),n.d(e,\\\\\\\"m\\\\\\\",(function(){return K})),n.d(e,\\\\\\\"a\\\\\\\",(function(){return Q})),n.d(e,\\\\\\\"w\\\\\\\",(function(){return tt})),n.d(e,\\\\\\\"Yc\\\\\\\",(function(){return et})),n.d(e,\\\\\\\"o\\\\\\\",(function(){return nt})),n.d(e,\\\\\\\"p\\\\\\\",(function(){return it})),n.d(e,\\\\\\\"D\\\\\\\",(function(){return st})),n.d(e,\\\\\\\"E\\\\\\\",(function(){return rt})),n.d(e,\\\\\\\"q\\\\\\\",(function(){return ot})),n.d(e,\\\\\\\"r\\\\\\\",(function(){return at})),n.d(e,\\\\\\\"wc\\\\\\\",(function(){return lt})),n.d(e,\\\\\\\"n\\\\\\\",(function(){return ct})),n.d(e,\\\\\\\"kb\\\\\\\",(function(){return ht})),n.d(e,\\\\\\\"ob\\\\\\\",(function(){return ut})),n.d(e,\\\\\\\"sb\\\\\\\",(function(){return dt})),n.d(e,\\\\\\\"qb\\\\\\\",(function(){return pt})),n.d(e,\\\\\\\"rb\\\\\\\",(function(){return _t})),n.d(e,\\\\\\\"pb\\\\\\\",(function(){return mt})),n.d(e,\\\\\\\"V\\\\\\\",(function(){return ft})),n.d(e,\\\\\\\"Z\\\\\\\",(function(){return gt})),n.d(e,\\\\\\\"X\\\\\\\",(function(){return vt})),n.d(e,\\\\\\\"Y\\\\\\\",(function(){return yt})),n.d(e,\\\\\\\"W\\\\\\\",(function(){return xt})),n.d(e,\\\\\\\"Zc\\\\\\\",(function(){return bt})),n.d(e,\\\\\\\"l\\\\\\\",(function(){return wt})),n.d(e,\\\\\\\"Mc\\\\\\\",(function(){return Tt})),n.d(e,\\\\\\\"fd\\\\\\\",(function(){return At})),n.d(e,\\\\\\\"N\\\\\\\",(function(){return Mt})),n.d(e,\\\\\\\"bd\\\\\\\",(function(){return Et})),n.d(e,\\\\\\\"G\\\\\\\",(function(){return St})),n.d(e,\\\\\\\"M\\\\\\\",(function(){return Ct})),n.d(e,\\\\\\\"cd\\\\\\\",(function(){return Nt})),n.d(e,\\\\\\\"dd\\\\\\\",(function(){return Lt})),n.d(e,\\\\\\\"ed\\\\\\\",(function(){return Ot})),n.d(e,\\\\\\\"ad\\\\\\\",(function(){return Pt})),n.d(e,\\\\\\\"f\\\\\\\",(function(){return Rt})),n.d(e,\\\\\\\"ic\\\\\\\",(function(){return It})),n.d(e,\\\\\\\"Ib\\\\\\\",(function(){return Ft})),n.d(e,\\\\\\\"gb\\\\\\\",(function(){return Dt})),n.d(e,\\\\\\\"fb\\\\\\\",(function(){return Bt})),n.d(e,\\\\\\\"hc\\\\\\\",(function(){return zt})),n.d(e,\\\\\\\"x\\\\\\\",(function(){return kt})),n.d(e,\\\\\\\"y\\\\\\\",(function(){return Ut})),n.d(e,\\\\\\\"tc\\\\\\\",(function(){return Gt})),n.d(e,\\\\\\\"uc\\\\\\\",(function(){return Vt})),n.d(e,\\\\\\\"rc\\\\\\\",(function(){return Ht})),n.d(e,\\\\\\\"sc\\\\\\\",(function(){return jt})),n.d(e,\\\\\\\"jc\\\\\\\",(function(){return Wt})),n.d(e,\\\\\\\"Jb\\\\\\\",(function(){return qt})),n.d(e,\\\\\\\"qc\\\\\\\",(function(){return Xt})),n.d(e,\\\\\\\"cc\\\\\\\",(function(){return Yt})),n.d(e,\\\\\\\"dc\\\\\\\",(function(){return $t})),n.d(e,\\\\\\\"ec\\\\\\\",(function(){return Jt})),n.d(e,\\\\\\\"pc\\\\\\\",(function(){return Zt})),n.d(e,\\\\\\\"oc\\\\\\\",(function(){return Kt})),n.d(e,\\\\\\\"bc\\\\\\\",(function(){return Qt})),n.d(e,\\\\\\\"ac\\\\\\\",(function(){return te})),n.d(e,\\\\\\\"mc\\\\\\\",(function(){return ee})),n.d(e,\\\\\\\"nc\\\\\\\",(function(){return ne})),n.d(e,\\\\\\\"Zb\\\\\\\",(function(){return ie})),n.d(e,\\\\\\\"Qb\\\\\\\",(function(){return se})),n.d(e,\\\\\\\"Rb\\\\\\\",(function(){return re})),n.d(e,\\\\\\\"Sb\\\\\\\",(function(){return oe})),n.d(e,\\\\\\\"Tb\\\\\\\",(function(){return ae})),n.d(e,\\\\\\\"Ub\\\\\\\",(function(){return le})),n.d(e,\\\\\\\"Vb\\\\\\\",(function(){return ce})),n.d(e,\\\\\\\"Wb\\\\\\\",(function(){return he})),n.d(e,\\\\\\\"Xb\\\\\\\",(function(){return ue})),n.d(e,\\\\\\\"Lb\\\\\\\",(function(){return de})),n.d(e,\\\\\\\"Mb\\\\\\\",(function(){return pe})),n.d(e,\\\\\\\"Nb\\\\\\\",(function(){return _e})),n.d(e,\\\\\\\"Kb\\\\\\\",(function(){return me})),n.d(e,\\\\\\\"Ob\\\\\\\",(function(){return fe})),n.d(e,\\\\\\\"Pb\\\\\\\",(function(){return ge})),n.d(e,\\\\\\\"Yb\\\\\\\",(function(){return ve})),n.d(e,\\\\\\\"Ec\\\\\\\",(function(){return ye})),n.d(e,\\\\\\\"Fc\\\\\\\",(function(){return xe})),n.d(e,\\\\\\\"Gc\\\\\\\",(function(){return be})),n.d(e,\\\\\\\"Hc\\\\\\\",(function(){return we})),n.d(e,\\\\\\\"Ic\\\\\\\",(function(){return Te})),n.d(e,\\\\\\\"Jc\\\\\\\",(function(){return Ae})),n.d(e,\\\\\\\"Kc\\\\\\\",(function(){return Me})),n.d(e,\\\\\\\"Lc\\\\\\\",(function(){return Ee})),n.d(e,\\\\\\\"zc\\\\\\\",(function(){return Se})),n.d(e,\\\\\\\"Ac\\\\\\\",(function(){return Ce})),n.d(e,\\\\\\\"Bc\\\\\\\",(function(){return Ne})),n.d(e,\\\\\\\"yc\\\\\\\",(function(){return Le})),n.d(e,\\\\\\\"Cc\\\\\\\",(function(){return Oe})),n.d(e,\\\\\\\"Dc\\\\\\\",(function(){return Pe})),n.d(e,\\\\\\\"cb\\\\\\\",(function(){return Re})),n.d(e,\\\\\\\"eb\\\\\\\",(function(){return Ie})),n.d(e,\\\\\\\"db\\\\\\\",(function(){return Fe})),n.d(e,\\\\\\\"O\\\\\\\",(function(){return De})),n.d(e,\\\\\\\"P\\\\\\\",(function(){return Be})),n.d(e,\\\\\\\"Q\\\\\\\",(function(){return ze})),n.d(e,\\\\\\\"id\\\\\\\",(function(){return ke})),n.d(e,\\\\\\\"kd\\\\\\\",(function(){return Ue})),n.d(e,\\\\\\\"hd\\\\\\\",(function(){return Ge})),n.d(e,\\\\\\\"wb\\\\\\\",(function(){return Ve})),n.d(e,\\\\\\\"d\\\\\\\",(function(){return He})),n.d(e,\\\\\\\"Xc\\\\\\\",(function(){return je})),n.d(e,\\\\\\\"Wc\\\\\\\",(function(){return We})),n.d(e,\\\\\\\"Vc\\\\\\\",(function(){return qe})),n.d(e,\\\\\\\"U\\\\\\\",(function(){return Xe})),n.d(e,\\\\\\\"ld\\\\\\\",(function(){return Ye})),n.d(e,\\\\\\\"J\\\\\\\",(function(){return $e})),n.d(e,\\\\\\\"gc\\\\\\\",(function(){return Je})),n.d(e,\\\\\\\"bb\\\\\\\",(function(){return Ze})),n.d(e,\\\\\\\"lc\\\\\\\",(function(){return Ke})),n.d(e,\\\\\\\"kc\\\\\\\",(function(){return Qe})),n.d(e,\\\\\\\"fc\\\\\\\",(function(){return tn})),n.d(e,\\\\\\\"j\\\\\\\",(function(){return en})),n.d(e,\\\\\\\"Hb\\\\\\\",(function(){return nn})),n.d(e,\\\\\\\"Uc\\\\\\\",(function(){return sn})),n.d(e,\\\\\\\"zb\\\\\\\",(function(){return rn})),n.d(e,\\\\\\\"R\\\\\\\",(function(){return on})),n.d(e,\\\\\\\"h\\\\\\\",(function(){return an})),n.d(e,\\\\\\\"Qc\\\\\\\",(function(){return ln})),n.d(e,\\\\\\\"I\\\\\\\",(function(){return cn}));const i={LEFT:0,MIDDLE:1,RIGHT:2,ROTATE:0,DOLLY:1,PAN:2},s={ROTATE:0,PAN:1,DOLLY_PAN:2,DOLLY_ROTATE:3},r=0,o=1,a=2,l=0,c=1,h=2,u=3,d=0,p=1,_=2,m=1,f=0,g=1,v=2,y=3,x=4,b=5,w=100,T=101,A=102,M=103,E=104,S=200,C=201,N=202,L=203,O=204,P=205,R=206,I=207,F=208,D=209,B=210,z=0,k=1,U=2,G=3,V=4,H=5,j=6,W=7,q=0,X=1,Y=2,$=0,J=1,Z=2,K=3,Q=4,tt=5,et=300,nt=301,it=302,st=303,rt=304,ot=306,at=307,lt=1e3,ct=1001,ht=1002,ut=1003,dt=1004,pt=1004,_t=1005,mt=1005,ft=1006,gt=1007,vt=1007,yt=1008,xt=1008,bt=1009,wt=1010,Tt=1011,At=1012,Mt=1013,Et=1014,St=1015,Ct=1016,Nt=1017,Lt=1018,Ot=1019,Pt=1020,Rt=1021,It=1022,Ft=1023,Dt=1024,Bt=1025,zt=Ft,kt=1026,Ut=1027,Gt=1028,Vt=1029,Ht=1030,jt=1031,Wt=1032,qt=1033,Xt=33776,Yt=33777,$t=33778,Jt=33779,Zt=35840,Kt=35841,Qt=35842,te=35843,ee=36196,ne=37492,ie=37496,se=37808,re=37809,oe=37810,ae=37811,le=37812,ce=37813,he=37814,ue=37815,de=37816,pe=37817,_e=37818,me=37819,fe=37820,ge=37821,ve=36492,ye=37840,xe=37841,be=37842,we=37843,Te=37844,Ae=37845,Me=37846,Ee=37847,Se=37848,Ce=37849,Ne=37850,Le=37851,Oe=37852,Pe=37853,Re=2200,Ie=2201,Fe=2202,De=2300,Be=2301,ze=2302,ke=2400,Ue=2401,Ge=2402,Ve=2500,He=2501,je=0,We=1,qe=2,Xe=3e3,Ye=3001,$e=3007,Je=3002,Ze=3003,Ke=3004,Qe=3005,tn=3006,en=3200,nn=3201,sn=0,rn=1,on=7680,an=519,ln=35044,cn=\\\\\\\"300 es\\\\\\\"},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return i}));class i{constructor(t=0,e=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,e){return void 0!==e?(console.warn(\\\\\\\"THREE.Vector2: .add() now only accepts one argument. Use .addVectors( a, b ) instead.\\\\\\\"),this.addVectors(t,e)):(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,e){return void 0!==e?(console.warn(\\\\\\\"THREE.Vector2: .sub() now only accepts one argument. Use .subVectors( a, b ) instead.\\\\\\\"),this.subVectors(t,e)):(this.x-=t.x,this.y-=t.y,this)}subScalar(t){return this.x-=t,this.y-=t,this}subVectors(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this}multiply(t){return this.x*=t.x,this.y*=t.y,this}multiplyScalar(t){return this.x*=t,this.y*=t,this}divide(t){return this.x/=t.x,this.y/=t.y,this}divideScalar(t){return this.multiplyScalar(1/t)}applyMatrix3(t){const e=this.x,n=this.y,i=t.elements;return this.x=i[0]*e+i[3]*n+i[6],this.y=i[1]*e+i[4]*n+i[7],this}min(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this}max(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this}clamp(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this}clampScalar(t,e){return this.x=Math.max(t,Math.min(e,this.x)),this.y=Math.max(t,Math.min(e,this.y)),this}clampLength(t,e){const n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(t,Math.min(e,n)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}roundToZero(){return this.x=this.x<0?Math.ceil(this.x):Math.floor(this.x),this.y=this.y<0?Math.ceil(this.y):Math.floor(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}distanceTo(t){return Math.sqrt(this.distanceToSquared(t))}distanceToSquared(t){const e=this.x-t.x,n=this.y-t.y;return e*e+n*n}manhattanDistanceTo(t){return Math.abs(this.x-t.x)+Math.abs(this.y-t.y)}setLength(t){return this.normalize().multiplyScalar(t)}lerp(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this}lerpVectors(t,e,n){return this.x=t.x+(e.x-t.x)*n,this.y=t.y+(e.y-t.y)*n,this}equals(t){return t.x===this.x&&t.y===this.y}fromArray(t,e=0){return this.x=t[e],this.y=t[e+1],this}toArray(t=[],e=0){return t[e]=this.x,t[e+1]=this.y,t}fromBufferAttribute(t,e,n){return void 0!==n&&console.warn(\\\\\\\"THREE.Vector2: offset has been removed from .fromBufferAttribute().\\\\\\\"),this.x=t.getX(e),this.y=t.getY(e),this}rotateAround(t,e){const n=Math.cos(e),i=Math.sin(e),s=this.x-t.x,r=this.y-t.y;return this.x=s*n-r*i+t.x,this.y=s*i+r*n+t.y,this}random(){return this.x=Math.random(),this.y=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y}}i.prototype.isVector2=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return i})),n.d(e,\\\\\\\"b\\\\\\\",(function(){return s})),n.d(e,\\\\\\\"h\\\\\\\",(function(){return a})),n.d(e,\\\\\\\"d\\\\\\\",(function(){return l})),n.d(e,\\\\\\\"f\\\\\\\",(function(){return c})),n.d(e,\\\\\\\"j\\\\\\\",(function(){return h})),n.d(e,\\\\\\\"e\\\\\\\",(function(){return u})),n.d(e,\\\\\\\"k\\\\\\\",(function(){return d})),n.d(e,\\\\\\\"i\\\\\\\",(function(){return p})),n.d(e,\\\\\\\"c\\\\\\\",(function(){return _})),n.d(e,\\\\\\\"g\\\\\\\",(function(){return m}));const i=Math.PI/180,s=180/Math.PI,r=[];for(let t=0;t<256;t++)r[t]=(t<16?\\\\\\\"0\\\\\\\":\\\\\\\"\\\\\\\")+t.toString(16);const o=\\\\\\\"undefined\\\\\\\"!=typeof crypto&&\\\\\\\"randomUUID\\\\\\\"in crypto;function a(){if(o)return crypto.randomUUID().toUpperCase();const t=4294967295*Math.random()|0,e=4294967295*Math.random()|0,n=4294967295*Math.random()|0,i=4294967295*Math.random()|0;return(r[255&t]+r[t>>8&255]+r[t>>16&255]+r[t>>24&255]+\\\\\\\"-\\\\\\\"+r[255&e]+r[e>>8&255]+\\\\\\\"-\\\\\\\"+r[e>>16&15|64]+r[e>>24&255]+\\\\\\\"-\\\\\\\"+r[63&n|128]+r[n>>8&255]+\\\\\\\"-\\\\\\\"+r[n>>16&255]+r[n>>24&255]+r[255&i]+r[i>>8&255]+r[i>>16&255]+r[i>>24&255]).toUpperCase()}function l(t,e,n){return Math.max(e,Math.min(n,t))}function c(t,e){return(t%e+e)%e}function h(t,e,n){return(1-n)*t+n*e}function u(t){return t*i}function d(t){return t*s}function p(t){return 0==(t&t-1)&&0!==t}function _(t){return Math.pow(2,Math.ceil(Math.log(t)/Math.LN2))}function m(t){return Math.pow(2,Math.floor(Math.log(t)/Math.LN2))}},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"d\\\\\\\",(function(){return x})),n.d(e,\\\\\\\"c\\\\\\\",(function(){return y})),n.d(e,\\\\\\\"b\\\\\\\",(function(){return v})),n.d(e,\\\\\\\"i\\\\\\\",(function(){return g})),n.d(e,\\\\\\\"f\\\\\\\",(function(){return f})),n.d(e,\\\\\\\"h\\\\\\\",(function(){return m})),n.d(e,\\\\\\\"e\\\\\\\",(function(){return _})),n.d(e,\\\\\\\"k\\\\\\\",(function(){return p})),n.d(e,\\\\\\\"j\\\\\\\",(function(){return d})),n.d(e,\\\\\\\"g\\\\\\\",(function(){return u})),n.d(e,\\\\\\\"a\\\\\\\",(function(){return h}));var i=n(9),s=n(0),r=n(2),o=n(6),a=n(1);const l=new s.a,c=new r.a;class h{constructor(t,e,n){if(Array.isArray(t))throw new TypeError(\\\\\\\"THREE.BufferAttribute: array should be a Typed Array.\\\\\\\");this.name=\\\\\\\"\\\\\\\",this.array=t,this.itemSize=e,this.count=void 0!==t?t.length/e:0,this.normalized=!0===n,this.usage=a.Qc,this.updateRange={offset:0,count:-1},this.version=0}onUploadCallback(){}set needsUpdate(t){!0===t&&this.version++}setUsage(t){return this.usage=t,this}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}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}copyColorsArray(t){const e=this.array;let n=0;for(let i=0,s=t.length;i<s;i++){let s=t[i];void 0===s&&(console.warn(\\\\\\\"THREE.BufferAttribute.copyColorsArray(): color is undefined\\\\\\\",i),s=new o.a),e[n++]=s.r,e[n++]=s.g,e[n++]=s.b}return this}copyVector2sArray(t){const e=this.array;let n=0;for(let i=0,s=t.length;i<s;i++){let s=t[i];void 0===s&&(console.warn(\\\\\\\"THREE.BufferAttribute.copyVector2sArray(): vector is undefined\\\\\\\",i),s=new r.a),e[n++]=s.x,e[n++]=s.y}return this}copyVector3sArray(t){const e=this.array;let n=0;for(let i=0,r=t.length;i<r;i++){let r=t[i];void 0===r&&(console.warn(\\\\\\\"THREE.BufferAttribute.copyVector3sArray(): vector is undefined\\\\\\\",i),r=new s.a),e[n++]=r.x,e[n++]=r.y,e[n++]=r.z}return this}copyVector4sArray(t){const e=this.array;let n=0;for(let s=0,r=t.length;s<r;s++){let r=t[s];void 0===r&&(console.warn(\\\\\\\"THREE.BufferAttribute.copyVector4sArray(): vector is undefined\\\\\\\",s),r=new i.a),e[n++]=r.x,e[n++]=r.y,e[n++]=r.z,e[n++]=r.w}return this}applyMatrix3(t){if(2===this.itemSize)for(let e=0,n=this.count;e<n;e++)c.fromBufferAttribute(this,e),c.applyMatrix3(t),this.setXY(e,c.x,c.y);else if(3===this.itemSize)for(let e=0,n=this.count;e<n;e++)l.fromBufferAttribute(this,e),l.applyMatrix3(t),this.setXYZ(e,l.x,l.y,l.z);return this}applyMatrix4(t){for(let e=0,n=this.count;e<n;e++)l.x=this.getX(e),l.y=this.getY(e),l.z=this.getZ(e),l.applyMatrix4(t),this.setXYZ(e,l.x,l.y,l.z);return this}applyNormalMatrix(t){for(let e=0,n=this.count;e<n;e++)l.x=this.getX(e),l.y=this.getY(e),l.z=this.getZ(e),l.applyNormalMatrix(t),this.setXYZ(e,l.x,l.y,l.z);return this}transformDirection(t){for(let e=0,n=this.count;e<n;e++)l.x=this.getX(e),l.y=this.getY(e),l.z=this.getZ(e),l.transformDirection(t),this.setXYZ(e,l.x,l.y,l.z);return this}set(t,e=0){return this.array.set(t,e),this}getX(t){return this.array[t*this.itemSize]}setX(t,e){return this.array[t*this.itemSize]=e,this}getY(t){return this.array[t*this.itemSize+1]}setY(t,e){return this.array[t*this.itemSize+1]=e,this}getZ(t){return this.array[t*this.itemSize+2]}setZ(t,e){return this.array[t*this.itemSize+2]=e,this}getW(t){return this.array[t*this.itemSize+3]}setW(t,e){return this.array[t*this.itemSize+3]=e,this}setXY(t,e,n){return t*=this.itemSize,this.array[t+0]=e,this.array[t+1]=n,this}setXYZ(t,e,n,i){return t*=this.itemSize,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.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(){const t={itemSize:this.itemSize,type:this.array.constructor.name,array:Array.prototype.slice.call(this.array),normalized:this.normalized};return\\\\\\\"\\\\\\\"!==this.name&&(t.name=this.name),this.usage!==a.Qc&&(t.usage=this.usage),0===this.updateRange.offset&&-1===this.updateRange.count||(t.updateRange=this.updateRange),t}}h.prototype.isBufferAttribute=!0;class u extends h{constructor(t,e,n){super(new Int8Array(t),e,n)}}class d extends h{constructor(t,e,n){super(new Uint8Array(t),e,n)}}class p extends h{constructor(t,e,n){super(new Uint8ClampedArray(t),e,n)}}class _ extends h{constructor(t,e,n){super(new Int16Array(t),e,n)}}class m extends h{constructor(t,e,n){super(new Uint16Array(t),e,n)}}class f extends h{constructor(t,e,n){super(new Int32Array(t),e,n)}}class g extends h{constructor(t,e,n){super(new Uint32Array(t),e,n)}}class v extends h{constructor(t,e,n){super(new Uint16Array(t),e,n)}}v.prototype.isFloat16BufferAttribute=!0;class y extends h{constructor(t,e,n){super(new Float32Array(t),e,n)}}class x extends h{constructor(t,e,n){super(new Float64Array(t),e,n)}}},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return s}));var i=n(0);class s{constructor(){this.elements=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],arguments.length>0&&console.error(\\\\\\\"THREE.Matrix4: the constructor no longer reads arguments. use .set() instead.\\\\\\\")}set(t,e,n,i,s,r,o,a,l,c,h,u,d,p,_,m){const f=this.elements;return f[0]=t,f[4]=e,f[8]=n,f[12]=i,f[1]=s,f[5]=r,f[9]=o,f[13]=a,f[2]=l,f[6]=c,f[10]=h,f[14]=u,f[3]=d,f[7]=p,f[11]=_,f[15]=m,this}identity(){return this.set(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1),this}clone(){return(new s).fromArray(this.elements)}copy(t){const e=this.elements,n=t.elements;return e[0]=n[0],e[1]=n[1],e[2]=n[2],e[3]=n[3],e[4]=n[4],e[5]=n[5],e[6]=n[6],e[7]=n[7],e[8]=n[8],e[9]=n[9],e[10]=n[10],e[11]=n[11],e[12]=n[12],e[13]=n[13],e[14]=n[14],e[15]=n[15],this}copyPosition(t){const e=this.elements,n=t.elements;return e[12]=n[12],e[13]=n[13],e[14]=n[14],this}setFromMatrix3(t){const e=t.elements;return this.set(e[0],e[3],e[6],0,e[1],e[4],e[7],0,e[2],e[5],e[8],0,0,0,0,1),this}extractBasis(t,e,n){return t.setFromMatrixColumn(this,0),e.setFromMatrixColumn(this,1),n.setFromMatrixColumn(this,2),this}makeBasis(t,e,n){return this.set(t.x,e.x,n.x,0,t.y,e.y,n.y,0,t.z,e.z,n.z,0,0,0,0,1),this}extractRotation(t){const e=this.elements,n=t.elements,i=1/r.setFromMatrixColumn(t,0).length(),s=1/r.setFromMatrixColumn(t,1).length(),o=1/r.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]*o,e[9]=n[9]*o,e[10]=n[10]*o,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,this}makeRotationFromEuler(t){t&&t.isEuler||console.error(\\\\\\\"THREE.Matrix4: .makeRotationFromEuler() now expects a Euler rotation rather than a Vector3 and order.\\\\\\\");const e=this.elements,n=t.x,i=t.y,s=t.z,r=Math.cos(n),o=Math.sin(n),a=Math.cos(i),l=Math.sin(i),c=Math.cos(s),h=Math.sin(s);if(\\\\\\\"XYZ\\\\\\\"===t.order){const t=r*c,n=r*h,i=o*c,s=o*h;e[0]=a*c,e[4]=-a*h,e[8]=l,e[1]=n+i*l,e[5]=t-s*l,e[9]=-o*a,e[2]=s-t*l,e[6]=i+n*l,e[10]=r*a}else if(\\\\\\\"YXZ\\\\\\\"===t.order){const t=a*c,n=a*h,i=l*c,s=l*h;e[0]=t+s*o,e[4]=i*o-n,e[8]=r*l,e[1]=r*h,e[5]=r*c,e[9]=-o,e[2]=n*o-i,e[6]=s+t*o,e[10]=r*a}else if(\\\\\\\"ZXY\\\\\\\"===t.order){const t=a*c,n=a*h,i=l*c,s=l*h;e[0]=t-s*o,e[4]=-r*h,e[8]=i+n*o,e[1]=n+i*o,e[5]=r*c,e[9]=s-t*o,e[2]=-r*l,e[6]=o,e[10]=r*a}else if(\\\\\\\"ZYX\\\\\\\"===t.order){const t=r*c,n=r*h,i=o*c,s=o*h;e[0]=a*c,e[4]=i*l-n,e[8]=t*l+s,e[1]=a*h,e[5]=s*l+t,e[9]=n*l-i,e[2]=-l,e[6]=o*a,e[10]=r*a}else if(\\\\\\\"YZX\\\\\\\"===t.order){const t=r*a,n=r*l,i=o*a,s=o*l;e[0]=a*c,e[4]=s-t*h,e[8]=i*h+n,e[1]=h,e[5]=r*c,e[9]=-o*c,e[2]=-l*c,e[6]=n*h+i,e[10]=t-s*h}else if(\\\\\\\"XZY\\\\\\\"===t.order){const t=r*a,n=r*l,i=o*a,s=o*l;e[0]=a*c,e[4]=-h,e[8]=l*c,e[1]=t*h+s,e[5]=r*c,e[9]=n*h-i,e[2]=i*h-n,e[6]=o*c,e[10]=s*h+t}return e[3]=0,e[7]=0,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,this}makeRotationFromQuaternion(t){return this.compose(a,t,l)}lookAt(t,e,n){const i=this.elements;return u.subVectors(t,e),0===u.lengthSq()&&(u.z=1),u.normalize(),c.crossVectors(n,u),0===c.lengthSq()&&(1===Math.abs(n.z)?u.x+=1e-4:u.z+=1e-4,u.normalize(),c.crossVectors(n,u)),c.normalize(),h.crossVectors(u,c),i[0]=c.x,i[4]=h.x,i[8]=u.x,i[1]=c.y,i[5]=h.y,i[9]=u.y,i[2]=c.z,i[6]=h.z,i[10]=u.z,this}multiply(t,e){return void 0!==e?(console.warn(\\\\\\\"THREE.Matrix4: .multiply() now only accepts one argument. Use .multiplyMatrices( a, b ) instead.\\\\\\\"),this.multiplyMatrices(t,e)):this.multiplyMatrices(this,t)}premultiply(t){return this.multiplyMatrices(t,this)}multiplyMatrices(t,e){const n=t.elements,i=e.elements,s=this.elements,r=n[0],o=n[4],a=n[8],l=n[12],c=n[1],h=n[5],u=n[9],d=n[13],p=n[2],_=n[6],m=n[10],f=n[14],g=n[3],v=n[7],y=n[11],x=n[15],b=i[0],w=i[4],T=i[8],A=i[12],M=i[1],E=i[5],S=i[9],C=i[13],N=i[2],L=i[6],O=i[10],P=i[14],R=i[3],I=i[7],F=i[11],D=i[15];return s[0]=r*b+o*M+a*N+l*R,s[4]=r*w+o*E+a*L+l*I,s[8]=r*T+o*S+a*O+l*F,s[12]=r*A+o*C+a*P+l*D,s[1]=c*b+h*M+u*N+d*R,s[5]=c*w+h*E+u*L+d*I,s[9]=c*T+h*S+u*O+d*F,s[13]=c*A+h*C+u*P+d*D,s[2]=p*b+_*M+m*N+f*R,s[6]=p*w+_*E+m*L+f*I,s[10]=p*T+_*S+m*O+f*F,s[14]=p*A+_*C+m*P+f*D,s[3]=g*b+v*M+y*N+x*R,s[7]=g*w+v*E+y*L+x*I,s[11]=g*T+v*S+y*O+x*F,s[15]=g*A+v*C+y*P+x*D,this}multiplyScalar(t){const e=this.elements;return e[0]*=t,e[4]*=t,e[8]*=t,e[12]*=t,e[1]*=t,e[5]*=t,e[9]*=t,e[13]*=t,e[2]*=t,e[6]*=t,e[10]*=t,e[14]*=t,e[3]*=t,e[7]*=t,e[11]*=t,e[15]*=t,this}determinant(){const t=this.elements,e=t[0],n=t[4],i=t[8],s=t[12],r=t[1],o=t[5],a=t[9],l=t[13],c=t[2],h=t[6],u=t[10],d=t[14];return t[3]*(+s*a*h-i*l*h-s*o*u+n*l*u+i*o*d-n*a*d)+t[7]*(+e*a*d-e*l*u+s*r*u-i*r*d+i*l*c-s*a*c)+t[11]*(+e*l*h-e*o*d-s*r*h+n*r*d+s*o*c-n*l*c)+t[15]*(-i*o*c-e*a*h+e*o*u+i*r*h-n*r*u+n*a*c)}transpose(){const t=this.elements;let e;return e=t[1],t[1]=t[4],t[4]=e,e=t[2],t[2]=t[8],t[8]=e,e=t[6],t[6]=t[9],t[9]=e,e=t[3],t[3]=t[12],t[12]=e,e=t[7],t[7]=t[13],t[13]=e,e=t[11],t[11]=t[14],t[14]=e,this}setPosition(t,e,n){const i=this.elements;return t.isVector3?(i[12]=t.x,i[13]=t.y,i[14]=t.z):(i[12]=t,i[13]=e,i[14]=n),this}invert(){const t=this.elements,e=t[0],n=t[1],i=t[2],s=t[3],r=t[4],o=t[5],a=t[6],l=t[7],c=t[8],h=t[9],u=t[10],d=t[11],p=t[12],_=t[13],m=t[14],f=t[15],g=h*m*l-_*u*l+_*a*d-o*m*d-h*a*f+o*u*f,v=p*u*l-c*m*l-p*a*d+r*m*d+c*a*f-r*u*f,y=c*_*l-p*h*l+p*o*d-r*_*d-c*o*f+r*h*f,x=p*h*a-c*_*a-p*o*u+r*_*u+c*o*m-r*h*m,b=e*g+n*v+i*y+s*x;if(0===b)return this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);const w=1/b;return t[0]=g*w,t[1]=(_*u*s-h*m*s-_*i*d+n*m*d+h*i*f-n*u*f)*w,t[2]=(o*m*s-_*a*s+_*i*l-n*m*l-o*i*f+n*a*f)*w,t[3]=(h*a*s-o*u*s-h*i*l+n*u*l+o*i*d-n*a*d)*w,t[4]=v*w,t[5]=(c*m*s-p*u*s+p*i*d-e*m*d-c*i*f+e*u*f)*w,t[6]=(p*a*s-r*m*s-p*i*l+e*m*l+r*i*f-e*a*f)*w,t[7]=(r*u*s-c*a*s+c*i*l-e*u*l-r*i*d+e*a*d)*w,t[8]=y*w,t[9]=(p*h*s-c*_*s-p*n*d+e*_*d+c*n*f-e*h*f)*w,t[10]=(r*_*s-p*o*s+p*n*l-e*_*l-r*n*f+e*o*f)*w,t[11]=(c*o*s-r*h*s-c*n*l+e*h*l+r*n*d-e*o*d)*w,t[12]=x*w,t[13]=(c*_*i-p*h*i+p*n*u-e*_*u-c*n*m+e*h*m)*w,t[14]=(p*o*i-r*_*i-p*n*a+e*_*a+r*n*m-e*o*m)*w,t[15]=(r*h*i-c*o*i+c*n*a-e*h*a-r*n*u+e*o*u)*w,this}scale(t){const 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(){const t=this.elements,e=t[0]*t[0]+t[1]*t[1]+t[2]*t[2],n=t[4]*t[4]+t[5]*t[5]+t[6]*t[6],i=t[8]*t[8]+t[9]*t[9]+t[10]*t[10];return Math.sqrt(Math.max(e,n,i))}makeTranslation(t,e,n){return this.set(1,0,0,t,0,1,0,e,0,0,1,n,0,0,0,1),this}makeRotationX(t){const e=Math.cos(t),n=Math.sin(t);return this.set(1,0,0,0,0,e,-n,0,0,n,e,0,0,0,0,1),this}makeRotationY(t){const e=Math.cos(t),n=Math.sin(t);return this.set(e,0,n,0,0,1,0,0,-n,0,e,0,0,0,0,1),this}makeRotationZ(t){const e=Math.cos(t),n=Math.sin(t);return this.set(e,-n,0,0,n,e,0,0,0,0,1,0,0,0,0,1),this}makeRotationAxis(t,e){const n=Math.cos(e),i=Math.sin(e),s=1-n,r=t.x,o=t.y,a=t.z,l=s*r,c=s*o;return this.set(l*r+n,l*o-i*a,l*a+i*o,0,l*o+i*a,c*o+n,c*a-i*r,0,l*a-i*o,c*a+i*r,s*a*a+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,r){return this.set(1,n,s,0,t,1,r,0,e,i,1,0,0,0,0,1),this}compose(t,e,n){const i=this.elements,s=e._x,r=e._y,o=e._z,a=e._w,l=s+s,c=r+r,h=o+o,u=s*l,d=s*c,p=s*h,_=r*c,m=r*h,f=o*h,g=a*l,v=a*c,y=a*h,x=n.x,b=n.y,w=n.z;return i[0]=(1-(_+f))*x,i[1]=(d+y)*x,i[2]=(p-v)*x,i[3]=0,i[4]=(d-y)*b,i[5]=(1-(u+f))*b,i[6]=(m+g)*b,i[7]=0,i[8]=(p+v)*w,i[9]=(m-g)*w,i[10]=(1-(u+_))*w,i[11]=0,i[12]=t.x,i[13]=t.y,i[14]=t.z,i[15]=1,this}decompose(t,e,n){const i=this.elements;let s=r.set(i[0],i[1],i[2]).length();const a=r.set(i[4],i[5],i[6]).length(),l=r.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],o.copy(this);const c=1/s,h=1/a,u=1/l;return o.elements[0]*=c,o.elements[1]*=c,o.elements[2]*=c,o.elements[4]*=h,o.elements[5]*=h,o.elements[6]*=h,o.elements[8]*=u,o.elements[9]*=u,o.elements[10]*=u,e.setFromRotationMatrix(o),n.x=s,n.y=a,n.z=l,this}makePerspective(t,e,n,i,s,r){void 0===r&&console.warn(\\\\\\\"THREE.Matrix4: .makePerspective() has been redefined and has a new signature. Please check the docs.\\\\\\\");const o=this.elements,a=2*s/(e-t),l=2*s/(n-i),c=(e+t)/(e-t),h=(n+i)/(n-i),u=-(r+s)/(r-s),d=-2*r*s/(r-s);return o[0]=a,o[4]=0,o[8]=c,o[12]=0,o[1]=0,o[5]=l,o[9]=h,o[13]=0,o[2]=0,o[6]=0,o[10]=u,o[14]=d,o[3]=0,o[7]=0,o[11]=-1,o[15]=0,this}makeOrthographic(t,e,n,i,s,r){const o=this.elements,a=1/(e-t),l=1/(n-i),c=1/(r-s),h=(e+t)*a,u=(n+i)*l,d=(r+s)*c;return o[0]=2*a,o[4]=0,o[8]=0,o[12]=-h,o[1]=0,o[5]=2*l,o[9]=0,o[13]=-u,o[2]=0,o[6]=0,o[10]=-2*c,o[14]=-d,o[3]=0,o[7]=0,o[11]=0,o[15]=1,this}equals(t){const e=this.elements,n=t.elements;for(let t=0;t<16;t++)if(e[t]!==n[t])return!1;return!0}fromArray(t,e=0){for(let n=0;n<16;n++)this.elements[n]=t[n+e];return this}toArray(t=[],e=0){const n=this.elements;return t[e]=n[0],t[e+1]=n[1],t[e+2]=n[2],t[e+3]=n[3],t[e+4]=n[4],t[e+5]=n[5],t[e+6]=n[6],t[e+7]=n[7],t[e+8]=n[8],t[e+9]=n[9],t[e+10]=n[10],t[e+11]=n[11],t[e+12]=n[12],t[e+13]=n[13],t[e+14]=n[14],t[e+15]=n[15],t}}s.prototype.isMatrix4=!0;const r=new i.a,o=new s,a=new i.a(0,0,0),l=new i.a(1,1,1),c=new i.a,h=new i.a,u=new i.a},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return h}));var i=n(3);const s={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},r={h:0,s:0,l:0},o={h:0,s:0,l:0};function a(t,e,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?t+6*(e-t)*n:n<.5?e:n<2/3?t+6*(e-t)*(2/3-n):t}function l(t){return t<.04045?.0773993808*t:Math.pow(.9478672986*t+.0521327014,2.4)}function c(t){return t<.0031308?12.92*t:1.055*Math.pow(t,.41666)-.055}class h{constructor(t,e,n){return void 0===e&&void 0===n?this.set(t):this.setRGB(t,e,n)}set(t){return t&&t.isColor?this.copy(t):\\\\\\\"number\\\\\\\"==typeof t?this.setHex(t):\\\\\\\"string\\\\\\\"==typeof t&&this.setStyle(t),this}setScalar(t){return this.r=t,this.g=t,this.b=t,this}setHex(t){return t=Math.floor(t),this.r=(t>>16&255)/255,this.g=(t>>8&255)/255,this.b=(255&t)/255,this}setRGB(t,e,n){return this.r=t,this.g=e,this.b=n,this}setHSL(t,e,n){if(t=i.f(t,1),e=i.d(e,0,1),n=i.d(n,0,1),0===e)this.r=this.g=this.b=n;else{const i=n<=.5?n*(1+e):n+e-n*e,s=2*n-i;this.r=a(s,i,t+1/3),this.g=a(s,i,t),this.b=a(s,i,t-1/3)}return this}setStyle(t){function e(e){void 0!==e&&parseFloat(e)<1&&console.warn(\\\\\\\"THREE.Color: Alpha component of \\\\\\\"+t+\\\\\\\" will be ignored.\\\\\\\")}let n;if(n=/^((?:rgb|hsl)a?)\\\\(([^\\\\)]*)\\\\)/.exec(t)){let t;const i=n[1],s=n[2];switch(i){case\\\\\\\"rgb\\\\\\\":case\\\\\\\"rgba\\\\\\\":if(t=/^\\\\s*(\\\\d+)\\\\s*,\\\\s*(\\\\d+)\\\\s*,\\\\s*(\\\\d+)\\\\s*(?:,\\\\s*(\\\\d*\\\\.?\\\\d+)\\\\s*)?$/.exec(s))return this.r=Math.min(255,parseInt(t[1],10))/255,this.g=Math.min(255,parseInt(t[2],10))/255,this.b=Math.min(255,parseInt(t[3],10))/255,e(t[4]),this;if(t=/^\\\\s*(\\\\d+)\\\\%\\\\s*,\\\\s*(\\\\d+)\\\\%\\\\s*,\\\\s*(\\\\d+)\\\\%\\\\s*(?:,\\\\s*(\\\\d*\\\\.?\\\\d+)\\\\s*)?$/.exec(s))return this.r=Math.min(100,parseInt(t[1],10))/100,this.g=Math.min(100,parseInt(t[2],10))/100,this.b=Math.min(100,parseInt(t[3],10))/100,e(t[4]),this;break;case\\\\\\\"hsl\\\\\\\":case\\\\\\\"hsla\\\\\\\":if(t=/^\\\\s*(\\\\d*\\\\.?\\\\d+)\\\\s*,\\\\s*(\\\\d+)\\\\%\\\\s*,\\\\s*(\\\\d+)\\\\%\\\\s*(?:,\\\\s*(\\\\d*\\\\.?\\\\d+)\\\\s*)?$/.exec(s)){const n=parseFloat(t[1])/360,i=parseInt(t[2],10)/100,s=parseInt(t[3],10)/100;return e(t[4]),this.setHSL(n,i,s)}}}else if(n=/^\\\\#([A-Fa-f\\\\d]+)$/.exec(t)){const t=n[1],e=t.length;if(3===e)return this.r=parseInt(t.charAt(0)+t.charAt(0),16)/255,this.g=parseInt(t.charAt(1)+t.charAt(1),16)/255,this.b=parseInt(t.charAt(2)+t.charAt(2),16)/255,this;if(6===e)return this.r=parseInt(t.charAt(0)+t.charAt(1),16)/255,this.g=parseInt(t.charAt(2)+t.charAt(3),16)/255,this.b=parseInt(t.charAt(4)+t.charAt(5),16)/255,this}return t&&t.length>0?this.setColorName(t):this}setColorName(t){const e=s[t.toLowerCase()];return void 0!==e?this.setHex(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}copyGammaToLinear(t,e=2){return this.r=Math.pow(t.r,e),this.g=Math.pow(t.g,e),this.b=Math.pow(t.b,e),this}copyLinearToGamma(t,e=2){const n=e>0?1/e:1;return this.r=Math.pow(t.r,n),this.g=Math.pow(t.g,n),this.b=Math.pow(t.b,n),this}convertGammaToLinear(t){return this.copyGammaToLinear(this,t),this}convertLinearToGamma(t){return this.copyLinearToGamma(this,t),this}copySRGBToLinear(t){return this.r=l(t.r),this.g=l(t.g),this.b=l(t.b),this}copyLinearToSRGB(t){return this.r=c(t.r),this.g=c(t.g),this.b=c(t.b),this}convertSRGBToLinear(){return this.copySRGBToLinear(this),this}convertLinearToSRGB(){return this.copyLinearToSRGB(this),this}getHex(){return 255*this.r<<16^255*this.g<<8^255*this.b<<0}getHexString(){return(\\\\\\\"000000\\\\\\\"+this.getHex().toString(16)).slice(-6)}getHSL(t){const e=this.r,n=this.g,i=this.b,s=Math.max(e,n,i),r=Math.min(e,n,i);let o,a;const l=(r+s)/2;if(r===s)o=0,a=0;else{const t=s-r;switch(a=l<=.5?t/(s+r):t/(2-s-r),s){case e:o=(n-i)/t+(n<i?6:0);break;case n:o=(i-e)/t+2;break;case i:o=(e-n)/t+4}o/=6}return t.h=o,t.s=a,t.l=l,t}getStyle(){return\\\\\\\"rgb(\\\\\\\"+(255*this.r|0)+\\\\\\\",\\\\\\\"+(255*this.g|0)+\\\\\\\",\\\\\\\"+(255*this.b|0)+\\\\\\\")\\\\\\\"}offsetHSL(t,e,n){return this.getHSL(r),r.h+=t,r.s+=e,r.l+=n,this.setHSL(r.h,r.s,r.l),this}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(r),t.getHSL(o);const n=i.j(r.h,o.h,e),s=i.j(r.s,o.s,e),a=i.j(r.l,o.l,e);return this.setHSL(n,s,a),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),!0===t.normalized&&(this.r/=255,this.g/=255,this.b/=255),this}toJSON(){return this.getHex()}}h.NAMES=s,h.prototype.isColor=!0,h.prototype.r=1,h.prototype.g=1,h.prototype.b=1},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return b}));var i=n(0),s=n(2),r=n(16),o=n(15),a=n(4),l=n(18),c=n(10),h=n(5),u=n(11),d=n(3),p=n(20);let _=0;const m=new h.a,f=new c.a,g=new i.a,v=new r.a,y=new r.a,x=new i.a;class b extends o.a{constructor(){super(),Object.defineProperty(this,\\\\\\\"id\\\\\\\",{value:_++}),this.uuid=d.h(),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(Object(p.a)(t)>65535?a.i:a.h)(t,1):this.index=t,this}getAttribute(t){return this.attributes[t]}setAttribute(t,e){return this.attributes[t]=e,this}deleteAttribute(t){return delete this.attributes[t],this}hasAttribute(t){return void 0!==this.attributes[t]}addGroup(t,e,n=0){this.groups.push({start:t,count:e,materialIndex:n})}clearGroups(){this.groups=[]}setDrawRange(t,e){this.drawRange.start=t,this.drawRange.count=e}applyMatrix4(t){const e=this.attributes.position;void 0!==e&&(e.applyMatrix4(t),e.needsUpdate=!0);const n=this.attributes.normal;if(void 0!==n){const e=(new u.a).getNormalMatrix(t);n.applyNormalMatrix(e),n.needsUpdate=!0}const i=this.attributes.tangent;return void 0!==i&&(i.transformDirection(t),i.needsUpdate=!0),null!==this.boundingBox&&this.computeBoundingBox(),null!==this.boundingSphere&&this.computeBoundingSphere(),this}applyQuaternion(t){return m.makeRotationFromQuaternion(t),this.applyMatrix4(m),this}rotateX(t){return m.makeRotationX(t),this.applyMatrix4(m),this}rotateY(t){return m.makeRotationY(t),this.applyMatrix4(m),this}rotateZ(t){return m.makeRotationZ(t),this.applyMatrix4(m),this}translate(t,e,n){return m.makeTranslation(t,e,n),this.applyMatrix4(m),this}scale(t,e,n){return m.makeScale(t,e,n),this.applyMatrix4(m),this}lookAt(t){return f.lookAt(t),f.updateMatrix(),this.applyMatrix4(f.matrix),this}center(){return this.computeBoundingBox(),this.boundingBox.getCenter(g).negate(),this.translate(g.x,g.y,g.z),this}setFromPoints(t){const e=[];for(let n=0,i=t.length;n<i;n++){const i=t[n];e.push(i.x,i.y,i.z||0)}return this.setAttribute(\\\\\\\"position\\\\\\\",new a.c(e,3)),this}computeBoundingBox(){null===this.boundingBox&&(this.boundingBox=new r.a);const t=this.attributes.position,e=this.morphAttributes.position;if(t&&t.isGLBufferAttribute)return console.error('THREE.BufferGeometry.computeBoundingBox(): GLBufferAttribute requires a manual bounding box. Alternatively set \\\\\\\"mesh.frustumCulled\\\\\\\" to \\\\\\\"false\\\\\\\".',this),void this.boundingBox.set(new i.a(-1/0,-1/0,-1/0),new i.a(1/0,1/0,1/0));if(void 0!==t){if(this.boundingBox.setFromBufferAttribute(t),e)for(let t=0,n=e.length;t<n;t++){const n=e[t];v.setFromBufferAttribute(n),this.morphTargetsRelative?(x.addVectors(this.boundingBox.min,v.min),this.boundingBox.expandByPoint(x),x.addVectors(this.boundingBox.max,v.max),this.boundingBox.expandByPoint(x)):(this.boundingBox.expandByPoint(v.min),this.boundingBox.expandByPoint(v.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(){null===this.boundingSphere&&(this.boundingSphere=new l.a);const t=this.attributes.position,e=this.morphAttributes.position;if(t&&t.isGLBufferAttribute)return console.error('THREE.BufferGeometry.computeBoundingSphere(): GLBufferAttribute requires a manual bounding sphere. Alternatively set \\\\\\\"mesh.frustumCulled\\\\\\\" to \\\\\\\"false\\\\\\\".',this),void this.boundingSphere.set(new i.a,1/0);if(t){const n=this.boundingSphere.center;if(v.setFromBufferAttribute(t),e)for(let t=0,n=e.length;t<n;t++){const n=e[t];y.setFromBufferAttribute(n),this.morphTargetsRelative?(x.addVectors(v.min,y.min),v.expandByPoint(x),x.addVectors(v.max,y.max),v.expandByPoint(x)):(v.expandByPoint(y.min),v.expandByPoint(y.max))}v.getCenter(n);let i=0;for(let e=0,s=t.count;e<s;e++)x.fromBufferAttribute(t,e),i=Math.max(i,n.distanceToSquared(x));if(e)for(let s=0,r=e.length;s<r;s++){const r=e[s],o=this.morphTargetsRelative;for(let e=0,s=r.count;e<s;e++)x.fromBufferAttribute(r,e),o&&(g.fromBufferAttribute(t,e),x.add(g)),i=Math.max(i,n.distanceToSquared(x))}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(){const t=this.index,e=this.attributes;if(null===t||void 0===e.position||void 0===e.normal||void 0===e.uv)return void console.error(\\\\\\\"THREE.BufferGeometry: .computeTangents() failed. Missing required attributes (index, position, normal or uv)\\\\\\\");const n=t.array,r=e.position.array,o=e.normal.array,l=e.uv.array,c=r.length/3;void 0===e.tangent&&this.setAttribute(\\\\\\\"tangent\\\\\\\",new a.a(new Float32Array(4*c),4));const h=e.tangent.array,u=[],d=[];for(let t=0;t<c;t++)u[t]=new i.a,d[t]=new i.a;const p=new i.a,_=new i.a,m=new i.a,f=new s.a,g=new s.a,v=new s.a,y=new i.a,x=new i.a;function b(t,e,n){p.fromArray(r,3*t),_.fromArray(r,3*e),m.fromArray(r,3*n),f.fromArray(l,2*t),g.fromArray(l,2*e),v.fromArray(l,2*n),_.sub(p),m.sub(p),g.sub(f),v.sub(f);const i=1/(g.x*v.y-v.x*g.y);isFinite(i)&&(y.copy(_).multiplyScalar(v.y).addScaledVector(m,-g.y).multiplyScalar(i),x.copy(m).multiplyScalar(g.x).addScaledVector(_,-v.x).multiplyScalar(i),u[t].add(y),u[e].add(y),u[n].add(y),d[t].add(x),d[e].add(x),d[n].add(x))}let w=this.groups;0===w.length&&(w=[{start:0,count:n.length}]);for(let t=0,e=w.length;t<e;++t){const e=w[t],i=e.start;for(let t=i,s=i+e.count;t<s;t+=3)b(n[t+0],n[t+1],n[t+2])}const T=new i.a,A=new i.a,M=new i.a,E=new i.a;function S(t){M.fromArray(o,3*t),E.copy(M);const e=u[t];T.copy(e),T.sub(M.multiplyScalar(M.dot(e))).normalize(),A.crossVectors(E,e);const n=A.dot(d[t])<0?-1:1;h[4*t]=T.x,h[4*t+1]=T.y,h[4*t+2]=T.z,h[4*t+3]=n}for(let t=0,e=w.length;t<e;++t){const e=w[t],i=e.start;for(let t=i,s=i+e.count;t<s;t+=3)S(n[t+0]),S(n[t+1]),S(n[t+2])}}computeVertexNormals(){const t=this.index,e=this.getAttribute(\\\\\\\"position\\\\\\\");if(void 0!==e){let n=this.getAttribute(\\\\\\\"normal\\\\\\\");if(void 0===n)n=new a.a(new Float32Array(3*e.count),3),this.setAttribute(\\\\\\\"normal\\\\\\\",n);else for(let t=0,e=n.count;t<e;t++)n.setXYZ(t,0,0,0);const s=new i.a,r=new i.a,o=new i.a,l=new i.a,c=new i.a,h=new i.a,u=new i.a,d=new i.a;if(t)for(let i=0,a=t.count;i<a;i+=3){const a=t.getX(i+0),p=t.getX(i+1),_=t.getX(i+2);s.fromBufferAttribute(e,a),r.fromBufferAttribute(e,p),o.fromBufferAttribute(e,_),u.subVectors(o,r),d.subVectors(s,r),u.cross(d),l.fromBufferAttribute(n,a),c.fromBufferAttribute(n,p),h.fromBufferAttribute(n,_),l.add(u),c.add(u),h.add(u),n.setXYZ(a,l.x,l.y,l.z),n.setXYZ(p,c.x,c.y,c.z),n.setXYZ(_,h.x,h.y,h.z)}else for(let t=0,i=e.count;t<i;t+=3)s.fromBufferAttribute(e,t+0),r.fromBufferAttribute(e,t+1),o.fromBufferAttribute(e,t+2),u.subVectors(o,r),d.subVectors(s,r),u.cross(d),n.setXYZ(t+0,u.x,u.y,u.z),n.setXYZ(t+1,u.x,u.y,u.z),n.setXYZ(t+2,u.x,u.y,u.z);this.normalizeNormals(),n.needsUpdate=!0}}merge(t,e){if(!t||!t.isBufferGeometry)return void console.error(\\\\\\\"THREE.BufferGeometry.merge(): geometry not an instance of THREE.BufferGeometry.\\\\\\\",t);void 0===e&&(e=0,console.warn(\\\\\\\"THREE.BufferGeometry.merge(): Overwriting original geometry, starting at offset=0. Use BufferGeometryUtils.mergeBufferGeometries() for lossless merge.\\\\\\\"));const n=this.attributes;for(const i in n){if(void 0===t.attributes[i])continue;const s=n[i].array,r=t.attributes[i],o=r.array,a=r.itemSize*e,l=Math.min(o.length,s.length-a);for(let t=0,e=a;t<l;t++,e++)s[e]=o[t]}return this}normalizeNormals(){const t=this.attributes.normal;for(let e=0,n=t.count;e<n;e++)x.fromBufferAttribute(t,e),x.normalize(),t.setXYZ(e,x.x,x.y,x.z)}toNonIndexed(){function t(t,e){const n=t.array,i=t.itemSize,s=t.normalized,r=new n.constructor(e.length*i);let o=0,l=0;for(let s=0,a=e.length;s<a;s++){o=t.isInterleavedBufferAttribute?e[s]*t.data.stride+t.offset:e[s]*i;for(let t=0;t<i;t++)r[l++]=n[o++]}return new a.a(r,i,s)}if(null===this.index)return console.warn(\\\\\\\"THREE.BufferGeometry.toNonIndexed(): BufferGeometry is already non-indexed.\\\\\\\"),this;const e=new b,n=this.index.array,i=this.attributes;for(const s in i){const r=t(i[s],n);e.setAttribute(s,r)}const s=this.morphAttributes;for(const i in s){const r=[],o=s[i];for(let e=0,i=o.length;e<i;e++){const i=t(o[e],n);r.push(i)}e.morphAttributes[i]=r}e.morphTargetsRelative=this.morphTargetsRelative;const r=this.groups;for(let t=0,n=r.length;t<n;t++){const n=r[t];e.addGroup(n.start,n.count,n.materialIndex)}return e}toJSON(){const t={metadata:{version:4.5,type:\\\\\\\"BufferGeometry\\\\\\\",generator:\\\\\\\"BufferGeometry.toJSON\\\\\\\"}};if(t.uuid=this.uuid,t.type=this.type,\\\\\\\"\\\\\\\"!==this.name&&(t.name=this.name),Object.keys(this.userData).length>0&&(t.userData=this.userData),void 0!==this.parameters){const e=this.parameters;for(const n in e)void 0!==e[n]&&(t[n]=e[n]);return t}t.data={attributes:{}};const e=this.index;null!==e&&(t.data.index={type:e.array.constructor.name,array:Array.prototype.slice.call(e.array)});const n=this.attributes;for(const e in n){const i=n[e];t.data.attributes[e]=i.toJSON(t.data)}const i={};let s=!1;for(const e in this.morphAttributes){const n=this.morphAttributes[e],r=[];for(let e=0,i=n.length;e<i;e++){const i=n[e];r.push(i.toJSON(t.data))}r.length>0&&(i[e]=r,s=!0)}s&&(t.data.morphAttributes=i,t.data.morphTargetsRelative=this.morphTargetsRelative);const r=this.groups;r.length>0&&(t.data.groups=JSON.parse(JSON.stringify(r)));const o=this.boundingSphere;return null!==o&&(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;const e={};this.name=t.name;const n=t.index;null!==n&&this.setIndex(n.clone(e));const i=t.attributes;for(const t in i){const n=i[t];this.setAttribute(t,n.clone(e))}const s=t.morphAttributes;for(const t in s){const n=[],i=s[t];for(let t=0,s=i.length;t<s;t++)n.push(i[t].clone(e));this.morphAttributes[t]=n}this.morphTargetsRelative=t.morphTargetsRelative;const r=t.groups;for(let t=0,e=r.length;t<e;t++){const e=r[t];this.addGroup(e.start,e.count,e.materialIndex)}const o=t.boundingBox;null!==o&&(this.boundingBox=o.clone());const a=t.boundingSphere;return null!==a&&(this.boundingSphere=a.clone()),this.drawRange.start=t.drawRange.start,this.drawRange.count=t.drawRange.count,this.userData=t.userData,void 0!==t.parameters&&(this.parameters=Object.assign({},t.parameters)),this}dispose(){this.dispatchEvent({type:\\\\\\\"dispose\\\\\\\"})}}b.prototype.isBufferGeometry=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return s}));var i=n(3);class s{constructor(t=0,e=0,n=0,i=1){this._x=t,this._y=e,this._z=n,this._w=i}static slerp(t,e,n,i){return console.warn(\\\\\\\"THREE.Quaternion: Static .slerp() has been deprecated. Use qm.slerpQuaternions( qa, qb, t ) instead.\\\\\\\"),n.slerpQuaternions(t,e,i)}static slerpFlat(t,e,n,i,s,r,o){let a=n[i+0],l=n[i+1],c=n[i+2],h=n[i+3];const u=s[r+0],d=s[r+1],p=s[r+2],_=s[r+3];if(0===o)return t[e+0]=a,t[e+1]=l,t[e+2]=c,void(t[e+3]=h);if(1===o)return t[e+0]=u,t[e+1]=d,t[e+2]=p,void(t[e+3]=_);if(h!==_||a!==u||l!==d||c!==p){let t=1-o;const e=a*u+l*d+c*p+h*_,n=e>=0?1:-1,i=1-e*e;if(i>Number.EPSILON){const s=Math.sqrt(i),r=Math.atan2(s,e*n);t=Math.sin(t*r)/s,o=Math.sin(o*r)/s}const s=o*n;if(a=a*t+u*s,l=l*t+d*s,c=c*t+p*s,h=h*t+_*s,t===1-o){const t=1/Math.sqrt(a*a+l*l+c*c+h*h);a*=t,l*=t,c*=t,h*=t}}t[e]=a,t[e+1]=l,t[e+2]=c,t[e+3]=h}static multiplyQuaternionsFlat(t,e,n,i,s,r){const o=n[i],a=n[i+1],l=n[i+2],c=n[i+3],h=s[r],u=s[r+1],d=s[r+2],p=s[r+3];return t[e]=o*p+c*h+a*d-l*u,t[e+1]=a*p+c*u+l*h-o*d,t[e+2]=l*p+c*d+o*u-a*h,t[e+3]=c*p-o*h-a*u-l*d,t}get x(){return this._x}set x(t){this._x=t,this._onChangeCallback()}get y(){return this._y}set y(t){this._y=t,this._onChangeCallback()}get z(){return this._z}set z(t){this._z=t,this._onChangeCallback()}get w(){return this._w}set w(t){this._w=t,this._onChangeCallback()}set(t,e,n,i){return this._x=t,this._y=e,this._z=n,this._w=i,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._w)}copy(t){return this._x=t.x,this._y=t.y,this._z=t.z,this._w=t.w,this._onChangeCallback(),this}setFromEuler(t,e){if(!t||!t.isEuler)throw new Error(\\\\\\\"THREE.Quaternion: .setFromEuler() now expects an Euler rotation rather than a Vector3 and order.\\\\\\\");const n=t._x,i=t._y,s=t._z,r=t._order,o=Math.cos,a=Math.sin,l=o(n/2),c=o(i/2),h=o(s/2),u=a(n/2),d=a(i/2),p=a(s/2);switch(r){case\\\\\\\"XYZ\\\\\\\":this._x=u*c*h+l*d*p,this._y=l*d*h-u*c*p,this._z=l*c*p+u*d*h,this._w=l*c*h-u*d*p;break;case\\\\\\\"YXZ\\\\\\\":this._x=u*c*h+l*d*p,this._y=l*d*h-u*c*p,this._z=l*c*p-u*d*h,this._w=l*c*h+u*d*p;break;case\\\\\\\"ZXY\\\\\\\":this._x=u*c*h-l*d*p,this._y=l*d*h+u*c*p,this._z=l*c*p+u*d*h,this._w=l*c*h-u*d*p;break;case\\\\\\\"ZYX\\\\\\\":this._x=u*c*h-l*d*p,this._y=l*d*h+u*c*p,this._z=l*c*p-u*d*h,this._w=l*c*h+u*d*p;break;case\\\\\\\"YZX\\\\\\\":this._x=u*c*h+l*d*p,this._y=l*d*h+u*c*p,this._z=l*c*p-u*d*h,this._w=l*c*h-u*d*p;break;case\\\\\\\"XZY\\\\\\\":this._x=u*c*h-l*d*p,this._y=l*d*h-u*c*p,this._z=l*c*p+u*d*h,this._w=l*c*h+u*d*p;break;default:console.warn(\\\\\\\"THREE.Quaternion: .setFromEuler() encountered an unknown order: \\\\\\\"+r)}return!1!==e&&this._onChangeCallback(),this}setFromAxisAngle(t,e){const n=e/2,i=Math.sin(n);return this._x=t.x*i,this._y=t.y*i,this._z=t.z*i,this._w=Math.cos(n),this._onChangeCallback(),this}setFromRotationMatrix(t){const e=t.elements,n=e[0],i=e[4],s=e[8],r=e[1],o=e[5],a=e[9],l=e[2],c=e[6],h=e[10],u=n+o+h;if(u>0){const t=.5/Math.sqrt(u+1);this._w=.25/t,this._x=(c-a)*t,this._y=(s-l)*t,this._z=(r-i)*t}else if(n>o&&n>h){const t=2*Math.sqrt(1+n-o-h);this._w=(c-a)/t,this._x=.25*t,this._y=(i+r)/t,this._z=(s+l)/t}else if(o>h){const t=2*Math.sqrt(1+o-n-h);this._w=(s-l)/t,this._x=(i+r)/t,this._y=.25*t,this._z=(a+c)/t}else{const t=2*Math.sqrt(1+h-n-o);this._w=(r-i)/t,this._x=(s+l)/t,this._y=(a+c)/t,this._z=.25*t}return this._onChangeCallback(),this}setFromUnitVectors(t,e){let n=t.dot(e)+1;return n<Number.EPSILON?(n=0,Math.abs(t.x)>Math.abs(t.z)?(this._x=-t.y,this._y=t.x,this._z=0,this._w=n):(this._x=0,this._y=-t.z,this._z=t.y,this._w=n)):(this._x=t.y*e.z-t.z*e.y,this._y=t.z*e.x-t.x*e.z,this._z=t.x*e.y-t.y*e.x,this._w=n),this.normalize()}angleTo(t){return 2*Math.acos(Math.abs(i.d(this.dot(t),-1,1)))}rotateTowards(t,e){const n=this.angleTo(t);if(0===n)return this;const i=Math.min(1,e/n);return this.slerp(t,i),this}identity(){return this.set(0,0,0,1)}invert(){return this.conjugate()}conjugate(){return this._x*=-1,this._y*=-1,this._z*=-1,this._onChangeCallback(),this}dot(t){return this._x*t._x+this._y*t._y+this._z*t._z+this._w*t._w}lengthSq(){return this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w}length(){return Math.sqrt(this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w)}normalize(){let t=this.length();return 0===t?(this._x=0,this._y=0,this._z=0,this._w=1):(t=1/t,this._x=this._x*t,this._y=this._y*t,this._z=this._z*t,this._w=this._w*t),this._onChangeCallback(),this}multiply(t,e){return void 0!==e?(console.warn(\\\\\\\"THREE.Quaternion: .multiply() now only accepts one argument. Use .multiplyQuaternions( a, b ) instead.\\\\\\\"),this.multiplyQuaternions(t,e)):this.multiplyQuaternions(this,t)}premultiply(t){return this.multiplyQuaternions(t,this)}multiplyQuaternions(t,e){const n=t._x,i=t._y,s=t._z,r=t._w,o=e._x,a=e._y,l=e._z,c=e._w;return this._x=n*c+r*o+i*l-s*a,this._y=i*c+r*a+s*o-n*l,this._z=s*c+r*l+n*a-i*o,this._w=r*c-n*o-i*a-s*l,this._onChangeCallback(),this}slerp(t,e){if(0===e)return this;if(1===e)return this.copy(t);const n=this._x,i=this._y,s=this._z,r=this._w;let o=r*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=r,this._x=n,this._y=i,this._z=s,this;const a=1-o*o;if(a<=Number.EPSILON){const t=1-e;return this._w=t*r+e*this._w,this._x=t*n+e*this._x,this._y=t*i+e*this._y,this._z=t*s+e*this._z,this.normalize(),this._onChangeCallback(),this}const l=Math.sqrt(a),c=Math.atan2(l,o),h=Math.sin((1-e)*c)/l,u=Math.sin(e*c)/l;return this._w=r*h+this._w*u,this._x=n*h+this._x*u,this._y=i*h+this._y*u,this._z=s*h+this._z*u,this._onChangeCallback(),this}slerpQuaternions(t,e,n){this.copy(t).slerp(e,n)}random(){const t=Math.random(),e=Math.sqrt(1-t),n=Math.sqrt(t),i=2*Math.PI*Math.random(),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}_onChange(t){return this._onChangeCallback=t,this}_onChangeCallback(){}}s.prototype.isQuaternion=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return i}));class i{constructor(t=0,e=0,n=0,i=1){this.x=t,this.y=e,this.z=n,this.w=i}get width(){return this.z}set width(t){this.z=t}get height(){return this.w}set height(t){this.w=t}set(t,e,n,i){return this.x=t,this.y=e,this.z=n,this.w=i,this}setScalar(t){return this.x=t,this.y=t,this.z=t,this.w=t,this}setX(t){return this.x=t,this}setY(t){return this.y=t,this}setZ(t){return this.z=t,this}setW(t){return this.w=t,this}setComponent(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;case 2:this.z=e;break;case 3:this.w=e;break;default:throw new Error(\\\\\\\"index is out of range: \\\\\\\"+t)}return this}getComponent(t){switch(t){case 0:return this.x;case 1:return this.y;case 2:return this.z;case 3:return this.w;default:throw new Error(\\\\\\\"index is out of range: \\\\\\\"+t)}}clone(){return new this.constructor(this.x,this.y,this.z,this.w)}copy(t){return this.x=t.x,this.y=t.y,this.z=t.z,this.w=void 0!==t.w?t.w:1,this}add(t,e){return void 0!==e?(console.warn(\\\\\\\"THREE.Vector4: .add() now only accepts one argument. Use .addVectors( a, b ) instead.\\\\\\\"),this.addVectors(t,e)):(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,e){return void 0!==e?(console.warn(\\\\\\\"THREE.Vector4: .sub() now only accepts one argument. Use .subVectors( a, b ) instead.\\\\\\\"),this.subVectors(t,e)):(this.x-=t.x,this.y-=t.y,this.z-=t.z,this.w-=t.w,this)}subScalar(t){return this.x-=t,this.y-=t,this.z-=t,this.w-=t,this}subVectors(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this.z=t.z-e.z,this.w=t.w-e.w,this}multiply(t){return this.x*=t.x,this.y*=t.y,this.z*=t.z,this.w*=t.w,this}multiplyScalar(t){return this.x*=t,this.y*=t,this.z*=t,this.w*=t,this}applyMatrix4(t){const e=this.x,n=this.y,i=this.z,s=this.w,r=t.elements;return this.x=r[0]*e+r[4]*n+r[8]*i+r[12]*s,this.y=r[1]*e+r[5]*n+r[9]*i+r[13]*s,this.z=r[2]*e+r[6]*n+r[10]*i+r[14]*s,this.w=r[3]*e+r[7]*n+r[11]*i+r[15]*s,this}divideScalar(t){return this.multiplyScalar(1/t)}setAxisAngleFromQuaternion(t){this.w=2*Math.acos(t.w);const e=Math.sqrt(1-t.w*t.w);return e<1e-4?(this.x=1,this.y=0,this.z=0):(this.x=t.x/e,this.y=t.y/e,this.z=t.z/e),this}setAxisAngleFromRotationMatrix(t){let e,n,i,s;const r=.01,o=.1,a=t.elements,l=a[0],c=a[4],h=a[8],u=a[1],d=a[5],p=a[9],_=a[2],m=a[6],f=a[10];if(Math.abs(c-u)<r&&Math.abs(h-_)<r&&Math.abs(p-m)<r){if(Math.abs(c+u)<o&&Math.abs(h+_)<o&&Math.abs(p+m)<o&&Math.abs(l+d+f-3)<o)return this.set(1,0,0,0),this;e=Math.PI;const t=(l+1)/2,a=(d+1)/2,g=(f+1)/2,v=(c+u)/4,y=(h+_)/4,x=(p+m)/4;return t>a&&t>g?t<r?(n=0,i=.707106781,s=.707106781):(n=Math.sqrt(t),i=v/n,s=y/n):a>g?a<r?(n=.707106781,i=0,s=.707106781):(i=Math.sqrt(a),n=v/i,s=x/i):g<r?(n=.707106781,i=.707106781,s=0):(s=Math.sqrt(g),n=y/s,i=x/s),this.set(n,i,s,e),this}let g=Math.sqrt((m-p)*(m-p)+(h-_)*(h-_)+(u-c)*(u-c));return Math.abs(g)<.001&&(g=1),this.x=(m-p)/g,this.y=(h-_)/g,this.z=(u-c)/g,this.w=Math.acos((l+d+f-1)/2),this}min(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this.z=Math.min(this.z,t.z),this.w=Math.min(this.w,t.w),this}max(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this.z=Math.max(this.z,t.z),this.w=Math.max(this.w,t.w),this}clamp(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this.z=Math.max(t.z,Math.min(e.z,this.z)),this.w=Math.max(t.w,Math.min(e.w,this.w)),this}clampScalar(t,e){return this.x=Math.max(t,Math.min(e,this.x)),this.y=Math.max(t,Math.min(e,this.y)),this.z=Math.max(t,Math.min(e,this.z)),this.w=Math.max(t,Math.min(e,this.w)),this}clampLength(t,e){const n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(t,Math.min(e,n)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this.w=Math.floor(this.w),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this.w=Math.ceil(this.w),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this.w=Math.round(this.w),this}roundToZero(){return this.x=this.x<0?Math.ceil(this.x):Math.floor(this.x),this.y=this.y<0?Math.ceil(this.y):Math.floor(this.y),this.z=this.z<0?Math.ceil(this.z):Math.floor(this.z),this.w=this.w<0?Math.ceil(this.w):Math.floor(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,n){return void 0!==n&&console.warn(\\\\\\\"THREE.Vector4: offset has been removed from .fromBufferAttribute().\\\\\\\"),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}}i.prototype.isVector4=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return A}));var i=n(8),s=n(0),r=n(5),o=n(15),a=n(27),l=n(36),c=n(11),h=n(3);let u=0;const d=new s.a,p=new i.a,_=new r.a,m=new s.a,f=new s.a,g=new s.a,v=new i.a,y=new s.a(1,0,0),x=new s.a(0,1,0),b=new s.a(0,0,1),w={type:\\\\\\\"added\\\\\\\"},T={type:\\\\\\\"removed\\\\\\\"};class A extends o.a{constructor(){super(),Object.defineProperty(this,\\\\\\\"id\\\\\\\",{value:u++}),this.uuid=h.h(),this.name=\\\\\\\"\\\\\\\",this.type=\\\\\\\"Object3D\\\\\\\",this.parent=null,this.children=[],this.up=A.DefaultUp.clone();const t=new s.a,e=new a.a,n=new i.a,o=new s.a(1,1,1);e._onChange((function(){n.setFromEuler(e,!1)})),n._onChange((function(){e.setFromQuaternion(n,void 0,!1)})),Object.defineProperties(this,{position:{configurable:!0,enumerable:!0,value:t},rotation:{configurable:!0,enumerable:!0,value:e},quaternion:{configurable:!0,enumerable:!0,value:n},scale:{configurable:!0,enumerable:!0,value:o},modelViewMatrix:{value:new r.a},normalMatrix:{value:new c.a}}),this.matrix=new r.a,this.matrixWorld=new r.a,this.matrixAutoUpdate=A.DefaultMatrixAutoUpdate,this.matrixWorldNeedsUpdate=!1,this.layers=new l.a,this.visible=!0,this.castShadow=!1,this.receiveShadow=!1,this.frustumCulled=!0,this.renderOrder=0,this.animations=[],this.userData={}}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 p.setFromAxisAngle(t,e),this.quaternion.multiply(p),this}rotateOnWorldAxis(t,e){return p.setFromAxisAngle(t,e),this.quaternion.premultiply(p),this}rotateX(t){return this.rotateOnAxis(y,t)}rotateY(t){return this.rotateOnAxis(x,t)}rotateZ(t){return this.rotateOnAxis(b,t)}translateOnAxis(t,e){return d.copy(t).applyQuaternion(this.quaternion),this.position.add(d.multiplyScalar(e)),this}translateX(t){return this.translateOnAxis(y,t)}translateY(t){return this.translateOnAxis(x,t)}translateZ(t){return this.translateOnAxis(b,t)}localToWorld(t){return t.applyMatrix4(this.matrixWorld)}worldToLocal(t){return t.applyMatrix4(_.copy(this.matrixWorld).invert())}lookAt(t,e,n){t.isVector3?m.copy(t):m.set(t,e,n);const i=this.parent;this.updateWorldMatrix(!0,!1),f.setFromMatrixPosition(this.matrixWorld),this.isCamera||this.isLight?_.lookAt(f,m,this.up):_.lookAt(m,f,this.up),this.quaternion.setFromRotationMatrix(_),i&&(_.extractRotation(i.matrixWorld),p.setFromRotationMatrix(_),this.quaternion.premultiply(p.invert()))}add(t){if(arguments.length>1){for(let t=0;t<arguments.length;t++)this.add(arguments[t]);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?(null!==t.parent&&t.parent.remove(t),t.parent=this,this.children.push(t),t.dispatchEvent(w)):console.error(\\\\\\\"THREE.Object3D.add: object not an instance of THREE.Object3D.\\\\\\\",t),this)}remove(t){if(arguments.length>1){for(let t=0;t<arguments.length;t++)this.remove(arguments[t]);return this}const e=this.children.indexOf(t);return-1!==e&&(t.parent=null,this.children.splice(e,1),t.dispatchEvent(T)),this}removeFromParent(){const t=this.parent;return null!==t&&t.remove(this),this}clear(){for(let t=0;t<this.children.length;t++){const e=this.children[t];e.parent=null,e.dispatchEvent(T)}return this.children.length=0,this}attach(t){return this.updateWorldMatrix(!0,!1),_.copy(this.matrixWorld).invert(),null!==t.parent&&(t.parent.updateWorldMatrix(!0,!1),_.multiply(t.parent.matrixWorld)),t.applyMatrix4(_),this.add(t),t.updateWorldMatrix(!1,!0),this}getObjectById(t){return this.getObjectByProperty(\\\\\\\"id\\\\\\\",t)}getObjectByName(t){return this.getObjectByProperty(\\\\\\\"name\\\\\\\",t)}getObjectByProperty(t,e){if(this[t]===e)return this;for(let n=0,i=this.children.length;n<i;n++){const i=this.children[n].getObjectByProperty(t,e);if(void 0!==i)return i}}getWorldPosition(t){return this.updateWorldMatrix(!0,!1),t.setFromMatrixPosition(this.matrixWorld)}getWorldQuaternion(t){return this.updateWorldMatrix(!0,!1),this.matrixWorld.decompose(f,t,g),t}getWorldScale(t){return this.updateWorldMatrix(!0,!1),this.matrixWorld.decompose(f,v,t),t}getWorldDirection(t){this.updateWorldMatrix(!0,!1);const e=this.matrixWorld.elements;return t.set(e[8],e[9],e[10]).normalize()}raycast(){}traverse(t){t(this);const e=this.children;for(let n=0,i=e.length;n<i;n++)e[n].traverse(t)}traverseVisible(t){if(!1===this.visible)return;t(this);const e=this.children;for(let n=0,i=e.length;n<i;n++)e[n].traverseVisible(t)}traverseAncestors(t){const e=this.parent;null!==e&&(t(e),e.traverseAncestors(t))}updateMatrix(){this.matrix.compose(this.position,this.quaternion,this.scale),this.matrixWorldNeedsUpdate=!0}updateMatrixWorld(t){this.matrixAutoUpdate&&this.updateMatrix(),(this.matrixWorldNeedsUpdate||t)&&(null===this.parent?this.matrixWorld.copy(this.matrix):this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.matrix),this.matrixWorldNeedsUpdate=!1,t=!0);const e=this.children;for(let n=0,i=e.length;n<i;n++)e[n].updateMatrixWorld(t)}updateWorldMatrix(t,e){const n=this.parent;if(!0===t&&null!==n&&n.updateWorldMatrix(!0,!1),this.matrixAutoUpdate&&this.updateMatrix(),null===this.parent?this.matrixWorld.copy(this.matrix):this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.matrix),!0===e){const t=this.children;for(let e=0,n=t.length;e<n;e++)t[e].updateWorldMatrix(!1,!0)}}toJSON(t){const e=void 0===t||\\\\\\\"string\\\\\\\"==typeof t,n={};e&&(t={geometries:{},materials:{},textures:{},images:{},shapes:{},skeletons:{},animations:{}},n.metadata={version:4.5,type:\\\\\\\"Object\\\\\\\",generator:\\\\\\\"Object3D.toJSON\\\\\\\"});const i={};function s(e,n){return void 0===e[n.uuid]&&(e[n.uuid]=n.toJSON(t)),n.uuid}if(i.uuid=this.uuid,i.type=this.type,\\\\\\\"\\\\\\\"!==this.name&&(i.name=this.name),!0===this.castShadow&&(i.castShadow=!0),!0===this.receiveShadow&&(i.receiveShadow=!0),!1===this.visible&&(i.visible=!1),!1===this.frustumCulled&&(i.frustumCulled=!1),0!==this.renderOrder&&(i.renderOrder=this.renderOrder),\\\\\\\"{}\\\\\\\"!==JSON.stringify(this.userData)&&(i.userData=this.userData),i.layers=this.layers.mask,i.matrix=this.matrix.toArray(),!1===this.matrixAutoUpdate&&(i.matrixAutoUpdate=!1),this.isInstancedMesh&&(i.type=\\\\\\\"InstancedMesh\\\\\\\",i.count=this.count,i.instanceMatrix=this.instanceMatrix.toJSON(),null!==this.instanceColor&&(i.instanceColor=this.instanceColor.toJSON())),this.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&&(i.environment=this.environment.toJSON(t).uuid);else if(this.isMesh||this.isLine||this.isPoints){i.geometry=s(t.geometries,this.geometry);const e=this.geometry.parameters;if(void 0!==e&&void 0!==e.shapes){const n=e.shapes;if(Array.isArray(n))for(let e=0,i=n.length;e<i;e++){const i=n[e];s(t.shapes,i)}else s(t.shapes,n)}}if(this.isSkinnedMesh&&(i.bindMode=this.bindMode,i.bindMatrix=this.bindMatrix.toArray(),void 0!==this.skeleton&&(s(t.skeletons,this.skeleton),i.skeleton=this.skeleton.uuid)),void 0!==this.material)if(Array.isArray(this.material)){const e=[];for(let n=0,i=this.material.length;n<i;n++)e.push(s(t.materials,this.material[n]));i.material=e}else i.material=s(t.materials,this.material);if(this.children.length>0){i.children=[];for(let e=0;e<this.children.length;e++)i.children.push(this.children[e].toJSON(t).object)}if(this.animations.length>0){i.animations=[];for(let e=0;e<this.animations.length;e++){const n=this.animations[e];i.animations.push(s(t.animations,n))}}if(e){const e=r(t.geometries),i=r(t.materials),s=r(t.textures),o=r(t.images),a=r(t.shapes),l=r(t.skeletons),c=r(t.animations);e.length>0&&(n.geometries=e),i.length>0&&(n.materials=i),s.length>0&&(n.textures=s),o.length>0&&(n.images=o),a.length>0&&(n.shapes=a),l.length>0&&(n.skeletons=l),c.length>0&&(n.animations=c)}return n.object=i,n;function r(t){const e=[];for(const n in t){const i=t[n];delete i.metadata,e.push(i)}return e}}clone(t){return(new this.constructor).copy(this,t)}copy(t,e=!0){if(this.name=t.name,this.up.copy(t.up),this.position.copy(t.position),this.rotation.order=t.rotation.order,this.quaternion.copy(t.quaternion),this.scale.copy(t.scale),this.matrix.copy(t.matrix),this.matrixWorld.copy(t.matrixWorld),this.matrixAutoUpdate=t.matrixAutoUpdate,this.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.userData=JSON.parse(JSON.stringify(t.userData)),!0===e)for(let e=0;e<t.children.length;e++){const n=t.children[e];this.add(n.clone())}return this}}A.DefaultUp=new s.a(0,1,0),A.DefaultMatrixAutoUpdate=!0,A.prototype.isObject3D=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return i}));class i{constructor(){this.elements=[1,0,0,0,1,0,0,0,1],arguments.length>0&&console.error(\\\\\\\"THREE.Matrix3: the constructor no longer reads arguments. use .set() instead.\\\\\\\")}set(t,e,n,i,s,r,o,a,l){const c=this.elements;return c[0]=t,c[1]=i,c[2]=o,c[3]=e,c[4]=s,c[5]=a,c[6]=n,c[7]=r,c[8]=l,this}identity(){return this.set(1,0,0,0,1,0,0,0,1),this}copy(t){const e=this.elements,n=t.elements;return e[0]=n[0],e[1]=n[1],e[2]=n[2],e[3]=n[3],e[4]=n[4],e[5]=n[5],e[6]=n[6],e[7]=n[7],e[8]=n[8],this}extractBasis(t,e,n){return t.setFromMatrix3Column(this,0),e.setFromMatrix3Column(this,1),n.setFromMatrix3Column(this,2),this}setFromMatrix4(t){const e=t.elements;return this.set(e[0],e[4],e[8],e[1],e[5],e[9],e[2],e[6],e[10]),this}multiply(t){return this.multiplyMatrices(this,t)}premultiply(t){return this.multiplyMatrices(t,this)}multiplyMatrices(t,e){const n=t.elements,i=e.elements,s=this.elements,r=n[0],o=n[3],a=n[6],l=n[1],c=n[4],h=n[7],u=n[2],d=n[5],p=n[8],_=i[0],m=i[3],f=i[6],g=i[1],v=i[4],y=i[7],x=i[2],b=i[5],w=i[8];return s[0]=r*_+o*g+a*x,s[3]=r*m+o*v+a*b,s[6]=r*f+o*y+a*w,s[1]=l*_+c*g+h*x,s[4]=l*m+c*v+h*b,s[7]=l*f+c*y+h*w,s[2]=u*_+d*g+p*x,s[5]=u*m+d*v+p*b,s[8]=u*f+d*y+p*w,this}multiplyScalar(t){const e=this.elements;return e[0]*=t,e[3]*=t,e[6]*=t,e[1]*=t,e[4]*=t,e[7]*=t,e[2]*=t,e[5]*=t,e[8]*=t,this}determinant(){const t=this.elements,e=t[0],n=t[1],i=t[2],s=t[3],r=t[4],o=t[5],a=t[6],l=t[7],c=t[8];return e*r*c-e*o*l-n*s*c+n*o*a+i*s*l-i*r*a}invert(){const t=this.elements,e=t[0],n=t[1],i=t[2],s=t[3],r=t[4],o=t[5],a=t[6],l=t[7],c=t[8],h=c*r-o*l,u=o*a-c*s,d=l*s-r*a,p=e*h+n*u+i*d;if(0===p)return this.set(0,0,0,0,0,0,0,0,0);const _=1/p;return t[0]=h*_,t[1]=(i*l-c*n)*_,t[2]=(o*n-i*r)*_,t[3]=u*_,t[4]=(c*e-i*a)*_,t[5]=(i*s-o*e)*_,t[6]=d*_,t[7]=(n*a-l*e)*_,t[8]=(r*e-n*s)*_,this}transpose(){let t;const e=this.elements;return t=e[1],e[1]=e[3],e[3]=t,t=e[2],e[2]=e[6],e[6]=t,t=e[5],e[5]=e[7],e[7]=t,this}getNormalMatrix(t){return this.setFromMatrix4(t).invert().transpose()}transposeIntoArray(t){const e=this.elements;return t[0]=e[0],t[1]=e[3],t[2]=e[6],t[3]=e[1],t[4]=e[4],t[5]=e[7],t[6]=e[2],t[7]=e[5],t[8]=e[8],this}setUvTransform(t,e,n,i,s,r,o){const a=Math.cos(s),l=Math.sin(s);return this.set(n*a,n*l,-n*(a*r+l*o)+r+t,-i*l,i*a,-i*(-l*r+a*o)+o+e,0,0,1),this}scale(t,e){const n=this.elements;return n[0]*=t,n[3]*=t,n[6]*=t,n[1]*=e,n[4]*=e,n[7]*=e,this}rotate(t){const e=Math.cos(t),n=Math.sin(t),i=this.elements,s=i[0],r=i[3],o=i[6],a=i[1],l=i[4],c=i[7];return i[0]=e*s+n*a,i[3]=e*r+n*l,i[6]=e*o+n*c,i[1]=-n*s+e*a,i[4]=-n*r+e*l,i[7]=-n*o+e*c,this}translate(t,e){const n=this.elements;return n[0]+=t*n[2],n[3]+=t*n[5],n[6]+=t*n[8],n[1]+=e*n[2],n[4]+=e*n[5],n[7]+=e*n[8],this}equals(t){const e=this.elements,n=t.elements;for(let t=0;t<9;t++)if(e[t]!==n[t])return!1;return!0}fromArray(t,e=0){for(let n=0;n<9;n++)this.elements[n]=t[n+e];return this}toArray(t=[],e=0){const n=this.elements;return t[e]=n[0],t[e+1]=n[1],t[e+2]=n[2],t[e+3]=n[3],t[e+4]=n[4],t[e+5]=n[5],t[e+6]=n[6],t[e+7]=n[7],t[e+8]=n[8],t}clone(){return(new this.constructor).fromArray(this.elements)}}i.prototype.isMatrix3=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return a}));var i=n(15),s=n(1),r=n(3);let o=0;class a extends i.a{constructor(){super(),Object.defineProperty(this,\\\\\\\"id\\\\\\\",{value:o++}),this.uuid=r.h(),this.name=\\\\\\\"\\\\\\\",this.type=\\\\\\\"Material\\\\\\\",this.fog=!0,this.blending=s.xb,this.side=s.H,this.vertexColors=!1,this.opacity=1,this.format=s.Ib,this.transparent=!1,this.blendSrc=s.Nc,this.blendDst=s.Db,this.blendEquation=s.b,this.blendSrcAlpha=null,this.blendDstAlpha=null,this.blendEquationAlpha=null,this.depthFunc=s.T,this.depthTest=!0,this.depthWrite=!0,this.stencilWriteMask=255,this.stencilFunc=s.h,this.stencilRef=0,this.stencilFuncMask=255,this.stencilFail=s.R,this.stencilZFail=s.R,this.stencilZPass=s.R,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.visible=!0,this.toneMapped=!0,this.userData={},this.version=0,this._alphaTest=0}get alphaTest(){return this._alphaTest}set alphaTest(t){this._alphaTest>0!=t>0&&this.version++,this._alphaTest=t}onBuild(){}onBeforeRender(){}onBeforeCompile(){}customProgramCacheKey(){return this.onBeforeCompile.toString()}setValues(t){if(void 0!==t)for(const e in t){const n=t[e];if(void 0===n){console.warn(\\\\\\\"THREE.Material: '\\\\\\\"+e+\\\\\\\"' parameter is undefined.\\\\\\\");continue}if(\\\\\\\"shading\\\\\\\"===e){console.warn(\\\\\\\"THREE.\\\\\\\"+this.type+\\\\\\\": .shading has been removed. Use the boolean .flatShading instead.\\\\\\\"),this.flatShading=n===s.F;continue}const i=this[e];void 0!==i?i&&i.isColor?i.set(n):i&&i.isVector3&&n&&n.isVector3?i.copy(n):this[e]=n:console.warn(\\\\\\\"THREE.\\\\\\\"+this.type+\\\\\\\": '\\\\\\\"+e+\\\\\\\"' is not a property of this material.\\\\\\\")}}toJSON(t){const e=void 0===t||\\\\\\\"string\\\\\\\"==typeof t;e&&(t={textures:{},images:{}});const n={metadata:{version:4.5,type:\\\\\\\"Material\\\\\\\",generator:\\\\\\\"Material.toJSON\\\\\\\"}};function i(t){const e=[];for(const n in t){const i=t[n];delete i.metadata,e.push(i)}return e}if(n.uuid=this.uuid,n.type=this.type,\\\\\\\"\\\\\\\"!==this.name&&(n.name=this.name),this.color&&this.color.isColor&&(n.color=this.color.getHex()),void 0!==this.roughness&&(n.roughness=this.roughness),void 0!==this.metalness&&(n.metalness=this.metalness),void 0!==this.sheen&&(n.sheen=this.sheen),this.sheenTint&&this.sheenTint.isColor&&(n.sheenTint=this.sheenTint.getHex()),void 0!==this.sheenRoughness&&(n.sheenRoughness=this.sheenRoughness),this.emissive&&this.emissive.isColor&&(n.emissive=this.emissive.getHex()),this.emissiveIntensity&&1!==this.emissiveIntensity&&(n.emissiveIntensity=this.emissiveIntensity),this.specular&&this.specular.isColor&&(n.specular=this.specular.getHex()),void 0!==this.specularIntensity&&(n.specularIntensity=this.specularIntensity),this.specularTint&&this.specularTint.isColor&&(n.specularTint=this.specularTint.getHex()),void 0!==this.shininess&&(n.shininess=this.shininess),void 0!==this.clearcoat&&(n.clearcoat=this.clearcoat),void 0!==this.clearcoatRoughness&&(n.clearcoatRoughness=this.clearcoatRoughness),this.clearcoatMap&&this.clearcoatMap.isTexture&&(n.clearcoatMap=this.clearcoatMap.toJSON(t).uuid),this.clearcoatRoughnessMap&&this.clearcoatRoughnessMap.isTexture&&(n.clearcoatRoughnessMap=this.clearcoatRoughnessMap.toJSON(t).uuid),this.clearcoatNormalMap&&this.clearcoatNormalMap.isTexture&&(n.clearcoatNormalMap=this.clearcoatNormalMap.toJSON(t).uuid,n.clearcoatNormalScale=this.clearcoatNormalScale.toArray()),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.specularTintMap&&this.specularTintMap.isTexture&&(n.specularTintMap=this.specularTintMap.toJSON(t).uuid),this.envMap&&this.envMap.isTexture&&(n.envMap=this.envMap.toJSON(t).uuid,void 0!==this.combine&&(n.combine=this.combine)),void 0!==this.envMapIntensity&&(n.envMapIntensity=this.envMapIntensity),void 0!==this.reflectivity&&(n.reflectivity=this.reflectivity),void 0!==this.refractionRatio&&(n.refractionRatio=this.refractionRatio),this.gradientMap&&this.gradientMap.isTexture&&(n.gradientMap=this.gradientMap.toJSON(t).uuid),void 0!==this.transmission&&(n.transmission=this.transmission),this.transmissionMap&&this.transmissionMap.isTexture&&(n.transmissionMap=this.transmissionMap.toJSON(t).uuid),void 0!==this.thickness&&(n.thickness=this.thickness),this.thicknessMap&&this.thicknessMap.isTexture&&(n.thicknessMap=this.thicknessMap.toJSON(t).uuid),void 0!==this.attenuationDistance&&(n.attenuationDistance=this.attenuationDistance),void 0!==this.attenuationTint&&(n.attenuationTint=this.attenuationTint.getHex()),void 0!==this.size&&(n.size=this.size),null!==this.shadowSide&&(n.shadowSide=this.shadowSide),void 0!==this.sizeAttenuation&&(n.sizeAttenuation=this.sizeAttenuation),this.blending!==s.xb&&(n.blending=this.blending),this.side!==s.H&&(n.side=this.side),this.vertexColors&&(n.vertexColors=!0),this.opacity<1&&(n.opacity=this.opacity),this.format!==s.Ib&&(n.format=this.format),!0===this.transparent&&(n.transparent=this.transparent),n.depthFunc=this.depthFunc,n.depthTest=this.depthTest,n.depthWrite=this.depthWrite,n.colorWrite=this.colorWrite,n.stencilWrite=this.stencilWrite,n.stencilWriteMask=this.stencilWriteMask,n.stencilFunc=this.stencilFunc,n.stencilRef=this.stencilRef,n.stencilFuncMask=this.stencilFuncMask,n.stencilFail=this.stencilFail,n.stencilZFail=this.stencilZFail,n.stencilZPass=this.stencilZPass,this.rotation&&0!==this.rotation&&(n.rotation=this.rotation),!0===this.polygonOffset&&(n.polygonOffset=!0),0!==this.polygonOffsetFactor&&(n.polygonOffsetFactor=this.polygonOffsetFactor),0!==this.polygonOffsetUnits&&(n.polygonOffsetUnits=this.polygonOffsetUnits),this.linewidth&&1!==this.linewidth&&(n.linewidth=this.linewidth),void 0!==this.dashSize&&(n.dashSize=this.dashSize),void 0!==this.gapSize&&(n.gapSize=this.gapSize),void 0!==this.scale&&(n.scale=this.scale),!0===this.dithering&&(n.dithering=!0),this.alphaTest>0&&(n.alphaTest=this.alphaTest),!0===this.alphaToCoverage&&(n.alphaToCoverage=this.alphaToCoverage),!0===this.premultipliedAlpha&&(n.premultipliedAlpha=this.premultipliedAlpha),!0===this.wireframe&&(n.wireframe=this.wireframe),this.wireframeLinewidth>1&&(n.wireframeLinewidth=this.wireframeLinewidth),\\\\\\\"round\\\\\\\"!==this.wireframeLinecap&&(n.wireframeLinecap=this.wireframeLinecap),\\\\\\\"round\\\\\\\"!==this.wireframeLinejoin&&(n.wireframeLinejoin=this.wireframeLinejoin),!0===this.flatShading&&(n.flatShading=this.flatShading),!1===this.visible&&(n.visible=!1),!1===this.toneMapped&&(n.toneMapped=!1),\\\\\\\"{}\\\\\\\"!==JSON.stringify(this.userData)&&(n.userData=this.userData),e){const e=i(t.textures),s=i(t.images);e.length>0&&(n.textures=e),s.length>0&&(n.images=s)}return n}clone(){return(new this.constructor).copy(this)}copy(t){this.name=t.name,this.fog=t.fog,this.blending=t.blending,this.side=t.side,this.vertexColors=t.vertexColors,this.opacity=t.opacity,this.format=t.format,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.depthFunc=t.depthFunc,this.depthTest=t.depthTest,this.depthWrite=t.depthWrite,this.stencilWriteMask=t.stencilWriteMask,this.stencilFunc=t.stencilFunc,this.stencilRef=t.stencilRef,this.stencilFuncMask=t.stencilFuncMask,this.stencilFail=t.stencilFail,this.stencilZFail=t.stencilZFail,this.stencilZPass=t.stencilZPass,this.stencilWrite=t.stencilWrite;const e=t.clippingPlanes;let n=null;if(null!==e){const t=e.length;n=new Array(t);for(let i=0;i!==t;++i)n[i]=e[i].clone()}return this.clippingPlanes=n,this.clipIntersection=t.clipIntersection,this.clipShadows=t.clipShadows,this.shadowSide=t.shadowSide,this.colorWrite=t.colorWrite,this.precision=t.precision,this.polygonOffset=t.polygonOffset,this.polygonOffsetFactor=t.polygonOffsetFactor,this.polygonOffsetUnits=t.polygonOffsetUnits,this.dithering=t.dithering,this.alphaTest=t.alphaTest,this.alphaToCoverage=t.alphaToCoverage,this.premultipliedAlpha=t.premultipliedAlpha,this.visible=t.visible,this.toneMapped=t.toneMapped,this.userData=JSON.parse(JSON.stringify(t.userData)),this}dispose(){this.dispatchEvent({type:\\\\\\\"dispose\\\\\\\"})}set needsUpdate(t){!0===t&&this.version++}}a.prototype.isMaterial=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return s}));var i=n(28);class s{constructor(t){this.manager=void 0!==t?t:i.a,this.crossOrigin=\\\\\\\"anonymous\\\\\\\",this.withCredentials=!1,this.path=\\\\\\\"\\\\\\\",this.resourcePath=\\\\\\\"\\\\\\\",this.requestHeader={}}load(){}loadAsync(t,e){const 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}}},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return L}));var i=n(0),s=n(2),r=n(18),o=n(39),a=n(5),l=n(10),c=n(40),h=n(1),u=n(29),d=n(7);const p=new a.a,_=new o.a,m=new r.a,f=new i.a,g=new i.a,v=new i.a,y=new i.a,x=new i.a,b=new i.a,w=new i.a,T=new i.a,A=new i.a,M=new s.a,E=new s.a,S=new s.a,C=new i.a,N=new i.a;class L extends l.a{constructor(t=new d.a,e=new u.a){super(),this.type=\\\\\\\"Mesh\\\\\\\",this.geometry=t,this.material=e,this.updateMorphTargets()}copy(t){return super.copy(t),void 0!==t.morphTargetInfluences&&(this.morphTargetInfluences=t.morphTargetInfluences.slice()),void 0!==t.morphTargetDictionary&&(this.morphTargetDictionary=Object.assign({},t.morphTargetDictionary)),this.material=t.material,this.geometry=t.geometry,this}updateMorphTargets(){const t=this.geometry;if(t.isBufferGeometry){const e=t.morphAttributes,n=Object.keys(e);if(n.length>0){const t=e[n[0]];if(void 0!==t){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let e=0,n=t.length;e<n;e++){const n=t[e].name||String(e);this.morphTargetInfluences.push(0),this.morphTargetDictionary[n]=e}}}}else{const e=t.morphTargets;void 0!==e&&e.length>0&&console.error(\\\\\\\"THREE.Mesh.updateMorphTargets() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.\\\\\\\")}}raycast(t,e){const n=this.geometry,i=this.material,s=this.matrixWorld;if(void 0===i)return;if(null===n.boundingSphere&&n.computeBoundingSphere(),m.copy(n.boundingSphere),m.applyMatrix4(s),!1===t.ray.intersectsSphere(m))return;if(p.copy(s).invert(),_.copy(t.ray).applyMatrix4(p),null!==n.boundingBox&&!1===_.intersectsBox(n.boundingBox))return;let r;if(n.isBufferGeometry){const s=n.index,o=n.attributes.position,a=n.morphAttributes.position,l=n.morphTargetsRelative,c=n.attributes.uv,h=n.attributes.uv2,u=n.groups,d=n.drawRange;if(null!==s)if(Array.isArray(i))for(let n=0,p=u.length;n<p;n++){const p=u[n],m=i[p.materialIndex];for(let n=Math.max(p.start,d.start),i=Math.min(s.count,Math.min(p.start+p.count,d.start+d.count));n<i;n+=3){const i=s.getX(n),u=s.getX(n+1),d=s.getX(n+2);r=O(this,m,t,_,o,a,l,c,h,i,u,d),r&&(r.faceIndex=Math.floor(n/3),r.face.materialIndex=p.materialIndex,e.push(r))}}else{for(let n=Math.max(0,d.start),u=Math.min(s.count,d.start+d.count);n<u;n+=3){const u=s.getX(n),d=s.getX(n+1),p=s.getX(n+2);r=O(this,i,t,_,o,a,l,c,h,u,d,p),r&&(r.faceIndex=Math.floor(n/3),e.push(r))}}else if(void 0!==o)if(Array.isArray(i))for(let n=0,s=u.length;n<s;n++){const s=u[n],p=i[s.materialIndex];for(let n=Math.max(s.start,d.start),i=Math.min(o.count,Math.min(s.start+s.count,d.start+d.count));n<i;n+=3){r=O(this,p,t,_,o,a,l,c,h,n,n+1,n+2),r&&(r.faceIndex=Math.floor(n/3),r.face.materialIndex=s.materialIndex,e.push(r))}}else{for(let n=Math.max(0,d.start),s=Math.min(o.count,d.start+d.count);n<s;n+=3){r=O(this,i,t,_,o,a,l,c,h,n,n+1,n+2),r&&(r.faceIndex=Math.floor(n/3),e.push(r))}}}else n.isGeometry&&console.error(\\\\\\\"THREE.Mesh.raycast() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.\\\\\\\")}}function O(t,e,n,r,o,a,l,u,d,p,_,m){f.fromBufferAttribute(o,p),g.fromBufferAttribute(o,_),v.fromBufferAttribute(o,m);const L=t.morphTargetInfluences;if(a&&L){w.set(0,0,0),T.set(0,0,0),A.set(0,0,0);for(let t=0,e=a.length;t<e;t++){const e=L[t],n=a[t];0!==e&&(y.fromBufferAttribute(n,p),x.fromBufferAttribute(n,_),b.fromBufferAttribute(n,m),l?(w.addScaledVector(y,e),T.addScaledVector(x,e),A.addScaledVector(b,e)):(w.addScaledVector(y.sub(f),e),T.addScaledVector(x.sub(g),e),A.addScaledVector(b.sub(v),e)))}f.add(w),g.add(T),v.add(A)}t.isSkinnedMesh&&(t.boneTransform(p,f),t.boneTransform(_,g),t.boneTransform(m,v));const O=function(t,e,n,i,s,r,o,a){let l;if(l=e.side===h.i?i.intersectTriangle(o,r,s,!0,a):i.intersectTriangle(s,r,o,e.side!==h.z,a),null===l)return null;N.copy(a),N.applyMatrix4(t.matrixWorld);const c=n.ray.origin.distanceTo(N);return c<n.near||c>n.far?null:{distance:c,point:N.clone(),object:t}}(t,e,n,r,f,g,v,C);if(O){u&&(M.fromBufferAttribute(u,p),E.fromBufferAttribute(u,_),S.fromBufferAttribute(u,m),O.uv=c.a.getUV(C,f,g,v,M,E,S,new s.a)),d&&(M.fromBufferAttribute(d,p),E.fromBufferAttribute(d,_),S.fromBufferAttribute(d,m),O.uv2=c.a.getUV(C,f,g,v,M,E,S,new s.a));const t={a:p,b:_,c:m,normal:new i.a,materialIndex:0};c.a.getNormal(f,g,v,t.normal),O.face=t}return O}L.prototype.isMesh=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return i}));class i{addEventListener(t,e){void 0===this._listeners&&(this._listeners={});const n=this._listeners;void 0===n[t]&&(n[t]=[]),-1===n[t].indexOf(e)&&n[t].push(e)}hasEventListener(t,e){if(void 0===this._listeners)return!1;const n=this._listeners;return void 0!==n[t]&&-1!==n[t].indexOf(e)}removeEventListener(t,e){if(void 0===this._listeners)return;const n=this._listeners[t];if(void 0!==n){const t=n.indexOf(e);-1!==t&&n.splice(t,1)}}dispatchEvent(t){if(void 0===this._listeners)return;const e=this._listeners[t.type];if(void 0!==e){t.target=this;const n=e.slice(0);for(let e=0,i=n.length;e<i;e++)n[e].call(this,t);t.target=null}}}},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return s}));var i=n(0);class s{constructor(t=new i.a(1/0,1/0,1/0),e=new i.a(-1/0,-1/0,-1/0)){this.min=t,this.max=e}set(t,e){return this.min.copy(t),this.max.copy(e),this}setFromArray(t){let e=1/0,n=1/0,i=1/0,s=-1/0,r=-1/0,o=-1/0;for(let a=0,l=t.length;a<l;a+=3){const l=t[a],c=t[a+1],h=t[a+2];l<e&&(e=l),c<n&&(n=c),h<i&&(i=h),l>s&&(s=l),c>r&&(r=c),h>o&&(o=h)}return this.min.set(e,n,i),this.max.set(s,r,o),this}setFromBufferAttribute(t){let e=1/0,n=1/0,i=1/0,s=-1/0,r=-1/0,o=-1/0;for(let a=0,l=t.count;a<l;a++){const l=t.getX(a),c=t.getY(a),h=t.getZ(a);l<e&&(e=l),c<n&&(n=c),h<i&&(i=h),l>s&&(s=l),c>r&&(r=c),h>o&&(o=h)}return this.min.set(e,n,i),this.max.set(s,r,o),this}setFromPoints(t){this.makeEmpty();for(let e=0,n=t.length;e<n;e++)this.expandByPoint(t[e]);return this}setFromCenterAndSize(t,e){const n=o.copy(e).multiplyScalar(.5);return this.min.copy(t).sub(n),this.max.copy(t).add(n),this}setFromObject(t){return this.makeEmpty(),this.expandByObject(t)}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){t.updateWorldMatrix(!1,!1);const e=t.geometry;void 0!==e&&(null===e.boundingBox&&e.computeBoundingBox(),a.copy(e.boundingBox),a.applyMatrix4(t.matrixWorld),this.union(a));const n=t.children;for(let t=0,e=n.length;t<e;t++)this.expandByObject(n[t]);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,o),o.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(_),m.subVectors(this.max,_),l.subVectors(t.a,_),c.subVectors(t.b,_),h.subVectors(t.c,_),u.subVectors(c,l),d.subVectors(h,c),p.subVectors(l,h);let e=[0,-u.z,u.y,0,-d.z,d.y,0,-p.z,p.y,u.z,0,-u.x,d.z,0,-d.x,p.z,0,-p.x,-u.y,u.x,0,-d.y,d.x,0,-p.y,p.x,0];return!!v(e,l,c,h,m)&&(e=[1,0,0,0,1,0,0,0,1],!!v(e,l,c,h,m)&&(f.crossVectors(u,d),e=[f.x,f.y,f.z],v(e,l,c,h,m)))}clampPoint(t,e){return e.copy(t).clamp(this.min,this.max)}distanceToPoint(t){return o.copy(t).clamp(this.min,this.max).sub(t).length()}getBoundingSphere(t){return this.getCenter(t.center),t.radius=.5*this.getSize(o).length(),t}intersect(t){return this.min.max(t.min),this.max.min(t.max),this.isEmpty()&&this.makeEmpty(),this}union(t){return this.min.min(t.min),this.max.max(t.max),this}applyMatrix4(t){return this.isEmpty()||(r[0].set(this.min.x,this.min.y,this.min.z).applyMatrix4(t),r[1].set(this.min.x,this.min.y,this.max.z).applyMatrix4(t),r[2].set(this.min.x,this.max.y,this.min.z).applyMatrix4(t),r[3].set(this.min.x,this.max.y,this.max.z).applyMatrix4(t),r[4].set(this.max.x,this.min.y,this.min.z).applyMatrix4(t),r[5].set(this.max.x,this.min.y,this.max.z).applyMatrix4(t),r[6].set(this.max.x,this.max.y,this.min.z).applyMatrix4(t),r[7].set(this.max.x,this.max.y,this.max.z).applyMatrix4(t),this.setFromPoints(r)),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)}}s.prototype.isBox3=!0;const r=[new i.a,new i.a,new i.a,new i.a,new i.a,new i.a,new i.a,new i.a],o=new i.a,a=new s,l=new i.a,c=new i.a,h=new i.a,u=new i.a,d=new i.a,p=new i.a,_=new i.a,m=new i.a,f=new i.a,g=new i.a;function v(t,e,n,i,s){for(let r=0,o=t.length-3;r<=o;r+=3){g.fromArray(t,r);const o=s.x*Math.abs(g.x)+s.y*Math.abs(g.y)+s.z*Math.abs(g.z),a=e.dot(g),l=n.dot(g),c=i.dot(g);if(Math.max(-Math.max(a,l,c),Math.min(a,l,c))>o)return!1}return!0}},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return i}));const i={enabled:!1,files:{},add:function(t,e){!1!==this.enabled&&(this.files[t]=e)},get:function(t){if(!1!==this.enabled)return this.files[t]},remove:function(t){delete this.files[t]},clear:function(){this.files={}}}},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return c}));var i=n(16),s=n(0);const r=new i.a,o=new s.a,a=new s.a,l=new s.a;class c{constructor(t=new s.a,e=-1){this.center=t,this.radius=e}set(t,e){return this.center.copy(t),this.radius=e,this}setFromPoints(t,e){const n=this.center;void 0!==e?n.copy(e):r.setFromPoints(t).getCenter(n);let i=0;for(let e=0,s=t.length;e<s;e++)i=Math.max(i,n.distanceToSquared(t[e]));return this.radius=Math.sqrt(i),this}copy(t){return this.center.copy(t.center),this.radius=t.radius,this}isEmpty(){return this.radius<0}makeEmpty(){return this.center.set(0,0,0),this.radius=-1,this}containsPoint(t){return t.distanceToSquared(this.center)<=this.radius*this.radius}distanceToPoint(t){return t.distanceTo(this.center)-this.radius}intersectsSphere(t){const e=this.radius+t.radius;return t.center.distanceToSquared(this.center)<=e*e}intersectsBox(t){return t.intersectsSphere(this)}intersectsPlane(t){return Math.abs(t.distanceToPoint(this.center))<=this.radius}clampPoint(t,e){const n=this.center.distanceToSquared(t);return e.copy(t),n>this.radius*this.radius&&(e.sub(this.center).normalize(),e.multiplyScalar(this.radius).add(this.center)),e}getBoundingBox(t){return this.isEmpty()?(t.makeEmpty(),t):(t.set(this.center,this.center),t.expandByScalar(this.radius),t)}applyMatrix4(t){return this.center.applyMatrix4(t),this.radius=this.radius*t.getMaxScaleOnAxis(),this}translate(t){return this.center.add(t),this}expandByPoint(t){l.subVectors(t,this.center);const e=l.lengthSq();if(e>this.radius*this.radius){const t=Math.sqrt(e),n=.5*(t-this.radius);this.center.add(l.multiplyScalar(n/t)),this.radius+=n}return this}union(t){return a.subVectors(t.center,this.center).normalize().multiplyScalar(t.radius),this.expandByPoint(o.copy(t.center).add(a)),this.expandByPoint(o.copy(t.center).sub(a)),this}equals(t){return t.center.equals(this.center)&&t.radius===this.radius}clone(){return(new this.constructor).copy(this)}}},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return r}));var i=n(8),s=n(1);const r={arraySlice:function(t,e,n){return r.isTypedArray(t)?new t.constructor(t.subarray(e,void 0!==n?n:t.length)):t.slice(e,n)},convertArray:function(t,e,n){return!t||!n&&t.constructor===e?t:\\\\\\\"number\\\\\\\"==typeof e.BYTES_PER_ELEMENT?new e(t):Array.prototype.slice.call(t)},isTypedArray:function(t){return ArrayBuffer.isView(t)&&!(t instanceof DataView)},getKeyframeOrder:function(t){const e=t.length,n=new Array(e);for(let t=0;t!==e;++t)n[t]=t;return n.sort((function(e,n){return t[e]-t[n]})),n},sortedArray:function(t,e,n){const i=t.length,s=new t.constructor(i);for(let r=0,o=0;o!==i;++r){const i=n[r]*e;for(let n=0;n!==e;++n)s[o++]=t[i+n]}return s},flattenJSON:function(t,e,n,i){let s=1,r=t[0];for(;void 0!==r&&void 0===r[i];)r=t[s++];if(void 0===r)return;let o=r[i];if(void 0!==o)if(Array.isArray(o))do{o=r[i],void 0!==o&&(e.push(r.time),n.push.apply(n,o)),r=t[s++]}while(void 0!==r);else if(void 0!==o.toArray)do{o=r[i],void 0!==o&&(e.push(r.time),o.toArray(n,n.length)),r=t[s++]}while(void 0!==r);else do{o=r[i],void 0!==o&&(e.push(r.time),n.push(o)),r=t[s++]}while(void 0!==r)},subclip:function(t,e,n,i,s=30){const o=t.clone();o.name=e;const a=[];for(let t=0;t<o.tracks.length;++t){const e=o.tracks[t],l=e.getValueSize(),c=[],h=[];for(let t=0;t<e.times.length;++t){const r=e.times[t]*s;if(!(r<n||r>=i)){c.push(e.times[t]);for(let n=0;n<l;++n)h.push(e.values[t*l+n])}}0!==c.length&&(e.times=r.convertArray(c,e.times.constructor),e.values=r.convertArray(h,e.values.constructor),a.push(e))}o.tracks=a;let l=1/0;for(let t=0;t<o.tracks.length;++t)l>o.tracks[t].times[0]&&(l=o.tracks[t].times[0]);for(let t=0;t<o.tracks.length;++t)o.tracks[t].shift(-1*l);return o.resetDuration(),o},makeClipAdditive:function(t,e=0,n=t,o=30){o<=0&&(o=30);const a=n.tracks.length,l=e/o;for(let e=0;e<a;++e){const s=n.tracks[e],o=s.ValueTypeName;if(\\\\\\\"bool\\\\\\\"===o||\\\\\\\"string\\\\\\\"===o)continue;const a=t.tracks.find((function(t){return t.name===s.name&&t.ValueTypeName===o}));if(void 0===a)continue;let c=0;const h=s.getValueSize();s.createInterpolant.isInterpolantFactoryMethodGLTFCubicSpline&&(c=h/3);let u=0;const d=a.getValueSize();a.createInterpolant.isInterpolantFactoryMethodGLTFCubicSpline&&(u=d/3);const p=s.times.length-1;let _;if(l<=s.times[0]){const t=c,e=h-c;_=r.arraySlice(s.values,t,e)}else if(l>=s.times[p]){const t=p*h+c,e=t+h-c;_=r.arraySlice(s.values,t,e)}else{const t=s.createInterpolant(),e=c,n=h-c;t.evaluate(l),_=r.arraySlice(t.resultBuffer,e,n)}if(\\\\\\\"quaternion\\\\\\\"===o){(new i.a).fromArray(_).normalize().conjugate().toArray(_)}const m=a.times.length;for(let t=0;t<m;++t){const e=t*d+u;if(\\\\\\\"quaternion\\\\\\\"===o)i.a.multiplyQuaternionsFlat(a.values,e,_,0,a.values,e);else{const t=d-2*u;for(let n=0;n<t;++n)a.values[e+n]-=_[n]}}}return t.blendMode=s.d,t}}},function(t,e,n){\\\\\\\"use strict\\\\\\\";function i(t){if(0===t.length)return-1/0;let e=t[0];for(let n=1,i=t.length;n<i;++n)t[n]>e&&(e=t[n]);return e}n.d(e,\\\\\\\"a\\\\\\\",(function(){return i})),n.d(e,\\\\\\\"c\\\\\\\",(function(){return r})),n.d(e,\\\\\\\"b\\\\\\\",(function(){return o}));const s={Int8Array:Int8Array,Uint8Array:Uint8Array,Uint8ClampedArray:Uint8ClampedArray,Int16Array:Int16Array,Uint16Array:Uint16Array,Int32Array:Int32Array,Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array};function r(t,e){return new s[t](e)}function o(t){return document.createElementNS(\\\\\\\"http://www.w3.org/1999/xhtml\\\\\\\",t)}},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return s}));var i=n(10);class s extends i.a{constructor(){super(),this.type=\\\\\\\"Group\\\\\\\"}}s.prototype.isGroup=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return o}));var i=n(17),s=n(13);const r={};class o extends s.a{constructor(t){super(t)}load(t,e,n,s){void 0===t&&(t=\\\\\\\"\\\\\\\"),void 0!==this.path&&(t=this.path+t),t=this.manager.resolveURL(t);const o=this,a=i.a.get(t);if(void 0!==a)return o.manager.itemStart(t),setTimeout((function(){e&&e(a),o.manager.itemEnd(t)}),0),a;if(void 0!==r[t])return void r[t].push({onLoad:e,onProgress:n,onError:s});const l=t.match(/^data:(.*?)(;base64)?,(.*)$/);let c;if(l){const n=l[1],i=!!l[2];let r=l[3];r=decodeURIComponent(r),i&&(r=atob(r));try{let i;const s=(this.responseType||\\\\\\\"\\\\\\\").toLowerCase();switch(s){case\\\\\\\"arraybuffer\\\\\\\":case\\\\\\\"blob\\\\\\\":const t=new Uint8Array(r.length);for(let e=0;e<r.length;e++)t[e]=r.charCodeAt(e);i=\\\\\\\"blob\\\\\\\"===s?new Blob([t.buffer],{type:n}):t.buffer;break;case\\\\\\\"document\\\\\\\":const e=new DOMParser;i=e.parseFromString(r,n);break;case\\\\\\\"json\\\\\\\":i=JSON.parse(r);break;default:i=r}setTimeout((function(){e&&e(i),o.manager.itemEnd(t)}),0)}catch(e){setTimeout((function(){s&&s(e),o.manager.itemError(t),o.manager.itemEnd(t)}),0)}}else{r[t]=[],r[t].push({onLoad:e,onProgress:n,onError:s}),c=new XMLHttpRequest,c.open(\\\\\\\"GET\\\\\\\",t,!0),c.addEventListener(\\\\\\\"load\\\\\\\",(function(e){const n=this.response,s=r[t];if(delete r[t],200===this.status||0===this.status){0===this.status&&console.warn(\\\\\\\"THREE.FileLoader: HTTP Status 0 received.\\\\\\\"),i.a.add(t,n);for(let t=0,e=s.length;t<e;t++){const e=s[t];e.onLoad&&e.onLoad(n)}o.manager.itemEnd(t)}else{for(let t=0,n=s.length;t<n;t++){const n=s[t];n.onError&&n.onError(e)}o.manager.itemError(t),o.manager.itemEnd(t)}}),!1),c.addEventListener(\\\\\\\"progress\\\\\\\",(function(e){const n=r[t];for(let t=0,i=n.length;t<i;t++){const i=n[t];i.onProgress&&i.onProgress(e)}}),!1),c.addEventListener(\\\\\\\"error\\\\\\\",(function(e){const n=r[t];delete r[t];for(let t=0,i=n.length;t<i;t++){const i=n[t];i.onError&&i.onError(e)}o.manager.itemError(t),o.manager.itemEnd(t)}),!1),c.addEventListener(\\\\\\\"abort\\\\\\\",(function(e){const n=r[t];delete r[t];for(let t=0,i=n.length;t<i;t++){const i=n[t];i.onError&&i.onError(e)}o.manager.itemError(t),o.manager.itemEnd(t)}),!1),void 0!==this.responseType&&(c.responseType=this.responseType),void 0!==this.withCredentials&&(c.withCredentials=this.withCredentials),c.overrideMimeType&&c.overrideMimeType(void 0!==this.mimeType?this.mimeType:\\\\\\\"text/plain\\\\\\\");for(const t in this.requestHeader)c.setRequestHeader(t,this.requestHeader[t]);c.send(null)}return o.manager.itemStart(t),c}setResponseType(t){return this.responseType=t,this}setMimeType(t){return this.mimeType=t,this}}},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return u}));var i=n(15),s=n(1),r=n(3),o=n(2),a=n(11),l=n(20);let c;let h=0;class u extends i.a{constructor(t=u.DEFAULT_IMAGE,e=u.DEFAULT_MAPPING,n=s.n,i=s.n,l=s.V,c=s.Y,d=s.Ib,p=s.Zc,_=1,m=s.U){super(),Object.defineProperty(this,\\\\\\\"id\\\\\\\",{value:h++}),this.uuid=r.h(),this.name=\\\\\\\"\\\\\\\",this.image=t,this.mipmaps=[],this.mapping=e,this.wrapS=n,this.wrapT=i,this.magFilter=l,this.minFilter=c,this.anisotropy=_,this.format=d,this.internalFormat=null,this.type=p,this.offset=new o.a(0,0),this.repeat=new o.a(1,1),this.center=new o.a(0,0),this.rotation=0,this.matrixAutoUpdate=!0,this.matrix=new a.a,this.generateMipmaps=!0,this.premultiplyAlpha=!1,this.flipY=!0,this.unpackAlignment=4,this.encoding=m,this.version=0,this.onUpdate=null,this.isRenderTargetTexture=!1}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.image=t.image,this.mipmaps=t.mipmaps.slice(0),this.mapping=t.mapping,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.encoding=t.encoding,this}toJSON(t){const e=void 0===t||\\\\\\\"string\\\\\\\"==typeof t;if(!e&&void 0!==t.textures[this.uuid])return t.textures[this.uuid];const n={metadata:{version:4.5,type:\\\\\\\"Texture\\\\\\\",generator:\\\\\\\"Texture.toJSON\\\\\\\"},uuid:this.uuid,name:this.name,mapping:this.mapping,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,type:this.type,encoding:this.encoding,minFilter:this.minFilter,magFilter:this.magFilter,anisotropy:this.anisotropy,flipY:this.flipY,premultiplyAlpha:this.premultiplyAlpha,unpackAlignment:this.unpackAlignment};if(void 0!==this.image){const i=this.image;if(void 0===i.uuid&&(i.uuid=r.h()),!e&&void 0===t.images[i.uuid]){let e;if(Array.isArray(i)){e=[];for(let t=0,n=i.length;t<n;t++)i[t].isDataTexture?e.push(d(i[t].image)):e.push(d(i[t]))}else e=d(i);t.images[i.uuid]={uuid:i.uuid,url:e}}n.image=i.uuid}return e||(t.textures[this.uuid]=n),n}dispose(){this.dispatchEvent({type:\\\\\\\"dispose\\\\\\\"})}transformUv(t){if(this.mapping!==s.Yc)return t;if(t.applyMatrix3(this.matrix),t.x<0||t.x>1)switch(this.wrapS){case s.wc:t.x=t.x-Math.floor(t.x);break;case s.n:t.x=t.x<0?0:1;break;case s.kb:1===Math.abs(Math.floor(t.x)%2)?t.x=Math.ceil(t.x)-t.x:t.x=t.x-Math.floor(t.x)}if(t.y<0||t.y>1)switch(this.wrapT){case s.wc:t.y=t.y-Math.floor(t.y);break;case s.n:t.y=t.y<0?0:1;break;case s.kb:1===Math.abs(Math.floor(t.y)%2)?t.y=Math.ceil(t.y)-t.y:t.y=t.y-Math.floor(t.y)}return this.flipY&&(t.y=1-t.y),t}set needsUpdate(t){!0===t&&this.version++}}function d(t){return\\\\\\\"undefined\\\\\\\"!=typeof HTMLImageElement&&t instanceof HTMLImageElement||\\\\\\\"undefined\\\\\\\"!=typeof HTMLCanvasElement&&t instanceof HTMLCanvasElement||\\\\\\\"undefined\\\\\\\"!=typeof ImageBitmap&&t instanceof ImageBitmap?class{static getDataURL(t){if(/^data:/i.test(t.src))return t.src;if(\\\\\\\"undefined\\\\\\\"==typeof HTMLCanvasElement)return t.src;let e;if(t instanceof HTMLCanvasElement)e=t;else{void 0===c&&(c=Object(l.b)(\\\\\\\"canvas\\\\\\\")),c.width=t.width,c.height=t.height;const n=c.getContext(\\\\\\\"2d\\\\\\\");t instanceof ImageData?n.putImageData(t,0,0):n.drawImage(t,0,0,t.width,t.height),e=c}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\\\\\\\")}}.getDataURL(t):t.data?{data:Array.prototype.slice.call(t.data),width:t.width,height:t.height,type:t.data.constructor.name}:(console.warn(\\\\\\\"THREE.Texture: Unable to serialize Texture.\\\\\\\"),{})}u.DEFAULT_IMAGE=void 0,u.DEFAULT_MAPPING=s.Yc,u.prototype.isTexture=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return r}));var i=n(12),s=n(6);class r extends i.a{constructor(t){super(),this.type=\\\\\\\"LineBasicMaterial\\\\\\\",this.color=new s.a(16777215),this.linewidth=1,this.linecap=\\\\\\\"round\\\\\\\",this.linejoin=\\\\\\\"round\\\\\\\",this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.linewidth=t.linewidth,this.linecap=t.linecap,this.linejoin=t.linejoin,this}}r.prototype.isLineBasicMaterial=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return a}));var i=n(3),s=n(2),r=n(0),o=n(5);class a{constructor(){this.type=\\\\\\\"Curve\\\\\\\",this.arcLengthDivisions=200}getPoint(){return console.warn(\\\\\\\"THREE.Curve: .getPoint() not implemented.\\\\\\\"),null}getPointAt(t,e){const n=this.getUtoTmapping(t);return this.getPoint(n,e)}getPoints(t=5){const e=[];for(let n=0;n<=t;n++)e.push(this.getPoint(n/t));return e}getSpacedPoints(t=5){const e=[];for(let n=0;n<=t;n++)e.push(this.getPointAt(n/t));return e}getLength(){const 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;const e=[];let n,i=this.getPoint(0),s=0;e.push(0);for(let r=1;r<=t;r++)n=this.getPoint(r/t),s+=n.distanceTo(i),e.push(s),i=n;return this.cacheArcLengths=e,e}updateArcLengths(){this.needsUpdate=!0,this.getLengths()}getUtoTmapping(t,e){const n=this.getLengths();let i=0;const s=n.length;let r;r=e||t*n[s-1];let o,a=0,l=s-1;for(;a<=l;)if(i=Math.floor(a+(l-a)/2),o=n[i]-r,o<0)a=i+1;else{if(!(o>0)){l=i;break}l=i-1}if(i=l,n[i]===r)return i/(s-1);const c=n[i];return(i+(r-c)/(n[i+1]-c))/(s-1)}getTangent(t,e){const n=1e-4;let i=t-n,o=t+n;i<0&&(i=0),o>1&&(o=1);const a=this.getPoint(i),l=this.getPoint(o),c=e||(a.isVector2?new s.a:new r.a);return c.copy(l).sub(a).normalize(),c}getTangentAt(t,e){const n=this.getUtoTmapping(t);return this.getTangent(n,e)}computeFrenetFrames(t,e){const n=new r.a,s=[],a=[],l=[],c=new r.a,h=new o.a;for(let e=0;e<=t;e++){const n=e/t;s[e]=this.getTangentAt(n,new r.a)}a[0]=new r.a,l[0]=new r.a;let u=Number.MAX_VALUE;const d=Math.abs(s[0].x),p=Math.abs(s[0].y),_=Math.abs(s[0].z);d<=u&&(u=d,n.set(1,0,0)),p<=u&&(u=p,n.set(0,1,0)),_<=u&&n.set(0,0,1),c.crossVectors(s[0],n).normalize(),a[0].crossVectors(s[0],c),l[0].crossVectors(s[0],a[0]);for(let e=1;e<=t;e++){if(a[e]=a[e-1].clone(),l[e]=l[e-1].clone(),c.crossVectors(s[e-1],s[e]),c.length()>Number.EPSILON){c.normalize();const t=Math.acos(i.d(s[e-1].dot(s[e]),-1,1));a[e].applyMatrix4(h.makeRotationAxis(c,t))}l[e].crossVectors(s[e],a[e])}if(!0===e){let e=Math.acos(i.d(a[0].dot(a[t]),-1,1));e/=t,s[0].dot(c.crossVectors(a[0],a[t]))>0&&(e=-e);for(let n=1;n<=t;n++)a[n].applyMatrix4(h.makeRotationAxis(s[n],e*n)),l[n].crossVectors(s[n],a[n])}return{tangents:s,normals:a,binormals:l}}clone(){return(new this.constructor).copy(this)}copy(t){return this.arcLengthDivisions=t.arcLengthDivisions,this}toJSON(){const t={metadata:{version:4.5,type:\\\\\\\"Curve\\\\\\\",generator:\\\\\\\"Curve.toJSON\\\\\\\"}};return t.arcLengthDivisions=this.arcLengthDivisions,t.type=this.type,t}fromJSON(t){return this.arcLengthDivisions=t.arcLengthDivisions,this}}},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return c}));var i=n(1),s=n(70),r=n(71),o=n(38);class a extends o.a{constructor(t,e,n,i){super(t,e,n,i)}interpolate_(t){return this.copySampleValue_(t-1)}}var l=n(19);class c{constructor(t,e,n,i){if(void 0===t)throw new Error(\\\\\\\"THREE.KeyframeTrack: track name is undefined\\\\\\\");if(void 0===e||0===e.length)throw new Error(\\\\\\\"THREE.KeyframeTrack: no keyframes in track named \\\\\\\"+t);this.name=t,this.times=l.a.convertArray(e,this.TimeBufferType),this.values=l.a.convertArray(n,this.ValueBufferType),this.setInterpolation(i||this.DefaultInterpolation)}static toJSON(t){const e=t.constructor;let n;if(e.toJSON!==this.toJSON)n=e.toJSON(t);else{n={name:t.name,times:l.a.convertArray(t.times,Array),values:l.a.convertArray(t.values,Array)};const e=t.getInterpolation();e!==t.DefaultInterpolation&&(n.interpolation=e)}return n.type=t.ValueTypeName,n}InterpolantFactoryMethodDiscrete(t){return new a(this.times,this.values,this.getValueSize(),t)}InterpolantFactoryMethodLinear(t){return new r.a(this.times,this.values,this.getValueSize(),t)}InterpolantFactoryMethodSmooth(t){return new s.a(this.times,this.values,this.getValueSize(),t)}setInterpolation(t){let e;switch(t){case i.O:e=this.InterpolantFactoryMethodDiscrete;break;case i.P:e=this.InterpolantFactoryMethodLinear;break;case i.Q:e=this.InterpolantFactoryMethodSmooth}if(void 0===e){const e=\\\\\\\"unsupported interpolation for \\\\\\\"+this.ValueTypeName+\\\\\\\" keyframe track named \\\\\\\"+this.name;if(void 0===this.createInterpolant){if(t===this.DefaultInterpolation)throw new Error(e);this.setInterpolation(this.DefaultInterpolation)}return console.warn(\\\\\\\"THREE.KeyframeTrack:\\\\\\\",e),this}return this.createInterpolant=e,this}getInterpolation(){switch(this.createInterpolant){case this.InterpolantFactoryMethodDiscrete:return i.O;case this.InterpolantFactoryMethodLinear:return i.P;case this.InterpolantFactoryMethodSmooth:return i.Q}}getValueSize(){return this.values.length/this.times.length}shift(t){if(0!==t){const e=this.times;for(let n=0,i=e.length;n!==i;++n)e[n]+=t}return this}scale(t){if(1!==t){const e=this.times;for(let n=0,i=e.length;n!==i;++n)e[n]*=t}return this}trim(t,e){const n=this.times,i=n.length;let s=0,r=i-1;for(;s!==i&&n[s]<t;)++s;for(;-1!==r&&n[r]>e;)--r;if(++r,0!==s||r!==i){s>=r&&(r=Math.max(r,1),s=r-1);const t=this.getValueSize();this.times=l.a.arraySlice(n,s,r),this.values=l.a.arraySlice(this.values,s*t,r*t)}return this}validate(){let t=!0;const e=this.getValueSize();e-Math.floor(e)!=0&&(console.error(\\\\\\\"THREE.KeyframeTrack: Invalid value size in track.\\\\\\\",this),t=!1);const n=this.times,i=this.values,s=n.length;0===s&&(console.error(\\\\\\\"THREE.KeyframeTrack: Track is empty.\\\\\\\",this),t=!1);let r=null;for(let e=0;e!==s;e++){const i=n[e];if(\\\\\\\"number\\\\\\\"==typeof i&&isNaN(i)){console.error(\\\\\\\"THREE.KeyframeTrack: Time is not a valid number.\\\\\\\",this,e,i),t=!1;break}if(null!==r&&r>i){console.error(\\\\\\\"THREE.KeyframeTrack: Out of order keys.\\\\\\\",this,e,i,r),t=!1;break}r=i}if(void 0!==i&&l.a.isTypedArray(i))for(let e=0,n=i.length;e!==n;++e){const n=i[e];if(isNaN(n)){console.error(\\\\\\\"THREE.KeyframeTrack: Value is not a valid number.\\\\\\\",this,e,n),t=!1;break}}return t}optimize(){const t=l.a.arraySlice(this.times),e=l.a.arraySlice(this.values),n=this.getValueSize(),s=this.getInterpolation()===i.Q,r=t.length-1;let o=1;for(let i=1;i<r;++i){let r=!1;const a=t[i];if(a!==t[i+1]&&(1!==i||a!==t[0]))if(s)r=!0;else{const t=i*n,s=t-n,o=t+n;for(let i=0;i!==n;++i){const n=e[t+i];if(n!==e[s+i]||n!==e[o+i]){r=!0;break}}}if(r){if(i!==o){t[o]=t[i];const s=i*n,r=o*n;for(let t=0;t!==n;++t)e[r+t]=e[s+t]}++o}}if(r>0){t[o]=t[r];for(let t=r*n,i=o*n,s=0;s!==n;++s)e[i+s]=e[t+s];++o}return o!==t.length?(this.times=l.a.arraySlice(t,0,o),this.values=l.a.arraySlice(e,0,o*n)):(this.times=t,this.values=e),this}clone(){const t=l.a.arraySlice(this.times,0),e=l.a.arraySlice(this.values,0),n=new(0,this.constructor)(this.name,t,e);return n.createInterpolant=this.createInterpolant,n}}c.prototype.TimeBufferType=Float32Array,c.prototype.ValueBufferType=Float32Array,c.prototype.DefaultInterpolation=i.P},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return c}));var i=n(8),s=n(0),r=n(5),o=n(3);const a=new r.a,l=new i.a;class c{constructor(t=0,e=0,n=0,i=c.DefaultOrder){this._x=t,this._y=e,this._z=n,this._order=i}get x(){return this._x}set x(t){this._x=t,this._onChangeCallback()}get y(){return this._y}set y(t){this._y=t,this._onChangeCallback()}get z(){return this._z}set z(t){this._z=t,this._onChangeCallback()}get order(){return this._order}set order(t){this._order=t,this._onChangeCallback()}set(t,e,n,i=this._order){return this._x=t,this._y=e,this._z=n,this._order=i,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._order)}copy(t){return this._x=t._x,this._y=t._y,this._z=t._z,this._order=t._order,this._onChangeCallback(),this}setFromRotationMatrix(t,e=this._order,n=!0){const i=t.elements,s=i[0],r=i[4],a=i[8],l=i[1],c=i[5],h=i[9],u=i[2],d=i[6],p=i[10];switch(e){case\\\\\\\"XYZ\\\\\\\":this._y=Math.asin(Object(o.d)(a,-1,1)),Math.abs(a)<.9999999?(this._x=Math.atan2(-h,p),this._z=Math.atan2(-r,s)):(this._x=Math.atan2(d,c),this._z=0);break;case\\\\\\\"YXZ\\\\\\\":this._x=Math.asin(-Object(o.d)(h,-1,1)),Math.abs(h)<.9999999?(this._y=Math.atan2(a,p),this._z=Math.atan2(l,c)):(this._y=Math.atan2(-u,s),this._z=0);break;case\\\\\\\"ZXY\\\\\\\":this._x=Math.asin(Object(o.d)(d,-1,1)),Math.abs(d)<.9999999?(this._y=Math.atan2(-u,p),this._z=Math.atan2(-r,c)):(this._y=0,this._z=Math.atan2(l,s));break;case\\\\\\\"ZYX\\\\\\\":this._y=Math.asin(-Object(o.d)(u,-1,1)),Math.abs(u)<.9999999?(this._x=Math.atan2(d,p),this._z=Math.atan2(l,s)):(this._x=0,this._z=Math.atan2(-r,c));break;case\\\\\\\"YZX\\\\\\\":this._z=Math.asin(Object(o.d)(l,-1,1)),Math.abs(l)<.9999999?(this._x=Math.atan2(-h,c),this._y=Math.atan2(-u,s)):(this._x=0,this._y=Math.atan2(a,p));break;case\\\\\\\"XZY\\\\\\\":this._z=Math.asin(-Object(o.d)(r,-1,1)),Math.abs(r)<.9999999?(this._x=Math.atan2(d,c),this._y=Math.atan2(a,s)):(this._x=Math.atan2(-h,p),this._y=0);break;default:console.warn(\\\\\\\"THREE.Euler: .setFromRotationMatrix() encountered an unknown order: \\\\\\\"+e)}return this._order=e,!0===n&&this._onChangeCallback(),this}setFromQuaternion(t,e,n){return a.makeRotationFromQuaternion(t),this.setFromRotationMatrix(a,e,n)}setFromVector3(t,e=this._order){return this.set(t.x,t.y,t.z,e)}reorder(t){return l.setFromEuler(this),this.setFromQuaternion(l,t)}equals(t){return t._x===this._x&&t._y===this._y&&t._z===this._z&&t._order===this._order}fromArray(t){return this._x=t[0],this._y=t[1],this._z=t[2],void 0!==t[3]&&(this._order=t[3]),this._onChangeCallback(),this}toArray(t=[],e=0){return t[e]=this._x,t[e+1]=this._y,t[e+2]=this._z,t[e+3]=this._order,t}toVector3(t){return t?t.set(this._x,this._y,this._z):new s.a(this._x,this._y,this._z)}_onChange(t){return this._onChangeCallback=t,this}_onChangeCallback(){}}c.prototype.isEuler=!0,c.DefaultOrder=\\\\\\\"XYZ\\\\\\\",c.RotationOrders=[\\\\\\\"XYZ\\\\\\\",\\\\\\\"YZX\\\\\\\",\\\\\\\"ZXY\\\\\\\",\\\\\\\"XZY\\\\\\\",\\\\\\\"YXZ\\\\\\\",\\\\\\\"ZYX\\\\\\\"]},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return s})),n.d(e,\\\\\\\"b\\\\\\\",(function(){return i}));class i{constructor(t,e,n){const i=this;let s,r=!1,o=0,a=0;const l=[];this.onStart=void 0,this.onLoad=t,this.onProgress=e,this.onError=n,this.itemStart=function(t){a++,!1===r&&void 0!==i.onStart&&i.onStart(t,o,a),r=!0},this.itemEnd=function(t){o++,void 0!==i.onProgress&&i.onProgress(t,o,a),o===a&&(r=!1,void 0!==i.onLoad&&i.onLoad())},this.itemError=function(t){void 0!==i.onError&&i.onError(t)},this.resolveURL=function(t){return s?s(t):t},this.setURLModifier=function(t){return s=t,this},this.addHandler=function(t,e){return l.push(t,e),this},this.removeHandler=function(t){const e=l.indexOf(t);return-1!==e&&l.splice(e,2),this},this.getHandler=function(t){for(let e=0,n=l.length;e<n;e+=2){const n=l[e],i=l[e+1];if(n.global&&(n.lastIndex=0),n.test(t))return i}return null}}}const s=new i},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return o}));var i=n(12),s=n(1),r=n(6);class o extends i.a{constructor(t){super(),this.type=\\\\\\\"MeshBasicMaterial\\\\\\\",this.color=new r.a(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=s.nb,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap=\\\\\\\"round\\\\\\\",this.wireframeLinejoin=\\\\\\\"round\\\\\\\",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}}o.prototype.isMeshBasicMaterial=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return r}));var i=n(44),s=n(3);class r extends i.a{constructor(t=50,e=1,n=.1,i=2e3){super(),this.type=\\\\\\\"PerspectiveCamera\\\\\\\",this.fov=t,this.zoom=1,this.near=n,this.far=i,this.focus=10,this.aspect=e,this.view=null,this.filmGauge=35,this.filmOffset=0,this.updateProjectionMatrix()}copy(t,e){return super.copy(t,e),this.fov=t.fov,this.zoom=t.zoom,this.near=t.near,this.far=t.far,this.focus=t.focus,this.aspect=t.aspect,this.view=null===t.view?null:Object.assign({},t.view),this.filmGauge=t.filmGauge,this.filmOffset=t.filmOffset,this}setFocalLength(t){const e=.5*this.getFilmHeight()/t;this.fov=2*s.b*Math.atan(e),this.updateProjectionMatrix()}getFocalLength(){const t=Math.tan(.5*s.a*this.fov);return.5*this.getFilmHeight()/t}getEffectiveFOV(){return 2*s.b*Math.atan(Math.tan(.5*s.a*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,r){this.aspect=t/e,null===this.view&&(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=t,this.view.fullHeight=e,this.view.offsetX=n,this.view.offsetY=i,this.view.width=s,this.view.height=r,this.updateProjectionMatrix()}clearViewOffset(){null!==this.view&&(this.view.enabled=!1),this.updateProjectionMatrix()}updateProjectionMatrix(){const t=this.near;let e=t*Math.tan(.5*s.a*this.fov)/this.zoom,n=2*e,i=this.aspect*n,r=-.5*i;const o=this.view;if(null!==this.view&&this.view.enabled){const t=o.fullWidth,s=o.fullHeight;r+=o.offsetX*i/t,e-=o.offsetY*n/s,i*=o.width/t,n*=o.height/s}const a=this.filmOffset;0!==a&&(r+=t*a/this.getFilmWidth()),this.projectionMatrix.makePerspective(r,r+i,e,e-n,t,this.far),this.projectionMatrixInverse.copy(this.projectionMatrix).invert()}toJSON(t){const e=super.toJSON(t);return e.object.fov=this.fov,e.object.zoom=this.zoom,e.object.near=this.near,e.object.far=this.far,e.object.focus=this.focus,e.object.aspect=this.aspect,null!==this.view&&(e.object.view=Object.assign({},this.view)),e.object.filmGauge=this.filmGauge,e.object.filmOffset=this.filmOffset,e}}r.prototype.isPerspectiveCamera=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return l}));var i=n(11),s=n(0);const r=new s.a,o=new s.a,a=new i.a;class l{constructor(t=new s.a(1,0,0),e=0){this.normal=t,this.constant=e}set(t,e){return this.normal.copy(t),this.constant=e,this}setComponents(t,e,n,i){return this.normal.set(t,e,n),this.constant=i,this}setFromNormalAndCoplanarPoint(t,e){return this.normal.copy(t),this.constant=-e.dot(this.normal),this}setFromCoplanarPoints(t,e,n){const i=r.subVectors(n,e).cross(o.subVectors(t,e)).normalize();return this.setFromNormalAndCoplanarPoint(i,t),this}copy(t){return this.normal.copy(t.normal),this.constant=t.constant,this}normalize(){const t=1/this.normal.length();return this.normal.multiplyScalar(t),this.constant*=t,this}negate(){return this.constant*=-1,this.normal.negate(),this}distanceToPoint(t){return this.normal.dot(t)+this.constant}distanceToSphere(t){return this.distanceToPoint(t.center)-t.radius}projectPoint(t,e){return e.copy(this.normal).multiplyScalar(-this.distanceToPoint(t)).add(t)}intersectLine(t,e){const n=t.delta(r),i=this.normal.dot(n);if(0===i)return 0===this.distanceToPoint(t.start)?e.copy(t.start):null;const s=-(t.start.dot(this.normal)+this.constant)/i;return s<0||s>1?null:e.copy(n).multiplyScalar(s).add(t.start)}intersectsLine(t){const e=this.distanceToPoint(t.start),n=this.distanceToPoint(t.end);return e<0&&n>0||n<0&&e>0}intersectsBox(t){return t.intersectsPlane(this)}intersectsSphere(t){return t.intersectsPlane(this)}coplanarPoint(t){return t.copy(this.normal).multiplyScalar(-this.constant)}applyMatrix4(t,e){const n=e||a.getNormalMatrix(t),i=this.coplanarPoint(r).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)}}l.prototype.isPlane=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";function i(t,e,n,i,s){const r=.5*(i-e),o=.5*(s-n),a=t*t;return(2*n-2*i+r+o)*(t*a)+(-3*n+3*i-2*r-o)*a+r*t+n}function s(t,e,n,i){return function(t,e){const n=1-t;return n*n*e}(t,e)+function(t,e){return 2*(1-t)*t*e}(t,n)+function(t,e){return t*t*e}(t,i)}function r(t,e,n,i,s){return function(t,e){const n=1-t;return n*n*n*e}(t,e)+function(t,e){const n=1-t;return 3*n*n*t*e}(t,n)+function(t,e){return 3*(1-t)*t*t*e}(t,i)+function(t,e){return t*t*t*e}(t,s)}n.d(e,\\\\\\\"a\\\\\\\",(function(){return i})),n.d(e,\\\\\\\"c\\\\\\\",(function(){return s})),n.d(e,\\\\\\\"b\\\\\\\",(function(){return r}))},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return r}));var i=n(10),s=n(6);class r extends i.a{constructor(t,e=1){super(),this.type=\\\\\\\"Light\\\\\\\",this.color=new s.a(t),this.intensity=e}dispose(){}copy(t){return super.copy(t),this.color.copy(t.color),this.intensity=t.intensity,this}toJSON(t){const e=super.toJSON(t);return e.object.color=this.color.getHex(),e.object.intensity=this.intensity,void 0!==this.groundColor&&(e.object.groundColor=this.groundColor.getHex()),void 0!==this.distance&&(e.object.distance=this.distance),void 0!==this.angle&&(e.object.angle=this.angle),void 0!==this.decay&&(e.object.decay=this.decay),void 0!==this.penumbra&&(e.object.penumbra=this.penumbra),void 0!==this.shadow&&(e.object.shadow=this.shadow.toJSON()),e}}r.prototype.isLight=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return r}));var i=n(23),s=n(1);class r extends i.a{constructor(t=null,e=1,n=1,i,r,o,a,l,c=s.ob,h=s.ob,u,d){super(null,o,a,l,c,h,i,r,u,d),this.image={data:t,width:e,height:n},this.magFilter=c,this.minFilter=h,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1,this.needsUpdate=!0}}r.prototype.isDataTexture=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return l}));var i=n(41),s=n(0),r=n(4);const o=new s.a,a=new s.a;class l extends i.a{constructor(t,e){super(t,e),this.type=\\\\\\\"LineSegments\\\\\\\"}computeLineDistances(){const t=this.geometry;if(t.isBufferGeometry)if(null===t.index){const e=t.attributes.position,n=[];for(let t=0,i=e.count;t<i;t+=2)o.fromBufferAttribute(e,t),a.fromBufferAttribute(e,t+1),n[t]=0===t?0:n[t-1],n[t+1]=n[t]+o.distanceTo(a);t.setAttribute(\\\\\\\"lineDistance\\\\\\\",new r.c(n,1))}else console.warn(\\\\\\\"THREE.LineSegments.computeLineDistances(): Computation only possible with non-indexed BufferGeometry.\\\\\\\");else t.isGeometry&&console.error(\\\\\\\"THREE.LineSegments.computeLineDistances() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.\\\\\\\");return this}}l.prototype.isLineSegments=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return i}));class i{constructor(){this.mask=1}set(t){this.mask=1<<t|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 0!=(this.mask&t.mask)}}},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return s}));var i=n(44);class s extends i.a{constructor(t=-1,e=1,n=1,i=-1,s=.1,r=2e3){super(),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=r,this.updateProjectionMatrix()}copy(t,e){return super.copy(t,e),this.left=t.left,this.right=t.right,this.top=t.top,this.bottom=t.bottom,this.near=t.near,this.far=t.far,this.zoom=t.zoom,this.view=null===t.view?null:Object.assign({},t.view),this}setViewOffset(t,e,n,i,s,r){null===this.view&&(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=t,this.view.fullHeight=e,this.view.offsetX=n,this.view.offsetY=i,this.view.width=s,this.view.height=r,this.updateProjectionMatrix()}clearViewOffset(){null!==this.view&&(this.view.enabled=!1),this.updateProjectionMatrix()}updateProjectionMatrix(){const t=(this.right-this.left)/(2*this.zoom),e=(this.top-this.bottom)/(2*this.zoom),n=(this.right+this.left)/2,i=(this.top+this.bottom)/2;let s=n-t,r=n+t,o=i+e,a=i-e;if(null!==this.view&&this.view.enabled){const t=(this.right-this.left)/this.view.fullWidth/this.zoom,e=(this.top-this.bottom)/this.view.fullHeight/this.zoom;s+=t*this.view.offsetX,r=s+t*this.view.width,o-=e*this.view.offsetY,a=o-e*this.view.height}this.projectionMatrix.makeOrthographic(s,r,o,a,this.near,this.far),this.projectionMatrixInverse.copy(this.projectionMatrix).invert()}toJSON(t){const e=super.toJSON(t);return e.object.zoom=this.zoom,e.object.left=this.left,e.object.right=this.right,e.object.top=this.top,e.object.bottom=this.bottom,e.object.near=this.near,e.object.far=this.far,null!==this.view&&(e.object.view=Object.assign({},this.view)),e}}s.prototype.isOrthographicCamera=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return i}));class i{constructor(t,e,n,i){this.parameterPositions=t,this._cachedIndex=0,this.resultBuffer=void 0!==i?i:new e.constructor(n),this.sampleValues=e,this.valueSize=n,this.settings=null,this.DefaultSettings_={}}evaluate(t){const e=this.parameterPositions;let n=this._cachedIndex,i=e[n],s=e[n-1];t:{e:{let r;n:{i:if(!(t<i)){for(let r=n+2;;){if(void 0===i){if(t<s)break i;return n=e.length,this._cachedIndex=n,this.afterEnd_(n-1,t,s)}if(n===r)break;if(s=i,i=e[++n],t<i)break e}r=e.length;break n}if(t>=s)break t;{const o=e[1];t<o&&(n=2,s=o);for(let r=n-2;;){if(void 0===s)return this._cachedIndex=0,this.beforeStart_(0,t,i);if(n===r)break;if(i=s,s=e[--n-1],t>=s)break e}r=n,n=0}}for(;n<r;){const i=n+r>>>1;t<e[i]?r=i:n=i+1}if(i=e[n],s=e[n-1],void 0===s)return this._cachedIndex=0,this.beforeStart_(0,t,i);if(void 0===i)return n=e.length,this._cachedIndex=n,this.afterEnd_(n-1,s,t)}this._cachedIndex=n,this.intervalChanged_(n,s,i)}return this.interpolate_(n,s,t,i)}getSettings_(){return this.settings||this.DefaultSettings_}copySampleValue_(t){const e=this.resultBuffer,n=this.sampleValues,i=this.valueSize,s=t*i;for(let t=0;t!==i;++t)e[t]=n[s+t];return e}interpolate_(){throw new Error(\\\\\\\"call to abstract method\\\\\\\")}intervalChanged_(){}}i.prototype.beforeStart_=i.prototype.copySampleValue_,i.prototype.afterEnd_=i.prototype.copySampleValue_},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return u}));var i=n(0);const s=new i.a,r=new i.a,o=new i.a,a=new i.a,l=new i.a,c=new i.a,h=new i.a;class u{constructor(t=new i.a,e=new i.a(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.direction).multiplyScalar(t).add(this.origin)}lookAt(t){return this.direction.copy(t).sub(this.origin).normalize(),this}recast(t){return this.origin.copy(this.at(t,s)),this}closestPointToPoint(t,e){e.subVectors(t,this.origin);const n=e.dot(this.direction);return n<0?e.copy(this.origin):e.copy(this.direction).multiplyScalar(n).add(this.origin)}distanceToPoint(t){return Math.sqrt(this.distanceSqToPoint(t))}distanceSqToPoint(t){const e=s.subVectors(t,this.origin).dot(this.direction);return e<0?this.origin.distanceToSquared(t):(s.copy(this.direction).multiplyScalar(e).add(this.origin),s.distanceToSquared(t))}distanceSqToSegment(t,e,n,i){r.copy(t).add(e).multiplyScalar(.5),o.copy(e).sub(t).normalize(),a.copy(this.origin).sub(r);const s=.5*t.distanceTo(e),l=-this.direction.dot(o),c=a.dot(this.direction),h=-a.dot(o),u=a.lengthSq(),d=Math.abs(1-l*l);let p,_,m,f;if(d>0)if(p=l*h-c,_=l*c-h,f=s*d,p>=0)if(_>=-f)if(_<=f){const t=1/d;p*=t,_*=t,m=p*(p+l*_+2*c)+_*(l*p+_+2*h)+u}else _=s,p=Math.max(0,-(l*_+c)),m=-p*p+_*(_+2*h)+u;else _=-s,p=Math.max(0,-(l*_+c)),m=-p*p+_*(_+2*h)+u;else _<=-f?(p=Math.max(0,-(-l*s+c)),_=p>0?-s:Math.min(Math.max(-s,-h),s),m=-p*p+_*(_+2*h)+u):_<=f?(p=0,_=Math.min(Math.max(-s,-h),s),m=_*(_+2*h)+u):(p=Math.max(0,-(l*s+c)),_=p>0?s:Math.min(Math.max(-s,-h),s),m=-p*p+_*(_+2*h)+u);else _=l>0?-s:s,p=Math.max(0,-(l*_+c)),m=-p*p+_*(_+2*h)+u;return n&&n.copy(this.direction).multiplyScalar(p).add(this.origin),i&&i.copy(o).multiplyScalar(_).add(r),m}intersectSphere(t,e){s.subVectors(t.center,this.origin);const n=s.dot(this.direction),i=s.dot(s)-n*n,r=t.radius*t.radius;if(i>r)return null;const o=Math.sqrt(r-i),a=n-o,l=n+o;return a<0&&l<0?null:a<0?this.at(l,e):this.at(a,e)}intersectsSphere(t){return this.distanceSqToPoint(t.center)<=t.radius*t.radius}distanceToPlane(t){const e=t.normal.dot(this.direction);if(0===e)return 0===t.distanceToPoint(this.origin)?0:null;const n=-(this.origin.dot(t.normal)+t.constant)/e;return n>=0?n:null}intersectPlane(t,e){const n=this.distanceToPlane(t);return null===n?null:this.at(n,e)}intersectsPlane(t){const e=t.distanceToPoint(this.origin);if(0===e)return!0;return t.normal.dot(this.direction)*e<0}intersectBox(t,e){let n,i,s,r,o,a;const l=1/this.direction.x,c=1/this.direction.y,h=1/this.direction.z,u=this.origin;return l>=0?(n=(t.min.x-u.x)*l,i=(t.max.x-u.x)*l):(n=(t.max.x-u.x)*l,i=(t.min.x-u.x)*l),c>=0?(s=(t.min.y-u.y)*c,r=(t.max.y-u.y)*c):(s=(t.max.y-u.y)*c,r=(t.min.y-u.y)*c),n>r||s>i?null:((s>n||n!=n)&&(n=s),(r<i||i!=i)&&(i=r),h>=0?(o=(t.min.z-u.z)*h,a=(t.max.z-u.z)*h):(o=(t.max.z-u.z)*h,a=(t.min.z-u.z)*h),n>a||o>i?null:((o>n||n!=n)&&(n=o),(a<i||i!=i)&&(i=a),i<0?null:this.at(n>=0?n:i,e)))}intersectsBox(t){return null!==this.intersectBox(t,s)}intersectTriangle(t,e,n,i,s){l.subVectors(e,t),c.subVectors(n,t),h.crossVectors(l,c);let r,o=this.direction.dot(h);if(o>0){if(i)return null;r=1}else{if(!(o<0))return null;r=-1,o=-o}a.subVectors(this.origin,t);const u=r*this.direction.dot(c.crossVectors(a,c));if(u<0)return null;const d=r*this.direction.dot(l.cross(a));if(d<0)return null;if(u+d>o)return null;const p=-r*a.dot(h);return p<0?null:this.at(p/o,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)}}},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return _}));var i=n(0);const s=new i.a,r=new i.a,o=new i.a,a=new i.a,l=new i.a,c=new i.a,h=new i.a,u=new i.a,d=new i.a,p=new i.a;class _{constructor(t=new i.a,e=new i.a,n=new i.a){this.a=t,this.b=e,this.c=n}static getNormal(t,e,n,i){i.subVectors(n,e),s.subVectors(t,e),i.cross(s);const r=i.lengthSq();return r>0?i.multiplyScalar(1/Math.sqrt(r)):i.set(0,0,0)}static getBarycoord(t,e,n,i,a){s.subVectors(i,e),r.subVectors(n,e),o.subVectors(t,e);const l=s.dot(s),c=s.dot(r),h=s.dot(o),u=r.dot(r),d=r.dot(o),p=l*u-c*c;if(0===p)return a.set(-2,-1,-1);const _=1/p,m=(u*h-c*d)*_,f=(l*d-c*h)*_;return a.set(1-m-f,f,m)}static containsPoint(t,e,n,i){return this.getBarycoord(t,e,n,i,a),a.x>=0&&a.y>=0&&a.x+a.y<=1}static getUV(t,e,n,i,s,r,o,l){return this.getBarycoord(t,e,n,i,a),l.set(0,0),l.addScaledVector(s,a.x),l.addScaledVector(r,a.y),l.addScaledVector(o,a.z),l}static isFrontFacing(t,e,n,i){return s.subVectors(n,e),r.subVectors(t,e),s.cross(r).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 s.subVectors(this.c,this.b),r.subVectors(this.a,this.b),.5*s.cross(r).length()}getMidpoint(t){return t.addVectors(this.a,this.b).add(this.c).multiplyScalar(1/3)}getNormal(t){return _.getNormal(this.a,this.b,this.c,t)}getPlane(t){return t.setFromCoplanarPoints(this.a,this.b,this.c)}getBarycoord(t,e){return _.getBarycoord(t,this.a,this.b,this.c,e)}getUV(t,e,n,i,s){return _.getUV(t,this.a,this.b,this.c,e,n,i,s)}containsPoint(t){return _.containsPoint(t,this.a,this.b,this.c)}isFrontFacing(t){return _.isFrontFacing(this.a,this.b,this.c,t)}intersectsBox(t){return t.intersectsTriangle(this)}closestPointToPoint(t,e){const n=this.a,i=this.b,s=this.c;let r,o;l.subVectors(i,n),c.subVectors(s,n),u.subVectors(t,n);const a=l.dot(u),_=c.dot(u);if(a<=0&&_<=0)return e.copy(n);d.subVectors(t,i);const m=l.dot(d),f=c.dot(d);if(m>=0&&f<=m)return e.copy(i);const g=a*f-m*_;if(g<=0&&a>=0&&m<=0)return r=a/(a-m),e.copy(n).addScaledVector(l,r);p.subVectors(t,s);const v=l.dot(p),y=c.dot(p);if(y>=0&&v<=y)return e.copy(s);const x=v*_-a*y;if(x<=0&&_>=0&&y<=0)return o=_/(_-y),e.copy(n).addScaledVector(c,o);const b=m*y-v*f;if(b<=0&&f-m>=0&&v-y>=0)return h.subVectors(s,i),o=(f-m)/(f-m+(v-y)),e.copy(i).addScaledVector(h,o);const w=1/(b+x+g);return r=x*w,o=g*w,e.copy(n).addScaledVector(l,r).addScaledVector(c,o)}equals(t){return t.a.equals(this.a)&&t.b.equals(this.b)&&t.c.equals(this.c)}}},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return f}));var i=n(18),s=n(39),r=n(5),o=n(10),a=n(0),l=n(24),c=n(7),h=n(4);const u=new a.a,d=new a.a,p=new r.a,_=new s.a,m=new i.a;class f extends o.a{constructor(t=new c.a,e=new l.a){super(),this.type=\\\\\\\"Line\\\\\\\",this.geometry=t,this.material=e,this.updateMorphTargets()}copy(t){return super.copy(t),this.material=t.material,this.geometry=t.geometry,this}computeLineDistances(){const t=this.geometry;if(t.isBufferGeometry)if(null===t.index){const e=t.attributes.position,n=[0];for(let t=1,i=e.count;t<i;t++)u.fromBufferAttribute(e,t-1),d.fromBufferAttribute(e,t),n[t]=n[t-1],n[t]+=u.distanceTo(d);t.setAttribute(\\\\\\\"lineDistance\\\\\\\",new h.c(n,1))}else console.warn(\\\\\\\"THREE.Line.computeLineDistances(): Computation only possible with non-indexed BufferGeometry.\\\\\\\");else t.isGeometry&&console.error(\\\\\\\"THREE.Line.computeLineDistances() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.\\\\\\\");return this}raycast(t,e){const n=this.geometry,i=this.matrixWorld,s=t.params.Line.threshold,r=n.drawRange;if(null===n.boundingSphere&&n.computeBoundingSphere(),m.copy(n.boundingSphere),m.applyMatrix4(i),m.radius+=s,!1===t.ray.intersectsSphere(m))return;p.copy(i).invert(),_.copy(t.ray).applyMatrix4(p);const o=s/((this.scale.x+this.scale.y+this.scale.z)/3),l=o*o,c=new a.a,h=new a.a,u=new a.a,d=new a.a,f=this.isLineSegments?2:1;if(n.isBufferGeometry){const i=n.index,s=n.attributes.position;if(null!==i){for(let n=Math.max(0,r.start),o=Math.min(i.count,r.start+r.count)-1;n<o;n+=f){const r=i.getX(n),o=i.getX(n+1);c.fromBufferAttribute(s,r),h.fromBufferAttribute(s,o);if(_.distanceSqToSegment(c,h,d,u)>l)continue;d.applyMatrix4(this.matrixWorld);const a=t.ray.origin.distanceTo(d);a<t.near||a>t.far||e.push({distance:a,point:u.clone().applyMatrix4(this.matrixWorld),index:n,face:null,faceIndex:null,object:this})}}else{for(let n=Math.max(0,r.start),i=Math.min(s.count,r.start+r.count)-1;n<i;n+=f){c.fromBufferAttribute(s,n),h.fromBufferAttribute(s,n+1);if(_.distanceSqToSegment(c,h,d,u)>l)continue;d.applyMatrix4(this.matrixWorld);const i=t.ray.origin.distanceTo(d);i<t.near||i>t.far||e.push({distance:i,point:u.clone().applyMatrix4(this.matrixWorld),index:n,face:null,faceIndex:null,object:this})}}}else n.isGeometry&&console.error(\\\\\\\"THREE.Line.raycast() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.\\\\\\\")}updateMorphTargets(){const t=this.geometry;if(t.isBufferGeometry){const e=t.morphAttributes,n=Object.keys(e);if(n.length>0){const t=e[n[0]];if(void 0!==t){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let e=0,n=t.length;e<n;e++){const n=t[e].name||String(e);this.morphTargetInfluences.push(0),this.morphTargetDictionary[n]=e}}}}else{const e=t.morphTargets;void 0!==e&&e.length>0&&console.error(\\\\\\\"THREE.Line.updateMorphTargets() does not support THREE.Geometry. Use THREE.BufferGeometry instead.\\\\\\\")}}}f.prototype.isLine=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return r}));var i=n(12),s=n(6);class r extends i.a{constructor(t){super(),this.type=\\\\\\\"PointsMaterial\\\\\\\",this.color=new s.a(16777215),this.map=null,this.alphaMap=null,this.size=1,this.sizeAttenuation=!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}}r.prototype.isPointsMaterial=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return i}));class i{static decodeText(t){if(\\\\\\\"undefined\\\\\\\"!=typeof TextDecoder)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(t){return e}}static extractUrlBase(t){const e=t.lastIndexOf(\\\\\\\"/\\\\\\\");return-1===e?\\\\\\\"./\\\\\\\":t.substr(0,e+1)}}},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return r}));var i=n(5),s=n(10);class r extends s.a{constructor(){super(),this.type=\\\\\\\"Camera\\\\\\\",this.matrixWorldInverse=new i.a,this.projectionMatrix=new i.a,this.projectionMatrixInverse=new i.a}copy(t,e){return super.copy(t,e),this.matrixWorldInverse.copy(t.matrixWorldInverse),this.projectionMatrix.copy(t.projectionMatrix),this.projectionMatrixInverse.copy(t.projectionMatrixInverse),this}getWorldDirection(t){this.updateWorldMatrix(!0,!1);const e=this.matrixWorld.elements;return t.set(-e[8],-e[9],-e[10]).normalize()}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)}}r.prototype.isCamera=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return u}));var i=n(5),s=n(2),r=n(0),o=n(9),a=n(60);const l=new i.a,c=new r.a,h=new r.a;class u{constructor(t){this.camera=t,this.bias=0,this.normalBias=0,this.radius=1,this.blurSamples=8,this.mapSize=new s.a(512,512),this.map=null,this.mapPass=null,this.matrix=new i.a,this.autoUpdate=!0,this.needsUpdate=!1,this._frustum=new a.a,this._frameExtents=new s.a(1,1),this._viewportCount=1,this._viewports=[new o.a(0,0,1,1)]}getViewportCount(){return this._viewportCount}getFrustum(){return this._frustum}updateMatrices(t){const e=this.camera,n=this.matrix;c.setFromMatrixPosition(t.matrixWorld),e.position.copy(c),h.setFromMatrixPosition(t.target.matrixWorld),e.lookAt(h),e.updateMatrixWorld(),l.multiplyMatrices(e.projectionMatrix,e.matrixWorldInverse),this._frustum.setFromProjectionMatrix(l),n.set(.5,0,0,.5,0,.5,0,.5,0,0,.5,.5,0,0,0,1),n.multiply(e.projectionMatrix),n.multiply(e.matrixWorldInverse)}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(){const t={};return 0!==this.bias&&(t.bias=this.bias),0!==this.normalBias&&(t.normalBias=this.normalBias),1!==this.radius&&(t.radius=this.radius),512===this.mapSize.x&&512===this.mapSize.y||(t.mapSize=this.mapSize.toArray()),t.camera=this.camera.toJSON(!1).object,delete t.camera.matrix,t}}},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return r}));var i=n(47),s=n(3);class r extends i.a{constructor(t){super(t),this.uuid=s.h(),this.type=\\\\\\\"Shape\\\\\\\",this.holes=[]}getPointsHoles(t){const 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++){const n=t.holes[e];this.holes.push(n.clone())}return this}toJSON(){const t=super.toJSON();t.uuid=this.uuid,t.holes=[];for(let e=0,n=this.holes.length;e<n;e++){const n=this.holes[e];t.holes.push(n.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++){const n=t.holes[e];this.holes.push((new i.a).fromJSON(n))}return this}}},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return d}));var i=n(2),s=n(25),r=n(74),o=n(79);class a extends s.a{constructor(){super(),this.type=\\\\\\\"CurvePath\\\\\\\",this.curves=[],this.autoClose=!1}add(t){this.curves.push(t)}closePath(){const t=this.curves[0].getPoint(0),e=this.curves[this.curves.length-1].getPoint(1);t.equals(e)||this.curves.push(new r.a(e,t))}getPoint(t,e){const n=t*this.getLength(),i=this.getCurveLengths();let s=0;for(;s<i.length;){if(i[s]>=n){const t=i[s]-n,r=this.curves[s],o=r.getLength(),a=0===o?0:1-t/o;return r.getPointAt(a,e)}s++}return null}getLength(){const 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;const t=[];let 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){const 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){const e=[];let n;for(let i=0,s=this.curves;i<s.length;i++){const r=s[i],o=r&&r.isEllipseCurve?2*t:r&&(r.isLineCurve||r.isLineCurve3)?1:r&&r.isSplineCurve?t*r.points.length:t,a=r.getPoints(o);for(let t=0;t<a.length;t++){const i=a[t];n&&n.equals(i)||(e.push(i),n=i)}}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++){const n=t.curves[e];this.curves.push(n.clone())}return this.autoClose=t.autoClose,this}toJSON(){const t=super.toJSON();t.autoClose=this.autoClose,t.curves=[];for(let e=0,n=this.curves.length;e<n;e++){const n=this.curves[e];t.curves.push(n.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++){const n=t.curves[e];this.curves.push((new o[n.type]).fromJSON(n))}return this}}var l=n(57),c=n(77),h=n(75),u=n(76);class d extends a{constructor(t){super(),this.type=\\\\\\\"Path\\\\\\\",this.currentPoint=new i.a,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){const n=new r.a(this.currentPoint.clone(),new i.a(t,e));return this.curves.push(n),this.currentPoint.set(t,e),this}quadraticCurveTo(t,e,n,s){const r=new u.a(this.currentPoint.clone(),new i.a(t,e),new i.a(n,s));return this.curves.push(r),this.currentPoint.set(n,s),this}bezierCurveTo(t,e,n,s,r,o){const a=new h.a(this.currentPoint.clone(),new i.a(t,e),new i.a(n,s),new i.a(r,o));return this.curves.push(a),this.currentPoint.set(r,o),this}splineThru(t){const e=[this.currentPoint.clone()].concat(t),n=new c.a(e);return this.curves.push(n),this.currentPoint.copy(t[t.length-1]),this}arc(t,e,n,i,s,r){const o=this.currentPoint.x,a=this.currentPoint.y;return this.absarc(t+o,e+a,n,i,s,r),this}absarc(t,e,n,i,s,r){return this.absellipse(t,e,n,n,i,s,r),this}ellipse(t,e,n,i,s,r,o,a){const l=this.currentPoint.x,c=this.currentPoint.y;return this.absellipse(t+l,e+c,n,i,s,r,o,a),this}absellipse(t,e,n,i,s,r,o,a){const c=new l.a(t,e,n,i,s,r,o,a);if(this.curves.length>0){const t=c.getPoint(0);t.equals(this.currentPoint)||this.lineTo(t.x,t.y)}this.curves.push(c);const h=c.getPoint(1);return this.currentPoint.copy(h),this}copy(t){return super.copy(t),this.currentPoint.copy(t.currentPoint),this}toJSON(){const t=super.toJSON();return t.currentPoint=this.currentPoint.toArray(),t}fromJSON(t){return super.fromJSON(t),this.currentPoint.fromArray(t.currentPoint),this}}},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return a}));var i=n(6),s=n(47),r=n(46),o=n(53);class a{constructor(){this.type=\\\\\\\"ShapePath\\\\\\\",this.color=new i.a,this.subPaths=[],this.currentPath=null}moveTo(t,e){return this.currentPath=new s.a,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,r){return this.currentPath.bezierCurveTo(t,e,n,i,s,r),this}splineThru(t){return this.currentPath.splineThru(t),this}toShapes(t,e){function n(t){const e=[];for(let n=0,i=t.length;n<i;n++){const i=t[n],s=new r.a;s.curves=i.curves,e.push(s)}return e}function i(t,e){const n=e.length;let i=!1;for(let s=n-1,r=0;r<n;s=r++){let n=e[s],o=e[r],a=o.x-n.x,l=o.y-n.y;if(Math.abs(l)>Number.EPSILON){if(l<0&&(n=e[r],a=-a,o=e[s],l=-l),t.y<n.y||t.y>o.y)continue;if(t.y===n.y){if(t.x===n.x)return!0}else{const e=l*(t.x-n.x)-a*(t.y-n.y);if(0===e)return!0;if(e<0)continue;i=!i}}else{if(t.y!==n.y)continue;if(o.x<=t.x&&t.x<=n.x||n.x<=t.x&&t.x<=o.x)return!0}}return i}const s=o.a.isClockWise,a=this.subPaths;if(0===a.length)return[];if(!0===e)return n(a);let l,c,h;const u=[];if(1===a.length)return c=a[0],h=new r.a,h.curves=c.curves,u.push(h),u;let d=!s(a[0].getPoints());d=t?!d:d;const p=[],_=[];let m,f,g=[],v=0;_[v]=void 0,g[v]=[];for(let e=0,n=a.length;e<n;e++)c=a[e],m=c.getPoints(),l=s(m),l=t?!l:l,l?(!d&&_[v]&&v++,_[v]={s:new r.a,p:m},_[v].s.curves=c.curves,d&&v++,g[v]=[]):g[v].push({h:c,p:m[0]});if(!_[0])return n(a);if(_.length>1){let t=!1;const e=[];for(let t=0,e=_.length;t<e;t++)p[t]=[];for(let n=0,s=_.length;n<s;n++){const s=g[n];for(let r=0;r<s.length;r++){const o=s[r];let a=!0;for(let s=0;s<_.length;s++)i(o.p,_[s].p)&&(n!==s&&e.push({froms:n,tos:s,hole:r}),a?(a=!1,p[s].push(o)):t=!0);a&&p[n].push(o)}}e.length>0&&(t||(g=p))}for(let t=0,e=_.length;t<e;t++){h=_[t].s,u.push(h),f=g[t];for(let t=0,e=f.length;t<e;t++)h.holes.push(f[t].h)}return u}}},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return _}));var i=n(18),s=n(39),r=n(5),o=n(10),a=n(0),l=n(42),c=n(7);const h=new r.a,u=new s.a,d=new i.a,p=new a.a;class _ extends o.a{constructor(t=new c.a,e=new l.a){super(),this.type=\\\\\\\"Points\\\\\\\",this.geometry=t,this.material=e,this.updateMorphTargets()}copy(t){return super.copy(t),this.material=t.material,this.geometry=t.geometry,this}raycast(t,e){const n=this.geometry,i=this.matrixWorld,s=t.params.Points.threshold,r=n.drawRange;if(null===n.boundingSphere&&n.computeBoundingSphere(),d.copy(n.boundingSphere),d.applyMatrix4(i),d.radius+=s,!1===t.ray.intersectsSphere(d))return;h.copy(i).invert(),u.copy(t.ray).applyMatrix4(h);const o=s/((this.scale.x+this.scale.y+this.scale.z)/3),a=o*o;if(n.isBufferGeometry){const s=n.index,o=n.attributes.position;if(null!==s){for(let n=Math.max(0,r.start),l=Math.min(s.count,r.start+r.count);n<l;n++){const r=s.getX(n);p.fromBufferAttribute(o,r),m(p,r,a,i,t,e,this)}}else{for(let n=Math.max(0,r.start),s=Math.min(o.count,r.start+r.count);n<s;n++)p.fromBufferAttribute(o,n),m(p,n,a,i,t,e,this)}}else console.error(\\\\\\\"THREE.Points.raycast() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.\\\\\\\")}updateMorphTargets(){const t=this.geometry;if(t.isBufferGeometry){const e=t.morphAttributes,n=Object.keys(e);if(n.length>0){const t=e[n[0]];if(void 0!==t){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let e=0,n=t.length;e<n;e++){const n=t[e].name||String(e);this.morphTargetInfluences.push(0),this.morphTargetDictionary[n]=e}}}}else{const e=t.morphTargets;void 0!==e&&e.length>0&&console.error(\\\\\\\"THREE.Points.updateMorphTargets() does not support THREE.Geometry. Use THREE.BufferGeometry instead.\\\\\\\")}}}function m(t,e,n,i,s,r,o){const l=u.distanceSqToPoint(t);if(l<n){const n=new a.a;u.closestPointToPoint(t,n),n.applyMatrix4(i);const c=s.ray.origin.distanceTo(n);if(c<s.near||c>s.far)return;r.push({distance:c,distanceToRay:Math.sqrt(l),point:n,index:e,face:null,object:o})}}_.prototype.isPoints=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return s}));var i=n(26);class s extends i.a{}s.prototype.ValueTypeName=\\\\\\\"number\\\\\\\"},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return s}));var i=n(26);class s extends i.a{}s.prototype.ValueTypeName=\\\\\\\"vector\\\\\\\"},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return s}));var i=n(10);class s extends i.a{constructor(){super(),this.type=\\\\\\\"Bone\\\\\\\"}}s.prototype.isBone=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return C}));const i=function(t,e,n=2){const i=e&&e.length,a=i?e[0]*n:t.length;let l=s(t,0,a,n,!0);const c=[];if(!l||l.next===l.prev)return c;let h,p,_,f,g,v,y;if(i&&(l=function(t,e,n,i){const o=[];let a,l,c,h,p;for(a=0,l=e.length;a<l;a++)c=e[a]*i,h=a<l-1?e[a+1]*i:t.length,p=s(t,c,h,i,!1),p===p.next&&(p.steiner=!0),o.push(m(p));for(o.sort(u),a=0;a<o.length;a++)d(o[a],n),n=r(n,n.next);return n}(t,e,l,n)),t.length>80*n){h=_=t[0],p=f=t[1];for(let e=n;e<a;e+=n)g=t[e],v=t[e+1],g<h&&(h=g),v<p&&(p=v),g>_&&(_=g),v>f&&(f=v);y=Math.max(_-h,f-p),y=0!==y?1/y:0}return o(l,c,n,h,p,y),c};function s(t,e,n,i,s){let r,o;if(s===function(t,e,n,i){let s=0;for(let r=e,o=n-i;r<n;r+=i)s+=(t[o]-t[r])*(t[r+1]+t[o+1]),o=r;return s}(t,e,n,i)>0)for(r=e;r<n;r+=i)o=M(r,t[r],t[r+1],o);else for(r=n-i;r>=e;r-=i)o=M(r,t[r],t[r+1],o);return o&&y(o,o.next)&&(E(o),o=o.next),o}function r(t,e){if(!t)return t;e||(e=t);let n,i=t;do{if(n=!1,i.steiner||!y(i,i.next)&&0!==v(i.prev,i,i.next))i=i.next;else{if(E(i),i=e=i.prev,i===i.next)break;n=!0}}while(n||i!==e);return e}function o(t,e,n,i,s,u,d){if(!t)return;!d&&u&&function(t,e,n,i){let s=t;do{null===s.z&&(s.z=_(s.x,s.y,e,n,i)),s.prevZ=s.prev,s.nextZ=s.next,s=s.next}while(s!==t);s.prevZ.nextZ=null,s.prevZ=null,function(t){let e,n,i,s,r,o,a,l,c=1;do{for(n=t,t=null,r=null,o=0;n;){for(o++,i=n,a=0,e=0;e<c&&(a++,i=i.nextZ,i);e++);for(l=c;a>0||l>0&&i;)0!==a&&(0===l||!i||n.z<=i.z)?(s=n,n=n.nextZ,a--):(s=i,i=i.nextZ,l--),r?r.nextZ=s:t=s,s.prevZ=r,r=s;n=i}r.nextZ=null,c*=2}while(o>1)}(s)}(t,i,s,u);let p,m,f=t;for(;t.prev!==t.next;)if(p=t.prev,m=t.next,u?l(t,i,s,u):a(t))e.push(p.i/n),e.push(t.i/n),e.push(m.i/n),E(t),t=m.next,f=m.next;else if((t=m)===f){d?1===d?o(t=c(r(t),e,n),e,n,i,s,u,2):2===d&&h(t,e,n,i,s,u):o(r(t),e,n,i,s,u,1);break}}function a(t){const e=t.prev,n=t,i=t.next;if(v(e,n,i)>=0)return!1;let s=t.next.next;for(;s!==t.prev;){if(f(e.x,e.y,n.x,n.y,i.x,i.y,s.x,s.y)&&v(s.prev,s,s.next)>=0)return!1;s=s.next}return!0}function l(t,e,n,i){const s=t.prev,r=t,o=t.next;if(v(s,r,o)>=0)return!1;const a=s.x<r.x?s.x<o.x?s.x:o.x:r.x<o.x?r.x:o.x,l=s.y<r.y?s.y<o.y?s.y:o.y:r.y<o.y?r.y:o.y,c=s.x>r.x?s.x>o.x?s.x:o.x:r.x>o.x?r.x:o.x,h=s.y>r.y?s.y>o.y?s.y:o.y:r.y>o.y?r.y:o.y,u=_(a,l,e,n,i),d=_(c,h,e,n,i);let p=t.prevZ,m=t.nextZ;for(;p&&p.z>=u&&m&&m.z<=d;){if(p!==t.prev&&p!==t.next&&f(s.x,s.y,r.x,r.y,o.x,o.y,p.x,p.y)&&v(p.prev,p,p.next)>=0)return!1;if(p=p.prevZ,m!==t.prev&&m!==t.next&&f(s.x,s.y,r.x,r.y,o.x,o.y,m.x,m.y)&&v(m.prev,m,m.next)>=0)return!1;m=m.nextZ}for(;p&&p.z>=u;){if(p!==t.prev&&p!==t.next&&f(s.x,s.y,r.x,r.y,o.x,o.y,p.x,p.y)&&v(p.prev,p,p.next)>=0)return!1;p=p.prevZ}for(;m&&m.z<=d;){if(m!==t.prev&&m!==t.next&&f(s.x,s.y,r.x,r.y,o.x,o.y,m.x,m.y)&&v(m.prev,m,m.next)>=0)return!1;m=m.nextZ}return!0}function c(t,e,n){let i=t;do{const s=i.prev,r=i.next.next;!y(s,r)&&x(s,i,i.next,r)&&T(s,r)&&T(r,s)&&(e.push(s.i/n),e.push(i.i/n),e.push(r.i/n),E(i),E(i.next),i=t=r),i=i.next}while(i!==t);return r(i)}function h(t,e,n,i,s,a){let l=t;do{let t=l.next.next;for(;t!==l.prev;){if(l.i!==t.i&&g(l,t)){let c=A(l,t);return l=r(l,l.next),c=r(c,c.next),o(l,e,n,i,s,a),void o(c,e,n,i,s,a)}t=t.next}l=l.next}while(l!==t)}function u(t,e){return t.x-e.x}function d(t,e){if(e=function(t,e){let n=e;const i=t.x,s=t.y;let r,o=-1/0;do{if(s<=n.y&&s>=n.next.y&&n.next.y!==n.y){const t=n.x+(s-n.y)*(n.next.x-n.x)/(n.next.y-n.y);if(t<=i&&t>o){if(o=t,t===i){if(s===n.y)return n;if(s===n.next.y)return n.next}r=n.x<n.next.x?n:n.next}}n=n.next}while(n!==e);if(!r)return null;if(i===o)return r;const a=r,l=r.x,c=r.y;let h,u=1/0;n=r;do{i>=n.x&&n.x>=l&&i!==n.x&&f(s<c?i:o,s,l,c,s<c?o:i,s,n.x,n.y)&&(h=Math.abs(s-n.y)/(i-n.x),T(n,t)&&(h<u||h===u&&(n.x>r.x||n.x===r.x&&p(r,n)))&&(r=n,u=h)),n=n.next}while(n!==a);return r}(t,e)){const n=A(e,t);r(e,e.next),r(n,n.next)}}function p(t,e){return v(t.prev,t,e.prev)<0&&v(e.next,t,t.next)<0}function _(t,e,n,i,s){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=32767*(t-n)*s)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=32767*(e-i)*s)|e<<8))|e<<4))|e<<2))|e<<1))<<1}function m(t){let e=t,n=t;do{(e.x<n.x||e.x===n.x&&e.y<n.y)&&(n=e),e=e.next}while(e!==t);return n}function f(t,e,n,i,s,r,o,a){return(s-o)*(e-a)-(t-o)*(r-a)>=0&&(t-o)*(i-a)-(n-o)*(e-a)>=0&&(n-o)*(r-a)-(s-o)*(i-a)>=0}function g(t,e){return t.next.i!==e.i&&t.prev.i!==e.i&&!function(t,e){let n=t;do{if(n.i!==t.i&&n.next.i!==t.i&&n.i!==e.i&&n.next.i!==e.i&&x(n,n.next,t,e))return!0;n=n.next}while(n!==t);return!1}(t,e)&&(T(t,e)&&T(e,t)&&function(t,e){let n=t,i=!1;const s=(t.x+e.x)/2,r=(t.y+e.y)/2;do{n.y>r!=n.next.y>r&&n.next.y!==n.y&&s<(n.next.x-n.x)*(r-n.y)/(n.next.y-n.y)+n.x&&(i=!i),n=n.next}while(n!==t);return i}(t,e)&&(v(t.prev,t,e.prev)||v(t,e.prev,e))||y(t,e)&&v(t.prev,t,t.next)>0&&v(e.prev,e,e.next)>0)}function v(t,e,n){return(e.y-t.y)*(n.x-e.x)-(e.x-t.x)*(n.y-e.y)}function y(t,e){return t.x===e.x&&t.y===e.y}function x(t,e,n,i){const s=w(v(t,e,n)),r=w(v(t,e,i)),o=w(v(n,i,t)),a=w(v(n,i,e));return s!==r&&o!==a||(!(0!==s||!b(t,n,e))||(!(0!==r||!b(t,i,e))||(!(0!==o||!b(n,t,i))||!(0!==a||!b(n,e,i)))))}function b(t,e,n){return e.x<=Math.max(t.x,n.x)&&e.x>=Math.min(t.x,n.x)&&e.y<=Math.max(t.y,n.y)&&e.y>=Math.min(t.y,n.y)}function w(t){return t>0?1:t<0?-1:0}function T(t,e){return v(t.prev,t,t.next)<0?v(t,e,t.next)>=0&&v(t,t.prev,e)>=0:v(t,e,t.prev)<0||v(t,t.next,e)<0}function A(t,e){const n=new S(t.i,t.x,t.y),i=new S(e.i,e.x,e.y),s=t.next,r=e.prev;return t.next=e,e.prev=t,n.next=s,s.prev=n,i.next=n,n.prev=i,r.next=i,i.prev=r,i}function M(t,e,n,i){const s=new S(t,e,n);return i?(s.next=i.next,s.prev=i,i.next.prev=s,i.next=s):(s.prev=s,s.next=s),s}function E(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)}function S(t,e,n){this.i=t,this.x=e,this.y=n,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}class C{static area(t){const e=t.length;let 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.5*n}static isClockWise(t){return C.area(t)<0}static triangulateShape(t,e){const n=[],s=[],r=[];N(t),L(n,t);let o=t.length;e.forEach(N);for(let t=0;t<e.length;t++)s.push(o),o+=e[t].length,L(n,e[t]);const a=i(n,s);for(let t=0;t<a.length;t+=3)r.push(a.slice(t,t+3));return r}}function N(t){const e=t.length;e>2&&t[e-1].equals(t[0])&&t.pop()}function L(t,e){for(let n=0;n<e.length;n++)t.push(e[n].x),t.push(e[n].y)}},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return l}));var i=n(1),s=n(26),r=n(38),o=n(8);class a extends r.a{constructor(t,e,n,i){super(t,e,n,i)}interpolate_(t,e,n,i){const s=this.resultBuffer,r=this.sampleValues,a=this.valueSize,l=(n-e)/(i-e);let c=t*a;for(let t=c+a;c!==t;c+=4)o.a.slerpFlat(s,0,r,c-a,r,c,l);return s}}class l extends s.a{InterpolantFactoryMethodLinear(t){return new a(this.times,this.values,this.getValueSize(),t)}}l.prototype.ValueTypeName=\\\\\\\"quaternion\\\\\\\",l.prototype.DefaultInterpolation=i.P,l.prototype.InterpolantFactoryMethodSmooth=void 0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return a}));var i=n(1),s=n(12),r=n(2),o=n(6);class a extends s.a{constructor(t){super(),this.defines={STANDARD:\\\\\\\"\\\\\\\"},this.type=\\\\\\\"MeshStandardMaterial\\\\\\\",this.color=new o.a(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 o.a(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=i.Uc,this.normalScale=new r.a(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.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap=\\\\\\\"round\\\\\\\",this.wireframeLinejoin=\\\\\\\"round\\\\\\\",this.flatShading=!1,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.refractionRatio=t.refractionRatio,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.wireframeLinecap=t.wireframeLinecap,this.wireframeLinejoin=t.wireframeLinejoin,this.flatShading=t.flatShading,this}}a.prototype.isMeshStandardMaterial=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return a}));var i=n(1),s=n(12),r=n(2),o=n(6);class a extends s.a{constructor(t){super(),this.type=\\\\\\\"MeshPhongMaterial\\\\\\\",this.color=new o.a(16777215),this.specular=new o.a(1118481),this.shininess=30,this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new o.a(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=i.Uc,this.normalScale=new r.a(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.combine=i.nb,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap=\\\\\\\"round\\\\\\\",this.wireframeLinejoin=\\\\\\\"round\\\\\\\",this.flatShading=!1,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}}a.prototype.isMeshPhongMaterial=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return r}));var i=n(25),s=n(2);class r extends i.a{constructor(t=0,e=0,n=1,i=1,s=0,r=2*Math.PI,o=!1,a=0){super(),this.type=\\\\\\\"EllipseCurve\\\\\\\",this.aX=t,this.aY=e,this.xRadius=n,this.yRadius=i,this.aStartAngle=s,this.aEndAngle=r,this.aClockwise=o,this.aRotation=a}getPoint(t,e){const n=e||new s.a,i=2*Math.PI;let r=this.aEndAngle-this.aStartAngle;const o=Math.abs(r)<Number.EPSILON;for(;r<0;)r+=i;for(;r>i;)r-=i;r<Number.EPSILON&&(r=o?0:i),!0!==this.aClockwise||o||(r===i?r=-i:r-=i);const a=this.aStartAngle+t*r;let l=this.aX+this.xRadius*Math.cos(a),c=this.aY+this.yRadius*Math.sin(a);if(0!==this.aRotation){const t=Math.cos(this.aRotation),e=Math.sin(this.aRotation),n=l-this.aX,i=c-this.aY;l=n*t-i*e+this.aX,c=n*e+i*t+this.aY}return n.set(l,c)}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(){const 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}}r.prototype.isEllipseCurve=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return _}));var i=n(33),s=n(45),r=n(30),o=n(5),a=n(2),l=n(0),c=n(9);const h=new o.a,u=new l.a,d=new l.a;class p extends s.a{constructor(){super(new r.a(90,1,.5,500)),this._frameExtents=new a.a(4,2),this._viewportCount=6,this._viewports=[new c.a(2,1,1,1),new c.a(0,1,1,1),new c.a(3,1,1,1),new c.a(1,1,1,1),new c.a(3,0,1,1),new c.a(1,0,1,1)],this._cubeDirections=[new l.a(1,0,0),new l.a(-1,0,0),new l.a(0,0,1),new l.a(0,0,-1),new l.a(0,1,0),new l.a(0,-1,0)],this._cubeUps=[new l.a(0,1,0),new l.a(0,1,0),new l.a(0,1,0),new l.a(0,1,0),new l.a(0,0,1),new l.a(0,0,-1)]}updateMatrices(t,e=0){const n=this.camera,i=this.matrix,s=t.distance||n.far;s!==n.far&&(n.far=s,n.updateProjectionMatrix()),u.setFromMatrixPosition(t.matrixWorld),n.position.copy(u),d.copy(n.position),d.add(this._cubeDirections[e]),n.up.copy(this._cubeUps[e]),n.lookAt(d),n.updateMatrixWorld(),i.makeTranslation(-u.x,-u.y,-u.z),h.multiplyMatrices(n.projectionMatrix,n.matrixWorldInverse),this._frustum.setFromProjectionMatrix(h)}}p.prototype.isPointLightShadow=!0;class _ extends i.a{constructor(t,e,n=0,i=1){super(t,e),this.type=\\\\\\\"PointLight\\\\\\\",this.distance=n,this.decay=i,this.shadow=new p}get power(){return 4*this.intensity*Math.PI}set power(t){this.intensity=t/(4*Math.PI)}dispose(){this.shadow.dispose()}copy(t){return super.copy(t),this.distance=t.distance,this.decay=t.decay,this.shadow=t.shadow.clone(),this}}_.prototype.isPointLight=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return a}));var i=n(2),s=n(55),r=n(6),o=n(3);class a extends s.a{constructor(t){super(),this.defines={STANDARD:\\\\\\\"\\\\\\\",PHYSICAL:\\\\\\\"\\\\\\\"},this.type=\\\\\\\"MeshPhysicalMaterial\\\\\\\",this.clearcoatMap=null,this.clearcoatRoughness=0,this.clearcoatRoughnessMap=null,this.clearcoatNormalScale=new i.a(1,1),this.clearcoatNormalMap=null,this.ior=1.5,Object.defineProperty(this,\\\\\\\"reflectivity\\\\\\\",{get:function(){return o.d(2.5*(this.ior-1)/(this.ior+1),0,1)},set:function(t){this.ior=(1+.4*t)/(1-.4*t)}}),this.sheenTint=new r.a(0),this.sheenRoughness=1,this.transmissionMap=null,this.thickness=.01,this.thicknessMap=null,this.attenuationDistance=0,this.attenuationTint=new r.a(1,1,1),this.specularIntensity=1,this.specularIntensityMap=null,this.specularTint=new r.a(1,1,1),this.specularTintMap=null,this._sheen=0,this._clearcoat=0,this._transmission=0,this.setValues(t)}get sheen(){return this._sheen}set sheen(t){this._sheen>0!=t>0&&this.version++,this._sheen=t}get clearcoat(){return this._clearcoat}set clearcoat(t){this._clearcoat>0!=t>0&&this.version++,this._clearcoat=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.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.sheen=t.sheen,this.sheenTint.copy(t.sheenTint),this.sheenRoughness=t.sheenRoughness,this.transmission=t.transmission,this.transmissionMap=t.transmissionMap,this.thickness=t.thickness,this.thicknessMap=t.thicknessMap,this.attenuationDistance=t.attenuationDistance,this.attenuationTint.copy(t.attenuationTint),this.specularIntensity=t.specularIntensity,this.specularIntensityMap=t.specularIntensityMap,this.specularTint.copy(t.specularTint),this.specularTintMap=t.specularTintMap,this}}a.prototype.isMeshPhysicalMaterial=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return l}));var i=n(0),s=n(18),r=n(31);const o=new s.a,a=new i.a;class l{constructor(t=new r.a,e=new r.a,n=new r.a,i=new r.a,s=new r.a,o=new r.a){this.planes=[t,e,n,i,s,o]}set(t,e,n,i,s,r){const 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(r),this}copy(t){const e=this.planes;for(let n=0;n<6;n++)e[n].copy(t.planes[n]);return this}setFromProjectionMatrix(t){const e=this.planes,n=t.elements,i=n[0],s=n[1],r=n[2],o=n[3],a=n[4],l=n[5],c=n[6],h=n[7],u=n[8],d=n[9],p=n[10],_=n[11],m=n[12],f=n[13],g=n[14],v=n[15];return e[0].setComponents(o-i,h-a,_-u,v-m).normalize(),e[1].setComponents(o+i,h+a,_+u,v+m).normalize(),e[2].setComponents(o+s,h+l,_+d,v+f).normalize(),e[3].setComponents(o-s,h-l,_-d,v-f).normalize(),e[4].setComponents(o-r,h-c,_-p,v-g).normalize(),e[5].setComponents(o+r,h+c,_+p,v+g).normalize(),this}intersectsObject(t){const e=t.geometry;return null===e.boundingSphere&&e.computeBoundingSphere(),o.copy(e.boundingSphere).applyMatrix4(t.matrixWorld),this.intersectsSphere(o)}intersectsSprite(t){return o.center.set(0,0,0),o.radius=.7071067811865476,o.applyMatrix4(t.matrixWorld),this.intersectsSphere(o)}intersectsSphere(t){const e=this.planes,n=t.center,i=-t.radius;for(let t=0;t<6;t++){if(e[t].distanceToPoint(n)<i)return!1}return!0}intersectsBox(t){const e=this.planes;for(let n=0;n<6;n++){const i=e[n];if(a.x=i.normal.x>0?t.max.x:t.min.x,a.y=i.normal.y>0?t.max.y:t.min.y,a.z=i.normal.z>0?t.max.z:t.min.z,i.distanceToPoint(a)<0)return!1}return!0}containsPoint(t){const e=this.planes;for(let n=0;n<6;n++)if(e[n].distanceToPoint(t)<0)return!1;return!0}clone(){return(new this.constructor).copy(this)}}},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return r}));const i=new Float32Array(1),s=new Int32Array(i.buffer);class r{static toHalfFloat(t){t>65504&&(console.warn(\\\\\\\"THREE.DataUtils.toHalfFloat(): value exceeds 65504.\\\\\\\"),t=65504),i[0]=t;const e=s[0];let n=e>>16&32768,r=e>>12&2047;const o=e>>23&255;return o<103?n:o>142?(n|=31744,n|=(255==o?0:1)&&8388607&e,n):o<113?(r|=2048,n|=(r>>114-o)+(r>>113-o&1),n):(n|=o-112<<10|r>>1,n+=1&r,n)}}},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return o}));var i=n(12),s=n(1),r=n(6);class o extends i.a{constructor(t){super(),this.type=\\\\\\\"MeshLambertMaterial\\\\\\\",this.color=new r.a(16777215),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new r.a(0),this.emissiveIntensity=1,this.emissiveMap=null,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.combine=s.nb,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap=\\\\\\\"round\\\\\\\",this.wireframeLinejoin=\\\\\\\"round\\\\\\\",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.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}}o.prototype.isMeshLambertMaterial=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return o}));var i=n(17),s=n(13),r=n(20);class o extends s.a{constructor(t){super(t)}load(t,e,n,s){void 0!==this.path&&(t=this.path+t),t=this.manager.resolveURL(t);const o=this,a=i.a.get(t);if(void 0!==a)return o.manager.itemStart(t),setTimeout((function(){e&&e(a),o.manager.itemEnd(t)}),0),a;const l=Object(r.b)(\\\\\\\"img\\\\\\\");function c(){l.removeEventListener(\\\\\\\"load\\\\\\\",c,!1),l.removeEventListener(\\\\\\\"error\\\\\\\",h,!1),i.a.add(t,this),e&&e(this),o.manager.itemEnd(t)}function h(e){l.removeEventListener(\\\\\\\"load\\\\\\\",c,!1),l.removeEventListener(\\\\\\\"error\\\\\\\",h,!1),s&&s(e),o.manager.itemError(t),o.manager.itemEnd(t)}return l.addEventListener(\\\\\\\"load\\\\\\\",c,!1),l.addEventListener(\\\\\\\"error\\\\\\\",h,!1),\\\\\\\"data:\\\\\\\"!==t.substr(0,5)&&void 0!==this.crossOrigin&&(l.crossOrigin=this.crossOrigin),o.manager.itemStart(t),l.src=t,l}}},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return p}));var i=n(19),s=n(26),r=n(1);class o extends s.a{}o.prototype.ValueTypeName=\\\\\\\"bool\\\\\\\",o.prototype.ValueBufferType=Array,o.prototype.DefaultInterpolation=r.O,o.prototype.InterpolantFactoryMethodLinear=void 0,o.prototype.InterpolantFactoryMethodSmooth=void 0;class a extends s.a{}a.prototype.ValueTypeName=\\\\\\\"color\\\\\\\";var l=n(50),c=n(54);class h extends s.a{}h.prototype.ValueTypeName=\\\\\\\"string\\\\\\\",h.prototype.ValueBufferType=Array,h.prototype.DefaultInterpolation=r.O,h.prototype.InterpolantFactoryMethodLinear=void 0,h.prototype.InterpolantFactoryMethodSmooth=void 0;var u=n(51),d=n(3);class p{constructor(t,e=-1,n,i=r.wb){this.name=t,this.tracks=n,this.duration=e,this.blendMode=i,this.uuid=d.h(),this.duration<0&&this.resetDuration()}static parse(t){const e=[],n=t.tracks,i=1/(t.fps||1);for(let t=0,s=n.length;t!==s;++t)e.push(_(n[t]).scale(i));const s=new this(t.name,t.duration,e,t.blendMode);return s.uuid=t.uuid,s}static toJSON(t){const e=[],n=t.tracks,i={name:t.name,duration:t.duration,tracks:e,uuid:t.uuid,blendMode:t.blendMode};for(let t=0,i=n.length;t!==i;++t)e.push(s.a.toJSON(n[t]));return i}static CreateFromMorphTargetSequence(t,e,n,s){const r=e.length,o=[];for(let t=0;t<r;t++){let a=[],c=[];a.push((t+r-1)%r,t,(t+1)%r),c.push(0,1,0);const h=i.a.getKeyframeOrder(a);a=i.a.sortedArray(a,1,h),c=i.a.sortedArray(c,1,h),s||0!==a[0]||(a.push(r),c.push(c[0])),o.push(new l.a(\\\\\\\".morphTargetInfluences[\\\\\\\"+e[t].name+\\\\\\\"]\\\\\\\",a,c).scale(1/n))}return new this(t,-1,o)}static findByName(t,e){let n=t;if(!Array.isArray(t)){const e=t;n=e.geometry&&e.geometry.animations||e.animations}for(let t=0;t<n.length;t++)if(n[t].name===e)return n[t];return null}static CreateClipsFromMorphTargetSequences(t,e,n){const i={},s=/^([\\\\w-]*?)([\\\\d]+)$/;for(let e=0,n=t.length;e<n;e++){const n=t[e],r=n.name.match(s);if(r&&r.length>1){const t=r[1];let e=i[t];e||(i[t]=e=[]),e.push(n)}}const r=[];for(const t in i)r.push(this.CreateFromMorphTargetSequence(t,i[t],e,n));return r}static parseAnimation(t,e){if(!t)return console.error(\\\\\\\"THREE.AnimationClip: No animation in JSONLoader data.\\\\\\\"),null;const n=function(t,e,n,s,r){if(0!==n.length){const o=[],a=[];i.a.flattenJSON(n,o,a,s),0!==o.length&&r.push(new t(e,o,a))}},s=[],r=t.name||\\\\\\\"default\\\\\\\",o=t.fps||30,a=t.blendMode;let h=t.length||-1;const d=t.hierarchy||[];for(let t=0;t<d.length;t++){const i=d[t].keys;if(i&&0!==i.length)if(i[0].morphTargets){const t={};let e;for(e=0;e<i.length;e++)if(i[e].morphTargets)for(let n=0;n<i[e].morphTargets.length;n++)t[i[e].morphTargets[n]]=-1;for(const n in t){const t=[],r=[];for(let s=0;s!==i[e].morphTargets.length;++s){const s=i[e];t.push(s.time),r.push(s.morphTarget===n?1:0)}s.push(new l.a(\\\\\\\".morphTargetInfluence[\\\\\\\"+n+\\\\\\\"]\\\\\\\",t,r))}h=t.length*(o||1)}else{const r=\\\\\\\".bones[\\\\\\\"+e[t].name+\\\\\\\"]\\\\\\\";n(u.a,r+\\\\\\\".position\\\\\\\",i,\\\\\\\"pos\\\\\\\",s),n(c.a,r+\\\\\\\".quaternion\\\\\\\",i,\\\\\\\"rot\\\\\\\",s),n(u.a,r+\\\\\\\".scale\\\\\\\",i,\\\\\\\"scl\\\\\\\",s)}}if(0===s.length)return null;return new this(r,h,s,a)}resetDuration(){let t=0;for(let e=0,n=this.tracks.length;e!==n;++e){const n=this.tracks[e];t=Math.max(t,n.times[n.times.length-1])}return this.duration=t,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(){const 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 _(t){if(void 0===t.type)throw new Error(\\\\\\\"THREE.KeyframeTrack: track type undefined, can not parse\\\\\\\");const e=function(t){switch(t.toLowerCase()){case\\\\\\\"scalar\\\\\\\":case\\\\\\\"double\\\\\\\":case\\\\\\\"float\\\\\\\":case\\\\\\\"number\\\\\\\":case\\\\\\\"integer\\\\\\\":return l.a;case\\\\\\\"vector\\\\\\\":case\\\\\\\"vector2\\\\\\\":case\\\\\\\"vector3\\\\\\\":case\\\\\\\"vector4\\\\\\\":return u.a;case\\\\\\\"color\\\\\\\":return a;case\\\\\\\"quaternion\\\\\\\":return c.a;case\\\\\\\"bool\\\\\\\":case\\\\\\\"boolean\\\\\\\":return o;case\\\\\\\"string\\\\\\\":return h}throw new Error(\\\\\\\"THREE.KeyframeTrack: Unsupported typeName: \\\\\\\"+t)}(t.type);if(void 0===t.times){const e=[],n=[];i.a.flattenJSON(t.keys,e,n,\\\\\\\"value\\\\\\\"),t.times=e,t.values=n}return void 0!==e.parse?e.parse(t):new e(t.name,t.times,t.values,t.interpolation)}},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return o}));var i=n(0),s=n(4);const r=new i.a;class o{constructor(t,e,n,i=!1){this.name=\\\\\\\"\\\\\\\",this.data=t,this.itemSize=e,this.offset=n,this.normalized=!0===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++)r.x=this.getX(e),r.y=this.getY(e),r.z=this.getZ(e),r.applyMatrix4(t),this.setXYZ(e,r.x,r.y,r.z);return this}applyNormalMatrix(t){for(let e=0,n=this.count;e<n;e++)r.x=this.getX(e),r.y=this.getY(e),r.z=this.getZ(e),r.applyNormalMatrix(t),this.setXYZ(e,r.x,r.y,r.z);return this}transformDirection(t){for(let e=0,n=this.count;e<n;e++)r.x=this.getX(e),r.y=this.getY(e),r.z=this.getZ(e),r.transformDirection(t),this.setXYZ(e,r.x,r.y,r.z);return this}setX(t,e){return this.data.array[t*this.data.stride+this.offset]=e,this}setY(t,e){return this.data.array[t*this.data.stride+this.offset+1]=e,this}setZ(t,e){return this.data.array[t*this.data.stride+this.offset+2]=e,this}setW(t,e){return this.data.array[t*this.data.stride+this.offset+3]=e,this}getX(t){return this.data.array[t*this.data.stride+this.offset]}getY(t){return this.data.array[t*this.data.stride+this.offset+1]}getZ(t){return this.data.array[t*this.data.stride+this.offset+2]}getW(t){return this.data.array[t*this.data.stride+this.offset+3]}setXY(t,e,n){return t=t*this.data.stride+this.offset,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.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.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(void 0===t){console.log(\\\\\\\"THREE.InterleavedBufferAttribute.clone(): Cloning an interlaved buffer attribute will deinterleave buffer data.\\\\\\\");const t=[];for(let e=0;e<this.count;e++){const n=e*this.data.stride+this.offset;for(let e=0;e<this.itemSize;e++)t.push(this.data.array[n+e])}return new s.a(new this.array.constructor(t),this.itemSize,this.normalized)}return void 0===t.interleavedBuffers&&(t.interleavedBuffers={}),void 0===t.interleavedBuffers[this.data.uuid]&&(t.interleavedBuffers[this.data.uuid]=this.data.clone(t)),new o(t.interleavedBuffers[this.data.uuid],this.itemSize,this.offset,this.normalized)}toJSON(t){if(void 0===t){console.log(\\\\\\\"THREE.InterleavedBufferAttribute.toJSON(): Serializing an interlaved buffer attribute will deinterleave buffer data.\\\\\\\");const t=[];for(let e=0;e<this.count;e++){const n=e*this.data.stride+this.offset;for(let e=0;e<this.itemSize;e++)t.push(this.data.array[n+e])}return{itemSize:this.itemSize,type:this.array.constructor.name,array:t,normalized:this.normalized}}return void 0===t.interleavedBuffers&&(t.interleavedBuffers={}),void 0===t.interleavedBuffers[this.data.uuid]&&(t.interleavedBuffers[this.data.uuid]=this.data.toJSON(t)),{isInterleavedBufferAttribute:!0,itemSize:this.itemSize,data:this.data.uuid,offset:this.offset,normalized:this.normalized}}}o.prototype.isInterleavedBufferAttribute=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return p}));const i=\\\\\\\"\\\\\\\\[\\\\\\\\]\\\\\\\\.:\\\\\\\\/\\\\\\\",s=new RegExp(\\\\\\\"[\\\\\\\\[\\\\\\\\]\\\\\\\\.:\\\\\\\\/]\\\\\\\",\\\\\\\"g\\\\\\\"),r=\\\\\\\"[^\\\\\\\\[\\\\\\\\]\\\\\\\\.:\\\\\\\\/]\\\\\\\",o=\\\\\\\"[^\\\\\\\"+i.replace(\\\\\\\"\\\\\\\\.\\\\\\\",\\\\\\\"\\\\\\\")+\\\\\\\"]\\\\\\\",a=/((?:WC+[\\\\/:])*)/.source.replace(\\\\\\\"WC\\\\\\\",r),l=/(WCOD+)?/.source.replace(\\\\\\\"WCOD\\\\\\\",o),c=/(?:\\\\.(WC+)(?:\\\\[(.+)\\\\])?)?/.source.replace(\\\\\\\"WC\\\\\\\",r),h=/\\\\.(WC+)(?:\\\\[(.+)\\\\])?/.source.replace(\\\\\\\"WC\\\\\\\",r),u=new RegExp(\\\\\\\"^\\\\\\\"+a+l+c+h+\\\\\\\"$\\\\\\\"),d=[\\\\\\\"material\\\\\\\",\\\\\\\"materials\\\\\\\",\\\\\\\"bones\\\\\\\"];class p{constructor(t,e,n){this.path=e,this.parsedPath=n||p.parseTrackName(e),this.node=p.findNode(t,this.parsedPath.nodeName)||t,this.rootNode=t,this.getValue=this._getValue_unbound,this.setValue=this._setValue_unbound}static create(t,e,n){return t&&t.isAnimationObjectGroup?new p.Composite(t,e,n):new p(t,e,n)}static sanitizeNodeName(t){return t.replace(/\\\\s/g,\\\\\\\"_\\\\\\\").replace(s,\\\\\\\"\\\\\\\")}static parseTrackName(t){const e=u.exec(t);if(!e)throw new Error(\\\\\\\"PropertyBinding: Cannot parse trackName: \\\\\\\"+t);const n={nodeName:e[2],objectName:e[3],objectIndex:e[4],propertyName:e[5],propertyIndex:e[6]},i=n.nodeName&&n.nodeName.lastIndexOf(\\\\\\\".\\\\\\\");if(void 0!==i&&-1!==i){const t=n.nodeName.substring(i+1);-1!==d.indexOf(t)&&(n.nodeName=n.nodeName.substring(0,i),n.objectName=t)}if(null===n.propertyName||0===n.propertyName.length)throw new Error(\\\\\\\"PropertyBinding: can not parse propertyName from trackName: \\\\\\\"+t);return n}static findNode(t,e){if(!e||\\\\\\\"\\\\\\\"===e||\\\\\\\".\\\\\\\"===e||-1===e||e===t.name||e===t.uuid)return t;if(t.skeleton){const n=t.skeleton.getBoneByName(e);if(void 0!==n)return n}if(t.children){const n=function(t){for(let i=0;i<t.length;i++){const s=t[i];if(s.name===e||s.uuid===e)return s;const r=n(s.children);if(r)return r}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){const 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){const n=this.resolvedProperty;for(let i=0,s=n.length;i!==s;++i)n[i]=t[e++]}_setValue_array_setNeedsUpdate(t,e){const 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){const 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;const e=this.parsedPath,n=e.objectName,i=e.propertyName;let s=e.propertyIndex;if(t||(t=p.findNode(this.rootNode,e.nodeName)||this.rootNode,this.node=t),this.getValue=this._getValue_unavailable,this.setValue=this._setValue_unavailable,!t)return void console.error(\\\\\\\"THREE.PropertyBinding: Trying to update node for track: \\\\\\\"+this.path+\\\\\\\" but it wasn't found.\\\\\\\");if(n){let i=e.objectIndex;switch(n){case\\\\\\\"materials\\\\\\\":if(!t.material)return void console.error(\\\\\\\"THREE.PropertyBinding: Can not bind to material as node does not have a material.\\\\\\\",this);if(!t.material.materials)return void console.error(\\\\\\\"THREE.PropertyBinding: Can not bind to material.materials as node.material does not have a materials array.\\\\\\\",this);t=t.material.materials;break;case\\\\\\\"bones\\\\\\\":if(!t.skeleton)return void console.error(\\\\\\\"THREE.PropertyBinding: Can not bind to bones as node does not have a skeleton.\\\\\\\",this);t=t.skeleton.bones;for(let e=0;e<t.length;e++)if(t[e].name===i){i=e;break}break;default:if(void 0===t[n])return void console.error(\\\\\\\"THREE.PropertyBinding: Can not bind to objectName of node undefined.\\\\\\\",this);t=t[n]}if(void 0!==i){if(void 0===t[i])return void console.error(\\\\\\\"THREE.PropertyBinding: Trying to bind to objectIndex of objectName, but is undefined.\\\\\\\",this,t);t=t[i]}}const r=t[i];if(void 0===r){const n=e.nodeName;return void console.error(\\\\\\\"THREE.PropertyBinding: Trying to update property for track: \\\\\\\"+n+\\\\\\\".\\\\\\\"+i+\\\\\\\" but it wasn't found.\\\\\\\",t)}let o=this.Versioning.None;this.targetObject=t,void 0!==t.needsUpdate?o=this.Versioning.NeedsUpdate:void 0!==t.matrixWorldNeedsUpdate&&(o=this.Versioning.MatrixWorldNeedsUpdate);let a=this.BindingType.Direct;if(void 0!==s){if(\\\\\\\"morphTargetInfluences\\\\\\\"===i){if(!t.geometry)return void console.error(\\\\\\\"THREE.PropertyBinding: Can not bind to morphTargetInfluences because node does not have a geometry.\\\\\\\",this);if(!t.geometry.isBufferGeometry)return void console.error(\\\\\\\"THREE.PropertyBinding: Can not bind to morphTargetInfluences on THREE.Geometry. Use THREE.BufferGeometry instead.\\\\\\\",this);if(!t.geometry.morphAttributes)return void console.error(\\\\\\\"THREE.PropertyBinding: Can not bind to morphTargetInfluences because node does not have a geometry.morphAttributes.\\\\\\\",this);void 0!==t.morphTargetDictionary[s]&&(s=t.morphTargetDictionary[s])}a=this.BindingType.ArrayElement,this.resolvedProperty=r,this.propertyIndex=s}else void 0!==r.fromArray&&void 0!==r.toArray?(a=this.BindingType.HasFromToArray,this.resolvedProperty=r):Array.isArray(r)?(a=this.BindingType.EntireArray,this.resolvedProperty=r):this.propertyName=i;this.getValue=this.GetterByBindingType[a],this.setValue=this.SetterByBindingTypeAndVersioning[a][o]}unbind(){this.node=null,this.getValue=this._getValue_unbound,this.setValue=this._setValue_unbound}}p.Composite=class{constructor(t,e,n){const i=n||p.parseTrackName(e);this._targetGroup=t,this._bindings=t.subscribe_(e,i)}getValue(t,e){this.bind();const n=this._targetGroup.nCachedObjects_,i=this._bindings[n];void 0!==i&&i.getValue(t,e)}setValue(t,e){const n=this._bindings;for(let i=this._targetGroup.nCachedObjects_,s=n.length;i!==s;++i)n[i].setValue(t,e)}bind(){const t=this._bindings;for(let e=this._targetGroup.nCachedObjects_,n=t.length;e!==n;++e)t[e].bind()}unbind(){const t=this._bindings;for(let e=this._targetGroup.nCachedObjects_,n=t.length;e!==n;++e)t[e].unbind()}},p.prototype.BindingType={Direct:0,EntireArray:1,ArrayElement:2,HasFromToArray:3},p.prototype.Versioning={None:0,NeedsUpdate:1,MatrixWorldNeedsUpdate:2},p.prototype.GetterByBindingType=[p.prototype._getValue_direct,p.prototype._getValue_array,p.prototype._getValue_arrayElement,p.prototype._getValue_toArray],p.prototype.SetterByBindingTypeAndVersioning=[[p.prototype._setValue_direct,p.prototype._setValue_direct_setNeedsUpdate,p.prototype._setValue_direct_setMatrixWorldNeedsUpdate],[p.prototype._setValue_array,p.prototype._setValue_array_setNeedsUpdate,p.prototype._setValue_array_setMatrixWorldNeedsUpdate],[p.prototype._setValue_arrayElement,p.prototype._setValue_arrayElement_setNeedsUpdate,p.prototype._setValue_arrayElement_setMatrixWorldNeedsUpdate],[p.prototype._setValue_fromArray,p.prototype._setValue_fromArray_setNeedsUpdate,p.prototype._setValue_fromArray_setMatrixWorldNeedsUpdate]]},,function(t,e,n){var i=n(119),s=\\\\\\\"object\\\\\\\"==typeof self&&self&&self.Object===Object&&self,r=i||s||Function(\\\\\\\"return this\\\\\\\")();t.exports=r},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return d}));var i=n(14),s=n(5),r=n(0),o=n(9);const a=new r.a,l=new o.a,c=new o.a,h=new r.a,u=new s.a;class d extends i.a{constructor(t,e){super(t,e),this.type=\\\\\\\"SkinnedMesh\\\\\\\",this.bindMode=\\\\\\\"attached\\\\\\\",this.bindMatrix=new s.a,this.bindMatrixInverse=new s.a}copy(t){return super.copy(t),this.bindMode=t.bindMode,this.bindMatrix.copy(t.bindMatrix),this.bindMatrixInverse.copy(t.bindMatrixInverse),this.skeleton=t.skeleton,this}bind(t,e){this.skeleton=t,void 0===e&&(this.updateMatrixWorld(!0),this.skeleton.calculateInverses(),e=this.matrixWorld),this.bindMatrix.copy(e),this.bindMatrixInverse.copy(e).invert()}pose(){this.skeleton.pose()}normalizeSkinWeights(){const t=new o.a,e=this.geometry.attributes.skinWeight;for(let n=0,i=e.count;n<i;n++){t.x=e.getX(n),t.y=e.getY(n),t.z=e.getZ(n),t.w=e.getW(n);const i=1/t.manhattanLength();i!==1/0?t.multiplyScalar(i):t.set(1,0,0,0),e.setXYZW(n,t.x,t.y,t.z,t.w)}}updateMatrixWorld(t){super.updateMatrixWorld(t),\\\\\\\"attached\\\\\\\"===this.bindMode?this.bindMatrixInverse.copy(this.matrixWorld).invert():\\\\\\\"detached\\\\\\\"===this.bindMode?this.bindMatrixInverse.copy(this.bindMatrix).invert():console.warn(\\\\\\\"THREE.SkinnedMesh: Unrecognized bindMode: \\\\\\\"+this.bindMode)}boneTransform(t,e){const n=this.skeleton,i=this.geometry;l.fromBufferAttribute(i.attributes.skinIndex,t),c.fromBufferAttribute(i.attributes.skinWeight,t),a.copy(e).applyMatrix4(this.bindMatrix),e.set(0,0,0);for(let t=0;t<4;t++){const i=c.getComponent(t);if(0!==i){const s=l.getComponent(t);u.multiplyMatrices(n.bones[s].matrixWorld,n.boneInverses[s]),e.addScaledVector(h.copy(a).applyMatrix4(u),i)}}return e.applyMatrix4(this.bindMatrixInverse)}}d.prototype.isSkinnedMesh=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return r}));var i=n(1),s=n(38);class r extends s.a{constructor(t,e,n,s){super(t,e,n,s),this._weightPrev=-0,this._offsetPrev=-0,this._weightNext=-0,this._offsetNext=-0,this.DefaultSettings_={endingStart:i.id,endingEnd:i.id}}intervalChanged_(t,e,n){const s=this.parameterPositions;let r=t-2,o=t+1,a=s[r],l=s[o];if(void 0===a)switch(this.getSettings_().endingStart){case i.kd:r=t,a=2*e-n;break;case i.hd:r=s.length-2,a=e+s[r]-s[r+1];break;default:r=t,a=n}if(void 0===l)switch(this.getSettings_().endingEnd){case i.kd:o=t,l=2*n-e;break;case i.hd:o=1,l=n+s[1]-s[0];break;default:o=t-1,l=e}const c=.5*(n-e),h=this.valueSize;this._weightPrev=c/(e-a),this._weightNext=c/(l-n),this._offsetPrev=r*h,this._offsetNext=o*h}interpolate_(t,e,n,i){const s=this.resultBuffer,r=this.sampleValues,o=this.valueSize,a=t*o,l=a-o,c=this._offsetPrev,h=this._offsetNext,u=this._weightPrev,d=this._weightNext,p=(n-e)/(i-e),_=p*p,m=_*p,f=-u*m+2*u*_-u*p,g=(1+u)*m+(-1.5-2*u)*_+(-.5+u)*p+1,v=(-1-d)*m+(1.5+d)*_+.5*p,y=d*m-d*_;for(let t=0;t!==o;++t)s[t]=f*r[c+t]+g*r[l+t]+v*r[a+t]+y*r[h+t];return s}}},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return s}));var i=n(38);class s extends i.a{constructor(t,e,n,i){super(t,e,n,i)}interpolate_(t,e,n,i){const s=this.resultBuffer,r=this.sampleValues,o=this.valueSize,a=t*o,l=a-o,c=(n-e)/(i-e),h=1-c;for(let t=0;t!==o;++t)s[t]=r[l+t]*h+r[a+t]*c;return s}}},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return l}));var i=n(33),s=n(45),r=n(37);class o extends s.a{constructor(){super(new r.a(-5,5,5,-5,.5,500))}}o.prototype.isDirectionalLightShadow=!0;var a=n(10);class l extends i.a{constructor(t,e){super(t,e),this.type=\\\\\\\"DirectionalLight\\\\\\\",this.position.copy(a.a.DefaultUp),this.updateMatrix(),this.target=new a.a,this.shadow=new o}dispose(){this.shadow.dispose()}copy(t){return super.copy(t),this.target=t.target.clone(),this.shadow=t.shadow.clone(),this}}l.prototype.isDirectionalLight=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return c}));var i=n(33),s=n(45),r=n(3),o=n(30);class a extends s.a{constructor(){super(new o.a(50,1,.5,500)),this.focus=1}updateMatrices(t){const e=this.camera,n=2*r.b*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}}a.prototype.isSpotLightShadow=!0;var l=n(10);class c extends i.a{constructor(t,e,n=0,i=Math.PI/3,s=0,r=1){super(t,e),this.type=\\\\\\\"SpotLight\\\\\\\",this.position.copy(l.a.DefaultUp),this.updateMatrix(),this.target=new l.a,this.distance=n,this.angle=i,this.penumbra=s,this.decay=r,this.shadow=new a}get power(){return this.intensity*Math.PI}set power(t){this.intensity=t/Math.PI}dispose(){this.shadow.dispose()}copy(t){return super.copy(t),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}}c.prototype.isSpotLight=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return r}));var i=n(2),s=n(25);class r extends s.a{constructor(t=new i.a,e=new i.a){super(),this.type=\\\\\\\"LineCurve\\\\\\\",this.v1=t,this.v2=e}getPoint(t,e=new i.a){const n=e;return 1===t?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){const n=e||new i.a;return n.copy(this.v2).sub(this.v1).normalize(),n}copy(t){return super.copy(t),this.v1.copy(t.v1),this.v2.copy(t.v2),this}toJSON(){const 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}}r.prototype.isLineCurve=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return o}));var i=n(25),s=n(32),r=n(2);class o extends i.a{constructor(t=new r.a,e=new r.a,n=new r.a,i=new r.a){super(),this.type=\\\\\\\"CubicBezierCurve\\\\\\\",this.v0=t,this.v1=e,this.v2=n,this.v3=i}getPoint(t,e=new r.a){const n=e,i=this.v0,o=this.v1,a=this.v2,l=this.v3;return n.set(Object(s.b)(t,i.x,o.x,a.x,l.x),Object(s.b)(t,i.y,o.y,a.y,l.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(){const 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}}o.prototype.isCubicBezierCurve=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return o}));var i=n(25),s=n(32),r=n(2);class o extends i.a{constructor(t=new r.a,e=new r.a,n=new r.a){super(),this.type=\\\\\\\"QuadraticBezierCurve\\\\\\\",this.v0=t,this.v1=e,this.v2=n}getPoint(t,e=new r.a){const n=e,i=this.v0,o=this.v1,a=this.v2;return n.set(Object(s.c)(t,i.x,o.x,a.x),Object(s.c)(t,i.y,o.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(){const 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}}o.prototype.isQuadraticBezierCurve=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return o}));var i=n(25),s=n(32),r=n(2);class o extends i.a{constructor(t=[]){super(),this.type=\\\\\\\"SplineCurve\\\\\\\",this.points=t}getPoint(t,e=new r.a){const n=e,i=this.points,o=(i.length-1)*t,a=Math.floor(o),l=o-a,c=i[0===a?a:a-1],h=i[a],u=i[a>i.length-2?i.length-1:a+1],d=i[a>i.length-3?i.length-1:a+2];return n.set(Object(s.a)(l,c.x,h.x,u.x,d.x),Object(s.a)(l,c.y,h.y,u.y,d.y)),n}copy(t){super.copy(t),this.points=[];for(let e=0,n=t.points.length;e<n;e++){const n=t.points[e];this.points.push(n.clone())}return this}toJSON(){const t=super.toJSON();t.points=[];for(let e=0,n=this.points.length;e<n;e++){const n=this.points[e];t.points.push(n.toArray())}return t}fromJSON(t){super.fromJSON(t),this.points=[];for(let e=0,n=t.points.length;e<n;e++){const n=t.points[e];this.points.push((new r.a).fromArray(n))}return this}}o.prototype.isSplineCurve=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return r}));var i=n(3),s=n(1);class r{constructor(t,e){this.array=t,this.stride=e,this.count=void 0!==t?t.length/e:0,this.usage=s.Qc,this.updateRange={offset:0,count:-1},this.version=0,this.uuid=i.h()}onUploadCallback(){}set needsUpdate(t){!0===t&&this.version++}setUsage(t){return this.usage=t,this}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){void 0===t.arrayBuffers&&(t.arrayBuffers={}),void 0===this.array.buffer._uuid&&(this.array.buffer._uuid=i.h()),void 0===t.arrayBuffers[this.array.buffer._uuid]&&(t.arrayBuffers[this.array.buffer._uuid]=this.array.slice(0).buffer);const 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 void 0===t.arrayBuffers&&(t.arrayBuffers={}),void 0===this.array.buffer._uuid&&(this.array.buffer._uuid=i.h()),void 0===t.arrayBuffers[this.array.buffer._uuid]&&(t.arrayBuffers[this.array.buffer._uuid]=Array.prototype.slice.call(new Uint32Array(this.array.buffer))),{uuid:this.uuid,buffer:this.array.buffer._uuid,type:this.array.constructor.name,stride:this.stride}}}r.prototype.isInterleavedBuffer=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.r(e),n.d(e,\\\\\\\"ArcCurve\\\\\\\",(function(){return s})),n.d(e,\\\\\\\"CatmullRomCurve3\\\\\\\",(function(){return r.a})),n.d(e,\\\\\\\"CubicBezierCurve\\\\\\\",(function(){return o.a})),n.d(e,\\\\\\\"CubicBezierCurve3\\\\\\\",(function(){return h})),n.d(e,\\\\\\\"EllipseCurve\\\\\\\",(function(){return i.a})),n.d(e,\\\\\\\"LineCurve\\\\\\\",(function(){return u.a})),n.d(e,\\\\\\\"LineCurve3\\\\\\\",(function(){return d})),n.d(e,\\\\\\\"QuadraticBezierCurve\\\\\\\",(function(){return p.a})),n.d(e,\\\\\\\"QuadraticBezierCurve3\\\\\\\",(function(){return _.a})),n.d(e,\\\\\\\"SplineCurve\\\\\\\",(function(){return m.a}));var i=n(57);class s extends i.a{constructor(t,e,n,i,s,r){super(t,e,n,n,i,s,r),this.type=\\\\\\\"ArcCurve\\\\\\\"}}s.prototype.isArcCurve=!0;var r=n(85),o=n(75),a=n(25),l=n(32),c=n(0);class h extends a.a{constructor(t=new c.a,e=new c.a,n=new c.a,i=new c.a){super(),this.type=\\\\\\\"CubicBezierCurve3\\\\\\\",this.v0=t,this.v1=e,this.v2=n,this.v3=i}getPoint(t,e=new c.a){const n=e,i=this.v0,s=this.v1,r=this.v2,o=this.v3;return n.set(Object(l.b)(t,i.x,s.x,r.x,o.x),Object(l.b)(t,i.y,s.y,r.y,o.y),Object(l.b)(t,i.z,s.z,r.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(){const 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}}h.prototype.isCubicBezierCurve3=!0;var u=n(74);class d extends a.a{constructor(t=new c.a,e=new c.a){super(),this.type=\\\\\\\"LineCurve3\\\\\\\",this.isLineCurve3=!0,this.v1=t,this.v2=e}getPoint(t,e=new c.a){const n=e;return 1===t?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)}copy(t){return super.copy(t),this.v1.copy(t.v1),this.v2.copy(t.v2),this}toJSON(){const 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}}var p=n(76),_=n(90),m=n(77)},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return o}));var i=n(63),s=n(23),r=n(13);class o extends r.a{constructor(t){super(t)}load(t,e,n,r){const o=new s.a,a=new i.a(this.manager);return a.setCrossOrigin(this.crossOrigin),a.setPath(this.path),a.load(t,(function(t){o.image=t,o.needsUpdate=!0,void 0!==e&&e(o)}),n,r),o}}},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return h}));var i=n(1),s=n(52),r=n(5),o=n(34),a=n(3);const l=new r.a,c=new r.a;class h{constructor(t=[],e=[]){this.uuid=a.h(),this.bones=t.slice(0),this.boneInverses=e,this.boneMatrices=null,this.boneTexture=null,this.boneTextureSize=0,this.frame=-1,this.init()}init(){const t=this.bones,e=this.boneInverses;if(this.boneMatrices=new Float32Array(16*t.length),0===e.length)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 t=0,e=this.bones.length;t<e;t++)this.boneInverses.push(new r.a)}}calculateInverses(){this.boneInverses.length=0;for(let t=0,e=this.bones.length;t<e;t++){const e=new r.a;this.bones[t]&&e.copy(this.bones[t].matrixWorld).invert(),this.boneInverses.push(e)}}pose(){for(let t=0,e=this.bones.length;t<e;t++){const e=this.bones[t];e&&e.matrixWorld.copy(this.boneInverses[t]).invert()}for(let t=0,e=this.bones.length;t<e;t++){const e=this.bones[t];e&&(e.parent&&e.parent.isBone?(e.matrix.copy(e.parent.matrixWorld).invert(),e.matrix.multiply(e.matrixWorld)):e.matrix.copy(e.matrixWorld),e.matrix.decompose(e.position,e.quaternion,e.scale))}}update(){const t=this.bones,e=this.boneInverses,n=this.boneMatrices,i=this.boneTexture;for(let i=0,s=t.length;i<s;i++){const s=t[i]?t[i].matrixWorld:c;l.multiplyMatrices(s,e[i]),l.toArray(n,16*i)}null!==i&&(i.needsUpdate=!0)}clone(){return new h(this.bones,this.boneInverses)}computeBoneTexture(){let t=Math.sqrt(4*this.bones.length);t=a.c(t),t=Math.max(t,4);const e=new Float32Array(t*t*4);e.set(this.boneMatrices);const n=new o.a(e,t,t,i.Ib,i.G);return this.boneMatrices=e,this.boneTexture=n,this.boneTextureSize=t,this}getBoneByName(t){for(let e=0,n=this.bones.length;e<n;e++){const n=this.bones[e];if(n.name===t)return n}}dispose(){null!==this.boneTexture&&(this.boneTexture.dispose(),this.boneTexture=null)}fromJSON(t,e){this.uuid=t.uuid;for(let n=0,i=t.bones.length;n<i;n++){const i=t.bones[n];let o=e[i];void 0===o&&(console.warn(\\\\\\\"THREE.Skeleton: No bone found with UUID:\\\\\\\",i),o=new s.a),this.bones.push(o),this.boneInverses.push((new r.a).fromArray(t.boneInverses[n]))}return this.init(),this}toJSON(){const t={metadata:{version:4.5,type:\\\\\\\"Skeleton\\\\\\\",generator:\\\\\\\"Skeleton.toJSON\\\\\\\"},bones:[],boneInverses:[]};t.uuid=this.uuid;const e=this.bones,n=this.boneInverses;for(let i=0,s=e.length;i<s;i++){const s=e[i];t.bones.push(s.uuid);const r=n[i];t.boneInverses.push(r.toArray())}return t}}},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return f}));var i=n(2);const s=new i.a;class r{constructor(t=new i.a(1/0,1/0),e=new i.a(-1/0,-1/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){const n=s.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 s.copy(t).clamp(this.min,this.max).sub(t).length()}intersect(t){return this.min.max(t.min),this.max.min(t.max),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)}}r.prototype.isBox2=!0;var o=n(7),a=n(22),l=n(4),c=n(13),h=n(11),u=n(47),d=n(46),p=n(48),_=n(53),m=n(0);class f extends c.a{constructor(t){super(t),this.defaultDPI=90,this.defaultUnit=\\\\\\\"px\\\\\\\"}load(t,e,n,i){const s=this,r=new a.a(s.manager);r.setPath(s.path),r.setRequestHeader(s.requestHeader),r.setWithCredentials(s.withCredentials),r.load(t,(function(n){try{e(s.parse(n))}catch(e){i?i(e):console.error(e),s.manager.itemError(t)}}),n,i)}parse(t){const e=this;function n(t,e,n,i,r,o,a,l){if(0==e||0==n)return void t.lineTo(l.x,l.y);i=i*Math.PI/180,e=Math.abs(e),n=Math.abs(n);const c=(a.x-l.x)/2,h=(a.y-l.y)/2,u=Math.cos(i)*c+Math.sin(i)*h,d=-Math.sin(i)*c+Math.cos(i)*h;let p=e*e,_=n*n;const m=u*u,f=d*d,g=m/p+f/_;if(g>1){const t=Math.sqrt(g);p=(e*=t)*e,_=(n*=t)*n}const v=p*f+_*m,y=(p*_-v)/v;let x=Math.sqrt(Math.max(0,y));r===o&&(x=-x);const b=x*e*d/n,w=-x*n*u/e,T=Math.cos(i)*b-Math.sin(i)*w+(a.x+l.x)/2,A=Math.sin(i)*b+Math.cos(i)*w+(a.y+l.y)/2,M=s(1,0,(u-b)/e,(d-w)/n),E=s((u-b)/e,(d-w)/n,(-u-b)/e,(-d-w)/n)%(2*Math.PI);t.currentPath.absellipse(T,A,e,n,M,M+E,0===o,i)}function s(t,e,n,i){const s=t*n+e*i,r=Math.sqrt(t*t+e*e)*Math.sqrt(n*n+i*i);let o=Math.acos(Math.max(-1,Math.min(1,s/r)));return t*i-e*n<0&&(o=-o),o}function r(t,e){e=Object.assign({},e);let n={};if(t.hasAttribute(\\\\\\\"class\\\\\\\")){const e=t.getAttribute(\\\\\\\"class\\\\\\\").split(/\\\\s/).filter(Boolean).map((t=>t.trim()));for(let t=0;t<e.length;t++)n=Object.assign(n,v[\\\\\\\".\\\\\\\"+e[t]])}function i(i,s,r){void 0===r&&(r=function(t){return t.startsWith(\\\\\\\"url\\\\\\\")&&console.warn(\\\\\\\"SVGLoader: url access in attributes is not implemented.\\\\\\\"),t}),t.hasAttribute(i)&&(e[s]=r(t.getAttribute(i))),n[i]&&(e[s]=r(n[i])),t.style&&\\\\\\\"\\\\\\\"!==t.style[i]&&(e[s]=r(t.style[i]))}function s(t){return Math.max(0,Math.min(1,d(t)))}function r(t){return Math.max(0,d(t))}return t.hasAttribute(\\\\\\\"id\\\\\\\")&&(n=Object.assign(n,v[\\\\\\\"#\\\\\\\"+t.getAttribute(\\\\\\\"id\\\\\\\")])),i(\\\\\\\"fill\\\\\\\",\\\\\\\"fill\\\\\\\"),i(\\\\\\\"fill-opacity\\\\\\\",\\\\\\\"fillOpacity\\\\\\\",s),i(\\\\\\\"fill-rule\\\\\\\",\\\\\\\"fillRule\\\\\\\"),i(\\\\\\\"opacity\\\\\\\",\\\\\\\"opacity\\\\\\\",s),i(\\\\\\\"stroke\\\\\\\",\\\\\\\"stroke\\\\\\\"),i(\\\\\\\"stroke-opacity\\\\\\\",\\\\\\\"strokeOpacity\\\\\\\",s),i(\\\\\\\"stroke-width\\\\\\\",\\\\\\\"strokeWidth\\\\\\\",r),i(\\\\\\\"stroke-linejoin\\\\\\\",\\\\\\\"strokeLineJoin\\\\\\\"),i(\\\\\\\"stroke-linecap\\\\\\\",\\\\\\\"strokeLineCap\\\\\\\"),i(\\\\\\\"stroke-miterlimit\\\\\\\",\\\\\\\"strokeMiterLimit\\\\\\\",r),i(\\\\\\\"visibility\\\\\\\",\\\\\\\"visibility\\\\\\\"),e}function o(t,e){return t-(e-t)}function a(t,e,n){if(\\\\\\\"string\\\\\\\"!=typeof t)throw new TypeError(\\\\\\\"Invalid input: \\\\\\\"+typeof t);const i={SEPARATOR:/[ \\\\t\\\\r\\\\n\\\\,.\\\\-+]/,WHITESPACE:/[ \\\\t\\\\r\\\\n]/,DIGIT:/[\\\\d]/,SIGN:/[-+]/,POINT:/\\\\./,COMMA:/,/,EXP:/e/i,FLAGS:/[01]/};let s=0,r=!0,o=\\\\\\\"\\\\\\\",a=\\\\\\\"\\\\\\\";const l=[];function c(t,e,n){const i=new SyntaxError('Unexpected character \\\\\\\"'+t+'\\\\\\\" at index '+e+\\\\\\\".\\\\\\\");throw i.partial=n,i}function h(){\\\\\\\"\\\\\\\"!==o&&(\\\\\\\"\\\\\\\"===a?l.push(Number(o)):l.push(Number(o)*Math.pow(10,Number(a)))),o=\\\\\\\"\\\\\\\",a=\\\\\\\"\\\\\\\"}let u;const d=t.length;for(let p=0;p<d;p++)if(u=t[p],Array.isArray(e)&&e.includes(l.length%n)&&i.FLAGS.test(u))s=1,o=u,h();else{if(0===s){if(i.WHITESPACE.test(u))continue;if(i.DIGIT.test(u)||i.SIGN.test(u)){s=1,o=u;continue}if(i.POINT.test(u)){s=2,o=u;continue}i.COMMA.test(u)&&(r&&c(u,p,l),r=!0)}if(1===s){if(i.DIGIT.test(u)){o+=u;continue}if(i.POINT.test(u)){o+=u,s=2;continue}if(i.EXP.test(u)){s=3;continue}i.SIGN.test(u)&&1===o.length&&i.SIGN.test(o[0])&&c(u,p,l)}if(2===s){if(i.DIGIT.test(u)){o+=u;continue}if(i.EXP.test(u)){s=3;continue}i.POINT.test(u)&&\\\\\\\".\\\\\\\"===o[o.length-1]&&c(u,p,l)}if(3===s){if(i.DIGIT.test(u)){a+=u;continue}if(i.SIGN.test(u)){if(\\\\\\\"\\\\\\\"===a){a+=u;continue}1===a.length&&i.SIGN.test(a)&&c(u,p,l)}}i.WHITESPACE.test(u)?(h(),s=0,r=!1):i.COMMA.test(u)?(h(),s=0,r=!0):i.SIGN.test(u)?(h(),s=1,o=u):i.POINT.test(u)?(h(),s=2,o=u):c(u,p,l)}return h(),l}const l=[\\\\\\\"mm\\\\\\\",\\\\\\\"cm\\\\\\\",\\\\\\\"in\\\\\\\",\\\\\\\"pt\\\\\\\",\\\\\\\"pc\\\\\\\",\\\\\\\"px\\\\\\\"],c={mm:{mm:1,cm:.1,in:1/25.4,pt:72/25.4,pc:6/25.4,px:-1},cm:{mm:10,cm:1,in:1/2.54,pt:72/2.54,pc:6/2.54,px:-1},in:{mm:25.4,cm:2.54,in:1,pt:72,pc:6,px:-1},pt:{mm:25.4/72,cm:2.54/72,in:1/72,pt:1,pc:6/72,px:-1},pc:{mm:25.4/6,cm:2.54/6,in:1/6,pt:12,pc:1,px:-1},px:{px:1}};function d(t){let n,i=\\\\\\\"px\\\\\\\";if(\\\\\\\"string\\\\\\\"==typeof t||t instanceof String)for(let e=0,n=l.length;e<n;e++){const n=l[e];if(t.endsWith(n)){i=n,t=t.substring(0,t.length-n.length);break}}return\\\\\\\"px\\\\\\\"===i&&\\\\\\\"px\\\\\\\"!==e.defaultUnit?n=c.in[e.defaultUnit]/e.defaultDPI:(n=c[i][e.defaultUnit],n<0&&(n=c[i].in*e.defaultDPI)),n*parseFloat(t)}function _(t){const e=t.elements;return Math.sqrt(e[0]*e[0]+e[1]*e[1])}function f(t){const e=t.elements;return Math.sqrt(e[3]*e[3]+e[4]*e[4])}const g=[],v={},y=[],x=new h.a,b=new h.a,w=new h.a,T=new h.a,A=new i.a,M=new m.a,E=new h.a,S=(new DOMParser).parseFromString(t,\\\\\\\"image/svg+xml\\\\\\\");!function t(e,s){if(1!==e.nodeType)return;const l=function(t){if(!(t.hasAttribute(\\\\\\\"transform\\\\\\\")||\\\\\\\"use\\\\\\\"===t.nodeName&&(t.hasAttribute(\\\\\\\"x\\\\\\\")||t.hasAttribute(\\\\\\\"y\\\\\\\"))))return null;const e=function(t){const e=new h.a,n=x;if(\\\\\\\"use\\\\\\\"===t.nodeName&&(t.hasAttribute(\\\\\\\"x\\\\\\\")||t.hasAttribute(\\\\\\\"y\\\\\\\"))){const n=d(t.getAttribute(\\\\\\\"x\\\\\\\")),i=d(t.getAttribute(\\\\\\\"y\\\\\\\"));e.translate(n,i)}if(t.hasAttribute(\\\\\\\"transform\\\\\\\")){const i=t.getAttribute(\\\\\\\"transform\\\\\\\").split(\\\\\\\")\\\\\\\");for(let t=i.length-1;t>=0;t--){const s=i[t].trim();if(\\\\\\\"\\\\\\\"===s)continue;const r=s.indexOf(\\\\\\\"(\\\\\\\"),o=s.length;if(r>0&&r<o){const t=s.substr(0,r),e=a(s.substr(r+1,o-r-1));switch(n.identity(),t){case\\\\\\\"translate\\\\\\\":if(e.length>=1){const t=e[0];let i=t;e.length>=2&&(i=e[1]),n.translate(t,i)}break;case\\\\\\\"rotate\\\\\\\":if(e.length>=1){let t=0,i=0,s=0;t=-e[0]*Math.PI/180,e.length>=3&&(i=e[1],s=e[2]),b.identity().translate(-i,-s),w.identity().rotate(t),T.multiplyMatrices(w,b),b.identity().translate(i,s),n.multiplyMatrices(b,T)}break;case\\\\\\\"scale\\\\\\\":if(e.length>=1){const t=e[0];let i=t;e.length>=2&&(i=e[1]),n.scale(t,i)}break;case\\\\\\\"skewX\\\\\\\":1===e.length&&n.set(1,Math.tan(e[0]*Math.PI/180),0,0,1,0,0,0,1);break;case\\\\\\\"skewY\\\\\\\":1===e.length&&n.set(1,0,0,Math.tan(e[0]*Math.PI/180),1,0,0,0,1);break;case\\\\\\\"matrix\\\\\\\":6===e.length&&n.set(e[0],e[2],e[4],e[1],e[3],e[5],0,0,1)}}e.premultiply(n)}}return e}(t);y.length>0&&e.premultiply(y[y.length-1]);return E.copy(e),y.push(e),e}(e);let c=!0,m=null;switch(e.nodeName){case\\\\\\\"svg\\\\\\\":break;case\\\\\\\"style\\\\\\\":!function(t){if(!t.sheet||!t.sheet.cssRules||!t.sheet.cssRules.length)return;for(let e=0;e<t.sheet.cssRules.length;e++){const n=t.sheet.cssRules[e];if(1!==n.type)continue;const i=n.selectorText.split(/,/gm).filter(Boolean).map((t=>t.trim()));for(let t=0;t<i.length;t++)v[i[t]]=Object.assign(v[i[t]]||{},n.style)}}(e);break;case\\\\\\\"g\\\\\\\":s=r(e,s);break;case\\\\\\\"path\\\\\\\":s=r(e,s),e.hasAttribute(\\\\\\\"d\\\\\\\")&&(m=function(t){const e=new p.a,s=new i.a,r=new i.a,l=new i.a;let c=!0,h=!1;const u=t.getAttribute(\\\\\\\"d\\\\\\\").match(/[a-df-z][^a-df-z]*/gi);for(let t=0,i=u.length;t<i;t++){const i=u[t],d=i.charAt(0),p=i.substr(1).trim();let _;switch(!0===c&&(h=!0,c=!1),d){case\\\\\\\"M\\\\\\\":_=a(p);for(let t=0,n=_.length;t<n;t+=2)s.x=_[t+0],s.y=_[t+1],r.x=s.x,r.y=s.y,0===t?e.moveTo(s.x,s.y):e.lineTo(s.x,s.y),0===t&&!0===h&&l.copy(s);break;case\\\\\\\"H\\\\\\\":_=a(p);for(let t=0,n=_.length;t<n;t++)s.x=_[t],r.x=s.x,r.y=s.y,e.lineTo(s.x,s.y),0===t&&!0===h&&l.copy(s);break;case\\\\\\\"V\\\\\\\":_=a(p);for(let t=0,n=_.length;t<n;t++)s.y=_[t],r.x=s.x,r.y=s.y,e.lineTo(s.x,s.y),0===t&&!0===h&&l.copy(s);break;case\\\\\\\"L\\\\\\\":_=a(p);for(let t=0,n=_.length;t<n;t+=2)s.x=_[t+0],s.y=_[t+1],r.x=s.x,r.y=s.y,e.lineTo(s.x,s.y),0===t&&!0===h&&l.copy(s);break;case\\\\\\\"C\\\\\\\":_=a(p);for(let t=0,n=_.length;t<n;t+=6)e.bezierCurveTo(_[t+0],_[t+1],_[t+2],_[t+3],_[t+4],_[t+5]),r.x=_[t+2],r.y=_[t+3],s.x=_[t+4],s.y=_[t+5],0===t&&!0===h&&l.copy(s);break;case\\\\\\\"S\\\\\\\":_=a(p);for(let t=0,n=_.length;t<n;t+=4)e.bezierCurveTo(o(s.x,r.x),o(s.y,r.y),_[t+0],_[t+1],_[t+2],_[t+3]),r.x=_[t+0],r.y=_[t+1],s.x=_[t+2],s.y=_[t+3],0===t&&!0===h&&l.copy(s);break;case\\\\\\\"Q\\\\\\\":_=a(p);for(let t=0,n=_.length;t<n;t+=4)e.quadraticCurveTo(_[t+0],_[t+1],_[t+2],_[t+3]),r.x=_[t+0],r.y=_[t+1],s.x=_[t+2],s.y=_[t+3],0===t&&!0===h&&l.copy(s);break;case\\\\\\\"T\\\\\\\":_=a(p);for(let t=0,n=_.length;t<n;t+=2){const n=o(s.x,r.x),i=o(s.y,r.y);e.quadraticCurveTo(n,i,_[t+0],_[t+1]),r.x=n,r.y=i,s.x=_[t+0],s.y=_[t+1],0===t&&!0===h&&l.copy(s)}break;case\\\\\\\"A\\\\\\\":_=a(p,[3,4],7);for(let t=0,i=_.length;t<i;t+=7){if(_[t+5]==s.x&&_[t+6]==s.y)continue;const i=s.clone();s.x=_[t+5],s.y=_[t+6],r.x=s.x,r.y=s.y,n(e,_[t],_[t+1],_[t+2],_[t+3],_[t+4],i,s),0===t&&!0===h&&l.copy(s)}break;case\\\\\\\"m\\\\\\\":_=a(p);for(let t=0,n=_.length;t<n;t+=2)s.x+=_[t+0],s.y+=_[t+1],r.x=s.x,r.y=s.y,0===t?e.moveTo(s.x,s.y):e.lineTo(s.x,s.y),0===t&&!0===h&&l.copy(s);break;case\\\\\\\"h\\\\\\\":_=a(p);for(let t=0,n=_.length;t<n;t++)s.x+=_[t],r.x=s.x,r.y=s.y,e.lineTo(s.x,s.y),0===t&&!0===h&&l.copy(s);break;case\\\\\\\"v\\\\\\\":_=a(p);for(let t=0,n=_.length;t<n;t++)s.y+=_[t],r.x=s.x,r.y=s.y,e.lineTo(s.x,s.y),0===t&&!0===h&&l.copy(s);break;case\\\\\\\"l\\\\\\\":_=a(p);for(let t=0,n=_.length;t<n;t+=2)s.x+=_[t+0],s.y+=_[t+1],r.x=s.x,r.y=s.y,e.lineTo(s.x,s.y),0===t&&!0===h&&l.copy(s);break;case\\\\\\\"c\\\\\\\":_=a(p);for(let t=0,n=_.length;t<n;t+=6)e.bezierCurveTo(s.x+_[t+0],s.y+_[t+1],s.x+_[t+2],s.y+_[t+3],s.x+_[t+4],s.y+_[t+5]),r.x=s.x+_[t+2],r.y=s.y+_[t+3],s.x+=_[t+4],s.y+=_[t+5],0===t&&!0===h&&l.copy(s);break;case\\\\\\\"s\\\\\\\":_=a(p);for(let t=0,n=_.length;t<n;t+=4)e.bezierCurveTo(o(s.x,r.x),o(s.y,r.y),s.x+_[t+0],s.y+_[t+1],s.x+_[t+2],s.y+_[t+3]),r.x=s.x+_[t+0],r.y=s.y+_[t+1],s.x+=_[t+2],s.y+=_[t+3],0===t&&!0===h&&l.copy(s);break;case\\\\\\\"q\\\\\\\":_=a(p);for(let t=0,n=_.length;t<n;t+=4)e.quadraticCurveTo(s.x+_[t+0],s.y+_[t+1],s.x+_[t+2],s.y+_[t+3]),r.x=s.x+_[t+0],r.y=s.y+_[t+1],s.x+=_[t+2],s.y+=_[t+3],0===t&&!0===h&&l.copy(s);break;case\\\\\\\"t\\\\\\\":_=a(p);for(let t=0,n=_.length;t<n;t+=2){const n=o(s.x,r.x),i=o(s.y,r.y);e.quadraticCurveTo(n,i,s.x+_[t+0],s.y+_[t+1]),r.x=n,r.y=i,s.x=s.x+_[t+0],s.y=s.y+_[t+1],0===t&&!0===h&&l.copy(s)}break;case\\\\\\\"a\\\\\\\":_=a(p,[3,4],7);for(let t=0,i=_.length;t<i;t+=7){if(0==_[t+5]&&0==_[t+6])continue;const i=s.clone();s.x+=_[t+5],s.y+=_[t+6],r.x=s.x,r.y=s.y,n(e,_[t],_[t+1],_[t+2],_[t+3],_[t+4],i,s),0===t&&!0===h&&l.copy(s)}break;case\\\\\\\"Z\\\\\\\":case\\\\\\\"z\\\\\\\":e.currentPath.autoClose=!0,e.currentPath.curves.length>0&&(s.copy(l),e.currentPath.currentPoint.copy(s),c=!0);break;default:console.warn(i)}h=!1}return e}(e));break;case\\\\\\\"rect\\\\\\\":s=r(e,s),m=function(t){const e=d(t.getAttribute(\\\\\\\"x\\\\\\\")||0),n=d(t.getAttribute(\\\\\\\"y\\\\\\\")||0),i=d(t.getAttribute(\\\\\\\"rx\\\\\\\")||t.getAttribute(\\\\\\\"ry\\\\\\\")||0),s=d(t.getAttribute(\\\\\\\"ry\\\\\\\")||t.getAttribute(\\\\\\\"rx\\\\\\\")||0),r=d(t.getAttribute(\\\\\\\"width\\\\\\\")),o=d(t.getAttribute(\\\\\\\"height\\\\\\\")),a=.448084975506,l=new p.a;l.moveTo(e+i,n),l.lineTo(e+r-i,n),(0!==i||0!==s)&&l.bezierCurveTo(e+r-i*a,n,e+r,n+s*a,e+r,n+s);l.lineTo(e+r,n+o-s),(0!==i||0!==s)&&l.bezierCurveTo(e+r,n+o-s*a,e+r-i*a,n+o,e+r-i,n+o);l.lineTo(e+i,n+o),(0!==i||0!==s)&&l.bezierCurveTo(e+i*a,n+o,e,n+o-s*a,e,n+o-s);l.lineTo(e,n+s),(0!==i||0!==s)&&l.bezierCurveTo(e,n+s*a,e+i*a,n,e+i,n);return l}(e);break;case\\\\\\\"polygon\\\\\\\":s=r(e,s),m=function(t){function e(t,e,n){const r=d(e),o=d(n);0===s?i.moveTo(r,o):i.lineTo(r,o),s++}const n=/(-?[\\\\d\\\\.?]+)[,|\\\\s](-?[\\\\d\\\\.?]+)/g,i=new p.a;let s=0;return t.getAttribute(\\\\\\\"points\\\\\\\").replace(n,e),i.currentPath.autoClose=!0,i}(e);break;case\\\\\\\"polyline\\\\\\\":s=r(e,s),m=function(t){function e(t,e,n){const r=d(e),o=d(n);0===s?i.moveTo(r,o):i.lineTo(r,o),s++}const n=/(-?[\\\\d\\\\.?]+)[,|\\\\s](-?[\\\\d\\\\.?]+)/g,i=new p.a;let s=0;return t.getAttribute(\\\\\\\"points\\\\\\\").replace(n,e),i.currentPath.autoClose=!1,i}(e);break;case\\\\\\\"circle\\\\\\\":s=r(e,s),m=function(t){const e=d(t.getAttribute(\\\\\\\"cx\\\\\\\")||0),n=d(t.getAttribute(\\\\\\\"cy\\\\\\\")||0),i=d(t.getAttribute(\\\\\\\"r\\\\\\\")||0),s=new u.a;s.absarc(e,n,i,0,2*Math.PI);const r=new p.a;return r.subPaths.push(s),r}(e);break;case\\\\\\\"ellipse\\\\\\\":s=r(e,s),m=function(t){const e=d(t.getAttribute(\\\\\\\"cx\\\\\\\")||0),n=d(t.getAttribute(\\\\\\\"cy\\\\\\\")||0),i=d(t.getAttribute(\\\\\\\"rx\\\\\\\")||0),s=d(t.getAttribute(\\\\\\\"ry\\\\\\\")||0),r=new u.a;r.absellipse(e,n,i,s,0,2*Math.PI);const o=new p.a;return o.subPaths.push(r),o}(e);break;case\\\\\\\"line\\\\\\\":s=r(e,s),m=function(t){const e=d(t.getAttribute(\\\\\\\"x1\\\\\\\")||0),n=d(t.getAttribute(\\\\\\\"y1\\\\\\\")||0),i=d(t.getAttribute(\\\\\\\"x2\\\\\\\")||0),s=d(t.getAttribute(\\\\\\\"y2\\\\\\\")||0),r=new p.a;return r.moveTo(e,n),r.lineTo(i,s),r.currentPath.autoClose=!1,r}(e);break;case\\\\\\\"defs\\\\\\\":c=!1;break;case\\\\\\\"use\\\\\\\":s=r(e,s);const l=e.href.baseVal.substring(1),h=e.viewportElement.getElementById(l);h?t(h,s):console.warn(\\\\\\\"SVGLoader: 'use node' references non-existent node id: \\\\\\\"+l)}if(m&&(void 0!==s.fill&&\\\\\\\"none\\\\\\\"!==s.fill&&m.color.setStyle(s.fill),function(t,e){function n(t){M.set(t.x,t.y,1).applyMatrix3(e),t.set(M.x,M.y)}const i=function(t){return 0!==t.elements[1]||0!==t.elements[3]}(e),s=t.subPaths;for(let t=0,r=s.length;t<r;t++){const r=s[t].curves;for(let t=0;t<r.length;t++){const s=r[t];s.isLineCurve?(n(s.v1),n(s.v2)):s.isCubicBezierCurve?(n(s.v0),n(s.v1),n(s.v2),n(s.v3)):s.isQuadraticBezierCurve?(n(s.v0),n(s.v1),n(s.v2)):s.isEllipseCurve&&(i&&console.warn(\\\\\\\"SVGLoader: Elliptic arc or ellipse rotation or skewing is not implemented.\\\\\\\"),A.set(s.aX,s.aY),n(A),s.aX=A.x,s.aY=A.y,s.xRadius*=_(e),s.yRadius*=f(e))}}}(m,E),g.push(m),m.userData={node:e,style:s}),c){const n=e.childNodes;for(let e=0;e<n.length;e++)t(n[e],s)}l&&(y.pop(),y.length>0?E.copy(y[y.length-1]):E.identity())}(S.documentElement,{fill:\\\\\\\"#000\\\\\\\",fillOpacity:1,strokeOpacity:1,strokeWidth:1,strokeLineJoin:\\\\\\\"miter\\\\\\\",strokeLineCap:\\\\\\\"butt\\\\\\\",strokeMiterLimit:4});return{paths:g,xml:S.documentElement}}static createShapes(t){const e=999999999,n=0,s=1,o=2,a=3,l=4,c=5,h=6,p={loc:n,t:0};function m(t,e,i,s){const r=t.x,a=e.x,l=i.x,c=s.x,h=t.y,u=e.y,d=i.y,_=s.y,m=(c-l)*(h-d)-(_-d)*(r-l),g=(_-d)*(a-r)-(c-l)*(u-h),v=m/g,y=((a-r)*(h-d)-(u-h)*(r-l))/g;if(0===g&&0!==m||v<=0||v>=1||y<0||y>1)return null;if(0===m&&0===g){for(let l=0;l<2;l++){if(f(0===l?i:s,t,e),p.loc==n){const t=0===l?i:s;return{x:t.x,y:t.y,t:p.t}}if(p.loc==o){return{x:+(r+p.t*(a-r)).toPrecision(10),y:+(h+p.t*(u-h)).toPrecision(10),t:p.t}}}return null}for(let r=0;r<2;r++)if(f(0===r?i:s,t,e),p.loc==n){const t=0===r?i:s;return{x:t.x,y:t.y,t:p.t}}return{x:+(r+v*(a-r)).toPrecision(10),y:+(h+v*(u-h)).toPrecision(10),t:v}}function f(t,e,i){const r=i.x-e.x,u=i.y-e.y,d=t.x-e.x,_=t.y-e.y,m=r*_-d*u;if(t.x===e.x&&t.y===e.y)return p.loc=n,void(p.t=0);if(t.x===i.x&&t.y===i.y)return p.loc=s,void(p.t=1);if(m<-Number.EPSILON)return void(p.loc=a);if(m>Number.EPSILON)return void(p.loc=l);if(r*d<0||u*_<0)return void(p.loc=c);if(Math.sqrt(r*r+u*u)<Math.sqrt(d*d+_*_))return void(p.loc=h);let f;f=0!==r?d/r:_/u,p.loc=o,p.t=f}function g(t,e,n){const s=new i.a;e.getCenter(s);const r=[];return n.forEach((e=>{if(e.boundingBox.containsPoint(s)){(function(t,e){const n=[],s=[];for(let r=1;r<t.length;r++){const o=t[r-1],a=t[r];for(let t=1;t<e.length;t++){const r=m(o,a,e[t-1],e[t]);null!==r&&void 0===n.find((t=>t.t<=r.t+Number.EPSILON&&t.t>=r.t-Number.EPSILON))&&(n.push(r),s.push(new i.a(r.x,r.y)))}}return s})(t,e.points).forEach((t=>{r.push({identifier:e.identifier,isCW:e.isCW,point:t})}))}})),r.sort(((t,e)=>t.point.x-e.point.x)),r}let v=0,y=e,x=-999999999,b=t.subPaths.map((t=>{const n=t.getPoints();let s=-999999999,o=e,a=-999999999,l=e;for(let t=0;t<n.length;t++){const e=n[t];e.y>s&&(s=e.y),e.y<o&&(o=e.y),e.x>a&&(a=e.x),e.x<l&&(l=e.x)}return x<=a&&(x=a+1),y>=l&&(y=l-1),{points:n,isCW:_.a.isClockWise(n),identifier:v++,boundingBox:new r(new i.a(l,o),new i.a(a,s))}}));b=b.filter((t=>t.points.length>1));const w=b.map((e=>function(t,e,n,s,r){null!=r&&\\\\\\\"\\\\\\\"!==r||(r=\\\\\\\"nonzero\\\\\\\");const o=new i.a;t.boundingBox.getCenter(o);const a=g([new i.a(n,o.y),new i.a(s,o.y)],t.boundingBox,e);a.sort(((t,e)=>t.point.x-e.point.x));const l=[],c=[];a.forEach((e=>{e.identifier===t.identifier?l.push(e):c.push(e)}));const h=l[0].point.x,u=[];let d=0;for(;d<c.length&&c[d].point.x<h;)u.length>0&&u[u.length-1]===c[d].identifier?u.pop():u.push(c[d].identifier),d++;if(u.push(t.identifier),\\\\\\\"evenodd\\\\\\\"===r){const e=u.length%2==0,n=u[u.length-2];return{identifier:t.identifier,isHole:e,for:n}}if(\\\\\\\"nonzero\\\\\\\"===r){let n=!0,i=null,s=null;for(let t=0;t<u.length;t++){const r=u[t];n?(s=e[r].isCW,n=!1,i=r):s!==e[r].isCW&&(s=e[r].isCW,n=!0)}return{identifier:t.identifier,isHole:n,for:i}}console.warn('fill-rule: \\\\\\\"'+r+'\\\\\\\" is currently not implemented.')}(e,b,y,x,t.userData.style.fillRule))),T=[];return b.forEach((t=>{if(!w[t.identifier].isHole){const e=new d.a(t.points);w.filter((e=>e.isHole&&e.for===t.identifier)).forEach((t=>{const n=b[t.identifier];e.holes.push(new u.a(n.points))})),T.push(e)}})),T}static getStrokeStyle(t,e,n,i,s){return{strokeColor:e=void 0!==e?e:\\\\\\\"#000\\\\\\\",strokeWidth:t=void 0!==t?t:1,strokeLineJoin:n=void 0!==n?n:\\\\\\\"miter\\\\\\\",strokeLineCap:i=void 0!==i?i:\\\\\\\"butt\\\\\\\",strokeMiterLimit:s=void 0!==s?s:4}}static pointsToStroke(t,e,n,i){const s=[],r=[],a=[];if(0===f.pointsToStrokeWithBuffers(t,e,n,i,s,r,a))return null;const c=new o.a;return c.setAttribute(\\\\\\\"position\\\\\\\",new l.c(s,3)),c.setAttribute(\\\\\\\"normal\\\\\\\",new l.c(r,3)),c.setAttribute(\\\\\\\"uv\\\\\\\",new l.c(a,2)),c}static pointsToStrokeWithBuffers(t,e,n,s,r,o,a,l){const c=new i.a,h=new i.a,u=new i.a,d=new i.a,p=new i.a,_=new i.a,m=new i.a,f=new i.a,g=new i.a,v=new i.a,y=new i.a,x=new i.a,b=new i.a,w=new i.a,T=new i.a,A=new i.a,M=new i.a;n=void 0!==n?n:12,s=void 0!==s?s:.001,l=void 0!==l?l:0;const E=(t=function(t){let e=!1;for(let n=1,i=t.length-1;n<i;n++)if(t[n].distanceTo(t[n+1])<s){e=!0;break}if(!e)return t;const n=[];n.push(t[0]);for(let e=1,i=t.length-1;e<i;e++)t[e].distanceTo(t[e+1])>=s&&n.push(t[e]);return n.push(t[t.length-1]),n}(t)).length;if(E<2)return 0;const S=t[0].equals(t[E-1]);let C,N,L=t[0];const O=e.strokeWidth/2,P=1/(E-1);let R,I,F,D,B=0,z=!1,k=0,U=3*l,G=2*l;V(t[0],t[1],c).multiplyScalar(O),f.copy(t[0]).sub(c),g.copy(t[0]).add(c),v.copy(f),y.copy(g);for(let n=1;n<E;n++){C=t[n],N=n===E-1?S?t[1]:void 0:t[n+1];const i=c;if(V(L,C,i),u.copy(i).multiplyScalar(O),x.copy(C).sub(u),b.copy(C).add(u),R=B+P,I=!1,void 0!==N){V(C,N,h),u.copy(h).multiplyScalar(O),w.copy(C).sub(u),T.copy(C).add(u),F=!0,u.subVectors(N,L),i.dot(u)<0&&(F=!1),1===n&&(z=F),u.subVectors(N,C),u.normalize();const t=Math.abs(i.dot(u));if(0!==t){const n=O/t;u.multiplyScalar(-n),d.subVectors(C,L),p.copy(d).setLength(n).add(u),A.copy(p).negate();const i=p.length(),s=d.length();d.divideScalar(s),_.subVectors(N,C);const r=_.length();switch(_.divideScalar(r),d.dot(A)<s&&_.dot(A)<r&&(I=!0),M.copy(p).add(C),A.add(C),D=!1,I?F?(T.copy(A),b.copy(A)):(w.copy(A),x.copy(A)):W(),e.strokeLineJoin){case\\\\\\\"bevel\\\\\\\":q(F,I,R);break;case\\\\\\\"round\\\\\\\":X(F,I),F?j(C,x,w,R,0):j(C,T,b,R,1);break;case\\\\\\\"miter\\\\\\\":case\\\\\\\"miter-clip\\\\\\\":default:const t=O*e.strokeMiterLimit/i;if(t<1){if(\\\\\\\"miter-clip\\\\\\\"!==e.strokeLineJoin){q(F,I,R);break}X(F,I),F?(_.subVectors(M,x).multiplyScalar(t).add(x),m.subVectors(M,w).multiplyScalar(t).add(w),H(x,R,0),H(_,R,0),H(C,R,.5),H(C,R,.5),H(_,R,0),H(m,R,0),H(C,R,.5),H(m,R,0),H(w,R,0)):(_.subVectors(M,b).multiplyScalar(t).add(b),m.subVectors(M,T).multiplyScalar(t).add(T),H(b,R,1),H(_,R,1),H(C,R,.5),H(C,R,.5),H(_,R,1),H(m,R,1),H(C,R,.5),H(m,R,1),H(T,R,1))}else I?(F?(H(g,B,1),H(f,B,0),H(M,R,0),H(g,B,1),H(M,R,0),H(A,R,1)):(H(g,B,1),H(f,B,0),H(M,R,1),H(f,B,0),H(A,R,0),H(M,R,1)),F?w.copy(M):T.copy(M)):F?(H(x,R,0),H(M,R,0),H(C,R,.5),H(C,R,.5),H(M,R,0),H(w,R,0)):(H(b,R,1),H(M,R,1),H(C,R,.5),H(C,R,.5),H(M,R,1),H(T,R,1)),D=!0}}else W()}else W();S||n!==E-1||Y(t[0],v,y,F,!0,B),B=R,L=C,f.copy(w),g.copy(T)}if(S){if(I&&r){let t=M,e=A;z!==F&&(t=A,e=M),F?(D||z)&&(e.toArray(r,0),e.toArray(r,9),D&&t.toArray(r,3)):!D&&z||(e.toArray(r,3),e.toArray(r,9),D&&t.toArray(r,0))}}else Y(C,x,b,F,!1,R);return k;function V(t,e,n){return n.subVectors(e,t),n.set(-n.y,n.x).normalize()}function H(t,e,n){r&&(r[U]=t.x,r[U+1]=t.y,r[U+2]=0,o&&(o[U]=0,o[U+1]=0,o[U+2]=1),U+=3,a&&(a[G]=e,a[G+1]=n,G+=2)),k+=3}function j(t,e,i,s,r){c.copy(e).sub(t).normalize(),h.copy(i).sub(t).normalize();let o=Math.PI;const a=c.dot(h);Math.abs(a)<1&&(o=Math.abs(Math.acos(a))),o/=n,u.copy(e);for(let e=0,i=n-1;e<i;e++)d.copy(u).rotateAround(t,o),H(u,s,r),H(d,s,r),H(t,s,.5),u.copy(d);H(d,s,r),H(i,s,r),H(t,s,.5)}function W(){H(g,B,1),H(f,B,0),H(x,R,0),H(g,B,1),H(x,R,1),H(b,R,0)}function q(t,e,n){e?t?(H(g,B,1),H(f,B,0),H(x,R,0),H(g,B,1),H(x,R,0),H(A,R,1),H(x,n,0),H(w,n,0),H(A,n,.5)):(H(g,B,1),H(f,B,0),H(b,R,1),H(f,B,0),H(A,R,0),H(b,R,1),H(b,n,1),H(T,n,0),H(A,n,.5)):t?(H(x,n,0),H(w,n,0),H(C,n,.5)):(H(b,n,1),H(T,n,0),H(C,n,.5))}function X(t,e){e&&(t?(H(g,B,1),H(f,B,0),H(x,R,0),H(g,B,1),H(x,R,0),H(A,R,1),H(x,B,0),H(C,R,.5),H(A,R,1),H(C,R,.5),H(w,B,0),H(A,R,1)):(H(g,B,1),H(f,B,0),H(b,R,1),H(f,B,0),H(A,R,0),H(b,R,1),H(b,B,1),H(A,R,0),H(C,R,.5),H(C,R,.5),H(A,R,0),H(T,B,1)))}function Y(t,n,i,s,o,a){switch(e.strokeLineCap){case\\\\\\\"round\\\\\\\":o?j(t,i,n,a,.5):j(t,n,i,a,.5);break;case\\\\\\\"square\\\\\\\":if(o)c.subVectors(n,t),h.set(c.y,-c.x),u.addVectors(c,h).add(t),d.subVectors(h,c).add(t),s?(u.toArray(r,3),d.toArray(r,0),d.toArray(r,9)):(u.toArray(r,3),u.toArray(r,9),d.toArray(r,0));else{c.subVectors(i,t),h.set(c.y,-c.x),u.addVectors(c,h).add(t),d.subVectors(h,c).add(t);const e=r.length;s?(u.toArray(r,e-3),d.toArray(r,e-6),d.toArray(r,e-12)):(u.toArray(r,e-6),d.toArray(r,e-3),d.toArray(r,e-12))}}}}}},function(t,e,n){\\\\\\\"use strict\\\\\\\";var i;n.d(e,\\\\\\\"a\\\\\\\",(function(){return i})),function(t){t.CODE=\\\\\\\"code.json\\\\\\\",t.EDITOR=\\\\\\\"editor.json\\\\\\\",t.ASSETS=\\\\\\\"assets.json\\\\\\\",t.POLYGONJS=\\\\\\\"js/all.js\\\\\\\",t.POLY_CONFIG=\\\\\\\"js/polyConfig.js\\\\\\\",t.JS_FILES=\\\\\\\"js_files.json\\\\\\\",t.POSTER=\\\\\\\"poster.png\\\\\\\"}(i||(i={}))},function(t,e,n){var i=n(148),s=n(153);t.exports=function(t,e){var n=s(t,e);return i(n)?n:void 0}},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return h}));var i=n(0),s=n(25);function r(){let t=0,e=0,n=0,i=0;function s(s,r,o,a){t=s,e=o,n=-3*s+3*r-2*o-a,i=2*s-2*r+o+a}return{initCatmullRom:function(t,e,n,i,r){s(e,n,r*(n-t),r*(i-e))},initNonuniformCatmullRom:function(t,e,n,i,r,o,a){let l=(e-t)/r-(n-t)/(r+o)+(n-e)/o,c=(n-e)/o-(i-e)/(o+a)+(i-n)/a;l*=o,c*=o,s(e,n,l,c)},calc:function(s){const r=s*s;return t+e*s+n*r+i*(r*s)}}}const o=new i.a,a=new r,l=new r,c=new r;class h extends s.a{constructor(t=[],e=!1,n=\\\\\\\"centripetal\\\\\\\",i=.5){super(),this.type=\\\\\\\"CatmullRomCurve3\\\\\\\",this.points=t,this.closed=e,this.curveType=n,this.tension=i}getPoint(t,e=new i.a){const n=e,s=this.points,r=s.length,h=(r-(this.closed?0:1))*t;let u,d,p=Math.floor(h),_=h-p;this.closed?p+=p>0?0:(Math.floor(Math.abs(p)/r)+1)*r:0===_&&p===r-1&&(p=r-2,_=1),this.closed||p>0?u=s[(p-1)%r]:(o.subVectors(s[0],s[1]).add(s[0]),u=o);const m=s[p%r],f=s[(p+1)%r];if(this.closed||p+2<r?d=s[(p+2)%r]:(o.subVectors(s[r-1],s[r-2]).add(s[r-1]),d=o),\\\\\\\"centripetal\\\\\\\"===this.curveType||\\\\\\\"chordal\\\\\\\"===this.curveType){const t=\\\\\\\"chordal\\\\\\\"===this.curveType?.5:.25;let e=Math.pow(u.distanceToSquared(m),t),n=Math.pow(m.distanceToSquared(f),t),i=Math.pow(f.distanceToSquared(d),t);n<1e-4&&(n=1),e<1e-4&&(e=n),i<1e-4&&(i=n),a.initNonuniformCatmullRom(u.x,m.x,f.x,d.x,e,n,i),l.initNonuniformCatmullRom(u.y,m.y,f.y,d.y,e,n,i),c.initNonuniformCatmullRom(u.z,m.z,f.z,d.z,e,n,i)}else\\\\\\\"catmullrom\\\\\\\"===this.curveType&&(a.initCatmullRom(u.x,m.x,f.x,d.x,this.tension),l.initCatmullRom(u.y,m.y,f.y,d.y,this.tension),c.initCatmullRom(u.z,m.z,f.z,d.z,this.tension));return n.set(a.calc(_),l.calc(_),c.calc(_)),n}copy(t){super.copy(t),this.points=[];for(let e=0,n=t.points.length;e<n;e++){const n=t.points[e];this.points.push(n.clone())}return this.closed=t.closed,this.curveType=t.curveType,this.tension=t.tension,this}toJSON(){const t=super.toJSON();t.points=[];for(let e=0,n=this.points.length;e<n;e++){const n=this.points[e];t.points.push(n.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++){const n=t.points[e];this.points.push((new i.a).fromArray(n))}return this.closed=t.closed,this.curveType=t.curveType,this.tension=t.tension,this}}h.prototype.isCatmullRomCurve3=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";function i(t){return(window.URL||window.webkitURL).createObjectURL(t)}n.d(e,\\\\\\\"a\\\\\\\",(function(){return i}))},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return s}));var i=n(33);class s extends i.a{constructor(t,e){super(t,e),this.type=\\\\\\\"AmbientLight\\\\\\\"}}s.prototype.isAmbientLight=!0},function(t,e){t.exports=function(t){var e=typeof t;return null!=t&&(\\\\\\\"object\\\\\\\"==e||\\\\\\\"function\\\\\\\"==e)}},function(t,e){t.exports=function(t){return null!=t&&\\\\\\\"object\\\\\\\"==typeof t}},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return o}));var i=n(25),s=n(32),r=n(0);class o extends i.a{constructor(t=new r.a,e=new r.a,n=new r.a){super(),this.type=\\\\\\\"QuadraticBezierCurve3\\\\\\\",this.v0=t,this.v1=e,this.v2=n}getPoint(t,e=new r.a){const n=e,i=this.v0,o=this.v1,a=this.v2;return n.set(Object(s.c)(t,i.x,o.x,a.x),Object(s.c)(t,i.y,o.y,a.y),Object(s.c)(t,i.z,o.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(){const 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}}o.prototype.isQuadraticBezierCurve3=!0},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return i}));class i{static fadeOut(t){return new Promise((e=>{const n=setInterval((()=>{t.style.opacity||(t.style.opacity=\\\\\\\"1\\\\\\\");const i=parseFloat(t.style.opacity);i>0?t.style.opacity=\\\\\\\"\\\\\\\"+(i-.05):(e(),clearInterval(n))}),20)}))}}},function(t,e,n){\\\\\\\"use strict\\\\\\\";n.d(e,\\\\\\\"a\\\\\\\",(function(){return s}));var i=n(41);class s extends i.a{constructor(t,e){super(t,e),this.type=\\\\\\\"LineLoop\\\\\\\"}}s.prototype.isLineLoop=!0},,function(t,e,n){!function(n){\\\\\\\"use strict\\\\\\\";var i=\\\\\\\"Compound\\\\\\\",s=\\\\\\\"MemberExpression\\\\\\\",r=\\\\\\\"Literal\\\\\\\",o=function(t,e){var n=new Error(t+\\\\\\\" at character \\\\\\\"+e);throw n.index=e,n.description=t,n},a=!0,l={\\\\\\\"-\\\\\\\":a,\\\\\\\"!\\\\\\\":a,\\\\\\\"~\\\\\\\":a,\\\\\\\"+\\\\\\\":a},c={\\\\\\\"||\\\\\\\":1,\\\\\\\"&&\\\\\\\":2,\\\\\\\"|\\\\\\\":3,\\\\\\\"^\\\\\\\":4,\\\\\\\"&\\\\\\\":5,\\\\\\\"==\\\\\\\":6,\\\\\\\"!=\\\\\\\":6,\\\\\\\"===\\\\\\\":6,\\\\\\\"!==\\\\\\\":6,\\\\\\\"<\\\\\\\":7,\\\\\\\">\\\\\\\":7,\\\\\\\"<=\\\\\\\":7,\\\\\\\">=\\\\\\\":7,\\\\\\\"<<\\\\\\\":8,\\\\\\\">>\\\\\\\":8,\\\\\\\">>>\\\\\\\":8,\\\\\\\"+\\\\\\\":9,\\\\\\\"-\\\\\\\":9,\\\\\\\"*\\\\\\\":10,\\\\\\\"/\\\\\\\":10,\\\\\\\"%\\\\\\\":10},h=function(t){var e,n=0;for(var i in t)(e=i.length)>n&&t.hasOwnProperty(i)&&(n=e);return n},u=h(l),d=h(c),p={true:!0,false:!1,null:null},_=function(t){return c[t]||0},m=function(t,e,n){return{type:\\\\\\\"||\\\\\\\"===t||\\\\\\\"&&\\\\\\\"===t?\\\\\\\"LogicalExpression\\\\\\\":\\\\\\\"BinaryExpression\\\\\\\",operator:t,left:e,right:n}},f=function(t){return t>=48&&t<=57},g=function(t){return 36===t||95===t||t>=65&&t<=90||t>=97&&t<=122||t>=128&&!c[String.fromCharCode(t)]},v=function(t){return 36===t||95===t||t>=65&&t<=90||t>=97&&t<=122||t>=48&&t<=57||t>=128&&!c[String.fromCharCode(t)]},y=function(t){for(var e,n,a=0,h=t.charAt,y=t.charCodeAt,x=function(e){return h.call(t,e)},b=function(e){return y.call(t,e)},w=t.length,T=function(){for(var t=b(a);32===t||9===t||10===t||13===t;)t=b(++a)},A=function(){var t,e,n=E();return T(),63!==b(a)?n:(a++,(t=A())||o(\\\\\\\"Expected expression\\\\\\\",a),T(),58===b(a)?(a++,(e=A())||o(\\\\\\\"Expected expression\\\\\\\",a),{type:\\\\\\\"ConditionalExpression\\\\\\\",test:n,consequent:t,alternate:e}):void o(\\\\\\\"Expected :\\\\\\\",a))},M=function(){T();for(var e=t.substr(a,d),n=e.length;n>0;){if(c.hasOwnProperty(e)&&(!g(b(a))||a+e.length<t.length&&!v(b(a+e.length))))return a+=n,e;e=e.substr(0,--n)}return!1},E=function(){var t,e,n,i,s,r,l,c,h;if(r=S(),!(e=M()))return r;for(s={value:e,prec:_(e)},(l=S())||o(\\\\\\\"Expected expression after \\\\\\\"+e,a),i=[r,s,l];(e=M())&&0!==(n=_(e));){for(s={value:e,prec:n},h=e;i.length>2&&n<=i[i.length-2].prec;)l=i.pop(),e=i.pop().value,r=i.pop(),t=m(e,r,l),i.push(t);(t=S())||o(\\\\\\\"Expected expression after \\\\\\\"+h,a),i.push(s,t)}for(t=i[c=i.length-1];c>1;)t=m(i[c-1].value,i[c-2],t),c-=2;return t},S=function(){var e,n,i;if(T(),e=b(a),f(e)||46===e)return C();if(39===e||34===e)return N();if(91===e)return I();for(i=(n=t.substr(a,u)).length;i>0;){if(l.hasOwnProperty(n)&&(!g(b(a))||a+n.length<t.length&&!v(b(a+n.length))))return a+=i,{type:\\\\\\\"UnaryExpression\\\\\\\",operator:n,argument:S(),prefix:!0};n=n.substr(0,--i)}return!(!g(e)&&40!==e)&&P()},C=function(){for(var t,e,n=\\\\\\\"\\\\\\\";f(b(a));)n+=x(a++);if(46===b(a))for(n+=x(a++);f(b(a));)n+=x(a++);if(\\\\\\\"e\\\\\\\"===(t=x(a))||\\\\\\\"E\\\\\\\"===t){for(n+=x(a++),\\\\\\\"+\\\\\\\"!==(t=x(a))&&\\\\\\\"-\\\\\\\"!==t||(n+=x(a++));f(b(a));)n+=x(a++);f(b(a-1))||o(\\\\\\\"Expected exponent (\\\\\\\"+n+x(a)+\\\\\\\")\\\\\\\",a)}return e=b(a),g(e)?o(\\\\\\\"Variable names cannot start with a number (\\\\\\\"+n+x(a)+\\\\\\\")\\\\\\\",a):46===e&&o(\\\\\\\"Unexpected period\\\\\\\",a),{type:r,value:parseFloat(n),raw:n}},N=function(){for(var t,e=\\\\\\\"\\\\\\\",n=x(a++),i=!1;a<w;){if((t=x(a++))===n){i=!0;break}if(\\\\\\\"\\\\\\\\\\\\\\\"===t)switch(t=x(a++)){case\\\\\\\"n\\\\\\\":e+=\\\\\\\"\\\\n\\\\\\\";break;case\\\\\\\"r\\\\\\\":e+=\\\\\\\"\\\\r\\\\\\\";break;case\\\\\\\"t\\\\\\\":e+=\\\\\\\"\\\\t\\\\\\\";break;case\\\\\\\"b\\\\\\\":e+=\\\\\\\"\\\\b\\\\\\\";break;case\\\\\\\"f\\\\\\\":e+=\\\\\\\"\\\\f\\\\\\\";break;case\\\\\\\"v\\\\\\\":e+=\\\\\\\"\\\\v\\\\\\\";break;default:e+=t}else e+=t}return i||o('Unclosed quote after \\\\\\\"'+e+'\\\\\\\"',a),{type:r,value:e,raw:n+e+n}},L=function(){var e,n=b(a),i=a;for(g(n)?a++:o(\\\\\\\"Unexpected \\\\\\\"+x(a),a);a<w&&(n=b(a),v(n));)a++;return e=t.slice(i,a),p.hasOwnProperty(e)?{type:r,value:p[e],raw:e}:\\\\\\\"this\\\\\\\"===e?{type:\\\\\\\"ThisExpression\\\\\\\"}:{type:\\\\\\\"Identifier\\\\\\\",name:e}},O=function(t){for(var e,n,s=[],r=!1,l=0;a<w;){if(T(),(e=b(a))===t){r=!0,a++,41===t&&l&&l>=s.length&&o(\\\\\\\"Unexpected token \\\\\\\"+String.fromCharCode(t),a);break}if(44===e){if(a++,++l!==s.length)if(41===t)o(\\\\\\\"Unexpected token ,\\\\\\\",a);else if(93===t)for(var c=s.length;c<l;c++)s.push(null)}else(n=A())&&n.type!==i||o(\\\\\\\"Expected comma\\\\\\\",a),s.push(n)}return r||o(\\\\\\\"Expected \\\\\\\"+String.fromCharCode(t),a),s},P=function(){var t,e;for(e=40===(t=b(a))?R():L(),T(),t=b(a);46===t||91===t||40===t;)a++,46===t?(T(),e={type:s,computed:!1,object:e,property:L()}):91===t?(e={type:s,computed:!0,object:e,property:A()},T(),93!==(t=b(a))&&o(\\\\\\\"Unclosed [\\\\\\\",a),a++):40===t&&(e={type:\\\\\\\"CallExpression\\\\\\\",arguments:O(41),callee:e}),T(),t=b(a);return e},R=function(){a++;var t=A();if(T(),41===b(a))return a++,t;o(\\\\\\\"Unclosed (\\\\\\\",a)},I=function(){return a++,{type:\\\\\\\"ArrayExpression\\\\\\\",elements:O(93)}},F=[];a<w;)59===(e=b(a))||44===e?a++:(n=A())?F.push(n):a<w&&o('Unexpected \\\\\\\"'+x(a)+'\\\\\\\"',a);return 1===F.length?F[0]:{type:i,body:F}};y.version=\\\\\\\"0.3.5\\\\\\\",y.toString=function(){return\\\\\\\"JavaScript Expression Parser (JSEP) v\\\\\\\"+y.version},y.addUnaryOp=function(t){return u=Math.max(t.length,u),l[t]=a,this},y.addBinaryOp=function(t,e){return d=Math.max(t.length,d),c[t]=e,this},y.addLiteral=function(t,e){return p[t]=e,this},y.removeUnaryOp=function(t){return delete l[t],t.length===u&&(u=h(l)),this},y.removeAllUnaryOps=function(){return l={},u=0,this},y.removeBinaryOp=function(t){return delete c[t],t.length===d&&(d=h(c)),this},y.removeAllBinaryOps=function(){return c={},d=0,this},y.removeLiteral=function(t){return delete p[t],this},y.removeAllLiterals=function(){return p={},this},t.exports?e=t.exports=y:e.parse=y}()},function(t,e,n){var i=n(138),s=n(139),r=n(140),o=n(141),a=n(142);function l(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var i=t[e];this.set(i[0],i[1])}}l.prototype.clear=i,l.prototype.delete=s,l.prototype.get=r,l.prototype.has=o,l.prototype.set=a,t.exports=l},function(t,e,n){var i=n(117);t.exports=function(t,e){for(var n=t.length;n--;)if(i(t[n][0],e))return n;return-1}},function(t,e,n){var i=n(103),s=n(149),r=n(150),o=i?i.toStringTag:void 0;t.exports=function(t){return null==t?void 0===t?\\\\\\\"[object Undefined]\\\\\\\":\\\\\\\"[object Null]\\\\\\\":o&&o in Object(t)?s(t):r(t)}},function(t,e){var n;n=function(){return this}();try{n=n||new Function(\\\\\\\"return this\\\\\\\")()}catch(t){\\\\\\\"object\\\\\\\"==typeof window&&(n=window)}t.exports=n},function(t,e,n){var i=n(84)(Object,\\\\\\\"create\\\\\\\");t.exports=i},function(t,e,n){var i=n(163);t.exports=function(t,e){var n=t.__data__;return i(e)?n[\\\\\\\"string\\\\\\\"==typeof e?\\\\\\\"string\\\\\\\":\\\\\\\"hash\\\\\\\"]:n.map}},function(t,e,n){var i=n(121),s=n(122);t.exports=function(t,e,n,r){var o=!n;n||(n={});for(var a=-1,l=e.length;++a<l;){var c=e[a],h=r?r(n[c],t[c],c,n,t):void 0;void 0===h&&(h=t[c]),o?s(n,c,h):i(n,c,h)}return n}},function(t,e,n){var i=n(84)(n(68),\\\\\\\"Map\\\\\\\");t.exports=i},function(t,e,n){var i=n(68).Symbol;t.exports=i},function(t,e,n){var i=n(123),s=n(177),r=n(127);t.exports=function(t){return r(t)?i(t):s(t)}},function(t,e){var n=Array.isArray;t.exports=n},function(t,e){t.exports=function(t){return t.webpackPolyfill||(t.deprecate=function(){},t.paths=[],t.children||(t.children=[]),Object.defineProperty(t,\\\\\\\"loaded\\\\\\\",{enumerable:!0,get:function(){return t.l}}),Object.defineProperty(t,\\\\\\\"id\\\\\\\",{enumerable:!0,get:function(){return t.i}}),t.webpackPolyfill=1),t}},function(t,e){t.exports=function(t){return function(e){return t(e)}}},function(t,e,n){(function(t){var i=n(119),s=e&&!e.nodeType&&e,r=s&&\\\\\\\"object\\\\\\\"==typeof t&&t&&!t.nodeType&&t,o=r&&r.exports===s&&i.process,a=function(){try{var t=r&&r.require&&r.require(\\\\\\\"util\\\\\\\").types;return t||o&&o.binding&&o.binding(\\\\\\\"util\\\\\\\")}catch(t){}}();t.exports=a}).call(this,n(106)(t))},function(t,e){var n=Object.prototype;t.exports=function(t){var e=t&&t.constructor;return t===(\\\\\\\"function\\\\\\\"==typeof e&&e.prototype||n)}},function(t,e,n){var i=n(123),s=n(180),r=n(127);t.exports=function(t){return r(t)?i(t,!0):s(t)}},function(t,e,n){var i=n(185),s=n(128),r=Object.prototype.propertyIsEnumerable,o=Object.getOwnPropertySymbols,a=o?function(t){return null==t?[]:(t=Object(t),i(o(t),(function(e){return r.call(t,e)})))}:s;t.exports=a},function(t,e,n){var i=n(189),s=n(102),r=n(190),o=n(191),a=n(192),l=n(97),c=n(120),h=\\\\\\\"[object Map]\\\\\\\",u=\\\\\\\"[object Promise]\\\\\\\",d=\\\\\\\"[object Set]\\\\\\\",p=\\\\\\\"[object WeakMap]\\\\\\\",_=\\\\\\\"[object DataView]\\\\\\\",m=c(i),f=c(s),g=c(r),v=c(o),y=c(a),x=l;(i&&x(new i(new ArrayBuffer(1)))!=_||s&&x(new s)!=h||r&&x(r.resolve())!=u||o&&x(new o)!=d||a&&x(new a)!=p)&&(x=function(t){var e=l(t),n=\\\\\\\"[object Object]\\\\\\\"==e?t.constructor:void 0,i=n?c(n):\\\\\\\"\\\\\\\";if(i)switch(i){case m:return _;case f:return h;case g:return u;case v:return d;case y:return p}return e}),t.exports=x},function(t,e,n){var i=n(195);t.exports=function(t){var e=new t.constructor(t.byteLength);return new i(e).set(new i(t)),e}},function(t,e,n){\\\\\\\"use strict\\\\\\\";Object.defineProperty(e,\\\\\\\"__esModule\\\\\\\",{value:!0}),e.decompressFrames=e.decompressFrame=e.parseGIF=void 0;var i,s=(i=n(206))&&i.__esModule?i:{default:i},r=n(133),o=n(134),a=n(207),l=n(208);e.parseGIF=function(t){var e=new Uint8Array(t);return(0,r.parse)((0,o.buildStream)(e),s.default)};var c=function(t,e,n){if(t.image){var i=t.image,s=i.descriptor.width*i.descriptor.height,r=(0,l.lzw)(i.data.minCodeSize,i.data.blocks,s);i.descriptor.lct.interlaced&&(r=(0,a.deinterlace)(r,i.descriptor.width));var o={pixels:r,dims:{top:t.image.descriptor.top,left:t.image.descriptor.left,width:t.image.descriptor.width,height:t.image.descriptor.height}};return i.descriptor.lct&&i.descriptor.lct.exists?o.colorTable=i.lct:o.colorTable=e,t.gce&&(o.delay=10*(t.gce.delay||10),o.disposalType=t.gce.extras.disposal,t.gce.extras.transparentColorGiven&&(o.transparentIndex=t.gce.transparentColorIndex)),n&&(o.patch=function(t){for(var e=t.pixels.length,n=new Uint8ClampedArray(4*e),i=0;i<e;i++){var s=4*i,r=t.pixels[i],o=t.colorTable[r]||[0,0,0];n[s]=o[0],n[s+1]=o[1],n[s+2]=o[2],n[s+3]=r!==t.transparentIndex?255:0}return n}(o)),o}console.warn(\\\\\\\"gif frame does not have associated image.\\\\\\\")};e.decompressFrame=c;e.decompressFrames=function(t,e){return t.frames.filter((function(t){return t.image})).map((function(n){return c(n,t.gct,e)}))}},,function(t,e,n){var i=n(137),s=n(167),r=n(121),o=n(169),a=n(179),l=n(182),c=n(183),h=n(184),u=n(186),d=n(187),p=n(188),_=n(112),m=n(193),f=n(194),g=n(200),v=n(105),y=n(124),x=n(202),b=n(88),w=n(204),T=n(104),A=n(110),M=\\\\\\\"[object Arguments]\\\\\\\",E=\\\\\\\"[object Function]\\\\\\\",S=\\\\\\\"[object Object]\\\\\\\",C={};C[M]=C[\\\\\\\"[object Array]\\\\\\\"]=C[\\\\\\\"[object ArrayBuffer]\\\\\\\"]=C[\\\\\\\"[object DataView]\\\\\\\"]=C[\\\\\\\"[object Boolean]\\\\\\\"]=C[\\\\\\\"[object Date]\\\\\\\"]=C[\\\\\\\"[object Float32Array]\\\\\\\"]=C[\\\\\\\"[object Float64Array]\\\\\\\"]=C[\\\\\\\"[object Int8Array]\\\\\\\"]=C[\\\\\\\"[object Int16Array]\\\\\\\"]=C[\\\\\\\"[object Int32Array]\\\\\\\"]=C[\\\\\\\"[object Map]\\\\\\\"]=C[\\\\\\\"[object Number]\\\\\\\"]=C[S]=C[\\\\\\\"[object RegExp]\\\\\\\"]=C[\\\\\\\"[object Set]\\\\\\\"]=C[\\\\\\\"[object String]\\\\\\\"]=C[\\\\\\\"[object Symbol]\\\\\\\"]=C[\\\\\\\"[object Uint8Array]\\\\\\\"]=C[\\\\\\\"[object Uint8ClampedArray]\\\\\\\"]=C[\\\\\\\"[object Uint16Array]\\\\\\\"]=C[\\\\\\\"[object Uint32Array]\\\\\\\"]=!0,C[\\\\\\\"[object Error]\\\\\\\"]=C[E]=C[\\\\\\\"[object WeakMap]\\\\\\\"]=!1,t.exports=function t(e,n,N,L,O,P){var R,I=1&n,F=2&n,D=4&n;if(N&&(R=O?N(e,L,O,P):N(e)),void 0!==R)return R;if(!b(e))return e;var B=v(e);if(B){if(R=m(e),!I)return c(e,R)}else{var z=_(e),k=z==E||\\\\\\\"[object GeneratorFunction]\\\\\\\"==z;if(y(e))return l(e,I);if(z==S||z==M||k&&!O){if(R=F||k?{}:g(e),!I)return F?u(e,a(R,e)):h(e,o(R,e))}else{if(!C[z])return O?e:{};R=f(e,z,I)}}P||(P=new i);var U=P.get(e);if(U)return U;P.set(e,R),w(e)?e.forEach((function(i){R.add(t(i,n,N,i,e,P))})):x(e)&&e.forEach((function(i,s){R.set(s,t(i,n,N,s,e,P))}));var G=B?void 0:(D?F?p:d:F?A:T)(e);return s(G||e,(function(i,s){G&&(i=e[s=i]),r(R,s,t(i,n,N,s,e,P))})),R}},function(t,e){t.exports=function(t,e){return t===e||t!=t&&e!=e}},function(t,e,n){var i=n(97),s=n(88);t.exports=function(t){if(!s(t))return!1;var e=i(t);return\\\\\\\"[object Function]\\\\\\\"==e||\\\\\\\"[object GeneratorFunction]\\\\\\\"==e||\\\\\\\"[object AsyncFunction]\\\\\\\"==e||\\\\\\\"[object Proxy]\\\\\\\"==e}},function(t,e,n){(function(e){var n=\\\\\\\"object\\\\\\\"==typeof e&&e&&e.Object===Object&&e;t.exports=n}).call(this,n(98))},function(t,e){var n=Function.prototype.toString;t.exports=function(t){if(null!=t){try{return n.call(t)}catch(t){}try{return t+\\\\\\\"\\\\\\\"}catch(t){}}return\\\\\\\"\\\\\\\"}},function(t,e,n){var i=n(122),s=n(117),r=Object.prototype.hasOwnProperty;t.exports=function(t,e,n){var o=t[e];r.call(t,e)&&s(o,n)&&(void 0!==n||e in t)||i(t,e,n)}},function(t,e,n){var i=n(168);t.exports=function(t,e,n){\\\\\\\"__proto__\\\\\\\"==e&&i?i(t,e,{configurable:!0,enumerable:!0,value:n,writable:!0}):t[e]=n}},function(t,e,n){var i=n(170),s=n(171),r=n(105),o=n(124),a=n(174),l=n(175),c=Object.prototype.hasOwnProperty;t.exports=function(t,e){var n=r(t),h=!n&&s(t),u=!n&&!h&&o(t),d=!n&&!h&&!u&&l(t),p=n||h||u||d,_=p?i(t.length,String):[],m=_.length;for(var f in t)!e&&!c.call(t,f)||p&&(\\\\\\\"length\\\\\\\"==f||u&&(\\\\\\\"offset\\\\\\\"==f||\\\\\\\"parent\\\\\\\"==f)||d&&(\\\\\\\"buffer\\\\\\\"==f||\\\\\\\"byteLength\\\\\\\"==f||\\\\\\\"byteOffset\\\\\\\"==f)||a(f,m))||_.push(f);return _}},function(t,e,n){(function(t){var i=n(68),s=n(173),r=e&&!e.nodeType&&e,o=r&&\\\\\\\"object\\\\\\\"==typeof t&&t&&!t.nodeType&&t,a=o&&o.exports===r?i.Buffer:void 0,l=(a?a.isBuffer:void 0)||s;t.exports=l}).call(this,n(106)(t))},function(t,e){t.exports=function(t){return\\\\\\\"number\\\\\\\"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991}},function(t,e){t.exports=function(t,e){return function(n){return t(e(n))}}},function(t,e,n){var i=n(118),s=n(125);t.exports=function(t){return null!=t&&s(t.length)&&!i(t)}},function(t,e){t.exports=function(){return[]}},function(t,e,n){var i=n(130),s=n(131),r=n(111),o=n(128),a=Object.getOwnPropertySymbols?function(t){for(var e=[];t;)i(e,r(t)),t=s(t);return e}:o;t.exports=a},function(t,e){t.exports=function(t,e){for(var n=-1,i=e.length,s=t.length;++n<i;)t[s+n]=e[n];return t}},function(t,e,n){var i=n(126)(Object.getPrototypeOf,Object);t.exports=i},function(t,e,n){var i=n(130),s=n(105);t.exports=function(t,e,n){var r=e(t);return s(t)?r:i(r,n(t))}},function(t,e,n){\\\\\\\"use strict\\\\\\\";Object.defineProperty(e,\\\\\\\"__esModule\\\\\\\",{value:!0}),e.loop=e.conditional=e.parse=void 0;e.parse=function t(e,n){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},s=arguments.length>3&&void 0!==arguments[3]?arguments[3]:i;if(Array.isArray(n))n.forEach((function(n){return t(e,n,i,s)}));else if(\\\\\\\"function\\\\\\\"==typeof n)n(e,i,s,t);else{var r=Object.keys(n)[0];Array.isArray(n[r])?(s[r]={},t(e,n[r],i,s[r])):s[r]=n[r](e,i,s,t)}return i};e.conditional=function(t,e){return function(n,i,s,r){e(n,i,s)&&r(n,t,i,s)}};e.loop=function(t,e){return function(n,i,s,r){for(var o=[],a=n.pos;e(n,i,s);){var l={};if(r(n,t,i,l),n.pos===a)break;a=n.pos,o.push(l)}return o}}},function(t,e,n){\\\\\\\"use strict\\\\\\\";Object.defineProperty(e,\\\\\\\"__esModule\\\\\\\",{value:!0}),e.readBits=e.readArray=e.readUnsigned=e.readString=e.peekBytes=e.readBytes=e.peekByte=e.readByte=e.buildStream=void 0;e.buildStream=function(t){return{data:t,pos:0}};var i=function(){return function(t){return t.data[t.pos++]}};e.readByte=i;e.peekByte=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return function(e){return e.data[e.pos+t]}};var s=function(t){return function(e){return e.data.subarray(e.pos,e.pos+=t)}};e.readBytes=s;e.peekBytes=function(t){return function(e){return e.data.subarray(e.pos,e.pos+t)}};e.readString=function(t){return function(e){return Array.from(s(t)(e)).map((function(t){return String.fromCharCode(t)})).join(\\\\\\\"\\\\\\\")}};e.readUnsigned=function(t){return function(e){var n=s(2)(e);return t?(n[1]<<8)+n[0]:(n[0]<<8)+n[1]}};e.readArray=function(t,e){return function(n,i,r){for(var o=\\\\\\\"function\\\\\\\"==typeof e?e(n,i,r):e,a=s(t),l=new Array(o),c=0;c<o;c++)l[c]=a(n);return l}};e.readBits=function(t){return function(e){for(var n=function(t){return t.data[t.pos++]}(e),i=new Array(8),s=0;s<8;s++)i[7-s]=!!(n&1<<s);return Object.keys(t).reduce((function(e,n){var s=t[n];return s.length?e[n]=function(t,e,n){for(var i=0,s=0;s<n;s++)i+=t[e+s]&&Math.pow(2,n-s-1);return i}(i,s.index,s.length):e[n]=i[s.index],e}),{})}}},function(t,e,n){var i=n(116);t.exports=function(t){return i(t,5)}},function(t,e,n){var i=n(116);t.exports=function(t){return i(t,4)}},function(t,e,n){var i=n(95),s=n(143),r=n(144),o=n(145),a=n(146),l=n(147);function c(t){var e=this.__data__=new i(t);this.size=e.size}c.prototype.clear=s,c.prototype.delete=r,c.prototype.get=o,c.prototype.has=a,c.prototype.set=l,t.exports=c},function(t,e){t.exports=function(){this.__data__=[],this.size=0}},function(t,e,n){var i=n(96),s=Array.prototype.splice;t.exports=function(t){var e=this.__data__,n=i(e,t);return!(n<0)&&(n==e.length-1?e.pop():s.call(e,n,1),--this.size,!0)}},function(t,e,n){var i=n(96);t.exports=function(t){var e=this.__data__,n=i(e,t);return n<0?void 0:e[n][1]}},function(t,e,n){var i=n(96);t.exports=function(t){return i(this.__data__,t)>-1}},function(t,e,n){var i=n(96);t.exports=function(t,e){var n=this.__data__,s=i(n,t);return s<0?(++this.size,n.push([t,e])):n[s][1]=e,this}},function(t,e,n){var i=n(95);t.exports=function(){this.__data__=new i,this.size=0}},function(t,e){t.exports=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n}},function(t,e){t.exports=function(t){return this.__data__.get(t)}},function(t,e){t.exports=function(t){return this.__data__.has(t)}},function(t,e,n){var i=n(95),s=n(102),r=n(154);t.exports=function(t,e){var n=this.__data__;if(n instanceof i){var o=n.__data__;if(!s||o.length<199)return o.push([t,e]),this.size=++n.size,this;n=this.__data__=new r(o)}return n.set(t,e),this.size=n.size,this}},function(t,e,n){var i=n(118),s=n(151),r=n(88),o=n(120),a=/^\\\\[object .+?Constructor\\\\]$/,l=Function.prototype,c=Object.prototype,h=l.toString,u=c.hasOwnProperty,d=RegExp(\\\\\\\"^\\\\\\\"+h.call(u).replace(/[\\\\\\\\^$.*+?()[\\\\]{}|]/g,\\\\\\\"\\\\\\\\$&\\\\\\\").replace(/hasOwnProperty|(function).*?(?=\\\\\\\\\\\\()| for .+?(?=\\\\\\\\\\\\])/g,\\\\\\\"$1.*?\\\\\\\")+\\\\\\\"$\\\\\\\");t.exports=function(t){return!(!r(t)||s(t))&&(i(t)?d:a).test(o(t))}},function(t,e,n){var i=n(103),s=Object.prototype,r=s.hasOwnProperty,o=s.toString,a=i?i.toStringTag:void 0;t.exports=function(t){var e=r.call(t,a),n=t[a];try{t[a]=void 0;var i=!0}catch(t){}var s=o.call(t);return i&&(e?t[a]=n:delete t[a]),s}},function(t,e){var n=Object.prototype.toString;t.exports=function(t){return n.call(t)}},function(t,e,n){var i,s=n(152),r=(i=/[^.]+$/.exec(s&&s.keys&&s.keys.IE_PROTO||\\\\\\\"\\\\\\\"))?\\\\\\\"Symbol(src)_1.\\\\\\\"+i:\\\\\\\"\\\\\\\";t.exports=function(t){return!!r&&r in t}},function(t,e,n){var i=n(68)[\\\\\\\"__core-js_shared__\\\\\\\"];t.exports=i},function(t,e){t.exports=function(t,e){return null==t?void 0:t[e]}},function(t,e,n){var i=n(155),s=n(162),r=n(164),o=n(165),a=n(166);function l(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var i=t[e];this.set(i[0],i[1])}}l.prototype.clear=i,l.prototype.delete=s,l.prototype.get=r,l.prototype.has=o,l.prototype.set=a,t.exports=l},function(t,e,n){var i=n(156),s=n(95),r=n(102);t.exports=function(){this.size=0,this.__data__={hash:new i,map:new(r||s),string:new i}}},function(t,e,n){var i=n(157),s=n(158),r=n(159),o=n(160),a=n(161);function l(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var i=t[e];this.set(i[0],i[1])}}l.prototype.clear=i,l.prototype.delete=s,l.prototype.get=r,l.prototype.has=o,l.prototype.set=a,t.exports=l},function(t,e,n){var i=n(99);t.exports=function(){this.__data__=i?i(null):{},this.size=0}},function(t,e){t.exports=function(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}},function(t,e,n){var i=n(99),s=Object.prototype.hasOwnProperty;t.exports=function(t){var e=this.__data__;if(i){var n=e[t];return\\\\\\\"__lodash_hash_undefined__\\\\\\\"===n?void 0:n}return s.call(e,t)?e[t]:void 0}},function(t,e,n){var i=n(99),s=Object.prototype.hasOwnProperty;t.exports=function(t){var e=this.__data__;return i?void 0!==e[t]:s.call(e,t)}},function(t,e,n){var i=n(99);t.exports=function(t,e){var n=this.__data__;return this.size+=this.has(t)?0:1,n[t]=i&&void 0===e?\\\\\\\"__lodash_hash_undefined__\\\\\\\":e,this}},function(t,e,n){var i=n(100);t.exports=function(t){var e=i(this,t).delete(t);return this.size-=e?1:0,e}},function(t,e){t.exports=function(t){var e=typeof t;return\\\\\\\"string\\\\\\\"==e||\\\\\\\"number\\\\\\\"==e||\\\\\\\"symbol\\\\\\\"==e||\\\\\\\"boolean\\\\\\\"==e?\\\\\\\"__proto__\\\\\\\"!==t:null===t}},function(t,e,n){var i=n(100);t.exports=function(t){return i(this,t).get(t)}},function(t,e,n){var i=n(100);t.exports=function(t){return i(this,t).has(t)}},function(t,e,n){var i=n(100);t.exports=function(t,e){var n=i(this,t),s=n.size;return n.set(t,e),this.size+=n.size==s?0:1,this}},function(t,e){t.exports=function(t,e){for(var n=-1,i=null==t?0:t.length;++n<i&&!1!==e(t[n],n,t););return t}},function(t,e,n){var i=n(84),s=function(){try{var t=i(Object,\\\\\\\"defineProperty\\\\\\\");return t({},\\\\\\\"\\\\\\\",{}),t}catch(t){}}();t.exports=s},function(t,e,n){var i=n(101),s=n(104);t.exports=function(t,e){return t&&i(e,s(e),t)}},function(t,e){t.exports=function(t,e){for(var n=-1,i=Array(t);++n<t;)i[n]=e(n);return i}},function(t,e,n){var i=n(172),s=n(89),r=Object.prototype,o=r.hasOwnProperty,a=r.propertyIsEnumerable,l=i(function(){return arguments}())?i:function(t){return s(t)&&o.call(t,\\\\\\\"callee\\\\\\\")&&!a.call(t,\\\\\\\"callee\\\\\\\")};t.exports=l},function(t,e,n){var i=n(97),s=n(89);t.exports=function(t){return s(t)&&\\\\\\\"[object Arguments]\\\\\\\"==i(t)}},function(t,e){t.exports=function(){return!1}},function(t,e){var n=/^(?:0|[1-9]\\\\d*)$/;t.exports=function(t,e){var i=typeof t;return!!(e=null==e?9007199254740991:e)&&(\\\\\\\"number\\\\\\\"==i||\\\\\\\"symbol\\\\\\\"!=i&&n.test(t))&&t>-1&&t%1==0&&t<e}},function(t,e,n){var i=n(176),s=n(107),r=n(108),o=r&&r.isTypedArray,a=o?s(o):i;t.exports=a},function(t,e,n){var i=n(97),s=n(125),r=n(89),o={};o[\\\\\\\"[object Float32Array]\\\\\\\"]=o[\\\\\\\"[object Float64Array]\\\\\\\"]=o[\\\\\\\"[object Int8Array]\\\\\\\"]=o[\\\\\\\"[object Int16Array]\\\\\\\"]=o[\\\\\\\"[object Int32Array]\\\\\\\"]=o[\\\\\\\"[object Uint8Array]\\\\\\\"]=o[\\\\\\\"[object Uint8ClampedArray]\\\\\\\"]=o[\\\\\\\"[object Uint16Array]\\\\\\\"]=o[\\\\\\\"[object Uint32Array]\\\\\\\"]=!0,o[\\\\\\\"[object Arguments]\\\\\\\"]=o[\\\\\\\"[object Array]\\\\\\\"]=o[\\\\\\\"[object ArrayBuffer]\\\\\\\"]=o[\\\\\\\"[object Boolean]\\\\\\\"]=o[\\\\\\\"[object DataView]\\\\\\\"]=o[\\\\\\\"[object Date]\\\\\\\"]=o[\\\\\\\"[object Error]\\\\\\\"]=o[\\\\\\\"[object Function]\\\\\\\"]=o[\\\\\\\"[object Map]\\\\\\\"]=o[\\\\\\\"[object Number]\\\\\\\"]=o[\\\\\\\"[object Object]\\\\\\\"]=o[\\\\\\\"[object RegExp]\\\\\\\"]=o[\\\\\\\"[object Set]\\\\\\\"]=o[\\\\\\\"[object String]\\\\\\\"]=o[\\\\\\\"[object WeakMap]\\\\\\\"]=!1,t.exports=function(t){return r(t)&&s(t.length)&&!!o[i(t)]}},function(t,e,n){var i=n(109),s=n(178),r=Object.prototype.hasOwnProperty;t.exports=function(t){if(!i(t))return s(t);var e=[];for(var n in Object(t))r.call(t,n)&&\\\\\\\"constructor\\\\\\\"!=n&&e.push(n);return e}},function(t,e,n){var i=n(126)(Object.keys,Object);t.exports=i},function(t,e,n){var i=n(101),s=n(110);t.exports=function(t,e){return t&&i(e,s(e),t)}},function(t,e,n){var i=n(88),s=n(109),r=n(181),o=Object.prototype.hasOwnProperty;t.exports=function(t){if(!i(t))return r(t);var e=s(t),n=[];for(var a in t)(\\\\\\\"constructor\\\\\\\"!=a||!e&&o.call(t,a))&&n.push(a);return n}},function(t,e){t.exports=function(t){var e=[];if(null!=t)for(var n in Object(t))e.push(n);return e}},function(t,e,n){(function(t){var i=n(68),s=e&&!e.nodeType&&e,r=s&&\\\\\\\"object\\\\\\\"==typeof t&&t&&!t.nodeType&&t,o=r&&r.exports===s?i.Buffer:void 0,a=o?o.allocUnsafe:void 0;t.exports=function(t,e){if(e)return t.slice();var n=t.length,i=a?a(n):new t.constructor(n);return t.copy(i),i}}).call(this,n(106)(t))},function(t,e){t.exports=function(t,e){var n=-1,i=t.length;for(e||(e=Array(i));++n<i;)e[n]=t[n];return e}},function(t,e,n){var i=n(101),s=n(111);t.exports=function(t,e){return i(t,s(t),e)}},function(t,e){t.exports=function(t,e){for(var n=-1,i=null==t?0:t.length,s=0,r=[];++n<i;){var o=t[n];e(o,n,t)&&(r[s++]=o)}return r}},function(t,e,n){var i=n(101),s=n(129);t.exports=function(t,e){return i(t,s(t),e)}},function(t,e,n){var i=n(132),s=n(111),r=n(104);t.exports=function(t){return i(t,r,s)}},function(t,e,n){var i=n(132),s=n(129),r=n(110);t.exports=function(t){return i(t,r,s)}},function(t,e,n){var i=n(84)(n(68),\\\\\\\"DataView\\\\\\\");t.exports=i},function(t,e,n){var i=n(84)(n(68),\\\\\\\"Promise\\\\\\\");t.exports=i},function(t,e,n){var i=n(84)(n(68),\\\\\\\"Set\\\\\\\");t.exports=i},function(t,e,n){var i=n(84)(n(68),\\\\\\\"WeakMap\\\\\\\");t.exports=i},function(t,e){var n=Object.prototype.hasOwnProperty;t.exports=function(t){var e=t.length,i=new t.constructor(e);return e&&\\\\\\\"string\\\\\\\"==typeof t[0]&&n.call(t,\\\\\\\"index\\\\\\\")&&(i.index=t.index,i.input=t.input),i}},function(t,e,n){var i=n(113),s=n(196),r=n(197),o=n(198),a=n(199);t.exports=function(t,e,n){var l=t.constructor;switch(e){case\\\\\\\"[object ArrayBuffer]\\\\\\\":return i(t);case\\\\\\\"[object Boolean]\\\\\\\":case\\\\\\\"[object Date]\\\\\\\":return new l(+t);case\\\\\\\"[object DataView]\\\\\\\":return s(t,n);case\\\\\\\"[object Float32Array]\\\\\\\":case\\\\\\\"[object Float64Array]\\\\\\\":case\\\\\\\"[object Int8Array]\\\\\\\":case\\\\\\\"[object Int16Array]\\\\\\\":case\\\\\\\"[object Int32Array]\\\\\\\":case\\\\\\\"[object Uint8Array]\\\\\\\":case\\\\\\\"[object Uint8ClampedArray]\\\\\\\":case\\\\\\\"[object Uint16Array]\\\\\\\":case\\\\\\\"[object Uint32Array]\\\\\\\":return a(t,n);case\\\\\\\"[object Map]\\\\\\\":return new l;case\\\\\\\"[object Number]\\\\\\\":case\\\\\\\"[object String]\\\\\\\":return new l(t);case\\\\\\\"[object RegExp]\\\\\\\":return r(t);case\\\\\\\"[object Set]\\\\\\\":return new l;case\\\\\\\"[object Symbol]\\\\\\\":return o(t)}}},function(t,e,n){var i=n(68).Uint8Array;t.exports=i},function(t,e,n){var i=n(113);t.exports=function(t,e){var n=e?i(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}},function(t,e){var n=/\\\\w*$/;t.exports=function(t){var e=new t.constructor(t.source,n.exec(t));return e.lastIndex=t.lastIndex,e}},function(t,e,n){var i=n(103),s=i?i.prototype:void 0,r=s?s.valueOf:void 0;t.exports=function(t){return r?Object(r.call(t)):{}}},function(t,e,n){var i=n(113);t.exports=function(t,e){var n=e?i(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}},function(t,e,n){var i=n(201),s=n(131),r=n(109);t.exports=function(t){return\\\\\\\"function\\\\\\\"!=typeof t.constructor||r(t)?{}:i(s(t))}},function(t,e,n){var i=n(88),s=Object.create,r=function(){function t(){}return function(e){if(!i(e))return{};if(s)return s(e);t.prototype=e;var n=new t;return t.prototype=void 0,n}}();t.exports=r},function(t,e,n){var i=n(203),s=n(107),r=n(108),o=r&&r.isMap,a=o?s(o):i;t.exports=a},function(t,e,n){var i=n(112),s=n(89);t.exports=function(t){return s(t)&&\\\\\\\"[object Map]\\\\\\\"==i(t)}},function(t,e,n){var i=n(205),s=n(107),r=n(108),o=r&&r.isSet,a=o?s(o):i;t.exports=a},function(t,e,n){var i=n(112),s=n(89);t.exports=function(t){return s(t)&&\\\\\\\"[object Set]\\\\\\\"==i(t)}},function(t,e,n){\\\\\\\"use strict\\\\\\\";Object.defineProperty(e,\\\\\\\"__esModule\\\\\\\",{value:!0}),e.default=void 0;var i=n(133),s=n(134),r={blocks:function(t){for(var e=[],n=t.data.length,i=0,r=(0,s.readByte)()(t);0!==r&&r;r=(0,s.readByte)()(t)){if(t.pos+r>=n){var o=n-t.pos;e.push((0,s.readBytes)(o)(t)),i+=o;break}e.push((0,s.readBytes)(r)(t)),i+=r}for(var a=new Uint8Array(i),l=0,c=0;c<e.length;c++)a.set(e[c],l),l+=e[c].length;return a}},o=(0,i.conditional)({gce:[{codes:(0,s.readBytes)(2)},{byteSize:(0,s.readByte)()},{extras:(0,s.readBits)({future:{index:0,length:3},disposal:{index:3,length:3},userInput:{index:6},transparentColorGiven:{index:7}})},{delay:(0,s.readUnsigned)(!0)},{transparentColorIndex:(0,s.readByte)()},{terminator:(0,s.readByte)()}]},(function(t){var e=(0,s.peekBytes)(2)(t);return 33===e[0]&&249===e[1]})),a=(0,i.conditional)({image:[{code:(0,s.readByte)()},{descriptor:[{left:(0,s.readUnsigned)(!0)},{top:(0,s.readUnsigned)(!0)},{width:(0,s.readUnsigned)(!0)},{height:(0,s.readUnsigned)(!0)},{lct:(0,s.readBits)({exists:{index:0},interlaced:{index:1},sort:{index:2},future:{index:3,length:2},size:{index:5,length:3}})}]},(0,i.conditional)({lct:(0,s.readArray)(3,(function(t,e,n){return Math.pow(2,n.descriptor.lct.size+1)}))},(function(t,e,n){return n.descriptor.lct.exists})),{data:[{minCodeSize:(0,s.readByte)()},r]}]},(function(t){return 44===(0,s.peekByte)()(t)})),l=(0,i.conditional)({text:[{codes:(0,s.readBytes)(2)},{blockSize:(0,s.readByte)()},{preData:function(t,e,n){return(0,s.readBytes)(n.text.blockSize)(t)}},r]},(function(t){var e=(0,s.peekBytes)(2)(t);return 33===e[0]&&1===e[1]})),c=(0,i.conditional)({application:[{codes:(0,s.readBytes)(2)},{blockSize:(0,s.readByte)()},{id:function(t,e,n){return(0,s.readString)(n.blockSize)(t)}},r]},(function(t){var e=(0,s.peekBytes)(2)(t);return 33===e[0]&&255===e[1]})),h=(0,i.conditional)({comment:[{codes:(0,s.readBytes)(2)},r]},(function(t){var e=(0,s.peekBytes)(2)(t);return 33===e[0]&&254===e[1]})),u=[{header:[{signature:(0,s.readString)(3)},{version:(0,s.readString)(3)}]},{lsd:[{width:(0,s.readUnsigned)(!0)},{height:(0,s.readUnsigned)(!0)},{gct:(0,s.readBits)({exists:{index:0},resolution:{index:1,length:3},sort:{index:4},size:{index:5,length:3}})},{backgroundColorIndex:(0,s.readByte)()},{pixelAspectRatio:(0,s.readByte)()}]},(0,i.conditional)({gct:(0,s.readArray)(3,(function(t,e){return Math.pow(2,e.lsd.gct.size+1)}))},(function(t,e){return e.lsd.gct.exists})),{frames:(0,i.loop)([o,c,h,a,l],(function(t){var e=(0,s.peekByte)()(t);return 33===e||44===e}))}];e.default=u},function(t,e,n){\\\\\\\"use strict\\\\\\\";Object.defineProperty(e,\\\\\\\"__esModule\\\\\\\",{value:!0}),e.deinterlace=void 0;e.deinterlace=function(t,e){for(var n=new Array(t.length),i=t.length/e,s=function(i,s){var r=t.slice(s*e,(s+1)*e);n.splice.apply(n,[i*e,e].concat(r))},r=[0,4,2,1],o=[8,8,4,2],a=0,l=0;l<4;l++)for(var c=r[l];c<i;c+=o[l])s(c,a),a++;return n}},function(t,e,n){\\\\\\\"use strict\\\\\\\";Object.defineProperty(e,\\\\\\\"__esModule\\\\\\\",{value:!0}),e.lzw=void 0;e.lzw=function(t,e,n){var i,s,r,o,a,l,c,h,u,d,p,_,m,f,g,v,y=4096,x=n,b=new Array(n),w=new Array(y),T=new Array(y),A=new Array(4097);for(a=(s=1<<(d=t))+1,i=s+2,c=-1,r=(1<<(o=d+1))-1,h=0;h<s;h++)w[h]=0,T[h]=h;for(p=_=m=f=g=v=0,u=0;u<x;){if(0===f){if(_<o){p+=e[v]<<_,_+=8,v++;continue}if(h=p&r,p>>=o,_-=o,h>i||h==a)break;if(h==s){r=(1<<(o=d+1))-1,i=s+2,c=-1;continue}if(-1==c){A[f++]=T[h],c=h,m=h;continue}for(l=h,h==i&&(A[f++]=m,h=c);h>s;)A[f++]=T[h],h=w[h];m=255&T[h],A[f++]=m,i<y&&(w[i]=c,T[i]=m,0==(++i&r)&&i<y&&(o++,r+=i)),c=l}f--,b[g++]=A[f],u++}for(u=g;u<x;u++)b[u]=0;return b}},,,,,,,,function(t,e,n){\\\\\\\"use strict\\\\\\\";n.r(e),n.d(e,\\\\\\\"PolyScene\\\\\\\",(function(){return Fl})),n.d(e,\\\\\\\"Poly\\\\\\\",(function(){return li})),n.d(e,\\\\\\\"SceneJsonImporter\\\\\\\",(function(){return Jl})),n.d(e,\\\\\\\"SceneDataManifestImporter\\\\\\\",(function(){return Zl})),n.d(e,\\\\\\\"mountScene\\\\\\\",(function(){return Kl}));var i={};n.r(i),n.d(i,\\\\\\\"ShadowMaterial\\\\\\\",(function(){return Hf})),n.d(i,\\\\\\\"SpriteMaterial\\\\\\\",(function(){return jf})),n.d(i,\\\\\\\"RawShaderMaterial\\\\\\\",(function(){return at})),n.d(i,\\\\\\\"ShaderMaterial\\\\\\\",(function(){return F})),n.d(i,\\\\\\\"PointsMaterial\\\\\\\",(function(){return bs.a})),n.d(i,\\\\\\\"MeshPhysicalMaterial\\\\\\\",(function(){return Wf.a})),n.d(i,\\\\\\\"MeshStandardMaterial\\\\\\\",(function(){return ws.a})),n.d(i,\\\\\\\"MeshPhongMaterial\\\\\\\",(function(){return qf.a})),n.d(i,\\\\\\\"MeshToonMaterial\\\\\\\",(function(){return Xf})),n.d(i,\\\\\\\"MeshNormalMaterial\\\\\\\",(function(){return Yf})),n.d(i,\\\\\\\"MeshLambertMaterial\\\\\\\",(function(){return Ts.a})),n.d(i,\\\\\\\"MeshDepthMaterial\\\\\\\",(function(){return Sn})),n.d(i,\\\\\\\"MeshDistanceMaterial\\\\\\\",(function(){return Cn})),n.d(i,\\\\\\\"MeshBasicMaterial\\\\\\\",(function(){return lt.a})),n.d(i,\\\\\\\"MeshMatcapMaterial\\\\\\\",(function(){return $f})),n.d(i,\\\\\\\"LineDashedMaterial\\\\\\\",(function(){return Jf})),n.d(i,\\\\\\\"LineBasicMaterial\\\\\\\",(function(){return As.a})),n.d(i,\\\\\\\"Material\\\\\\\",(function(){return O.a}));var s={};n.r(s),n.d(s,\\\\\\\"BoxGeometry\\\\\\\",(function(){return N})),n.d(s,\\\\\\\"BoxBufferGeometry\\\\\\\",(function(){return N})),n.d(s,\\\\\\\"CircleGeometry\\\\\\\",(function(){return hJ})),n.d(s,\\\\\\\"CircleBufferGeometry\\\\\\\",(function(){return hJ})),n.d(s,\\\\\\\"ConeGeometry\\\\\\\",(function(){return lG})),n.d(s,\\\\\\\"ConeBufferGeometry\\\\\\\",(function(){return lG})),n.d(s,\\\\\\\"CylinderGeometry\\\\\\\",(function(){return aG})),n.d(s,\\\\\\\"CylinderBufferGeometry\\\\\\\",(function(){return aG})),n.d(s,\\\\\\\"DodecahedronGeometry\\\\\\\",(function(){return uJ})),n.d(s,\\\\\\\"DodecahedronBufferGeometry\\\\\\\",(function(){return uJ})),n.d(s,\\\\\\\"EdgesGeometry\\\\\\\",(function(){return fJ})),n.d(s,\\\\\\\"ExtrudeGeometry\\\\\\\",(function(){return yJ})),n.d(s,\\\\\\\"ExtrudeBufferGeometry\\\\\\\",(function(){return yJ})),n.d(s,\\\\\\\"IcosahedronGeometry\\\\\\\",(function(){return bJ})),n.d(s,\\\\\\\"IcosahedronBufferGeometry\\\\\\\",(function(){return bJ})),n.d(s,\\\\\\\"LatheGeometry\\\\\\\",(function(){return wJ})),n.d(s,\\\\\\\"LatheBufferGeometry\\\\\\\",(function(){return wJ})),n.d(s,\\\\\\\"OctahedronGeometry\\\\\\\",(function(){return YU})),n.d(s,\\\\\\\"OctahedronBufferGeometry\\\\\\\",(function(){return YU})),n.d(s,\\\\\\\"PlaneGeometry\\\\\\\",(function(){return L})),n.d(s,\\\\\\\"PlaneBufferGeometry\\\\\\\",(function(){return L})),n.d(s,\\\\\\\"PolyhedronGeometry\\\\\\\",(function(){return XU})),n.d(s,\\\\\\\"PolyhedronBufferGeometry\\\\\\\",(function(){return XU})),n.d(s,\\\\\\\"RingGeometry\\\\\\\",(function(){return TJ})),n.d(s,\\\\\\\"RingBufferGeometry\\\\\\\",(function(){return TJ})),n.d(s,\\\\\\\"ShapeGeometry\\\\\\\",(function(){return AJ})),n.d(s,\\\\\\\"ShapeBufferGeometry\\\\\\\",(function(){return AJ})),n.d(s,\\\\\\\"SphereGeometry\\\\\\\",(function(){return tG})),n.d(s,\\\\\\\"SphereBufferGeometry\\\\\\\",(function(){return tG})),n.d(s,\\\\\\\"TetrahedronGeometry\\\\\\\",(function(){return MJ})),n.d(s,\\\\\\\"TetrahedronBufferGeometry\\\\\\\",(function(){return MJ})),n.d(s,\\\\\\\"TorusGeometry\\\\\\\",(function(){return EJ})),n.d(s,\\\\\\\"TorusBufferGeometry\\\\\\\",(function(){return EJ})),n.d(s,\\\\\\\"TorusKnotGeometry\\\\\\\",(function(){return SJ})),n.d(s,\\\\\\\"TorusKnotBufferGeometry\\\\\\\",(function(){return SJ})),n.d(s,\\\\\\\"TubeGeometry\\\\\\\",(function(){return NJ})),n.d(s,\\\\\\\"TubeBufferGeometry\\\\\\\",(function(){return NJ})),n.d(s,\\\\\\\"WireframeGeometry\\\\\\\",(function(){return LJ}));class r{constructor(t){this.scene=t,this._mainCameraNodePath=null}setMainCameraNodePath(t){this._mainCameraNodePath=t}mainCameraNodePath(){return this._mainCameraNodePath}mainCameraNode(){if(this.mainCameraNodePath){const t=this.mainCameraNodePath();if(!t)return this._find_any_camera();return this.scene.node(t)}return console.warn(\\\\\\\"main camera node not found\\\\\\\"),this._find_any_camera()}_find_any_camera(){const t=this.scene.root();return t.nodesByType(\\\\\\\"perspectiveCamera\\\\\\\")[0]||t.nodesByType(\\\\\\\"orthographicCamera\\\\\\\")[0]}}class o{constructor(t){this._scene=t,this._queue=new Map,this._block_level=0,this._process_item_bound=this._process_item.bind(this),this._block_level=0}block(){this._block_level+=1}unblock(){this._block_level-=1,this._block_level<0&&(this._block_level=0),this.process_queue()}get blocked(){return this._block_level>0}enqueue(t,e){this._queue.set(t.graphNodeId(),e)}process_queue(){this.blocked||this._queue.forEach(this._process_item_bound)}_process_item(t,e){const n=this._scene.graph.nodeFromId(e);n&&(this._queue.delete(e),n.dirtyController.runPostDirtyHooks(t))}}class a{constructor(){this._cooking_nodes_by_id=new Map,this._resolves=[]}addNode(t){this._cooking_nodes_by_id.set(t.graphNodeId(),t)}removeNode(t){this._cooking_nodes_by_id.delete(t.graphNodeId()),0==this._cooking_nodes_by_id.size&&this.flush()}cookingNodes(){const t=[];return this._cooking_nodes_by_id.forEach(((e,n)=>{t.push(e)})),t}flush(){let t;for(;t=this._resolves.pop();)t()}async waitForCooksCompleted(){return 0==this._cooking_nodes_by_id.size?void 0:new Promise(((t,e)=>{this._resolves.push(t)}))}}class l{constructor(){this._next_id=0,this._successors=new Map,this._predecessors=new Map,this._nodes_by_id=new Map,this._nodesCount=0,this._debugging=!1,this._addedNodesDuringDebugging=new Map}startDebugging(){this._debugging=!0,console.log(\\\\\\\"CoreGraph.startDebugging\\\\\\\",this._next_id)}stopDebugging(){this._debugging=!1,console.log(\\\\\\\"CoreGraph.stopDebugging\\\\\\\",this._next_id)}printDebug(){this._addedNodesDuringDebugging.forEach(((t,e)=>{console.log(e,t,t.graphPredecessors(),t.graphSuccessors())}))}setScene(t){this._scene=t}scene(){return this._scene}nextId(){return this._next_id+=1,this._next_id}nodesFromIds(t){const e=[];for(let n of t){const t=this.nodeFromId(n);t&&e.push(t)}return e}nodeFromId(t){return this._nodes_by_id.get(t)}hasNode(t){return null!=this._nodes_by_id.get(t.graphNodeId())}addNode(t){this._nodes_by_id.set(t.graphNodeId(),t),this._nodesCount+=1,this._debugging&&this._addedNodesDuringDebugging.set(t.graphNodeId(),t)}removeNode(t){this._nodes_by_id.delete(t.graphNodeId()),this._successors.delete(t.graphNodeId()),this._predecessors.delete(t.graphNodeId()),this._nodesCount-=1,this._debugging&&this._addedNodesDuringDebugging.delete(t.graphNodeId())}nodesCount(){return this._nodesCount}connect(t,e,n=!0){const i=t.graphNodeId(),s=e.graphNodeId();if(this.hasNode(t)&&this.hasNode(e)){if(n){n=!(!this._scene||this._scene.loadingController.isLoading())}let e=!1;return n&&(e=this._hasPredecessor(i,s)),!e&&(this._createConnection(i,s),t.dirtyController.clearSuccessorsCacheWithPredecessors(),!0)}return console.warn(`attempt to connect non existing node ${i} or ${s}`),!1}disconnect(t,e){this._remove_connection(t.graphNodeId(),e.graphNodeId()),t.dirtyController.clearSuccessorsCacheWithPredecessors()}disconnectPredecessors(t){const e=this.predecessors(t);for(let n of e)this.disconnect(n,t)}disconnectSuccessors(t){const e=this.successors(t);for(let n of e)this.disconnect(t,n)}predecessorIds(t){const e=this._predecessors.get(t);if(e){const t=[];return e.forEach(((e,n)=>{t.push(n)})),t}return[]}predecessors(t){const e=this.predecessorIds(t.graphNodeId());return this.nodesFromIds(e)}successorIds(t){const e=this._successors.get(t);if(e){const t=[];return e.forEach(((e,n)=>{t.push(n)})),t}return[]}successors(t){const e=this.successorIds(t.graphNodeId())||[];return this.nodesFromIds(e)}allPredecessorIds(t){return this.allNextIds(t,\\\\\\\"predecessorIds\\\\\\\")}allSuccessorIds(t){return this.allNextIds(t,\\\\\\\"successorIds\\\\\\\")}allPredecessors(t){const e=this.allPredecessorIds(t);return this.nodesFromIds(e)}allSuccessors(t){const e=this.allSuccessorIds(t);return this.nodesFromIds(e)}_createConnection(t,e){let n=this._successors.get(t);if(n||(n=new Set,this._successors.set(t,n)),n.has(e))return;n.add(e);let i=this._predecessors.get(e);i||(i=new Set,this._predecessors.set(e,i)),i.add(t)}_remove_connection(t,e){let n=this._successors.get(t);n&&(n.delete(e),0==n.size&&this._successors.delete(t));let i=this._predecessors.get(e);i&&(i.delete(t),0==i.size&&this._predecessors.delete(e))}allNextIds(t,e){const n=new Map,i=[];let s=this[e](t.graphNodeId());for(;s.length>0;){const t=[];for(let n of s)for(let i of this[e](n))t.push(i);for(let t of s)n.set(t,!0);for(let e of t)s.push(e);s=t}return n.forEach(((t,e)=>{i.push(e)})),i}_hasPredecessor(t,e){const n=this.predecessorIds(t);if(n){if(n.includes(e))return!0;for(let t of n)return this._hasPredecessor(t,e)}return!1}}class c{constructor(t){this._node=t,this._cooks_count=0,this._total_cook_time=0,this._total_inputs_time=0,this._total_params_time=0}update_cook_data(t){this._cooks_count+=1,this._total_cook_time+=t.cookTime,this._total_inputs_time+=t.inputsTime,this._total_params_time+=t.paramsTime}total_time(){return this._total_cook_time+this._total_inputs_time+this._total_params_time}total_cook_time(){return this._total_cook_time}cook_time_per_iteration(){return this._cooks_count>0?this._total_cook_time/this._cooks_count:0}total_inputs_time(){return this._total_inputs_time}inputs_time_per_iteration(){return this._cooks_count>0?this._total_inputs_time/this._cooks_count:0}total_params_time2(){return this._total_params_time}params_time_per_iteration2(){return this._cooks_count>0?this._total_params_time/this._cooks_count:0}cooks_count(){return this._cooks_count}print_object(){return{fullPath:this._node.path(),cooks_count:this.cooks_count(),total_time:this.total_time(),total_cook_time:this.total_cook_time(),cook_time_per_iteration:this.cook_time_per_iteration(),inputs_time_per_iteration:this.inputs_time_per_iteration(),params_time_per_iteration:this.params_time_per_iteration2()}}}class h{static arrayFromValues(t){const e=[];return t.forEach((t=>{e.push(t)})),e}static pushOnArrayAtEntry(t,e,n){t.has(e)?t.get(e).push(n):t.set(e,[n])}static addToSetAtEntry(t,e,n){if(t.has(e))t.get(e).add(n);else{const i=new Set;i.add(n),t.set(e,i)}}static popFromArrayAtEntry(t,e,n){if(t.has(e)){const i=t.get(e),s=i.indexOf(n);s>=0&&i.splice(s,1)}}static removeFromSetAtEntry(t,e,n){if(t.has(e)){const i=t.get(e);i.delete(n),0==i.size&&t.delete(e)}}static unshiftOnArrayAtEntry(t,e,n){t.has(e)?t.get(e).unshift(n):t.set(e,[n])}static concatOnArrayAtEntry(t,e,n){if(t.has(e)){let i=t.get(e);for(let t of n)i.push(t)}else t.set(e,n)}}class u{static toArray(t){const e=[];return t.forEach((t=>{e.push(t)})),e}static union(t,e){const n=new Set;return t.forEach((t=>n.add(t))),e.forEach((t=>n.add(t))),n}static intersection(t,e){const n=new Set;return t.forEach((t=>{e.has(t)&&n.add(t)})),e.forEach((e=>{t.has(e)&&n.add(e)})),n}static difference(t,e){const n=new Set;return t.forEach((t=>{e.has(t)||n.add(t)})),e.forEach((e=>{t.has(e)||n.add(e)})),n}}var d=n(2),p=n(0),_=n(9);class m{static isNumber(t){return\\\\\\\"number\\\\\\\"==typeof t}static isVector(t){return t instanceof d.a||t instanceof p.a||t instanceof _.a}static isString(t){return\\\\\\\"string\\\\\\\"==typeof t}static isBoolean(t){return!0===t||!1===t}static isNaN(t){return isNaN(t)}static isArray(t){return Array.isArray(t)}static isObject(t){var e=typeof t;return null!=t&&(\\\\\\\"object\\\\\\\"==e||\\\\\\\"function\\\\\\\"==e)}}class f{static shallowClone(t){return[...t]}static min(t){let e=t[0];for(let n of t)n<e&&(e=n);return e}static max(t){let e=t[0];for(let n of t)n>e&&(e=n);return e}static sum(t){let e=0;for(let n of t)e+=n;return e}static compact(t){const e=[];for(let n of t)null!=n&&e.push(n);return e}static uniq(t){const e=new Set;for(let n of t)e.add(n);const n=new Array(e.size);let i=0;return e.forEach((t=>{n[i]=t,i++})),n}static chunk(t,e){const n=[];let i=[];n.push(i);for(let s=0;s<t.length;s++)i.length==e&&(i=[],n.push(i)),i.push(t[s]);return n}static union(t,e){const n=[];return u.union(this.toSet(t),this.toSet(e)).forEach((t=>n.push(t))),n}static intersection(t,e){const n=[];return u.intersection(this.toSet(t),this.toSet(e)).forEach((t=>n.push(t))),n}static difference(t,e){const n=[];return u.difference(this.toSet(t),this.toSet(e)).forEach((t=>n.push(t))),n}static toSet(t){const e=new Set;for(let n of t)e.add(n);return e}static isEqual(t,e){if(t.length!=e.length)return!1;const n=t.length;for(let i=0;i<n;i++)if(t[i]!=e[i])return!1;return!0}static sortBy(t,e){if(0==t.length)return[];const n=new Map,i=new Set;for(let s of t){const t=e(s);i.add(t),h.pushOnArrayAtEntry(n,t,s)}const s=new Array(i.size);let r=0;i.forEach((t=>{s[r]=t,r++})),m.isString(s[0])?s.sort():s.sort(((t,e)=>t-e));const o=new Array(t.length);r=0;for(let t of s){const e=n.get(t);if(e)for(let t of e)o[r]=t,r++}return o}static range(t,e,n=1){null==e&&(e=t,t=0);const i=Math.floor((e-t)/n),s=new Array(i);for(let e=0;e<s.length;e++)s[e]=t+e*n;return s}}var g=n(135),v=n.n(g),y=n(136),x=n.n(y);class b{static isEqual(t,e){if(m.isObject(t)&&m.isObject(e)){const n=Object.keys(t),i=Object.keys(e);return!!f.isEqual(n,i)&&JSON.stringify(t)==JSON.stringify(e)}return!1}static merge(t,e){return Object.assign(t,e)}static clone(t){return x()(t)}static cloneDeep(t){return v()(t)}}var w=n(1),T=n(60),A=n(5);function M(){let t=null,e=!1,n=null,i=null;function s(e,r){n(e,r),i=t.requestAnimationFrame(s)}return{start:function(){!0!==e&&null!==n&&(i=t.requestAnimationFrame(s),e=!0)},stop:function(){t.cancelAnimationFrame(i),e=!1},setAnimationLoop:function(t){n=t},setContext:function(e){t=e}}}function E(t,e){const n=e.isWebGL2,i=new WeakMap;return{get:function(t){return t.isInterleavedBufferAttribute&&(t=t.data),i.get(t)},remove:function(e){e.isInterleavedBufferAttribute&&(e=e.data);const n=i.get(e);n&&(t.deleteBuffer(n.buffer),i.delete(e))},update:function(e,s){if(e.isGLBufferAttribute){const t=i.get(e);return void((!t||t.version<e.version)&&i.set(e,{buffer:e.buffer,type:e.type,bytesPerElement:e.elementSize,version:e.version}))}e.isInterleavedBufferAttribute&&(e=e.data);const r=i.get(e);void 0===r?i.set(e,function(e,i){const s=e.array,r=e.usage,o=t.createBuffer();t.bindBuffer(i,o),t.bufferData(i,s,r),e.onUploadCallback();let a=t.FLOAT;return s instanceof Float32Array?a=t.FLOAT:s instanceof Float64Array?console.warn(\\\\\\\"THREE.WebGLAttributes: Unsupported data buffer format: Float64Array.\\\\\\\"):s instanceof Uint16Array?e.isFloat16BufferAttribute?n?a=t.HALF_FLOAT:console.warn(\\\\\\\"THREE.WebGLAttributes: Usage of Float16BufferAttribute requires WebGL2.\\\\\\\"):a=t.UNSIGNED_SHORT:s instanceof Int16Array?a=t.SHORT:s instanceof Uint32Array?a=t.UNSIGNED_INT:s instanceof Int32Array?a=t.INT:s instanceof Int8Array?a=t.BYTE:(s instanceof Uint8Array||s instanceof Uint8ClampedArray)&&(a=t.UNSIGNED_BYTE),{buffer:o,type:a,bytesPerElement:s.BYTES_PER_ELEMENT,version:e.version}}(e,s)):r.version<e.version&&(!function(e,i,s){const r=i.array,o=i.updateRange;t.bindBuffer(s,e),-1===o.count?t.bufferSubData(s,0,r):(n?t.bufferSubData(s,o.offset*r.BYTES_PER_ELEMENT,r,o.offset,o.count):t.bufferSubData(s,o.offset*r.BYTES_PER_ELEMENT,r.subarray(o.offset,o.offset+o.count)),o.count=-1)}(r.buffer,e,s),r.version=e.version)}}}var S=n(7),C=n(4);class N extends S.a{constructor(t=1,e=1,n=1,i=1,s=1,r=1){super(),this.type=\\\\\\\"BoxGeometry\\\\\\\",this.parameters={width:t,height:e,depth:n,widthSegments:i,heightSegments:s,depthSegments:r};const o=this;i=Math.floor(i),s=Math.floor(s),r=Math.floor(r);const a=[],l=[],c=[],h=[];let u=0,d=0;function _(t,e,n,i,s,r,_,m,f,g,v){const y=r/f,x=_/g,b=r/2,w=_/2,T=m/2,A=f+1,M=g+1;let E=0,S=0;const C=new p.a;for(let r=0;r<M;r++){const o=r*x-w;for(let a=0;a<A;a++){const u=a*y-b;C[t]=u*i,C[e]=o*s,C[n]=T,l.push(C.x,C.y,C.z),C[t]=0,C[e]=0,C[n]=m>0?1:-1,c.push(C.x,C.y,C.z),h.push(a/f),h.push(1-r/g),E+=1}}for(let t=0;t<g;t++)for(let e=0;e<f;e++){const n=u+e+A*t,i=u+e+A*(t+1),s=u+(e+1)+A*(t+1),r=u+(e+1)+A*t;a.push(n,i,r),a.push(i,s,r),S+=6}o.addGroup(d,S,v),d+=S,u+=E}_(\\\\\\\"z\\\\\\\",\\\\\\\"y\\\\\\\",\\\\\\\"x\\\\\\\",-1,-1,n,e,t,r,s,0),_(\\\\\\\"z\\\\\\\",\\\\\\\"y\\\\\\\",\\\\\\\"x\\\\\\\",1,-1,n,e,-t,r,s,1),_(\\\\\\\"x\\\\\\\",\\\\\\\"z\\\\\\\",\\\\\\\"y\\\\\\\",1,1,t,n,e,i,r,2),_(\\\\\\\"x\\\\\\\",\\\\\\\"z\\\\\\\",\\\\\\\"y\\\\\\\",1,-1,t,n,-e,i,r,3),_(\\\\\\\"x\\\\\\\",\\\\\\\"y\\\\\\\",\\\\\\\"z\\\\\\\",1,-1,t,e,n,i,s,4),_(\\\\\\\"x\\\\\\\",\\\\\\\"y\\\\\\\",\\\\\\\"z\\\\\\\",-1,-1,t,e,-n,i,s,5),this.setIndex(a),this.setAttribute(\\\\\\\"position\\\\\\\",new C.c(l,3)),this.setAttribute(\\\\\\\"normal\\\\\\\",new C.c(c,3)),this.setAttribute(\\\\\\\"uv\\\\\\\",new C.c(h,2))}static fromJSON(t){return new N(t.width,t.height,t.depth,t.widthSegments,t.heightSegments,t.depthSegments)}}class L extends S.a{constructor(t=1,e=1,n=1,i=1){super(),this.type=\\\\\\\"PlaneGeometry\\\\\\\",this.parameters={width:t,height:e,widthSegments:n,heightSegments:i};const s=t/2,r=e/2,o=Math.floor(n),a=Math.floor(i),l=o+1,c=a+1,h=t/o,u=e/a,d=[],p=[],_=[],m=[];for(let t=0;t<c;t++){const e=t*u-r;for(let n=0;n<l;n++){const i=n*h-s;p.push(i,-e,0),_.push(0,0,1),m.push(n/o),m.push(1-t/a)}}for(let t=0;t<a;t++)for(let e=0;e<o;e++){const n=e+l*t,i=e+l*(t+1),s=e+1+l*(t+1),r=e+1+l*t;d.push(n,i,r),d.push(i,s,r)}this.setIndex(d),this.setAttribute(\\\\\\\"position\\\\\\\",new C.c(p,3)),this.setAttribute(\\\\\\\"normal\\\\\\\",new C.c(_,3)),this.setAttribute(\\\\\\\"uv\\\\\\\",new C.c(m,2))}static fromJSON(t){return new L(t.width,t.height,t.widthSegments,t.heightSegments)}}var O=n(12);function P(t){const e={};for(const n in t){e[n]={};for(const i in t[n]){const s=t[n][i];s&&(s.isColor||s.isMatrix3||s.isMatrix4||s.isVector2||s.isVector3||s.isVector4||s.isTexture||s.isQuaternion)?e[n][i]=s.clone():Array.isArray(s)?e[n][i]=s.slice():e[n][i]=s}}return e}function R(t){const e={};for(let n=0;n<t.length;n++){const i=P(t[n]);for(const t in i)e[t]=i[t]}return e}const I={clone:P,merge:R};class F extends O.a{constructor(t){super(),this.type=\\\\\\\"ShaderMaterial\\\\\\\",this.defines={},this.uniforms={},this.vertexShader=\\\\\\\"\\\\nvoid main() {\\\\n\\\\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\\\\n}\\\\n\\\\\\\",this.fragmentShader=\\\\\\\"\\\\nvoid main() {\\\\n\\\\tgl_FragColor = vec4( 1.0, 0.0, 0.0, 1.0 );\\\\n}\\\\n\\\\\\\",this.linewidth=1,this.wireframe=!1,this.wireframeLinewidth=1,this.fog=!1,this.lights=!1,this.clipping=!1,this.extensions={derivatives:!1,fragDepth:!1,drawBuffers:!1,shaderTextureLOD:!1},this.defaultAttributeValues={color:[1,1,1],uv:[0,0],uv2:[0,0]},this.index0AttributeName=void 0,this.uniformsNeedUpdate=!1,this.glslVersion=null,void 0!==t&&(void 0!==t.attributes&&console.error(\\\\\\\"THREE.ShaderMaterial: attributes should now be defined in THREE.BufferGeometry instead.\\\\\\\"),this.setValues(t))}copy(t){return super.copy(t),this.fragmentShader=t.fragmentShader,this.vertexShader=t.vertexShader,this.uniforms=P(t.uniforms),this.defines=Object.assign({},t.defines),this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.lights=t.lights,this.clipping=t.clipping,this.extensions=Object.assign({},t.extensions),this.glslVersion=t.glslVersion,this}toJSON(t){const e=super.toJSON(t);e.glslVersion=this.glslVersion,e.uniforms={};for(const n in this.uniforms){const i=this.uniforms[n].value;i&&i.isTexture?e.uniforms[n]={type:\\\\\\\"t\\\\\\\",value:i.toJSON(t).uuid}:i&&i.isColor?e.uniforms[n]={type:\\\\\\\"c\\\\\\\",value:i.getHex()}:i&&i.isVector2?e.uniforms[n]={type:\\\\\\\"v2\\\\\\\",value:i.toArray()}:i&&i.isVector3?e.uniforms[n]={type:\\\\\\\"v3\\\\\\\",value:i.toArray()}:i&&i.isVector4?e.uniforms[n]={type:\\\\\\\"v4\\\\\\\",value:i.toArray()}:i&&i.isMatrix3?e.uniforms[n]={type:\\\\\\\"m3\\\\\\\",value:i.toArray()}:i&&i.isMatrix4?e.uniforms[n]={type:\\\\\\\"m4\\\\\\\",value:i.toArray()}:e.uniforms[n]={value:i}}Object.keys(this.defines).length>0&&(e.defines=this.defines),e.vertexShader=this.vertexShader,e.fragmentShader=this.fragmentShader;const n={};for(const t in this.extensions)!0===this.extensions[t]&&(n[t]=!0);return Object.keys(n).length>0&&(e.extensions=n),e}}F.prototype.isShaderMaterial=!0;var D=n(6),B=n(14),z=\\\\\\\"\\\\n#ifdef USE_SHADOWMAP\\\\n\\\\n\\\\t#if NUM_DIR_LIGHT_SHADOWS > 0\\\\n\\\\n\\\\t\\\\tuniform sampler2D directionalShadowMap[ NUM_DIR_LIGHT_SHADOWS ];\\\\n\\\\t\\\\tvarying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHT_SHADOWS ];\\\\n\\\\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\\\\n\\\\t\\\\tuniform DirectionalLightShadow directionalLightShadows[ NUM_DIR_LIGHT_SHADOWS ];\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\t#if NUM_SPOT_LIGHT_SHADOWS > 0\\\\n\\\\n\\\\t\\\\tuniform sampler2D spotShadowMap[ NUM_SPOT_LIGHT_SHADOWS ];\\\\n\\\\t\\\\tvarying vec4 vSpotShadowCoord[ NUM_SPOT_LIGHT_SHADOWS ];\\\\n\\\\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\\\\n\\\\t\\\\tuniform SpotLightShadow spotLightShadows[ NUM_SPOT_LIGHT_SHADOWS ];\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\t#if NUM_POINT_LIGHT_SHADOWS > 0\\\\n\\\\n\\\\t\\\\tuniform sampler2D pointShadowMap[ NUM_POINT_LIGHT_SHADOWS ];\\\\n\\\\t\\\\tvarying vec4 vPointShadowCoord[ NUM_POINT_LIGHT_SHADOWS ];\\\\n\\\\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\\\\n\\\\t\\\\tuniform PointLightShadow pointLightShadows[ NUM_POINT_LIGHT_SHADOWS ];\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\t/*\\\\n\\\\t#if NUM_RECT_AREA_LIGHTS > 0\\\\n\\\\n\\\\t\\\\t// TODO (abelnation): create uniforms for area light shadows\\\\n\\\\n\\\\t#endif\\\\n\\\\t*/\\\\n\\\\n\\\\tfloat texture2DCompare( sampler2D depths, vec2 uv, float compare ) {\\\\n\\\\n\\\\t\\\\treturn step( compare, unpackRGBAToDepth( texture2D( depths, uv ) ) );\\\\n\\\\n\\\\t}\\\\n\\\\n\\\\tvec2 texture2DDistribution( sampler2D shadow, vec2 uv ) {\\\\n\\\\n\\\\t\\\\treturn unpackRGBATo2Half( texture2D( shadow, uv ) );\\\\n\\\\n\\\\t}\\\\n\\\\n\\\\tfloat VSMShadow (sampler2D shadow, vec2 uv, float compare ){\\\\n\\\\n\\\\t\\\\tfloat occlusion = 1.0;\\\\n\\\\n\\\\t\\\\tvec2 distribution = texture2DDistribution( shadow, uv );\\\\n\\\\n\\\\t\\\\tfloat hard_shadow = step( compare , distribution.x ); // Hard Shadow\\\\n\\\\n\\\\t\\\\tif (hard_shadow != 1.0 ) {\\\\n\\\\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 ); // Chebeyshevs inequality\\\\n\\\\t\\\\t\\\\tsoftness_probability = clamp( ( softness_probability - 0.3 ) / ( 0.95 - 0.3 ), 0.0, 1.0 ); // 0.3 reduces light bleed\\\\n\\\\t\\\\t\\\\tocclusion = clamp( max( hard_shadow, softness_probability ), 0.0, 1.0 );\\\\n\\\\n\\\\t\\\\t}\\\\n\\\\t\\\\treturn occlusion;\\\\n\\\\n\\\\t}\\\\n\\\\n\\\\tfloat getShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowBias, float shadowRadius, vec4 shadowCoord ) {\\\\n\\\\n\\\\t\\\\tfloat shadow = 1.0;\\\\n\\\\n\\\\t\\\\tshadowCoord.xyz /= shadowCoord.w;\\\\n\\\\t\\\\tshadowCoord.z += shadowBias;\\\\n\\\\n\\\\t\\\\t// if ( something && something ) breaks ATI OpenGL shader compiler\\\\n\\\\t\\\\t// if ( all( something, something ) ) using this instead\\\\n\\\\n\\\\t\\\\tbvec4 inFrustumVec = bvec4 ( shadowCoord.x >= 0.0, shadowCoord.x <= 1.0, shadowCoord.y >= 0.0, shadowCoord.y <= 1.0 );\\\\n\\\\t\\\\tbool inFrustum = all( inFrustumVec );\\\\n\\\\n\\\\t\\\\tbvec2 frustumTestVec = bvec2( inFrustum, shadowCoord.z <= 1.0 );\\\\n\\\\n\\\\t\\\\tbool frustumTest = all( frustumTestVec );\\\\n\\\\n\\\\t\\\\tif ( frustumTest ) {\\\\n\\\\n\\\\t\\\\t#if defined( SHADOWMAP_TYPE_PCF )\\\\n\\\\n\\\\t\\\\t\\\\tvec2 texelSize = vec2( 1.0 ) / shadowMapSize;\\\\n\\\\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\\\\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\\\\n\\\\t\\\\t#elif defined( SHADOWMAP_TYPE_PCF_SOFT )\\\\n\\\\n\\\\t\\\\t\\\\tvec2 texelSize = vec2( 1.0 ) / shadowMapSize;\\\\n\\\\t\\\\t\\\\tfloat dx = texelSize.x;\\\\n\\\\t\\\\t\\\\tfloat dy = texelSize.y;\\\\n\\\\n\\\\t\\\\t\\\\tvec2 uv = shadowCoord.xy;\\\\n\\\\t\\\\t\\\\tvec2 f = fract( uv * shadowMapSize + 0.5 );\\\\n\\\\t\\\\t\\\\tuv -= f * texelSize;\\\\n\\\\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\\\\n\\\\t\\\\t#elif defined( SHADOWMAP_TYPE_VSM )\\\\n\\\\n\\\\t\\\\t\\\\tshadow = VSMShadow( shadowMap, shadowCoord.xy, shadowCoord.z );\\\\n\\\\n\\\\t\\\\t#else // no percentage-closer filtering:\\\\n\\\\n\\\\t\\\\t\\\\tshadow = texture2DCompare( shadowMap, shadowCoord.xy, shadowCoord.z );\\\\n\\\\n\\\\t\\\\t#endif\\\\n\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\treturn shadow;\\\\n\\\\n\\\\t}\\\\n\\\\n\\\\t// cubeToUV() maps a 3D direction vector suitable for cube texture mapping to a 2D\\\\n\\\\t// vector suitable for 2D texture mapping. This code uses the following layout for the\\\\n\\\\t// 2D texture:\\\\n\\\\t//\\\\n\\\\t// xzXZ\\\\n\\\\t//  y Y\\\\n\\\\t//\\\\n\\\\t// Y - Positive y direction\\\\n\\\\t// y - Negative y direction\\\\n\\\\t// X - Positive x direction\\\\n\\\\t// x - Negative x direction\\\\n\\\\t// Z - Positive z direction\\\\n\\\\t// z - Negative z direction\\\\n\\\\t//\\\\n\\\\t// Source and test bed:\\\\n\\\\t// https://gist.github.com/tschw/da10c43c467ce8afd0c4\\\\n\\\\n\\\\tvec2 cubeToUV( vec3 v, float texelSizeY ) {\\\\n\\\\n\\\\t\\\\t// Number of texels to avoid at the edge of each square\\\\n\\\\n\\\\t\\\\tvec3 absV = abs( v );\\\\n\\\\n\\\\t\\\\t// Intersect unit cube\\\\n\\\\n\\\\t\\\\tfloat scaleToCube = 1.0 / max( absV.x, max( absV.y, absV.z ) );\\\\n\\\\t\\\\tabsV *= scaleToCube;\\\\n\\\\n\\\\t\\\\t// Apply scale to avoid seams\\\\n\\\\n\\\\t\\\\t// two texels less per square (one texel will do for NEAREST)\\\\n\\\\t\\\\tv *= scaleToCube * ( 1.0 - 2.0 * texelSizeY );\\\\n\\\\n\\\\t\\\\t// Unwrap\\\\n\\\\n\\\\t\\\\t// space: -1 ... 1 range for each square\\\\n\\\\t\\\\t//\\\\n\\\\t\\\\t// #X##\\\\t\\\\tdim    := ( 4 , 2 )\\\\n\\\\t\\\\t//  # #\\\\t\\\\tcenter := ( 1 , 1 )\\\\n\\\\n\\\\t\\\\tvec2 planar = v.xy;\\\\n\\\\n\\\\t\\\\tfloat almostATexel = 1.5 * texelSizeY;\\\\n\\\\t\\\\tfloat almostOne = 1.0 - almostATexel;\\\\n\\\\n\\\\t\\\\tif ( absV.z >= almostOne ) {\\\\n\\\\n\\\\t\\\\t\\\\tif ( v.z > 0.0 )\\\\n\\\\t\\\\t\\\\t\\\\tplanar.x = 4.0 - v.x;\\\\n\\\\n\\\\t\\\\t} else if ( absV.x >= almostOne ) {\\\\n\\\\n\\\\t\\\\t\\\\tfloat signX = sign( v.x );\\\\n\\\\t\\\\t\\\\tplanar.x = v.z * signX + 2.0 * signX;\\\\n\\\\n\\\\t\\\\t} else if ( absV.y >= almostOne ) {\\\\n\\\\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\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\t// Transform to UV space\\\\n\\\\n\\\\t\\\\t// scale := 0.5 / dim\\\\n\\\\t\\\\t// translate := ( center + 0.5 ) / dim\\\\n\\\\t\\\\treturn vec2( 0.125, 0.25 ) * planar + vec2( 0.375, 0.75 );\\\\n\\\\n\\\\t}\\\\n\\\\n\\\\tfloat getPointShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowBias, float shadowRadius, vec4 shadowCoord, float shadowCameraNear, float shadowCameraFar ) {\\\\n\\\\n\\\\t\\\\tvec2 texelSize = vec2( 1.0 ) / ( shadowMapSize * vec2( 4.0, 2.0 ) );\\\\n\\\\n\\\\t\\\\t// for point lights, the uniform @vShadowCoord is re-purposed to hold\\\\n\\\\t\\\\t// the vector from the light to the world-space position of the fragment.\\\\n\\\\t\\\\tvec3 lightToPosition = shadowCoord.xyz;\\\\n\\\\n\\\\t\\\\t// dp = normalized distance from light to fragment position\\\\n\\\\t\\\\tfloat dp = ( length( lightToPosition ) - shadowCameraNear ) / ( shadowCameraFar - shadowCameraNear ); // need to clamp?\\\\n\\\\t\\\\tdp += shadowBias;\\\\n\\\\n\\\\t\\\\t// bd3D = base direction 3D\\\\n\\\\t\\\\tvec3 bd3D = normalize( lightToPosition );\\\\n\\\\n\\\\t\\\\t#if defined( SHADOWMAP_TYPE_PCF ) || defined( SHADOWMAP_TYPE_PCF_SOFT ) || defined( SHADOWMAP_TYPE_VSM )\\\\n\\\\n\\\\t\\\\t\\\\tvec2 offset = vec2( - 1, 1 ) * shadowRadius * texelSize.y;\\\\n\\\\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\\\\n\\\\t\\\\t#else // no percentage-closer filtering\\\\n\\\\n\\\\t\\\\t\\\\treturn texture2DCompare( shadowMap, cubeToUV( bd3D, texelSize.y ), dp );\\\\n\\\\n\\\\t\\\\t#endif\\\\n\\\\n\\\\t}\\\\n\\\\n#endif\\\\n\\\\\\\",k=\\\\\\\"\\\\n#ifdef USE_TRANSMISSION\\\\n\\\\n\\\\tfloat transmissionAlpha = 1.0;\\\\n\\\\tfloat transmissionFactor = transmission;\\\\n\\\\tfloat thicknessFactor = thickness;\\\\n\\\\n\\\\t#ifdef USE_TRANSMISSIONMAP\\\\n\\\\n\\\\t\\\\ttransmissionFactor *= texture2D( transmissionMap, vUv ).r;\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\t#ifdef USE_THICKNESSMAP\\\\n\\\\n\\\\t\\\\tthicknessFactor *= texture2D( thicknessMap, vUv ).g;\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\tvec3 pos = vWorldPosition;\\\\n\\\\tvec3 v = normalize( cameraPosition - pos );\\\\n\\\\tvec3 n = inverseTransformDirection( normal, viewMatrix );\\\\n\\\\n\\\\tvec4 transmission = getIBLVolumeRefraction(\\\\n\\\\t\\\\tn, v, roughnessFactor, material.diffuseColor, material.specularColor, material.specularF90,\\\\n\\\\t\\\\tpos, modelMatrix, viewMatrix, projectionMatrix, ior, thicknessFactor,\\\\n\\\\t\\\\tattenuationTint, attenuationDistance );\\\\n\\\\n\\\\ttotalDiffuse = mix( totalDiffuse, transmission.rgb, transmissionFactor );\\\\n\\\\ttransmissionAlpha = mix( transmissionAlpha, transmission.a, transmissionFactor );\\\\n#endif\\\\n\\\\\\\";const U={alphamap_fragment:\\\\\\\"\\\\n#ifdef USE_ALPHAMAP\\\\n\\\\n\\\\tdiffuseColor.a *= texture2D( alphaMap, vUv ).g;\\\\n\\\\n#endif\\\\n\\\\\\\",alphamap_pars_fragment:\\\\\\\"\\\\n#ifdef USE_ALPHAMAP\\\\n\\\\n\\\\tuniform sampler2D alphaMap;\\\\n\\\\n#endif\\\\n\\\\\\\",alphatest_fragment:\\\\\\\"\\\\n#ifdef USE_ALPHATEST\\\\n\\\\n\\\\tif ( diffuseColor.a < alphaTest ) discard;\\\\n\\\\n#endif\\\\n\\\\\\\",alphatest_pars_fragment:\\\\\\\"\\\\n#ifdef USE_ALPHATEST\\\\n\\\\tuniform float alphaTest;\\\\n#endif\\\\n\\\\\\\",aomap_fragment:\\\\\\\"\\\\n#ifdef USE_AOMAP\\\\n\\\\n\\\\t// reads channel R, compatible with a combined OcclusionRoughnessMetallic (RGB) texture\\\\n\\\\tfloat ambientOcclusion = ( texture2D( aoMap, vUv2 ).r - 1.0 ) * aoMapIntensity + 1.0;\\\\n\\\\n\\\\treflectedLight.indirectDiffuse *= ambientOcclusion;\\\\n\\\\n\\\\t#if defined( USE_ENVMAP ) && defined( STANDARD )\\\\n\\\\n\\\\t\\\\tfloat dotNV = saturate( dot( geometry.normal, geometry.viewDir ) );\\\\n\\\\n\\\\t\\\\treflectedLight.indirectSpecular *= computeSpecularOcclusion( dotNV, ambientOcclusion, material.roughness );\\\\n\\\\n\\\\t#endif\\\\n\\\\n#endif\\\\n\\\\\\\",aomap_pars_fragment:\\\\\\\"\\\\n#ifdef USE_AOMAP\\\\n\\\\n\\\\tuniform sampler2D aoMap;\\\\n\\\\tuniform float aoMapIntensity;\\\\n\\\\n#endif\\\\n\\\\\\\",begin_vertex:\\\\\\\"\\\\nvec3 transformed = vec3( position );\\\\n\\\\\\\",beginnormal_vertex:\\\\\\\"\\\\nvec3 objectNormal = vec3( normal );\\\\n\\\\n#ifdef USE_TANGENT\\\\n\\\\n\\\\tvec3 objectTangent = vec3( tangent.xyz );\\\\n\\\\n#endif\\\\n\\\\\\\",bsdfs:'\\\\n\\\\nvec3 BRDF_Lambert( const in vec3 diffuseColor ) {\\\\n\\\\n\\\\treturn RECIPROCAL_PI * diffuseColor;\\\\n\\\\n} // validated\\\\n\\\\nvec3 F_Schlick( const in vec3 f0, const in float f90, const in float dotVH ) {\\\\n\\\\n\\\\t// Original approximation by Christophe Schlick \\\\'94\\\\n\\\\t// float fresnel = pow( 1.0 - dotVH, 5.0 );\\\\n\\\\n\\\\t// Optimized variant (presented by Epic at SIGGRAPH \\\\'13)\\\\n\\\\t// https://cdn2.unrealengine.com/Resources/files/2013SiggraphPresentationsNotes-26915738.pdf\\\\n\\\\tfloat fresnel = exp2( ( - 5.55473 * dotVH - 6.98316 ) * dotVH );\\\\n\\\\n\\\\treturn f0 * ( 1.0 - fresnel ) + ( f90 * fresnel );\\\\n\\\\n} // validated\\\\n\\\\n// Moving Frostbite to Physically Based Rendering 3.0 - page 12, listing 2\\\\n// https://seblagarde.files.wordpress.com/2015/07/course_notes_moving_frostbite_to_pbr_v32.pdf\\\\nfloat V_GGX_SmithCorrelated( const in float alpha, const in float dotNL, const in float dotNV ) {\\\\n\\\\n\\\\tfloat a2 = pow2( alpha );\\\\n\\\\n\\\\tfloat gv = dotNL * sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNV ) );\\\\n\\\\tfloat gl = dotNV * sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNL ) );\\\\n\\\\n\\\\treturn 0.5 / max( gv + gl, EPSILON );\\\\n\\\\n}\\\\n\\\\n// Microfacet Models for Refraction through Rough Surfaces - equation (33)\\\\n// http://graphicrants.blogspot.com/2013/08/specular-brdf-reference.html\\\\n// alpha is \\\\\\\"roughness squared\\\\\\\" in Disney’s reparameterization\\\\nfloat D_GGX( const in float alpha, const in float dotNH ) {\\\\n\\\\n\\\\tfloat a2 = pow2( alpha );\\\\n\\\\n\\\\tfloat denom = pow2( dotNH ) * ( a2 - 1.0 ) + 1.0; // avoid alpha = 0 with dotNH = 1\\\\n\\\\n\\\\treturn RECIPROCAL_PI * a2 / pow2( denom );\\\\n\\\\n}\\\\n\\\\n// GGX Distribution, Schlick Fresnel, GGX_SmithCorrelated Visibility\\\\nvec3 BRDF_GGX( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, const in vec3 f0, const in float f90, const in float roughness ) {\\\\n\\\\n\\\\tfloat alpha = pow2( roughness ); // UE4\\\\'s roughness\\\\n\\\\n\\\\tvec3 halfDir = normalize( lightDir + viewDir );\\\\n\\\\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\\\\n\\\\tvec3 F = F_Schlick( f0, f90, dotVH );\\\\n\\\\n\\\\tfloat V = V_GGX_SmithCorrelated( alpha, dotNL, dotNV );\\\\n\\\\n\\\\tfloat D = D_GGX( alpha, dotNH );\\\\n\\\\n\\\\treturn F * ( V * D );\\\\n\\\\n}\\\\n\\\\n// Rect Area Light\\\\n\\\\n// Real-Time Polygonal-Light Shading with Linearly Transformed Cosines\\\\n// by Eric Heitz, Jonathan Dupuy, Stephen Hill and David Neubelt\\\\n// code: https://github.com/selfshadow/ltc_code/\\\\n\\\\nvec2 LTC_Uv( const in vec3 N, const in vec3 V, const in float roughness ) {\\\\n\\\\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\\\\n\\\\tfloat dotNV = saturate( dot( N, V ) );\\\\n\\\\n\\\\t// texture parameterized by sqrt( GGX alpha ) and sqrt( 1 - cos( theta ) )\\\\n\\\\tvec2 uv = vec2( roughness, sqrt( 1.0 - dotNV ) );\\\\n\\\\n\\\\tuv = uv * LUT_SCALE + LUT_BIAS;\\\\n\\\\n\\\\treturn uv;\\\\n\\\\n}\\\\n\\\\nfloat LTC_ClippedSphereFormFactor( const in vec3 f ) {\\\\n\\\\n\\\\t// Real-Time Area Lighting: a Journey from Research to Production (p.102)\\\\n\\\\t// An approximation of the form factor of a horizon-clipped rectangle.\\\\n\\\\n\\\\tfloat l = length( f );\\\\n\\\\n\\\\treturn max( ( l * l + f.z ) / ( l + 1.0 ), 0.0 );\\\\n\\\\n}\\\\n\\\\nvec3 LTC_EdgeVectorFormFactor( const in vec3 v1, const in vec3 v2 ) {\\\\n\\\\n\\\\tfloat x = dot( v1, v2 );\\\\n\\\\n\\\\tfloat y = abs( x );\\\\n\\\\n\\\\t// rational polynomial approximation to theta / sin( theta ) / 2PI\\\\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\\\\n\\\\tfloat theta_sintheta = ( x > 0.0 ) ? v : 0.5 * inversesqrt( max( 1.0 - x * x, 1e-7 ) ) - v;\\\\n\\\\n\\\\treturn cross( v1, v2 ) * theta_sintheta;\\\\n\\\\n}\\\\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\\\\n\\\\t// bail if point is on back side of plane of light\\\\n\\\\t// assumes ccw winding order of light vertices\\\\n\\\\tvec3 v1 = rectCoords[ 1 ] - rectCoords[ 0 ];\\\\n\\\\tvec3 v2 = rectCoords[ 3 ] - rectCoords[ 0 ];\\\\n\\\\tvec3 lightNormal = cross( v1, v2 );\\\\n\\\\n\\\\tif( dot( lightNormal, P - rectCoords[ 0 ] ) < 0.0 ) return vec3( 0.0 );\\\\n\\\\n\\\\t// construct orthonormal basis around N\\\\n\\\\tvec3 T1, T2;\\\\n\\\\tT1 = normalize( V - N * dot( V, N ) );\\\\n\\\\tT2 = - cross( N, T1 ); // negated from paper; possibly due to a different handedness of world coordinate system\\\\n\\\\n\\\\t// compute transform\\\\n\\\\tmat3 mat = mInv * transposeMat3( mat3( T1, T2, N ) );\\\\n\\\\n\\\\t// transform rect\\\\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\\\\n\\\\t// project rect onto sphere\\\\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\\\\n\\\\t// calculate vector form factor\\\\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\\\\n\\\\t// adjust for horizon clipping\\\\n\\\\tfloat result = LTC_ClippedSphereFormFactor( vectorFormFactor );\\\\n\\\\n/*\\\\n\\\\t// alternate method of adjusting for horizon clipping (see referece)\\\\n\\\\t// refactoring required\\\\n\\\\tfloat len = length( vectorFormFactor );\\\\n\\\\tfloat z = vectorFormFactor.z / len;\\\\n\\\\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\\\\n\\\\t// tabulated horizon-clipped sphere, apparently...\\\\n\\\\tvec2 uv = vec2( z * 0.5 + 0.5, len );\\\\n\\\\tuv = uv * LUT_SCALE + LUT_BIAS;\\\\n\\\\n\\\\tfloat scale = texture2D( ltc_2, uv ).w;\\\\n\\\\n\\\\tfloat result = len * scale;\\\\n*/\\\\n\\\\n\\\\treturn vec3( result );\\\\n\\\\n}\\\\n\\\\n// End Rect Area Light\\\\n\\\\n\\\\nfloat G_BlinnPhong_Implicit( /* const in float dotNL, const in float dotNV */ ) {\\\\n\\\\n\\\\t// geometry term is (n dot l)(n dot v) / 4(n dot l)(n dot v)\\\\n\\\\treturn 0.25;\\\\n\\\\n}\\\\n\\\\nfloat D_BlinnPhong( const in float shininess, const in float dotNH ) {\\\\n\\\\n\\\\treturn RECIPROCAL_PI * ( shininess * 0.5 + 1.0 ) * pow( dotNH, shininess );\\\\n\\\\n}\\\\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\\\\n\\\\tvec3 halfDir = normalize( lightDir + viewDir );\\\\n\\\\n\\\\tfloat dotNH = saturate( dot( normal, halfDir ) );\\\\n\\\\tfloat dotVH = saturate( dot( viewDir, halfDir ) );\\\\n\\\\n\\\\tvec3 F = F_Schlick( specularColor, 1.0, dotVH );\\\\n\\\\n\\\\tfloat G = G_BlinnPhong_Implicit( /* dotNL, dotNV */ );\\\\n\\\\n\\\\tfloat D = D_BlinnPhong( shininess, dotNH );\\\\n\\\\n\\\\treturn F * ( G * D );\\\\n\\\\n} // validated\\\\n\\\\n#if defined( USE_SHEEN )\\\\n\\\\n// https://github.com/google/filament/blob/master/shaders/src/brdf.fs\\\\nfloat D_Charlie( float roughness, float dotNH ) {\\\\n\\\\n\\\\tfloat alpha = pow2( roughness );\\\\n\\\\n\\\\t// Estevez and Kulla 2017, \\\\\\\"Production Friendly Microfacet Sheen BRDF\\\\\\\"\\\\n\\\\tfloat invAlpha = 1.0 / alpha;\\\\n\\\\tfloat cos2h = dotNH * dotNH;\\\\n\\\\tfloat sin2h = max( 1.0 - cos2h, 0.0078125 ); // 2^(-14/2), so sin2h^2 > 0 in fp16\\\\n\\\\n\\\\treturn ( 2.0 + invAlpha ) * pow( sin2h, invAlpha * 0.5 ) / ( 2.0 * PI );\\\\n\\\\n}\\\\n\\\\n// https://github.com/google/filament/blob/master/shaders/src/brdf.fs\\\\nfloat V_Neubelt( float dotNV, float dotNL ) {\\\\n\\\\n\\\\t// Neubelt and Pettineo 2013, \\\\\\\"Crafting a Next-gen Material Pipeline for The Order: 1886\\\\\\\"\\\\n\\\\treturn saturate( 1.0 / ( 4.0 * ( dotNL + dotNV - dotNL * dotNV ) ) );\\\\n\\\\n}\\\\n\\\\nvec3 BRDF_Sheen( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, vec3 sheenTint, const in float sheenRoughness ) {\\\\n\\\\n\\\\tvec3 halfDir = normalize( lightDir + viewDir );\\\\n\\\\n\\\\tfloat dotNL = saturate( dot( normal, lightDir ) );\\\\n\\\\tfloat dotNV = saturate( dot( normal, viewDir ) );\\\\n\\\\tfloat dotNH = saturate( dot( normal, halfDir ) );\\\\n\\\\n\\\\tfloat D = D_Charlie( sheenRoughness, dotNH );\\\\n\\\\tfloat V = V_Neubelt( dotNV, dotNL );\\\\n\\\\n\\\\treturn sheenTint * ( D * V );\\\\n\\\\n}\\\\n\\\\n#endif\\\\n',bumpmap_pars_fragment:\\\\\\\"\\\\n#ifdef USE_BUMPMAP\\\\n\\\\n\\\\tuniform sampler2D bumpMap;\\\\n\\\\tuniform float bumpScale;\\\\n\\\\n\\\\t// Bump Mapping Unparametrized Surfaces on the GPU by Morten S. Mikkelsen\\\\n\\\\t// http://api.unrealengine.com/attachments/Engine/Rendering/LightingAndShadows/BumpMappingWithoutTangentSpace/mm_sfgrad_bump.pdf\\\\n\\\\n\\\\t// Evaluate the derivative of the height w.r.t. screen-space using forward differencing (listing 2)\\\\n\\\\n\\\\tvec2 dHdxy_fwd() {\\\\n\\\\n\\\\t\\\\tvec2 dSTdx = dFdx( vUv );\\\\n\\\\t\\\\tvec2 dSTdy = dFdy( vUv );\\\\n\\\\n\\\\t\\\\tfloat Hll = bumpScale * texture2D( bumpMap, vUv ).x;\\\\n\\\\t\\\\tfloat dBx = bumpScale * texture2D( bumpMap, vUv + dSTdx ).x - Hll;\\\\n\\\\t\\\\tfloat dBy = bumpScale * texture2D( bumpMap, vUv + dSTdy ).x - Hll;\\\\n\\\\n\\\\t\\\\treturn vec2( dBx, dBy );\\\\n\\\\n\\\\t}\\\\n\\\\n\\\\tvec3 perturbNormalArb( vec3 surf_pos, vec3 surf_norm, vec2 dHdxy, float faceDirection ) {\\\\n\\\\n\\\\t\\\\t// Workaround for Adreno 3XX dFd*( vec3 ) bug. See #9988\\\\n\\\\n\\\\t\\\\tvec3 vSigmaX = vec3( dFdx( surf_pos.x ), dFdx( surf_pos.y ), dFdx( surf_pos.z ) );\\\\n\\\\t\\\\tvec3 vSigmaY = vec3( dFdy( surf_pos.x ), dFdy( surf_pos.y ), dFdy( surf_pos.z ) );\\\\n\\\\t\\\\tvec3 vN = surf_norm;\\\\t\\\\t// normalized\\\\n\\\\n\\\\t\\\\tvec3 R1 = cross( vSigmaY, vN );\\\\n\\\\t\\\\tvec3 R2 = cross( vN, vSigmaX );\\\\n\\\\n\\\\t\\\\tfloat fDet = dot( vSigmaX, R1 ) * faceDirection;\\\\n\\\\n\\\\t\\\\tvec3 vGrad = sign( fDet ) * ( dHdxy.x * R1 + dHdxy.y * R2 );\\\\n\\\\t\\\\treturn normalize( abs( fDet ) * surf_norm - vGrad );\\\\n\\\\n\\\\t}\\\\n\\\\n#endif\\\\n\\\\\\\",clipping_planes_fragment:\\\\\\\"\\\\n#if NUM_CLIPPING_PLANES > 0\\\\n\\\\n\\\\tvec4 plane;\\\\n\\\\n\\\\t#pragma unroll_loop_start\\\\n\\\\tfor ( int i = 0; i < UNION_CLIPPING_PLANES; i ++ ) {\\\\n\\\\n\\\\t\\\\tplane = clippingPlanes[ i ];\\\\n\\\\t\\\\tif ( dot( vClipPosition, plane.xyz ) > plane.w ) discard;\\\\n\\\\n\\\\t}\\\\n\\\\t#pragma unroll_loop_end\\\\n\\\\n\\\\t#if UNION_CLIPPING_PLANES < NUM_CLIPPING_PLANES\\\\n\\\\n\\\\t\\\\tbool clipped = true;\\\\n\\\\n\\\\t\\\\t#pragma unroll_loop_start\\\\n\\\\t\\\\tfor ( int i = UNION_CLIPPING_PLANES; i < NUM_CLIPPING_PLANES; i ++ ) {\\\\n\\\\n\\\\t\\\\t\\\\tplane = clippingPlanes[ i ];\\\\n\\\\t\\\\t\\\\tclipped = ( dot( vClipPosition, plane.xyz ) > plane.w ) && clipped;\\\\n\\\\n\\\\t\\\\t}\\\\n\\\\t\\\\t#pragma unroll_loop_end\\\\n\\\\n\\\\t\\\\tif ( clipped ) discard;\\\\n\\\\n\\\\t#endif\\\\n\\\\n#endif\\\\n\\\\\\\",clipping_planes_pars_fragment:\\\\\\\"\\\\n#if NUM_CLIPPING_PLANES > 0\\\\n\\\\n\\\\tvarying vec3 vClipPosition;\\\\n\\\\n\\\\tuniform vec4 clippingPlanes[ NUM_CLIPPING_PLANES ];\\\\n\\\\n#endif\\\\n\\\\\\\",clipping_planes_pars_vertex:\\\\\\\"\\\\n#if NUM_CLIPPING_PLANES > 0\\\\n\\\\n\\\\tvarying vec3 vClipPosition;\\\\n\\\\n#endif\\\\n\\\\\\\",clipping_planes_vertex:\\\\\\\"\\\\n#if NUM_CLIPPING_PLANES > 0\\\\n\\\\n\\\\tvClipPosition = - mvPosition.xyz;\\\\n\\\\n#endif\\\\n\\\\\\\",color_fragment:\\\\\\\"\\\\n#if defined( USE_COLOR_ALPHA )\\\\n\\\\n\\\\tdiffuseColor *= vColor;\\\\n\\\\n#elif defined( USE_COLOR )\\\\n\\\\n\\\\tdiffuseColor.rgb *= vColor;\\\\n\\\\n#endif\\\\n\\\\\\\",color_pars_fragment:\\\\\\\"\\\\n#if defined( USE_COLOR_ALPHA )\\\\n\\\\n\\\\tvarying vec4 vColor;\\\\n\\\\n#elif defined( USE_COLOR )\\\\n\\\\n\\\\tvarying vec3 vColor;\\\\n\\\\n#endif\\\\n\\\\\\\",color_pars_vertex:\\\\\\\"\\\\n#if defined( USE_COLOR_ALPHA )\\\\n\\\\n\\\\tvarying vec4 vColor;\\\\n\\\\n#elif defined( USE_COLOR ) || defined( USE_INSTANCING_COLOR )\\\\n\\\\n\\\\tvarying vec3 vColor;\\\\n\\\\n#endif\\\\n\\\\\\\",color_vertex:\\\\\\\"\\\\n#if defined( USE_COLOR_ALPHA )\\\\n\\\\n\\\\tvColor = vec4( 1.0 );\\\\n\\\\n#elif defined( USE_COLOR ) || defined( USE_INSTANCING_COLOR )\\\\n\\\\n\\\\tvColor = vec3( 1.0 );\\\\n\\\\n#endif\\\\n\\\\n#ifdef USE_COLOR\\\\n\\\\n\\\\tvColor *= color;\\\\n\\\\n#endif\\\\n\\\\n#ifdef USE_INSTANCING_COLOR\\\\n\\\\n\\\\tvColor.xyz *= instanceColor.xyz;\\\\n\\\\n#endif\\\\n\\\\\\\",common:\\\\\\\"\\\\n#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\\\\n#ifndef saturate\\\\n// <tonemapping_pars_fragment> may have defined saturate() already\\\\n#define saturate( a ) clamp( a, 0.0, 1.0 )\\\\n#endif\\\\n#define whiteComplement( a ) ( 1.0 - saturate( a ) )\\\\n\\\\nfloat pow2( const in float 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 color ) { return dot( color, vec3( 0.3333 ) ); }\\\\n\\\\n// expects values in the range of [0,1]x[0,1], returns values in the [0,1] range.\\\\n// do not collapse into a single function per: http://byteblacksmith.com/improvements-to-the-canonical-one-liner-glsl-rand-for-opengl-es-2-0/\\\\nhighp float rand( const in vec2 uv ) {\\\\n\\\\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\\\\n\\\\treturn fract( sin( sn ) * c );\\\\n\\\\n}\\\\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\\\\n\\\\nstruct IncidentLight {\\\\n\\\\tvec3 color;\\\\n\\\\tvec3 direction;\\\\n\\\\tbool visible;\\\\n};\\\\n\\\\nstruct ReflectedLight {\\\\n\\\\tvec3 directDiffuse;\\\\n\\\\tvec3 directSpecular;\\\\n\\\\tvec3 indirectDiffuse;\\\\n\\\\tvec3 indirectSpecular;\\\\n};\\\\n\\\\nstruct GeometricContext {\\\\n\\\\tvec3 position;\\\\n\\\\tvec3 normal;\\\\n\\\\tvec3 viewDir;\\\\n#ifdef USE_CLEARCOAT\\\\n\\\\tvec3 clearcoatNormal;\\\\n#endif\\\\n};\\\\n\\\\nvec3 transformDirection( in vec3 dir, in mat4 matrix ) {\\\\n\\\\n\\\\treturn normalize( ( matrix * vec4( dir, 0.0 ) ).xyz );\\\\n\\\\n}\\\\n\\\\nvec3 inverseTransformDirection( in vec3 dir, in mat4 matrix ) {\\\\n\\\\n\\\\t// dir can be either a direction vector or a normal vector\\\\n\\\\t// upper-left 3x3 of matrix is assumed to be orthogonal\\\\n\\\\n\\\\treturn normalize( ( vec4( dir, 0.0 ) * matrix ).xyz );\\\\n\\\\n}\\\\n\\\\nmat3 transposeMat3( const in mat3 m ) {\\\\n\\\\n\\\\tmat3 tmp;\\\\n\\\\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\\\\n\\\\treturn tmp;\\\\n\\\\n}\\\\n\\\\n// https://en.wikipedia.org/wiki/Relative_luminance\\\\nfloat linearToRelativeLuminance( const in vec3 color ) {\\\\n\\\\n\\\\tvec3 weights = vec3( 0.2126, 0.7152, 0.0722 );\\\\n\\\\n\\\\treturn dot( weights, color.rgb );\\\\n\\\\n}\\\\n\\\\nbool isPerspectiveMatrix( mat4 m ) {\\\\n\\\\n\\\\treturn m[ 2 ][ 3 ] == - 1.0;\\\\n\\\\n}\\\\n\\\\nvec2 equirectUv( in vec3 dir ) {\\\\n\\\\n\\\\t// dir is assumed to be unit length\\\\n\\\\n\\\\tfloat u = atan( dir.z, dir.x ) * RECIPROCAL_PI2 + 0.5;\\\\n\\\\n\\\\tfloat v = asin( clamp( dir.y, - 1.0, 1.0 ) ) * RECIPROCAL_PI + 0.5;\\\\n\\\\n\\\\treturn vec2( u, v );\\\\n\\\\n}\\\\n\\\\\\\",cube_uv_reflection_fragment:\\\\\\\"\\\\n#ifdef ENVMAP_TYPE_CUBE_UV\\\\n\\\\n\\\\t#define cubeUV_maxMipLevel 8.0\\\\n\\\\t#define cubeUV_minMipLevel 4.0\\\\n\\\\t#define cubeUV_maxTileSize 256.0\\\\n\\\\t#define cubeUV_minTileSize 16.0\\\\n\\\\n\\\\t// These shader functions convert between the UV coordinates of a single face of\\\\n\\\\t// a cubemap, the 0-5 integer index of a cube face, and the direction vector for\\\\n\\\\t// sampling a textureCube (not generally normalized ).\\\\n\\\\n\\\\tfloat getFace( vec3 direction ) {\\\\n\\\\n\\\\t\\\\tvec3 absDirection = abs( direction );\\\\n\\\\n\\\\t\\\\tfloat face = - 1.0;\\\\n\\\\n\\\\t\\\\tif ( absDirection.x > absDirection.z ) {\\\\n\\\\n\\\\t\\\\t\\\\tif ( absDirection.x > absDirection.y )\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tface = direction.x > 0.0 ? 0.0 : 3.0;\\\\n\\\\n\\\\t\\\\t\\\\telse\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tface = direction.y > 0.0 ? 1.0 : 4.0;\\\\n\\\\n\\\\t\\\\t} else {\\\\n\\\\n\\\\t\\\\t\\\\tif ( absDirection.z > absDirection.y )\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tface = direction.z > 0.0 ? 2.0 : 5.0;\\\\n\\\\n\\\\t\\\\t\\\\telse\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tface = direction.y > 0.0 ? 1.0 : 4.0;\\\\n\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\treturn face;\\\\n\\\\n\\\\t}\\\\n\\\\n\\\\t// RH coordinate system; PMREM face-indexing convention\\\\n\\\\tvec2 getUV( vec3 direction, float face ) {\\\\n\\\\n\\\\t\\\\tvec2 uv;\\\\n\\\\n\\\\t\\\\tif ( face == 0.0 ) {\\\\n\\\\n\\\\t\\\\t\\\\tuv = vec2( direction.z, direction.y ) / abs( direction.x ); // pos x\\\\n\\\\n\\\\t\\\\t} else if ( face == 1.0 ) {\\\\n\\\\n\\\\t\\\\t\\\\tuv = vec2( - direction.x, - direction.z ) / abs( direction.y ); // pos y\\\\n\\\\n\\\\t\\\\t} else if ( face == 2.0 ) {\\\\n\\\\n\\\\t\\\\t\\\\tuv = vec2( - direction.x, direction.y ) / abs( direction.z ); // pos z\\\\n\\\\n\\\\t\\\\t} else if ( face == 3.0 ) {\\\\n\\\\n\\\\t\\\\t\\\\tuv = vec2( - direction.z, direction.y ) / abs( direction.x ); // neg x\\\\n\\\\n\\\\t\\\\t} else if ( face == 4.0 ) {\\\\n\\\\n\\\\t\\\\t\\\\tuv = vec2( - direction.x, direction.z ) / abs( direction.y ); // neg y\\\\n\\\\n\\\\t\\\\t} else {\\\\n\\\\n\\\\t\\\\t\\\\tuv = vec2( direction.x, direction.y ) / abs( direction.z ); // neg z\\\\n\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\treturn 0.5 * ( uv + 1.0 );\\\\n\\\\n\\\\t}\\\\n\\\\n\\\\tvec3 bilinearCubeUV( sampler2D envMap, vec3 direction, float mipInt ) {\\\\n\\\\n\\\\t\\\\tfloat face = getFace( direction );\\\\n\\\\n\\\\t\\\\tfloat filterInt = max( cubeUV_minMipLevel - mipInt, 0.0 );\\\\n\\\\n\\\\t\\\\tmipInt = max( mipInt, cubeUV_minMipLevel );\\\\n\\\\n\\\\t\\\\tfloat faceSize = exp2( mipInt );\\\\n\\\\n\\\\t\\\\tfloat texelSize = 1.0 / ( 3.0 * cubeUV_maxTileSize );\\\\n\\\\n\\\\t\\\\tvec2 uv = getUV( direction, face ) * ( faceSize - 1.0 );\\\\n\\\\n\\\\t\\\\tvec2 f = fract( uv );\\\\n\\\\n\\\\t\\\\tuv += 0.5 - f;\\\\n\\\\n\\\\t\\\\tif ( face > 2.0 ) {\\\\n\\\\n\\\\t\\\\t\\\\tuv.y += faceSize;\\\\n\\\\n\\\\t\\\\t\\\\tface -= 3.0;\\\\n\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\tuv.x += face * faceSize;\\\\n\\\\n\\\\t\\\\tif ( mipInt < cubeUV_maxMipLevel ) {\\\\n\\\\n\\\\t\\\\t\\\\tuv.y += 2.0 * cubeUV_maxTileSize;\\\\n\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\tuv.y += filterInt * 2.0 * cubeUV_minTileSize;\\\\n\\\\n\\\\t\\\\tuv.x += 3.0 * max( 0.0, cubeUV_maxTileSize - 2.0 * faceSize );\\\\n\\\\n\\\\t\\\\tuv *= texelSize;\\\\n\\\\n\\\\t\\\\tvec3 tl = envMapTexelToLinear( texture2D( envMap, uv ) ).rgb;\\\\n\\\\n\\\\t\\\\tuv.x += texelSize;\\\\n\\\\n\\\\t\\\\tvec3 tr = envMapTexelToLinear( texture2D( envMap, uv ) ).rgb;\\\\n\\\\n\\\\t\\\\tuv.y += texelSize;\\\\n\\\\n\\\\t\\\\tvec3 br = envMapTexelToLinear( texture2D( envMap, uv ) ).rgb;\\\\n\\\\n\\\\t\\\\tuv.x -= texelSize;\\\\n\\\\n\\\\t\\\\tvec3 bl = envMapTexelToLinear( texture2D( envMap, uv ) ).rgb;\\\\n\\\\n\\\\t\\\\tvec3 tm = mix( tl, tr, f.x );\\\\n\\\\n\\\\t\\\\tvec3 bm = mix( bl, br, f.x );\\\\n\\\\n\\\\t\\\\treturn mix( tm, bm, f.y );\\\\n\\\\n\\\\t}\\\\n\\\\n\\\\t// These defines must match with PMREMGenerator\\\\n\\\\n\\\\t#define r0 1.0\\\\n\\\\t#define v0 0.339\\\\n\\\\t#define m0 - 2.0\\\\n\\\\t#define r1 0.8\\\\n\\\\t#define v1 0.276\\\\n\\\\t#define m1 - 1.0\\\\n\\\\t#define r4 0.4\\\\n\\\\t#define v4 0.046\\\\n\\\\t#define m4 2.0\\\\n\\\\t#define r5 0.305\\\\n\\\\t#define v5 0.016\\\\n\\\\t#define m5 3.0\\\\n\\\\t#define r6 0.21\\\\n\\\\t#define v6 0.0038\\\\n\\\\t#define m6 4.0\\\\n\\\\n\\\\tfloat roughnessToMip( float roughness ) {\\\\n\\\\n\\\\t\\\\tfloat mip = 0.0;\\\\n\\\\n\\\\t\\\\tif ( roughness >= r1 ) {\\\\n\\\\n\\\\t\\\\t\\\\tmip = ( r0 - roughness ) * ( m1 - m0 ) / ( r0 - r1 ) + m0;\\\\n\\\\n\\\\t\\\\t} else if ( roughness >= r4 ) {\\\\n\\\\n\\\\t\\\\t\\\\tmip = ( r1 - roughness ) * ( m4 - m1 ) / ( r1 - r4 ) + m1;\\\\n\\\\n\\\\t\\\\t} else if ( roughness >= r5 ) {\\\\n\\\\n\\\\t\\\\t\\\\tmip = ( r4 - roughness ) * ( m5 - m4 ) / ( r4 - r5 ) + m4;\\\\n\\\\n\\\\t\\\\t} else if ( roughness >= r6 ) {\\\\n\\\\n\\\\t\\\\t\\\\tmip = ( r5 - roughness ) * ( m6 - m5 ) / ( r5 - r6 ) + m5;\\\\n\\\\n\\\\t\\\\t} else {\\\\n\\\\n\\\\t\\\\t\\\\tmip = - 2.0 * log2( 1.16 * roughness ); // 1.16 = 1.79^0.25\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\treturn mip;\\\\n\\\\n\\\\t}\\\\n\\\\n\\\\tvec4 textureCubeUV( sampler2D envMap, vec3 sampleDir, float roughness ) {\\\\n\\\\n\\\\t\\\\tfloat mip = clamp( roughnessToMip( roughness ), m0, cubeUV_maxMipLevel );\\\\n\\\\n\\\\t\\\\tfloat mipF = fract( mip );\\\\n\\\\n\\\\t\\\\tfloat mipInt = floor( mip );\\\\n\\\\n\\\\t\\\\tvec3 color0 = bilinearCubeUV( envMap, sampleDir, mipInt );\\\\n\\\\n\\\\t\\\\tif ( mipF == 0.0 ) {\\\\n\\\\n\\\\t\\\\t\\\\treturn vec4( color0, 1.0 );\\\\n\\\\n\\\\t\\\\t} else {\\\\n\\\\n\\\\t\\\\t\\\\tvec3 color1 = bilinearCubeUV( envMap, sampleDir, mipInt + 1.0 );\\\\n\\\\n\\\\t\\\\t\\\\treturn vec4( mix( color0, color1, mipF ), 1.0 );\\\\n\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t}\\\\n\\\\n#endif\\\\n\\\\\\\",defaultnormal_vertex:\\\\\\\"\\\\nvec3 transformedNormal = objectNormal;\\\\n\\\\n#ifdef USE_INSTANCING\\\\n\\\\n\\\\t// this is in lieu of a per-instance normal-matrix\\\\n\\\\t// shear transforms in the instance matrix are not supported\\\\n\\\\n\\\\tmat3 m = mat3( instanceMatrix );\\\\n\\\\n\\\\ttransformedNormal /= vec3( dot( m[ 0 ], m[ 0 ] ), dot( m[ 1 ], m[ 1 ] ), dot( m[ 2 ], m[ 2 ] ) );\\\\n\\\\n\\\\ttransformedNormal = m * transformedNormal;\\\\n\\\\n#endif\\\\n\\\\ntransformedNormal = normalMatrix * transformedNormal;\\\\n\\\\n#ifdef FLIP_SIDED\\\\n\\\\n\\\\ttransformedNormal = - transformedNormal;\\\\n\\\\n#endif\\\\n\\\\n#ifdef USE_TANGENT\\\\n\\\\n\\\\tvec3 transformedTangent = ( modelViewMatrix * vec4( objectTangent, 0.0 ) ).xyz;\\\\n\\\\n\\\\t#ifdef FLIP_SIDED\\\\n\\\\n\\\\t\\\\ttransformedTangent = - transformedTangent;\\\\n\\\\n\\\\t#endif\\\\n\\\\n#endif\\\\n\\\\\\\",displacementmap_pars_vertex:\\\\\\\"\\\\n#ifdef USE_DISPLACEMENTMAP\\\\n\\\\n\\\\tuniform sampler2D displacementMap;\\\\n\\\\tuniform float displacementScale;\\\\n\\\\tuniform float displacementBias;\\\\n\\\\n#endif\\\\n\\\\\\\",displacementmap_vertex:\\\\\\\"\\\\n#ifdef USE_DISPLACEMENTMAP\\\\n\\\\n\\\\ttransformed += normalize( objectNormal ) * ( texture2D( displacementMap, vUv ).x * displacementScale + displacementBias );\\\\n\\\\n#endif\\\\n\\\\\\\",emissivemap_fragment:\\\\\\\"\\\\n#ifdef USE_EMISSIVEMAP\\\\n\\\\n\\\\tvec4 emissiveColor = texture2D( emissiveMap, vUv );\\\\n\\\\n\\\\temissiveColor.rgb = emissiveMapTexelToLinear( emissiveColor ).rgb;\\\\n\\\\n\\\\ttotalEmissiveRadiance *= emissiveColor.rgb;\\\\n\\\\n#endif\\\\n\\\\\\\",emissivemap_pars_fragment:\\\\\\\"\\\\n#ifdef USE_EMISSIVEMAP\\\\n\\\\n\\\\tuniform sampler2D emissiveMap;\\\\n\\\\n#endif\\\\n\\\\\\\",encodings_fragment:\\\\\\\"\\\\ngl_FragColor = linearToOutputTexel( gl_FragColor );\\\\n\\\\\\\",encodings_pars_fragment:\\\\\\\"\\\\n// For a discussion of what this is, please read this: http://lousodrome.net/blog/light/2013/05/26/gamma-correct-and-hdr-rendering-in-a-32-bits-buffer/\\\\n\\\\nvec4 LinearToLinear( in vec4 value ) {\\\\n\\\\treturn value;\\\\n}\\\\n\\\\nvec4 GammaToLinear( in vec4 value, in float gammaFactor ) {\\\\n\\\\treturn vec4( pow( value.rgb, vec3( gammaFactor ) ), value.a );\\\\n}\\\\n\\\\nvec4 LinearToGamma( in vec4 value, in float gammaFactor ) {\\\\n\\\\treturn vec4( pow( value.rgb, vec3( 1.0 / gammaFactor ) ), value.a );\\\\n}\\\\n\\\\nvec4 sRGBToLinear( in vec4 value ) {\\\\n\\\\treturn vec4( mix( pow( value.rgb * 0.9478672986 + vec3( 0.0521327014 ), vec3( 2.4 ) ), value.rgb * 0.0773993808, vec3( lessThanEqual( value.rgb, vec3( 0.04045 ) ) ) ), value.a );\\\\n}\\\\n\\\\nvec4 LinearTosRGB( 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}\\\\n\\\\nvec4 RGBEToLinear( in vec4 value ) {\\\\n\\\\treturn vec4( value.rgb * exp2( value.a * 255.0 - 128.0 ), 1.0 );\\\\n}\\\\n\\\\nvec4 LinearToRGBE( in vec4 value ) {\\\\n\\\\tfloat maxComponent = max( max( value.r, value.g ), value.b );\\\\n\\\\tfloat fExp = clamp( ceil( log2( maxComponent ) ), -128.0, 127.0 );\\\\n\\\\treturn vec4( value.rgb / exp2( fExp ), ( fExp + 128.0 ) / 255.0 );\\\\n\\\\t// return vec4( value.brg, ( 3.0 + 128.0 ) / 256.0 );\\\\n}\\\\n\\\\n// reference: http://iwasbeingirony.blogspot.ca/2010/06/difference-between-rgbm-and-rgbd.html\\\\nvec4 RGBMToLinear( in vec4 value, in float maxRange ) {\\\\n\\\\treturn vec4( value.rgb * value.a * maxRange, 1.0 );\\\\n}\\\\n\\\\nvec4 LinearToRGBM( in vec4 value, in float maxRange ) {\\\\n\\\\tfloat maxRGB = max( value.r, max( value.g, value.b ) );\\\\n\\\\tfloat M = clamp( maxRGB / maxRange, 0.0, 1.0 );\\\\n\\\\tM = ceil( M * 255.0 ) / 255.0;\\\\n\\\\treturn vec4( value.rgb / ( M * maxRange ), M );\\\\n}\\\\n\\\\n// reference: http://iwasbeingirony.blogspot.ca/2010/06/difference-between-rgbm-and-rgbd.html\\\\nvec4 RGBDToLinear( in vec4 value, in float maxRange ) {\\\\n\\\\treturn vec4( value.rgb * ( ( maxRange / 255.0 ) / value.a ), 1.0 );\\\\n}\\\\n\\\\nvec4 LinearToRGBD( in vec4 value, in float maxRange ) {\\\\n\\\\tfloat maxRGB = max( value.r, max( value.g, value.b ) );\\\\n\\\\tfloat D = max( maxRange / maxRGB, 1.0 );\\\\n\\\\t// NOTE: The implementation with min causes the shader to not compile on\\\\n\\\\t// a common Alcatel A502DL in Chrome 78/Android 8.1. Some research suggests \\\\n\\\\t// that the chipset is Mediatek MT6739 w/ IMG PowerVR GE8100 GPU.\\\\n\\\\t// D = min( floor( D ) / 255.0, 1.0 );\\\\n\\\\tD = clamp( floor( D ) / 255.0, 0.0, 1.0 );\\\\n\\\\treturn vec4( value.rgb * ( D * ( 255.0 / maxRange ) ), D );\\\\n}\\\\n\\\\n// LogLuv reference: http://graphicrants.blogspot.ca/2009/04/rgbm-color-encoding.html\\\\n\\\\n// M matrix, for encoding\\\\nconst mat3 cLogLuvM = mat3( 0.2209, 0.3390, 0.4184, 0.1138, 0.6780, 0.7319, 0.0102, 0.1130, 0.2969 );\\\\nvec4 LinearToLogLuv( in vec4 value ) {\\\\n\\\\tvec3 Xp_Y_XYZp = cLogLuvM * value.rgb;\\\\n\\\\tXp_Y_XYZp = max( Xp_Y_XYZp, vec3( 1e-6, 1e-6, 1e-6 ) );\\\\n\\\\tvec4 vResult;\\\\n\\\\tvResult.xy = Xp_Y_XYZp.xy / Xp_Y_XYZp.z;\\\\n\\\\tfloat Le = 2.0 * log2(Xp_Y_XYZp.y) + 127.0;\\\\n\\\\tvResult.w = fract( Le );\\\\n\\\\tvResult.z = ( Le - ( floor( vResult.w * 255.0 ) ) / 255.0 ) / 255.0;\\\\n\\\\treturn vResult;\\\\n}\\\\n\\\\n// Inverse M matrix, for decoding\\\\nconst mat3 cLogLuvInverseM = mat3( 6.0014, -2.7008, -1.7996, -1.3320, 3.1029, -5.7721, 0.3008, -1.0882, 5.6268 );\\\\nvec4 LogLuvToLinear( in vec4 value ) {\\\\n\\\\tfloat Le = value.z * 255.0 + value.w;\\\\n\\\\tvec3 Xp_Y_XYZp;\\\\n\\\\tXp_Y_XYZp.y = exp2( ( Le - 127.0 ) / 2.0 );\\\\n\\\\tXp_Y_XYZp.z = Xp_Y_XYZp.y / value.y;\\\\n\\\\tXp_Y_XYZp.x = value.x * Xp_Y_XYZp.z;\\\\n\\\\tvec3 vRGB = cLogLuvInverseM * Xp_Y_XYZp.rgb;\\\\n\\\\treturn vec4( max( vRGB, 0.0 ), 1.0 );\\\\n}\\\\n\\\\\\\",envmap_fragment:\\\\\\\"\\\\n#ifdef USE_ENVMAP\\\\n\\\\n\\\\t#ifdef ENV_WORLDPOS\\\\n\\\\n\\\\t\\\\tvec3 cameraToFrag;\\\\n\\\\n\\\\t\\\\tif ( isOrthographic ) {\\\\n\\\\n\\\\t\\\\t\\\\tcameraToFrag = normalize( vec3( - viewMatrix[ 0 ][ 2 ], - viewMatrix[ 1 ][ 2 ], - viewMatrix[ 2 ][ 2 ] ) );\\\\n\\\\n\\\\t\\\\t} else {\\\\n\\\\n\\\\t\\\\t\\\\tcameraToFrag = normalize( vWorldPosition - cameraPosition );\\\\n\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\t// Transforming Normal Vectors with the Inverse Transformation\\\\n\\\\t\\\\tvec3 worldNormal = inverseTransformDirection( normal, viewMatrix );\\\\n\\\\n\\\\t\\\\t#ifdef ENVMAP_MODE_REFLECTION\\\\n\\\\n\\\\t\\\\t\\\\tvec3 reflectVec = reflect( cameraToFrag, worldNormal );\\\\n\\\\n\\\\t\\\\t#else\\\\n\\\\n\\\\t\\\\t\\\\tvec3 reflectVec = refract( cameraToFrag, worldNormal, refractionRatio );\\\\n\\\\n\\\\t\\\\t#endif\\\\n\\\\n\\\\t#else\\\\n\\\\n\\\\t\\\\tvec3 reflectVec = vReflect;\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\t#ifdef ENVMAP_TYPE_CUBE\\\\n\\\\n\\\\t\\\\tvec4 envColor = textureCube( envMap, vec3( flipEnvMap * reflectVec.x, reflectVec.yz ) );\\\\n\\\\n\\\\t\\\\tenvColor = envMapTexelToLinear( envColor );\\\\n\\\\n\\\\t#elif defined( ENVMAP_TYPE_CUBE_UV )\\\\n\\\\n\\\\t\\\\tvec4 envColor = textureCubeUV( envMap, reflectVec, 0.0 );\\\\n\\\\n\\\\t#else\\\\n\\\\n\\\\t\\\\tvec4 envColor = vec4( 0.0 );\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\t#ifdef ENVMAP_BLENDING_MULTIPLY\\\\n\\\\n\\\\t\\\\toutgoingLight = mix( outgoingLight, outgoingLight * envColor.xyz, specularStrength * reflectivity );\\\\n\\\\n\\\\t#elif defined( ENVMAP_BLENDING_MIX )\\\\n\\\\n\\\\t\\\\toutgoingLight = mix( outgoingLight, envColor.xyz, specularStrength * reflectivity );\\\\n\\\\n\\\\t#elif defined( ENVMAP_BLENDING_ADD )\\\\n\\\\n\\\\t\\\\toutgoingLight += envColor.xyz * specularStrength * reflectivity;\\\\n\\\\n\\\\t#endif\\\\n\\\\n#endif\\\\n\\\\\\\",envmap_common_pars_fragment:\\\\\\\"\\\\n#ifdef USE_ENVMAP\\\\n\\\\n\\\\tuniform float envMapIntensity;\\\\n\\\\tuniform float flipEnvMap;\\\\n\\\\tuniform int maxMipLevel;\\\\n\\\\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\\\\n\\\\\\\",envmap_pars_fragment:\\\\\\\"\\\\n#ifdef USE_ENVMAP\\\\n\\\\n\\\\tuniform float reflectivity;\\\\n\\\\n\\\\t#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG )\\\\n\\\\n\\\\t\\\\t#define ENV_WORLDPOS\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\t#ifdef ENV_WORLDPOS\\\\n\\\\n\\\\t\\\\tvarying vec3 vWorldPosition;\\\\n\\\\t\\\\tuniform float refractionRatio;\\\\n\\\\t#else\\\\n\\\\t\\\\tvarying vec3 vReflect;\\\\n\\\\t#endif\\\\n\\\\n#endif\\\\n\\\\\\\",envmap_pars_vertex:\\\\\\\"\\\\n#ifdef USE_ENVMAP\\\\n\\\\n\\\\t#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) ||defined( PHONG )\\\\n\\\\n\\\\t\\\\t#define ENV_WORLDPOS\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\t#ifdef ENV_WORLDPOS\\\\n\\\\t\\\\t\\\\n\\\\t\\\\tvarying vec3 vWorldPosition;\\\\n\\\\n\\\\t#else\\\\n\\\\n\\\\t\\\\tvarying vec3 vReflect;\\\\n\\\\t\\\\tuniform float refractionRatio;\\\\n\\\\n\\\\t#endif\\\\n\\\\n#endif\\\\n\\\\\\\",envmap_physical_pars_fragment:\\\\\\\"\\\\n#if defined( USE_ENVMAP )\\\\n\\\\n\\\\t#ifdef ENVMAP_MODE_REFRACTION\\\\n\\\\n\\\\t\\\\tuniform float refractionRatio;\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\tvec3 getIBLIrradiance( const in vec3 normal ) {\\\\n\\\\n\\\\t\\\\t#if defined( ENVMAP_TYPE_CUBE_UV )\\\\n\\\\n\\\\t\\\\t\\\\tvec3 worldNormal = inverseTransformDirection( normal, viewMatrix );\\\\n\\\\n\\\\t\\\\t\\\\tvec4 envMapColor = textureCubeUV( envMap, worldNormal, 1.0 );\\\\n\\\\n\\\\t\\\\t\\\\treturn PI * envMapColor.rgb * envMapIntensity;\\\\n\\\\n\\\\t\\\\t#else\\\\n\\\\n\\\\t\\\\t\\\\treturn vec3( 0.0 );\\\\n\\\\n\\\\t\\\\t#endif\\\\n\\\\n\\\\t}\\\\n\\\\n\\\\tvec3 getIBLRadiance( const in vec3 viewDir, const in vec3 normal, const in float roughness ) {\\\\n\\\\n\\\\t\\\\t#if defined( ENVMAP_TYPE_CUBE_UV )\\\\n\\\\n\\\\t\\\\t\\\\tvec3 reflectVec;\\\\n\\\\n\\\\t\\\\t\\\\t#ifdef ENVMAP_MODE_REFLECTION\\\\n\\\\n\\\\t\\\\t\\\\t\\\\treflectVec = reflect( - viewDir, normal );\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t// Mixing the reflection with the normal is more accurate and keeps rough objects from gathering light from behind their tangent plane.\\\\n\\\\t\\\\t\\\\t\\\\treflectVec = normalize( mix( reflectVec, normal, roughness * roughness) );\\\\n\\\\n\\\\t\\\\t\\\\t#else\\\\n\\\\n\\\\t\\\\t\\\\t\\\\treflectVec = refract( - viewDir, normal, refractionRatio );\\\\n\\\\n\\\\t\\\\t\\\\t#endif\\\\n\\\\n\\\\t\\\\t\\\\treflectVec = inverseTransformDirection( reflectVec, viewMatrix );\\\\n\\\\n\\\\t\\\\t\\\\tvec4 envMapColor = textureCubeUV( envMap, reflectVec, roughness );\\\\n\\\\n\\\\t\\\\t\\\\treturn envMapColor.rgb * envMapIntensity;\\\\n\\\\n\\\\t\\\\t#else\\\\n\\\\n\\\\t\\\\t\\\\treturn vec3( 0.0 );\\\\n\\\\n\\\\t\\\\t#endif\\\\n\\\\n\\\\t}\\\\n\\\\n#endif\\\\n\\\\\\\",envmap_vertex:\\\\\\\"\\\\n#ifdef USE_ENVMAP\\\\n\\\\n\\\\t#ifdef ENV_WORLDPOS\\\\n\\\\n\\\\t\\\\tvWorldPosition = worldPosition.xyz;\\\\n\\\\n\\\\t#else\\\\n\\\\n\\\\t\\\\tvec3 cameraToVertex;\\\\n\\\\n\\\\t\\\\tif ( isOrthographic ) {\\\\n\\\\n\\\\t\\\\t\\\\tcameraToVertex = normalize( vec3( - viewMatrix[ 0 ][ 2 ], - viewMatrix[ 1 ][ 2 ], - viewMatrix[ 2 ][ 2 ] ) );\\\\n\\\\n\\\\t\\\\t} else {\\\\n\\\\n\\\\t\\\\t\\\\tcameraToVertex = normalize( worldPosition.xyz - cameraPosition );\\\\n\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\tvec3 worldNormal = inverseTransformDirection( transformedNormal, viewMatrix );\\\\n\\\\n\\\\t\\\\t#ifdef ENVMAP_MODE_REFLECTION\\\\n\\\\n\\\\t\\\\t\\\\tvReflect = reflect( cameraToVertex, worldNormal );\\\\n\\\\n\\\\t\\\\t#else\\\\n\\\\n\\\\t\\\\t\\\\tvReflect = refract( cameraToVertex, worldNormal, refractionRatio );\\\\n\\\\n\\\\t\\\\t#endif\\\\n\\\\n\\\\t#endif\\\\n\\\\n#endif\\\\n\\\\\\\",fog_vertex:\\\\\\\"\\\\n#ifdef USE_FOG\\\\n\\\\n\\\\tvFogDepth = - mvPosition.z;\\\\n\\\\n#endif\\\\n\\\\\\\",fog_pars_vertex:\\\\\\\"\\\\n#ifdef USE_FOG\\\\n\\\\n\\\\tvarying float vFogDepth;\\\\n\\\\n#endif\\\\n\\\\\\\",fog_fragment:\\\\\\\"\\\\n#ifdef USE_FOG\\\\n\\\\n\\\\t#ifdef FOG_EXP2\\\\n\\\\n\\\\t\\\\tfloat fogFactor = 1.0 - exp( - fogDensity * fogDensity * vFogDepth * vFogDepth );\\\\n\\\\n\\\\t#else\\\\n\\\\n\\\\t\\\\tfloat fogFactor = smoothstep( fogNear, fogFar, vFogDepth );\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\tgl_FragColor.rgb = mix( gl_FragColor.rgb, fogColor, fogFactor );\\\\n\\\\n#endif\\\\n\\\\\\\",fog_pars_fragment:\\\\\\\"\\\\n#ifdef USE_FOG\\\\n\\\\n\\\\tuniform vec3 fogColor;\\\\n\\\\tvarying float vFogDepth;\\\\n\\\\n\\\\t#ifdef FOG_EXP2\\\\n\\\\n\\\\t\\\\tuniform float fogDensity;\\\\n\\\\n\\\\t#else\\\\n\\\\n\\\\t\\\\tuniform float fogNear;\\\\n\\\\t\\\\tuniform float fogFar;\\\\n\\\\n\\\\t#endif\\\\n\\\\n#endif\\\\n\\\\\\\",gradientmap_pars_fragment:\\\\\\\"\\\\n\\\\n#ifdef USE_GRADIENTMAP\\\\n\\\\n\\\\tuniform sampler2D gradientMap;\\\\n\\\\n#endif\\\\n\\\\nvec3 getGradientIrradiance( vec3 normal, vec3 lightDirection ) {\\\\n\\\\n\\\\t// dotNL will be from -1.0 to 1.0\\\\n\\\\tfloat dotNL = dot( normal, lightDirection );\\\\n\\\\tvec2 coord = vec2( dotNL * 0.5 + 0.5, 0.0 );\\\\n\\\\n\\\\t#ifdef USE_GRADIENTMAP\\\\n\\\\n\\\\t\\\\treturn texture2D( gradientMap, coord ).rgb;\\\\n\\\\n\\\\t#else\\\\n\\\\n\\\\t\\\\treturn ( coord.x < 0.7 ) ? vec3( 0.7 ) : vec3( 1.0 );\\\\n\\\\n\\\\t#endif\\\\n\\\\n}\\\\n\\\\\\\",lightmap_fragment:\\\\\\\"\\\\n#ifdef USE_LIGHTMAP\\\\n\\\\n\\\\tvec4 lightMapTexel = texture2D( lightMap, vUv2 );\\\\n\\\\tvec3 lightMapIrradiance = lightMapTexelToLinear( lightMapTexel ).rgb * lightMapIntensity;\\\\n\\\\n\\\\t#ifndef PHYSICALLY_CORRECT_LIGHTS\\\\n\\\\n\\\\t\\\\tlightMapIrradiance *= PI;\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\treflectedLight.indirectDiffuse += lightMapIrradiance;\\\\n\\\\n#endif\\\\n\\\\\\\",lightmap_pars_fragment:\\\\\\\"\\\\n#ifdef USE_LIGHTMAP\\\\n\\\\n\\\\tuniform sampler2D lightMap;\\\\n\\\\tuniform float lightMapIntensity;\\\\n\\\\n#endif\\\\n\\\\\\\",lights_lambert_vertex:\\\\\\\"\\\\nvec3 diffuse = vec3( 1.0 );\\\\n\\\\nGeometricContext geometry;\\\\ngeometry.position = mvPosition.xyz;\\\\ngeometry.normal = normalize( transformedNormal );\\\\ngeometry.viewDir = ( isOrthographic ) ? vec3( 0, 0, 1 ) : normalize( -mvPosition.xyz );\\\\n\\\\nGeometricContext backGeometry;\\\\nbackGeometry.position = geometry.position;\\\\nbackGeometry.normal = -geometry.normal;\\\\nbackGeometry.viewDir = geometry.viewDir;\\\\n\\\\nvLightFront = vec3( 0.0 );\\\\nvIndirectFront = vec3( 0.0 );\\\\n#ifdef DOUBLE_SIDED\\\\n\\\\tvLightBack = vec3( 0.0 );\\\\n\\\\tvIndirectBack = vec3( 0.0 );\\\\n#endif\\\\n\\\\nIncidentLight directLight;\\\\nfloat dotNL;\\\\nvec3 directLightColor_Diffuse;\\\\n\\\\nvIndirectFront += getAmbientLightIrradiance( ambientLightColor );\\\\n\\\\nvIndirectFront += getLightProbeIrradiance( lightProbe, geometry.normal );\\\\n\\\\n#ifdef DOUBLE_SIDED\\\\n\\\\n\\\\tvIndirectBack += getAmbientLightIrradiance( ambientLightColor );\\\\n\\\\n\\\\tvIndirectBack += getLightProbeIrradiance( lightProbe, backGeometry.normal );\\\\n\\\\n#endif\\\\n\\\\n#if NUM_POINT_LIGHTS > 0\\\\n\\\\n\\\\t#pragma unroll_loop_start\\\\n\\\\tfor ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) {\\\\n\\\\n\\\\t\\\\tgetPointLightInfo( pointLights[ i ], geometry, directLight );\\\\n\\\\n\\\\t\\\\tdotNL = dot( geometry.normal, directLight.direction );\\\\n\\\\t\\\\tdirectLightColor_Diffuse = directLight.color;\\\\n\\\\n\\\\t\\\\tvLightFront += saturate( dotNL ) * directLightColor_Diffuse;\\\\n\\\\n\\\\t\\\\t#ifdef DOUBLE_SIDED\\\\n\\\\n\\\\t\\\\t\\\\tvLightBack += saturate( - dotNL ) * directLightColor_Diffuse;\\\\n\\\\n\\\\t\\\\t#endif\\\\n\\\\n\\\\t}\\\\n\\\\t#pragma unroll_loop_end\\\\n\\\\n#endif\\\\n\\\\n#if NUM_SPOT_LIGHTS > 0\\\\n\\\\n\\\\t#pragma unroll_loop_start\\\\n\\\\tfor ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) {\\\\n\\\\n\\\\t\\\\tgetSpotLightInfo( spotLights[ i ], geometry, directLight );\\\\n\\\\n\\\\t\\\\tdotNL = dot( geometry.normal, directLight.direction );\\\\n\\\\t\\\\tdirectLightColor_Diffuse = directLight.color;\\\\n\\\\n\\\\t\\\\tvLightFront += saturate( dotNL ) * directLightColor_Diffuse;\\\\n\\\\n\\\\t\\\\t#ifdef DOUBLE_SIDED\\\\n\\\\n\\\\t\\\\t\\\\tvLightBack += saturate( - dotNL ) * directLightColor_Diffuse;\\\\n\\\\n\\\\t\\\\t#endif\\\\n\\\\t}\\\\n\\\\t#pragma unroll_loop_end\\\\n\\\\n#endif\\\\n\\\\n#if NUM_DIR_LIGHTS > 0\\\\n\\\\n\\\\t#pragma unroll_loop_start\\\\n\\\\tfor ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) {\\\\n\\\\n\\\\t\\\\tgetDirectionalLightInfo( directionalLights[ i ], geometry, directLight );\\\\n\\\\n\\\\t\\\\tdotNL = dot( geometry.normal, directLight.direction );\\\\n\\\\t\\\\tdirectLightColor_Diffuse = directLight.color;\\\\n\\\\n\\\\t\\\\tvLightFront += saturate( dotNL ) * directLightColor_Diffuse;\\\\n\\\\n\\\\t\\\\t#ifdef DOUBLE_SIDED\\\\n\\\\n\\\\t\\\\t\\\\tvLightBack += saturate( - dotNL ) * directLightColor_Diffuse;\\\\n\\\\n\\\\t\\\\t#endif\\\\n\\\\n\\\\t}\\\\n\\\\t#pragma unroll_loop_end\\\\n\\\\n#endif\\\\n\\\\n#if NUM_HEMI_LIGHTS > 0\\\\n\\\\n\\\\t#pragma unroll_loop_start\\\\n\\\\tfor ( int i = 0; i < NUM_HEMI_LIGHTS; i ++ ) {\\\\n\\\\n\\\\t\\\\tvIndirectFront += getHemisphereLightIrradiance( hemisphereLights[ i ], geometry.normal );\\\\n\\\\n\\\\t\\\\t#ifdef DOUBLE_SIDED\\\\n\\\\n\\\\t\\\\t\\\\tvIndirectBack += getHemisphereLightIrradiance( hemisphereLights[ i ], backGeometry.normal );\\\\n\\\\n\\\\t\\\\t#endif\\\\n\\\\n\\\\t}\\\\n\\\\t#pragma unroll_loop_end\\\\n\\\\n#endif\\\\n\\\\\\\",lights_pars_begin:\\\\\\\"\\\\nuniform bool receiveShadow;\\\\nuniform vec3 ambientLightColor;\\\\nuniform vec3 lightProbe[ 9 ];\\\\n\\\\n// get the irradiance (radiance convolved with cosine lobe) at the point 'normal' on the unit sphere\\\\n// source: https://graphics.stanford.edu/papers/envmap/envmap.pdf\\\\nvec3 shGetIrradianceAt( in vec3 normal, in vec3 shCoefficients[ 9 ] ) {\\\\n\\\\n\\\\t// normal is assumed to have unit length\\\\n\\\\n\\\\tfloat x = normal.x, y = normal.y, z = normal.z;\\\\n\\\\n\\\\t// band 0\\\\n\\\\tvec3 result = shCoefficients[ 0 ] * 0.886227;\\\\n\\\\n\\\\t// band 1\\\\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\\\\n\\\\t// band 2\\\\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\\\\n\\\\treturn result;\\\\n\\\\n}\\\\n\\\\nvec3 getLightProbeIrradiance( const in vec3 lightProbe[ 9 ], const in vec3 normal ) {\\\\n\\\\n\\\\tvec3 worldNormal = inverseTransformDirection( normal, viewMatrix );\\\\n\\\\n\\\\tvec3 irradiance = shGetIrradianceAt( worldNormal, lightProbe );\\\\n\\\\n\\\\treturn irradiance;\\\\n\\\\n}\\\\n\\\\nvec3 getAmbientLightIrradiance( const in vec3 ambientLightColor ) {\\\\n\\\\n\\\\tvec3 irradiance = ambientLightColor;\\\\n\\\\n\\\\treturn irradiance;\\\\n\\\\n}\\\\n\\\\nfloat getDistanceAttenuation( const in float lightDistance, const in float cutoffDistance, const in float decayExponent ) {\\\\n\\\\n\\\\t#if defined ( PHYSICALLY_CORRECT_LIGHTS )\\\\n\\\\n\\\\t\\\\t// based upon Frostbite 3 Moving to Physically-based Rendering\\\\n\\\\t\\\\t// page 32, equation 26: E[window1]\\\\n\\\\t\\\\t// https://seblagarde.files.wordpress.com/2015/07/course_notes_moving_frostbite_to_pbr_v32.pdf\\\\n\\\\t\\\\tfloat distanceFalloff = 1.0 / max( pow( lightDistance, decayExponent ), 0.01 );\\\\n\\\\n\\\\t\\\\tif ( cutoffDistance > 0.0 ) {\\\\n\\\\n\\\\t\\\\t\\\\tdistanceFalloff *= pow2( saturate( 1.0 - pow4( lightDistance / cutoffDistance ) ) );\\\\n\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\treturn distanceFalloff;\\\\n\\\\n\\\\t#else\\\\n\\\\n\\\\t\\\\tif ( cutoffDistance > 0.0 && decayExponent > 0.0 ) {\\\\n\\\\n\\\\t\\\\t\\\\treturn pow( saturate( - lightDistance / cutoffDistance + 1.0 ), decayExponent );\\\\n\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\treturn 1.0;\\\\n\\\\n\\\\t#endif\\\\n\\\\n}\\\\n\\\\nfloat getSpotAttenuation( const in float coneCosine, const in float penumbraCosine, const in float angleCosine ) {\\\\n\\\\n\\\\treturn smoothstep( coneCosine, penumbraCosine, angleCosine );\\\\n\\\\n}\\\\n\\\\n#if NUM_DIR_LIGHTS > 0\\\\n\\\\n\\\\tstruct DirectionalLight {\\\\n\\\\t\\\\tvec3 direction;\\\\n\\\\t\\\\tvec3 color;\\\\n\\\\t};\\\\n\\\\n\\\\tuniform DirectionalLight directionalLights[ NUM_DIR_LIGHTS ];\\\\n\\\\n\\\\tvoid getDirectionalLightInfo( const in DirectionalLight directionalLight, const in GeometricContext geometry, out IncidentLight light ) {\\\\n\\\\n\\\\t\\\\tlight.color = directionalLight.color;\\\\n\\\\t\\\\tlight.direction = directionalLight.direction;\\\\n\\\\t\\\\tlight.visible = true;\\\\n\\\\n\\\\t}\\\\n\\\\n#endif\\\\n\\\\n\\\\n#if NUM_POINT_LIGHTS > 0\\\\n\\\\n\\\\tstruct PointLight {\\\\n\\\\t\\\\tvec3 position;\\\\n\\\\t\\\\tvec3 color;\\\\n\\\\t\\\\tfloat distance;\\\\n\\\\t\\\\tfloat decay;\\\\n\\\\t};\\\\n\\\\n\\\\tuniform PointLight pointLights[ NUM_POINT_LIGHTS ];\\\\n\\\\n\\\\t// light is an out parameter as having it as a return value caused compiler errors on some devices\\\\n\\\\tvoid getPointLightInfo( const in PointLight pointLight, const in GeometricContext geometry, out IncidentLight light ) {\\\\n\\\\n\\\\t\\\\tvec3 lVector = pointLight.position - geometry.position;\\\\n\\\\n\\\\t\\\\tlight.direction = normalize( lVector );\\\\n\\\\n\\\\t\\\\tfloat lightDistance = length( lVector );\\\\n\\\\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\\\\n\\\\t}\\\\n\\\\n#endif\\\\n\\\\n\\\\n#if NUM_SPOT_LIGHTS > 0\\\\n\\\\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\\\\n\\\\tuniform SpotLight spotLights[ NUM_SPOT_LIGHTS ];\\\\n\\\\n\\\\t// light is an out parameter as having it as a return value caused compiler errors on some devices\\\\n\\\\tvoid getSpotLightInfo( const in SpotLight spotLight, const in GeometricContext geometry, out IncidentLight light ) {\\\\n\\\\n\\\\t\\\\tvec3 lVector = spotLight.position - geometry.position;\\\\n\\\\n\\\\t\\\\tlight.direction = normalize( lVector );\\\\n\\\\n\\\\t\\\\tfloat angleCos = dot( light.direction, spotLight.direction );\\\\n\\\\n\\\\t\\\\tfloat spotAttenuation = getSpotAttenuation( spotLight.coneCos, spotLight.penumbraCos, angleCos );\\\\n\\\\n\\\\t\\\\tif ( spotAttenuation > 0.0 ) {\\\\n\\\\n\\\\t\\\\t\\\\tfloat lightDistance = length( lVector );\\\\n\\\\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\\\\n\\\\t\\\\t} else {\\\\n\\\\n\\\\t\\\\t\\\\tlight.color = vec3( 0.0 );\\\\n\\\\t\\\\t\\\\tlight.visible = false;\\\\n\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t}\\\\n\\\\n#endif\\\\n\\\\n\\\\n#if NUM_RECT_AREA_LIGHTS > 0\\\\n\\\\n\\\\tstruct RectAreaLight {\\\\n\\\\t\\\\tvec3 color;\\\\n\\\\t\\\\tvec3 position;\\\\n\\\\t\\\\tvec3 halfWidth;\\\\n\\\\t\\\\tvec3 halfHeight;\\\\n\\\\t};\\\\n\\\\n\\\\t// Pre-computed values of LinearTransformedCosine approximation of BRDF\\\\n\\\\t// BRDF approximation Texture is 64x64\\\\n\\\\tuniform sampler2D ltc_1; // RGBA Float\\\\n\\\\tuniform sampler2D ltc_2; // RGBA Float\\\\n\\\\n\\\\tuniform RectAreaLight rectAreaLights[ NUM_RECT_AREA_LIGHTS ];\\\\n\\\\n#endif\\\\n\\\\n\\\\n#if NUM_HEMI_LIGHTS > 0\\\\n\\\\n\\\\tstruct HemisphereLight {\\\\n\\\\t\\\\tvec3 direction;\\\\n\\\\t\\\\tvec3 skyColor;\\\\n\\\\t\\\\tvec3 groundColor;\\\\n\\\\t};\\\\n\\\\n\\\\tuniform HemisphereLight hemisphereLights[ NUM_HEMI_LIGHTS ];\\\\n\\\\n\\\\tvec3 getHemisphereLightIrradiance( const in HemisphereLight hemiLight, const in vec3 normal ) {\\\\n\\\\n\\\\t\\\\tfloat dotNL = dot( normal, hemiLight.direction );\\\\n\\\\t\\\\tfloat hemiDiffuseWeight = 0.5 * dotNL + 0.5;\\\\n\\\\n\\\\t\\\\tvec3 irradiance = mix( hemiLight.groundColor, hemiLight.skyColor, hemiDiffuseWeight );\\\\n\\\\n\\\\t\\\\treturn irradiance;\\\\n\\\\n\\\\t}\\\\n\\\\n#endif\\\\n\\\\\\\",lights_toon_fragment:\\\\\\\"\\\\nToonMaterial material;\\\\nmaterial.diffuseColor = diffuseColor.rgb;\\\\n\\\\\\\",lights_toon_pars_fragment:\\\\\\\"\\\\nvarying vec3 vViewPosition;\\\\n\\\\nstruct ToonMaterial {\\\\n\\\\n\\\\tvec3 diffuseColor;\\\\n\\\\n};\\\\n\\\\nvoid RE_Direct_Toon( const in IncidentLight directLight, const in GeometricContext geometry, const in ToonMaterial material, inout ReflectedLight reflectedLight ) {\\\\n\\\\n\\\\tvec3 irradiance = getGradientIrradiance( geometry.normal, directLight.direction ) * directLight.color;\\\\n\\\\n\\\\treflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\\\\n\\\\n}\\\\n\\\\nvoid RE_IndirectDiffuse_Toon( const in vec3 irradiance, const in GeometricContext geometry, const in ToonMaterial material, inout ReflectedLight reflectedLight ) {\\\\n\\\\n\\\\treflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\\\\n\\\\n}\\\\n\\\\n#define RE_Direct\\\\t\\\\t\\\\t\\\\tRE_Direct_Toon\\\\n#define RE_IndirectDiffuse\\\\t\\\\tRE_IndirectDiffuse_Toon\\\\n\\\\n#define Material_LightProbeLOD( material )\\\\t(0)\\\\n\\\\\\\",lights_phong_fragment:\\\\\\\"\\\\nBlinnPhongMaterial material;\\\\nmaterial.diffuseColor = diffuseColor.rgb;\\\\nmaterial.specularColor = specular;\\\\nmaterial.specularShininess = shininess;\\\\nmaterial.specularStrength = specularStrength;\\\\n\\\\\\\",lights_phong_pars_fragment:\\\\\\\"\\\\nvarying vec3 vViewPosition;\\\\n\\\\nstruct BlinnPhongMaterial {\\\\n\\\\n\\\\tvec3 diffuseColor;\\\\n\\\\tvec3 specularColor;\\\\n\\\\tfloat specularShininess;\\\\n\\\\tfloat specularStrength;\\\\n\\\\n};\\\\n\\\\nvoid RE_Direct_BlinnPhong( const in IncidentLight directLight, const in GeometricContext geometry, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) {\\\\n\\\\n\\\\tfloat dotNL = saturate( dot( geometry.normal, directLight.direction ) );\\\\n\\\\tvec3 irradiance = dotNL * directLight.color;\\\\n\\\\n\\\\treflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\\\\n\\\\n\\\\treflectedLight.directSpecular += irradiance * BRDF_BlinnPhong( directLight.direction, geometry.viewDir, geometry.normal, material.specularColor, material.specularShininess ) * material.specularStrength;\\\\n\\\\n}\\\\n\\\\nvoid RE_IndirectDiffuse_BlinnPhong( const in vec3 irradiance, const in GeometricContext geometry, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) {\\\\n\\\\n\\\\treflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\\\\n\\\\n}\\\\n\\\\n#define RE_Direct\\\\t\\\\t\\\\t\\\\tRE_Direct_BlinnPhong\\\\n#define RE_IndirectDiffuse\\\\t\\\\tRE_IndirectDiffuse_BlinnPhong\\\\n\\\\n#define Material_LightProbeLOD( material )\\\\t(0)\\\\n\\\\\\\",lights_physical_fragment:\\\\\\\"\\\\nPhysicalMaterial material;\\\\nmaterial.diffuseColor = diffuseColor.rgb * ( 1.0 - metalnessFactor );\\\\n\\\\nvec3 dxy = max( abs( dFdx( geometryNormal ) ), abs( dFdy( geometryNormal ) ) );\\\\nfloat geometryRoughness = max( max( dxy.x, dxy.y ), dxy.z );\\\\n\\\\nmaterial.roughness = max( roughnessFactor, 0.0525 );// 0.0525 corresponds to the base mip of a 256 cubemap.\\\\nmaterial.roughness += geometryRoughness;\\\\nmaterial.roughness = min( material.roughness, 1.0 );\\\\n\\\\n#ifdef IOR\\\\n\\\\n\\\\t#ifdef SPECULAR\\\\n\\\\n\\\\t\\\\tfloat specularIntensityFactor = specularIntensity;\\\\n\\\\t\\\\tvec3 specularTintFactor = specularTint;\\\\n\\\\n\\\\t\\\\t#ifdef USE_SPECULARINTENSITYMAP\\\\n\\\\n\\\\t\\\\t\\\\tspecularIntensityFactor *= texture2D( specularIntensityMap, vUv ).a;\\\\n\\\\n\\\\t\\\\t#endif\\\\n\\\\n\\\\t\\\\t#ifdef USE_SPECULARTINTMAP\\\\n\\\\n\\\\t\\\\t\\\\tspecularTintFactor *= specularTintMapTexelToLinear( texture2D( specularTintMap, vUv ) ).rgb;\\\\n\\\\n\\\\t\\\\t#endif\\\\n\\\\n\\\\t\\\\tmaterial.specularF90 = mix( specularIntensityFactor, 1.0, metalnessFactor );\\\\n\\\\n\\\\t#else\\\\n\\\\n\\\\t\\\\tfloat specularIntensityFactor = 1.0;\\\\n\\\\t\\\\tvec3 specularTintFactor = vec3( 1.0 );\\\\n\\\\t\\\\tmaterial.specularF90 = 1.0;\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\tmaterial.specularColor = mix( min( pow2( ( ior - 1.0 ) / ( ior + 1.0 ) ) * specularTintFactor, vec3( 1.0 ) ) * specularIntensityFactor, diffuseColor.rgb, metalnessFactor );\\\\n\\\\n#else\\\\n\\\\n\\\\tmaterial.specularColor = mix( vec3( 0.04 ), diffuseColor.rgb, metalnessFactor );\\\\n\\\\tmaterial.specularF90 = 1.0;\\\\n\\\\n#endif\\\\n\\\\n#ifdef USE_CLEARCOAT\\\\n\\\\n\\\\tmaterial.clearcoat = clearcoat;\\\\n\\\\tmaterial.clearcoatRoughness = clearcoatRoughness;\\\\n\\\\tmaterial.clearcoatF0 = vec3( 0.04 );\\\\n\\\\tmaterial.clearcoatF90 = 1.0;\\\\n\\\\n\\\\t#ifdef USE_CLEARCOATMAP\\\\n\\\\n\\\\t\\\\tmaterial.clearcoat *= texture2D( clearcoatMap, vUv ).x;\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\t#ifdef USE_CLEARCOAT_ROUGHNESSMAP\\\\n\\\\n\\\\t\\\\tmaterial.clearcoatRoughness *= texture2D( clearcoatRoughnessMap, vUv ).y;\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\tmaterial.clearcoat = saturate( material.clearcoat ); // Burley clearcoat model\\\\n\\\\tmaterial.clearcoatRoughness = max( material.clearcoatRoughness, 0.0525 );\\\\n\\\\tmaterial.clearcoatRoughness += geometryRoughness;\\\\n\\\\tmaterial.clearcoatRoughness = min( material.clearcoatRoughness, 1.0 );\\\\n\\\\n#endif\\\\n\\\\n#ifdef USE_SHEEN\\\\n\\\\n\\\\tmaterial.sheenTint = sheenTint;\\\\n\\\\tmaterial.sheenRoughness = clamp( sheenRoughness, 0.07, 1.0 );\\\\n\\\\n#endif\\\\n\\\\\\\",lights_physical_pars_fragment:'\\\\nstruct PhysicalMaterial {\\\\n\\\\n\\\\tvec3 diffuseColor;\\\\n\\\\tfloat roughness;\\\\n\\\\tvec3 specularColor;\\\\n\\\\tfloat specularF90;\\\\n\\\\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\\\\n\\\\t#ifdef USE_SHEEN\\\\n\\\\t\\\\tvec3 sheenTint;\\\\n\\\\t\\\\tfloat sheenRoughness;\\\\n\\\\t#endif\\\\n\\\\n};\\\\n\\\\n// temporary\\\\nvec3 clearcoatSpecular = vec3( 0.0 );\\\\n\\\\n// Analytical approximation of the DFG LUT, one half of the\\\\n// split-sum approximation used in indirect specular lighting.\\\\n// via \\\\'environmentBRDF\\\\' from \\\\\\\"Physically Based Shading on Mobile\\\\\\\"\\\\n// https://www.unrealengine.com/blog/physically-based-shading-on-mobile\\\\nvec2 DFGApprox( const in vec3 normal, const in vec3 viewDir, const in float roughness ) {\\\\n\\\\n\\\\tfloat dotNV = saturate( dot( normal, viewDir ) );\\\\n\\\\n\\\\tconst vec4 c0 = vec4( - 1, - 0.0275, - 0.572, 0.022 );\\\\n\\\\n\\\\tconst vec4 c1 = vec4( 1, 0.0425, 1.04, - 0.04 );\\\\n\\\\n\\\\tvec4 r = roughness * c0 + c1;\\\\n\\\\n\\\\tfloat a004 = min( r.x * r.x, exp2( - 9.28 * dotNV ) ) * r.x + r.y;\\\\n\\\\n\\\\tvec2 fab = vec2( - 1.04, 1.04 ) * a004 + r.zw;\\\\n\\\\n\\\\treturn fab;\\\\n\\\\n}\\\\n\\\\nvec3 EnvironmentBRDF( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float roughness ) {\\\\n\\\\n\\\\tvec2 fab = DFGApprox( normal, viewDir, roughness );\\\\n\\\\n\\\\treturn specularColor * fab.x + specularF90 * fab.y;\\\\n\\\\n}\\\\n\\\\n// Fdez-Agüera\\\\'s \\\\\\\"Multiple-Scattering Microfacet Model for Real-Time Image Based Lighting\\\\\\\"\\\\n// Approximates multiscattering in order to preserve energy.\\\\n// http://www.jcgt.org/published/0008/01/03/\\\\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\\\\n\\\\tvec2 fab = DFGApprox( normal, viewDir, roughness );\\\\n\\\\n\\\\tvec3 FssEss = specularColor * fab.x + specularF90 * fab.y;\\\\n\\\\n\\\\tfloat Ess = fab.x + fab.y;\\\\n\\\\tfloat Ems = 1.0 - Ess;\\\\n\\\\n\\\\tvec3 Favg = specularColor + ( 1.0 - specularColor ) * 0.047619; // 1/21\\\\n\\\\tvec3 Fms = FssEss * Favg / ( 1.0 - Ems * Favg );\\\\n\\\\n\\\\tsingleScatter += FssEss;\\\\n\\\\tmultiScatter += Fms * Ems;\\\\n\\\\n}\\\\n\\\\n#if NUM_RECT_AREA_LIGHTS > 0\\\\n\\\\n\\\\tvoid RE_Direct_RectArea_Physical( const in RectAreaLight rectAreaLight, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\\\\n\\\\n\\\\t\\\\tvec3 normal = geometry.normal;\\\\n\\\\t\\\\tvec3 viewDir = geometry.viewDir;\\\\n\\\\t\\\\tvec3 position = geometry.position;\\\\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\\\\n\\\\t\\\\tvec3 rectCoords[ 4 ];\\\\n\\\\t\\\\trectCoords[ 0 ] = lightPos + halfWidth - halfHeight; // counterclockwise; light shines in local neg z direction\\\\n\\\\t\\\\trectCoords[ 1 ] = lightPos - halfWidth - halfHeight;\\\\n\\\\t\\\\trectCoords[ 2 ] = lightPos - halfWidth + halfHeight;\\\\n\\\\t\\\\trectCoords[ 3 ] = lightPos + halfWidth + halfHeight;\\\\n\\\\n\\\\t\\\\tvec2 uv = LTC_Uv( normal, viewDir, roughness );\\\\n\\\\n\\\\t\\\\tvec4 t1 = texture2D( ltc_1, uv );\\\\n\\\\t\\\\tvec4 t2 = texture2D( ltc_2, uv );\\\\n\\\\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\\\\n\\\\t\\\\t// LTC Fresnel Approximation by Stephen Hill\\\\n\\\\t\\\\t// http://blog.selfshadow.com/publications/s2016-advances/s2016_ltc_fresnel.pdf\\\\n\\\\t\\\\tvec3 fresnel = ( material.specularColor * t2.x + ( vec3( 1.0 ) - material.specularColor ) * t2.y );\\\\n\\\\n\\\\t\\\\treflectedLight.directSpecular += lightColor * fresnel * LTC_Evaluate( normal, viewDir, position, mInv, rectCoords );\\\\n\\\\n\\\\t\\\\treflectedLight.directDiffuse += lightColor * material.diffuseColor * LTC_Evaluate( normal, viewDir, position, mat3( 1.0 ), rectCoords );\\\\n\\\\n\\\\t}\\\\n\\\\n#endif\\\\n\\\\nvoid RE_Direct_Physical( const in IncidentLight directLight, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\\\\n\\\\n\\\\tfloat dotNL = saturate( dot( geometry.normal, directLight.direction ) );\\\\n\\\\n\\\\tvec3 irradiance = dotNL * directLight.color;\\\\n\\\\n\\\\t#ifdef USE_CLEARCOAT\\\\n\\\\n\\\\t\\\\tfloat dotNLcc = saturate( dot( geometry.clearcoatNormal, directLight.direction ) );\\\\n\\\\n\\\\t\\\\tvec3 ccIrradiance = dotNLcc * directLight.color;\\\\n\\\\n\\\\t\\\\tclearcoatSpecular += ccIrradiance * BRDF_GGX( directLight.direction, geometry.viewDir, geometry.clearcoatNormal, material.clearcoatF0, material.clearcoatF90, material.clearcoatRoughness );\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\t#ifdef USE_SHEEN\\\\n\\\\n\\\\t\\\\treflectedLight.directSpecular += irradiance * BRDF_Sheen( directLight.direction, geometry.viewDir, geometry.normal, material.sheenTint, material.sheenRoughness );\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\treflectedLight.directSpecular += irradiance * BRDF_GGX( directLight.direction, geometry.viewDir, geometry.normal, material.specularColor, material.specularF90, material.roughness );\\\\n\\\\n\\\\n\\\\treflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\\\\n}\\\\n\\\\nvoid RE_IndirectDiffuse_Physical( const in vec3 irradiance, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\\\\n\\\\n\\\\treflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\\\\n\\\\n}\\\\n\\\\nvoid RE_IndirectSpecular_Physical( const in vec3 radiance, const in vec3 irradiance, const in vec3 clearcoatRadiance, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight) {\\\\n\\\\n\\\\t#ifdef USE_CLEARCOAT\\\\n\\\\n\\\\t\\\\tclearcoatSpecular += clearcoatRadiance * EnvironmentBRDF( geometry.clearcoatNormal, geometry.viewDir, material.clearcoatF0, material.clearcoatF90, material.clearcoatRoughness );\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\t// Both indirect specular and indirect diffuse light accumulate here\\\\n\\\\n\\\\tvec3 singleScattering = vec3( 0.0 );\\\\n\\\\tvec3 multiScattering = vec3( 0.0 );\\\\n\\\\tvec3 cosineWeightedIrradiance = irradiance * RECIPROCAL_PI;\\\\n\\\\n\\\\tcomputeMultiscattering( geometry.normal, geometry.viewDir, material.specularColor, material.specularF90, material.roughness, singleScattering, multiScattering );\\\\n\\\\n\\\\tvec3 diffuse = material.diffuseColor * ( 1.0 - ( singleScattering + multiScattering ) );\\\\n\\\\n\\\\treflectedLight.indirectSpecular += radiance * singleScattering;\\\\n\\\\treflectedLight.indirectSpecular += multiScattering * cosineWeightedIrradiance;\\\\n\\\\n\\\\treflectedLight.indirectDiffuse += diffuse * cosineWeightedIrradiance;\\\\n\\\\n}\\\\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\\\\n\\\\n// ref: https://seblagarde.files.wordpress.com/2015/07/course_notes_moving_frostbite_to_pbr_v32.pdf\\\\nfloat computeSpecularOcclusion( const in float dotNV, const in float ambientOcclusion, const in float roughness ) {\\\\n\\\\n\\\\treturn saturate( pow( dotNV + ambientOcclusion, exp2( - 16.0 * roughness - 1.0 ) ) - 1.0 + ambientOcclusion );\\\\n\\\\n}\\\\n',lights_fragment_begin:\\\\\\\"\\\\n/**\\\\n * This is a template that can be used to light a material, it uses pluggable\\\\n * RenderEquations (RE)for specific lighting scenarios.\\\\n *\\\\n * Instructions for use:\\\\n * - Ensure that both RE_Direct, RE_IndirectDiffuse and RE_IndirectSpecular are defined\\\\n * - If you have defined an RE_IndirectSpecular, you need to also provide a Material_LightProbeLOD. <---- ???\\\\n * - Create a material parameter that is to be passed as the third parameter to your lighting functions.\\\\n *\\\\n * TODO:\\\\n * - Add area light support.\\\\n * - Add sphere light support.\\\\n * - Add diffuse light probe (irradiance cubemap) support.\\\\n */\\\\n\\\\nGeometricContext geometry;\\\\n\\\\ngeometry.position = - vViewPosition;\\\\ngeometry.normal = normal;\\\\ngeometry.viewDir = ( isOrthographic ) ? vec3( 0, 0, 1 ) : normalize( vViewPosition );\\\\n\\\\n#ifdef USE_CLEARCOAT\\\\n\\\\n\\\\tgeometry.clearcoatNormal = clearcoatNormal;\\\\n\\\\n#endif\\\\n\\\\nIncidentLight directLight;\\\\n\\\\n#if ( NUM_POINT_LIGHTS > 0 ) && defined( RE_Direct )\\\\n\\\\n\\\\tPointLight pointLight;\\\\n\\\\t#if defined( USE_SHADOWMAP ) && NUM_POINT_LIGHT_SHADOWS > 0\\\\n\\\\tPointLightShadow pointLightShadow;\\\\n\\\\t#endif\\\\n\\\\n\\\\t#pragma unroll_loop_start\\\\n\\\\tfor ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) {\\\\n\\\\n\\\\t\\\\tpointLight = pointLights[ i ];\\\\n\\\\n\\\\t\\\\tgetPointLightInfo( pointLight, geometry, directLight );\\\\n\\\\n\\\\t\\\\t#if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_POINT_LIGHT_SHADOWS )\\\\n\\\\t\\\\tpointLightShadow = pointLightShadows[ i ];\\\\n\\\\t\\\\tdirectLight.color *= all( bvec2( 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\\\\n\\\\t\\\\tRE_Direct( directLight, geometry, material, reflectedLight );\\\\n\\\\n\\\\t}\\\\n\\\\t#pragma unroll_loop_end\\\\n\\\\n#endif\\\\n\\\\n#if ( NUM_SPOT_LIGHTS > 0 ) && defined( RE_Direct )\\\\n\\\\n\\\\tSpotLight spotLight;\\\\n\\\\t#if defined( USE_SHADOWMAP ) && NUM_SPOT_LIGHT_SHADOWS > 0\\\\n\\\\tSpotLightShadow spotLightShadow;\\\\n\\\\t#endif\\\\n\\\\n\\\\t#pragma unroll_loop_start\\\\n\\\\tfor ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) {\\\\n\\\\n\\\\t\\\\tspotLight = spotLights[ i ];\\\\n\\\\n\\\\t\\\\tgetSpotLightInfo( spotLight, geometry, directLight );\\\\n\\\\n\\\\t\\\\t#if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS )\\\\n\\\\t\\\\tspotLightShadow = spotLightShadows[ i ];\\\\n\\\\t\\\\tdirectLight.color *= all( bvec2( directLight.visible, receiveShadow ) ) ? getShadow( spotShadowMap[ i ], spotLightShadow.shadowMapSize, spotLightShadow.shadowBias, spotLightShadow.shadowRadius, vSpotShadowCoord[ i ] ) : 1.0;\\\\n\\\\t\\\\t#endif\\\\n\\\\n\\\\t\\\\tRE_Direct( directLight, geometry, material, reflectedLight );\\\\n\\\\n\\\\t}\\\\n\\\\t#pragma unroll_loop_end\\\\n\\\\n#endif\\\\n\\\\n#if ( NUM_DIR_LIGHTS > 0 ) && defined( RE_Direct )\\\\n\\\\n\\\\tDirectionalLight directionalLight;\\\\n\\\\t#if defined( USE_SHADOWMAP ) && NUM_DIR_LIGHT_SHADOWS > 0\\\\n\\\\tDirectionalLightShadow directionalLightShadow;\\\\n\\\\t#endif\\\\n\\\\n\\\\t#pragma unroll_loop_start\\\\n\\\\tfor ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) {\\\\n\\\\n\\\\t\\\\tdirectionalLight = directionalLights[ i ];\\\\n\\\\n\\\\t\\\\tgetDirectionalLightInfo( directionalLight, geometry, directLight );\\\\n\\\\n\\\\t\\\\t#if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_DIR_LIGHT_SHADOWS )\\\\n\\\\t\\\\tdirectionalLightShadow = directionalLightShadows[ i ];\\\\n\\\\t\\\\tdirectLight.color *= all( bvec2( directLight.visible, receiveShadow ) ) ? getShadow( directionalShadowMap[ i ], directionalLightShadow.shadowMapSize, directionalLightShadow.shadowBias, directionalLightShadow.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0;\\\\n\\\\t\\\\t#endif\\\\n\\\\n\\\\t\\\\tRE_Direct( directLight, geometry, material, reflectedLight );\\\\n\\\\n\\\\t}\\\\n\\\\t#pragma unroll_loop_end\\\\n\\\\n#endif\\\\n\\\\n#if ( NUM_RECT_AREA_LIGHTS > 0 ) && defined( RE_Direct_RectArea )\\\\n\\\\n\\\\tRectAreaLight rectAreaLight;\\\\n\\\\n\\\\t#pragma unroll_loop_start\\\\n\\\\tfor ( int i = 0; i < NUM_RECT_AREA_LIGHTS; i ++ ) {\\\\n\\\\n\\\\t\\\\trectAreaLight = rectAreaLights[ i ];\\\\n\\\\t\\\\tRE_Direct_RectArea( rectAreaLight, geometry, material, reflectedLight );\\\\n\\\\n\\\\t}\\\\n\\\\t#pragma unroll_loop_end\\\\n\\\\n#endif\\\\n\\\\n#if defined( RE_IndirectDiffuse )\\\\n\\\\n\\\\tvec3 iblIrradiance = vec3( 0.0 );\\\\n\\\\n\\\\tvec3 irradiance = getAmbientLightIrradiance( ambientLightColor );\\\\n\\\\n\\\\tirradiance += getLightProbeIrradiance( lightProbe, geometry.normal );\\\\n\\\\n\\\\t#if ( NUM_HEMI_LIGHTS > 0 )\\\\n\\\\n\\\\t\\\\t#pragma unroll_loop_start\\\\n\\\\t\\\\tfor ( int i = 0; i < NUM_HEMI_LIGHTS; i ++ ) {\\\\n\\\\n\\\\t\\\\t\\\\tirradiance += getHemisphereLightIrradiance( hemisphereLights[ i ], geometry.normal );\\\\n\\\\n\\\\t\\\\t}\\\\n\\\\t\\\\t#pragma unroll_loop_end\\\\n\\\\n\\\\t#endif\\\\n\\\\n#endif\\\\n\\\\n#if defined( RE_IndirectSpecular )\\\\n\\\\n\\\\tvec3 radiance = vec3( 0.0 );\\\\n\\\\tvec3 clearcoatRadiance = vec3( 0.0 );\\\\n\\\\n#endif\\\\n\\\\\\\",lights_fragment_maps:\\\\\\\"\\\\n#if defined( RE_IndirectDiffuse )\\\\n\\\\n\\\\t#ifdef USE_LIGHTMAP\\\\n\\\\n\\\\t\\\\tvec4 lightMapTexel = texture2D( lightMap, vUv2 );\\\\n\\\\t\\\\tvec3 lightMapIrradiance = lightMapTexelToLinear( lightMapTexel ).rgb * lightMapIntensity;\\\\n\\\\n\\\\t\\\\t#ifndef PHYSICALLY_CORRECT_LIGHTS\\\\n\\\\n\\\\t\\\\t\\\\tlightMapIrradiance *= PI;\\\\n\\\\n\\\\t\\\\t#endif\\\\n\\\\n\\\\t\\\\tirradiance += lightMapIrradiance;\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\t#if defined( USE_ENVMAP ) && defined( STANDARD ) && defined( ENVMAP_TYPE_CUBE_UV )\\\\n\\\\n\\\\t\\\\tiblIrradiance += getIBLIrradiance( geometry.normal );\\\\n\\\\n\\\\t#endif\\\\n\\\\n#endif\\\\n\\\\n#if defined( USE_ENVMAP ) && defined( RE_IndirectSpecular )\\\\n\\\\n\\\\tradiance += getIBLRadiance( geometry.viewDir, geometry.normal, material.roughness );\\\\n\\\\n\\\\t#ifdef USE_CLEARCOAT\\\\n\\\\n\\\\t\\\\tclearcoatRadiance += getIBLRadiance( geometry.viewDir, geometry.clearcoatNormal, material.clearcoatRoughness );\\\\n\\\\n\\\\t#endif\\\\n\\\\n#endif\\\\n\\\\\\\",lights_fragment_end:\\\\\\\"\\\\n#if defined( RE_IndirectDiffuse )\\\\n\\\\n\\\\tRE_IndirectDiffuse( irradiance, geometry, material, reflectedLight );\\\\n\\\\n#endif\\\\n\\\\n#if defined( RE_IndirectSpecular )\\\\n\\\\n\\\\tRE_IndirectSpecular( radiance, iblIrradiance, clearcoatRadiance, geometry, material, reflectedLight );\\\\n\\\\n#endif\\\\n\\\\\\\",logdepthbuf_fragment:\\\\\\\"\\\\n#if defined( USE_LOGDEPTHBUF ) && defined( USE_LOGDEPTHBUF_EXT )\\\\n\\\\n\\\\t// Doing a strict comparison with == 1.0 can cause noise artifacts\\\\n\\\\t// on some platforms. See issue #17623.\\\\n\\\\tgl_FragDepthEXT = vIsPerspective == 0.0 ? gl_FragCoord.z : log2( vFragDepth ) * logDepthBufFC * 0.5;\\\\n\\\\n#endif\\\\n\\\\\\\",logdepthbuf_pars_fragment:\\\\\\\"\\\\n#if defined( USE_LOGDEPTHBUF ) && defined( USE_LOGDEPTHBUF_EXT )\\\\n\\\\n\\\\tuniform float logDepthBufFC;\\\\n\\\\tvarying float vFragDepth;\\\\n\\\\tvarying float vIsPerspective;\\\\n\\\\n#endif\\\\n\\\\\\\",logdepthbuf_pars_vertex:\\\\\\\"\\\\n#ifdef USE_LOGDEPTHBUF\\\\n\\\\n\\\\t#ifdef USE_LOGDEPTHBUF_EXT\\\\n\\\\n\\\\t\\\\tvarying float vFragDepth;\\\\n\\\\t\\\\tvarying float vIsPerspective;\\\\n\\\\n\\\\t#else\\\\n\\\\n\\\\t\\\\tuniform float logDepthBufFC;\\\\n\\\\n\\\\t#endif\\\\n\\\\n#endif\\\\n\\\\\\\",logdepthbuf_vertex:\\\\\\\"\\\\n#ifdef USE_LOGDEPTHBUF\\\\n\\\\n\\\\t#ifdef USE_LOGDEPTHBUF_EXT\\\\n\\\\n\\\\t\\\\tvFragDepth = 1.0 + gl_Position.w;\\\\n\\\\t\\\\tvIsPerspective = float( isPerspectiveMatrix( projectionMatrix ) );\\\\n\\\\n\\\\t#else\\\\n\\\\n\\\\t\\\\tif ( isPerspectiveMatrix( projectionMatrix ) ) {\\\\n\\\\n\\\\t\\\\t\\\\tgl_Position.z = log2( max( EPSILON, gl_Position.w + 1.0 ) ) * logDepthBufFC - 1.0;\\\\n\\\\n\\\\t\\\\t\\\\tgl_Position.z *= gl_Position.w;\\\\n\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t#endif\\\\n\\\\n#endif\\\\n\\\\\\\",map_fragment:\\\\\\\"\\\\n#ifdef USE_MAP\\\\n\\\\n\\\\tvec4 texelColor = texture2D( map, vUv );\\\\n\\\\n\\\\ttexelColor = mapTexelToLinear( texelColor );\\\\n\\\\tdiffuseColor *= texelColor;\\\\n\\\\n#endif\\\\n\\\\\\\",map_pars_fragment:\\\\\\\"\\\\n#ifdef USE_MAP\\\\n\\\\n\\\\tuniform sampler2D map;\\\\n\\\\n#endif\\\\n\\\\\\\",map_particle_fragment:\\\\\\\"\\\\n#if defined( USE_MAP ) || defined( USE_ALPHAMAP )\\\\n\\\\n\\\\tvec2 uv = ( uvTransform * vec3( gl_PointCoord.x, 1.0 - gl_PointCoord.y, 1 ) ).xy;\\\\n\\\\n#endif\\\\n\\\\n#ifdef USE_MAP\\\\n\\\\n\\\\tvec4 mapTexel = texture2D( map, uv );\\\\n\\\\tdiffuseColor *= mapTexelToLinear( mapTexel );\\\\n\\\\n#endif\\\\n\\\\n#ifdef USE_ALPHAMAP\\\\n\\\\n\\\\tdiffuseColor.a *= texture2D( alphaMap, uv ).g;\\\\n\\\\n#endif\\\\n\\\\\\\",map_particle_pars_fragment:\\\\\\\"\\\\n#if defined( USE_MAP ) || defined( USE_ALPHAMAP )\\\\n\\\\n\\\\tuniform mat3 uvTransform;\\\\n\\\\n#endif\\\\n\\\\n#ifdef USE_MAP\\\\n\\\\n\\\\tuniform sampler2D map;\\\\n\\\\n#endif\\\\n\\\\n#ifdef USE_ALPHAMAP\\\\n\\\\n\\\\tuniform sampler2D alphaMap;\\\\n\\\\n#endif\\\\n\\\\\\\",metalnessmap_fragment:\\\\\\\"\\\\nfloat metalnessFactor = metalness;\\\\n\\\\n#ifdef USE_METALNESSMAP\\\\n\\\\n\\\\tvec4 texelMetalness = texture2D( metalnessMap, vUv );\\\\n\\\\n\\\\t// reads channel B, compatible with a combined OcclusionRoughnessMetallic (RGB) texture\\\\n\\\\tmetalnessFactor *= texelMetalness.b;\\\\n\\\\n#endif\\\\n\\\\\\\",metalnessmap_pars_fragment:\\\\\\\"\\\\n#ifdef USE_METALNESSMAP\\\\n\\\\n\\\\tuniform sampler2D metalnessMap;\\\\n\\\\n#endif\\\\n\\\\\\\",morphnormal_vertex:\\\\\\\"\\\\n#ifdef USE_MORPHNORMALS\\\\n\\\\n\\\\t// morphTargetBaseInfluence is set based on BufferGeometry.morphTargetsRelative value:\\\\n\\\\t// When morphTargetsRelative is false, this is set to 1 - sum(influences); this results in normal = sum((target - base) * influence)\\\\n\\\\t// When morphTargetsRelative is true, this is set to 1; as a result, all morph targets are simply added to the base after weighting\\\\n\\\\tobjectNormal *= morphTargetBaseInfluence;\\\\n\\\\n\\\\t#ifdef MORPHTARGETS_TEXTURE\\\\n\\\\n\\\\t\\\\tfor ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {\\\\n\\\\n\\\\t\\\\t\\\\tif ( morphTargetInfluences[ i ] > 0.0 ) objectNormal += getMorph( gl_VertexID, i, 1, 2 ) * morphTargetInfluences[ i ];\\\\n\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t#else\\\\n\\\\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\\\\n\\\\t#endif\\\\n\\\\n#endif\\\\n\\\\\\\",morphtarget_pars_vertex:\\\\\\\"\\\\n#ifdef USE_MORPHTARGETS\\\\n\\\\n\\\\tuniform float morphTargetBaseInfluence;\\\\n\\\\n\\\\t#ifdef MORPHTARGETS_TEXTURE\\\\n\\\\n\\\\t\\\\tuniform float morphTargetInfluences[ MORPHTARGETS_COUNT ];\\\\n\\\\t\\\\tuniform sampler2DArray morphTargetsTexture;\\\\n\\\\t\\\\tuniform vec2 morphTargetsTextureSize;\\\\n\\\\n\\\\t\\\\tvec3 getMorph( const in int vertexIndex, const in int morphTargetIndex, const in int offset, const in int stride ) {\\\\n\\\\n\\\\t\\\\t\\\\tfloat texelIndex = float( vertexIndex * stride + offset );\\\\n\\\\t\\\\t\\\\tfloat y = floor( texelIndex / morphTargetsTextureSize.x );\\\\n\\\\t\\\\t\\\\tfloat x = texelIndex - y * morphTargetsTextureSize.x;\\\\n\\\\n\\\\t\\\\t\\\\tvec3 morphUV = vec3( ( x + 0.5 ) / morphTargetsTextureSize.x, y / morphTargetsTextureSize.y, morphTargetIndex );\\\\n\\\\t\\\\t\\\\treturn texture( morphTargetsTexture, morphUV ).xyz;\\\\n\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t#else\\\\n\\\\n\\\\t\\\\t#ifndef USE_MORPHNORMALS\\\\n\\\\n\\\\t\\\\t\\\\tuniform float morphTargetInfluences[ 8 ];\\\\n\\\\n\\\\t\\\\t#else\\\\n\\\\n\\\\t\\\\t\\\\tuniform float morphTargetInfluences[ 4 ];\\\\n\\\\n\\\\t\\\\t#endif\\\\n\\\\n\\\\t#endif\\\\n\\\\n#endif\\\\n\\\\\\\",morphtarget_vertex:\\\\\\\"\\\\n#ifdef USE_MORPHTARGETS\\\\n\\\\n\\\\t// morphTargetBaseInfluence is set based on BufferGeometry.morphTargetsRelative value:\\\\n\\\\t// When morphTargetsRelative is false, this is set to 1 - sum(influences); this results in position = sum((target - base) * influence)\\\\n\\\\t// When morphTargetsRelative is true, this is set to 1; as a result, all morph targets are simply added to the base after weighting\\\\n\\\\ttransformed *= morphTargetBaseInfluence;\\\\n\\\\n\\\\t#ifdef MORPHTARGETS_TEXTURE\\\\n\\\\n\\\\t\\\\tfor ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {\\\\n\\\\n\\\\t\\\\t\\\\t#ifndef USE_MORPHNORMALS\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tif ( morphTargetInfluences[ i ] > 0.0 ) transformed += getMorph( gl_VertexID, i, 0, 1 ) * morphTargetInfluences[ i ];\\\\n\\\\n\\\\t\\\\t\\\\t#else\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tif ( morphTargetInfluences[ i ] > 0.0 ) transformed += getMorph( gl_VertexID, i, 0, 2 ) * morphTargetInfluences[ i ];\\\\n\\\\n\\\\t\\\\t\\\\t#endif\\\\n\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t#else\\\\n\\\\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\\\\n\\\\t\\\\t#ifndef USE_MORPHNORMALS\\\\n\\\\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\\\\n\\\\t\\\\t#endif\\\\n\\\\n\\\\t#endif\\\\n\\\\n#endif\\\\n\\\\\\\",normal_fragment_begin:\\\\\\\"\\\\nfloat faceDirection = gl_FrontFacing ? 1.0 : - 1.0;\\\\n\\\\n#ifdef FLAT_SHADED\\\\n\\\\n\\\\t// Workaround for Adreno GPUs not able to do dFdx( vViewPosition )\\\\n\\\\n\\\\tvec3 fdx = vec3( dFdx( vViewPosition.x ), dFdx( vViewPosition.y ), dFdx( vViewPosition.z ) );\\\\n\\\\tvec3 fdy = vec3( dFdy( vViewPosition.x ), dFdy( vViewPosition.y ), dFdy( vViewPosition.z ) );\\\\n\\\\tvec3 normal = normalize( cross( fdx, fdy ) );\\\\n\\\\n#else\\\\n\\\\n\\\\tvec3 normal = normalize( vNormal );\\\\n\\\\n\\\\t#ifdef DOUBLE_SIDED\\\\n\\\\n\\\\t\\\\tnormal = normal * faceDirection;\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\t#ifdef USE_TANGENT\\\\n\\\\n\\\\t\\\\tvec3 tangent = normalize( vTangent );\\\\n\\\\t\\\\tvec3 bitangent = normalize( vBitangent );\\\\n\\\\n\\\\t\\\\t#ifdef DOUBLE_SIDED\\\\n\\\\n\\\\t\\\\t\\\\ttangent = tangent * faceDirection;\\\\n\\\\t\\\\t\\\\tbitangent = bitangent * faceDirection;\\\\n\\\\n\\\\t\\\\t#endif\\\\n\\\\n\\\\t\\\\t#if defined( TANGENTSPACE_NORMALMAP ) || defined( USE_CLEARCOAT_NORMALMAP )\\\\n\\\\n\\\\t\\\\t\\\\tmat3 vTBN = mat3( tangent, bitangent, normal );\\\\n\\\\n\\\\t\\\\t#endif\\\\n\\\\n\\\\t#endif\\\\n\\\\n#endif\\\\n\\\\n// non perturbed normal for clearcoat among others\\\\n\\\\nvec3 geometryNormal = normal;\\\\n\\\\n\\\\\\\",normal_fragment_maps:\\\\\\\"\\\\n\\\\n#ifdef OBJECTSPACE_NORMALMAP\\\\n\\\\n\\\\tnormal = texture2D( normalMap, vUv ).xyz * 2.0 - 1.0; // overrides both flatShading and attribute normals\\\\n\\\\n\\\\t#ifdef FLIP_SIDED\\\\n\\\\n\\\\t\\\\tnormal = - normal;\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\t#ifdef DOUBLE_SIDED\\\\n\\\\n\\\\t\\\\tnormal = normal * faceDirection;\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\tnormal = normalize( normalMatrix * normal );\\\\n\\\\n#elif defined( TANGENTSPACE_NORMALMAP )\\\\n\\\\n\\\\tvec3 mapN = texture2D( normalMap, vUv ).xyz * 2.0 - 1.0;\\\\n\\\\tmapN.xy *= normalScale;\\\\n\\\\n\\\\t#ifdef USE_TANGENT\\\\n\\\\n\\\\t\\\\tnormal = normalize( vTBN * mapN );\\\\n\\\\n\\\\t#else\\\\n\\\\n\\\\t\\\\tnormal = perturbNormal2Arb( - vViewPosition, normal, mapN, faceDirection );\\\\n\\\\n\\\\t#endif\\\\n\\\\n#elif defined( USE_BUMPMAP )\\\\n\\\\n\\\\tnormal = perturbNormalArb( - vViewPosition, normal, dHdxy_fwd(), faceDirection );\\\\n\\\\n#endif\\\\n\\\\\\\",normal_pars_fragment:\\\\\\\"\\\\n#ifndef FLAT_SHADED\\\\n\\\\n\\\\tvarying vec3 vNormal;\\\\n\\\\n\\\\t#ifdef USE_TANGENT\\\\n\\\\n\\\\t\\\\tvarying vec3 vTangent;\\\\n\\\\t\\\\tvarying vec3 vBitangent;\\\\n\\\\n\\\\t#endif\\\\n\\\\n#endif\\\\n\\\\\\\",normal_pars_vertex:\\\\\\\"\\\\n#ifndef FLAT_SHADED\\\\n\\\\n\\\\tvarying vec3 vNormal;\\\\n\\\\n\\\\t#ifdef USE_TANGENT\\\\n\\\\n\\\\t\\\\tvarying vec3 vTangent;\\\\n\\\\t\\\\tvarying vec3 vBitangent;\\\\n\\\\n\\\\t#endif\\\\n\\\\n#endif\\\\n\\\\\\\",normal_vertex:\\\\\\\"\\\\n#ifndef FLAT_SHADED // normal is computed with derivatives when FLAT_SHADED\\\\n\\\\n\\\\tvNormal = normalize( transformedNormal );\\\\n\\\\n\\\\t#ifdef USE_TANGENT\\\\n\\\\n\\\\t\\\\tvTangent = normalize( transformedTangent );\\\\n\\\\t\\\\tvBitangent = normalize( cross( vNormal, vTangent ) * tangent.w );\\\\n\\\\n\\\\t#endif\\\\n\\\\n#endif\\\\n\\\\\\\",normalmap_pars_fragment:\\\\\\\"\\\\n#ifdef USE_NORMALMAP\\\\n\\\\n\\\\tuniform sampler2D normalMap;\\\\n\\\\tuniform vec2 normalScale;\\\\n\\\\n#endif\\\\n\\\\n#ifdef OBJECTSPACE_NORMALMAP\\\\n\\\\n\\\\tuniform mat3 normalMatrix;\\\\n\\\\n#endif\\\\n\\\\n#if ! defined ( USE_TANGENT ) && ( defined ( TANGENTSPACE_NORMALMAP ) || defined ( USE_CLEARCOAT_NORMALMAP ) )\\\\n\\\\n\\\\t// Normal Mapping Without Precomputed Tangents\\\\n\\\\t// http://www.thetenthplanet.de/archives/1180\\\\n\\\\n\\\\tvec3 perturbNormal2Arb( vec3 eye_pos, vec3 surf_norm, vec3 mapN, float faceDirection ) {\\\\n\\\\n\\\\t\\\\t// Workaround for Adreno 3XX dFd*( vec3 ) bug. See #9988\\\\n\\\\n\\\\t\\\\tvec3 q0 = vec3( dFdx( eye_pos.x ), dFdx( eye_pos.y ), dFdx( eye_pos.z ) );\\\\n\\\\t\\\\tvec3 q1 = vec3( dFdy( eye_pos.x ), dFdy( eye_pos.y ), dFdy( eye_pos.z ) );\\\\n\\\\t\\\\tvec2 st0 = dFdx( vUv.st );\\\\n\\\\t\\\\tvec2 st1 = dFdy( vUv.st );\\\\n\\\\n\\\\t\\\\tvec3 N = surf_norm; // normalized\\\\n\\\\n\\\\t\\\\tvec3 q1perp = cross( q1, N );\\\\n\\\\t\\\\tvec3 q0perp = cross( N, q0 );\\\\n\\\\n\\\\t\\\\tvec3 T = q1perp * st0.x + q0perp * st1.x;\\\\n\\\\t\\\\tvec3 B = q1perp * st0.y + q0perp * st1.y;\\\\n\\\\n\\\\t\\\\tfloat det = max( dot( T, T ), dot( B, B ) );\\\\n\\\\t\\\\tfloat scale = ( det == 0.0 ) ? 0.0 : faceDirection * inversesqrt( det );\\\\n\\\\n\\\\t\\\\treturn normalize( T * ( mapN.x * scale ) + B * ( mapN.y * scale ) + N * mapN.z );\\\\n\\\\n\\\\t}\\\\n\\\\n#endif\\\\n\\\\\\\",clearcoat_normal_fragment_begin:\\\\\\\"\\\\n#ifdef USE_CLEARCOAT\\\\n\\\\n\\\\tvec3 clearcoatNormal = geometryNormal;\\\\n\\\\n#endif\\\\n\\\\\\\",clearcoat_normal_fragment_maps:\\\\\\\"\\\\n#ifdef USE_CLEARCOAT_NORMALMAP\\\\n\\\\n\\\\tvec3 clearcoatMapN = texture2D( clearcoatNormalMap, vUv ).xyz * 2.0 - 1.0;\\\\n\\\\tclearcoatMapN.xy *= clearcoatNormalScale;\\\\n\\\\n\\\\t#ifdef USE_TANGENT\\\\n\\\\n\\\\t\\\\tclearcoatNormal = normalize( vTBN * clearcoatMapN );\\\\n\\\\n\\\\t#else\\\\n\\\\n\\\\t\\\\tclearcoatNormal = perturbNormal2Arb( - vViewPosition, clearcoatNormal, clearcoatMapN, faceDirection );\\\\n\\\\n\\\\t#endif\\\\n\\\\n#endif\\\\n\\\\\\\",clearcoat_pars_fragment:\\\\\\\"\\\\n\\\\n#ifdef USE_CLEARCOATMAP\\\\n\\\\n\\\\tuniform sampler2D clearcoatMap;\\\\n\\\\n#endif\\\\n\\\\n#ifdef USE_CLEARCOAT_ROUGHNESSMAP\\\\n\\\\n\\\\tuniform sampler2D clearcoatRoughnessMap;\\\\n\\\\n#endif\\\\n\\\\n#ifdef USE_CLEARCOAT_NORMALMAP\\\\n\\\\n\\\\tuniform sampler2D clearcoatNormalMap;\\\\n\\\\tuniform vec2 clearcoatNormalScale;\\\\n\\\\n#endif\\\\n\\\\\\\",output_fragment:\\\\\\\"\\\\n#ifdef OPAQUE\\\\ndiffuseColor.a = 1.0;\\\\n#endif\\\\n\\\\n// https://github.com/mrdoob/three.js/pull/22425\\\\n#ifdef USE_TRANSMISSION\\\\ndiffuseColor.a *= transmissionAlpha + 0.1;\\\\n#endif\\\\n\\\\ngl_FragColor = vec4( outgoingLight, diffuseColor.a );\\\\n\\\\\\\",packing:\\\\\\\"\\\\nvec3 packNormalToRGB( const in vec3 normal ) {\\\\n\\\\treturn normalize( normal ) * 0.5 + 0.5;\\\\n}\\\\n\\\\nvec3 unpackRGBToNormal( const in vec3 rgb ) {\\\\n\\\\treturn 2.0 * rgb.xyz - 1.0;\\\\n}\\\\n\\\\nconst float PackUpscale = 256. / 255.; // fraction -> 0..1 (including 1)\\\\nconst float UnpackDownscale = 255. / 256.; // 0..1 -> fraction (excluding 1)\\\\n\\\\nconst vec3 PackFactors = vec3( 256. * 256. * 256., 256. * 256., 256. );\\\\nconst vec4 UnpackFactors = UnpackDownscale / vec4( PackFactors, 1. );\\\\n\\\\nconst float ShiftRight8 = 1. / 256.;\\\\n\\\\nvec4 packDepthToRGBA( const in float v ) {\\\\n\\\\tvec4 r = vec4( fract( v * PackFactors ), v );\\\\n\\\\tr.yzw -= r.xyz * ShiftRight8; // tidy overflow\\\\n\\\\treturn r * PackUpscale;\\\\n}\\\\n\\\\nfloat unpackRGBAToDepth( const in vec4 v ) {\\\\n\\\\treturn dot( v, UnpackFactors );\\\\n}\\\\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}\\\\n\\\\nvec2 unpackRGBATo2Half( vec4 v ) {\\\\n\\\\treturn vec2( v.x + ( v.y / 255.0 ), v.z + ( v.w / 255.0 ) );\\\\n}\\\\n\\\\n// NOTE: viewZ/eyeZ is < 0 when in front of the camera per OpenGL conventions\\\\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 linearClipZ, const in float near, const in float far ) {\\\\n\\\\treturn linearClipZ * ( near - far ) - near;\\\\n}\\\\n\\\\n// NOTE: https://twitter.com/gonnavis/status/1377183786949959682\\\\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 invClipZ, const in float near, const in float far ) {\\\\n\\\\treturn ( near * far ) / ( ( far - near ) * invClipZ - far );\\\\n}\\\\n\\\\\\\",premultiplied_alpha_fragment:\\\\\\\"\\\\n#ifdef PREMULTIPLIED_ALPHA\\\\n\\\\n\\\\t// Get get normal blending with premultipled, use with CustomBlending, OneFactor, OneMinusSrcAlphaFactor, AddEquation.\\\\n\\\\tgl_FragColor.rgb *= gl_FragColor.a;\\\\n\\\\n#endif\\\\n\\\\\\\",project_vertex:\\\\\\\"\\\\nvec4 mvPosition = vec4( transformed, 1.0 );\\\\n\\\\n#ifdef USE_INSTANCING\\\\n\\\\n\\\\tmvPosition = instanceMatrix * mvPosition;\\\\n\\\\n#endif\\\\n\\\\nmvPosition = modelViewMatrix * mvPosition;\\\\n\\\\ngl_Position = projectionMatrix * mvPosition;\\\\n\\\\\\\",dithering_fragment:\\\\\\\"\\\\n#ifdef DITHERING\\\\n\\\\n\\\\tgl_FragColor.rgb = dithering( gl_FragColor.rgb );\\\\n\\\\n#endif\\\\n\\\\\\\",dithering_pars_fragment:\\\\\\\"\\\\n#ifdef DITHERING\\\\n\\\\n\\\\t// based on https://www.shadertoy.com/view/MslGR8\\\\n\\\\tvec3 dithering( vec3 color ) {\\\\n\\\\t\\\\t//Calculate grid position\\\\n\\\\t\\\\tfloat grid_position = rand( gl_FragCoord.xy );\\\\n\\\\n\\\\t\\\\t//Shift the individual colors differently, thus making it even harder to see the dithering pattern\\\\n\\\\t\\\\tvec3 dither_shift_RGB = vec3( 0.25 / 255.0, -0.25 / 255.0, 0.25 / 255.0 );\\\\n\\\\n\\\\t\\\\t//modify shift acording to grid position.\\\\n\\\\t\\\\tdither_shift_RGB = mix( 2.0 * dither_shift_RGB, -2.0 * dither_shift_RGB, grid_position );\\\\n\\\\n\\\\t\\\\t//shift the color by dither_shift\\\\n\\\\t\\\\treturn color + dither_shift_RGB;\\\\n\\\\t}\\\\n\\\\n#endif\\\\n\\\\\\\",roughnessmap_fragment:\\\\\\\"\\\\nfloat roughnessFactor = roughness;\\\\n\\\\n#ifdef USE_ROUGHNESSMAP\\\\n\\\\n\\\\tvec4 texelRoughness = texture2D( roughnessMap, vUv );\\\\n\\\\n\\\\t// reads channel G, compatible with a combined OcclusionRoughnessMetallic (RGB) texture\\\\n\\\\troughnessFactor *= texelRoughness.g;\\\\n\\\\n#endif\\\\n\\\\\\\",roughnessmap_pars_fragment:\\\\\\\"\\\\n#ifdef USE_ROUGHNESSMAP\\\\n\\\\n\\\\tuniform sampler2D roughnessMap;\\\\n\\\\n#endif\\\\n\\\\\\\",shadowmap_pars_fragment:z,shadowmap_pars_vertex:\\\\\\\"\\\\n#ifdef USE_SHADOWMAP\\\\n\\\\n\\\\t#if NUM_DIR_LIGHT_SHADOWS > 0\\\\n\\\\n\\\\t\\\\tuniform mat4 directionalShadowMatrix[ NUM_DIR_LIGHT_SHADOWS ];\\\\n\\\\t\\\\tvarying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHT_SHADOWS ];\\\\n\\\\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\\\\n\\\\t\\\\tuniform DirectionalLightShadow directionalLightShadows[ NUM_DIR_LIGHT_SHADOWS ];\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\t#if NUM_SPOT_LIGHT_SHADOWS > 0\\\\n\\\\n\\\\t\\\\tuniform mat4 spotShadowMatrix[ NUM_SPOT_LIGHT_SHADOWS ];\\\\n\\\\t\\\\tvarying vec4 vSpotShadowCoord[ NUM_SPOT_LIGHT_SHADOWS ];\\\\n\\\\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\\\\n\\\\t\\\\tuniform SpotLightShadow spotLightShadows[ NUM_SPOT_LIGHT_SHADOWS ];\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\t#if NUM_POINT_LIGHT_SHADOWS > 0\\\\n\\\\n\\\\t\\\\tuniform mat4 pointShadowMatrix[ NUM_POINT_LIGHT_SHADOWS ];\\\\n\\\\t\\\\tvarying vec4 vPointShadowCoord[ NUM_POINT_LIGHT_SHADOWS ];\\\\n\\\\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\\\\n\\\\t\\\\tuniform PointLightShadow pointLightShadows[ NUM_POINT_LIGHT_SHADOWS ];\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\t/*\\\\n\\\\t#if NUM_RECT_AREA_LIGHTS > 0\\\\n\\\\n\\\\t\\\\t// TODO (abelnation): uniforms for area light shadows\\\\n\\\\n\\\\t#endif\\\\n\\\\t*/\\\\n\\\\n#endif\\\\n\\\\\\\",shadowmap_vertex:\\\\\\\"\\\\n#ifdef USE_SHADOWMAP\\\\n\\\\n\\\\t#if NUM_DIR_LIGHT_SHADOWS > 0 || NUM_SPOT_LIGHT_SHADOWS > 0 || NUM_POINT_LIGHT_SHADOWS > 0\\\\n\\\\n\\\\t\\\\t// Offsetting the position used for querying occlusion along the world normal can be used to reduce shadow acne.\\\\n\\\\t\\\\tvec3 shadowWorldNormal = inverseTransformDirection( transformedNormal, viewMatrix );\\\\n\\\\t\\\\tvec4 shadowWorldPosition;\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\t#if NUM_DIR_LIGHT_SHADOWS > 0\\\\n\\\\n\\\\t#pragma unroll_loop_start\\\\n\\\\tfor ( int i = 0; i < NUM_DIR_LIGHT_SHADOWS; i ++ ) {\\\\n\\\\n\\\\t\\\\tshadowWorldPosition = worldPosition + vec4( shadowWorldNormal * directionalLightShadows[ i ].shadowNormalBias, 0 );\\\\n\\\\t\\\\tvDirectionalShadowCoord[ i ] = directionalShadowMatrix[ i ] * shadowWorldPosition;\\\\n\\\\n\\\\t}\\\\n\\\\t#pragma unroll_loop_end\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\t#if NUM_SPOT_LIGHT_SHADOWS > 0\\\\n\\\\n\\\\t#pragma unroll_loop_start\\\\n\\\\tfor ( int i = 0; i < NUM_SPOT_LIGHT_SHADOWS; i ++ ) {\\\\n\\\\n\\\\t\\\\tshadowWorldPosition = worldPosition + vec4( shadowWorldNormal * spotLightShadows[ i ].shadowNormalBias, 0 );\\\\n\\\\t\\\\tvSpotShadowCoord[ i ] = spotShadowMatrix[ i ] * shadowWorldPosition;\\\\n\\\\n\\\\t}\\\\n\\\\t#pragma unroll_loop_end\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\t#if NUM_POINT_LIGHT_SHADOWS > 0\\\\n\\\\n\\\\t#pragma unroll_loop_start\\\\n\\\\tfor ( int i = 0; i < NUM_POINT_LIGHT_SHADOWS; i ++ ) {\\\\n\\\\n\\\\t\\\\tshadowWorldPosition = worldPosition + vec4( shadowWorldNormal * pointLightShadows[ i ].shadowNormalBias, 0 );\\\\n\\\\t\\\\tvPointShadowCoord[ i ] = pointShadowMatrix[ i ] * shadowWorldPosition;\\\\n\\\\n\\\\t}\\\\n\\\\t#pragma unroll_loop_end\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\t/*\\\\n\\\\t#if NUM_RECT_AREA_LIGHTS > 0\\\\n\\\\n\\\\t\\\\t// TODO (abelnation): update vAreaShadowCoord with area light info\\\\n\\\\n\\\\t#endif\\\\n\\\\t*/\\\\n\\\\n#endif\\\\n\\\\\\\",shadowmask_pars_fragment:\\\\\\\"\\\\nfloat getShadowMask() {\\\\n\\\\n\\\\tfloat shadow = 1.0;\\\\n\\\\n\\\\t#ifdef USE_SHADOWMAP\\\\n\\\\n\\\\t#if NUM_DIR_LIGHT_SHADOWS > 0\\\\n\\\\n\\\\tDirectionalLightShadow directionalLight;\\\\n\\\\n\\\\t#pragma unroll_loop_start\\\\n\\\\tfor ( int i = 0; i < NUM_DIR_LIGHT_SHADOWS; i ++ ) {\\\\n\\\\n\\\\t\\\\tdirectionalLight = directionalLightShadows[ i ];\\\\n\\\\t\\\\tshadow *= receiveShadow ? getShadow( directionalShadowMap[ i ], directionalLight.shadowMapSize, directionalLight.shadowBias, directionalLight.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0;\\\\n\\\\n\\\\t}\\\\n\\\\t#pragma unroll_loop_end\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\t#if NUM_SPOT_LIGHT_SHADOWS > 0\\\\n\\\\n\\\\tSpotLightShadow spotLight;\\\\n\\\\n\\\\t#pragma unroll_loop_start\\\\n\\\\tfor ( int i = 0; i < NUM_SPOT_LIGHT_SHADOWS; i ++ ) {\\\\n\\\\n\\\\t\\\\tspotLight = spotLightShadows[ i ];\\\\n\\\\t\\\\tshadow *= receiveShadow ? getShadow( spotShadowMap[ i ], spotLight.shadowMapSize, spotLight.shadowBias, spotLight.shadowRadius, vSpotShadowCoord[ i ] ) : 1.0;\\\\n\\\\n\\\\t}\\\\n\\\\t#pragma unroll_loop_end\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\t#if NUM_POINT_LIGHT_SHADOWS > 0\\\\n\\\\n\\\\tPointLightShadow pointLight;\\\\n\\\\n\\\\t#pragma unroll_loop_start\\\\n\\\\tfor ( int i = 0; i < NUM_POINT_LIGHT_SHADOWS; i ++ ) {\\\\n\\\\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\\\\n\\\\t}\\\\n\\\\t#pragma unroll_loop_end\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\t/*\\\\n\\\\t#if NUM_RECT_AREA_LIGHTS > 0\\\\n\\\\n\\\\t\\\\t// TODO (abelnation): update shadow for Area light\\\\n\\\\n\\\\t#endif\\\\n\\\\t*/\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\treturn shadow;\\\\n\\\\n}\\\\n\\\\\\\",skinbase_vertex:\\\\\\\"\\\\n#ifdef USE_SKINNING\\\\n\\\\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\\\\n#endif\\\\n\\\\\\\",skinning_pars_vertex:\\\\\\\"\\\\n#ifdef USE_SKINNING\\\\n\\\\n\\\\tuniform mat4 bindMatrix;\\\\n\\\\tuniform mat4 bindMatrixInverse;\\\\n\\\\n\\\\t#ifdef BONE_TEXTURE\\\\n\\\\n\\\\t\\\\tuniform highp sampler2D boneTexture;\\\\n\\\\t\\\\tuniform int boneTextureSize;\\\\n\\\\n\\\\t\\\\tmat4 getBoneMatrix( const in float i ) {\\\\n\\\\n\\\\t\\\\t\\\\tfloat j = i * 4.0;\\\\n\\\\t\\\\t\\\\tfloat x = mod( j, float( boneTextureSize ) );\\\\n\\\\t\\\\t\\\\tfloat y = floor( j / float( boneTextureSize ) );\\\\n\\\\n\\\\t\\\\t\\\\tfloat dx = 1.0 / float( boneTextureSize );\\\\n\\\\t\\\\t\\\\tfloat dy = 1.0 / float( boneTextureSize );\\\\n\\\\n\\\\t\\\\t\\\\ty = dy * ( y + 0.5 );\\\\n\\\\n\\\\t\\\\t\\\\tvec4 v1 = texture2D( boneTexture, vec2( dx * ( x + 0.5 ), y ) );\\\\n\\\\t\\\\t\\\\tvec4 v2 = texture2D( boneTexture, vec2( dx * ( x + 1.5 ), y ) );\\\\n\\\\t\\\\t\\\\tvec4 v3 = texture2D( boneTexture, vec2( dx * ( x + 2.5 ), y ) );\\\\n\\\\t\\\\t\\\\tvec4 v4 = texture2D( boneTexture, vec2( dx * ( x + 3.5 ), y ) );\\\\n\\\\n\\\\t\\\\t\\\\tmat4 bone = mat4( v1, v2, v3, v4 );\\\\n\\\\n\\\\t\\\\t\\\\treturn bone;\\\\n\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t#else\\\\n\\\\n\\\\t\\\\tuniform mat4 boneMatrices[ MAX_BONES ];\\\\n\\\\n\\\\t\\\\tmat4 getBoneMatrix( const in float i ) {\\\\n\\\\n\\\\t\\\\t\\\\tmat4 bone = boneMatrices[ int(i) ];\\\\n\\\\t\\\\t\\\\treturn bone;\\\\n\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t#endif\\\\n\\\\n#endif\\\\n\\\\\\\",skinning_vertex:\\\\\\\"\\\\n#ifdef USE_SKINNING\\\\n\\\\n\\\\tvec4 skinVertex = bindMatrix * vec4( transformed, 1.0 );\\\\n\\\\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\\\\n\\\\ttransformed = ( bindMatrixInverse * skinned ).xyz;\\\\n\\\\n#endif\\\\n\\\\\\\",skinnormal_vertex:\\\\\\\"\\\\n#ifdef USE_SKINNING\\\\n\\\\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\\\\n\\\\tobjectNormal = vec4( skinMatrix * vec4( objectNormal, 0.0 ) ).xyz;\\\\n\\\\n\\\\t#ifdef USE_TANGENT\\\\n\\\\n\\\\t\\\\tobjectTangent = vec4( skinMatrix * vec4( objectTangent, 0.0 ) ).xyz;\\\\n\\\\n\\\\t#endif\\\\n\\\\n#endif\\\\n\\\\\\\",specularmap_fragment:\\\\\\\"\\\\nfloat specularStrength;\\\\n\\\\n#ifdef USE_SPECULARMAP\\\\n\\\\n\\\\tvec4 texelSpecular = texture2D( specularMap, vUv );\\\\n\\\\tspecularStrength = texelSpecular.r;\\\\n\\\\n#else\\\\n\\\\n\\\\tspecularStrength = 1.0;\\\\n\\\\n#endif\\\\n\\\\\\\",specularmap_pars_fragment:\\\\\\\"\\\\n#ifdef USE_SPECULARMAP\\\\n\\\\n\\\\tuniform sampler2D specularMap;\\\\n\\\\n#endif\\\\n\\\\\\\",tonemapping_fragment:\\\\\\\"\\\\n#if defined( TONE_MAPPING )\\\\n\\\\n\\\\tgl_FragColor.rgb = toneMapping( gl_FragColor.rgb );\\\\n\\\\n#endif\\\\n\\\\\\\",tonemapping_pars_fragment:\\\\\\\"\\\\n#ifndef saturate\\\\n// <common> may have defined saturate() already\\\\n#define saturate( a ) clamp( a, 0.0, 1.0 )\\\\n#endif\\\\n\\\\nuniform float toneMappingExposure;\\\\n\\\\n// exposure only\\\\nvec3 LinearToneMapping( vec3 color ) {\\\\n\\\\n\\\\treturn toneMappingExposure * color;\\\\n\\\\n}\\\\n\\\\n// source: https://www.cs.utah.edu/~reinhard/cdrom/\\\\nvec3 ReinhardToneMapping( vec3 color ) {\\\\n\\\\n\\\\tcolor *= toneMappingExposure;\\\\n\\\\treturn saturate( color / ( vec3( 1.0 ) + color ) );\\\\n\\\\n}\\\\n\\\\n// source: http://filmicworlds.com/blog/filmic-tonemapping-operators/\\\\nvec3 OptimizedCineonToneMapping( vec3 color ) {\\\\n\\\\n\\\\t// optimized filmic operator by Jim Hejl and Richard Burgess-Dawson\\\\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\\\\n}\\\\n\\\\n// source: https://github.com/selfshadow/ltc_code/blob/master/webgl/shaders/ltc/ltc_blit.fs\\\\nvec3 RRTAndODTFit( vec3 v ) {\\\\n\\\\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\\\\n}\\\\n\\\\n// this implementation of ACES is modified to accommodate a brighter viewing environment.\\\\n// the scale factor of 1/0.6 is subjective. see discussion in #19621.\\\\n\\\\nvec3 ACESFilmicToneMapping( vec3 color ) {\\\\n\\\\n\\\\t// sRGB => XYZ => D65_2_D60 => AP1 => RRT_SAT\\\\n\\\\tconst mat3 ACESInputMat = mat3(\\\\n\\\\t\\\\tvec3( 0.59719, 0.07600, 0.02840 ), // transposed from source\\\\n\\\\t\\\\tvec3( 0.35458, 0.90834, 0.13383 ),\\\\n\\\\t\\\\tvec3( 0.04823, 0.01566, 0.83777 )\\\\n\\\\t);\\\\n\\\\n\\\\t// ODT_SAT => XYZ => D60_2_D65 => sRGB\\\\n\\\\tconst mat3 ACESOutputMat = mat3(\\\\n\\\\t\\\\tvec3(  1.60475, -0.10208, -0.00327 ), // transposed from source\\\\n\\\\t\\\\tvec3( -0.53108,  1.10813, -0.07276 ),\\\\n\\\\t\\\\tvec3( -0.07367, -0.00605,  1.07602 )\\\\n\\\\t);\\\\n\\\\n\\\\tcolor *= toneMappingExposure / 0.6;\\\\n\\\\n\\\\tcolor = ACESInputMat * color;\\\\n\\\\n\\\\t// Apply RRT and ODT\\\\n\\\\tcolor = RRTAndODTFit( color );\\\\n\\\\n\\\\tcolor = ACESOutputMat * color;\\\\n\\\\n\\\\t// Clamp to [0, 1]\\\\n\\\\treturn saturate( color );\\\\n\\\\n}\\\\n\\\\nvec3 CustomToneMapping( vec3 color ) { return color; }\\\\n\\\\\\\",transmission_fragment:k,transmission_pars_fragment:\\\\\\\"\\\\n#ifdef USE_TRANSMISSION\\\\n\\\\n\\\\t// Transmission code is based on glTF-Sampler-Viewer\\\\n\\\\t// https://github.com/KhronosGroup/glTF-Sample-Viewer\\\\n\\\\n\\\\tuniform float transmission;\\\\n\\\\tuniform float thickness;\\\\n\\\\tuniform float attenuationDistance;\\\\n\\\\tuniform vec3 attenuationTint;\\\\n\\\\n\\\\t#ifdef USE_TRANSMISSIONMAP\\\\n\\\\n\\\\t\\\\tuniform sampler2D transmissionMap;\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\t#ifdef USE_THICKNESSMAP\\\\n\\\\n\\\\t\\\\tuniform sampler2D thicknessMap;\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\tuniform vec2 transmissionSamplerSize;\\\\n\\\\tuniform sampler2D transmissionSamplerMap;\\\\n\\\\n\\\\tuniform mat4 modelMatrix;\\\\n\\\\tuniform mat4 projectionMatrix;\\\\n\\\\n\\\\tvarying vec3 vWorldPosition;\\\\n\\\\n\\\\tvec3 getVolumeTransmissionRay( vec3 n, vec3 v, float thickness, float ior, mat4 modelMatrix ) {\\\\n\\\\n\\\\t\\\\t// Direction of refracted light.\\\\n\\\\t\\\\tvec3 refractionVector = refract( - v, normalize( n ), 1.0 / ior );\\\\n\\\\n\\\\t\\\\t// Compute rotation-independant scaling of the model matrix.\\\\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\\\\n\\\\t\\\\t// The thickness is specified in local space.\\\\n\\\\t\\\\treturn normalize( refractionVector ) * thickness * modelScale;\\\\n\\\\n\\\\t}\\\\n\\\\n\\\\tfloat applyIorToRoughness( float roughness, float ior ) {\\\\n\\\\n\\\\t\\\\t// Scale roughness with IOR so that an IOR of 1.0 results in no microfacet refraction and\\\\n\\\\t\\\\t// an IOR of 1.5 results in the default amount of microfacet refraction.\\\\n\\\\t\\\\treturn roughness * clamp( ior * 2.0 - 2.0, 0.0, 1.0 );\\\\n\\\\n\\\\t}\\\\n\\\\n\\\\tvec4 getTransmissionSample( vec2 fragCoord, float roughness, float ior ) {\\\\n\\\\n\\\\t\\\\tfloat framebufferLod = log2( transmissionSamplerSize.x ) * applyIorToRoughness( roughness, ior );\\\\n\\\\n\\\\t\\\\t#ifdef TEXTURE_LOD_EXT\\\\n\\\\n\\\\t\\\\t\\\\treturn texture2DLodEXT( transmissionSamplerMap, fragCoord.xy, framebufferLod );\\\\n\\\\n\\\\t\\\\t#else\\\\n\\\\n\\\\t\\\\t\\\\treturn texture2D( transmissionSamplerMap, fragCoord.xy, framebufferLod );\\\\n\\\\n\\\\t\\\\t#endif\\\\n\\\\n\\\\t}\\\\n\\\\n\\\\tvec3 applyVolumeAttenuation( vec3 radiance, float transmissionDistance, vec3 attenuationColor, float attenuationDistance ) {\\\\n\\\\n\\\\t\\\\tif ( attenuationDistance == 0.0 ) {\\\\n\\\\n\\\\t\\\\t\\\\t// Attenuation distance is +∞ (which we indicate by zero), i.e. the transmitted color is not attenuated at all.\\\\n\\\\t\\\\t\\\\treturn radiance;\\\\n\\\\n\\\\t\\\\t} else {\\\\n\\\\n\\\\t\\\\t\\\\t// Compute light attenuation using Beer's law.\\\\n\\\\t\\\\t\\\\tvec3 attenuationCoefficient = -log( attenuationColor ) / attenuationDistance;\\\\n\\\\t\\\\t\\\\tvec3 transmittance = exp( - attenuationCoefficient * transmissionDistance ); // Beer's law\\\\n\\\\t\\\\t\\\\treturn transmittance * radiance;\\\\n\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t}\\\\n\\\\n\\\\tvec4 getIBLVolumeRefraction( vec3 n, vec3 v, float roughness, vec3 diffuseColor, vec3 specularColor, float specularF90,\\\\n\\\\t\\\\tvec3 position, mat4 modelMatrix, mat4 viewMatrix, mat4 projMatrix, float ior, float thickness,\\\\n\\\\t\\\\tvec3 attenuationColor, float attenuationDistance ) {\\\\n\\\\n\\\\t\\\\tvec3 transmissionRay = getVolumeTransmissionRay( n, v, thickness, ior, modelMatrix );\\\\n\\\\t\\\\tvec3 refractedRayExit = position + transmissionRay;\\\\n\\\\n\\\\t\\\\t// Project refracted vector on the framebuffer, while mapping to normalized device coordinates.\\\\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\\\\n\\\\t\\\\t// Sample framebuffer to get pixel the refracted ray hits.\\\\n\\\\t\\\\tvec4 transmittedLight = getTransmissionSample( refractionCoords, roughness, ior );\\\\n\\\\n\\\\t\\\\tvec3 attenuatedColor = applyVolumeAttenuation( transmittedLight.rgb, length( transmissionRay ), attenuationColor, attenuationDistance );\\\\n\\\\n\\\\t\\\\t// Get the specular component.\\\\n\\\\t\\\\tvec3 F = EnvironmentBRDF( n, v, specularColor, specularF90, roughness );\\\\n\\\\n\\\\t\\\\treturn vec4( ( 1.0 - F ) * attenuatedColor * diffuseColor, transmittedLight.a );\\\\n\\\\n\\\\t}\\\\n#endif\\\\n\\\\\\\",uv_pars_fragment:\\\\\\\"\\\\n#if ( defined( USE_UV ) && ! defined( UVS_VERTEX_ONLY ) )\\\\n\\\\n\\\\tvarying vec2 vUv;\\\\n\\\\n#endif\\\\n\\\\\\\",uv_pars_vertex:\\\\\\\"\\\\n#ifdef USE_UV\\\\n\\\\n\\\\t#ifdef UVS_VERTEX_ONLY\\\\n\\\\n\\\\t\\\\tvec2 vUv;\\\\n\\\\n\\\\t#else\\\\n\\\\n\\\\t\\\\tvarying vec2 vUv;\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\tuniform mat3 uvTransform;\\\\n\\\\n#endif\\\\n\\\\\\\",uv_vertex:\\\\\\\"\\\\n#ifdef USE_UV\\\\n\\\\n\\\\tvUv = ( uvTransform * vec3( uv, 1 ) ).xy;\\\\n\\\\n#endif\\\\n\\\\\\\",uv2_pars_fragment:\\\\\\\"\\\\n#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP )\\\\n\\\\n\\\\tvarying vec2 vUv2;\\\\n\\\\n#endif\\\\n\\\\\\\",uv2_pars_vertex:\\\\\\\"\\\\n#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP )\\\\n\\\\n\\\\tattribute vec2 uv2;\\\\n\\\\tvarying vec2 vUv2;\\\\n\\\\n\\\\tuniform mat3 uv2Transform;\\\\n\\\\n#endif\\\\n\\\\\\\",uv2_vertex:\\\\\\\"\\\\n#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP )\\\\n\\\\n\\\\tvUv2 = ( uv2Transform * vec3( uv2, 1 ) ).xy;\\\\n\\\\n#endif\\\\n\\\\\\\",worldpos_vertex:\\\\\\\"\\\\n#if defined( USE_ENVMAP ) || defined( DISTANCE ) || defined ( USE_SHADOWMAP ) || defined ( USE_TRANSMISSION )\\\\n\\\\n\\\\tvec4 worldPosition = vec4( transformed, 1.0 );\\\\n\\\\n\\\\t#ifdef USE_INSTANCING\\\\n\\\\n\\\\t\\\\tworldPosition = instanceMatrix * worldPosition;\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\tworldPosition = modelMatrix * worldPosition;\\\\n\\\\n#endif\\\\n\\\\\\\",background_vert:\\\\\\\"\\\\nvarying vec2 vUv;\\\\nuniform mat3 uvTransform;\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\tvUv = ( uvTransform * vec3( uv, 1 ) ).xy;\\\\n\\\\n\\\\tgl_Position = vec4( position.xy, 1.0, 1.0 );\\\\n\\\\n}\\\\n\\\\\\\",background_frag:\\\\\\\"\\\\nuniform sampler2D t2D;\\\\n\\\\nvarying vec2 vUv;\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\tvec4 texColor = texture2D( t2D, vUv );\\\\n\\\\n\\\\tgl_FragColor = mapTexelToLinear( texColor );\\\\n\\\\n\\\\t#include <tonemapping_fragment>\\\\n\\\\t#include <encodings_fragment>\\\\n\\\\n}\\\\n\\\\\\\",cube_vert:\\\\\\\"\\\\nvarying vec3 vWorldDirection;\\\\n\\\\n#include <common>\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\tvWorldDirection = transformDirection( position, modelMatrix );\\\\n\\\\n\\\\t#include <begin_vertex>\\\\n\\\\t#include <project_vertex>\\\\n\\\\n\\\\tgl_Position.z = gl_Position.w; // set z to camera.far\\\\n\\\\n}\\\\n\\\\\\\",cube_frag:\\\\\\\"\\\\n#include <envmap_common_pars_fragment>\\\\nuniform float opacity;\\\\n\\\\nvarying vec3 vWorldDirection;\\\\n\\\\n#include <cube_uv_reflection_fragment>\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\tvec3 vReflect = vWorldDirection;\\\\n\\\\t#include <envmap_fragment>\\\\n\\\\n\\\\tgl_FragColor = envColor;\\\\n\\\\tgl_FragColor.a *= opacity;\\\\n\\\\n\\\\t#include <tonemapping_fragment>\\\\n\\\\t#include <encodings_fragment>\\\\n\\\\n}\\\\n\\\\\\\",depth_vert:\\\\\\\"\\\\n#include <common>\\\\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>\\\\n\\\\n// This is used for computing an equivalent of gl_FragCoord.z that is as high precision as possible.\\\\n// Some platforms compute gl_FragCoord at a lower precision which makes the manually computed value better for\\\\n// depth-based postprocessing effects. Reproduced on iPad with A10 processor / iPadOS 13.3.1.\\\\nvarying vec2 vHighPrecisionZW;\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\t#include <uv_vertex>\\\\n\\\\n\\\\t#include <skinbase_vertex>\\\\n\\\\n\\\\t#ifdef USE_DISPLACEMENTMAP\\\\n\\\\n\\\\t\\\\t#include <beginnormal_vertex>\\\\n\\\\t\\\\t#include <morphnormal_vertex>\\\\n\\\\t\\\\t#include <skinnormal_vertex>\\\\n\\\\n\\\\t#endif\\\\n\\\\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\\\\n\\\\tvHighPrecisionZW = gl_Position.zw;\\\\n\\\\n}\\\\n\\\\\\\",depth_frag:\\\\\\\"\\\\n#if DEPTH_PACKING == 3200\\\\n\\\\n\\\\tuniform float opacity;\\\\n\\\\n#endif\\\\n\\\\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 <logdepthbuf_pars_fragment>\\\\n#include <clipping_planes_pars_fragment>\\\\n\\\\nvarying vec2 vHighPrecisionZW;\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\t#include <clipping_planes_fragment>\\\\n\\\\n\\\\tvec4 diffuseColor = vec4( 1.0 );\\\\n\\\\n\\\\t#if DEPTH_PACKING == 3200\\\\n\\\\n\\\\t\\\\tdiffuseColor.a = opacity;\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\t#include <map_fragment>\\\\n\\\\t#include <alphamap_fragment>\\\\n\\\\t#include <alphatest_fragment>\\\\n\\\\n\\\\t#include <logdepthbuf_fragment>\\\\n\\\\n\\\\t// Higher precision equivalent of gl_FragCoord.z. This assumes depthRange has been left to its default values.\\\\n\\\\tfloat fragCoordZ = 0.5 * vHighPrecisionZW[0] / vHighPrecisionZW[1] + 0.5;\\\\n\\\\n\\\\t#if DEPTH_PACKING == 3200\\\\n\\\\n\\\\t\\\\tgl_FragColor = vec4( vec3( 1.0 - fragCoordZ ), opacity );\\\\n\\\\n\\\\t#elif DEPTH_PACKING == 3201\\\\n\\\\n\\\\t\\\\tgl_FragColor = packDepthToRGBA( fragCoordZ );\\\\n\\\\n\\\\t#endif\\\\n\\\\n}\\\\n\\\\\\\",distanceRGBA_vert:\\\\\\\"\\\\n#define DISTANCE\\\\n\\\\nvarying vec3 vWorldPosition;\\\\n\\\\n#include <common>\\\\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>\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\t#include <uv_vertex>\\\\n\\\\n\\\\t#include <skinbase_vertex>\\\\n\\\\n\\\\t#ifdef USE_DISPLACEMENTMAP\\\\n\\\\n\\\\t\\\\t#include <beginnormal_vertex>\\\\n\\\\t\\\\t#include <morphnormal_vertex>\\\\n\\\\t\\\\t#include <skinnormal_vertex>\\\\n\\\\n\\\\t#endif\\\\n\\\\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\\\\n\\\\tvWorldPosition = worldPosition.xyz;\\\\n\\\\n}\\\\n\\\\\\\",distanceRGBA_frag:\\\\\\\"\\\\n#define DISTANCE\\\\n\\\\nuniform vec3 referencePosition;\\\\nuniform float nearDistance;\\\\nuniform float farDistance;\\\\nvarying vec3 vWorldPosition;\\\\n\\\\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 <clipping_planes_pars_fragment>\\\\n\\\\nvoid main () {\\\\n\\\\n\\\\t#include <clipping_planes_fragment>\\\\n\\\\n\\\\tvec4 diffuseColor = vec4( 1.0 );\\\\n\\\\n\\\\t#include <map_fragment>\\\\n\\\\t#include <alphamap_fragment>\\\\n\\\\t#include <alphatest_fragment>\\\\n\\\\n\\\\tfloat dist = length( vWorldPosition - referencePosition );\\\\n\\\\tdist = ( dist - nearDistance ) / ( farDistance - nearDistance );\\\\n\\\\tdist = saturate( dist ); // clamp to [ 0, 1 ]\\\\n\\\\n\\\\tgl_FragColor = packDepthToRGBA( dist );\\\\n\\\\n}\\\\n\\\\\\\",equirect_vert:\\\\\\\"\\\\nvarying vec3 vWorldDirection;\\\\n\\\\n#include <common>\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\tvWorldDirection = transformDirection( position, modelMatrix );\\\\n\\\\n\\\\t#include <begin_vertex>\\\\n\\\\t#include <project_vertex>\\\\n\\\\n}\\\\n\\\\\\\",equirect_frag:\\\\\\\"\\\\nuniform sampler2D tEquirect;\\\\n\\\\nvarying vec3 vWorldDirection;\\\\n\\\\n#include <common>\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\tvec3 direction = normalize( vWorldDirection );\\\\n\\\\n\\\\tvec2 sampleUV = equirectUv( direction );\\\\n\\\\n\\\\tvec4 texColor = texture2D( tEquirect, sampleUV );\\\\n\\\\n\\\\tgl_FragColor = mapTexelToLinear( texColor );\\\\n\\\\n\\\\t#include <tonemapping_fragment>\\\\n\\\\t#include <encodings_fragment>\\\\n\\\\n}\\\\n\\\\\\\",linedashed_vert:\\\\\\\"\\\\nuniform float scale;\\\\nattribute float lineDistance;\\\\n\\\\nvarying float vLineDistance;\\\\n\\\\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\\\\nvoid main() {\\\\n\\\\n\\\\tvLineDistance = scale * lineDistance;\\\\n\\\\n\\\\t#include <color_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\\\\n}\\\\n\\\\\\\",linedashed_frag:\\\\\\\"\\\\nuniform vec3 diffuse;\\\\nuniform float opacity;\\\\n\\\\nuniform float dashSize;\\\\nuniform float totalSize;\\\\n\\\\nvarying float vLineDistance;\\\\n\\\\n#include <common>\\\\n#include <color_pars_fragment>\\\\n#include <fog_pars_fragment>\\\\n#include <logdepthbuf_pars_fragment>\\\\n#include <clipping_planes_pars_fragment>\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\t#include <clipping_planes_fragment>\\\\n\\\\n\\\\tif ( mod( vLineDistance, totalSize ) > dashSize ) {\\\\n\\\\n\\\\t\\\\tdiscard;\\\\n\\\\n\\\\t}\\\\n\\\\n\\\\tvec3 outgoingLight = vec3( 0.0 );\\\\n\\\\tvec4 diffuseColor = vec4( diffuse, opacity );\\\\n\\\\n\\\\t#include <logdepthbuf_fragment>\\\\n\\\\t#include <color_fragment>\\\\n\\\\n\\\\toutgoingLight = diffuseColor.rgb; // simple shader\\\\n\\\\n\\\\t#include <output_fragment>\\\\n\\\\t#include <tonemapping_fragment>\\\\n\\\\t#include <encodings_fragment>\\\\n\\\\t#include <fog_fragment>\\\\n\\\\t#include <premultiplied_alpha_fragment>\\\\n\\\\n}\\\\n\\\\\\\",meshbasic_vert:\\\\\\\"\\\\n#include <common>\\\\n#include <uv_pars_vertex>\\\\n#include <uv2_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>\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\t#include <uv_vertex>\\\\n\\\\t#include <uv2_vertex>\\\\n\\\\t#include <color_vertex>\\\\n\\\\n\\\\t#if defined ( USE_ENVMAP ) || defined ( USE_SKINNING )\\\\n\\\\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\\\\n\\\\t#endif\\\\n\\\\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\\\\n\\\\t#include <worldpos_vertex>\\\\n\\\\t#include <envmap_vertex>\\\\n\\\\t#include <fog_vertex>\\\\n\\\\n}\\\\n\\\\\\\",meshbasic_frag:\\\\\\\"\\\\nuniform vec3 diffuse;\\\\nuniform float opacity;\\\\n\\\\n#ifndef FLAT_SHADED\\\\n\\\\n\\\\tvarying vec3 vNormal;\\\\n\\\\n#endif\\\\n\\\\n#include <common>\\\\n#include <dithering_pars_fragment>\\\\n#include <color_pars_fragment>\\\\n#include <uv_pars_fragment>\\\\n#include <uv2_pars_fragment>\\\\n#include <map_pars_fragment>\\\\n#include <alphamap_pars_fragment>\\\\n#include <alphatest_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 <cube_uv_reflection_fragment>\\\\n#include <fog_pars_fragment>\\\\n#include <specularmap_pars_fragment>\\\\n#include <logdepthbuf_pars_fragment>\\\\n#include <clipping_planes_pars_fragment>\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\t#include <clipping_planes_fragment>\\\\n\\\\n\\\\tvec4 diffuseColor = vec4( diffuse, opacity );\\\\n\\\\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 <specularmap_fragment>\\\\n\\\\n\\\\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\\\\n\\\\n\\\\t// accumulation (baked indirect lighting only)\\\\n\\\\t#ifdef USE_LIGHTMAP\\\\n\\\\n\\\\t\\\\tvec4 lightMapTexel= texture2D( lightMap, vUv2 );\\\\n\\\\t\\\\treflectedLight.indirectDiffuse += lightMapTexelToLinear( lightMapTexel ).rgb * lightMapIntensity;\\\\n\\\\n\\\\t#else\\\\n\\\\n\\\\t\\\\treflectedLight.indirectDiffuse += vec3( 1.0 );\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\t// modulation\\\\n\\\\t#include <aomap_fragment>\\\\n\\\\n\\\\treflectedLight.indirectDiffuse *= diffuseColor.rgb;\\\\n\\\\n\\\\tvec3 outgoingLight = reflectedLight.indirectDiffuse;\\\\n\\\\n\\\\t#include <envmap_fragment>\\\\n\\\\n\\\\t#include <output_fragment>\\\\n\\\\t#include <tonemapping_fragment>\\\\n\\\\t#include <encodings_fragment>\\\\n\\\\t#include <fog_fragment>\\\\n\\\\t#include <premultiplied_alpha_fragment>\\\\n\\\\t#include <dithering_fragment>\\\\n\\\\n}\\\\n\\\\\\\",meshlambert_vert:\\\\\\\"\\\\n#define LAMBERT\\\\n\\\\nvarying vec3 vLightFront;\\\\nvarying vec3 vIndirectFront;\\\\n\\\\n#ifdef DOUBLE_SIDED\\\\n\\\\tvarying vec3 vLightBack;\\\\n\\\\tvarying vec3 vIndirectBack;\\\\n#endif\\\\n\\\\n#include <common>\\\\n#include <uv_pars_vertex>\\\\n#include <uv2_pars_vertex>\\\\n#include <envmap_pars_vertex>\\\\n#include <bsdfs>\\\\n#include <lights_pars_begin>\\\\n#include <color_pars_vertex>\\\\n#include <fog_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>\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\t#include <uv_vertex>\\\\n\\\\t#include <uv2_vertex>\\\\n\\\\t#include <color_vertex>\\\\n\\\\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\\\\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\\\\n\\\\t#include <worldpos_vertex>\\\\n\\\\t#include <envmap_vertex>\\\\n\\\\t#include <lights_lambert_vertex>\\\\n\\\\t#include <shadowmap_vertex>\\\\n\\\\t#include <fog_vertex>\\\\n}\\\\n\\\\\\\",meshlambert_frag:\\\\\\\"\\\\nuniform vec3 diffuse;\\\\nuniform vec3 emissive;\\\\nuniform float opacity;\\\\n\\\\nvarying vec3 vLightFront;\\\\nvarying vec3 vIndirectFront;\\\\n\\\\n#ifdef DOUBLE_SIDED\\\\n\\\\tvarying vec3 vLightBack;\\\\n\\\\tvarying vec3 vIndirectBack;\\\\n#endif\\\\n\\\\n\\\\n#include <common>\\\\n#include <packing>\\\\n#include <dithering_pars_fragment>\\\\n#include <color_pars_fragment>\\\\n#include <uv_pars_fragment>\\\\n#include <uv2_pars_fragment>\\\\n#include <map_pars_fragment>\\\\n#include <alphamap_pars_fragment>\\\\n#include <alphatest_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 <cube_uv_reflection_fragment>\\\\n#include <bsdfs>\\\\n#include <lights_pars_begin>\\\\n#include <fog_pars_fragment>\\\\n#include <shadowmap_pars_fragment>\\\\n#include <shadowmask_pars_fragment>\\\\n#include <specularmap_pars_fragment>\\\\n#include <logdepthbuf_pars_fragment>\\\\n#include <clipping_planes_pars_fragment>\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\t#include <clipping_planes_fragment>\\\\n\\\\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\\\\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 <specularmap_fragment>\\\\n\\\\t#include <emissivemap_fragment>\\\\n\\\\n\\\\t// accumulation\\\\n\\\\n\\\\t#ifdef DOUBLE_SIDED\\\\n\\\\n\\\\t\\\\treflectedLight.indirectDiffuse += ( gl_FrontFacing ) ? vIndirectFront : vIndirectBack;\\\\n\\\\n\\\\t#else\\\\n\\\\n\\\\t\\\\treflectedLight.indirectDiffuse += vIndirectFront;\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\t#include <lightmap_fragment>\\\\n\\\\n\\\\treflectedLight.indirectDiffuse *= BRDF_Lambert( diffuseColor.rgb );\\\\n\\\\n\\\\t#ifdef DOUBLE_SIDED\\\\n\\\\n\\\\t\\\\treflectedLight.directDiffuse = ( gl_FrontFacing ) ? vLightFront : vLightBack;\\\\n\\\\n\\\\t#else\\\\n\\\\n\\\\t\\\\treflectedLight.directDiffuse = vLightFront;\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\treflectedLight.directDiffuse *= BRDF_Lambert( diffuseColor.rgb ) * getShadowMask();\\\\n\\\\n\\\\t// modulation\\\\n\\\\n\\\\t#include <aomap_fragment>\\\\n\\\\n\\\\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + totalEmissiveRadiance;\\\\n\\\\n\\\\t#include <envmap_fragment>\\\\n\\\\n\\\\t#include <output_fragment>\\\\n\\\\t#include <tonemapping_fragment>\\\\n\\\\t#include <encodings_fragment>\\\\n\\\\t#include <fog_fragment>\\\\n\\\\t#include <premultiplied_alpha_fragment>\\\\n\\\\t#include <dithering_fragment>\\\\n}\\\\n\\\\\\\",meshmatcap_vert:\\\\\\\"\\\\n#define MATCAP\\\\n\\\\nvarying vec3 vViewPosition;\\\\n\\\\n#include <common>\\\\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\\\\n#include <logdepthbuf_pars_vertex>\\\\n#include <clipping_planes_pars_vertex>\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\t#include <uv_vertex>\\\\n\\\\t#include <color_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\\\\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\\\\n\\\\t#include <logdepthbuf_vertex>\\\\n\\\\t#include <clipping_planes_vertex>\\\\n\\\\t#include <fog_vertex>\\\\n\\\\n\\\\tvViewPosition = - mvPosition.xyz;\\\\n\\\\n}\\\\n\\\\\\\",meshmatcap_frag:\\\\\\\"\\\\n#define MATCAP\\\\n\\\\nuniform vec3 diffuse;\\\\nuniform float opacity;\\\\nuniform sampler2D matcap;\\\\n\\\\nvarying vec3 vViewPosition;\\\\n\\\\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 <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>\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\t#include <clipping_planes_fragment>\\\\n\\\\n\\\\tvec4 diffuseColor = vec4( diffuse, opacity );\\\\n\\\\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 <normal_fragment_begin>\\\\n\\\\t#include <normal_fragment_maps>\\\\n\\\\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; // 0.495 to remove artifacts caused by undersized matcap disks\\\\n\\\\n\\\\t#ifdef USE_MATCAP\\\\n\\\\n\\\\t\\\\tvec4 matcapColor = texture2D( matcap, uv );\\\\n\\\\t\\\\tmatcapColor = matcapTexelToLinear( matcapColor );\\\\n\\\\n\\\\t#else\\\\n\\\\n\\\\t\\\\tvec4 matcapColor = vec4( 1.0 );\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\tvec3 outgoingLight = diffuseColor.rgb * matcapColor.rgb;\\\\n\\\\n\\\\t#include <output_fragment>\\\\n\\\\t#include <tonemapping_fragment>\\\\n\\\\t#include <encodings_fragment>\\\\n\\\\t#include <fog_fragment>\\\\n\\\\t#include <premultiplied_alpha_fragment>\\\\n\\\\t#include <dithering_fragment>\\\\n\\\\n}\\\\n\\\\\\\",meshnormal_vert:\\\\\\\"\\\\n#define NORMAL\\\\n\\\\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( TANGENTSPACE_NORMALMAP )\\\\n\\\\n\\\\tvarying vec3 vViewPosition;\\\\n\\\\n#endif\\\\n\\\\n#include <common>\\\\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>\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\t#include <uv_vertex>\\\\n\\\\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\\\\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\\\\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( TANGENTSPACE_NORMALMAP )\\\\n\\\\n\\\\tvViewPosition = - mvPosition.xyz;\\\\n\\\\n#endif\\\\n\\\\n}\\\\n\\\\\\\",meshnormal_frag:\\\\\\\"\\\\n#define NORMAL\\\\n\\\\nuniform float opacity;\\\\n\\\\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( TANGENTSPACE_NORMALMAP )\\\\n\\\\n\\\\tvarying vec3 vViewPosition;\\\\n\\\\n#endif\\\\n\\\\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>\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\t#include <clipping_planes_fragment>\\\\n\\\\t#include <logdepthbuf_fragment>\\\\n\\\\t#include <normal_fragment_begin>\\\\n\\\\t#include <normal_fragment_maps>\\\\n\\\\n\\\\tgl_FragColor = vec4( packNormalToRGB( normal ), opacity );\\\\n\\\\n}\\\\n\\\\\\\",meshphong_vert:\\\\\\\"\\\\n#define PHONG\\\\n\\\\nvarying vec3 vViewPosition;\\\\n\\\\n#include <common>\\\\n#include <uv_pars_vertex>\\\\n#include <uv2_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>\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\t#include <uv_vertex>\\\\n\\\\t#include <uv2_vertex>\\\\n\\\\t#include <color_vertex>\\\\n\\\\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\\\\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\\\\n\\\\tvViewPosition = - mvPosition.xyz;\\\\n\\\\n\\\\t#include <worldpos_vertex>\\\\n\\\\t#include <envmap_vertex>\\\\n\\\\t#include <shadowmap_vertex>\\\\n\\\\t#include <fog_vertex>\\\\n\\\\n}\\\\n\\\\\\\",meshphong_frag:\\\\\\\"\\\\n#define PHONG\\\\n\\\\nuniform vec3 diffuse;\\\\nuniform vec3 emissive;\\\\nuniform vec3 specular;\\\\nuniform float shininess;\\\\nuniform float opacity;\\\\n\\\\n#include <common>\\\\n#include <packing>\\\\n#include <dithering_pars_fragment>\\\\n#include <color_pars_fragment>\\\\n#include <uv_pars_fragment>\\\\n#include <uv2_pars_fragment>\\\\n#include <map_pars_fragment>\\\\n#include <alphamap_pars_fragment>\\\\n#include <alphatest_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 <cube_uv_reflection_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>\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\t#include <clipping_planes_fragment>\\\\n\\\\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\\\\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 <specularmap_fragment>\\\\n\\\\t#include <normal_fragment_begin>\\\\n\\\\t#include <normal_fragment_maps>\\\\n\\\\t#include <emissivemap_fragment>\\\\n\\\\n\\\\t// accumulation\\\\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\\\\n\\\\t// modulation\\\\n\\\\t#include <aomap_fragment>\\\\n\\\\n\\\\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + reflectedLight.directSpecular + reflectedLight.indirectSpecular + totalEmissiveRadiance;\\\\n\\\\n\\\\t#include <envmap_fragment>\\\\n\\\\t#include <output_fragment>\\\\n\\\\t#include <tonemapping_fragment>\\\\n\\\\t#include <encodings_fragment>\\\\n\\\\t#include <fog_fragment>\\\\n\\\\t#include <premultiplied_alpha_fragment>\\\\n\\\\t#include <dithering_fragment>\\\\n\\\\n}\\\\n\\\\\\\",meshphysical_vert:\\\\\\\"\\\\n#define STANDARD\\\\n\\\\nvarying vec3 vViewPosition;\\\\n\\\\n#ifdef USE_TRANSMISSION\\\\n\\\\n\\\\tvarying vec3 vWorldPosition;\\\\n\\\\n#endif\\\\n\\\\n#include <common>\\\\n#include <uv_pars_vertex>\\\\n#include <uv2_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>\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\t#include <uv_vertex>\\\\n\\\\t#include <uv2_vertex>\\\\n\\\\t#include <color_vertex>\\\\n\\\\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\\\\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\\\\n\\\\tvViewPosition = - mvPosition.xyz;\\\\n\\\\n\\\\t#include <worldpos_vertex>\\\\n\\\\t#include <shadowmap_vertex>\\\\n\\\\t#include <fog_vertex>\\\\n\\\\n#ifdef USE_TRANSMISSION\\\\n\\\\n\\\\tvWorldPosition = worldPosition.xyz;\\\\n\\\\n#endif\\\\n}\\\\n\\\\\\\",meshphysical_frag:\\\\\\\"\\\\n#define STANDARD\\\\n\\\\n#ifdef PHYSICAL\\\\n\\\\t#define IOR\\\\n\\\\t#define SPECULAR\\\\n#endif\\\\n\\\\nuniform vec3 diffuse;\\\\nuniform vec3 emissive;\\\\nuniform float roughness;\\\\nuniform float metalness;\\\\nuniform float opacity;\\\\n\\\\n#ifdef IOR\\\\n\\\\tuniform float ior;\\\\n#endif\\\\n\\\\n#ifdef SPECULAR\\\\n\\\\tuniform float specularIntensity;\\\\n\\\\tuniform vec3 specularTint;\\\\n\\\\n\\\\t#ifdef USE_SPECULARINTENSITYMAP\\\\n\\\\t\\\\tuniform sampler2D specularIntensityMap;\\\\n\\\\t#endif\\\\n\\\\n\\\\t#ifdef USE_SPECULARTINTMAP\\\\n\\\\t\\\\tuniform sampler2D specularTintMap;\\\\n\\\\t#endif\\\\n#endif\\\\n\\\\n#ifdef USE_CLEARCOAT\\\\n\\\\tuniform float clearcoat;\\\\n\\\\tuniform float clearcoatRoughness;\\\\n#endif\\\\n\\\\n#ifdef USE_SHEEN\\\\n\\\\tuniform vec3 sheenTint;\\\\n\\\\tuniform float sheenRoughness;\\\\n#endif\\\\n\\\\nvarying vec3 vViewPosition;\\\\n\\\\n#include <common>\\\\n#include <packing>\\\\n#include <dithering_pars_fragment>\\\\n#include <color_pars_fragment>\\\\n#include <uv_pars_fragment>\\\\n#include <uv2_pars_fragment>\\\\n#include <map_pars_fragment>\\\\n#include <alphamap_pars_fragment>\\\\n#include <alphatest_pars_fragment>\\\\n#include <aomap_pars_fragment>\\\\n#include <lightmap_pars_fragment>\\\\n#include <emissivemap_pars_fragment>\\\\n#include <bsdfs>\\\\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 <roughnessmap_pars_fragment>\\\\n#include <metalnessmap_pars_fragment>\\\\n#include <logdepthbuf_pars_fragment>\\\\n#include <clipping_planes_pars_fragment>\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\t#include <clipping_planes_fragment>\\\\n\\\\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\\\\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 <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\\\\n\\\\t// accumulation\\\\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\\\\n\\\\t// modulation\\\\n\\\\t#include <aomap_fragment>\\\\n\\\\n\\\\tvec3 totalDiffuse = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse;\\\\n\\\\tvec3 totalSpecular = reflectedLight.directSpecular + reflectedLight.indirectSpecular;\\\\n\\\\n\\\\t#include <transmission_fragment>\\\\n\\\\n\\\\tvec3 outgoingLight = totalDiffuse + totalSpecular + totalEmissiveRadiance;\\\\n\\\\n\\\\t#ifdef USE_CLEARCOAT\\\\n\\\\n\\\\t\\\\tfloat dotNVcc = saturate( dot( geometry.clearcoatNormal, geometry.viewDir ) );\\\\n\\\\n\\\\t\\\\tvec3 Fcc = F_Schlick( material.clearcoatF0, material.clearcoatF90, dotNVcc );\\\\n\\\\n\\\\t\\\\toutgoingLight = outgoingLight * ( 1.0 - clearcoat * Fcc ) + clearcoatSpecular * clearcoat;\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\t#include <output_fragment>\\\\n\\\\t#include <tonemapping_fragment>\\\\n\\\\t#include <encodings_fragment>\\\\n\\\\t#include <fog_fragment>\\\\n\\\\t#include <premultiplied_alpha_fragment>\\\\n\\\\t#include <dithering_fragment>\\\\n\\\\n}\\\\n\\\\\\\",meshtoon_vert:\\\\\\\"\\\\n#define TOON\\\\n\\\\nvarying vec3 vViewPosition;\\\\n\\\\n#include <common>\\\\n#include <uv_pars_vertex>\\\\n#include <uv2_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>\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\t#include <uv_vertex>\\\\n\\\\t#include <uv2_vertex>\\\\n\\\\t#include <color_vertex>\\\\n\\\\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\\\\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\\\\n\\\\tvViewPosition = - mvPosition.xyz;\\\\n\\\\n\\\\t#include <worldpos_vertex>\\\\n\\\\t#include <shadowmap_vertex>\\\\n\\\\t#include <fog_vertex>\\\\n\\\\n}\\\\n\\\\\\\",meshtoon_frag:\\\\\\\"\\\\n#define TOON\\\\n\\\\nuniform vec3 diffuse;\\\\nuniform vec3 emissive;\\\\nuniform float opacity;\\\\n\\\\n#include <common>\\\\n#include <packing>\\\\n#include <dithering_pars_fragment>\\\\n#include <color_pars_fragment>\\\\n#include <uv_pars_fragment>\\\\n#include <uv2_pars_fragment>\\\\n#include <map_pars_fragment>\\\\n#include <alphamap_pars_fragment>\\\\n#include <alphatest_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>\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\t#include <clipping_planes_fragment>\\\\n\\\\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\\\\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 <normal_fragment_begin>\\\\n\\\\t#include <normal_fragment_maps>\\\\n\\\\t#include <emissivemap_fragment>\\\\n\\\\n\\\\t// accumulation\\\\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\\\\n\\\\t// modulation\\\\n\\\\t#include <aomap_fragment>\\\\n\\\\n\\\\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + totalEmissiveRadiance;\\\\n\\\\n\\\\t#include <output_fragment>\\\\n\\\\t#include <tonemapping_fragment>\\\\n\\\\t#include <encodings_fragment>\\\\n\\\\t#include <fog_fragment>\\\\n\\\\t#include <premultiplied_alpha_fragment>\\\\n\\\\t#include <dithering_fragment>\\\\n\\\\n}\\\\n\\\\\\\",points_vert:\\\\\\\"\\\\nuniform float size;\\\\nuniform float scale;\\\\n\\\\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\\\\nvoid main() {\\\\n\\\\n\\\\t#include <color_vertex>\\\\n\\\\t#include <begin_vertex>\\\\n\\\\t#include <morphtarget_vertex>\\\\n\\\\t#include <project_vertex>\\\\n\\\\n\\\\tgl_PointSize = size;\\\\n\\\\n\\\\t#ifdef USE_SIZEATTENUATION\\\\n\\\\n\\\\t\\\\tbool isPerspective = isPerspectiveMatrix( projectionMatrix );\\\\n\\\\n\\\\t\\\\tif ( isPerspective ) gl_PointSize *= ( scale / - mvPosition.z );\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\t#include <logdepthbuf_vertex>\\\\n\\\\t#include <clipping_planes_vertex>\\\\n\\\\t#include <worldpos_vertex>\\\\n\\\\t#include <fog_vertex>\\\\n\\\\n}\\\\n\\\\\\\",points_frag:\\\\\\\"\\\\nuniform vec3 diffuse;\\\\nuniform float opacity;\\\\n\\\\n#include <common>\\\\n#include <color_pars_fragment>\\\\n#include <map_particle_pars_fragment>\\\\n#include <alphatest_pars_fragment>\\\\n#include <fog_pars_fragment>\\\\n#include <logdepthbuf_pars_fragment>\\\\n#include <clipping_planes_pars_fragment>\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\t#include <clipping_planes_fragment>\\\\n\\\\n\\\\tvec3 outgoingLight = vec3( 0.0 );\\\\n\\\\tvec4 diffuseColor = vec4( diffuse, opacity );\\\\n\\\\n\\\\t#include <logdepthbuf_fragment>\\\\n\\\\t#include <map_particle_fragment>\\\\n\\\\t#include <color_fragment>\\\\n\\\\t#include <alphatest_fragment>\\\\n\\\\n\\\\toutgoingLight = diffuseColor.rgb;\\\\n\\\\n\\\\t#include <output_fragment>\\\\n\\\\t#include <tonemapping_fragment>\\\\n\\\\t#include <encodings_fragment>\\\\n\\\\t#include <fog_fragment>\\\\n\\\\t#include <premultiplied_alpha_fragment>\\\\n\\\\n}\\\\n\\\\\\\",shadow_vert:\\\\\\\"\\\\n#include <common>\\\\n#include <fog_pars_vertex>\\\\n#include <morphtarget_pars_vertex>\\\\n#include <skinning_pars_vertex>\\\\n#include <shadowmap_pars_vertex>\\\\n\\\\nvoid main() {\\\\n\\\\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\\\\n\\\\t#include <begin_vertex>\\\\n\\\\t#include <morphtarget_vertex>\\\\n\\\\t#include <skinning_vertex>\\\\n\\\\t#include <project_vertex>\\\\n\\\\n\\\\t#include <worldpos_vertex>\\\\n\\\\t#include <shadowmap_vertex>\\\\n\\\\t#include <fog_vertex>\\\\n\\\\n}\\\\n\\\\\\\",shadow_frag:\\\\\\\"\\\\nuniform vec3 color;\\\\nuniform float opacity;\\\\n\\\\n#include <common>\\\\n#include <packing>\\\\n#include <fog_pars_fragment>\\\\n#include <bsdfs>\\\\n#include <lights_pars_begin>\\\\n#include <shadowmap_pars_fragment>\\\\n#include <shadowmask_pars_fragment>\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\tgl_FragColor = vec4( color, opacity * ( 1.0 - getShadowMask() ) );\\\\n\\\\n\\\\t#include <tonemapping_fragment>\\\\n\\\\t#include <encodings_fragment>\\\\n\\\\t#include <fog_fragment>\\\\n\\\\n}\\\\n\\\\\\\",sprite_vert:\\\\\\\"\\\\nuniform float rotation;\\\\nuniform vec2 center;\\\\n\\\\n#include <common>\\\\n#include <uv_pars_vertex>\\\\n#include <fog_pars_vertex>\\\\n#include <logdepthbuf_pars_vertex>\\\\n#include <clipping_planes_pars_vertex>\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\t#include <uv_vertex>\\\\n\\\\n\\\\tvec4 mvPosition = modelViewMatrix * vec4( 0.0, 0.0, 0.0, 1.0 );\\\\n\\\\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\\\\n\\\\t#ifndef USE_SIZEATTENUATION\\\\n\\\\n\\\\t\\\\tbool isPerspective = isPerspectiveMatrix( projectionMatrix );\\\\n\\\\n\\\\t\\\\tif ( isPerspective ) scale *= - mvPosition.z;\\\\n\\\\n\\\\t#endif\\\\n\\\\n\\\\tvec2 alignedPosition = ( position.xy - ( center - vec2( 0.5 ) ) ) * scale;\\\\n\\\\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\\\\n\\\\tmvPosition.xy += rotatedPosition;\\\\n\\\\n\\\\tgl_Position = projectionMatrix * mvPosition;\\\\n\\\\n\\\\t#include <logdepthbuf_vertex>\\\\n\\\\t#include <clipping_planes_vertex>\\\\n\\\\t#include <fog_vertex>\\\\n\\\\n}\\\\n\\\\\\\",sprite_frag:\\\\\\\"\\\\nuniform vec3 diffuse;\\\\nuniform float opacity;\\\\n\\\\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 <fog_pars_fragment>\\\\n#include <logdepthbuf_pars_fragment>\\\\n#include <clipping_planes_pars_fragment>\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\t#include <clipping_planes_fragment>\\\\n\\\\n\\\\tvec3 outgoingLight = vec3( 0.0 );\\\\n\\\\tvec4 diffuseColor = vec4( diffuse, opacity );\\\\n\\\\n\\\\t#include <logdepthbuf_fragment>\\\\n\\\\t#include <map_fragment>\\\\n\\\\t#include <alphamap_fragment>\\\\n\\\\t#include <alphatest_fragment>\\\\n\\\\n\\\\toutgoingLight = diffuseColor.rgb;\\\\n\\\\n\\\\t#include <output_fragment>\\\\n\\\\t#include <tonemapping_fragment>\\\\n\\\\t#include <encodings_fragment>\\\\n\\\\t#include <fog_fragment>\\\\n\\\\n}\\\\n\\\\\\\"};var G=n(11);const V={common:{diffuse:{value:new D.a(16777215)},opacity:{value:1},map:{value:null},uvTransform:{value:new G.a},uv2Transform:{value:new G.a},alphaMap:{value:null},alphaTest:{value:0}},specularmap:{specularMap:{value:null}},envmap:{envMap:{value:null},flipEnvMap:{value:-1},reflectivity:{value:1},ior:{value:1.5},refractionRatio:{value:.98},maxMipLevel:{value:0}},aomap:{aoMap:{value:null},aoMapIntensity:{value:1}},lightmap:{lightMap:{value:null},lightMapIntensity:{value:1}},emissivemap:{emissiveMap:{value:null}},bumpmap:{bumpMap:{value:null},bumpScale:{value:1}},normalmap:{normalMap:{value:null},normalScale:{value:new d.a(1,1)}},displacementmap:{displacementMap:{value:null},displacementScale:{value:1},displacementBias:{value:0}},roughnessmap:{roughnessMap:{value:null}},metalnessmap:{metalnessMap:{value:null}},gradientmap:{gradientMap:{value:null}},fog:{fogDensity:{value:25e-5},fogNear:{value:1},fogFar:{value:2e3},fogColor:{value:new D.a(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:{}}},spotShadowMap:{value:[]},spotShadowMatrix:{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 D.a(16777215)},opacity:{value:1},size:{value:1},scale:{value:1},map:{value:null},alphaMap:{value:null},alphaTest:{value:0},uvTransform:{value:new G.a}},sprite:{diffuse:{value:new D.a(16777215)},opacity:{value:1},center:{value:new d.a(.5,.5)},rotation:{value:0},map:{value:null},alphaMap:{value:null},alphaTest:{value:0},uvTransform:{value:new G.a}}},H={basic:{uniforms:R([V.common,V.specularmap,V.envmap,V.aomap,V.lightmap,V.fog]),vertexShader:U.meshbasic_vert,fragmentShader:U.meshbasic_frag},lambert:{uniforms:R([V.common,V.specularmap,V.envmap,V.aomap,V.lightmap,V.emissivemap,V.fog,V.lights,{emissive:{value:new D.a(0)}}]),vertexShader:U.meshlambert_vert,fragmentShader:U.meshlambert_frag},phong:{uniforms:R([V.common,V.specularmap,V.envmap,V.aomap,V.lightmap,V.emissivemap,V.bumpmap,V.normalmap,V.displacementmap,V.fog,V.lights,{emissive:{value:new D.a(0)},specular:{value:new D.a(1118481)},shininess:{value:30}}]),vertexShader:U.meshphong_vert,fragmentShader:U.meshphong_frag},standard:{uniforms:R([V.common,V.envmap,V.aomap,V.lightmap,V.emissivemap,V.bumpmap,V.normalmap,V.displacementmap,V.roughnessmap,V.metalnessmap,V.fog,V.lights,{emissive:{value:new D.a(0)},roughness:{value:1},metalness:{value:0},envMapIntensity:{value:1}}]),vertexShader:U.meshphysical_vert,fragmentShader:U.meshphysical_frag},toon:{uniforms:R([V.common,V.aomap,V.lightmap,V.emissivemap,V.bumpmap,V.normalmap,V.displacementmap,V.gradientmap,V.fog,V.lights,{emissive:{value:new D.a(0)}}]),vertexShader:U.meshtoon_vert,fragmentShader:U.meshtoon_frag},matcap:{uniforms:R([V.common,V.bumpmap,V.normalmap,V.displacementmap,V.fog,{matcap:{value:null}}]),vertexShader:U.meshmatcap_vert,fragmentShader:U.meshmatcap_frag},points:{uniforms:R([V.points,V.fog]),vertexShader:U.points_vert,fragmentShader:U.points_frag},dashed:{uniforms:R([V.common,V.fog,{scale:{value:1},dashSize:{value:1},totalSize:{value:2}}]),vertexShader:U.linedashed_vert,fragmentShader:U.linedashed_frag},depth:{uniforms:R([V.common,V.displacementmap]),vertexShader:U.depth_vert,fragmentShader:U.depth_frag},normal:{uniforms:R([V.common,V.bumpmap,V.normalmap,V.displacementmap,{opacity:{value:1}}]),vertexShader:U.meshnormal_vert,fragmentShader:U.meshnormal_frag},sprite:{uniforms:R([V.sprite,V.fog]),vertexShader:U.sprite_vert,fragmentShader:U.sprite_frag},background:{uniforms:{uvTransform:{value:new G.a},t2D:{value:null}},vertexShader:U.background_vert,fragmentShader:U.background_frag},cube:{uniforms:R([V.envmap,{opacity:{value:1}}]),vertexShader:U.cube_vert,fragmentShader:U.cube_frag},equirect:{uniforms:{tEquirect:{value:null}},vertexShader:U.equirect_vert,fragmentShader:U.equirect_frag},distanceRGBA:{uniforms:R([V.common,V.displacementmap,{referencePosition:{value:new p.a},nearDistance:{value:1},farDistance:{value:1e3}}]),vertexShader:U.distanceRGBA_vert,fragmentShader:U.distanceRGBA_frag},shadow:{uniforms:R([V.lights,V.fog,{color:{value:new D.a(0)},opacity:{value:1}}]),vertexShader:U.shadow_vert,fragmentShader:U.shadow_frag}};function j(t,e,n,i,s){const r=new D.a(0);let o,a,l=0,c=null,h=0,u=null;function d(t,e){n.buffers.color.setClear(t.r,t.g,t.b,e,s)}return{getClearColor:function(){return r},setClearColor:function(t,e=1){r.set(t),l=e,d(r,l)},getClearAlpha:function(){return l},setClearAlpha:function(t){l=t,d(r,l)},render:function(n,s){let p=!1,_=!0===s.isScene?s.background:null;_&&_.isTexture&&(_=e.get(_));const m=t.xr,f=m.getSession&&m.getSession();f&&\\\\\\\"additive\\\\\\\"===f.environmentBlendMode&&(_=null),null===_?d(r,l):_&&_.isColor&&(d(_,1),p=!0),(t.autoClear||p)&&t.clear(t.autoClearColor,t.autoClearDepth,t.autoClearStencil),_&&(_.isCubeTexture||_.mapping===w.q)?(void 0===a&&(a=new B.a(new N(1,1,1),new F({name:\\\\\\\"BackgroundCubeMaterial\\\\\\\",uniforms:P(H.cube.uniforms),vertexShader:H.cube.vertexShader,fragmentShader:H.cube.fragmentShader,side:w.i,depthTest:!1,depthWrite:!1,fog:!1})),a.geometry.deleteAttribute(\\\\\\\"normal\\\\\\\"),a.geometry.deleteAttribute(\\\\\\\"uv\\\\\\\"),a.onBeforeRender=function(t,e,n){this.matrixWorld.copyPosition(n.matrixWorld)},Object.defineProperty(a.material,\\\\\\\"envMap\\\\\\\",{get:function(){return this.uniforms.envMap.value}}),i.update(a)),a.material.uniforms.envMap.value=_,a.material.uniforms.flipEnvMap.value=_.isCubeTexture&&!1===_.isRenderTargetTexture?-1:1,c===_&&h===_.version&&u===t.toneMapping||(a.material.needsUpdate=!0,c=_,h=_.version,u=t.toneMapping),n.unshift(a,a.geometry,a.material,0,0,null)):_&&_.isTexture&&(void 0===o&&(o=new B.a(new L(2,2),new F({name:\\\\\\\"BackgroundMaterial\\\\\\\",uniforms:P(H.background.uniforms),vertexShader:H.background.vertexShader,fragmentShader:H.background.fragmentShader,side:w.H,depthTest:!1,depthWrite:!1,fog:!1})),o.geometry.deleteAttribute(\\\\\\\"normal\\\\\\\"),Object.defineProperty(o.material,\\\\\\\"map\\\\\\\",{get:function(){return this.uniforms.t2D.value}}),i.update(o)),o.material.uniforms.t2D.value=_,!0===_.matrixAutoUpdate&&_.updateMatrix(),o.material.uniforms.uvTransform.value.copy(_.matrix),c===_&&h===_.version&&u===t.toneMapping||(o.material.needsUpdate=!0,c=_,h=_.version,u=t.toneMapping),n.unshift(o,o.geometry,o.material,0,0,null))}}}function W(t,e,n,i){const s=t.getParameter(t.MAX_VERTEX_ATTRIBS),r=i.isWebGL2?null:e.get(\\\\\\\"OES_vertex_array_object\\\\\\\"),o=i.isWebGL2||null!==r,a={},l=d(null);let c=l;function h(e){return i.isWebGL2?t.bindVertexArray(e):r.bindVertexArrayOES(e)}function u(e){return i.isWebGL2?t.deleteVertexArray(e):r.deleteVertexArrayOES(e)}function d(t){const e=[],n=[],i=[];for(let t=0;t<s;t++)e[t]=0,n[t]=0,i[t]=0;return{geometry:null,program:null,wireframe:!1,newAttributes:e,enabledAttributes:n,attributeDivisors:i,object:t,attributes:{},index:null}}function p(){const t=c.newAttributes;for(let e=0,n=t.length;e<n;e++)t[e]=0}function _(t){m(t,0)}function m(n,s){const r=c.newAttributes,o=c.enabledAttributes,a=c.attributeDivisors;if(r[n]=1,0===o[n]&&(t.enableVertexAttribArray(n),o[n]=1),a[n]!==s){(i.isWebGL2?t:e.get(\\\\\\\"ANGLE_instanced_arrays\\\\\\\"))[i.isWebGL2?\\\\\\\"vertexAttribDivisor\\\\\\\":\\\\\\\"vertexAttribDivisorANGLE\\\\\\\"](n,s),a[n]=s}}function f(){const e=c.newAttributes,n=c.enabledAttributes;for(let i=0,s=n.length;i<s;i++)n[i]!==e[i]&&(t.disableVertexAttribArray(i),n[i]=0)}function g(e,n,s,r,o,a){!0!==i.isWebGL2||s!==t.INT&&s!==t.UNSIGNED_INT?t.vertexAttribPointer(e,n,s,r,o,a):t.vertexAttribIPointer(e,n,s,o,a)}function v(){y(),c!==l&&(c=l,h(c.object))}function y(){l.geometry=null,l.program=null,l.wireframe=!1}return{setup:function(s,l,u,v,y){let x=!1;if(o){const e=function(e,n,s){const o=!0===s.wireframe;let l=a[e.id];void 0===l&&(l={},a[e.id]=l);let c=l[n.id];void 0===c&&(c={},l[n.id]=c);let h=c[o];void 0===h&&(h=d(i.isWebGL2?t.createVertexArray():r.createVertexArrayOES()),c[o]=h);return h}(v,u,l);c!==e&&(c=e,h(c.object)),x=function(t,e){const n=c.attributes,i=t.attributes;let s=0;for(const t in i){const e=n[t],r=i[t];if(void 0===e)return!0;if(e.attribute!==r)return!0;if(e.data!==r.data)return!0;s++}return c.attributesNum!==s||c.index!==e}(v,y),x&&function(t,e){const n={},i=t.attributes;let s=0;for(const t in i){const e=i[t],r={};r.attribute=e,e.data&&(r.data=e.data),n[t]=r,s++}c.attributes=n,c.attributesNum=s,c.index=e}(v,y)}else{const t=!0===l.wireframe;c.geometry===v.id&&c.program===u.id&&c.wireframe===t||(c.geometry=v.id,c.program=u.id,c.wireframe=t,x=!0)}!0===s.isInstancedMesh&&(x=!0),null!==y&&n.update(y,t.ELEMENT_ARRAY_BUFFER),x&&(!function(s,r,o,a){if(!1===i.isWebGL2&&(s.isInstancedMesh||a.isInstancedBufferGeometry)&&null===e.get(\\\\\\\"ANGLE_instanced_arrays\\\\\\\"))return;p();const l=a.attributes,c=o.getAttributes(),h=r.defaultAttributeValues;for(const e in c){const i=c[e];if(i.location>=0){let r=l[e];if(void 0===r&&(\\\\\\\"instanceMatrix\\\\\\\"===e&&s.instanceMatrix&&(r=s.instanceMatrix),\\\\\\\"instanceColor\\\\\\\"===e&&s.instanceColor&&(r=s.instanceColor)),void 0!==r){const e=r.normalized,o=r.itemSize,l=n.get(r);if(void 0===l)continue;const c=l.buffer,h=l.type,u=l.bytesPerElement;if(r.isInterleavedBufferAttribute){const n=r.data,l=n.stride,d=r.offset;if(n&&n.isInstancedInterleavedBuffer){for(let t=0;t<i.locationSize;t++)m(i.location+t,n.meshPerAttribute);!0!==s.isInstancedMesh&&void 0===a._maxInstanceCount&&(a._maxInstanceCount=n.meshPerAttribute*n.count)}else for(let t=0;t<i.locationSize;t++)_(i.location+t);t.bindBuffer(t.ARRAY_BUFFER,c);for(let t=0;t<i.locationSize;t++)g(i.location+t,o/i.locationSize,h,e,l*u,(d+o/i.locationSize*t)*u)}else{if(r.isInstancedBufferAttribute){for(let t=0;t<i.locationSize;t++)m(i.location+t,r.meshPerAttribute);!0!==s.isInstancedMesh&&void 0===a._maxInstanceCount&&(a._maxInstanceCount=r.meshPerAttribute*r.count)}else for(let t=0;t<i.locationSize;t++)_(i.location+t);t.bindBuffer(t.ARRAY_BUFFER,c);for(let t=0;t<i.locationSize;t++)g(i.location+t,o/i.locationSize,h,e,o*u,o/i.locationSize*t*u)}}else if(void 0!==h){const n=h[e];if(void 0!==n)switch(n.length){case 2:t.vertexAttrib2fv(i.location,n);break;case 3:t.vertexAttrib3fv(i.location,n);break;case 4:t.vertexAttrib4fv(i.location,n);break;default:t.vertexAttrib1fv(i.location,n)}}}}f()}(s,l,u,v),null!==y&&t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,n.get(y).buffer))},reset:v,resetDefaultState:y,dispose:function(){v();for(const t in a){const e=a[t];for(const t in e){const n=e[t];for(const t in n)u(n[t].object),delete n[t];delete e[t]}delete a[t]}},releaseStatesOfGeometry:function(t){if(void 0===a[t.id])return;const e=a[t.id];for(const t in e){const n=e[t];for(const t in n)u(n[t].object),delete n[t];delete e[t]}delete a[t.id]},releaseStatesOfProgram:function(t){for(const e in a){const n=a[e];if(void 0===n[t.id])continue;const i=n[t.id];for(const t in i)u(i[t].object),delete i[t];delete n[t.id]}},initAttributes:p,enableAttribute:_,disableUnusedAttributes:f}}function q(t,e,n,i){const s=i.isWebGL2;let r;this.setMode=function(t){r=t},this.render=function(e,i){t.drawArrays(r,e,i),n.update(i,r,1)},this.renderInstances=function(i,o,a){if(0===a)return;let l,c;if(s)l=t,c=\\\\\\\"drawArraysInstanced\\\\\\\";else if(l=e.get(\\\\\\\"ANGLE_instanced_arrays\\\\\\\"),c=\\\\\\\"drawArraysInstancedANGLE\\\\\\\",null===l)return void console.error(\\\\\\\"THREE.WebGLBufferRenderer: using THREE.InstancedBufferGeometry but hardware does not support extension ANGLE_instanced_arrays.\\\\\\\");l[c](r,i,o,a),n.update(o,r,a)}}function X(t,e,n){let i;function s(e){if(\\\\\\\"highp\\\\\\\"===e){if(t.getShaderPrecisionFormat(t.VERTEX_SHADER,t.HIGH_FLOAT).precision>0&&t.getShaderPrecisionFormat(t.FRAGMENT_SHADER,t.HIGH_FLOAT).precision>0)return\\\\\\\"highp\\\\\\\";e=\\\\\\\"mediump\\\\\\\"}return\\\\\\\"mediump\\\\\\\"===e&&t.getShaderPrecisionFormat(t.VERTEX_SHADER,t.MEDIUM_FLOAT).precision>0&&t.getShaderPrecisionFormat(t.FRAGMENT_SHADER,t.MEDIUM_FLOAT).precision>0?\\\\\\\"mediump\\\\\\\":\\\\\\\"lowp\\\\\\\"}const r=\\\\\\\"undefined\\\\\\\"!=typeof WebGL2RenderingContext&&t instanceof WebGL2RenderingContext||\\\\\\\"undefined\\\\\\\"!=typeof WebGL2ComputeRenderingContext&&t instanceof WebGL2ComputeRenderingContext;let o=void 0!==n.precision?n.precision:\\\\\\\"highp\\\\\\\";const a=s(o);a!==o&&(console.warn(\\\\\\\"THREE.WebGLRenderer:\\\\\\\",o,\\\\\\\"not supported, using\\\\\\\",a,\\\\\\\"instead.\\\\\\\"),o=a);const l=r||e.has(\\\\\\\"WEBGL_draw_buffers\\\\\\\"),c=!0===n.logarithmicDepthBuffer,h=t.getParameter(t.MAX_TEXTURE_IMAGE_UNITS),u=t.getParameter(t.MAX_VERTEX_TEXTURE_IMAGE_UNITS),d=t.getParameter(t.MAX_TEXTURE_SIZE),p=t.getParameter(t.MAX_CUBE_MAP_TEXTURE_SIZE),_=t.getParameter(t.MAX_VERTEX_ATTRIBS),m=t.getParameter(t.MAX_VERTEX_UNIFORM_VECTORS),f=t.getParameter(t.MAX_VARYING_VECTORS),g=t.getParameter(t.MAX_FRAGMENT_UNIFORM_VECTORS),v=u>0,y=r||e.has(\\\\\\\"OES_texture_float\\\\\\\");return{isWebGL2:r,drawBuffers:l,getMaxAnisotropy:function(){if(void 0!==i)return i;if(!0===e.has(\\\\\\\"EXT_texture_filter_anisotropic\\\\\\\")){const n=e.get(\\\\\\\"EXT_texture_filter_anisotropic\\\\\\\");i=t.getParameter(n.MAX_TEXTURE_MAX_ANISOTROPY_EXT)}else i=0;return i},getMaxPrecision:s,precision:o,logarithmicDepthBuffer:c,maxTextures:h,maxVertexTextures:u,maxTextureSize:d,maxCubemapSize:p,maxAttributes:_,maxVertexUniforms:m,maxVaryings:f,maxFragmentUniforms:g,vertexTextures:v,floatFragmentTextures:y,floatVertexTextures:v&&y,maxSamples:r?t.getParameter(t.MAX_SAMPLES):0}}H.physical={uniforms:R([H.standard.uniforms,{clearcoat:{value:0},clearcoatMap:{value:null},clearcoatRoughness:{value:0},clearcoatRoughnessMap:{value:null},clearcoatNormalScale:{value:new d.a(1,1)},clearcoatNormalMap:{value:null},sheen:{value:0},sheenTint:{value:new D.a(0)},sheenRoughness:{value:0},transmission:{value:0},transmissionMap:{value:null},transmissionSamplerSize:{value:new d.a},transmissionSamplerMap:{value:null},thickness:{value:0},thicknessMap:{value:null},attenuationDistance:{value:0},attenuationTint:{value:new D.a(0)},specularIntensity:{value:0},specularIntensityMap:{value:null},specularTint:{value:new D.a(1,1,1)},specularTintMap:{value:null}}]),vertexShader:U.meshphysical_vert,fragmentShader:U.meshphysical_frag};var Y=n(31);function $(t){const e=this;let n=null,i=0,s=!1,r=!1;const o=new Y.a,a=new G.a,l={value:null,needsUpdate:!1};function c(){l.value!==n&&(l.value=n,l.needsUpdate=i>0),e.numPlanes=i,e.numIntersection=0}function h(t,n,i,s){const r=null!==t?t.length:0;let c=null;if(0!==r){if(c=l.value,!0!==s||null===c){const e=i+4*r,s=n.matrixWorldInverse;a.getNormalMatrix(s),(null===c||c.length<e)&&(c=new Float32Array(e));for(let e=0,n=i;e!==r;++e,n+=4)o.copy(t[e]).applyMatrix4(s,a),o.normal.toArray(c,n),c[n+3]=o.constant}l.value=c,l.needsUpdate=!0}return e.numPlanes=r,e.numIntersection=0,c}this.uniform=l,this.numPlanes=0,this.numIntersection=0,this.init=function(t,e,r){const o=0!==t.length||e||0!==i||s;return s=e,n=h(t,r,0),i=t.length,o},this.beginShadows=function(){r=!0,h(null)},this.endShadows=function(){r=!1,c()},this.setState=function(e,o,a){const u=e.clippingPlanes,d=e.clipIntersection,p=e.clipShadows,_=t.get(e);if(!s||null===u||0===u.length||r&&!p)r?h(null):c();else{const t=r?0:i,e=4*t;let s=_.clippingState||null;l.value=s,s=h(u,o,e,a);for(let t=0;t!==e;++t)s[t]=n[t];_.clippingState=s,this.numIntersection=d?this.numPlanes:0,this.numPlanes+=t}}}var J=n(15),Z=n(23);class K extends J.a{constructor(t,e,n={}){super(),this.width=t,this.height=e,this.depth=1,this.scissor=new _.a(0,0,t,e),this.scissorTest=!1,this.viewport=new _.a(0,0,t,e),this.texture=new Z.a(void 0,n.mapping,n.wrapS,n.wrapT,n.magFilter,n.minFilter,n.format,n.type,n.anisotropy,n.encoding),this.texture.isRenderTargetTexture=!0,this.texture.image={width:t,height:e,depth:1},this.texture.generateMipmaps=void 0!==n.generateMipmaps&&n.generateMipmaps,this.texture.internalFormat=void 0!==n.internalFormat?n.internalFormat:null,this.texture.minFilter=void 0!==n.minFilter?n.minFilter:w.V,this.depthBuffer=void 0===n.depthBuffer||n.depthBuffer,this.stencilBuffer=void 0!==n.stencilBuffer&&n.stencilBuffer,this.depthTexture=void 0!==n.depthTexture?n.depthTexture:null}setTexture(t){t.image={width:this.width,height:this.height,depth:this.depth},this.texture=t}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){return this.width=t.width,this.height=t.height,this.depth=t.depth,this.viewport.copy(t.viewport),this.texture=t.texture.clone(),this.texture.image={...this.texture.image},this.depthBuffer=t.depthBuffer,this.stencilBuffer=t.stencilBuffer,this.depthTexture=t.depthTexture,this}dispose(){this.dispatchEvent({type:\\\\\\\"dispose\\\\\\\"})}}K.prototype.isWebGLRenderTarget=!0;var Q=n(10),tt=n(30);const et=90;class nt extends Q.a{constructor(t,e,n){if(super(),this.type=\\\\\\\"CubeCamera\\\\\\\",!0!==n.isWebGLCubeRenderTarget)return void console.error(\\\\\\\"THREE.CubeCamera: The constructor now expects an instance of WebGLCubeRenderTarget as third parameter.\\\\\\\");this.renderTarget=n;const i=new tt.a(et,1,t,e);i.layers=this.layers,i.up.set(0,-1,0),i.lookAt(new p.a(1,0,0)),this.add(i);const s=new tt.a(et,1,t,e);s.layers=this.layers,s.up.set(0,-1,0),s.lookAt(new p.a(-1,0,0)),this.add(s);const r=new tt.a(et,1,t,e);r.layers=this.layers,r.up.set(0,0,1),r.lookAt(new p.a(0,1,0)),this.add(r);const o=new tt.a(et,1,t,e);o.layers=this.layers,o.up.set(0,0,-1),o.lookAt(new p.a(0,-1,0)),this.add(o);const a=new tt.a(et,1,t,e);a.layers=this.layers,a.up.set(0,-1,0),a.lookAt(new p.a(0,0,1)),this.add(a);const l=new tt.a(et,1,t,e);l.layers=this.layers,l.up.set(0,-1,0),l.lookAt(new p.a(0,0,-1)),this.add(l)}update(t,e){null===this.parent&&this.updateMatrixWorld();const n=this.renderTarget,[i,s,r,o,a,l]=this.children,c=t.xr.enabled,h=t.getRenderTarget();t.xr.enabled=!1;const u=n.texture.generateMipmaps;n.texture.generateMipmaps=!1,t.setRenderTarget(n,0),t.render(e,i),t.setRenderTarget(n,1),t.render(e,s),t.setRenderTarget(n,2),t.render(e,r),t.setRenderTarget(n,3),t.render(e,o),t.setRenderTarget(n,4),t.render(e,a),n.texture.generateMipmaps=u,t.setRenderTarget(n,5),t.render(e,l),t.setRenderTarget(h),t.xr.enabled=c}}class it extends Z.a{constructor(t,e,n,i,s,r,o,a,l,c){super(t=void 0!==t?t:[],e=void 0!==e?e:w.o,n,i,s,r,o,a,l,c),this.flipY=!1}get images(){return this.image}set images(t){this.image=t}}it.prototype.isCubeTexture=!0;class st extends K{constructor(t,e,n){Number.isInteger(e)&&(console.warn(\\\\\\\"THREE.WebGLCubeRenderTarget: constructor signature is now WebGLCubeRenderTarget( size, options )\\\\\\\"),e=n),super(t,t,e),e=e||{},this.texture=new it(void 0,e.mapping,e.wrapS,e.wrapT,e.magFilter,e.minFilter,e.format,e.type,e.anisotropy,e.encoding),this.texture.isRenderTargetTexture=!0,this.texture.generateMipmaps=void 0!==e.generateMipmaps&&e.generateMipmaps,this.texture.minFilter=void 0!==e.minFilter?e.minFilter:w.V,this.texture._needsFlipEnvMap=!1}fromEquirectangularTexture(t,e){this.texture.type=e.type,this.texture.format=w.Ib,this.texture.encoding=e.encoding,this.texture.generateMipmaps=e.generateMipmaps,this.texture.minFilter=e.minFilter,this.texture.magFilter=e.magFilter;const n={uniforms:{tEquirect:{value:null}},vertexShader:\\\\\\\"\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tvarying vec3 vWorldDirection;\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tvec3 transformDirection( in vec3 dir, in mat4 matrix ) {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t\\\\treturn normalize( ( matrix * vec4( dir, 0.0 ) ).xyz );\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tvoid main() {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tvWorldDirection = transformDirection( position, modelMatrix );\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t#include <begin_vertex>\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t#include <project_vertex>\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t\\\\t\\\\\\\",fragmentShader:\\\\\\\"\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tuniform sampler2D tEquirect;\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tvarying vec3 vWorldDirection;\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t#include <common>\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tvoid main() {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tvec3 direction = normalize( vWorldDirection );\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tvec2 sampleUV = equirectUv( direction );\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tgl_FragColor = texture2D( tEquirect, sampleUV );\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t\\\\t\\\\\\\"},i=new N(5,5,5),s=new F({name:\\\\\\\"CubemapFromEquirect\\\\\\\",uniforms:P(n.uniforms),vertexShader:n.vertexShader,fragmentShader:n.fragmentShader,side:w.i,blending:w.ub});s.uniforms.tEquirect.value=e;const r=new B.a(i,s),o=e.minFilter;e.minFilter===w.Y&&(e.minFilter=w.V);return new nt(1,10,this).update(t,r),e.minFilter=o,r.geometry.dispose(),r.material.dispose(),this}clear(t,e,n,i){const s=t.getRenderTarget();for(let s=0;s<6;s++)t.setRenderTarget(this,s),t.clear(e,n,i);t.setRenderTarget(s)}}function rt(t){let e=new WeakMap;function n(t,e){return e===w.D?t.mapping=w.o:e===w.E&&(t.mapping=w.p),t}function i(t){const n=t.target;n.removeEventListener(\\\\\\\"dispose\\\\\\\",i);const s=e.get(n);void 0!==s&&(e.delete(n),s.dispose())}return{get:function(s){if(s&&s.isTexture&&!1===s.isRenderTargetTexture){const r=s.mapping;if(r===w.D||r===w.E){if(e.has(s)){return n(e.get(s).texture,s.mapping)}{const r=s.image;if(r&&r.height>0){const o=t.getRenderTarget(),a=new st(r.height/2);return a.fromEquirectangularTexture(t,s),e.set(s,a),t.setRenderTarget(o),s.addEventListener(\\\\\\\"dispose\\\\\\\",i),n(a.texture,s.mapping)}return null}}}return s},dispose:function(){e=new WeakMap}}}st.prototype.isWebGLCubeRenderTarget=!0;var ot=n(37);class at extends F{constructor(t){super(t),this.type=\\\\\\\"RawShaderMaterial\\\\\\\"}}at.prototype.isRawShaderMaterial=!0;var lt=n(29);const ct=Math.pow(2,8),ht=[.125,.215,.35,.446,.526,.582],ut=5+ht.length,dt=20,pt={[w.U]:0,[w.ld]:1,[w.gc]:2,[w.lc]:3,[w.kc]:4,[w.fc]:5,[w.J]:6},_t=new ot.a,{_lodPlanes:mt,_sizeLods:ft,_sigmas:gt}=Mt(),vt=new D.a;let yt=null;const xt=(1+Math.sqrt(5))/2,bt=1/xt,wt=[new p.a(1,1,1),new p.a(-1,1,1),new p.a(1,1,-1),new p.a(-1,1,-1),new p.a(0,xt,bt),new p.a(0,xt,-bt),new p.a(bt,0,xt),new p.a(-bt,0,xt),new p.a(xt,bt,0),new p.a(-xt,bt,0)];class Tt{constructor(t){this._renderer=t,this._pingPongRenderTarget=null,this._blurMaterial=function(t){const e=new Float32Array(t),n=new p.a(0,1,0);return new at({name:\\\\\\\"SphericalGaussianBlur\\\\\\\",defines:{n:t},uniforms:{envMap:{value:null},samples:{value:1},weights:{value:e},latitudinal:{value:!1},dTheta:{value:0},mipInt:{value:0},poleAxis:{value:n},inputEncoding:{value:pt[w.U]},outputEncoding:{value:pt[w.U]}},vertexShader:Lt(),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${Ot()}\\\\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\\\\tgl_FragColor = linearToOutputTexel( gl_FragColor );\\\\n\\\\n\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t`,blending:w.ub,depthTest:!1,depthWrite:!1})}(dt),this._equirectShader=null,this._cubemapShader=null,this._compileMaterial(this._blurMaterial)}fromScene(t,e=0,n=.1,i=100){yt=this._renderer.getRenderTarget();const s=this._allocateTargets();return this._sceneToCubeUV(t,n,i,s),e>0&&this._blur(s,0,0,e),this._applyPMREM(s),this._cleanup(s),s}fromEquirectangular(t){return this._fromTexture(t)}fromCubemap(t){return this._fromTexture(t)}compileCubemapShader(){null===this._cubemapShader&&(this._cubemapShader=Nt(),this._compileMaterial(this._cubemapShader))}compileEquirectangularShader(){null===this._equirectShader&&(this._equirectShader=Ct(),this._compileMaterial(this._equirectShader))}dispose(){this._blurMaterial.dispose(),null!==this._cubemapShader&&this._cubemapShader.dispose(),null!==this._equirectShader&&this._equirectShader.dispose();for(let t=0;t<mt.length;t++)mt[t].dispose()}_cleanup(t){this._pingPongRenderTarget.dispose(),this._renderer.setRenderTarget(yt),t.scissorTest=!1,St(t,0,0,t.width,t.height)}_fromTexture(t){yt=this._renderer.getRenderTarget();const e=this._allocateTargets(t);return this._textureToCubeUV(t,e),this._applyPMREM(e),this._cleanup(e),e}_allocateTargets(t){const e={magFilter:w.ob,minFilter:w.ob,generateMipmaps:!1,type:w.Zc,format:w.hc,encoding:At(t)?t.encoding:w.gc,depthBuffer:!1},n=Et(e);return n.depthBuffer=!t,this._pingPongRenderTarget=Et(e),n}_compileMaterial(t){const e=new B.a(mt[0],t);this._renderer.compile(e,_t)}_sceneToCubeUV(t,e,n,i){const s=new tt.a(90,1,e,n),r=[1,-1,1,1,1,1],o=[1,1,1,-1,-1,-1],a=this._renderer,l=a.autoClear,c=a.outputEncoding,h=a.toneMapping;a.getClearColor(vt),a.toneMapping=w.vb,a.outputEncoding=w.U,a.autoClear=!1;const u=new lt.a({name:\\\\\\\"PMREM.Background\\\\\\\",side:w.i,depthWrite:!1,depthTest:!1}),d=new B.a(new N,u);let p=!1;const _=t.background;_?_.isColor&&(u.color.copy(_),t.background=null,p=!0):(u.color.copy(vt),p=!0);for(let e=0;e<6;e++){const n=e%3;0==n?(s.up.set(0,r[e],0),s.lookAt(o[e],0,0)):1==n?(s.up.set(0,0,r[e]),s.lookAt(0,o[e],0)):(s.up.set(0,r[e],0),s.lookAt(0,0,o[e])),St(i,n*ct,e>2?ct:0,ct,ct),a.setRenderTarget(i),p&&a.render(d,s),a.render(t,s)}d.geometry.dispose(),d.material.dispose(),a.toneMapping=h,a.outputEncoding=c,a.autoClear=l,t.background=_}_setEncoding(t,e){!0===this._renderer.capabilities.isWebGL2&&e.format===w.Ib&&e.type===w.Zc&&e.encoding===w.ld?t.value=pt[w.U]:t.value=pt[e.encoding]}_textureToCubeUV(t,e){const n=this._renderer;t.isCubeTexture?null==this._cubemapShader&&(this._cubemapShader=Nt()):null==this._equirectShader&&(this._equirectShader=Ct());const i=t.isCubeTexture?this._cubemapShader:this._equirectShader,s=new B.a(mt[0],i),r=i.uniforms;r.envMap.value=t,t.isCubeTexture||r.texelSize.value.set(1/t.image.width,1/t.image.height),this._setEncoding(r.inputEncoding,t),this._setEncoding(r.outputEncoding,e.texture),St(e,0,0,3*ct,2*ct),n.setRenderTarget(e),n.render(s,_t)}_applyPMREM(t){const e=this._renderer,n=e.autoClear;e.autoClear=!1;for(let e=1;e<ut;e++){const n=Math.sqrt(gt[e]*gt[e]-gt[e-1]*gt[e-1]),i=wt[(e-1)%wt.length];this._blur(t,e-1,e,n,i)}e.autoClear=n}_blur(t,e,n,i,s){const r=this._pingPongRenderTarget;this._halfBlur(t,r,e,n,i,\\\\\\\"latitudinal\\\\\\\",s),this._halfBlur(r,t,n,n,i,\\\\\\\"longitudinal\\\\\\\",s)}_halfBlur(t,e,n,i,s,r,o){const a=this._renderer,l=this._blurMaterial;\\\\\\\"latitudinal\\\\\\\"!==r&&\\\\\\\"longitudinal\\\\\\\"!==r&&console.error(\\\\\\\"blur direction must be either latitudinal or longitudinal!\\\\\\\");const c=new B.a(mt[i],l),h=l.uniforms,u=ft[n]-1,d=isFinite(s)?Math.PI/(2*u):2*Math.PI/39,p=s/d,_=isFinite(s)?1+Math.floor(3*p):dt;_>dt&&console.warn(`sigmaRadians, ${s}, is too large and will clip, as it requested ${_} samples when the maximum is set to 20`);const m=[];let f=0;for(let t=0;t<dt;++t){const e=t/p,n=Math.exp(-e*e/2);m.push(n),0==t?f+=n:t<_&&(f+=2*n)}for(let t=0;t<m.length;t++)m[t]=m[t]/f;h.envMap.value=t.texture,h.samples.value=_,h.weights.value=m,h.latitudinal.value=\\\\\\\"latitudinal\\\\\\\"===r,o&&(h.poleAxis.value=o),h.dTheta.value=d,h.mipInt.value=8-n,this._setEncoding(h.inputEncoding,t.texture),this._setEncoding(h.outputEncoding,t.texture);const g=ft[i];St(e,3*Math.max(0,ct-2*g),(0===i?0:2*ct)+2*g*(i>4?i-8+4:0),3*g,2*g),a.setRenderTarget(e),a.render(c,_t)}}function At(t){return void 0!==t&&t.type===w.Zc&&(t.encoding===w.U||t.encoding===w.ld||t.encoding===w.J)}function Mt(){const t=[],e=[],n=[];let i=8;for(let s=0;s<ut;s++){const r=Math.pow(2,i);e.push(r);let o=1/r;s>4?o=ht[s-8+4-1]:0==s&&(o=0),n.push(o);const a=1/(r-1),l=-a/2,c=1+a/2,h=[l,l,c,l,c,c,l,l,c,c,l,c],u=6,d=6,p=3,_=2,m=1,f=new Float32Array(p*d*u),g=new Float32Array(_*d*u),v=new Float32Array(m*d*u);for(let t=0;t<u;t++){const e=t%3*2/3-1,n=t>2?0:-1,i=[e,n,0,e+2/3,n,0,e+2/3,n+1,0,e,n,0,e+2/3,n+1,0,e,n+1,0];f.set(i,p*d*t),g.set(h,_*d*t);const s=[t,t,t,t,t,t];v.set(s,m*d*t)}const y=new S.a;y.setAttribute(\\\\\\\"position\\\\\\\",new C.a(f,p)),y.setAttribute(\\\\\\\"uv\\\\\\\",new C.a(g,_)),y.setAttribute(\\\\\\\"faceIndex\\\\\\\",new C.a(v,m)),t.push(y),i>4&&i--}return{_lodPlanes:t,_sizeLods:e,_sigmas:n}}function Et(t){const e=new K(3*ct,3*ct,t);return e.texture.mapping=w.q,e.texture.name=\\\\\\\"PMREM.cubeUv\\\\\\\",e.scissorTest=!0,e}function St(t,e,n,i,s){t.viewport.set(e,n,i,s),t.scissor.set(e,n,i,s)}function Ct(){const t=new d.a(1,1);return new at({name:\\\\\\\"EquirectangularToCubeUV\\\\\\\",uniforms:{envMap:{value:null},texelSize:{value:t},inputEncoding:{value:pt[w.U]},outputEncoding:{value:pt[w.U]}},vertexShader:Lt(),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 vec2 texelSize;\\\\n\\\\n\\\\t\\\\t\\\\t${Ot()}\\\\n\\\\n\\\\t\\\\t\\\\t#include <common>\\\\n\\\\n\\\\t\\\\t\\\\tvoid main() {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tgl_FragColor = vec4( 0.0, 0.0, 0.0, 1.0 );\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tvec3 outputDirection = normalize( vOutputDirection );\\\\n\\\\t\\\\t\\\\t\\\\tvec2 uv = equirectUv( outputDirection );\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tvec2 f = fract( uv / texelSize - 0.5 );\\\\n\\\\t\\\\t\\\\t\\\\tuv -= f * texelSize;\\\\n\\\\t\\\\t\\\\t\\\\tvec3 tl = envMapTexelToLinear( texture2D ( envMap, uv ) ).rgb;\\\\n\\\\t\\\\t\\\\t\\\\tuv.x += texelSize.x;\\\\n\\\\t\\\\t\\\\t\\\\tvec3 tr = envMapTexelToLinear( texture2D ( envMap, uv ) ).rgb;\\\\n\\\\t\\\\t\\\\t\\\\tuv.y += texelSize.y;\\\\n\\\\t\\\\t\\\\t\\\\tvec3 br = envMapTexelToLinear( texture2D ( envMap, uv ) ).rgb;\\\\n\\\\t\\\\t\\\\t\\\\tuv.x -= texelSize.x;\\\\n\\\\t\\\\t\\\\t\\\\tvec3 bl = envMapTexelToLinear( texture2D ( envMap, uv ) ).rgb;\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tvec3 tm = mix( tl, tr, f.x );\\\\n\\\\t\\\\t\\\\t\\\\tvec3 bm = mix( bl, br, f.x );\\\\n\\\\t\\\\t\\\\t\\\\tgl_FragColor.rgb = mix( tm, bm, f.y );\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tgl_FragColor = linearToOutputTexel( gl_FragColor );\\\\n\\\\n\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t`,blending:w.ub,depthTest:!1,depthWrite:!1})}function Nt(){return new at({name:\\\\\\\"CubemapToCubeUV\\\\\\\",uniforms:{envMap:{value:null},inputEncoding:{value:pt[w.U]},outputEncoding:{value:pt[w.U]}},vertexShader:Lt(),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 samplerCube envMap;\\\\n\\\\n\\\\t\\\\t\\\\t${Ot()}\\\\n\\\\n\\\\t\\\\t\\\\tvoid main() {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tgl_FragColor = vec4( 0.0, 0.0, 0.0, 1.0 );\\\\n\\\\t\\\\t\\\\t\\\\tgl_FragColor.rgb = envMapTexelToLinear( textureCube( envMap, vec3( - vOutputDirection.x, vOutputDirection.yz ) ) ).rgb;\\\\n\\\\t\\\\t\\\\t\\\\tgl_FragColor = linearToOutputTexel( gl_FragColor );\\\\n\\\\n\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t`,blending:w.ub,depthTest:!1,depthWrite:!1})}function Lt(){return\\\\\\\"\\\\n\\\\n\\\\t\\\\tprecision mediump float;\\\\n\\\\t\\\\tprecision mediump int;\\\\n\\\\n\\\\t\\\\tattribute vec3 position;\\\\n\\\\t\\\\tattribute vec2 uv;\\\\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 Ot(){return\\\\\\\"\\\\n\\\\n\\\\t\\\\tuniform int inputEncoding;\\\\n\\\\t\\\\tuniform int outputEncoding;\\\\n\\\\n\\\\t\\\\t#include <encodings_pars_fragment>\\\\n\\\\n\\\\t\\\\tvec4 inputTexelToLinear( vec4 value ) {\\\\n\\\\n\\\\t\\\\t\\\\tif ( inputEncoding == 0 ) {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\treturn value;\\\\n\\\\n\\\\t\\\\t\\\\t} else if ( inputEncoding == 1 ) {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\treturn sRGBToLinear( value );\\\\n\\\\n\\\\t\\\\t\\\\t} else if ( inputEncoding == 2 ) {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\treturn RGBEToLinear( value );\\\\n\\\\n\\\\t\\\\t\\\\t} else if ( inputEncoding == 3 ) {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\treturn RGBMToLinear( value, 7.0 );\\\\n\\\\n\\\\t\\\\t\\\\t} else if ( inputEncoding == 4 ) {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\treturn RGBMToLinear( value, 16.0 );\\\\n\\\\n\\\\t\\\\t\\\\t} else if ( inputEncoding == 5 ) {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\treturn RGBDToLinear( value, 256.0 );\\\\n\\\\n\\\\t\\\\t\\\\t} else {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\treturn GammaToLinear( value, 2.2 );\\\\n\\\\n\\\\t\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\tvec4 linearToOutputTexel( vec4 value ) {\\\\n\\\\n\\\\t\\\\t\\\\tif ( outputEncoding == 0 ) {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\treturn value;\\\\n\\\\n\\\\t\\\\t\\\\t} else if ( outputEncoding == 1 ) {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\treturn LinearTosRGB( value );\\\\n\\\\n\\\\t\\\\t\\\\t} else if ( outputEncoding == 2 ) {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\treturn LinearToRGBE( value );\\\\n\\\\n\\\\t\\\\t\\\\t} else if ( outputEncoding == 3 ) {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\treturn LinearToRGBM( value, 7.0 );\\\\n\\\\n\\\\t\\\\t\\\\t} else if ( outputEncoding == 4 ) {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\treturn LinearToRGBM( value, 16.0 );\\\\n\\\\n\\\\t\\\\t\\\\t} else if ( outputEncoding == 5 ) {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\treturn LinearToRGBD( value, 256.0 );\\\\n\\\\n\\\\t\\\\t\\\\t} else {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\treturn LinearToGamma( value, 2.2 );\\\\n\\\\n\\\\t\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\tvec4 envMapTexelToLinear( vec4 color ) {\\\\n\\\\n\\\\t\\\\t\\\\treturn inputTexelToLinear( color );\\\\n\\\\n\\\\t\\\\t}\\\\n\\\\t\\\\\\\"}function Pt(t){let e=new WeakMap,n=null;function i(t){const n=t.target;n.removeEventListener(\\\\\\\"dispose\\\\\\\",i);const s=e.get(n);void 0!==s&&(e.delete(n),s.dispose())}return{get:function(s){if(s&&s.isTexture&&!1===s.isRenderTargetTexture){const r=s.mapping,o=r===w.D||r===w.E,a=r===w.o||r===w.p;if(o||a){if(e.has(s))return e.get(s).texture;{const r=s.image;if(o&&r&&r.height>0||a&&r&&function(t){let e=0;const n=6;for(let i=0;i<n;i++)void 0!==t[i]&&e++;return e===n}(r)){const r=t.getRenderTarget();null===n&&(n=new Tt(t));const a=o?n.fromEquirectangular(s):n.fromCubemap(s);return e.set(s,a),t.setRenderTarget(r),s.addEventListener(\\\\\\\"dispose\\\\\\\",i),a.texture}return null}}}return s},dispose:function(){e=new WeakMap,null!==n&&(n.dispose(),n=null)}}}function Rt(t){const e={};function n(n){if(void 0!==e[n])return e[n];let i;switch(n){case\\\\\\\"WEBGL_depth_texture\\\\\\\":i=t.getExtension(\\\\\\\"WEBGL_depth_texture\\\\\\\")||t.getExtension(\\\\\\\"MOZ_WEBGL_depth_texture\\\\\\\")||t.getExtension(\\\\\\\"WEBKIT_WEBGL_depth_texture\\\\\\\");break;case\\\\\\\"EXT_texture_filter_anisotropic\\\\\\\":i=t.getExtension(\\\\\\\"EXT_texture_filter_anisotropic\\\\\\\")||t.getExtension(\\\\\\\"MOZ_EXT_texture_filter_anisotropic\\\\\\\")||t.getExtension(\\\\\\\"WEBKIT_EXT_texture_filter_anisotropic\\\\\\\");break;case\\\\\\\"WEBGL_compressed_texture_s3tc\\\\\\\":i=t.getExtension(\\\\\\\"WEBGL_compressed_texture_s3tc\\\\\\\")||t.getExtension(\\\\\\\"MOZ_WEBGL_compressed_texture_s3tc\\\\\\\")||t.getExtension(\\\\\\\"WEBKIT_WEBGL_compressed_texture_s3tc\\\\\\\");break;case\\\\\\\"WEBGL_compressed_texture_pvrtc\\\\\\\":i=t.getExtension(\\\\\\\"WEBGL_compressed_texture_pvrtc\\\\\\\")||t.getExtension(\\\\\\\"WEBKIT_WEBGL_compressed_texture_pvrtc\\\\\\\");break;default:i=t.getExtension(n)}return e[n]=i,i}return{has:function(t){return null!==n(t)},init:function(t){t.isWebGL2?n(\\\\\\\"EXT_color_buffer_float\\\\\\\"):(n(\\\\\\\"WEBGL_depth_texture\\\\\\\"),n(\\\\\\\"OES_texture_float\\\\\\\"),n(\\\\\\\"OES_texture_half_float\\\\\\\"),n(\\\\\\\"OES_texture_half_float_linear\\\\\\\"),n(\\\\\\\"OES_standard_derivatives\\\\\\\"),n(\\\\\\\"OES_element_index_uint\\\\\\\"),n(\\\\\\\"OES_vertex_array_object\\\\\\\"),n(\\\\\\\"ANGLE_instanced_arrays\\\\\\\")),n(\\\\\\\"OES_texture_float_linear\\\\\\\"),n(\\\\\\\"EXT_color_buffer_half_float\\\\\\\")},get:function(t){const e=n(t);return null===e&&console.warn(\\\\\\\"THREE.WebGLRenderer: \\\\\\\"+t+\\\\\\\" extension not supported.\\\\\\\"),e}}}var It=n(20);function Ft(t,e,n,i){const s={},r=new WeakMap;function o(t){const a=t.target;null!==a.index&&e.remove(a.index);for(const t in a.attributes)e.remove(a.attributes[t]);a.removeEventListener(\\\\\\\"dispose\\\\\\\",o),delete s[a.id];const l=r.get(a);l&&(e.remove(l),r.delete(a)),i.releaseStatesOfGeometry(a),!0===a.isInstancedBufferGeometry&&delete a._maxInstanceCount,n.memory.geometries--}function a(t){const n=[],i=t.index,s=t.attributes.position;let o=0;if(null!==i){const t=i.array;o=i.version;for(let e=0,i=t.length;e<i;e+=3){const i=t[e+0],s=t[e+1],r=t[e+2];n.push(i,s,s,r,r,i)}}else{const t=s.array;o=s.version;for(let e=0,i=t.length/3-1;e<i;e+=3){const t=e+0,i=e+1,s=e+2;n.push(t,i,i,s,s,t)}}const a=new(Object(It.a)(n)>65535?C.i:C.h)(n,1);a.version=o;const l=r.get(t);l&&e.remove(l),r.set(t,a)}return{get:function(t,e){return!0===s[e.id]||(e.addEventListener(\\\\\\\"dispose\\\\\\\",o),s[e.id]=!0,n.memory.geometries++),e},update:function(n){const i=n.attributes;for(const n in i)e.update(i[n],t.ARRAY_BUFFER);const s=n.morphAttributes;for(const n in s){const i=s[n];for(let n=0,s=i.length;n<s;n++)e.update(i[n],t.ARRAY_BUFFER)}},getWireframeAttribute:function(t){const e=r.get(t);if(e){const n=t.index;null!==n&&e.version<n.version&&a(t)}else a(t);return r.get(t)}}}function Dt(t,e,n,i){const s=i.isWebGL2;let r,o,a;this.setMode=function(t){r=t},this.setIndex=function(t){o=t.type,a=t.bytesPerElement},this.render=function(e,i){t.drawElements(r,i,o,e*a),n.update(i,r,1)},this.renderInstances=function(i,l,c){if(0===c)return;let h,u;if(s)h=t,u=\\\\\\\"drawElementsInstanced\\\\\\\";else if(h=e.get(\\\\\\\"ANGLE_instanced_arrays\\\\\\\"),u=\\\\\\\"drawElementsInstancedANGLE\\\\\\\",null===h)return void console.error(\\\\\\\"THREE.WebGLIndexedBufferRenderer: using THREE.InstancedBufferGeometry but hardware does not support extension ANGLE_instanced_arrays.\\\\\\\");h[u](r,l,o,i*a,c),n.update(l,r,c)}}function Bt(t){const e={frame:0,calls:0,triangles:0,points:0,lines:0};return{memory:{geometries:0,textures:0},render:e,programs:null,autoReset:!0,reset:function(){e.frame++,e.calls=0,e.triangles=0,e.points=0,e.lines=0},update:function(n,i,s){switch(e.calls++,i){case t.TRIANGLES:e.triangles+=s*(n/3);break;case t.LINES:e.lines+=s*(n/2);break;case t.LINE_STRIP:e.lines+=s*(n-1);break;case t.LINE_LOOP:e.lines+=s*n;break;case t.POINTS:e.points+=s*n;break;default:console.error(\\\\\\\"THREE.WebGLInfo: Unknown draw mode:\\\\\\\",i)}}}}class zt extends Z.a{constructor(t=null,e=1,n=1,i=1){super(null),this.image={data:t,width:e,height:n,depth:i},this.magFilter=w.ob,this.minFilter=w.ob,this.wrapR=w.n,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1,this.needsUpdate=!0}}function kt(t,e){return t[0]-e[0]}function Ut(t,e){return Math.abs(e[1])-Math.abs(t[1])}function Gt(t,e){let n=1;const i=e.isInterleavedBufferAttribute?e.data.array:e.array;i instanceof Int8Array?n=127:i instanceof Int16Array?n=32767:i instanceof Int32Array?n=2147483647:console.error(\\\\\\\"THREE.WebGLMorphtargets: Unsupported morph attribute data type: \\\\\\\",i),t.divideScalar(n)}function Vt(t,e,n){const i={},s=new Float32Array(8),r=new WeakMap,o=new p.a,a=[];for(let t=0;t<8;t++)a[t]=[t,0];return{update:function(l,c,h,u){const p=l.morphTargetInfluences;if(!0===e.isWebGL2){const i=c.morphAttributes.position.length;let s=r.get(c);if(void 0===s||s.count!==i){void 0!==s&&s.texture.dispose();const t=void 0!==c.morphAttributes.normal,n=c.morphAttributes.position,a=c.morphAttributes.normal||[],l=!0===t?2:1;let h=c.attributes.position.count*l,u=1;h>e.maxTextureSize&&(u=Math.ceil(h/e.maxTextureSize),h=e.maxTextureSize);const p=new Float32Array(h*u*4*i),_=new zt(p,h,u,i);_.format=w.Ib,_.type=w.G;const m=4*l;for(let e=0;e<i;e++){const i=n[e],s=a[e],r=h*u*4*e;for(let e=0;e<i.count;e++){o.fromBufferAttribute(i,e),!0===i.normalized&&Gt(o,i);const n=e*m;p[r+n+0]=o.x,p[r+n+1]=o.y,p[r+n+2]=o.z,p[r+n+3]=0,!0===t&&(o.fromBufferAttribute(s,e),!0===s.normalized&&Gt(o,s),p[r+n+4]=o.x,p[r+n+5]=o.y,p[r+n+6]=o.z,p[r+n+7]=0)}}s={count:i,texture:_,size:new d.a(h,u)},r.set(c,s)}let a=0;for(let t=0;t<p.length;t++)a+=p[t];const l=c.morphTargetsRelative?1:1-a;u.getUniforms().setValue(t,\\\\\\\"morphTargetBaseInfluence\\\\\\\",l),u.getUniforms().setValue(t,\\\\\\\"morphTargetInfluences\\\\\\\",p),u.getUniforms().setValue(t,\\\\\\\"morphTargetsTexture\\\\\\\",s.texture,n),u.getUniforms().setValue(t,\\\\\\\"morphTargetsTextureSize\\\\\\\",s.size)}else{const e=void 0===p?0:p.length;let n=i[c.id];if(void 0===n||n.length!==e){n=[];for(let t=0;t<e;t++)n[t]=[t,0];i[c.id]=n}for(let t=0;t<e;t++){const e=n[t];e[0]=t,e[1]=p[t]}n.sort(Ut);for(let t=0;t<8;t++)t<e&&n[t][1]?(a[t][0]=n[t][0],a[t][1]=n[t][1]):(a[t][0]=Number.MAX_SAFE_INTEGER,a[t][1]=0);a.sort(kt);const r=c.morphAttributes.position,o=c.morphAttributes.normal;let l=0;for(let t=0;t<8;t++){const e=a[t],n=e[0],i=e[1];n!==Number.MAX_SAFE_INTEGER&&i?(r&&c.getAttribute(\\\\\\\"morphTarget\\\\\\\"+t)!==r[n]&&c.setAttribute(\\\\\\\"morphTarget\\\\\\\"+t,r[n]),o&&c.getAttribute(\\\\\\\"morphNormal\\\\\\\"+t)!==o[n]&&c.setAttribute(\\\\\\\"morphNormal\\\\\\\"+t,o[n]),s[t]=i,l+=i):(r&&!0===c.hasAttribute(\\\\\\\"morphTarget\\\\\\\"+t)&&c.deleteAttribute(\\\\\\\"morphTarget\\\\\\\"+t),o&&!0===c.hasAttribute(\\\\\\\"morphNormal\\\\\\\"+t)&&c.deleteAttribute(\\\\\\\"morphNormal\\\\\\\"+t),s[t]=0)}const h=c.morphTargetsRelative?1:1-l;u.getUniforms().setValue(t,\\\\\\\"morphTargetBaseInfluence\\\\\\\",h),u.getUniforms().setValue(t,\\\\\\\"morphTargetInfluences\\\\\\\",s)}}}}zt.prototype.isDataTexture2DArray=!0;class Ht extends K{constructor(t,e,n){super(t,e,n),this.samples=4}copy(t){return super.copy.call(this,t),this.samples=t.samples,this}}function jt(t,e,n,i){let s=new WeakMap;function r(t){const e=t.target;e.removeEventListener(\\\\\\\"dispose\\\\\\\",r),n.remove(e.instanceMatrix),null!==e.instanceColor&&n.remove(e.instanceColor)}return{update:function(o){const a=i.render.frame,l=o.geometry,c=e.get(o,l);return s.get(c)!==a&&(e.update(c),s.set(c,a)),o.isInstancedMesh&&(!1===o.hasEventListener(\\\\\\\"dispose\\\\\\\",r)&&o.addEventListener(\\\\\\\"dispose\\\\\\\",r),n.update(o.instanceMatrix,t.ARRAY_BUFFER),null!==o.instanceColor&&n.update(o.instanceColor,t.ARRAY_BUFFER)),c},dispose:function(){s=new WeakMap}}}Ht.prototype.isWebGLMultisampleRenderTarget=!0;class Wt extends Z.a{constructor(t=null,e=1,n=1,i=1){super(null),this.image={data:t,width:e,height:n,depth:i},this.magFilter=w.ob,this.minFilter=w.ob,this.wrapR=w.n,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1,this.needsUpdate=!0}}Wt.prototype.isDataTexture3D=!0;const qt=new Z.a,Xt=new zt,Yt=new Wt,$t=new it,Jt=[],Zt=[],Kt=new Float32Array(16),Qt=new Float32Array(9),te=new Float32Array(4);function ee(t,e,n){const i=t[0];if(i<=0||i>0)return t;const s=e*n;let r=Jt[s];if(void 0===r&&(r=new Float32Array(s),Jt[s]=r),0!==e){i.toArray(r,0);for(let i=1,s=0;i!==e;++i)s+=n,t[i].toArray(r,s)}return r}function ne(t,e){if(t.length!==e.length)return!1;for(let n=0,i=t.length;n<i;n++)if(t[n]!==e[n])return!1;return!0}function ie(t,e){for(let n=0,i=e.length;n<i;n++)t[n]=e[n]}function se(t,e){let n=Zt[e];void 0===n&&(n=new Int32Array(e),Zt[e]=n);for(let i=0;i!==e;++i)n[i]=t.allocateTextureUnit();return n}function re(t,e){const n=this.cache;n[0]!==e&&(t.uniform1f(this.addr,e),n[0]=e)}function oe(t,e){const n=this.cache;if(void 0!==e.x)n[0]===e.x&&n[1]===e.y||(t.uniform2f(this.addr,e.x,e.y),n[0]=e.x,n[1]=e.y);else{if(ne(n,e))return;t.uniform2fv(this.addr,e),ie(n,e)}}function ae(t,e){const n=this.cache;if(void 0!==e.x)n[0]===e.x&&n[1]===e.y&&n[2]===e.z||(t.uniform3f(this.addr,e.x,e.y,e.z),n[0]=e.x,n[1]=e.y,n[2]=e.z);else if(void 0!==e.r)n[0]===e.r&&n[1]===e.g&&n[2]===e.b||(t.uniform3f(this.addr,e.r,e.g,e.b),n[0]=e.r,n[1]=e.g,n[2]=e.b);else{if(ne(n,e))return;t.uniform3fv(this.addr,e),ie(n,e)}}function le(t,e){const n=this.cache;if(void 0!==e.x)n[0]===e.x&&n[1]===e.y&&n[2]===e.z&&n[3]===e.w||(t.uniform4f(this.addr,e.x,e.y,e.z,e.w),n[0]=e.x,n[1]=e.y,n[2]=e.z,n[3]=e.w);else{if(ne(n,e))return;t.uniform4fv(this.addr,e),ie(n,e)}}function ce(t,e){const n=this.cache,i=e.elements;if(void 0===i){if(ne(n,e))return;t.uniformMatrix2fv(this.addr,!1,e),ie(n,e)}else{if(ne(n,i))return;te.set(i),t.uniformMatrix2fv(this.addr,!1,te),ie(n,i)}}function he(t,e){const n=this.cache,i=e.elements;if(void 0===i){if(ne(n,e))return;t.uniformMatrix3fv(this.addr,!1,e),ie(n,e)}else{if(ne(n,i))return;Qt.set(i),t.uniformMatrix3fv(this.addr,!1,Qt),ie(n,i)}}function ue(t,e){const n=this.cache,i=e.elements;if(void 0===i){if(ne(n,e))return;t.uniformMatrix4fv(this.addr,!1,e),ie(n,e)}else{if(ne(n,i))return;Kt.set(i),t.uniformMatrix4fv(this.addr,!1,Kt),ie(n,i)}}function de(t,e){const n=this.cache;n[0]!==e&&(t.uniform1i(this.addr,e),n[0]=e)}function pe(t,e){const n=this.cache;ne(n,e)||(t.uniform2iv(this.addr,e),ie(n,e))}function _e(t,e){const n=this.cache;ne(n,e)||(t.uniform3iv(this.addr,e),ie(n,e))}function me(t,e){const n=this.cache;ne(n,e)||(t.uniform4iv(this.addr,e),ie(n,e))}function fe(t,e){const n=this.cache;n[0]!==e&&(t.uniform1ui(this.addr,e),n[0]=e)}function ge(t,e){const n=this.cache;ne(n,e)||(t.uniform2uiv(this.addr,e),ie(n,e))}function ve(t,e){const n=this.cache;ne(n,e)||(t.uniform3uiv(this.addr,e),ie(n,e))}function ye(t,e){const n=this.cache;ne(n,e)||(t.uniform4uiv(this.addr,e),ie(n,e))}function xe(t,e,n){const i=this.cache,s=n.allocateTextureUnit();i[0]!==s&&(t.uniform1i(this.addr,s),i[0]=s),n.safeSetTexture2D(e||qt,s)}function be(t,e,n){const i=this.cache,s=n.allocateTextureUnit();i[0]!==s&&(t.uniform1i(this.addr,s),i[0]=s),n.setTexture3D(e||Yt,s)}function we(t,e,n){const i=this.cache,s=n.allocateTextureUnit();i[0]!==s&&(t.uniform1i(this.addr,s),i[0]=s),n.safeSetTextureCube(e||$t,s)}function Te(t,e,n){const i=this.cache,s=n.allocateTextureUnit();i[0]!==s&&(t.uniform1i(this.addr,s),i[0]=s),n.setTexture2DArray(e||Xt,s)}function Ae(t,e){t.uniform1fv(this.addr,e)}function Me(t,e){const n=ee(e,this.size,2);t.uniform2fv(this.addr,n)}function Ee(t,e){const n=ee(e,this.size,3);t.uniform3fv(this.addr,n)}function Se(t,e){const n=ee(e,this.size,4);t.uniform4fv(this.addr,n)}function Ce(t,e){const n=ee(e,this.size,4);t.uniformMatrix2fv(this.addr,!1,n)}function Ne(t,e){const n=ee(e,this.size,9);t.uniformMatrix3fv(this.addr,!1,n)}function Le(t,e){const n=ee(e,this.size,16);t.uniformMatrix4fv(this.addr,!1,n)}function Oe(t,e){t.uniform1iv(this.addr,e)}function Pe(t,e){t.uniform2iv(this.addr,e)}function Re(t,e){t.uniform3iv(this.addr,e)}function Ie(t,e){t.uniform4iv(this.addr,e)}function Fe(t,e){t.uniform1uiv(this.addr,e)}function De(t,e){t.uniform2uiv(this.addr,e)}function Be(t,e){t.uniform3uiv(this.addr,e)}function ze(t,e){t.uniform4uiv(this.addr,e)}function ke(t,e,n){const i=e.length,s=se(n,i);t.uniform1iv(this.addr,s);for(let t=0;t!==i;++t)n.safeSetTexture2D(e[t]||qt,s[t])}function Ue(t,e,n){const i=e.length,s=se(n,i);t.uniform1iv(this.addr,s);for(let t=0;t!==i;++t)n.safeSetTextureCube(e[t]||$t,s[t])}function Ge(t,e,n){this.id=t,this.addr=n,this.cache=[],this.setValue=function(t){switch(t){case 5126:return re;case 35664:return oe;case 35665:return ae;case 35666:return le;case 35674:return ce;case 35675:return he;case 35676:return ue;case 5124:case 35670:return de;case 35667:case 35671:return pe;case 35668:case 35672:return _e;case 35669:case 35673:return me;case 5125:return fe;case 36294:return ge;case 36295:return ve;case 36296:return ye;case 35678:case 36198:case 36298:case 36306:case 35682:return xe;case 35679:case 36299:case 36307:return be;case 35680:case 36300:case 36308:case 36293:return we;case 36289:case 36303:case 36311:case 36292:return Te}}(e.type)}function Ve(t,e,n){this.id=t,this.addr=n,this.cache=[],this.size=e.size,this.setValue=function(t){switch(t){case 5126:return Ae;case 35664:return Me;case 35665:return Ee;case 35666:return Se;case 35674:return Ce;case 35675:return Ne;case 35676:return Le;case 5124:case 35670:return Oe;case 35667:case 35671:return Pe;case 35668:case 35672:return Re;case 35669:case 35673:return Ie;case 5125:return Fe;case 36294:return De;case 36295:return Be;case 36296:return ze;case 35678:case 36198:case 36298:case 36306:case 35682:return ke;case 35680:case 36300:case 36308:case 36293:return Ue}}(e.type)}function He(t){this.id=t,this.seq=[],this.map={}}Ve.prototype.updateCache=function(t){const e=this.cache;t instanceof Float32Array&&e.length!==t.length&&(this.cache=new Float32Array(t.length)),ie(e,t)},He.prototype.setValue=function(t,e,n){const i=this.seq;for(let s=0,r=i.length;s!==r;++s){const r=i[s];r.setValue(t,e[r.id],n)}};const je=/(\\\\w+)(\\\\])?(\\\\[|\\\\.)?/g;function We(t,e){t.seq.push(e),t.map[e.id]=e}function qe(t,e,n){const i=t.name,s=i.length;for(je.lastIndex=0;;){const r=je.exec(i),o=je.lastIndex;let a=r[1];const l=\\\\\\\"]\\\\\\\"===r[2],c=r[3];if(l&&(a|=0),void 0===c||\\\\\\\"[\\\\\\\"===c&&o+2===s){We(n,void 0===c?new Ge(a,t,e):new Ve(a,t,e));break}{let t=n.map[a];void 0===t&&(t=new He(a),We(n,t)),n=t}}}function Xe(t,e){this.seq=[],this.map={};const n=t.getProgramParameter(e,t.ACTIVE_UNIFORMS);for(let i=0;i<n;++i){const n=t.getActiveUniform(e,i);qe(n,t.getUniformLocation(e,n.name),this)}}function Ye(t,e,n){const i=t.createShader(e);return t.shaderSource(i,n),t.compileShader(i),i}Xe.prototype.setValue=function(t,e,n,i){const s=this.map[e];void 0!==s&&s.setValue(t,n,i)},Xe.prototype.setOptional=function(t,e,n){const i=e[n];void 0!==i&&this.setValue(t,n,i)},Xe.upload=function(t,e,n,i){for(let s=0,r=e.length;s!==r;++s){const r=e[s],o=n[r.id];!1!==o.needsUpdate&&r.setValue(t,o.value,i)}},Xe.seqWithValue=function(t,e){const n=[];for(let i=0,s=t.length;i!==s;++i){const s=t[i];s.id in e&&n.push(s)}return n};let $e=0;function Je(t){switch(t){case w.U:return[\\\\\\\"Linear\\\\\\\",\\\\\\\"( value )\\\\\\\"];case w.ld:return[\\\\\\\"sRGB\\\\\\\",\\\\\\\"( value )\\\\\\\"];case w.gc:return[\\\\\\\"RGBE\\\\\\\",\\\\\\\"( value )\\\\\\\"];case w.lc:return[\\\\\\\"RGBM\\\\\\\",\\\\\\\"( value, 7.0 )\\\\\\\"];case w.kc:return[\\\\\\\"RGBM\\\\\\\",\\\\\\\"( value, 16.0 )\\\\\\\"];case w.fc:return[\\\\\\\"RGBD\\\\\\\",\\\\\\\"( value, 256.0 )\\\\\\\"];case w.J:return[\\\\\\\"Gamma\\\\\\\",\\\\\\\"( value, float( GAMMA_FACTOR ) )\\\\\\\"];case w.bb:return[\\\\\\\"LogLuv\\\\\\\",\\\\\\\"( value )\\\\\\\"];default:return console.warn(\\\\\\\"THREE.WebGLProgram: Unsupported encoding:\\\\\\\",t),[\\\\\\\"Linear\\\\\\\",\\\\\\\"( value )\\\\\\\"]}}function Ze(t,e,n){const i=t.getShaderParameter(e,t.COMPILE_STATUS),s=t.getShaderInfoLog(e).trim();return i&&\\\\\\\"\\\\\\\"===s?\\\\\\\"\\\\\\\":n.toUpperCase()+\\\\\\\"\\\\n\\\\n\\\\\\\"+s+\\\\\\\"\\\\n\\\\n\\\\\\\"+function(t){const e=t.split(\\\\\\\"\\\\n\\\\\\\");for(let t=0;t<e.length;t++)e[t]=t+1+\\\\\\\": \\\\\\\"+e[t];return e.join(\\\\\\\"\\\\n\\\\\\\")}(t.getShaderSource(e))}function Ke(t,e){const n=Je(e);return\\\\\\\"vec4 \\\\\\\"+t+\\\\\\\"( vec4 value ) { return \\\\\\\"+n[0]+\\\\\\\"ToLinear\\\\\\\"+n[1]+\\\\\\\"; }\\\\\\\"}function Qe(t,e){const n=Je(e);return\\\\\\\"vec4 \\\\\\\"+t+\\\\\\\"( vec4 value ) { return LinearTo\\\\\\\"+n[0]+n[1]+\\\\\\\"; }\\\\\\\"}function tn(t,e){let n;switch(e){case w.ab:n=\\\\\\\"Linear\\\\\\\";break;case w.vc:n=\\\\\\\"Reinhard\\\\\\\";break;case w.m:n=\\\\\\\"OptimizedCineon\\\\\\\";break;case w.a:n=\\\\\\\"ACESFilmic\\\\\\\";break;case w.w:n=\\\\\\\"Custom\\\\\\\";break;default:console.warn(\\\\\\\"THREE.WebGLProgram: Unsupported toneMapping:\\\\\\\",e),n=\\\\\\\"Linear\\\\\\\"}return\\\\\\\"vec3 \\\\\\\"+t+\\\\\\\"( vec3 color ) { return \\\\\\\"+n+\\\\\\\"ToneMapping( color ); }\\\\\\\"}function en(t){return\\\\\\\"\\\\\\\"!==t}function nn(t,e){return t.replace(/NUM_DIR_LIGHTS/g,e.numDirLights).replace(/NUM_SPOT_LIGHTS/g,e.numSpotLights).replace(/NUM_RECT_AREA_LIGHTS/g,e.numRectAreaLights).replace(/NUM_POINT_LIGHTS/g,e.numPointLights).replace(/NUM_HEMI_LIGHTS/g,e.numHemiLights).replace(/NUM_DIR_LIGHT_SHADOWS/g,e.numDirLightShadows).replace(/NUM_SPOT_LIGHT_SHADOWS/g,e.numSpotLightShadows).replace(/NUM_POINT_LIGHT_SHADOWS/g,e.numPointLightShadows)}function sn(t,e){return t.replace(/NUM_CLIPPING_PLANES/g,e.numClippingPlanes).replace(/UNION_CLIPPING_PLANES/g,e.numClippingPlanes-e.numClipIntersection)}const rn=/^[ \\\\t]*#include +<([\\\\w\\\\d./]+)>/gm;function on(t){return t.replace(rn,an)}function an(t,e){const n=U[e];if(void 0===n)throw new Error(\\\\\\\"Can not resolve #include <\\\\\\\"+e+\\\\\\\">\\\\\\\");return on(n)}const ln=/#pragma unroll_loop[\\\\s]+?for \\\\( int i \\\\= (\\\\d+)\\\\; i < (\\\\d+)\\\\; i \\\\+\\\\+ \\\\) \\\\{([\\\\s\\\\S]+?)(?=\\\\})\\\\}/g,cn=/#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 hn(t){return t.replace(cn,dn).replace(ln,un)}function un(t,e,n,i){return console.warn(\\\\\\\"WebGLProgram: #pragma unroll_loop shader syntax is deprecated. Please use #pragma unroll_loop_start syntax instead.\\\\\\\"),dn(t,e,n,i)}function dn(t,e,n,i){let s=\\\\\\\"\\\\\\\";for(let t=parseInt(e);t<parseInt(n);t++)s+=i.replace(/\\\\[\\\\s*i\\\\s*\\\\]/g,\\\\\\\"[ \\\\\\\"+t+\\\\\\\" ]\\\\\\\").replace(/UNROLLED_LOOP_INDEX/g,t);return s}function pn(t){let e=\\\\\\\"precision \\\\\\\"+t.precision+\\\\\\\" float;\\\\nprecision \\\\\\\"+t.precision+\\\\\\\" int;\\\\\\\";return\\\\\\\"highp\\\\\\\"===t.precision?e+=\\\\\\\"\\\\n#define HIGH_PRECISION\\\\\\\":\\\\\\\"mediump\\\\\\\"===t.precision?e+=\\\\\\\"\\\\n#define MEDIUM_PRECISION\\\\\\\":\\\\\\\"lowp\\\\\\\"===t.precision&&(e+=\\\\\\\"\\\\n#define LOW_PRECISION\\\\\\\"),e}function _n(t,e,n,i){const s=t.getContext(),r=n.defines;let o=n.vertexShader,a=n.fragmentShader;const l=function(t){let e=\\\\\\\"SHADOWMAP_TYPE_BASIC\\\\\\\";return t.shadowMapType===w.Fb?e=\\\\\\\"SHADOWMAP_TYPE_PCF\\\\\\\":t.shadowMapType===w.Gb?e=\\\\\\\"SHADOWMAP_TYPE_PCF_SOFT\\\\\\\":t.shadowMapType===w.gd&&(e=\\\\\\\"SHADOWMAP_TYPE_VSM\\\\\\\"),e}(n),c=function(t){let e=\\\\\\\"ENVMAP_TYPE_CUBE\\\\\\\";if(t.envMap)switch(t.envMapMode){case w.o:case w.p:e=\\\\\\\"ENVMAP_TYPE_CUBE\\\\\\\";break;case w.q:case w.r:e=\\\\\\\"ENVMAP_TYPE_CUBE_UV\\\\\\\"}return e}(n),h=function(t){let e=\\\\\\\"ENVMAP_MODE_REFLECTION\\\\\\\";if(t.envMap)switch(t.envMapMode){case w.p:case w.r:e=\\\\\\\"ENVMAP_MODE_REFRACTION\\\\\\\"}return e}(n),u=function(t){let e=\\\\\\\"ENVMAP_BLENDING_NONE\\\\\\\";if(t.envMap)switch(t.combine){case w.nb:e=\\\\\\\"ENVMAP_BLENDING_MULTIPLY\\\\\\\";break;case w.lb:e=\\\\\\\"ENVMAP_BLENDING_MIX\\\\\\\";break;case w.c:e=\\\\\\\"ENVMAP_BLENDING_ADD\\\\\\\"}return e}(n),d=t.gammaFactor>0?t.gammaFactor:1,p=n.isWebGL2?\\\\\\\"\\\\\\\":function(t){return[t.extensionDerivatives||t.envMapCubeUV||t.bumpMap||t.tangentSpaceNormalMap||t.clearcoatNormalMap||t.flatShading||\\\\\\\"physical\\\\\\\"===t.shaderID?\\\\\\\"#extension GL_OES_standard_derivatives : enable\\\\\\\":\\\\\\\"\\\\\\\",(t.extensionFragDepth||t.logarithmicDepthBuffer)&&t.rendererExtensionFragDepth?\\\\\\\"#extension GL_EXT_frag_depth : enable\\\\\\\":\\\\\\\"\\\\\\\",t.extensionDrawBuffers&&t.rendererExtensionDrawBuffers?\\\\\\\"#extension GL_EXT_draw_buffers : require\\\\\\\":\\\\\\\"\\\\\\\",(t.extensionShaderTextureLOD||t.envMap||t.transmission)&&t.rendererExtensionShaderTextureLod?\\\\\\\"#extension GL_EXT_shader_texture_lod : enable\\\\\\\":\\\\\\\"\\\\\\\"].filter(en).join(\\\\\\\"\\\\n\\\\\\\")}(n),_=function(t){const e=[];for(const n in t){const i=t[n];!1!==i&&e.push(\\\\\\\"#define \\\\\\\"+n+\\\\\\\" \\\\\\\"+i)}return e.join(\\\\\\\"\\\\n\\\\\\\")}(r),m=s.createProgram();let f,g,v=n.glslVersion?\\\\\\\"#version \\\\\\\"+n.glslVersion+\\\\\\\"\\\\n\\\\\\\":\\\\\\\"\\\\\\\";n.isRawShaderMaterial?(f=[_].filter(en).join(\\\\\\\"\\\\n\\\\\\\"),f.length>0&&(f+=\\\\\\\"\\\\n\\\\\\\"),g=[p,_].filter(en).join(\\\\\\\"\\\\n\\\\\\\"),g.length>0&&(g+=\\\\\\\"\\\\n\\\\\\\")):(f=[pn(n),\\\\\\\"#define SHADER_NAME \\\\\\\"+n.shaderName,_,n.instancing?\\\\\\\"#define USE_INSTANCING\\\\\\\":\\\\\\\"\\\\\\\",n.instancingColor?\\\\\\\"#define USE_INSTANCING_COLOR\\\\\\\":\\\\\\\"\\\\\\\",n.supportsVertexTextures?\\\\\\\"#define VERTEX_TEXTURES\\\\\\\":\\\\\\\"\\\\\\\",\\\\\\\"#define GAMMA_FACTOR \\\\\\\"+d,\\\\\\\"#define MAX_BONES \\\\\\\"+n.maxBones,n.useFog&&n.fog?\\\\\\\"#define USE_FOG\\\\\\\":\\\\\\\"\\\\\\\",n.useFog&&n.fogExp2?\\\\\\\"#define FOG_EXP2\\\\\\\":\\\\\\\"\\\\\\\",n.map?\\\\\\\"#define USE_MAP\\\\\\\":\\\\\\\"\\\\\\\",n.envMap?\\\\\\\"#define USE_ENVMAP\\\\\\\":\\\\\\\"\\\\\\\",n.envMap?\\\\\\\"#define \\\\\\\"+h:\\\\\\\"\\\\\\\",n.lightMap?\\\\\\\"#define USE_LIGHTMAP\\\\\\\":\\\\\\\"\\\\\\\",n.aoMap?\\\\\\\"#define USE_AOMAP\\\\\\\":\\\\\\\"\\\\\\\",n.emissiveMap?\\\\\\\"#define USE_EMISSIVEMAP\\\\\\\":\\\\\\\"\\\\\\\",n.bumpMap?\\\\\\\"#define USE_BUMPMAP\\\\\\\":\\\\\\\"\\\\\\\",n.normalMap?\\\\\\\"#define USE_NORMALMAP\\\\\\\":\\\\\\\"\\\\\\\",n.normalMap&&n.objectSpaceNormalMap?\\\\\\\"#define OBJECTSPACE_NORMALMAP\\\\\\\":\\\\\\\"\\\\\\\",n.normalMap&&n.tangentSpaceNormalMap?\\\\\\\"#define TANGENTSPACE_NORMALMAP\\\\\\\":\\\\\\\"\\\\\\\",n.clearcoatMap?\\\\\\\"#define USE_CLEARCOATMAP\\\\\\\":\\\\\\\"\\\\\\\",n.clearcoatRoughnessMap?\\\\\\\"#define USE_CLEARCOAT_ROUGHNESSMAP\\\\\\\":\\\\\\\"\\\\\\\",n.clearcoatNormalMap?\\\\\\\"#define USE_CLEARCOAT_NORMALMAP\\\\\\\":\\\\\\\"\\\\\\\",n.displacementMap&&n.supportsVertexTextures?\\\\\\\"#define USE_DISPLACEMENTMAP\\\\\\\":\\\\\\\"\\\\\\\",n.specularMap?\\\\\\\"#define USE_SPECULARMAP\\\\\\\":\\\\\\\"\\\\\\\",n.specularIntensityMap?\\\\\\\"#define USE_SPECULARINTENSITYMAP\\\\\\\":\\\\\\\"\\\\\\\",n.specularTintMap?\\\\\\\"#define USE_SPECULARTINTMAP\\\\\\\":\\\\\\\"\\\\\\\",n.roughnessMap?\\\\\\\"#define USE_ROUGHNESSMAP\\\\\\\":\\\\\\\"\\\\\\\",n.metalnessMap?\\\\\\\"#define USE_METALNESSMAP\\\\\\\":\\\\\\\"\\\\\\\",n.alphaMap?\\\\\\\"#define USE_ALPHAMAP\\\\\\\":\\\\\\\"\\\\\\\",n.transmission?\\\\\\\"#define USE_TRANSMISSION\\\\\\\":\\\\\\\"\\\\\\\",n.transmissionMap?\\\\\\\"#define USE_TRANSMISSIONMAP\\\\\\\":\\\\\\\"\\\\\\\",n.thicknessMap?\\\\\\\"#define USE_THICKNESSMAP\\\\\\\":\\\\\\\"\\\\\\\",n.vertexTangents?\\\\\\\"#define USE_TANGENT\\\\\\\":\\\\\\\"\\\\\\\",n.vertexColors?\\\\\\\"#define USE_COLOR\\\\\\\":\\\\\\\"\\\\\\\",n.vertexAlphas?\\\\\\\"#define USE_COLOR_ALPHA\\\\\\\":\\\\\\\"\\\\\\\",n.vertexUvs?\\\\\\\"#define USE_UV\\\\\\\":\\\\\\\"\\\\\\\",n.uvsVertexOnly?\\\\\\\"#define UVS_VERTEX_ONLY\\\\\\\":\\\\\\\"\\\\\\\",n.flatShading?\\\\\\\"#define FLAT_SHADED\\\\\\\":\\\\\\\"\\\\\\\",n.skinning?\\\\\\\"#define USE_SKINNING\\\\\\\":\\\\\\\"\\\\\\\",n.useVertexTexture?\\\\\\\"#define BONE_TEXTURE\\\\\\\":\\\\\\\"\\\\\\\",n.morphTargets?\\\\\\\"#define USE_MORPHTARGETS\\\\\\\":\\\\\\\"\\\\\\\",n.morphNormals&&!1===n.flatShading?\\\\\\\"#define USE_MORPHNORMALS\\\\\\\":\\\\\\\"\\\\\\\",n.morphTargets&&n.isWebGL2?\\\\\\\"#define MORPHTARGETS_TEXTURE\\\\\\\":\\\\\\\"\\\\\\\",n.morphTargets&&n.isWebGL2?\\\\\\\"#define MORPHTARGETS_COUNT \\\\\\\"+n.morphTargetsCount:\\\\\\\"\\\\\\\",n.doubleSided?\\\\\\\"#define DOUBLE_SIDED\\\\\\\":\\\\\\\"\\\\\\\",n.flipSided?\\\\\\\"#define FLIP_SIDED\\\\\\\":\\\\\\\"\\\\\\\",n.shadowMapEnabled?\\\\\\\"#define USE_SHADOWMAP\\\\\\\":\\\\\\\"\\\\\\\",n.shadowMapEnabled?\\\\\\\"#define \\\\\\\"+l:\\\\\\\"\\\\\\\",n.sizeAttenuation?\\\\\\\"#define USE_SIZEATTENUATION\\\\\\\":\\\\\\\"\\\\\\\",n.logarithmicDepthBuffer?\\\\\\\"#define USE_LOGDEPTHBUF\\\\\\\":\\\\\\\"\\\\\\\",n.logarithmicDepthBuffer&&n.rendererExtensionFragDepth?\\\\\\\"#define USE_LOGDEPTHBUF_EXT\\\\\\\":\\\\\\\"\\\\\\\",\\\\\\\"uniform mat4 modelMatrix;\\\\\\\",\\\\\\\"uniform mat4 modelViewMatrix;\\\\\\\",\\\\\\\"uniform mat4 projectionMatrix;\\\\\\\",\\\\\\\"uniform mat4 viewMatrix;\\\\\\\",\\\\\\\"uniform mat3 normalMatrix;\\\\\\\",\\\\\\\"uniform vec3 cameraPosition;\\\\\\\",\\\\\\\"uniform bool isOrthographic;\\\\\\\",\\\\\\\"#ifdef USE_INSTANCING\\\\\\\",\\\\\\\"\\\\tattribute mat4 instanceMatrix;\\\\\\\",\\\\\\\"#endif\\\\\\\",\\\\\\\"#ifdef USE_INSTANCING_COLOR\\\\\\\",\\\\\\\"\\\\tattribute vec3 instanceColor;\\\\\\\",\\\\\\\"#endif\\\\\\\",\\\\\\\"attribute vec3 position;\\\\\\\",\\\\\\\"attribute vec3 normal;\\\\\\\",\\\\\\\"attribute vec2 uv;\\\\\\\",\\\\\\\"#ifdef USE_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(en).join(\\\\\\\"\\\\n\\\\\\\"),g=[p,pn(n),\\\\\\\"#define SHADER_NAME \\\\\\\"+n.shaderName,_,\\\\\\\"#define GAMMA_FACTOR \\\\\\\"+d,n.useFog&&n.fog?\\\\\\\"#define USE_FOG\\\\\\\":\\\\\\\"\\\\\\\",n.useFog&&n.fogExp2?\\\\\\\"#define FOG_EXP2\\\\\\\":\\\\\\\"\\\\\\\",n.map?\\\\\\\"#define USE_MAP\\\\\\\":\\\\\\\"\\\\\\\",n.matcap?\\\\\\\"#define USE_MATCAP\\\\\\\":\\\\\\\"\\\\\\\",n.envMap?\\\\\\\"#define USE_ENVMAP\\\\\\\":\\\\\\\"\\\\\\\",n.envMap?\\\\\\\"#define \\\\\\\"+c:\\\\\\\"\\\\\\\",n.envMap?\\\\\\\"#define \\\\\\\"+h:\\\\\\\"\\\\\\\",n.envMap?\\\\\\\"#define \\\\\\\"+u:\\\\\\\"\\\\\\\",n.lightMap?\\\\\\\"#define USE_LIGHTMAP\\\\\\\":\\\\\\\"\\\\\\\",n.aoMap?\\\\\\\"#define USE_AOMAP\\\\\\\":\\\\\\\"\\\\\\\",n.emissiveMap?\\\\\\\"#define USE_EMISSIVEMAP\\\\\\\":\\\\\\\"\\\\\\\",n.bumpMap?\\\\\\\"#define USE_BUMPMAP\\\\\\\":\\\\\\\"\\\\\\\",n.normalMap?\\\\\\\"#define USE_NORMALMAP\\\\\\\":\\\\\\\"\\\\\\\",n.normalMap&&n.objectSpaceNormalMap?\\\\\\\"#define OBJECTSPACE_NORMALMAP\\\\\\\":\\\\\\\"\\\\\\\",n.normalMap&&n.tangentSpaceNormalMap?\\\\\\\"#define TANGENTSPACE_NORMALMAP\\\\\\\":\\\\\\\"\\\\\\\",n.clearcoat?\\\\\\\"#define USE_CLEARCOAT\\\\\\\":\\\\\\\"\\\\\\\",n.clearcoatMap?\\\\\\\"#define USE_CLEARCOATMAP\\\\\\\":\\\\\\\"\\\\\\\",n.clearcoatRoughnessMap?\\\\\\\"#define USE_CLEARCOAT_ROUGHNESSMAP\\\\\\\":\\\\\\\"\\\\\\\",n.clearcoatNormalMap?\\\\\\\"#define USE_CLEARCOAT_NORMALMAP\\\\\\\":\\\\\\\"\\\\\\\",n.specularMap?\\\\\\\"#define USE_SPECULARMAP\\\\\\\":\\\\\\\"\\\\\\\",n.specularIntensityMap?\\\\\\\"#define USE_SPECULARINTENSITYMAP\\\\\\\":\\\\\\\"\\\\\\\",n.specularTintMap?\\\\\\\"#define USE_SPECULARTINTMAP\\\\\\\":\\\\\\\"\\\\\\\",n.roughnessMap?\\\\\\\"#define USE_ROUGHNESSMAP\\\\\\\":\\\\\\\"\\\\\\\",n.metalnessMap?\\\\\\\"#define USE_METALNESSMAP\\\\\\\":\\\\\\\"\\\\\\\",n.alphaMap?\\\\\\\"#define USE_ALPHAMAP\\\\\\\":\\\\\\\"\\\\\\\",n.alphaTest?\\\\\\\"#define USE_ALPHATEST\\\\\\\":\\\\\\\"\\\\\\\",n.sheen?\\\\\\\"#define USE_SHEEN\\\\\\\":\\\\\\\"\\\\\\\",n.transmission?\\\\\\\"#define USE_TRANSMISSION\\\\\\\":\\\\\\\"\\\\\\\",n.transmissionMap?\\\\\\\"#define USE_TRANSMISSIONMAP\\\\\\\":\\\\\\\"\\\\\\\",n.thicknessMap?\\\\\\\"#define USE_THICKNESSMAP\\\\\\\":\\\\\\\"\\\\\\\",n.vertexTangents?\\\\\\\"#define USE_TANGENT\\\\\\\":\\\\\\\"\\\\\\\",n.vertexColors||n.instancingColor?\\\\\\\"#define USE_COLOR\\\\\\\":\\\\\\\"\\\\\\\",n.vertexAlphas?\\\\\\\"#define USE_COLOR_ALPHA\\\\\\\":\\\\\\\"\\\\\\\",n.vertexUvs?\\\\\\\"#define USE_UV\\\\\\\":\\\\\\\"\\\\\\\",n.uvsVertexOnly?\\\\\\\"#define UVS_VERTEX_ONLY\\\\\\\":\\\\\\\"\\\\\\\",n.gradientMap?\\\\\\\"#define USE_GRADIENTMAP\\\\\\\":\\\\\\\"\\\\\\\",n.flatShading?\\\\\\\"#define FLAT_SHADED\\\\\\\":\\\\\\\"\\\\\\\",n.doubleSided?\\\\\\\"#define DOUBLE_SIDED\\\\\\\":\\\\\\\"\\\\\\\",n.flipSided?\\\\\\\"#define FLIP_SIDED\\\\\\\":\\\\\\\"\\\\\\\",n.shadowMapEnabled?\\\\\\\"#define USE_SHADOWMAP\\\\\\\":\\\\\\\"\\\\\\\",n.shadowMapEnabled?\\\\\\\"#define \\\\\\\"+l:\\\\\\\"\\\\\\\",n.premultipliedAlpha?\\\\\\\"#define PREMULTIPLIED_ALPHA\\\\\\\":\\\\\\\"\\\\\\\",n.physicallyCorrectLights?\\\\\\\"#define PHYSICALLY_CORRECT_LIGHTS\\\\\\\":\\\\\\\"\\\\\\\",n.logarithmicDepthBuffer?\\\\\\\"#define USE_LOGDEPTHBUF\\\\\\\":\\\\\\\"\\\\\\\",n.logarithmicDepthBuffer&&n.rendererExtensionFragDepth?\\\\\\\"#define USE_LOGDEPTHBUF_EXT\\\\\\\":\\\\\\\"\\\\\\\",(n.extensionShaderTextureLOD||n.envMap)&&n.rendererExtensionShaderTextureLod?\\\\\\\"#define TEXTURE_LOD_EXT\\\\\\\":\\\\\\\"\\\\\\\",\\\\\\\"uniform mat4 viewMatrix;\\\\\\\",\\\\\\\"uniform vec3 cameraPosition;\\\\\\\",\\\\\\\"uniform bool isOrthographic;\\\\\\\",n.toneMapping!==w.vb?\\\\\\\"#define TONE_MAPPING\\\\\\\":\\\\\\\"\\\\\\\",n.toneMapping!==w.vb?U.tonemapping_pars_fragment:\\\\\\\"\\\\\\\",n.toneMapping!==w.vb?tn(\\\\\\\"toneMapping\\\\\\\",n.toneMapping):\\\\\\\"\\\\\\\",n.dithering?\\\\\\\"#define DITHERING\\\\\\\":\\\\\\\"\\\\\\\",n.format===w.ic?\\\\\\\"#define OPAQUE\\\\\\\":\\\\\\\"\\\\\\\",U.encodings_pars_fragment,n.map?Ke(\\\\\\\"mapTexelToLinear\\\\\\\",n.mapEncoding):\\\\\\\"\\\\\\\",n.matcap?Ke(\\\\\\\"matcapTexelToLinear\\\\\\\",n.matcapEncoding):\\\\\\\"\\\\\\\",n.envMap?Ke(\\\\\\\"envMapTexelToLinear\\\\\\\",n.envMapEncoding):\\\\\\\"\\\\\\\",n.emissiveMap?Ke(\\\\\\\"emissiveMapTexelToLinear\\\\\\\",n.emissiveMapEncoding):\\\\\\\"\\\\\\\",n.specularTintMap?Ke(\\\\\\\"specularTintMapTexelToLinear\\\\\\\",n.specularTintMapEncoding):\\\\\\\"\\\\\\\",n.lightMap?Ke(\\\\\\\"lightMapTexelToLinear\\\\\\\",n.lightMapEncoding):\\\\\\\"\\\\\\\",Qe(\\\\\\\"linearToOutputTexel\\\\\\\",n.outputEncoding),n.depthPacking?\\\\\\\"#define DEPTH_PACKING \\\\\\\"+n.depthPacking:\\\\\\\"\\\\\\\",\\\\\\\"\\\\n\\\\\\\"].filter(en).join(\\\\\\\"\\\\n\\\\\\\")),o=on(o),o=nn(o,n),o=sn(o,n),a=on(a),a=nn(a,n),a=sn(a,n),o=hn(o),a=hn(a),n.isWebGL2&&!0!==n.isRawShaderMaterial&&(v=\\\\\\\"#version 300 es\\\\n\\\\\\\",f=[\\\\\\\"precision mediump sampler2DArray;\\\\\\\",\\\\\\\"#define attribute in\\\\\\\",\\\\\\\"#define varying out\\\\\\\",\\\\\\\"#define texture2D texture\\\\\\\"].join(\\\\\\\"\\\\n\\\\\\\")+\\\\\\\"\\\\n\\\\\\\"+f,g=[\\\\\\\"#define varying in\\\\\\\",n.glslVersion===w.I?\\\\\\\"\\\\\\\":\\\\\\\"out highp vec4 pc_fragColor;\\\\\\\",n.glslVersion===w.I?\\\\\\\"\\\\\\\":\\\\\\\"#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\\\\\\\"+g);const y=v+f+o,x=v+g+a,b=Ye(s,s.VERTEX_SHADER,y),T=Ye(s,s.FRAGMENT_SHADER,x);if(s.attachShader(m,b),s.attachShader(m,T),void 0!==n.index0AttributeName?s.bindAttribLocation(m,0,n.index0AttributeName):!0===n.morphTargets&&s.bindAttribLocation(m,0,\\\\\\\"position\\\\\\\"),s.linkProgram(m),t.debug.checkShaderErrors){const t=s.getProgramInfoLog(m).trim(),e=s.getShaderInfoLog(b).trim(),n=s.getShaderInfoLog(T).trim();let i=!0,r=!0;if(!1===s.getProgramParameter(m,s.LINK_STATUS)){i=!1;const e=Ze(s,b,\\\\\\\"vertex\\\\\\\"),n=Ze(s,T,\\\\\\\"fragment\\\\\\\");console.error(\\\\\\\"THREE.WebGLProgram: Shader Error \\\\\\\"+s.getError()+\\\\\\\" - VALIDATE_STATUS \\\\\\\"+s.getProgramParameter(m,s.VALIDATE_STATUS)+\\\\\\\"\\\\n\\\\nProgram Info Log: \\\\\\\"+t+\\\\\\\"\\\\n\\\\\\\"+e+\\\\\\\"\\\\n\\\\\\\"+n)}else\\\\\\\"\\\\\\\"!==t?console.warn(\\\\\\\"THREE.WebGLProgram: Program Info Log:\\\\\\\",t):\\\\\\\"\\\\\\\"!==e&&\\\\\\\"\\\\\\\"!==n||(r=!1);r&&(this.diagnostics={runnable:i,programLog:t,vertexShader:{log:e,prefix:f},fragmentShader:{log:n,prefix:g}})}let A,M;return s.deleteShader(b),s.deleteShader(T),this.getUniforms=function(){return void 0===A&&(A=new Xe(s,m)),A},this.getAttributes=function(){return void 0===M&&(M=function(t,e){const n={},i=t.getProgramParameter(e,t.ACTIVE_ATTRIBUTES);for(let s=0;s<i;s++){const i=t.getActiveAttrib(e,s),r=i.name;let o=1;i.type===t.FLOAT_MAT2&&(o=2),i.type===t.FLOAT_MAT3&&(o=3),i.type===t.FLOAT_MAT4&&(o=4),n[r]={type:i.type,location:t.getAttribLocation(e,r),locationSize:o}}return n}(s,m)),M},this.destroy=function(){i.releaseStatesOfProgram(this),s.deleteProgram(m),this.program=void 0},this.name=n.shaderName,this.id=$e++,this.cacheKey=e,this.usedTimes=1,this.program=m,this.vertexShader=b,this.fragmentShader=T,this}function mn(t,e,n,i,s,r,o){const a=[],l=s.isWebGL2,c=s.logarithmicDepthBuffer,h=s.floatVertexTextures,u=s.maxVertexUniforms,d=s.vertexTextures;let p=s.precision;const _={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\\\\\\\"},m=[\\\\\\\"precision\\\\\\\",\\\\\\\"isWebGL2\\\\\\\",\\\\\\\"supportsVertexTextures\\\\\\\",\\\\\\\"outputEncoding\\\\\\\",\\\\\\\"instancing\\\\\\\",\\\\\\\"instancingColor\\\\\\\",\\\\\\\"map\\\\\\\",\\\\\\\"mapEncoding\\\\\\\",\\\\\\\"matcap\\\\\\\",\\\\\\\"matcapEncoding\\\\\\\",\\\\\\\"envMap\\\\\\\",\\\\\\\"envMapMode\\\\\\\",\\\\\\\"envMapEncoding\\\\\\\",\\\\\\\"envMapCubeUV\\\\\\\",\\\\\\\"lightMap\\\\\\\",\\\\\\\"lightMapEncoding\\\\\\\",\\\\\\\"aoMap\\\\\\\",\\\\\\\"emissiveMap\\\\\\\",\\\\\\\"emissiveMapEncoding\\\\\\\",\\\\\\\"bumpMap\\\\\\\",\\\\\\\"normalMap\\\\\\\",\\\\\\\"objectSpaceNormalMap\\\\\\\",\\\\\\\"tangentSpaceNormalMap\\\\\\\",\\\\\\\"clearcoat\\\\\\\",\\\\\\\"clearcoatMap\\\\\\\",\\\\\\\"clearcoatRoughnessMap\\\\\\\",\\\\\\\"clearcoatNormalMap\\\\\\\",\\\\\\\"displacementMap\\\\\\\",\\\\\\\"specularMap\\\\\\\",\\\\\\\"specularIntensityMap\\\\\\\",\\\\\\\"specularTintMap\\\\\\\",\\\\\\\"specularTintMapEncoding\\\\\\\",\\\\\\\"roughnessMap\\\\\\\",\\\\\\\"metalnessMap\\\\\\\",\\\\\\\"gradientMap\\\\\\\",\\\\\\\"alphaMap\\\\\\\",\\\\\\\"alphaTest\\\\\\\",\\\\\\\"combine\\\\\\\",\\\\\\\"vertexColors\\\\\\\",\\\\\\\"vertexAlphas\\\\\\\",\\\\\\\"vertexTangents\\\\\\\",\\\\\\\"vertexUvs\\\\\\\",\\\\\\\"uvsVertexOnly\\\\\\\",\\\\\\\"fog\\\\\\\",\\\\\\\"useFog\\\\\\\",\\\\\\\"fogExp2\\\\\\\",\\\\\\\"flatShading\\\\\\\",\\\\\\\"sizeAttenuation\\\\\\\",\\\\\\\"logarithmicDepthBuffer\\\\\\\",\\\\\\\"skinning\\\\\\\",\\\\\\\"maxBones\\\\\\\",\\\\\\\"useVertexTexture\\\\\\\",\\\\\\\"morphTargets\\\\\\\",\\\\\\\"morphNormals\\\\\\\",\\\\\\\"morphTargetsCount\\\\\\\",\\\\\\\"premultipliedAlpha\\\\\\\",\\\\\\\"numDirLights\\\\\\\",\\\\\\\"numPointLights\\\\\\\",\\\\\\\"numSpotLights\\\\\\\",\\\\\\\"numHemiLights\\\\\\\",\\\\\\\"numRectAreaLights\\\\\\\",\\\\\\\"numDirLightShadows\\\\\\\",\\\\\\\"numPointLightShadows\\\\\\\",\\\\\\\"numSpotLightShadows\\\\\\\",\\\\\\\"shadowMapEnabled\\\\\\\",\\\\\\\"shadowMapType\\\\\\\",\\\\\\\"toneMapping\\\\\\\",\\\\\\\"physicallyCorrectLights\\\\\\\",\\\\\\\"doubleSided\\\\\\\",\\\\\\\"flipSided\\\\\\\",\\\\\\\"numClippingPlanes\\\\\\\",\\\\\\\"numClipIntersection\\\\\\\",\\\\\\\"depthPacking\\\\\\\",\\\\\\\"dithering\\\\\\\",\\\\\\\"format\\\\\\\",\\\\\\\"sheen\\\\\\\",\\\\\\\"transmission\\\\\\\",\\\\\\\"transmissionMap\\\\\\\",\\\\\\\"thicknessMap\\\\\\\"];function f(t){let e;return t&&t.isTexture?e=t.encoding:t&&t.isWebGLRenderTarget?(console.warn(\\\\\\\"THREE.WebGLPrograms.getTextureEncodingFromMap: don't use render targets as textures. Use their .texture property instead.\\\\\\\"),e=t.texture.encoding):e=w.U,l&&t&&t.isTexture&&t.format===w.Ib&&t.type===w.Zc&&t.encoding===w.ld&&(e=w.U),e}return{getParameters:function(r,a,m,g,v){const y=g.fog,x=r.isMeshStandardMaterial?g.environment:null,b=(r.isMeshStandardMaterial?n:e).get(r.envMap||x),T=_[r.type],A=v.isSkinnedMesh?function(t){const e=t.skeleton.bones;if(h)return 1024;{const t=u,n=Math.floor((t-20)/4),i=Math.min(n,e.length);return i<e.length?(console.warn(\\\\\\\"THREE.WebGLRenderer: Skeleton has \\\\\\\"+e.length+\\\\\\\" bones. This GPU supports \\\\\\\"+i+\\\\\\\".\\\\\\\"),0):i}}(v):0;let M,E;if(null!==r.precision&&(p=s.getMaxPrecision(r.precision),p!==r.precision&&console.warn(\\\\\\\"THREE.WebGLProgram.getParameters:\\\\\\\",r.precision,\\\\\\\"not supported, using\\\\\\\",p,\\\\\\\"instead.\\\\\\\")),T){const t=H[T];M=t.vertexShader,E=t.fragmentShader}else M=r.vertexShader,E=r.fragmentShader;const S=t.getRenderTarget(),C=r.alphaTest>0,N=r.clearcoat>0;return{isWebGL2:l,shaderID:T,shaderName:r.type,vertexShader:M,fragmentShader:E,defines:r.defines,isRawShaderMaterial:!0===r.isRawShaderMaterial,glslVersion:r.glslVersion,precision:p,instancing:!0===v.isInstancedMesh,instancingColor:!0===v.isInstancedMesh&&null!==v.instanceColor,supportsVertexTextures:d,outputEncoding:null!==S?f(S.texture):t.outputEncoding,map:!!r.map,mapEncoding:f(r.map),matcap:!!r.matcap,matcapEncoding:f(r.matcap),envMap:!!b,envMapMode:b&&b.mapping,envMapEncoding:f(b),envMapCubeUV:!!b&&(b.mapping===w.q||b.mapping===w.r),lightMap:!!r.lightMap,lightMapEncoding:f(r.lightMap),aoMap:!!r.aoMap,emissiveMap:!!r.emissiveMap,emissiveMapEncoding:f(r.emissiveMap),bumpMap:!!r.bumpMap,normalMap:!!r.normalMap,objectSpaceNormalMap:r.normalMapType===w.zb,tangentSpaceNormalMap:r.normalMapType===w.Uc,clearcoat:N,clearcoatMap:N&&!!r.clearcoatMap,clearcoatRoughnessMap:N&&!!r.clearcoatRoughnessMap,clearcoatNormalMap:N&&!!r.clearcoatNormalMap,displacementMap:!!r.displacementMap,roughnessMap:!!r.roughnessMap,metalnessMap:!!r.metalnessMap,specularMap:!!r.specularMap,specularIntensityMap:!!r.specularIntensityMap,specularTintMap:!!r.specularTintMap,specularTintMapEncoding:f(r.specularTintMap),alphaMap:!!r.alphaMap,alphaTest:C,gradientMap:!!r.gradientMap,sheen:r.sheen>0,transmission:r.transmission>0,transmissionMap:!!r.transmissionMap,thicknessMap:!!r.thicknessMap,combine:r.combine,vertexTangents:!!r.normalMap&&!!v.geometry&&!!v.geometry.attributes.tangent,vertexColors:r.vertexColors,vertexAlphas:!0===r.vertexColors&&!!v.geometry&&!!v.geometry.attributes.color&&4===v.geometry.attributes.color.itemSize,vertexUvs:!!(r.map||r.bumpMap||r.normalMap||r.specularMap||r.alphaMap||r.emissiveMap||r.roughnessMap||r.metalnessMap||r.clearcoatMap||r.clearcoatRoughnessMap||r.clearcoatNormalMap||r.displacementMap||r.transmissionMap||r.thicknessMap||r.specularIntensityMap||r.specularTintMap),uvsVertexOnly:!(r.map||r.bumpMap||r.normalMap||r.specularMap||r.alphaMap||r.emissiveMap||r.roughnessMap||r.metalnessMap||r.clearcoatNormalMap||r.transmission>0||r.transmissionMap||r.thicknessMap||r.specularIntensityMap||r.specularTintMap||!r.displacementMap),fog:!!y,useFog:r.fog,fogExp2:y&&y.isFogExp2,flatShading:!!r.flatShading,sizeAttenuation:r.sizeAttenuation,logarithmicDepthBuffer:c,skinning:!0===v.isSkinnedMesh&&A>0,maxBones:A,useVertexTexture:h,morphTargets:!!v.geometry&&!!v.geometry.morphAttributes.position,morphNormals:!!v.geometry&&!!v.geometry.morphAttributes.normal,morphTargetsCount:v.geometry&&v.geometry.morphAttributes.position?v.geometry.morphAttributes.position.length:0,numDirLights:a.directional.length,numPointLights:a.point.length,numSpotLights:a.spot.length,numRectAreaLights:a.rectArea.length,numHemiLights:a.hemi.length,numDirLightShadows:a.directionalShadowMap.length,numPointLightShadows:a.pointShadowMap.length,numSpotLightShadows:a.spotShadowMap.length,numClippingPlanes:o.numPlanes,numClipIntersection:o.numIntersection,format:r.format,dithering:r.dithering,shadowMapEnabled:t.shadowMap.enabled&&m.length>0,shadowMapType:t.shadowMap.type,toneMapping:r.toneMapped?t.toneMapping:w.vb,physicallyCorrectLights:t.physicallyCorrectLights,premultipliedAlpha:r.premultipliedAlpha,doubleSided:r.side===w.z,flipSided:r.side===w.i,depthPacking:void 0!==r.depthPacking&&r.depthPacking,index0AttributeName:r.index0AttributeName,extensionDerivatives:r.extensions&&r.extensions.derivatives,extensionFragDepth:r.extensions&&r.extensions.fragDepth,extensionDrawBuffers:r.extensions&&r.extensions.drawBuffers,extensionShaderTextureLOD:r.extensions&&r.extensions.shaderTextureLOD,rendererExtensionFragDepth:l||i.has(\\\\\\\"EXT_frag_depth\\\\\\\"),rendererExtensionDrawBuffers:l||i.has(\\\\\\\"WEBGL_draw_buffers\\\\\\\"),rendererExtensionShaderTextureLod:l||i.has(\\\\\\\"EXT_shader_texture_lod\\\\\\\"),customProgramCacheKey:r.customProgramCacheKey()}},getProgramCacheKey:function(e){const n=[];if(e.shaderID?n.push(e.shaderID):(n.push(e.fragmentShader),n.push(e.vertexShader)),void 0!==e.defines)for(const t in e.defines)n.push(t),n.push(e.defines[t]);if(!1===e.isRawShaderMaterial){for(let t=0;t<m.length;t++)n.push(e[m[t]]);n.push(t.outputEncoding),n.push(t.gammaFactor)}return n.push(e.customProgramCacheKey),n.join()},getUniforms:function(t){const e=_[t.type];let n;if(e){const t=H[e];n=I.clone(t.uniforms)}else n=t.uniforms;return n},acquireProgram:function(e,n){let i;for(let t=0,e=a.length;t<e;t++){const e=a[t];if(e.cacheKey===n){i=e,++i.usedTimes;break}}return void 0===i&&(i=new _n(t,n,e,r),a.push(i)),i},releaseProgram:function(t){if(0==--t.usedTimes){const e=a.indexOf(t);a[e]=a[a.length-1],a.pop(),t.destroy()}},programs:a}}function fn(){let t=new WeakMap;return{get:function(e){let n=t.get(e);return void 0===n&&(n={},t.set(e,n)),n},remove:function(e){t.delete(e)},update:function(e,n,i){t.get(e)[n]=i},dispose:function(){t=new WeakMap}}}function gn(t,e){return t.groupOrder!==e.groupOrder?t.groupOrder-e.groupOrder:t.renderOrder!==e.renderOrder?t.renderOrder-e.renderOrder:t.program!==e.program?t.program.id-e.program.id:t.material.id!==e.material.id?t.material.id-e.material.id:t.z!==e.z?t.z-e.z:t.id-e.id}function vn(t,e){return t.groupOrder!==e.groupOrder?t.groupOrder-e.groupOrder:t.renderOrder!==e.renderOrder?t.renderOrder-e.renderOrder:t.z!==e.z?e.z-t.z:t.id-e.id}function yn(t){const e=[];let n=0;const i=[],s=[],r=[],o={id:-1};function a(i,s,r,a,l,c){let h=e[n];const u=t.get(r);return void 0===h?(h={id:i.id,object:i,geometry:s,material:r,program:u.program||o,groupOrder:a,renderOrder:i.renderOrder,z:l,group:c},e[n]=h):(h.id=i.id,h.object=i,h.geometry=s,h.material=r,h.program=u.program||o,h.groupOrder=a,h.renderOrder=i.renderOrder,h.z=l,h.group=c),n++,h}return{opaque:i,transmissive:s,transparent:r,init:function(){n=0,i.length=0,s.length=0,r.length=0},push:function(t,e,n,o,l,c){const h=a(t,e,n,o,l,c);n.transmission>0?s.push(h):!0===n.transparent?r.push(h):i.push(h)},unshift:function(t,e,n,o,l,c){const h=a(t,e,n,o,l,c);n.transmission>0?s.unshift(h):!0===n.transparent?r.unshift(h):i.unshift(h)},finish:function(){for(let t=n,i=e.length;t<i;t++){const n=e[t];if(null===n.id)break;n.id=null,n.object=null,n.geometry=null,n.material=null,n.program=null,n.group=null}},sort:function(t,e){i.length>1&&i.sort(t||gn),s.length>1&&s.sort(e||vn),r.length>1&&r.sort(e||vn)}}}function xn(t){let e=new WeakMap;return{get:function(n,i){let s;return!1===e.has(n)?(s=new yn(t),e.set(n,[s])):i>=e.get(n).length?(s=new yn(t),e.get(n).push(s)):s=e.get(n)[i],s},dispose:function(){e=new WeakMap}}}function bn(){const t={};return{get:function(e){if(void 0!==t[e.id])return t[e.id];let n;switch(e.type){case\\\\\\\"DirectionalLight\\\\\\\":n={direction:new p.a,color:new D.a};break;case\\\\\\\"SpotLight\\\\\\\":n={position:new p.a,direction:new p.a,color:new D.a,distance:0,coneCos:0,penumbraCos:0,decay:0};break;case\\\\\\\"PointLight\\\\\\\":n={position:new p.a,color:new D.a,distance:0,decay:0};break;case\\\\\\\"HemisphereLight\\\\\\\":n={direction:new p.a,skyColor:new D.a,groundColor:new D.a};break;case\\\\\\\"RectAreaLight\\\\\\\":n={color:new D.a,position:new p.a,halfWidth:new p.a,halfHeight:new p.a}}return t[e.id]=n,n}}}let wn=0;function Tn(t,e){return(e.castShadow?1:0)-(t.castShadow?1:0)}function An(t,e){const n=new bn,i=function(){const t={};return{get:function(e){if(void 0!==t[e.id])return t[e.id];let n;switch(e.type){case\\\\\\\"DirectionalLight\\\\\\\":case\\\\\\\"SpotLight\\\\\\\":n={shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new d.a};break;case\\\\\\\"PointLight\\\\\\\":n={shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new d.a,shadowCameraNear:1,shadowCameraFar:1e3}}return t[e.id]=n,n}}}(),s={version:0,hash:{directionalLength:-1,pointLength:-1,spotLength:-1,rectAreaLength:-1,hemiLength:-1,numDirectionalShadows:-1,numPointShadows:-1,numSpotShadows:-1},ambient:[0,0,0],probe:[],directional:[],directionalShadow:[],directionalShadowMap:[],directionalShadowMatrix:[],spot:[],spotShadow:[],spotShadowMap:[],spotShadowMatrix:[],rectArea:[],rectAreaLTC1:null,rectAreaLTC2:null,point:[],pointShadow:[],pointShadowMap:[],pointShadowMatrix:[],hemi:[]};for(let t=0;t<9;t++)s.probe.push(new p.a);const r=new p.a,o=new A.a,a=new A.a;return{setup:function(r,o){let a=0,l=0,c=0;for(let t=0;t<9;t++)s.probe[t].set(0,0,0);let h=0,u=0,d=0,p=0,_=0,m=0,f=0,g=0;r.sort(Tn);const v=!0!==o?Math.PI:1;for(let t=0,e=r.length;t<e;t++){const e=r[t],o=e.color,y=e.intensity,x=e.distance,b=e.shadow&&e.shadow.map?e.shadow.map.texture:null;if(e.isAmbientLight)a+=o.r*y*v,l+=o.g*y*v,c+=o.b*y*v;else if(e.isLightProbe)for(let t=0;t<9;t++)s.probe[t].addScaledVector(e.sh.coefficients[t],y);else if(e.isDirectionalLight){const t=n.get(e);if(t.color.copy(e.color).multiplyScalar(e.intensity*v),e.castShadow){const t=e.shadow,n=i.get(e);n.shadowBias=t.bias,n.shadowNormalBias=t.normalBias,n.shadowRadius=t.radius,n.shadowMapSize=t.mapSize,s.directionalShadow[h]=n,s.directionalShadowMap[h]=b,s.directionalShadowMatrix[h]=e.shadow.matrix,m++}s.directional[h]=t,h++}else if(e.isSpotLight){const t=n.get(e);if(t.position.setFromMatrixPosition(e.matrixWorld),t.color.copy(o).multiplyScalar(y*v),t.distance=x,t.coneCos=Math.cos(e.angle),t.penumbraCos=Math.cos(e.angle*(1-e.penumbra)),t.decay=e.decay,e.castShadow){const t=e.shadow,n=i.get(e);n.shadowBias=t.bias,n.shadowNormalBias=t.normalBias,n.shadowRadius=t.radius,n.shadowMapSize=t.mapSize,s.spotShadow[d]=n,s.spotShadowMap[d]=b,s.spotShadowMatrix[d]=e.shadow.matrix,g++}s.spot[d]=t,d++}else if(e.isRectAreaLight){const t=n.get(e);t.color.copy(o).multiplyScalar(y),t.halfWidth.set(.5*e.width,0,0),t.halfHeight.set(0,.5*e.height,0),s.rectArea[p]=t,p++}else if(e.isPointLight){const t=n.get(e);if(t.color.copy(e.color).multiplyScalar(e.intensity*v),t.distance=e.distance,t.decay=e.decay,e.castShadow){const t=e.shadow,n=i.get(e);n.shadowBias=t.bias,n.shadowNormalBias=t.normalBias,n.shadowRadius=t.radius,n.shadowMapSize=t.mapSize,n.shadowCameraNear=t.camera.near,n.shadowCameraFar=t.camera.far,s.pointShadow[u]=n,s.pointShadowMap[u]=b,s.pointShadowMatrix[u]=e.shadow.matrix,f++}s.point[u]=t,u++}else if(e.isHemisphereLight){const t=n.get(e);t.skyColor.copy(e.color).multiplyScalar(y*v),t.groundColor.copy(e.groundColor).multiplyScalar(y*v),s.hemi[_]=t,_++}}p>0&&(e.isWebGL2||!0===t.has(\\\\\\\"OES_texture_float_linear\\\\\\\")?(s.rectAreaLTC1=V.LTC_FLOAT_1,s.rectAreaLTC2=V.LTC_FLOAT_2):!0===t.has(\\\\\\\"OES_texture_half_float_linear\\\\\\\")?(s.rectAreaLTC1=V.LTC_HALF_1,s.rectAreaLTC2=V.LTC_HALF_2):console.error(\\\\\\\"THREE.WebGLRenderer: Unable to use RectAreaLight. Missing WebGL extensions.\\\\\\\")),s.ambient[0]=a,s.ambient[1]=l,s.ambient[2]=c;const y=s.hash;y.directionalLength===h&&y.pointLength===u&&y.spotLength===d&&y.rectAreaLength===p&&y.hemiLength===_&&y.numDirectionalShadows===m&&y.numPointShadows===f&&y.numSpotShadows===g||(s.directional.length=h,s.spot.length=d,s.rectArea.length=p,s.point.length=u,s.hemi.length=_,s.directionalShadow.length=m,s.directionalShadowMap.length=m,s.pointShadow.length=f,s.pointShadowMap.length=f,s.spotShadow.length=g,s.spotShadowMap.length=g,s.directionalShadowMatrix.length=m,s.pointShadowMatrix.length=f,s.spotShadowMatrix.length=g,y.directionalLength=h,y.pointLength=u,y.spotLength=d,y.rectAreaLength=p,y.hemiLength=_,y.numDirectionalShadows=m,y.numPointShadows=f,y.numSpotShadows=g,s.version=wn++)},setupView:function(t,e){let n=0,i=0,l=0,c=0,h=0;const u=e.matrixWorldInverse;for(let e=0,d=t.length;e<d;e++){const d=t[e];if(d.isDirectionalLight){const t=s.directional[n];t.direction.setFromMatrixPosition(d.matrixWorld),r.setFromMatrixPosition(d.target.matrixWorld),t.direction.sub(r),t.direction.transformDirection(u),n++}else if(d.isSpotLight){const t=s.spot[l];t.position.setFromMatrixPosition(d.matrixWorld),t.position.applyMatrix4(u),t.direction.setFromMatrixPosition(d.matrixWorld),r.setFromMatrixPosition(d.target.matrixWorld),t.direction.sub(r),t.direction.transformDirection(u),l++}else if(d.isRectAreaLight){const t=s.rectArea[c];t.position.setFromMatrixPosition(d.matrixWorld),t.position.applyMatrix4(u),a.identity(),o.copy(d.matrixWorld),o.premultiply(u),a.extractRotation(o),t.halfWidth.set(.5*d.width,0,0),t.halfHeight.set(0,.5*d.height,0),t.halfWidth.applyMatrix4(a),t.halfHeight.applyMatrix4(a),c++}else if(d.isPointLight){const t=s.point[i];t.position.setFromMatrixPosition(d.matrixWorld),t.position.applyMatrix4(u),i++}else if(d.isHemisphereLight){const t=s.hemi[h];t.direction.setFromMatrixPosition(d.matrixWorld),t.direction.transformDirection(u),t.direction.normalize(),h++}}},state:s}}function Mn(t,e){const n=new An(t,e),i=[],s=[];return{init:function(){i.length=0,s.length=0},state:{lightsArray:i,shadowsArray:s,lights:n},setupLights:function(t){n.setup(i,t)},setupLightsView:function(t){n.setupView(i,t)},pushLight:function(t){i.push(t)},pushShadow:function(t){s.push(t)}}}function En(t,e){let n=new WeakMap;return{get:function(i,s=0){let r;return!1===n.has(i)?(r=new Mn(t,e),n.set(i,[r])):s>=n.get(i).length?(r=new Mn(t,e),n.get(i).push(r)):r=n.get(i)[s],r},dispose:function(){n=new WeakMap}}}class Sn extends O.a{constructor(t){super(),this.type=\\\\\\\"MeshDepthMaterial\\\\\\\",this.depthPacking=w.j,this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.wireframe=!1,this.wireframeLinewidth=1,this.fog=!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}}Sn.prototype.isMeshDepthMaterial=!0;class Cn extends O.a{constructor(t){super(),this.type=\\\\\\\"MeshDistanceMaterial\\\\\\\",this.referencePosition=new p.a,this.nearDistance=1,this.farDistance=1e3,this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.fog=!1,this.setValues(t)}copy(t){return super.copy(t),this.referencePosition.copy(t.referencePosition),this.nearDistance=t.nearDistance,this.farDistance=t.farDistance,this.map=t.map,this.alphaMap=t.alphaMap,this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this}}Cn.prototype.isMeshDistanceMaterial=!0;function Nn(t,e,n){let i=new T.a;const s=new d.a,r=new d.a,o=new _.a,a=new Sn({depthPacking:w.Hb}),l=new Cn,c={},h=n.maxTextureSize,u={0:w.i,1:w.H,2:w.z},p=new F({uniforms:{shadow_pass:{value:null},resolution:{value:new d.a},radius:{value:4},samples:{value:8}},vertexShader:\\\\\\\"\\\\nvoid main() {\\\\n\\\\n\\\\tgl_Position = vec4( position, 1.0 );\\\\n\\\\n}\\\\n\\\\\\\",fragmentShader:\\\\\\\"\\\\nuniform sampler2D shadow_pass;\\\\nuniform vec2 resolution;\\\\nuniform float radius;\\\\nuniform float samples;\\\\n\\\\n#include <packing>\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\tfloat mean = 0.0;\\\\n\\\\tfloat squared_mean = 0.0;\\\\n\\\\n\\\\t// This seems totally useless but it's a crazy work around for a Adreno compiler bug\\\\n\\\\t// float depth = unpackRGBAToDepth( texture2D( shadow_pass, ( gl_FragCoord.xy ) / resolution ) );\\\\n\\\\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\\\\n\\\\t\\\\tfloat uvOffset = uvStart + i * uvStride;\\\\n\\\\n\\\\t\\\\t#ifdef HORIZONTAL_PASS\\\\n\\\\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\\\\n\\\\t\\\\t#else\\\\n\\\\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\\\\n\\\\t\\\\t#endif\\\\n\\\\n\\\\t}\\\\n\\\\n\\\\tmean = mean / samples;\\\\n\\\\tsquared_mean = squared_mean / samples;\\\\n\\\\n\\\\tfloat std_dev = sqrt( squared_mean - mean * mean );\\\\n\\\\n\\\\tgl_FragColor = pack2HalfToRGBA( vec2( mean, std_dev ) );\\\\n\\\\n}\\\\n\\\\\\\"}),m=p.clone();m.defines.HORIZONTAL_PASS=1;const f=new S.a;f.setAttribute(\\\\\\\"position\\\\\\\",new C.a(new Float32Array([-1,-1,.5,3,-1,.5,-1,3,.5]),3));const g=new B.a(f,p),v=this;function y(n,i){const s=e.update(g);p.uniforms.shadow_pass.value=n.map.texture,p.uniforms.resolution.value=n.mapSize,p.uniforms.radius.value=n.radius,p.uniforms.samples.value=n.blurSamples,t.setRenderTarget(n.mapPass),t.clear(),t.renderBufferDirect(i,null,s,p,g,null),m.uniforms.shadow_pass.value=n.mapPass.texture,m.uniforms.resolution.value=n.mapSize,m.uniforms.radius.value=n.radius,m.uniforms.samples.value=n.blurSamples,t.setRenderTarget(n.map),t.clear(),t.renderBufferDirect(i,null,s,m,g,null)}function x(e,n,i,s,r,o,h){let d=null;const p=!0===s.isPointLight?e.customDistanceMaterial:e.customDepthMaterial;if(d=void 0!==p?p:!0===s.isPointLight?l:a,t.localClippingEnabled&&!0===i.clipShadows&&0!==i.clippingPlanes.length||i.displacementMap&&0!==i.displacementScale||i.alphaMap&&i.alphaTest>0){const t=d.uuid,e=i.uuid;let n=c[t];void 0===n&&(n={},c[t]=n);let s=n[e];void 0===s&&(s=d.clone(),n[e]=s),d=s}return d.visible=i.visible,d.wireframe=i.wireframe,h===w.gd?d.side=null!==i.shadowSide?i.shadowSide:i.side:d.side=null!==i.shadowSide?i.shadowSide:u[i.side],d.alphaMap=i.alphaMap,d.alphaTest=i.alphaTest,d.clipShadows=i.clipShadows,d.clippingPlanes=i.clippingPlanes,d.clipIntersection=i.clipIntersection,d.displacementMap=i.displacementMap,d.displacementScale=i.displacementScale,d.displacementBias=i.displacementBias,d.wireframeLinewidth=i.wireframeLinewidth,d.linewidth=i.linewidth,!0===s.isPointLight&&!0===d.isMeshDistanceMaterial&&(d.referencePosition.setFromMatrixPosition(s.matrixWorld),d.nearDistance=r,d.farDistance=o),d}function b(n,s,r,o,a){if(!1===n.visible)return;if(n.layers.test(s.layers)&&(n.isMesh||n.isLine||n.isPoints)&&(n.castShadow||n.receiveShadow&&a===w.gd)&&(!n.frustumCulled||i.intersectsObject(n))){n.modelViewMatrix.multiplyMatrices(r.matrixWorldInverse,n.matrixWorld);const i=e.update(n),s=n.material;if(Array.isArray(s)){const e=i.groups;for(let l=0,c=e.length;l<c;l++){const c=e[l],h=s[c.materialIndex];if(h&&h.visible){const e=x(n,0,h,o,r.near,r.far,a);t.renderBufferDirect(r,null,i,e,n,c)}}}else if(s.visible){const e=x(n,0,s,o,r.near,r.far,a);t.renderBufferDirect(r,null,i,e,n,null)}}const l=n.children;for(let t=0,e=l.length;t<e;t++)b(l[t],s,r,o,a)}this.enabled=!1,this.autoUpdate=!0,this.needsUpdate=!1,this.type=w.Fb,this.render=function(e,n,a){if(!1===v.enabled)return;if(!1===v.autoUpdate&&!1===v.needsUpdate)return;if(0===e.length)return;const l=t.getRenderTarget(),c=t.getActiveCubeFace(),u=t.getActiveMipmapLevel(),d=t.state;d.setBlending(w.ub),d.buffers.color.setClear(1,1,1,1),d.buffers.depth.setTest(!0),d.setScissorTest(!1);for(let l=0,c=e.length;l<c;l++){const c=e[l],u=c.shadow;if(void 0===u){console.warn(\\\\\\\"THREE.WebGLShadowMap:\\\\\\\",c,\\\\\\\"has no shadow.\\\\\\\");continue}if(!1===u.autoUpdate&&!1===u.needsUpdate)continue;s.copy(u.mapSize);const p=u.getFrameExtents();if(s.multiply(p),r.copy(u.mapSize),(s.x>h||s.y>h)&&(s.x>h&&(r.x=Math.floor(h/p.x),s.x=r.x*p.x,u.mapSize.x=r.x),s.y>h&&(r.y=Math.floor(h/p.y),s.y=r.y*p.y,u.mapSize.y=r.y)),null===u.map&&!u.isPointLightShadow&&this.type===w.gd){const t={minFilter:w.V,magFilter:w.V,format:w.Ib};u.map=new K(s.x,s.y,t),u.map.texture.name=c.name+\\\\\\\".shadowMap\\\\\\\",u.mapPass=new K(s.x,s.y,t),u.camera.updateProjectionMatrix()}if(null===u.map){const t={minFilter:w.ob,magFilter:w.ob,format:w.Ib};u.map=new K(s.x,s.y,t),u.map.texture.name=c.name+\\\\\\\".shadowMap\\\\\\\",u.camera.updateProjectionMatrix()}t.setRenderTarget(u.map),t.clear();const _=u.getViewportCount();for(let t=0;t<_;t++){const e=u.getViewport(t);o.set(r.x*e.x,r.y*e.y,r.x*e.z,r.y*e.w),d.viewport(o),u.updateMatrices(c,t),i=u.getFrustum(),b(n,a,u.camera,c,this.type)}u.isPointLightShadow||this.type!==w.gd||y(u,a),u.needsUpdate=!1}v.needsUpdate=!1,t.setRenderTarget(l,c,u)}}function Ln(t,e,n){const i=n.isWebGL2;const s=new function(){let e=!1;const n=new _.a;let i=null;const s=new _.a(0,0,0,0);return{setMask:function(n){i===n||e||(t.colorMask(n,n,n,n),i=n)},setLocked:function(t){e=t},setClear:function(e,i,r,o,a){!0===a&&(e*=o,i*=o,r*=o),n.set(e,i,r,o),!1===s.equals(n)&&(t.clearColor(e,i,r,o),s.copy(n))},reset:function(){e=!1,i=null,s.set(-1,0,0,0)}}},r=new function(){let e=!1,n=null,i=null,s=null;return{setTest:function(e){e?k(t.DEPTH_TEST):U(t.DEPTH_TEST)},setMask:function(i){n===i||e||(t.depthMask(i),n=i)},setFunc:function(e){if(i!==e){if(e)switch(e){case w.tb:t.depthFunc(t.NEVER);break;case w.g:t.depthFunc(t.ALWAYS);break;case w.S:t.depthFunc(t.LESS);break;case w.T:t.depthFunc(t.LEQUAL);break;case w.C:t.depthFunc(t.EQUAL);break;case w.L:t.depthFunc(t.GEQUAL);break;case w.K:t.depthFunc(t.GREATER);break;case w.yb:t.depthFunc(t.NOTEQUAL);break;default:t.depthFunc(t.LEQUAL)}else t.depthFunc(t.LEQUAL);i=e}},setLocked:function(t){e=t},setClear:function(e){s!==e&&(t.clearDepth(e),s=e)},reset:function(){e=!1,n=null,i=null,s=null}}},o=new function(){let e=!1,n=null,i=null,s=null,r=null,o=null,a=null,l=null,c=null;return{setTest:function(n){e||(n?k(t.STENCIL_TEST):U(t.STENCIL_TEST))},setMask:function(i){n===i||e||(t.stencilMask(i),n=i)},setFunc:function(e,n,o){i===e&&s===n&&r===o||(t.stencilFunc(e,n,o),i=e,s=n,r=o)},setOp:function(e,n,i){o===e&&a===n&&l===i||(t.stencilOp(e,n,i),o=e,a=n,l=i)},setLocked:function(t){e=t},setClear:function(e){c!==e&&(t.clearStencil(e),c=e)},reset:function(){e=!1,n=null,i=null,s=null,r=null,o=null,a=null,l=null,c=null}}};let a={},l=null,c={},h=null,u=!1,d=null,p=null,m=null,f=null,g=null,v=null,y=null,x=!1,b=null,T=null,A=null,M=null,E=null;const S=t.getParameter(t.MAX_COMBINED_TEXTURE_IMAGE_UNITS);let C=!1,N=0;const L=t.getParameter(t.VERSION);-1!==L.indexOf(\\\\\\\"WebGL\\\\\\\")?(N=parseFloat(/^WebGL (\\\\d)/.exec(L)[1]),C=N>=1):-1!==L.indexOf(\\\\\\\"OpenGL ES\\\\\\\")&&(N=parseFloat(/^OpenGL ES (\\\\d)/.exec(L)[1]),C=N>=2);let O=null,P={};const R=t.getParameter(t.SCISSOR_BOX),I=t.getParameter(t.VIEWPORT),F=(new _.a).fromArray(R),D=(new _.a).fromArray(I);function B(e,n,i){const s=new Uint8Array(4),r=t.createTexture();t.bindTexture(e,r),t.texParameteri(e,t.TEXTURE_MIN_FILTER,t.NEAREST),t.texParameteri(e,t.TEXTURE_MAG_FILTER,t.NEAREST);for(let e=0;e<i;e++)t.texImage2D(n+e,0,t.RGBA,1,1,0,t.RGBA,t.UNSIGNED_BYTE,s);return r}const z={};function k(e){!0!==a[e]&&(t.enable(e),a[e]=!0)}function U(e){!1!==a[e]&&(t.disable(e),a[e]=!1)}z[t.TEXTURE_2D]=B(t.TEXTURE_2D,t.TEXTURE_2D,1),z[t.TEXTURE_CUBE_MAP]=B(t.TEXTURE_CUBE_MAP,t.TEXTURE_CUBE_MAP_POSITIVE_X,6),s.setClear(0,0,0,1),r.setClear(1),o.setClear(0),k(t.DEPTH_TEST),r.setFunc(w.T),j(!1),W(w.s),k(t.CULL_FACE),H(w.ub);const G={[w.b]:t.FUNC_ADD,[w.Rc]:t.FUNC_SUBTRACT,[w.xc]:t.FUNC_REVERSE_SUBTRACT};if(i)G[w.jb]=t.MIN,G[w.ib]=t.MAX;else{const t=e.get(\\\\\\\"EXT_blend_minmax\\\\\\\");null!==t&&(G[w.jb]=t.MIN_EXT,G[w.ib]=t.MAX_EXT)}const V={[w.jd]:t.ZERO,[w.Ab]:t.ONE,[w.Pc]:t.SRC_COLOR,[w.Nc]:t.SRC_ALPHA,[w.Oc]:t.SRC_ALPHA_SATURATE,[w.B]:t.DST_COLOR,[w.A]:t.DST_ALPHA,[w.Eb]:t.ONE_MINUS_SRC_COLOR,[w.Db]:t.ONE_MINUS_SRC_ALPHA,[w.Cb]:t.ONE_MINUS_DST_COLOR,[w.Bb]:t.ONE_MINUS_DST_ALPHA};function H(e,n,i,s,r,o,a,l){if(e!==w.ub){if(!1===u&&(k(t.BLEND),u=!0),e===w.v)r=r||n,o=o||i,a=a||s,n===p&&r===g||(t.blendEquationSeparate(G[n],G[r]),p=n,g=r),i===m&&s===f&&o===v&&a===y||(t.blendFuncSeparate(V[i],V[s],V[o],V[a]),m=i,f=s,v=o,y=a),d=e,x=null;else if(e!==d||l!==x){if(p===w.b&&g===w.b||(t.blendEquation(t.FUNC_ADD),p=w.b,g=w.b),l)switch(e){case w.xb:t.blendFuncSeparate(t.ONE,t.ONE_MINUS_SRC_ALPHA,t.ONE,t.ONE_MINUS_SRC_ALPHA);break;case w.e:t.blendFunc(t.ONE,t.ONE);break;case w.Sc:t.blendFuncSeparate(t.ZERO,t.ZERO,t.ONE_MINUS_SRC_COLOR,t.ONE_MINUS_SRC_ALPHA);break;case w.mb:t.blendFuncSeparate(t.ZERO,t.SRC_COLOR,t.ZERO,t.SRC_ALPHA);break;default:console.error(\\\\\\\"THREE.WebGLState: Invalid blending: \\\\\\\",e)}else switch(e){case w.xb:t.blendFuncSeparate(t.SRC_ALPHA,t.ONE_MINUS_SRC_ALPHA,t.ONE,t.ONE_MINUS_SRC_ALPHA);break;case w.e:t.blendFunc(t.SRC_ALPHA,t.ONE);break;case w.Sc:t.blendFunc(t.ZERO,t.ONE_MINUS_SRC_COLOR);break;case w.mb:t.blendFunc(t.ZERO,t.SRC_COLOR);break;default:console.error(\\\\\\\"THREE.WebGLState: Invalid blending: \\\\\\\",e)}m=null,f=null,v=null,y=null,d=e,x=l}}else!0===u&&(U(t.BLEND),u=!1)}function j(e){b!==e&&(e?t.frontFace(t.CW):t.frontFace(t.CCW),b=e)}function W(e){e!==w.u?(k(t.CULL_FACE),e!==T&&(e===w.s?t.cullFace(t.BACK):e===w.t?t.cullFace(t.FRONT):t.cullFace(t.FRONT_AND_BACK))):U(t.CULL_FACE),T=e}function q(e,n,i){e?(k(t.POLYGON_OFFSET_FILL),M===n&&E===i||(t.polygonOffset(n,i),M=n,E=i)):U(t.POLYGON_OFFSET_FILL)}function X(e){void 0===e&&(e=t.TEXTURE0+S-1),O!==e&&(t.activeTexture(e),O=e)}return{buffers:{color:s,depth:r,stencil:o},enable:k,disable:U,bindFramebuffer:function(e,n){return null===n&&null!==l&&(n=l),c[e]!==n&&(t.bindFramebuffer(e,n),c[e]=n,i&&(e===t.DRAW_FRAMEBUFFER&&(c[t.FRAMEBUFFER]=n),e===t.FRAMEBUFFER&&(c[t.DRAW_FRAMEBUFFER]=n)),!0)},bindXRFramebuffer:function(e){e!==l&&(t.bindFramebuffer(t.FRAMEBUFFER,e),l=e)},useProgram:function(e){return h!==e&&(t.useProgram(e),h=e,!0)},setBlending:H,setMaterial:function(e,n){e.side===w.z?U(t.CULL_FACE):k(t.CULL_FACE);let i=e.side===w.i;n&&(i=!i),j(i),e.blending===w.xb&&!1===e.transparent?H(w.ub):H(e.blending,e.blendEquation,e.blendSrc,e.blendDst,e.blendEquationAlpha,e.blendSrcAlpha,e.blendDstAlpha,e.premultipliedAlpha),r.setFunc(e.depthFunc),r.setTest(e.depthTest),r.setMask(e.depthWrite),s.setMask(e.colorWrite);const a=e.stencilWrite;o.setTest(a),a&&(o.setMask(e.stencilWriteMask),o.setFunc(e.stencilFunc,e.stencilRef,e.stencilFuncMask),o.setOp(e.stencilFail,e.stencilZFail,e.stencilZPass)),q(e.polygonOffset,e.polygonOffsetFactor,e.polygonOffsetUnits),!0===e.alphaToCoverage?k(t.SAMPLE_ALPHA_TO_COVERAGE):U(t.SAMPLE_ALPHA_TO_COVERAGE)},setFlipSided:j,setCullFace:W,setLineWidth:function(e){e!==A&&(C&&t.lineWidth(e),A=e)},setPolygonOffset:q,setScissorTest:function(e){e?k(t.SCISSOR_TEST):U(t.SCISSOR_TEST)},activeTexture:X,bindTexture:function(e,n){null===O&&X();let i=P[O];void 0===i&&(i={type:void 0,texture:void 0},P[O]=i),i.type===e&&i.texture===n||(t.bindTexture(e,n||z[e]),i.type=e,i.texture=n)},unbindTexture:function(){const e=P[O];void 0!==e&&void 0!==e.type&&(t.bindTexture(e.type,null),e.type=void 0,e.texture=void 0)},compressedTexImage2D:function(){try{t.compressedTexImage2D.apply(t,arguments)}catch(t){console.error(\\\\\\\"THREE.WebGLState:\\\\\\\",t)}},texImage2D:function(){try{t.texImage2D.apply(t,arguments)}catch(t){console.error(\\\\\\\"THREE.WebGLState:\\\\\\\",t)}},texImage3D:function(){try{t.texImage3D.apply(t,arguments)}catch(t){console.error(\\\\\\\"THREE.WebGLState:\\\\\\\",t)}},scissor:function(e){!1===F.equals(e)&&(t.scissor(e.x,e.y,e.z,e.w),F.copy(e))},viewport:function(e){!1===D.equals(e)&&(t.viewport(e.x,e.y,e.z,e.w),D.copy(e))},reset:function(){t.disable(t.BLEND),t.disable(t.CULL_FACE),t.disable(t.DEPTH_TEST),t.disable(t.POLYGON_OFFSET_FILL),t.disable(t.SCISSOR_TEST),t.disable(t.STENCIL_TEST),t.disable(t.SAMPLE_ALPHA_TO_COVERAGE),t.blendEquation(t.FUNC_ADD),t.blendFunc(t.ONE,t.ZERO),t.blendFuncSeparate(t.ONE,t.ZERO,t.ONE,t.ZERO),t.colorMask(!0,!0,!0,!0),t.clearColor(0,0,0,0),t.depthMask(!0),t.depthFunc(t.LESS),t.clearDepth(1),t.stencilMask(4294967295),t.stencilFunc(t.ALWAYS,0,4294967295),t.stencilOp(t.KEEP,t.KEEP,t.KEEP),t.clearStencil(0),t.cullFace(t.BACK),t.frontFace(t.CCW),t.polygonOffset(0,0),t.activeTexture(t.TEXTURE0),t.bindFramebuffer(t.FRAMEBUFFER,null),!0===i&&(t.bindFramebuffer(t.DRAW_FRAMEBUFFER,null),t.bindFramebuffer(t.READ_FRAMEBUFFER,null)),t.useProgram(null),t.lineWidth(1),t.scissor(0,0,t.canvas.width,t.canvas.height),t.viewport(0,0,t.canvas.width,t.canvas.height),a={},O=null,P={},l=null,c={},h=null,u=!1,d=null,p=null,m=null,f=null,g=null,v=null,y=null,x=!1,b=null,T=null,A=null,M=null,E=null,F.set(0,0,t.canvas.width,t.canvas.height),D.set(0,0,t.canvas.width,t.canvas.height),s.reset(),r.reset(),o.reset()}}}var On=n(3);function Pn(t,e,n,i,s,r,o){const a=s.isWebGL2,l=s.maxTextures,c=s.maxCubemapSize,h=s.maxTextureSize,u=s.maxSamples,d=new WeakMap;let p,_=!1;try{_=\\\\\\\"undefined\\\\\\\"!=typeof OffscreenCanvas&&null!==new OffscreenCanvas(1,1).getContext(\\\\\\\"2d\\\\\\\")}catch(t){}function m(t,e){return _?new OffscreenCanvas(t,e):Object(It.b)(\\\\\\\"canvas\\\\\\\")}function f(t,e,n,i){let s=1;if((t.width>i||t.height>i)&&(s=i/Math.max(t.width,t.height)),s<1||!0===e){if(\\\\\\\"undefined\\\\\\\"!=typeof HTMLImageElement&&t instanceof HTMLImageElement||\\\\\\\"undefined\\\\\\\"!=typeof HTMLCanvasElement&&t instanceof HTMLCanvasElement||\\\\\\\"undefined\\\\\\\"!=typeof ImageBitmap&&t instanceof ImageBitmap){const i=e?On.g:Math.floor,r=i(s*t.width),o=i(s*t.height);void 0===p&&(p=m(r,o));const a=n?m(r,o):p;a.width=r,a.height=o;return a.getContext(\\\\\\\"2d\\\\\\\").drawImage(t,0,0,r,o),console.warn(\\\\\\\"THREE.WebGLRenderer: Texture has been resized from (\\\\\\\"+t.width+\\\\\\\"x\\\\\\\"+t.height+\\\\\\\") to (\\\\\\\"+r+\\\\\\\"x\\\\\\\"+o+\\\\\\\").\\\\\\\"),a}return\\\\\\\"data\\\\\\\"in t&&console.warn(\\\\\\\"THREE.WebGLRenderer: Image in DataTexture is too big (\\\\\\\"+t.width+\\\\\\\"x\\\\\\\"+t.height+\\\\\\\").\\\\\\\"),t}return t}function g(t){return On.i(t.width)&&On.i(t.height)}function v(t,e){return t.generateMipmaps&&e&&t.minFilter!==w.ob&&t.minFilter!==w.V}function y(e,n,s,r,o=1){t.generateMipmap(e);i.get(n).__maxMipLevel=Math.log2(Math.max(s,r,o))}function x(n,i,s,r){if(!1===a)return i;if(null!==n){if(void 0!==t[n])return t[n];console.warn(\\\\\\\"THREE.WebGLRenderer: Attempt to use non-existing WebGL internal format '\\\\\\\"+n+\\\\\\\"'\\\\\\\")}let o=i;return i===t.RED&&(s===t.FLOAT&&(o=t.R32F),s===t.HALF_FLOAT&&(o=t.R16F),s===t.UNSIGNED_BYTE&&(o=t.R8)),i===t.RGB&&(s===t.FLOAT&&(o=t.RGB32F),s===t.HALF_FLOAT&&(o=t.RGB16F),s===t.UNSIGNED_BYTE&&(o=t.RGB8)),i===t.RGBA&&(s===t.FLOAT&&(o=t.RGBA32F),s===t.HALF_FLOAT&&(o=t.RGBA16F),s===t.UNSIGNED_BYTE&&(o=r===w.ld?t.SRGB8_ALPHA8:t.RGBA8)),o!==t.R16F&&o!==t.R32F&&o!==t.RGBA16F&&o!==t.RGBA32F||e.get(\\\\\\\"EXT_color_buffer_float\\\\\\\"),o}function b(e){return e===w.ob||e===w.sb||e===w.rb?t.NEAREST:t.LINEAR}function T(e){const n=e.target;n.removeEventListener(\\\\\\\"dispose\\\\\\\",T),function(e){const n=i.get(e);if(void 0===n.__webglInit)return;t.deleteTexture(n.__webglTexture),i.remove(e)}(n),n.isVideoTexture&&d.delete(n),o.memory.textures--}function A(e){const n=e.target;n.removeEventListener(\\\\\\\"dispose\\\\\\\",A),function(e){const n=e.texture,s=i.get(e),r=i.get(n);if(!e)return;void 0!==r.__webglTexture&&(t.deleteTexture(r.__webglTexture),o.memory.textures--);e.depthTexture&&e.depthTexture.dispose();if(e.isWebGLCubeRenderTarget)for(let e=0;e<6;e++)t.deleteFramebuffer(s.__webglFramebuffer[e]),s.__webglDepthbuffer&&t.deleteRenderbuffer(s.__webglDepthbuffer[e]);else t.deleteFramebuffer(s.__webglFramebuffer),s.__webglDepthbuffer&&t.deleteRenderbuffer(s.__webglDepthbuffer),s.__webglMultisampledFramebuffer&&t.deleteFramebuffer(s.__webglMultisampledFramebuffer),s.__webglColorRenderbuffer&&t.deleteRenderbuffer(s.__webglColorRenderbuffer),s.__webglDepthRenderbuffer&&t.deleteRenderbuffer(s.__webglDepthRenderbuffer);if(e.isWebGLMultipleRenderTargets)for(let e=0,s=n.length;e<s;e++){const s=i.get(n[e]);s.__webglTexture&&(t.deleteTexture(s.__webglTexture),o.memory.textures--),i.remove(n[e])}i.remove(n),i.remove(e)}(n)}let M=0;function E(e,s){const r=i.get(e);if(e.isVideoTexture&&function(t){const e=o.render.frame;d.get(t)!==e&&(d.set(t,e),t.update())}(e),e.version>0&&r.__version!==e.version){const t=e.image;if(void 0===t)console.warn(\\\\\\\"THREE.WebGLRenderer: Texture marked for update but image is undefined\\\\\\\");else{if(!1!==t.complete)return void P(r,e,s);console.warn(\\\\\\\"THREE.WebGLRenderer: Texture marked for update but image is incomplete\\\\\\\")}}n.activeTexture(t.TEXTURE0+s),n.bindTexture(t.TEXTURE_2D,r.__webglTexture)}function S(e,s){const o=i.get(e);e.version>0&&o.__version!==e.version?function(e,i,s){if(6!==i.image.length)return;O(e,i),n.activeTexture(t.TEXTURE0+s),n.bindTexture(t.TEXTURE_CUBE_MAP,e.__webglTexture),t.pixelStorei(t.UNPACK_FLIP_Y_WEBGL,i.flipY),t.pixelStorei(t.UNPACK_PREMULTIPLY_ALPHA_WEBGL,i.premultiplyAlpha),t.pixelStorei(t.UNPACK_ALIGNMENT,i.unpackAlignment),t.pixelStorei(t.UNPACK_COLORSPACE_CONVERSION_WEBGL,t.NONE);const o=i&&(i.isCompressedTexture||i.image[0].isCompressedTexture),l=i.image[0]&&i.image[0].isDataTexture,h=[];for(let t=0;t<6;t++)h[t]=o||l?l?i.image[t].image:i.image[t]:f(i.image[t],!1,!0,c);const u=h[0],d=g(u)||a,p=r.convert(i.format),_=r.convert(i.type),m=x(i.internalFormat,p,_,i.encoding);let b;if(L(t.TEXTURE_CUBE_MAP,i,d),o){for(let e=0;e<6;e++){b=h[e].mipmaps;for(let s=0;s<b.length;s++){const r=b[s];i.format!==w.Ib&&i.format!==w.ic?null!==p?n.compressedTexImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X+e,s,m,r.width,r.height,0,r.data):console.warn(\\\\\\\"THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .setTextureCube()\\\\\\\"):n.texImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X+e,s,m,r.width,r.height,0,p,_,r.data)}}e.__maxMipLevel=b.length-1}else{b=i.mipmaps;for(let e=0;e<6;e++)if(l){n.texImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X+e,0,m,h[e].width,h[e].height,0,p,_,h[e].data);for(let i=0;i<b.length;i++){const s=b[i].image[e].image;n.texImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X+e,i+1,m,s.width,s.height,0,p,_,s.data)}}else{n.texImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X+e,0,m,p,_,h[e]);for(let i=0;i<b.length;i++){const s=b[i];n.texImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X+e,i+1,m,p,_,s.image[e])}}e.__maxMipLevel=b.length}v(i,d)&&y(t.TEXTURE_CUBE_MAP,i,u.width,u.height);e.__version=i.version,i.onUpdate&&i.onUpdate(i)}(o,e,s):(n.activeTexture(t.TEXTURE0+s),n.bindTexture(t.TEXTURE_CUBE_MAP,o.__webglTexture))}const C={[w.wc]:t.REPEAT,[w.n]:t.CLAMP_TO_EDGE,[w.kb]:t.MIRRORED_REPEAT},N={[w.ob]:t.NEAREST,[w.sb]:t.NEAREST_MIPMAP_NEAREST,[w.rb]:t.NEAREST_MIPMAP_LINEAR,[w.V]:t.LINEAR,[w.Z]:t.LINEAR_MIPMAP_NEAREST,[w.Y]:t.LINEAR_MIPMAP_LINEAR};function L(n,r,o){if(o?(t.texParameteri(n,t.TEXTURE_WRAP_S,C[r.wrapS]),t.texParameteri(n,t.TEXTURE_WRAP_T,C[r.wrapT]),n!==t.TEXTURE_3D&&n!==t.TEXTURE_2D_ARRAY||t.texParameteri(n,t.TEXTURE_WRAP_R,C[r.wrapR]),t.texParameteri(n,t.TEXTURE_MAG_FILTER,N[r.magFilter]),t.texParameteri(n,t.TEXTURE_MIN_FILTER,N[r.minFilter])):(t.texParameteri(n,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(n,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE),n!==t.TEXTURE_3D&&n!==t.TEXTURE_2D_ARRAY||t.texParameteri(n,t.TEXTURE_WRAP_R,t.CLAMP_TO_EDGE),r.wrapS===w.n&&r.wrapT===w.n||console.warn(\\\\\\\"THREE.WebGLRenderer: Texture is not power of two. Texture.wrapS and Texture.wrapT should be set to THREE.ClampToEdgeWrapping.\\\\\\\"),t.texParameteri(n,t.TEXTURE_MAG_FILTER,b(r.magFilter)),t.texParameteri(n,t.TEXTURE_MIN_FILTER,b(r.minFilter)),r.minFilter!==w.ob&&r.minFilter!==w.V&&console.warn(\\\\\\\"THREE.WebGLRenderer: Texture is not power of two. Texture.minFilter should be set to THREE.NearestFilter or THREE.LinearFilter.\\\\\\\")),!0===e.has(\\\\\\\"EXT_texture_filter_anisotropic\\\\\\\")){const o=e.get(\\\\\\\"EXT_texture_filter_anisotropic\\\\\\\");if(r.type===w.G&&!1===e.has(\\\\\\\"OES_texture_float_linear\\\\\\\"))return;if(!1===a&&r.type===w.M&&!1===e.has(\\\\\\\"OES_texture_half_float_linear\\\\\\\"))return;(r.anisotropy>1||i.get(r).__currentAnisotropy)&&(t.texParameterf(n,o.TEXTURE_MAX_ANISOTROPY_EXT,Math.min(r.anisotropy,s.getMaxAnisotropy())),i.get(r).__currentAnisotropy=r.anisotropy)}}function O(e,n){void 0===e.__webglInit&&(e.__webglInit=!0,n.addEventListener(\\\\\\\"dispose\\\\\\\",T),e.__webglTexture=t.createTexture(),o.memory.textures++)}function P(e,i,s){let o=t.TEXTURE_2D;i.isDataTexture2DArray&&(o=t.TEXTURE_2D_ARRAY),i.isDataTexture3D&&(o=t.TEXTURE_3D),O(e,i),n.activeTexture(t.TEXTURE0+s),n.bindTexture(o,e.__webglTexture),t.pixelStorei(t.UNPACK_FLIP_Y_WEBGL,i.flipY),t.pixelStorei(t.UNPACK_PREMULTIPLY_ALPHA_WEBGL,i.premultiplyAlpha),t.pixelStorei(t.UNPACK_ALIGNMENT,i.unpackAlignment),t.pixelStorei(t.UNPACK_COLORSPACE_CONVERSION_WEBGL,t.NONE);const l=function(t){return!a&&(t.wrapS!==w.n||t.wrapT!==w.n||t.minFilter!==w.ob&&t.minFilter!==w.V)}(i)&&!1===g(i.image),c=f(i.image,l,!1,h),u=g(c)||a,d=r.convert(i.format);let p,_=r.convert(i.type),m=x(i.internalFormat,d,_,i.encoding);L(o,i,u);const b=i.mipmaps;if(i.isDepthTexture)m=t.DEPTH_COMPONENT,a?m=i.type===w.G?t.DEPTH_COMPONENT32F:i.type===w.bd?t.DEPTH_COMPONENT24:i.type===w.ad?t.DEPTH24_STENCIL8:t.DEPTH_COMPONENT16:i.type===w.G&&console.error(\\\\\\\"WebGLRenderer: Floating point depth texture requires WebGL2.\\\\\\\"),i.format===w.x&&m===t.DEPTH_COMPONENT&&i.type!==w.fd&&i.type!==w.bd&&(console.warn(\\\\\\\"THREE.WebGLRenderer: Use UnsignedShortType or UnsignedIntType for DepthFormat DepthTexture.\\\\\\\"),i.type=w.fd,_=r.convert(i.type)),i.format===w.y&&m===t.DEPTH_COMPONENT&&(m=t.DEPTH_STENCIL,i.type!==w.ad&&(console.warn(\\\\\\\"THREE.WebGLRenderer: Use UnsignedInt248Type for DepthStencilFormat DepthTexture.\\\\\\\"),i.type=w.ad,_=r.convert(i.type))),n.texImage2D(t.TEXTURE_2D,0,m,c.width,c.height,0,d,_,null);else if(i.isDataTexture)if(b.length>0&&u){for(let e=0,i=b.length;e<i;e++)p=b[e],n.texImage2D(t.TEXTURE_2D,e,m,p.width,p.height,0,d,_,p.data);i.generateMipmaps=!1,e.__maxMipLevel=b.length-1}else n.texImage2D(t.TEXTURE_2D,0,m,c.width,c.height,0,d,_,c.data),e.__maxMipLevel=0;else if(i.isCompressedTexture){for(let e=0,s=b.length;e<s;e++)p=b[e],i.format!==w.Ib&&i.format!==w.ic?null!==d?n.compressedTexImage2D(t.TEXTURE_2D,e,m,p.width,p.height,0,p.data):console.warn(\\\\\\\"THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()\\\\\\\"):n.texImage2D(t.TEXTURE_2D,e,m,p.width,p.height,0,d,_,p.data);e.__maxMipLevel=b.length-1}else if(i.isDataTexture2DArray)n.texImage3D(t.TEXTURE_2D_ARRAY,0,m,c.width,c.height,c.depth,0,d,_,c.data),e.__maxMipLevel=0;else if(i.isDataTexture3D)n.texImage3D(t.TEXTURE_3D,0,m,c.width,c.height,c.depth,0,d,_,c.data),e.__maxMipLevel=0;else if(b.length>0&&u){for(let e=0,i=b.length;e<i;e++)p=b[e],n.texImage2D(t.TEXTURE_2D,e,m,d,_,p);i.generateMipmaps=!1,e.__maxMipLevel=b.length-1}else n.texImage2D(t.TEXTURE_2D,0,m,d,_,c),e.__maxMipLevel=0;v(i,u)&&y(o,i,c.width,c.height),e.__version=i.version,i.onUpdate&&i.onUpdate(i)}function R(e,s,o,a,l){const c=r.convert(o.format),h=r.convert(o.type),u=x(o.internalFormat,c,h,o.encoding);l===t.TEXTURE_3D||l===t.TEXTURE_2D_ARRAY?n.texImage3D(l,0,u,s.width,s.height,s.depth,0,c,h,null):n.texImage2D(l,0,u,s.width,s.height,0,c,h,null),n.bindFramebuffer(t.FRAMEBUFFER,e),t.framebufferTexture2D(t.FRAMEBUFFER,a,l,i.get(o).__webglTexture,0),n.bindFramebuffer(t.FRAMEBUFFER,null)}function I(e,n,i){if(t.bindRenderbuffer(t.RENDERBUFFER,e),n.depthBuffer&&!n.stencilBuffer){let s=t.DEPTH_COMPONENT16;if(i){const e=n.depthTexture;e&&e.isDepthTexture&&(e.type===w.G?s=t.DEPTH_COMPONENT32F:e.type===w.bd&&(s=t.DEPTH_COMPONENT24));const i=D(n);t.renderbufferStorageMultisample(t.RENDERBUFFER,i,s,n.width,n.height)}else t.renderbufferStorage(t.RENDERBUFFER,s,n.width,n.height);t.framebufferRenderbuffer(t.FRAMEBUFFER,t.DEPTH_ATTACHMENT,t.RENDERBUFFER,e)}else if(n.depthBuffer&&n.stencilBuffer){if(i){const e=D(n);t.renderbufferStorageMultisample(t.RENDERBUFFER,e,t.DEPTH24_STENCIL8,n.width,n.height)}else t.renderbufferStorage(t.RENDERBUFFER,t.DEPTH_STENCIL,n.width,n.height);t.framebufferRenderbuffer(t.FRAMEBUFFER,t.DEPTH_STENCIL_ATTACHMENT,t.RENDERBUFFER,e)}else{const e=!0===n.isWebGLMultipleRenderTargets?n.texture[0]:n.texture,s=r.convert(e.format),o=r.convert(e.type),a=x(e.internalFormat,s,o,e.encoding);if(i){const e=D(n);t.renderbufferStorageMultisample(t.RENDERBUFFER,e,a,n.width,n.height)}else t.renderbufferStorage(t.RENDERBUFFER,a,n.width,n.height)}t.bindRenderbuffer(t.RENDERBUFFER,null)}function F(e){const s=i.get(e),r=!0===e.isWebGLCubeRenderTarget;if(e.depthTexture){if(r)throw new Error(\\\\\\\"target.depthTexture not supported in Cube render targets\\\\\\\");!function(e,s){if(s&&s.isWebGLCubeRenderTarget)throw new Error(\\\\\\\"Depth Texture with cube render targets is not supported\\\\\\\");if(n.bindFramebuffer(t.FRAMEBUFFER,e),!s.depthTexture||!s.depthTexture.isDepthTexture)throw new Error(\\\\\\\"renderTarget.depthTexture must be an instance of THREE.DepthTexture\\\\\\\");i.get(s.depthTexture).__webglTexture&&s.depthTexture.image.width===s.width&&s.depthTexture.image.height===s.height||(s.depthTexture.image.width=s.width,s.depthTexture.image.height=s.height,s.depthTexture.needsUpdate=!0),E(s.depthTexture,0);const r=i.get(s.depthTexture).__webglTexture;if(s.depthTexture.format===w.x)t.framebufferTexture2D(t.FRAMEBUFFER,t.DEPTH_ATTACHMENT,t.TEXTURE_2D,r,0);else{if(s.depthTexture.format!==w.y)throw new Error(\\\\\\\"Unknown depthTexture format\\\\\\\");t.framebufferTexture2D(t.FRAMEBUFFER,t.DEPTH_STENCIL_ATTACHMENT,t.TEXTURE_2D,r,0)}}(s.__webglFramebuffer,e)}else if(r){s.__webglDepthbuffer=[];for(let i=0;i<6;i++)n.bindFramebuffer(t.FRAMEBUFFER,s.__webglFramebuffer[i]),s.__webglDepthbuffer[i]=t.createRenderbuffer(),I(s.__webglDepthbuffer[i],e,!1)}else n.bindFramebuffer(t.FRAMEBUFFER,s.__webglFramebuffer),s.__webglDepthbuffer=t.createRenderbuffer(),I(s.__webglDepthbuffer,e,!1);n.bindFramebuffer(t.FRAMEBUFFER,null)}function D(t){return a&&t.isWebGLMultisampleRenderTarget?Math.min(u,t.samples):0}let B=!1,z=!1;this.allocateTextureUnit=function(){const t=M;return t>=l&&console.warn(\\\\\\\"THREE.WebGLTextures: Trying to use \\\\\\\"+t+\\\\\\\" texture units while this GPU supports only \\\\\\\"+l),M+=1,t},this.resetTextureUnits=function(){M=0},this.setTexture2D=E,this.setTexture2DArray=function(e,s){const r=i.get(e);e.version>0&&r.__version!==e.version?P(r,e,s):(n.activeTexture(t.TEXTURE0+s),n.bindTexture(t.TEXTURE_2D_ARRAY,r.__webglTexture))},this.setTexture3D=function(e,s){const r=i.get(e);e.version>0&&r.__version!==e.version?P(r,e,s):(n.activeTexture(t.TEXTURE0+s),n.bindTexture(t.TEXTURE_3D,r.__webglTexture))},this.setTextureCube=S,this.setupRenderTarget=function(e){const l=e.texture,c=i.get(e),h=i.get(l);e.addEventListener(\\\\\\\"dispose\\\\\\\",A),!0!==e.isWebGLMultipleRenderTargets&&(h.__webglTexture=t.createTexture(),h.__version=l.version,o.memory.textures++);const u=!0===e.isWebGLCubeRenderTarget,d=!0===e.isWebGLMultipleRenderTargets,p=!0===e.isWebGLMultisampleRenderTarget,_=l.isDataTexture3D||l.isDataTexture2DArray,m=g(e)||a;if(!a||l.format!==w.ic||l.type!==w.G&&l.type!==w.M||(l.format=w.Ib,console.warn(\\\\\\\"THREE.WebGLRenderer: Rendering to textures with RGB format is not supported. Using RGBA format instead.\\\\\\\")),u){c.__webglFramebuffer=[];for(let e=0;e<6;e++)c.__webglFramebuffer[e]=t.createFramebuffer()}else if(c.__webglFramebuffer=t.createFramebuffer(),d)if(s.drawBuffers){const n=e.texture;for(let e=0,s=n.length;e<s;e++){const s=i.get(n[e]);void 0===s.__webglTexture&&(s.__webglTexture=t.createTexture(),o.memory.textures++)}}else console.warn(\\\\\\\"THREE.WebGLRenderer: WebGLMultipleRenderTargets can only be used with WebGL2 or WEBGL_draw_buffers extension.\\\\\\\");else if(p)if(a){c.__webglMultisampledFramebuffer=t.createFramebuffer(),c.__webglColorRenderbuffer=t.createRenderbuffer(),t.bindRenderbuffer(t.RENDERBUFFER,c.__webglColorRenderbuffer);const i=r.convert(l.format),s=r.convert(l.type),o=x(l.internalFormat,i,s,l.encoding),a=D(e);t.renderbufferStorageMultisample(t.RENDERBUFFER,a,o,e.width,e.height),n.bindFramebuffer(t.FRAMEBUFFER,c.__webglMultisampledFramebuffer),t.framebufferRenderbuffer(t.FRAMEBUFFER,t.COLOR_ATTACHMENT0,t.RENDERBUFFER,c.__webglColorRenderbuffer),t.bindRenderbuffer(t.RENDERBUFFER,null),e.depthBuffer&&(c.__webglDepthRenderbuffer=t.createRenderbuffer(),I(c.__webglDepthRenderbuffer,e,!0)),n.bindFramebuffer(t.FRAMEBUFFER,null)}else console.warn(\\\\\\\"THREE.WebGLRenderer: WebGLMultisampleRenderTarget can only be used with WebGL2.\\\\\\\");if(u){n.bindTexture(t.TEXTURE_CUBE_MAP,h.__webglTexture),L(t.TEXTURE_CUBE_MAP,l,m);for(let n=0;n<6;n++)R(c.__webglFramebuffer[n],e,l,t.COLOR_ATTACHMENT0,t.TEXTURE_CUBE_MAP_POSITIVE_X+n);v(l,m)&&y(t.TEXTURE_CUBE_MAP,l,e.width,e.height),n.unbindTexture()}else if(d){const s=e.texture;for(let r=0,o=s.length;r<o;r++){const o=s[r],a=i.get(o);n.bindTexture(t.TEXTURE_2D,a.__webglTexture),L(t.TEXTURE_2D,o,m),R(c.__webglFramebuffer,e,o,t.COLOR_ATTACHMENT0+r,t.TEXTURE_2D),v(o,m)&&y(t.TEXTURE_2D,o,e.width,e.height)}n.unbindTexture()}else{let i=t.TEXTURE_2D;if(_)if(a){i=l.isDataTexture3D?t.TEXTURE_3D:t.TEXTURE_2D_ARRAY}else console.warn(\\\\\\\"THREE.DataTexture3D and THREE.DataTexture2DArray only supported with WebGL2.\\\\\\\");n.bindTexture(i,h.__webglTexture),L(i,l,m),R(c.__webglFramebuffer,e,l,t.COLOR_ATTACHMENT0,i),v(l,m)&&y(i,l,e.width,e.height,e.depth),n.unbindTexture()}e.depthBuffer&&F(e)},this.updateRenderTargetMipmap=function(e){const s=g(e)||a,r=!0===e.isWebGLMultipleRenderTargets?e.texture:[e.texture];for(let o=0,a=r.length;o<a;o++){const a=r[o];if(v(a,s)){const s=e.isWebGLCubeRenderTarget?t.TEXTURE_CUBE_MAP:t.TEXTURE_2D,r=i.get(a).__webglTexture;n.bindTexture(s,r),y(s,a,e.width,e.height),n.unbindTexture()}}},this.updateMultisampleRenderTarget=function(e){if(e.isWebGLMultisampleRenderTarget)if(a){const s=e.width,r=e.height;let o=t.COLOR_BUFFER_BIT;e.depthBuffer&&(o|=t.DEPTH_BUFFER_BIT),e.stencilBuffer&&(o|=t.STENCIL_BUFFER_BIT);const a=i.get(e);n.bindFramebuffer(t.READ_FRAMEBUFFER,a.__webglMultisampledFramebuffer),n.bindFramebuffer(t.DRAW_FRAMEBUFFER,a.__webglFramebuffer),t.blitFramebuffer(0,0,s,r,0,0,s,r,o,t.NEAREST),n.bindFramebuffer(t.READ_FRAMEBUFFER,null),n.bindFramebuffer(t.DRAW_FRAMEBUFFER,a.__webglMultisampledFramebuffer)}else console.warn(\\\\\\\"THREE.WebGLRenderer: WebGLMultisampleRenderTarget can only be used with WebGL2.\\\\\\\")},this.safeSetTexture2D=function(t,e){t&&t.isWebGLRenderTarget&&(!1===B&&(console.warn(\\\\\\\"THREE.WebGLTextures.safeSetTexture2D: don't use render targets as textures. Use their .texture property instead.\\\\\\\"),B=!0),t=t.texture),E(t,e)},this.safeSetTextureCube=function(t,e){t&&t.isWebGLCubeRenderTarget&&(!1===z&&(console.warn(\\\\\\\"THREE.WebGLTextures.safeSetTextureCube: don't use cube render targets as textures. Use their .texture property instead.\\\\\\\"),z=!0),t=t.texture),S(t,e)}}function Rn(t,e,n){const i=n.isWebGL2;return{convert:function(n){let s;if(n===w.Zc)return t.UNSIGNED_BYTE;if(n===w.cd)return t.UNSIGNED_SHORT_4_4_4_4;if(n===w.dd)return t.UNSIGNED_SHORT_5_5_5_1;if(n===w.ed)return t.UNSIGNED_SHORT_5_6_5;if(n===w.l)return t.BYTE;if(n===w.Mc)return t.SHORT;if(n===w.fd)return t.UNSIGNED_SHORT;if(n===w.N)return t.INT;if(n===w.bd)return t.UNSIGNED_INT;if(n===w.G)return t.FLOAT;if(n===w.M)return i?t.HALF_FLOAT:(s=e.get(\\\\\\\"OES_texture_half_float\\\\\\\"),null!==s?s.HALF_FLOAT_OES:null);if(n===w.f)return t.ALPHA;if(n===w.ic)return t.RGB;if(n===w.Ib)return t.RGBA;if(n===w.gb)return t.LUMINANCE;if(n===w.fb)return t.LUMINANCE_ALPHA;if(n===w.x)return t.DEPTH_COMPONENT;if(n===w.y)return t.DEPTH_STENCIL;if(n===w.tc)return t.RED;if(n===w.uc)return t.RED_INTEGER;if(n===w.rc)return t.RG;if(n===w.sc)return t.RG_INTEGER;if(n===w.jc)return t.RGB_INTEGER;if(n===w.Jb)return t.RGBA_INTEGER;if(n===w.qc||n===w.cc||n===w.dc||n===w.ec){if(s=e.get(\\\\\\\"WEBGL_compressed_texture_s3tc\\\\\\\"),null===s)return null;if(n===w.qc)return s.COMPRESSED_RGB_S3TC_DXT1_EXT;if(n===w.cc)return s.COMPRESSED_RGBA_S3TC_DXT1_EXT;if(n===w.dc)return s.COMPRESSED_RGBA_S3TC_DXT3_EXT;if(n===w.ec)return s.COMPRESSED_RGBA_S3TC_DXT5_EXT}if(n===w.pc||n===w.oc||n===w.bc||n===w.ac){if(s=e.get(\\\\\\\"WEBGL_compressed_texture_pvrtc\\\\\\\"),null===s)return null;if(n===w.pc)return s.COMPRESSED_RGB_PVRTC_4BPPV1_IMG;if(n===w.oc)return s.COMPRESSED_RGB_PVRTC_2BPPV1_IMG;if(n===w.bc)return s.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;if(n===w.ac)return s.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG}if(n===w.mc)return s=e.get(\\\\\\\"WEBGL_compressed_texture_etc1\\\\\\\"),null!==s?s.COMPRESSED_RGB_ETC1_WEBGL:null;if((n===w.nc||n===w.Zb)&&(s=e.get(\\\\\\\"WEBGL_compressed_texture_etc\\\\\\\"),null!==s)){if(n===w.nc)return s.COMPRESSED_RGB8_ETC2;if(n===w.Zb)return s.COMPRESSED_RGBA8_ETC2_EAC}return n===w.Qb||n===w.Rb||n===w.Sb||n===w.Tb||n===w.Ub||n===w.Vb||n===w.Wb||n===w.Xb||n===w.Lb||n===w.Mb||n===w.Nb||n===w.Kb||n===w.Ob||n===w.Pb||n===w.Ec||n===w.Fc||n===w.Gc||n===w.Hc||n===w.Ic||n===w.Jc||n===w.Kc||n===w.Lc||n===w.zc||n===w.Ac||n===w.Bc||n===w.yc||n===w.Cc||n===w.Dc?(s=e.get(\\\\\\\"WEBGL_compressed_texture_astc\\\\\\\"),null!==s?n:null):n===w.Yb?(s=e.get(\\\\\\\"EXT_texture_compression_bptc\\\\\\\"),null!==s?n:null):n===w.ad?i?t.UNSIGNED_INT_24_8:(s=e.get(\\\\\\\"WEBGL_depth_texture\\\\\\\"),null!==s?s.UNSIGNED_INT_24_8_WEBGL:null):void 0}}}class In extends tt.a{constructor(t=[]){super(),this.cameras=t}}In.prototype.isArrayCamera=!0;var Fn=n(21);const Dn={type:\\\\\\\"move\\\\\\\"};class Bn{constructor(){this._targetRay=null,this._grip=null,this._hand=null}getHandSpace(){return null===this._hand&&(this._hand=new Fn.a,this._hand.matrixAutoUpdate=!1,this._hand.visible=!1,this._hand.joints={},this._hand.inputState={pinching:!1}),this._hand}getTargetRaySpace(){return null===this._targetRay&&(this._targetRay=new Fn.a,this._targetRay.matrixAutoUpdate=!1,this._targetRay.visible=!1,this._targetRay.hasLinearVelocity=!1,this._targetRay.linearVelocity=new p.a,this._targetRay.hasAngularVelocity=!1,this._targetRay.angularVelocity=new p.a),this._targetRay}getGripSpace(){return null===this._grip&&(this._grip=new Fn.a,this._grip.matrixAutoUpdate=!1,this._grip.visible=!1,this._grip.hasLinearVelocity=!1,this._grip.linearVelocity=new p.a,this._grip.hasAngularVelocity=!1,this._grip.angularVelocity=new p.a),this._grip}dispatchEvent(t){return null!==this._targetRay&&this._targetRay.dispatchEvent(t),null!==this._grip&&this._grip.dispatchEvent(t),null!==this._hand&&this._hand.dispatchEvent(t),this}disconnect(t){return this.dispatchEvent({type:\\\\\\\"disconnected\\\\\\\",data:t}),null!==this._targetRay&&(this._targetRay.visible=!1),null!==this._grip&&(this._grip.visible=!1),null!==this._hand&&(this._hand.visible=!1),this}update(t,e,n){let i=null,s=null,r=null;const o=this._targetRay,a=this._grip,l=this._hand;if(t&&\\\\\\\"visible-blurred\\\\\\\"!==e.session.visibilityState)if(null!==o&&(i=e.getPose(t.targetRaySpace,n),null!==i&&(o.matrix.fromArray(i.transform.matrix),o.matrix.decompose(o.position,o.rotation,o.scale),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(Dn))),l&&t.hand){r=!0;for(const i of t.hand.values()){const t=e.getJointPose(i,n);if(void 0===l.joints[i.jointName]){const t=new Fn.a;t.matrixAutoUpdate=!1,t.visible=!1,l.joints[i.jointName]=t,l.add(t)}const s=l.joints[i.jointName];null!==t&&(s.matrix.fromArray(t.transform.matrix),s.matrix.decompose(s.position,s.rotation,s.scale),s.jointRadius=t.radius),s.visible=null!==t}const i=l.joints[\\\\\\\"index-finger-tip\\\\\\\"],s=l.joints[\\\\\\\"thumb-tip\\\\\\\"],o=i.position.distanceTo(s.position),a=.02,c=.005;l.inputState.pinching&&o>a+c?(l.inputState.pinching=!1,this.dispatchEvent({type:\\\\\\\"pinchend\\\\\\\",handedness:t.handedness,target:this})):!l.inputState.pinching&&o<=a-c&&(l.inputState.pinching=!0,this.dispatchEvent({type:\\\\\\\"pinchstart\\\\\\\",handedness:t.handedness,target:this}))}else null!==a&&t.gripSpace&&(s=e.getPose(t.gripSpace,n),null!==s&&(a.matrix.fromArray(s.transform.matrix),a.matrix.decompose(a.position,a.rotation,a.scale),s.linearVelocity?(a.hasLinearVelocity=!0,a.linearVelocity.copy(s.linearVelocity)):a.hasLinearVelocity=!1,s.angularVelocity?(a.hasAngularVelocity=!0,a.angularVelocity.copy(s.angularVelocity)):a.hasAngularVelocity=!1));return null!==o&&(o.visible=null!==i),null!==a&&(a.visible=null!==s),null!==l&&(l.visible=null!==r),this}}class zn extends J.a{constructor(t,e){super();const n=this,i=t.state;let s=null,r=1,o=null,a=\\\\\\\"local-floor\\\\\\\",l=null,c=null,h=null,u=null,d=null,m=!1,f=null,g=null,v=null,y=null,x=null,b=null;const w=[],T=new Map,A=new tt.a;A.layers.enable(1),A.viewport=new _.a;const E=new tt.a;E.layers.enable(2),E.viewport=new _.a;const S=[A,E],C=new In;C.layers.enable(1),C.layers.enable(2);let N=null,L=null;function O(t){const e=T.get(t.inputSource);e&&e.dispatchEvent({type:t.type,data:t.inputSource})}function P(){T.forEach((function(t,e){t.disconnect(e)})),T.clear(),N=null,L=null,i.bindXRFramebuffer(null),t.setRenderTarget(t.getRenderTarget()),h&&e.deleteFramebuffer(h),f&&e.deleteFramebuffer(f),g&&e.deleteRenderbuffer(g),v&&e.deleteRenderbuffer(v),h=null,f=null,g=null,v=null,d=null,u=null,c=null,s=null,z.stop(),n.isPresenting=!1,n.dispatchEvent({type:\\\\\\\"sessionend\\\\\\\"})}function R(t){const e=s.inputSources;for(let t=0;t<w.length;t++)T.set(e[t],w[t]);for(let e=0;e<t.removed.length;e++){const n=t.removed[e],i=T.get(n);i&&(i.dispatchEvent({type:\\\\\\\"disconnected\\\\\\\",data:n}),T.delete(n))}for(let e=0;e<t.added.length;e++){const n=t.added[e],i=T.get(n);i&&i.dispatchEvent({type:\\\\\\\"connected\\\\\\\",data:n})}}this.cameraAutoUpdate=!0,this.enabled=!1,this.isPresenting=!1,this.getController=function(t){let e=w[t];return void 0===e&&(e=new Bn,w[t]=e),e.getTargetRaySpace()},this.getControllerGrip=function(t){let e=w[t];return void 0===e&&(e=new Bn,w[t]=e),e.getGripSpace()},this.getHand=function(t){let e=w[t];return void 0===e&&(e=new Bn,w[t]=e),e.getHandSpace()},this.setFramebufferScaleFactor=function(t){r=t,!0===n.isPresenting&&console.warn(\\\\\\\"THREE.WebXRManager: Cannot change framebuffer scale while presenting.\\\\\\\")},this.setReferenceSpaceType=function(t){a=t,!0===n.isPresenting&&console.warn(\\\\\\\"THREE.WebXRManager: Cannot change reference space type while presenting.\\\\\\\")},this.getReferenceSpace=function(){return o},this.getBaseLayer=function(){return null!==u?u:d},this.getBinding=function(){return c},this.getFrame=function(){return y},this.getSession=function(){return s},this.setSession=async function(t){if(s=t,null!==s){s.addEventListener(\\\\\\\"select\\\\\\\",O),s.addEventListener(\\\\\\\"selectstart\\\\\\\",O),s.addEventListener(\\\\\\\"selectend\\\\\\\",O),s.addEventListener(\\\\\\\"squeeze\\\\\\\",O),s.addEventListener(\\\\\\\"squeezestart\\\\\\\",O),s.addEventListener(\\\\\\\"squeezeend\\\\\\\",O),s.addEventListener(\\\\\\\"end\\\\\\\",P),s.addEventListener(\\\\\\\"inputsourceschange\\\\\\\",R);const t=e.getContextAttributes();if(!0!==t.xrCompatible&&await e.makeXRCompatible(),void 0===s.renderState.layers){const n={antialias:t.antialias,alpha:t.alpha,depth:t.depth,stencil:t.stencil,framebufferScaleFactor:r};d=new XRWebGLLayer(s,e,n),s.updateRenderState({baseLayer:d})}else if(e instanceof WebGLRenderingContext){const n={antialias:!0,alpha:t.alpha,depth:t.depth,stencil:t.stencil,framebufferScaleFactor:r};d=new XRWebGLLayer(s,e,n),s.updateRenderState({layers:[d]})}else{m=t.antialias;let n=null;t.depth&&(b=e.DEPTH_BUFFER_BIT,t.stencil&&(b|=e.STENCIL_BUFFER_BIT),x=t.stencil?e.DEPTH_STENCIL_ATTACHMENT:e.DEPTH_ATTACHMENT,n=t.stencil?e.DEPTH24_STENCIL8:e.DEPTH_COMPONENT24);const o={colorFormat:t.alpha?e.RGBA8:e.RGB8,depthFormat:n,scaleFactor:r};c=new XRWebGLBinding(s,e),u=c.createProjectionLayer(o),h=e.createFramebuffer(),s.updateRenderState({layers:[u]}),m&&(f=e.createFramebuffer(),g=e.createRenderbuffer(),e.bindRenderbuffer(e.RENDERBUFFER,g),e.renderbufferStorageMultisample(e.RENDERBUFFER,4,e.RGBA8,u.textureWidth,u.textureHeight),i.bindFramebuffer(e.FRAMEBUFFER,f),e.framebufferRenderbuffer(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.RENDERBUFFER,g),e.bindRenderbuffer(e.RENDERBUFFER,null),null!==n&&(v=e.createRenderbuffer(),e.bindRenderbuffer(e.RENDERBUFFER,v),e.renderbufferStorageMultisample(e.RENDERBUFFER,4,n,u.textureWidth,u.textureHeight),e.framebufferRenderbuffer(e.FRAMEBUFFER,x,e.RENDERBUFFER,v),e.bindRenderbuffer(e.RENDERBUFFER,null)),i.bindFramebuffer(e.FRAMEBUFFER,null))}o=await s.requestReferenceSpace(a),z.setContext(s),z.start(),n.isPresenting=!0,n.dispatchEvent({type:\\\\\\\"sessionstart\\\\\\\"})}};const I=new p.a,F=new p.a;function D(t,e){null===e?t.matrixWorld.copy(t.matrix):t.matrixWorld.multiplyMatrices(e.matrixWorld,t.matrix),t.matrixWorldInverse.copy(t.matrixWorld).invert()}this.updateCamera=function(t){if(null===s)return;C.near=E.near=A.near=t.near,C.far=E.far=A.far=t.far,N===C.near&&L===C.far||(s.updateRenderState({depthNear:C.near,depthFar:C.far}),N=C.near,L=C.far);const e=t.parent,n=C.cameras;D(C,e);for(let t=0;t<n.length;t++)D(n[t],e);C.matrixWorld.decompose(C.position,C.quaternion,C.scale),t.position.copy(C.position),t.quaternion.copy(C.quaternion),t.scale.copy(C.scale),t.matrix.copy(C.matrix),t.matrixWorld.copy(C.matrixWorld);const i=t.children;for(let t=0,e=i.length;t<e;t++)i[t].updateMatrixWorld(!0);2===n.length?function(t,e,n){I.setFromMatrixPosition(e.matrixWorld),F.setFromMatrixPosition(n.matrixWorld);const i=I.distanceTo(F),s=e.projectionMatrix.elements,r=n.projectionMatrix.elements,o=s[14]/(s[10]-1),a=s[14]/(s[10]+1),l=(s[9]+1)/s[5],c=(s[9]-1)/s[5],h=(s[8]-1)/s[0],u=(r[8]+1)/r[0],d=o*h,p=o*u,_=i/(-h+u),m=_*-h;e.matrixWorld.decompose(t.position,t.quaternion,t.scale),t.translateX(m),t.translateZ(_),t.matrixWorld.compose(t.position,t.quaternion,t.scale),t.matrixWorldInverse.copy(t.matrixWorld).invert();const f=o+_,g=a+_,v=d-m,y=p+(i-m),x=l*a/g*f,b=c*a/g*f;t.projectionMatrix.makePerspective(v,y,x,b,f,g)}(C,A,E):C.projectionMatrix.copy(A.projectionMatrix)},this.getCamera=function(){return C},this.getFoveation=function(){return null!==u?u.fixedFoveation:null!==d?d.fixedFoveation:void 0},this.setFoveation=function(t){null!==u&&(u.fixedFoveation=t),null!==d&&void 0!==d.fixedFoveation&&(d.fixedFoveation=t)};let B=null;const z=new M;z.setAnimationLoop((function(t,n){if(l=n.getViewerPose(o),y=n,null!==l){const t=l.views;null!==d&&i.bindXRFramebuffer(d.framebuffer);let n=!1;t.length!==C.cameras.length&&(C.cameras.length=0,n=!0);for(let s=0;s<t.length;s++){const r=t[s];let o=null;if(null!==d)o=d.getViewport(r);else{const t=c.getViewSubImage(u,r);i.bindXRFramebuffer(h),void 0!==t.depthStencilTexture&&e.framebufferTexture2D(e.FRAMEBUFFER,x,e.TEXTURE_2D,t.depthStencilTexture,0),e.framebufferTexture2D(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,t.colorTexture,0),o=t.viewport}const a=S[s];a.matrix.fromArray(r.transform.matrix),a.projectionMatrix.fromArray(r.projectionMatrix),a.viewport.set(o.x,o.y,o.width,o.height),0===s&&C.matrix.copy(a.matrix),!0===n&&C.cameras.push(a)}m&&(i.bindXRFramebuffer(f),null!==b&&e.clear(b))}const r=s.inputSources;for(let t=0;t<w.length;t++){const e=w[t],i=r[t];e.update(i,n,o)}if(B&&B(t,n),m){const t=u.textureWidth,n=u.textureHeight;i.bindFramebuffer(e.READ_FRAMEBUFFER,f),i.bindFramebuffer(e.DRAW_FRAMEBUFFER,h),e.invalidateFramebuffer(e.READ_FRAMEBUFFER,[x]),e.invalidateFramebuffer(e.DRAW_FRAMEBUFFER,[x]),e.blitFramebuffer(0,0,t,n,0,0,t,n,e.COLOR_BUFFER_BIT,e.NEAREST),e.invalidateFramebuffer(e.READ_FRAMEBUFFER,[e.COLOR_ATTACHMENT0]),i.bindFramebuffer(e.READ_FRAMEBUFFER,null),i.bindFramebuffer(e.DRAW_FRAMEBUFFER,null),i.bindFramebuffer(e.FRAMEBUFFER,f)}y=null})),this.setAnimationLoop=function(t){B=t},this.dispose=function(){}}}function kn(t){function e(e,n){e.opacity.value=n.opacity,n.color&&e.diffuse.value.copy(n.color),n.emissive&&e.emissive.value.copy(n.emissive).multiplyScalar(n.emissiveIntensity),n.map&&(e.map.value=n.map),n.alphaMap&&(e.alphaMap.value=n.alphaMap),n.specularMap&&(e.specularMap.value=n.specularMap),n.alphaTest>0&&(e.alphaTest.value=n.alphaTest);const i=t.get(n).envMap;if(i){e.envMap.value=i,e.flipEnvMap.value=i.isCubeTexture&&!1===i.isRenderTargetTexture?-1:1,e.reflectivity.value=n.reflectivity,e.ior.value=n.ior,e.refractionRatio.value=n.refractionRatio;const s=t.get(i).__maxMipLevel;void 0!==s&&(e.maxMipLevel.value=s)}let s,r;n.lightMap&&(e.lightMap.value=n.lightMap,e.lightMapIntensity.value=n.lightMapIntensity),n.aoMap&&(e.aoMap.value=n.aoMap,e.aoMapIntensity.value=n.aoMapIntensity),n.map?s=n.map:n.specularMap?s=n.specularMap:n.displacementMap?s=n.displacementMap:n.normalMap?s=n.normalMap:n.bumpMap?s=n.bumpMap:n.roughnessMap?s=n.roughnessMap:n.metalnessMap?s=n.metalnessMap:n.alphaMap?s=n.alphaMap:n.emissiveMap?s=n.emissiveMap:n.clearcoatMap?s=n.clearcoatMap:n.clearcoatNormalMap?s=n.clearcoatNormalMap:n.clearcoatRoughnessMap?s=n.clearcoatRoughnessMap:n.specularIntensityMap?s=n.specularIntensityMap:n.specularTintMap?s=n.specularTintMap:n.transmissionMap?s=n.transmissionMap:n.thicknessMap&&(s=n.thicknessMap),void 0!==s&&(s.isWebGLRenderTarget&&(s=s.texture),!0===s.matrixAutoUpdate&&s.updateMatrix(),e.uvTransform.value.copy(s.matrix)),n.aoMap?r=n.aoMap:n.lightMap&&(r=n.lightMap),void 0!==r&&(r.isWebGLRenderTarget&&(r=r.texture),!0===r.matrixAutoUpdate&&r.updateMatrix(),e.uv2Transform.value.copy(r.matrix))}function n(e,n){e.roughness.value=n.roughness,e.metalness.value=n.metalness,n.roughnessMap&&(e.roughnessMap.value=n.roughnessMap),n.metalnessMap&&(e.metalnessMap.value=n.metalnessMap),n.emissiveMap&&(e.emissiveMap.value=n.emissiveMap),n.bumpMap&&(e.bumpMap.value=n.bumpMap,e.bumpScale.value=n.bumpScale,n.side===w.i&&(e.bumpScale.value*=-1)),n.normalMap&&(e.normalMap.value=n.normalMap,e.normalScale.value.copy(n.normalScale),n.side===w.i&&e.normalScale.value.negate()),n.displacementMap&&(e.displacementMap.value=n.displacementMap,e.displacementScale.value=n.displacementScale,e.displacementBias.value=n.displacementBias);t.get(n).envMap&&(e.envMapIntensity.value=n.envMapIntensity)}return{refreshFogUniforms:function(t,e){t.fogColor.value.copy(e.color),e.isFog?(t.fogNear.value=e.near,t.fogFar.value=e.far):e.isFogExp2&&(t.fogDensity.value=e.density)},refreshMaterialUniforms:function(t,i,s,r,o){i.isMeshBasicMaterial?e(t,i):i.isMeshLambertMaterial?(e(t,i),function(t,e){e.emissiveMap&&(t.emissiveMap.value=e.emissiveMap)}(t,i)):i.isMeshToonMaterial?(e(t,i),function(t,e){e.gradientMap&&(t.gradientMap.value=e.gradientMap);e.emissiveMap&&(t.emissiveMap.value=e.emissiveMap);e.bumpMap&&(t.bumpMap.value=e.bumpMap,t.bumpScale.value=e.bumpScale,e.side===w.i&&(t.bumpScale.value*=-1));e.normalMap&&(t.normalMap.value=e.normalMap,t.normalScale.value.copy(e.normalScale),e.side===w.i&&t.normalScale.value.negate());e.displacementMap&&(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias)}(t,i)):i.isMeshPhongMaterial?(e(t,i),function(t,e){t.specular.value.copy(e.specular),t.shininess.value=Math.max(e.shininess,1e-4),e.emissiveMap&&(t.emissiveMap.value=e.emissiveMap);e.bumpMap&&(t.bumpMap.value=e.bumpMap,t.bumpScale.value=e.bumpScale,e.side===w.i&&(t.bumpScale.value*=-1));e.normalMap&&(t.normalMap.value=e.normalMap,t.normalScale.value.copy(e.normalScale),e.side===w.i&&t.normalScale.value.negate());e.displacementMap&&(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias)}(t,i)):i.isMeshStandardMaterial?(e(t,i),i.isMeshPhysicalMaterial?function(t,e,i){n(t,e),t.ior.value=e.ior,e.sheen>0&&(t.sheenTint.value.copy(e.sheenTint).multiplyScalar(e.sheen),t.sheenRoughness.value=e.sheenRoughness);e.clearcoat>0&&(t.clearcoat.value=e.clearcoat,t.clearcoatRoughness.value=e.clearcoatRoughness,e.clearcoatMap&&(t.clearcoatMap.value=e.clearcoatMap),e.clearcoatRoughnessMap&&(t.clearcoatRoughnessMap.value=e.clearcoatRoughnessMap),e.clearcoatNormalMap&&(t.clearcoatNormalScale.value.copy(e.clearcoatNormalScale),t.clearcoatNormalMap.value=e.clearcoatNormalMap,e.side===w.i&&t.clearcoatNormalScale.value.negate()));e.transmission>0&&(t.transmission.value=e.transmission,t.transmissionSamplerMap.value=i.texture,t.transmissionSamplerSize.value.set(i.width,i.height),e.transmissionMap&&(t.transmissionMap.value=e.transmissionMap),t.thickness.value=e.thickness,e.thicknessMap&&(t.thicknessMap.value=e.thicknessMap),t.attenuationDistance.value=e.attenuationDistance,t.attenuationTint.value.copy(e.attenuationTint));t.specularIntensity.value=e.specularIntensity,t.specularTint.value.copy(e.specularTint),e.specularIntensityMap&&(t.specularIntensityMap.value=e.specularIntensityMap);e.specularTintMap&&(t.specularTintMap.value=e.specularTintMap)}(t,i,o):n(t,i)):i.isMeshMatcapMaterial?(e(t,i),function(t,e){e.matcap&&(t.matcap.value=e.matcap);e.bumpMap&&(t.bumpMap.value=e.bumpMap,t.bumpScale.value=e.bumpScale,e.side===w.i&&(t.bumpScale.value*=-1));e.normalMap&&(t.normalMap.value=e.normalMap,t.normalScale.value.copy(e.normalScale),e.side===w.i&&t.normalScale.value.negate());e.displacementMap&&(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias)}(t,i)):i.isMeshDepthMaterial?(e(t,i),function(t,e){e.displacementMap&&(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias)}(t,i)):i.isMeshDistanceMaterial?(e(t,i),function(t,e){e.displacementMap&&(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias);t.referencePosition.value.copy(e.referencePosition),t.nearDistance.value=e.nearDistance,t.farDistance.value=e.farDistance}(t,i)):i.isMeshNormalMaterial?(e(t,i),function(t,e){e.bumpMap&&(t.bumpMap.value=e.bumpMap,t.bumpScale.value=e.bumpScale,e.side===w.i&&(t.bumpScale.value*=-1));e.normalMap&&(t.normalMap.value=e.normalMap,t.normalScale.value.copy(e.normalScale),e.side===w.i&&t.normalScale.value.negate());e.displacementMap&&(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias)}(t,i)):i.isLineBasicMaterial?(function(t,e){t.diffuse.value.copy(e.color),t.opacity.value=e.opacity}(t,i),i.isLineDashedMaterial&&function(t,e){t.dashSize.value=e.dashSize,t.totalSize.value=e.dashSize+e.gapSize,t.scale.value=e.scale}(t,i)):i.isPointsMaterial?function(t,e,n,i){t.diffuse.value.copy(e.color),t.opacity.value=e.opacity,t.size.value=e.size*n,t.scale.value=.5*i,e.map&&(t.map.value=e.map);e.alphaMap&&(t.alphaMap.value=e.alphaMap);e.alphaTest>0&&(t.alphaTest.value=e.alphaTest);let s;e.map?s=e.map:e.alphaMap&&(s=e.alphaMap);void 0!==s&&(!0===s.matrixAutoUpdate&&s.updateMatrix(),t.uvTransform.value.copy(s.matrix))}(t,i,s,r):i.isSpriteMaterial?function(t,e){t.diffuse.value.copy(e.color),t.opacity.value=e.opacity,t.rotation.value=e.rotation,e.map&&(t.map.value=e.map);e.alphaMap&&(t.alphaMap.value=e.alphaMap);e.alphaTest>0&&(t.alphaTest.value=e.alphaTest);let n;e.map?n=e.map:e.alphaMap&&(n=e.alphaMap);void 0!==n&&(!0===n.matrixAutoUpdate&&n.updateMatrix(),t.uvTransform.value.copy(n.matrix))}(t,i):i.isShadowMaterial?(t.color.value.copy(i.color),t.opacity.value=i.opacity):i.isShaderMaterial&&(i.uniformsNeedUpdate=!1)}}}function Un(t={}){const e=void 0!==t.canvas?t.canvas:function(){const t=Object(It.b)(\\\\\\\"canvas\\\\\\\");return t.style.display=\\\\\\\"block\\\\\\\",t}(),n=void 0!==t.context?t.context:null,i=void 0!==t.alpha&&t.alpha,s=void 0===t.depth||t.depth,r=void 0===t.stencil||t.stencil,o=void 0!==t.antialias&&t.antialias,a=void 0===t.premultipliedAlpha||t.premultipliedAlpha,l=void 0!==t.preserveDrawingBuffer&&t.preserveDrawingBuffer,c=void 0!==t.powerPreference?t.powerPreference:\\\\\\\"default\\\\\\\",h=void 0!==t.failIfMajorPerformanceCaveat&&t.failIfMajorPerformanceCaveat;let u=null,d=null;const m=[],f=[];this.domElement=e,this.debug={checkShaderErrors:!0},this.autoClear=!0,this.autoClearColor=!0,this.autoClearDepth=!0,this.autoClearStencil=!0,this.sortObjects=!0,this.clippingPlanes=[],this.localClippingEnabled=!1,this.gammaFactor=2,this.outputEncoding=w.U,this.physicallyCorrectLights=!1,this.toneMapping=w.vb,this.toneMappingExposure=1;const g=this;let v=!1,y=0,x=0,b=null,S=-1,C=null;const N=new _.a,L=new _.a;let O=null,P=e.width,R=e.height,I=1,F=null,D=null;const B=new _.a(0,0,P,R),z=new _.a(0,0,P,R);let k=!1;const U=[],G=new T.a;let V=!1,H=!1,Y=null;const J=new A.a,Z=new p.a,Q={background:null,fog:null,environment:null,overrideMaterial:null,isScene:!0};function tt(){return null===b?I:1}let et,nt,it,st,ot,at,lt,ct,ht,ut,dt,pt,_t,mt,ft,gt,vt,yt,xt,bt,wt,Tt,At,Mt=n;function Et(t,n){for(let i=0;i<t.length;i++){const s=t[i],r=e.getContext(s,n);if(null!==r)return r}return null}try{const t={alpha:i,depth:s,stencil:r,antialias:o,premultipliedAlpha:a,preserveDrawingBuffer:l,powerPreference:c,failIfMajorPerformanceCaveat:h};if(e.addEventListener(\\\\\\\"webglcontextlost\\\\\\\",Nt,!1),e.addEventListener(\\\\\\\"webglcontextrestored\\\\\\\",Lt,!1),null===Mt){const e=[\\\\\\\"webgl2\\\\\\\",\\\\\\\"webgl\\\\\\\",\\\\\\\"experimental-webgl\\\\\\\"];if(!0===g.isWebGL1Renderer&&e.shift(),Mt=Et(e,t),null===Mt)throw Et(e)?new Error(\\\\\\\"Error creating WebGL context with your selected attributes.\\\\\\\"):new Error(\\\\\\\"Error creating WebGL context.\\\\\\\")}void 0===Mt.getShaderPrecisionFormat&&(Mt.getShaderPrecisionFormat=function(){return{rangeMin:1,rangeMax:1,precision:1}})}catch(t){throw console.error(\\\\\\\"THREE.WebGLRenderer: \\\\\\\"+t.message),t}function St(){et=new Rt(Mt),nt=new X(Mt,et,t),et.init(nt),Tt=new Rn(Mt,et,nt),it=new Ln(Mt,et,nt),U[0]=Mt.BACK,st=new Bt(Mt),ot=new fn,at=new Pn(Mt,et,it,ot,nt,Tt,st),lt=new rt(g),ct=new Pt(g),ht=new E(Mt,nt),At=new W(Mt,et,ht,nt),ut=new Ft(Mt,ht,st,At),dt=new jt(Mt,ut,ht,st),xt=new Vt(Mt,nt,at),gt=new $(ot),pt=new mn(g,lt,ct,et,nt,At,gt),_t=new kn(ot),mt=new xn(ot),ft=new En(et,nt),yt=new j(g,lt,it,dt,a),vt=new Nn(g,dt,nt),bt=new q(Mt,et,st,nt),wt=new Dt(Mt,et,st,nt),st.programs=pt.programs,g.capabilities=nt,g.extensions=et,g.properties=ot,g.renderLists=mt,g.shadowMap=vt,g.state=it,g.info=st}St();const Ct=new zn(g,Mt);function Nt(t){t.preventDefault(),console.log(\\\\\\\"THREE.WebGLRenderer: Context Lost.\\\\\\\"),v=!0}function Lt(){console.log(\\\\\\\"THREE.WebGLRenderer: Context Restored.\\\\\\\"),v=!1;const t=st.autoReset,e=vt.enabled,n=vt.autoUpdate,i=vt.needsUpdate,s=vt.type;St(),st.autoReset=t,vt.enabled=e,vt.autoUpdate=n,vt.needsUpdate=i,vt.type=s}function Ot(t){const e=t.target;e.removeEventListener(\\\\\\\"dispose\\\\\\\",Ot),function(t){(function(t){const e=ot.get(t).programs;void 0!==e&&e.forEach((function(t){pt.releaseProgram(t)}))})(t),ot.remove(t)}(e)}this.xr=Ct,this.getContext=function(){return Mt},this.getContextAttributes=function(){return Mt.getContextAttributes()},this.forceContextLoss=function(){const t=et.get(\\\\\\\"WEBGL_lose_context\\\\\\\");t&&t.loseContext()},this.forceContextRestore=function(){const t=et.get(\\\\\\\"WEBGL_lose_context\\\\\\\");t&&t.restoreContext()},this.getPixelRatio=function(){return I},this.setPixelRatio=function(t){void 0!==t&&(I=t,this.setSize(P,R,!1))},this.getSize=function(t){return t.set(P,R)},this.setSize=function(t,n,i){Ct.isPresenting?console.warn(\\\\\\\"THREE.WebGLRenderer: Can't change size while VR device is presenting.\\\\\\\"):(P=t,R=n,e.width=Math.floor(t*I),e.height=Math.floor(n*I),!1!==i&&(e.style.width=t+\\\\\\\"px\\\\\\\",e.style.height=n+\\\\\\\"px\\\\\\\"),this.setViewport(0,0,t,n))},this.getDrawingBufferSize=function(t){return t.set(P*I,R*I).floor()},this.setDrawingBufferSize=function(t,n,i){P=t,R=n,I=i,e.width=Math.floor(t*i),e.height=Math.floor(n*i),this.setViewport(0,0,t,n)},this.getCurrentViewport=function(t){return t.copy(N)},this.getViewport=function(t){return t.copy(B)},this.setViewport=function(t,e,n,i){t.isVector4?B.set(t.x,t.y,t.z,t.w):B.set(t,e,n,i),it.viewport(N.copy(B).multiplyScalar(I).floor())},this.getScissor=function(t){return t.copy(z)},this.setScissor=function(t,e,n,i){t.isVector4?z.set(t.x,t.y,t.z,t.w):z.set(t,e,n,i),it.scissor(L.copy(z).multiplyScalar(I).floor())},this.getScissorTest=function(){return k},this.setScissorTest=function(t){it.setScissorTest(k=t)},this.setOpaqueSort=function(t){F=t},this.setTransparentSort=function(t){D=t},this.getClearColor=function(t){return t.copy(yt.getClearColor())},this.setClearColor=function(){yt.setClearColor.apply(yt,arguments)},this.getClearAlpha=function(){return yt.getClearAlpha()},this.setClearAlpha=function(){yt.setClearAlpha.apply(yt,arguments)},this.clear=function(t,e,n){let i=0;(void 0===t||t)&&(i|=Mt.COLOR_BUFFER_BIT),(void 0===e||e)&&(i|=Mt.DEPTH_BUFFER_BIT),(void 0===n||n)&&(i|=Mt.STENCIL_BUFFER_BIT),Mt.clear(i)},this.clearColor=function(){this.clear(!0,!1,!1)},this.clearDepth=function(){this.clear(!1,!0,!1)},this.clearStencil=function(){this.clear(!1,!1,!0)},this.dispose=function(){e.removeEventListener(\\\\\\\"webglcontextlost\\\\\\\",Nt,!1),e.removeEventListener(\\\\\\\"webglcontextrestored\\\\\\\",Lt,!1),mt.dispose(),ft.dispose(),ot.dispose(),lt.dispose(),ct.dispose(),dt.dispose(),At.dispose(),Ct.dispose(),Ct.removeEventListener(\\\\\\\"sessionstart\\\\\\\",kt),Ct.removeEventListener(\\\\\\\"sessionend\\\\\\\",Ut),Y&&(Y.dispose(),Y=null),Gt.stop()},this.renderBufferImmediate=function(t,e){At.initAttributes();const n=ot.get(t);t.hasPositions&&!n.position&&(n.position=Mt.createBuffer()),t.hasNormals&&!n.normal&&(n.normal=Mt.createBuffer()),t.hasUvs&&!n.uv&&(n.uv=Mt.createBuffer()),t.hasColors&&!n.color&&(n.color=Mt.createBuffer());const i=e.getAttributes();t.hasPositions&&(Mt.bindBuffer(Mt.ARRAY_BUFFER,n.position),Mt.bufferData(Mt.ARRAY_BUFFER,t.positionArray,Mt.DYNAMIC_DRAW),At.enableAttribute(i.position.location),Mt.vertexAttribPointer(i.position.location,3,Mt.FLOAT,!1,0,0)),t.hasNormals&&(Mt.bindBuffer(Mt.ARRAY_BUFFER,n.normal),Mt.bufferData(Mt.ARRAY_BUFFER,t.normalArray,Mt.DYNAMIC_DRAW),At.enableAttribute(i.normal.location),Mt.vertexAttribPointer(i.normal.location,3,Mt.FLOAT,!1,0,0)),t.hasUvs&&(Mt.bindBuffer(Mt.ARRAY_BUFFER,n.uv),Mt.bufferData(Mt.ARRAY_BUFFER,t.uvArray,Mt.DYNAMIC_DRAW),At.enableAttribute(i.uv.location),Mt.vertexAttribPointer(i.uv.location,2,Mt.FLOAT,!1,0,0)),t.hasColors&&(Mt.bindBuffer(Mt.ARRAY_BUFFER,n.color),Mt.bufferData(Mt.ARRAY_BUFFER,t.colorArray,Mt.DYNAMIC_DRAW),At.enableAttribute(i.color.location),Mt.vertexAttribPointer(i.color.location,3,Mt.FLOAT,!1,0,0)),At.disableUnusedAttributes(),Mt.drawArrays(Mt.TRIANGLES,0,t.count),t.count=0},this.renderBufferDirect=function(t,e,n,i,s,r){null===e&&(e=Q);const o=s.isMesh&&s.matrixWorld.determinant()<0,a=Zt(t,e,n,i,s);it.setMaterial(i,o);let l=n.index;const c=n.attributes.position;if(null===l){if(void 0===c||0===c.count)return}else if(0===l.count)return;let h,u=1;!0===i.wireframe&&(l=ut.getWireframeAttribute(n),u=2),At.setup(s,i,a,n,l);let d=bt;null!==l&&(h=ht.get(l),d=wt,d.setIndex(h));const p=null!==l?l.count:c.count,_=n.drawRange.start*u,m=n.drawRange.count*u,f=null!==r?r.start*u:0,g=null!==r?r.count*u:1/0,v=Math.max(_,f),y=Math.min(p,_+m,f+g)-1,x=Math.max(0,y-v+1);if(0!==x){if(s.isMesh)!0===i.wireframe?(it.setLineWidth(i.wireframeLinewidth*tt()),d.setMode(Mt.LINES)):d.setMode(Mt.TRIANGLES);else if(s.isLine){let t=i.linewidth;void 0===t&&(t=1),it.setLineWidth(t*tt()),s.isLineSegments?d.setMode(Mt.LINES):s.isLineLoop?d.setMode(Mt.LINE_LOOP):d.setMode(Mt.LINE_STRIP)}else s.isPoints?d.setMode(Mt.POINTS):s.isSprite&&d.setMode(Mt.TRIANGLES);if(s.isInstancedMesh)d.renderInstances(v,x,s.count);else if(n.isInstancedBufferGeometry){const t=Math.min(n.instanceCount,n._maxInstanceCount);d.renderInstances(v,x,t)}else d.render(v,x)}},this.compile=function(t,e){d=ft.get(t),d.init(),f.push(d),t.traverseVisible((function(t){t.isLight&&t.layers.test(e.layers)&&(d.pushLight(t),t.castShadow&&d.pushShadow(t))})),d.setupLights(g.physicallyCorrectLights),t.traverse((function(e){const n=e.material;if(n)if(Array.isArray(n))for(let i=0;i<n.length;i++){$t(n[i],t,e)}else $t(n,t,e)})),f.pop(),d=null};let zt=null;function kt(){Gt.stop()}function Ut(){Gt.start()}const Gt=new M;function Wt(t,e,n,i){if(!1===t.visible)return;if(t.layers.test(e.layers))if(t.isGroup)n=t.renderOrder;else if(t.isLOD)!0===t.autoUpdate&&t.update(e);else if(t.isLight)d.pushLight(t),t.castShadow&&d.pushShadow(t);else if(t.isSprite){if(!t.frustumCulled||G.intersectsSprite(t)){i&&Z.setFromMatrixPosition(t.matrixWorld).applyMatrix4(J);const e=dt.update(t),s=t.material;s.visible&&u.push(t,e,s,n,Z.z,null)}}else if(t.isImmediateRenderObject)i&&Z.setFromMatrixPosition(t.matrixWorld).applyMatrix4(J),u.push(t,null,t.material,n,Z.z,null);else if((t.isMesh||t.isLine||t.isPoints)&&(t.isSkinnedMesh&&t.skeleton.frame!==st.render.frame&&(t.skeleton.update(),t.skeleton.frame=st.render.frame),!t.frustumCulled||G.intersectsObject(t))){i&&Z.setFromMatrixPosition(t.matrixWorld).applyMatrix4(J);const e=dt.update(t),s=t.material;if(Array.isArray(s)){const i=e.groups;for(let r=0,o=i.length;r<o;r++){const o=i[r],a=s[o.materialIndex];a&&a.visible&&u.push(t,e,a,n,Z.z,o)}}else s.visible&&u.push(t,e,s,n,Z.z,null)}const s=t.children;for(let t=0,r=s.length;t<r;t++)Wt(s[t],e,n,i)}function qt(t,e,n,i){const s=t.opaque,r=t.transmissive,a=t.transparent;d.setupLightsView(n),r.length>0&&function(t,e,n){if(null===Y){const t=!0===o&&!0===nt.isWebGL2;Y=new(t?Ht:K)(1024,1024,{generateMipmaps:!0,type:null!==Tt.convert(w.M)?w.M:w.Zc,minFilter:w.Y,magFilter:w.ob,wrapS:w.n,wrapT:w.n})}const i=g.getRenderTarget();g.setRenderTarget(Y),g.clear();const s=g.toneMapping;g.toneMapping=w.vb,Xt(t,e,n),g.toneMapping=s,at.updateMultisampleRenderTarget(Y),at.updateRenderTargetMipmap(Y),g.setRenderTarget(i)}(s,e,n),i&&it.viewport(N.copy(i)),s.length>0&&Xt(s,e,n),r.length>0&&Xt(r,e,n),a.length>0&&Xt(a,e,n)}function Xt(t,e,n){const i=!0===e.isScene?e.overrideMaterial:null;for(let s=0,r=t.length;s<r;s++){const r=t[s],o=r.object,a=r.geometry,l=null===i?r.material:i,c=r.group;o.layers.test(n.layers)&&Yt(o,e,n,a,l,c)}}function Yt(t,e,n,i,s,r){if(t.onBeforeRender(g,e,n,i,s,r),t.modelViewMatrix.multiplyMatrices(n.matrixWorldInverse,t.matrixWorld),t.normalMatrix.getNormalMatrix(t.modelViewMatrix),s.onBeforeRender(g,e,n,i,t,r),t.isImmediateRenderObject){const r=Zt(n,e,i,s,t);it.setMaterial(s),At.reset(),function(t,e){t.render((function(t){g.renderBufferImmediate(t,e)}))}(t,r)}else!0===s.transparent&&s.side===w.z?(s.side=w.i,s.needsUpdate=!0,g.renderBufferDirect(n,e,i,s,t,r),s.side=w.H,s.needsUpdate=!0,g.renderBufferDirect(n,e,i,s,t,r),s.side=w.z):g.renderBufferDirect(n,e,i,s,t,r);t.onAfterRender(g,e,n,i,s,r)}function $t(t,e,n){!0!==e.isScene&&(e=Q);const i=ot.get(t),s=d.state.lights,r=d.state.shadowsArray,o=s.state.version,a=pt.getParameters(t,s.state,r,e,n),l=pt.getProgramCacheKey(a);let c=i.programs;i.environment=t.isMeshStandardMaterial?e.environment:null,i.fog=e.fog,i.envMap=(t.isMeshStandardMaterial?ct:lt).get(t.envMap||i.environment),void 0===c&&(t.addEventListener(\\\\\\\"dispose\\\\\\\",Ot),c=new Map,i.programs=c);let h=c.get(l);if(void 0!==h){if(i.currentProgram===h&&i.lightsStateVersion===o)return Jt(t,a),h}else a.uniforms=pt.getUniforms(t),t.onBuild(a,g),t.onBeforeCompile(a,g),h=pt.acquireProgram(a,l),c.set(l,h),i.uniforms=a.uniforms;const u=i.uniforms;(t.isShaderMaterial||t.isRawShaderMaterial)&&!0!==t.clipping||(u.clippingPlanes=gt.uniform),Jt(t,a),i.needsLights=function(t){return t.isMeshLambertMaterial||t.isMeshToonMaterial||t.isMeshPhongMaterial||t.isMeshStandardMaterial||t.isShadowMaterial||t.isShaderMaterial&&!0===t.lights}(t),i.lightsStateVersion=o,i.needsLights&&(u.ambientLightColor.value=s.state.ambient,u.lightProbe.value=s.state.probe,u.directionalLights.value=s.state.directional,u.directionalLightShadows.value=s.state.directionalShadow,u.spotLights.value=s.state.spot,u.spotLightShadows.value=s.state.spotShadow,u.rectAreaLights.value=s.state.rectArea,u.ltc_1.value=s.state.rectAreaLTC1,u.ltc_2.value=s.state.rectAreaLTC2,u.pointLights.value=s.state.point,u.pointLightShadows.value=s.state.pointShadow,u.hemisphereLights.value=s.state.hemi,u.directionalShadowMap.value=s.state.directionalShadowMap,u.directionalShadowMatrix.value=s.state.directionalShadowMatrix,u.spotShadowMap.value=s.state.spotShadowMap,u.spotShadowMatrix.value=s.state.spotShadowMatrix,u.pointShadowMap.value=s.state.pointShadowMap,u.pointShadowMatrix.value=s.state.pointShadowMatrix);const p=h.getUniforms(),_=Xe.seqWithValue(p.seq,u);return i.currentProgram=h,i.uniformsList=_,h}function Jt(t,e){const n=ot.get(t);n.outputEncoding=e.outputEncoding,n.instancing=e.instancing,n.skinning=e.skinning,n.morphTargets=e.morphTargets,n.morphNormals=e.morphNormals,n.morphTargetsCount=e.morphTargetsCount,n.numClippingPlanes=e.numClippingPlanes,n.numIntersection=e.numClipIntersection,n.vertexAlphas=e.vertexAlphas,n.vertexTangents=e.vertexTangents}function Zt(t,e,n,i,s){!0!==e.isScene&&(e=Q),at.resetTextureUnits();const r=e.fog,o=i.isMeshStandardMaterial?e.environment:null,a=null===b?g.outputEncoding:b.texture.encoding,l=(i.isMeshStandardMaterial?ct:lt).get(i.envMap||o),c=!0===i.vertexColors&&!!n&&!!n.attributes.color&&4===n.attributes.color.itemSize,h=!!i.normalMap&&!!n&&!!n.attributes.tangent,u=!!n&&!!n.morphAttributes.position,p=!!n&&!!n.morphAttributes.normal,_=n&&n.morphAttributes.position?n.morphAttributes.position.length:0,m=ot.get(i),f=d.state.lights;if(!0===V&&(!0===H||t!==C)){const e=t===C&&i.id===S;gt.setState(i,t,e)}let v=!1;i.version===m.__version?m.needsLights&&m.lightsStateVersion!==f.state.version||m.outputEncoding!==a||s.isInstancedMesh&&!1===m.instancing?v=!0:s.isInstancedMesh||!0!==m.instancing?s.isSkinnedMesh&&!1===m.skinning?v=!0:s.isSkinnedMesh||!0!==m.skinning?m.envMap!==l||i.fog&&m.fog!==r?v=!0:void 0===m.numClippingPlanes||m.numClippingPlanes===gt.numPlanes&&m.numIntersection===gt.numIntersection?(m.vertexAlphas!==c||m.vertexTangents!==h||m.morphTargets!==u||m.morphNormals!==p||!0===nt.isWebGL2&&m.morphTargetsCount!==_)&&(v=!0):v=!0:v=!0:v=!0:(v=!0,m.__version=i.version);let y=m.currentProgram;!0===v&&(y=$t(i,e,s));let x=!1,w=!1,T=!1;const A=y.getUniforms(),M=m.uniforms;if(it.useProgram(y.program)&&(x=!0,w=!0,T=!0),i.id!==S&&(S=i.id,w=!0),x||C!==t){if(A.setValue(Mt,\\\\\\\"projectionMatrix\\\\\\\",t.projectionMatrix),nt.logarithmicDepthBuffer&&A.setValue(Mt,\\\\\\\"logDepthBufFC\\\\\\\",2/(Math.log(t.far+1)/Math.LN2)),C!==t&&(C=t,w=!0,T=!0),i.isShaderMaterial||i.isMeshPhongMaterial||i.isMeshToonMaterial||i.isMeshStandardMaterial||i.envMap){const e=A.map.cameraPosition;void 0!==e&&e.setValue(Mt,Z.setFromMatrixPosition(t.matrixWorld))}(i.isMeshPhongMaterial||i.isMeshToonMaterial||i.isMeshLambertMaterial||i.isMeshBasicMaterial||i.isMeshStandardMaterial||i.isShaderMaterial)&&A.setValue(Mt,\\\\\\\"isOrthographic\\\\\\\",!0===t.isOrthographicCamera),(i.isMeshPhongMaterial||i.isMeshToonMaterial||i.isMeshLambertMaterial||i.isMeshBasicMaterial||i.isMeshStandardMaterial||i.isShaderMaterial||i.isShadowMaterial||s.isSkinnedMesh)&&A.setValue(Mt,\\\\\\\"viewMatrix\\\\\\\",t.matrixWorldInverse)}if(s.isSkinnedMesh){A.setOptional(Mt,s,\\\\\\\"bindMatrix\\\\\\\"),A.setOptional(Mt,s,\\\\\\\"bindMatrixInverse\\\\\\\");const t=s.skeleton;t&&(nt.floatVertexTextures?(null===t.boneTexture&&t.computeBoneTexture(),A.setValue(Mt,\\\\\\\"boneTexture\\\\\\\",t.boneTexture,at),A.setValue(Mt,\\\\\\\"boneTextureSize\\\\\\\",t.boneTextureSize)):A.setOptional(Mt,t,\\\\\\\"boneMatrices\\\\\\\"))}var E,N;return!n||void 0===n.morphAttributes.position&&void 0===n.morphAttributes.normal||xt.update(s,n,i,y),(w||m.receiveShadow!==s.receiveShadow)&&(m.receiveShadow=s.receiveShadow,A.setValue(Mt,\\\\\\\"receiveShadow\\\\\\\",s.receiveShadow)),w&&(A.setValue(Mt,\\\\\\\"toneMappingExposure\\\\\\\",g.toneMappingExposure),m.needsLights&&(N=T,(E=M).ambientLightColor.needsUpdate=N,E.lightProbe.needsUpdate=N,E.directionalLights.needsUpdate=N,E.directionalLightShadows.needsUpdate=N,E.pointLights.needsUpdate=N,E.pointLightShadows.needsUpdate=N,E.spotLights.needsUpdate=N,E.spotLightShadows.needsUpdate=N,E.rectAreaLights.needsUpdate=N,E.hemisphereLights.needsUpdate=N),r&&i.fog&&_t.refreshFogUniforms(M,r),_t.refreshMaterialUniforms(M,i,I,R,Y),Xe.upload(Mt,m.uniformsList,M,at)),i.isShaderMaterial&&!0===i.uniformsNeedUpdate&&(Xe.upload(Mt,m.uniformsList,M,at),i.uniformsNeedUpdate=!1),i.isSpriteMaterial&&A.setValue(Mt,\\\\\\\"center\\\\\\\",s.center),A.setValue(Mt,\\\\\\\"modelViewMatrix\\\\\\\",s.modelViewMatrix),A.setValue(Mt,\\\\\\\"normalMatrix\\\\\\\",s.normalMatrix),A.setValue(Mt,\\\\\\\"modelMatrix\\\\\\\",s.matrixWorld),y}Gt.setAnimationLoop((function(t){zt&&zt(t)})),\\\\\\\"undefined\\\\\\\"!=typeof window&&Gt.setContext(window),this.setAnimationLoop=function(t){zt=t,Ct.setAnimationLoop(t),null===t?Gt.stop():Gt.start()},Ct.addEventListener(\\\\\\\"sessionstart\\\\\\\",kt),Ct.addEventListener(\\\\\\\"sessionend\\\\\\\",Ut),this.render=function(t,e){if(void 0!==e&&!0!==e.isCamera)return void console.error(\\\\\\\"THREE.WebGLRenderer.render: camera is not an instance of THREE.Camera.\\\\\\\");if(!0===v)return;!0===t.autoUpdate&&t.updateMatrixWorld(),null===e.parent&&e.updateMatrixWorld(),!0===Ct.enabled&&!0===Ct.isPresenting&&(!0===Ct.cameraAutoUpdate&&Ct.updateCamera(e),e=Ct.getCamera()),!0===t.isScene&&t.onBeforeRender(g,t,e,b),d=ft.get(t,f.length),d.init(),f.push(d),J.multiplyMatrices(e.projectionMatrix,e.matrixWorldInverse),G.setFromProjectionMatrix(J),H=this.localClippingEnabled,V=gt.init(this.clippingPlanes,H,e),u=mt.get(t,m.length),u.init(),m.push(u),Wt(t,e,0,g.sortObjects),u.finish(),!0===g.sortObjects&&u.sort(F,D),!0===V&&gt.beginShadows();const n=d.state.shadowsArray;if(vt.render(n,t,e),!0===V&&gt.endShadows(),!0===this.info.autoReset&&this.info.reset(),yt.render(u,t),d.setupLights(g.physicallyCorrectLights),e.isArrayCamera){const n=e.cameras;for(let e=0,i=n.length;e<i;e++){const i=n[e];qt(u,t,i,i.viewport)}}else qt(u,t,e);null!==b&&(at.updateMultisampleRenderTarget(b),at.updateRenderTargetMipmap(b)),!0===t.isScene&&t.onAfterRender(g,t,e),it.buffers.depth.setTest(!0),it.buffers.depth.setMask(!0),it.buffers.color.setMask(!0),it.setPolygonOffset(!1),At.resetDefaultState(),S=-1,C=null,f.pop(),d=f.length>0?f[f.length-1]:null,m.pop(),u=m.length>0?m[m.length-1]:null},this.getActiveCubeFace=function(){return y},this.getActiveMipmapLevel=function(){return x},this.getRenderTarget=function(){return b},this.setRenderTarget=function(t,e=0,n=0){b=t,y=e,x=n,t&&void 0===ot.get(t).__webglFramebuffer&&at.setupRenderTarget(t);let i=null,s=!1,r=!1;if(t){const n=t.texture;(n.isDataTexture3D||n.isDataTexture2DArray)&&(r=!0);const o=ot.get(t).__webglFramebuffer;t.isWebGLCubeRenderTarget?(i=o[e],s=!0):i=t.isWebGLMultisampleRenderTarget?ot.get(t).__webglMultisampledFramebuffer:o,N.copy(t.viewport),L.copy(t.scissor),O=t.scissorTest}else N.copy(B).multiplyScalar(I).floor(),L.copy(z).multiplyScalar(I).floor(),O=k;if(it.bindFramebuffer(Mt.FRAMEBUFFER,i)&&nt.drawBuffers){let e=!1;if(t)if(t.isWebGLMultipleRenderTargets){const n=t.texture;if(U.length!==n.length||U[0]!==Mt.COLOR_ATTACHMENT0){for(let t=0,e=n.length;t<e;t++)U[t]=Mt.COLOR_ATTACHMENT0+t;U.length=n.length,e=!0}}else 1===U.length&&U[0]===Mt.COLOR_ATTACHMENT0||(U[0]=Mt.COLOR_ATTACHMENT0,U.length=1,e=!0);else 1===U.length&&U[0]===Mt.BACK||(U[0]=Mt.BACK,U.length=1,e=!0);e&&(nt.isWebGL2?Mt.drawBuffers(U):et.get(\\\\\\\"WEBGL_draw_buffers\\\\\\\").drawBuffersWEBGL(U))}if(it.viewport(N),it.scissor(L),it.setScissorTest(O),s){const i=ot.get(t.texture);Mt.framebufferTexture2D(Mt.FRAMEBUFFER,Mt.COLOR_ATTACHMENT0,Mt.TEXTURE_CUBE_MAP_POSITIVE_X+e,i.__webglTexture,n)}else if(r){const i=ot.get(t.texture),s=e||0;Mt.framebufferTextureLayer(Mt.FRAMEBUFFER,Mt.COLOR_ATTACHMENT0,i.__webglTexture,n||0,s)}S=-1},this.readRenderTargetPixels=function(t,e,n,i,s,r,o){if(!t||!t.isWebGLRenderTarget)return void console.error(\\\\\\\"THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.\\\\\\\");let a=ot.get(t).__webglFramebuffer;if(t.isWebGLCubeRenderTarget&&void 0!==o&&(a=a[o]),a){it.bindFramebuffer(Mt.FRAMEBUFFER,a);try{const o=t.texture,a=o.format,l=o.type;if(a!==w.Ib&&Tt.convert(a)!==Mt.getParameter(Mt.IMPLEMENTATION_COLOR_READ_FORMAT))return void console.error(\\\\\\\"THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in RGBA or implementation defined format.\\\\\\\");const c=l===w.M&&(et.has(\\\\\\\"EXT_color_buffer_half_float\\\\\\\")||nt.isWebGL2&&et.has(\\\\\\\"EXT_color_buffer_float\\\\\\\"));if(!(l===w.Zc||Tt.convert(l)===Mt.getParameter(Mt.IMPLEMENTATION_COLOR_READ_TYPE)||l===w.G&&(nt.isWebGL2||et.has(\\\\\\\"OES_texture_float\\\\\\\")||et.has(\\\\\\\"WEBGL_color_buffer_float\\\\\\\"))||c))return void console.error(\\\\\\\"THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in UnsignedByteType or implementation defined type.\\\\\\\");Mt.checkFramebufferStatus(Mt.FRAMEBUFFER)===Mt.FRAMEBUFFER_COMPLETE?e>=0&&e<=t.width-i&&n>=0&&n<=t.height-s&&Mt.readPixels(e,n,i,s,Tt.convert(a),Tt.convert(l),r):console.error(\\\\\\\"THREE.WebGLRenderer.readRenderTargetPixels: readPixels from renderTarget failed. Framebuffer not complete.\\\\\\\")}finally{const t=null!==b?ot.get(b).__webglFramebuffer:null;it.bindFramebuffer(Mt.FRAMEBUFFER,t)}}},this.copyFramebufferToTexture=function(t,e,n=0){const i=Math.pow(2,-n),s=Math.floor(e.image.width*i),r=Math.floor(e.image.height*i);let o=Tt.convert(e.format);nt.isWebGL2&&(o===Mt.RGB&&(o=Mt.RGB8),o===Mt.RGBA&&(o=Mt.RGBA8)),at.setTexture2D(e,0),Mt.copyTexImage2D(Mt.TEXTURE_2D,n,o,t.x,t.y,s,r,0),it.unbindTexture()},this.copyTextureToTexture=function(t,e,n,i=0){const s=e.image.width,r=e.image.height,o=Tt.convert(n.format),a=Tt.convert(n.type);at.setTexture2D(n,0),Mt.pixelStorei(Mt.UNPACK_FLIP_Y_WEBGL,n.flipY),Mt.pixelStorei(Mt.UNPACK_PREMULTIPLY_ALPHA_WEBGL,n.premultiplyAlpha),Mt.pixelStorei(Mt.UNPACK_ALIGNMENT,n.unpackAlignment),e.isDataTexture?Mt.texSubImage2D(Mt.TEXTURE_2D,i,t.x,t.y,s,r,o,a,e.image.data):e.isCompressedTexture?Mt.compressedTexSubImage2D(Mt.TEXTURE_2D,i,t.x,t.y,e.mipmaps[0].width,e.mipmaps[0].height,o,e.mipmaps[0].data):Mt.texSubImage2D(Mt.TEXTURE_2D,i,t.x,t.y,o,a,e.image),0===i&&n.generateMipmaps&&Mt.generateMipmap(Mt.TEXTURE_2D),it.unbindTexture()},this.copyTextureToTexture3D=function(t,e,n,i,s=0){if(g.isWebGL1Renderer)return void console.warn(\\\\\\\"THREE.WebGLRenderer.copyTextureToTexture3D: can only be used with WebGL2.\\\\\\\");const r=t.max.x-t.min.x+1,o=t.max.y-t.min.y+1,a=t.max.z-t.min.z+1,l=Tt.convert(i.format),c=Tt.convert(i.type);let h;if(i.isDataTexture3D)at.setTexture3D(i,0),h=Mt.TEXTURE_3D;else{if(!i.isDataTexture2DArray)return void console.warn(\\\\\\\"THREE.WebGLRenderer.copyTextureToTexture3D: only supports THREE.DataTexture3D and THREE.DataTexture2DArray.\\\\\\\");at.setTexture2DArray(i,0),h=Mt.TEXTURE_2D_ARRAY}Mt.pixelStorei(Mt.UNPACK_FLIP_Y_WEBGL,i.flipY),Mt.pixelStorei(Mt.UNPACK_PREMULTIPLY_ALPHA_WEBGL,i.premultiplyAlpha),Mt.pixelStorei(Mt.UNPACK_ALIGNMENT,i.unpackAlignment);const u=Mt.getParameter(Mt.UNPACK_ROW_LENGTH),d=Mt.getParameter(Mt.UNPACK_IMAGE_HEIGHT),p=Mt.getParameter(Mt.UNPACK_SKIP_PIXELS),_=Mt.getParameter(Mt.UNPACK_SKIP_ROWS),m=Mt.getParameter(Mt.UNPACK_SKIP_IMAGES),f=n.isCompressedTexture?n.mipmaps[0]:n.image;Mt.pixelStorei(Mt.UNPACK_ROW_LENGTH,f.width),Mt.pixelStorei(Mt.UNPACK_IMAGE_HEIGHT,f.height),Mt.pixelStorei(Mt.UNPACK_SKIP_PIXELS,t.min.x),Mt.pixelStorei(Mt.UNPACK_SKIP_ROWS,t.min.y),Mt.pixelStorei(Mt.UNPACK_SKIP_IMAGES,t.min.z),n.isDataTexture||n.isDataTexture3D?Mt.texSubImage3D(h,s,e.x,e.y,e.z,r,o,a,l,c,f.data):n.isCompressedTexture?(console.warn(\\\\\\\"THREE.WebGLRenderer.copyTextureToTexture3D: untested support for compressed srcTexture.\\\\\\\"),Mt.compressedTexSubImage3D(h,s,e.x,e.y,e.z,r,o,a,l,f.data)):Mt.texSubImage3D(h,s,e.x,e.y,e.z,r,o,a,l,c,f),Mt.pixelStorei(Mt.UNPACK_ROW_LENGTH,u),Mt.pixelStorei(Mt.UNPACK_IMAGE_HEIGHT,d),Mt.pixelStorei(Mt.UNPACK_SKIP_PIXELS,p),Mt.pixelStorei(Mt.UNPACK_SKIP_ROWS,_),Mt.pixelStorei(Mt.UNPACK_SKIP_IMAGES,m),0===s&&i.generateMipmaps&&Mt.generateMipmap(h),it.unbindTexture()},this.initTexture=function(t){at.setTexture2D(t,0),it.unbindTexture()},this.resetState=function(){y=0,x=0,b=null,it.reset(),At.reset()},\\\\\\\"undefined\\\\\\\"!=typeof __THREE_DEVTOOLS__&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent(\\\\\\\"observe\\\\\\\",{detail:this}))}const Gn={};var Vn,Hn,jn;!function(t){t.WEBGL=\\\\\\\"webgl\\\\\\\",t.WEBGL2=\\\\\\\"webgl2\\\\\\\",t.EXPERIMENTAL_WEBGL=\\\\\\\"experimental-webgl\\\\\\\",t.EXPERIMENTAL_WEBGL2=\\\\\\\"experimental-webgl2\\\\\\\"}(Vn||(Vn={}));class Wn{constructor(){this._next_renderer_id=0,this._renderers={},this._printDebug=!1,this._require_webgl2=!1,this._resolves=[]}setPrintDebug(t=!0){this._printDebug=t}printDebug(){return this._printDebug}printDebugMessage(t){this._printDebug&&console.warn(\\\\\\\"[Poly debug]\\\\\\\",t)}setRequireWebGL2(){this._require_webgl2||(this._require_webgl2=!0)}webgl2Available(){return void 0===this._webgl2_available&&(this._webgl2_available=this._set_webgl2_available()),this._webgl2_available}_set_webgl2_available(){const t=document.createElement(\\\\\\\"canvas\\\\\\\");return null!=(window.WebGL2RenderingContext&&t.getContext(Vn.WEBGL2))}createWebGLRenderer(t){const e=new Un(t);return this.printDebugMessage([\\\\\\\"create renderer:\\\\\\\",t]),e}createRenderingContext(t){let e=null;return this._require_webgl2&&(e=this._getRenderingContextWebgl(t,!0),e||console.warn(\\\\\\\"failed to create webgl2 context\\\\\\\")),e||(e=this._getRenderingContextWebgl(t,!1)),e}_getRenderingContextWebgl(t,e){let n;n=this.webgl2Available()||e?Vn.WEBGL2:Vn.WEBGL;let i=t.getContext(n,Gn);return i?this.printDebugMessage(`create gl context: ${n}.`):(n=e?Vn.EXPERIMENTAL_WEBGL2:Vn.EXPERIMENTAL_WEBGL,this.printDebugMessage(`create gl context: ${n}.`),i=t.getContext(n,Gn)),i}registerRenderer(t){if(t._polygon_id)throw new Error(\\\\\\\"render already registered\\\\\\\");t._polygon_id=this._next_renderer_id+=1,this._renderers[t._polygon_id]=t,1==Object.keys(this._renderers).length&&this.flush_callbacks_with_renderer(t)}deregisterRenderer(t){delete this._renderers[t._polygon_id],t.dispose()}firstRenderer(){const t=Object.keys(this._renderers)[0];return t?this._renderers[t]:null}renderers(){return Object.values(this._renderers)}flush_callbacks_with_renderer(t){let e;for(;e=this._resolves.pop();)e(t)}async waitForRenderer(){const t=this.firstRenderer();return t||new Promise(((t,e)=>{this._resolves.push(t)}))}renderTarget(t,e,n){return this.webgl2Available()?new Ht(t,e,n):new K(t,e,n)}}class qn{constructor(){this._root=\\\\\\\"/three/js/libs\\\\\\\",this._BASISPath=\\\\\\\"/basis\\\\\\\",this._DRACOPath=\\\\\\\"/draco\\\\\\\",this._DRACOGLTFPath=\\\\\\\"/draco/gltf\\\\\\\"}root(){return this._root}setRoot(t){this._root=t}BASISPath(){return this._BASISPath}DRACOPath(){return this._DRACOPath}DRACOGLTFPath(){return this._DRACOGLTFPath}}class Xn{constructor(t){this.poly=t,this._node_register=new Map,this._node_register_categories=new Map,this._node_register_options=new Map}static type(t){return this.filterType(t.type())}static filterType(t){return t.toLowerCase()}register(t,e,n){const i=t.context(),s=Xn.type(t);let r=this._node_register.get(i);r||(r=new Map,this._node_register.set(i,r));if(r.get(s))console.error(`node ${i}/${s} already registered`);else{if(r.set(s,t),e){let t=this._node_register_categories.get(i);t||(t=new Map,this._node_register_categories.set(i,t)),t.set(s,e)}if(n){let t=this._node_register_options.get(i);t||(t=new Map,this._node_register_options.set(i,t)),t.set(s,n)}this.poly.pluginsRegister.registerNode(t)}}deregister(t,e){var n,i,s;e=Xn.filterType(e),null===(n=this._node_register.get(t))||void 0===n||n.delete(e),null===(i=this._node_register_categories.get(t))||void 0===i||i.delete(e),null===(s=this._node_register_options.get(t))||void 0===s||s.delete(e)}isRegistered(t,e){const n=this._node_register.get(t);return!!n&&(e=Xn.filterType(e),null!=n.get(e))}nodeOptions(t,e){var n;return e=Xn.filterType(e),null===(n=this._node_register_options.get(t))||void 0===n?void 0:n.get(e)}registeredNodesForContextAndParentType(t,e){var n;if(this._node_register.get(t)){const i=[];return null===(n=this._node_register.get(t))||void 0===n||n.forEach(((t,e)=>{i.push(t)})),i.filter((n=>{var i;const s=Xn.type(n),r=null===(i=this._node_register_options.get(t))||void 0===i?void 0:i.get(s);if(r){const n=r.only,i=r.except,s=`${t}/${e}`;return n?n.includes(s):!i||!i.includes(s)}return!0}))}return[]}registeredNodes(t,e){const n={},i=this.registeredNodesForContextAndParentType(t,e);for(let t of i){n[Xn.type(t)]=t}return n}registeredCategory(t,e){var n;return e=Xn.filterType(e),null===(n=this._node_register_categories.get(t))||void 0===n?void 0:n.get(e)}map(){return this._node_register}}class Yn{constructor(t){this.poly=t,this._operation_register=new Map}static type(t){return this.filterType(t.type())}static filterType(t){return t.toLowerCase()}register(t){const e=t.context();let n=this._operation_register.get(e);n||(n=new Map,this._operation_register.set(e,n));const i=Yn.type(t);if(n.get(i)){const t=`operation ${e}/${i} already registered`;console.error(t)}else n.set(i,t),this.poly.pluginsRegister.registerOperation(t)}registeredOperationsForContextAndParentType(t,e){var n;if(this._operation_register.get(t)){const e=[];return null===(n=this._operation_register.get(t))||void 0===n||n.forEach(((t,n)=>{e.push(t)})),e}return[]}registeredOperation(t,e){const n=this._operation_register.get(t);if(n)return e=Yn.filterType(e),n.get(e)}}class $n extends class{constructor(){this._methods_names=[],this._methods_by_name=new Map}register(t,e){this._methods_names.push(e),this._methods_by_name.set(e,t)}getMethod(t){return this._methods_by_name.get(t)}availableMethods(){return this._methods_names}}{getMethod(t){return super.getMethod(t)}}!function(t){t.BasisTextureLoader=\\\\\\\"BasisTextureLoader\\\\\\\",t.DRACOLoader=\\\\\\\"DRACOLoader\\\\\\\",t.EXRLoader=\\\\\\\"EXRLoader\\\\\\\",t.FBXLoader=\\\\\\\"FBXLoader\\\\\\\",t.GLTFLoader=\\\\\\\"GLTFLoader\\\\\\\",t.OBJLoader=\\\\\\\"OBJLoader\\\\\\\",t.PDBLoader=\\\\\\\"PDBLoader\\\\\\\",t.PLYLoader=\\\\\\\"PLYLoader\\\\\\\",t.RGBELoader=\\\\\\\"RGBELoader\\\\\\\",t.SVGLoader=\\\\\\\"SVGLoader\\\\\\\",t.STLLoader=\\\\\\\"STLLoader\\\\\\\",t.TTFLoader=\\\\\\\"TTFLoader\\\\\\\"}(Hn||(Hn={}));class Jn extends class{constructor(){this._module_by_name=new Map}register(t,e){this._module_by_name.set(t,e)}moduleNames(){const t=[];return this._module_by_name.forEach(((e,n)=>{t.push(n)})),t}module(t){return this._module_by_name.get(t)}}{}!function(t){t.GL_MESH_BASIC=\\\\\\\"GL_MESH_BASIC\\\\\\\",t.GL_MESH_LAMBERT=\\\\\\\"GL_MESH_LAMBERT\\\\\\\",t.GL_MESH_STANDARD=\\\\\\\"GL_MESH_STANDARD\\\\\\\",t.GL_MESH_PHONG=\\\\\\\"GL_MESH_PHONG\\\\\\\",t.GL_MESH_PHYSICAL=\\\\\\\"GL_MESH_PHYSICAL\\\\\\\",t.GL_PARTICLES=\\\\\\\"GL_PARTICLES\\\\\\\",t.GL_POINTS=\\\\\\\"GL_POINTS\\\\\\\",t.GL_LINE=\\\\\\\"GL_LINE\\\\\\\",t.GL_TEXTURE=\\\\\\\"GL_TEXTURE\\\\\\\",t.GL_VOLUME=\\\\\\\"GL_VOLUME\\\\\\\"}(jn||(jn={}));class Zn extends class{constructor(){this._controller_assembler_by_name=new Map}register(t,e,n){this._controller_assembler_by_name.set(t,{controller:e,assembler:n})}unregister(t){this._controller_assembler_by_name.delete(t)}}{assembler(t,e){const n=this._controller_assembler_by_name.get(e);if(n){return new(0,n.controller)(t,n.assembler)}return n}unregister(t){const e=this._controller_assembler_by_name.get(t);return super.unregister(t),e}}class Kn{constructor(t){this.poly=t,this._plugins_by_name=new Map,this._plugin_name_by_node_context_by_type=new Map,this._plugin_name_by_operation_context_by_type=new Map}register(t){this._current_plugin=t,this._plugins_by_name.set(t.name(),t),t.init(this.poly),this._current_plugin=void 0}pluginByName(t){return this._plugins_by_name.get(t)}registerNode(t){if(!this._current_plugin)return;const e=t.context(),n=t.type();let i=this._plugin_name_by_node_context_by_type.get(e);i||(i=new Map,this._plugin_name_by_node_context_by_type.set(e,i)),i.set(n,this._current_plugin.name())}registerOperation(t){if(!this._current_plugin)return;const e=t.context(),n=t.type();let i=this._plugin_name_by_operation_context_by_type.get(e);i||(i=new Map,this._plugin_name_by_operation_context_by_type.set(e,i)),i.set(n,this._current_plugin.name())}toJson(){const t={plugins:{},nodes:{},operations:{}};return this._plugins_by_name.forEach(((e,n)=>{t.plugins[n]=e.toJSON()})),this._plugin_name_by_node_context_by_type.forEach(((e,n)=>{t.nodes[n]={},e.forEach(((e,i)=>{t.nodes[n][i]=e}))})),this._plugin_name_by_operation_context_by_type.forEach(((e,n)=>{t.operations[n]={},e.forEach(((e,i)=>{t.operations[n][i]=e}))})),t}}class Qn{constructor(t){this._camera_types=[]}register(t){const e=t.type();this._camera_types.includes(e)||this._camera_types.push(e)}registeredTypes(){return this._camera_types}}var ti=n(86);class ei{constructor(){this._blobUrlsByStoredUrl=new Map,this._blobsByStoredUrl=new Map,this._blobDataByNodeId=new Map,this._globalBlobsByStoredUrl=new Map}registerBlobUrl(t){li.playerMode()&&this._blobUrlsByStoredUrl.set(t.storedUrl,t.blobUrl)}deregisterUrl(t){this._blobUrlsByStoredUrl.delete(t)}blobUrl(t){return this._blobUrlsByStoredUrl.get(t)}clear(){this._blobUrlsByStoredUrl.clear(),this._blobsByStoredUrl.clear(),this._blobDataByNodeId.clear()}_clearBlobForNode(t){const e=this._blobDataByNodeId.get(t.graphNodeId());e&&(this._blobsByStoredUrl.delete(e.storedUrl),this._blobUrlsByStoredUrl.delete(e.storedUrl)),this._blobDataByNodeId.delete(t.graphNodeId())}_assignBlobToNode(t,e){this._clearBlobForNode(t),this._blobDataByNodeId.set(t.graphNodeId(),{storedUrl:e.storedUrl,fullUrl:e.fullUrl})}async fetchBlobGlobal(t){if(li.playerMode())return{};try{if(this._blobUrlsByStoredUrl.get(t.storedUrl))return{};const e=li.assetUrls.remapedUrl(t.fullUrl),n=await fetch(e||t.fullUrl);if(n.ok){const e=await n.blob();return this._blobsByStoredUrl.set(t.storedUrl,e),this._blobUrlsByStoredUrl.set(t.storedUrl,this.createBlobUrl(e)),this._globalBlobsByStoredUrl.set(t.storedUrl,e),{blobData:{storedUrl:t.storedUrl,fullUrl:t.fullUrl}}}return{error:`failed to fetch ${t.fullUrl}`}}catch(e){return{error:`failed to fetch ${t.fullUrl}`}}}async fetchBlobForNode(t){if(li.playerMode())return{};try{if(this._blobUrlsByStoredUrl.get(t.storedUrl))return{};const e=li.assetUrls.remapedUrl(t.fullUrl),n=await fetch(e||t.fullUrl);if(n.ok){const e=await n.blob();return this._blobsByStoredUrl.set(t.storedUrl,e),this._blobUrlsByStoredUrl.set(t.storedUrl,this.createBlobUrl(e)),this._scene=t.node.scene(),this._assignBlobToNode(t.node,{storedUrl:t.storedUrl,fullUrl:t.fullUrl}),{blobData:{storedUrl:t.storedUrl,fullUrl:t.fullUrl}}}return{error:`failed to fetch ${t.fullUrl}`}}catch(e){return{error:`failed to fetch ${t.fullUrl}`}}}forEachBlob(t){this._blobDataByNodeId.forEach(((e,n)=>{if(this._scene){if(this._scene.graph.nodeFromId(n)){const{storedUrl:n}=e,i=this._blobsByStoredUrl.get(n);i&&t(i,n)}}}));let e=[];const n=new Map;this._globalBlobsByStoredUrl.forEach(((t,i)=>{e.push(i),n.set(i,t)})),e=e.sort(),e.forEach((e=>{const n=this._globalBlobsByStoredUrl.get(e);n&&t(n,e)}))}createBlobUrl(t){return Object(ti.a)(t)}}class ni{setMap(t){this._map=t}remapedUrl(t){if(!this._map)return;const e=t.split(\\\\\\\"?\\\\\\\"),n=e[0],i=e[1],s=this._map[n];return s?i?`${s}?${i}`:s:void 0}}var ii=n(91),si=n(83);class ri{markAsLoaded(t,e){this._sceneJsonImporterContructor=e,t()}load(t){if(!this._sceneJsonImporterContructor)return;const e=[];t.forEach(((t,n)=>{e.push(n)}));for(let n of e){const e=t.get(n);e&&(this._loadElement(n,e,this._sceneJsonImporterContructor),t.delete(n))}}async _loadElement(t,e,n){const{sceneData:i,assetsManifest:s,unzippedData:r}=e,o=Object.keys(s);for(let t of o){const e=r[`assets/${s[t]}`];if(!e)return void console.error(t,e);const n=new Blob([e]),i={storedUrl:t,blobUrl:li.blobs.createBlobUrl(n)};li.blobs.registerBlobUrl(i)}li.setPlayerMode(!0),li.libs.setRoot(null);const a=`${Math.random()}`.replace(\\\\\\\".\\\\\\\",\\\\\\\"_\\\\\\\"),l={Poly:`___POLY_polyConfig_configurePolygonjs_${a}`,scriptElementId:`___POLY_polyConfig_scriptElement_${a}`,loadSceneArgs:`___POLY_polyConfig_loadSceneArgs_${a}`};window[l.Poly]=li;const c={method:this._loadScene.bind(this),element:t,sceneData:i,sceneJsonImporterContructor:n};window[l.loadSceneArgs]=c;this._loadPolyConfig(l,r)||this._loadScene(t,i,n)}_loadPolyConfig(t,e){const n=e[si.a.POLY_CONFIG];if(!n)return!1;const i=this._createJsBlob(n,\\\\\\\"polyConfig\\\\\\\");let s=document.getElementById(t.scriptElementId);const r=[];return r.push(`import {configurePolygonjs, configureScene} from '${i}';`),r.push(`configurePolygonjs(window.${t.Poly});`),r.push(`window.${t.loadSceneArgs}.method(window.${t.loadSceneArgs}.element, window.${t.loadSceneArgs}.sceneData, window.${t.loadSceneArgs}.sceneJsonImporterContructor, configureScene);`),r.push(`delete window.${t.loadSceneArgs};`),s||(s=document.createElement(\\\\\\\"script\\\\\\\"),s.setAttribute(\\\\\\\"type\\\\\\\",\\\\\\\"module\\\\\\\"),s.text=r.join(\\\\\\\"\\\\n\\\\\\\"),document.body.append(s)),!0}async _loadScene(t,e,n,i){this._fadeOutPoster(t);const s=new n(e),r=await s.scene();i&&i(r);const o=r.mainCameraNode();if(!o)return void console.warn(\\\\\\\"no master camera found\\\\\\\");const a=o.createViewer(t);r.play(),t.scene=r,t.viewer=a}_fadeOutPoster(t){const e=t.firstElementChild;e&&(e.style.pointerEvents=\\\\\\\"none\\\\\\\",ii.a.fadeOut(e).then((()=>{var t;null===(t=e.parentElement)||void 0===t||t.removeChild(e)})))}_createJsBlob(t,e){const n=new Blob([t]),i=new File([n],`${e}.js`,{type:\\\\\\\"application/javascript\\\\\\\"});return Object(ti.a)(i)}}class oi{setPerformanceManager(t){this._performanceManager=t}performanceManager(){return this._performanceManager||window.performance}}class ai{constructor(){this.renderersController=new Wn,this.nodesRegister=new Xn(this),this.operationsRegister=new Yn(this),this.expressionsRegister=new $n,this.modulesRegister=new Jn,this.assemblersRegister=new Zn,this.pluginsRegister=new Kn(this),this.camerasRegister=new Qn(this),this.blobs=new ei,this.assetUrls=new ni,this.selfContainedScenesLoader=new ri,this.performance=new oi,this.scenesByUuid={},this._player_mode=!0,this._logger=null}static _instance_(){if(window.__POLYGONJS_POLY_INSTANCE__)return window.__POLYGONJS_POLY_INSTANCE__;{const t=new ai;return window.__POLYGONJS_POLY_INSTANCE__=t,window.__POLYGONJS_POLY_INSTANCE__}}setPlayerMode(t){this._player_mode=t}playerMode(){return this._player_mode}registerNode(t,e,n){this.nodesRegister.register(t,e,n)}registerOperation(t){this.operationsRegister.register(t)}registerCamera(t){this.camerasRegister.register(t)}registerPlugin(t){this.pluginsRegister.register(t)}registeredNodes(t,e){return this.nodesRegister.registeredNodes(t,e)}registeredOperation(t,e){return this.operationsRegister.registeredOperation(t,e)}registeredCameraTypes(){return this.camerasRegister.registeredTypes()}inWorkerThread(){return!1}desktopController(){}get libs(){return this._libs_controller=this._libs_controller||new qn}setEnv(t){this._env=t}env(){return this._env}setLogger(t){this._logger=t}log(t,...e){var n;null===(n=this._logger)||void 0===n||n.log(t,...e)}warn(t,...e){var n;null===(n=this._logger)||void 0===n||n.warn(t,...e)}error(t,...e){var n;null===(n=this._logger)||void 0===n||n.error(t,...e)}}const li=ai._instance_();class ci{constructor(){this._started=!1,this._start_time=0,this._previous_timestamp=0,this._nodes_cook_data={},this._durations_by_name={},this._durations_count_by_name={}}profile(t,e){const n=li.performance.performanceManager(),i=n.now();e();const s=n.now()-i;console.log(`${t}: ${s}`)}start(){if(!this._started){this.reset(),this._started=!0;const t=li.performance.performanceManager();this._start_time=t.now(),this._nodes_cook_data={},this._previous_timestamp=this._start_time}}stop(){this.reset()}reset(){this._started=!1,this._start_time=null,this._durations_by_name={},this._durations_count_by_name={},this._nodes_cook_data={}}started(){return this._started}record_node_cook_data(t,e){const n=t.graphNodeId();null==this._nodes_cook_data[n]&&(this._nodes_cook_data[n]=new c(t)),this._nodes_cook_data[n].update_cook_data(e)}record(t){this.started()||this.start();const e=performance.now();return null==this._durations_by_name[t]&&(this._durations_by_name[t]=0),this._durations_by_name[t]+=e-this._previous_timestamp,null==this._durations_count_by_name[t]&&(this._durations_count_by_name[t]=0),this._durations_count_by_name[t]+=1,this._previous_timestamp=e}print(){this.print_node_cook_data(),this.print_recordings()}print_node_cook_data(){let t=Object.values(this._nodes_cook_data);t=f.sortBy(t,(t=>t.total_cook_time()));const e=t.map((t=>t.print_object()));console.log(\\\\\\\"--------------- NODES COOK TIME -----------\\\\\\\");const n=[],i=f.sortBy(e,(t=>-t.total_cook_time));for(let t of i)n.push(t);return console.table(n),e}print_recordings(){const t=b.clone(this._durations_by_name),e=b.clone(this._durations_count_by_name),n=[],i={};for(let e of Object.keys(t)){const s=t[e];n.push(s),null==i[s]&&(i[s]=[]),i[s].push(e)}n.sort(((t,e)=>t-e));const s=f.uniq(n);console.log(\\\\\\\"--------------- PERF RECORDINGS -----------\\\\\\\");const r=[];for(let t of s){const n=i[t];for(let i of n){const n=e[i],s={duration:t,name:i,count:n,duration_per_iteration:t/n};r.push(s)}}return console.table(r),r}}class hi{constructor(t){this.scene=t}setListener(t){this._events_listener?console.warn(\\\\\\\"scene already has a listener\\\\\\\"):(this._events_listener=t,this.run_on_add_listener_callbacks())}onAddListener(t){this._events_listener?t():(this._on_add_listener_callbacks=this._on_add_listener_callbacks||[],this._on_add_listener_callbacks.push(t))}run_on_add_listener_callbacks(){if(this._on_add_listener_callbacks){let t;for(;t=this._on_add_listener_callbacks.pop();)t();this._on_add_listener_callbacks=void 0}}get eventsListener(){return this._events_listener}dispatch(t,e,n){var i;null===(i=this._events_listener)||void 0===i||i.process_events(t,e,n)}emitAllowed(){return null!=this._events_listener&&this.scene.loadingController.loaded()&&this.scene.loadingController.autoUpdating()}}class ui{constructor(){this._params_by_id=new Map}registerParam(t){this._params_by_id.set(t.graphNodeId(),t)}deregisterParam(t){this._params_by_id.delete(t.graphNodeId())}regenerateReferringExpressions(t){t.nameController.graph_node.setSuccessorsDirty(t)}}class di{constructor(t){this.scene=t,this._lifecycle_on_create_allowed=!0}onCreateHookAllowed(){return this.scene.loadingController.loaded()&&this._lifecycle_on_create_allowed}onCreatePrevent(t){this._lifecycle_on_create_allowed=!1,t(),this._lifecycle_on_create_allowed=!0}}class pi{constructor(t){this.dispatcher=t,this._nodes_by_graph_node_id=new Map,this._require_canvas_event_listeners=!1,this._activeEventDatas=[]}registerNode(t){this._nodes_by_graph_node_id.set(t.graphNodeId(),t),this.updateViewerEventListeners()}unregisterNode(t){this._nodes_by_graph_node_id.delete(t.graphNodeId()),this.updateViewerEventListeners()}processEvent(t){0!=this._activeEventDatas.length&&this._nodes_by_graph_node_id.forEach((e=>e.processEvent(t)))}updateViewerEventListeners(){this._update_active_event_types(),this._require_canvas_event_listeners&&this.dispatcher.scene.viewersRegister.traverseViewers((t=>{t.eventsController.updateEvents(this)}))}activeEventDatas(){return this._activeEventDatas}_update_active_event_types(){const t=new Map;this._nodes_by_graph_node_id.forEach((e=>{if(e.parent()){const n=e.activeEventDatas();for(let e of n)t.set(e,!0)}})),this._activeEventDatas=[],t.forEach(((t,e)=>{this._activeEventDatas.push(e)}))}}var _i;!function(t){t.LOADED=\\\\\\\"sceneLoaded\\\\\\\",t.PLAY=\\\\\\\"play\\\\\\\",t.PAUSE=\\\\\\\"pause\\\\\\\",t.TICK=\\\\\\\"tick\\\\\\\"}(_i||(_i={}));const mi=[_i.LOADED,_i.PLAY,_i.PAUSE,_i.TICK];class fi extends pi{type(){return\\\\\\\"scene\\\\\\\"}acceptedEventTypes(){return mi.map((t=>`${t}`))}}class gi{constructor(t){this.scene=t,this._loading_state=!1,this._auto_updating=!0,this._first_object_loaded=!1}get LOADED_EVENT_CONTEXT(){return this._LOADED_EVENT_CONTEXT=this._LOADED_EVENT_CONTEXT||{event:new Event(_i.LOADED)}}markAsLoading(){this._set_loading_state(!0)}async markAsLoaded(){this.scene.missingExpressionReferencesController.resolveMissingReferences(),await this._set_loading_state(!1),this.trigger_loaded_event()}trigger_loaded_event(){globalThis.Event&&this.scene.eventsDispatcher.sceneEventsController.processEvent(this.LOADED_EVENT_CONTEXT)}async _set_loading_state(t){this._loading_state=t,await this.set_auto_update(!this._loading_state)}isLoading(){return this._loading_state}loaded(){return!this._loading_state}autoUpdating(){return this._auto_updating}async set_auto_update(t){if(this._auto_updating!==t&&(this._auto_updating=t,this._auto_updating)){const t=this.scene.root();t&&await t.processQueue()}}on_first_object_loaded(){var t;if(!this._first_object_loaded){this._first_object_loaded=!0;const e=document.getElementById(\\\\\\\"scene_loading_container\\\\\\\");e&&(null===(t=e.parentElement)||void 0===t||t.removeChild(e))}}}const vi={EMPTY:\\\\\\\"\\\\\\\",UV:\\\\\\\"/COP/imageUv\\\\\\\",ENV_MAP:\\\\\\\"/COP/envMap\\\\\\\",CUBE_MAP:\\\\\\\"/COP/cubeCamera\\\\\\\"};class yi{constructor(t=\\\\\\\"\\\\\\\"){this._path=t,this._node=null}set_path(t){this._path=t}set_node(t){this._node=t}path(){return this._path}node(){return this._node}resolve(t){this._node=bi.findNode(t,this._path)}clone(){const t=new yi(this._path);return t.set_node(this._node),t}nodeWithContext(t,e){const n=this.node();if(!n)return void(null==e||e.set(`no node found at ${this.path()}`));const i=n.context();return i==t?n:void(null==e||e.set(`expected ${t} node, but got a ${i}`))}}class xi{constructor(t=\\\\\\\"\\\\\\\"){this._path=t,this._param=null}set_path(t){this._path=t}set_param(t){this._param=t}path(){return this._path}param(){return this._param}resolve(t){this._param=bi.findParam(t,this._path)}clone(){const t=new xi(this._path);return t.set_param(this._param),t}paramWithType(t,e){const n=this.param();if(n)return n.type()==t?n:void(null==e||e.set(`expected ${t} node, but got a ${n.type()}`));null==e||e.set(`no param found at ${this.path()}`)}}class bi{static split_parent_child(t){const e=t.split(bi.SEPARATOR).filter((t=>t.length>0)),n=e.pop();return{parent:e.join(bi.SEPARATOR),child:n}}static findNode(t,e,n){if(!t)return null;const i=e.split(bi.SEPARATOR).filter((t=>t.length>0)),s=i[0];let r=null;if(e[0]!==bi.SEPARATOR){switch(s){case bi.PARENT:null==n||n.add_path_element(s),r=t.parent();break;case bi.CURRENT:null==n||n.add_path_element(s),r=t;break;default:r=t.node(s),r&&(null==n||n.add_node(s,r))}if(null!=r&&i.length>1){const t=i.slice(1).join(bi.SEPARATOR);r=this.findNode(r,t,n)}return r}{const i=e.substr(1);r=this.findNode(t.root(),i,n)}return r}static findParam(t,e,n){if(!t)return null;const i=e.split(bi.SEPARATOR);if(1===i.length)return t.params.get(i[0]);{const e=i.slice(0,+(i.length-2)+1||void 0).join(bi.SEPARATOR),s=this.findNode(t,e,n);if(null!=s){const t=i[i.length-1],e=s.params.get(t);return n&&e&&n.add_node(t,e),e}return null}}static relativePath(t,e){const n=this.closestCommonParent(t,e);if(n){const i=this.distanceToParent(t,n);let s=\\\\\\\"\\\\\\\";if(i>0){let t=0;const e=[];for(;t++<i;)e.push(bi.PARENT);s=e.join(bi.SEPARATOR)+bi.SEPARATOR}const r=n.path().split(bi.SEPARATOR).filter((t=>t.length>0)),o=e.path().split(bi.SEPARATOR).filter((t=>t.length>0)),a=[];let l=0;for(let t of o)r[l]||a.push(t),l++;return`${s}${a.join(bi.SEPARATOR)}`}return e.path()}static closestCommonParent(t,e){const n=this.parents(t).reverse().concat([t]),i=this.parents(e).reverse().concat([e]),s=Math.min(n.length,i.length);let r=null;for(let t=0;t<s;t++)n[t].graphNodeId()==i[t].graphNodeId()&&(r=n[t]);return r}static parents(t){const e=[];let n=t.parent();for(;n;)e.push(n),n=n.parent();return e}static distanceToParent(t,e){let n=0,i=t;const s=e.graphNodeId();for(;i&&i.graphNodeId()!=s;)n+=1,i=i.parent();return i&&i.graphNodeId()==s?n:-1}static makeAbsolutePath(t,e){if(e[0]==bi.SEPARATOR)return e;const n=e.split(bi.SEPARATOR),i=n.shift();if(!i)return t.path();switch(i){case\\\\\\\"..\\\\\\\":{const e=t.parent();return e?e==t.scene().root()?bi.SEPARATOR+n.join(bi.SEPARATOR):this.makeAbsolutePath(e,n.join(bi.SEPARATOR)):null}case\\\\\\\".\\\\\\\":return this.makeAbsolutePath(t,n.join(bi.SEPARATOR));default:return[t.path(),e].join(bi.SEPARATOR)}}}bi.SEPARATOR=\\\\\\\"/\\\\\\\",bi.DOT=\\\\\\\".\\\\\\\",bi.CURRENT=bi.DOT,bi.PARENT=\\\\\\\"..\\\\\\\",bi.CURRENT_WITH_SLASH=`${bi.CURRENT}/`,bi.PARENT_WITH_SLASH=`${bi.PARENT}/`,bi.NON_LETTER_PREFIXES=[bi.SEPARATOR,bi.DOT];class wi{constructor(t,e){this.param=t,this.path=e}absolutePath(){return bi.makeAbsolutePath(this.param.node,this.path)}matchesPath(t){return this.absolutePath()==t}resolveMissingDependencies(){const t=this.param.rawInputSerialized();this.param.set(this.param.defaultValue()),this.param.set(t)}}class Ti{constructor(t){this.scene=t,this.references=new Map}register(t,e){const n=new wi(t,e);return h.addToSetAtEntry(this.references,t.graphNodeId(),n),n}deregisterParam(t){this.references.delete(t.graphNodeId())}resolveMissingReferences(){const t=[];this.references.forEach((e=>{for(let n of e)this._is_reference_resolvable(n)&&t.push(n)}));for(let e of t)e.resolveMissingDependencies()}_is_reference_resolvable(t){const e=t.absolutePath();if(e){if(this.scene.node(e))return!0;{const t=bi.split_parent_child(e);if(t.child){const e=this.scene.node(t.parent);if(e){if(e.params.get(t.child))return!0}}}}}checkForMissingReferences(t){this._checkForMissingReferencesForNode(t);for(let e of t.params.all)this._checkForMissingReferencesForParam(e)}_checkForMissingReferencesForNode(t){const e=t.graphNodeId(),n=h.arrayFromValues(this.references);for(let i of n){let n=!1;const s=u.toArray(i);for(let e of s)e.matchesPath(t.path())&&(n=!0,e.resolveMissingDependencies());n&&this.references.delete(e)}}_checkForMissingReferencesForParam(t){const e=t.graphNodeId(),n=h.arrayFromValues(this.references);for(let i of n){let n=!1;const s=u.toArray(i);for(let e of s)e.matchesPath(t.path())&&(n=!0,e.resolveMissingDependencies());n&&this.references.delete(e)}}}class Ai{constructor(t){this.node=t,this._dirty_count=0,this._dirty=!0}dispose(){this._cached_successors=void 0,this._post_dirty_hooks=void 0,this._post_dirty_hook_names=void 0}isDirty(){return!0===this._dirty}dirtyTimestamp(){return this._dirty_timestamp}dirtyCount(){return this._dirty_count}addPostDirtyHook(t,e){this._post_dirty_hook_names=this._post_dirty_hook_names||[],this._post_dirty_hooks=this._post_dirty_hooks||[],this._post_dirty_hook_names.includes(t)?console.warn(`hook with name ${t} already exists`,this.node):(this._post_dirty_hook_names.push(t),this._post_dirty_hooks.push(e))}removePostDirtyHook(t){if(this._post_dirty_hook_names&&this._post_dirty_hooks){const e=this._post_dirty_hook_names.indexOf(t);e>=0&&(this._post_dirty_hook_names.splice(e,1),this._post_dirty_hooks.splice(e,1))}}hasHook(t){return!!this._post_dirty_hook_names&&this._post_dirty_hook_names.includes(t)}removeDirtyState(){this._dirty=!1}setForbiddenTriggerNodes(t){this._forbidden_trigger_nodes=t.map((t=>t.graphNodeId()))}setDirty(t,e){if(null==e&&(e=!0),t&&this._forbidden_trigger_nodes&&this._forbidden_trigger_nodes.includes(t.graphNodeId()))return;null==t&&(t=this.node),this._dirty=!0;const n=li.performance.performanceManager();this._dirty_timestamp=n.now(),this._dirty_count+=1,this.runPostDirtyHooks(t),!0===e&&this.setSuccessorsDirty(t)}runPostDirtyHooks(t){if(this._post_dirty_hooks){const e=this.node.scene().cooker;if(e.blocked)e.enqueue(this.node,t);else for(let e of this._post_dirty_hooks)e(t)}}setSuccessorsDirty(t){this._cached_successors=this._cached_successors||this.node.graphAllSuccessors();for(let e of this._cached_successors)e.dirtyController.setDirty(t,false)}clearSuccessorsCache(){this._cached_successors=void 0}clearSuccessorsCacheWithPredecessors(){this.clearSuccessorsCache();for(let t of this.node.graphAllPredecessors())t.dirtyController.clearSuccessorsCache()}}class Mi{constructor(t,e){this._scene=t,this._name=e,this._dirty_controller=new Ai(this),this._graph_node_id=t.graph.nextId(),t.graph.addNode(this),this._graph=t.graph}dispose(){this._dirty_controller.dispose(),this.graphRemove()}name(){return this._name}setName(t){this._name=t}scene(){return this._scene}graphNodeId(){return this._graph_node_id}get dirtyController(){return this._dirty_controller}setDirty(t){t=t||this,this._dirty_controller.setDirty(t)}setSuccessorsDirty(t){this._dirty_controller.setSuccessorsDirty(t)}removeDirtyState(){this._dirty_controller.removeDirtyState()}isDirty(){return this._dirty_controller.isDirty()}addPostDirtyHook(t,e){this._dirty_controller.addPostDirtyHook(t,e)}graphRemove(){this._graph.removeNode(this)}addGraphInput(t,e=!0){return this._graph.connect(t,this,e)}removeGraphInput(t){this._graph.disconnect(t,this)}graphDisconnectPredecessors(){this._graph.disconnectPredecessors(this)}graphDisconnectSuccessors(){this._graph.disconnectSuccessors(this)}graphPredecessorIds(){return this._graph.predecessorIds(this._graph_node_id)||[]}graphPredecessors(){return this._graph.predecessors(this)}graphSuccessors(){return this._graph.successors(this)}graphAllPredecessors(){return this._graph.allPredecessors(this)}graphAllSuccessors(){return this._graph.allSuccessors(this)}}var Ei;!function(t){t.CREATED=\\\\\\\"node_created\\\\\\\",t.DELETED=\\\\\\\"node_deleted\\\\\\\",t.NAME_UPDATED=\\\\\\\"node_name_update\\\\\\\",t.OVERRIDE_CLONABLE_STATE_UPDATE=\\\\\\\"node_override_clonable_state_update\\\\\\\",t.NAMED_OUTPUTS_UPDATED=\\\\\\\"node_named_outputs_updated\\\\\\\",t.NAMED_INPUTS_UPDATED=\\\\\\\"node_named_inputs_updated\\\\\\\",t.INPUTS_UPDATED=\\\\\\\"node_inputs_updated\\\\\\\",t.PARAMS_UPDATED=\\\\\\\"node_params_updated\\\\\\\",t.UI_DATA_POSITION_UPDATED=\\\\\\\"node_ui_data_position_updated\\\\\\\",t.UI_DATA_COMMENT_UPDATED=\\\\\\\"node_ui_data_comment_updated\\\\\\\",t.ERROR_UPDATED=\\\\\\\"node_error_updated\\\\\\\",t.FLAG_BYPASS_UPDATED=\\\\\\\"bypass_flag_updated\\\\\\\",t.FLAG_DISPLAY_UPDATED=\\\\\\\"display_flag_updated\\\\\\\",t.FLAG_OPTIMIZE_UPDATED=\\\\\\\"optimize_flag_updated\\\\\\\",t.SELECTION_UPDATED=\\\\\\\"selection_updated\\\\\\\"}(Ei||(Ei={}));class Si{constructor(t,e=0,n=0){this.node=t,this._position=new d.a,this._width=50,this._color=new D.a(.75,.75,.75),this._layout_vertical=!0,this._json={x:0,y:0},this._position.x=e,this._position.y=n}setComment(t){this._comment=t,this.node.emit(Ei.UI_DATA_COMMENT_UPDATED)}comment(){return this._comment}setColor(t){this._color=t}color(){return this._color}setLayoutHorizontal(){this._layout_vertical=!1}isLayoutVertical(){return this._layout_vertical}copy(t){this._position.copy(t.position()),this._color.copy(t.color())}position(){return this._position}setPosition(t,e=0){if(m.isNumber(t)){const n=t;this._position.set(n,e)}else this._position.copy(t);this.node.emit(Ei.UI_DATA_POSITION_UPDATED)}translate(t,e=!1){this._position.add(t),e&&(this._position.x=Math.round(this._position.x),this._position.y=Math.round(this._position.y)),this.node.emit(Ei.UI_DATA_POSITION_UPDATED)}toJSON(){return this._json.x=this._position.x,this._json.y=this._position.y,this._json.comment=this._comment,this._json}}class Ci{constructor(t){this.node=t,this._state=!0,this._hooks=null}onUpdate(t){this._hooks=this._hooks||[],this._hooks.push(t)}_on_update(){}set(t){this._state!=t&&(this._state=t,this._on_update(),this.runHooks())}active(){return this._state}toggle(){this.set(!this._state)}runHooks(){if(this._hooks)for(let t of this._hooks)t()}}class Ni extends Ci{constructor(){super(...arguments),this._state=!1}_on_update(){this.node.emit(Ei.FLAG_BYPASS_UPDATED),this.node.setDirty()}}class Li extends Ci{_on_update(){this.node.emit(Ei.FLAG_DISPLAY_UPDATED)}}class Oi extends Ci{constructor(){super(...arguments),this._state=!1}_on_update(){this.node.emit(Ei.FLAG_OPTIMIZE_UPDATED)}}class Pi{constructor(t){this.node=t}hasDisplay(){return!1}hasBypass(){return!1}hasOptimize(){return!1}}function Ri(t){return class extends t{constructor(){super(...arguments),this.display=new Li(this.node)}hasDisplay(){return!0}}}function Ii(t){return class extends t{constructor(){super(...arguments),this.bypass=new Ni(this.node)}hasBypass(){return!0}}}function Fi(t){return class extends t{constructor(){super(...arguments),this.optimize=new Oi(this.node)}hasOptimize(){return!0}}}class Di extends(Ri(Pi)){}class Bi extends(Ii(Pi)){}class zi extends(Ii(Ri(Pi))){}class ki extends(Fi(Ii(Pi))){}class Ui extends(Fi(Ii(Ri(Pi)))){}class Gi{constructor(t){this.node=t}}class Vi extends Gi{active(){return this.paramsTimeDependent()||this.inputsTimeDependent()}paramsTimeDependent(){const t=this.node.params.names;for(let e of t){const t=this.node.params.get(e);if(t&&t.states.timeDependent.active())return!0}return!1}inputsTimeDependent(){const t=this.node.io.inputs.inputs();for(let e of t)if(e&&e.states.timeDependent.active())return!0;return!1}forceTimeDependent(){const t=this.node.graphPredecessors().map((t=>t.graphNodeId())),e=this.node.scene().timeController.graphNode;t.includes(e.graphNodeId())||this.node.addGraphInput(e,!1)}unforceTimeDependent(){const t=this.node.scene().timeController.graphNode;this.node.removeGraphInput(t)}}class Hi extends Gi{set(t){this._message!=t&&(t&&li.error(`[${this.node.path()}] error: '${t}'`),this._message=t,this.onUpdate())}message(){return this._message}clear(){this.set(void 0)}active(){return null!=this._message}onUpdate(){null!=this._message&&this.node._setContainer(null,`from error '${this._message}'`),this.node.emit(Ei.ERROR_UPDATED)}}class ji{constructor(t){this.node=t,this.timeDependent=new Vi(this.node),this.error=new Hi(this.node)}}class Wi{constructor(t){this.node=t,this._graph_node=new Mi(t.scene(),\\\\\\\"node_name_controller\\\\\\\")}dispose(){this._graph_node.dispose(),this._on_set_name_hooks=void 0,this._on_set_fullPath_hooks=void 0}get graph_node(){return this._graph_node}static base_name(t){let e=t.type();const n=e[e.length-1];return m.isNaN(parseInt(n))||(e+=\\\\\\\"_\\\\\\\"),`${e}1`}requestNameToParent(t){const e=this.node.parent();e&&e.childrenAllowed()&&e.childrenController?e.childrenController.setChildName(this.node,t):console.warn(\\\\\\\"requestNameToParent failed, no parent found\\\\\\\")}setName(t){t!=this.node.name()&&this.requestNameToParent(t)}updateNameFromParent(t){var e;if(this.node._set_core_name(t),this._postSetName(),this.runPostSetFullPathHooks(),this.node.childrenAllowed()){const t=null===(e=this.node.childrenController)||void 0===e?void 0:e.children();if(t)for(let e of t)e.nameController.runPostSetFullPathHooks()}this.node.lifecycle.creationCompleted()&&(this.node.scene().missingExpressionReferencesController.checkForMissingReferences(this.node),this.node.scene().expressionsController.regenerateReferringExpressions(this.node)),this.node.scene().referencesController.notifyNameUpdated(this.node),this.node.emit(Ei.NAME_UPDATED)}add_post_set_name_hook(t){this._on_set_name_hooks=this._on_set_name_hooks||[],this._on_set_name_hooks.push(t)}add_post_set_fullPath_hook(t){this._on_set_fullPath_hooks=this._on_set_fullPath_hooks||[],this._on_set_fullPath_hooks.push(t)}_postSetName(){if(this._on_set_name_hooks)for(let t of this._on_set_name_hooks)t()}runPostSetFullPathHooks(){if(this._on_set_fullPath_hooks)for(let t of this._on_set_fullPath_hooks)t()}}class qi{constructor(t){this.node=t,this._parent=null}parent(){return this._parent}setParent(t){t!=this.node.parentController.parent()&&(this._parent=t,this._parent&&this.node.nameController.requestNameToParent(Wi.base_name(this.node)))}firstAncestorWithContext(t){return this._parent?this._parent.context()==t?this._parent:this._parent.parentController.firstAncestorWithContext(t):null}path(t){const e=bi.SEPARATOR;if(null!=this._parent){if(this._parent==t)return this.node.name();{const n=this._parent.path(t);return n===e?n+this.node.name():n+e+this.node.name()}}return e}onSetParent(){if(this._on_set_parent_hooks)for(let t of this._on_set_parent_hooks)t()}findNode(t){if(null==t)return null;if(t==bi.CURRENT||t==bi.CURRENT_WITH_SLASH)return this.node;if(t==bi.PARENT||t==bi.PARENT_WITH_SLASH)return this.node.parent();const e=bi.SEPARATOR;if(t===e)return this.node.scene().root();if(t[0]===e)return t=t.substring(1,t.length),this.node.scene().root().node(t);if(t.split){const n=t.split(e);if(1===n.length){const t=n[0];return this.node.childrenController?this.node.childrenController.childByName(t):null}return bi.findNode(this.node,t)}return console.error(\\\\\\\"unexpected path given:\\\\\\\",t),null}}const Xi=/[, ]/,Yi=/\\\\d+$/,$i=/^0+/,Ji=/,| /,Zi=/^-?\\\\d+\\\\.?\\\\d*$/;var Ki,Qi,ts,es,ns,is;!function(t){t.TRUE=\\\\\\\"true\\\\\\\",t.FALSE=\\\\\\\"false\\\\\\\"}(Ki||(Ki={}));class ss{static isBoolean(t){return t==Ki.TRUE||t==Ki.FALSE}static toBoolean(t){return t==Ki.TRUE}static isNumber(t){return Zi.test(t)}static tailDigits(t){const e=t.match(Yi);return e?parseInt(e[0]):0}static increment(t){const e=t.match(Yi);if(e){let n=e[0],i=\\\\\\\"\\\\\\\";const s=n.match($i);s&&(i=s[0]);const r=parseInt(n);0==r&&i.length>0&&\\\\\\\"0\\\\\\\"==i[i.length-1]&&(i=i.slice(0,-1));return`${t.substring(0,t.length-e[0].length)}${i}${r+1}`}return`${t}1`}static pluralize(t){return\\\\\\\"s\\\\\\\"!==t[t.length-1]?`${t}s`:t}static camelCase(t){const e=t.replace(/_/g,\\\\\\\" \\\\\\\").split(\\\\\\\" \\\\\\\");let n=\\\\\\\"\\\\\\\";for(let t=0;t<e.length;t++){let i=e[t].toLowerCase();t>0&&(i=this.upperFirst(i)),n+=i}return n}static upperFirst(t){return t[0].toUpperCase()+t.substr(1)}static titleize(t){return t.split(/\\\\s|_/g).map((t=>this.upperFirst(t))).join(\\\\\\\" \\\\\\\")}static precision(t,e=2){e=Math.max(e,0);const n=`${t}`.split(\\\\\\\".\\\\\\\");if(e<=0)return n[0];let i=n[1];if(void 0!==i)return i.length>e&&(i=i.substring(0,e)),i=i.padEnd(e,\\\\\\\"0\\\\\\\"),`${n[0]}.${i}`;{const n=`${t}.`,i=n.length+e;return n.padEnd(i,\\\\\\\"0\\\\\\\")}}static ensureFloat(t){const e=`${t}`;return e.indexOf(\\\\\\\".\\\\\\\")>=0?e:`${e}.0`}static ensureInteger(t){const e=`${t}`;return e.indexOf(\\\\\\\".\\\\\\\")>=0?e.split(\\\\\\\".\\\\\\\")[0]:e}static matchMask(t,e){if(\\\\\\\"*\\\\\\\"===e)return!0;if(t==e)return!0;const n=e.split(\\\\\\\" \\\\\\\");if(n.length>1){for(let e of n){if(this.matchMask(t,e))return!0}return!1}e=`^${e=e.split(\\\\\\\"*\\\\\\\").join(\\\\\\\".*\\\\\\\")}$`;return new RegExp(e).test(t)}static matchesOneMask(t,e){let n=!1;for(let i of e)ss.matchMask(t,i)&&(n=!0);return n}static attribNames(t){const e=t.split(Xi),n=new Set;for(let t of e)t=t.trim(),t.length>0&&n.add(t);const i=new Array(n.size);let s=0;return n.forEach((t=>{i[s]=t,s++})),i}static indices(t){const e=t.split(Ji);if(e.length>1){const t=e.flatMap((t=>this.indices(t)));return f.uniq(t).sort(((t,e)=>t-e))}{const t=e[0];if(t){const e=\\\\\\\"-\\\\\\\";if(t.indexOf(e)>0){const n=t.split(e);return f.range(parseInt(n[0]),parseInt(n[1])+1)}{const e=parseInt(t);return m.isNumber(e)?[e]:[]}}return[]}}static escapeLineBreaks(t){return t.replace(/(\\\\r\\\\n|\\\\n|\\\\r)/gm,\\\\\\\"\\\\\\\\n\\\\\\\")}static sanitizeName(t){return t=(t=t.replace(/[^A-Za-z0-9]/g,\\\\\\\"_\\\\\\\")).replace(/^[0-9]/,\\\\\\\"_\\\\\\\")}}class rs{constructor(t){this._node=t,this._node_ids=[],this._json=[]}node(){return this._node}nodes(){return this._node.scene().graph.nodesFromIds(this._node_ids)}contains(t){return this._node_ids.includes(t.graphNodeId())}equals(t){const e=t.map((t=>t.graphNodeId())).sort();return f.isEqual(e,this._node_ids)}clear(){this._node_ids=[],this.send_update_event()}set(t){this._node_ids=[],this.add(t)}add(t){const e=t.map((t=>t.graphNodeId()));this._node_ids=f.union(this._node_ids,e),this.send_update_event()}remove(t){const e=t.map((t=>t.graphNodeId()));this._node_ids=f.difference(this._node_ids,e),this.send_update_event()}send_update_event(){this._node.emit(Ei.SELECTION_UPDATED)}toJSON(){return this._json=this._json||[],this._json=this._node_ids.map((t=>t)),this._json}}!function(t){t.ALWAYS=\\\\\\\"always\\\\\\\",t.NEVER=\\\\\\\"never\\\\\\\",t.FROM_NODE=\\\\\\\"from_node\\\\\\\"}(Qi||(Qi={}));class os{static unreachable(t){throw new Error(\\\\\\\"Didn't expect to get here\\\\\\\")}}class as{constructor(t){this.inputs_controller=t,this._clone_required_states=[],this._overridden=!1}init_inputs_cloned_state(t){m.isArray(t)?this._cloned_states=t:this._cloned_state=t,this._update_clone_required_state()}override_cloned_state_allowed(){if(this._cloned_states)for(let t of this._cloned_states)if(t==Qi.FROM_NODE)return!0;return!!this._cloned_state&&this._cloned_state==Qi.FROM_NODE}clone_required_state(t){return this._clone_required_states[t]}clone_required_states(){return this._clone_required_states}_get_clone_required_state(t){const e=this._cloned_states;if(e){const n=e[t];if(null!=n)return this.clone_required_from_state(n)}return!this._cloned_state||this.clone_required_from_state(this._cloned_state)}clone_required_from_state(t){switch(t){case Qi.ALWAYS:return!0;case Qi.NEVER:return!1;case Qi.FROM_NODE:return!this._overridden}return os.unreachable(t)}override_cloned_state(t){this._overridden=t,this._update_clone_required_state()}overriden(){return this._overridden}_update_clone_required_state(){if(this._cloned_states){const t=[];for(let e=0;e<this._cloned_states.length;e++)t[e]=this._get_clone_required_state(e);this._clone_required_states=t}else if(this._cloned_state){const t=this.inputs_controller.inputs_count(),e=[];for(let n=0;n<t;n++)e[n]=this._get_clone_required_state(n);this._clone_required_states=e}else;}}class ls{constructor(t){this.operation_container=t}inputs_count(){return this.operation_container.inputs_count()}init_inputs_cloned_state(t){this._cloned_states_controller||(this._cloned_states_controller=new as(this),this._cloned_states_controller.init_inputs_cloned_state(t))}clone_required(t){var e;const n=null===(e=this._cloned_states_controller)||void 0===e?void 0:e.clone_required_state(t);return null==n||n}override_cloned_state(t){var e;null===(e=this._cloned_states_controller)||void 0===e||e.override_cloned_state(t)}}class cs extends class{constructor(t,e,n){this.operation=t,this.name=e,this.params={},this._apply_default_params(),this._apply_init_params(n),this._init_cloned_states()}path_param_resolve_required(){return null!=this._path_params}resolve_path_params(t){if(this._path_params)for(let e of this._path_params)e.resolve(t)}_apply_default_params(){const t=this.operation.constructor.DEFAULT_PARAMS,e=Object.keys(t);for(let n of e){const e=t[n],i=this._convert_param_data(n,e);null!=i&&(this.params[n]=i)}}_apply_init_params(t){const e=Object.keys(t);for(let n of e){const e=t[n];if(null!=e.simple_data){const t=e.simple_data,i=this._convert_export_param_data(n,t);null!=i&&(this.params[n]=i)}}}_convert_param_data(t,e){if(m.isNumber(e)||m.isBoolean(e)||m.isString(e))return e;if(e instanceof yi){const t=e.clone();return this._path_params||(this._path_params=[]),this._path_params.push(t),t}return e instanceof D.a||e instanceof d.a||e instanceof p.a||e instanceof _.a?e.clone():void 0}_convert_export_param_data(t,e){const n=this.params[t];if(m.isBoolean(e))return e;if(m.isNumber(e))return m.isBoolean(n)?e>=1:e;if(m.isString(e)){if(n){if(n instanceof yi)return n.set_path(e);if(n instanceof xi)return n.set_path(e)}return e}m.isArray(e)&&this.params[t].fromArray(e)}setInput(t,e){this._inputs=this._inputs||[],this._inputs[t]=e}inputs_count(){return this._inputs?this._inputs.length:0}inputsController(){return this._inputs_controller=this._inputs_controller||new ls(this)}_init_cloned_states(){const t=this.operation.constructor.INPUT_CLONED_STATE;this.inputsController().init_inputs_cloned_state(t)}input_clone_required(t){return!this._inputs_controller||this._inputs_controller.clone_required(t)}override_input_clone_state(t){this.inputsController().override_cloned_state(t)}cook(t){return this.operation.cook(t,this.params)}}{constructor(t,e,n){super(t,e,n),this.operation=t,this.name=e,this.init_params=n,this._inputs=[],this._current_input_index=0,this._dirty=!0}add_input(t){super.setInput(this._current_input_index,t),this.increment_input_index()}increment_input_index(){this._current_input_index++}current_input_index(){return this._current_input_index}setDirty(){if(!this._dirty){this._compute_result=void 0;for(let t=0;t<this._inputs.length;t++){this._inputs[t].setDirty()}}}async compute(t,e){if(this._compute_result)return this._compute_result;const n=[],i=e.get(this);i&&i.forEach(((e,i)=>{n[i]=t[e]}));for(let i=0;i<this._inputs.length;i++){const s=this._inputs[i];let r=await s.compute(t,e);r&&(this.input_clone_required(i)&&(r=r.clone()),n[i]=r)}const s=this.operation.cook(n,this.params);return this._compute_result=s?s instanceof Promise?await s:s:void 0,this._dirty=!1,this._compute_result}}class hs{constructor(t,e){this.node=t,this._context=e,this._childrenByName=new Map,this._childrenByType=new Map,this._childrenAndGrandchildrenByContext=new Map}get selection(){return this._selection=this._selection||new rs(this.node)}dispose(){const t=this.children();for(let e of t)this.node.removeNode(e);this._selection=void 0}get context(){return this._context}set_output_node_find_method(t){this._output_node_find_method=t}output_node(){if(this._output_node_find_method)return this._output_node_find_method()}setChildName(t,e){let n;if(e=ss.sanitizeName(e),null!=(n=this._childrenByName.get(e))){if(t.name()===e&&n.graphNodeId()===t.graphNodeId())return;return e=ss.increment(e),this.setChildName(t,e)}{const n=t.name();this._childrenByName.get(n)&&this._childrenByName.delete(n),this._childrenByName.set(e,t),t.nameController.updateNameFromParent(e),this._addToNodesByType(t),this.node.scene().nodesController.addToInstanciatedNode(t)}}node_context_signature(){return`${this.node.context()}/${this.node.type()}`}available_children_classes(){return li.registeredNodes(this._context,this.node.type())}isValidChildType(t){return null!=this.available_children_classes()[t]}createNode(t,e,n=\\\\\\\"\\\\\\\"){if(\\\\\\\"string\\\\\\\"==typeof t){const i=this._find_node_class(t);return this._create_and_init_node(i,e,n)}return this._create_and_init_node(t,e,n)}_create_and_init_node(t,e,n=\\\\\\\"\\\\\\\"){const i=new t(this.node.scene(),`child_node_${n}`,e);return i.initialize_base_and_node(),this._addNode(i),i.lifecycle.setCreationCompleted(),i}_find_node_class(t){const e=this.available_children_classes()[t.toLowerCase()];if(null==e){const e=`child node type '${t}' not found for node '${this.node.path()}'. Available types are: ${Object.keys(this.available_children_classes()).join(\\\\\\\", \\\\\\\")}, ${this._context}, ${this.node.type()}`;throw console.error(e),e}return e}create_operation_container(t,e,n){const i=li.registeredOperation(this._context,t);if(null==i){const e=`no operation found with context ${this._context}/${t}`;throw console.error(e),e}{const t=new i(this.node.scene());return new cs(t,e,n||{})}}_addNode(t){if(t.setParent(this.node),t.params.init(),t.parentController.onSetParent(),t.nameController.runPostSetFullPathHooks(),t.childrenAllowed()&&t.childrenController)for(let e of t.childrenController.children())e.nameController.runPostSetFullPathHooks();return this.node.emit(Ei.CREATED,{child_node_json:t.toJSON()}),this.node.scene().lifecycleController.onCreateHookAllowed()&&t.lifecycle.run_on_create_hooks(),t.lifecycle.run_on_add_hooks(),this.setChildName(t,Wi.base_name(t)),this.node.lifecycle.run_on_child_add_hooks(t),t.require_webgl2()&&this.node.scene().webgl_controller.set_require_webgl2(),this.node.scene().missingExpressionReferencesController.checkForMissingReferences(t),t}removeNode(t){if(t.parent()!=this.node)return console.warn(`node ${t.name()} not under parent ${this.node.path()}`);{this.selection.contains(t)&&this.selection.remove([t]);const e=t.io.connections.firstInputConnection(),n=t.io.connections.inputConnections(),i=t.io.connections.outputConnections();if(n)for(let t of n)t&&t.disconnect({setInput:!0});if(i)for(let t of i)if(t&&(t.disconnect({setInput:!0}),e)){const n=e.node_src,i=t.output_index,s=t.node_dest,r=t.input_index;s.io.inputs.setInput(r,n,i)}t.setParent(null),this._childrenByName.delete(t.name()),this._removeFromNodesByType(t),this.node.scene().nodesController.removeFromInstanciatedNode(t),t.setSuccessorsDirty(this.node),t.graphDisconnectSuccessors(),this.node.lifecycle.run_on_child_remove_hooks(t),t.lifecycle.run_on_delete_hooks(),t.dispose(),t.emit(Ei.DELETED,{parent_id:this.node.graphNodeId()})}}_addToNodesByType(t){const e=t.graphNodeId(),n=t.type();h.addToSetAtEntry(this._childrenByType,n,e),this._addToChildrenAndGrandchildrenByContext(t)}_removeFromNodesByType(t){const e=t.graphNodeId(),n=t.type();h.removeFromSetAtEntry(this._childrenByType,n,e),this._removeFromChildrenAndGrandchildrenByContext(t)}_addToChildrenAndGrandchildrenByContext(t){var e;const n=t.graphNodeId(),i=t.context();h.addToSetAtEntry(this._childrenAndGrandchildrenByContext,i,n);const s=this.node.parent();s&&s.childrenAllowed()&&(null===(e=s.childrenController)||void 0===e||e._addToChildrenAndGrandchildrenByContext(t))}_removeFromChildrenAndGrandchildrenByContext(t){var e;const n=t.graphNodeId(),i=t.context();h.removeFromSetAtEntry(this._childrenAndGrandchildrenByContext,i,n);const s=this.node.parent();s&&s.childrenAllowed()&&(null===(e=s.childrenController)||void 0===e||e._removeFromChildrenAndGrandchildrenByContext(t))}nodesByType(t){const e=this._childrenByType.get(t);if(!e)return[];const n=this.node.scene().graph,i=[];for(let t of e){const e=n.nodeFromId(t);e&&i.push(e)}return i}childByName(t){return this._childrenByName.get(t)||null}hasChildrenAndGrandchildrenWithContext(t){return null!=this._childrenAndGrandchildrenByContext.get(t)}children(){const t=[];return this._childrenByName.forEach((e=>{t.push(e)})),t}childrenNames(){const t=[];return this._childrenByName.forEach(((e,n)=>{t.push(n)})),t}traverseChildren(t){this._childrenByName.forEach((e=>{var n;t(e),null===(n=e.childrenController)||void 0===n||n.traverseChildren(t)}))}}class us{constructor(t){this.node=t,this._creation_completed=!1}dispose(){this._on_child_add_hooks=void 0,this._on_child_remove_hooks=void 0,this._on_create_hooks=void 0,this._on_add_hooks=void 0,this._on_delete_hooks=void 0}setCreationCompleted(){this._creation_completed||(this._creation_completed=!0)}creationCompleted(){return this.node.scene().loadingController.loaded()&&this._creation_completed}add_on_child_add_hook(t){this._on_child_add_hooks=this._on_child_add_hooks||[],this._on_child_add_hooks.push(t)}run_on_child_add_hooks(t){this.execute_hooks_with_child_node(this._on_child_add_hooks,t)}add_on_child_remove_hook(t){this._on_child_remove_hooks=this._on_child_remove_hooks||[],this._on_child_remove_hooks.push(t)}run_on_child_remove_hooks(t){this.execute_hooks_with_child_node(this._on_child_remove_hooks,t)}add_on_create_hook(t){this._on_create_hooks=this._on_create_hooks||[],this._on_create_hooks.push(t)}run_on_create_hooks(){this.execute_hooks(this._on_create_hooks)}add_on_add_hook(t){this._on_add_hooks=this._on_add_hooks||[],this._on_add_hooks.push(t)}run_on_add_hooks(){this.execute_hooks(this._on_add_hooks)}add_delete_hook(t){this._on_delete_hooks=this._on_delete_hooks||[],this._on_delete_hooks.push(t)}run_on_delete_hooks(){this.execute_hooks(this._on_delete_hooks)}execute_hooks(t){if(t){let e;for(e of t)e()}}execute_hooks_with_child_node(t,e){if(t){let n;for(n of t)n(e)}}}!function(t){t.ANIM=\\\\\\\"anim\\\\\\\",t.COP=\\\\\\\"cop\\\\\\\",t.EVENT=\\\\\\\"event\\\\\\\",t.GL=\\\\\\\"gl\\\\\\\",t.JS=\\\\\\\"js\\\\\\\",t.MANAGER=\\\\\\\"manager\\\\\\\",t.MAT=\\\\\\\"mat\\\\\\\",t.OBJ=\\\\\\\"obj\\\\\\\",t.POST=\\\\\\\"post\\\\\\\",t.ROP=\\\\\\\"rop\\\\\\\",t.SOP=\\\\\\\"sop\\\\\\\"}(ts||(ts={})),function(t){t.ANIM=\\\\\\\"animationsNetwork\\\\\\\",t.COP=\\\\\\\"copNetwork\\\\\\\",t.EVENT=\\\\\\\"eventsNetwork\\\\\\\",t.MAT=\\\\\\\"materialsNetwork\\\\\\\",t.POST=\\\\\\\"postProcessNetwork\\\\\\\",t.ROP=\\\\\\\"renderersNetwork\\\\\\\"}(es||(es={})),function(t){t.INPUT=\\\\\\\"subnetInput\\\\\\\",t.OUTPUT=\\\\\\\"subnetOutput\\\\\\\"}(ns||(ns={})),function(t){t.PERSPECTIVE=\\\\\\\"perspectiveCamera\\\\\\\",t.ORTHOGRAPHIC=\\\\\\\"orthographicCamera\\\\\\\"}(is||(is={}));const ds=[is.ORTHOGRAPHIC,is.PERSPECTIVE];var ps,_s;!function(t){t.ATTRIBUTE=\\\\\\\"attribute\\\\\\\"}(ps||(ps={})),function(t){t.DEVICE_ORIENTATION=\\\\\\\"cameraDeviceOrientationControls\\\\\\\",t.MAP=\\\\\\\"cameraMapControls\\\\\\\",t.ORBIT=\\\\\\\"cameraOrbitControls\\\\\\\",t.FIRST_PERSON=\\\\\\\"firstPersonControls\\\\\\\",t.PLAYER=\\\\\\\"playerControls\\\\\\\",t.MOBILE_JOYSTICK=\\\\\\\"mobileJoystickControls\\\\\\\"}(_s||(_s={}));const ms=[_s.DEVICE_ORIENTATION,_s.MAP,_s.ORBIT,_s.FIRST_PERSON,_s.MOBILE_JOYSTICK];class fs{constructor(t){this._node=t}set_node(t){this._node=t}node(){return this._node}set_content(t){this._content=t,this._post_set_content()}has_content(){return null!=this._content}content(){return this._content}_post_set_content(){}coreContent(){return this._content}coreContentCloned(){return this._content}infos(){return[]}}var gs=n(69);class vs extends Q.a{constructor(){super(),this.type=\\\\\\\"Scene\\\\\\\",this.background=null,this.environment=null,this.fog=null,this.overrideMaterial=null,this.autoUpdate=!0,\\\\\\\"undefined\\\\\\\"!=typeof __THREE_DEVTOOLS__&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent(\\\\\\\"observe\\\\\\\",{detail:this}))}copy(t,e){return super.copy(t,e),null!==t.background&&(this.background=t.background.clone()),null!==t.environment&&(this.environment=t.environment.clone()),null!==t.fog&&(this.fog=t.fog.clone()),null!==t.overrideMaterial&&(this.overrideMaterial=t.overrideMaterial.clone()),this.autoUpdate=t.autoUpdate,this.matrixAutoUpdate=t.matrixAutoUpdate,this}toJSON(t){const e=super.toJSON(t);return null!==this.fog&&(e.object.fog=this.fog.toJSON()),e}}vs.prototype.isScene=!0;var ys=n(49),xs=n(52),bs=n(42),ws=n(55),Ts=n(62),As=n(24),Ms=n(35);const Es=new p.a,Ss=new p.a;class Cs extends Q.a{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);const e=t.levels;for(let t=0,n=e.length;t<n;t++){const n=e[t];this.addLevel(n.object.clone(),n.distance)}return this.autoUpdate=t.autoUpdate,this}addLevel(t,e=0){e=Math.abs(e);const n=this.levels;let i;for(i=0;i<n.length&&!(e<n[i].distance);i++);return n.splice(i,0,{distance:e,object:t}),this.add(t),this}getCurrentLevel(){return this._currentLevel}getObjectForDistance(t){const e=this.levels;if(e.length>0){let n,i;for(n=1,i=e.length;n<i&&!(t<e[n].distance);n++);return e[n-1].object}return null}raycast(t,e){if(this.levels.length>0){Es.setFromMatrixPosition(this.matrixWorld);const n=t.ray.origin.distanceTo(Es);this.getObjectForDistance(n).raycast(t,e)}}update(t){const e=this.levels;if(e.length>1){Es.setFromMatrixPosition(t.matrixWorld),Ss.setFromMatrixPosition(this.matrixWorld);const n=Es.distanceTo(Ss)/t.zoom;let i,s;for(e[0].object.visible=!0,i=1,s=e.length;i<s&&n>=e[i].distance;i++)e[i-1].object.visible=!1,e[i].object.visible=!0;for(this._currentLevel=i-1;i<s;i++)e[i].object.visible=!1}}toJSON(t){const e=super.toJSON(t);!1===this.autoUpdate&&(e.object.autoUpdate=!1),e.object.levels=[];const n=this.levels;for(let t=0,i=n.length;t<i;t++){const i=n[t];e.object.levels.push({object:i.object.uuid,distance:i.distance})}return e}}var Ns;!function(t){t.OBJECT3D=\\\\\\\"Object3D\\\\\\\",t.GROUP=\\\\\\\"Group\\\\\\\",t.MESH=\\\\\\\"Mesh\\\\\\\",t.POINTS=\\\\\\\"Points\\\\\\\",t.LINE_SEGMENTS=\\\\\\\"LineSegments\\\\\\\",t.LOD=\\\\\\\"LOD\\\\\\\"}(Ns||(Ns={}));const Ls={[Ns.MESH]:B.a,[Ns.GROUP]:Fn.a,[Ns.POINTS]:ys.a,[Ns.LINE_SEGMENTS]:Ms.a,[Ns.OBJECT3D]:Q.a,[Ns.LOD]:Cs};function Os(t){switch(t){case Q.a:return Ns.OBJECT3D;case Fn.a:return Ns.GROUP;case B.a:return Ns.MESH;case ys.a:return Ns.POINTS;case Ms.a:return Ns.LINE_SEGMENTS;case Cs:return Ns.LOD;default:return li.warn(\\\\\\\"object type not supported\\\\\\\",t),Ns.MESH}}const Ps=[Ns.MESH,Ns.POINTS,Ns.LINE_SEGMENTS],Rs=[{name:\\\\\\\"Mesh\\\\\\\",value:Ps.indexOf(Ns.MESH)},{name:\\\\\\\"Points\\\\\\\",value:Ps.indexOf(Ns.POINTS)},{name:\\\\\\\"LineSegments\\\\\\\",value:Ps.indexOf(Ns.LINE_SEGMENTS)}],Is={MeshStandard:new ws.a({color:16777215,side:w.H,metalness:.5,roughness:.9}),[Ns.MESH]:new Ts.a({color:new D.a(1,1,1),side:w.H,vertexColors:!1,transparent:!0,depthTest:!0}),[Ns.POINTS]:new bs.a({color:16777215,size:.1,depthTest:!0}),[Ns.LINE_SEGMENTS]:new As.a({color:16777215,linewidth:1})};var Fs;!function(t){t[t.VERTEX=0]=\\\\\\\"VERTEX\\\\\\\",t[t.OBJECT=1]=\\\\\\\"OBJECT\\\\\\\"}(Fs||(Fs={}));const Ds=[Fs.VERTEX,Fs.OBJECT],Bs=[{name:\\\\\\\"vertex\\\\\\\",value:Fs.VERTEX},{name:\\\\\\\"object\\\\\\\",value:Fs.OBJECT}];var zs;!function(t){t[t.NUMERIC=0]=\\\\\\\"NUMERIC\\\\\\\",t[t.STRING=1]=\\\\\\\"STRING\\\\\\\"}(zs||(zs={}));const ks=[zs.NUMERIC,zs.STRING],Us=[{name:\\\\\\\"numeric\\\\\\\",value:zs.NUMERIC},{name:\\\\\\\"string\\\\\\\",value:zs.STRING}];var Gs;!function(t){t[t.FLOAT=1]=\\\\\\\"FLOAT\\\\\\\",t[t.VECTOR2=2]=\\\\\\\"VECTOR2\\\\\\\",t[t.VECTOR3=3]=\\\\\\\"VECTOR3\\\\\\\",t[t.VECTOR4=4]=\\\\\\\"VECTOR4\\\\\\\"}(Gs||(Gs={}));const Vs=[Gs.FLOAT,Gs.VECTOR2,Gs.VECTOR3,Gs.VECTOR4],Hs=[Gs.FLOAT,Gs.VECTOR4],js={ATTRIB_CLASS:{VERTEX:Fs.VERTEX,OBJECT:Fs.OBJECT},OBJECT_TYPES:Ps,CONSTRUCTOR_NAMES_BY_CONSTRUCTOR_NAME:{[vs.name]:\\\\\\\"Scene\\\\\\\",[Fn.a.name]:\\\\\\\"Group\\\\\\\",[Q.a.name]:\\\\\\\"Object3D\\\\\\\",[B.a.name]:\\\\\\\"Mesh\\\\\\\",[ys.a.name]:\\\\\\\"Points\\\\\\\",[Ms.a.name]:\\\\\\\"LineSegments\\\\\\\",[xs.a.name]:\\\\\\\"Bone\\\\\\\",[gs.a.name]:\\\\\\\"SkinnedMesh\\\\\\\"},CONSTRUCTORS_BY_NAME:{[Ns.MESH]:B.a,[Ns.POINTS]:ys.a,[Ns.LINE_SEGMENTS]:Ms.a},MATERIALS:Is};var Ws;!function(t){t.COLOR=\\\\\\\"color\\\\\\\",t.NORMAL=\\\\\\\"normal\\\\\\\",t.POSITION=\\\\\\\"position\\\\\\\",t.PSCALE=\\\\\\\"pscale\\\\\\\",t.UP=\\\\\\\"up\\\\\\\",t.UV=\\\\\\\"uv\\\\\\\",t.SCALE=\\\\\\\"scale\\\\\\\",t.TANGENT=\\\\\\\"tangent\\\\\\\"}(Ws||(Ws={}));const qs={P:Ws.POSITION,N:Ws.NORMAL,Cd:Ws.COLOR};class Xs{static remapName(t){return qs[t]||t}static arrayToIndexedArrays(t){const e={};let n=0;const i=[],s=[];let r=0;for(;r<t.length;){const o=t[r],a=e[o];null!=a?i.push(a):(s.push(o),i.push(n),e[o]=n,n+=1),r++}return{indices:i,values:s}}static default_value(t){switch(t){case 1:return 0;case 2:return new d.a(0,0);case 3:return new p.a(0,0,0);default:throw`size ${t} not yet implemented`}}static copy(t,e,n=!0){const i=null==t?void 0:t.array,s=null==e?void 0:e.array;if(i&&s){const t=Math.min(i.length,s.length);for(let e=0;e<t;e++)s[e]=i[e];n&&(e.needsUpdate=!0)}}static attribSizeFromValue(t){if(m.isString(t)||m.isNumber(t))return Gs.FLOAT;if(m.isArray(t))return t.length;switch(t.constructor){case d.a:return Gs.VECTOR2;case p.a:return Gs.VECTOR3;case _.a:return Gs.VECTOR4}return 0}}class Ys{constructor(t){this._index=t}index(){return this._index}}const $s=\\\\\\\"position\\\\\\\",Js=\\\\\\\"normal\\\\\\\";var Zs;!function(t){t.x=\\\\\\\"x\\\\\\\",t.y=\\\\\\\"y\\\\\\\",t.z=\\\\\\\"z\\\\\\\",t.w=\\\\\\\"w\\\\\\\",t.r=\\\\\\\"r\\\\\\\",t.g=\\\\\\\"g\\\\\\\",t.b=\\\\\\\"b\\\\\\\"}(Zs||(Zs={}));const Ks={x:0,y:1,z:2,w:3,r:0,g:1,b:2};class Qs extends Ys{constructor(t,e){super(e),this._coreGeometry=t,this._geometry=this._coreGeometry.geometry()}applyMatrix4(t){this.position().applyMatrix4(t)}coreGeometry(){return this._coreGeometry}geometry(){return this._geometry=this._geometry||this._coreGeometry.geometry()}attribSize(t){return t=Xs.remapName(t),this._geometry.getAttribute(t).itemSize}hasAttrib(t){const e=Xs.remapName(t);return this._coreGeometry.hasAttrib(e)}attribValue(t,e){if(\\\\\\\"ptnum\\\\\\\"===t)return this.index();{let n=null,i=null;\\\\\\\".\\\\\\\"===t[t.length-2]&&(n=t[t.length-1],i=Ks[n],t=t.substring(0,t.length-2));const s=Xs.remapName(t),r=this._geometry.getAttribute(s);if(!r){const e=`attrib ${t} not found. availables are: ${Object.keys(this._geometry.attributes||{}).join(\\\\\\\",\\\\\\\")}`;throw console.warn(e),e}{const{array:t}=r;if(this._coreGeometry.isAttribIndexed(s))return this.indexedAttribValue(s);{const n=r.itemSize,s=this._index*n;if(null==i)switch(n){case 1:return t[s];case 2:return(e=e||new d.a).fromArray(t,s),e;case 3:return(e=e||new p.a).fromArray(t,s),e;case 4:return(e=e||new _.a).fromArray(t,s),e;default:throw`size not valid (${n})`}else switch(n){case 1:return t[s];default:return t[s+i]}}}}}attribValueNumber(t){const e=Xs.remapName(t);return this._geometry.getAttribute(e).array[this._index]}attribValueVector2(t,e){const n=Xs.remapName(t),i=this._geometry.getAttribute(n);return e.fromArray(i.array,2*this._index),e}attribValueVector3(t,e){const n=Xs.remapName(t),i=this._geometry.getAttribute(n);return e.fromArray(i.array,3*this._index),e}attribValueVector4(t,e){const n=Xs.remapName(t),i=this._geometry.getAttribute(n);return e.fromArray(i.array,4*this._index),e}indexedAttribValue(t){const e=this.attribValueIndex(t);return this._coreGeometry.userDataAttrib(t)[e]}stringAttribValue(t){return this.indexedAttribValue(t)}attribValueIndex(t){return this._coreGeometry.isAttribIndexed(t)?this._geometry.getAttribute(t).array[this._index]:-1}isAttribIndexed(t){return this._coreGeometry.isAttribIndexed(t)}position(){return this._position||(this._position=this.getPosition(new p.a))}getPosition(t){const{array:e}=this._geometry.getAttribute($s);return t.fromArray(e,3*this._index)}setPosition(t){this.setAttribValueVector3($s,t)}normal(){return this._normal=this._normal||this.getNormal(new p.a)}getNormal(t){const{array:e}=this._geometry.getAttribute(Js);return t.fromArray(e,3*this._index)}setNormal(t){return this.setAttribValueVector3(Js,t)}setAttribValue(t,e){const n=this._geometry.getAttribute(t),i=n.array,s=n.itemSize;if(m.isArray(e))for(let t=0;t<s;t++)i[this._index*s+t]=e[t];else switch(s){case 1:i[this._index]=e;break;case 2:const t=e,n=2*this._index;i[n+0]=t.x,i[n+1]=t.y;break;case 3:const r=null!=e.r,o=3*this._index;if(r){const t=e;i[o+0]=t.r,i[o+1]=t.g,i[o+2]=t.b}else{const t=e;i[o+0]=t.x,i[o+1]=t.y,i[o+2]=t.z}break;case 4:const a=e,l=4*this._index;i[l+0]=a.x,i[l+1]=a.y,i[l+2]=a.z,i[l+3]=a.w;break;default:throw console.warn(`Point.set_attrib_value does not yet allow attrib size ${s}`),`attrib size ${s} not implemented`}}setAttribValueFromNumber(t,e){this._geometry.getAttribute(t).array[this._index]=e}setAttribValueFromVector2(t,e){const n=this._geometry.getAttribute(t);e.toArray(n.array,2*this._index)}setAttribValueFromVector3(t,e){const n=this._geometry.getAttribute(t);e.toArray(n.array,3*this._index)}setAttribValueFromVector4(t,e){const n=this._geometry.getAttribute(t);e.toArray(n.array,4*this._index)}setAttribValueVector3(t,e){if(null==e)return;if(null==t)throw\\\\\\\"Point.set_attrib_value requires a name\\\\\\\";const n=this._geometry.getAttribute(t).array,i=3*this._index;n[i]=e.x,n[i+1]=e.y,n[i+2]=e.z}setAttribIndex(t,e){return this._geometry.getAttribute(t).array[this._index]=e}}var tr=n(40);const er=function(t){return function(e){return Math.pow(e,t)}},nr=function(t){return function(e){return 1-Math.abs(Math.pow(e-1,t))}},ir=function(t){return function(e){return e<.5?er(t)(2*e)/2:nr(t)(2*e-1)/2+.5}},sr={linear:ir(1),ease_i:function(t,e){return er(e)(t)},ease_o:function(t,e){return nr(e)(t)},ease_io:function(t,e){return ir(e)(t)},ease_i2:er(2),ease_o2:nr(2),ease_io2:ir(2),ease_i3:ir(3),ease_o3:ir(3),ease_io3:ir(3),ease_i4:ir(4),ease_o4:ir(4),ease_io4:ir(4),ease_i_sin:function(t){return 1+Math.sin(Math.PI/2*t-Math.PI/2)},ease_o_sin:function(t){return Math.sin(Math.PI/2*t)},ease_io_sin:function(t){return(1+Math.sin(Math.PI*t-Math.PI/2))/2},ease_i_elastic:function(t){return(.04-.04/t)*Math.sin(25*t)+1},ease_o_elastic:function(t){return.04*t/--t*Math.sin(25*t)},ease_io_elastic:function(t){return(t-=.5)<0?(.02+.01/t)*Math.sin(50*t):(.02-.01/t)*Math.sin(50*t)+1}},rr=Math.PI/180;class or{static clamp(t,e,n){return t<e?e:t>n?n:t}static fit01(t,e,n){return this.fit(t,0,1,e,n)}static fit(t,e,n,i,s){return(t-e)/(n-e)*(s-i)+i}static blend(t,e,n){return(1-n)*t+n*e}static degrees_to_radians(t){return t*rr}static radians_to_degrees(t){return t/rr}static deg2rad(t){return this.degrees_to_radians(t)}static rad2deg(t){return this.radians_to_degrees(t)}static rand(t){return m.isNumber(t)?this.randFloat(t):this.randVec2(t)}static round(t,e){const n=t/e;return(t<0?Math.ceil(n):Math.floor(n))*e}static highest_even(t){return 2*Math.ceil(.5*t)}static randFloat(t,e=136574){return this._vec.x=t,this._vec.y=e,this.randVec2(this._vec)}static randVec2(t){const e=(12.9898*t.x+78.233*t.y)%Math.PI;return this.fract(43758.5453*Math.sin(e))}static geodesic_distance(t,e){var n=this.deg2rad(t.lat),i=this.deg2rad(e.lat),s=this.deg2rad(e.lat-t.lat),r=this.deg2rad(e.lng-t.lng),o=Math.sin(s/2)*Math.sin(s/2)+Math.cos(n)*Math.cos(i)*Math.sin(r/2)*Math.sin(r/2);return 6371e3*(2*Math.atan2(Math.sqrt(o),Math.sqrt(1-o)))}static expand_triangle(t,e){t.getMidpoint(this._triangle_mid),this._triangle_mid_to_corner.copy(t.a).sub(this._triangle_mid),this._triangle_mid_to_corner.normalize().multiplyScalar(e),t.a.add(this._triangle_mid_to_corner),this._triangle_mid_to_corner.copy(t.b).sub(this._triangle_mid),this._triangle_mid_to_corner.normalize().multiplyScalar(e),t.b.add(this._triangle_mid_to_corner),this._triangle_mid_to_corner.copy(t.c).sub(this._triangle_mid),this._triangle_mid_to_corner.normalize().multiplyScalar(e),t.c.add(this._triangle_mid_to_corner)}static nearestPower2(t){return Math.pow(2,Math.ceil(Math.log(t)/Math.log(2)))}}or.Easing=sr,or.fract=t=>t-Math.floor(t),or._vec={x:0,y:136574},or._triangle_mid=new p.a,or._triangle_mid_to_corner=new p.a;class ar{constructor(t,e){this._coreGeometry=t,this._index=e,this._geometry=this._coreGeometry.geometry()}index(){return this._index}points(){return this._points=this._points||this._get_points()}applyMatrix4(t){for(let e of this.points())e.applyMatrix4(t)}_get_points(){var t;const e=(null===(t=this._geometry.index)||void 0===t?void 0:t.array)||[],n=3*this._index;return[new Qs(this._coreGeometry,e[n+0]),new Qs(this._coreGeometry,e[n+1]),new Qs(this._coreGeometry,e[n+2])]}positions(){return this._positions=this._positions||this._getPositions()}_getPositions(){const t=this.points();return[t[0].position(),t[1].position(),t[2].position()]}triangle(){return this._triangle=this._triangle||this._get_triangle()}_get_triangle(){const t=this.positions();return new tr.a(t[0],t[1],t[2])}deltas(){return this._deltas=this._deltas||this._getDeltas()}_getDeltas(){const t=this.positions();return[t[1].clone().sub(t[0]),t[2].clone().sub(t[0])]}area(){return this.triangle().getArea()}center(t){const e=this.positions();return t.x=(e[0].x+e[1].x+e[2].x)/3,t.y=(e[0].y+e[1].y+e[2].y)/3,t.z=(e[0].z+e[1].z+e[2].z)/3,t}randomPosition(t){let e=[or.randFloat(t),or.randFloat(6541*t)];return e[0]+e[1]>1&&(e[0]=1-e[0],e[1]=1-e[1]),this.positions()[0].clone().add(this.deltas()[0].clone().multiplyScalar(e[0])).add(this.deltas()[1].clone().multiplyScalar(e[1]))}attribValueAtPosition(t,e){const n=new p.a;this.triangle().getBarycoord(e,n);const i=n.toArray(),s=this._geometry.attributes[t].itemSize,r=this.points().map((e=>e.attribValue(t)));let o,a,l=0;switch(s){case 1:a=0;for(let t of r)a+=t*i[l],l++;o=a;break;default:for(let t of r){const e=t.multiplyScalar(i[l]);a?a.add(e):a=e,l++}o=a}return o}static interpolatedValue(t,e,n,i){const s=[e.a,e.b,e.c],r=t.getAttribute(\\\\\\\"position\\\\\\\").array,o=s.map((t=>new p.a(r[3*t+0],r[3*t+1],r[3*t+2]))),a=i.itemSize,l=i.array;let c=[];switch(a){case 1:c=s.map((t=>l[t]));break;case 2:c=s.map((t=>new d.a(l[2*t+0],l[2*t+1])));break;case 3:c=s.map((t=>new p.a(l[3*t+0],l[3*t+1],l[3*t+2])))}const h=s.map(((t,e)=>n.distanceTo(o[e]))),u=f.sum([h[0]*h[1],h[0]*h[2],h[1]*h[2]]),_=[h[1]*h[2]/u,h[0]*h[2]/u,h[0]*h[1]/u];let m;switch(a){case 1:m=f.sum(s.map(((t,e)=>_[e]*c[e])));break;default:var g=s.map(((t,e)=>c[e].multiplyScalar(_[e])));m=null;for(let t of g)m?m.add(t):m=t}return m}}class lr{from_points(t){t=this._filter_points(t);const e=new S.a,n=new fr(e),i=t[0];if(null!=i){const s=i.geometry(),r=i.coreGeometry(),o={};for(let e=0;e<t.length;e++)o[t[e].index()]=e;const a=this._indices_from_points(o,s);a&&e.setIndex(a);const{attributes:l}=s;for(let i of Object.keys(l)){if(null!=r.userDataAttribs()[i]){const s=f.uniq(t.map((t=>t.indexedAttribValue(i)))),r={};s.forEach(((t,e)=>r[t]=e)),n.userDataAttribs()[i]=s;const o=[];for(let e of t){const t=r[e.indexedAttribValue(i)];o.push(t)}e.setAttribute(i,new C.c(o,1))}else{const n=l[i].itemSize,s=new Array(t.length*n);switch(n){case 1:for(let e=0;e<t.length;e++)s[e]=t[e].attribValue(i);break;default:let e;for(let r=0;r<t.length;r++)e=t[r].attribValue(i),e.toArray(s,r*n)}e.setAttribute(i,new C.c(s,n))}}}return e}}var cr=n(78),hr=n(65);function ur(t,e=!1){const n=null!==t[0].index,i=new Set(Object.keys(t[0].attributes)),s=new Set(Object.keys(t[0].morphAttributes)),r={},o={},a=t[0].morphTargetsRelative,l=new S.a;let c=0;for(let h=0;h<t.length;++h){const u=t[h];let d=0;if(n!==(null!==u.index))return console.error(\\\\\\\"THREE.BufferGeometryUtils: .mergeBufferGeometries() failed with geometry at index \\\\\\\"+h+\\\\\\\". All geometries must have compatible attributes; make sure index attribute exists among all geometries, or in none of them.\\\\\\\"),null;for(const t in u.attributes){if(!i.has(t))return console.error(\\\\\\\"THREE.BufferGeometryUtils: .mergeBufferGeometries() failed with geometry at index \\\\\\\"+h+'. All geometries must have compatible attributes; make sure \\\\\\\"'+t+'\\\\\\\" attribute exists among all geometries, or in none of them.'),null;void 0===r[t]&&(r[t]=[]),r[t].push(u.attributes[t]),d++}if(d!==i.size)return console.error(\\\\\\\"THREE.BufferGeometryUtils: .mergeBufferGeometries() failed with geometry at index \\\\\\\"+h+\\\\\\\". Make sure all geometries have the same number of attributes.\\\\\\\"),null;if(a!==u.morphTargetsRelative)return console.error(\\\\\\\"THREE.BufferGeometryUtils: .mergeBufferGeometries() failed with geometry at index \\\\\\\"+h+\\\\\\\". .morphTargetsRelative must be consistent throughout all geometries.\\\\\\\"),null;for(const t in u.morphAttributes){if(!s.has(t))return console.error(\\\\\\\"THREE.BufferGeometryUtils: .mergeBufferGeometries() failed with geometry at index \\\\\\\"+h+\\\\\\\".  .morphAttributes must be consistent throughout all geometries.\\\\\\\"),null;void 0===o[t]&&(o[t]=[]),o[t].push(u.morphAttributes[t])}if(l.userData.mergedUserData=l.userData.mergedUserData||[],l.userData.mergedUserData.push(u.userData),e){let t;if(n)t=u.index.count;else{if(void 0===u.attributes.position)return console.error(\\\\\\\"THREE.BufferGeometryUtils: .mergeBufferGeometries() failed with geometry at index \\\\\\\"+h+\\\\\\\". The geometry must have either an index or a position attribute\\\\\\\"),null;t=u.attributes.position.count}l.addGroup(c,t,h),c+=t}}if(n){let e=0;const n=[];for(let i=0;i<t.length;++i){const s=t[i].index;for(let t=0;t<s.count;++t)n.push(s.getX(t)+e);e+=t[i].attributes.position.count}l.setIndex(n)}for(const t in r){const e=dr(r[t]);if(!e)return console.error(\\\\\\\"THREE.BufferGeometryUtils: .mergeBufferGeometries() failed while trying to merge the \\\\\\\"+t+\\\\\\\" attribute.\\\\\\\"),null;l.setAttribute(t,e)}for(const t in o){const e=o[t][0].length;if(0===e)break;l.morphAttributes=l.morphAttributes||{},l.morphAttributes[t]=[];for(let n=0;n<e;++n){const e=[];for(let i=0;i<o[t].length;++i)e.push(o[t][i][n]);const i=dr(e);if(!i)return console.error(\\\\\\\"THREE.BufferGeometryUtils: .mergeBufferGeometries() failed while trying to merge the \\\\\\\"+t+\\\\\\\" morphAttribute.\\\\\\\"),null;l.morphAttributes[t].push(i)}}return l}function dr(t){let e,n,i,s=0;for(let r=0;r<t.length;++r){const o=t[r];if(o.isInterleavedBufferAttribute)return console.error(\\\\\\\"THREE.BufferGeometryUtils: .mergeBufferAttributes() failed. InterleavedBufferAttributes are not supported.\\\\\\\"),null;if(void 0===e&&(e=o.array.constructor),e!==o.array.constructor)return console.error(\\\\\\\"THREE.BufferGeometryUtils: .mergeBufferAttributes() failed. BufferAttribute.array must be of consistent array types across matching attributes.\\\\\\\"),null;if(void 0===n&&(n=o.itemSize),n!==o.itemSize)return console.error(\\\\\\\"THREE.BufferGeometryUtils: .mergeBufferAttributes() failed. BufferAttribute.itemSize must be consistent across matching attributes.\\\\\\\"),null;if(void 0===i&&(i=o.normalized),i!==o.normalized)return console.error(\\\\\\\"THREE.BufferGeometryUtils: .mergeBufferAttributes() failed. BufferAttribute.normalized must be consistent across matching attributes.\\\\\\\"),null;s+=o.array.length}const r=new e(s);let o=0;for(let e=0;e<t.length;++e)r.set(t[e].array,o),o+=t[e].array.length;return new C.a(r,n,i)}class pr{static createIndexIfNone(t){if(!t.index){const e=t.getAttribute(\\\\\\\"position\\\\\\\");if(e){const n=e.array;t.setIndex(f.range(n.length/3))}}}}class _r{static merge(t){if(0===t.length)return;for(let e of t)pr.createIndexIfNone(e);const e=t.map((t=>new fr(t))),n=e[0].indexedAttributeNames(),i={};for(let t of n){const n={},s=[];for(let i of e){const e=i.points();for(let i of e){s.push(i);const e=i.indexedAttribValue(t);null!=n[e]?n[e]:n[e]=Object.keys(n).length}}const r=Object.keys(n);for(let e of s){const i=n[e.indexedAttribValue(t)];e.setAttribIndex(t,i)}i[t]=r}const s=ur(t),r=new fr(s);return Object.keys(i).forEach((t=>{const e=i[t];r.setIndexedAttributeValues(t,e)})),s&&delete s.userData.mergedUserData,s}}const mr=\\\\\\\"indexed_attrib_values\\\\\\\";class fr{constructor(t){this._geometry=t}geometry(){return this._geometry}uuid(){return this._geometry.uuid}boundingBox(){return this._bounding_box=this._bounding_box||this._create_bounding_box()}_create_bounding_box(){if(this._geometry.computeBoundingBox(),this._geometry.boundingBox)return this._geometry.boundingBox}markAsInstance(){this._geometry.userData.isInstance=!0}static markedAsInstance(t){return!0===t.userData.isInstance}markedAsInstance(){return fr.markedAsInstance(this._geometry)}positionAttribName(){let t=\\\\\\\"position\\\\\\\";return this.markedAsInstance()&&(t=\\\\\\\"instancePosition\\\\\\\"),t}computeVertexNormals(){this._geometry.computeVertexNormals()}userDataAttribs(){return this._geometry.userData[mr]=this._geometry.userData[mr]||{}}indexedAttributeNames(){return Object.keys(this.userDataAttribs()||{})}userDataAttrib(t){return t=Xs.remapName(t),this.userDataAttribs()[t]}isAttribIndexed(t){return t=Xs.remapName(t),null!=this.userDataAttrib(t)}hasAttrib(t){return\\\\\\\"ptnum\\\\\\\"===t||(t=Xs.remapName(t),null!=this._geometry.attributes[t])}attribType(t){return this.isAttribIndexed(t)?zs.STRING:zs.NUMERIC}static attribNames(t){return Object.keys(t.attributes)}attribNames(){return fr.attribNames(this._geometry)}static attribNamesMatchingMask(t,e){const n=ss.attribNames(e),i=[];for(let e of this.attribNames(t))for(let t of n)ss.matchMask(e,t)&&i.push(e);return f.uniq(i)}attribSizes(){const t={};for(let e of this.attribNames())t[e]=this._geometry.attributes[e].itemSize;return t}attribSize(t){let e;return t=Xs.remapName(t),null!=(e=this._geometry.attributes[t])?e.itemSize:\\\\\\\"ptnum\\\\\\\"===t?1:0}setIndexedAttributeValues(t,e){this.userDataAttribs()[t]=e}setIndexedAttribute(t,e,n){this.setIndexedAttributeValues(t,e),this._geometry.setAttribute(t,new C.f(n,1))}addNumericAttrib(t,e=1,n=0){const i=[];let s=!1;if(m.isNumber(n)){for(let t=0;t<this.pointsCount();t++)for(let t=0;t<e;t++)i.push(n);s=!0}else if(e>1)if(m.isArray(n)){for(let t=0;t<this.pointsCount();t++)for(let t=0;t<e;t++)i.push(n[t]);s=!0}else{const t=n;if(2==e&&null!=t.x&&null!=t.y){for(let e=0;e<this.pointsCount();e++)i.push(t.x),i.push(t.y);s=!0}const r=n;if(3==e&&null!=r.x&&null!=r.y&&null!=r.z){for(let t=0;t<this.pointsCount();t++)i.push(r.x),i.push(r.y),i.push(r.z);s=!0}const o=n;if(3==e&&null!=o.r&&null!=o.g&&null!=o.b){for(let t=0;t<this.pointsCount();t++)i.push(o.r),i.push(o.g),i.push(o.b);s=!0}const a=n;if(4==e&&null!=a.x&&null!=a.y&&null!=a.z&&null!=a.w){for(let t=0;t<this.pointsCount();t++)i.push(a.x),i.push(a.y),i.push(a.z),i.push(a.w);s=!0}}if(!s)throw console.warn(n),`CoreGeometry.add_numeric_attrib error: no other default value allowed for now in add_numeric_attrib (default given: ${n})`;this._geometry.setAttribute(t.trim(),new C.c(i,e))}initPositionAttribute(t,e){const n=[];null==e&&(e=new p.a);for(let i=0;i<t;i++)n.push(e.x),n.push(e.y),n.push(e.z);return this._geometry.setAttribute(\\\\\\\"position\\\\\\\",new C.c(n,3))}addAttribute(t,e){switch(e.type()){case zs.STRING:return console.log(\\\\\\\"TODO: to implement\\\\\\\");case zs.NUMERIC:return this.addNumericAttrib(t,e.size())}}renameAttrib(t,e){this.isAttribIndexed(t)&&(this.userDataAttribs()[e]=b.clone(this.userDataAttribs()[t]),delete this.userDataAttribs()[t]);const n=this._geometry.getAttribute(t);return this._geometry.setAttribute(e.trim(),new C.c(n.array,n.itemSize)),this._geometry.deleteAttribute(t)}deleteAttribute(t){return this.isAttribIndexed(t)&&delete this.userDataAttribs()[t],this._geometry.deleteAttribute(t)}clone(){return fr.clone(this._geometry)}static clone(t){let e;const n=t.clone();return null!=(e=t.userData)&&(n.userData=b.cloneDeep(e)),n}pointsCount(){return fr.pointsCount(this._geometry)}static pointsCount(t){let e,n=0;let i=\\\\\\\"position\\\\\\\";if(new this(t).markedAsInstance()&&(i=\\\\\\\"instancePosition\\\\\\\"),null!=(e=t.getAttribute(i))){let t;null!=(t=e.array)&&(n=t.length/3)}return n}points(){return this.pointsFromGeometry()}pointsFromGeometry(){const t=[],e=this._geometry.getAttribute(this.positionAttribName());if(null!=e){const n=e.array.length/3;for(let e=0;e<n;e++){const n=new Qs(this,e);t.push(n)}}return t}static geometryFromPoints(t,e){switch(e){case Ns.MESH:return this._mesh_builder.from_points(t);case Ns.POINTS:return this._points_builder.from_points(t);case Ns.LINE_SEGMENTS:return this._lines_segment_builder.from_points(t);case Ns.OBJECT3D:case Ns.GROUP:case Ns.LOD:return null}os.unreachable(e)}static mergeGeometries(t){return _r.merge(t)}static merge_geometries(t){return _r.merge(t)}segments(){var t;const e=(null===(t=this.geometry().index)||void 0===t?void 0:t.array)||[];return f.chunk(e,2)}faces(){return this.facesFromGeometry()}facesFromGeometry(){var t;const e=((null===(t=this.geometry().index)||void 0===t?void 0:t.array)||[]).length/3;return f.range(e).map((t=>new ar(this,t)))}}var gr;fr._mesh_builder=new class extends lr{_filter_points(t){var e;const n=t[0];if(n){const i=null===(e=n.geometry().getIndex())||void 0===e?void 0:e.array;if(i){const e={};for(let n of t)e[n.index()]=n;const n=[],s=i.length;let r,o,a;for(let t=0;t<s;t+=3)r=e[i[t+0]],o=e[i[t+1]],a=e[i[t+2]],r&&o&&a&&(n.push(r),n.push(o),n.push(a));return n}}return[]}_indices_from_points(t,e){const n=e.index;if(null!=n){const e=n.array,i=[];let s,r,o,a,l,c;for(let n=0;n<e.length;n+=3)s=e[n+0],r=e[n+1],o=e[n+2],a=t[s],l=t[r],c=t[o],null!=a&&null!=l&&null!=c&&(i.push(a),i.push(l),i.push(c));return i}}},fr._points_builder=new class extends lr{_filter_points(t){return t}_indices_from_points(t,e){const n=e.index;if(null!=n){const e=n.array,i=[];let s,r;for(let n=0;n<e.length;n++)s=e[n],r=t[s],null!=r&&i.push(r);return i}}},fr._lines_segment_builder=new class extends lr{_filter_points(t){var e;const n=t[0];if(n){const i=null===(e=n.geometry().getIndex())||void 0===e?void 0:e.array;if(i){const e={};for(let n of t)e[n.index()]=n;const n=[],s=i.length;let r,o;for(let t=0;t<s;t+=2)r=e[i[t+0]],o=e[i[t+1]],r&&o&&(n.push(r),n.push(o));return n}}return[]}_indices_from_points(t,e){const n=e.index;if(null!=n){const e=n.array,i=[];let s,r,o,a;for(let n=0;n<e.length;n+=2)s=e[n],r=e[n+1],o=t[s],a=t[r],null!=o&&null!=a&&(i.push(o),i.push(a));return i}}},function(t){t.customDistanceMaterial=\\\\\\\"customDistanceMaterial\\\\\\\",t.customDepthMaterial=\\\\\\\"customDepthMaterial\\\\\\\",t.customDepthDOFMaterial=\\\\\\\"customDepthDOFMaterial\\\\\\\"}(gr||(gr={}));const vr=(t,e,n,i,s,r)=>{};class yr{static node(t,e){return t.node(e.name)}static clone(t){const e=t.clone(),n=t.uniforms;return n&&(e.uniforms=I.clone(n)),e}static add_user_data_render_hook(t,e){t.userData.POLY_render_hook=e}static apply_render_hook(t,e){if(e.userData){const n=e.userData.POLY_render_hook;if(n)return void(t.onBeforeRender=(e,i,s,r,o,a)=>{n(e,i,s,r,o,a,t)})}t.onBeforeRender=vr}static applyCustomMaterials(t,e){const n=e;if(n.customMaterials)for(let e of Object.keys(n.customMaterials)){const i=e,s=n.customMaterials[i];s&&(t[i]=s,s.needsUpdate=!0)}}static assign_custom_uniforms(t,e,n){const i=t;if(i.customMaterials)for(let t of Object.keys(i.customMaterials)){const s=t,r=i.customMaterials[s];r&&(r.uniforms[e].value=n)}}static init_custom_material_uniforms(t,e,n){const i=t;if(i.customMaterials)for(let t of Object.keys(i.customMaterials)){const s=t,r=i.customMaterials[s];r&&(r.uniforms[e]=r.uniforms[e]||n)}}}const xr=\\\\\\\"name\\\\\\\";class br extends Ys{constructor(t,e){super(e),this._object=t,null==this._object.userData.attributes&&(this._object.userData.attributes={})}object(){return this._object}geometry(){return this._object.geometry}coreGeometry(){const t=this.geometry();return t?new fr(t):null}points(){var t;return(null===(t=this.coreGeometry())||void 0===t?void 0:t.points())||[]}pointsFromGroup(t){if(t){const e=ss.indices(t);if(e){const t=this.points();return e.map((e=>t[e]))}return[]}return this.points()}static isInGroup(t,e){const n=t.trim();if(0==n.length)return!0;const i=n.split(\\\\\\\"=\\\\\\\"),s=i[0];if(\\\\\\\"@\\\\\\\"==s[0]){const t=s.substr(1);return i[1]==this.attribValue(e,t)}return!1}computeVertexNormals(){var t;null===(t=this.coreGeometry())||void 0===t||t.computeVertexNormals()}static _convert_array_to_vector(t){switch(t.length){case 1:return t[0];case 2:return new d.a(t[0],t[1]);case 3:return new p.a(t[0],t[1],t[2]);case 4:return new _.a(t[0],t[1],t[2],t[3])}}static addAttribute(t,e,n){if(m.isArray(n)){if(!this._convert_array_to_vector(n)){const t=\\\\\\\"attribute_value invalid\\\\\\\";throw console.error(t,n),new Error(t)}}const i=n,s=t.userData;s.attributes=s.attributes||{},s.attributes[e]=i}addAttribute(t,e){br.addAttribute(this._object,t,e)}addNumericAttrib(t,e){this.addAttribute(t,e)}setAttribValue(t,e){this.addAttribute(t,e)}addNumericVertexAttrib(t,e,n){var i;null==n&&(n=Xs.default_value(e)),null===(i=this.coreGeometry())||void 0===i||i.addNumericAttrib(t,e,n)}attributeNames(){return Object.keys(this._object.userData.attributes)}attribNames(){return this.attributeNames()}hasAttrib(t){return this.attributeNames().includes(t)}renameAttrib(t,e){const n=this.attribValue(t);null!=n?(this.addAttribute(e,n),this.deleteAttribute(t)):console.warn(`attribute ${t} not found`)}deleteAttribute(t){delete this._object.userData.attributes[t]}static attribValue(t,e,n=0,i){if(\\\\\\\"ptnum\\\\\\\"===e)return n;if(t.userData&&t.userData.attributes){const n=t.userData.attributes[e];if(null==n){if(e==xr)return t.name}else if(m.isArray(n)&&i)return i.fromArray(n),i;return n}return e==xr?t.name:void 0}static stringAttribValue(t,e,n=0){const i=this.attribValue(t,e,n);if(null!=i)return m.isString(i)?i:`${i}`}attribValue(t,e){return br.attribValue(this._object,t,this._index,e)}stringAttribValue(t){return br.stringAttribValue(this._object,t,this._index)}name(){return this.attribValue(xr)}humanType(){return js.CONSTRUCTOR_NAMES_BY_CONSTRUCTOR_NAME[this._object.constructor.name]}attribTypes(){const t={};for(let e of this.attribNames()){const n=this.attribType(e);null!=n&&(t[e]=n)}return t}attribType(t){const e=this.attribValue(t);return m.isString(e)?zs.STRING:zs.NUMERIC}attribSizes(){const t={};for(let e of this.attribNames()){const n=this.attribSize(e);null!=n&&(t[e]=n)}return t}attribSize(t){const e=this.attribValue(t);return null==e?null:Xs.attribSizeFromValue(e)}clone(){return br.clone(this._object)}static clone(t){const e=t.clone();var n=new Map,i=new Map;return br.parallelTraverse(t,e,(function(t,e){n.set(e,t),i.set(t,e)})),e.traverse((function(e){const s=n.get(e),r=e;if(r.geometry){const t=s.geometry;r.geometry=fr.clone(t);const e=r.geometry;e.userData&&(e.userData=b.cloneDeep(t.userData))}if(r.material){r.material=s.material,yr.applyCustomMaterials(e,r.material);const t=r.material;null==t.color&&(t.color=new D.a(1,1,1))}t.userData&&(e.userData=b.cloneDeep(s.userData));const o=s;o.animations&&(e.animations=o.animations.map((t=>t.clone())));const a=e;if(a.isSkinnedMesh){var l=a,c=s,h=c.skeleton.bones;l.skeleton=c.skeleton.clone(),l.bindMatrix.copy(c.bindMatrix);const t=h.map((function(t){return i.get(t)}));l.skeleton.bones=t,l.bind(l.skeleton,l.bindMatrix)}})),e}static parallelTraverse(t,e,n){n(t,e);for(var i=0;i<t.children.length;i++)this.parallelTraverse(t.children[i],e.children[i],n)}}const wr={[ts.ANIM]:class extends fs{set_content(t){super.set_content(t)}setTimelineBuilder(t){return this.set_content(t)}timeline_builder(){return this.content()}coreContentCloned(){if(this._content)return this._content.clone()}},[ts.COP]:class extends fs{set_content(t){super.set_content(t)}texture(){return this._content}coreContent(){return this._content}coreContentCloned(){var t;const e=null===(t=this._content)||void 0===t?void 0:t.clone();return e&&(e.needsUpdate=!0),e}object(){return this.texture()}infos(){if(null!=this._content)return[this._content]}resolution(){if(this._content){const t=this._content.image;if(t){if(t instanceof HTMLImageElement||t instanceof Image||t instanceof ImageData||t instanceof HTMLCanvasElement)return[t.width,t.height];if(t.data&&null!=t.width&&null!=t.height)return[t.width,t.height];const e=t;return[e.videoWidth,e.videoHeight]}}return[-1,-1]}},[ts.EVENT]:class extends fs{set_content(t){super.set_content(t)}},[ts.GL]:class extends fs{object(){return this._content}},[ts.JS]:class extends fs{object(){return this._content}},[ts.MANAGER]:class extends fs{set_content(t){super.set_content(t)}},[ts.MAT]:class extends fs{set_content(t){super.set_content(t)}set_material(t){null!=this._content&&this._content.dispose(),this.set_content(t)}has_material(){return this.has_content()}material(){return this.content()}},[ts.OBJ]:class extends fs{set_content(t){super.set_content(t)}set_object(t){return this.set_content(t)}has_object(){return this.has_content()}object(){return this.content()}},[ts.POST]:class extends fs{set_content(t){super.set_content(t)}render_pass(){return this._content}object(t={}){return this.render_pass()}},[ts.ROP]:class extends fs{set_content(t){super.set_content(t)}renderer(){return this._content}},[ts.SOP]:class extends fs{coreContentCloned(){if(this._content)return this._content.clone()}set_content(t){super.set_content(t)}firstObject(){if(this._content)return this._content.objects()[0]}firstCoreObject(){const t=this.firstObject();if(t)return new br(t,0)}firstGeometry(){const t=this.firstObject();return t?t.geometry:null}objectsCount(){return this._content?this._content.objects().length:0}objectsVisibleCount(){let t=0;if(this._content){const e=this._content.objects();for(let n of e)n.visible&&t++}return t}objectsCountByType(){const t={},e=this._content;if(this._content&&e)for(let n of e.coreObjects()){const e=n.humanType();null==t[e]&&(t[e]=0),t[e]+=1}return t}objectsNamesByType(){const t={},e=this._content;if(this._content&&e)for(let n of e.coreObjects()){const e=n.humanType();t[e]=t[e]||[],t[e].push(n.name())}return t}pointAttributeNames(){let t=[];const e=this.firstGeometry();return e&&(t=Object.keys(e.attributes)),t}pointAttributeSizesByName(){let t={};const e=this.firstGeometry();return e&&Object.keys(e.attributes).forEach((n=>{const i=e.attributes[n];t[n]=i.itemSize})),t}objectAttributeSizesByName(){let t={};const e=this.firstCoreObject();if(e){const n=e.attribNames();for(let i of n){const n=e.attribSize(i);null!=n&&(t[i]=n)}}return t}pointAttributeTypesByName(){let t={};const e=this.firstGeometry();if(e){const n=new fr(e);Object.keys(e.attributes).forEach((e=>{t[e]=n.attribType(e)}))}return t}objectAttributeTypesByName(){let t={};const e=this.firstCoreObject();if(e)for(let n of e.attribNames())t[n]=e.attribType(n);return t}objectAttributeNames(){let t=[];const e=this.firstObject();return e&&(t=Object.keys(e.userData.attributes||{})),t}pointsCount(){return this._content?this._content.pointsCount():0}totalPointsCount(){return this._content?this._content.totalPointsCount():0}objectsData(){return this._content?this._content.objectsData():[]}boundingBox(t=!1){return this._content.boundingBox(t)}center(){return this._content.center()}size(){return this._content.size()}}};class Tr{constructor(t){this.node=t,this._callbacks=[],this._callbacks_tmp=[];const e=wr[t.context()];this._container=new e(this.node)}container(){return this._container}async compute(){var t,e;if(null===(e=null===(t=this.node.flags)||void 0===t?void 0:t.bypass)||void 0===e?void 0:e.active()){const t=await this.requestInputContainer(0)||this._container;return this.node.cookController.endCook(),t}return this.node.isDirty()?new Promise(((t,e)=>{this._callbacks.push(t),this.node.cookController.cookMain()})):this._container}async requestInputContainer(t){const e=this.node.io.inputs.input(t);return e?await e.compute():(this.node.states.error.set(`input ${t} required`),this.notifyRequesters(),null)}notifyRequesters(t){let e;for(this._callbacks_tmp=this._callbacks.slice(),this._callbacks.splice(0,this._callbacks.length),t||(t=this.node.containerController.container());e=this._callbacks_tmp.pop();)e(t);this.node.scene().cookController.removeNode(this.node)}}const Ar=li.performance.performanceManager();class Mr{constructor(t){this.cookController=t,this._inputs_start=0,this._params_start=0,this._cook_start=0,this._cooksCount=0,this._data={inputsTime:0,paramsTime:0,cookTime:0}}cooksCount(){return this._cooksCount}data2(){return this._data}active(){return this.cookController.performanceRecordStarted()}recordInputsStart(){this.active()&&(this._inputs_start=Ar.now())}recordInputsEnd(){this.active()&&(this._data.inputsTime=Ar.now()-this._inputs_start)}recordParamsStart(){this.active()&&(this._params_start=Ar.now())}recordParamsEnd(){this.active()&&(this._data.paramsTime=Ar.now()-this._params_start)}recordCookStart(){this.active()&&(this._cook_start=Ar.now())}recordCookEnd(){this.active()&&(this._data.cookTime=Ar.now()-this._cook_start,this._cooksCount+=1)}}class Er{constructor(t){this.node=t,this._cooking=!1,this._performanceController=new Mr(this),this._inputs_evaluation_required=!0,this._core_performance=this.node.scene().performance}performanceRecordStarted(){return this._core_performance.started()}disallowInputsEvaluation(){this._inputs_evaluation_required=!1}isCooking(){return!0===this._cooking}_start_cook_if_no_errors(t){if(this.node.states.error.active())this.endCook();else try{this._performanceController.recordCookStart(),this.node.cook(t)}catch(t){this.node.states.error.set(`node internal error: '${t}'.`),li.warn(t),this.endCook()}}async cookMain(){if(this.isCooking())return;let t;this._initCookingState(),this.node.states.error.clear(),this.node.scene().cookController.addNode(this.node),t=this._inputs_evaluation_required?await this._evaluateInputs():[],this.node.params.paramsEvalRequired()&&await this._evaluateParams(),this._start_cook_if_no_errors(t)}async cookMainWithoutInputs(){this.node.scene().cookController.addNode(this.node),this.isCooking()?li.warn(\\\\\\\"cook_main_without_inputs already cooking\\\\\\\",this.node.path()):(this._initCookingState(),this.node.states.error.clear(),this.node.params.paramsEvalRequired()&&await this._evaluateParams(),this._start_cook_if_no_errors([]))}endCook(t){this._finalizeCookPerformance();const e=this.node.dirtyController.dirtyTimestamp();null==e||e===this._cooking_dirty_timestamp?(this.node.removeDirtyState(),this._terminateCookProcess()):(li.log(\\\\\\\"COOK AGAIN\\\\\\\",e,this._cooking_dirty_timestamp,this.node.path()),this._cooking=!1,this.cookMain())}_initCookingState(){this._cooking=!0,this._cooking_dirty_timestamp=this.node.dirtyController.dirtyTimestamp()}_terminateCookProcess(){this.isCooking()&&(this._cooking=!1,this.node.containerController.notifyRequesters(),this._run_on_cook_complete_hooks())}async _evaluateInputs(){this._performanceController.recordInputsStart();let t=[];const e=this.node.io.inputs;this._inputs_evaluation_required&&(t=e.is_any_input_dirty()?await e.eval_required_inputs():await e.containers_without_evaluation());const n=e.inputs(),i=[];let s;for(let r=0;r<n.length;r++)s=t[r],s&&(e.cloneRequired(r)?i[r]=s.coreContentCloned():i[r]=s.coreContent());return this._performanceController.recordInputsEnd(),i}async _evaluateParams(){this._performanceController.recordParamsStart(),await this.node.params.evalAll(),this._performanceController.recordParamsEnd()}cooksCount(){return this._performanceController.cooksCount()}cookTime(){return this._performanceController.data2().cookTime}_finalizeCookPerformance(){this._core_performance.started()&&(this._performanceController.recordCookEnd(),this._core_performance.record_node_cook_data(this.node,this._performanceController.data2()))}registerOnCookEnd(t,e){this._on_cook_complete_hook_names=this._on_cook_complete_hook_names||[],this._on_cook_complete_hooks=this._on_cook_complete_hooks||[],this._on_cook_complete_hook_names.push(t),this._on_cook_complete_hooks.push(e)}deregisterOnCookEnd(t){var e;if(!this._on_cook_complete_hook_names||!this._on_cook_complete_hooks)return;const n=null===(e=this._on_cook_complete_hook_names)||void 0===e?void 0:e.indexOf(t);this._on_cook_complete_hook_names.splice(n,1),this._on_cook_complete_hooks.splice(n,1)}_run_on_cook_complete_hooks(){if(this._on_cook_complete_hooks)for(let t of this._on_cook_complete_hooks)t()}onCookEndCallbackNames(){return this._on_cook_complete_hook_names}}class Sr{constructor(t){this.node=t}toJSON(t=!1){var e,n,i,s,r,o;const a={name:this.node.name(),type:this.node.type(),graph_node_id:this.node.graphNodeId(),is_dirty:this.node.isDirty(),ui_data_json:this.node.uiData.toJSON(),error_message:this.node.states.error.message(),children:this.childrenIds(),maxInputsCount:this.maxInputsCount(),inputs:this.inputIds(),input_connection_output_indices:this.inputConnectionOutputIndices(),named_input_connection_points:this.namedInputConnectionPoints(),named_output_connection_points:this.namedOutputConnectionPoints(),param_ids:this.to_json_params(t),override_cloned_state_allowed:this.node.io.inputs.overrideClonedStateAllowed(),inputs_clone_required_states:this.node.io.inputs.cloneRequiredStates(),flags:{display:null===(n=null===(e=this.node.flags)||void 0===e?void 0:e.display)||void 0===n?void 0:n.active(),bypass:null===(s=null===(i=this.node.flags)||void 0===i?void 0:i.bypass)||void 0===s?void 0:s.active(),optimize:null===(o=null===(r=this.node.flags)||void 0===r?void 0:r.optimize)||void 0===o?void 0:o.active()},selection:void 0};return this.node.childrenAllowed()&&this.node.childrenController&&(a.selection=this.node.childrenController.selection.toJSON()),a}childrenIds(){return this.node.children().map((t=>t.graphNodeId()))}maxInputsCount(){return this.node.io.inputs.maxInputsCount()}inputIds(){return this.node.io.inputs.inputs().map((t=>null!=t?t.graphNodeId():void 0))}inputConnectionOutputIndices(){var t;return null===(t=this.node.io.connections.inputConnections())||void 0===t?void 0:t.map((t=>null!=t?t.output_index:void 0))}namedInputConnectionPoints(){return this.node.io.inputs.namedInputConnectionPoints().map((t=>t.toJSON()))}namedOutputConnectionPoints(){return this.node.io.outputs.namedOutputConnectionPoints().map((t=>t.toJSON()))}to_json_params_from_names(t,e=!1){return t.map((t=>this.node.params.get(t).graphNodeId()))}to_json_params(t=!1){return this.to_json_params_from_names(this.node.params.names,t)}}var Cr,Nr;!function(t){t.BOOLEAN=\\\\\\\"boolean\\\\\\\",t.BUTTON=\\\\\\\"button\\\\\\\",t.COLOR=\\\\\\\"color\\\\\\\",t.FLOAT=\\\\\\\"float\\\\\\\",t.FOLDER=\\\\\\\"folder\\\\\\\",t.INTEGER=\\\\\\\"integer\\\\\\\",t.OPERATOR_PATH=\\\\\\\"operator_path\\\\\\\",t.PARAM_PATH=\\\\\\\"param_path\\\\\\\",t.NODE_PATH=\\\\\\\"node_path\\\\\\\",t.RAMP=\\\\\\\"ramp\\\\\\\",t.STRING=\\\\\\\"string\\\\\\\",t.VECTOR2=\\\\\\\"vector2\\\\\\\",t.VECTOR3=\\\\\\\"vector3\\\\\\\",t.VECTOR4=\\\\\\\"vector4\\\\\\\"}(Cr||(Cr={})),function(t){t.VISIBLE_UPDATED=\\\\\\\"param_visible_updated\\\\\\\",t.RAW_INPUT_UPDATED=\\\\\\\"raw_input_updated\\\\\\\",t.VALUE_UPDATED=\\\\\\\"param_value_updated\\\\\\\",t.EXPRESSION_UPDATED=\\\\\\\"param_expression_update\\\\\\\",t.ERROR_UPDATED=\\\\\\\"param_error_updated\\\\\\\",t.DELETED=\\\\\\\"param_deleted\\\\\\\"}(Nr||(Nr={}));const Lr=\\\\\\\"dependentOnFoundNode\\\\\\\",Or=\\\\\\\"visibleIf\\\\\\\";var Pr,Rr;!function(t){t.TYPESCRIPT=\\\\\\\"typescript\\\\\\\"}(Pr||(Pr={})),function(t){t.AUDIO=\\\\\\\"audio\\\\\\\",t.TEXTURE_IMAGE=\\\\\\\"texture_image\\\\\\\",t.TEXTURE_VIDEO=\\\\\\\"texture_video\\\\\\\",t.GEOMETRY=\\\\\\\"geometry\\\\\\\",t.FONT=\\\\\\\"font\\\\\\\",t.SVG=\\\\\\\"svg\\\\\\\",t.JSON=\\\\\\\"json\\\\\\\"}(Rr||(Rr={}));class Ir{constructor(t){this._param=t,this._programatic_visible_state=!0,this._callbackAllowed=!1,this._updateVisibilityAndRemoveDirtyBound=this.updateVisibilityAndRemoveDirty.bind(this),this._ui_data_dependency_set=!1}dispose(){var t;try{this._options.callback=void 0,this._options.callbackString=void 0}catch(t){}null===(t=this._visibility_graph_node)||void 0===t||t.dispose()}set(t){this._default_options=t,this._options=b.cloneDeep(this._default_options),this.post_set_options()}copy(t){this._default_options=b.cloneDeep(t.default()),this._options=b.cloneDeep(t.current()),this.post_set_options()}setOption(t,e){if(this._options[t]=e,this._param.components)for(let n of this._param.components)n.options.setOption(t,e)}post_set_options(){this._handleComputeOnDirty()}param(){return this._param}node(){return this._param.node}default(){return this._default_options}current(){return this._options}hasOptionsOverridden(){return!b.isEqual(this._options,this._default_options)}overriddenOptions(){const t={},e=Object.keys(this._options);for(let n of e)if(!b.isEqual(this._options[n],this._default_options[n])){const e=b.cloneDeep(this._options[n]);Object.assign(t,{[n]:e})}return t}overriddenOptionNames(){return Object.keys(this.overriddenOptions())}computeOnDirty(){return this._options.computeOnDirty||!1}_handleComputeOnDirty(){this.computeOnDirty()&&(this._computeOnDirty_callback_added||(this.param().addPostDirtyHook(\\\\\\\"computeOnDirty\\\\\\\",this._computeParam.bind(this)),this._computeOnDirty_callback_added=!0))}async _computeParam(){await this.param().compute()}hasCallback(){return null!=this._options.callback||null!=this._options.callbackString}allowCallback(){this._callbackAllowed=!0}executeCallback(){if(!this._callbackAllowed)return;if(!this.node())return;const t=this.getCallback();if(!t)return;if(!this.node().scene().loadingController.loaded())return;const e=this.param().parent_param;e?e.options.executeCallback():t(this.node(),this.param())}getCallback(){if(this.hasCallback())return this._options.callback=this._options.callback||this.createCallbackFromString()}createCallbackFromString(){const t=this._options.callbackString;if(t){const e=new Function(\\\\\\\"node\\\\\\\",\\\\\\\"scene\\\\\\\",\\\\\\\"window\\\\\\\",\\\\\\\"location\\\\\\\",t);return()=>{e(this.node(),this.node().scene(),null,null)}}}colorConversion(){return this._options.conversion}makesNodeDirtyWhenDirty(){let t;if(null!=this.param().parent_param)return!1;let e=!0;return null!=(t=this._options.cook)&&(e=t),e}fileBrowseOption(){return this._options.fileBrowse}fileBrowseAllowed(){return null!=this.fileBrowseOption()}fileBrowseType(){const t=this.fileBrowseOption();return t?t.type:null}separatorBefore(){return this._options.separatorBefore}separatorAfter(){return this._options.separatorAfter}isExpressionForEntities(){const t=this._options.expression;return t&&t.forEntities||!1}level(){return this._options.level||0}hasMenu(){return null!=this.menuOptions()||null!=this.menuStringOptions()}menuOptions(){return this._options.menu}menuStringOptions(){return this._options.menuString}menuEntries(){const t=this.menuOptions()||this.menuStringOptions();return t?t.entries:[]}isMultiline(){return!0===this._options.multiline}language(){return this._options.language}isCode(){return null!=this.language()}nodeSelectionOptions(){return this._options.nodeSelection}nodeSelectionContext(){const t=this.nodeSelectionOptions();if(t)return t.context}nodeSelectionTypes(){const t=this.nodeSelectionOptions();if(t)return t.types}dependentOnFoundNode(){return!(Lr in this._options)||this._options.dependentOnFoundNode}isSelectingParam(){return null!=this.paramSelectionOptions()}paramSelectionOptions(){return this._options.paramSelection}paramSelectionType(){const t=this.paramSelectionOptions();if(t){const e=t;if(!m.isBoolean(e))return e}}range(){return this._options.range||[0,1]}step(){return this._options.step}rangeLocked(){return this._options.rangeLocked||[!1,!1]}ensureInRange(t){const e=this.range();return t>=e[0]&&t<=e[1]?t:t<e[0]?!0===this.rangeLocked()[0]?e[0]:t:!0===this.rangeLocked()[1]?e[1]:t}isSpare(){return this._options.spare||!1}textureOptions(){return this._options.texture}textureAsEnv(){const t=this.textureOptions();return null!=t&&!0===t.env}isHidden(){return!0===this._options.hidden||!1===this._programatic_visible_state}isVisible(){return!this.isHidden()}setVisibleState(t){this._options.hidden=!t,this.param().emit(Nr.VISIBLE_UPDATED)}label(){return this._options.label}isLabelHidden(){const t=this.param().type();return t===Cr.BUTTON||t===Cr.BOOLEAN&&this.isFieldHidden()}isFieldHidden(){return!1===this._options.field}uiDataDependsOnOtherParams(){return Or in this._options}visibilityPredecessors(){const t=this._options.visibleIf;if(!t)return[];let e=[];e=m.isArray(t)?f.uniq(t.map((t=>Object.keys(t))).flat()):Object.keys(t);const n=this.param().node;return f.compact(e.map((t=>{const e=n.params.get(t);if(e)return e;console.error(`param ${t} not found as visibility condition for ${this.param().name()} in node ${this.param().node.type()}`)})))}setUiDataDependency(){if(this._ui_data_dependency_set)return;this._ui_data_dependency_set=!0;const t=this.visibilityPredecessors();if(t.length>0){this._visibility_graph_node=new Mi(this.param().scene(),\\\\\\\"param_visibility\\\\\\\");for(let e of t)this._visibility_graph_node.addGraphInput(e);this._visibility_graph_node.addPostDirtyHook(\\\\\\\"_update_visibility_and_remove_dirty\\\\\\\",this._updateVisibilityAndRemoveDirtyBound)}}updateVisibilityAndRemoveDirty(){this.updateVisibility(),this.param().removeDirtyState()}async updateVisibility(){const t=this._options.visibleIf;if(t){const e=this.visibilityPredecessors(),n=e.map((t=>{if(t.isDirty())return t.compute()}));if(this._programatic_visible_state=!1,await Promise.all(n),m.isArray(t))for(let n of t){e.filter((t=>t.value==n[t.name()])).length==e.length&&(this._programatic_visible_state=!0)}else{const n=e.filter((e=>e.value==t[e.name()]));this._programatic_visible_state=n.length==e.length}this.param().emit(Nr.VISIBLE_UPDATED)}}}class Fr{constructor(t){this.param=t,this._blocked_emit=!1,this._blocked_parent_emit=!1,this._count_by_event_name={}}emitAllowed(){return!0!==this._blocked_emit&&(!this.param.scene().loadingController.isLoading()&&this.param.scene().dispatchController.emitAllowed())}blockEmit(){if(this._blocked_emit=!0,this.param.isMultiple()&&this.param.components)for(let t of this.param.components)t.emitController.blockEmit();return!0}unblockEmit(){if(this._blocked_emit=!1,this.param.isMultiple()&&this.param.components)for(let t of this.param.components)t.emitController.unblockEmit();return!0}blockParentEmit(){return this._blocked_parent_emit=!0,!0}unblockParentEmit(){return this._blocked_parent_emit=!1,!0}incrementCount(t){this._count_by_event_name[t]=this._count_by_event_name[t]||0,this._count_by_event_name[t]+=1}eventsCount(t){return this._count_by_event_name[t]||0}emit(t){this.emitAllowed()&&(this.param.emit(t),null!=this.param.parent_param&&!0!==this._blocked_parent_emit&&this.param.parent_param.emit(t))}}class Dr{constructor(t){this.param=t}toJSON(){const t={name:this.param.name(),type:this.param.type(),raw_input:this.rawInput(),value:this.value(),value_pre_conversion:this.value_pre_conversion(),expression:this.expression(),graph_node_id:this.param.graphNodeId(),error_message:this.error_message(),is_visible:this.is_visible(),components:void 0};return this.param.isMultiple()&&this.param.components&&(t.components=this.param.components.map((t=>t.graphNodeId()))),t}rawInput(){return this.param.rawInputSerialized()}value(){return this.param.valueSerialized()}value_pre_conversion(){return this.param.valuePreConversionSerialized()}expression(){var t;return this.param.hasExpression()?null===(t=this.param.expressionController)||void 0===t?void 0:t.expression():void 0}error_message(){return this.param.states.error.message()}is_visible(){return this.param.options.isVisible()}}class Br{constructor(t){this.param=t}active(){const t=this.param.scene().timeController.graphNode.graphNodeId();return this.param.graphPredecessorIds().includes(t)}}class zr{constructor(t){this.param=t}set(t){this._message!=t&&(this._message=t,this._message&&li.warn(this.param.path(),this._message),this.param.emitController.emit(Nr.ERROR_UPDATED))}message(){return this._message}clear(){this.set(void 0)}active(){return null!=this._message}}class kr{constructor(t){this.param=t,this.timeDependent=new Br(this.param),this.error=new zr(this.param)}}class Ur extends Mi{constructor(t,e,n){var i;super(t.scene(),\\\\\\\"MethodDependency\\\\\\\"),this.param=t,this.path_argument=e,this.decomposed_path=n,this._update_from_name_change_bound=this._update_from_name_change.bind(this),null===(i=t.expressionController)||void 0===i||i.registerMethodDependency(this),this.addPostDirtyHook(\\\\\\\"_update_from_name_change\\\\\\\",this._update_from_name_change_bound)}_update_from_name_change(t){if(t&&this.decomposed_path){const e=t;this.decomposed_path.update_from_name_change(e);const n=this.decomposed_path.to_path(),i=this.jsep_node;i&&(i.value=`${i.value}`.replace(`${this.path_argument}`,n),i.raw=i.raw.replace(`${this.path_argument}`,n)),this.param.expressionController&&this.param.expressionController.updateFromMethodDependencyNameChange()}}reset(){this.graphDisconnectPredecessors()}listen_for_name_changes(){if(this.jsep_node&&this.decomposed_path)for(let t of this.decomposed_path.named_nodes())if(t){const e=t;e.nameController&&this.addGraphInput(e.nameController.graph_node)}}set_jsep_node(t){this.jsep_node=t}set_resolved_graph_node(t){this.resolved_graph_node=t}set_unresolved_path(t){this.unresolved_path=t}static create(t,e,n,i){const s=m.isNumber(e),r=new Ur(t,e,i);if(n)r.set_resolved_graph_node(n);else if(!s){const t=e;r.set_unresolved_path(t)}return r}}const Gr=[];class Vr extends Mi{constructor(t,e){super(t,\\\\\\\"BaseParam\\\\\\\"),this._options=new Ir(this),this._emit_controller=new Fr(this),this._is_computing=!1,this._node=e,this.initialize_param()}get options(){return this._options=this._options||new Ir(this)}get emitController(){return this._emit_controller=this._emit_controller||new Fr(this)}get expressionController(){return this._expression_controller}get serializer(){return this._serializer=this._serializer||new Dr(this)}get states(){return this._states=this._states||new kr(this)}dispose(){var t,e;const n=this.graphPredecessors();for(let t of n)t instanceof Ur&&t.dispose();this.scene().missingExpressionReferencesController.deregisterParam(this),null===(t=this._expression_controller)||void 0===t||t.dispose(),super.dispose(),null===(e=this._options)||void 0===e||e.dispose()}initialize_param(){}static type(){return Cr.FLOAT}type(){return this.constructor.type()}isNumeric(){return!1}setName(t){super.setName(t)}get value(){return this._value}copy_value(t){t.type()==this.type()?this._copy_value(t):console.warn(`cannot copy value from ${t.type()} to ${this.type()}`)}_copy_value(t){throw\\\\\\\"abstract method param._copy_value\\\\\\\"}valuePreConversionSerialized(){}convert(t){return null}static are_raw_input_equal(t,e){return!1}is_raw_input_equal(t){return this.constructor.are_raw_input_equal(this._raw_input,t)}static are_values_equal(t,e){return!1}is_value_equal(t){return this.constructor.are_values_equal(this.value,t)}_clone_raw_input(t){return t}set(t){this._raw_input=this._clone_raw_input(this._prefilter_invalid_raw_input(t)),this.emitController.emit(Nr.RAW_INPUT_UPDATED),this.processRawInput()}_prefilter_invalid_raw_input(t){return t}defaultValue(){return this._default_value}isDefault(){return this._raw_input==this._default_value}rawInput(){return this._raw_input}processRawInput(){}async compute(){if(this.scene().loadingController.isLoading()&&console.warn(`param attempt to compute ${this.path()}`),this.isDirty()){if(this._is_computing)return new Promise(((t,e)=>{this._compute_resolves=this._compute_resolves||[],this._compute_resolves.push(t)}));if(this._is_computing=!0,await this.processComputation(),this._is_computing=!1,this._compute_resolves){let t;for(;t=this._compute_resolves.pop();)t()}}}async processComputation(){}setInitValue(t){this._default_value=this._clone_raw_input(this._prefilter_invalid_raw_input(t))}_setupNodeDependencies(t){var e,n;if(t?(this.options.allowCallback(),this.parent_param||(this.options.makesNodeDirtyWhenDirty()?null===(n=t.params.params_node)||void 0===n||n.addGraphInput(this,!1):this.dirtyController.addPostDirtyHook(\\\\\\\"run callback\\\\\\\",(async()=>{await this.compute(),this.options.executeCallback()})))):this._node&&(null===(e=this._node.params.params_node)||void 0===e||e.removeGraphInput(this)),this.components)for(let e of this.components)e._setupNodeDependencies(t)}get node(){return this._node}parent(){return this.node}set_parent_param(t){t.addGraphInput(this,!1),this._parent_param=t}get parent_param(){return this._parent_param}has_parent_param(){return null!=this._parent_param}path(){var t;return(null===(t=this.node)||void 0===t?void 0:t.path())+\\\\\\\"/\\\\\\\"+this.name()}pathRelativeTo(t){const e=bi.relativePath(t,this.node);return e.length>0?`${e}${bi.SEPARATOR}${this.name()}`:this.name()}emit(t){this.emitController.emitAllowed()&&(this.emitController.incrementCount(t),this.scene().dispatchController.dispatch(this,t))}get components(){return this._components}componentNames(){return Gr}isMultiple(){return this.componentNames().length>0}initComponents(){}hasExpression(){return null!=this.expressionController&&this.expressionController.active()}toJSON(){return this.serializer.toJSON()}}var Hr=n(94),jr=n.n(Hr);jr.a.addUnaryOp(\\\\\\\"@\\\\\\\");jr.a.addBinaryOp(\\\\\\\"**\\\\\\\",10);class Wr{constructor(){}parse_expression(t){try{this.reset(),this.node=jr()(t)}catch(e){const n=`could not parse the expression '${t}' (error: ${e})`;this.error_message=n}}parse_expression_for_string_param(t){try{this.reset();const e=Wr.string_value_elements(t),n=[];for(let t=0;t<e.length;t++){const i=e[t];let s;if(t%2==1)s=jr()(i);else{const t=i.replace(/\\\\'/g,\\\\\\\"\\\\\\\\'\\\\\\\");s={type:\\\\\\\"Literal\\\\\\\",value:`'${t}'`,raw:`'${t}'`}}n.push(s)}this.node={type:\\\\\\\"CallExpression\\\\\\\",arguments:n,callee:{type:\\\\\\\"Identifier\\\\\\\",name:\\\\\\\"strConcat\\\\\\\"}}}catch(e){const n=`could not parse the expression '${t}' (error: ${e})`;this.error_message=n}}static string_value_elements(t){return null!=t&&m.isString(t)?t.split(\\\\\\\"`\\\\\\\"):[]}reset(){this.node=void 0,this.error_message=void 0}}class qr{constructor(t){this.param=t,this._set_error_from_error_bound=this._set_error_from_error.bind(this)}clear_error(){this._error_message=void 0}set_error(t){this._error_message=this._error_message||t}_set_error_from_error(t){m.isString(t)?this._error_message=t:this._error_message=t.message}is_errored(){return null!=this._error_message}error_message(){return this._error_message}reset(){this._error_message=void 0}traverse_node(t){const e=`traverse_${t.type}`;if(this[e])return this[e](t);this.set_error(`expression unknown node type: ${t.type}`)}traverse_BinaryExpression(t){return`${this.traverse_node(t.left)} ${t.operator} ${this.traverse_node(t.right)}`}traverse_LogicalExpression(t){return`${this.traverse_node(t.left)} ${t.operator} ${this.traverse_node(t.right)}`}traverse_MemberExpression(t){return`${this.traverse_node(t.object)}.${this.traverse_node(t.property)}`}traverse_ConditionalExpression(t){return`(${this.traverse_node(t.test)}) ? (${this.traverse_node(t.consequent)}) : (${this.traverse_node(t.alternate)})`}traverse_Compound(t){const e=t.body;let n=[];for(let t=0;t<e.length;t++){const i=e[t];\\\\\\\"Identifier\\\\\\\"==i.type?\\\\\\\"$\\\\\\\"==i.name[0]?n.push(\\\\\\\"`${\\\\\\\"+this.traverse_node(i)+\\\\\\\"}`\\\\\\\"):n.push(`'${i.name}'`):n.push(\\\\\\\"`${\\\\\\\"+this.traverse_node(i)+\\\\\\\"}`\\\\\\\")}return n.join(\\\\\\\" + \\\\\\\")}traverse_Literal(t){return`${t.raw}`}}class Xr{constructor(){}reset(){this._attributeNames&&this._attributeNames.clear()}assignAttributesLines(){if(this._attributeNames){const t=[];for(let e of this._attributeNames)t.push(Xr.assignAttributeLine(e));return t.join(\\\\\\\";\\\\n\\\\\\\")}return\\\\\\\"\\\\\\\"}assignArraysLines(){if(this._attributeNames){const t=[];if(this._attributeNames.size>0){const e=\\\\\\\"const coreGeometry = entities[0].coreGeometry();\\\\\\\";t.push(e)}for(let e of this._attributeNames)t.push(Xr.assignItemSizeLine(e)),t.push(Xr.assignArrayLine(e));return t.join(\\\\\\\";\\\\n\\\\\\\")}return\\\\\\\"\\\\\\\"}attributePresenceCheckLine(){if(this._attributeNames){const t=[];for(let e of this._attributeNames){const n=Xr._varAttribute(e);t.push(n)}if(t.length>0)return t.join(\\\\\\\" && \\\\\\\")}return\\\\\\\"true\\\\\\\"}add(t){this._attributeNames=this._attributeNames||new Set,this._attributeNames.add(t)}static assignAttributeLine(t){return`const ${this._varAttribute(t)} = entities[0].geometry().attributes['${t}']`}static assignItemSizeLine(t){const e=this._varAttribute(t);return`const ${this._varAttribSize(t)} = ${e}.itemSize`}static assignArrayLine(t){const e=this._varAttribute(t);return`const ${this._varArray(t)} = ${`coreGeometry.isAttribIndexed('${t}')`} ? ${`entities.map(e=>e.indexedAttribValue('${t}'))`} : ${`${e}.array`}`}static _varAttribute(t){return`attrib_${t}`}static _varAttribSize(t){return`attrib_size_${t}`}static _varArray(t){return`array_${t}`}varAttributeSize(t){return Xr._varAttribSize(t)}varArray(t){return Xr._varArray(t)}}const Yr={math_random:\\\\\\\"random\\\\\\\"},$r=Object.keys(sr),Jr={};[\\\\\\\"abs\\\\\\\",\\\\\\\"acos\\\\\\\",\\\\\\\"acosh\\\\\\\",\\\\\\\"asin\\\\\\\",\\\\\\\"asinh\\\\\\\",\\\\\\\"atan\\\\\\\",\\\\\\\"atan2\\\\\\\",\\\\\\\"atanh\\\\\\\",\\\\\\\"ceil\\\\\\\",\\\\\\\"cos\\\\\\\",\\\\\\\"cosh\\\\\\\",\\\\\\\"exp\\\\\\\",\\\\\\\"expm1\\\\\\\",\\\\\\\"floor\\\\\\\",\\\\\\\"log\\\\\\\",\\\\\\\"log1p\\\\\\\",\\\\\\\"log2\\\\\\\",\\\\\\\"log10\\\\\\\",\\\\\\\"max\\\\\\\",\\\\\\\"min\\\\\\\",\\\\\\\"pow\\\\\\\",\\\\\\\"round\\\\\\\",\\\\\\\"sign\\\\\\\",\\\\\\\"sin\\\\\\\",\\\\\\\"sinh\\\\\\\",\\\\\\\"sqrt\\\\\\\",\\\\\\\"tan\\\\\\\",\\\\\\\"tanh\\\\\\\"].forEach((t=>{Jr[t]=`Math.${t}`})),[\\\\\\\"cbrt\\\\\\\",\\\\\\\"hypot\\\\\\\",\\\\\\\"log10\\\\\\\",\\\\\\\"trunc\\\\\\\"].forEach((t=>{Jr[t]=`Math.${t}`})),Object.keys(Yr).forEach((t=>{const e=Yr[t];Jr[t]=`Math.${e}`})),[\\\\\\\"fit\\\\\\\",\\\\\\\"fit01\\\\\\\",\\\\\\\"fract\\\\\\\",\\\\\\\"deg2rad\\\\\\\",\\\\\\\"rad2deg\\\\\\\",\\\\\\\"rand\\\\\\\",\\\\\\\"clamp\\\\\\\"].forEach((t=>{Jr[t]=`Core.Math.${t}`})),$r.forEach((t=>{Jr[t]=`Core.Math.Easing.${t}`})),[\\\\\\\"precision\\\\\\\"].forEach((t=>{Jr[t]=`Core.String.${t}`}));const Zr={if:class{static if(t){return`(${t[0]}) ? (${t[1]}) : (${t[2]})`}}.if},Kr={};[\\\\\\\"E\\\\\\\",\\\\\\\"LN2\\\\\\\",\\\\\\\"LN10\\\\\\\",\\\\\\\"LOG10E\\\\\\\",\\\\\\\"LOG2E\\\\\\\",\\\\\\\"PI\\\\\\\",\\\\\\\"SQRT1_2\\\\\\\",\\\\\\\"SQRT2\\\\\\\"].forEach((t=>{Kr[t]=`Math.${t}`}));const Qr={x:0,y:1,z:2,w:3,r:0,g:1,b:2};class to extends qr{constructor(t){super(t),this.param=t,this._attribute_requirements_controller=new Xr,this.methods=[],this.method_index=-1,this.method_dependencies=[],this.immutable_dependencies=[]}parse_tree(t){if(this.reset(),null==t.error_message){try{if(this._attribute_requirements_controller=new Xr,t.node){const e=this.traverse_node(t.node);e&&!this.is_errored()&&(this.function_main_string=e)}else console.warn(\\\\\\\"no parsed_tree.node\\\\\\\")}catch(t){console.warn(`error in expression for param ${this.param.path()}`),console.warn(t)}if(this.function_main_string)try{const t=this._functionBody();this.function=new Function(\\\\\\\"Core\\\\\\\",\\\\\\\"param\\\\\\\",\\\\\\\"methods\\\\\\\",\\\\\\\"_set_error_from_error\\\\\\\",`\\\\n\\\\t\\\\t\\\\t\\\\t\\\\ttry {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t${t}\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t} catch(e) {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t_set_error_from_error(e)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\treturn null;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t}`)}catch(t){console.warn(t),this.set_error(\\\\\\\"cannot generate function\\\\\\\")}else this.set_error(\\\\\\\"cannot generate function body\\\\\\\")}else this.set_error(\\\\\\\"cannot parse expression\\\\\\\")}reset(){super.reset(),this.function_main_string=void 0,this.methods=[],this.method_index=-1,this.function=void 0,this.method_dependencies=[],this.immutable_dependencies=[]}_functionBody(){return this.param.options.isExpressionForEntities()?`\\\\n\\\\t\\\\t\\\\tconst entities = param.expressionController.entities();\\\\n\\\\t\\\\t\\\\tif(entities){\\\\n\\\\t\\\\t\\\\t\\\\treturn new Promise( async (resolve, reject)=>{\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tlet entity;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tconst entity_callback = param.expressionController.entity_callback();\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t// assign_attributes_lines\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t${this._attribute_requirements_controller.assignAttributesLines()}\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t// check if attributes are present\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tif( ${this._attribute_requirements_controller.attributePresenceCheckLine()} ){\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t// assign_arrays_lines\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t${this._attribute_requirements_controller.assignArraysLines()}\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tfor(let index=0; index < entities.length; index++){\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tentity = entities[index];\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tresult = ${this.function_main_string};\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tentity_callback(entity, result);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tresolve()\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t} else {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tconst error = new Error('attribute not found')\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t_set_error_from_error(error)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\treject(error)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t\\\\t\\\\t})\\\\n\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t\\\\treturn []`:`\\\\n\\\\t\\\\t\\\\treturn new Promise( async (resolve, reject)=>{\\\\n\\\\t\\\\t\\\\t\\\\ttry {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tconst value = ${this.function_main_string}\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tresolve(value)\\\\n\\\\t\\\\t\\\\t\\\\t} catch(e) {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t_set_error_from_error(e)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\treject()\\\\n\\\\t\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t\\\\t})\\\\n\\\\t\\\\t\\\\t`}evalAllowed(){return null!=this.function}evalFunction(){if(this.function){this.clear_error();const t={Math:or,String:ss};return this.function(t,this.param,this.methods,this._set_error_from_error_bound)}}traverse_CallExpression(t){const e=t.arguments.map((t=>this.traverse_node(t))),n=t.callee.name;if(n){const i=Zr[n];if(i)return i(e);const s=`${e.join(\\\\\\\", \\\\\\\")}`,r=Jr[n];if(r)return`${r}(${s})`;const o=li.expressionsRegister;if(o.getMethod(n)){const i=t.arguments[0],r=`return ${e[0]}`;let o,a=[];try{o=new Function(r),a=o()}catch{}return this._create_method_and_dependencies(n,a,i),`(await methods[${this.method_index}].processArguments([${s}]))`}{const t=`method not found (${n}), available methods are: ${o.availableMethods().join(\\\\\\\", \\\\\\\")}`;li.warn(t)}}this.set_error(`unknown method: ${n}`)}traverse_BinaryExpression(t){return`(${this.traverse_node(t.left)} ${t.operator} ${this.traverse_node(t.right)})`}traverse_LogicalExpression(t){return`(${this.traverse_node(t.left)} ${t.operator} ${this.traverse_node(t.right)})`}traverse_MemberExpression(t){return`${this.traverse_node(t.object)}.${this.traverse_node(t.property)}`}traverse_UnaryExpression(t){if(\\\\\\\"@\\\\\\\"===t.operator){let e,n,i=t.argument;switch(i.type){case\\\\\\\"Identifier\\\\\\\":e=i.name;break;case\\\\\\\"MemberExpression\\\\\\\":{const t=i,s=t.object,r=t.property;e=s.name,n=r.name;break}}if(e){if(e=Xs.remapName(e),\\\\\\\"ptnum\\\\\\\"==e)return\\\\\\\"((entity != null) ? entity.index() : 0)\\\\\\\";{const t=this._attribute_requirements_controller.varAttributeSize(e),i=this._attribute_requirements_controller.varArray(e);if(this._attribute_requirements_controller.add(e),n){return`${i}[entity.index()*${t}+${Qr[n]}]`}return`${i}[entity.index()*${t}]`}}return console.warn(\\\\\\\"attribute not found\\\\\\\"),\\\\\\\"\\\\\\\"}return`${t.operator}${this.traverse_node(t.argument)}`}traverse_Literal(t){return`${t.raw}`}traverse_Identifier(t){if(\\\\\\\"$\\\\\\\"!=t.name[0])return t.name;{const e=t.name.substr(1),n=Kr[e];if(n)return n;const i=`traverse_Identifier_${e}`;if(this[i])return this[i]();this.set_error(`identifier unknown: ${t.name}`)}}traverse_Identifier_F(){return this.immutable_dependencies.push(this.param.scene().timeController.graphNode),\\\\\\\"param.scene().timeController.frame()\\\\\\\"}traverse_Identifier_T(){return this.immutable_dependencies.push(this.param.scene().timeController.graphNode),\\\\\\\"param.scene().timeController.time()\\\\\\\"}traverse_Identifier_OS(){return`'${this.param.node.name()}'`}traverse_Identifier_CH(){return`'${this.param.name()}'`}traverse_Identifier_CEX(){return this._method_centroid(\\\\\\\"x\\\\\\\")}traverse_Identifier_CEY(){return this._method_centroid(\\\\\\\"y\\\\\\\")}traverse_Identifier_CEZ(){return this._method_centroid(\\\\\\\"z\\\\\\\")}_method_centroid(t){const e=[0,`'${t}'`].join(\\\\\\\", \\\\\\\");return this._create_method_and_dependencies(\\\\\\\"centroid\\\\\\\",0),`(await methods[${this.method_index}].processArguments([${e}]))`}_create_method_and_dependencies(t,e,n){const i=li.expressionsRegister,s=i.getMethod(t);if(!s){const e=`method not found (${t}), available methods are: ${i.availableMethods().join(\\\\\\\", \\\\\\\")}`;return this.set_error(e),void li.warn(e)}const r=new s(this.param);if(this.method_index+=1,this.methods[this.method_index]=r,r.require_dependency()){const t=r.findDependency(e);t?(n&&t.set_jsep_node(n),this.method_dependencies.push(t)):n&&m.isString(e)&&this.param.scene().missingExpressionReferencesController.register(this.param,e)}}}class eo extends qr{constructor(t){super(t),this.param=t}parse_tree(t){if(null==t.error_message&&t.node)try{return this.traverse_node(t.node)}catch(t){this.set_error(\\\\\\\"could not traverse tree\\\\\\\")}else this.set_error(\\\\\\\"cannot parse tree\\\\\\\")}traverse_CallExpression(t){const e=`${t.arguments.map((t=>this.traverse_node(t))).join(\\\\\\\", \\\\\\\")}`;return`${t.callee.name}(${e})`}traverse_UnaryExpression(t){return`${t.operator}${this.traverse_node(t.argument)}`}traverse_Identifier(t){return`${t.name}`}}class no{constructor(t){this.param=t,this.cyclic_graph_detected=!1,this.method_dependencies=[]}set_error(t){this.error_message=this.error_message||t}reset(){this.param.graphDisconnectPredecessors(),this.method_dependencies.forEach((t=>{t.reset()})),this.method_dependencies=[]}update(t){this.cyclic_graph_detected=!1,this.connect_immutable_dependencies(t),this.method_dependencies=t.method_dependencies,this.handle_method_dependencies(),this.listen_for_name_changes()}connect_immutable_dependencies(t){t.immutable_dependencies.forEach((t=>{if(0==this.cyclic_graph_detected&&0==this.param.addGraphInput(t))return this.cyclic_graph_detected=!0,this.set_error(\\\\\\\"cannot create expression, infinite graph detected\\\\\\\"),void this.reset()}))}handle_method_dependencies(){this.method_dependencies.forEach((t=>{0==this.cyclic_graph_detected&&this.handle_method_dependency(t)}))}handle_method_dependency(t){const e=t.resolved_graph_node;if(e&&!this.param.addGraphInput(e))return this.cyclic_graph_detected=!0,this.set_error(\\\\\\\"cannot create expression, infinite graph detected\\\\\\\"),void this.reset()}listen_for_name_changes(){this.method_dependencies.forEach((t=>{t.listen_for_name_changes()}))}}class io{constructor(t){this.param=t,this.parse_completed=!1,this.parse_started=!1,this.parsed_tree=new Wr,this._functionGenerator=new to(this.param),this.dependencies_controller=new no(this.param)}parseExpression(t){if(this.parse_started)throw new Error(`parse in progress for param ${this.param.path()}`);this.parse_started=!0,this.parse_completed=!1,this.parsed_tree=this.parsed_tree||new Wr,this.reset(),this.param.type()==Cr.STRING?this.parsed_tree.parse_expression_for_string_param(t):this.parsed_tree.parse_expression(t),this._functionGenerator.parse_tree(this.parsed_tree),null==this._functionGenerator.error_message()&&(this.dependencies_controller.update(this._functionGenerator),this.dependencies_controller.error_message?this.param.states.error.set(this.dependencies_controller.error_message):(this.parse_completed=!0,this.parse_started=!1))}async computeFunction(){if(!this._computeAllowed())return new Promise(((t,e)=>{t(null)}));try{return await this._functionGenerator.evalFunction()}catch(t){return}}reset(){this.parse_completed=!1,this.parse_started=!1,this.dependencies_controller.reset(),this._functionGenerator.reset()}is_errored(){return this._functionGenerator.is_errored()}error_message(){return this._functionGenerator.error_message()}_computeAllowed(){return this._functionGenerator.evalAllowed()}updateFromMethodDependencyNameChange(){this.expression_string_generator=this.expression_string_generator||new eo(this.param);const t=this.expression_string_generator.parse_tree(this.parsed_tree);t?this.param.set(t):console.warn(\\\\\\\"failed to regenerate expression\\\\\\\")}}class so{constructor(t){this.param=t}dispose(){this.param.scene().expressionsController.deregisterParam(this.param),this._resetMethodDependencies()}_resetMethodDependencies(){var t,e;null===(t=this._method_dependencies_by_graph_node_id)||void 0===t||t.forEach((t=>{t.dispose()})),null===(e=this._method_dependencies_by_graph_node_id)||void 0===e||e.clear()}registerMethodDependency(t){this._method_dependencies_by_graph_node_id=this._method_dependencies_by_graph_node_id||new Map,this._method_dependencies_by_graph_node_id.set(t.graphNodeId(),t)}active(){return null!=this._expression}expression(){return this._expression}is_errored(){return!!this._manager&&this._manager.is_errored()}error_message(){return this._manager?this._manager.error_message():null}requires_entities(){return this.param.options.isExpressionForEntities()}set_expression(t,e=!0){var n;this.param.scene().missingExpressionReferencesController.deregisterParam(this.param),this.param.scene().expressionsController.deregisterParam(this.param),this._expression!=t&&(this._resetMethodDependencies(),this._expression=t,this._expression?(this._manager=this._manager||new io(this.param),this._manager.parseExpression(this._expression)):null===(n=this._manager)||void 0===n||n.reset(),e&&this.param.setDirty())}updateFromMethodDependencyNameChange(){this._manager&&this.active()&&this._manager.updateFromMethodDependencyNameChange()}async computeExpression(){if(this._manager&&this.active()){return await this._manager.computeFunction()}}async computeExpressionForEntities(t,e){var n,i;this.set_entities(t,e),await this.computeExpression(),(null===(n=this._manager)||void 0===n?void 0:n.error_message())&&this.param.node.states.error.set(`expression evalution error: ${null===(i=this._manager)||void 0===i?void 0:i.error_message()}`),this.reset_entities()}computeExpressionForPoints(t,e){return this.computeExpressionForEntities(t,e)}computeExpressionForObjects(t,e){return this.computeExpressionForEntities(t,e)}entities(){return this._entities}entity_callback(){return this._entity_callback}set_entities(t,e){this._entities=t,this._entity_callback=e}reset_entities(){this._entities=void 0,this._entity_callback=void 0}}class ro extends Vr{isNumeric(){return!0}isDefault(){return this._raw_input==this._default_value}_prefilter_invalid_raw_input(t){return m.isArray(t)?t[0]:t}processRawInput(){this.states.error.clear();const t=this.convert(this._raw_input);null!=t?(this._expression_controller&&(this._expression_controller.set_expression(void 0,!1),this.emitController.emit(Nr.EXPRESSION_UPDATED)),t!=this._value&&(this._update_value(t),this.setSuccessorsDirty(this))):m.isString(this._raw_input)?(this._expression_controller=this._expression_controller||new so(this),this._raw_input!=this._expression_controller.expression()&&(this._expression_controller.set_expression(this._raw_input),this.emitController.emit(Nr.EXPRESSION_UPDATED))):this.states.error.set(`param input is invalid (${this.path()})`)}async processComputation(){var t;if((null===(t=this.expressionController)||void 0===t?void 0:t.active())&&!this.expressionController.requires_entities()){const t=await this.expressionController.computeExpression();if(this.expressionController.is_errored())this.states.error.set(`expression error: \\\\\\\"${this.expressionController.expression()}\\\\\\\" (${this.expressionController.error_message()})`);else{const e=this.convert(t);null!=e?(this.states.error.active()&&this.states.error.clear(),this._update_value(e)):this.states.error.set(`expression returns an invalid type (${t}) (${this.expressionController.expression()})`)}}}_update_value(t){this._value=t,this.parent_param&&this.parent_param.set_value_from_components(),this.options.executeCallback(),this.emitController.emit(Nr.VALUE_UPDATED),this.removeDirtyState()}}class oo extends ro{static type(){return Cr.FLOAT}defaultValueSerialized(){return this._default_value}rawInputSerialized(){return this._raw_input}valueSerialized(){return this.value}_copy_value(t){this.set(t.valueSerialized())}_prefilter_invalid_raw_input(t){return m.isArray(t)?t[0]:m.isString(t)&&ss.isNumber(t)?parseFloat(t):t}static are_raw_input_equal(t,e){return t==e}static are_values_equal(t,e){return t==e}static convert(t){if(m.isNumber(t))return t;if(m.isBoolean(t))return t?1:0;if(ss.isNumber(t)){const e=parseFloat(t);if(m.isNumber(e))return e}return null}convert(t){const e=oo.convert(t);return e?this.options.ensureInRange(e):e}}class ao extends Vr{constructor(){super(...arguments),this._components_contructor=oo}get components(){return this._components}isNumeric(){return!0}isDefault(){for(let t of this.components)if(!t.isDefault())return!1;return!0}rawInput(){return this._components.map((t=>t.rawInput()))}rawInputSerialized(){return this._components.map((t=>t.rawInputSerialized()))}_copy_value(t){for(let e=0;e<this.components.length;e++){const n=this.components[e],i=t.components[e];n.copy_value(i)}}initComponents(){if(null!=this._components)return;let t=0;this._components=new Array(this.componentNames().length);for(let e of this.componentNames()){const n=new this._components_contructor(this.scene(),this._node);let i;i=m.isArray(this._default_value)?this._default_value[t]:this._default_value[e],n.options.copy(this.options),n.setInitValue(i),n.setName(`${this.name()}${e}`),n.set_parent_param(this),this._components[t]=n,t++}}async processComputation(){await this.compute_components(),this.set_value_from_components()}set_value_from_components(){}hasExpression(){var t;for(let e of this.components)if(null===(t=e.expressionController)||void 0===t?void 0:t.active())return!0;return!1}async compute_components(){const t=this.components,e=[];for(let n of t)n.isDirty()&&e.push(n.compute());await Promise.all(e),this.removeDirtyState()}_prefilter_invalid_raw_input(t){if(m.isArray(t))return t;{const e=t;return this.componentNames().map((()=>e))}}processRawInput(){const t=this.scene().cooker;t.block();const e=this.components;for(let t of e)t.emitController.blockParentEmit();const n=this._raw_input;let i=0;if(m.isArray(n))for(let t=0;t<e.length;t++){let s=n[t];null==s&&(s=i),e[t].set(s),i=s}else for(let t=0;t<e.length;t++){let s=n[this.componentNames()[t]];null==s&&(s=i),e[t].set(s),i=s}t.unblock();for(let t=0;t<e.length;t++)e[t].emitController.unblockParentEmit();this.emitController.emit(Nr.VALUE_UPDATED)}}var lo;!function(t){t.NONE=\\\\\\\"no conversion\\\\\\\",t.GAMMA_TO_LINEAR=\\\\\\\"gamma -> linear\\\\\\\",t.LINEAR_TO_GAMMA=\\\\\\\"linear -> gamma\\\\\\\",t.SRGB_TO_LINEAR=\\\\\\\"sRGB -> linear\\\\\\\",t.LINEAR_TO_SRGB=\\\\\\\"linear -> sRGB\\\\\\\"}(lo||(lo={}));lo.NONE,lo.GAMMA_TO_LINEAR,lo.LINEAR_TO_GAMMA,lo.SRGB_TO_LINEAR,lo.LINEAR_TO_SRGB;class co{static set_hsv(t,e,n,i){t=Object(On.f)(t,1),e=Object(On.d)(e,0,1),n=Object(On.d)(n,0,1),i.setHSL(t,e*n/((t=(2-e)*n)<1?t:2-t),.5*t)}}const ho=[\\\\\\\"r\\\\\\\",\\\\\\\"g\\\\\\\",\\\\\\\"b\\\\\\\"];class uo extends ro{static type(){return Cr.INTEGER}defaultValueSerialized(){return this._default_value}rawInputSerialized(){return this._raw_input}valueSerialized(){return this.value}_copy_value(t){this.set(t.valueSerialized())}_prefilter_invalid_raw_input(t){return m.isArray(t)?t[0]:m.isString(t)&&ss.isNumber(t)?parseInt(t):t}static are_raw_input_equal(t,e){return t==e}static are_values_equal(t,e){return t==e}static convert(t){if(m.isNumber(t))return Math.round(t);if(m.isBoolean(t))return t?1:0;if(ss.isNumber(t)){const e=parseInt(t);if(m.isNumber(e))return e}return null}convert(t){const e=uo.convert(t);return e?this.options.ensureInRange(e):e}}class po{constructor(){this._index=-1,this._path_elements=[],this._named_nodes=[],this._graph_node_ids=[],this._node_element_by_graph_node_id=new Map}reset(){this._index=-1,this._path_elements=[],this._named_nodes=[],this._graph_node_ids=[],this._node_element_by_graph_node_id.clear()}add_node(t,e){this._index+=1,t==e.name()&&(this._named_nodes[this._index]=e),this._graph_node_ids[this._index]=e.graphNodeId(),this._node_element_by_graph_node_id.set(e.graphNodeId(),t)}add_path_element(t){this._index+=1,this._path_elements[this._index]=t}named_graph_nodes(){return this._named_nodes}named_nodes(){const t=[];for(let e of this._named_nodes)if(e){const n=e;n.nameController&&t.push(n)}return t}update_from_name_change(t){this._named_nodes.map((t=>null==t?void 0:t.graphNodeId())).includes(t.graphNodeId())&&this._node_element_by_graph_node_id.set(t.graphNodeId(),t.name())}to_path(){const t=new Array(this._index);for(let e=0;e<=this._index;e++){const n=this._named_nodes[e];if(n){const i=this._node_element_by_graph_node_id.get(n.graphNodeId());i&&(t[e]=i)}else{const n=this._path_elements[e];n&&(t[e]=n)}}let e=t.join(bi.SEPARATOR);const n=e[0];return n&&(bi.NON_LETTER_PREFIXES.includes(n)||(e=`${bi.SEPARATOR}${e}`)),e}}class _o extends Vr{constructor(){super(...arguments),this.decomposed_path=new po}_handleReferences(t,e){this.scene().referencesController.setNamedNodesFromParam(this),t?this.scene().referencesController.setReferenceFromParam(this,t):this.scene().missingExpressionReferencesController.register(this,e)}}var mo;!function(t){t.NODE=\\\\\\\"NODE\\\\\\\",t.PARAM=\\\\\\\"PARAM\\\\\\\"}(mo||(mo={}));class fo extends _o{constructor(){super(...arguments),this._found_node=null,this._found_node_with_expected_type=null,this._found_param=null,this._found_param_with_expected_type=null}static type(){return Cr.OPERATOR_PATH}defaultValueSerialized(){return this._default_value}rawInputSerialized(){return`${this._raw_input}`}valueSerialized(){return`${this.value}`}_copy_value(t){this.set(t.valueSerialized())}static are_raw_input_equal(t,e){return t==e}static are_values_equal(t,e){return t==e}isDefault(){return this._value==this._default_value}setNode(t){this.set(t.path())}processRawInput(){this._value!=this._raw_input&&(this._value=this._raw_input,this.setDirty(),this.emitController.emit(Nr.VALUE_UPDATED))}async processComputation(){this.find_target()}find_target(){if(!this.node)return;const t=this._value;let e=null,n=null;const i=null!=t&&\\\\\\\"\\\\\\\"!==t,s=this.options.paramSelectionOptions()?mo.PARAM:mo.NODE;this.scene().referencesController.resetReferenceFromParam(this),this.decomposed_path.reset(),i&&(s==mo.PARAM?n=bi.findParam(this.node,t,this.decomposed_path):e=bi.findNode(this.node,t,this.decomposed_path));const r=s==mo.PARAM?this._found_param:this._found_node,o=s==mo.PARAM?n:e;if(this._handleReferences(e,t),(null==r?void 0:r.graphNodeId())!==(null==o?void 0:o.graphNodeId())){const t=this.options.dependentOnFoundNode();this._found_node&&t&&this.removeGraphInput(this._found_node),s==mo.PARAM?(this._found_param=n,this._found_node=null):(this._found_node=e,this._found_param=null),e&&this._assign_found_node(e),n&&this._assign_found_param(n),this.options.executeCallback()}this.removeDirtyState()}_assign_found_node(t){const e=this.options.dependentOnFoundNode();this._is_node_expected_context(t)?this._is_node_expected_type(t)?(this._found_node_with_expected_type=t,e&&this.addGraphInput(t)):this.states.error.set(`node type is ${t.type()} but the params expects one of ${(this._expected_node_types()||[]).join(\\\\\\\", \\\\\\\")}`):this.states.error.set(`node context is ${t.context()} but the params expects a ${this._expected_context()}`)}_assign_found_param(t){this._is_param_expected_type(t)?this._found_param_with_expected_type=t:this.states.error.set(`param type is ${t.type()} but the params expects a ${this._expected_param_type()}`)}found_node(){return this._found_node}found_param(){return this._found_param}found_node_with_context(t){return this._found_node_with_expected_type}found_node_with_context_and_type(t,e){const n=this.found_node_with_context(t);if(n)if(m.isArray(e)){for(let t of e)if(n.type()==t)return n;this.states.error.set(`expected node type to be ${e.join(\\\\\\\", \\\\\\\")}, but was instead ${n.type()}`)}else{const t=e;if(n.type()==t)return n;this.states.error.set(`expected node type to be ${t}, but was instead ${n.type()}`)}}found_param_with_type(t){if(this._found_param_with_expected_type)return this._found_param_with_expected_type}found_node_with_expected_type(){return this._found_node_with_expected_type}_expected_context(){return this.options.nodeSelectionContext()}_is_node_expected_context(t){var e,n;const i=this._expected_context();if(null==i)return!0;return i==(null===(n=null===(e=t.parent())||void 0===e?void 0:e.childrenController)||void 0===n?void 0:n.context)}_expected_node_types(){return this.options.nodeSelectionTypes()}_expected_param_type(){return this.options.paramSelectionType()}_is_node_expected_type(t){const e=this._expected_node_types();return null==e||(null==e?void 0:e.includes(t.type()))}_is_param_expected_type(t){const e=this._expected_node_types();return null==e||e.includes(t.type())}notifyPathRebuildRequired(t){this.decomposed_path.update_from_name_change(t);const e=this.decomposed_path.to_path();this.set(e)}notifyTargetParamOwnerParamsUpdated(t){this.setDirty()}}var go,vo=n(34),yo=n(70);class xo{constructor(t=0,e=0){this._position=t,this._value=e}toJSON(){return{position:this._position,value:this._value}}position(){return this._position}value(){return this._value}copy(t){this._position=t.position(),this._value=t.value()}clone(){const t=new xo;return t.copy(this),t}isEqual(t){return this._position==t.position()&&this._value==t.value()}isEqualJSON(t){return this._position==t.position&&this._value==t.value}fromJSON(t){this._position=t.position,this._value=t.value}static areEqualJSON(t,e){return t.position==e.position&&t.value==e.value}static fromJSON(t){return new xo(t.position,t.value)}}!function(t){t.LINEAR=\\\\\\\"linear\\\\\\\"}(go||(go={}));class bo{constructor(t=go.LINEAR,e=[]){this._interpolation=t,this._points=e,this._uuid=Object(On.h)()}uuid(){return this._uuid}interpolation(){return this._interpolation}points(){return this._points}static fromJSON(t){const e=[];for(let n of t.points)e.push(xo.fromJSON(n));return new bo(t.interpolation,e)}toJSON(){return{interpolation:this._interpolation,points:this._points.map((t=>t.toJSON()))}}clone(){const t=new bo;return t.copy(this),t}copy(t){this._interpolation=t.interpolation();let e=0;for(let n of t.points()){const t=this._points[e];t?t.copy(n):this._points.push(n.clone()),e+=1}}is_equal(t){if(this._interpolation!=t.interpolation())return!1;const e=t.points();if(this._points.length!=e.length)return!1;let n=0;for(let t of this._points){const i=e[n];if(!t.isEqual(i))return!1;n+=1}return!0}is_equal_json(t){if(this._interpolation!=t.interpolation)return!1;if(this._points.length!=t.points.length)return!1;let e=0;for(let n of this._points){const i=t.points[e];if(!n.isEqualJSON(i))return!1;e+=1}return!0}static are_json_equal(t,e){if(t.interpolation!=e.interpolation)return!1;if(t.points.length!=e.points.length)return!1;let n=0;for(let i of t.points){const t=e.points[n];if(!xo.areEqualJSON(i,t))return!1;n+=1}return!0}from_json(t){this._interpolation=t.interpolation;let e=0;for(let n of t.points){const t=this._points[e];t?t.fromJSON(n):this._points.push(xo.fromJSON(n)),e+=1}}}const wo=1024,To=255;class Ao extends Vr{constructor(){super(...arguments),this._texture_data=new Uint8Array(3072),this._ramp_texture=new vo.a(this._texture_data,wo,1,w.ic)}static type(){return Cr.RAMP}defaultValueSerialized(){return this._default_value instanceof bo?this._default_value.toJSON():this._default_value}_clone_raw_input(t){return t instanceof bo?t.clone():bo.fromJSON(t).toJSON()}rawInputSerialized(){return this._raw_input instanceof bo?this._raw_input.toJSON():bo.fromJSON(this._raw_input).toJSON()}valueSerialized(){return this.value.toJSON()}_copy_value(t){this.set(t.valueSerialized())}static are_raw_input_equal(t,e){return t instanceof bo?e instanceof bo?t.is_equal(e):t.is_equal_json(e):e instanceof bo?e.is_equal_json(t):bo.are_json_equal(t,e)}static are_values_equal(t,e){return t.is_equal(e)}isDefault(){return this._default_value instanceof bo?this.value.is_equal(this._default_value):this.value.is_equal_json(this._default_value)}processRawInput(){this._raw_input instanceof bo?this._value?this._value.copy(this._raw_input):this._value=this._raw_input:this._value?this._value.from_json(this._raw_input):this._value=bo.fromJSON(this._raw_input),this._resetRampInterpolant(),this._updateRampTexture(),this.options.executeCallback(),this.emitController.emit(Nr.VALUE_UPDATED),this.setSuccessorsDirty(this)}hasExpression(){return!1}_resetRampInterpolant(){this._ramp_interpolant=void 0}rampTexture(){return this._ramp_texture}_updateRampTexture(){this._updateRampTextureData(),this.rampTexture().needsUpdate=!0}_updateRampTextureData(){let t=0,e=0,n=0;for(var i=0;i<1024;i++)t=3*i,e=i/wo,n=this.valueAtPosition(e),n<=0?(this._texture_data[t+0]=(Object(On.d)(n,-1,0)+1)*To,this._texture_data[t+1]=0,this._texture_data[t+2]=0):n<=1?(this._texture_data[t+0]=To,this._texture_data[t+1]=Object(On.d)(n,0,1)*To,this._texture_data[t+2]=0):(this._texture_data[t+0]=To,this._texture_data[t+1]=To,this._texture_data[t+2]=(Object(On.d)(n,1,2)-1)*To)}static createInterpolant(t,e){const n=new Float32Array(1);return new yo.a(t,e,1,n)}interpolant(){return this._ramp_interpolant=this._ramp_interpolant||this._createInterpolant()}_createInterpolant(){const t=this.value.points(),e=f.sortBy(t,(t=>t.position())),n=new Float32Array(e.length),i=new Float32Array(e.length);let s=0;for(let t of e)n[s]=t.position(),i[s]=t.value(),s++;return Ao.createInterpolant(n,i)}valueAtPosition(t){return this.interpolant().evaluate(t)[0]}}Ao.DEFAULT_VALUE=new bo(go.LINEAR,[new xo(0,0),new xo(1,1)]),Ao.DEFAULT_VALUE_JSON=Ao.DEFAULT_VALUE.toJSON();class Mo extends Vr{static type(){return Cr.STRING}defaultValueSerialized(){return this._default_value}_clone_raw_input(t){return`${t}`}rawInputSerialized(){return`${this._raw_input}`}valueSerialized(){return`${this.value}`}_copy_value(t){this.set(t.value)}static are_raw_input_equal(t,e){return t==e}static are_values_equal(t,e){return t==e}isDefault(){return this._raw_input==this._default_value}convert(t){return m.isString(t)?t:`${t}`}rawInput(){return this._raw_input}processRawInput(){this.states.error.clear(),this._value_elements(this._raw_input).length>=3?(this._expression_controller=this._expression_controller||new so(this),this._raw_input!=this._expression_controller.expression()&&(this._expression_controller.set_expression(this._raw_input),this.setDirty(),this.emitController.emit(Nr.EXPRESSION_UPDATED))):this._raw_input!=this._value&&(this._value=this._raw_input,this.removeDirtyState(),this.setSuccessorsDirty(this),this.emitController.emit(Nr.VALUE_UPDATED),this.options.executeCallback(),this._expression_controller&&(this._expression_controller.set_expression(void 0,!1),this.emitController.emit(Nr.EXPRESSION_UPDATED)))}async processComputation(){var t;if((null===(t=this.expressionController)||void 0===t?void 0:t.active())&&!this.expressionController.requires_entities()){const t=await this.expressionController.computeExpression();if(this.expressionController.is_errored())this.states.error.set(`expression error: ${this.expressionController.error_message()}`);else{const e=this.convert(t);null!=e?(this._value=e,this.emitController.emit(Nr.VALUE_UPDATED),this.options.executeCallback()):this.states.error.set(`expression returns an invalid type (${t})`),this.removeDirtyState()}}}_value_elements(t){return Wr.string_value_elements(t)}}const Eo=[\\\\\\\"x\\\\\\\",\\\\\\\"y\\\\\\\"];const So=[\\\\\\\"x\\\\\\\",\\\\\\\"y\\\\\\\",\\\\\\\"z\\\\\\\"];const Co=[\\\\\\\"x\\\\\\\",\\\\\\\"y\\\\\\\",\\\\\\\"z\\\\\\\",\\\\\\\"w\\\\\\\"];const No={[Cr.BOOLEAN]:class extends ro{static type(){return Cr.BOOLEAN}defaultValueSerialized(){return m.isString(this._default_value)?this._default_value:this.convert(this._default_value)||!1}rawInputSerialized(){return this._raw_input}valueSerialized(){return this.value}_copy_value(t){this.set(t.value)}static are_raw_input_equal(t,e){return t==e}static are_values_equal(t,e){return t==e}convert(t){if(m.isBoolean(t))return t;if(m.isNumber(t))return t>=1;if(m.isString(t)){if(ss.isBoolean(t))return ss.toBoolean(t);if(ss.isNumber(t)){return parseFloat(t)>=1}}return null}},[Cr.BUTTON]:class extends Vr{static type(){return Cr.BUTTON}defaultValueSerialized(){return this._default_value}rawInputSerialized(){return this._raw_input}valueSerialized(){return this.value}_copy_value(t){}static are_raw_input_equal(t,e){return!0}static are_values_equal(t,e){return!0}async pressButton(){(this.node.isDirty()||this.node.cookController.isCooking())&&await this.node.compute(),this.options.executeCallback()}},[Cr.COLOR]:class extends ao{constructor(){super(...arguments),this._value=new D.a,this._value_pre_conversion=new D.a,this._value_serialized_dirty=!1,this._value_serialized=[0,0,0],this._value_pre_conversion_serialized=[0,0,0],this._copied_value=[0,0,0]}static type(){return Cr.COLOR}componentNames(){return ho}defaultValueSerialized(){return m.isArray(this._default_value)?this._default_value:this._default_value.toArray()}valueSerialized(){return this._update_value_serialized_if_required(),this._value_serialized}valuePreConversionSerialized(){return this._update_value_serialized_if_required(),this._value_pre_conversion_serialized}_copy_value(t){t.value.toArray(this._copied_value),this.set(this._copied_value)}_clone_raw_input(t){if(t instanceof D.a)return t.clone();{const e=[t[0],t[1],t[2]];return null==e[0]&&(e[0]=e[0]||0),null==e[1]&&(e[1]=e[1]||e[0]),null==e[2]&&(e[2]=e[2]||e[1]),e}}static are_raw_input_equal(t,e){return t instanceof D.a?e instanceof D.a?t.equals(e):t.r==e[0]&&t.g==e[1]&&t.b==e[2]:e instanceof D.a?t[0]==e.r&&t[1]==e.g&&t[2]==e.b:t[0]==e[0]&&t[1]==e[1]&&t[2]==e[2]}static are_values_equal(t,e){return t.equals(e)}initComponents(){super.initComponents(),this.r=this.components[0],this.g=this.components[1],this.b=this.components[2],this._value_serialized_dirty=!0}_update_value_serialized_if_required(){this._value_serialized_dirty&&(this._value_serialized[0]=this._value.r,this._value_serialized[1]=this._value.g,this._value_serialized[2]=this._value.b,this._value_pre_conversion_serialized[0]=this._value_pre_conversion.r,this._value_pre_conversion_serialized[1]=this._value_pre_conversion.g,this._value_pre_conversion_serialized[2]=this._value_pre_conversion.b)}valuePreConversion(){return this._value_pre_conversion}set_value_from_components(){this._value_pre_conversion.r=this.r.value,this._value_pre_conversion.g=this.g.value,this._value_pre_conversion.b=this.b.value,this._value.copy(this._value_pre_conversion);const t=this.options.colorConversion();if(null!=t&&t!=lo.NONE){switch(t){case lo.GAMMA_TO_LINEAR:return void this._value.convertGammaToLinear();case lo.LINEAR_TO_GAMMA:return void this._value.convertLinearToGamma();case lo.SRGB_TO_LINEAR:return void this._value.convertSRGBToLinear();case lo.LINEAR_TO_SRGB:return void this._value.convertLinearToSRGB()}os.unreachable(t)}this._value_serialized_dirty=!0}},[Cr.FLOAT]:oo,[Cr.FOLDER]:class extends Vr{static type(){return Cr.FOLDER}defaultValueSerialized(){return this._default_value}rawInputSerialized(){return this._raw_input}valueSerialized(){return this.value}_copy_value(t){}static are_raw_input_equal(t,e){return!0}static are_values_equal(t,e){return!0}},[Cr.INTEGER]:uo,[Cr.OPERATOR_PATH]:fo,[Cr.PARAM_PATH]:class extends _o{static type(){return Cr.PARAM_PATH}initialize_param(){this._value=new xi}defaultValueSerialized(){return this._default_value}rawInputSerialized(){return`${this._raw_input}`}valueSerialized(){return`${this.value}`}_copy_value(t){this.set(t.valueSerialized())}static are_raw_input_equal(t,e){return t==e}static are_values_equal(t,e){return t==e}isDefault(){return this._raw_input==this._default_value}setParam(t){this.set(t.path())}processRawInput(){this._value.path()!=this._raw_input&&(this._value.set_path(this._raw_input),this.find_target(),this.setDirty(),this.emitController.emit(Nr.VALUE_UPDATED))}async processComputation(){this.find_target()}find_target(){if(!this.node)return;const t=this._raw_input;let e=null;const n=null!=t&&\\\\\\\"\\\\\\\"!==t;this.scene().referencesController.resetReferenceFromParam(this),this.decomposed_path.reset(),n&&(e=bi.findParam(this.node,t,this.decomposed_path));const i=this._value.param(),s=e;if(this._handleReferences(e,t),(null==i?void 0:i.graphNodeId())!==(null==s?void 0:s.graphNodeId())){const t=this.options.dependentOnFoundNode(),n=this._value.param();n&&t&&this.removeGraphInput(n),e?this._assign_found_node(e):this._value.set_param(null),this.options.executeCallback()}this.removeDirtyState()}_assign_found_node(t){const e=this.options.dependentOnFoundNode();this._value.set_param(t),e&&this.addGraphInput(t)}notifyPathRebuildRequired(t){this.decomposed_path.update_from_name_change(t);const e=this.decomposed_path.to_path();this.set(e)}notifyTargetParamOwnerParamsUpdated(t){this.setDirty()}},[Cr.NODE_PATH]:class extends _o{static type(){return Cr.NODE_PATH}initialize_param(){this._value=new yi}defaultValueSerialized(){return this._default_value}rawInputSerialized(){return`${this._raw_input}`}valueSerialized(){return`${this.value}`}_copy_value(t){this.set(t.valueSerialized())}static are_raw_input_equal(t,e){return t==e}static are_values_equal(t,e){return t==e}isDefault(){return this._raw_input==this._default_value}setNode(t){this.set(t.path())}processRawInput(){this._value.path()!=this._raw_input&&(this._value.set_path(this._raw_input),this._findTarget(),this.setDirty(),this.emitController.emit(Nr.VALUE_UPDATED))}async processComputation(){this._findTarget()}_findTarget(){if(!this.node)return;const t=this._raw_input;let e=null;const n=null!=t&&\\\\\\\"\\\\\\\"!==t;this.scene().referencesController.resetReferenceFromParam(this),this.decomposed_path.reset(),n&&(e=bi.findNode(this.node,t,this.decomposed_path));const i=this._value.node(),s=e;if(this._handleReferences(e,t),(null==i?void 0:i.graphNodeId())!==(null==s?void 0:s.graphNodeId())){const t=this.options.dependentOnFoundNode(),n=this._value.node();n&&t&&this.removeGraphInput(n),e?this._assign_found_node(e):this._value.set_node(null),this.options.executeCallback()}n&&!e&&this.scene().loadingController.loaded()&&n&&this.states.error.set(`no node found at path '${t}'`),this.removeDirtyState()}_assign_found_node(t){const e=this.options.dependentOnFoundNode();this._isNodeExpectedContext(t)?this._is_node_expected_type(t)?(this.states.error.clear(),this._value.set_node(t),e&&this.addGraphInput(t)):this.states.error.set(`node type is ${t.type()} but the params expects one of ${(this._expected_node_types()||[]).join(\\\\\\\", \\\\\\\")}`):this.states.error.set(`node context is ${t.context()} but the params expects a ${this._expectedContext()}`)}_expectedContext(){return this.options.nodeSelectionContext()}_isNodeExpectedContext(t){var e,n;const i=this._expectedContext();if(null==i)return!0;return i==(null===(n=null===(e=t.parent())||void 0===e?void 0:e.childrenController)||void 0===n?void 0:n.context)}_expected_node_types(){return this.options.nodeSelectionTypes()}_is_node_expected_type(t){const e=this._expected_node_types();return null==e||(null==e?void 0:e.includes(t.type()))}notifyPathRebuildRequired(t){this.decomposed_path.update_from_name_change(t);const e=this.decomposed_path.to_path();this.set(e)}notifyTargetParamOwnerParamsUpdated(t){this.setDirty()}},[Cr.RAMP]:Ao,[Cr.STRING]:Mo,[Cr.VECTOR2]:class extends ao{constructor(){super(...arguments),this._value=new d.a,this._copied_value=[0,0]}static type(){return Cr.VECTOR2}componentNames(){return Eo}defaultValueSerialized(){return m.isArray(this._default_value)?this._default_value:this._default_value.toArray()}valueSerialized(){return this.value.toArray()}_copy_value(t){t.value.toArray(this._copied_value),this.set(this._copied_value)}_clone_raw_input(t){if(t instanceof d.a)return t.clone();{const e=[t[0],t[1]];return null==e[0]&&(e[0]=e[0]||0),null==e[1]&&(e[1]=e[1]||e[0]),e}}static are_raw_input_equal(t,e){return t instanceof d.a?e instanceof d.a?t.equals(e):t.x==e[0]&&t.y==e[1]:e instanceof d.a?t[0]==e.x&&t[1]==e.y:t[0]==e[0]&&t[1]==e[1]}static are_values_equal(t,e){return t.equals(e)}initComponents(){super.initComponents(),this.x=this.components[0],this.y=this.components[1]}set_value_from_components(){this._value.x=this.x.value,this._value.y=this.y.value}},[Cr.VECTOR3]:class extends ao{constructor(){super(...arguments),this._value=new p.a,this._copied_value=[0,0,0]}static type(){return Cr.VECTOR3}componentNames(){return So}defaultValueSerialized(){return m.isArray(this._default_value)?this._default_value:this._default_value.toArray()}valueSerialized(){return this.value.toArray()}_copy_value(t){t.value.toArray(this._copied_value),this.set(this._copied_value)}_clone_raw_input(t){if(t instanceof p.a)return t.clone();{const e=[t[0],t[1],t[2]];return null==e[0]&&(e[0]=e[0]||0),null==e[1]&&(e[1]=e[1]||e[0]),null==e[2]&&(e[2]=e[2]||e[1]),e}}static are_raw_input_equal(t,e){return t instanceof p.a?e instanceof p.a?t.equals(e):t.x==e[0]&&t.y==e[1]&&t.z==e[2]:e instanceof p.a?t[0]==e.x&&t[1]==e.y&&t[2]==e.z:t[0]==e[0]&&t[1]==e[1]&&t[2]==e[2]}static are_values_equal(t,e){return t.equals(e)}initComponents(){super.initComponents(),this.x=this.components[0],this.y=this.components[1],this.z=this.components[2]}set_value_from_components(){this._value.x=this.x.value,this._value.y=this.y.value,this._value.z=this.z.value}},[Cr.VECTOR4]:class extends ao{constructor(){super(...arguments),this._value=new _.a,this._copied_value=[0,0,0,0]}static type(){return Cr.VECTOR4}componentNames(){return Co}defaultValueSerialized(){return m.isArray(this._default_value)?this._default_value:this._default_value.toArray()}valueSerialized(){return this.value.toArray()}_copy_value(t){t.value.toArray(this._copied_value),this.set(this._copied_value)}_clone_raw_input(t){if(t instanceof _.a)return t.clone();{const e=[t[0],t[1],t[2],t[3]];return null==e[0]&&(e[0]=e[0]||0),null==e[1]&&(e[1]=e[1]||e[0]),null==e[2]&&(e[2]=e[2]||e[1]),null==e[3]&&(e[3]=e[3]||e[2]),e}}static are_raw_input_equal(t,e){return t instanceof _.a?e instanceof _.a?t.equals(e):t.x==e[0]&&t.y==e[1]&&t.z==e[2]&&t.w==e[3]:e instanceof _.a?t[0]==e.x&&t[1]==e.y&&t[2]==e.z&&t[3]==e.w:t[0]==e[0]&&t[1]==e[1]&&t[2]==e[2]&&t[3]==e[3]}static are_values_equal(t,e){return t.equals(e)}initComponents(){super.initComponents(),this.x=this.components[0],this.y=this.components[1],this.z=this.components[2],this.w=this.components[3]}set_value_from_components(){this._value.x=this.x.value,this._value.y=this.y.value,this._value.z=this.z.value,this._value.w=this.w.value}}};class Lo{dispose(){this._callback=void 0}params(){return this._params}callback(){return this._callback}init(t,e){if(this._params=t,e)this._callback=e;else{const t=this._params[0];switch(t.type()){case Cr.STRING:return this._handle_string_param(t);case Cr.OPERATOR_PATH:return this._handle_operator_path_param(t);case Cr.NODE_PATH:return this._handle_node_path_param(t);case Cr.PARAM_PATH:return this._handle_param_path_param(t);case Cr.FLOAT:case Cr.INTEGER:return this._handle_number_param(t)}}}_handle_string_param(t){this._callback=()=>t.value}_handle_operator_path_param(t){this._callback=()=>t.value}_handle_node_path_param(t){this._callback=()=>t.value.path()}_handle_param_path_param(t){this._callback=()=>t.value.path()}_handle_number_param(t){this._callback=()=>`${t.value}`}}class Oo{constructor(t){this.node=t,this._param_create_mode=!1,this._params_created=!1,this._params_by_name={},this._params_list=[],this._param_names=[],this._non_spare_params=[],this._spare_params=[],this._non_spare_param_names=[],this._spare_param_names=[],this._params_added_since_last_params_eval=!1}get label(){return this._label_controller=this._label_controller||new Lo}hasLabelController(){return null!=this._label_controller}dispose(){var t;this._params_node&&this._params_node.dispose();for(let t of this.all)t.dispose();this._post_create_params_hook_names=void 0,this._post_create_params_hooks=void 0,this._on_scene_load_hooks=void 0,this._on_scene_load_hook_names=void 0,null===(t=this._label_controller)||void 0===t||t.dispose()}initDependencyNode(){this._params_node||(this._params_node=new Mi(this.node.scene(),\\\\\\\"params\\\\\\\"),this.node.addGraphInput(this._params_node,!1))}init(){this.initDependencyNode(),this._param_create_mode=!0,this._initFromParamsConfig(),this.node.createParams(),this._postCreateParams()}_postCreateParams(){this._updateCaches(),this._initParamAccessors(),this._param_create_mode=!1,this._params_created=!0,this._runPostCreateParamsHooks()}postCreateSpareParams(){this._updateCaches(),this._initParamAccessors(),this.node.scene().referencesController.notifyParamsUpdated(this.node),this.node.emit(Ei.PARAMS_UPDATED)}updateParams(t){let e=!1,n=!1;if(t.namesToDelete)for(let e of t.namesToDelete)this.has(e)&&(this._deleteParam(e),n=!0);if(t.toAdd)for(let n of t.toAdd){const t=this.addParam(n.type,n.name,n.init_value,n.options);t&&(null!=n.raw_input&&t.set(n.raw_input),e=!0)}(n||e)&&this.postCreateSpareParams()}_initFromParamsConfig(){const t=this.node.paramsConfig;let e=!1;if(t)for(let n of Object.keys(t)){const i=t[n];let s;this.node.params_init_value_overrides&&(s=this.node.params_init_value_overrides[n],e=!0),this.addParam(i.type,n,i.init_value,i.options,s)}e&&this.node.setDirty(),this.node.params_init_value_overrides=void 0}_initParamAccessors(){let t=Object.getOwnPropertyNames(this.node.pv);this._removeUnneededAccessors(t),t=Object.getOwnPropertyNames(this.node.pv);for(let e of this.all){const n=e.options.isSpare();(!t.includes(e.name())||n)&&(Object.defineProperty(this.node.pv,e.name(),{get:()=>e.value,configurable:n}),Object.defineProperty(this.node.p,e.name(),{get:()=>e,configurable:n}))}}_removeUnneededAccessors(t){const e=this._param_names,n=[];for(let i of t)e.includes(i)||n.push(i);for(let t of n)Object.defineProperty(this.node.pv,t,{get:()=>{},configurable:!0}),Object.defineProperty(this.node.p,t,{get:()=>{},configurable:!0})}get params_node(){return this._params_node}get all(){return this._params_list}get non_spare(){return this._non_spare_params}get spare(){return this._spare_params}get names(){return this._param_names}get non_spare_names(){return this._non_spare_param_names}get spare_names(){return this._spare_param_names}set_with_type(t,e,n){const i=this.param_with_type(t,n);i?i.set(e):li.warn(`param ${t} not found with type ${n}`)}set_float(t,e){this.set_with_type(t,e,Cr.FLOAT)}set_vector3(t,e){this.set_with_type(t,e,Cr.VECTOR3)}has_param(t){return null!=this._params_by_name[t]}has(t){return this.has_param(t)}get(t){return this.param(t)}param_with_type(t,e){const n=this.param(t);if(n&&n.type()==e)return n}get_float(t){return this.param_with_type(t,Cr.FLOAT)}get_operator_path(t){return this.param_with_type(t,Cr.OPERATOR_PATH)}value(t){var e;return null===(e=this.param(t))||void 0===e?void 0:e.value}value_with_type(t,e){var n;return null===(n=this.param_with_type(t,e))||void 0===n?void 0:n.value}boolean(t){return this.value_with_type(t,Cr.BOOLEAN)}float(t){return this.value_with_type(t,Cr.FLOAT)}integer(t){return this.value_with_type(t,Cr.INTEGER)}string(t){return this.value_with_type(t,Cr.STRING)}vector2(t){return this.value_with_type(t,Cr.VECTOR2)}vector3(t){return this.value_with_type(t,Cr.VECTOR3)}color(t){return this.value_with_type(t,Cr.COLOR)}param(t){const e=this._params_by_name[t];return null!=e?e:(li.warn(`tried to access param '${t}' in node ${this.node.path()}, but existing params are: ${this.names} on node ${this.node.path()}`),null)}_deleteParam(t){const e=this._params_by_name[t];if(!e)throw new Error(`param '${t}' does not exist on node ${this.node.path()}`);if(this._params_node&&this._params_node.removeGraphInput(this._params_by_name[t]),e._setupNodeDependencies(null),delete this._params_by_name[t],e.isMultiple()&&e.components)for(let t of e.components){const e=t.name();delete this._params_by_name[e]}}addParam(t,e,n,i={},s){const r=i.spare||!1;!1!==this._param_create_mode||r||li.warn(`node ${this.node.path()} (${this.node.type()}) param '${e}' cannot be created outside of create_params`),null==this.node.scene()&&li.warn(`node ${this.node.path()} (${this.node.type()}) has no scene assigned`);const o=No[t];if(null!=o){const a=this._params_by_name[e];a&&(r?a.type()!=t&&this._deleteParam(a.name()):li.warn(`a param named ${e} already exists`,this.node));const l=new o(this.node.scene(),this.node);if(l.options.set(i),l.setName(e),l.setInitValue(n),l.initComponents(),null==s)l.set(n);else if(l.options.isExpressionForEntities()&&l.set(n),null!=s.raw_input)l.set(s.raw_input);else if(null!=s.simple_data)l.set(s.simple_data);else if(null!=s.complex_data){const t=s.complex_data.raw_input;t?l.set(t):l.set(n);const e=s.complex_data.overriden_options;if(null!=e){const t=Object.keys(e);for(let n of t)l.options.setOption(n,e[n])}}if(l._setupNodeDependencies(this.node),this._params_by_name[l.name()]=l,l.isMultiple()&&l.components)for(let t of l.components)this._params_by_name[t.name()]=t;return this._params_added_since_last_params_eval=!0,l}}_updateCaches(){this._params_list=Object.values(this._params_by_name),this._param_names=Object.keys(this._params_by_name),this._non_spare_params=Object.values(this._params_by_name).filter((t=>!t.options.isSpare())),this._spare_params=Object.values(this._params_by_name).filter((t=>t.options.isSpare())),this._non_spare_param_names=Object.values(this._params_by_name).filter((t=>!t.options.isSpare())).map((t=>t.name())),this._spare_param_names=Object.values(this._params_by_name).filter((t=>t.options.isSpare())).map((t=>t.name()))}async _evalParam(t){t.isDirty()&&(await t.compute(),t.states.error.active()&&this.node.states.error.set(`param '${t.name()}' error: ${t.states.error.message()}`))}async evalParams(t){const e=[];for(let n of t)n.isDirty()&&e.push(this._evalParam(n));await Promise.all(e),this.node.states.error.active()&&this.node._setContainer(null)}paramsEvalRequired(){return null!=this._params_node&&(this._params_node.isDirty()||this._params_added_since_last_params_eval)}async evalAll(){var t;this.paramsEvalRequired()&&(await this.evalParams(this._params_list),null===(t=this._params_node)||void 0===t||t.removeDirtyState(),this._params_added_since_last_params_eval=!1)}onParamsCreated(t,e){if(this._params_created)e();else{if(this._post_create_params_hook_names&&this._post_create_params_hook_names.includes(t))return void li.error(`hook name ${t} already exists`);this._post_create_params_hook_names=this._post_create_params_hook_names||[],this._post_create_params_hook_names.push(t),this._post_create_params_hooks=this._post_create_params_hooks||[],this._post_create_params_hooks.push(e)}}addOnSceneLoadHook(t,e){this._on_scene_load_hook_names=this._on_scene_load_hook_names||[],this._on_scene_load_hooks=this._on_scene_load_hooks||[],this._on_scene_load_hook_names.includes(t)?li.warn(`hook with name ${t} already exists`,this.node):(this._on_scene_load_hook_names.push(t),this._on_scene_load_hooks.push(e))}_runPostCreateParamsHooks(){if(this._post_create_params_hooks)for(let t of this._post_create_params_hooks)t()}runOnSceneLoadHooks(){if(this._on_scene_load_hooks)for(let t of this._on_scene_load_hooks)t()}}class Po{constructor(){}}class Ro{constructor(t,e,n=0,i=0){if(this._node_src=t,this._node_dest=e,this._output_index=n,this._input_index=i,null==this._output_index)throw\\\\\\\"bad output index\\\\\\\";if(null==this._input_index)throw\\\\\\\"bad input index\\\\\\\";this._id=Ro._next_id++,this._node_src.io.connections&&this._node_dest.io.connections&&(this._node_src.io.connections.addOutputConnection(this),this._node_dest.io.connections.addInputConnection(this))}get id(){return this._id}get node_src(){return this._node_src}get node_dest(){return this._node_dest}get output_index(){return this._output_index}get input_index(){return this._input_index}src_connection_point(){const t=this._node_src,e=this._output_index;return t.io.outputs.namedOutputConnectionPoints()[e]}dest_connection_point(){const t=this._node_dest,e=this._input_index;return t.io.inputs.namedInputConnectionPoints()[e]}disconnect(t={}){this._node_src.io.connections&&this._node_dest.io.connections&&(this._node_src.io.connections.removeOutputConnection(this),this._node_dest.io.connections.removeInputConnection(this)),!0===t.setInput&&this._node_dest.io.inputs.setInput(this._input_index,null)}}Ro._next_id=0;class Io{constructor(t){this.inputs_controller=t,this._clone_required_states=[],this._overridden=!1,this.node=t.node}initInputsClonedState(t){m.isArray(t)?this._cloned_states=t:this._cloned_state=t,this._update_clone_required_state()}overrideClonedStateAllowed(){if(this._cloned_states)for(let t of this._cloned_states)if(t==Qi.FROM_NODE)return!0;return!!this._cloned_state&&this._cloned_state==Qi.FROM_NODE}cloneRequiredState(t){return this._clone_required_states[t]}cloneRequiredStates(){return this._clone_required_states}_get_clone_required_state(t){const e=this._cloned_states;if(e){const n=e[t];if(null!=n)return this.clone_required_from_state(n)}return!this._cloned_state||this.clone_required_from_state(this._cloned_state)}clone_required_from_state(t){switch(t){case Qi.ALWAYS:return!0;case Qi.NEVER:return!1;case Qi.FROM_NODE:return!this._overridden}return os.unreachable(t)}overrideClonedState(t){this._overridden=t,this._update_clone_required_state(),this.node.emit(Ei.OVERRIDE_CLONABLE_STATE_UPDATE),this.node.setDirty()}overriden(){return this._overridden}_update_clone_required_state(){if(this._cloned_states){const t=[];for(let e=0;e<this._cloned_states.length;e++)t[e]=this._get_clone_required_state(e);this._clone_required_states=t}else if(this._cloned_state){const t=this.inputs_controller.maxInputsCount(),e=[];for(let n=0;n<t;n++)e[n]=this._get_clone_required_state(n);this._clone_required_states=e}else;}}class Fo{constructor(t){this.node=t,this._graph_node_inputs=[],this._inputs=[],this._has_named_inputs=!1,this._minInputsCount=0,this._maxInputsCount=0,this._maxInputsCountOnInput=0,this._depends_on_inputs=!0}dispose(){this._graph_node&&this._graph_node.dispose();for(let t of this._graph_node_inputs)t&&t.dispose();this._on_update_hooks=void 0,this._on_update_hook_names=void 0}set_depends_on_inputs(t){this._depends_on_inputs=t}setMinCount(t){this._minInputsCount=t}minCount(){return this._minInputsCount}setMaxCount(t){0==this._maxInputsCount&&(this._maxInputsCountOnInput=t),this._maxInputsCount=t,this._initGraphNodeInputs()}namedInputConnectionPointsByName(t){if(this._named_input_connection_points)for(let e of this._named_input_connection_points)if(e&&e.name()==t)return e}setNamedInputConnectionPoints(t){this._has_named_inputs=!0;const e=this.node.io.connections.inputConnections();if(e)for(let n of e)n&&n.input_index>=t.length&&n.disconnect({setInput:!0});this._named_input_connection_points=t,this.setMinCount(0),this.setMaxCount(t.length),this._initGraphNodeInputs(),this.node.emit(Ei.NAMED_INPUTS_UPDATED)}hasNamedInputs(){return this._has_named_inputs}namedInputConnectionPoints(){return this._named_input_connection_points||[]}_initGraphNodeInputs(){for(let t=0;t<this._maxInputsCount;t++)this._graph_node_inputs[t]=this._graph_node_inputs[t]||this._createGraphNodeInput(t)}_createGraphNodeInput(t){const e=new Mi(this.node.scene(),`input_${t}`);return this._graph_node||(this._graph_node=new Mi(this.node.scene(),\\\\\\\"inputs\\\\\\\"),this.node.addGraphInput(this._graph_node,!1)),this._graph_node.addGraphInput(e,!1),e}maxInputsCount(){return this._maxInputsCount||0}maxInputsCountOverriden(){return this._maxInputsCount!=this._maxInputsCountOnInput}inputGraphNode(t){return this._graph_node_inputs[t]}setCount(t,e){null==e&&(e=t),this.setMinCount(t),this.setMaxCount(e),this._initConnectionControllerInputs()}_initConnectionControllerInputs(){this.node.io.connections.initInputs()}is_any_input_dirty(){var t;return(null===(t=this._graph_node)||void 0===t?void 0:t.isDirty())||!1}async containers_without_evaluation(){const t=[];for(let e=0;e<this._inputs.length;e++){const n=this._inputs[e];let i;n&&(i=await n.compute()),t.push(i)}return t}existing_input_indices(){const t=[];if(this._maxInputsCount>0)for(let e=0;e<this._inputs.length;e++)this._inputs[e]&&t.push(e);return t}async eval_required_inputs(){var t;let e=[];if(this._maxInputsCount>0){const n=this.existing_input_indices();if(n.length<this._minInputsCount)this.node.states.error.set(\\\\\\\"inputs are missing\\\\\\\");else if(n.length>0){const n=[];let i;for(let t=0;t<this._inputs.length;t++)i=this._inputs[t],i&&n.push(this.eval_required_input(t));e=await Promise.all(n),null===(t=this._graph_node)||void 0===t||t.removeDirtyState()}}return e}async eval_required_input(t){let e;const n=this.input(t);if(n&&(e=await n.compute(),this._graph_node_inputs[t].removeDirtyState()),e&&e.coreContent());else{const e=this.input(t);if(e){const n=e.states.error.message();n&&this.node.states.error.set(`input ${t} is invalid (error: ${n})`)}}return e}get_named_input_index(t){var e;if(this._named_input_connection_points)for(let n=0;n<this._named_input_connection_points.length;n++)if((null===(e=this._named_input_connection_points[n])||void 0===e?void 0:e.name())==t)return n;return-1}get_input_index(t){if(m.isString(t)){if(this.hasNamedInputs())return this.get_named_input_index(t);throw new Error(`node ${this.node.path()} has no named inputs`)}return t}setInput(t,e,n=0){const i=this.get_input_index(t)||0;if(i<0){const e=`invalid input (${t}) for node ${this.node.path()}`;throw console.warn(e),new Error(e)}let s=0;if(e&&e.io.outputs.hasNamedOutputs()&&(s=e.io.outputs.getOutputIndex(n),null==s||s<0)){const t=e.io.outputs.namedOutputConnectionPoints().map((t=>t.name()));return void console.warn(`node ${e.path()} does not have an output named ${n}. inputs are: ${t.join(\\\\\\\", \\\\\\\")}`)}const r=this._graph_node_inputs[i];if(null==r){const t=`graph_input_node not found at index ${i}`;throw console.warn(t),new Error(t)}if(e&&this.node.parent()!=e.parent())return;const o=this._inputs[i];let a,l=null;this.node.io.connections&&(a=this.node.io.connections.inputConnection(i)),a&&(l=a.output_index),e===o&&s==l||(null!=o&&this._depends_on_inputs&&r.removeGraphInput(o),null!=e?r.addGraphInput(e)?(this._depends_on_inputs||r.removeGraphInput(e),a&&a.disconnect({setInput:!1}),this._inputs[i]=e,new Ro(e,this.node,s,i)):console.warn(`cannot connect ${e.path()} to ${this.node.path()}`):(this._inputs[i]=null,a&&a.disconnect({setInput:!1})),this._run_on_set_input_hooks(),r.setSuccessorsDirty(),this.node.emit(Ei.INPUTS_UPDATED))}remove_input(t){const e=this.inputs();let n;for(let i=0;i<e.length;i++)n=e[i],null!=n&&null!=t&&n.graphNodeId()===t.graphNodeId()&&this.setInput(i,null)}input(t){return this._inputs[t]}named_input(t){if(this.hasNamedInputs()){const e=this.get_input_index(t);return this._inputs[e]}return null}named_input_connection_point(t){if(this.hasNamedInputs()&&this._named_input_connection_points){const e=this.get_input_index(t);return this._named_input_connection_points[e]}}has_named_input(t){return this.get_named_input_index(t)>=0}has_input(t){return null!=this._inputs[t]}inputs(){return this._inputs}initInputsClonedState(t){this._cloned_states_controller||(this._cloned_states_controller=new Io(this),this._cloned_states_controller.initInputsClonedState(t))}overrideClonedStateAllowed(){var t;return(null===(t=this._cloned_states_controller)||void 0===t?void 0:t.overrideClonedStateAllowed())||!1}overrideClonedState(t){var e;null===(e=this._cloned_states_controller)||void 0===e||e.overrideClonedState(t)}clonedStateOverriden(){var t;return(null===(t=this._cloned_states_controller)||void 0===t?void 0:t.overriden())||!1}cloneRequired(t){var e;const n=null===(e=this._cloned_states_controller)||void 0===e?void 0:e.cloneRequiredState(t);return null==n||n}cloneRequiredStates(){var t;const e=null===(t=this._cloned_states_controller)||void 0===t?void 0:t.cloneRequiredStates();return null==e||e}add_on_set_input_hook(t,e){this._on_update_hooks=this._on_update_hooks||[],this._on_update_hook_names=this._on_update_hook_names||[],this._on_update_hook_names.includes(t)?console.warn(`hook with name ${t} already exists`,this.node):(this._on_update_hooks.push(e),this._on_update_hook_names.push(t))}_run_on_set_input_hooks(){if(this._on_update_hooks)for(let t of this._on_update_hooks)t()}}class Do{constructor(t){this.node=t,this._has_outputs=!1,this._has_named_outputs=!1}setHasOneOutput(){this._has_outputs=!0}setHasNoOutput(){this._has_outputs=!1}hasOutputs(){return this._has_outputs}hasNamedOutputs(){return this._has_named_outputs}hasNamedOutput(t){return this.getNamedOutputIndex(t)>=0}namedOutputConnectionPoints(){return this._named_output_connection_points||[]}namedOutputConnection(t){if(this._named_output_connection_points)return this._named_output_connection_points[t]}getNamedOutputIndex(t){var e;if(this._named_output_connection_points)for(let n=0;n<this._named_output_connection_points.length;n++)if((null===(e=this._named_output_connection_points[n])||void 0===e?void 0:e.name())==t)return n;return-1}getOutputIndex(t){return null!=t?m.isString(t)?this.hasNamedOutputs()?this.getNamedOutputIndex(t):(console.warn(`node ${this.node.path()} has no named outputs`),-1):t:-1}namedOutputConnectionPointsByName(t){if(this._named_output_connection_points)for(let e of this._named_output_connection_points)if((null==e?void 0:e.name())==t)return e}setNamedOutputConnectionPoints(t,e=!0){this._has_named_outputs=!0;const n=this.node.io.connections.outputConnections();if(n)for(let e of n)e&&e.output_index>=t.length&&e.disconnect({setInput:!0});this._named_output_connection_points=t,e&&this.node.scene()&&this.node.setDirty(this.node),this.node.emit(Ei.NAMED_OUTPUTS_UPDATED)}used_output_names(){var t;const e=this.node.io.connections;if(e){let n=e.outputConnections().map((t=>t?t.output_index:null));n=f.uniq(n);const i=[];n.forEach((t=>{m.isNumber(t)&&i.push(t)}));const s=[];for(let e of i){const n=null===(t=this.namedOutputConnectionPoints()[e])||void 0===t?void 0:t.name();n&&s.push(n)}return s}return[]}}class Bo{constructor(t){this._node=t,this._output_connections=new Map}initInputs(){const t=this._node.io.inputs.maxInputsCount();for(this._input_connections=this._input_connections||new Array(t);this._input_connections.length<t;)this._input_connections.push(void 0)}addInputConnection(t){this._input_connections?this._input_connections[t.input_index]=t:console.warn(\\\\\\\"input connections array not initialized\\\\\\\")}removeInputConnection(t){if(this._input_connections)if(t.input_index<this._input_connections.length){this._input_connections[t.input_index]=void 0;let e=!0;for(let n=t.input_index;n<this._input_connections.length;n++)this._input_connections[n]&&(e=!1);e&&(this._input_connections=this._input_connections.slice(0,t.input_index))}else console.warn(`attempt to remove an input connection at index ${t.input_index}`);else console.warn(\\\\\\\"input connections array not initialized\\\\\\\")}inputConnection(t){if(this._input_connections)return this._input_connections[t]}firstInputConnection(){return this._input_connections?f.compact(this._input_connections)[0]:null}inputConnections(){return this._input_connections}existingInputConnections(){const t=this._input_connections;if(t)for(;t.length>1&&void 0===t[t.length-1];)t.pop();return t}addOutputConnection(t){const e=t.output_index,n=t.id;let i=this._output_connections.get(e);i||(i=new Map,this._output_connections.set(e,i)),i.set(n,t)}removeOutputConnection(t){const e=t.output_index,n=t.id;let i=this._output_connections.get(e);i&&i.delete(n)}outputConnections(){let t=[];return this._output_connections.forEach(((e,n)=>{e.forEach(((e,n)=>{e&&t.push(e)}))})),t}}class zo{constructor(t){this._node=t}set_in(t){this._in=t}set_out(t){this._out=t}clear(){this._in=void 0,this._out=void 0}in(){return this._in}out(){return this._out}}class ko{constructor(t,e,n){this._name=t,this._type=e,this._init_value=n}get init_value(){return this._init_value}name(){return this._name}type(){return this._type}are_types_matched(t,e){return!0}toJSON(){return this._json=this._json||this._create_json()}_create_json(){return{name:this._name,type:this._type}}}var Uo;!function(t){t.BOOL=\\\\\\\"bool\\\\\\\",t.INT=\\\\\\\"int\\\\\\\",t.FLOAT=\\\\\\\"float\\\\\\\",t.VEC2=\\\\\\\"vec2\\\\\\\",t.VEC3=\\\\\\\"vec3\\\\\\\",t.VEC4=\\\\\\\"vec4\\\\\\\",t.SAMPLER_2D=\\\\\\\"sampler2D\\\\\\\",t.SSS_MODEL=\\\\\\\"SSSModel\\\\\\\"}(Uo||(Uo={}));const Go=[Uo.BOOL,Uo.INT,Uo.FLOAT,Uo.VEC2,Uo.VEC3,Uo.VEC4],Vo={[Uo.BOOL]:Cr.BOOLEAN,[Uo.INT]:Cr.INTEGER,[Uo.FLOAT]:Cr.FLOAT,[Uo.VEC2]:Cr.VECTOR2,[Uo.VEC3]:Cr.VECTOR3,[Uo.VEC4]:Cr.VECTOR4,[Uo.SAMPLER_2D]:Cr.RAMP,[Uo.SSS_MODEL]:Cr.STRING},Ho={[Cr.BOOLEAN]:Uo.BOOL,[Cr.COLOR]:Uo.VEC3,[Cr.INTEGER]:Uo.INT,[Cr.FLOAT]:Uo.FLOAT,[Cr.FOLDER]:void 0,[Cr.VECTOR2]:Uo.VEC2,[Cr.VECTOR3]:Uo.VEC3,[Cr.VECTOR4]:Uo.VEC4,[Cr.BUTTON]:void 0,[Cr.OPERATOR_PATH]:void 0,[Cr.PARAM_PATH]:void 0,[Cr.NODE_PATH]:void 0,[Cr.RAMP]:void 0,[Cr.STRING]:void 0},jo={[Uo.BOOL]:!1,[Uo.INT]:0,[Uo.FLOAT]:0,[Uo.VEC2]:[0,0],[Uo.VEC3]:[0,0,0],[Uo.VEC4]:[0,0,0,0],[Uo.SAMPLER_2D]:Ao.DEFAULT_VALUE_JSON,[Uo.SSS_MODEL]:\\\\\\\"SSSModel()\\\\\\\"},Wo={[Uo.BOOL]:1,[Uo.INT]:1,[Uo.FLOAT]:1,[Uo.VEC2]:2,[Uo.VEC3]:3,[Uo.VEC4]:4,[Uo.SAMPLER_2D]:1,[Uo.SSS_MODEL]:1};class qo extends ko{constructor(t,e,n){super(t,e),this._name=t,this._type=e,this._init_value=n,this._init_value=this._init_value||jo[this._type]}type(){return this._type}are_types_matched(t,e){return t==e}get param_type(){return Vo[this._type]}get init_value(){return this._init_value}toJSON(){return this._json=this._json||this._create_json()}_create_json(){return{name:this._name,type:this._type}}}var Xo;!function(t){t.BOOL=\\\\\\\"bool\\\\\\\",t.INT=\\\\\\\"int\\\\\\\",t.FLOAT=\\\\\\\"float\\\\\\\",t.VEC2=\\\\\\\"vec2\\\\\\\",t.VEC3=\\\\\\\"vec3\\\\\\\",t.VEC4=\\\\\\\"vec4\\\\\\\"}(Xo||(Xo={}));const Yo=[Xo.BOOL,Xo.INT,Xo.FLOAT,Xo.VEC2,Xo.VEC3,Xo.VEC4],$o={[Xo.BOOL]:Cr.BOOLEAN,[Xo.INT]:Cr.INTEGER,[Xo.FLOAT]:Cr.FLOAT,[Xo.VEC2]:Cr.VECTOR2,[Xo.VEC3]:Cr.VECTOR3,[Xo.VEC4]:Cr.VECTOR4},Jo={[Cr.BOOLEAN]:Xo.BOOL,[Cr.COLOR]:Xo.VEC3,[Cr.INTEGER]:Xo.INT,[Cr.FLOAT]:Xo.FLOAT,[Cr.FOLDER]:void 0,[Cr.VECTOR2]:Xo.VEC2,[Cr.VECTOR3]:Xo.VEC3,[Cr.VECTOR4]:Xo.VEC4,[Cr.BUTTON]:void 0,[Cr.OPERATOR_PATH]:void 0,[Cr.PARAM_PATH]:void 0,[Cr.NODE_PATH]:void 0,[Cr.RAMP]:void 0,[Cr.STRING]:void 0},Zo={[Xo.BOOL]:!1,[Xo.INT]:0,[Xo.FLOAT]:0,[Xo.VEC2]:[0,0],[Xo.VEC3]:[0,0,0],[Xo.VEC4]:[0,0,0,0]};Xo.BOOL,Xo.INT,Xo.FLOAT,Xo.VEC2,Xo.VEC3,Xo.VEC4;class Ko extends ko{constructor(t,e){super(t,e),this._name=t,this._type=e,this._init_value=Zo[this._type]}type(){return this._type}are_types_matched(t,e){return t==e}get param_type(){return $o[this._type]}get init_value(){return this._init_value}toJSON(){return this._json=this._json||this._create_json()}_create_json(){return{name:this._name,type:this._type}}}var Qo;!function(t){t.BASE=\\\\\\\"base\\\\\\\",t.DRAG=\\\\\\\"drag\\\\\\\",t.KEYBOARD=\\\\\\\"keyboard\\\\\\\",t.MOUSE=\\\\\\\"mouse\\\\\\\",t.POINTER=\\\\\\\"pointer\\\\\\\"}(Qo||(Qo={}));class ta extends ko{constructor(t,e,n){super(t,e),this._name=t,this._type=e,this._event_listener=n}type(){return this._type}get param_type(){return Cr.FLOAT}are_types_matched(t,e){return e==Qo.BASE||t==e}get event_listener(){return this._event_listener}toJSON(){return this._json=this._json||this._create_json()}_create_json(){return{name:this._name,type:this._type}}}const ea={[ts.ANIM]:void 0,[ts.COP]:void 0,[ts.EVENT]:Qo.BASE,[ts.GL]:Uo.FLOAT,[ts.JS]:Xo.FLOAT,[ts.MANAGER]:void 0,[ts.MAT]:void 0,[ts.OBJ]:void 0,[ts.POST]:void 0,[ts.ROP]:void 0,[ts.SOP]:void 0};function na(t,e,n){switch(t){case ts.EVENT:return new ta(e,n);case ts.GL:return new qo(e,n);case ts.JS:return new Ko(e,n);default:return}}class ia{constructor(t,e){this.node=t,this._context=e,this._raw_input_serialized_by_param_name=new Map,this._default_value_serialized_by_param_name=new Map,this._initialized=!1}initializeNode(){this._initialized?console.warn(\\\\\\\"already initialized\\\\\\\",this.node):(this._initialized=!0,this.node.params.onParamsCreated(\\\\\\\"create_inputs_from_params\\\\\\\",this.create_inputs_from_params.bind(this)))}initialized(){return this._initialized}create_inputs_from_params(){const t=function(t){switch(t){case ts.EVENT:return;case ts.GL:return Ho;case ts.JS:return Jo;default:return}}(this._context);if(!t)return;const e=[];for(let n of this.node.params.names){let i=!0;if(this._inputless_param_names&&this._inputless_param_names.length>0&&this._inputless_param_names.includes(n)&&(i=!1),i&&this.node.params.has(n)){const i=this.node.params.get(n);if(i&&!i.parent_param){const n=t[i.type()];if(n){const t=na(this._context,i.name(),n);t&&e.push(t)}}}}this.node.io.inputs.setNamedInputConnectionPoints(e)}set_inputless_param_names(t){return this._inputless_param_names=t}createSpareParameters(){if(this.node.scene().loadingController.isLoading())return;const t=this.node.params.spare_names,e={};for(let n of t)if(this.node.params.has(n)){const t=this.node.params.get(n);t&&(this._raw_input_serialized_by_param_name.set(n,t.rawInputSerialized()),this._default_value_serialized_by_param_name.set(n,t.defaultValueSerialized()),e.namesToDelete=e.namesToDelete||[],e.namesToDelete.push(n))}for(let t of this.node.io.inputs.namedInputConnectionPoints())if(t){const n=t.name(),i=t.param_type;let s=t.init_value;const r=this._default_value_serialized_by_param_name.get(n);let o=this.node.paramDefaultValue(n);if(s=null!=o?o:null!=r?r:t.init_value,m.isArray(t.init_value))if(m.isNumber(s)){const e=new Array(t.init_value.length);e.fill(s),s=e}else m.isArray(s)&&s.length==t.init_value.length&&null!=r&&(s=t.init_value);null!=s&&(e.toAdd=e.toAdd||[],e.toAdd.push({name:n,type:i,init_value:b.clone(s),raw_input:b.clone(s),options:{spare:!0}}))}this.node.params.updateParams(e);for(let t of this.node.params.spare)if(!t.parent_param){const e=this._raw_input_serialized_by_param_name.get(t.name());e&&t.set(e)}}}class sa{constructor(t,e){this.node=t,this._context=e,this._create_spare_params_from_inputs=!0,this._functions_overridden=!1,this._input_name_function=t=>`in${t}`,this._output_name_function=t=>0==t?\\\\\\\"val\\\\\\\":`val${t}`,this._expected_input_types_function=()=>{const t=this.first_input_connection_type()||this.default_connection_type();return[t,t]},this._expected_output_types_function=()=>[this._expected_input_types_function()[0]],this._update_signature_if_required_bound=this.update_signature_if_required.bind(this),this._initialized=!1,this._spare_params_controller=new ia(this.node,this._context)}default_connection_type(){return ea[this._context]}create_connection_point(t,e){return na(this._context,t,e)}functions_overridden(){return this._functions_overridden}initialized(){return this._initialized}set_create_spare_params_from_inputs(t){this._create_spare_params_from_inputs=t}set_input_name_function(t){this._initialize_if_required(),this._input_name_function=t}set_output_name_function(t){this._initialize_if_required(),this._output_name_function=t}set_expected_input_types_function(t){this._initialize_if_required(),this._functions_overridden=!0,this._expected_input_types_function=t}set_expected_output_types_function(t){this._initialize_if_required(),this._functions_overridden=!0,this._expected_output_types_function=t}input_name(t){return this._wrapped_input_name_function(t)}output_name(t){return this._wrapped_output_name_function(t)}initializeNode(){this._initialized?console.warn(\\\\\\\"already initialized\\\\\\\",this.node):(this._initialized=!0,this.node.io.inputs.add_on_set_input_hook(\\\\\\\"_update_signature_if_required\\\\\\\",this._update_signature_if_required_bound),this.node.params.addOnSceneLoadHook(\\\\\\\"_update_signature_if_required\\\\\\\",this._update_signature_if_required_bound),this.node.params.onParamsCreated(\\\\\\\"_update_signature_if_required_bound\\\\\\\",this._update_signature_if_required_bound),this.node.addPostDirtyHook(\\\\\\\"_update_signature_if_required\\\\\\\",this._update_signature_if_required_bound),this._spare_params_controller.initialized()||this._spare_params_controller.initializeNode())}_initialize_if_required(){this._initialized||this.initializeNode()}get spare_params(){return this._spare_params_controller}update_signature_if_required(t){this.node.lifecycle.creationCompleted()&&this._connections_match_inputs()||(this.update_connection_types(),this.node.removeDirtyState(),this.node.scene().loadingController.isLoading()||this.make_successors_update_signatures())}make_successors_update_signatures(){const t=this.node.graphAllSuccessors();if(this.node.childrenAllowed()){const e=this.node.nodesByType(ns.INPUT),n=this.node.nodesByType(ns.OUTPUT);for(let n of e)t.push(n);for(let e of n)t.push(e)}for(let e of t){const t=e;t.io&&t.io.has_connection_points_controller&&t.io.connection_points.initialized()&&t.io.connection_points.update_signature_if_required(this.node)}}update_connection_types(){const t=this._wrapped_expected_input_types_function(),e=this._wrapped_expected_output_types_function(),n=[];for(let e=0;e<t.length;e++){const i=t[e],s=this.create_connection_point(this._wrapped_input_name_function(e),i);n.push(s)}const i=[];for(let t=0;t<e.length;t++){const n=e[t],s=this.create_connection_point(this._wrapped_output_name_function(t),n);i.push(s)}this.node.io.inputs.setNamedInputConnectionPoints(n),this.node.io.outputs.setNamedOutputConnectionPoints(i,!1),this._create_spare_params_from_inputs&&this._spare_params_controller.createSpareParameters()}_connections_match_inputs(){const t=this.node.io.inputs.namedInputConnectionPoints().map((t=>null==t?void 0:t.type())),e=this.node.io.outputs.namedOutputConnectionPoints().map((t=>null==t?void 0:t.type())),n=this._wrapped_expected_input_types_function(),i=this._wrapped_expected_output_types_function();if(n.length!=t.length)return!1;if(i.length!=e.length)return!1;for(let e=0;e<t.length;e++)if(t[e]!=n[e])return!1;for(let t=0;t<e.length;t++)if(e[t]!=i[t])return!1;return!0}_wrapped_expected_input_types_function(){if(this.node.scene().loadingController.isLoading()){const t=this.node.io.saved_connection_points_data.in();if(t)return t.map((t=>t.type))}return this._expected_input_types_function()}_wrapped_expected_output_types_function(){if(this.node.scene().loadingController.isLoading()){const t=this.node.io.saved_connection_points_data.out();if(t)return t.map((t=>t.type))}return this._expected_output_types_function()}_wrapped_input_name_function(t){if(this.node.scene().loadingController.isLoading()){const e=this.node.io.saved_connection_points_data.in();if(e)return e[t].name}return this._input_name_function(t)}_wrapped_output_name_function(t){if(this.node.scene().loadingController.isLoading()){const e=this.node.io.saved_connection_points_data.out();if(e)return e[t].name}return this._output_name_function(t)}first_input_connection_type(){return this.input_connection_type(0)}input_connection_type(t){const e=this.node.io.connections.inputConnections();if(e){const n=e[t];if(n)return n.src_connection_point().type()}}}class ra{constructor(t){this.node=t,this._connections=new Bo(this.node)}get connections(){return this._connections}get inputs(){return this._inputs=this._inputs||new Fo(this.node)}has_inputs(){return null!=this._inputs}get outputs(){return this._outputs=this._outputs||new Do(this.node)}has_outputs(){return null!=this._outputs}get connection_points(){return this._connection_points=this._connection_points||new sa(this.node,this.node.context())}get has_connection_points_controller(){return null!=this._connection_points}get saved_connection_points_data(){return this._saved_connection_points_data=this._saved_connection_points_data||new zo(this.node)}clear_saved_connection_points_data(){this._saved_connection_points_data&&(this._saved_connection_points_data.clear(),this._saved_connection_points_data=void 0)}}class oa{constructor(){}}class aa extends Mi{constructor(t,e=\\\\\\\"BaseNode\\\\\\\",n){super(t,e),this.params_init_value_overrides=n,this.containerController=new Tr(this),this.pv=new Po,this.p=new oa,this._initialized=!1}copy_param_values(t){const e=this.params.non_spare;for(let n of e){const e=t.params.get(n.name());e&&n.copy_value(e)}}get parentController(){return this._parent_controller=this._parent_controller||new qi(this)}static displayedInputNames(){return[]}get childrenControllerContext(){return this._children_controller_context}_create_children_controller(){if(this._children_controller_context)return new hs(this,this._children_controller_context)}get childrenController(){return this._children_controller=this._children_controller||this._create_children_controller()}childrenAllowed(){return null!=this._children_controller_context}get uiData(){return this._ui_data=this._ui_data||new Si(this)}get states(){return this._states=this._states||new ji(this)}get lifecycle(){return this._lifecycle=this._lifecycle||new us(this)}get serializer(){return this._serializer=this._serializer||new Sr(this)}get cookController(){return this._cook_controller=this._cook_controller||new Er(this)}get io(){return this._io=this._io||new ra(this)}get nameController(){return this._name_controller=this._name_controller||new Wi(this)}setName(t){this.nameController.setName(t)}_set_core_name(t){this._name=t}get params(){return this._params_controller=this._params_controller||new Oo(this)}initialize_base_and_node(){var t;this._initialized?console.warn(\\\\\\\"node already initialized\\\\\\\"):(this._initialized=!0,null===(t=this.displayNodeController)||void 0===t||t.initializeNode(),this.initializeBaseNode(),this.initializeNode(),this.polyNodeController&&this.polyNodeController.initializeNode())}initializeBaseNode(){}initializeNode(){}static type(){throw\\\\\\\"type to be overriden\\\\\\\"}type(){return this.constructor.type()}static context(){throw console.error(\\\\\\\"node has no node_context\\\\\\\",this),\\\\\\\"context requires override\\\\\\\"}context(){return this.constructor.context()}static require_webgl2(){return!1}require_webgl2(){return this.constructor.require_webgl2()}setParent(t){this.parentController.setParent(t)}parent(){return this.parentController.parent()}firstAncestorWithContext(t){return this.parentController.firstAncestorWithContext(t)}root(){return this._scene.root()}path(t){return this.parentController.path(t)}createParams(){}addParam(t,e,n,i){var s;return null===(s=this._params_controller)||void 0===s?void 0:s.addParam(t,e,n,i)}paramDefaultValue(t){return null}cook(t){return null}onCookEnd(t,e){this.cookController.registerOnCookEnd(t,e)}async compute(){var t,e;return this.isDirty()||(null===(e=null===(t=this.flags)||void 0===t?void 0:t.bypass)||void 0===e?void 0:e.active())?await this.containerController.compute():this.containerController.container()}_setContainer(t,e=null){this.containerController.container().set_content(t),null!=t&&(t.name||(t.name=this.path()),t.node||(t.node=this)),this.cookController.endCook(e)}createNode(t,e){var n;return null===(n=this.childrenController)||void 0===n?void 0:n.createNode(t,e)}create_operation_container(t,e,n){var i;return null===(i=this.childrenController)||void 0===i?void 0:i.create_operation_container(t,e,n)}removeNode(t){var e;null===(e=this.childrenController)||void 0===e||e.removeNode(t)}dispose(){var t,e;super.dispose(),this.setParent(null),this.io.inputs.dispose(),this.lifecycle.dispose(),null===(t=this.displayNodeController)||void 0===t||t.dispose(),this.nameController.dispose(),null===(e=this.childrenController)||void 0===e||e.dispose(),this.params.dispose()}children(){var t;return(null===(t=this.childrenController)||void 0===t?void 0:t.children())||[]}node(t){var e;return(null===(e=this.parentController)||void 0===e?void 0:e.findNode(t))||null}nodeSibbling(t){var e;const n=this.parent();if(n){const i=null===(e=n.childrenController)||void 0===e?void 0:e.childByName(t);if(i)return i}return null}nodesByType(t){var e;return(null===(e=this.childrenController)||void 0===e?void 0:e.nodesByType(t))||[]}setInput(t,e,n=0){this.io.inputs.setInput(t,e,n)}emit(t,e=null){this.scene().dispatchController.dispatch(this,t,e)}toJSON(t=!1){return this.serializer.toJSON(t)}async requiredModules(){}usedAssembler(){}integrationData(){}}class la extends aa{static context(){return ts.MANAGER}}class ca{constructor(t,e,n){this.type=t,this.init_value=e,this.options=n}}class ha{static BUTTON(t,e){return new ca(Cr.BUTTON,t,e)}static BOOLEAN(t,e){return new ca(Cr.BOOLEAN,t,e)}static COLOR(t,e){return t instanceof D.a&&(t=t.toArray()),new ca(Cr.COLOR,t,e)}static FLOAT(t,e){return new ca(Cr.FLOAT,t,e)}static FOLDER(t=null,e){return new ca(Cr.FOLDER,t,e)}static INTEGER(t,e){return new ca(Cr.INTEGER,t,e)}static RAMP(t=Ao.DEFAULT_VALUE,e){return new ca(Cr.RAMP,t,e)}static STRING(t=\\\\\\\"\\\\\\\",e){return new ca(Cr.STRING,t,e)}static VECTOR2(t,e){return t instanceof d.a&&(t=t.toArray()),new ca(Cr.VECTOR2,t,e)}static VECTOR3(t,e){return t instanceof p.a&&(t=t.toArray()),new ca(Cr.VECTOR3,t,e)}static VECTOR4(t,e){return t instanceof _.a&&(t=t.toArray()),new ca(Cr.VECTOR4,t,e)}static OPERATOR_PATH(t,e){return new ca(Cr.OPERATOR_PATH,t,e)}static NODE_PATH(t,e){return new ca(Cr.NODE_PATH,t,e)}static PARAM_PATH(t,e){return new ca(Cr.PARAM_PATH,t,e)}}class ua{}class da{constructor(t){this.scene=t}findObjectByMask(t){return this.findObjectByMaskInObject(t,this.scene.threejsScene())}findObjectByMaskInObject(t,e,n=\\\\\\\"\\\\\\\"){for(let i of e.children){const e=this._removeTrailingOrHeadingSlash(i.name),s=`${n=this._removeTrailingOrHeadingSlash(n)}/${e}`;if(ss.matchMask(s,t))return i;const r=this.findObjectByMaskInObject(t,i,s);if(r)return r}}objectsByMask(t){return this.objectsByMaskInObject(t,this.scene.threejsScene(),[],\\\\\\\"\\\\\\\")}objectsByMaskInObject(t,e,n=[],i=\\\\\\\"\\\\\\\"){for(let s of e.children){const e=this._removeTrailingOrHeadingSlash(s.name),r=`${i=this._removeTrailingOrHeadingSlash(i)}/${e}`;ss.matchMask(r,t)&&n.push(s),this.objectsByMaskInObject(t,s,n,r)}return n}_removeTrailingOrHeadingSlash(t){return\\\\\\\"/\\\\\\\"==t[0]&&(t=t.substr(1)),\\\\\\\"/\\\\\\\"==t[t.length-1]&&(t=t.substr(0,t.length-1)),t}}const pa={computeOnDirty:!1,callback:t=>{ma.update(t)}};function _a(t){return class extends t{constructor(){super(...arguments),this.autoUpdate=ha.BOOLEAN(1,pa)}}}_a(ua);class ma{constructor(t){this.node=t}async update(){const t=this.node.object,e=this.node.pv;e.autoUpdate!=t.autoUpdate&&(t.autoUpdate=e.autoUpdate)}static async update(t){t.sceneAutoUpdateController.update()}}var fa;!function(t){t.NONE=\\\\\\\"none\\\\\\\",t.COLOR=\\\\\\\"color\\\\\\\",t.TEXTURE=\\\\\\\"texture\\\\\\\"}(fa||(fa={}));const ga=[fa.NONE,fa.COLOR,fa.TEXTURE],va={computeOnDirty:!1,callback:t=>{xa.update(t)}};function ya(t){return class extends t{constructor(){super(...arguments),this.backgroundMode=ha.INTEGER(ga.indexOf(fa.NONE),{menu:{entries:ga.map(((t,e)=>({name:t,value:e})))},...va}),this.bgColor=ha.COLOR([0,0,0],{visibleIf:{backgroundMode:ga.indexOf(fa.COLOR)},...va}),this.bgTexture=ha.NODE_PATH(\\\\\\\"\\\\\\\",{visibleIf:{backgroundMode:ga.indexOf(fa.TEXTURE)},nodeSelection:{context:ts.COP},dependentOnFoundNode:!1,...va})}}}ya(ua);class xa{constructor(t){this.node=t}update(){const t=this.node.object,e=this.node.pv;if(e.backgroundMode==ga.indexOf(fa.NONE))t.background=null;else if(e.backgroundMode==ga.indexOf(fa.COLOR))t.background=e.bgColor;else{const n=e.bgTexture.nodeWithContext(ts.COP);n?n.compute().then((e=>{t.background=e.texture()})):this.node.states.error.set(\\\\\\\"bgTexture node not found\\\\\\\")}}static update(t){t.sceneBackgroundController.update()}}const ba={computeOnDirty:!1,callback:t=>{Ta.update(t)}};function wa(t){return class extends t{constructor(){super(...arguments),this.useEnvironment=ha.BOOLEAN(0,ba),this.environment=ha.NODE_PATH(\\\\\\\"\\\\\\\",{visibleIf:{useEnvironment:1},nodeSelection:{context:ts.COP},dependentOnFoundNode:!1,...ba})}}}wa(ua);class Ta{constructor(t){this.node=t}async update(){const t=this.node.object,e=this.node.pv;if(e.useEnvironment){const n=e.environment.nodeWithContext(ts.COP);n?n.compute().then((e=>{t.environment=e.texture()})):this.node.states.error.set(\\\\\\\"bgTexture node not found\\\\\\\")}else t.environment=null}static async update(t){t.sceneEnvController.update()}}class Aa{constructor(t,e=1,n=1e3){this.name=\\\\\\\"\\\\\\\",this.color=new D.a(t),this.near=e,this.far=n}clone(){return new Aa(this.color,this.near,this.far)}toJSON(){return{type:\\\\\\\"Fog\\\\\\\",color:this.color.getHex(),near:this.near,far:this.far}}}Aa.prototype.isFog=!0;class Ma{constructor(t,e=25e-5){this.name=\\\\\\\"\\\\\\\",this.color=new D.a(t),this.density=e}clone(){return new Ma(this.color,this.density)}toJSON(){return{type:\\\\\\\"FogExp2\\\\\\\",color:this.color.getHex(),density:this.density}}}Ma.prototype.isFogExp2=!0;const Ea={computeOnDirty:!1,callback:t=>{La.update(t)}};var Sa;!function(t){t.LINEAR=\\\\\\\"linear\\\\\\\",t.EXPONENTIAL=\\\\\\\"exponential\\\\\\\"}(Sa||(Sa={}));const Ca=[Sa.LINEAR,Sa.EXPONENTIAL];function Na(t){return class extends t{constructor(){super(...arguments),this.useFog=ha.BOOLEAN(0,Ea),this.fogType=ha.INTEGER(Ca.indexOf(Sa.EXPONENTIAL),{visibleIf:{useFog:1},menu:{entries:Ca.map(((t,e)=>({name:t,value:e})))},...Ea}),this.fogColor=ha.COLOR([1,1,1],{visibleIf:{useFog:1},...Ea}),this.fogNear=ha.FLOAT(1,{range:[0,100],rangeLocked:[!0,!1],visibleIf:{useFog:1,fogType:Ca.indexOf(Sa.LINEAR)},...Ea}),this.fogFar=ha.FLOAT(100,{range:[0,100],rangeLocked:[!0,!1],visibleIf:{useFog:1,fogType:Ca.indexOf(Sa.LINEAR)},...Ea}),this.fogDensity=ha.FLOAT(25e-5,{visibleIf:{useFog:1,fogType:Ca.indexOf(Sa.EXPONENTIAL)},...Ea})}}}Na(ua);class La{constructor(t){this.node=t}async update(){const t=this.node.object,e=this.node.pv;if(e.useFog)if(e.fogType==Ca.indexOf(Sa.LINEAR)){const n=this.fog2(e);t.fog=n,n.color=e.fogColor,n.near=e.fogNear,n.far=e.fogFar}else{const n=this.fogExp2(e);t.fog=this.fogExp2(e),n.color=e.fogColor,n.density=e.fogDensity}else{t.fog&&(t.fog=null)}}fog2(t){return this._fog=this._fog||new Aa(16777215,t.fogNear,t.fogFar)}fogExp2(t){return this._fogExp2=this._fogExp2||new Ma(16777215,t.fogDensity)}static async update(t){t.sceneFogController.update()}}const Oa={computeOnDirty:!1,callback:t=>{Ra.update(t)}};function Pa(t){return class extends t{constructor(){super(...arguments),this.useOverrideMaterial=ha.BOOLEAN(0,Oa),this.overrideMaterial=ha.NODE_PATH(\\\\\\\"\\\\\\\",{visibleIf:{useOverrideMaterial:1},nodeSelection:{context:ts.MAT},dependentOnFoundNode:!1,...Oa})}}}Pa(ua);class Ra{constructor(t){this.node=t}async update(){const t=this.node.object,e=this.node.pv;if(e.useOverrideMaterial){const n=e.overrideMaterial.nodeWithContext(ts.MAT);n?n.compute().then((e=>{t.overrideMaterial=e.material()})):this.node.states.error.set(\\\\\\\"bgTexture node not found\\\\\\\")}else t.overrideMaterial=null}static async update(t){t.SceneMaterialOverrideController.update()}}class Ia extends(Pa(wa(Na(ya(_a(ua)))))){}const Fa=new Ia;class Da extends la{constructor(){super(...arguments),this.paramsConfig=Fa,this._object=this._createScene(),this._queued_nodes_by_id=new Map,this.sceneAutoUpdateController=new ma(this),this.sceneBackgroundController=new xa(this),this.sceneEnvController=new Ta(this),this.sceneFogController=new La(this),this.sceneMaterialOverrideController=new Ra(this),this._children_controller_context=ts.OBJ}static type(){return\\\\\\\"obj\\\\\\\"}initializeNode(){this._object.matrixAutoUpdate=!1,this.lifecycle.add_on_child_add_hook(this._on_child_add.bind(this)),this.lifecycle.add_on_child_remove_hook(this._on_child_remove.bind(this))}_createScene(){const t=new vs;return t.name=\\\\\\\"/\\\\\\\",t.matrixAutoUpdate=!1,t}get object(){return this._object}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}_updateScene(){this.sceneAutoUpdateController.update(),this.sceneBackgroundController.update(),this.sceneEnvController.update(),this.sceneFogController.update(),this.sceneMaterialOverrideController.update()}_addToQueue(t){const e=t.graphNodeId();return this._queued_nodes_by_id.has(e)||this._queued_nodes_by_id.set(e,t),t}async processQueue(){this._updateScene();const t=new Map,e=[];this._queued_nodes_by_id.forEach(((n,i)=>{const s=`_____${n.renderOrder}__${n.path()}`;e.push(s),t.set(s,n)})),this._queued_nodes_by_id.clear();for(let n of e){const e=t.get(n);e&&(t.delete(n),this._addToScene(e))}}_update_object(t){return this.scene().loadingController.autoUpdating()?this._addToScene(t):this._addToQueue(t)}getParentForNode(t){if(t.attachableToHierarchy()){const e=t.io.inputs.input(0);return e?e.children_group:this._object}return null}_addToScene(t){var e;if(t.attachableToHierarchy()){const n=this.getParentForNode(t);n&&(t.usedInScene()?(null===(e=t.childrenDisplayController)||void 0===e||e.request_display_node_container(),t.addObjectToParent(n)):t.removeObjectFromParent())}}_removeFromScene(t){t.removeObjectFromParent()}areChildrenCooking(){const t=this.children();for(let e of t)if(e.cookController.isCooking()||e.isDisplayNodeCooking())return!0;return!1}addToParentTransform(t){this._update_object(t)}removeFromParentTransform(t){this._update_object(t)}_on_child_add(t){t&&this._update_object(t)}_on_child_remove(t){t&&this._removeFromScene(t)}}class Ba{constructor(t){this.scene=t,this._node_context_signatures={},this._instanciated_nodes_by_context_and_type={}}init(){this._root=new Da(this.scene),this._root.initialize_base_and_node(),this._root.params.init(),this._root._set_core_name(\\\\\\\"RootNode\\\\\\\")}root(){return this._root}_traverseNode(t,e){const n=t.children();if(n&&0!=n.length)for(let t of n)e(t),t.childrenController&&this._traverseNode(t,e)}clear(){var t;const e=this.root().children();for(let n of e)null===(t=this.root().childrenController)||void 0===t||t.removeNode(n)}node(t){return\\\\\\\"/\\\\\\\"===t?this.root():this.root().node(t)}allNodes(){let t=[this.root()],e=[this.root()],n=0;for(;e.length>0&&n<10;){const i=e.map((t=>t.childrenAllowed()?t.children():[])).flat();t=t.concat(i),e=i,n+=1}return t.flat()}nodesFromMask(t){const e=this.allNodes(),n=[];for(let i of e){const e=i.path();ss.matchMask(e,t)&&n.push(i)}return n}reset_node_context_signatures(){this._node_context_signatures={}}register_node_context_signature(t){t.childrenAllowed()&&t.childrenController&&(this._node_context_signatures[t.childrenController.node_context_signature()]=!0)}node_context_signatures(){return Object.keys(this._node_context_signatures).sort().map((t=>t.toLowerCase()))}addToInstanciatedNode(t){const e=t.context(),n=t.type();this._instanciated_nodes_by_context_and_type[e]=this._instanciated_nodes_by_context_and_type[e]||{},this._instanciated_nodes_by_context_and_type[e][n]=this._instanciated_nodes_by_context_and_type[e][n]||{},this._instanciated_nodes_by_context_and_type[e][n][t.graphNodeId()]=t}removeFromInstanciatedNode(t){const e=t.context(),n=t.type();delete this._instanciated_nodes_by_context_and_type[e][n][t.graphNodeId()]}nodesByType(t){const e=[];return this._traverseNode(this.scene.root(),(n=>{n.type()==t&&e.push(n)})),e}nodesByContextAndType(t,e){const n=[],i=this._instanciated_nodes_by_context_and_type[t];if(i){const t=i[e];if(t)for(let e of Object.keys(t))n.push(t[e])}return n}}class za{constructor(t){this.scene=t}toJSON(t=!1){const e={},n={};for(let i of this.scene.nodesController.allNodes()){const s=new Sr(i);e[i.graphNodeId()]=s.toJSON(t);const r=i.params.all;for(let t of r)n[t.graphNodeId()]=t.toJSON()}return{nodes_by_graph_node_id:e,params_by_graph_node_id:n}}}var ka;!function(t){t.auxclick=\\\\\\\"auxclick\\\\\\\",t.click=\\\\\\\"click\\\\\\\",t.contextmenu=\\\\\\\"contextmenu\\\\\\\",t.dblclick=\\\\\\\"dblclick\\\\\\\",t.mousedown=\\\\\\\"mousedown\\\\\\\",t.mouseenter=\\\\\\\"mouseenter\\\\\\\",t.mouseleave=\\\\\\\"mouseleave\\\\\\\",t.mousemove=\\\\\\\"mousemove\\\\\\\",t.mouseover=\\\\\\\"mouseover\\\\\\\",t.mouseout=\\\\\\\"mouseout\\\\\\\",t.mouseup=\\\\\\\"mouseup\\\\\\\",t.pointerlockchange=\\\\\\\"pointerlockchange\\\\\\\",t.pointerlockerror=\\\\\\\"pointerlockerror\\\\\\\",t.select=\\\\\\\"select\\\\\\\",t.wheel=\\\\\\\"wheel\\\\\\\"}(ka||(ka={}));const Ua=[ka.auxclick,ka.click,ka.contextmenu,ka.dblclick,ka.mousedown,ka.mouseenter,ka.mouseleave,ka.mousemove,ka.mouseover,ka.mouseout,ka.mouseup,ka.pointerlockchange,ka.pointerlockerror,ka.select,ka.wheel];class Ga extends pi{constructor(){super(...arguments),this._require_canvas_event_listeners=!0}type(){return\\\\\\\"mouse\\\\\\\"}acceptedEventTypes(){return Ua.map((t=>`${t}`))}}class Va extends aa{constructor(){super(...arguments),this._cook_without_inputs_bound=this._cook_without_inputs.bind(this)}static context(){return ts.EVENT}initializeBaseNode(){this.uiData.setLayoutHorizontal(),this.addPostDirtyHook(\\\\\\\"cook_without_inputs_on_dirty\\\\\\\",this._cook_without_inputs_bound),this.io.inputs.set_depends_on_inputs(!1),this.io.connections.initInputs(),this.io.connection_points.spare_params.initializeNode()}_cook_without_inputs(){this.cookController.cookMainWithoutInputs()}cook(){this.cookController.endCook()}processEventViaConnectionPoint(t,e){e.event_listener?e.event_listener(t):this.processEvent(t)}processEvent(t){}async dispatchEventToOutput(t,e){this.run_on_dispatch_hook(t,e);const n=this.io.outputs.getOutputIndex(t);if(n>=0){const t=this.io.connections.outputConnections().filter((t=>t.output_index==n));let i;for(let n of t){i=n.node_dest;const t=i.io.inputs.namedInputConnectionPoints()[n.input_index];i.processEventViaConnectionPoint(e,t)}}else console.warn(`requested output '${t}' does not exist on node '${this.path()}'`)}onDispatch(t,e){this._on_dispatch_hooks_by_output_name=this._on_dispatch_hooks_by_output_name||new Map,h.pushOnArrayAtEntry(this._on_dispatch_hooks_by_output_name,t,e)}run_on_dispatch_hook(t,e){if(this._on_dispatch_hooks_by_output_name){const n=this._on_dispatch_hooks_by_output_name.get(t);if(n)for(let t of n)t(e)}}}var Ha;!function(t){t.CANVAS=\\\\\\\"canvas\\\\\\\",t.DOCUMENT=\\\\\\\"document\\\\\\\"}(Ha||(Ha={}));const ja=[Ha.CANVAS,Ha.DOCUMENT];class Wa{constructor(t){this.viewer=t,this._bound_listener_map_by_event_controller_type=new Map}updateEvents(t){const e=this.canvas();if(!e)return;const n=t.type();let i=this._bound_listener_map_by_event_controller_type.get(n);i||(i=new Map,this._bound_listener_map_by_event_controller_type.set(n,i)),i.forEach(((t,n)=>{this._eventOwner(t.data,e).removeEventListener(n,t.listener)})),i.clear();const s=e=>{this.processEvent(e,t)};for(let n of t.activeEventDatas()){this._eventOwner(n,e).addEventListener(n.type,s),i.set(n.type,{listener:s,data:n})}}_eventOwner(t,e){return\\\\\\\"resize\\\\\\\"==t.type?window:t.emitter==Ha.CANVAS?e:document}cameraNode(){return this.viewer.camerasController.cameraNode()}canvas(){return this.viewer.canvas()}init(){this.canvas&&this.viewer.scene().eventsDispatcher.traverseControllers((t=>{this.updateEvents(t)}))}registeredEventTypes(){const t=[];return this._bound_listener_map_by_event_controller_type.forEach((e=>{e.forEach(((e,n)=>{t.push(n)}))})),t}dispose(){const t=this.canvas();this._bound_listener_map_by_event_controller_type.forEach((e=>{t&&e.forEach(((e,n)=>{this._eventOwner(e.data,t).removeEventListener(n,e.listener)}))}))}processEvent(t,e){if(!this.canvas())return;const n={viewer:this.viewer,event:t,cameraNode:this.cameraNode()};e.processEvent(n)}}const qa={visibleIf:{active:1},callback:t=>{Ya.PARAM_CALLBACK_updateRegister(t)}};class Xa extends Va{constructor(){super(...arguments),this._activeEventDatas=[]}initializeBaseNode(){super.initializeBaseNode();this.lifecycle.add_on_add_hook((()=>{this.scene().eventsDispatcher.registerEventNode(this)})),this.lifecycle.add_delete_hook((()=>{this.scene().eventsDispatcher.unregisterEventNode(this)})),this.params.onParamsCreated(\\\\\\\"update_register\\\\\\\",(()=>{this._updateRegister()}))}processEvent(t){this.pv.active&&t.event&&this.dispatchEventToOutput(t.event.type,t)}static PARAM_CALLBACK_updateRegister(t){t._updateRegister()}_updateRegister(){this._updateActiveEventDatas(),this.scene().eventsDispatcher.updateViewerEventListeners(this)}_updateActiveEventDatas(){if(this._activeEventDatas=[],this.pv.active){const t=this.acceptedEventTypes();for(let e of t){const t=this.params.get(e);t&&t.value&&this._activeEventDatas.push({type:e,emitter:ja[this.pv.element]})}}}activeEventDatas(){return this._activeEventDatas}}class Ya extends Xa{acceptedEventTypes(){return[]}}const $a=new class extends ua{constructor(){super(...arguments),this.active=ha.BOOLEAN(!0,{callback:t=>{Ja.PARAM_CALLBACK_updateRegister(t)},separatorAfter:!0}),this.element=ha.INTEGER(ja.indexOf(Ha.CANVAS),{menu:{entries:ja.map(((t,e)=>({name:t,value:e})))},separatorAfter:!0}),this.auxclick=ha.BOOLEAN(0,qa),this.click=ha.BOOLEAN(0,qa),this.contextmenu=ha.BOOLEAN(0,qa),this.dblclick=ha.BOOLEAN(0,qa),this.mousedown=ha.BOOLEAN(1,qa),this.mouseenter=ha.BOOLEAN(0,qa),this.mouseleave=ha.BOOLEAN(0,qa),this.mousemove=ha.BOOLEAN(1,qa),this.mouseover=ha.BOOLEAN(0,qa),this.mouseout=ha.BOOLEAN(0,qa),this.mouseup=ha.BOOLEAN(1,qa),this.pointerlockchange=ha.BOOLEAN(0,qa),this.pointerlockerror=ha.BOOLEAN(0,qa),this.select=ha.BOOLEAN(0,qa),this.wheel=ha.BOOLEAN(0,qa),this.ctrlKey=ha.BOOLEAN(0,{...qa,separatorBefore:!0}),this.altKey=ha.BOOLEAN(0,qa),this.shiftKey=ha.BOOLEAN(0,qa),this.metaKey=ha.BOOLEAN(0,qa)}};class Ja extends Xa{constructor(){super(...arguments),this.paramsConfig=$a}static type(){return\\\\\\\"mouse\\\\\\\"}acceptedEventTypes(){return Ua.map((t=>`${t}`))}initializeNode(){this.io.outputs.setNamedOutputConnectionPoints(Ua.map((t=>new ta(t,Qo.MOUSE)))),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{const t=[this.p.auxclick,this.p.click,this.p.dblclick,this.p.mousedown,this.p.mouseenter,this.p.mouseleave,this.p.mousemove,this.p.mouseout,this.p.mouseout,this.p.mouseup,this.p.pointerlockchange,this.p.pointerlockerror,this.p.select,this.p.wheel];this.params.label.init(t,(()=>t.map((t=>t.value?t.name():void 0)).filter((t=>t)).join(\\\\\\\", \\\\\\\")))}))}))}processEvent(t){if(!this.pv.active)return;if(!t.event)return;const e=t.event;e.ctrlKey==this.pv.ctrlKey&&e.shiftKey==this.pv.shiftKey&&e.altKey==this.pv.altKey&&e.metaKey==this.pv.metaKey&&this.dispatchEventToOutput(t.event.type,t)}}var Za;!function(t){t.pointerdown=\\\\\\\"pointerdown\\\\\\\",t.pointermove=\\\\\\\"pointermove\\\\\\\",t.pointerup=\\\\\\\"pointerup\\\\\\\"}(Za||(Za={}));const Ka=[Za.pointerdown,Za.pointermove,Za.pointerup];class Qa extends pi{constructor(){super(...arguments),this._require_canvas_event_listeners=!0}type(){return\\\\\\\"pointer\\\\\\\"}acceptedEventTypes(){return Ka.map((t=>`${t}`))}}const tl=new class extends ua{constructor(){super(...arguments),this.active=ha.BOOLEAN(!0,{callback:t=>{el.PARAM_CALLBACK_updateRegister(t)},separatorAfter:!0}),this.element=ha.INTEGER(ja.indexOf(Ha.CANVAS),{menu:{entries:ja.map(((t,e)=>({name:t,value:e})))},separatorAfter:!0}),this.pointerdown=ha.BOOLEAN(1,qa),this.pointermove=ha.BOOLEAN(0,qa),this.pointerup=ha.BOOLEAN(0,qa),this.ctrlKey=ha.BOOLEAN(0,{...qa,separatorBefore:!0}),this.altKey=ha.BOOLEAN(0,qa),this.shiftKey=ha.BOOLEAN(0,qa),this.metaKey=ha.BOOLEAN(0,qa)}};class el extends Xa{constructor(){super(...arguments),this.paramsConfig=tl}static type(){return\\\\\\\"pointer\\\\\\\"}acceptedEventTypes(){return Ka.map((t=>`${t}`))}initializeNode(){this.io.outputs.setNamedOutputConnectionPoints(Ka.map((t=>new ta(t,Qo.POINTER)))),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{const t=[this.p.pointerdown,this.p.pointermove,this.p.pointerup];this.params.label.init(t,(()=>t.map((t=>t.value?t.name():void 0)).filter((t=>t)).join(\\\\\\\", \\\\\\\")))}))}))}processEvent(t){if(!this.pv.active)return;if(!t.event)return;const e=t.event;e.ctrlKey==this.pv.ctrlKey&&e.shiftKey==this.pv.shiftKey&&e.altKey==this.pv.altKey&&e.metaKey==this.pv.metaKey&&this.dispatchEventToOutput(t.event.type,t)}}var nl,il;!function(t){t.SET_FRAME=\\\\\\\"setFrame\\\\\\\"}(nl||(nl={})),function(t){t.TIME_REACHED=\\\\\\\"timeReached\\\\\\\"}(il||(il={}));const sl=new class extends ua{constructor(){super(...arguments),this.active=ha.BOOLEAN(!0,{callback:(t,e)=>{rl.PARAM_CALLBACK_updateRegister(t)},separatorAfter:!0}),this.element=ha.INTEGER(0,{hidden:!0}),this.sceneLoaded=ha.BOOLEAN(1,qa),this.play=ha.BOOLEAN(1,qa),this.pause=ha.BOOLEAN(1,qa),this.tick=ha.BOOLEAN(1,{separatorAfter:!0,...qa}),this.treachedTime=ha.BOOLEAN(0,{callback:t=>{rl.PARAM_CALLBACK_update_time_dependency(t)}}),this.reachedTime=ha.INTEGER(10,{visibleIf:{treachedTime:1},range:[0,100],separatorAfter:!0}),this.setFrameValue=ha.INTEGER(1,{range:[0,100]}),this.setFrame=ha.BUTTON(null,{callback:t=>{rl.PARAM_CALLBACK_setFrame(t)}})}};class rl extends Xa{constructor(){super(...arguments),this.paramsConfig=sl}static type(){return\\\\\\\"scene\\\\\\\"}acceptedEventTypes(){return mi.map((t=>`${t}`))}dispose(){var t;null===(t=this.graph_node)||void 0===t||t.dispose(),super.dispose()}initializeNode(){this.io.inputs.setNamedInputConnectionPoints([new ta(nl.SET_FRAME,Qo.BASE,this._onSetFrame.bind(this)),new ta(_i.PLAY,Qo.BASE,this._play.bind(this)),new ta(_i.PAUSE,Qo.BASE,this._pause.bind(this))]);const t=mi.map((t=>new ta(t,Qo.BASE)));t.push(new ta(il.TIME_REACHED,Qo.BASE)),this.io.outputs.setNamedOutputConnectionPoints(t),this.params.onParamsCreated(\\\\\\\"update_time_dependency\\\\\\\",(()=>{this.update_time_dependency()}))}_onSetFrame(t){this.scene().setFrame(this.pv.setFrameValue)}_play(t){this.scene().play()}_pause(t){this.scene().pause()}_onFrameUpdate(){this.scene().time()>=this.pv.reachedTime&&this.dispatchEventToOutput(il.TIME_REACHED,{})}update_time_dependency(){this.pv.treachedTime?(this.graph_node=this.graph_node||new Mi(this.scene(),\\\\\\\"scene_node_time_graph_node\\\\\\\"),this.graph_node.addGraphInput(this.scene().timeController.graphNode),this.graph_node.addPostDirtyHook(\\\\\\\"time_update\\\\\\\",this._onFrameUpdate.bind(this))):this.graph_node&&this.graph_node.graphDisconnectPredecessors()}static PARAM_CALLBACK_setFrame(t){t._onSetFrame({})}static PARAM_CALLBACK_update_time_dependency(t){t.update_time_dependency()}}var ol;!function(t){t.keydown=\\\\\\\"keydown\\\\\\\",t.keypress=\\\\\\\"keypress\\\\\\\",t.keyup=\\\\\\\"keyup\\\\\\\"}(ol||(ol={}));const al=[ol.keydown,ol.keypress,ol.keyup];class ll extends pi{constructor(){super(...arguments),this._require_canvas_event_listeners=!0}type(){return\\\\\\\"keyboard\\\\\\\"}acceptedEventTypes(){return al.map((t=>`${t}`))}}const cl=new class extends ua{constructor(){super(...arguments),this.active=ha.BOOLEAN(!0,{callback:(t,e)=>{hl.PARAM_CALLBACK_updateRegister(t)},separatorAfter:!0}),this.element=ha.INTEGER(ja.indexOf(Ha.CANVAS),{menu:{entries:ja.map(((t,e)=>({name:t,value:e})))},separatorAfter:!0}),this.keydown=ha.BOOLEAN(1,qa),this.keypress=ha.BOOLEAN(0,qa),this.keyup=ha.BOOLEAN(0,qa),this.keyCodes=ha.STRING(\\\\\\\"Digit1 KeyE ArrowDown\\\\\\\",qa),this.ctrlKey=ha.BOOLEAN(0,qa),this.altKey=ha.BOOLEAN(0,qa),this.shiftKey=ha.BOOLEAN(0,qa),this.metaKey=ha.BOOLEAN(0,qa)}};class hl extends Xa{constructor(){super(...arguments),this.paramsConfig=cl}static type(){return\\\\\\\"keyboard\\\\\\\"}acceptedEventTypes(){return al.map((t=>`${t}`))}initializeNode(){this.io.outputs.setNamedOutputConnectionPoints(al.map((t=>new ta(t,Qo.KEYBOARD)))),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{const t=[this.p.keydown,this.p.keypress,this.p.keyup];this.params.label.init(t.concat([this.p.keyCodes]),(()=>`${t.map((t=>t.value?t.name():void 0)).filter((t=>t)).join(\\\\\\\", \\\\\\\")} (${this.pv.keyCodes})`))}))}))}processEvent(t){if(!this.pv.active)return;if(!t.event)return;const e=t.event;if(e.ctrlKey!=this.pv.ctrlKey)return;if(e.shiftKey!=this.pv.shiftKey)return;if(e.altKey!=this.pv.altKey)return;if(e.metaKey!=this.pv.metaKey)return;if(this.pv.keyCodes.trim().length>0){if(!this.pv.keyCodes.split(\\\\\\\" \\\\\\\").includes(e.code))return}this.dispatchEventToOutput(t.event.type,t)}}var ul;!function(t){t.resize=\\\\\\\"resize\\\\\\\"}(ul||(ul={}));const dl=[ul.resize];class pl extends pi{constructor(){super(...arguments),this._require_canvas_event_listeners=!0}type(){return\\\\\\\"window\\\\\\\"}acceptedEventTypes(){return dl.map((t=>`${t}`))}}const _l=new class extends ua{constructor(){super(...arguments),this.active=ha.BOOLEAN(!0,{callback:t=>{ml.PARAM_CALLBACK_updateRegister(t)},separatorAfter:!0}),this.element=ha.INTEGER(0,{hidden:!0}),this.resize=ha.BOOLEAN(1,qa)}};class ml extends Xa{constructor(){super(...arguments),this.paramsConfig=_l}static type(){return\\\\\\\"window\\\\\\\"}acceptedEventTypes(){return dl.map((t=>`${t}`))}initializeNode(){this.io.outputs.setNamedOutputConnectionPoints(dl.map((t=>new ta(t,Qo.POINTER)))),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{const t=[this.p.resize];this.params.label.init(t,(()=>t.map((t=>t.value?t.name():void 0)).filter((t=>t)).join(\\\\\\\", \\\\\\\")))}))}))}processEvent(t){this.pv.active&&t.event&&this.dispatchEventToOutput(t.event.type,t)}}var fl;!function(t){t.dragover=\\\\\\\"dragover\\\\\\\"}(fl||(fl={}));const gl=[fl.dragover];class vl extends pi{constructor(){super(...arguments),this._require_canvas_event_listeners=!0}type(){return\\\\\\\"drag\\\\\\\"}acceptedEventTypes(){return gl.map((t=>`${t}`))}}var yl;!function(t){t.touchstart=\\\\\\\"touchstart\\\\\\\",t.touchmove=\\\\\\\"touchmove\\\\\\\",t.touchend=\\\\\\\"touchend\\\\\\\"}(yl||(yl={}));const xl=[yl.touchstart,yl.touchmove,yl.touchend];class bl extends pi{constructor(){super(...arguments),this._require_canvas_event_listeners=!0}type(){return\\\\\\\"touch\\\\\\\"}acceptedEventTypes(){return xl.map((t=>`${t}`))}}const wl=new class extends ua{constructor(){super(...arguments),this.active=ha.BOOLEAN(!0,{callback:t=>{Tl.PARAM_CALLBACK_updateRegister(t)},separatorAfter:!0}),this.element=ha.INTEGER(ja.indexOf(Ha.CANVAS),{menu:{entries:ja.map(((t,e)=>({name:t,value:e})))},separatorAfter:!0}),this.dragover=ha.BOOLEAN(1,qa),this.ctrlKey=ha.BOOLEAN(0,{...qa,separatorBefore:!0}),this.altKey=ha.BOOLEAN(0,qa),this.shiftKey=ha.BOOLEAN(0,qa),this.metaKey=ha.BOOLEAN(0,qa)}};class Tl extends Xa{constructor(){super(...arguments),this.paramsConfig=wl}static type(){return\\\\\\\"drag\\\\\\\"}acceptedEventTypes(){return gl.map((t=>`${t}`))}initializeNode(){this.io.outputs.setNamedOutputConnectionPoints(gl.map((t=>new ta(t,Qo.DRAG)))),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{const t=[this.p.dragover];this.params.label.init(t,(()=>t.map((t=>t.value?t.name():void 0)).filter((t=>t)).join(\\\\\\\", \\\\\\\")))}))}))}processEvent(t){if(!this.pv.active)return;if(!t.event)return;const e=t.event;e.ctrlKey==this.pv.ctrlKey&&e.shiftKey==this.pv.shiftKey&&e.altKey==this.pv.altKey&&e.metaKey==this.pv.metaKey&&this.dispatchEventToOutput(t.event.type,t)}}const Al=new class extends ua{constructor(){super(...arguments),this.active=ha.BOOLEAN(!0,{callback:t=>{Ml.PARAM_CALLBACK_updateRegister(t)},separatorAfter:!0}),this.element=ha.INTEGER(ja.indexOf(Ha.CANVAS),{menu:{entries:ja.map(((t,e)=>({name:t,value:e})))},separatorAfter:!0}),this.touchstart=ha.BOOLEAN(1,qa),this.touchmove=ha.BOOLEAN(0,qa),this.touchend=ha.BOOLEAN(0,qa)}};class Ml extends Xa{constructor(){super(...arguments),this.paramsConfig=Al}static type(){return\\\\\\\"touch\\\\\\\"}acceptedEventTypes(){return xl.map((t=>`${t}`))}initializeNode(){this.io.outputs.setNamedOutputConnectionPoints(xl.map((t=>new ta(t,Qo.DRAG)))),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{const t=[this.p.touchstart,this.p.touchmove,this.p.touchend];this.params.label.init(t,(()=>t.map((t=>t.value?t.name():void 0)).filter((t=>t)).join(\\\\\\\", \\\\\\\")))}))}))}processEvent(t){this.pv.active&&t.event&&this.dispatchEventToOutput(t.event.type,t)}}class El{constructor(t){this.scene=t,this._controllers=[]}registerEventNode(t){const e=this._find_or_create_controller_for_node(t);e&&e.registerNode(t)}unregisterEventNode(t){const e=this._find_or_create_controller_for_node(t);e&&e.unregisterNode(t)}updateViewerEventListeners(t){const e=this._find_or_create_controller_for_node(t);e&&e.updateViewerEventListeners()}traverseControllers(t){for(let e of this._controllers)t(e)}_find_or_create_controller_for_node(t){switch(t.type()){case hl.type():return this.keyboardEventsController;case Ja.type():return this.mouseEventsController;case Tl.type():return this.dragEventsController;case el.type():return this.pointerEventsController;case rl.type():return this.sceneEventsController;case Ml.type():return this.touchEventsController;case ml.type():return this.windowEventsController}}get keyboardEventsController(){return this._keyboard_events_controller=this._keyboard_events_controller||this._create_controller(ll)}get mouseEventsController(){return this._mouse_events_controller=this._mouse_events_controller||this._create_controller(Ga)}get dragEventsController(){return this._drag_events_controller=this._drag_events_controller||this._create_controller(vl)}get pointerEventsController(){return this._pointer_events_controller=this._pointer_events_controller||this._create_controller(Qa)}get sceneEventsController(){return this._scene_events_controller=this._scene_events_controller||this._create_controller(fi)}get windowEventsController(){return this._window_events_controller=this._window_events_controller||this._create_controller(pl)}get touchEventsController(){return this._touch_events_controller=this._touch_events_controller||this._create_controller(bl)}_create_controller(t){const e=new t(this);return this._controllers.includes(e)||this._controllers.push(e),e}}class Sl{constructor(t){this.scene=t,this._referenced_nodes_by_src_param_id=new Map,this._referencing_params_by_referenced_node_id=new Map,this._referencing_params_by_all_named_node_ids=new Map}setReferenceFromParam(t,e){this._referenced_nodes_by_src_param_id.set(t.graphNodeId(),e),h.pushOnArrayAtEntry(this._referencing_params_by_referenced_node_id,e.graphNodeId(),t)}setNamedNodesFromParam(t){const e=t.decomposed_path.named_nodes();for(let n of e)h.pushOnArrayAtEntry(this._referencing_params_by_all_named_node_ids,n.graphNodeId(),t)}resetReferenceFromParam(t){const e=this._referenced_nodes_by_src_param_id.get(t.graphNodeId());if(e){h.popFromArrayAtEntry(this._referencing_params_by_referenced_node_id,e.graphNodeId(),t);const n=t.decomposed_path.named_nodes();for(let e of n)h.popFromArrayAtEntry(this._referencing_params_by_all_named_node_ids,e.graphNodeId(),t);this._referenced_nodes_by_src_param_id.delete(t.graphNodeId())}}referencing_params(t){return this._referencing_params_by_referenced_node_id.get(t.graphNodeId())}referencing_nodes(t){const e=this._referencing_params_by_referenced_node_id.get(t.graphNodeId());if(e){const t=new Map;for(let n of e){const e=n.node;t.set(e.graphNodeId(),e)}const n=[];return t.forEach((t=>{n.push(t)})),n}}nodes_referenced_by(t){const e=new Set([Cr.OPERATOR_PATH,Cr.NODE_PATH]),n=[];for(let i of t.params.all)e.has(i.type())&&n.push(i);const i=new Map,s=[];for(let t of n)this._check_param(t,i,s);for(let t of s)i.set(t.node.graphNodeId(),t.node);const r=[];return i.forEach((t=>{r.push(t)})),r}_check_param(t,e,n){if(t instanceof fo){const i=t.found_node(),s=t.found_param();return i&&e.set(i.graphNodeId(),i),void(s&&n.push(s))}}notifyNameUpdated(t){const e=this._referencing_params_by_all_named_node_ids.get(t.graphNodeId());if(e){const n=f.shallowClone(e);for(let e of n)e.notifyPathRebuildRequired(t)}}notifyParamsUpdated(t){const e=this._referencing_params_by_all_named_node_ids.get(t.graphNodeId());if(e){const n=f.shallowClone(e);for(let e of n)e.options.isSelectingParam()&&e.notifyTargetParamOwnerParamsUpdated(t)}}}var Cl;!function(t){t.MAX_FRAME_UPDATED=\\\\\\\"scene_maxFrameUpdated\\\\\\\",t.REALTIME_STATUS_UPDATED=\\\\\\\"scene_realtime_status_updated\\\\\\\",t.FRAME_UPDATED=\\\\\\\"scene_frame_updated\\\\\\\",t.PLAY_STATE_UPDATED=\\\\\\\"scene_play_state_updated\\\\\\\"}(Cl||(Cl={}));class Nl{constructor(t){this.scene=t,this._frame=0,this._time=0,this._realtimeState=!0,this._maxFrame=600,this._maxFrameLocked=!1,this._playing=!1,this._delta=0,this._graph_node=new Mi(t,\\\\\\\"time controller\\\\\\\")}get PLAY_EVENT_CONTEXT(){return this._PLAY_EVENT_CONTEXT=this._PLAY_EVENT_CONTEXT||{event:new Event(_i.PLAY)}}get PAUSE_EVENT_CONTEXT(){return this._PAUSE_EVENT_CONTEXT=this._PAUSE_EVENT_CONTEXT||{event:new Event(_i.PAUSE)}}get TICK_EVENT_CONTEXT(){return this._TICK_EVENT_CONTEXT=this._TICK_EVENT_CONTEXT||{event:new Event(_i.TICK)}}get graphNode(){return this._graph_node}frame(){return this._frame}time(){return this._time}maxFrame(){return this._maxFrame}maxFrameLocked(){return this._maxFrameLocked}realtimeState(){return this._realtimeState}setMaxFrame(t){this._maxFrame=Math.floor(t),this.scene.dispatchController.dispatch(this._graph_node,Cl.MAX_FRAME_UPDATED)}setMaxFrameLocked(t){this._maxFrameLocked=t,this.scene.dispatchController.dispatch(this._graph_node,Cl.MAX_FRAME_UPDATED)}setRealtimeState(t){this._realtimeState=t,this.scene.dispatchController.dispatch(this._graph_node,Cl.REALTIME_STATUS_UPDATED)}setTime(t,e=!0){var n,i;if(t!=this._time){if(this._time=t,null===(n=this._onBeforeTickCallbacks)||void 0===n||n.forEach((t=>t(this._delta))),e){const t=Math.floor(60*this._time),e=this._ensureFrameWithinBounds(t);t!=e?this.setFrame(e,!0):this._frame=t}this.scene.dispatchController.dispatch(this._graph_node,Cl.FRAME_UPDATED),this.scene.uniformsController.updateTimeDependentUniformOwners(),this.scene.cooker.block(),this.graphNode.setSuccessorsDirty(),this.scene.cooker.unblock(),this.scene.eventsDispatcher.sceneEventsController.processEvent(this.TICK_EVENT_CONTEXT),null===(i=this._onAfterTickCallbacks)||void 0===i||i.forEach((t=>t(this._delta)))}}setFrame(t,e=!0){t!=this._frame&&(t=this._ensureFrameWithinBounds(t))!=this._frame&&(this._frame=t,e&&this.setTime(this._frame/60,!1))}setFrameToStart(){this.setFrame(Nl.START_FRAME,!0)}incrementTimeIfPlaying(t){this._playing&&(this.scene.root().areChildrenCooking()||this.incrementTime(t))}incrementTime(t){if(this._realtimeState){this._delta=t;const e=this._time+this._delta;this.setTime(e)}else this.setFrame(this.frame()+1)}_ensureFrameWithinBounds(t){if(this._playing){if(this._maxFrameLocked&&t>this._maxFrame)return Nl.START_FRAME}else{if(this._maxFrameLocked&&t>this._maxFrame)return this._maxFrame;if(t<Nl.START_FRAME)return Nl.START_FRAME}return t}playing(){return!0===this._playing}pause(){1==this._playing&&(this._playing=!1,this.scene.dispatchController.dispatch(this._graph_node,Cl.PLAY_STATE_UPDATED),this.scene.eventsDispatcher.sceneEventsController.processEvent(this.PAUSE_EVENT_CONTEXT))}play(){!0!==this._playing&&(this._playing=!0,this.scene.dispatchController.dispatch(this._graph_node,Cl.PLAY_STATE_UPDATED),this.scene.eventsDispatcher.sceneEventsController.processEvent(this.PLAY_EVENT_CONTEXT))}togglePlayPause(){this.playing()?this.pause():this.play()}registerOnBeforeTick(t,e){this._registerCallback(t,e,this.registeredBeforeTickCallbacks())}unRegisterOnBeforeTick(t){this._unregisterCallback(t,this._onBeforeTickCallbacks)}registeredBeforeTickCallbacks(){return this._onBeforeTickCallbacks=this._onBeforeTickCallbacks||new Map}registerOnAfterTick(t,e){this._registerCallback(t,e,this.registeredAfterTickCallbacks())}unRegisterOnAfterTick(t){this._unregisterCallback(t,this._onAfterTickCallbacks)}registeredAfterTickCallbacks(){return this._onAfterTickCallbacks=this._onAfterTickCallbacks||new Map}_registerCallback(t,e,n){n.has(t)?console.warn(`callback ${t} already registered`):n.set(t,e)}_unregisterCallback(t,e){e&&e.delete(t)}}Nl.START_FRAME=0;class Ll{constructor(t){this.scene=t,this._time_dependent_uniform_owners={},this._time_dependent_uniform_owners_ids=null,this._resolution=new d.a(1,1),this._resolution_dependent_uniform_owners={},this._resolution_dependent_uniform_owners_ids=[]}addTimeDependentUniformOwner(t,e){this._time_dependent_uniform_owners[t]=e,this._time_dependent_uniform_owners_ids||(this._time_dependent_uniform_owners_ids=[]),this._time_dependent_uniform_owners_ids.includes(t)||this._time_dependent_uniform_owners_ids.push(t)}removeTimeDependentUniformOwner(t){if(delete this._time_dependent_uniform_owners[t],this._time_dependent_uniform_owners_ids){const e=this._time_dependent_uniform_owners_ids.indexOf(t);e>=0&&this._time_dependent_uniform_owners_ids.splice(e,1)}}updateTimeDependentUniformOwners(){const t=this.scene.time();if(this._time_dependent_uniform_owners_ids)for(let e of this._time_dependent_uniform_owners_ids){this._time_dependent_uniform_owners[e].time.value=t}}addResolutionDependentUniformOwner(t,e){this._resolution_dependent_uniform_owners[t]=e,this._resolution_dependent_uniform_owners_ids||(this._resolution_dependent_uniform_owners_ids=[]),this._resolution_dependent_uniform_owners_ids.includes(t)||this._resolution_dependent_uniform_owners_ids.push(t),this._resolution&&this.updateResolutionDependentUniforms(e)}removeResolutionDependentUniformOwner(t){if(delete this._resolution_dependent_uniform_owners[t],this._resolution_dependent_uniform_owners_ids){const e=this._resolution_dependent_uniform_owners_ids.indexOf(t);e>=0&&this._resolution_dependent_uniform_owners_ids.splice(e,1)}}updateResolutionDependentUniformOwners(t){this._resolution.copy(t);for(let t of this._resolution_dependent_uniform_owners_ids){const e=this._resolution_dependent_uniform_owners[t];this.updateResolutionDependentUniforms(e)}}updateResolutionDependentUniforms(t){t.resolution.value.x=this._resolution.x,t.resolution.value.y=this._resolution.y}}class Ol{constructor(t){this.scene=t,this._viewers_by_id=new Map}registerViewer(t){this._viewers_by_id.set(t.id(),t)}unregisterViewer(t){this._viewers_by_id.delete(t.id())}traverseViewers(t){this._viewers_by_id.forEach(t)}}class Pl{constructor(){this._require_webgl2=!1}require_webgl2(){return this._require_webgl2}set_require_webgl2(){this._require_webgl2||(this._require_webgl2=!0,li.renderersController.setRequireWebGL2())}}class Rl{constructor(t){this._scene=t,this._onWindowResizeBound=this._onWindowResize.bind(this)}graphNode(){return this._coreGraphNode=this._coreGraphNode||this._createGraphNode()}_createGraphNode(){const t=new Mi(this._scene,\\\\\\\"SceneWindowController\\\\\\\");return window.addEventListener(\\\\\\\"resize\\\\\\\",this._onWindowResizeBound),t}_onWindowResize(){this.graphNode().setSuccessorsDirty()}dispose(){window.removeEventListener(\\\\\\\"resize\\\\\\\",this._onWindowResizeBound)}}class Il{constructor(){this._params_by_id=new Map,this._assets_root=null}register_param(t){this._params_by_id.set(t.graphNodeId(),t)}deregister_param(t){this._params_by_id.delete(t.graphNodeId())}traverse_params(t){this._params_by_id.forEach(((e,n)=>{t(e)}))}root(){return this._assets_root}setRoot(t){\\\\\\\"\\\\\\\"==t&&(t=null),this._assets_root=t}}class Fl{constructor(){this._cameras_controller=new r(this),this._cooker=new o(this),this.cookController=new a,this._graph=new l,this._missing_expression_references_controller=new Ti(this),this._expressions_controller=new ui,this._nodes_controller=new Ba(this),this._objects_controller=new da(this),this._references_controller=new Sl(this),this._time_controller=new Nl(this),this._read_only=!1,this._graph.setScene(this),this.nodesController.init()}threejsScene(){return this.root().object}setUuid(t){return this._uuid=t}get uuid(){return this._uuid}setName(t){return t=ss.sanitizeName(t),this._name=t}name(){return this._name}get camerasController(){return this._cameras_controller}mainCameraNode(){return this.camerasController.mainCameraNode()}get cooker(){return this._cooker}get assets(){return this._assets_controller=this._assets_controller||new Il}async waitForCooksCompleted(){return this.cookController.waitForCooksCompleted()}get dispatchController(){return this._dispatch_controller=this._dispatch_controller||new hi(this)}get eventsDispatcher(){return this._events_dispatcher=this._events_dispatcher||new El(this)}get graph(){return this._graph}get lifecycleController(){return this._lifecycle_controller=this._lifecycle_controller||new di(this)}get loadingController(){return this._loading_controller=this._loading_controller||new gi(this)}get missingExpressionReferencesController(){return this._missing_expression_references_controller}get expressionsController(){return this._expressions_controller}get nodesController(){return this._nodes_controller}createNode(t,e){return this.root().createNode(t,e)}nodesByType(t){return this.nodesController.nodesByType(t)}get objectsController(){return this._objects_controller}findObjectByMask(t){return this._objects_controller.findObjectByMask(t)}objectsByMask(t){return this._objects_controller.objectsByMask(t)}get referencesController(){return this._references_controller}get performance(){return this._performance=this._performance||new ci}get viewersRegister(){return this._viewers_register=this._viewers_register||new Ol(this)}get timeController(){return this._time_controller}setFrame(t){this.timeController.setFrame(t)}setFrameToStart(){this.timeController.setFrameToStart()}frame(){return this.timeController.frame()}time(){return this.timeController.time()}maxFrame(){return this.timeController.maxFrame()}play(){this.timeController.play()}pause(){this.timeController.pause()}get serializer(){return this._serializer=this._serializer||new za(this)}toJSON(){return this.serializer.toJSON()}markAsReadOnly(t){this._read_only||(this._read_only_requester=t,this._read_only=!0)}readOnly(){return this._read_only}readOnlyRequester(){return this._read_only_requester}get uniformsController(){return this._uniformsController=this._uniformsController||new Ll(this)}get webgl_controller(){return this._webgl_controller=this._webgl_controller||new Pl}get windowController(){return this._windowController=this._windowController||new Rl(this)}dispose(){var t;null===(t=this._windowController)||void 0===t||t.dispose()}batchUpdates(t){this._cooker.block(),t(),this._cooker.unblock()}node(t){return this.nodesController.node(t)}root(){return this.nodesController.root()}registerOnBeforeTick(t,e){this.timeController.registerOnBeforeTick(t,e)}unRegisterOnBeforeTick(t){this.timeController.unRegisterOnBeforeTick(t)}registeredBeforeTickCallbacks(){return this.timeController.registeredBeforeTickCallbacks()}registerOnAfterTick(t,e){this.timeController.registerOnAfterTick(t,e)}unRegisterOnAfterTick(t){this.timeController.unRegisterOnAfterTick(t)}registeredAfterTickCallbacks(){return this.timeController.registeredAfterTickCallbacks()}}class Dl{constructor(t){this._param=t}process_data(t){const e=t.raw_input;void 0!==e&&this._param.set(e),this.add_main(t)}add_main(t){}static spare_params_data(t){return this.params_data(!0,t)}static non_spare_params_data_value(t){return this.params_data_value(!1,t)}static params_data(t,e){let n;if(e){n={};const t=Object.keys(e);let i;for(let s of t)i=e[s],i&&(n[s]=e)}return n}static params_data_value(t,e){let n;if(e){n={};const i=Object.keys(e);let s;for(let r of i)if(s=e[r],null!=s){const e=s.options,i=s.overriden_options;if(e||i){const o=s;e&&e.spare==t?null!=o.raw_input&&(n[r]={complex_data:o}):i&&(n[r]={complex_data:o})}else{const t=s;(i||null!=t)&&(n[r]={simple_data:t})}}}return n}}const Bl=\\\\\\\"operationsComposer\\\\\\\";class zl{constructor(t,e,n){this._scene=t,this.states=e,this._node=n}static type(){throw\\\\\\\"type to be overriden\\\\\\\"}type(){return this.constructor.type()}static context(){throw console.error(\\\\\\\"operation has no node_context\\\\\\\",this),\\\\\\\"context requires override\\\\\\\"}context(){return this.constructor.context()}scene(){return this._scene}cook(t,e){}}zl.DEFAULT_PARAMS={},zl.INPUT_CLONED_STATE=[];class kl{constructor(t){this._node=t,this._nodes=[],this._optimized_root_node_names=new Set,this._operation_containers_by_name=new Map,this._node_inputs=[]}nodes(){return this._nodes}process_data(t,e){var n,i,s;if(!e)return;if(!this._node.childrenAllowed()||!this._node.childrenController)return;const{optimized_names:r}=kl.child_names_by_optimized_state(e);this._nodes=[],this._optimized_root_node_names=new Set;for(let t of r)kl.is_optimized_root_node(e,t)&&this._optimized_root_node_names.add(t);for(let r of this._optimized_root_node_names){const o=e[r],a=this._node.createNode(Bl);if(a){a.setName(r),this._nodes.push(a),(null===(n=o.flags)||void 0===n?void 0:n.display)&&(null===(s=null===(i=a.flags)||void 0===i?void 0:i.display)||void 0===s||s.set(!0));const e=this._create_operation_container(t,a,o,a.name());a.set_output_operation_container(e)}}for(let n of this._nodes){const i=n.output_operation_container();if(i){this._node_inputs=[],this._add_optimized_node_inputs(t,n,e,n.name(),i),n.io.inputs.setCount(this._node_inputs.length);for(let t=0;t<this._node_inputs.length;t++)n.setInput(t,this._node_inputs[t])}}}_add_optimized_node_inputs(t,e,n,i,s){var r;const o=n[i],a=o.inputs;if(a){for(let i of a)if(m.isString(i)){const o=n[i];if(o)if(kl.is_node_optimized(o)&&!this._optimized_root_node_names.has(i)){let r=this._operation_containers_by_name.get(i);r||(r=this._create_operation_container(t,e,o,i),r&&this._add_optimized_node_inputs(t,e,n,i,r)),s.add_input(r)}else{const t=null===(r=e.parent())||void 0===r?void 0:r.node(i);if(t){this._node_inputs.push(t);const n=this._node_inputs.length-1;e.add_input_config(s,{operation_input_index:s.current_input_index(),node_input_index:n}),s.increment_input_index()}}}1==o.cloned_state_overriden&&s.override_input_clone_state(o.cloned_state_overriden)}}static child_names_by_optimized_state(t){const e=Object.keys(t),n=[],i=[];for(let s of e){const e=t[s];li.playerMode()&&this.is_node_optimized(e)?n.push(s):i.push(s)}return{optimized_names:n,non_optimized_names:i}}static is_optimized_root_node_generic(t){return 0==t.outputs_count||t.non_optimized_count>0}static is_optimized_root_node(t,e){const n=this.node_outputs(t,e);let i=0;return n.forEach((e=>{const n=t[e];this.is_node_optimized(n)||i++})),this.is_optimized_root_node_generic({outputs_count:n.size,non_optimized_count:i})}static is_optimized_root_node_from_node(t){var e,n,i,s;if(!(null===(n=null===(e=t.flags)||void 0===e?void 0:e.optimize)||void 0===n?void 0:n.active()))return!1;const r=t.io.connections.outputConnections().map((t=>t.node_dest));let o=0;for(let t of r)(null===(s=null===(i=t.flags)||void 0===i?void 0:i.optimize)||void 0===s?void 0:s.active())||o++;return this.is_optimized_root_node_generic({outputs_count:r.length,non_optimized_count:o})}static node_outputs(t,e){const n=Object.keys(t),i=new Set;for(let s of n)if(s!=e){const n=t[s].inputs;if(n)for(let t of n)if(m.isString(t)){t==e&&i.add(s)}}return i}_create_operation_container(t,e,n,i){const s=Dl.non_spare_params_data_value(n.params),r=kl.operation_type(n),o=this._node.create_operation_container(r,i,s);return o&&(this._operation_containers_by_name.set(i,o),o.path_param_resolve_required()&&(e.add_operation_container_with_path_param_resolve_required(o),t.add_operations_composer_node_with_path_param_resolve_required(e))),o}static operation_type(t){return kl.is_node_bypassed(t)?\\\\\\\"null\\\\\\\":t.type}static is_node_optimized(t){const e=t.flags;return!(!e||!e.optimize)}static is_node_bypassed(t){const e=t.flags;return!(!e||!e.bypass)}}class Ul{constructor(t){this._node=t}process_data(t,e){var n;if(!e)return;if(!this._node.childrenAllowed()||!this._node.childrenController)return;const{optimized_names:i,non_optimized_names:s}=kl.child_names_by_optimized_state(e),r=[];for(let n of s){const i=e[n],s=i.type.toLowerCase(),o=Dl.non_spare_params_data_value(i.params);try{const t=this._node.createNode(s,o);t&&(t.setName(n),r.push(t))}catch(e){console.error(`error importing node: cannot create with type ${s}`,e);const i=ss.camelCase(s);try{const t=this._node.createNode(i,o);t&&(t.setName(n),r.push(t))}catch(e){const a=`${s}Network`;try{const t=this._node.createNode(a,o);t&&(t.setName(n),r.push(t))}catch(e){const n=`failed to create node with type '${s}', '${i}' or '${a}'`;t.report.addWarning(n),li.warn(n,e)}}}}if(i.length>0){const i=new kl(this._node);if(i.process_data(t,e),this._node.childrenController.context==ts.SOP){const t=Object.keys(e);let s;for(let i of t){(null===(n=e[i].flags)||void 0===n?void 0:n.display)&&(s=i)}if(s){const t=r.map((t=>t.name())),e=i.nodes();for(let n of e)t.push(n.name());if(!t.includes(s)){const t=`node '${`${this._node.path()}/${s}`}' with display flag has been optimized and does not exist in player mode`;console.error(t)}}}}const o=new Map;for(let n of r){if(e[n.name()]){const i=Yl.dispatch_node(n);o.set(n.name(),i),i.process_data(t,e[n.name()])}else li.warn(`possible import error for node ${n.name()}`)}for(let t of r){const n=o.get(t.name());n&&n.process_inputs_data(e[t.name()])}}}const Gl=[\\\\\\\"overriden_options\\\\\\\",\\\\\\\"type\\\\\\\"];class Vl{constructor(t){this._node=t}process_data(t,e){if(this.set_connection_points(e.connection_points),this._node.childrenAllowed()&&this.create_nodes(t,e.nodes),this.set_selection(e.selection),this._node.io.inputs.overrideClonedStateAllowed()){const t=e.cloned_state_overriden;t&&this._node.io.inputs.overrideClonedState(t)}this.set_flags(e),this.set_params(e.params),e.persisted_config&&this.set_persisted_config(e.persisted_config),this.from_data_custom(e)}process_inputs_data(t){const e=t.maxInputsCount;if(null!=e){const t=this._node.io.inputs.minCount();this._node.io.inputs.setCount(t,e)}this.setInputs(t.inputs)}process_ui_data(t,e){if(!e)return;if(li.playerMode())return;const n=this._node.uiData,i=e.pos;if(i){const t=(new d.a).fromArray(i);n.setPosition(t)}const s=e.comment;s&&n.setComment(s),this._node.childrenAllowed()&&this.process_nodes_ui_data(t,e.nodes)}create_nodes(t,e){if(!e)return;new Ul(this._node).process_data(t,e)}set_selection(t){if(this._node.childrenAllowed()&&this._node.childrenController&&t&&t.length>0){const e=[];t.forEach((t=>{const n=this._node.node(t);n&&e.push(n)})),this._node.childrenController.selection.set(e)}}set_flags(t){var e,n,i,s,r,o;const a=t.flags;if(a){const t=a.bypass;null!=t&&(null===(n=null===(e=this._node.flags)||void 0===e?void 0:e.bypass)||void 0===n||n.set(t));const l=a.display;null!=l&&(null===(s=null===(i=this._node.flags)||void 0===i?void 0:i.display)||void 0===s||s.set(l));const c=a.optimize;null!=c&&(null===(o=null===(r=this._node.flags)||void 0===r?void 0:r.optimize)||void 0===o||o.set(c))}}set_connection_points(t){t&&(t.in&&this._node.io.saved_connection_points_data.set_in(t.in),t.out&&this._node.io.saved_connection_points_data.set_out(t.out),this._node.io.has_connection_points_controller&&this._node.io.connection_points.update_signature_if_required())}setInputs(t){if(!t)return;let e;for(let n=0;n<t.length;n++)if(e=t[n],e&&this._node.parent())if(m.isString(e)){const t=e,i=this._node.nodeSibbling(t);this._node.setInput(n,i)}else{const t=this._node.nodeSibbling(e.node),n=e.index;this._node.setInput(n,t,e.output)}}process_nodes_ui_data(t,e){if(!e)return;if(li.playerMode())return;const n=Object.keys(e);for(let i of n){const n=this._node.node(i);if(n){const s=e[i];Yl.dispatch_node(n).process_ui_data(t,s)}}}set_params(t){if(!t)return;const e=Object.keys(t),n={};for(let i of e){const e=t[i],s=e.options;0;const r=e.type;let o,a=!1;this._node.params.has_param(i)&&(o=this._node.params.get(i),(o&&o.type()==r||null==r)&&(a=!0)),a?this._is_param_data_complex(e)?this._process_param_data_complex(i,e):this._process_param_data_simple(i,e):(n.namesToDelete=n.namesToDelete||[],n.namesToDelete.push(i),n.toAdd=n.toAdd||[],n.toAdd.push({name:i,type:r,init_value:e.default_value,raw_input:e.raw_input,options:s}))}const i=n.namesToDelete&&n.namesToDelete.length>0,s=n.toAdd&&n.toAdd.length>0;if(i||s){this._node.params.updateParams(n);for(let e of this._node.params.spare){const n=t[e.name()];!e.parent_param&&n&&(this._is_param_data_complex(n)?this._process_param_data_complex(e.name(),n):this._process_param_data_simple(e.name(),n))}}this._node.params.runOnSceneLoadHooks()}_process_param_data_simple(t,e){var n;null===(n=this._node.params.get(t))||void 0===n||n.set(e)}_process_param_data_complex(t,e){const n=this._node.params.get(t);n&&Yl.dispatch_param(n).process_data(e)}_is_param_data_complex(t){if(m.isString(t)||m.isNumber(t)||m.isArray(t)||m.isBoolean(t))return!1;if(m.isObject(t)){const e=Object.keys(t);for(let t of Gl)if(e.includes(t))return!0}return!1}set_persisted_config(t){this._node.persisted_config&&this._node.persisted_config.load(t)}from_data_custom(t){}}class Hl extends Dl{add_main(t){}}const jl=/\\\\\\\\n+/g;class Wl extends Dl{add_main(t){let e=t.raw_input;void 0!==e&&(e=e.replace(jl,\\\\\\\"\\\\n\\\\\\\"),this._param.set(e))}}class ql extends Dl{add_main(t){const e=t.raw_input;e&&this._param.set(e)}}class Xl extends Vl{create_nodes(t,e){const n=this._node.polyNodeController;n&&n.createChildNodesFromDefinition()}}class Yl{static dispatch_node(t){return t.polyNodeController?new Xl(t):new Vl(t)}static dispatch_param(t){return t instanceof ao?new Hl(t):t instanceof Mo?new Wl(t):t instanceof Ao?new ql(t):new Dl(t)}}class $l{constructor(t){this._warnings=[]}warnings(){return this._warnings}reset(){this._warnings=[]}addWarning(t){this._warnings.push(t)}}class Jl{constructor(t){this._data=t,this.report=new $l(this)}static async loadData(t){const e=new Jl(t);return await e.scene()}async scene(){const t=new Fl;t.loadingController.markAsLoading();const e=this._data.properties;if(e){const n=e.maxFrame||600;t.timeController.setMaxFrame(n);const i=e.maxFrameLocked;i&&t.timeController.setMaxFrameLocked(i);const s=e.realtimeState;null!=s&&t.timeController.setRealtimeState(s),t.setFrame(e.frame||Nl.START_FRAME),e.mainCameraNodePath&&t.camerasController.setMainCameraNodePath(e.mainCameraNodePath)}t.cooker.block(),this._base_operations_composer_nodes_with_resolve_required=void 0;const n=Yl.dispatch_node(t.root());return this._data.root&&n.process_data(this,this._data.root),this._data.ui&&n.process_ui_data(this,this._data.ui),this._resolve_operation_containers_with_path_param_resolve(),await t.loadingController.markAsLoaded(),t.cooker.unblock(),t}add_operations_composer_node_with_path_param_resolve_required(t){this._base_operations_composer_nodes_with_resolve_required||(this._base_operations_composer_nodes_with_resolve_required=[]),this._base_operations_composer_nodes_with_resolve_required.push(t)}_resolve_operation_containers_with_path_param_resolve(){if(this._base_operations_composer_nodes_with_resolve_required)for(let t of this._base_operations_composer_nodes_with_resolve_required)t.resolve_operation_containers_path_params()}}class Zl{static async importSceneData(t){null==t.editorMode&&(t.editorMode=!1);const{manifest:e,urlPrefix:n}=t,i=Object.keys(e.nodes),s=[];for(let t of i){const i=`${n}/root/${t}.json?t=${e.nodes[t]}`;s.push(i)}const r=[`${n}/root.json?t=${e.root}`,`${n}/properties.json?t=${e.properties}`];if(t.editorMode){const t=Date.now();r.push(`${n}/ui.json?t=${t}`)}for(let t of s)r.push(t);let o=0;const a=r.length,l=r.map((async e=>{const n=await fetch(e);return t.onProgress&&(o++,t.onProgress({count:o,total:a})),n})),c=await Promise.all(l),h=[];for(let t of c)h.push(await t.json());const u={root:h[0],properties:h[1]};let d=2;t.editorMode&&(u.ui=h[2],d+=1);const p={},_=Object.keys(e.nodes);for(let t=0;t<_.length;t++){const e=_[t],n=h[t+d];p[e]=n}return this.assemble(u,_,p)}static async assemble(t,e,n){const i={root:t.root,properties:t.properties,ui:t.ui};for(let t=0;t<e.length;t++){const s=e[t],r=n[s];this.insert_child_data(i.root,s,r)}return i}static insert_child_data(t,e,n){const i=e.split(\\\\\\\"/\\\\\\\");if(1==i.length)t.nodes||(t.nodes={}),t.nodes[e]=n;else{const e=i.shift(),s=i.join(\\\\\\\"/\\\\\\\"),r=t.nodes[e];this.insert_child_data(r,s,n)}}}async function Kl(t){const e=t.scenesSrcRoot||\\\\\\\"/src/polygonjs/scenes\\\\\\\",n=t.scenesSrcRoot||\\\\\\\"/public/polygonjs/scenes\\\\\\\",i=t.sceneName;const s=await async function(){const t=await fetch(`${e}/${i}/manifest.json`);return await t.json()}(),r=await async function(t){return await Zl.importSceneData({manifest:t,urlPrefix:`${n}/${i}`})}(s);return await async function(e){const n=new Jl(e),i=await n.scene(),s=i.mainCameraNode();if(!s)return void console.warn(\\\\\\\"no master camera found\\\\\\\");const r=m.isString(t.domElement)?document.getElementById(t.domElement):t.domElement;if(!r)return void console.warn(\\\\\\\"no element to mount the viewer onto\\\\\\\");const o=s.createViewer(r);return{scene:i,cameraNode:s,viewer:o}}(r)}const Ql=\\\\\\\"networks\\\\\\\",tc=\\\\\\\"misc\\\\\\\",ec=\\\\\\\"modifiers\\\\\\\",nc=Ql,ic=\\\\\\\"prop\\\\\\\",sc=\\\\\\\"timing\\\\\\\",rc=\\\\\\\"advanced\\\\\\\",oc=\\\\\\\"inputs\\\\\\\",ac=\\\\\\\"misc\\\\\\\",lc=Ql,cc=\\\\\\\"cameras\\\\\\\",hc=\\\\\\\"inputs\\\\\\\",uc=\\\\\\\"misc\\\\\\\",dc=\\\\\\\"scene\\\\\\\",pc=Ql,_c=\\\\\\\"color\\\\\\\",mc=\\\\\\\"conversion\\\\\\\",fc=\\\\\\\"geometry\\\\\\\",gc=\\\\\\\"globals\\\\\\\",vc=\\\\\\\"lighting\\\\\\\",yc=\\\\\\\"logic\\\\\\\",xc=\\\\\\\"math\\\\\\\",bc=\\\\\\\"physics\\\\\\\",wc=\\\\\\\"quat\\\\\\\",Tc=\\\\\\\"trigo\\\\\\\",Ac=\\\\\\\"util\\\\\\\",Mc=\\\\\\\"globals\\\\\\\",Ec=\\\\\\\"advanced\\\\\\\",Sc=\\\\\\\"lines\\\\\\\",Cc=\\\\\\\"meshes\\\\\\\",Nc=Ql,Lc=\\\\\\\"points\\\\\\\",Oc=\\\\\\\"volumes\\\\\\\",Pc=\\\\\\\"advanced\\\\\\\",Rc=\\\\\\\"audio\\\\\\\",Ic=\\\\\\\"cameras\\\\\\\",Fc=\\\\\\\"geometries\\\\\\\",Dc=\\\\\\\"lights\\\\\\\",Bc=Ql,zc=\\\\\\\"transform\\\\\\\",kc=\\\\\\\"css\\\\\\\",Uc=Ql,Gc=\\\\\\\"webgl\\\\\\\",Vc=\\\\\\\"advanced\\\\\\\",Hc=\\\\\\\"animation\\\\\\\",jc=\\\\\\\"attributes\\\\\\\",Wc=\\\\\\\"dynamics\\\\\\\",qc=\\\\\\\"inputs\\\\\\\",Xc=\\\\\\\"lights\\\\\\\",Yc=\\\\\\\"misc\\\\\\\",$c=\\\\\\\"modifiers\\\\\\\",Jc=Ql,Zc=\\\\\\\"primitives\\\\\\\",Kc=\\\\\\\"render\\\\\\\",Qc=\\\\\\\"blur\\\\\\\",th=\\\\\\\"color\\\\\\\",eh=\\\\\\\"effect\\\\\\\",nh=\\\\\\\"misc\\\\\\\",ih=Ql,sh=\\\\\\\"input animation clip\\\\\\\",rh=[sh,sh,sh,sh];class oh extends aa{constructor(){super(...arguments),this.flags=new Bi(this)}static context(){return ts.ANIM}static displayedInputNames(){return rh}initializeBaseNode(){this.io.outputs.setHasOneOutput()}setTimelineBuilder(t){this._setContainer(t)}}class ah extends Mi{constructor(t){super(t,\\\\\\\"CopyStamp\\\\\\\"),this._global_index=0}set_global_index(t){this._global_index=t,this.setDirty(),this.removeDirtyState()}value(t){return this._global_index}}class lh extends ah{}var ch,hh=n(8);!function(t){t.NONE=\\\\\\\"none\\\\\\\",t.POWER1=\\\\\\\"power1\\\\\\\",t.POWER2=\\\\\\\"power2\\\\\\\",t.POWER3=\\\\\\\"power3\\\\\\\",t.POWER4=\\\\\\\"power4\\\\\\\",t.BACK=\\\\\\\"back\\\\\\\",t.ELASTIC=\\\\\\\"elastic\\\\\\\",t.BOUNCE=\\\\\\\"bounce\\\\\\\",t.SLOW=\\\\\\\"slow\\\\\\\",t.STEPS=\\\\\\\"steps\\\\\\\",t.CIRC=\\\\\\\"circ\\\\\\\",t.EXPO=\\\\\\\"expo\\\\\\\",t.SINE=\\\\\\\"sine\\\\\\\"}(ch||(ch={}));const uh=[ch.NONE,ch.POWER1,ch.POWER2,ch.POWER3,ch.POWER4,ch.BACK,ch.ELASTIC,ch.BOUNCE,ch.SLOW,ch.STEPS,ch.CIRC,ch.EXPO,ch.SINE];var dh;!function(t){t.IN=\\\\\\\"in\\\\\\\",t.OUT=\\\\\\\"out\\\\\\\",t.IN_OUT=\\\\\\\"inOut\\\\\\\"}(dh||(dh={}));const ph=[dh.IN,dh.OUT,dh.IN_OUT];class _h{constructor(){this._debug=!1}setName(t){this._propertyName=t}setTargetValue(t){this._targetValue=t}name(){return this._propertyName}targetValue(){return this._targetValue}setDebug(t){this._debug=t}_printDebug(t){this._debug&&console.log(t)}clone(){const t=new _h;if(this._propertyName&&t.setName(this._propertyName),null!=this._targetValue){const e=m.isNumber(this._targetValue)?this._targetValue:this._targetValue.clone();t.setTargetValue(e)}return t}addToTimeline(t,e,n){const i=n.objects();i&&this._populateWithObjects(i,t,e);const s=n.node();s&&this._populateWithNode(s,t,e)}_populateWithObjects(t,e,n){if(this._printDebug([\\\\\\\"_populateWithObjects\\\\\\\",t]),!this._propertyName)return void li.warn(\\\\\\\"no property name given\\\\\\\");if(null==this._targetValue)return void li.warn(\\\\\\\"no target value given\\\\\\\");const i=e.operation(),s=e.updateCallback();for(let r of t){const t=this._sceneGraphProps(r,this._propertyName);if(t){let{targetProperty:o,toTarget:a,propertyNames:l}=t;const c=this._commonVars(e);if(s&&s.updateMatrix()){const t=r.matrixAutoUpdate;c.onStart=()=>{r.matrixAutoUpdate=!0},c.onComplete=()=>{r.matrixAutoUpdate=t,r.matrixAutoUpdate||r.updateMatrix()}}if(o instanceof hh.a&&this._targetValue instanceof hh.a){const t={value:0},e=o,n=(new hh.a).copy(o),i=this._targetValue;c.onUpdate=()=>{e.slerpQuaternions(n,i,t.value)},a=t,c.value=1}if(m.isNumber(this._targetValue)){if(m.isNumber(o))for(let t of l)c[t]=this.withOp(o,this._targetValue,i)}else if(!m.isNumber(o))for(let t of l)c[t]=this.withOp(o[t],this._targetValue[t],i);a&&this._startTimeline(e,n,c,a)}}}_sceneGraphProps(t,e){const n=e.split(\\\\\\\".\\\\\\\");if(!(n.length>1)){const n=t[e];let i=null;const s=[];return m.isNumber(n)?(i=t,s.push(e)):(i=n,this._targetValue instanceof d.a&&s.push(\\\\\\\"x\\\\\\\",\\\\\\\"y\\\\\\\"),this._targetValue instanceof p.a&&s.push(\\\\\\\"x\\\\\\\",\\\\\\\"y\\\\\\\",\\\\\\\"z\\\\\\\"),this._targetValue instanceof _.a&&s.push(\\\\\\\"x\\\\\\\",\\\\\\\"y\\\\\\\",\\\\\\\"z\\\\\\\",\\\\\\\"w\\\\\\\"),this._targetValue,hh.a),{targetProperty:n,toTarget:i,propertyNames:s}}{const e=t[n.shift()];if(e){const t=n.join(\\\\\\\".\\\\\\\");return this._sceneGraphProps(e,t)}}}_populateWithNode(t,e,n){this._printDebug([\\\\\\\"_populateWithNode\\\\\\\",t]);const i=t.p[this._propertyName];this._printDebug([\\\\\\\"targetParam\\\\\\\",i]),i?i&&this._populateVarsForParam(i,e,n):li.warn(`${this._propertyName} not found on node ${t.path()}`)}_populateVarsForParam(t,e,n){switch(this._printDebug([\\\\\\\"_populateVarsForParam\\\\\\\",t]),t.type()){case Cr.INTEGER:return this._populateVarsForParamInteger(t,e,n);case Cr.FLOAT:return this._populateVarsForParamFloat(t,e,n);case Cr.VECTOR2:return this._populateVarsForParamVector2(t,e,n);case Cr.VECTOR3:return this._populateVarsForParamVector3(t,e,n);case Cr.COLOR:return this._populateVarsForParamColor(t,e,n);case Cr.VECTOR4:return this._populateVarsForParamVector4(t,e,n)}li.warn(`param type cannot be animated (yet): '${t.type()}' '${t.path()}'`)}_populateVarsForParamInteger(t,e,n){if(!m.isNumber(this._targetValue))return void li.warn(`TimelineBuilderProperty error: cannot animate integer param '${t.path()}' with targetValue`,this._targetValue);const i=this._commonVars(e),s={num:t.value};i.onUpdate=()=>{t.set(s.num)};const r=e.operation();i.num=this.withOp(t.value,this._targetValue,r),this._startTimeline(e,n,i,s)}_populateVarsForParamFloat(t,e,n){if(!m.isNumber(this._targetValue))return void li.warn(`TimelineBuilderProperty error: cannot animate float param '${t.path()}' with targetValue`,this._targetValue);const i=this._commonVars(e),s={num:t.value};i.onUpdate=()=>{t.set(s.num)};const r=e.operation();i.num=this.withOp(t.value,this._targetValue,r),this._startTimeline(e,n,i,s)}_populateVarsForParamVector2(t,e,n){if(!(this._targetValue instanceof d.a))return void li.warn(`TimelineBuilderProperty error: cannot animate vector2 param '${t.path()}' with targetValue`,this._targetValue);const i=this._commonVars(e),s=t.value.clone(),r=[0,0];i.onUpdate=()=>{s.toArray(r),t.set(r)};const o=e.operation();i.x=this.withOp(t.value.x,this._targetValue.x,o),i.y=this.withOp(t.value.y,this._targetValue.y,o),this._startTimeline(e,n,i,s)}_populateVarsForParamVector3(t,e,n){if(!(this._targetValue instanceof p.a))return void li.warn(`TimelineBuilderProperty error: cannot animate vector3 param '${t.path()}' with targetValue`,this._targetValue);const i=this._commonVars(e),s=t.value.clone(),r=[0,0,0];i.onUpdate=()=>{s.toArray(r),t.set(r)};const o=e.operation();i.x=this.withOp(t.value.x,this._targetValue.x,o),i.y=this.withOp(t.value.y,this._targetValue.y,o),i.z=this.withOp(t.value.z,this._targetValue.z,o),this._startTimeline(e,n,i,s)}_populateVarsForParamVector4(t,e,n){if(!(this._targetValue instanceof _.a))return void li.warn(`TimelineBuilderProperty error: cannot animate vector4 param '${t.path()}' with targetValue`,this._targetValue);const i=this._commonVars(e),s=t.value.clone(),r=[0,0,0,0];i.onUpdate=()=>{s.toArray(r),t.set(r)};const o=e.operation();i.x=this.withOp(t.value.x,this._targetValue.x,o),i.y=this.withOp(t.value.y,this._targetValue.y,o),i.z=this.withOp(t.value.z,this._targetValue.z,o),i.w=this.withOp(t.value.w,this._targetValue.w,o),this._startTimeline(e,n,i,s)}_populateVarsForParamColor(t,e,n){if(!(this._targetValue instanceof p.a))return void li.warn(`TimelineBuilderProperty error: cannot animate color param '${t.path()}' with targetValue`,this._targetValue);const i=this._commonVars(e),s=t.valuePreConversion(),r=new p.a(s.r,s.g,s.b),o=[0,0,0];i.onUpdate=()=>{r.toArray(o),t.set(o)};const a=e.operation();i.x=this.withOp(t.value.r,this._targetValue.x,a),i.y=this.withOp(t.value.g,this._targetValue.y,a),i.z=this.withOp(t.value.b,this._targetValue.z,a),this._startTimeline(e,n,i,r)}withOp(t,e,n){switch(n){case I_.SET:return e;case I_.ADD:return t+e;case I_.SUBSTRACT:return t-e}os.unreachable(n)}_commonVars(t){const e={duration:t.duration()},n=t.easing()||ch.NONE;n&&(e.ease=n);const i=t.delay();null!=i&&(e.delay=i);const s=t.repeatParams();return s&&(e.repeat=s.count,e.repeatDelay=s.delay,e.yoyo=s.yoyo),e}_startTimeline(t,e,n,i){const s=t.position(),r=s?s.toParameter():void 0;e.to(i,n,r)}}function mh(t){if(void 0===t)throw new ReferenceError(\\\\\\\"this hasn't been initialised - super() hasn't been called\\\\\\\");return t}function fh(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t,t.__proto__=e}var gh,vh,yh,xh,bh,wh,Th,Ah,Mh,Eh,Sh,Ch,Nh,Lh={autoSleep:120,force3D:\\\\\\\"auto\\\\\\\",nullTargetWarn:1,units:{lineHeight:\\\\\\\"\\\\\\\"}},Oh={duration:.5,overwrite:!1,delay:0},Ph=1e8,Rh=1e-8,Ih=2*Math.PI,Fh=Ih/4,Dh=0,Bh=Math.sqrt,zh=Math.cos,kh=Math.sin,Uh=function(t){return\\\\\\\"string\\\\\\\"==typeof t},Gh=function(t){return\\\\\\\"function\\\\\\\"==typeof t},Vh=function(t){return\\\\\\\"number\\\\\\\"==typeof t},Hh=function(t){return void 0===t},jh=function(t){return\\\\\\\"object\\\\\\\"==typeof t},Wh=function(t){return!1!==t},qh=function(){return\\\\\\\"undefined\\\\\\\"!=typeof window},Xh=function(t){return Gh(t)||Uh(t)},Yh=\\\\\\\"function\\\\\\\"==typeof ArrayBuffer&&ArrayBuffer.isView||function(){},$h=Array.isArray,Jh=/(?:-?\\\\.?\\\\d|\\\\.)+/gi,Zh=/[-+=.]*\\\\d+[.e\\\\-+]*\\\\d*[e\\\\-+]*\\\\d*/g,Kh=/[-+=.]*\\\\d+[.e-]*\\\\d*[a-z%]*/g,Qh=/[-+=.]*\\\\d+\\\\.?\\\\d*(?:e-|e\\\\+)?\\\\d*/gi,tu=/[+-]=-?[.\\\\d]+/,eu=/[^,'\\\\\\\"\\\\[\\\\]\\\\s]+/gi,nu=/[\\\\d.+\\\\-=]+(?:e[-+]\\\\d*)*/i,iu={},su={},ru=function(t){return(su=Ou(t,iu))&&vp},ou=function(t,e){return console.warn(\\\\\\\"Invalid property\\\\\\\",t,\\\\\\\"set to\\\\\\\",e,\\\\\\\"Missing plugin? gsap.registerPlugin()\\\\\\\")},au=function(t,e){return!e&&console.warn(t)},lu=function(t,e){return t&&(iu[t]=e)&&su&&(su[t]=e)||iu},cu=function(){return 0},hu={},uu=[],du={},pu={},_u={},mu=30,fu=[],gu=\\\\\\\"\\\\\\\",vu=function(t){var e,n,i=t[0];if(jh(i)||Gh(i)||(t=[t]),!(e=(i._gsap||{}).harness)){for(n=fu.length;n--&&!fu[n].targetTest(i););e=fu[n]}for(n=t.length;n--;)t[n]&&(t[n]._gsap||(t[n]._gsap=new Hd(t[n],e)))||t.splice(n,1);return t},yu=function(t){return t._gsap||vu(ld(t))[0]._gsap},xu=function(t,e,n){return(n=t[e])&&Gh(n)?t[e]():Hh(n)&&t.getAttribute&&t.getAttribute(e)||n},bu=function(t,e){return(t=t.split(\\\\\\\",\\\\\\\")).forEach(e)||t},wu=function(t){return Math.round(1e5*t)/1e5||0},Tu=function(t){return Math.round(1e7*t)/1e7||0},Au=function(t,e){for(var n=e.length,i=0;t.indexOf(e[i])<0&&++i<n;);return i<n},Mu=function(){var t,e,n=uu.length,i=uu.slice(0);for(du={},uu.length=0,t=0;t<n;t++)(e=i[t])&&e._lazy&&(e.render(e._lazy[0],e._lazy[1],!0)._lazy=0)},Eu=function(t,e,n,i){uu.length&&Mu(),t.render(e,n,i),uu.length&&Mu()},Su=function(t){var e=parseFloat(t);return(e||0===e)&&(t+\\\\\\\"\\\\\\\").match(eu).length<2?e:Uh(t)?t.trim():t},Cu=function(t){return t},Nu=function(t,e){for(var n in e)n in t||(t[n]=e[n]);return t},Lu=function(t,e){for(var n in e)n in t||\\\\\\\"duration\\\\\\\"===n||\\\\\\\"ease\\\\\\\"===n||(t[n]=e[n])},Ou=function(t,e){for(var n in e)t[n]=e[n];return t},Pu=function t(e,n){for(var i in n)\\\\\\\"__proto__\\\\\\\"!==i&&\\\\\\\"constructor\\\\\\\"!==i&&\\\\\\\"prototype\\\\\\\"!==i&&(e[i]=jh(n[i])?t(e[i]||(e[i]={}),n[i]):n[i]);return e},Ru=function(t,e){var n,i={};for(n in t)n in e||(i[n]=t[n]);return i},Iu=function(t){var e=t.parent||vh,n=t.keyframes?Lu:Nu;if(Wh(t.inherit))for(;e;)n(t,e.vars.defaults),e=e.parent||e._dp;return t},Fu=function(t,e,n,i){void 0===n&&(n=\\\\\\\"_first\\\\\\\"),void 0===i&&(i=\\\\\\\"_last\\\\\\\");var s=e._prev,r=e._next;s?s._next=r:t[n]===e&&(t[n]=r),r?r._prev=s:t[i]===e&&(t[i]=s),e._next=e._prev=e.parent=null},Du=function(t,e){t.parent&&(!e||t.parent.autoRemoveChildren)&&t.parent.remove(t),t._act=0},Bu=function(t,e){if(t&&(!e||e._end>t._dur||e._start<0))for(var n=t;n;)n._dirty=1,n=n.parent;return t},zu=function(t){for(var e=t.parent;e&&e.parent;)e._dirty=1,e.totalDuration(),e=e.parent;return t},ku=function t(e){return!e||e._ts&&t(e.parent)},Uu=function(t){return t._repeat?Gu(t._tTime,t=t.duration()+t._rDelay)*t:0},Gu=function(t,e){var n=Math.floor(t/=e);return t&&n===t?n-1:n},Vu=function(t,e){return(t-e._start)*e._ts+(e._ts>=0?0:e._dirty?e.totalDuration():e._tDur)},Hu=function(t){return t._end=Tu(t._start+(t._tDur/Math.abs(t._ts||t._rts||Rh)||0))},ju=function(t,e){var n=t._dp;return n&&n.smoothChildTiming&&t._ts&&(t._start=Tu(n._time-(t._ts>0?e/t._ts:((t._dirty?t.totalDuration():t._tDur)-e)/-t._ts)),Hu(t),n._dirty||Bu(n,t)),t},Wu=function(t,e){var n;if((e._time||e._initted&&!e._dur)&&(n=Vu(t.rawTime(),e),(!e._dur||id(0,e.totalDuration(),n)-e._tTime>Rh)&&e.render(n,!0)),Bu(t,e)._dp&&t._initted&&t._time>=t._dur&&t._ts){if(t._dur<t.duration())for(n=t;n._dp;)n.rawTime()>=0&&n.totalTime(n._tTime),n=n._dp;t._zTime=-1e-8}},qu=function(t,e,n,i){return e.parent&&Du(e),e._start=Tu((Vh(n)?n:n||t!==vh?td(t,n,e):t._time)+e._delay),e._end=Tu(e._start+(e.totalDuration()/Math.abs(e.timeScale())||0)),function(t,e,n,i,s){void 0===n&&(n=\\\\\\\"_first\\\\\\\"),void 0===i&&(i=\\\\\\\"_last\\\\\\\");var r,o=t[i];if(s)for(r=e[s];o&&o[s]>r;)o=o._prev;o?(e._next=o._next,o._next=e):(e._next=t[n],t[n]=e),e._next?e._next._prev=e:t[i]=e,e._prev=o,e.parent=e._dp=t}(t,e,\\\\\\\"_first\\\\\\\",\\\\\\\"_last\\\\\\\",t._sort?\\\\\\\"_start\\\\\\\":0),Ju(e)||(t._recent=e),i||Wu(t,e),t},Xu=function(t,e){return(iu.ScrollTrigger||ou(\\\\\\\"scrollTrigger\\\\\\\",e))&&iu.ScrollTrigger.create(e,t)},Yu=function(t,e,n,i){return Jd(t,e),t._initted?!n&&t._pt&&(t._dur&&!1!==t.vars.lazy||!t._dur&&t.vars.lazy)&&Th!==Ld.frame?(uu.push(t),t._lazy=[e,i],1):void 0:1},$u=function t(e){var n=e.parent;return n&&n._ts&&n._initted&&!n._lock&&(n.rawTime()<0||t(n))},Ju=function(t){var e=t.data;return\\\\\\\"isFromStart\\\\\\\"===e||\\\\\\\"isStart\\\\\\\"===e},Zu=function(t,e,n,i){var s=t._repeat,r=Tu(e)||0,o=t._tTime/t._tDur;return o&&!i&&(t._time*=r/t._dur),t._dur=r,t._tDur=s?s<0?1e10:Tu(r*(s+1)+t._rDelay*s):r,o&&!i?ju(t,t._tTime=t._tDur*o):t.parent&&Hu(t),n||Bu(t.parent,t),t},Ku=function(t){return t instanceof Wd?Bu(t):Zu(t,t._dur)},Qu={_start:0,endTime:cu,totalDuration:cu},td=function t(e,n,i){var s,r,o,a=e.labels,l=e._recent||Qu,c=e.duration()>=Ph?l.endTime(!1):e._dur;return Uh(n)&&(isNaN(n)||n in a)?(r=n.charAt(0),o=\\\\\\\"%\\\\\\\"===n.substr(-1),s=n.indexOf(\\\\\\\"=\\\\\\\"),\\\\\\\"<\\\\\\\"===r||\\\\\\\">\\\\\\\"===r?(s>=0&&(n=n.replace(/=/,\\\\\\\"\\\\\\\")),(\\\\\\\"<\\\\\\\"===r?l._start:l.endTime(l._repeat>=0))+(parseFloat(n.substr(1))||0)*(o?(s<0?l:i).totalDuration()/100:1)):s<0?(n in a||(a[n]=c),a[n]):(r=parseFloat(n.charAt(s-1)+n.substr(s+1)),o&&i&&(r=r/100*($h(i)?i[0]:i).totalDuration()),s>1?t(e,n.substr(0,s-1),i)+r:c+r)):null==n?c:+n},ed=function(t,e,n){var i,s,r=Vh(e[1]),o=(r?2:1)+(t<2?0:1),a=e[o];if(r&&(a.duration=e[1]),a.parent=n,t){for(i=a,s=n;s&&!(\\\\\\\"immediateRender\\\\\\\"in i);)i=s.vars.defaults||{},s=Wh(s.vars.inherit)&&s.parent;a.immediateRender=Wh(i.immediateRender),t<2?a.runBackwards=1:a.startAt=e[o-1]}return new tp(e[0],a,e[o+1])},nd=function(t,e){return t||0===t?e(t):e},id=function(t,e,n){return n<t?t:n>e?e:n},sd=function(t){if(\\\\\\\"string\\\\\\\"!=typeof t)return\\\\\\\"\\\\\\\";var e=nu.exec(t);return e?t.substr(e.index+e[0].length):\\\\\\\"\\\\\\\"},rd=[].slice,od=function(t,e){return t&&jh(t)&&\\\\\\\"length\\\\\\\"in t&&(!e&&!t.length||t.length-1 in t&&jh(t[0]))&&!t.nodeType&&t!==yh},ad=function(t,e,n){return void 0===n&&(n=[]),t.forEach((function(t){var i;return Uh(t)&&!e||od(t,1)?(i=n).push.apply(i,ld(t)):n.push(t)}))||n},ld=function(t,e,n){return!Uh(t)||n||!xh&&Od()?$h(t)?ad(t,n):od(t)?rd.call(t,0):t?[t]:[]:rd.call((e||bh).querySelectorAll(t),0)},cd=function(t){return t.sort((function(){return.5-Math.random()}))},hd=function(t){if(Gh(t))return t;var e=jh(t)?t:{each:t},n=zd(e.ease),i=e.from||0,s=parseFloat(e.base)||0,r={},o=i>0&&i<1,a=isNaN(i)||o,l=e.axis,c=i,h=i;return Uh(i)?c=h={center:.5,edges:.5,end:1}[i]||0:!o&&a&&(c=i[0],h=i[1]),function(t,o,u){var d,p,_,m,f,g,v,y,x,b=(u||e).length,w=r[b];if(!w){if(!(x=\\\\\\\"auto\\\\\\\"===e.grid?0:(e.grid||[1,Ph])[1])){for(v=-Ph;v<(v=u[x++].getBoundingClientRect().left)&&x<b;);x--}for(w=r[b]=[],d=a?Math.min(x,b)*c-.5:i%x,p=a?b*h/x-.5:i/x|0,v=0,y=Ph,g=0;g<b;g++)_=g%x-d,m=p-(g/x|0),w[g]=f=l?Math.abs(\\\\\\\"y\\\\\\\"===l?m:_):Bh(_*_+m*m),f>v&&(v=f),f<y&&(y=f);\\\\\\\"random\\\\\\\"===i&&cd(w),w.max=v-y,w.min=y,w.v=b=(parseFloat(e.amount)||parseFloat(e.each)*(x>b?b-1:l?\\\\\\\"y\\\\\\\"===l?b/x:x:Math.max(x,b/x))||0)*(\\\\\\\"edges\\\\\\\"===i?-1:1),w.b=b<0?s-b:s,w.u=sd(e.amount||e.each)||0,n=n&&b<0?Dd(n):n}return b=(w[t]-w.min)/w.max||0,Tu(w.b+(n?n(b):b)*w.v)+w.u}},ud=function(t){var e=Math.pow(10,((t+\\\\\\\"\\\\\\\").split(\\\\\\\".\\\\\\\")[1]||\\\\\\\"\\\\\\\").length);return function(n){var i=Math.round(parseFloat(n)/t)*t*e;return(i-i%1)/e+(Vh(n)?0:sd(n))}},dd=function(t,e){var n,i,s=$h(t);return!s&&jh(t)&&(n=s=t.radius||Ph,t.values?(t=ld(t.values),(i=!Vh(t[0]))&&(n*=n)):t=ud(t.increment)),nd(e,s?Gh(t)?function(e){return i=t(e),Math.abs(i-e)<=n?i:e}:function(e){for(var s,r,o=parseFloat(i?e.x:e),a=parseFloat(i?e.y:0),l=Ph,c=0,h=t.length;h--;)(s=i?(s=t[h].x-o)*s+(r=t[h].y-a)*r:Math.abs(t[h]-o))<l&&(l=s,c=h);return c=!n||l<=n?t[c]:e,i||c===e||Vh(e)?c:c+sd(e)}:ud(t))},pd=function(t,e,n,i){return nd($h(t)?!e:!0===n?!!(n=0):!i,(function(){return $h(t)?t[~~(Math.random()*t.length)]:(n=n||1e-5)&&(i=n<1?Math.pow(10,(n+\\\\\\\"\\\\\\\").length-2):1)&&Math.floor(Math.round((t-n/2+Math.random()*(e-t+.99*n))/n)*n*i)/i}))},_d=function(t,e,n){return nd(n,(function(n){return t[~~e(n)]}))},md=function(t){for(var e,n,i,s,r=0,o=\\\\\\\"\\\\\\\";~(e=t.indexOf(\\\\\\\"random(\\\\\\\",r));)i=t.indexOf(\\\\\\\")\\\\\\\",e),s=\\\\\\\"[\\\\\\\"===t.charAt(e+7),n=t.substr(e+7,i-e-7).match(s?eu:Jh),o+=t.substr(r,e-r)+pd(s?n:+n[0],s?0:+n[1],+n[2]||1e-5),r=i+1;return o+t.substr(r,t.length-r)},fd=function(t,e,n,i,s){var r=e-t,o=i-n;return nd(s,(function(e){return n+((e-t)/r*o||0)}))},gd=function(t,e,n){var i,s,r,o=t.labels,a=Ph;for(i in o)(s=o[i]-e)<0==!!n&&s&&a>(s=Math.abs(s))&&(r=i,a=s);return r},vd=function(t,e,n){var i,s,r=t.vars,o=r[e];if(o)return i=r[e+\\\\\\\"Params\\\\\\\"],s=r.callbackScope||t,n&&uu.length&&Mu(),i?o.apply(s,i):o.call(s)},yd=function(t){return Du(t),t.scrollTrigger&&t.scrollTrigger.kill(!1),t.progress()<1&&vd(t,\\\\\\\"onInterrupt\\\\\\\"),t},xd=function(t){var e=(t=!t.name&&t.default||t).name,n=Gh(t),i=e&&!n&&t.init?function(){this._props=[]}:t,s={init:cu,render:cp,add:Yd,kill:up,modifier:hp,rawVars:0},r={targetTest:0,get:0,getSetter:rp,aliases:{},register:0};if(Od(),t!==i){if(pu[e])return;Nu(i,Nu(Ru(t,s),r)),Ou(i.prototype,Ou(s,Ru(t,r))),pu[i.prop=e]=i,t.targetTest&&(fu.push(i),hu[e]=1),e=(\\\\\\\"css\\\\\\\"===e?\\\\\\\"CSS\\\\\\\":e.charAt(0).toUpperCase()+e.substr(1))+\\\\\\\"Plugin\\\\\\\"}lu(e,i),t.register&&t.register(vp,i,_p)},bd=255,wd={aqua:[0,bd,bd],lime:[0,bd,0],silver:[192,192,192],black:[0,0,0],maroon:[128,0,0],teal:[0,128,128],blue:[0,0,bd],navy:[0,0,128],white:[bd,bd,bd],olive:[128,128,0],yellow:[bd,bd,0],orange:[bd,165,0],gray:[128,128,128],purple:[128,0,128],green:[0,128,0],red:[bd,0,0],pink:[bd,192,203],cyan:[0,bd,bd],transparent:[bd,bd,bd,0]},Td=function(t,e,n){return(6*(t=t<0?t+1:t>1?t-1:t)<1?e+(n-e)*t*6:t<.5?n:3*t<2?e+(n-e)*(2/3-t)*6:e)*bd+.5|0},Ad=function(t,e,n){var i,s,r,o,a,l,c,h,u,d,p=t?Vh(t)?[t>>16,t>>8&bd,t&bd]:0:wd.black;if(!p){if(\\\\\\\",\\\\\\\"===t.substr(-1)&&(t=t.substr(0,t.length-1)),wd[t])p=wd[t];else if(\\\\\\\"#\\\\\\\"===t.charAt(0)){if(t.length<6&&(i=t.charAt(1),s=t.charAt(2),r=t.charAt(3),t=\\\\\\\"#\\\\\\\"+i+i+s+s+r+r+(5===t.length?t.charAt(4)+t.charAt(4):\\\\\\\"\\\\\\\")),9===t.length)return[(p=parseInt(t.substr(1,6),16))>>16,p>>8&bd,p&bd,parseInt(t.substr(7),16)/255];p=[(t=parseInt(t.substr(1),16))>>16,t>>8&bd,t&bd]}else if(\\\\\\\"hsl\\\\\\\"===t.substr(0,3))if(p=d=t.match(Jh),e){if(~t.indexOf(\\\\\\\"=\\\\\\\"))return p=t.match(Zh),n&&p.length<4&&(p[3]=1),p}else o=+p[0]%360/360,a=+p[1]/100,i=2*(l=+p[2]/100)-(s=l<=.5?l*(a+1):l+a-l*a),p.length>3&&(p[3]*=1),p[0]=Td(o+1/3,i,s),p[1]=Td(o,i,s),p[2]=Td(o-1/3,i,s);else p=t.match(Jh)||wd.transparent;p=p.map(Number)}return e&&!d&&(i=p[0]/bd,s=p[1]/bd,r=p[2]/bd,l=((c=Math.max(i,s,r))+(h=Math.min(i,s,r)))/2,c===h?o=a=0:(u=c-h,a=l>.5?u/(2-c-h):u/(c+h),o=c===i?(s-r)/u+(s<r?6:0):c===s?(r-i)/u+2:(i-s)/u+4,o*=60),p[0]=~~(o+.5),p[1]=~~(100*a+.5),p[2]=~~(100*l+.5)),n&&p.length<4&&(p[3]=1),p},Md=function(t){var e=[],n=[],i=-1;return t.split(Sd).forEach((function(t){var s=t.match(Kh)||[];e.push.apply(e,s),n.push(i+=s.length+1)})),e.c=n,e},Ed=function(t,e,n){var i,s,r,o,a=\\\\\\\"\\\\\\\",l=(t+a).match(Sd),c=e?\\\\\\\"hsla(\\\\\\\":\\\\\\\"rgba(\\\\\\\",h=0;if(!l)return t;if(l=l.map((function(t){return(t=Ad(t,e,1))&&c+(e?t[0]+\\\\\\\",\\\\\\\"+t[1]+\\\\\\\"%,\\\\\\\"+t[2]+\\\\\\\"%,\\\\\\\"+t[3]:t.join(\\\\\\\",\\\\\\\"))+\\\\\\\")\\\\\\\"})),n&&(r=Md(t),(i=n.c).join(a)!==r.c.join(a)))for(o=(s=t.replace(Sd,\\\\\\\"1\\\\\\\").split(Kh)).length-1;h<o;h++)a+=s[h]+(~i.indexOf(h)?l.shift()||c+\\\\\\\"0,0,0,0)\\\\\\\":(r.length?r:l.length?l:n).shift());if(!s)for(o=(s=t.split(Sd)).length-1;h<o;h++)a+=s[h]+l[h];return a+s[o]},Sd=function(){var t,e=\\\\\\\"(?:\\\\\\\\b(?:(?:rgb|rgba|hsl|hsla)\\\\\\\\(.+?\\\\\\\\))|\\\\\\\\B#(?:[0-9a-f]{3,4}){1,2}\\\\\\\\b\\\\\\\";for(t in wd)e+=\\\\\\\"|\\\\\\\"+t+\\\\\\\"\\\\\\\\b\\\\\\\";return new RegExp(e+\\\\\\\")\\\\\\\",\\\\\\\"gi\\\\\\\")}(),Cd=/hsl[a]?\\\\(/,Nd=function(t){var e,n=t.join(\\\\\\\" \\\\\\\");if(Sd.lastIndex=0,Sd.test(n))return e=Cd.test(n),t[1]=Ed(t[1],e),t[0]=Ed(t[0],e,Md(t[1])),!0},Ld=function(){var t,e,n,i,s,r,o=Date.now,a=500,l=33,c=o(),h=c,u=1e3/240,d=u,p=[],_=function n(_){var m,f,g,v,y=o()-h,x=!0===_;if(y>a&&(c+=y-l),((m=(g=(h+=y)-c)-d)>0||x)&&(v=++i.frame,s=g-1e3*i.time,i.time=g/=1e3,d+=m+(m>=u?4:u-m),f=1),x||(t=e(n)),f)for(r=0;r<p.length;r++)p[r](g,s,v,_)};return i={time:0,frame:0,tick:function(){_(!0)},deltaRatio:function(t){return s/(1e3/(t||60))},wake:function(){wh&&(!xh&&qh()&&(yh=xh=window,bh=yh.document||{},iu.gsap=vp,(yh.gsapVersions||(yh.gsapVersions=[])).push(vp.version),ru(su||yh.GreenSockGlobals||!yh.gsap&&yh||{}),n=yh.requestAnimationFrame),t&&i.sleep(),e=n||function(t){return setTimeout(t,d-1e3*i.time+1|0)},Mh=1,_(2))},sleep:function(){(n?yh.cancelAnimationFrame:clearTimeout)(t),Mh=0,e=cu},lagSmoothing:function(t,e){a=t||1e8,l=Math.min(e,a,0)},fps:function(t){u=1e3/(t||240),d=1e3*i.time+u},add:function(t){p.indexOf(t)<0&&p.push(t),Od()},remove:function(t){var e;~(e=p.indexOf(t))&&p.splice(e,1)&&r>=e&&r--},_listeners:p}}(),Od=function(){return!Mh&&Ld.wake()},Pd={},Rd=/^[\\\\d.\\\\-M][\\\\d.\\\\-,\\\\s]/,Id=/[\\\\\\\"']/g,Fd=function(t){for(var e,n,i,s={},r=t.substr(1,t.length-3).split(\\\\\\\":\\\\\\\"),o=r[0],a=1,l=r.length;a<l;a++)n=r[a],e=a!==l-1?n.lastIndexOf(\\\\\\\",\\\\\\\"):n.length,i=n.substr(0,e),s[o]=isNaN(i)?i.replace(Id,\\\\\\\"\\\\\\\").trim():+i,o=n.substr(e+1).trim();return s},Dd=function(t){return function(e){return 1-t(1-e)}},Bd=function t(e,n){for(var i,s=e._first;s;)s instanceof Wd?t(s,n):!s.vars.yoyoEase||s._yoyo&&s._repeat||s._yoyo===n||(s.timeline?t(s.timeline,n):(i=s._ease,s._ease=s._yEase,s._yEase=i,s._yoyo=n)),s=s._next},zd=function(t,e){return t&&(Gh(t)?t:Pd[t]||function(t){var e,n,i,s,r=(t+\\\\\\\"\\\\\\\").split(\\\\\\\"(\\\\\\\"),o=Pd[r[0]];return o&&r.length>1&&o.config?o.config.apply(null,~t.indexOf(\\\\\\\"{\\\\\\\")?[Fd(r[1])]:(e=t,n=e.indexOf(\\\\\\\"(\\\\\\\")+1,i=e.indexOf(\\\\\\\")\\\\\\\"),s=e.indexOf(\\\\\\\"(\\\\\\\",n),e.substring(n,~s&&s<i?e.indexOf(\\\\\\\")\\\\\\\",i+1):i)).split(\\\\\\\",\\\\\\\").map(Su)):Pd._CE&&Rd.test(t)?Pd._CE(\\\\\\\"\\\\\\\",t):o}(t))||e},kd=function(t,e,n,i){void 0===n&&(n=function(t){return 1-e(1-t)}),void 0===i&&(i=function(t){return t<.5?e(2*t)/2:1-e(2*(1-t))/2});var s,r={easeIn:e,easeOut:n,easeInOut:i};return bu(t,(function(t){for(var e in Pd[t]=iu[t]=r,Pd[s=t.toLowerCase()]=n,r)Pd[s+(\\\\\\\"easeIn\\\\\\\"===e?\\\\\\\".in\\\\\\\":\\\\\\\"easeOut\\\\\\\"===e?\\\\\\\".out\\\\\\\":\\\\\\\".inOut\\\\\\\")]=Pd[t+\\\\\\\".\\\\\\\"+e]=r[e]})),r},Ud=function(t){return function(e){return e<.5?(1-t(1-2*e))/2:.5+t(2*(e-.5))/2}},Gd=function t(e,n,i){var s=n>=1?n:1,r=(i||(e?.3:.45))/(n<1?n:1),o=r/Ih*(Math.asin(1/s)||0),a=function(t){return 1===t?1:s*Math.pow(2,-10*t)*kh((t-o)*r)+1},l=\\\\\\\"out\\\\\\\"===e?a:\\\\\\\"in\\\\\\\"===e?function(t){return 1-a(1-t)}:Ud(a);return r=Ih/r,l.config=function(n,i){return t(e,n,i)},l},Vd=function t(e,n){void 0===n&&(n=1.70158);var i=function(t){return t?--t*t*((n+1)*t+n)+1:0},s=\\\\\\\"out\\\\\\\"===e?i:\\\\\\\"in\\\\\\\"===e?function(t){return 1-i(1-t)}:Ud(i);return s.config=function(n){return t(e,n)},s};bu(\\\\\\\"Linear,Quad,Cubic,Quart,Quint,Strong\\\\\\\",(function(t,e){var n=e<5?e+1:e;kd(t+\\\\\\\",Power\\\\\\\"+(n-1),e?function(t){return Math.pow(t,n)}:function(t){return t},(function(t){return 1-Math.pow(1-t,n)}),(function(t){return t<.5?Math.pow(2*t,n)/2:1-Math.pow(2*(1-t),n)/2}))})),Pd.Linear.easeNone=Pd.none=Pd.Linear.easeIn,kd(\\\\\\\"Elastic\\\\\\\",Gd(\\\\\\\"in\\\\\\\"),Gd(\\\\\\\"out\\\\\\\"),Gd()),Eh=7.5625,Ch=1/(Sh=2.75),kd(\\\\\\\"Bounce\\\\\\\",(function(t){return 1-Nh(1-t)}),Nh=function(t){return t<Ch?Eh*t*t:t<.7272727272727273?Eh*Math.pow(t-1.5/Sh,2)+.75:t<.9090909090909092?Eh*(t-=2.25/Sh)*t+.9375:Eh*Math.pow(t-2.625/Sh,2)+.984375}),kd(\\\\\\\"Expo\\\\\\\",(function(t){return t?Math.pow(2,10*(t-1)):0})),kd(\\\\\\\"Circ\\\\\\\",(function(t){return-(Bh(1-t*t)-1)})),kd(\\\\\\\"Sine\\\\\\\",(function(t){return 1===t?1:1-zh(t*Fh)})),kd(\\\\\\\"Back\\\\\\\",Vd(\\\\\\\"in\\\\\\\"),Vd(\\\\\\\"out\\\\\\\"),Vd()),Pd.SteppedEase=Pd.steps=iu.SteppedEase={config:function(t,e){void 0===t&&(t=1);var n=1/t,i=t+(e?0:1),s=e?1:0;return function(t){return((i*id(0,.99999999,t)|0)+s)*n}}},Oh.ease=Pd[\\\\\\\"quad.out\\\\\\\"],bu(\\\\\\\"onComplete,onUpdate,onStart,onRepeat,onReverseComplete,onInterrupt\\\\\\\",(function(t){return gu+=t+\\\\\\\",\\\\\\\"+t+\\\\\\\"Params,\\\\\\\"}));var Hd=function(t,e){this.id=Dh++,t._gsap=this,this.target=t,this.harness=e,this.get=e?e.get:xu,this.set=e?e.getSetter:rp},jd=function(){function t(t){this.vars=t,this._delay=+t.delay||0,(this._repeat=t.repeat===1/0?-2:t.repeat||0)&&(this._rDelay=t.repeatDelay||0,this._yoyo=!!t.yoyo||!!t.yoyoEase),this._ts=1,Zu(this,+t.duration,1,1),this.data=t.data,Mh||Ld.wake()}var e=t.prototype;return e.delay=function(t){return t||0===t?(this.parent&&this.parent.smoothChildTiming&&this.startTime(this._start+t-this._delay),this._delay=t,this):this._delay},e.duration=function(t){return arguments.length?this.totalDuration(this._repeat>0?t+(t+this._rDelay)*this._repeat:t):this.totalDuration()&&this._dur},e.totalDuration=function(t){return arguments.length?(this._dirty=0,Zu(this,this._repeat<0?t:(t-this._repeat*this._rDelay)/(this._repeat+1))):this._tDur},e.totalTime=function(t,e){if(Od(),!arguments.length)return this._tTime;var n=this._dp;if(n&&n.smoothChildTiming&&this._ts){for(ju(this,t),!n._dp||n.parent||Wu(n,this);n&&n.parent;)n.parent._time!==n._start+(n._ts>=0?n._tTime/n._ts:(n.totalDuration()-n._tTime)/-n._ts)&&n.totalTime(n._tTime,!0),n=n.parent;!this.parent&&this._dp.autoRemoveChildren&&(this._ts>0&&t<this._tDur||this._ts<0&&t>0||!this._tDur&&!t)&&qu(this._dp,this,this._start-this._delay)}return(this._tTime!==t||!this._dur&&!e||this._initted&&Math.abs(this._zTime)===Rh||!t&&!this._initted&&(this.add||this._ptLookup))&&(this._ts||(this._pTime=t),Eu(this,t,e)),this},e.time=function(t,e){return arguments.length?this.totalTime(Math.min(this.totalDuration(),t+Uu(this))%(this._dur+this._rDelay)||(t?this._dur:0),e):this._time},e.totalProgress=function(t,e){return arguments.length?this.totalTime(this.totalDuration()*t,e):this.totalDuration()?Math.min(1,this._tTime/this._tDur):this.ratio},e.progress=function(t,e){return arguments.length?this.totalTime(this.duration()*(!this._yoyo||1&this.iteration()?t:1-t)+Uu(this),e):this.duration()?Math.min(1,this._time/this._dur):this.ratio},e.iteration=function(t,e){var n=this.duration()+this._rDelay;return arguments.length?this.totalTime(this._time+(t-1)*n,e):this._repeat?Gu(this._tTime,n)+1:1},e.timeScale=function(t){if(!arguments.length)return-1e-8===this._rts?0:this._rts;if(this._rts===t)return this;var e=this.parent&&this._ts?Vu(this.parent._time,this):this._tTime;return this._rts=+t||0,this._ts=this._ps||-1e-8===t?0:this._rts,zu(this.totalTime(id(-this._delay,this._tDur,e),!0)),Hu(this),this},e.paused=function(t){return arguments.length?(this._ps!==t&&(this._ps=t,t?(this._pTime=this._tTime||Math.max(-this._delay,this.rawTime()),this._ts=this._act=0):(Od(),this._ts=this._rts,this.totalTime(this.parent&&!this.parent.smoothChildTiming?this.rawTime():this._tTime||this._pTime,1===this.progress()&&Math.abs(this._zTime)!==Rh&&(this._tTime-=Rh)))),this):this._ps},e.startTime=function(t){if(arguments.length){this._start=t;var e=this.parent||this._dp;return e&&(e._sort||!this.parent)&&qu(e,this,t-this._delay),this}return this._start},e.endTime=function(t){return this._start+(Wh(t)?this.totalDuration():this.duration())/Math.abs(this._ts||1)},e.rawTime=function(t){var e=this.parent||this._dp;return e?t&&(!this._ts||this._repeat&&this._time&&this.totalProgress()<1)?this._tTime%(this._dur+this._rDelay):this._ts?Vu(e.rawTime(t),this):this._tTime:this._tTime},e.globalTime=function(t){for(var e=this,n=arguments.length?t:e.rawTime();e;)n=e._start+n/(e._ts||1),e=e._dp;return n},e.repeat=function(t){return arguments.length?(this._repeat=t===1/0?-2:t,Ku(this)):-2===this._repeat?1/0:this._repeat},e.repeatDelay=function(t){if(arguments.length){var e=this._time;return this._rDelay=t,Ku(this),e?this.time(e):this}return this._rDelay},e.yoyo=function(t){return arguments.length?(this._yoyo=t,this):this._yoyo},e.seek=function(t,e){return this.totalTime(td(this,t),Wh(e))},e.restart=function(t,e){return this.play().totalTime(t?-this._delay:0,Wh(e))},e.play=function(t,e){return null!=t&&this.seek(t,e),this.reversed(!1).paused(!1)},e.reverse=function(t,e){return null!=t&&this.seek(t||this.totalDuration(),e),this.reversed(!0).paused(!1)},e.pause=function(t,e){return null!=t&&this.seek(t,e),this.paused(!0)},e.resume=function(){return this.paused(!1)},e.reversed=function(t){return arguments.length?(!!t!==this.reversed()&&this.timeScale(-this._rts||(t?-1e-8:0)),this):this._rts<0},e.invalidate=function(){return this._initted=this._act=0,this._zTime=-1e-8,this},e.isActive=function(){var t,e=this.parent||this._dp,n=this._start;return!(e&&!(this._ts&&this._initted&&e.isActive()&&(t=e.rawTime(!0))>=n&&t<this.endTime(!0)-Rh))},e.eventCallback=function(t,e,n){var i=this.vars;return arguments.length>1?(e?(i[t]=e,n&&(i[t+\\\\\\\"Params\\\\\\\"]=n),\\\\\\\"onUpdate\\\\\\\"===t&&(this._onUpdate=e)):delete i[t],this):i[t]},e.then=function(t){var e=this;return new Promise((function(n){var i=Gh(t)?t:Cu,s=function(){var t=e.then;e.then=null,Gh(i)&&(i=i(e))&&(i.then||i===e)&&(e.then=t),n(i),e.then=t};e._initted&&1===e.totalProgress()&&e._ts>=0||!e._tTime&&e._ts<0?s():e._prom=s}))},e.kill=function(){yd(this)},t}();Nu(jd.prototype,{_time:0,_start:0,_end:0,_tTime:0,_tDur:0,_dirty:0,_repeat:0,_yoyo:!1,parent:null,_initted:!1,_rDelay:0,_ts:1,_dp:0,ratio:0,_zTime:-1e-8,_prom:0,_ps:!1,_rts:1});var Wd=function(t){function e(e,n){var i;return void 0===e&&(e={}),(i=t.call(this,e)||this).labels={},i.smoothChildTiming=!!e.smoothChildTiming,i.autoRemoveChildren=!!e.autoRemoveChildren,i._sort=Wh(e.sortChildren),vh&&qu(e.parent||vh,mh(i),n),e.reversed&&i.reverse(),e.paused&&i.paused(!0),e.scrollTrigger&&Xu(mh(i),e.scrollTrigger),i}fh(e,t);var n=e.prototype;return n.to=function(t,e,n){return ed(0,arguments,this),this},n.from=function(t,e,n){return ed(1,arguments,this),this},n.fromTo=function(t,e,n,i){return ed(2,arguments,this),this},n.set=function(t,e,n){return e.duration=0,e.parent=this,Iu(e).repeatDelay||(e.repeat=0),e.immediateRender=!!e.immediateRender,new tp(t,e,td(this,n),1),this},n.call=function(t,e,n){return qu(this,tp.delayedCall(0,t,e),n)},n.staggerTo=function(t,e,n,i,s,r,o){return n.duration=e,n.stagger=n.stagger||i,n.onComplete=r,n.onCompleteParams=o,n.parent=this,new tp(t,n,td(this,s)),this},n.staggerFrom=function(t,e,n,i,s,r,o){return n.runBackwards=1,Iu(n).immediateRender=Wh(n.immediateRender),this.staggerTo(t,e,n,i,s,r,o)},n.staggerFromTo=function(t,e,n,i,s,r,o,a){return i.startAt=n,Iu(i).immediateRender=Wh(i.immediateRender),this.staggerTo(t,e,i,s,r,o,a)},n.render=function(t,e,n){var i,s,r,o,a,l,c,h,u,d,p,_,m=this._time,f=this._dirty?this.totalDuration():this._tDur,g=this._dur,v=t<=0?0:Tu(t),y=this._zTime<0!=t<0&&(this._initted||!g);if(this!==vh&&v>f&&t>=0&&(v=f),v!==this._tTime||n||y){if(m!==this._time&&g&&(v+=this._time-m,t+=this._time-m),i=v,u=this._start,l=!(h=this._ts),y&&(g||(m=this._zTime),(t||!e)&&(this._zTime=t)),this._repeat){if(p=this._yoyo,a=g+this._rDelay,this._repeat<-1&&t<0)return this.totalTime(100*a+t,e,n);if(i=Tu(v%a),v===f?(o=this._repeat,i=g):((o=~~(v/a))&&o===v/a&&(i=g,o--),i>g&&(i=g)),d=Gu(this._tTime,a),!m&&this._tTime&&d!==o&&(d=o),p&&1&o&&(i=g-i,_=1),o!==d&&!this._lock){var x=p&&1&d,b=x===(p&&1&o);if(o<d&&(x=!x),m=x?0:g,this._lock=1,this.render(m||(_?0:Tu(o*a)),e,!g)._lock=0,this._tTime=v,!e&&this.parent&&vd(this,\\\\\\\"onRepeat\\\\\\\"),this.vars.repeatRefresh&&!_&&(this.invalidate()._lock=1),m&&m!==this._time||l!==!this._ts||this.vars.onRepeat&&!this.parent&&!this._act)return this;if(g=this._dur,f=this._tDur,b&&(this._lock=2,m=x?g:-1e-4,this.render(m,!0),this.vars.repeatRefresh&&!_&&this.invalidate()),this._lock=0,!this._ts&&!l)return this;Bd(this,_)}}if(this._hasPause&&!this._forcing&&this._lock<2&&(c=function(t,e,n){var i;if(n>e)for(i=t._first;i&&i._start<=n;){if(!i._dur&&\\\\\\\"isPause\\\\\\\"===i.data&&i._start>e)return i;i=i._next}else for(i=t._last;i&&i._start>=n;){if(!i._dur&&\\\\\\\"isPause\\\\\\\"===i.data&&i._start<e)return i;i=i._prev}}(this,Tu(m),Tu(i)))&&(v-=i-(i=c._start)),this._tTime=v,this._time=i,this._act=!h,this._initted||(this._onUpdate=this.vars.onUpdate,this._initted=1,this._zTime=t,m=0),!m&&i&&!e&&(vd(this,\\\\\\\"onStart\\\\\\\"),this._tTime!==v))return this;if(i>=m&&t>=0)for(s=this._first;s;){if(r=s._next,(s._act||i>=s._start)&&s._ts&&c!==s){if(s.parent!==this)return this.render(t,e,n);if(s.render(s._ts>0?(i-s._start)*s._ts:(s._dirty?s.totalDuration():s._tDur)+(i-s._start)*s._ts,e,n),i!==this._time||!this._ts&&!l){c=0,r&&(v+=this._zTime=-1e-8);break}}s=r}else{s=this._last;for(var w=t<0?t:i;s;){if(r=s._prev,(s._act||w<=s._end)&&s._ts&&c!==s){if(s.parent!==this)return this.render(t,e,n);if(s.render(s._ts>0?(w-s._start)*s._ts:(s._dirty?s.totalDuration():s._tDur)+(w-s._start)*s._ts,e,n),i!==this._time||!this._ts&&!l){c=0,r&&(v+=this._zTime=w?-1e-8:Rh);break}}s=r}}if(c&&!e&&(this.pause(),c.render(i>=m?0:-1e-8)._zTime=i>=m?1:-1,this._ts))return this._start=u,Hu(this),this.render(t,e,n);this._onUpdate&&!e&&vd(this,\\\\\\\"onUpdate\\\\\\\",!0),(v===f&&f>=this.totalDuration()||!v&&m)&&(u!==this._start&&Math.abs(h)===Math.abs(this._ts)||this._lock||((t||!g)&&(v===f&&this._ts>0||!v&&this._ts<0)&&Du(this,1),e||t<0&&!m||!v&&!m&&f||(vd(this,v===f&&t>=0?\\\\\\\"onComplete\\\\\\\":\\\\\\\"onReverseComplete\\\\\\\",!0),this._prom&&!(v<f&&this.timeScale()>0)&&this._prom())))}return this},n.add=function(t,e){var n=this;if(Vh(e)||(e=td(this,e,t)),!(t instanceof jd)){if($h(t))return t.forEach((function(t){return n.add(t,e)})),this;if(Uh(t))return this.addLabel(t,e);if(!Gh(t))return this;t=tp.delayedCall(0,t)}return this!==t?qu(this,t,e):this},n.getChildren=function(t,e,n,i){void 0===t&&(t=!0),void 0===e&&(e=!0),void 0===n&&(n=!0),void 0===i&&(i=-Ph);for(var s=[],r=this._first;r;)r._start>=i&&(r instanceof tp?e&&s.push(r):(n&&s.push(r),t&&s.push.apply(s,r.getChildren(!0,e,n)))),r=r._next;return s},n.getById=function(t){for(var e=this.getChildren(1,1,1),n=e.length;n--;)if(e[n].vars.id===t)return e[n]},n.remove=function(t){return Uh(t)?this.removeLabel(t):Gh(t)?this.killTweensOf(t):(Fu(this,t),t===this._recent&&(this._recent=this._last),Bu(this))},n.totalTime=function(e,n){return arguments.length?(this._forcing=1,!this._dp&&this._ts&&(this._start=Tu(Ld.time-(this._ts>0?e/this._ts:(this.totalDuration()-e)/-this._ts))),t.prototype.totalTime.call(this,e,n),this._forcing=0,this):this._tTime},n.addLabel=function(t,e){return this.labels[t]=td(this,e),this},n.removeLabel=function(t){return delete this.labels[t],this},n.addPause=function(t,e,n){var i=tp.delayedCall(0,e||cu,n);return i.data=\\\\\\\"isPause\\\\\\\",this._hasPause=1,qu(this,i,td(this,t))},n.removePause=function(t){var e=this._first;for(t=td(this,t);e;)e._start===t&&\\\\\\\"isPause\\\\\\\"===e.data&&Du(e),e=e._next},n.killTweensOf=function(t,e,n){for(var i=this.getTweensOf(t,n),s=i.length;s--;)qd!==i[s]&&i[s].kill(t,e);return this},n.getTweensOf=function(t,e){for(var n,i=[],s=ld(t),r=this._first,o=Vh(e);r;)r instanceof tp?Au(r._targets,s)&&(o?(!qd||r._initted&&r._ts)&&r.globalTime(0)<=e&&r.globalTime(r.totalDuration())>e:!e||r.isActive())&&i.push(r):(n=r.getTweensOf(s,e)).length&&i.push.apply(i,n),r=r._next;return i},n.tweenTo=function(t,e){e=e||{};var n,i=this,s=td(i,t),r=e,o=r.startAt,a=r.onStart,l=r.onStartParams,c=r.immediateRender,h=tp.to(i,Nu({ease:e.ease||\\\\\\\"none\\\\\\\",lazy:!1,immediateRender:!1,time:s,overwrite:\\\\\\\"auto\\\\\\\",duration:e.duration||Math.abs((s-(o&&\\\\\\\"time\\\\\\\"in o?o.time:i._time))/i.timeScale())||Rh,onStart:function(){if(i.pause(),!n){var t=e.duration||Math.abs((s-(o&&\\\\\\\"time\\\\\\\"in o?o.time:i._time))/i.timeScale());h._dur!==t&&Zu(h,t,0,1).render(h._time,!0,!0),n=1}a&&a.apply(h,l||[])}},e));return c?h.render(0):h},n.tweenFromTo=function(t,e,n){return this.tweenTo(e,Nu({startAt:{time:td(this,t)}},n))},n.recent=function(){return this._recent},n.nextLabel=function(t){return void 0===t&&(t=this._time),gd(this,td(this,t))},n.previousLabel=function(t){return void 0===t&&(t=this._time),gd(this,td(this,t),1)},n.currentLabel=function(t){return arguments.length?this.seek(t,!0):this.previousLabel(this._time+Rh)},n.shiftChildren=function(t,e,n){void 0===n&&(n=0);for(var i,s=this._first,r=this.labels;s;)s._start>=n&&(s._start+=t,s._end+=t),s=s._next;if(e)for(i in r)r[i]>=n&&(r[i]+=t);return Bu(this)},n.invalidate=function(){var e=this._first;for(this._lock=0;e;)e.invalidate(),e=e._next;return t.prototype.invalidate.call(this)},n.clear=function(t){void 0===t&&(t=!0);for(var e,n=this._first;n;)e=n._next,this.remove(n),n=e;return this._dp&&(this._time=this._tTime=this._pTime=0),t&&(this.labels={}),Bu(this)},n.totalDuration=function(t){var e,n,i,s=0,r=this,o=r._last,a=Ph;if(arguments.length)return r.timeScale((r._repeat<0?r.duration():r.totalDuration())/(r.reversed()?-t:t));if(r._dirty){for(i=r.parent;o;)e=o._prev,o._dirty&&o.totalDuration(),(n=o._start)>a&&r._sort&&o._ts&&!r._lock?(r._lock=1,qu(r,o,n-o._delay,1)._lock=0):a=n,n<0&&o._ts&&(s-=n,(!i&&!r._dp||i&&i.smoothChildTiming)&&(r._start+=n/r._ts,r._time-=n,r._tTime-=n),r.shiftChildren(-n,!1,-Infinity),a=0),o._end>s&&o._ts&&(s=o._end),o=e;Zu(r,r===vh&&r._time>s?r._time:s,1,1),r._dirty=0}return r._tDur},e.updateRoot=function(t){if(vh._ts&&(Eu(vh,Vu(t,vh)),Th=Ld.frame),Ld.frame>=mu){mu+=Lh.autoSleep||120;var e=vh._first;if((!e||!e._ts)&&Lh.autoSleep&&Ld._listeners.length<2){for(;e&&!e._ts;)e=e._next;e||Ld.sleep()}}},e}(jd);Nu(Wd.prototype,{_lock:0,_hasPause:0,_forcing:0});var qd,Xd=function(t,e,n,i,s,r,o){var a,l,c,h,u,d,p,_,m=new _p(this._pt,t,e,0,1,lp,null,s),f=0,g=0;for(m.b=n,m.e=i,n+=\\\\\\\"\\\\\\\",(p=~(i+=\\\\\\\"\\\\\\\").indexOf(\\\\\\\"random(\\\\\\\"))&&(i=md(i)),r&&(r(_=[n,i],t,e),n=_[0],i=_[1]),l=n.match(Qh)||[];a=Qh.exec(i);)h=a[0],u=i.substring(f,a.index),c?c=(c+1)%5:\\\\\\\"rgba(\\\\\\\"===u.substr(-5)&&(c=1),h!==l[g++]&&(d=parseFloat(l[g-1])||0,m._pt={_next:m._pt,p:u||1===g?u:\\\\\\\",\\\\\\\",s:d,c:\\\\\\\"=\\\\\\\"===h.charAt(1)?parseFloat(h.substr(2))*(\\\\\\\"-\\\\\\\"===h.charAt(0)?-1:1):parseFloat(h)-d,m:c&&c<4?Math.round:0},f=Qh.lastIndex);return m.c=f<i.length?i.substring(f,i.length):\\\\\\\"\\\\\\\",m.fp=o,(tu.test(i)||p)&&(m.e=0),this._pt=m,m},Yd=function(t,e,n,i,s,r,o,a,l){Gh(i)&&(i=i(s||0,t,r));var c,h=t[e],u=\\\\\\\"get\\\\\\\"!==n?n:Gh(h)?l?t[e.indexOf(\\\\\\\"set\\\\\\\")||!Gh(t[\\\\\\\"get\\\\\\\"+e.substr(3)])?e:\\\\\\\"get\\\\\\\"+e.substr(3)](l):t[e]():h,d=Gh(h)?l?ip:np:ep;if(Uh(i)&&(~i.indexOf(\\\\\\\"random(\\\\\\\")&&(i=md(i)),\\\\\\\"=\\\\\\\"===i.charAt(1)&&((c=parseFloat(u)+parseFloat(i.substr(2))*(\\\\\\\"-\\\\\\\"===i.charAt(0)?-1:1)+(sd(u)||0))||0===c)&&(i=c)),u!==i)return isNaN(u*i)||\\\\\\\"\\\\\\\"===i?(!h&&!(e in t)&&ou(e,i),Xd.call(this,t,e,u,i,d,a||Lh.stringFilter,l)):(c=new _p(this._pt,t,e,+u||0,i-(u||0),\\\\\\\"boolean\\\\\\\"==typeof h?ap:op,0,d),l&&(c.fp=l),o&&c.modifier(o,this,t),this._pt=c)},$d=function(t,e,n,i,s,r){var o,a,l,c;if(pu[t]&&!1!==(o=new pu[t]).init(s,o.rawVars?e[t]:function(t,e,n,i,s){if(Gh(t)&&(t=Zd(t,s,e,n,i)),!jh(t)||t.style&&t.nodeType||$h(t)||Yh(t))return Uh(t)?Zd(t,s,e,n,i):t;var r,o={};for(r in t)o[r]=Zd(t[r],s,e,n,i);return o}(e[t],i,s,r,n),n,i,r)&&(n._pt=a=new _p(n._pt,s,t,0,1,o.render,o,0,o.priority),n!==Ah))for(l=n._ptLookup[n._targets.indexOf(s)],c=o._props.length;c--;)l[o._props[c]]=a;return o},Jd=function t(e,n){var i,s,r,o,a,l,c,h,u,d,p,_,m,f=e.vars,g=f.ease,v=f.startAt,y=f.immediateRender,x=f.lazy,b=f.onUpdate,w=f.onUpdateParams,T=f.callbackScope,A=f.runBackwards,M=f.yoyoEase,E=f.keyframes,S=f.autoRevert,C=e._dur,N=e._startAt,L=e._targets,O=e.parent,P=O&&\\\\\\\"nested\\\\\\\"===O.data?O.parent._targets:L,R=\\\\\\\"auto\\\\\\\"===e._overwrite&&!gh,I=e.timeline;if(I&&(!E||!g)&&(g=\\\\\\\"none\\\\\\\"),e._ease=zd(g,Oh.ease),e._yEase=M?Dd(zd(!0===M?g:M,Oh.ease)):0,M&&e._yoyo&&!e._repeat&&(M=e._yEase,e._yEase=e._ease,e._ease=M),e._from=!I&&!!f.runBackwards,!I){if(_=(h=L[0]?yu(L[0]).harness:0)&&f[h.prop],i=Ru(f,hu),N&&N.render(-1,!0).kill(),v)if(Du(e._startAt=tp.set(L,Nu({data:\\\\\\\"isStart\\\\\\\",overwrite:!1,parent:O,immediateRender:!0,lazy:Wh(x),startAt:null,delay:0,onUpdate:b,onUpdateParams:w,callbackScope:T,stagger:0},v))),n<0&&!y&&!S&&e._startAt.render(-1,!0),y){if(n>0&&!S&&(e._startAt=0),C&&n<=0)return void(n&&(e._zTime=n))}else!1===S&&(e._startAt=0);else if(A&&C)if(N)!S&&(e._startAt=0);else if(n&&(y=!1),r=Nu({overwrite:!1,data:\\\\\\\"isFromStart\\\\\\\",lazy:y&&Wh(x),immediateRender:y,stagger:0,parent:O},i),_&&(r[h.prop]=_),Du(e._startAt=tp.set(L,r)),n<0&&e._startAt.render(-1,!0),y){if(!n)return}else t(e._startAt,Rh);for(e._pt=0,x=C&&Wh(x)||x&&!C,s=0;s<L.length;s++){if(c=(a=L[s])._gsap||vu(L)[s]._gsap,e._ptLookup[s]=d={},du[c.id]&&uu.length&&Mu(),p=P===L?s:P.indexOf(a),h&&!1!==(u=new h).init(a,_||i,e,p,P)&&(e._pt=o=new _p(e._pt,a,u.name,0,1,u.render,u,0,u.priority),u._props.forEach((function(t){d[t]=o})),u.priority&&(l=1)),!h||_)for(r in i)pu[r]&&(u=$d(r,i,e,p,a,P))?u.priority&&(l=1):d[r]=o=Yd.call(e,a,r,\\\\\\\"get\\\\\\\",i[r],p,P,0,f.stringFilter);e._op&&e._op[s]&&e.kill(a,e._op[s]),R&&e._pt&&(qd=e,vh.killTweensOf(a,d,e.globalTime(n)),m=!e.parent,qd=0),e._pt&&x&&(du[c.id]=1)}l&&pp(e),e._onInit&&e._onInit(e)}e._onUpdate=b,e._initted=(!e._op||e._pt)&&!m},Zd=function(t,e,n,i,s){return Gh(t)?t.call(e,n,i,s):Uh(t)&&~t.indexOf(\\\\\\\"random(\\\\\\\")?md(t):t},Kd=gu+\\\\\\\"repeat,repeatDelay,yoyo,repeatRefresh,yoyoEase\\\\\\\",Qd=(Kd+\\\\\\\",id,stagger,delay,duration,paused,scrollTrigger\\\\\\\").split(\\\\\\\",\\\\\\\"),tp=function(t){function e(e,n,i,s){var r;\\\\\\\"number\\\\\\\"==typeof n&&(i.duration=n,n=i,i=null);var o,a,l,c,h,u,d,p,_=(r=t.call(this,s?n:Iu(n))||this).vars,m=_.duration,f=_.delay,g=_.immediateRender,v=_.stagger,y=_.overwrite,x=_.keyframes,b=_.defaults,w=_.scrollTrigger,T=_.yoyoEase,A=n.parent||vh,M=($h(e)||Yh(e)?Vh(e[0]):\\\\\\\"length\\\\\\\"in n)?[e]:ld(e);if(r._targets=M.length?vu(M):au(\\\\\\\"GSAP target \\\\\\\"+e+\\\\\\\" not found. https://greensock.com\\\\\\\",!Lh.nullTargetWarn)||[],r._ptLookup=[],r._overwrite=y,x||v||Xh(m)||Xh(f)){if(n=r.vars,(o=r.timeline=new Wd({data:\\\\\\\"nested\\\\\\\",defaults:b||{}})).kill(),o.parent=o._dp=mh(r),o._start=0,x)Iu(Nu(o.vars.defaults,{ease:\\\\\\\"none\\\\\\\"})),v?M.forEach((function(t,e){return x.forEach((function(n,i){return o.to(t,n,i?\\\\\\\">\\\\\\\":e*v)}))})):x.forEach((function(t){return o.to(M,t,\\\\\\\">\\\\\\\")}));else{if(c=M.length,d=v?hd(v):cu,jh(v))for(h in v)~Kd.indexOf(h)&&(p||(p={}),p[h]=v[h]);for(a=0;a<c;a++){for(h in l={},n)Qd.indexOf(h)<0&&(l[h]=n[h]);l.stagger=0,T&&(l.yoyoEase=T),p&&Ou(l,p),u=M[a],l.duration=+Zd(m,mh(r),a,u,M),l.delay=(+Zd(f,mh(r),a,u,M)||0)-r._delay,!v&&1===c&&l.delay&&(r._delay=f=l.delay,r._start+=f,l.delay=0),o.to(u,l,d(a,u,M))}o.duration()?m=f=0:r.timeline=0}m||r.duration(m=o.duration())}else r.timeline=0;return!0!==y||gh||(qd=mh(r),vh.killTweensOf(M),qd=0),qu(A,mh(r),i),n.reversed&&r.reverse(),n.paused&&r.paused(!0),(g||!m&&!x&&r._start===Tu(A._time)&&Wh(g)&&ku(mh(r))&&\\\\\\\"nested\\\\\\\"!==A.data)&&(r._tTime=-1e-8,r.render(Math.max(0,-f))),w&&Xu(mh(r),w),r}fh(e,t);var n=e.prototype;return n.render=function(t,e,n){var i,s,r,o,a,l,c,h,u,d=this._time,p=this._tDur,_=this._dur,m=t>p-Rh&&t>=0?p:t<Rh?0:t;if(_){if(m!==this._tTime||!t||n||!this._initted&&this._tTime||this._startAt&&this._zTime<0!=t<0){if(i=m,h=this.timeline,this._repeat){if(o=_+this._rDelay,this._repeat<-1&&t<0)return this.totalTime(100*o+t,e,n);if(i=Tu(m%o),m===p?(r=this._repeat,i=_):((r=~~(m/o))&&r===m/o&&(i=_,r--),i>_&&(i=_)),(l=this._yoyo&&1&r)&&(u=this._yEase,i=_-i),a=Gu(this._tTime,o),i===d&&!n&&this._initted)return this;r!==a&&(h&&this._yEase&&Bd(h,l),!this.vars.repeatRefresh||l||this._lock||(this._lock=n=1,this.render(Tu(o*r),!0).invalidate()._lock=0))}if(!this._initted){if(Yu(this,t<0?t:i,n,e))return this._tTime=0,this;if(_!==this._dur)return this.render(t,e,n)}if(this._tTime=m,this._time=i,!this._act&&this._ts&&(this._act=1,this._lazy=0),this.ratio=c=(u||this._ease)(i/_),this._from&&(this.ratio=c=1-c),i&&!d&&!e&&(vd(this,\\\\\\\"onStart\\\\\\\"),this._tTime!==m))return this;for(s=this._pt;s;)s.r(c,s.d),s=s._next;h&&h.render(t<0?t:!i&&l?-1e-8:h._dur*c,e,n)||this._startAt&&(this._zTime=t),this._onUpdate&&!e&&(t<0&&this._startAt&&this._startAt.render(t,!0,n),vd(this,\\\\\\\"onUpdate\\\\\\\")),this._repeat&&r!==a&&this.vars.onRepeat&&!e&&this.parent&&vd(this,\\\\\\\"onRepeat\\\\\\\"),m!==this._tDur&&m||this._tTime!==m||(t<0&&this._startAt&&!this._onUpdate&&this._startAt.render(t,!0,!0),(t||!_)&&(m===this._tDur&&this._ts>0||!m&&this._ts<0)&&Du(this,1),e||t<0&&!d||!m&&!d||(vd(this,m===p?\\\\\\\"onComplete\\\\\\\":\\\\\\\"onReverseComplete\\\\\\\",!0),this._prom&&!(m<p&&this.timeScale()>0)&&this._prom()))}}else!function(t,e,n,i){var s,r,o,a=t.ratio,l=e<0||!e&&(!t._start&&$u(t)&&(t._initted||!Ju(t))||(t._ts<0||t._dp._ts<0)&&!Ju(t))?0:1,c=t._rDelay,h=0;if(c&&t._repeat&&(h=id(0,t._tDur,e),r=Gu(h,c),o=Gu(t._tTime,c),t._yoyo&&1&r&&(l=1-l),r!==o&&(a=1-l,t.vars.repeatRefresh&&t._initted&&t.invalidate())),l!==a||i||t._zTime===Rh||!e&&t._zTime){if(!t._initted&&Yu(t,e,i,n))return;for(o=t._zTime,t._zTime=e||(n?Rh:0),n||(n=e&&!o),t.ratio=l,t._from&&(l=1-l),t._time=0,t._tTime=h,s=t._pt;s;)s.r(l,s.d),s=s._next;t._startAt&&e<0&&t._startAt.render(e,!0,!0),t._onUpdate&&!n&&vd(t,\\\\\\\"onUpdate\\\\\\\"),h&&t._repeat&&!n&&t.parent&&vd(t,\\\\\\\"onRepeat\\\\\\\"),(e>=t._tDur||e<0)&&t.ratio===l&&(l&&Du(t,1),n||(vd(t,l?\\\\\\\"onComplete\\\\\\\":\\\\\\\"onReverseComplete\\\\\\\",!0),t._prom&&t._prom()))}else t._zTime||(t._zTime=e)}(this,t,e,n);return this},n.targets=function(){return this._targets},n.invalidate=function(){return this._pt=this._op=this._startAt=this._onUpdate=this._lazy=this.ratio=0,this._ptLookup=[],this.timeline&&this.timeline.invalidate(),t.prototype.invalidate.call(this)},n.kill=function(t,e){if(void 0===e&&(e=\\\\\\\"all\\\\\\\"),!(t||e&&\\\\\\\"all\\\\\\\"!==e))return this._lazy=this._pt=0,this.parent?yd(this):this;if(this.timeline){var n=this.timeline.totalDuration();return this.timeline.killTweensOf(t,e,qd&&!0!==qd.vars.overwrite)._first||yd(this),this.parent&&n!==this.timeline.totalDuration()&&Zu(this,this._dur*this.timeline._tDur/n,0,1),this}var i,s,r,o,a,l,c,h=this._targets,u=t?ld(t):h,d=this._ptLookup,p=this._pt;if((!e||\\\\\\\"all\\\\\\\"===e)&&function(t,e){for(var n=t.length,i=n===e.length;i&&n--&&t[n]===e[n];);return n<0}(h,u))return\\\\\\\"all\\\\\\\"===e&&(this._pt=0),yd(this);for(i=this._op=this._op||[],\\\\\\\"all\\\\\\\"!==e&&(Uh(e)&&(a={},bu(e,(function(t){return a[t]=1})),e=a),e=function(t,e){var n,i,s,r,o=t[0]?yu(t[0]).harness:0,a=o&&o.aliases;if(!a)return e;for(i in n=Ou({},e),a)if(i in n)for(s=(r=a[i].split(\\\\\\\",\\\\\\\")).length;s--;)n[r[s]]=n[i];return n}(h,e)),c=h.length;c--;)if(~u.indexOf(h[c]))for(a in s=d[c],\\\\\\\"all\\\\\\\"===e?(i[c]=e,o=s,r={}):(r=i[c]=i[c]||{},o=e),o)(l=s&&s[a])&&(\\\\\\\"kill\\\\\\\"in l.d&&!0!==l.d.kill(a)||Fu(this,l,\\\\\\\"_pt\\\\\\\"),delete s[a]),\\\\\\\"all\\\\\\\"!==r&&(r[a]=1);return this._initted&&!this._pt&&p&&yd(this),this},e.to=function(t,n){return new e(t,n,arguments[2])},e.from=function(t,e){return ed(1,arguments)},e.delayedCall=function(t,n,i,s){return new e(n,0,{immediateRender:!1,lazy:!1,overwrite:!1,delay:t,onComplete:n,onReverseComplete:n,onCompleteParams:i,onReverseCompleteParams:i,callbackScope:s})},e.fromTo=function(t,e,n){return ed(2,arguments)},e.set=function(t,n){return n.duration=0,n.repeatDelay||(n.repeat=0),new e(t,n)},e.killTweensOf=function(t,e,n){return vh.killTweensOf(t,e,n)},e}(jd);Nu(tp.prototype,{_targets:[],_lazy:0,_startAt:0,_op:0,_onInit:0}),bu(\\\\\\\"staggerTo,staggerFrom,staggerFromTo\\\\\\\",(function(t){tp[t]=function(){var e=new Wd,n=rd.call(arguments,0);return n.splice(\\\\\\\"staggerFromTo\\\\\\\"===t?5:4,0,0),e[t].apply(e,n)}}));var ep=function(t,e,n){return t[e]=n},np=function(t,e,n){return t[e](n)},ip=function(t,e,n,i){return t[e](i.fp,n)},sp=function(t,e,n){return t.setAttribute(e,n)},rp=function(t,e){return Gh(t[e])?np:Hh(t[e])&&t.setAttribute?sp:ep},op=function(t,e){return e.set(e.t,e.p,Math.round(1e6*(e.s+e.c*t))/1e6,e)},ap=function(t,e){return e.set(e.t,e.p,!!(e.s+e.c*t),e)},lp=function(t,e){var n=e._pt,i=\\\\\\\"\\\\\\\";if(!t&&e.b)i=e.b;else if(1===t&&e.e)i=e.e;else{for(;n;)i=n.p+(n.m?n.m(n.s+n.c*t):Math.round(1e4*(n.s+n.c*t))/1e4)+i,n=n._next;i+=e.c}e.set(e.t,e.p,i,e)},cp=function(t,e){for(var n=e._pt;n;)n.r(t,n.d),n=n._next},hp=function(t,e,n,i){for(var s,r=this._pt;r;)s=r._next,r.p===i&&r.modifier(t,e,n),r=s},up=function(t){for(var e,n,i=this._pt;i;)n=i._next,i.p===t&&!i.op||i.op===t?Fu(this,i,\\\\\\\"_pt\\\\\\\"):i.dep||(e=1),i=n;return!e},dp=function(t,e,n,i){i.mSet(t,e,i.m.call(i.tween,n,i.mt),i)},pp=function(t){for(var e,n,i,s,r=t._pt;r;){for(e=r._next,n=i;n&&n.pr>r.pr;)n=n._next;(r._prev=n?n._prev:s)?r._prev._next=r:i=r,(r._next=n)?n._prev=r:s=r,r=e}t._pt=i},_p=function(){function t(t,e,n,i,s,r,o,a,l){this.t=e,this.s=i,this.c=s,this.p=n,this.r=r||op,this.d=o||this,this.set=a||ep,this.pr=l||0,this._next=t,t&&(t._prev=this)}return t.prototype.modifier=function(t,e,n){this.mSet=this.mSet||this.set,this.set=dp,this.m=t,this.mt=n,this.tween=e},t}();bu(gu+\\\\\\\"parent,duration,ease,delay,overwrite,runBackwards,startAt,yoyo,immediateRender,repeat,repeatDelay,data,paused,reversed,lazy,callbackScope,stringFilter,id,yoyoEase,stagger,inherit,repeatRefresh,keyframes,autoRevert,scrollTrigger\\\\\\\",(function(t){return hu[t]=1})),iu.TweenMax=iu.TweenLite=tp,iu.TimelineLite=iu.TimelineMax=Wd,vh=new Wd({sortChildren:!1,defaults:Oh,autoRemoveChildren:!0,id:\\\\\\\"root\\\\\\\",smoothChildTiming:!0}),Lh.stringFilter=Nd;var mp={registerPlugin:function(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];e.forEach((function(t){return xd(t)}))},timeline:function(t){return new Wd(t)},getTweensOf:function(t,e){return vh.getTweensOf(t,e)},getProperty:function(t,e,n,i){Uh(t)&&(t=ld(t)[0]);var s=yu(t||{}).get,r=n?Cu:Su;return\\\\\\\"native\\\\\\\"===n&&(n=\\\\\\\"\\\\\\\"),t?e?r((pu[e]&&pu[e].get||s)(t,e,n,i)):function(e,n,i){return r((pu[e]&&pu[e].get||s)(t,e,n,i))}:t},quickSetter:function(t,e,n){if((t=ld(t)).length>1){var i=t.map((function(t){return vp.quickSetter(t,e,n)})),s=i.length;return function(t){for(var e=s;e--;)i[e](t)}}t=t[0]||{};var r=pu[e],o=yu(t),a=o.harness&&(o.harness.aliases||{})[e]||e,l=r?function(e){var i=new r;Ah._pt=0,i.init(t,n?e+n:e,Ah,0,[t]),i.render(1,i),Ah._pt&&cp(1,Ah)}:o.set(t,a);return r?l:function(e){return l(t,a,n?e+n:e,o,1)}},isTweening:function(t){return vh.getTweensOf(t,!0).length>0},defaults:function(t){return t&&t.ease&&(t.ease=zd(t.ease,Oh.ease)),Pu(Oh,t||{})},config:function(t){return Pu(Lh,t||{})},registerEffect:function(t){var e=t.name,n=t.effect,i=t.plugins,s=t.defaults,r=t.extendTimeline;(i||\\\\\\\"\\\\\\\").split(\\\\\\\",\\\\\\\").forEach((function(t){return t&&!pu[t]&&!iu[t]&&au(e+\\\\\\\" effect requires \\\\\\\"+t+\\\\\\\" plugin.\\\\\\\")})),_u[e]=function(t,e,i){return n(ld(t),Nu(e||{},s),i)},r&&(Wd.prototype[e]=function(t,n,i){return this.add(_u[e](t,jh(n)?n:(i=n)&&{},this),i)})},registerEase:function(t,e){Pd[t]=zd(e)},parseEase:function(t,e){return arguments.length?zd(t,e):Pd},getById:function(t){return vh.getById(t)},exportRoot:function(t,e){void 0===t&&(t={});var n,i,s=new Wd(t);for(s.smoothChildTiming=Wh(t.smoothChildTiming),vh.remove(s),s._dp=0,s._time=s._tTime=vh._time,n=vh._first;n;)i=n._next,!e&&!n._dur&&n instanceof tp&&n.vars.onComplete===n._targets[0]||qu(s,n,n._start-n._delay),n=i;return qu(vh,s,0),s},utils:{wrap:function t(e,n,i){var s=n-e;return $h(e)?_d(e,t(0,e.length),n):nd(i,(function(t){return(s+(t-e)%s)%s+e}))},wrapYoyo:function t(e,n,i){var s=n-e,r=2*s;return $h(e)?_d(e,t(0,e.length-1),n):nd(i,(function(t){return e+((t=(r+(t-e)%r)%r||0)>s?r-t:t)}))},distribute:hd,random:pd,snap:dd,normalize:function(t,e,n){return fd(t,e,0,1,n)},getUnit:sd,clamp:function(t,e,n){return nd(n,(function(n){return id(t,e,n)}))},splitColor:Ad,toArray:ld,selector:function(t){return t=ld(t)[0]||au(\\\\\\\"Invalid scope\\\\\\\")||{},function(e){var n=t.current||t.nativeElement||t;return ld(e,n.querySelectorAll?n:n===t?au(\\\\\\\"Invalid scope\\\\\\\")||bh.createElement(\\\\\\\"div\\\\\\\"):t)}},mapRange:fd,pipe:function(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];return function(t){return e.reduce((function(t,e){return e(t)}),t)}},unitize:function(t,e){return function(n){return t(parseFloat(n))+(e||sd(n))}},interpolate:function t(e,n,i,s){var r=isNaN(e+n)?0:function(t){return(1-t)*e+t*n};if(!r){var o,a,l,c,h,u=Uh(e),d={};if(!0===i&&(s=1)&&(i=null),u)e={p:e},n={p:n};else if($h(e)&&!$h(n)){for(l=[],c=e.length,h=c-2,a=1;a<c;a++)l.push(t(e[a-1],e[a]));c--,r=function(t){t*=c;var e=Math.min(h,~~t);return l[e](t-e)},i=n}else s||(e=Ou($h(e)?[]:{},e));if(!l){for(o in n)Yd.call(d,e,o,\\\\\\\"get\\\\\\\",n[o]);r=function(t){return cp(t,d)||(u?e.p:e)}}}return nd(i,r)},shuffle:cd},install:ru,effects:_u,ticker:Ld,updateRoot:Wd.updateRoot,plugins:pu,globalTimeline:vh,core:{PropTween:_p,globals:lu,Tween:tp,Timeline:Wd,Animation:jd,getCache:yu,_removeLinkedListItem:Fu,suppressOverwrites:function(t){return gh=t}}};bu(\\\\\\\"to,from,fromTo,delayedCall,set,killTweensOf\\\\\\\",(function(t){return mp[t]=tp[t]})),Ld.add(Wd.updateRoot),Ah=mp.to({},{duration:0});var fp=function(t,e){for(var n=t._pt;n&&n.p!==e&&n.op!==e&&n.fp!==e;)n=n._next;return n},gp=function(t,e){return{name:t,rawVars:1,init:function(t,n,i){i._onInit=function(t){var i,s;if(Uh(n)&&(i={},bu(n,(function(t){return i[t]=1})),n=i),e){for(s in i={},n)i[s]=e(n[s]);n=i}!function(t,e){var n,i,s,r=t._targets;for(n in e)for(i=r.length;i--;)(s=t._ptLookup[i][n])&&(s=s.d)&&(s._pt&&(s=fp(s,n)),s&&s.modifier&&s.modifier(e[n],t,r[i],n))}(t,n)}}}},vp=mp.registerPlugin({name:\\\\\\\"attr\\\\\\\",init:function(t,e,n,i,s){var r,o;for(r in e)(o=this.add(t,\\\\\\\"setAttribute\\\\\\\",(t.getAttribute(r)||0)+\\\\\\\"\\\\\\\",e[r],i,s,0,0,r))&&(o.op=r),this._props.push(r)}},{name:\\\\\\\"endArray\\\\\\\",init:function(t,e){for(var n=e.length;n--;)this.add(t,n,t[n]||0,e[n])}},gp(\\\\\\\"roundProps\\\\\\\",ud),gp(\\\\\\\"modifiers\\\\\\\"),gp(\\\\\\\"snap\\\\\\\",dd))||mp;tp.version=Wd.version=vp.version=\\\\\\\"3.8.0\\\\\\\",wh=1,qh()&&Od();Pd.Power0,Pd.Power1,Pd.Power2,Pd.Power3,Pd.Power4,Pd.Linear,Pd.Quad,Pd.Cubic,Pd.Quart,Pd.Quint,Pd.Strong,Pd.Elastic,Pd.Back,Pd.SteppedEase,Pd.Bounce,Pd.Sine,Pd.Expo,Pd.Circ;var yp,xp,bp,wp,Tp,Ap,Mp,Ep={},Sp=180/Math.PI,Cp=Math.PI/180,Np=Math.atan2,Lp=/([A-Z])/g,Op=/(?:left|right|width|margin|padding|x)/i,Pp=/[\\\\s,\\\\(]\\\\S/,Rp={autoAlpha:\\\\\\\"opacity,visibility\\\\\\\",scale:\\\\\\\"scaleX,scaleY\\\\\\\",alpha:\\\\\\\"opacity\\\\\\\"},Ip=function(t,e){return e.set(e.t,e.p,Math.round(1e4*(e.s+e.c*t))/1e4+e.u,e)},Fp=function(t,e){return e.set(e.t,e.p,1===t?e.e:Math.round(1e4*(e.s+e.c*t))/1e4+e.u,e)},Dp=function(t,e){return e.set(e.t,e.p,t?Math.round(1e4*(e.s+e.c*t))/1e4+e.u:e.b,e)},Bp=function(t,e){var n=e.s+e.c*t;e.set(e.t,e.p,~~(n+(n<0?-.5:.5))+e.u,e)},zp=function(t,e){return e.set(e.t,e.p,t?e.e:e.b,e)},kp=function(t,e){return e.set(e.t,e.p,1!==t?e.b:e.e,e)},Up=function(t,e,n){return t.style[e]=n},Gp=function(t,e,n){return t.style.setProperty(e,n)},Vp=function(t,e,n){return t._gsap[e]=n},Hp=function(t,e,n){return t._gsap.scaleX=t._gsap.scaleY=n},jp=function(t,e,n,i,s){var r=t._gsap;r.scaleX=r.scaleY=n,r.renderTransform(s,r)},Wp=function(t,e,n,i,s){var r=t._gsap;r[e]=n,r.renderTransform(s,r)},qp=\\\\\\\"transform\\\\\\\",Xp=qp+\\\\\\\"Origin\\\\\\\",Yp=function(t,e){var n=xp.createElementNS?xp.createElementNS((e||\\\\\\\"http://www.w3.org/1999/xhtml\\\\\\\").replace(/^https/,\\\\\\\"http\\\\\\\"),t):xp.createElement(t);return n.style?n:xp.createElement(t)},$p=function t(e,n,i){var s=getComputedStyle(e);return s[n]||s.getPropertyValue(n.replace(Lp,\\\\\\\"-$1\\\\\\\").toLowerCase())||s.getPropertyValue(n)||!i&&t(e,Zp(n)||n,1)||\\\\\\\"\\\\\\\"},Jp=\\\\\\\"O,Moz,ms,Ms,Webkit\\\\\\\".split(\\\\\\\",\\\\\\\"),Zp=function(t,e,n){var i=(e||Tp).style,s=5;if(t in i&&!n)return t;for(t=t.charAt(0).toUpperCase()+t.substr(1);s--&&!(Jp[s]+t in i););return s<0?null:(3===s?\\\\\\\"ms\\\\\\\":s>=0?Jp[s]:\\\\\\\"\\\\\\\")+t},Kp=function(){\\\\\\\"undefined\\\\\\\"!=typeof window&&window.document&&(yp=window,xp=yp.document,bp=xp.documentElement,Tp=Yp(\\\\\\\"div\\\\\\\")||{style:{}},Yp(\\\\\\\"div\\\\\\\"),qp=Zp(qp),Xp=qp+\\\\\\\"Origin\\\\\\\",Tp.style.cssText=\\\\\\\"border-width:0;line-height:0;position:absolute;padding:0\\\\\\\",Mp=!!Zp(\\\\\\\"perspective\\\\\\\"),wp=1)},Qp=function t(e){var n,i=Yp(\\\\\\\"svg\\\\\\\",this.ownerSVGElement&&this.ownerSVGElement.getAttribute(\\\\\\\"xmlns\\\\\\\")||\\\\\\\"http://www.w3.org/2000/svg\\\\\\\"),s=this.parentNode,r=this.nextSibling,o=this.style.cssText;if(bp.appendChild(i),i.appendChild(this),this.style.display=\\\\\\\"block\\\\\\\",e)try{n=this.getBBox(),this._gsapBBox=this.getBBox,this.getBBox=t}catch(t){}else this._gsapBBox&&(n=this._gsapBBox());return s&&(r?s.insertBefore(this,r):s.appendChild(this)),bp.removeChild(i),this.style.cssText=o,n},t_=function(t,e){for(var n=e.length;n--;)if(t.hasAttribute(e[n]))return t.getAttribute(e[n])},e_=function(t){var e;try{e=t.getBBox()}catch(n){e=Qp.call(t,!0)}return e&&(e.width||e.height)||t.getBBox===Qp||(e=Qp.call(t,!0)),!e||e.width||e.x||e.y?e:{x:+t_(t,[\\\\\\\"x\\\\\\\",\\\\\\\"cx\\\\\\\",\\\\\\\"x1\\\\\\\"])||0,y:+t_(t,[\\\\\\\"y\\\\\\\",\\\\\\\"cy\\\\\\\",\\\\\\\"y1\\\\\\\"])||0,width:0,height:0}},n_=function(t){return!(!t.getCTM||t.parentNode&&!t.ownerSVGElement||!e_(t))},i_=function(t,e){if(e){var n=t.style;e in Ep&&e!==Xp&&(e=qp),n.removeProperty?(\\\\\\\"ms\\\\\\\"!==e.substr(0,2)&&\\\\\\\"webkit\\\\\\\"!==e.substr(0,6)||(e=\\\\\\\"-\\\\\\\"+e),n.removeProperty(e.replace(Lp,\\\\\\\"-$1\\\\\\\").toLowerCase())):n.removeAttribute(e)}},s_=function(t,e,n,i,s,r){var o=new _p(t._pt,e,n,0,1,r?kp:zp);return t._pt=o,o.b=i,o.e=s,t._props.push(n),o},r_={deg:1,rad:1,turn:1},o_=function t(e,n,i,s){var r,o,a,l,c=parseFloat(i)||0,h=(i+\\\\\\\"\\\\\\\").trim().substr((c+\\\\\\\"\\\\\\\").length)||\\\\\\\"px\\\\\\\",u=Tp.style,d=Op.test(n),p=\\\\\\\"svg\\\\\\\"===e.tagName.toLowerCase(),_=(p?\\\\\\\"client\\\\\\\":\\\\\\\"offset\\\\\\\")+(d?\\\\\\\"Width\\\\\\\":\\\\\\\"Height\\\\\\\"),m=100,f=\\\\\\\"px\\\\\\\"===s,g=\\\\\\\"%\\\\\\\"===s;return s===h||!c||r_[s]||r_[h]?c:(\\\\\\\"px\\\\\\\"!==h&&!f&&(c=t(e,n,i,\\\\\\\"px\\\\\\\")),l=e.getCTM&&n_(e),!g&&\\\\\\\"%\\\\\\\"!==h||!Ep[n]&&!~n.indexOf(\\\\\\\"adius\\\\\\\")?(u[d?\\\\\\\"width\\\\\\\":\\\\\\\"height\\\\\\\"]=m+(f?h:s),o=~n.indexOf(\\\\\\\"adius\\\\\\\")||\\\\\\\"em\\\\\\\"===s&&e.appendChild&&!p?e:e.parentNode,l&&(o=(e.ownerSVGElement||{}).parentNode),o&&o!==xp&&o.appendChild||(o=xp.body),(a=o._gsap)&&g&&a.width&&d&&a.time===Ld.time?wu(c/a.width*m):((g||\\\\\\\"%\\\\\\\"===h)&&(u.position=$p(e,\\\\\\\"position\\\\\\\")),o===e&&(u.position=\\\\\\\"static\\\\\\\"),o.appendChild(Tp),r=Tp[_],o.removeChild(Tp),u.position=\\\\\\\"absolute\\\\\\\",d&&g&&((a=yu(o)).time=Ld.time,a.width=o[_]),wu(f?r*c/m:r&&c?m/r*c:0))):(r=l?e.getBBox()[d?\\\\\\\"width\\\\\\\":\\\\\\\"height\\\\\\\"]:e[_],wu(g?c/r*m:c/100*r)))},a_=function(t,e,n,i){var s;return wp||Kp(),e in Rp&&\\\\\\\"transform\\\\\\\"!==e&&~(e=Rp[e]).indexOf(\\\\\\\",\\\\\\\")&&(e=e.split(\\\\\\\",\\\\\\\")[0]),Ep[e]&&\\\\\\\"transform\\\\\\\"!==e?(s=v_(t,i),s=\\\\\\\"transformOrigin\\\\\\\"!==e?s[e]:s.svg?s.origin:y_($p(t,Xp))+\\\\\\\" \\\\\\\"+s.zOrigin+\\\\\\\"px\\\\\\\"):(!(s=t.style[e])||\\\\\\\"auto\\\\\\\"===s||i||~(s+\\\\\\\"\\\\\\\").indexOf(\\\\\\\"calc(\\\\\\\"))&&(s=u_[e]&&u_[e](t,e,n)||$p(t,e)||xu(t,e)||(\\\\\\\"opacity\\\\\\\"===e?1:0)),n&&!~(s+\\\\\\\"\\\\\\\").trim().indexOf(\\\\\\\" \\\\\\\")?o_(t,e,s,n)+n:s},l_=function(t,e,n,i){if(!n||\\\\\\\"none\\\\\\\"===n){var s=Zp(e,t,1),r=s&&$p(t,s,1);r&&r!==n?(e=s,n=r):\\\\\\\"borderColor\\\\\\\"===e&&(n=$p(t,\\\\\\\"borderTopColor\\\\\\\"))}var o,a,l,c,h,u,d,p,_,m,f,g,v=new _p(this._pt,t.style,e,0,1,lp),y=0,x=0;if(v.b=n,v.e=i,n+=\\\\\\\"\\\\\\\",\\\\\\\"auto\\\\\\\"===(i+=\\\\\\\"\\\\\\\")&&(t.style[e]=i,i=$p(t,e)||i,t.style[e]=n),Nd(o=[n,i]),i=o[1],l=(n=o[0]).match(Kh)||[],(i.match(Kh)||[]).length){for(;a=Kh.exec(i);)d=a[0],_=i.substring(y,a.index),h?h=(h+1)%5:\\\\\\\"rgba(\\\\\\\"!==_.substr(-5)&&\\\\\\\"hsla(\\\\\\\"!==_.substr(-5)||(h=1),d!==(u=l[x++]||\\\\\\\"\\\\\\\")&&(c=parseFloat(u)||0,f=u.substr((c+\\\\\\\"\\\\\\\").length),(g=\\\\\\\"=\\\\\\\"===d.charAt(1)?+(d.charAt(0)+\\\\\\\"1\\\\\\\"):0)&&(d=d.substr(2)),p=parseFloat(d),m=d.substr((p+\\\\\\\"\\\\\\\").length),y=Kh.lastIndex-m.length,m||(m=m||Lh.units[e]||f,y===i.length&&(i+=m,v.e+=m)),f!==m&&(c=o_(t,e,u,m)||0),v._pt={_next:v._pt,p:_||1===x?_:\\\\\\\",\\\\\\\",s:c,c:g?g*p:p-c,m:h&&h<4||\\\\\\\"zIndex\\\\\\\"===e?Math.round:0});v.c=y<i.length?i.substring(y,i.length):\\\\\\\"\\\\\\\"}else v.r=\\\\\\\"display\\\\\\\"===e&&\\\\\\\"none\\\\\\\"===i?kp:zp;return tu.test(i)&&(v.e=0),this._pt=v,v},c_={top:\\\\\\\"0%\\\\\\\",bottom:\\\\\\\"100%\\\\\\\",left:\\\\\\\"0%\\\\\\\",right:\\\\\\\"100%\\\\\\\",center:\\\\\\\"50%\\\\\\\"},h_=function(t,e){if(e.tween&&e.tween._time===e.tween._dur){var n,i,s,r=e.t,o=r.style,a=e.u,l=r._gsap;if(\\\\\\\"all\\\\\\\"===a||!0===a)o.cssText=\\\\\\\"\\\\\\\",i=1;else for(s=(a=a.split(\\\\\\\",\\\\\\\")).length;--s>-1;)n=a[s],Ep[n]&&(i=1,n=\\\\\\\"transformOrigin\\\\\\\"===n?Xp:qp),i_(r,n);i&&(i_(r,qp),l&&(l.svg&&r.removeAttribute(\\\\\\\"transform\\\\\\\"),v_(r,1),l.uncache=1))}},u_={clearProps:function(t,e,n,i,s){if(\\\\\\\"isFromStart\\\\\\\"!==s.data){var r=t._pt=new _p(t._pt,e,n,0,0,h_);return r.u=i,r.pr=-10,r.tween=s,t._props.push(n),1}}},d_=[1,0,0,1,0,0],p_={},__=function(t){return\\\\\\\"matrix(1, 0, 0, 1, 0, 0)\\\\\\\"===t||\\\\\\\"none\\\\\\\"===t||!t},m_=function(t){var e=$p(t,qp);return __(e)?d_:e.substr(7).match(Zh).map(wu)},f_=function(t,e){var n,i,s,r,o=t._gsap||yu(t),a=t.style,l=m_(t);return o.svg&&t.getAttribute(\\\\\\\"transform\\\\\\\")?\\\\\\\"1,0,0,1,0,0\\\\\\\"===(l=[(s=t.transform.baseVal.consolidate().matrix).a,s.b,s.c,s.d,s.e,s.f]).join(\\\\\\\",\\\\\\\")?d_:l:(l!==d_||t.offsetParent||t===bp||o.svg||(s=a.display,a.display=\\\\\\\"block\\\\\\\",(n=t.parentNode)&&t.offsetParent||(r=1,i=t.nextSibling,bp.appendChild(t)),l=m_(t),s?a.display=s:i_(t,\\\\\\\"display\\\\\\\"),r&&(i?n.insertBefore(t,i):n?n.appendChild(t):bp.removeChild(t))),e&&l.length>6?[l[0],l[1],l[4],l[5],l[12],l[13]]:l)},g_=function(t,e,n,i,s,r){var o,a,l,c=t._gsap,h=s||f_(t,!0),u=c.xOrigin||0,d=c.yOrigin||0,p=c.xOffset||0,_=c.yOffset||0,m=h[0],f=h[1],g=h[2],v=h[3],y=h[4],x=h[5],b=e.split(\\\\\\\" \\\\\\\"),w=parseFloat(b[0])||0,T=parseFloat(b[1])||0;n?h!==d_&&(a=m*v-f*g)&&(l=w*(-f/a)+T*(m/a)-(m*x-f*y)/a,w=w*(v/a)+T*(-g/a)+(g*x-v*y)/a,T=l):(w=(o=e_(t)).x+(~b[0].indexOf(\\\\\\\"%\\\\\\\")?w/100*o.width:w),T=o.y+(~(b[1]||b[0]).indexOf(\\\\\\\"%\\\\\\\")?T/100*o.height:T)),i||!1!==i&&c.smooth?(y=w-u,x=T-d,c.xOffset=p+(y*m+x*g)-y,c.yOffset=_+(y*f+x*v)-x):c.xOffset=c.yOffset=0,c.xOrigin=w,c.yOrigin=T,c.smooth=!!i,c.origin=e,c.originIsAbsolute=!!n,t.style[Xp]=\\\\\\\"0px 0px\\\\\\\",r&&(s_(r,c,\\\\\\\"xOrigin\\\\\\\",u,w),s_(r,c,\\\\\\\"yOrigin\\\\\\\",d,T),s_(r,c,\\\\\\\"xOffset\\\\\\\",p,c.xOffset),s_(r,c,\\\\\\\"yOffset\\\\\\\",_,c.yOffset)),t.setAttribute(\\\\\\\"data-svg-origin\\\\\\\",w+\\\\\\\" \\\\\\\"+T)},v_=function(t,e){var n=t._gsap||new Hd(t);if(\\\\\\\"x\\\\\\\"in n&&!e&&!n.uncache)return n;var i,s,r,o,a,l,c,h,u,d,p,_,m,f,g,v,y,x,b,w,T,A,M,E,S,C,N,L,O,P,R,I,F=t.style,D=n.scaleX<0,B=\\\\\\\"px\\\\\\\",z=\\\\\\\"deg\\\\\\\",k=$p(t,Xp)||\\\\\\\"0\\\\\\\";return i=s=r=l=c=h=u=d=p=0,o=a=1,n.svg=!(!t.getCTM||!n_(t)),f=f_(t,n.svg),n.svg&&(E=(!n.uncache||\\\\\\\"0px 0px\\\\\\\"===k)&&!e&&t.getAttribute(\\\\\\\"data-svg-origin\\\\\\\"),g_(t,E||k,!!E||n.originIsAbsolute,!1!==n.smooth,f)),_=n.xOrigin||0,m=n.yOrigin||0,f!==d_&&(x=f[0],b=f[1],w=f[2],T=f[3],i=A=f[4],s=M=f[5],6===f.length?(o=Math.sqrt(x*x+b*b),a=Math.sqrt(T*T+w*w),l=x||b?Np(b,x)*Sp:0,(u=w||T?Np(w,T)*Sp+l:0)&&(a*=Math.abs(Math.cos(u*Cp))),n.svg&&(i-=_-(_*x+m*w),s-=m-(_*b+m*T))):(I=f[6],P=f[7],N=f[8],L=f[9],O=f[10],R=f[11],i=f[12],s=f[13],r=f[14],c=(g=Np(I,O))*Sp,g&&(E=A*(v=Math.cos(-g))+N*(y=Math.sin(-g)),S=M*v+L*y,C=I*v+O*y,N=A*-y+N*v,L=M*-y+L*v,O=I*-y+O*v,R=P*-y+R*v,A=E,M=S,I=C),h=(g=Np(-w,O))*Sp,g&&(v=Math.cos(-g),R=T*(y=Math.sin(-g))+R*v,x=E=x*v-N*y,b=S=b*v-L*y,w=C=w*v-O*y),l=(g=Np(b,x))*Sp,g&&(E=x*(v=Math.cos(g))+b*(y=Math.sin(g)),S=A*v+M*y,b=b*v-x*y,M=M*v-A*y,x=E,A=S),c&&Math.abs(c)+Math.abs(l)>359.9&&(c=l=0,h=180-h),o=wu(Math.sqrt(x*x+b*b+w*w)),a=wu(Math.sqrt(M*M+I*I)),g=Np(A,M),u=Math.abs(g)>2e-4?g*Sp:0,p=R?1/(R<0?-R:R):0),n.svg&&(E=t.getAttribute(\\\\\\\"transform\\\\\\\"),n.forceCSS=t.setAttribute(\\\\\\\"transform\\\\\\\",\\\\\\\"\\\\\\\")||!__($p(t,qp)),E&&t.setAttribute(\\\\\\\"transform\\\\\\\",E))),Math.abs(u)>90&&Math.abs(u)<270&&(D?(o*=-1,u+=l<=0?180:-180,l+=l<=0?180:-180):(a*=-1,u+=u<=0?180:-180)),n.x=i-((n.xPercent=i&&(n.xPercent||(Math.round(t.offsetWidth/2)===Math.round(-i)?-50:0)))?t.offsetWidth*n.xPercent/100:0)+B,n.y=s-((n.yPercent=s&&(n.yPercent||(Math.round(t.offsetHeight/2)===Math.round(-s)?-50:0)))?t.offsetHeight*n.yPercent/100:0)+B,n.z=r+B,n.scaleX=wu(o),n.scaleY=wu(a),n.rotation=wu(l)+z,n.rotationX=wu(c)+z,n.rotationY=wu(h)+z,n.skewX=u+z,n.skewY=d+z,n.transformPerspective=p+B,(n.zOrigin=parseFloat(k.split(\\\\\\\" \\\\\\\")[2])||0)&&(F[Xp]=y_(k)),n.xOffset=n.yOffset=0,n.force3D=Lh.force3D,n.renderTransform=n.svg?E_:Mp?M_:b_,n.uncache=0,n},y_=function(t){return(t=t.split(\\\\\\\" \\\\\\\"))[0]+\\\\\\\" \\\\\\\"+t[1]},x_=function(t,e,n){var i=sd(e);return wu(parseFloat(e)+parseFloat(o_(t,\\\\\\\"x\\\\\\\",n+\\\\\\\"px\\\\\\\",i)))+i},b_=function(t,e){e.z=\\\\\\\"0px\\\\\\\",e.rotationY=e.rotationX=\\\\\\\"0deg\\\\\\\",e.force3D=0,M_(t,e)},w_=\\\\\\\"0deg\\\\\\\",T_=\\\\\\\"0px\\\\\\\",A_=\\\\\\\") \\\\\\\",M_=function(t,e){var n=e||this,i=n.xPercent,s=n.yPercent,r=n.x,o=n.y,a=n.z,l=n.rotation,c=n.rotationY,h=n.rotationX,u=n.skewX,d=n.skewY,p=n.scaleX,_=n.scaleY,m=n.transformPerspective,f=n.force3D,g=n.target,v=n.zOrigin,y=\\\\\\\"\\\\\\\",x=\\\\\\\"auto\\\\\\\"===f&&t&&1!==t||!0===f;if(v&&(h!==w_||c!==w_)){var b,w=parseFloat(c)*Cp,T=Math.sin(w),A=Math.cos(w);w=parseFloat(h)*Cp,b=Math.cos(w),r=x_(g,r,T*b*-v),o=x_(g,o,-Math.sin(w)*-v),a=x_(g,a,A*b*-v+v)}m!==T_&&(y+=\\\\\\\"perspective(\\\\\\\"+m+A_),(i||s)&&(y+=\\\\\\\"translate(\\\\\\\"+i+\\\\\\\"%, \\\\\\\"+s+\\\\\\\"%) \\\\\\\"),(x||r!==T_||o!==T_||a!==T_)&&(y+=a!==T_||x?\\\\\\\"translate3d(\\\\\\\"+r+\\\\\\\", \\\\\\\"+o+\\\\\\\", \\\\\\\"+a+\\\\\\\") \\\\\\\":\\\\\\\"translate(\\\\\\\"+r+\\\\\\\", \\\\\\\"+o+A_),l!==w_&&(y+=\\\\\\\"rotate(\\\\\\\"+l+A_),c!==w_&&(y+=\\\\\\\"rotateY(\\\\\\\"+c+A_),h!==w_&&(y+=\\\\\\\"rotateX(\\\\\\\"+h+A_),u===w_&&d===w_||(y+=\\\\\\\"skew(\\\\\\\"+u+\\\\\\\", \\\\\\\"+d+A_),1===p&&1===_||(y+=\\\\\\\"scale(\\\\\\\"+p+\\\\\\\", \\\\\\\"+_+A_),g.style[qp]=y||\\\\\\\"translate(0, 0)\\\\\\\"},E_=function(t,e){var n,i,s,r,o,a=e||this,l=a.xPercent,c=a.yPercent,h=a.x,u=a.y,d=a.rotation,p=a.skewX,_=a.skewY,m=a.scaleX,f=a.scaleY,g=a.target,v=a.xOrigin,y=a.yOrigin,x=a.xOffset,b=a.yOffset,w=a.forceCSS,T=parseFloat(h),A=parseFloat(u);d=parseFloat(d),p=parseFloat(p),(_=parseFloat(_))&&(p+=_=parseFloat(_),d+=_),d||p?(d*=Cp,p*=Cp,n=Math.cos(d)*m,i=Math.sin(d)*m,s=Math.sin(d-p)*-f,r=Math.cos(d-p)*f,p&&(_*=Cp,o=Math.tan(p-_),s*=o=Math.sqrt(1+o*o),r*=o,_&&(o=Math.tan(_),n*=o=Math.sqrt(1+o*o),i*=o)),n=wu(n),i=wu(i),s=wu(s),r=wu(r)):(n=m,r=f,i=s=0),(T&&!~(h+\\\\\\\"\\\\\\\").indexOf(\\\\\\\"px\\\\\\\")||A&&!~(u+\\\\\\\"\\\\\\\").indexOf(\\\\\\\"px\\\\\\\"))&&(T=o_(g,\\\\\\\"x\\\\\\\",h,\\\\\\\"px\\\\\\\"),A=o_(g,\\\\\\\"y\\\\\\\",u,\\\\\\\"px\\\\\\\")),(v||y||x||b)&&(T=wu(T+v-(v*n+y*s)+x),A=wu(A+y-(v*i+y*r)+b)),(l||c)&&(o=g.getBBox(),T=wu(T+l/100*o.width),A=wu(A+c/100*o.height)),o=\\\\\\\"matrix(\\\\\\\"+n+\\\\\\\",\\\\\\\"+i+\\\\\\\",\\\\\\\"+s+\\\\\\\",\\\\\\\"+r+\\\\\\\",\\\\\\\"+T+\\\\\\\",\\\\\\\"+A+\\\\\\\")\\\\\\\",g.setAttribute(\\\\\\\"transform\\\\\\\",o),w&&(g.style[qp]=o)},S_=function(t,e,n,i,s,r){var o,a,l=360,c=Uh(s),h=parseFloat(s)*(c&&~s.indexOf(\\\\\\\"rad\\\\\\\")?Sp:1),u=r?h*r:h-i,d=i+u+\\\\\\\"deg\\\\\\\";return c&&(\\\\\\\"short\\\\\\\"===(o=s.split(\\\\\\\"_\\\\\\\")[1])&&(u%=l)!==u%180&&(u+=u<0?l:-360),\\\\\\\"cw\\\\\\\"===o&&u<0?u=(u+36e9)%l-~~(u/l)*l:\\\\\\\"ccw\\\\\\\"===o&&u>0&&(u=(u-36e9)%l-~~(u/l)*l)),t._pt=a=new _p(t._pt,e,n,i,u,Fp),a.e=d,a.u=\\\\\\\"deg\\\\\\\",t._props.push(n),a},C_=function(t,e){for(var n in e)t[n]=e[n];return t},N_=function(t,e,n){var i,s,r,o,a,l,c,h=C_({},n._gsap),u=n.style;for(s in h.svg?(r=n.getAttribute(\\\\\\\"transform\\\\\\\"),n.setAttribute(\\\\\\\"transform\\\\\\\",\\\\\\\"\\\\\\\"),u[qp]=e,i=v_(n,1),i_(n,qp),n.setAttribute(\\\\\\\"transform\\\\\\\",r)):(r=getComputedStyle(n)[qp],u[qp]=e,i=v_(n,1),u[qp]=r),Ep)(r=h[s])!==(o=i[s])&&\\\\\\\"perspective,force3D,transformOrigin,svgOrigin\\\\\\\".indexOf(s)<0&&(a=sd(r)!==(c=sd(o))?o_(n,s,r,c):parseFloat(r),l=parseFloat(o),t._pt=new _p(t._pt,i,s,a,l-a,Ip),t._pt.u=c||0,t._props.push(s));C_(i,h)};bu(\\\\\\\"padding,margin,Width,Radius\\\\\\\",(function(t,e){var n=\\\\\\\"Top\\\\\\\",i=\\\\\\\"Right\\\\\\\",s=\\\\\\\"Bottom\\\\\\\",r=\\\\\\\"Left\\\\\\\",o=(e<3?[n,i,s,r]:[n+r,n+i,s+i,s+r]).map((function(n){return e<2?t+n:\\\\\\\"border\\\\\\\"+n+t}));u_[e>1?\\\\\\\"border\\\\\\\"+t:t]=function(t,e,n,i,s){var r,a;if(arguments.length<4)return r=o.map((function(e){return a_(t,e,n)})),5===(a=r.join(\\\\\\\" \\\\\\\")).split(r[0]).length?r[0]:a;r=(i+\\\\\\\"\\\\\\\").split(\\\\\\\" \\\\\\\"),a={},o.forEach((function(t,e){return a[t]=r[e]=r[e]||r[(e-1)/2|0]})),t.init(e,a,s)}}));var L_,O_,P_,R_={name:\\\\\\\"css\\\\\\\",register:Kp,targetTest:function(t){return t.style&&t.nodeType},init:function(t,e,n,i,s){var r,o,a,l,c,h,u,d,p,_,m,f,g,v,y,x,b,w,T,A=this._props,M=t.style,E=n.vars.startAt;for(u in wp||Kp(),e)if(\\\\\\\"autoRound\\\\\\\"!==u&&(o=e[u],!pu[u]||!$d(u,e,n,i,t,s)))if(c=typeof o,h=u_[u],\\\\\\\"function\\\\\\\"===c&&(c=typeof(o=o.call(n,i,t,s))),\\\\\\\"string\\\\\\\"===c&&~o.indexOf(\\\\\\\"random(\\\\\\\")&&(o=md(o)),h)h(this,t,u,o,n)&&(y=1);else if(\\\\\\\"--\\\\\\\"===u.substr(0,2))r=(getComputedStyle(t).getPropertyValue(u)+\\\\\\\"\\\\\\\").trim(),o+=\\\\\\\"\\\\\\\",Sd.lastIndex=0,Sd.test(r)||(d=sd(r),p=sd(o)),p?d!==p&&(r=o_(t,u,r,p)+p):d&&(o+=d),this.add(M,\\\\\\\"setProperty\\\\\\\",r,o,i,s,0,0,u),A.push(u);else if(\\\\\\\"undefined\\\\\\\"!==c){if(E&&u in E?(r=\\\\\\\"function\\\\\\\"==typeof E[u]?E[u].call(n,i,t,s):E[u],u in Lh.units&&!sd(r)&&(r+=Lh.units[u]),Uh(r)&&~r.indexOf(\\\\\\\"random(\\\\\\\")&&(r=md(r)),\\\\\\\"=\\\\\\\"===(r+\\\\\\\"\\\\\\\").charAt(1)&&(r=a_(t,u))):r=a_(t,u),l=parseFloat(r),(_=\\\\\\\"string\\\\\\\"===c&&\\\\\\\"=\\\\\\\"===o.charAt(1)?+(o.charAt(0)+\\\\\\\"1\\\\\\\"):0)&&(o=o.substr(2)),a=parseFloat(o),u in Rp&&(\\\\\\\"autoAlpha\\\\\\\"===u&&(1===l&&\\\\\\\"hidden\\\\\\\"===a_(t,\\\\\\\"visibility\\\\\\\")&&a&&(l=0),s_(this,M,\\\\\\\"visibility\\\\\\\",l?\\\\\\\"inherit\\\\\\\":\\\\\\\"hidden\\\\\\\",a?\\\\\\\"inherit\\\\\\\":\\\\\\\"hidden\\\\\\\",!a)),\\\\\\\"scale\\\\\\\"!==u&&\\\\\\\"transform\\\\\\\"!==u&&~(u=Rp[u]).indexOf(\\\\\\\",\\\\\\\")&&(u=u.split(\\\\\\\",\\\\\\\")[0])),m=u in Ep)if(f||((g=t._gsap).renderTransform&&!e.parseTransform||v_(t,e.parseTransform),v=!1!==e.smoothOrigin&&g.smooth,(f=this._pt=new _p(this._pt,M,qp,0,1,g.renderTransform,g,0,-1)).dep=1),\\\\\\\"scale\\\\\\\"===u)this._pt=new _p(this._pt,g,\\\\\\\"scaleY\\\\\\\",g.scaleY,(_?_*a:a-g.scaleY)||0),A.push(\\\\\\\"scaleY\\\\\\\",u),u+=\\\\\\\"X\\\\\\\";else{if(\\\\\\\"transformOrigin\\\\\\\"===u){b=void 0,w=void 0,T=void 0,b=(x=o).split(\\\\\\\" \\\\\\\"),w=b[0],T=b[1]||\\\\\\\"50%\\\\\\\",\\\\\\\"top\\\\\\\"!==w&&\\\\\\\"bottom\\\\\\\"!==w&&\\\\\\\"left\\\\\\\"!==T&&\\\\\\\"right\\\\\\\"!==T||(x=w,w=T,T=x),b[0]=c_[w]||w,b[1]=c_[T]||T,o=b.join(\\\\\\\" \\\\\\\"),g.svg?g_(t,o,0,v,0,this):((p=parseFloat(o.split(\\\\\\\" \\\\\\\")[2])||0)!==g.zOrigin&&s_(this,g,\\\\\\\"zOrigin\\\\\\\",g.zOrigin,p),s_(this,M,u,y_(r),y_(o)));continue}if(\\\\\\\"svgOrigin\\\\\\\"===u){g_(t,o,1,v,0,this);continue}if(u in p_){S_(this,g,u,l,o,_);continue}if(\\\\\\\"smoothOrigin\\\\\\\"===u){s_(this,g,\\\\\\\"smooth\\\\\\\",g.smooth,o);continue}if(\\\\\\\"force3D\\\\\\\"===u){g[u]=o;continue}if(\\\\\\\"transform\\\\\\\"===u){N_(this,o,t);continue}}else u in M||(u=Zp(u)||u);if(m||(a||0===a)&&(l||0===l)&&!Pp.test(o)&&u in M)a||(a=0),(d=(r+\\\\\\\"\\\\\\\").substr((l+\\\\\\\"\\\\\\\").length))!==(p=sd(o)||(u in Lh.units?Lh.units[u]:d))&&(l=o_(t,u,r,p)),this._pt=new _p(this._pt,m?g:M,u,l,_?_*a:a-l,m||\\\\\\\"px\\\\\\\"!==p&&\\\\\\\"zIndex\\\\\\\"!==u||!1===e.autoRound?Ip:Bp),this._pt.u=p||0,d!==p&&\\\\\\\"%\\\\\\\"!==p&&(this._pt.b=r,this._pt.r=Dp);else if(u in M)l_.call(this,t,u,r,o);else{if(!(u in t)){ou(u,o);continue}this.add(t,u,r||t[u],o,i,s)}A.push(u)}y&&pp(this)},get:a_,aliases:Rp,getSetter:function(t,e,n){var i=Rp[e];return i&&i.indexOf(\\\\\\\",\\\\\\\")<0&&(e=i),e in Ep&&e!==Xp&&(t._gsap.x||a_(t,\\\\\\\"x\\\\\\\"))?n&&Ap===n?\\\\\\\"scale\\\\\\\"===e?Hp:Vp:(Ap=n||{})&&(\\\\\\\"scale\\\\\\\"===e?jp:Wp):t.style&&!Hh(t.style[e])?Up:~e.indexOf(\\\\\\\"-\\\\\\\")?Gp:rp(t,e)},core:{_removeProperty:i_,_getMatrix:f_}};vp.utils.checkPrefix=Zp,P_=bu((L_=\\\\\\\"x,y,z,scale,scaleX,scaleY,xPercent,yPercent\\\\\\\")+\\\\\\\",\\\\\\\"+(O_=\\\\\\\"rotation,rotationX,rotationY,skewX,skewY\\\\\\\")+\\\\\\\",transform,transformOrigin,svgOrigin,force3D,smoothOrigin,transformPerspective\\\\\\\",(function(t){Ep[t]=1})),bu(O_,(function(t){Lh.units[t]=\\\\\\\"deg\\\\\\\",p_[t]=1})),Rp[P_[13]]=L_+\\\\\\\",\\\\\\\"+O_,bu(\\\\\\\"0:translateX,1:translateY,2:translateZ,8:rotate,8:rotationZ,8:rotateZ,9:rotateX,10:rotateY\\\\\\\",(function(t){var e=t.split(\\\\\\\":\\\\\\\");Rp[e[1]]=P_[e[0]]})),bu(\\\\\\\"x,y,z,top,right,bottom,left,width,height,fontSize,padding,margin,perspective\\\\\\\",(function(t){Lh.units[t]=\\\\\\\"px\\\\\\\"})),vp.registerPlugin(R_);var I_,F_=vp.registerPlugin(R_)||vp;F_.core.Tween;!function(t){t.SET=\\\\\\\"set\\\\\\\",t.ADD=\\\\\\\"add\\\\\\\",t.SUBSTRACT=\\\\\\\"substract\\\\\\\"}(I_||(I_={}));const D_=[I_.SET,I_.ADD,I_.SUBSTRACT];class B_{constructor(){this._timelineBuilders=[],this._duration=1,this._operation=I_.SET,this._delay=0,this._debug=!1}setDebug(t){this._debug=t}_printDebug(t){this._debug&&console.log(t)}addTimelineBuilder(t){this._timelineBuilders.push(t),t.setParent(this)}timelineBuilders(){return this._timelineBuilders}setParent(t){this._parent=t}parent(){return this._parent}setTarget(t){this._target=t;for(let e of this._timelineBuilders)e.setTarget(t)}target(){return this._target}setDuration(t){if(t>=0){this._duration=t;for(let e of this._timelineBuilders)e.setDuration(t)}}duration(){return this._duration}setEasing(t){this._easing=t;for(let e of this._timelineBuilders)e.setEasing(t)}easing(){return this._easing}setOperation(t){this._operation=t;for(let e of this._timelineBuilders)e.setOperation(t)}operation(){return this._operation}setRepeatParams(t){this._repeatParams=t;for(let e of this._timelineBuilders)e.setRepeatParams(t)}repeatParams(){return this._repeatParams}setDelay(t){this._delay=t;for(let e of this._timelineBuilders)e.setDelay(t)}delay(){return this._delay}setPosition(t){this._position=t}position(){return this._position}setUpdateCallback(t){this._updateCallback=t}updateCallback(){return this._updateCallback}clone(){const t=new B_;if(t.setDuration(this._duration),t.setOperation(this._operation),t.setDelay(this._delay),this._target&&t.setTarget(this._target.clone()),this._easing&&t.setEasing(this._easing),this._delay&&t.setDelay(this._delay),this._updateCallback&&t.setUpdateCallback(this._updateCallback.clone()),this._repeatParams&&t.setRepeatParams({count:this._repeatParams.count,delay:this._repeatParams.delay,yoyo:this._repeatParams.yoyo}),this._property){const e=this._property.name();e&&t.setPropertyName(e);const n=this._property.targetValue();null!=n&&t.setPropertyValue(n)}this._position&&t.setPosition(this._position.clone());for(let e of this._timelineBuilders){const n=e.clone();t.addTimelineBuilder(n)}return t}setPropertyName(t){this.property().setName(t)}property(){return this._property=this._property||new _h}propertyName(){return this.property().name()}setPropertyValue(t){this.property().setTargetValue(t)}populate(t){var e;this._printDebug([\\\\\\\"populate\\\\\\\",this,t]);for(let n of this._timelineBuilders){const i=F_.timeline();n.setDebug(this._debug),n.populate(i);const s=(null===(e=n.position())||void 0===e?void 0:e.toParameter())||void 0;t.add(i,s)}this._property&&this._target&&(this._property.setDebug(this._debug),this._property.addToTimeline(this,t,this._target))}}const z_=new class extends ua{constructor(){super(...arguments),this.count=ha.INTEGER(1,{range:[1,20],rangeLocked:[!0,!1]})}};class k_ extends oh{constructor(){super(...arguments),this.paramsConfig=z_}static type(){return\\\\\\\"copy\\\\\\\"}initializeNode(){this.io.inputs.setCount(1)}async cook(t){const e=new B_;for(let t=0;t<this.pv.count;t++){this.stampNode().set_global_index(t);const n=await this.containerController.requestInputContainer(0);if(n){const t=n.coreContentCloned();t&&e.addTimelineBuilder(t)}}this.setTimelineBuilder(e)}stamp_value(t){return this.stampNode().value(t)}stampNode(){return this._stamp_node=this._stamp_node||this.create_stamp_node()}create_stamp_node(){const t=new lh(this.scene());return this.dirtyController.setForbiddenTriggerNodes([t]),t}}const U_=new class extends ua{constructor(){super(...arguments),this.delay=ha.FLOAT(1)}};class G_ extends oh{constructor(){super(...arguments),this.paramsConfig=U_}static type(){return\\\\\\\"delay\\\\\\\"}initializeNode(){this.io.inputs.setCount(0,1),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.delay])}))}))}cook(t){const e=t[0]||new B_;e.setDelay(this.pv.delay),this.setTimelineBuilder(e)}}const V_=new class extends ua{constructor(){super(...arguments),this.duration=ha.FLOAT(1,{range:[0,10],rangeLocked:[!0,!1]})}};class H_ extends oh{constructor(){super(...arguments),this.paramsConfig=V_}static type(){return\\\\\\\"duration\\\\\\\"}initializeNode(){this.io.inputs.setCount(0,1),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.duration])}))}))}cook(t){const e=t[0]||new B_;e.setDuration(this.pv.duration),this.setTimelineBuilder(e)}}const j_=new class extends ua{constructor(){super(...arguments),this.name=ha.INTEGER(uh.indexOf(ch.POWER4),{menu:{entries:uh.map(((t,e)=>({name:t,value:e})))}}),this.inOut=ha.INTEGER(ph.indexOf(dh.OUT),{menu:{entries:ph.map(((t,e)=>({name:t,value:e})))}})}};class W_ extends oh{constructor(){super(...arguments),this.paramsConfig=j_}static type(){return\\\\\\\"easing\\\\\\\"}initializeNode(){this.io.inputs.setCount(0,1),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.name,this.p.inOut],(()=>this.easing_full_name()))}))}))}easing_full_name(){const t=uh[this.pv.name];if(t==ch.NONE)return t;return`${t}.${ph[this.pv.inOut]}`}cook(t){const e=t[0]||new B_,n=this.easing_full_name();e.setEasing(n),this.setTimelineBuilder(e)}}var q_;!function(t){t.RELATIVE=\\\\\\\"relative\\\\\\\",t.ABSOLUTE=\\\\\\\"absolute\\\\\\\"}(q_||(q_={}));const X_=[q_.RELATIVE,q_.ABSOLUTE];var Y_;!function(t){t.START=\\\\\\\"start\\\\\\\",t.END=\\\\\\\"end\\\\\\\"}(Y_||(Y_={}));const $_=[Y_.START,Y_.END];class J_{constructor(){this._mode=q_.RELATIVE,this._relativeTo=Y_.END,this._offset=0}clone(){const t=new J_;return t.setMode(this._mode),t.setRelativeTo(this._relativeTo),t.setOffset(this._offset),t}setMode(t){this._mode=t}mode(){return this._mode}setRelativeTo(t){this._relativeTo=t}relativeTo(){return this._relativeTo}setOffset(t){this._offset=t}offset(){return this._offset}toParameter(){switch(this._mode){case q_.RELATIVE:return this._relative_position_param();case q_.ABSOLUTE:return this._absolutePositionParam()}os.unreachable(this._mode)}_relative_position_param(){switch(this._relativeTo){case Y_.END:return this._offsetString();case Y_.START:return`<${this._offset}`}os.unreachable(this._relativeTo)}_absolutePositionParam(){return this._offset}_offsetString(){return this._offset>0?`+=${this._offset}`:`-=${Math.abs(this._offset)}`}}var Z_;!function(t){t.ALL_TOGETHER=\\\\\\\"play all together\\\\\\\",t.ONE_AT_A_TIME=\\\\\\\"play one at a time\\\\\\\"}(Z_||(Z_={}));const K_=[Z_.ALL_TOGETHER,Z_.ONE_AT_A_TIME];const Q_=new class extends ua{constructor(){super(...arguments),this.mode=ha.INTEGER(0,{menu:{entries:K_.map(((t,e)=>({name:t,value:e})))}}),this.offset=ha.FLOAT(0,{range:[-1,1]}),this.overridePositions=ha.BOOLEAN(0),this.inputsCount=ha.INTEGER(4,{range:[1,32],rangeLocked:[!0,!1],callback:t=>{tm.PARAM_CALLBACK_setInputsCount(t)}})}};class tm extends oh{constructor(){super(...arguments),this.paramsConfig=Q_}static type(){return\\\\\\\"merge\\\\\\\"}initializeNode(){this.io.inputs.setCount(0,4),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.mode],(()=>K_[this.pv.mode]))})),this.params.addOnSceneLoadHook(\\\\\\\"update inputs\\\\\\\",(()=>{this._callbackUpdateInputsCount()}))}))}cook(t){const e=new B_;let n=0;for(let i of t)i&&(n>0&&this._updateTimelineBuilder(i),e.addTimelineBuilder(i),n++);this.setTimelineBuilder(e)}_updateTimelineBuilder(t){const e=K_[this.pv.mode];switch(e){case Z_.ALL_TOGETHER:return this._setPlayAllTogether(t);case Z_.ONE_AT_A_TIME:return this._setPlayOneAtATime(t)}os.unreachable(e)}_setPlayAllTogether(t){let e=t.position();e&&!this.pv.overridePositions||(e=new J_,e.setMode(q_.RELATIVE),e.setRelativeTo(Y_.START),e.setOffset(this.pv.offset),t.setPosition(e))}_setPlayOneAtATime(t){let e=t.position();e&&!this.pv.overridePositions||(e=new J_,e.setMode(q_.RELATIVE),e.setRelativeTo(Y_.END),e.setOffset(this.pv.offset),t.setPosition(e))}_callbackUpdateInputsCount(){this.io.inputs.setCount(1,this.pv.inputsCount),this.emit(Ei.INPUTS_UPDATED)}static PARAM_CALLBACK_setInputsCount(t){t._callbackUpdateInputsCount()}}const em=new class extends ua{constructor(){super(...arguments),this.play=ha.BUTTON(null,{callback:t=>{nm.PARAM_CALLBACK_play(t)}}),this.pause=ha.BUTTON(null,{callback:t=>{nm.PARAM_CALLBACK_pause(t)}}),this.debug=ha.BOOLEAN(0)}};class nm extends oh{constructor(){super(...arguments),this.paramsConfig=em}static type(){return\\\\\\\"null\\\\\\\"}initializeNode(){this.io.inputs.setCount(0,1),this.io.inputs.initInputsClonedState(Qi.FROM_NODE)}cook(t){const e=t[0]||new B_;this.setTimelineBuilder(e)}async play(){return new Promise((async t=>{const e=await this.compute();if(!e)return;if(this._timelineBuilder=e.coreContent(),!this._timelineBuilder)return;this._timeline&&this._timeline.kill();let n=!1;this._timeline=F_.timeline({onComplete:function(){n||(n=!0,t())}}),this.pv.debug&&li.log(`play from '${this.path()}'`),this._timeline.pjsid=Math.random(),this._timelineBuilder.setDebug(this.pv.debug),this._timelineBuilder.populate(this._timeline)}))}async pause(){this._timeline&&this._timeline.pause()}static PARAM_CALLBACK_play(t){t.play()}static PARAM_CALLBACK_pause(t){t.pause()}}const im=new class extends ua{constructor(){super(...arguments),this.operation=ha.INTEGER(0,{menu:{entries:D_.map(((t,e)=>({value:e,name:t})))}})}};class sm extends oh{constructor(){super(...arguments),this.paramsConfig=im}static type(){return\\\\\\\"operation\\\\\\\"}initializeNode(){this.io.inputs.setCount(0,1),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.operation],(()=>D_[this.pv.operation]))}))}))}cook(t){const e=t[0]||new B_;e.setOperation(D_[this.pv.operation]),this.setTimelineBuilder(e)}}const rm=new class extends ua{constructor(){super(...arguments),this.mode=ha.INTEGER(0,{menu:{entries:X_.map(((t,e)=>({name:t,value:e})))}}),this.relativeTo=ha.INTEGER(0,{menu:{entries:$_.map(((t,e)=>({name:t,value:e})))}}),this.offset=ha.FLOAT(0)}};class om extends oh{constructor(){super(...arguments),this.paramsConfig=rm}static type(){return\\\\\\\"position\\\\\\\"}initializeNode(){this.io.inputs.setCount(0,1),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.mode,this.p.relativeTo,this.p.offset],(()=>{switch(X_[this.pv.mode]){case q_.RELATIVE:return this._relative_label();case q_.ABSOLUTE:return this._absolute_label()}}))}))}))}_relative_label(){const t=this.pv.offset>0?\\\\\\\"after\\\\\\\":\\\\\\\"before\\\\\\\",e=$_[this.pv.relativeTo];return`${Math.abs(this.pv.offset)} ${t} ${e}`}_absolute_label(){return\\\\\\\"absolute\\\\\\\"}cook(t){const e=t[0]||new B_,n=new J_;n.setMode(X_[this.pv.mode]),n.setRelativeTo($_[this.pv.relativeTo]),n.setOffset(this.pv.offset),e.setPosition(n),this.setTimelineBuilder(e)}}const am=new class extends ua{constructor(){super(...arguments),this.name=ha.STRING(\\\\\\\"position\\\\\\\")}};class lm extends oh{constructor(){super(...arguments),this.paramsConfig=am}static type(){return\\\\\\\"propertyName\\\\\\\"}initializeNode(){this.io.inputs.setCount(0,1),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.name])}))}))}cook(t){const e=t[0]||new B_;e.setPropertyName(this.pv.name),this.setTimelineBuilder(e)}}var cm;!function(t){t.CUSTOM=\\\\\\\"custom\\\\\\\",t.FROM_SCENE_GRAPH=\\\\\\\"from scene graph\\\\\\\",t.FROM_NODE=\\\\\\\"from node\\\\\\\"}(cm||(cm={}));const hm=[cm.CUSTOM,cm.FROM_SCENE_GRAPH,cm.FROM_NODE],um=hm.indexOf(cm.CUSTOM),dm=hm.indexOf(cm.FROM_SCENE_GRAPH),pm=hm.indexOf(cm.FROM_NODE);const _m=new class extends ua{constructor(){super(...arguments),this.mode=ha.INTEGER(um,{menu:{entries:hm.map(((t,e)=>({name:t,value:e})))}}),this.nodePath=ha.NODE_PATH(\\\\\\\"\\\\\\\",{visibleIf:{mode:pm}}),this.objectMask=ha.STRING(\\\\\\\"*geo1\\\\\\\",{visibleIf:{mode:dm}}),this.printResolve=ha.BUTTON(null,{visibleIf:{mode:dm},callback:t=>{mm.PARAM_CALLBACK_printResolve(t)}}),this.overridePropertyName=ha.BOOLEAN(0,{visibleIf:[{mode:dm},{mode:pm}]}),this.propertyName=ha.STRING(\\\\\\\"\\\\\\\",{visibleIf:[{overridePropertyName:!0,mode:dm},{overridePropertyName:!0,mode:pm}]}),this.size=ha.INTEGER(3,{range:[1,4],rangeLocked:[!0,!0],visibleIf:{mode:um}}),this.value1=ha.FLOAT(0,{visibleIf:{mode:um,size:1}}),this.value2=ha.VECTOR2([0,0],{visibleIf:{mode:um,size:2}}),this.value3=ha.VECTOR3([0,0,0],{visibleIf:{mode:um,size:3}}),this.value4=ha.VECTOR4([0,0,0,0],{visibleIf:{mode:um,size:4}})}};class mm extends oh{constructor(){super(...arguments),this.paramsConfig=_m}static type(){return\\\\\\\"propertyValue\\\\\\\"}initializeNode(){this.io.inputs.setCount(0,1)}async cook(t){const e=t[0]||new B_;await this._prepareTimelineBuilder(e),this.setTimelineBuilder(e)}setMode(t){this.p.mode.set(hm.indexOf(t))}async _prepareTimelineBuilder(t){const e=hm[this.pv.mode];switch(e){case cm.CUSTOM:return this._prepareTimebuilderCustom(t);case cm.FROM_SCENE_GRAPH:return this._prepareTimebuilderFromSceneGraph(t);case cm.FROM_NODE:return await this._prepareTimebuilderFromNode(t)}os.unreachable(e)}_prepareTimebuilderCustom(t){const e=[this.pv.value1,this.pv.value2.clone(),this.pv.value3.clone(),this.pv.value4.clone()][this.pv.size-1];t.setPropertyValue(e)}_prepareTimebuilderFromSceneGraph(t){const e=this.pv.overridePropertyName?this.pv.propertyName:t.propertyName();if(!e)return;const n=this._foundObjectFromSceneGraph();if(n){const i=n[e];i&&(m.isNumber(i)||m.isVector(i)||i instanceof hh.a)&&t.setPropertyValue(i)}}async _prepareTimebuilderFromNode(t){const e=this.pv.overridePropertyName?this.pv.propertyName:t.propertyName();if(!e)return;const n=this.pv.nodePath.node();if(!n)return;const i=n.params.get(e);if(!i)return;i.isDirty()&&await i.compute();const s=i.value;s&&(m.isNumber(s)||m.isVector(s))&&t.setPropertyValue(s)}static PARAM_CALLBACK_printResolve(t){t.printResolve()}_foundObjectFromSceneGraph(){return this.scene().findObjectByMask(this.pv.objectMask)}printResolve(){const t=this._foundObjectFromSceneGraph();console.log(t)}}const fm=new class extends ua{constructor(){super(...arguments),this.unlimited=ha.BOOLEAN(0),this.count=ha.INTEGER(1,{range:[0,10],visibleIf:{unlimited:0}}),this.delay=ha.FLOAT(0),this.yoyo=ha.BOOLEAN(0)}};class gm extends oh{constructor(){super(...arguments),this.paramsConfig=fm}static type(){return\\\\\\\"repeat\\\\\\\"}initializeNode(){this.io.inputs.setCount(0,1),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.unlimited,this.p.count,this.p.yoyo],(()=>`${`${this.p.unlimited?\\\\\\\"unlimited\\\\\\\":this.pv.count}`} (yoyo: ${this.pv.yoyo})`))}))}))}_repeat_params(){return{count:this.pv.unlimited?-1:this.pv.count,delay:this.pv.delay,yoyo:this.pv.yoyo}}cook(t){const e=t[0]||new B_;e.setRepeatParams(this._repeat_params()),this.setTimelineBuilder(e)}}const vm=new class extends ua{constructor(){super(...arguments),this.input=ha.INTEGER(0,{range:[0,3],rangeLocked:[!0,!0]})}};class ym extends oh{constructor(){super(...arguments),this.paramsConfig=vm}static type(){return\\\\\\\"switch\\\\\\\"}initializeNode(){this.io.inputs.setCount(0,4)}cook(t){const e=t[this.pv.input];e?this.setTimelineBuilder(e):this.states.error.set(`input ${this.pv.input} is not valid`)}}class xm{constructor(t,e){this._scene=t,this._options=e}clone(){return new xm(this._scene,this._options)}objects(){const t=this._options.objectMask;if(t)return this._scene.objectsByMask(t)}node(){if(!this._options.node)return;const t=this._options.node;return t.relativeTo.node(t.path)}}class bm{constructor(){this._update_matrix=!1}clone(){const t=new bm;return t.setUpdateMatrix(this._update_matrix),t}setUpdateMatrix(t){this._update_matrix=t}updateMatrix(){return this._update_matrix}}var wm;!function(t){t.SCENE_GRAPH=\\\\\\\"scene graph\\\\\\\",t.NODE=\\\\\\\"node\\\\\\\"}(wm||(wm={}));const Tm=[wm.SCENE_GRAPH,wm.NODE],Am=Tm.indexOf(wm.SCENE_GRAPH),Mm=Tm.indexOf(wm.NODE);const Em=new class extends ua{constructor(){super(...arguments),this.type=ha.INTEGER(Am,{menu:{entries:Tm.map(((t,e)=>({name:t,value:e})))}}),this.nodePath=ha.OPERATOR_PATH(\\\\\\\"\\\\\\\",{visibleIf:{type:Mm}}),this.objectMask=ha.STRING(\\\\\\\"/geo*\\\\\\\",{visibleIf:{type:Am}}),this.updateMatrix=ha.BOOLEAN(0,{visibleIf:{type:Am}}),this.printResolve=ha.BUTTON(null,{callback:(t,e)=>{Sm.PARAM_CALLBACK_print_resolve(t)}})}};class Sm extends oh{constructor(){super(...arguments),this.paramsConfig=Em}static type(){return\\\\\\\"target\\\\\\\"}initializeNode(){this.io.inputs.setCount(0,1),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.type,this.p.nodePath,this.p.objectMask],(()=>{const t=Tm[this.pv.type];switch(t){case wm.NODE:return this.pv.nodePath;case wm.SCENE_GRAPH:return this.pv.objectMask}os.unreachable(t)}))}))}))}cook(t){const e=t[0]||new B_,n=this._create_target(e);e.setTarget(n),this._set_update_callback(e),this.setTimelineBuilder(e)}setTargetType(t){this.p.type.set(Tm.indexOf(t))}_create_target(t){const e=Tm[this.pv.type];switch(e){case wm.NODE:return new xm(this.scene(),{node:{path:this.pv.nodePath,relativeTo:this}});case wm.SCENE_GRAPH:return new xm(this.scene(),{objectMask:this.pv.objectMask})}os.unreachable(e)}_set_update_callback(t){const e=Tm[this.pv.type];let n=t.updateCallback();switch(e){case wm.NODE:return;case wm.SCENE_GRAPH:return void(this.pv.updateMatrix&&(n=n||new bm,n.setUpdateMatrix(this.pv.updateMatrix),t.setUpdateCallback(n)))}os.unreachable(e)}static PARAM_CALLBACK_print_resolve(t){t.print_resolve()}print_resolve(){const t=Tm[this.pv.type],e=new B_,n=this._create_target(e);switch(t){case wm.NODE:return console.log(n.node());case wm.SCENE_GRAPH:return console.log(n.objects())}}}class Cm extends aa{static context(){return ts.ANIM}cook(){this.cookController.endCook()}}class Nm extends Cm{}class Lm extends Nm{constructor(){super(...arguments),this._children_controller_context=ts.ANIM}static type(){return es.ANIM}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class Om extends Nm{constructor(){super(...arguments),this._children_controller_context=ts.COP}static type(){return es.COP}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class Pm extends Nm{constructor(){super(...arguments),this._children_controller_context=ts.EVENT}static type(){return es.EVENT}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class Rm extends Nm{constructor(){super(...arguments),this._children_controller_context=ts.MAT}static type(){return es.MAT}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}const Im={dependsOnDisplayNode:!0};class Fm{constructor(t,e,n=Im){this.node=t,this.options=n,this._initialized=!1,this._display_node=void 0,this._graph_node=new Mi(t.scene(),\\\\\\\"DisplayNodeController\\\\\\\"),this._graph_node.node=t,this._on_display_node_remove_callback=e.onDisplayNodeRemove,this._on_display_node_set_callback=e.onDisplayNodeSet,this._on_display_node_update_callback=e.onDisplayNodeUpdate}dispose(){this._graph_node.dispose()}displayNode(){return this._display_node}initializeNode(){this._initialized?console.error(\\\\\\\"display node controller already initialed\\\\\\\",this.node):(this._initialized=!0,this.node.lifecycle.add_on_child_add_hook((t=>{var e,n;this._display_node||null===(n=null===(e=t.flags)||void 0===e?void 0:e.display)||void 0===n||n.set(!0)})),this.node.lifecycle.add_on_child_remove_hook((t=>{var e,n,i;if(t.graphNodeId()==(null===(e=this._display_node)||void 0===e?void 0:e.graphNodeId())){const t=this.node.children(),e=t[t.length-1];e?null===(i=null===(n=e.flags)||void 0===n?void 0:n.display)||void 0===i||i.set(!0):this.setDisplayNode(void 0)}})),this._graph_node.dirtyController.addPostDirtyHook(\\\\\\\"_request_display_node_container\\\\\\\",(()=>{this._on_display_node_update_callback&&this._on_display_node_update_callback()})))}async setDisplayNode(t){if(this._initialized||console.error(\\\\\\\"display node controller not initialized\\\\\\\",this.node),this._display_node!=t){const e=this._display_node;e&&(e.flags.display.set(!1),this.options.dependsOnDisplayNode&&this._graph_node.removeGraphInput(e),this._on_display_node_remove_callback&&this._on_display_node_remove_callback()),this._display_node=t,this._display_node&&(this.options.dependsOnDisplayNode&&this._graph_node.addGraphInput(this._display_node),this._on_display_node_set_callback&&this._on_display_node_set_callback())}}}class Dm{constructor(t=!0){this.autoStart=t,this.startTime=0,this.oldTime=0,this.elapsedTime=0,this.running=!1}start(){this.startTime=Bm(),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){const e=Bm();t=(e-this.oldTime)/1e3,this.oldTime=e,this.elapsedTime+=t}return t}}function Bm(){return(\\\\\\\"undefined\\\\\\\"==typeof performance?Date:performance).now()}var zm={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\\\\t\\\\t}\\\\\\\"};class km{constructor(){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.\\\\\\\")}}const Um=new ot.a(-1,1,1,-1,0,1),Gm=new S.a;Gm.setAttribute(\\\\\\\"position\\\\\\\",new C.c([-1,3,0,-1,-1,0,3,-1,0],3)),Gm.setAttribute(\\\\\\\"uv\\\\\\\",new C.c([0,2,0,0,2,0],2));class Vm{constructor(t){this._mesh=new B.a(Gm,t)}dispose(){this._mesh.geometry.dispose()}render(t){t.render(this._mesh,Um)}get material(){return this._mesh.material}set material(t){this._mesh.material=t}}class Hm extends km{constructor(t,e){super(),this.textureID=void 0!==e?e:\\\\\\\"tDiffuse\\\\\\\",t instanceof F?(this.uniforms=t.uniforms,this.material=t):t&&(this.uniforms=I.clone(t.uniforms),this.material=new F({defines:Object.assign({},t.defines),uniforms:this.uniforms,vertexShader:t.vertexShader,fragmentShader:t.fragmentShader})),this.fsQuad=new Vm(this.material)}render(t,e,n){this.uniforms[this.textureID]&&(this.uniforms[this.textureID].value=n.texture),this.fsQuad.material=this.material,this.renderToScreen?(t.setRenderTarget(null),this.fsQuad.render(t)):(t.setRenderTarget(e),this.clear&&t.clear(t.autoClearColor,t.autoClearDepth,t.autoClearStencil),this.fsQuad.render(t))}}class jm extends km{constructor(t,e){super(),this.scene=t,this.camera=e,this.clear=!0,this.needsSwap=!1,this.inverse=!1}render(t,e,n){const i=t.getContext(),s=t.state;let r,o;s.buffers.color.setMask(!1),s.buffers.depth.setMask(!1),s.buffers.color.setLocked(!0),s.buffers.depth.setLocked(!0),this.inverse?(r=0,o=1):(r=1,o=0),s.buffers.stencil.setTest(!0),s.buffers.stencil.setOp(i.REPLACE,i.REPLACE,i.REPLACE),s.buffers.stencil.setFunc(i.ALWAYS,r,4294967295),s.buffers.stencil.setClear(o),s.buffers.stencil.setLocked(!0),t.setRenderTarget(n),this.clear&&t.clear(),t.render(this.scene,this.camera),t.setRenderTarget(e),this.clear&&t.clear(),t.render(this.scene,this.camera),s.buffers.color.setLocked(!1),s.buffers.depth.setLocked(!1),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)}}class Wm extends km{constructor(){super(),this.needsSwap=!1}render(t){t.state.buffers.stencil.setLocked(!1),t.state.buffers.stencil.setTest(!1)}}class qm{constructor(t,e){if(this.renderer=t,void 0===e){const n={minFilter:w.V,magFilter:w.V,format:w.Ib},i=t.getSize(new d.a);this._pixelRatio=t.getPixelRatio(),this._width=i.width,this._height=i.height,(e=new K(this._width*this._pixelRatio,this._height*this._pixelRatio,n)).texture.name=\\\\\\\"EffectComposer.rt1\\\\\\\"}else this._pixelRatio=1,this._width=e.width,this._height=e.height;this.renderTarget1=e,this.renderTarget2=e.clone(),this.renderTarget2.texture.name=\\\\\\\"EffectComposer.rt2\\\\\\\",this.writeBuffer=this.renderTarget1,this.readBuffer=this.renderTarget2,this.renderToScreen=!0,this.passes=[],void 0===zm&&console.error(\\\\\\\"THREE.EffectComposer relies on CopyShader\\\\\\\"),void 0===Hm&&console.error(\\\\\\\"THREE.EffectComposer relies on ShaderPass\\\\\\\"),this.copyPass=new Hm(zm),this.clock=new Dm}swapBuffers(){const t=this.readBuffer;this.readBuffer=this.writeBuffer,this.writeBuffer=t}addPass(t){this.passes.push(t),t.setSize(this._width*this._pixelRatio,this._height*this._pixelRatio)}insertPass(t,e){this.passes.splice(e,0,t),t.setSize(this._width*this._pixelRatio,this._height*this._pixelRatio)}removePass(t){const e=this.passes.indexOf(t);-1!==e&&this.passes.splice(e,1)}isLastEnabledPass(t){for(let e=t+1;e<this.passes.length;e++)if(this.passes[e].enabled)return!1;return!0}render(t){void 0===t&&(t=this.clock.getDelta());const e=this.renderer.getRenderTarget();let n=!1;for(let e=0,i=this.passes.length;e<i;e++){const i=this.passes[e];if(!1!==i.enabled){if(i.renderToScreen=this.renderToScreen&&this.isLastEnabledPass(e),i.render(this.renderer,this.writeBuffer,this.readBuffer,t,n),i.needsSwap){if(n){const e=this.renderer.getContext(),n=this.renderer.state.buffers.stencil;n.setFunc(e.NOTEQUAL,1,4294967295),this.copyPass.render(this.renderer,this.writeBuffer,this.readBuffer,t),n.setFunc(e.EQUAL,1,4294967295)}this.swapBuffers()}void 0!==jm&&(i instanceof jm?n=!0:i instanceof Wm&&(n=!1))}}this.renderer.setRenderTarget(e)}reset(t){if(void 0===t){const e=this.renderer.getSize(new d.a);this._pixelRatio=this.renderer.getPixelRatio(),this._width=e.width,this._height=e.height,(t=this.renderTarget1.clone()).setSize(this._width*this._pixelRatio,this._height*this._pixelRatio)}this.renderTarget1.dispose(),this.renderTarget2.dispose(),this.renderTarget1=t,this.renderTarget2=t.clone(),this.writeBuffer=this.renderTarget1,this.readBuffer=this.renderTarget2}setSize(t,e){this._width=t,this._height=e;const n=this._width*this._pixelRatio,i=this._height*this._pixelRatio;this.renderTarget1.setSize(n,i),this.renderTarget2.setSize(n,i);for(let t=0;t<this.passes.length;t++)this.passes[t].setSize(n,i)}setPixelRatio(t){this._pixelRatio=t,this.setSize(this._width,this._height)}}new ot.a(-1,1,1,-1,0,1);const Xm=new S.a;Xm.setAttribute(\\\\\\\"position\\\\\\\",new C.c([-1,3,0,-1,-1,0,3,-1,0],3)),Xm.setAttribute(\\\\\\\"uv\\\\\\\",new C.c([0,2,0,0,2,0],2));class Ym extends km{constructor(t,e,n,i,s){super(),this.scene=t,this.camera=e,this.overrideMaterial=n,this.clearColor=i,this.clearAlpha=void 0!==s?s:0,this.clear=!0,this.clearDepth=!1,this.needsSwap=!1,this._oldClearColor=new D.a}render(t,e,n){const i=t.autoClear;let s,r;t.autoClear=!1,void 0!==this.overrideMaterial&&(r=this.scene.overrideMaterial,this.scene.overrideMaterial=this.overrideMaterial),this.clearColor&&(t.getClearColor(this._oldClearColor),s=t.getClearAlpha(),t.setClearColor(this.clearColor,this.clearAlpha)),this.clearDepth&&t.clearDepth(),t.setRenderTarget(this.renderToScreen?null:n),this.clear&&t.clear(t.autoClearColor,t.autoClearDepth,t.autoClearStencil),t.render(this.scene,this.camera),this.clearColor&&t.setClearColor(this._oldClearColor,s),void 0!==this.overrideMaterial&&(this.scene.overrideMaterial=r),t.autoClear=i}}const $m=[{LinearFilter:w.V},{NearestFilter:w.ob}],Jm=[{NearestFilter:w.ob},{NearestMipMapNearestFilter:w.qb},{NearestMipMapLinearFilter:w.pb},{LinearFilter:w.V},{LinearMipMapNearestFilter:w.X},{LinearMipMapLinearFilter:w.W}],Zm=Object.values($m[0])[0],Km=Object.values(Jm[5])[0],Qm=$m.map((t=>({name:Object.keys(t)[0],value:Object.values(t)[0]}))),tf=Jm.map((t=>({name:Object.keys(t)[0],value:Object.values(t)[0]})));class ef extends ua{constructor(){super(...arguments),this.prependRenderPass=ha.BOOLEAN(1),this.useRenderTarget=ha.BOOLEAN(1),this.tmagFilter=ha.BOOLEAN(0,{visibleIf:{useRenderTarget:1}}),this.magFilter=ha.INTEGER(Zm,{visibleIf:{useRenderTarget:1,tmagFilter:1},menu:{entries:Qm}}),this.tminFilter=ha.BOOLEAN(0,{visibleIf:{useRenderTarget:1}}),this.minFilter=ha.INTEGER(Km,{visibleIf:{useRenderTarget:1,tminFilter:1},menu:{entries:tf}}),this.stencilBuffer=ha.BOOLEAN(0,{visibleIf:{useRenderTarget:1}}),this.sampling=ha.INTEGER(1,{range:[1,4],rangeLocked:[!0,!1]})}}class nf{constructor(t){this.node=t,this._renderer_size=new d.a}displayNodeControllerCallbacks(){return{onDisplayNodeRemove:()=>{},onDisplayNodeSet:()=>{this.node.setDirty()},onDisplayNodeUpdate:()=>{this.node.setDirty()}}}createEffectsComposer(t){const e=t.renderer;let n;if(this.node.pv.useRenderTarget){const t=this._create_render_target(e);n=new qm(e,t)}else n=new qm(e);return n.setPixelRatio(window.devicePixelRatio*this.node.pv.sampling),this._build_passes(n,t),n}_create_render_target(t){let e;t.autoClear=!1;const n={format:w.ic,stencilBuffer:this.node.pv.stencilBuffer};return this.node.pv.tminFilter&&(n.minFilter=this.node.pv.minFilter),this.node.pv.tmagFilter&&(n.magFilter=this.node.pv.magFilter),t.getDrawingBufferSize(this._renderer_size),e=li.renderersController.renderTarget(this._renderer_size.x,this._renderer_size.y,n),e}_build_passes(t,e){if(this.node.pv.prependRenderPass){const n=new Ym(e.scene,e.camera);t.addPass(n)}const n=this.node.displayNodeController.displayNode();n&&n.setupComposer({composer:t,camera:e.camera,resolution:e.resolution,camera_node:e.camera_node,scene:e.scene,requester:e.requester})}}class sf extends Cm{constructor(){super(...arguments),this.paramsConfig=new ef,this.effectsComposerController=new nf(this),this.displayNodeController=new Fm(this,this.effectsComposerController.displayNodeControllerCallbacks()),this._children_controller_context=ts.POST}static type(){return es.POST}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class rf extends Nm{constructor(){super(...arguments),this._children_controller_context=ts.ROP}static type(){return es.ROP}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}var of=n(44);const af=\\\\\\\"input texture\\\\\\\",lf=[af,af,af,af];for(var cf=new Uint16Array(32),hf=0;hf<32;hf++)cf[hf]=28898;const uf=new vo.a(cf,32,1,w.gb,w.M);class df extends aa{constructor(t){super(t,\\\\\\\"BaseCopNode\\\\\\\"),this.flags=new ki(this)}static context(){return ts.COP}static displayedInputNames(){return lf}initializeBaseNode(){this.io.outputs.setHasOneOutput()}setTexture(t){t.name=this.path();const e=this.containerController.container().texture();if(e){if(e.uuid!=t.uuid){const n=Object.keys(t);for(let i of n)e[i]=t[i];e.needsUpdate=!0}this._setContainer(e)}else this._setContainer(t)}_clearTexture(){this._setContainer(uf)}}class pf extends df{}class _f{constructor(){this._id=_f.__next_id++}id(){return this._id}handle_globals_node(t,e,n){}}_f.__next_id=0;class mf{static any(t){return m.isString(t)?t:m.isBoolean(t)?`${t}`:m.isNumber(t)?`${ss.ensureFloat(t)}`:m.isArray(t)?this.numeric_array(t):t instanceof d.a||t instanceof p.a||t instanceof _.a||t instanceof D.a?this.numeric_array(t.toArray()):`ThreeToGl error: unknown value type '${t}'`}static numeric_array(t){const e=new Array(t.length);for(let n=0;n<t.length;n++)e[n]=`${ss.ensureFloat(t[n])}`;return`${`vec${t.length}`}(${e.join(\\\\\\\", \\\\\\\")})`}static vector4(t){if(m.isString(t))return t;return`vec4(${t.toArray().map((t=>`${ss.ensureFloat(t)}`)).join(\\\\\\\", \\\\\\\")})`}static vector3(t){if(m.isString(t))return t;return`vec3(${t.toArray().map((t=>`${ss.ensureFloat(t)}`)).join(\\\\\\\", \\\\\\\")})`}static vector2(t){if(m.isString(t))return t;return`vec2(${t.toArray().map((t=>`${ss.ensureFloat(t)}`)).join(\\\\\\\", \\\\\\\")})`}static vector3_float(t,e){return m.isNumber(e)&&(e=ss.ensureFloat(e)),`vec4(${this.vector3(t)}, ${e})`}static float4(t,e,n,i){return m.isNumber(t)&&(t=ss.ensureFloat(t)),m.isNumber(e)&&(e=ss.ensureFloat(e)),m.isNumber(n)&&(n=ss.ensureFloat(n)),m.isNumber(i)&&(i=ss.ensureFloat(i)),`vec4(${t}, ${e}, ${n}, ${i})`}static float3(t,e,n){return m.isNumber(t)&&(t=ss.ensureFloat(t)),m.isNumber(e)&&(e=ss.ensureFloat(e)),m.isNumber(n)&&(n=ss.ensureFloat(n)),`vec3(${t}, ${e}, ${n})`}static float2(t,e){return m.isNumber(t)&&(t=ss.ensureFloat(t)),m.isNumber(e)&&(e=ss.ensureFloat(e)),`vec2(${t}, ${e})`}static float(t){if(m.isNumber(t))return ss.ensureFloat(t);{const e=parseFloat(t);return m.isNaN(e)?t:ss.ensureFloat(e)}}static integer(t){if(m.isNumber(t))return ss.ensureInteger(t);{const e=parseInt(t);return m.isNaN(e)?t:ss.ensureInteger(e)}}static bool(t){return m.isBoolean(t)?`${t}`:t}}const ff=/\\\\/+/g;class gf extends aa{static context(){return ts.GL}initializeBaseNode(){this.uiData.setLayoutHorizontal(),this.io.connections.initInputs(),this.io.connection_points.spare_params.initializeNode()}cook(){console.warn(\\\\\\\"gl nodes should never cook\\\\\\\")}_set_mat_to_recompile(){var t,e;null===(e=null===(t=this.material_node)||void 0===t?void 0:t.assemblerController)||void 0===e||e.set_compilation_required_and_dirty(this)}get material_node(){var t;const e=this.parent();if(e)return e.context()==ts.GL?null===(t=e)||void 0===t?void 0:t.material_node:e}glVarName(t){return`v_POLY_${this.path(this.material_node).replace(ff,\\\\\\\"_\\\\\\\")}_${t}`}variableForInputParam(t){return this.variableForInput(t.name())}variableForInput(t){var e;const n=this.io.inputs.get_input_index(t),i=this.io.connections.inputConnection(n);if(i){const e=i.node_src,n=e.io.outputs.namedOutputConnectionPoints()[i.output_index];if(n){const t=n.name();return e.glVarName(t)}throw console.warn(`no output called '${t}' for gl node ${e.path()}`),\\\\\\\"variable_for_input ERROR\\\\\\\"}if(this.params.has(t))return mf.any(null===(e=this.params.get(t))||void 0===e?void 0:e.value);{const t=this.io.inputs.namedInputConnectionPoints()[n];return mf.any(t.init_value)}}setLines(t){}reset_code(){var t;null===(t=this._param_configs_controller)||void 0===t||t.reset()}setParamConfigs(){}param_configs(){var t;return null===(t=this._param_configs_controller)||void 0===t?void 0:t.list()}paramsGenerating(){return!1}paramDefaultValue(t){return null}}const vf=new class extends ua{};class yf extends gf{constructor(){super(...arguments),this.paramsConfig=vf}}const xf=[Uo.FLOAT,Uo.VEC2,Uo.VEC3,Uo.VEC4];const bf=new class extends ua{constructor(){super(...arguments),this.name=ha.STRING(\\\\\\\"\\\\\\\"),this.type=ha.INTEGER(0,{menu:{entries:xf.map(((t,e)=>({name:t,value:e})))}}),this.texportWhenConnected=ha.BOOLEAN(0,{hidden:!0}),this.exportWhenConnected=ha.BOOLEAN(0,{visibleIf:{texportWhenConnected:1}})}};class wf extends gf{constructor(){super(...arguments),this.paramsConfig=bf,this._on_create_set_name_if_none_bound=this._on_create_set_name_if_none.bind(this),this._bound_setExportWhenConnectedStatus=this._setExportWhenConnectedStatus.bind(this)}static type(){return ps.ATTRIBUTE}initializeNode(){this.addPostDirtyHook(\\\\\\\"_set_mat_to_recompile\\\\\\\",this._set_mat_to_recompile_if_is_exporting.bind(this)),this.lifecycle.add_on_create_hook(this._on_create_set_name_if_none_bound),this.io.connection_points.initializeNode(),this.io.connection_points.set_expected_input_types_function((()=>{var t,e;return(null===(e=null===(t=this.material_node)||void 0===t?void 0:t.assemblerController)||void 0===e?void 0:e.allow_attribute_exports())?[xf[this.pv.type]]:[]})),this.io.connection_points.set_input_name_function((t=>wf.INPUT_NAME)),this.io.connection_points.set_expected_output_types_function((()=>[xf[this.pv.type]])),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.name,this.p.exportWhenConnected],(()=>this.pv.exportWhenConnected?`${this.pv.name} (EXPORTED)`:this.pv.name))}))})),this.lifecycle.add_on_add_hook(this._bound_setExportWhenConnectedStatus),this.params.addOnSceneLoadHook(\\\\\\\"prepare params\\\\\\\",this._bound_setExportWhenConnectedStatus)}_setExportWhenConnectedStatus(){var t,e;(null===(e=null===(t=this.material_node)||void 0===t?void 0:t.assemblerController)||void 0===e?void 0:e.allow_attribute_exports())&&this.p.texportWhenConnected.set(1)}setAttribSize(t){this.p.type.set(t-1)}get input_name(){return wf.INPUT_NAME}get output_name(){return wf.OUTPUT_NAME}setLines(t){t.assembler().set_node_lines_attribute(this,t)}get attribute_name(){return this.pv.name.trim()}gl_type(){return this.io.outputs.namedOutputConnectionPoints()[0].type()}set_gl_type(t){this.p.type.set(xf.indexOf(t))}connected_input_node(){return this.io.inputs.named_input(wf.INPUT_NAME)}connected_input_connection_point(){return this.io.inputs.named_input_connection_point(wf.INPUT_NAME)}output_connection_point(){return this.io.outputs.namedOutputConnectionPointsByName(this.output_name)}isImporting(){return this.io.outputs.used_output_names().length>0}isExporting(){if(this.pv.exportWhenConnected){return null!=this.io.inputs.named_input(wf.INPUT_NAME)}return!1}_set_mat_to_recompile_if_is_exporting(){this.isExporting()&&this._set_mat_to_recompile()}_on_create_set_name_if_none(){\\\\\\\"\\\\\\\"==this.pv.name&&this.p.name.set(this.name())}}wf.INPUT_NAME=\\\\\\\"in\\\\\\\",wf.OUTPUT_NAME=\\\\\\\"val\\\\\\\";class Tf{constructor(t=[]){this._definitions=t,this._errored=!1}get errored(){return this._errored}get error_message(){return this._error_message}uniq(){const t=new Map,e=[];for(let n of this._definitions)if(!this._errored){const i=n.name(),s=t.get(i);s?s.data_type!=n.data_type&&(this._errored=!0,this._error_message=`attempt to create '${n.name()}' with types '${n.data_type}' by node '${n.node.path()}', when there is already an existing with type ${s.data_type} from node '${s.node.path()}'`,console.warn(\\\\\\\"emitting error message:\\\\\\\",this._error_message)):(t.set(i,n),e.push(i))}const n=[];for(let i of e){const e=t.get(i);e&&n.push(e)}return n}}var Af,Mf;!function(t){t.ATTRIBUTE=\\\\\\\"attribute\\\\\\\",t.FUNCTION=\\\\\\\"function\\\\\\\",t.UNIFORM=\\\\\\\"uniform\\\\\\\",t.VARYING=\\\\\\\"varying\\\\\\\"}(Af||(Af={}));class Ef{constructor(t,e,n,i){this._definition_type=t,this._data_type=e,this._node=n,this._name=i}get definition_type(){return this._definition_type}get data_type(){return this._data_type}get node(){return this._node}name(){return this._name}collection_instance(){return new Tf}}class Sf extends Ef{constructor(t,e,n){super(Af.ATTRIBUTE,e,t,n),this._node=t,this._data_type=e,this._name=n}get line(){return`attribute ${this.data_type} ${this.name()}`}}class Cf extends Ef{constructor(t,e){super(Af.FUNCTION,Uo.FLOAT,t,e),this._node=t,this._name=e}get line(){return this.name()}}class Nf extends Ef{constructor(t,e,n){super(Af.UNIFORM,e,t,n),this._node=t,this._data_type=e,this._name=n}get line(){return`uniform ${this.data_type} ${this.name()}`}}class Lf extends Ef{constructor(t,e,n){super(Af.VARYING,e,t,n),this._node=t,this._data_type=e,this._name=n}get line(){return`varying ${this.data_type} ${this.name()}`}}!function(t){t.VERTEX=\\\\\\\"vertex\\\\\\\",t.FRAGMENT=\\\\\\\"fragment\\\\\\\",t.LEAVES_FROM_NODES_SHADER=\\\\\\\"leaves_from_nodes_shader\\\\\\\"}(Mf||(Mf={}));const Of={position:\\\\\\\"vec3( position )\\\\\\\"};class Pf extends _f{handle_globals_node(t,e,n){var i,s;const r=t.io.outputs.namedOutputConnectionPointsByName(e);if(!r)return;const o=t.glVarName(e),a=r.type(),l=new Lf(t,a,o);n.addDefinitions(t,[l]);const c=null===(s=null===(i=t.material_node)||void 0===i?void 0:i.assemblerController)||void 0===s?void 0:s.assembler;if(!c)return;const h=c.shader_config(n.current_shader_name);if(!h)return;const u=h.dependencies(),d=[],p=`${o} = modelMatrix * vec4( position, 1.0 )`,_=`${o} = normalize( mat3( modelMatrix[0].xyz, modelMatrix[1].xyz, modelMatrix[2].xyz ) * normal )`;switch(e){case\\\\\\\"worldPosition\\\\\\\":d.push(p);break;case\\\\\\\"worldNormal\\\\\\\":d.push(_);break;default:d.push(`${o} = ${a}(${e})`)}for(let e of u)n.addDefinitions(t,[l],e),n.addBodyLines(t,d,e);0==u.length&&n.addBodyLines(t,d)}static variable_config_default(t){return Of[t]}variable_config_default(t){return Pf.variable_config_default(t)}read_attribute(t,e,n,i){return Pf.read_attribute(t,e,n,i)}static read_attribute(t,e,n,i){var s,r;Pf.PRE_DEFINED_ATTRIBUTES.indexOf(n)<0&&i.addDefinitions(t,[new Sf(t,e,n)],Mf.VERTEX);const o=i.current_shader_name;switch(o){case Mf.VERTEX:return n;case Mf.FRAGMENT:{if(!(t instanceof wf))return;const a=\\\\\\\"varying_\\\\\\\"+t.glVarName(t.output_name),l=new Lf(t,e,a),c=new Map;c.set(Mf.FRAGMENT,[]);const u=new Map;u.set(Mf.FRAGMENT,[]),h.pushOnArrayAtEntry(c,o,l);const d=`${a} = ${e}(${n})`,p=null===(r=null===(s=t.material_node)||void 0===s?void 0:s.assemblerController)||void 0===r?void 0:r.assembler.shader_config(o);if(p){const e=p.dependencies();for(let t of e)h.pushOnArrayAtEntry(c,t,l),h.pushOnArrayAtEntry(u,t,d);c.forEach(((e,n)=>{i.addDefinitions(t,e,n)})),u.forEach(((e,n)=>{i.addBodyLines(t,e,n)}))}return a}}}handle_attribute_node(t,e,n,i){return Pf.read_attribute(t,e,n,i)}}Pf.PRE_DEFINED_ATTRIBUTES=[\\\\\\\"position\\\\\\\",\\\\\\\"color\\\\\\\",\\\\\\\"normal\\\\\\\",\\\\\\\"uv\\\\\\\",\\\\\\\"uv2\\\\\\\",\\\\\\\"morphTarget0\\\\\\\",\\\\\\\"morphTarget1\\\\\\\",\\\\\\\"morphTarget2\\\\\\\",\\\\\\\"morphTarget3\\\\\\\",\\\\\\\"skinIndex\\\\\\\",\\\\\\\"skinWeight\\\\\\\"],Pf.IF_RULE={uv:\\\\\\\"defined( USE_MAP ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( USE_SPECULARMAP ) || defined( USE_ALPHAMAP ) || defined( USE_EMISSIVEMAP ) || defined( USE_ROUGHNESSMAP ) || defined( USE_METALNESSMAP )\\\\\\\"};const Rf=[Uo.FLOAT,Uo.VEC2,Uo.VEC3,Uo.VEC4];const If=new class extends ua{constructor(){super(...arguments),this.name=ha.STRING(\\\\\\\"\\\\\\\"),this.type=ha.INTEGER(0,{menu:{entries:Rf.map(((t,e)=>({name:t,value:e})))}})}};class Ff extends gf{constructor(){super(...arguments),this.paramsConfig=If,this._on_create_set_name_if_none_bound=this._on_create_set_name_if_none.bind(this)}static type(){return\\\\\\\"varyingWrite\\\\\\\"}initializeNode(){this.addPostDirtyHook(\\\\\\\"_set_mat_to_recompile\\\\\\\",this._set_mat_to_recompile.bind(this)),this.lifecycle.add_on_create_hook(this._on_create_set_name_if_none_bound),this.io.connection_points.initializeNode(),this.io.connection_points.set_input_name_function((()=>this.input_name)),this.io.connection_points.set_expected_input_types_function((()=>[Rf[this.pv.type]])),this.io.connection_points.set_expected_output_types_function((()=>[])),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.name])}))}))}get input_name(){return Ff.INPUT_NAME}setLines(t){if(t.current_shader_name==Mf.VERTEX){const e=this.gl_type();if(!e)return;const n=this.pv.name,i=new Lf(this,e,n),s=`${n} = ${mf.any(this.variableForInput(Ff.INPUT_NAME))}`;t.addDefinitions(this,[i],Mf.VERTEX),t.addBodyLines(this,[s],Mf.VERTEX)}}get attribute_name(){return this.pv.name.trim()}gl_type(){const t=this.io.inputs.namedInputConnectionPoints()[0];if(t)return t.type()}set_gl_type(t){this.p.type.set(Rf.indexOf(t))}_on_create_set_name_if_none(){\\\\\\\"\\\\\\\"==this.pv.name&&this.p.name.set(this.name())}}Ff.INPUT_NAME=\\\\\\\"vertex\\\\\\\";class Df{static findOutputNodes(t){return t.nodesByType(\\\\\\\"output\\\\\\\")}static findParamGeneratingNodes(t){var e;const n=[];return null===(e=t.childrenController)||void 0===e||e.traverseChildren((t=>{const e=t;e.paramsGenerating()&&n.push(e)})),n}static findVaryingNodes(t){return t.nodesByType(Ff.type())}static findAttributeExportNodes(t){return t.nodesByType(wf.type()).filter((t=>t.isExporting()))}}class Bf{static overlay(t,e){return new Promise(((n,i)=>{let s=document.createElement(\\\\\\\"canvas\\\\\\\");s.width=Math.max(t.width,e.width),s.height=Math.max(t.height,e.height);let r=s.getContext(\\\\\\\"2d\\\\\\\");r.drawImage(t,0,0,t.width,t.height),r.drawImage(e,0,0,e.width,e.height);const o=s.toDataURL(\\\\\\\"image/png\\\\\\\"),a=new Image;a.onload=()=>{n(a)},a.src=o}))}static create_white_image(t,e){return new Promise(((n,i)=>{let s=document.createElement(\\\\\\\"canvas\\\\\\\");s.width=t,s.height=e;let r=s.getContext(\\\\\\\"2d\\\\\\\");r.beginPath(),r.rect(0,0,t,e),r.fillStyle=\\\\\\\"white\\\\\\\",r.fill();const o=s.toDataURL(\\\\\\\"image/png\\\\\\\"),a=new Image;a.onload=()=>{n(a)},a.src=o}))}static make_square(t){return new Promise(((e,n)=>{let i=document.createElement(\\\\\\\"canvas\\\\\\\");const s=Math.min(t.width,t.height),r=t.width/t.height;i.width=s,i.height=s;let o=i.getContext(\\\\\\\"2d\\\\\\\");const a=r>1,l=a?(t.width-s)/2:(t.height-s)/2;a?o.drawImage(t,l,0,s,s,0,0,s,s):o.drawImage(t,0,l,s,s,0,0,s,s);const c=i.toDataURL(\\\\\\\"image/png\\\\\\\"),h=new Image;h.onload=()=>{e(h)},h.src=c}))}static async image_to_blob(t){return new Promise((function(e,n){try{let i=new XMLHttpRequest;i.open(\\\\\\\"GET\\\\\\\",t.src),i.responseType=\\\\\\\"blob\\\\\\\",i.onerror=function(){n(\\\\\\\"Network error.\\\\\\\")},i.onload=function(){200===i.status?e(i.response):n(\\\\\\\"Loading error:\\\\\\\"+i.statusText)},i.send()}catch(t){n(t.message)}}))}static data_from_url(t){return new Promise(((e,n)=>{const i=new Image;i.crossOrigin=\\\\\\\"Anonymous\\\\\\\",i.onload=()=>{const t=this.data_from_image(i);e(t)},i.src=t}))}static data_from_image(t){const e=document.createElement(\\\\\\\"canvas\\\\\\\");e.width=t.width,e.height=t.height;const n=e.getContext(\\\\\\\"2d\\\\\\\");return n.drawImage(t,0,0,t.width,t.height),n.getImageData(0,0,t.width,t.height)}}var zf;!function(t){t.Uint8Array=\\\\\\\"Uint8Array\\\\\\\",t.Uint8ClampedArray=\\\\\\\"Uint8ClampedArray\\\\\\\",t.Float32Array=\\\\\\\"Float32Array\\\\\\\"}(zf||(zf={}));class kf{constructor(t){this.buffer_type=t}from_render_target(t,e){return this._data_texture&&this._same_dimensions(e.texture)||(this._data_texture=this._create_data_texture(e.texture)),this._copy_to_data_texture(t,e),this._data_texture}from_texture(t){const e=Bf.data_from_image(t.image);this._data_texture&&this._same_dimensions(t)||(this._data_texture=this._create_data_texture(t));const n=e.width*e.height,i=e.data,s=this._data_texture.image.data,r=4*n;for(let t=0;t<r;t++)s[t]=i[t];return this._data_texture}get data_texture(){return this._data_texture}reset(){this._data_texture=void 0}_copy_to_data_texture(t,e){const n=e.texture.image;this._data_texture=this._data_texture||this._create_data_texture(e.texture),t.readRenderTargetPixels(e,0,0,n.width,n.height,this._data_texture.image.data),this._data_texture.needsUpdate=!0}_create_data_texture(t){const e=t.image,n=this._create_pixel_buffer(e.width,e.height);return new vo.a(n,e.width,e.height,t.format,t.type,t.mapping,t.wrapS,t.wrapT,t.magFilter,t.minFilter,t.anisotropy,t.encoding)}_create_pixel_buffer(t,e){const n=t*e*4;switch(this.buffer_type){case zf.Uint8Array:return new Uint8Array(n);case zf.Uint8ClampedArray:return new Uint8ClampedArray(n);case zf.Float32Array:return new Float32Array(n)}os.unreachable(this.buffer_type)}_same_dimensions(t){if(this._data_texture){const e=this._data_texture.image.width==t.image.width,n=this._data_texture.image.height==t.image.height;return e&&n}return!0}}new class extends ua{};class Uf{constructor(t){this.node=t}async renderer(){return await this.cameraRenderer()}reset(){var t;null===(t=this._renderer)||void 0===t||t.dispose(),this._renderer=void 0}async cameraRenderer(){let t=li.renderersController.firstRenderer();return t||await li.renderersController.waitForRenderer()}save_state(){this.make_linear()}make_linear(){}restore_state(){}}var Gf=n(22),Vf=n(13);class Hf extends O.a{constructor(t){super(),this.type=\\\\\\\"ShadowMaterial\\\\\\\",this.color=new D.a(0),this.transparent=!0,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this}}Hf.prototype.isShadowMaterial=!0;class jf extends O.a{constructor(t){super(),this.type=\\\\\\\"SpriteMaterial\\\\\\\",this.color=new D.a(16777215),this.map=null,this.alphaMap=null,this.rotation=0,this.sizeAttenuation=!0,this.transparent=!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}}jf.prototype.isSpriteMaterial=!0;var Wf=n(59),qf=n(56);class Xf extends O.a{constructor(t){super(),this.defines={TOON:\\\\\\\"\\\\\\\"},this.type=\\\\\\\"MeshToonMaterial\\\\\\\",this.color=new D.a(16777215),this.map=null,this.gradientMap=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new D.a(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=w.Uc,this.normalScale=new d.a(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.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}}Xf.prototype.isMeshToonMaterial=!0;class Yf extends O.a{constructor(t){super(),this.type=\\\\\\\"MeshNormalMaterial\\\\\\\",this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=w.Uc,this.normalScale=new d.a(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.wireframe=!1,this.wireframeLinewidth=1,this.fog=!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}}Yf.prototype.isMeshNormalMaterial=!0;class $f extends O.a{constructor(t){super(),this.defines={MATCAP:\\\\\\\"\\\\\\\"},this.type=\\\\\\\"MeshMatcapMaterial\\\\\\\",this.color=new D.a(16777215),this.matcap=null,this.map=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=w.Uc,this.normalScale=new d.a(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.alphaMap=null,this.flatShading=!1,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}}$f.prototype.isMeshMatcapMaterial=!0;class Jf extends As.a{constructor(t){super(),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}}Jf.prototype.isLineDashedMaterial=!0;class Zf extends Vf.a{constructor(t){super(t),this.textures={}}load(t,e,n,i){const s=this,r=new Gf.a(s.manager);r.setPath(s.path),r.setRequestHeader(s.requestHeader),r.setWithCredentials(s.withCredentials),r.load(t,(function(n){try{e(s.parse(JSON.parse(n)))}catch(e){i?i(e):console.error(e),s.manager.itemError(t)}}),n,i)}parse(t){const e=this.textures;function n(t){return void 0===e[t]&&console.warn(\\\\\\\"THREE.MaterialLoader: Undefined texture\\\\\\\",t),e[t]}const s=new i[t.type];if(void 0!==t.uuid&&(s.uuid=t.uuid),void 0!==t.name&&(s.name=t.name),void 0!==t.color&&void 0!==s.color&&s.color.setHex(t.color),void 0!==t.roughness&&(s.roughness=t.roughness),void 0!==t.metalness&&(s.metalness=t.metalness),void 0!==t.sheen&&(s.sheen=t.sheen),void 0!==t.sheenTint&&(s.sheenTint=(new D.a).setHex(t.sheenTint)),void 0!==t.sheenRoughness&&(s.sheenRoughness=t.sheenRoughness),void 0!==t.emissive&&void 0!==s.emissive&&s.emissive.setHex(t.emissive),void 0!==t.specular&&void 0!==s.specular&&s.specular.setHex(t.specular),void 0!==t.specularIntensity&&(s.specularIntensity=t.specularIntensity),void 0!==t.specularTint&&void 0!==s.specularTint&&s.specularTint.setHex(t.specularTint),void 0!==t.shininess&&(s.shininess=t.shininess),void 0!==t.clearcoat&&(s.clearcoat=t.clearcoat),void 0!==t.clearcoatRoughness&&(s.clearcoatRoughness=t.clearcoatRoughness),void 0!==t.transmission&&(s.transmission=t.transmission),void 0!==t.thickness&&(s.thickness=t.thickness),void 0!==t.attenuationDistance&&(s.attenuationDistance=t.attenuationDistance),void 0!==t.attenuationTint&&void 0!==s.attenuationTint&&s.attenuationTint.setHex(t.attenuationTint),void 0!==t.fog&&(s.fog=t.fog),void 0!==t.flatShading&&(s.flatShading=t.flatShading),void 0!==t.blending&&(s.blending=t.blending),void 0!==t.combine&&(s.combine=t.combine),void 0!==t.side&&(s.side=t.side),void 0!==t.shadowSide&&(s.shadowSide=t.shadowSide),void 0!==t.opacity&&(s.opacity=t.opacity),void 0!==t.format&&(s.format=t.format),void 0!==t.transparent&&(s.transparent=t.transparent),void 0!==t.alphaTest&&(s.alphaTest=t.alphaTest),void 0!==t.depthTest&&(s.depthTest=t.depthTest),void 0!==t.depthWrite&&(s.depthWrite=t.depthWrite),void 0!==t.colorWrite&&(s.colorWrite=t.colorWrite),void 0!==t.stencilWrite&&(s.stencilWrite=t.stencilWrite),void 0!==t.stencilWriteMask&&(s.stencilWriteMask=t.stencilWriteMask),void 0!==t.stencilFunc&&(s.stencilFunc=t.stencilFunc),void 0!==t.stencilRef&&(s.stencilRef=t.stencilRef),void 0!==t.stencilFuncMask&&(s.stencilFuncMask=t.stencilFuncMask),void 0!==t.stencilFail&&(s.stencilFail=t.stencilFail),void 0!==t.stencilZFail&&(s.stencilZFail=t.stencilZFail),void 0!==t.stencilZPass&&(s.stencilZPass=t.stencilZPass),void 0!==t.wireframe&&(s.wireframe=t.wireframe),void 0!==t.wireframeLinewidth&&(s.wireframeLinewidth=t.wireframeLinewidth),void 0!==t.wireframeLinecap&&(s.wireframeLinecap=t.wireframeLinecap),void 0!==t.wireframeLinejoin&&(s.wireframeLinejoin=t.wireframeLinejoin),void 0!==t.rotation&&(s.rotation=t.rotation),1!==t.linewidth&&(s.linewidth=t.linewidth),void 0!==t.dashSize&&(s.dashSize=t.dashSize),void 0!==t.gapSize&&(s.gapSize=t.gapSize),void 0!==t.scale&&(s.scale=t.scale),void 0!==t.polygonOffset&&(s.polygonOffset=t.polygonOffset),void 0!==t.polygonOffsetFactor&&(s.polygonOffsetFactor=t.polygonOffsetFactor),void 0!==t.polygonOffsetUnits&&(s.polygonOffsetUnits=t.polygonOffsetUnits),void 0!==t.dithering&&(s.dithering=t.dithering),void 0!==t.alphaToCoverage&&(s.alphaToCoverage=t.alphaToCoverage),void 0!==t.premultipliedAlpha&&(s.premultipliedAlpha=t.premultipliedAlpha),void 0!==t.visible&&(s.visible=t.visible),void 0!==t.toneMapped&&(s.toneMapped=t.toneMapped),void 0!==t.userData&&(s.userData=t.userData),void 0!==t.vertexColors&&(\\\\\\\"number\\\\\\\"==typeof t.vertexColors?s.vertexColors=t.vertexColors>0:s.vertexColors=t.vertexColors),void 0!==t.uniforms)for(const e in t.uniforms){const i=t.uniforms[e];switch(s.uniforms[e]={},i.type){case\\\\\\\"t\\\\\\\":s.uniforms[e].value=n(i.value);break;case\\\\\\\"c\\\\\\\":s.uniforms[e].value=(new D.a).setHex(i.value);break;case\\\\\\\"v2\\\\\\\":s.uniforms[e].value=(new d.a).fromArray(i.value);break;case\\\\\\\"v3\\\\\\\":s.uniforms[e].value=(new p.a).fromArray(i.value);break;case\\\\\\\"v4\\\\\\\":s.uniforms[e].value=(new _.a).fromArray(i.value);break;case\\\\\\\"m3\\\\\\\":s.uniforms[e].value=(new G.a).fromArray(i.value);break;case\\\\\\\"m4\\\\\\\":s.uniforms[e].value=(new A.a).fromArray(i.value);break;default:s.uniforms[e].value=i.value}}if(void 0!==t.defines&&(s.defines=t.defines),void 0!==t.vertexShader&&(s.vertexShader=t.vertexShader),void 0!==t.fragmentShader&&(s.fragmentShader=t.fragmentShader),void 0!==t.extensions)for(const e in t.extensions)s.extensions[e]=t.extensions[e];if(void 0!==t.shading&&(s.flatShading=1===t.shading),void 0!==t.size&&(s.size=t.size),void 0!==t.sizeAttenuation&&(s.sizeAttenuation=t.sizeAttenuation),void 0!==t.map&&(s.map=n(t.map)),void 0!==t.matcap&&(s.matcap=n(t.matcap)),void 0!==t.alphaMap&&(s.alphaMap=n(t.alphaMap)),void 0!==t.bumpMap&&(s.bumpMap=n(t.bumpMap)),void 0!==t.bumpScale&&(s.bumpScale=t.bumpScale),void 0!==t.normalMap&&(s.normalMap=n(t.normalMap)),void 0!==t.normalMapType&&(s.normalMapType=t.normalMapType),void 0!==t.normalScale){let e=t.normalScale;!1===Array.isArray(e)&&(e=[e,e]),s.normalScale=(new d.a).fromArray(e)}return void 0!==t.displacementMap&&(s.displacementMap=n(t.displacementMap)),void 0!==t.displacementScale&&(s.displacementScale=t.displacementScale),void 0!==t.displacementBias&&(s.displacementBias=t.displacementBias),void 0!==t.roughnessMap&&(s.roughnessMap=n(t.roughnessMap)),void 0!==t.metalnessMap&&(s.metalnessMap=n(t.metalnessMap)),void 0!==t.emissiveMap&&(s.emissiveMap=n(t.emissiveMap)),void 0!==t.emissiveIntensity&&(s.emissiveIntensity=t.emissiveIntensity),void 0!==t.specularMap&&(s.specularMap=n(t.specularMap)),void 0!==t.specularIntensityMap&&(s.specularIntensityMap=n(t.specularIntensityMap)),void 0!==t.specularTintMap&&(s.specularTintMap=n(t.specularTintMap)),void 0!==t.envMap&&(s.envMap=n(t.envMap)),void 0!==t.envMapIntensity&&(s.envMapIntensity=t.envMapIntensity),void 0!==t.reflectivity&&(s.reflectivity=t.reflectivity),void 0!==t.refractionRatio&&(s.refractionRatio=t.refractionRatio),void 0!==t.lightMap&&(s.lightMap=n(t.lightMap)),void 0!==t.lightMapIntensity&&(s.lightMapIntensity=t.lightMapIntensity),void 0!==t.aoMap&&(s.aoMap=n(t.aoMap)),void 0!==t.aoMapIntensity&&(s.aoMapIntensity=t.aoMapIntensity),void 0!==t.gradientMap&&(s.gradientMap=n(t.gradientMap)),void 0!==t.clearcoatMap&&(s.clearcoatMap=n(t.clearcoatMap)),void 0!==t.clearcoatRoughnessMap&&(s.clearcoatRoughnessMap=n(t.clearcoatRoughnessMap)),void 0!==t.clearcoatNormalMap&&(s.clearcoatNormalMap=n(t.clearcoatNormalMap)),void 0!==t.clearcoatNormalScale&&(s.clearcoatNormalScale=(new d.a).fromArray(t.clearcoatNormalScale)),void 0!==t.transmissionMap&&(s.transmissionMap=n(t.transmissionMap)),void 0!==t.thicknessMap&&(s.thicknessMap=n(t.thicknessMap)),s}setTextures(t){return this.textures=t,this}}class Kf{constructor(t){this.node=t,this._found_uniform_texture_by_id=new Map,this._found_uniform_textures_id_by_uniform_name=new Map,this._found_param_texture_by_id=new Map,this._found_param_textures_id_by_uniform_name=new Map}toJSON(){}load(t){}_materialToJson(t,e){let n;this._unassignTextures(t);try{n=t.toJSON({}),n&&(n.shadowSide=t.shadowSide,n.colorWrite=t.colorWrite)}catch(e){console.error(\\\\\\\"failed to save material data\\\\\\\"),console.log(t)}return n&&null!=t.lights&&(n.lights=t.lights),n&&(n.uuid=`${e.node.path()}-${e.suffix}`),this._reassignTextures(t),n}_unassignTextures(t){this._found_uniform_texture_by_id.clear(),this._found_uniform_textures_id_by_uniform_name.clear(),this._found_param_texture_by_id.clear(),this._found_param_textures_id_by_uniform_name.clear();const e=t.uniforms,n=Object.keys(e);for(let t of n){const n=e[t].value;if(n&&n.uuid){const i=n;this._found_uniform_texture_by_id.set(i.uuid,n),this._found_uniform_textures_id_by_uniform_name.set(t,i.uuid),e[t].value=null}}const i=Object.keys(t);for(let e of i){const n=t[e];if(n&&n.uuid){const i=n;this._found_param_texture_by_id.set(i.uuid,i),this._found_param_textures_id_by_uniform_name.set(e,i.uuid),t[e]=null}}}_reassignTextures(t){const e=[],n=[];this._found_uniform_textures_id_by_uniform_name.forEach(((t,n)=>{e.push(n)})),this._found_param_textures_id_by_uniform_name.forEach(((t,e)=>{n.push(e)}));const i=t.uniforms;for(let t of e){const e=this._found_uniform_textures_id_by_uniform_name.get(t);if(e){const n=this._found_uniform_texture_by_id.get(e);n&&(i[t].value=n)}}for(let e of n){const n=this._found_param_textures_id_by_uniform_name.get(e);if(n){const i=this._found_param_texture_by_id.get(n);i&&(t[e]=i)}}}_loadMaterial(t){t.color=void 0;const e=(new Zf).parse(t);t.shadowSide&&(e.shadowSide=t.shadowSide),null!=t.lights&&(e.lights=t.lights);const n=e.uniforms.uv2Transform;n&&this.mat4ToMat3(n);const i=e.uniforms.uvTransform;return i&&this.mat4ToMat3(i),e}mat4ToMat3(t){const e=t.value;if(null==e.elements[e.elements.length-1]){const n=new G.a;for(let t=0;t<n.elements.length;t++)n.elements[t]=e.elements[t];t.value=n}}}class Qf{constructor(t,e,n){this._type=t,this._name=e,this._default_value=n}static from_param(t){return new Qf(t.type(),t.name(),t.defaultValue())}type(){return this._type}name(){return this._name}get default_value(){return this._default_value}get param_options(){const t=this._callback.bind(this);switch(this._type){case Cr.OPERATOR_PATH:return{callback:t,nodeSelection:{context:ts.COP}};default:return{callback:t}}}_callback(t,e){}}class tg extends Qf{constructor(t,e,n,i){super(t,e,n),this._uniform_name=i}get uniform_name(){return this._uniform_name}get uniform(){return this._uniform=this._uniform||this._create_uniform()}_create_uniform(){return tg.uniform_by_type(this._type)}execute_callback(t,e){this._callback(t,e)}_callback(t,e){tg.callback(e,this.uniform)}static callback(t,e){switch(t.type()){case Cr.RAMP:return void(e.value=t.rampTexture());case Cr.OPERATOR_PATH:return void tg.set_uniform_value_from_texture(t,e);case Cr.NODE_PATH:return void tg.set_uniform_value_from_texture_from_node_path_param(t,e);default:e.value=t.value}}static uniform_by_type(t){switch(t){case Cr.BOOLEAN:case Cr.BUTTON:return{value:0};case Cr.COLOR:return{value:new D.a(0,0,0)};case Cr.FLOAT:case Cr.FOLDER:case Cr.INTEGER:case Cr.OPERATOR_PATH:case Cr.NODE_PATH:case Cr.PARAM_PATH:return{value:0};case Cr.RAMP:case Cr.STRING:return{value:null};case Cr.VECTOR2:return{value:new d.a(0,0)};case Cr.VECTOR3:return{value:new p.a(0,0,0)};case Cr.VECTOR4:return{value:new _.a(0,0,0,0)}}os.unreachable(t)}static set_uniform_value_from_texture(t,e){const n=t.found_node();if(n)if(n.isDirty())n.compute().then((t=>{const n=t.texture();e.value=n}));else{const t=n.containerController.container().texture();e.value=t}else e.value=null}static async set_uniform_value_from_texture_from_node_path_param(t,e){t.isDirty()&&await t.compute();const n=t.value.nodeWithContext(ts.COP);if(n)if(n.isDirty())n.compute().then((t=>{const n=t.texture();e.value=n}));else{const t=n.containerController.container().texture();e.value=t}else e.value=null}set_uniform_value_from_ramp(t,e){e.value=t.rampTexture()}}class eg extends Kf{constructor(t){super(t),this.node=t}toJSON(){const t=this.node.assemblerController;if(!t)return;const e=[],n=t.assembler.param_configs();for(let t of n)e.push([t.name(),t.uniform_name]);return{fragment_shader:this.node.texture_material.fragmentShader,uniforms:this.node.texture_material.uniforms,param_uniform_pairs:e,uniforms_time_dependent:t.assembler.uniformsTimeDependent(),uniforms_resolution_dependent:t.assembler.uniforms_resolution_dependent()}}load(t){this.node.texture_material.fragmentShader=t.fragment_shader,this.node.texture_material.uniforms=t.uniforms,rg.handleDependencies(this.node,t.uniforms_time_dependent||!1,t.uniforms);for(let e of t.param_uniform_pairs){const n=this.node.params.get(e[0]),i=t.uniforms[e[1]];n&&i&&n.options.set({callback:()=>{tg.callback(n,i)}})}}}class ng{static isChrome(){return navigator&&null!=navigator.userAgent&&-1!=navigator.userAgent.indexOf(\\\\\\\"Chrome\\\\\\\")}static isMobile(){return/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)}static isiOS(){return/(iPad|iPhone|iPod)/g.test(navigator.userAgent)}static isAndroid(){return/(Android)/g.test(navigator.userAgent)}static isTouchDevice(){var t=document.createElement(\\\\\\\"div\\\\\\\");return t.setAttribute(\\\\\\\"ongesturestart\\\\\\\",\\\\\\\"return;\\\\\\\"),\\\\\\\"function\\\\\\\"==typeof t.ongesturestart}}const ig=[256,256];const sg=new class extends ua{constructor(){super(...arguments),this.resolution=ha.VECTOR2(ig),this.useCameraRenderer=ha.BOOLEAN(0)}};class rg extends df{constructor(){super(...arguments),this.paramsConfig=sg,this.persisted_config=new eg(this),this._assembler_controller=this._create_assembler_controller(),this._texture_mesh=new B.a(new L(2,2)),this.texture_material=new F({uniforms:{},vertexShader:\\\\\\\"\\\\nvoid main()\\\\t{\\\\n\\\\tgl_Position = vec4( position, 1.0 );\\\\n}\\\\n\\\\\\\",fragmentShader:\\\\\\\"\\\\\\\"}),this._texture_scene=new vs,this._texture_camera=new of.a,this._children_controller_context=ts.GL,this._cook_main_without_inputs_when_dirty_bound=this._cook_main_without_inputs_when_dirty.bind(this),this._boundRenderOnTarget=this.renderOnTarget.bind(this)}static type(){return\\\\\\\"builder\\\\\\\"}usedAssembler(){return jn.GL_TEXTURE}_create_assembler_controller(){const t=li.assemblersRegister.assembler(this,this.usedAssembler());if(t){const e=new Pf;return t.set_assembler_globals_handler(e),t}}get assemblerController(){return this._assembler_controller}initializeNode(){this._texture_mesh.material=this.texture_material,this._texture_mesh.scale.multiplyScalar(.25),this._texture_scene.add(this._texture_mesh),this._texture_camera.position.z=1,this.addPostDirtyHook(\\\\\\\"_cook_main_without_inputs_when_dirty\\\\\\\",(()=>{setTimeout(this._cook_main_without_inputs_when_dirty_bound,0)}))}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}childrenAllowed(){return this.assemblerController?super.childrenAllowed():(this.scene().markAsReadOnly(this),!1)}async _cook_main_without_inputs_when_dirty(){await this.cookController.cookMainWithoutInputs()}async cook(){this.compileIfRequired(),this.renderOnTarget()}shaders_by_name(){return{fragment:this._fragment_shader}}compileIfRequired(){var t;(null===(t=this.assemblerController)||void 0===t?void 0:t.compileRequired())&&this.compile()}compile(){const t=this.assemblerController;if(!t)return;const e=Df.findOutputNodes(this);if(e.length>1)return void this.states.error.set(\\\\\\\"only one output node allowed\\\\\\\");if(e[0]){const n=e;t.assembler.set_root_nodes(n),t.assembler.update_fragment_shader();const i=t.assembler.fragment_shader(),s=t.assembler.uniforms();i&&s&&(this._fragment_shader=i,this._uniforms=s),rg.handleDependencies(this,t.assembler.uniformsTimeDependent())}this._fragment_shader&&this._uniforms&&(this.texture_material.fragmentShader=this._fragment_shader,this.texture_material.uniforms=this._uniforms,this.texture_material.needsUpdate=!0,this.texture_material.uniforms.resolution={value:this.pv.resolution}),t.post_compile()}static handleDependencies(t,e,n){const i=t.scene();if(e){n&&i.uniformsController.addTimeDependentUniformOwner(t._uniformCallbackName(),n);const e=t._callbackName();i.registeredBeforeTickCallbacks().has(e)||i.registerOnBeforeTick(e,t._boundRenderOnTarget)}else t._removeCallbacks()}_callbackName(){return`cop/builder_${this.graphNodeId()}`}_uniformCallbackName(){return`cop/builder_uniforms_${this.graphNodeId()}`}dispose(){super.dispose(),this._removeCallbacks()}_removeCallbacks(){const t=this.scene();t.uniformsController.removeTimeDependentUniformOwner(this._uniformCallbackName()),t.unRegisterOnBeforeTick(this._callbackName())}async renderOnTarget(){if(this.createRenderTargetIfRequired(),!this._render_target)return;this._renderer_controller=this._renderer_controller||new Uf(this);const t=await this._renderer_controller.renderer(),e=t.getRenderTarget();if(t.setRenderTarget(this._render_target),t.clear(),t.render(this._texture_scene,this._texture_camera),t.setRenderTarget(e),this._render_target.texture)if(this.pv.useCameraRenderer)this.setTexture(this._render_target.texture);else{this._data_texture_controller=this._data_texture_controller||new kf(zf.Float32Array);const e=this._data_texture_controller.from_render_target(t,this._render_target);this.setTexture(e)}else this.cookController.endCook()}renderTarget(){return this._render_target=this._render_target||this._createRenderTarget(this.pv.resolution.x,this.pv.resolution.y)}createRenderTargetIfRequired(){var t;this._render_target&&this._renderTargetResolutionValid()||(this._render_target=this._createRenderTarget(this.pv.resolution.x,this.pv.resolution.y),null===(t=this._data_texture_controller)||void 0===t||t.reset())}_renderTargetResolutionValid(){if(this._render_target){const t=this._render_target.texture.image;return t.width==this.pv.resolution.x&&t.height==this.pv.resolution.y}return!1}_createRenderTarget(t,e){if(this._render_target){const n=this._render_target.texture.image;if(n.width==t&&n.height==e)return this._render_target}const n=w.n,i=w.n,s=w.V,r=w.ob;var o=new K(t,e,{wrapS:n,wrapT:i,minFilter:s,magFilter:r,format:w.Ib,type:ng.isiOS()?w.M:w.G,stencilBuffer:!1,depthBuffer:!1});return li.warn(\\\\\\\"created render target\\\\\\\",this.path(),t,e),o}}const og=[{LinearEncoding:w.U},{sRGBEncoding:w.ld},{GammaEncoding:w.J},{RGBEEncoding:w.gc},{LogLuvEncoding:w.bb},{RGBM7Encoding:w.lc},{RGBM16Encoding:w.kc},{RGBDEncoding:w.fc},{BasicDepthPacking:w.j},{RGBADepthPacking:w.Hb}],ag=[{ClampToEdgeWrapping:w.n},{RepeatWrapping:w.wc},{MirroredRepeatWrapping:w.kb}],lg=[{UVMapping:w.Yc},{CubeReflectionMapping:w.o},{CubeRefractionMapping:w.p},{EquirectangularReflectionMapping:w.D},{EquirectangularRefractionMapping:w.E},{CubeUVReflectionMapping:w.q},{CubeUVRefractionMapping:w.r}],cg=[{UnsignedByteType:w.Zc},{ByteType:w.l},{ShortType:w.Mc},{UnsignedShortType:w.fd},{IntType:w.N},{UnsignedIntType:w.bd},{FloatType:w.G},{HalfFloatType:w.M},{UnsignedShort4444Type:w.cd},{UnsignedShort5551Type:w.dd},{UnsignedShort565Type:w.ed},{UnsignedInt248Type:w.ad}],hg=[{AlphaFormat:w.f},{RedFormat:w.tc},{RedIntegerFormat:w.uc},{RGFormat:w.rc},{RGIntegerFormat:w.sc},{RGBFormat:w.ic},{RGBIntegerFormat:w.jc},{RGBAFormat:w.Ib},{RGBAIntegerFormat:w.Jb},{LuminanceFormat:w.gb},{LuminanceAlphaFormat:w.fb},{DepthFormat:w.x},{DepthStencilFormat:w.y}];function ug(t){return{cook:!1,callback:e=>{Sg[t](e)}}}const dg={ENCODING:w.U,FORMAT:w.Ib,MAPPING:w.Yc,MIN_FILTER:w.V,MAG_FILTER:w.V,TYPE:w.Zc,WRAPPING:w.wc},pg=ug(\\\\\\\"PARAM_CALLBACK_update_encoding\\\\\\\"),_g=ug(\\\\\\\"PARAM_CALLBACK_update_mapping\\\\\\\"),mg=ug(\\\\\\\"PARAM_CALLBACK_update_wrap\\\\\\\"),fg=ug(\\\\\\\"PARAM_CALLBACK_update_filter\\\\\\\"),gg=ug(\\\\\\\"PARAM_CALLBACK_update_anisotropy\\\\\\\"),vg=ug(\\\\\\\"PARAM_CALLBACK_update_flipY\\\\\\\"),yg=ug(\\\\\\\"PARAM_CALLBACK_update_transform\\\\\\\"),xg=ug(\\\\\\\"PARAM_CALLBACK_update_repeat\\\\\\\"),bg=ug(\\\\\\\"PARAM_CALLBACK_update_offset\\\\\\\"),wg=ug(\\\\\\\"PARAM_CALLBACK_update_rotation\\\\\\\"),Tg=ug(\\\\\\\"PARAM_CALLBACK_update_center\\\\\\\"),Ag=ug(\\\\\\\"PARAM_CALLBACK_update_advanced\\\\\\\");function Mg(t,e){return class extends t{constructor(){super(...arguments),this.tencoding=ha.BOOLEAN((null==e?void 0:e.tencoding)||0,{...pg}),this.encoding=ha.INTEGER((null==e?void 0:e.encoding)||dg.ENCODING,{visibleIf:{tencoding:1},menu:{entries:og.map((t=>({name:Object.keys(t)[0],value:Object.values(t)[0]})))},...pg}),this.tmapping=ha.BOOLEAN(0,{..._g}),this.mapping=ha.INTEGER(dg.MAPPING,{visibleIf:{tmapping:1},menu:{entries:lg.map((t=>({name:Object.keys(t)[0],value:Object.values(t)[0]})))},..._g}),this.twrap=ha.BOOLEAN(0,{...mg}),this.wrapS=ha.INTEGER(dg.WRAPPING,{visibleIf:{twrap:1},menu:{entries:ag.map((t=>({name:Object.keys(t)[0],value:Object.values(t)[0]})))},...mg}),this.wrapT=ha.INTEGER(dg.WRAPPING,{visibleIf:{twrap:1},menu:{entries:ag.map((t=>({name:Object.keys(t)[0],value:Object.values(t)[0]})))},separatorAfter:!0,...mg}),this.tminFilter=ha.BOOLEAN(0,{...fg}),this.minFilter=ha.INTEGER(Km,{visibleIf:{tminFilter:1},menu:{entries:tf},...fg}),this.tmagFilter=ha.BOOLEAN(0,{...fg}),this.magFilter=ha.INTEGER(Zm,{visibleIf:{tmagFilter:1},menu:{entries:Qm},...fg}),this.tanisotropy=ha.BOOLEAN(0,{...gg}),this.useRendererMaxAnisotropy=ha.BOOLEAN(0,{visibleIf:{tanisotropy:1},...gg}),this.anisotropy=ha.INTEGER(2,{visibleIf:{tanisotropy:1,useRendererMaxAnisotropy:0},range:[0,32],rangeLocked:[!0,!1],...gg}),this.tflipY=ha.BOOLEAN(0,{...vg}),this.flipY=ha.BOOLEAN(0,{visibleIf:{tflipY:1},...vg}),this.ttransform=ha.BOOLEAN(0,{...yg}),this.offset=ha.VECTOR2([0,0],{visibleIf:{ttransform:1},...bg}),this.repeat=ha.VECTOR2([1,1],{visibleIf:{ttransform:1},...xg}),this.rotation=ha.FLOAT(0,{range:[-1,1],visibleIf:{ttransform:1},...wg}),this.center=ha.VECTOR2([0,0],{visibleIf:{ttransform:1},...Tg}),this.tadvanced=ha.BOOLEAN(0,{...Ag}),this.tformat=ha.BOOLEAN(0,{visibleIf:{tadvanced:1},...Ag}),this.format=ha.INTEGER(dg.FORMAT,{visibleIf:{tadvanced:1,tformat:1},menu:{entries:hg.map((t=>({name:Object.keys(t)[0],value:Object.values(t)[0]})))},...Ag}),this.ttype=ha.BOOLEAN(0,{visibleIf:{tadvanced:1},...Ag}),this.type=ha.INTEGER(dg.TYPE,{visibleIf:{tadvanced:1,ttype:1},menu:{entries:cg.map((t=>({name:Object.keys(t)[0],value:Object.values(t)[0]})))},...Ag})}}}class Eg extends(Mg(ua)){}new Eg;class Sg{constructor(t){this.node=t}async update(t){const e=this.node.pv;this._updateEncoding(t,e),this._updateAdvanced(t,e),this._updateMapping(t,e),this._updateWrap(t,e),this._updateFilter(t,e),this._updateFlip(t,e),await this._updateAnisotropy(t,e),this._updateTransform(t)}_updateEncoding(t,e){e.tencoding?t.encoding=e.encoding:t.encoding=dg.ENCODING,t.needsUpdate=!0}_updateAdvanced(t,e){e.tadvanced&&(e.tformat?t.format=e.format:t.format=dg.FORMAT,e.ttype?t.type=e.type:t.type=dg.TYPE),t.needsUpdate=!0}_updateMapping(t,e){e.tmapping?t.mapping=e.mapping:t.mapping=dg.MAPPING,t.needsUpdate=!0}_updateWrap(t,e){e.twrap?(t.wrapS=e.wrapS,t.wrapT=e.wrapT):(t.wrapS=dg.WRAPPING,t.wrapT=dg.WRAPPING),t.needsUpdate=!0}_updateFilter(t,e){e.tminFilter?t.minFilter=e.minFilter:t.minFilter=w.V,e.tmagFilter?t.magFilter=e.magFilter:t.magFilter=w.V,t.needsUpdate=!0}_updateFlip(t,e){t.flipY=e.tflipY&&e.flipY,t.needsUpdate=!0}async _updateAnisotropy(t,e){if(e.tanisotropy){if(e.useRendererMaxAnisotropy)t.anisotropy=await this._maxRendererAnisotropy();else{const n=e.anisotropy;t.anisotropy=n<=2?n:Math.min(n,await this._maxRendererAnisotropy())}t.needsUpdate=!0}else t.anisotropy=1}async _maxRendererAnisotropy(){this._renderer_controller=this._renderer_controller||new Uf(this.node);return(await this._renderer_controller.renderer()).capabilities.getMaxAnisotropy()}_updateTransform(t){if(!this.node.pv.ttransform)return t.offset.set(0,0),t.rotation=0,t.repeat.set(1,1),void t.center.set(0,0);this._updateTransformOffset(t,!1),this._updateTransformRepeat(t,!1),this._updateTransformRotation(t,!1),this._updateTransformCenter(t,!1),t.updateMatrix()}async _updateTransformOffset(t,e){t.offset.copy(this.node.pv.offset),e&&t.updateMatrix()}async _updateTransformRepeat(t,e){t.repeat.copy(this.node.pv.repeat),e&&t.updateMatrix()}async _updateTransformRotation(t,e){t.rotation=this.node.pv.rotation,e&&t.updateMatrix()}async _updateTransformCenter(t,e){t.center.copy(this.node.pv.center),e&&t.updateMatrix()}static PARAM_CALLBACK_update_encoding(t){const e=t.containerController.container().texture();e&&t.textureParamsController._updateEncoding(e,t.pv)}static PARAM_CALLBACK_update_mapping(t){const e=t.containerController.container().texture();e&&t.textureParamsController._updateMapping(e,t.pv)}static PARAM_CALLBACK_update_wrap(t){const e=t.containerController.container().texture();e&&t.textureParamsController._updateWrap(e,t.pv)}static PARAM_CALLBACK_update_filter(t){const e=t.containerController.container().texture();e&&t.textureParamsController._updateFilter(e,t.pv)}static PARAM_CALLBACK_update_anisotropy(t){const e=t.containerController.container().texture();e&&t.textureParamsController._updateAnisotropy(e,t.pv)}static PARAM_CALLBACK_update_flipY(t){const e=t.containerController.container().texture();e&&t.textureParamsController._updateFlip(e,t.pv)}static PARAM_CALLBACK_update_transform(t){const e=t.containerController.container().texture();e&&t.textureParamsController._updateTransform(e)}static PARAM_CALLBACK_update_offset(t){const e=t.containerController.container().texture();e&&t.textureParamsController._updateTransformOffset(e,!0)}static PARAM_CALLBACK_update_repeat(t){const e=t.containerController.container().texture();e&&t.textureParamsController._updateTransformRepeat(e,!0)}static PARAM_CALLBACK_update_rotation(t){const e=t.containerController.container().texture();e&&t.textureParamsController._updateTransformRotation(e,!0)}static PARAM_CALLBACK_update_center(t){const e=t.containerController.container().texture();e&&t.textureParamsController._updateTransformCenter(e,!0)}static PARAM_CALLBACK_update_advanced(t){const e=t.containerController.container().texture();e&&t.textureParamsController._updateAdvanced(e,t.pv)}static copyTextureAttributes(t,e){t.encoding=e.encoding,t.mapping=e.mapping,t.wrapS=e.wrapS,t.wrapT=e.wrapT,t.minFilter=e.minFilter,t.magFilter=e.magFilter,t.magFilter=e.magFilter,t.anisotropy=e.anisotropy,t.flipY=e.flipY,t.repeat.copy(e.repeat),t.offset.copy(e.offset),t.center.copy(e.center),t.rotation=e.rotation,t.type=e.type,t.format=e.format,t.needsUpdate=!0}paramLabelsParams(){const t=this.node.p;return[t.tencoding,t.encoding,t.tmapping,t.mapping,t.twrap,t.wrapS,t.wrapT,t.tminFilter,t.minFilter,t.tmagFilter,t.magFilter,t.tflipY,t.flipY]}paramLabels(){const t=[],e=this.node.pv;if(e.tencoding)for(let n of og){const i=Object.keys(n)[0];n[i]==e.encoding&&t.push(`encoding: ${i}`)}if(e.tmapping)for(let n of lg){const i=Object.keys(n)[0];n[i]==e.mapping&&t.push(`mapping: ${i}`)}if(e.twrap){function n(n){for(let i of ag){const s=Object.keys(i)[0];i[s]==e[n]&&t.push(`${n}: ${s}`)}}n(\\\\\\\"wrapS\\\\\\\"),n(\\\\\\\"wrapT\\\\\\\")}if(e.tminFilter)for(let n of Jm){const i=Object.keys(n)[0];n[i]==e.minFilter&&t.push(`minFilter: ${i}`)}if(e.tmagFilter)for(let n of $m){const i=Object.keys(n)[0];n[i]==e.magFilter&&t.push(`magFilter: ${i}`)}return e.tflipY&&t.push(`flipY: ${e.flipY}`),t}}class Cg extends Z.a{constructor(t,e,n,i,s,r,o,a,l){super(t,e,n,i,s,r,o,a,l),this.needsUpdate=!0}}Cg.prototype.isCanvasTexture=!0;class Ng extends(Mg(function(t){return class extends t{constructor(){super(...arguments),this.canvasId=ha.STRING(\\\\\\\"canvas-id\\\\\\\"),this.update=ha.BUTTON(null,{cook:!1,callback:t=>{Og.PARAM_CALLBACK_update(t)}})}}}(ua))){}const Lg=new Ng;class Og extends df{constructor(){super(...arguments),this.paramsConfig=Lg,this.textureParamsController=new Sg(this)}static type(){return\\\\\\\"canvas\\\\\\\"}async cook(){const t=this.pv.canvasId,e=document.getElementById(t);if(!e)return this.states.error.set(`element with id '${t}' not found`),void this.cookController.endCook();if(!(e instanceof HTMLCanvasElement))return this.states.error.set(\\\\\\\"element found is not a canvas\\\\\\\"),void this.cookController.endCook();const n=new Cg(e);await this.textureParamsController.update(n),this.setTexture(n)}static PARAM_CALLBACK_update(t){t.markTextureNeedsUpdate()}markTextureNeedsUpdate(){const t=this.containerController.container().texture();t&&(t.needsUpdate=!0)}}const Pg=new class extends ua{constructor(){super(...arguments),this.resolution=ha.VECTOR2([256,256],{callback:t=>{Rg.PARAM_CALLBACK_reset(t)}}),this.color=ha.COLOR([1,1,1])}};class Rg extends df{constructor(){super(...arguments),this.paramsConfig=Pg}static type(){return\\\\\\\"color\\\\\\\"}cook(){const t=this.pv.resolution.x,e=this.pv.resolution.y;this._data_texture=this._data_texture||this._create_data_texture(t,e);const n=e*t,i=this.pv.color.toArray(),s=255*i[0],r=255*i[1],o=255*i[2],a=this._data_texture.image.data;for(let t=0;t<n;t++)a[4*t+0]=s,a[4*t+1]=r,a[4*t+2]=o,a[4*t+3]=255;this._data_texture.needsUpdate=!0,this.setTexture(this._data_texture)}_create_data_texture(t,e){const n=this._create_pixel_buffer(t,e);return new vo.a(n,t,e)}_create_pixel_buffer(t,e){return new Uint8Array(t*e*4)}static PARAM_CALLBACK_reset(t){t._reset()}_reset(){this._data_texture=void 0}}var Ig,Fg,Dg;!function(t){t.GEO=\\\\\\\"geo\\\\\\\",t.CUBE_CAMERA=\\\\\\\"cubeCamera\\\\\\\",t.AUDIO_LISTENER=\\\\\\\"audioListener\\\\\\\",t.POSITIONAL_AUDIO=\\\\\\\"positionalAudio\\\\\\\"}(Ig||(Ig={})),function(t){t.CUBE_CAMERA=\\\\\\\"cubeCamera\\\\\\\",t.VIDEO=\\\\\\\"video\\\\\\\",t.WEB_CAM=\\\\\\\"webCam\\\\\\\",t.SNAPSHOT=\\\\\\\"snapshot\\\\\\\"}(Fg||(Fg={})),function(t){t.REFLECTION=\\\\\\\"reflection\\\\\\\",t.REFRACTION=\\\\\\\"refraction\\\\\\\"}(Dg||(Dg={}));const Bg=[Dg.REFLECTION,Dg.REFRACTION];const zg=new class extends ua{constructor(){super(...arguments),this.cubeCamera=ha.NODE_PATH(\\\\\\\"\\\\\\\",{nodeSelection:{context:ts.OBJ,types:[Ig.CUBE_CAMERA]}}),this.mode=ha.INTEGER(0,{menu:{entries:Bg.map(((t,e)=>({name:t,value:e})))}})}};class kg extends df{constructor(){super(...arguments),this.paramsConfig=zg}static type(){return Fg.CUBE_CAMERA}async cook(){const t=this.pv.cubeCamera.nodeWithContext(ts.OBJ,this.states.error);if(!t)return this.states.error.set(`cubeCamera not found at '${this.pv.cubeCamera.path()}'`),this.cookController.endCook();const e=t.renderTarget();if(!e)return this.states.error.set(\\\\\\\"cubeCamera has no render target'\\\\\\\"),this.cookController.endCook();const n=e.texture;Bg[this.pv.mode]==Dg.REFLECTION?n.mapping=w.o:n.mapping=w.p,this.setTexture(n)}}var Ug;!function(t){t.REFLECTION=\\\\\\\"reflection\\\\\\\",t.REFRACTION=\\\\\\\"refraction\\\\\\\"}(Ug||(Ug={}));const Gg=[Ug.REFLECTION,Ug.REFRACTION];const Vg=new class extends ua{constructor(){super(...arguments),this.useCameraRenderer=ha.BOOLEAN(1),this.mode=ha.INTEGER(0,{menu:{entries:Gg.map(((t,e)=>({name:t,value:e})))}})}};class Hg extends df{constructor(){super(...arguments),this.paramsConfig=Vg}static type(){return\\\\\\\"envMap\\\\\\\"}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(Qi.NEVER)}async cook(t){const e=t[0];this.convert_texture_to_env_map(e)}async convert_texture_to_env_map(t){this._renderer_controller=this._renderer_controller||new Uf(this);const e=await this._renderer_controller.renderer();if(e){const n=new Tt(e).fromEquirectangular(t);if(this.pv.useCameraRenderer)this._set_mapping(n.texture),this.setTexture(n.texture);else{this._data_texture_controller=this._data_texture_controller||new kf(zf.Uint8Array);const t=this._data_texture_controller.from_render_target(e,n);this._set_mapping(t),this.setTexture(t)}}else this.states.error.set(\\\\\\\"no renderer found to convert the texture to an env map\\\\\\\"),this.cookController.endCook()}_set_mapping(t){Gg[this.pv.mode]==Ug.REFLECTION?t.mapping=w.q:t.mapping=w.r}}class jg extends Z.a{constructor(t,e,n,i,s,r,o,a,l){super(t,e,n,i,s,r,o,a,l),this.format=void 0!==o?o:w.ic,this.minFilter=void 0!==r?r:w.V,this.magFilter=void 0!==s?s:w.V,this.generateMipmaps=!1;const c=this;\\\\\\\"requestVideoFrameCallback\\\\\\\"in t&&t.requestVideoFrameCallback((function e(){c.needsUpdate=!0,t.requestVideoFrameCallback(e)}))}clone(){return new this.constructor(this.image).copy(this)}update(){const t=this.image;!1===\\\\\\\"requestVideoFrameCallback\\\\\\\"in t&&t.readyState>=t.HAVE_CURRENT_DATA&&(this.needsUpdate=!0)}}jg.prototype.isVideoTexture=!0;var Wg=n(80);const qg=\\\\\\\"https://raw.githubusercontent.com/polygonjs/polygonjs-assets/master/\\\\\\\";var Xg=n(28);const Yg=new Xg.b;Yg.setURLModifier((t=>{const e=li.assetUrls.remapedUrl(t);if(e)return e;const n=li.blobs.blobUrl(t);return n||t}));class $g{constructor(t,e,n){this._url=t,this._scene=e,this._node=n,this.loadingManager=Yg}static extension(t){let e=null;try{e=new URL(t).searchParams.get(\\\\\\\"ext\\\\\\\")}catch(t){}if(!e){const n=t.split(\\\\\\\"?\\\\\\\")[0].split(\\\\\\\".\\\\\\\");e=n[n.length-1].toLowerCase()}return e}extension(){return $g.extension(this._url)}async _urlToLoad(){const{storedUrl:t,fullUrl:e}=this._urlData();this._node&&await li.blobs.fetchBlobForNode({storedUrl:t,fullUrl:e,node:this._node});return li.blobs.blobUrl(t)||e}deregisterUrl(){const{storedUrl:t}=this._urlData();li.blobs.deregisterUrl(t)}_urlData(){let t=this._url;const e=this._url.split(\\\\\\\"?\\\\\\\")[0];if(\\\\\\\"h\\\\\\\"!=t[0]){const e=this._scene.assets.root();e&&(t=`${e}${t}`)}return{fullUrl:t,storedUrl:e}}static async _loadMultipleBlobGlobal(t){const e=[];for(let n of t.files){const i=n.storedUrl,s=n.fullUrl,r=t.node;e.push(li.blobs.fetchBlobGlobal({storedUrl:i,fullUrl:s,node:r}))}const n=await Promise.all(e);for(let e of n)e.error&&t.node.states.error.set(t.error)}}$g.loadingManager=Yg;const Jg=[\\\\\\\"mp4\\\\\\\",\\\\\\\"ogv\\\\\\\",\\\\\\\"ogg\\\\\\\"];var Zg;!function(t){t.JPG=\\\\\\\"jpg\\\\\\\",t.JPEG=\\\\\\\"jpeg\\\\\\\",t.PNG=\\\\\\\"png\\\\\\\",t.EXR=\\\\\\\"exr\\\\\\\",t.BASIS=\\\\\\\"basis\\\\\\\",t.HDR=\\\\\\\"hdr\\\\\\\"}(Zg||(Zg={}));const Kg=[Zg.JPEG,Zg.JPG,Zg.PNG,Zg.EXR,Zg.BASIS,Zg.HDR];function Qg(t){const e=t.split(\\\\\\\"?\\\\\\\")[0].split(\\\\\\\".\\\\\\\");return e[e.length-1]}class tv extends $g{constructor(t,e,n,i,s){super(t,i,n),this._param=e,this._node=n,this._scene=i,this._forceVideo=!1,this._forceImage=!1,this._forceVideo=(null==s?void 0:s.forceVideo)||this._forceVideo,this._forceImage=(null==s?void 0:s.forceImage)||this._forceImage}static onTextureLoaded(t){this._onTextureLoadedCallback=t}async load_texture_from_url_or_op(t){let e=null,n=null;if(\\\\\\\"op:\\\\\\\"==this._url.substring(0,3)){const t=this._url.substring(3);if(n=bi.findNode(this._node,t),n)if(n instanceof pf){e=(await n.compute()).texture()}else this._node.states.error.set(\\\\\\\"found node is not a texture node\\\\\\\");else this._node.states.error.set(`no node found in path '${t}'`)}else e=await this._loadUrl(t),e||this._node.states.error.set(`could not load texture ${this._url}`);return n&&this._param.graphPredecessors()[0]!=n&&(this._param.graphDisconnectPredecessors(),this._param.addGraphInput(n)),e}async _loadUrl(t){return new Promise((async(e,n)=>{const i=this.extension(),s=await this._urlToLoad();if(this._forceVideo||Jg.includes(i)){e(await this._loadVideo(s))}else if(this._forceImage||Kg.includes(i))try{e(await this._loadImage(s,t))}catch(t){n()}}))}_loadImage(t,e){return new Promise((async(n,i)=>{const s=this.extension();this.loader_for_ext(s,e).then((async e=>{e?(tv.incrementInProgressLoadsCount(),await tv.waitForMaxConcurrentLoadsQueueFreed(),e.load(t,(e=>{tv.decrementInProgressLoadsCount();const i=tv._onTextureLoadedCallback;i&&i(t,e),n(e)}),void 0,(t=>{tv.decrementInProgressLoadsCount(),li.warn(\\\\\\\"error\\\\\\\",t),i()}))):i()}))}))}_loadVideo(t){return new Promise((async(e,n)=>{tv.incrementInProgressLoadsCount(),await tv.waitForMaxConcurrentLoadsQueueFreed();const i=document.createElement(\\\\\\\"video\\\\\\\");i.setAttribute(\\\\\\\"crossOrigin\\\\\\\",\\\\\\\"anonymous\\\\\\\"),i.setAttribute(\\\\\\\"autoplay\\\\\\\",\\\\\\\"true\\\\\\\"),i.setAttribute(\\\\\\\"loop\\\\\\\",\\\\\\\"true\\\\\\\"),i.onloadedmetadata=function(){i.pause();const n=new jg(i);tv.decrementInProgressLoadsCount();const s=tv._onTextureLoadedCallback;s&&s(t,n),e(n)};const s=document.createElement(\\\\\\\"source\\\\\\\"),r=$g.extension(t);let o=tv.VIDEO_SOURCE_TYPE_BY_EXT[r];o=o||tv._default_video_source_type(t),s.setAttribute(\\\\\\\"type\\\\\\\",o),s.setAttribute(\\\\\\\"src\\\\\\\",t),i.appendChild(s);let a=t;a=\\\\\\\"mp4\\\\\\\"==r?tv.replaceExtension(t,\\\\\\\"ogv\\\\\\\"):tv.replaceExtension(t,\\\\\\\"mp4\\\\\\\");const l=document.createElement(\\\\\\\"source\\\\\\\"),c=$g.extension(a);o=tv.VIDEO_SOURCE_TYPE_BY_EXT[c],o=o||tv._default_video_source_type(t),l.setAttribute(\\\\\\\"type\\\\\\\",o),l.setAttribute(\\\\\\\"src\\\\\\\",t),i.appendChild(l)}))}static module_names(t){switch(t){case Zg.EXR:return[Hn.EXRLoader];case Zg.HDR:return[Hn.RGBELoader];case Zg.BASIS:return[Hn.BasisTextureLoader]}}async loader_for_ext(t,e){switch(t.toLowerCase()){case Zg.EXR:return await this._exr_loader(e);case Zg.HDR:return await this._hdr_loader(e);case Zg.BASIS:return await tv._basis_loader(this._node)}return new Wg.a(this.loadingManager)}async _exr_loader(t){const e=await li.modulesRegister.module(Hn.EXRLoader);if(e){const n=new e(this.loadingManager);return t.tdataType&&n.setDataType(t.dataType),n}}async _hdr_loader(t){const e=await li.modulesRegister.module(Hn.RGBELoader);if(e){const n=new e(this.loadingManager);return t.tdataType&&n.setDataType(t.dataType),n}}static async _basis_loader(t){const e=await li.modulesRegister.module(Hn.BasisTextureLoader);if(e){const n=new e(this.loadingManager),i=li.libs.root(),s=li.libs.BASISPath();if(i||s){const e=`${i||\\\\\\\"\\\\\\\"}${s||\\\\\\\"\\\\\\\"}/`;if(t){const n=[\\\\\\\"basis_transcoder.js\\\\\\\",\\\\\\\"basis_transcoder.wasm\\\\\\\"];await this._loadMultipleBlobGlobal({files:n.map((t=>({storedUrl:`${s}/${t}`,fullUrl:`${e}${t}`}))),node:t,error:\\\\\\\"failed to load basis libraries. Make sure to install them to load .basis files\\\\\\\"})}n.setTranscoderPath(e)}else n.setTranscoderPath(void 0);const r=await li.renderersController.waitForRenderer();return r?n.detectSupport(r):li.warn(\\\\\\\"texture loader found no renderer for basis texture loader\\\\\\\"),n}}static _default_video_source_type(t){return`video/${$g.extension(t)}`}static pixel_data(t){const e=t.image,n=document.createElement(\\\\\\\"canvas\\\\\\\");n.width=e.width,n.height=e.height;const i=n.getContext(\\\\\\\"2d\\\\\\\");if(i)return i.drawImage(e,0,0,e.width,e.height),i.getImageData(0,0,e.width,e.height)}static replaceExtension(t,e){const n=t.split(\\\\\\\"?\\\\\\\"),i=n[0].split(\\\\\\\".\\\\\\\");return i.pop(),i.push(e),[i.join(\\\\\\\".\\\\\\\"),n[1]].join(\\\\\\\"?\\\\\\\")}static setMaxConcurrentLoadsCount(t){this._maxConcurrentLoadsCountMethod=t}static _init_max_concurrent_loads_count(){return this._maxConcurrentLoadsCountMethod?this._maxConcurrentLoadsCountMethod():ng.isChrome()?10:4}static _init_concurrent_loads_delay(){return ng.isChrome()?0:10}static incrementInProgressLoadsCount(){this.in_progress_loads_count++}static decrementInProgressLoadsCount(){this.in_progress_loads_count--;const t=this._queue.pop();if(t){const e=this.CONCURRENT_LOADS_DELAY;setTimeout((()=>{t()}),e)}}static async waitForMaxConcurrentLoadsQueueFreed(){return this.in_progress_loads_count<=this.MAX_CONCURRENT_LOADS_COUNT?void 0:new Promise((t=>{this._queue.push(t)}))}}tv.PARAM_DEFAULT=`${qg}/textures/uv.jpg`,tv.PARAM_ENV_DEFAULT=`${qg}/textures/piz_compressed.exr`,tv.VIDEO_SOURCE_TYPE_BY_EXT={ogg:'video/ogg; codecs=\\\\\\\"theora, vorbis\\\\\\\"',ogv:'video/ogg; codecs=\\\\\\\"theora, vorbis\\\\\\\"',mp4:'video/mp4; codecs=\\\\\\\"avc1.42E01E, mp4a.40.2\\\\\\\"'},tv.MAX_CONCURRENT_LOADS_COUNT=tv._init_max_concurrent_loads_count(),tv.CONCURRENT_LOADS_DELAY=tv._init_concurrent_loads_delay(),tv.in_progress_loads_count=0,tv._queue=[];var ev=n(114);class nv extends(Mg(function(t){return class extends t{constructor(){super(...arguments),this.url=ha.STRING(tv.PARAM_DEFAULT,{fileBrowse:{type:[Rr.TEXTURE_IMAGE]}}),this.reload=ha.BUTTON(null,{callback:(t,e)=>{sv.PARAM_CALLBACK_reload(t)}}),this.play=ha.BOOLEAN(1,{cook:!1,callback:t=>{sv.PARAM_CALLBACK_gifUpdatePlay(t)}}),this.gifFrame=ha.INTEGER(0,{cook:!1,range:[0,100],rangeLocked:[!0,!1],callback:t=>{sv.PARAM_CALLBACK_gifUpdateFrameIndex(t)}})}}}(ua))){}const iv=new nv;class sv extends df{constructor(){super(...arguments),this.paramsConfig=iv,this.textureParamsController=new Sg(this),this._gifCanvasContext=null,this._tmpCanvasContext=null,this._parsedFrames=[],this._frameDelay=100,this._frameIndex=0}static type(){return\\\\\\\"gif\\\\\\\"}async requiredModules(){this.p.url.isDirty()&&await this.p.url.compute();const t=$g.extension(this.pv.url||\\\\\\\"\\\\\\\");return tv.module_names(t)}static displayedInputNames(){return[\\\\\\\"optional texture to copy attributes from\\\\\\\"]}initializeNode(){this.io.inputs.setCount(0,1),this.io.inputs.initInputsClonedState(Qi.NEVER),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{let t=[this.p.url];t=t.concat(this.textureParamsController.paramLabelsParams()),this.params.label.init(t,(()=>{const t=this.p.url.rawInput();if(t){const e=t.split(\\\\\\\"/\\\\\\\"),n=e[e.length-1],i=this.textureParamsController.paramLabels();return[n].concat(i)}return\\\\\\\"\\\\\\\"}))}))}))}async cook(t){if(\\\\\\\"gif\\\\\\\"!=Qg(this.pv.url).toLowerCase())this.states.error.set(\\\\\\\"url is not an image\\\\\\\");else{tv.incrementInProgressLoadsCount(),await tv.waitForMaxConcurrentLoadsQueueFreed();const t=await fetch(this.pv.url),e=await t.arrayBuffer(),n=await Object(ev.parseGIF)(e),i=!0;this._parsedFrames=await Object(ev.decompressFrames)(n,i);const s=this._parsedFrames[0];if(this._frameDelay=s.delay,this._frameIndex=this.pv.gifFrame-1,this._createCanvas(),tv.decrementInProgressLoadsCount(),this._gifCanvasElement){const t=new Cg(this._gifCanvasElement);await this.textureParamsController.update(t),this.setTexture(t)}else this.states.error.set(\\\\\\\"failed to create canvas\\\\\\\")}}_createCanvas(){const t=this._parsedFrames[0];this._gifCanvasElement=document.createElement(\\\\\\\"canvas\\\\\\\"),this._tmpCanvasElement=document.createElement(\\\\\\\"canvas\\\\\\\"),this._gifCanvasElement.width=t.dims.width,this._gifCanvasElement.height=t.dims.height,this._tmpCanvasElement.width=t.dims.width,this._tmpCanvasElement.height=t.dims.height,this._gifCanvasContext=this._gifCanvasElement.getContext(\\\\\\\"2d\\\\\\\"),this._tmpCanvasContext=this._tmpCanvasElement.getContext(\\\\\\\"2d\\\\\\\"),this._drawNextFrame()}_drawOnCanvas(){if(!(this._gifCanvasContext&&this._tmpCanvasElement&&this._tmpCanvasContext))return;let t=this._parsedFrames[this._frameIndex];if(t||(console.warn(`no frame at index ${this._frameIndex}, using last frame`),t=this._parsedFrames[this._parsedFrames.length-1]),t){const e=t.dims;this._frameImageData&&e.width==this._frameImageData.width&&e.height==this._frameImageData.height||(this._tmpCanvasElement.width=e.width,this._tmpCanvasElement.height=e.height,this._frameImageData=this._tmpCanvasContext.createImageData(e.width,e.height)),this._frameImageData.data.set(t.patch),this._tmpCanvasContext.putImageData(this._frameImageData,0,0),this._gifCanvasContext.drawImage(this._tmpCanvasElement,e.left,e.top);const n=this.containerController.container().texture();if(!n)return;n.needsUpdate=!0}}_drawNextFrame(){this._frameIndex++,this._frameIndex>=this._parsedFrames.length&&(this._frameIndex=0),this._drawOnCanvas(),this.pv.play&&setTimeout((()=>{this._drawNextFrame()}),this._frameDelay)}gifUpdateFrameIndex(){this._frameIndex=this.pv.gifFrame,this._drawOnCanvas()}static PARAM_CALLBACK_reload(t){t.paramCallbackReload()}paramCallbackReload(){this.p.url.setDirty()}static PARAM_CALLBACK_gifUpdatePlay(t){t.gifUpdatePlay()}gifUpdatePlay(){this.pv.play&&this._drawNextFrame()}static PARAM_CALLBACK_gifUpdateFrameIndex(t){t.gifUpdateFrameIndex()}}function rv(t){return class extends t{constructor(){super(...arguments),this.checkFileType=ha.BOOLEAN(!0)}}}class ov extends(rv(Mg(function(t){return class extends t{constructor(){super(...arguments),this.url=ha.STRING(tv.PARAM_DEFAULT,{fileBrowse:{type:[Rr.TEXTURE_IMAGE]}}),this.reload=ha.BUTTON(null,{callback:(t,e)=>{lv.PARAM_CALLBACK_reload(t,e)}})}}}(ua)))){}const av=new ov;class lv extends df{constructor(){super(...arguments),this.paramsConfig=av,this.textureParamsController=new Sg(this)}static type(){return\\\\\\\"image\\\\\\\"}async requiredModules(){this.p.url.isDirty()&&await this.p.url.compute();const t=$g.extension(this.pv.url||\\\\\\\"\\\\\\\");return tv.module_names(t)}static displayedInputNames(){return[\\\\\\\"optional texture to copy attributes from\\\\\\\"]}initializeNode(){this.io.inputs.setCount(0,1),this.io.inputs.initInputsClonedState(Qi.NEVER),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{let t=[this.p.url];t=t.concat(this.textureParamsController.paramLabelsParams()),this.params.label.init(t,(()=>{const t=this.p.url.rawInput();if(t){const e=t.split(\\\\\\\"/\\\\\\\"),n=e[e.length-1],i=this.textureParamsController.paramLabels();return[n].concat(i)}return\\\\\\\"\\\\\\\"}))}))}))}async cook(t){if(this.pv.checkFileType&&(e=this.pv.url,!Kg.includes(Qg(e).toLowerCase())))this.states.error.set(\\\\\\\"url is not an image\\\\\\\");else{const e=await this._loadTexture();if(e){const n=t[0];n&&Sg.copyTextureAttributes(e,n),await this.textureParamsController.update(e),this.setTexture(e)}else this._clearTexture()}var e}static PARAM_CALLBACK_reload(t,e){t.paramCallbackReload()}paramCallbackReload(){this.clearLoadedBlob(),this.p.url.setDirty()}_loader(){return new tv(this.pv.url,this.p.url,this,this.scene(),{forceImage:!this.pv.checkFileType})}async _loadTexture(){let t=null;try{t=await this._loader().load_texture_from_url_or_op({tdataType:this.pv.ttype&&this.pv.tadvanced,dataType:this.pv.type}),t&&(t.matrixAutoUpdate=!1)}catch(t){}return t||this.states.error.set(`could not load texture '${this.pv.url}'`),t}clearLoadedBlob(){this._loader().deregisterUrl()}}var cv=n(33);const hv=.005;class uv{constructor(t,e=1024){this.renderer=t,this.res=e,this.objectTargets=[],this.lights=[],this.scene=new vs,this.buffer1Active=!1,this._params={lightRadius:1,iterations:1,iterationBlend:hv,blur:!1,blurAmount:0},this._objectStateByObject=new WeakMap,this._previousRenderTarget=null,this._lightHierarchyStateByLight=new WeakMap,this._lightMatrixStateByLight=new WeakMap,this._t=new p.a,this._q=new hh.a,this._s=new p.a;const n=ng.isAndroid()||ng.isiOS()?w.M:w.G;this.progressiveLightMap1=new K(this.res,this.res,{type:n}),this.progressiveLightMap2=new K(this.res,this.res,{type:n}),this.uvMat=this._createUVMat()}textureRenderTarget(){return this.progressiveLightMap2}texture(){return this.textureRenderTarget().texture}setParams(t){this._params.lightRadius=t.lightRadius,this._params.iterations=t.iterations,this._params.iterationBlend=t.iterationBlend,this._params.blur=t.blur,this._params.blurAmount=t.blurAmount}init(t,e){this._setObjects(t),this._setLights(e)}_setObjects(t){this.objectTargets=[];for(let e of t)null==this.blurringPlane&&this._initializeBlurPlane(this.res,this.progressiveLightMap1),this.objectTargets.push(e);this._saveObjectsState()}_setLights(t){this.lights=t;for(let e of t)this._saveLightHierarchyState(e),this.scene.attach(e),this._saveLightMatrixState(e)}_saveLightHierarchyState(t){this._lightHierarchyStateByLight.set(t,{parent:t.parent,matrixAutoUpdate:t.matrixAutoUpdate}),t.matrixAutoUpdate=!0}_saveLightMatrixState(t){t.updateMatrix(),t.matrix.decompose(this._t,this._q,this._s),this._lightMatrixStateByLight.set(t,{matrix:t.matrix.clone(),position:this._t.clone()})}_saveObjectsState(){let t=0;for(let e of this.objectTargets)this._objectStateByObject.set(e,{frustumCulled:e.frustumCulled,material:e.material,parent:e.parent,castShadow:e.castShadow,receiveShadow:e.receiveShadow}),e.material=this.uvMat,e.frustumCulled=!1,e.castShadow=!0,e.receiveShadow=!0,e.renderOrder=1e3+t,this.scene.attach(e),t++;this._previousRenderTarget=this.renderer.getRenderTarget()}_moveLights(){const t=this._params.lightRadius;for(let e of this.lights){const n=this._lightMatrixStateByLight.get(e);if(n){const i=n.position;e.position.x=i.x+t*(Math.random()-.5),e.position.y=i.y+t*(Math.random()-.5),e.position.z=i.z+t*(Math.random()-.5)}}}restoreState(){this._restoreObjectsState(),this._restoreLightsState(),this.renderer.setRenderTarget(this._previousRenderTarget)}_restoreObjectsState(){for(let t of this.objectTargets){const e=this._objectStateByObject.get(t);if(e){t.frustumCulled=e.frustumCulled,t.castShadow=e.castShadow,t.receiveShadow=e.receiveShadow,t.material=e.material;const n=e.parent;n&&n.add(t)}}}_restoreLightsState(){var t;for(let e of this.lights){const n=this._lightHierarchyStateByLight.get(e),i=this._lightMatrixStateByLight.get(e);n&&i&&(e.matrixAutoUpdate=n.matrixAutoUpdate,e.matrix.copy(i.matrix),e.matrix.decompose(e.position,e.quaternion,e.scale),e.updateMatrix(),null===(t=n.parent)||void 0===t||t.attach(e))}}runUpdates(t){if(!this.blurMaterial)return;if(null==this.blurringPlane)return;const e=this._params.iterations;this.blurMaterial.uniforms.pixelOffset.value=this._params.blurAmount/this.res,this.blurringPlane.visible=this._params.blur,this.uvMat.uniforms.iterationBlend.value=this._params.iterationBlend,this._clear(t);for(let n=0;n<e;n++)this._moveLights(),this._update(t)}_clear(t){this.scene.visible=!1,this._update(t),this._update(t),this.scene.visible=!0}_update(t){if(!this.blurMaterial)return;const e=this.buffer1Active?this.progressiveLightMap1:this.progressiveLightMap2,n=this.buffer1Active?this.progressiveLightMap2:this.progressiveLightMap1;this.renderer.setRenderTarget(e),this.uvMat.uniforms.previousShadowMap.value=n.texture,this.blurMaterial.uniforms.previousShadowMap.value=n.texture,this.buffer1Active=!this.buffer1Active,this.renderer.render(this.scene,t)}_initializeBlurPlane(t,e){this.blurMaterial=this._createBlurPlaneMaterial(t,e),this.blurringPlane=new B.a(new L(1,1),this.blurMaterial),this.blurringPlane.name=\\\\\\\"Blurring Plane\\\\\\\",this.blurringPlane.frustumCulled=!1,this.blurringPlane.renderOrder=0,this.blurMaterial.depthWrite=!1,this.scene.add(this.blurringPlane)}_createBlurPlaneMaterial(t,e){const n=new lt.a;return n.uniforms={previousShadowMap:{value:null},pixelOffset:{value:1/t}},n.onBeforeCompile=i=>{i.vertexShader=\\\\\\\"#define USE_UV\\\\n\\\\\\\"+i.vertexShader.slice(0,-2)+\\\\\\\"\\\\tgl_Position = vec4((uv - 0.5) * 2.0, 1.0, 1.0); }\\\\\\\";const s=i.fragmentShader.indexOf(\\\\\\\"void main() {\\\\\\\");i.fragmentShader=\\\\\\\"#define USE_UV\\\\n\\\\\\\"+i.fragmentShader.slice(0,s)+\\\\\\\"\\\\tuniform sampler2D previousShadowMap;\\\\n\\\\tuniform float pixelOffset;\\\\n\\\\\\\"+i.fragmentShader.slice(s-1,-2)+\\\\\\\"\\\\tgl_FragColor.rgb = (\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\ttexture2D(previousShadowMap, vUv + vec2( pixelOffset,  0.0        )).rgb +\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\ttexture2D(previousShadowMap, vUv + vec2( 0.0        ,  pixelOffset)).rgb +\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\ttexture2D(previousShadowMap, vUv + vec2( 0.0        , -pixelOffset)).rgb +\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\ttexture2D(previousShadowMap, vUv + vec2(-pixelOffset,  0.0        )).rgb +\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\ttexture2D(previousShadowMap, vUv + vec2( pixelOffset,  pixelOffset)).rgb +\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\ttexture2D(previousShadowMap, vUv + vec2(-pixelOffset,  pixelOffset)).rgb +\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\ttexture2D(previousShadowMap, vUv + vec2( pixelOffset, -pixelOffset)).rgb +\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\ttexture2D(previousShadowMap, vUv + vec2(-pixelOffset, -pixelOffset)).rgb)/8.0;\\\\n\\\\t\\\\t\\\\t\\\\t}\\\\\\\";const r={previousShadowMap:{value:e.texture},pixelOffset:{value:.5/t}};i.uniforms.previousShadowMap=r.previousShadowMap,i.uniforms.pixelOffset=r.pixelOffset,n.uniforms.previousShadowMap=r.previousShadowMap,n.uniforms.pixelOffset=r.pixelOffset,n.userData.shader=i},n}_createUVMat(){const t=new qf.a;return t.uniforms={previousShadowMap:{value:null},iterationBlend:{value:hv}},t.name=\\\\\\\"uvMat\\\\\\\",t.onBeforeCompile=e=>{e.vertexShader=\\\\\\\"#define USE_LIGHTMAP\\\\n\\\\\\\"+e.vertexShader.slice(0,-2)+\\\\\\\"\\\\tgl_Position = vec4((uv2 - 0.5) * 2.0, 1.0, 1.0); }\\\\\\\";const n=e.fragmentShader.indexOf(\\\\\\\"void main() {\\\\\\\");e.fragmentShader=\\\\\\\"varying vec2 vUv2;\\\\n\\\\\\\"+e.fragmentShader.slice(0,n)+\\\\\\\"\\\\tuniform sampler2D previousShadowMap;\\\\n\\\\tuniform float iterationBlend;\\\\n\\\\\\\"+e.fragmentShader.slice(n-1,-2)+\\\\\\\"\\\\nvec3 texelOld = texture2D(previousShadowMap, vUv2).rgb;\\\\n\\\\t\\\\t\\\\t\\\\tgl_FragColor.rgb = mix(texelOld, gl_FragColor.rgb, iterationBlend);\\\\n\\\\t\\\\t\\\\t\\\\t// gl_FragColor.rgb = vec3(vUv2,1.0);\\\\n\\\\t\\\\t\\\\t}\\\\\\\";const i={previousShadowMap:{value:this.progressiveLightMap1.texture},iterationBlend:{value:hv}};e.uniforms.previousShadowMap=i.previousShadowMap,e.uniforms.iterationBlend=i.iterationBlend,t.uniforms.previousShadowMap=i.previousShadowMap,t.uniforms.iterationBlend=i.iterationBlend,t.userData.shader=e},t}}const dv=new class extends ua{constructor(){super(...arguments),this.update=ha.BUTTON(null,{callback:t=>{pv.PARAM_CALLBACK_updateManual(t)}}),this.useCameraRenderer=ha.BOOLEAN(1),this.lightMapRes=ha.INTEGER(1024,{range:[1,2048],rangeLocked:[!0,!1]}),this.iterations=ha.INTEGER(512,{range:[1,2048],rangeLocked:[!0,!1]}),this.iterationBlend=ha.FLOAT(hv,{range:[0,1],rangeLocked:[!0,!0]}),this.blur=ha.BOOLEAN(1),this.blurAmount=ha.FLOAT(1,{visibleIf:{blur:1},range:[0,1],rangeLocked:[!0,!1]}),this.lightRadius=ha.FLOAT(1,{range:[0,10]}),this.objectsMask=ha.STRING(\\\\\\\"\\\\\\\"),this.lightsMask=ha.STRING(\\\\\\\"*\\\\\\\"),this.printResolveObjectsList=ha.BUTTON(null,{callback:t=>{pv.PARAM_CALLBACK_printResolveObjectsList(t)}})}};class pv extends df{constructor(){super(...arguments),this.paramsConfig=dv,this._includedObjects=[],this._includedLights=[]}static type(){return\\\\\\\"lightMap\\\\\\\"}async cook(){this._updateManual()}async _createLightMapController(){const t=await li.renderersController.firstRenderer();if(!t)return void console.warn(\\\\\\\"no renderer found\\\\\\\");return new uv(t,this.pv.lightMapRes)}static PARAM_CALLBACK_update_updateMode(t){}async _updateManual(){if(this.lightMapController=this.lightMapController||await this._createLightMapController(),!this.lightMapController)return;const t=this.scene().mainCameraNode();if(!t)return;this._updateObjectsAndLightsList(),this.lightMapController.init(this._includedObjects,this._includedLights);const e=t.camera();this.lightMapController.setParams({lightRadius:this.pv.lightRadius,iterations:this.pv.iterations,iterationBlend:this.pv.iterationBlend,blur:this.pv.blur,blurAmount:this.pv.blurAmount}),this.lightMapController.runUpdates(e),this.lightMapController.restoreState();const n=this.lightMapController.textureRenderTarget();if(this.pv.useCameraRenderer)this.setTexture(n.texture);else{this._data_texture_controller=this._data_texture_controller||new kf(zf.Float32Array),this._renderer_controller=this._renderer_controller||new Uf(this);const t=await this._renderer_controller.renderer(),e=this._data_texture_controller.from_render_target(t,n);this.setTexture(e)}}static PARAM_CALLBACK_updateManual(t){t._updateManual()}_updateObjectsAndLightsList(){let t=[],e=[];this._includedLights=[],this._includedObjects=[];const n=new WeakSet;if(\\\\\\\"\\\\\\\"!=this.pv.lightsMask){e=this.scene().objectsByMask(this.pv.lightsMask);for(let t of e)t instanceof cv.a&&(this._includedLights.push(t),n.add(t))}if(\\\\\\\"\\\\\\\"!=this.pv.objectsMask){t=this.scene().objectsByMask(this.pv.objectsMask);for(let e of t)e instanceof cv.a||!n.has(e)&&e instanceof B.a&&this._includedObjects.push(e)}}static PARAM_CALLBACK_printResolveObjectsList(t){t._printResolveObjectsList()}_printResolveObjectsList(){this._updateObjectsAndLightsList(),console.log(\\\\\\\"included objects:\\\\\\\"),console.log(this._includedObjects),console.log(\\\\\\\"included lights:\\\\\\\"),console.log(this._includedLights)}}const _v=new ua;class mv extends df{constructor(){super(...arguments),this.paramsConfig=_v}static type(){return\\\\\\\"null\\\\\\\"}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(Qi.NEVER)}async cook(t){const e=t[0];this.setTexture(e)}}class fv extends(Mg(function(t){return class extends t{constructor(){super(...arguments),this.camera=ha.NODE_PATH(\\\\\\\"\\\\\\\",{nodeSelection:{context:ts.OBJ,types:ds}}),this.resolution=ha.VECTOR2([1024,1024]),this.useCameraRenderer=ha.BOOLEAN(1),this.render=ha.BUTTON(null,{callback:t=>{vv.PARAM_CALLBACK_render(t)}})}}}(ua))){}const gv=new fv;class vv extends df{constructor(){super(...arguments),this.paramsConfig=gv,this.textureParamsController=new Sg(this)}static type(){return\\\\\\\"render\\\\\\\"}async cook(){this._texture_scene=this.scene().threejsScene(),this._camera_node=this.pv.camera.nodeWithContext(ts.OBJ),this._camera_node&&ds.includes(this._camera_node.type())?(this._texture_camera=this._camera_node.object,await this._camera_node.compute(),this.renderOnTarget()):this._texture_camera=void 0}async renderOnTarget(){if(await this.createRenderTargetIfRequired(),!(this._render_target&&this._texture_scene&&this._texture_camera))return;this._renderer_controller=this._renderer_controller||new Uf(this);const t=await this._renderer_controller.renderer(),e=t.getRenderTarget();if(t.setRenderTarget(this._render_target),t.clear(),t.render(this._texture_scene,this._texture_camera),t.setRenderTarget(e),this._render_target.texture)if(this.pv.useCameraRenderer)this.setTexture(this._render_target.texture);else{this._data_texture_controller=this._data_texture_controller||new kf(zf.Float32Array);const e=this._data_texture_controller.from_render_target(t,this._render_target);await this.textureParamsController.update(e),this.setTexture(e)}else this.cookController.endCook()}async renderTarget(){return this._render_target=this._render_target||await this._createRenderTarget(this.pv.resolution.x,this.pv.resolution.y)}async createRenderTargetIfRequired(){var t;this._render_target&&this._renderTargetResolutionValid()||(this._render_target=await this._createRenderTarget(this.pv.resolution.x,this.pv.resolution.y),null===(t=this._data_texture_controller)||void 0===t||t.reset())}_renderTargetResolutionValid(){if(this._render_target){const t=this._render_target.texture.image;return t.width==this.pv.resolution.x&&t.height==this.pv.resolution.y}return!1}async _createRenderTarget(t,e){if(this._render_target){const n=this._render_target.texture.image;if(n.width==t&&n.height==e)return this._render_target}const n=w.n,i=w.n,s=w.V,r=w.ob;var o=new K(t,e,{wrapS:n,wrapT:i,minFilter:s,magFilter:r,format:w.Ib,generateMipmaps:!0,type:ng.isiOS()?w.M:w.G,stencilBuffer:!1,depthBuffer:!1});return await this.textureParamsController.update(o.texture),li.warn(\\\\\\\"created render target\\\\\\\",this.path(),t,e),o}static PARAM_CALLBACK_render(t){t.renderOnTarget()}}const yv=t=>(t.preventDefault(),!1);class xv{static disableContextMenu(){document.addEventListener(\\\\\\\"contextmenu\\\\\\\",yv)}static reEstablishContextMenu(){document.removeEventListener(\\\\\\\"contextmenu\\\\\\\",yv)}static isHTMLVideoElementLoaded(t){return 4===t.readyState}}class bv extends(function(t){return class extends t{constructor(){super(...arguments),this.capture=ha.BUTTON(null,{callback:t=>{Tv.PARAM_CALLBACK_snapshot(t)}})}}}(ua)){}const wv=new bv;class Tv extends df{constructor(){super(...arguments),this.paramsConfig=wv}static type(){return Fg.SNAPSHOT}static displayedInputNames(){return[\\\\\\\"input to take a snapshot of\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(Qi.NEVER)}async cook(t){const e=t[0];if(e&&e instanceof jg){const t=await this._canvasToTexture(e);if(t)return Sg.copyTextureAttributes(t,e),void this.setTexture(t)}else this.states.error.set(\\\\\\\"input texture is not a video\\\\\\\");this.cookController.endCook()}static PARAM_CALLBACK_snapshot(t){t.paramCallbackSnapshot()}paramCallbackSnapshot(){this.setDirty()}_videoSnapshotCanvas(t){const e=t.image;if(!xv.isHTMLVideoElementLoaded(e))return void this.states.error.set(\\\\\\\"video not loaded\\\\\\\");const n=document.createElement(\\\\\\\"canvas\\\\\\\");n.width=t.image.videoWidth,n.height=t.image.videoHeight;return n.getContext(\\\\\\\"2d\\\\\\\").drawImage(t.image,0,0,n.width,n.height),n}_canvasToTexture(t){const e=this._canvas;let n=!0;const i=this._videoSnapshotCanvas(t);if(i)return e&&i.width==e.width&&i.height==e.height&&(n=!1),this._canvas=i,new Promise((e=>{if(!this._canvas)return;const i=this._canvas.toDataURL(\\\\\\\"image/png\\\\\\\"),s=new Image;s.onload=()=>{let i;n?(i=new Z.a(s),i.encoding=t.encoding):(i=this.containerController.container().coreContent(),i.copy(t)),i.needsUpdate=!0,e(i)},s.src=i}))}}const Av=new class extends ua{constructor(){super(...arguments),this.input=ha.INTEGER(0,{range:[0,3],rangeLocked:[!0,!0]})}};class Mv extends df{constructor(){super(...arguments),this.paramsConfig=Av}static type(){return\\\\\\\"switch\\\\\\\"}initializeNode(){this.io.inputs.setCount(0,4),this.io.inputs.initInputsClonedState(Qi.NEVER),this.cookController.disallowInputsEvaluation()}async cook(){const t=this.pv.input;if(this.io.inputs.has_input(t)){const e=await this.containerController.requestInputContainer(t);if(e)return void this.setTexture(e.texture())}else this.states.error.set(`no input ${t}`);this.cookController.endCook()}}class Ev extends(Mg(ua)){}const Sv=new Ev;class Cv extends df{constructor(){super(...arguments),this.paramsConfig=Sv,this.textureParamsController=new Sg(this)}static type(){return\\\\\\\"textureProperties\\\\\\\"}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState([Qi.FROM_NODE])}async cook(t){const e=t[0];this.textureParamsController.update(e),this.setTexture(e)}}class Nv extends(rv(Mg(function(t){return class extends t{constructor(){super(...arguments),this.url=ha.STRING(tv.PARAM_DEFAULT,{fileBrowse:{type:[Rr.TEXTURE_VIDEO]}}),this.reload=ha.BUTTON(null,{callback:(t,e)=>{Ov.PARAM_CALLBACK_reload(t,e)}}),this.play=ha.BOOLEAN(1,{cook:!1,callback:t=>{Ov.PARAM_CALLBACK_video_update_play(t)}}),this.muted=ha.BOOLEAN(1,{cook:!1,callback:t=>{Ov.PARAM_CALLBACK_video_update_muted(t)}}),this.loop=ha.BOOLEAN(1,{cook:!1,callback:t=>{Ov.PARAM_CALLBACK_video_update_loop(t)}}),this.videoTime=ha.FLOAT(0,{cook:!1}),this.setVideoTime=ha.BUTTON(null,{cook:!1,callback:t=>{Ov.PARAM_CALLBACK_video_update_time(t)}})}}}(ua)))){}const Lv=new Nv;class Ov extends df{constructor(){super(...arguments),this.paramsConfig=Lv,this.textureParamsController=new Sg(this)}static type(){return Fg.VIDEO}async requiredModules(){this.p.url.isDirty()&&await this.p.url.compute();const t=$g.extension(this.pv.url||\\\\\\\"\\\\\\\");return tv.module_names(t)}HTMLVideoElement(){return this._video}static displayedInputNames(){return[\\\\\\\"optional texture to copy attributes from\\\\\\\"]}initializeNode(){this.io.inputs.setCount(0,1),this.io.inputs.initInputsClonedState(Qi.NEVER),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.url],(()=>{const t=this.p.url.rawInput();if(t){const e=t.split(\\\\\\\"/\\\\\\\");return e[e.length-1]}return\\\\\\\"\\\\\\\"}))}))}))}async cook(t){if(this.pv.checkFileType&&(e=this.pv.url,!Jg.includes(Qg(e).toLowerCase())))this.states.error.set(\\\\\\\"url is not a video\\\\\\\");else{const e=await this._load_texture(this.pv.url);if(e){this._video=e.image,this._video&&document.body.appendChild(this._video);const n=t[0];n&&Sg.copyTextureAttributes(e,n),this.video_update_loop(),this.video_update_muted(),this.video_update_play(),this.video_update_time(),await this.textureParamsController.update(e),this.setTexture(e)}else this.cookController.endCook()}var e}dispose(){var t;super.dispose(),this._video&&(null===(t=this._video.parentElement)||void 0===t||t.removeChild(this._video))}static PARAM_CALLBACK_video_update_time(t){t.video_update_time()}static PARAM_CALLBACK_video_update_play(t){t.video_update_play()}static PARAM_CALLBACK_video_update_muted(t){t.video_update_muted()}static PARAM_CALLBACK_video_update_loop(t){t.video_update_loop()}async video_update_time(){if(this._video){const t=this.p.videoTime;t.isDirty()&&await t.compute(),this._video.currentTime=t.value}}video_update_muted(){this._video&&(this._video.muted=this.pv.muted)}video_update_loop(){this._video&&(this._video.loop=this.pv.loop)}video_update_play(){this._video&&(this.pv.play?this._video.play():this._video.pause())}static PARAM_CALLBACK_reload(t,e){t.paramCallbackReload()}paramCallbackReload(){this.p.url.setDirty()}async _load_texture(t){let e=null;const n=this.p.url;this._texture_loader=this._texture_loader||new tv(t,n,this,this.scene(),{forceVideo:!this.pv.checkFileType});try{e=await this._texture_loader.load_texture_from_url_or_op({tdataType:this.pv.ttype&&this.pv.tadvanced,dataType:this.pv.type}),e&&(e.matrixAutoUpdate=!1)}catch(t){}return e||this.states.error.set(`could not load texture '${t}'`),e}}class Pv extends(Mg(function(t){return class extends t{constructor(){super(...arguments),this.res=ha.VECTOR2([1024,1024])}}}(ua),{tencoding:!0,encoding:w.ld})){}const Rv=new Pv;class Iv extends df{constructor(){super(...arguments),this.paramsConfig=Rv,this.textureParamsController=new Sg(this)}static type(){return Fg.WEB_CAM}HTMLVideoElement(){return this._video}static displayedInputNames(){return[\\\\\\\"optional texture to copy attributes from\\\\\\\"]}initializeNode(){this.io.inputs.setCount(0,1),this.io.inputs.initInputsClonedState(Qi.NEVER)}dispose(){super.dispose(),this._cancelWebcamRequest()}_cancelWebcamRequest(){try{this._stream&&this._stream.getTracks().forEach((function(t){t.stop()}))}catch(t){console.error(t),console.warn(\\\\\\\"failed to cancel webcam request\\\\\\\")}}_createHTMLVideoElement(){this._video&&document.body.removeChild(this._video);const t=document.createElement(\\\\\\\"video\\\\\\\");return t.style.display=\\\\\\\"none\\\\\\\",t.width=this.pv.res.x,t.height=this.pv.res.y,t.autoplay=!0,t.setAttribute(\\\\\\\"autoplay\\\\\\\",\\\\\\\"true\\\\\\\"),t.setAttribute(\\\\\\\"muted\\\\\\\",\\\\\\\"true\\\\\\\"),t.setAttribute(\\\\\\\"playsinline\\\\\\\",\\\\\\\"true\\\\\\\"),document.body.appendChild(t),t}async cook(t){this._video=this._createHTMLVideoElement();const e=new jg(this._video),n=t[0];if(n&&Sg.copyTextureAttributes(e,n),await this.textureParamsController.update(e),navigator&&navigator.mediaDevices&&navigator.mediaDevices.getUserMedia){const t={video:{width:this.pv.res.x,height:this.pv.res.y,facingMode:\\\\\\\"user\\\\\\\"}};navigator.mediaDevices.getUserMedia(t).then((t=>{this._stream=t,this._video&&(this._video.srcObject=t,this._video.play(),this.setTexture(e))})).catch((t=>{this.states.error.set(\\\\\\\"Unable to access the camera/webcam\\\\\\\")}))}else this.states.error.set(\\\\\\\"MediaDevices interface not available.\\\\\\\")}}class Fv extends aa{static context(){return ts.COP}cook(){this.cookController.endCook()}}class Dv extends Fv{}class Bv extends Dv{constructor(){super(...arguments),this._children_controller_context=ts.ANIM}static type(){return es.ANIM}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class zv extends Dv{constructor(){super(...arguments),this._children_controller_context=ts.EVENT}static type(){return es.EVENT}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class kv extends Dv{constructor(){super(...arguments),this._children_controller_context=ts.COP}static type(){return es.COP}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class Uv extends Dv{constructor(){super(...arguments),this._children_controller_context=ts.MAT}static type(){return es.MAT}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class Gv extends Fv{constructor(){super(...arguments),this.paramsConfig=new ef,this.effectsComposerController=new nf(this),this.displayNodeController=new Fm(this,this.effectsComposerController.displayNodeControllerCallbacks()),this._children_controller_context=ts.POST}static type(){return es.POST}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class Vv extends Dv{constructor(){super(...arguments),this._children_controller_context=ts.ROP}static type(){return es.ROP}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}var Hv,jv;!function(t){t.START=\\\\\\\"start\\\\\\\",t.STOP=\\\\\\\"stop\\\\\\\",t.UPDATE=\\\\\\\"update\\\\\\\"}(Hv||(Hv={})),function(t){t.START=\\\\\\\"start\\\\\\\",t.COMPLETE=\\\\\\\"completed\\\\\\\"}(jv||(jv={}));const Wv=new class extends ua{constructor(){super(...arguments),this.animation=ha.NODE_PATH(\\\\\\\"\\\\\\\",{nodeSelection:{context:ts.ANIM},dependentOnFoundNode:!1}),this.play=ha.BUTTON(null,{callback:t=>{qv.PARAM_CALLBACK_play(t)}}),this.pause=ha.BUTTON(null,{callback:t=>{qv.PARAM_CALLBACK_pause(t)}})}};class qv extends Va{constructor(){super(...arguments),this.paramsConfig=Wv}static type(){return\\\\\\\"animation\\\\\\\"}initializeNode(){this.io.inputs.setNamedInputConnectionPoints([new ta(Hv.START,Qo.BASE,this._play.bind(this)),new ta(Hv.STOP,Qo.BASE,this._pause.bind(this))]),this.io.outputs.setNamedOutputConnectionPoints([new ta(jv.START,Qo.BASE),new ta(jv.COMPLETE,Qo.BASE)]),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.animation],(()=>this.pv.animation.path()))}))}))}processEvent(t){}static PARAM_CALLBACK_play(t){t._play({})}static PARAM_CALLBACK_pause(t){t._pause()}async _play(t){const e=this.p.animation;e.isDirty()&&await e.compute();const n=e.value.nodeWithContext(ts.ANIM);if(!n)return;const i=await n.compute();i&&(this._timelineBuilder=i.coreContent(),this._timelineBuilder&&(this._timeline&&this._timeline.kill(),this._timeline=F_.timeline(),this._timelineBuilder.populate(this._timeline),this._timeline.vars.onStart=()=>{this._triggerAnimationStarted(t)},this._timeline.vars.onComplete=()=>{this._timeline&&this._timeline.kill(),this._triggerAnimationCompleted(t)}))}_pause(){this._timeline&&this._timeline.pause()}_triggerAnimationStarted(t){this.dispatchEventToOutput(jv.START,t)}_triggerAnimationCompleted(t){this.dispatchEventToOutput(jv.COMPLETE,t)}}const Xv=\\\\\\\"event\\\\\\\";const Yv=new class extends ua{constructor(){super(...arguments),this.active=ha.BOOLEAN(1),this.inputsCount=ha.INTEGER(5,{range:[1,10],rangeLocked:[!0,!1]})}};class $v extends Va{constructor(){super(...arguments),this.paramsConfig=Yv}static type(){return\\\\\\\"any\\\\\\\"}initializeNode(){this.io.connection_points.set_expected_input_types_function(this._expected_input_types.bind(this)),this.io.connection_points.set_input_name_function(this._input_name.bind(this)),this.io.connection_points.set_output_name_function((()=>Xv)),this.io.connection_points.set_expected_output_types_function((()=>[Qo.BASE]))}_expected_input_types(){const t=new Array(this.pv.inputsCount);return t.fill(Qo.BASE),t}_input_name(t){return`trigger${t}`}async processEvent(t){this.p.active.isDirty()&&await this.p.active.compute(),this.pv.active&&this.dispatchEventToOutput(Xv,t)}}const Jv=new class extends ua{constructor(){super(...arguments),this.blocking=ha.BOOLEAN(1)}};class Zv extends Va{constructor(){super(...arguments),this.paramsConfig=Jv}static type(){return\\\\\\\"block\\\\\\\"}initializeNode(){this.io.inputs.setNamedInputConnectionPoints([new ta(\\\\\\\"in\\\\\\\",Qo.BASE,this._process_incoming_event.bind(this))]),this.io.outputs.setNamedOutputConnectionPoints([new ta(Zv.OUTPUT,Qo.BASE)]),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.blocking],(()=>this.pv.blocking?\\\\\\\"blocking (X)\\\\\\\":\\\\\\\"pass-through (--\\\\x3e)\\\\\\\"))}))}))}trigger_output(t){this.dispatchEventToOutput(Zv.OUTPUT,t)}_process_incoming_event(t){this.pv.blocking||this.trigger_output(t)}}var Kv;Zv.OUTPUT=\\\\\\\"output\\\\\\\",function(t){t.OUT=\\\\\\\"out\\\\\\\"}(Kv||(Kv={}));const Qv=new class extends ua{constructor(){super(...arguments),this.dispatch=ha.BUTTON(null,{callback:t=>{ty.PARAM_CALLBACK_execute(t)}})}};class ty extends Va{constructor(){super(...arguments),this.paramsConfig=Qv}static type(){return\\\\\\\"button\\\\\\\"}initializeNode(){this.io.outputs.setNamedOutputConnectionPoints([new ta(Kv.OUT,Qo.BASE)])}processEvent(t){}process_event_execute(t){this.dispatchEventToOutput(Kv.OUT,t)}static PARAM_CALLBACK_execute(t){t.process_event_execute({})}}class ey extends Va{constructor(){super(...arguments),this._controls_by_viewer=new Map}async apply_controls(t,e){var n;null===(n=e.controlsController)||void 0===n||n.dispose_controls();const i=e.canvas();if(!i)return;const s=await this.createControlsInstance(t,i),r=this._controls_by_viewer.get(e);r&&r.dispose(),this._controls_by_viewer.set(e,s);const o=li.performance.performanceManager().now();return s.name=`${this.path()}:${t.name}:${o}:${this.controls_id()}`,await this.params.evalAll(),this.setupControls(s),s}controls_id(){return JSON.stringify(this.params.all.map((t=>t.valueSerialized())))}}var ny=n(27);const iy=new p.a(0,0,1),sy=new ny.a,ry=new hh.a,oy=new hh.a(-Math.sqrt(.5),0,0,Math.sqrt(.5)),ay={type:\\\\\\\"change\\\\\\\"};class ly extends J.a{constructor(t){super(),!1===window.isSecureContext&&console.error(\\\\\\\"THREE.DeviceOrientationControls: DeviceOrientationEvent is only available in secure contexts (https)\\\\\\\");const e=this,n=new hh.a;this.object=t,this.object.rotation.reorder(\\\\\\\"YXZ\\\\\\\"),this.enabled=!0,this.deviceOrientation={},this.screenOrientation=0,this.alphaOffset=0;const i=function(t){e.deviceOrientation=t},s=function(){e.screenOrientation=window.orientation||0};this.connect=function(){s(),void 0!==window.DeviceOrientationEvent&&\\\\\\\"function\\\\\\\"==typeof window.DeviceOrientationEvent.requestPermission?window.DeviceOrientationEvent.requestPermission().then((function(t){\\\\\\\"granted\\\\\\\"==t&&(window.addEventListener(\\\\\\\"orientationchange\\\\\\\",s),window.addEventListener(\\\\\\\"deviceorientation\\\\\\\",i))})).catch((function(t){console.error(\\\\\\\"THREE.DeviceOrientationControls: Unable to use DeviceOrientation API:\\\\\\\",t)})):(window.addEventListener(\\\\\\\"orientationchange\\\\\\\",s),window.addEventListener(\\\\\\\"deviceorientation\\\\\\\",i)),e.enabled=!0},this.disconnect=function(){window.removeEventListener(\\\\\\\"orientationchange\\\\\\\",s),window.removeEventListener(\\\\\\\"deviceorientation\\\\\\\",i),e.enabled=!1},this.update=function(){if(!1===e.enabled)return;const t=e.deviceOrientation;if(t){const i=t.alpha?On.e(t.alpha)+e.alphaOffset:0,s=t.beta?On.e(t.beta):0,r=t.gamma?On.e(t.gamma):0,o=e.screenOrientation?On.e(e.screenOrientation):0;!function(t,e,n,i,s){sy.set(n,e,-i,\\\\\\\"YXZ\\\\\\\"),t.setFromEuler(sy),t.multiply(oy),t.multiply(ry.setFromAxisAngle(iy,-s))}(e.object.quaternion,i,s,r,o),8*(1-n.dot(e.object.quaternion))>1e-6&&(n.copy(e.object.quaternion),e.dispatchEvent(ay))}},this.dispose=function(){e.disconnect()},this.connect()}}const cy=new class extends ua{constructor(){super(...arguments),this.enabled=ha.BOOLEAN(1)}};class hy extends ey{constructor(){super(...arguments),this.paramsConfig=cy,this._controls_by_element_id=new Map}static type(){return _s.DEVICE_ORIENTATION}endEventName(){return\\\\\\\"end\\\\\\\"}async createControlsInstance(t,e){const n=new ly(t);return this._controls_by_element_id.set(e.id,n),n}setupControls(t){t.enabled=this.pv.enabled}updateRequired(){return!0}disposeControlsForHtmlElementId(t){const e=this._controls_by_element_id.get(t);e&&(e.dispose(),this._controls_by_element_id.delete(t))}}class uy{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(){const t=1e-6;return this.phi=Math.max(t,Math.min(Math.PI-t,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),0===this.radius?(this.theta=0,this.phi=0):(this.theta=Math.atan2(t,n),this.phi=Math.acos(On.d(e/this.radius,-1,1))),this}clone(){return(new this.constructor).copy(this)}}const dy={type:\\\\\\\"change\\\\\\\"},py={type:\\\\\\\"start\\\\\\\"},_y={type:\\\\\\\"end\\\\\\\"};class my extends J.a{constructor(t,e){super(),void 0===e&&console.warn('THREE.OrbitControls: The second parameter \\\\\\\"domElement\\\\\\\" is now mandatory.'),e===document&&console.error('THREE.OrbitControls: \\\\\\\"document\\\\\\\" should not be used as the target \\\\\\\"domElement\\\\\\\". Please use \\\\\\\"renderer.domElement\\\\\\\" instead.'),this.object=t,this.domElement=e,this.domElement.style.touchAction=\\\\\\\"none\\\\\\\",this.enabled=!0,this.target=new p.a,this.minDistance=0,this.maxDistance=1/0,this.minZoom=0,this.maxZoom=1/0,this.minPolarAngle=0,this.maxPolarAngle=Math.PI,this.minAzimuthAngle=-1/0,this.maxAzimuthAngle=1/0,this.enableDamping=!1,this.dampingFactor=.05,this.enableZoom=!0,this.zoomSpeed=1,this.enableRotate=!0,this.rotateSpeed=1,this.enablePan=!0,this.panSpeed=1,this.screenSpacePanning=!0,this.keyPanSpeed=7,this.autoRotate=!1,this.autoRotateSpeed=2,this.enableKeys=!0,this.keyMode=\\\\\\\"pan\\\\\\\",this.keyRotateSpeedVertical=1,this.keyRotateSpeedHorizontal=1,this.keys={LEFT:\\\\\\\"ArrowLeft\\\\\\\",UP:\\\\\\\"ArrowUp\\\\\\\",RIGHT:\\\\\\\"ArrowRight\\\\\\\",BOTTOM:\\\\\\\"ArrowDown\\\\\\\"},this.mouseButtons={LEFT:w.hb.ROTATE,MIDDLE:w.hb.DOLLY,RIGHT:w.hb.PAN},this.touches={ONE:w.Tc.ROTATE,TWO:w.Tc.DOLLY_PAN},this.target0=this.target.clone(),this.position0=this.object.position.clone(),this.zoom0=this.object.zoom,this._domElementKeyEvents=null,this.getPolarAngle=function(){return o.phi},this.getAzimuthalAngle=function(){return o.theta},this.getDistance=function(){return this.object.position.distanceTo(this.target)},this.listenToKeyEvents=function(t){t.addEventListener(\\\\\\\"keydown\\\\\\\",q),this._domElementKeyEvents=t},this.saveState=function(){n.target0.copy(n.target),n.position0.copy(n.object.position),n.zoom0=n.object.zoom},this.reset=function(){n.target.copy(n.target0),n.object.position.copy(n.position0),n.object.zoom=n.zoom0,n.object.updateProjectionMatrix(),n.dispatchEvent(dy),n.update(),s=i.NONE},this.update=function(){const e=new p.a,u=(new hh.a).setFromUnitVectors(t.up,new p.a(0,1,0)),d=u.clone().invert(),_=new p.a,m=new hh.a,f=2*Math.PI;let g=!1;return function(){const t=n.object.position;if(e.copy(t).sub(n.target),e.applyQuaternion(u),o.setFromVector3(e),n.autoRotate&&s===i.NONE&&E(2*Math.PI/60/60*n.autoRotateSpeed),n.enableDamping){const t=a.theta*n.dampingFactor,e=a.phi*n.dampingFactor;t<r&&e<r?g||(n.dispatchEvent(_y),g=!0):g=!1,o.theta+=t,o.phi+=e}else o.theta+=a.theta,o.phi+=a.phi;let p=n.minAzimuthAngle,v=n.maxAzimuthAngle;return isFinite(p)&&isFinite(v)&&(p<-Math.PI?p+=f:p>Math.PI&&(p-=f),v<-Math.PI?v+=f:v>Math.PI&&(v-=f),o.theta=p<v?Math.max(p,Math.min(v,o.theta)):o.theta>(p+v)/2?Math.max(p,o.theta):Math.min(v,o.theta)),o.phi=Math.max(n.minPolarAngle,Math.min(n.maxPolarAngle,o.phi)),o.makeSafe(),o.radius*=l,o.radius=Math.max(n.minDistance,Math.min(n.maxDistance,o.radius)),!0===n.enableDamping?n.target.addScaledVector(c,n.dampingFactor):n.target.add(c),e.setFromSpherical(o),e.applyQuaternion(d),t.copy(n.target).add(e),n.object.lookAt(n.target),!0===n.enableDamping?(a.theta*=1-n.dampingFactor,a.phi*=1-n.dampingFactor,c.multiplyScalar(1-n.dampingFactor)):(a.set(0,0,0),c.set(0,0,0)),l=1,!!(h||_.distanceToSquared(n.object.position)>r||8*(1-m.dot(n.object.quaternion))>r)&&(n.dispatchEvent(dy),_.copy(n.object.position),m.copy(n.object.quaternion),h=!1,!0)}}(),this.dispose=function(){n.domElement.removeEventListener(\\\\\\\"contextmenu\\\\\\\",X,!1),n.domElement.removeEventListener(\\\\\\\"pointerdown\\\\\\\",G,!1),n.domElement.removeEventListener(\\\\\\\"pointercancel\\\\\\\",j),n.domElement.removeEventListener(\\\\\\\"wheel\\\\\\\",W,!1),n.domElement.ownerDocument.removeEventListener(\\\\\\\"pointermove\\\\\\\",V,!1),n.domElement.ownerDocument.removeEventListener(\\\\\\\"pointerup\\\\\\\",H,!1),null!==n._domElementKeyEvents&&n._domElementKeyEvents.removeEventListener(\\\\\\\"keydown\\\\\\\",q)};const n=this,i={NONE:-1,ROTATE:0,DOLLY:1,PAN:2,TOUCH_ROTATE:3,TOUCH_PAN:4,TOUCH_DOLLY_PAN:5,TOUCH_DOLLY_ROTATE:6};let s=i.NONE;const r=1e-6,o=new uy,a=new uy;let l=1;const c=new p.a;let h=!1;const u=new d.a,_=new d.a,m=new d.a,f=new d.a,g=new d.a,v=new d.a,y=new d.a,x=new d.a,b=new d.a,T=[],A={};function M(){return Math.pow(.95,n.zoomSpeed)}function E(t){a.theta-=t}function S(t){a.phi-=t}const C=function(){const t=new p.a;return function(e,n){t.setFromMatrixColumn(n,0),t.multiplyScalar(-e),c.add(t)}}(),N=function(){const t=new p.a;return function(e,i){!0===n.screenSpacePanning?t.setFromMatrixColumn(i,1):(t.setFromMatrixColumn(i,0),t.crossVectors(n.object.up,t)),t.multiplyScalar(e),c.add(t)}}(),L=function(){const t=new p.a;return function(e,i){const s=n.domElement;if(n.object.isPerspectiveCamera){const r=n.object.position;t.copy(r).sub(n.target);let o=t.length();o*=Math.tan(n.object.fov/2*Math.PI/180),C(2*e*o/s.clientHeight,n.object.matrix),N(2*i*o/s.clientHeight,n.object.matrix)}else n.object.isOrthographicCamera?(C(e*(n.object.right-n.object.left)/n.object.zoom/s.clientWidth,n.object.matrix),N(i*(n.object.top-n.object.bottom)/n.object.zoom/s.clientHeight,n.object.matrix)):(console.warn(\\\\\\\"WARNING: OrbitControls.js encountered an unknown camera type - pan disabled.\\\\\\\"),n.enablePan=!1)}}();function O(t){n.object.isPerspectiveCamera?l/=t:n.object.isOrthographicCamera?(n.object.zoom=Math.max(n.minZoom,Math.min(n.maxZoom,n.object.zoom*t)),n.object.updateProjectionMatrix(),h=!0):(console.warn(\\\\\\\"WARNING: OrbitControls.js encountered an unknown camera type - dolly/zoom disabled.\\\\\\\"),n.enableZoom=!1)}function P(t){n.object.isPerspectiveCamera?l*=t:n.object.isOrthographicCamera?(n.object.zoom=Math.max(n.minZoom,Math.min(n.maxZoom,n.object.zoom/t)),n.object.updateProjectionMatrix(),h=!0):(console.warn(\\\\\\\"WARNING: OrbitControls.js encountered an unknown camera type - dolly/zoom disabled.\\\\\\\"),n.enableZoom=!1)}function R(t){u.set(t.clientX,t.clientY)}function I(t){f.set(t.clientX,t.clientY)}function F(){if(1===T.length)u.set(T[0].pageX,T[0].pageY);else{const t=.5*(T[0].pageX+T[1].pageX),e=.5*(T[0].pageY+T[1].pageY);u.set(t,e)}}function D(){if(1===T.length)f.set(T[0].pageX,T[0].pageY);else{const t=.5*(T[0].pageX+T[1].pageX),e=.5*(T[0].pageY+T[1].pageY);f.set(t,e)}}function B(){const t=T[0].pageX-T[1].pageX,e=T[0].pageY-T[1].pageY,n=Math.sqrt(t*t+e*e);y.set(0,n)}function z(t){if(1==T.length)_.set(t.pageX,t.pageY);else{const e=J(t),n=.5*(t.pageX+e.x),i=.5*(t.pageY+e.y);_.set(n,i)}m.subVectors(_,u).multiplyScalar(n.rotateSpeed);const e=n.domElement;E(2*Math.PI*m.x/e.clientHeight),S(2*Math.PI*m.y/e.clientHeight),u.copy(_)}function k(t){if(1===T.length)g.set(t.pageX,t.pageY);else{const e=J(t),n=.5*(t.pageX+e.x),i=.5*(t.pageY+e.y);g.set(n,i)}v.subVectors(g,f).multiplyScalar(n.panSpeed),L(v.x,v.y),f.copy(g)}function U(t){const e=J(t),i=t.pageX-e.x,s=t.pageY-e.y,r=Math.sqrt(i*i+s*s);x.set(0,r),b.set(0,Math.pow(x.y/y.y,n.zoomSpeed)),O(b.y),y.copy(x)}function G(t){!1!==n.enabled&&(0===T.length&&(n.domElement.setPointerCapture(t.pointerId),n.domElement.ownerDocument.addEventListener(\\\\\\\"pointermove\\\\\\\",V),n.domElement.ownerDocument.addEventListener(\\\\\\\"pointerup\\\\\\\",H)),function(t){T.push(t)}(t),\\\\\\\"touch\\\\\\\"===t.pointerType?function(t){switch($(t),T.length){case 1:switch(n.touches.ONE){case w.Tc.ROTATE:if(!1===n.enableRotate)return;F(),s=i.TOUCH_ROTATE;break;case w.Tc.PAN:if(!1===n.enablePan)return;D(),s=i.TOUCH_PAN;break;default:s=i.NONE}break;case 2:switch(n.touches.TWO){case w.Tc.DOLLY_PAN:if(!1===n.enableZoom&&!1===n.enablePan)return;n.enableZoom&&B(),n.enablePan&&D(),s=i.TOUCH_DOLLY_PAN;break;case w.Tc.DOLLY_ROTATE:if(!1===n.enableZoom&&!1===n.enableRotate)return;n.enableZoom&&B(),n.enableRotate&&F(),s=i.TOUCH_DOLLY_ROTATE;break;default:s=i.NONE}break;default:s=i.NONE}s!==i.NONE&&n.dispatchEvent(py)}(t):function(t){let e;switch(t.button){case 0:e=n.mouseButtons.LEFT;break;case 1:e=n.mouseButtons.MIDDLE;break;case 2:e=n.mouseButtons.RIGHT;break;default:e=-1}switch(e){case w.hb.DOLLY:if(!1===n.enableZoom)return;!function(t){y.set(t.clientX,t.clientY)}(t),s=i.DOLLY;break;case w.hb.ROTATE:if(t.ctrlKey||t.metaKey||t.shiftKey){if(!1===n.enablePan)return;I(t),s=i.PAN}else{if(!1===n.enableRotate)return;R(t),s=i.ROTATE}break;case w.hb.PAN:if(t.ctrlKey||t.metaKey||t.shiftKey){if(!1===n.enableRotate)return;R(t),s=i.ROTATE}else{if(!1===n.enablePan)return;I(t),s=i.PAN}break;default:s=i.NONE}s!==i.NONE&&n.dispatchEvent(py)}(t))}function V(t){!1!==n.enabled&&(\\\\\\\"touch\\\\\\\"===t.pointerType?function(t){switch($(t),s){case i.TOUCH_ROTATE:if(!1===n.enableRotate)return;z(t),n.update();break;case i.TOUCH_PAN:if(!1===n.enablePan)return;k(t),n.update();break;case i.TOUCH_DOLLY_PAN:if(!1===n.enableZoom&&!1===n.enablePan)return;!function(t){n.enableZoom&&U(t),n.enablePan&&k(t)}(t),n.update();break;case i.TOUCH_DOLLY_ROTATE:if(!1===n.enableZoom&&!1===n.enableRotate)return;!function(t){n.enableZoom&&U(t),n.enableRotate&&z(t)}(t),n.update();break;default:s=i.NONE}}(t):function(t){if(!1===n.enabled)return;switch(s){case i.ROTATE:if(!1===n.enableRotate)return;!function(t){_.set(t.clientX,t.clientY),m.subVectors(_,u).multiplyScalar(n.rotateSpeed);var e=n.domElement;E(2*Math.PI*m.x/e.clientHeight),S(2*Math.PI*m.y/e.clientHeight),u.copy(_),n.update()}(t);break;case i.DOLLY:if(!1===n.enableZoom)return;!function(t){x.set(t.clientX,t.clientY),b.subVectors(x,y),b.y>0?O(M()):b.y<0&&P(M()),y.copy(x),n.update()}(t);break;case i.PAN:if(!1===n.enablePan)return;!function(t){g.set(t.clientX,t.clientY),v.subVectors(g,f).multiplyScalar(n.panSpeed),L(v.x,v.y),f.copy(g),n.update()}(t)}}(t))}function H(t){!1!==n.enabled&&(t.pointerType,n.dispatchEvent(_y),s=i.NONE,Y(t),0===T.length&&(n.domElement.releasePointerCapture(t.pointerId),n.domElement.ownerDocument.removeEventListener(\\\\\\\"pointermove\\\\\\\",V),n.domElement.ownerDocument.removeEventListener(\\\\\\\"pointerup\\\\\\\",H)))}function j(t){Y(t)}function W(t){!1===n.enabled||!1===n.enableZoom||s!==i.NONE&&s!==i.ROTATE||(t.preventDefault(),n.dispatchEvent(py),function(t){t.deltaY<0?P(M()):t.deltaY>0&&O(M()),n.update()}(t),n.dispatchEvent(_y))}function q(t){!1!==n.enabled&&!1!==n.enablePan&&function(t){let e=!1;if(\\\\\\\"pan\\\\\\\"==n.keyMode)switch(t.code){case n.keys.UP:L(0,n.keyPanSpeed),e=!0;break;case n.keys.BOTTOM:L(0,-n.keyPanSpeed),e=!0;break;case n.keys.LEFT:L(n.keyPanSpeed,0),e=!0;break;case n.keys.RIGHT:L(-n.keyPanSpeed,0),e=!0}else switch(t.code){case n.keys.UP:S(n.keyRotateSpeedVertical),e=!0;break;case n.keys.BOTTOM:S(-n.keyRotateSpeedVertical),e=!0;break;case n.keys.LEFT:E(n.keyRotateSpeedHorizontal),e=!0;break;case n.keys.RIGHT:E(-n.keyRotateSpeedHorizontal),e=!0}e&&(t.preventDefault(),n.update())}(t)}function X(t){!1!==n.enabled&&t.preventDefault()}function Y(t){delete A[t.pointerId];for(let e=0;e<T.length;e++)if(T[e].pointerId==t.pointerId)return void T.splice(e,1)}function $(t){let e=A[t.pointerId];void 0===e&&(e=new d.a,A[t.pointerId]=e),e.set(t.pageX,t.pageY)}function J(t){const e=t.pointerId===T[0].pointerId?T[1]:T[0];return A[e.pointerId]}n.domElement.addEventListener(\\\\\\\"contextmenu\\\\\\\",X),n.domElement.addEventListener(\\\\\\\"pointerdown\\\\\\\",G),n.domElement.addEventListener(\\\\\\\"pointercancel\\\\\\\",j),n.domElement.addEventListener(\\\\\\\"wheel\\\\\\\",W,{passive:!1}),this.update()}}class fy extends my{constructor(t,e){super(t,e),this.screenSpacePanning=!1,this.mouseButtons.LEFT=w.hb.PAN,this.mouseButtons.RIGHT=w.hb.ROTATE,this.touches.ONE=w.Tc.PAN,this.touches.TWO=w.Tc.DOLLY_ROTATE}}const gy=\\\\\\\"start\\\\\\\",vy=\\\\\\\"change\\\\\\\";var yy;!function(t){t.PAN=\\\\\\\"pan\\\\\\\",t.ROTATE=\\\\\\\"rotate\\\\\\\"}(yy||(yy={}));const xy=[yy.PAN,yy.ROTATE];const by=new class extends ua{constructor(){super(...arguments),this.enabled=ha.BOOLEAN(1),this.allowPan=ha.BOOLEAN(1),this.allowRotate=ha.BOOLEAN(1),this.allowZoom=ha.BOOLEAN(1),this.tdamping=ha.BOOLEAN(1),this.damping=ha.FLOAT(.1,{visibleIf:{tdamping:!0}}),this.screenSpacePanning=ha.BOOLEAN(1),this.rotateSpeed=ha.FLOAT(.5),this.minDistance=ha.FLOAT(1,{range:[0,100],rangeLocked:[!0,!1]}),this.maxDistance=ha.FLOAT(50,{range:[0,100],rangeLocked:[!0,!1]}),this.limitAzimuthAngle=ha.BOOLEAN(0),this.azimuthAngleRange=ha.VECTOR2([\\\\\\\"-2*$PI\\\\\\\",\\\\\\\"2*$PI\\\\\\\"],{visibleIf:{limitAzimuthAngle:1}}),this.polarAngleRange=ha.VECTOR2([0,\\\\\\\"$PI\\\\\\\"]),this.target=ha.VECTOR3([0,0,0],{cook:!1,computeOnDirty:!0,callback:t=>{wy.PARAM_CALLBACK_update_target(t)}}),this.enableKeys=ha.BOOLEAN(0),this.keysMode=ha.INTEGER(xy.indexOf(yy.PAN),{visibleIf:{enableKeys:1},menu:{entries:xy.map(((t,e)=>({name:t,value:e})))}}),this.keysPanSpeed=ha.FLOAT(7,{range:[0,10],rangeLocked:[!1,!1],visibleIf:{enableKeys:1,keysMode:xy.indexOf(yy.PAN)}}),this.keysRotateSpeedVertical=ha.FLOAT(1,{range:[0,1],rangeLocked:[!1,!1],visibleIf:{enableKeys:1,keysMode:xy.indexOf(yy.ROTATE)}}),this.keysRotateSpeedHorizontal=ha.FLOAT(1,{range:[0,1],rangeLocked:[!1,!1],visibleIf:{enableKeys:1,keysMode:xy.indexOf(yy.ROTATE)}})}};class wy extends ey{constructor(){super(...arguments),this.paramsConfig=by,this._controls_by_element_id=new Map,this._target_array=[0,0,0]}static type(){return _s.ORBIT}endEventName(){return\\\\\\\"end\\\\\\\"}initializeNode(){this.io.outputs.setNamedOutputConnectionPoints([new ta(gy,Qo.BASE),new ta(vy,Qo.BASE),new ta(\\\\\\\"end\\\\\\\",Qo.BASE)])}async createControlsInstance(t,e){const n=new my(t,e);return n.addEventListener(\\\\\\\"end\\\\\\\",(()=>{this._on_controls_end(n)})),this._controls_by_element_id.set(e.id,n),this._bind_listeners_to_controls_instance(n),n}_bind_listeners_to_controls_instance(t){t.addEventListener(\\\\\\\"start\\\\\\\",(()=>{this.dispatchEventToOutput(gy,{})})),t.addEventListener(\\\\\\\"change\\\\\\\",(()=>{this.dispatchEventToOutput(vy,{})})),t.addEventListener(\\\\\\\"end\\\\\\\",(()=>{this.dispatchEventToOutput(\\\\\\\"end\\\\\\\",{})}))}setupControls(t){t.enabled=this.pv.enabled,t.enablePan=this.pv.allowPan,t.enableRotate=this.pv.allowRotate,t.enableZoom=this.pv.allowZoom,t.enableDamping=this.pv.tdamping,t.dampingFactor=this.pv.damping,t.rotateSpeed=this.pv.rotateSpeed,t.screenSpacePanning=this.pv.screenSpacePanning,t.minDistance=this.pv.minDistance,t.maxDistance=this.pv.maxDistance,this._set_azimuth_angle(t),t.minPolarAngle=this.pv.polarAngleRange.x,t.maxPolarAngle=this.pv.polarAngleRange.y,t.target.copy(this.pv.target),t.enabled&&t.update(),t.enableKeys=this.pv.enableKeys,t.enableKeys&&(t.keyMode=xy[this.pv.keysMode],t.keyRotateSpeedVertical=this.pv.keysRotateSpeedVertical,t.keyRotateSpeedHorizontal=this.pv.keysRotateSpeedHorizontal,t.keyPanSpeed=this.pv.keysPanSpeed)}_set_azimuth_angle(t){this.pv.limitAzimuthAngle?(t.minAzimuthAngle=this.pv.azimuthAngleRange.x,t.maxAzimuthAngle=this.pv.azimuthAngleRange.y):(t.minAzimuthAngle=1/0,t.maxAzimuthAngle=1/0)}updateRequired(){return this.pv.tdamping}_on_controls_end(t){this.pv.allowPan&&(t.target.toArray(this._target_array),this.p.target.set(this._target_array))}static PARAM_CALLBACK_update_target(t){t._update_target()}_update_target(){const t=this.pv.target;this._controls_by_element_id.forEach(((e,n)=>{const i=e.target;i.equals(t)||(i.copy(t),e.update())}))}disposeControlsForHtmlElementId(t){this._controls_by_element_id.get(t)&&this._controls_by_element_id.delete(t)}}class Ty extends wy{static type(){return _s.MAP}async create_controls_instance(t,e){const n=new fy(t,e);return this._bind_listeners_to_controls_instance(n),n}}const Ay=new class extends ua{constructor(){super(...arguments),this.delay=ha.INTEGER(1e3,{range:[0,1e3],rangeLocked:[!0,!1]})}};class My extends Va{constructor(){super(...arguments),this.paramsConfig=Ay}static type(){return\\\\\\\"delay\\\\\\\"}initializeNode(){this.io.inputs.setNamedInputConnectionPoints([new ta(\\\\\\\"in\\\\\\\",Qo.BASE,this._process_input.bind(this))]),this.io.outputs.setNamedOutputConnectionPoints([new ta(\\\\\\\"out\\\\\\\",Qo.BASE)])}_process_input(t){setTimeout((()=>{this.dispatchEventToOutput(\\\\\\\"out\\\\\\\",t)}),this.pv.delay)}}const Ey={type:\\\\\\\"change\\\\\\\"},Sy={type:\\\\\\\"lock\\\\\\\"},Cy={type:\\\\\\\"unlock\\\\\\\"},Ny=Math.PI/2,Ly=new p.a,Oy=new uy;class Py extends J.a{constructor(t,e,n){super(),this.camera=t,this.domElement=e,this.player=n,this.isLocked=!1,this.minPolarAngle=0,this.maxPolarAngle=Math.PI,this.rotateSpeed=1,this.euler=new ny.a(0,0,0,\\\\\\\"YXZ\\\\\\\"),this.boundMethods={onMouseMove:this.onMouseMove.bind(this),onPointerlockChange:this.onPointerlockChange.bind(this),onPointerlockError:this.onPointerlockError.bind(this)},this._azimuthalAngle=0,this.connect()}onMouseMove(t){if(!1!==this.isLocked){var e=t.movementX||t.mozMovementX||t.webkitMovementX||0,n=t.movementY||t.mozMovementY||t.webkitMovementY||0;this.euler.setFromQuaternion(this.camera.quaternion),this.euler.y-=.002*e*this.rotateSpeed,this.euler.x-=.002*n*this.rotateSpeed,this.euler.x=Math.max(Ny-this.maxPolarAngle,Math.min(Ny-this.minPolarAngle,this.euler.x)),this.camera.quaternion.setFromEuler(this.euler),this._computeAzimuthalAngle(),this.dispatchEvent(Ey)}}_computeAzimuthalAngle(){this.camera.updateMatrixWorld(),Ly.set(0,0,1),this.camera.localToWorld(Ly),Ly.sub(this.camera.position),Oy.setFromVector3(Ly),this._azimuthalAngle=Oy.theta}onPointerlockChange(){this.domElement.ownerDocument.pointerLockElement===this.domElement?(this.dispatchEvent(Sy),this.isLocked=!0):(this.dispatchEvent(Cy),this.isLocked=!1)}onPointerlockError(){console.error(\\\\\\\"THREE.PointerLockControls: Unable to use Pointer Lock API (Note that you need to wait for 2 seconds to lock the pointer after having just unlocked it)\\\\\\\")}connect(){this.domElement.ownerDocument.addEventListener(\\\\\\\"mousemove\\\\\\\",this.boundMethods.onMouseMove),this.domElement.ownerDocument.addEventListener(\\\\\\\"pointerlockchange\\\\\\\",this.boundMethods.onPointerlockChange),this.domElement.ownerDocument.addEventListener(\\\\\\\"pointerlockerror\\\\\\\",this.boundMethods.onPointerlockError)}disconnect(){this.domElement.ownerDocument.removeEventListener(\\\\\\\"mousemove\\\\\\\",this.boundMethods.onMouseMove),this.domElement.ownerDocument.removeEventListener(\\\\\\\"pointerlockchange\\\\\\\",this.boundMethods.onPointerlockChange),this.domElement.ownerDocument.removeEventListener(\\\\\\\"pointerlockerror\\\\\\\",this.boundMethods.onPointerlockError)}dispose(){this.disconnect()}getObject(){return this.camera}lock(){this.domElement.requestPointerLock()}unlock(){this.domElement.ownerDocument.exitPointerLock()}update(t){this.player&&(this.player.setAzimuthalAngle(this._azimuthalAngle),this.player.update(t))}}var Ry=n(16);const Iy=new p.a,Fy=new p.a;class Dy{constructor(t=new p.a,e=new p.a){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){Iy.subVectors(t,this.start),Fy.subVectors(this.end,this.start);const n=Fy.dot(Fy);let i=Fy.dot(Iy)/n;return e&&(i=On.d(i,0,1)),i}closestPointToPoint(t,e,n){const 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)}}const By=new p.a;function zy(t,e,n,i,s,r){const o=2*Math.PI*s/4,a=Math.max(r-2*s,0),l=Math.PI/4;By.copy(e),By[i]=0,By.normalize();const c=.5*o/(o+a),h=1-By.angleTo(t)/l;if(1===Math.sign(By[n]))return h*c;return a/(o+a)+c+c*(1-h)}class ky extends N{constructor(t=1,e=1,n=1,i=2,s=.1){if(i=2*i+1,s=Math.min(t/2,e/2,n/2,s),super(1,1,1,i,i,i),1===i)return;const r=this.toNonIndexed();this.index=null,this.attributes.position=r.attributes.position,this.attributes.normal=r.attributes.normal,this.attributes.uv=r.attributes.uv;const o=new p.a,a=new p.a,l=new p.a(t,e,n).divideScalar(2).subScalar(s),c=this.attributes.position.array,h=this.attributes.normal.array,u=this.attributes.uv.array,d=c.length/6,_=new p.a,m=.5/i;for(let i=0,r=0;i<c.length;i+=3,r+=2){o.fromArray(c,i),a.copy(o),a.x-=Math.sign(a.x)*m,a.y-=Math.sign(a.y)*m,a.z-=Math.sign(a.z)*m,a.normalize(),c[i+0]=l.x*Math.sign(o.x)+a.x*s,c[i+1]=l.y*Math.sign(o.y)+a.y*s,c[i+2]=l.z*Math.sign(o.z)+a.z*s,h[i+0]=a.x,h[i+1]=a.y,h[i+2]=a.z;switch(Math.floor(i/d)){case 0:_.set(1,0,0),u[r+0]=zy(_,a,\\\\\\\"z\\\\\\\",\\\\\\\"y\\\\\\\",s,n),u[r+1]=1-zy(_,a,\\\\\\\"y\\\\\\\",\\\\\\\"z\\\\\\\",s,e);break;case 1:_.set(-1,0,0),u[r+0]=1-zy(_,a,\\\\\\\"z\\\\\\\",\\\\\\\"y\\\\\\\",s,n),u[r+1]=1-zy(_,a,\\\\\\\"y\\\\\\\",\\\\\\\"z\\\\\\\",s,e);break;case 2:_.set(0,1,0),u[r+0]=1-zy(_,a,\\\\\\\"x\\\\\\\",\\\\\\\"z\\\\\\\",s,t),u[r+1]=zy(_,a,\\\\\\\"z\\\\\\\",\\\\\\\"x\\\\\\\",s,n);break;case 3:_.set(0,-1,0),u[r+0]=1-zy(_,a,\\\\\\\"x\\\\\\\",\\\\\\\"z\\\\\\\",s,t),u[r+1]=1-zy(_,a,\\\\\\\"z\\\\\\\",\\\\\\\"x\\\\\\\",s,n);break;case 4:_.set(0,0,1),u[r+0]=1-zy(_,a,\\\\\\\"x\\\\\\\",\\\\\\\"y\\\\\\\",s,t),u[r+1]=1-zy(_,a,\\\\\\\"y\\\\\\\",\\\\\\\"x\\\\\\\",s,e);break;case 5:_.set(0,0,-1),u[r+0]=zy(_,a,\\\\\\\"x\\\\\\\",\\\\\\\"y\\\\\\\",s,t),u[r+1]=1-zy(_,a,\\\\\\\"y\\\\\\\",\\\\\\\"x\\\\\\\",s,e)}}}}function Uy(t){const e=t.radius,n=t.height,i=2*e,s=new ky(i,n+i,i,10,e);return s.translate(0,-n/2,0),s}const Gy=new p.a(0,0,0),Vy=new p.a(0,1,0),Hy=new p.a,jy=new p.a,Wy=new Ry.a,qy=new A.a,Xy=new Dy,Yy=new p.a;class $y{constructor(t){this._pressed={forward:!1,backward:!1,left:!1,right:!1},this._onGround=!1,this._velocity=new p.a,this.capsuleInfo={radius:.5,segment:new Dy(new p.a,new p.a(0,-1,0))},this.startPosition=new p.a(0,5,0),this.startRotation=new p.a(0,0,0),this.jumpAllowed=!0,this.jumpStrength=10,this.runAllowed=!0,this.runSpeedMult=2,this._running=!1,this.speed=10,this.physicsSteps=5,this.gravity=new p.a(0,-30,0),this._azimuthalAngle=0,this._resetRequiredCallback=()=>this.object.position.y<-25,this.object=t.object,this.object.matrixAutoUpdate=!0,this.collider=t.collider,t.meshName&&(this._mesh=new B.a,this._mesh.geometry=Uy({radius:this.capsuleInfo.radius,height:1}),this._mesh.name=t.meshName,this._mesh.receiveShadow=!0,this._mesh.castShadow=!0)}setCollider(t){this.collider=t}setCapsule(t){this.capsuleInfo.radius=t.radius,this.capsuleInfo.segment.end.y=-t.height,this._mesh&&(this._mesh.geometry=Uy(t))}setUsePlayerMesh(t){t?(this._mesh=this._mesh||this._createMesh(),this.object.add(this._mesh)):this._mesh&&this.object.remove(this._mesh)}_createMesh(){const t=new B.a;return t.geometry=Uy({radius:this.capsuleInfo.radius,height:1}),t.name=this._meshName||\\\\\\\"defaultPlayerMeshName\\\\\\\",t.receiveShadow=!0,t.castShadow=!0,t}setMaterial(t){this._mesh&&(this._mesh.material=t)}reset(){this.stop(),this.object.position.copy(this.startPosition),Yy.copy(this.startRotation).multiplyScalar(On.a),this.object.rotation.setFromVector3(Yy)}stop(){this._pressed.forward=!1,this._pressed.backward=!1,this._pressed.left=!1,this._pressed.right=!1,this._running=!1}setResetRequiredCallback(t){this._resetRequiredCallback=t}setAzimuthalAngle(t){this._azimuthalAngle=t}update(t){const e=Math.min(t,.1);for(let t=0;t<this.physicsSteps;t++)this._updateStep(e/this.physicsSteps)}_updateStep(t){this._onGround||(Gy.copy(this.gravity).multiplyScalar(t),this._velocity.add(Gy)),this.object.position.addScaledVector(this._velocity,t);const e=this._azimuthalAngle,n=this.speed*t*(this._running?this.runSpeedMult:1);jy.set(0,0,0),this._pressed.forward&&(Hy.set(0,0,-1).applyAxisAngle(Vy,e),jy.add(Hy)),this._pressed.backward&&(Hy.set(0,0,1).applyAxisAngle(Vy,e),jy.add(Hy)),this._pressed.left&&(Hy.set(-1,0,0).applyAxisAngle(Vy,e),jy.add(Hy)),this._pressed.right&&(Hy.set(1,0,0).applyAxisAngle(Vy,e),jy.add(Hy)),jy.normalize().multiplyScalar(n),this.object.position.add(jy),this.object.updateMatrixWorld();const i=this.capsuleInfo;Wy.makeEmpty(),qy.copy(this.collider.matrixWorld).invert(),Xy.copy(i.segment),Xy.start.applyMatrix4(this.object.matrixWorld).applyMatrix4(qy),Xy.end.applyMatrix4(this.object.matrixWorld).applyMatrix4(qy),Wy.expandByPoint(Xy.start),Wy.expandByPoint(Xy.end),Wy.min.addScalar(-i.radius),Wy.max.addScalar(i.radius),this.collider.geometry.boundsTree.shapecast({intersectsBounds:t=>t.intersectsBox(Wy),intersectsTriangle:t=>{const e=Hy,n=jy,s=t.closestPointToSegment(Xy,e,n);if(s<i.radius){const t=i.radius-s,r=n.sub(e).normalize();Xy.start.addScaledVector(r,t),Xy.end.addScaledVector(r,t)}}});const s=Hy;s.copy(Xy.start).applyMatrix4(this.collider.matrixWorld);const r=jy;r.subVectors(s,this.object.position),this._onGround=r.y>Math.abs(t*this._velocity.y*.25);const o=Math.max(0,r.length()-1e-5);r.normalize().multiplyScalar(o),this.object.position.add(r),this._onGround?this._velocity.set(0,0,0):(r.normalize(),this._velocity.addScaledVector(r,-r.dot(this._velocity))),this._resetRequiredCallback()&&this.reset()}setForward(t){this._pressed.forward=t}setBackward(t){this._pressed.backward=t}setLeft(t){this._pressed.left=t}setRight(t){this._pressed.right=t}jump(){this._onGround&&this.jumpAllowed&&(this._velocity.y=this.jumpStrength)}setRun(t){t?this._onGround&&this.runAllowed&&(this._running=!0):this._running=!1}running(){return this._running}}function Jy(t){t.preventDefault()}class Zy{constructor(t){this.player=t,this._bounds={keydown:this._onKeyDown.bind(this),keyup:this._onKeyUp.bind(this)}}_onKeyDown(t){if(!t.ctrlKey)switch(t.code){case\\\\\\\"ArrowUp\\\\\\\":case\\\\\\\"KeyW\\\\\\\":this.player.setForward(!0),Jy(t);break;case\\\\\\\"ArrowDown\\\\\\\":case\\\\\\\"KeyS\\\\\\\":this.player.setBackward(!0),Jy(t);break;case\\\\\\\"ArrowRight\\\\\\\":case\\\\\\\"KeyD\\\\\\\":this.player.setRight(!0),Jy(t);break;case\\\\\\\"ArrowLeft\\\\\\\":case\\\\\\\"KeyA\\\\\\\":this.player.setLeft(!0),Jy(t);break;case\\\\\\\"Space\\\\\\\":this.player.jump(),Jy(t);break;case\\\\\\\"ShiftLeft\\\\\\\":case\\\\\\\"ShiftRight\\\\\\\":this.player.setRun(!0),Jy(t)}}_onKeyUp(t){switch(t.code){case\\\\\\\"ArrowUp\\\\\\\":case\\\\\\\"KeyW\\\\\\\":this.player.setForward(!1);break;case\\\\\\\"ArrowDown\\\\\\\":case\\\\\\\"KeyS\\\\\\\":this.player.setBackward(!1);break;case\\\\\\\"ArrowRight\\\\\\\":case\\\\\\\"KeyD\\\\\\\":this.player.setRight(!1);break;case\\\\\\\"ArrowLeft\\\\\\\":case\\\\\\\"KeyA\\\\\\\":this.player.setLeft(!1);break;case\\\\\\\"ShiftLeft\\\\\\\":case\\\\\\\"ShiftRight\\\\\\\":this.player.setRun(!1),Jy(t)}}addEvents(){document.addEventListener(\\\\\\\"keydown\\\\\\\",this._bounds.keydown),document.addEventListener(\\\\\\\"keyup\\\\\\\",this._bounds.keyup)}removeEvents(){document.removeEventListener(\\\\\\\"keydown\\\\\\\",this._bounds.keydown),document.removeEventListener(\\\\\\\"keyup\\\\\\\",this._bounds.keyup)}}Ky=ua;var Ky;class Qy extends Va{static PARAM_CALLBACK_updateCollider(t){}}class tx{constructor(t){this.node=t}_colliderNodeGraphNode(){return this.__colliderNodeGraphNode=this.__colliderNodeGraphNode||new Mi(this.node.scene(),\\\\\\\"colliderGraphNode\\\\\\\")}async getCollider(){var t;const e=this.node.pv.colliderObject.nodeWithContext(ts.SOP);if(!e)return void this.node.states.error.set(\\\\\\\"collider node not found\\\\\\\");(null===(t=this._colliderNode)||void 0===t?void 0:t.graphNodeId())!=e.graphNodeId()&&(this._colliderNode&&this._colliderNodeGraphNode().removeGraphInput(this._colliderNode),this._colliderNodeGraphNode().addGraphInput(e),this._colliderNodeGraphNode().addPostDirtyHook(\\\\\\\"onColliderDirty\\\\\\\",(()=>{this.updateCollider()})),this._colliderNode=e);const n=(await e.compute()).coreContent();if(!n)return void this.node.states.error.set(\\\\\\\"invalid collider node\\\\\\\");return n.objects()[0]}async updateCollider(){var t;const e=await this.getCollider();e?null===(t=this.node.player())||void 0===t||t.setCollider(e):this.node.states.error.set(\\\\\\\"invalid collider\\\\\\\")}}const ex=\\\\\\\"lock\\\\\\\",nx=\\\\\\\"change\\\\\\\",ix=\\\\\\\"unlock\\\\\\\";function sx(){return{cook:!1,callback:t=>{ox.PARAM_CALLBACK_updatePlayerParams(t)}}}const rx=new class extends ua{constructor(){super(...arguments),this.main=ha.FOLDER(),this.colliderObject=ha.NODE_PATH(\\\\\\\"\\\\\\\",{nodeSelection:{context:ts.SOP},dependentOnFoundNode:!1,callback:t=>{ox.PARAM_CALLBACK_updateCollider(t)}}),this.lock=ha.BUTTON(null,{callback:t=>{ox.PARAM_CALLBACK_lockControls(t)}}),this.unlock=ha.BUTTON(null,{callback:t=>{ox.PARAM_CALLBACK_unlockControls(t)}}),this.capsuleRadius=ha.FLOAT(.5,{range:[0,1],rangeLocked:[!0,!1],...sx()}),this.capsuleHeight=ha.FLOAT(1,{range:[0,2],rangeLocked:[!0,!1],...sx()}),this.physics=ha.FOLDER(),this.physicsSteps=ha.INTEGER(5,{range:[1,10],rangeLocked:[!0,!1],...sx()}),this.gravity=ha.VECTOR3([0,-30,0],{...sx()}),this.translateSpeed=ha.FLOAT(1,{range:[0,10],rangeLocked:[!0,!1],...sx()}),this.rotateSpeed=ha.FLOAT(1,{range:[0,10],rangeLocked:[!0,!1]}),this.jumpAllowed=ha.BOOLEAN(!0,{...sx()}),this.jumpStrength=ha.FLOAT(10,{range:[0,100],rangeLocked:[!0,!1],...sx()}),this.runAllowed=ha.BOOLEAN(!0,{...sx()}),this.runSpeedMult=ha.FLOAT(2,{range:[0,10],rangeLocked:[!0,!1],...sx()}),this.updateCollider=ha.BUTTON(null,{callback:t=>{ox.PARAM_CALLBACK_updateCollider(t)}}),this.init=ha.FOLDER(),this.startPosition=ha.VECTOR3([0,2,0],{...sx()}),this.startRotation=ha.VECTOR3([0,0,0],{...sx()}),this.reset=ha.BUTTON(null,{callback:t=>{ox.PARAM_CALLBACK_resetPlayer(t)}}),this.minPolarAngle=ha.FLOAT(0,{range:[0,Math.PI],rangeLocked:[!0,!0]}),this.maxPolarAngle=ha.FLOAT(\\\\\\\"$PI\\\\\\\",{range:[0,Math.PI],rangeLocked:[!0,!0]})}};class ox extends ey{constructor(){super(...arguments),this.paramsConfig=rx,this._controls_by_element_id=new Map}static type(){return _s.FIRST_PERSON}endEventName(){return\\\\\\\"unlock\\\\\\\"}collisionController(){return this._collisionController=this._collisionController||new tx(this)}initializeNode(){this.io.inputs.setNamedInputConnectionPoints([new ta(ex,Qo.BASE,this.lockControls.bind(this)),new ta(ox.INPUT_UPDATE_COLLIDER,Qo.BASE,this._updateCollider.bind(this))]),this.io.outputs.setNamedOutputConnectionPoints([new ta(ex,Qo.BASE),new ta(nx,Qo.BASE),new ta(ix,Qo.BASE)])}async createControlsInstance(t,e){await this._initPlayer(t);const n=new Py(t,e,this._player);return this._controls_by_element_id.set(e.id,n),this._bind_listeners_to_controls_instance(n),n}async _initPlayer(t){this._player=this._player||await this._createPlayer(t),this._player&&(this._updatePlayerParams(),this._player.reset())}player(){return this._player}async _updatePlayerParams(){this._player&&(this._player.startPosition.copy(this.pv.startPosition),this._player.startRotation.copy(this.pv.startRotation),this._player.physicsSteps=this.pv.physicsSteps,this._player.jumpAllowed=this.pv.jumpAllowed,this._player.jumpStrength=this.pv.jumpStrength,this._player.runAllowed=this.pv.runAllowed,this._player.runSpeedMult=this.pv.runSpeedMult,this._player.gravity.copy(this.pv.gravity),this._player.speed=this.pv.translateSpeed,this._player.setCapsule({radius:this.pv.capsuleRadius,height:this.pv.capsuleHeight}))}async _createPlayer(t){const e=t,n=await this.collisionController().getCollider();if(!n)return void this.states.error.set(\\\\\\\"invalid collider\\\\\\\");return new $y({object:e,collider:n})}_resetPlayer(){var t;null===(t=this._player)||void 0===t||t.reset()}async _updateCollider(){await this.collisionController().updateCollider()}_bind_listeners_to_controls_instance(t){t.addEventListener(ex,(()=>{this.dispatchEventToOutput(ex,{})})),t.addEventListener(nx,(()=>{this.dispatchEventToOutput(nx,{})})),t.addEventListener(ix,(()=>{this.dispatchEventToOutput(ix,{})}))}updateRequired(){return!0}setupControls(t){t.minPolarAngle=this.pv.minPolarAngle,t.maxPolarAngle=this.pv.maxPolarAngle,t.rotateSpeed=this.pv.rotateSpeed}disposeControlsForHtmlElementId(t){const e=this._controls_by_element_id.get(t);e&&(e.dispose(),this._controls_by_element_id.delete(t))}unlockControls(){const t=this._firstControls();t&&t.unlock()}lockControls(){const t=this._firstControls();if(t){if(this._player){this._corePlayerKeyEvents=this._corePlayerKeyEvents||new Zy(this._player),this._corePlayerKeyEvents.addEvents();const e=()=>{var n,i;t&&t.domElement.ownerDocument.pointerLockElement!=t.domElement&&(t.domElement.ownerDocument.removeEventListener(\\\\\\\"pointerlockchange\\\\\\\",e),null===(n=this._corePlayerKeyEvents)||void 0===n||n.removeEvents(),null===(i=this._player)||void 0===i||i.stop())};t.domElement.ownerDocument.addEventListener(\\\\\\\"pointerlockchange\\\\\\\",e)}t.lock()}}_firstControls(){let t;return this._controls_by_element_id.forEach(((e,n)=>{t=t||e})),t}static PARAM_CALLBACK_lockControls(t){t.lockControls()}static PARAM_CALLBACK_unlockControls(t){t.unlockControls()}static PARAM_CALLBACK_updateCollider(t){t._updateCollider()}static PARAM_CALLBACK_updatePlayerParams(t){t._updatePlayerParams()}static PARAM_CALLBACK_resetPlayer(t){t._resetPlayer()}}var ax,lx;ox.INPUT_UPDATE_COLLIDER=\\\\\\\"updateCollider\\\\\\\",function(t){t.TRIGGER=\\\\\\\"trigger\\\\\\\",t.RESET=\\\\\\\"reset\\\\\\\"}(ax||(ax={})),function(t){t.OUT=\\\\\\\"out\\\\\\\",t.LAST=\\\\\\\"last\\\\\\\"}(lx||(lx={}));const cx=new class extends ua{constructor(){super(...arguments),this.maxCount=ha.INTEGER(5,{range:[0,10],rangeLocked:[!0,!1]}),this.reset=ha.BUTTON(null,{callback:t=>{hx.PARAM_CALLBACK_reset(t)}})}};class hx extends Va{constructor(){super(...arguments),this.paramsConfig=cx,this._process_count=0,this._last_dispatched=!1}static type(){return\\\\\\\"limit\\\\\\\"}initializeNode(){this.io.inputs.setNamedInputConnectionPoints([new ta(ax.TRIGGER,Qo.BASE,this.processEventTrigger.bind(this)),new ta(ax.RESET,Qo.BASE,this.process_event_reset.bind(this))]),this.io.outputs.setNamedOutputConnectionPoints([new ta(lx.OUT,Qo.BASE),new ta(lx.LAST,Qo.BASE)])}processEvent(t){}processEventTrigger(t){this._process_count<this.pv.maxCount?(this._process_count+=1,this.dispatchEventToOutput(lx.OUT,t)):this._last_dispatched||(this._last_dispatched=!0,this.dispatchEventToOutput(lx.LAST,t))}process_event_reset(t){this._process_count=0,this._last_dispatched=!1}static PARAM_CALLBACK_reset(t){t.process_event_reset({})}}const ux=new class extends ua{constructor(){super(...arguments),this.alert=ha.BOOLEAN(0),this.console=ha.BOOLEAN(1)}};class dx extends Va{constructor(){super(...arguments),this.paramsConfig=ux}static type(){return\\\\\\\"message\\\\\\\"}initializeNode(){this.io.inputs.setNamedInputConnectionPoints([new ta(\\\\\\\"trigger\\\\\\\",Qo.BASE,this._process_trigger_event.bind(this))]),this.io.outputs.setNamedOutputConnectionPoints([new ta(dx.OUTPUT,Qo.BASE)])}trigger_output(t){this.dispatchEventToOutput(dx.OUTPUT,t)}_process_trigger_event(t){this.pv.alert&&alert(t),this.pv.console&&console.log(this.path(),Date.now(),t),this.trigger_output(t)}}dx.OUTPUT=\\\\\\\"output\\\\\\\";const px=100,_x=301,mx=302,fx=303,gx=304,vx=306,yx=307,xx=1e3,bx=1001,wx=1002,Tx=1003,Ax=1004,Mx=1005,Ex=1006,Sx=1007,Cx=1008,Nx=1009,Lx=1012,Ox=1014,Px=1015,Rx=1016,Ix=1020,Fx=1022,Dx=1023,Bx=1026,zx=1027,kx=2300,Ux=2301,Gx=2302,Vx=2400,Hx=2401,jx=2402,Wx=2500,qx=3e3,Xx=3001,Yx=3007,$x=3002,Jx=7680,Zx=35044,Kx=35048,Qx=\\\\\\\"300 es\\\\\\\";class tb{addEventListener(t,e){void 0===this._listeners&&(this._listeners={});const n=this._listeners;void 0===n[t]&&(n[t]=[]),-1===n[t].indexOf(e)&&n[t].push(e)}hasEventListener(t,e){if(void 0===this._listeners)return!1;const n=this._listeners;return void 0!==n[t]&&-1!==n[t].indexOf(e)}removeEventListener(t,e){if(void 0===this._listeners)return;const n=this._listeners[t];if(void 0!==n){const t=n.indexOf(e);-1!==t&&n.splice(t,1)}}dispatchEvent(t){if(void 0===this._listeners)return;const e=this._listeners[t.type];if(void 0!==e){t.target=this;const n=e.slice(0);for(let e=0,i=n.length;e<i;e++)n[e].call(this,t);t.target=null}}}let eb=1234567;const nb=Math.PI/180,ib=180/Math.PI,sb=[];for(let t=0;t<256;t++)sb[t]=(t<16?\\\\\\\"0\\\\\\\":\\\\\\\"\\\\\\\")+t.toString(16);const rb=\\\\\\\"undefined\\\\\\\"!=typeof crypto&&\\\\\\\"randomUUID\\\\\\\"in crypto;function ob(){if(rb)return crypto.randomUUID().toUpperCase();const t=4294967295*Math.random()|0,e=4294967295*Math.random()|0,n=4294967295*Math.random()|0,i=4294967295*Math.random()|0;return(sb[255&t]+sb[t>>8&255]+sb[t>>16&255]+sb[t>>24&255]+\\\\\\\"-\\\\\\\"+sb[255&e]+sb[e>>8&255]+\\\\\\\"-\\\\\\\"+sb[e>>16&15|64]+sb[e>>24&255]+\\\\\\\"-\\\\\\\"+sb[63&n|128]+sb[n>>8&255]+\\\\\\\"-\\\\\\\"+sb[n>>16&255]+sb[n>>24&255]+sb[255&i]+sb[i>>8&255]+sb[i>>16&255]+sb[i>>24&255]).toUpperCase()}function ab(t,e,n){return Math.max(e,Math.min(n,t))}function lb(t,e){return(t%e+e)%e}function cb(t,e,n){return(1-n)*t+n*e}function hb(t){return 0==(t&t-1)&&0!==t}function ub(t){return Math.pow(2,Math.ceil(Math.log(t)/Math.LN2))}function db(t){return Math.pow(2,Math.floor(Math.log(t)/Math.LN2))}var pb=Object.freeze({__proto__:null,DEG2RAD:nb,RAD2DEG:ib,generateUUID:ob,clamp:ab,euclideanModulo:lb,mapLinear:function(t,e,n,i,s){return i+(t-e)*(s-i)/(n-e)},inverseLerp:function(t,e,n){return t!==e?(n-t)/(e-t):0},lerp:cb,damp:function(t,e,n,i){return cb(t,e,1-Math.exp(-n*i))},pingpong:function(t,e=1){return e-Math.abs(lb(t,2*e)-e)},smoothstep:function(t,e,n){return t<=e?0:t>=n?1:(t=(t-e)/(n-e))*t*(3-2*t)},smootherstep:function(t,e,n){return t<=e?0:t>=n?1:(t=(t-e)/(n-e))*t*t*(t*(6*t-15)+10)},randInt:function(t,e){return t+Math.floor(Math.random()*(e-t+1))},randFloat:function(t,e){return t+Math.random()*(e-t)},randFloatSpread:function(t){return t*(.5-Math.random())},seededRandom:function(t){return void 0!==t&&(eb=t%2147483647),eb=16807*eb%2147483647,(eb-1)/2147483646},degToRad:function(t){return t*nb},radToDeg:function(t){return t*ib},isPowerOfTwo:hb,ceilPowerOfTwo:ub,floorPowerOfTwo:db,setQuaternionFromProperEuler:function(t,e,n,i,s){const r=Math.cos,o=Math.sin,a=r(n/2),l=o(n/2),c=r((e+i)/2),h=o((e+i)/2),u=r((e-i)/2),d=o((e-i)/2),p=r((i-e)/2),_=o((i-e)/2);switch(s){case\\\\\\\"XYX\\\\\\\":t.set(a*h,l*u,l*d,a*c);break;case\\\\\\\"YZY\\\\\\\":t.set(l*d,a*h,l*u,a*c);break;case\\\\\\\"ZXZ\\\\\\\":t.set(l*u,l*d,a*h,a*c);break;case\\\\\\\"XZX\\\\\\\":t.set(a*h,l*_,l*p,a*c);break;case\\\\\\\"YXY\\\\\\\":t.set(l*p,a*h,l*_,a*c);break;case\\\\\\\"ZYZ\\\\\\\":t.set(l*_,l*p,a*h,a*c);break;default:console.warn(\\\\\\\"THREE.MathUtils: .setQuaternionFromProperEuler() encountered an unknown order: \\\\\\\"+s)}}});class _b{constructor(t=0,e=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,e){return void 0!==e?(console.warn(\\\\\\\"THREE.Vector2: .add() now only accepts one argument. Use .addVectors( a, b ) instead.\\\\\\\"),this.addVectors(t,e)):(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,e){return void 0!==e?(console.warn(\\\\\\\"THREE.Vector2: .sub() now only accepts one argument. Use .subVectors( a, b ) instead.\\\\\\\"),this.subVectors(t,e)):(this.x-=t.x,this.y-=t.y,this)}subScalar(t){return this.x-=t,this.y-=t,this}subVectors(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this}multiply(t){return this.x*=t.x,this.y*=t.y,this}multiplyScalar(t){return this.x*=t,this.y*=t,this}divide(t){return this.x/=t.x,this.y/=t.y,this}divideScalar(t){return this.multiplyScalar(1/t)}applyMatrix3(t){const e=this.x,n=this.y,i=t.elements;return this.x=i[0]*e+i[3]*n+i[6],this.y=i[1]*e+i[4]*n+i[7],this}min(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this}max(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this}clamp(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this}clampScalar(t,e){return this.x=Math.max(t,Math.min(e,this.x)),this.y=Math.max(t,Math.min(e,this.y)),this}clampLength(t,e){const n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(t,Math.min(e,n)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}roundToZero(){return this.x=this.x<0?Math.ceil(this.x):Math.floor(this.x),this.y=this.y<0?Math.ceil(this.y):Math.floor(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}distanceTo(t){return Math.sqrt(this.distanceToSquared(t))}distanceToSquared(t){const e=this.x-t.x,n=this.y-t.y;return e*e+n*n}manhattanDistanceTo(t){return Math.abs(this.x-t.x)+Math.abs(this.y-t.y)}setLength(t){return this.normalize().multiplyScalar(t)}lerp(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this}lerpVectors(t,e,n){return this.x=t.x+(e.x-t.x)*n,this.y=t.y+(e.y-t.y)*n,this}equals(t){return t.x===this.x&&t.y===this.y}fromArray(t,e=0){return this.x=t[e],this.y=t[e+1],this}toArray(t=[],e=0){return t[e]=this.x,t[e+1]=this.y,t}fromBufferAttribute(t,e,n){return void 0!==n&&console.warn(\\\\\\\"THREE.Vector2: offset has been removed from .fromBufferAttribute().\\\\\\\"),this.x=t.getX(e),this.y=t.getY(e),this}rotateAround(t,e){const n=Math.cos(e),i=Math.sin(e),s=this.x-t.x,r=this.y-t.y;return this.x=s*n-r*i+t.x,this.y=s*i+r*n+t.y,this}random(){return this.x=Math.random(),this.y=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y}}_b.prototype.isVector2=!0;class mb{constructor(){this.elements=[1,0,0,0,1,0,0,0,1],arguments.length>0&&console.error(\\\\\\\"THREE.Matrix3: the constructor no longer reads arguments. use .set() instead.\\\\\\\")}set(t,e,n,i,s,r,o,a,l){const c=this.elements;return c[0]=t,c[1]=i,c[2]=o,c[3]=e,c[4]=s,c[5]=a,c[6]=n,c[7]=r,c[8]=l,this}identity(){return this.set(1,0,0,0,1,0,0,0,1),this}copy(t){const e=this.elements,n=t.elements;return e[0]=n[0],e[1]=n[1],e[2]=n[2],e[3]=n[3],e[4]=n[4],e[5]=n[5],e[6]=n[6],e[7]=n[7],e[8]=n[8],this}extractBasis(t,e,n){return t.setFromMatrix3Column(this,0),e.setFromMatrix3Column(this,1),n.setFromMatrix3Column(this,2),this}setFromMatrix4(t){const e=t.elements;return this.set(e[0],e[4],e[8],e[1],e[5],e[9],e[2],e[6],e[10]),this}multiply(t){return this.multiplyMatrices(this,t)}premultiply(t){return this.multiplyMatrices(t,this)}multiplyMatrices(t,e){const n=t.elements,i=e.elements,s=this.elements,r=n[0],o=n[3],a=n[6],l=n[1],c=n[4],h=n[7],u=n[2],d=n[5],p=n[8],_=i[0],m=i[3],f=i[6],g=i[1],v=i[4],y=i[7],x=i[2],b=i[5],w=i[8];return s[0]=r*_+o*g+a*x,s[3]=r*m+o*v+a*b,s[6]=r*f+o*y+a*w,s[1]=l*_+c*g+h*x,s[4]=l*m+c*v+h*b,s[7]=l*f+c*y+h*w,s[2]=u*_+d*g+p*x,s[5]=u*m+d*v+p*b,s[8]=u*f+d*y+p*w,this}multiplyScalar(t){const e=this.elements;return e[0]*=t,e[3]*=t,e[6]*=t,e[1]*=t,e[4]*=t,e[7]*=t,e[2]*=t,e[5]*=t,e[8]*=t,this}determinant(){const t=this.elements,e=t[0],n=t[1],i=t[2],s=t[3],r=t[4],o=t[5],a=t[6],l=t[7],c=t[8];return e*r*c-e*o*l-n*s*c+n*o*a+i*s*l-i*r*a}invert(){const t=this.elements,e=t[0],n=t[1],i=t[2],s=t[3],r=t[4],o=t[5],a=t[6],l=t[7],c=t[8],h=c*r-o*l,u=o*a-c*s,d=l*s-r*a,p=e*h+n*u+i*d;if(0===p)return this.set(0,0,0,0,0,0,0,0,0);const _=1/p;return t[0]=h*_,t[1]=(i*l-c*n)*_,t[2]=(o*n-i*r)*_,t[3]=u*_,t[4]=(c*e-i*a)*_,t[5]=(i*s-o*e)*_,t[6]=d*_,t[7]=(n*a-l*e)*_,t[8]=(r*e-n*s)*_,this}transpose(){let t;const e=this.elements;return t=e[1],e[1]=e[3],e[3]=t,t=e[2],e[2]=e[6],e[6]=t,t=e[5],e[5]=e[7],e[7]=t,this}getNormalMatrix(t){return this.setFromMatrix4(t).invert().transpose()}transposeIntoArray(t){const e=this.elements;return t[0]=e[0],t[1]=e[3],t[2]=e[6],t[3]=e[1],t[4]=e[4],t[5]=e[7],t[6]=e[2],t[7]=e[5],t[8]=e[8],this}setUvTransform(t,e,n,i,s,r,o){const a=Math.cos(s),l=Math.sin(s);return this.set(n*a,n*l,-n*(a*r+l*o)+r+t,-i*l,i*a,-i*(-l*r+a*o)+o+e,0,0,1),this}scale(t,e){const n=this.elements;return n[0]*=t,n[3]*=t,n[6]*=t,n[1]*=e,n[4]*=e,n[7]*=e,this}rotate(t){const e=Math.cos(t),n=Math.sin(t),i=this.elements,s=i[0],r=i[3],o=i[6],a=i[1],l=i[4],c=i[7];return i[0]=e*s+n*a,i[3]=e*r+n*l,i[6]=e*o+n*c,i[1]=-n*s+e*a,i[4]=-n*r+e*l,i[7]=-n*o+e*c,this}translate(t,e){const n=this.elements;return n[0]+=t*n[2],n[3]+=t*n[5],n[6]+=t*n[8],n[1]+=e*n[2],n[4]+=e*n[5],n[7]+=e*n[8],this}equals(t){const e=this.elements,n=t.elements;for(let t=0;t<9;t++)if(e[t]!==n[t])return!1;return!0}fromArray(t,e=0){for(let n=0;n<9;n++)this.elements[n]=t[n+e];return this}toArray(t=[],e=0){const n=this.elements;return t[e]=n[0],t[e+1]=n[1],t[e+2]=n[2],t[e+3]=n[3],t[e+4]=n[4],t[e+5]=n[5],t[e+6]=n[6],t[e+7]=n[7],t[e+8]=n[8],t}clone(){return(new this.constructor).fromArray(this.elements)}}function fb(t){if(0===t.length)return-1/0;let e=t[0];for(let n=1,i=t.length;n<i;++n)t[n]>e&&(e=t[n]);return e}mb.prototype.isMatrix3=!0;Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array;function gb(t){return document.createElementNS(\\\\\\\"http://www.w3.org/1999/xhtml\\\\\\\",t)}let vb;class yb{static getDataURL(t){if(/^data:/i.test(t.src))return t.src;if(\\\\\\\"undefined\\\\\\\"==typeof HTMLCanvasElement)return t.src;let e;if(t instanceof HTMLCanvasElement)e=t;else{void 0===vb&&(vb=gb(\\\\\\\"canvas\\\\\\\")),vb.width=t.width,vb.height=t.height;const n=vb.getContext(\\\\\\\"2d\\\\\\\");t instanceof ImageData?n.putImageData(t,0,0):n.drawImage(t,0,0,t.width,t.height),e=vb}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\\\\\\\")}}let xb=0;class bb extends tb{constructor(t=bb.DEFAULT_IMAGE,e=bb.DEFAULT_MAPPING,n=1001,i=1001,s=1006,r=1008,o=1023,a=1009,l=1,c=3e3){super(),Object.defineProperty(this,\\\\\\\"id\\\\\\\",{value:xb++}),this.uuid=ob(),this.name=\\\\\\\"\\\\\\\",this.image=t,this.mipmaps=[],this.mapping=e,this.wrapS=n,this.wrapT=i,this.magFilter=s,this.minFilter=r,this.anisotropy=l,this.format=o,this.internalFormat=null,this.type=a,this.offset=new _b(0,0),this.repeat=new _b(1,1),this.center=new _b(0,0),this.rotation=0,this.matrixAutoUpdate=!0,this.matrix=new mb,this.generateMipmaps=!0,this.premultiplyAlpha=!1,this.flipY=!0,this.unpackAlignment=4,this.encoding=c,this.version=0,this.onUpdate=null,this.isRenderTargetTexture=!1}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.image=t.image,this.mipmaps=t.mipmaps.slice(0),this.mapping=t.mapping,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.encoding=t.encoding,this}toJSON(t){const e=void 0===t||\\\\\\\"string\\\\\\\"==typeof t;if(!e&&void 0!==t.textures[this.uuid])return t.textures[this.uuid];const n={metadata:{version:4.5,type:\\\\\\\"Texture\\\\\\\",generator:\\\\\\\"Texture.toJSON\\\\\\\"},uuid:this.uuid,name:this.name,mapping:this.mapping,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,type:this.type,encoding:this.encoding,minFilter:this.minFilter,magFilter:this.magFilter,anisotropy:this.anisotropy,flipY:this.flipY,premultiplyAlpha:this.premultiplyAlpha,unpackAlignment:this.unpackAlignment};if(void 0!==this.image){const i=this.image;if(void 0===i.uuid&&(i.uuid=ob()),!e&&void 0===t.images[i.uuid]){let e;if(Array.isArray(i)){e=[];for(let t=0,n=i.length;t<n;t++)i[t].isDataTexture?e.push(wb(i[t].image)):e.push(wb(i[t]))}else e=wb(i);t.images[i.uuid]={uuid:i.uuid,url:e}}n.image=i.uuid}return e||(t.textures[this.uuid]=n),n}dispose(){this.dispatchEvent({type:\\\\\\\"dispose\\\\\\\"})}transformUv(t){if(300!==this.mapping)return t;if(t.applyMatrix3(this.matrix),t.x<0||t.x>1)switch(this.wrapS){case xx:t.x=t.x-Math.floor(t.x);break;case bx:t.x=t.x<0?0:1;break;case wx:1===Math.abs(Math.floor(t.x)%2)?t.x=Math.ceil(t.x)-t.x:t.x=t.x-Math.floor(t.x)}if(t.y<0||t.y>1)switch(this.wrapT){case xx:t.y=t.y-Math.floor(t.y);break;case bx:t.y=t.y<0?0:1;break;case wx:1===Math.abs(Math.floor(t.y)%2)?t.y=Math.ceil(t.y)-t.y:t.y=t.y-Math.floor(t.y)}return this.flipY&&(t.y=1-t.y),t}set needsUpdate(t){!0===t&&this.version++}}function wb(t){return\\\\\\\"undefined\\\\\\\"!=typeof HTMLImageElement&&t instanceof HTMLImageElement||\\\\\\\"undefined\\\\\\\"!=typeof HTMLCanvasElement&&t instanceof HTMLCanvasElement||\\\\\\\"undefined\\\\\\\"!=typeof ImageBitmap&&t instanceof ImageBitmap?yb.getDataURL(t):t.data?{data:Array.prototype.slice.call(t.data),width:t.width,height:t.height,type:t.data.constructor.name}:(console.warn(\\\\\\\"THREE.Texture: Unable to serialize Texture.\\\\\\\"),{})}bb.DEFAULT_IMAGE=void 0,bb.DEFAULT_MAPPING=300,bb.prototype.isTexture=!0;class Tb{constructor(t=0,e=0,n=0,i=1){this.x=t,this.y=e,this.z=n,this.w=i}get width(){return this.z}set width(t){this.z=t}get height(){return this.w}set height(t){this.w=t}set(t,e,n,i){return this.x=t,this.y=e,this.z=n,this.w=i,this}setScalar(t){return this.x=t,this.y=t,this.z=t,this.w=t,this}setX(t){return this.x=t,this}setY(t){return this.y=t,this}setZ(t){return this.z=t,this}setW(t){return this.w=t,this}setComponent(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;case 2:this.z=e;break;case 3:this.w=e;break;default:throw new Error(\\\\\\\"index is out of range: \\\\\\\"+t)}return this}getComponent(t){switch(t){case 0:return this.x;case 1:return this.y;case 2:return this.z;case 3:return this.w;default:throw new Error(\\\\\\\"index is out of range: \\\\\\\"+t)}}clone(){return new this.constructor(this.x,this.y,this.z,this.w)}copy(t){return this.x=t.x,this.y=t.y,this.z=t.z,this.w=void 0!==t.w?t.w:1,this}add(t,e){return void 0!==e?(console.warn(\\\\\\\"THREE.Vector4: .add() now only accepts one argument. Use .addVectors( a, b ) instead.\\\\\\\"),this.addVectors(t,e)):(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,e){return void 0!==e?(console.warn(\\\\\\\"THREE.Vector4: .sub() now only accepts one argument. Use .subVectors( a, b ) instead.\\\\\\\"),this.subVectors(t,e)):(this.x-=t.x,this.y-=t.y,this.z-=t.z,this.w-=t.w,this)}subScalar(t){return this.x-=t,this.y-=t,this.z-=t,this.w-=t,this}subVectors(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this.z=t.z-e.z,this.w=t.w-e.w,this}multiply(t){return this.x*=t.x,this.y*=t.y,this.z*=t.z,this.w*=t.w,this}multiplyScalar(t){return this.x*=t,this.y*=t,this.z*=t,this.w*=t,this}applyMatrix4(t){const e=this.x,n=this.y,i=this.z,s=this.w,r=t.elements;return this.x=r[0]*e+r[4]*n+r[8]*i+r[12]*s,this.y=r[1]*e+r[5]*n+r[9]*i+r[13]*s,this.z=r[2]*e+r[6]*n+r[10]*i+r[14]*s,this.w=r[3]*e+r[7]*n+r[11]*i+r[15]*s,this}divideScalar(t){return this.multiplyScalar(1/t)}setAxisAngleFromQuaternion(t){this.w=2*Math.acos(t.w);const e=Math.sqrt(1-t.w*t.w);return e<1e-4?(this.x=1,this.y=0,this.z=0):(this.x=t.x/e,this.y=t.y/e,this.z=t.z/e),this}setAxisAngleFromRotationMatrix(t){let e,n,i,s;const r=.01,o=.1,a=t.elements,l=a[0],c=a[4],h=a[8],u=a[1],d=a[5],p=a[9],_=a[2],m=a[6],f=a[10];if(Math.abs(c-u)<r&&Math.abs(h-_)<r&&Math.abs(p-m)<r){if(Math.abs(c+u)<o&&Math.abs(h+_)<o&&Math.abs(p+m)<o&&Math.abs(l+d+f-3)<o)return this.set(1,0,0,0),this;e=Math.PI;const t=(l+1)/2,a=(d+1)/2,g=(f+1)/2,v=(c+u)/4,y=(h+_)/4,x=(p+m)/4;return t>a&&t>g?t<r?(n=0,i=.707106781,s=.707106781):(n=Math.sqrt(t),i=v/n,s=y/n):a>g?a<r?(n=.707106781,i=0,s=.707106781):(i=Math.sqrt(a),n=v/i,s=x/i):g<r?(n=.707106781,i=.707106781,s=0):(s=Math.sqrt(g),n=y/s,i=x/s),this.set(n,i,s,e),this}let g=Math.sqrt((m-p)*(m-p)+(h-_)*(h-_)+(u-c)*(u-c));return Math.abs(g)<.001&&(g=1),this.x=(m-p)/g,this.y=(h-_)/g,this.z=(u-c)/g,this.w=Math.acos((l+d+f-1)/2),this}min(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this.z=Math.min(this.z,t.z),this.w=Math.min(this.w,t.w),this}max(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this.z=Math.max(this.z,t.z),this.w=Math.max(this.w,t.w),this}clamp(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this.z=Math.max(t.z,Math.min(e.z,this.z)),this.w=Math.max(t.w,Math.min(e.w,this.w)),this}clampScalar(t,e){return this.x=Math.max(t,Math.min(e,this.x)),this.y=Math.max(t,Math.min(e,this.y)),this.z=Math.max(t,Math.min(e,this.z)),this.w=Math.max(t,Math.min(e,this.w)),this}clampLength(t,e){const n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(t,Math.min(e,n)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this.w=Math.floor(this.w),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this.w=Math.ceil(this.w),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this.w=Math.round(this.w),this}roundToZero(){return this.x=this.x<0?Math.ceil(this.x):Math.floor(this.x),this.y=this.y<0?Math.ceil(this.y):Math.floor(this.y),this.z=this.z<0?Math.ceil(this.z):Math.floor(this.z),this.w=this.w<0?Math.ceil(this.w):Math.floor(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,n){return void 0!==n&&console.warn(\\\\\\\"THREE.Vector4: offset has been removed from .fromBufferAttribute().\\\\\\\"),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}}Tb.prototype.isVector4=!0;class Ab extends tb{constructor(t,e,n={}){super(),this.width=t,this.height=e,this.depth=1,this.scissor=new Tb(0,0,t,e),this.scissorTest=!1,this.viewport=new Tb(0,0,t,e),this.texture=new bb(void 0,n.mapping,n.wrapS,n.wrapT,n.magFilter,n.minFilter,n.format,n.type,n.anisotropy,n.encoding),this.texture.isRenderTargetTexture=!0,this.texture.image={width:t,height:e,depth:1},this.texture.generateMipmaps=void 0!==n.generateMipmaps&&n.generateMipmaps,this.texture.internalFormat=void 0!==n.internalFormat?n.internalFormat:null,this.texture.minFilter=void 0!==n.minFilter?n.minFilter:Ex,this.depthBuffer=void 0===n.depthBuffer||n.depthBuffer,this.stencilBuffer=void 0!==n.stencilBuffer&&n.stencilBuffer,this.depthTexture=void 0!==n.depthTexture?n.depthTexture:null}setTexture(t){t.image={width:this.width,height:this.height,depth:this.depth},this.texture=t}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){return this.width=t.width,this.height=t.height,this.depth=t.depth,this.viewport.copy(t.viewport),this.texture=t.texture.clone(),this.texture.image={...this.texture.image},this.depthBuffer=t.depthBuffer,this.stencilBuffer=t.stencilBuffer,this.depthTexture=t.depthTexture,this}dispose(){this.dispatchEvent({type:\\\\\\\"dispose\\\\\\\"})}}Ab.prototype.isWebGLRenderTarget=!0;(class extends Ab{constructor(t,e,n){super(t,e);const i=this.texture;this.texture=[];for(let t=0;t<n;t++)this.texture[t]=i.clone()}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()}return this.viewport.set(0,0,t,e),this.scissor.set(0,0,t,e),this}copy(t){this.dispose(),this.width=t.width,this.height=t.height,this.depth=t.depth,this.viewport.set(0,0,this.width,this.height),this.scissor.set(0,0,this.width,this.height),this.depthBuffer=t.depthBuffer,this.stencilBuffer=t.stencilBuffer,this.depthTexture=t.depthTexture,this.texture.length=0;for(let e=0,n=t.texture.length;e<n;e++)this.texture[e]=t.texture[e].clone();return this}}).prototype.isWebGLMultipleRenderTargets=!0;class Mb extends Ab{constructor(t,e,n){super(t,e,n),this.samples=4}copy(t){return super.copy.call(this,t),this.samples=t.samples,this}}Mb.prototype.isWebGLMultisampleRenderTarget=!0;class Eb{constructor(t=0,e=0,n=0,i=1){this._x=t,this._y=e,this._z=n,this._w=i}static slerp(t,e,n,i){return console.warn(\\\\\\\"THREE.Quaternion: Static .slerp() has been deprecated. Use qm.slerpQuaternions( qa, qb, t ) instead.\\\\\\\"),n.slerpQuaternions(t,e,i)}static slerpFlat(t,e,n,i,s,r,o){let a=n[i+0],l=n[i+1],c=n[i+2],h=n[i+3];const u=s[r+0],d=s[r+1],p=s[r+2],_=s[r+3];if(0===o)return t[e+0]=a,t[e+1]=l,t[e+2]=c,void(t[e+3]=h);if(1===o)return t[e+0]=u,t[e+1]=d,t[e+2]=p,void(t[e+3]=_);if(h!==_||a!==u||l!==d||c!==p){let t=1-o;const e=a*u+l*d+c*p+h*_,n=e>=0?1:-1,i=1-e*e;if(i>Number.EPSILON){const s=Math.sqrt(i),r=Math.atan2(s,e*n);t=Math.sin(t*r)/s,o=Math.sin(o*r)/s}const s=o*n;if(a=a*t+u*s,l=l*t+d*s,c=c*t+p*s,h=h*t+_*s,t===1-o){const t=1/Math.sqrt(a*a+l*l+c*c+h*h);a*=t,l*=t,c*=t,h*=t}}t[e]=a,t[e+1]=l,t[e+2]=c,t[e+3]=h}static multiplyQuaternionsFlat(t,e,n,i,s,r){const o=n[i],a=n[i+1],l=n[i+2],c=n[i+3],h=s[r],u=s[r+1],d=s[r+2],p=s[r+3];return t[e]=o*p+c*h+a*d-l*u,t[e+1]=a*p+c*u+l*h-o*d,t[e+2]=l*p+c*d+o*u-a*h,t[e+3]=c*p-o*h-a*u-l*d,t}get x(){return this._x}set x(t){this._x=t,this._onChangeCallback()}get y(){return this._y}set y(t){this._y=t,this._onChangeCallback()}get z(){return this._z}set z(t){this._z=t,this._onChangeCallback()}get w(){return this._w}set w(t){this._w=t,this._onChangeCallback()}set(t,e,n,i){return this._x=t,this._y=e,this._z=n,this._w=i,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._w)}copy(t){return this._x=t.x,this._y=t.y,this._z=t.z,this._w=t.w,this._onChangeCallback(),this}setFromEuler(t,e){if(!t||!t.isEuler)throw new Error(\\\\\\\"THREE.Quaternion: .setFromEuler() now expects an Euler rotation rather than a Vector3 and order.\\\\\\\");const n=t._x,i=t._y,s=t._z,r=t._order,o=Math.cos,a=Math.sin,l=o(n/2),c=o(i/2),h=o(s/2),u=a(n/2),d=a(i/2),p=a(s/2);switch(r){case\\\\\\\"XYZ\\\\\\\":this._x=u*c*h+l*d*p,this._y=l*d*h-u*c*p,this._z=l*c*p+u*d*h,this._w=l*c*h-u*d*p;break;case\\\\\\\"YXZ\\\\\\\":this._x=u*c*h+l*d*p,this._y=l*d*h-u*c*p,this._z=l*c*p-u*d*h,this._w=l*c*h+u*d*p;break;case\\\\\\\"ZXY\\\\\\\":this._x=u*c*h-l*d*p,this._y=l*d*h+u*c*p,this._z=l*c*p+u*d*h,this._w=l*c*h-u*d*p;break;case\\\\\\\"ZYX\\\\\\\":this._x=u*c*h-l*d*p,this._y=l*d*h+u*c*p,this._z=l*c*p-u*d*h,this._w=l*c*h+u*d*p;break;case\\\\\\\"YZX\\\\\\\":this._x=u*c*h+l*d*p,this._y=l*d*h+u*c*p,this._z=l*c*p-u*d*h,this._w=l*c*h-u*d*p;break;case\\\\\\\"XZY\\\\\\\":this._x=u*c*h-l*d*p,this._y=l*d*h-u*c*p,this._z=l*c*p+u*d*h,this._w=l*c*h+u*d*p;break;default:console.warn(\\\\\\\"THREE.Quaternion: .setFromEuler() encountered an unknown order: \\\\\\\"+r)}return!1!==e&&this._onChangeCallback(),this}setFromAxisAngle(t,e){const n=e/2,i=Math.sin(n);return this._x=t.x*i,this._y=t.y*i,this._z=t.z*i,this._w=Math.cos(n),this._onChangeCallback(),this}setFromRotationMatrix(t){const e=t.elements,n=e[0],i=e[4],s=e[8],r=e[1],o=e[5],a=e[9],l=e[2],c=e[6],h=e[10],u=n+o+h;if(u>0){const t=.5/Math.sqrt(u+1);this._w=.25/t,this._x=(c-a)*t,this._y=(s-l)*t,this._z=(r-i)*t}else if(n>o&&n>h){const t=2*Math.sqrt(1+n-o-h);this._w=(c-a)/t,this._x=.25*t,this._y=(i+r)/t,this._z=(s+l)/t}else if(o>h){const t=2*Math.sqrt(1+o-n-h);this._w=(s-l)/t,this._x=(i+r)/t,this._y=.25*t,this._z=(a+c)/t}else{const t=2*Math.sqrt(1+h-n-o);this._w=(r-i)/t,this._x=(s+l)/t,this._y=(a+c)/t,this._z=.25*t}return this._onChangeCallback(),this}setFromUnitVectors(t,e){let n=t.dot(e)+1;return n<Number.EPSILON?(n=0,Math.abs(t.x)>Math.abs(t.z)?(this._x=-t.y,this._y=t.x,this._z=0,this._w=n):(this._x=0,this._y=-t.z,this._z=t.y,this._w=n)):(this._x=t.y*e.z-t.z*e.y,this._y=t.z*e.x-t.x*e.z,this._z=t.x*e.y-t.y*e.x,this._w=n),this.normalize()}angleTo(t){return 2*Math.acos(Math.abs(ab(this.dot(t),-1,1)))}rotateTowards(t,e){const n=this.angleTo(t);if(0===n)return this;const i=Math.min(1,e/n);return this.slerp(t,i),this}identity(){return this.set(0,0,0,1)}invert(){return this.conjugate()}conjugate(){return this._x*=-1,this._y*=-1,this._z*=-1,this._onChangeCallback(),this}dot(t){return this._x*t._x+this._y*t._y+this._z*t._z+this._w*t._w}lengthSq(){return this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w}length(){return Math.sqrt(this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w)}normalize(){let t=this.length();return 0===t?(this._x=0,this._y=0,this._z=0,this._w=1):(t=1/t,this._x=this._x*t,this._y=this._y*t,this._z=this._z*t,this._w=this._w*t),this._onChangeCallback(),this}multiply(t,e){return void 0!==e?(console.warn(\\\\\\\"THREE.Quaternion: .multiply() now only accepts one argument. Use .multiplyQuaternions( a, b ) instead.\\\\\\\"),this.multiplyQuaternions(t,e)):this.multiplyQuaternions(this,t)}premultiply(t){return this.multiplyQuaternions(t,this)}multiplyQuaternions(t,e){const n=t._x,i=t._y,s=t._z,r=t._w,o=e._x,a=e._y,l=e._z,c=e._w;return this._x=n*c+r*o+i*l-s*a,this._y=i*c+r*a+s*o-n*l,this._z=s*c+r*l+n*a-i*o,this._w=r*c-n*o-i*a-s*l,this._onChangeCallback(),this}slerp(t,e){if(0===e)return this;if(1===e)return this.copy(t);const n=this._x,i=this._y,s=this._z,r=this._w;let o=r*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=r,this._x=n,this._y=i,this._z=s,this;const a=1-o*o;if(a<=Number.EPSILON){const t=1-e;return this._w=t*r+e*this._w,this._x=t*n+e*this._x,this._y=t*i+e*this._y,this._z=t*s+e*this._z,this.normalize(),this._onChangeCallback(),this}const l=Math.sqrt(a),c=Math.atan2(l,o),h=Math.sin((1-e)*c)/l,u=Math.sin(e*c)/l;return this._w=r*h+this._w*u,this._x=n*h+this._x*u,this._y=i*h+this._y*u,this._z=s*h+this._z*u,this._onChangeCallback(),this}slerpQuaternions(t,e,n){this.copy(t).slerp(e,n)}random(){const t=Math.random(),e=Math.sqrt(1-t),n=Math.sqrt(t),i=2*Math.PI*Math.random(),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}_onChange(t){return this._onChangeCallback=t,this}_onChangeCallback(){}}Eb.prototype.isQuaternion=!0;class Sb{constructor(t=0,e=0,n=0){this.x=t,this.y=e,this.z=n}set(t,e,n){return void 0===n&&(n=this.z),this.x=t,this.y=e,this.z=n,this}setScalar(t){return this.x=t,this.y=t,this.z=t,this}setX(t){return this.x=t,this}setY(t){return this.y=t,this}setZ(t){return this.z=t,this}setComponent(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;case 2:this.z=e;break;default:throw new Error(\\\\\\\"index is out of range: \\\\\\\"+t)}return this}getComponent(t){switch(t){case 0:return this.x;case 1:return this.y;case 2:return this.z;default:throw new Error(\\\\\\\"index is out of range: \\\\\\\"+t)}}clone(){return new this.constructor(this.x,this.y,this.z)}copy(t){return this.x=t.x,this.y=t.y,this.z=t.z,this}add(t,e){return void 0!==e?(console.warn(\\\\\\\"THREE.Vector3: .add() now only accepts one argument. Use .addVectors( a, b ) instead.\\\\\\\"),this.addVectors(t,e)):(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,e){return void 0!==e?(console.warn(\\\\\\\"THREE.Vector3: .sub() now only accepts one argument. Use .subVectors( a, b ) instead.\\\\\\\"),this.subVectors(t,e)):(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,e){return void 0!==e?(console.warn(\\\\\\\"THREE.Vector3: .multiply() now only accepts one argument. Use .multiplyVectors( a, b ) instead.\\\\\\\"),this.multiplyVectors(t,e)):(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 t&&t.isEuler||console.error(\\\\\\\"THREE.Vector3: .applyEuler() now expects an Euler rotation rather than a Vector3 and order.\\\\\\\"),this.applyQuaternion(Nb.setFromEuler(t))}applyAxisAngle(t,e){return this.applyQuaternion(Nb.setFromAxisAngle(t,e))}applyMatrix3(t){const 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){const e=this.x,n=this.y,i=this.z,s=t.elements,r=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])*r,this.y=(s[1]*e+s[5]*n+s[9]*i+s[13])*r,this.z=(s[2]*e+s[6]*n+s[10]*i+s[14])*r,this}applyQuaternion(t){const e=this.x,n=this.y,i=this.z,s=t.x,r=t.y,o=t.z,a=t.w,l=a*e+r*i-o*n,c=a*n+o*e-s*i,h=a*i+s*n-r*e,u=-s*e-r*n-o*i;return this.x=l*a+u*-s+c*-o-h*-r,this.y=c*a+u*-r+h*-s-l*-o,this.z=h*a+u*-o+l*-r-c*-s,this}project(t){return this.applyMatrix4(t.matrixWorldInverse).applyMatrix4(t.projectionMatrix)}unproject(t){return this.applyMatrix4(t.projectionMatrixInverse).applyMatrix4(t.matrixWorld)}transformDirection(t){const e=this.x,n=this.y,i=this.z,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){const n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(t,Math.min(e,n)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this}roundToZero(){return this.x=this.x<0?Math.ceil(this.x):Math.floor(this.x),this.y=this.y<0?Math.ceil(this.y):Math.floor(this.y),this.z=this.z<0?Math.ceil(this.z):Math.floor(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,e){return void 0!==e?(console.warn(\\\\\\\"THREE.Vector3: .cross() now only accepts one argument. Use .crossVectors( a, b ) instead.\\\\\\\"),this.crossVectors(t,e)):this.crossVectors(this,t)}crossVectors(t,e){const n=t.x,i=t.y,s=t.z,r=e.x,o=e.y,a=e.z;return this.x=i*a-s*o,this.y=s*r-n*a,this.z=n*o-i*r,this}projectOnVector(t){const e=t.lengthSq();if(0===e)return this.set(0,0,0);const n=t.dot(this)/e;return this.copy(t).multiplyScalar(n)}projectOnPlane(t){return Cb.copy(this).projectOnVector(t),this.sub(Cb)}reflect(t){return this.sub(Cb.copy(t).multiplyScalar(2*this.dot(t)))}angleTo(t){const e=Math.sqrt(this.lengthSq()*t.lengthSq());if(0===e)return Math.PI/2;const n=this.dot(t)/e;return Math.acos(ab(n,-1,1))}distanceTo(t){return Math.sqrt(this.distanceToSquared(t))}distanceToSquared(t){const e=this.x-t.x,n=this.y-t.y,i=this.z-t.z;return e*e+n*n+i*i}manhattanDistanceTo(t){return Math.abs(this.x-t.x)+Math.abs(this.y-t.y)+Math.abs(this.z-t.z)}setFromSpherical(t){return this.setFromSphericalCoords(t.radius,t.phi,t.theta)}setFromSphericalCoords(t,e,n){const i=Math.sin(e)*t;return this.x=i*Math.sin(n),this.y=Math.cos(e)*t,this.z=i*Math.cos(n),this}setFromCylindrical(t){return this.setFromCylindricalCoords(t.radius,t.theta,t.y)}setFromCylindricalCoords(t,e,n){return this.x=t*Math.sin(e),this.y=n,this.z=t*Math.cos(e),this}setFromMatrixPosition(t){const e=t.elements;return this.x=e[12],this.y=e[13],this.z=e[14],this}setFromMatrixScale(t){const e=this.setFromMatrixColumn(t,0).length(),n=this.setFromMatrixColumn(t,1).length(),i=this.setFromMatrixColumn(t,2).length();return this.x=e,this.y=n,this.z=i,this}setFromMatrixColumn(t,e){return this.fromArray(t.elements,4*e)}setFromMatrix3Column(t,e){return this.fromArray(t.elements,3*e)}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,n){return void 0!==n&&console.warn(\\\\\\\"THREE.Vector3: offset has been removed from .fromBufferAttribute().\\\\\\\"),this.x=t.getX(e),this.y=t.getY(e),this.z=t.getZ(e),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this}randomDirection(){const t=2*(Math.random()-.5),e=Math.random()*Math.PI*2,n=Math.sqrt(1-t**2);return this.x=n*Math.cos(e),this.y=n*Math.sin(e),this.z=t,this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z}}Sb.prototype.isVector3=!0;const Cb=new Sb,Nb=new Eb;class Lb{constructor(t=new Sb(1/0,1/0,1/0),e=new Sb(-1/0,-1/0,-1/0)){this.min=t,this.max=e}set(t,e){return this.min.copy(t),this.max.copy(e),this}setFromArray(t){let e=1/0,n=1/0,i=1/0,s=-1/0,r=-1/0,o=-1/0;for(let a=0,l=t.length;a<l;a+=3){const l=t[a],c=t[a+1],h=t[a+2];l<e&&(e=l),c<n&&(n=c),h<i&&(i=h),l>s&&(s=l),c>r&&(r=c),h>o&&(o=h)}return this.min.set(e,n,i),this.max.set(s,r,o),this}setFromBufferAttribute(t){let e=1/0,n=1/0,i=1/0,s=-1/0,r=-1/0,o=-1/0;for(let a=0,l=t.count;a<l;a++){const l=t.getX(a),c=t.getY(a),h=t.getZ(a);l<e&&(e=l),c<n&&(n=c),h<i&&(i=h),l>s&&(s=l),c>r&&(r=c),h>o&&(o=h)}return this.min.set(e,n,i),this.max.set(s,r,o),this}setFromPoints(t){this.makeEmpty();for(let e=0,n=t.length;e<n;e++)this.expandByPoint(t[e]);return this}setFromCenterAndSize(t,e){const n=Pb.copy(e).multiplyScalar(.5);return this.min.copy(t).sub(n),this.max.copy(t).add(n),this}setFromObject(t){return this.makeEmpty(),this.expandByObject(t)}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){t.updateWorldMatrix(!1,!1);const e=t.geometry;void 0!==e&&(null===e.boundingBox&&e.computeBoundingBox(),Rb.copy(e.boundingBox),Rb.applyMatrix4(t.matrixWorld),this.union(Rb));const n=t.children;for(let t=0,e=n.length;t<e;t++)this.expandByObject(n[t]);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,Pb),Pb.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(Ub),Gb.subVectors(this.max,Ub),Ib.subVectors(t.a,Ub),Fb.subVectors(t.b,Ub),Db.subVectors(t.c,Ub),Bb.subVectors(Fb,Ib),zb.subVectors(Db,Fb),kb.subVectors(Ib,Db);let e=[0,-Bb.z,Bb.y,0,-zb.z,zb.y,0,-kb.z,kb.y,Bb.z,0,-Bb.x,zb.z,0,-zb.x,kb.z,0,-kb.x,-Bb.y,Bb.x,0,-zb.y,zb.x,0,-kb.y,kb.x,0];return!!jb(e,Ib,Fb,Db,Gb)&&(e=[1,0,0,0,1,0,0,0,1],!!jb(e,Ib,Fb,Db,Gb)&&(Vb.crossVectors(Bb,zb),e=[Vb.x,Vb.y,Vb.z],jb(e,Ib,Fb,Db,Gb)))}clampPoint(t,e){return e.copy(t).clamp(this.min,this.max)}distanceToPoint(t){return Pb.copy(t).clamp(this.min,this.max).sub(t).length()}getBoundingSphere(t){return this.getCenter(t.center),t.radius=.5*this.getSize(Pb).length(),t}intersect(t){return this.min.max(t.min),this.max.min(t.max),this.isEmpty()&&this.makeEmpty(),this}union(t){return this.min.min(t.min),this.max.max(t.max),this}applyMatrix4(t){return this.isEmpty()||(Ob[0].set(this.min.x,this.min.y,this.min.z).applyMatrix4(t),Ob[1].set(this.min.x,this.min.y,this.max.z).applyMatrix4(t),Ob[2].set(this.min.x,this.max.y,this.min.z).applyMatrix4(t),Ob[3].set(this.min.x,this.max.y,this.max.z).applyMatrix4(t),Ob[4].set(this.max.x,this.min.y,this.min.z).applyMatrix4(t),Ob[5].set(this.max.x,this.min.y,this.max.z).applyMatrix4(t),Ob[6].set(this.max.x,this.max.y,this.min.z).applyMatrix4(t),Ob[7].set(this.max.x,this.max.y,this.max.z).applyMatrix4(t),this.setFromPoints(Ob)),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)}}Lb.prototype.isBox3=!0;const Ob=[new Sb,new Sb,new Sb,new Sb,new Sb,new Sb,new Sb,new Sb],Pb=new Sb,Rb=new Lb,Ib=new Sb,Fb=new Sb,Db=new Sb,Bb=new Sb,zb=new Sb,kb=new Sb,Ub=new Sb,Gb=new Sb,Vb=new Sb,Hb=new Sb;function jb(t,e,n,i,s){for(let r=0,o=t.length-3;r<=o;r+=3){Hb.fromArray(t,r);const o=s.x*Math.abs(Hb.x)+s.y*Math.abs(Hb.y)+s.z*Math.abs(Hb.z),a=e.dot(Hb),l=n.dot(Hb),c=i.dot(Hb);if(Math.max(-Math.max(a,l,c),Math.min(a,l,c))>o)return!1}return!0}const Wb=new Lb,qb=new Sb,Xb=new Sb,Yb=new Sb;class $b{constructor(t=new Sb,e=-1){this.center=t,this.radius=e}set(t,e){return this.center.copy(t),this.radius=e,this}setFromPoints(t,e){const n=this.center;void 0!==e?n.copy(e):Wb.setFromPoints(t).getCenter(n);let i=0;for(let e=0,s=t.length;e<s;e++)i=Math.max(i,n.distanceToSquared(t[e]));return this.radius=Math.sqrt(i),this}copy(t){return this.center.copy(t.center),this.radius=t.radius,this}isEmpty(){return this.radius<0}makeEmpty(){return this.center.set(0,0,0),this.radius=-1,this}containsPoint(t){return t.distanceToSquared(this.center)<=this.radius*this.radius}distanceToPoint(t){return t.distanceTo(this.center)-this.radius}intersectsSphere(t){const e=this.radius+t.radius;return t.center.distanceToSquared(this.center)<=e*e}intersectsBox(t){return t.intersectsSphere(this)}intersectsPlane(t){return Math.abs(t.distanceToPoint(this.center))<=this.radius}clampPoint(t,e){const n=this.center.distanceToSquared(t);return e.copy(t),n>this.radius*this.radius&&(e.sub(this.center).normalize(),e.multiplyScalar(this.radius).add(this.center)),e}getBoundingBox(t){return this.isEmpty()?(t.makeEmpty(),t):(t.set(this.center,this.center),t.expandByScalar(this.radius),t)}applyMatrix4(t){return this.center.applyMatrix4(t),this.radius=this.radius*t.getMaxScaleOnAxis(),this}translate(t){return this.center.add(t),this}expandByPoint(t){Yb.subVectors(t,this.center);const e=Yb.lengthSq();if(e>this.radius*this.radius){const t=Math.sqrt(e),n=.5*(t-this.radius);this.center.add(Yb.multiplyScalar(n/t)),this.radius+=n}return this}union(t){return Xb.subVectors(t.center,this.center).normalize().multiplyScalar(t.radius),this.expandByPoint(qb.copy(t.center).add(Xb)),this.expandByPoint(qb.copy(t.center).sub(Xb)),this}equals(t){return t.center.equals(this.center)&&t.radius===this.radius}clone(){return(new this.constructor).copy(this)}}const Jb=new Sb,Zb=new Sb,Kb=new Sb,Qb=new Sb,tw=new Sb,ew=new Sb,nw=new Sb;class iw{constructor(t=new Sb,e=new Sb(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.direction).multiplyScalar(t).add(this.origin)}lookAt(t){return this.direction.copy(t).sub(this.origin).normalize(),this}recast(t){return this.origin.copy(this.at(t,Jb)),this}closestPointToPoint(t,e){e.subVectors(t,this.origin);const n=e.dot(this.direction);return n<0?e.copy(this.origin):e.copy(this.direction).multiplyScalar(n).add(this.origin)}distanceToPoint(t){return Math.sqrt(this.distanceSqToPoint(t))}distanceSqToPoint(t){const e=Jb.subVectors(t,this.origin).dot(this.direction);return e<0?this.origin.distanceToSquared(t):(Jb.copy(this.direction).multiplyScalar(e).add(this.origin),Jb.distanceToSquared(t))}distanceSqToSegment(t,e,n,i){Zb.copy(t).add(e).multiplyScalar(.5),Kb.copy(e).sub(t).normalize(),Qb.copy(this.origin).sub(Zb);const s=.5*t.distanceTo(e),r=-this.direction.dot(Kb),o=Qb.dot(this.direction),a=-Qb.dot(Kb),l=Qb.lengthSq(),c=Math.abs(1-r*r);let h,u,d,p;if(c>0)if(h=r*a-o,u=r*o-a,p=s*c,h>=0)if(u>=-p)if(u<=p){const t=1/c;h*=t,u*=t,d=h*(h+r*u+2*o)+u*(r*h+u+2*a)+l}else u=s,h=Math.max(0,-(r*u+o)),d=-h*h+u*(u+2*a)+l;else u=-s,h=Math.max(0,-(r*u+o)),d=-h*h+u*(u+2*a)+l;else u<=-p?(h=Math.max(0,-(-r*s+o)),u=h>0?-s:Math.min(Math.max(-s,-a),s),d=-h*h+u*(u+2*a)+l):u<=p?(h=0,u=Math.min(Math.max(-s,-a),s),d=u*(u+2*a)+l):(h=Math.max(0,-(r*s+o)),u=h>0?s:Math.min(Math.max(-s,-a),s),d=-h*h+u*(u+2*a)+l);else u=r>0?-s:s,h=Math.max(0,-(r*u+o)),d=-h*h+u*(u+2*a)+l;return n&&n.copy(this.direction).multiplyScalar(h).add(this.origin),i&&i.copy(Kb).multiplyScalar(u).add(Zb),d}intersectSphere(t,e){Jb.subVectors(t.center,this.origin);const n=Jb.dot(this.direction),i=Jb.dot(Jb)-n*n,s=t.radius*t.radius;if(i>s)return null;const r=Math.sqrt(s-i),o=n-r,a=n+r;return o<0&&a<0?null:o<0?this.at(a,e):this.at(o,e)}intersectsSphere(t){return this.distanceSqToPoint(t.center)<=t.radius*t.radius}distanceToPlane(t){const e=t.normal.dot(this.direction);if(0===e)return 0===t.distanceToPoint(this.origin)?0:null;const n=-(this.origin.dot(t.normal)+t.constant)/e;return n>=0?n:null}intersectPlane(t,e){const n=this.distanceToPlane(t);return null===n?null:this.at(n,e)}intersectsPlane(t){const e=t.distanceToPoint(this.origin);if(0===e)return!0;return t.normal.dot(this.direction)*e<0}intersectBox(t,e){let n,i,s,r,o,a;const l=1/this.direction.x,c=1/this.direction.y,h=1/this.direction.z,u=this.origin;return l>=0?(n=(t.min.x-u.x)*l,i=(t.max.x-u.x)*l):(n=(t.max.x-u.x)*l,i=(t.min.x-u.x)*l),c>=0?(s=(t.min.y-u.y)*c,r=(t.max.y-u.y)*c):(s=(t.max.y-u.y)*c,r=(t.min.y-u.y)*c),n>r||s>i?null:((s>n||n!=n)&&(n=s),(r<i||i!=i)&&(i=r),h>=0?(o=(t.min.z-u.z)*h,a=(t.max.z-u.z)*h):(o=(t.max.z-u.z)*h,a=(t.min.z-u.z)*h),n>a||o>i?null:((o>n||n!=n)&&(n=o),(a<i||i!=i)&&(i=a),i<0?null:this.at(n>=0?n:i,e)))}intersectsBox(t){return null!==this.intersectBox(t,Jb)}intersectTriangle(t,e,n,i,s){tw.subVectors(e,t),ew.subVectors(n,t),nw.crossVectors(tw,ew);let r,o=this.direction.dot(nw);if(o>0){if(i)return null;r=1}else{if(!(o<0))return null;r=-1,o=-o}Qb.subVectors(this.origin,t);const a=r*this.direction.dot(ew.crossVectors(Qb,ew));if(a<0)return null;const l=r*this.direction.dot(tw.cross(Qb));if(l<0)return null;if(a+l>o)return null;const c=-r*Qb.dot(nw);return c<0?null:this.at(c/o,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)}}class sw{constructor(){this.elements=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],arguments.length>0&&console.error(\\\\\\\"THREE.Matrix4: the constructor no longer reads arguments. use .set() instead.\\\\\\\")}set(t,e,n,i,s,r,o,a,l,c,h,u,d,p,_,m){const f=this.elements;return f[0]=t,f[4]=e,f[8]=n,f[12]=i,f[1]=s,f[5]=r,f[9]=o,f[13]=a,f[2]=l,f[6]=c,f[10]=h,f[14]=u,f[3]=d,f[7]=p,f[11]=_,f[15]=m,this}identity(){return this.set(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1),this}clone(){return(new sw).fromArray(this.elements)}copy(t){const e=this.elements,n=t.elements;return e[0]=n[0],e[1]=n[1],e[2]=n[2],e[3]=n[3],e[4]=n[4],e[5]=n[5],e[6]=n[6],e[7]=n[7],e[8]=n[8],e[9]=n[9],e[10]=n[10],e[11]=n[11],e[12]=n[12],e[13]=n[13],e[14]=n[14],e[15]=n[15],this}copyPosition(t){const e=this.elements,n=t.elements;return e[12]=n[12],e[13]=n[13],e[14]=n[14],this}setFromMatrix3(t){const e=t.elements;return this.set(e[0],e[3],e[6],0,e[1],e[4],e[7],0,e[2],e[5],e[8],0,0,0,0,1),this}extractBasis(t,e,n){return t.setFromMatrixColumn(this,0),e.setFromMatrixColumn(this,1),n.setFromMatrixColumn(this,2),this}makeBasis(t,e,n){return this.set(t.x,e.x,n.x,0,t.y,e.y,n.y,0,t.z,e.z,n.z,0,0,0,0,1),this}extractRotation(t){const e=this.elements,n=t.elements,i=1/rw.setFromMatrixColumn(t,0).length(),s=1/rw.setFromMatrixColumn(t,1).length(),r=1/rw.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]*r,e[9]=n[9]*r,e[10]=n[10]*r,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,this}makeRotationFromEuler(t){t&&t.isEuler||console.error(\\\\\\\"THREE.Matrix4: .makeRotationFromEuler() now expects a Euler rotation rather than a Vector3 and order.\\\\\\\");const e=this.elements,n=t.x,i=t.y,s=t.z,r=Math.cos(n),o=Math.sin(n),a=Math.cos(i),l=Math.sin(i),c=Math.cos(s),h=Math.sin(s);if(\\\\\\\"XYZ\\\\\\\"===t.order){const t=r*c,n=r*h,i=o*c,s=o*h;e[0]=a*c,e[4]=-a*h,e[8]=l,e[1]=n+i*l,e[5]=t-s*l,e[9]=-o*a,e[2]=s-t*l,e[6]=i+n*l,e[10]=r*a}else if(\\\\\\\"YXZ\\\\\\\"===t.order){const t=a*c,n=a*h,i=l*c,s=l*h;e[0]=t+s*o,e[4]=i*o-n,e[8]=r*l,e[1]=r*h,e[5]=r*c,e[9]=-o,e[2]=n*o-i,e[6]=s+t*o,e[10]=r*a}else if(\\\\\\\"ZXY\\\\\\\"===t.order){const t=a*c,n=a*h,i=l*c,s=l*h;e[0]=t-s*o,e[4]=-r*h,e[8]=i+n*o,e[1]=n+i*o,e[5]=r*c,e[9]=s-t*o,e[2]=-r*l,e[6]=o,e[10]=r*a}else if(\\\\\\\"ZYX\\\\\\\"===t.order){const t=r*c,n=r*h,i=o*c,s=o*h;e[0]=a*c,e[4]=i*l-n,e[8]=t*l+s,e[1]=a*h,e[5]=s*l+t,e[9]=n*l-i,e[2]=-l,e[6]=o*a,e[10]=r*a}else if(\\\\\\\"YZX\\\\\\\"===t.order){const t=r*a,n=r*l,i=o*a,s=o*l;e[0]=a*c,e[4]=s-t*h,e[8]=i*h+n,e[1]=h,e[5]=r*c,e[9]=-o*c,e[2]=-l*c,e[6]=n*h+i,e[10]=t-s*h}else if(\\\\\\\"XZY\\\\\\\"===t.order){const t=r*a,n=r*l,i=o*a,s=o*l;e[0]=a*c,e[4]=-h,e[8]=l*c,e[1]=t*h+s,e[5]=r*c,e[9]=n*h-i,e[2]=i*h-n,e[6]=o*c,e[10]=s*h+t}return e[3]=0,e[7]=0,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,this}makeRotationFromQuaternion(t){return this.compose(aw,t,lw)}lookAt(t,e,n){const i=this.elements;return uw.subVectors(t,e),0===uw.lengthSq()&&(uw.z=1),uw.normalize(),cw.crossVectors(n,uw),0===cw.lengthSq()&&(1===Math.abs(n.z)?uw.x+=1e-4:uw.z+=1e-4,uw.normalize(),cw.crossVectors(n,uw)),cw.normalize(),hw.crossVectors(uw,cw),i[0]=cw.x,i[4]=hw.x,i[8]=uw.x,i[1]=cw.y,i[5]=hw.y,i[9]=uw.y,i[2]=cw.z,i[6]=hw.z,i[10]=uw.z,this}multiply(t,e){return void 0!==e?(console.warn(\\\\\\\"THREE.Matrix4: .multiply() now only accepts one argument. Use .multiplyMatrices( a, b ) instead.\\\\\\\"),this.multiplyMatrices(t,e)):this.multiplyMatrices(this,t)}premultiply(t){return this.multiplyMatrices(t,this)}multiplyMatrices(t,e){const n=t.elements,i=e.elements,s=this.elements,r=n[0],o=n[4],a=n[8],l=n[12],c=n[1],h=n[5],u=n[9],d=n[13],p=n[2],_=n[6],m=n[10],f=n[14],g=n[3],v=n[7],y=n[11],x=n[15],b=i[0],w=i[4],T=i[8],A=i[12],M=i[1],E=i[5],S=i[9],C=i[13],N=i[2],L=i[6],O=i[10],P=i[14],R=i[3],I=i[7],F=i[11],D=i[15];return s[0]=r*b+o*M+a*N+l*R,s[4]=r*w+o*E+a*L+l*I,s[8]=r*T+o*S+a*O+l*F,s[12]=r*A+o*C+a*P+l*D,s[1]=c*b+h*M+u*N+d*R,s[5]=c*w+h*E+u*L+d*I,s[9]=c*T+h*S+u*O+d*F,s[13]=c*A+h*C+u*P+d*D,s[2]=p*b+_*M+m*N+f*R,s[6]=p*w+_*E+m*L+f*I,s[10]=p*T+_*S+m*O+f*F,s[14]=p*A+_*C+m*P+f*D,s[3]=g*b+v*M+y*N+x*R,s[7]=g*w+v*E+y*L+x*I,s[11]=g*T+v*S+y*O+x*F,s[15]=g*A+v*C+y*P+x*D,this}multiplyScalar(t){const e=this.elements;return e[0]*=t,e[4]*=t,e[8]*=t,e[12]*=t,e[1]*=t,e[5]*=t,e[9]*=t,e[13]*=t,e[2]*=t,e[6]*=t,e[10]*=t,e[14]*=t,e[3]*=t,e[7]*=t,e[11]*=t,e[15]*=t,this}determinant(){const t=this.elements,e=t[0],n=t[4],i=t[8],s=t[12],r=t[1],o=t[5],a=t[9],l=t[13],c=t[2],h=t[6],u=t[10],d=t[14];return t[3]*(+s*a*h-i*l*h-s*o*u+n*l*u+i*o*d-n*a*d)+t[7]*(+e*a*d-e*l*u+s*r*u-i*r*d+i*l*c-s*a*c)+t[11]*(+e*l*h-e*o*d-s*r*h+n*r*d+s*o*c-n*l*c)+t[15]*(-i*o*c-e*a*h+e*o*u+i*r*h-n*r*u+n*a*c)}transpose(){const t=this.elements;let e;return e=t[1],t[1]=t[4],t[4]=e,e=t[2],t[2]=t[8],t[8]=e,e=t[6],t[6]=t[9],t[9]=e,e=t[3],t[3]=t[12],t[12]=e,e=t[7],t[7]=t[13],t[13]=e,e=t[11],t[11]=t[14],t[14]=e,this}setPosition(t,e,n){const i=this.elements;return t.isVector3?(i[12]=t.x,i[13]=t.y,i[14]=t.z):(i[12]=t,i[13]=e,i[14]=n),this}invert(){const t=this.elements,e=t[0],n=t[1],i=t[2],s=t[3],r=t[4],o=t[5],a=t[6],l=t[7],c=t[8],h=t[9],u=t[10],d=t[11],p=t[12],_=t[13],m=t[14],f=t[15],g=h*m*l-_*u*l+_*a*d-o*m*d-h*a*f+o*u*f,v=p*u*l-c*m*l-p*a*d+r*m*d+c*a*f-r*u*f,y=c*_*l-p*h*l+p*o*d-r*_*d-c*o*f+r*h*f,x=p*h*a-c*_*a-p*o*u+r*_*u+c*o*m-r*h*m,b=e*g+n*v+i*y+s*x;if(0===b)return this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);const w=1/b;return t[0]=g*w,t[1]=(_*u*s-h*m*s-_*i*d+n*m*d+h*i*f-n*u*f)*w,t[2]=(o*m*s-_*a*s+_*i*l-n*m*l-o*i*f+n*a*f)*w,t[3]=(h*a*s-o*u*s-h*i*l+n*u*l+o*i*d-n*a*d)*w,t[4]=v*w,t[5]=(c*m*s-p*u*s+p*i*d-e*m*d-c*i*f+e*u*f)*w,t[6]=(p*a*s-r*m*s-p*i*l+e*m*l+r*i*f-e*a*f)*w,t[7]=(r*u*s-c*a*s+c*i*l-e*u*l-r*i*d+e*a*d)*w,t[8]=y*w,t[9]=(p*h*s-c*_*s-p*n*d+e*_*d+c*n*f-e*h*f)*w,t[10]=(r*_*s-p*o*s+p*n*l-e*_*l-r*n*f+e*o*f)*w,t[11]=(c*o*s-r*h*s-c*n*l+e*h*l+r*n*d-e*o*d)*w,t[12]=x*w,t[13]=(c*_*i-p*h*i+p*n*u-e*_*u-c*n*m+e*h*m)*w,t[14]=(p*o*i-r*_*i-p*n*a+e*_*a+r*n*m-e*o*m)*w,t[15]=(r*h*i-c*o*i+c*n*a-e*h*a-r*n*u+e*o*u)*w,this}scale(t){const 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(){const t=this.elements,e=t[0]*t[0]+t[1]*t[1]+t[2]*t[2],n=t[4]*t[4]+t[5]*t[5]+t[6]*t[6],i=t[8]*t[8]+t[9]*t[9]+t[10]*t[10];return Math.sqrt(Math.max(e,n,i))}makeTranslation(t,e,n){return this.set(1,0,0,t,0,1,0,e,0,0,1,n,0,0,0,1),this}makeRotationX(t){const e=Math.cos(t),n=Math.sin(t);return this.set(1,0,0,0,0,e,-n,0,0,n,e,0,0,0,0,1),this}makeRotationY(t){const e=Math.cos(t),n=Math.sin(t);return this.set(e,0,n,0,0,1,0,0,-n,0,e,0,0,0,0,1),this}makeRotationZ(t){const e=Math.cos(t),n=Math.sin(t);return this.set(e,-n,0,0,n,e,0,0,0,0,1,0,0,0,0,1),this}makeRotationAxis(t,e){const n=Math.cos(e),i=Math.sin(e),s=1-n,r=t.x,o=t.y,a=t.z,l=s*r,c=s*o;return this.set(l*r+n,l*o-i*a,l*a+i*o,0,l*o+i*a,c*o+n,c*a-i*r,0,l*a-i*o,c*a+i*r,s*a*a+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,r){return this.set(1,n,s,0,t,1,r,0,e,i,1,0,0,0,0,1),this}compose(t,e,n){const i=this.elements,s=e._x,r=e._y,o=e._z,a=e._w,l=s+s,c=r+r,h=o+o,u=s*l,d=s*c,p=s*h,_=r*c,m=r*h,f=o*h,g=a*l,v=a*c,y=a*h,x=n.x,b=n.y,w=n.z;return i[0]=(1-(_+f))*x,i[1]=(d+y)*x,i[2]=(p-v)*x,i[3]=0,i[4]=(d-y)*b,i[5]=(1-(u+f))*b,i[6]=(m+g)*b,i[7]=0,i[8]=(p+v)*w,i[9]=(m-g)*w,i[10]=(1-(u+_))*w,i[11]=0,i[12]=t.x,i[13]=t.y,i[14]=t.z,i[15]=1,this}decompose(t,e,n){const i=this.elements;let s=rw.set(i[0],i[1],i[2]).length();const r=rw.set(i[4],i[5],i[6]).length(),o=rw.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],ow.copy(this);const a=1/s,l=1/r,c=1/o;return ow.elements[0]*=a,ow.elements[1]*=a,ow.elements[2]*=a,ow.elements[4]*=l,ow.elements[5]*=l,ow.elements[6]*=l,ow.elements[8]*=c,ow.elements[9]*=c,ow.elements[10]*=c,e.setFromRotationMatrix(ow),n.x=s,n.y=r,n.z=o,this}makePerspective(t,e,n,i,s,r){void 0===r&&console.warn(\\\\\\\"THREE.Matrix4: .makePerspective() has been redefined and has a new signature. Please check the docs.\\\\\\\");const o=this.elements,a=2*s/(e-t),l=2*s/(n-i),c=(e+t)/(e-t),h=(n+i)/(n-i),u=-(r+s)/(r-s),d=-2*r*s/(r-s);return o[0]=a,o[4]=0,o[8]=c,o[12]=0,o[1]=0,o[5]=l,o[9]=h,o[13]=0,o[2]=0,o[6]=0,o[10]=u,o[14]=d,o[3]=0,o[7]=0,o[11]=-1,o[15]=0,this}makeOrthographic(t,e,n,i,s,r){const o=this.elements,a=1/(e-t),l=1/(n-i),c=1/(r-s),h=(e+t)*a,u=(n+i)*l,d=(r+s)*c;return o[0]=2*a,o[4]=0,o[8]=0,o[12]=-h,o[1]=0,o[5]=2*l,o[9]=0,o[13]=-u,o[2]=0,o[6]=0,o[10]=-2*c,o[14]=-d,o[3]=0,o[7]=0,o[11]=0,o[15]=1,this}equals(t){const e=this.elements,n=t.elements;for(let t=0;t<16;t++)if(e[t]!==n[t])return!1;return!0}fromArray(t,e=0){for(let n=0;n<16;n++)this.elements[n]=t[n+e];return this}toArray(t=[],e=0){const n=this.elements;return t[e]=n[0],t[e+1]=n[1],t[e+2]=n[2],t[e+3]=n[3],t[e+4]=n[4],t[e+5]=n[5],t[e+6]=n[6],t[e+7]=n[7],t[e+8]=n[8],t[e+9]=n[9],t[e+10]=n[10],t[e+11]=n[11],t[e+12]=n[12],t[e+13]=n[13],t[e+14]=n[14],t[e+15]=n[15],t}}sw.prototype.isMatrix4=!0;const rw=new Sb,ow=new sw,aw=new Sb(0,0,0),lw=new Sb(1,1,1),cw=new Sb,hw=new Sb,uw=new Sb,dw=new sw,pw=new Eb;class _w{constructor(t=0,e=0,n=0,i=_w.DefaultOrder){this._x=t,this._y=e,this._z=n,this._order=i}get x(){return this._x}set x(t){this._x=t,this._onChangeCallback()}get y(){return this._y}set y(t){this._y=t,this._onChangeCallback()}get z(){return this._z}set z(t){this._z=t,this._onChangeCallback()}get order(){return this._order}set order(t){this._order=t,this._onChangeCallback()}set(t,e,n,i=this._order){return this._x=t,this._y=e,this._z=n,this._order=i,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._order)}copy(t){return this._x=t._x,this._y=t._y,this._z=t._z,this._order=t._order,this._onChangeCallback(),this}setFromRotationMatrix(t,e=this._order,n=!0){const i=t.elements,s=i[0],r=i[4],o=i[8],a=i[1],l=i[5],c=i[9],h=i[2],u=i[6],d=i[10];switch(e){case\\\\\\\"XYZ\\\\\\\":this._y=Math.asin(ab(o,-1,1)),Math.abs(o)<.9999999?(this._x=Math.atan2(-c,d),this._z=Math.atan2(-r,s)):(this._x=Math.atan2(u,l),this._z=0);break;case\\\\\\\"YXZ\\\\\\\":this._x=Math.asin(-ab(c,-1,1)),Math.abs(c)<.9999999?(this._y=Math.atan2(o,d),this._z=Math.atan2(a,l)):(this._y=Math.atan2(-h,s),this._z=0);break;case\\\\\\\"ZXY\\\\\\\":this._x=Math.asin(ab(u,-1,1)),Math.abs(u)<.9999999?(this._y=Math.atan2(-h,d),this._z=Math.atan2(-r,l)):(this._y=0,this._z=Math.atan2(a,s));break;case\\\\\\\"ZYX\\\\\\\":this._y=Math.asin(-ab(h,-1,1)),Math.abs(h)<.9999999?(this._x=Math.atan2(u,d),this._z=Math.atan2(a,s)):(this._x=0,this._z=Math.atan2(-r,l));break;case\\\\\\\"YZX\\\\\\\":this._z=Math.asin(ab(a,-1,1)),Math.abs(a)<.9999999?(this._x=Math.atan2(-c,l),this._y=Math.atan2(-h,s)):(this._x=0,this._y=Math.atan2(o,d));break;case\\\\\\\"XZY\\\\\\\":this._z=Math.asin(-ab(r,-1,1)),Math.abs(r)<.9999999?(this._x=Math.atan2(u,l),this._y=Math.atan2(o,s)):(this._x=Math.atan2(-c,d),this._y=0);break;default:console.warn(\\\\\\\"THREE.Euler: .setFromRotationMatrix() encountered an unknown order: \\\\\\\"+e)}return this._order=e,!0===n&&this._onChangeCallback(),this}setFromQuaternion(t,e,n){return dw.makeRotationFromQuaternion(t),this.setFromRotationMatrix(dw,e,n)}setFromVector3(t,e=this._order){return this.set(t.x,t.y,t.z,e)}reorder(t){return pw.setFromEuler(this),this.setFromQuaternion(pw,t)}equals(t){return t._x===this._x&&t._y===this._y&&t._z===this._z&&t._order===this._order}fromArray(t){return this._x=t[0],this._y=t[1],this._z=t[2],void 0!==t[3]&&(this._order=t[3]),this._onChangeCallback(),this}toArray(t=[],e=0){return t[e]=this._x,t[e+1]=this._y,t[e+2]=this._z,t[e+3]=this._order,t}toVector3(t){return t?t.set(this._x,this._y,this._z):new Sb(this._x,this._y,this._z)}_onChange(t){return this._onChangeCallback=t,this}_onChangeCallback(){}}_w.prototype.isEuler=!0,_w.DefaultOrder=\\\\\\\"XYZ\\\\\\\",_w.RotationOrders=[\\\\\\\"XYZ\\\\\\\",\\\\\\\"YZX\\\\\\\",\\\\\\\"ZXY\\\\\\\",\\\\\\\"XZY\\\\\\\",\\\\\\\"YXZ\\\\\\\",\\\\\\\"ZYX\\\\\\\"];class mw{constructor(){this.mask=1}set(t){this.mask=1<<t|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 0!=(this.mask&t.mask)}}let fw=0;const gw=new Sb,vw=new Eb,yw=new sw,xw=new Sb,bw=new Sb,ww=new Sb,Tw=new Eb,Aw=new Sb(1,0,0),Mw=new Sb(0,1,0),Ew=new Sb(0,0,1),Sw={type:\\\\\\\"added\\\\\\\"},Cw={type:\\\\\\\"removed\\\\\\\"};class Nw extends tb{constructor(){super(),Object.defineProperty(this,\\\\\\\"id\\\\\\\",{value:fw++}),this.uuid=ob(),this.name=\\\\\\\"\\\\\\\",this.type=\\\\\\\"Object3D\\\\\\\",this.parent=null,this.children=[],this.up=Nw.DefaultUp.clone();const t=new Sb,e=new _w,n=new Eb,i=new Sb(1,1,1);e._onChange((function(){n.setFromEuler(e,!1)})),n._onChange((function(){e.setFromQuaternion(n,void 0,!1)})),Object.defineProperties(this,{position:{configurable:!0,enumerable:!0,value:t},rotation:{configurable:!0,enumerable:!0,value:e},quaternion:{configurable:!0,enumerable:!0,value:n},scale:{configurable:!0,enumerable:!0,value:i},modelViewMatrix:{value:new sw},normalMatrix:{value:new mb}}),this.matrix=new sw,this.matrixWorld=new sw,this.matrixAutoUpdate=Nw.DefaultMatrixAutoUpdate,this.matrixWorldNeedsUpdate=!1,this.layers=new mw,this.visible=!0,this.castShadow=!1,this.receiveShadow=!1,this.frustumCulled=!0,this.renderOrder=0,this.animations=[],this.userData={}}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 vw.setFromAxisAngle(t,e),this.quaternion.multiply(vw),this}rotateOnWorldAxis(t,e){return vw.setFromAxisAngle(t,e),this.quaternion.premultiply(vw),this}rotateX(t){return this.rotateOnAxis(Aw,t)}rotateY(t){return this.rotateOnAxis(Mw,t)}rotateZ(t){return this.rotateOnAxis(Ew,t)}translateOnAxis(t,e){return gw.copy(t).applyQuaternion(this.quaternion),this.position.add(gw.multiplyScalar(e)),this}translateX(t){return this.translateOnAxis(Aw,t)}translateY(t){return this.translateOnAxis(Mw,t)}translateZ(t){return this.translateOnAxis(Ew,t)}localToWorld(t){return t.applyMatrix4(this.matrixWorld)}worldToLocal(t){return t.applyMatrix4(yw.copy(this.matrixWorld).invert())}lookAt(t,e,n){t.isVector3?xw.copy(t):xw.set(t,e,n);const i=this.parent;this.updateWorldMatrix(!0,!1),bw.setFromMatrixPosition(this.matrixWorld),this.isCamera||this.isLight?yw.lookAt(bw,xw,this.up):yw.lookAt(xw,bw,this.up),this.quaternion.setFromRotationMatrix(yw),i&&(yw.extractRotation(i.matrixWorld),vw.setFromRotationMatrix(yw),this.quaternion.premultiply(vw.invert()))}add(t){if(arguments.length>1){for(let t=0;t<arguments.length;t++)this.add(arguments[t]);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?(null!==t.parent&&t.parent.remove(t),t.parent=this,this.children.push(t),t.dispatchEvent(Sw)):console.error(\\\\\\\"THREE.Object3D.add: object not an instance of THREE.Object3D.\\\\\\\",t),this)}remove(t){if(arguments.length>1){for(let t=0;t<arguments.length;t++)this.remove(arguments[t]);return this}const e=this.children.indexOf(t);return-1!==e&&(t.parent=null,this.children.splice(e,1),t.dispatchEvent(Cw)),this}removeFromParent(){const t=this.parent;return null!==t&&t.remove(this),this}clear(){for(let t=0;t<this.children.length;t++){const e=this.children[t];e.parent=null,e.dispatchEvent(Cw)}return this.children.length=0,this}attach(t){return this.updateWorldMatrix(!0,!1),yw.copy(this.matrixWorld).invert(),null!==t.parent&&(t.parent.updateWorldMatrix(!0,!1),yw.multiply(t.parent.matrixWorld)),t.applyMatrix4(yw),this.add(t),t.updateWorldMatrix(!1,!0),this}getObjectById(t){return this.getObjectByProperty(\\\\\\\"id\\\\\\\",t)}getObjectByName(t){return this.getObjectByProperty(\\\\\\\"name\\\\\\\",t)}getObjectByProperty(t,e){if(this[t]===e)return this;for(let n=0,i=this.children.length;n<i;n++){const i=this.children[n].getObjectByProperty(t,e);if(void 0!==i)return i}}getWorldPosition(t){return this.updateWorldMatrix(!0,!1),t.setFromMatrixPosition(this.matrixWorld)}getWorldQuaternion(t){return this.updateWorldMatrix(!0,!1),this.matrixWorld.decompose(bw,t,ww),t}getWorldScale(t){return this.updateWorldMatrix(!0,!1),this.matrixWorld.decompose(bw,Tw,t),t}getWorldDirection(t){this.updateWorldMatrix(!0,!1);const e=this.matrixWorld.elements;return t.set(e[8],e[9],e[10]).normalize()}raycast(){}traverse(t){t(this);const e=this.children;for(let n=0,i=e.length;n<i;n++)e[n].traverse(t)}traverseVisible(t){if(!1===this.visible)return;t(this);const e=this.children;for(let n=0,i=e.length;n<i;n++)e[n].traverseVisible(t)}traverseAncestors(t){const e=this.parent;null!==e&&(t(e),e.traverseAncestors(t))}updateMatrix(){this.matrix.compose(this.position,this.quaternion,this.scale),this.matrixWorldNeedsUpdate=!0}updateMatrixWorld(t){this.matrixAutoUpdate&&this.updateMatrix(),(this.matrixWorldNeedsUpdate||t)&&(null===this.parent?this.matrixWorld.copy(this.matrix):this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.matrix),this.matrixWorldNeedsUpdate=!1,t=!0);const e=this.children;for(let n=0,i=e.length;n<i;n++)e[n].updateMatrixWorld(t)}updateWorldMatrix(t,e){const n=this.parent;if(!0===t&&null!==n&&n.updateWorldMatrix(!0,!1),this.matrixAutoUpdate&&this.updateMatrix(),null===this.parent?this.matrixWorld.copy(this.matrix):this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.matrix),!0===e){const t=this.children;for(let e=0,n=t.length;e<n;e++)t[e].updateWorldMatrix(!1,!0)}}toJSON(t){const e=void 0===t||\\\\\\\"string\\\\\\\"==typeof t,n={};e&&(t={geometries:{},materials:{},textures:{},images:{},shapes:{},skeletons:{},animations:{}},n.metadata={version:4.5,type:\\\\\\\"Object\\\\\\\",generator:\\\\\\\"Object3D.toJSON\\\\\\\"});const i={};function s(e,n){return void 0===e[n.uuid]&&(e[n.uuid]=n.toJSON(t)),n.uuid}if(i.uuid=this.uuid,i.type=this.type,\\\\\\\"\\\\\\\"!==this.name&&(i.name=this.name),!0===this.castShadow&&(i.castShadow=!0),!0===this.receiveShadow&&(i.receiveShadow=!0),!1===this.visible&&(i.visible=!1),!1===this.frustumCulled&&(i.frustumCulled=!1),0!==this.renderOrder&&(i.renderOrder=this.renderOrder),\\\\\\\"{}\\\\\\\"!==JSON.stringify(this.userData)&&(i.userData=this.userData),i.layers=this.layers.mask,i.matrix=this.matrix.toArray(),!1===this.matrixAutoUpdate&&(i.matrixAutoUpdate=!1),this.isInstancedMesh&&(i.type=\\\\\\\"InstancedMesh\\\\\\\",i.count=this.count,i.instanceMatrix=this.instanceMatrix.toJSON(),null!==this.instanceColor&&(i.instanceColor=this.instanceColor.toJSON())),this.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&&(i.environment=this.environment.toJSON(t).uuid);else if(this.isMesh||this.isLine||this.isPoints){i.geometry=s(t.geometries,this.geometry);const e=this.geometry.parameters;if(void 0!==e&&void 0!==e.shapes){const n=e.shapes;if(Array.isArray(n))for(let e=0,i=n.length;e<i;e++){const i=n[e];s(t.shapes,i)}else s(t.shapes,n)}}if(this.isSkinnedMesh&&(i.bindMode=this.bindMode,i.bindMatrix=this.bindMatrix.toArray(),void 0!==this.skeleton&&(s(t.skeletons,this.skeleton),i.skeleton=this.skeleton.uuid)),void 0!==this.material)if(Array.isArray(this.material)){const e=[];for(let n=0,i=this.material.length;n<i;n++)e.push(s(t.materials,this.material[n]));i.material=e}else i.material=s(t.materials,this.material);if(this.children.length>0){i.children=[];for(let e=0;e<this.children.length;e++)i.children.push(this.children[e].toJSON(t).object)}if(this.animations.length>0){i.animations=[];for(let e=0;e<this.animations.length;e++){const n=this.animations[e];i.animations.push(s(t.animations,n))}}if(e){const e=r(t.geometries),i=r(t.materials),s=r(t.textures),o=r(t.images),a=r(t.shapes),l=r(t.skeletons),c=r(t.animations);e.length>0&&(n.geometries=e),i.length>0&&(n.materials=i),s.length>0&&(n.textures=s),o.length>0&&(n.images=o),a.length>0&&(n.shapes=a),l.length>0&&(n.skeletons=l),c.length>0&&(n.animations=c)}return n.object=i,n;function r(t){const e=[];for(const n in t){const i=t[n];delete i.metadata,e.push(i)}return e}}clone(t){return(new this.constructor).copy(this,t)}copy(t,e=!0){if(this.name=t.name,this.up.copy(t.up),this.position.copy(t.position),this.rotation.order=t.rotation.order,this.quaternion.copy(t.quaternion),this.scale.copy(t.scale),this.matrix.copy(t.matrix),this.matrixWorld.copy(t.matrixWorld),this.matrixAutoUpdate=t.matrixAutoUpdate,this.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.userData=JSON.parse(JSON.stringify(t.userData)),!0===e)for(let e=0;e<t.children.length;e++){const n=t.children[e];this.add(n.clone())}return this}}Nw.DefaultUp=new Sb(0,1,0),Nw.DefaultMatrixAutoUpdate=!0,Nw.prototype.isObject3D=!0;const Lw=new Sb,Ow=new Sb,Pw=new Sb,Rw=new Sb,Iw=new Sb,Fw=new Sb,Dw=new Sb,Bw=new Sb,zw=new Sb,kw=new Sb;class Uw{constructor(t=new Sb,e=new Sb,n=new Sb){this.a=t,this.b=e,this.c=n}static getNormal(t,e,n,i){i.subVectors(n,e),Lw.subVectors(t,e),i.cross(Lw);const s=i.lengthSq();return s>0?i.multiplyScalar(1/Math.sqrt(s)):i.set(0,0,0)}static getBarycoord(t,e,n,i,s){Lw.subVectors(i,e),Ow.subVectors(n,e),Pw.subVectors(t,e);const r=Lw.dot(Lw),o=Lw.dot(Ow),a=Lw.dot(Pw),l=Ow.dot(Ow),c=Ow.dot(Pw),h=r*l-o*o;if(0===h)return s.set(-2,-1,-1);const u=1/h,d=(l*a-o*c)*u,p=(r*c-o*a)*u;return s.set(1-d-p,p,d)}static containsPoint(t,e,n,i){return this.getBarycoord(t,e,n,i,Rw),Rw.x>=0&&Rw.y>=0&&Rw.x+Rw.y<=1}static getUV(t,e,n,i,s,r,o,a){return this.getBarycoord(t,e,n,i,Rw),a.set(0,0),a.addScaledVector(s,Rw.x),a.addScaledVector(r,Rw.y),a.addScaledVector(o,Rw.z),a}static isFrontFacing(t,e,n,i){return Lw.subVectors(n,e),Ow.subVectors(t,e),Lw.cross(Ow).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 Lw.subVectors(this.c,this.b),Ow.subVectors(this.a,this.b),.5*Lw.cross(Ow).length()}getMidpoint(t){return t.addVectors(this.a,this.b).add(this.c).multiplyScalar(1/3)}getNormal(t){return Uw.getNormal(this.a,this.b,this.c,t)}getPlane(t){return t.setFromCoplanarPoints(this.a,this.b,this.c)}getBarycoord(t,e){return Uw.getBarycoord(t,this.a,this.b,this.c,e)}getUV(t,e,n,i,s){return Uw.getUV(t,this.a,this.b,this.c,e,n,i,s)}containsPoint(t){return Uw.containsPoint(t,this.a,this.b,this.c)}isFrontFacing(t){return Uw.isFrontFacing(this.a,this.b,this.c,t)}intersectsBox(t){return t.intersectsTriangle(this)}closestPointToPoint(t,e){const n=this.a,i=this.b,s=this.c;let r,o;Iw.subVectors(i,n),Fw.subVectors(s,n),Bw.subVectors(t,n);const a=Iw.dot(Bw),l=Fw.dot(Bw);if(a<=0&&l<=0)return e.copy(n);zw.subVectors(t,i);const c=Iw.dot(zw),h=Fw.dot(zw);if(c>=0&&h<=c)return e.copy(i);const u=a*h-c*l;if(u<=0&&a>=0&&c<=0)return r=a/(a-c),e.copy(n).addScaledVector(Iw,r);kw.subVectors(t,s);const d=Iw.dot(kw),p=Fw.dot(kw);if(p>=0&&d<=p)return e.copy(s);const _=d*l-a*p;if(_<=0&&l>=0&&p<=0)return o=l/(l-p),e.copy(n).addScaledVector(Fw,o);const m=c*p-d*h;if(m<=0&&h-c>=0&&d-p>=0)return Dw.subVectors(s,i),o=(h-c)/(h-c+(d-p)),e.copy(i).addScaledVector(Dw,o);const f=1/(m+_+u);return r=_*f,o=u*f,e.copy(n).addScaledVector(Iw,r).addScaledVector(Fw,o)}equals(t){return t.a.equals(this.a)&&t.b.equals(this.b)&&t.c.equals(this.c)}}let Gw=0;class Vw extends tb{constructor(){super(),Object.defineProperty(this,\\\\\\\"id\\\\\\\",{value:Gw++}),this.uuid=ob(),this.name=\\\\\\\"\\\\\\\",this.type=\\\\\\\"Material\\\\\\\",this.fog=!0,this.blending=1,this.side=0,this.vertexColors=!1,this.opacity=1,this.format=Dx,this.transparent=!1,this.blendSrc=204,this.blendDst=205,this.blendEquation=px,this.blendSrcAlpha=null,this.blendDstAlpha=null,this.blendEquationAlpha=null,this.depthFunc=3,this.depthTest=!0,this.depthWrite=!0,this.stencilWriteMask=255,this.stencilFunc=519,this.stencilRef=0,this.stencilFuncMask=255,this.stencilFail=Jx,this.stencilZFail=Jx,this.stencilZPass=Jx,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.visible=!0,this.toneMapped=!0,this.userData={},this.version=0,this._alphaTest=0}get alphaTest(){return this._alphaTest}set alphaTest(t){this._alphaTest>0!=t>0&&this.version++,this._alphaTest=t}onBuild(){}onBeforeRender(){}onBeforeCompile(){}customProgramCacheKey(){return this.onBeforeCompile.toString()}setValues(t){if(void 0!==t)for(const e in t){const n=t[e];if(void 0===n){console.warn(\\\\\\\"THREE.Material: '\\\\\\\"+e+\\\\\\\"' parameter is undefined.\\\\\\\");continue}if(\\\\\\\"shading\\\\\\\"===e){console.warn(\\\\\\\"THREE.\\\\\\\"+this.type+\\\\\\\": .shading has been removed. Use the boolean .flatShading instead.\\\\\\\"),this.flatShading=1===n;continue}const i=this[e];void 0!==i?i&&i.isColor?i.set(n):i&&i.isVector3&&n&&n.isVector3?i.copy(n):this[e]=n:console.warn(\\\\\\\"THREE.\\\\\\\"+this.type+\\\\\\\": '\\\\\\\"+e+\\\\\\\"' is not a property of this material.\\\\\\\")}}toJSON(t){const e=void 0===t||\\\\\\\"string\\\\\\\"==typeof t;e&&(t={textures:{},images:{}});const n={metadata:{version:4.5,type:\\\\\\\"Material\\\\\\\",generator:\\\\\\\"Material.toJSON\\\\\\\"}};function i(t){const e=[];for(const n in t){const i=t[n];delete i.metadata,e.push(i)}return e}if(n.uuid=this.uuid,n.type=this.type,\\\\\\\"\\\\\\\"!==this.name&&(n.name=this.name),this.color&&this.color.isColor&&(n.color=this.color.getHex()),void 0!==this.roughness&&(n.roughness=this.roughness),void 0!==this.metalness&&(n.metalness=this.metalness),void 0!==this.sheen&&(n.sheen=this.sheen),this.sheenTint&&this.sheenTint.isColor&&(n.sheenTint=this.sheenTint.getHex()),void 0!==this.sheenRoughness&&(n.sheenRoughness=this.sheenRoughness),this.emissive&&this.emissive.isColor&&(n.emissive=this.emissive.getHex()),this.emissiveIntensity&&1!==this.emissiveIntensity&&(n.emissiveIntensity=this.emissiveIntensity),this.specular&&this.specular.isColor&&(n.specular=this.specular.getHex()),void 0!==this.specularIntensity&&(n.specularIntensity=this.specularIntensity),this.specularTint&&this.specularTint.isColor&&(n.specularTint=this.specularTint.getHex()),void 0!==this.shininess&&(n.shininess=this.shininess),void 0!==this.clearcoat&&(n.clearcoat=this.clearcoat),void 0!==this.clearcoatRoughness&&(n.clearcoatRoughness=this.clearcoatRoughness),this.clearcoatMap&&this.clearcoatMap.isTexture&&(n.clearcoatMap=this.clearcoatMap.toJSON(t).uuid),this.clearcoatRoughnessMap&&this.clearcoatRoughnessMap.isTexture&&(n.clearcoatRoughnessMap=this.clearcoatRoughnessMap.toJSON(t).uuid),this.clearcoatNormalMap&&this.clearcoatNormalMap.isTexture&&(n.clearcoatNormalMap=this.clearcoatNormalMap.toJSON(t).uuid,n.clearcoatNormalScale=this.clearcoatNormalScale.toArray()),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.specularTintMap&&this.specularTintMap.isTexture&&(n.specularTintMap=this.specularTintMap.toJSON(t).uuid),this.envMap&&this.envMap.isTexture&&(n.envMap=this.envMap.toJSON(t).uuid,void 0!==this.combine&&(n.combine=this.combine)),void 0!==this.envMapIntensity&&(n.envMapIntensity=this.envMapIntensity),void 0!==this.reflectivity&&(n.reflectivity=this.reflectivity),void 0!==this.refractionRatio&&(n.refractionRatio=this.refractionRatio),this.gradientMap&&this.gradientMap.isTexture&&(n.gradientMap=this.gradientMap.toJSON(t).uuid),void 0!==this.transmission&&(n.transmission=this.transmission),this.transmissionMap&&this.transmissionMap.isTexture&&(n.transmissionMap=this.transmissionMap.toJSON(t).uuid),void 0!==this.thickness&&(n.thickness=this.thickness),this.thicknessMap&&this.thicknessMap.isTexture&&(n.thicknessMap=this.thicknessMap.toJSON(t).uuid),void 0!==this.attenuationDistance&&(n.attenuationDistance=this.attenuationDistance),void 0!==this.attenuationTint&&(n.attenuationTint=this.attenuationTint.getHex()),void 0!==this.size&&(n.size=this.size),null!==this.shadowSide&&(n.shadowSide=this.shadowSide),void 0!==this.sizeAttenuation&&(n.sizeAttenuation=this.sizeAttenuation),1!==this.blending&&(n.blending=this.blending),0!==this.side&&(n.side=this.side),this.vertexColors&&(n.vertexColors=!0),this.opacity<1&&(n.opacity=this.opacity),this.format!==Dx&&(n.format=this.format),!0===this.transparent&&(n.transparent=this.transparent),n.depthFunc=this.depthFunc,n.depthTest=this.depthTest,n.depthWrite=this.depthWrite,n.colorWrite=this.colorWrite,n.stencilWrite=this.stencilWrite,n.stencilWriteMask=this.stencilWriteMask,n.stencilFunc=this.stencilFunc,n.stencilRef=this.stencilRef,n.stencilFuncMask=this.stencilFuncMask,n.stencilFail=this.stencilFail,n.stencilZFail=this.stencilZFail,n.stencilZPass=this.stencilZPass,this.rotation&&0!==this.rotation&&(n.rotation=this.rotation),!0===this.polygonOffset&&(n.polygonOffset=!0),0!==this.polygonOffsetFactor&&(n.polygonOffsetFactor=this.polygonOffsetFactor),0!==this.polygonOffsetUnits&&(n.polygonOffsetUnits=this.polygonOffsetUnits),this.linewidth&&1!==this.linewidth&&(n.linewidth=this.linewidth),void 0!==this.dashSize&&(n.dashSize=this.dashSize),void 0!==this.gapSize&&(n.gapSize=this.gapSize),void 0!==this.scale&&(n.scale=this.scale),!0===this.dithering&&(n.dithering=!0),this.alphaTest>0&&(n.alphaTest=this.alphaTest),!0===this.alphaToCoverage&&(n.alphaToCoverage=this.alphaToCoverage),!0===this.premultipliedAlpha&&(n.premultipliedAlpha=this.premultipliedAlpha),!0===this.wireframe&&(n.wireframe=this.wireframe),this.wireframeLinewidth>1&&(n.wireframeLinewidth=this.wireframeLinewidth),\\\\\\\"round\\\\\\\"!==this.wireframeLinecap&&(n.wireframeLinecap=this.wireframeLinecap),\\\\\\\"round\\\\\\\"!==this.wireframeLinejoin&&(n.wireframeLinejoin=this.wireframeLinejoin),!0===this.flatShading&&(n.flatShading=this.flatShading),!1===this.visible&&(n.visible=!1),!1===this.toneMapped&&(n.toneMapped=!1),\\\\\\\"{}\\\\\\\"!==JSON.stringify(this.userData)&&(n.userData=this.userData),e){const e=i(t.textures),s=i(t.images);e.length>0&&(n.textures=e),s.length>0&&(n.images=s)}return n}clone(){return(new this.constructor).copy(this)}copy(t){this.name=t.name,this.fog=t.fog,this.blending=t.blending,this.side=t.side,this.vertexColors=t.vertexColors,this.opacity=t.opacity,this.format=t.format,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.depthFunc=t.depthFunc,this.depthTest=t.depthTest,this.depthWrite=t.depthWrite,this.stencilWriteMask=t.stencilWriteMask,this.stencilFunc=t.stencilFunc,this.stencilRef=t.stencilRef,this.stencilFuncMask=t.stencilFuncMask,this.stencilFail=t.stencilFail,this.stencilZFail=t.stencilZFail,this.stencilZPass=t.stencilZPass,this.stencilWrite=t.stencilWrite;const e=t.clippingPlanes;let n=null;if(null!==e){const t=e.length;n=new Array(t);for(let i=0;i!==t;++i)n[i]=e[i].clone()}return this.clippingPlanes=n,this.clipIntersection=t.clipIntersection,this.clipShadows=t.clipShadows,this.shadowSide=t.shadowSide,this.colorWrite=t.colorWrite,this.precision=t.precision,this.polygonOffset=t.polygonOffset,this.polygonOffsetFactor=t.polygonOffsetFactor,this.polygonOffsetUnits=t.polygonOffsetUnits,this.dithering=t.dithering,this.alphaTest=t.alphaTest,this.alphaToCoverage=t.alphaToCoverage,this.premultipliedAlpha=t.premultipliedAlpha,this.visible=t.visible,this.toneMapped=t.toneMapped,this.userData=JSON.parse(JSON.stringify(t.userData)),this}dispose(){this.dispatchEvent({type:\\\\\\\"dispose\\\\\\\"})}set needsUpdate(t){!0===t&&this.version++}}Vw.prototype.isMaterial=!0;const Hw={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},jw={h:0,s:0,l:0},Ww={h:0,s:0,l:0};function qw(t,e,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?t+6*(e-t)*n:n<.5?e:n<2/3?t+6*(e-t)*(2/3-n):t}function Xw(t){return t<.04045?.0773993808*t:Math.pow(.9478672986*t+.0521327014,2.4)}function Yw(t){return t<.0031308?12.92*t:1.055*Math.pow(t,.41666)-.055}class $w{constructor(t,e,n){return void 0===e&&void 0===n?this.set(t):this.setRGB(t,e,n)}set(t){return t&&t.isColor?this.copy(t):\\\\\\\"number\\\\\\\"==typeof t?this.setHex(t):\\\\\\\"string\\\\\\\"==typeof t&&this.setStyle(t),this}setScalar(t){return this.r=t,this.g=t,this.b=t,this}setHex(t){return t=Math.floor(t),this.r=(t>>16&255)/255,this.g=(t>>8&255)/255,this.b=(255&t)/255,this}setRGB(t,e,n){return this.r=t,this.g=e,this.b=n,this}setHSL(t,e,n){if(t=lb(t,1),e=ab(e,0,1),n=ab(n,0,1),0===e)this.r=this.g=this.b=n;else{const i=n<=.5?n*(1+e):n+e-n*e,s=2*n-i;this.r=qw(s,i,t+1/3),this.g=qw(s,i,t),this.b=qw(s,i,t-1/3)}return this}setStyle(t){function e(e){void 0!==e&&parseFloat(e)<1&&console.warn(\\\\\\\"THREE.Color: Alpha component of \\\\\\\"+t+\\\\\\\" will be ignored.\\\\\\\")}let n;if(n=/^((?:rgb|hsl)a?)\\\\(([^\\\\)]*)\\\\)/.exec(t)){let t;const i=n[1],s=n[2];switch(i){case\\\\\\\"rgb\\\\\\\":case\\\\\\\"rgba\\\\\\\":if(t=/^\\\\s*(\\\\d+)\\\\s*,\\\\s*(\\\\d+)\\\\s*,\\\\s*(\\\\d+)\\\\s*(?:,\\\\s*(\\\\d*\\\\.?\\\\d+)\\\\s*)?$/.exec(s))return this.r=Math.min(255,parseInt(t[1],10))/255,this.g=Math.min(255,parseInt(t[2],10))/255,this.b=Math.min(255,parseInt(t[3],10))/255,e(t[4]),this;if(t=/^\\\\s*(\\\\d+)\\\\%\\\\s*,\\\\s*(\\\\d+)\\\\%\\\\s*,\\\\s*(\\\\d+)\\\\%\\\\s*(?:,\\\\s*(\\\\d*\\\\.?\\\\d+)\\\\s*)?$/.exec(s))return this.r=Math.min(100,parseInt(t[1],10))/100,this.g=Math.min(100,parseInt(t[2],10))/100,this.b=Math.min(100,parseInt(t[3],10))/100,e(t[4]),this;break;case\\\\\\\"hsl\\\\\\\":case\\\\\\\"hsla\\\\\\\":if(t=/^\\\\s*(\\\\d*\\\\.?\\\\d+)\\\\s*,\\\\s*(\\\\d+)\\\\%\\\\s*,\\\\s*(\\\\d+)\\\\%\\\\s*(?:,\\\\s*(\\\\d*\\\\.?\\\\d+)\\\\s*)?$/.exec(s)){const n=parseFloat(t[1])/360,i=parseInt(t[2],10)/100,s=parseInt(t[3],10)/100;return e(t[4]),this.setHSL(n,i,s)}}}else if(n=/^\\\\#([A-Fa-f\\\\d]+)$/.exec(t)){const t=n[1],e=t.length;if(3===e)return this.r=parseInt(t.charAt(0)+t.charAt(0),16)/255,this.g=parseInt(t.charAt(1)+t.charAt(1),16)/255,this.b=parseInt(t.charAt(2)+t.charAt(2),16)/255,this;if(6===e)return this.r=parseInt(t.charAt(0)+t.charAt(1),16)/255,this.g=parseInt(t.charAt(2)+t.charAt(3),16)/255,this.b=parseInt(t.charAt(4)+t.charAt(5),16)/255,this}return t&&t.length>0?this.setColorName(t):this}setColorName(t){const e=Hw[t.toLowerCase()];return void 0!==e?this.setHex(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}copyGammaToLinear(t,e=2){return this.r=Math.pow(t.r,e),this.g=Math.pow(t.g,e),this.b=Math.pow(t.b,e),this}copyLinearToGamma(t,e=2){const n=e>0?1/e:1;return this.r=Math.pow(t.r,n),this.g=Math.pow(t.g,n),this.b=Math.pow(t.b,n),this}convertGammaToLinear(t){return this.copyGammaToLinear(this,t),this}convertLinearToGamma(t){return this.copyLinearToGamma(this,t),this}copySRGBToLinear(t){return this.r=Xw(t.r),this.g=Xw(t.g),this.b=Xw(t.b),this}copyLinearToSRGB(t){return this.r=Yw(t.r),this.g=Yw(t.g),this.b=Yw(t.b),this}convertSRGBToLinear(){return this.copySRGBToLinear(this),this}convertLinearToSRGB(){return this.copyLinearToSRGB(this),this}getHex(){return 255*this.r<<16^255*this.g<<8^255*this.b<<0}getHexString(){return(\\\\\\\"000000\\\\\\\"+this.getHex().toString(16)).slice(-6)}getHSL(t){const e=this.r,n=this.g,i=this.b,s=Math.max(e,n,i),r=Math.min(e,n,i);let o,a;const l=(r+s)/2;if(r===s)o=0,a=0;else{const t=s-r;switch(a=l<=.5?t/(s+r):t/(2-s-r),s){case e:o=(n-i)/t+(n<i?6:0);break;case n:o=(i-e)/t+2;break;case i:o=(e-n)/t+4}o/=6}return t.h=o,t.s=a,t.l=l,t}getStyle(){return\\\\\\\"rgb(\\\\\\\"+(255*this.r|0)+\\\\\\\",\\\\\\\"+(255*this.g|0)+\\\\\\\",\\\\\\\"+(255*this.b|0)+\\\\\\\")\\\\\\\"}offsetHSL(t,e,n){return this.getHSL(jw),jw.h+=t,jw.s+=e,jw.l+=n,this.setHSL(jw.h,jw.s,jw.l),this}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(jw),t.getHSL(Ww);const n=cb(jw.h,Ww.h,e),i=cb(jw.s,Ww.s,e),s=cb(jw.l,Ww.l,e);return this.setHSL(n,i,s),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),!0===t.normalized&&(this.r/=255,this.g/=255,this.b/=255),this}toJSON(){return this.getHex()}}$w.NAMES=Hw,$w.prototype.isColor=!0,$w.prototype.r=1,$w.prototype.g=1,$w.prototype.b=1;class Jw extends Vw{constructor(t){super(),this.type=\\\\\\\"MeshBasicMaterial\\\\\\\",this.color=new $w(16777215),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.combine=0,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap=\\\\\\\"round\\\\\\\",this.wireframeLinejoin=\\\\\\\"round\\\\\\\",this.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}}Jw.prototype.isMeshBasicMaterial=!0;const Zw=new Sb,Kw=new _b;class Qw{constructor(t,e,n){if(Array.isArray(t))throw new TypeError(\\\\\\\"THREE.BufferAttribute: array should be a Typed Array.\\\\\\\");this.name=\\\\\\\"\\\\\\\",this.array=t,this.itemSize=e,this.count=void 0!==t?t.length/e:0,this.normalized=!0===n,this.usage=Zx,this.updateRange={offset:0,count:-1},this.version=0}onUploadCallback(){}set needsUpdate(t){!0===t&&this.version++}setUsage(t){return this.usage=t,this}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}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}copyColorsArray(t){const e=this.array;let n=0;for(let i=0,s=t.length;i<s;i++){let s=t[i];void 0===s&&(console.warn(\\\\\\\"THREE.BufferAttribute.copyColorsArray(): color is undefined\\\\\\\",i),s=new $w),e[n++]=s.r,e[n++]=s.g,e[n++]=s.b}return this}copyVector2sArray(t){const e=this.array;let n=0;for(let i=0,s=t.length;i<s;i++){let s=t[i];void 0===s&&(console.warn(\\\\\\\"THREE.BufferAttribute.copyVector2sArray(): vector is undefined\\\\\\\",i),s=new _b),e[n++]=s.x,e[n++]=s.y}return this}copyVector3sArray(t){const e=this.array;let n=0;for(let i=0,s=t.length;i<s;i++){let s=t[i];void 0===s&&(console.warn(\\\\\\\"THREE.BufferAttribute.copyVector3sArray(): vector is undefined\\\\\\\",i),s=new Sb),e[n++]=s.x,e[n++]=s.y,e[n++]=s.z}return this}copyVector4sArray(t){const e=this.array;let n=0;for(let i=0,s=t.length;i<s;i++){let s=t[i];void 0===s&&(console.warn(\\\\\\\"THREE.BufferAttribute.copyVector4sArray(): vector is undefined\\\\\\\",i),s=new Tb),e[n++]=s.x,e[n++]=s.y,e[n++]=s.z,e[n++]=s.w}return this}applyMatrix3(t){if(2===this.itemSize)for(let e=0,n=this.count;e<n;e++)Kw.fromBufferAttribute(this,e),Kw.applyMatrix3(t),this.setXY(e,Kw.x,Kw.y);else if(3===this.itemSize)for(let e=0,n=this.count;e<n;e++)Zw.fromBufferAttribute(this,e),Zw.applyMatrix3(t),this.setXYZ(e,Zw.x,Zw.y,Zw.z);return this}applyMatrix4(t){for(let e=0,n=this.count;e<n;e++)Zw.x=this.getX(e),Zw.y=this.getY(e),Zw.z=this.getZ(e),Zw.applyMatrix4(t),this.setXYZ(e,Zw.x,Zw.y,Zw.z);return this}applyNormalMatrix(t){for(let e=0,n=this.count;e<n;e++)Zw.x=this.getX(e),Zw.y=this.getY(e),Zw.z=this.getZ(e),Zw.applyNormalMatrix(t),this.setXYZ(e,Zw.x,Zw.y,Zw.z);return this}transformDirection(t){for(let e=0,n=this.count;e<n;e++)Zw.x=this.getX(e),Zw.y=this.getY(e),Zw.z=this.getZ(e),Zw.transformDirection(t),this.setXYZ(e,Zw.x,Zw.y,Zw.z);return this}set(t,e=0){return this.array.set(t,e),this}getX(t){return this.array[t*this.itemSize]}setX(t,e){return this.array[t*this.itemSize]=e,this}getY(t){return this.array[t*this.itemSize+1]}setY(t,e){return this.array[t*this.itemSize+1]=e,this}getZ(t){return this.array[t*this.itemSize+2]}setZ(t,e){return this.array[t*this.itemSize+2]=e,this}getW(t){return this.array[t*this.itemSize+3]}setW(t,e){return this.array[t*this.itemSize+3]=e,this}setXY(t,e,n){return t*=this.itemSize,this.array[t+0]=e,this.array[t+1]=n,this}setXYZ(t,e,n,i){return t*=this.itemSize,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.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(){const t={itemSize:this.itemSize,type:this.array.constructor.name,array:Array.prototype.slice.call(this.array),normalized:this.normalized};return\\\\\\\"\\\\\\\"!==this.name&&(t.name=this.name),this.usage!==Zx&&(t.usage=this.usage),0===this.updateRange.offset&&-1===this.updateRange.count||(t.updateRange=this.updateRange),t}}Qw.prototype.isBufferAttribute=!0;class tT extends Qw{constructor(t,e,n){super(new Uint16Array(t),e,n)}}class eT extends Qw{constructor(t,e,n){super(new Uint32Array(t),e,n)}}(class extends Qw{constructor(t,e,n){super(new Uint16Array(t),e,n)}}).prototype.isFloat16BufferAttribute=!0;class nT extends Qw{constructor(t,e,n){super(new Float32Array(t),e,n)}}let iT=0;const sT=new sw,rT=new Nw,oT=new Sb,aT=new Lb,lT=new Lb,cT=new Sb;class hT extends tb{constructor(){super(),Object.defineProperty(this,\\\\\\\"id\\\\\\\",{value:iT++}),this.uuid=ob(),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(fb(t)>65535?eT:tT)(t,1):this.index=t,this}getAttribute(t){return this.attributes[t]}setAttribute(t,e){return this.attributes[t]=e,this}deleteAttribute(t){return delete this.attributes[t],this}hasAttribute(t){return void 0!==this.attributes[t]}addGroup(t,e,n=0){this.groups.push({start:t,count:e,materialIndex:n})}clearGroups(){this.groups=[]}setDrawRange(t,e){this.drawRange.start=t,this.drawRange.count=e}applyMatrix4(t){const e=this.attributes.position;void 0!==e&&(e.applyMatrix4(t),e.needsUpdate=!0);const n=this.attributes.normal;if(void 0!==n){const e=(new mb).getNormalMatrix(t);n.applyNormalMatrix(e),n.needsUpdate=!0}const i=this.attributes.tangent;return void 0!==i&&(i.transformDirection(t),i.needsUpdate=!0),null!==this.boundingBox&&this.computeBoundingBox(),null!==this.boundingSphere&&this.computeBoundingSphere(),this}applyQuaternion(t){return sT.makeRotationFromQuaternion(t),this.applyMatrix4(sT),this}rotateX(t){return sT.makeRotationX(t),this.applyMatrix4(sT),this}rotateY(t){return sT.makeRotationY(t),this.applyMatrix4(sT),this}rotateZ(t){return sT.makeRotationZ(t),this.applyMatrix4(sT),this}translate(t,e,n){return sT.makeTranslation(t,e,n),this.applyMatrix4(sT),this}scale(t,e,n){return sT.makeScale(t,e,n),this.applyMatrix4(sT),this}lookAt(t){return rT.lookAt(t),rT.updateMatrix(),this.applyMatrix4(rT.matrix),this}center(){return this.computeBoundingBox(),this.boundingBox.getCenter(oT).negate(),this.translate(oT.x,oT.y,oT.z),this}setFromPoints(t){const e=[];for(let n=0,i=t.length;n<i;n++){const i=t[n];e.push(i.x,i.y,i.z||0)}return this.setAttribute(\\\\\\\"position\\\\\\\",new nT(e,3)),this}computeBoundingBox(){null===this.boundingBox&&(this.boundingBox=new Lb);const t=this.attributes.position,e=this.morphAttributes.position;if(t&&t.isGLBufferAttribute)return console.error('THREE.BufferGeometry.computeBoundingBox(): GLBufferAttribute requires a manual bounding box. Alternatively set \\\\\\\"mesh.frustumCulled\\\\\\\" to \\\\\\\"false\\\\\\\".',this),void this.boundingBox.set(new Sb(-1/0,-1/0,-1/0),new Sb(1/0,1/0,1/0));if(void 0!==t){if(this.boundingBox.setFromBufferAttribute(t),e)for(let t=0,n=e.length;t<n;t++){const n=e[t];aT.setFromBufferAttribute(n),this.morphTargetsRelative?(cT.addVectors(this.boundingBox.min,aT.min),this.boundingBox.expandByPoint(cT),cT.addVectors(this.boundingBox.max,aT.max),this.boundingBox.expandByPoint(cT)):(this.boundingBox.expandByPoint(aT.min),this.boundingBox.expandByPoint(aT.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(){null===this.boundingSphere&&(this.boundingSphere=new $b);const t=this.attributes.position,e=this.morphAttributes.position;if(t&&t.isGLBufferAttribute)return console.error('THREE.BufferGeometry.computeBoundingSphere(): GLBufferAttribute requires a manual bounding sphere. Alternatively set \\\\\\\"mesh.frustumCulled\\\\\\\" to \\\\\\\"false\\\\\\\".',this),void this.boundingSphere.set(new Sb,1/0);if(t){const n=this.boundingSphere.center;if(aT.setFromBufferAttribute(t),e)for(let t=0,n=e.length;t<n;t++){const n=e[t];lT.setFromBufferAttribute(n),this.morphTargetsRelative?(cT.addVectors(aT.min,lT.min),aT.expandByPoint(cT),cT.addVectors(aT.max,lT.max),aT.expandByPoint(cT)):(aT.expandByPoint(lT.min),aT.expandByPoint(lT.max))}aT.getCenter(n);let i=0;for(let e=0,s=t.count;e<s;e++)cT.fromBufferAttribute(t,e),i=Math.max(i,n.distanceToSquared(cT));if(e)for(let s=0,r=e.length;s<r;s++){const r=e[s],o=this.morphTargetsRelative;for(let e=0,s=r.count;e<s;e++)cT.fromBufferAttribute(r,e),o&&(oT.fromBufferAttribute(t,e),cT.add(oT)),i=Math.max(i,n.distanceToSquared(cT))}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(){const t=this.index,e=this.attributes;if(null===t||void 0===e.position||void 0===e.normal||void 0===e.uv)return void console.error(\\\\\\\"THREE.BufferGeometry: .computeTangents() failed. Missing required attributes (index, position, normal or uv)\\\\\\\");const n=t.array,i=e.position.array,s=e.normal.array,r=e.uv.array,o=i.length/3;void 0===e.tangent&&this.setAttribute(\\\\\\\"tangent\\\\\\\",new Qw(new Float32Array(4*o),4));const a=e.tangent.array,l=[],c=[];for(let t=0;t<o;t++)l[t]=new Sb,c[t]=new Sb;const h=new Sb,u=new Sb,d=new Sb,p=new _b,_=new _b,m=new _b,f=new Sb,g=new Sb;function v(t,e,n){h.fromArray(i,3*t),u.fromArray(i,3*e),d.fromArray(i,3*n),p.fromArray(r,2*t),_.fromArray(r,2*e),m.fromArray(r,2*n),u.sub(h),d.sub(h),_.sub(p),m.sub(p);const s=1/(_.x*m.y-m.x*_.y);isFinite(s)&&(f.copy(u).multiplyScalar(m.y).addScaledVector(d,-_.y).multiplyScalar(s),g.copy(d).multiplyScalar(_.x).addScaledVector(u,-m.x).multiplyScalar(s),l[t].add(f),l[e].add(f),l[n].add(f),c[t].add(g),c[e].add(g),c[n].add(g))}let y=this.groups;0===y.length&&(y=[{start:0,count:n.length}]);for(let t=0,e=y.length;t<e;++t){const e=y[t],i=e.start;for(let t=i,s=i+e.count;t<s;t+=3)v(n[t+0],n[t+1],n[t+2])}const x=new Sb,b=new Sb,w=new Sb,T=new Sb;function A(t){w.fromArray(s,3*t),T.copy(w);const e=l[t];x.copy(e),x.sub(w.multiplyScalar(w.dot(e))).normalize(),b.crossVectors(T,e);const n=b.dot(c[t])<0?-1:1;a[4*t]=x.x,a[4*t+1]=x.y,a[4*t+2]=x.z,a[4*t+3]=n}for(let t=0,e=y.length;t<e;++t){const e=y[t],i=e.start;for(let t=i,s=i+e.count;t<s;t+=3)A(n[t+0]),A(n[t+1]),A(n[t+2])}}computeVertexNormals(){const t=this.index,e=this.getAttribute(\\\\\\\"position\\\\\\\");if(void 0!==e){let n=this.getAttribute(\\\\\\\"normal\\\\\\\");if(void 0===n)n=new Qw(new Float32Array(3*e.count),3),this.setAttribute(\\\\\\\"normal\\\\\\\",n);else for(let t=0,e=n.count;t<e;t++)n.setXYZ(t,0,0,0);const i=new Sb,s=new Sb,r=new Sb,o=new Sb,a=new Sb,l=new Sb,c=new Sb,h=new Sb;if(t)for(let u=0,d=t.count;u<d;u+=3){const d=t.getX(u+0),p=t.getX(u+1),_=t.getX(u+2);i.fromBufferAttribute(e,d),s.fromBufferAttribute(e,p),r.fromBufferAttribute(e,_),c.subVectors(r,s),h.subVectors(i,s),c.cross(h),o.fromBufferAttribute(n,d),a.fromBufferAttribute(n,p),l.fromBufferAttribute(n,_),o.add(c),a.add(c),l.add(c),n.setXYZ(d,o.x,o.y,o.z),n.setXYZ(p,a.x,a.y,a.z),n.setXYZ(_,l.x,l.y,l.z)}else for(let t=0,o=e.count;t<o;t+=3)i.fromBufferAttribute(e,t+0),s.fromBufferAttribute(e,t+1),r.fromBufferAttribute(e,t+2),c.subVectors(r,s),h.subVectors(i,s),c.cross(h),n.setXYZ(t+0,c.x,c.y,c.z),n.setXYZ(t+1,c.x,c.y,c.z),n.setXYZ(t+2,c.x,c.y,c.z);this.normalizeNormals(),n.needsUpdate=!0}}merge(t,e){if(!t||!t.isBufferGeometry)return void console.error(\\\\\\\"THREE.BufferGeometry.merge(): geometry not an instance of THREE.BufferGeometry.\\\\\\\",t);void 0===e&&(e=0,console.warn(\\\\\\\"THREE.BufferGeometry.merge(): Overwriting original geometry, starting at offset=0. Use BufferGeometryUtils.mergeBufferGeometries() for lossless merge.\\\\\\\"));const n=this.attributes;for(const i in n){if(void 0===t.attributes[i])continue;const s=n[i].array,r=t.attributes[i],o=r.array,a=r.itemSize*e,l=Math.min(o.length,s.length-a);for(let t=0,e=a;t<l;t++,e++)s[e]=o[t]}return this}normalizeNormals(){const t=this.attributes.normal;for(let e=0,n=t.count;e<n;e++)cT.fromBufferAttribute(t,e),cT.normalize(),t.setXYZ(e,cT.x,cT.y,cT.z)}toNonIndexed(){function t(t,e){const n=t.array,i=t.itemSize,s=t.normalized,r=new n.constructor(e.length*i);let o=0,a=0;for(let s=0,l=e.length;s<l;s++){o=t.isInterleavedBufferAttribute?e[s]*t.data.stride+t.offset:e[s]*i;for(let t=0;t<i;t++)r[a++]=n[o++]}return new Qw(r,i,s)}if(null===this.index)return console.warn(\\\\\\\"THREE.BufferGeometry.toNonIndexed(): BufferGeometry is already non-indexed.\\\\\\\"),this;const e=new hT,n=this.index.array,i=this.attributes;for(const s in i){const r=t(i[s],n);e.setAttribute(s,r)}const s=this.morphAttributes;for(const i in s){const r=[],o=s[i];for(let e=0,i=o.length;e<i;e++){const i=t(o[e],n);r.push(i)}e.morphAttributes[i]=r}e.morphTargetsRelative=this.morphTargetsRelative;const r=this.groups;for(let t=0,n=r.length;t<n;t++){const n=r[t];e.addGroup(n.start,n.count,n.materialIndex)}return e}toJSON(){const t={metadata:{version:4.5,type:\\\\\\\"BufferGeometry\\\\\\\",generator:\\\\\\\"BufferGeometry.toJSON\\\\\\\"}};if(t.uuid=this.uuid,t.type=this.type,\\\\\\\"\\\\\\\"!==this.name&&(t.name=this.name),Object.keys(this.userData).length>0&&(t.userData=this.userData),void 0!==this.parameters){const e=this.parameters;for(const n in e)void 0!==e[n]&&(t[n]=e[n]);return t}t.data={attributes:{}};const e=this.index;null!==e&&(t.data.index={type:e.array.constructor.name,array:Array.prototype.slice.call(e.array)});const n=this.attributes;for(const e in n){const i=n[e];t.data.attributes[e]=i.toJSON(t.data)}const i={};let s=!1;for(const e in this.morphAttributes){const n=this.morphAttributes[e],r=[];for(let e=0,i=n.length;e<i;e++){const i=n[e];r.push(i.toJSON(t.data))}r.length>0&&(i[e]=r,s=!0)}s&&(t.data.morphAttributes=i,t.data.morphTargetsRelative=this.morphTargetsRelative);const r=this.groups;r.length>0&&(t.data.groups=JSON.parse(JSON.stringify(r)));const o=this.boundingSphere;return null!==o&&(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;const e={};this.name=t.name;const n=t.index;null!==n&&this.setIndex(n.clone(e));const i=t.attributes;for(const t in i){const n=i[t];this.setAttribute(t,n.clone(e))}const s=t.morphAttributes;for(const t in s){const n=[],i=s[t];for(let t=0,s=i.length;t<s;t++)n.push(i[t].clone(e));this.morphAttributes[t]=n}this.morphTargetsRelative=t.morphTargetsRelative;const r=t.groups;for(let t=0,e=r.length;t<e;t++){const e=r[t];this.addGroup(e.start,e.count,e.materialIndex)}const o=t.boundingBox;null!==o&&(this.boundingBox=o.clone());const a=t.boundingSphere;return null!==a&&(this.boundingSphere=a.clone()),this.drawRange.start=t.drawRange.start,this.drawRange.count=t.drawRange.count,this.userData=t.userData,void 0!==t.parameters&&(this.parameters=Object.assign({},t.parameters)),this}dispose(){this.dispatchEvent({type:\\\\\\\"dispose\\\\\\\"})}}hT.prototype.isBufferGeometry=!0;const uT=new sw,dT=new iw,pT=new $b,_T=new Sb,mT=new Sb,fT=new Sb,gT=new Sb,vT=new Sb,yT=new Sb,xT=new Sb,bT=new Sb,wT=new Sb,TT=new _b,AT=new _b,MT=new _b,ET=new Sb,ST=new Sb;class CT extends Nw{constructor(t=new hT,e=new Jw){super(),this.type=\\\\\\\"Mesh\\\\\\\",this.geometry=t,this.material=e,this.updateMorphTargets()}copy(t){return super.copy(t),void 0!==t.morphTargetInfluences&&(this.morphTargetInfluences=t.morphTargetInfluences.slice()),void 0!==t.morphTargetDictionary&&(this.morphTargetDictionary=Object.assign({},t.morphTargetDictionary)),this.material=t.material,this.geometry=t.geometry,this}updateMorphTargets(){const t=this.geometry;if(t.isBufferGeometry){const e=t.morphAttributes,n=Object.keys(e);if(n.length>0){const t=e[n[0]];if(void 0!==t){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let e=0,n=t.length;e<n;e++){const n=t[e].name||String(e);this.morphTargetInfluences.push(0),this.morphTargetDictionary[n]=e}}}}else{const e=t.morphTargets;void 0!==e&&e.length>0&&console.error(\\\\\\\"THREE.Mesh.updateMorphTargets() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.\\\\\\\")}}raycast(t,e){const n=this.geometry,i=this.material,s=this.matrixWorld;if(void 0===i)return;if(null===n.boundingSphere&&n.computeBoundingSphere(),pT.copy(n.boundingSphere),pT.applyMatrix4(s),!1===t.ray.intersectsSphere(pT))return;if(uT.copy(s).invert(),dT.copy(t.ray).applyMatrix4(uT),null!==n.boundingBox&&!1===dT.intersectsBox(n.boundingBox))return;let r;if(n.isBufferGeometry){const s=n.index,o=n.attributes.position,a=n.morphAttributes.position,l=n.morphTargetsRelative,c=n.attributes.uv,h=n.attributes.uv2,u=n.groups,d=n.drawRange;if(null!==s)if(Array.isArray(i))for(let n=0,p=u.length;n<p;n++){const p=u[n],_=i[p.materialIndex];for(let n=Math.max(p.start,d.start),i=Math.min(s.count,Math.min(p.start+p.count,d.start+d.count));n<i;n+=3){const i=s.getX(n),u=s.getX(n+1),d=s.getX(n+2);r=NT(this,_,t,dT,o,a,l,c,h,i,u,d),r&&(r.faceIndex=Math.floor(n/3),r.face.materialIndex=p.materialIndex,e.push(r))}}else{for(let n=Math.max(0,d.start),u=Math.min(s.count,d.start+d.count);n<u;n+=3){const u=s.getX(n),d=s.getX(n+1),p=s.getX(n+2);r=NT(this,i,t,dT,o,a,l,c,h,u,d,p),r&&(r.faceIndex=Math.floor(n/3),e.push(r))}}else if(void 0!==o)if(Array.isArray(i))for(let n=0,s=u.length;n<s;n++){const s=u[n],p=i[s.materialIndex];for(let n=Math.max(s.start,d.start),i=Math.min(o.count,Math.min(s.start+s.count,d.start+d.count));n<i;n+=3){r=NT(this,p,t,dT,o,a,l,c,h,n,n+1,n+2),r&&(r.faceIndex=Math.floor(n/3),r.face.materialIndex=s.materialIndex,e.push(r))}}else{for(let n=Math.max(0,d.start),s=Math.min(o.count,d.start+d.count);n<s;n+=3){r=NT(this,i,t,dT,o,a,l,c,h,n,n+1,n+2),r&&(r.faceIndex=Math.floor(n/3),e.push(r))}}}else n.isGeometry&&console.error(\\\\\\\"THREE.Mesh.raycast() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.\\\\\\\")}}function NT(t,e,n,i,s,r,o,a,l,c,h,u){_T.fromBufferAttribute(s,c),mT.fromBufferAttribute(s,h),fT.fromBufferAttribute(s,u);const d=t.morphTargetInfluences;if(r&&d){xT.set(0,0,0),bT.set(0,0,0),wT.set(0,0,0);for(let t=0,e=r.length;t<e;t++){const e=d[t],n=r[t];0!==e&&(gT.fromBufferAttribute(n,c),vT.fromBufferAttribute(n,h),yT.fromBufferAttribute(n,u),o?(xT.addScaledVector(gT,e),bT.addScaledVector(vT,e),wT.addScaledVector(yT,e)):(xT.addScaledVector(gT.sub(_T),e),bT.addScaledVector(vT.sub(mT),e),wT.addScaledVector(yT.sub(fT),e)))}_T.add(xT),mT.add(bT),fT.add(wT)}t.isSkinnedMesh&&(t.boneTransform(c,_T),t.boneTransform(h,mT),t.boneTransform(u,fT));const p=function(t,e,n,i,s,r,o,a){let l;if(l=1===e.side?i.intersectTriangle(o,r,s,!0,a):i.intersectTriangle(s,r,o,2!==e.side,a),null===l)return null;ST.copy(a),ST.applyMatrix4(t.matrixWorld);const c=n.ray.origin.distanceTo(ST);return c<n.near||c>n.far?null:{distance:c,point:ST.clone(),object:t}}(t,e,n,i,_T,mT,fT,ET);if(p){a&&(TT.fromBufferAttribute(a,c),AT.fromBufferAttribute(a,h),MT.fromBufferAttribute(a,u),p.uv=Uw.getUV(ET,_T,mT,fT,TT,AT,MT,new _b)),l&&(TT.fromBufferAttribute(l,c),AT.fromBufferAttribute(l,h),MT.fromBufferAttribute(l,u),p.uv2=Uw.getUV(ET,_T,mT,fT,TT,AT,MT,new _b));const t={a:c,b:h,c:u,normal:new Sb,materialIndex:0};Uw.getNormal(_T,mT,fT,t.normal),p.face=t}return p}CT.prototype.isMesh=!0;class LT extends hT{constructor(t=1,e=1,n=1,i=1,s=1,r=1){super(),this.type=\\\\\\\"BoxGeometry\\\\\\\",this.parameters={width:t,height:e,depth:n,widthSegments:i,heightSegments:s,depthSegments:r};const o=this;i=Math.floor(i),s=Math.floor(s),r=Math.floor(r);const a=[],l=[],c=[],h=[];let u=0,d=0;function p(t,e,n,i,s,r,p,_,m,f,g){const v=r/m,y=p/f,x=r/2,b=p/2,w=_/2,T=m+1,A=f+1;let M=0,E=0;const S=new Sb;for(let r=0;r<A;r++){const o=r*y-b;for(let a=0;a<T;a++){const u=a*v-x;S[t]=u*i,S[e]=o*s,S[n]=w,l.push(S.x,S.y,S.z),S[t]=0,S[e]=0,S[n]=_>0?1:-1,c.push(S.x,S.y,S.z),h.push(a/m),h.push(1-r/f),M+=1}}for(let t=0;t<f;t++)for(let e=0;e<m;e++){const n=u+e+T*t,i=u+e+T*(t+1),s=u+(e+1)+T*(t+1),r=u+(e+1)+T*t;a.push(n,i,r),a.push(i,s,r),E+=6}o.addGroup(d,E,g),d+=E,u+=M}p(\\\\\\\"z\\\\\\\",\\\\\\\"y\\\\\\\",\\\\\\\"x\\\\\\\",-1,-1,n,e,t,r,s,0),p(\\\\\\\"z\\\\\\\",\\\\\\\"y\\\\\\\",\\\\\\\"x\\\\\\\",1,-1,n,e,-t,r,s,1),p(\\\\\\\"x\\\\\\\",\\\\\\\"z\\\\\\\",\\\\\\\"y\\\\\\\",1,1,t,n,e,i,r,2),p(\\\\\\\"x\\\\\\\",\\\\\\\"z\\\\\\\",\\\\\\\"y\\\\\\\",1,-1,t,n,-e,i,r,3),p(\\\\\\\"x\\\\\\\",\\\\\\\"y\\\\\\\",\\\\\\\"z\\\\\\\",1,-1,t,e,n,i,s,4),p(\\\\\\\"x\\\\\\\",\\\\\\\"y\\\\\\\",\\\\\\\"z\\\\\\\",-1,-1,t,e,-n,i,s,5),this.setIndex(a),this.setAttribute(\\\\\\\"position\\\\\\\",new nT(l,3)),this.setAttribute(\\\\\\\"normal\\\\\\\",new nT(c,3)),this.setAttribute(\\\\\\\"uv\\\\\\\",new nT(h,2))}static fromJSON(t){return new LT(t.width,t.height,t.depth,t.widthSegments,t.heightSegments,t.depthSegments)}}function OT(t){const e={};for(const n in t){e[n]={};for(const i in t[n]){const s=t[n][i];s&&(s.isColor||s.isMatrix3||s.isMatrix4||s.isVector2||s.isVector3||s.isVector4||s.isTexture||s.isQuaternion)?e[n][i]=s.clone():Array.isArray(s)?e[n][i]=s.slice():e[n][i]=s}}return e}function PT(t){const e={};for(let n=0;n<t.length;n++){const i=OT(t[n]);for(const t in i)e[t]=i[t]}return e}const RT={clone:OT,merge:PT};class IT extends Vw{constructor(t){super(),this.type=\\\\\\\"ShaderMaterial\\\\\\\",this.defines={},this.uniforms={},this.vertexShader=\\\\\\\"void main() {\\\\n\\\\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\\\\n}\\\\\\\",this.fragmentShader=\\\\\\\"void main() {\\\\n\\\\tgl_FragColor = vec4( 1.0, 0.0, 0.0, 1.0 );\\\\n}\\\\\\\",this.linewidth=1,this.wireframe=!1,this.wireframeLinewidth=1,this.fog=!1,this.lights=!1,this.clipping=!1,this.extensions={derivatives:!1,fragDepth:!1,drawBuffers:!1,shaderTextureLOD:!1},this.defaultAttributeValues={color:[1,1,1],uv:[0,0],uv2:[0,0]},this.index0AttributeName=void 0,this.uniformsNeedUpdate=!1,this.glslVersion=null,void 0!==t&&(void 0!==t.attributes&&console.error(\\\\\\\"THREE.ShaderMaterial: attributes should now be defined in THREE.BufferGeometry instead.\\\\\\\"),this.setValues(t))}copy(t){return super.copy(t),this.fragmentShader=t.fragmentShader,this.vertexShader=t.vertexShader,this.uniforms=OT(t.uniforms),this.defines=Object.assign({},t.defines),this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.lights=t.lights,this.clipping=t.clipping,this.extensions=Object.assign({},t.extensions),this.glslVersion=t.glslVersion,this}toJSON(t){const e=super.toJSON(t);e.glslVersion=this.glslVersion,e.uniforms={};for(const n in this.uniforms){const i=this.uniforms[n].value;i&&i.isTexture?e.uniforms[n]={type:\\\\\\\"t\\\\\\\",value:i.toJSON(t).uuid}:i&&i.isColor?e.uniforms[n]={type:\\\\\\\"c\\\\\\\",value:i.getHex()}:i&&i.isVector2?e.uniforms[n]={type:\\\\\\\"v2\\\\\\\",value:i.toArray()}:i&&i.isVector3?e.uniforms[n]={type:\\\\\\\"v3\\\\\\\",value:i.toArray()}:i&&i.isVector4?e.uniforms[n]={type:\\\\\\\"v4\\\\\\\",value:i.toArray()}:i&&i.isMatrix3?e.uniforms[n]={type:\\\\\\\"m3\\\\\\\",value:i.toArray()}:i&&i.isMatrix4?e.uniforms[n]={type:\\\\\\\"m4\\\\\\\",value:i.toArray()}:e.uniforms[n]={value:i}}Object.keys(this.defines).length>0&&(e.defines=this.defines),e.vertexShader=this.vertexShader,e.fragmentShader=this.fragmentShader;const n={};for(const t in this.extensions)!0===this.extensions[t]&&(n[t]=!0);return Object.keys(n).length>0&&(e.extensions=n),e}}IT.prototype.isShaderMaterial=!0;class FT extends Nw{constructor(){super(),this.type=\\\\\\\"Camera\\\\\\\",this.matrixWorldInverse=new sw,this.projectionMatrix=new sw,this.projectionMatrixInverse=new sw}copy(t,e){return super.copy(t,e),this.matrixWorldInverse.copy(t.matrixWorldInverse),this.projectionMatrix.copy(t.projectionMatrix),this.projectionMatrixInverse.copy(t.projectionMatrixInverse),this}getWorldDirection(t){this.updateWorldMatrix(!0,!1);const e=this.matrixWorld.elements;return t.set(-e[8],-e[9],-e[10]).normalize()}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)}}FT.prototype.isCamera=!0;class DT extends FT{constructor(t=50,e=1,n=.1,i=2e3){super(),this.type=\\\\\\\"PerspectiveCamera\\\\\\\",this.fov=t,this.zoom=1,this.near=n,this.far=i,this.focus=10,this.aspect=e,this.view=null,this.filmGauge=35,this.filmOffset=0,this.updateProjectionMatrix()}copy(t,e){return super.copy(t,e),this.fov=t.fov,this.zoom=t.zoom,this.near=t.near,this.far=t.far,this.focus=t.focus,this.aspect=t.aspect,this.view=null===t.view?null:Object.assign({},t.view),this.filmGauge=t.filmGauge,this.filmOffset=t.filmOffset,this}setFocalLength(t){const e=.5*this.getFilmHeight()/t;this.fov=2*ib*Math.atan(e),this.updateProjectionMatrix()}getFocalLength(){const t=Math.tan(.5*nb*this.fov);return.5*this.getFilmHeight()/t}getEffectiveFOV(){return 2*ib*Math.atan(Math.tan(.5*nb*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,r){this.aspect=t/e,null===this.view&&(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=t,this.view.fullHeight=e,this.view.offsetX=n,this.view.offsetY=i,this.view.width=s,this.view.height=r,this.updateProjectionMatrix()}clearViewOffset(){null!==this.view&&(this.view.enabled=!1),this.updateProjectionMatrix()}updateProjectionMatrix(){const t=this.near;let e=t*Math.tan(.5*nb*this.fov)/this.zoom,n=2*e,i=this.aspect*n,s=-.5*i;const r=this.view;if(null!==this.view&&this.view.enabled){const t=r.fullWidth,o=r.fullHeight;s+=r.offsetX*i/t,e-=r.offsetY*n/o,i*=r.width/t,n*=r.height/o}const o=this.filmOffset;0!==o&&(s+=t*o/this.getFilmWidth()),this.projectionMatrix.makePerspective(s,s+i,e,e-n,t,this.far),this.projectionMatrixInverse.copy(this.projectionMatrix).invert()}toJSON(t){const e=super.toJSON(t);return e.object.fov=this.fov,e.object.zoom=this.zoom,e.object.near=this.near,e.object.far=this.far,e.object.focus=this.focus,e.object.aspect=this.aspect,null!==this.view&&(e.object.view=Object.assign({},this.view)),e.object.filmGauge=this.filmGauge,e.object.filmOffset=this.filmOffset,e}}DT.prototype.isPerspectiveCamera=!0;const BT=90;class zT extends Nw{constructor(t,e,n){if(super(),this.type=\\\\\\\"CubeCamera\\\\\\\",!0!==n.isWebGLCubeRenderTarget)return void console.error(\\\\\\\"THREE.CubeCamera: The constructor now expects an instance of WebGLCubeRenderTarget as third parameter.\\\\\\\");this.renderTarget=n;const i=new DT(BT,1,t,e);i.layers=this.layers,i.up.set(0,-1,0),i.lookAt(new Sb(1,0,0)),this.add(i);const s=new DT(BT,1,t,e);s.layers=this.layers,s.up.set(0,-1,0),s.lookAt(new Sb(-1,0,0)),this.add(s);const r=new DT(BT,1,t,e);r.layers=this.layers,r.up.set(0,0,1),r.lookAt(new Sb(0,1,0)),this.add(r);const o=new DT(BT,1,t,e);o.layers=this.layers,o.up.set(0,0,-1),o.lookAt(new Sb(0,-1,0)),this.add(o);const a=new DT(BT,1,t,e);a.layers=this.layers,a.up.set(0,-1,0),a.lookAt(new Sb(0,0,1)),this.add(a);const l=new DT(BT,1,t,e);l.layers=this.layers,l.up.set(0,-1,0),l.lookAt(new Sb(0,0,-1)),this.add(l)}update(t,e){null===this.parent&&this.updateMatrixWorld();const n=this.renderTarget,[i,s,r,o,a,l]=this.children,c=t.xr.enabled,h=t.getRenderTarget();t.xr.enabled=!1;const u=n.texture.generateMipmaps;n.texture.generateMipmaps=!1,t.setRenderTarget(n,0),t.render(e,i),t.setRenderTarget(n,1),t.render(e,s),t.setRenderTarget(n,2),t.render(e,r),t.setRenderTarget(n,3),t.render(e,o),t.setRenderTarget(n,4),t.render(e,a),n.texture.generateMipmaps=u,t.setRenderTarget(n,5),t.render(e,l),t.setRenderTarget(h),t.xr.enabled=c}}class kT extends bb{constructor(t,e,n,i,s,r,o,a,l,c){super(t=void 0!==t?t:[],e=void 0!==e?e:_x,n,i,s,r,o,a,l,c),this.flipY=!1}get images(){return this.image}set images(t){this.image=t}}kT.prototype.isCubeTexture=!0;class UT extends Ab{constructor(t,e,n){Number.isInteger(e)&&(console.warn(\\\\\\\"THREE.WebGLCubeRenderTarget: constructor signature is now WebGLCubeRenderTarget( size, options )\\\\\\\"),e=n),super(t,t,e),e=e||{},this.texture=new kT(void 0,e.mapping,e.wrapS,e.wrapT,e.magFilter,e.minFilter,e.format,e.type,e.anisotropy,e.encoding),this.texture.isRenderTargetTexture=!0,this.texture.generateMipmaps=void 0!==e.generateMipmaps&&e.generateMipmaps,this.texture.minFilter=void 0!==e.minFilter?e.minFilter:Ex,this.texture._needsFlipEnvMap=!1}fromEquirectangularTexture(t,e){this.texture.type=e.type,this.texture.format=Dx,this.texture.encoding=e.encoding,this.texture.generateMipmaps=e.generateMipmaps,this.texture.minFilter=e.minFilter,this.texture.magFilter=e.magFilter;const n={uniforms:{tEquirect:{value:null}},vertexShader:\\\\\\\"\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tvarying vec3 vWorldDirection;\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tvec3 transformDirection( in vec3 dir, in mat4 matrix ) {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t\\\\treturn normalize( ( matrix * vec4( dir, 0.0 ) ).xyz );\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tvoid main() {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tvWorldDirection = transformDirection( position, modelMatrix );\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t#include <begin_vertex>\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t#include <project_vertex>\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t\\\\t\\\\\\\",fragmentShader:\\\\\\\"\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tuniform sampler2D tEquirect;\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tvarying vec3 vWorldDirection;\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t#include <common>\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tvoid main() {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tvec3 direction = normalize( vWorldDirection );\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tvec2 sampleUV = equirectUv( direction );\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tgl_FragColor = texture2D( tEquirect, sampleUV );\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t\\\\t\\\\\\\"},i=new LT(5,5,5),s=new IT({name:\\\\\\\"CubemapFromEquirect\\\\\\\",uniforms:OT(n.uniforms),vertexShader:n.vertexShader,fragmentShader:n.fragmentShader,side:1,blending:0});s.uniforms.tEquirect.value=e;const r=new CT(i,s),o=e.minFilter;e.minFilter===Cx&&(e.minFilter=Ex);return new zT(1,10,this).update(t,r),e.minFilter=o,r.geometry.dispose(),r.material.dispose(),this}clear(t,e,n,i){const s=t.getRenderTarget();for(let s=0;s<6;s++)t.setRenderTarget(this,s),t.clear(e,n,i);t.setRenderTarget(s)}}UT.prototype.isWebGLCubeRenderTarget=!0;const GT=new Sb,VT=new Sb,HT=new mb;class jT{constructor(t=new Sb(1,0,0),e=0){this.normal=t,this.constant=e}set(t,e){return this.normal.copy(t),this.constant=e,this}setComponents(t,e,n,i){return this.normal.set(t,e,n),this.constant=i,this}setFromNormalAndCoplanarPoint(t,e){return this.normal.copy(t),this.constant=-e.dot(this.normal),this}setFromCoplanarPoints(t,e,n){const i=GT.subVectors(n,e).cross(VT.subVectors(t,e)).normalize();return this.setFromNormalAndCoplanarPoint(i,t),this}copy(t){return this.normal.copy(t.normal),this.constant=t.constant,this}normalize(){const t=1/this.normal.length();return this.normal.multiplyScalar(t),this.constant*=t,this}negate(){return this.constant*=-1,this.normal.negate(),this}distanceToPoint(t){return this.normal.dot(t)+this.constant}distanceToSphere(t){return this.distanceToPoint(t.center)-t.radius}projectPoint(t,e){return e.copy(this.normal).multiplyScalar(-this.distanceToPoint(t)).add(t)}intersectLine(t,e){const n=t.delta(GT),i=this.normal.dot(n);if(0===i)return 0===this.distanceToPoint(t.start)?e.copy(t.start):null;const s=-(t.start.dot(this.normal)+this.constant)/i;return s<0||s>1?null:e.copy(n).multiplyScalar(s).add(t.start)}intersectsLine(t){const e=this.distanceToPoint(t.start),n=this.distanceToPoint(t.end);return e<0&&n>0||n<0&&e>0}intersectsBox(t){return t.intersectsPlane(this)}intersectsSphere(t){return t.intersectsPlane(this)}coplanarPoint(t){return t.copy(this.normal).multiplyScalar(-this.constant)}applyMatrix4(t,e){const n=e||HT.getNormalMatrix(t),i=this.coplanarPoint(GT).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)}}jT.prototype.isPlane=!0;const WT=new $b,qT=new Sb;class XT{constructor(t=new jT,e=new jT,n=new jT,i=new jT,s=new jT,r=new jT){this.planes=[t,e,n,i,s,r]}set(t,e,n,i,s,r){const 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(r),this}copy(t){const e=this.planes;for(let n=0;n<6;n++)e[n].copy(t.planes[n]);return this}setFromProjectionMatrix(t){const e=this.planes,n=t.elements,i=n[0],s=n[1],r=n[2],o=n[3],a=n[4],l=n[5],c=n[6],h=n[7],u=n[8],d=n[9],p=n[10],_=n[11],m=n[12],f=n[13],g=n[14],v=n[15];return e[0].setComponents(o-i,h-a,_-u,v-m).normalize(),e[1].setComponents(o+i,h+a,_+u,v+m).normalize(),e[2].setComponents(o+s,h+l,_+d,v+f).normalize(),e[3].setComponents(o-s,h-l,_-d,v-f).normalize(),e[4].setComponents(o-r,h-c,_-p,v-g).normalize(),e[5].setComponents(o+r,h+c,_+p,v+g).normalize(),this}intersectsObject(t){const e=t.geometry;return null===e.boundingSphere&&e.computeBoundingSphere(),WT.copy(e.boundingSphere).applyMatrix4(t.matrixWorld),this.intersectsSphere(WT)}intersectsSprite(t){return WT.center.set(0,0,0),WT.radius=.7071067811865476,WT.applyMatrix4(t.matrixWorld),this.intersectsSphere(WT)}intersectsSphere(t){const e=this.planes,n=t.center,i=-t.radius;for(let t=0;t<6;t++){if(e[t].distanceToPoint(n)<i)return!1}return!0}intersectsBox(t){const e=this.planes;for(let n=0;n<6;n++){const i=e[n];if(qT.x=i.normal.x>0?t.max.x:t.min.x,qT.y=i.normal.y>0?t.max.y:t.min.y,qT.z=i.normal.z>0?t.max.z:t.min.z,i.distanceToPoint(qT)<0)return!1}return!0}containsPoint(t){const e=this.planes;for(let n=0;n<6;n++)if(e[n].distanceToPoint(t)<0)return!1;return!0}clone(){return(new this.constructor).copy(this)}}function YT(){let t=null,e=!1,n=null,i=null;function s(e,r){n(e,r),i=t.requestAnimationFrame(s)}return{start:function(){!0!==e&&null!==n&&(i=t.requestAnimationFrame(s),e=!0)},stop:function(){t.cancelAnimationFrame(i),e=!1},setAnimationLoop:function(t){n=t},setContext:function(e){t=e}}}function $T(t,e){const n=e.isWebGL2,i=new WeakMap;return{get:function(t){return t.isInterleavedBufferAttribute&&(t=t.data),i.get(t)},remove:function(e){e.isInterleavedBufferAttribute&&(e=e.data);const n=i.get(e);n&&(t.deleteBuffer(n.buffer),i.delete(e))},update:function(e,s){if(e.isGLBufferAttribute){const t=i.get(e);return void((!t||t.version<e.version)&&i.set(e,{buffer:e.buffer,type:e.type,bytesPerElement:e.elementSize,version:e.version}))}e.isInterleavedBufferAttribute&&(e=e.data);const r=i.get(e);void 0===r?i.set(e,function(e,i){const s=e.array,r=e.usage,o=t.createBuffer();t.bindBuffer(i,o),t.bufferData(i,s,r),e.onUploadCallback();let a=5126;return s instanceof Float32Array?a=5126:s instanceof Float64Array?console.warn(\\\\\\\"THREE.WebGLAttributes: Unsupported data buffer format: Float64Array.\\\\\\\"):s instanceof Uint16Array?e.isFloat16BufferAttribute?n?a=5131:console.warn(\\\\\\\"THREE.WebGLAttributes: Usage of Float16BufferAttribute requires WebGL2.\\\\\\\"):a=5123:s instanceof Int16Array?a=5122:s instanceof Uint32Array?a=5125:s instanceof Int32Array?a=5124:s instanceof Int8Array?a=5120:(s instanceof Uint8Array||s instanceof Uint8ClampedArray)&&(a=5121),{buffer:o,type:a,bytesPerElement:s.BYTES_PER_ELEMENT,version:e.version}}(e,s)):r.version<e.version&&(!function(e,i,s){const r=i.array,o=i.updateRange;t.bindBuffer(s,e),-1===o.count?t.bufferSubData(s,0,r):(n?t.bufferSubData(s,o.offset*r.BYTES_PER_ELEMENT,r,o.offset,o.count):t.bufferSubData(s,o.offset*r.BYTES_PER_ELEMENT,r.subarray(o.offset,o.offset+o.count)),o.count=-1)}(r.buffer,e,s),r.version=e.version)}}}class JT extends hT{constructor(t=1,e=1,n=1,i=1){super(),this.type=\\\\\\\"PlaneGeometry\\\\\\\",this.parameters={width:t,height:e,widthSegments:n,heightSegments:i};const s=t/2,r=e/2,o=Math.floor(n),a=Math.floor(i),l=o+1,c=a+1,h=t/o,u=e/a,d=[],p=[],_=[],m=[];for(let t=0;t<c;t++){const e=t*u-r;for(let n=0;n<l;n++){const i=n*h-s;p.push(i,-e,0),_.push(0,0,1),m.push(n/o),m.push(1-t/a)}}for(let t=0;t<a;t++)for(let e=0;e<o;e++){const n=e+l*t,i=e+l*(t+1),s=e+1+l*(t+1),r=e+1+l*t;d.push(n,i,r),d.push(i,s,r)}this.setIndex(d),this.setAttribute(\\\\\\\"position\\\\\\\",new nT(p,3)),this.setAttribute(\\\\\\\"normal\\\\\\\",new nT(_,3)),this.setAttribute(\\\\\\\"uv\\\\\\\",new nT(m,2))}static fromJSON(t){return new JT(t.width,t.height,t.widthSegments,t.heightSegments)}}const ZT={alphamap_fragment:\\\\\\\"#ifdef USE_ALPHAMAP\\\\n\\\\tdiffuseColor.a *= texture2D( alphaMap, vUv ).g;\\\\n#endif\\\\\\\",alphamap_pars_fragment:\\\\\\\"#ifdef USE_ALPHAMAP\\\\n\\\\tuniform sampler2D alphaMap;\\\\n#endif\\\\\\\",alphatest_fragment:\\\\\\\"#ifdef USE_ALPHATEST\\\\n\\\\tif ( diffuseColor.a < alphaTest ) discard;\\\\n#endif\\\\\\\",alphatest_pars_fragment:\\\\\\\"#ifdef USE_ALPHATEST\\\\n\\\\tuniform float alphaTest;\\\\n#endif\\\\\\\",aomap_fragment:\\\\\\\"#ifdef USE_AOMAP\\\\n\\\\tfloat ambientOcclusion = ( texture2D( aoMap, vUv2 ).r - 1.0 ) * aoMapIntensity + 1.0;\\\\n\\\\treflectedLight.indirectDiffuse *= ambientOcclusion;\\\\n\\\\t#if defined( USE_ENVMAP ) && defined( STANDARD )\\\\n\\\\t\\\\tfloat dotNV = saturate( dot( geometry.normal, geometry.viewDir ) );\\\\n\\\\t\\\\treflectedLight.indirectSpecular *= computeSpecularOcclusion( dotNV, ambientOcclusion, material.roughness );\\\\n\\\\t#endif\\\\n#endif\\\\\\\",aomap_pars_fragment:\\\\\\\"#ifdef USE_AOMAP\\\\n\\\\tuniform sampler2D aoMap;\\\\n\\\\tuniform float aoMapIntensity;\\\\n#endif\\\\\\\",begin_vertex:\\\\\\\"vec3 transformed = vec3( position );\\\\\\\",beginnormal_vertex:\\\\\\\"vec3 objectNormal = vec3( normal );\\\\n#ifdef USE_TANGENT\\\\n\\\\tvec3 objectTangent = vec3( tangent.xyz );\\\\n#endif\\\\\\\",bsdfs:\\\\\\\"vec3 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 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}\\\\nvec3 BRDF_GGX( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, const in vec3 f0, const in float f90, const in float 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\\\\tfloat V = V_GGX_SmithCorrelated( alpha, dotNL, dotNV );\\\\n\\\\tfloat D = D_GGX( alpha, dotNH );\\\\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}\\\\nfloat 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}\\\\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 sheenTint, 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 sheenTint * ( D * V );\\\\n}\\\\n#endif\\\\\\\",bumpmap_pars_fragment:\\\\\\\"#ifdef USE_BUMPMAP\\\\n\\\\tuniform sampler2D bumpMap;\\\\n\\\\tuniform float bumpScale;\\\\n\\\\tvec2 dHdxy_fwd() {\\\\n\\\\t\\\\tvec2 dSTdx = dFdx( vUv );\\\\n\\\\t\\\\tvec2 dSTdy = dFdy( vUv );\\\\n\\\\t\\\\tfloat Hll = bumpScale * texture2D( bumpMap, vUv ).x;\\\\n\\\\t\\\\tfloat dBx = bumpScale * texture2D( bumpMap, vUv + dSTdx ).x - Hll;\\\\n\\\\t\\\\tfloat dBy = bumpScale * texture2D( bumpMap, vUv + 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 = vec3( dFdx( surf_pos.x ), dFdx( surf_pos.y ), dFdx( surf_pos.z ) );\\\\n\\\\t\\\\tvec3 vSigmaY = vec3( dFdy( surf_pos.x ), dFdy( surf_pos.y ), dFdy( surf_pos.z ) );\\\\n\\\\t\\\\tvec3 vN = surf_norm;\\\\n\\\\t\\\\tvec3 R1 = cross( vSigmaY, vN );\\\\n\\\\t\\\\tvec3 R2 = cross( vN, vSigmaX );\\\\n\\\\t\\\\tfloat fDet = dot( vSigmaX, R1 ) * faceDirection;\\\\n\\\\t\\\\tvec3 vGrad = sign( fDet ) * ( dHdxy.x * R1 + dHdxy.y * R2 );\\\\n\\\\t\\\\treturn normalize( abs( fDet ) * surf_norm - vGrad );\\\\n\\\\t}\\\\n#endif\\\\\\\",clipping_planes_fragment:\\\\\\\"#if NUM_CLIPPING_PLANES > 0\\\\n\\\\tvec4 plane;\\\\n\\\\t#pragma unroll_loop_start\\\\n\\\\tfor ( int i = 0; i < UNION_CLIPPING_PLANES; i ++ ) {\\\\n\\\\t\\\\tplane = clippingPlanes[ i ];\\\\n\\\\t\\\\tif ( dot( vClipPosition, plane.xyz ) > plane.w ) discard;\\\\n\\\\t}\\\\n\\\\t#pragma unroll_loop_end\\\\n\\\\t#if UNION_CLIPPING_PLANES < NUM_CLIPPING_PLANES\\\\n\\\\t\\\\tbool clipped = true;\\\\n\\\\t\\\\t#pragma unroll_loop_start\\\\n\\\\t\\\\tfor ( int i = UNION_CLIPPING_PLANES; i < NUM_CLIPPING_PLANES; i ++ ) {\\\\n\\\\t\\\\t\\\\tplane = clippingPlanes[ i ];\\\\n\\\\t\\\\t\\\\tclipped = ( dot( vClipPosition, plane.xyz ) > plane.w ) && clipped;\\\\n\\\\t\\\\t}\\\\n\\\\t\\\\t#pragma unroll_loop_end\\\\n\\\\t\\\\tif ( clipped ) discard;\\\\n\\\\t#endif\\\\n#endif\\\\\\\",clipping_planes_pars_fragment:\\\\\\\"#if NUM_CLIPPING_PLANES > 0\\\\n\\\\tvarying vec3 vClipPosition;\\\\n\\\\tuniform vec4 clippingPlanes[ NUM_CLIPPING_PLANES ];\\\\n#endif\\\\\\\",clipping_planes_pars_vertex:\\\\\\\"#if NUM_CLIPPING_PLANES > 0\\\\n\\\\tvarying vec3 vClipPosition;\\\\n#endif\\\\\\\",clipping_planes_vertex:\\\\\\\"#if NUM_CLIPPING_PLANES > 0\\\\n\\\\tvClipPosition = - mvPosition.xyz;\\\\n#endif\\\\\\\",color_fragment:\\\\\\\"#if defined( USE_COLOR_ALPHA )\\\\n\\\\tdiffuseColor *= vColor;\\\\n#elif defined( USE_COLOR )\\\\n\\\\tdiffuseColor.rgb *= vColor;\\\\n#endif\\\\\\\",color_pars_fragment:\\\\\\\"#if defined( USE_COLOR_ALPHA )\\\\n\\\\tvarying vec4 vColor;\\\\n#elif defined( USE_COLOR )\\\\n\\\\tvarying vec3 vColor;\\\\n#endif\\\\\\\",color_pars_vertex:\\\\\\\"#if defined( USE_COLOR_ALPHA )\\\\n\\\\tvarying vec4 vColor;\\\\n#elif defined( USE_COLOR ) || defined( USE_INSTANCING_COLOR )\\\\n\\\\tvarying vec3 vColor;\\\\n#endif\\\\\\\",color_vertex:\\\\\\\"#if defined( USE_COLOR_ALPHA )\\\\n\\\\tvColor = vec4( 1.0 );\\\\n#elif defined( USE_COLOR ) || defined( USE_INSTANCING_COLOR )\\\\n\\\\tvColor = vec3( 1.0 );\\\\n#endif\\\\n#ifdef USE_COLOR\\\\n\\\\tvColor *= color;\\\\n#endif\\\\n#ifdef USE_INSTANCING_COLOR\\\\n\\\\tvColor.xyz *= instanceColor.xyz;\\\\n#endif\\\\\\\",common:\\\\\\\"#define PI 3.141592653589793\\\\n#define PI2 6.283185307179586\\\\n#define PI_HALF 1.5707963267948966\\\\n#define RECIPROCAL_PI 0.3183098861837907\\\\n#define RECIPROCAL_PI2 0.15915494309189535\\\\n#define EPSILON 1e-6\\\\n#ifndef saturate\\\\n#define saturate( a ) clamp( a, 0.0, 1.0 )\\\\n#endif\\\\n#define whiteComplement( a ) ( 1.0 - saturate( a ) )\\\\nfloat pow2( const in float x ) { return x*x; }\\\\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 color ) { return dot( color, vec3( 0.3333 ) ); }\\\\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};\\\\nstruct GeometricContext {\\\\n\\\\tvec3 position;\\\\n\\\\tvec3 normal;\\\\n\\\\tvec3 viewDir;\\\\n#ifdef USE_CLEARCOAT\\\\n\\\\tvec3 clearcoatNormal;\\\\n#endif\\\\n};\\\\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 linearToRelativeLuminance( const in vec3 color ) {\\\\n\\\\tvec3 weights = vec3( 0.2126, 0.7152, 0.0722 );\\\\n\\\\treturn dot( weights, color.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}\\\\\\\",cube_uv_reflection_fragment:\\\\\\\"#ifdef ENVMAP_TYPE_CUBE_UV\\\\n\\\\t#define cubeUV_maxMipLevel 8.0\\\\n\\\\t#define cubeUV_minMipLevel 4.0\\\\n\\\\t#define cubeUV_maxTileSize 256.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\\\\tfloat texelSize = 1.0 / ( 3.0 * cubeUV_maxTileSize );\\\\n\\\\t\\\\tvec2 uv = getUV( direction, face ) * ( faceSize - 1.0 );\\\\n\\\\t\\\\tvec2 f = fract( uv );\\\\n\\\\t\\\\tuv += 0.5 - f;\\\\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\\\\tif ( mipInt < cubeUV_maxMipLevel ) {\\\\n\\\\t\\\\t\\\\tuv.y += 2.0 * cubeUV_maxTileSize;\\\\n\\\\t\\\\t}\\\\n\\\\t\\\\tuv.y += filterInt * 2.0 * cubeUV_minTileSize;\\\\n\\\\t\\\\tuv.x += 3.0 * max( 0.0, cubeUV_maxTileSize - 2.0 * faceSize );\\\\n\\\\t\\\\tuv *= texelSize;\\\\n\\\\t\\\\tvec3 tl = envMapTexelToLinear( texture2D( envMap, uv ) ).rgb;\\\\n\\\\t\\\\tuv.x += texelSize;\\\\n\\\\t\\\\tvec3 tr = envMapTexelToLinear( texture2D( envMap, uv ) ).rgb;\\\\n\\\\t\\\\tuv.y += texelSize;\\\\n\\\\t\\\\tvec3 br = envMapTexelToLinear( texture2D( envMap, uv ) ).rgb;\\\\n\\\\t\\\\tuv.x -= texelSize;\\\\n\\\\t\\\\tvec3 bl = envMapTexelToLinear( texture2D( envMap, uv ) ).rgb;\\\\n\\\\t\\\\tvec3 tm = mix( tl, tr, f.x );\\\\n\\\\t\\\\tvec3 bm = mix( bl, br, f.x );\\\\n\\\\t\\\\treturn mix( tm, bm, f.y );\\\\n\\\\t}\\\\n\\\\t#define r0 1.0\\\\n\\\\t#define v0 0.339\\\\n\\\\t#define m0 - 2.0\\\\n\\\\t#define r1 0.8\\\\n\\\\t#define v1 0.276\\\\n\\\\t#define m1 - 1.0\\\\n\\\\t#define r4 0.4\\\\n\\\\t#define v4 0.046\\\\n\\\\t#define m4 2.0\\\\n\\\\t#define r5 0.305\\\\n\\\\t#define v5 0.016\\\\n\\\\t#define m5 3.0\\\\n\\\\t#define r6 0.21\\\\n\\\\t#define v6 0.0038\\\\n\\\\t#define m6 4.0\\\\n\\\\tfloat roughnessToMip( float roughness ) {\\\\n\\\\t\\\\tfloat mip = 0.0;\\\\n\\\\t\\\\tif ( roughness >= r1 ) {\\\\n\\\\t\\\\t\\\\tmip = ( r0 - roughness ) * ( m1 - m0 ) / ( r0 - r1 ) + m0;\\\\n\\\\t\\\\t} else if ( roughness >= r4 ) {\\\\n\\\\t\\\\t\\\\tmip = ( r1 - roughness ) * ( m4 - m1 ) / ( r1 - r4 ) + m1;\\\\n\\\\t\\\\t} else if ( roughness >= r5 ) {\\\\n\\\\t\\\\t\\\\tmip = ( r4 - roughness ) * ( m5 - m4 ) / ( r4 - r5 ) + m4;\\\\n\\\\t\\\\t} else if ( roughness >= r6 ) {\\\\n\\\\t\\\\t\\\\tmip = ( r5 - roughness ) * ( m6 - m5 ) / ( r5 - r6 ) + 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 ), m0, cubeUV_maxMipLevel );\\\\n\\\\t\\\\tfloat mipF = fract( mip );\\\\n\\\\t\\\\tfloat mipInt = floor( mip );\\\\n\\\\t\\\\tvec3 color0 = bilinearCubeUV( envMap, sampleDir, mipInt );\\\\n\\\\t\\\\tif ( mipF == 0.0 ) {\\\\n\\\\t\\\\t\\\\treturn vec4( color0, 1.0 );\\\\n\\\\t\\\\t} else {\\\\n\\\\t\\\\t\\\\tvec3 color1 = bilinearCubeUV( envMap, sampleDir, mipInt + 1.0 );\\\\n\\\\t\\\\t\\\\treturn vec4( mix( color0, color1, mipF ), 1.0 );\\\\n\\\\t\\\\t}\\\\n\\\\t}\\\\n#endif\\\\\\\",defaultnormal_vertex:\\\\\\\"vec3 transformedNormal = objectNormal;\\\\n#ifdef USE_INSTANCING\\\\n\\\\tmat3 m = mat3( instanceMatrix );\\\\n\\\\ttransformedNormal /= vec3( dot( m[ 0 ], m[ 0 ] ), dot( m[ 1 ], m[ 1 ] ), dot( m[ 2 ], m[ 2 ] ) );\\\\n\\\\ttransformedNormal = m * transformedNormal;\\\\n#endif\\\\ntransformedNormal = normalMatrix * transformedNormal;\\\\n#ifdef FLIP_SIDED\\\\n\\\\ttransformedNormal = - transformedNormal;\\\\n#endif\\\\n#ifdef USE_TANGENT\\\\n\\\\tvec3 transformedTangent = ( modelViewMatrix * vec4( objectTangent, 0.0 ) ).xyz;\\\\n\\\\t#ifdef FLIP_SIDED\\\\n\\\\t\\\\ttransformedTangent = - transformedTangent;\\\\n\\\\t#endif\\\\n#endif\\\\\\\",displacementmap_pars_vertex:\\\\\\\"#ifdef USE_DISPLACEMENTMAP\\\\n\\\\tuniform sampler2D displacementMap;\\\\n\\\\tuniform float displacementScale;\\\\n\\\\tuniform float displacementBias;\\\\n#endif\\\\\\\",displacementmap_vertex:\\\\\\\"#ifdef USE_DISPLACEMENTMAP\\\\n\\\\ttransformed += normalize( objectNormal ) * ( texture2D( displacementMap, vUv ).x * displacementScale + displacementBias );\\\\n#endif\\\\\\\",emissivemap_fragment:\\\\\\\"#ifdef USE_EMISSIVEMAP\\\\n\\\\tvec4 emissiveColor = texture2D( emissiveMap, vUv );\\\\n\\\\temissiveColor.rgb = emissiveMapTexelToLinear( emissiveColor ).rgb;\\\\n\\\\ttotalEmissiveRadiance *= emissiveColor.rgb;\\\\n#endif\\\\\\\",emissivemap_pars_fragment:\\\\\\\"#ifdef USE_EMISSIVEMAP\\\\n\\\\tuniform sampler2D emissiveMap;\\\\n#endif\\\\\\\",encodings_fragment:\\\\\\\"gl_FragColor = linearToOutputTexel( gl_FragColor );\\\\\\\",encodings_pars_fragment:\\\\\\\"\\\\nvec4 LinearToLinear( in vec4 value ) {\\\\n\\\\treturn value;\\\\n}\\\\nvec4 GammaToLinear( in vec4 value, in float gammaFactor ) {\\\\n\\\\treturn vec4( pow( value.rgb, vec3( gammaFactor ) ), value.a );\\\\n}\\\\nvec4 LinearToGamma( in vec4 value, in float gammaFactor ) {\\\\n\\\\treturn vec4( pow( value.rgb, vec3( 1.0 / gammaFactor ) ), value.a );\\\\n}\\\\nvec4 sRGBToLinear( in vec4 value ) {\\\\n\\\\treturn vec4( mix( pow( value.rgb * 0.9478672986 + vec3( 0.0521327014 ), vec3( 2.4 ) ), value.rgb * 0.0773993808, vec3( lessThanEqual( value.rgb, vec3( 0.04045 ) ) ) ), value.a );\\\\n}\\\\nvec4 LinearTosRGB( 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 RGBEToLinear( in vec4 value ) {\\\\n\\\\treturn vec4( value.rgb * exp2( value.a * 255.0 - 128.0 ), 1.0 );\\\\n}\\\\nvec4 LinearToRGBE( in vec4 value ) {\\\\n\\\\tfloat maxComponent = max( max( value.r, value.g ), value.b );\\\\n\\\\tfloat fExp = clamp( ceil( log2( maxComponent ) ), -128.0, 127.0 );\\\\n\\\\treturn vec4( value.rgb / exp2( fExp ), ( fExp + 128.0 ) / 255.0 );\\\\n}\\\\nvec4 RGBMToLinear( in vec4 value, in float maxRange ) {\\\\n\\\\treturn vec4( value.rgb * value.a * maxRange, 1.0 );\\\\n}\\\\nvec4 LinearToRGBM( in vec4 value, in float maxRange ) {\\\\n\\\\tfloat maxRGB = max( value.r, max( value.g, value.b ) );\\\\n\\\\tfloat M = clamp( maxRGB / maxRange, 0.0, 1.0 );\\\\n\\\\tM = ceil( M * 255.0 ) / 255.0;\\\\n\\\\treturn vec4( value.rgb / ( M * maxRange ), M );\\\\n}\\\\nvec4 RGBDToLinear( in vec4 value, in float maxRange ) {\\\\n\\\\treturn vec4( value.rgb * ( ( maxRange / 255.0 ) / value.a ), 1.0 );\\\\n}\\\\nvec4 LinearToRGBD( in vec4 value, in float maxRange ) {\\\\n\\\\tfloat maxRGB = max( value.r, max( value.g, value.b ) );\\\\n\\\\tfloat D = max( maxRange / maxRGB, 1.0 );\\\\n\\\\tD = clamp( floor( D ) / 255.0, 0.0, 1.0 );\\\\n\\\\treturn vec4( value.rgb * ( D * ( 255.0 / maxRange ) ), D );\\\\n}\\\\nconst mat3 cLogLuvM = mat3( 0.2209, 0.3390, 0.4184, 0.1138, 0.6780, 0.7319, 0.0102, 0.1130, 0.2969 );\\\\nvec4 LinearToLogLuv( in vec4 value ) {\\\\n\\\\tvec3 Xp_Y_XYZp = cLogLuvM * value.rgb;\\\\n\\\\tXp_Y_XYZp = max( Xp_Y_XYZp, vec3( 1e-6, 1e-6, 1e-6 ) );\\\\n\\\\tvec4 vResult;\\\\n\\\\tvResult.xy = Xp_Y_XYZp.xy / Xp_Y_XYZp.z;\\\\n\\\\tfloat Le = 2.0 * log2(Xp_Y_XYZp.y) + 127.0;\\\\n\\\\tvResult.w = fract( Le );\\\\n\\\\tvResult.z = ( Le - ( floor( vResult.w * 255.0 ) ) / 255.0 ) / 255.0;\\\\n\\\\treturn vResult;\\\\n}\\\\nconst mat3 cLogLuvInverseM = mat3( 6.0014, -2.7008, -1.7996, -1.3320, 3.1029, -5.7721, 0.3008, -1.0882, 5.6268 );\\\\nvec4 LogLuvToLinear( in vec4 value ) {\\\\n\\\\tfloat Le = value.z * 255.0 + value.w;\\\\n\\\\tvec3 Xp_Y_XYZp;\\\\n\\\\tXp_Y_XYZp.y = exp2( ( Le - 127.0 ) / 2.0 );\\\\n\\\\tXp_Y_XYZp.z = Xp_Y_XYZp.y / value.y;\\\\n\\\\tXp_Y_XYZp.x = value.x * Xp_Y_XYZp.z;\\\\n\\\\tvec3 vRGB = cLogLuvInverseM * Xp_Y_XYZp.rgb;\\\\n\\\\treturn vec4( max( vRGB, 0.0 ), 1.0 );\\\\n}\\\\\\\",envmap_fragment:\\\\\\\"#ifdef USE_ENVMAP\\\\n\\\\t#ifdef ENV_WORLDPOS\\\\n\\\\t\\\\tvec3 cameraToFrag;\\\\n\\\\t\\\\tif ( isOrthographic ) {\\\\n\\\\t\\\\t\\\\tcameraToFrag = normalize( vec3( - viewMatrix[ 0 ][ 2 ], - viewMatrix[ 1 ][ 2 ], - viewMatrix[ 2 ][ 2 ] ) );\\\\n\\\\t\\\\t} else {\\\\n\\\\t\\\\t\\\\tcameraToFrag = normalize( vWorldPosition - cameraPosition );\\\\n\\\\t\\\\t}\\\\n\\\\t\\\\tvec3 worldNormal = inverseTransformDirection( normal, viewMatrix );\\\\n\\\\t\\\\t#ifdef ENVMAP_MODE_REFLECTION\\\\n\\\\t\\\\t\\\\tvec3 reflectVec = reflect( cameraToFrag, worldNormal );\\\\n\\\\t\\\\t#else\\\\n\\\\t\\\\t\\\\tvec3 reflectVec = refract( cameraToFrag, worldNormal, refractionRatio );\\\\n\\\\t\\\\t#endif\\\\n\\\\t#else\\\\n\\\\t\\\\tvec3 reflectVec = vReflect;\\\\n\\\\t#endif\\\\n\\\\t#ifdef ENVMAP_TYPE_CUBE\\\\n\\\\t\\\\tvec4 envColor = textureCube( envMap, vec3( flipEnvMap * reflectVec.x, reflectVec.yz ) );\\\\n\\\\t\\\\tenvColor = envMapTexelToLinear( envColor );\\\\n\\\\t#elif defined( ENVMAP_TYPE_CUBE_UV )\\\\n\\\\t\\\\tvec4 envColor = textureCubeUV( envMap, reflectVec, 0.0 );\\\\n\\\\t#else\\\\n\\\\t\\\\tvec4 envColor = vec4( 0.0 );\\\\n\\\\t#endif\\\\n\\\\t#ifdef ENVMAP_BLENDING_MULTIPLY\\\\n\\\\t\\\\toutgoingLight = mix( outgoingLight, outgoingLight * envColor.xyz, specularStrength * reflectivity );\\\\n\\\\t#elif defined( ENVMAP_BLENDING_MIX )\\\\n\\\\t\\\\toutgoingLight = mix( outgoingLight, envColor.xyz, specularStrength * reflectivity );\\\\n\\\\t#elif defined( ENVMAP_BLENDING_ADD )\\\\n\\\\t\\\\toutgoingLight += envColor.xyz * specularStrength * reflectivity;\\\\n\\\\t#endif\\\\n#endif\\\\\\\",envmap_common_pars_fragment:\\\\\\\"#ifdef USE_ENVMAP\\\\n\\\\tuniform float envMapIntensity;\\\\n\\\\tuniform float flipEnvMap;\\\\n\\\\tuniform int maxMipLevel;\\\\n\\\\t#ifdef ENVMAP_TYPE_CUBE\\\\n\\\\t\\\\tuniform samplerCube envMap;\\\\n\\\\t#else\\\\n\\\\t\\\\tuniform sampler2D envMap;\\\\n\\\\t#endif\\\\n\\\\t\\\\n#endif\\\\\\\",envmap_pars_fragment:\\\\\\\"#ifdef USE_ENVMAP\\\\n\\\\tuniform float reflectivity;\\\\n\\\\t#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG )\\\\n\\\\t\\\\t#define ENV_WORLDPOS\\\\n\\\\t#endif\\\\n\\\\t#ifdef ENV_WORLDPOS\\\\n\\\\t\\\\tvarying vec3 vWorldPosition;\\\\n\\\\t\\\\tuniform float refractionRatio;\\\\n\\\\t#else\\\\n\\\\t\\\\tvarying vec3 vReflect;\\\\n\\\\t#endif\\\\n#endif\\\\\\\",envmap_pars_vertex:\\\\\\\"#ifdef USE_ENVMAP\\\\n\\\\t#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) ||defined( PHONG )\\\\n\\\\t\\\\t#define ENV_WORLDPOS\\\\n\\\\t#endif\\\\n\\\\t#ifdef ENV_WORLDPOS\\\\n\\\\t\\\\t\\\\n\\\\t\\\\tvarying vec3 vWorldPosition;\\\\n\\\\t#else\\\\n\\\\t\\\\tvarying vec3 vReflect;\\\\n\\\\t\\\\tuniform float refractionRatio;\\\\n\\\\t#endif\\\\n#endif\\\\\\\",envmap_physical_pars_fragment:\\\\\\\"#if defined( USE_ENVMAP )\\\\n\\\\t#ifdef ENVMAP_MODE_REFRACTION\\\\n\\\\t\\\\tuniform float refractionRatio;\\\\n\\\\t#endif\\\\n\\\\tvec3 getIBLIrradiance( const in vec3 normal ) {\\\\n\\\\t\\\\t#if defined( 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#if defined( ENVMAP_TYPE_CUBE_UV )\\\\n\\\\t\\\\t\\\\tvec3 reflectVec;\\\\n\\\\t\\\\t\\\\t#ifdef ENVMAP_MODE_REFLECTION\\\\n\\\\t\\\\t\\\\t\\\\treflectVec = reflect( - viewDir, normal );\\\\n\\\\t\\\\t\\\\t\\\\treflectVec = normalize( mix( reflectVec, normal, roughness * roughness) );\\\\n\\\\t\\\\t\\\\t#else\\\\n\\\\t\\\\t\\\\t\\\\treflectVec = refract( - viewDir, normal, refractionRatio );\\\\n\\\\t\\\\t\\\\t#endif\\\\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#endif\\\\\\\",envmap_vertex:\\\\\\\"#ifdef USE_ENVMAP\\\\n\\\\t#ifdef ENV_WORLDPOS\\\\n\\\\t\\\\tvWorldPosition = worldPosition.xyz;\\\\n\\\\t#else\\\\n\\\\t\\\\tvec3 cameraToVertex;\\\\n\\\\t\\\\tif ( isOrthographic ) {\\\\n\\\\t\\\\t\\\\tcameraToVertex = normalize( vec3( - viewMatrix[ 0 ][ 2 ], - viewMatrix[ 1 ][ 2 ], - viewMatrix[ 2 ][ 2 ] ) );\\\\n\\\\t\\\\t} else {\\\\n\\\\t\\\\t\\\\tcameraToVertex = normalize( worldPosition.xyz - cameraPosition );\\\\n\\\\t\\\\t}\\\\n\\\\t\\\\tvec3 worldNormal = inverseTransformDirection( transformedNormal, viewMatrix );\\\\n\\\\t\\\\t#ifdef ENVMAP_MODE_REFLECTION\\\\n\\\\t\\\\t\\\\tvReflect = reflect( cameraToVertex, worldNormal );\\\\n\\\\t\\\\t#else\\\\n\\\\t\\\\t\\\\tvReflect = refract( cameraToVertex, worldNormal, refractionRatio );\\\\n\\\\t\\\\t#endif\\\\n\\\\t#endif\\\\n#endif\\\\\\\",fog_vertex:\\\\\\\"#ifdef USE_FOG\\\\n\\\\tvFogDepth = - mvPosition.z;\\\\n#endif\\\\\\\",fog_pars_vertex:\\\\\\\"#ifdef USE_FOG\\\\n\\\\tvarying float vFogDepth;\\\\n#endif\\\\\\\",fog_fragment:\\\\\\\"#ifdef USE_FOG\\\\n\\\\t#ifdef FOG_EXP2\\\\n\\\\t\\\\tfloat fogFactor = 1.0 - exp( - fogDensity * fogDensity * vFogDepth * vFogDepth );\\\\n\\\\t#else\\\\n\\\\t\\\\tfloat fogFactor = smoothstep( fogNear, fogFar, vFogDepth );\\\\n\\\\t#endif\\\\n\\\\tgl_FragColor.rgb = mix( gl_FragColor.rgb, fogColor, fogFactor );\\\\n#endif\\\\\\\",fog_pars_fragment:\\\\\\\"#ifdef USE_FOG\\\\n\\\\tuniform vec3 fogColor;\\\\n\\\\tvarying float vFogDepth;\\\\n\\\\t#ifdef FOG_EXP2\\\\n\\\\t\\\\tuniform float fogDensity;\\\\n\\\\t#else\\\\n\\\\t\\\\tuniform float fogNear;\\\\n\\\\t\\\\tuniform float fogFar;\\\\n\\\\t#endif\\\\n#endif\\\\\\\",gradientmap_pars_fragment:\\\\\\\"#ifdef USE_GRADIENTMAP\\\\n\\\\tuniform sampler2D gradientMap;\\\\n#endif\\\\nvec3 getGradientIrradiance( vec3 normal, vec3 lightDirection ) {\\\\n\\\\tfloat dotNL = dot( normal, lightDirection );\\\\n\\\\tvec2 coord = vec2( dotNL * 0.5 + 0.5, 0.0 );\\\\n\\\\t#ifdef USE_GRADIENTMAP\\\\n\\\\t\\\\treturn texture2D( gradientMap, coord ).rgb;\\\\n\\\\t#else\\\\n\\\\t\\\\treturn ( coord.x < 0.7 ) ? vec3( 0.7 ) : vec3( 1.0 );\\\\n\\\\t#endif\\\\n}\\\\\\\",lightmap_fragment:\\\\\\\"#ifdef USE_LIGHTMAP\\\\n\\\\tvec4 lightMapTexel = texture2D( lightMap, vUv2 );\\\\n\\\\tvec3 lightMapIrradiance = lightMapTexelToLinear( lightMapTexel ).rgb * lightMapIntensity;\\\\n\\\\t#ifndef PHYSICALLY_CORRECT_LIGHTS\\\\n\\\\t\\\\tlightMapIrradiance *= PI;\\\\n\\\\t#endif\\\\n\\\\treflectedLight.indirectDiffuse += lightMapIrradiance;\\\\n#endif\\\\\\\",lightmap_pars_fragment:\\\\\\\"#ifdef USE_LIGHTMAP\\\\n\\\\tuniform sampler2D lightMap;\\\\n\\\\tuniform float lightMapIntensity;\\\\n#endif\\\\\\\",lights_lambert_vertex:\\\\\\\"vec3 diffuse = vec3( 1.0 );\\\\nGeometricContext geometry;\\\\ngeometry.position = mvPosition.xyz;\\\\ngeometry.normal = normalize( transformedNormal );\\\\ngeometry.viewDir = ( isOrthographic ) ? vec3( 0, 0, 1 ) : normalize( -mvPosition.xyz );\\\\nGeometricContext backGeometry;\\\\nbackGeometry.position = geometry.position;\\\\nbackGeometry.normal = -geometry.normal;\\\\nbackGeometry.viewDir = geometry.viewDir;\\\\nvLightFront = vec3( 0.0 );\\\\nvIndirectFront = vec3( 0.0 );\\\\n#ifdef DOUBLE_SIDED\\\\n\\\\tvLightBack = vec3( 0.0 );\\\\n\\\\tvIndirectBack = vec3( 0.0 );\\\\n#endif\\\\nIncidentLight directLight;\\\\nfloat dotNL;\\\\nvec3 directLightColor_Diffuse;\\\\nvIndirectFront += getAmbientLightIrradiance( ambientLightColor );\\\\nvIndirectFront += getLightProbeIrradiance( lightProbe, geometry.normal );\\\\n#ifdef DOUBLE_SIDED\\\\n\\\\tvIndirectBack += getAmbientLightIrradiance( ambientLightColor );\\\\n\\\\tvIndirectBack += getLightProbeIrradiance( lightProbe, backGeometry.normal );\\\\n#endif\\\\n#if NUM_POINT_LIGHTS > 0\\\\n\\\\t#pragma unroll_loop_start\\\\n\\\\tfor ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) {\\\\n\\\\t\\\\tgetPointLightInfo( pointLights[ i ], geometry, directLight );\\\\n\\\\t\\\\tdotNL = dot( geometry.normal, directLight.direction );\\\\n\\\\t\\\\tdirectLightColor_Diffuse = directLight.color;\\\\n\\\\t\\\\tvLightFront += saturate( dotNL ) * directLightColor_Diffuse;\\\\n\\\\t\\\\t#ifdef DOUBLE_SIDED\\\\n\\\\t\\\\t\\\\tvLightBack += saturate( - dotNL ) * directLightColor_Diffuse;\\\\n\\\\t\\\\t#endif\\\\n\\\\t}\\\\n\\\\t#pragma unroll_loop_end\\\\n#endif\\\\n#if NUM_SPOT_LIGHTS > 0\\\\n\\\\t#pragma unroll_loop_start\\\\n\\\\tfor ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) {\\\\n\\\\t\\\\tgetSpotLightInfo( spotLights[ i ], geometry, directLight );\\\\n\\\\t\\\\tdotNL = dot( geometry.normal, directLight.direction );\\\\n\\\\t\\\\tdirectLightColor_Diffuse = directLight.color;\\\\n\\\\t\\\\tvLightFront += saturate( dotNL ) * directLightColor_Diffuse;\\\\n\\\\t\\\\t#ifdef DOUBLE_SIDED\\\\n\\\\t\\\\t\\\\tvLightBack += saturate( - dotNL ) * directLightColor_Diffuse;\\\\n\\\\t\\\\t#endif\\\\n\\\\t}\\\\n\\\\t#pragma unroll_loop_end\\\\n#endif\\\\n#if NUM_DIR_LIGHTS > 0\\\\n\\\\t#pragma unroll_loop_start\\\\n\\\\tfor ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) {\\\\n\\\\t\\\\tgetDirectionalLightInfo( directionalLights[ i ], geometry, directLight );\\\\n\\\\t\\\\tdotNL = dot( geometry.normal, directLight.direction );\\\\n\\\\t\\\\tdirectLightColor_Diffuse = directLight.color;\\\\n\\\\t\\\\tvLightFront += saturate( dotNL ) * directLightColor_Diffuse;\\\\n\\\\t\\\\t#ifdef DOUBLE_SIDED\\\\n\\\\t\\\\t\\\\tvLightBack += saturate( - dotNL ) * directLightColor_Diffuse;\\\\n\\\\t\\\\t#endif\\\\n\\\\t}\\\\n\\\\t#pragma unroll_loop_end\\\\n#endif\\\\n#if NUM_HEMI_LIGHTS > 0\\\\n\\\\t#pragma unroll_loop_start\\\\n\\\\tfor ( int i = 0; i < NUM_HEMI_LIGHTS; i ++ ) {\\\\n\\\\t\\\\tvIndirectFront += getHemisphereLightIrradiance( hemisphereLights[ i ], geometry.normal );\\\\n\\\\t\\\\t#ifdef DOUBLE_SIDED\\\\n\\\\t\\\\t\\\\tvIndirectBack += getHemisphereLightIrradiance( hemisphereLights[ i ], backGeometry.normal );\\\\n\\\\t\\\\t#endif\\\\n\\\\t}\\\\n\\\\t#pragma unroll_loop_end\\\\n#endif\\\\\\\",lights_pars_begin:\\\\\\\"uniform bool receiveShadow;\\\\nuniform vec3 ambientLightColor;\\\\nuniform vec3 lightProbe[ 9 ];\\\\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 ( PHYSICALLY_CORRECT_LIGHTS )\\\\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#else\\\\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#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, const in GeometricContext geometry, 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 GeometricContext geometry, out IncidentLight light ) {\\\\n\\\\t\\\\tvec3 lVector = pointLight.position - geometry.position;\\\\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 GeometricContext geometry, out IncidentLight light ) {\\\\n\\\\t\\\\tvec3 lVector = spotLight.position - geometry.position;\\\\n\\\\t\\\\tlight.direction = normalize( lVector );\\\\n\\\\t\\\\tfloat angleCos = dot( light.direction, spotLight.direction );\\\\n\\\\t\\\\tfloat spotAttenuation = getSpotAttenuation( spotLight.coneCos, spotLight.penumbraCos, angleCos );\\\\n\\\\t\\\\tif ( spotAttenuation > 0.0 ) {\\\\n\\\\t\\\\t\\\\tfloat lightDistance = length( lVector );\\\\n\\\\t\\\\t\\\\tlight.color = spotLight.color * spotAttenuation;\\\\n\\\\t\\\\t\\\\tlight.color *= getDistanceAttenuation( lightDistance, spotLight.distance, spotLight.decay );\\\\n\\\\t\\\\t\\\\tlight.visible = ( light.color != vec3( 0.0 ) );\\\\n\\\\t\\\\t} else {\\\\n\\\\t\\\\t\\\\tlight.color = vec3( 0.0 );\\\\n\\\\t\\\\t\\\\tlight.visible = false;\\\\n\\\\t\\\\t}\\\\n\\\\t}\\\\n#endif\\\\n#if NUM_RECT_AREA_LIGHTS > 0\\\\n\\\\tstruct RectAreaLight {\\\\n\\\\t\\\\tvec3 color;\\\\n\\\\t\\\\tvec3 position;\\\\n\\\\t\\\\tvec3 halfWidth;\\\\n\\\\t\\\\tvec3 halfHeight;\\\\n\\\\t};\\\\n\\\\tuniform sampler2D ltc_1;\\\\tuniform sampler2D ltc_2;\\\\n\\\\tuniform RectAreaLight rectAreaLights[ NUM_RECT_AREA_LIGHTS ];\\\\n#endif\\\\n#if NUM_HEMI_LIGHTS > 0\\\\n\\\\tstruct HemisphereLight {\\\\n\\\\t\\\\tvec3 direction;\\\\n\\\\t\\\\tvec3 skyColor;\\\\n\\\\t\\\\tvec3 groundColor;\\\\n\\\\t};\\\\n\\\\tuniform HemisphereLight hemisphereLights[ NUM_HEMI_LIGHTS ];\\\\n\\\\tvec3 getHemisphereLightIrradiance( const in HemisphereLight hemiLight, const in vec3 normal ) {\\\\n\\\\t\\\\tfloat dotNL = dot( normal, hemiLight.direction );\\\\n\\\\t\\\\tfloat hemiDiffuseWeight = 0.5 * dotNL + 0.5;\\\\n\\\\t\\\\tvec3 irradiance = mix( hemiLight.groundColor, hemiLight.skyColor, hemiDiffuseWeight );\\\\n\\\\t\\\\treturn irradiance;\\\\n\\\\t}\\\\n#endif\\\\\\\",lights_toon_fragment:\\\\\\\"ToonMaterial material;\\\\nmaterial.diffuseColor = diffuseColor.rgb;\\\\\\\",lights_toon_pars_fragment:\\\\\\\"varying vec3 vViewPosition;\\\\nstruct ToonMaterial {\\\\n\\\\tvec3 diffuseColor;\\\\n};\\\\nvoid RE_Direct_Toon( const in IncidentLight directLight, const in GeometricContext geometry, const in ToonMaterial material, inout ReflectedLight reflectedLight ) {\\\\n\\\\tvec3 irradiance = getGradientIrradiance( geometry.normal, directLight.direction ) * directLight.color;\\\\n\\\\treflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\\\\n}\\\\nvoid RE_IndirectDiffuse_Toon( const in vec3 irradiance, const in GeometricContext geometry, 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\\\\n#define Material_LightProbeLOD( material )\\\\t(0)\\\\\\\",lights_phong_fragment:\\\\\\\"BlinnPhongMaterial material;\\\\nmaterial.diffuseColor = diffuseColor.rgb;\\\\nmaterial.specularColor = specular;\\\\nmaterial.specularShininess = shininess;\\\\nmaterial.specularStrength = specularStrength;\\\\\\\",lights_phong_pars_fragment:\\\\\\\"varying vec3 vViewPosition;\\\\nstruct BlinnPhongMaterial {\\\\n\\\\tvec3 diffuseColor;\\\\n\\\\tvec3 specularColor;\\\\n\\\\tfloat specularShininess;\\\\n\\\\tfloat specularStrength;\\\\n};\\\\nvoid RE_Direct_BlinnPhong( const in IncidentLight directLight, const in GeometricContext geometry, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) {\\\\n\\\\tfloat dotNL = saturate( dot( geometry.normal, directLight.direction ) );\\\\n\\\\tvec3 irradiance = dotNL * directLight.color;\\\\n\\\\treflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\\\\n\\\\treflectedLight.directSpecular += irradiance * BRDF_BlinnPhong( directLight.direction, geometry.viewDir, geometry.normal, material.specularColor, material.specularShininess ) * material.specularStrength;\\\\n}\\\\nvoid RE_IndirectDiffuse_BlinnPhong( const in vec3 irradiance, const in GeometricContext geometry, 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\\\\n#define Material_LightProbeLOD( material )\\\\t(0)\\\\\\\",lights_physical_fragment:\\\\\\\"PhysicalMaterial material;\\\\nmaterial.diffuseColor = diffuseColor.rgb * ( 1.0 - metalnessFactor );\\\\nvec3 dxy = max( abs( dFdx( geometryNormal ) ), abs( dFdy( geometryNormal ) ) );\\\\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\\\\t#ifdef SPECULAR\\\\n\\\\t\\\\tfloat specularIntensityFactor = specularIntensity;\\\\n\\\\t\\\\tvec3 specularTintFactor = specularTint;\\\\n\\\\t\\\\t#ifdef USE_SPECULARINTENSITYMAP\\\\n\\\\t\\\\t\\\\tspecularIntensityFactor *= texture2D( specularIntensityMap, vUv ).a;\\\\n\\\\t\\\\t#endif\\\\n\\\\t\\\\t#ifdef USE_SPECULARTINTMAP\\\\n\\\\t\\\\t\\\\tspecularTintFactor *= specularTintMapTexelToLinear( texture2D( specularTintMap, vUv ) ).rgb;\\\\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 specularTintFactor = vec3( 1.0 );\\\\n\\\\t\\\\tmaterial.specularF90 = 1.0;\\\\n\\\\t#endif\\\\n\\\\tmaterial.specularColor = mix( min( pow2( ( ior - 1.0 ) / ( ior + 1.0 ) ) * specularTintFactor, 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, vUv ).x;\\\\n\\\\t#endif\\\\n\\\\t#ifdef USE_CLEARCOAT_ROUGHNESSMAP\\\\n\\\\t\\\\tmaterial.clearcoatRoughness *= texture2D( clearcoatRoughnessMap, vUv ).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_SHEEN\\\\n\\\\tmaterial.sheenTint = sheenTint;\\\\n\\\\tmaterial.sheenRoughness = clamp( sheenRoughness, 0.07, 1.0 );\\\\n#endif\\\\\\\",lights_physical_pars_fragment:\\\\\\\"struct PhysicalMaterial {\\\\n\\\\tvec3 diffuseColor;\\\\n\\\\tfloat roughness;\\\\n\\\\tvec3 specularColor;\\\\n\\\\tfloat specularF90;\\\\n\\\\t#ifdef USE_CLEARCOAT\\\\n\\\\t\\\\tfloat clearcoat;\\\\n\\\\t\\\\tfloat clearcoatRoughness;\\\\n\\\\t\\\\tvec3 clearcoatF0;\\\\n\\\\t\\\\tfloat clearcoatF90;\\\\n\\\\t#endif\\\\n\\\\t#ifdef USE_SHEEN\\\\n\\\\t\\\\tvec3 sheenTint;\\\\n\\\\t\\\\tfloat sheenRoughness;\\\\n\\\\t#endif\\\\n};\\\\nvec3 clearcoatSpecular = vec3( 0.0 );\\\\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}\\\\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\\\\tvec2 fab = DFGApprox( normal, viewDir, roughness );\\\\n\\\\tvec3 FssEss = specularColor * fab.x + specularF90 * fab.y;\\\\n\\\\tfloat Ess = fab.x + fab.y;\\\\n\\\\tfloat Ems = 1.0 - Ess;\\\\n\\\\tvec3 Favg = specularColor + ( 1.0 - specularColor ) * 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 GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\\\\n\\\\t\\\\tvec3 normal = geometry.normal;\\\\n\\\\t\\\\tvec3 viewDir = geometry.viewDir;\\\\n\\\\t\\\\tvec3 position = geometry.position;\\\\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 GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\\\\n\\\\tfloat dotNL = saturate( dot( geometry.normal, directLight.direction ) );\\\\n\\\\tvec3 irradiance = dotNL * directLight.color;\\\\n\\\\t#ifdef USE_CLEARCOAT\\\\n\\\\t\\\\tfloat dotNLcc = saturate( dot( geometry.clearcoatNormal, directLight.direction ) );\\\\n\\\\t\\\\tvec3 ccIrradiance = dotNLcc * directLight.color;\\\\n\\\\t\\\\tclearcoatSpecular += ccIrradiance * BRDF_GGX( directLight.direction, geometry.viewDir, geometry.clearcoatNormal, material.clearcoatF0, material.clearcoatF90, material.clearcoatRoughness );\\\\n\\\\t#endif\\\\n\\\\t#ifdef USE_SHEEN\\\\n\\\\t\\\\treflectedLight.directSpecular += irradiance * BRDF_Sheen( directLight.direction, geometry.viewDir, geometry.normal, material.sheenTint, material.sheenRoughness );\\\\n\\\\t#endif\\\\n\\\\treflectedLight.directSpecular += irradiance * BRDF_GGX( directLight.direction, geometry.viewDir, geometry.normal, material.specularColor, material.specularF90, material.roughness );\\\\n\\\\treflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\\\\n}\\\\nvoid RE_IndirectDiffuse_Physical( const in vec3 irradiance, const in GeometricContext geometry, 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 GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight) {\\\\n\\\\t#ifdef USE_CLEARCOAT\\\\n\\\\t\\\\tclearcoatSpecular += clearcoatRadiance * EnvironmentBRDF( geometry.clearcoatNormal, geometry.viewDir, material.clearcoatF0, material.clearcoatF90, material.clearcoatRoughness );\\\\n\\\\t#endif\\\\n\\\\tvec3 singleScattering = vec3( 0.0 );\\\\n\\\\tvec3 multiScattering = vec3( 0.0 );\\\\n\\\\tvec3 cosineWeightedIrradiance = irradiance * RECIPROCAL_PI;\\\\n\\\\tcomputeMultiscattering( geometry.normal, geometry.viewDir, material.specularColor, material.specularF90, material.roughness, singleScattering, multiScattering );\\\\n\\\\tvec3 diffuse = material.diffuseColor * ( 1.0 - ( singleScattering + multiScattering ) );\\\\n\\\\treflectedLight.indirectSpecular += radiance * singleScattering;\\\\n\\\\treflectedLight.indirectSpecular += multiScattering * cosineWeightedIrradiance;\\\\n\\\\treflectedLight.indirectDiffuse += diffuse * cosineWeightedIrradiance;\\\\n}\\\\n#define RE_Direct\\\\t\\\\t\\\\t\\\\tRE_Direct_Physical\\\\n#define RE_Direct_RectArea\\\\t\\\\tRE_Direct_RectArea_Physical\\\\n#define RE_IndirectDiffuse\\\\t\\\\tRE_IndirectDiffuse_Physical\\\\n#define RE_IndirectSpecular\\\\t\\\\tRE_IndirectSpecular_Physical\\\\nfloat computeSpecularOcclusion( const in float dotNV, const in float ambientOcclusion, const in float roughness ) {\\\\n\\\\treturn saturate( pow( dotNV + ambientOcclusion, exp2( - 16.0 * roughness - 1.0 ) ) - 1.0 + ambientOcclusion );\\\\n}\\\\\\\",lights_fragment_begin:\\\\\\\"\\\\nGeometricContext geometry;\\\\ngeometry.position = - vViewPosition;\\\\ngeometry.normal = normal;\\\\ngeometry.viewDir = ( isOrthographic ) ? vec3( 0, 0, 1 ) : normalize( vViewPosition );\\\\n#ifdef USE_CLEARCOAT\\\\n\\\\tgeometry.clearcoatNormal = clearcoatNormal;\\\\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, geometry, directLight );\\\\n\\\\t\\\\t#if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_POINT_LIGHT_SHADOWS )\\\\n\\\\t\\\\tpointLightShadow = pointLightShadows[ i ];\\\\n\\\\t\\\\tdirectLight.color *= all( bvec2( 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, geometry, 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\\\\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, geometry, directLight );\\\\n\\\\t\\\\t#if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS )\\\\n\\\\t\\\\tspotLightShadow = spotLightShadows[ i ];\\\\n\\\\t\\\\tdirectLight.color *= all( bvec2( directLight.visible, receiveShadow ) ) ? getShadow( spotShadowMap[ i ], spotLightShadow.shadowMapSize, spotLightShadow.shadowBias, spotLightShadow.shadowRadius, vSpotShadowCoord[ i ] ) : 1.0;\\\\n\\\\t\\\\t#endif\\\\n\\\\t\\\\tRE_Direct( directLight, geometry, 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, geometry, directLight );\\\\n\\\\t\\\\t#if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_DIR_LIGHT_SHADOWS )\\\\n\\\\t\\\\tdirectionalLightShadow = directionalLightShadows[ i ];\\\\n\\\\t\\\\tdirectLight.color *= all( bvec2( 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, geometry, 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, geometry, 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\\\\tirradiance += getLightProbeIrradiance( lightProbe, geometry.normal );\\\\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 ], geometry.normal );\\\\n\\\\t\\\\t}\\\\n\\\\t\\\\t#pragma unroll_loop_end\\\\n\\\\t#endif\\\\n#endif\\\\n#if defined( RE_IndirectSpecular )\\\\n\\\\tvec3 radiance = vec3( 0.0 );\\\\n\\\\tvec3 clearcoatRadiance = vec3( 0.0 );\\\\n#endif\\\\\\\",lights_fragment_maps:\\\\\\\"#if defined( RE_IndirectDiffuse )\\\\n\\\\t#ifdef USE_LIGHTMAP\\\\n\\\\t\\\\tvec4 lightMapTexel = texture2D( lightMap, vUv2 );\\\\n\\\\t\\\\tvec3 lightMapIrradiance = lightMapTexelToLinear( lightMapTexel ).rgb * lightMapIntensity;\\\\n\\\\t\\\\t#ifndef PHYSICALLY_CORRECT_LIGHTS\\\\n\\\\t\\\\t\\\\tlightMapIrradiance *= PI;\\\\n\\\\t\\\\t#endif\\\\n\\\\t\\\\tirradiance += lightMapIrradiance;\\\\n\\\\t#endif\\\\n\\\\t#if defined( USE_ENVMAP ) && defined( STANDARD ) && defined( ENVMAP_TYPE_CUBE_UV )\\\\n\\\\t\\\\tiblIrradiance += getIBLIrradiance( geometry.normal );\\\\n\\\\t#endif\\\\n#endif\\\\n#if defined( USE_ENVMAP ) && defined( RE_IndirectSpecular )\\\\n\\\\tradiance += getIBLRadiance( geometry.viewDir, geometry.normal, material.roughness );\\\\n\\\\t#ifdef USE_CLEARCOAT\\\\n\\\\t\\\\tclearcoatRadiance += getIBLRadiance( geometry.viewDir, geometry.clearcoatNormal, material.clearcoatRoughness );\\\\n\\\\t#endif\\\\n#endif\\\\\\\",lights_fragment_end:\\\\\\\"#if defined( RE_IndirectDiffuse )\\\\n\\\\tRE_IndirectDiffuse( irradiance, geometry, material, reflectedLight );\\\\n#endif\\\\n#if defined( RE_IndirectSpecular )\\\\n\\\\tRE_IndirectSpecular( radiance, iblIrradiance, clearcoatRadiance, geometry, material, reflectedLight );\\\\n#endif\\\\\\\",logdepthbuf_fragment:\\\\\\\"#if defined( USE_LOGDEPTHBUF ) && defined( USE_LOGDEPTHBUF_EXT )\\\\n\\\\tgl_FragDepthEXT = vIsPerspective == 0.0 ? gl_FragCoord.z : log2( vFragDepth ) * logDepthBufFC * 0.5;\\\\n#endif\\\\\\\",logdepthbuf_pars_fragment:\\\\\\\"#if defined( USE_LOGDEPTHBUF ) && defined( USE_LOGDEPTHBUF_EXT )\\\\n\\\\tuniform float logDepthBufFC;\\\\n\\\\tvarying float vFragDepth;\\\\n\\\\tvarying float vIsPerspective;\\\\n#endif\\\\\\\",logdepthbuf_pars_vertex:\\\\\\\"#ifdef USE_LOGDEPTHBUF\\\\n\\\\t#ifdef USE_LOGDEPTHBUF_EXT\\\\n\\\\t\\\\tvarying float vFragDepth;\\\\n\\\\t\\\\tvarying float vIsPerspective;\\\\n\\\\t#else\\\\n\\\\t\\\\tuniform float logDepthBufFC;\\\\n\\\\t#endif\\\\n#endif\\\\\\\",logdepthbuf_vertex:\\\\\\\"#ifdef USE_LOGDEPTHBUF\\\\n\\\\t#ifdef USE_LOGDEPTHBUF_EXT\\\\n\\\\t\\\\tvFragDepth = 1.0 + gl_Position.w;\\\\n\\\\t\\\\tvIsPerspective = float( isPerspectiveMatrix( projectionMatrix ) );\\\\n\\\\t#else\\\\n\\\\t\\\\tif ( isPerspectiveMatrix( projectionMatrix ) ) {\\\\n\\\\t\\\\t\\\\tgl_Position.z = log2( max( EPSILON, gl_Position.w + 1.0 ) ) * logDepthBufFC - 1.0;\\\\n\\\\t\\\\t\\\\tgl_Position.z *= gl_Position.w;\\\\n\\\\t\\\\t}\\\\n\\\\t#endif\\\\n#endif\\\\\\\",map_fragment:\\\\\\\"#ifdef USE_MAP\\\\n\\\\tvec4 texelColor = texture2D( map, vUv );\\\\n\\\\ttexelColor = mapTexelToLinear( texelColor );\\\\n\\\\tdiffuseColor *= texelColor;\\\\n#endif\\\\\\\",map_pars_fragment:\\\\\\\"#ifdef USE_MAP\\\\n\\\\tuniform sampler2D map;\\\\n#endif\\\\\\\",map_particle_fragment:\\\\\\\"#if defined( USE_MAP ) || defined( USE_ALPHAMAP )\\\\n\\\\tvec2 uv = ( uvTransform * vec3( gl_PointCoord.x, 1.0 - gl_PointCoord.y, 1 ) ).xy;\\\\n#endif\\\\n#ifdef USE_MAP\\\\n\\\\tvec4 mapTexel = texture2D( map, uv );\\\\n\\\\tdiffuseColor *= mapTexelToLinear( mapTexel );\\\\n#endif\\\\n#ifdef USE_ALPHAMAP\\\\n\\\\tdiffuseColor.a *= texture2D( alphaMap, uv ).g;\\\\n#endif\\\\\\\",map_particle_pars_fragment:\\\\\\\"#if defined( USE_MAP ) || defined( USE_ALPHAMAP )\\\\n\\\\tuniform mat3 uvTransform;\\\\n#endif\\\\n#ifdef USE_MAP\\\\n\\\\tuniform sampler2D map;\\\\n#endif\\\\n#ifdef USE_ALPHAMAP\\\\n\\\\tuniform sampler2D alphaMap;\\\\n#endif\\\\\\\",metalnessmap_fragment:\\\\\\\"float metalnessFactor = metalness;\\\\n#ifdef USE_METALNESSMAP\\\\n\\\\tvec4 texelMetalness = texture2D( metalnessMap, vUv );\\\\n\\\\tmetalnessFactor *= texelMetalness.b;\\\\n#endif\\\\\\\",metalnessmap_pars_fragment:\\\\\\\"#ifdef USE_METALNESSMAP\\\\n\\\\tuniform sampler2D metalnessMap;\\\\n#endif\\\\\\\",morphnormal_vertex:\\\\\\\"#ifdef USE_MORPHNORMALS\\\\n\\\\tobjectNormal *= morphTargetBaseInfluence;\\\\n\\\\t#ifdef MORPHTARGETS_TEXTURE\\\\n\\\\t\\\\tfor ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {\\\\n\\\\t\\\\t\\\\tif ( morphTargetInfluences[ i ] > 0.0 ) objectNormal += getMorph( gl_VertexID, i, 1, 2 ) * morphTargetInfluences[ i ];\\\\n\\\\t\\\\t}\\\\n\\\\t#else\\\\n\\\\t\\\\tobjectNormal += morphNormal0 * morphTargetInfluences[ 0 ];\\\\n\\\\t\\\\tobjectNormal += morphNormal1 * morphTargetInfluences[ 1 ];\\\\n\\\\t\\\\tobjectNormal += morphNormal2 * morphTargetInfluences[ 2 ];\\\\n\\\\t\\\\tobjectNormal += morphNormal3 * morphTargetInfluences[ 3 ];\\\\n\\\\t#endif\\\\n#endif\\\\\\\",morphtarget_pars_vertex:\\\\\\\"#ifdef USE_MORPHTARGETS\\\\n\\\\tuniform float morphTargetBaseInfluence;\\\\n\\\\t#ifdef MORPHTARGETS_TEXTURE\\\\n\\\\t\\\\tuniform float morphTargetInfluences[ MORPHTARGETS_COUNT ];\\\\n\\\\t\\\\tuniform sampler2DArray morphTargetsTexture;\\\\n\\\\t\\\\tuniform vec2 morphTargetsTextureSize;\\\\n\\\\t\\\\tvec3 getMorph( const in int vertexIndex, const in int morphTargetIndex, const in int offset, const in int stride ) {\\\\n\\\\t\\\\t\\\\tfloat texelIndex = float( vertexIndex * stride + offset );\\\\n\\\\t\\\\t\\\\tfloat y = floor( texelIndex / morphTargetsTextureSize.x );\\\\n\\\\t\\\\t\\\\tfloat x = texelIndex - y * morphTargetsTextureSize.x;\\\\n\\\\t\\\\t\\\\tvec3 morphUV = vec3( ( x + 0.5 ) / morphTargetsTextureSize.x, y / morphTargetsTextureSize.y, morphTargetIndex );\\\\n\\\\t\\\\t\\\\treturn texture( morphTargetsTexture, morphUV ).xyz;\\\\n\\\\t\\\\t}\\\\n\\\\t#else\\\\n\\\\t\\\\t#ifndef USE_MORPHNORMALS\\\\n\\\\t\\\\t\\\\tuniform float morphTargetInfluences[ 8 ];\\\\n\\\\t\\\\t#else\\\\n\\\\t\\\\t\\\\tuniform float morphTargetInfluences[ 4 ];\\\\n\\\\t\\\\t#endif\\\\n\\\\t#endif\\\\n#endif\\\\\\\",morphtarget_vertex:\\\\\\\"#ifdef USE_MORPHTARGETS\\\\n\\\\ttransformed *= morphTargetBaseInfluence;\\\\n\\\\t#ifdef MORPHTARGETS_TEXTURE\\\\n\\\\t\\\\tfor ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {\\\\n\\\\t\\\\t\\\\t#ifndef USE_MORPHNORMALS\\\\n\\\\t\\\\t\\\\t\\\\tif ( morphTargetInfluences[ i ] > 0.0 ) transformed += getMorph( gl_VertexID, i, 0, 1 ) * morphTargetInfluences[ i ];\\\\n\\\\t\\\\t\\\\t#else\\\\n\\\\t\\\\t\\\\t\\\\tif ( morphTargetInfluences[ i ] > 0.0 ) transformed += getMorph( gl_VertexID, i, 0, 2 ) * morphTargetInfluences[ i ];\\\\n\\\\t\\\\t\\\\t#endif\\\\n\\\\t\\\\t}\\\\n\\\\t#else\\\\n\\\\t\\\\ttransformed += morphTarget0 * morphTargetInfluences[ 0 ];\\\\n\\\\t\\\\ttransformed += morphTarget1 * morphTargetInfluences[ 1 ];\\\\n\\\\t\\\\ttransformed += morphTarget2 * morphTargetInfluences[ 2 ];\\\\n\\\\t\\\\ttransformed += morphTarget3 * morphTargetInfluences[ 3 ];\\\\n\\\\t\\\\t#ifndef USE_MORPHNORMALS\\\\n\\\\t\\\\t\\\\ttransformed += morphTarget4 * morphTargetInfluences[ 4 ];\\\\n\\\\t\\\\t\\\\ttransformed += morphTarget5 * morphTargetInfluences[ 5 ];\\\\n\\\\t\\\\t\\\\ttransformed += morphTarget6 * morphTargetInfluences[ 6 ];\\\\n\\\\t\\\\t\\\\ttransformed += morphTarget7 * morphTargetInfluences[ 7 ];\\\\n\\\\t\\\\t#endif\\\\n\\\\t#endif\\\\n#endif\\\\\\\",normal_fragment_begin:\\\\\\\"float faceDirection = gl_FrontFacing ? 1.0 : - 1.0;\\\\n#ifdef FLAT_SHADED\\\\n\\\\tvec3 fdx = vec3( dFdx( vViewPosition.x ), dFdx( vViewPosition.y ), dFdx( vViewPosition.z ) );\\\\n\\\\tvec3 fdy = vec3( dFdy( vViewPosition.x ), dFdy( vViewPosition.y ), dFdy( vViewPosition.z ) );\\\\n\\\\tvec3 normal = normalize( cross( fdx, fdy ) );\\\\n#else\\\\n\\\\tvec3 normal = normalize( vNormal );\\\\n\\\\t#ifdef DOUBLE_SIDED\\\\n\\\\t\\\\tnormal = normal * faceDirection;\\\\n\\\\t#endif\\\\n\\\\t#ifdef USE_TANGENT\\\\n\\\\t\\\\tvec3 tangent = normalize( vTangent );\\\\n\\\\t\\\\tvec3 bitangent = normalize( vBitangent );\\\\n\\\\t\\\\t#ifdef DOUBLE_SIDED\\\\n\\\\t\\\\t\\\\ttangent = tangent * faceDirection;\\\\n\\\\t\\\\t\\\\tbitangent = bitangent * faceDirection;\\\\n\\\\t\\\\t#endif\\\\n\\\\t\\\\t#if defined( TANGENTSPACE_NORMALMAP ) || defined( USE_CLEARCOAT_NORMALMAP )\\\\n\\\\t\\\\t\\\\tmat3 vTBN = mat3( tangent, bitangent, normal );\\\\n\\\\t\\\\t#endif\\\\n\\\\t#endif\\\\n#endif\\\\nvec3 geometryNormal = normal;\\\\\\\",normal_fragment_maps:\\\\\\\"#ifdef OBJECTSPACE_NORMALMAP\\\\n\\\\tnormal = texture2D( normalMap, vUv ).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( TANGENTSPACE_NORMALMAP )\\\\n\\\\tvec3 mapN = texture2D( normalMap, vUv ).xyz * 2.0 - 1.0;\\\\n\\\\tmapN.xy *= normalScale;\\\\n\\\\t#ifdef USE_TANGENT\\\\n\\\\t\\\\tnormal = normalize( vTBN * mapN );\\\\n\\\\t#else\\\\n\\\\t\\\\tnormal = perturbNormal2Arb( - vViewPosition, normal, mapN, faceDirection );\\\\n\\\\t#endif\\\\n#elif defined( USE_BUMPMAP )\\\\n\\\\tnormal = perturbNormalArb( - vViewPosition, normal, dHdxy_fwd(), faceDirection );\\\\n#endif\\\\\\\",normal_pars_fragment:\\\\\\\"#ifndef FLAT_SHADED\\\\n\\\\tvarying vec3 vNormal;\\\\n\\\\t#ifdef USE_TANGENT\\\\n\\\\t\\\\tvarying vec3 vTangent;\\\\n\\\\t\\\\tvarying vec3 vBitangent;\\\\n\\\\t#endif\\\\n#endif\\\\\\\",normal_pars_vertex:\\\\\\\"#ifndef FLAT_SHADED\\\\n\\\\tvarying vec3 vNormal;\\\\n\\\\t#ifdef USE_TANGENT\\\\n\\\\t\\\\tvarying vec3 vTangent;\\\\n\\\\t\\\\tvarying vec3 vBitangent;\\\\n\\\\t#endif\\\\n#endif\\\\\\\",normal_vertex:\\\\\\\"#ifndef FLAT_SHADED\\\\n\\\\tvNormal = normalize( transformedNormal );\\\\n\\\\t#ifdef USE_TANGENT\\\\n\\\\t\\\\tvTangent = normalize( transformedTangent );\\\\n\\\\t\\\\tvBitangent = normalize( cross( vNormal, vTangent ) * tangent.w );\\\\n\\\\t#endif\\\\n#endif\\\\\\\",normalmap_pars_fragment:\\\\\\\"#ifdef USE_NORMALMAP\\\\n\\\\tuniform sampler2D normalMap;\\\\n\\\\tuniform vec2 normalScale;\\\\n#endif\\\\n#ifdef OBJECTSPACE_NORMALMAP\\\\n\\\\tuniform mat3 normalMatrix;\\\\n#endif\\\\n#if ! defined ( USE_TANGENT ) && ( defined ( TANGENTSPACE_NORMALMAP ) || defined ( USE_CLEARCOAT_NORMALMAP ) )\\\\n\\\\tvec3 perturbNormal2Arb( vec3 eye_pos, vec3 surf_norm, vec3 mapN, float faceDirection ) {\\\\n\\\\t\\\\tvec3 q0 = vec3( dFdx( eye_pos.x ), dFdx( eye_pos.y ), dFdx( eye_pos.z ) );\\\\n\\\\t\\\\tvec3 q1 = vec3( dFdy( eye_pos.x ), dFdy( eye_pos.y ), dFdy( eye_pos.z ) );\\\\n\\\\t\\\\tvec2 st0 = dFdx( vUv.st );\\\\n\\\\t\\\\tvec2 st1 = dFdy( vUv.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 : faceDirection * inversesqrt( det );\\\\n\\\\t\\\\treturn normalize( T * ( mapN.x * scale ) + B * ( mapN.y * scale ) + N * mapN.z );\\\\n\\\\t}\\\\n#endif\\\\\\\",clearcoat_normal_fragment_begin:\\\\\\\"#ifdef USE_CLEARCOAT\\\\n\\\\tvec3 clearcoatNormal = geometryNormal;\\\\n#endif\\\\\\\",clearcoat_normal_fragment_maps:\\\\\\\"#ifdef USE_CLEARCOAT_NORMALMAP\\\\n\\\\tvec3 clearcoatMapN = texture2D( clearcoatNormalMap, vUv ).xyz * 2.0 - 1.0;\\\\n\\\\tclearcoatMapN.xy *= clearcoatNormalScale;\\\\n\\\\t#ifdef USE_TANGENT\\\\n\\\\t\\\\tclearcoatNormal = normalize( vTBN * clearcoatMapN );\\\\n\\\\t#else\\\\n\\\\t\\\\tclearcoatNormal = perturbNormal2Arb( - vViewPosition, clearcoatNormal, clearcoatMapN, faceDirection );\\\\n\\\\t#endif\\\\n#endif\\\\\\\",clearcoat_pars_fragment:\\\\\\\"#ifdef USE_CLEARCOATMAP\\\\n\\\\tuniform sampler2D clearcoatMap;\\\\n#endif\\\\n#ifdef USE_CLEARCOAT_ROUGHNESSMAP\\\\n\\\\tuniform sampler2D clearcoatRoughnessMap;\\\\n#endif\\\\n#ifdef USE_CLEARCOAT_NORMALMAP\\\\n\\\\tuniform sampler2D clearcoatNormalMap;\\\\n\\\\tuniform vec2 clearcoatNormalScale;\\\\n#endif\\\\\\\",output_fragment:\\\\\\\"#ifdef OPAQUE\\\\ndiffuseColor.a = 1.0;\\\\n#endif\\\\n#ifdef USE_TRANSMISSION\\\\ndiffuseColor.a *= transmissionAlpha + 0.1;\\\\n#endif\\\\ngl_FragColor = vec4( outgoingLight, diffuseColor.a );\\\\\\\",packing:\\\\\\\"vec3 packNormalToRGB( const in vec3 normal ) {\\\\n\\\\treturn normalize( normal ) * 0.5 + 0.5;\\\\n}\\\\nvec3 unpackRGBToNormal( const in vec3 rgb ) {\\\\n\\\\treturn 2.0 * rgb.xyz - 1.0;\\\\n}\\\\nconst float PackUpscale = 256. / 255.;const float UnpackDownscale = 255. / 256.;\\\\nconst vec3 PackFactors = vec3( 256. * 256. * 256., 256. * 256., 256. );\\\\nconst vec4 UnpackFactors = UnpackDownscale / vec4( PackFactors, 1. );\\\\nconst float ShiftRight8 = 1. / 256.;\\\\nvec4 packDepthToRGBA( const in float v ) {\\\\n\\\\tvec4 r = vec4( fract( v * PackFactors ), v );\\\\n\\\\tr.yzw -= r.xyz * ShiftRight8;\\\\treturn r * PackUpscale;\\\\n}\\\\nfloat unpackRGBAToDepth( const in vec4 v ) {\\\\n\\\\treturn dot( v, UnpackFactors );\\\\n}\\\\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 linearClipZ, const in float near, const in float far ) {\\\\n\\\\treturn linearClipZ * ( 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 invClipZ, const in float near, const in float far ) {\\\\n\\\\treturn ( near * far ) / ( ( far - near ) * invClipZ - far );\\\\n}\\\\\\\",premultiplied_alpha_fragment:\\\\\\\"#ifdef PREMULTIPLIED_ALPHA\\\\n\\\\tgl_FragColor.rgb *= gl_FragColor.a;\\\\n#endif\\\\\\\",project_vertex:\\\\\\\"vec4 mvPosition = vec4( transformed, 1.0 );\\\\n#ifdef USE_INSTANCING\\\\n\\\\tmvPosition = instanceMatrix * mvPosition;\\\\n#endif\\\\nmvPosition = modelViewMatrix * mvPosition;\\\\ngl_Position = projectionMatrix * mvPosition;\\\\\\\",dithering_fragment:\\\\\\\"#ifdef DITHERING\\\\n\\\\tgl_FragColor.rgb = dithering( gl_FragColor.rgb );\\\\n#endif\\\\\\\",dithering_pars_fragment:\\\\\\\"#ifdef DITHERING\\\\n\\\\tvec3 dithering( vec3 color ) {\\\\n\\\\t\\\\tfloat grid_position = rand( gl_FragCoord.xy );\\\\n\\\\t\\\\tvec3 dither_shift_RGB = vec3( 0.25 / 255.0, -0.25 / 255.0, 0.25 / 255.0 );\\\\n\\\\t\\\\tdither_shift_RGB = mix( 2.0 * dither_shift_RGB, -2.0 * dither_shift_RGB, grid_position );\\\\n\\\\t\\\\treturn color + dither_shift_RGB;\\\\n\\\\t}\\\\n#endif\\\\\\\",roughnessmap_fragment:\\\\\\\"float roughnessFactor = roughness;\\\\n#ifdef USE_ROUGHNESSMAP\\\\n\\\\tvec4 texelRoughness = texture2D( roughnessMap, vUv );\\\\n\\\\troughnessFactor *= texelRoughness.g;\\\\n#endif\\\\\\\",roughnessmap_pars_fragment:\\\\\\\"#ifdef USE_ROUGHNESSMAP\\\\n\\\\tuniform sampler2D roughnessMap;\\\\n#endif\\\\\\\",shadowmap_pars_fragment:\\\\\\\"#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\\\\tvarying vec4 vSpotShadowCoord[ 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\\\\tbvec4 inFrustumVec = bvec4 ( shadowCoord.x >= 0.0, shadowCoord.x <= 1.0, shadowCoord.y >= 0.0, shadowCoord.y <= 1.0 );\\\\n\\\\t\\\\tbool inFrustum = all( inFrustumVec );\\\\n\\\\t\\\\tbvec2 frustumTestVec = bvec2( inFrustum, shadowCoord.z <= 1.0 );\\\\n\\\\t\\\\tbool frustumTest = all( frustumTestVec );\\\\n\\\\t\\\\tif ( frustumTest ) {\\\\n\\\\t\\\\t#if defined( SHADOWMAP_TYPE_PCF )\\\\n\\\\t\\\\t\\\\tvec2 texelSize = vec2( 1.0 ) / shadowMapSize;\\\\n\\\\t\\\\t\\\\tfloat dx0 = - texelSize.x * shadowRadius;\\\\n\\\\t\\\\t\\\\tfloat dy0 = - texelSize.y * shadowRadius;\\\\n\\\\t\\\\t\\\\tfloat dx1 = + texelSize.x * shadowRadius;\\\\n\\\\t\\\\t\\\\tfloat dy1 = + texelSize.y * shadowRadius;\\\\n\\\\t\\\\t\\\\tfloat dx2 = dx0 / 2.0;\\\\n\\\\t\\\\t\\\\tfloat dy2 = dy0 / 2.0;\\\\n\\\\t\\\\t\\\\tfloat dx3 = dx1 / 2.0;\\\\n\\\\t\\\\t\\\\tfloat dy3 = dy1 / 2.0;\\\\n\\\\t\\\\t\\\\tshadow = (\\\\n\\\\t\\\\t\\\\t\\\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, dy0 ), shadowCoord.z ) +\\\\n\\\\t\\\\t\\\\t\\\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy0 ), shadowCoord.z ) +\\\\n\\\\t\\\\t\\\\t\\\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, dy0 ), shadowCoord.z ) +\\\\n\\\\t\\\\t\\\\t\\\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, dy2 ), shadowCoord.z ) +\\\\n\\\\t\\\\t\\\\t\\\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy2 ), shadowCoord.z ) +\\\\n\\\\t\\\\t\\\\t\\\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, dy2 ), shadowCoord.z ) +\\\\n\\\\t\\\\t\\\\t\\\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, 0.0 ), shadowCoord.z ) +\\\\n\\\\t\\\\t\\\\t\\\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, 0.0 ), shadowCoord.z ) +\\\\n\\\\t\\\\t\\\\t\\\\ttexture2DCompare( shadowMap, shadowCoord.xy, shadowCoord.z ) +\\\\n\\\\t\\\\t\\\\t\\\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, 0.0 ), shadowCoord.z ) +\\\\n\\\\t\\\\t\\\\t\\\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, 0.0 ), shadowCoord.z ) +\\\\n\\\\t\\\\t\\\\t\\\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, dy3 ), shadowCoord.z ) +\\\\n\\\\t\\\\t\\\\t\\\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy3 ), shadowCoord.z ) +\\\\n\\\\t\\\\t\\\\t\\\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, dy3 ), shadowCoord.z ) +\\\\n\\\\t\\\\t\\\\t\\\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, dy1 ), shadowCoord.z ) +\\\\n\\\\t\\\\t\\\\t\\\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy1 ), shadowCoord.z ) +\\\\n\\\\t\\\\t\\\\t\\\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, dy1 ), shadowCoord.z )\\\\n\\\\t\\\\t\\\\t) * ( 1.0 / 17.0 );\\\\n\\\\t\\\\t#elif defined( SHADOWMAP_TYPE_PCF_SOFT )\\\\n\\\\t\\\\t\\\\tvec2 texelSize = vec2( 1.0 ) / shadowMapSize;\\\\n\\\\t\\\\t\\\\tfloat dx = texelSize.x;\\\\n\\\\t\\\\t\\\\tfloat dy = texelSize.y;\\\\n\\\\t\\\\t\\\\tvec2 uv = shadowCoord.xy;\\\\n\\\\t\\\\t\\\\tvec2 f = fract( uv * shadowMapSize + 0.5 );\\\\n\\\\t\\\\t\\\\tuv -= f * texelSize;\\\\n\\\\t\\\\t\\\\tshadow = (\\\\n\\\\t\\\\t\\\\t\\\\ttexture2DCompare( shadowMap, uv, shadowCoord.z ) +\\\\n\\\\t\\\\t\\\\t\\\\ttexture2DCompare( shadowMap, uv + vec2( dx, 0.0 ), shadowCoord.z ) +\\\\n\\\\t\\\\t\\\\t\\\\ttexture2DCompare( shadowMap, uv + vec2( 0.0, dy ), shadowCoord.z ) +\\\\n\\\\t\\\\t\\\\t\\\\ttexture2DCompare( shadowMap, uv + texelSize, shadowCoord.z ) +\\\\n\\\\t\\\\t\\\\t\\\\tmix( texture2DCompare( shadowMap, uv + vec2( -dx, 0.0 ), shadowCoord.z ), \\\\n\\\\t\\\\t\\\\t\\\\t\\\\t texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, 0.0 ), shadowCoord.z ),\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t f.x ) +\\\\n\\\\t\\\\t\\\\t\\\\tmix( texture2DCompare( shadowMap, uv + vec2( -dx, dy ), shadowCoord.z ), \\\\n\\\\t\\\\t\\\\t\\\\t\\\\t texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, dy ), shadowCoord.z ),\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t f.x ) +\\\\n\\\\t\\\\t\\\\t\\\\tmix( texture2DCompare( shadowMap, uv + vec2( 0.0, -dy ), shadowCoord.z ), \\\\n\\\\t\\\\t\\\\t\\\\t\\\\t texture2DCompare( shadowMap, uv + vec2( 0.0, 2.0 * dy ), shadowCoord.z ),\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t f.y ) +\\\\n\\\\t\\\\t\\\\t\\\\tmix( texture2DCompare( shadowMap, uv + vec2( dx, -dy ), shadowCoord.z ), \\\\n\\\\t\\\\t\\\\t\\\\t\\\\t texture2DCompare( shadowMap, uv + vec2( dx, 2.0 * dy ), shadowCoord.z ),\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t f.y ) +\\\\n\\\\t\\\\t\\\\t\\\\tmix( mix( texture2DCompare( shadowMap, uv + vec2( -dx, -dy ), shadowCoord.z ), \\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t  texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, -dy ), shadowCoord.z ),\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t  f.x ),\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t mix( texture2DCompare( shadowMap, uv + vec2( -dx, 2.0 * dy ), shadowCoord.z ), \\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t  texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, 2.0 * dy ), shadowCoord.z ),\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t  f.x ),\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t f.y )\\\\n\\\\t\\\\t\\\\t) * ( 1.0 / 9.0 );\\\\n\\\\t\\\\t#elif defined( SHADOWMAP_TYPE_VSM )\\\\n\\\\t\\\\t\\\\tshadow = VSMShadow( shadowMap, shadowCoord.xy, shadowCoord.z );\\\\n\\\\t\\\\t#else\\\\n\\\\t\\\\t\\\\tshadow = texture2DCompare( shadowMap, shadowCoord.xy, shadowCoord.z );\\\\n\\\\t\\\\t#endif\\\\n\\\\t\\\\t}\\\\n\\\\t\\\\treturn shadow;\\\\n\\\\t}\\\\n\\\\tvec2 cubeToUV( vec3 v, float texelSizeY ) {\\\\n\\\\t\\\\tvec3 absV = abs( v );\\\\n\\\\t\\\\tfloat scaleToCube = 1.0 / max( absV.x, max( absV.y, absV.z ) );\\\\n\\\\t\\\\tabsV *= scaleToCube;\\\\n\\\\t\\\\tv *= scaleToCube * ( 1.0 - 2.0 * texelSizeY );\\\\n\\\\t\\\\tvec2 planar = v.xy;\\\\n\\\\t\\\\tfloat almostATexel = 1.5 * texelSizeY;\\\\n\\\\t\\\\tfloat almostOne = 1.0 - almostATexel;\\\\n\\\\t\\\\tif ( absV.z >= almostOne ) {\\\\n\\\\t\\\\t\\\\tif ( v.z > 0.0 )\\\\n\\\\t\\\\t\\\\t\\\\tplanar.x = 4.0 - v.x;\\\\n\\\\t\\\\t} else if ( absV.x >= almostOne ) {\\\\n\\\\t\\\\t\\\\tfloat signX = sign( v.x );\\\\n\\\\t\\\\t\\\\tplanar.x = v.z * signX + 2.0 * signX;\\\\n\\\\t\\\\t} else if ( absV.y >= almostOne ) {\\\\n\\\\t\\\\t\\\\tfloat signY = sign( v.y );\\\\n\\\\t\\\\t\\\\tplanar.x = v.x + 2.0 * signY + 2.0;\\\\n\\\\t\\\\t\\\\tplanar.y = v.z * signY - 2.0;\\\\n\\\\t\\\\t}\\\\n\\\\t\\\\treturn vec2( 0.125, 0.25 ) * planar + vec2( 0.375, 0.75 );\\\\n\\\\t}\\\\n\\\\tfloat getPointShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowBias, float shadowRadius, vec4 shadowCoord, float shadowCameraNear, float shadowCameraFar ) {\\\\n\\\\t\\\\tvec2 texelSize = vec2( 1.0 ) / ( shadowMapSize * vec2( 4.0, 2.0 ) );\\\\n\\\\t\\\\tvec3 lightToPosition = shadowCoord.xyz;\\\\n\\\\t\\\\tfloat dp = ( length( lightToPosition ) - shadowCameraNear ) / ( shadowCameraFar - shadowCameraNear );\\\\t\\\\tdp += shadowBias;\\\\n\\\\t\\\\tvec3 bd3D = normalize( lightToPosition );\\\\n\\\\t\\\\t#if defined( SHADOWMAP_TYPE_PCF ) || defined( SHADOWMAP_TYPE_PCF_SOFT ) || defined( SHADOWMAP_TYPE_VSM )\\\\n\\\\t\\\\t\\\\tvec2 offset = vec2( - 1, 1 ) * shadowRadius * texelSize.y;\\\\n\\\\t\\\\t\\\\treturn (\\\\n\\\\t\\\\t\\\\t\\\\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xyy, texelSize.y ), dp ) +\\\\n\\\\t\\\\t\\\\t\\\\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yyy, texelSize.y ), dp ) +\\\\n\\\\t\\\\t\\\\t\\\\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xyx, texelSize.y ), dp ) +\\\\n\\\\t\\\\t\\\\t\\\\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yyx, texelSize.y ), dp ) +\\\\n\\\\t\\\\t\\\\t\\\\ttexture2DCompare( shadowMap, cubeToUV( bd3D, texelSize.y ), dp ) +\\\\n\\\\t\\\\t\\\\t\\\\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xxy, texelSize.y ), dp ) +\\\\n\\\\t\\\\t\\\\t\\\\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yxy, texelSize.y ), dp ) +\\\\n\\\\t\\\\t\\\\t\\\\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xxx, texelSize.y ), dp ) +\\\\n\\\\t\\\\t\\\\t\\\\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yxx, texelSize.y ), dp )\\\\n\\\\t\\\\t\\\\t) * ( 1.0 / 9.0 );\\\\n\\\\t\\\\t#else\\\\n\\\\t\\\\t\\\\treturn texture2DCompare( shadowMap, cubeToUV( bd3D, texelSize.y ), dp );\\\\n\\\\t\\\\t#endif\\\\n\\\\t}\\\\n#endif\\\\\\\",shadowmap_pars_vertex:\\\\\\\"#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\\\\tuniform mat4 spotShadowMatrix[ NUM_SPOT_LIGHT_SHADOWS ];\\\\n\\\\t\\\\tvarying vec4 vSpotShadowCoord[ 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 mat4 pointShadowMatrix[ NUM_POINT_LIGHT_SHADOWS ];\\\\n\\\\t\\\\tvarying vec4 vPointShadowCoord[ NUM_POINT_LIGHT_SHADOWS ];\\\\n\\\\t\\\\tstruct PointLightShadow {\\\\n\\\\t\\\\t\\\\tfloat shadowBias;\\\\n\\\\t\\\\t\\\\tfloat shadowNormalBias;\\\\n\\\\t\\\\t\\\\tfloat shadowRadius;\\\\n\\\\t\\\\t\\\\tvec2 shadowMapSize;\\\\n\\\\t\\\\t\\\\tfloat shadowCameraNear;\\\\n\\\\t\\\\t\\\\tfloat shadowCameraFar;\\\\n\\\\t\\\\t};\\\\n\\\\t\\\\tuniform PointLightShadow pointLightShadows[ NUM_POINT_LIGHT_SHADOWS ];\\\\n\\\\t#endif\\\\n#endif\\\\\\\",shadowmap_vertex:\\\\\\\"#ifdef USE_SHADOWMAP\\\\n\\\\t#if NUM_DIR_LIGHT_SHADOWS > 0 || NUM_SPOT_LIGHT_SHADOWS > 0 || NUM_POINT_LIGHT_SHADOWS > 0\\\\n\\\\t\\\\tvec3 shadowWorldNormal = inverseTransformDirection( transformedNormal, viewMatrix );\\\\n\\\\t\\\\tvec4 shadowWorldPosition;\\\\n\\\\t#endif\\\\n\\\\t#if NUM_DIR_LIGHT_SHADOWS > 0\\\\n\\\\t#pragma unroll_loop_start\\\\n\\\\tfor ( int i = 0; i < NUM_DIR_LIGHT_SHADOWS; i ++ ) {\\\\n\\\\t\\\\tshadowWorldPosition = worldPosition + vec4( shadowWorldNormal * directionalLightShadows[ i ].shadowNormalBias, 0 );\\\\n\\\\t\\\\tvDirectionalShadowCoord[ i ] = directionalShadowMatrix[ i ] * shadowWorldPosition;\\\\n\\\\t}\\\\n\\\\t#pragma unroll_loop_end\\\\n\\\\t#endif\\\\n\\\\t#if NUM_SPOT_LIGHT_SHADOWS > 0\\\\n\\\\t#pragma unroll_loop_start\\\\n\\\\tfor ( int i = 0; i < NUM_SPOT_LIGHT_SHADOWS; i ++ ) {\\\\n\\\\t\\\\tshadowWorldPosition = worldPosition + vec4( shadowWorldNormal * spotLightShadows[ i ].shadowNormalBias, 0 );\\\\n\\\\t\\\\tvSpotShadowCoord[ i ] = spotShadowMatrix[ i ] * shadowWorldPosition;\\\\n\\\\t}\\\\n\\\\t#pragma unroll_loop_end\\\\n\\\\t#endif\\\\n\\\\t#if NUM_POINT_LIGHT_SHADOWS > 0\\\\n\\\\t#pragma unroll_loop_start\\\\n\\\\tfor ( int i = 0; i < NUM_POINT_LIGHT_SHADOWS; i ++ ) {\\\\n\\\\t\\\\tshadowWorldPosition = worldPosition + vec4( shadowWorldNormal * pointLightShadows[ i ].shadowNormalBias, 0 );\\\\n\\\\t\\\\tvPointShadowCoord[ i ] = pointShadowMatrix[ i ] * shadowWorldPosition;\\\\n\\\\t}\\\\n\\\\t#pragma unroll_loop_end\\\\n\\\\t#endif\\\\n#endif\\\\\\\",shadowmask_pars_fragment:\\\\\\\"float getShadowMask() {\\\\n\\\\tfloat shadow = 1.0;\\\\n\\\\t#ifdef USE_SHADOWMAP\\\\n\\\\t#if NUM_DIR_LIGHT_SHADOWS > 0\\\\n\\\\tDirectionalLightShadow directionalLight;\\\\n\\\\t#pragma unroll_loop_start\\\\n\\\\tfor ( int i = 0; i < NUM_DIR_LIGHT_SHADOWS; i ++ ) {\\\\n\\\\t\\\\tdirectionalLight = directionalLightShadows[ i ];\\\\n\\\\t\\\\tshadow *= receiveShadow ? getShadow( directionalShadowMap[ i ], directionalLight.shadowMapSize, directionalLight.shadowBias, directionalLight.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0;\\\\n\\\\t}\\\\n\\\\t#pragma unroll_loop_end\\\\n\\\\t#endif\\\\n\\\\t#if NUM_SPOT_LIGHT_SHADOWS > 0\\\\n\\\\tSpotLightShadow spotLight;\\\\n\\\\t#pragma unroll_loop_start\\\\n\\\\tfor ( int i = 0; i < NUM_SPOT_LIGHT_SHADOWS; i ++ ) {\\\\n\\\\t\\\\tspotLight = spotLightShadows[ i ];\\\\n\\\\t\\\\tshadow *= receiveShadow ? getShadow( spotShadowMap[ i ], spotLight.shadowMapSize, spotLight.shadowBias, spotLight.shadowRadius, vSpotShadowCoord[ i ] ) : 1.0;\\\\n\\\\t}\\\\n\\\\t#pragma unroll_loop_end\\\\n\\\\t#endif\\\\n\\\\t#if NUM_POINT_LIGHT_SHADOWS > 0\\\\n\\\\tPointLightShadow pointLight;\\\\n\\\\t#pragma unroll_loop_start\\\\n\\\\tfor ( int i = 0; i < NUM_POINT_LIGHT_SHADOWS; i ++ ) {\\\\n\\\\t\\\\tpointLight = pointLightShadows[ i ];\\\\n\\\\t\\\\tshadow *= receiveShadow ? getPointShadow( pointShadowMap[ i ], pointLight.shadowMapSize, pointLight.shadowBias, pointLight.shadowRadius, vPointShadowCoord[ i ], pointLight.shadowCameraNear, pointLight.shadowCameraFar ) : 1.0;\\\\n\\\\t}\\\\n\\\\t#pragma unroll_loop_end\\\\n\\\\t#endif\\\\n\\\\t#endif\\\\n\\\\treturn shadow;\\\\n}\\\\\\\",skinbase_vertex:\\\\\\\"#ifdef USE_SKINNING\\\\n\\\\tmat4 boneMatX = getBoneMatrix( skinIndex.x );\\\\n\\\\tmat4 boneMatY = getBoneMatrix( skinIndex.y );\\\\n\\\\tmat4 boneMatZ = getBoneMatrix( skinIndex.z );\\\\n\\\\tmat4 boneMatW = getBoneMatrix( skinIndex.w );\\\\n#endif\\\\\\\",skinning_pars_vertex:\\\\\\\"#ifdef USE_SKINNING\\\\n\\\\tuniform mat4 bindMatrix;\\\\n\\\\tuniform mat4 bindMatrixInverse;\\\\n\\\\t#ifdef BONE_TEXTURE\\\\n\\\\t\\\\tuniform highp sampler2D boneTexture;\\\\n\\\\t\\\\tuniform int boneTextureSize;\\\\n\\\\t\\\\tmat4 getBoneMatrix( const in float i ) {\\\\n\\\\t\\\\t\\\\tfloat j = i * 4.0;\\\\n\\\\t\\\\t\\\\tfloat x = mod( j, float( boneTextureSize ) );\\\\n\\\\t\\\\t\\\\tfloat y = floor( j / float( boneTextureSize ) );\\\\n\\\\t\\\\t\\\\tfloat dx = 1.0 / float( boneTextureSize );\\\\n\\\\t\\\\t\\\\tfloat dy = 1.0 / float( boneTextureSize );\\\\n\\\\t\\\\t\\\\ty = dy * ( y + 0.5 );\\\\n\\\\t\\\\t\\\\tvec4 v1 = texture2D( boneTexture, vec2( dx * ( x + 0.5 ), y ) );\\\\n\\\\t\\\\t\\\\tvec4 v2 = texture2D( boneTexture, vec2( dx * ( x + 1.5 ), y ) );\\\\n\\\\t\\\\t\\\\tvec4 v3 = texture2D( boneTexture, vec2( dx * ( x + 2.5 ), y ) );\\\\n\\\\t\\\\t\\\\tvec4 v4 = texture2D( boneTexture, vec2( dx * ( x + 3.5 ), y ) );\\\\n\\\\t\\\\t\\\\tmat4 bone = mat4( v1, v2, v3, v4 );\\\\n\\\\t\\\\t\\\\treturn bone;\\\\n\\\\t\\\\t}\\\\n\\\\t#else\\\\n\\\\t\\\\tuniform mat4 boneMatrices[ MAX_BONES ];\\\\n\\\\t\\\\tmat4 getBoneMatrix( const in float i ) {\\\\n\\\\t\\\\t\\\\tmat4 bone = boneMatrices[ int(i) ];\\\\n\\\\t\\\\t\\\\treturn bone;\\\\n\\\\t\\\\t}\\\\n\\\\t#endif\\\\n#endif\\\\\\\",skinning_vertex:\\\\\\\"#ifdef USE_SKINNING\\\\n\\\\tvec4 skinVertex = bindMatrix * vec4( transformed, 1.0 );\\\\n\\\\tvec4 skinned = vec4( 0.0 );\\\\n\\\\tskinned += boneMatX * skinVertex * skinWeight.x;\\\\n\\\\tskinned += boneMatY * skinVertex * skinWeight.y;\\\\n\\\\tskinned += boneMatZ * skinVertex * skinWeight.z;\\\\n\\\\tskinned += boneMatW * skinVertex * skinWeight.w;\\\\n\\\\ttransformed = ( bindMatrixInverse * skinned ).xyz;\\\\n#endif\\\\\\\",skinnormal_vertex:\\\\\\\"#ifdef USE_SKINNING\\\\n\\\\tmat4 skinMatrix = mat4( 0.0 );\\\\n\\\\tskinMatrix += skinWeight.x * boneMatX;\\\\n\\\\tskinMatrix += skinWeight.y * boneMatY;\\\\n\\\\tskinMatrix += skinWeight.z * boneMatZ;\\\\n\\\\tskinMatrix += skinWeight.w * boneMatW;\\\\n\\\\tskinMatrix = bindMatrixInverse * skinMatrix * bindMatrix;\\\\n\\\\tobjectNormal = vec4( skinMatrix * vec4( objectNormal, 0.0 ) ).xyz;\\\\n\\\\t#ifdef USE_TANGENT\\\\n\\\\t\\\\tobjectTangent = vec4( skinMatrix * vec4( objectTangent, 0.0 ) ).xyz;\\\\n\\\\t#endif\\\\n#endif\\\\\\\",specularmap_fragment:\\\\\\\"float specularStrength;\\\\n#ifdef USE_SPECULARMAP\\\\n\\\\tvec4 texelSpecular = texture2D( specularMap, vUv );\\\\n\\\\tspecularStrength = texelSpecular.r;\\\\n#else\\\\n\\\\tspecularStrength = 1.0;\\\\n#endif\\\\\\\",specularmap_pars_fragment:\\\\\\\"#ifdef USE_SPECULARMAP\\\\n\\\\tuniform sampler2D specularMap;\\\\n#endif\\\\\\\",tonemapping_fragment:\\\\\\\"#if defined( TONE_MAPPING )\\\\n\\\\tgl_FragColor.rgb = toneMapping( gl_FragColor.rgb );\\\\n#endif\\\\\\\",tonemapping_pars_fragment:\\\\\\\"#ifndef saturate\\\\n#define saturate( a ) clamp( a, 0.0, 1.0 )\\\\n#endif\\\\nuniform float toneMappingExposure;\\\\nvec3 LinearToneMapping( vec3 color ) {\\\\n\\\\treturn 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}\\\\nvec3 CustomToneMapping( vec3 color ) { return color; }\\\\\\\",transmission_fragment:\\\\\\\"#ifdef USE_TRANSMISSION\\\\n\\\\tfloat transmissionAlpha = 1.0;\\\\n\\\\tfloat transmissionFactor = transmission;\\\\n\\\\tfloat thicknessFactor = thickness;\\\\n\\\\t#ifdef USE_TRANSMISSIONMAP\\\\n\\\\t\\\\ttransmissionFactor *= texture2D( transmissionMap, vUv ).r;\\\\n\\\\t#endif\\\\n\\\\t#ifdef USE_THICKNESSMAP\\\\n\\\\t\\\\tthicknessFactor *= texture2D( thicknessMap, vUv ).g;\\\\n\\\\t#endif\\\\n\\\\tvec3 pos = vWorldPosition;\\\\n\\\\tvec3 v = normalize( cameraPosition - pos );\\\\n\\\\tvec3 n = inverseTransformDirection( normal, viewMatrix );\\\\n\\\\tvec4 transmission = getIBLVolumeRefraction(\\\\n\\\\t\\\\tn, v, roughnessFactor, material.diffuseColor, material.specularColor, material.specularF90,\\\\n\\\\t\\\\tpos, modelMatrix, viewMatrix, projectionMatrix, ior, thicknessFactor,\\\\n\\\\t\\\\tattenuationTint, attenuationDistance );\\\\n\\\\ttotalDiffuse = mix( totalDiffuse, transmission.rgb, transmissionFactor );\\\\n\\\\ttransmissionAlpha = mix( transmissionAlpha, transmission.a, transmissionFactor );\\\\n#endif\\\\\\\",transmission_pars_fragment:\\\\\\\"#ifdef USE_TRANSMISSION\\\\n\\\\tuniform float transmission;\\\\n\\\\tuniform float thickness;\\\\n\\\\tuniform float attenuationDistance;\\\\n\\\\tuniform vec3 attenuationTint;\\\\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\\\\tvec3 getVolumeTransmissionRay( vec3 n, vec3 v, float thickness, float ior, 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( float roughness, float ior ) {\\\\n\\\\t\\\\treturn roughness * clamp( ior * 2.0 - 2.0, 0.0, 1.0 );\\\\n\\\\t}\\\\n\\\\tvec4 getTransmissionSample( vec2 fragCoord, float roughness, float ior ) {\\\\n\\\\t\\\\tfloat framebufferLod = log2( transmissionSamplerSize.x ) * applyIorToRoughness( roughness, ior );\\\\n\\\\t\\\\t#ifdef TEXTURE_LOD_EXT\\\\n\\\\t\\\\t\\\\treturn texture2DLodEXT( transmissionSamplerMap, fragCoord.xy, framebufferLod );\\\\n\\\\t\\\\t#else\\\\n\\\\t\\\\t\\\\treturn texture2D( transmissionSamplerMap, fragCoord.xy, framebufferLod );\\\\n\\\\t\\\\t#endif\\\\n\\\\t}\\\\n\\\\tvec3 applyVolumeAttenuation( vec3 radiance, float transmissionDistance, vec3 attenuationColor, float attenuationDistance ) {\\\\n\\\\t\\\\tif ( attenuationDistance == 0.0 ) {\\\\n\\\\t\\\\t\\\\treturn radiance;\\\\n\\\\t\\\\t} else {\\\\n\\\\t\\\\t\\\\tvec3 attenuationCoefficient = -log( attenuationColor ) / attenuationDistance;\\\\n\\\\t\\\\t\\\\tvec3 transmittance = exp( - attenuationCoefficient * transmissionDistance );\\\\t\\\\t\\\\treturn transmittance * radiance;\\\\n\\\\t\\\\t}\\\\n\\\\t}\\\\n\\\\tvec4 getIBLVolumeRefraction( vec3 n, vec3 v, float roughness, vec3 diffuseColor, vec3 specularColor, float specularF90,\\\\n\\\\t\\\\tvec3 position, mat4 modelMatrix, mat4 viewMatrix, mat4 projMatrix, float ior, float thickness,\\\\n\\\\t\\\\tvec3 attenuationColor, 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 attenuatedColor = applyVolumeAttenuation( transmittedLight.rgb, length( transmissionRay ), attenuationColor, attenuationDistance );\\\\n\\\\t\\\\tvec3 F = EnvironmentBRDF( n, v, specularColor, specularF90, roughness );\\\\n\\\\t\\\\treturn vec4( ( 1.0 - F ) * attenuatedColor * diffuseColor, transmittedLight.a );\\\\n\\\\t}\\\\n#endif\\\\\\\",uv_pars_fragment:\\\\\\\"#if ( defined( USE_UV ) && ! defined( UVS_VERTEX_ONLY ) )\\\\n\\\\tvarying vec2 vUv;\\\\n#endif\\\\\\\",uv_pars_vertex:\\\\\\\"#ifdef USE_UV\\\\n\\\\t#ifdef UVS_VERTEX_ONLY\\\\n\\\\t\\\\tvec2 vUv;\\\\n\\\\t#else\\\\n\\\\t\\\\tvarying vec2 vUv;\\\\n\\\\t#endif\\\\n\\\\tuniform mat3 uvTransform;\\\\n#endif\\\\\\\",uv_vertex:\\\\\\\"#ifdef USE_UV\\\\n\\\\tvUv = ( uvTransform * vec3( uv, 1 ) ).xy;\\\\n#endif\\\\\\\",uv2_pars_fragment:\\\\\\\"#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP )\\\\n\\\\tvarying vec2 vUv2;\\\\n#endif\\\\\\\",uv2_pars_vertex:\\\\\\\"#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP )\\\\n\\\\tattribute vec2 uv2;\\\\n\\\\tvarying vec2 vUv2;\\\\n\\\\tuniform mat3 uv2Transform;\\\\n#endif\\\\\\\",uv2_vertex:\\\\\\\"#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP )\\\\n\\\\tvUv2 = ( uv2Transform * vec3( uv2, 1 ) ).xy;\\\\n#endif\\\\\\\",worldpos_vertex:\\\\\\\"#if defined( USE_ENVMAP ) || defined( DISTANCE ) || defined ( USE_SHADOWMAP ) || defined ( USE_TRANSMISSION )\\\\n\\\\tvec4 worldPosition = vec4( transformed, 1.0 );\\\\n\\\\t#ifdef USE_INSTANCING\\\\n\\\\t\\\\tworldPosition = instanceMatrix * worldPosition;\\\\n\\\\t#endif\\\\n\\\\tworldPosition = modelMatrix * worldPosition;\\\\n#endif\\\\\\\",background_vert:\\\\\\\"varying vec2 vUv;\\\\nuniform mat3 uvTransform;\\\\nvoid main() {\\\\n\\\\tvUv = ( uvTransform * vec3( uv, 1 ) ).xy;\\\\n\\\\tgl_Position = vec4( position.xy, 1.0, 1.0 );\\\\n}\\\\\\\",background_frag:\\\\\\\"uniform sampler2D t2D;\\\\nvarying vec2 vUv;\\\\nvoid main() {\\\\n\\\\tvec4 texColor = texture2D( t2D, vUv );\\\\n\\\\tgl_FragColor = mapTexelToLinear( texColor );\\\\n\\\\t#include <tonemapping_fragment>\\\\n\\\\t#include <encodings_fragment>\\\\n}\\\\\\\",cube_vert:\\\\\\\"varying vec3 vWorldDirection;\\\\n#include <common>\\\\nvoid main() {\\\\n\\\\tvWorldDirection = transformDirection( position, modelMatrix );\\\\n\\\\t#include <begin_vertex>\\\\n\\\\t#include <project_vertex>\\\\n\\\\tgl_Position.z = gl_Position.w;\\\\n}\\\\\\\",cube_frag:\\\\\\\"#include <envmap_common_pars_fragment>\\\\nuniform float opacity;\\\\nvarying vec3 vWorldDirection;\\\\n#include <cube_uv_reflection_fragment>\\\\nvoid main() {\\\\n\\\\tvec3 vReflect = vWorldDirection;\\\\n\\\\t#include <envmap_fragment>\\\\n\\\\tgl_FragColor = envColor;\\\\n\\\\tgl_FragColor.a *= opacity;\\\\n\\\\t#include <tonemapping_fragment>\\\\n\\\\t#include <encodings_fragment>\\\\n}\\\\\\\",depth_vert:\\\\\\\"#include <common>\\\\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 <skinbase_vertex>\\\\n\\\\t#ifdef USE_DISPLACEMENTMAP\\\\n\\\\t\\\\t#include <beginnormal_vertex>\\\\n\\\\t\\\\t#include <morphnormal_vertex>\\\\n\\\\t\\\\t#include <skinnormal_vertex>\\\\n\\\\t#endif\\\\n\\\\t#include <begin_vertex>\\\\n\\\\t#include <morphtarget_vertex>\\\\n\\\\t#include <skinning_vertex>\\\\n\\\\t#include <displacementmap_vertex>\\\\n\\\\t#include <project_vertex>\\\\n\\\\t#include <logdepthbuf_vertex>\\\\n\\\\t#include <clipping_planes_vertex>\\\\n\\\\tvHighPrecisionZW = gl_Position.zw;\\\\n}\\\\\\\",depth_frag:\\\\\\\"#if DEPTH_PACKING == 3200\\\\n\\\\tuniform float opacity;\\\\n#endif\\\\n#include <common>\\\\n#include <packing>\\\\n#include <uv_pars_fragment>\\\\n#include <map_pars_fragment>\\\\n#include <alphamap_pars_fragment>\\\\n#include <alphatest_pars_fragment>\\\\n#include <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 <logdepthbuf_fragment>\\\\n\\\\tfloat fragCoordZ = 0.5 * vHighPrecisionZW[0] / vHighPrecisionZW[1] + 0.5;\\\\n\\\\t#if DEPTH_PACKING == 3200\\\\n\\\\t\\\\tgl_FragColor = vec4( vec3( 1.0 - fragCoordZ ), opacity );\\\\n\\\\t#elif DEPTH_PACKING == 3201\\\\n\\\\t\\\\tgl_FragColor = packDepthToRGBA( fragCoordZ );\\\\n\\\\t#endif\\\\n}\\\\\\\",distanceRGBA_vert:\\\\\\\"#define DISTANCE\\\\nvarying vec3 vWorldPosition;\\\\n#include <common>\\\\n#include <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 <skinbase_vertex>\\\\n\\\\t#ifdef USE_DISPLACEMENTMAP\\\\n\\\\t\\\\t#include <beginnormal_vertex>\\\\n\\\\t\\\\t#include <morphnormal_vertex>\\\\n\\\\t\\\\t#include <skinnormal_vertex>\\\\n\\\\t#endif\\\\n\\\\t#include <begin_vertex>\\\\n\\\\t#include <morphtarget_vertex>\\\\n\\\\t#include <skinning_vertex>\\\\n\\\\t#include <displacementmap_vertex>\\\\n\\\\t#include <project_vertex>\\\\n\\\\t#include <worldpos_vertex>\\\\n\\\\t#include <clipping_planes_vertex>\\\\n\\\\tvWorldPosition = worldPosition.xyz;\\\\n}\\\\\\\",distanceRGBA_frag:\\\\\\\"#define DISTANCE\\\\nuniform vec3 referencePosition;\\\\nuniform float nearDistance;\\\\nuniform float farDistance;\\\\nvarying vec3 vWorldPosition;\\\\n#include <common>\\\\n#include <packing>\\\\n#include <uv_pars_fragment>\\\\n#include <map_pars_fragment>\\\\n#include <alphamap_pars_fragment>\\\\n#include <alphatest_pars_fragment>\\\\n#include <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\\\\tfloat dist = length( vWorldPosition - referencePosition );\\\\n\\\\tdist = ( dist - nearDistance ) / ( farDistance - nearDistance );\\\\n\\\\tdist = saturate( dist );\\\\n\\\\tgl_FragColor = packDepthToRGBA( dist );\\\\n}\\\\\\\",equirect_vert:\\\\\\\"varying vec3 vWorldDirection;\\\\n#include <common>\\\\nvoid main() {\\\\n\\\\tvWorldDirection = transformDirection( position, modelMatrix );\\\\n\\\\t#include <begin_vertex>\\\\n\\\\t#include <project_vertex>\\\\n}\\\\\\\",equirect_frag:\\\\\\\"uniform sampler2D tEquirect;\\\\nvarying vec3 vWorldDirection;\\\\n#include <common>\\\\nvoid main() {\\\\n\\\\tvec3 direction = normalize( vWorldDirection );\\\\n\\\\tvec2 sampleUV = equirectUv( direction );\\\\n\\\\tvec4 texColor = texture2D( tEquirect, sampleUV );\\\\n\\\\tgl_FragColor = mapTexelToLinear( texColor );\\\\n\\\\t#include <tonemapping_fragment>\\\\n\\\\t#include <encodings_fragment>\\\\n}\\\\\\\",linedashed_vert:\\\\\\\"uniform float scale;\\\\nattribute float lineDistance;\\\\nvarying float vLineDistance;\\\\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>\\\\nvoid main() {\\\\n\\\\tvLineDistance = scale * lineDistance;\\\\n\\\\t#include <color_vertex>\\\\n\\\\t#include <begin_vertex>\\\\n\\\\t#include <morphtarget_vertex>\\\\n\\\\t#include <project_vertex>\\\\n\\\\t#include <logdepthbuf_vertex>\\\\n\\\\t#include <clipping_planes_vertex>\\\\n\\\\t#include <fog_vertex>\\\\n}\\\\\\\",linedashed_frag:\\\\\\\"uniform vec3 diffuse;\\\\nuniform float opacity;\\\\nuniform float dashSize;\\\\nuniform float totalSize;\\\\nvarying float vLineDistance;\\\\n#include <common>\\\\n#include <color_pars_fragment>\\\\n#include <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 <color_fragment>\\\\n\\\\toutgoingLight = diffuseColor.rgb;\\\\n\\\\t#include <output_fragment>\\\\n\\\\t#include <tonemapping_fragment>\\\\n\\\\t#include <encodings_fragment>\\\\n\\\\t#include <fog_fragment>\\\\n\\\\t#include <premultiplied_alpha_fragment>\\\\n}\\\\\\\",meshbasic_vert:\\\\\\\"#include <common>\\\\n#include <uv_pars_vertex>\\\\n#include <uv2_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 <uv2_vertex>\\\\n\\\\t#include <color_vertex>\\\\n\\\\t#if defined ( USE_ENVMAP ) || defined ( USE_SKINNING )\\\\n\\\\t\\\\t#include <beginnormal_vertex>\\\\n\\\\t\\\\t#include <morphnormal_vertex>\\\\n\\\\t\\\\t#include <skinbase_vertex>\\\\n\\\\t\\\\t#include <skinnormal_vertex>\\\\n\\\\t\\\\t#include <defaultnormal_vertex>\\\\n\\\\t#endif\\\\n\\\\t#include <begin_vertex>\\\\n\\\\t#include <morphtarget_vertex>\\\\n\\\\t#include <skinning_vertex>\\\\n\\\\t#include <project_vertex>\\\\n\\\\t#include <logdepthbuf_vertex>\\\\n\\\\t#include <clipping_planes_vertex>\\\\n\\\\t#include <worldpos_vertex>\\\\n\\\\t#include <envmap_vertex>\\\\n\\\\t#include <fog_vertex>\\\\n}\\\\\\\",meshbasic_frag:\\\\\\\"uniform vec3 diffuse;\\\\nuniform float opacity;\\\\n#ifndef FLAT_SHADED\\\\n\\\\tvarying vec3 vNormal;\\\\n#endif\\\\n#include <common>\\\\n#include <dithering_pars_fragment>\\\\n#include <color_pars_fragment>\\\\n#include <uv_pars_fragment>\\\\n#include <uv2_pars_fragment>\\\\n#include <map_pars_fragment>\\\\n#include <alphamap_pars_fragment>\\\\n#include <alphatest_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 <cube_uv_reflection_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 <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, vUv2 );\\\\n\\\\t\\\\treflectedLight.indirectDiffuse += lightMapTexelToLinear( lightMapTexel ).rgb * lightMapIntensity;\\\\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 <output_fragment>\\\\n\\\\t#include <tonemapping_fragment>\\\\n\\\\t#include <encodings_fragment>\\\\n\\\\t#include <fog_fragment>\\\\n\\\\t#include <premultiplied_alpha_fragment>\\\\n\\\\t#include <dithering_fragment>\\\\n}\\\\\\\",meshlambert_vert:\\\\\\\"#define LAMBERT\\\\nvarying vec3 vLightFront;\\\\nvarying vec3 vIndirectFront;\\\\n#ifdef DOUBLE_SIDED\\\\n\\\\tvarying vec3 vLightBack;\\\\n\\\\tvarying vec3 vIndirectBack;\\\\n#endif\\\\n#include <common>\\\\n#include <uv_pars_vertex>\\\\n#include <uv2_pars_vertex>\\\\n#include <envmap_pars_vertex>\\\\n#include <bsdfs>\\\\n#include <lights_pars_begin>\\\\n#include <color_pars_vertex>\\\\n#include <fog_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 <uv2_vertex>\\\\n\\\\t#include <color_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 <clipping_planes_vertex>\\\\n\\\\t#include <worldpos_vertex>\\\\n\\\\t#include <envmap_vertex>\\\\n\\\\t#include <lights_lambert_vertex>\\\\n\\\\t#include <shadowmap_vertex>\\\\n\\\\t#include <fog_vertex>\\\\n}\\\\\\\",meshlambert_frag:\\\\\\\"uniform vec3 diffuse;\\\\nuniform vec3 emissive;\\\\nuniform float opacity;\\\\nvarying vec3 vLightFront;\\\\nvarying vec3 vIndirectFront;\\\\n#ifdef DOUBLE_SIDED\\\\n\\\\tvarying vec3 vLightBack;\\\\n\\\\tvarying vec3 vIndirectBack;\\\\n#endif\\\\n#include <common>\\\\n#include <packing>\\\\n#include <dithering_pars_fragment>\\\\n#include <color_pars_fragment>\\\\n#include <uv_pars_fragment>\\\\n#include <uv2_pars_fragment>\\\\n#include <map_pars_fragment>\\\\n#include <alphamap_pars_fragment>\\\\n#include <alphatest_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 <cube_uv_reflection_fragment>\\\\n#include <bsdfs>\\\\n#include <lights_pars_begin>\\\\n#include <fog_pars_fragment>\\\\n#include <shadowmap_pars_fragment>\\\\n#include <shadowmask_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 <specularmap_fragment>\\\\n\\\\t#include <emissivemap_fragment>\\\\n\\\\t#ifdef DOUBLE_SIDED\\\\n\\\\t\\\\treflectedLight.indirectDiffuse += ( gl_FrontFacing ) ? vIndirectFront : vIndirectBack;\\\\n\\\\t#else\\\\n\\\\t\\\\treflectedLight.indirectDiffuse += vIndirectFront;\\\\n\\\\t#endif\\\\n\\\\t#include <lightmap_fragment>\\\\n\\\\treflectedLight.indirectDiffuse *= BRDF_Lambert( diffuseColor.rgb );\\\\n\\\\t#ifdef DOUBLE_SIDED\\\\n\\\\t\\\\treflectedLight.directDiffuse = ( gl_FrontFacing ) ? vLightFront : vLightBack;\\\\n\\\\t#else\\\\n\\\\t\\\\treflectedLight.directDiffuse = vLightFront;\\\\n\\\\t#endif\\\\n\\\\treflectedLight.directDiffuse *= BRDF_Lambert( diffuseColor.rgb ) * getShadowMask();\\\\n\\\\t#include <aomap_fragment>\\\\n\\\\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + totalEmissiveRadiance;\\\\n\\\\t#include <envmap_fragment>\\\\n\\\\t#include <output_fragment>\\\\n\\\\t#include <tonemapping_fragment>\\\\n\\\\t#include <encodings_fragment>\\\\n\\\\t#include <fog_fragment>\\\\n\\\\t#include <premultiplied_alpha_fragment>\\\\n\\\\t#include <dithering_fragment>\\\\n}\\\\\\\",meshmatcap_vert:\\\\\\\"#define MATCAP\\\\nvarying vec3 vViewPosition;\\\\n#include <common>\\\\n#include <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 <beginnormal_vertex>\\\\n\\\\t#include <morphnormal_vertex>\\\\n\\\\t#include <skinbase_vertex>\\\\n\\\\t#include <skinnormal_vertex>\\\\n\\\\t#include <defaultnormal_vertex>\\\\n\\\\t#include <normal_vertex>\\\\n\\\\t#include <begin_vertex>\\\\n\\\\t#include <morphtarget_vertex>\\\\n\\\\t#include <skinning_vertex>\\\\n\\\\t#include <displacementmap_vertex>\\\\n\\\\t#include <project_vertex>\\\\n\\\\t#include <logdepthbuf_vertex>\\\\n\\\\t#include <clipping_planes_vertex>\\\\n\\\\t#include <fog_vertex>\\\\n\\\\tvViewPosition = - mvPosition.xyz;\\\\n}\\\\\\\",meshmatcap_frag:\\\\\\\"#define MATCAP\\\\nuniform vec3 diffuse;\\\\nuniform float opacity;\\\\nuniform sampler2D matcap;\\\\nvarying vec3 vViewPosition;\\\\n#include <common>\\\\n#include <dithering_pars_fragment>\\\\n#include <color_pars_fragment>\\\\n#include <uv_pars_fragment>\\\\n#include <map_pars_fragment>\\\\n#include <alphamap_pars_fragment>\\\\n#include <alphatest_pars_fragment>\\\\n#include <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 <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\\\\tmatcapColor = matcapTexelToLinear( matcapColor );\\\\n\\\\t#else\\\\n\\\\t\\\\tvec4 matcapColor = vec4( 1.0 );\\\\n\\\\t#endif\\\\n\\\\tvec3 outgoingLight = diffuseColor.rgb * matcapColor.rgb;\\\\n\\\\t#include <output_fragment>\\\\n\\\\t#include <tonemapping_fragment>\\\\n\\\\t#include <encodings_fragment>\\\\n\\\\t#include <fog_fragment>\\\\n\\\\t#include <premultiplied_alpha_fragment>\\\\n\\\\t#include <dithering_fragment>\\\\n}\\\\\\\",meshnormal_vert:\\\\\\\"#define NORMAL\\\\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( TANGENTSPACE_NORMALMAP )\\\\n\\\\tvarying vec3 vViewPosition;\\\\n#endif\\\\n#include <common>\\\\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 <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( TANGENTSPACE_NORMALMAP )\\\\n\\\\tvViewPosition = - mvPosition.xyz;\\\\n#endif\\\\n}\\\\\\\",meshnormal_frag:\\\\\\\"#define NORMAL\\\\nuniform float opacity;\\\\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( TANGENTSPACE_NORMALMAP )\\\\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}\\\\\\\",meshphong_vert:\\\\\\\"#define PHONG\\\\nvarying vec3 vViewPosition;\\\\n#include <common>\\\\n#include <uv_pars_vertex>\\\\n#include <uv2_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 <uv2_vertex>\\\\n\\\\t#include <color_vertex>\\\\n\\\\t#include <beginnormal_vertex>\\\\n\\\\t#include <morphnormal_vertex>\\\\n\\\\t#include <skinbase_vertex>\\\\n\\\\t#include <skinnormal_vertex>\\\\n\\\\t#include <defaultnormal_vertex>\\\\n\\\\t#include <normal_vertex>\\\\n\\\\t#include <begin_vertex>\\\\n\\\\t#include <morphtarget_vertex>\\\\n\\\\t#include <skinning_vertex>\\\\n\\\\t#include <displacementmap_vertex>\\\\n\\\\t#include <project_vertex>\\\\n\\\\t#include <logdepthbuf_vertex>\\\\n\\\\t#include <clipping_planes_vertex>\\\\n\\\\tvViewPosition = - mvPosition.xyz;\\\\n\\\\t#include <worldpos_vertex>\\\\n\\\\t#include <envmap_vertex>\\\\n\\\\t#include <shadowmap_vertex>\\\\n\\\\t#include <fog_vertex>\\\\n}\\\\\\\",meshphong_frag:\\\\\\\"#define PHONG\\\\nuniform vec3 diffuse;\\\\nuniform vec3 emissive;\\\\nuniform vec3 specular;\\\\nuniform float shininess;\\\\nuniform float opacity;\\\\n#include <common>\\\\n#include <packing>\\\\n#include <dithering_pars_fragment>\\\\n#include <color_pars_fragment>\\\\n#include <uv_pars_fragment>\\\\n#include <uv2_pars_fragment>\\\\n#include <map_pars_fragment>\\\\n#include <alphamap_pars_fragment>\\\\n#include <alphatest_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 <cube_uv_reflection_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 <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 <output_fragment>\\\\n\\\\t#include <tonemapping_fragment>\\\\n\\\\t#include <encodings_fragment>\\\\n\\\\t#include <fog_fragment>\\\\n\\\\t#include <premultiplied_alpha_fragment>\\\\n\\\\t#include <dithering_fragment>\\\\n}\\\\\\\",meshphysical_vert:\\\\\\\"#define STANDARD\\\\nvarying vec3 vViewPosition;\\\\n#ifdef USE_TRANSMISSION\\\\n\\\\tvarying vec3 vWorldPosition;\\\\n#endif\\\\n#include <common>\\\\n#include <uv_pars_vertex>\\\\n#include <uv2_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 <uv2_vertex>\\\\n\\\\t#include <color_vertex>\\\\n\\\\t#include <beginnormal_vertex>\\\\n\\\\t#include <morphnormal_vertex>\\\\n\\\\t#include <skinbase_vertex>\\\\n\\\\t#include <skinnormal_vertex>\\\\n\\\\t#include <defaultnormal_vertex>\\\\n\\\\t#include <normal_vertex>\\\\n\\\\t#include <begin_vertex>\\\\n\\\\t#include <morphtarget_vertex>\\\\n\\\\t#include <skinning_vertex>\\\\n\\\\t#include <displacementmap_vertex>\\\\n\\\\t#include <project_vertex>\\\\n\\\\t#include <logdepthbuf_vertex>\\\\n\\\\t#include <clipping_planes_vertex>\\\\n\\\\tvViewPosition = - mvPosition.xyz;\\\\n\\\\t#include <worldpos_vertex>\\\\n\\\\t#include <shadowmap_vertex>\\\\n\\\\t#include <fog_vertex>\\\\n#ifdef USE_TRANSMISSION\\\\n\\\\tvWorldPosition = worldPosition.xyz;\\\\n#endif\\\\n}\\\\\\\",meshphysical_frag:\\\\\\\"#define STANDARD\\\\n#ifdef PHYSICAL\\\\n\\\\t#define IOR\\\\n\\\\t#define 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 SPECULAR\\\\n\\\\tuniform float specularIntensity;\\\\n\\\\tuniform vec3 specularTint;\\\\n\\\\t#ifdef USE_SPECULARINTENSITYMAP\\\\n\\\\t\\\\tuniform sampler2D specularIntensityMap;\\\\n\\\\t#endif\\\\n\\\\t#ifdef USE_SPECULARTINTMAP\\\\n\\\\t\\\\tuniform sampler2D specularTintMap;\\\\n\\\\t#endif\\\\n#endif\\\\n#ifdef USE_CLEARCOAT\\\\n\\\\tuniform float clearcoat;\\\\n\\\\tuniform float clearcoatRoughness;\\\\n#endif\\\\n#ifdef USE_SHEEN\\\\n\\\\tuniform vec3 sheenTint;\\\\n\\\\tuniform float sheenRoughness;\\\\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 <uv2_pars_fragment>\\\\n#include <map_pars_fragment>\\\\n#include <alphamap_pars_fragment>\\\\n#include <alphatest_pars_fragment>\\\\n#include <aomap_pars_fragment>\\\\n#include <lightmap_pars_fragment>\\\\n#include <emissivemap_pars_fragment>\\\\n#include <bsdfs>\\\\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 <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 <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_CLEARCOAT\\\\n\\\\t\\\\tfloat dotNVcc = saturate( dot( geometry.clearcoatNormal, geometry.viewDir ) );\\\\n\\\\t\\\\tvec3 Fcc = F_Schlick( material.clearcoatF0, material.clearcoatF90, dotNVcc );\\\\n\\\\t\\\\toutgoingLight = outgoingLight * ( 1.0 - clearcoat * Fcc ) + clearcoatSpecular * clearcoat;\\\\n\\\\t#endif\\\\n\\\\t#include <output_fragment>\\\\n\\\\t#include <tonemapping_fragment>\\\\n\\\\t#include <encodings_fragment>\\\\n\\\\t#include <fog_fragment>\\\\n\\\\t#include <premultiplied_alpha_fragment>\\\\n\\\\t#include <dithering_fragment>\\\\n}\\\\\\\",meshtoon_vert:\\\\\\\"#define TOON\\\\nvarying vec3 vViewPosition;\\\\n#include <common>\\\\n#include <uv_pars_vertex>\\\\n#include <uv2_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 <uv2_vertex>\\\\n\\\\t#include <color_vertex>\\\\n\\\\t#include <beginnormal_vertex>\\\\n\\\\t#include <morphnormal_vertex>\\\\n\\\\t#include <skinbase_vertex>\\\\n\\\\t#include <skinnormal_vertex>\\\\n\\\\t#include <defaultnormal_vertex>\\\\n\\\\t#include <normal_vertex>\\\\n\\\\t#include <begin_vertex>\\\\n\\\\t#include <morphtarget_vertex>\\\\n\\\\t#include <skinning_vertex>\\\\n\\\\t#include <displacementmap_vertex>\\\\n\\\\t#include <project_vertex>\\\\n\\\\t#include <logdepthbuf_vertex>\\\\n\\\\t#include <clipping_planes_vertex>\\\\n\\\\tvViewPosition = - mvPosition.xyz;\\\\n\\\\t#include <worldpos_vertex>\\\\n\\\\t#include <shadowmap_vertex>\\\\n\\\\t#include <fog_vertex>\\\\n}\\\\\\\",meshtoon_frag:\\\\\\\"#define TOON\\\\nuniform vec3 diffuse;\\\\nuniform vec3 emissive;\\\\nuniform float opacity;\\\\n#include <common>\\\\n#include <packing>\\\\n#include <dithering_pars_fragment>\\\\n#include <color_pars_fragment>\\\\n#include <uv_pars_fragment>\\\\n#include <uv2_pars_fragment>\\\\n#include <map_pars_fragment>\\\\n#include <alphamap_pars_fragment>\\\\n#include <alphatest_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 <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 <output_fragment>\\\\n\\\\t#include <tonemapping_fragment>\\\\n\\\\t#include <encodings_fragment>\\\\n\\\\t#include <fog_fragment>\\\\n\\\\t#include <premultiplied_alpha_fragment>\\\\n\\\\t#include <dithering_fragment>\\\\n}\\\\\\\",points_vert:\\\\\\\"uniform float size;\\\\nuniform float scale;\\\\n#include <common>\\\\n#include <color_pars_vertex>\\\\n#include <fog_pars_vertex>\\\\n#include <morphtarget_pars_vertex>\\\\n#include <logdepthbuf_pars_vertex>\\\\n#include <clipping_planes_pars_vertex>\\\\nvoid main() {\\\\n\\\\t#include <color_vertex>\\\\n\\\\t#include <begin_vertex>\\\\n\\\\t#include <morphtarget_vertex>\\\\n\\\\t#include <project_vertex>\\\\n\\\\tgl_PointSize = size;\\\\n\\\\t#ifdef USE_SIZEATTENUATION\\\\n\\\\t\\\\tbool isPerspective = isPerspectiveMatrix( projectionMatrix );\\\\n\\\\t\\\\tif ( isPerspective ) gl_PointSize *= ( scale / - mvPosition.z );\\\\n\\\\t#endif\\\\n\\\\t#include <logdepthbuf_vertex>\\\\n\\\\t#include <clipping_planes_vertex>\\\\n\\\\t#include <worldpos_vertex>\\\\n\\\\t#include <fog_vertex>\\\\n}\\\\\\\",points_frag:\\\\\\\"uniform vec3 diffuse;\\\\nuniform float opacity;\\\\n#include <common>\\\\n#include <color_pars_fragment>\\\\n#include <map_particle_pars_fragment>\\\\n#include <alphatest_pars_fragment>\\\\n#include <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\\\\toutgoingLight = diffuseColor.rgb;\\\\n\\\\t#include <output_fragment>\\\\n\\\\t#include <tonemapping_fragment>\\\\n\\\\t#include <encodings_fragment>\\\\n\\\\t#include <fog_fragment>\\\\n\\\\t#include <premultiplied_alpha_fragment>\\\\n}\\\\\\\",shadow_vert:\\\\\\\"#include <common>\\\\n#include <fog_pars_vertex>\\\\n#include <morphtarget_pars_vertex>\\\\n#include <skinning_pars_vertex>\\\\n#include <shadowmap_pars_vertex>\\\\nvoid main() {\\\\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 <worldpos_vertex>\\\\n\\\\t#include <shadowmap_vertex>\\\\n\\\\t#include <fog_vertex>\\\\n}\\\\\\\",shadow_frag:\\\\\\\"uniform vec3 color;\\\\nuniform float opacity;\\\\n#include <common>\\\\n#include <packing>\\\\n#include <fog_pars_fragment>\\\\n#include <bsdfs>\\\\n#include <lights_pars_begin>\\\\n#include <shadowmap_pars_fragment>\\\\n#include <shadowmask_pars_fragment>\\\\nvoid main() {\\\\n\\\\tgl_FragColor = vec4( color, opacity * ( 1.0 - getShadowMask() ) );\\\\n\\\\t#include <tonemapping_fragment>\\\\n\\\\t#include <encodings_fragment>\\\\n\\\\t#include <fog_fragment>\\\\n}\\\\\\\",sprite_vert:\\\\\\\"uniform float rotation;\\\\nuniform vec2 center;\\\\n#include <common>\\\\n#include <uv_pars_vertex>\\\\n#include <fog_pars_vertex>\\\\n#include <logdepthbuf_pars_vertex>\\\\n#include <clipping_planes_pars_vertex>\\\\nvoid main() {\\\\n\\\\t#include <uv_vertex>\\\\n\\\\tvec4 mvPosition = modelViewMatrix * vec4( 0.0, 0.0, 0.0, 1.0 );\\\\n\\\\tvec2 scale;\\\\n\\\\tscale.x = length( vec3( modelMatrix[ 0 ].x, modelMatrix[ 0 ].y, modelMatrix[ 0 ].z ) );\\\\n\\\\tscale.y = length( vec3( modelMatrix[ 1 ].x, modelMatrix[ 1 ].y, modelMatrix[ 1 ].z ) );\\\\n\\\\t#ifndef USE_SIZEATTENUATION\\\\n\\\\t\\\\tbool isPerspective = isPerspectiveMatrix( projectionMatrix );\\\\n\\\\t\\\\tif ( isPerspective ) scale *= - mvPosition.z;\\\\n\\\\t#endif\\\\n\\\\tvec2 alignedPosition = ( position.xy - ( center - vec2( 0.5 ) ) ) * scale;\\\\n\\\\tvec2 rotatedPosition;\\\\n\\\\trotatedPosition.x = cos( rotation ) * alignedPosition.x - sin( rotation ) * alignedPosition.y;\\\\n\\\\trotatedPosition.y = sin( rotation ) * alignedPosition.x + cos( rotation ) * alignedPosition.y;\\\\n\\\\tmvPosition.xy += rotatedPosition;\\\\n\\\\tgl_Position = projectionMatrix * mvPosition;\\\\n\\\\t#include <logdepthbuf_vertex>\\\\n\\\\t#include <clipping_planes_vertex>\\\\n\\\\t#include <fog_vertex>\\\\n}\\\\\\\",sprite_frag:\\\\\\\"uniform vec3 diffuse;\\\\nuniform float opacity;\\\\n#include <common>\\\\n#include <uv_pars_fragment>\\\\n#include <map_pars_fragment>\\\\n#include <alphamap_pars_fragment>\\\\n#include <alphatest_pars_fragment>\\\\n#include <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\\\\toutgoingLight = diffuseColor.rgb;\\\\n\\\\t#include <output_fragment>\\\\n\\\\t#include <tonemapping_fragment>\\\\n\\\\t#include <encodings_fragment>\\\\n\\\\t#include <fog_fragment>\\\\n}\\\\\\\"},KT={common:{diffuse:{value:new $w(16777215)},opacity:{value:1},map:{value:null},uvTransform:{value:new mb},uv2Transform:{value:new mb},alphaMap:{value:null},alphaTest:{value:0}},specularmap:{specularMap:{value:null}},envmap:{envMap:{value:null},flipEnvMap:{value:-1},reflectivity:{value:1},ior:{value:1.5},refractionRatio:{value:.98},maxMipLevel:{value:0}},aomap:{aoMap:{value:null},aoMapIntensity:{value:1}},lightmap:{lightMap:{value:null},lightMapIntensity:{value:1}},emissivemap:{emissiveMap:{value:null}},bumpmap:{bumpMap:{value:null},bumpScale:{value:1}},normalmap:{normalMap:{value:null},normalScale:{value:new _b(1,1)}},displacementmap:{displacementMap:{value:null},displacementScale:{value:1},displacementBias:{value:0}},roughnessmap:{roughnessMap:{value:null}},metalnessmap:{metalnessMap:{value:null}},gradientmap:{gradientMap:{value:null}},fog:{fogDensity:{value:25e-5},fogNear:{value:1},fogFar:{value:2e3},fogColor:{value:new $w(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:{}}},spotShadowMap:{value:[]},spotShadowMatrix:{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 $w(16777215)},opacity:{value:1},size:{value:1},scale:{value:1},map:{value:null},alphaMap:{value:null},alphaTest:{value:0},uvTransform:{value:new mb}},sprite:{diffuse:{value:new $w(16777215)},opacity:{value:1},center:{value:new _b(.5,.5)},rotation:{value:0},map:{value:null},alphaMap:{value:null},alphaTest:{value:0},uvTransform:{value:new mb}}},QT={basic:{uniforms:PT([KT.common,KT.specularmap,KT.envmap,KT.aomap,KT.lightmap,KT.fog]),vertexShader:ZT.meshbasic_vert,fragmentShader:ZT.meshbasic_frag},lambert:{uniforms:PT([KT.common,KT.specularmap,KT.envmap,KT.aomap,KT.lightmap,KT.emissivemap,KT.fog,KT.lights,{emissive:{value:new $w(0)}}]),vertexShader:ZT.meshlambert_vert,fragmentShader:ZT.meshlambert_frag},phong:{uniforms:PT([KT.common,KT.specularmap,KT.envmap,KT.aomap,KT.lightmap,KT.emissivemap,KT.bumpmap,KT.normalmap,KT.displacementmap,KT.fog,KT.lights,{emissive:{value:new $w(0)},specular:{value:new $w(1118481)},shininess:{value:30}}]),vertexShader:ZT.meshphong_vert,fragmentShader:ZT.meshphong_frag},standard:{uniforms:PT([KT.common,KT.envmap,KT.aomap,KT.lightmap,KT.emissivemap,KT.bumpmap,KT.normalmap,KT.displacementmap,KT.roughnessmap,KT.metalnessmap,KT.fog,KT.lights,{emissive:{value:new $w(0)},roughness:{value:1},metalness:{value:0},envMapIntensity:{value:1}}]),vertexShader:ZT.meshphysical_vert,fragmentShader:ZT.meshphysical_frag},toon:{uniforms:PT([KT.common,KT.aomap,KT.lightmap,KT.emissivemap,KT.bumpmap,KT.normalmap,KT.displacementmap,KT.gradientmap,KT.fog,KT.lights,{emissive:{value:new $w(0)}}]),vertexShader:ZT.meshtoon_vert,fragmentShader:ZT.meshtoon_frag},matcap:{uniforms:PT([KT.common,KT.bumpmap,KT.normalmap,KT.displacementmap,KT.fog,{matcap:{value:null}}]),vertexShader:ZT.meshmatcap_vert,fragmentShader:ZT.meshmatcap_frag},points:{uniforms:PT([KT.points,KT.fog]),vertexShader:ZT.points_vert,fragmentShader:ZT.points_frag},dashed:{uniforms:PT([KT.common,KT.fog,{scale:{value:1},dashSize:{value:1},totalSize:{value:2}}]),vertexShader:ZT.linedashed_vert,fragmentShader:ZT.linedashed_frag},depth:{uniforms:PT([KT.common,KT.displacementmap]),vertexShader:ZT.depth_vert,fragmentShader:ZT.depth_frag},normal:{uniforms:PT([KT.common,KT.bumpmap,KT.normalmap,KT.displacementmap,{opacity:{value:1}}]),vertexShader:ZT.meshnormal_vert,fragmentShader:ZT.meshnormal_frag},sprite:{uniforms:PT([KT.sprite,KT.fog]),vertexShader:ZT.sprite_vert,fragmentShader:ZT.sprite_frag},background:{uniforms:{uvTransform:{value:new mb},t2D:{value:null}},vertexShader:ZT.background_vert,fragmentShader:ZT.background_frag},cube:{uniforms:PT([KT.envmap,{opacity:{value:1}}]),vertexShader:ZT.cube_vert,fragmentShader:ZT.cube_frag},equirect:{uniforms:{tEquirect:{value:null}},vertexShader:ZT.equirect_vert,fragmentShader:ZT.equirect_frag},distanceRGBA:{uniforms:PT([KT.common,KT.displacementmap,{referencePosition:{value:new Sb},nearDistance:{value:1},farDistance:{value:1e3}}]),vertexShader:ZT.distanceRGBA_vert,fragmentShader:ZT.distanceRGBA_frag},shadow:{uniforms:PT([KT.lights,KT.fog,{color:{value:new $w(0)},opacity:{value:1}}]),vertexShader:ZT.shadow_vert,fragmentShader:ZT.shadow_frag}};function tA(t,e,n,i,s){const r=new $w(0);let o,a,l=0,c=null,h=0,u=null;function d(t,e){n.buffers.color.setClear(t.r,t.g,t.b,e,s)}return{getClearColor:function(){return r},setClearColor:function(t,e=1){r.set(t),l=e,d(r,l)},getClearAlpha:function(){return l},setClearAlpha:function(t){l=t,d(r,l)},render:function(n,s){let p=!1,_=!0===s.isScene?s.background:null;_&&_.isTexture&&(_=e.get(_));const m=t.xr,f=m.getSession&&m.getSession();f&&\\\\\\\"additive\\\\\\\"===f.environmentBlendMode&&(_=null),null===_?d(r,l):_&&_.isColor&&(d(_,1),p=!0),(t.autoClear||p)&&t.clear(t.autoClearColor,t.autoClearDepth,t.autoClearStencil),_&&(_.isCubeTexture||_.mapping===vx)?(void 0===a&&(a=new CT(new LT(1,1,1),new IT({name:\\\\\\\"BackgroundCubeMaterial\\\\\\\",uniforms:OT(QT.cube.uniforms),vertexShader:QT.cube.vertexShader,fragmentShader:QT.cube.fragmentShader,side:1,depthTest:!1,depthWrite:!1,fog:!1})),a.geometry.deleteAttribute(\\\\\\\"normal\\\\\\\"),a.geometry.deleteAttribute(\\\\\\\"uv\\\\\\\"),a.onBeforeRender=function(t,e,n){this.matrixWorld.copyPosition(n.matrixWorld)},Object.defineProperty(a.material,\\\\\\\"envMap\\\\\\\",{get:function(){return this.uniforms.envMap.value}}),i.update(a)),a.material.uniforms.envMap.value=_,a.material.uniforms.flipEnvMap.value=_.isCubeTexture&&!1===_.isRenderTargetTexture?-1:1,c===_&&h===_.version&&u===t.toneMapping||(a.material.needsUpdate=!0,c=_,h=_.version,u=t.toneMapping),n.unshift(a,a.geometry,a.material,0,0,null)):_&&_.isTexture&&(void 0===o&&(o=new CT(new JT(2,2),new IT({name:\\\\\\\"BackgroundMaterial\\\\\\\",uniforms:OT(QT.background.uniforms),vertexShader:QT.background.vertexShader,fragmentShader:QT.background.fragmentShader,side:0,depthTest:!1,depthWrite:!1,fog:!1})),o.geometry.deleteAttribute(\\\\\\\"normal\\\\\\\"),Object.defineProperty(o.material,\\\\\\\"map\\\\\\\",{get:function(){return this.uniforms.t2D.value}}),i.update(o)),o.material.uniforms.t2D.value=_,!0===_.matrixAutoUpdate&&_.updateMatrix(),o.material.uniforms.uvTransform.value.copy(_.matrix),c===_&&h===_.version&&u===t.toneMapping||(o.material.needsUpdate=!0,c=_,h=_.version,u=t.toneMapping),n.unshift(o,o.geometry,o.material,0,0,null))}}}function eA(t,e,n,i){const s=t.getParameter(34921),r=i.isWebGL2?null:e.get(\\\\\\\"OES_vertex_array_object\\\\\\\"),o=i.isWebGL2||null!==r,a={},l=d(null);let c=l;function h(e){return i.isWebGL2?t.bindVertexArray(e):r.bindVertexArrayOES(e)}function u(e){return i.isWebGL2?t.deleteVertexArray(e):r.deleteVertexArrayOES(e)}function d(t){const e=[],n=[],i=[];for(let t=0;t<s;t++)e[t]=0,n[t]=0,i[t]=0;return{geometry:null,program:null,wireframe:!1,newAttributes:e,enabledAttributes:n,attributeDivisors:i,object:t,attributes:{},index:null}}function p(){const t=c.newAttributes;for(let e=0,n=t.length;e<n;e++)t[e]=0}function _(t){m(t,0)}function m(n,s){const r=c.newAttributes,o=c.enabledAttributes,a=c.attributeDivisors;if(r[n]=1,0===o[n]&&(t.enableVertexAttribArray(n),o[n]=1),a[n]!==s){(i.isWebGL2?t:e.get(\\\\\\\"ANGLE_instanced_arrays\\\\\\\"))[i.isWebGL2?\\\\\\\"vertexAttribDivisor\\\\\\\":\\\\\\\"vertexAttribDivisorANGLE\\\\\\\"](n,s),a[n]=s}}function f(){const e=c.newAttributes,n=c.enabledAttributes;for(let i=0,s=n.length;i<s;i++)n[i]!==e[i]&&(t.disableVertexAttribArray(i),n[i]=0)}function g(e,n,s,r,o,a){!0!==i.isWebGL2||5124!==s&&5125!==s?t.vertexAttribPointer(e,n,s,r,o,a):t.vertexAttribIPointer(e,n,s,o,a)}function v(){y(),c!==l&&(c=l,h(c.object))}function y(){l.geometry=null,l.program=null,l.wireframe=!1}return{setup:function(s,l,u,v,y){let x=!1;if(o){const e=function(e,n,s){const o=!0===s.wireframe;let l=a[e.id];void 0===l&&(l={},a[e.id]=l);let c=l[n.id];void 0===c&&(c={},l[n.id]=c);let h=c[o];void 0===h&&(h=d(i.isWebGL2?t.createVertexArray():r.createVertexArrayOES()),c[o]=h);return h}(v,u,l);c!==e&&(c=e,h(c.object)),x=function(t,e){const n=c.attributes,i=t.attributes;let s=0;for(const t in i){const e=n[t],r=i[t];if(void 0===e)return!0;if(e.attribute!==r)return!0;if(e.data!==r.data)return!0;s++}return c.attributesNum!==s||c.index!==e}(v,y),x&&function(t,e){const n={},i=t.attributes;let s=0;for(const t in i){const e=i[t],r={};r.attribute=e,e.data&&(r.data=e.data),n[t]=r,s++}c.attributes=n,c.attributesNum=s,c.index=e}(v,y)}else{const t=!0===l.wireframe;c.geometry===v.id&&c.program===u.id&&c.wireframe===t||(c.geometry=v.id,c.program=u.id,c.wireframe=t,x=!0)}!0===s.isInstancedMesh&&(x=!0),null!==y&&n.update(y,34963),x&&(!function(s,r,o,a){if(!1===i.isWebGL2&&(s.isInstancedMesh||a.isInstancedBufferGeometry)&&null===e.get(\\\\\\\"ANGLE_instanced_arrays\\\\\\\"))return;p();const l=a.attributes,c=o.getAttributes(),h=r.defaultAttributeValues;for(const e in c){const i=c[e];if(i.location>=0){let r=l[e];if(void 0===r&&(\\\\\\\"instanceMatrix\\\\\\\"===e&&s.instanceMatrix&&(r=s.instanceMatrix),\\\\\\\"instanceColor\\\\\\\"===e&&s.instanceColor&&(r=s.instanceColor)),void 0!==r){const e=r.normalized,o=r.itemSize,l=n.get(r);if(void 0===l)continue;const c=l.buffer,h=l.type,u=l.bytesPerElement;if(r.isInterleavedBufferAttribute){const n=r.data,l=n.stride,d=r.offset;if(n&&n.isInstancedInterleavedBuffer){for(let t=0;t<i.locationSize;t++)m(i.location+t,n.meshPerAttribute);!0!==s.isInstancedMesh&&void 0===a._maxInstanceCount&&(a._maxInstanceCount=n.meshPerAttribute*n.count)}else for(let t=0;t<i.locationSize;t++)_(i.location+t);t.bindBuffer(34962,c);for(let t=0;t<i.locationSize;t++)g(i.location+t,o/i.locationSize,h,e,l*u,(d+o/i.locationSize*t)*u)}else{if(r.isInstancedBufferAttribute){for(let t=0;t<i.locationSize;t++)m(i.location+t,r.meshPerAttribute);!0!==s.isInstancedMesh&&void 0===a._maxInstanceCount&&(a._maxInstanceCount=r.meshPerAttribute*r.count)}else for(let t=0;t<i.locationSize;t++)_(i.location+t);t.bindBuffer(34962,c);for(let t=0;t<i.locationSize;t++)g(i.location+t,o/i.locationSize,h,e,o*u,o/i.locationSize*t*u)}}else if(void 0!==h){const n=h[e];if(void 0!==n)switch(n.length){case 2:t.vertexAttrib2fv(i.location,n);break;case 3:t.vertexAttrib3fv(i.location,n);break;case 4:t.vertexAttrib4fv(i.location,n);break;default:t.vertexAttrib1fv(i.location,n)}}}}f()}(s,l,u,v),null!==y&&t.bindBuffer(34963,n.get(y).buffer))},reset:v,resetDefaultState:y,dispose:function(){v();for(const t in a){const e=a[t];for(const t in e){const n=e[t];for(const t in n)u(n[t].object),delete n[t];delete e[t]}delete a[t]}},releaseStatesOfGeometry:function(t){if(void 0===a[t.id])return;const e=a[t.id];for(const t in e){const n=e[t];for(const t in n)u(n[t].object),delete n[t];delete e[t]}delete a[t.id]},releaseStatesOfProgram:function(t){for(const e in a){const n=a[e];if(void 0===n[t.id])continue;const i=n[t.id];for(const t in i)u(i[t].object),delete i[t];delete n[t.id]}},initAttributes:p,enableAttribute:_,disableUnusedAttributes:f}}function nA(t,e,n,i){const s=i.isWebGL2;let r;this.setMode=function(t){r=t},this.render=function(e,i){t.drawArrays(r,e,i),n.update(i,r,1)},this.renderInstances=function(i,o,a){if(0===a)return;let l,c;if(s)l=t,c=\\\\\\\"drawArraysInstanced\\\\\\\";else if(l=e.get(\\\\\\\"ANGLE_instanced_arrays\\\\\\\"),c=\\\\\\\"drawArraysInstancedANGLE\\\\\\\",null===l)return void console.error(\\\\\\\"THREE.WebGLBufferRenderer: using THREE.InstancedBufferGeometry but hardware does not support extension ANGLE_instanced_arrays.\\\\\\\");l[c](r,i,o,a),n.update(o,r,a)}}function iA(t,e,n){let i;function s(e){if(\\\\\\\"highp\\\\\\\"===e){if(t.getShaderPrecisionFormat(35633,36338).precision>0&&t.getShaderPrecisionFormat(35632,36338).precision>0)return\\\\\\\"highp\\\\\\\";e=\\\\\\\"mediump\\\\\\\"}return\\\\\\\"mediump\\\\\\\"===e&&t.getShaderPrecisionFormat(35633,36337).precision>0&&t.getShaderPrecisionFormat(35632,36337).precision>0?\\\\\\\"mediump\\\\\\\":\\\\\\\"lowp\\\\\\\"}const r=\\\\\\\"undefined\\\\\\\"!=typeof WebGL2RenderingContext&&t instanceof WebGL2RenderingContext||\\\\\\\"undefined\\\\\\\"!=typeof WebGL2ComputeRenderingContext&&t instanceof WebGL2ComputeRenderingContext;let o=void 0!==n.precision?n.precision:\\\\\\\"highp\\\\\\\";const a=s(o);a!==o&&(console.warn(\\\\\\\"THREE.WebGLRenderer:\\\\\\\",o,\\\\\\\"not supported, using\\\\\\\",a,\\\\\\\"instead.\\\\\\\"),o=a);const l=r||e.has(\\\\\\\"WEBGL_draw_buffers\\\\\\\"),c=!0===n.logarithmicDepthBuffer,h=t.getParameter(34930),u=t.getParameter(35660),d=t.getParameter(3379),p=t.getParameter(34076),_=t.getParameter(34921),m=t.getParameter(36347),f=t.getParameter(36348),g=t.getParameter(36349),v=u>0,y=r||e.has(\\\\\\\"OES_texture_float\\\\\\\");return{isWebGL2:r,drawBuffers:l,getMaxAnisotropy:function(){if(void 0!==i)return i;if(!0===e.has(\\\\\\\"EXT_texture_filter_anisotropic\\\\\\\")){const n=e.get(\\\\\\\"EXT_texture_filter_anisotropic\\\\\\\");i=t.getParameter(n.MAX_TEXTURE_MAX_ANISOTROPY_EXT)}else i=0;return i},getMaxPrecision:s,precision:o,logarithmicDepthBuffer:c,maxTextures:h,maxVertexTextures:u,maxTextureSize:d,maxCubemapSize:p,maxAttributes:_,maxVertexUniforms:m,maxVaryings:f,maxFragmentUniforms:g,vertexTextures:v,floatFragmentTextures:y,floatVertexTextures:v&&y,maxSamples:r?t.getParameter(36183):0}}function sA(t){const e=this;let n=null,i=0,s=!1,r=!1;const o=new jT,a=new mb,l={value:null,needsUpdate:!1};function c(){l.value!==n&&(l.value=n,l.needsUpdate=i>0),e.numPlanes=i,e.numIntersection=0}function h(t,n,i,s){const r=null!==t?t.length:0;let c=null;if(0!==r){if(c=l.value,!0!==s||null===c){const e=i+4*r,s=n.matrixWorldInverse;a.getNormalMatrix(s),(null===c||c.length<e)&&(c=new Float32Array(e));for(let e=0,n=i;e!==r;++e,n+=4)o.copy(t[e]).applyMatrix4(s,a),o.normal.toArray(c,n),c[n+3]=o.constant}l.value=c,l.needsUpdate=!0}return e.numPlanes=r,e.numIntersection=0,c}this.uniform=l,this.numPlanes=0,this.numIntersection=0,this.init=function(t,e,r){const o=0!==t.length||e||0!==i||s;return s=e,n=h(t,r,0),i=t.length,o},this.beginShadows=function(){r=!0,h(null)},this.endShadows=function(){r=!1,c()},this.setState=function(e,o,a){const u=e.clippingPlanes,d=e.clipIntersection,p=e.clipShadows,_=t.get(e);if(!s||null===u||0===u.length||r&&!p)r?h(null):c();else{const t=r?0:i,e=4*t;let s=_.clippingState||null;l.value=s,s=h(u,o,e,a);for(let t=0;t!==e;++t)s[t]=n[t];_.clippingState=s,this.numIntersection=d?this.numPlanes:0,this.numPlanes+=t}}}function rA(t){let e=new WeakMap;function n(t,e){return e===fx?t.mapping=_x:e===gx&&(t.mapping=mx),t}function i(t){const n=t.target;n.removeEventListener(\\\\\\\"dispose\\\\\\\",i);const s=e.get(n);void 0!==s&&(e.delete(n),s.dispose())}return{get:function(s){if(s&&s.isTexture&&!1===s.isRenderTargetTexture){const r=s.mapping;if(r===fx||r===gx){if(e.has(s)){return n(e.get(s).texture,s.mapping)}{const r=s.image;if(r&&r.height>0){const o=t.getRenderTarget(),a=new UT(r.height/2);return a.fromEquirectangularTexture(t,s),e.set(s,a),t.setRenderTarget(o),s.addEventListener(\\\\\\\"dispose\\\\\\\",i),n(a.texture,s.mapping)}return null}}}return s},dispose:function(){e=new WeakMap}}}QT.physical={uniforms:PT([QT.standard.uniforms,{clearcoat:{value:0},clearcoatMap:{value:null},clearcoatRoughness:{value:0},clearcoatRoughnessMap:{value:null},clearcoatNormalScale:{value:new _b(1,1)},clearcoatNormalMap:{value:null},sheen:{value:0},sheenTint:{value:new $w(0)},sheenRoughness:{value:0},transmission:{value:0},transmissionMap:{value:null},transmissionSamplerSize:{value:new _b},transmissionSamplerMap:{value:null},thickness:{value:0},thicknessMap:{value:null},attenuationDistance:{value:0},attenuationTint:{value:new $w(0)},specularIntensity:{value:0},specularIntensityMap:{value:null},specularTint:{value:new $w(1,1,1)},specularTintMap:{value:null}}]),vertexShader:ZT.meshphysical_vert,fragmentShader:ZT.meshphysical_frag};class oA extends FT{constructor(t=-1,e=1,n=1,i=-1,s=.1,r=2e3){super(),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=r,this.updateProjectionMatrix()}copy(t,e){return super.copy(t,e),this.left=t.left,this.right=t.right,this.top=t.top,this.bottom=t.bottom,this.near=t.near,this.far=t.far,this.zoom=t.zoom,this.view=null===t.view?null:Object.assign({},t.view),this}setViewOffset(t,e,n,i,s,r){null===this.view&&(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=t,this.view.fullHeight=e,this.view.offsetX=n,this.view.offsetY=i,this.view.width=s,this.view.height=r,this.updateProjectionMatrix()}clearViewOffset(){null!==this.view&&(this.view.enabled=!1),this.updateProjectionMatrix()}updateProjectionMatrix(){const t=(this.right-this.left)/(2*this.zoom),e=(this.top-this.bottom)/(2*this.zoom),n=(this.right+this.left)/2,i=(this.top+this.bottom)/2;let s=n-t,r=n+t,o=i+e,a=i-e;if(null!==this.view&&this.view.enabled){const t=(this.right-this.left)/this.view.fullWidth/this.zoom,e=(this.top-this.bottom)/this.view.fullHeight/this.zoom;s+=t*this.view.offsetX,r=s+t*this.view.width,o-=e*this.view.offsetY,a=o-e*this.view.height}this.projectionMatrix.makeOrthographic(s,r,o,a,this.near,this.far),this.projectionMatrixInverse.copy(this.projectionMatrix).invert()}toJSON(t){const e=super.toJSON(t);return e.object.zoom=this.zoom,e.object.left=this.left,e.object.right=this.right,e.object.top=this.top,e.object.bottom=this.bottom,e.object.near=this.near,e.object.far=this.far,null!==this.view&&(e.object.view=Object.assign({},this.view)),e}}oA.prototype.isOrthographicCamera=!0;class aA extends IT{constructor(t){super(t),this.type=\\\\\\\"RawShaderMaterial\\\\\\\"}}aA.prototype.isRawShaderMaterial=!0;const lA=Math.pow(2,8),cA=[.125,.215,.35,.446,.526,.582],hA=5+cA.length,uA=20,dA={[qx]:0,[Xx]:1,[$x]:2,3004:3,3005:4,3006:5,[Yx]:6},pA=new oA,{_lodPlanes:_A,_sizeLods:mA,_sigmas:fA}=AA(),gA=new $w;let vA=null;const yA=(1+Math.sqrt(5))/2,xA=1/yA,bA=[new Sb(1,1,1),new Sb(-1,1,1),new Sb(1,1,-1),new Sb(-1,1,-1),new Sb(0,yA,xA),new Sb(0,yA,-xA),new Sb(xA,0,yA),new Sb(-xA,0,yA),new Sb(yA,xA,0),new Sb(-yA,xA,0)];class wA{constructor(t){this._renderer=t,this._pingPongRenderTarget=null,this._blurMaterial=function(t){const e=new Float32Array(t),n=new Sb(0,1,0);return new aA({name:\\\\\\\"SphericalGaussianBlur\\\\\\\",defines:{n:t},uniforms:{envMap:{value:null},samples:{value:1},weights:{value:e},latitudinal:{value:!1},dTheta:{value:0},mipInt:{value:0},poleAxis:{value:n},inputEncoding:{value:dA[3e3]},outputEncoding:{value:dA[3e3]}},vertexShader:NA(),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${LA()}\\\\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\\\\tgl_FragColor = linearToOutputTexel( gl_FragColor );\\\\n\\\\n\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t`,blending:0,depthTest:!1,depthWrite:!1})}(uA),this._equirectShader=null,this._cubemapShader=null,this._compileMaterial(this._blurMaterial)}fromScene(t,e=0,n=.1,i=100){vA=this._renderer.getRenderTarget();const s=this._allocateTargets();return this._sceneToCubeUV(t,n,i,s),e>0&&this._blur(s,0,0,e),this._applyPMREM(s),this._cleanup(s),s}fromEquirectangular(t){return this._fromTexture(t)}fromCubemap(t){return this._fromTexture(t)}compileCubemapShader(){null===this._cubemapShader&&(this._cubemapShader=CA(),this._compileMaterial(this._cubemapShader))}compileEquirectangularShader(){null===this._equirectShader&&(this._equirectShader=SA(),this._compileMaterial(this._equirectShader))}dispose(){this._blurMaterial.dispose(),null!==this._cubemapShader&&this._cubemapShader.dispose(),null!==this._equirectShader&&this._equirectShader.dispose();for(let t=0;t<_A.length;t++)_A[t].dispose()}_cleanup(t){this._pingPongRenderTarget.dispose(),this._renderer.setRenderTarget(vA),t.scissorTest=!1,EA(t,0,0,t.width,t.height)}_fromTexture(t){vA=this._renderer.getRenderTarget();const e=this._allocateTargets(t);return this._textureToCubeUV(t,e),this._applyPMREM(e),this._cleanup(e),e}_allocateTargets(t){const e={magFilter:Tx,minFilter:Tx,generateMipmaps:!1,type:Nx,format:1023,encoding:TA(t)?t.encoding:$x,depthBuffer:!1},n=MA(e);return n.depthBuffer=!t,this._pingPongRenderTarget=MA(e),n}_compileMaterial(t){const e=new CT(_A[0],t);this._renderer.compile(e,pA)}_sceneToCubeUV(t,e,n,i){const s=new DT(90,1,e,n),r=[1,-1,1,1,1,1],o=[1,1,1,-1,-1,-1],a=this._renderer,l=a.autoClear,c=a.outputEncoding,h=a.toneMapping;a.getClearColor(gA),a.toneMapping=0,a.outputEncoding=qx,a.autoClear=!1;const u=new Jw({name:\\\\\\\"PMREM.Background\\\\\\\",side:1,depthWrite:!1,depthTest:!1}),d=new CT(new LT,u);let p=!1;const _=t.background;_?_.isColor&&(u.color.copy(_),t.background=null,p=!0):(u.color.copy(gA),p=!0);for(let e=0;e<6;e++){const n=e%3;0==n?(s.up.set(0,r[e],0),s.lookAt(o[e],0,0)):1==n?(s.up.set(0,0,r[e]),s.lookAt(0,o[e],0)):(s.up.set(0,r[e],0),s.lookAt(0,0,o[e])),EA(i,n*lA,e>2?lA:0,lA,lA),a.setRenderTarget(i),p&&a.render(d,s),a.render(t,s)}d.geometry.dispose(),d.material.dispose(),a.toneMapping=h,a.outputEncoding=c,a.autoClear=l,t.background=_}_setEncoding(t,e){!0===this._renderer.capabilities.isWebGL2&&e.format===Dx&&e.type===Nx&&e.encoding===Xx?t.value=dA[3e3]:t.value=dA[e.encoding]}_textureToCubeUV(t,e){const n=this._renderer;t.isCubeTexture?null==this._cubemapShader&&(this._cubemapShader=CA()):null==this._equirectShader&&(this._equirectShader=SA());const i=t.isCubeTexture?this._cubemapShader:this._equirectShader,s=new CT(_A[0],i),r=i.uniforms;r.envMap.value=t,t.isCubeTexture||r.texelSize.value.set(1/t.image.width,1/t.image.height),this._setEncoding(r.inputEncoding,t),this._setEncoding(r.outputEncoding,e.texture),EA(e,0,0,3*lA,2*lA),n.setRenderTarget(e),n.render(s,pA)}_applyPMREM(t){const e=this._renderer,n=e.autoClear;e.autoClear=!1;for(let e=1;e<hA;e++){const n=Math.sqrt(fA[e]*fA[e]-fA[e-1]*fA[e-1]),i=bA[(e-1)%bA.length];this._blur(t,e-1,e,n,i)}e.autoClear=n}_blur(t,e,n,i,s){const r=this._pingPongRenderTarget;this._halfBlur(t,r,e,n,i,\\\\\\\"latitudinal\\\\\\\",s),this._halfBlur(r,t,n,n,i,\\\\\\\"longitudinal\\\\\\\",s)}_halfBlur(t,e,n,i,s,r,o){const a=this._renderer,l=this._blurMaterial;\\\\\\\"latitudinal\\\\\\\"!==r&&\\\\\\\"longitudinal\\\\\\\"!==r&&console.error(\\\\\\\"blur direction must be either latitudinal or longitudinal!\\\\\\\");const c=new CT(_A[i],l),h=l.uniforms,u=mA[n]-1,d=isFinite(s)?Math.PI/(2*u):2*Math.PI/39,p=s/d,_=isFinite(s)?1+Math.floor(3*p):uA;_>uA&&console.warn(`sigmaRadians, ${s}, is too large and will clip, as it requested ${_} samples when the maximum is set to 20`);const m=[];let f=0;for(let t=0;t<uA;++t){const e=t/p,n=Math.exp(-e*e/2);m.push(n),0==t?f+=n:t<_&&(f+=2*n)}for(let t=0;t<m.length;t++)m[t]=m[t]/f;h.envMap.value=t.texture,h.samples.value=_,h.weights.value=m,h.latitudinal.value=\\\\\\\"latitudinal\\\\\\\"===r,o&&(h.poleAxis.value=o),h.dTheta.value=d,h.mipInt.value=8-n,this._setEncoding(h.inputEncoding,t.texture),this._setEncoding(h.outputEncoding,t.texture);const g=mA[i];EA(e,3*Math.max(0,lA-2*g),(0===i?0:2*lA)+2*g*(i>4?i-8+4:0),3*g,2*g),a.setRenderTarget(e),a.render(c,pA)}}function TA(t){return void 0!==t&&t.type===Nx&&(t.encoding===qx||t.encoding===Xx||t.encoding===Yx)}function AA(){const t=[],e=[],n=[];let i=8;for(let s=0;s<hA;s++){const r=Math.pow(2,i);e.push(r);let o=1/r;s>4?o=cA[s-8+4-1]:0==s&&(o=0),n.push(o);const a=1/(r-1),l=-a/2,c=1+a/2,h=[l,l,c,l,c,c,l,l,c,c,l,c],u=6,d=6,p=3,_=2,m=1,f=new Float32Array(p*d*u),g=new Float32Array(_*d*u),v=new Float32Array(m*d*u);for(let t=0;t<u;t++){const e=t%3*2/3-1,n=t>2?0:-1,i=[e,n,0,e+2/3,n,0,e+2/3,n+1,0,e,n,0,e+2/3,n+1,0,e,n+1,0];f.set(i,p*d*t),g.set(h,_*d*t);const s=[t,t,t,t,t,t];v.set(s,m*d*t)}const y=new hT;y.setAttribute(\\\\\\\"position\\\\\\\",new Qw(f,p)),y.setAttribute(\\\\\\\"uv\\\\\\\",new Qw(g,_)),y.setAttribute(\\\\\\\"faceIndex\\\\\\\",new Qw(v,m)),t.push(y),i>4&&i--}return{_lodPlanes:t,_sizeLods:e,_sigmas:n}}function MA(t){const e=new Ab(3*lA,3*lA,t);return e.texture.mapping=vx,e.texture.name=\\\\\\\"PMREM.cubeUv\\\\\\\",e.scissorTest=!0,e}function EA(t,e,n,i,s){t.viewport.set(e,n,i,s),t.scissor.set(e,n,i,s)}function SA(){const t=new _b(1,1);return new aA({name:\\\\\\\"EquirectangularToCubeUV\\\\\\\",uniforms:{envMap:{value:null},texelSize:{value:t},inputEncoding:{value:dA[3e3]},outputEncoding:{value:dA[3e3]}},vertexShader:NA(),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 vec2 texelSize;\\\\n\\\\n\\\\t\\\\t\\\\t${LA()}\\\\n\\\\n\\\\t\\\\t\\\\t#include <common>\\\\n\\\\n\\\\t\\\\t\\\\tvoid main() {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tgl_FragColor = vec4( 0.0, 0.0, 0.0, 1.0 );\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tvec3 outputDirection = normalize( vOutputDirection );\\\\n\\\\t\\\\t\\\\t\\\\tvec2 uv = equirectUv( outputDirection );\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tvec2 f = fract( uv / texelSize - 0.5 );\\\\n\\\\t\\\\t\\\\t\\\\tuv -= f * texelSize;\\\\n\\\\t\\\\t\\\\t\\\\tvec3 tl = envMapTexelToLinear( texture2D ( envMap, uv ) ).rgb;\\\\n\\\\t\\\\t\\\\t\\\\tuv.x += texelSize.x;\\\\n\\\\t\\\\t\\\\t\\\\tvec3 tr = envMapTexelToLinear( texture2D ( envMap, uv ) ).rgb;\\\\n\\\\t\\\\t\\\\t\\\\tuv.y += texelSize.y;\\\\n\\\\t\\\\t\\\\t\\\\tvec3 br = envMapTexelToLinear( texture2D ( envMap, uv ) ).rgb;\\\\n\\\\t\\\\t\\\\t\\\\tuv.x -= texelSize.x;\\\\n\\\\t\\\\t\\\\t\\\\tvec3 bl = envMapTexelToLinear( texture2D ( envMap, uv ) ).rgb;\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tvec3 tm = mix( tl, tr, f.x );\\\\n\\\\t\\\\t\\\\t\\\\tvec3 bm = mix( bl, br, f.x );\\\\n\\\\t\\\\t\\\\t\\\\tgl_FragColor.rgb = mix( tm, bm, f.y );\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tgl_FragColor = linearToOutputTexel( gl_FragColor );\\\\n\\\\n\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t`,blending:0,depthTest:!1,depthWrite:!1})}function CA(){return new aA({name:\\\\\\\"CubemapToCubeUV\\\\\\\",uniforms:{envMap:{value:null},inputEncoding:{value:dA[3e3]},outputEncoding:{value:dA[3e3]}},vertexShader:NA(),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 samplerCube envMap;\\\\n\\\\n\\\\t\\\\t\\\\t${LA()}\\\\n\\\\n\\\\t\\\\t\\\\tvoid main() {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tgl_FragColor = vec4( 0.0, 0.0, 0.0, 1.0 );\\\\n\\\\t\\\\t\\\\t\\\\tgl_FragColor.rgb = envMapTexelToLinear( textureCube( envMap, vec3( - vOutputDirection.x, vOutputDirection.yz ) ) ).rgb;\\\\n\\\\t\\\\t\\\\t\\\\tgl_FragColor = linearToOutputTexel( gl_FragColor );\\\\n\\\\n\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t`,blending:0,depthTest:!1,depthWrite:!1})}function NA(){return\\\\\\\"\\\\n\\\\n\\\\t\\\\tprecision mediump float;\\\\n\\\\t\\\\tprecision mediump int;\\\\n\\\\n\\\\t\\\\tattribute vec3 position;\\\\n\\\\t\\\\tattribute vec2 uv;\\\\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 LA(){return\\\\\\\"\\\\n\\\\n\\\\t\\\\tuniform int inputEncoding;\\\\n\\\\t\\\\tuniform int outputEncoding;\\\\n\\\\n\\\\t\\\\t#include <encodings_pars_fragment>\\\\n\\\\n\\\\t\\\\tvec4 inputTexelToLinear( vec4 value ) {\\\\n\\\\n\\\\t\\\\t\\\\tif ( inputEncoding == 0 ) {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\treturn value;\\\\n\\\\n\\\\t\\\\t\\\\t} else if ( inputEncoding == 1 ) {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\treturn sRGBToLinear( value );\\\\n\\\\n\\\\t\\\\t\\\\t} else if ( inputEncoding == 2 ) {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\treturn RGBEToLinear( value );\\\\n\\\\n\\\\t\\\\t\\\\t} else if ( inputEncoding == 3 ) {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\treturn RGBMToLinear( value, 7.0 );\\\\n\\\\n\\\\t\\\\t\\\\t} else if ( inputEncoding == 4 ) {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\treturn RGBMToLinear( value, 16.0 );\\\\n\\\\n\\\\t\\\\t\\\\t} else if ( inputEncoding == 5 ) {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\treturn RGBDToLinear( value, 256.0 );\\\\n\\\\n\\\\t\\\\t\\\\t} else {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\treturn GammaToLinear( value, 2.2 );\\\\n\\\\n\\\\t\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\tvec4 linearToOutputTexel( vec4 value ) {\\\\n\\\\n\\\\t\\\\t\\\\tif ( outputEncoding == 0 ) {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\treturn value;\\\\n\\\\n\\\\t\\\\t\\\\t} else if ( outputEncoding == 1 ) {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\treturn LinearTosRGB( value );\\\\n\\\\n\\\\t\\\\t\\\\t} else if ( outputEncoding == 2 ) {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\treturn LinearToRGBE( value );\\\\n\\\\n\\\\t\\\\t\\\\t} else if ( outputEncoding == 3 ) {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\treturn LinearToRGBM( value, 7.0 );\\\\n\\\\n\\\\t\\\\t\\\\t} else if ( outputEncoding == 4 ) {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\treturn LinearToRGBM( value, 16.0 );\\\\n\\\\n\\\\t\\\\t\\\\t} else if ( outputEncoding == 5 ) {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\treturn LinearToRGBD( value, 256.0 );\\\\n\\\\n\\\\t\\\\t\\\\t} else {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\treturn LinearToGamma( value, 2.2 );\\\\n\\\\n\\\\t\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\tvec4 envMapTexelToLinear( vec4 color ) {\\\\n\\\\n\\\\t\\\\t\\\\treturn inputTexelToLinear( color );\\\\n\\\\n\\\\t\\\\t}\\\\n\\\\t\\\\\\\"}function OA(t){let e=new WeakMap,n=null;function i(t){const n=t.target;n.removeEventListener(\\\\\\\"dispose\\\\\\\",i);const s=e.get(n);void 0!==s&&(e.delete(n),s.dispose())}return{get:function(s){if(s&&s.isTexture&&!1===s.isRenderTargetTexture){const r=s.mapping,o=r===fx||r===gx,a=r===_x||r===mx;if(o||a){if(e.has(s))return e.get(s).texture;{const r=s.image;if(o&&r&&r.height>0||a&&r&&function(t){let e=0;const n=6;for(let i=0;i<n;i++)void 0!==t[i]&&e++;return e===n}(r)){const r=t.getRenderTarget();null===n&&(n=new wA(t));const a=o?n.fromEquirectangular(s):n.fromCubemap(s);return e.set(s,a),t.setRenderTarget(r),s.addEventListener(\\\\\\\"dispose\\\\\\\",i),a.texture}return null}}}return s},dispose:function(){e=new WeakMap,null!==n&&(n.dispose(),n=null)}}}function PA(t){const e={};function n(n){if(void 0!==e[n])return e[n];let i;switch(n){case\\\\\\\"WEBGL_depth_texture\\\\\\\":i=t.getExtension(\\\\\\\"WEBGL_depth_texture\\\\\\\")||t.getExtension(\\\\\\\"MOZ_WEBGL_depth_texture\\\\\\\")||t.getExtension(\\\\\\\"WEBKIT_WEBGL_depth_texture\\\\\\\");break;case\\\\\\\"EXT_texture_filter_anisotropic\\\\\\\":i=t.getExtension(\\\\\\\"EXT_texture_filter_anisotropic\\\\\\\")||t.getExtension(\\\\\\\"MOZ_EXT_texture_filter_anisotropic\\\\\\\")||t.getExtension(\\\\\\\"WEBKIT_EXT_texture_filter_anisotropic\\\\\\\");break;case\\\\\\\"WEBGL_compressed_texture_s3tc\\\\\\\":i=t.getExtension(\\\\\\\"WEBGL_compressed_texture_s3tc\\\\\\\")||t.getExtension(\\\\\\\"MOZ_WEBGL_compressed_texture_s3tc\\\\\\\")||t.getExtension(\\\\\\\"WEBKIT_WEBGL_compressed_texture_s3tc\\\\\\\");break;case\\\\\\\"WEBGL_compressed_texture_pvrtc\\\\\\\":i=t.getExtension(\\\\\\\"WEBGL_compressed_texture_pvrtc\\\\\\\")||t.getExtension(\\\\\\\"WEBKIT_WEBGL_compressed_texture_pvrtc\\\\\\\");break;default:i=t.getExtension(n)}return e[n]=i,i}return{has:function(t){return null!==n(t)},init:function(t){t.isWebGL2?n(\\\\\\\"EXT_color_buffer_float\\\\\\\"):(n(\\\\\\\"WEBGL_depth_texture\\\\\\\"),n(\\\\\\\"OES_texture_float\\\\\\\"),n(\\\\\\\"OES_texture_half_float\\\\\\\"),n(\\\\\\\"OES_texture_half_float_linear\\\\\\\"),n(\\\\\\\"OES_standard_derivatives\\\\\\\"),n(\\\\\\\"OES_element_index_uint\\\\\\\"),n(\\\\\\\"OES_vertex_array_object\\\\\\\"),n(\\\\\\\"ANGLE_instanced_arrays\\\\\\\")),n(\\\\\\\"OES_texture_float_linear\\\\\\\"),n(\\\\\\\"EXT_color_buffer_half_float\\\\\\\")},get:function(t){const e=n(t);return null===e&&console.warn(\\\\\\\"THREE.WebGLRenderer: \\\\\\\"+t+\\\\\\\" extension not supported.\\\\\\\"),e}}}function RA(t,e,n,i){const s={},r=new WeakMap;function o(t){const a=t.target;null!==a.index&&e.remove(a.index);for(const t in a.attributes)e.remove(a.attributes[t]);a.removeEventListener(\\\\\\\"dispose\\\\\\\",o),delete s[a.id];const l=r.get(a);l&&(e.remove(l),r.delete(a)),i.releaseStatesOfGeometry(a),!0===a.isInstancedBufferGeometry&&delete a._maxInstanceCount,n.memory.geometries--}function a(t){const n=[],i=t.index,s=t.attributes.position;let o=0;if(null!==i){const t=i.array;o=i.version;for(let e=0,i=t.length;e<i;e+=3){const i=t[e+0],s=t[e+1],r=t[e+2];n.push(i,s,s,r,r,i)}}else{const t=s.array;o=s.version;for(let e=0,i=t.length/3-1;e<i;e+=3){const t=e+0,i=e+1,s=e+2;n.push(t,i,i,s,s,t)}}const a=new(fb(n)>65535?eT:tT)(n,1);a.version=o;const l=r.get(t);l&&e.remove(l),r.set(t,a)}return{get:function(t,e){return!0===s[e.id]||(e.addEventListener(\\\\\\\"dispose\\\\\\\",o),s[e.id]=!0,n.memory.geometries++),e},update:function(t){const n=t.attributes;for(const t in n)e.update(n[t],34962);const i=t.morphAttributes;for(const t in i){const n=i[t];for(let t=0,i=n.length;t<i;t++)e.update(n[t],34962)}},getWireframeAttribute:function(t){const e=r.get(t);if(e){const n=t.index;null!==n&&e.version<n.version&&a(t)}else a(t);return r.get(t)}}}function IA(t,e,n,i){const s=i.isWebGL2;let r,o,a;this.setMode=function(t){r=t},this.setIndex=function(t){o=t.type,a=t.bytesPerElement},this.render=function(e,i){t.drawElements(r,i,o,e*a),n.update(i,r,1)},this.renderInstances=function(i,l,c){if(0===c)return;let h,u;if(s)h=t,u=\\\\\\\"drawElementsInstanced\\\\\\\";else if(h=e.get(\\\\\\\"ANGLE_instanced_arrays\\\\\\\"),u=\\\\\\\"drawElementsInstancedANGLE\\\\\\\",null===h)return void console.error(\\\\\\\"THREE.WebGLIndexedBufferRenderer: using THREE.InstancedBufferGeometry but hardware does not support extension ANGLE_instanced_arrays.\\\\\\\");h[u](r,l,o,i*a,c),n.update(l,r,c)}}function FA(t){const e={frame:0,calls:0,triangles:0,points:0,lines:0};return{memory:{geometries:0,textures:0},render:e,programs:null,autoReset:!0,reset:function(){e.frame++,e.calls=0,e.triangles=0,e.points=0,e.lines=0},update:function(t,n,i){switch(e.calls++,n){case 4:e.triangles+=i*(t/3);break;case 1:e.lines+=i*(t/2);break;case 3:e.lines+=i*(t-1);break;case 2:e.lines+=i*t;break;case 0:e.points+=i*t;break;default:console.error(\\\\\\\"THREE.WebGLInfo: Unknown draw mode:\\\\\\\",n)}}}}class DA extends bb{constructor(t=null,e=1,n=1,i=1){super(null),this.image={data:t,width:e,height:n,depth:i},this.magFilter=Tx,this.minFilter=Tx,this.wrapR=bx,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1,this.needsUpdate=!0}}function BA(t,e){return t[0]-e[0]}function zA(t,e){return Math.abs(e[1])-Math.abs(t[1])}function kA(t,e){let n=1;const i=e.isInterleavedBufferAttribute?e.data.array:e.array;i instanceof Int8Array?n=127:i instanceof Int16Array?n=32767:i instanceof Int32Array?n=2147483647:console.error(\\\\\\\"THREE.WebGLMorphtargets: Unsupported morph attribute data type: \\\\\\\",i),t.divideScalar(n)}function UA(t,e,n){const i={},s=new Float32Array(8),r=new WeakMap,o=new Sb,a=[];for(let t=0;t<8;t++)a[t]=[t,0];return{update:function(l,c,h,u){const d=l.morphTargetInfluences;if(!0===e.isWebGL2){const i=c.morphAttributes.position.length;let s=r.get(c);if(void 0===s||s.count!==i){void 0!==s&&s.texture.dispose();const t=void 0!==c.morphAttributes.normal,n=c.morphAttributes.position,a=c.morphAttributes.normal||[],l=!0===t?2:1;let h=c.attributes.position.count*l,u=1;h>e.maxTextureSize&&(u=Math.ceil(h/e.maxTextureSize),h=e.maxTextureSize);const d=new Float32Array(h*u*4*i),p=new DA(d,h,u,i);p.format=Dx,p.type=Px;const _=4*l;for(let e=0;e<i;e++){const i=n[e],s=a[e],r=h*u*4*e;for(let e=0;e<i.count;e++){o.fromBufferAttribute(i,e),!0===i.normalized&&kA(o,i);const n=e*_;d[r+n+0]=o.x,d[r+n+1]=o.y,d[r+n+2]=o.z,d[r+n+3]=0,!0===t&&(o.fromBufferAttribute(s,e),!0===s.normalized&&kA(o,s),d[r+n+4]=o.x,d[r+n+5]=o.y,d[r+n+6]=o.z,d[r+n+7]=0)}}s={count:i,texture:p,size:new _b(h,u)},r.set(c,s)}let a=0;for(let t=0;t<d.length;t++)a+=d[t];const l=c.morphTargetsRelative?1:1-a;u.getUniforms().setValue(t,\\\\\\\"morphTargetBaseInfluence\\\\\\\",l),u.getUniforms().setValue(t,\\\\\\\"morphTargetInfluences\\\\\\\",d),u.getUniforms().setValue(t,\\\\\\\"morphTargetsTexture\\\\\\\",s.texture,n),u.getUniforms().setValue(t,\\\\\\\"morphTargetsTextureSize\\\\\\\",s.size)}else{const e=void 0===d?0:d.length;let n=i[c.id];if(void 0===n||n.length!==e){n=[];for(let t=0;t<e;t++)n[t]=[t,0];i[c.id]=n}for(let t=0;t<e;t++){const e=n[t];e[0]=t,e[1]=d[t]}n.sort(zA);for(let t=0;t<8;t++)t<e&&n[t][1]?(a[t][0]=n[t][0],a[t][1]=n[t][1]):(a[t][0]=Number.MAX_SAFE_INTEGER,a[t][1]=0);a.sort(BA);const r=c.morphAttributes.position,o=c.morphAttributes.normal;let l=0;for(let t=0;t<8;t++){const e=a[t],n=e[0],i=e[1];n!==Number.MAX_SAFE_INTEGER&&i?(r&&c.getAttribute(\\\\\\\"morphTarget\\\\\\\"+t)!==r[n]&&c.setAttribute(\\\\\\\"morphTarget\\\\\\\"+t,r[n]),o&&c.getAttribute(\\\\\\\"morphNormal\\\\\\\"+t)!==o[n]&&c.setAttribute(\\\\\\\"morphNormal\\\\\\\"+t,o[n]),s[t]=i,l+=i):(r&&!0===c.hasAttribute(\\\\\\\"morphTarget\\\\\\\"+t)&&c.deleteAttribute(\\\\\\\"morphTarget\\\\\\\"+t),o&&!0===c.hasAttribute(\\\\\\\"morphNormal\\\\\\\"+t)&&c.deleteAttribute(\\\\\\\"morphNormal\\\\\\\"+t),s[t]=0)}const h=c.morphTargetsRelative?1:1-l;u.getUniforms().setValue(t,\\\\\\\"morphTargetBaseInfluence\\\\\\\",h),u.getUniforms().setValue(t,\\\\\\\"morphTargetInfluences\\\\\\\",s)}}}}function GA(t,e,n,i){let s=new WeakMap;function r(t){const e=t.target;e.removeEventListener(\\\\\\\"dispose\\\\\\\",r),n.remove(e.instanceMatrix),null!==e.instanceColor&&n.remove(e.instanceColor)}return{update:function(t){const o=i.render.frame,a=t.geometry,l=e.get(t,a);return s.get(l)!==o&&(e.update(l),s.set(l,o)),t.isInstancedMesh&&(!1===t.hasEventListener(\\\\\\\"dispose\\\\\\\",r)&&t.addEventListener(\\\\\\\"dispose\\\\\\\",r),n.update(t.instanceMatrix,34962),null!==t.instanceColor&&n.update(t.instanceColor,34962)),l},dispose:function(){s=new WeakMap}}}DA.prototype.isDataTexture2DArray=!0;class VA extends bb{constructor(t=null,e=1,n=1,i=1){super(null),this.image={data:t,width:e,height:n,depth:i},this.magFilter=Tx,this.minFilter=Tx,this.wrapR=bx,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1,this.needsUpdate=!0}}VA.prototype.isDataTexture3D=!0;const HA=new bb,jA=new DA,WA=new VA,qA=new kT,XA=[],YA=[],$A=new Float32Array(16),JA=new Float32Array(9),ZA=new Float32Array(4);function KA(t,e,n){const i=t[0];if(i<=0||i>0)return t;const s=e*n;let r=XA[s];if(void 0===r&&(r=new Float32Array(s),XA[s]=r),0!==e){i.toArray(r,0);for(let i=1,s=0;i!==e;++i)s+=n,t[i].toArray(r,s)}return r}function QA(t,e){if(t.length!==e.length)return!1;for(let n=0,i=t.length;n<i;n++)if(t[n]!==e[n])return!1;return!0}function tM(t,e){for(let n=0,i=e.length;n<i;n++)t[n]=e[n]}function eM(t,e){let n=YA[e];void 0===n&&(n=new Int32Array(e),YA[e]=n);for(let i=0;i!==e;++i)n[i]=t.allocateTextureUnit();return n}function nM(t,e){const n=this.cache;n[0]!==e&&(t.uniform1f(this.addr,e),n[0]=e)}function iM(t,e){const n=this.cache;if(void 0!==e.x)n[0]===e.x&&n[1]===e.y||(t.uniform2f(this.addr,e.x,e.y),n[0]=e.x,n[1]=e.y);else{if(QA(n,e))return;t.uniform2fv(this.addr,e),tM(n,e)}}function sM(t,e){const n=this.cache;if(void 0!==e.x)n[0]===e.x&&n[1]===e.y&&n[2]===e.z||(t.uniform3f(this.addr,e.x,e.y,e.z),n[0]=e.x,n[1]=e.y,n[2]=e.z);else if(void 0!==e.r)n[0]===e.r&&n[1]===e.g&&n[2]===e.b||(t.uniform3f(this.addr,e.r,e.g,e.b),n[0]=e.r,n[1]=e.g,n[2]=e.b);else{if(QA(n,e))return;t.uniform3fv(this.addr,e),tM(n,e)}}function rM(t,e){const n=this.cache;if(void 0!==e.x)n[0]===e.x&&n[1]===e.y&&n[2]===e.z&&n[3]===e.w||(t.uniform4f(this.addr,e.x,e.y,e.z,e.w),n[0]=e.x,n[1]=e.y,n[2]=e.z,n[3]=e.w);else{if(QA(n,e))return;t.uniform4fv(this.addr,e),tM(n,e)}}function oM(t,e){const n=this.cache,i=e.elements;if(void 0===i){if(QA(n,e))return;t.uniformMatrix2fv(this.addr,!1,e),tM(n,e)}else{if(QA(n,i))return;ZA.set(i),t.uniformMatrix2fv(this.addr,!1,ZA),tM(n,i)}}function aM(t,e){const n=this.cache,i=e.elements;if(void 0===i){if(QA(n,e))return;t.uniformMatrix3fv(this.addr,!1,e),tM(n,e)}else{if(QA(n,i))return;JA.set(i),t.uniformMatrix3fv(this.addr,!1,JA),tM(n,i)}}function lM(t,e){const n=this.cache,i=e.elements;if(void 0===i){if(QA(n,e))return;t.uniformMatrix4fv(this.addr,!1,e),tM(n,e)}else{if(QA(n,i))return;$A.set(i),t.uniformMatrix4fv(this.addr,!1,$A),tM(n,i)}}function cM(t,e){const n=this.cache;n[0]!==e&&(t.uniform1i(this.addr,e),n[0]=e)}function hM(t,e){const n=this.cache;QA(n,e)||(t.uniform2iv(this.addr,e),tM(n,e))}function uM(t,e){const n=this.cache;QA(n,e)||(t.uniform3iv(this.addr,e),tM(n,e))}function dM(t,e){const n=this.cache;QA(n,e)||(t.uniform4iv(this.addr,e),tM(n,e))}function pM(t,e){const n=this.cache;n[0]!==e&&(t.uniform1ui(this.addr,e),n[0]=e)}function _M(t,e){const n=this.cache;QA(n,e)||(t.uniform2uiv(this.addr,e),tM(n,e))}function mM(t,e){const n=this.cache;QA(n,e)||(t.uniform3uiv(this.addr,e),tM(n,e))}function fM(t,e){const n=this.cache;QA(n,e)||(t.uniform4uiv(this.addr,e),tM(n,e))}function gM(t,e,n){const i=this.cache,s=n.allocateTextureUnit();i[0]!==s&&(t.uniform1i(this.addr,s),i[0]=s),n.safeSetTexture2D(e||HA,s)}function vM(t,e,n){const i=this.cache,s=n.allocateTextureUnit();i[0]!==s&&(t.uniform1i(this.addr,s),i[0]=s),n.setTexture3D(e||WA,s)}function yM(t,e,n){const i=this.cache,s=n.allocateTextureUnit();i[0]!==s&&(t.uniform1i(this.addr,s),i[0]=s),n.safeSetTextureCube(e||qA,s)}function xM(t,e,n){const i=this.cache,s=n.allocateTextureUnit();i[0]!==s&&(t.uniform1i(this.addr,s),i[0]=s),n.setTexture2DArray(e||jA,s)}function bM(t,e){t.uniform1fv(this.addr,e)}function wM(t,e){const n=KA(e,this.size,2);t.uniform2fv(this.addr,n)}function TM(t,e){const n=KA(e,this.size,3);t.uniform3fv(this.addr,n)}function AM(t,e){const n=KA(e,this.size,4);t.uniform4fv(this.addr,n)}function MM(t,e){const n=KA(e,this.size,4);t.uniformMatrix2fv(this.addr,!1,n)}function EM(t,e){const n=KA(e,this.size,9);t.uniformMatrix3fv(this.addr,!1,n)}function SM(t,e){const n=KA(e,this.size,16);t.uniformMatrix4fv(this.addr,!1,n)}function CM(t,e){t.uniform1iv(this.addr,e)}function NM(t,e){t.uniform2iv(this.addr,e)}function LM(t,e){t.uniform3iv(this.addr,e)}function OM(t,e){t.uniform4iv(this.addr,e)}function PM(t,e){t.uniform1uiv(this.addr,e)}function RM(t,e){t.uniform2uiv(this.addr,e)}function IM(t,e){t.uniform3uiv(this.addr,e)}function FM(t,e){t.uniform4uiv(this.addr,e)}function DM(t,e,n){const i=e.length,s=eM(n,i);t.uniform1iv(this.addr,s);for(let t=0;t!==i;++t)n.safeSetTexture2D(e[t]||HA,s[t])}function BM(t,e,n){const i=e.length,s=eM(n,i);t.uniform1iv(this.addr,s);for(let t=0;t!==i;++t)n.safeSetTextureCube(e[t]||qA,s[t])}function zM(t,e,n){this.id=t,this.addr=n,this.cache=[],this.setValue=function(t){switch(t){case 5126:return nM;case 35664:return iM;case 35665:return sM;case 35666:return rM;case 35674:return oM;case 35675:return aM;case 35676:return lM;case 5124:case 35670:return cM;case 35667:case 35671:return hM;case 35668:case 35672:return uM;case 35669:case 35673:return dM;case 5125:return pM;case 36294:return _M;case 36295:return mM;case 36296:return fM;case 35678:case 36198:case 36298:case 36306:case 35682:return gM;case 35679:case 36299:case 36307:return vM;case 35680:case 36300:case 36308:case 36293:return yM;case 36289:case 36303:case 36311:case 36292:return xM}}(e.type)}function kM(t,e,n){this.id=t,this.addr=n,this.cache=[],this.size=e.size,this.setValue=function(t){switch(t){case 5126:return bM;case 35664:return wM;case 35665:return TM;case 35666:return AM;case 35674:return MM;case 35675:return EM;case 35676:return SM;case 5124:case 35670:return CM;case 35667:case 35671:return NM;case 35668:case 35672:return LM;case 35669:case 35673:return OM;case 5125:return PM;case 36294:return RM;case 36295:return IM;case 36296:return FM;case 35678:case 36198:case 36298:case 36306:case 35682:return DM;case 35680:case 36300:case 36308:case 36293:return BM}}(e.type)}function UM(t){this.id=t,this.seq=[],this.map={}}kM.prototype.updateCache=function(t){const e=this.cache;t instanceof Float32Array&&e.length!==t.length&&(this.cache=new Float32Array(t.length)),tM(e,t)},UM.prototype.setValue=function(t,e,n){const i=this.seq;for(let s=0,r=i.length;s!==r;++s){const r=i[s];r.setValue(t,e[r.id],n)}};const GM=/(\\\\w+)(\\\\])?(\\\\[|\\\\.)?/g;function VM(t,e){t.seq.push(e),t.map[e.id]=e}function HM(t,e,n){const i=t.name,s=i.length;for(GM.lastIndex=0;;){const r=GM.exec(i),o=GM.lastIndex;let a=r[1];const l=\\\\\\\"]\\\\\\\"===r[2],c=r[3];if(l&&(a|=0),void 0===c||\\\\\\\"[\\\\\\\"===c&&o+2===s){VM(n,void 0===c?new zM(a,t,e):new kM(a,t,e));break}{let t=n.map[a];void 0===t&&(t=new UM(a),VM(n,t)),n=t}}}function jM(t,e){this.seq=[],this.map={};const n=t.getProgramParameter(e,35718);for(let i=0;i<n;++i){const n=t.getActiveUniform(e,i);HM(n,t.getUniformLocation(e,n.name),this)}}function WM(t,e,n){const i=t.createShader(e);return t.shaderSource(i,n),t.compileShader(i),i}jM.prototype.setValue=function(t,e,n,i){const s=this.map[e];void 0!==s&&s.setValue(t,n,i)},jM.prototype.setOptional=function(t,e,n){const i=e[n];void 0!==i&&this.setValue(t,n,i)},jM.upload=function(t,e,n,i){for(let s=0,r=e.length;s!==r;++s){const r=e[s],o=n[r.id];!1!==o.needsUpdate&&r.setValue(t,o.value,i)}},jM.seqWithValue=function(t,e){const n=[];for(let i=0,s=t.length;i!==s;++i){const s=t[i];s.id in e&&n.push(s)}return n};let qM=0;function XM(t){switch(t){case qx:return[\\\\\\\"Linear\\\\\\\",\\\\\\\"( value )\\\\\\\"];case Xx:return[\\\\\\\"sRGB\\\\\\\",\\\\\\\"( value )\\\\\\\"];case $x:return[\\\\\\\"RGBE\\\\\\\",\\\\\\\"( value )\\\\\\\"];case 3004:return[\\\\\\\"RGBM\\\\\\\",\\\\\\\"( value, 7.0 )\\\\\\\"];case 3005:return[\\\\\\\"RGBM\\\\\\\",\\\\\\\"( value, 16.0 )\\\\\\\"];case 3006:return[\\\\\\\"RGBD\\\\\\\",\\\\\\\"( value, 256.0 )\\\\\\\"];case Yx:return[\\\\\\\"Gamma\\\\\\\",\\\\\\\"( value, float( GAMMA_FACTOR ) )\\\\\\\"];case 3003:return[\\\\\\\"LogLuv\\\\\\\",\\\\\\\"( value )\\\\\\\"];default:return console.warn(\\\\\\\"THREE.WebGLProgram: Unsupported encoding:\\\\\\\",t),[\\\\\\\"Linear\\\\\\\",\\\\\\\"( value )\\\\\\\"]}}function YM(t,e,n){const i=t.getShaderParameter(e,35713),s=t.getShaderInfoLog(e).trim();return i&&\\\\\\\"\\\\\\\"===s?\\\\\\\"\\\\\\\":n.toUpperCase()+\\\\\\\"\\\\n\\\\n\\\\\\\"+s+\\\\\\\"\\\\n\\\\n\\\\\\\"+function(t){const e=t.split(\\\\\\\"\\\\n\\\\\\\");for(let t=0;t<e.length;t++)e[t]=t+1+\\\\\\\": \\\\\\\"+e[t];return e.join(\\\\\\\"\\\\n\\\\\\\")}(t.getShaderSource(e))}function $M(t,e){const n=XM(e);return\\\\\\\"vec4 \\\\\\\"+t+\\\\\\\"( vec4 value ) { return \\\\\\\"+n[0]+\\\\\\\"ToLinear\\\\\\\"+n[1]+\\\\\\\"; }\\\\\\\"}function JM(t,e){const n=XM(e);return\\\\\\\"vec4 \\\\\\\"+t+\\\\\\\"( vec4 value ) { return LinearTo\\\\\\\"+n[0]+n[1]+\\\\\\\"; }\\\\\\\"}function ZM(t,e){let n;switch(e){case 1:n=\\\\\\\"Linear\\\\\\\";break;case 2:n=\\\\\\\"Reinhard\\\\\\\";break;case 3:n=\\\\\\\"OptimizedCineon\\\\\\\";break;case 4:n=\\\\\\\"ACESFilmic\\\\\\\";break;case 5:n=\\\\\\\"Custom\\\\\\\";break;default:console.warn(\\\\\\\"THREE.WebGLProgram: Unsupported toneMapping:\\\\\\\",e),n=\\\\\\\"Linear\\\\\\\"}return\\\\\\\"vec3 \\\\\\\"+t+\\\\\\\"( vec3 color ) { return \\\\\\\"+n+\\\\\\\"ToneMapping( color ); }\\\\\\\"}function KM(t){return\\\\\\\"\\\\\\\"!==t}function QM(t,e){return t.replace(/NUM_DIR_LIGHTS/g,e.numDirLights).replace(/NUM_SPOT_LIGHTS/g,e.numSpotLights).replace(/NUM_RECT_AREA_LIGHTS/g,e.numRectAreaLights).replace(/NUM_POINT_LIGHTS/g,e.numPointLights).replace(/NUM_HEMI_LIGHTS/g,e.numHemiLights).replace(/NUM_DIR_LIGHT_SHADOWS/g,e.numDirLightShadows).replace(/NUM_SPOT_LIGHT_SHADOWS/g,e.numSpotLightShadows).replace(/NUM_POINT_LIGHT_SHADOWS/g,e.numPointLightShadows)}function tE(t,e){return t.replace(/NUM_CLIPPING_PLANES/g,e.numClippingPlanes).replace(/UNION_CLIPPING_PLANES/g,e.numClippingPlanes-e.numClipIntersection)}const eE=/^[ \\\\t]*#include +<([\\\\w\\\\d./]+)>/gm;function nE(t){return t.replace(eE,iE)}function iE(t,e){const n=ZT[e];if(void 0===n)throw new Error(\\\\\\\"Can not resolve #include <\\\\\\\"+e+\\\\\\\">\\\\\\\");return nE(n)}const sE=/#pragma unroll_loop[\\\\s]+?for \\\\( int i \\\\= (\\\\d+)\\\\; i < (\\\\d+)\\\\; i \\\\+\\\\+ \\\\) \\\\{([\\\\s\\\\S]+?)(?=\\\\})\\\\}/g,rE=/#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 oE(t){return t.replace(rE,lE).replace(sE,aE)}function aE(t,e,n,i){return console.warn(\\\\\\\"WebGLProgram: #pragma unroll_loop shader syntax is deprecated. Please use #pragma unroll_loop_start syntax instead.\\\\\\\"),lE(t,e,n,i)}function lE(t,e,n,i){let s=\\\\\\\"\\\\\\\";for(let t=parseInt(e);t<parseInt(n);t++)s+=i.replace(/\\\\[\\\\s*i\\\\s*\\\\]/g,\\\\\\\"[ \\\\\\\"+t+\\\\\\\" ]\\\\\\\").replace(/UNROLLED_LOOP_INDEX/g,t);return s}function cE(t){let e=\\\\\\\"precision \\\\\\\"+t.precision+\\\\\\\" float;\\\\nprecision \\\\\\\"+t.precision+\\\\\\\" int;\\\\\\\";return\\\\\\\"highp\\\\\\\"===t.precision?e+=\\\\\\\"\\\\n#define HIGH_PRECISION\\\\\\\":\\\\\\\"mediump\\\\\\\"===t.precision?e+=\\\\\\\"\\\\n#define MEDIUM_PRECISION\\\\\\\":\\\\\\\"lowp\\\\\\\"===t.precision&&(e+=\\\\\\\"\\\\n#define LOW_PRECISION\\\\\\\"),e}function hE(t,e,n,i){const s=t.getContext(),r=n.defines;let o=n.vertexShader,a=n.fragmentShader;const l=function(t){let e=\\\\\\\"SHADOWMAP_TYPE_BASIC\\\\\\\";return 1===t.shadowMapType?e=\\\\\\\"SHADOWMAP_TYPE_PCF\\\\\\\":2===t.shadowMapType?e=\\\\\\\"SHADOWMAP_TYPE_PCF_SOFT\\\\\\\":3===t.shadowMapType&&(e=\\\\\\\"SHADOWMAP_TYPE_VSM\\\\\\\"),e}(n),c=function(t){let e=\\\\\\\"ENVMAP_TYPE_CUBE\\\\\\\";if(t.envMap)switch(t.envMapMode){case _x:case mx:e=\\\\\\\"ENVMAP_TYPE_CUBE\\\\\\\";break;case vx:case yx:e=\\\\\\\"ENVMAP_TYPE_CUBE_UV\\\\\\\"}return e}(n),h=function(t){let e=\\\\\\\"ENVMAP_MODE_REFLECTION\\\\\\\";if(t.envMap)switch(t.envMapMode){case mx:case yx:e=\\\\\\\"ENVMAP_MODE_REFRACTION\\\\\\\"}return e}(n),u=function(t){let e=\\\\\\\"ENVMAP_BLENDING_NONE\\\\\\\";if(t.envMap)switch(t.combine){case 0:e=\\\\\\\"ENVMAP_BLENDING_MULTIPLY\\\\\\\";break;case 1:e=\\\\\\\"ENVMAP_BLENDING_MIX\\\\\\\";break;case 2:e=\\\\\\\"ENVMAP_BLENDING_ADD\\\\\\\"}return e}(n),d=t.gammaFactor>0?t.gammaFactor:1,p=n.isWebGL2?\\\\\\\"\\\\\\\":function(t){return[t.extensionDerivatives||t.envMapCubeUV||t.bumpMap||t.tangentSpaceNormalMap||t.clearcoatNormalMap||t.flatShading||\\\\\\\"physical\\\\\\\"===t.shaderID?\\\\\\\"#extension GL_OES_standard_derivatives : enable\\\\\\\":\\\\\\\"\\\\\\\",(t.extensionFragDepth||t.logarithmicDepthBuffer)&&t.rendererExtensionFragDepth?\\\\\\\"#extension GL_EXT_frag_depth : enable\\\\\\\":\\\\\\\"\\\\\\\",t.extensionDrawBuffers&&t.rendererExtensionDrawBuffers?\\\\\\\"#extension GL_EXT_draw_buffers : require\\\\\\\":\\\\\\\"\\\\\\\",(t.extensionShaderTextureLOD||t.envMap||t.transmission)&&t.rendererExtensionShaderTextureLod?\\\\\\\"#extension GL_EXT_shader_texture_lod : enable\\\\\\\":\\\\\\\"\\\\\\\"].filter(KM).join(\\\\\\\"\\\\n\\\\\\\")}(n),_=function(t){const e=[];for(const n in t){const i=t[n];!1!==i&&e.push(\\\\\\\"#define \\\\\\\"+n+\\\\\\\" \\\\\\\"+i)}return e.join(\\\\\\\"\\\\n\\\\\\\")}(r),m=s.createProgram();let f,g,v=n.glslVersion?\\\\\\\"#version \\\\\\\"+n.glslVersion+\\\\\\\"\\\\n\\\\\\\":\\\\\\\"\\\\\\\";n.isRawShaderMaterial?(f=[_].filter(KM).join(\\\\\\\"\\\\n\\\\\\\"),f.length>0&&(f+=\\\\\\\"\\\\n\\\\\\\"),g=[p,_].filter(KM).join(\\\\\\\"\\\\n\\\\\\\"),g.length>0&&(g+=\\\\\\\"\\\\n\\\\\\\")):(f=[cE(n),\\\\\\\"#define SHADER_NAME \\\\\\\"+n.shaderName,_,n.instancing?\\\\\\\"#define USE_INSTANCING\\\\\\\":\\\\\\\"\\\\\\\",n.instancingColor?\\\\\\\"#define USE_INSTANCING_COLOR\\\\\\\":\\\\\\\"\\\\\\\",n.supportsVertexTextures?\\\\\\\"#define VERTEX_TEXTURES\\\\\\\":\\\\\\\"\\\\\\\",\\\\\\\"#define GAMMA_FACTOR \\\\\\\"+d,\\\\\\\"#define MAX_BONES \\\\\\\"+n.maxBones,n.useFog&&n.fog?\\\\\\\"#define USE_FOG\\\\\\\":\\\\\\\"\\\\\\\",n.useFog&&n.fogExp2?\\\\\\\"#define FOG_EXP2\\\\\\\":\\\\\\\"\\\\\\\",n.map?\\\\\\\"#define USE_MAP\\\\\\\":\\\\\\\"\\\\\\\",n.envMap?\\\\\\\"#define USE_ENVMAP\\\\\\\":\\\\\\\"\\\\\\\",n.envMap?\\\\\\\"#define \\\\\\\"+h:\\\\\\\"\\\\\\\",n.lightMap?\\\\\\\"#define USE_LIGHTMAP\\\\\\\":\\\\\\\"\\\\\\\",n.aoMap?\\\\\\\"#define USE_AOMAP\\\\\\\":\\\\\\\"\\\\\\\",n.emissiveMap?\\\\\\\"#define USE_EMISSIVEMAP\\\\\\\":\\\\\\\"\\\\\\\",n.bumpMap?\\\\\\\"#define USE_BUMPMAP\\\\\\\":\\\\\\\"\\\\\\\",n.normalMap?\\\\\\\"#define USE_NORMALMAP\\\\\\\":\\\\\\\"\\\\\\\",n.normalMap&&n.objectSpaceNormalMap?\\\\\\\"#define OBJECTSPACE_NORMALMAP\\\\\\\":\\\\\\\"\\\\\\\",n.normalMap&&n.tangentSpaceNormalMap?\\\\\\\"#define TANGENTSPACE_NORMALMAP\\\\\\\":\\\\\\\"\\\\\\\",n.clearcoatMap?\\\\\\\"#define USE_CLEARCOATMAP\\\\\\\":\\\\\\\"\\\\\\\",n.clearcoatRoughnessMap?\\\\\\\"#define USE_CLEARCOAT_ROUGHNESSMAP\\\\\\\":\\\\\\\"\\\\\\\",n.clearcoatNormalMap?\\\\\\\"#define USE_CLEARCOAT_NORMALMAP\\\\\\\":\\\\\\\"\\\\\\\",n.displacementMap&&n.supportsVertexTextures?\\\\\\\"#define USE_DISPLACEMENTMAP\\\\\\\":\\\\\\\"\\\\\\\",n.specularMap?\\\\\\\"#define USE_SPECULARMAP\\\\\\\":\\\\\\\"\\\\\\\",n.specularIntensityMap?\\\\\\\"#define USE_SPECULARINTENSITYMAP\\\\\\\":\\\\\\\"\\\\\\\",n.specularTintMap?\\\\\\\"#define USE_SPECULARTINTMAP\\\\\\\":\\\\\\\"\\\\\\\",n.roughnessMap?\\\\\\\"#define USE_ROUGHNESSMAP\\\\\\\":\\\\\\\"\\\\\\\",n.metalnessMap?\\\\\\\"#define USE_METALNESSMAP\\\\\\\":\\\\\\\"\\\\\\\",n.alphaMap?\\\\\\\"#define USE_ALPHAMAP\\\\\\\":\\\\\\\"\\\\\\\",n.transmission?\\\\\\\"#define USE_TRANSMISSION\\\\\\\":\\\\\\\"\\\\\\\",n.transmissionMap?\\\\\\\"#define USE_TRANSMISSIONMAP\\\\\\\":\\\\\\\"\\\\\\\",n.thicknessMap?\\\\\\\"#define USE_THICKNESSMAP\\\\\\\":\\\\\\\"\\\\\\\",n.vertexTangents?\\\\\\\"#define USE_TANGENT\\\\\\\":\\\\\\\"\\\\\\\",n.vertexColors?\\\\\\\"#define USE_COLOR\\\\\\\":\\\\\\\"\\\\\\\",n.vertexAlphas?\\\\\\\"#define USE_COLOR_ALPHA\\\\\\\":\\\\\\\"\\\\\\\",n.vertexUvs?\\\\\\\"#define USE_UV\\\\\\\":\\\\\\\"\\\\\\\",n.uvsVertexOnly?\\\\\\\"#define UVS_VERTEX_ONLY\\\\\\\":\\\\\\\"\\\\\\\",n.flatShading?\\\\\\\"#define FLAT_SHADED\\\\\\\":\\\\\\\"\\\\\\\",n.skinning?\\\\\\\"#define USE_SKINNING\\\\\\\":\\\\\\\"\\\\\\\",n.useVertexTexture?\\\\\\\"#define BONE_TEXTURE\\\\\\\":\\\\\\\"\\\\\\\",n.morphTargets?\\\\\\\"#define USE_MORPHTARGETS\\\\\\\":\\\\\\\"\\\\\\\",n.morphNormals&&!1===n.flatShading?\\\\\\\"#define USE_MORPHNORMALS\\\\\\\":\\\\\\\"\\\\\\\",n.morphTargets&&n.isWebGL2?\\\\\\\"#define MORPHTARGETS_TEXTURE\\\\\\\":\\\\\\\"\\\\\\\",n.morphTargets&&n.isWebGL2?\\\\\\\"#define MORPHTARGETS_COUNT \\\\\\\"+n.morphTargetsCount:\\\\\\\"\\\\\\\",n.doubleSided?\\\\\\\"#define DOUBLE_SIDED\\\\\\\":\\\\\\\"\\\\\\\",n.flipSided?\\\\\\\"#define FLIP_SIDED\\\\\\\":\\\\\\\"\\\\\\\",n.shadowMapEnabled?\\\\\\\"#define USE_SHADOWMAP\\\\\\\":\\\\\\\"\\\\\\\",n.shadowMapEnabled?\\\\\\\"#define \\\\\\\"+l:\\\\\\\"\\\\\\\",n.sizeAttenuation?\\\\\\\"#define USE_SIZEATTENUATION\\\\\\\":\\\\\\\"\\\\\\\",n.logarithmicDepthBuffer?\\\\\\\"#define USE_LOGDEPTHBUF\\\\\\\":\\\\\\\"\\\\\\\",n.logarithmicDepthBuffer&&n.rendererExtensionFragDepth?\\\\\\\"#define USE_LOGDEPTHBUF_EXT\\\\\\\":\\\\\\\"\\\\\\\",\\\\\\\"uniform mat4 modelMatrix;\\\\\\\",\\\\\\\"uniform mat4 modelViewMatrix;\\\\\\\",\\\\\\\"uniform mat4 projectionMatrix;\\\\\\\",\\\\\\\"uniform mat4 viewMatrix;\\\\\\\",\\\\\\\"uniform mat3 normalMatrix;\\\\\\\",\\\\\\\"uniform vec3 cameraPosition;\\\\\\\",\\\\\\\"uniform bool isOrthographic;\\\\\\\",\\\\\\\"#ifdef USE_INSTANCING\\\\\\\",\\\\\\\"\\\\tattribute mat4 instanceMatrix;\\\\\\\",\\\\\\\"#endif\\\\\\\",\\\\\\\"#ifdef USE_INSTANCING_COLOR\\\\\\\",\\\\\\\"\\\\tattribute vec3 instanceColor;\\\\\\\",\\\\\\\"#endif\\\\\\\",\\\\\\\"attribute vec3 position;\\\\\\\",\\\\\\\"attribute vec3 normal;\\\\\\\",\\\\\\\"attribute vec2 uv;\\\\\\\",\\\\\\\"#ifdef USE_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(KM).join(\\\\\\\"\\\\n\\\\\\\"),g=[p,cE(n),\\\\\\\"#define SHADER_NAME \\\\\\\"+n.shaderName,_,\\\\\\\"#define GAMMA_FACTOR \\\\\\\"+d,n.useFog&&n.fog?\\\\\\\"#define USE_FOG\\\\\\\":\\\\\\\"\\\\\\\",n.useFog&&n.fogExp2?\\\\\\\"#define FOG_EXP2\\\\\\\":\\\\\\\"\\\\\\\",n.map?\\\\\\\"#define USE_MAP\\\\\\\":\\\\\\\"\\\\\\\",n.matcap?\\\\\\\"#define USE_MATCAP\\\\\\\":\\\\\\\"\\\\\\\",n.envMap?\\\\\\\"#define USE_ENVMAP\\\\\\\":\\\\\\\"\\\\\\\",n.envMap?\\\\\\\"#define \\\\\\\"+c:\\\\\\\"\\\\\\\",n.envMap?\\\\\\\"#define \\\\\\\"+h:\\\\\\\"\\\\\\\",n.envMap?\\\\\\\"#define \\\\\\\"+u:\\\\\\\"\\\\\\\",n.lightMap?\\\\\\\"#define USE_LIGHTMAP\\\\\\\":\\\\\\\"\\\\\\\",n.aoMap?\\\\\\\"#define USE_AOMAP\\\\\\\":\\\\\\\"\\\\\\\",n.emissiveMap?\\\\\\\"#define USE_EMISSIVEMAP\\\\\\\":\\\\\\\"\\\\\\\",n.bumpMap?\\\\\\\"#define USE_BUMPMAP\\\\\\\":\\\\\\\"\\\\\\\",n.normalMap?\\\\\\\"#define USE_NORMALMAP\\\\\\\":\\\\\\\"\\\\\\\",n.normalMap&&n.objectSpaceNormalMap?\\\\\\\"#define OBJECTSPACE_NORMALMAP\\\\\\\":\\\\\\\"\\\\\\\",n.normalMap&&n.tangentSpaceNormalMap?\\\\\\\"#define TANGENTSPACE_NORMALMAP\\\\\\\":\\\\\\\"\\\\\\\",n.clearcoat?\\\\\\\"#define USE_CLEARCOAT\\\\\\\":\\\\\\\"\\\\\\\",n.clearcoatMap?\\\\\\\"#define USE_CLEARCOATMAP\\\\\\\":\\\\\\\"\\\\\\\",n.clearcoatRoughnessMap?\\\\\\\"#define USE_CLEARCOAT_ROUGHNESSMAP\\\\\\\":\\\\\\\"\\\\\\\",n.clearcoatNormalMap?\\\\\\\"#define USE_CLEARCOAT_NORMALMAP\\\\\\\":\\\\\\\"\\\\\\\",n.specularMap?\\\\\\\"#define USE_SPECULARMAP\\\\\\\":\\\\\\\"\\\\\\\",n.specularIntensityMap?\\\\\\\"#define USE_SPECULARINTENSITYMAP\\\\\\\":\\\\\\\"\\\\\\\",n.specularTintMap?\\\\\\\"#define USE_SPECULARTINTMAP\\\\\\\":\\\\\\\"\\\\\\\",n.roughnessMap?\\\\\\\"#define USE_ROUGHNESSMAP\\\\\\\":\\\\\\\"\\\\\\\",n.metalnessMap?\\\\\\\"#define USE_METALNESSMAP\\\\\\\":\\\\\\\"\\\\\\\",n.alphaMap?\\\\\\\"#define USE_ALPHAMAP\\\\\\\":\\\\\\\"\\\\\\\",n.alphaTest?\\\\\\\"#define USE_ALPHATEST\\\\\\\":\\\\\\\"\\\\\\\",n.sheen?\\\\\\\"#define USE_SHEEN\\\\\\\":\\\\\\\"\\\\\\\",n.transmission?\\\\\\\"#define USE_TRANSMISSION\\\\\\\":\\\\\\\"\\\\\\\",n.transmissionMap?\\\\\\\"#define USE_TRANSMISSIONMAP\\\\\\\":\\\\\\\"\\\\\\\",n.thicknessMap?\\\\\\\"#define USE_THICKNESSMAP\\\\\\\":\\\\\\\"\\\\\\\",n.vertexTangents?\\\\\\\"#define USE_TANGENT\\\\\\\":\\\\\\\"\\\\\\\",n.vertexColors||n.instancingColor?\\\\\\\"#define USE_COLOR\\\\\\\":\\\\\\\"\\\\\\\",n.vertexAlphas?\\\\\\\"#define USE_COLOR_ALPHA\\\\\\\":\\\\\\\"\\\\\\\",n.vertexUvs?\\\\\\\"#define USE_UV\\\\\\\":\\\\\\\"\\\\\\\",n.uvsVertexOnly?\\\\\\\"#define UVS_VERTEX_ONLY\\\\\\\":\\\\\\\"\\\\\\\",n.gradientMap?\\\\\\\"#define USE_GRADIENTMAP\\\\\\\":\\\\\\\"\\\\\\\",n.flatShading?\\\\\\\"#define FLAT_SHADED\\\\\\\":\\\\\\\"\\\\\\\",n.doubleSided?\\\\\\\"#define DOUBLE_SIDED\\\\\\\":\\\\\\\"\\\\\\\",n.flipSided?\\\\\\\"#define FLIP_SIDED\\\\\\\":\\\\\\\"\\\\\\\",n.shadowMapEnabled?\\\\\\\"#define USE_SHADOWMAP\\\\\\\":\\\\\\\"\\\\\\\",n.shadowMapEnabled?\\\\\\\"#define \\\\\\\"+l:\\\\\\\"\\\\\\\",n.premultipliedAlpha?\\\\\\\"#define PREMULTIPLIED_ALPHA\\\\\\\":\\\\\\\"\\\\\\\",n.physicallyCorrectLights?\\\\\\\"#define PHYSICALLY_CORRECT_LIGHTS\\\\\\\":\\\\\\\"\\\\\\\",n.logarithmicDepthBuffer?\\\\\\\"#define USE_LOGDEPTHBUF\\\\\\\":\\\\\\\"\\\\\\\",n.logarithmicDepthBuffer&&n.rendererExtensionFragDepth?\\\\\\\"#define USE_LOGDEPTHBUF_EXT\\\\\\\":\\\\\\\"\\\\\\\",(n.extensionShaderTextureLOD||n.envMap)&&n.rendererExtensionShaderTextureLod?\\\\\\\"#define TEXTURE_LOD_EXT\\\\\\\":\\\\\\\"\\\\\\\",\\\\\\\"uniform mat4 viewMatrix;\\\\\\\",\\\\\\\"uniform vec3 cameraPosition;\\\\\\\",\\\\\\\"uniform bool isOrthographic;\\\\\\\",0!==n.toneMapping?\\\\\\\"#define TONE_MAPPING\\\\\\\":\\\\\\\"\\\\\\\",0!==n.toneMapping?ZT.tonemapping_pars_fragment:\\\\\\\"\\\\\\\",0!==n.toneMapping?ZM(\\\\\\\"toneMapping\\\\\\\",n.toneMapping):\\\\\\\"\\\\\\\",n.dithering?\\\\\\\"#define DITHERING\\\\\\\":\\\\\\\"\\\\\\\",n.format===Fx?\\\\\\\"#define OPAQUE\\\\\\\":\\\\\\\"\\\\\\\",ZT.encodings_pars_fragment,n.map?$M(\\\\\\\"mapTexelToLinear\\\\\\\",n.mapEncoding):\\\\\\\"\\\\\\\",n.matcap?$M(\\\\\\\"matcapTexelToLinear\\\\\\\",n.matcapEncoding):\\\\\\\"\\\\\\\",n.envMap?$M(\\\\\\\"envMapTexelToLinear\\\\\\\",n.envMapEncoding):\\\\\\\"\\\\\\\",n.emissiveMap?$M(\\\\\\\"emissiveMapTexelToLinear\\\\\\\",n.emissiveMapEncoding):\\\\\\\"\\\\\\\",n.specularTintMap?$M(\\\\\\\"specularTintMapTexelToLinear\\\\\\\",n.specularTintMapEncoding):\\\\\\\"\\\\\\\",n.lightMap?$M(\\\\\\\"lightMapTexelToLinear\\\\\\\",n.lightMapEncoding):\\\\\\\"\\\\\\\",JM(\\\\\\\"linearToOutputTexel\\\\\\\",n.outputEncoding),n.depthPacking?\\\\\\\"#define DEPTH_PACKING \\\\\\\"+n.depthPacking:\\\\\\\"\\\\\\\",\\\\\\\"\\\\n\\\\\\\"].filter(KM).join(\\\\\\\"\\\\n\\\\\\\")),o=nE(o),o=QM(o,n),o=tE(o,n),a=nE(a),a=QM(a,n),a=tE(a,n),o=oE(o),a=oE(a),n.isWebGL2&&!0!==n.isRawShaderMaterial&&(v=\\\\\\\"#version 300 es\\\\n\\\\\\\",f=[\\\\\\\"precision mediump sampler2DArray;\\\\\\\",\\\\\\\"#define attribute in\\\\\\\",\\\\\\\"#define varying out\\\\\\\",\\\\\\\"#define texture2D texture\\\\\\\"].join(\\\\\\\"\\\\n\\\\\\\")+\\\\\\\"\\\\n\\\\\\\"+f,g=[\\\\\\\"#define varying in\\\\\\\",n.glslVersion===Qx?\\\\\\\"\\\\\\\":\\\\\\\"out highp vec4 pc_fragColor;\\\\\\\",n.glslVersion===Qx?\\\\\\\"\\\\\\\":\\\\\\\"#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\\\\\\\"+g);const y=v+g+a,x=WM(s,35633,v+f+o),b=WM(s,35632,y);if(s.attachShader(m,x),s.attachShader(m,b),void 0!==n.index0AttributeName?s.bindAttribLocation(m,0,n.index0AttributeName):!0===n.morphTargets&&s.bindAttribLocation(m,0,\\\\\\\"position\\\\\\\"),s.linkProgram(m),t.debug.checkShaderErrors){const t=s.getProgramInfoLog(m).trim(),e=s.getShaderInfoLog(x).trim(),n=s.getShaderInfoLog(b).trim();let i=!0,r=!0;if(!1===s.getProgramParameter(m,35714)){i=!1;const e=YM(s,x,\\\\\\\"vertex\\\\\\\"),n=YM(s,b,\\\\\\\"fragment\\\\\\\");console.error(\\\\\\\"THREE.WebGLProgram: Shader Error \\\\\\\"+s.getError()+\\\\\\\" - VALIDATE_STATUS \\\\\\\"+s.getProgramParameter(m,35715)+\\\\\\\"\\\\n\\\\nProgram Info Log: \\\\\\\"+t+\\\\\\\"\\\\n\\\\\\\"+e+\\\\\\\"\\\\n\\\\\\\"+n)}else\\\\\\\"\\\\\\\"!==t?console.warn(\\\\\\\"THREE.WebGLProgram: Program Info Log:\\\\\\\",t):\\\\\\\"\\\\\\\"!==e&&\\\\\\\"\\\\\\\"!==n||(r=!1);r&&(this.diagnostics={runnable:i,programLog:t,vertexShader:{log:e,prefix:f},fragmentShader:{log:n,prefix:g}})}let w,T;return s.deleteShader(x),s.deleteShader(b),this.getUniforms=function(){return void 0===w&&(w=new jM(s,m)),w},this.getAttributes=function(){return void 0===T&&(T=function(t,e){const n={},i=t.getProgramParameter(e,35721);for(let s=0;s<i;s++){const i=t.getActiveAttrib(e,s),r=i.name;let o=1;35674===i.type&&(o=2),35675===i.type&&(o=3),35676===i.type&&(o=4),n[r]={type:i.type,location:t.getAttribLocation(e,r),locationSize:o}}return n}(s,m)),T},this.destroy=function(){i.releaseStatesOfProgram(this),s.deleteProgram(m),this.program=void 0},this.name=n.shaderName,this.id=qM++,this.cacheKey=e,this.usedTimes=1,this.program=m,this.vertexShader=x,this.fragmentShader=b,this}function uE(t,e,n,i,s,r,o){const a=[],l=s.isWebGL2,c=s.logarithmicDepthBuffer,h=s.floatVertexTextures,u=s.maxVertexUniforms,d=s.vertexTextures;let p=s.precision;const _={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\\\\\\\"},m=[\\\\\\\"precision\\\\\\\",\\\\\\\"isWebGL2\\\\\\\",\\\\\\\"supportsVertexTextures\\\\\\\",\\\\\\\"outputEncoding\\\\\\\",\\\\\\\"instancing\\\\\\\",\\\\\\\"instancingColor\\\\\\\",\\\\\\\"map\\\\\\\",\\\\\\\"mapEncoding\\\\\\\",\\\\\\\"matcap\\\\\\\",\\\\\\\"matcapEncoding\\\\\\\",\\\\\\\"envMap\\\\\\\",\\\\\\\"envMapMode\\\\\\\",\\\\\\\"envMapEncoding\\\\\\\",\\\\\\\"envMapCubeUV\\\\\\\",\\\\\\\"lightMap\\\\\\\",\\\\\\\"lightMapEncoding\\\\\\\",\\\\\\\"aoMap\\\\\\\",\\\\\\\"emissiveMap\\\\\\\",\\\\\\\"emissiveMapEncoding\\\\\\\",\\\\\\\"bumpMap\\\\\\\",\\\\\\\"normalMap\\\\\\\",\\\\\\\"objectSpaceNormalMap\\\\\\\",\\\\\\\"tangentSpaceNormalMap\\\\\\\",\\\\\\\"clearcoat\\\\\\\",\\\\\\\"clearcoatMap\\\\\\\",\\\\\\\"clearcoatRoughnessMap\\\\\\\",\\\\\\\"clearcoatNormalMap\\\\\\\",\\\\\\\"displacementMap\\\\\\\",\\\\\\\"specularMap\\\\\\\",\\\\\\\"specularIntensityMap\\\\\\\",\\\\\\\"specularTintMap\\\\\\\",\\\\\\\"specularTintMapEncoding\\\\\\\",\\\\\\\"roughnessMap\\\\\\\",\\\\\\\"metalnessMap\\\\\\\",\\\\\\\"gradientMap\\\\\\\",\\\\\\\"alphaMap\\\\\\\",\\\\\\\"alphaTest\\\\\\\",\\\\\\\"combine\\\\\\\",\\\\\\\"vertexColors\\\\\\\",\\\\\\\"vertexAlphas\\\\\\\",\\\\\\\"vertexTangents\\\\\\\",\\\\\\\"vertexUvs\\\\\\\",\\\\\\\"uvsVertexOnly\\\\\\\",\\\\\\\"fog\\\\\\\",\\\\\\\"useFog\\\\\\\",\\\\\\\"fogExp2\\\\\\\",\\\\\\\"flatShading\\\\\\\",\\\\\\\"sizeAttenuation\\\\\\\",\\\\\\\"logarithmicDepthBuffer\\\\\\\",\\\\\\\"skinning\\\\\\\",\\\\\\\"maxBones\\\\\\\",\\\\\\\"useVertexTexture\\\\\\\",\\\\\\\"morphTargets\\\\\\\",\\\\\\\"morphNormals\\\\\\\",\\\\\\\"morphTargetsCount\\\\\\\",\\\\\\\"premultipliedAlpha\\\\\\\",\\\\\\\"numDirLights\\\\\\\",\\\\\\\"numPointLights\\\\\\\",\\\\\\\"numSpotLights\\\\\\\",\\\\\\\"numHemiLights\\\\\\\",\\\\\\\"numRectAreaLights\\\\\\\",\\\\\\\"numDirLightShadows\\\\\\\",\\\\\\\"numPointLightShadows\\\\\\\",\\\\\\\"numSpotLightShadows\\\\\\\",\\\\\\\"shadowMapEnabled\\\\\\\",\\\\\\\"shadowMapType\\\\\\\",\\\\\\\"toneMapping\\\\\\\",\\\\\\\"physicallyCorrectLights\\\\\\\",\\\\\\\"doubleSided\\\\\\\",\\\\\\\"flipSided\\\\\\\",\\\\\\\"numClippingPlanes\\\\\\\",\\\\\\\"numClipIntersection\\\\\\\",\\\\\\\"depthPacking\\\\\\\",\\\\\\\"dithering\\\\\\\",\\\\\\\"format\\\\\\\",\\\\\\\"sheen\\\\\\\",\\\\\\\"transmission\\\\\\\",\\\\\\\"transmissionMap\\\\\\\",\\\\\\\"thicknessMap\\\\\\\"];function f(t){let e;return t&&t.isTexture?e=t.encoding:t&&t.isWebGLRenderTarget?(console.warn(\\\\\\\"THREE.WebGLPrograms.getTextureEncodingFromMap: don't use render targets as textures. Use their .texture property instead.\\\\\\\"),e=t.texture.encoding):e=qx,l&&t&&t.isTexture&&t.format===Dx&&t.type===Nx&&t.encoding===Xx&&(e=qx),e}return{getParameters:function(r,a,m,g,v){const y=g.fog,x=r.isMeshStandardMaterial?g.environment:null,b=(r.isMeshStandardMaterial?n:e).get(r.envMap||x),w=_[r.type],T=v.isSkinnedMesh?function(t){const e=t.skeleton.bones;if(h)return 1024;{const t=u,n=Math.floor((t-20)/4),i=Math.min(n,e.length);return i<e.length?(console.warn(\\\\\\\"THREE.WebGLRenderer: Skeleton has \\\\\\\"+e.length+\\\\\\\" bones. This GPU supports \\\\\\\"+i+\\\\\\\".\\\\\\\"),0):i}}(v):0;let A,M;if(null!==r.precision&&(p=s.getMaxPrecision(r.precision),p!==r.precision&&console.warn(\\\\\\\"THREE.WebGLProgram.getParameters:\\\\\\\",r.precision,\\\\\\\"not supported, using\\\\\\\",p,\\\\\\\"instead.\\\\\\\")),w){const t=QT[w];A=t.vertexShader,M=t.fragmentShader}else A=r.vertexShader,M=r.fragmentShader;const E=t.getRenderTarget(),S=r.alphaTest>0,C=r.clearcoat>0;return{isWebGL2:l,shaderID:w,shaderName:r.type,vertexShader:A,fragmentShader:M,defines:r.defines,isRawShaderMaterial:!0===r.isRawShaderMaterial,glslVersion:r.glslVersion,precision:p,instancing:!0===v.isInstancedMesh,instancingColor:!0===v.isInstancedMesh&&null!==v.instanceColor,supportsVertexTextures:d,outputEncoding:null!==E?f(E.texture):t.outputEncoding,map:!!r.map,mapEncoding:f(r.map),matcap:!!r.matcap,matcapEncoding:f(r.matcap),envMap:!!b,envMapMode:b&&b.mapping,envMapEncoding:f(b),envMapCubeUV:!!b&&(b.mapping===vx||b.mapping===yx),lightMap:!!r.lightMap,lightMapEncoding:f(r.lightMap),aoMap:!!r.aoMap,emissiveMap:!!r.emissiveMap,emissiveMapEncoding:f(r.emissiveMap),bumpMap:!!r.bumpMap,normalMap:!!r.normalMap,objectSpaceNormalMap:1===r.normalMapType,tangentSpaceNormalMap:0===r.normalMapType,clearcoat:C,clearcoatMap:C&&!!r.clearcoatMap,clearcoatRoughnessMap:C&&!!r.clearcoatRoughnessMap,clearcoatNormalMap:C&&!!r.clearcoatNormalMap,displacementMap:!!r.displacementMap,roughnessMap:!!r.roughnessMap,metalnessMap:!!r.metalnessMap,specularMap:!!r.specularMap,specularIntensityMap:!!r.specularIntensityMap,specularTintMap:!!r.specularTintMap,specularTintMapEncoding:f(r.specularTintMap),alphaMap:!!r.alphaMap,alphaTest:S,gradientMap:!!r.gradientMap,sheen:r.sheen>0,transmission:r.transmission>0,transmissionMap:!!r.transmissionMap,thicknessMap:!!r.thicknessMap,combine:r.combine,vertexTangents:!!r.normalMap&&!!v.geometry&&!!v.geometry.attributes.tangent,vertexColors:r.vertexColors,vertexAlphas:!0===r.vertexColors&&!!v.geometry&&!!v.geometry.attributes.color&&4===v.geometry.attributes.color.itemSize,vertexUvs:!!(r.map||r.bumpMap||r.normalMap||r.specularMap||r.alphaMap||r.emissiveMap||r.roughnessMap||r.metalnessMap||r.clearcoatMap||r.clearcoatRoughnessMap||r.clearcoatNormalMap||r.displacementMap||r.transmissionMap||r.thicknessMap||r.specularIntensityMap||r.specularTintMap),uvsVertexOnly:!(r.map||r.bumpMap||r.normalMap||r.specularMap||r.alphaMap||r.emissiveMap||r.roughnessMap||r.metalnessMap||r.clearcoatNormalMap||r.transmission>0||r.transmissionMap||r.thicknessMap||r.specularIntensityMap||r.specularTintMap||!r.displacementMap),fog:!!y,useFog:r.fog,fogExp2:y&&y.isFogExp2,flatShading:!!r.flatShading,sizeAttenuation:r.sizeAttenuation,logarithmicDepthBuffer:c,skinning:!0===v.isSkinnedMesh&&T>0,maxBones:T,useVertexTexture:h,morphTargets:!!v.geometry&&!!v.geometry.morphAttributes.position,morphNormals:!!v.geometry&&!!v.geometry.morphAttributes.normal,morphTargetsCount:v.geometry&&v.geometry.morphAttributes.position?v.geometry.morphAttributes.position.length:0,numDirLights:a.directional.length,numPointLights:a.point.length,numSpotLights:a.spot.length,numRectAreaLights:a.rectArea.length,numHemiLights:a.hemi.length,numDirLightShadows:a.directionalShadowMap.length,numPointLightShadows:a.pointShadowMap.length,numSpotLightShadows:a.spotShadowMap.length,numClippingPlanes:o.numPlanes,numClipIntersection:o.numIntersection,format:r.format,dithering:r.dithering,shadowMapEnabled:t.shadowMap.enabled&&m.length>0,shadowMapType:t.shadowMap.type,toneMapping:r.toneMapped?t.toneMapping:0,physicallyCorrectLights:t.physicallyCorrectLights,premultipliedAlpha:r.premultipliedAlpha,doubleSided:2===r.side,flipSided:1===r.side,depthPacking:void 0!==r.depthPacking&&r.depthPacking,index0AttributeName:r.index0AttributeName,extensionDerivatives:r.extensions&&r.extensions.derivatives,extensionFragDepth:r.extensions&&r.extensions.fragDepth,extensionDrawBuffers:r.extensions&&r.extensions.drawBuffers,extensionShaderTextureLOD:r.extensions&&r.extensions.shaderTextureLOD,rendererExtensionFragDepth:l||i.has(\\\\\\\"EXT_frag_depth\\\\\\\"),rendererExtensionDrawBuffers:l||i.has(\\\\\\\"WEBGL_draw_buffers\\\\\\\"),rendererExtensionShaderTextureLod:l||i.has(\\\\\\\"EXT_shader_texture_lod\\\\\\\"),customProgramCacheKey:r.customProgramCacheKey()}},getProgramCacheKey:function(e){const n=[];if(e.shaderID?n.push(e.shaderID):(n.push(e.fragmentShader),n.push(e.vertexShader)),void 0!==e.defines)for(const t in e.defines)n.push(t),n.push(e.defines[t]);if(!1===e.isRawShaderMaterial){for(let t=0;t<m.length;t++)n.push(e[m[t]]);n.push(t.outputEncoding),n.push(t.gammaFactor)}return n.push(e.customProgramCacheKey),n.join()},getUniforms:function(t){const e=_[t.type];let n;if(e){const t=QT[e];n=RT.clone(t.uniforms)}else n=t.uniforms;return n},acquireProgram:function(e,n){let i;for(let t=0,e=a.length;t<e;t++){const e=a[t];if(e.cacheKey===n){i=e,++i.usedTimes;break}}return void 0===i&&(i=new hE(t,n,e,r),a.push(i)),i},releaseProgram:function(t){if(0==--t.usedTimes){const e=a.indexOf(t);a[e]=a[a.length-1],a.pop(),t.destroy()}},programs:a}}function dE(){let t=new WeakMap;return{get:function(e){let n=t.get(e);return void 0===n&&(n={},t.set(e,n)),n},remove:function(e){t.delete(e)},update:function(e,n,i){t.get(e)[n]=i},dispose:function(){t=new WeakMap}}}function pE(t,e){return t.groupOrder!==e.groupOrder?t.groupOrder-e.groupOrder:t.renderOrder!==e.renderOrder?t.renderOrder-e.renderOrder:t.program!==e.program?t.program.id-e.program.id:t.material.id!==e.material.id?t.material.id-e.material.id:t.z!==e.z?t.z-e.z:t.id-e.id}function _E(t,e){return t.groupOrder!==e.groupOrder?t.groupOrder-e.groupOrder:t.renderOrder!==e.renderOrder?t.renderOrder-e.renderOrder:t.z!==e.z?e.z-t.z:t.id-e.id}function mE(t){const e=[];let n=0;const i=[],s=[],r=[],o={id:-1};function a(i,s,r,a,l,c){let h=e[n];const u=t.get(r);return void 0===h?(h={id:i.id,object:i,geometry:s,material:r,program:u.program||o,groupOrder:a,renderOrder:i.renderOrder,z:l,group:c},e[n]=h):(h.id=i.id,h.object=i,h.geometry=s,h.material=r,h.program=u.program||o,h.groupOrder=a,h.renderOrder=i.renderOrder,h.z=l,h.group=c),n++,h}return{opaque:i,transmissive:s,transparent:r,init:function(){n=0,i.length=0,s.length=0,r.length=0},push:function(t,e,n,o,l,c){const h=a(t,e,n,o,l,c);n.transmission>0?s.push(h):!0===n.transparent?r.push(h):i.push(h)},unshift:function(t,e,n,o,l,c){const h=a(t,e,n,o,l,c);n.transmission>0?s.unshift(h):!0===n.transparent?r.unshift(h):i.unshift(h)},finish:function(){for(let t=n,i=e.length;t<i;t++){const n=e[t];if(null===n.id)break;n.id=null,n.object=null,n.geometry=null,n.material=null,n.program=null,n.group=null}},sort:function(t,e){i.length>1&&i.sort(t||pE),s.length>1&&s.sort(e||_E),r.length>1&&r.sort(e||_E)}}}function fE(t){let e=new WeakMap;return{get:function(n,i){let s;return!1===e.has(n)?(s=new mE(t),e.set(n,[s])):i>=e.get(n).length?(s=new mE(t),e.get(n).push(s)):s=e.get(n)[i],s},dispose:function(){e=new WeakMap}}}function gE(){const t={};return{get:function(e){if(void 0!==t[e.id])return t[e.id];let n;switch(e.type){case\\\\\\\"DirectionalLight\\\\\\\":n={direction:new Sb,color:new $w};break;case\\\\\\\"SpotLight\\\\\\\":n={position:new Sb,direction:new Sb,color:new $w,distance:0,coneCos:0,penumbraCos:0,decay:0};break;case\\\\\\\"PointLight\\\\\\\":n={position:new Sb,color:new $w,distance:0,decay:0};break;case\\\\\\\"HemisphereLight\\\\\\\":n={direction:new Sb,skyColor:new $w,groundColor:new $w};break;case\\\\\\\"RectAreaLight\\\\\\\":n={color:new $w,position:new Sb,halfWidth:new Sb,halfHeight:new Sb}}return t[e.id]=n,n}}}let vE=0;function yE(t,e){return(e.castShadow?1:0)-(t.castShadow?1:0)}function xE(t,e){const n=new gE,i=function(){const t={};return{get:function(e){if(void 0!==t[e.id])return t[e.id];let n;switch(e.type){case\\\\\\\"DirectionalLight\\\\\\\":case\\\\\\\"SpotLight\\\\\\\":n={shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new _b};break;case\\\\\\\"PointLight\\\\\\\":n={shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new _b,shadowCameraNear:1,shadowCameraFar:1e3}}return t[e.id]=n,n}}}(),s={version:0,hash:{directionalLength:-1,pointLength:-1,spotLength:-1,rectAreaLength:-1,hemiLength:-1,numDirectionalShadows:-1,numPointShadows:-1,numSpotShadows:-1},ambient:[0,0,0],probe:[],directional:[],directionalShadow:[],directionalShadowMap:[],directionalShadowMatrix:[],spot:[],spotShadow:[],spotShadowMap:[],spotShadowMatrix:[],rectArea:[],rectAreaLTC1:null,rectAreaLTC2:null,point:[],pointShadow:[],pointShadowMap:[],pointShadowMatrix:[],hemi:[]};for(let t=0;t<9;t++)s.probe.push(new Sb);const r=new Sb,o=new sw,a=new sw;return{setup:function(r,o){let a=0,l=0,c=0;for(let t=0;t<9;t++)s.probe[t].set(0,0,0);let h=0,u=0,d=0,p=0,_=0,m=0,f=0,g=0;r.sort(yE);const v=!0!==o?Math.PI:1;for(let t=0,e=r.length;t<e;t++){const e=r[t],o=e.color,y=e.intensity,x=e.distance,b=e.shadow&&e.shadow.map?e.shadow.map.texture:null;if(e.isAmbientLight)a+=o.r*y*v,l+=o.g*y*v,c+=o.b*y*v;else if(e.isLightProbe)for(let t=0;t<9;t++)s.probe[t].addScaledVector(e.sh.coefficients[t],y);else if(e.isDirectionalLight){const t=n.get(e);if(t.color.copy(e.color).multiplyScalar(e.intensity*v),e.castShadow){const t=e.shadow,n=i.get(e);n.shadowBias=t.bias,n.shadowNormalBias=t.normalBias,n.shadowRadius=t.radius,n.shadowMapSize=t.mapSize,s.directionalShadow[h]=n,s.directionalShadowMap[h]=b,s.directionalShadowMatrix[h]=e.shadow.matrix,m++}s.directional[h]=t,h++}else if(e.isSpotLight){const t=n.get(e);if(t.position.setFromMatrixPosition(e.matrixWorld),t.color.copy(o).multiplyScalar(y*v),t.distance=x,t.coneCos=Math.cos(e.angle),t.penumbraCos=Math.cos(e.angle*(1-e.penumbra)),t.decay=e.decay,e.castShadow){const t=e.shadow,n=i.get(e);n.shadowBias=t.bias,n.shadowNormalBias=t.normalBias,n.shadowRadius=t.radius,n.shadowMapSize=t.mapSize,s.spotShadow[d]=n,s.spotShadowMap[d]=b,s.spotShadowMatrix[d]=e.shadow.matrix,g++}s.spot[d]=t,d++}else if(e.isRectAreaLight){const t=n.get(e);t.color.copy(o).multiplyScalar(y),t.halfWidth.set(.5*e.width,0,0),t.halfHeight.set(0,.5*e.height,0),s.rectArea[p]=t,p++}else if(e.isPointLight){const t=n.get(e);if(t.color.copy(e.color).multiplyScalar(e.intensity*v),t.distance=e.distance,t.decay=e.decay,e.castShadow){const t=e.shadow,n=i.get(e);n.shadowBias=t.bias,n.shadowNormalBias=t.normalBias,n.shadowRadius=t.radius,n.shadowMapSize=t.mapSize,n.shadowCameraNear=t.camera.near,n.shadowCameraFar=t.camera.far,s.pointShadow[u]=n,s.pointShadowMap[u]=b,s.pointShadowMatrix[u]=e.shadow.matrix,f++}s.point[u]=t,u++}else if(e.isHemisphereLight){const t=n.get(e);t.skyColor.copy(e.color).multiplyScalar(y*v),t.groundColor.copy(e.groundColor).multiplyScalar(y*v),s.hemi[_]=t,_++}}p>0&&(e.isWebGL2||!0===t.has(\\\\\\\"OES_texture_float_linear\\\\\\\")?(s.rectAreaLTC1=KT.LTC_FLOAT_1,s.rectAreaLTC2=KT.LTC_FLOAT_2):!0===t.has(\\\\\\\"OES_texture_half_float_linear\\\\\\\")?(s.rectAreaLTC1=KT.LTC_HALF_1,s.rectAreaLTC2=KT.LTC_HALF_2):console.error(\\\\\\\"THREE.WebGLRenderer: Unable to use RectAreaLight. Missing WebGL extensions.\\\\\\\")),s.ambient[0]=a,s.ambient[1]=l,s.ambient[2]=c;const y=s.hash;y.directionalLength===h&&y.pointLength===u&&y.spotLength===d&&y.rectAreaLength===p&&y.hemiLength===_&&y.numDirectionalShadows===m&&y.numPointShadows===f&&y.numSpotShadows===g||(s.directional.length=h,s.spot.length=d,s.rectArea.length=p,s.point.length=u,s.hemi.length=_,s.directionalShadow.length=m,s.directionalShadowMap.length=m,s.pointShadow.length=f,s.pointShadowMap.length=f,s.spotShadow.length=g,s.spotShadowMap.length=g,s.directionalShadowMatrix.length=m,s.pointShadowMatrix.length=f,s.spotShadowMatrix.length=g,y.directionalLength=h,y.pointLength=u,y.spotLength=d,y.rectAreaLength=p,y.hemiLength=_,y.numDirectionalShadows=m,y.numPointShadows=f,y.numSpotShadows=g,s.version=vE++)},setupView:function(t,e){let n=0,i=0,l=0,c=0,h=0;const u=e.matrixWorldInverse;for(let e=0,d=t.length;e<d;e++){const d=t[e];if(d.isDirectionalLight){const t=s.directional[n];t.direction.setFromMatrixPosition(d.matrixWorld),r.setFromMatrixPosition(d.target.matrixWorld),t.direction.sub(r),t.direction.transformDirection(u),n++}else if(d.isSpotLight){const t=s.spot[l];t.position.setFromMatrixPosition(d.matrixWorld),t.position.applyMatrix4(u),t.direction.setFromMatrixPosition(d.matrixWorld),r.setFromMatrixPosition(d.target.matrixWorld),t.direction.sub(r),t.direction.transformDirection(u),l++}else if(d.isRectAreaLight){const t=s.rectArea[c];t.position.setFromMatrixPosition(d.matrixWorld),t.position.applyMatrix4(u),a.identity(),o.copy(d.matrixWorld),o.premultiply(u),a.extractRotation(o),t.halfWidth.set(.5*d.width,0,0),t.halfHeight.set(0,.5*d.height,0),t.halfWidth.applyMatrix4(a),t.halfHeight.applyMatrix4(a),c++}else if(d.isPointLight){const t=s.point[i];t.position.setFromMatrixPosition(d.matrixWorld),t.position.applyMatrix4(u),i++}else if(d.isHemisphereLight){const t=s.hemi[h];t.direction.setFromMatrixPosition(d.matrixWorld),t.direction.transformDirection(u),t.direction.normalize(),h++}}},state:s}}function bE(t,e){const n=new xE(t,e),i=[],s=[];return{init:function(){i.length=0,s.length=0},state:{lightsArray:i,shadowsArray:s,lights:n},setupLights:function(t){n.setup(i,t)},setupLightsView:function(t){n.setupView(i,t)},pushLight:function(t){i.push(t)},pushShadow:function(t){s.push(t)}}}function wE(t,e){let n=new WeakMap;return{get:function(i,s=0){let r;return!1===n.has(i)?(r=new bE(t,e),n.set(i,[r])):s>=n.get(i).length?(r=new bE(t,e),n.get(i).push(r)):r=n.get(i)[s],r},dispose:function(){n=new WeakMap}}}class TE extends Vw{constructor(t){super(),this.type=\\\\\\\"MeshDepthMaterial\\\\\\\",this.depthPacking=3200,this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.wireframe=!1,this.wireframeLinewidth=1,this.fog=!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}}TE.prototype.isMeshDepthMaterial=!0;class AE extends Vw{constructor(t){super(),this.type=\\\\\\\"MeshDistanceMaterial\\\\\\\",this.referencePosition=new Sb,this.nearDistance=1,this.farDistance=1e3,this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.fog=!1,this.setValues(t)}copy(t){return super.copy(t),this.referencePosition.copy(t.referencePosition),this.nearDistance=t.nearDistance,this.farDistance=t.farDistance,this.map=t.map,this.alphaMap=t.alphaMap,this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this}}AE.prototype.isMeshDistanceMaterial=!0;function ME(t,e,n){let i=new XT;const s=new _b,r=new _b,o=new Tb,a=new TE({depthPacking:3201}),l=new AE,c={},h=n.maxTextureSize,u={0:1,1:0,2:2},d=new IT({uniforms:{shadow_pass:{value:null},resolution:{value:new _b},radius:{value:4},samples:{value:8}},vertexShader:\\\\\\\"void main() {\\\\n\\\\tgl_Position = vec4( position, 1.0 );\\\\n}\\\\\\\",fragmentShader:\\\\\\\"uniform sampler2D shadow_pass;\\\\nuniform vec2 resolution;\\\\nuniform float radius;\\\\nuniform float samples;\\\\n#include <packing>\\\\nvoid main() {\\\\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}\\\\\\\"}),p=d.clone();p.defines.HORIZONTAL_PASS=1;const _=new hT;_.setAttribute(\\\\\\\"position\\\\\\\",new Qw(new Float32Array([-1,-1,.5,3,-1,.5,-1,3,.5]),3));const m=new CT(_,d),f=this;function g(n,i){const s=e.update(m);d.uniforms.shadow_pass.value=n.map.texture,d.uniforms.resolution.value=n.mapSize,d.uniforms.radius.value=n.radius,d.uniforms.samples.value=n.blurSamples,t.setRenderTarget(n.mapPass),t.clear(),t.renderBufferDirect(i,null,s,d,m,null),p.uniforms.shadow_pass.value=n.mapPass.texture,p.uniforms.resolution.value=n.mapSize,p.uniforms.radius.value=n.radius,p.uniforms.samples.value=n.blurSamples,t.setRenderTarget(n.map),t.clear(),t.renderBufferDirect(i,null,s,p,m,null)}function v(e,n,i,s,r,o,h){let d=null;const p=!0===s.isPointLight?e.customDistanceMaterial:e.customDepthMaterial;if(d=void 0!==p?p:!0===s.isPointLight?l:a,t.localClippingEnabled&&!0===i.clipShadows&&0!==i.clippingPlanes.length||i.displacementMap&&0!==i.displacementScale||i.alphaMap&&i.alphaTest>0){const t=d.uuid,e=i.uuid;let n=c[t];void 0===n&&(n={},c[t]=n);let s=n[e];void 0===s&&(s=d.clone(),n[e]=s),d=s}return d.visible=i.visible,d.wireframe=i.wireframe,d.side=3===h?null!==i.shadowSide?i.shadowSide:i.side:null!==i.shadowSide?i.shadowSide:u[i.side],d.alphaMap=i.alphaMap,d.alphaTest=i.alphaTest,d.clipShadows=i.clipShadows,d.clippingPlanes=i.clippingPlanes,d.clipIntersection=i.clipIntersection,d.displacementMap=i.displacementMap,d.displacementScale=i.displacementScale,d.displacementBias=i.displacementBias,d.wireframeLinewidth=i.wireframeLinewidth,d.linewidth=i.linewidth,!0===s.isPointLight&&!0===d.isMeshDistanceMaterial&&(d.referencePosition.setFromMatrixPosition(s.matrixWorld),d.nearDistance=r,d.farDistance=o),d}function y(n,s,r,o,a){if(!1===n.visible)return;if(n.layers.test(s.layers)&&(n.isMesh||n.isLine||n.isPoints)&&(n.castShadow||n.receiveShadow&&3===a)&&(!n.frustumCulled||i.intersectsObject(n))){n.modelViewMatrix.multiplyMatrices(r.matrixWorldInverse,n.matrixWorld);const i=e.update(n),s=n.material;if(Array.isArray(s)){const e=i.groups;for(let l=0,c=e.length;l<c;l++){const c=e[l],h=s[c.materialIndex];if(h&&h.visible){const e=v(n,0,h,o,r.near,r.far,a);t.renderBufferDirect(r,null,i,e,n,c)}}}else if(s.visible){const e=v(n,0,s,o,r.near,r.far,a);t.renderBufferDirect(r,null,i,e,n,null)}}const l=n.children;for(let t=0,e=l.length;t<e;t++)y(l[t],s,r,o,a)}this.enabled=!1,this.autoUpdate=!0,this.needsUpdate=!1,this.type=1,this.render=function(e,n,a){if(!1===f.enabled)return;if(!1===f.autoUpdate&&!1===f.needsUpdate)return;if(0===e.length)return;const l=t.getRenderTarget(),c=t.getActiveCubeFace(),u=t.getActiveMipmapLevel(),d=t.state;d.setBlending(0),d.buffers.color.setClear(1,1,1,1),d.buffers.depth.setTest(!0),d.setScissorTest(!1);for(let l=0,c=e.length;l<c;l++){const c=e[l],u=c.shadow;if(void 0===u){console.warn(\\\\\\\"THREE.WebGLShadowMap:\\\\\\\",c,\\\\\\\"has no shadow.\\\\\\\");continue}if(!1===u.autoUpdate&&!1===u.needsUpdate)continue;s.copy(u.mapSize);const p=u.getFrameExtents();if(s.multiply(p),r.copy(u.mapSize),(s.x>h||s.y>h)&&(s.x>h&&(r.x=Math.floor(h/p.x),s.x=r.x*p.x,u.mapSize.x=r.x),s.y>h&&(r.y=Math.floor(h/p.y),s.y=r.y*p.y,u.mapSize.y=r.y)),null===u.map&&!u.isPointLightShadow&&3===this.type){const t={minFilter:Ex,magFilter:Ex,format:Dx};u.map=new Ab(s.x,s.y,t),u.map.texture.name=c.name+\\\\\\\".shadowMap\\\\\\\",u.mapPass=new Ab(s.x,s.y,t),u.camera.updateProjectionMatrix()}if(null===u.map){const t={minFilter:Tx,magFilter:Tx,format:Dx};u.map=new Ab(s.x,s.y,t),u.map.texture.name=c.name+\\\\\\\".shadowMap\\\\\\\",u.camera.updateProjectionMatrix()}t.setRenderTarget(u.map),t.clear();const _=u.getViewportCount();for(let t=0;t<_;t++){const e=u.getViewport(t);o.set(r.x*e.x,r.y*e.y,r.x*e.z,r.y*e.w),d.viewport(o),u.updateMatrices(c,t),i=u.getFrustum(),y(n,a,u.camera,c,this.type)}u.isPointLightShadow||3!==this.type||g(u,a),u.needsUpdate=!1}f.needsUpdate=!1,t.setRenderTarget(l,c,u)}}function EE(t,e,n){const i=n.isWebGL2;const s=new function(){let e=!1;const n=new Tb;let i=null;const s=new Tb(0,0,0,0);return{setMask:function(n){i===n||e||(t.colorMask(n,n,n,n),i=n)},setLocked:function(t){e=t},setClear:function(e,i,r,o,a){!0===a&&(e*=o,i*=o,r*=o),n.set(e,i,r,o),!1===s.equals(n)&&(t.clearColor(e,i,r,o),s.copy(n))},reset:function(){e=!1,i=null,s.set(-1,0,0,0)}}},r=new function(){let e=!1,n=null,i=null,s=null;return{setTest:function(t){t?B(2929):z(2929)},setMask:function(i){n===i||e||(t.depthMask(i),n=i)},setFunc:function(e){if(i!==e){if(e)switch(e){case 0:t.depthFunc(512);break;case 1:t.depthFunc(519);break;case 2:t.depthFunc(513);break;case 3:t.depthFunc(515);break;case 4:t.depthFunc(514);break;case 5:t.depthFunc(518);break;case 6:t.depthFunc(516);break;case 7:t.depthFunc(517);break;default:t.depthFunc(515)}else t.depthFunc(515);i=e}},setLocked:function(t){e=t},setClear:function(e){s!==e&&(t.clearDepth(e),s=e)},reset:function(){e=!1,n=null,i=null,s=null}}},o=new function(){let e=!1,n=null,i=null,s=null,r=null,o=null,a=null,l=null,c=null;return{setTest:function(t){e||(t?B(2960):z(2960))},setMask:function(i){n===i||e||(t.stencilMask(i),n=i)},setFunc:function(e,n,o){i===e&&s===n&&r===o||(t.stencilFunc(e,n,o),i=e,s=n,r=o)},setOp:function(e,n,i){o===e&&a===n&&l===i||(t.stencilOp(e,n,i),o=e,a=n,l=i)},setLocked:function(t){e=t},setClear:function(e){c!==e&&(t.clearStencil(e),c=e)},reset:function(){e=!1,n=null,i=null,s=null,r=null,o=null,a=null,l=null,c=null}}};let a={},l=null,c={},h=null,u=!1,d=null,p=null,_=null,m=null,f=null,g=null,v=null,y=!1,x=null,b=null,w=null,T=null,A=null;const M=t.getParameter(35661);let E=!1,S=0;const C=t.getParameter(7938);-1!==C.indexOf(\\\\\\\"WebGL\\\\\\\")?(S=parseFloat(/^WebGL (\\\\d)/.exec(C)[1]),E=S>=1):-1!==C.indexOf(\\\\\\\"OpenGL ES\\\\\\\")&&(S=parseFloat(/^OpenGL ES (\\\\d)/.exec(C)[1]),E=S>=2);let N=null,L={};const O=t.getParameter(3088),P=t.getParameter(2978),R=(new Tb).fromArray(O),I=(new Tb).fromArray(P);function F(e,n,i){const s=new Uint8Array(4),r=t.createTexture();t.bindTexture(e,r),t.texParameteri(e,10241,9728),t.texParameteri(e,10240,9728);for(let e=0;e<i;e++)t.texImage2D(n+e,0,6408,1,1,0,6408,5121,s);return r}const D={};function B(e){!0!==a[e]&&(t.enable(e),a[e]=!0)}function z(e){!1!==a[e]&&(t.disable(e),a[e]=!1)}D[3553]=F(3553,3553,1),D[34067]=F(34067,34069,6),s.setClear(0,0,0,1),r.setClear(1),o.setClear(0),B(2929),r.setFunc(3),V(!1),H(1),B(2884),G(0);const k={[px]:32774,101:32778,102:32779};if(i)k[103]=32775,k[104]=32776;else{const t=e.get(\\\\\\\"EXT_blend_minmax\\\\\\\");null!==t&&(k[103]=t.MIN_EXT,k[104]=t.MAX_EXT)}const U={200:0,201:1,202:768,204:770,210:776,208:774,206:772,203:769,205:771,209:775,207:773};function G(e,n,i,s,r,o,a,l){if(0!==e){if(!1===u&&(B(3042),u=!0),5===e)r=r||n,o=o||i,a=a||s,n===p&&r===f||(t.blendEquationSeparate(k[n],k[r]),p=n,f=r),i===_&&s===m&&o===g&&a===v||(t.blendFuncSeparate(U[i],U[s],U[o],U[a]),_=i,m=s,g=o,v=a),d=e,y=null;else if(e!==d||l!==y){if(p===px&&f===px||(t.blendEquation(32774),p=px,f=px),l)switch(e){case 1:t.blendFuncSeparate(1,771,1,771);break;case 2:t.blendFunc(1,1);break;case 3:t.blendFuncSeparate(0,0,769,771);break;case 4:t.blendFuncSeparate(0,768,0,770);break;default:console.error(\\\\\\\"THREE.WebGLState: Invalid blending: \\\\\\\",e)}else switch(e){case 1:t.blendFuncSeparate(770,771,1,771);break;case 2:t.blendFunc(770,1);break;case 3:t.blendFunc(0,769);break;case 4:t.blendFunc(0,768);break;default:console.error(\\\\\\\"THREE.WebGLState: Invalid blending: \\\\\\\",e)}_=null,m=null,g=null,v=null,d=e,y=l}}else!0===u&&(z(3042),u=!1)}function V(e){x!==e&&(e?t.frontFace(2304):t.frontFace(2305),x=e)}function H(e){0!==e?(B(2884),e!==b&&(1===e?t.cullFace(1029):2===e?t.cullFace(1028):t.cullFace(1032))):z(2884),b=e}function j(e,n,i){e?(B(32823),T===n&&A===i||(t.polygonOffset(n,i),T=n,A=i)):z(32823)}function W(e){void 0===e&&(e=33984+M-1),N!==e&&(t.activeTexture(e),N=e)}return{buffers:{color:s,depth:r,stencil:o},enable:B,disable:z,bindFramebuffer:function(e,n){return null===n&&null!==l&&(n=l),c[e]!==n&&(t.bindFramebuffer(e,n),c[e]=n,i&&(36009===e&&(c[36160]=n),36160===e&&(c[36009]=n)),!0)},bindXRFramebuffer:function(e){e!==l&&(t.bindFramebuffer(36160,e),l=e)},useProgram:function(e){return h!==e&&(t.useProgram(e),h=e,!0)},setBlending:G,setMaterial:function(t,e){2===t.side?z(2884):B(2884);let n=1===t.side;e&&(n=!n),V(n),1===t.blending&&!1===t.transparent?G(0):G(t.blending,t.blendEquation,t.blendSrc,t.blendDst,t.blendEquationAlpha,t.blendSrcAlpha,t.blendDstAlpha,t.premultipliedAlpha),r.setFunc(t.depthFunc),r.setTest(t.depthTest),r.setMask(t.depthWrite),s.setMask(t.colorWrite);const i=t.stencilWrite;o.setTest(i),i&&(o.setMask(t.stencilWriteMask),o.setFunc(t.stencilFunc,t.stencilRef,t.stencilFuncMask),o.setOp(t.stencilFail,t.stencilZFail,t.stencilZPass)),j(t.polygonOffset,t.polygonOffsetFactor,t.polygonOffsetUnits),!0===t.alphaToCoverage?B(32926):z(32926)},setFlipSided:V,setCullFace:H,setLineWidth:function(e){e!==w&&(E&&t.lineWidth(e),w=e)},setPolygonOffset:j,setScissorTest:function(t){t?B(3089):z(3089)},activeTexture:W,bindTexture:function(e,n){null===N&&W();let i=L[N];void 0===i&&(i={type:void 0,texture:void 0},L[N]=i),i.type===e&&i.texture===n||(t.bindTexture(e,n||D[e]),i.type=e,i.texture=n)},unbindTexture:function(){const e=L[N];void 0!==e&&void 0!==e.type&&(t.bindTexture(e.type,null),e.type=void 0,e.texture=void 0)},compressedTexImage2D:function(){try{t.compressedTexImage2D.apply(t,arguments)}catch(t){console.error(\\\\\\\"THREE.WebGLState:\\\\\\\",t)}},texImage2D:function(){try{t.texImage2D.apply(t,arguments)}catch(t){console.error(\\\\\\\"THREE.WebGLState:\\\\\\\",t)}},texImage3D:function(){try{t.texImage3D.apply(t,arguments)}catch(t){console.error(\\\\\\\"THREE.WebGLState:\\\\\\\",t)}},scissor:function(e){!1===R.equals(e)&&(t.scissor(e.x,e.y,e.z,e.w),R.copy(e))},viewport:function(e){!1===I.equals(e)&&(t.viewport(e.x,e.y,e.z,e.w),I.copy(e))},reset:function(){t.disable(3042),t.disable(2884),t.disable(2929),t.disable(32823),t.disable(3089),t.disable(2960),t.disable(32926),t.blendEquation(32774),t.blendFunc(1,0),t.blendFuncSeparate(1,0,1,0),t.colorMask(!0,!0,!0,!0),t.clearColor(0,0,0,0),t.depthMask(!0),t.depthFunc(513),t.clearDepth(1),t.stencilMask(4294967295),t.stencilFunc(519,0,4294967295),t.stencilOp(7680,7680,7680),t.clearStencil(0),t.cullFace(1029),t.frontFace(2305),t.polygonOffset(0,0),t.activeTexture(33984),t.bindFramebuffer(36160,null),!0===i&&(t.bindFramebuffer(36009,null),t.bindFramebuffer(36008,null)),t.useProgram(null),t.lineWidth(1),t.scissor(0,0,t.canvas.width,t.canvas.height),t.viewport(0,0,t.canvas.width,t.canvas.height),a={},N=null,L={},l=null,c={},h=null,u=!1,d=null,p=null,_=null,m=null,f=null,g=null,v=null,y=!1,x=null,b=null,w=null,T=null,A=null,R.set(0,0,t.canvas.width,t.canvas.height),I.set(0,0,t.canvas.width,t.canvas.height),s.reset(),r.reset(),o.reset()}}}function SE(t,e,n,i,s,r,o){const a=s.isWebGL2,l=s.maxTextures,c=s.maxCubemapSize,h=s.maxTextureSize,u=s.maxSamples,d=new WeakMap;let p,_=!1;try{_=\\\\\\\"undefined\\\\\\\"!=typeof OffscreenCanvas&&null!==new OffscreenCanvas(1,1).getContext(\\\\\\\"2d\\\\\\\")}catch(t){}function m(t,e){return _?new OffscreenCanvas(t,e):gb(\\\\\\\"canvas\\\\\\\")}function f(t,e,n,i){let s=1;if((t.width>i||t.height>i)&&(s=i/Math.max(t.width,t.height)),s<1||!0===e){if(\\\\\\\"undefined\\\\\\\"!=typeof HTMLImageElement&&t instanceof HTMLImageElement||\\\\\\\"undefined\\\\\\\"!=typeof HTMLCanvasElement&&t instanceof HTMLCanvasElement||\\\\\\\"undefined\\\\\\\"!=typeof ImageBitmap&&t instanceof ImageBitmap){const i=e?db:Math.floor,r=i(s*t.width),o=i(s*t.height);void 0===p&&(p=m(r,o));const a=n?m(r,o):p;a.width=r,a.height=o;return a.getContext(\\\\\\\"2d\\\\\\\").drawImage(t,0,0,r,o),console.warn(\\\\\\\"THREE.WebGLRenderer: Texture has been resized from (\\\\\\\"+t.width+\\\\\\\"x\\\\\\\"+t.height+\\\\\\\") to (\\\\\\\"+r+\\\\\\\"x\\\\\\\"+o+\\\\\\\").\\\\\\\"),a}return\\\\\\\"data\\\\\\\"in t&&console.warn(\\\\\\\"THREE.WebGLRenderer: Image in DataTexture is too big (\\\\\\\"+t.width+\\\\\\\"x\\\\\\\"+t.height+\\\\\\\").\\\\\\\"),t}return t}function g(t){return hb(t.width)&&hb(t.height)}function v(t,e){return t.generateMipmaps&&e&&t.minFilter!==Tx&&t.minFilter!==Ex}function y(e,n,s,r,o=1){t.generateMipmap(e);i.get(n).__maxMipLevel=Math.log2(Math.max(s,r,o))}function x(n,i,s,r){if(!1===a)return i;if(null!==n){if(void 0!==t[n])return t[n];console.warn(\\\\\\\"THREE.WebGLRenderer: Attempt to use non-existing WebGL internal format '\\\\\\\"+n+\\\\\\\"'\\\\\\\")}let o=i;return 6403===i&&(5126===s&&(o=33326),5131===s&&(o=33325),5121===s&&(o=33321)),6407===i&&(5126===s&&(o=34837),5131===s&&(o=34843),5121===s&&(o=32849)),6408===i&&(5126===s&&(o=34836),5131===s&&(o=34842),5121===s&&(o=r===Xx?35907:32856)),33325!==o&&33326!==o&&34842!==o&&34836!==o||e.get(\\\\\\\"EXT_color_buffer_float\\\\\\\"),o}function b(t){return t===Tx||t===Ax||t===Mx?9728:9729}function w(e){const n=e.target;n.removeEventListener(\\\\\\\"dispose\\\\\\\",w),function(e){const n=i.get(e);if(void 0===n.__webglInit)return;t.deleteTexture(n.__webglTexture),i.remove(e)}(n),n.isVideoTexture&&d.delete(n),o.memory.textures--}function T(e){const n=e.target;n.removeEventListener(\\\\\\\"dispose\\\\\\\",T),function(e){const n=e.texture,s=i.get(e),r=i.get(n);if(!e)return;void 0!==r.__webglTexture&&(t.deleteTexture(r.__webglTexture),o.memory.textures--);e.depthTexture&&e.depthTexture.dispose();if(e.isWebGLCubeRenderTarget)for(let e=0;e<6;e++)t.deleteFramebuffer(s.__webglFramebuffer[e]),s.__webglDepthbuffer&&t.deleteRenderbuffer(s.__webglDepthbuffer[e]);else t.deleteFramebuffer(s.__webglFramebuffer),s.__webglDepthbuffer&&t.deleteRenderbuffer(s.__webglDepthbuffer),s.__webglMultisampledFramebuffer&&t.deleteFramebuffer(s.__webglMultisampledFramebuffer),s.__webglColorRenderbuffer&&t.deleteRenderbuffer(s.__webglColorRenderbuffer),s.__webglDepthRenderbuffer&&t.deleteRenderbuffer(s.__webglDepthRenderbuffer);if(e.isWebGLMultipleRenderTargets)for(let e=0,s=n.length;e<s;e++){const s=i.get(n[e]);s.__webglTexture&&(t.deleteTexture(s.__webglTexture),o.memory.textures--),i.remove(n[e])}i.remove(n),i.remove(e)}(n)}let A=0;function M(t,e){const s=i.get(t);if(t.isVideoTexture&&function(t){const e=o.render.frame;d.get(t)!==e&&(d.set(t,e),t.update())}(t),t.version>0&&s.__version!==t.version){const n=t.image;if(void 0===n)console.warn(\\\\\\\"THREE.WebGLRenderer: Texture marked for update but image is undefined\\\\\\\");else{if(!1!==n.complete)return void O(s,t,e);console.warn(\\\\\\\"THREE.WebGLRenderer: Texture marked for update but image is incomplete\\\\\\\")}}n.activeTexture(33984+e),n.bindTexture(3553,s.__webglTexture)}function E(e,s){const o=i.get(e);e.version>0&&o.__version!==e.version?function(e,i,s){if(6!==i.image.length)return;L(e,i),n.activeTexture(33984+s),n.bindTexture(34067,e.__webglTexture),t.pixelStorei(37440,i.flipY),t.pixelStorei(37441,i.premultiplyAlpha),t.pixelStorei(3317,i.unpackAlignment),t.pixelStorei(37443,0);const o=i&&(i.isCompressedTexture||i.image[0].isCompressedTexture),l=i.image[0]&&i.image[0].isDataTexture,h=[];for(let t=0;t<6;t++)h[t]=o||l?l?i.image[t].image:i.image[t]:f(i.image[t],!1,!0,c);const u=h[0],d=g(u)||a,p=r.convert(i.format),_=r.convert(i.type),m=x(i.internalFormat,p,_,i.encoding);let b;if(N(34067,i,d),o){for(let t=0;t<6;t++){b=h[t].mipmaps;for(let e=0;e<b.length;e++){const s=b[e];i.format!==Dx&&i.format!==Fx?null!==p?n.compressedTexImage2D(34069+t,e,m,s.width,s.height,0,s.data):console.warn(\\\\\\\"THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .setTextureCube()\\\\\\\"):n.texImage2D(34069+t,e,m,s.width,s.height,0,p,_,s.data)}}e.__maxMipLevel=b.length-1}else{b=i.mipmaps;for(let t=0;t<6;t++)if(l){n.texImage2D(34069+t,0,m,h[t].width,h[t].height,0,p,_,h[t].data);for(let e=0;e<b.length;e++){const i=b[e].image[t].image;n.texImage2D(34069+t,e+1,m,i.width,i.height,0,p,_,i.data)}}else{n.texImage2D(34069+t,0,m,p,_,h[t]);for(let e=0;e<b.length;e++){const i=b[e];n.texImage2D(34069+t,e+1,m,p,_,i.image[t])}}e.__maxMipLevel=b.length}v(i,d)&&y(34067,i,u.width,u.height);e.__version=i.version,i.onUpdate&&i.onUpdate(i)}(o,e,s):(n.activeTexture(33984+s),n.bindTexture(34067,o.__webglTexture))}const S={[xx]:10497,[bx]:33071,[wx]:33648},C={[Tx]:9728,[Ax]:9984,[Mx]:9986,[Ex]:9729,[Sx]:9985,[Cx]:9987};function N(n,r,o){if(o?(t.texParameteri(n,10242,S[r.wrapS]),t.texParameteri(n,10243,S[r.wrapT]),32879!==n&&35866!==n||t.texParameteri(n,32882,S[r.wrapR]),t.texParameteri(n,10240,C[r.magFilter]),t.texParameteri(n,10241,C[r.minFilter])):(t.texParameteri(n,10242,33071),t.texParameteri(n,10243,33071),32879!==n&&35866!==n||t.texParameteri(n,32882,33071),r.wrapS===bx&&r.wrapT===bx||console.warn(\\\\\\\"THREE.WebGLRenderer: Texture is not power of two. Texture.wrapS and Texture.wrapT should be set to THREE.ClampToEdgeWrapping.\\\\\\\"),t.texParameteri(n,10240,b(r.magFilter)),t.texParameteri(n,10241,b(r.minFilter)),r.minFilter!==Tx&&r.minFilter!==Ex&&console.warn(\\\\\\\"THREE.WebGLRenderer: Texture is not power of two. Texture.minFilter should be set to THREE.NearestFilter or THREE.LinearFilter.\\\\\\\")),!0===e.has(\\\\\\\"EXT_texture_filter_anisotropic\\\\\\\")){const o=e.get(\\\\\\\"EXT_texture_filter_anisotropic\\\\\\\");if(r.type===Px&&!1===e.has(\\\\\\\"OES_texture_float_linear\\\\\\\"))return;if(!1===a&&r.type===Rx&&!1===e.has(\\\\\\\"OES_texture_half_float_linear\\\\\\\"))return;(r.anisotropy>1||i.get(r).__currentAnisotropy)&&(t.texParameterf(n,o.TEXTURE_MAX_ANISOTROPY_EXT,Math.min(r.anisotropy,s.getMaxAnisotropy())),i.get(r).__currentAnisotropy=r.anisotropy)}}function L(e,n){void 0===e.__webglInit&&(e.__webglInit=!0,n.addEventListener(\\\\\\\"dispose\\\\\\\",w),e.__webglTexture=t.createTexture(),o.memory.textures++)}function O(e,i,s){let o=3553;i.isDataTexture2DArray&&(o=35866),i.isDataTexture3D&&(o=32879),L(e,i),n.activeTexture(33984+s),n.bindTexture(o,e.__webglTexture),t.pixelStorei(37440,i.flipY),t.pixelStorei(37441,i.premultiplyAlpha),t.pixelStorei(3317,i.unpackAlignment),t.pixelStorei(37443,0);const l=function(t){return!a&&(t.wrapS!==bx||t.wrapT!==bx||t.minFilter!==Tx&&t.minFilter!==Ex)}(i)&&!1===g(i.image),c=f(i.image,l,!1,h),u=g(c)||a,d=r.convert(i.format);let p,_=r.convert(i.type),m=x(i.internalFormat,d,_,i.encoding);N(o,i,u);const b=i.mipmaps;if(i.isDepthTexture)m=6402,a?m=i.type===Px?36012:i.type===Ox?33190:i.type===Ix?35056:33189:i.type===Px&&console.error(\\\\\\\"WebGLRenderer: Floating point depth texture requires WebGL2.\\\\\\\"),i.format===Bx&&6402===m&&i.type!==Lx&&i.type!==Ox&&(console.warn(\\\\\\\"THREE.WebGLRenderer: Use UnsignedShortType or UnsignedIntType for DepthFormat DepthTexture.\\\\\\\"),i.type=Lx,_=r.convert(i.type)),i.format===zx&&6402===m&&(m=34041,i.type!==Ix&&(console.warn(\\\\\\\"THREE.WebGLRenderer: Use UnsignedInt248Type for DepthStencilFormat DepthTexture.\\\\\\\"),i.type=Ix,_=r.convert(i.type))),n.texImage2D(3553,0,m,c.width,c.height,0,d,_,null);else if(i.isDataTexture)if(b.length>0&&u){for(let t=0,e=b.length;t<e;t++)p=b[t],n.texImage2D(3553,t,m,p.width,p.height,0,d,_,p.data);i.generateMipmaps=!1,e.__maxMipLevel=b.length-1}else n.texImage2D(3553,0,m,c.width,c.height,0,d,_,c.data),e.__maxMipLevel=0;else if(i.isCompressedTexture){for(let t=0,e=b.length;t<e;t++)p=b[t],i.format!==Dx&&i.format!==Fx?null!==d?n.compressedTexImage2D(3553,t,m,p.width,p.height,0,p.data):console.warn(\\\\\\\"THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()\\\\\\\"):n.texImage2D(3553,t,m,p.width,p.height,0,d,_,p.data);e.__maxMipLevel=b.length-1}else if(i.isDataTexture2DArray)n.texImage3D(35866,0,m,c.width,c.height,c.depth,0,d,_,c.data),e.__maxMipLevel=0;else if(i.isDataTexture3D)n.texImage3D(32879,0,m,c.width,c.height,c.depth,0,d,_,c.data),e.__maxMipLevel=0;else if(b.length>0&&u){for(let t=0,e=b.length;t<e;t++)p=b[t],n.texImage2D(3553,t,m,d,_,p);i.generateMipmaps=!1,e.__maxMipLevel=b.length-1}else n.texImage2D(3553,0,m,d,_,c),e.__maxMipLevel=0;v(i,u)&&y(o,i,c.width,c.height),e.__version=i.version,i.onUpdate&&i.onUpdate(i)}function P(e,s,o,a,l){const c=r.convert(o.format),h=r.convert(o.type),u=x(o.internalFormat,c,h,o.encoding);32879===l||35866===l?n.texImage3D(l,0,u,s.width,s.height,s.depth,0,c,h,null):n.texImage2D(l,0,u,s.width,s.height,0,c,h,null),n.bindFramebuffer(36160,e),t.framebufferTexture2D(36160,a,l,i.get(o).__webglTexture,0),n.bindFramebuffer(36160,null)}function R(e,n,i){if(t.bindRenderbuffer(36161,e),n.depthBuffer&&!n.stencilBuffer){let s=33189;if(i){const e=n.depthTexture;e&&e.isDepthTexture&&(e.type===Px?s=36012:e.type===Ox&&(s=33190));const i=F(n);t.renderbufferStorageMultisample(36161,i,s,n.width,n.height)}else t.renderbufferStorage(36161,s,n.width,n.height);t.framebufferRenderbuffer(36160,36096,36161,e)}else if(n.depthBuffer&&n.stencilBuffer){if(i){const e=F(n);t.renderbufferStorageMultisample(36161,e,35056,n.width,n.height)}else t.renderbufferStorage(36161,34041,n.width,n.height);t.framebufferRenderbuffer(36160,33306,36161,e)}else{const e=!0===n.isWebGLMultipleRenderTargets?n.texture[0]:n.texture,s=r.convert(e.format),o=r.convert(e.type),a=x(e.internalFormat,s,o,e.encoding);if(i){const e=F(n);t.renderbufferStorageMultisample(36161,e,a,n.width,n.height)}else t.renderbufferStorage(36161,a,n.width,n.height)}t.bindRenderbuffer(36161,null)}function I(e){const s=i.get(e),r=!0===e.isWebGLCubeRenderTarget;if(e.depthTexture){if(r)throw new Error(\\\\\\\"target.depthTexture not supported in Cube render targets\\\\\\\");!function(e,s){if(s&&s.isWebGLCubeRenderTarget)throw new Error(\\\\\\\"Depth Texture with cube render targets is not supported\\\\\\\");if(n.bindFramebuffer(36160,e),!s.depthTexture||!s.depthTexture.isDepthTexture)throw new Error(\\\\\\\"renderTarget.depthTexture must be an instance of THREE.DepthTexture\\\\\\\");i.get(s.depthTexture).__webglTexture&&s.depthTexture.image.width===s.width&&s.depthTexture.image.height===s.height||(s.depthTexture.image.width=s.width,s.depthTexture.image.height=s.height,s.depthTexture.needsUpdate=!0),M(s.depthTexture,0);const r=i.get(s.depthTexture).__webglTexture;if(s.depthTexture.format===Bx)t.framebufferTexture2D(36160,36096,3553,r,0);else{if(s.depthTexture.format!==zx)throw new Error(\\\\\\\"Unknown depthTexture format\\\\\\\");t.framebufferTexture2D(36160,33306,3553,r,0)}}(s.__webglFramebuffer,e)}else if(r){s.__webglDepthbuffer=[];for(let i=0;i<6;i++)n.bindFramebuffer(36160,s.__webglFramebuffer[i]),s.__webglDepthbuffer[i]=t.createRenderbuffer(),R(s.__webglDepthbuffer[i],e,!1)}else n.bindFramebuffer(36160,s.__webglFramebuffer),s.__webglDepthbuffer=t.createRenderbuffer(),R(s.__webglDepthbuffer,e,!1);n.bindFramebuffer(36160,null)}function F(t){return a&&t.isWebGLMultisampleRenderTarget?Math.min(u,t.samples):0}let D=!1,B=!1;this.allocateTextureUnit=function(){const t=A;return t>=l&&console.warn(\\\\\\\"THREE.WebGLTextures: Trying to use \\\\\\\"+t+\\\\\\\" texture units while this GPU supports only \\\\\\\"+l),A+=1,t},this.resetTextureUnits=function(){A=0},this.setTexture2D=M,this.setTexture2DArray=function(t,e){const s=i.get(t);t.version>0&&s.__version!==t.version?O(s,t,e):(n.activeTexture(33984+e),n.bindTexture(35866,s.__webglTexture))},this.setTexture3D=function(t,e){const s=i.get(t);t.version>0&&s.__version!==t.version?O(s,t,e):(n.activeTexture(33984+e),n.bindTexture(32879,s.__webglTexture))},this.setTextureCube=E,this.setupRenderTarget=function(e){const l=e.texture,c=i.get(e),h=i.get(l);e.addEventListener(\\\\\\\"dispose\\\\\\\",T),!0!==e.isWebGLMultipleRenderTargets&&(h.__webglTexture=t.createTexture(),h.__version=l.version,o.memory.textures++);const u=!0===e.isWebGLCubeRenderTarget,d=!0===e.isWebGLMultipleRenderTargets,p=!0===e.isWebGLMultisampleRenderTarget,_=l.isDataTexture3D||l.isDataTexture2DArray,m=g(e)||a;if(!a||l.format!==Fx||l.type!==Px&&l.type!==Rx||(l.format=Dx,console.warn(\\\\\\\"THREE.WebGLRenderer: Rendering to textures with RGB format is not supported. Using RGBA format instead.\\\\\\\")),u){c.__webglFramebuffer=[];for(let e=0;e<6;e++)c.__webglFramebuffer[e]=t.createFramebuffer()}else if(c.__webglFramebuffer=t.createFramebuffer(),d)if(s.drawBuffers){const n=e.texture;for(let e=0,s=n.length;e<s;e++){const s=i.get(n[e]);void 0===s.__webglTexture&&(s.__webglTexture=t.createTexture(),o.memory.textures++)}}else console.warn(\\\\\\\"THREE.WebGLRenderer: WebGLMultipleRenderTargets can only be used with WebGL2 or WEBGL_draw_buffers extension.\\\\\\\");else if(p)if(a){c.__webglMultisampledFramebuffer=t.createFramebuffer(),c.__webglColorRenderbuffer=t.createRenderbuffer(),t.bindRenderbuffer(36161,c.__webglColorRenderbuffer);const i=r.convert(l.format),s=r.convert(l.type),o=x(l.internalFormat,i,s,l.encoding),a=F(e);t.renderbufferStorageMultisample(36161,a,o,e.width,e.height),n.bindFramebuffer(36160,c.__webglMultisampledFramebuffer),t.framebufferRenderbuffer(36160,36064,36161,c.__webglColorRenderbuffer),t.bindRenderbuffer(36161,null),e.depthBuffer&&(c.__webglDepthRenderbuffer=t.createRenderbuffer(),R(c.__webglDepthRenderbuffer,e,!0)),n.bindFramebuffer(36160,null)}else console.warn(\\\\\\\"THREE.WebGLRenderer: WebGLMultisampleRenderTarget can only be used with WebGL2.\\\\\\\");if(u){n.bindTexture(34067,h.__webglTexture),N(34067,l,m);for(let t=0;t<6;t++)P(c.__webglFramebuffer[t],e,l,36064,34069+t);v(l,m)&&y(34067,l,e.width,e.height),n.unbindTexture()}else if(d){const t=e.texture;for(let s=0,r=t.length;s<r;s++){const r=t[s],o=i.get(r);n.bindTexture(3553,o.__webglTexture),N(3553,r,m),P(c.__webglFramebuffer,e,r,36064+s,3553),v(r,m)&&y(3553,r,e.width,e.height)}n.unbindTexture()}else{let t=3553;if(_)if(a){t=l.isDataTexture3D?32879:35866}else console.warn(\\\\\\\"THREE.DataTexture3D and THREE.DataTexture2DArray only supported with WebGL2.\\\\\\\");n.bindTexture(t,h.__webglTexture),N(t,l,m),P(c.__webglFramebuffer,e,l,36064,t),v(l,m)&&y(t,l,e.width,e.height,e.depth),n.unbindTexture()}e.depthBuffer&&I(e)},this.updateRenderTargetMipmap=function(t){const e=g(t)||a,s=!0===t.isWebGLMultipleRenderTargets?t.texture:[t.texture];for(let r=0,o=s.length;r<o;r++){const o=s[r];if(v(o,e)){const e=t.isWebGLCubeRenderTarget?34067:3553,s=i.get(o).__webglTexture;n.bindTexture(e,s),y(e,o,t.width,t.height),n.unbindTexture()}}},this.updateMultisampleRenderTarget=function(e){if(e.isWebGLMultisampleRenderTarget)if(a){const s=e.width,r=e.height;let o=16384;e.depthBuffer&&(o|=256),e.stencilBuffer&&(o|=1024);const a=i.get(e);n.bindFramebuffer(36008,a.__webglMultisampledFramebuffer),n.bindFramebuffer(36009,a.__webglFramebuffer),t.blitFramebuffer(0,0,s,r,0,0,s,r,o,9728),n.bindFramebuffer(36008,null),n.bindFramebuffer(36009,a.__webglMultisampledFramebuffer)}else console.warn(\\\\\\\"THREE.WebGLRenderer: WebGLMultisampleRenderTarget can only be used with WebGL2.\\\\\\\")},this.safeSetTexture2D=function(t,e){t&&t.isWebGLRenderTarget&&(!1===D&&(console.warn(\\\\\\\"THREE.WebGLTextures.safeSetTexture2D: don't use render targets as textures. Use their .texture property instead.\\\\\\\"),D=!0),t=t.texture),M(t,e)},this.safeSetTextureCube=function(t,e){t&&t.isWebGLCubeRenderTarget&&(!1===B&&(console.warn(\\\\\\\"THREE.WebGLTextures.safeSetTextureCube: don't use cube render targets as textures. Use their .texture property instead.\\\\\\\"),B=!0),t=t.texture),E(t,e)}}function CE(t,e,n){const i=n.isWebGL2;return{convert:function(t){let n;if(t===Nx)return 5121;if(1017===t)return 32819;if(1018===t)return 32820;if(1019===t)return 33635;if(1010===t)return 5120;if(1011===t)return 5122;if(t===Lx)return 5123;if(1013===t)return 5124;if(t===Ox)return 5125;if(t===Px)return 5126;if(t===Rx)return i?5131:(n=e.get(\\\\\\\"OES_texture_half_float\\\\\\\"),null!==n?n.HALF_FLOAT_OES:null);if(1021===t)return 6406;if(t===Fx)return 6407;if(t===Dx)return 6408;if(1024===t)return 6409;if(1025===t)return 6410;if(t===Bx)return 6402;if(t===zx)return 34041;if(1028===t)return 6403;if(1029===t)return 36244;if(1030===t)return 33319;if(1031===t)return 33320;if(1032===t)return 36248;if(1033===t)return 36249;if(33776===t||33777===t||33778===t||33779===t){if(n=e.get(\\\\\\\"WEBGL_compressed_texture_s3tc\\\\\\\"),null===n)return null;if(33776===t)return n.COMPRESSED_RGB_S3TC_DXT1_EXT;if(33777===t)return n.COMPRESSED_RGBA_S3TC_DXT1_EXT;if(33778===t)return n.COMPRESSED_RGBA_S3TC_DXT3_EXT;if(33779===t)return n.COMPRESSED_RGBA_S3TC_DXT5_EXT}if(35840===t||35841===t||35842===t||35843===t){if(n=e.get(\\\\\\\"WEBGL_compressed_texture_pvrtc\\\\\\\"),null===n)return null;if(35840===t)return n.COMPRESSED_RGB_PVRTC_4BPPV1_IMG;if(35841===t)return n.COMPRESSED_RGB_PVRTC_2BPPV1_IMG;if(35842===t)return n.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;if(35843===t)return n.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG}if(36196===t)return n=e.get(\\\\\\\"WEBGL_compressed_texture_etc1\\\\\\\"),null!==n?n.COMPRESSED_RGB_ETC1_WEBGL:null;if((37492===t||37496===t)&&(n=e.get(\\\\\\\"WEBGL_compressed_texture_etc\\\\\\\"),null!==n)){if(37492===t)return n.COMPRESSED_RGB8_ETC2;if(37496===t)return n.COMPRESSED_RGBA8_ETC2_EAC}return 37808===t||37809===t||37810===t||37811===t||37812===t||37813===t||37814===t||37815===t||37816===t||37817===t||37818===t||37819===t||37820===t||37821===t||37840===t||37841===t||37842===t||37843===t||37844===t||37845===t||37846===t||37847===t||37848===t||37849===t||37850===t||37851===t||37852===t||37853===t?(n=e.get(\\\\\\\"WEBGL_compressed_texture_astc\\\\\\\"),null!==n?t:null):36492===t?(n=e.get(\\\\\\\"EXT_texture_compression_bptc\\\\\\\"),null!==n?t:null):t===Ix?i?34042:(n=e.get(\\\\\\\"WEBGL_depth_texture\\\\\\\"),null!==n?n.UNSIGNED_INT_24_8_WEBGL:null):void 0}}}class NE extends DT{constructor(t=[]){super(),this.cameras=t}}NE.prototype.isArrayCamera=!0;class LE extends Nw{constructor(){super(),this.type=\\\\\\\"Group\\\\\\\"}}LE.prototype.isGroup=!0;const OE={type:\\\\\\\"move\\\\\\\"};class PE{constructor(){this._targetRay=null,this._grip=null,this._hand=null}getHandSpace(){return null===this._hand&&(this._hand=new LE,this._hand.matrixAutoUpdate=!1,this._hand.visible=!1,this._hand.joints={},this._hand.inputState={pinching:!1}),this._hand}getTargetRaySpace(){return null===this._targetRay&&(this._targetRay=new LE,this._targetRay.matrixAutoUpdate=!1,this._targetRay.visible=!1,this._targetRay.hasLinearVelocity=!1,this._targetRay.linearVelocity=new Sb,this._targetRay.hasAngularVelocity=!1,this._targetRay.angularVelocity=new Sb),this._targetRay}getGripSpace(){return null===this._grip&&(this._grip=new LE,this._grip.matrixAutoUpdate=!1,this._grip.visible=!1,this._grip.hasLinearVelocity=!1,this._grip.linearVelocity=new Sb,this._grip.hasAngularVelocity=!1,this._grip.angularVelocity=new Sb),this._grip}dispatchEvent(t){return null!==this._targetRay&&this._targetRay.dispatchEvent(t),null!==this._grip&&this._grip.dispatchEvent(t),null!==this._hand&&this._hand.dispatchEvent(t),this}disconnect(t){return this.dispatchEvent({type:\\\\\\\"disconnected\\\\\\\",data:t}),null!==this._targetRay&&(this._targetRay.visible=!1),null!==this._grip&&(this._grip.visible=!1),null!==this._hand&&(this._hand.visible=!1),this}update(t,e,n){let i=null,s=null,r=null;const o=this._targetRay,a=this._grip,l=this._hand;if(t&&\\\\\\\"visible-blurred\\\\\\\"!==e.session.visibilityState)if(null!==o&&(i=e.getPose(t.targetRaySpace,n),null!==i&&(o.matrix.fromArray(i.transform.matrix),o.matrix.decompose(o.position,o.rotation,o.scale),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(OE))),l&&t.hand){r=!0;for(const i of t.hand.values()){const t=e.getJointPose(i,n);if(void 0===l.joints[i.jointName]){const t=new LE;t.matrixAutoUpdate=!1,t.visible=!1,l.joints[i.jointName]=t,l.add(t)}const s=l.joints[i.jointName];null!==t&&(s.matrix.fromArray(t.transform.matrix),s.matrix.decompose(s.position,s.rotation,s.scale),s.jointRadius=t.radius),s.visible=null!==t}const i=l.joints[\\\\\\\"index-finger-tip\\\\\\\"],s=l.joints[\\\\\\\"thumb-tip\\\\\\\"],o=i.position.distanceTo(s.position),a=.02,c=.005;l.inputState.pinching&&o>a+c?(l.inputState.pinching=!1,this.dispatchEvent({type:\\\\\\\"pinchend\\\\\\\",handedness:t.handedness,target:this})):!l.inputState.pinching&&o<=a-c&&(l.inputState.pinching=!0,this.dispatchEvent({type:\\\\\\\"pinchstart\\\\\\\",handedness:t.handedness,target:this}))}else null!==a&&t.gripSpace&&(s=e.getPose(t.gripSpace,n),null!==s&&(a.matrix.fromArray(s.transform.matrix),a.matrix.decompose(a.position,a.rotation,a.scale),s.linearVelocity?(a.hasLinearVelocity=!0,a.linearVelocity.copy(s.linearVelocity)):a.hasLinearVelocity=!1,s.angularVelocity?(a.hasAngularVelocity=!0,a.angularVelocity.copy(s.angularVelocity)):a.hasAngularVelocity=!1));return null!==o&&(o.visible=null!==i),null!==a&&(a.visible=null!==s),null!==l&&(l.visible=null!==r),this}}class RE extends tb{constructor(t,e){super();const n=this,i=t.state;let s=null,r=1,o=null,a=\\\\\\\"local-floor\\\\\\\",l=null,c=null,h=null,u=null,d=null,p=!1,_=null,m=null,f=null,g=null,v=null,y=null;const x=[],b=new Map,w=new DT;w.layers.enable(1),w.viewport=new Tb;const T=new DT;T.layers.enable(2),T.viewport=new Tb;const A=[w,T],M=new NE;M.layers.enable(1),M.layers.enable(2);let E=null,S=null;function C(t){const e=b.get(t.inputSource);e&&e.dispatchEvent({type:t.type,data:t.inputSource})}function N(){b.forEach((function(t,e){t.disconnect(e)})),b.clear(),E=null,S=null,i.bindXRFramebuffer(null),t.setRenderTarget(t.getRenderTarget()),h&&e.deleteFramebuffer(h),_&&e.deleteFramebuffer(_),m&&e.deleteRenderbuffer(m),f&&e.deleteRenderbuffer(f),h=null,_=null,m=null,f=null,d=null,u=null,c=null,s=null,F.stop(),n.isPresenting=!1,n.dispatchEvent({type:\\\\\\\"sessionend\\\\\\\"})}function L(t){const e=s.inputSources;for(let t=0;t<x.length;t++)b.set(e[t],x[t]);for(let e=0;e<t.removed.length;e++){const n=t.removed[e],i=b.get(n);i&&(i.dispatchEvent({type:\\\\\\\"disconnected\\\\\\\",data:n}),b.delete(n))}for(let e=0;e<t.added.length;e++){const n=t.added[e],i=b.get(n);i&&i.dispatchEvent({type:\\\\\\\"connected\\\\\\\",data:n})}}this.cameraAutoUpdate=!0,this.enabled=!1,this.isPresenting=!1,this.getController=function(t){let e=x[t];return void 0===e&&(e=new PE,x[t]=e),e.getTargetRaySpace()},this.getControllerGrip=function(t){let e=x[t];return void 0===e&&(e=new PE,x[t]=e),e.getGripSpace()},this.getHand=function(t){let e=x[t];return void 0===e&&(e=new PE,x[t]=e),e.getHandSpace()},this.setFramebufferScaleFactor=function(t){r=t,!0===n.isPresenting&&console.warn(\\\\\\\"THREE.WebXRManager: Cannot change framebuffer scale while presenting.\\\\\\\")},this.setReferenceSpaceType=function(t){a=t,!0===n.isPresenting&&console.warn(\\\\\\\"THREE.WebXRManager: Cannot change reference space type while presenting.\\\\\\\")},this.getReferenceSpace=function(){return o},this.getBaseLayer=function(){return null!==u?u:d},this.getBinding=function(){return c},this.getFrame=function(){return g},this.getSession=function(){return s},this.setSession=async function(t){if(s=t,null!==s){s.addEventListener(\\\\\\\"select\\\\\\\",C),s.addEventListener(\\\\\\\"selectstart\\\\\\\",C),s.addEventListener(\\\\\\\"selectend\\\\\\\",C),s.addEventListener(\\\\\\\"squeeze\\\\\\\",C),s.addEventListener(\\\\\\\"squeezestart\\\\\\\",C),s.addEventListener(\\\\\\\"squeezeend\\\\\\\",C),s.addEventListener(\\\\\\\"end\\\\\\\",N),s.addEventListener(\\\\\\\"inputsourceschange\\\\\\\",L);const t=e.getContextAttributes();if(!0!==t.xrCompatible&&await e.makeXRCompatible(),void 0===s.renderState.layers){const n={antialias:t.antialias,alpha:t.alpha,depth:t.depth,stencil:t.stencil,framebufferScaleFactor:r};d=new XRWebGLLayer(s,e,n),s.updateRenderState({baseLayer:d})}else if(e instanceof WebGLRenderingContext){const n={antialias:!0,alpha:t.alpha,depth:t.depth,stencil:t.stencil,framebufferScaleFactor:r};d=new XRWebGLLayer(s,e,n),s.updateRenderState({layers:[d]})}else{p=t.antialias;let n=null;t.depth&&(y=256,t.stencil&&(y|=1024),v=t.stencil?33306:36096,n=t.stencil?35056:33190);const o={colorFormat:t.alpha?32856:32849,depthFormat:n,scaleFactor:r};c=new XRWebGLBinding(s,e),u=c.createProjectionLayer(o),h=e.createFramebuffer(),s.updateRenderState({layers:[u]}),p&&(_=e.createFramebuffer(),m=e.createRenderbuffer(),e.bindRenderbuffer(36161,m),e.renderbufferStorageMultisample(36161,4,32856,u.textureWidth,u.textureHeight),i.bindFramebuffer(36160,_),e.framebufferRenderbuffer(36160,36064,36161,m),e.bindRenderbuffer(36161,null),null!==n&&(f=e.createRenderbuffer(),e.bindRenderbuffer(36161,f),e.renderbufferStorageMultisample(36161,4,n,u.textureWidth,u.textureHeight),e.framebufferRenderbuffer(36160,v,36161,f),e.bindRenderbuffer(36161,null)),i.bindFramebuffer(36160,null))}o=await s.requestReferenceSpace(a),F.setContext(s),F.start(),n.isPresenting=!0,n.dispatchEvent({type:\\\\\\\"sessionstart\\\\\\\"})}};const O=new Sb,P=new Sb;function R(t,e){null===e?t.matrixWorld.copy(t.matrix):t.matrixWorld.multiplyMatrices(e.matrixWorld,t.matrix),t.matrixWorldInverse.copy(t.matrixWorld).invert()}this.updateCamera=function(t){if(null===s)return;M.near=T.near=w.near=t.near,M.far=T.far=w.far=t.far,E===M.near&&S===M.far||(s.updateRenderState({depthNear:M.near,depthFar:M.far}),E=M.near,S=M.far);const e=t.parent,n=M.cameras;R(M,e);for(let t=0;t<n.length;t++)R(n[t],e);M.matrixWorld.decompose(M.position,M.quaternion,M.scale),t.position.copy(M.position),t.quaternion.copy(M.quaternion),t.scale.copy(M.scale),t.matrix.copy(M.matrix),t.matrixWorld.copy(M.matrixWorld);const i=t.children;for(let t=0,e=i.length;t<e;t++)i[t].updateMatrixWorld(!0);2===n.length?function(t,e,n){O.setFromMatrixPosition(e.matrixWorld),P.setFromMatrixPosition(n.matrixWorld);const i=O.distanceTo(P),s=e.projectionMatrix.elements,r=n.projectionMatrix.elements,o=s[14]/(s[10]-1),a=s[14]/(s[10]+1),l=(s[9]+1)/s[5],c=(s[9]-1)/s[5],h=(s[8]-1)/s[0],u=(r[8]+1)/r[0],d=o*h,p=o*u,_=i/(-h+u),m=_*-h;e.matrixWorld.decompose(t.position,t.quaternion,t.scale),t.translateX(m),t.translateZ(_),t.matrixWorld.compose(t.position,t.quaternion,t.scale),t.matrixWorldInverse.copy(t.matrixWorld).invert();const f=o+_,g=a+_,v=d-m,y=p+(i-m),x=l*a/g*f,b=c*a/g*f;t.projectionMatrix.makePerspective(v,y,x,b,f,g)}(M,w,T):M.projectionMatrix.copy(w.projectionMatrix)},this.getCamera=function(){return M},this.getFoveation=function(){return null!==u?u.fixedFoveation:null!==d?d.fixedFoveation:void 0},this.setFoveation=function(t){null!==u&&(u.fixedFoveation=t),null!==d&&void 0!==d.fixedFoveation&&(d.fixedFoveation=t)};let I=null;const F=new YT;F.setAnimationLoop((function(t,n){if(l=n.getViewerPose(o),g=n,null!==l){const t=l.views;null!==d&&i.bindXRFramebuffer(d.framebuffer);let n=!1;t.length!==M.cameras.length&&(M.cameras.length=0,n=!0);for(let s=0;s<t.length;s++){const r=t[s];let o=null;if(null!==d)o=d.getViewport(r);else{const t=c.getViewSubImage(u,r);i.bindXRFramebuffer(h),void 0!==t.depthStencilTexture&&e.framebufferTexture2D(36160,v,3553,t.depthStencilTexture,0),e.framebufferTexture2D(36160,36064,3553,t.colorTexture,0),o=t.viewport}const a=A[s];a.matrix.fromArray(r.transform.matrix),a.projectionMatrix.fromArray(r.projectionMatrix),a.viewport.set(o.x,o.y,o.width,o.height),0===s&&M.matrix.copy(a.matrix),!0===n&&M.cameras.push(a)}p&&(i.bindXRFramebuffer(_),null!==y&&e.clear(y))}const r=s.inputSources;for(let t=0;t<x.length;t++){const e=x[t],i=r[t];e.update(i,n,o)}if(I&&I(t,n),p){const t=u.textureWidth,n=u.textureHeight;i.bindFramebuffer(36008,_),i.bindFramebuffer(36009,h),e.invalidateFramebuffer(36008,[v]),e.invalidateFramebuffer(36009,[v]),e.blitFramebuffer(0,0,t,n,0,0,t,n,16384,9728),e.invalidateFramebuffer(36008,[36064]),i.bindFramebuffer(36008,null),i.bindFramebuffer(36009,null),i.bindFramebuffer(36160,_)}g=null})),this.setAnimationLoop=function(t){I=t},this.dispose=function(){}}}function IE(t){function e(e,n){e.opacity.value=n.opacity,n.color&&e.diffuse.value.copy(n.color),n.emissive&&e.emissive.value.copy(n.emissive).multiplyScalar(n.emissiveIntensity),n.map&&(e.map.value=n.map),n.alphaMap&&(e.alphaMap.value=n.alphaMap),n.specularMap&&(e.specularMap.value=n.specularMap),n.alphaTest>0&&(e.alphaTest.value=n.alphaTest);const i=t.get(n).envMap;if(i){e.envMap.value=i,e.flipEnvMap.value=i.isCubeTexture&&!1===i.isRenderTargetTexture?-1:1,e.reflectivity.value=n.reflectivity,e.ior.value=n.ior,e.refractionRatio.value=n.refractionRatio;const s=t.get(i).__maxMipLevel;void 0!==s&&(e.maxMipLevel.value=s)}let s,r;n.lightMap&&(e.lightMap.value=n.lightMap,e.lightMapIntensity.value=n.lightMapIntensity),n.aoMap&&(e.aoMap.value=n.aoMap,e.aoMapIntensity.value=n.aoMapIntensity),n.map?s=n.map:n.specularMap?s=n.specularMap:n.displacementMap?s=n.displacementMap:n.normalMap?s=n.normalMap:n.bumpMap?s=n.bumpMap:n.roughnessMap?s=n.roughnessMap:n.metalnessMap?s=n.metalnessMap:n.alphaMap?s=n.alphaMap:n.emissiveMap?s=n.emissiveMap:n.clearcoatMap?s=n.clearcoatMap:n.clearcoatNormalMap?s=n.clearcoatNormalMap:n.clearcoatRoughnessMap?s=n.clearcoatRoughnessMap:n.specularIntensityMap?s=n.specularIntensityMap:n.specularTintMap?s=n.specularTintMap:n.transmissionMap?s=n.transmissionMap:n.thicknessMap&&(s=n.thicknessMap),void 0!==s&&(s.isWebGLRenderTarget&&(s=s.texture),!0===s.matrixAutoUpdate&&s.updateMatrix(),e.uvTransform.value.copy(s.matrix)),n.aoMap?r=n.aoMap:n.lightMap&&(r=n.lightMap),void 0!==r&&(r.isWebGLRenderTarget&&(r=r.texture),!0===r.matrixAutoUpdate&&r.updateMatrix(),e.uv2Transform.value.copy(r.matrix))}function n(e,n){e.roughness.value=n.roughness,e.metalness.value=n.metalness,n.roughnessMap&&(e.roughnessMap.value=n.roughnessMap),n.metalnessMap&&(e.metalnessMap.value=n.metalnessMap),n.emissiveMap&&(e.emissiveMap.value=n.emissiveMap),n.bumpMap&&(e.bumpMap.value=n.bumpMap,e.bumpScale.value=n.bumpScale,1===n.side&&(e.bumpScale.value*=-1)),n.normalMap&&(e.normalMap.value=n.normalMap,e.normalScale.value.copy(n.normalScale),1===n.side&&e.normalScale.value.negate()),n.displacementMap&&(e.displacementMap.value=n.displacementMap,e.displacementScale.value=n.displacementScale,e.displacementBias.value=n.displacementBias);t.get(n).envMap&&(e.envMapIntensity.value=n.envMapIntensity)}return{refreshFogUniforms:function(t,e){t.fogColor.value.copy(e.color),e.isFog?(t.fogNear.value=e.near,t.fogFar.value=e.far):e.isFogExp2&&(t.fogDensity.value=e.density)},refreshMaterialUniforms:function(t,i,s,r,o){i.isMeshBasicMaterial?e(t,i):i.isMeshLambertMaterial?(e(t,i),function(t,e){e.emissiveMap&&(t.emissiveMap.value=e.emissiveMap)}(t,i)):i.isMeshToonMaterial?(e(t,i),function(t,e){e.gradientMap&&(t.gradientMap.value=e.gradientMap);e.emissiveMap&&(t.emissiveMap.value=e.emissiveMap);e.bumpMap&&(t.bumpMap.value=e.bumpMap,t.bumpScale.value=e.bumpScale,1===e.side&&(t.bumpScale.value*=-1));e.normalMap&&(t.normalMap.value=e.normalMap,t.normalScale.value.copy(e.normalScale),1===e.side&&t.normalScale.value.negate());e.displacementMap&&(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias)}(t,i)):i.isMeshPhongMaterial?(e(t,i),function(t,e){t.specular.value.copy(e.specular),t.shininess.value=Math.max(e.shininess,1e-4),e.emissiveMap&&(t.emissiveMap.value=e.emissiveMap);e.bumpMap&&(t.bumpMap.value=e.bumpMap,t.bumpScale.value=e.bumpScale,1===e.side&&(t.bumpScale.value*=-1));e.normalMap&&(t.normalMap.value=e.normalMap,t.normalScale.value.copy(e.normalScale),1===e.side&&t.normalScale.value.negate());e.displacementMap&&(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias)}(t,i)):i.isMeshStandardMaterial?(e(t,i),i.isMeshPhysicalMaterial?function(t,e,i){n(t,e),t.ior.value=e.ior,e.sheen>0&&(t.sheenTint.value.copy(e.sheenTint).multiplyScalar(e.sheen),t.sheenRoughness.value=e.sheenRoughness);e.clearcoat>0&&(t.clearcoat.value=e.clearcoat,t.clearcoatRoughness.value=e.clearcoatRoughness,e.clearcoatMap&&(t.clearcoatMap.value=e.clearcoatMap),e.clearcoatRoughnessMap&&(t.clearcoatRoughnessMap.value=e.clearcoatRoughnessMap),e.clearcoatNormalMap&&(t.clearcoatNormalScale.value.copy(e.clearcoatNormalScale),t.clearcoatNormalMap.value=e.clearcoatNormalMap,1===e.side&&t.clearcoatNormalScale.value.negate()));e.transmission>0&&(t.transmission.value=e.transmission,t.transmissionSamplerMap.value=i.texture,t.transmissionSamplerSize.value.set(i.width,i.height),e.transmissionMap&&(t.transmissionMap.value=e.transmissionMap),t.thickness.value=e.thickness,e.thicknessMap&&(t.thicknessMap.value=e.thicknessMap),t.attenuationDistance.value=e.attenuationDistance,t.attenuationTint.value.copy(e.attenuationTint));t.specularIntensity.value=e.specularIntensity,t.specularTint.value.copy(e.specularTint),e.specularIntensityMap&&(t.specularIntensityMap.value=e.specularIntensityMap);e.specularTintMap&&(t.specularTintMap.value=e.specularTintMap)}(t,i,o):n(t,i)):i.isMeshMatcapMaterial?(e(t,i),function(t,e){e.matcap&&(t.matcap.value=e.matcap);e.bumpMap&&(t.bumpMap.value=e.bumpMap,t.bumpScale.value=e.bumpScale,1===e.side&&(t.bumpScale.value*=-1));e.normalMap&&(t.normalMap.value=e.normalMap,t.normalScale.value.copy(e.normalScale),1===e.side&&t.normalScale.value.negate());e.displacementMap&&(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias)}(t,i)):i.isMeshDepthMaterial?(e(t,i),function(t,e){e.displacementMap&&(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias)}(t,i)):i.isMeshDistanceMaterial?(e(t,i),function(t,e){e.displacementMap&&(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias);t.referencePosition.value.copy(e.referencePosition),t.nearDistance.value=e.nearDistance,t.farDistance.value=e.farDistance}(t,i)):i.isMeshNormalMaterial?(e(t,i),function(t,e){e.bumpMap&&(t.bumpMap.value=e.bumpMap,t.bumpScale.value=e.bumpScale,1===e.side&&(t.bumpScale.value*=-1));e.normalMap&&(t.normalMap.value=e.normalMap,t.normalScale.value.copy(e.normalScale),1===e.side&&t.normalScale.value.negate());e.displacementMap&&(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias)}(t,i)):i.isLineBasicMaterial?(function(t,e){t.diffuse.value.copy(e.color),t.opacity.value=e.opacity}(t,i),i.isLineDashedMaterial&&function(t,e){t.dashSize.value=e.dashSize,t.totalSize.value=e.dashSize+e.gapSize,t.scale.value=e.scale}(t,i)):i.isPointsMaterial?function(t,e,n,i){t.diffuse.value.copy(e.color),t.opacity.value=e.opacity,t.size.value=e.size*n,t.scale.value=.5*i,e.map&&(t.map.value=e.map);e.alphaMap&&(t.alphaMap.value=e.alphaMap);e.alphaTest>0&&(t.alphaTest.value=e.alphaTest);let s;e.map?s=e.map:e.alphaMap&&(s=e.alphaMap);void 0!==s&&(!0===s.matrixAutoUpdate&&s.updateMatrix(),t.uvTransform.value.copy(s.matrix))}(t,i,s,r):i.isSpriteMaterial?function(t,e){t.diffuse.value.copy(e.color),t.opacity.value=e.opacity,t.rotation.value=e.rotation,e.map&&(t.map.value=e.map);e.alphaMap&&(t.alphaMap.value=e.alphaMap);e.alphaTest>0&&(t.alphaTest.value=e.alphaTest);let n;e.map?n=e.map:e.alphaMap&&(n=e.alphaMap);void 0!==n&&(!0===n.matrixAutoUpdate&&n.updateMatrix(),t.uvTransform.value.copy(n.matrix))}(t,i):i.isShadowMaterial?(t.color.value.copy(i.color),t.opacity.value=i.opacity):i.isShaderMaterial&&(i.uniformsNeedUpdate=!1)}}}function FE(t={}){const e=void 0!==t.canvas?t.canvas:function(){const t=gb(\\\\\\\"canvas\\\\\\\");return t.style.display=\\\\\\\"block\\\\\\\",t}(),n=void 0!==t.context?t.context:null,i=void 0!==t.alpha&&t.alpha,s=void 0===t.depth||t.depth,r=void 0===t.stencil||t.stencil,o=void 0!==t.antialias&&t.antialias,a=void 0===t.premultipliedAlpha||t.premultipliedAlpha,l=void 0!==t.preserveDrawingBuffer&&t.preserveDrawingBuffer,c=void 0!==t.powerPreference?t.powerPreference:\\\\\\\"default\\\\\\\",h=void 0!==t.failIfMajorPerformanceCaveat&&t.failIfMajorPerformanceCaveat;let u=null,d=null;const p=[],_=[];this.domElement=e,this.debug={checkShaderErrors:!0},this.autoClear=!0,this.autoClearColor=!0,this.autoClearDepth=!0,this.autoClearStencil=!0,this.sortObjects=!0,this.clippingPlanes=[],this.localClippingEnabled=!1,this.gammaFactor=2,this.outputEncoding=qx,this.physicallyCorrectLights=!1,this.toneMapping=0,this.toneMappingExposure=1;const m=this;let f=!1,g=0,v=0,y=null,x=-1,b=null;const w=new Tb,T=new Tb;let A=null,M=e.width,E=e.height,S=1,C=null,N=null;const L=new Tb(0,0,M,E),O=new Tb(0,0,M,E);let P=!1;const R=[],I=new XT;let F=!1,D=!1,B=null;const z=new sw,k=new Sb,U={background:null,fog:null,environment:null,overrideMaterial:null,isScene:!0};function G(){return null===y?S:1}let V,H,j,W,q,X,Y,$,J,Z,K,Q,tt,et,nt,it,st,rt,ot,at,lt,ct,ht,ut=n;function dt(t,n){for(let i=0;i<t.length;i++){const s=t[i],r=e.getContext(s,n);if(null!==r)return r}return null}try{const t={alpha:i,depth:s,stencil:r,antialias:o,premultipliedAlpha:a,preserveDrawingBuffer:l,powerPreference:c,failIfMajorPerformanceCaveat:h};if(e.addEventListener(\\\\\\\"webglcontextlost\\\\\\\",mt,!1),e.addEventListener(\\\\\\\"webglcontextrestored\\\\\\\",ft,!1),null===ut){const e=[\\\\\\\"webgl2\\\\\\\",\\\\\\\"webgl\\\\\\\",\\\\\\\"experimental-webgl\\\\\\\"];if(!0===m.isWebGL1Renderer&&e.shift(),ut=dt(e,t),null===ut)throw dt(e)?new Error(\\\\\\\"Error creating WebGL context with your selected attributes.\\\\\\\"):new Error(\\\\\\\"Error creating WebGL context.\\\\\\\")}void 0===ut.getShaderPrecisionFormat&&(ut.getShaderPrecisionFormat=function(){return{rangeMin:1,rangeMax:1,precision:1}})}catch(t){throw console.error(\\\\\\\"THREE.WebGLRenderer: \\\\\\\"+t.message),t}function pt(){V=new PA(ut),H=new iA(ut,V,t),V.init(H),ct=new CE(ut,V,H),j=new EE(ut,V,H),R[0]=1029,W=new FA(ut),q=new dE,X=new SE(ut,V,j,q,H,ct,W),Y=new rA(m),$=new OA(m),J=new $T(ut,H),ht=new eA(ut,V,J,H),Z=new RA(ut,J,W,ht),K=new GA(ut,Z,J,W),ot=new UA(ut,H,X),it=new sA(q),Q=new uE(m,Y,$,V,H,ht,it),tt=new IE(q),et=new fE(q),nt=new wE(V,H),rt=new tA(m,Y,j,K,a),st=new ME(m,K,H),at=new nA(ut,V,W,H),lt=new IA(ut,V,W,H),W.programs=Q.programs,m.capabilities=H,m.extensions=V,m.properties=q,m.renderLists=et,m.shadowMap=st,m.state=j,m.info=W}pt();const _t=new RE(m,ut);function mt(t){t.preventDefault(),console.log(\\\\\\\"THREE.WebGLRenderer: Context Lost.\\\\\\\"),f=!0}function ft(){console.log(\\\\\\\"THREE.WebGLRenderer: Context Restored.\\\\\\\"),f=!1;const t=W.autoReset,e=st.enabled,n=st.autoUpdate,i=st.needsUpdate,s=st.type;pt(),W.autoReset=t,st.enabled=e,st.autoUpdate=n,st.needsUpdate=i,st.type=s}function gt(t){const e=t.target;e.removeEventListener(\\\\\\\"dispose\\\\\\\",gt),function(t){(function(t){const e=q.get(t).programs;void 0!==e&&e.forEach((function(t){Q.releaseProgram(t)}))})(t),q.remove(t)}(e)}this.xr=_t,this.getContext=function(){return ut},this.getContextAttributes=function(){return ut.getContextAttributes()},this.forceContextLoss=function(){const t=V.get(\\\\\\\"WEBGL_lose_context\\\\\\\");t&&t.loseContext()},this.forceContextRestore=function(){const t=V.get(\\\\\\\"WEBGL_lose_context\\\\\\\");t&&t.restoreContext()},this.getPixelRatio=function(){return S},this.setPixelRatio=function(t){void 0!==t&&(S=t,this.setSize(M,E,!1))},this.getSize=function(t){return t.set(M,E)},this.setSize=function(t,n,i){_t.isPresenting?console.warn(\\\\\\\"THREE.WebGLRenderer: Can't change size while VR device is presenting.\\\\\\\"):(M=t,E=n,e.width=Math.floor(t*S),e.height=Math.floor(n*S),!1!==i&&(e.style.width=t+\\\\\\\"px\\\\\\\",e.style.height=n+\\\\\\\"px\\\\\\\"),this.setViewport(0,0,t,n))},this.getDrawingBufferSize=function(t){return t.set(M*S,E*S).floor()},this.setDrawingBufferSize=function(t,n,i){M=t,E=n,S=i,e.width=Math.floor(t*i),e.height=Math.floor(n*i),this.setViewport(0,0,t,n)},this.getCurrentViewport=function(t){return t.copy(w)},this.getViewport=function(t){return t.copy(L)},this.setViewport=function(t,e,n,i){t.isVector4?L.set(t.x,t.y,t.z,t.w):L.set(t,e,n,i),j.viewport(w.copy(L).multiplyScalar(S).floor())},this.getScissor=function(t){return t.copy(O)},this.setScissor=function(t,e,n,i){t.isVector4?O.set(t.x,t.y,t.z,t.w):O.set(t,e,n,i),j.scissor(T.copy(O).multiplyScalar(S).floor())},this.getScissorTest=function(){return P},this.setScissorTest=function(t){j.setScissorTest(P=t)},this.setOpaqueSort=function(t){C=t},this.setTransparentSort=function(t){N=t},this.getClearColor=function(t){return t.copy(rt.getClearColor())},this.setClearColor=function(){rt.setClearColor.apply(rt,arguments)},this.getClearAlpha=function(){return rt.getClearAlpha()},this.setClearAlpha=function(){rt.setClearAlpha.apply(rt,arguments)},this.clear=function(t,e,n){let i=0;(void 0===t||t)&&(i|=16384),(void 0===e||e)&&(i|=256),(void 0===n||n)&&(i|=1024),ut.clear(i)},this.clearColor=function(){this.clear(!0,!1,!1)},this.clearDepth=function(){this.clear(!1,!0,!1)},this.clearStencil=function(){this.clear(!1,!1,!0)},this.dispose=function(){e.removeEventListener(\\\\\\\"webglcontextlost\\\\\\\",mt,!1),e.removeEventListener(\\\\\\\"webglcontextrestored\\\\\\\",ft,!1),et.dispose(),nt.dispose(),q.dispose(),Y.dispose(),$.dispose(),K.dispose(),ht.dispose(),_t.dispose(),_t.removeEventListener(\\\\\\\"sessionstart\\\\\\\",yt),_t.removeEventListener(\\\\\\\"sessionend\\\\\\\",xt),B&&(B.dispose(),B=null),bt.stop()},this.renderBufferImmediate=function(t,e){ht.initAttributes();const n=q.get(t);t.hasPositions&&!n.position&&(n.position=ut.createBuffer()),t.hasNormals&&!n.normal&&(n.normal=ut.createBuffer()),t.hasUvs&&!n.uv&&(n.uv=ut.createBuffer()),t.hasColors&&!n.color&&(n.color=ut.createBuffer());const i=e.getAttributes();t.hasPositions&&(ut.bindBuffer(34962,n.position),ut.bufferData(34962,t.positionArray,35048),ht.enableAttribute(i.position.location),ut.vertexAttribPointer(i.position.location,3,5126,!1,0,0)),t.hasNormals&&(ut.bindBuffer(34962,n.normal),ut.bufferData(34962,t.normalArray,35048),ht.enableAttribute(i.normal.location),ut.vertexAttribPointer(i.normal.location,3,5126,!1,0,0)),t.hasUvs&&(ut.bindBuffer(34962,n.uv),ut.bufferData(34962,t.uvArray,35048),ht.enableAttribute(i.uv.location),ut.vertexAttribPointer(i.uv.location,2,5126,!1,0,0)),t.hasColors&&(ut.bindBuffer(34962,n.color),ut.bufferData(34962,t.colorArray,35048),ht.enableAttribute(i.color.location),ut.vertexAttribPointer(i.color.location,3,5126,!1,0,0)),ht.disableUnusedAttributes(),ut.drawArrays(4,0,t.count),t.count=0},this.renderBufferDirect=function(t,e,n,i,s,r){null===e&&(e=U);const o=s.isMesh&&s.matrixWorld.determinant()<0,a=Ct(t,e,n,i,s);j.setMaterial(i,o);let l=n.index;const c=n.attributes.position;if(null===l){if(void 0===c||0===c.count)return}else if(0===l.count)return;let h,u=1;!0===i.wireframe&&(l=Z.getWireframeAttribute(n),u=2),ht.setup(s,i,a,n,l);let d=at;null!==l&&(h=J.get(l),d=lt,d.setIndex(h));const p=null!==l?l.count:c.count,_=n.drawRange.start*u,m=n.drawRange.count*u,f=null!==r?r.start*u:0,g=null!==r?r.count*u:1/0,v=Math.max(_,f),y=Math.min(p,_+m,f+g)-1,x=Math.max(0,y-v+1);if(0!==x){if(s.isMesh)!0===i.wireframe?(j.setLineWidth(i.wireframeLinewidth*G()),d.setMode(1)):d.setMode(4);else if(s.isLine){let t=i.linewidth;void 0===t&&(t=1),j.setLineWidth(t*G()),s.isLineSegments?d.setMode(1):s.isLineLoop?d.setMode(2):d.setMode(3)}else s.isPoints?d.setMode(0):s.isSprite&&d.setMode(4);if(s.isInstancedMesh)d.renderInstances(v,x,s.count);else if(n.isInstancedBufferGeometry){const t=Math.min(n.instanceCount,n._maxInstanceCount);d.renderInstances(v,x,t)}else d.render(v,x)}},this.compile=function(t,e){d=nt.get(t),d.init(),_.push(d),t.traverseVisible((function(t){t.isLight&&t.layers.test(e.layers)&&(d.pushLight(t),t.castShadow&&d.pushShadow(t))})),d.setupLights(m.physicallyCorrectLights),t.traverse((function(e){const n=e.material;if(n)if(Array.isArray(n))for(let i=0;i<n.length;i++){Et(n[i],t,e)}else Et(n,t,e)})),_.pop(),d=null};let vt=null;function yt(){bt.stop()}function xt(){bt.start()}const bt=new YT;function wt(t,e,n,i){if(!1===t.visible)return;if(t.layers.test(e.layers))if(t.isGroup)n=t.renderOrder;else if(t.isLOD)!0===t.autoUpdate&&t.update(e);else if(t.isLight)d.pushLight(t),t.castShadow&&d.pushShadow(t);else if(t.isSprite){if(!t.frustumCulled||I.intersectsSprite(t)){i&&k.setFromMatrixPosition(t.matrixWorld).applyMatrix4(z);const e=K.update(t),s=t.material;s.visible&&u.push(t,e,s,n,k.z,null)}}else if(t.isImmediateRenderObject)i&&k.setFromMatrixPosition(t.matrixWorld).applyMatrix4(z),u.push(t,null,t.material,n,k.z,null);else if((t.isMesh||t.isLine||t.isPoints)&&(t.isSkinnedMesh&&t.skeleton.frame!==W.render.frame&&(t.skeleton.update(),t.skeleton.frame=W.render.frame),!t.frustumCulled||I.intersectsObject(t))){i&&k.setFromMatrixPosition(t.matrixWorld).applyMatrix4(z);const e=K.update(t),s=t.material;if(Array.isArray(s)){const i=e.groups;for(let r=0,o=i.length;r<o;r++){const o=i[r],a=s[o.materialIndex];a&&a.visible&&u.push(t,e,a,n,k.z,o)}}else s.visible&&u.push(t,e,s,n,k.z,null)}const s=t.children;for(let t=0,r=s.length;t<r;t++)wt(s[t],e,n,i)}function Tt(t,e,n,i){const s=t.opaque,r=t.transmissive,a=t.transparent;d.setupLightsView(n),r.length>0&&function(t,e,n){if(null===B){const t=!0===o&&!0===H.isWebGL2;B=new(t?Mb:Ab)(1024,1024,{generateMipmaps:!0,type:null!==ct.convert(Rx)?Rx:Nx,minFilter:Cx,magFilter:Tx,wrapS:bx,wrapT:bx})}const i=m.getRenderTarget();m.setRenderTarget(B),m.clear();const s=m.toneMapping;m.toneMapping=0,At(t,e,n),m.toneMapping=s,X.updateMultisampleRenderTarget(B),X.updateRenderTargetMipmap(B),m.setRenderTarget(i)}(s,e,n),i&&j.viewport(w.copy(i)),s.length>0&&At(s,e,n),r.length>0&&At(r,e,n),a.length>0&&At(a,e,n)}function At(t,e,n){const i=!0===e.isScene?e.overrideMaterial:null;for(let s=0,r=t.length;s<r;s++){const r=t[s],o=r.object,a=r.geometry,l=null===i?r.material:i,c=r.group;o.layers.test(n.layers)&&Mt(o,e,n,a,l,c)}}function Mt(t,e,n,i,s,r){if(t.onBeforeRender(m,e,n,i,s,r),t.modelViewMatrix.multiplyMatrices(n.matrixWorldInverse,t.matrixWorld),t.normalMatrix.getNormalMatrix(t.modelViewMatrix),s.onBeforeRender(m,e,n,i,t,r),t.isImmediateRenderObject){const r=Ct(n,e,i,s,t);j.setMaterial(s),ht.reset(),function(t,e){t.render((function(t){m.renderBufferImmediate(t,e)}))}(t,r)}else!0===s.transparent&&2===s.side?(s.side=1,s.needsUpdate=!0,m.renderBufferDirect(n,e,i,s,t,r),s.side=0,s.needsUpdate=!0,m.renderBufferDirect(n,e,i,s,t,r),s.side=2):m.renderBufferDirect(n,e,i,s,t,r);t.onAfterRender(m,e,n,i,s,r)}function Et(t,e,n){!0!==e.isScene&&(e=U);const i=q.get(t),s=d.state.lights,r=d.state.shadowsArray,o=s.state.version,a=Q.getParameters(t,s.state,r,e,n),l=Q.getProgramCacheKey(a);let c=i.programs;i.environment=t.isMeshStandardMaterial?e.environment:null,i.fog=e.fog,i.envMap=(t.isMeshStandardMaterial?$:Y).get(t.envMap||i.environment),void 0===c&&(t.addEventListener(\\\\\\\"dispose\\\\\\\",gt),c=new Map,i.programs=c);let h=c.get(l);if(void 0!==h){if(i.currentProgram===h&&i.lightsStateVersion===o)return St(t,a),h}else a.uniforms=Q.getUniforms(t),t.onBuild(a,m),t.onBeforeCompile(a,m),h=Q.acquireProgram(a,l),c.set(l,h),i.uniforms=a.uniforms;const u=i.uniforms;(t.isShaderMaterial||t.isRawShaderMaterial)&&!0!==t.clipping||(u.clippingPlanes=it.uniform),St(t,a),i.needsLights=function(t){return t.isMeshLambertMaterial||t.isMeshToonMaterial||t.isMeshPhongMaterial||t.isMeshStandardMaterial||t.isShadowMaterial||t.isShaderMaterial&&!0===t.lights}(t),i.lightsStateVersion=o,i.needsLights&&(u.ambientLightColor.value=s.state.ambient,u.lightProbe.value=s.state.probe,u.directionalLights.value=s.state.directional,u.directionalLightShadows.value=s.state.directionalShadow,u.spotLights.value=s.state.spot,u.spotLightShadows.value=s.state.spotShadow,u.rectAreaLights.value=s.state.rectArea,u.ltc_1.value=s.state.rectAreaLTC1,u.ltc_2.value=s.state.rectAreaLTC2,u.pointLights.value=s.state.point,u.pointLightShadows.value=s.state.pointShadow,u.hemisphereLights.value=s.state.hemi,u.directionalShadowMap.value=s.state.directionalShadowMap,u.directionalShadowMatrix.value=s.state.directionalShadowMatrix,u.spotShadowMap.value=s.state.spotShadowMap,u.spotShadowMatrix.value=s.state.spotShadowMatrix,u.pointShadowMap.value=s.state.pointShadowMap,u.pointShadowMatrix.value=s.state.pointShadowMatrix);const p=h.getUniforms(),_=jM.seqWithValue(p.seq,u);return i.currentProgram=h,i.uniformsList=_,h}function St(t,e){const n=q.get(t);n.outputEncoding=e.outputEncoding,n.instancing=e.instancing,n.skinning=e.skinning,n.morphTargets=e.morphTargets,n.morphNormals=e.morphNormals,n.morphTargetsCount=e.morphTargetsCount,n.numClippingPlanes=e.numClippingPlanes,n.numIntersection=e.numClipIntersection,n.vertexAlphas=e.vertexAlphas,n.vertexTangents=e.vertexTangents}function Ct(t,e,n,i,s){!0!==e.isScene&&(e=U),X.resetTextureUnits();const r=e.fog,o=i.isMeshStandardMaterial?e.environment:null,a=null===y?m.outputEncoding:y.texture.encoding,l=(i.isMeshStandardMaterial?$:Y).get(i.envMap||o),c=!0===i.vertexColors&&!!n&&!!n.attributes.color&&4===n.attributes.color.itemSize,h=!!i.normalMap&&!!n&&!!n.attributes.tangent,u=!!n&&!!n.morphAttributes.position,p=!!n&&!!n.morphAttributes.normal,_=n&&n.morphAttributes.position?n.morphAttributes.position.length:0,f=q.get(i),g=d.state.lights;if(!0===F&&(!0===D||t!==b)){const e=t===b&&i.id===x;it.setState(i,t,e)}let v=!1;i.version===f.__version?f.needsLights&&f.lightsStateVersion!==g.state.version||f.outputEncoding!==a||s.isInstancedMesh&&!1===f.instancing?v=!0:s.isInstancedMesh||!0!==f.instancing?s.isSkinnedMesh&&!1===f.skinning?v=!0:s.isSkinnedMesh||!0!==f.skinning?f.envMap!==l||i.fog&&f.fog!==r?v=!0:void 0===f.numClippingPlanes||f.numClippingPlanes===it.numPlanes&&f.numIntersection===it.numIntersection?(f.vertexAlphas!==c||f.vertexTangents!==h||f.morphTargets!==u||f.morphNormals!==p||!0===H.isWebGL2&&f.morphTargetsCount!==_)&&(v=!0):v=!0:v=!0:v=!0:(v=!0,f.__version=i.version);let w=f.currentProgram;!0===v&&(w=Et(i,e,s));let T=!1,A=!1,M=!1;const C=w.getUniforms(),N=f.uniforms;if(j.useProgram(w.program)&&(T=!0,A=!0,M=!0),i.id!==x&&(x=i.id,A=!0),T||b!==t){if(C.setValue(ut,\\\\\\\"projectionMatrix\\\\\\\",t.projectionMatrix),H.logarithmicDepthBuffer&&C.setValue(ut,\\\\\\\"logDepthBufFC\\\\\\\",2/(Math.log(t.far+1)/Math.LN2)),b!==t&&(b=t,A=!0,M=!0),i.isShaderMaterial||i.isMeshPhongMaterial||i.isMeshToonMaterial||i.isMeshStandardMaterial||i.envMap){const e=C.map.cameraPosition;void 0!==e&&e.setValue(ut,k.setFromMatrixPosition(t.matrixWorld))}(i.isMeshPhongMaterial||i.isMeshToonMaterial||i.isMeshLambertMaterial||i.isMeshBasicMaterial||i.isMeshStandardMaterial||i.isShaderMaterial)&&C.setValue(ut,\\\\\\\"isOrthographic\\\\\\\",!0===t.isOrthographicCamera),(i.isMeshPhongMaterial||i.isMeshToonMaterial||i.isMeshLambertMaterial||i.isMeshBasicMaterial||i.isMeshStandardMaterial||i.isShaderMaterial||i.isShadowMaterial||s.isSkinnedMesh)&&C.setValue(ut,\\\\\\\"viewMatrix\\\\\\\",t.matrixWorldInverse)}if(s.isSkinnedMesh){C.setOptional(ut,s,\\\\\\\"bindMatrix\\\\\\\"),C.setOptional(ut,s,\\\\\\\"bindMatrixInverse\\\\\\\");const t=s.skeleton;t&&(H.floatVertexTextures?(null===t.boneTexture&&t.computeBoneTexture(),C.setValue(ut,\\\\\\\"boneTexture\\\\\\\",t.boneTexture,X),C.setValue(ut,\\\\\\\"boneTextureSize\\\\\\\",t.boneTextureSize)):C.setOptional(ut,t,\\\\\\\"boneMatrices\\\\\\\"))}var L,O;return!n||void 0===n.morphAttributes.position&&void 0===n.morphAttributes.normal||ot.update(s,n,i,w),(A||f.receiveShadow!==s.receiveShadow)&&(f.receiveShadow=s.receiveShadow,C.setValue(ut,\\\\\\\"receiveShadow\\\\\\\",s.receiveShadow)),A&&(C.setValue(ut,\\\\\\\"toneMappingExposure\\\\\\\",m.toneMappingExposure),f.needsLights&&(O=M,(L=N).ambientLightColor.needsUpdate=O,L.lightProbe.needsUpdate=O,L.directionalLights.needsUpdate=O,L.directionalLightShadows.needsUpdate=O,L.pointLights.needsUpdate=O,L.pointLightShadows.needsUpdate=O,L.spotLights.needsUpdate=O,L.spotLightShadows.needsUpdate=O,L.rectAreaLights.needsUpdate=O,L.hemisphereLights.needsUpdate=O),r&&i.fog&&tt.refreshFogUniforms(N,r),tt.refreshMaterialUniforms(N,i,S,E,B),jM.upload(ut,f.uniformsList,N,X)),i.isShaderMaterial&&!0===i.uniformsNeedUpdate&&(jM.upload(ut,f.uniformsList,N,X),i.uniformsNeedUpdate=!1),i.isSpriteMaterial&&C.setValue(ut,\\\\\\\"center\\\\\\\",s.center),C.setValue(ut,\\\\\\\"modelViewMatrix\\\\\\\",s.modelViewMatrix),C.setValue(ut,\\\\\\\"normalMatrix\\\\\\\",s.normalMatrix),C.setValue(ut,\\\\\\\"modelMatrix\\\\\\\",s.matrixWorld),w}bt.setAnimationLoop((function(t){vt&&vt(t)})),\\\\\\\"undefined\\\\\\\"!=typeof window&&bt.setContext(window),this.setAnimationLoop=function(t){vt=t,_t.setAnimationLoop(t),null===t?bt.stop():bt.start()},_t.addEventListener(\\\\\\\"sessionstart\\\\\\\",yt),_t.addEventListener(\\\\\\\"sessionend\\\\\\\",xt),this.render=function(t,e){if(void 0!==e&&!0!==e.isCamera)return void console.error(\\\\\\\"THREE.WebGLRenderer.render: camera is not an instance of THREE.Camera.\\\\\\\");if(!0===f)return;!0===t.autoUpdate&&t.updateMatrixWorld(),null===e.parent&&e.updateMatrixWorld(),!0===_t.enabled&&!0===_t.isPresenting&&(!0===_t.cameraAutoUpdate&&_t.updateCamera(e),e=_t.getCamera()),!0===t.isScene&&t.onBeforeRender(m,t,e,y),d=nt.get(t,_.length),d.init(),_.push(d),z.multiplyMatrices(e.projectionMatrix,e.matrixWorldInverse),I.setFromProjectionMatrix(z),D=this.localClippingEnabled,F=it.init(this.clippingPlanes,D,e),u=et.get(t,p.length),u.init(),p.push(u),wt(t,e,0,m.sortObjects),u.finish(),!0===m.sortObjects&&u.sort(C,N),!0===F&&it.beginShadows();const n=d.state.shadowsArray;if(st.render(n,t,e),!0===F&&it.endShadows(),!0===this.info.autoReset&&this.info.reset(),rt.render(u,t),d.setupLights(m.physicallyCorrectLights),e.isArrayCamera){const n=e.cameras;for(let e=0,i=n.length;e<i;e++){const i=n[e];Tt(u,t,i,i.viewport)}}else Tt(u,t,e);null!==y&&(X.updateMultisampleRenderTarget(y),X.updateRenderTargetMipmap(y)),!0===t.isScene&&t.onAfterRender(m,t,e),j.buffers.depth.setTest(!0),j.buffers.depth.setMask(!0),j.buffers.color.setMask(!0),j.setPolygonOffset(!1),ht.resetDefaultState(),x=-1,b=null,_.pop(),d=_.length>0?_[_.length-1]:null,p.pop(),u=p.length>0?p[p.length-1]:null},this.getActiveCubeFace=function(){return g},this.getActiveMipmapLevel=function(){return v},this.getRenderTarget=function(){return y},this.setRenderTarget=function(t,e=0,n=0){y=t,g=e,v=n,t&&void 0===q.get(t).__webglFramebuffer&&X.setupRenderTarget(t);let i=null,s=!1,r=!1;if(t){const n=t.texture;(n.isDataTexture3D||n.isDataTexture2DArray)&&(r=!0);const o=q.get(t).__webglFramebuffer;t.isWebGLCubeRenderTarget?(i=o[e],s=!0):i=t.isWebGLMultisampleRenderTarget?q.get(t).__webglMultisampledFramebuffer:o,w.copy(t.viewport),T.copy(t.scissor),A=t.scissorTest}else w.copy(L).multiplyScalar(S).floor(),T.copy(O).multiplyScalar(S).floor(),A=P;if(j.bindFramebuffer(36160,i)&&H.drawBuffers){let e=!1;if(t)if(t.isWebGLMultipleRenderTargets){const n=t.texture;if(R.length!==n.length||36064!==R[0]){for(let t=0,e=n.length;t<e;t++)R[t]=36064+t;R.length=n.length,e=!0}}else 1===R.length&&36064===R[0]||(R[0]=36064,R.length=1,e=!0);else 1===R.length&&1029===R[0]||(R[0]=1029,R.length=1,e=!0);e&&(H.isWebGL2?ut.drawBuffers(R):V.get(\\\\\\\"WEBGL_draw_buffers\\\\\\\").drawBuffersWEBGL(R))}if(j.viewport(w),j.scissor(T),j.setScissorTest(A),s){const i=q.get(t.texture);ut.framebufferTexture2D(36160,36064,34069+e,i.__webglTexture,n)}else if(r){const i=q.get(t.texture),s=e||0;ut.framebufferTextureLayer(36160,36064,i.__webglTexture,n||0,s)}x=-1},this.readRenderTargetPixels=function(t,e,n,i,s,r,o){if(!t||!t.isWebGLRenderTarget)return void console.error(\\\\\\\"THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.\\\\\\\");let a=q.get(t).__webglFramebuffer;if(t.isWebGLCubeRenderTarget&&void 0!==o&&(a=a[o]),a){j.bindFramebuffer(36160,a);try{const o=t.texture,a=o.format,l=o.type;if(a!==Dx&&ct.convert(a)!==ut.getParameter(35739))return void console.error(\\\\\\\"THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in RGBA or implementation defined format.\\\\\\\");const c=l===Rx&&(V.has(\\\\\\\"EXT_color_buffer_half_float\\\\\\\")||H.isWebGL2&&V.has(\\\\\\\"EXT_color_buffer_float\\\\\\\"));if(!(l===Nx||ct.convert(l)===ut.getParameter(35738)||l===Px&&(H.isWebGL2||V.has(\\\\\\\"OES_texture_float\\\\\\\")||V.has(\\\\\\\"WEBGL_color_buffer_float\\\\\\\"))||c))return void console.error(\\\\\\\"THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in UnsignedByteType or implementation defined type.\\\\\\\");36053===ut.checkFramebufferStatus(36160)?e>=0&&e<=t.width-i&&n>=0&&n<=t.height-s&&ut.readPixels(e,n,i,s,ct.convert(a),ct.convert(l),r):console.error(\\\\\\\"THREE.WebGLRenderer.readRenderTargetPixels: readPixels from renderTarget failed. Framebuffer not complete.\\\\\\\")}finally{const t=null!==y?q.get(y).__webglFramebuffer:null;j.bindFramebuffer(36160,t)}}},this.copyFramebufferToTexture=function(t,e,n=0){const i=Math.pow(2,-n),s=Math.floor(e.image.width*i),r=Math.floor(e.image.height*i);let o=ct.convert(e.format);H.isWebGL2&&(6407===o&&(o=32849),6408===o&&(o=32856)),X.setTexture2D(e,0),ut.copyTexImage2D(3553,n,o,t.x,t.y,s,r,0),j.unbindTexture()},this.copyTextureToTexture=function(t,e,n,i=0){const s=e.image.width,r=e.image.height,o=ct.convert(n.format),a=ct.convert(n.type);X.setTexture2D(n,0),ut.pixelStorei(37440,n.flipY),ut.pixelStorei(37441,n.premultiplyAlpha),ut.pixelStorei(3317,n.unpackAlignment),e.isDataTexture?ut.texSubImage2D(3553,i,t.x,t.y,s,r,o,a,e.image.data):e.isCompressedTexture?ut.compressedTexSubImage2D(3553,i,t.x,t.y,e.mipmaps[0].width,e.mipmaps[0].height,o,e.mipmaps[0].data):ut.texSubImage2D(3553,i,t.x,t.y,o,a,e.image),0===i&&n.generateMipmaps&&ut.generateMipmap(3553),j.unbindTexture()},this.copyTextureToTexture3D=function(t,e,n,i,s=0){if(m.isWebGL1Renderer)return void console.warn(\\\\\\\"THREE.WebGLRenderer.copyTextureToTexture3D: can only be used with WebGL2.\\\\\\\");const r=t.max.x-t.min.x+1,o=t.max.y-t.min.y+1,a=t.max.z-t.min.z+1,l=ct.convert(i.format),c=ct.convert(i.type);let h;if(i.isDataTexture3D)X.setTexture3D(i,0),h=32879;else{if(!i.isDataTexture2DArray)return void console.warn(\\\\\\\"THREE.WebGLRenderer.copyTextureToTexture3D: only supports THREE.DataTexture3D and THREE.DataTexture2DArray.\\\\\\\");X.setTexture2DArray(i,0),h=35866}ut.pixelStorei(37440,i.flipY),ut.pixelStorei(37441,i.premultiplyAlpha),ut.pixelStorei(3317,i.unpackAlignment);const u=ut.getParameter(3314),d=ut.getParameter(32878),p=ut.getParameter(3316),_=ut.getParameter(3315),f=ut.getParameter(32877),g=n.isCompressedTexture?n.mipmaps[0]:n.image;ut.pixelStorei(3314,g.width),ut.pixelStorei(32878,g.height),ut.pixelStorei(3316,t.min.x),ut.pixelStorei(3315,t.min.y),ut.pixelStorei(32877,t.min.z),n.isDataTexture||n.isDataTexture3D?ut.texSubImage3D(h,s,e.x,e.y,e.z,r,o,a,l,c,g.data):n.isCompressedTexture?(console.warn(\\\\\\\"THREE.WebGLRenderer.copyTextureToTexture3D: untested support for compressed srcTexture.\\\\\\\"),ut.compressedTexSubImage3D(h,s,e.x,e.y,e.z,r,o,a,l,g.data)):ut.texSubImage3D(h,s,e.x,e.y,e.z,r,o,a,l,c,g),ut.pixelStorei(3314,u),ut.pixelStorei(32878,d),ut.pixelStorei(3316,p),ut.pixelStorei(3315,_),ut.pixelStorei(32877,f),0===s&&i.generateMipmaps&&ut.generateMipmap(h),j.unbindTexture()},this.initTexture=function(t){X.setTexture2D(t,0),j.unbindTexture()},this.resetState=function(){g=0,v=0,y=null,j.reset(),ht.reset()},\\\\\\\"undefined\\\\\\\"!=typeof __THREE_DEVTOOLS__&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent(\\\\\\\"observe\\\\\\\",{detail:this}))}(class extends FE{}).prototype.isWebGL1Renderer=!0;class DE{constructor(t,e=25e-5){this.name=\\\\\\\"\\\\\\\",this.color=new $w(t),this.density=e}clone(){return new DE(this.color,this.density)}toJSON(){return{type:\\\\\\\"FogExp2\\\\\\\",color:this.color.getHex(),density:this.density}}}DE.prototype.isFogExp2=!0;class BE{constructor(t,e=1,n=1e3){this.name=\\\\\\\"\\\\\\\",this.color=new $w(t),this.near=e,this.far=n}clone(){return new BE(this.color,this.near,this.far)}toJSON(){return{type:\\\\\\\"Fog\\\\\\\",color:this.color.getHex(),near:this.near,far:this.far}}}BE.prototype.isFog=!0;class zE extends Nw{constructor(){super(),this.type=\\\\\\\"Scene\\\\\\\",this.background=null,this.environment=null,this.fog=null,this.overrideMaterial=null,this.autoUpdate=!0,\\\\\\\"undefined\\\\\\\"!=typeof __THREE_DEVTOOLS__&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent(\\\\\\\"observe\\\\\\\",{detail:this}))}copy(t,e){return super.copy(t,e),null!==t.background&&(this.background=t.background.clone()),null!==t.environment&&(this.environment=t.environment.clone()),null!==t.fog&&(this.fog=t.fog.clone()),null!==t.overrideMaterial&&(this.overrideMaterial=t.overrideMaterial.clone()),this.autoUpdate=t.autoUpdate,this.matrixAutoUpdate=t.matrixAutoUpdate,this}toJSON(t){const e=super.toJSON(t);return null!==this.fog&&(e.object.fog=this.fog.toJSON()),e}}zE.prototype.isScene=!0;class kE{constructor(t,e){this.array=t,this.stride=e,this.count=void 0!==t?t.length/e:0,this.usage=Zx,this.updateRange={offset:0,count:-1},this.version=0,this.uuid=ob()}onUploadCallback(){}set needsUpdate(t){!0===t&&this.version++}setUsage(t){return this.usage=t,this}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){void 0===t.arrayBuffers&&(t.arrayBuffers={}),void 0===this.array.buffer._uuid&&(this.array.buffer._uuid=ob()),void 0===t.arrayBuffers[this.array.buffer._uuid]&&(t.arrayBuffers[this.array.buffer._uuid]=this.array.slice(0).buffer);const 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 void 0===t.arrayBuffers&&(t.arrayBuffers={}),void 0===this.array.buffer._uuid&&(this.array.buffer._uuid=ob()),void 0===t.arrayBuffers[this.array.buffer._uuid]&&(t.arrayBuffers[this.array.buffer._uuid]=Array.prototype.slice.call(new Uint32Array(this.array.buffer))),{uuid:this.uuid,buffer:this.array.buffer._uuid,type:this.array.constructor.name,stride:this.stride}}}kE.prototype.isInterleavedBuffer=!0;const UE=new Sb;class GE{constructor(t,e,n,i=!1){this.name=\\\\\\\"\\\\\\\",this.data=t,this.itemSize=e,this.offset=n,this.normalized=!0===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++)UE.x=this.getX(e),UE.y=this.getY(e),UE.z=this.getZ(e),UE.applyMatrix4(t),this.setXYZ(e,UE.x,UE.y,UE.z);return this}applyNormalMatrix(t){for(let e=0,n=this.count;e<n;e++)UE.x=this.getX(e),UE.y=this.getY(e),UE.z=this.getZ(e),UE.applyNormalMatrix(t),this.setXYZ(e,UE.x,UE.y,UE.z);return this}transformDirection(t){for(let e=0,n=this.count;e<n;e++)UE.x=this.getX(e),UE.y=this.getY(e),UE.z=this.getZ(e),UE.transformDirection(t),this.setXYZ(e,UE.x,UE.y,UE.z);return this}setX(t,e){return this.data.array[t*this.data.stride+this.offset]=e,this}setY(t,e){return this.data.array[t*this.data.stride+this.offset+1]=e,this}setZ(t,e){return this.data.array[t*this.data.stride+this.offset+2]=e,this}setW(t,e){return this.data.array[t*this.data.stride+this.offset+3]=e,this}getX(t){return this.data.array[t*this.data.stride+this.offset]}getY(t){return this.data.array[t*this.data.stride+this.offset+1]}getZ(t){return this.data.array[t*this.data.stride+this.offset+2]}getW(t){return this.data.array[t*this.data.stride+this.offset+3]}setXY(t,e,n){return t=t*this.data.stride+this.offset,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.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.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(void 0===t){console.log(\\\\\\\"THREE.InterleavedBufferAttribute.clone(): Cloning an interlaved buffer attribute will deinterleave buffer data.\\\\\\\");const t=[];for(let e=0;e<this.count;e++){const n=e*this.data.stride+this.offset;for(let e=0;e<this.itemSize;e++)t.push(this.data.array[n+e])}return new Qw(new this.array.constructor(t),this.itemSize,this.normalized)}return void 0===t.interleavedBuffers&&(t.interleavedBuffers={}),void 0===t.interleavedBuffers[this.data.uuid]&&(t.interleavedBuffers[this.data.uuid]=this.data.clone(t)),new GE(t.interleavedBuffers[this.data.uuid],this.itemSize,this.offset,this.normalized)}toJSON(t){if(void 0===t){console.log(\\\\\\\"THREE.InterleavedBufferAttribute.toJSON(): Serializing an interlaved buffer attribute will deinterleave buffer data.\\\\\\\");const t=[];for(let e=0;e<this.count;e++){const n=e*this.data.stride+this.offset;for(let e=0;e<this.itemSize;e++)t.push(this.data.array[n+e])}return{itemSize:this.itemSize,type:this.array.constructor.name,array:t,normalized:this.normalized}}return void 0===t.interleavedBuffers&&(t.interleavedBuffers={}),void 0===t.interleavedBuffers[this.data.uuid]&&(t.interleavedBuffers[this.data.uuid]=this.data.toJSON(t)),{isInterleavedBufferAttribute:!0,itemSize:this.itemSize,data:this.data.uuid,offset:this.offset,normalized:this.normalized}}}GE.prototype.isInterleavedBufferAttribute=!0;class VE extends Vw{constructor(t){super(),this.type=\\\\\\\"SpriteMaterial\\\\\\\",this.color=new $w(16777215),this.map=null,this.alphaMap=null,this.rotation=0,this.sizeAttenuation=!0,this.transparent=!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}}let HE;VE.prototype.isSpriteMaterial=!0;const jE=new Sb,WE=new Sb,qE=new Sb,XE=new _b,YE=new _b,$E=new sw,JE=new Sb,ZE=new Sb,KE=new Sb,QE=new _b,tS=new _b,eS=new _b;class nS extends Nw{constructor(t){if(super(),this.type=\\\\\\\"Sprite\\\\\\\",void 0===HE){HE=new hT;const t=new Float32Array([-.5,-.5,0,0,0,.5,-.5,0,1,0,.5,.5,0,1,1,-.5,.5,0,0,1]),e=new kE(t,5);HE.setIndex([0,1,2,0,2,3]),HE.setAttribute(\\\\\\\"position\\\\\\\",new GE(e,3,0,!1)),HE.setAttribute(\\\\\\\"uv\\\\\\\",new GE(e,2,3,!1))}this.geometry=HE,this.material=void 0!==t?t:new VE,this.center=new _b(.5,.5)}raycast(t,e){null===t.camera&&console.error('THREE.Sprite: \\\\\\\"Raycaster.camera\\\\\\\" needs to be set in order to raycast against sprites.'),WE.setFromMatrixScale(this.matrixWorld),$E.copy(t.camera.matrixWorld),this.modelViewMatrix.multiplyMatrices(t.camera.matrixWorldInverse,this.matrixWorld),qE.setFromMatrixPosition(this.modelViewMatrix),t.camera.isPerspectiveCamera&&!1===this.material.sizeAttenuation&&WE.multiplyScalar(-qE.z);const n=this.material.rotation;let i,s;0!==n&&(s=Math.cos(n),i=Math.sin(n));const r=this.center;iS(JE.set(-.5,-.5,0),qE,r,WE,i,s),iS(ZE.set(.5,-.5,0),qE,r,WE,i,s),iS(KE.set(.5,.5,0),qE,r,WE,i,s),QE.set(0,0),tS.set(1,0),eS.set(1,1);let o=t.ray.intersectTriangle(JE,ZE,KE,!1,jE);if(null===o&&(iS(ZE.set(-.5,.5,0),qE,r,WE,i,s),tS.set(0,1),o=t.ray.intersectTriangle(JE,KE,ZE,!1,jE),null===o))return;const a=t.ray.origin.distanceTo(jE);a<t.near||a>t.far||e.push({distance:a,point:jE.clone(),uv:Uw.getUV(jE,JE,ZE,KE,QE,tS,eS,new _b),face:null,object:this})}copy(t){return super.copy(t),void 0!==t.center&&this.center.copy(t.center),this.material=t.material,this}}function iS(t,e,n,i,s,r){XE.subVectors(t,n).addScalar(.5).multiply(i),void 0!==s?(YE.x=r*XE.x-s*XE.y,YE.y=s*XE.x+r*XE.y):YE.copy(XE),t.copy(e),t.x+=YE.x,t.y+=YE.y,t.applyMatrix4($E)}nS.prototype.isSprite=!0;const sS=new Sb,rS=new Tb,oS=new Tb,aS=new Sb,lS=new sw;class cS extends CT{constructor(t,e){super(t,e),this.type=\\\\\\\"SkinnedMesh\\\\\\\",this.bindMode=\\\\\\\"attached\\\\\\\",this.bindMatrix=new sw,this.bindMatrixInverse=new sw}copy(t){return super.copy(t),this.bindMode=t.bindMode,this.bindMatrix.copy(t.bindMatrix),this.bindMatrixInverse.copy(t.bindMatrixInverse),this.skeleton=t.skeleton,this}bind(t,e){this.skeleton=t,void 0===e&&(this.updateMatrixWorld(!0),this.skeleton.calculateInverses(),e=this.matrixWorld),this.bindMatrix.copy(e),this.bindMatrixInverse.copy(e).invert()}pose(){this.skeleton.pose()}normalizeSkinWeights(){const t=new Tb,e=this.geometry.attributes.skinWeight;for(let n=0,i=e.count;n<i;n++){t.x=e.getX(n),t.y=e.getY(n),t.z=e.getZ(n),t.w=e.getW(n);const i=1/t.manhattanLength();i!==1/0?t.multiplyScalar(i):t.set(1,0,0,0),e.setXYZW(n,t.x,t.y,t.z,t.w)}}updateMatrixWorld(t){super.updateMatrixWorld(t),\\\\\\\"attached\\\\\\\"===this.bindMode?this.bindMatrixInverse.copy(this.matrixWorld).invert():\\\\\\\"detached\\\\\\\"===this.bindMode?this.bindMatrixInverse.copy(this.bindMatrix).invert():console.warn(\\\\\\\"THREE.SkinnedMesh: Unrecognized bindMode: \\\\\\\"+this.bindMode)}boneTransform(t,e){const n=this.skeleton,i=this.geometry;rS.fromBufferAttribute(i.attributes.skinIndex,t),oS.fromBufferAttribute(i.attributes.skinWeight,t),sS.copy(e).applyMatrix4(this.bindMatrix),e.set(0,0,0);for(let t=0;t<4;t++){const i=oS.getComponent(t);if(0!==i){const s=rS.getComponent(t);lS.multiplyMatrices(n.bones[s].matrixWorld,n.boneInverses[s]),e.addScaledVector(aS.copy(sS).applyMatrix4(lS),i)}}return e.applyMatrix4(this.bindMatrixInverse)}}cS.prototype.isSkinnedMesh=!0;class hS extends Nw{constructor(){super(),this.type=\\\\\\\"Bone\\\\\\\"}}hS.prototype.isBone=!0;class uS extends bb{constructor(t=null,e=1,n=1,i,s,r,o,a,l=1003,c=1003,h,u){super(null,r,o,a,l,c,i,s,h,u),this.image={data:t,width:e,height:n},this.magFilter=l,this.minFilter=c,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1,this.needsUpdate=!0}}uS.prototype.isDataTexture=!0;class dS extends Qw{constructor(t,e,n,i=1){\\\\\\\"number\\\\\\\"==typeof n&&(i=n,n=!1,console.error(\\\\\\\"THREE.InstancedBufferAttribute: The constructor now expects normalized as the third argument.\\\\\\\")),super(t,e,n),this.meshPerAttribute=i}copy(t){return super.copy(t),this.meshPerAttribute=t.meshPerAttribute,this}toJSON(){const t=super.toJSON();return t.meshPerAttribute=this.meshPerAttribute,t.isInstancedBufferAttribute=!0,t}}dS.prototype.isInstancedBufferAttribute=!0;const pS=new sw,_S=new sw,mS=[],fS=new CT;class gS extends CT{constructor(t,e,n){super(t,e),this.instanceMatrix=new dS(new Float32Array(16*n),16),this.instanceColor=null,this.count=n,this.frustumCulled=!1}copy(t){return super.copy(t),this.instanceMatrix.copy(t.instanceMatrix),null!==t.instanceColor&&(this.instanceColor=t.instanceColor.clone()),this.count=t.count,this}getColorAt(t,e){e.fromArray(this.instanceColor.array,3*t)}getMatrixAt(t,e){e.fromArray(this.instanceMatrix.array,16*t)}raycast(t,e){const n=this.matrixWorld,i=this.count;if(fS.geometry=this.geometry,fS.material=this.material,void 0!==fS.material)for(let s=0;s<i;s++){this.getMatrixAt(s,pS),_S.multiplyMatrices(n,pS),fS.matrixWorld=_S,fS.raycast(t,mS);for(let t=0,n=mS.length;t<n;t++){const n=mS[t];n.instanceId=s,n.object=this,e.push(n)}mS.length=0}}setColorAt(t,e){null===this.instanceColor&&(this.instanceColor=new dS(new Float32Array(3*this.instanceMatrix.count),3)),e.toArray(this.instanceColor.array,3*t)}setMatrixAt(t,e){e.toArray(this.instanceMatrix.array,16*t)}updateMorphTargets(){}dispose(){this.dispatchEvent({type:\\\\\\\"dispose\\\\\\\"})}}gS.prototype.isInstancedMesh=!0;class vS extends Vw{constructor(t){super(),this.type=\\\\\\\"LineBasicMaterial\\\\\\\",this.color=new $w(16777215),this.linewidth=1,this.linecap=\\\\\\\"round\\\\\\\",this.linejoin=\\\\\\\"round\\\\\\\",this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.linewidth=t.linewidth,this.linecap=t.linecap,this.linejoin=t.linejoin,this}}vS.prototype.isLineBasicMaterial=!0;const yS=new Sb,xS=new Sb,bS=new sw,wS=new iw,TS=new $b;class AS extends Nw{constructor(t=new hT,e=new vS){super(),this.type=\\\\\\\"Line\\\\\\\",this.geometry=t,this.material=e,this.updateMorphTargets()}copy(t){return super.copy(t),this.material=t.material,this.geometry=t.geometry,this}computeLineDistances(){const t=this.geometry;if(t.isBufferGeometry)if(null===t.index){const e=t.attributes.position,n=[0];for(let t=1,i=e.count;t<i;t++)yS.fromBufferAttribute(e,t-1),xS.fromBufferAttribute(e,t),n[t]=n[t-1],n[t]+=yS.distanceTo(xS);t.setAttribute(\\\\\\\"lineDistance\\\\\\\",new nT(n,1))}else console.warn(\\\\\\\"THREE.Line.computeLineDistances(): Computation only possible with non-indexed BufferGeometry.\\\\\\\");else t.isGeometry&&console.error(\\\\\\\"THREE.Line.computeLineDistances() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.\\\\\\\");return this}raycast(t,e){const n=this.geometry,i=this.matrixWorld,s=t.params.Line.threshold,r=n.drawRange;if(null===n.boundingSphere&&n.computeBoundingSphere(),TS.copy(n.boundingSphere),TS.applyMatrix4(i),TS.radius+=s,!1===t.ray.intersectsSphere(TS))return;bS.copy(i).invert(),wS.copy(t.ray).applyMatrix4(bS);const o=s/((this.scale.x+this.scale.y+this.scale.z)/3),a=o*o,l=new Sb,c=new Sb,h=new Sb,u=new Sb,d=this.isLineSegments?2:1;if(n.isBufferGeometry){const i=n.index,s=n.attributes.position;if(null!==i){for(let n=Math.max(0,r.start),o=Math.min(i.count,r.start+r.count)-1;n<o;n+=d){const r=i.getX(n),o=i.getX(n+1);l.fromBufferAttribute(s,r),c.fromBufferAttribute(s,o);if(wS.distanceSqToSegment(l,c,u,h)>a)continue;u.applyMatrix4(this.matrixWorld);const d=t.ray.origin.distanceTo(u);d<t.near||d>t.far||e.push({distance:d,point:h.clone().applyMatrix4(this.matrixWorld),index:n,face:null,faceIndex:null,object:this})}}else{for(let n=Math.max(0,r.start),i=Math.min(s.count,r.start+r.count)-1;n<i;n+=d){l.fromBufferAttribute(s,n),c.fromBufferAttribute(s,n+1);if(wS.distanceSqToSegment(l,c,u,h)>a)continue;u.applyMatrix4(this.matrixWorld);const i=t.ray.origin.distanceTo(u);i<t.near||i>t.far||e.push({distance:i,point:h.clone().applyMatrix4(this.matrixWorld),index:n,face:null,faceIndex:null,object:this})}}}else n.isGeometry&&console.error(\\\\\\\"THREE.Line.raycast() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.\\\\\\\")}updateMorphTargets(){const t=this.geometry;if(t.isBufferGeometry){const e=t.morphAttributes,n=Object.keys(e);if(n.length>0){const t=e[n[0]];if(void 0!==t){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let e=0,n=t.length;e<n;e++){const n=t[e].name||String(e);this.morphTargetInfluences.push(0),this.morphTargetDictionary[n]=e}}}}else{const e=t.morphTargets;void 0!==e&&e.length>0&&console.error(\\\\\\\"THREE.Line.updateMorphTargets() does not support THREE.Geometry. Use THREE.BufferGeometry instead.\\\\\\\")}}}AS.prototype.isLine=!0;const MS=new Sb,ES=new Sb;class SS extends AS{constructor(t,e){super(t,e),this.type=\\\\\\\"LineSegments\\\\\\\"}computeLineDistances(){const t=this.geometry;if(t.isBufferGeometry)if(null===t.index){const e=t.attributes.position,n=[];for(let t=0,i=e.count;t<i;t+=2)MS.fromBufferAttribute(e,t),ES.fromBufferAttribute(e,t+1),n[t]=0===t?0:n[t-1],n[t+1]=n[t]+MS.distanceTo(ES);t.setAttribute(\\\\\\\"lineDistance\\\\\\\",new nT(n,1))}else console.warn(\\\\\\\"THREE.LineSegments.computeLineDistances(): Computation only possible with non-indexed BufferGeometry.\\\\\\\");else t.isGeometry&&console.error(\\\\\\\"THREE.LineSegments.computeLineDistances() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.\\\\\\\");return this}}SS.prototype.isLineSegments=!0;class CS extends AS{constructor(t,e){super(t,e),this.type=\\\\\\\"LineLoop\\\\\\\"}}CS.prototype.isLineLoop=!0;class NS extends Vw{constructor(t){super(),this.type=\\\\\\\"PointsMaterial\\\\\\\",this.color=new $w(16777215),this.map=null,this.alphaMap=null,this.size=1,this.sizeAttenuation=!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}}NS.prototype.isPointsMaterial=!0;const LS=new sw,OS=new iw,PS=new $b,RS=new Sb;class IS extends Nw{constructor(t=new hT,e=new NS){super(),this.type=\\\\\\\"Points\\\\\\\",this.geometry=t,this.material=e,this.updateMorphTargets()}copy(t){return super.copy(t),this.material=t.material,this.geometry=t.geometry,this}raycast(t,e){const n=this.geometry,i=this.matrixWorld,s=t.params.Points.threshold,r=n.drawRange;if(null===n.boundingSphere&&n.computeBoundingSphere(),PS.copy(n.boundingSphere),PS.applyMatrix4(i),PS.radius+=s,!1===t.ray.intersectsSphere(PS))return;LS.copy(i).invert(),OS.copy(t.ray).applyMatrix4(LS);const o=s/((this.scale.x+this.scale.y+this.scale.z)/3),a=o*o;if(n.isBufferGeometry){const s=n.index,o=n.attributes.position;if(null!==s){for(let n=Math.max(0,r.start),l=Math.min(s.count,r.start+r.count);n<l;n++){const r=s.getX(n);RS.fromBufferAttribute(o,r),FS(RS,r,a,i,t,e,this)}}else{for(let n=Math.max(0,r.start),s=Math.min(o.count,r.start+r.count);n<s;n++)RS.fromBufferAttribute(o,n),FS(RS,n,a,i,t,e,this)}}else console.error(\\\\\\\"THREE.Points.raycast() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.\\\\\\\")}updateMorphTargets(){const t=this.geometry;if(t.isBufferGeometry){const e=t.morphAttributes,n=Object.keys(e);if(n.length>0){const t=e[n[0]];if(void 0!==t){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let e=0,n=t.length;e<n;e++){const n=t[e].name||String(e);this.morphTargetInfluences.push(0),this.morphTargetDictionary[n]=e}}}}else{const e=t.morphTargets;void 0!==e&&e.length>0&&console.error(\\\\\\\"THREE.Points.updateMorphTargets() does not support THREE.Geometry. Use THREE.BufferGeometry instead.\\\\\\\")}}}function FS(t,e,n,i,s,r,o){const a=OS.distanceSqToPoint(t);if(a<n){const n=new Sb;OS.closestPointToPoint(t,n),n.applyMatrix4(i);const l=s.ray.origin.distanceTo(n);if(l<s.near||l>s.far)return;r.push({distance:l,distanceToRay:Math.sqrt(a),point:n,index:e,face:null,object:o})}}IS.prototype.isPoints=!0;(class extends bb{constructor(t,e,n,i,s,r,o,a,l){super(t,e,n,i,s,r,o,a,l),this.format=void 0!==o?o:Fx,this.minFilter=void 0!==r?r:Ex,this.magFilter=void 0!==s?s:Ex,this.generateMipmaps=!1;const c=this;\\\\\\\"requestVideoFrameCallback\\\\\\\"in t&&t.requestVideoFrameCallback((function e(){c.needsUpdate=!0,t.requestVideoFrameCallback(e)}))}clone(){return new this.constructor(this.image).copy(this)}update(){const t=this.image;!1===\\\\\\\"requestVideoFrameCallback\\\\\\\"in t&&t.readyState>=t.HAVE_CURRENT_DATA&&(this.needsUpdate=!0)}}).prototype.isVideoTexture=!0;class DS extends bb{constructor(t,e,n,i,s,r,o,a,l,c,h,u){super(null,r,o,a,l,c,i,s,h,u),this.image={width:e,height:n},this.mipmaps=t,this.flipY=!1,this.generateMipmaps=!1}}DS.prototype.isCompressedTexture=!0;(class extends bb{constructor(t,e,n,i,s,r,o,a,l){super(t,e,n,i,s,r,o,a,l),this.needsUpdate=!0}}).prototype.isCanvasTexture=!0;(class extends bb{constructor(t,e,n,i,s,r,o,a,l,c){if((c=void 0!==c?c:Bx)!==Bx&&c!==zx)throw new Error(\\\\\\\"DepthTexture format must be either THREE.DepthFormat or THREE.DepthStencilFormat\\\\\\\");void 0===n&&c===Bx&&(n=Lx),void 0===n&&c===zx&&(n=Ix),super(null,i,s,r,o,a,c,n,l),this.image={width:t,height:e},this.magFilter=void 0!==o?o:Tx,this.minFilter=void 0!==a?a:Tx,this.flipY=!1,this.generateMipmaps=!1}}).prototype.isDepthTexture=!0;new Sb,new Sb,new Sb,new Uw;class BS{constructor(){this.type=\\\\\\\"Curve\\\\\\\",this.arcLengthDivisions=200}getPoint(){return console.warn(\\\\\\\"THREE.Curve: .getPoint() not implemented.\\\\\\\"),null}getPointAt(t,e){const n=this.getUtoTmapping(t);return this.getPoint(n,e)}getPoints(t=5){const e=[];for(let n=0;n<=t;n++)e.push(this.getPoint(n/t));return e}getSpacedPoints(t=5){const e=[];for(let n=0;n<=t;n++)e.push(this.getPointAt(n/t));return e}getLength(){const 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;const e=[];let n,i=this.getPoint(0),s=0;e.push(0);for(let r=1;r<=t;r++)n=this.getPoint(r/t),s+=n.distanceTo(i),e.push(s),i=n;return this.cacheArcLengths=e,e}updateArcLengths(){this.needsUpdate=!0,this.getLengths()}getUtoTmapping(t,e){const n=this.getLengths();let i=0;const s=n.length;let r;r=e||t*n[s-1];let o,a=0,l=s-1;for(;a<=l;)if(i=Math.floor(a+(l-a)/2),o=n[i]-r,o<0)a=i+1;else{if(!(o>0)){l=i;break}l=i-1}if(i=l,n[i]===r)return i/(s-1);const c=n[i];return(i+(r-c)/(n[i+1]-c))/(s-1)}getTangent(t,e){const n=1e-4;let i=t-n,s=t+n;i<0&&(i=0),s>1&&(s=1);const r=this.getPoint(i),o=this.getPoint(s),a=e||(r.isVector2?new _b:new Sb);return a.copy(o).sub(r).normalize(),a}getTangentAt(t,e){const n=this.getUtoTmapping(t);return this.getTangent(n,e)}computeFrenetFrames(t,e){const n=new Sb,i=[],s=[],r=[],o=new Sb,a=new sw;for(let e=0;e<=t;e++){const n=e/t;i[e]=this.getTangentAt(n,new Sb)}s[0]=new Sb,r[0]=new Sb;let l=Number.MAX_VALUE;const c=Math.abs(i[0].x),h=Math.abs(i[0].y),u=Math.abs(i[0].z);c<=l&&(l=c,n.set(1,0,0)),h<=l&&(l=h,n.set(0,1,0)),u<=l&&n.set(0,0,1),o.crossVectors(i[0],n).normalize(),s[0].crossVectors(i[0],o),r[0].crossVectors(i[0],s[0]);for(let e=1;e<=t;e++){if(s[e]=s[e-1].clone(),r[e]=r[e-1].clone(),o.crossVectors(i[e-1],i[e]),o.length()>Number.EPSILON){o.normalize();const t=Math.acos(ab(i[e-1].dot(i[e]),-1,1));s[e].applyMatrix4(a.makeRotationAxis(o,t))}r[e].crossVectors(i[e],s[e])}if(!0===e){let e=Math.acos(ab(s[0].dot(s[t]),-1,1));e/=t,i[0].dot(o.crossVectors(s[0],s[t]))>0&&(e=-e);for(let n=1;n<=t;n++)s[n].applyMatrix4(a.makeRotationAxis(i[n],e*n)),r[n].crossVectors(i[n],s[n])}return{tangents:i,normals:s,binormals:r}}clone(){return(new this.constructor).copy(this)}copy(t){return this.arcLengthDivisions=t.arcLengthDivisions,this}toJSON(){const t={metadata:{version:4.5,type:\\\\\\\"Curve\\\\\\\",generator:\\\\\\\"Curve.toJSON\\\\\\\"}};return t.arcLengthDivisions=this.arcLengthDivisions,t.type=this.type,t}fromJSON(t){return this.arcLengthDivisions=t.arcLengthDivisions,this}}class zS extends BS{constructor(t=0,e=0,n=1,i=1,s=0,r=2*Math.PI,o=!1,a=0){super(),this.type=\\\\\\\"EllipseCurve\\\\\\\",this.aX=t,this.aY=e,this.xRadius=n,this.yRadius=i,this.aStartAngle=s,this.aEndAngle=r,this.aClockwise=o,this.aRotation=a}getPoint(t,e){const n=e||new _b,i=2*Math.PI;let s=this.aEndAngle-this.aStartAngle;const r=Math.abs(s)<Number.EPSILON;for(;s<0;)s+=i;for(;s>i;)s-=i;s<Number.EPSILON&&(s=r?0:i),!0!==this.aClockwise||r||(s===i?s=-i:s-=i);const o=this.aStartAngle+t*s;let a=this.aX+this.xRadius*Math.cos(o),l=this.aY+this.yRadius*Math.sin(o);if(0!==this.aRotation){const t=Math.cos(this.aRotation),e=Math.sin(this.aRotation),n=a-this.aX,i=l-this.aY;a=n*t-i*e+this.aX,l=n*e+i*t+this.aY}return n.set(a,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(){const 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}}zS.prototype.isEllipseCurve=!0;class kS extends zS{constructor(t,e,n,i,s,r){super(t,e,n,n,i,s,r),this.type=\\\\\\\"ArcCurve\\\\\\\"}}function US(){let t=0,e=0,n=0,i=0;function s(s,r,o,a){t=s,e=o,n=-3*s+3*r-2*o-a,i=2*s-2*r+o+a}return{initCatmullRom:function(t,e,n,i,r){s(e,n,r*(n-t),r*(i-e))},initNonuniformCatmullRom:function(t,e,n,i,r,o,a){let l=(e-t)/r-(n-t)/(r+o)+(n-e)/o,c=(n-e)/o-(i-e)/(o+a)+(i-n)/a;l*=o,c*=o,s(e,n,l,c)},calc:function(s){const r=s*s;return t+e*s+n*r+i*(r*s)}}}kS.prototype.isArcCurve=!0;const GS=new Sb,VS=new US,HS=new US,jS=new US;class WS extends BS{constructor(t=[],e=!1,n=\\\\\\\"centripetal\\\\\\\",i=.5){super(),this.type=\\\\\\\"CatmullRomCurve3\\\\\\\",this.points=t,this.closed=e,this.curveType=n,this.tension=i}getPoint(t,e=new Sb){const n=e,i=this.points,s=i.length,r=(s-(this.closed?0:1))*t;let o,a,l=Math.floor(r),c=r-l;this.closed?l+=l>0?0:(Math.floor(Math.abs(l)/s)+1)*s:0===c&&l===s-1&&(l=s-2,c=1),this.closed||l>0?o=i[(l-1)%s]:(GS.subVectors(i[0],i[1]).add(i[0]),o=GS);const h=i[l%s],u=i[(l+1)%s];if(this.closed||l+2<s?a=i[(l+2)%s]:(GS.subVectors(i[s-1],i[s-2]).add(i[s-1]),a=GS),\\\\\\\"centripetal\\\\\\\"===this.curveType||\\\\\\\"chordal\\\\\\\"===this.curveType){const t=\\\\\\\"chordal\\\\\\\"===this.curveType?.5:.25;let e=Math.pow(o.distanceToSquared(h),t),n=Math.pow(h.distanceToSquared(u),t),i=Math.pow(u.distanceToSquared(a),t);n<1e-4&&(n=1),e<1e-4&&(e=n),i<1e-4&&(i=n),VS.initNonuniformCatmullRom(o.x,h.x,u.x,a.x,e,n,i),HS.initNonuniformCatmullRom(o.y,h.y,u.y,a.y,e,n,i),jS.initNonuniformCatmullRom(o.z,h.z,u.z,a.z,e,n,i)}else\\\\\\\"catmullrom\\\\\\\"===this.curveType&&(VS.initCatmullRom(o.x,h.x,u.x,a.x,this.tension),HS.initCatmullRom(o.y,h.y,u.y,a.y,this.tension),jS.initCatmullRom(o.z,h.z,u.z,a.z,this.tension));return n.set(VS.calc(c),HS.calc(c),jS.calc(c)),n}copy(t){super.copy(t),this.points=[];for(let e=0,n=t.points.length;e<n;e++){const n=t.points[e];this.points.push(n.clone())}return this.closed=t.closed,this.curveType=t.curveType,this.tension=t.tension,this}toJSON(){const t=super.toJSON();t.points=[];for(let e=0,n=this.points.length;e<n;e++){const n=this.points[e];t.points.push(n.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++){const n=t.points[e];this.points.push((new Sb).fromArray(n))}return this.closed=t.closed,this.curveType=t.curveType,this.tension=t.tension,this}}function qS(t,e,n,i,s){const r=.5*(i-e),o=.5*(s-n),a=t*t;return(2*n-2*i+r+o)*(t*a)+(-3*n+3*i-2*r-o)*a+r*t+n}function XS(t,e,n,i){return function(t,e){const n=1-t;return n*n*e}(t,e)+function(t,e){return 2*(1-t)*t*e}(t,n)+function(t,e){return t*t*e}(t,i)}function YS(t,e,n,i,s){return function(t,e){const n=1-t;return n*n*n*e}(t,e)+function(t,e){const n=1-t;return 3*n*n*t*e}(t,n)+function(t,e){return 3*(1-t)*t*t*e}(t,i)+function(t,e){return t*t*t*e}(t,s)}WS.prototype.isCatmullRomCurve3=!0;class $S extends BS{constructor(t=new _b,e=new _b,n=new _b,i=new _b){super(),this.type=\\\\\\\"CubicBezierCurve\\\\\\\",this.v0=t,this.v1=e,this.v2=n,this.v3=i}getPoint(t,e=new _b){const n=e,i=this.v0,s=this.v1,r=this.v2,o=this.v3;return n.set(YS(t,i.x,s.x,r.x,o.x),YS(t,i.y,s.y,r.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(){const 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}}$S.prototype.isCubicBezierCurve=!0;class JS extends BS{constructor(t=new Sb,e=new Sb,n=new Sb,i=new Sb){super(),this.type=\\\\\\\"CubicBezierCurve3\\\\\\\",this.v0=t,this.v1=e,this.v2=n,this.v3=i}getPoint(t,e=new Sb){const n=e,i=this.v0,s=this.v1,r=this.v2,o=this.v3;return n.set(YS(t,i.x,s.x,r.x,o.x),YS(t,i.y,s.y,r.y,o.y),YS(t,i.z,s.z,r.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(){const 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}}JS.prototype.isCubicBezierCurve3=!0;class ZS extends BS{constructor(t=new _b,e=new _b){super(),this.type=\\\\\\\"LineCurve\\\\\\\",this.v1=t,this.v2=e}getPoint(t,e=new _b){const n=e;return 1===t?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){const n=e||new _b;return n.copy(this.v2).sub(this.v1).normalize(),n}copy(t){return super.copy(t),this.v1.copy(t.v1),this.v2.copy(t.v2),this}toJSON(){const 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}}ZS.prototype.isLineCurve=!0;class KS extends BS{constructor(t=new _b,e=new _b,n=new _b){super(),this.type=\\\\\\\"QuadraticBezierCurve\\\\\\\",this.v0=t,this.v1=e,this.v2=n}getPoint(t,e=new _b){const n=e,i=this.v0,s=this.v1,r=this.v2;return n.set(XS(t,i.x,s.x,r.x),XS(t,i.y,s.y,r.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(){const 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}}KS.prototype.isQuadraticBezierCurve=!0;class QS extends BS{constructor(t=new Sb,e=new Sb,n=new Sb){super(),this.type=\\\\\\\"QuadraticBezierCurve3\\\\\\\",this.v0=t,this.v1=e,this.v2=n}getPoint(t,e=new Sb){const n=e,i=this.v0,s=this.v1,r=this.v2;return n.set(XS(t,i.x,s.x,r.x),XS(t,i.y,s.y,r.y),XS(t,i.z,s.z,r.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(){const 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}}QS.prototype.isQuadraticBezierCurve3=!0;class tC extends BS{constructor(t=[]){super(),this.type=\\\\\\\"SplineCurve\\\\\\\",this.points=t}getPoint(t,e=new _b){const n=e,i=this.points,s=(i.length-1)*t,r=Math.floor(s),o=s-r,a=i[0===r?r:r-1],l=i[r],c=i[r>i.length-2?i.length-1:r+1],h=i[r>i.length-3?i.length-1:r+2];return n.set(qS(o,a.x,l.x,c.x,h.x),qS(o,a.y,l.y,c.y,h.y)),n}copy(t){super.copy(t),this.points=[];for(let e=0,n=t.points.length;e<n;e++){const n=t.points[e];this.points.push(n.clone())}return this}toJSON(){const t=super.toJSON();t.points=[];for(let e=0,n=this.points.length;e<n;e++){const n=this.points[e];t.points.push(n.toArray())}return t}fromJSON(t){super.fromJSON(t),this.points=[];for(let e=0,n=t.points.length;e<n;e++){const n=t.points[e];this.points.push((new _b).fromArray(n))}return this}}tC.prototype.isSplineCurve=!0;var eC=Object.freeze({__proto__:null,ArcCurve:kS,CatmullRomCurve3:WS,CubicBezierCurve:$S,CubicBezierCurve3:JS,EllipseCurve:zS,LineCurve:ZS,LineCurve3:class extends BS{constructor(t=new Sb,e=new Sb){super(),this.type=\\\\\\\"LineCurve3\\\\\\\",this.isLineCurve3=!0,this.v1=t,this.v2=e}getPoint(t,e=new Sb){const n=e;return 1===t?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)}copy(t){return super.copy(t),this.v1.copy(t.v1),this.v2.copy(t.v2),this}toJSON(){const 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}},QuadraticBezierCurve:KS,QuadraticBezierCurve3:QS,SplineCurve:tC});class nC extends BS{constructor(){super(),this.type=\\\\\\\"CurvePath\\\\\\\",this.curves=[],this.autoClose=!1}add(t){this.curves.push(t)}closePath(){const t=this.curves[0].getPoint(0),e=this.curves[this.curves.length-1].getPoint(1);t.equals(e)||this.curves.push(new ZS(e,t))}getPoint(t,e){const n=t*this.getLength(),i=this.getCurveLengths();let s=0;for(;s<i.length;){if(i[s]>=n){const t=i[s]-n,r=this.curves[s],o=r.getLength(),a=0===o?0:1-t/o;return r.getPointAt(a,e)}s++}return null}getLength(){const 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;const t=[];let 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){const 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){const e=[];let n;for(let i=0,s=this.curves;i<s.length;i++){const r=s[i],o=r&&r.isEllipseCurve?2*t:r&&(r.isLineCurve||r.isLineCurve3)?1:r&&r.isSplineCurve?t*r.points.length:t,a=r.getPoints(o);for(let t=0;t<a.length;t++){const i=a[t];n&&n.equals(i)||(e.push(i),n=i)}}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++){const n=t.curves[e];this.curves.push(n.clone())}return this.autoClose=t.autoClose,this}toJSON(){const t=super.toJSON();t.autoClose=this.autoClose,t.curves=[];for(let e=0,n=this.curves.length;e<n;e++){const n=this.curves[e];t.curves.push(n.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++){const n=t.curves[e];this.curves.push((new eC[n.type]).fromJSON(n))}return this}}class iC extends nC{constructor(t){super(),this.type=\\\\\\\"Path\\\\\\\",this.currentPoint=new _b,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){const n=new ZS(this.currentPoint.clone(),new _b(t,e));return this.curves.push(n),this.currentPoint.set(t,e),this}quadraticCurveTo(t,e,n,i){const s=new KS(this.currentPoint.clone(),new _b(t,e),new _b(n,i));return this.curves.push(s),this.currentPoint.set(n,i),this}bezierCurveTo(t,e,n,i,s,r){const o=new $S(this.currentPoint.clone(),new _b(t,e),new _b(n,i),new _b(s,r));return this.curves.push(o),this.currentPoint.set(s,r),this}splineThru(t){const e=[this.currentPoint.clone()].concat(t),n=new tC(e);return this.curves.push(n),this.currentPoint.copy(t[t.length-1]),this}arc(t,e,n,i,s,r){const o=this.currentPoint.x,a=this.currentPoint.y;return this.absarc(t+o,e+a,n,i,s,r),this}absarc(t,e,n,i,s,r){return this.absellipse(t,e,n,n,i,s,r),this}ellipse(t,e,n,i,s,r,o,a){const l=this.currentPoint.x,c=this.currentPoint.y;return this.absellipse(t+l,e+c,n,i,s,r,o,a),this}absellipse(t,e,n,i,s,r,o,a){const l=new zS(t,e,n,i,s,r,o,a);if(this.curves.length>0){const t=l.getPoint(0);t.equals(this.currentPoint)||this.lineTo(t.x,t.y)}this.curves.push(l);const c=l.getPoint(1);return this.currentPoint.copy(c),this}copy(t){return super.copy(t),this.currentPoint.copy(t.currentPoint),this}toJSON(){const t=super.toJSON();return t.currentPoint=this.currentPoint.toArray(),t}fromJSON(t){return super.fromJSON(t),this.currentPoint.fromArray(t.currentPoint),this}}class sC extends iC{constructor(t){super(t),this.uuid=ob(),this.type=\\\\\\\"Shape\\\\\\\",this.holes=[]}getPointsHoles(t){const 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++){const n=t.holes[e];this.holes.push(n.clone())}return this}toJSON(){const t=super.toJSON();t.uuid=this.uuid,t.holes=[];for(let e=0,n=this.holes.length;e<n;e++){const n=this.holes[e];t.holes.push(n.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++){const n=t.holes[e];this.holes.push((new iC).fromJSON(n))}return this}}const rC=function(t,e,n=2){const i=e&&e.length,s=i?e[0]*n:t.length;let r=oC(t,0,s,n,!0);const o=[];if(!r||r.next===r.prev)return o;let a,l,c,h,u,d,p;if(i&&(r=function(t,e,n,i){const s=[];let r,o,a,l,c;for(r=0,o=e.length;r<o;r++)a=e[r]*i,l=r<o-1?e[r+1]*i:t.length,c=oC(t,a,l,i,!1),c===c.next&&(c.steiner=!0),s.push(gC(c));for(s.sort(pC),r=0;r<s.length;r++)_C(s[r],n),n=aC(n,n.next);return n}(t,e,r,n)),t.length>80*n){a=c=t[0],l=h=t[1];for(let e=n;e<s;e+=n)u=t[e],d=t[e+1],u<a&&(a=u),d<l&&(l=d),u>c&&(c=u),d>h&&(h=d);p=Math.max(c-a,h-l),p=0!==p?1/p:0}return lC(r,o,n,a,l,p),o};function oC(t,e,n,i,s){let r,o;if(s===function(t,e,n,i){let s=0;for(let r=e,o=n-i;r<n;r+=i)s+=(t[o]-t[r])*(t[r+1]+t[o+1]),o=r;return s}(t,e,n,i)>0)for(r=e;r<n;r+=i)o=SC(r,t[r],t[r+1],o);else for(r=n-i;r>=e;r-=i)o=SC(r,t[r],t[r+1],o);return o&&bC(o,o.next)&&(CC(o),o=o.next),o}function aC(t,e){if(!t)return t;e||(e=t);let n,i=t;do{if(n=!1,i.steiner||!bC(i,i.next)&&0!==xC(i.prev,i,i.next))i=i.next;else{if(CC(i),i=e=i.prev,i===i.next)break;n=!0}}while(n||i!==e);return e}function lC(t,e,n,i,s,r,o){if(!t)return;!o&&r&&function(t,e,n,i){let s=t;do{null===s.z&&(s.z=fC(s.x,s.y,e,n,i)),s.prevZ=s.prev,s.nextZ=s.next,s=s.next}while(s!==t);s.prevZ.nextZ=null,s.prevZ=null,function(t){let e,n,i,s,r,o,a,l,c=1;do{for(n=t,t=null,r=null,o=0;n;){for(o++,i=n,a=0,e=0;e<c&&(a++,i=i.nextZ,i);e++);for(l=c;a>0||l>0&&i;)0!==a&&(0===l||!i||n.z<=i.z)?(s=n,n=n.nextZ,a--):(s=i,i=i.nextZ,l--),r?r.nextZ=s:t=s,s.prevZ=r,r=s;n=i}r.nextZ=null,c*=2}while(o>1)}(s)}(t,i,s,r);let a,l,c=t;for(;t.prev!==t.next;)if(a=t.prev,l=t.next,r?hC(t,i,s,r):cC(t))e.push(a.i/n),e.push(t.i/n),e.push(l.i/n),CC(t),t=l.next,c=l.next;else if((t=l)===c){o?1===o?lC(t=uC(aC(t),e,n),e,n,i,s,r,2):2===o&&dC(t,e,n,i,s,r):lC(aC(t),e,n,i,s,r,1);break}}function cC(t){const e=t.prev,n=t,i=t.next;if(xC(e,n,i)>=0)return!1;let s=t.next.next;for(;s!==t.prev;){if(vC(e.x,e.y,n.x,n.y,i.x,i.y,s.x,s.y)&&xC(s.prev,s,s.next)>=0)return!1;s=s.next}return!0}function hC(t,e,n,i){const s=t.prev,r=t,o=t.next;if(xC(s,r,o)>=0)return!1;const a=s.x<r.x?s.x<o.x?s.x:o.x:r.x<o.x?r.x:o.x,l=s.y<r.y?s.y<o.y?s.y:o.y:r.y<o.y?r.y:o.y,c=s.x>r.x?s.x>o.x?s.x:o.x:r.x>o.x?r.x:o.x,h=s.y>r.y?s.y>o.y?s.y:o.y:r.y>o.y?r.y:o.y,u=fC(a,l,e,n,i),d=fC(c,h,e,n,i);let p=t.prevZ,_=t.nextZ;for(;p&&p.z>=u&&_&&_.z<=d;){if(p!==t.prev&&p!==t.next&&vC(s.x,s.y,r.x,r.y,o.x,o.y,p.x,p.y)&&xC(p.prev,p,p.next)>=0)return!1;if(p=p.prevZ,_!==t.prev&&_!==t.next&&vC(s.x,s.y,r.x,r.y,o.x,o.y,_.x,_.y)&&xC(_.prev,_,_.next)>=0)return!1;_=_.nextZ}for(;p&&p.z>=u;){if(p!==t.prev&&p!==t.next&&vC(s.x,s.y,r.x,r.y,o.x,o.y,p.x,p.y)&&xC(p.prev,p,p.next)>=0)return!1;p=p.prevZ}for(;_&&_.z<=d;){if(_!==t.prev&&_!==t.next&&vC(s.x,s.y,r.x,r.y,o.x,o.y,_.x,_.y)&&xC(_.prev,_,_.next)>=0)return!1;_=_.nextZ}return!0}function uC(t,e,n){let i=t;do{const s=i.prev,r=i.next.next;!bC(s,r)&&wC(s,i,i.next,r)&&MC(s,r)&&MC(r,s)&&(e.push(s.i/n),e.push(i.i/n),e.push(r.i/n),CC(i),CC(i.next),i=t=r),i=i.next}while(i!==t);return aC(i)}function dC(t,e,n,i,s,r){let o=t;do{let t=o.next.next;for(;t!==o.prev;){if(o.i!==t.i&&yC(o,t)){let a=EC(o,t);return o=aC(o,o.next),a=aC(a,a.next),lC(o,e,n,i,s,r),void lC(a,e,n,i,s,r)}t=t.next}o=o.next}while(o!==t)}function pC(t,e){return t.x-e.x}function _C(t,e){if(e=function(t,e){let n=e;const i=t.x,s=t.y;let r,o=-1/0;do{if(s<=n.y&&s>=n.next.y&&n.next.y!==n.y){const t=n.x+(s-n.y)*(n.next.x-n.x)/(n.next.y-n.y);if(t<=i&&t>o){if(o=t,t===i){if(s===n.y)return n;if(s===n.next.y)return n.next}r=n.x<n.next.x?n:n.next}}n=n.next}while(n!==e);if(!r)return null;if(i===o)return r;const a=r,l=r.x,c=r.y;let h,u=1/0;n=r;do{i>=n.x&&n.x>=l&&i!==n.x&&vC(s<c?i:o,s,l,c,s<c?o:i,s,n.x,n.y)&&(h=Math.abs(s-n.y)/(i-n.x),MC(n,t)&&(h<u||h===u&&(n.x>r.x||n.x===r.x&&mC(r,n)))&&(r=n,u=h)),n=n.next}while(n!==a);return r}(t,e)){const n=EC(e,t);aC(e,e.next),aC(n,n.next)}}function mC(t,e){return xC(t.prev,t,e.prev)<0&&xC(e.next,t,t.next)<0}function fC(t,e,n,i,s){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=32767*(t-n)*s)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=32767*(e-i)*s)|e<<8))|e<<4))|e<<2))|e<<1))<<1}function gC(t){let e=t,n=t;do{(e.x<n.x||e.x===n.x&&e.y<n.y)&&(n=e),e=e.next}while(e!==t);return n}function vC(t,e,n,i,s,r,o,a){return(s-o)*(e-a)-(t-o)*(r-a)>=0&&(t-o)*(i-a)-(n-o)*(e-a)>=0&&(n-o)*(r-a)-(s-o)*(i-a)>=0}function yC(t,e){return t.next.i!==e.i&&t.prev.i!==e.i&&!function(t,e){let n=t;do{if(n.i!==t.i&&n.next.i!==t.i&&n.i!==e.i&&n.next.i!==e.i&&wC(n,n.next,t,e))return!0;n=n.next}while(n!==t);return!1}(t,e)&&(MC(t,e)&&MC(e,t)&&function(t,e){let n=t,i=!1;const s=(t.x+e.x)/2,r=(t.y+e.y)/2;do{n.y>r!=n.next.y>r&&n.next.y!==n.y&&s<(n.next.x-n.x)*(r-n.y)/(n.next.y-n.y)+n.x&&(i=!i),n=n.next}while(n!==t);return i}(t,e)&&(xC(t.prev,t,e.prev)||xC(t,e.prev,e))||bC(t,e)&&xC(t.prev,t,t.next)>0&&xC(e.prev,e,e.next)>0)}function xC(t,e,n){return(e.y-t.y)*(n.x-e.x)-(e.x-t.x)*(n.y-e.y)}function bC(t,e){return t.x===e.x&&t.y===e.y}function wC(t,e,n,i){const s=AC(xC(t,e,n)),r=AC(xC(t,e,i)),o=AC(xC(n,i,t)),a=AC(xC(n,i,e));return s!==r&&o!==a||(!(0!==s||!TC(t,n,e))||(!(0!==r||!TC(t,i,e))||(!(0!==o||!TC(n,t,i))||!(0!==a||!TC(n,e,i)))))}function TC(t,e,n){return e.x<=Math.max(t.x,n.x)&&e.x>=Math.min(t.x,n.x)&&e.y<=Math.max(t.y,n.y)&&e.y>=Math.min(t.y,n.y)}function AC(t){return t>0?1:t<0?-1:0}function MC(t,e){return xC(t.prev,t,t.next)<0?xC(t,e,t.next)>=0&&xC(t,t.prev,e)>=0:xC(t,e,t.prev)<0||xC(t,t.next,e)<0}function EC(t,e){const n=new NC(t.i,t.x,t.y),i=new NC(e.i,e.x,e.y),s=t.next,r=e.prev;return t.next=e,e.prev=t,n.next=s,s.prev=n,i.next=n,n.prev=i,r.next=i,i.prev=r,i}function SC(t,e,n,i){const s=new NC(t,e,n);return i?(s.next=i.next,s.prev=i,i.next.prev=s,i.next=s):(s.prev=s,s.next=s),s}function CC(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)}function NC(t,e,n){this.i=t,this.x=e,this.y=n,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}class LC{static area(t){const e=t.length;let 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.5*n}static isClockWise(t){return LC.area(t)<0}static triangulateShape(t,e){const n=[],i=[],s=[];OC(t),PC(n,t);let r=t.length;e.forEach(OC);for(let t=0;t<e.length;t++)i.push(r),r+=e[t].length,PC(n,e[t]);const o=rC(n,i);for(let t=0;t<o.length;t+=3)s.push(o.slice(t,t+3));return s}}function OC(t){const e=t.length;e>2&&t[e-1].equals(t[0])&&t.pop()}function PC(t,e){for(let n=0;n<e.length;n++)t.push(e[n].x),t.push(e[n].y)}class RC extends hT{constructor(t=new sC([new _b(.5,.5),new _b(-.5,.5),new _b(-.5,-.5),new _b(.5,-.5)]),e={}){super(),this.type=\\\\\\\"ExtrudeGeometry\\\\\\\",this.parameters={shapes:t,options:e},t=Array.isArray(t)?t:[t];const n=this,i=[],s=[];for(let e=0,n=t.length;e<n;e++){r(t[e])}function r(t){const r=[],o=void 0!==e.curveSegments?e.curveSegments:12,a=void 0!==e.steps?e.steps:1;let l=void 0!==e.depth?e.depth:1,c=void 0===e.bevelEnabled||e.bevelEnabled,h=void 0!==e.bevelThickness?e.bevelThickness:.2,u=void 0!==e.bevelSize?e.bevelSize:h-.1,d=void 0!==e.bevelOffset?e.bevelOffset:0,p=void 0!==e.bevelSegments?e.bevelSegments:3;const _=e.extrudePath,m=void 0!==e.UVGenerator?e.UVGenerator:IC;void 0!==e.amount&&(console.warn(\\\\\\\"THREE.ExtrudeBufferGeometry: amount has been renamed to depth.\\\\\\\"),l=e.amount);let f,g,v,y,x,b=!1;_&&(f=_.getSpacedPoints(a),b=!0,c=!1,g=_.computeFrenetFrames(a,!1),v=new Sb,y=new Sb,x=new Sb),c||(p=0,h=0,u=0,d=0);const w=t.extractPoints(o);let T=w.shape;const A=w.holes;if(!LC.isClockWise(T)){T=T.reverse();for(let t=0,e=A.length;t<e;t++){const e=A[t];LC.isClockWise(e)&&(A[t]=e.reverse())}}const M=LC.triangulateShape(T,A),E=T;for(let t=0,e=A.length;t<e;t++){const e=A[t];T=T.concat(e)}function S(t,e,n){return e||console.error(\\\\\\\"THREE.ExtrudeGeometry: vec does not exist\\\\\\\"),e.clone().multiplyScalar(n).add(t)}const C=T.length,N=M.length;function L(t,e,n){let i,s,r;const o=t.x-e.x,a=t.y-e.y,l=n.x-t.x,c=n.y-t.y,h=o*o+a*a,u=o*c-a*l;if(Math.abs(u)>Number.EPSILON){const u=Math.sqrt(h),d=Math.sqrt(l*l+c*c),p=e.x-a/u,_=e.y+o/u,m=((n.x-c/d-p)*c-(n.y+l/d-_)*l)/(o*c-a*l);i=p+o*m-t.x,s=_+a*m-t.y;const f=i*i+s*s;if(f<=2)return new _b(i,s);r=Math.sqrt(f/2)}else{let t=!1;o>Number.EPSILON?l>Number.EPSILON&&(t=!0):o<-Number.EPSILON?l<-Number.EPSILON&&(t=!0):Math.sign(a)===Math.sign(c)&&(t=!0),t?(i=-a,s=o,r=Math.sqrt(h)):(i=o,s=a,r=Math.sqrt(h/2))}return new _b(i/r,s/r)}const O=[];for(let t=0,e=E.length,n=e-1,i=t+1;t<e;t++,n++,i++)n===e&&(n=0),i===e&&(i=0),O[t]=L(E[t],E[n],E[i]);const P=[];let R,I=O.concat();for(let t=0,e=A.length;t<e;t++){const e=A[t];R=[];for(let t=0,n=e.length,i=n-1,s=t+1;t<n;t++,i++,s++)i===n&&(i=0),s===n&&(s=0),R[t]=L(e[t],e[i],e[s]);P.push(R),I=I.concat(R)}for(let t=0;t<p;t++){const e=t/p,n=h*Math.cos(e*Math.PI/2),i=u*Math.sin(e*Math.PI/2)+d;for(let t=0,e=E.length;t<e;t++){const e=S(E[t],O[t],i);B(e.x,e.y,-n)}for(let t=0,e=A.length;t<e;t++){const e=A[t];R=P[t];for(let t=0,s=e.length;t<s;t++){const s=S(e[t],R[t],i);B(s.x,s.y,-n)}}}const F=u+d;for(let t=0;t<C;t++){const e=c?S(T[t],I[t],F):T[t];b?(y.copy(g.normals[0]).multiplyScalar(e.x),v.copy(g.binormals[0]).multiplyScalar(e.y),x.copy(f[0]).add(y).add(v),B(x.x,x.y,x.z)):B(e.x,e.y,0)}for(let t=1;t<=a;t++)for(let e=0;e<C;e++){const n=c?S(T[e],I[e],F):T[e];b?(y.copy(g.normals[t]).multiplyScalar(n.x),v.copy(g.binormals[t]).multiplyScalar(n.y),x.copy(f[t]).add(y).add(v),B(x.x,x.y,x.z)):B(n.x,n.y,l/a*t)}for(let t=p-1;t>=0;t--){const e=t/p,n=h*Math.cos(e*Math.PI/2),i=u*Math.sin(e*Math.PI/2)+d;for(let t=0,e=E.length;t<e;t++){const e=S(E[t],O[t],i);B(e.x,e.y,l+n)}for(let t=0,e=A.length;t<e;t++){const e=A[t];R=P[t];for(let t=0,s=e.length;t<s;t++){const s=S(e[t],R[t],i);b?B(s.x,s.y+f[a-1].y,f[a-1].x+n):B(s.x,s.y,l+n)}}}function D(t,e){let n=t.length;for(;--n>=0;){const i=n;let s=n-1;s<0&&(s=t.length-1);for(let t=0,n=a+2*p;t<n;t++){const n=C*t,r=C*(t+1);k(e+i+n,e+s+n,e+s+r,e+i+r)}}}function B(t,e,n){r.push(t),r.push(e),r.push(n)}function z(t,e,s){U(t),U(e),U(s);const r=i.length/3,o=m.generateTopUV(n,i,r-3,r-2,r-1);G(o[0]),G(o[1]),G(o[2])}function k(t,e,s,r){U(t),U(e),U(r),U(e),U(s),U(r);const o=i.length/3,a=m.generateSideWallUV(n,i,o-6,o-3,o-2,o-1);G(a[0]),G(a[1]),G(a[3]),G(a[1]),G(a[2]),G(a[3])}function U(t){i.push(r[3*t+0]),i.push(r[3*t+1]),i.push(r[3*t+2])}function G(t){s.push(t.x),s.push(t.y)}!function(){const t=i.length/3;if(c){let t=0,e=C*t;for(let t=0;t<N;t++){const n=M[t];z(n[2]+e,n[1]+e,n[0]+e)}t=a+2*p,e=C*t;for(let t=0;t<N;t++){const n=M[t];z(n[0]+e,n[1]+e,n[2]+e)}}else{for(let t=0;t<N;t++){const e=M[t];z(e[2],e[1],e[0])}for(let t=0;t<N;t++){const e=M[t];z(e[0]+C*a,e[1]+C*a,e[2]+C*a)}}n.addGroup(t,i.length/3-t,0)}(),function(){const t=i.length/3;let e=0;D(E,e),e+=E.length;for(let t=0,n=A.length;t<n;t++){const n=A[t];D(n,e),e+=n.length}n.addGroup(t,i.length/3-t,1)}()}this.setAttribute(\\\\\\\"position\\\\\\\",new nT(i,3)),this.setAttribute(\\\\\\\"uv\\\\\\\",new nT(s,2)),this.computeVertexNormals()}toJSON(){const t=super.toJSON();return function(t,e,n){if(n.shapes=[],Array.isArray(t))for(let e=0,i=t.length;e<i;e++){const i=t[e];n.shapes.push(i.uuid)}else n.shapes.push(t.uuid);void 0!==e.extrudePath&&(n.options.extrudePath=e.extrudePath.toJSON());return n}(this.parameters.shapes,this.parameters.options,t)}static fromJSON(t,e){const n=[];for(let i=0,s=t.shapes.length;i<s;i++){const s=e[t.shapes[i]];n.push(s)}const i=t.options.extrudePath;return void 0!==i&&(t.options.extrudePath=(new eC[i.type]).fromJSON(i)),new RC(n,t.options)}}const IC={generateTopUV:function(t,e,n,i,s){const r=e[3*n],o=e[3*n+1],a=e[3*i],l=e[3*i+1],c=e[3*s],h=e[3*s+1];return[new _b(r,o),new _b(a,l),new _b(c,h)]},generateSideWallUV:function(t,e,n,i,s,r){const o=e[3*n],a=e[3*n+1],l=e[3*n+2],c=e[3*i],h=e[3*i+1],u=e[3*i+2],d=e[3*s],p=e[3*s+1],_=e[3*s+2],m=e[3*r],f=e[3*r+1],g=e[3*r+2];return Math.abs(a-h)<Math.abs(o-c)?[new _b(o,1-l),new _b(c,1-u),new _b(d,1-_),new _b(m,1-g)]:[new _b(a,1-l),new _b(h,1-u),new _b(p,1-_),new _b(f,1-g)]}};class FC extends hT{constructor(t=new sC([new _b(0,.5),new _b(-.5,-.5),new _b(.5,-.5)]),e=12){super(),this.type=\\\\\\\"ShapeGeometry\\\\\\\",this.parameters={shapes:t,curveSegments:e};const n=[],i=[],s=[],r=[];let o=0,a=0;if(!1===Array.isArray(t))l(t);else for(let e=0;e<t.length;e++)l(t[e]),this.addGroup(o,a,e),o+=a,a=0;function l(t){const o=i.length/3,l=t.extractPoints(e);let c=l.shape;const h=l.holes;!1===LC.isClockWise(c)&&(c=c.reverse());for(let t=0,e=h.length;t<e;t++){const e=h[t];!0===LC.isClockWise(e)&&(h[t]=e.reverse())}const u=LC.triangulateShape(c,h);for(let t=0,e=h.length;t<e;t++){const e=h[t];c=c.concat(e)}for(let t=0,e=c.length;t<e;t++){const e=c[t];i.push(e.x,e.y,0),s.push(0,0,1),r.push(e.x,e.y)}for(let t=0,e=u.length;t<e;t++){const e=u[t],i=e[0]+o,s=e[1]+o,r=e[2]+o;n.push(i,s,r),a+=3}}this.setIndex(n),this.setAttribute(\\\\\\\"position\\\\\\\",new nT(i,3)),this.setAttribute(\\\\\\\"normal\\\\\\\",new nT(s,3)),this.setAttribute(\\\\\\\"uv\\\\\\\",new nT(r,2))}toJSON(){const t=super.toJSON();return function(t,e){if(e.shapes=[],Array.isArray(t))for(let n=0,i=t.length;n<i;n++){const i=t[n];e.shapes.push(i.uuid)}else e.shapes.push(t.uuid);return e}(this.parameters.shapes,t)}static fromJSON(t,e){const n=[];for(let i=0,s=t.shapes.length;i<s;i++){const s=e[t.shapes[i]];n.push(s)}return new FC(n,t.curveSegments)}}class DC extends Vw{constructor(t){super(),this.type=\\\\\\\"ShadowMaterial\\\\\\\",this.color=new $w(0),this.transparent=!0,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this}}DC.prototype.isShadowMaterial=!0;class BC extends Vw{constructor(t){super(),this.defines={STANDARD:\\\\\\\"\\\\\\\"},this.type=\\\\\\\"MeshStandardMaterial\\\\\\\",this.color=new $w(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 $w(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new _b(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.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap=\\\\\\\"round\\\\\\\",this.wireframeLinejoin=\\\\\\\"round\\\\\\\",this.flatShading=!1,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.refractionRatio=t.refractionRatio,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.wireframeLinecap=t.wireframeLinecap,this.wireframeLinejoin=t.wireframeLinejoin,this.flatShading=t.flatShading,this}}BC.prototype.isMeshStandardMaterial=!0;class zC extends BC{constructor(t){super(),this.defines={STANDARD:\\\\\\\"\\\\\\\",PHYSICAL:\\\\\\\"\\\\\\\"},this.type=\\\\\\\"MeshPhysicalMaterial\\\\\\\",this.clearcoatMap=null,this.clearcoatRoughness=0,this.clearcoatRoughnessMap=null,this.clearcoatNormalScale=new _b(1,1),this.clearcoatNormalMap=null,this.ior=1.5,Object.defineProperty(this,\\\\\\\"reflectivity\\\\\\\",{get:function(){return ab(2.5*(this.ior-1)/(this.ior+1),0,1)},set:function(t){this.ior=(1+.4*t)/(1-.4*t)}}),this.sheenTint=new $w(0),this.sheenRoughness=1,this.transmissionMap=null,this.thickness=.01,this.thicknessMap=null,this.attenuationDistance=0,this.attenuationTint=new $w(1,1,1),this.specularIntensity=1,this.specularIntensityMap=null,this.specularTint=new $w(1,1,1),this.specularTintMap=null,this._sheen=0,this._clearcoat=0,this._transmission=0,this.setValues(t)}get sheen(){return this._sheen}set sheen(t){this._sheen>0!=t>0&&this.version++,this._sheen=t}get clearcoat(){return this._clearcoat}set clearcoat(t){this._clearcoat>0!=t>0&&this.version++,this._clearcoat=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.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.sheen=t.sheen,this.sheenTint.copy(t.sheenTint),this.sheenRoughness=t.sheenRoughness,this.transmission=t.transmission,this.transmissionMap=t.transmissionMap,this.thickness=t.thickness,this.thicknessMap=t.thicknessMap,this.attenuationDistance=t.attenuationDistance,this.attenuationTint.copy(t.attenuationTint),this.specularIntensity=t.specularIntensity,this.specularIntensityMap=t.specularIntensityMap,this.specularTint.copy(t.specularTint),this.specularTintMap=t.specularTintMap,this}}zC.prototype.isMeshPhysicalMaterial=!0;class kC extends Vw{constructor(t){super(),this.type=\\\\\\\"MeshPhongMaterial\\\\\\\",this.color=new $w(16777215),this.specular=new $w(1118481),this.shininess=30,this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new $w(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new _b(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.combine=0,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap=\\\\\\\"round\\\\\\\",this.wireframeLinejoin=\\\\\\\"round\\\\\\\",this.flatShading=!1,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}}kC.prototype.isMeshPhongMaterial=!0;class UC extends Vw{constructor(t){super(),this.defines={TOON:\\\\\\\"\\\\\\\"},this.type=\\\\\\\"MeshToonMaterial\\\\\\\",this.color=new $w(16777215),this.map=null,this.gradientMap=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new $w(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new _b(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.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}}UC.prototype.isMeshToonMaterial=!0;class GC extends Vw{constructor(t){super(),this.type=\\\\\\\"MeshNormalMaterial\\\\\\\",this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new _b(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.wireframe=!1,this.wireframeLinewidth=1,this.fog=!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}}GC.prototype.isMeshNormalMaterial=!0;class VC extends Vw{constructor(t){super(),this.type=\\\\\\\"MeshLambertMaterial\\\\\\\",this.color=new $w(16777215),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new $w(0),this.emissiveIntensity=1,this.emissiveMap=null,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.combine=0,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap=\\\\\\\"round\\\\\\\",this.wireframeLinejoin=\\\\\\\"round\\\\\\\",this.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.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}}VC.prototype.isMeshLambertMaterial=!0;class HC extends Vw{constructor(t){super(),this.defines={MATCAP:\\\\\\\"\\\\\\\"},this.type=\\\\\\\"MeshMatcapMaterial\\\\\\\",this.color=new $w(16777215),this.matcap=null,this.map=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new _b(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.alphaMap=null,this.flatShading=!1,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}}HC.prototype.isMeshMatcapMaterial=!0;class jC extends vS{constructor(t){super(),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}}jC.prototype.isLineDashedMaterial=!0;const WC={arraySlice:function(t,e,n){return WC.isTypedArray(t)?new t.constructor(t.subarray(e,void 0!==n?n:t.length)):t.slice(e,n)},convertArray:function(t,e,n){return!t||!n&&t.constructor===e?t:\\\\\\\"number\\\\\\\"==typeof e.BYTES_PER_ELEMENT?new e(t):Array.prototype.slice.call(t)},isTypedArray:function(t){return ArrayBuffer.isView(t)&&!(t instanceof DataView)},getKeyframeOrder:function(t){const e=t.length,n=new Array(e);for(let t=0;t!==e;++t)n[t]=t;return n.sort((function(e,n){return t[e]-t[n]})),n},sortedArray:function(t,e,n){const i=t.length,s=new t.constructor(i);for(let r=0,o=0;o!==i;++r){const i=n[r]*e;for(let n=0;n!==e;++n)s[o++]=t[i+n]}return s},flattenJSON:function(t,e,n,i){let s=1,r=t[0];for(;void 0!==r&&void 0===r[i];)r=t[s++];if(void 0===r)return;let o=r[i];if(void 0!==o)if(Array.isArray(o))do{o=r[i],void 0!==o&&(e.push(r.time),n.push.apply(n,o)),r=t[s++]}while(void 0!==r);else if(void 0!==o.toArray)do{o=r[i],void 0!==o&&(e.push(r.time),o.toArray(n,n.length)),r=t[s++]}while(void 0!==r);else do{o=r[i],void 0!==o&&(e.push(r.time),n.push(o)),r=t[s++]}while(void 0!==r)},subclip:function(t,e,n,i,s=30){const r=t.clone();r.name=e;const o=[];for(let t=0;t<r.tracks.length;++t){const e=r.tracks[t],a=e.getValueSize(),l=[],c=[];for(let t=0;t<e.times.length;++t){const r=e.times[t]*s;if(!(r<n||r>=i)){l.push(e.times[t]);for(let n=0;n<a;++n)c.push(e.values[t*a+n])}}0!==l.length&&(e.times=WC.convertArray(l,e.times.constructor),e.values=WC.convertArray(c,e.values.constructor),o.push(e))}r.tracks=o;let a=1/0;for(let t=0;t<r.tracks.length;++t)a>r.tracks[t].times[0]&&(a=r.tracks[t].times[0]);for(let t=0;t<r.tracks.length;++t)r.tracks[t].shift(-1*a);return r.resetDuration(),r},makeClipAdditive:function(t,e=0,n=t,i=30){i<=0&&(i=30);const s=n.tracks.length,r=e/i;for(let e=0;e<s;++e){const i=n.tracks[e],s=i.ValueTypeName;if(\\\\\\\"bool\\\\\\\"===s||\\\\\\\"string\\\\\\\"===s)continue;const o=t.tracks.find((function(t){return t.name===i.name&&t.ValueTypeName===s}));if(void 0===o)continue;let a=0;const l=i.getValueSize();i.createInterpolant.isInterpolantFactoryMethodGLTFCubicSpline&&(a=l/3);let c=0;const h=o.getValueSize();o.createInterpolant.isInterpolantFactoryMethodGLTFCubicSpline&&(c=h/3);const u=i.times.length-1;let d;if(r<=i.times[0]){const t=a,e=l-a;d=WC.arraySlice(i.values,t,e)}else if(r>=i.times[u]){const t=u*l+a,e=t+l-a;d=WC.arraySlice(i.values,t,e)}else{const t=i.createInterpolant(),e=a,n=l-a;t.evaluate(r),d=WC.arraySlice(t.resultBuffer,e,n)}if(\\\\\\\"quaternion\\\\\\\"===s){(new Eb).fromArray(d).normalize().conjugate().toArray(d)}const p=o.times.length;for(let t=0;t<p;++t){const e=t*h+c;if(\\\\\\\"quaternion\\\\\\\"===s)Eb.multiplyQuaternionsFlat(o.values,e,d,0,o.values,e);else{const t=h-2*c;for(let n=0;n<t;++n)o.values[e+n]-=d[n]}}}return t.blendMode=2501,t}};class qC{constructor(t,e,n,i){this.parameterPositions=t,this._cachedIndex=0,this.resultBuffer=void 0!==i?i:new e.constructor(n),this.sampleValues=e,this.valueSize=n,this.settings=null,this.DefaultSettings_={}}evaluate(t){const e=this.parameterPositions;let n=this._cachedIndex,i=e[n],s=e[n-1];t:{e:{let r;n:{i:if(!(t<i)){for(let r=n+2;;){if(void 0===i){if(t<s)break i;return n=e.length,this._cachedIndex=n,this.afterEnd_(n-1,t,s)}if(n===r)break;if(s=i,i=e[++n],t<i)break e}r=e.length;break n}if(t>=s)break t;{const o=e[1];t<o&&(n=2,s=o);for(let r=n-2;;){if(void 0===s)return this._cachedIndex=0,this.beforeStart_(0,t,i);if(n===r)break;if(i=s,s=e[--n-1],t>=s)break e}r=n,n=0}}for(;n<r;){const i=n+r>>>1;t<e[i]?r=i:n=i+1}if(i=e[n],s=e[n-1],void 0===s)return this._cachedIndex=0,this.beforeStart_(0,t,i);if(void 0===i)return n=e.length,this._cachedIndex=n,this.afterEnd_(n-1,s,t)}this._cachedIndex=n,this.intervalChanged_(n,s,i)}return this.interpolate_(n,s,t,i)}getSettings_(){return this.settings||this.DefaultSettings_}copySampleValue_(t){const e=this.resultBuffer,n=this.sampleValues,i=this.valueSize,s=t*i;for(let t=0;t!==i;++t)e[t]=n[s+t];return e}interpolate_(){throw new Error(\\\\\\\"call to abstract method\\\\\\\")}intervalChanged_(){}}qC.prototype.beforeStart_=qC.prototype.copySampleValue_,qC.prototype.afterEnd_=qC.prototype.copySampleValue_;class XC extends qC{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:Vx,endingEnd:Vx}}intervalChanged_(t,e,n){const i=this.parameterPositions;let s=t-2,r=t+1,o=i[s],a=i[r];if(void 0===o)switch(this.getSettings_().endingStart){case Hx:s=t,o=2*e-n;break;case jx:s=i.length-2,o=e+i[s]-i[s+1];break;default:s=t,o=n}if(void 0===a)switch(this.getSettings_().endingEnd){case Hx:r=t,a=2*n-e;break;case jx:r=1,a=n+i[1]-i[0];break;default:r=t-1,a=e}const l=.5*(n-e),c=this.valueSize;this._weightPrev=l/(e-o),this._weightNext=l/(a-n),this._offsetPrev=s*c,this._offsetNext=r*c}interpolate_(t,e,n,i){const s=this.resultBuffer,r=this.sampleValues,o=this.valueSize,a=t*o,l=a-o,c=this._offsetPrev,h=this._offsetNext,u=this._weightPrev,d=this._weightNext,p=(n-e)/(i-e),_=p*p,m=_*p,f=-u*m+2*u*_-u*p,g=(1+u)*m+(-1.5-2*u)*_+(-.5+u)*p+1,v=(-1-d)*m+(1.5+d)*_+.5*p,y=d*m-d*_;for(let t=0;t!==o;++t)s[t]=f*r[c+t]+g*r[l+t]+v*r[a+t]+y*r[h+t];return s}}class YC extends qC{constructor(t,e,n,i){super(t,e,n,i)}interpolate_(t,e,n,i){const s=this.resultBuffer,r=this.sampleValues,o=this.valueSize,a=t*o,l=a-o,c=(n-e)/(i-e),h=1-c;for(let t=0;t!==o;++t)s[t]=r[l+t]*h+r[a+t]*c;return s}}class $C extends qC{constructor(t,e,n,i){super(t,e,n,i)}interpolate_(t){return this.copySampleValue_(t-1)}}class JC{constructor(t,e,n,i){if(void 0===t)throw new Error(\\\\\\\"THREE.KeyframeTrack: track name is undefined\\\\\\\");if(void 0===e||0===e.length)throw new Error(\\\\\\\"THREE.KeyframeTrack: no keyframes in track named \\\\\\\"+t);this.name=t,this.times=WC.convertArray(e,this.TimeBufferType),this.values=WC.convertArray(n,this.ValueBufferType),this.setInterpolation(i||this.DefaultInterpolation)}static toJSON(t){const e=t.constructor;let n;if(e.toJSON!==this.toJSON)n=e.toJSON(t);else{n={name:t.name,times:WC.convertArray(t.times,Array),values:WC.convertArray(t.values,Array)};const e=t.getInterpolation();e!==t.DefaultInterpolation&&(n.interpolation=e)}return n.type=t.ValueTypeName,n}InterpolantFactoryMethodDiscrete(t){return new $C(this.times,this.values,this.getValueSize(),t)}InterpolantFactoryMethodLinear(t){return new YC(this.times,this.values,this.getValueSize(),t)}InterpolantFactoryMethodSmooth(t){return new XC(this.times,this.values,this.getValueSize(),t)}setInterpolation(t){let e;switch(t){case kx:e=this.InterpolantFactoryMethodDiscrete;break;case Ux:e=this.InterpolantFactoryMethodLinear;break;case Gx:e=this.InterpolantFactoryMethodSmooth}if(void 0===e){const e=\\\\\\\"unsupported interpolation for \\\\\\\"+this.ValueTypeName+\\\\\\\" keyframe track named \\\\\\\"+this.name;if(void 0===this.createInterpolant){if(t===this.DefaultInterpolation)throw new Error(e);this.setInterpolation(this.DefaultInterpolation)}return console.warn(\\\\\\\"THREE.KeyframeTrack:\\\\\\\",e),this}return this.createInterpolant=e,this}getInterpolation(){switch(this.createInterpolant){case this.InterpolantFactoryMethodDiscrete:return kx;case this.InterpolantFactoryMethodLinear:return Ux;case this.InterpolantFactoryMethodSmooth:return Gx}}getValueSize(){return this.values.length/this.times.length}shift(t){if(0!==t){const e=this.times;for(let n=0,i=e.length;n!==i;++n)e[n]+=t}return this}scale(t){if(1!==t){const e=this.times;for(let n=0,i=e.length;n!==i;++n)e[n]*=t}return this}trim(t,e){const n=this.times,i=n.length;let s=0,r=i-1;for(;s!==i&&n[s]<t;)++s;for(;-1!==r&&n[r]>e;)--r;if(++r,0!==s||r!==i){s>=r&&(r=Math.max(r,1),s=r-1);const t=this.getValueSize();this.times=WC.arraySlice(n,s,r),this.values=WC.arraySlice(this.values,s*t,r*t)}return this}validate(){let t=!0;const e=this.getValueSize();e-Math.floor(e)!=0&&(console.error(\\\\\\\"THREE.KeyframeTrack: Invalid value size in track.\\\\\\\",this),t=!1);const n=this.times,i=this.values,s=n.length;0===s&&(console.error(\\\\\\\"THREE.KeyframeTrack: Track is empty.\\\\\\\",this),t=!1);let r=null;for(let e=0;e!==s;e++){const i=n[e];if(\\\\\\\"number\\\\\\\"==typeof i&&isNaN(i)){console.error(\\\\\\\"THREE.KeyframeTrack: Time is not a valid number.\\\\\\\",this,e,i),t=!1;break}if(null!==r&&r>i){console.error(\\\\\\\"THREE.KeyframeTrack: Out of order keys.\\\\\\\",this,e,i,r),t=!1;break}r=i}if(void 0!==i&&WC.isTypedArray(i))for(let e=0,n=i.length;e!==n;++e){const n=i[e];if(isNaN(n)){console.error(\\\\\\\"THREE.KeyframeTrack: Value is not a valid number.\\\\\\\",this,e,n),t=!1;break}}return t}optimize(){const t=WC.arraySlice(this.times),e=WC.arraySlice(this.values),n=this.getValueSize(),i=this.getInterpolation()===Gx,s=t.length-1;let r=1;for(let o=1;o<s;++o){let s=!1;const a=t[o];if(a!==t[o+1]&&(1!==o||a!==t[0]))if(i)s=!0;else{const t=o*n,i=t-n,r=t+n;for(let o=0;o!==n;++o){const n=e[t+o];if(n!==e[i+o]||n!==e[r+o]){s=!0;break}}}if(s){if(o!==r){t[r]=t[o];const i=o*n,s=r*n;for(let t=0;t!==n;++t)e[s+t]=e[i+t]}++r}}if(s>0){t[r]=t[s];for(let t=s*n,i=r*n,o=0;o!==n;++o)e[i+o]=e[t+o];++r}return r!==t.length?(this.times=WC.arraySlice(t,0,r),this.values=WC.arraySlice(e,0,r*n)):(this.times=t,this.values=e),this}clone(){const t=WC.arraySlice(this.times,0),e=WC.arraySlice(this.values,0),n=new(0,this.constructor)(this.name,t,e);return n.createInterpolant=this.createInterpolant,n}}JC.prototype.TimeBufferType=Float32Array,JC.prototype.ValueBufferType=Float32Array,JC.prototype.DefaultInterpolation=Ux;class ZC extends JC{}ZC.prototype.ValueTypeName=\\\\\\\"bool\\\\\\\",ZC.prototype.ValueBufferType=Array,ZC.prototype.DefaultInterpolation=kx,ZC.prototype.InterpolantFactoryMethodLinear=void 0,ZC.prototype.InterpolantFactoryMethodSmooth=void 0;class KC extends JC{}KC.prototype.ValueTypeName=\\\\\\\"color\\\\\\\";class QC extends JC{}QC.prototype.ValueTypeName=\\\\\\\"number\\\\\\\";class tN extends qC{constructor(t,e,n,i){super(t,e,n,i)}interpolate_(t,e,n,i){const s=this.resultBuffer,r=this.sampleValues,o=this.valueSize,a=(n-e)/(i-e);let l=t*o;for(let t=l+o;l!==t;l+=4)Eb.slerpFlat(s,0,r,l-o,r,l,a);return s}}class eN extends JC{InterpolantFactoryMethodLinear(t){return new tN(this.times,this.values,this.getValueSize(),t)}}eN.prototype.ValueTypeName=\\\\\\\"quaternion\\\\\\\",eN.prototype.DefaultInterpolation=Ux,eN.prototype.InterpolantFactoryMethodSmooth=void 0;class nN extends JC{}nN.prototype.ValueTypeName=\\\\\\\"string\\\\\\\",nN.prototype.ValueBufferType=Array,nN.prototype.DefaultInterpolation=kx,nN.prototype.InterpolantFactoryMethodLinear=void 0,nN.prototype.InterpolantFactoryMethodSmooth=void 0;class iN extends JC{}iN.prototype.ValueTypeName=\\\\\\\"vector\\\\\\\";class sN{constructor(t,e=-1,n,i=2500){this.name=t,this.tracks=n,this.duration=e,this.blendMode=i,this.uuid=ob(),this.duration<0&&this.resetDuration()}static parse(t){const e=[],n=t.tracks,i=1/(t.fps||1);for(let t=0,s=n.length;t!==s;++t)e.push(rN(n[t]).scale(i));const s=new this(t.name,t.duration,e,t.blendMode);return s.uuid=t.uuid,s}static toJSON(t){const e=[],n=t.tracks,i={name:t.name,duration:t.duration,tracks:e,uuid:t.uuid,blendMode:t.blendMode};for(let t=0,i=n.length;t!==i;++t)e.push(JC.toJSON(n[t]));return i}static CreateFromMorphTargetSequence(t,e,n,i){const s=e.length,r=[];for(let t=0;t<s;t++){let o=[],a=[];o.push((t+s-1)%s,t,(t+1)%s),a.push(0,1,0);const l=WC.getKeyframeOrder(o);o=WC.sortedArray(o,1,l),a=WC.sortedArray(a,1,l),i||0!==o[0]||(o.push(s),a.push(a[0])),r.push(new QC(\\\\\\\".morphTargetInfluences[\\\\\\\"+e[t].name+\\\\\\\"]\\\\\\\",o,a).scale(1/n))}return new this(t,-1,r)}static findByName(t,e){let n=t;if(!Array.isArray(t)){const e=t;n=e.geometry&&e.geometry.animations||e.animations}for(let t=0;t<n.length;t++)if(n[t].name===e)return n[t];return null}static CreateClipsFromMorphTargetSequences(t,e,n){const i={},s=/^([\\\\w-]*?)([\\\\d]+)$/;for(let e=0,n=t.length;e<n;e++){const n=t[e],r=n.name.match(s);if(r&&r.length>1){const t=r[1];let e=i[t];e||(i[t]=e=[]),e.push(n)}}const r=[];for(const t in i)r.push(this.CreateFromMorphTargetSequence(t,i[t],e,n));return r}static parseAnimation(t,e){if(!t)return console.error(\\\\\\\"THREE.AnimationClip: No animation in JSONLoader data.\\\\\\\"),null;const n=function(t,e,n,i,s){if(0!==n.length){const r=[],o=[];WC.flattenJSON(n,r,o,i),0!==r.length&&s.push(new t(e,r,o))}},i=[],s=t.name||\\\\\\\"default\\\\\\\",r=t.fps||30,o=t.blendMode;let a=t.length||-1;const l=t.hierarchy||[];for(let t=0;t<l.length;t++){const s=l[t].keys;if(s&&0!==s.length)if(s[0].morphTargets){const t={};let e;for(e=0;e<s.length;e++)if(s[e].morphTargets)for(let n=0;n<s[e].morphTargets.length;n++)t[s[e].morphTargets[n]]=-1;for(const n in t){const t=[],r=[];for(let i=0;i!==s[e].morphTargets.length;++i){const i=s[e];t.push(i.time),r.push(i.morphTarget===n?1:0)}i.push(new QC(\\\\\\\".morphTargetInfluence[\\\\\\\"+n+\\\\\\\"]\\\\\\\",t,r))}a=t.length*(r||1)}else{const r=\\\\\\\".bones[\\\\\\\"+e[t].name+\\\\\\\"]\\\\\\\";n(iN,r+\\\\\\\".position\\\\\\\",s,\\\\\\\"pos\\\\\\\",i),n(eN,r+\\\\\\\".quaternion\\\\\\\",s,\\\\\\\"rot\\\\\\\",i),n(iN,r+\\\\\\\".scale\\\\\\\",s,\\\\\\\"scl\\\\\\\",i)}}if(0===i.length)return null;return new this(s,a,i,o)}resetDuration(){let t=0;for(let e=0,n=this.tracks.length;e!==n;++e){const n=this.tracks[e];t=Math.max(t,n.times[n.times.length-1])}return this.duration=t,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(){const 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 rN(t){if(void 0===t.type)throw new Error(\\\\\\\"THREE.KeyframeTrack: track type undefined, can not parse\\\\\\\");const e=function(t){switch(t.toLowerCase()){case\\\\\\\"scalar\\\\\\\":case\\\\\\\"double\\\\\\\":case\\\\\\\"float\\\\\\\":case\\\\\\\"number\\\\\\\":case\\\\\\\"integer\\\\\\\":return QC;case\\\\\\\"vector\\\\\\\":case\\\\\\\"vector2\\\\\\\":case\\\\\\\"vector3\\\\\\\":case\\\\\\\"vector4\\\\\\\":return iN;case\\\\\\\"color\\\\\\\":return KC;case\\\\\\\"quaternion\\\\\\\":return eN;case\\\\\\\"bool\\\\\\\":case\\\\\\\"boolean\\\\\\\":return ZC;case\\\\\\\"string\\\\\\\":return nN}throw new Error(\\\\\\\"THREE.KeyframeTrack: Unsupported typeName: \\\\\\\"+t)}(t.type);if(void 0===t.times){const e=[],n=[];WC.flattenJSON(t.keys,e,n,\\\\\\\"value\\\\\\\"),t.times=e,t.values=n}return void 0!==e.parse?e.parse(t):new e(t.name,t.times,t.values,t.interpolation)}const oN={enabled:!1,files:{},add:function(t,e){!1!==this.enabled&&(this.files[t]=e)},get:function(t){if(!1!==this.enabled)return this.files[t]},remove:function(t){delete this.files[t]},clear:function(){this.files={}}};class aN{constructor(t,e,n){const i=this;let s,r=!1,o=0,a=0;const l=[];this.onStart=void 0,this.onLoad=t,this.onProgress=e,this.onError=n,this.itemStart=function(t){a++,!1===r&&void 0!==i.onStart&&i.onStart(t,o,a),r=!0},this.itemEnd=function(t){o++,void 0!==i.onProgress&&i.onProgress(t,o,a),o===a&&(r=!1,void 0!==i.onLoad&&i.onLoad())},this.itemError=function(t){void 0!==i.onError&&i.onError(t)},this.resolveURL=function(t){return s?s(t):t},this.setURLModifier=function(t){return s=t,this},this.addHandler=function(t,e){return l.push(t,e),this},this.removeHandler=function(t){const e=l.indexOf(t);return-1!==e&&l.splice(e,2),this},this.getHandler=function(t){for(let e=0,n=l.length;e<n;e+=2){const n=l[e],i=l[e+1];if(n.global&&(n.lastIndex=0),n.test(t))return i}return null}}}const lN=new aN;class cN{constructor(t){this.manager=void 0!==t?t:lN,this.crossOrigin=\\\\\\\"anonymous\\\\\\\",this.withCredentials=!1,this.path=\\\\\\\"\\\\\\\",this.resourcePath=\\\\\\\"\\\\\\\",this.requestHeader={}}load(){}loadAsync(t,e){const 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}}const hN={};class uN extends cN{constructor(t){super(t)}load(t,e,n,i){void 0===t&&(t=\\\\\\\"\\\\\\\"),void 0!==this.path&&(t=this.path+t),t=this.manager.resolveURL(t);const s=this,r=oN.get(t);if(void 0!==r)return s.manager.itemStart(t),setTimeout((function(){e&&e(r),s.manager.itemEnd(t)}),0),r;if(void 0!==hN[t])return void hN[t].push({onLoad:e,onProgress:n,onError:i});const o=t.match(/^data:(.*?)(;base64)?,(.*)$/);let a;if(o){const n=o[1],r=!!o[2];let a=o[3];a=decodeURIComponent(a),r&&(a=atob(a));try{let i;const r=(this.responseType||\\\\\\\"\\\\\\\").toLowerCase();switch(r){case\\\\\\\"arraybuffer\\\\\\\":case\\\\\\\"blob\\\\\\\":const t=new Uint8Array(a.length);for(let e=0;e<a.length;e++)t[e]=a.charCodeAt(e);i=\\\\\\\"blob\\\\\\\"===r?new Blob([t.buffer],{type:n}):t.buffer;break;case\\\\\\\"document\\\\\\\":const e=new DOMParser;i=e.parseFromString(a,n);break;case\\\\\\\"json\\\\\\\":i=JSON.parse(a);break;default:i=a}setTimeout((function(){e&&e(i),s.manager.itemEnd(t)}),0)}catch(e){setTimeout((function(){i&&i(e),s.manager.itemError(t),s.manager.itemEnd(t)}),0)}}else{hN[t]=[],hN[t].push({onLoad:e,onProgress:n,onError:i}),a=new XMLHttpRequest,a.open(\\\\\\\"GET\\\\\\\",t,!0),a.addEventListener(\\\\\\\"load\\\\\\\",(function(e){const n=this.response,i=hN[t];if(delete hN[t],200===this.status||0===this.status){0===this.status&&console.warn(\\\\\\\"THREE.FileLoader: HTTP Status 0 received.\\\\\\\"),oN.add(t,n);for(let t=0,e=i.length;t<e;t++){const e=i[t];e.onLoad&&e.onLoad(n)}s.manager.itemEnd(t)}else{for(let t=0,n=i.length;t<n;t++){const n=i[t];n.onError&&n.onError(e)}s.manager.itemError(t),s.manager.itemEnd(t)}}),!1),a.addEventListener(\\\\\\\"progress\\\\\\\",(function(e){const n=hN[t];for(let t=0,i=n.length;t<i;t++){const i=n[t];i.onProgress&&i.onProgress(e)}}),!1),a.addEventListener(\\\\\\\"error\\\\\\\",(function(e){const n=hN[t];delete hN[t];for(let t=0,i=n.length;t<i;t++){const i=n[t];i.onError&&i.onError(e)}s.manager.itemError(t),s.manager.itemEnd(t)}),!1),a.addEventListener(\\\\\\\"abort\\\\\\\",(function(e){const n=hN[t];delete hN[t];for(let t=0,i=n.length;t<i;t++){const i=n[t];i.onError&&i.onError(e)}s.manager.itemError(t),s.manager.itemEnd(t)}),!1),void 0!==this.responseType&&(a.responseType=this.responseType),void 0!==this.withCredentials&&(a.withCredentials=this.withCredentials),a.overrideMimeType&&a.overrideMimeType(void 0!==this.mimeType?this.mimeType:\\\\\\\"text/plain\\\\\\\");for(const t in this.requestHeader)a.setRequestHeader(t,this.requestHeader[t]);a.send(null)}return s.manager.itemStart(t),a}setResponseType(t){return this.responseType=t,this}setMimeType(t){return this.mimeType=t,this}}class dN extends cN{constructor(t){super(t)}load(t,e,n,i){void 0!==this.path&&(t=this.path+t),t=this.manager.resolveURL(t);const s=this,r=oN.get(t);if(void 0!==r)return s.manager.itemStart(t),setTimeout((function(){e&&e(r),s.manager.itemEnd(t)}),0),r;const o=gb(\\\\\\\"img\\\\\\\");function a(){o.removeEventListener(\\\\\\\"load\\\\\\\",a,!1),o.removeEventListener(\\\\\\\"error\\\\\\\",l,!1),oN.add(t,this),e&&e(this),s.manager.itemEnd(t)}function l(e){o.removeEventListener(\\\\\\\"load\\\\\\\",a,!1),o.removeEventListener(\\\\\\\"error\\\\\\\",l,!1),i&&i(e),s.manager.itemError(t),s.manager.itemEnd(t)}return o.addEventListener(\\\\\\\"load\\\\\\\",a,!1),o.addEventListener(\\\\\\\"error\\\\\\\",l,!1),\\\\\\\"data:\\\\\\\"!==t.substr(0,5)&&void 0!==this.crossOrigin&&(o.crossOrigin=this.crossOrigin),s.manager.itemStart(t),o.src=t,o}}class pN extends cN{constructor(t){super(t)}load(t,e,n,i){const s=new kT,r=new dN(this.manager);r.setCrossOrigin(this.crossOrigin),r.setPath(this.path);let o=0;function a(n){r.load(t[n],(function(t){s.images[n]=t,o++,6===o&&(s.needsUpdate=!0,e&&e(s))}),void 0,i)}for(let e=0;e<t.length;++e)a(e);return s}}class _N extends cN{constructor(t){super(t)}load(t,e,n,i){const s=new bb,r=new dN(this.manager);return r.setCrossOrigin(this.crossOrigin),r.setPath(this.path),r.load(t,(function(t){s.image=t,s.needsUpdate=!0,void 0!==e&&e(s)}),n,i),s}}class mN extends Nw{constructor(t,e=1){super(),this.type=\\\\\\\"Light\\\\\\\",this.color=new $w(t),this.intensity=e}dispose(){}copy(t){return super.copy(t),this.color.copy(t.color),this.intensity=t.intensity,this}toJSON(t){const e=super.toJSON(t);return e.object.color=this.color.getHex(),e.object.intensity=this.intensity,void 0!==this.groundColor&&(e.object.groundColor=this.groundColor.getHex()),void 0!==this.distance&&(e.object.distance=this.distance),void 0!==this.angle&&(e.object.angle=this.angle),void 0!==this.decay&&(e.object.decay=this.decay),void 0!==this.penumbra&&(e.object.penumbra=this.penumbra),void 0!==this.shadow&&(e.object.shadow=this.shadow.toJSON()),e}}mN.prototype.isLight=!0;class fN extends mN{constructor(t,e,n){super(t,n),this.type=\\\\\\\"HemisphereLight\\\\\\\",this.position.copy(Nw.DefaultUp),this.updateMatrix(),this.groundColor=new $w(e)}copy(t){return mN.prototype.copy.call(this,t),this.groundColor.copy(t.groundColor),this}}fN.prototype.isHemisphereLight=!0;const gN=new sw,vN=new Sb,yN=new Sb;class xN{constructor(t){this.camera=t,this.bias=0,this.normalBias=0,this.radius=1,this.blurSamples=8,this.mapSize=new _b(512,512),this.map=null,this.mapPass=null,this.matrix=new sw,this.autoUpdate=!0,this.needsUpdate=!1,this._frustum=new XT,this._frameExtents=new _b(1,1),this._viewportCount=1,this._viewports=[new Tb(0,0,1,1)]}getViewportCount(){return this._viewportCount}getFrustum(){return this._frustum}updateMatrices(t){const e=this.camera,n=this.matrix;vN.setFromMatrixPosition(t.matrixWorld),e.position.copy(vN),yN.setFromMatrixPosition(t.target.matrixWorld),e.lookAt(yN),e.updateMatrixWorld(),gN.multiplyMatrices(e.projectionMatrix,e.matrixWorldInverse),this._frustum.setFromProjectionMatrix(gN),n.set(.5,0,0,.5,0,.5,0,.5,0,0,.5,.5,0,0,0,1),n.multiply(e.projectionMatrix),n.multiply(e.matrixWorldInverse)}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(){const t={};return 0!==this.bias&&(t.bias=this.bias),0!==this.normalBias&&(t.normalBias=this.normalBias),1!==this.radius&&(t.radius=this.radius),512===this.mapSize.x&&512===this.mapSize.y||(t.mapSize=this.mapSize.toArray()),t.camera=this.camera.toJSON(!1).object,delete t.camera.matrix,t}}class bN extends xN{constructor(){super(new DT(50,1,.5,500)),this.focus=1}updateMatrices(t){const e=this.camera,n=2*ib*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}}bN.prototype.isSpotLightShadow=!0;class wN extends mN{constructor(t,e,n=0,i=Math.PI/3,s=0,r=1){super(t,e),this.type=\\\\\\\"SpotLight\\\\\\\",this.position.copy(Nw.DefaultUp),this.updateMatrix(),this.target=new Nw,this.distance=n,this.angle=i,this.penumbra=s,this.decay=r,this.shadow=new bN}get power(){return this.intensity*Math.PI}set power(t){this.intensity=t/Math.PI}dispose(){this.shadow.dispose()}copy(t){return super.copy(t),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}}wN.prototype.isSpotLight=!0;const TN=new sw,AN=new Sb,MN=new Sb;class EN extends xN{constructor(){super(new DT(90,1,.5,500)),this._frameExtents=new _b(4,2),this._viewportCount=6,this._viewports=[new Tb(2,1,1,1),new Tb(0,1,1,1),new Tb(3,1,1,1),new Tb(1,1,1,1),new Tb(3,0,1,1),new Tb(1,0,1,1)],this._cubeDirections=[new Sb(1,0,0),new Sb(-1,0,0),new Sb(0,0,1),new Sb(0,0,-1),new Sb(0,1,0),new Sb(0,-1,0)],this._cubeUps=[new Sb(0,1,0),new Sb(0,1,0),new Sb(0,1,0),new Sb(0,1,0),new Sb(0,0,1),new Sb(0,0,-1)]}updateMatrices(t,e=0){const n=this.camera,i=this.matrix,s=t.distance||n.far;s!==n.far&&(n.far=s,n.updateProjectionMatrix()),AN.setFromMatrixPosition(t.matrixWorld),n.position.copy(AN),MN.copy(n.position),MN.add(this._cubeDirections[e]),n.up.copy(this._cubeUps[e]),n.lookAt(MN),n.updateMatrixWorld(),i.makeTranslation(-AN.x,-AN.y,-AN.z),TN.multiplyMatrices(n.projectionMatrix,n.matrixWorldInverse),this._frustum.setFromProjectionMatrix(TN)}}EN.prototype.isPointLightShadow=!0;class SN extends mN{constructor(t,e,n=0,i=1){super(t,e),this.type=\\\\\\\"PointLight\\\\\\\",this.distance=n,this.decay=i,this.shadow=new EN}get power(){return 4*this.intensity*Math.PI}set power(t){this.intensity=t/(4*Math.PI)}dispose(){this.shadow.dispose()}copy(t){return super.copy(t),this.distance=t.distance,this.decay=t.decay,this.shadow=t.shadow.clone(),this}}SN.prototype.isPointLight=!0;class CN extends xN{constructor(){super(new oA(-5,5,5,-5,.5,500))}}CN.prototype.isDirectionalLightShadow=!0;class NN extends mN{constructor(t,e){super(t,e),this.type=\\\\\\\"DirectionalLight\\\\\\\",this.position.copy(Nw.DefaultUp),this.updateMatrix(),this.target=new Nw,this.shadow=new CN}dispose(){this.shadow.dispose()}copy(t){return super.copy(t),this.target=t.target.clone(),this.shadow=t.shadow.clone(),this}}NN.prototype.isDirectionalLight=!0;class LN extends mN{constructor(t,e){super(t,e),this.type=\\\\\\\"AmbientLight\\\\\\\"}}LN.prototype.isAmbientLight=!0;class ON extends mN{constructor(t,e,n=10,i=10){super(t,e),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){const e=super.toJSON(t);return e.object.width=this.width,e.object.height=this.height,e}}ON.prototype.isRectAreaLight=!0;class PN{constructor(){this.coefficients=[];for(let t=0;t<9;t++)this.coefficients.push(new Sb)}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){const n=t.x,i=t.y,s=t.z,r=this.coefficients;return e.copy(r[0]).multiplyScalar(.282095),e.addScaledVector(r[1],.488603*i),e.addScaledVector(r[2],.488603*s),e.addScaledVector(r[3],.488603*n),e.addScaledVector(r[4],n*i*1.092548),e.addScaledVector(r[5],i*s*1.092548),e.addScaledVector(r[6],.315392*(3*s*s-1)),e.addScaledVector(r[7],n*s*1.092548),e.addScaledVector(r[8],.546274*(n*n-i*i)),e}getIrradianceAt(t,e){const n=t.x,i=t.y,s=t.z,r=this.coefficients;return e.copy(r[0]).multiplyScalar(.886227),e.addScaledVector(r[1],1.023328*i),e.addScaledVector(r[2],1.023328*s),e.addScaledVector(r[3],1.023328*n),e.addScaledVector(r[4],.858086*n*i),e.addScaledVector(r[5],.858086*i*s),e.addScaledVector(r[6],.743125*s*s-.247708),e.addScaledVector(r[7],.858086*n*s),e.addScaledVector(r[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){const n=this.coefficients;for(let i=0;i<9;i++)n[i].fromArray(t,e+3*i);return this}toArray(t=[],e=0){const n=this.coefficients;for(let i=0;i<9;i++)n[i].toArray(t,e+3*i);return t}static getBasisAt(t,e){const 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)}}PN.prototype.isSphericalHarmonics3=!0;class RN extends mN{constructor(t=new PN,e=1){super(void 0,e),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){const e=super.toJSON(t);return e.object.sh=this.sh.toArray(),e}}RN.prototype.isLightProbe=!0;class IN{static decodeText(t){if(\\\\\\\"undefined\\\\\\\"!=typeof TextDecoder)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(t){return e}}static extractUrlBase(t){const e=t.lastIndexOf(\\\\\\\"/\\\\\\\");return-1===e?\\\\\\\"./\\\\\\\":t.substr(0,e+1)}}class FN extends hT{constructor(){super(),this.type=\\\\\\\"InstancedBufferGeometry\\\\\\\",this.instanceCount=1/0}copy(t){return super.copy(t),this.instanceCount=t.instanceCount,this}clone(){return(new this.constructor).copy(this)}toJSON(){const t=super.toJSON(this);return t.instanceCount=this.instanceCount,t.isInstancedBufferGeometry=!0,t}}FN.prototype.isInstancedBufferGeometry=!0;let DN;(class extends cN{constructor(t){super(t),\\\\\\\"undefined\\\\\\\"==typeof createImageBitmap&&console.warn(\\\\\\\"THREE.ImageBitmapLoader: createImageBitmap() not supported.\\\\\\\"),\\\\\\\"undefined\\\\\\\"==typeof fetch&&console.warn(\\\\\\\"THREE.ImageBitmapLoader: fetch() not supported.\\\\\\\"),this.options={premultiplyAlpha:\\\\\\\"none\\\\\\\"}}setOptions(t){return this.options=t,this}load(t,e,n,i){void 0===t&&(t=\\\\\\\"\\\\\\\"),void 0!==this.path&&(t=this.path+t),t=this.manager.resolveURL(t);const s=this,r=oN.get(t);if(void 0!==r)return s.manager.itemStart(t),setTimeout((function(){e&&e(r),s.manager.itemEnd(t)}),0),r;const o={};o.credentials=\\\\\\\"anonymous\\\\\\\"===this.crossOrigin?\\\\\\\"same-origin\\\\\\\":\\\\\\\"include\\\\\\\",o.headers=this.requestHeader,fetch(t,o).then((function(t){return t.blob()})).then((function(t){return createImageBitmap(t,Object.assign(s.options,{colorSpaceConversion:\\\\\\\"none\\\\\\\"}))})).then((function(n){oN.add(t,n),e&&e(n),s.manager.itemEnd(t)})).catch((function(e){i&&i(e),s.manager.itemError(t),s.manager.itemEnd(t)})),s.manager.itemStart(t)}}).prototype.isImageBitmapLoader=!0;const BN=function(){return void 0===DN&&(DN=new(window.AudioContext||window.webkitAudioContext)),DN};class zN extends cN{constructor(t){super(t)}load(t,e,n,i){const s=this,r=new uN(this.manager);r.setResponseType(\\\\\\\"arraybuffer\\\\\\\"),r.setPath(this.path),r.setRequestHeader(this.requestHeader),r.setWithCredentials(this.withCredentials),r.load(t,(function(n){try{const t=n.slice(0);BN().decodeAudioData(t,(function(t){e(t)}))}catch(e){i?i(e):console.error(e),s.manager.itemError(t)}}),n,i)}}(class extends RN{constructor(t,e,n=1){super(void 0,n);const i=(new $w).set(t),s=(new $w).set(e),r=new Sb(i.r,i.g,i.b),o=new Sb(s.r,s.g,s.b),a=Math.sqrt(Math.PI),l=a*Math.sqrt(.75);this.sh.coefficients[0].copy(r).add(o).multiplyScalar(a),this.sh.coefficients[1].copy(r).sub(o).multiplyScalar(l)}}).prototype.isHemisphereLightProbe=!0;(class extends RN{constructor(t,e=1){super(void 0,e);const n=(new $w).set(t);this.sh.coefficients[0].set(n.r,n.g,n.b).multiplyScalar(2*Math.sqrt(Math.PI))}}).prototype.isAmbientLightProbe=!0;class kN extends Nw{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(!0===this.isPlaying)return void console.warn(\\\\\\\"THREE.Audio: Audio is already playing.\\\\\\\");if(!1===this.hasPlaybackControl)return void console.warn(\\\\\\\"THREE.Audio: this Audio has no playback control.\\\\\\\");this._startedAt=this.context.currentTime+t;const 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(!1!==this.hasPlaybackControl)return!0===this.isPlaying&&(this._progress+=Math.max(this.context.currentTime-this._startedAt,0)*this.playbackRate,!0===this.loop&&(this._progress=this._progress%(this.duration||this.buffer.duration)),this.source.stop(),this.source.onended=null,this.isPlaying=!1),this;console.warn(\\\\\\\"THREE.Audio: this Audio has no playback control.\\\\\\\")}stop(){if(!1!==this.hasPlaybackControl)return this._progress=0,this.source.stop(),this.source.onended=null,this.isPlaying=!1,this;console.warn(\\\\\\\"THREE.Audio: this Audio has no playback control.\\\\\\\")}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.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=[]),!0===this._connected?(this.disconnect(),this.filters=t.slice(),this.connect()):this.filters=t.slice(),this}setDetune(t){if(this.detune=t,void 0!==this.source.detune)return!0===this.isPlaying&&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(!1!==this.hasPlaybackControl)return this.playbackRate=t,!0===this.isPlaying&&this.source.playbackRate.setTargetAtTime(this.playbackRate,this.context.currentTime,.01),this;console.warn(\\\\\\\"THREE.Audio: this Audio has no playback control.\\\\\\\")}getPlaybackRate(){return this.playbackRate}onEnded(){this.isPlaying=!1}getLoop(){return!1===this.hasPlaybackControl?(console.warn(\\\\\\\"THREE.Audio: this Audio has no playback control.\\\\\\\"),!1):this.loop}setLoop(t){if(!1!==this.hasPlaybackControl)return this.loop=t,!0===this.isPlaying&&(this.source.loop=this.loop),this;console.warn(\\\\\\\"THREE.Audio: this Audio has no playback control.\\\\\\\")}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}}class UN{constructor(t,e,n){let i,s,r;switch(this.binding=t,this.valueSize=n,e){case\\\\\\\"quaternion\\\\\\\":i=this._slerp,s=this._slerpAdditive,r=this._setAdditiveIdentityQuaternion,this.buffer=new Float64Array(6*n),this._workIndex=5;break;case\\\\\\\"string\\\\\\\":case\\\\\\\"bool\\\\\\\":i=this._select,s=this._select,r=this._setAdditiveIdentityOther,this.buffer=new Array(5*n);break;default:i=this._lerp,s=this._lerpAdditive,r=this._setAdditiveIdentityNumeric,this.buffer=new Float64Array(5*n)}this._mixBufferRegion=i,this._mixBufferRegionAdditive=s,this._setIdentity=r,this._origIndex=3,this._addIndex=4,this.cumulativeWeight=0,this.cumulativeWeightAdditive=0,this.useCount=0,this.referenceCount=0}accumulate(t,e){const n=this.buffer,i=this.valueSize,s=t*i+i;let r=this.cumulativeWeight;if(0===r){for(let t=0;t!==i;++t)n[s+t]=n[t];r=e}else{r+=e;const t=e/r;this._mixBufferRegion(n,s,0,t,i)}this.cumulativeWeight=r}accumulateAdditive(t){const e=this.buffer,n=this.valueSize,i=n*this._addIndex;0===this.cumulativeWeightAdditive&&this._setIdentity(),this._mixBufferRegionAdditive(e,i,0,t,n),this.cumulativeWeightAdditive+=t}apply(t){const e=this.valueSize,n=this.buffer,i=t*e+e,s=this.cumulativeWeight,r=this.cumulativeWeightAdditive,o=this.binding;if(this.cumulativeWeight=0,this.cumulativeWeightAdditive=0,s<1){const t=e*this._origIndex;this._mixBufferRegion(n,i,t,1-s,e)}r>0&&this._mixBufferRegionAdditive(n,i,this._addIndex*e,1,e);for(let t=e,s=e+e;t!==s;++t)if(n[t]!==n[t+e]){o.setValue(n,i);break}}saveOriginalState(){const t=this.binding,e=this.buffer,n=this.valueSize,i=n*this._origIndex;t.getValue(e,i);for(let t=n,s=i;t!==s;++t)e[t]=e[i+t%n];this._setIdentity(),this.cumulativeWeight=0,this.cumulativeWeightAdditive=0}restoreOriginalState(){const t=3*this.valueSize;this.binding.setValue(this.buffer,t)}_setAdditiveIdentityNumeric(){const 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(){const 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 i=0;i!==s;++i)t[e+i]=t[n+i]}_slerp(t,e,n,i){Eb.slerpFlat(t,e,t,e,t,n,i)}_slerpAdditive(t,e,n,i,s){const r=this._workIndex*s;Eb.multiplyQuaternionsFlat(t,r,t,e,t,n),Eb.slerpFlat(t,e,t,e,t,r,i)}_lerp(t,e,n,i,s){const r=1-i;for(let o=0;o!==s;++o){const s=e+o;t[s]=t[s]*r+t[n+o]*i}}_lerpAdditive(t,e,n,i,s){for(let r=0;r!==s;++r){const s=e+r;t[s]=t[s]+t[n+r]*i}}}const GN=\\\\\\\"\\\\\\\\[\\\\\\\\]\\\\\\\\.:\\\\\\\\/\\\\\\\",VN=new RegExp(\\\\\\\"[\\\\\\\\[\\\\\\\\]\\\\\\\\.:\\\\\\\\/]\\\\\\\",\\\\\\\"g\\\\\\\"),HN=\\\\\\\"[^\\\\\\\\[\\\\\\\\]\\\\\\\\.:\\\\\\\\/]\\\\\\\",jN=\\\\\\\"[^\\\\\\\"+GN.replace(\\\\\\\"\\\\\\\\.\\\\\\\",\\\\\\\"\\\\\\\")+\\\\\\\"]\\\\\\\",WN=/((?:WC+[\\\\/:])*)/.source.replace(\\\\\\\"WC\\\\\\\",HN),qN=/(WCOD+)?/.source.replace(\\\\\\\"WCOD\\\\\\\",jN),XN=/(?:\\\\.(WC+)(?:\\\\[(.+)\\\\])?)?/.source.replace(\\\\\\\"WC\\\\\\\",HN),YN=/\\\\.(WC+)(?:\\\\[(.+)\\\\])?/.source.replace(\\\\\\\"WC\\\\\\\",HN),$N=new RegExp(\\\\\\\"^\\\\\\\"+WN+qN+XN+YN+\\\\\\\"$\\\\\\\"),JN=[\\\\\\\"material\\\\\\\",\\\\\\\"materials\\\\\\\",\\\\\\\"bones\\\\\\\"];class ZN{constructor(t,e,n){this.path=e,this.parsedPath=n||ZN.parseTrackName(e),this.node=ZN.findNode(t,this.parsedPath.nodeName)||t,this.rootNode=t,this.getValue=this._getValue_unbound,this.setValue=this._setValue_unbound}static create(t,e,n){return t&&t.isAnimationObjectGroup?new ZN.Composite(t,e,n):new ZN(t,e,n)}static sanitizeNodeName(t){return t.replace(/\\\\s/g,\\\\\\\"_\\\\\\\").replace(VN,\\\\\\\"\\\\\\\")}static parseTrackName(t){const e=$N.exec(t);if(!e)throw new Error(\\\\\\\"PropertyBinding: Cannot parse trackName: \\\\\\\"+t);const n={nodeName:e[2],objectName:e[3],objectIndex:e[4],propertyName:e[5],propertyIndex:e[6]},i=n.nodeName&&n.nodeName.lastIndexOf(\\\\\\\".\\\\\\\");if(void 0!==i&&-1!==i){const t=n.nodeName.substring(i+1);-1!==JN.indexOf(t)&&(n.nodeName=n.nodeName.substring(0,i),n.objectName=t)}if(null===n.propertyName||0===n.propertyName.length)throw new Error(\\\\\\\"PropertyBinding: can not parse propertyName from trackName: \\\\\\\"+t);return n}static findNode(t,e){if(!e||\\\\\\\"\\\\\\\"===e||\\\\\\\".\\\\\\\"===e||-1===e||e===t.name||e===t.uuid)return t;if(t.skeleton){const n=t.skeleton.getBoneByName(e);if(void 0!==n)return n}if(t.children){const n=function(t){for(let i=0;i<t.length;i++){const s=t[i];if(s.name===e||s.uuid===e)return s;const r=n(s.children);if(r)return r}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){const 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){const n=this.resolvedProperty;for(let i=0,s=n.length;i!==s;++i)n[i]=t[e++]}_setValue_array_setNeedsUpdate(t,e){const 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){const 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;const e=this.parsedPath,n=e.objectName,i=e.propertyName;let s=e.propertyIndex;if(t||(t=ZN.findNode(this.rootNode,e.nodeName)||this.rootNode,this.node=t),this.getValue=this._getValue_unavailable,this.setValue=this._setValue_unavailable,!t)return void console.error(\\\\\\\"THREE.PropertyBinding: Trying to update node for track: \\\\\\\"+this.path+\\\\\\\" but it wasn't found.\\\\\\\");if(n){let i=e.objectIndex;switch(n){case\\\\\\\"materials\\\\\\\":if(!t.material)return void console.error(\\\\\\\"THREE.PropertyBinding: Can not bind to material as node does not have a material.\\\\\\\",this);if(!t.material.materials)return void console.error(\\\\\\\"THREE.PropertyBinding: Can not bind to material.materials as node.material does not have a materials array.\\\\\\\",this);t=t.material.materials;break;case\\\\\\\"bones\\\\\\\":if(!t.skeleton)return void console.error(\\\\\\\"THREE.PropertyBinding: Can not bind to bones as node does not have a skeleton.\\\\\\\",this);t=t.skeleton.bones;for(let e=0;e<t.length;e++)if(t[e].name===i){i=e;break}break;default:if(void 0===t[n])return void console.error(\\\\\\\"THREE.PropertyBinding: Can not bind to objectName of node undefined.\\\\\\\",this);t=t[n]}if(void 0!==i){if(void 0===t[i])return void console.error(\\\\\\\"THREE.PropertyBinding: Trying to bind to objectIndex of objectName, but is undefined.\\\\\\\",this,t);t=t[i]}}const r=t[i];if(void 0===r){const n=e.nodeName;return void console.error(\\\\\\\"THREE.PropertyBinding: Trying to update property for track: \\\\\\\"+n+\\\\\\\".\\\\\\\"+i+\\\\\\\" but it wasn't found.\\\\\\\",t)}let o=this.Versioning.None;this.targetObject=t,void 0!==t.needsUpdate?o=this.Versioning.NeedsUpdate:void 0!==t.matrixWorldNeedsUpdate&&(o=this.Versioning.MatrixWorldNeedsUpdate);let a=this.BindingType.Direct;if(void 0!==s){if(\\\\\\\"morphTargetInfluences\\\\\\\"===i){if(!t.geometry)return void console.error(\\\\\\\"THREE.PropertyBinding: Can not bind to morphTargetInfluences because node does not have a geometry.\\\\\\\",this);if(!t.geometry.isBufferGeometry)return void console.error(\\\\\\\"THREE.PropertyBinding: Can not bind to morphTargetInfluences on THREE.Geometry. Use THREE.BufferGeometry instead.\\\\\\\",this);if(!t.geometry.morphAttributes)return void console.error(\\\\\\\"THREE.PropertyBinding: Can not bind to morphTargetInfluences because node does not have a geometry.morphAttributes.\\\\\\\",this);void 0!==t.morphTargetDictionary[s]&&(s=t.morphTargetDictionary[s])}a=this.BindingType.ArrayElement,this.resolvedProperty=r,this.propertyIndex=s}else void 0!==r.fromArray&&void 0!==r.toArray?(a=this.BindingType.HasFromToArray,this.resolvedProperty=r):Array.isArray(r)?(a=this.BindingType.EntireArray,this.resolvedProperty=r):this.propertyName=i;this.getValue=this.GetterByBindingType[a],this.setValue=this.SetterByBindingTypeAndVersioning[a][o]}unbind(){this.node=null,this.getValue=this._getValue_unbound,this.setValue=this._setValue_unbound}}ZN.Composite=class{constructor(t,e,n){const i=n||ZN.parseTrackName(e);this._targetGroup=t,this._bindings=t.subscribe_(e,i)}getValue(t,e){this.bind();const n=this._targetGroup.nCachedObjects_,i=this._bindings[n];void 0!==i&&i.getValue(t,e)}setValue(t,e){const n=this._bindings;for(let i=this._targetGroup.nCachedObjects_,s=n.length;i!==s;++i)n[i].setValue(t,e)}bind(){const t=this._bindings;for(let e=this._targetGroup.nCachedObjects_,n=t.length;e!==n;++e)t[e].bind()}unbind(){const t=this._bindings;for(let e=this._targetGroup.nCachedObjects_,n=t.length;e!==n;++e)t[e].unbind()}},ZN.prototype.BindingType={Direct:0,EntireArray:1,ArrayElement:2,HasFromToArray:3},ZN.prototype.Versioning={None:0,NeedsUpdate:1,MatrixWorldNeedsUpdate:2},ZN.prototype.GetterByBindingType=[ZN.prototype._getValue_direct,ZN.prototype._getValue_array,ZN.prototype._getValue_arrayElement,ZN.prototype._getValue_toArray],ZN.prototype.SetterByBindingTypeAndVersioning=[[ZN.prototype._setValue_direct,ZN.prototype._setValue_direct_setNeedsUpdate,ZN.prototype._setValue_direct_setMatrixWorldNeedsUpdate],[ZN.prototype._setValue_array,ZN.prototype._setValue_array_setNeedsUpdate,ZN.prototype._setValue_array_setMatrixWorldNeedsUpdate],[ZN.prototype._setValue_arrayElement,ZN.prototype._setValue_arrayElement_setNeedsUpdate,ZN.prototype._setValue_arrayElement_setMatrixWorldNeedsUpdate],[ZN.prototype._setValue_fromArray,ZN.prototype._setValue_fromArray_setNeedsUpdate,ZN.prototype._setValue_fromArray_setMatrixWorldNeedsUpdate]];class KN{constructor(t,e,n=null,i=e.blendMode){this._mixer=t,this._clip=e,this._localRoot=n,this.blendMode=i;const s=e.tracks,r=s.length,o=new Array(r),a={endingStart:Vx,endingEnd:Vx};for(let t=0;t!==r;++t){const e=s[t].createInterpolant(null);o[t]=e,e.settings=a}this._interpolantSettings=a,this._interpolants=o,this._propertyBindings=new Array(r),this._cacheIndex=null,this._byClipCacheIndex=null,this._timeScaleInterpolant=null,this._weightInterpolant=null,this.loop=2201,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&&0!==this.timeScale&&null===this._startTime&&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){const n=this._clip.duration,i=t._clip.duration,s=i/n,r=n/i;t.warp(1,s,e),this.warp(r,1,e)}return this}crossFadeTo(t,e,n){return t.crossFadeFrom(this,e,n)}stopFading(){const t=this._weightInterpolant;return null!==t&&(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){const i=this._mixer,s=i.time,r=this.timeScale;let o=this._timeScaleInterpolant;null===o&&(o=i._lendControlInterpolant(),this._timeScaleInterpolant=o);const a=o.parameterPositions,l=o.sampleValues;return a[0]=s,a[1]=s+n,l[0]=t/r,l[1]=e/r,this}stopWarping(){const t=this._timeScaleInterpolant;return null!==t&&(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)return void this._updateWeight(t);const s=this._startTime;if(null!==s){const i=(t-s)*n;if(i<0||0===n)return;this._startTime=null,e=n*i}e*=this._updateTimeScale(t);const r=this._updateTime(e),o=this._updateWeight(t);if(o>0){const t=this._interpolants,e=this._propertyBindings;switch(this.blendMode){case 2501:for(let n=0,i=t.length;n!==i;++n)t[n].evaluate(r),e[n].accumulateAdditive(o);break;case Wx:default:for(let n=0,s=t.length;n!==s;++n)t[n].evaluate(r),e[n].accumulate(i,o)}}}_updateWeight(t){let e=0;if(this.enabled){e=this.weight;const n=this._weightInterpolant;if(null!==n){const i=n.evaluate(t)[0];e*=i,t>n.parameterPositions[1]&&(this.stopFading(),0===i&&(this.enabled=!1))}}return this._effectiveWeight=e,e}_updateTimeScale(t){let e=0;if(!this.paused){e=this.timeScale;const n=this._timeScaleInterpolant;if(null!==n){e*=n.evaluate(t)[0],t>n.parameterPositions[1]&&(this.stopWarping(),0===e?this.paused=!0:this.timeScale=e)}}return this._effectiveTimeScale=e,e}_updateTime(t){const e=this._clip.duration,n=this.loop;let i=this.time+t,s=this._loopCount;const r=2202===n;if(0===t)return-1===s?i:r&&1==(1&s)?e-i:i;if(2200===n){-1===s&&(this._loopCount=0,this._setEndings(!0,!0,!1));t:{if(i>=e)i=e;else{if(!(i<0)){this.time=i;break t}i=0}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(-1===s&&(t>=0?(s=0,this._setEndings(!0,0===this.repetitions,r)):this._setEndings(0===this.repetitions,!0,r)),i>=e||i<0){const n=Math.floor(i/e);i-=e*n,s+=Math.abs(n);const o=this.repetitions-s;if(o<=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(1===o){const e=t<0;this._setEndings(e,!e,r)}else this._setEndings(!1,!1,r);this._loopCount=s,this.time=i,this._mixer.dispatchEvent({type:\\\\\\\"loop\\\\\\\",action:this,loopDelta:n})}}else this.time=i;if(r&&1==(1&s))return e-i}return i}_setEndings(t,e,n){const i=this._interpolantSettings;n?(i.endingStart=Hx,i.endingEnd=Hx):(i.endingStart=t?this.zeroSlopeAtStart?Hx:Vx:jx,i.endingEnd=e?this.zeroSlopeAtEnd?Hx:Vx:jx)}_scheduleFading(t,e,n){const i=this._mixer,s=i.time;let r=this._weightInterpolant;null===r&&(r=i._lendControlInterpolant(),this._weightInterpolant=r);const o=r.parameterPositions,a=r.sampleValues;return o[0]=s,a[0]=e,o[1]=s+t,a[1]=n,this}}(class extends tb{constructor(t){super(),this._root=t,this._initMemoryManager(),this._accuIndex=0,this.time=0,this.timeScale=1}_bindAction(t,e){const n=t._localRoot||this._root,i=t._clip.tracks,s=i.length,r=t._propertyBindings,o=t._interpolants,a=n.uuid,l=this._bindingsByRootAndName;let c=l[a];void 0===c&&(c={},l[a]=c);for(let t=0;t!==s;++t){const s=i[t],l=s.name;let h=c[l];if(void 0!==h)r[t]=h;else{if(h=r[t],void 0!==h){null===h._cacheIndex&&(++h.referenceCount,this._addInactiveBinding(h,a,l));continue}const i=e&&e._propertyBindings[t].binding.parsedPath;h=new UN(ZN.create(n,l,i),s.ValueTypeName,s.getValueSize()),++h.referenceCount,this._addInactiveBinding(h,a,l),r[t]=h}o[t].resultBuffer=h.buffer}}_activateAction(t){if(!this._isActiveAction(t)){if(null===t._cacheIndex){const e=(t._localRoot||this._root).uuid,n=t._clip.uuid,i=this._actionsByClip[n];this._bindAction(t,i&&i.knownActions[0]),this._addInactiveAction(t,n,e)}const e=t._propertyBindings;for(let t=0,n=e.length;t!==n;++t){const n=e[t];0==n.useCount++&&(this._lendBinding(n),n.saveOriginalState())}this._lendAction(t)}}_deactivateAction(t){if(this._isActiveAction(t)){const e=t._propertyBindings;for(let t=0,n=e.length;t!==n;++t){const n=e[t];0==--n.useCount&&(n.restoreOriginalState(),this._takeBackBinding(n))}this._takeBackAction(t)}}_initMemoryManager(){this._actions=[],this._nActiveActions=0,this._actionsByClip={},this._bindings=[],this._nActiveBindings=0,this._bindingsByRootAndName={},this._controlInterpolants=[],this._nActiveControlInterpolants=0;const 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){const e=t._cacheIndex;return null!==e&&e<this._nActiveActions}_addInactiveAction(t,e,n){const i=this._actions,s=this._actionsByClip;let r=s[e];if(void 0===r)r={knownActions:[t],actionByRoot:{}},t._byClipCacheIndex=0,s[e]=r;else{const e=r.knownActions;t._byClipCacheIndex=e.length,e.push(t)}t._cacheIndex=i.length,i.push(t),r.actionByRoot[n]=t}_removeInactiveAction(t){const e=this._actions,n=e[e.length-1],i=t._cacheIndex;n._cacheIndex=i,e[i]=n,e.pop(),t._cacheIndex=null;const s=t._clip.uuid,r=this._actionsByClip,o=r[s],a=o.knownActions,l=a[a.length-1],c=t._byClipCacheIndex;l._byClipCacheIndex=c,a[c]=l,a.pop(),t._byClipCacheIndex=null;delete o.actionByRoot[(t._localRoot||this._root).uuid],0===a.length&&delete r[s],this._removeInactiveBindingsForAction(t)}_removeInactiveBindingsForAction(t){const e=t._propertyBindings;for(let t=0,n=e.length;t!==n;++t){const n=e[t];0==--n.referenceCount&&this._removeInactiveBinding(n)}}_lendAction(t){const 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){const 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){const i=this._bindingsByRootAndName,s=this._bindings;let r=i[e];void 0===r&&(r={},i[e]=r),r[n]=t,t._cacheIndex=s.length,s.push(t)}_removeInactiveBinding(t){const e=this._bindings,n=t.binding,i=n.rootNode.uuid,s=n.path,r=this._bindingsByRootAndName,o=r[i],a=e[e.length-1],l=t._cacheIndex;a._cacheIndex=l,e[l]=a,e.pop(),delete o[s],0===Object.keys(o).length&&delete r[i]}_lendBinding(t){const 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){const 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(){const t=this._controlInterpolants,e=this._nActiveControlInterpolants++;let n=t[e];return void 0===n&&(n=new YC(new Float32Array(2),new Float32Array(2),1,this._controlInterpolantsResultBuffer),n.__cacheIndex=e,t[e]=n),n}_takeBackControlInterpolant(t){const 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){const i=e||this._root,s=i.uuid;let r=\\\\\\\"string\\\\\\\"==typeof t?sN.findByName(i,t):t;const o=null!==r?r.uuid:t,a=this._actionsByClip[o];let l=null;if(void 0===n&&(n=null!==r?r.blendMode:Wx),void 0!==a){const t=a.actionByRoot[s];if(void 0!==t&&t.blendMode===n)return t;l=a.knownActions[0],null===r&&(r=l._clip)}if(null===r)return null;const c=new KN(this,r,e,n);return this._bindAction(c,l),this._addInactiveAction(c,o,s),c}existingAction(t,e){const n=e||this._root,i=n.uuid,s=\\\\\\\"string\\\\\\\"==typeof t?sN.findByName(n,t):t,r=s?s.uuid:t,o=this._actionsByClip[r];return void 0!==o&&o.actionByRoot[i]||null}stopAllAction(){const t=this._actions;for(let e=this._nActiveActions-1;e>=0;--e)t[e].stop();return this}update(t){t*=this.timeScale;const e=this._actions,n=this._nActiveActions,i=this.time+=t,s=Math.sign(t),r=this._accuIndex^=1;for(let o=0;o!==n;++o){e[o]._update(i,t,s,r)}const o=this._bindings,a=this._nActiveBindings;for(let t=0;t!==a;++t)o[t].apply(r);return this}setTime(t){this.time=0;for(let t=0;t<this._actions.length;t++)this._actions[t].time=0;return this.update(t)}getRoot(){return this._root}uncacheClip(t){const e=this._actions,n=t.uuid,i=this._actionsByClip,s=i[n];if(void 0!==s){const t=s.knownActions;for(let n=0,i=t.length;n!==i;++n){const i=t[n];this._deactivateAction(i);const s=i._cacheIndex,r=e[e.length-1];i._cacheIndex=null,i._byClipCacheIndex=null,r._cacheIndex=s,e[s]=r,e.pop(),this._removeInactiveBindingsForAction(i)}delete i[n]}}uncacheRoot(t){const e=t.uuid,n=this._actionsByClip;for(const t in n){const i=n[t].actionByRoot[e];void 0!==i&&(this._deactivateAction(i),this._removeInactiveAction(i))}const i=this._bindingsByRootAndName[e];if(void 0!==i)for(const t in i){const e=i[t];e.restoreOriginalState(),this._removeInactiveBinding(e)}}uncacheAction(t,e){const n=this.existingAction(t,e);null!==n&&(this._deactivateAction(n),this._removeInactiveAction(n))}}).prototype._controlInterpolantsResultBuffer=new Float32Array(1);class QN{constructor(t){\\\\\\\"string\\\\\\\"==typeof t&&(console.warn(\\\\\\\"THREE.Uniform: Type parameter is no longer needed.\\\\\\\"),t=arguments[1]),this.value=t}clone(){return new QN(void 0===this.value.clone?this.value:this.value.clone())}}(class extends kE{constructor(t,e,n=1){super(t,e),this.meshPerAttribute=n}copy(t){return super.copy(t),this.meshPerAttribute=t.meshPerAttribute,this}clone(t){const e=super.clone(t);return e.meshPerAttribute=this.meshPerAttribute,e}toJSON(t){const e=super.toJSON(t);return e.isInstancedInterleavedBuffer=!0,e.meshPerAttribute=this.meshPerAttribute,e}}).prototype.isInstancedInterleavedBuffer=!0;const tL=new _b;class eL{constructor(t=new _b(1/0,1/0),e=new _b(-1/0,-1/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){const n=tL.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 tL.copy(t).clamp(this.min,this.max).sub(t).length()}intersect(t){return this.min.max(t.min),this.max.min(t.max),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)}}eL.prototype.isBox2=!0;const nL=new Sb,iL=new Sb;class sL{constructor(t=new Sb,e=new Sb){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){nL.subVectors(t,this.start),iL.subVectors(this.end,this.start);const n=iL.dot(iL);let i=iL.dot(nL)/n;return e&&(i=ab(i,0,1)),i}closestPointToPoint(t,e,n){const 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)}}(class extends Nw{constructor(t){super(),this.material=t,this.render=function(){},this.hasPositions=!1,this.hasNormals=!1,this.hasColors=!1,this.hasUvs=!1,this.positionArray=null,this.normalArray=null,this.colorArray=null,this.uvArray=null,this.count=0}}).prototype.isImmediateRenderObject=!0;const rL=new Sb,oL=new sw,aL=new sw;function lL(t){const e=[];t&&t.isBone&&e.push(t);for(let n=0;n<t.children.length;n++)e.push.apply(e,lL(t.children[n]));return e}const cL=new Float32Array(1);new Int32Array(cL.buffer);BS.create=function(t,e){return console.log(\\\\\\\"THREE.Curve.create() has been deprecated\\\\\\\"),t.prototype=Object.create(BS.prototype),t.prototype.constructor=t,t.prototype.getPoint=e,t},iC.prototype.fromPoints=function(t){return console.warn(\\\\\\\"THREE.Path: .fromPoints() has been renamed to .setFromPoints().\\\\\\\"),this.setFromPoints(t)},class extends SS{constructor(t=10,e=10,n=4473924,i=8947848){n=new $w(n),i=new $w(i);const s=e/2,r=t/e,o=t/2,a=[],l=[];for(let t=0,c=0,h=-o;t<=e;t++,h+=r){a.push(-o,0,h,o,0,h),a.push(h,0,-o,h,0,o);const e=t===s?n:i;e.toArray(l,c),c+=3,e.toArray(l,c),c+=3,e.toArray(l,c),c+=3,e.toArray(l,c),c+=3}const c=new hT;c.setAttribute(\\\\\\\"position\\\\\\\",new nT(a,3)),c.setAttribute(\\\\\\\"color\\\\\\\",new nT(l,3));super(c,new vS({vertexColors:!0,toneMapped:!1})),this.type=\\\\\\\"GridHelper\\\\\\\"}}.prototype.setColors=function(){console.error(\\\\\\\"THREE.GridHelper: setColors() has been deprecated, pass them in the constructor instead.\\\\\\\")},class extends SS{constructor(t){const e=lL(t),n=new hT,i=[],s=[],r=new $w(0,0,1),o=new $w(0,1,0);for(let t=0;t<e.length;t++){const n=e[t];n.parent&&n.parent.isBone&&(i.push(0,0,0),i.push(0,0,0),s.push(r.r,r.g,r.b),s.push(o.r,o.g,o.b))}n.setAttribute(\\\\\\\"position\\\\\\\",new nT(i,3)),n.setAttribute(\\\\\\\"color\\\\\\\",new nT(s,3));super(n,new vS({vertexColors:!0,depthTest:!1,depthWrite:!1,toneMapped:!1,transparent:!0})),this.type=\\\\\\\"SkeletonHelper\\\\\\\",this.isSkeletonHelper=!0,this.root=t,this.bones=e,this.matrix=t.matrixWorld,this.matrixAutoUpdate=!1}updateMatrixWorld(t){const e=this.bones,n=this.geometry,i=n.getAttribute(\\\\\\\"position\\\\\\\");aL.copy(this.root.matrixWorld).invert();for(let t=0,n=0;t<e.length;t++){const s=e[t];s.parent&&s.parent.isBone&&(oL.multiplyMatrices(aL,s.matrixWorld),rL.setFromMatrixPosition(oL),i.setXYZ(n,rL.x,rL.y,rL.z),oL.multiplyMatrices(aL,s.parent.matrixWorld),rL.setFromMatrixPosition(oL),i.setXYZ(n+1,rL.x,rL.y,rL.z),n+=2)}n.getAttribute(\\\\\\\"position\\\\\\\").needsUpdate=!0,super.updateMatrixWorld(t)}}.prototype.update=function(){console.error(\\\\\\\"THREE.SkeletonHelper: update() no longer needs to be called.\\\\\\\")},cN.prototype.extractUrlBase=function(t){return console.warn(\\\\\\\"THREE.Loader: .extractUrlBase() has been deprecated. Use THREE.LoaderUtils.extractUrlBase() instead.\\\\\\\"),IN.extractUrlBase(t)},cN.Handlers={add:function(){console.error(\\\\\\\"THREE.Loader: Handlers.add() has been removed. Use LoadingManager.addHandler() instead.\\\\\\\")},get:function(){console.error(\\\\\\\"THREE.Loader: Handlers.get() has been removed. Use LoadingManager.getHandler() instead.\\\\\\\")}},eL.prototype.center=function(t){return console.warn(\\\\\\\"THREE.Box2: .center() has been renamed to .getCenter().\\\\\\\"),this.getCenter(t)},eL.prototype.empty=function(){return console.warn(\\\\\\\"THREE.Box2: .empty() has been renamed to .isEmpty().\\\\\\\"),this.isEmpty()},eL.prototype.isIntersectionBox=function(t){return console.warn(\\\\\\\"THREE.Box2: .isIntersectionBox() has been renamed to .intersectsBox().\\\\\\\"),this.intersectsBox(t)},eL.prototype.size=function(t){return console.warn(\\\\\\\"THREE.Box2: .size() has been renamed to .getSize().\\\\\\\"),this.getSize(t)},Lb.prototype.center=function(t){return console.warn(\\\\\\\"THREE.Box3: .center() has been renamed to .getCenter().\\\\\\\"),this.getCenter(t)},Lb.prototype.empty=function(){return console.warn(\\\\\\\"THREE.Box3: .empty() has been renamed to .isEmpty().\\\\\\\"),this.isEmpty()},Lb.prototype.isIntersectionBox=function(t){return console.warn(\\\\\\\"THREE.Box3: .isIntersectionBox() has been renamed to .intersectsBox().\\\\\\\"),this.intersectsBox(t)},Lb.prototype.isIntersectionSphere=function(t){return console.warn(\\\\\\\"THREE.Box3: .isIntersectionSphere() has been renamed to .intersectsSphere().\\\\\\\"),this.intersectsSphere(t)},Lb.prototype.size=function(t){return console.warn(\\\\\\\"THREE.Box3: .size() has been renamed to .getSize().\\\\\\\"),this.getSize(t)},$b.prototype.empty=function(){return console.warn(\\\\\\\"THREE.Sphere: .empty() has been renamed to .isEmpty().\\\\\\\"),this.isEmpty()},XT.prototype.setFromMatrix=function(t){return console.warn(\\\\\\\"THREE.Frustum: .setFromMatrix() has been renamed to .setFromProjectionMatrix().\\\\\\\"),this.setFromProjectionMatrix(t)},sL.prototype.center=function(t){return console.warn(\\\\\\\"THREE.Line3: .center() has been renamed to .getCenter().\\\\\\\"),this.getCenter(t)},mb.prototype.flattenToArrayOffset=function(t,e){return console.warn(\\\\\\\"THREE.Matrix3: .flattenToArrayOffset() has been deprecated. Use .toArray() instead.\\\\\\\"),this.toArray(t,e)},mb.prototype.multiplyVector3=function(t){return console.warn(\\\\\\\"THREE.Matrix3: .multiplyVector3() has been removed. Use vector.applyMatrix3( matrix ) instead.\\\\\\\"),t.applyMatrix3(this)},mb.prototype.multiplyVector3Array=function(){console.error(\\\\\\\"THREE.Matrix3: .multiplyVector3Array() has been removed.\\\\\\\")},mb.prototype.applyToBufferAttribute=function(t){return console.warn(\\\\\\\"THREE.Matrix3: .applyToBufferAttribute() has been removed. Use attribute.applyMatrix3( matrix ) instead.\\\\\\\"),t.applyMatrix3(this)},mb.prototype.applyToVector3Array=function(){console.error(\\\\\\\"THREE.Matrix3: .applyToVector3Array() has been removed.\\\\\\\")},mb.prototype.getInverse=function(t){return console.warn(\\\\\\\"THREE.Matrix3: .getInverse() has been removed. Use matrixInv.copy( matrix ).invert(); instead.\\\\\\\"),this.copy(t).invert()},sw.prototype.extractPosition=function(t){return console.warn(\\\\\\\"THREE.Matrix4: .extractPosition() has been renamed to .copyPosition().\\\\\\\"),this.copyPosition(t)},sw.prototype.flattenToArrayOffset=function(t,e){return console.warn(\\\\\\\"THREE.Matrix4: .flattenToArrayOffset() has been deprecated. Use .toArray() instead.\\\\\\\"),this.toArray(t,e)},sw.prototype.getPosition=function(){return console.warn(\\\\\\\"THREE.Matrix4: .getPosition() has been removed. Use Vector3.setFromMatrixPosition( matrix ) instead.\\\\\\\"),(new Sb).setFromMatrixColumn(this,3)},sw.prototype.setRotationFromQuaternion=function(t){return console.warn(\\\\\\\"THREE.Matrix4: .setRotationFromQuaternion() has been renamed to .makeRotationFromQuaternion().\\\\\\\"),this.makeRotationFromQuaternion(t)},sw.prototype.multiplyToArray=function(){console.warn(\\\\\\\"THREE.Matrix4: .multiplyToArray() has been removed.\\\\\\\")},sw.prototype.multiplyVector3=function(t){return console.warn(\\\\\\\"THREE.Matrix4: .multiplyVector3() has been removed. Use vector.applyMatrix4( matrix ) instead.\\\\\\\"),t.applyMatrix4(this)},sw.prototype.multiplyVector4=function(t){return console.warn(\\\\\\\"THREE.Matrix4: .multiplyVector4() has been removed. Use vector.applyMatrix4( matrix ) instead.\\\\\\\"),t.applyMatrix4(this)},sw.prototype.multiplyVector3Array=function(){console.error(\\\\\\\"THREE.Matrix4: .multiplyVector3Array() has been removed.\\\\\\\")},sw.prototype.rotateAxis=function(t){console.warn(\\\\\\\"THREE.Matrix4: .rotateAxis() has been removed. Use Vector3.transformDirection( matrix ) instead.\\\\\\\"),t.transformDirection(this)},sw.prototype.crossVector=function(t){return console.warn(\\\\\\\"THREE.Matrix4: .crossVector() has been removed. Use vector.applyMatrix4( matrix ) instead.\\\\\\\"),t.applyMatrix4(this)},sw.prototype.translate=function(){console.error(\\\\\\\"THREE.Matrix4: .translate() has been removed.\\\\\\\")},sw.prototype.rotateX=function(){console.error(\\\\\\\"THREE.Matrix4: .rotateX() has been removed.\\\\\\\")},sw.prototype.rotateY=function(){console.error(\\\\\\\"THREE.Matrix4: .rotateY() has been removed.\\\\\\\")},sw.prototype.rotateZ=function(){console.error(\\\\\\\"THREE.Matrix4: .rotateZ() has been removed.\\\\\\\")},sw.prototype.rotateByAxis=function(){console.error(\\\\\\\"THREE.Matrix4: .rotateByAxis() has been removed.\\\\\\\")},sw.prototype.applyToBufferAttribute=function(t){return console.warn(\\\\\\\"THREE.Matrix4: .applyToBufferAttribute() has been removed. Use attribute.applyMatrix4( matrix ) instead.\\\\\\\"),t.applyMatrix4(this)},sw.prototype.applyToVector3Array=function(){console.error(\\\\\\\"THREE.Matrix4: .applyToVector3Array() has been removed.\\\\\\\")},sw.prototype.makeFrustum=function(t,e,n,i,s,r){return console.warn(\\\\\\\"THREE.Matrix4: .makeFrustum() has been removed. Use .makePerspective( left, right, top, bottom, near, far ) instead.\\\\\\\"),this.makePerspective(t,e,i,n,s,r)},sw.prototype.getInverse=function(t){return console.warn(\\\\\\\"THREE.Matrix4: .getInverse() has been removed. Use matrixInv.copy( matrix ).invert(); instead.\\\\\\\"),this.copy(t).invert()},jT.prototype.isIntersectionLine=function(t){return console.warn(\\\\\\\"THREE.Plane: .isIntersectionLine() has been renamed to .intersectsLine().\\\\\\\"),this.intersectsLine(t)},Eb.prototype.multiplyVector3=function(t){return console.warn(\\\\\\\"THREE.Quaternion: .multiplyVector3() has been removed. Use is now vector.applyQuaternion( quaternion ) instead.\\\\\\\"),t.applyQuaternion(this)},Eb.prototype.inverse=function(){return console.warn(\\\\\\\"THREE.Quaternion: .inverse() has been renamed to invert().\\\\\\\"),this.invert()},iw.prototype.isIntersectionBox=function(t){return console.warn(\\\\\\\"THREE.Ray: .isIntersectionBox() has been renamed to .intersectsBox().\\\\\\\"),this.intersectsBox(t)},iw.prototype.isIntersectionPlane=function(t){return console.warn(\\\\\\\"THREE.Ray: .isIntersectionPlane() has been renamed to .intersectsPlane().\\\\\\\"),this.intersectsPlane(t)},iw.prototype.isIntersectionSphere=function(t){return console.warn(\\\\\\\"THREE.Ray: .isIntersectionSphere() has been renamed to .intersectsSphere().\\\\\\\"),this.intersectsSphere(t)},Uw.prototype.area=function(){return console.warn(\\\\\\\"THREE.Triangle: .area() has been renamed to .getArea().\\\\\\\"),this.getArea()},Uw.prototype.barycoordFromPoint=function(t,e){return console.warn(\\\\\\\"THREE.Triangle: .barycoordFromPoint() has been renamed to .getBarycoord().\\\\\\\"),this.getBarycoord(t,e)},Uw.prototype.midpoint=function(t){return console.warn(\\\\\\\"THREE.Triangle: .midpoint() has been renamed to .getMidpoint().\\\\\\\"),this.getMidpoint(t)},Uw.prototypenormal=function(t){return console.warn(\\\\\\\"THREE.Triangle: .normal() has been renamed to .getNormal().\\\\\\\"),this.getNormal(t)},Uw.prototype.plane=function(t){return console.warn(\\\\\\\"THREE.Triangle: .plane() has been renamed to .getPlane().\\\\\\\"),this.getPlane(t)},Uw.barycoordFromPoint=function(t,e,n,i,s){return console.warn(\\\\\\\"THREE.Triangle: .barycoordFromPoint() has been renamed to .getBarycoord().\\\\\\\"),Uw.getBarycoord(t,e,n,i,s)},Uw.normal=function(t,e,n,i){return console.warn(\\\\\\\"THREE.Triangle: .normal() has been renamed to .getNormal().\\\\\\\"),Uw.getNormal(t,e,n,i)},sC.prototype.extractAllPoints=function(t){return console.warn(\\\\\\\"THREE.Shape: .extractAllPoints() has been removed. Use .extractPoints() instead.\\\\\\\"),this.extractPoints(t)},sC.prototype.extrude=function(t){return console.warn(\\\\\\\"THREE.Shape: .extrude() has been removed. Use ExtrudeGeometry() instead.\\\\\\\"),new RC(this,t)},sC.prototype.makeGeometry=function(t){return console.warn(\\\\\\\"THREE.Shape: .makeGeometry() has been removed. Use ShapeGeometry() instead.\\\\\\\"),new FC(this,t)},_b.prototype.fromAttribute=function(t,e,n){return console.warn(\\\\\\\"THREE.Vector2: .fromAttribute() has been renamed to .fromBufferAttribute().\\\\\\\"),this.fromBufferAttribute(t,e,n)},_b.prototype.distanceToManhattan=function(t){return console.warn(\\\\\\\"THREE.Vector2: .distanceToManhattan() has been renamed to .manhattanDistanceTo().\\\\\\\"),this.manhattanDistanceTo(t)},_b.prototype.lengthManhattan=function(){return console.warn(\\\\\\\"THREE.Vector2: .lengthManhattan() has been renamed to .manhattanLength().\\\\\\\"),this.manhattanLength()},Sb.prototype.setEulerFromRotationMatrix=function(){console.error(\\\\\\\"THREE.Vector3: .setEulerFromRotationMatrix() has been removed. Use Euler.setFromRotationMatrix() instead.\\\\\\\")},Sb.prototype.setEulerFromQuaternion=function(){console.error(\\\\\\\"THREE.Vector3: .setEulerFromQuaternion() has been removed. Use Euler.setFromQuaternion() instead.\\\\\\\")},Sb.prototype.getPositionFromMatrix=function(t){return console.warn(\\\\\\\"THREE.Vector3: .getPositionFromMatrix() has been renamed to .setFromMatrixPosition().\\\\\\\"),this.setFromMatrixPosition(t)},Sb.prototype.getScaleFromMatrix=function(t){return console.warn(\\\\\\\"THREE.Vector3: .getScaleFromMatrix() has been renamed to .setFromMatrixScale().\\\\\\\"),this.setFromMatrixScale(t)},Sb.prototype.getColumnFromMatrix=function(t,e){return console.warn(\\\\\\\"THREE.Vector3: .getColumnFromMatrix() has been renamed to .setFromMatrixColumn().\\\\\\\"),this.setFromMatrixColumn(e,t)},Sb.prototype.applyProjection=function(t){return console.warn(\\\\\\\"THREE.Vector3: .applyProjection() has been removed. Use .applyMatrix4( m ) instead.\\\\\\\"),this.applyMatrix4(t)},Sb.prototype.fromAttribute=function(t,e,n){return console.warn(\\\\\\\"THREE.Vector3: .fromAttribute() has been renamed to .fromBufferAttribute().\\\\\\\"),this.fromBufferAttribute(t,e,n)},Sb.prototype.distanceToManhattan=function(t){return console.warn(\\\\\\\"THREE.Vector3: .distanceToManhattan() has been renamed to .manhattanDistanceTo().\\\\\\\"),this.manhattanDistanceTo(t)},Sb.prototype.lengthManhattan=function(){return console.warn(\\\\\\\"THREE.Vector3: .lengthManhattan() has been renamed to .manhattanLength().\\\\\\\"),this.manhattanLength()},Tb.prototype.fromAttribute=function(t,e,n){return console.warn(\\\\\\\"THREE.Vector4: .fromAttribute() has been renamed to .fromBufferAttribute().\\\\\\\"),this.fromBufferAttribute(t,e,n)},Tb.prototype.lengthManhattan=function(){return console.warn(\\\\\\\"THREE.Vector4: .lengthManhattan() has been renamed to .manhattanLength().\\\\\\\"),this.manhattanLength()},Nw.prototype.getChildByName=function(t){return console.warn(\\\\\\\"THREE.Object3D: .getChildByName() has been renamed to .getObjectByName().\\\\\\\"),this.getObjectByName(t)},Nw.prototype.renderDepth=function(){console.warn(\\\\\\\"THREE.Object3D: .renderDepth has been removed. Use .renderOrder, instead.\\\\\\\")},Nw.prototype.translate=function(t,e){return console.warn(\\\\\\\"THREE.Object3D: .translate() has been removed. Use .translateOnAxis( axis, distance ) instead.\\\\\\\"),this.translateOnAxis(e,t)},Nw.prototype.getWorldRotation=function(){console.error(\\\\\\\"THREE.Object3D: .getWorldRotation() has been removed. Use THREE.Object3D.getWorldQuaternion( target ) instead.\\\\\\\")},Nw.prototype.applyMatrix=function(t){return console.warn(\\\\\\\"THREE.Object3D: .applyMatrix() has been renamed to .applyMatrix4().\\\\\\\"),this.applyMatrix4(t)},Object.defineProperties(Nw.prototype,{eulerOrder:{get:function(){return console.warn(\\\\\\\"THREE.Object3D: .eulerOrder is now .rotation.order.\\\\\\\"),this.rotation.order},set:function(t){console.warn(\\\\\\\"THREE.Object3D: .eulerOrder is now .rotation.order.\\\\\\\"),this.rotation.order=t}},useQuaternion:{get:function(){console.warn(\\\\\\\"THREE.Object3D: .useQuaternion has been removed. The library now uses quaternions by default.\\\\\\\")},set:function(){console.warn(\\\\\\\"THREE.Object3D: .useQuaternion has been removed. The library now uses quaternions by default.\\\\\\\")}}}),CT.prototype.setDrawMode=function(){console.error(\\\\\\\"THREE.Mesh: .setDrawMode() has been removed. The renderer now always assumes THREE.TrianglesDrawMode. Transform your geometry via BufferGeometryUtils.toTrianglesDrawMode() if necessary.\\\\\\\")},Object.defineProperties(CT.prototype,{drawMode:{get:function(){return console.error(\\\\\\\"THREE.Mesh: .drawMode has been removed. The renderer now always assumes THREE.TrianglesDrawMode.\\\\\\\"),0},set:function(){console.error(\\\\\\\"THREE.Mesh: .drawMode has been removed. The renderer now always assumes THREE.TrianglesDrawMode. Transform your geometry via BufferGeometryUtils.toTrianglesDrawMode() if necessary.\\\\\\\")}}}),cS.prototype.initBones=function(){console.error(\\\\\\\"THREE.SkinnedMesh: initBones() has been removed.\\\\\\\")},DT.prototype.setLens=function(t,e){console.warn(\\\\\\\"THREE.PerspectiveCamera.setLens is deprecated. Use .setFocalLength and .filmGauge for a photographic setup.\\\\\\\"),void 0!==e&&(this.filmGauge=e),this.setFocalLength(t)},Object.defineProperties(mN.prototype,{onlyShadow:{set:function(){console.warn(\\\\\\\"THREE.Light: .onlyShadow has been removed.\\\\\\\")}},shadowCameraFov:{set:function(t){console.warn(\\\\\\\"THREE.Light: .shadowCameraFov is now .shadow.camera.fov.\\\\\\\"),this.shadow.camera.fov=t}},shadowCameraLeft:{set:function(t){console.warn(\\\\\\\"THREE.Light: .shadowCameraLeft is now .shadow.camera.left.\\\\\\\"),this.shadow.camera.left=t}},shadowCameraRight:{set:function(t){console.warn(\\\\\\\"THREE.Light: .shadowCameraRight is now .shadow.camera.right.\\\\\\\"),this.shadow.camera.right=t}},shadowCameraTop:{set:function(t){console.warn(\\\\\\\"THREE.Light: .shadowCameraTop is now .shadow.camera.top.\\\\\\\"),this.shadow.camera.top=t}},shadowCameraBottom:{set:function(t){console.warn(\\\\\\\"THREE.Light: .shadowCameraBottom is now .shadow.camera.bottom.\\\\\\\"),this.shadow.camera.bottom=t}},shadowCameraNear:{set:function(t){console.warn(\\\\\\\"THREE.Light: .shadowCameraNear is now .shadow.camera.near.\\\\\\\"),this.shadow.camera.near=t}},shadowCameraFar:{set:function(t){console.warn(\\\\\\\"THREE.Light: .shadowCameraFar is now .shadow.camera.far.\\\\\\\"),this.shadow.camera.far=t}},shadowCameraVisible:{set:function(){console.warn(\\\\\\\"THREE.Light: .shadowCameraVisible has been removed. Use new THREE.CameraHelper( light.shadow.camera ) instead.\\\\\\\")}},shadowBias:{set:function(t){console.warn(\\\\\\\"THREE.Light: .shadowBias is now .shadow.bias.\\\\\\\"),this.shadow.bias=t}},shadowDarkness:{set:function(){console.warn(\\\\\\\"THREE.Light: .shadowDarkness has been removed.\\\\\\\")}},shadowMapWidth:{set:function(t){console.warn(\\\\\\\"THREE.Light: .shadowMapWidth is now .shadow.mapSize.width.\\\\\\\"),this.shadow.mapSize.width=t}},shadowMapHeight:{set:function(t){console.warn(\\\\\\\"THREE.Light: .shadowMapHeight is now .shadow.mapSize.height.\\\\\\\"),this.shadow.mapSize.height=t}}}),Object.defineProperties(Qw.prototype,{length:{get:function(){return console.warn(\\\\\\\"THREE.BufferAttribute: .length has been deprecated. Use .count instead.\\\\\\\"),this.array.length}},dynamic:{get:function(){return console.warn(\\\\\\\"THREE.BufferAttribute: .dynamic has been deprecated. Use .usage instead.\\\\\\\"),this.usage===Kx},set:function(){console.warn(\\\\\\\"THREE.BufferAttribute: .dynamic has been deprecated. Use .usage instead.\\\\\\\"),this.setUsage(Kx)}}}),Qw.prototype.setDynamic=function(t){return console.warn(\\\\\\\"THREE.BufferAttribute: .setDynamic() has been deprecated. Use .setUsage() instead.\\\\\\\"),this.setUsage(!0===t?Kx:Zx),this},Qw.prototype.copyIndicesArray=function(){console.error(\\\\\\\"THREE.BufferAttribute: .copyIndicesArray() has been removed.\\\\\\\")},Qw.prototype.setArray=function(){console.error(\\\\\\\"THREE.BufferAttribute: .setArray has been removed. Use BufferGeometry .setAttribute to replace/resize attribute buffers\\\\\\\")},hT.prototype.addIndex=function(t){console.warn(\\\\\\\"THREE.BufferGeometry: .addIndex() has been renamed to .setIndex().\\\\\\\"),this.setIndex(t)},hT.prototype.addAttribute=function(t,e){return console.warn(\\\\\\\"THREE.BufferGeometry: .addAttribute() has been renamed to .setAttribute().\\\\\\\"),e&&e.isBufferAttribute||e&&e.isInterleavedBufferAttribute?\\\\\\\"index\\\\\\\"===t?(console.warn(\\\\\\\"THREE.BufferGeometry.addAttribute: Use .setIndex() for index attribute.\\\\\\\"),this.setIndex(e),this):this.setAttribute(t,e):(console.warn(\\\\\\\"THREE.BufferGeometry: .addAttribute() now expects ( name, attribute ).\\\\\\\"),this.setAttribute(t,new Qw(arguments[1],arguments[2])))},hT.prototype.addDrawCall=function(t,e,n){void 0!==n&&console.warn(\\\\\\\"THREE.BufferGeometry: .addDrawCall() no longer supports indexOffset.\\\\\\\"),console.warn(\\\\\\\"THREE.BufferGeometry: .addDrawCall() is now .addGroup().\\\\\\\"),this.addGroup(t,e)},hT.prototype.clearDrawCalls=function(){console.warn(\\\\\\\"THREE.BufferGeometry: .clearDrawCalls() is now .clearGroups().\\\\\\\"),this.clearGroups()},hT.prototype.computeOffsets=function(){console.warn(\\\\\\\"THREE.BufferGeometry: .computeOffsets() has been removed.\\\\\\\")},hT.prototype.removeAttribute=function(t){return console.warn(\\\\\\\"THREE.BufferGeometry: .removeAttribute() has been renamed to .deleteAttribute().\\\\\\\"),this.deleteAttribute(t)},hT.prototype.applyMatrix=function(t){return console.warn(\\\\\\\"THREE.BufferGeometry: .applyMatrix() has been renamed to .applyMatrix4().\\\\\\\"),this.applyMatrix4(t)},Object.defineProperties(hT.prototype,{drawcalls:{get:function(){return console.error(\\\\\\\"THREE.BufferGeometry: .drawcalls has been renamed to .groups.\\\\\\\"),this.groups}},offsets:{get:function(){return console.warn(\\\\\\\"THREE.BufferGeometry: .offsets has been renamed to .groups.\\\\\\\"),this.groups}}}),kE.prototype.setDynamic=function(t){return console.warn(\\\\\\\"THREE.InterleavedBuffer: .setDynamic() has been deprecated. Use .setUsage() instead.\\\\\\\"),this.setUsage(!0===t?Kx:Zx),this},kE.prototype.setArray=function(){console.error(\\\\\\\"THREE.InterleavedBuffer: .setArray has been removed. Use BufferGeometry .setAttribute to replace/resize attribute buffers\\\\\\\")},RC.prototype.getArrays=function(){console.error(\\\\\\\"THREE.ExtrudeGeometry: .getArrays() has been removed.\\\\\\\")},RC.prototype.addShapeList=function(){console.error(\\\\\\\"THREE.ExtrudeGeometry: .addShapeList() has been removed.\\\\\\\")},RC.prototype.addShape=function(){console.error(\\\\\\\"THREE.ExtrudeGeometry: .addShape() has been removed.\\\\\\\")},zE.prototype.dispose=function(){console.error(\\\\\\\"THREE.Scene: .dispose() has been removed.\\\\\\\")},QN.prototype.onUpdate=function(){return console.warn(\\\\\\\"THREE.Uniform: .onUpdate() has been removed. Use object.onBeforeRender() instead.\\\\\\\"),this},Object.defineProperties(Vw.prototype,{wrapAround:{get:function(){console.warn(\\\\\\\"THREE.Material: .wrapAround has been removed.\\\\\\\")},set:function(){console.warn(\\\\\\\"THREE.Material: .wrapAround has been removed.\\\\\\\")}},overdraw:{get:function(){console.warn(\\\\\\\"THREE.Material: .overdraw has been removed.\\\\\\\")},set:function(){console.warn(\\\\\\\"THREE.Material: .overdraw has been removed.\\\\\\\")}},wrapRGB:{get:function(){return console.warn(\\\\\\\"THREE.Material: .wrapRGB has been removed.\\\\\\\"),new $w}},shading:{get:function(){console.error(\\\\\\\"THREE.\\\\\\\"+this.type+\\\\\\\": .shading has been removed. Use the boolean .flatShading instead.\\\\\\\")},set:function(t){console.warn(\\\\\\\"THREE.\\\\\\\"+this.type+\\\\\\\": .shading has been removed. Use the boolean .flatShading instead.\\\\\\\"),this.flatShading=1===t}},stencilMask:{get:function(){return console.warn(\\\\\\\"THREE.\\\\\\\"+this.type+\\\\\\\": .stencilMask has been removed. Use .stencilFuncMask instead.\\\\\\\"),this.stencilFuncMask},set:function(t){console.warn(\\\\\\\"THREE.\\\\\\\"+this.type+\\\\\\\": .stencilMask has been removed. Use .stencilFuncMask instead.\\\\\\\"),this.stencilFuncMask=t}},vertexTangents:{get:function(){console.warn(\\\\\\\"THREE.\\\\\\\"+this.type+\\\\\\\": .vertexTangents has been removed.\\\\\\\")},set:function(){console.warn(\\\\\\\"THREE.\\\\\\\"+this.type+\\\\\\\": .vertexTangents has been removed.\\\\\\\")}}}),Object.defineProperties(IT.prototype,{derivatives:{get:function(){return console.warn(\\\\\\\"THREE.ShaderMaterial: .derivatives has been moved to .extensions.derivatives.\\\\\\\"),this.extensions.derivatives},set:function(t){console.warn(\\\\\\\"THREE. ShaderMaterial: .derivatives has been moved to .extensions.derivatives.\\\\\\\"),this.extensions.derivatives=t}}}),FE.prototype.clearTarget=function(t,e,n,i){console.warn(\\\\\\\"THREE.WebGLRenderer: .clearTarget() has been deprecated. Use .setRenderTarget() and .clear() instead.\\\\\\\"),this.setRenderTarget(t),this.clear(e,n,i)},FE.prototype.animate=function(t){console.warn(\\\\\\\"THREE.WebGLRenderer: .animate() is now .setAnimationLoop().\\\\\\\"),this.setAnimationLoop(t)},FE.prototype.getCurrentRenderTarget=function(){return console.warn(\\\\\\\"THREE.WebGLRenderer: .getCurrentRenderTarget() is now .getRenderTarget().\\\\\\\"),this.getRenderTarget()},FE.prototype.getMaxAnisotropy=function(){return console.warn(\\\\\\\"THREE.WebGLRenderer: .getMaxAnisotropy() is now .capabilities.getMaxAnisotropy().\\\\\\\"),this.capabilities.getMaxAnisotropy()},FE.prototype.getPrecision=function(){return console.warn(\\\\\\\"THREE.WebGLRenderer: .getPrecision() is now .capabilities.precision.\\\\\\\"),this.capabilities.precision},FE.prototype.resetGLState=function(){return console.warn(\\\\\\\"THREE.WebGLRenderer: .resetGLState() is now .state.reset().\\\\\\\"),this.state.reset()},FE.prototype.supportsFloatTextures=function(){return console.warn(\\\\\\\"THREE.WebGLRenderer: .supportsFloatTextures() is now .extensions.get( 'OES_texture_float' ).\\\\\\\"),this.extensions.get(\\\\\\\"OES_texture_float\\\\\\\")},FE.prototype.supportsHalfFloatTextures=function(){return console.warn(\\\\\\\"THREE.WebGLRenderer: .supportsHalfFloatTextures() is now .extensions.get( 'OES_texture_half_float' ).\\\\\\\"),this.extensions.get(\\\\\\\"OES_texture_half_float\\\\\\\")},FE.prototype.supportsStandardDerivatives=function(){return console.warn(\\\\\\\"THREE.WebGLRenderer: .supportsStandardDerivatives() is now .extensions.get( 'OES_standard_derivatives' ).\\\\\\\"),this.extensions.get(\\\\\\\"OES_standard_derivatives\\\\\\\")},FE.prototype.supportsCompressedTextureS3TC=function(){return console.warn(\\\\\\\"THREE.WebGLRenderer: .supportsCompressedTextureS3TC() is now .extensions.get( 'WEBGL_compressed_texture_s3tc' ).\\\\\\\"),this.extensions.get(\\\\\\\"WEBGL_compressed_texture_s3tc\\\\\\\")},FE.prototype.supportsCompressedTexturePVRTC=function(){return console.warn(\\\\\\\"THREE.WebGLRenderer: .supportsCompressedTexturePVRTC() is now .extensions.get( 'WEBGL_compressed_texture_pvrtc' ).\\\\\\\"),this.extensions.get(\\\\\\\"WEBGL_compressed_texture_pvrtc\\\\\\\")},FE.prototype.supportsBlendMinMax=function(){return console.warn(\\\\\\\"THREE.WebGLRenderer: .supportsBlendMinMax() is now .extensions.get( 'EXT_blend_minmax' ).\\\\\\\"),this.extensions.get(\\\\\\\"EXT_blend_minmax\\\\\\\")},FE.prototype.supportsVertexTextures=function(){return console.warn(\\\\\\\"THREE.WebGLRenderer: .supportsVertexTextures() is now .capabilities.vertexTextures.\\\\\\\"),this.capabilities.vertexTextures},FE.prototype.supportsInstancedArrays=function(){return console.warn(\\\\\\\"THREE.WebGLRenderer: .supportsInstancedArrays() is now .extensions.get( 'ANGLE_instanced_arrays' ).\\\\\\\"),this.extensions.get(\\\\\\\"ANGLE_instanced_arrays\\\\\\\")},FE.prototype.enableScissorTest=function(t){console.warn(\\\\\\\"THREE.WebGLRenderer: .enableScissorTest() is now .setScissorTest().\\\\\\\"),this.setScissorTest(t)},FE.prototype.initMaterial=function(){console.warn(\\\\\\\"THREE.WebGLRenderer: .initMaterial() has been removed.\\\\\\\")},FE.prototype.addPrePlugin=function(){console.warn(\\\\\\\"THREE.WebGLRenderer: .addPrePlugin() has been removed.\\\\\\\")},FE.prototype.addPostPlugin=function(){console.warn(\\\\\\\"THREE.WebGLRenderer: .addPostPlugin() has been removed.\\\\\\\")},FE.prototype.updateShadowMap=function(){console.warn(\\\\\\\"THREE.WebGLRenderer: .updateShadowMap() has been removed.\\\\\\\")},FE.prototype.setFaceCulling=function(){console.warn(\\\\\\\"THREE.WebGLRenderer: .setFaceCulling() has been removed.\\\\\\\")},FE.prototype.allocTextureUnit=function(){console.warn(\\\\\\\"THREE.WebGLRenderer: .allocTextureUnit() has been removed.\\\\\\\")},FE.prototype.setTexture=function(){console.warn(\\\\\\\"THREE.WebGLRenderer: .setTexture() has been removed.\\\\\\\")},FE.prototype.setTexture2D=function(){console.warn(\\\\\\\"THREE.WebGLRenderer: .setTexture2D() has been removed.\\\\\\\")},FE.prototype.setTextureCube=function(){console.warn(\\\\\\\"THREE.WebGLRenderer: .setTextureCube() has been removed.\\\\\\\")},FE.prototype.getActiveMipMapLevel=function(){return console.warn(\\\\\\\"THREE.WebGLRenderer: .getActiveMipMapLevel() is now .getActiveMipmapLevel().\\\\\\\"),this.getActiveMipmapLevel()},Object.defineProperties(FE.prototype,{shadowMapEnabled:{get:function(){return this.shadowMap.enabled},set:function(t){console.warn(\\\\\\\"THREE.WebGLRenderer: .shadowMapEnabled is now .shadowMap.enabled.\\\\\\\"),this.shadowMap.enabled=t}},shadowMapType:{get:function(){return this.shadowMap.type},set:function(t){console.warn(\\\\\\\"THREE.WebGLRenderer: .shadowMapType is now .shadowMap.type.\\\\\\\"),this.shadowMap.type=t}},shadowMapCullFace:{get:function(){console.warn(\\\\\\\"THREE.WebGLRenderer: .shadowMapCullFace has been removed. Set Material.shadowSide instead.\\\\\\\")},set:function(){console.warn(\\\\\\\"THREE.WebGLRenderer: .shadowMapCullFace has been removed. Set Material.shadowSide instead.\\\\\\\")}},context:{get:function(){return console.warn(\\\\\\\"THREE.WebGLRenderer: .context has been removed. Use .getContext() instead.\\\\\\\"),this.getContext()}},vr:{get:function(){return console.warn(\\\\\\\"THREE.WebGLRenderer: .vr has been renamed to .xr\\\\\\\"),this.xr}},gammaInput:{get:function(){return console.warn(\\\\\\\"THREE.WebGLRenderer: .gammaInput has been removed. Set the encoding for textures via Texture.encoding instead.\\\\\\\"),!1},set:function(){console.warn(\\\\\\\"THREE.WebGLRenderer: .gammaInput has been removed. Set the encoding for textures via Texture.encoding instead.\\\\\\\")}},gammaOutput:{get:function(){return console.warn(\\\\\\\"THREE.WebGLRenderer: .gammaOutput has been removed. Set WebGLRenderer.outputEncoding instead.\\\\\\\"),!1},set:function(t){console.warn(\\\\\\\"THREE.WebGLRenderer: .gammaOutput has been removed. Set WebGLRenderer.outputEncoding instead.\\\\\\\"),this.outputEncoding=!0===t?Xx:qx}},toneMappingWhitePoint:{get:function(){return console.warn(\\\\\\\"THREE.WebGLRenderer: .toneMappingWhitePoint has been removed.\\\\\\\"),1},set:function(){console.warn(\\\\\\\"THREE.WebGLRenderer: .toneMappingWhitePoint has been removed.\\\\\\\")}}}),Object.defineProperties(ME.prototype,{cullFace:{get:function(){console.warn(\\\\\\\"THREE.WebGLRenderer: .shadowMap.cullFace has been removed. Set Material.shadowSide instead.\\\\\\\")},set:function(){console.warn(\\\\\\\"THREE.WebGLRenderer: .shadowMap.cullFace has been removed. Set Material.shadowSide instead.\\\\\\\")}},renderReverseSided:{get:function(){console.warn(\\\\\\\"THREE.WebGLRenderer: .shadowMap.renderReverseSided has been removed. Set Material.shadowSide instead.\\\\\\\")},set:function(){console.warn(\\\\\\\"THREE.WebGLRenderer: .shadowMap.renderReverseSided has been removed. Set Material.shadowSide instead.\\\\\\\")}},renderSingleSided:{get:function(){console.warn(\\\\\\\"THREE.WebGLRenderer: .shadowMap.renderSingleSided has been removed. Set Material.shadowSide instead.\\\\\\\")},set:function(){console.warn(\\\\\\\"THREE.WebGLRenderer: .shadowMap.renderSingleSided has been removed. Set Material.shadowSide instead.\\\\\\\")}}}),Object.defineProperties(Ab.prototype,{wrapS:{get:function(){return console.warn(\\\\\\\"THREE.WebGLRenderTarget: .wrapS is now .texture.wrapS.\\\\\\\"),this.texture.wrapS},set:function(t){console.warn(\\\\\\\"THREE.WebGLRenderTarget: .wrapS is now .texture.wrapS.\\\\\\\"),this.texture.wrapS=t}},wrapT:{get:function(){return console.warn(\\\\\\\"THREE.WebGLRenderTarget: .wrapT is now .texture.wrapT.\\\\\\\"),this.texture.wrapT},set:function(t){console.warn(\\\\\\\"THREE.WebGLRenderTarget: .wrapT is now .texture.wrapT.\\\\\\\"),this.texture.wrapT=t}},magFilter:{get:function(){return console.warn(\\\\\\\"THREE.WebGLRenderTarget: .magFilter is now .texture.magFilter.\\\\\\\"),this.texture.magFilter},set:function(t){console.warn(\\\\\\\"THREE.WebGLRenderTarget: .magFilter is now .texture.magFilter.\\\\\\\"),this.texture.magFilter=t}},minFilter:{get:function(){return console.warn(\\\\\\\"THREE.WebGLRenderTarget: .minFilter is now .texture.minFilter.\\\\\\\"),this.texture.minFilter},set:function(t){console.warn(\\\\\\\"THREE.WebGLRenderTarget: .minFilter is now .texture.minFilter.\\\\\\\"),this.texture.minFilter=t}},anisotropy:{get:function(){return console.warn(\\\\\\\"THREE.WebGLRenderTarget: .anisotropy is now .texture.anisotropy.\\\\\\\"),this.texture.anisotropy},set:function(t){console.warn(\\\\\\\"THREE.WebGLRenderTarget: .anisotropy is now .texture.anisotropy.\\\\\\\"),this.texture.anisotropy=t}},offset:{get:function(){return console.warn(\\\\\\\"THREE.WebGLRenderTarget: .offset is now .texture.offset.\\\\\\\"),this.texture.offset},set:function(t){console.warn(\\\\\\\"THREE.WebGLRenderTarget: .offset is now .texture.offset.\\\\\\\"),this.texture.offset=t}},repeat:{get:function(){return console.warn(\\\\\\\"THREE.WebGLRenderTarget: .repeat is now .texture.repeat.\\\\\\\"),this.texture.repeat},set:function(t){console.warn(\\\\\\\"THREE.WebGLRenderTarget: .repeat is now .texture.repeat.\\\\\\\"),this.texture.repeat=t}},format:{get:function(){return console.warn(\\\\\\\"THREE.WebGLRenderTarget: .format is now .texture.format.\\\\\\\"),this.texture.format},set:function(t){console.warn(\\\\\\\"THREE.WebGLRenderTarget: .format is now .texture.format.\\\\\\\"),this.texture.format=t}},type:{get:function(){return console.warn(\\\\\\\"THREE.WebGLRenderTarget: .type is now .texture.type.\\\\\\\"),this.texture.type},set:function(t){console.warn(\\\\\\\"THREE.WebGLRenderTarget: .type is now .texture.type.\\\\\\\"),this.texture.type=t}},generateMipmaps:{get:function(){return console.warn(\\\\\\\"THREE.WebGLRenderTarget: .generateMipmaps is now .texture.generateMipmaps.\\\\\\\"),this.texture.generateMipmaps},set:function(t){console.warn(\\\\\\\"THREE.WebGLRenderTarget: .generateMipmaps is now .texture.generateMipmaps.\\\\\\\"),this.texture.generateMipmaps=t}}}),kN.prototype.load=function(t){console.warn(\\\\\\\"THREE.Audio: .load has been deprecated. Use THREE.AudioLoader instead.\\\\\\\");const e=this;return(new zN).load(t,(function(t){e.setBuffer(t)})),this},zT.prototype.updateCubeMap=function(t,e){return console.warn(\\\\\\\"THREE.CubeCamera: .updateCubeMap() is now .update().\\\\\\\"),this.update(t,e)},zT.prototype.clear=function(t,e,n,i){return console.warn(\\\\\\\"THREE.CubeCamera: .clear() is now .renderTarget.clear().\\\\\\\"),this.renderTarget.clear(t,e,n,i)},yb.crossOrigin=void 0,yb.loadTexture=function(t,e,n,i){console.warn(\\\\\\\"THREE.ImageUtils.loadTexture has been deprecated. Use THREE.TextureLoader() instead.\\\\\\\");const s=new _N;s.setCrossOrigin(this.crossOrigin);const r=s.load(t,n,void 0,i);return e&&(r.mapping=e),r},yb.loadTextureCube=function(t,e,n,i){console.warn(\\\\\\\"THREE.ImageUtils.loadTextureCube has been deprecated. Use THREE.CubeTextureLoader() instead.\\\\\\\");const s=new pN;s.setCrossOrigin(this.crossOrigin);const r=s.load(t,n,void 0,i);return e&&(r.mapping=e),r},yb.loadCompressedTexture=function(){console.error(\\\\\\\"THREE.ImageUtils.loadCompressedTexture has been removed. Use THREE.DDSLoader instead.\\\\\\\")},yb.loadCompressedTextureCube=function(){console.error(\\\\\\\"THREE.ImageUtils.loadCompressedTextureCube has been removed. Use THREE.DDSLoader instead.\\\\\\\")};\\\\\\\"undefined\\\\\\\"!=typeof __THREE_DEVTOOLS__&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent(\\\\\\\"register\\\\\\\",{detail:{revision:\\\\\\\"133\\\\\\\"}})),\\\\\\\"undefined\\\\\\\"!=typeof window&&(window.__THREE__?console.warn(\\\\\\\"WARNING: Multiple instances of Three.js being imported.\\\\\\\"):window.__THREE__=\\\\\\\"133\\\\\\\");const hL=new Sb,uL=new Sb,dL=new Sb;class pL{constructor(t=new Sb(0,0,0),e=new Sb(0,1,0),n=1){this.start=t,this.end=e,this.radius=n}clone(){return new pL(this.start.clone(),this.end.clone(),this.radius)}set(t,e,n){this.start.copy(t),this.end.copy(e),this.radius=n}copy(t){this.start.copy(t.start),this.end.copy(t.end),this.radius=t.radius}getCenter(t){return t.copy(this.end).add(this.start).multiplyScalar(.5)}translate(t){this.start.add(t),this.end.add(t)}checkAABBAxis(t,e,n,i,s,r,o,a,l){return(s-t<l||s-n<l)&&(t-r<l||n-r<l)&&(o-e<l||o-i<l)&&(e-a<l||i-a<l)}intersectsBox(t){return this.checkAABBAxis(this.start.x,this.start.y,this.end.x,this.end.y,t.min.x,t.max.x,t.min.y,t.max.y,this.radius)&&this.checkAABBAxis(this.start.x,this.start.z,this.end.x,this.end.z,t.min.x,t.max.x,t.min.z,t.max.z,this.radius)&&this.checkAABBAxis(this.start.y,this.start.z,this.end.y,this.end.z,t.min.y,t.max.y,t.min.z,t.max.z,this.radius)}lineLineMinimumPoints(t,e){const n=hL.copy(t.end).sub(t.start),i=uL.copy(e.end).sub(e.start),s=dL.copy(e.start).sub(t.start),r=n.dot(i),o=n.dot(n),a=i.dot(i),l=i.dot(s),c=n.dot(s);let h,u;const d=o*a-r*r;if(Math.abs(d)<1e-10){const t=-l/a,e=(r-l)/a;Math.abs(t-.5)<Math.abs(e-.5)?(h=0,u=t):(h=1,u=e)}else h=(l*r+c*a)/d,u=(h*r-l)/a;u=Math.max(0,Math.min(1,u)),h=Math.max(0,Math.min(1,h));return[n.multiplyScalar(h).add(t.start),i.multiplyScalar(u).add(e.start)]}}const _L=new Sb,mL=new Sb,fL=new jT,gL=new sL,vL=new sL,yL=new $b,xL=new pL;class bL{constructor(t){this.triangles=[],this.box=t,this.subTrees=[]}addTriangle(t){return this.bounds||(this.bounds=new Lb),this.bounds.min.x=Math.min(this.bounds.min.x,t.a.x,t.b.x,t.c.x),this.bounds.min.y=Math.min(this.bounds.min.y,t.a.y,t.b.y,t.c.y),this.bounds.min.z=Math.min(this.bounds.min.z,t.a.z,t.b.z,t.c.z),this.bounds.max.x=Math.max(this.bounds.max.x,t.a.x,t.b.x,t.c.x),this.bounds.max.y=Math.max(this.bounds.max.y,t.a.y,t.b.y,t.c.y),this.bounds.max.z=Math.max(this.bounds.max.z,t.a.z,t.b.z,t.c.z),this.triangles.push(t),this}calcBox(){return this.box=this.bounds.clone(),this.box.min.x-=.01,this.box.min.y-=.01,this.box.min.z-=.01,this}split(t){if(!this.box)return;const e=[],n=mL.copy(this.box.max).sub(this.box.min).multiplyScalar(.5);for(let t=0;t<2;t++)for(let i=0;i<2;i++)for(let s=0;s<2;s++){const r=new Lb,o=_L.set(t,i,s);r.min.copy(this.box.min).add(o.multiply(n)),r.max.copy(r.min).add(n),e.push(new bL(r))}let i;for(;i=this.triangles.pop();)for(let t=0;t<e.length;t++)e[t].box.intersectsTriangle(i)&&e[t].triangles.push(i);for(let n=0;n<e.length;n++){const i=e[n].triangles.length;i>8&&t<16&&e[n].split(t+1),0!==i&&this.subTrees.push(e[n])}return this}build(){return this.calcBox(),this.split(0),this}getRayTriangles(t,e){for(let n=0;n<this.subTrees.length;n++){const i=this.subTrees[n];if(t.intersectsBox(i.box))if(i.triangles.length>0)for(let t=0;t<i.triangles.length;t++)-1===e.indexOf(i.triangles[t])&&e.push(i.triangles[t]);else i.getRayTriangles(t,e)}return e}triangleCapsuleIntersect(t,e){e.getPlane(fL);const n=fL.distanceToPoint(t.start)-t.radius,i=fL.distanceToPoint(t.end)-t.radius;if(n>0&&i>0||n<-t.radius&&i<-t.radius)return!1;const s=Math.abs(n/(Math.abs(n)+Math.abs(i))),r=_L.copy(t.start).lerp(t.end,s);if(e.containsPoint(r))return{normal:fL.normal.clone(),point:r.clone(),depth:Math.abs(Math.min(n,i))};const o=t.radius*t.radius,a=gL.set(t.start,t.end),l=[[e.a,e.b],[e.b,e.c],[e.c,e.a]];for(let e=0;e<l.length;e++){const n=vL.set(l[e][0],l[e][1]),[i,s]=t.lineLineMinimumPoints(a,n);if(i.distanceToSquared(s)<o)return{normal:i.clone().sub(s).normalize(),point:s.clone(),depth:t.radius-i.distanceTo(s)}}return!1}triangleSphereIntersect(t,e){if(e.getPlane(fL),!t.intersectsPlane(fL))return!1;const n=Math.abs(fL.distanceToSphere(t)),i=t.radius*t.radius-n*n,s=fL.projectPoint(t.center,_L);if(e.containsPoint(t.center))return{normal:fL.normal.clone(),point:s.clone(),depth:Math.abs(fL.distanceToSphere(t))};const r=[[e.a,e.b],[e.b,e.c],[e.c,e.a]];for(let e=0;e<r.length;e++){gL.set(r[e][0],r[e][1]),gL.closestPointToPoint(s,!0,mL);const n=mL.distanceToSquared(t.center);if(n<i)return{normal:t.center.clone().sub(mL).normalize(),point:mL.clone(),depth:t.radius-Math.sqrt(n)}}return!1}getSphereTriangles(t,e){for(let n=0;n<this.subTrees.length;n++){const i=this.subTrees[n];if(t.intersectsBox(i.box))if(i.triangles.length>0)for(let t=0;t<i.triangles.length;t++)-1===e.indexOf(i.triangles[t])&&e.push(i.triangles[t]);else i.getSphereTriangles(t,e)}}getCapsuleTriangles(t,e){for(let n=0;n<this.subTrees.length;n++){const i=this.subTrees[n];if(t.intersectsBox(i.box))if(i.triangles.length>0)for(let t=0;t<i.triangles.length;t++)-1===e.indexOf(i.triangles[t])&&e.push(i.triangles[t]);else i.getCapsuleTriangles(t,e)}}sphereIntersect(t){yL.copy(t);const e=[];let n,i=!1;this.getSphereTriangles(t,e);for(let t=0;t<e.length;t++)(n=this.triangleSphereIntersect(yL,e[t]))&&(i=!0,yL.center.add(n.normal.multiplyScalar(n.depth)));if(i){const e=yL.center.clone().sub(t.center),n=e.length();return{normal:e.normalize(),depth:n}}return!1}capsuleIntersect(t){xL.copy(t);const e=[];let n,i=!1;this.getCapsuleTriangles(xL,e);for(let t=0;t<e.length;t++)(n=this.triangleCapsuleIntersect(xL,e[t]))&&(i=!0,xL.translate(n.normal.multiplyScalar(n.depth)));if(i){const e=xL.getCenter(new Sb).sub(t.getCenter(_L)),n=e.length();return{normal:e.normalize(),depth:n}}return!1}rayIntersect(t){if(0===t.direction.length())return;const e=[];let n,i,s=1e100;this.getRayTriangles(t,e);for(let r=0;r<e.length;r++){const o=t.intersectTriangle(e[r].a,e[r].b,e[r].c,!0,_L);if(o){const a=o.sub(t.origin).length();s>a&&(i=o.clone().add(t.origin),s=a,n=e[r])}}return s<1e100&&{distance:s,triangle:n,position:i}}fromGraphNode(t){return t.updateWorldMatrix(!0,!0),t.traverse((t=>{if(!0===t.isMesh){let e,n=!1;null!==t.geometry.index?(n=!0,e=t.geometry.toNonIndexed()):e=t.geometry;const i=e.getAttribute(\\\\\\\"position\\\\\\\");for(let e=0;e<i.count;e+=3){const n=(new Sb).fromBufferAttribute(i,e),s=(new Sb).fromBufferAttribute(i,e+1),r=(new Sb).fromBufferAttribute(i,e+2);n.applyMatrix4(t.matrixWorld),s.applyMatrix4(t.matrixWorld),r.applyMatrix4(t.matrixWorld),this.addTriangle(new Uw(n,s,r))}n&&e.dispose()}})),this.build(),this}}class wL{constructor(t){this._object=t,this._octree=new bL,this._capsuleHeight=new p.a(0,1,0),this._capsule=new pL(new p.a(0,.35,0),new p.a(0,1,0),.6),this._octree.fromGraphNode(this._object)}setCapsule(t){this._capsule.copy(t),this._capsuleHeight.copy(t.end).sub(t.start)}testPosition(t){return this._capsule.end.copy(t),this._capsule.start.copy(t).sub(this._capsuleHeight),this._octree.capsuleIntersect(this._capsule)}}class TL extends J.a{setCheckCollisions(t){if(t){let e;t.traverse((t=>{if(!e){const n=t;n.geometry&&(e=n)}})),e?this._playerCollisionController=new wL(e):console.error(\\\\\\\"no geo found in\\\\\\\",t)}else this._playerCollisionController=void 0}setCollisionCapsule(t){var e;null===(e=this._playerCollisionController)||void 0===e||e.setCapsule(t)}setJumpParams(t){}setGravity(t){}setPlayerMass(t){}}const AL={rotateSpeed:1,rotationRange:{min:.25*-Math.PI,max:.25*Math.PI}},ML={type:\\\\\\\"change\\\\\\\"},EL=new p.a,SL=new uy;class CL extends TL{constructor(t,e,n){super(),this._camera=t,this.domElement=e,this.player=n,this.translationData={direction:new p.a},this.rotationData={direction:{x:0,y:0}},this._boundMethods={onRotateStart:this._onRotateStart.bind(this),onRotateMove:this._onRotateMove.bind(this),onRotateEnd:this._onRotateEnd.bind(this),onTranslateStart:this._onTranslateStart.bind(this),onTranslateMove:this._onTranslateMove.bind(this),onTranslateEnd:this._onTranslateEnd.bind(this),onJump:this._onJump.bind(this),onRunToggle:this._onRunToggle.bind(this)},this._startCameraRotation=new ny.a,this._rotationSpeed=AL.rotateSpeed,this._rotationRange={min:AL.rotationRange.min,max:AL.rotationRange.max},this._azimuthalAngle=0,this.vLeft=new p.a,this.vRight=new p.a,this.vTop=new p.a,this.vBottom=new p.a,this.angleY=0,this.angleX=0,this._rotationStartPosition=new d.a,this._rotationMovePosition=new d.a,this._rotationDelta=new d.a,this._startCameraPosition=new p.a,this._translationStartPosition=new d.a,this._translationMovePosition=new d.a,this._translationDelta=new d.a,this._camera.rotation.order=\\\\\\\"ZYX\\\\\\\",this._translateDomElement=this._createTranslateDomElement(),this._translateDomElementRect=this._translateDomElement.getBoundingClientRect(),this._runDomElement=this._createRunDomElement(),this._jumpDomElement=this._createJumpDomElement(),this._addElements(),this._addEvents()}dispose(){this._removeEvents(),this._removeElements(),this.updateElements()}_createTranslateDomElement(){const t=this.domElement.getBoundingClientRect(),e=Math.min(t.width,t.height),n=Math.round(.4*e),i=Math.round(.1*e),s=document.createElement(\\\\\\\"div\\\\\\\");return s.id=\\\\\\\"MobileJoystickControls-translate\\\\\\\",s.style.width=`${n}px`,s.style.height=s.style.width,s.style.border=\\\\\\\"1px solid black\\\\\\\",s.style.borderRadius=`${n}px`,s.style.position=\\\\\\\"absolute\\\\\\\",s.style.bottom=`${i}px`,s.style.left=`${i}px`,s}_jumpDomElementSize(){const t=this.domElement.getBoundingClientRect(),e=Math.min(t.width,t.height);return{size:Math.round(.2*e),margin:Math.round(.05*e)}}_createJumpDomElement(){const{size:t,margin:e}=this._jumpDomElementSize(),n=document.createElement(\\\\\\\"div\\\\\\\");n.id=\\\\\\\"MobileJoystickControls-jump\\\\\\\",n.style.width=`${t}px`;const i=Math.floor(t);return n.style.height=`${i}px`,n.style.border=\\\\\\\"1px solid black\\\\\\\",n.style.position=\\\\\\\"absolute\\\\\\\",n.style.bottom=`${2*e+parseInt(this._runDomElement.style.height)}px`,n.style.right=`${e}px`,n.style.borderRadius=`${i}px`,n}_createRunDomElement(){const t=document.createElement(\\\\\\\"div\\\\\\\"),e=this.domElement.getBoundingClientRect(),n=Math.min(e.width,e.height),i=Math.round(.2*n),s=Math.round(.05*n);return t.id=\\\\\\\"MobileJoystickControls-run\\\\\\\",t.style.width=`${i}px`,t.style.height=`${Math.floor(i)}px`,t.style.border=\\\\\\\"1px solid black\\\\\\\",t.style.position=\\\\\\\"absolute\\\\\\\",t.style.bottom=`${s}px`,t.style.right=`${s}px`,t.style.translate=\\\\\\\"-50%\\\\\\\",t}_addElements(){var t,e,n;null===(t=this.domElement.parentElement)||void 0===t||t.append(this._translateDomElement),null===(e=this.domElement.parentElement)||void 0===e||e.append(this._jumpDomElement),null===(n=this.domElement.parentElement)||void 0===n||n.append(this._runDomElement)}_removeElements(){var t;const e=[this._translateDomElement,this._jumpDomElement,this._runDomElement];for(let n of e)null===(t=n.parentElement)||void 0===t||t.removeChild(n)}updateElements(){this.player&&(this._jumpDomElement.style.display=this.player.jumpAllowed?\\\\\\\"block\\\\\\\":\\\\\\\"none\\\\\\\",this._runDomElement.style.display=this.player.runAllowed?\\\\\\\"block\\\\\\\":\\\\\\\"none\\\\\\\")}_addEvents(){xv.disableContextMenu(),this.domElement.addEventListener(\\\\\\\"touchstart\\\\\\\",this._boundMethods.onRotateStart),this.domElement.addEventListener(\\\\\\\"touchmove\\\\\\\",this._boundMethods.onRotateMove),this.domElement.addEventListener(\\\\\\\"touchend\\\\\\\",this._boundMethods.onRotateEnd),this._translateDomElement.addEventListener(\\\\\\\"touchstart\\\\\\\",this._boundMethods.onTranslateStart),this._translateDomElement.addEventListener(\\\\\\\"touchmove\\\\\\\",this._boundMethods.onTranslateMove),this._translateDomElement.addEventListener(\\\\\\\"touchend\\\\\\\",this._boundMethods.onTranslateEnd),this._jumpDomElement.addEventListener(\\\\\\\"pointerdown\\\\\\\",this._boundMethods.onJump),this._runDomElement.addEventListener(\\\\\\\"pointerdown\\\\\\\",this._boundMethods.onRunToggle)}_removeEvents(){xv.reEstablishContextMenu(),this.domElement.removeEventListener(\\\\\\\"touchstart\\\\\\\",this._boundMethods.onRotateStart),this.domElement.removeEventListener(\\\\\\\"touchmove\\\\\\\",this._boundMethods.onRotateMove),this.domElement.removeEventListener(\\\\\\\"touchend\\\\\\\",this._boundMethods.onRotateEnd),this._translateDomElement.removeEventListener(\\\\\\\"touchstart\\\\\\\",this._boundMethods.onTranslateStart),this._translateDomElement.removeEventListener(\\\\\\\"touchmove\\\\\\\",this._boundMethods.onTranslateMove),this._translateDomElement.removeEventListener(\\\\\\\"touchend\\\\\\\",this._boundMethods.onTranslateEnd),this._jumpDomElement.removeEventListener(\\\\\\\"pointerdown\\\\\\\",this._boundMethods.onJump),this._runDomElement.removeEventListener(\\\\\\\"pointerdown\\\\\\\",this._boundMethods.onRunToggle)}setRotationSpeed(t){this._rotationSpeed=t}setRotationRange(t){this._rotationRange.min=t.min,this._rotationRange.max=t.max}_onRotateStart(t){this._startCameraRotation.copy(this._camera.rotation);const e=this._getTouch(t,this.domElement);e&&(this._rotationStartPosition.set(e.clientX,e.clientY),this.vLeft.set(-1,0,.5),this.vRight.set(1,0,.5),[this.vLeft,this.vRight].forEach((t=>{t.unproject(this._camera),this._camera.worldToLocal(t)})),this.angleY=this.vLeft.angleTo(this.vRight),this.vTop.set(0,1,.5),this.vBottom.set(0,-1,.5),[this.vTop,this.vBottom].forEach((t=>{t.unproject(this._camera),this._camera.worldToLocal(t)})),this.angleX=this.vTop.angleTo(this.vBottom))}_onRotateMove(t){const e=this._getTouch(t,this.domElement);e&&(this._rotationMovePosition.set(e.clientX,e.clientY),this._rotationDelta.copy(this._rotationMovePosition).sub(this._rotationStartPosition),this.rotationData.direction.x=this._rotationDelta.x/this.domElement.clientWidth,this.rotationData.direction.y=this._rotationDelta.y/this.domElement.clientHeight,this._rotateCamera(this.rotationData))}_onRotateEnd(){this.rotationData.direction.x=0,this.rotationData.direction.y=0}_rotateCamera(t){let e=this.angleY*t.direction.x*this._rotationSpeed;this._camera.rotation.y=this._startCameraRotation.y+-e;let n=this.angleX*t.direction.y*this._rotationSpeed;this._camera.rotation.x=or.clamp(this._startCameraRotation.x+-n,this._rotationRange.min,this._rotationRange.max),this._computeAzimuthalAngle(),this.dispatchEvent(ML)}_computeAzimuthalAngle(){this._camera.updateMatrixWorld(),EL.set(0,0,1),this._camera.localToWorld(EL),EL.sub(this._camera.position),SL.setFromVector3(EL),this._azimuthalAngle=SL.theta}_onTranslateStart(t){this._startCameraPosition.copy(this._camera.position);if(!this._getTouch(t,this._translateDomElement))return;this._translateDomElementRect=this._translateDomElement.getBoundingClientRect();const e=this._translateDomElementRect.left+.5*this._translateDomElementRect.width,n=this._translateDomElementRect.top+.5*this._translateDomElementRect.height;this._translationStartPosition.set(e,n)}_onTranslateMove(t){const e=this._getTouch(t,this._translateDomElement);e&&(this._translationMovePosition.set(e.clientX,e.clientY),this._translationDelta.copy(this._translationMovePosition).sub(this._translationStartPosition),this.translationData.direction.x=this._translationDelta.x/this._translateDomElementRect.width*.5,this.translationData.direction.z=-this._translationDelta.y/this._translateDomElementRect.height*.5,this._updatePlayerTranslate(),this.dispatchEvent(ML))}_onTranslateEnd(){this.translationData.direction.x=0,this.translationData.direction.z=0,this._updatePlayerTranslate()}_updatePlayerTranslate(){if(!this.player)return;const t=this.translationData.direction;this.player.setForward(!1),this.player.setBackward(!1),this.player.setLeft(!1),this.player.setRight(!1);const e=Math.abs(t.x),n=Math.abs(t.z),i=n-e;function s(e){t.z>0&&e.setForward(!0),t.z<0&&e.setBackward(!0)}function r(e){t.x>0&&e.setRight(!0),t.x<0&&e.setLeft(!0)}i>0?(s(this.player),i<.5*n&&r(this.player)):(r(this.player),i<.5*e&&s(this.player))}_onJump(){var t;null===(t=this.player)||void 0===t||t.jump()}_onRunToggle(){if(!this.player)return;const t=this.player.running();this.player.setRun(!t);const e=this.player.running()?3:1;this._runDomElement.style.border=`${e}px solid black`}update(t){this.player&&(this.player.setAzimuthalAngle(this._azimuthalAngle),this.player.update(t))}_getTouch(t,e){for(let n=0;n<t.touches.length;n++){const i=t.touches[n];if(i.target===e)return i}}}const NL=\\\\\\\"start\\\\\\\",LL=\\\\\\\"change\\\\\\\",OL=\\\\\\\"end\\\\\\\";function PL(){return{cook:!1,callback:t=>{IL.PARAM_CALLBACK_updatePlayerParams(t)}}}const RL=new class extends ua{constructor(){super(...arguments),this.main=ha.FOLDER(),this.colliderObject=ha.NODE_PATH(\\\\\\\"\\\\\\\",{nodeSelection:{context:ts.SOP},dependentOnFoundNode:!1,callback:t=>{IL.PARAM_CALLBACK_updateCollider(t)}}),this.capsuleRadius=ha.FLOAT(.5,{range:[0,1],rangeLocked:[!0,!1],...PL()}),this.capsuleHeight=ha.FLOAT(1,{range:[0,2],rangeLocked:[!0,!1],...PL()}),this.physics=ha.FOLDER(),this.physicsSteps=ha.INTEGER(5,{range:[1,10],rangeLocked:[!0,!1],...PL()}),this.gravity=ha.VECTOR3([0,-30,0],{...PL()}),this.translateSpeed=ha.FLOAT(1),this.rotateSpeed=ha.FLOAT(AL.rotateSpeed),this.jumpAllowed=ha.BOOLEAN(!0,{...PL()}),this.jumpStrength=ha.FLOAT(10,{range:[0,100],rangeLocked:[!0,!1],...PL()}),this.runAllowed=ha.BOOLEAN(!0,{...PL()}),this.runSpeedMult=ha.FLOAT(2,{range:[0,10],rangeLocked:[!0,!1],...PL()}),this.updateCollider=ha.BUTTON(null,{callback:t=>{IL.PARAM_CALLBACK_updateCollider(t)}}),this.init=ha.FOLDER(),this.startPosition=ha.VECTOR3([0,2,0],{...PL()}),this.startRotation=ha.VECTOR3([0,0,0],{...PL()}),this.reset=ha.BUTTON(null,{callback:t=>{IL.PARAM_CALLBACK_resetPlayer(t)}}),this.minPolarAngle=ha.FLOAT(\\\\\\\"-$PI*0.5\\\\\\\",{range:[-Math.PI,Math.PI],rangeLocked:[!0,!0]}),this.maxPolarAngle=ha.FLOAT(\\\\\\\"$PI*0.5\\\\\\\",{range:[-Math.PI,Math.PI],rangeLocked:[!0,!0]})}};class IL extends ey{constructor(){super(...arguments),this.paramsConfig=RL,this._controls_by_element_id=new Map}static type(){return _s.MOBILE_JOYSTICK}endEventName(){return\\\\\\\"end\\\\\\\"}collisionController(){return this._collisionController=this._collisionController||new tx(this)}initializeNode(){this.io.inputs.setNamedInputConnectionPoints([new ta(IL.INPUT_UPDATE_COLLIDER,Qo.BASE,this._updateCollider.bind(this))]),this.io.outputs.setNamedOutputConnectionPoints([new ta(NL,Qo.BASE),new ta(LL,Qo.BASE),new ta(OL,Qo.BASE)])}async createControlsInstance(t,e){await this._initPlayer(t);const n=new CL(t,e,this._player);return this._controls_by_element_id.set(e.id,n),this._bind_listeners_to_controls_instance(n),n}async _initPlayer(t){this._player=this._player||await this._createPlayer(t),this._player&&(this._updatePlayerParams(),this._player.reset())}player(){return this._player}async _updatePlayerParams(){this._player&&(this._player.startPosition.copy(this.pv.startPosition),this._player.physicsSteps=this.pv.physicsSteps,this._player.jumpAllowed=this.pv.jumpAllowed,this._player.jumpStrength=this.pv.jumpStrength,this._player.runAllowed=this.pv.runAllowed,this._player.runSpeedMult=this.pv.runSpeedMult,this._player.gravity.copy(this.pv.gravity),this._player.speed=this.pv.translateSpeed,this._player.setCapsule({radius:this.pv.capsuleRadius,height:this.pv.capsuleHeight}),this._controls_by_element_id.forEach((t=>t.updateElements())))}async _createPlayer(t){const e=t,n=await this.collisionController().getCollider();if(!n)return void this.states.error.set(\\\\\\\"invalid collider\\\\\\\");return new $y({object:e,collider:n})}_resetPlayer(){var t;null===(t=this._player)||void 0===t||t.reset()}async _updateCollider(){await this.collisionController().updateCollider()}_bind_listeners_to_controls_instance(t){t.addEventListener(NL,(()=>{this.dispatchEventToOutput(NL,{})})),t.addEventListener(LL,(()=>{this.dispatchEventToOutput(LL,{})})),t.addEventListener(OL,(()=>{this.dispatchEventToOutput(OL,{})}))}updateRequired(){return!0}setupControls(t){t.setRotationSpeed(this.pv.rotateSpeed),t.setRotationRange({min:this.pv.minPolarAngle,max:this.pv.maxPolarAngle}),t.updateElements()}disposeControlsForHtmlElementId(t){this._controls_by_element_id.get(t)&&this._controls_by_element_id.delete(t)}static PARAM_CALLBACK_updateCollider(t){t._updateCollider()}static PARAM_CALLBACK_updatePlayerParams(t){t._updatePlayerParams()}static PARAM_CALLBACK_resetPlayer(t){t._resetPlayer()}}var FL;IL.INPUT_UPDATE_COLLIDER=\\\\\\\"updateCollider\\\\\\\",function(t){t.ALL_TOGETHER=\\\\\\\"all together\\\\\\\",t.BATCH=\\\\\\\"batch\\\\\\\"}(FL||(FL={}));const DL=[FL.ALL_TOGETHER,FL.BATCH];const BL=new class extends ua{constructor(){super(...arguments),this.mask=ha.STRING(\\\\\\\"/geo*\\\\\\\",{callback:t=>{zL.PARAM_CALLBACK_updateResolvedNodes(t)}}),this.force=ha.BOOLEAN(0),this.cookMode=ha.INTEGER(DL.indexOf(FL.ALL_TOGETHER),{menu:{entries:DL.map(((t,e)=>({name:t,value:e})))}}),this.batchSize=ha.INTEGER(1,{visibleIf:{cookMode:DL.indexOf(FL.BATCH)},separatorAfter:!0}),this.registerOnlyFirstCooks=ha.BOOLEAN(!0),this.updateResolve=ha.BUTTON(null,{callback:(t,e)=>{zL.PARAM_CALLBACK_updateResolve(t)}}),this.printResolve=ha.BUTTON(null,{callback:(t,e)=>{zL.PARAM_CALLBACK_printResolve(t)}})}};class zL extends Va{constructor(){super(...arguments),this.paramsConfig=BL,this._resolvedNodes=[],this._dispatchedFirstNodeCooked=!1,this._dispatchedAllNodesCooked=!1,this._cookStateByNodeId=new Map}static type(){return\\\\\\\"nodeCook\\\\\\\"}initializeNode(){this.io.inputs.setNamedInputConnectionPoints([new ta(zL.INPUT_TRIGGER,Qo.BASE,this.processEventTrigger.bind(this))]),this.io.outputs.setNamedOutputConnectionPoints([new ta(zL.OUTPUT_FIRST_NODE,Qo.BASE),new ta(zL.OUTPUT_EACH_NODE,Qo.BASE),new ta(zL.OUTPUT_ALL_NODES,Qo.BASE)])}trigger(){this.processEventTrigger({})}cook(){this._updateResolvedNodes(),this.cookController.endCook()}dispose(){super.dispose(),this._reset()}resolvedNodes(){return this._resolvedNodes}processEventTrigger(t){this._cook_nodes_with_mode()}_cook_nodes_with_mode(){this._updateResolvedNodes();const t=DL[this.pv.cookMode];switch(t){case FL.ALL_TOGETHER:return this._cookNodesAllTogether();case FL.BATCH:return this._cookNodesInBatch()}os.unreachable(t)}_cookNodesAllTogether(){this._cookNodes(this._resolvedNodes)}async _cookNodesInBatch(){const t=this.pv.batchSize,e=Math.ceil(this._resolvedNodes.length/t);for(let n=0;n<e;n++){const e=n*t,i=(n+1)*t,s=this._resolvedNodes.slice(e,i);await this._cookNodes(s)}}async _cookNodes(t){const e=[];for(let n of t)e.push(this._cookNode(n));return await Promise.all(e)}_cookNode(t){return this.pv.force&&t.setDirty(this),t.compute()}static PARAM_CALLBACK_updateResolvedNodes(t){t._updateResolvedNodes()}_updateResolvedNodes(){this._reset(),this._resolvedNodes=this.scene().nodesController.nodesFromMask(this.pv.mask||\\\\\\\"\\\\\\\");for(let t of this._resolvedNodes)t.cookController.registerOnCookEnd(this._callbackNameForNode(t),(()=>{this._onNodeCookComplete(t)})),this._cookStateByNodeId.set(t.graphNodeId(),!1)}_callbackNameForNode(t){return`owner-${this.graphNodeId()}-target-${t.graphNodeId()}`}_reset(){this._dispatchedFirstNodeCooked=!1,this._cookStateByNodeId.clear();for(let t of this._resolvedNodes)t.cookController.deregisterOnCookEnd(this._callbackNameForNode(t));this._resolvedNodes=[]}_allNodesHaveCooked(){for(let t of this._resolvedNodes){if(!this._cookStateByNodeId.get(t.graphNodeId()))return!1}return!0}_onNodeCookComplete(t){const e={value:{node:t}};this._dispatchedFirstNodeCooked||(this._dispatchedFirstNodeCooked=!0,this.dispatchEventToOutput(zL.OUTPUT_FIRST_NODE,e));this._cookStateByNodeId.get(t.graphNodeId())&&this.pv.registerOnlyFirstCooks||this.dispatchEventToOutput(zL.OUTPUT_EACH_NODE,e),this._cookStateByNodeId.set(t.graphNodeId(),!0),this._dispatchedAllNodesCooked||this._allNodesHaveCooked()&&(this._dispatchedAllNodesCooked=!0,this.dispatchEventToOutput(zL.OUTPUT_ALL_NODES,{}))}static PARAM_CALLBACK_updateResolve(t){t._allNodesHaveCooked()}static PARAM_CALLBACK_printResolve(t){t.printResolve()}printResolve(){console.log(this._resolvedNodes)}}var kL,UL;zL.INPUT_TRIGGER=\\\\\\\"trigger\\\\\\\",zL.OUTPUT_FIRST_NODE=\\\\\\\"first\\\\\\\",zL.OUTPUT_EACH_NODE=\\\\\\\"each\\\\\\\",zL.OUTPUT_ALL_NODES=\\\\\\\"all\\\\\\\",function(t){t.TRIGGER=\\\\\\\"trigger\\\\\\\"}(kL||(kL={})),function(t){t.OUT=\\\\\\\"out\\\\\\\"}(UL||(UL={}));const GL=new class extends ua{};class VL extends Va{constructor(){super(...arguments),this.paramsConfig=GL}static type(){return\\\\\\\"null\\\\\\\"}initializeNode(){this.io.inputs.setNamedInputConnectionPoints([new ta(kL.TRIGGER,Qo.BASE,this.processEventTrigger.bind(this))]),this.io.outputs.setNamedOutputConnectionPoints([new ta(UL.OUT,Qo.BASE)])}processEvent(t){}processEventTrigger(t){this.dispatchEventToOutput(UL.OUT,t)}}const HL=\\\\\\\"init\\\\\\\",jL=\\\\\\\"dispose\\\\\\\",WL=\\\\\\\"reset\\\\\\\";function qL(){return{callback:t=>{ZL.PARAM_CALLBACK_updatePlayerParams(t)}}}const XL=new p.a,YL=new p.a,$L=new uy;const JL=new class extends ua{constructor(){super(...arguments),this.main=ha.FOLDER(),this.playerObject=ha.NODE_PATH(\\\\\\\"\\\\\\\",{nodeSelection:{context:ts.OBJ}}),this.colliderObject=ha.NODE_PATH(\\\\\\\"\\\\\\\",{nodeSelection:{context:ts.SOP},dependentOnFoundNode:!1,callback:t=>{ZL.PARAM_CALLBACK_updateCollider(t)}}),this.camera=ha.NODE_PATH(\\\\\\\"\\\\\\\",{nodeSelection:{types:[is.PERSPECTIVE,is.ORTHOGRAPHIC],context:ts.OBJ}}),this.initPlayer=ha.BUTTON(null,{callback:t=>{ZL.PARAM_CALLBACK_initPlayer(t)}}),this.capsuleRadius=ha.FLOAT(.5,{range:[0,1],rangeLocked:[!0,!1],...qL()}),this.capsuleHeight=ha.FLOAT(1,{range:[0,2],rangeLocked:[!0,!1],...qL()}),this.physics=ha.FOLDER(),this.physicsSteps=ha.INTEGER(5,{range:[1,10],rangeLocked:[!0,!1],...qL()}),this.gravity=ha.VECTOR3([0,-30,0],{...qL()}),this.speed=ha.FLOAT(1,{range:[0,10],rangeLocked:[!0,!1],...qL()}),this.jumpAllowed=ha.BOOLEAN(!0,{...qL()}),this.jumpStrength=ha.FLOAT(10,{range:[0,100],rangeLocked:[!0,!1],...qL()}),this.runAllowed=ha.BOOLEAN(!0,{...qL()}),this.runSpeedMult=ha.FLOAT(2,{range:[0,10],rangeLocked:[!0,!1],...qL()}),this.updateCollider=ha.BUTTON(null,{callback:t=>{ZL.PARAM_CALLBACK_updateCollider(t)}}),this.mesh=ha.FOLDER(),this.useMesh=ha.BOOLEAN(!0,{callback:t=>{ZL.PARAM_CALLBACK_updatePlayerMesh(t)}}),this.material=ha.NODE_PATH(\\\\\\\"\\\\\\\",{nodeSelection:{context:ts.MAT},callback:t=>{ZL.PARAM_CALLBACK_updatePlayerMaterial(t)}}),this.init=ha.FOLDER(),this.startPosition=ha.VECTOR3([0,5,0],{...qL()}),this.reset=ha.BUTTON(null,{callback:t=>{ZL.PARAM_CALLBACK_resetPlayer(t)}})}};class ZL extends Va{constructor(){super(...arguments),this.paramsConfig=JL}static type(){return _s.PLAYER}collisionController(){return this._collisionController=this._collisionController||new tx(this)}initializeNode(){this.io.inputs.setNamedInputConnectionPoints([new ta(HL,Qo.BASE,this._initPlayer.bind(this)),new ta(jL,Qo.BASE,this._disposePlayer.bind(this)),new ta(WL,Qo.BASE,this._resetPlayer.bind(this))]),this.io.outputs.setNamedOutputConnectionPoints([new ta(HL,Qo.BASE),new ta(jL,Qo.BASE),new ta(WL,Qo.BASE)])}async _initPlayer(){if(this._player=this._player||await this._createPlayer(),!this._player)return void this.states.error.set(\\\\\\\"could not create player\\\\\\\");this._updatePlayerMesh(),this._updatePlayerMaterial(),this._updatePlayerParams(),this._corePlayerKeyEvents=new Zy(this._player),this._corePlayerKeyEvents.addEvents(),this._player.reset();const t=this._player;this.scene().registerOnBeforeTick(this._callbackName(),(e=>{t.setAzimuthalAngle(this._getAzimuthalAngle()),t.update(e)})),this.dispatchEventToOutput(HL,{})}player(){return this._player}_callbackName(){return`event/PlayerControls-${this.graphNodeId()}`}_disposePlayer(){var t;this._player&&(null===(t=this._corePlayerKeyEvents)||void 0===t||t.removeEvents(),this.scene().unRegisterOnBeforeTick(this._callbackName())),this.dispatchEventToOutput(jL,{})}_resetPlayer(){this._player&&this._player.reset(),this.dispatchEventToOutput(WL,{})}async _updatePlayerParams(){this._player&&(this._player.startPosition.copy(this.pv.startPosition),this._player.physicsSteps=this.pv.physicsSteps,this._player.jumpAllowed=this.pv.jumpAllowed,this._player.jumpStrength=this.pv.jumpStrength,this._player.runAllowed=this.pv.runAllowed,this._player.runSpeedMult=this.pv.runSpeedMult,this._player.gravity.copy(this.pv.gravity),this._player.speed=this.pv.speed,this._player.setCapsule({radius:this.pv.capsuleRadius,height:this.pv.capsuleHeight}))}_updatePlayerMesh(){this._player&&this._player.setUsePlayerMesh(this.pv.useMesh)}async _updatePlayerMaterial(){if(!this._player)return;const t=this.pv.material.nodeWithContext(ts.MAT);if(!t)return void this.states.error.set(\\\\\\\"material node not found\\\\\\\");const e=(await t.compute()).material();this._player.setMaterial(e)}async _createPlayer(){const t=this.pv.playerObject.nodeWithContext(ts.OBJ);if(!t)return void this.states.error.set(\\\\\\\"player node not found\\\\\\\");const e=this.pv.camera.nodeWithContext(ts.OBJ);if(!e)return void this.states.error.set(\\\\\\\"invalid camera node\\\\\\\");this._cameraObject=e.object;const n=t.object,i=await this.collisionController().getCollider();if(!i)return void this.states.error.set(\\\\\\\"invalid collider\\\\\\\");return new $y({object:n,collider:i,meshName:this.path()})}async _updateCollider(){await this.collisionController().updateCollider()}_getAzimuthalAngle(){if(!this._cameraObject||!this._player)return 0;const t=this._cameraObject.position,e=this._player.object.position;return XL.copy(t),YL.copy(e),XL.sub(YL),$L.setFromVector3(XL),$L.theta}static PARAM_CALLBACK_initPlayer(t){t._initPlayer()}static PARAM_CALLBACK_updatePlayerParams(t){t._updatePlayerParams()}static PARAM_CALLBACK_updatePlayerMaterial(t){t._updatePlayerMaterial()}static PARAM_CALLBACK_updatePlayerMesh(t){t._updatePlayerMesh()}static PARAM_CALLBACK_updateCollider(t){t._updateCollider()}static PARAM_CALLBACK_resetPlayer(t){t._resetPlayer()}}var KL,QL=n(39),tO=n(36);class eO{constructor(t,e,n=0,i=1/0){this.ray=new QL.a(t,e),this.near=n,this.far=i,this.camera=null,this.layers=new tO.a,this.params={Mesh:{},Line:{threshold:1},LOD:{},Points:{threshold:1},Sprite:{}}}set(t,e){this.ray.set(t,e)}setFromCamera(t,e){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&&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 iO(t,this,n,e),n.sort(nO),n}intersectObjects(t,e=!0,n=[]){for(let i=0,s=t.length;i<s;i++)iO(t[i],this,n,e);return n.sort(nO),n}}function nO(t,e){return t.distance-e.distance}function iO(t,e,n,i){if(t.layers.test(e.layers)&&t.raycast(e,n),!0===i){const i=t.children;for(let t=0,s=i.length;t<s;t++)iO(i[t],e,n,!0)}}!function(t){t.GEOMETRY=\\\\\\\"geometry\\\\\\\",t.PLANE=\\\\\\\"plane\\\\\\\"}(KL||(KL={}));KL.GEOMETRY,KL.PLANE;class sO{constructor(t){this._node=t,this._set_pos_timestamp=-1,this._hit_velocity=new p.a(0,0,0),this._hit_velocity_array=[0,0,0]}process(t){if(!this._node.pv.tvelocity)return;if(!this._prev_position)return this._prev_position=this._prev_position||new p.a,void this._prev_position.copy(t);const e=li.performance.performanceManager().now(),n=e-this._set_pos_timestamp;if(this._set_pos_timestamp=e,this._hit_velocity.copy(t).sub(this._prev_position).divideScalar(n).multiplyScalar(1e3),this._hit_velocity.toArray(this._hit_velocity_array),this._node.pv.tvelocityTarget){if(li.playerMode())this._found_velocity_target_param=this._found_velocity_target_param||this._node.pv.velocityTarget.paramWithType(Cr.VECTOR3);else{const t=this._node.pv.velocityTarget;this._found_velocity_target_param=t.paramWithType(Cr.VECTOR3)}this._found_velocity_target_param&&this._found_velocity_target_param.set(this._hit_velocity_array)}else this._node.p.velocity.set(this._hit_velocity_array);this._prev_position.copy(t)}reset(){this._prev_position=void 0}}var rO;!function(t){t.GEOMETRY=\\\\\\\"geometry\\\\\\\",t.PLANE=\\\\\\\"plane\\\\\\\"}(rO||(rO={}));const oO=[rO.GEOMETRY,rO.PLANE];function aO(t,e,n){var i=e.getBoundingClientRect();n.offsetX=t.pageX-i.left,n.offsetY=t.pageY-i.top}class lO{constructor(t){this._node=t,this._offset={offsetX:0,offsetY:0},this._mouse=new d.a,this._mouse_array=[0,0],this._raycaster=function(){const t=new eO;return t.firstHitOnly=!0,t}(),this._plane=new Y.a,this._plane_intersect_target=new p.a,this._intersections=[],this._hit_position_array=[0,0,0],this.velocity_controller=new sO(this._node)}updateMouse(t){var e;const n=null===(e=t.viewer)||void 0===e?void 0:e.canvas(),i=t.cameraNode;if(!n||!i)return;const s=t.event;if((s instanceof MouseEvent||s instanceof DragEvent||s instanceof PointerEvent)&&aO(s,n,this._offset),window.TouchEvent&&s instanceof TouchEvent){aO(s.touches[0],n,this._offset)}(t=>{this._mouse.x=t.offsetX/n.offsetWidth*2-1,this._mouse.y=-t.offsetY/n.offsetHeight*2+1,this._mouse.toArray(this._mouse_array),this._node.p.mouse.set(this._mouse_array)})(this._offset),this._raycaster.setFromCamera(this._mouse,i.object)}processEvent(t){this._prepareRaycaster(t);const e=oO[this._node.pv.intersectWith];switch(e){case rO.GEOMETRY:return this._intersect_with_geometry(t);case rO.PLANE:return this._intersect_with_plane(t)}os.unreachable(e)}_intersect_with_plane(t){this._plane.normal.copy(this._node.pv.planeDirection),this._plane.constant=this._node.pv.planeOffset,this._raycaster.ray.intersectPlane(this._plane,this._plane_intersect_target),this._set_position_param(this._plane_intersect_target),this._node.trigger_hit(t)}_intersect_with_geometry(t){if(this._resolved_targets||this.update_target(),this._resolved_targets){this._intersections.length=0;const e=this._raycaster.intersectObjects(this._resolved_targets,this._node.pv.traverseChildren,this._intersections)[0];e?(this._set_position_param(e.point),this._node.pv.geoAttribute&&this._resolve_geometry_attribute(e),t.value={intersect:e},this._node.trigger_hit(t)):this._node.trigger_miss(t)}}_resolve_geometry_attribute(t){const e=ks[this._node.pv.geoAttributeType],n=lO.resolve_geometry_attribute(t,this._node.pv.geoAttributeName,e);if(null!=n){switch(e){case zs.NUMERIC:return void this._node.p.geoAttributeValue1.set(n);case zs.STRING:return void(m.isString(n)&&this._node.p.geoAttributeValues.set(n))}os.unreachable(e)}}static resolve_geometry_attribute(t,e,n){switch(Os(t.object.constructor)){case Ns.MESH:return this.resolve_geometry_attribute_for_mesh(t,e,n);case Ns.POINTS:return this.resolve_geometry_attribute_for_point(t,e,n)}}static resolve_geometry_attribute_for_mesh(t,e,n){const i=t.object.geometry;if(i){const s=i.getAttribute(e);if(s){switch(n){case zs.NUMERIC:{const e=i.getAttribute(\\\\\\\"position\\\\\\\");return t.face?(this._vA.fromBufferAttribute(e,t.face.a),this._vB.fromBufferAttribute(e,t.face.b),this._vC.fromBufferAttribute(e,t.face.c),this._uvA.fromBufferAttribute(s,t.face.a),this._uvB.fromBufferAttribute(s,t.face.b),this._uvC.fromBufferAttribute(s,t.face.c),t.uv=tr.a.getUV(t.point,this._vA,this._vB,this._vC,this._uvA,this._uvB,this._uvC,this._hitUV),this._hitUV.x):void 0}case zs.STRING:{const t=new fr(i).points()[0];return t?t.stringAttribValue(e):void 0}}os.unreachable(n)}}}static resolve_geometry_attribute_for_point(t,e,n){const i=t.object.geometry;if(i&&null!=t.index){switch(n){case zs.NUMERIC:{const n=i.getAttribute(e);return n?n.array[t.index]:void 0}case zs.STRING:{const n=new fr(i).points()[t.index];return n?n.stringAttribValue(e):void 0}}os.unreachable(n)}}_set_position_param(t){if(t.toArray(this._hit_position_array),this._node.pv.tpositionTarget){if(li.playerMode())this._found_position_target_param=this._found_position_target_param||this._node.pv.positionTarget.paramWithType(Cr.VECTOR3);else{const t=this._node.pv.positionTarget;this._found_position_target_param=t.paramWithType(Cr.VECTOR3)}this._found_position_target_param&&this._found_position_target_param.set(this._hit_position_array)}else this._node.p.position.set(this._hit_position_array);this.velocity_controller.process(t)}_prepareRaycaster(t){const e=this._raycaster.params.Points;e&&(e.threshold=this._node.pv.pointsThreshold);let n=t.cameraNode;if(this._node.pv.overrideCamera)if(this._node.pv.overrideRay)this._raycaster.ray.origin.copy(this._node.pv.rayOrigin),this._raycaster.ray.direction.copy(this._node.pv.rayDirection);else{const t=this._node.p.camera.found_node_with_context(ts.OBJ);t&&(n=t)}n&&!this._node.pv.overrideRay&&n.prepareRaycaster(this._mouse,this._raycaster)}update_target(){const t=vO[this._node.pv.targetType];switch(t){case gO.NODE:return this._update_target_from_node();case gO.SCENE_GRAPH:return this._update_target_from_scene_graph()}os.unreachable(t)}_update_target_from_node(){const t=this._node.p.targetNode.value.nodeWithContext(ts.OBJ);if(t){const e=this._node.pv.traverseChildren?t.object:t.childrenDisplayController.sopGroup();this._resolved_targets=e?[e]:void 0}else this._node.states.error.set(\\\\\\\"node is not an object\\\\\\\")}_update_target_from_scene_graph(){const t=this._node.scene().objectsByMask(this._node.pv.objectMask);t.length>0?this._resolved_targets=t:this._resolved_targets=void 0}async update_position_target(){this._node.p.positionTarget.isDirty()&&await this._node.p.positionTarget.compute()}static PARAM_CALLBACK_update_target(t){t.cpuController.update_target()}static PARAM_CALLBACK_print_resolve(t){t.cpuController.print_resolve()}print_resolve(){this.update_target(),console.log(this._resolved_targets)}}lO._vA=new p.a,lO._vB=new p.a,lO._vC=new p.a,lO._uvA=new d.a,lO._uvB=new d.a,lO._uvC=new d.a,lO._hitUV=new d.a;class cO{constructor(t){this._node=t,this._resolved_material=null,this._restore_context={scene:{overrideMaterial:null},renderer:{toneMapping:-1,outputEncoding:-1}},this._mouse=new d.a,this._mouse_array=[0,0],this._read=new Float32Array(4),this._param_read=[0,0,0,0]}updateMouse(t){var e;const n=null===(e=t.viewer)||void 0===e?void 0:e.canvas();n&&t.event&&(t.event instanceof MouseEvent||t.event instanceof DragEvent||t.event instanceof PointerEvent?(this._mouse.x=t.event.offsetX/n.offsetWidth,this._mouse.y=1-t.event.offsetY/n.offsetHeight,this._mouse.toArray(this._mouse_array),this._node.p.mouse.set(this._mouse_array)):console.warn(\\\\\\\"event type not implemented\\\\\\\"))}processEvent(t){var e;const n=null===(e=t.viewer)||void 0===e?void 0:e.canvas();if(!n||!t.cameraNode)return;const i=t.cameraNode,s=i.renderController;if(s){if(this._render_target=this._render_target||new K(n.offsetWidth,n.offsetHeight,{minFilter:w.V,magFilter:w.ob,format:w.Ib,type:w.G}),!this._resolved_material)return this.update_material(),void console.warn(\\\\\\\"no material found\\\\\\\");const e=i,r=s.resolved_scene||i.scene().threejsScene(),o=s.renderer(n);this._modify_scene_and_renderer(r,o),o.setRenderTarget(this._render_target),o.clear(),o.render(r,e.object),o.setRenderTarget(null),this._restore_scene_and_renderer(r,o),o.readRenderTargetPixels(this._render_target,Math.round(this._mouse.x*n.offsetWidth),Math.round(this._mouse.y*n.offsetHeight),1,1,this._read),this._param_read[0]=this._read[0],this._param_read[1]=this._read[1],this._param_read[2]=this._read[2],this._param_read[3]=this._read[3],this._node.p.pixelValue.set(this._param_read),this._node.pv.pixelValue.x>this._node.pv.hitThreshold?this._node.trigger_hit(t):this._node.trigger_miss(t)}}_modify_scene_and_renderer(t,e){this._restore_context.scene.overrideMaterial=t.overrideMaterial,this._restore_context.renderer.outputEncoding=e.outputEncoding,this._restore_context.renderer.toneMapping=e.toneMapping,t.overrideMaterial=this._resolved_material,e.toneMapping=w.vb,e.outputEncoding=w.U}_restore_scene_and_renderer(t,e){t.overrideMaterial=this._restore_context.scene.overrideMaterial,e.outputEncoding=this._restore_context.renderer.outputEncoding,e.toneMapping=this._restore_context.renderer.toneMapping}update_material(){const t=this._node.p.material.found_node();t?t.context()==ts.MAT?this._resolved_material=t.material:this._node.states.error.set(\\\\\\\"target is not an obj\\\\\\\"):this._node.states.error.set(\\\\\\\"no target found\\\\\\\")}static PARAM_CALLBACK_update_material(t){t.gpuController.update_material()}}const hO=1e3/60;var uO;!function(t){t.CPU=\\\\\\\"cpu\\\\\\\",t.GPU=\\\\\\\"gpu\\\\\\\"}(uO||(uO={}));const dO=[uO.CPU,uO.GPU];function pO(t={}){return t.mode=dO.indexOf(uO.CPU),{visibleIf:t}}function _O(t={}){return t.mode=dO.indexOf(uO.CPU),t.intersectWith=oO.indexOf(rO.GEOMETRY),{visibleIf:t}}function mO(t={}){return t.mode=dO.indexOf(uO.CPU),t.intersectWith=oO.indexOf(rO.PLANE),{visibleIf:t}}function fO(t={}){return t.mode=dO.indexOf(uO.GPU),{visibleIf:t}}var gO;!function(t){t.SCENE_GRAPH=\\\\\\\"scene graph\\\\\\\",t.NODE=\\\\\\\"node\\\\\\\"}(gO||(gO={}));const vO=[gO.SCENE_GRAPH,gO.NODE];const yO=new class extends ua{constructor(){super(...arguments),this.mode=ha.INTEGER(dO.indexOf(uO.CPU),{menu:{entries:dO.map(((t,e)=>({name:t,value:e})))}}),this.mouse=ha.VECTOR2([0,0],{cook:!1}),this.overrideCamera=ha.BOOLEAN(0),this.overrideRay=ha.BOOLEAN(0,{visibleIf:{mode:dO.indexOf(uO.CPU),overrideCamera:1}}),this.camera=ha.OPERATOR_PATH(\\\\\\\"/perspective_camera1\\\\\\\",{nodeSelection:{context:ts.OBJ},dependentOnFoundNode:!1,visibleIf:{overrideCamera:1,overrideRay:0}}),this.rayOrigin=ha.VECTOR3([0,0,0],{visibleIf:{overrideCamera:1,overrideRay:1}}),this.rayDirection=ha.VECTOR3([0,0,1],{visibleIf:{overrideCamera:1,overrideRay:1}}),this.material=ha.OPERATOR_PATH(\\\\\\\"/MAT/mesh_basic_builder1\\\\\\\",{nodeSelection:{context:ts.MAT},dependentOnFoundNode:!1,callback:(t,e)=>{cO.PARAM_CALLBACK_update_material(t)},...fO()}),this.pixelValue=ha.VECTOR4([0,0,0,0],{cook:!1,...fO()}),this.hitThreshold=ha.FLOAT(.5,{cook:!1,...fO()}),this.intersectWith=ha.INTEGER(oO.indexOf(rO.GEOMETRY),{menu:{entries:oO.map(((t,e)=>({name:t,value:e})))},...pO()}),this.pointsThreshold=ha.FLOAT(1,{range:[0,100],rangeLocked:[!0,!1],...pO()}),this.planeDirection=ha.VECTOR3([0,1,0],{...mO()}),this.planeOffset=ha.FLOAT(0,{...mO()}),this.targetType=ha.INTEGER(0,{menu:{entries:vO.map(((t,e)=>({name:t,value:e})))},..._O()}),this.targetNode=ha.NODE_PATH(\\\\\\\"\\\\\\\",{nodeSelection:{context:ts.OBJ},dependentOnFoundNode:!1,callback:(t,e)=>{lO.PARAM_CALLBACK_update_target(t)},..._O({targetType:vO.indexOf(gO.NODE)})}),this.objectMask=ha.STRING(\\\\\\\"*geo1*\\\\\\\",{callback:(t,e)=>{lO.PARAM_CALLBACK_update_target(t)},..._O({targetType:vO.indexOf(gO.SCENE_GRAPH)})}),this.printFoundObjectsFromMask=ha.BUTTON(null,{callback:(t,e)=>{lO.PARAM_CALLBACK_print_resolve(t)},..._O({targetType:vO.indexOf(gO.SCENE_GRAPH)})}),this.traverseChildren=ha.BOOLEAN(!0,{callback:(t,e)=>{lO.PARAM_CALLBACK_update_target(t)},..._O(),separatorAfter:!0}),this.tpositionTarget=ha.BOOLEAN(0,{cook:!1,...pO()}),this.position=ha.VECTOR3([0,0,0],{cook:!1,...pO({tpositionTarget:0})}),this.positionTarget=ha.PARAM_PATH(\\\\\\\"\\\\\\\",{cook:!1,...pO({tpositionTarget:1}),paramSelection:Cr.VECTOR3,computeOnDirty:!0}),this.tvelocity=ha.BOOLEAN(0,{cook:!1}),this.tvelocityTarget=ha.BOOLEAN(0,{cook:!1,...pO({tvelocity:1})}),this.velocity=ha.VECTOR3([0,0,0],{cook:!1,...pO({tvelocity:1,tvelocityTarget:0})}),this.velocityTarget=ha.PARAM_PATH(\\\\\\\"\\\\\\\",{cook:!1,...pO({tvelocity:1,tvelocityTarget:1}),paramSelection:Cr.VECTOR3,computeOnDirty:!0}),this.geoAttribute=ha.BOOLEAN(0,_O()),this.geoAttributeName=ha.STRING(\\\\\\\"id\\\\\\\",{cook:!1,..._O({geoAttribute:1})}),this.geoAttributeType=ha.INTEGER(ks.indexOf(zs.NUMERIC),{menu:{entries:Us},..._O({geoAttribute:1})}),this.geoAttributeValue1=ha.FLOAT(0,{cook:!1,..._O({geoAttribute:1,geoAttributeType:ks.indexOf(zs.NUMERIC)})}),this.geoAttributeValues=ha.STRING(\\\\\\\"\\\\\\\",{..._O({geoAttribute:1,geoAttributeType:ks.indexOf(zs.STRING)})})}};class xO extends Va{constructor(){super(...arguments),this.paramsConfig=yO,this.cpuController=new lO(this),this.gpuController=new cO(this),this._last_event_processed_at=-1}static type(){return\\\\\\\"raycast\\\\\\\"}initializeNode(){this.io.inputs.setNamedInputConnectionPoints([new ta(xO.INPUT_TRIGGER,Qo.BASE,this._process_trigger_event_throttled.bind(this)),new ta(xO.INPUT_MOUSE,Qo.MOUSE,this._process_mouse_event.bind(this)),new ta(xO.INPUT_UPDATE_OBJECTS,Qo.BASE,this._process_trigger_update_objects.bind(this)),new ta(xO.INPUT_TRIGGER_VEL_RESET,Qo.BASE,this._process_trigger_vel_reset.bind(this))]),this.io.outputs.setNamedOutputConnectionPoints([new ta(xO.OUTPUT_HIT,Qo.BASE),new ta(xO.OUTPUT_MISS,Qo.BASE)])}trigger_hit(t){this.dispatchEventToOutput(xO.OUTPUT_HIT,t)}trigger_miss(t){this.dispatchEventToOutput(xO.OUTPUT_MISS,t)}_process_mouse_event(t){this.pv.mode==dO.indexOf(uO.CPU)?this.cpuController.updateMouse(t):this.gpuController.updateMouse(t)}_process_trigger_event_throttled(t){const e=this._last_event_processed_at,n=li.performance.performanceManager().now();this._last_event_processed_at=n;const i=n-e;i<hO?setTimeout((()=>{this._process_trigger_event(t)}),hO-i):this._process_trigger_event(t)}_process_trigger_event(t){this.pv.mode==dO.indexOf(uO.CPU)?this.cpuController.processEvent(t):this.gpuController.processEvent(t)}_process_trigger_update_objects(t){this.pv.mode==dO.indexOf(uO.CPU)&&this.cpuController.update_target()}_process_trigger_vel_reset(t){this.pv.mode==dO.indexOf(uO.CPU)&&this.cpuController.velocity_controller.reset()}}var bO;xO.INPUT_TRIGGER=\\\\\\\"trigger\\\\\\\",xO.INPUT_MOUSE=\\\\\\\"mouse\\\\\\\",xO.INPUT_UPDATE_OBJECTS=\\\\\\\"updateObjects\\\\\\\",xO.INPUT_TRIGGER_VEL_RESET=\\\\\\\"triggerVelReset\\\\\\\",xO.OUTPUT_HIT=\\\\\\\"hit\\\\\\\",xO.OUTPUT_MISS=\\\\\\\"miss\\\\\\\",function(t){t.SET=\\\\\\\"set\\\\\\\",t.TOGGLE=\\\\\\\"toggle\\\\\\\"}(bO||(bO={}));const wO=[bO.SET,bO.TOGGLE];const TO=new class extends ua{constructor(){super(...arguments),this.mask=ha.STRING(\\\\\\\"/geo*\\\\\\\",{separatorAfter:!0}),this.tdisplay=ha.BOOLEAN(0),this.displayMode=ha.INTEGER(wO.indexOf(bO.SET),{visibleIf:{tdisplay:1},menu:{entries:wO.map(((t,e)=>({name:t,value:e})))}}),this.display=ha.BOOLEAN(0,{visibleIf:{tdisplay:1,displayMode:wO.indexOf(bO.SET)},separatorAfter:!0}),this.tbypass=ha.BOOLEAN(0),this.bypassMode=ha.INTEGER(wO.indexOf(bO.SET),{visibleIf:{tbypass:1},menu:{entries:wO.map(((t,e)=>({name:t,value:e})))}}),this.bypass=ha.BOOLEAN(0,{visibleIf:{tbypass:1,displayMode:wO.indexOf(bO.SET)}}),this.execute=ha.BUTTON(null,{callback:t=>{AO.PARAM_CALLBACK_execute(t)}})}};class AO extends Va{constructor(){super(...arguments),this.paramsConfig=TO}static type(){return\\\\\\\"setFlag\\\\\\\"}initializeNode(){this.io.inputs.setNamedInputConnectionPoints([new ta(\\\\\\\"trigger\\\\\\\",Qo.BASE)])}async processEvent(t){let e=this.pv.mask;if(t.value){const n=t.value.node;if(n){const t=n.parent();t&&(e=`${t.path()}/${e}`)}}const n=this.scene().nodesController.nodesFromMask(e);for(let t of n)this._update_node_flags(t)}_update_node_flags(t){this._update_node_display_flag(t),this._update_node_bypass_flag(t)}_update_node_display_flag(t){var e;if(!this.pv.tdisplay)return;if(!(null===(e=t.flags)||void 0===e?void 0:e.hasDisplay()))return;const n=t.flags.display;if(!n)return;const i=wO[this.pv.displayMode];switch(i){case bO.SET:return void n.set(this.pv.display);case bO.TOGGLE:return void n.set(!n.active())}os.unreachable(i)}_update_node_bypass_flag(t){var e;if(!this.pv.tbypass)return;if(!(null===(e=t.flags)||void 0===e?void 0:e.hasBypass()))return;const n=t.flags.bypass;if(!n)return;const i=wO[this.pv.bypassMode];switch(i){case bO.SET:return void n.set(this.pv.bypass);case bO.TOGGLE:return void n.set(!n.active())}os.unreachable(i)}static PARAM_CALLBACK_execute(t){t.processEvent({})}}var MO;!function(t){t.BOOLEAN=\\\\\\\"boolean\\\\\\\",t.BUTTON=\\\\\\\"button\\\\\\\",t.NUMBER=\\\\\\\"number\\\\\\\",t.VECTOR2=\\\\\\\"vector2\\\\\\\",t.VECTOR3=\\\\\\\"vector3\\\\\\\",t.VECTOR4=\\\\\\\"vector4\\\\\\\",t.STRING=\\\\\\\"string\\\\\\\"}(MO||(MO={}));const EO=[MO.BOOLEAN,MO.BUTTON,MO.NUMBER,MO.VECTOR2,MO.VECTOR3,MO.VECTOR4,MO.STRING],SO=EO.indexOf(MO.BOOLEAN),CO=EO.indexOf(MO.NUMBER),NO=EO.indexOf(MO.VECTOR2),LO=EO.indexOf(MO.VECTOR3),OO=EO.indexOf(MO.VECTOR4),PO=EO.indexOf(MO.STRING),RO=\\\\\\\"output\\\\\\\";const IO=new class extends ua{constructor(){super(...arguments),this.param=ha.PARAM_PATH(\\\\\\\"\\\\\\\",{paramSelection:!0,computeOnDirty:!0}),this.type=ha.INTEGER(CO,{menu:{entries:EO.map(((t,e)=>({name:t,value:e})))}}),this.toggle=ha.BOOLEAN(0,{visibleIf:{type:SO}}),this.boolean=ha.BOOLEAN(0,{visibleIf:{type:SO,toggle:0}}),this.number=ha.FLOAT(0,{visibleIf:{type:CO}}),this.vector2=ha.VECTOR2([0,0],{visibleIf:{type:NO}}),this.vector3=ha.VECTOR3([0,0,0],{visibleIf:{type:LO}}),this.vector4=ha.VECTOR4([0,0,0,0],{visibleIf:{type:OO}}),this.increment=ha.BOOLEAN(0,{visibleIf:[{type:CO},{type:NO},{type:LO},{type:OO}]}),this.string=ha.STRING(\\\\\\\"\\\\\\\",{visibleIf:{type:PO}}),this.execute=ha.BUTTON(null,{callback:t=>{FO.PARAM_CALLBACK_execute(t)}})}};class FO extends Va{constructor(){super(...arguments),this.paramsConfig=IO,this._tmp_vector2=new d.a,this._tmp_vector3=new p.a,this._tmp_vector4=new _.a,this._tmp_array2=[0,0],this._tmp_array3=[0,0,0],this._tmp_array4=[0,0,0,0]}static type(){return\\\\\\\"setParam\\\\\\\"}initializeNode(){this.io.inputs.setNamedInputConnectionPoints([new ta(\\\\\\\"trigger\\\\\\\",Qo.BASE)]),this.io.outputs.setNamedOutputConnectionPoints([new ta(RO,Qo.BASE)]),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.param])}))}))}async processEvent(t){this.p.param.isDirty()&&await this.p.param.compute();const e=this.p.param.value.param();if(e){const t=await this._new_param_value(e);null!=t&&e.set(t)}else this.states.error.set(\\\\\\\"target param not found\\\\\\\");this.dispatchEventToOutput(RO,t)}async _new_param_value(t){const e=EO[this.pv.type];switch(e){case MO.BOOLEAN:return await this._compute_params_if_dirty([this.p.toggle]),this.pv.toggle?t.value?0:1:this.pv.boolean?1:0;case MO.BUTTON:return t.options.executeCallback();case MO.NUMBER:return await this._compute_params_if_dirty([this.p.increment,this.p.number]),this.pv.increment?t.type()==Cr.FLOAT?t.value+this.pv.number:t.value:this.pv.number;case MO.VECTOR2:return await this._compute_params_if_dirty([this.p.increment,this.p.vector2]),this.pv.increment?t.type()==Cr.VECTOR2?(this._tmp_vector2.copy(t.value),this._tmp_vector2.add(this.pv.vector2),this._tmp_vector2.toArray(this._tmp_array2)):t.value.toArray(this._tmp_array2):this.pv.vector2.toArray(this._tmp_array2),this._tmp_array2;case MO.VECTOR3:return await this._compute_params_if_dirty([this.p.increment,this.p.vector3]),this.pv.increment?t.type()==Cr.VECTOR3?(this._tmp_vector3.copy(t.value),this._tmp_vector3.add(this.pv.vector3),this._tmp_vector3.toArray(this._tmp_array3)):t.value.toArray(this._tmp_array3):this.pv.vector3.toArray(this._tmp_array3),this._tmp_array3;case MO.VECTOR4:return await this._compute_params_if_dirty([this.p.increment,this.p.vector4]),this.pv.increment?t.type()==Cr.VECTOR4?(this._tmp_vector4.copy(t.value),this._tmp_vector4.add(this.pv.vector4),this._tmp_vector4.toArray(this._tmp_array4)):t.value.toArray(this._tmp_array4):this.pv.vector4.toArray(this._tmp_array4),this._tmp_array4;case MO.STRING:return await this._compute_params_if_dirty([this.p.string]),this.pv.string}os.unreachable(e)}static PARAM_CALLBACK_execute(t){t.processEvent({})}async _compute_params_if_dirty(t){const e=[];for(let n of t)n.isDirty()&&e.push(n);const n=[];for(let t of e)n.push(t.compute());return await Promise.all(n)}}const DO=new class extends ua{constructor(){super(...arguments),this.outputsCount=ha.INTEGER(5,{range:[1,10],rangeLocked:[!0,!1]})}};class BO extends Va{constructor(){super(...arguments),this.paramsConfig=DO}static type(){return\\\\\\\"sequence\\\\\\\"}initializeNode(){this.io.connection_points.set_input_name_function((()=>\\\\\\\"trigger\\\\\\\")),this.io.connection_points.set_expected_input_types_function((()=>[Qo.BASE])),this.io.connection_points.set_expected_output_types_function(this._expected_output_types.bind(this)),this.io.connection_points.set_output_name_function(this._output_name.bind(this))}_expected_output_types(){const t=new Array(this.pv.outputsCount);return t.fill(Qo.BASE),t}_output_name(t){return`out${t}`}processEvent(t){const e=this.pv.outputsCount;for(let n=0;n<e;n++){const e=this.io.outputs.namedOutputConnectionPoints()[n];this.dispatchEventToOutput(e.name(),t)}}}const zO=\\\\\\\"tick\\\\\\\";const kO=new class extends ua{constructor(){super(...arguments),this.period=ha.INTEGER(1e3),this.count=ha.INTEGER(-1)}};class UO extends Va{constructor(){super(...arguments),this.paramsConfig=kO,this._timer_active=!1,this._current_count=0}static type(){return\\\\\\\"timer\\\\\\\"}initializeNode(){this.io.inputs.setNamedInputConnectionPoints([new ta(\\\\\\\"start\\\\\\\",Qo.BASE,this._start_timer.bind(this)),new ta(\\\\\\\"stop\\\\\\\",Qo.BASE,this._stop_timer.bind(this))]),this.io.outputs.setNamedOutputConnectionPoints([new ta(zO,Qo.BASE)])}_start_timer(t){this._timer_active||(this._timer_active=!0,this._current_count=0),this._run_timer(t)}_stop_timer(){this._timer_active=!1}_run_timer(t){setTimeout((()=>{this._timer_active&&(this.pv.count<=0||this._current_count<this.pv.count?(this.dispatchEventToOutput(zO,t),this._current_count+=1,this._run_timer(t)):this._stop_timer())}),this.pv.period)}}const GO=new class extends ua{constructor(){super(...arguments),this.className=ha.STRING(\\\\\\\"active\\\\\\\")}};class VO extends Va{constructor(){super(...arguments),this.paramsConfig=GO}static type(){return\\\\\\\"viewer\\\\\\\"}initializeNode(){this.io.inputs.setNamedInputConnectionPoints([new ta(\\\\\\\"setCss\\\\\\\",Qo.BASE,this._process_trigger_setClass.bind(this)),new ta(\\\\\\\"unSetCss\\\\\\\",Qo.BASE,this._process_trigger_unsetClass.bind(this)),new ta(\\\\\\\"createControls\\\\\\\",Qo.BASE,this._process_trigger_createControls.bind(this)),new ta(\\\\\\\"disposeControls\\\\\\\",Qo.BASE,this._process_trigger_disposeControls.bind(this))])}_process_trigger_setClass(t){var e;const n=null===(e=t.viewer)||void 0===e?void 0:e.canvas();n&&n.classList.add(this.pv.className)}_process_trigger_unsetClass(t){var e;const n=null===(e=t.viewer)||void 0===e?void 0:e.canvas();n&&n.classList.remove(this.pv.className)}_process_trigger_createControls(t){this.scene().viewersRegister.traverseViewers((t=>{var e;null===(e=t.controlsController)||void 0===e||e.create_controls()}))}_process_trigger_disposeControls(t){this.scene().viewersRegister.traverseViewers((t=>{var e;null===(e=t.controlsController)||void 0===e||e.dispose_controls()}))}}class HO extends aa{static context(){return ts.EVENT}cook(){this.cookController.endCook()}}class jO extends HO{}class WO extends jO{constructor(){super(...arguments),this._children_controller_context=ts.ANIM}static type(){return es.ANIM}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class qO extends jO{constructor(){super(...arguments),this._children_controller_context=ts.COP}static type(){return es.COP}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class XO extends jO{constructor(){super(...arguments),this._children_controller_context=ts.EVENT}static type(){return es.EVENT}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class YO extends jO{constructor(){super(...arguments),this._children_controller_context=ts.MAT}static type(){return es.MAT}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class $O extends HO{constructor(){super(...arguments),this.paramsConfig=new ef,this.effectsComposerController=new nf(this),this.displayNodeController=new Fm(this,this.effectsComposerController.displayNodeControllerCallbacks()),this._children_controller_context=ts.POST}static type(){return es.POST}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class JO extends jO{constructor(){super(...arguments),this._children_controller_context=ts.ROP}static type(){return es.ROP}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}const ZO=\\\\\\\"int\\\\\\\";const KO=new class extends ua{constructor(){super(...arguments),this.float=ha.FLOAT(0)}};class QO extends gf{constructor(){super(...arguments),this.paramsConfig=KO}static type(){return\\\\\\\"floatToInt\\\\\\\"}initializeNode(){this.io.outputs.setNamedOutputConnectionPoints([new qo(ZO,Uo.INT)])}setLines(t){const e=this.variableForInputParam(this.p.float),n=`int ${this.glVarName(ZO)} = int(${mf.float(e)})`;t.addBodyLines(this,[n])}}const tP=\\\\\\\"float\\\\\\\";const eP=new class extends ua{constructor(){super(...arguments),this.int=ha.INTEGER(0)}};class nP extends gf{constructor(){super(...arguments),this.paramsConfig=eP}static type(){return\\\\\\\"intToFloat\\\\\\\"}initializeNode(){this.io.outputs.setNamedOutputConnectionPoints([new qo(tP,Uo.FLOAT)])}setLines(t){const e=this.variableForInputParam(this.p.int),n=`float ${this.glVarName(tP)} = float(${mf.integer(e)})`;t.addBodyLines(this,[n])}}const iP=\\\\\\\"bool\\\\\\\";const sP=new class extends ua{constructor(){super(...arguments),this.int=ha.INTEGER(0)}};class rP extends gf{constructor(){super(...arguments),this.paramsConfig=sP}static type(){return\\\\\\\"intToBool\\\\\\\"}initializeNode(){this.io.outputs.setNamedOutputConnectionPoints([new qo(iP,Uo.BOOL)])}setLines(t){const e=this.variableForInputParam(this.p.int),n=`bool ${this.glVarName(iP)} = bool(${mf.integer(e)})`;t.addBodyLines(this,[n])}}const oP=new class extends ua{constructor(){super(...arguments),this.bool=ha.BOOLEAN(0)}};class aP extends gf{constructor(){super(...arguments),this.paramsConfig=oP}static type(){return\\\\\\\"boolToInt\\\\\\\"}initializeNode(){this.io.outputs.setNamedOutputConnectionPoints([new qo(ZO,Uo.INT)])}setLines(t){const e=this.variableForInputParam(this.p.bool),n=`int ${this.glVarName(ZO)} = int(${mf.bool(e)})`;t.addBodyLines(this,[n])}}const lP=new class extends ua{constructor(){super(...arguments),this.x=ha.FLOAT(0),this.y=ha.FLOAT(0)}};class cP extends gf{constructor(){super(...arguments),this.paramsConfig=lP}static type(){return\\\\\\\"floatToVec2\\\\\\\"}initializeNode(){this.io.outputs.setNamedOutputConnectionPoints([new qo(cP.OUTPUT_NAME,Uo.VEC2)])}setLines(t){const e=this.variableForInputParam(this.p.x),n=this.variableForInputParam(this.p.y),i=`vec2 ${this.glVarName(cP.OUTPUT_NAME)} = ${mf.float2(e,n)}`;t.addBodyLines(this,[i])}}cP.OUTPUT_NAME=\\\\\\\"vec2\\\\\\\";const hP=new class extends ua{constructor(){super(...arguments),this.x=ha.FLOAT(0),this.y=ha.FLOAT(0),this.z=ha.FLOAT(0)}};class uP extends gf{constructor(){super(...arguments),this.paramsConfig=hP}static type(){return\\\\\\\"floatToVec3\\\\\\\"}initializeNode(){this.io.outputs.setNamedOutputConnectionPoints([new qo(uP.OUTPUT_NAME,Uo.VEC3)])}setLines(t){const e=this.variableForInputParam(this.p.x),n=this.variableForInputParam(this.p.y),i=this.variableForInputParam(this.p.z),s=`vec3 ${this.glVarName(uP.OUTPUT_NAME)} = ${mf.float3(e,n,i)}`;t.addBodyLines(this,[s])}}uP.OUTPUT_NAME=\\\\\\\"vec3\\\\\\\";const dP=new class extends ua{constructor(){super(...arguments),this.x=ha.FLOAT(0),this.y=ha.FLOAT(0),this.z=ha.FLOAT(0),this.w=ha.FLOAT(0)}};class pP extends gf{constructor(){super(...arguments),this.paramsConfig=dP}static type(){return\\\\\\\"floatToVec4\\\\\\\"}initializeNode(){this.io.outputs.setNamedOutputConnectionPoints([new qo(pP.OUTPUT_NAME,Uo.VEC4)])}setLines(t){const e=this.variableForInputParam(this.p.x),n=this.variableForInputParam(this.p.y),i=this.variableForInputParam(this.p.z),s=this.variableForInputParam(this.p.w),r=`vec4 ${this.glVarName(pP.OUTPUT_NAME)} = ${mf.float4(e,n,i,s)}`;t.addBodyLines(this,[r])}}pP.OUTPUT_NAME=\\\\\\\"vec4\\\\\\\";const _P=new class extends ua{};class mP extends gf{constructor(){super(...arguments),this.paramsConfig=_P}}function fP(t,e){const n=e.components,i=e.param_type;return class extends mP{static type(){return t}initializeNode(){this.io.outputs.setNamedOutputConnectionPoints(n.map((t=>new qo(t,Uo.FLOAT))))}createParams(){this.addParam(i,\\\\\\\"vec\\\\\\\",n.map((t=>0)))}setLines(t){const e=[],n=this.variableForInput(\\\\\\\"vec\\\\\\\");this.io.outputs.used_output_names().forEach((t=>{const i=this.glVarName(t);e.push(`float ${i} = ${n}.${t}`)})),t.addBodyLines(this,e)}}}const gP=[\\\\\\\"x\\\\\\\",\\\\\\\"y\\\\\\\"],vP=[\\\\\\\"x\\\\\\\",\\\\\\\"y\\\\\\\",\\\\\\\"z\\\\\\\"],yP=[\\\\\\\"x\\\\\\\",\\\\\\\"y\\\\\\\",\\\\\\\"z\\\\\\\",\\\\\\\"w\\\\\\\"];class xP extends(fP(\\\\\\\"vec2ToFloat\\\\\\\",{components:[\\\\\\\"x\\\\\\\",\\\\\\\"y\\\\\\\"],param_type:Cr.VECTOR2})){}class bP extends(fP(\\\\\\\"vec3ToFloat\\\\\\\",{components:[\\\\\\\"x\\\\\\\",\\\\\\\"y\\\\\\\",\\\\\\\"z\\\\\\\"],param_type:Cr.VECTOR3})){}class wP extends(fP(\\\\\\\"vec4ToFloat\\\\\\\",{components:yP,param_type:Cr.VECTOR4})){}class TP extends mP{static type(){return\\\\\\\"vec4ToVec3\\\\\\\"}initializeNode(){this.io.outputs.setNamedOutputConnectionPoints([new qo(TP.OUTPUT_NAME_VEC3,Uo.VEC3),new qo(TP.OUTPUT_NAME_W,Uo.FLOAT)])}createParams(){this.addParam(Cr.VECTOR4,TP.INPUT_NAME_VEC4,yP.map((t=>0)))}setLines(t){const e=[],n=TP.INPUT_NAME_VEC4,i=TP.OUTPUT_NAME_VEC3,s=TP.OUTPUT_NAME_W,r=this.variableForInput(n),o=this.io.outputs.used_output_names();if(o.indexOf(i)>=0){const t=this.glVarName(i);e.push(`vec3 ${t} = ${r}.xyz`)}if(o.indexOf(s)>=0){const t=this.glVarName(s);e.push(`float ${t} = ${r}.w`)}t.addBodyLines(this,e)}}TP.INPUT_NAME_VEC4=\\\\\\\"vec4\\\\\\\",TP.OUTPUT_NAME_VEC3=\\\\\\\"vec3\\\\\\\",TP.OUTPUT_NAME_W=\\\\\\\"w\\\\\\\";class AP extends mP{static type(){return\\\\\\\"vec3ToVec2\\\\\\\"}initializeNode(){this.io.outputs.setNamedOutputConnectionPoints([new qo(AP.OUTPUT_NAME_VEC2,Uo.VEC2),new qo(AP.OUTPUT_NAME_Z,Uo.FLOAT)])}createParams(){this.addParam(Cr.VECTOR3,AP.INPUT_NAME_VEC3,vP.map((t=>0)))}setLines(t){const e=[],n=AP.INPUT_NAME_VEC3,i=AP.OUTPUT_NAME_VEC2,s=AP.OUTPUT_NAME_Z,r=this.variableForInput(n),o=this.io.outputs.used_output_names();if(o.indexOf(i)>=0){const t=this.glVarName(i);e.push(`vec2 ${t} = ${r}.xy`)}if(o.indexOf(s)>=0){const t=this.glVarName(s);e.push(`float ${t} = ${r}.z`)}t.addBodyLines(this,e)}}AP.INPUT_NAME_VEC3=\\\\\\\"vec3\\\\\\\",AP.OUTPUT_NAME_VEC2=\\\\\\\"vec2\\\\\\\",AP.OUTPUT_NAME_Z=\\\\\\\"z\\\\\\\";class MP extends mP{static type(){return\\\\\\\"vec2ToVec3\\\\\\\"}initializeNode(){this.io.outputs.setNamedOutputConnectionPoints([new qo(MP.OUTPUT_NAME_VEC3,Uo.VEC3)])}createParams(){this.addParam(Cr.VECTOR2,MP.INPUT_NAME_VEC2,gP.map((t=>0))),this.addParam(Cr.FLOAT,MP.INPUT_NAME_Z,0)}setLines(t){const e=[],n=MP.INPUT_NAME_VEC2,i=MP.INPUT_NAME_Z,s=MP.OUTPUT_NAME_VEC3,r=this.variableForInput(n),o=this.variableForInput(i),a=this.glVarName(s);e.push(`vec3 ${a} = vec3(${r}.xy, ${o})`),t.addBodyLines(this,e)}}MP.INPUT_NAME_VEC2=\\\\\\\"vec3\\\\\\\",MP.INPUT_NAME_Z=\\\\\\\"z\\\\\\\",MP.OUTPUT_NAME_VEC3=\\\\\\\"vec3\\\\\\\";class EP extends mP{static type(){return\\\\\\\"vec3ToVec4\\\\\\\"}initializeNode(){this.io.outputs.setNamedOutputConnectionPoints([new qo(EP.OUTPUT_NAME_VEC4,Uo.VEC4)])}createParams(){this.addParam(Cr.VECTOR3,EP.INPUT_NAME_VEC3,vP.map((t=>0))),this.addParam(Cr.FLOAT,EP.INPUT_NAME_W,0)}setLines(t){const e=[],n=EP.INPUT_NAME_VEC3,i=EP.INPUT_NAME_W,s=EP.OUTPUT_NAME_VEC4,r=this.variableForInput(n),o=this.variableForInput(i),a=this.glVarName(s);e.push(`vec4 ${a} = vec4(${r}.xyz, ${o})`),t.addBodyLines(this,e)}}EP.INPUT_NAME_VEC3=\\\\\\\"vec3\\\\\\\",EP.INPUT_NAME_W=\\\\\\\"w\\\\\\\",EP.OUTPUT_NAME_VEC4=\\\\\\\"vec4\\\\\\\";const SP=new class extends ua{};class CP extends gf{constructor(){super(...arguments),this.paramsConfig=SP}gl_method_name(){return\\\\\\\"\\\\\\\"}gl_function_definitions(){return[]}initializeNode(){super.initializeNode(),this.io.connection_points.set_expected_input_types_function(this._expected_input_types.bind(this)),this.io.connection_points.set_expected_output_types_function(this._expected_output_types.bind(this)),this.io.connection_points.set_input_name_function(this._gl_input_name.bind(this))}_expected_input_types(){const t=this.io.connection_points.first_input_connection_type()||Uo.FLOAT;if(this.io.connections.firstInputConnection()){const e=this.io.connections.inputConnections();if(e){let n=Math.max(f.compact(e).length+1,2);return f.range(n).map((e=>t))}return[]}return f.range(2).map((e=>t))}_expected_output_types(){return[this._expected_input_types()[0]]}_gl_input_name(t){return\\\\\\\"in\\\\\\\"}setLines(t){const e=this.io.outputs.namedOutputConnectionPoints()[0].type(),n=this.io.inputs.namedInputConnectionPoints().map(((t,e)=>{const n=t.name();return mf.any(this.variableForInput(n))})).join(\\\\\\\", \\\\\\\"),i=`${e} ${this.glVarName(this.io.connection_points.output_name(0))} = ${this.gl_method_name()}(${n})`;t.addBodyLines(this,[i]),t.addDefinitions(this,this.gl_function_definitions())}}class NP extends CP{_gl_input_name(t){return\\\\\\\"in\\\\\\\"}_expected_input_types(){return[this.io.connection_points.first_input_connection_type()||Uo.FLOAT]}}class LP extends CP{_expected_input_types(){const t=this.io.connection_points.first_input_connection_type()||Uo.FLOAT;return[t,t]}}class OP extends CP{_expected_input_types(){const t=this.io.connection_points.first_input_connection_type()||Uo.FLOAT;return[t,t,t]}}class PP extends CP{_expected_input_types(){const t=this.io.connection_points.first_input_connection_type()||Uo.FLOAT;return[t,t,t,t]}}class RP extends CP{_expected_input_types(){const t=this.io.connection_points.first_input_connection_type()||Uo.FLOAT;return[t,t,t,t,t]}}function IP(t,e={}){const n=e.method||t,i=e.out||\\\\\\\"val\\\\\\\",s=e.in||\\\\\\\"in\\\\\\\";return class extends NP{static type(){return t}initializeNode(){super.initializeNode(),this.io.connection_points.set_input_name_function(this._gl_input_name.bind(this)),this.io.connection_points.set_output_name_function(this._gl_output_name.bind(this))}_gl_input_name(t){return s}_gl_output_name(t){return i}gl_method_name(){return n}}}class FP extends(IP(\\\\\\\"abs\\\\\\\")){}class DP extends(IP(\\\\\\\"acos\\\\\\\",{out:\\\\\\\"radians\\\\\\\"})){}class BP extends(IP(\\\\\\\"asin\\\\\\\",{out:\\\\\\\"radians\\\\\\\"})){}class zP extends(IP(\\\\\\\"atan\\\\\\\",{out:\\\\\\\"radians\\\\\\\"})){}class kP extends(IP(\\\\\\\"ceil\\\\\\\")){}class UP extends(IP(\\\\\\\"cos\\\\\\\",{in:\\\\\\\"radians\\\\\\\"})){}class GP extends(IP(\\\\\\\"degrees\\\\\\\",{in:\\\\\\\"radians\\\\\\\",out:\\\\\\\"degrees\\\\\\\"})){}class VP extends(IP(\\\\\\\"exp\\\\\\\")){}class HP extends(IP(\\\\\\\"exp2\\\\\\\")){}class jP extends(IP(\\\\\\\"floor\\\\\\\")){}class WP extends(IP(\\\\\\\"fract\\\\\\\")){}class qP extends(IP(\\\\\\\"inverseSqrt\\\\\\\",{method:\\\\\\\"inversesqrt\\\\\\\"})){}class XP extends(IP(\\\\\\\"log\\\\\\\")){}class YP extends(IP(\\\\\\\"log2\\\\\\\")){}class $P extends(IP(\\\\\\\"normalize\\\\\\\",{out:\\\\\\\"normalized\\\\\\\"})){}class JP extends(IP(\\\\\\\"radians\\\\\\\",{in:\\\\\\\"degrees\\\\\\\",out:\\\\\\\"radians\\\\\\\"})){}class ZP extends(IP(\\\\\\\"sign\\\\\\\")){}class KP extends(IP(\\\\\\\"sin\\\\\\\",{in:\\\\\\\"radians\\\\\\\"})){}class QP extends(IP(\\\\\\\"sqrt\\\\\\\")){}class tR extends(IP(\\\\\\\"tan\\\\\\\")){}function eR(t,e={}){const n=e.method||t,i=e.out||\\\\\\\"val\\\\\\\",s=e.in||[\\\\\\\"in0\\\\\\\",\\\\\\\"in1\\\\\\\"],r=e.default_in_type,o=e.allowed_in_types,a=e.out_type,l=e.functions||[];return class extends LP{static type(){return t}initializeNode(){super.initializeNode(),this.io.connection_points.set_input_name_function(this._gl_input_name.bind(this)),this.io.connection_points.set_output_name_function(this._gl_output_name.bind(this)),this.io.connection_points.set_expected_input_types_function(this._expected_input_types.bind(this)),a&&this.io.connection_points.set_expected_output_types_function((()=>[a]))}_gl_input_name(t){return s[t]}_gl_output_name(t){return i}gl_method_name(){return n}gl_function_definitions(){return l?l.map((t=>new Cf(this,t))):[]}_expected_input_types(){let t=this.io.connection_points.first_input_connection_type();if(t&&o&&!o.includes(t)){const e=this.io.inputs.namedInputConnectionPoints()[0];t=e?e.type():r}const e=t||r||Uo.FLOAT;return[e,e]}}}class nR extends(eR(\\\\\\\"distance\\\\\\\",{in:[\\\\\\\"p0\\\\\\\",\\\\\\\"p1\\\\\\\"],default_in_type:Uo.VEC3,allowed_in_types:[Uo.VEC2,Uo.VEC3,Uo.VEC4],out_type:Uo.FLOAT})){}class iR extends(eR(\\\\\\\"dot\\\\\\\",{in:[\\\\\\\"vec0\\\\\\\",\\\\\\\"vec1\\\\\\\"],default_in_type:Uo.VEC3,allowed_in_types:[Uo.VEC2,Uo.VEC3,Uo.VEC4],out_type:Uo.FLOAT})){}class sR extends(eR(\\\\\\\"max\\\\\\\")){}class rR extends(eR(\\\\\\\"min\\\\\\\")){}class oR extends(eR(\\\\\\\"mod\\\\\\\")){paramDefaultValue(t){return{in1:1}[t]}_expected_input_types(){const t=Uo.FLOAT;return[t,t]}}class aR extends(eR(\\\\\\\"pow\\\\\\\",{in:[\\\\\\\"x\\\\\\\",\\\\\\\"y\\\\\\\"]})){}class lR extends(eR(\\\\\\\"reflect\\\\\\\",{in:[\\\\\\\"I\\\\\\\",\\\\\\\"N\\\\\\\"],default_in_type:Uo.VEC3})){}class cR extends(eR(\\\\\\\"step\\\\\\\",{in:[\\\\\\\"edge\\\\\\\",\\\\\\\"x\\\\\\\"]})){}function hR(t,e={}){const n=e.method||t,i=e.out||\\\\\\\"val\\\\\\\",s=e.in||[\\\\\\\"in0\\\\\\\",\\\\\\\"in1\\\\\\\",\\\\\\\"in2\\\\\\\"],r=e.default||{},o=e.out_type||Uo.FLOAT,a=e.functions||[];return class extends OP{static type(){return t}initializeNode(){super.initializeNode(),this.io.connection_points.set_input_name_function(this._gl_input_name.bind(this)),this.io.connection_points.set_output_name_function(this._gl_output_name.bind(this)),this.io.connection_points.set_expected_output_types_function(this._expected_output_types.bind(this))}_gl_input_name(t){return s[t]}_gl_output_name(t){return i}gl_method_name(){return n}_expected_output_types(){return[o]}paramDefaultValue(t){return r[t]}gl_function_definitions(){return a.map((t=>new Cf(this,t)))}}}class uR extends(hR(\\\\\\\"clamp\\\\\\\",{in:[\\\\\\\"value\\\\\\\",\\\\\\\"min\\\\\\\",\\\\\\\"max\\\\\\\"],default:{max:1}})){_expected_output_types(){return[this._expected_input_types()[0]]}}class dR extends(hR(\\\\\\\"faceForward\\\\\\\",{in:[\\\\\\\"N\\\\\\\",\\\\\\\"I\\\\\\\",\\\\\\\"Nref\\\\\\\"]})){}class pR extends(hR(\\\\\\\"smoothstep\\\\\\\",{in:[\\\\\\\"edge0\\\\\\\",\\\\\\\"edge1\\\\\\\",\\\\\\\"x\\\\\\\"],default:{edge1:1}})){_expected_output_types(){return[this._expected_input_types()[0]]}}function _R(t,e){const n=e.in_prefix||t,i=e.out||\\\\\\\"val\\\\\\\",s=e.operation,r=e.allowed_in_types;return class extends LP{static type(){return t}initializeNode(){super.initializeNode(),this.io.connection_points.set_input_name_function(this._gl_input_name.bind(this)),this.io.connection_points.set_output_name_function(this._gl_output_name.bind(this)),this.io.connection_points.set_expected_input_types_function(this._expected_input_types.bind(this)),this.io.connection_points.set_expected_output_types_function(this._expected_output_types.bind(this))}setLines(t){const e=this.io.outputs.namedOutputConnectionPoints()[0].type(),n=this.io.inputs.namedInputConnectionPoints().map(((t,e)=>{const n=t.name(),i=this.variableForInput(n);if(i)return mf.any(i)})).join(` ${this.gl_operation()} `),i=`${e} ${this.glVarName(this.io.connection_points.output_name(0))} = ${this.gl_method_name()}(${n})`;t.addBodyLines(this,[i])}_gl_input_name(t){return`${n}${t}`}_gl_output_name(t){return i}gl_operation(){return s}_expected_input_types(){let t=this.io.connection_points.first_input_connection_type();if(t&&r&&!r.includes(t)){const e=this.io.inputs.namedInputConnectionPoints()[0];e&&(t=e.type())}const e=t||Uo.FLOAT,n=this.io.connections.existingInputConnections(),i=n?Math.max(n.length+1,2):2,s=[];for(let t=0;t<i;t++)s.push(e);return s}_expected_output_types(){const t=this._expected_input_types();return[t[1]||t[0]||Uo.FLOAT]}}}class mR extends(_R(\\\\\\\"add\\\\\\\",{in_prefix:\\\\\\\"add\\\\\\\",out:\\\\\\\"sum\\\\\\\",operation:\\\\\\\"+\\\\\\\"})){}class fR extends(_R(\\\\\\\"divide\\\\\\\",{in_prefix:\\\\\\\"div\\\\\\\",out:\\\\\\\"divide\\\\\\\",operation:\\\\\\\"/\\\\\\\"})){paramDefaultValue(t){return 1}}class gR extends(_R(\\\\\\\"substract\\\\\\\",{in_prefix:\\\\\\\"sub\\\\\\\",out:\\\\\\\"substract\\\\\\\",operation:\\\\\\\"-\\\\\\\"})){}class vR extends(_R(\\\\\\\"mult\\\\\\\",{in_prefix:\\\\\\\"mult\\\\\\\",out:\\\\\\\"product\\\\\\\",operation:\\\\\\\"*\\\\\\\"})){static type(){return\\\\\\\"mult\\\\\\\"}paramDefaultValue(t){return 1}initializeNode(){super.initializeNode(),this.io.connection_points.set_expected_input_types_function(this._expected_input_types.bind(this)),this.io.connection_points.set_expected_output_types_function(this._expected_output_types.bind(this))}_expected_output_type(){const t=this._expected_input_types();return[t[t.length-1]]}_expected_input_types(){const t=this.io.connections.existingInputConnections();if(t){const e=t[0];if(e){const n=e.node_src.io.outputs.namedOutputConnectionPoints()[e.output_index].type(),i=Math.max(t.length+1,2),s=new Array(i);if(n==Uo.FLOAT){const e=t[1];if(e){const t=e.node_src.io.outputs.namedOutputConnectionPoints()[e.output_index].type();return t==Uo.FLOAT?s.fill(n):[n,t]}return[n,n]}return s.fill(n)}}return[Uo.FLOAT,Uo.FLOAT]}}class yR extends LP{initializeNode(){super.initializeNode(),this.io.connection_points.set_expected_input_types_function(this._expected_input_types.bind(this)),this.io.connection_points.set_expected_output_types_function(this._expected_output_types.bind(this))}_expected_input_types(){return[Uo.BOOL,Uo.BOOL]}_expected_output_types(){return[Uo.BOOL]}setLines(t){const e=this.io.inputs.namedInputConnectionPoints().map(((t,e)=>{const n=t.name();return mf.any(this.variableForInput(n))})).join(` ${this.boolean_operation()} `),n=`bool ${this.glVarName(this.io.connection_points.output_name(0))} = ${e}`;t.addBodyLines(this,[n])}}function xR(t,e){return class extends yR{static type(){return t}initializeNode(){super.initializeNode(),this.io.connection_points.set_input_name_function(this._gl_input_name.bind(this)),this.io.connection_points.set_output_name_function(this._gl_output_name.bind(this))}boolean_operation(){return e.op}_gl_output_name(e){return t}_gl_input_name(e=0){return`${t}${e}`}}}class bR extends(xR(\\\\\\\"and\\\\\\\",{op:\\\\\\\"&&\\\\\\\"})){}class wR extends(xR(\\\\\\\"or\\\\\\\",{op:\\\\\\\"||\\\\\\\"})){}var TR;!function(t){t.TIME=\\\\\\\"time\\\\\\\",t.DELTA_TIME=\\\\\\\"delta_time\\\\\\\"}(TR||(TR={}));var AR,MR;!function(t){t.POSITION=\\\\\\\"position\\\\\\\",t.VELOCITY=\\\\\\\"velocity\\\\\\\",t.MASS=\\\\\\\"mass\\\\\\\",t.FORCE=\\\\\\\"force\\\\\\\"}(AR||(AR={})),function(t){t.POSITION=\\\\\\\"position\\\\\\\",t.VELOCITY=\\\\\\\"velocity\\\\\\\"}(MR||(MR={}));const ER=[AR.POSITION,AR.VELOCITY,AR.MASS,AR.FORCE],SR=[MR.POSITION,MR.VELOCITY],CR={[AR.POSITION]:[0,0,0],[AR.VELOCITY]:[0,0,0],[AR.MASS]:1,[AR.FORCE]:[0,-9.8,0]};const NR=new class extends ua{};class LR extends gf{constructor(){super(...arguments),this.paramsConfig=NR}static type(){return\\\\\\\"acceleration\\\\\\\"}initializeNode(){super.initializeNode(),this.io.outputs.setNamedOutputConnectionPoints([new qo(MR.POSITION,Uo.VEC3),new qo(MR.VELOCITY,Uo.VEC3)]),this.io.connection_points.set_expected_input_types_function(this._expected_input_types.bind(this)),this.io.connection_points.set_expected_output_types_function(this._expected_output_types.bind(this)),this.io.connection_points.set_input_name_function(this._gl_input_name.bind(this)),this.io.connection_points.set_output_name_function(this._gl_output_name.bind(this))}_expected_input_types(){const t=this.io.connection_points.first_input_connection_type()||Uo.VEC3;return[t,t,Uo.FLOAT,t]}_expected_output_types(){const t=this._expected_input_types()[0];return[t,t]}_gl_input_name(t){return ER[t]}_gl_output_name(t){return SR[t]}paramDefaultValue(t){return CR[t]}setLines(t){const e=this.io.outputs.namedOutputConnectionPoints()[0].type(),n=new Nf(this,Uo.FLOAT,TR.DELTA_TIME),i=new Cf(this,\\\\\\\"float compute_velocity_from_acceleration(float vel, float force, float mass, float time_delta){\\\\n\\\\tfloat impulse = (force * mass) * time_delta;\\\\n\\\\treturn vel + impulse;\\\\n}\\\\nvec2 compute_velocity_from_acceleration(vec2 vel, vec2 force, float mass, float time_delta){\\\\n\\\\tvec2 impulse = (force * mass) * time_delta;\\\\n\\\\treturn vel + impulse;\\\\n}\\\\nvec3 compute_velocity_from_acceleration(vec3 vel, vec3 force, float mass, float time_delta){\\\\n\\\\tvec3 impulse = (force * mass) * time_delta;\\\\n\\\\treturn vel + impulse;\\\\n}\\\\nvec4 compute_velocity_from_acceleration(vec4 vel, vec4 force, float mass, float time_delta){\\\\n\\\\tvec4 impulse = (force * mass) * time_delta;\\\\n\\\\treturn vel + impulse;\\\\n}\\\\nfloat compute_position_from_velocity(float position, float velocity, float time_delta){\\\\n\\\\treturn position + (velocity * time_delta);\\\\n}\\\\nvec2 compute_position_from_velocity(vec2 position, vec2 velocity, float time_delta){\\\\n\\\\treturn position + (velocity * time_delta);\\\\n}\\\\nvec3 compute_position_from_velocity(vec3 position, vec3 velocity, float time_delta){\\\\n\\\\treturn position + (velocity * time_delta);\\\\n}\\\\nvec4 compute_position_from_velocity(vec4 position, vec4 velocity, float time_delta){\\\\n\\\\treturn position + (velocity * time_delta);\\\\n}\\\\\\\");t.addDefinitions(this,[n,i]);const s=mf.any(this.variableForInput(AR.POSITION)),r=mf.any(this.variableForInput(AR.VELOCITY)),o=mf.float(this.variableForInput(AR.MASS)),a=mf.any(this.variableForInput(AR.FORCE)),l=this.glVarName(MR.POSITION),c=this.glVarName(MR.VELOCITY),h=`${e} ${c} = compute_velocity_from_acceleration(${[r,a,o,TR.DELTA_TIME].join(\\\\\\\", \\\\\\\")})`,u=`${e} ${l} = compute_position_from_velocity(${[s,c,TR.DELTA_TIME].join(\\\\\\\", \\\\\\\")})`;t.addBodyLines(this,[h,u])}}var OR,PR=\\\\\\\"\\\\n\\\\n// https://github.com/mattatz/ShibuyaCrowd/blob/master/source/shaders/common/quaternion.glsl\\\\nvec4 quatMult(vec4 q1, vec4 q2)\\\\n{\\\\n\\\\treturn vec4(\\\\n\\\\tq1.w * q2.x + q1.x * q2.w + q1.z * q2.y - q1.y * q2.z,\\\\n\\\\tq1.w * q2.y + q1.y * q2.w + q1.x * q2.z - q1.z * q2.x,\\\\n\\\\tq1.w * q2.z + q1.z * q2.w + q1.y * q2.x - q1.x * q2.y,\\\\n\\\\tq1.w * q2.w - q1.x * q2.x - q1.y * q2.y - q1.z * q2.z\\\\n\\\\t);\\\\n}\\\\n// http://glmatrix.net/docs/quat.js.html#line97\\\\n//   let ax = a[0], ay = a[1], az = a[2], aw = a[3];\\\\n\\\\n//   let bx = b[0], by = b[1], bz = b[2], bw = b[3];\\\\n\\\\n//   out[0] = ax * bw + aw * bx + ay * bz - az * by;\\\\n\\\\n//   out[1] = ay * bw + aw * by + az * bx - ax * bz;\\\\n\\\\n//   out[2] = az * bw + aw * bz + ax * by - ay * bx;\\\\n\\\\n//   out[3] = aw * bw - ax * bx - ay * by - az * bz;\\\\n\\\\n//   return out\\\\n\\\\n\\\\n\\\\n// http://www.neilmendoza.com/glsl-rotation-about-an-arbitrary-axis/\\\\nmat4 rotationMatrix(vec3 axis, float angle)\\\\n{\\\\n\\\\taxis = normalize(axis);\\\\n\\\\tfloat s = sin(angle);\\\\n\\\\tfloat c = cos(angle);\\\\n\\\\tfloat oc = 1.0 - c;\\\\n\\\\n \\\\treturn mat4(oc * axis.x * axis.x + c, oc * axis.x * axis.y - axis.z * s,  oc * axis.z * axis.x + axis.y * s, 0.0, oc * axis.x * axis.y + axis.z * s,  oc * axis.y * axis.y + c, oc * axis.y * axis.z - axis.x * s,  0.0, oc * axis.z * axis.x - axis.y * s,  oc * axis.y * axis.z + axis.x * s,  oc * axis.z * axis.z + c, 0.0, 0.0, 0.0, 0.0, 1.0);\\\\n}\\\\n\\\\n// https://www.geeks3d.com/20141201/how-to-rotate-a-vertex-by-a-quaternion-in-glsl/\\\\nvec4 quatFromAxisAngle(vec3 axis, float angle)\\\\n{\\\\n\\\\tvec4 qr;\\\\n\\\\tfloat half_angle = (angle * 0.5); // * 3.14159 / 180.0;\\\\n\\\\tfloat sin_half_angle = sin(half_angle);\\\\n\\\\tqr.x = axis.x * sin_half_angle;\\\\n\\\\tqr.y = axis.y * sin_half_angle;\\\\n\\\\tqr.z = axis.z * sin_half_angle;\\\\n\\\\tqr.w = cos(half_angle);\\\\n\\\\treturn qr;\\\\n}\\\\nvec3 rotateWithAxisAngle(vec3 position, vec3 axis, float angle)\\\\n{\\\\n\\\\tvec4 q = quatFromAxisAngle(axis, angle);\\\\n\\\\tvec3 v = position.xyz;\\\\n\\\\treturn v + 2.0 * cross(q.xyz, cross(q.xyz, v) + q.w * v);\\\\n}\\\\n// vec3 applyQuaternionToVector( vec4 q, vec3 v ){\\\\n// \\\\treturn v + 2.0 * cross( q.xyz, cross( q.xyz, v ) + q.w * v );\\\\n// }\\\\nvec3 rotateWithQuat( vec3 v, vec4 q )\\\\n{\\\\n\\\\t// vec4 qv = multQuat( quat, vec4(vec, 0.0) );\\\\n\\\\t// return multQuat( qv, vec4(-quat.x, -quat.y, -quat.z, quat.w) ).xyz;\\\\n\\\\treturn v + 2.0 * cross( q.xyz, cross( q.xyz, v ) + q.w * v );\\\\n}\\\\n// https://github.com/glslify/glsl-look-at/blob/gh-pages/index.glsl\\\\n// mat3 rotation_matrix(vec3 origin, vec3 target, float roll) {\\\\n// \\\\tvec3 rr = vec3(sin(roll), cos(roll), 0.0);\\\\n// \\\\tvec3 ww = normalize(target - origin);\\\\n// \\\\tvec3 uu = normalize(cross(ww, rr));\\\\n// \\\\tvec3 vv = normalize(cross(uu, ww));\\\\n\\\\n// \\\\treturn mat3(uu, vv, ww);\\\\n// }\\\\n// mat3 rotation_matrix(vec3 target, float roll) {\\\\n// \\\\tvec3 rr = vec3(sin(roll), cos(roll), 0.0);\\\\n// \\\\tvec3 ww = normalize(target);\\\\n// \\\\tvec3 uu = normalize(cross(ww, rr));\\\\n// \\\\tvec3 vv = normalize(cross(uu, ww));\\\\n\\\\n// \\\\treturn mat3(uu, vv, ww);\\\\n// }\\\\n\\\\nfloat vectorAngle(vec3 start, vec3 dest){\\\\n\\\\tstart = normalize(start);\\\\n\\\\tdest = normalize(dest);\\\\n\\\\n\\\\tfloat cosTheta = dot(start, dest);\\\\n\\\\tvec3 c1 = cross(start, dest);\\\\n\\\\t// We use the dot product of the cross with the Y axis.\\\\n\\\\t// This is a little arbitrary, but can still give a good sense of direction\\\\n\\\\tvec3 y_axis = vec3(0.0, 1.0, 0.0);\\\\n\\\\tfloat d1 = dot(c1, y_axis);\\\\n\\\\tfloat angle = acos(cosTheta) * sign(d1);\\\\n\\\\treturn angle;\\\\n}\\\\n\\\\n// http://www.opengl-tutorial.org/intermediate-tutorials/tutorial-17-quaternions/#i-need-an-equivalent-of-glulookat-how-do-i-orient-an-object-towards-a-point-\\\\nvec4 vectorAlign(vec3 start, vec3 dest){\\\\n\\\\tstart = normalize(start);\\\\n\\\\tdest = normalize(dest);\\\\n\\\\n\\\\tfloat cosTheta = dot(start, dest);\\\\n\\\\tvec3 axis;\\\\n\\\\n\\\\t// if (cosTheta < -1 + 0.001f){\\\\n\\\\t// \\\\t// special case when vectors in opposite directions:\\\\n\\\\t// \\\\t// there is no ideal rotation axis\\\\n\\\\t// \\\\t// So guess one; any will do as long as it's perpendicular to start\\\\n\\\\t// \\\\taxis = cross(vec3(0.0f, 0.0f, 1.0f), start);\\\\n\\\\t// \\\\tif (length2(axis) < 0.01 ) // bad luck, they were parallel, try again!\\\\n\\\\t// \\\\t\\\\taxis = cross(vec3(1.0f, 0.0f, 0.0f), start);\\\\n\\\\n\\\\t// \\\\taxis = normalize(axis);\\\\n\\\\t// \\\\treturn gtx::quaternion::angleAxis(glm::radians(180.0f), axis);\\\\n\\\\t// }\\\\n\\\\tif(cosTheta > (1.0 - 0.0001) || cosTheta < (-1.0 + 0.0001) ){\\\\n\\\\t\\\\taxis = normalize(cross(start, vec3(0.0, 1.0, 0.0)));\\\\n\\\\t\\\\tif (length(axis) < 0.001 ){ // bad luck, they were parallel, try again!\\\\n\\\\t\\\\t\\\\taxis = normalize(cross(start, vec3(1.0, 0.0, 0.0)));\\\\n\\\\t\\\\t}\\\\n\\\\t} else {\\\\n\\\\t\\\\taxis = normalize(cross(start, dest));\\\\n\\\\t}\\\\n\\\\n\\\\tfloat angle = acos(cosTheta);\\\\n\\\\n\\\\treturn quatFromAxisAngle(axis, angle);\\\\n}\\\\nvec4 vectorAlignWithUp(vec3 start, vec3 dest, vec3 up){\\\\n\\\\tvec4 rot1 = vectorAlign(start, dest);\\\\n\\\\tup = normalize(up);\\\\n\\\\n\\\\t// Recompute desiredUp so that it's perpendicular to the direction\\\\n\\\\t// You can skip that part if you really want to force desiredUp\\\\n\\\\t// vec3 right = normalize(cross(dest, up));\\\\n\\\\t// up = normalize(cross(right, dest));\\\\n\\\\n\\\\t// Because of the 1rst rotation, the up is probably completely screwed up.\\\\n\\\\t// Find the rotation between the up of the rotated object, and the desired up\\\\n\\\\tvec3 newUp = rotateWithQuat(vec3(0.0, 1.0, 0.0), rot1);//rot1 * vec3(0.0, 1.0, 0.0);\\\\n\\\\tvec4 rot2 = vectorAlign(up, newUp);\\\\n\\\\n\\\\t// return rot1;\\\\n\\\\treturn rot2;\\\\n\\\\t// return multQuat(rot1, rot2);\\\\n\\\\t// return rot2 * rot1;\\\\n\\\\n}\\\\n\\\\n// https://www.euclideanspace.com/maths/geometry/rotations/conversions/quaternionToAngle/index.htm\\\\nfloat quatToAngle(vec4 q){\\\\n\\\\treturn 2.0 * acos(q.w);\\\\n}\\\\nvec3 quatToAxis(vec4 q){\\\\n\\\\treturn vec3(\\\\n\\\\t\\\\tq.x / sqrt(1.0-q.w*q.w),\\\\n\\\\t\\\\tq.y / sqrt(1.0-q.w*q.w),\\\\n\\\\t\\\\tq.z / sqrt(1.0-q.w*q.w)\\\\n\\\\t);\\\\n}\\\\n\\\\nvec4 align(vec3 dir, vec3 up){\\\\n\\\\tvec3 start_dir = vec3(0.0, 0.0, 1.0);\\\\n\\\\tvec3 start_up = vec3(0.0, 1.0, 0.0);\\\\n\\\\tvec4 rot1 = vectorAlign(start_dir, dir);\\\\n\\\\tup = normalize(up);\\\\n\\\\n\\\\t// Recompute desiredUp so that it's perpendicular to the direction\\\\n\\\\t// You can skip that part if you really want to force desiredUp\\\\n\\\\tvec3 right = normalize(cross(dir, up));\\\\n\\\\tif(length(right)<0.001){\\\\n\\\\t\\\\tright = vec3(1.0, 0.0, 0.0);\\\\n\\\\t}\\\\n\\\\tup = normalize(cross(right, dir));\\\\n\\\\n\\\\t// Because of the 1rst rotation, the up is probably completely screwed up.\\\\n\\\\t// Find the rotation between the up of the rotated object, and the desired up\\\\n\\\\tvec3 newUp = rotateWithQuat(start_up, rot1);//rot1 * vec3(0.0, 1.0, 0.0);\\\\n\\\\tvec4 rot2 = vectorAlign(normalize(newUp), up);\\\\n\\\\n\\\\t// return rot1;\\\\n\\\\treturn quatMult(rot1, rot2);\\\\n\\\\t// return rot2 * rot1;\\\\n\\\\n}\\\\\\\";!function(t){t.DIR=\\\\\\\"dir\\\\\\\",t.UP=\\\\\\\"up\\\\\\\"}(OR||(OR={}));const RR=[OR.DIR,OR.UP],IR={[OR.DIR]:[0,0,1],[OR.UP]:[0,1,0]};class FR extends LP{static type(){return\\\\\\\"align\\\\\\\"}initializeNode(){super.initializeNode(),this.io.connection_points.set_input_name_function((t=>RR[t])),this.io.connection_points.set_expected_input_types_function((()=>[Uo.VEC3,Uo.VEC3])),this.io.connection_points.set_expected_output_types_function((()=>[Uo.VEC4]))}paramDefaultValue(t){return IR[t]}gl_method_name(){return\\\\\\\"align\\\\\\\"}gl_function_definitions(){return[new Cf(this,PR)]}}var DR;!function(t){t.LINEAR=\\\\\\\"Linear\\\\\\\",t.GAMMA=\\\\\\\"Gamma\\\\\\\",t.SRGB=\\\\\\\"sRGB\\\\\\\",t.RGBE=\\\\\\\"RGBE\\\\\\\",t.RGBM=\\\\\\\"RGBM\\\\\\\",t.RGBD=\\\\\\\"RGBD\\\\\\\",t.LogLuv=\\\\\\\"LogLuv\\\\\\\"}(DR||(DR={}));const BR=[DR.LINEAR,DR.GAMMA,DR.SRGB,DR.RGBE,DR.RGBM,DR.RGBD,DR.LogLuv];const zR=new class extends ua{constructor(){super(...arguments),this.color=ha.VECTOR4([1,1,1,1]),this.from=ha.INTEGER(BR.indexOf(DR.LINEAR),{menu:{entries:BR.map(((t,e)=>({name:t,value:e})))}}),this.to=ha.INTEGER(BR.indexOf(DR.GAMMA),{menu:{entries:BR.map(((t,e)=>({name:t,value:e})))}}),this.gammaFactor=ha.FLOAT(2.2)}};class kR extends gf{constructor(){super(...arguments),this.paramsConfig=zR}static type(){return\\\\\\\"colorCorrect\\\\\\\"}initializeNode(){this.io.connection_points.spare_params.set_inputless_param_names([\\\\\\\"to\\\\\\\",\\\\\\\"from\\\\\\\"]),this.io.outputs.setNamedOutputConnectionPoints([new qo(kR.OUTPUT_NAME,Uo.VEC4)])}setLines(t){const e=BR[this.pv.from],n=BR[this.pv.to],i=this.glVarName(kR.OUTPUT_NAME),s=mf.any(this.variableForInput(kR.INPUT_NAME)),r=[];if(e!=n){const t=`${e}To${n}`,o=[];if(o.push(s),e==DR.GAMMA||n==DR.GAMMA){const t=mf.any(this.variableForInputParam(this.p.gammaFactor));o.push(t)}r.push(`vec4 ${i} = ${t}(${o.join(\\\\\\\", \\\\\\\")})`)}else r.push(`vec4 ${i} = ${s}`);t.addBodyLines(this,r)}}var UR,GR;kR.INPUT_NAME=\\\\\\\"color\\\\\\\",kR.INPUT_GAMMA_FACTOR=\\\\\\\"gammaFactor\\\\\\\",kR.OUTPUT_NAME=\\\\\\\"out\\\\\\\",function(t){t.EQUAL=\\\\\\\"Equal\\\\\\\",t.LESS_THAN=\\\\\\\"Less Than\\\\\\\",t.GREATER_THAN=\\\\\\\"Greater Than\\\\\\\",t.LESS_THAN_OR_EQUAL=\\\\\\\"Less Than Or Equal\\\\\\\",t.GREATER_THAN_OR_EQUAL=\\\\\\\"Greater Than Or Equal\\\\\\\",t.NOT_EQUAL=\\\\\\\"Not Equal\\\\\\\"}(UR||(UR={})),function(t){t.EQUAL=\\\\\\\"==\\\\\\\",t.LESS_THAN=\\\\\\\"<\\\\\\\",t.GREATER_THAN=\\\\\\\">\\\\\\\",t.LESS_THAN_OR_EQUAL=\\\\\\\"<=\\\\\\\",t.GREATER_THAN_OR_EQUAL=\\\\\\\">=\\\\\\\",t.NOT_EQUAL=\\\\\\\"!=\\\\\\\"}(GR||(GR={}));const VR=[UR.EQUAL,UR.LESS_THAN,UR.GREATER_THAN,UR.LESS_THAN_OR_EQUAL,UR.GREATER_THAN_OR_EQUAL,UR.NOT_EQUAL],HR=[GR.EQUAL,GR.LESS_THAN,GR.GREATER_THAN,GR.LESS_THAN_OR_EQUAL,GR.GREATER_THAN_OR_EQUAL,GR.NOT_EQUAL],jR=[\\\\\\\"x\\\\\\\",\\\\\\\"y\\\\\\\",\\\\\\\"z\\\\\\\",\\\\\\\"w\\\\\\\"];const WR=new class extends ua{constructor(){super(...arguments),this.test=ha.INTEGER(0,{menu:{entries:VR.map(((t,e)=>({name:`${HR[e].padEnd(2,\\\\\\\" \\\\\\\")} (${t})`,value:e})))}})}};class qR extends gf{constructor(){super(...arguments),this.paramsConfig=WR}static type(){return\\\\\\\"compare\\\\\\\"}initializeNode(){super.initializeNode(),this.io.connection_points.spare_params.set_inputless_param_names([\\\\\\\"test\\\\\\\"]),this.io.connection_points.initializeNode(),this.io.connection_points.set_input_name_function(this._gl_input_name.bind(this)),this.io.connection_points.set_output_name_function((t=>\\\\\\\"val\\\\\\\")),this.io.connection_points.set_expected_input_types_function(this._expected_input_type.bind(this)),this.io.connection_points.set_expected_output_types_function((()=>[Uo.BOOL]))}set_test_name(t){this.p.test.set(VR.indexOf(t))}_gl_input_name(t){return[\\\\\\\"value0\\\\\\\",\\\\\\\"value1\\\\\\\"][t]}_expected_input_type(){const t=this.io.connection_points.first_input_connection_type()||Uo.FLOAT;return[t,t]}setLines(t){const e=[],n=this.glVarName(\\\\\\\"val\\\\\\\"),i=HR[this.pv.test],s=mf.any(this.variableForInput(this._gl_input_name(0))),r=mf.any(this.variableForInput(this._gl_input_name(1))),o=this.io.inputs.namedInputConnectionPoints()[0];let a=1;if(o&&(a=Wo[o.type()]||1),a>1){let t=[];for(let n=0;n<a;n++){const o=this.glVarName(`tmp_value_${n}`),a=jR[n];t.push(o),e.push(`bool ${o} = (${s}.${a} ${i} ${r}.${a})`)}e.push(`bool ${n} = (${t.join(\\\\\\\" && \\\\\\\")})`)}else e.push(`bool ${n} = (${s} ${i} ${r})`);t.addBodyLines(this,e)}}class XR extends NP{static type(){return\\\\\\\"complement\\\\\\\"}gl_method_name(){return\\\\\\\"complement\\\\\\\"}gl_function_definitions(){return[new Cf(this,\\\\\\\"float complement(float x){return 1.0-x;}\\\\nvec2 complement(vec2 x){return vec2(1.0-x.x, 1.0-x.y);}\\\\nvec3 complement(vec3 x){return vec3(1.0-x.x, 1.0-x.y, 1.0-x.z);}\\\\nvec4 complement(vec4 x){return vec4(1.0-x.x, 1.0-x.y, 1.0-x.z, 1.0-x.w);}\\\\n\\\\\\\")]}}function YR(t){return{visibleIf:{type:Go.indexOf(t)}}}const $R=new class extends ua{constructor(){super(...arguments),this.type=ha.INTEGER(Go.indexOf(Uo.FLOAT),{menu:{entries:Go.map(((t,e)=>({name:t,value:e})))}}),this.bool=ha.BOOLEAN(0,YR(Uo.BOOL)),this.int=ha.INTEGER(0,YR(Uo.INT)),this.float=ha.FLOAT(0,YR(Uo.FLOAT)),this.vec2=ha.VECTOR2([0,0],YR(Uo.VEC2)),this.vec3=ha.VECTOR3([0,0,0],YR(Uo.VEC3)),this.vec4=ha.VECTOR4([0,0,0,0],YR(Uo.VEC4))}};class JR extends gf{constructor(){super(...arguments),this.paramsConfig=$R,this._allow_inputs_created_from_params=!1}static type(){return\\\\\\\"constant\\\\\\\"}initializeNode(){this.io.connection_points.set_output_name_function((t=>JR.OUTPUT_NAME)),this.io.connection_points.set_expected_input_types_function((()=>[])),this.io.connection_points.set_expected_output_types_function((()=>[this._current_connection_type]))}setLines(t){const e=this._current_param;if(e){const n=this._current_connection_type;let i=mf.any(e.value);e.name()==this.p.int.name()&&m.isNumber(e.value)&&(i=mf.integer(e.value));const s=`${n} ${this._current_var_name} = ${i}`;t.addBodyLines(this,[s])}else console.warn(`no param found for constant node for type '${this.pv.type}'`)}get _current_connection_type(){null==this.pv.type&&console.warn(\\\\\\\"constant gl node type if not valid\\\\\\\");const t=Go[this.pv.type];return null==t&&console.warn(\\\\\\\"constant gl node type if not valid\\\\\\\"),t}get _current_param(){this._params_by_type=this._params_by_type||new Map([[Uo.BOOL,this.p.bool],[Uo.INT,this.p.int],[Uo.FLOAT,this.p.float],[Uo.VEC2,this.p.vec2],[Uo.VEC3,this.p.vec3],[Uo.VEC4,this.p.vec4]]);const t=Go[this.pv.type];return this._params_by_type.get(t)}get _current_var_name(){return this.glVarName(JR.OUTPUT_NAME)}set_gl_type(t){this.p.type.set(Go.indexOf(t))}}JR.OUTPUT_NAME=\\\\\\\"val\\\\\\\";const ZR=\\\\\\\"cross\\\\\\\";const KR=new class extends ua{constructor(){super(...arguments),this.x=ha.VECTOR3([0,0,1]),this.y=ha.VECTOR3([0,1,0])}};class QR extends gf{constructor(){super(...arguments),this.paramsConfig=KR}static type(){return\\\\\\\"cross\\\\\\\"}initializeNode(){super.initializeNode(),this.io.outputs.setNamedOutputConnectionPoints([new qo(ZR,Uo.VEC3)])}setLines(t){const e=mf.float(this.variableForInputParam(this.p.x)),n=mf.float(this.variableForInputParam(this.p.y)),i=`vec3 ${this.glVarName(ZR)} = cross(${e}, ${n})`;t.addBodyLines(this,[i])}}class tI extends(hR(\\\\\\\"cycle\\\\\\\",{in:[\\\\\\\"in\\\\\\\",\\\\\\\"min\\\\\\\",\\\\\\\"max\\\\\\\"],default:{max:1},functions:[\\\\\\\"float cycle(float val, float val_min, float val_max){\\\\n\\\\tif(val >= val_min && val < val_max){\\\\n\\\\t\\\\treturn val;\\\\n\\\\t} else {\\\\n\\\\t\\\\tfloat range = val_max - val_min;\\\\n\\\\t\\\\tif(val >= val_max){\\\\n\\\\t\\\\t\\\\tfloat delta = (val - val_max);\\\\n\\\\t\\\\t\\\\treturn val_min + mod(delta, range);\\\\n\\\\t\\\\t} else {\\\\n\\\\t\\\\t\\\\tfloat delta = (val_min - val);\\\\n\\\\t\\\\t\\\\treturn val_max - mod(delta, range);\\\\n\\\\t\\\\t}\\\\n\\\\t}\\\\n}\\\\\\\"]})){}var eI=\\\\\\\"float disk_feather(float dist, float radius, float feather){\\\\n\\\\tif(feather <= 0.0){\\\\n\\\\t\\\\tif(dist < radius){return 1.0;}else{return 0.0;}\\\\n\\\\t} else {\\\\n\\\\t\\\\tfloat half_feather = feather * 0.5;\\\\n\\\\t\\\\tif(dist < (radius - half_feather)){\\\\n\\\\t\\\\t\\\\treturn 1.0;\\\\n\\\\t\\\\t} else {\\\\n\\\\t\\\\t\\\\tif(dist > (radius + half_feather)){\\\\n\\\\t\\\\t\\\\t\\\\treturn 0.0;\\\\n\\\\t\\\\t\\\\t} else {\\\\n\\\\t\\\\t\\\\t\\\\tfloat feather_start = (radius - half_feather);\\\\n\\\\t\\\\t\\\\t\\\\tfloat blend = 1.0 - (dist - feather_start) / feather;\\\\n\\\\t\\\\t\\\\t\\\\treturn blend;\\\\n\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t}\\\\n\\\\t}\\\\n}\\\\n\\\\nfloat disk2d(vec2 pos, vec2 center, float radius, float feather){\\\\n\\\\tfloat dist = distance(pos, center);\\\\n\\\\treturn disk_feather(dist, radius, feather);\\\\n}\\\\n\\\\n// function could be called sphere, but is an overload of disk, and is the same\\\\nfloat disk3d(vec3 pos, vec3 center, float radius, float feather){\\\\n\\\\tfloat dist = distance(pos, center);\\\\n\\\\treturn disk_feather(dist, radius, feather);\\\\n}\\\\\\\";const nI=new class extends ua{constructor(){super(...arguments),this.position=ha.VECTOR2([0,0]),this.center=ha.VECTOR2([0,0]),this.radius=ha.FLOAT(1),this.feather=ha.FLOAT(.1)}};class iI extends gf{constructor(){super(...arguments),this.paramsConfig=nI}static type(){return\\\\\\\"disk\\\\\\\"}initializeNode(){super.initializeNode(),this.io.outputs.setNamedOutputConnectionPoints([new qo(\\\\\\\"float\\\\\\\",Uo.FLOAT)])}setLines(t){const e=mf.vector2(this.variableForInputParam(this.p.position)),n=mf.vector2(this.variableForInputParam(this.p.center)),i=mf.float(this.variableForInputParam(this.p.radius)),s=mf.float(this.variableForInputParam(this.p.feather)),r=`float ${this.glVarName(\\\\\\\"float\\\\\\\")} = disk2d(${e}, ${n}, ${i}, ${s})`;t.addBodyLines(this,[r]),t.addDefinitions(this,[new Cf(this,eI)])}}var sI=\\\\\\\"\\\\nfloat bounceOut(float t) {\\\\n  const float a = 4.0 / 11.0;\\\\n  const float b = 8.0 / 11.0;\\\\n  const float c = 9.0 / 10.0;\\\\n\\\\n  const float ca = 4356.0 / 361.0;\\\\n  const float cb = 35442.0 / 1805.0;\\\\n  const float cc = 16061.0 / 1805.0;\\\\n\\\\n  float t2 = t * t;\\\\n\\\\n  return t < a\\\\n    ? 7.5625 * t2\\\\n    : t < b\\\\n      ? 9.075 * t2 - 9.9 * t + 3.4\\\\n      : t < c\\\\n        ? ca * t2 - cb * t + cc\\\\n        : 10.8 * t * t - 20.52 * t + 10.72;\\\\n}\\\\n\\\\n\\\\\\\";const rI=[\\\\\\\"back-in-out\\\\\\\",\\\\\\\"back-in\\\\\\\",\\\\\\\"back-out\\\\\\\",\\\\\\\"bounce-in-out\\\\\\\",\\\\\\\"bounce-in\\\\\\\",\\\\\\\"bounce-out\\\\\\\",\\\\\\\"circular-in-out\\\\\\\",\\\\\\\"circular-in\\\\\\\",\\\\\\\"circular-out\\\\\\\",\\\\\\\"cubic-in-out\\\\\\\",\\\\\\\"cubic-in\\\\\\\",\\\\\\\"cubic-out\\\\\\\",\\\\\\\"elastic-in-out\\\\\\\",\\\\\\\"elastic-in\\\\\\\",\\\\\\\"elastic-out\\\\\\\",\\\\\\\"exponential-in-out\\\\\\\",\\\\\\\"exponential-in\\\\\\\",\\\\\\\"exponential-out\\\\\\\",\\\\\\\"linear\\\\\\\",\\\\\\\"quadratic-in-out\\\\\\\",\\\\\\\"quadratic-in\\\\\\\",\\\\\\\"quadratic-out\\\\\\\",\\\\\\\"sine-in-out\\\\\\\",\\\\\\\"sine-in\\\\\\\",\\\\\\\"sine-out\\\\\\\"],oI={\\\\\\\"circular-in-out\\\\\\\":\\\\\\\"float circularInOut(float t) {\\\\n  return t < 0.5\\\\n    ? 0.5 * (1.0 - sqrt(1.0 - 4.0 * t * t))\\\\n    : 0.5 * (sqrt((3.0 - 2.0 * t) * (2.0 * t - 1.0)) + 1.0);\\\\n}\\\\n\\\\n\\\\\\\",\\\\\\\"exponential-in-out\\\\\\\":\\\\\\\"float exponentialInOut(float t) {\\\\n  return t == 0.0 || t == 1.0\\\\n    ? t\\\\n    : t < 0.5\\\\n      ? +0.5 * pow(2.0, (20.0 * t) - 10.0)\\\\n      : -0.5 * pow(2.0, 10.0 - (t * 20.0)) + 1.0;\\\\n}\\\\n\\\\n\\\\\\\",\\\\\\\"circular-in\\\\\\\":\\\\\\\"float circularIn(float t) {\\\\n  return 1.0 - sqrt(1.0 - t * t);\\\\n}\\\\n\\\\n\\\\\\\",\\\\\\\"elastic-out\\\\\\\":\\\\\\\"#ifndef HALF_PI\\\\n#define HALF_PI 1.5707963267948966\\\\n#endif\\\\n\\\\nfloat elasticOut(float t) {\\\\n  return sin(-13.0 * (t + 1.0) * HALF_PI) * pow(2.0, -10.0 * t) + 1.0;\\\\n}\\\\n\\\\n\\\\\\\",\\\\\\\"cubic-in\\\\\\\":\\\\\\\"float cubicIn(float t) {\\\\n  return t * t * t;\\\\n}\\\\n\\\\n\\\\\\\",\\\\\\\"exponential-out\\\\\\\":\\\\\\\"float exponentialOut(float t) {\\\\n  return t == 1.0 ? t : 1.0 - pow(2.0, -10.0 * t);\\\\n}\\\\n\\\\n\\\\\\\",\\\\\\\"quintic-out\\\\\\\":\\\\\\\"float quinticOut(float t) {\\\\n  return 1.0 - (pow(t - 1.0, 5.0));\\\\n}\\\\n\\\\n\\\\\\\",\\\\\\\"elastic-in-out\\\\\\\":\\\\\\\"#ifndef HALF_PI\\\\n#define HALF_PI 1.5707963267948966\\\\n#endif\\\\n\\\\nfloat elasticInOut(float t) {\\\\n  return t < 0.5\\\\n    ? 0.5 * sin(+13.0 * HALF_PI * 2.0 * t) * pow(2.0, 10.0 * (2.0 * t - 1.0))\\\\n    : 0.5 * sin(-13.0 * HALF_PI * ((2.0 * t - 1.0) + 1.0)) * pow(2.0, -10.0 * (2.0 * t - 1.0)) + 1.0;\\\\n}\\\\n\\\\n\\\\\\\",linear:\\\\\\\"float linear(float t) {\\\\n  return t;\\\\n}\\\\n\\\\n\\\\\\\",\\\\\\\"circular-out\\\\\\\":\\\\\\\"float circularOut(float t) {\\\\n  return sqrt((2.0 - t) * t);\\\\n}\\\\n\\\\n\\\\\\\",\\\\\\\"back-in-out\\\\\\\":\\\\\\\"\\\\nfloat backInOut(float t) {\\\\n  float f = t < 0.5\\\\n    ? 2.0 * t\\\\n    : 1.0 - (2.0 * t - 1.0);\\\\n\\\\n  float g = pow(f, 3.0) - f * sin(f * PI);\\\\n\\\\n  return t < 0.5\\\\n    ? 0.5 * g\\\\n    : 0.5 * (1.0 - g) + 0.5;\\\\n}\\\\n\\\\n\\\\\\\",\\\\\\\"back-in\\\\\\\":\\\\\\\"\\\\nfloat backIn(float t) {\\\\n  return pow(t, 3.0) - t * sin(t * PI);\\\\n}\\\\n\\\\n\\\\\\\",\\\\\\\"sine-in\\\\\\\":\\\\\\\"#ifndef HALF_PI\\\\n#define HALF_PI 1.5707963267948966\\\\n#endif\\\\n\\\\nfloat sineIn(float t) {\\\\n  return sin((t - 1.0) * HALF_PI) + 1.0;\\\\n}\\\\n\\\\n\\\\\\\",\\\\\\\"back-out\\\\\\\":\\\\\\\"\\\\nfloat backOut(float t) {\\\\n  float f = 1.0 - t;\\\\n  return 1.0 - (pow(f, 3.0) - f * sin(f * PI));\\\\n}\\\\n\\\\n\\\\\\\",\\\\\\\"quartic-in-out\\\\\\\":\\\\\\\"float quarticInOut(float t) {\\\\n  return t < 0.5\\\\n    ? +8.0 * pow(t, 4.0)\\\\n    : -8.0 * pow(t - 1.0, 4.0) + 1.0;\\\\n}\\\\n\\\\n\\\\\\\",\\\\\\\"quadratic-in\\\\\\\":\\\\\\\"float quadraticIn(float t) {\\\\n  return t * t;\\\\n}\\\\n\\\\n\\\\\\\",\\\\\\\"cubic-in-out\\\\\\\":\\\\\\\"float cubicInOut(float t) {\\\\n  return t < 0.5\\\\n    ? 4.0 * t * t * t\\\\n    : 0.5 * pow(2.0 * t - 2.0, 3.0) + 1.0;\\\\n}\\\\n\\\\n\\\\\\\",\\\\\\\"elastic-in\\\\\\\":\\\\\\\"#ifndef HALF_PI\\\\n#define HALF_PI 1.5707963267948966\\\\n#endif\\\\n\\\\nfloat elasticIn(float t) {\\\\n  return sin(13.0 * t * HALF_PI) * pow(2.0, 10.0 * (t - 1.0));\\\\n}\\\\n\\\\n\\\\\\\",\\\\\\\"bounce-out\\\\\\\":sI,\\\\\\\"quadratic-in-out\\\\\\\":\\\\\\\"float quadraticInOut(float t) {\\\\n  float p = 2.0 * t * t;\\\\n  return t < 0.5 ? p : -p + (4.0 * t) - 1.0;\\\\n}\\\\n\\\\n\\\\\\\",\\\\\\\"exponential-in\\\\\\\":\\\\\\\"float exponentialIn(float t) {\\\\n  return t == 0.0 ? t : pow(2.0, 10.0 * (t - 1.0));\\\\n}\\\\n\\\\n\\\\\\\",\\\\\\\"quintic-in-out\\\\\\\":\\\\\\\"float quinticInOut(float t) {\\\\n  return t < 0.5\\\\n    ? +16.0 * pow(t, 5.0)\\\\n    : -0.5 * pow(2.0 * t - 2.0, 5.0) + 1.0;\\\\n}\\\\n\\\\n\\\\\\\",\\\\\\\"sine-in-out\\\\\\\":\\\\\\\"\\\\nfloat sineInOut(float t) {\\\\n  return -0.5 * (cos(PI * t) - 1.0);\\\\n}\\\\n\\\\n\\\\\\\",\\\\\\\"cubic-out\\\\\\\":\\\\\\\"float cubicOut(float t) {\\\\n  float f = t - 1.0;\\\\n  return f * f * f + 1.0;\\\\n}\\\\n\\\\n\\\\\\\",\\\\\\\"quadratic-out\\\\\\\":\\\\\\\"float quadraticOut(float t) {\\\\n  return -t * (t - 2.0);\\\\n}\\\\n\\\\n\\\\\\\",\\\\\\\"bounce-in-out\\\\\\\":\\\\\\\"\\\\nfloat bounceInOut(float t) {\\\\n  return t < 0.5\\\\n    ? 0.5 * (1.0 - bounceOut(1.0 - t * 2.0))\\\\n    : 0.5 * bounceOut(t * 2.0 - 1.0) + 0.5;\\\\n}\\\\n\\\\n\\\\n\\\\n\\\\\\\",\\\\\\\"quintic-in\\\\\\\":\\\\\\\"float quinticIn(float t) {\\\\n  return pow(t, 5.0);\\\\n}\\\\n\\\\n\\\\\\\",\\\\\\\"quartic-in\\\\\\\":\\\\\\\"float quarticIn(float t) {\\\\n  return pow(t, 4.0);\\\\n}\\\\n\\\\n\\\\\\\",\\\\\\\"quartic-out\\\\\\\":\\\\\\\"float quarticOut(float t) {\\\\n  return pow(t - 1.0, 3.0) * (1.0 - t) + 1.0;\\\\n}\\\\n\\\\n\\\\\\\",\\\\\\\"bounce-in\\\\\\\":\\\\\\\"\\\\nfloat bounceIn(float t) {\\\\n  return 1.0 - bounceOut(1.0 - t);\\\\n}\\\\n\\\\n\\\\\\\",\\\\\\\"sine-out\\\\\\\":\\\\\\\"#ifndef HALF_PI\\\\n#define HALF_PI 1.5707963267948966\\\\n#endif\\\\n\\\\nfloat sineOut(float t) {\\\\n  return sin(t * HALF_PI);\\\\n}\\\\n\\\\n\\\\\\\"},aI={\\\\\\\"bounce-in\\\\\\\":[sI],\\\\\\\"bounce-in-out\\\\\\\":[sI]},lI={\\\\\\\"circular-in-out\\\\\\\":\\\\\\\"circularInOut\\\\\\\",\\\\\\\"exponential-in-out\\\\\\\":\\\\\\\"exponentialInOut\\\\\\\",\\\\\\\"circular-in\\\\\\\":\\\\\\\"circularIn\\\\\\\",\\\\\\\"elastic-out\\\\\\\":\\\\\\\"elasticOut\\\\\\\",\\\\\\\"cubic-in\\\\\\\":\\\\\\\"cubicIn\\\\\\\",\\\\\\\"exponential-out\\\\\\\":\\\\\\\"exponentialOut\\\\\\\",\\\\\\\"quintic-out\\\\\\\":\\\\\\\"quinticOut\\\\\\\",\\\\\\\"elastic-in-out\\\\\\\":\\\\\\\"elasticInOut\\\\\\\",linear:\\\\\\\"linear\\\\\\\",\\\\\\\"circular-out\\\\\\\":\\\\\\\"circularOut\\\\\\\",\\\\\\\"back-in-out\\\\\\\":\\\\\\\"backInOut\\\\\\\",\\\\\\\"back-in\\\\\\\":\\\\\\\"backIn\\\\\\\",\\\\\\\"sine-in\\\\\\\":\\\\\\\"sineIn\\\\\\\",\\\\\\\"back-out\\\\\\\":\\\\\\\"backOut\\\\\\\",\\\\\\\"quartic-in-out\\\\\\\":\\\\\\\"quarticInOut\\\\\\\",\\\\\\\"quadratic-in\\\\\\\":\\\\\\\"quadraticIn\\\\\\\",\\\\\\\"cubic-in-out\\\\\\\":\\\\\\\"cubicInOut\\\\\\\",\\\\\\\"elastic-in\\\\\\\":\\\\\\\"elasticIn\\\\\\\",\\\\\\\"bounce-out\\\\\\\":\\\\\\\"bounceOut\\\\\\\",\\\\\\\"quadratic-in-out\\\\\\\":\\\\\\\"quadraticInOut\\\\\\\",\\\\\\\"exponential-in\\\\\\\":\\\\\\\"exponentialIn\\\\\\\",\\\\\\\"quintic-in-out\\\\\\\":\\\\\\\"quinticInOut\\\\\\\",\\\\\\\"sine-in-out\\\\\\\":\\\\\\\"sineInOut\\\\\\\",\\\\\\\"cubic-out\\\\\\\":\\\\\\\"cubicOut\\\\\\\",\\\\\\\"quadratic-out\\\\\\\":\\\\\\\"quadraticOut\\\\\\\",\\\\\\\"bounce-in-out\\\\\\\":\\\\\\\"bounceInOut\\\\\\\",\\\\\\\"quintic-in\\\\\\\":\\\\\\\"quinticIn\\\\\\\",\\\\\\\"quartic-in\\\\\\\":\\\\\\\"quarticIn\\\\\\\",\\\\\\\"quartic-out\\\\\\\":\\\\\\\"quarticOut\\\\\\\",\\\\\\\"bounce-in\\\\\\\":\\\\\\\"bounceIn\\\\\\\",\\\\\\\"sine-out\\\\\\\":\\\\\\\"sineOut\\\\\\\"},cI=rI.indexOf(\\\\\\\"sine-in-out\\\\\\\");const hI=new class extends ua{constructor(){super(...arguments),this.type=ha.INTEGER(cI,{menu:{entries:rI.map(((t,e)=>({name:t,value:e})))}}),this.input=ha.FLOAT(0)}};class uI extends gf{constructor(){super(...arguments),this.paramsConfig=hI}static type(){return\\\\\\\"easing\\\\\\\"}initializeNode(){super.initializeNode(),this.io.connection_points.spare_params.set_inputless_param_names([\\\\\\\"type\\\\\\\"]),this.io.outputs.setNamedOutputConnectionPoints([new qo(\\\\\\\"out\\\\\\\",Uo.FLOAT)])}setLines(t){const e=rI[this.pv.type],n=lI[e];let i=[new Cf(this,oI[e])];const s=(aI[e]||[]).map((t=>new Cf(this,t)));s&&(i=s.concat(i));const r=mf.float(this.variableForInputParam(this.p.input)),o=`float ${this.glVarName(\\\\\\\"out\\\\\\\")} = ${n}(${r})`;t.addDefinitions(this,i),t.addBodyLines(this,[o])}}var dI=\\\\\\\"//\\\\n//\\\\n// FIT\\\\n//\\\\n//\\\\nfloat fit(float val, float srcMin, float srcMax, float destMin, float destMax){\\\\n\\\\tfloat src_range = srcMax - srcMin;\\\\n\\\\tfloat dest_range = destMax - destMin;\\\\n\\\\n\\\\tfloat r = (val - srcMin) / src_range;\\\\n\\\\treturn (r * dest_range) + destMin;\\\\n}\\\\nvec2 fit(vec2 val, vec2 srcMin, vec2 srcMax, vec2 destMin, vec2 destMax){\\\\n\\\\treturn vec2(\\\\n\\\\t\\\\tfit(val.x, srcMin.x, srcMax.x, destMin.x, destMax.x),\\\\n\\\\t\\\\tfit(val.y, srcMin.y, srcMax.y, destMin.y, destMax.y)\\\\n\\\\t);\\\\n}\\\\nvec3 fit(vec3 val, vec3 srcMin, vec3 srcMax, vec3 destMin, vec3 destMax){\\\\n\\\\treturn vec3(\\\\n\\\\t\\\\tfit(val.x, srcMin.x, srcMax.x, destMin.x, destMax.x),\\\\n\\\\t\\\\tfit(val.y, srcMin.y, srcMax.y, destMin.y, destMax.y),\\\\n\\\\t\\\\tfit(val.z, srcMin.z, srcMax.z, destMin.z, destMax.z)\\\\n\\\\t);\\\\n}\\\\nvec4 fit(vec4 val, vec4 srcMin, vec4 srcMax, vec4 destMin, vec4 destMax){\\\\n\\\\treturn vec4(\\\\n\\\\t\\\\tfit(val.x, srcMin.x, srcMax.x, destMin.x, destMax.x),\\\\n\\\\t\\\\tfit(val.y, srcMin.y, srcMax.y, destMin.y, destMax.y),\\\\n\\\\t\\\\tfit(val.z, srcMin.z, srcMax.z, destMin.z, destMax.z),\\\\n\\\\t\\\\tfit(val.w, srcMin.w, srcMax.w, destMin.w, destMax.w)\\\\n\\\\t);\\\\n}\\\\n\\\\n//\\\\n//\\\\n// FIT TO 01\\\\n// fits the range [srcMin, srcMax] to [0, 1]\\\\n//\\\\nfloat fitTo01(float val, float srcMin, float srcMax){\\\\n\\\\tfloat size = srcMax - srcMin;\\\\n\\\\treturn (val - srcMin) / size;\\\\n}\\\\nvec2 fitTo01(vec2 val, vec2 srcMin, vec2 srcMax){\\\\n\\\\treturn vec2(\\\\n\\\\t\\\\tfitTo01(val.x, srcMin.x, srcMax.x),\\\\n\\\\t\\\\tfitTo01(val.y, srcMin.y, srcMax.y)\\\\n\\\\t);\\\\n}\\\\nvec3 fitTo01(vec3 val, vec3 srcMin, vec3 srcMax){\\\\n\\\\treturn vec3(\\\\n\\\\t\\\\tfitTo01(val.x, srcMin.x, srcMax.x),\\\\n\\\\t\\\\tfitTo01(val.y, srcMin.y, srcMax.y),\\\\n\\\\t\\\\tfitTo01(val.z, srcMin.z, srcMax.z)\\\\n\\\\t);\\\\n}\\\\nvec4 fitTo01(vec4 val, vec4 srcMin, vec4 srcMax){\\\\n\\\\treturn vec4(\\\\n\\\\t\\\\tfitTo01(val.x, srcMin.x, srcMax.x),\\\\n\\\\t\\\\tfitTo01(val.y, srcMin.y, srcMax.y),\\\\n\\\\t\\\\tfitTo01(val.z, srcMin.z, srcMax.z),\\\\n\\\\t\\\\tfitTo01(val.w, srcMin.w, srcMax.w)\\\\n\\\\t);\\\\n}\\\\n\\\\n//\\\\n//\\\\n// FIT FROM 01\\\\n// fits the range [0, 1] to [destMin, destMax]\\\\n//\\\\nfloat fitFrom01(float val, float destMin, float destMax){\\\\n\\\\treturn fit(val, 0.0, 1.0, destMin, destMax);\\\\n}\\\\nvec2 fitFrom01(vec2 val, vec2 srcMin, vec2 srcMax){\\\\n\\\\treturn vec2(\\\\n\\\\t\\\\tfitFrom01(val.x, srcMin.x, srcMax.x),\\\\n\\\\t\\\\tfitFrom01(val.y, srcMin.y, srcMax.y)\\\\n\\\\t);\\\\n}\\\\nvec3 fitFrom01(vec3 val, vec3 srcMin, vec3 srcMax){\\\\n\\\\treturn vec3(\\\\n\\\\t\\\\tfitFrom01(val.x, srcMin.x, srcMax.x),\\\\n\\\\t\\\\tfitFrom01(val.y, srcMin.y, srcMax.y),\\\\n\\\\t\\\\tfitFrom01(val.z, srcMin.z, srcMax.z)\\\\n\\\\t);\\\\n}\\\\nvec4 fitFrom01(vec4 val, vec4 srcMin, vec4 srcMax){\\\\n\\\\treturn vec4(\\\\n\\\\t\\\\tfitFrom01(val.x, srcMin.x, srcMax.x),\\\\n\\\\t\\\\tfitFrom01(val.y, srcMin.y, srcMax.y),\\\\n\\\\t\\\\tfitFrom01(val.z, srcMin.z, srcMax.z),\\\\n\\\\t\\\\tfitFrom01(val.w, srcMin.w, srcMax.w)\\\\n\\\\t);\\\\n}\\\\n\\\\n//\\\\n//\\\\n// FIT FROM 01 TO VARIANCE\\\\n// fits the range [0, 1] to [center - variance, center + variance]\\\\n//\\\\nfloat fitFrom01ToVariance(float val, float center, float variance){\\\\n\\\\treturn fitFrom01(val, center - variance, center + variance);\\\\n}\\\\nvec2 fitFrom01ToVariance(vec2 val, vec2 center, vec2 variance){\\\\n\\\\treturn vec2(\\\\n\\\\t\\\\tfitFrom01ToVariance(val.x, center.x, variance.x),\\\\n\\\\t\\\\tfitFrom01ToVariance(val.y, center.y, variance.y)\\\\n\\\\t);\\\\n}\\\\nvec3 fitFrom01ToVariance(vec3 val, vec3 center, vec3 variance){\\\\n\\\\treturn vec3(\\\\n\\\\t\\\\tfitFrom01ToVariance(val.x, center.x, variance.x),\\\\n\\\\t\\\\tfitFrom01ToVariance(val.y, center.y, variance.y),\\\\n\\\\t\\\\tfitFrom01ToVariance(val.z, center.z, variance.z)\\\\n\\\\t);\\\\n}\\\\nvec4 fitFrom01ToVariance(vec4 val, vec4 center, vec4 variance){\\\\n\\\\treturn vec4(\\\\n\\\\t\\\\tfitFrom01ToVariance(val.x, center.x, variance.x),\\\\n\\\\t\\\\tfitFrom01ToVariance(val.y, center.y, variance.y),\\\\n\\\\t\\\\tfitFrom01ToVariance(val.z, center.z, variance.z),\\\\n\\\\t\\\\tfitFrom01ToVariance(val.w, center.w, variance.w)\\\\n\\\\t);\\\\n}\\\\\\\";const pI={srcMin:0,srcMax:1,destMin:0,destMax:1};class _I extends RP{static type(){return\\\\\\\"fit\\\\\\\"}_gl_input_name(t){return[\\\\\\\"val\\\\\\\",\\\\\\\"srcMin\\\\\\\",\\\\\\\"srcMax\\\\\\\",\\\\\\\"destMin\\\\\\\",\\\\\\\"destMax\\\\\\\"][t]}paramDefaultValue(t){return pI[t]}gl_method_name(){return\\\\\\\"fit\\\\\\\"}gl_function_definitions(){return[new Cf(this,dI)]}}const mI={srcMin:0,srcMax:1};class fI extends OP{static type(){return\\\\\\\"fitTo01\\\\\\\"}_gl_input_name(t){return[\\\\\\\"val\\\\\\\",\\\\\\\"srcMin\\\\\\\",\\\\\\\"srcMax\\\\\\\"][t]}paramDefaultValue(t){return mI[t]}gl_method_name(){return\\\\\\\"fitTo01\\\\\\\"}gl_function_definitions(){return[new Cf(this,dI)]}}const gI={destMin:0,destMax:1};class vI extends OP{static type(){return\\\\\\\"fitFrom01\\\\\\\"}_gl_input_name(t){return[\\\\\\\"val\\\\\\\",\\\\\\\"destMin\\\\\\\",\\\\\\\"destMax\\\\\\\"][t]}paramDefaultValue(t){return gI[t]}gl_method_name(){return\\\\\\\"fitFrom01\\\\\\\"}gl_function_definitions(){return[new Cf(this,dI)]}}const yI={center:.5,variance:.5};class xI extends OP{static type(){return\\\\\\\"fitFrom01ToVariance\\\\\\\"}_gl_input_name(t){return[\\\\\\\"val\\\\\\\",\\\\\\\"center\\\\\\\",\\\\\\\"variance\\\\\\\"][t]}paramDefaultValue(t){return yI[t]}gl_method_name(){return\\\\\\\"fitFrom01ToVariance\\\\\\\"}gl_function_definitions(){return[new Cf(this,dI)]}}const bI=\\\\\\\"color\\\\\\\";const wI=new class extends ua{constructor(){super(...arguments),this.mvPosition=ha.VECTOR4([0,0,0,0]),this.baseColor=ha.COLOR([0,0,0]),this.fogColor=ha.COLOR([1,1,1]),this.near=ha.FLOAT(0),this.far=ha.FLOAT(0)}};class TI extends gf{constructor(){super(...arguments),this.paramsConfig=wI}static type(){return\\\\\\\"fog\\\\\\\"}initializeNode(){super.initializeNode(),this.io.outputs.setNamedOutputConnectionPoints([new qo(bI,Uo.VEC3)])}setLines(t){if(t.current_shader_name==Mf.FRAGMENT){const e=this.glVarName(this.name()),n=new Lf(this,Uo.VEC4,e),i=`${e} = modelViewMatrix * vec4(position, 1.0)`;t.addDefinitions(this,[n],Mf.VERTEX),t.addBodyLines(this,[i],Mf.VERTEX);const s=new Cf(this,\\\\\\\"vec3 compute_fog(vec4 mvPosition, vec3 base_color, vec3 fog_color, float near, float far) {\\\\n\\\\tfloat blend = (-mvPosition.z - near) / (far - near);\\\\n\\\\tblend = clamp(blend, 0.0, 1.0);\\\\n\\\\treturn blend * fog_color + (1.0 - blend) * base_color;\\\\n}\\\\\\\"),r=mf.vector4(this.variableForInputParam(this.p.mvPosition)),o=mf.vector3(this.variableForInputParam(this.p.baseColor)),a=mf.vector3(this.variableForInputParam(this.p.fogColor)),l=mf.vector3(this.variableForInputParam(this.p.near)),c=mf.vector3(this.variableForInputParam(this.p.far)),h=`vec3 ${this.glVarName(bI)} = compute_fog(${[r,o,a,l,c].join(\\\\\\\", \\\\\\\")})`;t.addDefinitions(this,[n,s]),t.addBodyLines(this,[h])}}}const AI=new class extends ua{};class MI extends gf{constructor(){super(...arguments),this.paramsConfig=AI}static type(){return ns.OUTPUT}initializeNode(){this.io.connection_points.set_input_name_function(this._expected_input_name.bind(this)),this.io.connection_points.set_expected_output_types_function((()=>[])),this.io.connection_points.set_expected_input_types_function(this._expected_input_types.bind(this)),this.io.connection_points.set_create_spare_params_from_inputs(!1),this.addPostDirtyHook(\\\\\\\"setParentDirty\\\\\\\",(()=>{var t;null===(t=this.parent())||void 0===t||t.setDirty(this)}))}parent(){return super.parent()}_expected_input_name(t){const e=this.parent();return(null==e?void 0:e.child_expected_output_connection_point_name(t))||`in${t}`}_expected_input_types(){const t=this.parent();return(null==t?void 0:t.child_expected_output_connection_point_types())||[]}setLines(t){const e=this.parent();if(!e)return;const n=[],i=this.io.connections.inputConnections();if(i)for(let t of i)if(t){const i=t.dest_connection_point(),s=mf.any(this.variableForInput(i.name())),r=`\\\\t${e.glVarName(i.name())} = ${s}`;n.push(r)}t.addBodyLines(this,n),e.set_lines_block_end(t,this)}}class EI extends gf{constructor(){super(...arguments),this._children_controller_context=ts.GL}initializeNode(){var t;null===(t=this.childrenController)||void 0===t||t.set_output_node_find_method((()=>this.nodesByType(MI.type())[0])),this.io.connection_points.set_input_name_function(this._expected_input_name.bind(this)),this.io.connection_points.set_output_name_function(this._expected_output_name.bind(this)),this.io.connection_points.set_expected_input_types_function(this._expected_input_types.bind(this)),this.io.connection_points.set_expected_output_types_function(this._expected_output_types.bind(this))}_expected_inputs_count(){const t=this.io.connections.inputConnections();return t?t.length+1:1}_expected_input_types(){const t=[],e=Uo.FLOAT,n=this.io.connections.inputConnections(),i=this._expected_inputs_count();for(let s=0;s<i;s++)if(n){const i=n[s];if(i){const e=i.src_connection_point().type();t.push(e)}else t.push(e)}else t.push(e);return t}_expected_output_types(){const t=[],e=this._expected_input_types();for(let n=0;n<e.length;n++)t.push(e[n]);return t}_expected_input_name(t){const e=this.io.connections.inputConnection(t);if(e){return e.src_connection_point().name()}return`in${t}`}_expected_output_name(t){return this._expected_input_name(t)}child_expected_input_connection_point_types(){return this._expected_input_types()}child_expected_output_connection_point_types(){return this._expected_output_types()}child_expected_input_connection_point_name(t){return this._expected_input_name(t)}child_expected_output_connection_point_name(t){return this._expected_output_name(t)}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}set_lines_block_start(t,e){const n=[],i=this.io.inputs.namedInputConnectionPoints();for(let t=0;t<i.length;t++){const e=i[t],s=`${e.type()} ${this.glVarName(e.name())} = ${mf.any(this.variableForInput(e.name()))}`;n.push(s)}n.push(\\\\\\\"if(true){\\\\\\\");const s=this.io.connections.inputConnections();if(s)for(let t of s)if(t){const i=t.dest_connection_point(),s=mf.any(this.variableForInput(i.name())),r=`\\\\t${i.type()} ${e.glVarName(i.name())} = ${s}`;n.push(r)}t.addBodyLines(e,n)}set_lines_block_end(t,e){t.addBodyLines(e,[\\\\\\\"}\\\\\\\"])}setLines(t){}}const SI=new class extends ua{};class CI extends EI{constructor(){super(...arguments),this.paramsConfig=SI}static type(){return\\\\\\\"subnet\\\\\\\"}}var NI;!function(t){t.START_INDEX=\\\\\\\"i\\\\\\\",t.MAX=\\\\\\\"max\\\\\\\",t.STEP=\\\\\\\"step\\\\\\\"}(NI||(NI={}));const LI={[NI.START_INDEX]:0,[NI.MAX]:10,[NI.STEP]:1};const OI=new class extends ua{constructor(){super(...arguments),this.start=ha.FLOAT(0),this.max=ha.FLOAT(10,{range:[0,100],rangeLocked:[!1,!1]}),this.step=ha.FLOAT(1)}};class PI extends EI{constructor(){super(...arguments),this.paramsConfig=OI}static type(){return\\\\\\\"forLoop\\\\\\\"}paramDefaultValue(t){return LI[t]}_expected_inputs_count(){const t=this.io.connections.inputConnections();return t?t.length+1:1}_expected_input_types(){const t=[],e=Uo.FLOAT,n=this.io.connections.inputConnections(),i=this._expected_inputs_count();for(let s=0;s<i;s++)if(n){const i=n[s];if(i){const e=i.src_connection_point().type();t.push(e)}else t.push(e)}else t.push(e);return t}_expected_output_types(){const t=[],e=this._expected_input_types();for(let n=0;n<e.length;n++)t.push(e[n]);return t}_expected_input_name(t){const e=this.io.connections.inputConnection(t);if(e){return e.src_connection_point().name()}return`in${t}`}_expected_output_name(t){return this._expected_input_name(t+0)}child_expected_input_connection_point_types(){return this._expected_input_types()}child_expected_input_connection_point_name(t){return this._expected_input_name(t)}child_expected_output_connection_point_types(){return this._expected_output_types()}child_expected_output_connection_point_name(t){return this._expected_output_name(t)}set_lines_block_start(t,e){const n=[],i=this.io.inputs.namedInputConnectionPoints();for(let t=0;t<i.length;t++){const e=i[t],s=`${e.type()} ${this.glVarName(e.name())} = ${mf.any(this.variableForInput(e.name()))}`;n.push(s)}const s=this.io.connections.inputConnections();if(s)for(let t of s)if(t&&t.input_index>=0){const e=t.dest_connection_point(),i=mf.any(this.variableForInput(e.name())),s=`${e.type()} ${this.glVarName(e.name())} = ${i}`;n.push(s)}const r=this.pv.start,o=this.pv.max,a=this.pv.step,l=mf.float(r),c=mf.float(o),h=mf.float(a),u=this.glVarName(\\\\\\\"i\\\\\\\"),d=`for(float ${u} = ${l}; ${u} < ${c}; ${u}+= ${h}){`;n.push(d);const p=`\\\\tfloat ${e.glVarName(NI.START_INDEX)} = ${u}`;if(n.push(p),s)for(let t of s)if(t&&t.input_index>=0){const i=t.dest_connection_point(),s=this.glVarName(i.name()),r=`\\\\t${i.type()} ${e.glVarName(i.name())} = ${s}`;n.push(r)}t.addBodyLines(e,n)}setLines(t){}}const RI=new class extends ua{};class II extends gf{constructor(){super(...arguments),this.paramsConfig=RI}static type(){return\\\\\\\"globals\\\\\\\"}initializeNode(){super.initializeNode(),this.lifecycle.add_on_add_hook((()=>{var t,e;null===(e=null===(t=this.material_node)||void 0===t?void 0:t.assemblerController)||void 0===e||e.add_globals_outputs(this)}))}setLines(t){t.assembler().set_node_lines_globals(this,t)}}const FI=new class extends ua{constructor(){super(...arguments),this.hsluv=ha.VECTOR3([1,1,1])}};class DI extends gf{constructor(){super(...arguments),this.paramsConfig=FI}static type(){return\\\\\\\"hsluvToRgb\\\\\\\"}initializeNode(){super.initializeNode(),this.io.outputs.setNamedOutputConnectionPoints([new qo(\\\\\\\"rgb\\\\\\\",Uo.VEC3)])}setLines(t){const e=[],n=[];e.push(new Cf(this,\\\\\\\"// from https://github.com/williammalo/hsluv-glsl\\\\n/*\\\\nHSLUV-GLSL v4.2\\\\nHSLUV is a human-friendly alternative to HSL. ( http://www.hsluv.org )\\\\nGLSL port by William Malo ( https://github.com/williammalo )\\\\nPut this code in your fragment shader.\\\\n*/\\\\n\\\\nvec3 hsluv_intersectLineLine(vec3 line1x, vec3 line1y, vec3 line2x, vec3 line2y) {\\\\n\\\\treturn (line1y - line2y) / (line2x - line1x);\\\\n}\\\\n\\\\nvec3 hsluv_distanceFromPole(vec3 pointx,vec3 pointy) {\\\\n\\\\treturn sqrt(pointx*pointx + pointy*pointy);\\\\n}\\\\n\\\\nvec3 hsluv_lengthOfRayUntilIntersect(float theta, vec3 x, vec3 y) {\\\\n\\\\tvec3 len = y / (sin(theta) - x * cos(theta));\\\\n\\\\tif (len.r < 0.0) {len.r=1000.0;}\\\\n\\\\tif (len.g < 0.0) {len.g=1000.0;}\\\\n\\\\tif (len.b < 0.0) {len.b=1000.0;}\\\\n\\\\treturn len;\\\\n}\\\\n\\\\nfloat hsluv_maxSafeChromaForL(float L){\\\\n\\\\tmat3 m2 = mat3(\\\\n\\\\t\\\\t 3.2409699419045214  ,-0.96924363628087983 , 0.055630079696993609,\\\\n\\\\t\\\\t-1.5373831775700935  , 1.8759675015077207  ,-0.20397695888897657 ,\\\\n\\\\t\\\\t-0.49861076029300328 , 0.041555057407175613, 1.0569715142428786  \\\\n\\\\t);\\\\n\\\\tfloat sub0 = L + 16.0;\\\\n\\\\tfloat sub1 = sub0 * sub0 * sub0 * .000000641;\\\\n\\\\tfloat sub2 = sub1 > 0.0088564516790356308 ? sub1 : L / 903.2962962962963;\\\\n\\\\n\\\\tvec3 top1   = (284517.0 * m2[0] - 94839.0  * m2[2]) * sub2;\\\\n\\\\tvec3 bottom = (632260.0 * m2[2] - 126452.0 * m2[1]) * sub2;\\\\n\\\\tvec3 top2   = (838422.0 * m2[2] + 769860.0 * m2[1] + 731718.0 * m2[0]) * L * sub2;\\\\n\\\\n\\\\tvec3 bounds0x = top1 / bottom;\\\\n\\\\tvec3 bounds0y = top2 / bottom;\\\\n\\\\n\\\\tvec3 bounds1x =              top1 / (bottom+126452.0);\\\\n\\\\tvec3 bounds1y = (top2-769860.0*L) / (bottom+126452.0);\\\\n\\\\n\\\\tvec3 xs0 = hsluv_intersectLineLine(bounds0x, bounds0y, -1.0/bounds0x, vec3(0.0) );\\\\n\\\\tvec3 xs1 = hsluv_intersectLineLine(bounds1x, bounds1y, -1.0/bounds1x, vec3(0.0) );\\\\n\\\\n\\\\tvec3 lengths0 = hsluv_distanceFromPole( xs0, bounds0y + xs0 * bounds0x );\\\\n\\\\tvec3 lengths1 = hsluv_distanceFromPole( xs1, bounds1y + xs1 * bounds1x );\\\\n\\\\n\\\\treturn  min(lengths0.r,\\\\n\\\\t\\\\t\\\\tmin(lengths1.r,\\\\n\\\\t\\\\t\\\\tmin(lengths0.g,\\\\n\\\\t\\\\t\\\\tmin(lengths1.g,\\\\n\\\\t\\\\t\\\\tmin(lengths0.b,\\\\n\\\\t\\\\t\\\\t\\\\tlengths1.b)))));\\\\n}\\\\n\\\\nfloat hsluv_maxChromaForLH(float L, float H) {\\\\n\\\\n\\\\tfloat hrad = radians(H);\\\\n\\\\n\\\\tmat3 m2 = mat3(\\\\n\\\\t\\\\t 3.2409699419045214  ,-0.96924363628087983 , 0.055630079696993609,\\\\n\\\\t\\\\t-1.5373831775700935  , 1.8759675015077207  ,-0.20397695888897657 ,\\\\n\\\\t\\\\t-0.49861076029300328 , 0.041555057407175613, 1.0569715142428786  \\\\n\\\\t);\\\\n\\\\tfloat sub1 = pow(L + 16.0, 3.0) / 1560896.0;\\\\n\\\\tfloat sub2 = sub1 > 0.0088564516790356308 ? sub1 : L / 903.2962962962963;\\\\n\\\\n\\\\tvec3 top1   = (284517.0 * m2[0] - 94839.0  * m2[2]) * sub2;\\\\n\\\\tvec3 bottom = (632260.0 * m2[2] - 126452.0 * m2[1]) * sub2;\\\\n\\\\tvec3 top2   = (838422.0 * m2[2] + 769860.0 * m2[1] + 731718.0 * m2[0]) * L * sub2;\\\\n\\\\n\\\\tvec3 bound0x = top1 / bottom;\\\\n\\\\tvec3 bound0y = top2 / bottom;\\\\n\\\\n\\\\tvec3 bound1x =              top1 / (bottom+126452.0);\\\\n\\\\tvec3 bound1y = (top2-769860.0*L) / (bottom+126452.0);\\\\n\\\\n\\\\tvec3 lengths0 = hsluv_lengthOfRayUntilIntersect(hrad, bound0x, bound0y );\\\\n\\\\tvec3 lengths1 = hsluv_lengthOfRayUntilIntersect(hrad, bound1x, bound1y );\\\\n\\\\n\\\\treturn  min(lengths0.r,\\\\n\\\\t\\\\t\\\\tmin(lengths1.r,\\\\n\\\\t\\\\t\\\\tmin(lengths0.g,\\\\n\\\\t\\\\t\\\\tmin(lengths1.g,\\\\n\\\\t\\\\t\\\\tmin(lengths0.b,\\\\n\\\\t\\\\t\\\\t\\\\tlengths1.b)))));\\\\n}\\\\n\\\\nfloat hsluv_fromLinear(float c) {\\\\n\\\\treturn c <= 0.0031308 ? 12.92 * c : 1.055 * pow(c, 1.0 / 2.4) - 0.055;\\\\n}\\\\nvec3 hsluv_fromLinear(vec3 c) {\\\\n\\\\treturn vec3( hsluv_fromLinear(c.r), hsluv_fromLinear(c.g), hsluv_fromLinear(c.b) );\\\\n}\\\\n\\\\nfloat hsluv_toLinear(float c) {\\\\n\\\\treturn c > 0.04045 ? pow((c + 0.055) / (1.0 + 0.055), 2.4) : c / 12.92;\\\\n}\\\\n\\\\nvec3 hsluv_toLinear(vec3 c) {\\\\n\\\\treturn vec3( hsluv_toLinear(c.r), hsluv_toLinear(c.g), hsluv_toLinear(c.b) );\\\\n}\\\\n\\\\nfloat hsluv_yToL(float Y){\\\\n\\\\treturn Y <= 0.0088564516790356308 ? Y * 903.2962962962963 : 116.0 * pow(Y, 1.0 / 3.0) - 16.0;\\\\n}\\\\n\\\\nfloat hsluv_lToY(float L) {\\\\n\\\\treturn L <= 8.0 ? L / 903.2962962962963 : pow((L + 16.0) / 116.0, 3.0);\\\\n}\\\\n\\\\nvec3 xyzToRgb(vec3 tuple) {\\\\n\\\\tconst mat3 m = mat3( \\\\n\\\\t\\\\t3.2409699419045214  ,-1.5373831775700935 ,-0.49861076029300328 ,\\\\n\\\\t\\\\t-0.96924363628087983 , 1.8759675015077207 , 0.041555057407175613,\\\\n\\\\t\\\\t0.055630079696993609,-0.20397695888897657, 1.0569715142428786  );\\\\n\\\\t\\\\n\\\\treturn hsluv_fromLinear(tuple*m);\\\\n}\\\\n\\\\nvec3 rgbToXyz(vec3 tuple) {\\\\n\\\\tconst mat3 m = mat3(\\\\n\\\\t\\\\t0.41239079926595948 , 0.35758433938387796, 0.18048078840183429 ,\\\\n\\\\t\\\\t0.21263900587151036 , 0.71516867876775593, 0.072192315360733715,\\\\n\\\\t\\\\t0.019330818715591851, 0.11919477979462599, 0.95053215224966058 \\\\n\\\\t);\\\\n\\\\treturn hsluv_toLinear(tuple) * m;\\\\n}\\\\n\\\\nvec3 xyzToLuv(vec3 tuple){\\\\n\\\\tfloat X = tuple.x;\\\\n\\\\tfloat Y = tuple.y;\\\\n\\\\tfloat Z = tuple.z;\\\\n\\\\n\\\\tfloat L = hsluv_yToL(Y);\\\\n\\\\t\\\\n\\\\tfloat div = 1./dot(tuple,vec3(1,15,3)); \\\\n\\\\n\\\\treturn vec3(\\\\n\\\\t\\\\t1.,\\\\n\\\\t\\\\t(52. * (X*div) - 2.57179),\\\\n\\\\t\\\\t(117.* (Y*div) - 6.08816)\\\\n\\\\t) * L;\\\\n}\\\\n\\\\n\\\\nvec3 luvToXyz(vec3 tuple) {\\\\n\\\\tfloat L = tuple.x;\\\\n\\\\n\\\\tfloat U = tuple.y / (13.0 * L) + 0.19783000664283681;\\\\n\\\\tfloat V = tuple.z / (13.0 * L) + 0.468319994938791;\\\\n\\\\n\\\\tfloat Y = hsluv_lToY(L);\\\\n\\\\tfloat X = 2.25 * U * Y / V;\\\\n\\\\tfloat Z = (3./V - 5.)*Y - (X/3.);\\\\n\\\\n\\\\treturn vec3(X, Y, Z);\\\\n}\\\\n\\\\nvec3 luvToLch(vec3 tuple) {\\\\n\\\\tfloat L = tuple.x;\\\\n\\\\tfloat U = tuple.y;\\\\n\\\\tfloat V = tuple.z;\\\\n\\\\n\\\\tfloat C = length(tuple.yz);\\\\n\\\\tfloat H = degrees(atan(V,U));\\\\n\\\\tif (H < 0.0) {\\\\n\\\\t\\\\tH = 360.0 + H;\\\\n\\\\t}\\\\n\\\\t\\\\n\\\\treturn vec3(L, C, H);\\\\n}\\\\n\\\\nvec3 lchToLuv(vec3 tuple) {\\\\n\\\\tfloat hrad = radians(tuple.b);\\\\n\\\\treturn vec3(\\\\n\\\\t\\\\ttuple.r,\\\\n\\\\t\\\\tcos(hrad) * tuple.g,\\\\n\\\\t\\\\tsin(hrad) * tuple.g\\\\n\\\\t);\\\\n}\\\\n\\\\nvec3 hsluvToLch(vec3 tuple) {\\\\n\\\\ttuple.g *= hsluv_maxChromaForLH(tuple.b, tuple.r) * .01;\\\\n\\\\treturn tuple.bgr;\\\\n}\\\\n\\\\nvec3 lchToHsluv(vec3 tuple) {\\\\n\\\\ttuple.g /= hsluv_maxChromaForLH(tuple.r, tuple.b) * .01;\\\\n\\\\treturn tuple.bgr;\\\\n}\\\\n\\\\nvec3 hpluvToLch(vec3 tuple) {\\\\n\\\\ttuple.g *= hsluv_maxSafeChromaForL(tuple.b) * .01;\\\\n\\\\treturn tuple.bgr;\\\\n}\\\\n\\\\nvec3 lchToHpluv(vec3 tuple) {\\\\n\\\\ttuple.g /= hsluv_maxSafeChromaForL(tuple.r) * .01;\\\\n\\\\treturn tuple.bgr;\\\\n}\\\\n\\\\nvec3 lchToRgb(vec3 tuple) {\\\\n\\\\treturn xyzToRgb(luvToXyz(lchToLuv(tuple)));\\\\n}\\\\n\\\\nvec3 rgbToLch(vec3 tuple) {\\\\n\\\\treturn luvToLch(xyzToLuv(rgbToXyz(tuple)));\\\\n}\\\\n\\\\nvec3 hsluvToRgb(vec3 tuple) {\\\\n\\\\treturn lchToRgb(hsluvToLch(tuple));\\\\n}\\\\n\\\\nvec3 rgbToHsluv(vec3 tuple) {\\\\n\\\\treturn lchToHsluv(rgbToLch(tuple));\\\\n}\\\\n\\\\nvec3 hpluvToRgb(vec3 tuple) {\\\\n\\\\treturn lchToRgb(hpluvToLch(tuple));\\\\n}\\\\n\\\\nvec3 rgbToHpluv(vec3 tuple) {\\\\n\\\\treturn lchToHpluv(rgbToLch(tuple));\\\\n}\\\\n\\\\nvec3 luvToRgb(vec3 tuple){\\\\n\\\\treturn xyzToRgb(luvToXyz(tuple));\\\\n}\\\\n\\\\n// allow vec4's\\\\nvec4   xyzToRgb(vec4 c) {return vec4(   xyzToRgb( vec3(c.x,c.y,c.z) ), c.a);}\\\\nvec4   rgbToXyz(vec4 c) {return vec4(   rgbToXyz( vec3(c.x,c.y,c.z) ), c.a);}\\\\nvec4   xyzToLuv(vec4 c) {return vec4(   xyzToLuv( vec3(c.x,c.y,c.z) ), c.a);}\\\\nvec4   luvToXyz(vec4 c) {return vec4(   luvToXyz( vec3(c.x,c.y,c.z) ), c.a);}\\\\nvec4   luvToLch(vec4 c) {return vec4(   luvToLch( vec3(c.x,c.y,c.z) ), c.a);}\\\\nvec4   lchToLuv(vec4 c) {return vec4(   lchToLuv( vec3(c.x,c.y,c.z) ), c.a);}\\\\nvec4 hsluvToLch(vec4 c) {return vec4( hsluvToLch( vec3(c.x,c.y,c.z) ), c.a);}\\\\nvec4 lchToHsluv(vec4 c) {return vec4( lchToHsluv( vec3(c.x,c.y,c.z) ), c.a);}\\\\nvec4 hpluvToLch(vec4 c) {return vec4( hpluvToLch( vec3(c.x,c.y,c.z) ), c.a);}\\\\nvec4 lchToHpluv(vec4 c) {return vec4( lchToHpluv( vec3(c.x,c.y,c.z) ), c.a);}\\\\nvec4   lchToRgb(vec4 c) {return vec4(   lchToRgb( vec3(c.x,c.y,c.z) ), c.a);}\\\\nvec4   rgbToLch(vec4 c) {return vec4(   rgbToLch( vec3(c.x,c.y,c.z) ), c.a);}\\\\nvec4 hsluvToRgb(vec4 c) {return vec4( hsluvToRgb( vec3(c.x,c.y,c.z) ), c.a);}\\\\nvec4 rgbToHsluv(vec4 c) {return vec4( rgbToHsluv( vec3(c.x,c.y,c.z) ), c.a);}\\\\nvec4 hpluvToRgb(vec4 c) {return vec4( hpluvToRgb( vec3(c.x,c.y,c.z) ), c.a);}\\\\nvec4 rgbToHpluv(vec4 c) {return vec4( rgbToHpluv( vec3(c.x,c.y,c.z) ), c.a);}\\\\nvec4   luvToRgb(vec4 c) {return vec4(   luvToRgb( vec3(c.x,c.y,c.z) ), c.a);}\\\\n// allow 3 floats\\\\nvec3   xyzToRgb(float x, float y, float z) {return   xyzToRgb( vec3(x,y,z) );}\\\\nvec3   rgbToXyz(float x, float y, float z) {return   rgbToXyz( vec3(x,y,z) );}\\\\nvec3   xyzToLuv(float x, float y, float z) {return   xyzToLuv( vec3(x,y,z) );}\\\\nvec3   luvToXyz(float x, float y, float z) {return   luvToXyz( vec3(x,y,z) );}\\\\nvec3   luvToLch(float x, float y, float z) {return   luvToLch( vec3(x,y,z) );}\\\\nvec3   lchToLuv(float x, float y, float z) {return   lchToLuv( vec3(x,y,z) );}\\\\nvec3 hsluvToLch(float x, float y, float z) {return hsluvToLch( vec3(x,y,z) );}\\\\nvec3 lchToHsluv(float x, float y, float z) {return lchToHsluv( vec3(x,y,z) );}\\\\nvec3 hpluvToLch(float x, float y, float z) {return hpluvToLch( vec3(x,y,z) );}\\\\nvec3 lchToHpluv(float x, float y, float z) {return lchToHpluv( vec3(x,y,z) );}\\\\nvec3   lchToRgb(float x, float y, float z) {return   lchToRgb( vec3(x,y,z) );}\\\\nvec3   rgbToLch(float x, float y, float z) {return   rgbToLch( vec3(x,y,z) );}\\\\nvec3 hsluvToRgb(float x, float y, float z) {return hsluvToRgb( vec3(x,y,z) );}\\\\nvec3 rgbToHsluv(float x, float y, float z) {return rgbToHsluv( vec3(x,y,z) );}\\\\nvec3 hpluvToRgb(float x, float y, float z) {return hpluvToRgb( vec3(x,y,z) );}\\\\nvec3 rgbToHpluv(float x, float y, float z) {return rgbToHpluv( vec3(x,y,z) );}\\\\nvec3   luvToRgb(float x, float y, float z) {return   luvToRgb( vec3(x,y,z) );}\\\\n// allow 4 floats\\\\nvec4   xyzToRgb(float x, float y, float z, float a) {return   xyzToRgb( vec4(x,y,z,a) );}\\\\nvec4   rgbToXyz(float x, float y, float z, float a) {return   rgbToXyz( vec4(x,y,z,a) );}\\\\nvec4   xyzToLuv(float x, float y, float z, float a) {return   xyzToLuv( vec4(x,y,z,a) );}\\\\nvec4   luvToXyz(float x, float y, float z, float a) {return   luvToXyz( vec4(x,y,z,a) );}\\\\nvec4   luvToLch(float x, float y, float z, float a) {return   luvToLch( vec4(x,y,z,a) );}\\\\nvec4   lchToLuv(float x, float y, float z, float a) {return   lchToLuv( vec4(x,y,z,a) );}\\\\nvec4 hsluvToLch(float x, float y, float z, float a) {return hsluvToLch( vec4(x,y,z,a) );}\\\\nvec4 lchToHsluv(float x, float y, float z, float a) {return lchToHsluv( vec4(x,y,z,a) );}\\\\nvec4 hpluvToLch(float x, float y, float z, float a) {return hpluvToLch( vec4(x,y,z,a) );}\\\\nvec4 lchToHpluv(float x, float y, float z, float a) {return lchToHpluv( vec4(x,y,z,a) );}\\\\nvec4   lchToRgb(float x, float y, float z, float a) {return   lchToRgb( vec4(x,y,z,a) );}\\\\nvec4   rgbToLch(float x, float y, float z, float a) {return   rgbToLch( vec4(x,y,z,a) );}\\\\nvec4 hsluvToRgb(float x, float y, float z, float a) {return hsluvToRgb( vec4(x,y,z,a) );}\\\\nvec4 rgbToHslul(float x, float y, float z, float a) {return rgbToHsluv( vec4(x,y,z,a) );}\\\\nvec4 hpluvToRgb(float x, float y, float z, float a) {return hpluvToRgb( vec4(x,y,z,a) );}\\\\nvec4 rgbToHpluv(float x, float y, float z, float a) {return rgbToHpluv( vec4(x,y,z,a) );}\\\\nvec4   luvToRgb(float x, float y, float z, float a) {return   luvToRgb( vec4(x,y,z,a) );}\\\\n\\\\n/*\\\\nEND HSLUV-GLSL\\\\n*/\\\\n\\\\n\\\\n// from https://gist.github.com/mattatz/44f081cac87e2f7c8980\\\\n// converted to glsl by gui@polygonjs.com\\\\n// and made function names consistent with the ones above\\\\n/*\\\\n * Conversion between RGB and LAB colorspace.\\\\n * Import from flowabs glsl program : https://code.google.com/p/flowabs/source/browse/glsl/?r=f36cbdcf7790a28d90f09e2cf89ec9a64911f138\\\\n */\\\\n\\\\n\\\\n\\\\nvec3 xyzToLab( vec3 c ) {\\\\n\\\\tvec3 n = c / vec3(95.047, 100, 108.883);\\\\n\\\\tvec3 v;\\\\n\\\\tv.x = ( n.x > 0.008856 ) ? pow( n.x, 1.0 / 3.0 ) : ( 7.787 * n.x ) + ( 16.0 / 116.0 );\\\\n\\\\tv.y = ( n.y > 0.008856 ) ? pow( n.y, 1.0 / 3.0 ) : ( 7.787 * n.y ) + ( 16.0 / 116.0 );\\\\n\\\\tv.z = ( n.z > 0.008856 ) ? pow( n.z, 1.0 / 3.0 ) : ( 7.787 * n.z ) + ( 16.0 / 116.0 );\\\\n\\\\treturn vec3(( 116.0 * v.y ) - 16.0, 500.0 * ( v.x - v.y ), 200.0 * ( v.y - v.z ));\\\\n}\\\\n\\\\nvec3 rgbToLab( vec3 c ) {\\\\n\\\\tvec3 lab = xyzToLab( rgbToXyz( c ) );\\\\n\\\\treturn vec3( lab.x / 100.0, 0.5 + 0.5 * ( lab.y / 127.0 ), 0.5 + 0.5 * ( lab.z / 127.0 ));\\\\n}\\\\n\\\\nvec3 labToXyz( vec3 c ) {\\\\n\\\\tfloat fy = ( c.x + 16.0 ) / 116.0;\\\\n\\\\tfloat fx = c.y / 500.0 + fy;\\\\n\\\\tfloat fz = fy - c.z / 200.0;\\\\n\\\\treturn vec3(\\\\n\\\\t\\\\t 95.047 * (( fx > 0.206897 ) ? fx * fx * fx : ( fx - 16.0 / 116.0 ) / 7.787),\\\\n\\\\t\\\\t100.000 * (( fy > 0.206897 ) ? fy * fy * fy : ( fy - 16.0 / 116.0 ) / 7.787),\\\\n\\\\t\\\\t108.883 * (( fz > 0.206897 ) ? fz * fz * fz : ( fz - 16.0 / 116.0 ) / 7.787)\\\\n\\\\t);\\\\n}\\\\n\\\\n\\\\n\\\\nvec3 labToRgb( vec3 c ) {\\\\n\\\\treturn xyzToRgb( labToXyz( vec3(100.0 * c.x, 2.0 * 127.0 * (c.y - 0.5), 2.0 * 127.0 * (c.z - 0.5)) ) );\\\\n}\\\\\\\"));const i=mf.vector3(this.variableForInputParam(this.p.hsluv)),s=this.glVarName(\\\\\\\"rgb\\\\\\\");n.push(`vec3 ${s} = hsluvToRgb(${i}.x * 360.0, ${i}.y * 100.0, ${i}.z * 100.0)`),t.addDefinitions(this,e),t.addBodyLines(this,n)}}const BI=new class extends ua{constructor(){super(...arguments),this.hsv=ha.VECTOR3([1,1,1])}};class zI extends gf{constructor(){super(...arguments),this.paramsConfig=BI}static type(){return\\\\\\\"hsvToRgb\\\\\\\"}initializeNode(){super.initializeNode(),this.io.outputs.setNamedOutputConnectionPoints([new qo(\\\\\\\"rgb\\\\\\\",Uo.VEC3)])}setLines(t){const e=[],n=[];e.push(new Cf(this,\\\\\\\"// https://github.com/hughsk/glsl-hsv2rgb\\\\n// https://stackoverflow.com/questions/15095909/from-rgb-to-hsv-in-opengl-glsl\\\\nvec3 hsv2rgb(vec3 c) {\\\\n\\\\tvec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0);\\\\n\\\\tvec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www);\\\\n\\\\treturn c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y);\\\\n}\\\\\\\"));const i=mf.vector3(this.variableForInputParam(this.p.hsv)),s=this.glVarName(\\\\\\\"rgb\\\\\\\");n.push(`vec3 ${s} = hsv2rgb(${i})`),t.addDefinitions(this,e),t.addBodyLines(this,n)}}const kI=\\\\\\\"condition\\\\\\\";const UI=new class extends ua{};class GI extends CI{constructor(){super(...arguments),this.paramsConfig=UI}static type(){return\\\\\\\"ifThen\\\\\\\"}_expected_inputs_count(){const t=this.io.connections.inputConnections();return t?Math.max(t.length+1,2):2}_expected_input_types(){const t=[Uo.BOOL],e=Uo.FLOAT,n=this.io.connections.inputConnections(),i=this._expected_inputs_count();for(let s=1;s<i;s++)if(n){const i=n[s];if(i){const e=i.src_connection_point().type();t.push(e)}else t.push(e)}else t.push(e);return t}_expected_output_types(){const t=[],e=this._expected_input_types();for(let n=1;n<e.length;n++)t.push(e[n]);return t}_expected_input_name(t){if(0==t)return kI;{const e=this.io.connections.inputConnection(t);if(e){return e.src_connection_point().name()}return`in${t}`}}_expected_output_name(t){return this._expected_input_name(t+1)}child_expected_input_connection_point_types(){return this._expected_output_types()}child_expected_input_connection_point_name(t){return this._expected_output_name(t)}child_expected_output_connection_point_types(){return this._expected_output_types()}child_expected_output_connection_point_name(t){return this._expected_output_name(t)}set_lines_block_start(t,e){const n=[],i=this.io.inputs.namedInputConnectionPoints();for(let t=1;t<i.length;t++){const e=i[t],s=`${e.type()} ${this.glVarName(e.name())} = ${mf.any(this.variableForInput(e.name()))}`;n.push(s)}const s=`if(${mf.any(this.variableForInput(kI))}){`;n.push(s);const r=this.io.connections.inputConnections();if(r)for(let t of r)if(t&&0!=t.input_index){const i=t.dest_connection_point(),s=mf.any(this.variableForInput(i.name())),r=`\\\\t${i.type()} ${e.glVarName(i.name())} = ${s}`;n.push(r)}t.addBodyLines(e,n)}setLines(t){}}const VI=new class extends ua{constructor(){super(...arguments),this.center=ha.VECTOR3([0,0,0]),this.cameraPos=ha.VECTOR3([0,0,0]),this.uv=ha.VECTOR2([0,0]),this.tilesCount=ha.INTEGER(8,{range:[0,32],rangeLocked:[!0,!1]}),this.offset=ha.FLOAT(0)}};class HI extends gf{constructor(){super(...arguments),this.paramsConfig=VI}static type(){return\\\\\\\"impostorUv\\\\\\\"}initializeNode(){super.initializeNode(),this.io.outputs.setNamedOutputConnectionPoints([new qo(\\\\\\\"uv\\\\\\\",Uo.VEC2)])}setLines(t){const e=[];t.addDefinitions(this,[new Cf(this,PR),new Cf(this,\\\\\\\"// ANGLE_NORMALIZER = 1 / (2*PI)\\\\n# define IMPOSTOR_UV_ANGLE_NORMALIZER 0.15915494309189535\\\\nvec2 impostor_uv(vec3 center, vec3 camera_pos, vec2 imp_uv, float tiles_count, float offset){\\\\n\\\\timp_uv.x /= tiles_count;\\\\n\\\\n\\\\tcamera_pos.y = center.y;\\\\n\\\\tvec3 delta = normalize(center - camera_pos);\\\\n\\\\tvec3 angle_start = vec3(-1.0,0.0,0.0);\\\\n\\\\tfloat angle = vector_angle(delta, angle_start) + offset;\\\\n\\\\tangle *= IMPOSTOR_UV_ANGLE_NORMALIZER;\\\\n\\\\tangle *= tiles_count;\\\\n\\\\tangle = floor(angle);\\\\n\\\\tangle /= tiles_count;\\\\n\\\\timp_uv.x -= angle;\\\\n\\\\n\\\\treturn imp_uv;\\\\n}\\\\n\\\\\\\")]);const n=mf.vector3(this.variableForInputParam(this.p.center)),i=mf.vector3(this.variableForInputParam(this.p.cameraPos)),s=mf.vector2(this.variableForInputParam(this.p.uv)),r=mf.float(this.variableForInputParam(this.p.tilesCount)),o=mf.float(this.variableForInputParam(this.p.offset)),a=this.glVarName(\\\\\\\"uv\\\\\\\"),l=[n,i,s,r,o].join(\\\\\\\", \\\\\\\");e.push(`vec2 ${a} = impostor_uv(${l})`),t.addBodyLines(this,e)}}const jI=\\\\\\\"position\\\\\\\",WI=\\\\\\\"normal\\\\\\\",qI=\\\\\\\"instancePosition\\\\\\\",XI=\\\\\\\"instanceOrientation\\\\\\\",YI=\\\\\\\"instanceScale\\\\\\\";const $I=new class extends ua{constructor(){super(...arguments),this.position=ha.VECTOR3([0,0,0]),this.normal=ha.VECTOR3([0,0,1]),this.instancePosition=ha.VECTOR3([0,0,0]),this.instanceOrientation=ha.VECTOR4([0,0,0,0]),this.instanceScale=ha.VECTOR3([1,1,1])}};class JI extends gf{constructor(){super(...arguments),this.paramsConfig=$I}static type(){return\\\\\\\"instanceTransform\\\\\\\"}initializeNode(){super.initializeNode(),this.io.outputs.setNamedOutputConnectionPoints([new qo(this.gl_output_name_position(),Uo.VEC3),new qo(this.gl_output_name_normal(),Uo.VEC3)])}setLines(t){const e=[],n=[];n.push(new Cf(this,PR));const i=this.io.inputs.named_input(this.p.position.name())?mf.float(this.variableForInputParam(this.p.position)):this._default_position(),s=this.io.inputs.named_input(this.p.normal.name())?mf.float(this.variableForInputParam(this.p.normal)):this._default_normal(),r=this.io.inputs.named_input(this.p.instancePosition.name())?mf.float(this.variableForInputParam(this.p.instancePosition)):this._default_instancePosition(t),o=this.io.inputs.named_input(this.p.instanceOrientation.name())?mf.float(this.variableForInputParam(this.p.instanceOrientation)):this._default_input_instanceOrientation(t),a=this.io.inputs.named_input(this.p.instanceScale.name())?mf.float(this.variableForInputParam(this.p.instanceScale)):this._default_input_instanceScale(t),l=this.glVarName(this.gl_output_name_position()),c=this.glVarName(this.gl_output_name_normal());e.push(`vec3 ${l} = vec3(${i})`),e.push(`${l} *= ${a}`),e.push(`${l} = rotateWithQuat( ${l}, ${o} )`),e.push(`${l} += ${r}`),e.push(`vec3 ${c} = vec3(${s})`),e.push(`${c} = rotateWithQuat( ${c}, ${o} )`),t.addBodyLines(this,e),t.addDefinitions(this,n)}gl_output_name_position(){return\\\\\\\"position\\\\\\\"}gl_output_name_normal(){return\\\\\\\"normal\\\\\\\"}_default_position(){return jI}_default_normal(){return WI}_default_instancePosition(t){var e;return null===(e=t.assembler().globals_handler)||void 0===e?void 0:e.read_attribute(this,Uo.VEC3,qI,t)}_default_input_instanceOrientation(t){var e;return null===(e=t.assembler().globals_handler)||void 0===e?void 0:e.read_attribute(this,Uo.VEC4,XI,t)}_default_input_instanceScale(t){var e;return null===(e=t.assembler().globals_handler)||void 0===e?void 0:e.read_attribute(this,Uo.VEC3,YI,t)}}class ZI extends NP{static type(){return\\\\\\\"length\\\\\\\"}initializeNode(){super.initializeNode(),this.io.connection_points.set_input_name_function(this._gl_input_name.bind(this)),this.io.connection_points.set_expected_output_types_function(this._expected_output_types.bind(this))}_gl_input_name(t){return[\\\\\\\"x\\\\\\\"][t]}gl_method_name(){return\\\\\\\"length\\\\\\\"}_expected_output_types(){return[Uo.FLOAT]}}const KI=new class extends ua{constructor(){super(...arguments),this.color=ha.VECTOR3([1,1,1])}};class QI extends gf{constructor(){super(...arguments),this.paramsConfig=KI}static type(){return\\\\\\\"luminance\\\\\\\"}initializeNode(){super.initializeNode(),this.io.outputs.setNamedOutputConnectionPoints([new qo(\\\\\\\"lum\\\\\\\",Uo.FLOAT)])}setLines(t){const e=mf.vector3(this.variableForInputParam(this.p.color)),n=`float ${this.glVarName(\\\\\\\"lum\\\\\\\")} = linearToRelativeLuminance(${e})`;t.addBodyLines(this,[n])}}const tF={max:1};class eF extends LP{static type(){return\\\\\\\"maxLength\\\\\\\"}_expected_input_types(){return[this.io.connection_points.first_input_connection_type()||Uo.VEC3,Uo.FLOAT]}_gl_input_name(t){return[\\\\\\\"val\\\\\\\",\\\\\\\"max\\\\\\\"][t]}paramDefaultValue(t){return tF[t]}gl_method_name(){return\\\\\\\"maxLength\\\\\\\"}gl_function_definitions(){return[new Cf(this,\\\\\\\"//\\\\n//\\\\n// CLAMP_LENGTH\\\\n//\\\\n//\\\\nfloat maxLength(float val, float max_l){\\\\n\\\\treturn min(val, max_l);\\\\n}\\\\nvec2 maxLength(vec2 val, float max_l){\\\\n\\\\tfloat vec_length = length(val);\\\\n\\\\tif(vec_length == 0.0){\\\\n\\\\t\\\\treturn val;\\\\n\\\\t} else {\\\\n\\\\t\\\\tfloat new_length = min(vec_length, max_l);\\\\n\\\\t\\\\treturn new_length * normalize(val);\\\\n\\\\t}\\\\n}\\\\nvec3 maxLength(vec3 val, float max_l){\\\\n\\\\tfloat vec_length = length(val);\\\\n\\\\tif(vec_length == 0.0){\\\\n\\\\t\\\\treturn val;\\\\n\\\\t} else {\\\\n\\\\t\\\\tfloat new_length = min(vec_length, max_l);\\\\n\\\\t\\\\treturn new_length * normalize(val);\\\\n\\\\t}\\\\n}\\\\nvec4 maxLength(vec4 val, float max_l){\\\\n\\\\tfloat vec_length = length(val);\\\\n\\\\tif(vec_length == 0.0){\\\\n\\\\t\\\\treturn val;\\\\n\\\\t} else {\\\\n\\\\t\\\\tfloat new_length = min(vec_length, max_l);\\\\n\\\\t\\\\treturn new_length * normalize(val);\\\\n\\\\t}\\\\n}\\\\n\\\\\\\")]}}const nF={blend:.5};class iF extends CP{static type(){return\\\\\\\"mix\\\\\\\"}gl_method_name(){return\\\\\\\"mix\\\\\\\"}paramDefaultValue(t){return nF[t]}initializeNode(){super.initializeNode(),this.io.connection_points.set_input_name_function((t=>[\\\\\\\"value0\\\\\\\",\\\\\\\"value1\\\\\\\",\\\\\\\"blend\\\\\\\"][t])),this.io.connection_points.set_output_name_function(this._gl_output_name.bind(this)),this.io.connection_points.set_expected_input_types_function(this._expected_input_types.bind(this)),this.io.connection_points.set_expected_output_types_function(this._expected_output_types.bind(this))}_gl_output_name(){return\\\\\\\"mix\\\\\\\"}_expected_input_types(){const t=this.io.connection_points.first_input_connection_type()||Uo.FLOAT;return[t,t,Uo.FLOAT]}_expected_output_types(){return[this._expected_input_types()[0]]}}const sF=\\\\\\\"mvMult\\\\\\\";const rF=new class extends ua{constructor(){super(...arguments),this.vector=ha.VECTOR3([0,0,0])}};class oF extends gf{constructor(){super(...arguments),this.paramsConfig=rF}static type(){return\\\\\\\"modelViewMatrixMult\\\\\\\"}initializeNode(){super.initializeNode(),this.io.outputs.setNamedOutputConnectionPoints([new qo(sF,Uo.VEC4)])}setLines(t){if(t.current_shader_name==Mf.VERTEX){const e=mf.vector3(this.variableForInputParam(this.p.vector)),n=`vec4 ${this.glVarName(sF)} = modelViewMatrix * vec4(${e}, 1.0)`;t.addBodyLines(this,[n],Mf.VERTEX)}}}const aF={mult:1};var lF;!function(t){t.VALUE=\\\\\\\"value\\\\\\\",t.PRE_ADD=\\\\\\\"preAdd\\\\\\\",t.MULT=\\\\\\\"mult\\\\\\\",t.POST_ADD=\\\\\\\"postAdd\\\\\\\"}(lF||(lF={}));class cF extends PP{static type(){return\\\\\\\"multAdd\\\\\\\"}_gl_input_name(t){return[lF.VALUE,lF.PRE_ADD,lF.MULT,lF.POST_ADD][t]}paramDefaultValue(t){return aF[t]}setLines(t){const e=mf.any(this.variableForInput(lF.VALUE)),n=mf.any(this.variableForInput(lF.PRE_ADD)),i=mf.any(this.variableForInput(lF.MULT)),s=mf.any(this.variableForInput(lF.POST_ADD)),r=this._expected_output_types()[0],o=this.io.outputs.namedOutputConnectionPoints()[0].name(),a=`${r} ${this.glVarName(o)} = (${i}*(${e} + ${n})) + ${s}`;t.addBodyLines(this,[a])}}class hF extends NP{static type(){return\\\\\\\"negate\\\\\\\"}initializeNode(){super.initializeNode(),this.io.connection_points.set_input_name_function((t=>[\\\\\\\"in\\\\\\\"][t]))}_gl_input_name(t){return[\\\\\\\"in\\\\\\\"][t]}setLines(t){const e=mf.any(this.variableForInput(this._gl_input_name(0))),n=`${this.io.inputs.namedInputConnectionPoints()[0].type()} ${this.glVarName(this.io.connection_points.output_name(0))} = -1.0 * ${e}`;t.addBodyLines(this,[n])}}var uF;!function(t){t.CLASSIC_PERLIN_2D=\\\\\\\"Classic Perlin 2D\\\\\\\",t.CLASSIC_PERLIN_3D=\\\\\\\"Classic Perlin 3D\\\\\\\",t.CLASSIC_PERLIN_4D=\\\\\\\"Classic Perlin 4D\\\\\\\",t.NOISE_2D=\\\\\\\"noise2D\\\\\\\",t.NOISE_3D=\\\\\\\"noise3D\\\\\\\",t.NOISE_4D=\\\\\\\"noise4D\\\\\\\"}(uF||(uF={}));const dF=[uF.CLASSIC_PERLIN_2D,uF.CLASSIC_PERLIN_3D,uF.CLASSIC_PERLIN_4D,uF.NOISE_2D,uF.NOISE_3D,uF.NOISE_4D],pF={[uF.CLASSIC_PERLIN_2D]:'//\\\\n// GLSL textureless classic 2D noise \\\\\\\"cnoise\\\\\\\",\\\\n// with an RSL-style periodic variant \\\\\\\"pnoise\\\\\\\".\\\\n// Author:  Stefan Gustavson (stefan.gustavson@liu.se)\\\\n// Version: 2011-08-22\\\\n//\\\\n// Many thanks to Ian McEwan of Ashima Arts for the\\\\n// ideas for permutation and gradient selection.\\\\n//\\\\n// Copyright (c) 2011 Stefan Gustavson. All rights reserved.\\\\n// Distributed under the MIT license. See LICENSE file.\\\\n// https://github.com/stegu/webgl-noise\\\\n//\\\\n\\\\n\\\\n// Classic Perlin noise\\\\nfloat cnoise(vec2 P)\\\\n{\\\\n  vec4 Pi = floor(P.xyxy) + vec4(0.0, 0.0, 1.0, 1.0);\\\\n  vec4 Pf = fract(P.xyxy) - vec4(0.0, 0.0, 1.0, 1.0);\\\\n  Pi = mod289(Pi); // To avoid truncation effects in permutation\\\\n  vec4 ix = Pi.xzxz;\\\\n  vec4 iy = Pi.yyww;\\\\n  vec4 fx = Pf.xzxz;\\\\n  vec4 fy = Pf.yyww;\\\\n\\\\n  vec4 i = permute(permute(ix) + iy);\\\\n\\\\n  vec4 gx = fract(i * (1.0 / 41.0)) * 2.0 - 1.0 ;\\\\n  vec4 gy = abs(gx) - 0.5 ;\\\\n  vec4 tx = floor(gx + 0.5);\\\\n  gx = gx - tx;\\\\n\\\\n  vec2 g00 = vec2(gx.x,gy.x);\\\\n  vec2 g10 = vec2(gx.y,gy.y);\\\\n  vec2 g01 = vec2(gx.z,gy.z);\\\\n  vec2 g11 = vec2(gx.w,gy.w);\\\\n\\\\n  vec4 norm = taylorInvSqrt(vec4(dot(g00, g00), dot(g01, g01), dot(g10, g10), dot(g11, g11)));\\\\n  g00 *= norm.x;  \\\\n  g01 *= norm.y;  \\\\n  g10 *= norm.z;  \\\\n  g11 *= norm.w;  \\\\n\\\\n  float n00 = dot(g00, vec2(fx.x, fy.x));\\\\n  float n10 = dot(g10, vec2(fx.y, fy.y));\\\\n  float n01 = dot(g01, vec2(fx.z, fy.z));\\\\n  float n11 = dot(g11, vec2(fx.w, fy.w));\\\\n\\\\n  vec2 fade_xy = fade(Pf.xy);\\\\n  vec2 n_x = mix(vec2(n00, n01), vec2(n10, n11), fade_xy.x);\\\\n  float n_xy = mix(n_x.x, n_x.y, fade_xy.y);\\\\n  return 2.3 * n_xy;\\\\n}\\\\n\\\\n// Classic Perlin noise, periodic variant\\\\nfloat pnoise(vec2 P, vec2 rep)\\\\n{\\\\n  vec4 Pi = floor(P.xyxy) + vec4(0.0, 0.0, 1.0, 1.0);\\\\n  vec4 Pf = fract(P.xyxy) - vec4(0.0, 0.0, 1.0, 1.0);\\\\n  Pi = mod(Pi, rep.xyxy); // To create noise with explicit period\\\\n  Pi = mod289(Pi);        // To avoid truncation effects in permutation\\\\n  vec4 ix = Pi.xzxz;\\\\n  vec4 iy = Pi.yyww;\\\\n  vec4 fx = Pf.xzxz;\\\\n  vec4 fy = Pf.yyww;\\\\n\\\\n  vec4 i = permute(permute(ix) + iy);\\\\n\\\\n  vec4 gx = fract(i * (1.0 / 41.0)) * 2.0 - 1.0 ;\\\\n  vec4 gy = abs(gx) - 0.5 ;\\\\n  vec4 tx = floor(gx + 0.5);\\\\n  gx = gx - tx;\\\\n\\\\n  vec2 g00 = vec2(gx.x,gy.x);\\\\n  vec2 g10 = vec2(gx.y,gy.y);\\\\n  vec2 g01 = vec2(gx.z,gy.z);\\\\n  vec2 g11 = vec2(gx.w,gy.w);\\\\n\\\\n  vec4 norm = taylorInvSqrt(vec4(dot(g00, g00), dot(g01, g01), dot(g10, g10), dot(g11, g11)));\\\\n  g00 *= norm.x;  \\\\n  g01 *= norm.y;  \\\\n  g10 *= norm.z;  \\\\n  g11 *= norm.w;  \\\\n\\\\n  float n00 = dot(g00, vec2(fx.x, fy.x));\\\\n  float n10 = dot(g10, vec2(fx.y, fy.y));\\\\n  float n01 = dot(g01, vec2(fx.z, fy.z));\\\\n  float n11 = dot(g11, vec2(fx.w, fy.w));\\\\n\\\\n  vec2 fade_xy = fade(Pf.xy);\\\\n  vec2 n_x = mix(vec2(n00, n01), vec2(n10, n11), fade_xy.x);\\\\n  float n_xy = mix(n_x.x, n_x.y, fade_xy.y);\\\\n  return 2.3 * n_xy;\\\\n}\\\\n',[uF.CLASSIC_PERLIN_3D]:'//\\\\n// GLSL textureless classic 3D noise \\\\\\\"cnoise\\\\\\\",\\\\n// with an RSL-style periodic variant \\\\\\\"pnoise\\\\\\\".\\\\n// Author:  Stefan Gustavson (stefan.gustavson@liu.se)\\\\n// Version: 2011-10-11\\\\n//\\\\n// Many thanks to Ian McEwan of Ashima Arts for the\\\\n// ideas for permutation and gradient selection.\\\\n//\\\\n// Copyright (c) 2011 Stefan Gustavson. All rights reserved.\\\\n// Distributed under the MIT license. See LICENSE file.\\\\n// https://github.com/stegu/webgl-noise\\\\n//\\\\n\\\\n// Classic Perlin noise\\\\nfloat cnoise(vec3 P)\\\\n{\\\\n  vec3 Pi0 = floor(P); // Integer part for indexing\\\\n  vec3 Pi1 = Pi0 + vec3(1.0); // Integer part + 1\\\\n  Pi0 = mod289(Pi0);\\\\n  Pi1 = mod289(Pi1);\\\\n  vec3 Pf0 = fract(P); // Fractional part for interpolation\\\\n  vec3 Pf1 = Pf0 - vec3(1.0); // Fractional part - 1.0\\\\n  vec4 ix = vec4(Pi0.x, Pi1.x, Pi0.x, Pi1.x);\\\\n  vec4 iy = vec4(Pi0.yy, Pi1.yy);\\\\n  vec4 iz0 = Pi0.zzzz;\\\\n  vec4 iz1 = Pi1.zzzz;\\\\n\\\\n  vec4 ixy = permute(permute(ix) + iy);\\\\n  vec4 ixy0 = permute(ixy + iz0);\\\\n  vec4 ixy1 = permute(ixy + iz1);\\\\n\\\\n  vec4 gx0 = ixy0 * (1.0 / 7.0);\\\\n  vec4 gy0 = fract(floor(gx0) * (1.0 / 7.0)) - 0.5;\\\\n  gx0 = fract(gx0);\\\\n  vec4 gz0 = vec4(0.5) - abs(gx0) - abs(gy0);\\\\n  vec4 sz0 = step(gz0, vec4(0.0));\\\\n  gx0 -= sz0 * (step(0.0, gx0) - 0.5);\\\\n  gy0 -= sz0 * (step(0.0, gy0) - 0.5);\\\\n\\\\n  vec4 gx1 = ixy1 * (1.0 / 7.0);\\\\n  vec4 gy1 = fract(floor(gx1) * (1.0 / 7.0)) - 0.5;\\\\n  gx1 = fract(gx1);\\\\n  vec4 gz1 = vec4(0.5) - abs(gx1) - abs(gy1);\\\\n  vec4 sz1 = step(gz1, vec4(0.0));\\\\n  gx1 -= sz1 * (step(0.0, gx1) - 0.5);\\\\n  gy1 -= sz1 * (step(0.0, gy1) - 0.5);\\\\n\\\\n  vec3 g000 = vec3(gx0.x,gy0.x,gz0.x);\\\\n  vec3 g100 = vec3(gx0.y,gy0.y,gz0.y);\\\\n  vec3 g010 = vec3(gx0.z,gy0.z,gz0.z);\\\\n  vec3 g110 = vec3(gx0.w,gy0.w,gz0.w);\\\\n  vec3 g001 = vec3(gx1.x,gy1.x,gz1.x);\\\\n  vec3 g101 = vec3(gx1.y,gy1.y,gz1.y);\\\\n  vec3 g011 = vec3(gx1.z,gy1.z,gz1.z);\\\\n  vec3 g111 = vec3(gx1.w,gy1.w,gz1.w);\\\\n\\\\n  vec4 norm0 = taylorInvSqrt(vec4(dot(g000, g000), dot(g010, g010), dot(g100, g100), dot(g110, g110)));\\\\n  g000 *= norm0.x;\\\\n  g010 *= norm0.y;\\\\n  g100 *= norm0.z;\\\\n  g110 *= norm0.w;\\\\n  vec4 norm1 = taylorInvSqrt(vec4(dot(g001, g001), dot(g011, g011), dot(g101, g101), dot(g111, g111)));\\\\n  g001 *= norm1.x;\\\\n  g011 *= norm1.y;\\\\n  g101 *= norm1.z;\\\\n  g111 *= norm1.w;\\\\n\\\\n  float n000 = dot(g000, Pf0);\\\\n  float n100 = dot(g100, vec3(Pf1.x, Pf0.yz));\\\\n  float n010 = dot(g010, vec3(Pf0.x, Pf1.y, Pf0.z));\\\\n  float n110 = dot(g110, vec3(Pf1.xy, Pf0.z));\\\\n  float n001 = dot(g001, vec3(Pf0.xy, Pf1.z));\\\\n  float n101 = dot(g101, vec3(Pf1.x, Pf0.y, Pf1.z));\\\\n  float n011 = dot(g011, vec3(Pf0.x, Pf1.yz));\\\\n  float n111 = dot(g111, Pf1);\\\\n\\\\n  vec3 fade_xyz = fade(Pf0);\\\\n  vec4 n_z = mix(vec4(n000, n100, n010, n110), vec4(n001, n101, n011, n111), fade_xyz.z);\\\\n  vec2 n_yz = mix(n_z.xy, n_z.zw, fade_xyz.y);\\\\n  float n_xyz = mix(n_yz.x, n_yz.y, fade_xyz.x); \\\\n  return 2.2 * n_xyz;\\\\n}\\\\n\\\\n// Classic Perlin noise, periodic variant\\\\nfloat pnoise(vec3 P, vec3 rep)\\\\n{\\\\n  vec3 Pi0 = mod(floor(P), rep); // Integer part, modulo period\\\\n  vec3 Pi1 = mod(Pi0 + vec3(1.0), rep); // Integer part + 1, mod period\\\\n  Pi0 = mod289(Pi0);\\\\n  Pi1 = mod289(Pi1);\\\\n  vec3 Pf0 = fract(P); // Fractional part for interpolation\\\\n  vec3 Pf1 = Pf0 - vec3(1.0); // Fractional part - 1.0\\\\n  vec4 ix = vec4(Pi0.x, Pi1.x, Pi0.x, Pi1.x);\\\\n  vec4 iy = vec4(Pi0.yy, Pi1.yy);\\\\n  vec4 iz0 = Pi0.zzzz;\\\\n  vec4 iz1 = Pi1.zzzz;\\\\n\\\\n  vec4 ixy = permute(permute(ix) + iy);\\\\n  vec4 ixy0 = permute(ixy + iz0);\\\\n  vec4 ixy1 = permute(ixy + iz1);\\\\n\\\\n  vec4 gx0 = ixy0 * (1.0 / 7.0);\\\\n  vec4 gy0 = fract(floor(gx0) * (1.0 / 7.0)) - 0.5;\\\\n  gx0 = fract(gx0);\\\\n  vec4 gz0 = vec4(0.5) - abs(gx0) - abs(gy0);\\\\n  vec4 sz0 = step(gz0, vec4(0.0));\\\\n  gx0 -= sz0 * (step(0.0, gx0) - 0.5);\\\\n  gy0 -= sz0 * (step(0.0, gy0) - 0.5);\\\\n\\\\n  vec4 gx1 = ixy1 * (1.0 / 7.0);\\\\n  vec4 gy1 = fract(floor(gx1) * (1.0 / 7.0)) - 0.5;\\\\n  gx1 = fract(gx1);\\\\n  vec4 gz1 = vec4(0.5) - abs(gx1) - abs(gy1);\\\\n  vec4 sz1 = step(gz1, vec4(0.0));\\\\n  gx1 -= sz1 * (step(0.0, gx1) - 0.5);\\\\n  gy1 -= sz1 * (step(0.0, gy1) - 0.5);\\\\n\\\\n  vec3 g000 = vec3(gx0.x,gy0.x,gz0.x);\\\\n  vec3 g100 = vec3(gx0.y,gy0.y,gz0.y);\\\\n  vec3 g010 = vec3(gx0.z,gy0.z,gz0.z);\\\\n  vec3 g110 = vec3(gx0.w,gy0.w,gz0.w);\\\\n  vec3 g001 = vec3(gx1.x,gy1.x,gz1.x);\\\\n  vec3 g101 = vec3(gx1.y,gy1.y,gz1.y);\\\\n  vec3 g011 = vec3(gx1.z,gy1.z,gz1.z);\\\\n  vec3 g111 = vec3(gx1.w,gy1.w,gz1.w);\\\\n\\\\n  vec4 norm0 = taylorInvSqrt(vec4(dot(g000, g000), dot(g010, g010), dot(g100, g100), dot(g110, g110)));\\\\n  g000 *= norm0.x;\\\\n  g010 *= norm0.y;\\\\n  g100 *= norm0.z;\\\\n  g110 *= norm0.w;\\\\n  vec4 norm1 = taylorInvSqrt(vec4(dot(g001, g001), dot(g011, g011), dot(g101, g101), dot(g111, g111)));\\\\n  g001 *= norm1.x;\\\\n  g011 *= norm1.y;\\\\n  g101 *= norm1.z;\\\\n  g111 *= norm1.w;\\\\n\\\\n  float n000 = dot(g000, Pf0);\\\\n  float n100 = dot(g100, vec3(Pf1.x, Pf0.yz));\\\\n  float n010 = dot(g010, vec3(Pf0.x, Pf1.y, Pf0.z));\\\\n  float n110 = dot(g110, vec3(Pf1.xy, Pf0.z));\\\\n  float n001 = dot(g001, vec3(Pf0.xy, Pf1.z));\\\\n  float n101 = dot(g101, vec3(Pf1.x, Pf0.y, Pf1.z));\\\\n  float n011 = dot(g011, vec3(Pf0.x, Pf1.yz));\\\\n  float n111 = dot(g111, Pf1);\\\\n\\\\n  vec3 fade_xyz = fade(Pf0);\\\\n  vec4 n_z = mix(vec4(n000, n100, n010, n110), vec4(n001, n101, n011, n111), fade_xyz.z);\\\\n  vec2 n_yz = mix(n_z.xy, n_z.zw, fade_xyz.y);\\\\n  float n_xyz = mix(n_yz.x, n_yz.y, fade_xyz.x); \\\\n  return 2.2 * n_xyz;\\\\n}\\\\n',[uF.CLASSIC_PERLIN_4D]:'//\\\\n// GLSL textureless classic 4D noise \\\\\\\"cnoise\\\\\\\",\\\\n// with an RSL-style periodic variant \\\\\\\"pnoise\\\\\\\".\\\\n// Author:  Stefan Gustavson (stefan.gustavson@liu.se)\\\\n// Version: 2011-08-22\\\\n//\\\\n// Many thanks to Ian McEwan of Ashima Arts for the\\\\n// ideas for permutation and gradient selection.\\\\n//\\\\n// Copyright (c) 2011 Stefan Gustavson. All rights reserved.\\\\n// Distributed under the MIT license. See LICENSE file.\\\\n// https://github.com/stegu/webgl-noise\\\\n//\\\\n\\\\n\\\\n\\\\n// Classic Perlin noise\\\\nfloat cnoise(vec4 P)\\\\n{\\\\n  vec4 Pi0 = floor(P); // Integer part for indexing\\\\n  vec4 Pi1 = Pi0 + 1.0; // Integer part + 1\\\\n  Pi0 = mod289(Pi0);\\\\n  Pi1 = mod289(Pi1);\\\\n  vec4 Pf0 = fract(P); // Fractional part for interpolation\\\\n  vec4 Pf1 = Pf0 - 1.0; // Fractional part - 1.0\\\\n  vec4 ix = vec4(Pi0.x, Pi1.x, Pi0.x, Pi1.x);\\\\n  vec4 iy = vec4(Pi0.yy, Pi1.yy);\\\\n  vec4 iz0 = vec4(Pi0.zzzz);\\\\n  vec4 iz1 = vec4(Pi1.zzzz);\\\\n  vec4 iw0 = vec4(Pi0.wwww);\\\\n  vec4 iw1 = vec4(Pi1.wwww);\\\\n\\\\n  vec4 ixy = permute(permute(ix) + iy);\\\\n  vec4 ixy0 = permute(ixy + iz0);\\\\n  vec4 ixy1 = permute(ixy + iz1);\\\\n  vec4 ixy00 = permute(ixy0 + iw0);\\\\n  vec4 ixy01 = permute(ixy0 + iw1);\\\\n  vec4 ixy10 = permute(ixy1 + iw0);\\\\n  vec4 ixy11 = permute(ixy1 + iw1);\\\\n\\\\n  vec4 gx00 = ixy00 * (1.0 / 7.0);\\\\n  vec4 gy00 = floor(gx00) * (1.0 / 7.0);\\\\n  vec4 gz00 = floor(gy00) * (1.0 / 6.0);\\\\n  gx00 = fract(gx00) - 0.5;\\\\n  gy00 = fract(gy00) - 0.5;\\\\n  gz00 = fract(gz00) - 0.5;\\\\n  vec4 gw00 = vec4(0.75) - abs(gx00) - abs(gy00) - abs(gz00);\\\\n  vec4 sw00 = step(gw00, vec4(0.0));\\\\n  gx00 -= sw00 * (step(0.0, gx00) - 0.5);\\\\n  gy00 -= sw00 * (step(0.0, gy00) - 0.5);\\\\n\\\\n  vec4 gx01 = ixy01 * (1.0 / 7.0);\\\\n  vec4 gy01 = floor(gx01) * (1.0 / 7.0);\\\\n  vec4 gz01 = floor(gy01) * (1.0 / 6.0);\\\\n  gx01 = fract(gx01) - 0.5;\\\\n  gy01 = fract(gy01) - 0.5;\\\\n  gz01 = fract(gz01) - 0.5;\\\\n  vec4 gw01 = vec4(0.75) - abs(gx01) - abs(gy01) - abs(gz01);\\\\n  vec4 sw01 = step(gw01, vec4(0.0));\\\\n  gx01 -= sw01 * (step(0.0, gx01) - 0.5);\\\\n  gy01 -= sw01 * (step(0.0, gy01) - 0.5);\\\\n\\\\n  vec4 gx10 = ixy10 * (1.0 / 7.0);\\\\n  vec4 gy10 = floor(gx10) * (1.0 / 7.0);\\\\n  vec4 gz10 = floor(gy10) * (1.0 / 6.0);\\\\n  gx10 = fract(gx10) - 0.5;\\\\n  gy10 = fract(gy10) - 0.5;\\\\n  gz10 = fract(gz10) - 0.5;\\\\n  vec4 gw10 = vec4(0.75) - abs(gx10) - abs(gy10) - abs(gz10);\\\\n  vec4 sw10 = step(gw10, vec4(0.0));\\\\n  gx10 -= sw10 * (step(0.0, gx10) - 0.5);\\\\n  gy10 -= sw10 * (step(0.0, gy10) - 0.5);\\\\n\\\\n  vec4 gx11 = ixy11 * (1.0 / 7.0);\\\\n  vec4 gy11 = floor(gx11) * (1.0 / 7.0);\\\\n  vec4 gz11 = floor(gy11) * (1.0 / 6.0);\\\\n  gx11 = fract(gx11) - 0.5;\\\\n  gy11 = fract(gy11) - 0.5;\\\\n  gz11 = fract(gz11) - 0.5;\\\\n  vec4 gw11 = vec4(0.75) - abs(gx11) - abs(gy11) - abs(gz11);\\\\n  vec4 sw11 = step(gw11, vec4(0.0));\\\\n  gx11 -= sw11 * (step(0.0, gx11) - 0.5);\\\\n  gy11 -= sw11 * (step(0.0, gy11) - 0.5);\\\\n\\\\n  vec4 g0000 = vec4(gx00.x,gy00.x,gz00.x,gw00.x);\\\\n  vec4 g1000 = vec4(gx00.y,gy00.y,gz00.y,gw00.y);\\\\n  vec4 g0100 = vec4(gx00.z,gy00.z,gz00.z,gw00.z);\\\\n  vec4 g1100 = vec4(gx00.w,gy00.w,gz00.w,gw00.w);\\\\n  vec4 g0010 = vec4(gx10.x,gy10.x,gz10.x,gw10.x);\\\\n  vec4 g1010 = vec4(gx10.y,gy10.y,gz10.y,gw10.y);\\\\n  vec4 g0110 = vec4(gx10.z,gy10.z,gz10.z,gw10.z);\\\\n  vec4 g1110 = vec4(gx10.w,gy10.w,gz10.w,gw10.w);\\\\n  vec4 g0001 = vec4(gx01.x,gy01.x,gz01.x,gw01.x);\\\\n  vec4 g1001 = vec4(gx01.y,gy01.y,gz01.y,gw01.y);\\\\n  vec4 g0101 = vec4(gx01.z,gy01.z,gz01.z,gw01.z);\\\\n  vec4 g1101 = vec4(gx01.w,gy01.w,gz01.w,gw01.w);\\\\n  vec4 g0011 = vec4(gx11.x,gy11.x,gz11.x,gw11.x);\\\\n  vec4 g1011 = vec4(gx11.y,gy11.y,gz11.y,gw11.y);\\\\n  vec4 g0111 = vec4(gx11.z,gy11.z,gz11.z,gw11.z);\\\\n  vec4 g1111 = vec4(gx11.w,gy11.w,gz11.w,gw11.w);\\\\n\\\\n  vec4 norm00 = taylorInvSqrt(vec4(dot(g0000, g0000), dot(g0100, g0100), dot(g1000, g1000), dot(g1100, g1100)));\\\\n  g0000 *= norm00.x;\\\\n  g0100 *= norm00.y;\\\\n  g1000 *= norm00.z;\\\\n  g1100 *= norm00.w;\\\\n\\\\n  vec4 norm01 = taylorInvSqrt(vec4(dot(g0001, g0001), dot(g0101, g0101), dot(g1001, g1001), dot(g1101, g1101)));\\\\n  g0001 *= norm01.x;\\\\n  g0101 *= norm01.y;\\\\n  g1001 *= norm01.z;\\\\n  g1101 *= norm01.w;\\\\n\\\\n  vec4 norm10 = taylorInvSqrt(vec4(dot(g0010, g0010), dot(g0110, g0110), dot(g1010, g1010), dot(g1110, g1110)));\\\\n  g0010 *= norm10.x;\\\\n  g0110 *= norm10.y;\\\\n  g1010 *= norm10.z;\\\\n  g1110 *= norm10.w;\\\\n\\\\n  vec4 norm11 = taylorInvSqrt(vec4(dot(g0011, g0011), dot(g0111, g0111), dot(g1011, g1011), dot(g1111, g1111)));\\\\n  g0011 *= norm11.x;\\\\n  g0111 *= norm11.y;\\\\n  g1011 *= norm11.z;\\\\n  g1111 *= norm11.w;\\\\n\\\\n  float n0000 = dot(g0000, Pf0);\\\\n  float n1000 = dot(g1000, vec4(Pf1.x, Pf0.yzw));\\\\n  float n0100 = dot(g0100, vec4(Pf0.x, Pf1.y, Pf0.zw));\\\\n  float n1100 = dot(g1100, vec4(Pf1.xy, Pf0.zw));\\\\n  float n0010 = dot(g0010, vec4(Pf0.xy, Pf1.z, Pf0.w));\\\\n  float n1010 = dot(g1010, vec4(Pf1.x, Pf0.y, Pf1.z, Pf0.w));\\\\n  float n0110 = dot(g0110, vec4(Pf0.x, Pf1.yz, Pf0.w));\\\\n  float n1110 = dot(g1110, vec4(Pf1.xyz, Pf0.w));\\\\n  float n0001 = dot(g0001, vec4(Pf0.xyz, Pf1.w));\\\\n  float n1001 = dot(g1001, vec4(Pf1.x, Pf0.yz, Pf1.w));\\\\n  float n0101 = dot(g0101, vec4(Pf0.x, Pf1.y, Pf0.z, Pf1.w));\\\\n  float n1101 = dot(g1101, vec4(Pf1.xy, Pf0.z, Pf1.w));\\\\n  float n0011 = dot(g0011, vec4(Pf0.xy, Pf1.zw));\\\\n  float n1011 = dot(g1011, vec4(Pf1.x, Pf0.y, Pf1.zw));\\\\n  float n0111 = dot(g0111, vec4(Pf0.x, Pf1.yzw));\\\\n  float n1111 = dot(g1111, Pf1);\\\\n\\\\n  vec4 fade_xyzw = fade(Pf0);\\\\n  vec4 n_0w = mix(vec4(n0000, n1000, n0100, n1100), vec4(n0001, n1001, n0101, n1101), fade_xyzw.w);\\\\n  vec4 n_1w = mix(vec4(n0010, n1010, n0110, n1110), vec4(n0011, n1011, n0111, n1111), fade_xyzw.w);\\\\n  vec4 n_zw = mix(n_0w, n_1w, fade_xyzw.z);\\\\n  vec2 n_yzw = mix(n_zw.xy, n_zw.zw, fade_xyzw.y);\\\\n  float n_xyzw = mix(n_yzw.x, n_yzw.y, fade_xyzw.x);\\\\n  return 2.2 * n_xyzw;\\\\n}\\\\n\\\\n// Classic Perlin noise, periodic version\\\\nfloat pnoise(vec4 P, vec4 rep)\\\\n{\\\\n  vec4 Pi0 = mod(floor(P), rep); // Integer part modulo rep\\\\n  vec4 Pi1 = mod(Pi0 + 1.0, rep); // Integer part + 1 mod rep\\\\n  Pi0 = mod289(Pi0);\\\\n  Pi1 = mod289(Pi1);\\\\n  vec4 Pf0 = fract(P); // Fractional part for interpolation\\\\n  vec4 Pf1 = Pf0 - 1.0; // Fractional part - 1.0\\\\n  vec4 ix = vec4(Pi0.x, Pi1.x, Pi0.x, Pi1.x);\\\\n  vec4 iy = vec4(Pi0.yy, Pi1.yy);\\\\n  vec4 iz0 = vec4(Pi0.zzzz);\\\\n  vec4 iz1 = vec4(Pi1.zzzz);\\\\n  vec4 iw0 = vec4(Pi0.wwww);\\\\n  vec4 iw1 = vec4(Pi1.wwww);\\\\n\\\\n  vec4 ixy = permute(permute(ix) + iy);\\\\n  vec4 ixy0 = permute(ixy + iz0);\\\\n  vec4 ixy1 = permute(ixy + iz1);\\\\n  vec4 ixy00 = permute(ixy0 + iw0);\\\\n  vec4 ixy01 = permute(ixy0 + iw1);\\\\n  vec4 ixy10 = permute(ixy1 + iw0);\\\\n  vec4 ixy11 = permute(ixy1 + iw1);\\\\n\\\\n  vec4 gx00 = ixy00 * (1.0 / 7.0);\\\\n  vec4 gy00 = floor(gx00) * (1.0 / 7.0);\\\\n  vec4 gz00 = floor(gy00) * (1.0 / 6.0);\\\\n  gx00 = fract(gx00) - 0.5;\\\\n  gy00 = fract(gy00) - 0.5;\\\\n  gz00 = fract(gz00) - 0.5;\\\\n  vec4 gw00 = vec4(0.75) - abs(gx00) - abs(gy00) - abs(gz00);\\\\n  vec4 sw00 = step(gw00, vec4(0.0));\\\\n  gx00 -= sw00 * (step(0.0, gx00) - 0.5);\\\\n  gy00 -= sw00 * (step(0.0, gy00) - 0.5);\\\\n\\\\n  vec4 gx01 = ixy01 * (1.0 / 7.0);\\\\n  vec4 gy01 = floor(gx01) * (1.0 / 7.0);\\\\n  vec4 gz01 = floor(gy01) * (1.0 / 6.0);\\\\n  gx01 = fract(gx01) - 0.5;\\\\n  gy01 = fract(gy01) - 0.5;\\\\n  gz01 = fract(gz01) - 0.5;\\\\n  vec4 gw01 = vec4(0.75) - abs(gx01) - abs(gy01) - abs(gz01);\\\\n  vec4 sw01 = step(gw01, vec4(0.0));\\\\n  gx01 -= sw01 * (step(0.0, gx01) - 0.5);\\\\n  gy01 -= sw01 * (step(0.0, gy01) - 0.5);\\\\n\\\\n  vec4 gx10 = ixy10 * (1.0 / 7.0);\\\\n  vec4 gy10 = floor(gx10) * (1.0 / 7.0);\\\\n  vec4 gz10 = floor(gy10) * (1.0 / 6.0);\\\\n  gx10 = fract(gx10) - 0.5;\\\\n  gy10 = fract(gy10) - 0.5;\\\\n  gz10 = fract(gz10) - 0.5;\\\\n  vec4 gw10 = vec4(0.75) - abs(gx10) - abs(gy10) - abs(gz10);\\\\n  vec4 sw10 = step(gw10, vec4(0.0));\\\\n  gx10 -= sw10 * (step(0.0, gx10) - 0.5);\\\\n  gy10 -= sw10 * (step(0.0, gy10) - 0.5);\\\\n\\\\n  vec4 gx11 = ixy11 * (1.0 / 7.0);\\\\n  vec4 gy11 = floor(gx11) * (1.0 / 7.0);\\\\n  vec4 gz11 = floor(gy11) * (1.0 / 6.0);\\\\n  gx11 = fract(gx11) - 0.5;\\\\n  gy11 = fract(gy11) - 0.5;\\\\n  gz11 = fract(gz11) - 0.5;\\\\n  vec4 gw11 = vec4(0.75) - abs(gx11) - abs(gy11) - abs(gz11);\\\\n  vec4 sw11 = step(gw11, vec4(0.0));\\\\n  gx11 -= sw11 * (step(0.0, gx11) - 0.5);\\\\n  gy11 -= sw11 * (step(0.0, gy11) - 0.5);\\\\n\\\\n  vec4 g0000 = vec4(gx00.x,gy00.x,gz00.x,gw00.x);\\\\n  vec4 g1000 = vec4(gx00.y,gy00.y,gz00.y,gw00.y);\\\\n  vec4 g0100 = vec4(gx00.z,gy00.z,gz00.z,gw00.z);\\\\n  vec4 g1100 = vec4(gx00.w,gy00.w,gz00.w,gw00.w);\\\\n  vec4 g0010 = vec4(gx10.x,gy10.x,gz10.x,gw10.x);\\\\n  vec4 g1010 = vec4(gx10.y,gy10.y,gz10.y,gw10.y);\\\\n  vec4 g0110 = vec4(gx10.z,gy10.z,gz10.z,gw10.z);\\\\n  vec4 g1110 = vec4(gx10.w,gy10.w,gz10.w,gw10.w);\\\\n  vec4 g0001 = vec4(gx01.x,gy01.x,gz01.x,gw01.x);\\\\n  vec4 g1001 = vec4(gx01.y,gy01.y,gz01.y,gw01.y);\\\\n  vec4 g0101 = vec4(gx01.z,gy01.z,gz01.z,gw01.z);\\\\n  vec4 g1101 = vec4(gx01.w,gy01.w,gz01.w,gw01.w);\\\\n  vec4 g0011 = vec4(gx11.x,gy11.x,gz11.x,gw11.x);\\\\n  vec4 g1011 = vec4(gx11.y,gy11.y,gz11.y,gw11.y);\\\\n  vec4 g0111 = vec4(gx11.z,gy11.z,gz11.z,gw11.z);\\\\n  vec4 g1111 = vec4(gx11.w,gy11.w,gz11.w,gw11.w);\\\\n\\\\n  vec4 norm00 = taylorInvSqrt(vec4(dot(g0000, g0000), dot(g0100, g0100), dot(g1000, g1000), dot(g1100, g1100)));\\\\n  g0000 *= norm00.x;\\\\n  g0100 *= norm00.y;\\\\n  g1000 *= norm00.z;\\\\n  g1100 *= norm00.w;\\\\n\\\\n  vec4 norm01 = taylorInvSqrt(vec4(dot(g0001, g0001), dot(g0101, g0101), dot(g1001, g1001), dot(g1101, g1101)));\\\\n  g0001 *= norm01.x;\\\\n  g0101 *= norm01.y;\\\\n  g1001 *= norm01.z;\\\\n  g1101 *= norm01.w;\\\\n\\\\n  vec4 norm10 = taylorInvSqrt(vec4(dot(g0010, g0010), dot(g0110, g0110), dot(g1010, g1010), dot(g1110, g1110)));\\\\n  g0010 *= norm10.x;\\\\n  g0110 *= norm10.y;\\\\n  g1010 *= norm10.z;\\\\n  g1110 *= norm10.w;\\\\n\\\\n  vec4 norm11 = taylorInvSqrt(vec4(dot(g0011, g0011), dot(g0111, g0111), dot(g1011, g1011), dot(g1111, g1111)));\\\\n  g0011 *= norm11.x;\\\\n  g0111 *= norm11.y;\\\\n  g1011 *= norm11.z;\\\\n  g1111 *= norm11.w;\\\\n\\\\n  float n0000 = dot(g0000, Pf0);\\\\n  float n1000 = dot(g1000, vec4(Pf1.x, Pf0.yzw));\\\\n  float n0100 = dot(g0100, vec4(Pf0.x, Pf1.y, Pf0.zw));\\\\n  float n1100 = dot(g1100, vec4(Pf1.xy, Pf0.zw));\\\\n  float n0010 = dot(g0010, vec4(Pf0.xy, Pf1.z, Pf0.w));\\\\n  float n1010 = dot(g1010, vec4(Pf1.x, Pf0.y, Pf1.z, Pf0.w));\\\\n  float n0110 = dot(g0110, vec4(Pf0.x, Pf1.yz, Pf0.w));\\\\n  float n1110 = dot(g1110, vec4(Pf1.xyz, Pf0.w));\\\\n  float n0001 = dot(g0001, vec4(Pf0.xyz, Pf1.w));\\\\n  float n1001 = dot(g1001, vec4(Pf1.x, Pf0.yz, Pf1.w));\\\\n  float n0101 = dot(g0101, vec4(Pf0.x, Pf1.y, Pf0.z, Pf1.w));\\\\n  float n1101 = dot(g1101, vec4(Pf1.xy, Pf0.z, Pf1.w));\\\\n  float n0011 = dot(g0011, vec4(Pf0.xy, Pf1.zw));\\\\n  float n1011 = dot(g1011, vec4(Pf1.x, Pf0.y, Pf1.zw));\\\\n  float n0111 = dot(g0111, vec4(Pf0.x, Pf1.yzw));\\\\n  float n1111 = dot(g1111, Pf1);\\\\n\\\\n  vec4 fade_xyzw = fade(Pf0);\\\\n  vec4 n_0w = mix(vec4(n0000, n1000, n0100, n1100), vec4(n0001, n1001, n0101, n1101), fade_xyzw.w);\\\\n  vec4 n_1w = mix(vec4(n0010, n1010, n0110, n1110), vec4(n0011, n1011, n0111, n1111), fade_xyzw.w);\\\\n  vec4 n_zw = mix(n_0w, n_1w, fade_xyzw.z);\\\\n  vec2 n_yzw = mix(n_zw.xy, n_zw.zw, fade_xyzw.y);\\\\n  float n_xyzw = mix(n_yzw.x, n_yzw.y, fade_xyzw.x);\\\\n  return 2.2 * n_xyzw;\\\\n}\\\\n',[uF.NOISE_2D]:\\\\\\\"//\\\\n// Description : Array and textureless GLSL 2D simplex noise function.\\\\n//      Author : Ian McEwan, Ashima Arts.\\\\n//  Maintainer : stegu\\\\n//     Lastmod : 20110822 (ijm)\\\\n//     License : Copyright (C) 2011 Ashima Arts. All rights reserved.\\\\n//               Distributed under the MIT License. See LICENSE file.\\\\n//               https://github.com/ashima/webgl-noise\\\\n//               https://github.com/stegu/webgl-noise\\\\n// \\\\n\\\\n\\\\nfloat snoise(vec2 v)\\\\n  {\\\\n  const vec4 C = vec4(0.211324865405187,  // (3.0-sqrt(3.0))/6.0\\\\n                      0.366025403784439,  // 0.5*(sqrt(3.0)-1.0)\\\\n                     -0.577350269189626,  // -1.0 + 2.0 * C.x\\\\n                      0.024390243902439); // 1.0 / 41.0\\\\n// First corner\\\\n  vec2 i  = floor(v + dot(v, C.yy) );\\\\n  vec2 x0 = v -   i + dot(i, C.xx);\\\\n\\\\n// Other corners\\\\n  vec2 i1;\\\\n  //i1.x = step( x0.y, x0.x ); // x0.x > x0.y ? 1.0 : 0.0\\\\n  //i1.y = 1.0 - i1.x;\\\\n  i1 = (x0.x > x0.y) ? vec2(1.0, 0.0) : vec2(0.0, 1.0);\\\\n  // x0 = x0 - 0.0 + 0.0 * C.xx ;\\\\n  // x1 = x0 - i1 + 1.0 * C.xx ;\\\\n  // x2 = x0 - 1.0 + 2.0 * C.xx ;\\\\n  vec4 x12 = x0.xyxy + C.xxzz;\\\\n  x12.xy -= i1;\\\\n\\\\n// Permutations\\\\n  i = mod289(i); // Avoid truncation effects in permutation\\\\n  vec3 p = permute( permute( i.y + vec3(0.0, i1.y, 1.0 ))\\\\n\\\\t\\\\t+ i.x + vec3(0.0, i1.x, 1.0 ));\\\\n\\\\n  vec3 m = max(0.5 - vec3(dot(x0,x0), dot(x12.xy,x12.xy), dot(x12.zw,x12.zw)), 0.0);\\\\n  m = m*m ;\\\\n  m = m*m ;\\\\n\\\\n// Gradients: 41 points uniformly over a line, mapped onto a diamond.\\\\n// The ring size 17*17 = 289 is close to a multiple of 41 (41*7 = 287)\\\\n\\\\n  vec3 x = 2.0 * fract(p * C.www) - 1.0;\\\\n  vec3 h = abs(x) - 0.5;\\\\n  vec3 ox = floor(x + 0.5);\\\\n  vec3 a0 = x - ox;\\\\n\\\\n// Normalise gradients implicitly by scaling m\\\\n// Approximation of: m *= inversesqrt( a0*a0 + h*h );\\\\n  m *= 1.79284291400159 - 0.85373472095314 * ( a0*a0 + h*h );\\\\n\\\\n// Compute final noise value at P\\\\n  vec3 g;\\\\n  g.x  = a0.x  * x0.x  + h.x  * x0.y;\\\\n  g.yz = a0.yz * x12.xz + h.yz * x12.yw;\\\\n  return 130.0 * dot(m, g);\\\\n}\\\\n\\\\\\\",[uF.NOISE_3D]:\\\\\\\"//\\\\n// Description : Array and textureless GLSL 2D/3D/4D simplex \\\\n//               noise functions.\\\\n//      Author : Ian McEwan, Ashima Arts.\\\\n//  Maintainer : stegu\\\\n//     Lastmod : 20110822 (ijm)\\\\n//     License : Copyright (C) 2011 Ashima Arts. All rights reserved.\\\\n//               Distributed under the MIT License. See LICENSE file.\\\\n//               https://github.com/ashima/webgl-noise\\\\n//               https://github.com/stegu/webgl-noise\\\\n// \\\\n\\\\n\\\\n\\\\nfloat snoise(vec3 v)\\\\n  { \\\\n  const vec2  C = vec2(1.0/6.0, 1.0/3.0) ;\\\\n  const vec4  D = vec4(0.0, 0.5, 1.0, 2.0);\\\\n\\\\n// First corner\\\\n  vec3 i  = floor(v + dot(v, C.yyy) );\\\\n  vec3 x0 =   v - i + dot(i, C.xxx) ;\\\\n\\\\n// Other corners\\\\n  vec3 g = step(x0.yzx, x0.xyz);\\\\n  vec3 l = 1.0 - g;\\\\n  vec3 i1 = min( g.xyz, l.zxy );\\\\n  vec3 i2 = max( g.xyz, l.zxy );\\\\n\\\\n  //   x0 = x0 - 0.0 + 0.0 * C.xxx;\\\\n  //   x1 = x0 - i1  + 1.0 * C.xxx;\\\\n  //   x2 = x0 - i2  + 2.0 * C.xxx;\\\\n  //   x3 = x0 - 1.0 + 3.0 * C.xxx;\\\\n  vec3 x1 = x0 - i1 + C.xxx;\\\\n  vec3 x2 = x0 - i2 + C.yyy; // 2.0*C.x = 1/3 = C.y\\\\n  vec3 x3 = x0 - D.yyy;      // -1.0+3.0*C.x = -0.5 = -D.y\\\\n\\\\n// Permutations\\\\n  i = mod289(i); \\\\n  vec4 p = permute( permute( permute( \\\\n             i.z + vec4(0.0, i1.z, i2.z, 1.0 ))\\\\n           + i.y + vec4(0.0, i1.y, i2.y, 1.0 )) \\\\n           + i.x + vec4(0.0, i1.x, i2.x, 1.0 ));\\\\n\\\\n// Gradients: 7x7 points over a square, mapped onto an octahedron.\\\\n// The ring size 17*17 = 289 is close to a multiple of 49 (49*6 = 294)\\\\n  float n_ = 0.142857142857; // 1.0/7.0\\\\n  vec3  ns = n_ * D.wyz - D.xzx;\\\\n\\\\n  vec4 j = p - 49.0 * floor(p * ns.z * ns.z);  //  mod(p,7*7)\\\\n\\\\n  vec4 x_ = floor(j * ns.z);\\\\n  vec4 y_ = floor(j - 7.0 * x_ );    // mod(j,N)\\\\n\\\\n  vec4 x = x_ *ns.x + ns.yyyy;\\\\n  vec4 y = y_ *ns.x + ns.yyyy;\\\\n  vec4 h = 1.0 - abs(x) - abs(y);\\\\n\\\\n  vec4 b0 = vec4( x.xy, y.xy );\\\\n  vec4 b1 = vec4( x.zw, y.zw );\\\\n\\\\n  //vec4 s0 = vec4(lessThan(b0,0.0))*2.0 - 1.0;\\\\n  //vec4 s1 = vec4(lessThan(b1,0.0))*2.0 - 1.0;\\\\n  vec4 s0 = floor(b0)*2.0 + 1.0;\\\\n  vec4 s1 = floor(b1)*2.0 + 1.0;\\\\n  vec4 sh = -step(h, vec4(0.0));\\\\n\\\\n  vec4 a0 = b0.xzyw + s0.xzyw*sh.xxyy ;\\\\n  vec4 a1 = b1.xzyw + s1.xzyw*sh.zzww ;\\\\n\\\\n  vec3 p0 = vec3(a0.xy,h.x);\\\\n  vec3 p1 = vec3(a0.zw,h.y);\\\\n  vec3 p2 = vec3(a1.xy,h.z);\\\\n  vec3 p3 = vec3(a1.zw,h.w);\\\\n\\\\n//Normalise gradients\\\\n  vec4 norm = taylorInvSqrt(vec4(dot(p0,p0), dot(p1,p1), dot(p2, p2), dot(p3,p3)));\\\\n  p0 *= norm.x;\\\\n  p1 *= norm.y;\\\\n  p2 *= norm.z;\\\\n  p3 *= norm.w;\\\\n\\\\n// Mix final noise value\\\\n  vec4 m = max(0.6 - vec4(dot(x0,x0), dot(x1,x1), dot(x2,x2), dot(x3,x3)), 0.0);\\\\n  m = m * m;\\\\n  return 42.0 * dot( m*m, vec4( dot(p0,x0), dot(p1,x1), \\\\n                                dot(p2,x2), dot(p3,x3) ) );\\\\n  }\\\\n\\\\\\\",[uF.NOISE_4D]:\\\\\\\"//\\\\n// Description : Array and textureless GLSL 2D/3D/4D simplex \\\\n//               noise functions.\\\\n//      Author : Ian McEwan, Ashima Arts.\\\\n//  Maintainer : stegu\\\\n//     Lastmod : 20110822 (ijm)\\\\n//     License : Copyright (C) 2011 Ashima Arts. All rights reserved.\\\\n//               Distributed under the MIT License. See LICENSE file.\\\\n//               https://github.com/ashima/webgl-noise\\\\n//               https://github.com/stegu/webgl-noise\\\\n// \\\\n\\\\n\\\\n\\\\n\\\\n\\\\n\\\\n\\\\nvec4 grad4(float j, vec4 ip)\\\\n  {\\\\n  const vec4 ones = vec4(1.0, 1.0, 1.0, -1.0);\\\\n  vec4 p,s;\\\\n\\\\n  p.xyz = floor( fract (vec3(j) * ip.xyz) * 7.0) * ip.z - 1.0;\\\\n  p.w = 1.5 - dot(abs(p.xyz), ones.xyz);\\\\n  s = vec4(lessThan(p, vec4(0.0)));\\\\n  p.xyz = p.xyz + (s.xyz*2.0 - 1.0) * s.www; \\\\n\\\\n  return p;\\\\n  }\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\n// (sqrt(5) - 1)/4 = F4, used once below\\\\n#define F4 0.309016994374947451\\\\n\\\\nfloat snoise(vec4 v)\\\\n  {\\\\n  const vec4  C = vec4( 0.138196601125011,  // (5 - sqrt(5))/20  G4\\\\n                        0.276393202250021,  // 2 * G4\\\\n                        0.414589803375032,  // 3 * G4\\\\n                       -0.447213595499958); // -1 + 4 * G4\\\\n\\\\n// First corner\\\\n  vec4 i  = floor(v + dot(v, vec4(F4)) );\\\\n  vec4 x0 = v -   i + dot(i, C.xxxx);\\\\n\\\\n// Other corners\\\\n\\\\n// Rank sorting originally contributed by Bill Licea-Kane, AMD (formerly ATI)\\\\n  vec4 i0;\\\\n  vec3 isX = step( x0.yzw, x0.xxx );\\\\n  vec3 isYZ = step( x0.zww, x0.yyz );\\\\n//  i0.x = dot( isX, vec3( 1.0 ) );\\\\n  i0.x = isX.x + isX.y + isX.z;\\\\n  i0.yzw = 1.0 - isX;\\\\n//  i0.y += dot( isYZ.xy, vec2( 1.0 ) );\\\\n  i0.y += isYZ.x + isYZ.y;\\\\n  i0.zw += 1.0 - isYZ.xy;\\\\n  i0.z += isYZ.z;\\\\n  i0.w += 1.0 - isYZ.z;\\\\n\\\\n  // i0 now contains the unique values 0,1,2,3 in each channel\\\\n  vec4 i3 = clamp( i0, 0.0, 1.0 );\\\\n  vec4 i2 = clamp( i0-1.0, 0.0, 1.0 );\\\\n  vec4 i1 = clamp( i0-2.0, 0.0, 1.0 );\\\\n\\\\n  //  x0 = x0 - 0.0 + 0.0 * C.xxxx\\\\n  //  x1 = x0 - i1  + 1.0 * C.xxxx\\\\n  //  x2 = x0 - i2  + 2.0 * C.xxxx\\\\n  //  x3 = x0 - i3  + 3.0 * C.xxxx\\\\n  //  x4 = x0 - 1.0 + 4.0 * C.xxxx\\\\n  vec4 x1 = x0 - i1 + C.xxxx;\\\\n  vec4 x2 = x0 - i2 + C.yyyy;\\\\n  vec4 x3 = x0 - i3 + C.zzzz;\\\\n  vec4 x4 = x0 + C.wwww;\\\\n\\\\n// Permutations\\\\n  i = mod289(i); \\\\n  float j0 = permute( permute( permute( permute(i.w) + i.z) + i.y) + i.x);\\\\n  vec4 j1 = permute( permute( permute( permute (\\\\n             i.w + vec4(i1.w, i2.w, i3.w, 1.0 ))\\\\n           + i.z + vec4(i1.z, i2.z, i3.z, 1.0 ))\\\\n           + i.y + vec4(i1.y, i2.y, i3.y, 1.0 ))\\\\n           + i.x + vec4(i1.x, i2.x, i3.x, 1.0 ));\\\\n\\\\n// Gradients: 7x7x6 points over a cube, mapped onto a 4-cross polytope\\\\n// 7*7*6 = 294, which is close to the ring size 17*17 = 289.\\\\n  vec4 ip = vec4(1.0/294.0, 1.0/49.0, 1.0/7.0, 0.0) ;\\\\n\\\\n  vec4 p0 = grad4(j0,   ip);\\\\n  vec4 p1 = grad4(j1.x, ip);\\\\n  vec4 p2 = grad4(j1.y, ip);\\\\n  vec4 p3 = grad4(j1.z, ip);\\\\n  vec4 p4 = grad4(j1.w, ip);\\\\n\\\\n// Normalise gradients\\\\n  vec4 norm = taylorInvSqrt(vec4(dot(p0,p0), dot(p1,p1), dot(p2, p2), dot(p3,p3)));\\\\n  p0 *= norm.x;\\\\n  p1 *= norm.y;\\\\n  p2 *= norm.z;\\\\n  p3 *= norm.w;\\\\n  p4 *= taylorInvSqrt(dot(p4,p4));\\\\n\\\\n// Mix contributions from the five corners\\\\n  vec3 m0 = max(0.6 - vec3(dot(x0,x0), dot(x1,x1), dot(x2,x2)), 0.0);\\\\n  vec2 m1 = max(0.6 - vec2(dot(x3,x3), dot(x4,x4)            ), 0.0);\\\\n  m0 = m0 * m0;\\\\n  m1 = m1 * m1;\\\\n  return 49.0 * ( dot(m0*m0, vec3( dot( p0, x0 ), dot( p1, x1 ), dot( p2, x2 )))\\\\n               + dot(m1*m1, vec2( dot( p3, x3 ), dot( p4, x4 ) ) ) ) ;\\\\n\\\\n  }\\\\n\\\\\\\"},_F={[uF.CLASSIC_PERLIN_2D]:Uo.VEC2,[uF.CLASSIC_PERLIN_3D]:Uo.VEC3,[uF.CLASSIC_PERLIN_4D]:Uo.VEC4,[uF.NOISE_2D]:Uo.VEC2,[uF.NOISE_3D]:Uo.VEC3,[uF.NOISE_4D]:Uo.VEC4},mF={[uF.CLASSIC_PERLIN_2D]:Uo.FLOAT,[uF.CLASSIC_PERLIN_3D]:Uo.FLOAT,[uF.CLASSIC_PERLIN_4D]:Uo.FLOAT,[uF.NOISE_2D]:Uo.FLOAT,[uF.NOISE_3D]:Uo.FLOAT,[uF.NOISE_4D]:Uo.FLOAT},fF={[uF.CLASSIC_PERLIN_2D]:\\\\\\\"cnoise\\\\\\\",[uF.CLASSIC_PERLIN_3D]:\\\\\\\"cnoise\\\\\\\",[uF.CLASSIC_PERLIN_4D]:\\\\\\\"cnoise\\\\\\\",[uF.NOISE_2D]:\\\\\\\"snoise\\\\\\\",[uF.NOISE_3D]:\\\\\\\"snoise\\\\\\\",[uF.NOISE_4D]:\\\\\\\"snoise\\\\\\\"};var gF;!function(t){t[t.NoChange=0]=\\\\\\\"NoChange\\\\\\\",t[t.Float=1]=\\\\\\\"Float\\\\\\\",t[t.Vec2=2]=\\\\\\\"Vec2\\\\\\\",t[t.Vec3=3]=\\\\\\\"Vec3\\\\\\\",t[t.Vec4=4]=\\\\\\\"Vec4\\\\\\\"}(gF||(gF={}));const vF=[gF.NoChange,gF.Float,gF.Vec2,gF.Vec3,gF.Vec4],yF={[gF.NoChange]:\\\\\\\"Same as noise\\\\\\\",[gF.Float]:\\\\\\\"Float\\\\\\\",[gF.Vec2]:\\\\\\\"Vec2\\\\\\\",[gF.Vec3]:\\\\\\\"Vec3\\\\\\\",[gF.Vec4]:\\\\\\\"Vec4\\\\\\\"},xF={[gF.NoChange]:Uo.FLOAT,[gF.Float]:Uo.FLOAT,[gF.Vec2]:Uo.VEC2,[gF.Vec3]:Uo.VEC3,[gF.Vec4]:Uo.VEC4},bF=[\\\\\\\"x\\\\\\\",\\\\\\\"y\\\\\\\",\\\\\\\"z\\\\\\\",\\\\\\\"w\\\\\\\"],wF=\\\\\\\"noise\\\\\\\",TF=dF.indexOf(uF.NOISE_3D),AF=gF.NoChange,MF={amp:1,freq:1};var EF;!function(t){t.AMP=\\\\\\\"amp\\\\\\\",t.POSITION=\\\\\\\"position\\\\\\\",t.FREQ=\\\\\\\"freq\\\\\\\",t.OFFSET=\\\\\\\"offset\\\\\\\"}(EF||(EF={}));const SF=new class extends ua{constructor(){super(...arguments),this.type=ha.INTEGER(TF,{menu:{entries:dF.map(((t,e)=>({name:`${t} (output: ${mF[t]})`,value:e})))}}),this.outputType=ha.INTEGER(AF,{menu:{entries:vF.map((t=>{const e=vF[t];return{name:yF[e],value:e}}))}}),this.octaves=ha.INTEGER(3,{range:[1,10],rangeLocked:[!0,!1]}),this.ampAttenuation=ha.FLOAT(.5,{range:[0,1]}),this.freqIncrease=ha.FLOAT(2,{range:[0,10],separatorAfter:!0})}};class CF extends gf{constructor(){super(...arguments),this.paramsConfig=SF}static type(){return\\\\\\\"noise\\\\\\\"}initializeNode(){super.initializeNode(),this.io.connection_points.initializeNode(),this.io.connection_points.spare_params.set_inputless_param_names([\\\\\\\"octaves\\\\\\\",\\\\\\\"ampAttenuation\\\\\\\",\\\\\\\"freqIncrease\\\\\\\"]),this.io.outputs.setNamedOutputConnectionPoints([new qo(wF,Uo.FLOAT)]),this.io.connection_points.set_expected_input_types_function(this._expected_input_types.bind(this)),this.io.connection_points.set_expected_output_types_function(this._expected_output_types.bind(this)),this.io.connection_points.set_input_name_function(this._gl_input_name.bind(this)),this.io.connection_points.set_output_name_function((()=>wF))}_gl_input_name(t){return[EF.AMP,EF.POSITION,EF.FREQ,EF.OFFSET][t]}paramDefaultValue(t){return MF[t]}_expected_input_types(){const t=dF[this.pv.type],e=this._expected_output_types()[0],n=_F[t];return[e,n,n,n]}_expected_output_types(){const t=dF[this.pv.type],e=vF[this.pv.outputType];return e==gF.NoChange?[_F[t]]:[xF[e]]}setLines(t){const e=[],n=[],i=dF[this.pv.type],s=pF[i],r=mF[i];e.push(new Cf(this,\\\\\\\"// Modulo 289 without a division (only multiplications)\\\\nfloat mod289(float x) {\\\\n  return x - floor(x * (1.0 / 289.0)) * 289.0;\\\\n}\\\\nvec2 mod289(vec2 x) {\\\\n  return x - floor(x * (1.0 / 289.0)) * 289.0;\\\\n}\\\\nvec3 mod289(vec3 x) {\\\\n  return x - floor(x * (1.0 / 289.0)) * 289.0;\\\\n}\\\\nvec4 mod289(vec4 x) {\\\\n  return x - floor(x * (1.0 / 289.0)) * 289.0;\\\\n}\\\\n// Modulo 7 without a division\\\\nvec3 mod7(vec3 x) {\\\\n  return x - floor(x * (1.0 / 7.0)) * 7.0;\\\\n}\\\\n\\\\n// Permutation polynomial: (34x^2 + x) mod 289\\\\nfloat permute(float x) {\\\\n     return mod289(((x*34.0)+1.0)*x);\\\\n}\\\\nvec3 permute(vec3 x) {\\\\n  return mod289((34.0 * x + 1.0) * x);\\\\n}\\\\nvec4 permute(vec4 x) {\\\\n     return mod289(((x*34.0)+1.0)*x);\\\\n}\\\\n\\\\nfloat taylorInvSqrt(float r)\\\\n{\\\\n  return 1.79284291400159 - 0.85373472095314 * r;\\\\n}\\\\nvec4 taylorInvSqrt(vec4 r)\\\\n{\\\\n  return 1.79284291400159 - 0.85373472095314 * r;\\\\n}\\\\n\\\\nvec2 fade(vec2 t) {\\\\n  return t*t*t*(t*(t*6.0-15.0)+10.0);\\\\n}\\\\nvec3 fade(vec3 t) {\\\\n  return t*t*t*(t*(t*6.0-15.0)+10.0);\\\\n}\\\\nvec4 fade(vec4 t) {\\\\n  return t*t*t*(t*(t*6.0-15.0)+10.0);\\\\n}\\\\\\\")),e.push(new Cf(this,s)),e.push(new Cf(this,this.fbm_function()));const o=this._expected_output_types()[0];if(o==r){const t=this.single_noise_line();n.push(t)}else{const t=Wo[o],e=[],s=this.glVarName(\\\\\\\"noise\\\\\\\");for(let r=0;r<t;r++){const t=bF[r];e.push(`${s}${t}`);const o=_F[i],a=Wo[o],l=`${o}(${f.range(a).map((t=>mf.float(1e3*r))).join(\\\\\\\", \\\\\\\")})`,c=this.single_noise_line(t,t,l);n.push(c)}const r=`vec${t} ${s} = vec${t}(${e.join(\\\\\\\", \\\\\\\")})`;n.push(r)}t.addDefinitions(this,e),t.addBodyLines(this,n)}fbm_method_name(){const t=dF[this.pv.type];return`fbm_${fF[t]}_${this.name()}`}fbm_function(){const t=dF[this.pv.type],e=fF[t],n=_F[t];return`\\\\nfloat ${this.fbm_method_name()} (in ${n} st) {\\\\n\\\\tfloat value = 0.0;\\\\n\\\\tfloat amplitude = 1.0;\\\\n\\\\tfor (int i = 0; i < ${mf.integer(this.pv.octaves)}; i++) {\\\\n\\\\t\\\\tvalue += amplitude * ${e}(st);\\\\n\\\\t\\\\tst *= ${mf.float(this.pv.freqIncrease)};\\\\n\\\\t\\\\tamplitude *= ${mf.float(this.pv.ampAttenuation)};\\\\n\\\\t}\\\\n\\\\treturn value;\\\\n}\\\\n`}single_noise_line(t,e,n){const i=this.fbm_method_name(),s=mf.any(this.variableForInput(EF.AMP)),r=mf.any(this.variableForInput(EF.POSITION)),o=mf.any(this.variableForInput(EF.FREQ));let a=mf.any(this.variableForInput(EF.OFFSET));n&&(a=`(${a}+${n})`);const l=[`(${r}*${o})+${a}`].join(\\\\\\\", \\\\\\\"),c=this.glVarName(wF),h=`${s}*${i}(${l})`;if(e)return`float ${c}${t} = (${h}).${e}`;return`${this.io.outputs.namedOutputConnectionPoints()[0].type()} ${c} = ${h}`}}class NF extends NP{static type(){return\\\\\\\"null\\\\\\\"}setLines(t){const e=mf.any(this.variableForInput(this._gl_input_name(0))),n=this.io.outputs.namedOutputConnectionPoints()[0],i=`${n.type()} ${this.glVarName(n.name())} = ${e}`;t.addBodyLines(this,[i])}}const LF=new class extends ua{};class OF extends gf{constructor(){super(...arguments),this.paramsConfig=LF}static type(){return\\\\\\\"output\\\\\\\"}initializeNode(){super.initializeNode(),this.addPostDirtyHook(\\\\\\\"_set_mat_to_recompile\\\\\\\",this._set_mat_to_recompile.bind(this)),this.lifecycle.add_on_add_hook((()=>{var t,e;null===(e=null===(t=this.material_node)||void 0===t?void 0:t.assemblerController)||void 0===e||e.add_output_inputs(this)}))}setLines(t){t.assembler().set_node_lines_output(this,t)}}class PF{constructor(){this._param_configs=[]}reset(){this._param_configs=[]}push(t){this._param_configs.push(t)}list(){return this._param_configs}}const RF=new class extends ua{constructor(){super(...arguments),this.name=ha.STRING(\\\\\\\"\\\\\\\"),this.type=ha.INTEGER(Go.indexOf(Uo.FLOAT),{menu:{entries:Go.map(((t,e)=>({name:t,value:e})))}}),this.asColor=ha.BOOLEAN(0,{visibleIf:{type:Go.indexOf(Uo.VEC3)}})}};class IF extends gf{constructor(){super(...arguments),this.paramsConfig=RF,this._allow_inputs_created_from_params=!1,this._on_create_set_name_if_none_bound=this._on_create_set_name_if_none.bind(this)}static type(){return\\\\\\\"param\\\\\\\"}initializeNode(){this.addPostDirtyHook(\\\\\\\"_set_mat_to_recompile\\\\\\\",this._set_mat_to_recompile.bind(this)),this.lifecycle.add_on_create_hook(this._on_create_set_name_if_none_bound),this.io.connection_points.initializeNode(),this.io.connection_points.set_expected_input_types_function((()=>[])),this.io.connection_points.set_expected_output_types_function((()=>[Go[this.pv.type]])),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.name])}))}))}setLines(t){const e=[],n=Go[this.pv.type],i=this.uniform_name();e.push(new Nf(this,n,i)),t.addDefinitions(this,e)}paramsGenerating(){return!0}setParamConfigs(){const t=Go[this.pv.type],e=jo[t];let n=Vo[t];if(this._param_configs_controller=this._param_configs_controller||new PF,this._param_configs_controller.reset(),n==Cr.VECTOR3&&this.p.asColor.value&&m.isArray(e)&&3==e.length){const t=new tg(Cr.COLOR,this.pv.name,e,this.uniform_name());this._param_configs_controller.push(t)}else{const t=new tg(n,this.pv.name,e,this.uniform_name());this._param_configs_controller.push(t)}}uniform_name(){const t=this.io.outputs.namedOutputConnectionPoints()[0];return this.glVarName(t.name())}set_gl_type(t){const e=Go.indexOf(t);this.p.type.set(e)}_on_create_set_name_if_none(){\\\\\\\"\\\\\\\"==this.pv.name&&this.p.name.set(this.name())}}class FF extends CP{static type(){return\\\\\\\"refract\\\\\\\"}initializeNode(){super.initializeNode(),this.io.connection_points.set_input_name_function((t=>[\\\\\\\"I\\\\\\\",\\\\\\\"N\\\\\\\",\\\\\\\"eta\\\\\\\"][t])),this.io.connection_points.set_output_name_function((t=>\\\\\\\"refract\\\\\\\")),this.io.connection_points.set_expected_input_types_function(this._expected_input_types.bind(this)),this.io.connection_points.set_expected_output_types_function(this._expected_output_types.bind(this))}gl_method_name(){return\\\\\\\"refract\\\\\\\"}_expected_input_types(){const t=this.io.connection_points.first_input_connection_type()||Uo.VEC3;return[t,t,Uo.FLOAT]}_expected_output_types(){return[this._expected_input_types()[0]]}}const DF=\\\\\\\"SSSModel\\\\\\\";const BF=new class extends ua{constructor(){super(...arguments),this.color=ha.COLOR([1,1,1]),this.thickness=ha.FLOAT(.1),this.power=ha.FLOAT(2),this.scale=ha.FLOAT(16),this.distortion=ha.FLOAT(.1),this.ambient=ha.FLOAT(.4),this.attenuation=ha.FLOAT(.8)}};class zF extends gf{constructor(){super(...arguments),this.paramsConfig=BF}static type(){return\\\\\\\"SSSModel\\\\\\\"}initializeNode(){this.io.outputs.setNamedOutputConnectionPoints([new qo(DF,Uo.SSS_MODEL)])}setLines(t){const e=[],n=this.glVarName(DF);e.push(`SSSModel ${n}`),e.push(`${n}.isActive = true;`),e.push(this._paramLineFloat(n,this.p.color)),e.push(this._paramLineFloat(n,this.p.thickness)),e.push(this._paramLineFloat(n,this.p.power)),e.push(this._paramLineFloat(n,this.p.scale)),e.push(this._paramLineFloat(n,this.p.distortion)),e.push(this._paramLineFloat(n,this.p.ambient)),e.push(this._paramLineFloat(n,this.p.attenuation)),t.addBodyLines(this,e)}_paramLineFloat(t,e){return`${t}.${e.name()} = ${mf.vector3(this.variableForInputParam(e))};`}}class kF extends NP{static type(){return\\\\\\\"quatMult\\\\\\\"}initializeNode(){super.initializeNode(),this.io.connection_points.set_input_name_function((t=>[\\\\\\\"quat0\\\\\\\",\\\\\\\"quat1\\\\\\\"][t])),this.io.connection_points.set_expected_input_types_function((()=>[Uo.VEC4,Uo.VEC4])),this.io.connection_points.set_expected_output_types_function((()=>[Uo.VEC4]))}gl_method_name(){return\\\\\\\"quatMult\\\\\\\"}gl_function_definitions(){return[new Cf(this,PR)]}}var UF;!function(t){t.AXIS=\\\\\\\"axis\\\\\\\",t.ANGLE=\\\\\\\"angle\\\\\\\"}(UF||(UF={}));const GF=[UF.AXIS,UF.ANGLE],VF={[UF.AXIS]:[0,0,1],[UF.ANGLE]:0};class HF extends LP{static type(){return\\\\\\\"quatFromAxisAngle\\\\\\\"}initializeNode(){super.initializeNode(),this.io.connection_points.set_input_name_function((t=>GF[t])),this.io.connection_points.set_expected_input_types_function((()=>[Uo.VEC3,Uo.FLOAT])),this.io.connection_points.set_expected_output_types_function((()=>[Uo.VEC4]))}paramDefaultValue(t){return VF[t]}gl_method_name(){return\\\\\\\"quatFromAxisAngle\\\\\\\"}gl_function_definitions(){return[new Cf(this,PR)]}}class jF extends NP{static type(){return\\\\\\\"quatToAngle\\\\\\\"}initializeNode(){super.initializeNode(),this.io.connection_points.set_input_name_function((t=>[\\\\\\\"quat\\\\\\\"][t])),this.io.connection_points.set_expected_input_types_function((()=>[Uo.VEC4])),this.io.connection_points.set_expected_output_types_function((()=>[Uo.FLOAT]))}gl_method_name(){return\\\\\\\"quatToAngle\\\\\\\"}gl_function_definitions(){return[new Cf(this,PR)]}}class WF extends NP{static type(){return\\\\\\\"quatToAxis\\\\\\\"}initializeNode(){super.initializeNode(),this.io.connection_points.set_input_name_function((t=>[\\\\\\\"quat\\\\\\\"][t])),this.io.connection_points.set_expected_input_types_function((()=>[Uo.VEC4])),this.io.connection_points.set_expected_output_types_function((()=>[Uo.VEC3]))}gl_method_name(){return\\\\\\\"quatToAxis\\\\\\\"}gl_function_definitions(){return[new Cf(this,PR)]}}const qF=\\\\\\\"val\\\\\\\";const XF=new class extends ua{constructor(){super(...arguments),this.name=ha.STRING(\\\\\\\"ramp\\\\\\\"),this.input=ha.FLOAT(0)}};class YF extends gf{constructor(){super(...arguments),this.paramsConfig=XF}static type(){return\\\\\\\"ramp\\\\\\\"}initializeNode(){super.initializeNode(),this.addPostDirtyHook(\\\\\\\"_set_mat_to_recompile\\\\\\\",this._set_mat_to_recompile.bind(this)),this.io.outputs.setNamedOutputConnectionPoints([new qo(qF,Uo.FLOAT)]),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.name])}))}))}setLines(t){const e=Uo.VEC3,n=this.glVarName(\\\\\\\"tmpTexureVarName\\\\\\\"),i=Uo.FLOAT,s=this._uniform_name(),r=this.glVarName(qF),o=new Nf(this,Uo.SAMPLER_2D,s);t.addDefinitions(this,[o]);const a=this.variableForInputParam(this.p.input),l=[`${e} ${n} = texture2D(${this._uniform_name()}, vec2(${a}, 0.0)).xyz`,`${i} ${r} = -1.0 + ${n}.x + ${n}.y + ${n}.z`];t.addBodyLines(this,l)}paramsGenerating(){return!0}setParamConfigs(){this._param_configs_controller=this._param_configs_controller||new PF,this._param_configs_controller.reset();const t=new tg(Cr.RAMP,this.pv.name,Ao.DEFAULT_VALUE,this._uniform_name());this._param_configs_controller.push(t)}_uniform_name(){return\\\\\\\"ramp_texture_\\\\\\\"+this.glVarName(qF)}}const $F=\\\\\\\"rand\\\\\\\";const JF=new class extends ua{constructor(){super(...arguments),this.seed=ha.VECTOR2([1,1])}};class ZF extends gf{constructor(){super(...arguments),this.paramsConfig=JF}static type(){return\\\\\\\"random\\\\\\\"}initializeNode(){super.initializeNode(),this.io.outputs.setNamedOutputConnectionPoints([new qo($F,Uo.FLOAT)])}setLines(t){const e=this.io.inputs.namedInputConnectionPoints()[0].name(),n=mf.vector2(this.variableForInput(e)),i=`float ${this.glVarName($F)} = rand(${n})`;t.addBodyLines(this,[i])}}const KF=new class extends ua{constructor(){super(...arguments),this.rgb=ha.VECTOR3([1,1,1])}};class QF extends gf{constructor(){super(...arguments),this.paramsConfig=KF}static type(){return\\\\\\\"rgbToHsv\\\\\\\"}initializeNode(){this.io.outputs.setNamedOutputConnectionPoints([new qo(\\\\\\\"hsv\\\\\\\",Uo.VEC3)])}setLines(t){const e=[],n=[];e.push(new Cf(this,\\\\\\\"// https://stackoverflow.com/questions/15095909/from-rgb-to-hsv-in-opengl-glsl\\\\nvec3 rgb2hsv(vec3 c)\\\\n{\\\\n\\\\tvec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0);\\\\n\\\\tvec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g));\\\\n\\\\tvec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r));\\\\n\\\\n\\\\tfloat d = q.x - min(q.w, q.y);\\\\n\\\\tfloat e = 1.0e-10;\\\\n\\\\treturn vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x);\\\\n}\\\\\\\"));const i=mf.vector3(this.variableForInputParam(this.p.rgb)),s=this.glVarName(\\\\\\\"hsv\\\\\\\");n.push(`vec3 ${s} = rgb2hsv(${i})`),t.addDefinitions(this,e),t.addBodyLines(this,n)}}var tD;!function(t){t[t.AXIS=0]=\\\\\\\"AXIS\\\\\\\",t[t.QUAT=1]=\\\\\\\"QUAT\\\\\\\"}(tD||(tD={}));const eD=[tD.AXIS,tD.QUAT],nD={[tD.AXIS]:\\\\\\\"from axis + angle\\\\\\\",[tD.QUAT]:\\\\\\\"from quaternion\\\\\\\"},iD={[tD.AXIS]:[\\\\\\\"vector\\\\\\\",\\\\\\\"axis\\\\\\\",\\\\\\\"angle\\\\\\\"],[tD.QUAT]:[\\\\\\\"vector\\\\\\\",\\\\\\\"quat\\\\\\\"]},sD={[tD.AXIS]:\\\\\\\"rotateWithAxisAngle\\\\\\\",[tD.QUAT]:\\\\\\\"rotateWithQuat\\\\\\\"},rD={[tD.AXIS]:[Uo.VEC3,Uo.VEC3,Uo.FLOAT],[tD.QUAT]:[Uo.VEC3,Uo.VEC4]},oD={vector:[0,0,1],axis:[0,1,0]};const aD=new class extends ua{constructor(){super(...arguments),this.signature=ha.INTEGER(tD.AXIS,{menu:{entries:eD.map(((t,e)=>({name:nD[t],value:e})))}})}};class lD extends gf{constructor(){super(...arguments),this.paramsConfig=aD}static type(){return\\\\\\\"rotate\\\\\\\"}initializeNode(){super.initializeNode(),this.io.connection_points.set_expected_input_types_function(this._expected_input_types.bind(this)),this.io.connection_points.set_expected_output_types_function(this._expected_output_types.bind(this)),this.io.connection_points.set_input_name_function(this._gl_input_name.bind(this))}set_signature(t){const e=eD.indexOf(t);this.p.signature.set(e)}_gl_input_name(t){const e=eD[this.pv.signature];return iD[e][t]}paramDefaultValue(t){return oD[t]}gl_method_name(){const t=eD[this.pv.signature];return sD[t]}_expected_input_types(){const t=eD[this.pv.signature];return rD[t]}_expected_output_types(){return[Uo.VEC3]}gl_function_definitions(){return[new Cf(this,PR)]}setLines(t){const e=this.io.outputs.namedOutputConnectionPoints()[0].type(),n=this.io.inputs.namedInputConnectionPoints().map(((t,e)=>{const n=t.name();return mf.any(this.variableForInput(n))})).join(\\\\\\\", \\\\\\\"),i=`${e} ${this.glVarName(this.io.connection_points.output_name(0))} = ${this.gl_method_name()}(${n})`;t.addBodyLines(this,[i]),t.addDefinitions(this,this.gl_function_definitions())}}const cD=[\\\\\\\"x\\\\\\\",\\\\\\\"y\\\\\\\",\\\\\\\"z\\\\\\\",\\\\\\\"w\\\\\\\"];class hD extends NP{static type(){return\\\\\\\"round\\\\\\\"}setLines(t){const e=this.io.inputs.namedInputConnectionPoints()[0],n=mf.vector2(this.variableForInput(e.name())),i=this.io.outputs.namedOutputConnectionPoints()[0],s=this.glVarName(i.name()),r=[];if(1==Wo[i.type()])r.push(`${i.type()} ${s} = ${this._simple_line(n)}`);else{const t=cD.map((t=>this._simple_line(`${n}.${t}`)));r.push(`${i.type()} ${s} = ${i.type()}(${t.join(\\\\\\\",\\\\\\\")})`)}t.addBodyLines(this,r)}_simple_line(t){return`sign(${t})*floor(abs(${t})+0.5)`}}const uD=new class extends ua{constructor(){super(...arguments),this.position=ha.VECTOR3([0,0,0]),this.center=ha.VECTOR3([0,0,0]),this.radius=ha.FLOAT(1),this.feather=ha.FLOAT(.1)}};class dD extends gf{constructor(){super(...arguments),this.paramsConfig=uD}static type(){return\\\\\\\"sphere\\\\\\\"}initializeNode(){super.initializeNode(),this.io.outputs.setNamedOutputConnectionPoints([new qo(\\\\\\\"float\\\\\\\",Uo.FLOAT)])}setLines(t){const e=mf.vector2(this.variableForInputParam(this.p.position)),n=mf.vector2(this.variableForInputParam(this.p.center)),i=mf.float(this.variableForInputParam(this.p.radius)),s=mf.float(this.variableForInputParam(this.p.feather)),r=`float ${this.glVarName(\\\\\\\"float\\\\\\\")} = disk3d(${e}, ${n}, ${i}, ${s})`;t.addBodyLines(this,[r]),t.addDefinitions(this,[new Cf(this,eI)])}}const pD=new class extends ua{};class _D extends gf{constructor(){super(...arguments),this.paramsConfig=pD}static type(){return ns.INPUT}initializeNode(){this.io.connection_points.set_output_name_function(this._expected_output_names.bind(this)),this.io.connection_points.set_expected_input_types_function((()=>[])),this.io.connection_points.set_expected_output_types_function(this._expected_output_types.bind(this))}parent(){return super.parent()}_expected_output_names(t){const e=this.parent();return(null==e?void 0:e.child_expected_input_connection_point_name(t))||`out${t}`}_expected_output_types(){const t=this.parent();return(null==t?void 0:t.child_expected_input_connection_point_types())||[]}setLines(t){const e=this.parent();e&&e.set_lines_block_start(t,this)}}const mD=new class extends ua{};class fD extends gf{constructor(){super(...arguments),this.paramsConfig=mD}static type(){return\\\\\\\"switch\\\\\\\"}initializeNode(){this.io.connection_points.set_input_name_function(this._gl_input_name.bind(this)),this.io.connection_points.set_expected_input_types_function(this._expected_input_types.bind(this)),this.io.connection_points.set_expected_output_types_function(this._expected_output_types.bind(this))}_gl_input_name(t){return 0==t?fD.INPUT_INDEX:\\\\\\\"in\\\\\\\"+(t-1)}_expected_input_types(){const t=this.io.connection_points.input_connection_type(1)||Uo.FLOAT,e=this.io.connections.inputConnections(),n=e?or.clamp(e.length,2,16):2,i=[Uo.INT];for(let e=0;e<n;e++)i.push(t);return i}_expected_output_types(){return[this._expected_input_types()[1]||Uo.FLOAT]}setLines(t){const e=this.io.outputs.namedOutputConnectionPoints()[0].type(),n=this.glVarName(this.io.connection_points.output_name(0)),i=this.io.connection_points.input_name(0),s=mf.integer(this.variableForInput(i)),r=this.glVarName(\\\\\\\"index\\\\\\\"),o=[`${e} ${n};`,`int ${r} = ${s}`],a=this._expected_input_types().length-1;for(let t=0;t<a;t++){const e=0==t?\\\\\\\"if\\\\\\\":\\\\\\\"else if\\\\\\\",i=`${r} == ${t}`,s=this.io.connection_points.input_name(t+1),a=`${e}(${i}){${`${n} = ${mf.any(this.variableForInput(s))};`}}`;o.push(a)}t.addBodyLines(this,o)}}fD.INPUT_INDEX=\\\\\\\"index\\\\\\\";const gD=new class extends ua{constructor(){super(...arguments),this.paramName=ha.STRING(\\\\\\\"textureMap\\\\\\\"),this.defaultValue=ha.STRING(vi.UV),this.uv=ha.VECTOR2([0,0])}};class vD extends gf{constructor(){super(...arguments),this.paramsConfig=gD}static type(){return\\\\\\\"texture\\\\\\\"}initializeNode(){this.addPostDirtyHook(\\\\\\\"_set_mat_to_recompile\\\\\\\",this._set_mat_to_recompile.bind(this)),this.io.outputs.setNamedOutputConnectionPoints([new qo(vD.OUTPUT_NAME,Uo.VEC4)]),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.paramName])}))}))}setLines(t){const e=mf.vector2(this.variableForInputParam(this.p.uv)),n=this.glVarName(vD.OUTPUT_NAME),i=this._uniform_name(),s=new Nf(this,Uo.SAMPLER_2D,i),r=`vec4 ${n} = texture2D(${i}, ${e})`;t.addDefinitions(this,[s]),t.addBodyLines(this,[r])}paramsGenerating(){return!0}setParamConfigs(){this._param_configs_controller=this._param_configs_controller||new PF,this._param_configs_controller.reset();const t=new tg(Cr.OPERATOR_PATH,this.pv.paramName,this.pv.defaultValue,this._uniform_name());this._param_configs_controller.push(t)}_uniform_name(){return this.glVarName(this.pv.paramName)}}var yD;vD.OUTPUT_NAME=\\\\\\\"rgba\\\\\\\",function(t){t.POSITION=\\\\\\\"position\\\\\\\",t.DIR_VEC=\\\\\\\"direction vector\\\\\\\"}(yD||(yD={}));const xD=[yD.POSITION,yD.DIR_VEC];const bD=new class extends ua{constructor(){super(...arguments),this.vec=ha.VECTOR3([0,0,0]),this.interpretation=ha.INTEGER(0,{menu:{entries:xD.map(((t,e)=>({name:t,value:e})))}})}};class wD extends gf{constructor(){super(...arguments),this.paramsConfig=bD}static type(){return\\\\\\\"toWorldSpace\\\\\\\"}initializeNode(){this.io.connection_points.spare_params.set_inputless_param_names([\\\\\\\"interpretation\\\\\\\"]),this.io.outputs.setNamedOutputConnectionPoints([new qo(\\\\\\\"out\\\\\\\",Uo.VEC3)])}setLines(t){const e=[],n=mf.vector3(this.variableForInputParam(this.p.vec)),i=this.glVarName(\\\\\\\"out\\\\\\\");switch(xD[this.pv.interpretation]){case yD.POSITION:e.push(`vec3 ${i} = (modelMatrix * vec4( ${n}, 1.0 )).xyz`);break;case yD.DIR_VEC:e.push(`vec3 ${i} = normalize( mat3( modelMatrix[0].xyz, modelMatrix[1].xyz, modelMatrix[2].xyz ) * ${n} )`)}t.addBodyLines(this,e)}}var TD;!function(t){t.CONDITION=\\\\\\\"condition\\\\\\\",t.IF_TRUE=\\\\\\\"ifTrue\\\\\\\",t.IF_FALSE=\\\\\\\"ifFalse\\\\\\\"}(TD||(TD={}));const AD=[TD.CONDITION,TD.IF_TRUE,TD.IF_FALSE];class MD extends yf{static type(){return\\\\\\\"twoWaySwitch\\\\\\\"}initializeNode(){super.initializeNode(),this.io.connection_points.initializeNode(),this.io.connection_points.set_expected_input_types_function(this._expected_input_types.bind(this)),this.io.connection_points.set_expected_output_types_function(this._expected_output_types.bind(this)),this.io.connection_points.set_input_name_function(this._gl_input_name.bind(this)),this.io.connection_points.set_output_name_function(this._gl_output_name.bind(this))}_gl_input_name(t){return AD[t]}_gl_output_name(){return\\\\\\\"val\\\\\\\"}_expected_input_types(){const t=this.io.connections.inputConnection(1)||this.io.connections.inputConnection(2),e=t?t.src_connection_point().type():Uo.FLOAT;return[Uo.BOOL,e,e]}_expected_output_types(){return[this._expected_input_types()[1]]}setLines(t){const e=[],n=this.glVarName(\\\\\\\"val\\\\\\\"),i=mf.bool(this.variableForInput(TD.CONDITION)),s=mf.any(this.variableForInput(TD.IF_TRUE)),r=mf.any(this.variableForInput(TD.IF_FALSE)),o=this._expected_output_types()[0];e.push(`${o} ${n}`),e.push(`if(${i}){`),e.push(`${n} = ${s}`),e.push(\\\\\\\"} else {\\\\\\\"),e.push(`${n} = ${r}`),e.push(\\\\\\\"}\\\\\\\"),t.addBodyLines(this,e)}}const ED=[Uo.FLOAT,Uo.VEC2,Uo.VEC3,Uo.VEC4];const SD=new class extends ua{constructor(){super(...arguments),this.name=ha.STRING(\\\\\\\"\\\\\\\"),this.type=ha.INTEGER(0,{menu:{entries:ED.map(((t,e)=>({name:t,value:e})))}})}};class CD extends gf{constructor(){super(...arguments),this.paramsConfig=SD,this._on_create_set_name_if_none_bound=this._on_create_set_name_if_none.bind(this)}static type(){return\\\\\\\"varyingRead\\\\\\\"}initializeNode(){this.addPostDirtyHook(\\\\\\\"_set_mat_to_recompile\\\\\\\",this._set_mat_to_recompile.bind(this)),this.lifecycle.add_on_create_hook(this._on_create_set_name_if_none_bound),this.io.connection_points.initializeNode(),this.io.connection_points.set_output_name_function((()=>this.output_name)),this.io.connection_points.set_expected_input_types_function((()=>[])),this.io.connection_points.set_expected_output_types_function((()=>[ED[this.pv.type]])),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.name])}))}))}get output_name(){return CD.OUTPUT_NAME}setLines(t){if(t.current_shader_name==Mf.FRAGMENT){const e=this.pv.name,n=new Lf(this,this.gl_type(),e),i=this.glVarName(CD.OUTPUT_NAME),s=`${this.gl_type()} ${i} = ${e}`;t.addDefinitions(this,[n]),t.addBodyLines(this,[s])}}get attribute_name(){return this.pv.name.trim()}gl_type(){return this.io.outputs.namedOutputConnectionPoints()[0].type()}set_gl_type(t){this.p.type.set(ED.indexOf(t))}_on_create_set_name_if_none(){\\\\\\\"\\\\\\\"==this.pv.name&&this.p.name.set(this.name())}}CD.OUTPUT_NAME=\\\\\\\"fragment\\\\\\\";const ND={start:[0,0,1],end:[1,0,0],up:[0,1,0]};class LD extends(hR(\\\\\\\"vectorAlign\\\\\\\",{in:[\\\\\\\"start\\\\\\\",\\\\\\\"end\\\\\\\",\\\\\\\"up\\\\\\\"],method:\\\\\\\"vectorAlignWithUp\\\\\\\",functions:[PR]})){_expected_input_types(){const t=Uo.VEC3;return[t,t,t]}_expected_output_types(){return[Uo.VEC4]}paramDefaultValue(t){return ND[t]}}const OD={start:[0,0,1],end:[1,0,0]};class PD extends(eR(\\\\\\\"vectorAngle\\\\\\\",{in:[\\\\\\\"start\\\\\\\",\\\\\\\"end\\\\\\\"],method:\\\\\\\"vectorAngle\\\\\\\",functions:[PR]})){_expected_input_types(){const t=Uo.VEC3;return[t,t]}_expected_output_types(){return[Uo.FLOAT]}paramDefaultValue(t){return OD[t]}}const RD={only:[`${GI.context()}/${GI.type()}`,`${CI.context()}/${CI.type()}`,`${PI.context()}/${PI.type()}`]};class ID extends aa{static context(){return ts.JS}initializeBaseNode(){this.uiData.setLayoutHorizontal(),this.io.connection_points.initializeNode()}cook(){console.warn(\\\\\\\"js nodes should never cook\\\\\\\")}_set_function_node_to_recompile(){var t;null===(t=this.function_node)||void 0===t||t.assembler_controller.set_compilation_required_and_dirty(this)}get function_node(){var t;const e=this.parent();if(e)return e.type()==this.type()?null===(t=e)||void 0===t?void 0:t.function_node:e}js_var_name(t){return`v_POLY_${this.name()}_${t}`}variableForInput(t){const e=this.io.inputs.get_input_index(t),n=this.io.connections.inputConnection(e);if(n){const e=n.node_src,i=e.io.outputs.namedOutputConnectionPoints()[n.output_index];if(i){const t=i.name();return e.js_var_name(t)}throw console.warn(`no output called '${t}' for gl node ${e.path()}`),\\\\\\\"variable_for_input ERROR\\\\\\\"}return\\\\\\\"to debug...\\\\\\\"}setLines(t){}reset_code(){var t;null===(t=this._param_configs_controller)||void 0===t||t.reset()}setParamConfigs(){}param_configs(){var t;return null===(t=this._param_configs_controller)||void 0===t?void 0:t.list()}js_input_default_value(t){return null}}new class extends ua{};const FD=[Xo.FLOAT,Xo.VEC2,Xo.VEC3,Xo.VEC4];const DD=new class extends ua{constructor(){super(...arguments),this.name=ha.STRING(\\\\\\\"\\\\\\\"),this.type=ha.INTEGER(0,{menu:{entries:FD.map(((t,e)=>({name:t,value:e})))}})}};class BD extends ID{constructor(){super(...arguments),this.paramsConfig=DD,this._on_create_set_name_if_none_bound=this._on_create_set_name_if_none.bind(this)}static type(){return\\\\\\\"attribute\\\\\\\"}initializeNode(){this.lifecycle.add_on_create_hook(this._on_create_set_name_if_none_bound),this.io.connection_points.initializeNode(),this.io.connection_points.set_expected_input_types_function((()=>[])),this.io.connection_points.set_expected_output_types_function((()=>[FD[this.pv.type]]))}get input_name(){return BD.INPUT_NAME}get output_name(){return BD.OUTPUT_NAME}setLines(t){var e;null===(e=this.function_node)||void 0===e||e.assembler_controller.assembler.set_node_lines_attribute(this,t)}get attribute_name(){return this.pv.name.trim()}gl_type(){return this.io.outputs.namedOutputConnectionPoints()[0].type()}set_gl_type(t){this.p.type.set(FD.indexOf(t))}connected_input_node(){return this.io.inputs.named_input(BD.INPUT_NAME)}connected_input_connection_point(){return this.io.inputs.named_input_connection_point(BD.INPUT_NAME)}output_connection_point(){return this.io.outputs.namedOutputConnectionPointsByName(this.input_name)}get is_importing(){return this.io.outputs.used_output_names().length>0}_on_create_set_name_if_none(){\\\\\\\"\\\\\\\"==this.pv.name&&this.p.name.set(this.name())}}BD.INPUT_NAME=\\\\\\\"export\\\\\\\",BD.OUTPUT_NAME=\\\\\\\"val\\\\\\\";const zD=new class extends ua{};class kD extends ID{constructor(){super(...arguments),this.paramsConfig=zD}static type(){return\\\\\\\"globals\\\\\\\"}createParams(){var t;null===(t=this.function_node)||void 0===t||t.assembler_controller.add_globals_outputs(this)}setLines(t){var e,n;null===(n=null===(e=this.function_node)||void 0===e?void 0:e.assembler_controller)||void 0===n||n.assembler.set_node_lines_globals(this,t)}}const UD=new class extends ua{};class GD extends ID{constructor(){super(...arguments),this.paramsConfig=UD}static type(){return\\\\\\\"output\\\\\\\"}initializeNode(){super.initializeNode(),this.addPostDirtyHook(\\\\\\\"_set_mat_to_recompile\\\\\\\",this._set_function_node_to_recompile.bind(this))}createParams(){var t;null===(t=this.function_node)||void 0===t||t.assembler_controller.add_output_inputs(this)}setLines(t){var e;null===(e=this.function_node)||void 0===e||e.assembler_controller.assembler.set_node_lines_output(this,t)}}class VD{constructor(t=[]){this._definitions=t,this._errored=!1}get errored(){return this._errored}get error_message(){return this._error_message}uniq(){const t=new Map,e=[];for(let n of this._definitions)if(!this._errored){const i=n.name(),s=t.get(i);s?s.data_type!=n.data_type&&(this._errored=!0,this._error_message=`attempt to create '${n.name()}' with types '${n.data_type}' by node '${n.node.path()}', when there is already an existing with type ${s.data_type} from node '${s.node.path()}'`,console.warn(\\\\\\\"emitting error message:\\\\\\\",this._error_message)):(t.set(i,n),e.push(i))}const n=[];for(let i of e){const e=t.get(i);e&&n.push(e)}return n}}var HD;!function(t){t.ATTRIBUTE=\\\\\\\"attribute\\\\\\\",t.FUNCTION=\\\\\\\"function\\\\\\\",t.UNIFORM=\\\\\\\"uniform\\\\\\\"}(HD||(HD={}));class jD{constructor(t,e,n,i){this._definition_type=t,this._data_type=e,this._node=n,this._name=i}get definition_type(){return this._definition_type}get data_type(){return this._data_type}get node(){return this._node}name(){return this._name}collection_instance(){return new VD}}class WD extends jD{constructor(t,e,n){super(HD.UNIFORM,e,t,n),this._node=t,this._data_type=e,this._name=n}get line(){return`uniform ${this.data_type} ${this.name()}`}}class qD extends Qf{constructor(t,e,n,i){super(t,e,n),this._uniform_name=i}get uniform_name(){return this._uniform_name}static uniform_by_type(t){switch(t){case Cr.BOOLEAN:case Cr.BUTTON:return{value:0};case Cr.COLOR:return{value:new D.a(0,0,0)};case Cr.FLOAT:case Cr.FOLDER:case Cr.INTEGER:case Cr.OPERATOR_PATH:case Cr.NODE_PATH:case Cr.PARAM_PATH:return{value:0};case Cr.RAMP:case Cr.STRING:return{value:null};case Cr.VECTOR2:return{value:new d.a(0,0)};case Cr.VECTOR3:return{value:new p.a(0,0,0)};case Cr.VECTOR4:return{value:new _.a(0,0,0,0)}}os.unreachable(t)}}const XD=new class extends ua{constructor(){super(...arguments),this.name=ha.STRING(\\\\\\\"\\\\\\\"),this.type=ha.INTEGER(Yo.indexOf(Xo.FLOAT),{menu:{entries:Yo.map(((t,e)=>({name:t,value:e})))}}),this.asColor=ha.BOOLEAN(0,{visibleIf:{type:Yo.indexOf(Xo.VEC3)}})}};class YD extends ID{constructor(){super(...arguments),this.paramsConfig=XD,this._allow_inputs_created_from_params=!1,this._on_create_set_name_if_none_bound=this._on_create_set_name_if_none.bind(this)}static type(){return\\\\\\\"param\\\\\\\"}initializeNode(){this.addPostDirtyHook(\\\\\\\"_set_mat_to_recompile\\\\\\\",this._set_function_node_to_recompile.bind(this)),this.lifecycle.add_on_create_hook(this._on_create_set_name_if_none_bound),this.io.connection_points.initializeNode(),this.io.connection_points.set_expected_input_types_function((()=>[])),this.io.connection_points.set_expected_output_types_function((()=>[Yo[this.pv.type]]))}setLines(t){const e=[],n=Yo[this.pv.type],i=this.uniform_name();e.push(new WD(this,n,i)),t.addDefinitions(this,e)}setParamConfigs(){const t=Yo[this.pv.type],e=Zo[t];let n=$o[t];if(this._param_configs_controller=this._param_configs_controller||new PF,this._param_configs_controller.reset(),n==Cr.VECTOR3&&this.p.asColor.value&&m.isArray(e)&&3==e.length){const t=new qD(Cr.COLOR,this.pv.name,e,this.uniform_name());this._param_configs_controller.push(t)}else{const t=new qD(n,this.pv.name,e,this.uniform_name());this._param_configs_controller.push(t)}}uniform_name(){const t=this.io.outputs.namedOutputConnectionPoints()[0];return this.js_var_name(t.name())}set_gl_type(t){const e=Yo.indexOf(t);this.p.type.set(e)}_on_create_set_name_if_none(){\\\\\\\"\\\\\\\"==this.pv.name&&this.p.name.set(this.name())}}class $D extends aa{constructor(){super(...arguments),this._cook_main_without_inputs_when_dirty_bound=this._cook_main_without_inputs_when_dirty.bind(this)}static context(){return ts.MAT}initializeBaseNode(){super.initializeBaseNode(),this.nameController.add_post_set_fullPath_hook(this.set_material_name.bind(this)),this.addPostDirtyHook(\\\\\\\"_cook_main_without_inputs_when_dirty\\\\\\\",(()=>{setTimeout(this._cook_main_without_inputs_when_dirty_bound,0)}))}async _cook_main_without_inputs_when_dirty(){await this.cookController.cookMainWithoutInputs()}set_material_name(){this._material&&(this._material.name=this.path())}get material(){return this._material=this._material||this.createMaterial()}setMaterial(t){this._setContainer(t)}}class JD{constructor(t){this.node=t}add_params(){}update(){}get material(){return this.node.material}}const ZD={NoBlending:w.ub,NormalBlending:w.xb,AdditiveBlending:w.e,SubtractiveBlending:w.Sc,MultiplyBlending:w.mb},KD=Object.keys(ZD);function QD(t){return class extends t{constructor(){super(...arguments),this.doubleSided=ha.BOOLEAN(0),this.front=ha.BOOLEAN(1,{visibleIf:{doubleSided:!1}}),this.overrideShadowSide=ha.BOOLEAN(0),this.shadowDoubleSided=ha.BOOLEAN(0,{visibleIf:{overrideShadowSide:!0}}),this.shadowFront=ha.BOOLEAN(1,{visibleIf:{overrideShadowSide:!0,shadowDoubleSided:!1}}),this.colorWrite=ha.BOOLEAN(1,{separatorBefore:!0,cook:!1,callback:(t,e)=>{tB.update(t)}}),this.depthWrite=ha.BOOLEAN(1,{cook:!1,callback:(t,e)=>{tB.update(t)}}),this.depthTest=ha.BOOLEAN(1,{cook:!1,callback:(t,e)=>{tB.update(t)}}),this.premultipliedAlpha=ha.BOOLEAN(!1,{separatorAfter:!0}),this.blending=ha.INTEGER(w.xb,{menu:{entries:KD.map((t=>({name:t,value:ZD[t]})))}}),this.dithering=ha.BOOLEAN(0),this.polygonOffset=ha.BOOLEAN(!1,{separatorBefore:!0}),this.polygonOffsetFactor=ha.INTEGER(0,{range:[0,1e3],visibleIf:{polygonOffset:1}}),this.polygonOffsetUnits=ha.INTEGER(0,{range:[0,1e3],visibleIf:{polygonOffset:1}})}}}QD(ua);class tB extends JD{constructor(t){super(t),this.node=t}initializeNode(){}async update(){const t=this.node.material,e=this.node.pv;this._updateSides(t,e),t.colorWrite=e.colorWrite,t.depthWrite=e.depthWrite,t.depthTest=e.depthTest,t.blending=e.blending,t.premultipliedAlpha=e.premultipliedAlpha,t.dithering=e.dithering,t.polygonOffset=e.polygonOffset,t.polygonOffset&&(t.polygonOffsetFactor=e.polygonOffsetFactor,t.polygonOffsetUnits=e.polygonOffsetUnits,t.needsUpdate=!0)}_updateSides(t,e){const n=e.front?w.H:w.i,i=e.doubleSided?w.z:n;if(i!=t.side&&(t.side=i,t.needsUpdate=!0),e.overrideShadowSide){const t=e.shadowFront?w.H:w.i,n=e.shadowDoubleSided?w.z:t,i=this.node.material;n!=i.shadowSide&&(i.shadowSide=n,i.needsUpdate=!0)}else t.shadowSide=null;const s=t.customMaterials;if(s){const t=Object.keys(s);for(let n of t){const t=s[n];t&&this._updateSides(t,e)}}}static async update(t){t.controllers.advancedCommon.update()}}class eB extends(QD(ua)){constructor(){super(...arguments),this.color=ha.COLOR([1,1,1]),this.lineWidth=ha.FLOAT(1,{range:[1,10],rangeLocked:[!0,!1]})}}const nB=new eB;class iB extends $D{constructor(){super(...arguments),this.paramsConfig=nB,this.controllers={advancedCommon:new tB(this)},this.controllerNames=Object.keys(this.controllers)}static type(){return\\\\\\\"lineBasic\\\\\\\"}createMaterial(){return new As.a({color:16777215,linewidth:1})}initializeNode(){this.params.onParamsCreated(\\\\\\\"init controllers\\\\\\\",(()=>{for(let t of this.controllerNames)this.controllers[t].initializeNode()}))}async cook(){for(let t of this.controllerNames)this.controllers[t].update();this.material.color.copy(this.pv.color),this.material.linewidth=this.pv.lineWidth,this.setMaterial(this.material)}}function sB(t){return class extends t{constructor(){super(...arguments),this.transparent=ha.BOOLEAN(0),this.opacity=ha.FLOAT(1),this.alphaTest=ha.FLOAT(0)}}}sB(ua);class rB extends JD{constructor(t){super(t),this.node=t}static update(t){const e=t.material,n=t.pv;this._updateTransparency(e,n)}static _updateTransparency(t,e){t.transparent=e.transparent,this._updateCommon(t,e)}static _updateCommon(t,e){t.uniforms.opacity&&(t.uniforms.opacity.value=e.opacity),t.opacity=e.opacity,t.alphaTest=e.alphaTest;const n=t.customMaterials;if(n){const t=Object.keys(n);for(let i of t){const t=n[i];t&&this._updateCommon(t,e)}}}}class oB extends Kf{constructor(t){super(t),this.node=t}toJSON(){const t=this.node.assemblerController;if(!t)return;const e={},n=this.node.material.customMaterials;if(n){const t=Object.keys(n);for(let i of t){const t=n[i];if(t){const n=this._materialToJson(t,{node:this.node,suffix:i});n&&(e[i]=n)}}}const i=[],s=t.assembler.param_configs();for(let t of s)i.push([t.name(),t.uniform_name]);const r=this._materialToJson(this.node.material,{node:this.node,suffix:\\\\\\\"main\\\\\\\"});r||console.warn(\\\\\\\"failed to save material from node\\\\\\\",this.node.path());return{material:r||{},uniforms_time_dependent:t.assembler.uniformsTimeDependent(),uniforms_resolution_dependent:t.assembler.uniforms_resolution_dependent(),param_uniform_pairs:i,customMaterials:e}}load(t){if(this._material=this._loadMaterial(t.material),this._material){if(this._material.customMaterials=this._material.customMaterials||{},t.customMaterials){const e=Object.keys(t.customMaterials);for(let n of e){const e=t.customMaterials[n],i=this._loadMaterial(e);i&&(this._material.customMaterials[n]=i)}}if(t.uniforms_time_dependent&&this.node.scene().uniformsController.addTimeDependentUniformOwner(this._material.uuid,this._material.uniforms),t.uniforms_resolution_dependent&&this.node.scene().uniformsController.addResolutionDependentUniformOwner(this._material.uuid,this._material.uniforms),t.param_uniform_pairs)for(let e of t.param_uniform_pairs){const t=e[0],n=e[1],i=this.node.params.get(t),s=this._material.uniforms[n],r=Object.keys(this._material.customMaterials);let o;for(let t of r){const e=this._material.customMaterials[t],i=null==e?void 0:e.uniforms[n];i&&(o=o||[],o.push(i))}i&&(s||o)&&i.options.setOption(\\\\\\\"callback\\\\\\\",(()=>{if(s&&tg.callback(i,s),o)for(let t of o)tg.callback(i,t)}))}}}material(){if(li.playerMode())return this._material}}function aB(t){return class extends t{constructor(){super(...arguments),this.setBuilderNode=ha.BOOLEAN(0,{callback:t=>{lB.PARAM_CALLBACK_setCompileRequired(t)}}),this.builderNode=ha.NODE_PATH(\\\\\\\"\\\\\\\",{visibleIf:{setBuilderNode:!0},callback:t=>{lB.PARAM_CALLBACK_setCompileRequired(t)}})}}}aB(ua);class lB extends $D{constructor(){super(...arguments),this._children_controller_context=ts.GL,this.persisted_config=new oB(this)}createMaterial(){var t;let e;return this.persisted_config&&(e=this.persisted_config.material()),e||(e=null===(t=this.assemblerController)||void 0===t?void 0:t.assembler.createMaterial()),e}get assemblerController(){return this._assembler_controller=this._assembler_controller||this._create_assembler_controller()}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}childrenAllowed(){return this.assemblerController?super.childrenAllowed():(this.scene().markAsReadOnly(this),!1)}compileIfRequired(){var t;(null===(t=this.assemblerController)||void 0===t?void 0:t.compileRequired())&&this._compile()}_compile(){const t=this.assemblerController;this.material&&t&&(t.assembler.setGlParentNode(this),this._setAssemblerGlParentNode(t),t.assembler.compileMaterial(this.material),t.post_compile())}_setAssemblerGlParentNode(t){if(!this.pv.setBuilderNode)return;const e=this.pv.builderNode.nodeWithContext(ts.MAT);if(!e)return;const n=e;n.assemblerController?n.type()==this.type()?t.assembler.setGlParentNode(n):this.states.error.set(`resolved node '${e.path()}' does not have the same type '${e.type()}' as current node '${this.type()}'`):this.states.error.set(`resolved node '${e.path()}' is not a builder node`)}static PARAM_CALLBACK_setCompileRequired(t){t.PARAM_CALLBACK_setCompileRequired()}PARAM_CALLBACK_setCompileRequired(){var t;null===(t=this.assemblerController)||void 0===t||t.setCompilationRequired(!0)}}function cB(t){return class extends t{constructor(){super(...arguments),this.useFog=ha.BOOLEAN(0)}}}cB(ua);class hB extends JD{constructor(t){super(t),this.node=t}static update(t){const e=t.material,n=t.pv;e.fog=n.useFog}}function uB(t){return class extends t{constructor(){super(...arguments),this.default=ha.FOLDER(null)}}}function dB(t){return class extends t{constructor(){super(...arguments),this.advanced=ha.FOLDER(null)}}}class pB extends(cB(QD(aB(dB(sB(uB(ua))))))){constructor(){super(...arguments),this.linewidth=ha.FLOAT(1,{range:[0,10],rangeLocked:[!0,!1]})}}const _B=new pB;class mB extends lB{constructor(){super(...arguments),this.paramsConfig=_B,this.controllers={advancedCommon:new tB(this)},this.controllerNames=Object.keys(this.controllers)}static type(){return\\\\\\\"lineBasicBuilder\\\\\\\"}usedAssembler(){return jn.GL_LINE}_create_assembler_controller(){return li.assemblersRegister.assembler(this,this.usedAssembler())}initializeNode(){this.params.onParamsCreated(\\\\\\\"init controllers\\\\\\\",(()=>{for(let t of this.controllerNames)this.controllers[t].initializeNode()}))}async cook(){for(let t of this.controllerNames)this.controllers[t].update();rB.update(this),hB.update(this),this.compileIfRequired(),this.material.linewidth=this.pv.linewidth,this.setMaterial(this.material)}}function fB(t){return class extends t{constructor(){super(...arguments),this.color=ha.COLOR([1,1,1],{conversion:lo.SRGB_TO_LINEAR}),this.useVertexColors=ha.BOOLEAN(0,{separatorAfter:!0}),this.transparent=ha.BOOLEAN(0),this.opacity=ha.FLOAT(1),this.alphaTest=ha.FLOAT(0)}}}O.a;fB(ua);class gB extends JD{constructor(t){super(t),this.node=t}static update(t){const e=t.material,n=t.pv;e.color.copy(n.color);const i=n.useVertexColors;i!=e.vertexColors&&(e.vertexColors=i,e.needsUpdate=!0),e.opacity=n.opacity,e.transparent=n.transparent,e.alphaTest=n.alphaTest}}function vB(t){return class extends t{constructor(){super(...arguments),this.useFog=ha.BOOLEAN(0)}}}vB(ua);class yB extends JD{constructor(t){super(t),this.node=t}static update(t){const e=t.material,n=t.pv;e.fog=n.useFog}}function xB(t){return{cook:!1,callback:(e,n)=>{t.update(e)}}}function bB(t,e,n){return{visibleIf:{[e]:1},nodeSelection:{context:ts.COP,types:null==n?void 0:n.types},cook:!1,callback:(e,n)=>{t.update(e)}}}class wB extends JD{constructor(t,e){super(t),this.node=t,this._update_options=e}add_hooks(t,e){t.addPostDirtyHook(\\\\\\\"TextureController\\\\\\\",(()=>{this.update()})),e.addPostDirtyHook(\\\\\\\"TextureController\\\\\\\",(()=>{this.update()}))}static update(t){}async _update(t,e,n,i){if(this._update_options.uniforms){const s=t,r=e;await this._update_texture_on_uniforms(s,r,n,i)}if(this._update_options.directParams){const s=t,r=e;await this._update_texture_on_material(s,r,n,i)}}async _update_texture_on_uniforms(t,e,n,i){this._update_required_attribute(t,t.uniforms,e,n,i,this._apply_texture_on_uniforms.bind(this),this._remove_texture_from_uniforms.bind(this))}_apply_texture_on_uniforms(t,e,n,i){const s=null!=e[n]&&null!=e[n].value;let r=!1;if(s){e[n].value.uuid!=i.uuid&&(r=!0)}if(!s||r){e[n]&&(e[n].value=i),this._apply_texture_on_material(t,t,n,i),t.needsUpdate=!0;const s=t.customMaterials;if(s){const t=Object.keys(s);for(let e of t){const t=s[e];t&&this._apply_texture_on_uniforms(t,t.uniforms,n,i)}}}}_remove_texture_from_uniforms(t,e,n){if(e[n]){if(e[n].value){e[n].value=null,this._remove_texture_from_material(t,t,n),t.needsUpdate=!0;const i=t.customMaterials;if(i){const t=Object.keys(i);for(let e of t){const t=i[e];t&&this._remove_texture_from_uniforms(t,t.uniforms,n)}}}}else li.warn(`'${n}' uniform not found. existing uniforms are:`,Object.keys(e).sort())}async _update_texture_on_material(t,e,n,i){this._update_required_attribute(t,t,e,n,i,this._apply_texture_on_material.bind(this),this._remove_texture_from_material.bind(this))}_apply_texture_on_material(t,e,n,i){const s=null!=e[n];let r=!1;if(s){e[n].uuid!=i.uuid&&(r=!0)}s&&!r||(e[n]=i,t.needsUpdate=!0)}_remove_texture_from_material(t,e,n){e[n]&&(e[n]=null,t.needsUpdate=!0)}async _update_required_attribute(t,e,n,i,s,r,o){i.isDirty()&&await i.compute();if(i.value){s.isDirty()&&await s.compute();const i=s.value.nodeWithContext(ts.COP);if(i){const s=(await i.compute()).texture();if(s)return void r(t,e,n,s)}}o(t,e,n)}}function TB(t){return class extends t{constructor(){super(...arguments),this.useMap=ha.BOOLEAN(0,xB(AB)),this.map=ha.NODE_PATH(vi.EMPTY,bB(AB,\\\\\\\"useMap\\\\\\\"))}}}O.a;TB(ua);class AB extends wB{constructor(t,e){super(t,e),this.node=t}initializeNode(){this.add_hooks(this.node.p.useMap,this.node.p.map)}async update(){this._update(this.node.material,\\\\\\\"map\\\\\\\",this.node.p.useMap,this.node.p.map)}static async update(t){t.controllers.map.update()}}function MB(t){return class extends t{constructor(){super(...arguments),this.useAlphaMap=ha.BOOLEAN(0,{separatorBefore:!0,...xB(EB)}),this.alphaMap=ha.NODE_PATH(vi.EMPTY,bB(EB,\\\\\\\"useAlphaMap\\\\\\\"))}}}O.a;MB(ua);class EB extends wB{constructor(t,e){super(t,e),this.node=t}initializeNode(){this.add_hooks(this.node.p.useAlphaMap,this.node.p.alphaMap)}async update(){this._update(this.node.material,\\\\\\\"alphaMap\\\\\\\",this.node.p.useAlphaMap,this.node.p.alphaMap)}static async update(t){t.controllers.alphaMap.update()}}function SB(t){return class extends t{constructor(){super(...arguments),this.useAOMap=ha.BOOLEAN(0,{separatorBefore:!0,...xB(CB)}),this.aoMap=ha.NODE_PATH(vi.EMPTY,bB(CB,\\\\\\\"useAOMap\\\\\\\")),this.aoMapIntensity=ha.FLOAT(1,{range:[0,1],rangeLocked:[!1,!1],visibleIf:{useAOMap:1}})}}}O.a;SB(ua);class CB extends wB{constructor(t,e){super(t,e),this.node=t}initializeNode(){this.add_hooks(this.node.p.useAOMap,this.node.p.aoMap)}async update(){if(this._update(this.node.material,\\\\\\\"aoMap\\\\\\\",this.node.p.useAOMap,this.node.p.aoMap),this._update_options.uniforms){this.node.material.uniforms.aoMapIntensity.value=this.node.pv.aoMapIntensity}if(this._update_options.directParams){this.node.material.aoMapIntensity=this.node.pv.aoMapIntensity}}static async update(t){t.controllers.aoMap.update()}}var NB;!function(t){t.MULT=\\\\\\\"mult\\\\\\\",t.ADD=\\\\\\\"add\\\\\\\",t.MIX=\\\\\\\"mix\\\\\\\"}(NB||(NB={}));const LB=[NB.MULT,NB.ADD,NB.MIX],OB={[NB.MULT]:w.nb,[NB.ADD]:w.c,[NB.MIX]:w.lb};function PB(t){return class extends t{constructor(){super(...arguments),this.useEnvMap=ha.BOOLEAN(0,xB(RB)),this.envMap=ha.NODE_PATH(vi.EMPTY,bB(RB,\\\\\\\"useEnvMap\\\\\\\",{types:[Fg.CUBE_CAMERA]})),this.combine=ha.INTEGER(0,{visibleIf:{useEnvMap:1},menu:{entries:LB.map(((t,e)=>({name:t,value:e})))}}),this.reflectivity=ha.FLOAT(1,{visibleIf:{useEnvMap:1}}),this.refractionRatio=ha.FLOAT(.98,{range:[-1,1],rangeLocked:[!1,!1],visibleIf:{useEnvMap:1}})}}}PB(ua);class RB extends wB{constructor(t,e){super(t,e),this.node=t}initializeNode(){this.add_hooks(this.node.p.useEnvMap,this.node.p.envMap)}async update(){this._update(this.node.material,\\\\\\\"envMap\\\\\\\",this.node.p.useEnvMap,this.node.p.envMap);const t=OB[LB[this.node.pv.combine]];if(this._update_options.uniforms){const t=this.node.material;t.uniforms.reflectivity.value=this.node.pv.reflectivity,t.uniforms.refractionRatio.value=this.node.pv.refractionRatio}if(this._update_options.directParams){const e=this.node.material;e.combine=t,e.reflectivity=this.node.pv.reflectivity,e.refractionRatio=this.node.pv.refractionRatio}}static async update(t){t.controllers.envMap.update()}}function IB(t){return class extends t{constructor(){super(...arguments),this.useLightMap=ha.BOOLEAN(0,{separatorBefore:!0,...xB(FB)}),this.lightMap=ha.NODE_PATH(vi.EMPTY,bB(FB,\\\\\\\"useLightMap\\\\\\\")),this.lightMapIntensity=ha.FLOAT(1,{visibleIf:{useLightMap:1}})}}}O.a;IB(ua);class FB extends wB{constructor(t,e){super(t,e),this.node=t}initializeNode(){this.add_hooks(this.node.p.useLightMap,this.node.p.lightMap)}async update(){if(this._update(this.node.material,\\\\\\\"lightMap\\\\\\\",this.node.p.useLightMap,this.node.p.lightMap),this._update_options.uniforms){this.node.material.uniforms.lightMapIntensity.value=this.node.pv.lightMapIntensity}if(this._update_options.directParams){this.node.material.lightMapIntensity=this.node.pv.lightMapIntensity}}static async update(t){t.controllers.lightMap.update()}}var DB;!function(t){t.ROUND=\\\\\\\"round\\\\\\\",t.BUTT=\\\\\\\"butt\\\\\\\",t.SQUARE=\\\\\\\"square\\\\\\\"}(DB||(DB={}));const BB=[DB.ROUND,DB.BUTT,DB.SQUARE];var zB;!function(t){t.ROUND=\\\\\\\"round\\\\\\\",t.BEVEL=\\\\\\\"bevel\\\\\\\",t.MITER=\\\\\\\"miter\\\\\\\"}(zB||(zB={}));const kB=[zB.ROUND,zB.BEVEL,zB.MITER];function UB(t){return class extends t{constructor(){super(...arguments),this.wireframe=ha.BOOLEAN(0,{separatorBefore:!0}),this.wireframeLinecap=ha.INTEGER(0,{menu:{entries:BB.map(((t,e)=>({name:t,value:e})))},visibleIf:{wireframe:1}}),this.wireframeLinejoin=ha.INTEGER(0,{menu:{entries:kB.map(((t,e)=>({name:t,value:e})))},visibleIf:{wireframe:1}})}}}O.a;UB(ua);class GB extends JD{constructor(t){super(t),this.node=t}static update(t){const e=t.material,n=t.pv;e.wireframe=n.wireframe,e.wireframeLinecap=BB[n.wireframeLinecap],e.wireframeLinejoin=kB[n.wireframeLinejoin],e.needsUpdate=!0}}function VB(t){return class extends t{constructor(){super(...arguments),this.textures=ha.FOLDER(null)}}}const HB={directParams:!0};class jB extends(vB(UB(QD(dB(IB(PB(SB(MB(TB(VB(fB(uB(ua))))))))))))){}const WB=new jB;class qB extends $D{constructor(){super(...arguments),this.paramsConfig=WB,this.controllers={advancedCommon:new tB(this),alphaMap:new EB(this,HB),aoMap:new CB(this,HB),envMap:new RB(this,HB),lightMap:new FB(this,HB),map:new AB(this,HB)},this.controllerNames=Object.keys(this.controllers)}static type(){return\\\\\\\"meshBasic\\\\\\\"}createMaterial(){return new lt.a({vertexColors:!1,side:w.H,color:16777215,opacity:1})}initializeNode(){this.params.onParamsCreated(\\\\\\\"init controllers\\\\\\\",(()=>{for(let t of this.controllerNames)this.controllers[t].initializeNode()}))}async cook(){for(let t of this.controllerNames)this.controllers[t].update();gB.update(this),yB.update(this),GB.update(this),this.setMaterial(this.material)}}function XB(t){return class extends t{constructor(){super(...arguments),this.wireframe=ha.BOOLEAN(0)}}}XB(ua);class YB extends JD{constructor(t){super(t),this.node=t}static update(t){const e=t.material,n=t.pv;e.wireframe=n.wireframe,e.needsUpdate=!0}}const $B={uniforms:!0};class JB extends(cB(XB(QD(aB(dB(PB(SB(MB(TB(VB(sB(uB(ua))))))))))))){}const ZB=new JB;class KB extends lB{constructor(){super(...arguments),this.paramsConfig=ZB,this.controllers={advancedCommon:new tB(this),alphaMap:new EB(this,$B),aoMap:new CB(this,$B),envMap:new RB(this,$B),map:new AB(this,$B)},this.controllerNames=Object.keys(this.controllers)}static type(){return\\\\\\\"meshBasicBuilder\\\\\\\"}usedAssembler(){return jn.GL_MESH_BASIC}_create_assembler_controller(){return li.assemblersRegister.assembler(this,this.usedAssembler())}initializeNode(){this.params.onParamsCreated(\\\\\\\"init controllers\\\\\\\",(()=>{for(let t of this.controllerNames)this.controllers[t].initializeNode()}))}async cook(){for(let t of this.controllerNames)this.controllers[t].update();rB.update(this),hB.update(this),YB.update(this),this.compileIfRequired(),this.setMaterial(this.material)}}function QB(t){return class extends t{constructor(){super(...arguments),this.emissive=ha.COLOR([0,0,0],{separatorBefore:!0}),this.useEmissiveMap=ha.BOOLEAN(0,xB(tz)),this.emissiveMap=ha.NODE_PATH(vi.EMPTY,bB(tz,\\\\\\\"useEmissiveMap\\\\\\\")),this.emissiveIntensity=ha.FLOAT(1)}}}O.a;QB(ua);class tz extends wB{constructor(t,e){super(t,e),this.node=t}initializeNode(){this.add_hooks(this.node.p.useEmissiveMap,this.node.p.emissiveMap)}async update(){if(this._update(this.node.material,\\\\\\\"emissiveMap\\\\\\\",this.node.p.useEmissiveMap,this.node.p.emissiveMap),this._update_options.uniforms){this.node.material.uniforms.emissive.value.copy(this.node.pv.emissive)}if(this._update_options.directParams){const t=this.node.material;t.emissive.copy(this.node.pv.emissive),t.emissiveIntensity=this.node.pv.emissiveIntensity}}static async update(t){t.controllers.emissiveMap.update()}}const ez={directParams:!0};class nz extends(vB(UB(QD(dB(IB(PB(QB(SB(MB(TB(VB(fB(uB(ua)))))))))))))){}const iz=new nz;class sz extends $D{constructor(){super(...arguments),this.paramsConfig=iz,this.controllers={advancedCommon:new tB(this),alphaMap:new EB(this,ez),aoMap:new CB(this,ez),emissiveMap:new tz(this,ez),envMap:new RB(this,ez),lightMap:new FB(this,ez),map:new AB(this,ez)},this.controllerNames=Object.keys(this.controllers)}static type(){return\\\\\\\"meshLambert\\\\\\\"}createMaterial(){return new Ts.a({vertexColors:!1,side:w.H,color:16777215,opacity:1})}initializeNode(){this.params.onParamsCreated(\\\\\\\"init controllers\\\\\\\",(()=>{for(let t of this.controllerNames)this.controllers[t].initializeNode()}))}async cook(){for(let t of this.controllerNames)this.controllers[t].update();gB.update(this),yB.update(this),GB.update(this),this.setMaterial(this.material)}}function rz(t){return class extends t{constructor(){super(...arguments),this.shadowPCSS=ha.BOOLEAN(0,{callback:t=>{oz.PARAM_CALLBACK_setRecompileRequired(t)},separatorBefore:!0}),this.shadowPCSSSamplesCount=ha.INTEGER(16,{visibleIf:{shadowPCSS:1},range:[0,128],rangeLocked:[!0,!1]}),this.shadowPCSSFilterSize=ha.FLOAT(1,{visibleIf:{shadowPCSS:1},range:[0,10],rangeLocked:[!0,!1]})}}}rz(ua);class oz extends JD{constructor(t){super(t),this.node=t}initializeNode(){}static filterFragmentShader(t,e){const n=`\\\\n#define NUM_SAMPLES ${mf.integer(t.pv.shadowPCSSSamplesCount)}\\\\n#define PCSS_FILTER_SIZE ${mf.float(t.pv.shadowPCSSFilterSize)}\\\\n#define LIGHT_WORLD_SIZE 0.005\\\\n// #define LIGHT_FRUSTUM_WIDTH 1.0\\\\n// #define PCSS_FILTER_SIZE 1.0\\\\n#define LIGHT_SIZE_UV (PCSS_FILTER_SIZE * LIGHT_WORLD_SIZE)\\\\n#define NEAR_PLANE 9.5\\\\n\\\\n// #define NUM_SAMPLES 32\\\\n#define NUM_RINGS 11\\\\n#define BLOCKER_SEARCH_NUM_SAMPLES NUM_SAMPLES\\\\n#define PCF_NUM_SAMPLES NUM_SAMPLES\\\\n\\\\nvec2 poissonDisk[NUM_SAMPLES];\\\\n\\\\nvoid initPoissonSamples( const in vec2 randomSeed ) {\\\\n\\\\tfloat ANGLE_STEP = PI2 * float( NUM_RINGS ) / float( NUM_SAMPLES );\\\\n\\\\tfloat INV_NUM_SAMPLES = 1.0 / float( NUM_SAMPLES );\\\\n\\\\n\\\\t// jsfiddle that shows sample pattern: https://jsfiddle.net/a16ff1p7/\\\\n\\\\tfloat angle = rand( randomSeed ) * PI2;\\\\n\\\\tfloat radius = INV_NUM_SAMPLES;\\\\n\\\\tfloat radiusStep = radius;\\\\n\\\\n\\\\tfor( int i = 0; i < NUM_SAMPLES; i ++ ) {\\\\n\\\\t\\\\tpoissonDisk[i] = vec2( cos( angle ), sin( angle ) ) * pow( radius, 0.75 );\\\\n\\\\t\\\\tradius += radiusStep;\\\\n\\\\t\\\\tangle += ANGLE_STEP;\\\\n\\\\t}\\\\n}\\\\n\\\\nfloat penumbraSize( const in float zReceiver, const in float zBlocker ) { // Parallel plane estimation\\\\n\\\\treturn (zReceiver - zBlocker) / zBlocker;\\\\n}\\\\n\\\\nfloat findBlocker( sampler2D shadowMap, const in vec2 uv, const in float zReceiver ) {\\\\n\\\\t// This uses similar triangles to compute what\\\\n\\\\t// area of the shadow map we should search\\\\n\\\\tfloat searchRadius = LIGHT_SIZE_UV * ( zReceiver - NEAR_PLANE ) / zReceiver;\\\\n\\\\tfloat blockerDepthSum = 0.0;\\\\n\\\\tint numBlockers = 0;\\\\n\\\\n\\\\tfor( int i = 0; i < BLOCKER_SEARCH_NUM_SAMPLES; i++ ) {\\\\n\\\\t\\\\tfloat shadowMapDepth = unpackRGBAToDepth(texture2D(shadowMap, uv + poissonDisk[i] * searchRadius));\\\\n\\\\t\\\\tif ( shadowMapDepth < zReceiver ) {\\\\n\\\\t\\\\t\\\\tblockerDepthSum += shadowMapDepth;\\\\n\\\\t\\\\t\\\\tnumBlockers ++;\\\\n\\\\t\\\\t}\\\\n\\\\t}\\\\n\\\\n\\\\tif( numBlockers == 0 ) return -1.0;\\\\n\\\\n\\\\treturn blockerDepthSum / float( numBlockers );\\\\n}\\\\n\\\\nfloat PCF_Filter(sampler2D shadowMap, vec2 uv, float zReceiver, float filterRadius ) {\\\\n\\\\tfloat sum = 0.0;\\\\n\\\\tfor( int i = 0; i < PCF_NUM_SAMPLES; i ++ ) {\\\\n\\\\t\\\\tfloat depth = unpackRGBAToDepth( texture2D( shadowMap, uv + poissonDisk[ i ] * filterRadius ) );\\\\n\\\\t\\\\tif( zReceiver <= depth ) sum += 1.0;\\\\n\\\\t}\\\\n\\\\tfor( int i = 0; i < PCF_NUM_SAMPLES; i ++ ) {\\\\n\\\\t\\\\tfloat depth = unpackRGBAToDepth( texture2D( shadowMap, uv + -poissonDisk[ i ].yx * filterRadius ) );\\\\n\\\\t\\\\tif( zReceiver <= depth ) sum += 1.0;\\\\n\\\\t}\\\\n\\\\treturn sum / ( 2.0 * float( PCF_NUM_SAMPLES ) );\\\\n}\\\\n\\\\nfloat PCSS ( sampler2D shadowMap, vec4 coords ) {\\\\n\\\\tvec2 uv = coords.xy;\\\\n\\\\tfloat zReceiver = coords.z; // Assumed to be eye-space z in this code\\\\n\\\\n\\\\tinitPoissonSamples( uv );\\\\n\\\\t// STEP 1: blocker search\\\\n\\\\tfloat avgBlockerDepth = findBlocker( shadowMap, uv, zReceiver );\\\\n\\\\n\\\\t//There are no occluders so early out (this saves filtering)\\\\n\\\\tif( avgBlockerDepth == -1.0 ) return 1.0;\\\\n\\\\n\\\\t// STEP 2: penumbra size\\\\n\\\\tfloat penumbraRatio = penumbraSize( zReceiver, avgBlockerDepth );\\\\n\\\\tfloat filterRadius = penumbraRatio * LIGHT_SIZE_UV * NEAR_PLANE / zReceiver;\\\\n\\\\n\\\\t// STEP 3: filtering\\\\n\\\\t//return avgBlockerDepth;\\\\n\\\\treturn PCF_Filter( shadowMap, uv, zReceiver, filterRadius );\\\\n}\\\\n`;let i=z;return i=i.replace(\\\\\\\"#ifdef USE_SHADOWMAP\\\\\\\",`#ifdef USE_SHADOWMAP\\\\n${n}\\\\n\\\\t\\\\t\\\\t\\\\t`),i=i.replace(\\\\\\\"#if defined( SHADOWMAP_TYPE_PCF )\\\\\\\",\\\\\\\"\\\\n\\\\t\\\\t\\\\t\\\\treturn PCSS( shadowMap, shadowCoord );\\\\n\\\\t\\\\t\\\\t\\\\t#if defined( SHADOWMAP_TYPE_PCF )\\\\\\\"),e=e.replace(\\\\\\\"#include <shadowmap_pars_fragment>\\\\\\\",i)}async update(){const t=this.node;if(!t.assemblerController)return;const e=\\\\\\\"PCSS\\\\\\\";this.node.pv.shadowPCSS?t.assemblerController.addFilterFragmentShaderCallback(e,(t=>oz.filterFragmentShader(this.node,t))):t.assemblerController.removeFilterFragmentShaderCallback(e)}static async update(t){t.controllers.PCSS.update()}static PARAM_CALLBACK_setRecompileRequired(t){t.controllers.PCSS.update()}}const az={uniforms:!0};class lz extends(rz(cB(XB(QD(aB(dB(IB(PB(QB(SB(MB(TB(VB(sB(uB(ua)))))))))))))))){}const cz=new lz;class hz extends lB{constructor(){super(...arguments),this.paramsConfig=cz,this.controllers={advancedCommon:new tB(this),alphaMap:new EB(this,az),aoMap:new CB(this,az),emissiveMap:new tz(this,az),envMap:new RB(this,az),lightMap:new FB(this,az),map:new AB(this,az),PCSS:new oz(this)},this.controllerNames=Object.keys(this.controllers)}static type(){return\\\\\\\"meshLambertBuilder\\\\\\\"}usedAssembler(){return jn.GL_MESH_LAMBERT}_create_assembler_controller(){return li.assemblersRegister.assembler(this,this.usedAssembler())}initializeNode(){this.params.onParamsCreated(\\\\\\\"init controllers\\\\\\\",(()=>{for(let t of this.controllerNames)this.controllers[t].initializeNode()}))}async cook(){for(let t of this.controllerNames)this.controllers[t].update();rB.update(this),hB.update(this),YB.update(this),this.compileIfRequired(),this.setMaterial(this.material)}}function uz(t){return class extends t{constructor(){super(...arguments),this.useBumpMap=ha.BOOLEAN(0,{separatorBefore:!0,...xB(dz)}),this.bumpMap=ha.NODE_PATH(\\\\\\\"\\\\\\\",bB(dz,\\\\\\\"useBumpMap\\\\\\\")),this.bumpScale=ha.FLOAT(1,{range:[0,1],rangeLocked:[!1,!1],...bB(dz,\\\\\\\"useBumpMap\\\\\\\")}),this.bumpBias=ha.FLOAT(0,{range:[0,1],rangeLocked:[!1,!1],...bB(dz,\\\\\\\"useBumpMap\\\\\\\")})}}}O.a;uz(ua);class dz extends wB{constructor(t,e){super(t,e),this.node=t}initializeNode(){this.add_hooks(this.node.p.useBumpMap,this.node.p.bumpMap)}async update(){if(this._update(this.node.material,\\\\\\\"bumpMap\\\\\\\",this.node.p.useBumpMap,this.node.p.bumpMap),this._update_options.uniforms){this.node.material.uniforms.bumpScale.value=this.node.pv.bumpScale}if(this._update_options.directParams){this.node.material.bumpScale=this.node.pv.bumpScale}}static async update(t){t.controllers.bumpMap.update()}}var pz;!function(t){t.TANGENT=\\\\\\\"tangent\\\\\\\",t.OBJECT=\\\\\\\"object\\\\\\\"}(pz||(pz={}));const _z=[pz.TANGENT,pz.OBJECT],mz={[pz.TANGENT]:w.Uc,[pz.OBJECT]:w.zb};function fz(t){return class extends t{constructor(){super(...arguments),this.useNormalMap=ha.BOOLEAN(0,{separatorBefore:!0,...xB(gz)}),this.normalMap=ha.NODE_PATH(vi.EMPTY,bB(gz,\\\\\\\"useNormalMap\\\\\\\")),this.normalMapType=ha.INTEGER(0,{visibleIf:{useNormalMap:1},menu:{entries:_z.map(((t,e)=>({name:t,value:e})))}}),this.normalScale=ha.VECTOR2([1,1],{visibleIf:{useNormalMap:1}})}}}O.a;fz(ua);class gz extends wB{constructor(t,e){super(t,e),this.node=t}initializeNode(){this.add_hooks(this.node.p.useNormalMap,this.node.p.normalMap)}async update(){this._update(this.node.material,\\\\\\\"normalMap\\\\\\\",this.node.p.useNormalMap,this.node.p.normalMap);const t=mz[_z[this.node.pv.normalMapType]];if(this._update_options.uniforms){this.node.material.uniforms.normalScale.value.copy(this.node.pv.normalScale)}const e=this.node.material;e.normalMapType=t,this._update_options.directParams&&e.normalScale.copy(this.node.pv.normalScale)}static async update(t){t.controllers.normalMap.update()}}function vz(t){return class extends t{constructor(){super(...arguments),this.useDisplacementMap=ha.BOOLEAN(0,{separatorBefore:!0,...xB(yz)}),this.displacementMap=ha.NODE_PATH(\\\\\\\"\\\\\\\",bB(yz,\\\\\\\"useDisplacementMap\\\\\\\")),this.displacementScale=ha.FLOAT(1,{range:[0,1],rangeLocked:[!1,!1],...bB(yz,\\\\\\\"useDisplacementMap\\\\\\\")}),this.displacementBias=ha.FLOAT(0,{range:[0,1],rangeLocked:[!1,!1],...bB(yz,\\\\\\\"useDisplacementMap\\\\\\\")})}}}O.a;vz(ua);class yz extends wB{constructor(t,e){super(t,e),this.node=t}initializeNode(){this.add_hooks(this.node.p.useDisplacementMap,this.node.p.displacementMap)}async update(){if(this._update(this.node.material,\\\\\\\"displacementMap\\\\\\\",this.node.p.useDisplacementMap,this.node.p.displacementMap),this._update_options.uniforms){const t=this.node.material;t.uniforms.displacementScale.value=this.node.pv.displacementScale,t.uniforms.displacementBias.value=this.node.pv.displacementBias}if(this._update_options.directParams){const t=this.node.material;t.displacementScale=this.node.pv.displacementScale,t.displacementBias=this.node.pv.displacementBias}}static async update(t){t.controllers.displacementMap.update()}}function xz(t){return class extends t{constructor(){super(...arguments),this.useMatcapMap=ha.BOOLEAN(0,xB(bz)),this.matcapMap=ha.NODE_PATH(vi.EMPTY,bB(bz,\\\\\\\"useMatcapMap\\\\\\\"))}}}O.a;xz(ua);class bz extends wB{constructor(t,e){super(t,e),this.node=t}initializeNode(){this.add_hooks(this.node.p.useMatcapMap,this.node.p.matcapMap)}async update(){this._update(this.node.material,\\\\\\\"matcap\\\\\\\",this.node.p.useMatcapMap,this.node.p.matcapMap)}static async update(t){t.controllers.matcap.update()}}const wz={directParams:!0};class Tz extends(vB(QD(dB(fz(vz(uz(MB(TB(xz(VB(fB(uB(ua))))))))))))){}const Az=new Tz;class Mz extends $D{constructor(){super(...arguments),this.paramsConfig=Az,this.controllers={advancedCommon:new tB(this),alphaMap:new EB(this,wz),bumpMap:new dz(this,wz),displacementMap:new yz(this,wz),map:new AB(this,wz),matcap:new bz(this,wz),normalMap:new gz(this,wz)},this.controllerNames=Object.keys(this.controllers)}static type(){return\\\\\\\"meshMatcap\\\\\\\"}createMaterial(){return new $f({vertexColors:!1,side:w.H,color:16777215,opacity:1})}initializeNode(){this.params.onParamsCreated(\\\\\\\"init controllers\\\\\\\",(()=>{for(let t of this.controllerNames)this.controllers[t].initializeNode()}))}async cook(){for(let t of this.controllerNames)this.controllers[t].update();gB.update(this),yB.update(this),this.setMaterial(this.material)}}const Ez={directParams:!0};class Sz extends(vB(QD(fz(vz(uz(VB(uB(ua)))))))){}const Cz=new Sz;class Nz extends $D{constructor(){super(...arguments),this.paramsConfig=Cz,this.controllers={advancedCommon:new tB(this),bumpMap:new dz(this,Ez),displacementMap:new yz(this,Ez),normalMap:new gz(this,Ez)},this.controllerNames=Object.keys(this.controllers)}static type(){return\\\\\\\"meshNormal\\\\\\\"}createMaterial(){return new Yf({vertexColors:!1,side:w.H,opacity:1})}initializeNode(){this.params.onParamsCreated(\\\\\\\"init controllers\\\\\\\",(()=>{for(let t of this.controllerNames)this.controllers[t].initializeNode()}))}async cook(){for(let t of this.controllerNames)this.controllers[t].update();yB.update(this),this.setMaterial(this.material)}}function Lz(t){return class extends t{constructor(){super(...arguments),this.useSpecularMap=ha.BOOLEAN(0,xB(Oz)),this.specularMap=ha.NODE_PATH(vi.EMPTY,bB(Oz,\\\\\\\"useSpecularMap\\\\\\\"))}}}O.a;Lz(ua);class Oz extends wB{constructor(t,e){super(t,e),this.node=t}initializeNode(){this.add_hooks(this.node.p.useSpecularMap,this.node.p.specularMap)}async update(){this._update(this.node.material,\\\\\\\"specularMap\\\\\\\",this.node.p.useSpecularMap,this.node.p.specularMap)}static async update(t){t.controllers.specularMap.update()}}const Pz={directParams:!0};class Rz extends(vB(UB(QD(dB(Lz(fz(IB(PB(QB(vz(uz(SB(MB(TB(VB(fB(uB(ua)))))))))))))))))){constructor(){super(...arguments),this.flatShading=ha.BOOLEAN(0)}}const Iz=new Rz;class Fz extends $D{constructor(){super(...arguments),this.paramsConfig=Iz,this.controllers={advancedCommon:new tB(this),alphaMap:new EB(this,Pz),aoMap:new CB(this,Pz),bumpMap:new dz(this,Pz),displacementMap:new yz(this,Pz),emissiveMap:new tz(this,Pz),envMap:new RB(this,Pz),lightMap:new FB(this,Pz),map:new AB(this,Pz),normalMap:new gz(this,Pz),specularMap:new Oz(this,Pz)},this.controllerNames=Object.keys(this.controllers)}static type(){return\\\\\\\"meshPhong\\\\\\\"}createMaterial(){return new qf.a({vertexColors:!1,side:w.H,color:16777215,opacity:1})}initializeNode(){this.params.onParamsCreated(\\\\\\\"init controllers\\\\\\\",(()=>{for(let t of this.controllerNames)this.controllers[t].initializeNode()}))}async cook(){for(let t of this.controllerNames)this.controllers[t].update();gB.update(this),yB.update(this),GB.update(this),this.material.flatShading!=this.pv.flatShading&&(this.material.flatShading=this.pv.flatShading,this.material.needsUpdate=!0),this.setMaterial(this.material)}}const Dz={uniforms:!0};class Bz extends(rz(cB(XB(QD(aB(dB(Lz(fz(IB(PB(QB(vz(uz(SB(MB(TB(VB(sB(uB(ua)))))))))))))))))))){}const zz=new Bz;class kz extends lB{constructor(){super(...arguments),this.paramsConfig=zz,this.controllers={advancedCommon:new tB(this),alphaMap:new EB(this,Dz),aoMap:new CB(this,Dz),bumpMap:new dz(this,Dz),displacementMap:new yz(this,Dz),emissiveMap:new tz(this,Dz),envMap:new RB(this,Dz),lightMap:new FB(this,Dz),map:new AB(this,Dz),normalMap:new gz(this,Dz),specularMap:new Oz(this,Dz),PCSS:new oz(this)},this.controllerNames=Object.keys(this.controllers)}static type(){return\\\\\\\"meshPhongBuilder\\\\\\\"}usedAssembler(){return jn.GL_MESH_PHONG}_create_assembler_controller(){return li.assemblersRegister.assembler(this,this.usedAssembler())}initializeNode(){this.params.onParamsCreated(\\\\\\\"init controllers\\\\\\\",(()=>{for(let t of this.controllerNames)this.controllers[t].initializeNode()}))}async cook(){for(let t of this.controllerNames)this.controllers[t].update();rB.update(this),hB.update(this),YB.update(this),this.compileIfRequired(),this.setMaterial(this.material)}}function Uz(t){return class extends t{constructor(){super(...arguments),this.useEnvMap=ha.BOOLEAN(0,{separatorBefore:!0,...xB(Gz)}),this.envMap=ha.NODE_PATH(vi.EMPTY,bB(Gz,\\\\\\\"useEnvMap\\\\\\\")),this.envMapIntensity=ha.FLOAT(1,{visibleIf:{useEnvMap:1}}),this.refractionRatio=ha.FLOAT(.98,{range:[-1,1],rangeLocked:[!1,!1],visibleIf:{useEnvMap:1}})}}}Uz(ua);class Gz extends wB{constructor(t,e){super(t,e),this.node=t}initializeNode(){this.add_hooks(this.node.p.useEnvMap,this.node.p.envMap)}async update(){if(this._update(this.node.material,\\\\\\\"envMap\\\\\\\",this.node.p.useEnvMap,this.node.p.envMap),this._update_options.uniforms){const t=this.node.material;t.uniforms.envMapIntensity.value=this.node.pv.envMapIntensity,t.uniforms.refractionRatio.value=this.node.pv.refractionRatio}if(this._update_options.directParams){const t=this.node.material;t.envMapIntensity=this.node.pv.envMapIntensity,t.refractionRatio=this.node.pv.refractionRatio}}static async update(t){t.controllers.envMap.update()}}function Vz(t){return class extends t{constructor(){super(...arguments),this.useMetalnessMap=ha.BOOLEAN(0,{separatorBefore:!0,...xB(Hz)}),this.metalnessMap=ha.NODE_PATH(vi.EMPTY,bB(Hz,\\\\\\\"useMetalnessMap\\\\\\\")),this.metalness=ha.FLOAT(1),this.useRoughnessMap=ha.BOOLEAN(0,{separatorBefore:!0,...xB(Hz)}),this.roughnessMap=ha.NODE_PATH(vi.EMPTY,bB(Hz,\\\\\\\"useRoughnessMap\\\\\\\")),this.roughness=ha.FLOAT(.5)}}}O.a;Vz(ua);class Hz extends wB{constructor(t,e){super(t,e),this.node=t}initializeNode(){this.add_hooks(this.node.p.useMetalnessMap,this.node.p.metalnessMap)}async update(){if(this._update(this.node.material,\\\\\\\"metalnessMap\\\\\\\",this.node.p.useMetalnessMap,this.node.p.metalnessMap),this._update_options.uniforms){this.node.material.uniforms.metalness.value=this.node.pv.metalness}if(this._update_options.directParams){this.node.material.metalness=this.node.pv.metalness}if(this._update(this.node.material,\\\\\\\"roughnessMap\\\\\\\",this.node.p.useRoughnessMap,this.node.p.roughnessMap),this._update_options.uniforms){this.node.material.uniforms.roughness.value=this.node.pv.roughness}if(this._update_options.directParams){this.node.material.roughness=this.node.pv.roughness}}static async update(t){t.controllers.metalnessRoughnessMap.update()}}function jz(t){return class extends t{constructor(){super(...arguments),this.clearcoat=ha.FLOAT(0,{separatorBefore:!0}),this.useClearCoatMap=ha.BOOLEAN(0,xB(qz)),this.clearcoatMap=ha.NODE_PATH(vi.EMPTY,bB(qz,\\\\\\\"useClearCoatMap\\\\\\\")),this.useClearCoatNormalMap=ha.BOOLEAN(0,xB(qz)),this.clearcoatNormalMap=ha.NODE_PATH(vi.EMPTY,bB(qz,\\\\\\\"useClearCoatNormalMap\\\\\\\")),this.clearcoatNormalScale=ha.VECTOR2([1,1],{visibleIf:{useClearCoatNormalMap:1}}),this.clearcoatRoughness=ha.FLOAT(0),this.useClearCoatRoughnessMap=ha.BOOLEAN(0,xB(qz)),this.clearcoatRoughnessMap=ha.NODE_PATH(vi.EMPTY,bB(qz,\\\\\\\"useClearCoatRoughnessMap\\\\\\\")),this.useSheen=ha.BOOLEAN(0),this.sheen=ha.FLOAT(0,{range:[0,1],rangeLocked:[!0,!1],visibleIf:{useSheen:1}}),this.sheenRoughness=ha.FLOAT(1,{range:[0,1],rangeLocked:[!0,!1],visibleIf:{useSheen:1}}),this.sheenColor=ha.COLOR([1,1,1],{visibleIf:{useSheen:1}}),this.transmission=ha.FLOAT(0,{range:[0,1]}),this.useTransmissionMap=ha.BOOLEAN(0),this.transmissionMap=ha.NODE_PATH(vi.EMPTY,{visibleIf:{useTransmissionMap:1}}),this.ior=ha.FLOAT(1.5,{range:[1,2.3333],rangeLocked:[!0,!0]}),this.thickness=ha.FLOAT(.01,{range:[0,10],rangeLocked:[!0,!1]}),this.useThicknessMap=ha.BOOLEAN(0),this.thicknessMap=ha.NODE_PATH(vi.EMPTY,{visibleIf:{useThicknessMap:1}}),this.attenuationDistance=ha.FLOAT(0,{range:[0,10],rangeLocked:[!0,!1]}),this.attenuationColor=ha.COLOR([1,1,1])}}}jz(ua);const Wz=new Wf.a;class qz extends wB{constructor(t,e){super(t,e),this.node=t,this._sheenColorClone=new D.a}initializeNode(){this.add_hooks(this.node.p.useClearCoatMap,this.node.p.clearcoatMap),this.add_hooks(this.node.p.useClearCoatNormalMap,this.node.p.clearcoatNormalMap),this.add_hooks(this.node.p.useClearCoatRoughnessMap,this.node.p.clearcoatRoughnessMap),this.add_hooks(this.node.p.useTransmissionMap,this.node.p.transmissionMap),this.add_hooks(this.node.p.useThicknessMap,this.node.p.thicknessMap)}async update(){this._update(this.node.material,\\\\\\\"clearcoatMap\\\\\\\",this.node.p.useClearCoatMap,this.node.p.clearcoatMap),this._update(this.node.material,\\\\\\\"clearcoatNormalMap\\\\\\\",this.node.p.useClearCoatNormalMap,this.node.p.clearcoatNormalMap),this._update(this.node.material,\\\\\\\"clearcoatRoughnessMap\\\\\\\",this.node.p.useClearCoatRoughnessMap,this.node.p.clearcoatRoughnessMap),this._update(this.node.material,\\\\\\\"transmissionMap\\\\\\\",this.node.p.useTransmissionMap,this.node.p.transmissionMap),this._update(this.node.material,\\\\\\\"thicknessMap\\\\\\\",this.node.p.useThicknessMap,this.node.p.thicknessMap);const t=this.node.pv;Wz.ior=t.ior;const e=Wz.reflectivity;if(this._update_options.uniforms){const n=this.node.material;n.uniforms.clearcoat.value=t.clearcoat,n.uniforms.clearcoatNormalScale.value.copy(t.clearcoatNormalScale),n.uniforms.clearcoatRoughness.value=t.clearcoatRoughness,n.uniforms.reflectivity.value=e,n.uniforms.transmission.value=t.transmission,n.uniforms.thickness.value=t.thickness,n.uniforms.attenuationDistance.value=t.attenuationDistance,n.uniforms.attenuationTint.value=t.attenuationColor,t.useSheen?(this._sheenColorClone.copy(t.sheenColor),n.uniforms.sheen.value=t.sheen,n.uniforms.sheenRoughness.value=t.sheenRoughness,n.uniforms.sheenTint.value=this._sheenColorClone):n.uniforms.sheen.value=0,n.uniforms.ior.value=t.ior,n.specularTint=n.uniforms.specularTint.value,n.ior=n.uniforms.ior.value}if(this._update_options.directParams){const n=this.node.material;n.clearcoat=t.clearcoat,null!=n.clearcoatNormalScale&&n.clearcoatNormalScale.copy(t.clearcoatNormalScale),n.clearcoatRoughness=t.clearcoatRoughness,n.reflectivity=e,t.useSheen?(this._sheenColorClone.copy(t.sheenColor),n.sheen=t.sheen,n.sheenRoughness=t.sheenRoughness,n.sheenTint=this._sheenColorClone):n.sheen=0,n.transmission=t.transmission,n.thickness=t.thickness,n.attenuationDistance=t.attenuationDistance,n.attenuationTint=t.attenuationColor}}static async update(t){t.controllers.physical.update()}}const Xz={directParams:!0};class Yz extends(vB(UB(QD(dB(jz(Vz(fz(IB(Uz(QB(vz(uz(SB(MB(TB(VB(fB(uB(ua))))))))))))))))))){}const $z=new Yz;class Jz extends $D{constructor(){super(...arguments),this.paramsConfig=$z,this.controllers={advancedCommon:new tB(this),alphaMap:new EB(this,Xz),aoMap:new CB(this,Xz),bumpMap:new dz(this,Xz),displacementMap:new yz(this,Xz),emissiveMap:new tz(this,Xz),envMap:new Gz(this,Xz),lightMap:new FB(this,Xz),map:new AB(this,Xz),metalnessRoughnessMap:new Hz(this,Xz),normalMap:new gz(this,Xz),physical:new qz(this,Xz)},this.controllerNames=Object.keys(this.controllers)}static type(){return\\\\\\\"meshPhysical\\\\\\\"}createMaterial(){return new Wf.a({vertexColors:!1,side:w.H,color:16777215,opacity:1,metalness:1,roughness:0})}initializeNode(){this.params.onParamsCreated(\\\\\\\"init controllers\\\\\\\",(()=>{for(let t of this.controllerNames)this.controllers[t].initializeNode()}))}async cook(){for(let t of this.controllerNames)this.controllers[t].update();gB.update(this),yB.update(this),GB.update(this),this.setMaterial(this.material)}}const Zz={uniforms:!0};class Kz extends(function(t){return class extends(rz(cB(XB(QD(aB(t)))))){}}(dB(jz(Vz(fz(IB(Uz(QB(vz(uz(SB(MB(TB(VB(sB(uB(ua))))))))))))))))){}const Qz=new Kz;class tk extends lB{constructor(){super(...arguments),this.paramsConfig=Qz,this.controllers={advancedCommon:new tB(this),alphaMap:new EB(this,Zz),aoMap:new CB(this,Zz),bumpMap:new dz(this,Zz),displacementMap:new yz(this,Zz),emissiveMap:new tz(this,Zz),envMap:new Gz(this,{uniforms:!0,directParams:!0}),lightMap:new FB(this,Zz),map:new AB(this,Zz),metalnessRoughnessMap:new Hz(this,{uniforms:!0,directParams:!0}),normalMap:new gz(this,Zz),physical:new qz(this,{uniforms:!0,directParams:!0}),PCSS:new oz(this)},this.controllerNames=Object.keys(this.controllers)}static type(){return\\\\\\\"meshPhysicalBuilder\\\\\\\"}usedAssembler(){return jn.GL_MESH_PHYSICAL}_create_assembler_controller(){return li.assemblersRegister.assembler(this,this.usedAssembler())}initializeNode(){this.params.onParamsCreated(\\\\\\\"init controllers\\\\\\\",(()=>{for(let t of this.controllerNames)this.controllers[t].initializeNode()}))}createMaterial(){const t=super.createMaterial();return t.isMeshStandardMaterial=!0,t.isMeshPhysicalMaterial=!0,t}async cook(){for(let t of this.controllerNames)this.controllers[t].update();rB.update(this),hB.update(this),YB.update(this),this.compileIfRequired(),this.setMaterial(this.material)}}const ek={directParams:!0};class nk extends(vB(UB(QD(dB(Vz(fz(IB(Uz(QB(vz(uz(SB(MB(TB(VB(fB(uB(ua)))))))))))))))))){}const ik=new nk;class sk extends $D{constructor(){super(...arguments),this.paramsConfig=ik,this.controllers={advancedCommon:new tB(this),alphaMap:new EB(this,ek),aoMap:new CB(this,ek),bumpMap:new dz(this,ek),displacementMap:new yz(this,ek),emissiveMap:new tz(this,ek),envMap:new Gz(this,ek),lightMap:new FB(this,ek),map:new AB(this,ek),metalnessRoughnessMap:new Hz(this,ek),normalMap:new gz(this,ek)},this.controllerNames=Object.keys(this.controllers)}static type(){return\\\\\\\"meshStandard\\\\\\\"}createMaterial(){return new ws.a({vertexColors:!1,side:w.H,color:16777215,opacity:1,metalness:1,roughness:0})}initializeNode(){this.params.onParamsCreated(\\\\\\\"init controllers\\\\\\\",(()=>{for(let t of this.controllerNames)this.controllers[t].initializeNode()}))}async cook(){for(let t of this.controllerNames)this.controllers[t].update();gB.update(this),yB.update(this),GB.update(this),this.setMaterial(this.material)}}const rk={uniforms:!0};class ok extends(rz(cB(XB(QD(aB(dB(Vz(fz(IB(Uz(QB(vz(uz(SB(MB(TB(VB(sB(uB(ua)))))))))))))))))))){}const ak=new ok;class lk extends lB{constructor(){super(...arguments),this.paramsConfig=ak,this.controllers={advancedCommon:new tB(this),alphaMap:new EB(this,rk),aoMap:new CB(this,rk),bumpMap:new dz(this,rk),displacementMap:new yz(this,rk),emissiveMap:new tz(this,rk),envMap:new Gz(this,rk),lightMap:new FB(this,rk),map:new AB(this,rk),metalnessRoughnessMap:new Hz(this,rk),normalMap:new gz(this,rk),PCSS:new oz(this)},this.controllerNames=Object.keys(this.controllers)}static type(){return\\\\\\\"meshStandardBuilder\\\\\\\"}usedAssembler(){return jn.GL_MESH_STANDARD}_create_assembler_controller(){return li.assemblersRegister.assembler(this,this.usedAssembler())}initializeNode(){this.params.onParamsCreated(\\\\\\\"init controllers\\\\\\\",(()=>{for(let t of this.controllerNames)this.controllers[t].initializeNode()}))}async cook(){for(let t of this.controllerNames)this.controllers[t].update();rB.update(this),hB.update(this),YB.update(this),this.compileIfRequired(),this.setMaterial(this.material)}}const ck=U.meshphong_frag.slice(0,U.meshphong_frag.indexOf(\\\\\\\"void main() {\\\\\\\")),hk=U.meshphong_frag.slice(U.meshphong_frag.indexOf(\\\\\\\"void main() {\\\\\\\")),uk={uniforms:I.merge([H.phong.uniforms,{thicknessMap:{value:null},thicknessColor:{value:new D.a(16777215)},thicknessDistortion:{value:.1},thicknessAmbient:{value:0},thicknessAttenuation:{value:.1},thicknessPower:{value:2},thicknessScale:{value:10}}]),vertexShader:[\\\\\\\"#define USE_UV\\\\\\\",U.meshphong_vert].join(\\\\\\\"\\\\n\\\\\\\"),fragmentShader:[\\\\\\\"#define USE_UV\\\\\\\",\\\\\\\"#define SUBSURFACE\\\\\\\",ck,\\\\\\\"uniform sampler2D thicknessMap;\\\\\\\",\\\\\\\"uniform float thicknessPower;\\\\\\\",\\\\\\\"uniform float thicknessScale;\\\\\\\",\\\\\\\"uniform float thicknessDistortion;\\\\\\\",\\\\\\\"uniform float thicknessAmbient;\\\\\\\",\\\\\\\"uniform float thicknessAttenuation;\\\\\\\",\\\\\\\"uniform vec3 thicknessColor;\\\\\\\",\\\\\\\"void RE_Direct_Scattering(const in IncidentLight directLight, const in vec2 uv, const in GeometricContext geometry, inout ReflectedLight reflectedLight) {\\\\\\\",\\\\\\\"\\\\tvec3 thickness = thicknessColor * texture2D(thicknessMap, uv).r;\\\\\\\",\\\\\\\"\\\\tvec3 scatteringHalf = normalize(directLight.direction + (geometry.normal * thicknessDistortion));\\\\\\\",\\\\\\\"\\\\tfloat scatteringDot = pow(saturate(dot(geometry.viewDir, -scatteringHalf)), thicknessPower) * thicknessScale;\\\\\\\",\\\\\\\"\\\\tvec3 scatteringIllu = (scatteringDot + thicknessAmbient) * thickness;\\\\\\\",\\\\\\\"\\\\treflectedLight.directDiffuse += scatteringIllu * thicknessAttenuation * directLight.color;\\\\\\\",\\\\\\\"}\\\\\\\",hk.replace(\\\\\\\"#include <lights_fragment_begin>\\\\\\\",(dk=U.lights_fragment_begin,pk=\\\\\\\"RE_Direct( directLight, geometry, material, reflectedLight );\\\\\\\",_k=[\\\\\\\"RE_Direct( directLight, geometry, material, reflectedLight );\\\\\\\",\\\\\\\"#if defined( SUBSURFACE ) && defined( USE_UV )\\\\\\\",\\\\\\\" RE_Direct_Scattering(directLight, vUv, geometry, reflectedLight);\\\\\\\",\\\\\\\"#endif\\\\\\\"].join(\\\\\\\"\\\\n\\\\\\\"),dk.split(pk).join(_k)))].join(\\\\\\\"\\\\n\\\\\\\")};var dk,pk,_k;function mk(t){return{cook:!1,callback:(e,n)=>{xk.PARAM_CALLBACK_update_uniformColor(e,n,t)}}}function fk(t){return{cook:!1,callback:(e,n)=>{xk.PARAM_CALLBACK_update_uniformN(e,n,t)}}}const gk={uniforms:!0};class vk extends(vB(XB(QD(dB(MB(TB(VB(function(t){return class extends t{constructor(){var t;super(...arguments),this.diffuse=ha.COLOR([1,1,1],{...mk(\\\\\\\"diffuse\\\\\\\")}),this.shininess=ha.FLOAT(1,{range:[0,1e3]}),this.thicknessMap=ha.NODE_PATH(vi.EMPTY,{nodeSelection:{context:ts.COP},...(t=\\\\\\\"thicknessMap\\\\\\\",{cook:!1,callback:(e,n)=>{xk.PARAM_CALLBACK_update_uniformTexture(e,n,t)}})}),this.thicknessColor=ha.COLOR([.5,.3,0],{...mk(\\\\\\\"thicknessColor\\\\\\\")}),this.thicknessDistortion=ha.FLOAT(.1,{...fk(\\\\\\\"thicknessDistortion\\\\\\\")}),this.thicknessAmbient=ha.FLOAT(.4,{...fk(\\\\\\\"thicknessAmbient\\\\\\\")}),this.thicknessAttenuation=ha.FLOAT(.8,{...fk(\\\\\\\"thicknessAttenuation\\\\\\\")}),this.thicknessPower=ha.FLOAT(2,{range:[0,10],...fk(\\\\\\\"thicknessPower\\\\\\\")}),this.thicknessScale=ha.FLOAT(16,{range:[0,100],...fk(\\\\\\\"thicknessScale\\\\\\\")})}}}(uB(ua)))))))))){}const yk=new vk;class xk extends $D{constructor(){super(...arguments),this.paramsConfig=yk,this.controllers={advancedCommon:new tB(this),alphaMap:new EB(this,gk),map:new AB(this,gk)},this.controllerNames=Object.keys(this.controllers)}static type(){return\\\\\\\"meshSubsurfaceScattering\\\\\\\"}createMaterial(){const t=I.clone(uk.uniforms),e=new F({uniforms:t,vertexShader:uk.vertexShader,fragmentShader:uk.fragmentShader,lights:!0});return e.extensions.derivatives=!0,e}initializeNode(){this.params.onParamsCreated(\\\\\\\"init controllers\\\\\\\",(()=>{for(let t of this.controllerNames)this.controllers[t].initializeNode()}))}async cook(){for(let t of this.controllerNames)this.controllers[t].update();yB.update(this),YB.update(this),this.update_map(this.p.thicknessMap,\\\\\\\"thicknessMap\\\\\\\"),this.material.uniforms.diffuse.value.copy(this.pv.diffuse),this.material.uniforms.shininess.value=this.pv.shininess,this.material.uniforms.thicknessColor.value.copy(this.pv.thicknessColor),this.material.uniforms.thicknessDistortion.value=this.pv.thicknessDistortion,this.material.uniforms.thicknessAmbient.value=this.pv.thicknessAmbient,this.material.uniforms.thicknessAttenuation.value=this.pv.thicknessAttenuation,this.material.uniforms.thicknessPower.value=this.pv.thicknessPower,this.material.uniforms.thicknessScale.value=this.pv.thicknessScale,this.setMaterial(this.material)}static PARAM_CALLBACK_update_uniformN(t,e,n){t.material.uniforms[n].value=e.value}static PARAM_CALLBACK_update_uniformColor(t,e,n){e.parent_param&&t.material.uniforms[n].value.copy(e.parent_param.value)}static PARAM_CALLBACK_update_uniformTexture(t,e,n){t.update_map(e,n)}async update_map(t,e){const n=t.value.nodeWithContext(ts.COP);n||(this.material.uniforms[e].value=null);const i=n,s=await i.compute();this.material.uniforms[e].value=s.texture()}}function bk(t){return class extends t{constructor(){super(...arguments),this.useGradientMap=ha.BOOLEAN(0,xB(wk)),this.gradientMap=ha.NODE_PATH(vi.EMPTY,bB(wk,\\\\\\\"useGradientMap\\\\\\\"))}}}O.a;bk(ua);class wk extends wB{constructor(t,e){super(t,e),this.node=t}initializeNode(){this.add_hooks(this.node.p.useGradientMap,this.node.p.gradientMap)}async update(){this._update(this.node.material,\\\\\\\"gradientMap\\\\\\\",this.node.p.useGradientMap,this.node.p.gradientMap)}static async update(t){t.controllers.gradientMap.update()}}const Tk={directParams:!0};class Ak extends(vB(UB(QD(dB(fz(IB(bk(QB(vz(uz(SB(MB(TB(VB(fB(uB(ua))))))))))))))))){}const Mk=new Ak;class Ek extends $D{constructor(){super(...arguments),this.paramsConfig=Mk,this.controllers={advancedCommon:new tB(this),alphaMap:new EB(this,Tk),aoMap:new CB(this,Tk),bumpMap:new dz(this,Tk),displacementMap:new yz(this,Tk),emissiveMap:new tz(this,Tk),gradientMap:new wk(this,Tk),lightMap:new FB(this,Tk),map:new AB(this,Tk),normalMap:new gz(this,Tk)},this.controllerNames=Object.keys(this.controllers)}static type(){return\\\\\\\"meshToon\\\\\\\"}createMaterial(){return new Xf({vertexColors:!1,side:w.H,color:16777215,opacity:1})}initializeNode(){this.params.onParamsCreated(\\\\\\\"init controllers\\\\\\\",(()=>{for(let t of this.controllerNames)this.controllers[t].initializeNode()}))}async cook(){for(let t of this.controllerNames)this.controllers[t].update();gB.update(this),yB.update(this),GB.update(this),this.setMaterial(this.material)}}const Sk={directParams:!0};class Ck extends(cB(QD(dB(MB(TB(VB(fB(function(t){return class extends t{constructor(){super(...arguments),this.size=ha.FLOAT(1),this.sizeAttenuation=ha.BOOLEAN(1)}}}(uB(ua)))))))))){}const Nk=new Ck;class Lk extends $D{constructor(){super(...arguments),this.paramsConfig=Nk,this.controllers={advancedCommon:new tB(this),alphaMap:new EB(this,Sk),map:new AB(this,Sk)},this.controllerNames=Object.keys(this.controllers)}static type(){return\\\\\\\"points\\\\\\\"}createMaterial(){return new bs.a({vertexColors:!1,side:w.H,color:16777215,opacity:1})}initializeNode(){this.params.onParamsCreated(\\\\\\\"init controllers\\\\\\\",(()=>{for(let t of this.controllerNames)this.controllers[t].initializeNode()}))}async cook(){for(let t of this.controllerNames)this.controllers[t].update();gB.update(this),hB.update(this),this.material.size=this.pv.size,this.material.sizeAttenuation=this.pv.sizeAttenuation,this.setMaterial(this.material)}}class Ok extends(cB(QD(aB(dB(sB(uB(ua))))))){}const Pk=new Ok;class Rk extends lB{constructor(){super(...arguments),this.paramsConfig=Pk,this.controllers={advancedCommon:new tB(this)},this.controllerNames=Object.keys(this.controllers)}static type(){return\\\\\\\"pointsBuilder\\\\\\\"}usedAssembler(){return jn.GL_POINTS}_create_assembler_controller(){return li.assemblersRegister.assembler(this,this.usedAssembler())}initializeNode(){this.params.onParamsCreated(\\\\\\\"init controllers\\\\\\\",(()=>{for(let t of this.controllerNames)this.controllers[t].initializeNode()}))}async cook(){for(let t of this.controllerNames)this.controllers[t].update();rB.update(this),hB.update(this),this.compileIfRequired(),this.setMaterial(this.material)}}class Ik extends(QD(fB(ua))){}const Fk=new Ik;class Dk extends $D{constructor(){super(...arguments),this.paramsConfig=Fk,this.controllers={advancedCommon:new tB(this)},this.controllerNames=Object.keys(this.controllers)}static type(){return\\\\\\\"shadow\\\\\\\"}createMaterial(){return new Hf({vertexColors:!1,side:w.H,color:16777215,opacity:1})}initializeNode(){this.params.onParamsCreated(\\\\\\\"init controllers\\\\\\\",(()=>{for(let t of this.controllerNames)this.controllers[t].initializeNode()}))}async cook(){for(let t of this.controllerNames)this.controllers[t].update();gB.update(this),this.setMaterial(this.material)}}class Bk extends B.a{constructor(){const t=Bk.SkyShader,e=new F({name:\\\\\\\"SkyShader\\\\\\\",fragmentShader:t.fragmentShader,vertexShader:t.vertexShader,uniforms:I.clone(t.uniforms),side:w.i,depthWrite:!1});super(new N(1,1,1),e)}}Bk.prototype.isSky=!0,Bk.SkyShader={uniforms:{turbidity:{value:2},rayleigh:{value:1},mieCoefficient:{value:.005},mieDirectionalG:{value:.8},sunPosition:{value:new p.a},up:{value:new p.a(0,1,0)}},vertexShader:\\\\\\\"\\\\n\\\\t\\\\tuniform vec3 sunPosition;\\\\n\\\\t\\\\tuniform float rayleigh;\\\\n\\\\t\\\\tuniform float turbidity;\\\\n\\\\t\\\\tuniform float mieCoefficient;\\\\n\\\\t\\\\tuniform vec3 up;\\\\n\\\\n\\\\t\\\\tvarying vec3 vWorldPosition;\\\\n\\\\t\\\\tvarying vec3 vSunDirection;\\\\n\\\\t\\\\tvarying float vSunfade;\\\\n\\\\t\\\\tvarying vec3 vBetaR;\\\\n\\\\t\\\\tvarying vec3 vBetaM;\\\\n\\\\t\\\\tvarying float vSunE;\\\\n\\\\n\\\\t\\\\t// constants for atmospheric scattering\\\\n\\\\t\\\\tconst float e = 2.71828182845904523536028747135266249775724709369995957;\\\\n\\\\t\\\\tconst float pi = 3.141592653589793238462643383279502884197169;\\\\n\\\\n\\\\t\\\\t// wavelength of used primaries, according to preetham\\\\n\\\\t\\\\tconst vec3 lambda = vec3( 680E-9, 550E-9, 450E-9 );\\\\n\\\\t\\\\t// this pre-calcuation replaces older TotalRayleigh(vec3 lambda) function:\\\\n\\\\t\\\\t// (8.0 * pow(pi, 3.0) * pow(pow(n, 2.0) - 1.0, 2.0) * (6.0 + 3.0 * pn)) / (3.0 * N * pow(lambda, vec3(4.0)) * (6.0 - 7.0 * pn))\\\\n\\\\t\\\\tconst vec3 totalRayleigh = vec3( 5.804542996261093E-6, 1.3562911419845635E-5, 3.0265902468824876E-5 );\\\\n\\\\n\\\\t\\\\t// mie stuff\\\\n\\\\t\\\\t// K coefficient for the primaries\\\\n\\\\t\\\\tconst float v = 4.0;\\\\n\\\\t\\\\tconst vec3 K = vec3( 0.686, 0.678, 0.666 );\\\\n\\\\t\\\\t// MieConst = pi * pow( ( 2.0 * pi ) / lambda, vec3( v - 2.0 ) ) * K\\\\n\\\\t\\\\tconst vec3 MieConst = vec3( 1.8399918514433978E14, 2.7798023919660528E14, 4.0790479543861094E14 );\\\\n\\\\n\\\\t\\\\t// earth shadow hack\\\\n\\\\t\\\\t// cutoffAngle = pi / 1.95;\\\\n\\\\t\\\\tconst float cutoffAngle = 1.6110731556870734;\\\\n\\\\t\\\\tconst float steepness = 1.5;\\\\n\\\\t\\\\tconst float EE = 1000.0;\\\\n\\\\n\\\\t\\\\tfloat sunIntensity( float zenithAngleCos ) {\\\\n\\\\t\\\\t\\\\tzenithAngleCos = clamp( zenithAngleCos, -1.0, 1.0 );\\\\n\\\\t\\\\t\\\\treturn EE * max( 0.0, 1.0 - pow( e, -( ( cutoffAngle - acos( zenithAngleCos ) ) / steepness ) ) );\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\tvec3 totalMie( float T ) {\\\\n\\\\t\\\\t\\\\tfloat c = ( 0.2 * T ) * 10E-18;\\\\n\\\\t\\\\t\\\\treturn 0.434 * c * MieConst;\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\tvoid main() {\\\\n\\\\n\\\\t\\\\t\\\\tvec4 worldPosition = modelMatrix * vec4( position, 1.0 );\\\\n\\\\t\\\\t\\\\tvWorldPosition = worldPosition.xyz;\\\\n\\\\n\\\\t\\\\t\\\\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\\\\n\\\\t\\\\t\\\\tgl_Position.z = gl_Position.w; // set z to camera.far\\\\n\\\\n\\\\t\\\\t\\\\tvSunDirection = normalize( sunPosition );\\\\n\\\\n\\\\t\\\\t\\\\tvSunE = sunIntensity( dot( vSunDirection, up ) );\\\\n\\\\n\\\\t\\\\t\\\\tvSunfade = 1.0 - clamp( 1.0 - exp( ( sunPosition.y / 450000.0 ) ), 0.0, 1.0 );\\\\n\\\\n\\\\t\\\\t\\\\tfloat rayleighCoefficient = rayleigh - ( 1.0 * ( 1.0 - vSunfade ) );\\\\n\\\\n\\\\t\\\\t\\\\t// extinction (absorbtion + out scattering)\\\\n\\\\t\\\\t\\\\t// rayleigh coefficients\\\\n\\\\t\\\\t\\\\tvBetaR = totalRayleigh * rayleighCoefficient;\\\\n\\\\n\\\\t\\\\t\\\\t// mie coefficients\\\\n\\\\t\\\\t\\\\tvBetaM = totalMie( turbidity ) * mieCoefficient;\\\\n\\\\n\\\\t\\\\t}\\\\\\\",fragmentShader:\\\\\\\"\\\\n\\\\t\\\\tvarying vec3 vWorldPosition;\\\\n\\\\t\\\\tvarying vec3 vSunDirection;\\\\n\\\\t\\\\tvarying float vSunfade;\\\\n\\\\t\\\\tvarying vec3 vBetaR;\\\\n\\\\t\\\\tvarying vec3 vBetaM;\\\\n\\\\t\\\\tvarying float vSunE;\\\\n\\\\n\\\\t\\\\tuniform float mieDirectionalG;\\\\n\\\\t\\\\tuniform vec3 up;\\\\n\\\\n\\\\t\\\\tconst vec3 cameraPos = vec3( 0.0, 0.0, 0.0 );\\\\n\\\\n\\\\t\\\\t// constants for atmospheric scattering\\\\n\\\\t\\\\tconst float pi = 3.141592653589793238462643383279502884197169;\\\\n\\\\n\\\\t\\\\tconst float n = 1.0003; // refractive index of air\\\\n\\\\t\\\\tconst float N = 2.545E25; // number of molecules per unit volume for air at 288.15K and 1013mb (sea level -45 celsius)\\\\n\\\\n\\\\t\\\\t// optical length at zenith for molecules\\\\n\\\\t\\\\tconst float rayleighZenithLength = 8.4E3;\\\\n\\\\t\\\\tconst float mieZenithLength = 1.25E3;\\\\n\\\\t\\\\t// 66 arc seconds -> degrees, and the cosine of that\\\\n\\\\t\\\\tconst float sunAngularDiameterCos = 0.999956676946448443553574619906976478926848692873900859324;\\\\n\\\\n\\\\t\\\\t// 3.0 / ( 16.0 * pi )\\\\n\\\\t\\\\tconst float THREE_OVER_SIXTEENPI = 0.05968310365946075;\\\\n\\\\t\\\\t// 1.0 / ( 4.0 * pi )\\\\n\\\\t\\\\tconst float ONE_OVER_FOURPI = 0.07957747154594767;\\\\n\\\\n\\\\t\\\\tfloat rayleighPhase( float cosTheta ) {\\\\n\\\\t\\\\t\\\\treturn THREE_OVER_SIXTEENPI * ( 1.0 + pow( cosTheta, 2.0 ) );\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\tfloat hgPhase( float cosTheta, float g ) {\\\\n\\\\t\\\\t\\\\tfloat g2 = pow( g, 2.0 );\\\\n\\\\t\\\\t\\\\tfloat inverse = 1.0 / pow( 1.0 - 2.0 * g * cosTheta + g2, 1.5 );\\\\n\\\\t\\\\t\\\\treturn ONE_OVER_FOURPI * ( ( 1.0 - g2 ) * inverse );\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\tvoid main() {\\\\n\\\\n\\\\t\\\\t\\\\tvec3 direction = normalize( vWorldPosition - cameraPos );\\\\n\\\\n\\\\t\\\\t\\\\t// optical length\\\\n\\\\t\\\\t\\\\t// cutoff angle at 90 to avoid singularity in next formula.\\\\n\\\\t\\\\t\\\\tfloat zenithAngle = acos( max( 0.0, dot( up, direction ) ) );\\\\n\\\\t\\\\t\\\\tfloat inverse = 1.0 / ( cos( zenithAngle ) + 0.15 * pow( 93.885 - ( ( zenithAngle * 180.0 ) / pi ), -1.253 ) );\\\\n\\\\t\\\\t\\\\tfloat sR = rayleighZenithLength * inverse;\\\\n\\\\t\\\\t\\\\tfloat sM = mieZenithLength * inverse;\\\\n\\\\n\\\\t\\\\t\\\\t// combined extinction factor\\\\n\\\\t\\\\t\\\\tvec3 Fex = exp( -( vBetaR * sR + vBetaM * sM ) );\\\\n\\\\n\\\\t\\\\t\\\\t// in scattering\\\\n\\\\t\\\\t\\\\tfloat cosTheta = dot( direction, vSunDirection );\\\\n\\\\n\\\\t\\\\t\\\\tfloat rPhase = rayleighPhase( cosTheta * 0.5 + 0.5 );\\\\n\\\\t\\\\t\\\\tvec3 betaRTheta = vBetaR * rPhase;\\\\n\\\\n\\\\t\\\\t\\\\tfloat mPhase = hgPhase( cosTheta, mieDirectionalG );\\\\n\\\\t\\\\t\\\\tvec3 betaMTheta = vBetaM * mPhase;\\\\n\\\\n\\\\t\\\\t\\\\tvec3 Lin = pow( vSunE * ( ( betaRTheta + betaMTheta ) / ( vBetaR + vBetaM ) ) * ( 1.0 - Fex ), vec3( 1.5 ) );\\\\n\\\\t\\\\t\\\\tLin *= mix( vec3( 1.0 ), pow( vSunE * ( ( betaRTheta + betaMTheta ) / ( vBetaR + vBetaM ) ) * Fex, vec3( 1.0 / 2.0 ) ), clamp( pow( 1.0 - dot( up, vSunDirection ), 5.0 ), 0.0, 1.0 ) );\\\\n\\\\n\\\\t\\\\t\\\\t// nightsky\\\\n\\\\t\\\\t\\\\tfloat theta = acos( direction.y ); // elevation --\\\\x3e y-axis, [-pi/2, pi/2]\\\\n\\\\t\\\\t\\\\tfloat phi = atan( direction.z, direction.x ); // azimuth --\\\\x3e x-axis [-pi/2, pi/2]\\\\n\\\\t\\\\t\\\\tvec2 uv = vec2( phi, theta ) / vec2( 2.0 * pi, pi ) + vec2( 0.5, 0.0 );\\\\n\\\\t\\\\t\\\\tvec3 L0 = vec3( 0.1 ) * Fex;\\\\n\\\\n\\\\t\\\\t\\\\t// composition + solar disc\\\\n\\\\t\\\\t\\\\tfloat sundisk = smoothstep( sunAngularDiameterCos, sunAngularDiameterCos + 0.00002, cosTheta );\\\\n\\\\t\\\\t\\\\tL0 += ( vSunE * 19000.0 * Fex ) * sundisk;\\\\n\\\\n\\\\t\\\\t\\\\tvec3 texColor = ( Lin + L0 ) * 0.04 + vec3( 0.0, 0.0003, 0.00075 );\\\\n\\\\n\\\\t\\\\t\\\\tvec3 retColor = pow( texColor, vec3( 1.0 / ( 1.2 + ( 1.2 * vSunfade ) ) ) );\\\\n\\\\n\\\\t\\\\t\\\\tgl_FragColor = vec4( retColor, 1.0 );\\\\n\\\\n\\\\t\\\\t\\\\t#include <tonemapping_fragment>\\\\n\\\\t\\\\t\\\\t#include <encodings_fragment>\\\\n\\\\n\\\\t\\\\t}\\\\\\\"};const zk=new class extends ua{constructor(){super(...arguments),this.turbidity=ha.FLOAT(2,{range:[0,20]}),this.rayleigh=ha.FLOAT(1,{range:[0,4]}),this.mieCoefficient=ha.FLOAT(.005),this.mieDirectional=ha.FLOAT(.8),this.inclination=ha.FLOAT(.5),this.azimuth=ha.FLOAT(.25),this.up=ha.VECTOR3([0,1,0])}};class kk extends $D{constructor(){super(...arguments),this.paramsConfig=zk}static type(){return\\\\\\\"sky\\\\\\\"}createMaterial(){const t=(new Bk).material;return t.depthWrite=!0,t}async cook(){const t=this.material.uniforms;t.turbidity.value=this.pv.turbidity,t.rayleigh.value=this.pv.rayleigh,t.mieCoefficient.value=this.pv.mieCoefficient,t.mieDirectionalG.value=this.pv.mieDirectional,t.up.value.copy(this.pv.up);const e=Math.PI*(this.pv.inclination-.5),n=2*Math.PI*(this.pv.azimuth-.5);t.sunPosition.value.x=Math.cos(n),t.sunPosition.value.y=Math.sin(n)*Math.sin(e),t.sunPosition.value.z=Math.sin(n)*Math.cos(e),this.setMaterial(this.material)}}var Uk=\\\\\\\"precision highp float;\\\\nprecision highp int;\\\\n\\\\nvarying vec3 vPw;\\\\n\\\\n#include <common>\\\\n\\\\nvoid main()\\\\t{\\\\n\\\\n\\\\t// start builder body code\\\\n\\\\n\\\\tvPw = position;\\\\n\\\\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\\\\n\\\\n}\\\\\\\",Gk=\\\\\\\"precision highp float;\\\\nprecision highp int;\\\\n\\\\n#include <common>\\\\n\\\\n#define DIR_LIGHTS_COUNT 1\\\\n#define MAX_STEPS_COUNT 4096\\\\n\\\\nuniform vec3 u_Color;\\\\nuniform float u_VolumeDensity;\\\\nuniform float u_ShadowDensity;\\\\nuniform float u_StepSize;\\\\nuniform vec3 u_BoundingBoxMin;\\\\nuniform vec3 u_BoundingBoxMax;\\\\n//const int u_PointsCount = 3;\\\\n//uniform vec3 u_Points[3];\\\\nuniform sampler2D u_Map;\\\\n\\\\n//const int u_DirectionalLightsCount = 1;\\\\nuniform vec3 u_DirectionalLightDirection; //[DIR_LIGHTS_COUNT];\\\\n\\\\nvarying vec3 vPw;\\\\n// varying vec3 vN;\\\\n// varying vec2 vUV;\\\\n//varying vec3 vPCameraSpace;\\\\n// varying vec4 vCd;\\\\n\\\\nvec3 normalize_in_bbox(vec3 point){\\\\n\\\\n\\\\tvec3 min = u_BoundingBoxMin;\\\\n\\\\tvec3 max = u_BoundingBoxMax;\\\\n\\\\n\\\\treturn vec3(\\\\n\\\\t\\\\t(point.x - min.x) / (max.x - min.x),\\\\n\\\\t\\\\t(point.y - min.y) / (max.y - min.y),\\\\n\\\\t\\\\t(point.z - min.z) / (max.z - min.z)\\\\n\\\\t);\\\\n}\\\\n\\\\nbool is_inside_bbox(vec3 Pw){\\\\n\\\\n\\\\tvec3 min = u_BoundingBoxMin;\\\\n\\\\tvec3 max = u_BoundingBoxMax;\\\\n\\\\n\\\\treturn (\\\\n\\\\t\\\\tPw.x > min.x &&\\\\n\\\\t\\\\tPw.y > min.y &&\\\\n\\\\t\\\\tPw.z > min.z &&\\\\n\\\\n\\\\t\\\\tPw.x < max.x &&\\\\n\\\\t\\\\tPw.y < max.y &&\\\\n\\\\t\\\\tPw.z < max.z\\\\n\\\\t\\\\t);\\\\n}\\\\n\\\\nfloat density_to_opacity(float density, float step_size){\\\\n\\\\tfloat curent_density = density;\\\\n\\\\tcurent_density = max(0.0, curent_density);\\\\n\\\\n\\\\tfloat opacity = (1.0-exp(-curent_density * step_size));\\\\n\\\\treturn max(opacity,0.0);\\\\n}\\\\n\\\\nfloat density_function(vec3 position_for_step){\\\\n\\\\tfloat density = 1.0;\\\\n\\\\t// start builder body code\\\\n\\\\n\\\\treturn density;\\\\n}\\\\n\\\\nvec4 raymarch_light(vec3 ray_dir, vec3 start_pos){\\\\n\\\\n\\\\tfloat step_size = u_StepSize;\\\\n\\\\tvec3 step_vector = ray_dir * step_size;\\\\n\\\\n\\\\tvec3 current_pos = start_pos + step_vector*rand(start_pos.x*ray_dir.xy);\\\\n\\\\tfloat opacity = 0.0;\\\\n\\\\tfor(int i=0; i<MAX_STEPS_COUNT; i++){\\\\n\\\\t\\\\tif(opacity >= 0.99){ break; }\\\\n\\\\n\\\\t\\\\tif( is_inside_bbox(current_pos) ){\\\\n\\\\n\\\\t\\\\t\\\\tfloat density = density_function(current_pos) * u_ShadowDensity;\\\\n\\\\t\\\\t\\\\topacity += density_to_opacity(density, step_size);\\\\n\\\\t\\\\t\\\\tcurrent_pos += step_vector;\\\\n\\\\n\\\\t\\\\t}else{\\\\n\\\\t\\\\t\\\\tbreak;\\\\n\\\\t\\\\t}\\\\n\\\\t}\\\\n\\\\n\\\\tvec3 light_color = vec3(1.0, 1.0, 1.0) * u_Color;\\\\n\\\\tlight_color *= (1.0-opacity);\\\\n\\\\treturn vec4(light_color, 1.0-opacity);\\\\n}\\\\n\\\\nvec4 raymarch_bbox(vec3 start_pos, vec3 ray_dir){\\\\n\\\\n\\\\tfloat step_size = u_StepSize;\\\\n\\\\tvec3 step_vector = ray_dir * step_size;\\\\n\\\\n\\\\tvec3 current_pos = start_pos - step_vector*rand(ray_dir.xz);\\\\n\\\\tfloat opacity = 0.0;\\\\n\\\\tvec3 color = vec3(0.0, 0.0, 0.0);\\\\n\\\\tfloat steps_count = 0.0;\\\\n\\\\tbool was_inside_bbox = false;\\\\n\\\\tfor(int i=0; i<MAX_STEPS_COUNT; i++){\\\\n\\\\t\\\\tif(opacity >= 0.99){ break; }\\\\n\\\\n\\\\t\\\\tif( i==0 || is_inside_bbox(current_pos) ){\\\\n\\\\t\\\\t\\\\twas_inside_bbox = true;\\\\n\\\\n\\\\t\\\\t\\\\tfloat density = density_function(current_pos) * u_VolumeDensity;\\\\n\\\\t\\\\t\\\\topacity += density_to_opacity(density, step_size);\\\\n\\\\n\\\\t\\\\t\\\\tvec4 light_color = vec4(0.0,0.0,0.0,1.0); //vec4(1.0,1.0,1.0,1.0);\\\\n\\\\t\\\\t\\\\t// vec3 directional_light_direction;\\\\n\\\\t\\\\t\\\\t// for ( int l = 0; l < DIR_LIGHTS_COUNT; l++ ) {\\\\n\\\\t\\\\t\\\\t// directional_light_direction = u_DirectionalLightsDirection[ l ];\\\\n\\\\t\\\\t\\\\tlight_color += raymarch_light(-u_DirectionalLightDirection, current_pos);\\\\n\\\\t\\\\t\\\\t// }\\\\n\\\\t\\\\t\\\\tfloat blend = 1.0-opacity;\\\\n\\\\t\\\\t\\\\tcolor = mix( color.xyz, light_color.xyz, vec3(blend, blend, blend) );\\\\n\\\\t\\\\t\\\\tsteps_count += 1.0;\\\\n\\\\n\\\\t\\\\t}else{\\\\n\\\\t\\\\t\\\\tif (was_inside_bbox) { break; }\\\\n\\\\t\\\\t}\\\\n\\\\t\\\\tcurrent_pos += step_vector;\\\\n\\\\t}\\\\n\\\\n\\\\treturn vec4(color, opacity);\\\\n\\\\t// steps_count = steps_count / 5.0;\\\\n\\\\t// return vec4(vec3(steps_count, steps_count, steps_count), 1.0);\\\\n}\\\\n\\\\nvoid main()\\\\t{\\\\n\\\\n\\\\tvec3 eye = normalize(vPw - cameraPosition);\\\\n\\\\t// we can start from the bbox, as we are front facing\\\\n\\\\tvec3 start_pos = vPw;\\\\n\\\\n\\\\tvec4 color = raymarch_bbox(start_pos, eye);\\\\n\\\\tgl_FragColor = color;\\\\n\\\\n}\\\\\\\";const Vk={u_Color:{value:new D.a(1,1,1)},u_VolumeDensity:{value:5},u_ShadowDensity:{value:2},u_StepSize:{value:.01},u_BoundingBoxMin:{value:new p.a(-1,-1,-1)},u_BoundingBoxMax:{value:new p.a(1,1,1)},u_DirectionalLightDirection:{value:new p.a(-1,-1,-1)}};function Hk(t){return class extends t{constructor(){super(...arguments),this.color=ha.COLOR([1,1,1]),this.stepSize=ha.FLOAT(.01),this.density=ha.FLOAT(1),this.shadowDensity=ha.FLOAT(1),this.lightDir=ha.VECTOR3([-1,-1,-1])}}}Hk(ua);class jk{constructor(t){this.node=t}static render_hook(t,e,n,i,s,r,o){if(o){this._object_bbox.setFromObject(o);const t=s;t.uniforms.u_BoundingBoxMin.value.copy(this._object_bbox.min),t.uniforms.u_BoundingBoxMax.value.copy(this._object_bbox.max)}}update_uniforms_from_params(){const t=this.node.material.uniforms;t.u_Color.value.copy(this.node.pv.color),t.u_StepSize.value=this.node.pv.stepSize,t.u_VolumeDensity.value=this.node.pv.density,t.u_ShadowDensity.value=this.node.pv.shadowDensity;const e=t.u_DirectionalLightDirection.value,n=this.node.pv.lightDir;e&&(e.x=n.x,e.y=n.y,e.z=n.z)}}jk._object_bbox=new Ry.a;class Wk extends(Hk(ua)){}const qk=new Wk;class Xk extends $D{constructor(){super(...arguments),this.paramsConfig=qk,this._volume_controller=new jk(this)}static type(){return\\\\\\\"volume\\\\\\\"}createMaterial(){const t=new F({vertexShader:Uk,fragmentShader:Gk,side:w.H,transparent:!0,depthTest:!0,uniforms:I.clone(Vk)});return yr.add_user_data_render_hook(t,jk.render_hook.bind(jk)),t}initializeNode(){}async cook(){this._volume_controller.update_uniforms_from_params(),this.setMaterial(this.material)}}class Yk extends(aB(Hk(ua))){}const $k=new Yk;class Jk extends lB{constructor(){super(...arguments),this.paramsConfig=$k,this._volume_controller=new jk(this)}static type(){return\\\\\\\"volumeBuilder\\\\\\\"}usedAssembler(){return jn.GL_VOLUME}_create_assembler_controller(){return li.assemblersRegister.assembler(this,this.usedAssembler())}initializeNode(){}async cook(){this._volume_controller.update_uniforms_from_params(),this.compileIfRequired(),this.setMaterial(this.material)}}class Zk extends aa{static context(){return ts.MAT}cook(){this.cookController.endCook()}}class Kk extends Zk{}class Qk extends Kk{constructor(){super(...arguments),this._children_controller_context=ts.ANIM}static type(){return es.ANIM}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class tU extends Kk{constructor(){super(...arguments),this._children_controller_context=ts.COP}static type(){return es.COP}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class eU extends Kk{constructor(){super(...arguments),this._children_controller_context=ts.EVENT}static type(){return es.EVENT}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class nU extends Kk{constructor(){super(...arguments),this._children_controller_context=ts.MAT}static type(){return es.MAT}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class iU extends Zk{constructor(){super(...arguments),this.paramsConfig=new ef,this.effectsComposerController=new nf(this),this.displayNodeController=new Fm(this,this.effectsComposerController.displayNodeControllerCallbacks()),this._children_controller_context=ts.POST}static type(){return es.POST}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class sU extends Kk{constructor(){super(...arguments),this._children_controller_context=ts.ROP}static type(){return es.ROP}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}var rU=n(87);const oU=\\\\\\\"parent object\\\\\\\",aU=[oU,oU,oU,oU];var lU;!function(t){t[t.MANAGER=0]=\\\\\\\"MANAGER\\\\\\\",t[t.CAMERA=2]=\\\\\\\"CAMERA\\\\\\\",t[t.LIGHT=3]=\\\\\\\"LIGHT\\\\\\\"}(lU||(lU={}));class cU extends aa{constructor(){super(...arguments),this.renderOrder=lU.MANAGER,this._children_group=this._create_children_group(),this._attachableToHierarchy=!0,this._used_in_scene=!0}static context(){return ts.OBJ}static displayedInputNames(){return aU}_create_children_group(){const t=new Fn.a;return t.matrixAutoUpdate=!1,t}attachableToHierarchy(){return this._attachableToHierarchy}usedInScene(){return this._used_in_scene}addObjectToParent(t){this.attachableToHierarchy()&&t.add(this.object)}removeObjectFromParent(){if(this.attachableToHierarchy()){const t=this.object.parent;t&&t.remove(this.object)}}initializeBaseNode(){this._object=this._create_object_with_attributes(),this.nameController.add_post_set_fullPath_hook(this.set_object_name.bind(this)),this.set_object_name()}get children_group(){return this._children_group}get object(){return this._object}_create_object_with_attributes(){const t=this.createObject();return t.node=this,t.add(this._children_group),t}set_object_name(){this._object&&(this._object.name=this.path(),this._children_group.name=`${this.path()}:parented_outputs`)}createObject(){const t=new Q.a;return t.matrixAutoUpdate=!1,t}isDisplayNodeCooking(){if(this.displayNodeController){const t=this.displayNodeController.displayNode();if(t)return t.cookController.isCooking()}return!1}isDisplayed(){var t,e;return(null===(e=null===(t=this.flags)||void 0===t?void 0:t.display)||void 0===e?void 0:e.active())||!1}}class hU extends cU{constructor(){super(...arguments),this.flags=new Di(this),this.renderOrder=lU.LIGHT,this._color_with_intensity=new D.a(0),this._used_in_scene=!0,this._cook_main_without_inputs_when_dirty_bound=this._cook_main_without_inputs_when_dirty.bind(this)}get light(){return this._light}initializeBaseNode(){super.initializeBaseNode(),this._light=this.createLight(),this.object.add(this._light),this.flags.display.onUpdate((()=>{this._updateLightAttachment()})),this.dirtyController.addPostDirtyHook(\\\\\\\"_cook_main_without_inputs_when_dirty\\\\\\\",this._cook_main_without_inputs_when_dirty_bound)}async _cook_main_without_inputs_when_dirty(){await this.cookController.cookMainWithoutInputs()}set_object_name(){super.set_object_name(),this._light&&(this._light.name=`${this.path()}:light`)}_updateLightAttachment(){this.flags.display.active()?(this.object.add(this.light),this._cook_main_without_inputs_when_dirty()):this.object.remove(this.light)}cook(){this.updateLightParams(),this.updateShadowParams(),this.cookController.endCook()}updateLightParams(){}updateShadowParams(){}}const uU=new class extends ua{constructor(){super(...arguments),this.color=ha.COLOR([1,1,1],{conversion:lo.SRGB_TO_LINEAR}),this.intensity=ha.FLOAT(1)}};class dU extends hU{constructor(){super(...arguments),this.paramsConfig=uU}static type(){return\\\\\\\"ambientLight\\\\\\\"}createLight(){const t=new rU.a;return t.matrixAutoUpdate=!1,t}initializeNode(){this.io.inputs.setCount(0,1)}updateLightParams(){this.light.color=this.pv.color,this.light.intensity=this.pv.intensity}}class pU extends cv.a{constructor(t,e,n=10,i=10){super(t,e),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){const e=super.toJSON(t);return e.object.width=this.width,e.object.height=this.height,e}}pU.prototype.isRectAreaLight=!0;var _U,mU=n(61);class fU{static init(){const t=[1,0,0,2e-5,1,0,0,503905e-9,1,0,0,.00201562,1,0,0,.00453516,1,0,0,.00806253,1,0,0,.0125978,1,0,0,.018141,1,0,0,.0246924,1,0,0,.0322525,1,0,0,.0408213,1,0,0,.0503999,1,0,0,.0609894,1,0,0,.0725906,1,0,0,.0852058,1,0,0,.0988363,1,0,0,.113484,1,0,0,.129153,1,0,0,.145839,1,0,0,.163548,1,0,0,.182266,1,0,0,.201942,1,0,0,.222314,1,0,0,.241906,1,0,0,.262314,1,0,0,.285754,1,0,0,.310159,1,0,0,.335426,1,0,0,.361341,1,0,0,.387445,1,0,0,.412784,1,0,0,.438197,1,0,0,.466966,1,0,0,.49559,1,0,0,.523448,1,0,0,.549938,1,0,0,.57979,1,0,0,.608746,1,0,0,.636185,1,0,0,.664748,1,0,0,.69313,1,0,0,.71966,1,0,0,.747662,1,0,0,.774023,1,0,0,.799775,1,0,0,.825274,1,0,0,.849156,1,0,0,.873248,1,0,0,.89532,1,0,0,.917565,1,0,0,.937863,1,0,0,.958139,1,0,0,.976563,1,0,0,.994658,1,0,0,1.0112,1,0,0,1.02712,1,0,0,1.04189,1,0,0,1.05568,1,0,0,1.06877,1,0,0,1.08058,1,0,0,1.09194,1,0,0,1.10191,1,0,0,1.11161,1,0,0,1.1199,1,0,0,1.12813,.999547,-4.48815e-7,.0224417,199902e-10,.999495,-113079e-10,.0224406,503651e-9,.999496,-452317e-10,.0224406,.00201461,.999496,-101772e-9,.0224406,.00453287,.999495,-180928e-9,.0224406,.00805845,.999497,-282702e-9,.0224406,.0125914,.999496,-407096e-9,.0224406,.0181319,.999498,-554114e-9,.0224406,.02468,.999499,-723768e-9,.0224406,.0322363,.999495,-916058e-9,.0224405,.0408009,.999499,-.00113101,.0224408,.050375,.999494,-.00136863,.0224405,.0609586,.999489,-.00162896,.0224401,.0725537,.999489,-.00191201,.0224414,.0851619,.999498,-.00221787,.0224413,.0987867,.999492,-.00254642,.0224409,.113426,.999507,-.00289779,.0224417,.129088,.999494,-.0032716,.0224386,.145767,.999546,-.0036673,.0224424,.163472,.999543,-.00408166,.0224387,.182182,.999499,-.00450056,.0224338,.201843,.999503,-.00483661,.0224203,.222198,.999546,-.00452928,.022315,.241714,.999508,-.00587403,.0224329,.262184,.999509,-.00638806,.0224271,.285609,.999501,-.00691028,.0224166,.309998,.999539,-.00741979,.0223989,.335262,.999454,-.00786282,.0223675,.361154,.999529,-.00811928,.0222828,.387224,.999503,-.00799941,.0221063,.41252,.999561,-.00952753,.0223057,.438006,.999557,-.0099134,.0222065,.466735,.999541,-.0100935,.0220402,.495332,.999562,-.00996821,.0218067,.523197,.999556,-.0105031,.0217096,.550223,.999561,-.0114191,.0217215,.579498,.999588,-.0111818,.0213357,.608416,.999633,-.0107725,.0208689,.635965,.999527,-.0121671,.0210149,.664476,.999508,-.0116005,.020431,.692786,.999568,-.0115604,.0199791,.719709,.999671,-.0121117,.0197415,.74737,.999688,-.0110769,.0188846,.773692,.99962,-.0122368,.0188452,.799534,.999823,-.0110325,.0178001,.825046,.999599,-.0114923,.0174221,.849075,.999619,-.0105923,.0164345,.872999,.999613,-.0105988,.0158227,.895371,.99964,-.00979861,.0148131,.917364,.99977,-.00967238,.0140721,.938002,.999726,-.00869175,.0129543,.957917,.99973,-.00866872,.0122329,.976557,.999773,-.00731956,.0108958,.994459,.999811,-.00756027,.0102715,1.01118,.999862,-.00583732,.00878781,1.02701,.999835,-.00631438,.00827529,1.04186,.999871,-.00450785,.00674583,1.05569,.999867,-.00486079,.00621041,1.06861,.999939,-.00322072,.00478301,1.08064,.999918,-.00318199,.00406395,1.09181,1.00003,-.00193348,.00280682,1.10207,.999928,-.00153729,.00198741,1.11152,.999933,-623666e-9,917714e-9,1.12009,1,-102387e-11,9.07581e-7,1.12813,.997866,-8.96716e-7,.0448334,199584e-10,.997987,-225945e-10,.0448389,502891e-9,.997987,-903781e-10,.0448388,.00201156,.997985,-203351e-9,.0448388,.00452602,.997986,-361514e-9,.0448388,.00804629,.997987,-56487e-8,.0448389,.0125724,.997988,-813423e-9,.0448389,.0181045,.997984,-.00110718,.0448387,.0246427,.997985,-.00144616,.0448388,.0321875,.997987,-.00183038,.044839,.0407392,.997983,-.00225987,.0448387,.0502986,.997991,-.00273467,.0448389,.0608667,.997984,-.00325481,.0448384,.0724444,.998002,-.00382043,.044839,.0850348,.997997,-.00443145,.0448396,.0986372,.998007,-.00508796,.0448397,.113255,.998008,-.00578985,.04484,.128891,.998003,-.00653683,.0448384,.145548,.997983,-.00732713,.0448358,.163221,.997985,-.00815454,.0448358,.181899,.998005,-.00898985,.0448286,.201533,.998026,-.00964404,.0447934,.221821,.998055,-.00922677,.044611,.241282,.99804,-.0117361,.0448245,.261791,.998048,-.0127628,.0448159,.285181,.998088,-.0138055,.0447996,.30954,.998058,-.0148206,.0447669,.334751,.998099,-.0156998,.044697,.36061,.998116,-.0161976,.0445122,.386603,.998195,-.015945,.0441711,.411844,.998168,-.0183947,.0444255,.43773,.998184,-.0197913,.0443809,.466009,.998251,-.0201426,.0440689,.494574,.998305,-.0198847,.0435632,.522405,.998273,-.0210577,.043414,.549967,.998254,-.0227901,.0433943,.578655,.998349,-.0223108,.0426529,.60758,.99843,-.0223088,.042,.635524,.998373,-.0241141,.0418987,.663621,.998425,-.0231446,.0408118,.691906,.998504,-.0233684,.0400565,.719339,.998443,-.0241652,.0394634,.74643,.99848,-.0228715,.0380002,.773086,.998569,-.023519,.0372322,.798988,.998619,-.0223108,.0356468,.824249,.998594,-.0223105,.034523,.848808,.998622,-.0213426,.0328887,.87227,.998669,-.0207912,.0314374,.895157,.998705,-.0198416,.0296925,.916769,.998786,-.0189168,.0279634,.937773,.998888,-.0178811,.0261597,.957431,.99906,-.0166845,.0242159,.976495,.999038,-.0155464,.0222638,.994169,.999237,-.0141349,.0201967,1.01112,.999378,-.0129324,.0181744,1.02692,.999433,-.0113192,.0159898,1.04174,.999439,-.0101244,.0140385,1.05559,.999614,-.00837456,.0117826,1.06852,.999722,-.00721769,.00983745,1.08069,.999817,-.00554067,.00769002,1.09176,.99983,-.00426961,.005782,1.10211,.999964,-.00273904,.00374503,1.11152,1.00001,-.00136739,.00187176,1.12031,.999946,393227e-10,-28919e-9,1.12804,.995847,-13435e-10,.0671785,19916e-9,.995464,-338387e-10,.0671527,501622e-9,.99547,-135355e-9,.0671531,.00200649,.995471,-30455e-8,.0671532,.00451461,.99547,-541423e-9,.0671531,.008026,.995471,-84598e-8,.0671531,.0125407,.99547,-.00121823,.0671531,.0180589,.99547,-.00165817,.0671531,.0245806,.995463,-.00216583,.0671526,.0321062,.995468,-.00274127,.0671527,.0406366,.995474,-.00338447,.0671534,.0501717,.995473,-.00409554,.0671533,.0607131,.995478,-.00487451,.0671531,.0722618,.995476,-.00572148,.0671532,.0848191,.995477,-.00663658,.0671539,.0983882,.995498,-.00761986,.0671541,.112972,.995509,-.00867094,.0671542,.128568,.995509,-.00978951,.0671531,.145183,.995503,-.0109725,.0671491,.162808,.995501,-.012211,.0671465,.181441,.99553,-.0134565,.0671371,.201015,.99555,-.014391,.0670831,.221206,.99558,-.014351,.0668883,.240813,.995577,-.0173997,.0671055,.261257,.995602,-.0191111,.0671178,.284467,.995623,-.0206705,.0670946,.308765,.995658,-.022184,.0670472,.333905,.995705,-.0234832,.0669417,.359677,.995719,-.0241933,.0666714,.385554,.995786,-.0243539,.066266,.410951,.995887,-.0271866,.0664367,.437163,.995944,-.0296012,.0664931,.464842,.996004,-.0301045,.0660105,.49332,.996128,-.0298311,.0652694,.521131,.996253,-.0316426,.0650739,.549167,.996244,-.0339043,.0649433,.57737,.996309,-.033329,.0638926,.606073,.996417,-.0338935,.0630849,.634527,.996372,-.0353104,.0625083,.66256,.996542,-.0348942,.0611986,.690516,.996568,-.0351614,.060069,.718317,.996711,-.0354317,.0588522,.74528,.996671,-.0349513,.0571902,.772061,.996865,-.0345622,.0555321,.798089,.996802,-.0342566,.0537816,.823178,.996992,-.0330862,.0516095,.847949,.996944,-.0324666,.0495537,.871431,.997146,-.0309544,.0470302,.894357,.997189,-.0299372,.0446043,.916142,.997471,-.0281389,.0418812,.937193,.997515,-.0268702,.0391823,.957,.997812,-.0247166,.0361338,.975936,.998027,-.0233525,.0333945,.99391,.998233,-.0209839,.0301917,1.01075,.998481,-.0194309,.027271,1.02669,.998859,-.0169728,.0240162,1.04173,.99894,-.0152322,.0210517,1.05551,.999132,-.0127497,.0178632,1.06856,.999369,-.0108282,.014787,1.08054,.999549,-.00845886,.0116185,1.09185,.999805,-.0063937,.00867209,1.10207,.99985,-.00414582,.00566823,1.1117,.999912,-.00207443,.00277562,1.12022,1.00001,870226e-10,-53766e-9,1.12832,.991943,-178672e-11,.0893382,198384e-10,.991952,-450183e-10,.089339,499849e-9,.991956,-180074e-9,.0893394,.0019994,.991955,-405167e-9,.0893393,.00449867,.991953,-720298e-9,.0893391,.00799764,.991955,-.00112548,.0893393,.0124964,.991957,-.0016207,.0893395,.0179951,.991958,-.00220601,.0893396,.0244939,.991947,-.00288137,.0893385,.0319929,.991962,-.00364693,.0893399,.0404933,.991965,-.00450264,.0893399,.049995,.99198,-.00544862,.0893411,.0604995,.99197,-.00648491,.0893397,.0720074,.991976,-.00761164,.089341,.0845207,.99198,-.00882891,.0893405,.0980413,.991982,-.0101367,.0893396,.112571,.992008,-.011535,.0893415,.128115,.992026,-.0130228,.0893414,.144672,.992064,-.0145966,.0893418,.162241,.992041,-.0162421,.0893359,.180801,.992086,-.0178888,.0893214,.200302,.992157,-.0190368,.0892401,.220332,.992181,-.0195584,.0890525,.240144,.992175,-.0227257,.0892153,.260728,.99221,-.0254195,.089304,.283473,.99222,-.0274883,.0892703,.307673,.992317,-.0294905,.0892027,.332729,.992374,-.0311861,.0890577,.358387,.992505,-.0320656,.0886994,.384102,.992568,-.0329715,.0883198,.409767,.992675,-.036006,.0883602,.436145,.992746,-.0392897,.0884591,.463217,.992873,-.0399337,.0878287,.491557,.992934,-.040231,.0870108,.519516,.993091,-.0422013,.0865857,.547741,.993259,-.0443503,.0861937,.575792,.993455,-.0446368,.0851187,.604233,.993497,-.0454299,.0840576,.632925,.993694,-.0463296,.0829671,.660985,.993718,-.0470619,.0817185,.688714,.993973,-.0468838,.0800294,.716743,.994207,-.046705,.0781286,.74377,.994168,-.0469698,.0763337,.77042,.9945,-.0456816,.0738184,.796659,.994356,-.0455518,.0715545,.821868,.994747,-.0439488,.0686085,.846572,.994937,-.0430056,.065869,.870435,.995142,-.0413414,.0626446,.893272,.995451,-.0396521,.05929,.915376,.995445,-.0378453,.0558503,.936196,.995967,-.0355219,.0520949,.956376,.996094,-.0335146,.048377,.975327,.996622,-.030682,.0442575,.993471,.996938,-.0285504,.0404693,1.01052,.997383,-.0253399,.0360903,1.02637,.997714,-.0231651,.0322176,1.04139,.998249,-.0198138,.0278433,1.05542,.998596,-.0174337,.0238759,1.06846,.998946,-.0141349,.0195944,1.08056,.99928,-.0115603,.0156279,1.09181,.999507,-.00839065,.0114607,1.10213,.999697,-.005666,.00763325,1.11169,.999869,-.00269902,.00364946,1.12042,1.00001,623836e-10,-319288e-10,1.12832,.987221,-222675e-11,.111332,197456e-10,.98739,-561116e-10,.111351,497563e-9,.987448,-224453e-9,.111357,.00199031,.987441,-505019e-9,.111357,.0044782,.987442,-897816e-9,.111357,.00796129,.987442,-.00140284,.111357,.0124396,.987444,-.00202012,.111357,.0179132,.987442,-.00274964,.111357,.0243824,.987446,-.00359147,.111357,.0318474,.987435,-.00454562,.111356,.0403086,.987461,-.00561225,.111358,.0497678,.987458,-.00679125,.111358,.0602239,.987443,-.0080828,.111356,.0716792,.987476,-.0094872,.111358,.0841364,.98749,-.0110044,.111361,.097597,.987508,-.0126344,.111362,.112062,.987494,-.0143767,.111357,.127533,.987526,-.0162307,.111359,.144015,.987558,-.0181912,.111361,.161502,.987602,-.0202393,.111355,.179979,.987692,-.022273,.111346,.199386,.987702,-.0235306,.111215,.219183,.987789,-.0247628,.111061,.239202,.987776,-.0280668,.111171,.259957,.987856,-.0316751,.111327,.282198,.987912,-.0342468,.111282,.306294,.988,-.0367205,.111198,.331219,.988055,-.0387766,.110994,.356708,.988241,-.0397722,.110547,.382234,.988399,-.0416076,.110198,.408227,.988539,-.0448192,.110137,.434662,.988661,-.0483793,.110143,.461442,.988967,-.0495895,.109453,.489318,.989073,-.0506797,.108628,.517516,.989274,-.0526953,.108003,.545844,.989528,-.054578,.107255,.573823,.989709,-.0561503,.106294,.601944,.989991,-.056866,.104896,.630855,.990392,-.0572914,.103336,.658925,.990374,-.0586224,.10189,.686661,.990747,-.0584764,.099783,.714548,.991041,-.0582662,.0974309,.74186,.991236,-.0584118,.0951678,.768422,.991585,-.0573055,.0921581,.794817,.991984,-.0564241,.0891167,.820336,.9921,-.0553608,.085805,.84493,.992749,-.0533816,.0820354,.868961,.99288,-.0518661,.0782181,.891931,.993511,-.0492492,.0738935,.914186,.993617,-.0471956,.0696402,.93532,.99411,-.044216,.0649659,.95543,.994595,-.0416654,.0603177,.974685,.994976,-.0384314,.0553493,.992807,.995579,-.0353491,.0503942,1.00996,.996069,-.0319787,.0452123,1.02606,.996718,-.028472,.0400112,1.04114,.997173,-.0250789,.0349456,1.05517,.997818,-.0213326,.029653,1.0683,.998318,-.0178509,.024549,1.0805,.998853,-.0141118,.0194197,1.09177,.999218,-.0105914,.0143869,1.1022,.999594,-.00693474,.00943517,1.11175,.99975,-.00340478,.00464051,1.12056,1.00001,109172e-9,-112821e-9,1.12853,.983383,-266524e-11,.133358,196534e-10,.981942,-671009e-10,.133162,494804e-9,.981946,-268405e-9,.133163,.00197923,.981944,-603912e-9,.133163,.00445326,.981941,-.00107362,.133162,.00791693,.981946,-.00167755,.133163,.0123703,.981944,-.00241569,.133162,.0178135,.981945,-.00328807,.133163,.0242466,.981945,-.00429472,.133162,.03167,.981955,-.00543573,.133164,.0400846,.981951,-.00671105,.133163,.0494901,.981968,-.00812092,.133165,.0598886,.981979,-.00966541,.133166,.0712811,.981996,-.0113446,.133168,.083669,.982014,-.0131585,.133169,.0970533,.982011,-.0151073,.133167,.111438,.982062,-.0171906,.133172,.126826,.9821,-.0194067,.133175,.143215,.982149,-.0217502,.133176,.160609,.982163,-.0241945,.133173,.178981,.982247,-.0265907,.133148,.198249,.982291,-.027916,.132974,.217795,.982396,-.0299663,.132868,.238042,.982456,-.0334544,.132934,.258901,.982499,-.0378636,.133137,.280639,.982617,-.0409274,.133085,.304604,.98274,-.0438523,.132985,.329376,.982944,-.0462288,.132728,.354697,.98308,-.0475995,.132228,.380102,.983391,-.0501901,.131924,.406256,.983514,-.0535899,.131737,.432735,.98373,-.0571858,.131567,.459359,.984056,-.0592353,.130932,.486637,.984234,-.0610488,.130092,.51509,.984748,-.0630758,.12923,.543461,.985073,-.0647398,.128174,.571376,.985195,-.0671941,.127133,.599414,.985734,-.0681345,.125576,.628134,.986241,-.0686089,.123639,.656399,.986356,-.0698511,.121834,.684258,.986894,-.0700931,.119454,.711818,.987382,-.0698321,.116718,.739511,.988109,-.0693975,.113699,.766267,.988363,-.0689584,.110454,.792456,.989112,-.0672353,.106602,.81813,.989241,-.0662034,.10267,.842889,.990333,-.0638938,.0981381,.867204,.990591,-.0618534,.0935388,.89038,.991106,-.0593117,.088553,.912576,.991919,-.0562676,.0832187,.934118,.992111,-.0534085,.0778302,.954254,.992997,-.0495459,.0720453,.973722,.993317,-.0463707,.0663458,.991949,.994133,-.0421245,.0601883,1.00936,.994705,-.0384977,.0542501,1.02559,.995495,-.0340956,.0479862,1.04083,.996206,-.030105,.041887,1.05497,.996971,-.0256095,.0355355,1.06824,.997796,-.0213932,.0293655,1.08056,.998272,-.0169612,.0232926,1.09182,.998857,-.0126756,.0172786,1.10219,.99939,-.00832486,.0113156,1.11192,.999752,-.00410826,.00557892,1.12075,1,150957e-9,-119101e-9,1.12885,.975169,-309397e-11,.154669,195073e-10,.975439,-779608e-10,.154712,491534e-9,.975464,-311847e-9,.154716,.00196617,.975464,-701656e-9,.154716,.00442387,.975462,-.0012474,.154715,.0078647,.975461,-.00194906,.154715,.0122886,.975464,-.00280667,.154715,.0176959,.975468,-.00382025,.154716,.0240867,.975471,-.00498985,.154716,.0314612,.975472,-.00631541,.154717,.0398199,.975486,-.00779719,.154718,.0491639,.975489,-.00943505,.154718,.0594932,.975509,-.0112295,.154721,.0708113,.97554,-.0131802,.154724,.0831176,.975557,-.0152876,.154726,.096415,.975585,-.0175512,.154728,.110705,.975605,-.0199713,.154729,.125992,.975645,-.0225447,.154729,.142272,.975711,-.0252649,.154735,.159549,.975788,-.0280986,.154736,.177805,.975872,-.0308232,.154704,.196911,.975968,-.0324841,.154525,.216324,.976063,-.0351281,.154432,.236628,.976157,-.0388618,.15446,.257539,.976204,-.0437704,.154665,.278975,.976358,-.047514,.154652,.302606,.976571,-.0508638,.154535,.327204,.976725,-.0534995,.154221,.352276,.977013,-.0555547,.153737,.377696,.977294,-.0586728,.153403,.403855,.977602,-.0622715,.15312,.430333,.977932,-.0658166,.152755,.456855,.978241,-.0689877,.152233,.483668,.978602,-.0712805,.15132,.512097,.979234,-.0732775,.150235,.540455,.97977,-.075163,.148978,.568486,.979995,-.0778026,.147755,.596524,.98078,-.0791854,.146019,.624825,.981628,-.0799666,.143906,.653403,.982067,-.0808532,.141561,.681445,.98271,-.0816024,.139025,.708918,.983734,-.0812511,.135764,.736594,.98431,-.0806201,.132152,.763576,.985071,-.0801605,.12846,.789797,.98618,-.0784208,.124084,.815804,.986886,-.0766643,.1193,.840869,.987485,-.0747744,.114236,.864952,.988431,-.0716701,.108654,.888431,.988886,-.0691609,.102994,.910963,.990024,-.0654048,.0967278,.932629,.990401,-.0619765,.090384,.95313,.991093,-.0579296,.0837885,.972587,.992018,-.0536576,.0770171,.991184,.992536,-.0493719,.0701486,1.00863,.993421,-.0444813,.062953,1.02494,.993928,-.040008,.0560455,1.04017,.994994,-.0347982,.04856,1.05463,.995866,-.0301017,.0416152,1.06807,.996916,-.0248225,.0342597,1.08039,.997766,-.0199229,.0271668,1.09177,.998479,-.0147422,.0201387,1.10235,.99921,-.00980173,.0131944,1.11206,.999652,-.0047426,.00640712,1.12104,.999998,891673e-10,-10379e-8,1.12906,.967868,-351885e-11,.175947,193569e-10,.968001,-886733e-10,.175972,487782e-9,.96801,-354697e-9,.175973,.00195115,.968012,-798063e-9,.175974,.00439006,.968011,-.00141879,.175973,.00780461,.968011,-.00221686,.175973,.0121948,.968016,-.00319231,.175974,.0175607,.968019,-.00434515,.175974,.0239027,.968018,-.00567538,.175974,.0312208,.968033,-.00718308,.175977,.0395158,.968049,-.00886836,.175979,.0487885,.968047,-.0107312,.175978,.0590394,.968072,-.0127719,.175981,.0702705,.968108,-.0149905,.175986,.0824836,.968112,-.0173866,.175985,.0956783,.968173,-.0199611,.175993,.109862,.96827,-.0227128,.176008,.125033,.968292,-.025639,.17601,.141193,.968339,-.0287299,.176007,.158336,.968389,-.0319399,.176001,.176441,.968501,-.034941,.175962,.195359,.968646,-.0370812,.175793,.214686,.968789,-.0402329,.175708,.234973,.96886,-.0442601,.1757,.255871,.969013,-.049398,.175876,.277238,.969242,-.0539932,.17594,.300326,.969419,-.0577299,.175781,.324702,.969763,-.0605643,.175432,.349527,.970093,-.0634488,.174992,.374976,.970361,-.0670589,.174611,.401097,.970825,-.0708246,.174226,.427496,.971214,-.0742871,.173684,.453858,.971622,-.0782608,.173186,.480637,.972175,-.0813151,.172288,.508655,.972944,-.0832678,.170979,.536973,.973595,-.0855964,.169573,.565138,.974345,-.0882163,.168152,.593222,.975233,-.0901671,.166314,.621201,.976239,-.0912111,.163931,.649919,.977289,-.0916959,.161106,.678011,.978076,-.0927061,.158272,.705717,.979533,-.0925562,.15475,.733228,.980335,-.0918159,.150638,.760454,.981808,-.0908508,.146201,.786918,.983061,-.0896172,.141386,.812953,.984148,-.0871588,.135837,.838281,.985047,-.0850624,.130135,.862594,.986219,-.0818541,.123882,.88633,.987043,-.0784523,.117126,.908952,.988107,-.0749601,.110341,.930744,.988955,-.0703548,.102885,.951728,.989426,-.0662798,.0954167,.971166,.990421,-.0610834,.0876331,.989984,.991032,-.0562936,.0797785,1.00765,.992041,-.0508154,.0718166,1.02434,.992794,-.0454045,.0637125,1.03976,.993691,-.0398194,.0555338,1.05418,.994778,-.0341482,.0473388,1.06772,.995915,-.028428,.0391016,1.08028,.997109,-.022642,.0309953,1.09185,.998095,-.0168738,.0230288,1.10247,.998985,-.0111274,.0150722,1.11229,.999581,-.00543881,.00740605,1.12131,1.00003,162239e-9,-105549e-9,1.12946,.959505,-393734e-11,.196876,191893e-10,.959599,-992157e-10,.196895,483544e-9,.959641,-396868e-9,.196903,.0019342,.959599,-892948e-9,.196895,.00435193,.959603,-.00158747,.196896,.0077368,.959604,-.00248042,.196896,.0120888,.959605,-.00357184,.196896,.0174082,.959605,-.00486169,.196896,.0236949,.959613,-.00635008,.196897,.0309497,.959619,-.00803696,.196898,.0391725,.959636,-.00992255,.196901,.0483649,.959634,-.0120067,.1969,.0585266,.959675,-.0142898,.196906,.0696609,.959712,-.0167717,.196911,.0817678,.959752,-.0194524,.196918,.0948494,.959807,-.0223321,.196925,.10891,.959828,-.0254091,.196924,.123947,.959906,-.0286815,.196934,.139968,.960005,-.0321371,.196944,.156968,.960071,-.0357114,.196936,.17491,.960237,-.0389064,.196882,.193597,.960367,-.041623,.196731,.21285,.960562,-.0452655,.196654,.233075,.960735,-.0496207,.196643,.253941,.960913,-.0549379,.196774,.275278,.961121,-.0603414,.196893,.297733,.96139,-.0644244,.196717,.321877,.961818,-.067556,.196314,.346476,.962175,-.0712709,.195917,.371907,.96255,-.0752848,.1955,.397916,.963164,-.0792073,.195026,.424229,.963782,-.0828225,.194424,.450637,.964306,-.0873119,.193831,.477288,.964923,-.0911051,.192973,.504716,.966048,-.093251,.19151,.533053,.967024,-.0958983,.190013,.561366,.968038,-.09835,.188253,.589464,.969152,-.100754,.186257,.617433,.970557,-.102239,.183775,.645801,.972104,-.102767,.180645,.674278,.973203,-.103492,.177242,.702004,.975123,-.103793,.17345,.729529,.97641,-.102839,.168886,.756712,.978313,-.101687,.163892,.783801,.980036,-.100314,.158439,.809671,.981339,-.097836,.152211,.835402,.982794,-.0950006,.145679,.860081,.984123,-.0920994,.138949,.883757,.984918,-.0878641,.131283,.90685,.985999,-.083939,.123464,.928786,.987151,-.0791234,.115324,.94983,.987827,-.0739332,.106854,.96962,.988806,-.0688088,.0982691,.98861,.989588,-.0628962,.0893456,1.00667,.990438,-.0573146,.0805392,1.02344,.991506,-.0509433,.0713725,1.03933,.992492,-.0448724,.0623732,1.05378,.993663,-.0383497,.0530838,1.06747,.994956,-.0319593,.0439512,1.08007,.99634,-.025401,.0347803,1.09182,.99761,-.0189687,.0257954,1.1025,.99863,-.0124441,.0169893,1.11247,.99947,-.00614003,.00829498,1.12151,1.00008,216624e-9,-146107e-9,1.12993,.950129,-434955e-11,.217413,190081e-10,.950264,-10957e-8,.217444,47884e-8,.9503,-438299e-9,.217451,.00191543,.950246,-986124e-9,.21744,.00430951,.950246,-.00175311,.21744,.00766137,.950245,-.00273923,.21744,.011971,.950253,-.00394453,.217441,.0172385,.950258,-.00536897,.217442,.0234641,.950267,-.00701262,.217444,.030648,.950277,-.00887551,.217446,.038791,.950284,-.0109576,.217446,.0478931,.950312,-.0132591,.217451,.0579568,.950334,-.01578,.217454,.0689821,.950378,-.0185204,.217462,.0809714,.950417,-.0214803,.217467,.0939265,.950488,-.0246594,.217479,.10785,.950534,-.0280565,.217483,.122743,.950633,-.0316685,.217498,.138611,.950698,-.0354787,.217499,.155442,.950844,-.0394003,.217507,.173208,.950999,-.0426812,.217419,.191605,.951221,-.0461302,.217317,.21084,.951412,-.0502131,.217238,.230945,.951623,-.0549183,.21722,.251745,.951867,-.0604493,.217306,.273001,.952069,-.0665189,.217466,.294874,.952459,-.0709179,.217266,.318732,.952996,-.0746112,.216891,.34318,.953425,-.0789252,.216503,.36849,.953885,-.0833293,.216042,.394373,.954617,-.087371,.215469,.420505,.955429,-.0914054,.214802,.446907,.956068,-.0961671,.214146,.473522,.957094,-.10048,.213286,.50052,.958372,-.103248,.211796,.528715,.959654,-.106033,.21016,.557065,.961305,-.108384,.208149,.585286,.962785,-.111122,.206024,.613334,.964848,-.112981,.203442,.641334,.966498,-.113717,.19996,.669955,.968678,-.114121,.196105,.698094,.970489,-.114524,.191906,.725643,.972903,-.113792,.186963,.752856,.974701,-.112406,.181343,.780013,.976718,-.110685,.175185,.806268,.978905,-.108468,.168535,.832073,.980267,-.105061,.161106,.857149,.981967,-.101675,.153387,.881145,.983063,-.0974492,.145199,.904255,.984432,-.0925815,.136527,.926686,.985734,-.0877983,.127584,.947901,.986228,-.081884,.118125,.968111,.98719,-.0761208,.108594,.98719,.988228,-.0698196,.0989996,1.00559,.989046,-.0632739,.0890074,1.02246,.990242,-.056522,.0790832,1.03841,.991252,-.0495272,.0689182,1.05347,.992542,-.0425373,.0588592,1.06724,.994096,-.0353198,.0486833,1.08009,.995593,-.028235,.0385977,1.09177,.99711,-.0209511,.0286457,1.10274,.998263,-.0139289,.0188497,1.11262,.999254,-.0067359,.009208,1.12191,.999967,141846e-9,-657764e-10,1.13024,.935608,-474692e-11,.236466,187817e-10,.93996,-11971e-8,.237568,473646e-9,.939959,-478845e-9,.237567,.0018946,.939954,-.0010774,.237566,.00426284,.939956,-.00191538,.237566,.00757842,.939954,-.00299277,.237566,.0118413,.93996,-.00430961,.237567,.0170518,.939969,-.00586589,.237569,.02321,.939982,-.00766166,.237572,.0303164,.939987,-.00969686,.237572,.0383711,.939997,-.0119715,.237574,.0473751,.940031,-.0144858,.237581,.0573298,.940073,-.0172399,.237589,.0682366,.94012,-.0202335,.237598,.080097,.940162,-.0234663,.237604,.0929116,.940237,-.0269387,.237615,.106686,.940328,-.0306489,.237632,.121421,.940419,-.0345917,.237645,.137115,.940522,-.0387481,.237654,.153766,.940702,-.0429906,.237661,.17133,.940871,-.0465089,.237561,.189502,.941103,-.050531,.23748,.208616,.941369,-.0550657,.237423,.228595,.941641,-.0601337,.237399,.249287,.941903,-.0658804,.237443,.270467,.942224,-.0722674,.237597,.292024,.942633,-.0771788,.237419,.315272,.943172,-.0815623,.237068,.339579,.943691,-.0863973,.236682,.364717,.944382,-.0911536,.236213,.390435,.945392,-.0952967,.235562,.416425,.946185,-.0998948,.234832,.442772,.947212,-.104796,.234114,.469347,.948778,-.10928,.233222,.496162,.950149,-.113081,.231845,.523978,.951989,-.115893,.230005,.552295,.953921,-.11846,.227862,.580569,.955624,-.12115,.225439,.608698,.958234,-.123373,.222635,.636696,.960593,-.124519,.219093,.665208,.963201,-.124736,.214749,.693557,.965642,-.125012,.210059,.721334,.968765,-.124661,.204935,.748613,.971753,-.122996,.198661,.776224,.973751,-.120998,.191823,.802461,.976709,-.118583,.184359,.828399,.977956,-.115102,.176437,.853693,.979672,-.111077,.167681,.877962,.981816,-.10688,.158872,.901564,.98238,-.101469,.149398,.924057,.983964,-.0960013,.139436,.945751,.984933,-.0899626,.12943,.966272,.985694,-.0832973,.11894,.985741,.986822,-.0767082,.108349,1.00407,.987725,-.0693614,.0976026,1.02154,.98877,-.06211,.086652,1.03757,.990129,-.0544143,.0756182,1.05296,.991337,-.046744,.0645753,1.06683,.992978,-.0387931,.0534683,1.0798,.994676,-.030973,.0424137,1.09181,.99645,-.0230311,.0314035,1.10286,.997967,-.0152065,.0206869,1.11291,.99922,-.00744837,.010155,1.12237,1.00002,240209e-9,-752767e-10,1.13089,.922948,-515351e-11,.255626,186069e-10,.928785,-129623e-9,.257244,468009e-9,.928761,-51849e-8,.257237,.00187202,.928751,-.0011666,.257235,.00421204,.928751,-.00207395,.257234,.0074881,.928754,-.00324055,.257235,.0117002,.92876,-.00466639,.257236,.0168486,.928763,-.00635149,.257237,.0229334,.928774,-.00829584,.257239,.029955,.928791,-.0104995,.257243,.0379139,.928804,-.0129623,.257245,.0468108,.928847,-.0156846,.257255,.0566473,.92889,-.0186661,.257263,.0674246,.928924,-.0219067,.257268,.0791433,.928989,-.0254066,.257282,.0918076,.92909,-.0291651,.257301,.105419,.92918,-.0331801,.257316,.119978,.92929,-.0374469,.257332,.135491,.929453,-.041939,.257357,.151948,.929586,-.0464612,.257347,.169275,.929858,-.0503426,.257269,.187257,.930125,-.0548409,.257199,.206204,.930403,-.0598063,.257149,.22601,.930726,-.0652437,.257122,.246561,.931098,-.0712376,.257153,.267618,.931396,-.0777506,.257237,.288993,.931947,-.0832374,.257124,.311527,.932579,-.0883955,.25683,.335697,.933194,-.0937037,.256444,.360634,.934013,-.0987292,.255939,.386126,.935307,-.103215,.255282,.412018,.936374,-.108234,.254538,.438292,.93776,-.113234,.253728,.464805,.939599,-.118013,.25275,.491464,.941036,-.122661,.251404,.518751,.94337,-.125477,.249435,.547133,.945318,-.128374,.247113,.575456,.947995,-.130996,.244441,.60372,.950818,-.133438,.241352,.63174,.954378,-.135004,.237849,.659971,.957151,-.135313,.233188,.688478,.960743,-.13521,.228001,.716767,.964352,-.135007,.222249,.744349,.967273,-.133523,.21542,.771786,.969767,-.131155,.208039,.798639,.973195,-.128492,.200076,.824774,.975557,-.125094,.191451,.850222,.977692,-.120578,.18184,.874761,.98026,-.115882,.172102,.898497,.981394,-.110372,.161859,.921636,.982386,-.10415,.15108,.943467,.983783,-.0978128,.140407,.964045,.98422,-.0906171,.129058,.98398,.985447,-.0832921,.117614,1.00276,.986682,-.0754412,.10585,1.02047,.987326,-.0673885,.0940943,1.03678,.988707,-.0592565,.0822093,1.05218,.990185,-.050717,.070192,1.06652,.991866,-.0423486,.0582081,1.07965,.993897,-.0336118,.0460985,1.09188,.995841,-.0252178,.0342737,1.10307,.997605,-.0164893,.0224829,1.11324,.999037,-.00817112,.0110647,1.12262,1.00003,291686e-9,-168673e-9,1.13139,.915304,-552675e-11,.275999,183285e-10,.91668,-139285e-9,.276414,461914e-9,.916664,-55713e-8,.276409,.00184763,.916653,-.00125354,.276406,.00415715,.916651,-.00222851,.276405,.00739053,.916655,-.00348205,.276406,.0115478,.916653,-.00501414,.276405,.0166291,.916667,-.00682478,.276409,.0226346,.91668,-.00891398,.276412,.0295648,.91669,-.0112817,.276413,.0374199,.916727,-.013928,.276422,.0462016,.916759,-.0168528,.276429,.0559101,.916793,-.0200558,.276436,.0665466,.916849,-.0235373,.276448,.0781139,.916964,-.0272973,.276474,.0906156,.917047,-.0313344,.276491,.104051,.917152,-.0356465,.276511,.118424,.917286,-.0402271,.276533,.133736,.917469,-.0450408,.276564,.149978,.917686,-.0497872,.276563,.167057,.917953,-.0540937,.276493,.184846,.918228,-.0590709,.276437,.203614,.918572,-.0644277,.276398,.223212,.918918,-.0702326,.276362,.243584,.919356,-.076484,.276383,.264465,.919842,-.0830808,.276434,.285701,.920451,-.0892972,.276407,.307559,.921113,-.095016,.276128,.331501,.921881,-.100771,.275754,.356207,.923027,-.106029,.275254,.381477,.924364,-.111029,.274595,.40722,.925818,-.116345,.273841,.433385,.92746,-.121424,.272913,.459848,.929167,-.12657,.271837,.486493,.931426,-.131581,.270575,.513432,.934001,-.135038,.268512,.541502,.936296,-.138039,.266135,.569658,.939985,-.140687,.263271,.598375,.943516,-.143247,.260058,.626563,.94782,-.145135,.256138,.654711,.951023,-.145733,.251154,.683285,.955338,-.145554,.245562,.711831,.959629,-.145008,.239265,.739573,.963123,-.144003,.232064,.767027,.966742,-.141289,.224036,.794359,.969991,-.138247,.215305,.820361,.973403,-.134786,.206051,.846548,.975317,-.129966,.195914,.871541,.977647,-.12471,.185184,.895313,.980137,-.119086,.174161,.918398,.981031,-.112297,.162792,.940679,.982037,-.105372,.150952,.961991,.983164,-.097821,.138921,.981913,.983757,-.0897245,.126611,1.00109,.985036,-.0815974,.114228,1.01902,.986289,-.0727725,.101389,1.03604,.987329,-.0639323,.0886476,1.05149,.989193,-.0548109,.0756837,1.06619,.990716,-.045687,.0627581,1.07948,.992769,-.0364315,.0498337,1.09172,.99524,-.0271761,.0370305,1.1033,.997154,-.0179609,.0243959,1.11353,.998845,-.00878063,.0119567,1.12319,1.00002,259038e-9,-108146e-9,1.13177,.903945,-591681e-11,.295126,181226e-10,.903668,-148672e-9,.295037,455367e-9,.903677,-594683e-9,.29504,.00182145,.903673,-.00133805,.295039,.00409831,.903666,-.00237872,.295036,.00728584,.903668,-.00371676,.295037,.0113842,.903679,-.00535212,.29504,.0163936,.903684,-.00728479,.295041,.0223141,.903698,-.00951473,.295044,.0291462,.903718,-.0120419,.295049,.0368904,.903754,-.0148664,.295058,.0455477,.903801,-.017988,.29507,.0551194,.903851,-.0214064,.295082,.0656058,.903921,-.0251219,.295097,.0770109,.904002,-.0291337,.295116,.0893354,.904111,-.033441,.29514,.102583,.904246,-.0380415,.295169,.116755,.904408,-.0429258,.295202,.131853,.904637,-.0480468,.295245,.147869,.904821,-.0529208,.295214,.164658,.905163,-.0577748,.295185,.182274,.905469,-.0631763,.295143,.200828,.905851,-.068917,.295112,.2202,.906322,-.0750861,.295104,.240372,.906761,-.0815855,.295086,.261082,.90735,-.0882138,.295095,.282123,.908087,-.095082,.295139,.303563,.908826,-.101488,.29492,.327028,.909832,-.107577,.294577,.351464,.911393,-.113033,.294115,.376497,.912804,-.118629,.293446,.402115,.914081,-.124232,.292581,.428111,.91637,-.129399,.29166,.454442,.91814,-.134892,.290422,.481024,.921179,-.140069,.289194,.507924,.924544,-.144431,.287421,.535557,.927995,-.147498,.284867,.563984,.931556,-.150197,.281722,.5923,.935777,-.152711,.278207,.620832,.940869,-.154836,.274148,.649069,.945994,-.155912,.269057,.677746,.949634,-.155641,.262799,.706293,.955032,-.154809,.256097,.734278,.95917,-.153678,.248618,.761751,.962931,-.151253,.239794,.789032,.966045,-.147625,.230281,.815422,.96971,-.143964,.220382,.841787,.972747,-.139464,.209846,.867446,.975545,-.133459,.198189,.892004,.978381,-.127424,.186362,.915458,.979935,-.120506,.173964,.937948,.980948,-.11282,.161429,.959732,.982234,-.104941,.148557,.980118,.982767,-.0962905,.135508,.999463,.983544,-.0873625,.122338,1.01756,.984965,-.0783447,.108669,1.03492,.986233,-.0684798,.0949911,1.05087,.987796,-.0590867,.0811386,1.0656,.989885,-.0489145,.0673099,1.0794,.991821,-.0391,.0535665,1.09174,.99448,-.029087,.0397529,1.10341,.996769,-.019114,.0261463,1.11383,.998641,-.00947007,.0128731,1.1237,.999978,446316e-9,-169093e-9,1.13253,.888362,-627064e-11,.312578,178215e-10,.889988,-157791e-9,.313148,448451e-9,.889825,-631076e-9,.313092,.00179356,.88984,-.00141994,.313097,.00403554,.889828,-.0025243,.313092,.00717429,.889831,-.00394421,.313093,.0112099,.889831,-.00567962,.313093,.0161425,.889844,-.00773051,.313096,.0219724,.889858,-.0100968,.3131,.0286999,.889882,-.0127786,.313106,.0363256,.889918,-.0157757,.313116,.0448509,.889967,-.0190878,.313129,.0542758,.89003,-.022715,.313145,.0646032,.890108,-.0266566,.313165,.0758339,.890218,-.0309131,.313193,.0879729,.890351,-.0354819,.313226,.101019,.89051,-.0403613,.313263,.114979,.890672,-.0455385,.313294,.129848,.890882,-.0509444,.313333,.145616,.891189,-.0559657,.313324,.162122,.891457,-.0613123,.313281,.179524,.891856,-.0671488,.313281,.197855,.892312,-.0732732,.313268,.216991,.892819,-.0797865,.313263,.236924,.893369,-.0865269,.313247,.257433,.894045,-.0931592,.313205,.278215,.894884,-.100532,.313276,.299467,.895832,-.107716,.313205,.322276,.897043,-.114099,.312873,.34642,.898515,-.119941,.312331,.371187,.900191,-.126044,.311731,.396656,.90188,-.131808,.310859,.422488,.904359,-.137289,.309857,.448744,.906923,-.142991,.308714,.475239,.910634,-.148253,.307465,.501983,.914502,-.153332,.305774,.529254,.919046,-.156646,.303156,.557709,.923194,-.159612,.299928,.586267,.928858,-.162027,.296245,.614925,.934464,-.164203,.291832,.643187,.939824,-.165602,.286565,.671601,.944582,-.165383,.280073,.700213,.949257,-.164439,.272891,.728432,.954389,-.162953,.264771,.756082,.958595,-.161007,.255927,.78369,.962138,-.157243,.245769,.810769,.966979,-.152872,.235127,.836999,.969566,-.148209,.22347,.862684,.972372,-.142211,.211147,.887847,.975916,-.135458,.198606,.911843,.978026,-.128398,.185498,.934795,.979686,-.120313,.17171,.956787,.980748,-.11166,.158159,.978046,.981622,-.103035,.144399,.997693,.982356,-.0930328,.13001,1.01642,.983308,-.0834627,.115778,1.03366,.985037,-.0732249,.101327,1.05014,.986493,-.0628145,.086554,1.06507,.988484,-.0526556,.0720413,1.07907,.991051,-.0415744,.0571151,1.09189,.993523,-.0314275,.0426643,1.10369,.99628,-.0203603,.0279325,1.11423,.998344,-.0102446,.0138182,1.12421,.999997,42612e-8,-193628e-9,1.1333,.871555,-660007e-11,.329176,174749e-10,.875255,-166579e-9,.330571,441051e-9,.875644,-666394e-9,.330718,.00176441,.875159,-.00149903,.330536,.00396899,.87516,-.00266493,.330536,.007056,.875158,-.00416393,.330535,.0110251,.87516,-.00599598,.330535,.0158764,.875163,-.00816108,.330536,.0216101,.875174,-.0106591,.330538,.0282266,.875199,-.0134899,.330545,.0357266,.875257,-.0166538,.330563,.0441117,.875304,-.0201501,.330575,.0533821,.875373,-.0239785,.330595,.0635395,.875464,-.0281389,.330619,.0745872,.875565,-.0326301,.330645,.0865255,.875691,-.0374516,.330676,.0993599,.875897,-.0425993,.330733,.113093,.876091,-.0480576,.330776,.127722,.876353,-.0537216,.330826,.143227,.876649,-.0589807,.330809,.159462,.877034,-.0647865,.330819,.176642,.877443,-.0709789,.330817,.194702,.877956,-.0774782,.330832,.213577,.878499,-.0843175,.330822,.233246,.879144,-.0912714,.330804,.253512,.879982,-.0980824,.330766,.274137,.88097,-.105823,.330864,.295209,.882051,-.113671,.330896,.317226,.883397,-.120303,.330545,.341068,.884987,-.12667,.330068,.365613,.886789,-.133118,.329418,.390807,.889311,-.139024,.328683,.416494,.891995,-.144971,.327729,.442618,.895106,-.150747,.326521,.469131,.899527,-.156283,.325229,.495921,.90504,-.161707,.32378,.523162,.909875,-.165661,.32122,.55092,.91561,-.168755,.317942,.579928,.921225,-.171193,.313983,.608539,.927308,-.17319,.309636,.636854,.933077,-.174819,.304262,.66523,.938766,-.175002,.297563,.693609,.943667,-.173946,.289613,.722157,.949033,-.172221,.281227,.750021,.953765,-.169869,.271545,.777466,.95804,-.166578,.261034,.804853,.962302,-.161761,.249434,.831569,.966544,-.156636,.237484,.857779,.969372,-.150784,.224395,.883051,.972486,-.143672,.210786,.907864,.975853,-.135772,.196556,.931223,.977975,-.127942,.182307,.954061,.979122,-.118347,.167607,.97531,.980719,-.109112,.152739,.995666,.981223,-.0991789,.137932,1.01475,.98216,-.0883553,.122692,1.03253,.983379,-.0780825,.107493,1.04917,.985434,-.0665646,.0917791,1.06464,.987332,-.0557714,.0764949,1.07896,.990004,-.0442805,.060721,1.09199,.992975,-.0331676,.0452284,1.10393,.995811,-.0219547,.0297934,1.11476,.9982,-.0107613,.0146415,1.12484,1.00002,248678e-9,-14555e-8,1.13413,.859519,-693595e-11,.347264,171673e-10,.859843,-17503e-8,.347394,433219e-9,.859656,-700076e-9,.347319,.00173277,.859671,-.00157517,.347325,.00389875,.859669,-.00280028,.347324,.00693112,.85967,-.0043754,.347324,.01083,.859665,-.00630049,.347321,.0155954,.859685,-.0085755,.347328,.0212278,.859694,-.0112003,.347329,.0277273,.859718,-.0141747,.347336,.0350946,.85976,-.0174988,.347348,.0433314,.85982,-.0211722,.347366,.0524384,.859892,-.0251941,.347387,.0624168,.860006,-.0295649,.347422,.0732708,.860122,-.0342825,.347453,.0849999,.860282,-.0393462,.347499,.0976102,.860482,-.0447513,.347554,.111104,.860719,-.0504775,.347614,.125479,.860998,-.0563577,.347666,.140703,.861322,-.0619473,.347662,.156681,.861724,-.0681277,.347684,.173597,.862198,-.0746567,.347709,.191371,.862733,-.0815234,.347727,.209976,.863371,-.0886643,.347744,.229351,.86414,-.0957908,.347734,.24934,.865138,-.102912,.34772,.269797,.866182,-.110924,.3478,.290654,.867436,-.119223,.347911,.312074,.869087,-.126197,.347649,.335438,.870859,-.133145,.347222,.359732,.872997,-.139869,.346645,.38467,.875939,-.146089,.345935,.41019,.879012,-.152334,.345012,.436218,.883353,-.15821,.343924,.462641,.888362,-.164097,.342636,.489449,.895026,-.169528,.341351,.516629,.900753,-.174408,.339115,.544109,.906814,-.17751,.335809,.572857,.912855,-.180101,.331597,.601554,.919438,-.182116,.32698,.630198,.925962,-.183494,.321449,.658404,.931734,-.184159,.314595,.686625,.93762,-.18304,.306462,.71531,.943858,-.181323,.297514,.744272,.948662,-.178683,.287447,.771462,.953299,-.175379,.276166,.798593,.957346,-.170395,.263758,.8256,.962565,-.165042,.251019,.852575,.966075,-.158655,.237011,.878316,.969048,-.151707,.222518,.90329,.972423,-.143271,.207848,.927745,.975833,-.134824,.192463,.950859,.977629,-.125444,.1768,.972947,.978995,-.114949,.161033,.993263,.980533,-.104936,.145523,1.01337,.980745,-.0935577,.129799,1.03128,.981814,-.0822956,.113486,1.04825,.983943,-.0710082,.0972925,1.06405,.986141,-.0587931,.0808138,1.0785,.988878,-.0472755,.0644915,1.09204,.992132,-.0349128,.0478128,1.10413,.9953,-.0232407,.031621,1.11527,.998117,-.0112713,.0154935,1.12551,1.00003,339743e-9,-195763e-9,1.13504,.845441,-729126e-11,.364305,169208e-10,.843588,-183164e-9,.363506,425067e-9,.843412,-73253e-8,.36343,.00169999,.843401,-.00164818,.363426,.00382495,.843399,-.00293008,.363425,.00679993,.843401,-.00457822,.363425,.010625,.843394,-.00659249,.363421,.0153002,.843398,-.00897282,.363421,.0208258,.843415,-.0117191,.363426,.0272024,.843438,-.0148312,.363432,.0344305,.843483,-.018309,.363447,.0425116,.84356,-.0221521,.363472,.0514471,.843646,-.0263597,.363499,.061238,.843743,-.0309315,.363527,.0718873,.84388,-.0358658,.363569,.0833969,.844079,-.0411624,.363631,.0957742,.844279,-.0468128,.363688,.109015,.844549,-.0527923,.363761,.123124,.844858,-.0588204,.363817,.138044,.84522,-.0647573,.36383,.153755,.845669,-.0713181,.363879,.170394,.846155,-.0781697,.363908,.187861,.846789,-.0853913,.363969,.206176,.847502,-.0928086,.363999,.225244,.8484,-.10005,.363997,.244926,.849461,-.107615,.364008,.265188,.850562,-.115814,.364055,.28587,.851962,-.124334,.364179,.306926,.854326,-.131995,.364233,.329605,.856295,-.139338,.363856,.35359,.858857,-.146346,.363347,.37831,.862428,-.152994,.362807,.403722,.866203,-.159463,.361963,.429537,.871629,-.165623,.36112,.456,.877365,-.171649,.359917,.482773,.883744,-.177151,.35848,.509705,.890693,-.182381,.356523,.537215,.897278,-.186076,.3533,.565493,.903958,-.188602,.349095,.594293,.910908,-.190755,.344215,.623165,.918117,-.192063,.338606,.651573,.924644,-.192758,.331544,.679869,.931054,-.192238,.323163,.708668,.937303,-.190035,.313529,.737201,.943387,-.187162,.303152,.764977,.948494,-.183876,.29146,.792683,.952546,-.178901,.277917,.819228,.958077,-.173173,.264753,.846559,.962462,-.16645,.25002,.872962,.966569,-.159452,.234873,.898729,.969108,-.15074,.218752,.923126,.973072,-.141523,.202673,.947278,.975452,-.132075,.186326,.969938,.977784,-.121257,.169396,.991325,.97899,-.110182,.153044,1.01123,.979777,-.0989634,.136485,1.0299,.980865,-.0865894,.119343,1.04727,.982432,-.0746115,.102452,1.06341,.984935,-.0621822,.0852423,1.07834,.987776,-.0495694,.0678546,1.092,.99103,-.0372386,.0506917,1.1043,.99474,-.0244353,.0333316,1.11576,.997768,-.0121448,.0164348,1.12617,1.00003,31774e-8,-169504e-9,1.13598,.825551,-756799e-11,.378425,165099e-10,.82664,-190922e-9,.378923,416504e-9,.826323,-763495e-9,.378779,.0016656,.826359,-.00171789,.378795,.00374768,.82636,-.00305402,.378795,.00666259,.826368,-.00477185,.378798,.0104104,.826364,-.00687131,.378795,.0149912,.826368,-.00935232,.378795,.0204054,.826376,-.0122146,.378797,.0266532,.826399,-.0154581,.378803,.0337355,.82646,-.0190825,.378824,.0416537,.826525,-.0230873,.378846,.0504091,.826614,-.0274719,.378876,.0600032,.82674,-.0322355,.378917,.0704393,.826888,-.0373766,.378964,.0817195,.827078,-.0428936,.379024,.0938492,.827318,-.0487778,.379099,.106828,.82764,-.0549935,.379199,.120659,.827926,-.0611058,.379227,.13526,.828325,-.0675054,.379275,.150713,.828801,-.0743455,.379332,.167034,.8294,-.0815523,.379415,.184209,.830094,-.0890779,.379495,.202203,.8309,-.096736,.379555,.220945,.831943,-.104135,.379577,.240306,.833037,-.112106,.379604,.260317,.834278,-.120554,.379668,.2808,.836192,-.129128,.3799,.301654,.838671,-.137541,.380109,.323502,.840939,-.14523,.379809,.347176,.844575,-.15248,.379593,.371706,.848379,-.159607,.37909,.39688,.853616,-.166267,.378617,.422702,.858921,-.172698,.377746,.448919,.865324,-.178823,.376749,.475661,.872207,-.184542,.375363,.502599,.880018,-.189836,.373657,.529914,.88694,-.194294,.370673,.557683,.894779,-.197022,.36662,.586848,.902242,-.199108,.36138,.615831,.909914,-.200398,.355434,.644478,.917088,-.20094,.348173,.672905,.923888,-.200671,.339482,.701327,.930495,-.198773,.32956,.730101,.937247,-.195394,.318363,.758383,.943108,-.191956,.306323,.786539,.948296,-.187227,.292576,.813637,.953472,-.181165,.278234,.840793,.958485,-.174119,.263054,.867712,.962714,-.166564,.246756,.893635,.966185,-.158181,.229945,.919028,.970146,-.148275,.212633,.943413,.973491,-.138157,.195229,.966627,.975741,-.127574,.178048,.988817,.977238,-.11554,.160312,1.00924,.978411,-.10364,.142857,1.02845,.979811,-.0913122,.125317,1.04648,.98116,-.0782558,.107627,1.06284,.983543,-.0655957,.0895862,1.07798,.986789,-.0520411,.0713756,1.092,.990292,-.0389727,.053228,1.10484,.994187,-.025808,.0351945,1.11642,.997499,-.0126071,.0173198,1.12703,.999999,275604e-9,-148602e-9,1.13674,.81075,-78735e-10,.394456,161829e-10,.808692,-198293e-9,.393453,407564e-9,.80846,-792877e-9,.39334,.00162965,.808595,-.00178416,.393407,.00366711,.808597,-.00317182,.393408,.00651934,.808598,-.00495589,.393408,.0101866,.808591,-.00713627,.393403,.0146689,.808592,-.00971285,.393402,.0199667,.80861,-.0126855,.393407,.0260803,.808633,-.0160538,.393413,.0330107,.80868,-.0198175,.393429,.0407589,.808748,-.0239758,.393453,.0493264,.808854,-.0285286,.39349,.0587161,.808992,-.0334748,.39354,.0689304,.809141,-.0388116,.393588,.0799707,.809352,-.0445375,.39366,.0918432,.809608,-.0506427,.393742,.104549,.809915,-.0570708,.393834,.118085,.810253,-.0633526,.393885,.132377,.810687,-.0700966,.393953,.147537,.811233,-.0772274,.394047,.163543,.811865,-.0847629,.394148,.180394,.812648,-.0925663,.394265,.198051,.813583,-.100416,.394363,.216443,.814683,-.108119,.394402,.235502,.815948,-.11644,.394489,.255242,.817278,-.125036,.394542,.275441,.819605,-.133655,.39486,.296094,.822256,-.142682,.395248,.317309,.825349,-.150756,.395241,.340516,.829605,-.158392,.395285,.364819,.83391,-.165801,.394922,.389736,.839808,-.172677,.394691,.415409,.845708,-.179448,.394006,.441546,.853025,-.185746,.393279,.46832,.859666,-.191684,.391655,.495302,.86789,-.197146,.390068,.52262,.875845,-.201904,.38727,.550336,.882634,-.205023,.382688,.578825,.891076,-.207098,.377543,.608103,.900589,-.208474,.371752,.63723,.90791,-.209068,.364016,.665769,.915971,-.208655,.355593,.694428,.923455,-.20729,.345439,.723224,.931514,-.203821,.334099,.751925,.937885,-.19986,.321069,.780249,.943136,-.194993,.306571,.8077,.948818,-.189132,.291556,.83497,.954433,-.181617,.275745,.86188,.959078,-.173595,.258695,.888562,.962705,-.164855,.240825,.914008,.966753,-.155129,.22268,.939145,.970704,-.144241,.204542,.963393,.973367,-.133188,.185927,.985983,.975984,-.121146,.167743,1.00704,.976994,-.108366,.149218,1.02715,.978485,-.0956746,.13131,1.0455,.980074,-.0820733,.112513,1.06221,.98225,-.0684061,.0938323,1.07782,.98553,-.0549503,.0749508,1.09199,.989529,-.0407857,.055848,1.10508,.993536,-.0271978,.0368581,1.11684,.997247,-.0132716,.0181845,1.12789,1,431817e-9,-198809e-9,1.13792,.785886,-812608e-11,.405036,157669e-10,.790388,-205278e-9,.407355,398297e-9,.790145,-820824e-9,.407231,.00159263,.790135,-.00184681,.407226,.00358336,.790119,-.00328316,.407218,.00637039,.790126,-.00512988,.40722,.0099539,.79013,-.00738684,.407221,.0143339,.790135,-.0100538,.407221,.0195107,.790134,-.0131306,.407217,.0254848,.79016,-.0166169,.407224,.0322572,.790197,-.020512,.407236,.0398284,.790273,-.0248157,.407263,.0482014,.790381,-.029527,.407304,.0573777,.790521,-.0346446,.407355,.0673602,.790704,-.0401665,.40742,.0781522,.790925,-.0460896,.407499,.0897582,.791195,-.0524017,.407589,.10218,.791522,-.0590121,.407691,.11541,.791878,-.0654876,.407748,.12939,.792361,-.0725207,.407849,.144237,.792942,-.0799844,.407963,.159924,.79362,-.0877896,.408087,.176425,.794529,-.0958451,.408259,.193733,.795521,-.103827,.408362,.211756,.796778,-.111937,.408482,.230524,.798027,-.120521,.408547,.249967,.799813,-.129242,.408721,.269926,.802387,-.138048,.409148,.290338,.805279,-.147301,.409641,.311193,.809251,-.155895,.410154,.333611,.813733,-.163942,.410297,.357615,.819081,-.171666,.410373,.382339,.825427,-.178905,.410348,.407828,.83172,-.185812,.409486,.434034,.83877,-.192318,.408776,.460493,.845817,-.198249,.407176,.487346,.854664,-.204034,.405719,.514832,.863495,-.208908,.403282,.542401,.871883,-.212765,.399293,.570683,.88065,-.214911,.393803,.599947,.89004,-.216214,.387536,.62932,.898476,-.216745,.379846,.658319,.906738,-.216387,.370625,.687138,.914844,-.215053,.360139,.71601,.923877,-.212007,.348849,.745124,.931925,-.207481,.335639,.773366,.938054,-.202418,.320798,.801636,.943895,-.196507,.304772,.829055,.949468,-.189009,.288033,.856097,.955152,-.180539,.270532,.88301,.959403,-.171437,.251639,.909296,.963309,-.161661,.232563,.934868,.967399,-.150425,.213231,.959662,.972009,-.138659,.194247,.98302,.97433,-.126595,.174718,1.00517,.975823,-.113205,.155518,1.02566,.976371,-.0996096,.136709,1.04418,.978705,-.0860754,.117571,1.06146,.981477,-.0714438,.0980046,1.07777,.984263,-.0572304,.0782181,1.09214,.988423,-.0428875,.0584052,1.10553,.993,-.0282442,.038522,1.11758,.99704,-.0140183,.0190148,1.12864,.999913,369494e-9,-145203e-9,1.13901,.777662,-84153e-10,.423844,154403e-10,.770458,-211714e-9,.419915,38845e-8,.770716,-846888e-9,.420055,.00155386,.770982,-.00190567,.420202,.00349653,.770981,-.00338782,.420201,.00621606,.77098,-.00529338,.4202,.00971274,.770983,-.00762223,.4202,.0139867,.770985,-.0103741,.420198,.0190381,.770996,-.0135489,.4202,.0248677,.771029,-.0171461,.420212,.0314764,.771052,-.0211647,.420215,.0388648,.771131,-.0256048,.420245,.047036,.771235,-.0304647,.420284,.0559911,.771383,-.0357436,.420341,.0657346,.771591,-.0414392,.420423,.0762694,.771819,-.0475462,.420506,.0875984,.772123,-.0540506,.420617,.099727,.772464,-.060797,.42072,.112637,.772855,-.0675393,.420799,.126313,.773317,-.0748323,.420893,.140824,.773981,-.0825681,.421058,.15617,.774746,-.0906307,.421226,.172322,.77566,-.0988982,.421397,.189253,.776837,-.106994,.421569,.206912,.778097,-.115528,.421704,.225359,.779588,-.124317,.421849,.24447,.781574,-.133139,.422097,.264156,.784451,-.142179,.422615,.284318,.787682,-.15165,.423269,.304902,.792433,-.160771,.424396,.3265,.797359,-.169166,.424772,.35014,.803986,-.177149,.425475,.374768,.809504,-.184745,.424996,.399928,.815885,-.19173,.424247,.425796,.823513,-.198525,.423515,.452287,.832549,-.204709,.422787,.479321,.841653,-.210447,.421187,.506718,.850401,-.215501,.418519,.53432,.859854,-.219752,.414715,.56242,.869364,-.222305,.409462,.591558,.878837,-.223744,.402926,.621074,.888636,-.224065,.395043,.650538,.898132,-.223742,.38564,.679538,.907181,-.222308,.375378,.708674,.915621,-.219837,.363212,.737714,.9239,-.215233,.349313,.767014,.931644,-.209592,.334162,.795133,.938887,-.203644,.317943,.823228,.945282,-.196349,.300581,.850822,.950758,-.18742,.282195,.877594,.956146,-.177879,.262481,.904564,.960355,-.167643,.242487,.930741,.965256,-.156671,.222668,.955868,.968029,-.144123,.201907,.979869,.97251,-.131305,.18202,1.00291,.974925,-.118335,.161909,1.02392,.975402,-.103714,.142129,1.0433,.976987,-.089415,.122447,1.06089,.979677,-.0748858,.102248,1.07713,.983184,-.0596086,.0814851,1.09218,.987466,-.0447671,.0609484,1.10585,.992348,-.0295217,.0401835,1.11829,.996674,-.0143917,.0198163,1.12966,1.00003,321364e-9,-149983e-9,1.1402,.757901,-869074e-11,.436176,151011e-10,.751195,-217848e-9,.432317,378533e-9,.751178,-871373e-9,.432307,.0015141,.751195,-.00196061,.432317,.0034068,.751198,-.00348552,.432318,.00605659,.751195,-.00544599,.432315,.00946353,.751207,-.00784203,.43232,.013628,.751213,-.0106732,.43232,.0185499,.751221,-.0139393,.432319,.0242302,.751244,-.0176398,.432325,.0306694,.7513,-.0217743,.432348,.0378698,.751358,-.0263412,.432367,.0458321,.751458,-.0313396,.432404,.0545587,.751608,-.0367682,.432464,.0640543,.7518,-.0426246,.43254,.0743222,.752065,-.0489031,.432645,.0853668,.752376,-.0555828,.432762,.0971911,.752715,-.0623861,.432859,.109768,.753137,-.069415,.432958,.123126,.753676,-.0770039,.433099,.137308,.754345,-.084971,.433272,.15229,.755235,-.0932681,.433504,.168075,.756186,-.10171,.433693,.184625,.757363,-.110019,.433857,.201897,.75884,-.11887,.434102,.220014,.760467,-.127881,.434306,.238778,.762969,-.136766,.434751,.258172,.765823,-.14612,.43529,.278062,.769676,-.15566,.436236,.298437,.774909,-.165177,.437754,.319532,.77994,-.17402,.438343,.342505,.785757,-.182201,.438609,.366693,.792487,-.190104,.438762,.391668,.80038,-.197438,.438795,.417494,.808494,-.204365,.438226,.443933,.817695,-.210714,.437283,.470929,.828111,-.216651,.436087,.498569,.837901,-.221804,.433717,.526165,.847813,-.226318,.430133,.554155,.858314,-.229297,.425213,.582822,.868891,-.230999,.418576,.612847,.878941,-.231155,.410405,.642445,.888809,-.230935,.400544,.672024,.898089,-.229343,.389613,.701366,.908081,-.226886,.377197,.730763,.916819,-.222676,.363397,.759642,.924968,-.216835,.347437,.788775,.932906,-.210245,.32995,.817135,.940025,-.202992,.312262,.844912,.946101,-.19436,.293313,.872164,.952835,-.184125,.273638,.899443,.957347,-.173657,.252385,.926389,.961434,-.162204,.231038,.951947,.965522,-.14979,.209834,.976751,.969412,-.136307,.188821,1.00022,.973902,-.122527,.168013,1.02229,.974045,-.108213,.147634,1.04199,.975775,-.0927397,.12705,1.06019,.978383,-.0778212,.106309,1.07711,.98211,-.0621216,.0849279,1.09245,.986517,-.0463847,.0633519,1.10651,.991696,-.0309353,.0419698,1.11903,.996349,-.0150914,.0206272,1.13073,1.00003,442449e-9,-231396e-9,1.14146,.727498,-885074e-11,.441528,145832e-10,.730897,-223525e-9,.443589,368298e-9,.730796,-893996e-9,.443528,.00147303,.730805,-.00201149,.443533,.00331433,.730814,-.00357596,.443538,.00589222,.730815,-.00558734,.443538,.00920678,.730822,-.00804544,.44354,.0132582,.730836,-.0109501,.443545,.0180468,.730848,-.0143008,.443546,.0235732,.730871,-.0180969,.443552,.0298382,.730915,-.022338,.443567,.0368438,.730982,-.0270225,.443591,.044591,.731076,-.0321491,.443627,.0530831,.731245,-.0377166,.443699,.0623243,.73144,-.0437216,.443777,.0723181,.7317,-.0501576,.443881,.0830691,.732034,-.0569942,.444014,.0945809,.732388,-.0638756,.444113,.106825,.732853,-.071203,.444247,.119859,.733473,-.0790076,.444442,.13369,.734195,-.0871937,.444645,.148304,.735069,-.095696,.444877,.163702,.736169,-.10426,.445133,.179861,.73747,-.112853,.44537,.196778,.738991,-.12199,.445651,.214496,.740865,-.131153,.445958,.232913,.743637,-.140245,.446548,.251977,.746797,-.149722,.447246,.271551,.751517,-.159341,.448656,.291774,.756156,-.169106,.449866,.312455,.761519,-.178436,.450919,.334552,.768295,-.186904,.451776,.358491,.776613,-.195117,.452832,.383446,.783966,-.202695,.45249,.408945,.793542,-.20985,.452587,.435364,.803192,-.216403,.451852,.462336,.813892,-.22251,.450708,.48987,.824968,-.227676,.4486,.517697,.835859,-.232443,.445156,.545975,.846825,-.235775,.440351,.574483,.858085,-.237897,.433641,.604246,.868825,-.238074,.425354,.634101,.879638,-.237661,.415383,.664201,.889966,-.236186,.404136,.693918,.899479,-.233599,.390917,.723481,.908769,-.229737,.376352,.75258,.917966,-.223836,.360372,.781764,.926304,-.217067,.342551,.811139,.934626,-.209309,.324238,.839585,.941841,-.20071,.304484,.867044,.94789,-.190602,.283607,.894579,.954196,-.179253,.262205,.921743,.958383,-.167646,.239847,.948026,.963119,-.155073,.218078,.973296,.966941,-.141426,.195899,.998135,.970836,-.126849,.174121,1.02021,.973301,-.112296,.153052,1.04085,.97448,-.0964965,.131733,1.05946,.977045,-.080489,.10997,1.07693,.980751,-.064844,.0881657,1.09254,.985475,-.0481938,.0657987,1.10697,.991089,-.0319185,.0435215,1.12004,.996122,-.0158088,.0214779,1.13173,1.00001,372455e-9,-200295e-9,1.14291,.708622,-907597e-11,.45304,141962e-10,.711162,-228911e-9,.454662,358052e-9,.709812,-914446e-9,.453797,.00143034,.709865,-.00205819,.453834,.00321935,.709864,-.00365894,.453833,.00572331,.709855,-.00571692,.453826,.00894278,.709862,-.00823201,.453828,.012878,.709875,-.011204,.453832,.0175295,.709896,-.0146323,.453839,.0228978,.709925,-.0185163,.453847,.0289839,.709974,-.0228551,.453866,.0357894,.710045,-.0276473,.453892,.0433161,.710133,-.032891,.453924,.0515665,.710292,-.0385851,.453992,.0605458,.710485,-.0447254,.45407,.0702574,.710769,-.0513051,.454192,.0807077,.711106,-.0582733,.454329,.091896,.711516,-.0652866,.45446,.103814,.712071,-.0728426,.454653,.116508,.712676,-.0808307,.45484,.129968,.713476,-.0892216,.455096,.144206,.714377,-.0979047,.455346,.159212,.715579,-.106531,.455647,.174973,.716977,-.115492,.455961,.191504,.71862,-.124821,.456315,.208835,.72084,-.134079,.4568,.226869,.723786,-.143427,.457521,.245582,.727464,-.153061,.458475,.264957,.732771,-.162768,.460239,.284948,.736515,-.172627,.460899,.30522,.743519,-.182487,.463225,.326717,.750041,-.191295,.464027,.350113,.758589,-.199746,.465227,.374782,.767703,-.207584,.465877,.400226,.777484,-.214973,.465996,.426442,.788792,-.221796,.466019,.453688,.800194,-.228038,.465083,.481246,.811234,-.233346,.462506,.509086,.822859,-.238073,.459257,.537338,.835082,-.241764,.454863,.566108,.846332,-.244241,.448163,.595126,.858355,-.244736,.439709,.625574,.87034,-.244278,.429837,.65617,.881027,-.24255,.418002,.686029,.891007,-.239912,.404325,.716039,.900874,-.236133,.389222,.745518,.911072,-.230672,.373269,.775026,.920359,-.22356,.355083,.804521,.928604,-.215591,.335533,.834045,.937175,-.206503,.315278,.861612,.942825,-.196684,.293653,.889131,.949805,-.185116,.271503,.916853,.955535,-.172703,.248821,.943541,.959843,-.159978,.225591,.970132,.964393,-.146375,.202719,.994709,.968008,-.131269,.179928,1.0186,.971013,-.11569,.158007,1.03928,.973334,-.1003,.13624,1.05887,.975775,-.0833352,.1138,1.07652,.979579,-.0668981,.0913141,1.09297,.984323,-.0500902,.0683051,1.10734,.990351,-.0332377,.0451771,1.12084,.995823,-.0161491,.0221705,1.13296,1.0001,234083e-9,-108712e-9,1.14441,.683895,-924677e-11,.46015,137429e-10,.68833,-233383e-9,.463134,346865e-9,.688368,-933547e-9,.463159,.00138748,.688367,-.00210049,.463159,.00312187,.688369,-.00373415,.463159,.00555004,.688377,-.00583449,.463163,.00867216,.688386,-.00840128,.463166,.0124884,.688398,-.0114343,.463169,.0169993,.688418,-.0149329,.463175,.0222054,.688453,-.0188964,.463188,.028108,.688515,-.0233239,.463214,.0347085,.68857,-.0282136,.463231,.0420091,.688679,-.033564,.463276,.0500132,.688854,-.0393733,.463356,.0587255,.689038,-.0456354,.46343,.0681476,.689321,-.0523433,.463553,.0782897,.689662,-.059412,.463693,.0891501,.690188,-.0665736,.4639,.100735,.690755,-.0743106,.464107,.113074,.691405,-.0824722,.464329,.126161,.692198,-.0910484,.464585,.140007,.693196,-.0998778,.464893,.154612,.69454,-.108651,.465285,.169984,.695921,-.117855,.465596,.186106,.697749,-.12734,.466056,.203034,.700375,-.136714,.466771,.220703,.703395,-.146386,.467579,.239062,.707904,-.156096,.469067,.258188,.711673,-.165904,.469851,.277759,.717489,-.175812,.471815,.297935,.724051,-.185931,.47389,.318916,.731965,-.195238,.47587,.341591,.741151,-.204021,.477523,.366062,.751416,-.212113,.478881,.391396,.761848,-.21979,.479226,.417599,.771886,-.2267,.478495,.444401,.783998,-.232991,.477622,.472084,.796523,-.238645,.475833,.500193,.808851,-.243396,.472568,.52865,.821191,-.247226,.467857,.557362,.834261,-.250102,.461871,.586768,.846762,-.251056,.453543,.617085,.859867,-.250604,.443494,.647659,.871948,-.248783,.431711,.678119,.882967,-.245855,.417911,.708399,.892826,-.242168,.401993,.738256,.90332,-.237062,.385371,.767999,.913633,-.22997,.366837,.798191,.922774,-.221687,.346372,.827756,.931371,-.212345,.325682,.856425,.938929,-.20206,.303665,.884299,.944821,-.190981,.280786,.912023,.951792,-.178065,.2573,.939669,.957712,-.164634,.233448,.96655,.961912,-.150863,.209504,.992366,.966382,-.13577,.18597,1.01633,.969588,-.119593,.162905,1.03843,.971777,-.103203,.14053,1.05841,.97433,-.0865888,.117909,1.07632,.978686,-.0690829,.0944101,1.09326,.983281,-.0516568,.0705671,1.10796,.989562,-.034558,.0468592,1.12182,.995465,-.0167808,.0229846,1.1342,.999991,373016e-9,-235606e-9,1.1459,.662251,-939016e-11,.468575,132714e-10,.666634,-237624e-9,.471675,335842e-9,.666411,-950385e-9,.471516,.00134321,.666399,-.00213833,.471509,.00302221,.666386,-.0038014,.471499,.00537283,.666405,-.00593958,.471511,.00839533,.666406,-.00855253,.471508,.0120898,.666428,-.0116401,.471519,.0164569,.666444,-.0152015,.471522,.0214971,.66649,-.0192362,.471543,.027212,.666537,-.0237428,.471558,.033603,.666617,-.0287198,.471591,.0406728,.666718,-.0341647,.471631,.0484238,.666889,-.0400759,.47171,.0568621,.667104,-.0464479,.471805,.0659915,.667374,-.0532677,.471923,.0758178,.667772,-.0603805,.472098,.0863425,.668371,-.0677392,.472363,.0975917,.668971,-.0756028,.472596,.109567,.669696,-.0839293,.472869,.122272,.670481,-.0926683,.473126,.135718,.6715,-.1016,.473442,.149914,.672911,-.110566,.47389,.164882,.674512,-.119984,.474354,.180602,.67651,-.129574,.474922,.19711,.679292,-.139106,.475764,.214371,.682798,-.148993,.476886,.232405,.686955,-.158737,.478179,.251153,.691406,-.168754,.479432,.270436,.697438,-.178703,.481481,.290374,.704761,-.188955,.484143,.311044,.713599,-.198814,.487007,.333003,.723194,-.207869,.488962,.357144,.732601,-.216189,.489815,.382169,.744193,-.22398,.490888,.408227,.754907,-.231156,.490355,.434928,.767403,-.23747,.489548,.462599,.78107,-.243503,.488274,.490908,.793893,-.248114,.484843,.519421,.807296,-.25222,.4803,.548561,.820529,-.255265,.474097,.577772,.833716,-.256741,.466041,.607782,.848403,-.25637,.456547,.638807,.860755,-.254804,.443946,.670058,.874012,-.251834,.430852,.700749,.885619,-.247867,.414903,.731446,.896069,-.242634,.397276,.761191,.906266,-.236093,.378535,.791053,.916759,-.227543,.358038,.821298,.92523,-.21783,.335705,.850747,.93436,-.207534,.313797,.879258,.941631,-.195983,.289671,.907734,.947564,-.183567,.265319,.935206,.953681,-.169345,.240815,.962739,.960008,-.154909,.216119,.989227,.964145,-.140161,.192096,1.01465,.968171,-.123411,.167855,1.03737,.969859,-.106525,.144817,1.05767,.972666,-.0891023,.12149,1.0761,.977055,-.0718094,.0975306,1.09336,.982527,-.0534213,.0730217,1.10878,.989001,-.0355579,.0483366,1.12285,.99512,-.0176383,.023938,1.13548,1.00007,368831e-9,-211581e-9,1.14744,.651047,-960845e-11,.484101,12922e-9,.644145,-241347e-9,.478968,324578e-9,.64396,-965142e-9,.478831,.00129798,.64396,-.00217154,.47883,.00292046,.643968,-.00386049,.478835,.00519202,.643974,-.00603186,.478838,.0081128,.643977,-.0086854,.478836,.011683,.643982,-.0118207,.478834,.0159031,.644024,-.0154374,.478856,.0207743,.644059,-.0195343,.478868,.0262975,.644122,-.0241103,.478896,.0324747,.644207,-.0291638,.478933,.039309,.64432,-.0346919,.478981,.0468029,.644481,-.0406919,.479053,.0549614,.644722,-.047159,.479169,.0637909,.645013,-.0540748,.479302,.0732974,.645503,-.0612001,.479541,.0834898,.646117,-.0687303,.479829,.0943873,.646707,-.0767846,.480061,.105991,.647431,-.0852465,.480343,.11831,.64831,-.0940719,.48066,.131348,.649486,-.103056,.481083,.14514,.650864,-.112261,.481528,.159676,.652604,-.121852,.482102,.174979,.654825,-.131505,.482813,.191079,.657876,-.141189,.483876,.207927,.661339,-.151239,.48499,.225586,.665463,-.161091,.486279,.243947,.670542,-.171235,.487968,.262957,.677361,-.181347,.49053,.282781,.685672,-.191679,.493862,.303311,.694551,-.201781,.49699,.324607,.703753,-.211164,.498884,.347916,.713703,-.219675,.500086,.372628,.725911,-.227836,.501554,.398694,.73862,-.23533,.502193,.425529,.752118,-.241786,.501811,.453209,.76579,-.247865,.500185,.481381,.779568,-.252696,.497159,.51011,.793991,-.256802,.492765,.539322,.808182,-.259942,.486827,.569078,.821698,-.261703,.478386,.598818,.836009,-.262006,.468772,.629762,.849824,-.260333,.456352,.661366,.863888,-.257398,.442533,.69295,.876585,-.253264,.426573,.723608,.888665,-.248026,.408964,.754378,.899537,-.241487,.389677,.784761,.9094,-.233463,.368516,.814688,.920166,-.223397,.346624,.845009,.928899,-.21255,.322717,.874431,.937156,-.200869,.298698,.902922,.943861,-.188387,.273491,.931356,.949557,-.174341,.247866,.958854,.955862,-.158994,.222496,.986098,.961721,-.143664,.197522,1.01229,.965976,-.127412,.17302,1.03571,.968652,-.109798,.148954,1.05699,.971084,-.0916787,.125044,1.07587,.975584,-.0739634,.100577,1.09372,.98122,-.055322,.0753666,1.10948,.988253,-.0366825,.0498899,1.12394,.99482,-.0180389,.024611,1.13694,1.00001,229839e-9,-188283e-9,1.14919,.613867,-964198e-11,.479449,123452e-10,.621485,-244534e-9,.485399,313091e-9,.621429,-978202e-9,.485353,.00125245,.62112,-.00220004,.485114,.00281687,.621119,-.0039111,.485112,.00500783,.621122,-.00611091,.485112,.00782498,.621133,-.00879922,.485117,.0112687,.621152,-.0119756,.485125,.0153394,.621183,-.0156396,.485139,.0200382,.621227,-.0197898,.485158,.0253663,.621298,-.0244253,.485192,.0313261,.621388,-.0295441,.485233,.0379204,.621507,-.0351432,.485286,.0451523,.621693,-.0412198,.485378,.0530277,.621933,-.0477673,.485495,.0615522,.622232,-.0547574,.485635,.0707316,.622809,-.0619417,.485943,.0805883,.623407,-.069625,.486232,.0911267,.62406,-.077796,.486516,.102354,.624835,-.0863731,.486838,.114279,.625758,-.095251,.487188,.126902,.627043,-.104299,.487695,.140285,.628438,-.113724,.488163,.154397,.630325,-.123417,.488858,.169267,.632801,-.133137,.489754,.184941,.635784,-.143052,.490815,.20136,.639406,-.153132,.492048,.218643,.643872,-.163143,.49363,.236615,.6499,-.17333,.496009,.255449,.657201,-.183622,.498994,.275006,.666221,-.194019,.502888,.295354,.674419,-.204192,.505459,.316244,.683729,-.21406,.507771,.33849,.695584,-.222854,.510245,.363166,.708583,-.231315,.512293,.389071,.721233,-.238911,.512747,.415737,.735134,-.245657,.512482,.443331,.750179,-.251879,.511526,.471891,.765073,-.256911,.508935,.500892,.779794,-.261144,.504341,.530294,.794801,-.264316,.498515,.560144,.810339,-.266276,.491015,.590213,.824818,-.266981,.481126,.620865,.839375,-.265778,.468685,.652687,.853043,-.262748,.453925,.684759,.867335,-.258474,.437912,.716209,.88037,-.253187,.419648,.747508,.891711,-.246476,.39982,.77797,.902896,-.238735,.37879,.808586,.913601,-.22885,.355891,.838843,.923019,-.217656,.331773,.869014,.933432,-.205539,.307356,.898512,.939691,-.192595,.281321,.9269,.946938,-.178945,.255441,.955297,.952372,-.163587,.229013,.983231,.95909,-.147214,.203179,1.00971,.963675,-.13064,.17792,1.03438,.968247,-.113121,.152898,1.05625,.97001,-.0945824,.128712,1.07598,.974458,-.0755648,.103349,1.094,.980168,-.0571998,.0776731,1.1104,.987295,-.0377994,.0514445,1.12491,.994432,-.0186417,.025429,1.13851,.999975,542714e-9,-282356e-9,1.15108,.592656,-980249e-11,.486018,119532e-10,.598467,-247275e-9,.490781,301531e-9,.597934,-988317e-9,.490343,.00120517,.597903,-.00222366,.490319,.0027116,.597913,-.00395315,.490327,.00482077,.597919,-.00617653,.490329,.00753264,.597936,-.00889375,.490339,.0108478,.597956,-.0121043,.490347,.0147668,.597992,-.0158073,.490365,.0192905,.598032,-.0200017,.490382,.0244204,.598109,-.0246865,.49042,.0301593,.598215,-.0298594,.490474,.03651,.59833,-.0355167,.490524,.0434757,.598525,-.0416559,.490624,.0510629,.598778,-.0482692,.490753,.0592781,.599135,-.0553114,.49094,.0681304,.599802,-.062542,.491328,.0776467,.600361,-.0703638,.491598,.0878184,.60101,-.0786256,.491882,.0986573,.601811,-.0872962,.492232,.11018,.602861,-.0962284,.492684,.1224,.604167,-.10538,.493213,.135354,.605693,-.114896,.493799,.149034,.607682,-.124654,.494576,.163469,.610672,-.13456,.4959,.178747,.613313,-.144581,.496713,.194723,.617603,-.154703,.498499,.211617,.622174,-.16489,.500188,.229183,.628855,-.175164,.503072,.247786,.636963,-.185565,.506798,.267116,.644866,-.195911,.509719,.28702,.653741,-.206104,.512776,.307763,.664942,-.216447,.516812,.329631,.67633,-.22552,.519181,.353515,.690012,-.234316,.521681,.379226,.704243,-.242032,.523129,.405901,.719396,-.249172,.523768,.433585,.734471,-.255543,.522541,.462085,.750539,-.260697,.520217,.491233,.766365,-.26501,.516293,.521094,.781677,-.268409,.509708,.551014,.797132,-.270399,.501944,.581463,.812655,-.271247,.492025,.612402,.828592,-.270708,.480424,.643798,.844044,-.268085,.465955,.67682,.857305,-.263459,.448425,.708496,.87114,-.258151,.430243,.74046,.884936,-.251171,.410578,.771583,.895772,-.243305,.38862,.802234,.906961,-.234037,.365214,.833179,.917775,-.222714,.34116,.86353,.927883,-.210175,.31572,.893557,.936617,-.196925,.289159,.922976,.943384,-.182788,.261996,.951606,.949713,-.167965,.235324,.979958,.955818,-.151109,.208408,1.00765,.961344,-.133834,.182591,1.03329,.965469,-.115987,.156958,1.0557,.968693,-.09746,.132239,1.07583,.973165,-.0778514,.106195,1.09451,.979387,-.0585067,.0797669,1.11137,.98671,-.0390409,.0530263,1.12643,.994093,-.019408,.0263163,1.14016,1.00002,540029e-9,-194487e-9,1.15299,.574483,-989066e-11,.494533,114896e-10,.574478,-249127e-9,.494528,289403e-9,.574607,-996811e-9,.494637,.00115797,.574396,-.00224241,.494458,.00260498,.574377,-.00398632,.49444,.00463102,.574386,-.00622836,.494445,.00723623,.574401,-.0089683,.494453,.010421,.574419,-.0122056,.49446,.0141859,.574459,-.0159396,.494481,.0185322,.574525,-.0201692,.49452,.0234617,.574587,-.0248924,.494547,.0289762,.574697,-.0301074,.494604,.0350797,.574853,-.0358114,.494688,.0417767,.575027,-.041999,.494772,.0490718,.575294,-.0486618,.494915,.0569728,.575733,-.0557148,.495173,.0654955,.576356,-.0630489,.495537,.0746612,.576944,-.0709285,.495836,.0844615,.57765,-.0792723,.496177,.0949142,.578491,-.0880167,.496563,.10603,.579639,-.0969462,.497096,.117841,.580989,-.10622,.497684,.130367,.582587,-.115861,.498337,.143609,.584951,-.125605,.499414,.157625,.587602,-.135608,.500518,.172413,.59076,-.145742,.501767,.187999,.594992,-.155934,.503542,.20445,.600656,-.166303,.506135,.221764,.607816,-.176681,.509542,.24002,.61522,-.187071,.51263,.258992,.623702,-.197465,.516021,.278773,.634192,-.207816,.520422,.299377,.644936,-.218183,.524073,.320802,.657888,-.2278,.528049,.34384,.670666,-.236747,.52986,.36916,.685626,-.24484,.531892,.395867,.701304,-.252071,.532727,.423488,.717727,-.258714,.532146,.452201,.733914,-.264211,.529883,.481579,.750529,-.26859,.5259,.511558,.76747,-.272046,.51999,.542042,.785189,-.274225,.513083,.572799,.800954,-.275189,.502936,.603816,.816962,-.274946,.490921,.635461,.83336,-.272695,.47684,.6676,.848143,-.268223,.459405,.70051,.861818,-.262768,.440319,.732902,.876828,-.255872,.420123,.765084,.889312,-.247703,.398379,.796391,.900412,-.238381,.374496,.827333,.912251,-.227783,.349874,.858385,.921792,-.214832,.323181,.888652,.931273,-.200949,.296624,.917763,.940295,-.186537,.269211,.947878,.946812,-.171538,.241447,.977016,.953588,-.155254,.213829,1.00501,.958841,-.137156,.186807,1.03179,.963746,-.118699,.160706,1.05502,.966468,-.0998358,.135504,1.07568,.971178,-.0805186,.109131,1.09479,.97831,-.0599348,.0818293,1.1123,.985886,-.0399661,.0545872,1.12771,.994021,-.0198682,.0269405,1.14186,1.00009,271022e-9,-12989e-8,1.15514,.538716,-990918e-11,.486732,109675e-10,.550656,-250642e-9,.497518,277412e-9,.55057,-.00100265,.497441,.00110974,.550903,-.00225672,.497733,.00249779,.550568,-.00401046,.497438,.00443906,.550574,-.00626613,.49744,.00693637,.550591,-.0090226,.497449,.00998921,.550623,-.0122795,.497469,.0135984,.550667,-.0160361,.497495,.0177654,.550724,-.0202908,.497526,.0224915,.550792,-.0250421,.497557,.0277795,.550918,-.0302878,.49763,.0336334,.551058,-.0360241,.497701,.0400573,.551276,-.0422473,.497824,.0470585,.551551,-.0489441,.497977,.0546433,.552074,-.0559596,.498312,.0628367,.552681,-.0633978,.498679,.071646,.553324,-.0713176,.499031,.0810746,.554011,-.0797268,.499365,.091129,.55488,-.0885238,.499779,.101837,.556171,-.0974417,.500444,.113239,.557498,-.106841,.501025,.125316,.559299,-.116533,.501864,.138128,.561647,-.126298,.502967,.151695,.564347,-.136388,.504129,.16604,.567863,-.146576,.505713,.181207,.572569,-.156832,.507953,.197259,.578919,-.167323,.511186,.214258,.585387,-.177712,.514042,.232038,.593134,-.188184,.517484,.250733,.603295,-.198717,.522345,.270454,.613854,-.209177,.526751,.290807,.626092,-.219644,.531595,.312202,.637868,-.229494,.534721,.334435,.652458,-.238718,.538304,.359184,.666985,-.247061,.539875,.385637,.683301,-.254652,.541042,.41328,.69998,-.261376,.540735,.441903,.717824,-.267085,.539139,.471609,.734617,-.271465,.534958,.501446,.753663,-.27528,.53032,.532571,.770512,-.277617,.522134,.563641,.787356,-.278525,.51206,.595067,.806252,-.278512,.50119,.627226,.822061,-.277023,.486791,.659402,.838959,-.273175,.470467,.692874,.85379,-.267238,.450688,.725702,.868268,-.260327,.429741,.75832,.881994,-.251946,.407223,.790189,.893885,-.242432,.383214,.821625,.905118,-.231904,.357297,.853011,.916045,-.219545,.330733,.883773,.927614,-.205378,.303916,.914435,.936005,-.190388,.275941,.944502,.944533,-.1749,.247493,.974439,.950758,-.158588,.218996,1.00286,.957078,-.141027,.191559,1.0304,.962448,-.121507,.164457,1.05466,.964993,-.102068,.138636,1.0761,.970017,-.0822598,.111861,1.09541,.97661,-.062033,.0843438,1.11317,.985073,-.0409832,.0558496,1.12911,.993515,-.020146,.0275331,1.1438,1.00006,27329e-8,-107883e-9,1.15736,.525324,-999341e-11,.498153,105385e-10,.526513,-251605e-9,.499277,265329e-9,.526517,-.00100641,.499282,.0010613,.526588,-.00226466,.499337,.00238823,.526539,-.0040255,.499302,.00424535,.526547,-.00628954,.499306,.00663364,.526561,-.00905628,.499313,.00955337,.526593,-.0123253,.499334,.0130054,.526642,-.0160957,.499365,.0169911,.5267,-.0203661,.499396,.0215122,.526792,-.0251347,.499451,.0265718,.526904,-.0303985,.499511,.0321732,.527079,-.0361554,.499617,.0383231,.527285,-.0423982,.499731,.045026,.527602,-.0491121,.499924,.0522936,.528166,-.0561127,.500306,.0601528,.52879,-.0635988,.5007,.0686059,.529421,-.071581,.501048,.0776518,.530144,-.0799854,.501421,.0873148,.531062,-.0888032,.501884,.0976084,.532374,-.0977643,.50259,.108588,.533828,-.107197,.50329,.120234,.53581,-.116887,.504312,.132602,.538063,-.126755,.505365,.145721,.5409,-.136819,.506668,.159617,.544882,-.147117,.508731,.174369,.550238,-.157446,.511601,.190028,.556038,-.167988,.514431,.206587,.563031,-.178364,.517808,.224046,.571543,-.189007,.521937,.242503,.582255,-.199546,.527415,.261977,.59272,-.210084,.531682,.282162,.605648,-.220448,.537123,.303426,.61785,-.230593,.540664,.325323,.632223,-.240238,.544467,.348993,.648819,-.24887,.547594,.375462,.665825,-.256657,.54912,.403024,.683389,-.263711,.549294,.431773,.701495,-.269666,.547649,.461494,.719197,-.274169,.543786,.491623,.737906,-.278124,.538644,.522994,.756652,-.280632,.531057,.554775,.775279,-.281741,.521972,.586441,.792688,-.281652,.509613,.618596,.811894,-.280345,.496497,.651462,.827938,-.277128,.47968,.684023,.844837,-.271646,.460688,.718024,.859239,-.264397,.438872,.751207,.874088,-.256144,.41577,.784232,.887693,-.246311,.391369,.816191,.899402,-.235497,.365872,.847828,.910973,-.223631,.338618,.87934,.92204,-.209874,.310803,.910325,.930987,-.194265,.281802,.940695,.94,-.178125,.252836,.970958,.948018,-.161479,.224239,1.00078,.955141,-.144038,.195857,1.0288,.960513,-.124915,.168487,1.05371,.963964,-.104284,.141495,1.07596,.968713,-.0838732,.114437,1.09628,.975524,-.0635579,.0863105,1.11448,.98431,-.042291,.0574774,1.13069,.992916,-.0209131,.0284343,1.14568,.999926,743097e-9,-379265e-9,1.15955,.501042,-998428e-11,.498726,100306e-10,.502992,-252112e-9,.500665,253283e-9,.502417,-.00100791,.500092,.00101259,.502965,-.00226919,.500621,.00227978,.502318,-.00403109,.499994,.00405011,.502333,-.00629832,.500005,.00632868,.502362,-.00906907,.500027,.00911446,.502369,-.0123423,.500023,.0124078,.50243,-.0161178,.500066,.016211,.502493,-.0203937,.500103,.0205256,.502592,-.0251684,.500166,.0253548,.502707,-.0304389,.50023,.0307029,.502881,-.0362015,.500335,.0365753,.503124,-.0424507,.500488,.0429798,.503443,-.0491582,.500686,.0499268,.504083,-.0561476,.501155,.0574541,.504668,-.0636846,.501524,.0655408,.505319,-.0716834,.501904,.0742072,.50609,-.0800925,.502321,.0834699,.507122,-.0888425,.502896,.0933603,.508414,-.097855,.503603,.10391,.509955,-.107304,.504416,.115113,.512061,-.116921,.505565,.127054,.514419,-.12689,.506732,.139709,.517529,-.136934,.508338,.153173,.522085,-.147327,.510987,.167528,.526986,-.157612,.513527,.182708,.533122,-.168213,.516717,.198881,.540807,-.178688,.520832,.215986,.550687,-.189511,.52632,.234335,.560567,-.199998,.531009,.253375,.571698,-.210652,.535839,.273499,.584364,-.220917,.541091,.294355,.599066,-.23137,.546875,.316525,.614148,-.241206,.551306,.339671,.631157,-.250379,.555187,.36531,.647919,-.258397,.556595,.392767,.666112,-.265528,.556949,.421397,.686158,-.271827,.556617,.451433,.704838,-.27674,.552975,.482131,.723957,-.280733,.547814,.513458,.74262,-.283359,.53997,.545446,.762009,-.284541,.530422,.57775,.781314,-.284507,.518546,.610434,.799116,-.283309,.504178,.643178,.817604,-.280378,.48843,.676248,.83459,-.275619,.469457,.709698,.850974,-.26856,.447698,.744245,.866747,-.260094,.424791,.777695,.881412,-.249929,.399913,.810392,.8936,-.239137,.37308,.842872,.905943,-.226818,.345705,.874677,.916408,-.213699,.31706,.906257,.927215,-.198428,.288444,.936881,.935625,-.181643,.258329,.96795,.944076,-.164386,.228488,.998216,.951229,-.146339,.199763,1.02689,.958793,-.127709,.172153,1.0535,.963219,-.107244,.144989,1.07646,.967562,-.0857764,.11685,1.09675,.974866,-.0645377,.0880571,1.11576,.983353,-.0431732,.0587352,1.13227,.992503,-.0218356,.0294181,1.1478,1.00003,605203e-9,-231013e-9,1.16207,.482935,-101177e-10,.504695,968142e-11,.477554,-251521e-9,.499071,240676e-9,.477904,-.00100683,.499436,96342e-8,.478368,-.00226636,.499899,.0021687,.477977,-.00402719,.499513,.00385384,.477993,-.00629226,.499525,.0060221,.478011,-.00906011,.499536,.00867289,.478051,-.0123305,.499566,.0118074,.478089,-.016102,.499587,.0154269,.478171,-.0203736,.499645,.0195341,.478254,-.025143,.499692,.0241318,.47839,-.0304071,.499779,.0292247,.478588,-.0361631,.499911,.0348196,.478812,-.0424023,.500046,.0409231,.479208,-.0490724,.500326,.047552,.479841,-.0560722,.500805,.0547377,.480392,-.0636125,.501152,.0624607,.481068,-.0716134,.501561,.0707473,.481898,-.0800062,.502054,.0796118,.483022,-.0886568,.502728,.0890974,.484332,-.0977553,.503479,.0992099,.486126,-.107173,.504546,.10999,.488066,-.11677,.50557,.121476,.490521,-.126725,.506849,.133672,.494232,-.136793,.50911,.146731,.498302,-.147116,.511345,.160577,.503565,-.157446,.514344,.175335,.510902,-.168121,.518824,.191207,.519263,-.178799,.523666,.208058,.528204,-.189407,.528296,.225875,.538854,-.200145,.533724,.244782,.551278,-.210701,.539833,.264753,.565222,-.221303,.546131,.285745,.579403,-.231688,.551496,.307592,.595469,-.241718,.556809,.330582,.610929,-.250992,.559641,.354995,.629433,-.259602,.562379,.382471,.648504,-.267038,.563676,.411126,.66756,-.273388,.562092,.440924,.689143,-.278788,.560807,.472118,.709056,-.282783,.555701,.503774,.729855,-.285836,.548698,.536364,.748954,-.287078,.538544,.56895,.768373,-.287133,.526711,.601991,.78827,-.285839,.512511,.635403,.807465,-.283238,.496323,.668797,.825194,-.27906,.477638,.702584,.842203,-.272286,.456253,.736393,.857749,-.263854,.432412,.77096,.874799,-.253943,.407806,.80489,.887497,-.24237,.38033,.83771,.89966,-.230278,.352446,.870376,.911753,-.21646,.323268,.902256,.923011,-.202071,.294314,.933306,.932375,-.185519,.264104,.965177,.940537,-.167604,.234035,.996303,.948904,-.149068,.20412,1.0261,.955263,-.129539,.175431,1.05304,.960303,-.109932,.148116,1.07617,.965512,-.0880572,.119693,1.09742,.973466,-.0660548,.0901619,1.11721,.98284,-.0439228,.0599875,1.13436,.992216,-.0219588,.0298975,1.15006,.999946,119402e-9,-208547e-10,1.16471,.447827,-100414e-10,.491543,914833e-11,.454778,-251257e-9,.499172,22891e-8,.453519,-.00100342,.497787,914184e-9,.45357,-.00225776,.497847,.00205701,.453578,-.00401371,.497855,.00365705,.45357,-.00627107,.497841,.00571453,.453598,-.00902968,.497864,.00823019,.453627,-.0122888,.497882,.0112049,.453684,-.0160475,.497923,.0146405,.453764,-.0203044,.49798,.0185394,.453866,-.0250576,.498049,.0229054,.453996,-.0303028,.49813,.0277424,.454196,-.0360379,.498267,.0330587,.454457,-.0422521,.498445,.0388613,.454926,-.0488393,.498812,.0451767,.455525,-.0558653,.499272,.0520153,.456074,-.0633772,.499625,.0593754,.456752,-.0713606,.500049,.0672751,.457648,-.07971,.500615,.0757447,.458849,-.0883032,.501399,.0848231,.46029,-.0974095,.502293,.0945135,.462,-.106729,.503301,.104848,.464121,-.116354,.504533,.115884,.466889,-.126214,.506172,.127652,.470744,-.136324,.508667,.14024,.47488,-.146595,.510995,.153673,.480845,-.157027,.514832,.168053,.488262,-.167658,.519506,.183508,.496547,-.178343,.524347,.199948,.506254,-.188916,.52983,.217503,.517961,-.199975,.536357,.236272,.531484,-.210624,.543641,.256096,.545496,-.221227,.550048,.277085,.559497,-.231568,.555076,.298615,.575752,-.241698,.560541,.321547,.591999,-.251172,.564156,.345602,.610654,-.260178,.567607,.371851,.630484,-.268094,.56923,.40076,.651807,-.274661,.569779,.430801,.67239,-.280331,.566791,.461939,.693024,-.284501,.562007,.493854,.715473,-.287852,.555791,.526992,.736323,-.28929,.546345,.560102,.755771,-.289405,.534,.593543,.775424,-.2881,.519114,.627256,.795447,-.285562,.502543,.661464,.815319,-.281416,.484773,.695206,.831769,-.275523,.463445,.729044,.849464,-.267516,.440269,.764069,.866775,-.257584,.415049,.799089,.881252,-.245817,.388049,.831948,.894209,-.233127,.35889,.865526,.906922,-.219579,.329915,.89818,.919686,-.204491,.300441,.930013,.929044,-.188962,.269445,.962061,.938393,-.171079,.238402,.994214,.94661,-.15199,.208204,1.02533,.953095,-.131953,.178653,1.0529,.958644,-.111233,.150684,1.0771,.963925,-.0903098,.122359,1.09855,.971995,-.0680505,.0923342,1.11874,.981658,-.0448512,.0614195,1.13635,.991649,-.0221931,.0303582,1.15238,.999985,393403e-9,-111086e-9,1.16772,.396806,-971563e-11,.457671,842355e-11,.429186,-249421e-9,.495017,21625e-8,.429324,-998052e-9,.495173,865322e-9,.429175,-.00224487,.494999,.00194637,.429129,-.00399041,.494952,.00346004,.429153,-.00623476,.494974,.00540684,.429168,-.0089773,.494983,.00778714,.429207,-.0122175,.495012,.0106022,.429257,-.0159542,.495047,.0138535,.429338,-.0201864,.495106,.0175443,.429431,-.0249104,.495165,.0216774,.429587,-.0301252,.495279,.0262594,.429796,-.0358249,.495432,.0312968,.430065,-.0419972,.495621,.0367985,.430588,-.0485144,.496061,.042798,.43113,-.0555028,.496472,.0492914,.431743,-.0629852,.496904,.0562907,.432448,-.0709256,.497369,.0638056,.433414,-.0791942,.498032,.071885,.434638,-.0877346,.498854,.0805517,.43611,-.0968056,.499812,.0898047,.437859,-.106002,.500891,.0997142,.440017,-.115648,.502198,.110289,.443236,-.125427,.504389,.121644,.44697,-.135492,.506809,.133769,.451689,-.145746,.509858,.146787,.45811,-.156219,.514247,.160793,.465305,-.166834,.518816,.175791,.474085,-.177546,.524331,.191906,.484808,-.188262,.53104,.209199,.49732,-.199346,.538511,.227825,.509693,-.209951,.544554,.247269,.524367,-.220533,.551616,.267978,.539228,-.231082,.557368,.289672,.55644,-.241342,.563782,.31268,.574204,-.250964,.568851,.33651,.593388,-.260306,.57312,.362219,.613358,-.268667,.574916,.390322,.634512,-.275591,.575053,.420478,.65563,-.281328,.572404,.451614,.678265,-.285948,.568893,.484112,.70011,-.289408,.561878,.517348,.723005,-.291328,.55359,.551355,.743744,-.291418,.541099,.585109,.763949,-.290252,.526489,.619487,.784186,-.287648,.509496,.65404,.804304,-.283782,.491484,.688649,.823629,-.278067,.470517,.723133,.84094,-.270588,.44705,.757163,.857852,-.261188,.421252,.792816,.874934,-.249313,.394191,.827248,.888709,-.236492,.365359,.861074,.902589,-.222185,.336016,.894417,.914201,-.207314,.30527,.926825,.925978,-.191146,.274532,.9595,.93512,-.174135,.243393,.991583,.943656,-.155231,.212414,1.02356,.951719,-.134403,.182005,1.05239,.957164,-.113023,.153043,1.07754,.962656,-.0914493,.124186,1.09984,.970695,-.0694179,.0941654,1.12,.980749,-.0466199,.0629671,1.13849,.991205,-.0227032,.0311146,1.15494,.999884,632388e-9,-254483e-9,1.1706,.379821,-957289e-11,.460637,789337e-11,.405188,-247483e-9,.491396,204064e-9,.404796,-989434e-9,.490914,815853e-9,.40483,-.00222607,.490949,.00183559,.40473,-.00395723,.49084,.00326332,.404731,-.00618287,.490836,.00509945,.404768,-.00890258,.490871,.00734463,.404791,-.0121156,.490883,.00999992,.404857,-.0158214,.490938,.0130676,.404943,-.0200178,.491004,.0165503,.405059,-.0247027,.491093,.0204521,.405213,-.0298729,.491205,.0247788,.405399,-.0355226,.491333,.0295373,.405731,-.0416352,.491604,.034741,.406303,-.0480807,.492116,.0404255,.406814,-.0550458,.492506,.0465732,.407404,-.0624652,.492926,.0532058,.408149,-.0702958,.493442,.0603442,.409128,-.0784623,.494136,.0680297,.410408,-.087007,.495054,.0762786,.411813,-.0959639,.495962,.0851046,.413735,-.105075,.497257,.0945878,.416137,-.114646,.498882,.104725,.41934,-.124394,.501132,.11563,.423326,-.134328,.503883,.127325,.428419,-.14458,.50747,.139911,.43484,-.154979,.511964,.153481,.442641,-.165628,.517328,.168114,.452511,-.176365,.524258,.183995,.463473,-.187298,.531248,.200953,.475564,-.198244,.538367,.219176,.488664,-.208938,.545175,.238514,.504073,-.219599,.553227,.259129,.520832,-.230378,.560653,.280997,.538455,-.240703,.567523,.303821,.55709,-.250548,.573287,.327948,.576646,-.259964,.577795,.353362,.596705,-.268721,.580077,.380336,.618053,-.276054,.58018,.4101,.640303,-.282176,.578747,.44161,.662365,-.286931,.574294,.474106,.684542,-.290521,.567035,.507549,.707984,-.292672,.558687,.541853,.730913,-.293189,.547606,.576581,.752948,-.292199,.533471,.61172,.773452,-.289508,.516395,.646339,.794715,-.285716,.497873,.682131,.814251,-.280051,.476845,.716396,.833057,-.272873,.453449,.751503,.84959,-.263982,.427857,.786085,.867022,-.252745,.400335,.821355,.882277,-.239655,.371304,.85646,.895375,-.225386,.340397,.890828,.909347,-.209587,.310005,.923532,.921885,-.193433,.2796,.956419,.932127,-.176135,.247276,.989445,.941869,-.157872,.216186,1.02221,.949735,-.137577,.185602,1.05195,.956617,-.115285,.155767,1.07822,.961974,-.0928418,.126103,1.10149,.96972,-.0700592,.0956758,1.12207,.98012,-.0474671,.0643269,1.1408,.990825,-.0238113,.0320863,1.1577,.999876,381574e-9,-812203e-10,1.17403,.367636,-961342e-11,.469176,753287e-11,.380377,-244772e-9,.485434,191797e-9,.380416,-978857e-9,.485475,767015e-9,.380376,-.00220165,.485435,.00172522,.380419,-.00391408,.485487,.00306734,.380438,-.00611549,.485505,.00479332,.380462,-.00880558,.485525,.00690391,.380496,-.0119837,.485551,.00940039,.38056,-.0156487,.485605,.0122848,.38064,-.0197988,.485666,.0155601,.380767,-.0244324,.48577,.0192313,.380909,-.0295444,.485871,.0233032,.381142,-.0351321,.48606,.0277861,.381472,-.0411535,.486336,.0326939,.382015,-.0475408,.486833,.0380565,.382523,-.0544395,.487231,.0438615,.383129,-.061784,.487683,.0501332,.383952,-.0695085,.488313,.0568996,.38498,-.0775819,.489077,.0641952,.386331,-.0860443,.490113,.0720324,.387788,-.0948406,.491099,.0804379,.389808,-.103899,.492566,.0894899,.39252,-.113313,.494601,.0992098,.395493,-.123007,.496619,.109641,.399826,-.132859,.499912,.120919,.405341,-.143077,.504061,.133107,.411932,-.153465,.508905,.146263,.420591,-.164108,.515482,.160544,.43101,-.174893,.523191,.176123,.441881,-.185839,.53026,.192757,.453919,-.196633,.537295,.210535,.468715,-.207611,.546156,.229886,.485182,-.218517,.555173,.250543,.501926,-.229249,.562728,.27221,.51785,-.239481,.567494,.294892,.536947,-.249395,.573889,.318987,.557115,-.259,.578831,.344348,.577966,-.268075,.582055,.371223,.599489,-.276115,.583307,.399834,.62479,-.282523,.583902,.431415,.647504,-.287663,.57953,.464301,.670601,-.291538,.573103,.498123,.693539,-.293842,.563731,.532662,.717385,-.294681,.553169,.567925,.741533,-.293717,.539908,.603502,.762142,-.291156,.521902,.639074,.783014,-.28719,.502815,.674439,.805158,-.281773,.482598,.710497,.823646,-.274682,.458949,.7456,.841879,-.266184,.433129,.781085,.859515,-.255682,.406064,.816,.875335,-.242849,.376509,.851074,.890147,-.228329,.345502,.886473,.903144,-.212491,.31428,.920751,.916618,-.195695,.282994,.954606,.927953,-.178267,.251091,.988402,.937414,-.159549,.219107,1.02141,.946823,-.140022,.18896,1.05167,.954651,-.118154,.158667,1.07819,.959955,-.0946636,.128808,1.1025,.96858,-.0711792,.0973787,1.12391,.97938,-.0475046,.0650965,1.14322,.990498,-.024059,.0326267,1.16077,.999844,-512408e-10,112444e-9,1.17727,.316912,-934977e-11,.425996,695559e-11,.356423,-241372e-9,.479108,179562e-9,.356272,-965292e-9,.478897,71811e-8,.356262,-.00217182,.478894,.00161574,.356265,-.00386092,.478895,.00287261,.356278,-.0060324,.478905,.00448907,.356293,-.00868565,.478914,.00646572,.356346,-.0118207,.478965,.00880438,.356395,-.0154355,.479001,.0115066,.356484,-.019529,.479075,.0145762,.356609,-.0240991,.47918,.018018,.356766,-.0291413,.479305,.0218379,.357009,-.0346498,.479512,.0260454,.357424,-.0405462,.479909,.0306657,.357899,-.0468825,.480337,.0357054,.358424,-.0536887,.480771,.0411728,.359041,-.0609416,.481242,.0470841,.359903,-.0685239,.481943,.0534831,.360932,-.0764883,.482741,.0603795,.362196,-.0848364,.483688,.0678028,.363847,-.0935002,.484947,.0758086,.365972,-.102471,.486588,.0844173,.368741,-.111751,.488787,.0937199,.372146,-.121334,.491405,.103732,.377114,-.131147,.495604,.114608,.38226,-.141213,.499436,.126345,.389609,-.151632,.505334,.139116,.397925,-.162073,.51168,.152995,.407824,-.172819,.518876,.168071,.420014,-.183929,.527639,.184495,.434266,-.195032,.537588,.20232,.447352,-.205792,.544379,.221189,.463726,-.216704,.553422,.241616,.481406,-.227531,.562074,.263298,.498707,-.238017,.568227,.286116,.518039,-.247936,.574473,.3101,.538277,-.257437,.579191,.335401,.561166,-.266829,.584807,.362246,.583189,-.275329,.586476,.390609,.606024,-.28234,.585578,.420998,.632419,-.287924,.584496,.454357,.656128,-.291972,.577766,.488233,.679953,-.29456,.56875,.523248,.704654,-.295816,.558388,.559168,.729016,-.295157,.544826,.595326,.752062,-.292779,.528273,.631864,.773138,-.288681,.508482,.667793,.794869,-.283358,.487341,.704035,.815101,-.27608,.46354,.739925,.834212,-.26767,.438672,.775539,.852368,-.257397,.411239,.810895,.870207,-.245689,.3829,.846472,.884063,-.231452,.351496,.881788,.898284,-.215561,.31895,.917438,.912964,-.198208,.287367,.952422,.924666,-.180426,.254487,.987551,.934429,-.161525,.222226,1.02142,.943485,-.141197,.191143,1.05218,.9521,-.120085,.161112,1.07937,.957876,-.0975881,.130982,1.10403,.966943,-.0726842,.0990553,1.12616,.978313,-.0483705,.0662818,1.14619,.990048,-.0239072,.0329243,1.16413,.999984,461885e-9,-772859e-10,1.18099,.321287,-935049e-11,.455413,659662e-11,.332595,-237513e-9,.471437,167562e-9,.332729,-949964e-9,.471618,670192e-9,.332305,-.00213618,.471028,.00150712,.332326,-.00379765,.471055,.00267959,.332344,-.00593353,.471072,.00418751,.332356,-.00854349,.471077,.00603172,.332403,-.0116268,.471121,.00821362,.332461,-.0151824,.47117,.0107357,.332552,-.0192088,.471251,.0136014,.332657,-.0237024,.47133,.0168152,.332835,-.0286615,.471487,.0203853,.333083,-.0340765,.471708,.0243212,.333547,-.0398563,.47219,.0286518,.333989,-.0460916,.472587,.0333763,.334532,-.0527897,.473054,.0385084,.335167,-.0599284,.473568,.0440638,.33608,-.0673514,.474362,.0500962,.337146,-.0752237,.475231,.0566022,.338462,-.083418,.476282,.0636272,.34014,-.0919382,.477615,.0712153,.342341,-.100741,.479404,.079417,.345088,-.109905,.481618,.0882631,.349049,-.119369,.485081,.0978851,.353939,-.129033,.489317,.108336,.359893,-.139038,.494309,.119698,.366945,-.149411,.499983,.132024,.375814,-.159843,.507185,.145558,.387112,-.170664,.516392,.160433,.40023,-.181897,.526519,.176648,.412555,-.192785,.53423,.193922,.427023,-.203663,.542741,.212662,.443685,-.214695,.552066,.232944,.461499,-.225561,.560762,.254495,.480975,-.236257,.569421,.277531,.501,-.24639,.576101,.301724,.521691,-.256101,.581493,.327112,.543478,-.265289,.585221,.353917,.566094,-.273938,.587614,.381941,.589578,-.281679,.587991,.41172,.614583,-.287655,.585928,.444148,.641813,-.292228,.582092,.478617,.666189,-.295172,.57398,.51397,.690475,-.29648,.561676,.550118,.715543,-.296203,.548758,.586933,.740405,-.293999,.532792,.62384,.762183,-.28998,.512735,.660723,.786069,-.28478,.492402,.69807,.806812,-.277568,.469058,.734422,.826987,-.268951,.443017,.770946,.844588,-.259049,.415501,.80699,.863725,-.2471,.387328,.842107,.879137,-.234157,.356108,.878078,.894634,-.218719,.324315,.914058,.909162,-.201293,.291813,.949922,.92072,-.18267,.258474,.985337,.93158,-.163212,.225593,1.0205,.941238,-.142771,.193986,1.05273,.949293,-.120956,.163392,1.08075,.956226,-.0985743,.132934,1.10559,.96546,-.075118,.101255,1.12823,.977403,-.0497921,.0675441,1.149,.989648,-.0241574,.0334681,1.16765,1.00001,5762e-7,-184807e-9,1.18519,.303474,-916603e-11,.4542,61243e-10,.308894,-232869e-9,.462306,155592e-9,.309426,-931661e-9,.463093,622499e-9,.308643,-.0020949,.461933,.00139979,.308651,-.0037242,.461941,.00248874,.308662,-.00581873,.46195,.00388933,.308687,-.00837818,.461974,.00560247,.308728,-.0114016,.462011,.00762948,.308789,-.0148884,.462067,.00997326,.308882,-.0188369,.462151,.0126375,.309007,-.0232436,.462263,.0156271,.30918,-.0281054,.462417,.0189498,.309442,-.0334065,.462667,.0226167,.309901,-.0390589,.463162,.0266614,.310331,-.0452042,.463555,.0310715,.310858,-.0517735,.464019,.0358698,.311576,-.0587359,.464669,.0410848,.312436,-.0660383,.465406,.0467453,.313526,-.0737266,.466339,.0528718,.314903,-.0817574,.467504,.0595039,.316814,-.090167,.469226,.0666888,.318965,-.0987555,.470981,.0744658,.322077,-.107792,.473814,.082912,.325947,-.117098,.477241,.0920846,.331008,-.126602,.48184,.102137,.337893,-.136619,.488334,.113135,.345106,-.146838,.494415,.12511,.355111,-.157357,.503275,.138356,.365095,-.167955,.510966,.152686,.378344,-.179157,.521508,.16856,.391599,-.190143,.530455,.18561,.407786,-.20123,.541275,.204308,.425294,-.212456,.551784,.224623,.444021,-.223568,.561493,.246172,.463418,-.234154,.569886,.268979,.484077,-.244546,.577116,.293411,.505513,-.254301,.582914,.318936,.527672,-.263564,.587208,.345856,.550565,-.272332,.589277,.374054,.573656,-.280011,.588426,.403276,.59827,-.286924,.587504,.43474,.624731,-.291994,.583401,.468767,.652396,-.295159,.576997,.504411,.67732,-.296954,.565863,.54114,.703147,-.296877,.552316,.57816,.728715,-.295147,.536773,.616124,.752448,-.291275,.51771,.653885,.775169,-.285905,.496087,.691537,.799307,-.279064,.474232,.729251,.819482,-.270294,.447676,.766267,.837659,-.260032,.419656,.802616,.856903,-.248497,.391328,.838583,.873325,-.235252,.360285,.874711,.889788,-.221126,.329215,.91077,.904486,-.204304,.296392,.94653,.917711,-.185562,.262159,.983828,.928969,-.165635,.229142,1.01955,.939707,-.14442,.19673,1.05317,.948167,-.122147,.165095,1.0823,.955222,-.099098,.13451,1.10791,.964401,-.0755332,.102476,1.1312,.976605,-.0513817,.0689667,1.15218,.989085,-.0258499,.034506,1.17129,.999908,617773e-9,-271268e-9,1.18961,.285803,-905752e-11,.452348,572272e-11,.284689,-22732e-8,.450581,143626e-9,.285263,-910214e-9,.451482,575099e-9,.285302,-.00204784,.451553,.00129395,.285318,-.00364057,.451574,.0023006,.28533,-.00568813,.451585,.00359547,.285361,-.00819001,.451618,.00517934,.285397,-.0111458,.45165,.007054,.285447,-.0145536,.451688,.00922167,.285527,-.0184127,.451758,.0116869,.285688,-.0227207,.451929,.0144555,.28584,-.0274712,.452055,.0175341,.286136,-.0326278,.452369,.0209406,.286574,-.0381792,.452853,.0246965,.287012,-.0441879,.453272,.0287996,.287542,-.0506096,.453752,.033268,.288299,-.0573634,.454488,.0381504,.289186,-.0645458,.455294,.0434447,.290302,-.0720405,.456301,.0491973,.291776,-.0799046,.457648,.0554453,.29372,-.088117,.459483,.0622311,.296052,-.0965328,.461571,.0695992,.299563,-.105409,.465085,.077658,.30335,-.114553,.468506,.0864176,.309167,-.123917,.474423,.0961078,.31529,-.13381,.47995,.106643,.324163,-.144021,.488592,.118322,.333272,-.154382,.496461,.131133,.344224,-.165015,.50562,.145208,.357733,-.176168,.516719,.16073,.373046,-.187468,.528513,.177807,.38788,-.198488,.537713,.196072,.405133,-.209545,.547999,.21605,.423845,-.220724,.55759,.237484,.443777,-.231518,.566246,.26039,.464824,-.242035,.574326,.284835,.486635,-.251898,.58037,.310518,.51012,-.261304,.58568,.337678,.535301,-.270384,.590197,.366242,.559193,-.27841,.590569,.395873,.583544,-.285325,.588161,.426857,.608834,-.291113,.584249,.459477,.635753,-.294882,.57763,.494734,.664367,-.297088,.569479,.532023,.689688,-.297364,.555064,.569629,.715732,-.295949,.539522,.608124,.741307,-.292259,.521613,.646231,.764949,-.287063,.49969,.684938,.788599,-.28012,.476747,.723548,.81048,-.27153,.45116,.761135,.831372,-.261289,.424101,.798916,.850092,-.249559,.39443,.835952,.867777,-.236348,.363849,.871606,.884632,-.221569,.332477,.907843,.90047,-.20618,.300667,.944187,.914524,-.188771,.266552,.981371,.926892,-.168362,.232349,1.01841,.937951,-.146761,.199359,1.05308,.947236,-.123813,.1675,1.0839,.954367,-.099984,.136166,1.11047,.963907,-.0759278,.103808,1.13414,.976218,-.0511367,.0697061,1.15575,.988772,-.0267415,.0352529,1.17531,.999888,-520778e-9,289926e-9,1.19389,.263546,-883274e-11,.441896,526783e-11,.262352,-221849e-9,.439889,132311e-9,.262325,-886683e-9,.439848,528824e-9,.26228,-.00199476,.439765,.00118975,.262372,-.00354671,.439922,.00211568,.26239,-.00554141,.439941,.00330652,.262412,-.00797888,.439961,.00476346,.262453,-.0108584,.440002,.00648818,.262528,-.0141788,.440085,.0084835,.262615,-.017938,.440166,.0107533,.262744,-.0221346,.440291,.0133044,.262939,-.026762,.440493,.0161445,.263277,-.0317573,.440889,.0192974,.26368,-.0371832,.441338,.0227699,.264106,-.0430371,.441753,.0265698,.264624,-.0493035,.442227,.0307178,.265378,-.0558669,.442985,.0352616,.266253,-.0628718,.443795,.0401968,.267478,-.0701569,.445008,.04559,.269062,-.077845,.446599,.0514539,.270926,-.0857941,.448349,.0578382,.273693,-.0940773,.451221,.0648363,.276746,-.102704,.454097,.0724389,.281693,-.111735,.459517,.0808744,.287335,-.121004,.46531,.0901551,.29448,-.130734,.472605,.100371,.30257,-.140777,.480251,.111644,.312465,-.15111,.489444,.124111,.324856,-.16189,.500919,.137979,.33774,-.172946,.511317,.153163,.35255,-.184152,.522684,.169817,.367786,-.19522,.53248,.187886,.385474,-.20632,.543326,.207634,.404976,-.217744,.554109,.229165,.425203,-.228691,.563395,.252068,.446704,-.239299,.571565,.276471,.468951,-.249348,.577935,.302323,.493487,-.258933,.584309,.329882,.517861,-.268009,.58773,.358525,.543309,-.276238,.589612,.388585,.569704,-.28356,.589294,.419787,.594871,-.289497,.585137,.452114,.622555,-.294452,.580356,.486466,.651167,-.296918,.57185,.523079,.677332,-.297647,.558428,.5611,.703718,-.296321,.542232,.599592,.730262,-.293339,.524541,.639138,.754304,-.288036,.502691,.677978,.778051,-.281018,.479212,.716537,.801557,-.272414,.454071,.75586,.822559,-.262419,.425952,.794477,.843051,-.250702,.397313,.832664,.86232,-.237264,.366534,.869876,.879044,-.222716,.334816,.906973,.896362,-.206827,.303143,.943558,.910342,-.189659,.269699,.979759,.924119,-.171108,.236411,1.01718,.935374,-.149579,.202224,1.05289,.944295,-.126295,.16989,1.08496,.952227,-.101511,.138089,1.11256,.962041,-.0766392,.105053,1.1375,.97528,-.0511967,.070329,1.15983,.988476,-.025463,.0351268,1.17987,.999962,286808e-10,145564e-10,1.19901,.227089,-841413e-11,.404216,472707e-11,.239725,-215083e-9,.426708,120833e-9,.239904,-860718e-9,.427028,483555e-9,.239911,-.00193661,.427039,.00108806,.239914,-.00344276,.42704,.00193457,.239933,-.00537907,.427064,.00302363,.239944,-.00774482,.427065,.00435604,.239993,-.01054,.427122,.00593398,.240052,-.0137626,.427179,.00775987,.240148,-.0174115,.427279,.00983854,.240278,-.021484,.42741,.0121763,.240472,-.0259729,.427618,.0147827,.240839,-.0308131,.428086,.0176837,.241201,-.0360893,.428482,.0208775,.241626,-.0417723,.428907,.0243821,.242207,-.0478337,.42952,.0282228,.24298,-.0542199,.430332,.0324333,.243881,-.0610015,.431222,.0370252,.245123,-.0680874,.432512,.0420535,.24667,-.0755482,.434088,.0475414,.248779,-.0832873,.436323,.0535542,.251665,-.0913546,.439509,.0601716,.255305,-.0998489,.443478,.0674282,.260049,-.108576,.448713,.0754673,.266192,-.117754,.455524,.084339,.273158,-.127294,.4627,.0941683,.282131,-.137311,.472068,.10515,.293332,-.147736,.483565,.117402,.304667,-.158357,.493702,.130824,.317785,-.169274,.504708,.145724,.333245,-.180595,.517107,.16215,.349843,-.191892,.528849,.180149,.367944,-.203168,.540301,.199746,.387579,-.214443,.551514,.221047,.408247,-.225624,.560906,.243981,.43014,-.236422,.56959,.268513,.452669,-.24654,.576098,.294409,.476196,-.256157,.580925,.322002,.501157,-.265289,.584839,.351052,.527632,-.273671,.587614,.3812,.555754,-.281254,.589119,.412994,.581682,-.287448,.585204,.445498,.608196,-.292614,.579006,.479505,.635661,-.296068,.571297,.514643,.664999,-.297395,.560855,.552213,.691039,-.296645,.544525,.591365,.7179,-.293785,.526535,.630883,.744059,-.289089,.50545,.670932,.76863,-.282239,.482514,.710904,.793273,-.273688,.457246,.750259,.814731,-.26328,.428872,.78948,.835603,-.251526,.399384,.828597,.85489,-.238339,.368811,.866892,.872828,-.223607,.336617,.90563,.889462,-.207538,.303997,.943538,.904929,-.190297,.270812,.980591,.919101,-.172034,.237453,1.01935,.930536,-.152058,.204431,1.05498,.941223,-.129515,.172495,1.08717,.94982,-.104263,.140175,1.11551,.960592,-.0781944,.106465,1.14098,.974629,-.051688,.0711592,1.16418,.98811,-.0253929,.0354432,1.18465,1.00004,804378e-9,-330876e-9,1.20462,.214668,-821282e-11,.406619,433582e-11,.218053,-208144e-9,.413025,109887e-9,.217987,-832212e-9,.412901,439362e-9,.217971,-.00187246,.412876,988623e-9,.217968,-.00332855,.41286,.00175772,.217985,-.00520055,.412882,.00274729,.218014,-.00748814,.412916,.00395842,.218054,-.0101901,.412957,.00539274,.218106,-.0133057,.413005,.00705348,.218217,-.0168342,.413139,.00894581,.218338,-.0207707,.413258,.0110754,.21855,-.0251001,.413509,.0134551,.218913,-.0297861,.413992,.0161081,.219265,-.0348956,.414383,.0190307,.219696,-.0403909,.414839,.0222458,.220329,-.0462003,.415567,.025792,.220989,-.0524208,.41621,.0296637,.222027,-.058948,.417385,.0339323,.223301,-.0658208,.418779,.0386055,.224988,-.0730347,.420665,.0437355,.227211,-.0805274,.423198,.0493844,.230131,-.088395,.426566,.0556135,.233908,-.0966208,.43091,.0624829,.239092,-.105223,.437148,.0701636,.245315,-.11424,.444302,.0786949,.253166,-.12368,.453262,.0882382,.262374,-.133569,.463211,.0988682,.273145,-.143836,.474271,.110727,.285512,-.154577,.4863,.123945,.299512,-.165501,.498817,.138581,.314287,-.176698,.510341,.154676,.331083,-.188066,.522583,.172459,.349615,-.199597,.534879,.191979,.369318,-.210843,.546083,.21309,.390377,-.222068,.5562,.235998,.412411,-.233059,.564704,.260518,.435715,-.24357,.572314,.286795,.461196,-.253356,.579395,.314559,.485587,-.262362,.581985,.343581,.511908,-.270895,.584347,.374367,.539798,-.278452,.58505,.406015,.567974,-.284877,.583344,.439168,.594303,-.290124,.577348,.473005,.622951,-.294183,.570751,.508534,.652404,-.296389,.561541,.544764,.679291,-.296605,.546426,.582927,.706437,-.294095,.528599,.622681,.734485,-.28978,.508676,.663567,.758841,-.283363,.484768,.704092,.78537,-.275015,.460434,.745101,.807315,-.264689,.432166,.784712,.8271,-.252597,.401807,.824241,.849191,-.239154,.371458,.863803,.867046,-.224451,.338873,.903063,.8852,-.208342,.306175,.942763,.901771,-.190684,.272759,.981559,.915958,-.172105,.239306,1.02048,.928046,-.152214,.206071,1.05765,.939961,-.130247,.17367,1.08999,.948711,-.10672,.142201,1.11829,.959305,-.0808688,.108454,1.14467,.973009,-.0539145,.0728109,1.16839,.987631,-.0262947,.0360625,1.19004,.999978,.00132758,-559424e-9,1.21058,.193925,-793421e-11,.391974,392537e-11,.196746,-200315e-9,.397675,991033e-10,.19667,-801099e-9,.397521,396342e-9,.196633,-.00180246,.397445,891829e-9,.196654,-.00320443,.397482,.00158582,.196659,-.00500647,.39748,.00247867,.196683,-.0072086,.397506,.00357167,.196728,-.00981001,.397562,.00486675,.196792,-.0128096,.397633,.00636707,.19689,-.0162055,.397746,.00807752,.197017,-.0199943,.397884,.0100052,.19729,-.024139,.39827,.0121691,.197583,-.0286671,.398639,.0145755,.197927,-.0335858,.399034,.0172355,.198383,-.0388806,.399554,.0201718,.199002,-.0444736,.400289,.0234194,.199739,-.0504583,.401111,.026984,.200784,-.056729,.402349,.0309217,.202075,-.0633643,.403841,.0352496,.203898,-.0703247,.406076,.0400313,.206199,-.0775565,.408841,.0453282,.209252,-.085184,.41259,.0511794,.213638,-.0931994,.418288,.0577459,.21881,-.101617,.424681,.0650508,.225642,-.11052,.433429,.0732759,.233717,-.119772,.442897,.0824683,.242823,-.129505,.452888,.0927484,.254772,-.139906,.466407,.104417,.266603,-.150402,.477413,.117211,.28073,-.161395,.490519,.131598,.295399,-.172465,.50201,.147407,.312705,-.183982,.515311,.165031,.331335,-.195532,.52786,.184336,.351037,-.206971,.5392,.205361,.372175,-.218117,.54941,.228043,.394548,-.229327,.558642,.25267,.419598,-.240052,.567861,.279071,.443922,-.249937,.573332,.306882,.471495,-.259407,.58013,.33661,.496769,-.267749,.580564,.367328,.524951,-.275524,.581696,.399753,.55318,-.282148,.579885,.433134,.581577,-.287533,.575471,.467534,.609231,-.291612,.567445,.502943,.637478,-.293911,.557657,.53871,.667795,-.295096,.546535,.576568,.694272,-.294073,.529561,.614929,.722937,-.290386,.510561,.655909,.749682,-.284481,.487846,.697663,.774754,-.276188,.462487,.738515,.799301,-.266215,.43481,.779802,.820762,-.254116,.404879,.820045,.843231,-.240393,.374559,.860294,.861857,-.225503,.341582,.900965,.880815,-.209382,.308778,.941727,.89766,-.19155,.275232,.980916,.912926,-.172346,.240938,1.02162,.926391,-.151799,.207223,1.0597,.938429,-.129968,.17484,1.09291,.947834,-.10651,.142984,1.12248,.958432,-.0824098,.109902,1.149,.972402,-.0565242,.0744454,1.1733,.987191,-.028427,.0373794,1.19538,.999975,385685e-10,-4203e-8,1.21676,.178114,-766075e-11,.385418,354027e-11,.176074,-191966e-9,.381002,887135e-10,.17601,-767549e-9,.380861,354715e-9,.17598,-.00172696,.380798,798168e-9,.175994,-.00307012,.380824,.00141928,.176017,-.00479684,.380858,.00221859,.176019,-.00690648,.380839,.00319714,.176072,-.00939888,.380913,.0043572,.176131,-.0122726,.380979,.005702,.176239,-.0155264,.38112,.00723689,.176371,-.0191551,.381272,.00896907,.176638,-.023117,.381669,.0109194,.176912,-.0274633,.382015,.0130903,.177279,-.032173,.382476,.0154949,.17774,-.0372219,.383041,.0181669,.178344,-.0426132,.38378,.0211209,.179153,-.0483309,.384773,.0243899,.180197,-.0543447,.386076,.0280062,.181581,-.0607122,.387809,.032004,.18344,-.0673855,.390205,.036453,.186139,-.0743989,.393944,.0414162,.189432,-.0817731,.39832,.0469394,.193795,-.0895464,.404188,.0531442,.199641,-.0978264,.4121,.0601374,.206679,-.106499,.421425,.0680078,.214865,-.115654,.431504,.076919,.224406,-.125268,.442526,.0868835,.235876,-.135475,.455465,.0981875,.248335,-.146023,.4681,.110759,.262868,-.157016,.482069,.124885,.278962,-.168245,.496182,.140645,.295082,-.17958,.507401,.157838,.313738,-.191227,.520252,.17695,.333573,-.202718,.531708,.197817,.356433,-.214424,.544509,.220785,.378853,-.225492,.55373,.245306,.402717,-.236236,.561348,.271593,.428375,-.246568,.568538,.299776,.454724,-.255941,.573462,.329433,.482291,-.264511,.576356,.360598,.509706,-.272129,.576446,.393204,.538805,-.278979,.575298,.427227,.568919,-.284528,.572154,.462157,.596804,-.288801,.564691,.497997,.625987,-.291334,.555134,.534467,.656414,-.292722,.545051,.571736,.683916,-.292185,.528813,.610158,.711809,-.290043,.51106,.649061,.739547,-.285246,.490103,.690081,.766914,-.277647,.465523,.732554,.791375,-.267603,.437718,.773982,.814772,-.256109,.40882,.81609,.836691,-.242281,.377823,.856849,.856984,-.227155,.34496,.898363,.876332,-.210395,.311335,.939471,.894988,-.192612,.277703,.980799,.911113,-.173236,.243019,1.02215,.924092,-.152258,.209037,1.06139,.936828,-.129575,.175909,1.09635,.946869,-.10594,.143852,1.12707,.958284,-.081318,.110289,1.15419,.972325,-.0556133,.0747232,1.17909,.986878,-.0297899,.0383149,1.20163,.999936,-.00197169,912402e-9,1.22338,.151174,-720365e-11,.351531,309789e-11,.155594,-18279e-8,.361806,78608e-9,.156099,-731569e-9,.362982,314615e-9,.156053,-.00164578,.362869,707845e-9,.156093,-.0029261,.362961,.00125884,.156099,-.00457155,.362959,.00196783,.15612,-.00658224,.362982,.00283622,.156168,-.00895774,.363048,.00386625,.156221,-.0116962,.363101,.00506109,.156324,-.0147973,.363241,.00642675,.156476,-.0182503,.363448,.00797175,.156731,-.0220266,.36384,.00971484,.156994,-.026176,.364179,.0116575,.157341,-.0306701,.36462,.0138207,.157867,-.0354591,.365364,.0162356,.15846,-.0406141,.366111,.0189092,.159308,-.0460519,.367248,.021885,.160426,-.0518096,.368767,.0252004,.161877,-.0578906,.370745,.0288825,.163995,-.0642812,.373831,.0330139,.16655,-.0710067,.377366,.0376283,.170237,-.0781522,.382799,.0428493,.175096,-.0857172,.389915,.0487324,.181069,-.0938025,.398487,.0554214,.188487,-.102363,.408799,.0630189,.197029,-.111343,.419991,.071634,.206684,-.120812,.431455,.0812797,.218698,-.131033,.445746,.0923651,.230726,-.141373,.457471,.104545,.245516,-.152387,.472388,.118449,.261551,-.163628,.486671,.133923,.277437,-.174814,.49762,.150849,.296662,-.186713,.51162,.169924,.31795,-.198513,.525435,.190848,.339422,-.210119,.536267,.213504,.362143,-.221354,.545982,.237947,.387198,-.23224,.555364,.264427,.412349,-.24257,.561489,.292519,.439274,-.252284,.566903,.322561,.466779,-.261023,.569614,.353952,.496011,-.26899,.571589,.387278,.524964,-.275498,.570325,.421356,.556518,-.281449,.568792,.457314,.584363,-.285526,.560268,.493199,.614214,-.28844,.55205,.530276,.645684,-.289777,.541906,.56855,.673446,-.289722,.526464,.606927,.701924,-.287792,.509872,.645945,.73037,-.284315,.490649,.685564,.757405,-.278804,.467964,.726511,.784025,-.269543,.441468,.768601,.808255,-.258117,.41216,.811321,.830739,-.244728,.380606,.853496,.851914,-.229428,.348111,.895374,.872586,-.212508,.314732,.937674,.891581,-.194025,.280338,.979869,.907641,-.174711,.245203,1.02253,.922233,-.153509,.21077,1.06371,.935878,-.130418,.177399,1.09972,.946338,-.105558,.144507,1.13124,.957265,-.080059,.110508,1.15973,.971668,-.0539766,.0742311,1.18515,.9866,-.0277101,.0375224,1.20858,1.00021,-515531e-9,135226e-9,1.23135,.137468,-686011e-11,.345041,273315e-11,.13703,-173378e-9,.343936,690761e-10,.136986,-693048e-9,.34383,276126e-9,.136964,-.00155931,.343761,621337e-9,.137003,-.00277211,.343863,.00110494,.137012,-.00433103,.343868,.00172744,.137043,-.00623606,.343916,.00249022,.13709,-.0084868,.343986,.00339559,.137145,-.0110814,.344045,.00444687,.137242,-.0140187,.344177,.00565007,.137431,-.0172713,.344491,.00701868,.137644,-.0208605,.344805,.00856042,.13791,-.024792,.345172,.0102863,.138295,-.0290461,.345734,.0122185,.138764,-.0335957,.346371,.0143771,.139415,-.038467,.347298,.0167894,.140272,-.0436176,.348527,.0194895,.141457,-.0491016,.350276,.0225043,.14303,-.0548764,.352646,.0258962,.145289,-.0610096,.356206,.0297168,.148502,-.0674777,.361488,.0340562,.152188,-.074345,.367103,.0389534,.157359,-.0817442,.375247,.0445541,.16379,-.0896334,.385064,.0509535,.171376,-.098005,.396082,.0582611,.179901,-.106817,.407418,.06654,.189892,-.116239,.420031,.075994,.201838,-.12627,.434321,.0867239,.214311,-.136701,.447631,.0987517,.228902,-.147616,.462046,.112353,.245107,-.158871,.476942,.127605,.262292,-.170261,.490285,.144469,.281215,-.182017,.503783,.163282,.301058,-.193729,.515505,.183873,.322752,-.205512,.52682,.206466,.347547,-.217214,.539473,.231194,.370969,-.227966,.546625,.257288,.397533,-.238555,.55472,.285789,.42398,-.248278,.559468,.315746,.452928,-.257422,.564095,.347724,.482121,-.265306,.565426,.380922,.510438,-.272043,.563205,.415639,.541188,-.277614,.561087,.451702,.571667,-.281927,.554922,.48845,.602432,-.285015,.546838,.526442,.634126,-.286512,.537415,.564896,.662816,-.286388,.522906,.604037,.692411,-.284734,.507003,.643795,.720946,-.281297,.488398,.68298,.748293,-.276262,.466353,.723466,.776931,-.269978,.443573,.764565,.801065,-.260305,.415279,.805838,.825843,-.247426,.384773,.849985,.84807,-.232437,.352555,.893174,.869122,-.215806,.318642,.936564,.888963,-.197307,.28381,.980253,.905547,-.177203,.247888,1.02463,.918554,-.155542,.212904,1.06714,.931395,-.131948,.1787,1.10451,.941749,-.106723,.145902,1.13694,.954551,-.0804939,.111193,1.1666,.970279,-.0534239,.0744697,1.19249,.986117,-.0257452,.0368788,1.21665,.999938,.00190634,-.0010291,1.23981,.118493,-647439e-11,.32272,23772e-10,.118765,-163023e-9,.323456,598573e-10,.118772,-65212e-8,.323477,239447e-9,.118843,-.00146741,.323657,538881e-9,.118804,-.00260846,.323553,95826e-8,.118826,-.00407576,.323595,.00149845,.118846,-.00586826,.323617,.00216047,.118886,-.00798578,.32367,.00294679,.118947,-.0104273,.323753,.00386124,.119055,-.0131909,.323922,.00490999,.119241,-.0162444,.324251,.00610804,.11944,-.0196339,.324544,.00745805,.119739,-.0233378,.325026,.00897805,.12011,-.0273179,.325586,.0106895,.120571,-.0316143,.326231,.0126073,.12124,-.0361939,.327264,.0147654,.122162,-.0410511,.328733,.0172001,.123378,-.0462233,.330659,.0199375,.125183,-.0517109,.333754,.0230498,.127832,-.0575652,.338507,.026597,.130909,-.0637441,.343666,.0306345,.135221,-.0704302,.351063,.035273,.14082,-.0776364,.360604,.0406137,.146781,-.0852293,.369638,.0466788,.155121,-.0935351,.3827,.0537628,.16398,-.102234,.39522,.0617985,.173926,-.111465,.40793,.07097,.185137,-.121296,.42105,.0813426,.19826,-.13169,.435735,.0931596,.212938,-.142614,.450932,.106547,.229046,-.153884,.465726,.121575,.246246,-.165382,.479461,.138286,.264637,-.176806,.492106,.15666,.284959,-.188793,.504774,.17728,.308157,-.200763,.518805,.19988,.330951,-.21239,.528231,.224293,.3549,-.223521,.536376,.250541,.381502,-.234169,.544846,.278902,.409529,-.244077,.551717,.309227,.437523,-.253363,.55517,.341426,.467624,-.261659,.557772,.37518,.497268,-.268498,.556442,.41007,.528294,-.274018,.553915,.446445,.559053,-.278169,.549153,.483779,.589329,-.281229,.539878,.522249,.622503,-.282902,.53162,.561754,.652382,-.282815,.518119,.601544,.681847,-.281247,.502187,.641574,.712285,-.277986,.484824,.682633,.740094,-.273017,.463483,.723426,.768478,-.266692,.441299,.763747,.794556,-.258358,.415238,.805565,.819408,-.248807,.386912,.847254,.843411,-.236214,.356165,.891091,.862397,-.219794,.320562,.936174,.883113,-.201768,.285322,.982562,.90023,-.181672,.249713,1.02862,.915192,-.159279,.214546,1.07163,.928458,-.134725,.180285,1.10995,.94069,-.10913,.147119,1.14354,.953409,-.0821315,.112492,1.17372,.969537,-.0542677,.0752014,1.20043,.985612,-.0259096,.0370361,1.22528,.999835,.00298198,-.00151801,1.24959,.10097,-602574e-11,.300277,202619e-11,.101577,-152164e-9,.302077,511662e-10,.101572,-608889e-9,.302066,204751e-9,.101566,-.00136997,.302047,460753e-9,.101592,-.00243557,.302114,819497e-9,.101608,-.0038053,.30214,.00128154,.101627,-.00547906,.30216,.0018483,.101669,-.00745647,.302224,.00252223,.101732,-.00973615,.302318,.00330716,.101844,-.0123097,.302513,.00421061,.102025,-.0151681,.30285,.00524481,.102224,-.0183334,.303166,.0064154,.102515,-.0217819,.303654,.00774063,.102886,-.0255067,.304243,.0092398,.103395,-.029514,.305089,.0109339,.104109,-.0337912,.306301,.0128561,.105074,-.0383565,.30798,.0150338,.10654,-.0432132,.310726,.0175228,.108478,-.0484244,.314351,.0203648,.111015,-.0539339,.319032,.0236325,.114682,-.0598885,.32605,.0274188,.11911,-.0663375,.334109,.0317905,.124736,-.0733011,.344013,.0368502,.131479,-.0807744,.355358,.0427104,.139283,-.0888204,.367614,.0494788,.148054,-.0973394,.380072,.0572367,.159037,-.10665,.395678,.0662704,.169794,-.116221,.40795,.0763192,.18314,-.126632,.423546,.087956,.197515,-.137383,.438213,.101042,.213514,-.148641,.453248,.115827,.23065,-.160117,.46688,.132283,.249148,-.171807,.479962,.150644,.270219,-.183695,.494618,.171073,.292338,-.195574,.506937,.193378,.314999,-.207205,.516463,.217585,.340991,-.218955,.528123,.24428,.367982,-.229917,.537025,.272784,.39432,-.239737,.541627,.302742,.423364,-.249048,.546466,.335112,.453751,-.257329,.549466,.369032,.48416,-.264623,.549503,.404577,.515262,-.270411,.547008,.441337,.547036,-.274581,.542249,.479162,.576614,-.277266,.533015,.517904,.611143,-.279144,.525512,.558508,.640989,-.279001,.51154,.598995,.671182,-.277324,.495641,.639935,.700848,-.273908,.477526,.681017,.729862,-.269063,.457955,.722764,.758273,-.262282,.434846,.764349,.784121,-.254281,.409203,.806206,.809798,-.24505,.382694,.848617,.834953,-.233861,.354034,.892445,.856817,-.221308,.321764,.936263,.877609,-.205996,.288118,.982401,.897489,-.186702,.253277,1.02975,.913792,-.164618,.217963,1.07488,.92785,-.140023,.183221,1.11487,.940378,-.11328,.149385,1.14947,.95273,-.0853958,.114152,1.1807,.969059,-.0568698,.0769845,1.20912,.985574,-.0276502,.0381186,1.23498,.999943,.00239052,-.00126861,1.25987,.0852715,-560067e-11,.279021,171162e-11,.0854143,-140871e-9,.279483,430516e-10,.0854191,-563385e-9,.2795,172184e-9,.0854188,-.00126753,.279493,387464e-9,.0854229,-.00225337,.279501,68918e-8,.0854443,-.00352086,.279549,.00107803,.0854697,-.00506962,.279591,.00155536,.0855093,-.00689873,.279652,.00212354,.0855724,-.00900821,.279752,.00278703,.0856991,-.0113799,.280011,.0035551,.085855,-.0140314,.280297,.00443449,.0860682,-.016963,.280682,.00543636,.086344,-.0201438,.281159,.0065788,.0867426,-.0235999,.281886,.00787977,.087239,-.0273069,.282745,.0093606,.0879815,-.031269,.284139,.011056,.0891258,-.035531,.28647,.0130065,.0906909,-.0400947,.289708,.0152495,.0927624,-.0449638,.293904,.0178454,.0958376,-.0502427,.300471,.0208915,.0995827,-.0559514,.30806,.0244247,.104526,-.0622152,.317874,.0285721,.110532,-.0690046,.329332,.0334227,.117385,-.0763068,.341217,.0390466,.12522,-.084184,.353968,.0455786,.134037,-.0925248,.366797,.0530773,.144014,-.101487,.380209,.0617424,.156013,-.111273,.395956,.071777,.168872,-.121431,.41053,.0830905,.183089,-.132105,.425073,.0959341,.198763,-.143286,.439833,.110448,.216159,-.154841,.454507,.126769,.234859,-.166588,.468368,.14495,.255879,-.178626,.482846,.165233,.27677,-.190218,.493489,.187217,.301184,-.202227,.506549,.211659,.325852,-.213764,.5158,.237922,.352824,-.22487,.525442,.26632,.380882,-.235246,.532487,.296691,.410137,-.244847,.537703,.329179,.439787,-.253122,.540361,.363135,.472291,-.260517,.542734,.399222,.501856,-.266519,.538826,.436352,.534816,-.270905,.535152,.474505,.565069,-.273826,.525979,.513988,.597154,-.275333,.516394,.554852,.630473,-.275314,.506206,.596592,.660574,-.273323,.489769,.638117,.692015,-.270008,.472578,.680457,.720647,-.265001,.452134,.723008,.750528,-.258311,.430344,.765954,.777568,-.250046,.405624,.809012,.80387,-.240114,.378339,.852425,.828439,-.228737,.349877,.895346,.851472,-.216632,.318968,.940695,.873906,-.202782,.287489,.987235,.89467,-.187059,.254394,1.03348,.912281,-.168818,.221294,1.07812,.927358,-.146494,.18675,1.11928,.940385,-.120009,.152322,1.15609,.952672,-.0917183,.117514,1.18875,.968496,-.0620321,.0797405,1.21821,.985236,-.0314945,.0402383,1.24523,.99998,-575153e-9,110644e-9,1.27133,.0702429,-512222e-11,.255273,140947e-11,.0702981,-128826e-9,.255469,354488e-10,.0703691,-515562e-9,.255727,141874e-9,.0703805,-.00116,.255754,31929e-8,.0703961,-.00206224,.255813,567999e-9,.0704102,-.00322223,.255839,88871e-8,.0704298,-.00463928,.255863,.00128272,.0704759,-.00631375,.255953,.00175283,.0705434,-.00824317,.256079,.00230342,.0706693,-.010412,.25636,.0029443,.0708189,-.0128439,.256647,.00368031,.0710364,-.0155177,.257084,.00452614,.0713223,-.0184374,.257637,.00549706,.0717182,-.0216002,.258416,.00661246,.072321,-.0249966,.259699,.00790147,.0731446,-.0286566,.261475,.0093884,.0743352,-.0325888,.264132,.0111186,.0760676,-.036843,.26815,.013145,.078454,-.0414292,.273636,.0155251,.0818618,-.0464634,.281653,.0183525,.0857382,-.0519478,.289992,.0216642,.0908131,-.0579836,.30066,.0255956,.0967512,-.0645124,.312204,.0301954,.103717,-.0716505,.325001,.0356017,.111596,-.0793232,.338129,.041896,.120933,-.087645,.352853,.0492447,.130787,-.096492,.366192,.0576749,.142311,-.105973,.380864,.0673969,.155344,-.116182,.396575,.0785899,.169535,-.126815,.411443,.0912377,.185173,-.138015,.426256,.105607,.201755,-.149325,.439607,.121551,.221334,-.161207,.455467,.139608,.241461,-.173162,.469096,.159591,.26294,-.18504,.481014,.18156,.286776,-.196881,.493291,.205781,.311596,-.208311,.503556,.231819,.338667,-.219671,.513268,.260274,.366021,-.230451,.519414,.290862,.395875,-.240131,.526766,.323196,.425564,-.248566,.52905,.357071,.457094,-.256195,.530796,.393262,.488286,-.262331,.528703,.430797,.522291,-.267141,.52727,.470231,.554172,-.270411,.519848,.510477,.586427,-.271986,.510307,.551594,.619638,-.27192,.499158,.593849,.650656,-.269817,.483852,.636314,.68284,-.266267,.467515,.679679,.714356,-.26113,.44931,.723884,.742717,-.254067,.425789,.767245,.770894,-.245652,.401144,.811819,.797358,-.235554,.374224,.856315,.823377,-.223896,.346167,.901077,.847456,-.210865,.316056,.946502,.870697,-.196574,.284503,.993711,.891068,-.180814,.251628,1.04134,.909267,-.163314,.219065,1.08609,.925653,-.143304,.186446,1.12702,.940017,-.121322,.153416,1.16371,.952398,-.0973872,.120334,1.19712,.967568,-.0698785,.08352,1.22791,.984772,-.0390031,.0439209,1.25672,1.00026,-.0070087,.00315668,1.28428,.0556653,-459654e-11,.227325,112556e-11,.0565238,-116382e-9,.230826,284985e-10,.0565717,-465666e-9,.231026,114036e-9,.0565859,-.00104773,.231079,256656e-9,.0565761,-.00186255,.231025,45663e-8,.0565913,-.00291002,.231058,714664e-9,.0566108,-.00418998,.231085,.00103224,.0566532,-.00570206,.231169,.00141202,.0567473,-.00743666,.231417,.00186018,.0568567,-.00940298,.231661,.00238264,.0569859,-.0115991,.231895,.00298699,.0572221,-.0140096,.232456,.00368957,.057519,-.0166508,.233096,.00450303,.0579534,-.01951,.234094,.00544945,.0585922,-.0225991,.235629,.00655564,.0595647,-.0259416,.238106,.00785724,.0609109,-.0295661,.241557,.00939127,.0628751,-.0335126,.246652,.0112198,.0656908,-.0378604,.254091,.0134168,.0691347,-.0426543,.262666,.0160374,.0732165,-.0478967,.272029,.0191514,.0782863,-.0536716,.283007,.0228597,.0843973,-.0600683,.295732,.0272829,.0913598,-.0670095,.308779,.032484,.0994407,-.0745516,.322886,.0385886,.108189,-.082712,.336408,.0457133,.118574,-.0914927,.351692,.0539832,.129989,-.100854,.366502,.0635162,.142722,-.110837,.381675,.0744386,.156654,-.121353,.3963,.0868483,.172151,-.132414,.411477,.100963,.188712,-.143809,.42508,.116795,.208093,-.155765,.441328,.134715,.227936,-.167608,.454328,.154396,.249495,-.179579,.467235,.176179,.27362,-.191488,.480248,.200193,.296371,-.202618,.487886,.225775,.324234,-.214133,.499632,.25441,.353049,-.225212,.509532,.285077,.381785,-.234875,.514265,.317047,.414038,-.244205,.521282,.351874,.445251,-.252145,.522931,.388279,.476819,-.258433,.520947,.425825,.509209,-.263411,.517669,.465104,.542759,-.266732,.512841,.505741,.574822,-.268263,.503317,.547611,.609324,-.268489,.493035,.590953,.641772,-.266941,.478816,.63488,.674049,-.263297,.462863,.679072,.705071,-.257618,.442931,.723487,.734709,-.250625,.421299,.768708,.763704,-.24179,.397085,.814375,.791818,-.231115,.370577,.859907,.817439,-.21922,.34232,.906715,.843202,-.205658,.312627,.953943,.866639,-.190563,.280933,1.00185,.888129,-.173978,.248393,1.05105,.907239,-.155485,.216007,1.09704,.923893,-.134782,.183233,1.13857,.938882,-.11249,.150376,1.17539,.952464,-.0890706,.117177,1.20924,.968529,-.0646523,.0813095,1.24055,.984763,-.038606,.0439378,1.27018,1.00053,-.01238,.00598668,1.29873,.0437928,-409594e-11,.204012,8.79224e-7,.0440166,-103395e-9,.205049,221946e-10,.0440529,-413633e-9,.205225,887981e-10,.0440493,-930594e-9,.2052,199858e-9,.0439884,-.00165352,.204901,355495e-9,.0440716,-.0025849,.205255,556983e-9,.0440968,-.00372222,.205311,805326e-9,.0441359,-.00506478,.205391,.00110333,.0442231,-.00660384,.205638,.00145768,.0443254,-.00835246,.205877,.00187275,.0444832,-.0102992,.20627,.00235938,.0447001,-.0124449,.206796,.0029299,.0450168,-.0147935,.207593,.0036005,.0454816,-.017336,.208819,.00439246,.0462446,-.0201156,.211036,.00533864,.0473694,-.0231568,.214388,.00646984,.0490191,-.0264941,.219357,.00783856,.0512776,-.030184,.226061,.00950182,.0541279,-.0342661,.234094,.0115156,.0578989,-.0388539,.244297,.0139687,.0620835,-.0438735,.254457,.0169015,.0673497,-.04951,.266706,.0204554,.0731759,-.0556263,.278753,.0246606,.0803937,-.0624585,.29309,.0297126,.0879287,-.0697556,.305856,.0355868,.0970669,-.0778795,.321059,.0425768,.106508,-.0863541,.333873,.05056,.11776,-.0955935,.349008,.0598972,.130081,-.105438,.363776,.0706314,.144454,-.115899,.380112,.0828822,.1596,-.126827,.394843,.0967611,.176097,-.138161,.409033,.112381,.194726,-.149904,.424257,.129952,.213944,-.161675,.436945,.149333,.235516,-.173659,.450176,.170892,.260564,-.185963,.466305,.194984,.285183,-.197582,.477328,.220805,.311095,-.208697,.486566,.248694,.338924,-.219519,.494811,.279015,.369757,-.229766,.504065,.311725,.3996,-.238879,.507909,.345844,.430484,-.246802,.509805,.381749,.46413,-.253924,.511436,.420251,.497077,-.259319,.508787,.459957,.530434,-.263297,.50394,.501356,.565725,-.265619,.49804,.544252,.599254,-.265842,.487346,.587856,.631251,-.263978,.472975,.631969,.663972,-.26043,.457135,.677471,.697724,-.255358,.439844,.723744,.727725,-.248308,.417872,.770653,.756417,-.239181,.39273,.817357,.785419,-.22814,.367839,.864221,.81266,-.215681,.339449,.912701,.839391,-.201623,.309279,.962419,.86366,-.185624,.278029,1.0122,.885028,-.16797,.245294,1.06186,.904639,-.148336,.212689,1.10934,.922048,-.12637,.179616,1.15063,.936952,-.102928,.146749,1.18885,.951895,-.0785268,.112733,1.22352,.967198,-.0530153,.0760056,1.25681,.984405,-.02649,.0383183,1.28762,1.00021,70019e-8,-20039e-8,1.31656,.0325964,-355447e-11,.176706,6.55682e-7,.0329333,-899174e-10,.178527,165869e-10,.0329181,-359637e-9,.178453,663498e-10,.0329085,-808991e-9,.178383,149332e-9,.0329181,-.00143826,.178394,265873e-9,.0329425,-.00224678,.178517,416597e-9,.0329511,-.00323575,.17849,603299e-9,.033011,-.00439875,.178695,829422e-9,.0330733,-.00574059,.178843,.00109908,.0331857,-.00725896,.179176,.00141933,.0333445,-.00895289,.179618,.0017999,.0335674,-.0108219,.180238,.00225316,.033939,-.0128687,.181417,.00279765,.0345239,-.015114,.183395,.0034564,.0354458,-.017596,.186616,.00425864,.0368313,-.0203524,.191547,.00524936,.0386115,-.0234105,.197508,.00647033,.0410303,-.0268509,.205395,.00798121,.0442245,-.0307481,.215365,.0098557,.0478659,-.0350863,.225595,.0121417,.0522416,-.0399506,.236946,.0149385,.0574513,-.045357,.249442,.0183189,.0631208,-.0512863,.261222,.0223644,.0701124,-.0579273,.275418,.0272418,.0777331,-.0650652,.288989,.0329458,.0862709,-.0728813,.302546,.0396819,.096103,-.081363,.317164,.04757,.106976,-.0904463,.331733,.0567012,.119175,-.100105,.34661,.067202,.132919,-.110375,.362249,.0792588,.147727,-.121115,.376978,.0928672,.163618,-.132299,.390681,.108228,.182234,-.143887,.406571,.125502,.201809,-.155827,.42042,.144836,.225041,-.168357,.438411,.166706,.247621,-.18004,.450368,.189909,.27097,-.191536,.460083,.215251,.296658,-.203024,.469765,.243164,.325892,-.214056,.481837,.273388,.35406,-.224104,.487474,.305344,.384372,-.233489,.492773,.339741,.41749,-.241874,.498451,.376287,.45013,-.248834,.499632,.414195,.481285,-.254658,.495233,.454077,.519183,-.259367,.496401,.496352,.551544,-.261818,.487686,.538798,.587349,-.262964,.479453,.583626,.621679,-.262128,.467709,.629451,.654991,-.258998,.452123,.67566,.686873,-.254119,.433495,.723248,.719801,-.246946,.413657,.771156,.750355,-.237709,.390366,.81989,.780033,-.226549,.364947,.868601,.809254,-.214186,.337256,.920034,.836576,-.199639,.307395,.971706,.861774,-.183169,.275431,1.02479,.885707,-.165111,.243431,1.07837,.904742,-.144363,.210921,1.12783,.915604,-.121305,.17647,1.17254,.930959,-.0962119,.143106,1.21012,.948404,-.069969,.108112,1.24474,.967012,-.0427586,.0708478,1.27718,.984183,-.0147043,.032335,1.3083,.999577,.0142165,-.00726867,1.3382,.0229227,-299799e-11,.148623,4.62391e-7,.0232194,-758796e-10,.15054,117033e-10,.0232315,-303636e-9,.15063,468397e-10,.0232354,-683189e-9,.150624,105472e-9,.0232092,-.0012136,.150445,187744e-9,.0232523,-.00189765,.150679,294847e-9,.0232828,-.00273247,.150789,428013e-9,.0233371,-.00371287,.150995,591134e-9,.0234015,-.00484794,.15118,787642e-9,.023514,-.00612877,.151562,.00102547,.023679,-.00756125,.152116,.00131351,.0239559,-.00914651,.153162,.00166594,.0244334,-.010904,.155133,.00210182,.025139,-.0128615,.158035,.00264406,.0262598,-.0150628,.162751,.00332923,.0277875,-.0175532,.168944,.00419773,.0298472,-.0203981,.176835,.00530034,.0325444,-.023655,.186686,.00669777,.0355581,-.0272982,.196248,.00842661,.0392841,-.0314457,.207352,.0105854,.0436815,-.0361157,.219279,.0132458,.0485272,-.0412932,.230728,.0164736,.0541574,-.0470337,.242994,.0203715,.0609479,-.0535002,.257042,.0250953,.0685228,-.0605409,.27102,.0306856,.0768042,-.0680553,.28406,.037193,.0864844,-.0765011,.299186,.0449795,.0969415,-.0852674,.3132,.0538316,.108478,-.0947333,.327138,.0641149,.121705,-.10481,.342345,.0759185,.136743,-.115474,.358472,.0894116,.152986,-.126536,.374067,.104562,.170397,-.138061,.388267,.121632,.191392,-.150203,.406467,.140996,.211566,-.161751,.418641,.161696,.233567,-.173407,.430418,.184557,.257769,-.185397,.44277,.210092,.28531,-.197048,.457191,.237827,.311726,-.20784,.464712,.267253,.340537,-.218345,.472539,.299332,.372921,-.228306,.482331,.333988,.402924,-.236665,.484378,.369722,.434475,-.244097,.484717,.407836,.469736,-.250547,.487093,.448465,.505045,-.25511,.485575,.490263,.540262,-.258444,.481225,.534495,.576347,-.259903,.473481,.579451,.608656,-.259572,.4603,.625604,.646679,-.257908,.450341,.674511,.679902,-.253663,.431561,.723269,.714159,-.247419,.412684,.773263,.745345,-.239122,.389388,.824182,.778248,-.228837,.365361,.876634,.807208,-.216197,.337667,.92945,.835019,-.201772,.307197,.985261,.860261,-.185291,.274205,1.04299,.877601,-.165809,.240178,1.09816,.898211,-.143897,.207571,1.14694,.915789,-.119513,.174904,1.19008,.931831,-.0932919,.141423,1.2297,.949244,-.0656528,.105603,1.26553,.967527,-.0370262,.0679551,1.29986,.984139,-.00730117,.0283133,1.33252,.999713,.0234648,-.0121785,1.36397,.0152135,-245447e-11,.122795,3.04092e-7,.0151652,-615778e-10,.122399,76292e-10,.0151181,-245948e-9,.122023,304802e-10,.0151203,-553394e-9,.12203,686634e-10,.015125,-983841e-9,.122037,122463e-9,.0151427,-.00153774,.12214,192706e-9,.0151708,-.0022103,.122237,281219e-9,.0152115,-.00300741,.12238,390804e-9,.0152877,-.00392494,.1227,526317e-9,.015412,-.00496597,.123244,69443e-8,.0156201,-.00613314,.124228,90547e-8,.0159658,-.00744113,.125945,.0011732,.0165674,-.00892546,.129098,.00151888,.017487,-.010627,.133865,.00197007,.018839,-.0126043,.140682,.0025637,.020554,-.0148814,.148534,.00333637,.0226727,-.0175123,.157381,.00433738,.0251879,-.0205266,.166685,.00561664,.0283635,-.0240319,.177796,.00725563,.0318694,-.0279432,.188251,.00928811,.0361044,-.0324313,.200038,.011835,.0406656,-.0373527,.210685,.0149146,.0463846,-.0430132,.224182,.0187254,.0525696,-.0491013,.23634,.0232283,.0598083,-.0559175,.250013,.0286521,.0679437,-.0633657,.263981,.0350634,.0771181,-.0714602,.278072,.0425882,.0881273,-.0803502,.29511,.0514487,.0996628,-.0896903,.309976,.0615766,.112702,-.099644,.325611,.0732139,.126488,-.109829,.339321,.0862324,.142625,-.120859,.35574,.101275,.15953,-.131956,.369845,.117892,.176991,-.143145,.38146,.136205,.199715,-.155292,.40052,.157252,.220787,-.167066,.412055,.179966,.243697,-.178396,.423133,.204418,.272106,-.190433,.439524,.232141,.297637,-.201265,.447041,.261109,.325273,-.211834,.454488,.292627,.357219,-.221889,.465004,.326669,.387362,-.230729,.468527,.362426,.423131,-.23924,.475836,.401533,.45543,-.246067,.475017,.441902,.493393,-.251557,.478017,.484239,.526253,-.255571,.4709,.528586,.560554,-.257752,.463167,.574346,.599306,-.258076,.456452,.621655,.634541,-.256471,.443725,.670492,.668907,-.253283,.428719,.721943,.705619,-.247562,.411348,.772477,.739034,-.240626,.388939,.8264,.771408,-.231493,.36425,.881702,.803312,-.220125,.337321,.9385,.828457,-.206645,.305364,.997437,.854819,-.190664,.273715,1.05693,.878666,-.171429,.242218,1.11251,.898404,-.149235,.209556,1.16398,.917416,-.12435,.176863,1.21014,.933133,-.0972703,.142775,1.25178,.95066,-.0683607,.106735,1.29028,.968589,-.0378724,.0681609,1.32703,.984776,-.00605712,.0273966,1.36158,.99994,.0263276,-.0138124,1.3943,.00867437,-186005e-11,.0928979,1.73682e-7,.00864003,-466389e-10,.0925237,435505e-11,.00864593,-186594e-9,.0925806,174322e-10,.00864095,-419639e-9,.0924903,392862e-10,.00863851,-746272e-9,.0924589,702598e-10,.00868531,-.00116456,.0929,111188e-9,.00869667,-.00167711,.0928529,163867e-9,.00874332,-.00228051,.0930914,23104e-8,.00882709,-.00297864,.0935679,31741e-8,.00898874,-.00377557,.0946165,430186e-9,.00929346,-.00469247,.0967406,580383e-9,.00978271,-.00575491,.100084,783529e-9,.0105746,-.00701514,.105447,.00106304,.0116949,-.00851797,.112494,.00144685,.0130419,-.0102757,.119876,.00196439,.0148375,-.012381,.129034,.00266433,.0168725,-.01482,.137812,.00358364,.0193689,-.0176563,.147696,.00478132,.0222691,-.0209211,.157795,.00631721,.0256891,-.0246655,.168431,.00826346,.0294686,-.0288597,.178587,.0106714,.0340412,-.0336441,.190251,.0136629,.0393918,-.039033,.202999,.0173272,.0453947,-.0450087,.215655,.0217448,.0521936,-.0515461,.228686,.0269941,.0600279,-.058817,.242838,.033272,.0692398,-.0667228,.258145,.0406457,.0793832,-.0752401,.273565,.0492239,.0902297,-.0841851,.287735,.0590105,.102014,-.0936479,.301161,.0702021,.116054,-.103967,.317438,.0832001,.13191,-.114622,.334166,.0977951,.148239,-.125452,.348192,.113985,.165809,-.136453,.361094,.131928,.184616,-.147648,.373534,.151811,.207491,-.159607,.39101,.174476,.230106,-.171119,.402504,.198798,.257036,-.182906,.418032,.225796,.281172,-.193605,.425468,.254027,.312034,-.204771,.440379,.285713,.340402,-.214988,.445406,.319196,.370231,-.224711,.44968,.35537,.407105,-.233516,.460747,.393838,.439037,-.240801,.460624,.433747,.47781,-.24762,.465957,.477234,.510655,-.251823,.460054,.52044,.550584,-.255552,.459172,.567853,.585872,-.257036,.450311,.615943,.620466,-.257535,.437763,.667693,.660496,-.255248,.426639,.718988,.695578,-.251141,.409185,.772503,.732176,-.244718,.39015,.827023,.760782,-.236782,.362594,.885651,.79422,-.225923,.33711,.943756,.824521,-.213855,.308272,1.00874,.854964,-.197723,.278529,1.06764,.878065,-.179209,.246208,1.12836,.899834,-.157569,.21329,1.18318,.918815,-.133206,.181038,1.23161,.934934,-.106545,.146993,1.27644,.952115,-.0780574,.111175,1.31842,.96906,-.0478279,.0728553,1.35839,.985178,-.0160014,.032579,1.39697,1.00039,.0173126,-.0095256,1.43312,.00384146,-124311e-11,.0613583,7.78271e-8,.00390023,-314043e-10,.0622919,196626e-11,.00389971,-125622e-9,.0622632,787379e-11,.00389491,-282352e-9,.0620659,1778e-8,.00391618,-502512e-9,.0624687,320918e-10,.00392662,-784458e-9,.0625113,515573e-10,.00396053,-.00112907,.0628175,778668e-10,.00401911,-.00153821,.0633286,113811e-9,.00414994,-.0020208,.0646443,16445e-8,.00441223,-.00260007,.0673886,237734e-9,.00484427,-.0033097,.0716528,345929e-9,.00549109,-.00418966,.0774998,505987e-9,.00636293,-.00527331,.0844758,739208e-9,.00746566,-.00660428,.0921325,.00107347,.00876625,-.00818826,.0997067,.00153691,.0103125,-.0100811,.107433,.00217153,.0123309,-.0123643,.117088,.00303427,.0146274,-.0150007,.126438,.00416018,.0172295,-.0180531,.135672,.00561513,.0204248,-.0215962,.146244,.007478,.0241597,-.0256234,.157481,.00981046,.0284693,-.0302209,.169125,.0127148,.033445,-.0353333,.181659,.0162453,.0391251,-.0410845,.1944,.0205417,.0454721,-.0473451,.207082,.0256333,.0530983,-.0542858,.221656,.0317036,.0615356,-.0618384,.236036,.0388319,.0703363,-.0697631,.248398,.046974,.0810391,-.0784757,.263611,.0565246,.0920144,-.0873488,.275857,.0671724,.105584,-.0973652,.292555,.0798105,.119506,-.107271,.306333,.0935945,.134434,-.117608,.318888,.109106,.153399,-.128938,.337552,.127074,.171258,-.139944,.349955,.14643,.191059,-.151288,.361545,.168,.215069,-.163018,.378421,.192082,.237838,-.174226,.38879,.217838,.266965,-.186063,.405857,.246931,.292827,-.196909,.414146,.277505,.324352,-.207473,.426955,.310711,.354427,-.217713,.433429,.346794,.389854,-.227183,.443966,.385237,.420749,-.235131,.44471,.424955,.459597,-.242786,.451729,.468446,.495316,-.248767,.45072,.513422,.534903,-.253351,.450924,.560618,.572369,-.256277,.445266,.609677,.612383,-.2576,.438798,.660995,.644037,-.256931,.421693,.713807,.686749,-.254036,.4109,.767616,.719814,-.249785,.390151,.82533,.754719,-.244283,.367847,.888311,.792022,-.235076,.345013,.948177,.822404,-.225061,.316193,1.01661,.853084,-.211113,.287013,1.08075,.879871,-.19449,.255424,1.14501,.901655,-.174023,.222879,1.20203,.919957,-.1509,.18989,1.25698,.938412,-.124923,.15606,1.30588,.953471,-.0968139,.120512,1.3529,.970451,-.066734,.0828515,1.3986,.985522,-.034734,.0424458,1.44148,1.00099,-.00102222,678929e-9,1.48398,965494e-9,-6.27338e-7,.0306409,1.97672e-8,99168e-8,-158573e-10,.0314638,4.99803e-7,991068e-9,-634012e-10,.031363,200682e-11,974567e-9,-14144e-8,.03036,457312e-11,998079e-9,-252812e-9,.031496,860131e-11,.00102243,-396506e-9,.0319955,148288e-10,.00107877,-577593e-9,.0331376,249141e-10,.00121622,-816816e-9,.0359396,423011e-10,.0014455,-.00113761,.0399652,724613e-10,.00178791,-.00156959,.0450556,123929e-9,.00225668,-.00214064,.0508025,208531e-9,.00285627,-.00287655,.0568443,341969e-9,.0035991,-.00380271,.0630892,544158e-9,.00455524,-.00496264,.0702204,842423e-9,.00569143,-.0063793,.0773426,.00126704,.00716928,-.00813531,.0860839,.00186642,.00885307,-.0101946,.0944079,.00267014,.0109316,-.0126386,.103951,.00374033,.0133704,-.0154876,.113786,.0051304,.0161525,-.0187317,.123477,.00688858,.0194267,-.0224652,.133986,.00910557,.0230967,-.0265976,.143979,.0118074,.0273627,-.0312848,.154645,.0151266,.0323898,-.0365949,.166765,.0191791,.0379225,-.0422914,.177932,.0239236,.0447501,-.0487469,.19167,.0296568,.0519391,-.0556398,.203224,.0362924,.0599464,-.0631646,.215652,.0440585,.0702427,-.0714308,.232089,.0531619,.0806902,-.0800605,.245258,.0634564,.0923194,-.0892815,.258609,.0752481,.106938,-.09931,.276654,.0888914,.121238,-.109575,.289847,.104055,.138817,-.120461,.307566,.121266,.15595,-.131209,.320117,.139944,.178418,-.143049,.339677,.161591,.197875,-.154074,.349886,.184303,.224368,-.166307,.369352,.210669,.252213,-.178051,.386242,.238895,.277321,-.189335,.395294,.269182,.310332,-.200683,.412148,.302508,.338809,-.210856,.418266,.337264,.372678,-.220655,.428723,.374881,.405632,-.230053,.433887,.415656,.442293,-.237993,.439911,.457982,.477256,-.244897,.440175,.502831,.515592,-.250657,.441079,.550277,.550969,-.255459,.435219,.601102,.592883,-.257696,.432882,.651785,.629092,-.259894,.421054,.708961,.672033,-.258592,.41177,.763806,.709147,-.256525,.395267,.824249,.745367,-.254677,.375013,.8951,.784715,-.247892,.353906,.959317,.818107,-.240162,.327801,1.03153,.847895,-.229741,.298821,1.10601,.879603,-.213084,.269115,1.164,.902605,-.195242,.236606,1.22854,.922788,-.174505,.203442,1.29017,.944831,-.150169,.169594,1.34157,.959656,-.124099,.135909,1.3956,.972399,-.0960626,.0990563,1.45128,.986549,-.0657097,.0602348,1.50312,1.00013,-.0333558,.0186694,1.55364,619747e-11,-1e-7,.00778326,796756e-16,2.37499e-8,-9.99999e-8,282592e-10,1.14596e-10,100292e-11,-166369e-11,250354e-9,6.77492e-9,350752e-11,-637769e-11,357289e-9,6.31655e-8,826445e-11,-174689e-10,516179e-9,3.1851e-7,242481e-10,-450868e-10,.0010223,130577e-11,455631e-10,-89044e-9,.00144302,374587e-11,971222e-10,-178311e-9,.00241912,102584e-10,171403e-9,-313976e-9,.00354938,236481e-10,292747e-9,-520026e-9,.00513765,496014e-10,789827e-9,-.00118187,.0238621,139056e-9,.00114093,-.00171827,.0286691,244093e-9,.00176119,-.00249667,.0368565,420623e-9,.0022233,-.00333742,.0400469,65673e-8,.00343382,-.00481976,.0535751,.00109323,.00427602,-.00600755,.057099,.00155268,.00461435,-.00737637,.0551084,.00215031,.00695698,-.00971401,.0715767,.00316529,.00867619,-.0120943,.0793314,.00436995,.0106694,-.0148202,.0869391,.0058959,.0140351,-.0183501,.101572,.00798757,.0168939,-.022006,.11018,.0104233,.020197,-.0261568,.119041,.0134167,.0254702,-.0312778,.135404,.0173009,.0298384,-.0362469,.1437,.0215428,.035159,-.042237,.15512,.0268882,.0427685,-.0488711,.17128,.033235,.0494848,-.0557997,.181813,.0404443,.0592394,-.0635578,.198745,.0490043,.0681463,-.071838,.210497,.0588239,.0804753,-.0809297,.228864,.0702835,.0942205,-.0906488,.247008,.0834012,.106777,-.100216,.258812,.0975952,.124471,-.110827,.278617,.114162,.138389,-.121193,.287049,.131983,.159543,-.13253,.307151,.152541,.176432,-.143611,.31564,.174673,.201723,-.15548,.33538,.199842,.229721,-.167166,.355256,.227097,.250206,-.178238,.360047,.256014,.282118,-.189905,.378761,.28855,.312821,-.201033,.39181,.323348,.341482,-.211584,.397716,.360564,.377368,-.221314,.410141,.400004,.418229,-.230474,.423485,.442371,.444881,-.239443,.418874,.488796,.488899,-.245987,.427545,.535012,.520317,-.253948,.422147,.589678,.568566,-.256616,.42719,.637683,.599607,-.26376,.415114,.703363,.64222,-.268687,.408715,.771363,.685698,-.2694,.399722,.83574,.732327,-.266642,.388651,.897764,.769873,-.267712,.369198,.983312,.806733,-.263479,.346802,1.06222,.843466,-.254575,.321368,1.13477,.873008,-.242749,.29211,1.20712,.908438,-.22725,.262143,1.27465,.936321,-.207621,.228876,1.33203,.950353,-.187932,.19484,1.40439,.96442,-.165154,.163178,1.4732,.979856,-.139302,.127531,1.53574,.982561,-.11134,.0903457,1.59982,.996389,-.0808124,.0489007,1.6577],e=[1,0,0,0,1,791421e-36,0,0,1,104392e-29,0,0,1,349405e-26,0,0,1,109923e-23,0,0,1,947414e-22,0,0,1,359627e-20,0,0,1,772053e-19,0,0,1,108799e-17,0,0,1,110655e-16,0,0,1,865818e-16,0,0,.999998,5.45037e-10,0,0,.999994,2.85095e-9,0,0,.999989,1.26931e-8,0,0,.999973,4.89938e-8,0,0,.999947,1.66347e-7,0,0,.999894,5.02694e-7,0,0,.999798,136532e-11,0,0,.999617,335898e-11,0,0,.999234,752126e-11,0,0,.998258,152586e-10,0,0,.99504,266207e-10,0,0,.980816,236802e-10,0,0,.967553,207684e-11,0,0,.966877,403733e-11,0,0,.965752,741174e-11,0,0,.96382,127746e-10,0,0,.960306,202792e-10,0,0,.953619,280232e-10,0,0,.941103,278816e-10,0,0,.926619,160221e-10,0,0,.920983,235164e-10,0,0,.912293,311924e-10,0,.0158731,.899277,348118e-10,0,.0476191,.880884,26041e-9,0,.0793651,.870399,338726e-10,0,.111111,.856138,392906e-10,0,.142857,.837436,372874e-10,0,.174603,.820973,392558e-10,0,.206349,.803583,434658e-10,0,.238095,.782168,40256e-9,0,.269841,.764107,448159e-10,0,.301587,.743092,457627e-10,0,.333333,.721626,455314e-10,0,.365079,.700375,477335e-10,0,.396825,.677334,461072e-10,0,.428571,.655702,484393e-10,0,.460317,.632059,464583e-10,0,.492064,.610125,483923e-10,0,.52381,.58653,464342e-10,0,.555556,.564508,477033e-10,0,.587302,.541405,459263e-10,0,.619048,.519556,46412e-9,0,.650794,.497292,448913e-10,0,.68254,.475898,445789e-10,0,.714286,.454722,433496e-10,0,.746032,.434042,423054e-10,0,.777778,.414126,413737e-10,0,.809524,.394387,397265e-10,0,.84127,.375841,390709e-10,0,.873016,.357219,369938e-10,0,.904762,.340084,365618e-10,0,.936508,.322714,342533e-10,0,.968254,.306974,339596e-10,0,1,1,101524e-23,0,0,1,10292e-22,0,0,1,130908e-23,0,0,1,473331e-23,0,0,1,625319e-22,0,0,1,107932e-20,0,0,1,163779e-19,0,0,1,203198e-18,0,0,1,204717e-17,0,0,.999999,168995e-16,0,0,.999998,1.15855e-10,0,0,.999996,6.6947e-10,0,0,.999991,3.30863e-9,0,0,.999983,1.41737e-8,0,0,.999968,5.32626e-8,0,0,.99994,1.77431e-7,0,0,.999891,5.28835e-7,0,0,.999797,142169e-11,0,0,.999617,347057e-11,0,0,.999227,77231e-10,0,0,.998239,155753e-10,0,0,.994937,268495e-10,0,0,.980225,213742e-10,0,0,.967549,21631e-10,0,0,.966865,417989e-11,0,0,.965739,763341e-11,0,0,.963794,130892e-10,0,0,.960244,206456e-10,0,0,.953495,282016e-10,0,148105e-9,.940876,271581e-10,0,.002454,.926569,164159e-10,0,.00867491,.920905,239521e-10,0,.01956,.912169,315127e-10,0,.035433,.899095,346626e-10,0,.056294,.882209,290223e-10,0,.0818191,.870272,342992e-10,0,.111259,.855977,394164e-10,0,.142857,.837431,372343e-10,0,.174603,.820826,396691e-10,0,.206349,.803408,435395e-10,0,.238095,.782838,419579e-10,0,.269841,.763941,450953e-10,0,.301587,.742904,455847e-10,0,.333333,.721463,458833e-10,0,.365079,.700197,477159e-10,0,.396825,.677501,470641e-10,0,.428571,.655527,484732e-10,0,.460317,.6324,476834e-10,0,.492064,.609964,484213e-10,0,.52381,.586839,475541e-10,0,.555556,.564353,476951e-10,0,.587302,.541589,467611e-10,0,.619048,.519413,463493e-10,0,.650794,.497337,453994e-10,0,.68254,.475797,445308e-10,0,.714286,.454659,435787e-10,0,.746032,.434065,424839e-10,0,.777778,.414018,41436e-9,0,.809524,.39455,401902e-10,0,.84127,.375742,390813e-10,0,.873016,.357501,377116e-10,0,.904762,.339996,36535e-9,0,.936508,.323069,351265e-10,0,.968254,.306897,339112e-10,0,1,1,10396e-19,0,0,1,104326e-20,0,0,1,110153e-20,0,0,1,144668e-20,0,0,1,34528e-19,0,0,1,175958e-19,0,0,1,12627e-17,0,0,1,936074e-18,0,0,1,645742e-17,0,0,.999998,401228e-16,0,0,.999997,2.22338e-10,0,0,.999995,1.0967e-9,0,0,.999991,4.82132e-9,0,0,.999981,1.89434e-8,0,0,.999967,6.67716e-8,0,0,.999938,2.12066e-7,0,0,.999886,6.0977e-7,0,0,.999792,159504e-11,0,0,.999608,381191e-11,0,0,.999209,833727e-11,0,0,.998179,165288e-10,0,0,.994605,274387e-10,0,0,.979468,167316e-10,0,0,.967529,242877e-11,0,0,.966836,461696e-11,0,0,.96569,830977e-11,0,0,.963706,140427e-10,0,244659e-11,.960063,217353e-10,0,760774e-9,.953113,286606e-10,0,.00367261,.940192,247691e-10,0,.00940263,.927731,195814e-10,0,.018333,.920669,252531e-10,0,.0306825,.911799,324277e-10,0,.0465556,.89857,340982e-10,0,.0659521,.883283,319622e-10,0,.0887677,.86989,35548e-9,0,.114784,.855483,397143e-10,0,.143618,.837987,391665e-10,0,.174606,.820546,411306e-10,0,.206349,.802878,436753e-10,0,.238095,.783402,444e-7,0,.269841,.763439,458726e-10,0,.301587,.742925,467097e-10,0,.333333,.721633,478887e-10,0,.365079,.69985,481251e-10,0,.396825,.67783,491811e-10,0,.428571,.655126,488199e-10,0,.460318,.632697,496025e-10,0,.492064,.609613,48829e-9,0,.52381,.587098,492754e-10,0,.555556,.564119,482625e-10,0,.587302,.541813,482807e-10,0,.619048,.519342,471552e-10,0,.650794,.497514,466765e-10,0,.68254,.475879,455582e-10,0,.714286,.454789,446007e-10,0,.746032,.434217,435382e-10,0,.777778,.414086,421753e-10,0,.809524,.394744,412093e-10,0,.84127,.375782,396634e-10,0,.873016,.357707,386419e-10,0,.904762,.340038,370345e-10,0,.936508,.323284,359725e-10,0,.968254,.306954,3436e-8,0,1,1,599567e-19,0,0,1,600497e-19,0,0,1,614839e-19,0,0,1,686641e-19,0,0,1,972658e-19,0,0,1,221271e-18,0,0,1,833195e-18,0,0,1,403601e-17,0,0,.999999,206001e-16,0,0,.999998,1.01739e-10,0,0,.999997,4.70132e-10,0,0,.999993,2.00436e-9,0,0,.999988,7.83682e-9,0,0,.999979,2.80338e-8,0,0,.999962,9.17033e-8,0,0,.999933,2.74514e-7,0,0,.999881,7.53201e-7,0,0,.999783,189826e-11,0,0,.999594,440279e-11,0,0,.999178,93898e-10,0,0,.998073,181265e-10,0,0,.993993,280487e-10,0,0,.979982,149422e-10,0,0,.968145,378481e-11,0,0,.966786,53771e-10,0,0,.965611,947508e-11,0,388934e-10,.963557,156616e-10,0,9693e-7,.959752,235144e-10,0,.00370329,.952461,291568e-10,0,.00868428,.940193,240102e-10,0,.0161889,.929042,231235e-10,0,.0263948,.920266,273968e-10,0,.0394088,.911178,337915e-10,0,.0552818,.897873,333629e-10,0,.0740138,.884053,351405e-10,0,.0955539,.869455,378034e-10,0,.119795,.854655,399378e-10,0,.14656,.838347,419108e-10,0,.175573,.820693,440831e-10,0,.206388,.802277,445599e-10,0,.238095,.783634,472691e-10,0,.269841,.763159,476984e-10,0,.301587,.742914,491487e-10,0,.333333,.721662,502312e-10,0,.365079,.699668,502817e-10,0,.396825,.677839,51406e-9,0,.428571,.655091,511095e-10,0,.460317,.632665,516067e-10,0,.492064,.609734,512255e-10,0,.52381,.587043,510263e-10,0,.555556,.564298,50565e-9,0,.587302,.541769,497951e-10,0,.619048,.519529,492698e-10,0,.650794,.497574,482066e-10,0,.68254,.476028,473689e-10,0,.714286,.454961,461941e-10,0,.746032,.434341,450618e-10,0,.777778,.414364,438355e-10,0,.809524,.394832,424196e-10,0,.84127,.376109,412563e-10,0,.873016,.35779,396226e-10,0,.904762,.340379,384886e-10,0,.936508,.323385,368214e-10,0,.968254,.307295,356636e-10,0,1,1,106465e-17,0,0,1,106555e-17,0,0,1,107966e-17,0,0,1,114601e-17,0,0,1,137123e-17,0,0,1,21243e-16,0,0,.999999,489653e-17,0,0,.999999,160283e-16,0,0,.999998,62269e-15,0,0,.999997,2.51859e-10,0,0,.999996,9.96192e-10,0,0,.999992,3.74531e-9,0,0,.999986,1.32022e-8,0,0,.999975,4.33315e-8,0,0,.999959,1.31956e-7,0,0,.999927,3.72249e-7,0,0,.999871,9.72461e-7,0,0,.999771,235343e-11,0,0,.999572,52768e-10,0,0,.999133,109237e-10,0,0,.997912,203675e-10,0,0,.993008,279396e-10,0,0,.980645,139604e-10,0,0,.970057,646596e-11,0,0,.966717,65089e-10,0,474145e-10,.965497,111863e-10,0,89544e-8,.96334,179857e-10,0,.0032647,.959294,259045e-10,0,.0075144,.951519,292327e-10,0,.0138734,.940517,249769e-10,0,.0224952,.93014,26803e-9,0,.0334828,.91972,303656e-10,0,.0468973,.910294,353323e-10,0,.0627703,.897701,351002e-10,0,.0811019,.884522,388104e-10,0,.10186,.869489,412932e-10,0,.124985,.853983,415781e-10,0,.150372,.838425,454066e-10,0,.177868,.820656,471624e-10,0,.207245,.801875,475243e-10,0,.238143,.783521,505621e-10,0,.269841,.763131,50721e-9,0,.301587,.74261,523293e-10,0,.333333,.72148,528699e-10,0,.365079,.699696,538677e-10,0,.396825,.677592,539255e-10,0,.428571,.65525,546367e-10,0,.460317,.632452,541348e-10,0,.492064,.609903,544976e-10,0,.52381,.586928,536201e-10,0,.555556,.564464,535185e-10,0,.587302,.541801,524949e-10,0,.619048,.519681,51812e-9,0,.650794,.497685,507687e-10,0,.68254,.47622,496243e-10,0,.714286,.455135,485714e-10,0,.746032,.4346,471847e-10,0,.777778,.414564,459294e-10,0,.809524,.395165,444705e-10,0,.84127,.376333,430772e-10,0,.873016,.358197,416229e-10,0,.904762,.34064,401019e-10,0,.936508,.323816,386623e-10,0,.968254,.307581,370933e-10,0,1,1,991541e-17,0,0,1,992077e-17,0,0,1,100041e-16,0,0,1,10385e-15,0,0,1,115777e-16,0,0,1,150215e-16,0,0,.999999,254738e-16,0,0,.999999,598822e-16,0,0,.999998,1.79597e-10,0,0,.999997,6.02367e-10,0,0,.999994,2.06835e-9,0,0,.99999,6.94952e-9,0,0,.999984,2.23363e-8,0,0,.999972,6.78578e-8,0,0,.999952,1.93571e-7,0,0,.999919,5.16594e-7,0,0,.99986,128739e-11,0,0,.999753,299298e-11,0,0,.999546,648258e-11,0,0,.999074,129985e-10,0,0,.997671,232176e-10,0,0,.991504,256701e-10,0,0,.981148,131141e-10,0,0,.971965,869048e-11,0,280182e-10,.966624,808301e-11,0,695475e-9,.965344,135235e-10,0,.00265522,.963048,210592e-10,0,.00622975,.958673,287473e-10,0,.0116234,.950262,281379e-10,0,.018976,.940836,271089e-10,0,.0283844,.930996,30926e-9,0,.0399151,.919848,348359e-10,0,.0536063,.909136,366092e-10,0,.0694793,.897554,384162e-10,0,.0875342,.884691,430971e-10,0,.107749,.869414,447803e-10,0,.130087,.853462,452858e-10,0,.154481,.838187,495769e-10,0,.180833,.820381,502709e-10,0,.209005,.801844,522713e-10,0,.238791,.783061,541505e-10,0,.269869,.763205,553712e-10,0,.301587,.742362,564909e-10,0,.333333,.721393,572646e-10,0,.365079,.699676,581012e-10,0,.396825,.677395,58096e-9,0,.428571,.655208,585766e-10,0,.460317,.632451,583602e-10,0,.492064,.609839,580234e-10,0,.52381,.587093,577161e-10,0,.555556,.564467,568447e-10,0,.587302,.542043,563166e-10,0,.619048,.519826,55156e-9,0,.650794,.497952,541682e-10,0,.68254,.476477,528971e-10,0,.714286,.455412,514952e-10,0,.746032,.434926,502222e-10,0,.777778,.4149,485779e-10,0,.809524,.395552,472242e-10,0,.84127,.376712,454891e-10,0,.873016,.358622,440924e-10,0,.904762,.341048,422984e-10,0,.936508,.324262,408582e-10,0,.968254,.308013,390839e-10,0,1,1,613913e-16,0,0,1,614145e-16,0,0,1,617708e-16,0,0,1,633717e-16,0,0,1,681648e-16,0,0,1,808291e-16,0,0,1,1.14608e-10,0,0,.999998,2.10507e-10,0,0,.999997,4.99595e-10,0,0,.999995,1.39897e-9,0,0,.999994,4.19818e-9,0,0,.999988,1.27042e-8,0,0,.999979,3.75153e-8,0,0,.999965,1.06206e-7,0,0,.999945,2.85381e-7,0,0,.999908,7.23611e-7,0,0,.999846,17255e-10,0,0,.999733,386104e-11,0,0,.999511,808493e-11,0,0,.998993,156884e-10,0,0,.997326,265538e-10,0,0,.989706,206466e-10,0,0,.981713,130756e-10,0,70005e-10,.973636,106473e-10,0,464797e-9,.966509,10194e-9,0,.00201743,.965149,165881e-10,0,.00497549,.962669,249147e-10,0,.00953262,.95786,317449e-10,0,.0158211,.949334,281045e-10,0,.0239343,.941041,303263e-10,0,.0339372,.931575,356754e-10,0,.0458738,.920102,397075e-10,0,.059772,.908002,384886e-10,0,.075645,.897269,43027e-9,0,.0934929,.884559,479925e-10,0,.113302,.869161,48246e-9,0,.135045,.853342,509505e-10,0,.158678,.837633,542846e-10,0,.184136,.820252,554139e-10,0,.211325,.801872,581412e-10,0,.240113,.782418,585535e-10,0,.270306,.7631,610923e-10,0,.301594,.742183,613678e-10,0,.333333,.721098,627275e-10,0,.365079,.699512,629413e-10,0,.396825,.677372,636351e-10,0,.428571,.655059,633555e-10,0,.460317,.632567,636513e-10,0,.492064,.609784,628965e-10,0,.52381,.587237,625546e-10,0,.555556,.564525,615825e-10,0,.587302,.542181,605048e-10,0,.619048,.520017,596329e-10,0,.650794,.498204,581516e-10,0,.68254,.476742,569186e-10,0,.714286,.455803,553833e-10,0,.746032,.435251,537807e-10,0,.777778,.415374,522025e-10,0,.809524,.395921,503421e-10,0,.84127,.377253,488211e-10,0,.873016,.359021,468234e-10,0,.904762,.341637,453269e-10,0,.936508,.3247,433014e-10,0,.968254,.308625,418007e-10,0,1,1,2.86798e-10,0,0,1,2.86877e-10,0,0,1,2.88094e-10,0,0,1,2.93506e-10,0,0,1,3.09262e-10,0,0,.999999,3.48593e-10,0,0,.999999,4.44582e-10,0,0,.999998,6.88591e-10,0,0,.999996,1.34391e-9,0,0,.999993,3.17438e-9,0,0,.999989,8.35609e-9,0,0,.999983,2.28677e-8,0,0,.999974,6.23361e-8,0,0,.999959,1.65225e-7,0,0,.999936,4.19983e-7,0,0,.999896,101546e-11,0,0,.99983,232376e-11,0,0,.999709,50156e-10,0,0,.999469,10167e-9,0,0,.998886,190775e-10,0,0,.996819,300511e-10,0,0,.988837,185092e-10,0,1.68222e-7,.982178,134622e-10,0,259622e-9,.975017,125961e-10,0,.00142595,.967101,13507e-9,0,.00382273,.964905,205003e-10,0,.00764164,.96218,29546e-9,0,.0130121,.956821,343738e-10,0,.0200253,.948829,305063e-10,0,.0287452,.941092,346487e-10,0,.039218,.931883,412061e-10,0,.0514748,.920211,444651e-10,0,.0655351,.907307,431252e-10,0,.0814082,.89684,490382e-10,0,.0990939,.884119,53334e-9,0,.118583,.869148,54114e-9,0,.139856,.853377,578536e-10,0,.162882,.836753,592285e-10,0,.187615,.820063,622787e-10,0,.213991,.801694,645492e-10,0,.241918,.782116,65353e-9,0,.271267,.762673,674344e-10,0,.301847,.742133,682788e-10,0,.333333,.720779,691959e-10,0,.365079,.699386,696817e-10,0,.396826,.67732,699583e-10,0,.428572,.654888,698447e-10,0,.460318,.632499,694063e-10,0,.492064,.609825,691612e-10,0,.52381,.587287,681576e-10,0,.555556,.564743,674138e-10,0,.587302,.542409,661617e-10,0,.619048,.520282,647785e-10,0,.650794,.498506,633836e-10,0,.68254,.477102,615905e-10,0,.714286,.456167,601013e-10,0,.746032,.435728,581457e-10,0,.777778,.415809,564215e-10,0,.809524,.396517,544997e-10,0,.84127,.377737,525061e-10,0,.873016,.359698,506831e-10,0,.904762,.342164,48568e-9,0,.936508,.325417,467826e-10,0,.968254,.309186,446736e-10,0,1,1,1.09018e-9,0,0,1,1.0904e-9,0,0,1,1.09393e-9,0,0,1,1.1095e-9,0,0,1,1.154e-9,0,0,1,1.26089e-9,0,0,.999999,1.5059e-9,0,0,.999997,2.07899e-9,0,0,.999994,3.48164e-9,0,0,.999993,7.05728e-9,0,0,.999987,1.63692e-8,0,0,.999981,4.06033e-8,0,0,.999969,1.0245e-7,0,0,.999953,2.55023e-7,0,0,.999925,6.1511e-7,0,0,.999881,142218e-11,0,0,.99981,313086e-11,0,0,.99968,653119e-11,0,0,.999418,12832e-9,0,0,.998748,232497e-10,0,0,.996066,329522e-10,0,0,.988379,179613e-10,0,108799e-9,.982567,143715e-10,0,921302e-9,.976097,148096e-10,0,.00280738,.968475,178905e-10,0,.00596622,.964606,253921e-10,0,.0105284,.961564,348623e-10,0,.0165848,.955517,357612e-10,0,.0242,.948381,343493e-10,0,.03342,.941095,405849e-10,0,.0442777,.931923,475394e-10,0,.0567958,.91996,484328e-10,0,.0709879,.907419,502146e-10,0,.086861,.89618,561654e-10,0,.104415,.88337,587612e-10,0,.123643,.869046,618057e-10,0,.144531,.853278,657392e-10,0,.167057,.836091,66303e-9,0,.191188,.819644,704445e-10,0,.216878,.801246,714071e-10,0,.244062,.782031,740093e-10,0,.272649,.762066,74685e-9,0,.302509,.741964,766647e-10,0,.333442,.720554,766328e-10,0,.365079,.699098,777857e-10,0,.396826,.677189,774633e-10,0,.428572,.65484,776235e-10,0,.460318,.632496,770316e-10,0,.492064,.609908,762669e-10,0,.52381,.587312,753972e-10,0,.555556,.564938,739994e-10,0,.587302,.542577,728382e-10,0,.619048,.52062,71112e-9,0,.650794,.498819,694004e-10,0,.68254,.477555,675575e-10,0,.714286,.456568,653449e-10,0,.746032,.436278,636068e-10,0,.777778,.41637,613466e-10,0,.809524,.397144,594177e-10,0,.84127,.378412,570987e-10,0,.873016,.360376,550419e-10,0,.904762,.342906,527422e-10,0,.936508,.326136,506544e-10,0,.968254,.30997,484307e-10,0,1,1,3.54014e-9,0,0,1,3.54073e-9,0,0,1,3.54972e-9,0,0,1,3.58929e-9,0,0,1,3.70093e-9,0,0,.999999,3.96194e-9,0,0,.999998,4.53352e-9,0,0,.999997,5.78828e-9,0,0,.999994,8.63812e-9,0,0,.999991,1.53622e-8,0,0,.999985,3.16356e-8,0,0,.999977,7.12781e-8,0,0,.999964,1.66725e-7,0,0,.999945,3.90501e-7,0,0,.999912,8.95622e-7,0,0,.999866,198428e-11,0,0,.999786,421038e-11,0,0,.999647,850239e-11,0,0,.999356,162059e-10,0,0,.998563,282652e-10,0,0,.994928,336309e-10,0,244244e-10,.987999,178458e-10,0,523891e-9,.982893,159162e-10,0,.00194729,.977044,178056e-10,0,.00451099,.969972,230624e-10,0,.00835132,.964237,313922e-10,0,.013561,.960791,406145e-10,0,.0202056,.954292,372796e-10,0,.0283321,.948052,403199e-10,0,.0379739,.940938,479537e-10,0,.0491551,.931689,545292e-10,0,.0618918,.91987,54038e-9,0,.0761941,.907665,589909e-10,0,.0920672,.895281,642651e-10,0,.109511,.882621,659707e-10,0,.12852,.86873,709973e-10,0,.149085,.853008,742221e-10,0,.171189,.835944,761754e-10,0,.194809,.818949,797052e-10,0,.21991,.800951,812434e-10,0,.246447,.781847,838075e-10,0,.274352,.761649,84501e-9,0,.303535,.74152,860258e-10,0,.333857,.720495,866233e-10,0,.365104,.698742,868326e-10,0,.396826,.677096,87133e-9,0,.428572,.654782,863497e-10,0,.460318,.632335,860206e-10,0,.492064,.610031,849337e-10,0,.52381,.587457,838279e-10,0,.555556,.56513,82309e-9,0,.587302,.542877,803542e-10,0,.619048,.5209,786928e-10,0,.650794,.499291,765171e-10,0,.68254,.477971,744753e-10,0,.714286,.457221,72209e-9,0,.746032,.436803,697448e-10,0,.777778,.417083,675333e-10,0,.809524,.397749,648058e-10,0,.84127,.379177,625759e-10,0,.873016,.361061,598584e-10,0,.904762,.343713,575797e-10,0,.936508,.326894,549999e-10,0,.968254,.310816,527482e-10,0,1,1,1.0153e-8,0,0,1,1.01544e-8,0,0,1,1.01751e-8,0,0,1,1.02662e-8,0,0,1,1.0521e-8,0,0,.999999,1.11049e-8,0,0,.999999,1.23408e-8,0,0,.999996,1.4924e-8,0,0,.999992,2.04471e-8,0,0,.999989,3.26539e-8,0,0,.99998,6.03559e-8,0,0,.999971,1.23936e-7,0,0,.999955,2.69058e-7,0,0,.999933,5.93604e-7,0,0,.999901,129633e-11,0,0,.999847,275621e-11,0,0,.999761,564494e-11,0,0,.999607,110485e-10,0,0,.999282,204388e-10,0,0,.99831,341084e-10,0,2.2038e-7,.993288,294949e-10,0,242388e-9,.987855,192736e-10,0,.0012503,.983167,182383e-10,0,.0032745,.977908,218633e-10,0,.00646321,.971194,290662e-10,0,.0109133,.963867,386401e-10,0,.0166927,.95982,462827e-10,0,.0238494,.953497,420705e-10,0,.0324178,.947621,477743e-10,0,.0424225,.940611,568258e-10,0,.0538808,.931174,618061e-10,0,.0668047,.919919,627098e-10,0,.0812014,.907856,694714e-10,0,.0970745,.894509,735008e-10,0,.114424,.881954,763369e-10,0,.133246,.868309,821896e-10,0,.153534,.852511,83769e-9,0,.175275,.835821,881615e-10,0,.198453,.817981,896368e-10,0,.223042,.800504,930906e-10,0,.249009,.78141,945056e-10,0,.276304,.761427,963605e-10,0,.304862,.74094,968088e-10,0,.334584,.720233,981481e-10,0,.365322,.698592,979122e-10,0,.396826,.676763,981057e-10,0,.428571,.654808,973956e-10,0,.460318,.632326,962619e-10,0,.492064,.610049,952996e-10,0,.52381,.58763,933334e-10,0,.555556,.565261,917573e-10,0,.587302,.543244,896636e-10,0,.619048,.521273,873304e-10,0,.650794,.499818,852648e-10,0,.68254,.478536,823961e-10,0,.714286,.457826,79939e-9,0,.746032,.437549,77126e-9,0,.777778,.41776,743043e-10,0,.809524,.39863,716426e-10,0,.84127,.379954,686456e-10,0,.873016,.362025,660514e-10,0,.904762,.344581,630755e-10,0,.936508,.327909,605439e-10,0,.968254,.311736,576345e-10,0,1,1,2.63344e-8,0,0,1,2.63373e-8,0,0,1,2.63815e-8,0,0,1,2.65753e-8,0,0,1,2.71132e-8,0,0,.999999,2.83279e-8,0,0,.999997,3.0833e-8,0,0,.999995,3.58711e-8,0,0,.999992,4.61266e-8,0,0,.999985,6.7574e-8,0,0,.999977,1.1358e-7,0,0,.999966,2.13657e-7,0,0,.999948,4.31151e-7,0,0,.999923,8.96656e-7,0,0,.999884,186603e-11,0,0,.999826,381115e-11,0,0,.999732,754184e-11,0,0,.999561,143192e-10,0,0,.999191,257061e-10,0,0,.997955,405724e-10,0,744132e-10,.992228,276537e-10,0,716477e-9,.987638,208885e-10,0,.0022524,.983395,215226e-10,0,.00484816,.978614,270795e-10,0,.00860962,.972389,365282e-10,0,.0136083,.964392,474747e-10,0,.0198941,.95861,509141e-10,0,.0275023,.952806,48963e-9,0,.0364584,.94712,571119e-10,0,.04678,.940104,671704e-10,0,.0584799,.930398,687586e-10,0,.0715665,.919866,738161e-10,0,.086045,.907853,813235e-10,0,.101918,.894078,834582e-10,0,.119186,.881177,892093e-10,0,.137845,.867575,944548e-10,0,.157891,.852107,969607e-10,0,.179316,.835502,101456e-9,0,.202106,.81756,103256e-9,0,.226243,.79984,106954e-9,0,.251704,.780998,108066e-9,0,.278451,.761132,110111e-9,0,.306436,.740429,110459e-9,0,.335586,.719836,111219e-9,0,.365796,.698467,11145e-8,0,.3969,.676446,110393e-9,0,.428571,.654635,110035e-9,0,.460318,.632411,108548e-9,0,.492064,.609986,106963e-9,0,.52381,.587872,105238e-9,0,.555556,.565528,102665e-9,0,.587302,.543563,100543e-9,0,.619048,.52176,976182e-10,0,.650794,.500188,947099e-10,0,.68254,.479204,919929e-10,0,.714286,.458413,886139e-10,0,.746032,.438314,857839e-10,0,.777778,.418573,82411e-9,0,.809524,.39947,792211e-10,0,.84127,.380892,759546e-10,0,.873016,.362953,727571e-10,0,.904762,.345601,695738e-10,0,.936508,.328895,664907e-10,0,.968254,.312808,634277e-10,0,1,1,6.28647e-8,0,0,1,6.28705e-8,0,0,1,6.29587e-8,0,0,1,6.33441e-8,0,0,.999999,6.44087e-8,0,0,.999998,6.67856e-8,0,0,.999997,7.15889e-8,0,0,.999995,8.09577e-8,0,0,.999989,9.92764e-8,0,0,.999983,1.35834e-7,0,0,.999974,2.10482e-7,0,0,.999959,3.65215e-7,0,0,.999939,6.86693e-7,0,0,.999911,13472e-10,0,0,.999868,26731e-10,0,0,.999804,524756e-11,0,0,.9997,100403e-10,0,0,.99951,185019e-10,0,0,.999078,322036e-10,0,620676e-11,.997428,470002e-10,0,341552e-9,.99162,287123e-10,0,.00143727,.987479,234706e-10,0,.00349201,.983582,260083e-10,0,.0066242,.979186,337927e-10,0,.0109113,.97325,454689e-10,0,.0164064,.965221,573759e-10,0,.0231463,.957262,544114e-10,0,.0311571,.952211,587006e-10,0,.0404572,.946631,692256e-10,0,.0510592,.939391,787819e-10,0,.0629723,.929795,792368e-10,0,.0762025,.91965,875075e-10,0,.090753,.907737,950903e-10,0,.106626,.893899,972963e-10,0,.123822,.880239,10459e-8,0,.142337,.866562,107689e-9,0,.16217,.85164,113081e-9,0,.183314,.835021,116636e-9,0,.20576,.817311,120074e-9,0,.229496,.798845,121921e-9,0,.254502,.780479,12475e-8,0,.280753,.760694,125255e-9,0,.308212,.740142,126719e-9,0,.336825,.719248,12636e-8,0,.366517,.698209,126712e-9,0,.397167,.676398,125769e-9,0,.428578,.654378,124432e-9,0,.460318,.632484,123272e-9,0,.492064,.610113,12085e-8,0,.52381,.587931,118411e-9,0,.555556,.565872,11569e-8,0,.587302,.543814,112521e-9,0,.619048,.522265,109737e-9,0,.650794,.500835,106228e-9,0,.68254,.479818,102591e-9,0,.714286,.459258,991288e-10,0,.746032,.439061,952325e-10,0,.777778,.419552,91895e-9,0,.809524,.400399,879051e-10,0,.84127,.381976,844775e-10,0,.873016,.364009,806316e-10,0,.904762,.346761,771848e-10,0,.936508,.330049,735429e-10,0,.968254,.314018,702103e-10,0,1,1,1.39968e-7,0,0,1,1.39979e-7,0,0,1,1.40145e-7,0,0,1,1.4087e-7,0,0,.999999,1.42865e-7,0,0,.999998,1.47279e-7,0,0,.999997,1.56057e-7,0,0,.999992,1.7276e-7,0,0,.999989,2.04352e-7,0,0,.99998,2.6494e-7,0,0,.999969,3.83435e-7,0,0,.999953,6.18641e-7,0,0,.999929,108755e-11,0,0,.999898,201497e-11,0,0,.999849,381346e-11,0,0,.999778,719815e-11,0,0,.999661,133215e-10,0,0,.999451,238313e-10,0,0,.998936,401343e-10,0,113724e-9,.99662,517346e-10,0,820171e-9,.991094,304323e-10,0,.00238143,.987487,281757e-10,0,.00493527,.983731,320048e-10,0,.00856859,.979647,423905e-10,0,.0133393,.973837,562935e-10,0,.0192863,.96584,677442e-10,0,.0264369,.956309,623073e-10,0,.03481,.951523,704131e-10,0,.0444184,.946003,836594e-10,0,.0552713,.938454,911736e-10,0,.0673749,.929279,938264e-10,0,.0807329,.919239,103754e-9,0,.0953479,.907293,109928e-9,0,.111221,.893936,115257e-9,0,.128352,.879674,122265e-9,0,.14674,.865668,125733e-9,0,.166382,.850998,132305e-9,0,.187276,.834498,134844e-9,0,.209413,.816903,139276e-9,0,.232786,.798235,140984e-9,0,.257382,.779724,14378e-8,0,.283181,.760251,144623e-9,0,.310156,.739808,145228e-9,0,.338269,.718762,14539e-8,0,.367461,.697815,144432e-9,0,.397646,.67631,143893e-9,0,.428685,.654278,141846e-9,0,.460318,.632347,13935e-8,0,.492064,.610296,137138e-9,0,.52381,.588039,133806e-9,0,.555556,.566218,130755e-9,0,.587302,.544346,127128e-9,0,.619048,.522701,123002e-9,0,.650794,.501542,119443e-9,0,.68254,.480508,115055e-9,0,.714286,.460092,111032e-9,0,.746032,.440021,106635e-9,0,.777778,.420446,102162e-9,0,.809524,.401512,98184e-9,0,.84127,.38299,936497e-10,0,.873016,.365232,89813e-9,0,.904762,.347865,853073e-10,0,.936508,.331342,817068e-10,0,.968254,.315202,773818e-10,0,1,1,2.9368e-7,0,0,1,2.937e-7,0,0,1,2.93998e-7,0,0,1,2.95298e-7,0,0,.999999,2.98865e-7,0,0,.999998,3.067e-7,0,0,.999995,3.22082e-7,0,0,.999992,3.50767e-7,0,0,.999986,4.03538e-7,0,0,.999976,5.01372e-7,0,0,.999964,6.8562e-7,0,0,.999945,10374e-10,0,0,.999919,171269e-11,0,0,.999882,300175e-11,0,0,.999829,542144e-11,0,0,.999749,984182e-11,0,0,.99962,176213e-10,0,0,.999382,305995e-10,0,138418e-10,.998751,496686e-10,0,389844e-9,.995344,510733e-10,0,.00150343,.990768,345829e-10,0,.00352451,.987464,342841e-10,0,.00655379,.983846,399072e-10,0,.0106554,.980007,533219e-10,0,.0158723,.974494,696992e-10,0,.0222333,.96622,776754e-10,0,.029758,.956273,747718e-10,0,.0384596,.950952,864611e-10,0,.0483473,.945215,100464e-9,0,.0594266,.937287,103729e-9,0,.0717019,.928649,111665e-9,0,.0851752,.918791,12353e-8,0,.0998479,.906685,127115e-9,0,.115721,.893706,13628e-8,0,.132794,.879248,142427e-9,0,.151067,.864685,148091e-9,0,.170538,.850032,153517e-9,0,.191204,.833853,157322e-9,0,.213063,.816353,161086e-9,0,.236107,.797834,164111e-9,0,.260329,.778831,165446e-9,0,.285714,.759756,167492e-9,0,.312243,.739419,166928e-9,0,.339887,.718491,167e-6,0,.368604,.697392,165674e-9,0,.398329,.676102,163815e-9,0,.428961,.654243,162003e-9,0,.460331,.632176,158831e-9,0,.492064,.610407,155463e-9,0,.52381,.588394,152062e-9,0,.555556,.56645,147665e-9,0,.587302,.5449,14375e-8,0,.619048,.523276,138905e-9,0,.650794,.502179,134189e-9,0,.68254,.481359,129392e-9,0,.714286,.46092,124556e-9,0,.746032,.441084,11957e-8,0,.777778,.421517,114652e-9,0,.809524,.402721,109688e-9,0,.84127,.384222,104667e-9,0,.873016,.366534,999633e-10,0,.904762,.349205,950177e-10,0,.936508,.332702,907301e-10,0,.968254,.316599,859769e-10,0,1,1,5.85473e-7,0,0,1,5.85507e-7,0,0,1,5.8602e-7,0,0,.999999,5.88259e-7,0,0,.999999,5.94381e-7,0,0,.999998,6.07754e-7,0,0,.999995,6.33729e-7,0,0,.99999,6.8137e-7,0,0,.999984,7.67003e-7,0,0,.999973,9.21212e-7,0,0,.999959,120218e-11,0,0,.999936,172024e-11,0,0,.999907,268088e-11,0,0,.999866,445512e-11,0,0,.999806,768481e-11,0,0,.999716,1342e-8,0,0,.999576,232473e-10,0,0,.9993,391694e-10,0,129917e-9,.998498,608429e-10,0,845035e-9,.994132,489743e-10,0,.00237616,.99031,384644e-10,0,.00484456,.987409,421768e-10,0,.00832472,.983981,504854e-10,0,.0128643,.980268,671028e-10,0,.0184947,.974875,852749e-10,0,.025237,.966063,85531e-9,0,.0331046,.956779,900588e-10,0,.0421067,.950259,10577e-8,0,.0522487,.944239,119458e-9,0,.0635343,.936341,122164e-9,0,.0759654,.928047,134929e-9,0,.0895434,.918065,145544e-9,0,.104269,.906267,150531e-9,0,.120142,.893419,161652e-9,0,.137163,.878758,16593e-8,0,.15533,.863699,174014e-9,0,.174645,.848876,177877e-9,0,.195106,.833032,184049e-9,0,.21671,.815557,186088e-9,0,.239454,.797323,19054e-8,0,.263332,.778124,191765e-9,0,.288336,.758929,192535e-9,0,.314451,.738979,192688e-9,0,.341658,.718213,191522e-9,0,.369924,.696947,190491e-9,0,.399202,.675807,187913e-9,0,.429416,.654147,184451e-9,0,.460447,.63229,181442e-9,0,.492064,.610499,177139e-9,0,.523809,.588747,172596e-9,0,.555555,.566783,167457e-9,0,.587301,.545359,162518e-9,0,.619048,.523984,156818e-9,0,.650794,.502917,151884e-9,0,.68254,.482294,145514e-9,0,.714286,.461945,140199e-9,0,.746032,.442133,134101e-9,0,.777778,.422705,128374e-9,0,.809524,.403916,122996e-9,0,.84127,.38554,116808e-9,0,.873016,.367909,111973e-9,0,.904762,.350651,105938e-9,0,.936508,.334208,101355e-9,0,.968254,.318123,957629e-10,0,1,1,111633e-11,0,0,1,111639e-11,0,0,1,111725e-11,0,0,1,112096e-11,0,0,.999999,11311e-10,0,0,.999997,115315e-11,0,0,.999995,11956e-10,0,0,.999989,127239e-11,0,0,.999981,140772e-11,0,0,.999969,164541e-11,0,0,.999952,206607e-11,0,0,.999928,281783e-11,0,0,.999895,416835e-11,0,0,.999848,658728e-11,0,0,.999781,108648e-10,0,0,.999682,182579e-10,0,0,.999523,306003e-10,0,159122e-10,.999205,499862e-10,0,391184e-9,.998131,73306e-9,0,.00147534,.993334,513229e-10,0,.0034227,.99016,467783e-10,0,.00632232,.987321,523413e-10,0,.0102295,.984099,64267e-9,0,.0151794,.980432,843042e-10,0,.0211947,.974976,102819e-9,0,.0282899,.966429,996234e-10,0,.0364739,.957633,111074e-9,0,.0457522,.949422,128644e-9,0,.0561278,.943045,140076e-9,0,.0676023,.935448,146349e-9,0,.0801762,.927225,161854e-9,0,.0938499,.917033,169135e-9,0,.108623,.905762,179987e-9,0,.124496,.892879,189832e-9,0,.141469,.878435,195881e-9,0,.159541,.863114,20466e-8,0,.178713,.84776,209473e-9,0,.198985,.832084,214861e-9,0,.220355,.814915,217695e-9,0,.242823,.796711,220313e-9,0,.266385,.777603,22313e-8,0,.291036,.757991,222471e-9,0,.316767,.738371,222869e-9,0,.343563,.717872,221243e-9,0,.371402,.696619,218089e-9,0,.400248,.675379,21562e-8,0,.430047,.65411,21169e-8,0,.460709,.63241,206947e-9,0,.492079,.61046,201709e-9,0,.52381,.58903,196753e-9,0,.555556,.567267,189637e-9,0,.587302,.545886,184735e-9,0,.619048,.524714,177257e-9,0,.650794,.503789,171424e-9,0,.68254,.483204,164688e-9,0,.714286,.462976,157172e-9,0,.746032,.443294,151341e-9,0,.777778,.423988,143737e-9,0,.809524,.405325,138098e-9,0,.84127,.386981,130698e-9,0,.873016,.369436,125276e-9,0,.904762,.35219,118349e-9,0,.936508,.335804,11312e-8,0,.968254,.319749,106687e-9,0,1,1,204685e-11,0,0,1,204694e-11,0,0,1,204831e-11,0,0,.999999,205428e-11,0,0,.999999,207056e-11,0,0,.999997,210581e-11,0,0,.999993,21732e-10,0,0,.999987,229365e-11,0,0,.999979,250243e-11,0,0,.999965,286127e-11,0,0,.999947,348028e-11,0,0,.999918,455588e-11,0,0,.999881,643303e-11,0,0,.999828,970064e-11,0,0,.999753,153233e-10,0,0,.999642,24793e-9,0,0,.999464,402032e-10,0,122947e-9,.999089,635852e-10,0,807414e-9,.997567,857026e-10,0,.00227206,.992903,594912e-10,0,.00462812,.990011,578515e-10,0,.00794162,.987192,65399e-9,0,.0122534,.98418,819675e-10,0,.0175888,.980491,105514e-9,0,.0239635,.974779,121532e-9,0,.031387,.96675,119144e-9,0,.0398644,.958248,136125e-9,0,.0493982,.948884,155408e-9,0,.0599896,.941673,162281e-9,0,.0716382,.934521,176754e-9,0,.0843437,.926205,192873e-9,0,.0981056,.916089,200038e-9,0,.112923,.904963,213624e-9,0,.128796,.892089,221834e-9,0,.145725,.878028,232619e-9,0,.163709,.86249,238632e-9,0,.182749,.846587,247002e-9,0,.202847,.830988,250702e-9,0,.224001,.814165,255562e-9,0,.246214,.796135,257505e-9,0,.269482,.777052,258625e-9,0,.293805,.757201,258398e-9,0,.319176,.737655,256714e-9,0,.345587,.717477,255187e-9,0,.373021,.696433,251792e-9,0,.401454,.675084,247223e-9,0,.430844,.653907,242213e-9,0,.461125,.632561,237397e-9,0,.492187,.610658,229313e-9,0,.52381,.589322,224402e-9,0,.555556,.567857,216116e-9,0,.587302,.54652,209124e-9,0,.619048,.525433,201601e-9,0,.650794,.504679,192957e-9,0,.68254,.484203,186052e-9,0,.714286,.464203,177672e-9,0,.746032,.444549,170005e-9,0,.777778,.425346,162401e-9,0,.809524,.406706,1544e-7,0,.84127,.388576,147437e-9,0,.873016,.37094,139493e-9,0,.904762,.353996,133219e-9,0,.936508,.337391,125573e-9,0,.968254,.321648,119867e-9,0,1,1,362511e-11,0,0,1,362525e-11,0,0,1,362739e-11,0,0,.999999,363673e-11,0,0,.999998,366214e-11,0,0,.999996,371698e-11,0,0,.999992,382116e-11,0,0,.999986,400554e-11,0,0,.999976,432058e-11,0,0,.999961,485194e-11,0,0,.999938,574808e-11,0,0,.999908,726643e-11,0,0,.999865,984707e-11,0,0,.999807,142217e-10,0,0,.999723,215581e-10,0,0,.999602,336114e-10,0,119113e-10,.999398,527353e-10,0,355813e-9,.998946,805809e-10,0,.00137768,.996647,942908e-10,0,.00322469,.992298,668733e-10,0,.00597897,.989802,716564e-10,0,.00968903,.987019,821355e-10,0,.0143845,.984219,104555e-9,0,.0200831,.980425,131245e-9,0,.0267948,.974241,139613e-9,0,.034525,.967006,145931e-9,0,.0432757,.95893,167153e-9,0,.0530471,.949157,188146e-9,0,.0638386,.94062,194625e-9,0,.0756487,.933509,213721e-9,0,.0884762,.925088,229616e-9,0,.10232,.915178,239638e-9,0,.117178,.904093,254814e-9,0,.133051,.891337,263685e-9,0,.149939,.877326,274789e-9,0,.167841,.861794,280534e-9,0,.18676,.845758,289534e-9,0,.206696,.829792,294446e-9,0,.22765,.813037,296877e-9,0,.249625,.795285,300217e-9,0,.27262,.776323,299826e-9,0,.296636,.756673,299787e-9,0,.321671,.736856,297867e-9,0,.347718,.716883,294052e-9,0,.374768,.696089,289462e-9,0,.402804,.67505,285212e-9,0,.431796,.653509,27653e-8,0,.461695,.63258,271759e-9,0,.49242,.61104,262811e-9,0,.523822,.589567,255151e-9,0,.555556,.568322,246434e-9,0,.587302,.547235,237061e-9,0,.619048,.52616,228343e-9,0,.650794,.505716,219236e-9,0,.68254,.485274,209595e-9,0,.714286,.465411,201011e-9,0,.746032,.445854,19109e-8,0,.777778,.426911,182897e-9,0,.809524,.408222,173569e-9,0,.84127,.390307,165496e-9,0,.873016,.372624,156799e-9,0,.904762,.355804,14917e-8,0,.936508,.33924,140907e-9,0,.968254,.323534,134062e-9,0,1,1,622487e-11,0,0,1,62251e-10,0,0,1,622837e-11,0,0,.999999,624259e-11,0,0,.999998,628127e-11,0,0,.999996,636451e-11,0,0,.999991,65218e-10,0,0,.999984,679782e-11,0,0,.999973,726361e-11,0,0,.999955,803644e-11,0,0,.999931,931397e-11,0,0,.999896,114299e-10,0,0,.999847,149402e-10,0,0,.999784,207461e-10,0,0,.999692,302493e-10,0,0,.999554,454957e-10,0,997275e-10,.999326,690762e-10,0,724813e-9,.998757,101605e-9,0,.0020972,.995367,958745e-10,0,.00432324,.99209,832808e-10,0,.00746347,.989517,887601e-10,0,.0115534,.987008,10564e-8,0,.0166134,.98421,133179e-9,0,.0226552,.98021,161746e-9,0,.0296838,.973676,161821e-9,0,.0377016,.967052,178635e-9,0,.0467079,.959385,206765e-9,0,.0567013,.949461,22476e-8,0,.0676796,.939578,23574e-8,0,.0796403,.932416,25893e-8,0,.0925812,.923759,271228e-9,0,.106501,.914223,289165e-9,0,.121397,.902942,301156e-9,0,.13727,.890419,313852e-9,0,.15412,.876639,324408e-9,0,.171946,.861316,33249e-8,0,.190751,.84496,338497e-9,0,.210537,.828427,345861e-9,0,.231305,.811871,347863e-9,0,.253057,.794397,350225e-9,0,.275797,.775726,349915e-9,0,.299525,.75617,347297e-9,0,.324242,.736091,344232e-9,0,.349947,.716213,340835e-9,0,.376633,.695736,332369e-9,0,.404289,.674961,327943e-9,0,.432895,.653518,318533e-9,0,.462415,.632574,310391e-9,0,.492788,.61134,300755e-9,0,.523909,.590017,290506e-9,0,.555556,.568752,280446e-9,0,.587302,.548061,269902e-9,0,.619048,.52711,258815e-9,0,.650794,.506682,248481e-9,0,.68254,.486524,237141e-9,0,.714286,.466812,226872e-9,0,.746032,.44732,216037e-9,0,.777778,.428473,205629e-9,0,.809524,.409921,195691e-9,0,.84127,.392028,185457e-9,0,.873016,.374606,176436e-9,0,.904762,.357601,166508e-9,0,.936508,.341348,158385e-9,0,.968254,.32542,149203e-9,0,1,1,103967e-10,0,0,1,10397e-9,0,0,1,104019e-10,0,0,.999999,104231e-10,0,0,.999998,104806e-10,0,0,.999995,106042e-10,0,0,.999991,108366e-10,0,0,.999982,112415e-10,0,0,.999968,119174e-10,0,0,.99995,130227e-10,0,0,.999922,148176e-10,0,0,.999884,177303e-10,0,0,.99983,224564e-10,0,0,.999758,300966e-10,0,0,.999654,423193e-10,0,549083e-11,.999503,614848e-10,0,296087e-9,.999237,903576e-10,0,.00123144,.998491,1271e-7,0,.00295954,.994594,107754e-9,0,.00555829,.99178,103025e-9,0,.00907209,.989265,11154e-8,0,.0135257,.986998,136296e-9,0,.0189327,.984137,169154e-9,0,.0252993,.979798,196671e-9,0,.0326272,.97337,196678e-9,0,.0409157,.967239,223121e-9,0,.0501623,.959543,253809e-9,0,.0603638,.949466,265972e-9,0,.0715171,.939074,288372e-9,0,.0836187,.931118,310983e-9,0,.0966657,.922525,325561e-9,0,.110656,.912983,345725e-9,0,.125588,.901617,3556e-7,0,.141461,.889487,374012e-9,0,.158275,.875787,383445e-9,0,.176031,.860654,393972e-9,0,.19473,.844417,400311e-9,0,.214374,.82741,405004e-9,0,.234967,.810545,407378e-9,0,.256512,.793312,407351e-9,0,.279011,.774847,406563e-9,0,.302468,.755621,404903e-9,0,.326887,.735511,397486e-9,0,.352266,.715435,39357e-8,0,.378605,.695403,384739e-9,0,.405897,.674681,376108e-9,0,.43413,.65359,365997e-9,0,.463277,.632471,354957e-9,0,.493295,.61151,343593e-9,0,.524106,.59064,331841e-9,0,.555561,.569386,318891e-9,0,.587302,.548785,3072e-7,0,.619048,.528146,29361e-8,0,.650794,.507872,281709e-9,0,.68254,.487805,268627e-9,0,.714286,.468196,255887e-9,0,.746032,.448922,243997e-9,0,.777778,.430093,231662e-9,0,.809524,.411845,220339e-9,0,.84127,.393808,208694e-9,0,.873016,.376615,198045e-9,0,.904762,.359655,187375e-9,0,.936508,.343452,177371e-9,0,.968254,.32765,167525e-9,0,1,1,169351e-10,0,0,1,169356e-10,0,0,1,169427e-10,0,0,.999999,169736e-10,0,0,.999998,170575e-10,0,0,.999995,172372e-10,0,0,.99999,175739e-10,0,0,.999979,181568e-10,0,0,.999966,191206e-10,0,0,.999944,20677e-9,0,0,.999912,231644e-10,0,0,.999869,271268e-10,0,0,.999811,334272e-10,0,0,.99973,433979e-10,0,0,.999617,590083e-10,0,680315e-10,.999445,829497e-10,0,612796e-9,.999138,118019e-9,0,.00187408,.998095,156712e-9,0,.00395791,.993919,125054e-9,0,.00692144,.991333,126091e-9,0,.0107962,.989226,144912e-9,0,.0155986,.986954,175737e-9,0,.0213364,.983982,213883e-9,0,.0280114,.979128,234526e-9,0,.0356226,.973327,243725e-9,0,.0441668,.967416,2773e-7,0,.0536399,.959729,308799e-9,0,.0640376,.949758,322447e-9,0,.0753554,.939173,350021e-9,0,.0875893,.9296,370089e-9,0,.100736,.921181,391365e-9,0,.114793,.91164,413636e-9,0,.129759,.900435,427068e-9,0,.145632,.888183,441046e-9,0,.162412,.874772,454968e-9,0,.180101,.859566,461882e-9,0,.1987,.843579,471556e-9,0,.218213,.826453,474335e-9,0,.238641,.809164,477078e-9,0,.259989,.792179,47755e-8,0,.282262,.773866,472573e-9,0,.305464,.754944,469765e-9,0,.329599,.735133,462371e-9,0,.35467,.714858,453674e-9,0,.380678,.694829,443888e-9,0,.407622,.674453,432052e-9,0,.435493,.653685,420315e-9,0,.464275,.632666,406829e-9,0,.493938,.611676,392234e-9,0,.524422,.591193,379208e-9,0,.555624,.570145,36319e-8,0,.587302,.549566,349111e-9,0,.619048,.529278,334166e-9,0,.650794,.509026,318456e-9,0,.68254,.489186,30449e-8,0,.714286,.469662,289051e-9,0,.746032,.450691,275494e-9,0,.777778,.431841,261437e-9,0,.809524,.413752,247846e-9,0,.84127,.395951,235085e-9,0,.873016,.378633,222245e-9,0,.904762,.36194,210533e-9,0,.936508,.345599,198494e-9,0,.968254,.329999,188133e-9,0,1,1,269663e-10,0,0,1,26967e-9,0,0,1,269772e-10,0,0,.999999,270214e-10,0,0,.999998,271415e-10,0,0,.999994,27398e-9,0,0,.999988,278771e-10,0,0,.999977,287019e-10,0,0,.999961,300544e-10,0,0,.999937,322138e-10,0,0,.999904,356163e-10,0,0,.999854,409465e-10,0,0,.99979,492651e-10,0,0,.999699,621722e-10,0,8.8288e-7,.999572,819715e-10,0,223369e-9,.999381,111689e-9,0,.00105414,.999016,153862e-9,0,.0026493,.997437,187667e-9,0,.00508608,.993545,155672e-9,0,.00840554,.991135,161455e-9,0,.012629,.989157,188241e-9,0,.0177661,.986874,226229e-9,0,.0238198,.983714,268668e-9,0,.0307887,.978301,277109e-9,0,.0386688,.973227,303446e-9,0,.0474554,.967317,341851e-9,0,.0571428,.959477,370885e-9,0,.0677256,.950012,392753e-9,0,.0791988,.939484,42781e-8,0,.0915576,.928135,443866e-9,0,.104798,.919819,472959e-9,0,.118918,.910049,491551e-9,0,.133915,.899181,512616e-9,0,.149788,.886881,523563e-9,0,.166537,.87359,540183e-9,0,.184164,.858613,547386e-9,0,.202669,.842809,554809e-9,0,.222056,.825727,558316e-9,0,.242329,.808086,557824e-9,0,.263492,.790728,556346e-9,0,.285551,.772987,552672e-9,0,.30851,.7541,543738e-9,0,.332376,.734669,536107e-9,0,.357153,.714411,523342e-9,0,.382845,.694196,512238e-9,0,.409454,.674252,497465e-9,0,.436977,.65357,481096e-9,0,.465404,.632999,467054e-9,0,.494713,.611994,448771e-9,0,.524864,.591604,431889e-9,0,.555779,.571134,415238e-9,0,.587302,.550528,396369e-9,0,.619048,.530292,379477e-9,0,.650794,.510364,361488e-9,0,.68254,.490749,343787e-9,0,.714286,.471266,327822e-9,0,.746032,.452462,310626e-9,0,.777778,.433907,295352e-9,0,.809524,.415659,279179e-9,0,.84127,.398138,264685e-9,0,.873016,.380833,249905e-9,0,.904762,.364247,236282e-9,0,.936508,.348041,222905e-9,0,.968254,.332389,210522e-9,0,1,1,420604e-10,0,0,1,420614e-10,0,0,1,420757e-10,0,0,.999999,42138e-9,0,0,.999997,423067e-10,0,0,.999993,426668e-10,0,0,.999986,433372e-10,0,0,.999974,444857e-10,0,0,.999956,463554e-10,0,0,.99993,493105e-10,0,0,.999892,539077e-10,0,0,.999838,610005e-10,0,0,.999767,718822e-10,0,0,.999666,884581e-10,0,365471e-10,.999525,113398e-9,0,485623e-9,.999311,150043e-9,0,.00162096,.998865,200063e-9,0,.00355319,.996278,211014e-9,0,.00633818,.992956,189672e-9,0,.0100043,.991017,210262e-9,0,.0145648,.989055,244292e-9,0,.0200237,.986741,290481e-9,0,.0263798,.983288,334303e-9,0,.033629,.977784,340307e-9,0,.0417652,.973037,377864e-9,0,.0507821,.967181,4239e-7,0,.060673,.958971,443854e-9,0,.0714314,.950093,483039e-9,0,.0830518,.939552,517934e-9,0,.0955288,.927678,539449e-9,0,.108859,.918278,568604e-9,0,.123038,.908449,588505e-9,0,.138065,.897713,612473e-9,0,.153938,.885533,625575e-9,0,.170657,.872131,63854e-8,0,.188224,.857517,647034e-9,0,.20664,.841796,65209e-8,0,.225909,.824726,6544e-7,0,.246035,.807297,655744e-9,0,.267022,.789058,646716e-9,0,.288878,.77189,643898e-9,0,.311607,.753082,629973e-9,0,.335216,.7341,621564e-9,0,.359713,.714094,605171e-9,0,.385103,.693839,588752e-9,0,.41139,.673891,573294e-9,0,.438576,.653565,552682e-9,0,.466656,.633326,533446e-9,0,.495617,.612582,514635e-9,0,.525431,.59205,49303e-8,0,.556041,.571918,471842e-9,0,.587338,.551572,451713e-9,0,.619048,.531553,430049e-9,0,.650794,.51175,410445e-9,0,.68254,.49238,390098e-9,0,.714286,.473143,370033e-9,0,.746032,.45423,351205e-9,0,.777778,.435963,332049e-9,0,.809524,.41787,315021e-9,0,.84127,.400387,297315e-9,0,.873016,.383332,281385e-9,0,.904762,.366665,265397e-9,0,.936508,.350633,250601e-9,0,.968254,.334964,23589e-8,0,1,1,643736e-10,0,0,1,64375e-9,0,0,1,643947e-10,0,0,.999999,64481e-9,0,0,.999997,647143e-10,0,0,.999994,652119e-10,0,0,.999985,661359e-10,0,0,.999972,677116e-10,0,0,.999952,702599e-10,0,0,.999922,742517e-10,0,0,.99988,803906e-10,0,0,.99982,897315e-10,0,0,.999741,103838e-9,0,0,.999629,12496e-8,0,149024e-9,.999474,156161e-9,0,861027e-9,.999229,201034e-9,0,.00231198,.998662,259069e-9,0,.00458147,.995299,245439e-9,0,.00770895,.992732,24498e-8,0,.0117126,.990847,273211e-9,0,.0165989,.988911,316492e-9,0,.0223674,.98654,37161e-8,0,.0290135,.982636,410352e-9,0,.0365309,.977346,421756e-9,0,.0449117,.972909,475578e-9,0,.0541481,.966821,522482e-9,0,.0642326,.958686,545008e-9,0,.075158,.949754,589286e-9,0,.0869181,.939184,619995e-9,0,.0995074,.927505,654266e-9,0,.112922,.916606,682362e-9,0,.127157,.906707,704286e-9,0,.142212,.895937,725909e-9,0,.158085,.883913,743939e-9,0,.174776,.870642,755157e-9,0,.192287,.856241,764387e-9,0,.210619,.84069,771032e-9,0,.229775,.823728,765906e-9,0,.249761,.806481,767604e-9,0,.270582,.787924,754385e-9,0,.292243,.770588,749668e-9,0,.314753,.751991,731613e-9,0,.338118,.733407,717655e-9,0,.362347,.713688,700604e-9,0,.387447,.693595,678765e-9,0,.413424,.673426,657042e-9,0,.440284,.65359,635892e-9,0,.468027,.633576,611569e-9,0,.496645,.613144,586011e-9,0,.526122,.592711,563111e-9,0,.556417,.572722,537699e-9,0,.587451,.552762,512556e-9,0,.619048,.532985,489757e-9,0,.650794,.513219,464139e-9,0,.68254,.493992,442193e-9,0,.714286,.47509,418629e-9,0,.746032,.456287,397045e-9,0,.777778,.438152,375504e-9,0,.809524,.420294,35492e-8,0,.84127,.402749,335327e-9,0,.873016,.385879,316422e-9,0,.904762,.369352,298333e-9,0,.936508,.353301,281417e-9,0,.968254,.337781,265203e-9,0,1,1,968267e-10,0,0,1,968284e-10,0,0,1,968556e-10,0,0,.999999,969733e-10,0,0,.999997,972913e-10,0,0,.999993,979688e-10,0,0,.999984,992239e-10,0,0,.999969,101356e-9,0,0,.999946,104784e-9,0,0,.999913,110111e-9,0,0,.999868,118217e-9,0,0,.999801,130396e-9,0,0,.999712,148523e-9,0,124907e-10,.999589,175233e-9,0,355405e-9,.999416,213999e-9,0,.0013528,.999136,268529e-9,0,.00312557,.998367,333088e-9,0,.00573045,.994701,304757e-9,0,.00919397,.992497,318031e-9,0,.0135261,.990608,353863e-9,0,.0187278,.988715,409044e-9,0,.0247947,.986241,472967e-9,0,.0317196,.981696,495104e-9,0,.039494,.977097,532873e-9,0,.0481087,.972583,594447e-9,0,.0575549,.966142,636867e-9,0,.0678242,.95823,669899e-9,0,.0789089,.949677,719499e-9,0,.0908023,.939226,750584e-9,0,.103499,.927501,793183e-9,0,.116993,.915199,81995e-8,0,.131282,.90498,847654e-9,0,.146364,.894243,868929e-9,0,.162237,.882154,884278e-9,0,.178902,.869161,898108e-9,0,.196358,.854751,901254e-9,0,.21461,.839368,90679e-8,0,.23366,.822874,901541e-9,0,.253512,.805514,897297e-9,0,.274174,.78716,881856e-9,0,.29565,.769061,870032e-9,0,.31795,.751,851719e-9,0,.341081,.732614,830671e-9,0,.365053,.713171,806569e-9,0,.389874,.693472,78338e-8,0,.415553,.673528,756404e-9,0,.442098,.653397,726872e-9,0,.469512,.633781,700494e-9,0,.497794,.613877,67105e-8,0,.526935,.593506,640361e-9,0,.556908,.573667,613502e-9,0,.587657,.553932,583177e-9,0,.61906,.534345,554375e-9,0,.650794,.515042,527811e-9,0,.68254,.495674,499367e-9,0,.714286,.477132,47429e-8,0,.746032,.458609,447726e-9,0,.777778,.440354,424205e-9,0,.809524,.422765,399549e-9,0,.84127,.405472,378315e-9,0,.873016,.388482,355327e-9,0,.904762,.372191,336122e-9,0,.936508,.356099,315247e-9,0,.968254,.340737,29794e-8,0,1,1,143327e-9,0,0,1,14333e-8,0,0,1,143366e-9,0,0,.999999,143524e-9,0,0,.999996,143952e-9,0,0,.999991,144862e-9,0,0,.999981,146544e-9,0,0,.999966,149391e-9,0,0,.999941,153946e-9,0,0,.999905,160971e-9,0,0,.999852,171562e-9,0,0,.99978,18729e-8,0,0,.999681,210386e-9,0,826239e-10,.999546,243906e-9,0,664807e-9,.999352,291739e-9,0,.00196192,.999027,357419e-9,0,.00405941,.997886,422349e-9,0,.00699664,.99419,385008e-9,0,.0107896,.99214,409775e-9,0,.0154415,.990274,456418e-9,0,.0209488,.988455,527008e-9,0,.0273037,.985804,597685e-9,0,.0344969,.98103,613124e-9,0,.0425183,.976674,668321e-9,0,.0513575,.972021,736985e-9,0,.0610046,.965274,773789e-9,0,.0714508,.958046,830852e-9,0,.0826877,.949333,875766e-9,0,.0947085,.939135,917088e-9,0,.107507,.927119,952244e-9,0,.121078,.91469,990626e-9,0,.135419,.903006,.00101304,0,.150526,.892368,.00103834,0,.166399,.880231,.00105002,0,.183038,.867432,.00106331,0,.200443,.853208,.00106783,0,.218618,.837956,.00106458,0,.237566,.821772,.00105945,0,.257291,.804328,.00104685,0,.2778,.786465,.00103178,0,.2991,.768004,.00101077,0,.321199,.74972,985504e-9,0,.344106,.731682,962893e-9,0,.36783,.712813,932146e-9,0,.392383,.693139,89871e-8,0,.417774,.673566,869678e-9,0,.444013,.653483,835525e-9,0,.471107,.633891,799853e-9,0,.49906,.614433,766838e-9,0,.527869,.594586,732227e-9,0,.557517,.574769,696442e-9,0,.587966,.555149,663935e-9,0,.61913,.535898,629826e-9,0,.650794,.516753,596486e-9,0,.68254,.497816,567078e-9,0,.714286,.479034,534399e-9,0,.746032,.460975,507013e-9,0,.777778,.442935,477421e-9,0,.809524,.425263,451101e-9,0,.84127,.408248,424964e-9,0,.873016,.391339,39993e-8,0,.904762,.37513,377619e-9,0,.936508,.359172,354418e-9,0,.968254,.343876,334823e-9,0,1,1,209042e-9,0,0,1,209045e-9,0,0,1,209093e-9,0,0,.999999,209304e-9,0,0,.999996,209871e-9,0,0,.999991,211078e-9,0,0,.999979,213304e-9,0,0,.999963,217061e-9,0,0,.999933,223042e-9,0,0,.999894,232206e-9,0,0,.999837,245901e-9,0,0,.999756,266023e-9,0,102927e-11,.999648,295204e-9,0,233468e-9,.999499,336958e-9,0,.00108237,.999283,395563e-9,0,.00268832,.998896,473785e-9,0,.00511138,.997006,520008e-9,0,.00837705,.993819,497261e-9,0,.0124928,.991632,523722e-9,0,.0174561,.989875,587258e-9,0,.0232596,.988109,676329e-9,0,.0298932,.985155,747701e-9,0,.0373453,.980479,768803e-9,0,.0456045,.976271,841054e-9,0,.0546593,.971347,911469e-9,0,.0644994,.964528,953057e-9,0,.0751152,.957632,.00102221,0,.0864981,.948681,.00106122,0,.0986407,.938716,.00111857,0,.111537,.926629,.00114762,0,.125182,.914025,.00118995,0,.139571,.901026,.00121228,0,.154703,.890358,.00123946,0,.170576,.878283,.0012527,0,.18719,.865459,.00125536,0,.204547,.851407,.00126134,0,.222648,.836276,.00124759,0,.241498,.820436,.00124443,0,.261101,.803253,.00122071,0,.281465,.785562,.00120107,0,.302595,.76718,.00117762,0,.324501,.748551,.00114289,0,.347192,.730564,.00110872,0,.370679,.712253,.00107636,0,.394973,.692867,.00103646,0,.420085,.673695,996793e-9,0,.446027,.653912,95675e-8,0,.47281,.634129,916739e-9,0,.500441,.615004,874401e-9,0,.528921,.595587,833411e-9,0,.558244,.575965,794556e-9,0,.588384,.5566,75196e-8,0,.619281,.537428,716381e-9,0,.650795,.518623,676558e-9,0,.68254,.499964,64074e-8,0,.714286,.481356,605984e-9,0,.746032,.463279,570256e-9,0,.777778,.445673,540138e-9,0,.809524,.428032,507299e-9,0,.84127,.411112,479553e-9,0,.873016,.394444,450737e-9,0,.904762,.378247,424269e-9,0,.936508,.362415,399111e-9,0,.968254,.347103,375274e-9,0,1,1,300729e-9,0,0,1,300733e-9,0,0,1,300797e-9,0,0,.999998,301072e-9,0,0,.999996,301817e-9,0,0,.999989,303398e-9,0,0,.999977,306309e-9,0,0,.999958,311209e-9,0,0,.999927,318975e-9,0,0,.999884,330804e-9,0,0,.99982,34834e-8,0,0,.999733,373854e-9,0,326995e-10,.999613,410424e-9,0,477174e-9,.999447,462047e-9,0,.00161099,.999204,533322e-9,0,.00353153,.998725,624964e-9,0,.00627965,.995871,631786e-9,0,.0098693,.993194,632017e-9,0,.0143011,.991541,68923e-8,0,.019568,.989773,766892e-9,0,.0256593,.987647,863668e-9,0,.0325625,.984193,922089e-9,0,.0402647,.980016,970749e-9,0,.0487532,.975859,.00106027,0,.058016,.970514,.00112239,0,.0680419,.963625,.00117212,0,.0788208,.956959,.00125211,0,.0903439,.947956,.00129411,0,.102604,.93809,.00135879,0,.115594,.92659,.00139309,0,.129309,.913829,.00143253,0,.143745,.90005,.00145809,0,.158901,.888129,.0014748,0,.174774,.87607,.00148756,0,.191365,.863461,.00148714,0,.208674,.849594,.00148892,0,.226705,.834531,.00146496,0,.245461,.81903,.0014579,0,.264947,.802122,.00143039,0,.28517,.78445,.00139717,0,.306137,.766434,.00136312,0,.327857,.747816,.00132597,0,.350341,.729519,.00128323,0,.373598,.711454,.00123803,0,.397642,.692699,.00119097,0,.422485,.673723,.00114565,0,.448139,.654386,.00109552,0,.474619,.634673,.00104553,0,.501933,.615554,99985e-8,0,.530089,.596462,948207e-9,0,.559087,.577385,902299e-9,0,.588913,.558257,856448e-9,0,.619525,.5392,810395e-9,0,.650826,.520543,768558e-9,0,.68254,.502206,7239e-7,0,.714286,.48402,685794e-9,0,.746032,.465779,64471e-8,0,.777778,.448455,609583e-9,0,.809524,.431091,57227e-8,0,.84127,.414147,54042e-8,0,.873016,.39765,506545e-9,0,.904762,.381576,477635e-9,0,.936508,.365881,448446e-9,0,.968254,.350582,421424e-9,0,1,1,427144e-9,0,0,1,427151e-9,0,0,1,427232e-9,0,0,.999998,42759e-8,0,0,.999995,428555e-9,0,0,.999988,430603e-9,0,0,.999976,434368e-9,0,0,.999952,440688e-9,0,0,.999919,450667e-9,0,0,.999871,46578e-8,0,0,.999801,488024e-9,0,0,.999704,520092e-9,0,129791e-9,.999572,565553e-9,0,821056e-9,.999389,628906e-9,0,.00225241,.999114,714911e-9,0,.00449109,.998488,819218e-9,0,.00756249,.995234,80415e-8,0,.0114716,.993021,830181e-9,0,.0162131,.991407,902645e-9,0,.021776,.989625,996934e-9,0,.0281471,.987064,.00109707,0,.0353118,.983265,.00114353,0,.0432562,.979535,.0012272,0,.0519665,.975224,.00132642,0,.0614298,.969574,.00138092,0,.0716348,.963021,.00145896,0,.0825709,.956046,.00152834,0,.094229,.947136,.00158217,0,.106602,.937313,.0016347,0,.119682,.926073,.00168383,0,.133465,.913121,.00171627,0,.147947,.899165,.00174229,0,.163125,.885891,.00176137,0,.178998,.873783,.00176406,0,.195566,.861331,.00176156,0,.21283,.847569,.00175346,0,.230793,.832785,.00172753,0,.249459,.817442,.00170204,0,.268832,.800613,.00166576,0,.28892,.783597,.00162909,0,.30973,.76571,.0015826,0,.331271,.747021,.00153106,0,.353554,.728593,.00148036,0,.37659,.710661,.00142808,0,.400391,.692426,.00136906,0,.424973,.673623,.00131066,0,.450347,.65494,.00125569,0,.476531,.635448,.00119517,0,.503535,.616221,.00113828,0,.531372,.597531,.0010816,0,.560047,.578795,.00102673,0,.589554,.559892,970985e-9,0,.619869,.541307,919773e-9,0,.650923,.522608,868479e-9,0,.68254,.504484,82137e-8,0,.714286,.486603,772916e-9,0,.746032,.468802,730353e-9,0,.777778,.451172,684955e-9,0,.809524,.434348,647565e-9,0,.84127,.417445,605863e-9,0,.873016,.401077,571885e-9,0,.904762,.385039,536034e-9,0,.936508,.369483,504227e-9,0,.968254,.354272,473165e-9,0,1,1,599525e-9,0,0,1,599533e-9,0,0,1,599639e-9,0,0,.999998,600097e-9,0,0,.999994,601336e-9,0,0,.999987,603958e-9,0,0,.999972,608775e-9,0,0,.999949,616842e-9,0,0,.999912,629534e-9,0,0,.999857,648658e-9,0,0,.999781,676615e-9,0,538873e-11,.999674,716574e-9,0,308602e-9,.999528,772641e-9,0,.00127003,.999326,849806e-9,0,.00300783,.999009,952682e-9,0,.00556637,.998112,.00106394,0,.00895889,.994496,.00102228,0,.0131827,.992806,.00108586,0,.0182277,.991211,.0011759,0,.0240795,.989415,.00128955,0,.030723,.986499,.00139038,0,.0381418,.982679,.00144539,0,.046321,.978839,.00153954,0,.0552459,.974295,.00164417,0,.0649034,.968784,.00171517,0,.0752814,.962324,.00180282,0,.0863693,.954956,.00186387,0,.0981578,.94624,.00193817,0,.110639,.936517,.00198156,0,.123806,.925186,.00203042,0,.137655,.91252,.0020664,0,.15218,.898441,.00207822,0,.16738,.884394,.0020992,0,.183253,.871273,.00208748,0,.199799,.859057,.00208686,0,.21702,.845243,.00205519,0,.234918,.830723,.00202868,0,.253496,.815801,.00199501,0,.272761,.79914,.00194193,0,.292719,.782372,.00188824,0,.313377,.76482,.00183695,0,.334745,.746586,.00177418,0,.356833,.7281,.00170628,0,.379654,.709842,.00164063,0,.403221,.692019,.00157355,0,.427548,.67364,.00150262,0,.452651,.655277,.00143473,0,.478545,.636438,.00136371,0,.505246,.617364,.00129911,0,.532768,.598603,.00123014,0,.561122,.580195,.00116587,0,.590309,.561786,.00110398,0,.620318,.543377,.00104148,0,.651102,.525093,983984e-9,0,.682545,.506791,92667e-8,0,.714286,.489291,874326e-9,0,.746032,.471811,821734e-9,0,.777778,.454435,774698e-9,0,.809524,.437493,727302e-9,0,.84127,.420977,684039e-9,0,.873016,.404729,64373e-8,0,.904762,.388756,60285e-8,0,.936508,.373344,56765e-8,0,.968254,.358191,531929e-9,0,1,1,832169e-9,0,0,1,832178e-9,0,0,1,83231e-8,0,0,.999998,832893e-9,0,0,.999995,834465e-9,0,0,.999985,837791e-9,0,0,.999969,843893e-9,0,0,.999944,854086e-9,0,0,.999903,870071e-9,0,0,.999843,894042e-9,0,0,.999759,928865e-9,0,531805e-10,.999643,978242e-9,0,579365e-9,.99948,.00104684,0,.00182774,.999255,.00114012,0,.00387804,.998885,.00126188,0,.00675709,.997405,.00135888,0,.010468,.99424,.00133626,0,.0150018,.992458,.00140905,0,.0203443,.990929,.00152305,0,.0264786,.989116,.00165882,0,.0333875,.985624,.00174128,0,.0410536,.982003,.00182108,0,.0494609,.978336,.00194498,0,.0585941,.973184,.00202708,0,.0684396,.9678,.00212166,0,.0789851,.961348,.00221366,0,.0902199,.953841,.00228219,0,.102134,.94534,.00235662,0,.114721,.935552,.00240572,0,.127972,.924064,.00244405,0,.141884,.911827,.00247557,0,.156451,.897731,.00248374,0,.171672,.883409,.00249863,0,.187545,.868625,.00246688,0,.20407,.856529,.00246523,0,.221249,.842999,.00242368,0,.239083,.828505,.00237354,0,.257578,.813825,.00232588,0,.276738,.797813,.00226731,0,.296569,.781097,.00219704,0,.31708,.764038,.00212394,0,.338281,.746067,.00204786,0,.360181,.727687,.00196728,0,.382794,.709571,.00188779,0,.406133,.691503,.00180532,0,.430213,.673673,.00171849,0,.45505,.655732,.00164147,0,.480662,.637399,.00155858,0,.507065,.618616,.00147641,0,.534278,.60005,.00140125,0,.562313,.581713,.00132441,0,.59118,.563546,.00125014,0,.620875,.545605,.00118249,0,.651373,.527559,.0011116,0,.682593,.509764,.00104979,0,.714286,.49193,985977e-9,0,.746032,.475011,928592e-9,0,.777778,.457878,873466e-9,0,.809524,.440979,819585e-9,0,.84127,.424613,772365e-9,0,.873016,.408549,722195e-9,0,.904762,.392771,680014e-9,0,.936508,.377317,636797e-9,0,.968254,.362352,598318e-9,0,1,1,.00114313,0,0,1,.00114314,0,0,.999999,.00114331,0,0,.999998,.00114404,0,0,.999994,.00114601,0,0,.999984,.00115019,0,0,.999967,.00115784,0,0,.999937,.0011706,0,0,.999894,.00119054,0,0,.999828,.00122031,0,0,.999735,.00126331,0,169263e-9,.999606,.00132382,0,949167e-9,.999426,.0014071,0,.00249668,.999173,.00151895,0,.00486392,.99873,.00166102,0,.00806323,.996243,.0017023,0,.0120895,.993779,.00172782,0,.0169288,.9919,.0018108,0,.0225633,.990524,.00196028,0,.028974,.98868,.00212014,0,.036142,.984663,.00217598,0,.044049,.981457,.00230563,0,.0526781,.977608,.00243966,0,.0620137,.972215,.00251336,0,.0720418,.966798,.0026285,0,.0827499,.960241,.00271409,0,.0941271,.952489,.00278381,0,.106164,.944127,.00285399,0,.118852,.934282,.00290994,0,.132185,.923271,.00294558,0,.146157,.910803,.00296269,0,.160766,.896705,.00296803,0,.176007,.88238,.00296637,0,.19188,.867116,.00293163,0,.208385,.853636,.00289418,0,.225523,.840469,.00284663,0,.243296,.82639,.00278594,0,.261709,.811759,.00271618,0,.280767,.796113,.00263187,0,.300476,.779518,.00254589,0,.320845,.763142,.00246003,0,.341883,.745464,.00236529,0,.363601,.727491,.00226536,0,.386011,.709414,.00216375,0,.409128,.691396,.00207127,0,.432967,.67368,.00197106,0,.457545,.656049,.00187022,0,.482881,.638188,.00177605,0,.508992,.620177,.00168482,0,.535899,.601506,.00158909,0,.563619,.58362,.00150583,0,.592165,.565496,.00141791,0,.621544,.54789,.00133693,0,.651743,.530323,.00126038,0,.682709,.512795,.00118556,0,.714286,.495199,.00111527,0,.746032,.478101,.0010489,0,.777778,.461511,984264e-9,0,.809524,.444879,92591e-8,0,.84127,.428424,866582e-9,0,.873016,.412495,814463e-9,0,.904762,.396975,764498e-9,0,.936508,.381614,715967e-9,0,.968254,.366732,672483e-9,0,1,1,.00155501,0,0,1,.00155503,0,0,1,.00155524,0,0,.999998,.00155615,0,0,.999994,.0015586,0,0,.999983,.00156379,0,0,.999963,.0015733,0,0,.999932,.00158911,0,0,.999882,.00161376,0,0,.99981,.00165041,0,100875e-10,.999708,.00170304,0,367658e-9,.999565,.00177658,0,.0014234,.999368,.00187688,0,.00327939,.999081,.00200989,0,.00596629,.99852,.00217177,0,.0094852,.99549,.0021745,0,.013824,.993252,.00222357,0,.0189642,.991727,.00235022,0,.0248856,.989951,.00250561,0,.0315669,.988029,.00268829,0,.0389882,.984029,.0027496,0,.0471302,.980683,.00289793,0,.0559754,.976554,.00303315,0,.0655081,.97139,.00313257,0,.0757138,.965544,.00323656,0,.08658,.95912,.00333432,0,.0980954,.951183,.0034039,0,.110251,.942974,.00347515,0,.123038,.932642,.00350381,0,.13645,.922158,.00354519,0,.150482,.909404,.00353851,0,.165129,.896071,.0035435,0,.18039,.881206,.00349936,0,.196263,.866077,.00347256,0,.212748,.85093,.003415,0,.229847,.837703,.00333367,0,.247561,.823878,.003249,0,.265895,.809449,.00316347,0,.284854,.794379,.00306351,0,.304445,.778138,.0029499,0,.324675,.761997,.00284099,0,.345555,.744938,.00272104,0,.367095,.727212,.00260715,0,.389309,.709549,.00248855,0,.41221,.691704,.00236783,0,.435814,.673689,.00225178,0,.460138,.656453,.00213765,0,.485203,.639128,.00202178,0,.511028,.621512,.00191443,0,.537634,.603598,.00180977,0,.565041,.58559,.00170456,0,.593268,.567852,.00160927,0,.622327,.5503,.00151395,0,.652217,.533033,.00142499,0,.682907,.515942,.00133955,0,.714296,.498814,.0012602,0,.746032,.481595,.00118188,0,.777778,.465117,.00111171,0,.809524,.448865,.00104091,0,.84127,.432711,976618e-9,0,.873016,.416822,91859e-8,0,.904762,.401272,857704e-9,0,.936508,.386226,807172e-9,0,.968254,.371321,75464e-8,0,1,1,.00209596,0,0,1,.00209598,0,0,1,.00209624,0,0,.999997,.00209736,0,0,.999991,.00210039,0,0,.999979,.00210678,0,0,.999959,.00211847,0,0,.999925,.0021379,0,0,.99987,.00216809,0,0,.999791,.00221281,0,681487e-10,.999677,.00227669,0,658161e-9,.999521,.00236533,0,.00200635,.999301,.00248514,0,.0041779,.998977,.00264185,0,.00718648,.998191,.00281695,0,.0110239,.994801,.00278518,0,.015672,.993091,.00288774,0,.0211091,.991571,.00303931,0,.0273123,.9897,.00321643,0,.034259,.987023,.00337332,0,.0419282,.983289,.00346146,0,.0502998,.979892,.00363704,0,.0593562,.975111,.00373601,0,.069081,.970351,.0038842,0,.0794598,.964131,.00397053,0,.0904798,.957747,.00408078,0,.10213,.949536,.00413533,0,.1144,.941372,.00420305,0,.127284,.931049,.00422815,0,.140772,.920647,.00425048,0,.154862,.908033,.0042281,0,.169548,.895028,.00422026,0,.184828,.879968,.00415042,0,.200701,.864875,.00408821,0,.217167,.84918,.00400909,0,.234227,.834934,.00391178,0,.251884,.821397,.00380066,0,.270141,.807135,.00367974,0,.289004,.792363,.00355172,0,.308479,.776661,.003411,0,.328575,.760705,.00328123,0,.349301,.744408,.00314003,0,.370668,.726994,.0029906,0,.392689,.709598,.00285034,0,.415379,.692112,.00271179,0,.438754,.674435,.00257185,0,.46283,.65676,.00243425,0,.48763,.639982,.00230351,0,.513173,.622983,.0021777,0,.539482,.605471,.00204991,0,.566579,.58796,.00193759,0,.594488,.570463,.00181976,0,.623226,.553058,.00171497,0,.6528,.535894,.00161109,0,.683198,.519089,.00151394,0,.714354,.502454,.00142122,0,.746032,.485681,.00133488,0,.777778,.468935,.00124975,0,.809524,.452951,.00117309,0,.84127,.437139,.00110155,0,.873016,.421446,.00103124,0,.904762,.405951,966387e-9,0,.936508,.391003,908119e-9,0,.968254,.376198,848057e-9,0,1,1,.00280076,0,0,1,.00280078,0,0,.999999,.00280109,0,0,.999997,.00280246,0,0,.999992,.00280616,0,0,.999979,.00281396,0,0,.999956,.00282822,0,0,.999916,.00285186,0,0,.999857,.0028885,0,0,.999768,.00294259,0,196026e-9,.999645,.00301946,0,.00104842,.99947,.00312541,0,.00270199,.999229,.00326733,0,.00519449,.998852,.00344992,0,.00852602,.997558,.00361052,0,.0126804,.994417,.0035898,0,.017635,.992824,.00372393,0,.023365,.991344,.00390695,0,.0298456,.989337,.00410392,0,.0370529,.985811,.00420987,0,.0449651,.982772,.00437488,0,.0535615,.979001,.00455069,0,.0628243,.974102,.00464462,0,.0727368,.969197,.00480577,0,.0832844,.962759,.00487818,0,.0944545,.956207,.00498176,0,.106236,.947909,.00503392,0,.118619,.939596,.00507474,0,.131595,.929642,.00509798,0,.145159,.918807,.00508476,0,.159305,.906921,.00505634,0,.174028,.893312,.00498845,0,.189327,.878933,.0049133,0,.2052,.863986,.0048259,0,.221647,.847936,.00470848,0,.23867,.832253,.00456889,0,.25627,.818619,.00442726,0,.274453,.804788,.00427677,0,.293222,.790241,.00411906,0,.312585,.775162,.00394833,0,.33255,.759463,.00377366,0,.353126,.743598,.00361026,0,.374324,.72697,.00343627,0,.396158,.709646,.00326422,0,.418641,.69277,.00309717,0,.44179,.675371,.0029356,0,.465624,.657863,.00277712,0,.490163,.640772,.00261738,0,.515429,.624441,.0024737,0,.541445,.607497,.00233125,0,.568236,.590438,.00218994,0,.595828,.573224,.0020664,0,.624242,.556168,.00193526,0,.653496,.539232,.00182463,0,.683588,.522352,.00170735,0,.714482,.506172,.00160555,0,.746032,.489842,.00150451,0,.777778,.473463,.00140938,0,.809524,.457266,.00132568,0,.84127,.441609,.0012376,0,.873016,.426348,.00116265,0,.904762,.411002,.00108935,0,.936508,.396045,.00101946,0,.968254,.381448,955665e-9,0,1,1,.0037121,0,0,1,.00371213,0,0,1,.00371251,0,0,.999997,.00371417,0,0,.99999,.00371863,0,0,.999977,.00372807,0,0,.99995,.00374529,0,0,.999908,.0037738,0,0,.999843,.00381789,0,123596e-10,.999745,.00388273,0,407442e-9,.999608,.00397443,0,.0015447,.999415,.00409998,0,.00351385,.999143,.00426662,0,.0063316,.9987,.00447625,0,.00998679,.996363,.00455323,0,.0144569,.994021,.00461052,0,.0197151,.992372,.00476359,0,.0257344,.991007,.00499101,0,.0324882,.988767,.0051972,0,.0399517,.984872,.00528407,0,.0481022,.982004,.00548926,0,.0569191,.977714,.00564385,0,.0663839,.973076,.0057693,0,.0764801,.967565,.0058924,0,.0871928,.961384,.00599629,0,.0985095,.954435,.00605998,0,.110419,.946303,.0061133,0,.122912,.937662,.00612028,0,.13598,.927867,.00612209,0,.149617,.916475,.00604813,0,.163817,.90541,.00603088,0,.178577,.891591,.00592218,0,.193894,.877573,.00578854,0,.209767,.862511,.00566648,0,.226196,.846861,.00551481,0,.243182,.83068,.00533754,0,.260728,.815725,.00515487,0,.278837,.802321,.0049655,0,.297515,.787826,.00475421,0,.316768,.773454,.00456002,0,.336605,.758224,.00434727,0,.357034,.74265,.00414444,0,.378067,.726729,.00393738,0,.399717,.710155,.00373575,0,.421998,.693312,.00353736,0,.444928,.67653,.00334368,0,.468523,.659444,.00315981,0,.492806,.642051,.00297809,0,.517798,.625758,.00280592,0,.543525,.609615,.00264254,0,.570012,.592919,.00248459,0,.597288,.576298,.00233327,0,.625379,.559489,.00219519,0,.654307,.542891,.00205441,0,.684084,.526255,.00193385,0,.714693,.509853,.00180745,0,.746044,.494131,.00169817,0,.777778,.478114,.0015913,0,.809524,.462274,.00148981,0,.84127,.446412,.00139537,0,.873016,.431274,.00130984,0,.904762,.41635,.00122403,0,.936508,.401476,.00114809,0,.968254,.386993,.00107563,0,1,1,.00488216,0,0,1,.0048822,0,0,1,.00488265,0,0,.999997,.00488463,0,0,.999988,.00488999,0,0,.999974,.00490129,0,0,.999946,.00492191,0,0,.999897,.00495598,0,0,.999825,.00500855,0,744791e-10,.999718,.00508559,0,712744e-9,.999565,.005194,0,.00215249,.999352,.00534147,0,.00444576,.999046,.00553523,0,.00759218,.998492,.00577016,0,.0115714,.995564,.00578487,0,.0163557,.993339,.00586414,0,.021915,.991834,.00606002,0,.0282201,.990496,.00633312,0,.0352433,.987826,.00651941,0,.042959,.98383,.00660842,0,.0513439,.98109,.00685523,0,.0603772,.976131,.00695778,0,.0700402,.971922,.00714236,0,.0803163,.965901,.00721437,0,.0911908,.959606,.00732017,0,.102651,.952504,.00735788,0,.114686,.944365,.00738493,0,.127286,.935652,.00737969,0,.140443,.925813,.00733612,0,.154151,.914397,.00723094,0,.168405,.903257,.00714002,0,.183201,.890015,.00700149,0,.198536,.876014,.00682813,0,.214409,.861436,.00665567,0,.23082,.845752,.00644526,0,.24777,.829169,.00621635,0,.265263,.813435,.00597789,0,.283301,.799701,.00575694,0,.301889,.785726,.00549866,0,.321035,.77152,.0052503,0,.340746,.75683,.00499619,0,.361032,.741951,.0047543,0,.381904,.726367,.0045084,0,.403374,.710537,.00426784,0,.425457,.693965,.00403487,0,.448169,.677724,.0038075,0,.47153,.66117,.00359431,0,.495561,.644274,.00338354,0,.520284,.627449,.00318163,0,.545725,.611645,.00299672,0,.571911,.595614,.00281016,0,.598873,.579426,.00264252,0,.62664,.563016,.00247509,0,.655239,.546728,.00232647,0,.684692,.530539,.00217803,0,.714999,.514164,.00204216,0,.746106,.498344,.00191403,0,.777778,.482957,.00179203,0,.809524,.467336,.00167695,0,.84127,.451994,.00157567,0,.873016,.436514,.00147113,0,.904762,.42178,.00138034,0,.936508,.407271,.00129219,0,.968254,.392822,.0012098,0,1,1,.00637427,0,0,1,.00637431,0,0,.999999,.00637485,0,0,.999996,.00637721,0,0,.999987,.00638357,0,0,.999971,.006397,0,0,.999939,.00642142,0,0,.999888,.00646177,0,0,.999807,.00652387,0,207916e-9,.999689,.00661454,0,.00112051,.99952,.00674155,0,.00287719,.999283,.00691313,0,.00550145,.998936,.00713598,0,.00897928,.998165,.00738501,0,.0132829,.994847,.00734388,0,.01838,.993182,.00749991,0,.0242381,.991665,.0077246,0,.030826,.989708,.00797579,0,.0381152,.986663,.00813011,0,.0460794,.983288,.00830365,0,.0546951,.980104,.00853496,0,.0639411,.974855,.00861045,0,.0737988,.97045,.00879133,0,.0842516,.964509,.00886377,0,.0952848,.957594,.00890346,0,.106886,.950546,.00893289,0,.119044,.942225,.00890074,0,.131749,.933365,.00886826,0,.144994,.923202,.0087316,0,.158772,.912605,.00863082,0,.173078,.901099,.00847403,0,.187908,.888177,.00825838,0,.203261,.873955,.00801834,0,.219134,.860091,.00779026,0,.235527,.84434,.00752478,0,.252443,.828517,.00724074,0,.269883,.81239,.00693769,0,.287851,.79721,.00664817,0,.306352,.783489,.00634763,0,.325393,.769514,.00604221,0,.344981,.755419,.00573568,0,.365126,.741083,.00544359,0,.385839,.726059,.00515515,0,.407132,.710809,.00487139,0,.42902,.695052,.00459846,0,.45152,.678886,.00433412,0,.474651,.663042,.00407981,0,.498433,.646634,.00384264,0,.52289,.630117,.00360897,0,.548048,.613804,.00338863,0,.573936,.598338,.00318486,0,.600584,.582687,.00298377,0,.628027,.566809,.00280082,0,.656295,.550817,.00262255,0,.685417,.534937,.00245835,0,.715406,.519151,.00230574,0,.74624,.503118,.0021549,0,.777778,.487723,.00202008,0,.809524,.472725,.00189355,0,.84127,.457599,.00177108,0,.873016,.442558,.00165843,0,.904762,.427624,.00155494,0,.936508,.413171,.00145273,0,.968254,.399122,.00136454,0,1,1,.00826496,0,0,1,.00826499,0,0,1,.00826564,0,0,.999996,.00826842,0,0,.999987,.00827589,0,0,.999967,.00829167,0,0,.999933,.00832037,0,0,.999876,.00836768,0,109338e-10,.999786,.00844031,0,427145e-9,.999655,.00854603,0,.0016384,.999468,.00869337,0,.00372392,.999203,.008891,0,.00668513,.998803,.00914387,0,.0104968,.99748,.00935838,0,.015125,.994446,.00933309,0,.0205338,.99292,.00953084,0,.0266884,.991414,.0097893,0,.0335565,.989049,.0100228,0,.0411086,.98582,.0101664,0,.0493181,.982441,.0103582,0,.0581613,.978595,.0105292,0,.0676169,.973495,.0106274,0,.0776661,.968405,.0107261,0,.0882926,.962717,.0108234,0,.0994817,.955478,.0108102,0,.111221,.948275,.0107914,0,.123499,.940006,.0107161,0,.136308,.930831,.0106309,0,.149639,.920648,.0104083,0,.163485,.910205,.0102312,0,.177843,.898445,.0100051,0,.192707,.885986,.00971928,0,.208077,.872204,.00940747,0,.22395,.858436,.0091085,0,.240326,.843454,.00876595,0,.257208,.827437,.00839794,0,.274596,.811488,.00803692,0,.292496,.796039,.00767352,0,.310911,.781083,.0073097,0,.329849,.767642,.00694032,0,.349316,.753901,.00657476,0,.369323,.740131,.00622699,0,.38988,.725845,.0058838,0,.410999,.710991,.00555586,0,.432696,.696002,.00523089,0,.454987,.680461,.00492494,0,.47789,.664875,.00463464,0,.501426,.649273,.00435422,0,.52562,.63302,.0040875,0,.550498,.61705,.00384075,0,.576089,.601154,.00359557,0,.602427,.586008,.00337636,0,.629544,.570699,.00316019,0,.657479,.555166,.00296033,0,.686264,.539645,.00277552,0,.715924,.524159,.00259499,0,.746459,.508682,.00243257,0,.777789,.493163,.00227851,0,.809524,.478004,.00213083,0,.84127,.46347,.00199502,0,.873016,.448778,.00186967,0,.904762,.434105,.00174732,0,.936508,.419576,.00163861,0,.968254,.405541,.00153341,0,1,1,.0106462,0,0,1,.0106462,0,0,.999999,.010647,0,0,.999995,.0106502,0,0,.999985,.0106589,0,0,.999964,.0106773,0,0,.999925,.0107106,0,0,.999861,.0107655,0,712986e-10,.999763,.0108497,0,743959e-9,.999616,.0109716,0,.00227361,.999408,.0111408,0,.0046983,.999112,.0113659,0,.00800158,.998637,.0116475,0,.0121493,.996223,.0117231,0,.0171023,.994006,.0118064,0,.0228218,.992444,.0120254,0,.0292711,.991028,.0123314,0,.036417,.98803,.0124954,0,.0442295,.984816,.0126538,0,.0526815,.981399,.0128537,0,.0617492,.977085,.0129694,0,.0714114,.972154,.013091,0,.0816495,.966617,.0131166,0,.0924472,.960628,.0131583,0,.10379,.953295,.0131094,0,.115665,.94575,.0129966,0,.128062,.937654,.0128796,0,.140972,.927716,.0126477,0,.154387,.917932,.0123889,0,.168301,.907719,.012131,0,.182709,.89584,.0118013,0,.197608,.883526,.0114145,0,.212994,.870301,.0110075,0,.228867,.856272,.0106019,0,.245227,.842251,.0101938,0,.262074,.826466,.00973254,0,.279412,.810859,.0092846,0,.297244,.795051,.00883304,0,.315575,.780053,.00840272,0,.334412,.76575,.00796438,0,.35376,.752298,.00752526,0,.373631,.739153,.00711486,0,.394034,.725514,.00670361,0,.414983,.711473,.00632656,0,.436491,.696936,.00595206,0,.458575,.682126,.00559191,0,.481253,.667027,.00525362,0,.504547,.651875,.00493805,0,.528481,.636463,.00462848,0,.553081,.620641,.00433936,0,.578377,.604931,.00407,0,.604404,.589549,.00380864,0,.631197,.574712,.00357049,0,.658795,.559775,.00334466,0,.687238,.544514,.00312505,0,.716559,.529555,.00293199,0,.746776,.514402,.00274204,0,.777849,.499302,.00256647,0,.809524,.484114,.00239901,0,.84127,.469308,.00225148,0,.873016,.455133,.00210178,0,.904762,.440939,.0019727,0,.936508,.426627,.00184382,0,.968254,.412509,.00172548,0,1,1,.013628,0,0,1,.0136281,0,0,.999999,.0136289,0,0,.999995,.0136327,0,0,.999983,.0136427,0,0,.99996,.0136638,0,0,.999917,.0137022,0,0,.999846,.0137652,0,204597e-9,.999736,.0138615,0,.00116837,.999573,.0140007,0,.00303325,.99934,.0141927,0,.00580613,.999004,.0144457,0,.00945626,.998407,.0147489,0,.0139421,.995464,.014731,0,.0192202,.993328,.0148283,0,.0252495,.991799,.0150797,0,.0319921,.990397,.0154316,0,.0394138,.986835,.0155005,0,.0474843,.983938,.0157308,0,.0561763,.980154,.0158753,0,.0654661,.975659,.0159581,0,.0753326,.970171,.0159832,0,.0857571,.964803,.0160084,0,.0967236,.958366,.0159484,0,.108218,.950613,.0158001,0,.120227,.942874,.0155845,0,.132741,.935005,.0154292,0,.145751,.924991,.0150742,0,.159249,.914814,.0146757,0,.17323,.904743,.0143097,0,.187687,.893216,.0138695,0,.202619,.880769,.0133706,0,.218021,.868136,.0128606,0,.233894,.85469,.0123403,0,.250238,.840593,.0118091,0,.267052,.825808,.011253,0,.284341,.81009,.0107099,0,.302106,.79504,.0101636,0,.320354,.779757,.00964041,0,.33909,.764697,.00911896,0,.358322,.750913,.00859533,0,.378059,.738175,.00811592,0,.398311,.725242,.00764504,0,.41909,.711864,.00718885,0,.440412,.698009,.00675843,0,.462292,.683841,.00634984,0,.484748,.669391,.00595502,0,.507802,.654731,.00558671,0,.531477,.639805,.00523578,0,.555802,.624789,.00490834,0,.580805,.609325,.00459448,0,.606522,.593975,.00430342,0,.63299,.578983,.00403019,0,.66025,.564442,.0037707,0,.688346,.549835,.0035316,0,.717319,.535039,.00330255,0,.7472,.520403,.00308932,0,.777982,.505687,.00289335,0,.809524,.490939,.00270818,0,.84127,.476233,.0025343,0,.873016,.461624,.00237097,0,.904762,.447833,.00222065,0,.936508,.433992,.00207561,0,.968254,.420147,.00194955,0,1,1,.0173415,0,0,1,.0173416,0,0,.999999,.0173426,0,0,.999995,.0173468,0,0,.999983,.0173582,0,0,.999954,.0173822,0,0,.999908,.0174258,0,669501e-11,.999828,.0174973,0,427399e-9,.999705,.0176063,0,.00171019,.999524,.0177631,0,.0039248,.999263,.0179781,0,.00705382,.998878,.018258,0,.0110552,.998012,.0185551,0,.0158812,.994614,.0184264,0,.0214852,.993132,.0186385,0,.0278239,.991563,.0189067,0,.0348585,.989298,.0191577,0,.0425544,.986036,.0192522,0,.050881,.982558,.0194063,0,.059811,.978531,.019486,0,.0693209,.974198,.0195847,0,.0793895,.968148,.0194749,0,.0899984,.962565,.0194277,0,.101132,.956041,.0192991,0,.112775,.947749,.0189893,0,.124917,.94018,.018704,0,.137547,.93165,.0183458,0,.150655,.921798,.0178775,0,.164236,.911573,.0173618,0,.178281,.901569,.0168482,0,.192788,.890341,.016265,0,.207752,.877835,.0156199,0,.223171,.865472,.0149516,0,.239044,.852905,.0143274,0,.255371,.838906,.0136643,0,.272153,.824888,.0129903,0,.289393,.809977,.0123218,0,.307093,.794697,.0116572,0,.325259,.780028,.0110307,0,.343896,.765124,.0104236,0,.363012,.750411,.0098219,0,.382617,.737264,.00924397,0,.402719,.724799,.00868719,0,.423332,.712253,.00816476,0,.444469,.699267,.00767262,0,.466146,.685618,.00719746,0,.488383,.671736,.00673916,0,.511199,.657777,.00631937,0,.534618,.643497,.00592411,0,.558668,.62889,.00553928,0,.58338,.614299,.0051934,0,.608787,.599197,.00485985,0,.634929,.584175,.00454357,0,.661849,.569541,.00425787,0,.689594,.555193,.00397905,0,.718211,.540947,.00372364,0,.747742,.526593,.00348599,0,.778205,.512335,.00326103,0,.80953,.498017,.00305137,0,.84127,.483609,.00285485,0,.873016,.469368,.00267472,0,.904762,.455037,.00249945,0,.936508,.441493,.00234792,0,.968254,.428147,.00219936,0,1,1,.0219422,0,0,1,.0219423,0,0,.999998,.0219434,0,0,.999993,.0219481,0,0,.999981,.021961,0,0,.999949,.0219879,0,0,.999896,.0220367,0,593194e-10,.999808,.0221167,0,75364e-8,.99967,.0222383,0,.00237884,.999466,.0224125,0,.00495612,.999174,.0226495,0,.00844887,.998725,.0229525,0,.0128058,.996979,.0231123,0,.0179742,.994317,.0230742,0,.0239047,.992781,.0232895,0,.0305526,.991191,.0235734,0,.0378786,.987787,.0236152,0,.0458475,.985092,.0237994,0,.0544287,.981121,.0238553,0,.0635952,.976924,.0238706,0,.0733233,.97218,.0238704,0,.0835922,.965956,.0236598,0,.0943839,.959998,.0234735,0,.105682,.953245,.0232277,0,.117474,.944445,.0226973,0,.129747,.937087,.0223527,0,.142491,.928341,.0218144,0,.155697,.9184,.0211516,0,.169358,.907959,.0204553,0,.183469,.89808,.0197673,0,.198024,.887047,.0189915,0,.21302,.875221,.0182082,0,.228455,.86269,.0173584,0,.244329,.850735,.0165718,0,.260639,.837545,.0157524,0,.277389,.823639,.0149482,0,.29458,.809699,.0141431,0,.312216,.794797,.0133527,0,.3303,.780578,.0126193,0,.34884,.766019,.0118914,0,.367842,.751447,.0111839,0,.387315,.737275,.010514,0,.40727,.724545,.00987277,0,.427717,.712644,.00926569,0,.448671,.700432,.00869029,0,.470149,.687664,.00814691,0,.492167,.674288,.00763012,0,.514746,.660966,.00714437,0,.537911,.647264,.00668457,0,.561688,.633431,.00626581,0,.586108,.619133,.00585593,0,.611206,.604935,.00548188,0,.637022,.590236,.00513288,0,.663599,.575473,.0047906,0,.690989,.561228,.00448895,0,.719242,.547054,.00420233,0,.748411,.533175,.00392869,0,.778531,.519163,.00367445,0,.809583,.505328,.00344097,0,.84127,.491446,.00322003,0,.873016,.477356,.00301283,0,.904762,.46356,.00282592,0,.936508,.449623,.00264956,0,.968254,.436068,.00246956,0,1,1,.0276135,0,0,1,.0276136,0,0,.999998,.0276148,0,0,.999993,.0276201,0,0,.999976,.0276342,0,0,.999945,.027664,0,0,.999884,.0277179,0,18679e-8,.999784,.027806,0,.00119607,.99963,.0279394,0,.00318407,.999401,.0281295,0,.00613601,.999066,.0283858,0,.00999963,.998524,.0287027,0,.0147164,.995702,.0286256,0,.0202295,.993593,.0286733,0,.0264876,.992067,.0288989,0,.0334452,.990548,.0292135,0,.0410621,.986775,.0291296,0,.0493032,.984054,.0293099,0,.0581381,.979481,.0291881,0,.0675397,.975297,.0291598,0,.0774848,.96981,.028954,0,.0879528,.963524,.028628,0,.0989258,.957398,.0283135,0,.110388,.950088,.0278469,0,.122327,.941538,.0271798,0,.134729,.933332,.0265388,0,.147587,.924392,.0257776,0,.160889,.914581,.024916,0,.174631,.904347,.0240242,0,.188806,.894324,.0231229,0,.203409,.883724,.022153,0,.218437,.872207,.0211355,0,.233888,.859927,.0201048,0,.249761,.848373,.0191263,0,.266056,.836023,.0181306,0,.282774,.82289,.0171718,0,.299917,.809324,.0162196,0,.317488,.795361,.0152622,0,.335493,.781253,.01439,0,.353936,.767338,.013533,0,.372825,.753156,.0127244,0,.392168,.739122,.0119454,0,.411976,.725358,.0112054,0,.432259,.712949,.010487,0,.453032,.701621,.00984032,0,.47431,.689703,.00921495,0,.496111,.677216,.00862492,0,.518456,.664217,.00806882,0,.541367,.65137,.00755922,0,.564872,.638,.00705705,0,.589001,.62453,.00661266,0,.613789,.610601,.00618432,0,.639277,.59676,.00578033,0,.66551,.582433,.00540927,0,.692539,.568026,.00506104,0,.720422,.55414,.0047353,0,.749216,.540178,.00442889,0,.778974,.526513,.00414363,0,.809711,.512954,.00388237,0,.84127,.499403,.00362875,0,.873016,.486026,.00340827,0,.904762,.472345,.00318598,0,.936508,.458828,.00297635,0,.968254,.445379,.00279447,0,1,1,.0345716,0,0,1,.0345717,0,0,.999999,.034573,0,0,.999991,.0345787,0,0,.999974,.0345941,0,0,.999937,.0346263,0,188589e-11,.999869,.0346847,0,409238e-9,.999757,.0347798,0,.0017674,.999582,.0349233,0,.00413658,.999322,.0351265,0,.00747408,.998939,.0353967,0,.0117157,.998219,.0357018,0,.0167966,.994974,.0354726,0,.0226572,.993201,.0355621,0,.0292445,.991573,.0357641,0,.0365123,.989301,.0359252,0,.0444203,.985712,.0358017,0,.0529334,.982411,.0358353,0,.0620214,.977827,.035617,0,.0716574,.973278,.0354398,0,.0818186,.967397,.0350483,0,.0924846,.960696,.0344795,0,.103638,.954349,.0339861,0,.115263,.946066,.0331323,0,.127348,.938012,.032359,0,.13988,.929413,.0314413,0,.152849,.920355,.0304103,0,.166248,.910586,.0292785,0,.18007,.900609,.0281391,0,.194308,.890093,.0269103,0,.208958,.880013,.0257269,0,.224018,.869001,.0244671,0,.239485,.85751,.0232252,0,.255359,.84582,.0220117,0,.271638,.834383,.0208274,0,.288324,.822158,.0196628,0,.305419,.809056,.0185306,0,.322927,.795832,.0174174,0,.340851,.782547,.0163758,0,.359199,.7689,.015391,0,.377975,.755526,.0144488,0,.397189,.741681,.0135372,0,.416851,.728178,.0126957,0,.436971,.714642,.0118812,0,.457564,.702756,.0111165,0,.478644,.69175,.0104145,0,.500229,.680159,.00974439,0,.522339,.668073,.00911926,0,.544997,.655405,.00851393,0,.56823,.642921,.00797637,0,.592068,.629993,.00745119,0,.616546,.616828,.00696972,0,.641705,.603305,.00652425,0,.66759,.589833,.00610188,0,.694255,.575945,.00570834,0,.72176,.561745,.00533384,0,.750168,.548277,.00500001,0,.779545,.534467,.00467582,0,.809933,.521032,.00438092,0,.841272,.507877,.00410348,0,.873016,.494654,.00383618,0,.904762,.481592,.00358699,0,.936508,.468509,.00337281,0,.968254,.455293,.00316196,0,1,1,.0430698,0,0,1,.0430699,0,0,.999998,.0430713,0,0,.999991,.0430773,0,0,.99997,.0430936,0,0,.999928,.0431277,0,406396e-10,.999852,.0431893,0,744376e-9,.999724,.0432895,0,.0024806,.999527,.0434397,0,.00524779,.99923,.0436507,0,.00898164,.998783,.0439255,0,.0136083,.997507,.0441104,0,.0190582,.994418,.0438225,0,.0252694,.992864,.0439396,0,.0321879,.991127,.0440962,0,.039767,.987331,.0438408,0,.0479667,.984819,.0438991,0,.056752,.980384,.0435906,0,.0660929,.975846,.0432543,0,.075963,.970748,.0428293,0,.0863398,.964303,.042153,0,.0972035,.95772,.0414111,0,.108537,.950747,.0405893,0,.120325,.942533,.0394887,0,.132554,.934045,.0383544,0,.145215,.924942,.037057,0,.158296,.915811,.0356993,0,.17179,.90612,.0342401,0,.185691,.896434,.0328078,0,.199993,.886021,.031288,0,.214691,.876081,.0297776,0,.229782,.865608,.0282334,0,.245265,.854924,.026749,0,.261138,.843607,.02526,0,.277401,.832456,.0238214,0,.294056,.821342,.0224682,0,.311104,.809303,.0211297,0,.328548,.796468,.0198387,0,.346394,.784046,.0186227,0,.364645,.771262,.0174561,0,.38331,.758118,.0163806,0,.402396,.745075,.0153287,0,.421912,.731926,.0143647,0,.44187,.71863,.0134363,0,.462283,.705414,.0125603,0,.483165,.693792,.0117508,0,.504535,.683108,.0110016,0,.52641,.67183,.0102757,0,.548816,.66015,.00962044,0,.571776,.647907,.00898031,0,.595323,.635734,.00840811,0,.619489,.623208,.00786211,0,.644317,.610438,.00734953,0,.669852,.597345,.00687688,0,.696148,.584138,.00643469,0,.723267,.5707,.00602236,0,.75128,.556966,.0056324,0,.780258,.543607,.00528277,0,.810268,.530213,.00493999,0,.841311,.516912,.00462265,0,.873016,.503916,.0043307,0,.904762,.491146,.00406858,0,.936508,.478439,.00381436,0,.968254,.465834,.00358003,0,1,1,.0534039,0,0,1,.053404,0,0,.999998,.0534055,0,0,.999989,.0534116,0,0,.999968,.0534283,0,0,.999918,.0534633,0,155895e-9,.99983,.0535262,0,.00120914,.999685,.0536281,0,.00334944,.999461,.0537799,0,.00653077,.999119,.0539902,0,.0106718,.998582,.0542524,0,.0156907,.995919,.0540318,0,.0215147,.993735,.0538914,0,.0280801,.992126,.0539557,0,.0353323,.990266,.0540401,0,.0432247,.986317,.0536064,0,.0517172,.983213,.0534425,0,.0607754,.978303,.0528622,0,.0703698,.973665,.0523363,0,.0804742,.968091,.0516165,0,.0910667,.961026,.0505434,0,.102128,.954333,.049523,0,.113641,.946372,.0481698,0,.125591,.938254,.0467674,0,.137965,.929516,.0452341,0,.150754,.920106,.0435083,0,.163947,.910899,.0417399,0,.177537,.901532,.0399389,0,.191516,.891919,.0380901,0,.205881,.882006,.0362341,0,.220626,.871965,.0343444,0,.235749,.862145,.0324832,0,.251248,.852058,.0306681,0,.267121,.84161,.0289097,0,.283368,.830806,.0272079,0,.299992,.820476,.0256089,0,.316992,.809514,.0240394,0,.334374,.797865,.0225379,0,.35214,.785621,.0211235,0,.370296,.773765,.0197908,0,.388849,.761629,.0185235,0,.407807,.748891,.0173358,0,.427178,.736437,.0162305,0,.446974,.723707,.0151778,0,.467207,.710606,.0141791,0,.487892,.698019,.0132592,0,.509046,.686203,.0123887,0,.530687,.675692,.0115976,0,.552839,.664826,.0108325,0,.575527,.65349,.0101348,0,.59878,.641774,.00947756,0,.622634,.629794,.00886058,0,.647128,.617647,.00828526,0,.672308,.60534,.00775312,0,.698231,.592718,.00726033,0,.724958,.579746,.00679731,0,.752563,.566763,.00636111,0,.781127,.553515,.00595228,0,.810733,.540118,.00556876,0,.841426,.527325,.00523051,0,.873016,.514265,.00490712,0,.904762,.501406,.00460297,0,.936508,.488922,.00431247,0,.968254,.476541,.0040472,0,1,1,.0659184,0,0,1,.0659185,0,0,.999998,.06592,0,0,.999988,.0659259,0,0,.999963,.0659423,0,0,.999907,.0659764,0,374198e-9,.999806,.0660376,0,.00182071,.999639,.0661361,0,.0043894,.999378,.0662814,0,.00800055,.998985,.0664779,0,.0125594,.998285,.0666914,0,.0179786,.995071,.0661989,0,.0241822,.993172,.0660454,0,.031106,.991438,.0660105,0,.0386952,.988428,.0656875,0,.0469032,.985218,.0652913,0,.0556905,.981128,.0647107,0,.065023,.976015,.0638491,0,.0748717,.97097,.062993,0,.0852112,.964582,.0617927,0,.0960199,.957383,.0603626,0,.107279,.949969,.0588128,0,.118971,.941843,.0570274,0,.131084,.933624,.0551885,0,.143604,.924543,.053122,0,.156521,.914919,.0508897,0,.169825,.905773,.0486418,0,.18351,.896434,.0463364,0,.197569,.887195,.0440623,0,.211997,.877706,.0417799,0,.226789,.867719,.03945,0,.241944,.858587,.037243,0,.257458,.849317,.0350956,0,.273331,.839585,.0329852,0,.289563,.829856,.0310028,0,.306154,.819589,.0290953,0,.323108,.809714,.0272738,0,.340426,.79934,.0255631,0,.358113,.788224,.0239175,0,.376175,.776619,.0223831,0,.394616,.76521,.0209298,0,.413445,.753716,.0195786,0,.432671,.741564,.0183001,0,.452305,.729413,.0171259,0,.472358,.717146,.0159933,0,.492845,.70436,.0149495,0,.513783,.69219,.0139681,0,.535189,.680289,.0130577,0,.557087,.669611,.0122198,0,.5795,.659113,.0114174,0,.602459,.648148,.0106729,0,.625997,.636905,.00998997,0,.650154,.625154,.00934313,0,.674976,.613481,.00874839,0,.700518,.60154,.00818265,0,.726845,.58943,.00766889,0,.754032,.576828,.00717153,0,.782167,.564194,.00672696,0,.811344,.551501,.00630863,0,.841644,.538635,.00592177,0,.873016,.525724,.00554888,0,.904762,.513209,.00520225,0,.936508,.500457,.00488231,0,.968254,.48799,.00457153,0,1,1,.0810131,0,0,1,.0810133,0,0,.999997,.0810145,0,0,.999985,.08102,0,0,.999956,.0810347,0,195026e-10,.999893,.0810656,0,719316e-9,.999777,.0811205,0,.00259774,.999583,.081208,0,.00561807,.999281,.0813343,0,.00967472,.998813,.0814969,0,.0146627,.997597,.0815217,0,.0204902,.994379,.0808502,0,.0270802,.992744,.0806792,0,.0343674,.990745,.0804589,0,.0422974,.986646,.0796107,0,.0508242,.983611,.0790913,0,.0599087,.978869,.0780746,0,.0695175,.973475,.0768218,0,.0796223,.967845,.0754926,0,.0901983,.960778,.0737063,0,.101224,.953333,.0718052,0,.112682,.945274,.0695946,0,.124555,.936955,.0672492,0,.136831,.928319,.0647732,0,.149496,.919075,.0620947,0,.162542,.909114,.0591816,0,.175958,.900137,.0563917,0,.189739,.891069,.0535392,0,.203877,.882262,.0507642,0,.218368,.873232,.0479793,0,.233208,.864042,.045226,0,.248393,.855002,.0425413,0,.263923,.846569,.0400126,0,.279796,.837714,.0375269,0,.296012,.828918,.0352027,0,.312573,.819783,.0330011,0,.329479,.810129,.0308908,0,.346734,.800866,.0289112,0,.364342,.79093,.0270255,0,.382307,.780593,.0252758,0,.400637,.769511,.0236178,0,.419337,.758558,.0220652,0,.438418,.747632,.0206289,0,.457889,.736146,.0192873,0,.477761,.724093,.0180333,0,.49805,.71234,.0168264,0,.51877,.700201,.015746,0,.53994,.687949,.0147027,0,.561581,.676163,.0137512,0,.583718,.665001,.0128655,0,.60638,.65472,.0120366,0,.629599,.644213,.0112604,0,.653415,.633382,.0105413,0,.677874,.62212,.00986498,0,.70303,.610631,.00923308,0,.728948,.599078,.00864206,0,.755706,.587519,.00811784,0,.783396,.575505,.00761237,0,.812121,.563148,.00713949,0,.841989,.550828,.00668379,0,.873035,.538458,.00627715,0,.904762,.525905,.00588336,0,.936508,.513517,.00552687,0,.968254,.501395,.00519681,0,1,1,.0991506,0,0,1,.0991504,0,0,.999996,.0991515,0,0,.999984,.0991558,0,0,.999947,.0991672,0,114389e-9,.999874,.0991912,0,.00121503,.999739,.0992331,0,.00356108,.999514,.0992983,0,.00705578,.999159,.0993877,0,.011574,.998586,.0994837,0,.017003,.995731,.0988425,0,.0232484,.993384,.098276,0,.0302318,.991615,.0979269,0,.0378884,.989029,.0973432,0,.0461641,.985373,.0963539,0,.0550136,.981278,.0952306,0,.0643988,.975777,.0936233,0,.0742868,.970526,.0920219,0,.0846501,.963755,.0898912,0,.0954644,.956676,.0876064,0,.106709,.948099,.0847751,0,.118367,.939718,.0818638,0,.130423,.931305,.078857,0,.142862,.922342,.0756127,0,.155674,.912842,.0721473,0,.168849,.903304,.0686195,0,.182378,.89411,.0650589,0,.196255,.885512,.0616022,0,.210473,.877193,.0582434,0,.225027,.86877,.0548979,0,.239915,.860267,.0516095,0,.255132,.851915,.048468,0,.270678,.843912,.0454447,0,.286551,.83604,.0425612,0,.302751,.828245,.0398752,0,.31928,.820159,.0373198,0,.336138,.81167,.034916,0,.35333,.802659,.0326402,0,.370858,.793921,.0304901,0,.388728,.784713,.0284857,0,.406944,.774946,.0266186,0,.425515,.76448,.0248593,0,.444449,.753793,.0232114,0,.463756,.743506,.0217039,0,.483447,.732555,.0202841,0,.503535,.720965,.0189648,0,.524036,.709422,.0177189,0,.544968,.697756,.0165626,0,.56635,.685565,.015483,0,.588208,.673987,.0144892,0,.610569,.66244,.0135607,0,.633466,.651675,.0126956,0,.656936,.641598,.0118788,0,.681025,.63121,.0111261,0,.705788,.620514,.010437,0,.731289,.609366,.00978747,0,.757606,.598137,.00917257,0,.784834,.586966,.00859778,0,.813085,.575549,.00806803,0,.842485,.563797,.00757294,0,.87313,.551758,.00710592,0,.904762,.539894,.0066841,0,.936508,.527901,.00627901,0,.968254,.515819,.00590506,0,1,1,.120864,0,0,1,.120864,0,0,.999996,.120864,0,0,.99998,.120867,0,0,.99994,.120872,0,323781e-9,.999852,.120884,0,.00188693,.999693,.120903,0,.00473489,.999426,.120929,0,.00872704,.999002,.120955,0,.0137237,.998235,.120918,0,.0196068,.994608,.119764,0,.0262803,.992997,.119265,0,.0336657,.990968,.11863,0,.0416987,.987002,.117261,0,.0503261,.983524,.116009,0,.0595035,.97875,.114252,0,.0691935,.972652,.11193,0,.0793645,.966613,.109555,0,.0899894,.959275,.106612,0,.101045,.951272,.103375,0,.112512,.942323,.0996594,0,.124372,.933679,.0958841,0,.136611,.924822,.0919265,0,.149216,.915742,.0878061,0,.162176,.906348,.0834894,0,.175482,.896883,.079085,0,.189125,.88774,.0746745,0,.203098,.87986,.0705773,0,.217396,.871998,.0665005,0,.232015,.864325,.0625413,0,.24695,.856685,.0586781,0,.2622,.84925,.0550063,0,.277761,.841719,.0514727,0,.293634,.834755,.0481398,0,.309819,.827853,.0450172,0,.326315,.820888,.0420969,0,.343126,.813616,.0393702,0,.360254,.805767,.0367771,0,.377701,.797338,.0343274,0,.395474,.789122,.0320529,0,.413577,.780601,.0299485,0,.432018,.771424,.0279812,0,.450804,.761502,.0261054,0,.469944,.751166,.0243942,0,.489451,.741276,.0228087,0,.509337,.730898,.0213265,0,.529617,.719878,.0199307,0,.550307,.708379,.0186574,0,.571428,.697165,.0174446,0,.593003,.685554,.0163144,0,.615059,.673631,.015276,0,.637628,.662385,.0143003,0,.660746,.651059,.0134112,0,.68446,.640451,.0125794,0,.70882,.630536,.011793,0,.733893,.620316,.0110547,0,.759756,.609722,.0103668,0,.786505,.598804,.00973009,0,.814259,.587871,.00912812,0,.843157,.577121,.00858916,0,.87334,.566019,.00807333,0,.904762,.554664,.00759687,0,.936508,.543101,.00714759,0,.968254,.531558,.00673418,0,1,1,.146767,0,0,1,.146767,0,0,.999997,.146767,0,0,.999977,.146765,0,320658e-11,.999929,.146762,0,682576e-9,.999823,.146753,0,.00276402,.999633,.146735,0,.00614771,.999314,.146699,0,.0106613,.998796,.14662,0,.0161546,.997124,.146107,0,.0225063,.994062,.144857,0,.0296198,.992154,.144011,0,.037417,.989186,.142712,0,.0458348,.985279,.140926,0,.0548211,.980826,.13885,0,.0643326,.975056,.136168,0,.074333,.969005,.133217,0,.0847917,.961554,.12959,0,.0956828,.954206,.125886,0,.106984,.945046,.121335,0,.118675,.935678,.116492,0,.130741,.926748,.111635,0,.143166,.917764,.106625,0,.155939,.908358,.101325,0,.169049,.899219,.0960249,0,.182487,.890089,.0906527,0,.196245,.881488,.0853905,0,.210317,.874031,.0804177,0,.224697,.866932,.0756005,0,.23938,.859976,.0709019,0,.254364,.853375,.0664391,0,.269646,.846971,.0622012,0,.285223,.840483,.058129,0,.301096,.833969,.0542762,0,.317265,.82806,.0507042,0,.333729,.822128,.047368,0,.350491,.815989,.044272,0,.367554,.809336,.0413444,0,.38492,.802177,.038601,0,.402594,.79441,.0360227,0,.420582,.786573,.0336383,0,.438891,.778619,.0314321,0,.457527,.77,.029362,0,.476499,.760698,.0274102,0,.49582,.750932,.0256146,0,.5155,.740993,.023974,0,.535555,.731159,.0224182,0,.556,.720836,.0209889,0,.576855,.709913,.0196411,0,.598143,.698415,.0183824,0,.619888,.68745,.0172222,0,.642123,.676154,.0161509,0,.664883,.664383,.0151397,0,.688211,.6533,.0141873,0,.71216,.642072,.0133105,0,.736792,.631412,.0124932,0,.762186,.621622,.0117408,0,.788439,.611681,.0110358,0,.815672,.60142,.0103775,0,.844034,.59083,.00975623,0,.873699,.580254,.00918084,0,.904765,.569841,.00864721,0,.936508,.559224,.00815731,0,.968254,.548315,.00767924,0,1,1,.177563,0,0,1,.177563,0,0,.999994,.177562,0,0,.999972,.177555,0,664171e-10,.999914,.177536,0,.0012276,.999787,.177496,0,.00388025,.999556,.17742,0,.00783463,.999165,.177285,0,.0128953,.9985,.177037,0,.0189053,.995388,.175634,0,.025742,.993102,.174375,0,.033309,.990992,.173121,0,.0415298,.986932,.170896,0,.0503425,.982786,.16847,0,.0596964,.977592,.165455,0,.0695498,.971075,.161676,0,.0798676,.963967,.157458,0,.0906201,.956397,.152836,0,.101783,.947489,.147467,0,.113333,.937564,.14145,0,.125254,.928182,.135383,0,.137529,.919027,.129212,0,.150144,.909618,.12276,0,.163088,.900492,.116273,0,.176351,.891671,.1098,0,.189924,.883146,.103362,0,.203799,.875151,.0970799,0,.21797,.868338,.0911732,0,.232433,.862033,.0854966,0,.247182,.856107,.0800691,0,.262216,.850644,.0749618,0,.27753,.845261,.070079,0,.293124,.839885,.0654321,0,.308997,.834609,.0610975,0,.325149,.829083,.0569741,0,.341581,.82404,.0531736,0,.358294,.818968,.049665,0,.37529,.813496,.0463856,0,.392573,.807533,.0433217,0,.410148,.80099,.0404402,0,.428019,.793891,.0377578,0,.446192,.786281,.0352616,0,.464676,.778773,.0329577,0,.483478,.770737,.030808,0,.502608,.762094,.0287964,0,.522079,.752898,.0269254,0,.541905,.743306,.0251926,0,.5621,.733416,.023595,0,.582684,.723742,.0221155,0,.603677,.713542,.0207435,0,.625106,.702755,.019434,0,.646998,.691484,.0182046,0,.66939,.680531,.0170771,0,.692324,.66953,.0160339,0,.715849,.658126,.0150677,0,.740028,.646933,.0141551,0,.764937,.636107,.0133179,0,.790673,.625271,.0125284,0,.817358,.615225,.0117937,0,.84515,.605678,.0111181,0,.874244,.59583,.0104759,0,.904828,.585704,.00986672,0,.936508,.575413,.00929712,0,.968254,.565373,.00876713,0,1,1,.214058,0,0,.999999,.214058,0,0,.999994,.214055,0,0,.999966,.214039,0,259642e-9,.999893,.213998,0,.00200075,.999737,.21391,0,.00527775,.999449,.213745,0,.00983959,.99896,.213458,0,.0154755,.9979,.212855,0,.0220249,.994278,.210779,0,.0293654,.992254,.20926,0,.0374021,.98881,.206908,0,.0460604,.984715,.204009,0,.0552802,.979738,.200471,0,.0650127,.972884,.195813,0,.0752175,.965996,.190856,0,.0858612,.957974,.185077,0,.0969155,.949155,.17868,0,.108356,.939288,.171513,0,.120163,.928996,.163838,0,.132319,.919563,.156246,0,.144808,.910004,.148359,0,.157618,.900791,.140417,0,.170737,.892135,.132569,0,.184155,.883803,.124741,0,.197866,.876034,.117091,0,.211861,.869219,.109835,0,.226134,.863062,.102859,0,.240682,.857795,.0962928,0,.255499,.853009,.0900725,0,.270583,.848603,.0842101,0,.285931,.844335,.0786527,0,.301542,.840208,.0734397,0,.317415,.836035,.0685334,0,.33355,.83172,.0639275,0,.349948,.827135,.0595909,0,.36661,.822797,.0556204,0,.383539,.818387,.0519394,0,.400738,.813565,.0485317,0,.41821,.808142,.0453138,0,.435961,.802212,.0423354,0,.453997,.79573,.0395553,0,.472324,.788741,.036988,0,.490951,.781093,.0345688,0,.509887,.773597,.0323297,0,.529144,.765622,.0302719,0,.548735,.757083,.0283477,0,.568674,.747992,.0265562,0,.588979,.738591,.0248844,0,.609671,.728719,.0233342,0,.630773,.719146,.0219081,0,.652314,.709165,.0205711,0,.674328,.69875,.0193248,0,.696854,.687884,.0181582,0,.719942,.676818,.0170746,0,.743651,.666247,.0160718,0,.768057,.655284,.0151262,0,.793253,.64401,.0142561,0,.819363,.633353,.0134327,0,.846547,.622674,.012653,0,.875017,.612265,.0119354,0,.905021,.602455,.0112533,0,.936508,.593147,.0106234,0,.968254,.583592,.0100213,0,1,1,.25717,0,0,1,.25717,0,0,.999992,.257164,0,0,.999958,.257135,0,641715e-9,.999864,.25706,0,.00305314,.999666,.256897,0,.00700975,.999302,.256596,0,.0122194,.998663,.25607,0,.0184622,.995607,.254123,0,.0255773,.993094,.252081,0,.0334439,.9907,.249867,0,.0419696,.98594,.246118,0,.0510823,.981214,.242049,0,.0607242,.974966,.236869,0,.0708486,.967589,.230724,0,.081417,.95915,.223635,0,.0923974,.950257,.21596,0,.103763,.940165,.207296,0,.115491,.929396,.197901,0,.127562,.919288,.188437,0,.13996,.909428,.178762,0,.15267,.900105,.169072,0,.165679,.891418,.159478,0,.178979,.883347,.15002,0,.192558,.875992,.140813,0,.20641,.869466,.13196,0,.220529,.863699,.123501,0,.234907,.858553,.115436,0,.249542,.854379,.107901,0,.264428,.850894,.10088,0,.279564,.847632,.0942296,0,.294947,.844571,.0879861,0,.310575,.84163,.0821534,0,.326448,.838542,.0766409,0,.342566,.835412,.0715322,0,.358929,.831899,.0666883,0,.37554,.828177,.0622175,0,.392399,.82416,.0580452,0,.409511,.820393,.054267,0,.426878,.816068,.0507172,0,.444506,.811201,.0474041,0,.4624,.805785,.0443174,0,.480566,.799878,.0414562,0,.499013,.793469,.0388147,0,.517749,.786473,.0363453,0,.536785,.778874,.0340225,0,.556134,.771277,.0318599,0,.575809,.763426,.0298859,0,.595827,.755044,.0280357,0,.616207,.746161,.0262979,0,.636973,.737124,.0247295,0,.65815,.72761,.0232514,0,.679772,.717822,.0218755,0,.701876,.708279,.0205942,0,.724509,.698333,.0193947,0,.74773,.68802,.0182717,0,.771609,.677321,.0172044,0,.79624,.666504,.0162122,0,.821743,.656184,.0152924,0,.84828,.64556,.0144326,0,.876069,.634636,.0136157,0,.905404,.624124,.0128612,0,.936508,.613914,.0121435,0,.968254,.603589,.0114887,0,1,1,.307946,0,0,.999999,.307945,0,0,.999988,.307934,0,204479e-10,.999944,.307886,0,.00127833,.999824,.307756,0,.00445047,.999565,.30748,0,.00914673,.999085,.306966,0,.0150498,.998103,.306004,0,.0219367,.994249,.303028,0,.0296485,.991807,.300435,0,.038068,.987773,.296554,0,.0471062,.982673,.2916,0,.0566942,.976623,.285641,0,.0667768,.968757,.27815,0,.0773099,.959849,.269529,0,.088257,.950663,.260248,0,.0995879,.940129,.249704,0,.111277,.92895,.238291,0,.123304,.917996,.226501,0,.13565,.907813,.214669,0,.148299,.898305,.202835,0,.161237,.889626,.191158,0,.174455,.88175,.179695,0,.187941,.874715,.168548,0,.201687,.868746,.15792,0,.215687,.863703,.147807,0,.229933,.859315,.138149,0,.24442,.855538,.128993,0,.259145,.852428,.120414,0,.274103,.850168,.112498,0,.289293,.848132,.105054,0,.304711,.846291,.0981087,0,.320357,.844431,.0915942,0,.33623,.842493,.0855056,0,.35233,.840368,.0798204,0,.368658,.83798,.0745097,0,.385214,.83523,.0695424,0,.402002,.832091,.0649092,0,.419023,.828667,.0606291,0,.436282,.824805,.0566523,0,.453782,.820988,.0530229,0,.471529,.816635,.0496364,0,.489528,.811725,.0464658,0,.507788,.806316,.0435082,0,.526317,.800469,.0407873,0,.545124,.794107,.038255,0,.564221,.787218,.0358825,0,.583621,.779872,.0336785,0,.603341,.772097,.0316379,0,.623397,.764484,.0297379,0,.643812,.756428,.0279581,0,.664611,.748022,.0263153,0,.685824,.739268,.0247799,0,.707488,.73024,.0233385,0,.729646,.720893,.0220035,0,.752354,.71119,.0207555,0,.77568,.701791,.0195843,0,.799715,.692184,.0184891,0,.824574,.682258,.0174541,0,.850417,.67206,.0164873,0,.877466,.661717,.0155959,0,.90604,.651462,.0147519,0,.936528,.641467,.0139727,0,.968254,.631229,.0132363,0,1,1,.367573,0,0,.999999,.367571,0,0,.999984,.367553,0,183382e-9,.999925,.367473,0,.00225254,.999759,.367259,0,.00628165,.99941,.366801,0,.0117858,.998739,.365946,0,.0184359,.995529,.363191,0,.0260114,.992875,.360171,0,.0343581,.989135,.355981,0,.0433637,.984166,.350401,0,.0529438,.977871,.343348,0,.0630334,.96951,.334341,0,.0735805,.959964,.323862,0,.0845437,.950162,.312521,0,.095889,.938882,.299577,0,.107588,.926992,.285573,0,.119617,.915589,.271212,0,.131957,.904791,.256611,0,.144591,.895177,.242224,0,.157503,.886403,.227952,0,.170682,.878957,.214192,0,.184117,.872418,.200795,0,.197799,.867029,.188015,0,.21172,.862835,.175975,0,.225873,.859411,.164526,0,.240253,.856655,.153693,0,.254854,.854519,.14352,0,.269673,.852828,.13397,0,.284707,.851412,.124984,0,.299953,.850609,.116748,0,.315408,.849855,.10905,0,.331073,.849017,.101839,0,.346946,.848079,.0951359,0,.363028,.846911,.0888774,0,.379318,.845445,.0830375,0,.395818,.84362,.0775844,0,.41253,.841411,.0725054,0,.429457,.838768,.0677691,0,.446602,.835801,.0634016,0,.463968,.832341,.0593095,0,.481561,.828424,.0555121,0,.499386,.824312,.052024,0,.51745,.819918,.0487865,0,.535761,.815072,.0457801,0,.554328,.809863,.0430184,0,.573162,.804164,.0404245,0,.592275,.798034,.0380146,0,.611681,.791436,.0357436,0,.631398,.784498,.0336475,0,.651445,.777125,.0316666,0,.671845,.769365,.0298122,0,.692628,.761579,.0281001,0,.713827,.753746,.0265049,0,.735484,.745573,.0250067,0,.75765,.737083,.0236026,0,.78039,.728545,.0223302,0,.803789,.719691,.0211243,0,.82796,.710569,.0199983,0,.853056,.701216,.0189569,0,.879298,.692094,.0179702,0,.907014,.682909,.0170418,0,.936691,.673509,.0161732,0,.968254,.663863,.0153406,0,1,1,.437395,0,0,.999998,.437394,0,0,.99998,.437363,0,616704e-9,.999891,.437232,0,.00367925,.999656,.436877,0,.00867446,.999148,.436121,0,.0150679,.997959,.434564,0,.022531,.993464,.430134,0,.0308507,.990606,.426077,0,.0398805,.985027,.419397,0,.0495148,.978491,.41118,0,.0596749,.969643,.40048,0,.0703001,.959189,.38769,0,.0813427,.948223,.373575,0,.0927641,.935955,.357622,0,.104533,.923237,.34043,0,.116624,.911074,.322735,0,.129015,.899724,.30479,0,.141687,.890189,.287392,0,.154626,.881796,.270248,0,.167818,.874781,.253659,0,.181252,.869166,.237786,0,.194918,.864725,.222618,0,.208807,.861565,.208356,0,.222913,.859284,.194867,0,.237229,.857677,.18212,0,.25175,.856714,.17018,0,.266473,.856155,.158969,0,.281392,.8558,.148413,0,.296505,.855672,.138578,0,.311811,.855538,.129345,0,.327306,.855689,.120861,0,.342991,.855767,.112969,0,.358864,.855618,.105593,0,.374925,.85525,.0987451,0,.391176,.854583,.0923727,0,.407616,.853534,.0864143,0,.424249,.852061,.0808338,0,.441076,.850253,.0756771,0,.4581,.848004,.0708612,0,.475324,.845333,.0663784,0,.492754,.842376,.0622631,0,.510394,.838956,.0584112,0,.528251,.835121,.0548328,0,.546331,.830842,.0514838,0,.564644,.826212,.048355,0,.583198,.821522,.0454714,0,.602005,.816551,.0428263,0,.621078,.811211,.0403612,0,.640434,.805479,.038039,0,.660089,.799409,.0358739,0,.680066,.79306,.0338727,0,.70039,.786395,.0319985,0,.721094,.779416,.030241,0,.742215,.77214,.0285951,0,.7638,.764636,.0270747,0,.785912,.756836,.0256354,0,.808628,.749315,.0243027,0,.832055,.741561,.0230497,0,.856338,.733589,.0218801,0,.88169,.725479,.020784,0,.908441,.717255,.0197702,0,.937125,.708829,.0188168,0,.968254,.700191,.0179113,0,1,1,.518937,0,0,.999998,.518933,0,0,.999967,.518883,0,.00147741,.999832,.51866,0,.00573221,.999466,.518057,0,.011826,.998644,.516752,0,.0192116,.994458,.512347,0,.027573,.991223,.507675,0,.0367099,.985515,.500188,0,.046487,.978308,.490408,0,.0568071,.968359,.477357,0,.0675984,.95682,.461752,0,.0788059,.943929,.443796,0,.090386,.930224,.423893,0,.102304,.916514,.402682,0,.114532,.903653,.380914,0,.127047,.892315,.359212,0,.139828,.882942,.338102,0,.152861,.875438,.31773,0,.16613,.869642,.298186,0,.179624,.865304,.279491,0,.193332,.862382,.261804,0,.207247,.860666,.245146,0,.22136,.859788,.229406,0,.235666,.859608,.214605,0,.250158,.859912,.200691,0,.264832,.86053,.187623,0,.279684,.861368,.17539,0,.294711,.862237,.163901,0,.309911,.863127,.153175,0,.32528,.863923,.143147,0,.340819,.864567,.133781,0,.356524,.865013,.125042,0,.372397,.86539,.116952,0,.388438,.865591,.109476,0,.404645,.865517,.102542,0,.421022,.865084,.0960688,0,.437569,.864309,.0900499,0,.454287,.863151,.0844328,0,.471181,.861649,.0792218,0,.488253,.859742,.0743482,0,.505507,.857446,.0697963,0,.522947,.854757,.0655364,0,.54058,.851783,.061608,0,.558412,.848516,.0579701,0,.576449,.844897,.0545742,0,.594701,.840956,.0514167,0,.613178,.836676,.0484598,0,.631892,.832075,.0456934,0,.650856,.827191,.0431178,0,.670088,.822295,.0407718,0,.689606,.817294,.0386032,0,.709434,.812013,.0365675,0,.7296,.806465,.0346547,0,.750138,.800691,.0328717,0,.771093,.794709,.031211,0,.792519,.788493,.0296504,0,.814488,.782049,.0281782,0,.837097,.775403,.0267965,0,.860481,.76857,.0255002,0,.884842,.761536,.0242759,0,.910494,.754303,.0231142,0,.937985,.74692,.0220305,0,.968254,.739745,.0210192,0,1,1,.613914,0,0,.999996,.613907,0,963597e-10,.999942,.613814,0,.00301247,.999704,.613407,0,.00870385,.999046,.612302,0,.0160714,.995516,.608266,0,.0245899,.991726,.602863,0,.0339681,.985157,.593956,0,.0440254,.97642,.581748,0,.0546409,.964404,.565183,0,.0657284,.950601,.545273,0,.0772246,.935158,.522129,0,.0890812,.919364,.496782,0,.10126,.904754,.470571,0,.113731,.89176,.444037,0,.126469,.881492,.418322,0,.139454,.873656,.393522,0,.15267,.868053,.369795,0,.166101,.864336,.347171,0,.179736,.862259,.325737,0,.193565,.861556,.305532,0,.207578,.861776,.286416,0,.221769,.862661,.268355,0,.23613,.864015,.251334,0,.250656,.865711,.235352,0,.265343,.867519,.220302,0,.280187,.869351,.206161,0,.295183,.871144,.192908,0,.31033,.872839,.180505,0,.325624,.874307,.168848,0,.341065,.875667,.158021,0,.35665,.876758,.147877,0,.37238,.87764,.138441,0,.388253,.878237,.129627,0,.404269,.878563,.121415,0,.42043,.878572,.113741,0,.436735,.87842,.106652,0,.453187,.878057,.100097,0,.469786,.877413,.0940128,0,.486536,.87646,.0883462,0,.503439,.875233,.0830924,0,.520498,.8737,.0781975,0,.537717,.871873,.07364,0,.555102,.86978,.0694103,0,.572657,.867405,.0654696,0,.59039,.864751,.0617914,0,.608307,.861818,.0583491,0,.626419,.858645,.0551443,0,.644733,.855307,.0521894,0,.663264,.851736,.0494334,0,.682025,.847927,.0468504,0,.701032,.843888,.0444261,0,.720308,.839629,.0421497,0,.739875,.835158,.0400082,0,.759764,.830509,.0380076,0,.780014,.825714,.0361488,0,.800673,.820729,.0343956,0,.821803,.815751,.0327781,0,.843492,.810752,.031275,0,.86586,.805587,.0298542,0,.889087,.800317,.0285397,0,.913466,.79489,.0272948,0,.93952,.789314,.0261139,0,.96835,.783593,.0249938,0,1,1,.724258,0,0,.999992,.724243,0,726889e-9,.99987,.724044,0,.00569574,.999336,.72317,0,.0131702,.996271,.719432,0,.0220738,.991159,.712576,0,.0319405,.982465,.700927,0,.0425202,.97049,.684297,0,.0536599,.953973,.661244,0,.065258,.935546,.633804,0,.0772427,.916596,.603071,0,.0895616,.899353,.57105,0,.102175,.885216,.539206,0,.11505,.875076,.508714,0,.128164,.868334,.479571,0,.141495,.864414,.451796,0,.155026,.862678,.425328,0,.168745,.862835,.400352,0,.182639,.864067,.376532,0,.196699,.866086,.35391,0,.210915,.868557,.332424,0,.225282,.871271,.312053,0,.239792,.874058,.292764,0,.25444,.8768,.27453,0,.269223,.87939,.257297,0,.284135,.8819,.24114,0,.299174,.884187,.225934,0,.314337,.886262,.211669,0,.329622,.888119,.198311,0,.345026,.889709,.185783,0,.360549,.891054,.174063,0,.376189,.892196,.163143,0,.391946,.893101,.152952,0,.407819,.893803,.143475,0,.423808,.894277,.134647,0,.439914,.894532,.126434,0,.456137,.894576,.1188,0,.472479,.894393,.111694,0,.48894,.893976,.105069,0,.505523,.893346,.0989077,0,.52223,.892502,.0931724,0,.539064,.891441,.0878276,0,.556028,.890276,.082903,0,.573125,.888972,.0783505,0,.590361,.887469,.0741083,0,.607741,.885785,.0701633,0,.62527,.883914,.0664835,0,.642957,.881872,.0630567,0,.660809,.879651,.0598527,0,.678836,.877267,.0568615,0,.69705,.874717,.05406,0,.715465,.872012,.0514378,0,.734098,.869157,.0489805,0,.752968,.866155,.0466727,0,.772101,.863014,.0445056,0,.791529,.859748,.0424733,0,.81129,.856416,.0405957,0,.831438,.852958,.0388273,0,.852044,.849382,.0371619,0,.87321,.845694,.0355959,0,.89509,.841893,.0341155,0,.917932,.837981,.0327141,0,.942204,.833963,.0313856,0,.968981,.829847,.0301275,0,1,1,.85214,0,0,.999969,.852095,0,.00279627,.999483,.851408,0,.0107635,.994545,.84579,0,.0206454,.986188,.835231,0,.0315756,.969847,.814687,0,.0432021,.945951,.783735,0,.0553396,.91917,.746074,0,.0678766,.895488,.706938,0,.0807395,.878232,.669534,0,.0938767,.868252,.635168,0,.10725,.863873,.603069,0,.120832,.863369,.572514,0,.134598,.86545,.543169,0,.148533,.868803,.514578,0,.16262,.872794,.486762,0,.176849,.87702,.459811,0,.19121,.881054,.433654,0,.205694,.884974,.408574,0,.220294,.888587,.384525,0,.235005,.891877,.36156,0,.24982,.894793,.339661,0,.264737,.89743,.318913,0,.279751,.899796,.299302,0,.294859,.901943,.280843,0,.310058,.903858,.263481,0,.325346,.905574,.247197,0,.340721,.907069,.231915,0,.356181,.908379,.217614,0,.371725,.90952,.20425,0,.387353,.910483,.191758,0,.403063,.91128,.180092,0,.418854,.911936,.169222,0,.434727,.912454,.159098,0,.450682,.912835,.149668,0,.466718,.913078,.140884,0,.482837,.913192,.132709,0,.499038,.913175,.125095,0,.515324,.91304,.118012,0,.531695,.912781,.111417,0,.548153,.91241,.105281,0,.5647,.911924,.0995691,0,.581338,.911331,.0942531,0,.59807,.910637,.0893076,0,.6149,.90984,.0846998,0,.63183,.908941,.0804044,0,.648865,.907944,.0763984,0,.666011,.906857,.0726638,0,.683273,.90568,.0691783,0,.700659,.904416,.0659222,0,.718176,.903067,.0628782,0,.735834,.901637,.0600307,0,.753646,.900128,.0573647,0,.771625,.898544,.0548668,0,.78979,.89689,.052527,0,.808162,.895165,.0503306,0,.826771,.893371,.0482668,0,.845654,.891572,.0463605,0,.864863,.889763,.0445998,0,.884472,.887894,.0429451,0,.904592,.885967,.0413884,0,.925407,.883984,.0399225,0,.947271,.881945,.0385405,0,.97105,.879854,.0372362,0,1,.999804,.995833,0,0,.938155,.933611,0,.0158731,.864755,.854311,0,.0317461,.888594,.865264,0,.0476191,.905575,.863922,0,.0634921,.915125,.850558,0,.0793651,.920665,.829254,0,.0952381,.924073,.802578,0,.111111,.926304,.772211,0,.126984,.927829,.739366,0,.142857,.928924,.705033,0,.15873,.92973,.670019,0,.174603,.930339,.634993,0,.190476,.930811,.600485,0,.206349,.931191,.566897,0,.222222,.93149,.534485,0,.238095,.931737,.503429,0,.253968,.931939,.473811,0,.269841,.932108,.445668,0,.285714,.93225,.418993,0,.301587,.932371,.393762,0,.31746,.932474,.369939,0,.333333,.932562,.347479,0,.349206,.932638,.326336,0,.365079,.932703,.306462,0,.380952,.93276,.287805,0,.396825,.932809,.270313,0,.412698,.932851,.253933,0,.428571,.932887,.23861,0,.444444,.932917,.224289,0,.460317,.932943,.210917,0,.47619,.932965,.19844,0,.492063,.932982,.186807,0,.507937,.932995,.175966,0,.52381,.933005,.165869,0,.539683,.933011,.156468,0,.555556,.933013,.147719,0,.571429,.933013,.139579,0,.587302,.93301,.132007,0,.603175,.933004,.124965,0,.619048,.932994,.118416,0,.634921,.932982,.112326,0,.650794,.932968,.106663,0,.666667,.93295,.101397,0,.68254,.932931,.0964993,0,.698413,.932908,.0919438,0,.714286,.932883,.0877057,0,.730159,.932856,.0837623,0,.746032,.932827,.0800921,0,.761905,.932796,.0766754,0,.777778,.932762,.0734936,0,.793651,.932727,.0705296,0,.809524,.932689,.0677676,0,.825397,.93265,.0651929,0,.84127,.932609,.0627917,0,.857143,.932565,.0605515,0,.873016,.932521,.0584606,0,.888889,.932474,.0565082,0,.904762,.932427,.0546841,0,.920635,.932377,.0529793,0,.936508,.932326,.0513851,0,.952381,.932274,.0498936,0,.968254,.93222,.0484975,0,.984127,.932164,.0471899,0,1],n=new Float32Array(t),i=new Float32Array(e);V.LTC_FLOAT_1=new vo.a(n,64,64,w.Ib,w.G,w.Yc,w.n,w.n,w.V,w.ob,1),V.LTC_FLOAT_2=new vo.a(i,64,64,w.Ib,w.G,w.Yc,w.n,w.n,w.V,w.ob,1);const s=new Uint16Array(t.length);t.forEach((function(t,e){s[e]=mU.a.toHalfFloat(t)}));const r=new Uint16Array(e.length);e.forEach((function(t,e){r[e]=mU.a.toHalfFloat(t)})),V.LTC_HALF_1=new vo.a(s,64,64,w.Ib,w.M,w.Yc,w.n,w.n,w.V,w.ob,1),V.LTC_HALF_2=new vo.a(r,64,64,w.Ib,w.M,w.Yc,w.n,w.n,w.V,w.ob,1)}}!function(t){t.OBJECTS=\\\\\\\"objects\\\\\\\",t.GEOMETRIES=\\\\\\\"geometries\\\\\\\"}(_U||(_U={}));const gU=[_U.GEOMETRIES,_U.OBJECTS];var vU;!function(t){t.XYZ=\\\\\\\"XYZ\\\\\\\",t.XZY=\\\\\\\"XZY\\\\\\\",t.YXZ=\\\\\\\"YXZ\\\\\\\",t.YZX=\\\\\\\"YZX\\\\\\\",t.ZYX=\\\\\\\"ZYX\\\\\\\",t.ZXY=\\\\\\\"ZXY\\\\\\\"}(vU||(vU={}));const yU=[vU.XYZ,vU.XZY,vU.YXZ,vU.YZX,vU.ZXY,vU.ZYX],xU=vU.XYZ;class bU{constructor(){this._translation_matrix=new A.a,this._translation_matrix_q=new hh.a,this._translation_matrix_s=new p.a(1,1,1),this._matrix=(new A.a).identity(),this._matrix_q=new hh.a,this._matrix_euler=new ny.a,this._matrix_s=new p.a,this._rotate_geometry_m=new A.a,this._rotate_geometry_q=new hh.a,this._rotate_geometry_vec_dest=new p.a}static setParamsFromMatrix(t,e,n={}){let i=n.scale;null==i&&(i=!0),t.decompose(this.set_params_from_matrix_position,this.set_params_from_matrix_quaternion,this.set_params_from_matrix_scale),this.set_params_from_matrix_euler.setFromQuaternion(this.set_params_from_matrix_quaternion),this.set_params_from_matrix_euler.toVector3(this.set_params_from_matrix_rotation),this.set_params_from_matrix_rotation.divideScalar(Math.PI/180),this.set_params_from_matrix_position.toArray(this.set_params_from_matrix_t),this.set_params_from_matrix_rotation.toArray(this.set_params_from_matrix_r),this.set_params_from_matrix_scale.toArray(this.set_params_from_matrix_s),e.scene().batchUpdates((()=>{e.params.set_vector3(\\\\\\\"t\\\\\\\",this.set_params_from_matrix_t),e.params.set_vector3(\\\\\\\"r\\\\\\\",this.set_params_from_matrix_r),e.params.set_vector3(\\\\\\\"s\\\\\\\",this.set_params_from_matrix_s),i&&e.params.set_float(\\\\\\\"scale\\\\\\\",1)}))}static setParamsFromObject(t,e){t.position.toArray(this.set_params_from_object_position_array),t.rotation.toArray(this.set_params_from_object_rotation_array),this.set_params_from_object_rotation_deg.fromArray(this.set_params_from_object_rotation_array),this.set_params_from_object_rotation_deg.multiplyScalar(180/Math.PI),this.set_params_from_object_rotation_deg.toArray(this.set_params_from_object_rotation_array),e.scene().batchUpdates((()=>{e.params.set_vector3(\\\\\\\"t\\\\\\\",this.set_params_from_object_position_array),e.params.set_vector3(\\\\\\\"r\\\\\\\",this.set_params_from_object_rotation_array)}))}translationMatrix(t){return this._translation_matrix.compose(t,this._translation_matrix_q,this._translation_matrix_s),this._translation_matrix}matrix(t,e,n,i,s){return this._matrix_euler.set(Object(On.e)(e.x),Object(On.e)(e.y),Object(On.e)(e.z),s),this._matrix_q.setFromEuler(this._matrix_euler),this._matrix_s.copy(n).multiplyScalar(i),this._matrix.compose(t,this._matrix_q,this._matrix_s),this._matrix}rotateGeometry(t,e,n){this._rotate_geometry_vec_dest.copy(n),this._rotate_geometry_vec_dest.normalize(),this._rotate_geometry_q.setFromUnitVectors(e,this._rotate_geometry_vec_dest),this._rotate_geometry_m.makeRotationFromQuaternion(this._rotate_geometry_q),t.applyMatrix4(this._rotate_geometry_m)}static decomposeMatrix(t){t.matrix.decompose(t.position,t.quaternion,t.scale)}}function wU(t,e){const n=(null==e?void 0:e.matrixAutoUpdate)||!1;return class extends t{constructor(){super(...arguments),this.transform=ha.FOLDER(),this.keepPosWhenParenting=ha.BOOLEAN(0),this.rotationOrder=ha.INTEGER(yU.indexOf(vU.XYZ),{menu:{entries:yU.map(((t,e)=>({name:t,value:e})))}}),this.t=ha.VECTOR3([0,0,0]),this.r=ha.VECTOR3([0,0,0]),this.s=ha.VECTOR3([1,1,1]),this.scale=ha.FLOAT(1),this.matrixAutoUpdate=ha.BOOLEAN(n?1:0),this.updateTransformFromObject=ha.BUTTON(null,{callback:t=>{AU.PARAM_CALLBACK_update_transform_from_object(t)}})}}}bU.set_params_from_matrix_position=new p.a,bU.set_params_from_matrix_quaternion=new hh.a,bU.set_params_from_matrix_scale=new p.a,bU.set_params_from_matrix_euler=new ny.a,bU.set_params_from_matrix_rotation=new p.a,bU.set_params_from_matrix_t=[0,0,0],bU.set_params_from_matrix_r=[0,0,0],bU.set_params_from_matrix_s=[0,0,0],bU.set_params_from_object_position_array=[0,0,0],bU.set_params_from_object_rotation_deg=new p.a,bU.set_params_from_object_rotation_array=[0,0,0];wU(ua);const TU=\\\\\\\"_cook_main_without_inputs_when_dirty\\\\\\\";class AU{constructor(t){this.node=t,this._cook_main_without_inputs_when_dirty_bound=this._cook_main_without_inputs_when_dirty.bind(this),this._core_transform=new bU,this._keep_pos_when_parenting_m_object=new A.a,this._keep_pos_when_parenting_m_new_parent_inv=new A.a}initializeNode(){this.node.dirtyController.hasHook(TU)||this.node.dirtyController.addPostDirtyHook(TU,this._cook_main_without_inputs_when_dirty_bound)}async _cook_main_without_inputs_when_dirty(){await this.node.cookController.cookMainWithoutInputs()}update(){this.update_transform_with_matrix();this.node.object.matrixAutoUpdate=this.node.pv.matrixAutoUpdate}update_transform_with_matrix(t){const e=this.node.object;null==t||t.equals(e.matrix)?this._update_matrix_from_params_with_core_transform():(e.matrix.copy(t),e.dispatchEvent({type:\\\\\\\"change\\\\\\\"}))}_update_matrix_from_params_with_core_transform(){const t=this.node.object;let e=t.matrixAutoUpdate;e&&(t.matrixAutoUpdate=!1);const n=this._core_transform.matrix(this.node.pv.t,this.node.pv.r,this.node.pv.s,this.node.pv.scale,yU[this.node.pv.rotationOrder]);t.matrix.identity(),t.applyMatrix4(n),this._apply_look_at(),t.updateMatrix(),e&&(t.matrixAutoUpdate=!0),t.dispatchEvent({type:\\\\\\\"change\\\\\\\"})}_apply_look_at(){}set_params_from_matrix(t,e={}){bU.setParamsFromMatrix(t,this.node,e)}static update_node_transform_params_if_required(t,e){t.transformController.update_node_transform_params_if_required(e)}update_node_transform_params_if_required(t){if(!this.node.pv.keepPosWhenParenting)return;if(!this.node.scene().loadingController.loaded())return;if(t==this.node.object.parent)return;const e=this.node.object;e.updateMatrixWorld(!0),t.updateMatrixWorld(!0),this._keep_pos_when_parenting_m_object.copy(e.matrixWorld),this._keep_pos_when_parenting_m_new_parent_inv.copy(t.matrixWorld),this._keep_pos_when_parenting_m_new_parent_inv.invert(),this._keep_pos_when_parenting_m_object.premultiply(this._keep_pos_when_parenting_m_new_parent_inv),bU.setParamsFromMatrix(this._keep_pos_when_parenting_m_object,this.node,{scale:!0})}update_node_transform_params_from_object(t=!1){const e=this.node.object;t&&e.updateMatrix(),bU.setParamsFromMatrix(e.matrix,this.node,{scale:!0})}static PARAM_CALLBACK_update_transform_from_object(t){t.transformController.update_node_transform_params_from_object()}}class MU{constructor(t){this.node=t}initializeNode(){this.node.io.inputs.setCount(0,1),this.node.io.inputs.set_depends_on_inputs(!1),this.node.io.outputs.setHasOneOutput(),this.node.io.inputs.add_on_set_input_hook(\\\\\\\"on_input_updated:update_parent\\\\\\\",(()=>{this.on_input_updated()}))}static on_input_updated(t){const e=t.root().getParentForNode(t);t.transformController&&e&&AU.update_node_transform_params_if_required(t,e),null!=t.io.inputs.input(0)?t.root().addToParentTransform(t):t.root().removeFromParentTransform(t)}on_input_updated(){MU.on_input_updated(this.node)}}wU(ua);class EU extends hU{constructor(){super(...arguments),this.flags=new Di(this),this.hierarchyController=new MU(this),this.transformController=new AU(this)}initializeBaseNode(){super.initializeBaseNode(),this.hierarchyController.initializeNode(),this.transformController.initializeNode()}cook(){this.transformController.update(),this.updateLightParams(),this.updateShadowParams(),this.cookController.endCook()}}class SU{constructor(t,e,n){this.node=t,this._helperConstructor=e,this._name=n}initializeNode(){this.node.flags.display.onUpdate((()=>{this.update()}))}visible(){return this.node.flags.display.active()&&this.node.pv.showHelper}_createHelper(){const t=new this._helperConstructor(this.node,this._name);return t.build(),t}update(){this.visible()?(this._helper||(this._helper=this._createHelper()),this._helper&&(this.node.light.add(this._helper.object),this._helper.update())):this._helper&&this.node.light.remove(this._helper.object)}}var CU=n(41);class NU extends CU.a{constructor(t,e){const n=new S.a;n.setAttribute(\\\\\\\"position\\\\\\\",new C.c([1,1,0,-1,1,0,-1,-1,0,1,-1,0,1,1,0],3)),n.computeBoundingSphere();super(n,new As.a({fog:!1})),this.light=t,this.color=e,this.type=\\\\\\\"RectAreaLightHelper\\\\\\\";const i=new S.a;i.setAttribute(\\\\\\\"position\\\\\\\",new C.c([1,1,0,-1,1,0,-1,-1,0,1,1,0,-1,-1,0,1,-1,0],3)),i.computeBoundingSphere(),this.add(new B.a(i,new lt.a({side:w.i,fog:!1})))}updateMatrixWorld(){if(this.scale.set(.5*this.light.width,.5*this.light.height,1),void 0!==this.color)this.material.color.set(this.color),this.children[0].material.color.set(this.color);else{this.material.color.copy(this.light.color).multiplyScalar(this.light.intensity);const t=this.material.color,e=Math.max(t.r,t.g,t.b);e>1&&t.multiplyScalar(1/e),this.children[0].material.color.copy(this.material.color)}this.matrixWorld.extractRotation(this.light.matrixWorld).scale(this.scale).copyPosition(this.light.matrixWorld),this.children[0].matrixWorld.copy(this.matrixWorld)}dispose(){this.geometry.dispose(),this.material.dispose(),this.children[0].geometry.dispose(),this.children[0].material.dispose()}}class LU{constructor(t,e){this.node=t,this._name=e,this._object=this.createObject(),this._material=new lt.a({wireframe:!0,fog:!1})}build(){this._object.matrixAutoUpdate=!1,this._object.name=this._name,this.buildHelper()}get object(){return this._object}}class OU extends LU{createObject(){return new NU(this.node.light)}buildHelper(){}update(){this._object.updateMatrixWorld()}}class PU extends(function(t){return class extends t{constructor(){super(...arguments),this.light=ha.FOLDER(),this.color=ha.COLOR([1,1,1],{conversion:lo.SRGB_TO_LINEAR}),this.intensity=ha.FLOAT(1,{range:[0,10]}),this.width=ha.FLOAT(1,{range:[0,10]}),this.height=ha.FLOAT(1,{range:[0,10]}),this.showHelper=ha.BOOLEAN(0)}}}(wU(ua))){}const RU=new PU;class IU extends EU{constructor(){super(...arguments),this.paramsConfig=RU,this._helperController=new SU(this,OU,\\\\\\\"RectAreaLightObjNodeHelper\\\\\\\")}static type(){return\\\\\\\"areaLight\\\\\\\"}initializeNode(){this._helperController.initializeNode()}createLight(){const t=new pU(16777215,1,1,1);return t.matrixAutoUpdate=!1,fU.initialized||(fU.init(),fU.initialized=!0),t}updateLightParams(){this.light.color=this.pv.color,this.light.intensity=this.pv.intensity,this.light.width=this.pv.width,this.light.height=this.pv.height,this._helperController.update()}}var FU=n(72);const DU=new p.a,BU=new of.a;class zU extends Ms.a{constructor(t){const e=new S.a,n=new As.a({color:16777215,vertexColors:!0,toneMapped:!1}),i=[],s=[],r={},o=new D.a(16755200),a=new D.a(16711680),l=new D.a(43775),c=new D.a(16777215),h=new D.a(3355443);function u(t,e,n){d(t,n),d(e,n)}function d(t,e){i.push(0,0,0),s.push(e.r,e.g,e.b),void 0===r[t]&&(r[t]=[]),r[t].push(i.length/3-1)}u(\\\\\\\"n1\\\\\\\",\\\\\\\"n2\\\\\\\",o),u(\\\\\\\"n2\\\\\\\",\\\\\\\"n4\\\\\\\",o),u(\\\\\\\"n4\\\\\\\",\\\\\\\"n3\\\\\\\",o),u(\\\\\\\"n3\\\\\\\",\\\\\\\"n1\\\\\\\",o),u(\\\\\\\"f1\\\\\\\",\\\\\\\"f2\\\\\\\",o),u(\\\\\\\"f2\\\\\\\",\\\\\\\"f4\\\\\\\",o),u(\\\\\\\"f4\\\\\\\",\\\\\\\"f3\\\\\\\",o),u(\\\\\\\"f3\\\\\\\",\\\\\\\"f1\\\\\\\",o),u(\\\\\\\"n1\\\\\\\",\\\\\\\"f1\\\\\\\",o),u(\\\\\\\"n2\\\\\\\",\\\\\\\"f2\\\\\\\",o),u(\\\\\\\"n3\\\\\\\",\\\\\\\"f3\\\\\\\",o),u(\\\\\\\"n4\\\\\\\",\\\\\\\"f4\\\\\\\",o),u(\\\\\\\"p\\\\\\\",\\\\\\\"n1\\\\\\\",a),u(\\\\\\\"p\\\\\\\",\\\\\\\"n2\\\\\\\",a),u(\\\\\\\"p\\\\\\\",\\\\\\\"n3\\\\\\\",a),u(\\\\\\\"p\\\\\\\",\\\\\\\"n4\\\\\\\",a),u(\\\\\\\"u1\\\\\\\",\\\\\\\"u2\\\\\\\",l),u(\\\\\\\"u2\\\\\\\",\\\\\\\"u3\\\\\\\",l),u(\\\\\\\"u3\\\\\\\",\\\\\\\"u1\\\\\\\",l),u(\\\\\\\"c\\\\\\\",\\\\\\\"t\\\\\\\",c),u(\\\\\\\"p\\\\\\\",\\\\\\\"c\\\\\\\",h),u(\\\\\\\"cn1\\\\\\\",\\\\\\\"cn2\\\\\\\",h),u(\\\\\\\"cn3\\\\\\\",\\\\\\\"cn4\\\\\\\",h),u(\\\\\\\"cf1\\\\\\\",\\\\\\\"cf2\\\\\\\",h),u(\\\\\\\"cf3\\\\\\\",\\\\\\\"cf4\\\\\\\",h),e.setAttribute(\\\\\\\"position\\\\\\\",new C.c(i,3)),e.setAttribute(\\\\\\\"color\\\\\\\",new C.c(s,3)),super(e,n),this.type=\\\\\\\"CameraHelper\\\\\\\",this.camera=t,this.camera.updateProjectionMatrix&&this.camera.updateProjectionMatrix(),this.matrixAutoUpdate=!1,this.pointMap=r,this.update()}update(){const t=this.geometry,e=this.pointMap;BU.projectionMatrixInverse.copy(this.camera.projectionMatrixInverse),kU(\\\\\\\"c\\\\\\\",e,t,BU,0,0,-1),kU(\\\\\\\"t\\\\\\\",e,t,BU,0,0,1),kU(\\\\\\\"n1\\\\\\\",e,t,BU,-1,-1,-1),kU(\\\\\\\"n2\\\\\\\",e,t,BU,1,-1,-1),kU(\\\\\\\"n3\\\\\\\",e,t,BU,-1,1,-1),kU(\\\\\\\"n4\\\\\\\",e,t,BU,1,1,-1),kU(\\\\\\\"f1\\\\\\\",e,t,BU,-1,-1,1),kU(\\\\\\\"f2\\\\\\\",e,t,BU,1,-1,1),kU(\\\\\\\"f3\\\\\\\",e,t,BU,-1,1,1),kU(\\\\\\\"f4\\\\\\\",e,t,BU,1,1,1),kU(\\\\\\\"u1\\\\\\\",e,t,BU,.7,1.1,-1),kU(\\\\\\\"u2\\\\\\\",e,t,BU,-.7,1.1,-1),kU(\\\\\\\"u3\\\\\\\",e,t,BU,0,2,-1),kU(\\\\\\\"cf1\\\\\\\",e,t,BU,-1,0,1),kU(\\\\\\\"cf2\\\\\\\",e,t,BU,1,0,1),kU(\\\\\\\"cf3\\\\\\\",e,t,BU,0,-1,1),kU(\\\\\\\"cf4\\\\\\\",e,t,BU,0,1,1),kU(\\\\\\\"cn1\\\\\\\",e,t,BU,-1,0,-1),kU(\\\\\\\"cn2\\\\\\\",e,t,BU,1,0,-1),kU(\\\\\\\"cn3\\\\\\\",e,t,BU,0,-1,-1),kU(\\\\\\\"cn4\\\\\\\",e,t,BU,0,1,-1),t.getAttribute(\\\\\\\"position\\\\\\\").needsUpdate=!0}}function kU(t,e,n,i,s,r,o){DU.set(s,r,o).unproject(i);const a=e[t];if(void 0!==a){const t=n.getAttribute(\\\\\\\"position\\\\\\\");for(let e=0,n=a.length;e<n;e++)t.setXYZ(a[e],DU.x,DU.y,DU.z)}}class UU extends LU{constructor(){super(...arguments),this._square=new CU.a,this._line_material=new As.a({fog:!1})}createObject(){return new B.a}buildHelper(){const t=new S.a;t.setAttribute(\\\\\\\"position\\\\\\\",new C.c([-1,1,0,1,1,0,1,-1,0,-1,-1,0,-1,1,0],3)),this._square.geometry=t,this._square.material=this._line_material,this._square.rotateX(.5*Math.PI),this._square.updateMatrix(),this._square.matrixAutoUpdate=!1,this.object.add(this._square),this._cameraHelper=new zU(this.node.light.shadow.camera),this._cameraHelper.rotateX(.5*-Math.PI),this._cameraHelper.updateMatrix(),this._cameraHelper.matrixAutoUpdate=!1,this.object.add(this._cameraHelper)}update(){this._object.updateMatrix(),this._cameraHelper.update(),this._line_material.color.copy(this.node.light.color)}}var GU,VU;!function(t){t.DIRECTIONAL=\\\\\\\"directionalLight\\\\\\\",t.HEMISPHERE=\\\\\\\"hemisphereLight\\\\\\\",t.POINT=\\\\\\\"pointLight\\\\\\\",t.SPOT=\\\\\\\"spotLight\\\\\\\"}(GU||(GU={})),function(t){t.DIRECTIONAL=\\\\\\\"DirectionalLight\\\\\\\",t.HEMISPHERE=\\\\\\\"HemisphereLight\\\\\\\",t.POINT=\\\\\\\"PointLight\\\\\\\",t.SPOT=\\\\\\\"SpotLight\\\\\\\"}(VU||(VU={}));class HU extends(function(t){return class extends t{constructor(){super(...arguments),this.light=ha.FOLDER(),this.color=ha.COLOR([1,1,1],{conversion:lo.SRGB_TO_LINEAR}),this.intensity=ha.FLOAT(1),this.distance=ha.FLOAT(100,{range:[0,100]}),this.showHelper=ha.BOOLEAN(0),this.shadow=ha.FOLDER(),this.castShadow=ha.BOOLEAN(1),this.shadowRes=ha.VECTOR2([1024,1024],{visibleIf:{castShadow:!0}}),this.shadowSize=ha.VECTOR2([2,2],{visibleIf:{castShadow:!0}}),this.shadowBias=ha.FLOAT(.001,{visibleIf:{castShadow:!0}}),this.shadowRadius=ha.FLOAT(0,{visibleIf:{castShadow:1},range:[0,10],rangeLocked:[!0,!1]})}}}(wU(ua))){}const jU=new HU;class WU extends EU{constructor(){super(...arguments),this.paramsConfig=jU,this._helperController=new SU(this,UU,\\\\\\\"DirectionalLightHelper\\\\\\\")}static type(){return GU.DIRECTIONAL}initializeNode(){this._helperController.initializeNode()}createLight(){const t=new FU.a;return t.matrixAutoUpdate=!1,t.castShadow=!0,t.shadow.bias=-.001,t.shadow.mapSize.x=1024,t.shadow.mapSize.y=1024,t.shadow.camera.near=.1,this._target_target=t.target,this._target_target.name=\\\\\\\"DirectionalLight Default Target\\\\\\\",this.object.add(this._target_target),t}updateLightParams(){this.light.color=this.pv.color,this.light.intensity=this.pv.intensity,this.light.shadow.camera.far=this.pv.distance}updateShadowParams(){this.light.castShadow=this.pv.castShadow,this.light.shadow.mapSize.copy(this.pv.shadowRes),this.light.shadow.bias=this.pv.shadowBias,this.light.shadow.radius=this.pv.shadowRadius;const t=this.light.shadow.camera,e=this.pv.shadowSize;t.left=.5*-e.x,t.right=.5*e.x,t.top=.5*e.y,t.bottom=.5*-e.y,this.light.shadow.camera.updateProjectionMatrix(),this._helperController.update()}}class qU extends cv.a{constructor(t,e,n){super(t,n),this.type=\\\\\\\"HemisphereLight\\\\\\\",this.position.copy(Q.a.DefaultUp),this.updateMatrix(),this.groundColor=new D.a(e)}copy(t){return cv.a.prototype.copy.call(this,t),this.groundColor.copy(t.groundColor),this}}qU.prototype.isHemisphereLight=!0;class XU extends S.a{constructor(t=[],e=[],n=1,i=0){super(),this.type=\\\\\\\"PolyhedronGeometry\\\\\\\",this.parameters={vertices:t,indices:e,radius:n,detail:i};const s=[],r=[];function o(t,e,n,i){const s=i+1,r=[];for(let i=0;i<=s;i++){r[i]=[];const o=t.clone().lerp(n,i/s),a=e.clone().lerp(n,i/s),l=s-i;for(let t=0;t<=l;t++)r[i][t]=0===t&&i===s?o:o.clone().lerp(a,t/l)}for(let t=0;t<s;t++)for(let e=0;e<2*(s-t)-1;e++){const n=Math.floor(e/2);e%2==0?(a(r[t][n+1]),a(r[t+1][n]),a(r[t][n])):(a(r[t][n+1]),a(r[t+1][n+1]),a(r[t+1][n]))}}function a(t){s.push(t.x,t.y,t.z)}function l(e,n){const i=3*e;n.x=t[i+0],n.y=t[i+1],n.z=t[i+2]}function c(t,e,n,i){i<0&&1===t.x&&(r[e]=t.x-1),0===n.x&&0===n.z&&(r[e]=i/2/Math.PI+.5)}function h(t){return Math.atan2(t.z,-t.x)}!function(t){const n=new p.a,i=new p.a,s=new p.a;for(let r=0;r<e.length;r+=3)l(e[r+0],n),l(e[r+1],i),l(e[r+2],s),o(n,i,s,t)}(i),function(t){const e=new p.a;for(let n=0;n<s.length;n+=3)e.x=s[n+0],e.y=s[n+1],e.z=s[n+2],e.normalize().multiplyScalar(t),s[n+0]=e.x,s[n+1]=e.y,s[n+2]=e.z}(n),function(){const t=new p.a;for(let n=0;n<s.length;n+=3){t.x=s[n+0],t.y=s[n+1],t.z=s[n+2];const i=h(t)/2/Math.PI+.5,o=(e=t,Math.atan2(-e.y,Math.sqrt(e.x*e.x+e.z*e.z))/Math.PI+.5);r.push(i,1-o)}var e;(function(){const t=new p.a,e=new p.a,n=new p.a,i=new p.a,o=new d.a,a=new d.a,l=new d.a;for(let u=0,d=0;u<s.length;u+=9,d+=6){t.set(s[u+0],s[u+1],s[u+2]),e.set(s[u+3],s[u+4],s[u+5]),n.set(s[u+6],s[u+7],s[u+8]),o.set(r[d+0],r[d+1]),a.set(r[d+2],r[d+3]),l.set(r[d+4],r[d+5]),i.copy(t).add(e).add(n).divideScalar(3);const p=h(i);c(o,d+0,t,p),c(a,d+2,e,p),c(l,d+4,n,p)}})(),function(){for(let t=0;t<r.length;t+=6){const e=r[t+0],n=r[t+2],i=r[t+4],s=Math.max(e,n,i),o=Math.min(e,n,i);s>.9&&o<.1&&(e<.2&&(r[t+0]+=1),n<.2&&(r[t+2]+=1),i<.2&&(r[t+4]+=1))}}()}(),this.setAttribute(\\\\\\\"position\\\\\\\",new C.c(s,3)),this.setAttribute(\\\\\\\"normal\\\\\\\",new C.c(s.slice(),3)),this.setAttribute(\\\\\\\"uv\\\\\\\",new C.c(r,2)),0===i?this.computeVertexNormals():this.normalizeNormals()}static fromJSON(t){return new XU(t.vertices,t.indices,t.radius,t.details)}}class YU extends XU{constructor(t=1,e=0){super([1,0,0,-1,0,0,0,1,0,0,-1,0,0,0,1,0,0,-1],[0,2,4,0,4,3,0,3,5,0,5,2,1,2,5,1,5,3,1,3,4,1,4,2],t,e),this.type=\\\\\\\"OctahedronGeometry\\\\\\\",this.parameters={radius:t,detail:e}}static fromJSON(t){return new YU(t.radius,t.detail)}}class $U extends LU{constructor(){super(...arguments),this._geometry=new YU(1),this._quat=new hh.a,this._default_position=new p.a(0,1,0),this._color1=new D.a,this._color2=new D.a}createObject(){return new B.a}buildHelper(){this._geometry.rotateZ(.5*Math.PI),this._material.vertexColors=!0;const t=this._geometry.getAttribute(\\\\\\\"position\\\\\\\"),e=new Float32Array(3*t.count);this._geometry.setAttribute(\\\\\\\"color\\\\\\\",new C.a(e,3)),this._object.geometry=this._geometry,this._object.material=this._material,this._object.matrixAutoUpdate=!1}update(){if(!this.node.pv.position)return;this._object.position.copy(this.node.pv.position).multiplyScalar(-1),this._quat.setFromUnitVectors(this._default_position,this.node.pv.position),this._object.setRotationFromQuaternion(this._quat),this._object.scale.setScalar(this.node.pv.helperSize),this._object.updateMatrix();const t=this._geometry.getAttribute(\\\\\\\"color\\\\\\\");this._color1.copy(this.node.light.color),this._color2.copy(this.node.light.groundColor);for(let e=0,n=t.count;e<n;e++){const i=e<n/2?this._color1:this._color2;t.setXYZ(e,i.r,i.g,i.b)}t.needsUpdate=!0}}const JU={skyColor:new D.a(1,1,1),groundColor:new D.a(0,0,0)};const ZU=new class extends ua{constructor(){super(...arguments),this.skyColor=ha.COLOR(JU.skyColor,{conversion:lo.SRGB_TO_LINEAR}),this.groundColor=ha.COLOR(JU.groundColor,{conversion:lo.SRGB_TO_LINEAR}),this.intensity=ha.FLOAT(1),this.position=ha.VECTOR3([0,1,0]),this.showHelper=ha.BOOLEAN(0),this.helperSize=ha.FLOAT(1,{visibleIf:{showHelper:1}})}};class KU extends hU{constructor(){super(...arguments),this.paramsConfig=ZU,this._helperController=new SU(this,$U,\\\\\\\"HemisphereLightHelper\\\\\\\")}static type(){return GU.HEMISPHERE}createLight(){const t=new qU;return t.matrixAutoUpdate=!1,t.color.copy(JU.skyColor),t.groundColor.copy(JU.groundColor),t}initializeNode(){this.io.inputs.setCount(0,1),this._helperController.initializeNode()}updateLightParams(){this.light.color=this.pv.skyColor,this.light.groundColor=this.pv.groundColor,this.light.position.copy(this.pv.position),this.light.intensity=this.pv.intensity,this._helperController.update()}}var QU=n(58);class tG extends S.a{constructor(t=1,e=32,n=16,i=0,s=2*Math.PI,r=0,o=Math.PI){super(),this.type=\\\\\\\"SphereGeometry\\\\\\\",this.parameters={radius:t,widthSegments:e,heightSegments:n,phiStart:i,phiLength:s,thetaStart:r,thetaLength:o},e=Math.max(3,Math.floor(e)),n=Math.max(2,Math.floor(n));const a=Math.min(r+o,Math.PI);let l=0;const c=[],h=new p.a,u=new p.a,d=[],_=[],m=[],f=[];for(let d=0;d<=n;d++){const p=[],g=d/n;let v=0;0==d&&0==r?v=.5/e:d==n&&a==Math.PI&&(v=-.5/e);for(let n=0;n<=e;n++){const a=n/e;h.x=-t*Math.cos(i+a*s)*Math.sin(r+g*o),h.y=t*Math.cos(r+g*o),h.z=t*Math.sin(i+a*s)*Math.sin(r+g*o),_.push(h.x,h.y,h.z),u.copy(h).normalize(),m.push(u.x,u.y,u.z),f.push(a+v,1-g),p.push(l++)}c.push(p)}for(let t=0;t<n;t++)for(let i=0;i<e;i++){const e=c[t][i+1],s=c[t][i],o=c[t+1][i],l=c[t+1][i+1];(0!==t||r>0)&&d.push(e,s,l),(t!==n-1||a<Math.PI)&&d.push(s,o,l)}this.setIndex(d),this.setAttribute(\\\\\\\"position\\\\\\\",new C.c(_,3)),this.setAttribute(\\\\\\\"normal\\\\\\\",new C.c(m,3)),this.setAttribute(\\\\\\\"uv\\\\\\\",new C.c(f,2))}static fromJSON(t){return new tG(t.radius,t.widthSegments,t.heightSegments,t.phiStart,t.phiLength,t.thetaStart,t.thetaLength)}}class eG extends LU{constructor(){super(...arguments),this._matrix_scale=new p.a(1,1,1)}createObject(){return new B.a}buildHelper(){this._object.geometry=new tG(1,4,2),this._object.matrixAutoUpdate=!1,this._object.material=this._material}update(){const t=this.node.pv.helperSize;this._matrix_scale.set(t,t,t),this._object.matrix.identity(),this._object.matrix.scale(this._matrix_scale),this._material.color.copy(this.node.light.color)}}class nG extends(wU(ua)){constructor(){super(...arguments),this.light=ha.FOLDER(),this.color=ha.COLOR([1,1,1],{conversion:lo.SRGB_TO_LINEAR}),this.intensity=ha.FLOAT(1),this.decay=ha.FLOAT(.1),this.distance=ha.FLOAT(100),this.castShadows=ha.BOOLEAN(1),this.shadowRes=ha.VECTOR2([1024,1024],{visibleIf:{castShadows:1}}),this.shadowBias=ha.FLOAT(.001,{visibleIf:{castShadows:1}}),this.shadowNear=ha.FLOAT(1,{visibleIf:{castShadows:1}}),this.shadowFar=ha.FLOAT(100,{visibleIf:{castShadows:1}}),this.showHelper=ha.BOOLEAN(0),this.helperSize=ha.FLOAT(1,{visibleIf:{showHelper:1}})}}const iG=new nG;class sG extends EU{constructor(){super(...arguments),this.paramsConfig=iG,this._helperController=new SU(this,eG,\\\\\\\"PointLightHelper\\\\\\\")}static type(){return GU.POINT}initializeNode(){this._helperController.initializeNode()}createLight(){const t=new QU.a;return t.matrixAutoUpdate=!1,t.castShadow=!0,t.shadow.bias=-.001,t.shadow.mapSize.x=1024,t.shadow.mapSize.y=1024,t.shadow.camera.near=.1,t}updateLightParams(){this.light.color=this.pv.color,this.light.intensity=this.pv.intensity,this.light.decay=this.pv.decay,this.light.distance=this.pv.distance,this._helperController.update()}updateShadowParams(){this.light.castShadow=this.pv.castShadows,this.light.shadow.mapSize.copy(this.pv.shadowRes),this.light.shadow.camera.near=this.pv.shadowNear,this.light.shadow.camera.far=this.pv.shadowFar,this.light.shadow.bias=this.pv.shadowBias}}var rG=n(73);class oG extends LU{constructor(){super(...arguments),this._cone=new Ms.a,this._line_material=new As.a({fog:!1})}createObject(){return new B.a}static buildConeGeometry(){const t=new S.a,e=[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 t=0,n=1,i=32;t<i;t++,n++){const s=t/i*Math.PI*2,r=n/i*Math.PI*2;e.push(Math.cos(s),Math.sin(s),1,Math.cos(r),Math.sin(r),1)}return t.setAttribute(\\\\\\\"position\\\\\\\",new C.c(e,3)),t}static updateConeObject(t,e){const n=(e.distance?e.distance:1e3)*e.sizeMult,i=n*Math.tan(e.angle);this._matrix_scale.set(i,i,n),t.matrix.identity(),t.matrix.makeRotationX(.5*Math.PI),t.matrix.scale(this._matrix_scale)}buildHelper(){this._cone.geometry=oG.buildConeGeometry(),this._cone.material=this._line_material,this._cone.matrixAutoUpdate=!1,this.object.add(this._cone)}update(){oG.updateConeObject(this._cone,{sizeMult:this.node.pv.helperSize,distance:this.node.light.distance,angle:this.node.light.angle}),this._line_material.color.copy(this.node.light.color)}}oG._matrix_scale=new p.a;class aG extends S.a{constructor(t=1,e=1,n=1,i=8,s=1,r=!1,o=0,a=2*Math.PI){super(),this.type=\\\\\\\"CylinderGeometry\\\\\\\",this.parameters={radiusTop:t,radiusBottom:e,height:n,radialSegments:i,heightSegments:s,openEnded:r,thetaStart:o,thetaLength:a};const l=this;i=Math.floor(i),s=Math.floor(s);const c=[],h=[],u=[],_=[];let m=0;const f=[],g=n/2;let v=0;function y(n){const s=m,r=new d.a,f=new p.a;let y=0;const x=!0===n?t:e,b=!0===n?1:-1;for(let t=1;t<=i;t++)h.push(0,g*b,0),u.push(0,b,0),_.push(.5,.5),m++;const w=m;for(let t=0;t<=i;t++){const e=t/i*a+o,n=Math.cos(e),s=Math.sin(e);f.x=x*s,f.y=g*b,f.z=x*n,h.push(f.x,f.y,f.z),u.push(0,b,0),r.x=.5*n+.5,r.y=.5*s*b+.5,_.push(r.x,r.y),m++}for(let t=0;t<i;t++){const e=s+t,i=w+t;!0===n?c.push(i,i+1,e):c.push(i+1,i,e),y+=3}l.addGroup(v,y,!0===n?1:2),v+=y}!function(){const r=new p.a,d=new p.a;let y=0;const x=(e-t)/n;for(let l=0;l<=s;l++){const c=[],p=l/s,v=p*(e-t)+t;for(let t=0;t<=i;t++){const e=t/i,s=e*a+o,l=Math.sin(s),f=Math.cos(s);d.x=v*l,d.y=-p*n+g,d.z=v*f,h.push(d.x,d.y,d.z),r.set(l,x,f).normalize(),u.push(r.x,r.y,r.z),_.push(e,1-p),c.push(m++)}f.push(c)}for(let t=0;t<i;t++)for(let e=0;e<s;e++){const n=f[e][t],i=f[e+1][t],s=f[e+1][t+1],r=f[e][t+1];c.push(n,i,r),c.push(i,s,r),y+=6}l.addGroup(v,y,0),v+=y}(),!1===r&&(t>0&&y(!0),e>0&&y(!1)),this.setIndex(c),this.setAttribute(\\\\\\\"position\\\\\\\",new C.c(h,3)),this.setAttribute(\\\\\\\"normal\\\\\\\",new C.c(u,3)),this.setAttribute(\\\\\\\"uv\\\\\\\",new C.c(_,2))}static fromJSON(t){return new aG(t.radiusTop,t.radiusBottom,t.height,t.radialSegments,t.heightSegments,t.openEnded,t.thetaStart,t.thetaLength)}}class lG extends aG{constructor(t=1,e=1,n=8,i=1,s=!1,r=0,o=2*Math.PI){super(0,t,e,n,i,s,r,o),this.type=\\\\\\\"ConeGeometry\\\\\\\",this.parameters={radius:t,height:e,radialSegments:n,heightSegments:i,openEnded:s,thetaStart:r,thetaLength:o}}static fromJSON(t){return new lG(t.radius,t.height,t.radialSegments,t.heightSegments,t.openEnded,t.thetaStart,t.thetaLength)}}class cG{constructor(t){this.node=t}update(){const t=this.node.pv;if(t.tvolumetric){const e=this.object(),n=this.node.light;oG.updateConeObject(e,{sizeMult:t.helperSize,distance:n.distance,angle:n.angle});const i=e.material.uniforms;i.lightColor.value.copy(n.color),i.attenuation.value=t.volAttenuation,i.anglePower.value=t.volAnglePower,this.node.light.add(e)}else this._mesh&&this.node.light.remove(this._mesh)}object(){return this._mesh=this._mesh||this._createMesh()}_createMesh(){const t=new lG(1,1,256,1);t.applyMatrix4((new A.a).makeTranslation(0,-.5,0)),t.applyMatrix4((new A.a).makeRotationX(-Math.PI/2));const e=this._createMaterial(),n=new B.a(t,e);return n.matrixAutoUpdate=!1,n.name=\\\\\\\"Volumetric\\\\\\\",e.uniforms.lightColor.value.set(\\\\\\\"white\\\\\\\"),n}_createMaterial(){return new F({uniforms:{attenuation:{value:5},anglePower:{value:1.2},lightColor:{value:new D.a(\\\\\\\"cyan\\\\\\\")}},vertexShader:\\\\\\\"varying vec3 vNormal;\\\\nvarying vec3 vWorldPosition;\\\\nvarying vec3 vWorldOrigin;\\\\n\\\\nvoid main(){\\\\n\\\\t// compute intensity\\\\n\\\\tvNormal\\\\t\\\\t= normalize( normalMatrix * normal );\\\\n\\\\n\\\\tvec4 worldPosition\\\\t= modelMatrix * vec4( position, 1.0 );\\\\n\\\\tvWorldPosition\\\\t\\\\t= worldPosition.xyz;\\\\n\\\\n\\\\tvec4 worldOrigin\\\\t= modelMatrix * vec4( 0.0, 0.0, 0.0, 1.0 );\\\\n\\\\tvWorldOrigin\\\\t\\\\t= worldOrigin.xyz;\\\\n\\\\n\\\\t// set gl_Position\\\\n\\\\tgl_Position\\\\t= projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\\\\n}\\\\\\\",fragmentShader:\\\\\\\"varying vec3 vNormal;\\\\nvarying vec3 vWorldPosition;\\\\nvarying vec3 vWorldOrigin;\\\\n\\\\nuniform vec3 lightColor;\\\\n\\\\n// uniform vec3 spotPosition;\\\\n\\\\nuniform float attenuation;\\\\nuniform float anglePower;\\\\n\\\\nvoid main(){\\\\n\\\\n\\\\t//////////////////////////////////////////////////////////\\\\n\\\\t// distance attenuation   //\\\\n\\\\t//////////////////////////////////////////////////////////\\\\n\\\\tfloat intensity = distance(vWorldPosition, vWorldOrigin) / attenuation;\\\\n\\\\tintensity = 1.0 - clamp(intensity, 0.0, 1.0);\\\\n\\\\n\\\\t//////////////////////////////////////////////////////////\\\\n\\\\t// intensity on angle   //\\\\n\\\\t//////////////////////////////////////////////////////////\\\\n\\\\tvec3 normal = vec3(vNormal.x, vNormal.y, abs(vNormal.z));\\\\n\\\\tfloat angleIntensity = pow( dot(normal, vec3(0.0, 0.0, 1.0)), anglePower );\\\\n\\\\tintensity = intensity * angleIntensity;\\\\n\\\\t// 'gl_FragColor = vec4( lightColor, intensity );\\\\n\\\\n\\\\t//////////////////////////////////////////////////////////\\\\n\\\\t// final color   //\\\\n\\\\t//////////////////////////////////////////////////////////\\\\n\\\\n\\\\t// set the final color\\\\n\\\\tgl_FragColor = vec4( lightColor, intensity);\\\\n}\\\\\\\",transparent:!0,depthWrite:!1})}}class hG extends(wU(ua)){constructor(){super(...arguments),this.light=ha.FOLDER(),this.color=ha.COLOR([1,1,1],{conversion:lo.SRGB_TO_LINEAR}),this.intensity=ha.FLOAT(1),this.angle=ha.FLOAT(45,{range:[0,180]}),this.penumbra=ha.FLOAT(.1),this.decay=ha.FLOAT(.1,{range:[0,1]}),this.distance=ha.FLOAT(100,{range:[0,100]}),this.showHelper=ha.BOOLEAN(0),this.helperSize=ha.FLOAT(1,{visibleIf:{showHelper:1}}),this.shadow=ha.FOLDER(),this.castShadow=ha.BOOLEAN(1),this.shadowAutoUpdate=ha.BOOLEAN(1,{visibleIf:{castShadow:1}}),this.shadowUpdateOnNextRender=ha.BOOLEAN(0,{visibleIf:{castShadow:1,shadowAutoUpdate:0}}),this.shadowRes=ha.VECTOR2([256,256],{visibleIf:{castShadow:1}}),this.shadowBias=ha.FLOAT(.001,{visibleIf:{castShadow:1},range:[-.01,.01],rangeLocked:[!1,!1]}),this.shadowNear=ha.FLOAT(.1,{visibleIf:{castShadow:1},range:[0,100],rangeLocked:[!0,!1]}),this.shadowFar=ha.FLOAT(100,{visibleIf:{castShadow:1},range:[0,100],rangeLocked:[!0,!1]}),this.shadowRadius=ha.FLOAT(0,{visibleIf:{castShadow:1},range:[0,10],rangeLocked:[!0,!1]}),this.volumetric=ha.FOLDER(),this.tvolumetric=ha.BOOLEAN(0),this.volAttenuation=ha.FLOAT(5,{range:[0,10],rangeLocked:[!0,!1]}),this.volAnglePower=ha.FLOAT(10,{range:[0,20],rangeLocked:[!0,!1]})}}const uG=new hG;class dG extends EU{constructor(){super(...arguments),this.paramsConfig=uG,this._helperController=new SU(this,oG,\\\\\\\"SpotLightHelper\\\\\\\"),this._volumetricController=new cG(this)}static type(){return GU.SPOT}initializeNode(){this._helperController.initializeNode()}createLight(){const t=new rG.a;return t.matrixAutoUpdate=!1,t.castShadow=!0,t.shadow.bias=-.001,t.shadow.mapSize.x=256,t.shadow.mapSize.y=256,t.shadow.camera.near=.1,this._target_target=t.target,this._target_target.name=\\\\\\\"SpotLight Default Target\\\\\\\",this._target_target.matrixAutoUpdate=!1,this.object.add(this._target_target),t}updateLightParams(){this.light.color=this.pv.color,this.light.intensity=this.pv.intensity,this.light.angle=this.pv.angle*(Math.PI/180),this.light.penumbra=this.pv.penumbra,this.light.decay=this.pv.decay,this.light.distance=this.pv.distance,this._helperController.update(),this._volumetricController.update()}updateShadowParams(){this.light.castShadow=this.pv.castShadow,this.light.shadow.autoUpdate=this.pv.shadowAutoUpdate,this.light.shadow.needsUpdate=this.pv.shadowUpdateOnNextRender,this.light.shadow.mapSize.copy(this.pv.shadowRes),this.light.shadow.camera.near=this.pv.shadowNear,this.light.shadow.camera.far=this.pv.shadowFar,this.light.shadow.bias=this.pv.shadowBias,this.light.shadow.radius=this.pv.shadowRadius}}let pG;const _G=function(){return void 0===pG&&(pG=new(window.AudioContext||window.webkitAudioContext)),pG},mG=new p.a,fG=new hh.a,gG=new p.a,vG=new p.a;class yG extends Q.a{constructor(){super(),this.type=\\\\\\\"AudioListener\\\\\\\",this.context=_G(),this.gain=this.context.createGain(),this.gain.connect(this.context.destination),this.filter=null,this.timeDelta=0,this._clock=new Dm}getInput(){return this.gain}removeFilter(){return null!==this.filter&&(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 null!==this.filter?(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);const e=this.context.listener,n=this.up;if(this.timeDelta=this._clock.getDelta(),this.matrixWorld.decompose(mG,fG,gG),vG.set(0,0,-1).applyQuaternion(fG),e.positionX){const t=this.context.currentTime+this.timeDelta;e.positionX.linearRampToValueAtTime(mG.x,t),e.positionY.linearRampToValueAtTime(mG.y,t),e.positionZ.linearRampToValueAtTime(mG.z,t),e.forwardX.linearRampToValueAtTime(vG.x,t),e.forwardY.linearRampToValueAtTime(vG.y,t),e.forwardZ.linearRampToValueAtTime(vG.z,t),e.upX.linearRampToValueAtTime(n.x,t),e.upY.linearRampToValueAtTime(n.y,t),e.upZ.linearRampToValueAtTime(n.z,t)}else e.setPosition(mG.x,mG.y,mG.z),e.setOrientation(vG.x,vG.y,vG.z,n.x,n.y,n.z)}}class xG extends(wU(ua)){constructor(){super(...arguments),this.audio=ha.FOLDER(),this.soundOn=ha.BOOLEAN(1),this.masterVolume=ha.FLOAT(1,{range:[0,1],rangeLocked:[!0,!1]})}}const bG=new xG;class wG extends cU{constructor(){super(...arguments),this.paramsConfig=bG,this.hierarchyController=new MU(this),this.transformController=new AU(this),this.flags=new Di(this)}static type(){return Ig.AUDIO_LISTENER}createObject(){const t=new yG;return t.matrixAutoUpdate=!1,t}initializeNode(){this.hierarchyController.initializeNode(),this.transformController.initializeNode(),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.soundOn],(()=>this.pv.soundOn?\\\\\\\"on\\\\\\\":\\\\\\\"off\\\\\\\"))}))}))}cook(){this.transformController.update(),this._updatePositionalAudio(),this.cookController.endCook()}_updatePositionalAudio(){const t=this.pv.soundOn?this.pv.masterVolume:0;this.object.setMasterVolume(t)}}class TG extends Ms.a{constructor(t=1){const e=[0,0,0,t,0,0,0,0,0,0,t,0,0,0,0,0,0,t],n=new S.a;n.setAttribute(\\\\\\\"position\\\\\\\",new C.c(e,3)),n.setAttribute(\\\\\\\"color\\\\\\\",new C.c([1,0,0,1,.6,0,0,1,0,.6,1,0,0,0,1,0,.6,1],3));super(n,new As.a({vertexColors:!0,toneMapped:!1})),this.type=\\\\\\\"AxesHelper\\\\\\\"}setColors(t,e,n){const i=new D.a,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()}}var AG;!function(t){t.TOGETHER=\\\\\\\"translate + rotate together\\\\\\\",t.SEPARATELY=\\\\\\\"translate + rotate separately\\\\\\\"}(AG||(AG={}));const MG=[AG.TOGETHER,AG.SEPARATELY];const EG=new class extends ua{constructor(){super(...arguments),this.object0=ha.OPERATOR_PATH(\\\\\\\"/geo1\\\\\\\",{nodeSelection:{context:ts.OBJ}}),this.object1=ha.OPERATOR_PATH(\\\\\\\"/geo2\\\\\\\",{nodeSelection:{context:ts.OBJ}}),this.mode=ha.INTEGER(MG.indexOf(AG.TOGETHER),{menu:{entries:MG.map(((t,e)=>({name:t,value:e})))}}),this.blend=ha.FLOAT(0,{visibleIf:{mode:MG.indexOf(AG.TOGETHER)},range:[0,1],rangeLocked:[!1,!1]}),this.blendT=ha.FLOAT(0,{visibleIf:{mode:MG.indexOf(AG.SEPARATELY)},range:[0,1],rangeLocked:[!1,!1]}),this.blendR=ha.FLOAT(0,{visibleIf:{mode:MG.indexOf(AG.SEPARATELY)},range:[0,1],rangeLocked:[!1,!1]})}};class SG extends cU{constructor(){super(...arguments),this.paramsConfig=EG,this.hierarchyController=new MU(this),this.flags=new Di(this),this._helper=new TG(1),this._t0=new p.a,this._q0=new hh.a,this._s0=new p.a,this._t1=new p.a,this._q1=new hh.a,this._s1=new p.a}static type(){return\\\\\\\"blend\\\\\\\"}createObject(){const t=new Fn.a;return t.matrixAutoUpdate=!1,t}initializeNode(){this.hierarchyController.initializeNode(),this.io.inputs.setCount(0),this.addPostDirtyHook(\\\\\\\"blend_on_dirty\\\\\\\",(()=>{this.cookController.cookMainWithoutInputs()})),this._updateHelperHierarchy(),this.flags.display.onUpdate((()=>{this._updateHelperHierarchy()}))}_updateHelperHierarchy(){this.flags.display.active()?this.object.add(this._helper):this.object.remove(this._helper)}cook(){const t=this.p.object0.found_node_with_context(ts.OBJ),e=this.p.object1.found_node_with_context(ts.OBJ);t&&e&&this._blend(t.object,e.object),this.cookController.endCook()}_blend(t,e){const n=MG[this.pv.mode];switch(n){case AG.TOGETHER:return this._blend_together(t,e);case AG.SEPARATELY:return this._blend_separately(t,e)}os.unreachable(n)}_blend_together(t,e){this._decompose_matrices(t,e),this._object.position.copy(this._t0).lerp(this._t1,this.pv.blend),this._object.quaternion.copy(this._q0).slerp(this._q1,this.pv.blend),this._object.matrixAutoUpdate||this._object.updateMatrix()}_blend_separately(t,e){this._decompose_matrices(t,e),this._object.position.copy(this._t0).lerp(this._t1,this.pv.blendT),this._object.quaternion.copy(this._q0).slerp(this._q1,this.pv.blendR),this._object.matrixAutoUpdate||this._object.updateMatrix()}_decompose_matrices(t,e){t.matrixWorld.decompose(this._t0,this._q0,this._s0),e.matrixWorld.decompose(this._t1,this._q1,this._s1)}}var CG={uniforms:{tDiffuse:{value:null},h:{value: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\\\\n\\\\t\\\\tuniform sampler2D tDiffuse;\\\\n\\\\t\\\\tuniform float h;\\\\n\\\\n\\\\t\\\\tvarying vec2 vUv;\\\\n\\\\n\\\\t\\\\tvoid main() {\\\\n\\\\n\\\\t\\\\t\\\\tvec4 sum = vec4( 0.0 );\\\\n\\\\n\\\\t\\\\t\\\\tsum += texture2D( tDiffuse, vec2( vUv.x - 4.0 * h, vUv.y ) ) * 0.051;\\\\n\\\\t\\\\t\\\\tsum += texture2D( tDiffuse, vec2( vUv.x - 3.0 * h, vUv.y ) ) * 0.0918;\\\\n\\\\t\\\\t\\\\tsum += texture2D( tDiffuse, vec2( vUv.x - 2.0 * h, vUv.y ) ) * 0.12245;\\\\n\\\\t\\\\t\\\\tsum += texture2D( tDiffuse, vec2( vUv.x - 1.0 * h, vUv.y ) ) * 0.1531;\\\\n\\\\t\\\\t\\\\tsum += texture2D( tDiffuse, vec2( vUv.x, vUv.y ) ) * 0.1633;\\\\n\\\\t\\\\t\\\\tsum += texture2D( tDiffuse, vec2( vUv.x + 1.0 * h, vUv.y ) ) * 0.1531;\\\\n\\\\t\\\\t\\\\tsum += texture2D( tDiffuse, vec2( vUv.x + 2.0 * h, vUv.y ) ) * 0.12245;\\\\n\\\\t\\\\t\\\\tsum += texture2D( tDiffuse, vec2( vUv.x + 3.0 * h, vUv.y ) ) * 0.0918;\\\\n\\\\t\\\\t\\\\tsum += texture2D( tDiffuse, vec2( vUv.x + 4.0 * h, vUv.y ) ) * 0.051;\\\\n\\\\n\\\\t\\\\t\\\\tgl_FragColor = sum;\\\\n\\\\n\\\\t\\\\t}\\\\\\\"};const NG={uniforms:{tDiffuse:{value:null},v:{value: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\\\\n\\\\t\\\\tuniform sampler2D tDiffuse;\\\\n\\\\t\\\\tuniform float v;\\\\n\\\\n\\\\t\\\\tvarying vec2 vUv;\\\\n\\\\n\\\\t\\\\tvoid main() {\\\\n\\\\n\\\\t\\\\t\\\\tvec4 sum = vec4( 0.0 );\\\\n\\\\n\\\\t\\\\t\\\\tsum += texture2D( tDiffuse, vec2( vUv.x, vUv.y - 4.0 * v ) ) * 0.051;\\\\n\\\\t\\\\t\\\\tsum += texture2D( tDiffuse, vec2( vUv.x, vUv.y - 3.0 * v ) ) * 0.0918;\\\\n\\\\t\\\\t\\\\tsum += texture2D( tDiffuse, vec2( vUv.x, vUv.y - 2.0 * v ) ) * 0.12245;\\\\n\\\\t\\\\t\\\\tsum += texture2D( tDiffuse, vec2( vUv.x, vUv.y - 1.0 * v ) ) * 0.1531;\\\\n\\\\t\\\\t\\\\tsum += texture2D( tDiffuse, vec2( vUv.x, vUv.y ) ) * 0.1633;\\\\n\\\\t\\\\t\\\\tsum += texture2D( tDiffuse, vec2( vUv.x, vUv.y + 1.0 * v ) ) * 0.1531;\\\\n\\\\t\\\\t\\\\tsum += texture2D( tDiffuse, vec2( vUv.x, vUv.y + 2.0 * v ) ) * 0.12245;\\\\n\\\\t\\\\t\\\\tsum += texture2D( tDiffuse, vec2( vUv.x, vUv.y + 3.0 * v ) ) * 0.0918;\\\\n\\\\t\\\\t\\\\tsum += texture2D( tDiffuse, vec2( vUv.x, vUv.y + 4.0 * v ) ) * 0.051;\\\\n\\\\n\\\\t\\\\t\\\\tgl_FragColor = sum;\\\\n\\\\n\\\\t\\\\t}\\\\\\\"},LG=1/256e3;class OG{constructor(t){this._renderTargetBlur=this._createRenderTarget(t),this._camera=this._createCamera(),this._blurPlane=this._createBlurPlane(),this._horizontalBlurMaterial=new F(CG),this._horizontalBlurMaterial.depthTest=!1,this._verticalBlurMaterial=new F(NG),this._verticalBlurMaterial.depthTest=!1}setSize(t,e){this._renderTargetBlur.setSize(t,e)}_createRenderTarget(t){const e=new K(t.x,t.y);return e.texture.generateMipmaps=!1,e}_createCamera(){const t=new ot.a(-.5,.5,.5,-.5,0,1);return t.position.z=.5,t}_createBlurPlane(){const t=new L(1,1);return new B.a(t)}applyBlur(t,e,n,i){const s=Math.max(this._renderTargetBlur.width,this._renderTargetBlur.height);this._horizontalBlurMaterial.uniforms.tDiffuse.value=t.texture,this._horizontalBlurMaterial.uniforms.h.value=n*s*LG,this._blurPlane.material=this._horizontalBlurMaterial,e.setRenderTarget(this._renderTargetBlur),e.render(this._blurPlane,this._camera),this._verticalBlurMaterial.uniforms.tDiffuse.value=this._renderTargetBlur.texture,this._verticalBlurMaterial.uniforms.v.value=i*s*LG,this._blurPlane.material=this._verticalBlurMaterial,e.setRenderTarget(t),e.render(this._blurPlane,this._camera)}}var PG;!function(t){t.ON_RENDER=\\\\\\\"On Every Render\\\\\\\",t.MANUAL=\\\\\\\"Manual\\\\\\\"}(PG||(PG={}));const RG=[PG.ON_RENDER,PG.MANUAL];class IG extends(wU(ua)){constructor(){super(...arguments),this.shadow=ha.FOLDER(),this.dist=ha.FLOAT(1,{range:[0,10],rangeLocked:[!0,!1]}),this.planeSize=ha.VECTOR2([1,1]),this.shadowRes=ha.VECTOR2([256,256]),this.blur=ha.FLOAT(1,{range:[0,10],rangeLocked:[!0,!1]}),this.tblur2=ha.BOOLEAN(1),this.blur2=ha.FLOAT(1,{range:[0,10],rangeLocked:[!0,!1],visibleIf:{tblur2:1}}),this.darkness=ha.FLOAT(1),this.opacity=ha.FLOAT(1),this.showHelper=ha.BOOLEAN(0),this.updateMode=ha.INTEGER(RG.indexOf(PG.ON_RENDER),{callback:t=>{BG.PARAM_CALLBACK_update_updateMode(t)},menu:{entries:RG.map(((t,e)=>({name:t,value:e})))}}),this.update=ha.BUTTON(null,{callback:t=>{BG.PARAM_CALLBACK_updateManual(t)},visibleIf:{updateMode:RG.indexOf(PG.MANUAL)}}),this.scene=ha.FOLDER(),this.include=ha.STRING(\\\\\\\"\\\\\\\"),this.exclude=ha.STRING(\\\\\\\"\\\\\\\"),this.updateObjectsList=ha.BUTTON(null,{callback:t=>{BG.PARAM_CALLBACK_updateObjectsList(t)}}),this.printResolveObjectsList=ha.BUTTON(null,{callback:t=>{BG.PARAM_CALLBACK_printResolveObjectsList(t)}})}}const FG=new IG,DG=new d.a(256,256);class BG extends cU{constructor(){super(...arguments),this.paramsConfig=FG,this.hierarchyController=new MU(this),this.flags=new Di(this),this._renderTarget=this._createRenderTarget(DG),this._coreRenderBlur=this._createCoreRenderBlur(DG),this._includedObjects=[],this._includedAncestors=[],this._excludedObjects=[],this.transformController=new AU(this),this._darknessUniform={value:1},this._emptyOnBeforeRender=()=>{},this._emptyRenderHook=()=>{},this._on_object_before_render_bound=this._update.bind(this),this._initialVisibilityState=new WeakMap}static type(){return\\\\\\\"contactShadow\\\\\\\"}_createRenderTarget(t){const e=new K(t.x,t.y);return e.texture.generateMipmaps=!1,e}_createCoreRenderBlur(t){return new OG(t)}createObject(){const t=new Fn.a;this._shadowGroup=new Fn.a,t.add(this._shadowGroup),this._shadowGroup.name=\\\\\\\"shadowGroup\\\\\\\";const e=new L(1,1).rotateX(-Math.PI/2),n=e.getAttribute(\\\\\\\"uv\\\\\\\").array;for(let t of[1,3,5,7])n[t]=1-n[t];return this._planeMaterial=new lt.a({map:this._renderTarget.texture,opacity:1,transparent:!0,depthWrite:!1}),this._plane=new B.a(e,this._planeMaterial),this._plane.renderOrder=1,this._plane.matrixAutoUpdate=!1,this._shadowGroup.add(this._plane),this._createDepthCamera(this._shadowGroup),this._createMaterials(),t}initializeNode(){this.hierarchyController.initializeNode(),this.transformController.initializeNode(),this._updateShadowGroupVisibility(),this._updateHelperVisibility(),this.flags.display.onUpdate((()=>{this._updateShadowGroupVisibility(),this._updateHelperVisibility()}))}async cook(){this.transformController.update(),this._updateRenderHook(),this._updateHelperVisibility(),this._updateObjectsList(),this._planeMaterial&&(this._planeMaterial.opacity=this.pv.opacity),this._darknessUniform.value=this.pv.darkness,this._plane&&this._shadowCamera&&this._helper&&(this._plane.scale.x=this.pv.planeSize.x,this._plane.scale.z=this.pv.planeSize.y,this._plane.updateMatrix(),this._shadowCamera.left=-this.pv.planeSize.x/2,this._shadowCamera.right=this.pv.planeSize.x/2,this._shadowCamera.bottom=-this.pv.planeSize.y/2,this._shadowCamera.top=this.pv.planeSize.y/2,this._shadowCamera.far=this.pv.dist,this._shadowCamera.updateProjectionMatrix(),this._helper.update()),this._renderTarget.width==this.pv.shadowRes.x&&this._renderTarget.height==this.pv.shadowRes.y||this._planeMaterial&&(this._renderTarget=this._createRenderTarget(this.pv.shadowRes),this._coreRenderBlur=this._createCoreRenderBlur(this.pv.shadowRes),this._planeMaterial.map=this._renderTarget.texture),this.cookController.endCook()}_createDepthCamera(t){this._shadowCamera=new ot.a(-.5,.5,.5,-.5,0,1),this._shadowCamera.rotation.x=Math.PI/2,t.add(this._shadowCamera),this._helper=new zU(this._shadowCamera),this._helper.visible=!1,this._shadowCamera.add(this._helper)}_createMaterials(){this._depthMaterial=new Sn,this._depthMaterial.onBeforeCompile=t=>{t.uniforms.darkness=this._darknessUniform,t.fragmentShader=`\\\\n\\\\t\\\\t\\\\tuniform float darkness;\\\\n\\\\t\\\\t\\\\t${t.fragmentShader.replace(\\\\\\\"gl_FragColor = vec4( vec3( 1.0 - fragCoordZ ), opacity );\\\\\\\",\\\\\\\"gl_FragColor = vec4( vec3( 0.0 ), ( 1.0 - fragCoordZ ) * darkness );\\\\\\\")}\\\\n\\\\t\\\\t`},this._depthMaterial.depthTest=!1,this._depthMaterial.depthWrite=!1}_renderShadow(t,e){if(!this._helper)return;if(!this._depthMaterial)return;if(!this._shadowCamera)return;if(!this._helper)return;if(!this._plane)return;const n=this._plane.onBeforeRender,i=e.background,s=this._helper.visible;e.background=null,this._plane.onBeforeRender=this._emptyOnBeforeRender,this._helper.visible=!1,e.overrideMaterial=this._depthMaterial,this._initVisibility(e),t.setRenderTarget(this._renderTarget),t.render(e,this._shadowCamera),this._coreRenderBlur.applyBlur(this._renderTarget,t,this.pv.blur,this.pv.blur),this.pv.tblur2&&this._coreRenderBlur.applyBlur(this._renderTarget,t,this.pv.blur2,this.pv.blur2),this._restoreVisibility(e),e.overrideMaterial=null,this._helper.visible=s,t.setRenderTarget(null),e.background=i,this._plane.onBeforeRender=n}_updateShadowGroupVisibility(){this._shadowGroup&&(this.flags.display.active()?this._shadowGroup.visible=!0:this._shadowGroup.visible=!1)}_updateHelperVisibility(){this._helper&&(this.flags.display.active()&&this.pv.showHelper?this._helper.visible=!0:this._helper.visible=!1)}_updateRenderHook(){const t=RG[this.pv.updateMode];switch(t){case PG.ON_RENDER:return this._addRenderHook();case PG.MANUAL:return this._removeRenderHook()}os.unreachable(t)}_addRenderHook(){this._plane&&this._plane.onBeforeRender!=this._on_object_before_render_bound&&(this._plane.onBeforeRender=this._on_object_before_render_bound)}_removeRenderHook(){this._plane&&this._plane.onBeforeRender!=this._emptyRenderHook&&(this._plane.onBeforeRender=this._emptyRenderHook)}_update(t,e,n,i,s,r){t&&e?this._renderShadow(t,e):console.log(\\\\\\\"no renderer or scene\\\\\\\")}_updateManual(){const t=li.renderersController.firstRenderer();if(!t)return void console.log(\\\\\\\"no renderer found\\\\\\\");const e=this.scene().threejsScene();this._renderShadow(t,e)}static PARAM_CALLBACK_update_updateMode(t){t._updateRenderHook()}static PARAM_CALLBACK_updateManual(t){t._updateManual()}static PARAM_CALLBACK_updateObjectsList(t){t._updateObjectsList()}_updateObjectsList(){\\\\\\\"\\\\\\\"!=this.pv.include?this._includedObjects=this.scene().objectsByMask(this.pv.include):this._includedObjects=[];const t=new Map;for(let e of this._includedObjects)e.traverseAncestors((e=>{t.set(e.uuid,e)}));this._includedAncestors=[],t.forEach(((t,e)=>{this._includedAncestors.push(t)})),\\\\\\\"\\\\\\\"!=this.pv.exclude?this._excludedObjects=this.scene().objectsByMask(this.pv.exclude):this._excludedObjects=[]}static PARAM_CALLBACK_printResolveObjectsList(t){t._printResolveObjectsList()}_printResolveObjectsList(){console.log(\\\\\\\"included objects:\\\\\\\"),console.log(this._includedObjects),console.log(\\\\\\\"included parents:\\\\\\\"),console.log(this._includedAncestors),console.log(\\\\\\\"excluded objects:\\\\\\\"),console.log(this._excludedObjects)}_initVisibility(t){this._includedObjects.length>0?t.traverse((t=>{this._initialVisibilityState.set(t,t.visible),t.visible=!1})):(this._storeObjectsVisibility(this._includedObjects),this._storeObjectsVisibility(this._includedAncestors),this._storeObjectsVisibility(this._excludedObjects)),this._setObjectsVisibility(this._includedObjects,!0),this._setObjectsVisibility(this._includedAncestors,!0),this._setObjectsVisibility(this._excludedObjects,!1)}_storeObjectsVisibility(t){for(let e of t)this._initialVisibilityState.set(e,e.visible)}_setObjectsVisibility(t,e){for(let n of t)n.visible=e}_restoreVisibility(t){this._includedObjects.length>0?t.traverse((t=>{const e=this._initialVisibilityState.get(t);e&&(t.visible=e)})):(this._restoreObjectsVisibility(this._includedObjects),this._restoreObjectsVisibility(this._includedAncestors),this._restoreObjectsVisibility(this._excludedObjects))}_restoreObjectsVisibility(t){for(let e of t){const t=this._initialVisibilityState.get(e);t&&(e.visible=t)}}}const zG=\\\\\\\"display\\\\\\\";class kG{constructor(t){this.node=t,this._children_uuids_dict=new Map,this._children_length=0,this._sop_group=this._create_sop_group()}_create_sop_group(){const t=new Fn.a;return t.matrixAutoUpdate=!1,t}sopGroup(){return this._sop_group}set_sop_group_name(){this._sop_group.name=`${this.node.name()}:sop_group`}displayNodeControllerCallbacks(){return{onDisplayNodeRemove:()=>{this.remove_children()},onDisplayNodeSet:()=>{setTimeout((()=>{this.request_display_node_container()}),0)},onDisplayNodeUpdate:()=>{this.request_display_node_container()}}}initializeNode(){var t;this.node.object.add(this.sopGroup()),this.node.nameController.add_post_set_fullPath_hook(this.set_sop_group_name.bind(this)),this._create_sop_group();const e=null===(t=this.node.flags)||void 0===t?void 0:t.display;e&&e.onUpdate((()=>{this._updateSopGroupHierarchy(),e.active()&&this.request_display_node_container()}))}_updateSopGroupHierarchy(){var t;if(null===(t=this.node.flags)||void 0===t?void 0:t.display){const t=this.sopGroup();this.usedInScene()?(t.visible=!0,this.node.object.add(t),t.updateMatrix()):(t.visible=!1,this.node.object.remove(t))}}usedInScene(){var t,e;const n=this.node.params.has(zG),i=this.node.params.boolean(zG),s=this.node.usedInScene(),r=(null===(e=null===(t=this.node.flags)||void 0===t?void 0:t.display)||void 0===e?void 0:e.active())||!1;return s&&r&&(!n||i)}async request_display_node_container(){this.node.scene().loadingController.loaded()&&this.usedInScene()&&await this._set_content_under_sop_group()}remove_children(){if(0==this._sop_group.children.length)return;let t;for(;t=this._sop_group.children[0];)this._sop_group.remove(t);this._children_uuids_dict.clear(),this._children_length=0}async _set_content_under_sop_group(){var t;const e=this.node.displayNodeController.displayNode();if(e&&(null===(t=e.parent())||void 0===t?void 0:t.graphNodeId())==this.node.graphNodeId()){const t=(await e.compute()).coreContent();if(t){const e=t.objects();let n=e.length!=this._children_length;if(!n)for(let t of e)this._children_uuids_dict.get(t.uuid)||(n=!0);if(n){this.remove_children();for(let t of e)this._sop_group.add(t),t.updateMatrix(),this._children_uuids_dict.set(t.uuid,!0);this._children_length=e.length}return}}this.remove_children()}}class UG extends(wU(ua)){constructor(){super(...arguments),this.display=ha.BOOLEAN(1),this.renderOrder=ha.INTEGER(0,{range:[0,10],rangeLocked:[!0,!1]})}}const GG=new UG;class VG extends cU{constructor(){super(...arguments),this.paramsConfig=GG,this.hierarchyController=new MU(this),this.transformController=new AU(this),this.flags=new Di(this),this.childrenDisplayController=new kG(this),this.displayNodeController=new Fm(this,this.childrenDisplayController.displayNodeControllerCallbacks()),this._children_controller_context=ts.SOP,this._onChildAddBound=this._onChildAdd.bind(this)}static type(){return Ig.GEO}createObject(){const t=new Fn.a;return t.matrixAutoUpdate=!1,t}initializeNode(){this.lifecycle.add_on_child_add_hook(this._onChildAddBound),this.hierarchyController.initializeNode(),this.transformController.initializeNode(),this.childrenDisplayController.initializeNode()}isDisplayNodeCooking(){if(this.flags.display.active()){const t=this.displayNodeController.displayNode();return!!t&&t.isDirty()}return!1}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}_onChildAdd(t){var e,n;this.scene().loadingController.loaded()&&1==this.children().length&&(null===(n=null===(e=t.flags)||void 0===e?void 0:e.display)||void 0===n||n.set(!0))}cook(){this.transformController.update(),this.object.visible=this.pv.display,this.object.renderOrder=this.pv.renderOrder,this.cookController.endCook()}}class HG extends(wU(ua)){}const jG=new HG;class WG extends cU{constructor(){super(...arguments),this.paramsConfig=jG,this.hierarchyController=new MU(this),this.transformController=new AU(this),this.flags=new Di(this),this._helper=new TG(1)}static type(){return\\\\\\\"null\\\\\\\"}createObject(){const t=new Fn.a;return t.matrixAutoUpdate=!1,t}initializeNode(){this.hierarchyController.initializeNode(),this.transformController.initializeNode(),this._updateHelperHierarchy(),this._helper.matrixAutoUpdate=!1,this.flags.display.onUpdate((()=>{this._updateHelperHierarchy()}))}_updateHelperHierarchy(){this.flags.display.active()?(this.object.add(this._helper),this._helper.updateMatrix()):this.object.remove(this._helper)}cook(){this.transformController.update(),this.cookController.endCook()}}const qG=new class extends ua{constructor(){super(...arguments),this.center=ha.VECTOR3([0,0,0]),this.longitude=ha.FLOAT(0,{range:[0,360]}),this.latitude=ha.FLOAT(0,{range:[-180,180]}),this.depth=ha.FLOAT(1,{range:[0,10]})}},XG=\\\\\\\"_cook_main_without_inputs_when_dirty\\\\\\\",YG=new p.a(0,1,0),$G=new p.a(-1,0,0);class JG extends cU{constructor(){super(...arguments),this.paramsConfig=qG,this.hierarchyController=new MU(this),this.flags=new Di(this),this._helper=new TG(1),this._cook_main_without_inputs_when_dirty_bound=this._cook_main_without_inputs_when_dirty.bind(this),this._centerMatrix=new A.a,this._longitudeMatrix=new A.a,this._latitudeMatrix=new A.a,this._depthMatrix=new A.a,this._fullMatrix=new A.a,this._decomposed={t:new p.a,q:new hh.a,s:new p.a}}static type(){return\\\\\\\"polarTransform\\\\\\\"}createObject(){const t=new Fn.a;return t.matrixAutoUpdate=!1,t}initializeNode(){this.hierarchyController.initializeNode(),this.dirtyController.hasHook(XG)||this.dirtyController.addPostDirtyHook(XG,this._cook_main_without_inputs_when_dirty_bound),this._updateHelperHierarchy(),this._helper.matrixAutoUpdate=!1,this.flags.display.onUpdate((()=>{this._updateHelperHierarchy()}))}_updateHelperHierarchy(){this.flags.display.active()?(this.object.add(this._helper),this._helper.updateMatrix()):this.object.remove(this._helper)}async _cook_main_without_inputs_when_dirty(){await this.cookController.cookMainWithoutInputs()}cook(){const t=this.object;this._centerMatrix.identity(),this._longitudeMatrix.identity(),this._latitudeMatrix.identity(),this._depthMatrix.identity(),this._centerMatrix.makeTranslation(this.pv.center.x,this.pv.center.y,this.pv.center.z),this._longitudeMatrix.makeRotationAxis(YG,Object(On.e)(this.pv.longitude)),this._latitudeMatrix.makeRotationAxis($G,Object(On.e)(this.pv.latitude)),this._depthMatrix.makeTranslation(0,0,this.pv.depth),this._fullMatrix.copy(this._centerMatrix).multiply(this._longitudeMatrix).multiply(this._latitudeMatrix).multiply(this._depthMatrix),this._fullMatrix.decompose(this._decomposed.t,this._decomposed.q,this._decomposed.s),t.position.copy(this._decomposed.t),t.quaternion.copy(this._decomposed.q),t.scale.copy(this._decomposed.s),t.updateMatrix(),this.cookController.endCook()}}class ZG{constructor(t){this._scene=t,this._data={}}data(t){this._scene.nodesController.reset_node_context_signatures();const e=rV.dispatch_node(this._scene.root()),n=e.data(),i=e.ui_data();return this._data={properties:{frame:this._scene.frame()||Nl.START_FRAME,maxFrame:this._scene.maxFrame(),maxFrameLocked:this._scene.timeController.maxFrameLocked(),realtimeState:this._scene.timeController.realtimeState(),mainCameraNodePath:this._scene.camerasController.mainCameraNodePath(),versions:t},root:n,ui:i},this._data}static sanitize_string(t){return t=t.replace(/'/g,\\\\\\\"'\\\\\\\"),t=ss.escapeLineBreaks(t)}}class KG{constructor(t){this._node=t}data(t={}){var e,n,i,s,r,o,a;this.is_root()||this._node.scene().nodesController.register_node_context_signature(this._node),this._data={type:this._node.type()};const l=this.nodes_data(t);Object.keys(l).length>0&&(this._data.nodes=l);const c=this.params_data();if(Object.keys(c).length>0&&(this._data.params=c),!this.is_root()){this._node.io.inputs.maxInputsCountOverriden()&&(this._data.maxInputsCount=this._node.io.inputs.maxInputsCount());const t=this.inputs_data();t.length>0&&(this._data.inputs=t);const e=this.connection_points_data();e&&(this._data.connection_points=e)}if(this._node.flags){const t={};(this._node.flags.hasBypass()||this._node.flags.hasDisplay()||this._node.flags.hasOptimize())&&(this._node.flags.hasBypass()&&(null===(e=this._node.flags.bypass)||void 0===e?void 0:e.active())&&(t.bypass=this._node.flags.bypass.active()),this._node.flags.hasDisplay()&&(!(null===(n=this._node.flags.display)||void 0===n?void 0:n.active())&&(null===(i=this._node.parent())||void 0===i?void 0:i.displayNodeController)||(t.display=null===(s=this._node.flags.display)||void 0===s?void 0:s.active())),this._node.flags.hasOptimize()&&(null===(r=this._node.flags.optimize)||void 0===r?void 0:r.active())&&(t.optimize=null===(o=this._node.flags.optimize)||void 0===o?void 0:o.active())),Object.keys(t).length>0&&(this._data.flags=t)}if(this._node.childrenAllowed()){const t=null===(a=this._node.childrenController)||void 0===a?void 0:a.selection;if(t&&this._node.children().length>0){const e=[],n={};for(let e of t.nodes())n[e.graphNodeId()]=!0;for(let t of this._node.children())t.graphNodeId()in n&&e.push(t);const i=e.map((t=>t.name()));i.length>0&&(this._data.selection=i)}}if(this._node.io.inputs.overrideClonedStateAllowed()){const t=this._node.io.inputs.clonedStateOverriden();t&&(this._data.cloned_state_overriden=t)}if(this._node.persisted_config){const t=this._node.persisted_config.toJSON();t&&(this._data.persisted_config=t)}return this.add_custom(),this._data}ui_data(t={}){const e=this.ui_data_without_children(),n=this._node.children();return n.length>0&&(e.nodes={},n.forEach((n=>{const i=rV.dispatch_node(n);e.nodes[n.name()]=i.ui_data(t)}))),e}ui_data_without_children(){const t={};if(!this.is_root()){const e=this._node.uiData;t.pos=e.position().toArray();const n=e.comment();n&&(t.comment=ZG.sanitize_string(n))}return t}is_root(){return null===this._node.parent()&&this._node.graphNodeId()==this._node.root().graphNodeId()}inputs_data(){const t=[];return this._node.io.inputs.inputs().forEach(((e,n)=>{var i;if(e){const s=this._node.io.connections.inputConnection(n);if(this._node.io.inputs.hasNamedInputs()){const r=s.output_index,o=null===(i=e.io.outputs.namedOutputConnectionPoints()[r])||void 0===i?void 0:i.name();o&&(t[n]={index:n,node:e.name(),output:o})}else t[n]=e.name()}})),t}connection_points_data(){if(this._node.io.has_connection_points_controller&&this._node.io.connection_points.initialized()&&(this._node.io.inputs.hasNamedInputs()||this._node.io.outputs.hasNamedOutputs())){const t={};if(this._node.io.inputs.hasNamedInputs()){t.in=[];for(let e of this._node.io.inputs.namedInputConnectionPoints())e&&t.in.push(e.toJSON())}if(this._node.io.outputs.hasNamedOutputs()){t.out=[];for(let e of this._node.io.outputs.namedOutputConnectionPoints())e&&t.out.push(e.toJSON())}return t}}params_data(){const t={};for(let e of this._node.params.names){const n=this._node.params.get(e);if(n&&!n.parent_param){const e=rV.dispatch_param(n);if(e.required()){const i=e.data();t[n.name()]=i}}}return t}nodes_data(t={}){const e={};for(let n of this._node.children()){const i=rV.dispatch_node(n);e[n.name()]=i.data(t)}return e}add_custom(){}}class QG{constructor(t){this._param=t,this._complex_data={}}required(){const t=this._param.options.isSpare()&&!this._param.parent_param,e=!this._param.isDefault();return t||e||this._param.options.hasOptionsOverridden()}data(){if(this._param.parent_param)throw console.warn(\\\\\\\"no component should be saved\\\\\\\"),\\\\\\\"no component should be saved\\\\\\\";return this._require_data_complex()?this._data_complex():this._data_simple()}_data_simple(){return this._param.rawInputSerialized()}_data_complex(){if(this._complex_data={},this._param.options.isSpare()&&!this._param.parent_param&&(this._complex_data.type=this._param.type(),this._complex_data.default_value=this._param.defaultValueSerialized(),this._complex_data.options=this._param.options.current()),this._param.isDefault()||(this._complex_data.raw_input=this._param.rawInputSerialized()),this._param.options.hasOptionsOverridden()){const t={},e=this._param.options.overriddenOptions();for(let n of Object.keys(e)){const i=e[n];m.isString(i)||m.isNumber(i)?t[n]=i:t[n]=JSON.stringify(i)}this._complex_data.overriden_options=t}return this._complex_data}_require_data_complex(){return!!this._param.options.isSpare()||!!this._param.options.hasOptionsOverridden()}add_main(){}}class tV extends QG{add_main(){if(!this._require_data_complex())return this._param.rawInputSerialized();this._complex_data.raw_input=this._param.rawInputSerialized()}}class eV extends QG{add_main(){let t=this._param.rawInput();if(t=ZG.sanitize_string(t),!this._require_data_complex())return t;this._complex_data.raw_input=t}}class nV extends QG{add_main(){let t=this._param.rawInput();if(t=ZG.sanitize_string(t),!this._require_data_complex())return t;this._complex_data.raw_input=t}}class iV extends QG{add_main(){if(!this._require_data_complex())return this._param.rawInputSerialized();this._complex_data.raw_input=this._param.rawInputSerialized()}}class sV extends KG{nodes_data(t={}){return t.showPolyNodesData?super.nodes_data(t):{}}ui_data(t={}){return t.showPolyNodesData?super.ui_data(t):this.ui_data_without_children()}}class rV{static dispatch_node(t){return t.polyNodeController?new sV(t):new KG(t)}static dispatch_param(t){return t instanceof ro?new tV(t):t instanceof fo?new eV(t):t instanceof Mo?new nV(t):t instanceof Ao?new iV(t):new QG(t)}}class oV{constructor(){this._objects=[],this._objects_with_geo=[],this.touch()}timestamp(){return this._timestamp}touch(){const t=li.performance.performanceManager();this._timestamp=t.now(),this.reset()}reset(){this._bounding_box=void 0,this._core_geometries=void 0,this._core_objects=void 0}clone(){const t=new oV;if(this._objects){const e=[];for(let t of this._objects)e.push(br.clone(t));t.setObjects(e)}return t}setObjects(t){this._objects=t,this._objects_with_geo=t.filter((t=>null!=t.geometry)),this.touch()}objects(){return this._objects}objectsWithGeo(){return this._objects_with_geo}coreObjects(){return this._core_objects=this._core_objects||this._create_core_objects()}_create_core_objects(){return this._objects?this._objects.map(((t,e)=>new br(t,e))):[]}objectsData(){return this._objects?this._objects.map((t=>this._objectData(t))):[]}_objectData(t){let e=0;return t.geometry&&(e=fr.pointsCount(t.geometry)),{type:Os(t.constructor),name:t.name,children_count:t.children.length,points_count:e}}geometries(){const t=[];for(let e of this.coreObjects()){const n=e.object().geometry;n&&t.push(n)}return t}coreGeometries(){return this._core_geometries=this._core_geometries||this._createCoreGeometries()}_createCoreGeometries(){const t=[];for(let e of this.geometries())t.push(new fr(e));return t}static geometryFromObject(t){return t.isMesh||t.isLine||t.isPoints?t.geometry:null}faces(){const t=[];for(let e of this.objectsWithGeo())if(e.geometry){const n=new fr(e.geometry).faces();for(let i of n)i.applyMatrix4(e.matrix),t.push(i)}return t}points(){return this.coreGeometries().map((t=>t.points())).flat()}pointsCount(){return f.sum(this.coreGeometries().map((t=>t.pointsCount())))}totalPointsCount(){if(this._objects){let t=0;for(let e of this._objects)e.traverse((e=>{const n=e.geometry;n&&(t+=fr.pointsCount(n))}));return t}return 0}pointsFromGroup(t){if(t){const e=ss.indices(t),n=this.points();return f.compact(e.map((t=>n[t])))}return this.points()}static _fromObjects(t){const e=new oV;return e.setObjects(t),e}objectsFromGroup(t){return this.coreObjectsFromGroup(t).map((t=>t.object()))}coreObjectsFromGroup(t){if(\\\\\\\"\\\\\\\"!==(t=t.trim())){const e=parseInt(t);return m.isNaN(e)?this.coreObjects().filter((e=>ss.matchMask(t,e.name()))):f.compact([this.coreObjects()[e]])}return this.coreObjects()}boundingBox(t=!1){return this._bounding_box=t?this._computeBoundingBox():this._bounding_box||this._computeBoundingBox()}center(){const t=new p.a;return this.boundingBox().getCenter(t),t}size(){const t=new p.a;return this.boundingBox().getSize(t),t}_computeBoundingBox(){let t;if(this._objects)for(let e of this._objects){const n=e.geometry;n&&(n.computeBoundingBox(),t?t.expandByObject(e):n.boundingBox&&(t=n.boundingBox.clone()))}return t=t||new Ry.a(new p.a(-1,-1,-1),new p.a(1,1,1)),t}computeVertexNormals(){for(let t of this.coreObjects())t.computeVertexNormals()}hasAttrib(t){let e;return null!=(e=this.coreGeometries()[0])&&e.hasAttrib(t)}attribType(t){const e=this.coreGeometries()[0];return null!=e?e.attribType(t):null}objectAttribType(t){const e=this.coreObjects()[0];return null!=e?e.attribType(t):null}renameAttrib(t,e,n){switch(n){case js.ATTRIB_CLASS.VERTEX:if(this.hasAttrib(t)&&this._objects)for(let n of this._objects)n.traverse((n=>{const i=oV.geometryFromObject(n);if(i){new fr(i).renameAttrib(t,e)}}));break;case js.ATTRIB_CLASS.OBJECT:if(this.hasAttrib(t)&&this._objects)for(let n of this._objects)n.traverse((n=>{new br(n,0).renameAttrib(t,e)}))}}attribNames(){let t;return null!=(t=this.coreGeometries()[0])?t.attribNames():[]}objectAttribNames(){let t;return null!=(t=this.coreObjects()[0])?t.attribNames():[]}attribNamesMatchingMask(t){const e=ss.attribNames(t),n=[];for(let t of this.attribNames())for(let i of e)if(ss.matchMask(t,i))n.push(t);else{t==Xs.remapName(i)&&n.push(t)}return f.uniq(n)}attribSizes(){let t;return null!=(t=this.coreGeometries()[0])?t.attribSizes():{}}objectAttribSizes(){let t;return null!=(t=this.coreObjects()[0])?t.attribSizes():{}}attribSize(t){let e;return null!=(e=this.coreGeometries()[0])?e.attribSize(t):0}addNumericVertexAttrib(t,e,n){null==n&&(n=Xs.default_value(e));for(let i of this.coreGeometries())i.addNumericAttrib(t,e,n)}static clone(t){const e=new Fn.a;return t.children.forEach((t=>{const n=br.clone(t);e.add(n)})),e}}class aV extends zl{static context(){return ts.SOP}cook(t,e){}createCoreGroupFromObjects(t){const e=new oV;return e.setObjects(t),e}createCoreGroupFromGeometry(t,e=Ns.MESH){const n=aV.createObject(t,e);return this.createCoreGroupFromObjects([n])}createObject(t,e,n){return aV.createObject(t,e,n)}static createObject(t,e,n){this.createIndexIfNone(t);const i=new(0,Ls[e])(t,n=n||js.MATERIALS[e].clone());return i.castShadow=!0,i.receiveShadow=!0,i.frustumCulled=!1,i.matrixAutoUpdate=!1,i}createIndexIfNone(t){aV.createIndexIfNone(t)}static createIndexIfNone(t){pr.createIndexIfNone(t)}}var lV;!function(t){t.FROM_SET_CORE_GROUP=\\\\\\\"from set_core_group\\\\\\\",t.FROM_SET_GROUP=\\\\\\\"from set_group\\\\\\\",t.FROM_SET_OBJECTS=\\\\\\\"from set_objects\\\\\\\",t.FROM_SET_OBJECT=\\\\\\\"from set_object\\\\\\\",t.FROM_SET_GEOMETRIES=\\\\\\\"from set_geometries\\\\\\\",t.FROM_SET_GEOMETRY=\\\\\\\"from set_geometry\\\\\\\"}(lV||(lV={}));const cV=\\\\\\\"input geometry\\\\\\\",hV=[cV,cV,cV,cV];class uV extends aa{constructor(){super(...arguments),this.flags=new Ui(this)}static context(){return ts.SOP}static displayedInputNames(){return hV}initializeBaseNode(){this.flags.display.set(!1),this.flags.display.onUpdate((()=>{if(this.flags.display.active()){const t=this.parent();t&&t.displayNodeController&&t.displayNodeController.setDisplayNode(this)}})),this.io.outputs.setHasOneOutput()}setCoreGroup(t){this._setContainer(t,lV.FROM_SET_CORE_GROUP)}setObject(t){this._setContainerObjects([t],lV.FROM_SET_OBJECT)}setObjects(t){this._setContainerObjects(t,lV.FROM_SET_OBJECTS)}setGeometry(t,e=Ns.MESH){const n=this.createObject(t,e);this._setContainerObjects([n],lV.FROM_SET_GEOMETRY)}setGeometries(t,e=Ns.MESH){const n=[];let i;for(let s of t)i=this.createObject(s,e),n.push(i);this._setContainerObjects(n,lV.FROM_SET_GEOMETRIES)}_setContainerObjects(t,e){const n=this.containerController.container().coreContent()||new oV;n.setObjects(t),n.touch(),this._setContainer(n)}static createObject(t,e,n){return aV.createObject(t,e,n)}createObject(t,e,n){return uV.createObject(t,e,n)}static createIndexIfNone(t){aV.createIndexIfNone(t)}_createIndexIfNone(t){uV.createIndexIfNone(t)}}const dV=new class extends ua{};class pV extends uV{constructor(){super(...arguments),this.paramsConfig=dV}static type(){return ns.OUTPUT}initializeNode(){this.io.inputs.setCount(1),this.io.outputs.setHasNoOutput(),this.io.inputs.initInputsClonedState(Qi.NEVER)}cook(t){this.setCoreGroup(t[0])}}class _V extends uV{constructor(){super(...arguments),this.childrenDisplayController=new fV(this),this.displayNodeController=new Fm(this,this.childrenDisplayController.displayNodeControllerCallbacks()),this._children_controller_context=ts.SOP}initializeBaseNode(){super.initializeBaseNode(),this.childrenDisplayController.initializeNode(),this.cookController.disallowInputsEvaluation()}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}async cook(t){const e=this.childrenDisplayController.output_node();if(e){const t=(await e.compute()).coreContent();t?this.setCoreGroup(t):e.states.error.active()?this.states.error.set(e.states.error.message()):this.setObjects([])}else this.states.error.set(\\\\\\\"no output node found inside subnet\\\\\\\")}}const mV={dependsOnDisplayNode:!0};class fV{constructor(t,e=mV){this.node=t,this.options=e,this._output_node_needs_update=!0}dispose(){var t;null===(t=this._graph_node)||void 0===t||t.dispose()}displayNodeControllerCallbacks(){return{onDisplayNodeRemove:()=>{this.node.setDirty()},onDisplayNodeSet:()=>{this.node.setDirty()},onDisplayNodeUpdate:()=>{this.node.setDirty()}}}output_node(){return this._output_node_needs_update&&this._update_output_node(),this._output_node}initializeNode(){var t;const e=null===(t=this.node.flags)||void 0===t?void 0:t.display;e&&e.onUpdate((()=>{e.active()&&this.node.setDirty()})),this.node.lifecycle.add_on_child_add_hook((()=>{this._output_node_needs_update=!0,this.node.setDirty()})),this.node.lifecycle.add_on_child_remove_hook((()=>{this._output_node_needs_update=!0,this.node.setDirty()}))}_update_output_node(){const t=this.node.nodesByType(pV.type())[0];null!=this._output_node&&null!=t&&this._output_node.graphNodeId()==t.graphNodeId()||(this._graph_node&&this._output_node&&this._graph_node.removeGraphInput(this._output_node),this._output_node=t,this._output_node&&this.options.dependsOnDisplayNode&&(this._graph_node=this._graph_node||this._create_graph_node(),this._graph_node.addGraphInput(this._output_node)))}_create_graph_node(){const t=new Mi(this.node.scene(),\\\\\\\"subnetChildrenDisplayController\\\\\\\");return t.addPostDirtyHook(\\\\\\\"subnetChildrenDisplayController\\\\\\\",(()=>{this.node.setDirty()})),t}}function gV(t,e){const n=new class extends ua{constructor(){super(...arguments),this.template=ha.OPERATOR_PATH(\\\\\\\"../template\\\\\\\"),this.debug=ha.BUTTON(null,{callback:t=>{i.PARAM_CALLBACK_debug(t)}})}};class i extends _V{constructor(){super(...arguments),this.paramsConfig=n,this.polyNodeController=new xV(this,e)}static type(){return t}static PARAM_CALLBACK_debug(t){t._debug()}_debug(){this.polyNodeController.debug(this.p.template)}}return i}const vV=gV(\\\\\\\"poly\\\\\\\",{nodeContext:ts.SOP,inputs:[0,4]});class yV extends vV{}class xV{constructor(t,e){this.node=t,this._definition=e}initializeNode(){this.init_inputs(),this.node.params.onParamsCreated(\\\\\\\"poly_node_init\\\\\\\",(()=>{this.create_params_from_definition()})),this.node.lifecycle.add_on_create_hook((()=>{this.create_params_from_definition(),this.createChildNodesFromDefinition()}))}init_inputs(){const t=this._definition.inputs;t&&this.node.io.inputs.setCount(t[0],t[1])}create_params_from_definition(){const t=this._definition.params;if(t){for(let e of t)e.options=e.options||{},e.options.spare=!0;this.node.params.updateParams({toAdd:t})}}createChildNodesFromDefinition(){const t=this._definition.nodes;if(!t)return;const e=this.node.scene().loadingController.loaded();e&&this.node.scene().loadingController.markAsLoading();const n=new Jl({}),i=new Vl(this.node);i.create_nodes(n,t);const s=this._definition.ui;s&&i.process_nodes_ui_data(n,s),e&&this.node.scene().loadingController.markAsLoaded()}debug(t){const e=t.found_node();if(e){const t=rV.dispatch_node(e),n=t.data({showPolyNodesData:!0}),i=t.ui_data({showPolyNodesData:!0}),s={nodeContext:e.context(),inputs:[0,0],params:[],nodes:n.nodes,ui:i.nodes};console.log(JSON.stringify(s))}}static createNodeClass(t,e,n){switch(e){case ts.SOP:return gV(t,n);case ts.OBJ:return bV(t,n)}}}function bV(t,e){const n=new class extends ua{constructor(){super(...arguments),this.display=ha.BOOLEAN(1),this.template=ha.OPERATOR_PATH(\\\\\\\"../template\\\\\\\"),this.debug=ha.BUTTON(null,{callback:t=>{i.PARAM_CALLBACK_debug(t)}})}};class i extends cU{constructor(){super(...arguments),this.paramsConfig=n,this.hierarchyController=new MU(this),this.flags=new Di(this),this.childrenDisplayController=new kG(this),this.displayNodeController=new Fm(this,this.childrenDisplayController.displayNodeControllerCallbacks()),this._children_controller_context=ts.SOP,this.polyNodeController=new xV(this,e)}static type(){return t}createObject(){const t=new Fn.a;return t.matrixAutoUpdate=!1,t}initializeNode(){this.hierarchyController.initializeNode(),this.childrenDisplayController.initializeNode()}isDisplayNodeCooking(){if(this.flags.display.active()){const t=this.displayNodeController.displayNode();return!!t&&t.isDirty()}return!1}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}cook(){this.object.visible=this.pv.display,this.cookController.endCook()}static PARAM_CALLBACK_debug(t){t._debug()}_debug(){this.polyNodeController.debug(this.p.template)}}return i}const wV=bV(\\\\\\\"poly\\\\\\\",{nodeContext:ts.OBJ});class TV extends wV{}class AV extends Q.a{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(!0===this.isPlaying)return void console.warn(\\\\\\\"THREE.Audio: Audio is already playing.\\\\\\\");if(!1===this.hasPlaybackControl)return void console.warn(\\\\\\\"THREE.Audio: this Audio has no playback control.\\\\\\\");this._startedAt=this.context.currentTime+t;const 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(!1!==this.hasPlaybackControl)return!0===this.isPlaying&&(this._progress+=Math.max(this.context.currentTime-this._startedAt,0)*this.playbackRate,!0===this.loop&&(this._progress=this._progress%(this.duration||this.buffer.duration)),this.source.stop(),this.source.onended=null,this.isPlaying=!1),this;console.warn(\\\\\\\"THREE.Audio: this Audio has no playback control.\\\\\\\")}stop(){if(!1!==this.hasPlaybackControl)return this._progress=0,this.source.stop(),this.source.onended=null,this.isPlaying=!1,this;console.warn(\\\\\\\"THREE.Audio: this Audio has no playback control.\\\\\\\")}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.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=[]),!0===this._connected?(this.disconnect(),this.filters=t.slice(),this.connect()):this.filters=t.slice(),this}setDetune(t){if(this.detune=t,void 0!==this.source.detune)return!0===this.isPlaying&&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(!1!==this.hasPlaybackControl)return this.playbackRate=t,!0===this.isPlaying&&this.source.playbackRate.setTargetAtTime(this.playbackRate,this.context.currentTime,.01),this;console.warn(\\\\\\\"THREE.Audio: this Audio has no playback control.\\\\\\\")}getPlaybackRate(){return this.playbackRate}onEnded(){this.isPlaying=!1}getLoop(){return!1===this.hasPlaybackControl?(console.warn(\\\\\\\"THREE.Audio: this Audio has no playback control.\\\\\\\"),!1):this.loop}setLoop(t){if(!1!==this.hasPlaybackControl)return this.loop=t,!0===this.isPlaying&&(this.source.loop=this.loop),this;console.warn(\\\\\\\"THREE.Audio: this Audio has no playback control.\\\\\\\")}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}}const MV=new p.a,EV=new hh.a,SV=new p.a,CV=new p.a;class NV extends AV{constructor(t){super(t),this.panner=this.context.createPanner(),this.panner.panningModel=\\\\\\\"HRTF\\\\\\\",this.panner.connect(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),!0===this.hasPlaybackControl&&!1===this.isPlaying)return;this.matrixWorld.decompose(MV,EV,SV),CV.set(0,0,1).applyQuaternion(EV);const e=this.panner;if(e.positionX){const t=this.context.currentTime+this.listener.timeDelta;e.positionX.linearRampToValueAtTime(MV.x,t),e.positionY.linearRampToValueAtTime(MV.y,t),e.positionZ.linearRampToValueAtTime(MV.z,t),e.orientationX.linearRampToValueAtTime(CV.x,t),e.orientationY.linearRampToValueAtTime(CV.y,t),e.orientationZ.linearRampToValueAtTime(CV.z,t)}else e.setPosition(MV.x,MV.y,MV.z),e.setOrientation(CV.x,CV.y,CV.z)}}class LV extends CU.a{constructor(t,e=1,n=16,i=2){const s=new S.a,r=new Float32Array(3*(3*(n+2*i)+3));s.setAttribute(\\\\\\\"position\\\\\\\",new C.a(r,3));const o=new As.a({color:65280});super(s,[new As.a({color:16776960}),o]),this.audio=t,this.range=e,this.divisionsInnerAngle=n,this.divisionsOuterAngle=i,this.type=\\\\\\\"PositionalAudioHelper\\\\\\\",this.update()}update(){const t=this.audio,e=this.range,n=this.divisionsInnerAngle,i=this.divisionsOuterAngle,s=On.e(t.panner.coneInnerAngle),r=On.e(t.panner.coneOuterAngle),o=s/2,a=r/2;let l,c,h=0,u=0;const d=this.geometry,p=d.attributes.position;function _(t,n,i,s){const r=(n-t)/i;for(p.setXYZ(h,0,0,0),u++,l=t;l<n;l+=r)c=h+u,p.setXYZ(c,Math.sin(l)*e,0,Math.cos(l)*e),p.setXYZ(c+1,Math.sin(Math.min(l+r,n))*e,0,Math.cos(Math.min(l+r,n))*e),p.setXYZ(c+2,0,0,0),u+=3;d.addGroup(h,u,s),h+=u,u=0}d.clearGroups(),_(-a,-o,i,0),_(-o,o,n,1),_(o,a,i,0),p.needsUpdate=!0,s===r&&(this.material[0].visible=!1)}dispose(){this.geometry.dispose(),this.material[0].dispose(),this.material[1].dispose()}}class OV extends Vf.a{constructor(t){super(t)}load(t,e,n,i){const s=this,r=new Gf.a(this.manager);r.setResponseType(\\\\\\\"arraybuffer\\\\\\\"),r.setPath(this.path),r.setRequestHeader(this.requestHeader),r.setWithCredentials(this.withCredentials),r.load(t,(function(n){try{const t=n.slice(0);_G().decodeAudioData(t,(function(t){e(t)}))}catch(e){i?i(e):console.error(e),s.manager.itemError(t)}}),n,i)}}var PV;!function(t){t.MP3=\\\\\\\"mp3\\\\\\\",t.WAV=\\\\\\\"wav\\\\\\\"}(PV||(PV={}));PV.MP3,PV.WAV;class RV extends $g{async load(){const t=new OV(this.loadingManager),e=await this._urlToLoad();return new Promise((n=>{t.load(e,(function(t){n(t)}))}))}}var IV;!function(t){t.LINEAR=\\\\\\\"linear\\\\\\\",t.INVERSE=\\\\\\\"inverse\\\\\\\",t.EXPONENTIAL=\\\\\\\"exponential\\\\\\\"}(IV||(IV={}));const FV=[IV.LINEAR,IV.INVERSE,IV.EXPONENTIAL];class DV extends(wU(ua)){constructor(){super(...arguments),this.audio=ha.FOLDER(),this.listener=ha.NODE_PATH(\\\\\\\"\\\\\\\",{nodeSelection:{context:ts.OBJ,types:[Ig.AUDIO_LISTENER]}}),this.url=ha.STRING(\\\\\\\"\\\\\\\",{fileBrowse:{type:[Rr.AUDIO]}}),this.volume=ha.FLOAT(1),this.loop=ha.BOOLEAN(1,{separatorBefore:!0}),this.loopStart=ha.FLOAT(0,{visibleIf:{loop:1}}),this.loopEnd=ha.FLOAT(0,{visibleIf:{loop:1},separatorAfter:!0}),this.refDistance=ha.FLOAT(10,{range:[0,10],rangeLocked:[!0,!1]}),this.rolloffFactor=ha.FLOAT(10,{range:[0,10],rangeLocked:[!0,!1]}),this.maxDistance=ha.FLOAT(100,{range:[.001,100],rangeLocked:[!0,!1]}),this.distanceModel=ha.INTEGER(FV.indexOf(IV.LINEAR),{menu:{entries:FV.map(((t,e)=>({name:t,value:e})))}}),this.coneInnerAngle=ha.FLOAT(180,{range:[0,360],rangeLocked:[!0,!0]}),this.coneOuterAngle=ha.FLOAT(230,{range:[0,360],rangeLocked:[!0,!0]}),this.coneOuterGain=ha.FLOAT(.1,{range:[0,1],rangeLocked:[!0,!0]}),this.autoplay=ha.BOOLEAN(1),this.showHelper=ha.BOOLEAN(0),this.helperSize=ha.FLOAT(1,{range:[0,10],rangeLocked:[!0,!1],visibleIf:{showHelper:!0}}),this.play=ha.BUTTON(null,{callback:t=>{zV.PARAM_CALLBACK_play(t)}}),this.pause=ha.BUTTON(null,{callback:t=>{zV.PARAM_CALLBACK_pause(t)}})}}const BV=new DV;class zV extends cU{constructor(){super(...arguments),this.paramsConfig=BV,this.hierarchyController=new MU(this),this.transformController=new AU(this),this.flags=new Di(this)}static type(){return Ig.POSITIONAL_AUDIO}createObject(){const t=new Fn.a;return t.matrixAutoUpdate=!1,t}initializeNode(){this.hierarchyController.initializeNode(),this.transformController.initializeNode(),this._updateHelperHierarchy(),this.flags.display.onUpdate((()=>{this._updateHelperHierarchy()})),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.url],(()=>{const t=this.p.url.rawInput();if(t){const e=t.split(\\\\\\\"/\\\\\\\");return e[e.length-1]}return\\\\\\\"\\\\\\\"}))}))}))}_updateHelperHierarchy(){this._helper&&(this.flags.display.active()?this.object.add(this._helper):this.object.remove(this._helper))}cook(){this.transformController.update(),this._updatePositionalAudio(),this.cookController.endCook()}async _updatePositionalAudio(){this.p.listener.isDirty()&&await this.p.listener.compute();const t=this.pv.url;if(this._loadedUrl!=t)try{await this._createPositionalAudio()}catch(t){this.states.error.set(`error when creating audio: ${t}`)}this._positionalAudio&&(this._positionalAudio.setVolume(this.pv.volume),this._positionalAudio.setLoop(this.pv.loop),this._positionalAudio.setLoopStart(this.pv.loopStart),this._positionalAudio.setLoopEnd(this.pv.loopEnd),this._positionalAudio.setRefDistance(this.pv.refDistance),this._positionalAudio.setRolloffFactor(this.pv.rolloffFactor),this._positionalAudio.setMaxDistance(this.pv.maxDistance),this._positionalAudio.setDistanceModel(FV[this.pv.distanceModel]),this._positionalAudio.setDirectionalCone(this.pv.coneInnerAngle,this.pv.coneOuterAngle,this.pv.coneOuterGain),this.pv.showHelper&&(this._helper=this._helper||this._createHelper(this._positionalAudio),this.object.add(this._helper)),this._helper&&(this._helper.visible=this.pv.showHelper,this._helper.range=this.pv.helperSize,this._helper.update()))}_createHelper(t){const e=new LV(t);return e.matrixAutoUpdate=!1,e}async _createPositionalAudio(){const t=this.pv.listener.nodeWithContext(ts.OBJ);if(!t)return;const e=t.object;this._positionalAudio&&(this._positionalAudio.source&&(this._positionalAudio.stop(),this._positionalAudio.disconnect()),this.object.remove(this._positionalAudio),this._positionalAudio=void 0),this._helper&&(this._helper.dispose(),this._helper=void 0),this._positionalAudio=new NV(e),this._positionalAudio.matrixAutoUpdate=!1;const n=new RV(this.pv.url,this.scene(),this),i=await n.load();this._loadedUrl=this.pv.url,this._positionalAudio.autoplay=this.pv.autoplay,this._positionalAudio.setBuffer(i),this.object.add(this._positionalAudio)}isPlaying(){return!!this._positionalAudio&&this._positionalAudio.isPlaying}static PARAM_CALLBACK_play(t){t.PARAM_CALLBACK_play()}static PARAM_CALLBACK_pause(t){t.PARAM_CALLBACK_pause()}PARAM_CALLBACK_play(){this._positionalAudio&&(this.isPlaying()||this._positionalAudio.play())}PARAM_CALLBACK_pause(){this._positionalAudio&&this.isPlaying()&&this._positionalAudio.pause()}}var kV;!function(t){t.ON_RENDER=\\\\\\\"On Every Render\\\\\\\",t.MANUAL=\\\\\\\"Manual\\\\\\\"}(kV||(kV={}));const UV=[kV.ON_RENDER,kV.MANUAL];const GV=new class extends ua{constructor(){super(...arguments),this.object=ha.OPERATOR_PATH(\\\\\\\"\\\\\\\",{nodeSelection:{context:ts.OBJ},dependentOnFoundNode:!1,computeOnDirty:!0,callback:t=>{VV.PARAM_CALLBACK_update_resolved_object(t)}}),this.pointIndex=ha.INTEGER(0,{range:[0,100]}),this.updateMode=ha.INTEGER(UV.indexOf(kV.ON_RENDER),{callback:t=>{VV.PARAM_CALLBACK_update_updateMode(t)},menu:{entries:UV.map(((t,e)=>({name:t,value:e})))}}),this.update=ha.BUTTON(null,{callback:t=>{VV.PARAM_CALLBACK_update(t)},visibleIf:{updateMode:UV.indexOf(kV.MANUAL)}})}};class VV extends cU{constructor(){super(...arguments),this.paramsConfig=GV,this.hierarchyController=new MU(this),this.flags=new Di(this),this._helper=new TG(1),this._found_point_post=new p.a,this._on_object_before_render_bound=this._update.bind(this)}static type(){return\\\\\\\"rivet\\\\\\\"}createObject(){const t=new B.a;return t.matrixAutoUpdate=!1,t}initializeNode(){this.hierarchyController.initializeNode(),this.addPostDirtyHook(\\\\\\\"rivet_on_dirty\\\\\\\",(()=>{this.cookController.cookMainWithoutInputs()})),this._updateHelperHierarchy(),this.flags.display.onUpdate((()=>{this._updateHelperHierarchy()}))}_updateHelperHierarchy(){this.flags.display.active()?this.object.add(this._helper):this.object.remove(this._helper)}async cook(){await this._update_resolved_object(),this._update_render_hook(),this.cookController.endCook()}_update_render_hook(){const t=UV[this.pv.updateMode];switch(t){case kV.ON_RENDER:return this._add_render_hook();case kV.MANUAL:return this._remove_render_hook()}os.unreachable(t)}_add_render_hook(){this.object.onBeforeRender=this._on_object_before_render_bound,this.object.frustumCulled=!1}_remove_render_hook(){this.object.onBeforeRender=()=>{}}_update(t,e,n,i,s,r){const o=this._resolved_object();if(o){const t=o.geometry;if(t){const e=t.attributes.position;if(e){const t=e.array;this._found_point_post.fromArray(t,3*this.pv.pointIndex),o.updateWorldMatrix(!0,!1),o.localToWorld(this._found_point_post),this.object.matrix.makeTranslation(this._found_point_post.x,this._found_point_post.y,this._found_point_post.z)}}}}static PARAM_CALLBACK_update_resolved_object(t){t._update_resolved_object()}async _update_resolved_object(){this.p.object.isDirty()&&await this.p.object.compute();const t=this.p.object.found_node();if(t)if(t.context()==ts.OBJ&&t.type()==VG.type()){const e=t;this._resolved_sop_group=e.childrenDisplayController.sopGroup()}else this.states.error.set(\\\\\\\"found node is not a geo node\\\\\\\")}_resolved_object(){if(!this._resolved_sop_group)return;const t=this._resolved_sop_group.children[0];return t||void 0}static PARAM_CALLBACK_update_updateMode(t){t._update_render_hook()}static PARAM_CALLBACK_update(t){t._update()}}class HV extends(Pa(Na(wa(ya(_a(ua)))))){}const jV=new HV;class WV extends cU{constructor(){super(...arguments),this.paramsConfig=jV,this.hierarchyController=new MU(this),this.SceneAutoUpdateController=new ma(this),this.sceneBackgroundController=new xa(this),this.SceneEnvController=new Ta(this),this.sceneFogController=new La(this),this.sceneMaterialOverrideController=new Ra(this)}static type(){return\\\\\\\"scene\\\\\\\"}createObject(){const t=new vs;return t.matrixAutoUpdate=!1,t}initializeNode(){this.hierarchyController.initializeNode()}cook(){this.SceneAutoUpdateController.update(),this.sceneBackgroundController.update(),this.SceneEnvController.update(),this.sceneFogController.update(),this.sceneMaterialOverrideController.update(),this.cookController.endCook()}}class qV{constructor(t,e,n){this._camera_node_id=t,this._controls_node=e,this._controls=n,this._updateRequired=this._controls_node.updateRequired()}updateRequired(){return this._updateRequired}get camera_node_id(){return this._camera_node_id}get controls(){return this._controls}get controls_node(){return this._controls_node}is_equal(t){return t.camera_node_id==this._camera_node_id&&t.controls_node.graphNodeId()==this._controls_node.graphNodeId()}}const XV=\\\\\\\"controls\\\\\\\";class YV{constructor(t){this.node=t,this._applied_controls_by_element_id=new Map,this._controls_node=null}controls_param(){return this.node.params.has(XV)?this.node.params.get(XV):null}async controls_node(){const t=this.node.p.controls,e=t.rawInput();if(e&&\\\\\\\"\\\\\\\"!=e){t.isDirty()&&await t.compute();const e=t.value.node();if(e){if(ms.includes(e.type()))return e;this.node.states.error.set(\\\\\\\"found node is not of a camera control type\\\\\\\")}else this.node.states.error.set(\\\\\\\"no node has been found\\\\\\\")}return null}async update_controls(){const t=await this.controls_node();t&&this._controls_node!=t&&this._dispose_control_refs(),this._controls_node=t}async apply_controls(t){const e=t.canvas();if(!e)return;const n=await this.controls_node();if(n){this._controlsEndEventName=n.endEventName();const i=n.controls_id();let s=!1,r=this._applied_controls_by_element_id.get(e.id);if(r&&r.get(i)&&(s=!0),!s){r=new Map,this._applied_controls_by_element_id.set(e.id,r),r.set(i,n);const s=await n.apply_controls(this.node.object,t);if(!s)return;const o=new qV(this.node.graphNodeId(),n,s);return this.set_controls_events(s),o}}}_dispose_control_refs(){this._applied_controls_by_element_id.forEach(((t,e)=>{this._dispose_controls_for_element_id(e)})),this._applied_controls_by_element_id.clear(),this._controlsEndEventName=void 0}_dispose_controls_for_element_id(t){const e=this._applied_controls_by_element_id.get(t);e&&e.forEach(((e,n)=>{e.disposeControlsForHtmlElementId(t)})),this._applied_controls_by_element_id.delete(t)}async dispose_controls(t){this._dispose_controls_for_element_id(t.id)}set_controls_events(t){const e=UH[this.node.pv.updateFromControlsMode];switch(e){case kH.ON_END:return this._set_controls_events_to_update_on_end(t);case kH.ALWAYS:return this._set_controls_events_to_update_always(t);case kH.NEVER:return this._reset(t)}os.unreachable(e)}_reset(t){this.controls_change_listener&&(t.removeEventListener(\\\\\\\"change\\\\\\\",this.controls_change_listener),this.controls_change_listener=void 0),this.controls_end_listener&&this._controlsEndEventName&&(t.removeEventListener(this._controlsEndEventName,this.controls_end_listener),this.controls_end_listener=void 0)}_set_controls_events_to_update_on_end(t){this._reset(t),this._controlsEndEventName&&(this.controls_end_listener=()=>{this.node.update_transform_params_from_object()},t.addEventListener(this._controlsEndEventName,this.controls_end_listener))}_set_controls_events_to_update_always(t){this._reset(t),this.controls_change_listener=()=>{this.node.update_transform_params_from_object()},t.addEventListener(\\\\\\\"change\\\\\\\",this.controls_change_listener)}}function $V(t){return class extends t{constructor(){super(...arguments),this.layer=ha.INTEGER(0,{range:[0,31],rangeLocked:[!0,!0]})}}}class JV{constructor(t){this.node=t}update(){const t=this.node.object;t.layers.set(0),t.layers.enable(this.node.params.integer(\\\\\\\"layer\\\\\\\"))}}const ZV={callback:t=>{$H.PARAM_CALLBACK_reset_effects_composer(t)}};function KV(t){return class extends t{constructor(){super(...arguments),this.doPostProcess=ha.BOOLEAN(0),this.postProcessNode=ha.NODE_PATH(\\\\\\\"\\\\\\\",{visibleIf:{doPostProcess:1},nodeSelection:{types:[es.POST]},...ZV})}}}class QV{constructor(t){this.node=t,this._composers_by_canvas_id={},this.node.p.postProcessNode?this._add_param_dirty_hook():this.node.params.onParamsCreated(\\\\\\\"post process add param dirty hook\\\\\\\",(()=>{this._add_param_dirty_hook()}))}_add_param_dirty_hook(){this.node.p.postProcessNode.addPostDirtyHook(\\\\\\\"on_post_node_dirty\\\\\\\",(()=>{this.reset()}))}render(t,e){const n=this.composer(t);n&&(e&&n.setSize(e.x,e.y),n.render())}reset(){const t=Object.keys(this._composers_by_canvas_id);for(let e of t)delete this._composers_by_canvas_id[e]}composer(t){return this._composers_by_canvas_id[t.id]=this._composers_by_canvas_id[t.id]||this._create_composer(t)}_create_composer(t){const e=this.node.renderController.renderer(t);if(e){const n=this.node.renderController.resolved_scene||this.node.scene().threejsScene(),i=this.node.object,s=this.node.p.postProcessNode.value.node();if(s){if(s.type()==es.POST){const r=s,o=this.node.renderController.canvas_resolution(t);return r.effectsComposerController.createEffectsComposer({renderer:e,scene:n,camera:i,resolution:o,requester:this.node,camera_node:this.node})}this.node.states.error.set(\\\\\\\"found node is not a post process node\\\\\\\")}else this.node.states.error.set(\\\\\\\"no post node found\\\\\\\")}}}class tH extends aa{constructor(){super(...arguments),this.flags=new Pi(this)}static context(){return ts.ROP}initializeBaseNode(){this.dirtyController.addPostDirtyHook(\\\\\\\"cook_immediately\\\\\\\",(()=>{this.cookController.cookMainWithoutInputs()}))}cook(){this.cookController.endCook()}}var eH,nH,iH,sH;!function(t){t.CSS2D=\\\\\\\"CSS2DRenderer\\\\\\\",t.CSS3D=\\\\\\\"CSS3DRenderer\\\\\\\",t.WEBGL=\\\\\\\"WebGLRenderer\\\\\\\"}(eH||(eH={})),function(t){t.Linear=\\\\\\\"Linear\\\\\\\",t.sRGB=\\\\\\\"sRGB\\\\\\\",t.Gamma=\\\\\\\"Gamma\\\\\\\",t.RGBE=\\\\\\\"RGBE\\\\\\\",t.LogLuv=\\\\\\\"LogLuv\\\\\\\",t.RGBM7=\\\\\\\"RGBM7\\\\\\\",t.RGBM16=\\\\\\\"RGBM16\\\\\\\",t.RGBD=\\\\\\\"RGBD\\\\\\\"}(nH||(nH={})),(sH=iH||(iH={}))[sH.Linear=w.U]=\\\\\\\"Linear\\\\\\\",sH[sH.sRGB=w.ld]=\\\\\\\"sRGB\\\\\\\",sH[sH.Gamma=w.J]=\\\\\\\"Gamma\\\\\\\",sH[sH.RGBE=w.gc]=\\\\\\\"RGBE\\\\\\\",sH[sH.LogLuv=w.bb]=\\\\\\\"LogLuv\\\\\\\",sH[sH.RGBM7=w.lc]=\\\\\\\"RGBM7\\\\\\\",sH[sH.RGBM16=w.kc]=\\\\\\\"RGBM16\\\\\\\",sH[sH.RGBD=w.fc]=\\\\\\\"RGBD\\\\\\\";const rH=[nH.Linear,nH.sRGB,nH.Gamma,nH.RGBE,nH.LogLuv,nH.RGBM7,nH.RGBM16,nH.RGBD],oH=[iH.Linear,iH.sRGB,iH.Gamma,iH.RGBE,iH.LogLuv,iH.RGBM7,iH.RGBM16,iH.RGBD],aH=iH.sRGB;var lH,cH,hH;!function(t){t.No=\\\\\\\"No\\\\\\\",t.Linear=\\\\\\\"Linear\\\\\\\",t.Reinhard=\\\\\\\"Reinhard\\\\\\\",t.Cineon=\\\\\\\"Cineon\\\\\\\",t.ACESFilmic=\\\\\\\"ACESFilmic\\\\\\\"}(lH||(lH={})),(hH=cH||(cH={}))[hH.No=w.vb]=\\\\\\\"No\\\\\\\",hH[hH.Linear=w.ab]=\\\\\\\"Linear\\\\\\\",hH[hH.Reinhard=w.vc]=\\\\\\\"Reinhard\\\\\\\",hH[hH.Cineon=w.m]=\\\\\\\"Cineon\\\\\\\",hH[hH.ACESFilmic=w.a]=\\\\\\\"ACESFilmic\\\\\\\";const uH=[lH.No,lH.Linear,lH.Reinhard,lH.Cineon,lH.ACESFilmic],dH=[cH.No,cH.Linear,cH.Reinhard,cH.Cineon,cH.ACESFilmic],pH=cH.ACESFilmic,_H=uH.map(((t,e)=>({name:t,value:dH[e]})));var mH;!function(t){t.HIGH=\\\\\\\"highp\\\\\\\",t.MEDIUM=\\\\\\\"mediump\\\\\\\",t.LOW=\\\\\\\"lowp\\\\\\\"}(mH||(mH={}));const fH=[mH.HIGH,mH.MEDIUM,mH.LOW];var gH;!function(t){t.HIGH=\\\\\\\"high-performance\\\\\\\",t.LOW=\\\\\\\"low-power\\\\\\\",t.DEFAULT=\\\\\\\"default\\\\\\\"}(gH||(gH={}));const vH=[gH.HIGH,gH.LOW,gH.DEFAULT];var yH,xH,bH;!function(t){t.Basic=\\\\\\\"Basic\\\\\\\",t.PCF=\\\\\\\"PCF\\\\\\\",t.PCFSoft=\\\\\\\"PCFSoft\\\\\\\",t.VSM=\\\\\\\"VSM\\\\\\\"}(yH||(yH={})),(bH=xH||(xH={}))[bH.Basic=w.k]=\\\\\\\"Basic\\\\\\\",bH[bH.PCF=w.Fb]=\\\\\\\"PCF\\\\\\\",bH[bH.PCFSoft=w.Gb]=\\\\\\\"PCFSoft\\\\\\\",bH[bH.VSM=w.gd]=\\\\\\\"VSM\\\\\\\";const wH=[yH.Basic,yH.PCF,yH.PCFSoft,yH.VSM],TH=[xH.Basic,xH.PCF,xH.PCFSoft,xH.VSM],AH=(w.k,w.Fb,w.Gb,w.gd,xH.PCFSoft),MH={alpha:!1,precision:mH.HIGH,premultipliedAlpha:!0,antialias:!1,stencil:!0,preserveDrawingBuffer:!1,powerPreference:gH.DEFAULT,depth:!0,logarithmicDepthBuffer:!1};const EH=new class extends ua{constructor(){super(...arguments),this.tprecision=ha.BOOLEAN(0),this.precision=ha.INTEGER(fH.indexOf(mH.HIGH),{visibleIf:{tprecision:1},menu:{entries:fH.map(((t,e)=>({value:e,name:t})))}}),this.tpowerPreference=ha.BOOLEAN(0),this.powerPreference=ha.INTEGER(vH.indexOf(gH.DEFAULT),{visibleIf:{tpowerPreference:1},menu:{entries:vH.map(((t,e)=>({value:e,name:t})))}}),this.alpha=ha.BOOLEAN(1),this.premultipliedAlpha=ha.BOOLEAN(1),this.antialias=ha.BOOLEAN(1),this.stencil=ha.BOOLEAN(1),this.depth=ha.BOOLEAN(1),this.logarithmicDepthBuffer=ha.BOOLEAN(0),this.toneMapping=ha.INTEGER(pH,{menu:{entries:_H}}),this.toneMappingExposure=ha.FLOAT(1,{range:[0,2]}),this.outputEncoding=ha.INTEGER(aH,{menu:{entries:rH.map(((t,e)=>({name:t,value:oH[e]})))}}),this.physicallyCorrectLights=ha.BOOLEAN(1),this.sortObjects=ha.BOOLEAN(1),this.tpixelRatio=ha.BOOLEAN(0),this.pixelRatio=ha.INTEGER(2,{visibleIf:{tpixelRatio:!0},range:[1,4],rangeLocked:[!0,!1]}),this.tshadowMap=ha.BOOLEAN(1),this.shadowMapAutoUpdate=ha.BOOLEAN(1,{visibleIf:{tshadowMap:1}}),this.shadowMapNeedsUpdate=ha.BOOLEAN(0,{visibleIf:{tshadowMap:1}}),this.shadowMapType=ha.INTEGER(AH,{visibleIf:{tshadowMap:1},menu:{entries:wH.map(((t,e)=>({name:t,value:TH[e]})))}})}};class SH extends tH{constructor(){super(...arguments),this.paramsConfig=EH,this._renderers_by_canvas_id={}}static type(){return eH.WEBGL}createRenderer(t,e){const n={},i=Object.keys(MH);let s;for(s of i)n[s]=MH[s];if(this.pv.tprecision){const t=fH[this.pv.precision];n.precision=t}if(this.pv.tpowerPreference){const t=vH[this.pv.powerPreference];n.powerPreference=t}n.antialias=this.pv.antialias,n.antialias=this.pv.antialias,n.alpha=this.pv.alpha,n.premultipliedAlpha=this.pv.premultipliedAlpha,n.depth=this.pv.depth,n.stencil=this.pv.stencil,n.logarithmicDepthBuffer=this.pv.logarithmicDepthBuffer,n.canvas=t,n.context=e;const r=li.renderersController.createWebGLRenderer(n);return li.renderersController.printDebug()&&(li.renderersController.printDebugMessage(`create renderer from node '${this.path()}'`),li.renderersController.printDebugMessage({params:n})),this._update_renderer(r),this._renderers_by_canvas_id[t.id]=r,r}cook(){const t=Object.keys(this._renderers_by_canvas_id);for(let e of t){const t=this._renderers_by_canvas_id[e];this._update_renderer(t)}this._traverse_scene_and_update_materials(),this.cookController.endCook()}_update_renderer(t){t.physicallyCorrectLights=this.pv.physicallyCorrectLights,t.outputEncoding=this.pv.outputEncoding,t.toneMapping=this.pv.toneMapping,t.toneMappingExposure=this.pv.toneMappingExposure,t.shadowMap.enabled=this.pv.tshadowMap,t.shadowMap.autoUpdate=this.pv.shadowMapAutoUpdate,t.shadowMap.needsUpdate=this.pv.shadowMapNeedsUpdate,t.shadowMap.type=this.pv.shadowMapType,t.sortObjects=this.pv.sortObjects;const e=this.pv.tpixelRatio?this.pv.pixelRatio:NH.defaultPixelRatio();li.renderersController.printDebug()&&(li.renderersController.printDebugMessage(`set renderer pixelRatio from '${this.path()}'`),li.renderersController.printDebugMessage({pixelRatio:e})),t.setPixelRatio(e)}_traverse_scene_and_update_materials(){this.scene().threejsScene().traverse((t=>{const e=t.material;if(e)if(m.isArray(e))for(let t of e)t.needsUpdate=!0;else e.needsUpdate=!0}))}}function CH(t){return class extends t{constructor(){super(...arguments),this.render=ha.FOLDER(),this.setScene=ha.BOOLEAN(0),this.scene=ha.OPERATOR_PATH(\\\\\\\"\\\\\\\",{visibleIf:{setScene:1},nodeSelection:{context:ts.OBJ,types:[WV.type()]}}),this.setRenderer=ha.BOOLEAN(0),this.renderer=ha.OPERATOR_PATH(\\\\\\\"\\\\\\\",{visibleIf:{setRenderer:1},nodeSelection:{context:ts.ROP,types:[SH.type()]}}),this.setCSSRenderer=ha.BOOLEAN(0),this.CSSRenderer=ha.OPERATOR_PATH(\\\\\\\"\\\\\\\",{visibleIf:{setCSSRenderer:1},nodeSelection:{context:ts.ROP,types:[eH.CSS2D,eH.CSS3D]}})}}}class NH{constructor(t){this.node=t,this._renderers_by_canvas_id={},this._resolution_by_canvas_id={},this._super_sampling_size=new d.a}render(t,e,n,i){if(this.node.pv.doPostProcess?this.node.postProcessController.render(t,e):this.renderWithRenderer(t,i),this._resolved_cssRenderer_rop&&this._resolved_scene&&this.node.pv.setCSSRenderer){const e=this.cssRenderer(t);e&&e.render(this._resolved_scene,this.node.object)}}renderWithRenderer(t,e){const n=this.renderer(t);if(n){const t=this._resolved_scene;t&&n.render(t,this.node.object)}}async update(){this.update_scene(),this.update_renderer(),this.update_cssRenderer()}get resolved_scene(){return this._resolved_scene}update_scene(){if(this.node.pv.setScene){const t=this.node.p.scene;t.isDirty()&&t.find_target();const e=t.found_node_with_context_and_type(ts.OBJ,WV.type());e&&(e.isDirty()&&e.cookController.cookMainWithoutInputs(),this._resolved_scene=e.object)}else this._resolved_scene=this.node.scene().threejsScene()}update_renderer(){if(this.node.pv.setRenderer){const t=this.node.p.renderer;t.isDirty()&&t.find_target(),this._resolved_renderer_rop=t.found_node_with_context_and_type(ts.ROP,eH.WEBGL)}else this._resolved_renderer_rop=void 0}update_cssRenderer(){if(this.node.pv.setCSSRenderer){const t=this.node.p.CSSRenderer;t.isDirty()&&t.find_target(),this._resolved_cssRenderer_rop=t.found_node_with_context_and_type(ts.ROP,[eH.CSS2D,eH.CSS3D])}else this._resolved_cssRenderer_rop,this._resolved_cssRenderer_rop=void 0}renderer(t){return this._renderers_by_canvas_id[t.id]}cssRenderer(t){if(this._resolved_cssRenderer_rop&&this.node.pv.setCSSRenderer)return this._resolved_cssRenderer_rop.renderer(t)}createRenderer(t,e){const n=li.renderersController.createRenderingContext(t);if(!n)return void console.error(\\\\\\\"failed to create webgl context\\\\\\\");let i;return this.node.pv.setRenderer&&(this.update_renderer(),this._resolved_renderer_rop&&(i=this._resolved_renderer_rop.createRenderer(t,n))),i||(i=NH._createDefaultRenderer(t,n)),li.renderersController.registerRenderer(i),this._renderers_by_canvas_id[t.id]=i,this._super_sampling_size.copy(e),this.set_renderer_size(t,this._super_sampling_size),i}static defaultPixelRatio(){return ng.isMobile()?1:Math.max(2,window.devicePixelRatio)}static _createDefaultRenderer(t,e){const n={canvas:t,antialias:!1,alpha:!1,context:e},i=li.renderersController.createWebGLRenderer(n),s=this.defaultPixelRatio();return i.setPixelRatio(s),i.shadowMap.enabled=!0,i.shadowMap.type=AH,i.physicallyCorrectLights=!0,i.toneMapping=pH,i.toneMappingExposure=1,i.outputEncoding=aH,li.renderersController.printDebug()&&(li.renderersController.printDebugMessage(\\\\\\\"create default renderer\\\\\\\"),li.renderersController.printDebugMessage({params:n,pixelRatio:s})),i}deleteRenderer(t){const e=this.renderer(t);e&&li.renderersController.deregisterRenderer(e)}canvas_resolution(t){return this._resolution_by_canvas_id[t.id]}set_renderer_size(t,e){this._resolution_by_canvas_id[t.id]=this._resolution_by_canvas_id[t.id]||new d.a,this._resolution_by_canvas_id[t.id].copy(e);const n=this.renderer(t);if(n){const t=!1;n.setSize(e.x,e.y,t)}if(this._resolved_cssRenderer_rop){const n=this.cssRenderer(t);n&&n.setSize(e.x,e.y)}}}class LH{constructor(t){this.viewer=t,this._active=!1,this._controls=null,this._bound_on_controls_start=this._on_controls_start.bind(this),this._bound_on_controls_end=this._on_controls_end.bind(this),this._update_graph_node()}controls(){return this._controls}async create_controls(){var t;this.dispose_controls();this.viewer.canvas()&&(this._config=await(null===(t=this.viewer.cameraControlsController)||void 0===t?void 0:t.apply_controls(this.viewer)),this._config&&(this._controls=this._config.controls,this._controls&&(this.viewer.active()?(this._controls.addEventListener(\\\\\\\"start\\\\\\\",this._bound_on_controls_start),this._controls.addEventListener(\\\\\\\"end\\\\\\\",this._bound_on_controls_end)):this.dispose_controls())))}update(t){this._config&&this._controls&&this._config.updateRequired()&&this._controls.update(t)}dispose(){var t;null===(t=this._graph_node)||void 0===t||t.graphDisconnectPredecessors(),this.dispose_controls()}dispose_controls(){var t;if(this._controls){const e=this.viewer.canvas();e&&(null===(t=this.viewer)||void 0===t||t.cameraControlsController.dispose_controls(e)),this._bound_on_controls_start&&this._controls.removeEventListener(\\\\\\\"start\\\\\\\",this._bound_on_controls_start),this._bound_on_controls_end&&this._controls.removeEventListener(\\\\\\\"end\\\\\\\",this._bound_on_controls_end),this._controls.dispose(),this._controls=null}}_on_controls_start(){this._active=!0}_on_controls_end(){this._active=!1}_update_graph_node(){const t=this.viewer.cameraNode().p.controls;this._graph_node=this._graph_node||this._create_graph_node(),this._graph_node&&(this._graph_node.graphDisconnectPredecessors(),this._graph_node.addGraphInput(t))}_create_graph_node(){const t=new Mi(this.viewer.cameraNode().scene(),\\\\\\\"viewer-controls\\\\\\\");return t.addPostDirtyHook(\\\\\\\"this.viewer.controls_controller\\\\\\\",(async()=>{await this.create_controls()})),t}}class OH{constructor(t){this._viewer=t,this._size=new d.a(100,100),this._aspect=1}cameraNode(){return this._viewer.cameraNode()}get size(){return this._size}get aspect(){return this._aspect}computeSizeAndAspect(){this._updateSize(),this.cameraNode().scene().uniformsController.updateResolutionDependentUniformOwners(this._size),this._aspect=this._getAspect()}_updateSize(){this._size.x=this._viewer.domElement().offsetWidth,this._size.y=this._viewer.domElement().offsetHeight}_getAspect(){return this._size.x/this._size.y}updateCameraAspect(){this.cameraNode().setupForAspectRatio(this._aspect)}async prepareCurrentCamera(){await this.cameraNode().compute(),await this._updateFromCameraContainer()}async _updateFromCameraContainer(){var t;this.updateCameraAspect(),await(null===(t=this._viewer.controlsController)||void 0===t?void 0:t.create_controls())}}class PH{constructor(t){this.viewer=t}init(){const t=this.viewer.canvas();t&&(t.onwebglcontextlost=this._on_webglcontextlost.bind(this),t.onwebglcontextrestored=this._on_webglcontextrestored.bind(this))}_on_webglcontextlost(){console.warn(\\\\\\\"context lost at frame\\\\\\\",this.viewer.scene().frame()),this.request_animation_frame_id?cancelAnimationFrame(this.request_animation_frame_id):console.warn(\\\\\\\"request_animation_frame_id not initialized\\\\\\\"),console.warn(\\\\\\\"not canceled\\\\\\\",this.request_animation_frame_id)}_on_webglcontextrestored(){console.log(\\\\\\\"context restored\\\\\\\")}}const RH=\\\\\\\"hovered\\\\\\\";class IH{constructor(t,e,n){this._container=t,this._scene=e,this._camera_node=n,this._active=!1,this._id=IH._next_viewer_id++,this._scene.viewersRegister.registerViewer(this)}setRenderObjectOverride(t){console.log(\\\\\\\"setRenderObjectOverride\\\\\\\",t),this._renderObjectOverride=t||void 0}active(){return this._active}activate(){this._active=!0}deactivate(){this._active=!1}get camerasController(){return this._cameras_controller=this._cameras_controller||new OH(this)}get controlsController(){return this._controls_controller}get eventsController(){return this._events_controller=this._events_controller||new Wa(this)}get webglController(){return this._webgl_controller=this._webgl_controller||new PH(this)}domElement(){return this._container}scene(){return this._scene}canvas(){return this._canvas}cameraNode(){return this._camera_node}get cameraControlsController(){}id(){return this._id}dispose(){let t;for(this._scene.viewersRegister.unregisterViewer(this),this.eventsController.dispose();t=this._container.children[0];)this._container.removeChild(t)}resetContainerClass(){this.domElement().classList.remove(RH)}setContainerClassHovered(){this.domElement().classList.add(RH)}registerOnBeforeTick(t,e){this._registerCallback(t,e,this.registeredBeforeTickCallbacks())}unRegisterOnBeforeTick(t){this._unregisterCallback(t,this._onBeforeTickCallbacks)}registeredBeforeTickCallbacks(){return this._onBeforeTickCallbacks=this._onBeforeTickCallbacks||new Map}registerOnAfterTick(t,e){this._registerCallback(t,e,this.registeredAfterTickCallbacks())}unRegisterOnAfterTick(t){this._unregisterCallback(t,this._onAfterTickCallbacks)}registeredAfterTickCallbacks(){return this._onAfterTickCallbacks=this._onAfterTickCallbacks||new Map}registerOnBeforeRender(t,e){this._registerCallback(t,e,this.registeredBeforeRenderCallbacks())}unRegisterOnBeforeRender(t){this._unregisterCallback(t,this._onBeforeRenderCallbacks)}registeredBeforeRenderCallbacks(){return this._onBeforeRenderCallbacks=this._onBeforeRenderCallbacks||new Map}registerOnAfterRender(t,e){this._registerCallback(t,e,this.registeredAfterRenderCallbacks())}unRegisterOnAfterRender(t){this._unregisterCallback(t,this._onAfterRenderCallbacks)}registeredAfterRenderCallbacks(){return this._onAfterRenderCallbacks=this._onAfterRenderCallbacks||new Map}_registerCallback(t,e,n){n.has(t)?console.warn(`callback ${t} already registered`):n.set(t,e)}_unregisterCallback(t,e){e&&e.delete(t)}}IH._next_viewer_id=0;class FH extends IH{constructor(t,e,n,i){super(t,e,n),this._scene=e,this._camera_node=n,this._properties=i,this._do_render=!0,this._clock=new Dm,this._delta=0,this._animate_method=this.animate.bind(this),this._onResizeBound=this.onResize.bind(this),this._do_render=null==this._properties||this._properties.autoRender,this._canvas=document.createElement(\\\\\\\"canvas\\\\\\\"),this._canvas.id=`canvas_id_${Math.random()}`.replace(\\\\\\\".\\\\\\\",\\\\\\\"_\\\\\\\"),this._canvas.style.display=\\\\\\\"block\\\\\\\",this._canvas.style.outline=\\\\\\\"none\\\\\\\",this._container.appendChild(this._canvas),this._container.classList.add(\\\\\\\"CoreThreejsViewer\\\\\\\"),this._build(),this._setEvents()}get controlsController(){return this._controls_controller=this._controls_controller||new LH(this)}_build(){this._init_display(),this.activate()}dispose(){this._cancel_animate(),this.controlsController.dispose(),this._disposeEvents(),super.dispose()}get cameraControlsController(){return this._camera_node.controls_controller}_setEvents(){this.eventsController.init(),this.webglController.init(),window.addEventListener(\\\\\\\"resize\\\\\\\",this._onResizeBound.bind(this),!1)}_disposeEvents(){window.removeEventListener(\\\\\\\"resize\\\\\\\",this._onResizeBound.bind(this),!1)}onResize(){const t=this.canvas();t&&(this.camerasController.computeSizeAndAspect(),this._camera_node.renderController.set_renderer_size(t,this.camerasController.size),this.camerasController.updateCameraAspect())}_init_display(){if(!this._canvas)return void console.warn(\\\\\\\"no canvas found for viewer\\\\\\\");this.camerasController.computeSizeAndAspect();const t=this.camerasController.size;this._camera_node.renderController.createRenderer(this._canvas,t),this.camerasController.prepareCurrentCamera(),this.animate()}setAutoRender(t=!0){this._do_render=t,this._do_render&&this.animate()}animate(){var t,e,n;this._do_render&&(this._delta=this._clock.getDelta(),this._request_animation_frame_id=requestAnimationFrame(this._animate_method),null===(t=this._onBeforeTickCallbacks)||void 0===t||t.forEach((t=>t(this._delta))),this._scene.timeController.incrementTimeIfPlaying(this._delta),null===(e=this._onAfterTickCallbacks)||void 0===e||e.forEach((t=>t(this._delta))),this.render(this._delta),null===(n=this._controls_controller)||void 0===n||n.update(this._delta))}_cancel_animate(){this._do_render=!1,this._request_animation_frame_id&&cancelAnimationFrame(this._request_animation_frame_id),this._canvas&&this._camera_node.renderController.deleteRenderer(this._canvas)}render(t){var e,n;if(this.camerasController.cameraNode()&&this._canvas){null===(e=this._onBeforeRenderCallbacks)||void 0===e||e.forEach((e=>e(t)));const i=this.camerasController.size,s=this.camerasController.aspect;this._camera_node.renderController.render(this._canvas,i,s,this._renderObjectOverride),null===(n=this._onAfterRenderCallbacks)||void 0===n||n.forEach((e=>e(t)))}else console.warn(\\\\\\\"no camera to render with\\\\\\\")}renderer(){if(this._canvas)return this._camera_node.renderController.renderer(this._canvas)}}const DH={type:\\\\\\\"change\\\\\\\"},BH=1,zH=100;var kH;!function(t){t.ON_END=\\\\\\\"on move end\\\\\\\",t.ALWAYS=\\\\\\\"always\\\\\\\",t.NEVER=\\\\\\\"never\\\\\\\"}(kH||(kH={}));const UH=[kH.ON_END,kH.ALWAYS,kH.NEVER];function GH(t){return class extends t{constructor(){super(...arguments),this.setMainCamera=ha.BUTTON(null,{callback:(t,e)=>{YH.PARAM_CALLBACK_setMasterCamera(t)}})}}}function VH(t){return class extends t{constructor(){super(...arguments),this.camera=ha.FOLDER(),this.controls=ha.NODE_PATH(\\\\\\\"\\\\\\\",{nodeSelection:{context:ts.EVENT}}),this.updateFromControlsMode=ha.INTEGER(UH.indexOf(kH.ON_END),{menu:{entries:UH.map(((t,e)=>({name:t,value:e})))}}),this.near=ha.FLOAT(BH,{range:[0,100],cook:!1,computeOnDirty:!0,callback:(t,e)=>{$H.PARAM_CALLBACK_update_near_far_from_param(t,e)}}),this.far=ha.FLOAT(zH,{range:[0,100],cook:!1,computeOnDirty:!0,callback:(t,e)=>{$H.PARAM_CALLBACK_update_near_far_from_param(t,e)}}),this.display=ha.BOOLEAN(1),this.showHelper=ha.BOOLEAN(0)}}}var HH;!function(t){t.DEFAULT=\\\\\\\"default\\\\\\\",t.COVER=\\\\\\\"cover\\\\\\\",t.CONTAIN=\\\\\\\"contain\\\\\\\"}(HH||(HH={}));const jH=[HH.DEFAULT,HH.COVER,HH.CONTAIN];function WH(t){return class extends t{constructor(){super(...arguments),this.fovAdjustMode=ha.INTEGER(jH.indexOf(HH.DEFAULT),{menu:{entries:jH.map(((t,e)=>({name:t,value:e})))}}),this.expectedAspectRatio=ha.FLOAT(\\\\\\\"16/9\\\\\\\",{visibleIf:[{fovAdjustMode:jH.indexOf(HH.COVER)},{fovAdjustMode:jH.indexOf(HH.CONTAIN)}],range:[0,2],rangeLocked:[!0,!1]})}}}GH(ua);KV(CH(wU($V(VH(GH(ua))))));class qH extends cU{constructor(){super(...arguments),this.renderOrder=lU.CAMERA,this._aspect=-1}get object(){return this._object}async cook(){this.updateCamera(),this._object.dispatchEvent(DH),this.cookController.endCook()}on_create(){}on_delete(){}prepareRaycaster(t,e){}camera(){return this._object}updateCamera(){}static PARAM_CALLBACK_setMasterCamera(t){t.set_as_master_camera()}set_as_master_camera(){this.scene().camerasController.setMainCameraNodePath(this.path())}setupForAspectRatio(t){}_updateForAspectRatio(){}update_transform_params_from_object(){bU.setParamsFromObject(this._object,this)}static PARAM_CALLBACK_update_from_param(t,e){t.object[e.name()]=t.pv[e.name()]}}class XH extends qH{constructor(){super(...arguments),this.flags=new Di(this),this.hierarchyController=new MU(this),this.transformController=new AU(this),this.childrenDisplayController=new kG(this),this.displayNodeController=new Fm(this,this.childrenDisplayController.displayNodeControllerCallbacks()),this._children_controller_context=ts.SOP}get controls_controller(){return this._controls_controller=this._controls_controller||new YV(this)}get layers_controller(){return this._layers_controller=this._layers_controller||new JV(this)}get renderController(){return this._render_controller=this._render_controller||new NH(this)}get postProcessController(){return this._post_process_controller=this._post_process_controller||new QV(this)}initializeBaseNode(){super.initializeBaseNode(),this.io.outputs.setHasOneOutput(),this.hierarchyController.initializeNode(),this.transformController.initializeNode(),this.childrenDisplayController.initializeNode(),this.initHelperHook()}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}prepareRaycaster(t,e){e.setFromCamera(t,this._object)}async cook(){this.transformController.update(),this.layers_controller.update(),this.updateNearFar(),this.renderController.update(),this.updateCamera(),this._updateHelper(),this.controls_controller.update_controls(),this._object.dispatchEvent(DH),this.cookController.endCook()}static PARAM_CALLBACK_update_near_far_from_param(t,e){t.updateNearFar()}updateNearFar(){this._object.near==this.pv.near&&this._object.far==this.pv.far||(this._object.near=this.pv.near,this._object.far=this.pv.far,this._object.updateProjectionMatrix(),this._updateHelper())}setupForAspectRatio(t){m.isNaN(t)||t&&this._aspect!=t&&(this._aspect=t,this._updateForAspectRatio())}createViewer(t,e){return new FH(t,this.scene(),this,e)}static PARAM_CALLBACK_reset_effects_composer(t){t.postProcessController.reset()}initHelperHook(){this.flags.display.onUpdate((()=>{this._updateHelper()}))}helperVisible(){return this.flags.display.active()&&this.pv.showHelper}_createHelper(){const t=new zU(this.object);return t.update(),t}_updateHelper(){this.helperVisible()?(this._helper||(this._helper=this._createHelper()),this._helper&&(this.object.add(this._helper),this._helper.update())):this._helper&&this.object.remove(this._helper)}}class YH extends qH{}class $H extends XH{PARAM_CALLBACK_update_effects_composer(t){}}const JH=-.5,ZH=.5,KH=.5,QH=-.5;class tj extends(KV(CH($V(GH(WH(function(t){return class extends t{constructor(){super(...arguments),this.size=ha.FLOAT(1)}}}(VH(wU(ua,{matrixAutoUpdate:!0}))))))))){}const ej=new tj;class nj extends XH{constructor(){super(...arguments),this.paramsConfig=ej}static type(){return is.ORTHOGRAPHIC}createObject(){return new ot.a(2*JH,2*ZH,2*KH,2*QH,BH,zH)}updateCamera(){this._updateForAspectRatio()}_updateForAspectRatio(){this._aspect&&(this._adjustFOVFromMode(),this._object.updateProjectionMatrix())}_adjustFOVFromMode(){const t=jH[this.pv.fovAdjustMode];switch(t){case HH.DEFAULT:return this._adjustFOVFromModeDefault();case HH.COVER:return this._adjustFOVFromModeCover();case HH.CONTAIN:return this._adjustFOVFromModeContain()}os.unreachable(t)}_adjustFOVFromModeDefault(){this._adjustFOVFromSize(this.pv.size||1)}_adjustFOVFromModeCover(){const t=this.pv.size||1;this._aspect>this.pv.expectedAspectRatio?this._adjustFOVFromSize(this.pv.expectedAspectRatio*t/this._aspect):this._adjustFOVFromSize(t)}_adjustFOVFromModeContain(){const t=this.pv.size||1;this._aspect>this.pv.expectedAspectRatio?this._adjustFOVFromSize(t):this._adjustFOVFromSize(this.pv.expectedAspectRatio*t/this._aspect)}_adjustFOVFromSize(t){const e=t*this._aspect;this._object.left=JH*e*1,this._object.right=ZH*e*1,this._object.top=KH*t*1,this._object.bottom=QH*t*1}}const ij=50;class sj extends(KV(CH($V(GH(WH(function(t){return class extends t{constructor(){super(...arguments),this.fov=ha.FLOAT(ij,{range:[0,100]})}}}(VH(wU(ua,{matrixAutoUpdate:!0}))))))))){}const rj=new sj;class oj extends XH{constructor(){super(...arguments),this.paramsConfig=rj}static type(){return is.PERSPECTIVE}createObject(){return new tt.a(ij,1,BH,zH)}updateCamera(){this._object.fov!=this.pv.fov&&(this._object.fov=this.pv.fov,this._object.updateProjectionMatrix()),this._updateForAspectRatio()}_updateForAspectRatio(){this._aspect&&(this._object.aspect=this._aspect,this._adjustFOVFromMode(),this._object.updateProjectionMatrix())}_adjustFOVFromMode(){const t=jH[this.pv.fovAdjustMode];switch(t){case HH.DEFAULT:return this._adjustFOVFromModeDefault();case HH.COVER:return this._adjustFOVFromModeCover();case HH.CONTAIN:return this._adjustFOVFromModeContain()}os.unreachable(t)}_adjustFOVFromModeDefault(){this._object.fov=this.pv.fov}_adjustFOVFromModeCover(){if(this._object.aspect>this.pv.expectedAspectRatio){const t=Math.tan(Object(On.e)(this.pv.fov/2))/(this._object.aspect/this.pv.expectedAspectRatio);this._object.fov=2*Object(On.k)(Math.atan(t))}else this._object.fov=this.pv.fov}_adjustFOVFromModeContain(){if(this._object.aspect>this.pv.expectedAspectRatio)this._object.fov=this.pv.fov;else{const t=Math.tan(Object(On.e)(this.pv.fov/2))/(this._object.aspect/this.pv.expectedAspectRatio);this._object.fov=2*Object(On.k)(Math.atan(t))}}}class aj extends(function(t){return class extends t{constructor(){super(...arguments),this.main=ha.FOLDER(),this.resolution=ha.INTEGER(256),this.excludedObjects=ha.STRING(\\\\\\\"*`$OS`\\\\\\\"),this.printResolve=ha.BUTTON(null,{callback:t=>{cj.PARAM_CALLBACK_printResolve(t)}}),this.near=ha.FLOAT(1),this.far=ha.FLOAT(100),this.render=ha.BUTTON(null,{callback:t=>{cj.PARAM_CALLBACK_render(t)}}),this.renderTarget=ha.FOLDER(),this.tencoding=ha.BOOLEAN(0),this.encoding=ha.INTEGER(w.ld,{visibleIf:{tencoding:1},menu:{entries:og.map((t=>({name:Object.keys(t)[0],value:Object.values(t)[0]})))}}),this.tminFilter=ha.BOOLEAN(0),this.minFilter=ha.INTEGER(Km,{visibleIf:{tminFilter:1},menu:{entries:tf}}),this.tmagFilter=ha.BOOLEAN(0),this.magFilter=ha.INTEGER(Zm,{visibleIf:{tmagFilter:1},menu:{entries:Qm}})}}}(wU(ua))){}const lj=new aj;class cj extends cU{constructor(){super(...arguments),this.paramsConfig=lj,this.hierarchyController=new MU(this),this.transformController=new AU(this),this.flags=new Di(this),this._excludedObjects=[],this._previousVisibleStateByUuid=new Map,this._helper=new TG(1)}static type(){return Ig.CUBE_CAMERA}initializeNode(){this.hierarchyController.initializeNode(),this.transformController.initializeNode(),this._updateHelperHierarchy(),this._helper.matrixAutoUpdate=!1,this.flags.display.onUpdate((()=>{this._updateHelperHierarchy()})),this.io.inputs.setCount(0,1)}createObject(){const t=new Fn.a;return t.matrixAutoUpdate=!0,t}cook(){this.transformController.update(),this._resolveObjects();const t=this._setupCubeCamera();this._cubeCamera&&!t||this._createCubeCamera(),this.cookController.endCook()}_updateHelperHierarchy(){this.flags.display.active()?this.object.add(this._helper):this.object.remove(this._helper)}_setupCubeCamera(){let t=!1;if(this._cubeCamera){const e=this._cubeCamera.children[0],n=e.near,i=e.far,s=this._cubeCamera.renderTarget.width;n==this.pv.near&&i==this.pv.far&&s==this.pv.resolution||(t=!0),t&&this.object.remove(this._cubeCamera)}return t}_createCubeCamera(){const t=new st(this.pv.resolution,{encoding:this.pv.tencoding?this.pv.encoding:w.ld,minFilter:this.pv.tminFilter?this.pv.minFilter:void 0,magFilter:this.pv.tmagFilter?this.pv.magFilter:void 0});this._cubeCamera=new nt(this.pv.near,this.pv.far,t),this._cubeCamera.matrixAutoUpdate=!0,this.object.add(this._cubeCamera)}renderTarget(){if(this._cubeCamera)return this._cubeCamera.renderTarget}render(){const t=li.renderersController.firstRenderer();if(t)if(this._cubeCamera){for(let t of this._excludedObjects)this._previousVisibleStateByUuid.set(t.uuid,t.visible),t.visible=!1;this._cubeCamera.update(t,this.scene().threejsScene());for(let t of this._excludedObjects){const e=this._previousVisibleStateByUuid.get(t.uuid);e&&(t.visible=e)}this._previousVisibleStateByUuid.clear()}else console.warn(`no cubeCamera for ${this.path()}`);else console.warn(`no renderer found for ${this.path()}`)}_resolveObjects(){const t=this.scene().objectsByMask(this.pv.excludedObjects),e=new Map;for(let n of t)e.set(n.uuid,n);this._excludedObjects=[];for(let n of t){const t=n.parent;t&&(e.get(t.uuid)||this._excludedObjects.push(n))}}static PARAM_CALLBACK_printResolve(t){t.param_callback_printResolve()}param_callback_printResolve(){this._resolveObjects(),console.log(this._excludedObjects)}static PARAM_CALLBACK_render(t){t.param_callback_render()}param_callback_render(){this.render()}}class hj extends cU{constructor(){super(...arguments),this._attachableToHierarchy=!1}createObject(){const t=new Fn.a;return t.matrixAutoUpdate=!1,t}cook(){this.cookController.endCook()}}class uj extends hj{}class dj extends uj{constructor(){super(...arguments),this._children_controller_context=ts.ANIM}static type(){return es.ANIM}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class pj extends dj{constructor(){super(...arguments),this.renderOrder=lU.MANAGER}}class _j extends uj{constructor(){super(...arguments),this._children_controller_context=ts.COP}static type(){return es.COP}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class mj extends uj{constructor(){super(...arguments),this.renderOrder=lU.MANAGER,this._children_controller_context=ts.EVENT}static type(){return es.EVENT}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class fj extends uj{constructor(){super(...arguments),this.renderOrder=lU.MANAGER,this._children_controller_context=ts.MAT}static type(){return es.MAT}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class gj extends hj{constructor(){super(...arguments),this.paramsConfig=new ef,this.effectsComposerController=new nf(this),this.displayNodeController=new Fm(this,this.effectsComposerController.displayNodeControllerCallbacks()),this._children_controller_context=ts.POST}static type(){return es.POST}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class vj extends uj{constructor(){super(...arguments),this.renderOrder=lU.MANAGER,this._children_controller_context=ts.ROP}static type(){return es.ROP}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}const yj=[\\\\\\\"input pass\\\\\\\"];const xj={cook:!1,callback:function(t,e){bj.PARAM_CALLBACK_updatePasses(t)},computeOnDirty:!0};class bj extends aa{constructor(){super(...arguments),this.flags=new zi(this),this._passes_by_requester_id=new Map,this._update_pass_bound=this.updatePass.bind(this)}static context(){return ts.POST}static displayedInputNames(){return yj}initializeNode(){this.flags.display.set(!1),this.flags.display.onUpdate((()=>{if(this.flags.display.active()){const t=this.parent();t&&t.displayNodeController&&t.displayNodeController.setDisplayNode(this)}})),this.io.inputs.setCount(0,1),this.io.outputs.setHasOneOutput()}cook(){this.cookController.endCook()}setupComposer(t){if(this._addPassFromInput(0,t),!this.flags.bypass.active()){let e=this._passes_by_requester_id.get(t.requester.graphNodeId());e||(e=this._createPass(t),e&&this._passes_by_requester_id.set(t.requester.graphNodeId(),e)),e&&t.composer.addPass(e)}}_addPassFromInput(t,e){const n=this.io.inputs.input(t);n&&n.setupComposer(e)}_createPass(t){}static PARAM_CALLBACK_updatePasses(t){t._updatePasses()}_updatePasses(){this._passes_by_requester_id.forEach(this._update_pass_bound)}updatePass(t){}}const wj={uniforms:{tDiffuse:{value:null}},vertexShader:\\\\\\\"\\\\n\\\\n\\\\t\\\\tvarying vec2 vUv;\\\\n\\\\n\\\\t\\\\tvoid main() {\\\\n\\\\n\\\\t\\\\t\\\\tvUv = uv;\\\\n\\\\n\\\\t\\\\t\\\\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\\\\n\\\\n\\\\t\\\\t}\\\\\\\",fragmentShader:\\\\\\\"\\\\n\\\\n\\\\t\\\\t#include <common>\\\\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\\\\n\\\\t\\\\t\\\\tfloat l = linearToRelativeLuminance( texel.rgb );\\\\n\\\\n\\\\t\\\\t\\\\tgl_FragColor = vec4( l, l, l, texel.w );\\\\n\\\\n\\\\t\\\\t}\\\\\\\"};var Tj={uniforms:{tDiffuse:{value:null},averageLuminance:{value:1},luminanceMap:{value:null},maxLuminance:{value:16},minLuminance:{value:.01},middleGrey:{value:.6}},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\\\\t#include <common>\\\\n\\\\n\\\\t\\\\tuniform sampler2D tDiffuse;\\\\n\\\\n\\\\t\\\\tvarying vec2 vUv;\\\\n\\\\n\\\\t\\\\tuniform float middleGrey;\\\\n\\\\t\\\\tuniform float minLuminance;\\\\n\\\\t\\\\tuniform float maxLuminance;\\\\n\\\\t\\\\t#ifdef ADAPTED_LUMINANCE\\\\n\\\\t\\\\t\\\\tuniform sampler2D luminanceMap;\\\\n\\\\t\\\\t#else\\\\n\\\\t\\\\t\\\\tuniform float averageLuminance;\\\\n\\\\t\\\\t#endif\\\\n\\\\n\\\\t\\\\tvec3 ToneMap( vec3 vColor ) {\\\\n\\\\t\\\\t\\\\t#ifdef ADAPTED_LUMINANCE\\\\n\\\\t\\\\t\\\\t\\\\t// Get the calculated average luminance\\\\n\\\\t\\\\t\\\\t\\\\tfloat fLumAvg = texture2D(luminanceMap, vec2(0.5, 0.5)).r;\\\\n\\\\t\\\\t\\\\t#else\\\\n\\\\t\\\\t\\\\t\\\\tfloat fLumAvg = averageLuminance;\\\\n\\\\t\\\\t\\\\t#endif\\\\n\\\\n\\\\t\\\\t\\\\t// Calculate the luminance of the current pixel\\\\n\\\\t\\\\t\\\\tfloat fLumPixel = linearToRelativeLuminance( vColor );\\\\n\\\\n\\\\t\\\\t\\\\t// Apply the modified operator (Eq. 4)\\\\n\\\\t\\\\t\\\\tfloat fLumScaled = (fLumPixel * middleGrey) / max( minLuminance, fLumAvg );\\\\n\\\\n\\\\t\\\\t\\\\tfloat fLumCompressed = (fLumScaled * (1.0 + (fLumScaled / (maxLuminance * maxLuminance)))) / (1.0 + fLumScaled);\\\\n\\\\t\\\\t\\\\treturn fLumCompressed * vColor;\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\tvoid main() {\\\\n\\\\n\\\\t\\\\t\\\\tvec4 texel = texture2D( tDiffuse, vUv );\\\\n\\\\n\\\\t\\\\t\\\\tgl_FragColor = vec4( ToneMap( texel.xyz ), texel.w );\\\\n\\\\n\\\\t\\\\t}\\\\\\\"};class Aj extends km{constructor(t,e){super(),this.resolution=void 0!==e?e:256,this.needsInit=!0,this.adaptive=void 0===t||!!t,this.luminanceRT=null,this.previousLuminanceRT=null,this.currentLuminanceRT=null,void 0===zm&&console.error(\\\\\\\"THREE.AdaptiveToneMappingPass relies on CopyShader\\\\\\\");const n=zm;this.copyUniforms=I.clone(n.uniforms),this.materialCopy=new F({uniforms:this.copyUniforms,vertexShader:n.vertexShader,fragmentShader:n.fragmentShader,blending:w.ub,depthTest:!1}),void 0===wj&&console.error(\\\\\\\"THREE.AdaptiveToneMappingPass relies on LuminosityShader\\\\\\\"),this.materialLuminance=new F({uniforms:I.clone(wj.uniforms),vertexShader:wj.vertexShader,fragmentShader:wj.fragmentShader,blending:w.ub}),this.adaptLuminanceShader={defines:{MIP_LEVEL_1X1:(Math.log(this.resolution)/Math.log(2)).toFixed(1)},uniforms:{lastLum:{value:null},currentLum:{value:null},minLuminance:{value:.01},delta:{value:.016},tau:{value:1}},vertexShader:\\\\\\\"varying vec2 vUv;\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tvoid main() {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tvUv = uv;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t}\\\\\\\",fragmentShader:\\\\\\\"varying vec2 vUv;\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tuniform sampler2D lastLum;\\\\n\\\\t\\\\t\\\\t\\\\tuniform sampler2D currentLum;\\\\n\\\\t\\\\t\\\\t\\\\tuniform float minLuminance;\\\\n\\\\t\\\\t\\\\t\\\\tuniform float delta;\\\\n\\\\t\\\\t\\\\t\\\\tuniform float tau;\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tvoid main() {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tvec4 lastLum = texture2D( lastLum, vUv, MIP_LEVEL_1X1 );\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tvec4 currentLum = texture2D( currentLum, vUv, MIP_LEVEL_1X1 );\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tfloat fLastLum = max( minLuminance, lastLum.r );\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tfloat fCurrentLum = max( minLuminance, currentLum.r );\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t//The adaption seems to work better in extreme lighting differences\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t//if the input luminance is squared.\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tfCurrentLum *= fCurrentLum;\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t// Adapt the luminance using Pattanaik's technique\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tfloat fAdaptedLum = fLastLum + (fCurrentLum - fLastLum) * (1.0 - exp(-delta * tau));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t// \\\\\\\\\\\"fAdaptedLum = sqrt(fAdaptedLum);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tgl_FragColor.r = fAdaptedLum;\\\\n\\\\t\\\\t\\\\t\\\\t}\\\\\\\"},this.materialAdaptiveLum=new F({uniforms:I.clone(this.adaptLuminanceShader.uniforms),vertexShader:this.adaptLuminanceShader.vertexShader,fragmentShader:this.adaptLuminanceShader.fragmentShader,defines:Object.assign({},this.adaptLuminanceShader.defines),blending:w.ub}),void 0===Tj&&console.error(\\\\\\\"THREE.AdaptiveToneMappingPass relies on ToneMapShader\\\\\\\"),this.materialToneMap=new F({uniforms:I.clone(Tj.uniforms),vertexShader:Tj.vertexShader,fragmentShader:Tj.fragmentShader,blending:w.ub}),this.fsQuad=new Vm(null)}render(t,e,n,i){this.needsInit&&(this.reset(t),this.luminanceRT.texture.type=n.texture.type,this.previousLuminanceRT.texture.type=n.texture.type,this.currentLuminanceRT.texture.type=n.texture.type,this.needsInit=!1),this.adaptive&&(this.fsQuad.material=this.materialLuminance,this.materialLuminance.uniforms.tDiffuse.value=n.texture,t.setRenderTarget(this.currentLuminanceRT),this.fsQuad.render(t),this.fsQuad.material=this.materialAdaptiveLum,this.materialAdaptiveLum.uniforms.delta.value=i,this.materialAdaptiveLum.uniforms.lastLum.value=this.previousLuminanceRT.texture,this.materialAdaptiveLum.uniforms.currentLum.value=this.currentLuminanceRT.texture,t.setRenderTarget(this.luminanceRT),this.fsQuad.render(t),this.fsQuad.material=this.materialCopy,this.copyUniforms.tDiffuse.value=this.luminanceRT.texture,t.setRenderTarget(this.previousLuminanceRT),this.fsQuad.render(t)),this.fsQuad.material=this.materialToneMap,this.materialToneMap.uniforms.tDiffuse.value=n.texture,this.renderToScreen?(t.setRenderTarget(null),this.fsQuad.render(t)):(t.setRenderTarget(e),this.clear&&t.clear(),this.fsQuad.render(t))}reset(){this.luminanceRT&&this.luminanceRT.dispose(),this.currentLuminanceRT&&this.currentLuminanceRT.dispose(),this.previousLuminanceRT&&this.previousLuminanceRT.dispose();const t={minFilter:w.V,magFilter:w.V,format:w.Ib};this.luminanceRT=new K(this.resolution,this.resolution,t),this.luminanceRT.texture.name=\\\\\\\"AdaptiveToneMappingPass.l\\\\\\\",this.luminanceRT.texture.generateMipmaps=!1,this.previousLuminanceRT=new K(this.resolution,this.resolution,t),this.previousLuminanceRT.texture.name=\\\\\\\"AdaptiveToneMappingPass.pl\\\\\\\",this.previousLuminanceRT.texture.generateMipmaps=!1,t.minFilter=w.Y,t.generateMipmaps=!0,this.currentLuminanceRT=new K(this.resolution,this.resolution,t),this.currentLuminanceRT.texture.name=\\\\\\\"AdaptiveToneMappingPass.cl\\\\\\\",this.adaptive&&(this.materialToneMap.defines.ADAPTED_LUMINANCE=\\\\\\\"\\\\\\\",this.materialToneMap.uniforms.luminanceMap.value=this.luminanceRT.texture),this.fsQuad.material=new lt.a({color:7829367}),this.materialLuminance.needsUpdate=!0,this.materialAdaptiveLum.needsUpdate=!0,this.materialToneMap.needsUpdate=!0}setAdaptive(t){t?(this.adaptive=!0,this.materialToneMap.defines.ADAPTED_LUMINANCE=\\\\\\\"\\\\\\\",this.materialToneMap.uniforms.luminanceMap.value=this.luminanceRT.texture):(this.adaptive=!1,delete this.materialToneMap.defines.ADAPTED_LUMINANCE,this.materialToneMap.uniforms.luminanceMap.value=null),this.materialToneMap.needsUpdate=!0}setAdaptionRate(t){t&&(this.materialAdaptiveLum.uniforms.tau.value=Math.abs(t))}setMinLuminance(t){t&&(this.materialToneMap.uniforms.minLuminance.value=t,this.materialAdaptiveLum.uniforms.minLuminance.value=t)}setMaxLuminance(t){t&&(this.materialToneMap.uniforms.maxLuminance.value=t)}setAverageLuminance(t){t&&(this.materialToneMap.uniforms.averageLuminance.value=t)}setMiddleGrey(t){t&&(this.materialToneMap.uniforms.middleGrey.value=t)}dispose(){this.luminanceRT&&this.luminanceRT.dispose(),this.previousLuminanceRT&&this.previousLuminanceRT.dispose(),this.currentLuminanceRT&&this.currentLuminanceRT.dispose(),this.materialLuminance&&this.materialLuminance.dispose(),this.materialAdaptiveLum&&this.materialAdaptiveLum.dispose(),this.materialCopy&&this.materialCopy.dispose(),this.materialToneMap&&this.materialToneMap.dispose()}}const Mj=new class extends ua{constructor(){super(...arguments),this.adaptive=ha.BOOLEAN(1,{...xj}),this.averageLuminance=ha.FLOAT(.7,{...xj}),this.midGrey=ha.FLOAT(.04,{...xj}),this.maxLuminance=ha.FLOAT(16,{range:[0,20],...xj}),this.adaptiveRange=ha.FLOAT(2,{range:[0,10],...xj})}};class Ej extends bj{constructor(){super(...arguments),this.paramsConfig=Mj}static type(){return\\\\\\\"adaptiveToneMapping\\\\\\\"}_createPass(t){const e=new Aj(this.pv.adaptive,t.resolution.x);return this.updatePass(e),e}updatePass(t){t.setMaxLuminance(this.pv.maxLuminance),t.setMiddleGrey(this.pv.midGrey),t.setAverageLuminance(this.pv.averageLuminance)}}const Sj={uniforms:{damp:{value:.96},tOld:{value:null},tNew:{value:null}},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 damp;\\\\n\\\\n\\\\t\\\\tuniform sampler2D tOld;\\\\n\\\\t\\\\tuniform sampler2D tNew;\\\\n\\\\n\\\\t\\\\tvarying vec2 vUv;\\\\n\\\\n\\\\t\\\\tvec4 when_gt( vec4 x, float y ) {\\\\n\\\\n\\\\t\\\\t\\\\treturn max( sign( x - y ), 0.0 );\\\\n\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\tvoid main() {\\\\n\\\\n\\\\t\\\\t\\\\tvec4 texelOld = texture2D( tOld, vUv );\\\\n\\\\t\\\\t\\\\tvec4 texelNew = texture2D( tNew, vUv );\\\\n\\\\n\\\\t\\\\t\\\\ttexelOld *= damp * when_gt( texelOld, 0.1 );\\\\n\\\\n\\\\t\\\\t\\\\tgl_FragColor = max(texelNew, texelOld);\\\\n\\\\n\\\\t\\\\t}\\\\\\\"};class Cj extends km{constructor(t=.96){super(),void 0===Sj&&console.error(\\\\\\\"THREE.AfterimagePass relies on AfterimageShader\\\\\\\"),this.shader=Sj,this.uniforms=I.clone(this.shader.uniforms),this.uniforms.damp.value=t,this.textureComp=new K(window.innerWidth,window.innerHeight,{minFilter:w.V,magFilter:w.ob,format:w.Ib}),this.textureOld=new K(window.innerWidth,window.innerHeight,{minFilter:w.V,magFilter:w.ob,format:w.Ib}),this.shaderMaterial=new F({uniforms:this.uniforms,vertexShader:this.shader.vertexShader,fragmentShader:this.shader.fragmentShader}),this.compFsQuad=new Vm(this.shaderMaterial);const e=new lt.a;this.copyFsQuad=new Vm(e)}render(t,e,n){this.uniforms.tOld.value=this.textureOld.texture,this.uniforms.tNew.value=n.texture,t.setRenderTarget(this.textureComp),this.compFsQuad.render(t),this.copyFsQuad.material.map=this.textureComp.texture,this.renderToScreen?(t.setRenderTarget(null),this.copyFsQuad.render(t)):(t.setRenderTarget(e),this.clear&&t.clear(),this.copyFsQuad.render(t));const i=this.textureOld;this.textureOld=this.textureComp,this.textureComp=i}setSize(t,e){this.textureComp.setSize(t,e),this.textureOld.setSize(t,e)}}const Nj=new class extends ua{constructor(){super(...arguments),this.damp=ha.FLOAT(.96,{range:[0,1],rangeLocked:[!0,!0],...xj})}};class Lj extends bj{constructor(){super(...arguments),this.paramsConfig=Nj}static type(){return\\\\\\\"afterImage\\\\\\\"}_createPass(t){const e=new Cj;return this.updatePass(e),e}updatePass(t){t.uniforms.damp.value=this.pv.damp}}const Oj={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 base = texture2D( tDiffuse, vUv );\\\\n\\\\n\\\\t\\\\t\\\\tvec3 lumCoeff = vec3( 0.25, 0.65, 0.1 );\\\\n\\\\t\\\\t\\\\tfloat lum = dot( lumCoeff, base.rgb );\\\\n\\\\t\\\\t\\\\tvec3 blend = vec3( lum );\\\\n\\\\n\\\\t\\\\t\\\\tfloat L = min( 1.0, max( 0.0, 10.0 * ( lum - 0.45 ) ) );\\\\n\\\\n\\\\t\\\\t\\\\tvec3 result1 = 2.0 * base.rgb * blend;\\\\n\\\\t\\\\t\\\\tvec3 result2 = 1.0 - 2.0 * ( 1.0 - blend ) * ( 1.0 - base.rgb );\\\\n\\\\n\\\\t\\\\t\\\\tvec3 newColor = mix( result1, result2, L );\\\\n\\\\n\\\\t\\\\t\\\\tfloat A2 = opacity * base.a;\\\\n\\\\t\\\\t\\\\tvec3 mixRGB = A2 * newColor.rgb;\\\\n\\\\t\\\\t\\\\tmixRGB += ( ( 1.0 - A2 ) * base.rgb );\\\\n\\\\n\\\\t\\\\t\\\\tgl_FragColor = vec4( mixRGB, base.a );\\\\n\\\\n\\\\t\\\\t}\\\\\\\"};const Pj=new class extends ua{constructor(){super(...arguments),this.opacity=ha.FLOAT(.95,{range:[-5,5],rangeLocked:[!0,!0],...xj})}};class Rj extends bj{constructor(){super(...arguments),this.paramsConfig=Pj}static type(){return\\\\\\\"bleach\\\\\\\"}_createPass(t){const e=new Hm(Oj);return this.updatePass(e),e}updatePass(t){t.uniforms.opacity.value=this.pv.opacity}}const Ij={uniforms:{tDiffuse:{value:null},brightness:{value:0},contrast:{value:0}},vertexShader:\\\\\\\"\\\\n\\\\n\\\\t\\\\tvarying vec2 vUv;\\\\n\\\\n\\\\t\\\\tvoid main() {\\\\n\\\\n\\\\t\\\\t\\\\tvUv = uv;\\\\n\\\\n\\\\t\\\\t\\\\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\\\\n\\\\n\\\\t\\\\t}\\\\\\\",fragmentShader:\\\\\\\"\\\\n\\\\n\\\\t\\\\tuniform sampler2D tDiffuse;\\\\n\\\\t\\\\tuniform float brightness;\\\\n\\\\t\\\\tuniform float contrast;\\\\n\\\\n\\\\t\\\\tvarying vec2 vUv;\\\\n\\\\n\\\\t\\\\tvoid main() {\\\\n\\\\n\\\\t\\\\t\\\\tgl_FragColor = texture2D( tDiffuse, vUv );\\\\n\\\\n\\\\t\\\\t\\\\tgl_FragColor.rgb += brightness;\\\\n\\\\n\\\\t\\\\t\\\\tif (contrast > 0.0) {\\\\n\\\\t\\\\t\\\\t\\\\tgl_FragColor.rgb = (gl_FragColor.rgb - 0.5) / (1.0 - contrast) + 0.5;\\\\n\\\\t\\\\t\\\\t} else {\\\\n\\\\t\\\\t\\\\t\\\\tgl_FragColor.rgb = (gl_FragColor.rgb - 0.5) * (1.0 + contrast) + 0.5;\\\\n\\\\t\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\t}\\\\\\\"};const Fj=new class extends ua{constructor(){super(...arguments),this.brightness=ha.FLOAT(0,{range:[-1,1],rangeLocked:[!1,!1],...xj}),this.contrast=ha.FLOAT(0,{range:[-1,1],rangeLocked:[!1,!1],...xj}),this.transparent=ha.BOOLEAN(1,xj)}};class Dj extends bj{constructor(){super(...arguments),this.paramsConfig=Fj}static type(){return\\\\\\\"brightnessContrast\\\\\\\"}_createPass(t){const e=new Hm(Ij);return e.fsQuad.material.transparent=!0,this.updatePass(e),e}updatePass(t){t.uniforms.brightness.value=this.pv.brightness,t.uniforms.contrast.value=this.pv.contrast,t.material.transparent=this.pv.transparent}}class Bj extends km{constructor(t,e){super(),this.needsSwap=!1,this.clearColor=void 0!==t?t:0,this.clearAlpha=void 0!==e?e:0,this._oldClearColor=new D.a}render(t,e,n){let i;this.clearColor&&(t.getClearColor(this._oldClearColor),i=t.getClearAlpha(),t.setClearColor(this.clearColor,this.clearAlpha)),t.setRenderTarget(this.renderToScreen?null:n),t.clear(),this.clearColor&&t.setClearColor(this._oldClearColor,i)}}const zj=new class extends ua{};class kj extends bj{constructor(){super(...arguments),this.paramsConfig=zj}static type(){return\\\\\\\"clear\\\\\\\"}_createPass(t){const e=new Bj;return this.updatePass(e),e}updatePass(t){}}const Uj=new class extends ua{};class Gj extends bj{constructor(){super(...arguments),this.paramsConfig=Uj}static type(){return\\\\\\\"clearMask\\\\\\\"}_createPass(t){const e=new Wm;return this.updatePass(e),e}updatePass(t){}}const Vj={uniforms:{tDiffuse:{value:null},powRGB:{value:new p.a(2,2,2)},mulRGB:{value:new p.a(1,1,1)},addRGB:{value:new p.a(0,0,0)}},vertexShader:\\\\\\\"\\\\n\\\\n\\\\t\\\\tvarying vec2 vUv;\\\\n\\\\n\\\\t\\\\tvoid main() {\\\\n\\\\n\\\\t\\\\t\\\\tvUv = uv;\\\\n\\\\n\\\\t\\\\t\\\\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\\\\n\\\\n\\\\t\\\\t}\\\\\\\",fragmentShader:\\\\\\\"\\\\n\\\\n\\\\t\\\\tuniform sampler2D tDiffuse;\\\\n\\\\t\\\\tuniform vec3 powRGB;\\\\n\\\\t\\\\tuniform vec3 mulRGB;\\\\n\\\\t\\\\tuniform vec3 addRGB;\\\\n\\\\n\\\\t\\\\tvarying vec2 vUv;\\\\n\\\\n\\\\t\\\\tvoid main() {\\\\n\\\\n\\\\t\\\\t\\\\tgl_FragColor = texture2D( tDiffuse, vUv );\\\\n\\\\t\\\\t\\\\tgl_FragColor.rgb = mulRGB * pow( ( gl_FragColor.rgb + addRGB ), powRGB );\\\\n\\\\n\\\\t\\\\t}\\\\\\\"};const Hj=new class extends ua{constructor(){super(...arguments),this.pow=ha.VECTOR3([2,2,2],{...xj}),this.mult=ha.COLOR([1,1,1],{...xj}),this.add=ha.COLOR([0,0,0],{...xj})}};class jj extends bj{constructor(){super(...arguments),this.paramsConfig=Hj}static type(){return\\\\\\\"colorCorrection\\\\\\\"}_createPass(t){const e=new Hm(Vj);return this.updatePass(e),e}updatePass(t){t.uniforms.powRGB.value.copy(this.pv.pow),t.uniforms.mulRGB.value.set(this.pv.mult.r,this.pv.mult.g,this.pv.mult.b),t.uniforms.addRGB.value.set(this.pv.add.r,this.pv.add.g,this.pv.add.b)}}const Wj=new class extends ua{constructor(){super(...arguments),this.opacity=ha.FLOAT(1,{range:[0,1],rangeLocked:[!0,!0],...xj}),this.transparent=ha.BOOLEAN(1,xj)}};class qj extends bj{constructor(){super(...arguments),this.paramsConfig=Wj}static type(){return\\\\\\\"copy\\\\\\\"}_createPass(t){const e=new Hm(zm);return this.updatePass(e),e}updatePass(t){t.uniforms.opacity.value=this.pv.opacity,t.material.transparent=this.pv.transparent}}const Xj={uniforms:{textureWidth:{value:1},textureHeight:{value:1},focalDepth:{value:1},focalLength:{value:24},fstop:{value:.9},tColor:{value:null},tDepth:{value:null},maxblur:{value:1},showFocus:{value:0},manualdof:{value:0},vignetting:{value:0},depthblur:{value:0},threshold:{value:.5},gain:{value:2},bias:{value:.5},fringe:{value:.7},znear:{value:.1},zfar:{value:100},noise:{value:1},dithering:{value:1e-4},pentagon:{value:0},shaderFocus:{value:1},focusCoords:{value:new d.a}},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\\\\t#include <common>\\\\n\\\\n\\\\t\\\\tvarying vec2 vUv;\\\\n\\\\n\\\\t\\\\tuniform sampler2D tColor;\\\\n\\\\t\\\\tuniform sampler2D tDepth;\\\\n\\\\t\\\\tuniform float textureWidth;\\\\n\\\\t\\\\tuniform float textureHeight;\\\\n\\\\n\\\\t\\\\tuniform float focalDepth;  //focal distance value in meters, but you may use autofocus option below\\\\n\\\\t\\\\tuniform float focalLength; //focal length in mm\\\\n\\\\t\\\\tuniform float fstop; //f-stop value\\\\n\\\\t\\\\tuniform bool showFocus; //show debug focus point and focal range (red = focal point, green = focal range)\\\\n\\\\n\\\\t\\\\t/*\\\\n\\\\t\\\\tmake sure that these two values are the same for your camera, otherwise distances will be wrong.\\\\n\\\\t\\\\t*/\\\\n\\\\n\\\\t\\\\tuniform float znear; // camera clipping start\\\\n\\\\t\\\\tuniform float zfar; // camera clipping end\\\\n\\\\n\\\\t\\\\t//------------------------------------------\\\\n\\\\t\\\\t//user variables\\\\n\\\\n\\\\t\\\\tconst int samples = SAMPLES; //samples on the first ring\\\\n\\\\t\\\\tconst int rings = RINGS; //ring count\\\\n\\\\n\\\\t\\\\tconst int maxringsamples = rings * samples;\\\\n\\\\n\\\\t\\\\tuniform bool manualdof; // manual dof calculation\\\\n\\\\t\\\\tfloat ndofstart = 1.0; // near dof blur start\\\\n\\\\t\\\\tfloat ndofdist = 2.0; // near dof blur falloff distance\\\\n\\\\t\\\\tfloat fdofstart = 1.0; // far dof blur start\\\\n\\\\t\\\\tfloat fdofdist = 3.0; // far dof blur falloff distance\\\\n\\\\n\\\\t\\\\tfloat CoC = 0.03; //circle of confusion size in mm (35mm film = 0.03mm)\\\\n\\\\n\\\\t\\\\tuniform bool vignetting; // use optical lens vignetting\\\\n\\\\n\\\\t\\\\tfloat vignout = 1.3; // vignetting outer border\\\\n\\\\t\\\\tfloat vignin = 0.0; // vignetting inner border\\\\n\\\\t\\\\tfloat vignfade = 22.0; // f-stops till vignete fades\\\\n\\\\n\\\\t\\\\tuniform bool shaderFocus;\\\\n\\\\t\\\\t// disable if you use external focalDepth value\\\\n\\\\n\\\\t\\\\tuniform vec2 focusCoords;\\\\n\\\\t\\\\t// autofocus point on screen (0.0,0.0 - left lower corner, 1.0,1.0 - upper right)\\\\n\\\\t\\\\t// if center of screen use vec2(0.5, 0.5);\\\\n\\\\n\\\\t\\\\tuniform float maxblur;\\\\n\\\\t\\\\t//clamp value of max blur (0.0 = no blur, 1.0 default)\\\\n\\\\n\\\\t\\\\tuniform float threshold; // highlight threshold;\\\\n\\\\t\\\\tuniform float gain; // highlight gain;\\\\n\\\\n\\\\t\\\\tuniform float bias; // bokeh edge bias\\\\n\\\\t\\\\tuniform float fringe; // bokeh chromatic aberration / fringing\\\\n\\\\n\\\\t\\\\tuniform bool noise; //use noise instead of pattern for sample dithering\\\\n\\\\n\\\\t\\\\tuniform float dithering;\\\\n\\\\n\\\\t\\\\tuniform bool depthblur; // blur the depth buffer\\\\n\\\\t\\\\tfloat dbsize = 1.25; // depth blur size\\\\n\\\\n\\\\t\\\\t/*\\\\n\\\\t\\\\tnext part is experimental\\\\n\\\\t\\\\tnot looking good with small sample and ring count\\\\n\\\\t\\\\tlooks okay starting from samples = 4, rings = 4\\\\n\\\\t\\\\t*/\\\\n\\\\n\\\\t\\\\tuniform bool pentagon; //use pentagon as bokeh shape?\\\\n\\\\t\\\\tfloat feather = 0.4; //pentagon shape feather\\\\n\\\\n\\\\t\\\\t//------------------------------------------\\\\n\\\\n\\\\t\\\\tfloat penta(vec2 coords) {\\\\n\\\\t\\\\t\\\\t//pentagonal shape\\\\n\\\\t\\\\t\\\\tfloat scale = float(rings) - 1.3;\\\\n\\\\t\\\\t\\\\tvec4  HS0 = vec4( 1.0,         0.0,         0.0,  1.0);\\\\n\\\\t\\\\t\\\\tvec4  HS1 = vec4( 0.309016994, 0.951056516, 0.0,  1.0);\\\\n\\\\t\\\\t\\\\tvec4  HS2 = vec4(-0.809016994, 0.587785252, 0.0,  1.0);\\\\n\\\\t\\\\t\\\\tvec4  HS3 = vec4(-0.809016994,-0.587785252, 0.0,  1.0);\\\\n\\\\t\\\\t\\\\tvec4  HS4 = vec4( 0.309016994,-0.951056516, 0.0,  1.0);\\\\n\\\\t\\\\t\\\\tvec4  HS5 = vec4( 0.0        ,0.0         , 1.0,  1.0);\\\\n\\\\n\\\\t\\\\t\\\\tvec4  one = vec4( 1.0 );\\\\n\\\\n\\\\t\\\\t\\\\tvec4 P = vec4((coords),vec2(scale, scale));\\\\n\\\\n\\\\t\\\\t\\\\tvec4 dist = vec4(0.0);\\\\n\\\\t\\\\t\\\\tfloat inorout = -4.0;\\\\n\\\\n\\\\t\\\\t\\\\tdist.x = dot( P, HS0 );\\\\n\\\\t\\\\t\\\\tdist.y = dot( P, HS1 );\\\\n\\\\t\\\\t\\\\tdist.z = dot( P, HS2 );\\\\n\\\\t\\\\t\\\\tdist.w = dot( P, HS3 );\\\\n\\\\n\\\\t\\\\t\\\\tdist = smoothstep( -feather, feather, dist );\\\\n\\\\n\\\\t\\\\t\\\\tinorout += dot( dist, one );\\\\n\\\\n\\\\t\\\\t\\\\tdist.x = dot( P, HS4 );\\\\n\\\\t\\\\t\\\\tdist.y = HS5.w - abs( P.z );\\\\n\\\\n\\\\t\\\\t\\\\tdist = smoothstep( -feather, feather, dist );\\\\n\\\\t\\\\t\\\\tinorout += dist.x;\\\\n\\\\n\\\\t\\\\t\\\\treturn clamp( inorout, 0.0, 1.0 );\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\tfloat bdepth(vec2 coords) {\\\\n\\\\t\\\\t\\\\t// Depth buffer blur\\\\n\\\\t\\\\t\\\\tfloat d = 0.0;\\\\n\\\\t\\\\t\\\\tfloat kernel[9];\\\\n\\\\t\\\\t\\\\tvec2 offset[9];\\\\n\\\\n\\\\t\\\\t\\\\tvec2 wh = vec2(1.0/textureWidth,1.0/textureHeight) * dbsize;\\\\n\\\\n\\\\t\\\\t\\\\toffset[0] = vec2(-wh.x,-wh.y);\\\\n\\\\t\\\\t\\\\toffset[1] = vec2( 0.0, -wh.y);\\\\n\\\\t\\\\t\\\\toffset[2] = vec2( wh.x -wh.y);\\\\n\\\\n\\\\t\\\\t\\\\toffset[3] = vec2(-wh.x,  0.0);\\\\n\\\\t\\\\t\\\\toffset[4] = vec2( 0.0,   0.0);\\\\n\\\\t\\\\t\\\\toffset[5] = vec2( wh.x,  0.0);\\\\n\\\\n\\\\t\\\\t\\\\toffset[6] = vec2(-wh.x, wh.y);\\\\n\\\\t\\\\t\\\\toffset[7] = vec2( 0.0,  wh.y);\\\\n\\\\t\\\\t\\\\toffset[8] = vec2( wh.x, wh.y);\\\\n\\\\n\\\\t\\\\t\\\\tkernel[0] = 1.0/16.0;   kernel[1] = 2.0/16.0;   kernel[2] = 1.0/16.0;\\\\n\\\\t\\\\t\\\\tkernel[3] = 2.0/16.0;   kernel[4] = 4.0/16.0;   kernel[5] = 2.0/16.0;\\\\n\\\\t\\\\t\\\\tkernel[6] = 1.0/16.0;   kernel[7] = 2.0/16.0;   kernel[8] = 1.0/16.0;\\\\n\\\\n\\\\n\\\\t\\\\t\\\\tfor( int i=0; i<9; i++ ) {\\\\n\\\\t\\\\t\\\\t\\\\tfloat tmp = texture2D(tDepth, coords + offset[i]).r;\\\\n\\\\t\\\\t\\\\t\\\\td += tmp * kernel[i];\\\\n\\\\t\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\t\\\\treturn d;\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\n\\\\t\\\\tvec3 color(vec2 coords,float blur) {\\\\n\\\\t\\\\t\\\\t//processing the sample\\\\n\\\\n\\\\t\\\\t\\\\tvec3 col = vec3(0.0);\\\\n\\\\t\\\\t\\\\tvec2 texel = vec2(1.0/textureWidth,1.0/textureHeight);\\\\n\\\\n\\\\t\\\\t\\\\tcol.r = texture2D(tColor,coords + vec2(0.0,1.0)*texel*fringe*blur).r;\\\\n\\\\t\\\\t\\\\tcol.g = texture2D(tColor,coords + vec2(-0.866,-0.5)*texel*fringe*blur).g;\\\\n\\\\t\\\\t\\\\tcol.b = texture2D(tColor,coords + vec2(0.866,-0.5)*texel*fringe*blur).b;\\\\n\\\\n\\\\t\\\\t\\\\tvec3 lumcoeff = vec3(0.299,0.587,0.114);\\\\n\\\\t\\\\t\\\\tfloat lum = dot(col.rgb, lumcoeff);\\\\n\\\\t\\\\t\\\\tfloat thresh = max((lum-threshold)*gain, 0.0);\\\\n\\\\t\\\\t\\\\treturn col+mix(vec3(0.0),col,thresh*blur);\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\tvec3 debugFocus(vec3 col, float blur, float depth) {\\\\n\\\\t\\\\t\\\\tfloat edge = 0.002*depth; //distance based edge smoothing\\\\n\\\\t\\\\t\\\\tfloat m = clamp(smoothstep(0.0,edge,blur),0.0,1.0);\\\\n\\\\t\\\\t\\\\tfloat e = clamp(smoothstep(1.0-edge,1.0,blur),0.0,1.0);\\\\n\\\\n\\\\t\\\\t\\\\tcol = mix(col,vec3(1.0,0.5,0.0),(1.0-m)*0.6);\\\\n\\\\t\\\\t\\\\tcol = mix(col,vec3(0.0,0.5,1.0),((1.0-e)-(1.0-m))*0.2);\\\\n\\\\n\\\\t\\\\t\\\\treturn col;\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\tfloat linearize(float depth) {\\\\n\\\\t\\\\t\\\\treturn -zfar * znear / (depth * (zfar - znear) - zfar);\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\tfloat vignette() {\\\\n\\\\t\\\\t\\\\tfloat dist = distance(vUv.xy, vec2(0.5,0.5));\\\\n\\\\t\\\\t\\\\tdist = smoothstep(vignout+(fstop/vignfade), vignin+(fstop/vignfade), dist);\\\\n\\\\t\\\\t\\\\treturn clamp(dist,0.0,1.0);\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\tfloat gather(float i, float j, int ringsamples, inout vec3 col, float w, float h, float blur) {\\\\n\\\\t\\\\t\\\\tfloat rings2 = float(rings);\\\\n\\\\t\\\\t\\\\tfloat step = PI*2.0 / float(ringsamples);\\\\n\\\\t\\\\t\\\\tfloat pw = cos(j*step)*i;\\\\n\\\\t\\\\t\\\\tfloat ph = sin(j*step)*i;\\\\n\\\\t\\\\t\\\\tfloat p = 1.0;\\\\n\\\\t\\\\t\\\\tif (pentagon) {\\\\n\\\\t\\\\t\\\\t\\\\tp = penta(vec2(pw,ph));\\\\n\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t\\\\tcol += color(vUv.xy + vec2(pw*w,ph*h), blur) * mix(1.0, i/rings2, bias) * p;\\\\n\\\\t\\\\t\\\\treturn 1.0 * mix(1.0, i /rings2, bias) * p;\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\tvoid main() {\\\\n\\\\t\\\\t\\\\t//scene depth calculation\\\\n\\\\n\\\\t\\\\t\\\\tfloat depth = linearize(texture2D(tDepth,vUv.xy).x);\\\\n\\\\n\\\\t\\\\t\\\\t// Blur depth?\\\\n\\\\t\\\\t\\\\tif ( depthblur ) {\\\\n\\\\t\\\\t\\\\t\\\\tdepth = linearize(bdepth(vUv.xy));\\\\n\\\\t\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\t\\\\t//focal plane calculation\\\\n\\\\n\\\\t\\\\t\\\\tfloat fDepth = focalDepth;\\\\n\\\\n\\\\t\\\\t\\\\tif (shaderFocus) {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tfDepth = linearize(texture2D(tDepth,focusCoords).x);\\\\n\\\\n\\\\t\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\t\\\\t// dof blur factor calculation\\\\n\\\\n\\\\t\\\\t\\\\tfloat blur = 0.0;\\\\n\\\\n\\\\t\\\\t\\\\tif (manualdof) {\\\\n\\\\t\\\\t\\\\t\\\\tfloat a = depth-fDepth; // Focal plane\\\\n\\\\t\\\\t\\\\t\\\\tfloat b = (a-fdofstart)/fdofdist; // Far DoF\\\\n\\\\t\\\\t\\\\t\\\\tfloat c = (-a-ndofstart)/ndofdist; // Near Dof\\\\n\\\\t\\\\t\\\\t\\\\tblur = (a>0.0) ? b : c;\\\\n\\\\t\\\\t\\\\t} else {\\\\n\\\\t\\\\t\\\\t\\\\tfloat f = focalLength; // focal length in mm\\\\n\\\\t\\\\t\\\\t\\\\tfloat d = fDepth*1000.0; // focal plane in mm\\\\n\\\\t\\\\t\\\\t\\\\tfloat o = depth*1000.0; // depth in mm\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tfloat a = (o*f)/(o-f);\\\\n\\\\t\\\\t\\\\t\\\\tfloat b = (d*f)/(d-f);\\\\n\\\\t\\\\t\\\\t\\\\tfloat c = (d-f)/(d*fstop*CoC);\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tblur = abs(a-b)*c;\\\\n\\\\t\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\t\\\\tblur = clamp(blur,0.0,1.0);\\\\n\\\\n\\\\t\\\\t\\\\t// calculation of pattern for dithering\\\\n\\\\n\\\\t\\\\t\\\\tvec2 noise = vec2(rand(vUv.xy), rand( vUv.xy + vec2( 0.4, 0.6 ) ) )*dithering*blur;\\\\n\\\\n\\\\t\\\\t\\\\t// getting blur x and y step factor\\\\n\\\\n\\\\t\\\\t\\\\tfloat w = (1.0/textureWidth)*blur*maxblur+noise.x;\\\\n\\\\t\\\\t\\\\tfloat h = (1.0/textureHeight)*blur*maxblur+noise.y;\\\\n\\\\n\\\\t\\\\t\\\\t// calculation of final color\\\\n\\\\n\\\\t\\\\t\\\\tvec3 col = vec3(0.0);\\\\n\\\\n\\\\t\\\\t\\\\tif(blur < 0.05) {\\\\n\\\\t\\\\t\\\\t\\\\t//some optimization thingy\\\\n\\\\t\\\\t\\\\t\\\\tcol = texture2D(tColor, vUv.xy).rgb;\\\\n\\\\t\\\\t\\\\t} else {\\\\n\\\\t\\\\t\\\\t\\\\tcol = texture2D(tColor, vUv.xy).rgb;\\\\n\\\\t\\\\t\\\\t\\\\tfloat s = 1.0;\\\\n\\\\t\\\\t\\\\t\\\\tint ringsamples;\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tfor (int i = 1; i <= rings; i++) {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t/*unboxstart*/\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tringsamples = i * samples;\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tfor (int j = 0 ; j < maxringsamples ; j++) {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif (j >= ringsamples) break;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\ts += gather(float(i), float(j), ringsamples, col, w, h, blur);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t/*unboxend*/\\\\n\\\\t\\\\t\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tcol /= s; //divide by sample count\\\\n\\\\t\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\t\\\\tif (showFocus) {\\\\n\\\\t\\\\t\\\\t\\\\tcol = debugFocus(col, blur, depth);\\\\n\\\\t\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\t\\\\tif (vignetting) {\\\\n\\\\t\\\\t\\\\t\\\\tcol *= vignette();\\\\n\\\\t\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\t\\\\tgl_FragColor.rgb = col;\\\\n\\\\t\\\\t\\\\tgl_FragColor.a = 1.0;\\\\n\\\\t\\\\t}\\\\\\\"},Yj={uniforms:{mNear:{value:1},mFar:{value:1e3}},vertexShader:\\\\\\\"\\\\n\\\\n\\\\t\\\\tvarying float vViewZDepth;\\\\n\\\\n\\\\t\\\\tvoid main() {\\\\n\\\\n\\\\t\\\\t\\\\t#include <begin_vertex>\\\\n\\\\t\\\\t\\\\t#include <project_vertex>\\\\n\\\\n\\\\t\\\\t\\\\tvViewZDepth = - mvPosition.z;\\\\n\\\\n\\\\t\\\\t}\\\\\\\",fragmentShader:\\\\\\\"\\\\n\\\\n\\\\t\\\\tuniform float mNear;\\\\n\\\\t\\\\tuniform float mFar;\\\\n\\\\n\\\\t\\\\tvarying float vViewZDepth;\\\\n\\\\n\\\\t\\\\tvoid main() {\\\\n\\\\n\\\\t\\\\t\\\\tfloat color = 1.0 - smoothstep( mNear, mFar, vViewZDepth );\\\\n\\\\t\\\\t\\\\tgl_FragColor = vec4( vec3( color ), 1.0 );\\\\n\\\\n\\\\t\\\\t}\\\\\\\"};class $j{constructor(t){this._scene=t}scene(){return this._scene}with_overriden_material(t,e,n,i){const s={};let r;this._scene.traverse((i=>{const o=i;if(o.material){const i=o.geometry;if(i){const a=o.customDepthDOFMaterial;if(a){if(r=a,r.uniforms)for(let t of Object.keys(n))r.uniforms[t].value=n[t].value}else r=fr.markedAsInstance(i)?e:t;r&&(s[o.uuid]=o.material,o.material=r)}}})),i(),this._scene.traverse((t=>{const e=t;if(e.material){e.geometry&&(e.material=s[e.uuid])}}));for(let t of Object.keys(s))delete s[t]}}class Jj{constructor(t,e,n,i){this._depth_of_field_node=t,this._scene=e,this._camera=n,this._resolution=i,this._camera_uniforms={mNear:{value:0},mFar:{value:0}},this.enabled=!0,this.needsSwap=!0,this.clear=!0,this.renderToScreen=!0,this._processing_scene=new vs,this.clear_color=new D.a(1,1,1),this._prev_clear_color=new D.a,this._core_scene=new $j(this._scene);const s=3,r=4;this._processing_camera=new ot.a(this._resolution.x/-2,this._resolution.x/2,this._resolution.y/2,this._resolution.y/-2,-1e4,1e4),this._processing_camera.position.z=100,this._processing_scene.add(this._processing_camera);var o={minFilter:w.V,magFilter:w.V,format:w.ic};this._rtTextureDepth=new K(this._resolution.x,this._resolution.y,o),this._rtTextureColor=new K(this._resolution.x,this._resolution.y,o);var a=Xj;a||console.error(\\\\\\\"BokehPass relies on BokehShader\\\\\\\"),this.bokeh_uniforms=I.clone(a.uniforms),this.bokeh_uniforms.tColor.value=this._rtTextureColor.texture,this.bokeh_uniforms.tDepth.value=this._rtTextureDepth.texture,this.bokeh_uniforms.textureWidth.value=this._resolution.x,this.bokeh_uniforms.textureHeight.value=this._resolution.y,this.bokeh_material=new F({uniforms:this.bokeh_uniforms,vertexShader:a.vertexShader,fragmentShader:a.fragmentShader,defines:{RINGS:s,SAMPLES:r}}),this._quad=new B.a(new L(this._resolution.x,this._resolution.y),this.bokeh_material),this._quad.position.z=-500,this._processing_scene.add(this._quad);var l=Yj;l||console.error(\\\\\\\"BokehPass relies on BokehDepthShader\\\\\\\"),this.materialDepth=new F({uniforms:l.uniforms,vertexShader:l.vertexShader,fragmentShader:l.fragmentShader}),this.materialDepthInstance=new F({uniforms:l.uniforms,vertexShader:\\\\\\\"#include <common>\\\\n\\\\nvec3 rotate_with_quat( vec3 v, vec4 q )\\\\n{\\\\n\\\\treturn v + 2.0 * cross( q.xyz, cross( q.xyz, v ) + q.w * v );\\\\n}\\\\n\\\\n\\\\nattribute vec4 instanceOrientation;\\\\nattribute vec3 instancePosition;\\\\nattribute vec3 instanceScale;\\\\nvarying float vViewZDepth;\\\\n\\\\n\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\tvec3 v_POLYGON_instance_transform1_position = vec3(position);\\\\n\\\\tv_POLYGON_instance_transform1_position *= instanceScale;\\\\n\\\\tv_POLYGON_instance_transform1_position = rotate_with_quat( v_POLYGON_instance_transform1_position, instanceOrientation );\\\\n\\\\tv_POLYGON_instance_transform1_position += instancePosition;\\\\n\\\\t\\\\n\\\\t// replaces #include <begin_vertex>\\\\n\\\\tvec3 transformed = v_POLYGON_instance_transform1_position;\\\\n\\\\n\\\\n\\\\t#include <project_vertex>\\\\n\\\\n\\\\tvViewZDepth = - mvPosition.z;\\\\n}\\\\\\\",fragmentShader:l.fragmentShader}),this.update_camera_uniforms_with_node(this._depth_of_field_node,this._camera)}setSize(t,e){this._rtTextureDepth.setSize(t,e),this._rtTextureColor.setSize(t,e),this.bokeh_uniforms.textureWidth.value=t,this.bokeh_uniforms.textureHeight.value=e}dispose(){this._rtTextureDepth.dispose(),this._rtTextureColor.dispose()}render(t,e,n){t.getClearColor(this._prev_clear_color),t.setClearColor(this.clear_color),t.clear(),t.setRenderTarget(this._rtTextureColor),t.clear(),t.render(this._scene,this._camera),t.setClearColor(0),this._core_scene.with_overriden_material(this.materialDepth,this.materialDepthInstance,this._camera_uniforms,(()=>{t.setRenderTarget(this._rtTextureDepth),t.clear(),t.render(this._scene,this._camera)})),t.setRenderTarget(null),t.clear(),t.render(this._processing_scene,this._processing_camera),t.setClearColor(this._prev_clear_color)}update_camera_uniforms_with_node(t,e){this.bokeh_uniforms.focalLength.value=e.getFocalLength(),this.bokeh_uniforms.znear.value=e.near,this.bokeh_uniforms.zfar.value=e.far;var n=Kj.smoothstep(e.near,e.far,t.pv.focalDepth),i=Kj.linearize(1-n,e.near,e.far);this.bokeh_uniforms.focalDepth.value=i,this._camera_uniforms={mNear:{value:e.near},mFar:{value:e.far}};for(let t of[this.materialDepth,this.materialDepthInstance])t.uniforms.mNear.value=this._camera_uniforms.mNear.value,t.uniforms.mFar.value=this._camera_uniforms.mFar.value}}const Zj=new class extends ua{constructor(){super(...arguments),this.focalDepth=ha.FLOAT(10,{range:[0,50],rangeLocked:[!0,!1],step:.001,...xj}),this.fStep=ha.FLOAT(10,{range:[.1,22],rangeLocked:[!0,!0],...xj}),this.maxBlur=ha.FLOAT(2,{range:[0,10],rangeLocked:[!0,!1],...xj}),this.vignetting=ha.BOOLEAN(0,{...xj}),this.depthBlur=ha.BOOLEAN(0,{...xj}),this.threshold=ha.FLOAT(.5,{range:[0,1],rangeLocked:[!0,!0],step:.001,...xj}),this.gain=ha.FLOAT(1,{range:[0,100],rangeLocked:[!0,!0],step:.001,...xj}),this.bias=ha.FLOAT(1,{range:[0,3],rangeLocked:[!0,!0],step:.001,...xj}),this.fringe=ha.FLOAT(.7,{range:[0,5],rangeLocked:[!0,!1],step:.001,...xj}),this.noise=ha.BOOLEAN(0,{...xj}),this.dithering=ha.FLOAT(0,{range:[0,.001],rangeLocked:[!0,!0],step:1e-4,...xj}),this.pentagon=ha.BOOLEAN(0,{...xj}),this.rings=ha.INTEGER(3,{range:[1,8],rangeLocked:[!0,!0],...xj}),this.samples=ha.INTEGER(4,{range:[1,13],rangeLocked:[!0,!0],...xj}),this.clearColor=ha.COLOR([1,1,1],{...xj})}};class Kj extends bj{constructor(){super(...arguments),this.paramsConfig=Zj}static type(){return\\\\\\\"depthOfField\\\\\\\"}static saturate(t){return Math.max(0,Math.min(1,t))}static linearize(t,e,n){return-n*e/(t*(n-e)-n)}static smoothstep(t,e,n){var i=this.saturate((n-t)/(e-t));return i*i*(3-2*i)}_createPass(t){if(t.camera.isPerspectiveCamera){const e=t.camera_node;if(e){const n=new Jj(this,t.scene,e.object,t.resolution);this.updatePass(n);const i=new Mi(this.scene(),\\\\\\\"DOF\\\\\\\");return i.addGraphInput(e.p.near),i.addGraphInput(e.p.far),i.addGraphInput(e.p.fov),i.addGraphInput(this.p.focalDepth),i.addPostDirtyHook(\\\\\\\"post/DOF\\\\\\\",(()=>{this.update_pass_from_camera_node(n,e)})),n}}}update_pass_from_camera_node(t,e){t.update_camera_uniforms_with_node(this,e.object)}updatePass(t){t.bokeh_uniforms.fstop.value=this.pv.fStep,t.bokeh_uniforms.maxblur.value=this.pv.maxBlur,t.bokeh_uniforms.threshold.value=this.pv.threshold,t.bokeh_uniforms.gain.value=this.pv.gain,t.bokeh_uniforms.bias.value=this.pv.bias,t.bokeh_uniforms.fringe.value=this.pv.fringe,t.bokeh_uniforms.dithering.value=this.pv.dithering,t.bokeh_uniforms.noise.value=this.pv.noise?1:0,t.bokeh_uniforms.pentagon.value=this.pv.pentagon?1:0,t.bokeh_uniforms.vignetting.value=this.pv.vignetting?1:0,t.bokeh_uniforms.depthblur.value=this.pv.depthBlur?1:0,t.bokeh_uniforms.shaderFocus.value=0,t.bokeh_uniforms.showFocus.value=0,t.bokeh_uniforms.manualdof.value=0,t.bokeh_uniforms.focusCoords.value.set(.5,.5),t.bokeh_material.defines.RINGS=this.pv.rings,t.bokeh_material.defines.SAMPLES=this.pv.samples,t.bokeh_material.needsUpdate=!0,t.clear_color.copy(this.pv.clearColor)}}const Qj={uniforms:{tDiffuse:{value:null},tSize:{value:new d.a(256,256)},center:{value:new d.a(.5,.5)},angle:{value:1.57},scale:{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 vec2 center;\\\\n\\\\t\\\\tuniform float angle;\\\\n\\\\t\\\\tuniform float scale;\\\\n\\\\t\\\\tuniform vec2 tSize;\\\\n\\\\n\\\\t\\\\tuniform sampler2D tDiffuse;\\\\n\\\\n\\\\t\\\\tvarying vec2 vUv;\\\\n\\\\n\\\\t\\\\tfloat pattern() {\\\\n\\\\n\\\\t\\\\t\\\\tfloat s = sin( angle ), c = cos( angle );\\\\n\\\\n\\\\t\\\\t\\\\tvec2 tex = vUv * tSize - center;\\\\n\\\\t\\\\t\\\\tvec2 point = vec2( c * tex.x - s * tex.y, s * tex.x + c * tex.y ) * scale;\\\\n\\\\n\\\\t\\\\t\\\\treturn ( sin( point.x ) * sin( point.y ) ) * 4.0;\\\\n\\\\n\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\tvoid main() {\\\\n\\\\n\\\\t\\\\t\\\\tvec4 color = texture2D( tDiffuse, vUv );\\\\n\\\\n\\\\t\\\\t\\\\tfloat average = ( color.r + color.g + color.b ) / 3.0;\\\\n\\\\n\\\\t\\\\t\\\\tgl_FragColor = vec4( vec3( average * 10.0 - 5.0 + pattern() ), color.a );\\\\n\\\\n\\\\t\\\\t}\\\\\\\"};const tW=new class extends ua{constructor(){super(...arguments),this.center=ha.VECTOR2([.5,.5],{...xj}),this.angle=ha.FLOAT(\\\\\\\"$PI*0.5\\\\\\\",{range:[0,10],rangeLocked:[!1,!1],...xj}),this.scale=ha.FLOAT(1,{range:[0,1],rangeLocked:[!1,!1],...xj})}};class eW extends bj{constructor(){super(...arguments),this.paramsConfig=tW}static type(){return\\\\\\\"dotScreen\\\\\\\"}_createPass(t){const e=new Hm(Qj);return this.updatePass(e),e}updatePass(t){t.uniforms.center.value=this.pv.center,t.uniforms.angle.value=this.pv.angle,t.uniforms.scale.value=this.pv.scale}}const nW={uniforms:{tDiffuse:{value:null},time:{value:0},nIntensity:{value:.5},sIntensity:{value:.05},sCount:{value:4096},grayscale:{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\\\\t#include <common>\\\\n\\\\n\\\\t\\\\t// control parameter\\\\n\\\\t\\\\tuniform float time;\\\\n\\\\n\\\\t\\\\tuniform bool grayscale;\\\\n\\\\n\\\\t\\\\t// noise effect intensity value (0 = no effect, 1 = full effect)\\\\n\\\\t\\\\tuniform float nIntensity;\\\\n\\\\n\\\\t\\\\t// scanlines effect intensity value (0 = no effect, 1 = full effect)\\\\n\\\\t\\\\tuniform float sIntensity;\\\\n\\\\n\\\\t\\\\t// scanlines effect count value (0 = no effect, 4096 = full effect)\\\\n\\\\t\\\\tuniform float sCount;\\\\n\\\\n\\\\t\\\\tuniform sampler2D tDiffuse;\\\\n\\\\n\\\\t\\\\tvarying vec2 vUv;\\\\n\\\\n\\\\t\\\\tvoid main() {\\\\n\\\\n\\\\t\\\\t// sample the source\\\\n\\\\t\\\\t\\\\tvec4 cTextureScreen = texture2D( tDiffuse, vUv );\\\\n\\\\n\\\\t\\\\t// make some noise\\\\n\\\\t\\\\t\\\\tfloat dx = rand( vUv + time );\\\\n\\\\n\\\\t\\\\t// add noise\\\\n\\\\t\\\\t\\\\tvec3 cResult = cTextureScreen.rgb + cTextureScreen.rgb * clamp( 0.1 + dx, 0.0, 1.0 );\\\\n\\\\n\\\\t\\\\t// get us a sine and cosine\\\\n\\\\t\\\\t\\\\tvec2 sc = vec2( sin( vUv.y * sCount ), cos( vUv.y * sCount ) );\\\\n\\\\n\\\\t\\\\t// add scanlines\\\\n\\\\t\\\\t\\\\tcResult += cTextureScreen.rgb * vec3( sc.x, sc.y, sc.x ) * sIntensity;\\\\n\\\\n\\\\t\\\\t// interpolate between source and result by intensity\\\\n\\\\t\\\\t\\\\tcResult = cTextureScreen.rgb + clamp( nIntensity, 0.0,1.0 ) * ( cResult - cTextureScreen.rgb );\\\\n\\\\n\\\\t\\\\t// convert to grayscale if desired\\\\n\\\\t\\\\t\\\\tif( grayscale ) {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tcResult = vec3( cResult.r * 0.3 + cResult.g * 0.59 + cResult.b * 0.11 );\\\\n\\\\n\\\\t\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\t\\\\tgl_FragColor =  vec4( cResult, cTextureScreen.a );\\\\n\\\\n\\\\t\\\\t}\\\\\\\"};class iW extends km{constructor(t,e,n,i){super(),void 0===nW&&console.error(\\\\\\\"THREE.FilmPass relies on FilmShader\\\\\\\");const s=nW;this.uniforms=I.clone(s.uniforms),this.material=new F({uniforms:this.uniforms,vertexShader:s.vertexShader,fragmentShader:s.fragmentShader}),void 0!==i&&(this.uniforms.grayscale.value=i),void 0!==t&&(this.uniforms.nIntensity.value=t),void 0!==e&&(this.uniforms.sIntensity.value=e),void 0!==n&&(this.uniforms.sCount.value=n),this.fsQuad=new Vm(this.material)}render(t,e,n,i){this.uniforms.tDiffuse.value=n.texture,this.uniforms.time.value+=i,this.renderToScreen?(t.setRenderTarget(null),this.fsQuad.render(t)):(t.setRenderTarget(e),this.clear&&t.clear(),this.fsQuad.render(t))}}const sW=new class extends ua{constructor(){super(...arguments),this.noiseIntensity=ha.FLOAT(.5,{range:[0,1],rangeLocked:[!1,!1],...xj}),this.scanlinesIntensity=ha.FLOAT(.05,{range:[0,1],rangeLocked:[!0,!1],...xj}),this.scanlinesCount=ha.FLOAT(4096,{range:[0,4096],rangeLocked:[!0,!1],...xj}),this.grayscale=ha.BOOLEAN(1,{...xj})}};class rW extends bj{constructor(){super(...arguments),this.paramsConfig=sW}static type(){return\\\\\\\"film\\\\\\\"}_createPass(t){const e=new iW(this.pv.noiseIntensity,this.pv.scanlinesIntensity,this.pv.scanlinesCount,this.pv.grayscale?1:0);return this.updatePass(e),e}updatePass(t){t.uniforms.nIntensity.value=this.pv.noiseIntensity,t.uniforms.sIntensity.value=this.pv.scanlinesIntensity,t.uniforms.sCount.value=this.pv.scanlinesCount,t.uniforms.grayscale.value=this.pv.grayscale?1:0}}const oW={uniforms:{tDiffuse:{value:null},resolution:{value:new d.a(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\\\\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#define FXAA_PC 1\\\\n\\\\t\\\\t#define FXAA_GLSL_100 1\\\\n\\\\t\\\\t#define FXAA_QUALITY_PRESET 12\\\\n\\\\n\\\\t\\\\t#define FXAA_GREEN_AS_LUMA 1\\\\n\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t#ifndef FXAA_PC_CONSOLE\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t// The console algorithm for PC is included\\\\n\\\\t\\\\t\\\\t\\\\t// for developers targeting really low spec machines.\\\\n\\\\t\\\\t\\\\t\\\\t// Likely better to just run FXAA_PC, and use a really low preset.\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_PC_CONSOLE 0\\\\n\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t#ifndef FXAA_GLSL_120\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_GLSL_120 0\\\\n\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t#ifndef FXAA_GLSL_130\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_GLSL_130 0\\\\n\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t#ifndef FXAA_HLSL_3\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_HLSL_3 0\\\\n\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t#ifndef FXAA_HLSL_4\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_HLSL_4 0\\\\n\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t#ifndef FXAA_HLSL_5\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_HLSL_5 0\\\\n\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*==========================================================================*/\\\\n\\\\t\\\\t#ifndef FXAA_GREEN_AS_LUMA\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t// For those using non-linear color,\\\\n\\\\t\\\\t\\\\t\\\\t// and either not able to get luma in alpha, or not wanting to,\\\\n\\\\t\\\\t\\\\t\\\\t// this enables FXAA to run using green as a proxy for luma.\\\\n\\\\t\\\\t\\\\t\\\\t// So with this enabled, no need to pack luma in alpha.\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t// This will turn off AA on anything which lacks some amount of green.\\\\n\\\\t\\\\t\\\\t\\\\t// Pure red and blue or combination of only R and B, will get no AA.\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t// Might want to lower the settings for both,\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t\\\\tfxaaConsoleEdgeThresholdMin\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t\\\\tfxaaQualityEdgeThresholdMin\\\\n\\\\t\\\\t\\\\t\\\\t// In order to insure AA does not get turned off on colors\\\\n\\\\t\\\\t\\\\t\\\\t// which contain a minor amount of green.\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t// 1 = On.\\\\n\\\\t\\\\t\\\\t\\\\t// 0 = Off.\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_GREEN_AS_LUMA 0\\\\n\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t#ifndef FXAA_EARLY_EXIT\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t// Controls algorithm\\\\'s early exit path.\\\\n\\\\t\\\\t\\\\t\\\\t// On PS3 turning this ON adds 2 cycles to the shader.\\\\n\\\\t\\\\t\\\\t\\\\t// On 360 turning this OFF adds 10ths of a millisecond to the shader.\\\\n\\\\t\\\\t\\\\t\\\\t// Turning this off on console will result in a more blurry image.\\\\n\\\\t\\\\t\\\\t\\\\t// So this defaults to on.\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t// 1 = On.\\\\n\\\\t\\\\t\\\\t\\\\t// 0 = Off.\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_EARLY_EXIT 1\\\\n\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t#ifndef FXAA_DISCARD\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t// Only valid for PC OpenGL currently.\\\\n\\\\t\\\\t\\\\t\\\\t// Probably will not work when FXAA_GREEN_AS_LUMA = 1.\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t// 1 = Use discard on pixels which don\\\\'t need AA.\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t\\\\t For APIs which enable concurrent TEX+ROP from same surface.\\\\n\\\\t\\\\t\\\\t\\\\t// 0 = Return unchanged color on pixels which don\\\\'t need AA.\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_DISCARD 0\\\\n\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t#ifndef FXAA_FAST_PIXEL_OFFSET\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t// Used for GLSL 120 only.\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t// 1 = GL API supports fast pixel offsets\\\\n\\\\t\\\\t\\\\t\\\\t// 0 = do not use fast pixel offsets\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t#ifdef GL_EXT_gpu_shader4\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#define FXAA_FAST_PIXEL_OFFSET 1\\\\n\\\\t\\\\t\\\\t\\\\t#endif\\\\n\\\\t\\\\t\\\\t\\\\t#ifdef GL_NV_gpu_shader5\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#define FXAA_FAST_PIXEL_OFFSET 1\\\\n\\\\t\\\\t\\\\t\\\\t#endif\\\\n\\\\t\\\\t\\\\t\\\\t#ifdef GL_ARB_gpu_shader5\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#define FXAA_FAST_PIXEL_OFFSET 1\\\\n\\\\t\\\\t\\\\t\\\\t#endif\\\\n\\\\t\\\\t\\\\t\\\\t#ifndef FXAA_FAST_PIXEL_OFFSET\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#define FXAA_FAST_PIXEL_OFFSET 0\\\\n\\\\t\\\\t\\\\t\\\\t#endif\\\\n\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t#ifndef FXAA_GATHER4_ALPHA\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t// 1 = API supports gather4 on alpha channel.\\\\n\\\\t\\\\t\\\\t\\\\t// 0 = API does not support gather4 on alpha channel.\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t#if (FXAA_HLSL_5 == 1)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#define FXAA_GATHER4_ALPHA 1\\\\n\\\\t\\\\t\\\\t\\\\t#endif\\\\n\\\\t\\\\t\\\\t\\\\t#ifdef GL_ARB_gpu_shader5\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#define FXAA_GATHER4_ALPHA 1\\\\n\\\\t\\\\t\\\\t\\\\t#endif\\\\n\\\\t\\\\t\\\\t\\\\t#ifdef GL_NV_gpu_shader5\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#define FXAA_GATHER4_ALPHA 1\\\\n\\\\t\\\\t\\\\t\\\\t#endif\\\\n\\\\t\\\\t\\\\t\\\\t#ifndef FXAA_GATHER4_ALPHA\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#define FXAA_GATHER4_ALPHA 0\\\\n\\\\t\\\\t\\\\t\\\\t#endif\\\\n\\\\t\\\\t#endif\\\\n\\\\n\\\\n\\\\t\\\\t/*============================================================================\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tFXAA QUALITY - TUNING KNOBS\\\\n\\\\t\\\\t------------------------------------------------------------------------------\\\\n\\\\t\\\\tNOTE the other tuning knobs are now in the shader function inputs!\\\\n\\\\t\\\\t============================================================================*/\\\\n\\\\t\\\\t#ifndef FXAA_QUALITY_PRESET\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t// Choose the quality preset.\\\\n\\\\t\\\\t\\\\t\\\\t// This needs to be compiled into the shader as it effects code.\\\\n\\\\t\\\\t\\\\t\\\\t// Best option to include multiple presets is to\\\\n\\\\t\\\\t\\\\t\\\\t// in each shader define the preset, then include this file.\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t// OPTIONS\\\\n\\\\t\\\\t\\\\t\\\\t// -----------------------------------------------------------------------\\\\n\\\\t\\\\t\\\\t\\\\t// 10 to 15 - default medium dither (10=fastest, 15=highest quality)\\\\n\\\\t\\\\t\\\\t\\\\t// 20 to 29 - less dither, more expensive (20=fastest, 29=highest quality)\\\\n\\\\t\\\\t\\\\t\\\\t// 39\\\\t\\\\t\\\\t - no dither, very expensive\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t// NOTES\\\\n\\\\t\\\\t\\\\t\\\\t// -----------------------------------------------------------------------\\\\n\\\\t\\\\t\\\\t\\\\t// 12 = slightly faster then FXAA 3.9 and higher edge quality (default)\\\\n\\\\t\\\\t\\\\t\\\\t// 13 = about same speed as FXAA 3.9 and better than 12\\\\n\\\\t\\\\t\\\\t\\\\t// 23 = closest to FXAA 3.9 visually and performance wise\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t_ = the lowest digit is directly related to performance\\\\n\\\\t\\\\t\\\\t\\\\t// _\\\\t= the highest digit is directly related to style\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_PRESET 12\\\\n\\\\t\\\\t#endif\\\\n\\\\n\\\\n\\\\t\\\\t/*============================================================================\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t FXAA QUALITY - PRESETS\\\\n\\\\n\\\\t\\\\t============================================================================*/\\\\n\\\\n\\\\t\\\\t/*============================================================================\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t FXAA QUALITY - MEDIUM DITHER PRESETS\\\\n\\\\t\\\\t============================================================================*/\\\\n\\\\t\\\\t#if (FXAA_QUALITY_PRESET == 10)\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_PS 3\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P0 1.5\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P1 3.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P2 12.0\\\\n\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t#if (FXAA_QUALITY_PRESET == 11)\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_PS 4\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P0 1.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P1 1.5\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P2 3.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P3 12.0\\\\n\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t#if (FXAA_QUALITY_PRESET == 12)\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_PS 5\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P0 1.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P1 1.5\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P2 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P3 4.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P4 12.0\\\\n\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t#if (FXAA_QUALITY_PRESET == 13)\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_PS 6\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P0 1.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P1 1.5\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P2 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P3 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P4 4.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P5 12.0\\\\n\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t#if (FXAA_QUALITY_PRESET == 14)\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_PS 7\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P0 1.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P1 1.5\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P2 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P3 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P4 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P5 4.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P6 12.0\\\\n\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t#if (FXAA_QUALITY_PRESET == 15)\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_PS 8\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P0 1.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P1 1.5\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P2 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P3 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P4 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P5 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P6 4.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P7 12.0\\\\n\\\\t\\\\t#endif\\\\n\\\\n\\\\t\\\\t/*============================================================================\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t FXAA QUALITY - LOW DITHER PRESETS\\\\n\\\\t\\\\t============================================================================*/\\\\n\\\\t\\\\t#if (FXAA_QUALITY_PRESET == 20)\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_PS 3\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P0 1.5\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P1 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P2 8.0\\\\n\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t#if (FXAA_QUALITY_PRESET == 21)\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_PS 4\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P0 1.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P1 1.5\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P2 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P3 8.0\\\\n\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t#if (FXAA_QUALITY_PRESET == 22)\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_PS 5\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P0 1.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P1 1.5\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P2 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P3 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P4 8.0\\\\n\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t#if (FXAA_QUALITY_PRESET == 23)\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_PS 6\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P0 1.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P1 1.5\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P2 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P3 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P4 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P5 8.0\\\\n\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t#if (FXAA_QUALITY_PRESET == 24)\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_PS 7\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P0 1.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P1 1.5\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P2 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P3 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P4 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P5 3.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P6 8.0\\\\n\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t#if (FXAA_QUALITY_PRESET == 25)\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_PS 8\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P0 1.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P1 1.5\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P2 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P3 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P4 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P5 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P6 4.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P7 8.0\\\\n\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t#if (FXAA_QUALITY_PRESET == 26)\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_PS 9\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P0 1.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P1 1.5\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P2 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P3 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P4 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P5 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P6 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P7 4.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P8 8.0\\\\n\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t#if (FXAA_QUALITY_PRESET == 27)\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_PS 10\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P0 1.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P1 1.5\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P2 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P3 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P4 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P5 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P6 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P7 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P8 4.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P9 8.0\\\\n\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t#if (FXAA_QUALITY_PRESET == 28)\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_PS 11\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P0 1.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P1 1.5\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P2 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P3 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P4 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P5 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P6 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P7 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P8 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P9 4.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P10 8.0\\\\n\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t#if (FXAA_QUALITY_PRESET == 29)\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_PS 12\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P0 1.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P1 1.5\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P2 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P3 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P4 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P5 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P6 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P7 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P8 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P9 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P10 4.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P11 8.0\\\\n\\\\t\\\\t#endif\\\\n\\\\n\\\\t\\\\t/*============================================================================\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t FXAA QUALITY - EXTREME QUALITY\\\\n\\\\t\\\\t============================================================================*/\\\\n\\\\t\\\\t#if (FXAA_QUALITY_PRESET == 39)\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_PS 12\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P0 1.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P1 1.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P2 1.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P3 1.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P4 1.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P5 1.5\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P6 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P7 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P8 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P9 2.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P10 4.0\\\\n\\\\t\\\\t\\\\t\\\\t#define FXAA_QUALITY_P11 8.0\\\\n\\\\t\\\\t#endif\\\\n\\\\n\\\\n\\\\n\\\\t\\\\t/*============================================================================\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tAPI PORTING\\\\n\\\\n\\\\t\\\\t============================================================================*/\\\\n\\\\t\\\\t#if (FXAA_GLSL_100 == 1) || (FXAA_GLSL_120 == 1) || (FXAA_GLSL_130 == 1)\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaBool bool\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaDiscard discard\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaFloat float\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaFloat2 vec2\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaFloat3 vec3\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaFloat4 vec4\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaHalf float\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaHalf2 vec2\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaHalf3 vec3\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaHalf4 vec4\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaInt2 ivec2\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaSat(x) clamp(x, 0.0, 1.0)\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaTex sampler2D\\\\n\\\\t\\\\t#else\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaBool bool\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaDiscard clip(-1)\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaFloat float\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaFloat2 float2\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaFloat3 float3\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaFloat4 float4\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaHalf half\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaHalf2 half2\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaHalf3 half3\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaHalf4 half4\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaSat(x) saturate(x)\\\\n\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t#if (FXAA_GLSL_100 == 1)\\\\n\\\\t\\\\t\\\\t#define FxaaTexTop(t, p) texture2D(t, p, 0.0)\\\\n\\\\t\\\\t\\\\t#define FxaaTexOff(t, p, o, r) texture2D(t, p + (o * r), 0.0)\\\\n\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t#if (FXAA_GLSL_120 == 1)\\\\n\\\\t\\\\t\\\\t\\\\t// Requires,\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t#version 120\\\\n\\\\t\\\\t\\\\t\\\\t// And at least,\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t#extension GL_EXT_gpu_shader4 : enable\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t(or set FXAA_FAST_PIXEL_OFFSET 1 to work like DX9)\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaTexTop(t, p) texture2DLod(t, p, 0.0)\\\\n\\\\t\\\\t\\\\t\\\\t#if (FXAA_FAST_PIXEL_OFFSET == 1)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#define FxaaTexOff(t, p, o, r) texture2DLodOffset(t, p, 0.0, o)\\\\n\\\\t\\\\t\\\\t\\\\t#else\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#define FxaaTexOff(t, p, o, r) texture2DLod(t, p + (o * r), 0.0)\\\\n\\\\t\\\\t\\\\t\\\\t#endif\\\\n\\\\t\\\\t\\\\t\\\\t#if (FXAA_GATHER4_ALPHA == 1)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t// use #extension GL_ARB_gpu_shader5 : enable\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#define FxaaTexAlpha4(t, p) textureGather(t, p, 3)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#define FxaaTexOffAlpha4(t, p, o) textureGatherOffset(t, p, o, 3)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#define FxaaTexGreen4(t, p) textureGather(t, p, 1)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#define FxaaTexOffGreen4(t, p, o) textureGatherOffset(t, p, o, 1)\\\\n\\\\t\\\\t\\\\t\\\\t#endif\\\\n\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t#if (FXAA_GLSL_130 == 1)\\\\n\\\\t\\\\t\\\\t\\\\t// Requires \\\\\\\"#version 130\\\\\\\" or better\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaTexTop(t, p) textureLod(t, p, 0.0)\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaTexOff(t, p, o, r) textureLodOffset(t, p, 0.0, o)\\\\n\\\\t\\\\t\\\\t\\\\t#if (FXAA_GATHER4_ALPHA == 1)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t// use #extension GL_ARB_gpu_shader5 : enable\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#define FxaaTexAlpha4(t, p) textureGather(t, p, 3)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#define FxaaTexOffAlpha4(t, p, o) textureGatherOffset(t, p, o, 3)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#define FxaaTexGreen4(t, p) textureGather(t, p, 1)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#define FxaaTexOffGreen4(t, p, o) textureGatherOffset(t, p, o, 1)\\\\n\\\\t\\\\t\\\\t\\\\t#endif\\\\n\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t#if (FXAA_HLSL_3 == 1)\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaInt2 float2\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaTex sampler2D\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaTexTop(t, p) tex2Dlod(t, float4(p, 0.0, 0.0))\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaTexOff(t, p, o, r) tex2Dlod(t, float4(p + (o * r), 0, 0))\\\\n\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t#if (FXAA_HLSL_4 == 1)\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaInt2 int2\\\\n\\\\t\\\\t\\\\t\\\\tstruct FxaaTex { SamplerState smpl; Texture2D tex; };\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaTexTop(t, p) t.tex.SampleLevel(t.smpl, p, 0.0)\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaTexOff(t, p, o, r) t.tex.SampleLevel(t.smpl, p, 0.0, o)\\\\n\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t#if (FXAA_HLSL_5 == 1)\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaInt2 int2\\\\n\\\\t\\\\t\\\\t\\\\tstruct FxaaTex { SamplerState smpl; Texture2D tex; };\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaTexTop(t, p) t.tex.SampleLevel(t.smpl, p, 0.0)\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaTexOff(t, p, o, r) t.tex.SampleLevel(t.smpl, p, 0.0, o)\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaTexAlpha4(t, p) t.tex.GatherAlpha(t.smpl, p)\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaTexOffAlpha4(t, p, o) t.tex.GatherAlpha(t.smpl, p, o)\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaTexGreen4(t, p) t.tex.GatherGreen(t.smpl, p)\\\\n\\\\t\\\\t\\\\t\\\\t#define FxaaTexOffGreen4(t, p, o) t.tex.GatherGreen(t.smpl, p, o)\\\\n\\\\t\\\\t#endif\\\\n\\\\n\\\\n\\\\t\\\\t/*============================================================================\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t GREEN AS LUMA OPTION SUPPORT FUNCTION\\\\n\\\\t\\\\t============================================================================*/\\\\n\\\\t\\\\t#if (FXAA_GREEN_AS_LUMA == 0)\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat FxaaLuma(FxaaFloat4 rgba) { return rgba.w; }\\\\n\\\\t\\\\t#else\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat FxaaLuma(FxaaFloat4 rgba) { return rgba.y; }\\\\n\\\\t\\\\t#endif\\\\n\\\\n\\\\n\\\\n\\\\n\\\\t\\\\t/*============================================================================\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t FXAA3 QUALITY - PC\\\\n\\\\n\\\\t\\\\t============================================================================*/\\\\n\\\\t\\\\t#if (FXAA_PC == 1)\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\tFxaaFloat4 FxaaPixelShader(\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t// Use noperspective interpolation here (turn off perspective interpolation).\\\\n\\\\t\\\\t\\\\t\\\\t// {xy} = center of pixel\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat2 pos,\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t// Used only for FXAA Console, and not used on the 360 version.\\\\n\\\\t\\\\t\\\\t\\\\t// Use noperspective interpolation here (turn off perspective interpolation).\\\\n\\\\t\\\\t\\\\t\\\\t// {xy_} = upper left of pixel\\\\n\\\\t\\\\t\\\\t\\\\t// {_zw} = lower right of pixel\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat4 fxaaConsolePosPos,\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t// Input color texture.\\\\n\\\\t\\\\t\\\\t\\\\t// {rgb_} = color in linear or perceptual color space\\\\n\\\\t\\\\t\\\\t\\\\t// if (FXAA_GREEN_AS_LUMA == 0)\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t\\\\t {__a} = luma in perceptual color space (not linear)\\\\n\\\\t\\\\t\\\\t\\\\tFxaaTex tex,\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t// Only used on the optimized 360 version of FXAA Console.\\\\n\\\\t\\\\t\\\\t\\\\t// For everything but 360, just use the same input here as for \\\\\\\"tex\\\\\\\".\\\\n\\\\t\\\\t\\\\t\\\\t// For 360, same texture, just alias with a 2nd sampler.\\\\n\\\\t\\\\t\\\\t\\\\t// This sampler needs to have an exponent bias of -1.\\\\n\\\\t\\\\t\\\\t\\\\tFxaaTex fxaaConsole360TexExpBiasNegOne,\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t// Only used on the optimized 360 version of FXAA Console.\\\\n\\\\t\\\\t\\\\t\\\\t// For everything but 360, just use the same input here as for \\\\\\\"tex\\\\\\\".\\\\n\\\\t\\\\t\\\\t\\\\t// For 360, same texture, just alias with a 3nd sampler.\\\\n\\\\t\\\\t\\\\t\\\\t// This sampler needs to have an exponent bias of -2.\\\\n\\\\t\\\\t\\\\t\\\\tFxaaTex fxaaConsole360TexExpBiasNegTwo,\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t// Only used on FXAA Quality.\\\\n\\\\t\\\\t\\\\t\\\\t// This must be from a constant/uniform.\\\\n\\\\t\\\\t\\\\t\\\\t// {x_} = 1.0/screenWidthInPixels\\\\n\\\\t\\\\t\\\\t\\\\t// {_y} = 1.0/screenHeightInPixels\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat2 fxaaQualityRcpFrame,\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t// Only used on FXAA Console.\\\\n\\\\t\\\\t\\\\t\\\\t// This must be from a constant/uniform.\\\\n\\\\t\\\\t\\\\t\\\\t// This effects sub-pixel AA quality and inversely sharpness.\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t Where N ranges between,\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t\\\\t N = 0.50 (default)\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t\\\\t N = 0.33 (sharper)\\\\n\\\\t\\\\t\\\\t\\\\t// {x__} = -N/screenWidthInPixels\\\\n\\\\t\\\\t\\\\t\\\\t// {_y_} = -N/screenHeightInPixels\\\\n\\\\t\\\\t\\\\t\\\\t// {_z_} =\\\\tN/screenWidthInPixels\\\\n\\\\t\\\\t\\\\t\\\\t// {__w} =\\\\tN/screenHeightInPixels\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat4 fxaaConsoleRcpFrameOpt,\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t// Only used on FXAA Console.\\\\n\\\\t\\\\t\\\\t\\\\t// Not used on 360, but used on PS3 and PC.\\\\n\\\\t\\\\t\\\\t\\\\t// This must be from a constant/uniform.\\\\n\\\\t\\\\t\\\\t\\\\t// {x__} = -2.0/screenWidthInPixels\\\\n\\\\t\\\\t\\\\t\\\\t// {_y_} = -2.0/screenHeightInPixels\\\\n\\\\t\\\\t\\\\t\\\\t// {_z_} =\\\\t2.0/screenWidthInPixels\\\\n\\\\t\\\\t\\\\t\\\\t// {__w} =\\\\t2.0/screenHeightInPixels\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat4 fxaaConsoleRcpFrameOpt2,\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t// Only used on FXAA Console.\\\\n\\\\t\\\\t\\\\t\\\\t// Only used on 360 in place of fxaaConsoleRcpFrameOpt2.\\\\n\\\\t\\\\t\\\\t\\\\t// This must be from a constant/uniform.\\\\n\\\\t\\\\t\\\\t\\\\t// {x__} =\\\\t8.0/screenWidthInPixels\\\\n\\\\t\\\\t\\\\t\\\\t// {_y_} =\\\\t8.0/screenHeightInPixels\\\\n\\\\t\\\\t\\\\t\\\\t// {_z_} = -4.0/screenWidthInPixels\\\\n\\\\t\\\\t\\\\t\\\\t// {__w} = -4.0/screenHeightInPixels\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat4 fxaaConsole360RcpFrameOpt2,\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t// Only used on FXAA Quality.\\\\n\\\\t\\\\t\\\\t\\\\t// This used to be the FXAA_QUALITY_SUBPIX define.\\\\n\\\\t\\\\t\\\\t\\\\t// It is here now to allow easier tuning.\\\\n\\\\t\\\\t\\\\t\\\\t// Choose the amount of sub-pixel aliasing removal.\\\\n\\\\t\\\\t\\\\t\\\\t// This can effect sharpness.\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t 1.00 - upper limit (softer)\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t 0.75 - default amount of filtering\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t 0.50 - lower limit (sharper, less sub-pixel aliasing removal)\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t 0.25 - almost off\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t 0.00 - completely off\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat fxaaQualitySubpix,\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t// Only used on FXAA Quality.\\\\n\\\\t\\\\t\\\\t\\\\t// This used to be the FXAA_QUALITY_EDGE_THRESHOLD define.\\\\n\\\\t\\\\t\\\\t\\\\t// It is here now to allow easier tuning.\\\\n\\\\t\\\\t\\\\t\\\\t// The minimum amount of local contrast required to apply algorithm.\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t 0.333 - too little (faster)\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t 0.250 - low quality\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t 0.166 - default\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t 0.125 - high quality\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t 0.063 - overkill (slower)\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat fxaaQualityEdgeThreshold,\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t// Only used on FXAA Quality.\\\\n\\\\t\\\\t\\\\t\\\\t// This used to be the FXAA_QUALITY_EDGE_THRESHOLD_MIN define.\\\\n\\\\t\\\\t\\\\t\\\\t// It is here now to allow easier tuning.\\\\n\\\\t\\\\t\\\\t\\\\t// Trims the algorithm from processing darks.\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t 0.0833 - upper limit (default, the start of visible unfiltered edges)\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t 0.0625 - high quality (faster)\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t 0.0312 - visible limit (slower)\\\\n\\\\t\\\\t\\\\t\\\\t// Special notes when using FXAA_GREEN_AS_LUMA,\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t Likely want to set this to zero.\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t As colors that are mostly not-green\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t will appear very dark in the green channel!\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t Tune by looking at mostly non-green content,\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t then start at zero and increase until aliasing is a problem.\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat fxaaQualityEdgeThresholdMin,\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t// Only used on FXAA Console.\\\\n\\\\t\\\\t\\\\t\\\\t// This used to be the FXAA_CONSOLE_EDGE_SHARPNESS define.\\\\n\\\\t\\\\t\\\\t\\\\t// It is here now to allow easier tuning.\\\\n\\\\t\\\\t\\\\t\\\\t// This does not effect PS3, as this needs to be compiled in.\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t Use FXAA_CONSOLE_PS3_EDGE_SHARPNESS for PS3.\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t Due to the PS3 being ALU bound,\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t there are only three safe values here: 2 and 4 and 8.\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t These options use the shaders ability to a free *|/ by 2|4|8.\\\\n\\\\t\\\\t\\\\t\\\\t// For all other platforms can be a non-power of two.\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t 8.0 is sharper (default!!!)\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t 4.0 is softer\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t 2.0 is really soft (good only for vector graphics inputs)\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat fxaaConsoleEdgeSharpness,\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t// Only used on FXAA Console.\\\\n\\\\t\\\\t\\\\t\\\\t// This used to be the FXAA_CONSOLE_EDGE_THRESHOLD define.\\\\n\\\\t\\\\t\\\\t\\\\t// It is here now to allow easier tuning.\\\\n\\\\t\\\\t\\\\t\\\\t// This does not effect PS3, as this needs to be compiled in.\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t Use FXAA_CONSOLE_PS3_EDGE_THRESHOLD for PS3.\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t Due to the PS3 being ALU bound,\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t there are only two safe values here: 1/4 and 1/8.\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t These options use the shaders ability to a free *|/ by 2|4|8.\\\\n\\\\t\\\\t\\\\t\\\\t// The console setting has a different mapping than the quality setting.\\\\n\\\\t\\\\t\\\\t\\\\t// Other platforms can use other values.\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t 0.125 leaves less aliasing, but is softer (default!!!)\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t 0.25 leaves more aliasing, and is sharper\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat fxaaConsoleEdgeThreshold,\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t// Only used on FXAA Console.\\\\n\\\\t\\\\t\\\\t\\\\t// This used to be the FXAA_CONSOLE_EDGE_THRESHOLD_MIN define.\\\\n\\\\t\\\\t\\\\t\\\\t// It is here now to allow easier tuning.\\\\n\\\\t\\\\t\\\\t\\\\t// Trims the algorithm from processing darks.\\\\n\\\\t\\\\t\\\\t\\\\t// The console setting has a different mapping than the quality setting.\\\\n\\\\t\\\\t\\\\t\\\\t// This only applies when FXAA_EARLY_EXIT is 1.\\\\n\\\\t\\\\t\\\\t\\\\t// This does not apply to PS3,\\\\n\\\\t\\\\t\\\\t\\\\t// PS3 was simplified to avoid more shader instructions.\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t 0.06 - faster but more aliasing in darks\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t 0.05 - default\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t 0.04 - slower and less aliasing in darks\\\\n\\\\t\\\\t\\\\t\\\\t// Special notes when using FXAA_GREEN_AS_LUMA,\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t Likely want to set this to zero.\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t As colors that are mostly not-green\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t will appear very dark in the green channel!\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t Tune by looking at mostly non-green content,\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\t then start at zero and increase until aliasing is a problem.\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat fxaaConsoleEdgeThresholdMin,\\\\n\\\\t\\\\t\\\\t\\\\t//\\\\n\\\\t\\\\t\\\\t\\\\t// Extra constants for 360 FXAA Console only.\\\\n\\\\t\\\\t\\\\t\\\\t// Use zeros or anything else for other platforms.\\\\n\\\\t\\\\t\\\\t\\\\t// These must be in physical constant registers and NOT immediates.\\\\n\\\\t\\\\t\\\\t\\\\t// Immediates will result in compiler un-optimizing.\\\\n\\\\t\\\\t\\\\t\\\\t// {xyzw} = float4(1.0, -1.0, 0.25, -0.25)\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat4 fxaaConsole360ConstDir\\\\n\\\\t\\\\t) {\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat2 posM;\\\\n\\\\t\\\\t\\\\t\\\\tposM.x = pos.x;\\\\n\\\\t\\\\t\\\\t\\\\tposM.y = pos.y;\\\\n\\\\t\\\\t\\\\t\\\\t#if (FXAA_GATHER4_ALPHA == 1)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#if (FXAA_DISCARD == 0)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tFxaaFloat4 rgbyM = FxaaTexTop(tex, posM);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#if (FXAA_GREEN_AS_LUMA == 0)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#define lumaM rgbyM.w\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#else\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#define lumaM rgbyM.y\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#endif\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#endif\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#if (FXAA_GREEN_AS_LUMA == 0)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tFxaaFloat4 luma4A = FxaaTexAlpha4(tex, posM);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tFxaaFloat4 luma4B = FxaaTexOffAlpha4(tex, posM, FxaaInt2(-1, -1));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#else\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tFxaaFloat4 luma4A = FxaaTexGreen4(tex, posM);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tFxaaFloat4 luma4B = FxaaTexOffGreen4(tex, posM, FxaaInt2(-1, -1));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#endif\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#if (FXAA_DISCARD == 1)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#define lumaM luma4A.w\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#endif\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#define lumaE luma4A.z\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#define lumaS luma4A.x\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#define lumaSE luma4A.y\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#define lumaNW luma4B.w\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#define lumaN luma4B.z\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#define lumaW luma4B.x\\\\n\\\\t\\\\t\\\\t\\\\t#else\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tFxaaFloat4 rgbyM = FxaaTexTop(tex, posM);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#if (FXAA_GREEN_AS_LUMA == 0)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#define lumaM rgbyM.w\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#else\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#define lumaM rgbyM.y\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#endif\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#if (FXAA_GLSL_100 == 1)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tFxaaFloat lumaS = FxaaLuma(FxaaTexOff(tex, posM, FxaaFloat2( 0.0, 1.0), fxaaQualityRcpFrame.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tFxaaFloat lumaE = FxaaLuma(FxaaTexOff(tex, posM, FxaaFloat2( 1.0, 0.0), fxaaQualityRcpFrame.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tFxaaFloat lumaN = FxaaLuma(FxaaTexOff(tex, posM, FxaaFloat2( 0.0,-1.0), fxaaQualityRcpFrame.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tFxaaFloat lumaW = FxaaLuma(FxaaTexOff(tex, posM, FxaaFloat2(-1.0, 0.0), fxaaQualityRcpFrame.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#else\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tFxaaFloat lumaS = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2( 0, 1), fxaaQualityRcpFrame.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tFxaaFloat lumaE = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2( 1, 0), fxaaQualityRcpFrame.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tFxaaFloat lumaN = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2( 0,-1), fxaaQualityRcpFrame.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tFxaaFloat lumaW = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(-1, 0), fxaaQualityRcpFrame.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#endif\\\\n\\\\t\\\\t\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat maxSM = max(lumaS, lumaM);\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat minSM = min(lumaS, lumaM);\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat maxESM = max(lumaE, maxSM);\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat minESM = min(lumaE, minSM);\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat maxWN = max(lumaN, lumaW);\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat minWN = min(lumaN, lumaW);\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat rangeMax = max(maxWN, maxESM);\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat rangeMin = min(minWN, minESM);\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat rangeMaxScaled = rangeMax * fxaaQualityEdgeThreshold;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat range = rangeMax - rangeMin;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat rangeMaxClamped = max(fxaaQualityEdgeThresholdMin, rangeMaxScaled);\\\\n\\\\t\\\\t\\\\t\\\\tFxaaBool earlyExit = range < rangeMaxClamped;\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\tif(earlyExit)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#if (FXAA_DISCARD == 1)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tFxaaDiscard;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#else\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\treturn rgbyM;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\t#if (FXAA_GATHER4_ALPHA == 0)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#if (FXAA_GLSL_100 == 1)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tFxaaFloat lumaNW = FxaaLuma(FxaaTexOff(tex, posM, FxaaFloat2(-1.0,-1.0), fxaaQualityRcpFrame.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tFxaaFloat lumaSE = FxaaLuma(FxaaTexOff(tex, posM, FxaaFloat2( 1.0, 1.0), fxaaQualityRcpFrame.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tFxaaFloat lumaNE = FxaaLuma(FxaaTexOff(tex, posM, FxaaFloat2( 1.0,-1.0), fxaaQualityRcpFrame.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tFxaaFloat lumaSW = FxaaLuma(FxaaTexOff(tex, posM, FxaaFloat2(-1.0, 1.0), fxaaQualityRcpFrame.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#else\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tFxaaFloat lumaNW = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(-1,-1), fxaaQualityRcpFrame.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tFxaaFloat lumaSE = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2( 1, 1), fxaaQualityRcpFrame.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tFxaaFloat lumaNE = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2( 1,-1), fxaaQualityRcpFrame.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tFxaaFloat lumaSW = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(-1, 1), fxaaQualityRcpFrame.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#endif\\\\n\\\\t\\\\t\\\\t\\\\t#else\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tFxaaFloat lumaNE = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(1, -1), fxaaQualityRcpFrame.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tFxaaFloat lumaSW = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(-1, 1), fxaaQualityRcpFrame.xy));\\\\n\\\\t\\\\t\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat lumaNS = lumaN + lumaS;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat lumaWE = lumaW + lumaE;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat subpixRcpRange = 1.0/range;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat subpixNSWE = lumaNS + lumaWE;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat edgeHorz1 = (-2.0 * lumaM) + lumaNS;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat edgeVert1 = (-2.0 * lumaM) + lumaWE;\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat lumaNESE = lumaNE + lumaSE;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat lumaNWNE = lumaNW + lumaNE;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat edgeHorz2 = (-2.0 * lumaE) + lumaNESE;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat edgeVert2 = (-2.0 * lumaN) + lumaNWNE;\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat lumaNWSW = lumaNW + lumaSW;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat lumaSWSE = lumaSW + lumaSE;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat edgeHorz4 = (abs(edgeHorz1) * 2.0) + abs(edgeHorz2);\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat edgeVert4 = (abs(edgeVert1) * 2.0) + abs(edgeVert2);\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat edgeHorz3 = (-2.0 * lumaW) + lumaNWSW;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat edgeVert3 = (-2.0 * lumaS) + lumaSWSE;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat edgeHorz = abs(edgeHorz3) + edgeHorz4;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat edgeVert = abs(edgeVert3) + edgeVert4;\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat subpixNWSWNESE = lumaNWSW + lumaNESE;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat lengthSign = fxaaQualityRcpFrame.x;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaBool horzSpan = edgeHorz >= edgeVert;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat subpixA = subpixNSWE * 2.0 + subpixNWSWNESE;\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\tif(!horzSpan) lumaN = lumaW;\\\\n\\\\t\\\\t\\\\t\\\\tif(!horzSpan) lumaS = lumaE;\\\\n\\\\t\\\\t\\\\t\\\\tif(horzSpan) lengthSign = fxaaQualityRcpFrame.y;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat subpixB = (subpixA * (1.0/12.0)) - lumaM;\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat gradientN = lumaN - lumaM;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat gradientS = lumaS - lumaM;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat lumaNN = lumaN + lumaM;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat lumaSS = lumaS + lumaM;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaBool pairN = abs(gradientN) >= abs(gradientS);\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat gradient = max(abs(gradientN), abs(gradientS));\\\\n\\\\t\\\\t\\\\t\\\\tif(pairN) lengthSign = -lengthSign;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat subpixC = FxaaSat(abs(subpixB) * subpixRcpRange);\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat2 posB;\\\\n\\\\t\\\\t\\\\t\\\\tposB.x = posM.x;\\\\n\\\\t\\\\t\\\\t\\\\tposB.y = posM.y;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat2 offNP;\\\\n\\\\t\\\\t\\\\t\\\\toffNP.x = (!horzSpan) ? 0.0 : fxaaQualityRcpFrame.x;\\\\n\\\\t\\\\t\\\\t\\\\toffNP.y = ( horzSpan) ? 0.0 : fxaaQualityRcpFrame.y;\\\\n\\\\t\\\\t\\\\t\\\\tif(!horzSpan) posB.x += lengthSign * 0.5;\\\\n\\\\t\\\\t\\\\t\\\\tif( horzSpan) posB.y += lengthSign * 0.5;\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat2 posN;\\\\n\\\\t\\\\t\\\\t\\\\tposN.x = posB.x - offNP.x * FXAA_QUALITY_P0;\\\\n\\\\t\\\\t\\\\t\\\\tposN.y = posB.y - offNP.y * FXAA_QUALITY_P0;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat2 posP;\\\\n\\\\t\\\\t\\\\t\\\\tposP.x = posB.x + offNP.x * FXAA_QUALITY_P0;\\\\n\\\\t\\\\t\\\\t\\\\tposP.y = posB.y + offNP.y * FXAA_QUALITY_P0;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat subpixD = ((-2.0)*subpixC) + 3.0;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat lumaEndN = FxaaLuma(FxaaTexTop(tex, posN));\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat subpixE = subpixC * subpixC;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat lumaEndP = FxaaLuma(FxaaTexTop(tex, posP));\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\tif(!pairN) lumaNN = lumaSS;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat gradientScaled = gradient * 1.0/4.0;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat lumaMM = lumaM - lumaNN * 0.5;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat subpixF = subpixD * subpixE;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaBool lumaMLTZero = lumaMM < 0.0;\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\tlumaEndN -= lumaNN * 0.5;\\\\n\\\\t\\\\t\\\\t\\\\tlumaEndP -= lumaNN * 0.5;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaBool doneN = abs(lumaEndN) >= gradientScaled;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaBool doneP = abs(lumaEndP) >= gradientScaled;\\\\n\\\\t\\\\t\\\\t\\\\tif(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P1;\\\\n\\\\t\\\\t\\\\t\\\\tif(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P1;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaBool doneNP = (!doneN) || (!doneP);\\\\n\\\\t\\\\t\\\\t\\\\tif(!doneP) posP.x += offNP.x * FXAA_QUALITY_P1;\\\\n\\\\t\\\\t\\\\t\\\\tif(!doneP) posP.y += offNP.y * FXAA_QUALITY_P1;\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\tif(doneNP) {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tdoneN = abs(lumaEndN) >= gradientScaled;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tdoneP = abs(lumaEndP) >= gradientScaled;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P2;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P2;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tdoneNP = (!doneN) || (!doneP);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) posP.x += offNP.x * FXAA_QUALITY_P2;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) posP.y += offNP.y * FXAA_QUALITY_P2;\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#if (FXAA_QUALITY_PS > 3)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(doneNP) {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tdoneN = abs(lumaEndN) >= gradientScaled;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tdoneP = abs(lumaEndP) >= gradientScaled;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P3;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P3;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tdoneNP = (!doneN) || (!doneP);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) posP.x += offNP.x * FXAA_QUALITY_P3;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) posP.y += offNP.y * FXAA_QUALITY_P3;\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#if (FXAA_QUALITY_PS > 4)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(doneNP) {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tdoneN = abs(lumaEndN) >= gradientScaled;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tdoneP = abs(lumaEndP) >= gradientScaled;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P4;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P4;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tdoneNP = (!doneN) || (!doneP);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) posP.x += offNP.x * FXAA_QUALITY_P4;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) posP.y += offNP.y * FXAA_QUALITY_P4;\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#if (FXAA_QUALITY_PS > 5)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(doneNP) {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tdoneN = abs(lumaEndN) >= gradientScaled;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tdoneP = abs(lumaEndP) >= gradientScaled;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P5;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P5;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tdoneNP = (!doneN) || (!doneP);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) posP.x += offNP.x * FXAA_QUALITY_P5;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) posP.y += offNP.y * FXAA_QUALITY_P5;\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#if (FXAA_QUALITY_PS > 6)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(doneNP) {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tdoneN = abs(lumaEndN) >= gradientScaled;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tdoneP = abs(lumaEndP) >= gradientScaled;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P6;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P6;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tdoneNP = (!doneN) || (!doneP);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) posP.x += offNP.x * FXAA_QUALITY_P6;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) posP.y += offNP.y * FXAA_QUALITY_P6;\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#if (FXAA_QUALITY_PS > 7)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(doneNP) {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tdoneN = abs(lumaEndN) >= gradientScaled;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tdoneP = abs(lumaEndP) >= gradientScaled;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P7;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P7;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tdoneNP = (!doneN) || (!doneP);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) posP.x += offNP.x * FXAA_QUALITY_P7;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) posP.y += offNP.y * FXAA_QUALITY_P7;\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\t#if (FXAA_QUALITY_PS > 8)\\\\n\\\\t\\\\t\\\\t\\\\tif(doneNP) {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tdoneN = abs(lumaEndN) >= gradientScaled;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tdoneP = abs(lumaEndP) >= gradientScaled;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P8;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P8;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tdoneNP = (!doneN) || (!doneP);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) posP.x += offNP.x * FXAA_QUALITY_P8;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) posP.y += offNP.y * FXAA_QUALITY_P8;\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#if (FXAA_QUALITY_PS > 9)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(doneNP) {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tdoneN = abs(lumaEndN) >= gradientScaled;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tdoneP = abs(lumaEndP) >= gradientScaled;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P9;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P9;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tdoneNP = (!doneN) || (!doneP);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) posP.x += offNP.x * FXAA_QUALITY_P9;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) posP.y += offNP.y * FXAA_QUALITY_P9;\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#if (FXAA_QUALITY_PS > 10)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(doneNP) {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tdoneN = abs(lumaEndN) >= gradientScaled;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tdoneP = abs(lumaEndP) >= gradientScaled;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P10;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P10;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tdoneNP = (!doneN) || (!doneP);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) posP.x += offNP.x * FXAA_QUALITY_P10;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) posP.y += offNP.y * FXAA_QUALITY_P10;\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#if (FXAA_QUALITY_PS > 11)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(doneNP) {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tdoneN = abs(lumaEndN) >= gradientScaled;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tdoneP = abs(lumaEndP) >= gradientScaled;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P11;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P11;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tdoneNP = (!doneN) || (!doneP);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) posP.x += offNP.x * FXAA_QUALITY_P11;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) posP.y += offNP.y * FXAA_QUALITY_P11;\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#if (FXAA_QUALITY_PS > 12)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(doneNP) {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tdoneN = abs(lumaEndN) >= gradientScaled;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tdoneP = abs(lumaEndP) >= gradientScaled;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P12;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P12;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tdoneNP = (!doneN) || (!doneP);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) posP.x += offNP.x * FXAA_QUALITY_P12;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tif(!doneP) posP.y += offNP.y * FXAA_QUALITY_P12;\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t#endif\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat dstN = posM.x - posN.x;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat dstP = posP.x - posM.x;\\\\n\\\\t\\\\t\\\\t\\\\tif(!horzSpan) dstN = posM.y - posN.y;\\\\n\\\\t\\\\t\\\\t\\\\tif(!horzSpan) dstP = posP.y - posM.y;\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\tFxaaBool goodSpanN = (lumaEndN < 0.0) != lumaMLTZero;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat spanLength = (dstP + dstN);\\\\n\\\\t\\\\t\\\\t\\\\tFxaaBool goodSpanP = (lumaEndP < 0.0) != lumaMLTZero;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat spanLengthRcp = 1.0/spanLength;\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\tFxaaBool directionN = dstN < dstP;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat dst = min(dstN, dstP);\\\\n\\\\t\\\\t\\\\t\\\\tFxaaBool goodSpan = directionN ? goodSpanN : goodSpanP;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat subpixG = subpixF * subpixF;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat pixelOffset = (dst * (-spanLengthRcp)) + 0.5;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat subpixH = subpixG * fxaaQualitySubpix;\\\\n\\\\t\\\\t/*--------------------------------------------------------------------------*/\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat pixelOffsetGood = goodSpan ? pixelOffset : 0.0;\\\\n\\\\t\\\\t\\\\t\\\\tFxaaFloat pixelOffsetSubpix = max(pixelOffsetGood, subpixH);\\\\n\\\\t\\\\t\\\\t\\\\tif(!horzSpan) posM.x += pixelOffsetSubpix * lengthSign;\\\\n\\\\t\\\\t\\\\t\\\\tif( horzSpan) posM.y += pixelOffsetSubpix * lengthSign;\\\\n\\\\t\\\\t\\\\t\\\\t#if (FXAA_DISCARD == 1)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\treturn FxaaTexTop(tex, posM);\\\\n\\\\t\\\\t\\\\t\\\\t#else\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\treturn FxaaFloat4(FxaaTexTop(tex, posM).xyz, lumaM);\\\\n\\\\t\\\\t\\\\t\\\\t#endif\\\\n\\\\t\\\\t}\\\\n\\\\t\\\\t/*==========================================================================*/\\\\n\\\\t\\\\t#endif\\\\n\\\\n\\\\t\\\\tvoid main() {\\\\n\\\\t\\\\t\\\\tgl_FragColor = FxaaPixelShader(\\\\n\\\\t\\\\t\\\\t\\\\tvUv,\\\\n\\\\t\\\\t\\\\t\\\\tvec4(0.0),\\\\n\\\\t\\\\t\\\\t\\\\ttDiffuse,\\\\n\\\\t\\\\t\\\\t\\\\ttDiffuse,\\\\n\\\\t\\\\t\\\\t\\\\ttDiffuse,\\\\n\\\\t\\\\t\\\\t\\\\tresolution,\\\\n\\\\t\\\\t\\\\t\\\\tvec4(0.0),\\\\n\\\\t\\\\t\\\\t\\\\tvec4(0.0),\\\\n\\\\t\\\\t\\\\t\\\\tvec4(0.0),\\\\n\\\\t\\\\t\\\\t\\\\t0.75,\\\\n\\\\t\\\\t\\\\t\\\\t0.166,\\\\n\\\\t\\\\t\\\\t\\\\t0.0833,\\\\n\\\\t\\\\t\\\\t\\\\t0.0,\\\\n\\\\t\\\\t\\\\t\\\\t0.0,\\\\n\\\\t\\\\t\\\\t\\\\t0.0,\\\\n\\\\t\\\\t\\\\t\\\\tvec4(0.0)\\\\n\\\\t\\\\t\\\\t);\\\\n\\\\n\\\\t\\\\t\\\\t// TODO avoid querying texture twice for same texel\\\\n\\\\t\\\\t\\\\tgl_FragColor.a = texture2D(tDiffuse, vUv).a;\\\\n\\\\t\\\\t}'};const aW=new class extends ua{constructor(){super(...arguments),this.transparent=ha.BOOLEAN(1,xj)}};class lW extends bj{constructor(){super(...arguments),this.paramsConfig=aW}static type(){return\\\\\\\"FXAA\\\\\\\"}_createPass(t){const e=new Hm(oW);return e.uniforms.resolution.value.set(1/t.resolution.x,1/t.resolution.y),e.material.transparent=!0,this.updatePass(e),e}updatePass(t){t.material.transparent=this.pv.transparent}}const cW={uniforms:{tDiffuse:{value:null}},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 sampler2D tDiffuse;\\\\n\\\\n\\\\t\\\\tvarying vec2 vUv;\\\\n\\\\n\\\\t\\\\tvoid main() {\\\\n\\\\n\\\\t\\\\t\\\\tvec4 tex = texture2D( tDiffuse, vUv );\\\\n\\\\n\\\\t\\\\t\\\\tgl_FragColor = LinearTosRGB( tex ); // optional: LinearToGamma( tex, float( GAMMA_FACTOR ) );\\\\n\\\\n\\\\t\\\\t}\\\\\\\"};const hW=new class extends ua{};class uW extends bj{constructor(){super(...arguments),this.paramsConfig=hW}static type(){return\\\\\\\"gammaCorrection\\\\\\\"}_createPass(t){const e=new Hm(cW);return this.updatePass(e),e}updatePass(t){}}const dW=new class extends ua{constructor(){super(...arguments),this.amount=ha.FLOAT(2,{range:[0,10],rangeLocked:[!0,!1],step:.01,...xj}),this.transparent=ha.BOOLEAN(1,xj)}};class pW extends bj{constructor(){super(...arguments),this.paramsConfig=dW}static type(){return\\\\\\\"horizontalBlur\\\\\\\"}_createPass(t){const e=new Hm(CG);return e.resolution_x=t.resolution.x,this.updatePass(e),e}updatePass(t){t.uniforms.h.value=this.pv.amount/(t.resolution_x*window.devicePixelRatio),t.material.transparent=this.pv.transparent}}const _W=new class extends ua{constructor(){super(...arguments),this.map=ha.OPERATOR_PATH(vi.UV,{nodeSelection:{context:ts.COP},...xj}),this.darkness=ha.FLOAT(0,{range:[0,2],rangeLocked:[!0,!1],...xj}),this.offset=ha.FLOAT(0,{range:[0,2],rangeLocked:[!0,!1],...xj})}};class mW extends bj{constructor(){super(...arguments),this.paramsConfig=_W}static type(){return\\\\\\\"image\\\\\\\"}static _create_shader(){return{uniforms:{tDiffuse:{value:null},map:{value:null},offset:{value:1},darkness:{value:1}},vertexShader:\\\\\\\"varying vec2 vUv;\\\\nvoid main() {\\\\n\\\\tvUv = uv;\\\\n\\\\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\\\\n}\\\\\\\",fragmentShader:\\\\\\\"uniform float offset;\\\\nuniform float darkness;\\\\nuniform sampler2D tDiffuse;\\\\nuniform sampler2D map;\\\\nvarying vec2 vUv;\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\tvec4 texel = texture2D( tDiffuse, vUv );\\\\n\\\\tvec4 map_val = texture2D( map, vUv );\\\\n\\\\tvec2 uv = ( vUv - vec2( 0.5 ) ) * vec2( offset );\\\\n\\\\t// gl_FragColor = vec4( mix( texel.rgb, vec3( 1.0 - darkness ), dot( uv, uv ) ), texel.a );\\\\n\\\\tgl_FragColor = vec4( mix( texel.rgb, map_val.rgb, map_val.a ), texel.a );\\\\n\\\\n}\\\\n\\\\\\\"}}_createPass(t){const e=new Hm(mW._create_shader());return this.updatePass(e),e}updatePass(t){t.uniforms.darkness.value=this.pv.darkness,t.uniforms.offset.value=this.pv.offset,this._update_map(t)}async _update_map(t){this.p.map.isDirty()&&await this.p.map.compute();const e=this.p.map.found_node();if(e)if(e.context()==ts.COP){const n=e,i=(await n.compute()).coreContent();t.uniforms.map.value=i}else this.states.error.set(\\\\\\\"node is not COP\\\\\\\");else this.states.error.set(\\\\\\\"no map found\\\\\\\")}}const fW={tDiffuse:{value:null},texture1:{value:null},texture2:{value:null},h:{value:1/512}},gW=\\\\\\\"varying vec2 vUv;\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\tvUv = uv;\\\\n\\\\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\\\\n\\\\n}\\\\\\\",vW=\\\\\\\"uniform sampler2D texture1;\\\\nuniform sampler2D texture2;\\\\nvarying vec2 vUv;\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\tvec4 t1 = texture2D( texture1, vUv);\\\\n\\\\tvec4 t2 = texture2D( texture2, vUv);\\\\n\\\\n\\\\tvec3 c1 = t1.rgb * t1.a * (1.0-t2.a);\\\\n\\\\tvec3 c2 = t2.rgb * t2.a;\\\\n\\\\tfloat a = t2.a + t1.a;\\\\n\\\\tvec3 c = max(c1,c2);\\\\n\\\\n\\\\tgl_FragColor = vec4(c,a);\\\\n\\\\n}\\\\\\\";class yW extends km{constructor(t,e){super(),this._composer1=t,this._composer2=e,this.uniforms=I.clone(fW),this.material=new F({uniforms:this.uniforms,vertexShader:gW,fragmentShader:vW,transparent:!0}),this.fsQuad=new Vm(this.material)}render(t,e){this._composer1.render(),this._composer2.render(),this.uniforms.texture1.value=this._composer1.readBuffer.texture,this.uniforms.texture2.value=this._composer2.readBuffer.texture,this.renderToScreen?(t.setRenderTarget(null),this.fsQuad.render(t)):(t.setRenderTarget(e),this.clear&&t.clear(t.autoClearColor,t.autoClearDepth,t.autoClearStencil),this.fsQuad.render(t))}}const xW=new class extends ua{};class bW extends bj{constructor(){super(...arguments),this.paramsConfig=xW}static type(){return\\\\\\\"layer\\\\\\\"}initializeNode(){super.initializeNode(),this.io.inputs.setCount(2)}setupComposer(t){const e=t.composer.renderer,n={minFilter:w.V,magFilter:w.V,format:w.Ib,stencilBuffer:!0},i=li.renderersController.renderTarget(e.domElement.offsetWidth,e.domElement.offsetHeight,n),s=li.renderersController.renderTarget(e.domElement.offsetWidth,e.domElement.offsetHeight,n),r=new qm(e,i),o=new qm(e,s);r.renderToScreen=!1,o.renderToScreen=!1;const a={...t},l={...t};a.composer=r,l.composer=o,this._addPassFromInput(0,a),this._addPassFromInput(1,l);const c=new yW(r,o);this.updatePass(c),t.composer.addPass(c)}updatePass(t){}}const wW=new class extends ua{constructor(){super(...arguments),this.overrideScene=ha.BOOLEAN(0,xj),this.scene=ha.OPERATOR_PATH(\\\\\\\"/scene1\\\\\\\",{visibleIf:{overrideScene:1},nodeSelection:{context:ts.OBJ,types:[WV.type()]},...xj}),this.overrideCamera=ha.BOOLEAN(0,xj),this.camera=ha.OPERATOR_PATH(\\\\\\\"/perspective_camera1\\\\\\\",{visibleIf:{overrideCamera:1},nodeSelection:{context:ts.OBJ},...xj}),this.inverse=ha.BOOLEAN(0,xj)}};class TW extends bj{constructor(){super(...arguments),this.paramsConfig=wW}static type(){return\\\\\\\"mask\\\\\\\"}_createPass(t){const e=new jm(t.scene,t.camera);return e.context={scene:t.scene,camera:t.camera},this.updatePass(e),e}updatePass(t){t.inverse=this.pv.inverse,this._update_scene(t),this._updateCamera(t)}async _update_scene(t){if(this.pv.overrideScene){this.p.scene.isDirty()&&await this.p.scene.compute();const e=this.p.scene.found_node_with_expected_type();if(e)return void(t.scene=e.object)}t.scene=t.context.scene}async _updateCamera(t){if(this.pv.overrideCamera){this.p.camera.isDirty()&&await this.p.camera.compute();const e=this.p.camera.found_node_with_expected_type();if(e)return void(t.camera=e.object)}t.camera=t.context.camera}}const AW=new class extends ua{};class MW extends bj{constructor(){super(...arguments),this.paramsConfig=AW}static type(){return\\\\\\\"null\\\\\\\"}}class EW extends km{constructor(t,e,n,i){super(),this.renderScene=e,this.renderCamera=n,this.selectedObjects=void 0!==i?i:[],this.visibleEdgeColor=new D.a(1,1,1),this.hiddenEdgeColor=new D.a(.1,.04,.02),this.edgeGlow=0,this.usePatternTexture=!1,this.edgeThickness=1,this.edgeStrength=3,this.downSampleRatio=2,this.pulsePeriod=0,this._visibilityCache=new Map,this.resolution=void 0!==t?new d.a(t.x,t.y):new d.a(256,256);const s={minFilter:w.V,magFilter:w.V,format:w.Ib},r=Math.round(this.resolution.x/this.downSampleRatio),o=Math.round(this.resolution.y/this.downSampleRatio);this.maskBufferMaterial=new lt.a({color:16777215}),this.maskBufferMaterial.side=w.z,this.renderTargetMaskBuffer=new K(this.resolution.x,this.resolution.y,s),this.renderTargetMaskBuffer.texture.name=\\\\\\\"OutlinePass.mask\\\\\\\",this.renderTargetMaskBuffer.texture.generateMipmaps=!1,this.depthMaterial=new Sn,this.depthMaterial.side=w.z,this.depthMaterial.depthPacking=w.Hb,this.depthMaterial.blending=w.ub,this.prepareMaskMaterial=this.getPrepareMaskMaterial(),this.prepareMaskMaterial.side=w.z,this.prepareMaskMaterial.fragmentShader=function(t,e){var n=e.isPerspectiveCamera?\\\\\\\"perspective\\\\\\\":\\\\\\\"orthographic\\\\\\\";return t.replace(/DEPTH_TO_VIEW_Z/g,n+\\\\\\\"DepthToViewZ\\\\\\\")}(this.prepareMaskMaterial.fragmentShader,this.renderCamera),this.renderTargetDepthBuffer=new K(this.resolution.x,this.resolution.y,s),this.renderTargetDepthBuffer.texture.name=\\\\\\\"OutlinePass.depth\\\\\\\",this.renderTargetDepthBuffer.texture.generateMipmaps=!1,this.renderTargetMaskDownSampleBuffer=new K(r,o,s),this.renderTargetMaskDownSampleBuffer.texture.name=\\\\\\\"OutlinePass.depthDownSample\\\\\\\",this.renderTargetMaskDownSampleBuffer.texture.generateMipmaps=!1,this.renderTargetBlurBuffer1=new K(r,o,s),this.renderTargetBlurBuffer1.texture.name=\\\\\\\"OutlinePass.blur1\\\\\\\",this.renderTargetBlurBuffer1.texture.generateMipmaps=!1,this.renderTargetBlurBuffer2=new K(Math.round(r/2),Math.round(o/2),s),this.renderTargetBlurBuffer2.texture.name=\\\\\\\"OutlinePass.blur2\\\\\\\",this.renderTargetBlurBuffer2.texture.generateMipmaps=!1,this.edgeDetectionMaterial=this.getEdgeDetectionMaterial(),this.renderTargetEdgeBuffer1=new K(r,o,s),this.renderTargetEdgeBuffer1.texture.name=\\\\\\\"OutlinePass.edge1\\\\\\\",this.renderTargetEdgeBuffer1.texture.generateMipmaps=!1,this.renderTargetEdgeBuffer2=new K(Math.round(r/2),Math.round(o/2),s),this.renderTargetEdgeBuffer2.texture.name=\\\\\\\"OutlinePass.edge2\\\\\\\",this.renderTargetEdgeBuffer2.texture.generateMipmaps=!1;this.separableBlurMaterial1=this.getSeperableBlurMaterial(4),this.separableBlurMaterial1.uniforms.texSize.value.set(r,o),this.separableBlurMaterial1.uniforms.kernelRadius.value=1,this.separableBlurMaterial2=this.getSeperableBlurMaterial(4),this.separableBlurMaterial2.uniforms.texSize.value.set(Math.round(r/2),Math.round(o/2)),this.separableBlurMaterial2.uniforms.kernelRadius.value=4,this.overlayMaterial=this.getOverlayMaterial(),void 0===zm&&console.error(\\\\\\\"THREE.OutlinePass relies on CopyShader\\\\\\\");const a=zm;this.copyUniforms=I.clone(a.uniforms),this.copyUniforms.opacity.value=1,this.materialCopy=new F({uniforms:this.copyUniforms,vertexShader:a.vertexShader,fragmentShader:a.fragmentShader,blending:w.ub,depthTest:!1,depthWrite:!1,transparent:!0}),this.enabled=!0,this.needsSwap=!1,this._oldClearColor=new D.a,this.oldClearAlpha=1,this.fsQuad=new Vm(null),this.tempPulseColor1=new D.a,this.tempPulseColor2=new D.a,this.textureMatrix=new A.a}dispose(){this.renderTargetMaskBuffer.dispose(),this.renderTargetDepthBuffer.dispose(),this.renderTargetMaskDownSampleBuffer.dispose(),this.renderTargetBlurBuffer1.dispose(),this.renderTargetBlurBuffer2.dispose(),this.renderTargetEdgeBuffer1.dispose(),this.renderTargetEdgeBuffer2.dispose()}setSize(t,e){this.renderTargetMaskBuffer.setSize(t,e),this.renderTargetDepthBuffer.setSize(t,e);let n=Math.round(t/this.downSampleRatio),i=Math.round(e/this.downSampleRatio);this.renderTargetMaskDownSampleBuffer.setSize(n,i),this.renderTargetBlurBuffer1.setSize(n,i),this.renderTargetEdgeBuffer1.setSize(n,i),this.separableBlurMaterial1.uniforms.texSize.value.set(n,i),n=Math.round(n/2),i=Math.round(i/2),this.renderTargetBlurBuffer2.setSize(n,i),this.renderTargetEdgeBuffer2.setSize(n,i),this.separableBlurMaterial2.uniforms.texSize.value.set(n,i)}changeVisibilityOfSelectedObjects(t){const e=this._visibilityCache;function n(n){n.isMesh&&(!0===t?n.visible=e.get(n):(e.set(n,n.visible),n.visible=t))}for(let t=0;t<this.selectedObjects.length;t++){this.selectedObjects[t].traverse(n)}}changeVisibilityOfNonSelectedObjects(t){const e=this._visibilityCache,n=[];function i(t){t.isMesh&&n.push(t)}for(let t=0;t<this.selectedObjects.length;t++){this.selectedObjects[t].traverse(i)}this.renderScene.traverse((function(i){if(i.isMesh||i.isSprite){let s=!1;for(let t=0;t<n.length;t++){if(n[t].id===i.id){s=!0;break}}if(!1===s){const n=i.visible;!1!==t&&!0!==e.get(i)||(i.visible=t),e.set(i,n)}}else(i.isPoints||i.isLine)&&(!0===t?i.visible=e.get(i):(e.set(i,i.visible),i.visible=t))}))}updateTextureMatrix(){this.textureMatrix.set(.5,0,0,.5,0,.5,0,.5,0,0,.5,.5,0,0,0,1),this.textureMatrix.multiply(this.renderCamera.projectionMatrix),this.textureMatrix.multiply(this.renderCamera.matrixWorldInverse)}render(t,e,n,i,s){if(this.selectedObjects.length>0){t.getClearColor(this._oldClearColor),this.oldClearAlpha=t.getClearAlpha();const e=t.autoClear;t.autoClear=!1,s&&t.state.buffers.stencil.setTest(!1),t.setClearColor(16777215,1),this.changeVisibilityOfSelectedObjects(!1);const i=this.renderScene.background;if(this.renderScene.background=null,this.renderScene.overrideMaterial=this.depthMaterial,t.setRenderTarget(this.renderTargetDepthBuffer),t.clear(),t.render(this.renderScene,this.renderCamera),this.changeVisibilityOfSelectedObjects(!0),this._visibilityCache.clear(),this.updateTextureMatrix(),this.changeVisibilityOfNonSelectedObjects(!1),this.renderScene.overrideMaterial=this.prepareMaskMaterial,this.prepareMaskMaterial.uniforms.cameraNearFar.value.set(this.renderCamera.near,this.renderCamera.far),this.prepareMaskMaterial.uniforms.depthTexture.value=this.renderTargetDepthBuffer.texture,this.prepareMaskMaterial.uniforms.textureMatrix.value=this.textureMatrix,t.setRenderTarget(this.renderTargetMaskBuffer),t.clear(),t.render(this.renderScene,this.renderCamera),this.renderScene.overrideMaterial=null,this.changeVisibilityOfNonSelectedObjects(!0),this._visibilityCache.clear(),this.renderScene.background=i,this.fsQuad.material=this.materialCopy,this.copyUniforms.tDiffuse.value=this.renderTargetMaskBuffer.texture,t.setRenderTarget(this.renderTargetMaskDownSampleBuffer),t.clear(),this.fsQuad.render(t),this.tempPulseColor1.copy(this.visibleEdgeColor),this.tempPulseColor2.copy(this.hiddenEdgeColor),this.pulsePeriod>0){const t=.625+.75*Math.cos(.01*performance.now()/this.pulsePeriod)/2;this.tempPulseColor1.multiplyScalar(t),this.tempPulseColor2.multiplyScalar(t)}this.fsQuad.material=this.edgeDetectionMaterial,this.edgeDetectionMaterial.uniforms.maskTexture.value=this.renderTargetMaskDownSampleBuffer.texture,this.edgeDetectionMaterial.uniforms.texSize.value.set(this.renderTargetMaskDownSampleBuffer.width,this.renderTargetMaskDownSampleBuffer.height),this.edgeDetectionMaterial.uniforms.visibleEdgeColor.value=this.tempPulseColor1,this.edgeDetectionMaterial.uniforms.hiddenEdgeColor.value=this.tempPulseColor2,t.setRenderTarget(this.renderTargetEdgeBuffer1),t.clear(),this.fsQuad.render(t),this.fsQuad.material=this.separableBlurMaterial1,this.separableBlurMaterial1.uniforms.colorTexture.value=this.renderTargetEdgeBuffer1.texture,this.separableBlurMaterial1.uniforms.direction.value=EW.BlurDirectionX,this.separableBlurMaterial1.uniforms.kernelRadius.value=this.edgeThickness,t.setRenderTarget(this.renderTargetBlurBuffer1),t.clear(),this.fsQuad.render(t),this.separableBlurMaterial1.uniforms.colorTexture.value=this.renderTargetBlurBuffer1.texture,this.separableBlurMaterial1.uniforms.direction.value=EW.BlurDirectionY,t.setRenderTarget(this.renderTargetEdgeBuffer1),t.clear(),this.fsQuad.render(t),this.fsQuad.material=this.separableBlurMaterial2,this.separableBlurMaterial2.uniforms.colorTexture.value=this.renderTargetEdgeBuffer1.texture,this.separableBlurMaterial2.uniforms.direction.value=EW.BlurDirectionX,t.setRenderTarget(this.renderTargetBlurBuffer2),t.clear(),this.fsQuad.render(t),this.separableBlurMaterial2.uniforms.colorTexture.value=this.renderTargetBlurBuffer2.texture,this.separableBlurMaterial2.uniforms.direction.value=EW.BlurDirectionY,t.setRenderTarget(this.renderTargetEdgeBuffer2),t.clear(),this.fsQuad.render(t),this.fsQuad.material=this.overlayMaterial,this.overlayMaterial.uniforms.maskTexture.value=this.renderTargetMaskBuffer.texture,this.overlayMaterial.uniforms.edgeTexture1.value=this.renderTargetEdgeBuffer1.texture,this.overlayMaterial.uniforms.edgeTexture2.value=this.renderTargetEdgeBuffer2.texture,this.overlayMaterial.uniforms.patternTexture.value=this.patternTexture,this.overlayMaterial.uniforms.edgeStrength.value=this.edgeStrength,this.overlayMaterial.uniforms.edgeGlow.value=this.edgeGlow,this.overlayMaterial.uniforms.usePatternTexture.value=this.usePatternTexture,s&&t.state.buffers.stencil.setTest(!0),t.setRenderTarget(n),this.fsQuad.render(t),t.setClearColor(this._oldClearColor,this.oldClearAlpha),t.autoClear=e}this.renderToScreen&&(this.fsQuad.material=this.materialCopy,this.copyUniforms.tDiffuse.value=n.texture,t.setRenderTarget(null),this.fsQuad.render(t))}getPrepareMaskMaterial(){return new F({uniforms:{depthTexture:{value:null},cameraNearFar:{value:new d.a(.5,.5)},textureMatrix:{value:null}},vertexShader:\\\\\\\"#include <morphtarget_pars_vertex>\\\\n\\\\t\\\\t\\\\t\\\\t#include <skinning_pars_vertex>\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tvarying vec4 projTexCoord;\\\\n\\\\t\\\\t\\\\t\\\\tvarying vec4 vPosition;\\\\n\\\\t\\\\t\\\\t\\\\tuniform mat4 textureMatrix;\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tvoid main() {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t#include <skinbase_vertex>\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t#include <begin_vertex>\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t#include <morphtarget_vertex>\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t#include <skinning_vertex>\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t#include <project_vertex>\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tvPosition = mvPosition;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tvec4 worldPosition = modelMatrix * vec4( transformed, 1.0 );\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tprojTexCoord = textureMatrix * worldPosition;\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t}\\\\\\\",fragmentShader:\\\\\\\"#include <packing>\\\\n\\\\t\\\\t\\\\t\\\\tvarying vec4 vPosition;\\\\n\\\\t\\\\t\\\\t\\\\tvarying vec4 projTexCoord;\\\\n\\\\t\\\\t\\\\t\\\\tuniform sampler2D depthTexture;\\\\n\\\\t\\\\t\\\\t\\\\tuniform vec2 cameraNearFar;\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tvoid main() {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tfloat depth = unpackRGBAToDepth(texture2DProj( depthTexture, projTexCoord ));\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tfloat viewZ = - DEPTH_TO_VIEW_Z( depth, cameraNearFar.x, cameraNearFar.y );\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tfloat depthTest = (-vPosition.z > viewZ) ? 1.0 : 0.0;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tgl_FragColor = vec4(0.0, depthTest, 1.0, 1.0);\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t}\\\\\\\"})}getEdgeDetectionMaterial(){return new F({uniforms:{maskTexture:{value:null},texSize:{value:new d.a(.5,.5)},visibleEdgeColor:{value:new p.a(1,1,1)},hiddenEdgeColor:{value:new p.a(1,1,1)}},vertexShader:\\\\\\\"varying vec2 vUv;\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tvoid main() {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tvUv = uv;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\\\\n\\\\t\\\\t\\\\t\\\\t}\\\\\\\",fragmentShader:\\\\\\\"varying vec2 vUv;\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tuniform sampler2D maskTexture;\\\\n\\\\t\\\\t\\\\t\\\\tuniform vec2 texSize;\\\\n\\\\t\\\\t\\\\t\\\\tuniform vec3 visibleEdgeColor;\\\\n\\\\t\\\\t\\\\t\\\\tuniform vec3 hiddenEdgeColor;\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tvoid main() {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tvec2 invSize = 1.0 / texSize;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tvec4 uvOffset = vec4(1.0, 0.0, 0.0, 1.0) * vec4(invSize, invSize);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tvec4 c1 = texture2D( maskTexture, vUv + uvOffset.xy);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tvec4 c2 = texture2D( maskTexture, vUv - uvOffset.xy);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tvec4 c3 = texture2D( maskTexture, vUv + uvOffset.yw);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tvec4 c4 = texture2D( maskTexture, vUv - uvOffset.yw);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tfloat diff1 = (c1.r - c2.r)*0.5;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tfloat diff2 = (c3.r - c4.r)*0.5;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tfloat d = length( vec2(diff1, diff2) );\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tfloat a1 = min(c1.g, c2.g);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tfloat a2 = min(c3.g, c4.g);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tfloat visibilityFactor = min(a1, a2);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tvec3 edgeColor = 1.0 - visibilityFactor > 0.001 ? visibleEdgeColor : hiddenEdgeColor;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tgl_FragColor = vec4(edgeColor, 1.0) * vec4(d);\\\\n\\\\t\\\\t\\\\t\\\\t}\\\\\\\"})}getSeperableBlurMaterial(t){return new F({defines:{MAX_RADIUS:t},uniforms:{colorTexture:{value:null},texSize:{value:new d.a(.5,.5)},direction:{value:new d.a(.5,.5)},kernelRadius:{value:1}},vertexShader:\\\\\\\"varying vec2 vUv;\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tvoid main() {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tvUv = uv;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\\\\n\\\\t\\\\t\\\\t\\\\t}\\\\\\\",fragmentShader:\\\\\\\"#include <common>\\\\n\\\\t\\\\t\\\\t\\\\tvarying vec2 vUv;\\\\n\\\\t\\\\t\\\\t\\\\tuniform sampler2D colorTexture;\\\\n\\\\t\\\\t\\\\t\\\\tuniform vec2 texSize;\\\\n\\\\t\\\\t\\\\t\\\\tuniform vec2 direction;\\\\n\\\\t\\\\t\\\\t\\\\tuniform float kernelRadius;\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tfloat gaussianPdf(in float x, in float sigma) {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\treturn 0.39894 * exp( -0.5 * x * x/( sigma * sigma))/sigma;\\\\n\\\\t\\\\t\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tvoid main() {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tvec2 invSize = 1.0 / texSize;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tfloat weightSum = gaussianPdf(0.0, kernelRadius);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tvec4 diffuseSum = texture2D( colorTexture, vUv) * weightSum;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tvec2 delta = direction * invSize * kernelRadius/float(MAX_RADIUS);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tvec2 uvOffset = delta;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tfor( int i = 1; i <= MAX_RADIUS; i ++ ) {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tfloat w = gaussianPdf(uvOffset.x, kernelRadius);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tvec4 sample1 = texture2D( colorTexture, vUv + uvOffset);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tvec4 sample2 = texture2D( colorTexture, vUv - uvOffset);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tdiffuseSum += ((sample1 + sample2) * w);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tweightSum += (2.0 * w);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tuvOffset += delta;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tgl_FragColor = diffuseSum/weightSum;\\\\n\\\\t\\\\t\\\\t\\\\t}\\\\\\\"})}getOverlayMaterial(){return new F({uniforms:{maskTexture:{value:null},edgeTexture1:{value:null},edgeTexture2:{value:null},patternTexture:{value:null},edgeStrength:{value:1},edgeGlow:{value:1},usePatternTexture:{value:0}},vertexShader:\\\\\\\"varying vec2 vUv;\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tvoid main() {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tvUv = uv;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\\\\n\\\\t\\\\t\\\\t\\\\t}\\\\\\\",fragmentShader:\\\\\\\"varying vec2 vUv;\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tuniform sampler2D maskTexture;\\\\n\\\\t\\\\t\\\\t\\\\tuniform sampler2D edgeTexture1;\\\\n\\\\t\\\\t\\\\t\\\\tuniform sampler2D edgeTexture2;\\\\n\\\\t\\\\t\\\\t\\\\tuniform sampler2D patternTexture;\\\\n\\\\t\\\\t\\\\t\\\\tuniform float edgeStrength;\\\\n\\\\t\\\\t\\\\t\\\\tuniform float edgeGlow;\\\\n\\\\t\\\\t\\\\t\\\\tuniform bool usePatternTexture;\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tvoid main() {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tvec4 edgeValue1 = texture2D(edgeTexture1, vUv);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tvec4 edgeValue2 = texture2D(edgeTexture2, vUv);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tvec4 maskColor = texture2D(maskTexture, vUv);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tvec4 patternColor = texture2D(patternTexture, 6.0 * vUv);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tfloat visibilityFactor = 1.0 - maskColor.g > 0.0 ? 1.0 : 0.5;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tvec4 edgeValue = edgeValue1 + edgeValue2 * edgeGlow;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tvec4 finalColor = edgeStrength * maskColor.r * edgeValue;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tif(usePatternTexture)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tfinalColor += + visibilityFactor * (1.0 - maskColor.r) * (1.0 - patternColor.r);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tgl_FragColor = finalColor;\\\\n\\\\t\\\\t\\\\t\\\\t}\\\\\\\",blending:w.e,depthTest:!1,depthWrite:!1,transparent:!0})}}EW.BlurDirectionX=new d.a(1,0),EW.BlurDirectionY=new d.a(0,1);const SW=new class extends ua{constructor(){super(...arguments),this.objectsMask=ha.STRING(\\\\\\\"*outlined*\\\\\\\",{...xj}),this.refreshObjects=ha.BUTTON(null,{...xj}),this.printObjects=ha.BUTTON(null,{cook:!1,callback:t=>{CW.PARAM_CALLBACK_printResolve(t)}}),this.edgeStrength=ha.FLOAT(3,{range:[0,10],rangeLocked:[!0,!1],...xj}),this.edgeThickness=ha.FLOAT(1,{range:[0,4],rangeLocked:[!0,!1],...xj}),this.edgeGlow=ha.FLOAT(0,{range:[0,1],rangeLocked:[!0,!1],...xj}),this.pulsePeriod=ha.FLOAT(0,{range:[0,5],rangeLocked:[!0,!1],...xj}),this.visibleEdgeColor=ha.COLOR([1,1,1],{...xj}),this.hiddenEdgeColor=ha.COLOR([.2,.1,.4],{...xj})}};class CW extends bj{constructor(){super(...arguments),this.paramsConfig=SW,this._resolvedObjects=[],this._map=new Map}static type(){return\\\\\\\"outline\\\\\\\"}_createPass(t){const e=new EW(new d.a(t.resolution.x,t.resolution.y),t.scene,t.camera,t.scene.children);return this.updatePass(e),e}updatePass(t){t.edgeStrength=this.pv.edgeStrength,t.edgeThickness=this.pv.edgeThickness,t.edgeGlow=this.pv.edgeGlow,t.pulsePeriod=this.pv.pulsePeriod,t.visibleEdgeColor=this.pv.visibleEdgeColor,t.hiddenEdgeColor=this.pv.hiddenEdgeColor,this._setSelectedObjects(t)}_setSelectedObjects(t){const e=this.scene().objectsByMask(this.pv.objectsMask);this._map.clear();for(let t of e)this._map.set(t.uuid,t);this._resolvedObjects=e.filter((t=>{let e=!1;return t.traverseAncestors((t=>{this._map.has(t.uuid)&&(e=!0)})),!e})),t.selectedObjects=this._resolvedObjects}static PARAM_CALLBACK_printResolve(t){t.printResolve()}printResolve(){console.log(this._resolvedObjects)}}const NW={uniforms:{tDiffuse:{value:null},resolution:{value:null},pixelSize:{value:1}},vertexShader:\\\\\\\"\\\\n\\\\n\\\\t\\\\tvarying highp vec2 vUv;\\\\n\\\\n\\\\t\\\\t\\\\tvoid main() {\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tvUv = uv;\\\\n\\\\t\\\\t\\\\t\\\\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\\\\n\\\\n\\\\t\\\\t}\\\\\\\",fragmentShader:\\\\\\\"\\\\n\\\\n\\\\t\\\\tuniform sampler2D tDiffuse;\\\\n\\\\t\\\\tuniform float pixelSize;\\\\n\\\\t\\\\tuniform vec2 resolution;\\\\n\\\\n\\\\t\\\\tvarying highp vec2 vUv;\\\\n\\\\n\\\\t\\\\tvoid main(){\\\\n\\\\n\\\\t\\\\t\\\\tvec2 dxy = pixelSize / resolution;\\\\n\\\\t\\\\t\\\\tvec2 coord = dxy * floor( vUv / dxy );\\\\n\\\\t\\\\t\\\\tgl_FragColor = texture2D(tDiffuse, coord);\\\\n\\\\n\\\\t\\\\t}\\\\\\\"};const LW=new class extends ua{constructor(){super(...arguments),this.pixelSize=ha.INTEGER(16,{range:[1,50],rangeLocked:[!0,!1],...xj})}};class OW extends bj{constructor(){super(...arguments),this.paramsConfig=LW}static type(){return\\\\\\\"pixel\\\\\\\"}_createPass(t){const e=new Hm(NW);return e.uniforms.resolution.value=t.resolution,e.uniforms.resolution.value.multiplyScalar(window.devicePixelRatio),this.updatePass(e),e}updatePass(t){t.uniforms.pixelSize.value=this.pv.pixelSize}}const PW=new class extends ua{constructor(){super(...arguments),this.overrideScene=ha.BOOLEAN(0,xj),this.scene=ha.OPERATOR_PATH(\\\\\\\"/scene1\\\\\\\",{visibleIf:{overrideScene:1},nodeSelection:{context:ts.OBJ,types:[WV.type()]},...xj}),this.overrideCamera=ha.BOOLEAN(0,xj),this.camera=ha.OPERATOR_PATH(\\\\\\\"/perspective_camera1\\\\\\\",{visibleIf:{overrideCamera:1},nodeSelection:{context:ts.OBJ},...xj})}};class RW extends bj{constructor(){super(...arguments),this.paramsConfig=PW}static type(){return\\\\\\\"render\\\\\\\"}_createPass(t){const e=new Ym(t.scene,t.camera);return e.context={camera:t.camera,scene:t.scene},this.updatePass(e),e}updatePass(t){this._updateCamera(t),this._update_scene(t)}async _updateCamera(t){if(this.pv.overrideCamera){this.p.camera.isDirty()&&await this.p.camera.compute();const e=this.p.camera.found_node_with_context(ts.OBJ);if(e&&(e.type()==is.PERSPECTIVE||e.type()==is.ORTHOGRAPHIC)){const n=e.object;t.camera=n}}else t.camera=t.context.camera}async _update_scene(t){if(this.pv.overrideScene){this.p.camera.isDirty()&&await this.p.scene.compute();const e=this.p.scene.found_node_with_context(ts.OBJ);if(e&&e.type()==WV.type()){const n=e.object;t.scene=n}}else t.scene=t.context.scene}}const IW={uniforms:{tDiffuse:{value:null},amount:{value:.005},angle:{value:0}},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 sampler2D tDiffuse;\\\\n\\\\t\\\\tuniform float amount;\\\\n\\\\t\\\\tuniform float angle;\\\\n\\\\n\\\\t\\\\tvarying vec2 vUv;\\\\n\\\\n\\\\t\\\\tvoid main() {\\\\n\\\\n\\\\t\\\\t\\\\tvec2 offset = amount * vec2( cos(angle), sin(angle));\\\\n\\\\t\\\\t\\\\tvec4 cr = texture2D(tDiffuse, vUv + offset);\\\\n\\\\t\\\\t\\\\tvec4 cga = texture2D(tDiffuse, vUv);\\\\n\\\\t\\\\t\\\\tvec4 cb = texture2D(tDiffuse, vUv - offset);\\\\n\\\\t\\\\t\\\\tgl_FragColor = vec4(cr.r, cga.g, cb.b, cga.a);\\\\n\\\\n\\\\t\\\\t}\\\\\\\"};const FW=new class extends ua{constructor(){super(...arguments),this.amount=ha.FLOAT(.005,{range:[0,1],rangeLocked:[!0,!1],...xj}),this.angle=ha.FLOAT(0,{range:[0,10],rangeLocked:[!0,!1],...xj})}};class DW extends bj{constructor(){super(...arguments),this.paramsConfig=FW}static type(){return\\\\\\\"RGBShift\\\\\\\"}_createPass(t){const e=new Hm(IW);return this.updatePass(e),e}updatePass(t){t.uniforms.amount.value=this.pv.amount,t.uniforms.angle.value=this.pv.angle}}const BW={uniforms:{tDiffuse:{value:null},amount:{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 amount;\\\\n\\\\n\\\\t\\\\tuniform sampler2D tDiffuse;\\\\n\\\\n\\\\t\\\\tvarying vec2 vUv;\\\\n\\\\n\\\\t\\\\tvoid main() {\\\\n\\\\n\\\\t\\\\t\\\\tvec4 color = texture2D( tDiffuse, vUv );\\\\n\\\\t\\\\t\\\\tvec3 c = color.rgb;\\\\n\\\\n\\\\t\\\\t\\\\tcolor.r = dot( c, vec3( 1.0 - 0.607 * amount, 0.769 * amount, 0.189 * amount ) );\\\\n\\\\t\\\\t\\\\tcolor.g = dot( c, vec3( 0.349 * amount, 1.0 - 0.314 * amount, 0.168 * amount ) );\\\\n\\\\t\\\\t\\\\tcolor.b = dot( c, vec3( 0.272 * amount, 0.534 * amount, 1.0 - 0.869 * amount ) );\\\\n\\\\n\\\\t\\\\t\\\\tgl_FragColor = vec4( min( vec3( 1.0 ), color.rgb ), color.a );\\\\n\\\\n\\\\t\\\\t}\\\\\\\"};const zW=new class extends ua{constructor(){super(...arguments),this.amount=ha.FLOAT(.5,{range:[0,2],rangeLocked:[!1,!1],...xj})}};class kW extends bj{constructor(){super(...arguments),this.paramsConfig=zW}static type(){return\\\\\\\"sepia\\\\\\\"}_createPass(t){const e=new Hm(BW);return this.updatePass(e),e}updatePass(t){t.uniforms.amount.value=this.pv.amount}}const UW=new class extends ua{};class GW extends bj{constructor(){super(...arguments),this.paramsConfig=UW}static type(){return\\\\\\\"sequence\\\\\\\"}initializeNode(){super.initializeNode(),this.io.inputs.setCount(0,4)}setupComposer(t){this._addPassFromInput(0,t),this._addPassFromInput(1,t),this._addPassFromInput(2,t),this._addPassFromInput(3,t)}}const VW=I.clone(CG.uniforms);VW.delta={value:new d.a};const HW={uniforms:VW,vertexShader:CG.vertexShader,fragmentShader:\\\\\\\"\\\\n#include <common>\\\\n#define ITERATIONS 10.0\\\\nuniform sampler2D tDiffuse;\\\\nuniform vec2 delta;\\\\nvarying vec2 vUv;\\\\nvoid main() {\\\\n\\\\tvec4 color = vec4( 0.0 );\\\\n\\\\tfloat total = 0.0;\\\\n\\\\tfloat offset = rand( vUv );\\\\n\\\\tfor ( float t = -ITERATIONS; t <= ITERATIONS; t ++ ) {\\\\n\\\\t\\\\tfloat percent = ( t + offset - 0.5 ) / ITERATIONS;\\\\n\\\\t\\\\tfloat weight = 1.0 - abs( percent );\\\\n\\\\t\\\\tcolor += texture2D( tDiffuse, vUv + delta * percent ) * weight;\\\\n\\\\t\\\\ttotal += weight;\\\\n\\\\t}\\\\n\\\\tgl_FragColor = color / total;\\\\n}\\\\\\\"};const jW=new class extends ua{constructor(){super(...arguments),this.delta=ha.VECTOR2([2,2],{...xj})}};class WW extends bj{constructor(){super(...arguments),this.paramsConfig=jW}static type(){return\\\\\\\"triangleBlur\\\\\\\"}_createPass(t){const e=new Hm(HW);return e.resolution=t.resolution.clone(),this.updatePass(e),e}updatePass(t){t.uniforms.delta.value.copy(this.pv.delta).divide(t.resolution).multiplyScalar(window.devicePixelRatio)}}const qW={shaderID:\\\\\\\"luminosityHighPass\\\\\\\",uniforms:{tDiffuse:{value:null},luminosityThreshold:{value:1},smoothWidth:{value:1},defaultColor:{value:new D.a(0)},defaultOpacity:{value:0}},vertexShader:\\\\\\\"\\\\n\\\\n\\\\t\\\\tvarying vec2 vUv;\\\\n\\\\n\\\\t\\\\tvoid main() {\\\\n\\\\n\\\\t\\\\t\\\\tvUv = uv;\\\\n\\\\n\\\\t\\\\t\\\\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\\\\n\\\\n\\\\t\\\\t}\\\\\\\",fragmentShader:\\\\\\\"\\\\n\\\\n\\\\t\\\\tuniform sampler2D tDiffuse;\\\\n\\\\t\\\\tuniform vec3 defaultColor;\\\\n\\\\t\\\\tuniform float defaultOpacity;\\\\n\\\\t\\\\tuniform float luminosityThreshold;\\\\n\\\\t\\\\tuniform float smoothWidth;\\\\n\\\\n\\\\t\\\\tvarying vec2 vUv;\\\\n\\\\n\\\\t\\\\tvoid main() {\\\\n\\\\n\\\\t\\\\t\\\\tvec4 texel = texture2D( tDiffuse, vUv );\\\\n\\\\n\\\\t\\\\t\\\\tvec3 luma = vec3( 0.299, 0.587, 0.114 );\\\\n\\\\n\\\\t\\\\t\\\\tfloat v = dot( texel.xyz, luma );\\\\n\\\\n\\\\t\\\\t\\\\tvec4 outputColor = vec4( defaultColor.rgb, defaultOpacity );\\\\n\\\\n\\\\t\\\\t\\\\tfloat alpha = smoothstep( luminosityThreshold, luminosityThreshold + smoothWidth, v );\\\\n\\\\n\\\\t\\\\t\\\\tgl_FragColor = mix( outputColor, texel, alpha );\\\\n\\\\n\\\\t\\\\t}\\\\\\\"};class XW extends km{constructor(t,e,n,i){super(),this.strength=void 0!==e?e:1,this.radius=n,this.threshold=i,this.resolution=void 0!==t?new d.a(t.x,t.y):new d.a(256,256),this.clearColor=new D.a(0,0,0);const s={minFilter:w.V,magFilter:w.V,format:w.Ib};this.renderTargetsHorizontal=[],this.renderTargetsVertical=[],this.nMips=5;let r=Math.round(this.resolution.x/2),o=Math.round(this.resolution.y/2);this.renderTargetBright=new K(r,o,s),this.renderTargetBright.texture.name=\\\\\\\"UnrealBloomPass.bright\\\\\\\",this.renderTargetBright.texture.generateMipmaps=!1;for(let t=0;t<this.nMips;t++){const e=new K(r,o,s);e.texture.name=\\\\\\\"UnrealBloomPass.h\\\\\\\"+t,e.texture.generateMipmaps=!1,this.renderTargetsHorizontal.push(e);const n=new K(r,o,s);n.texture.name=\\\\\\\"UnrealBloomPass.v\\\\\\\"+t,n.texture.generateMipmaps=!1,this.renderTargetsVertical.push(n),r=Math.round(r/2),o=Math.round(o/2)}void 0===qW&&console.error(\\\\\\\"THREE.UnrealBloomPass relies on LuminosityHighPassShader\\\\\\\");const a=qW;this.highPassUniforms=I.clone(a.uniforms),this.highPassUniforms.luminosityThreshold.value=i,this.highPassUniforms.smoothWidth.value=.01,this.materialHighPassFilter=new F({uniforms:this.highPassUniforms,vertexShader:a.vertexShader,fragmentShader:a.fragmentShader,defines:{}}),this.separableBlurMaterials=[];const l=[3,5,7,9,11];r=Math.round(this.resolution.x/2),o=Math.round(this.resolution.y/2);for(let t=0;t<this.nMips;t++)this.separableBlurMaterials.push(this.getSeperableBlurMaterial(l[t])),this.separableBlurMaterials[t].uniforms.texSize.value=new d.a(r,o),r=Math.round(r/2),o=Math.round(o/2);this.compositeMaterial=this.getCompositeMaterial(this.nMips),this.compositeMaterial.uniforms.blurTexture1.value=this.renderTargetsVertical[0].texture,this.compositeMaterial.uniforms.blurTexture2.value=this.renderTargetsVertical[1].texture,this.compositeMaterial.uniforms.blurTexture3.value=this.renderTargetsVertical[2].texture,this.compositeMaterial.uniforms.blurTexture4.value=this.renderTargetsVertical[3].texture,this.compositeMaterial.uniforms.blurTexture5.value=this.renderTargetsVertical[4].texture,this.compositeMaterial.uniforms.bloomStrength.value=e,this.compositeMaterial.uniforms.bloomRadius.value=.1,this.compositeMaterial.needsUpdate=!0;this.compositeMaterial.uniforms.bloomFactors.value=[1,.8,.6,.4,.2],this.bloomTintColors=[new p.a(1,1,1),new p.a(1,1,1),new p.a(1,1,1),new p.a(1,1,1),new p.a(1,1,1)],this.compositeMaterial.uniforms.bloomTintColors.value=this.bloomTintColors,void 0===zm&&console.error(\\\\\\\"THREE.UnrealBloomPass relies on CopyShader\\\\\\\");const c=zm;this.copyUniforms=I.clone(c.uniforms),this.copyUniforms.opacity.value=1,this.materialCopy=new F({uniforms:this.copyUniforms,vertexShader:c.vertexShader,fragmentShader:c.fragmentShader,blending:w.e,depthTest:!1,depthWrite:!1,transparent:!0}),this.enabled=!0,this.needsSwap=!1,this._oldClearColor=new D.a,this.oldClearAlpha=1,this.basic=new lt.a,this.fsQuad=new Vm(null)}dispose(){for(let t=0;t<this.renderTargetsHorizontal.length;t++)this.renderTargetsHorizontal[t].dispose();for(let t=0;t<this.renderTargetsVertical.length;t++)this.renderTargetsVertical[t].dispose();this.renderTargetBright.dispose()}setSize(t,e){let n=Math.round(t/2),i=Math.round(e/2);this.renderTargetBright.setSize(n,i);for(let t=0;t<this.nMips;t++)this.renderTargetsHorizontal[t].setSize(n,i),this.renderTargetsVertical[t].setSize(n,i),this.separableBlurMaterials[t].uniforms.texSize.value=new d.a(n,i),n=Math.round(n/2),i=Math.round(i/2)}render(t,e,n,i,s){t.getClearColor(this._oldClearColor),this.oldClearAlpha=t.getClearAlpha();const r=t.autoClear;t.autoClear=!1,t.setClearColor(this.clearColor,0),s&&t.state.buffers.stencil.setTest(!1),this.renderToScreen&&(this.fsQuad.material=this.basic,this.basic.map=n.texture,t.setRenderTarget(null),t.clear(),this.fsQuad.render(t)),this.highPassUniforms.tDiffuse.value=n.texture,this.highPassUniforms.luminosityThreshold.value=this.threshold,this.fsQuad.material=this.materialHighPassFilter,t.setRenderTarget(this.renderTargetBright),t.clear(),this.fsQuad.render(t);let o=this.renderTargetBright;for(let e=0;e<this.nMips;e++)this.fsQuad.material=this.separableBlurMaterials[e],this.separableBlurMaterials[e].uniforms.colorTexture.value=o.texture,this.separableBlurMaterials[e].uniforms.direction.value=XW.BlurDirectionX,t.setRenderTarget(this.renderTargetsHorizontal[e]),t.clear(),this.fsQuad.render(t),this.separableBlurMaterials[e].uniforms.colorTexture.value=this.renderTargetsHorizontal[e].texture,this.separableBlurMaterials[e].uniforms.direction.value=XW.BlurDirectionY,t.setRenderTarget(this.renderTargetsVertical[e]),t.clear(),this.fsQuad.render(t),o=this.renderTargetsVertical[e];this.fsQuad.material=this.compositeMaterial,this.compositeMaterial.uniforms.bloomStrength.value=this.strength,this.compositeMaterial.uniforms.bloomRadius.value=this.radius,this.compositeMaterial.uniforms.bloomTintColors.value=this.bloomTintColors,t.setRenderTarget(this.renderTargetsHorizontal[0]),t.clear(),this.fsQuad.render(t),this.fsQuad.material=this.materialCopy,this.copyUniforms.tDiffuse.value=this.renderTargetsHorizontal[0].texture,s&&t.state.buffers.stencil.setTest(!0),this.renderToScreen?(t.setRenderTarget(null),this.fsQuad.render(t)):(t.setRenderTarget(n),this.fsQuad.render(t)),t.setClearColor(this._oldClearColor,this.oldClearAlpha),t.autoClear=r}getSeperableBlurMaterial(t){return new F({defines:{KERNEL_RADIUS:t,SIGMA:t},uniforms:{colorTexture:{value:null},texSize:{value:new d.a(.5,.5)},direction:{value:new d.a(.5,.5)}},vertexShader:\\\\\\\"varying vec2 vUv;\\\\n\\\\t\\\\t\\\\t\\\\tvoid main() {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tvUv = uv;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\\\\n\\\\t\\\\t\\\\t\\\\t}\\\\\\\",fragmentShader:\\\\\\\"#include <common>\\\\n\\\\t\\\\t\\\\t\\\\tvarying vec2 vUv;\\\\n\\\\t\\\\t\\\\t\\\\tuniform sampler2D colorTexture;\\\\n\\\\t\\\\t\\\\t\\\\tuniform vec2 texSize;\\\\n\\\\t\\\\t\\\\t\\\\tuniform vec2 direction;\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tfloat gaussianPdf(in float x, in float sigma) {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\treturn 0.39894 * exp( -0.5 * x * x/( sigma * sigma))/sigma;\\\\n\\\\t\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t\\\\t\\\\tvoid main() {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tvec2 invSize = 1.0 / texSize;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tfloat fSigma = float(SIGMA);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tfloat weightSum = gaussianPdf(0.0, fSigma);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tvec3 diffuseSum = texture2D( colorTexture, vUv).rgb * weightSum;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tfor( int i = 1; i < KERNEL_RADIUS; i ++ ) {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tfloat x = float(i);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tfloat w = gaussianPdf(x, fSigma);\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tvec2 uvOffset = direction * invSize * x;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tvec3 sample1 = texture2D( colorTexture, vUv + uvOffset).rgb;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tvec3 sample2 = texture2D( colorTexture, vUv - uvOffset).rgb;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tdiffuseSum += (sample1 + sample2) * w;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tweightSum += 2.0 * w;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tgl_FragColor = vec4(diffuseSum/weightSum, 1.0);\\\\n\\\\t\\\\t\\\\t\\\\t}\\\\\\\"})}getCompositeMaterial(t){return new F({defines:{NUM_MIPS:t},uniforms:{blurTexture1:{value:null},blurTexture2:{value:null},blurTexture3:{value:null},blurTexture4:{value:null},blurTexture5:{value:null},dirtTexture:{value:null},bloomStrength:{value:1},bloomFactors:{value:null},bloomTintColors:{value:null},bloomRadius:{value:0}},vertexShader:\\\\\\\"varying vec2 vUv;\\\\n\\\\t\\\\t\\\\t\\\\tvoid main() {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tvUv = uv;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\\\\n\\\\t\\\\t\\\\t\\\\t}\\\\\\\",fragmentShader:\\\\\\\"varying vec2 vUv;\\\\n\\\\t\\\\t\\\\t\\\\tuniform sampler2D blurTexture1;\\\\n\\\\t\\\\t\\\\t\\\\tuniform sampler2D blurTexture2;\\\\n\\\\t\\\\t\\\\t\\\\tuniform sampler2D blurTexture3;\\\\n\\\\t\\\\t\\\\t\\\\tuniform sampler2D blurTexture4;\\\\n\\\\t\\\\t\\\\t\\\\tuniform sampler2D blurTexture5;\\\\n\\\\t\\\\t\\\\t\\\\tuniform sampler2D dirtTexture;\\\\n\\\\t\\\\t\\\\t\\\\tuniform float bloomStrength;\\\\n\\\\t\\\\t\\\\t\\\\tuniform float bloomRadius;\\\\n\\\\t\\\\t\\\\t\\\\tuniform float bloomFactors[NUM_MIPS];\\\\n\\\\t\\\\t\\\\t\\\\tuniform vec3 bloomTintColors[NUM_MIPS];\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tfloat lerpBloomFactor(const in float factor) {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tfloat mirrorFactor = 1.2 - factor;\\\\n\\\\t\\\\t\\\\t\\\\t\\\\treturn mix(factor, mirrorFactor, bloomRadius);\\\\n\\\\t\\\\t\\\\t\\\\t}\\\\n\\\\n\\\\t\\\\t\\\\t\\\\tvoid main() {\\\\n\\\\t\\\\t\\\\t\\\\t\\\\tgl_FragColor = bloomStrength * ( lerpBloomFactor(bloomFactors[0]) * vec4(bloomTintColors[0], 1.0) * texture2D(blurTexture1, vUv) +\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tlerpBloomFactor(bloomFactors[1]) * vec4(bloomTintColors[1], 1.0) * texture2D(blurTexture2, vUv) +\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tlerpBloomFactor(bloomFactors[2]) * vec4(bloomTintColors[2], 1.0) * texture2D(blurTexture3, vUv) +\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tlerpBloomFactor(bloomFactors[3]) * vec4(bloomTintColors[3], 1.0) * texture2D(blurTexture4, vUv) +\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tlerpBloomFactor(bloomFactors[4]) * vec4(bloomTintColors[4], 1.0) * texture2D(blurTexture5, vUv) );\\\\n\\\\t\\\\t\\\\t\\\\t}\\\\\\\"})}}XW.BlurDirectionX=new d.a(1,0),XW.BlurDirectionY=new d.a(0,1);const YW=new class extends ua{constructor(){super(...arguments),this.strength=ha.FLOAT(1.5,{range:[0,3],rangeLocked:[!0,!1],...xj}),this.radius=ha.FLOAT(1,{...xj}),this.threshold=ha.FLOAT(0,{...xj})}};class $W extends bj{constructor(){super(...arguments),this.paramsConfig=YW}static type(){return\\\\\\\"unrealBloom\\\\\\\"}_createPass(t){return new XW(new d.a(t.resolution.x,t.resolution.y),this.pv.strength,this.pv.radius,this.pv.threshold)}updatePass(t){t.strength=this.pv.strength,t.radius=this.pv.radius,t.threshold=this.pv.threshold}}const JW=new class extends ua{constructor(){super(...arguments),this.amount=ha.FLOAT(2,{range:[0,10],rangeLocked:[!0,!1],step:.01,...xj}),this.transparent=ha.BOOLEAN(1,xj)}};class ZW extends bj{constructor(){super(...arguments),this.paramsConfig=JW}static type(){return\\\\\\\"verticalBlur\\\\\\\"}_createPass(t){const e=new Hm(NG);return e.resolution_y=t.resolution.y,this.updatePass(e),e}updatePass(t){t.uniforms.v.value=this.pv.amount/(t.resolution_y*window.devicePixelRatio),t.material.transparent=this.pv.transparent}}const KW={uniforms:{tDiffuse:{value:null},offset:{value:1},darkness:{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 offset;\\\\n\\\\t\\\\tuniform float darkness;\\\\n\\\\n\\\\t\\\\tuniform sampler2D tDiffuse;\\\\n\\\\n\\\\t\\\\tvarying vec2 vUv;\\\\n\\\\n\\\\t\\\\tvoid main() {\\\\n\\\\n\\\\t\\\\t\\\\t// Eskil's vignette\\\\n\\\\n\\\\t\\\\t\\\\tvec4 texel = texture2D( tDiffuse, vUv );\\\\n\\\\t\\\\t\\\\tvec2 uv = ( vUv - vec2( 0.5 ) ) * vec2( offset );\\\\n\\\\t\\\\t\\\\tgl_FragColor = vec4( mix( texel.rgb, vec3( 1.0 - darkness ), dot( uv, uv ) ), texel.a );\\\\n\\\\n\\\\t\\\\t}\\\\\\\"};const QW=new class extends ua{constructor(){super(...arguments),this.offset=ha.FLOAT(1,{range:[0,1],rangeLocked:[!1,!1],...xj}),this.darkness=ha.FLOAT(1,{range:[0,2],rangeLocked:[!0,!1],...xj})}};class tq extends bj{constructor(){super(...arguments),this.paramsConfig=QW}static type(){return\\\\\\\"vignette\\\\\\\"}_createPass(t){const e=new Hm(KW);return this.updatePass(e),e}updatePass(t){t.uniforms.offset.value=this.pv.offset,t.uniforms.darkness.value=this.pv.darkness}}class eq extends aa{static context(){return ts.POST}cook(){this.cookController.endCook()}}class nq extends eq{}class iq extends nq{constructor(){super(...arguments),this._children_controller_context=ts.ANIM}static type(){return es.ANIM}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class sq extends nq{constructor(){super(...arguments),this._children_controller_context=ts.COP}static type(){return es.COP}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class rq extends nq{constructor(){super(...arguments),this._children_controller_context=ts.EVENT}static type(){return es.EVENT}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class oq extends nq{constructor(){super(...arguments),this._children_controller_context=ts.MAT}static type(){return es.MAT}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class aq extends eq{constructor(){super(...arguments),this.paramsConfig=new ef,this.effectsComposerController=new nf(this),this.displayNodeController=new Fm(this,this.effectsComposerController.displayNodeControllerCallbacks()),this._children_controller_context=ts.POST}static type(){return es.POST}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class lq extends nq{constructor(){super(...arguments),this._children_controller_context=ts.ROP}static type(){return es.ROP}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class cq extends aa{static context(){return ts.ROP}cook(){this.cookController.endCook()}}class hq extends cq{}class uq extends hq{constructor(){super(...arguments),this._children_controller_context=ts.COP}static type(){return es.COP}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class dq extends Q.a{constructor(t){super(),this._element=t,this._element.style.position=\\\\\\\"absolute\\\\\\\",this.addEventListener(\\\\\\\"removed\\\\\\\",this._on_removed.bind(this))}_on_removed(){this.traverse((function(t){t instanceof dq&&t.element instanceof Element&&null!==t.element.parentNode&&t.element.parentNode.removeChild(t.element)}))}get element(){return this._element}clone(t){const e=this._element.cloneNode(!0);return new dq(e).copy(this,t)}copy(t,e){return Q.a.prototype.copy.call(this,t,e),this._element=t.element.cloneNode(!0),this.matrixAutoUpdate=t.matrixAutoUpdate,this}}class pq{constructor(){this._width=0,this._height=0,this._widthHalf=0,this._heightHalf=0,this.vector=new p.a,this.viewMatrix=new A.a,this.viewProjectionMatrix=new A.a,this.cache_distanceToCameraSquared=new WeakMap,this.domElement=document.createElement(\\\\\\\"div\\\\\\\"),this._sort_objects=!1,this._use_fog=!1,this._fog_near=1,this._fog_far=100,this.a=new p.a,this.b=new p.a,this.domElement.classList.add(\\\\\\\"polygonjs-CSS2DRenderer\\\\\\\")}getSize(){return{width:this._width,height:this._height}}setSize(t,e){this._width=t,this._height=e,this._widthHalf=this._width/2,this._heightHalf=this._height/2,this.domElement.style.width=t+\\\\\\\"px\\\\\\\",this.domElement.style.height=e+\\\\\\\"px\\\\\\\"}renderObject(t,e,n){if(t instanceof dq){this.vector.setFromMatrixPosition(t.matrixWorld),this.vector.applyMatrix4(this.viewProjectionMatrix);var i=t.element,s=\\\\\\\"translate(-50%,-50%) translate(\\\\\\\"+(this.vector.x*this._widthHalf+this._widthHalf)+\\\\\\\"px,\\\\\\\"+(-this.vector.y*this._heightHalf+this._heightHalf)+\\\\\\\"px)\\\\\\\";if(i.style.webkitTransform=s,i.style.transform=s,i.style.display=t.visible&&this.vector.z>=-1&&this.vector.z<=1?\\\\\\\"\\\\\\\":\\\\\\\"none\\\\\\\",this._sort_objects||this._use_fog){const e=this.getDistanceToSquared(n,t);if(this._use_fog){const t=Math.sqrt(e),n=or.fit(t,this._fog_near,this._fog_far,0,1),s=or.clamp(1-n,0,1);i.style.opacity=`${s}`,0==s&&(i.style.display=\\\\\\\"none\\\\\\\")}this.cache_distanceToCameraSquared.set(t,e)}i.parentNode!==this.domElement&&this.domElement.appendChild(i)}for(var r=0,o=t.children.length;r<o;r++)this.renderObject(t.children[r],e,n)}getDistanceToSquared(t,e){return this.a.setFromMatrixPosition(t.matrixWorld),this.b.setFromMatrixPosition(e.matrixWorld),this.a.distanceToSquared(this.b)}filterAndFlatten(t){const e=[];return t.traverse((function(t){t instanceof dq&&e.push(t)})),e}render(t,e){!0===t.autoUpdate&&t.updateMatrixWorld(),null===e.parent&&e.updateMatrixWorld(),this.viewMatrix.copy(e.matrixWorldInverse),this.viewProjectionMatrix.multiplyMatrices(e.projectionMatrix,this.viewMatrix),this.renderObject(t,t,e),this._sort_objects&&this.zOrder(t)}set_sorting(t){this._sort_objects=t}zOrder(t){const e=this.filterAndFlatten(t).sort(((t,e)=>{const n=this.cache_distanceToCameraSquared.get(t),i=this.cache_distanceToCameraSquared.get(e);return null!=n&&null!=i?n-i:0})),n=e.length;for(let t=0,i=e.length;t<i;t++)e[t].element.style.zIndex=\\\\\\\"\\\\\\\"+(n-t)}set_use_fog(t){this._use_fog=t}set_fog_range(t,e){this._fog_near=t,this._fog_far=e}}const _q=new class extends ua{constructor(){super(...arguments),this.css=ha.STRING(\\\\\\\"\\\\\\\",{multiline:!0}),this.sortObjects=ha.BOOLEAN(0),this.useFog=ha.BOOLEAN(0),this.fogNear=ha.FLOAT(1,{range:[0,100],rangeLocked:[!0,!1],visibleIf:{useFog:1}}),this.fogFar=ha.FLOAT(100,{range:[0,100],rangeLocked:[!0,!1],visibleIf:{useFog:1}})}};class mq extends tH{constructor(){super(...arguments),this.paramsConfig=_q,this._renderers_by_canvas_id=new Map}static type(){return eH.CSS2D}createRenderer(t){const e=new pq;this._renderers_by_canvas_id.set(t.id,e);const n=t.parentElement;n&&(n.prepend(e.domElement),n.style.position=\\\\\\\"relative\\\\\\\"),e.domElement.style.position=\\\\\\\"absolute\\\\\\\",e.domElement.style.top=\\\\\\\"0px\\\\\\\",e.domElement.style.left=\\\\\\\"0px\\\\\\\",e.domElement.style.pointerEvents=\\\\\\\"none\\\\\\\";const i=t.getBoundingClientRect();return e.setSize(i.width,i.height),this._update_renderer(e),e}renderer(t){return this._renderers_by_canvas_id.get(t.id)||this.createRenderer(t)}cook(){this._update_css(),this._renderers_by_canvas_id.forEach((t=>{this._update_renderer(t)})),this.cookController.endCook()}_update_renderer(t){t.set_sorting(this.pv.sortObjects),t.set_use_fog(this.pv.useFog),t.set_fog_range(this.pv.fogNear,this.pv.fogFar)}_update_css(){this.css_element().innerHTML=this.pv.css}css_element(){return this._css_element=this._css_element||this._find_element()||this._create_element()}_find_element(){return document.getElementById(this._css_element_id())}_create_element(){const t=document.createElement(\\\\\\\"style\\\\\\\");return t.appendChild(document.createTextNode(\\\\\\\"\\\\\\\")),document.head.appendChild(t),t.id=this._css_element_id(),t}_css_element_id(){return`css_2d_renderer-${this.graphNodeId()}`}}class fq extends hq{constructor(){super(...arguments),this._children_controller_context=ts.ANIM}static type(){return es.ANIM}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class gq extends hq{constructor(){super(...arguments),this._children_controller_context=ts.EVENT}static type(){return es.EVENT}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class vq extends hq{constructor(){super(...arguments),this._children_controller_context=ts.MAT}static type(){return es.MAT}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class yq extends cq{constructor(){super(...arguments),this.paramsConfig=new ef,this.effectsComposerController=new nf(this),this.displayNodeController=new Fm(this,this.effectsComposerController.displayNodeControllerCallbacks()),this._children_controller_context=ts.POST}static type(){return es.POST}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class xq extends hq{constructor(){super(...arguments),this._children_controller_context=ts.ROP}static type(){return es.ROP}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class bq extends aV{static type(){return\\\\\\\"add\\\\\\\"}cook(t,e){const n=[];return this._create_point(n,e),this._create_polygon(t[0],n,e),this.createCoreGroupFromObjects(n)}_create_point(t,e){if(!e.createPoint)return;const n=new S.a,i=[];for(let t=0;t<e.pointsCount;t++)e.position.toArray(i,3*t);n.setAttribute(\\\\\\\"position\\\\\\\",new C.a(new Float32Array(i),3));const s=this.createObject(n,Ns.POINTS);t&&t.push(s)}_create_polygon(t,e,n){if(!n.connectInputPoints)return;t.points().length>0&&this._create_polygon_open(t,e,n)}_create_polygon_open(t,e,n){const i=t.points();let s=[];const r=[];let o;for(let t=0;t<i.length;t++)o=i[t],o.position().toArray(s,3*t),t>0&&(r.push(t-1),r.push(t));if(i.length>2&&n.connectToLastPoint){i[0].position().toArray(s,s.length);const t=r[r.length-1];r.push(t),r.push(0)}const a=new S.a;a.setAttribute(\\\\\\\"position\\\\\\\",new C.c(s,3)),a.setIndex(r);const l=this.createObject(a,Ns.LINE_SEGMENTS);e.push(l)}}bq.DEFAULT_PARAMS={createPoint:!0,pointsCount:1,position:new p.a(0,0,0),connectInputPoints:!1,connectToLastPoint:!1};const wq=bq.DEFAULT_PARAMS;const Tq=new class extends ua{constructor(){super(...arguments),this.createPoint=ha.BOOLEAN(wq.createPoint),this.pointsCount=ha.INTEGER(wq.pointsCount,{range:[1,100],rangeLocked:[!0,!1],visibleIf:{createPoint:!0}}),this.position=ha.VECTOR3(wq.position,{visibleIf:{createPoint:!0}}),this.connectInputPoints=ha.BOOLEAN(wq.connectInputPoints),this.connectToLastPoint=ha.BOOLEAN(wq.connectToLastPoint)}};class Aq extends uV{constructor(){super(...arguments),this.paramsConfig=Tq}static type(){return\\\\\\\"add\\\\\\\"}static displayedInputNames(){return[\\\\\\\"geometry to create polygons from (optional)\\\\\\\"]}initializeNode(){this.io.inputs.setCount(0,1)}cook(t){this._operation=this._operation||new bq(this.scene(),this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}const Mq=new class extends ua{};class Eq extends uV{constructor(){super(...arguments),this.paramsConfig=Mq}static type(){return\\\\\\\"animationCopy\\\\\\\"}static displayedInputNames(){return[\\\\\\\"geometry to copy animation to\\\\\\\",\\\\\\\"geometry to copy animation from\\\\\\\"]}initializeNode(){this.io.inputs.setCount(2),this.io.inputs.initInputsClonedState([Qi.FROM_NODE,Qi.NEVER])}cook(t){const e=t[0],n=t[1].objects()[0],i=e.objects()[0],s=n.animations;s?(i.animations=s.map((t=>t.clone())),this.setCoreGroup(e)):this.states.error.set(\\\\\\\"no animation found\\\\\\\")}}class Sq{constructor(t,e,n=null,i=e.blendMode){this._mixer=t,this._clip=e,this._localRoot=n,this.blendMode=i;const s=e.tracks,r=s.length,o=new Array(r),a={endingStart:w.id,endingEnd:w.id};for(let t=0;t!==r;++t){const e=s[t].createInterpolant(null);o[t]=e,e.settings=a}this._interpolantSettings=a,this._interpolants=o,this._propertyBindings=new Array(r),this._cacheIndex=null,this._byClipCacheIndex=null,this._timeScaleInterpolant=null,this._weightInterpolant=null,this.loop=w.eb,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&&0!==this.timeScale&&null===this._startTime&&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){const n=this._clip.duration,i=t._clip.duration,s=i/n,r=n/i;t.warp(1,s,e),this.warp(r,1,e)}return this}crossFadeTo(t,e,n){return t.crossFadeFrom(this,e,n)}stopFading(){const t=this._weightInterpolant;return null!==t&&(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){const i=this._mixer,s=i.time,r=this.timeScale;let o=this._timeScaleInterpolant;null===o&&(o=i._lendControlInterpolant(),this._timeScaleInterpolant=o);const a=o.parameterPositions,l=o.sampleValues;return a[0]=s,a[1]=s+n,l[0]=t/r,l[1]=e/r,this}stopWarping(){const t=this._timeScaleInterpolant;return null!==t&&(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)return void this._updateWeight(t);const s=this._startTime;if(null!==s){const i=(t-s)*n;if(i<0||0===n)return;this._startTime=null,e=n*i}e*=this._updateTimeScale(t);const r=this._updateTime(e),o=this._updateWeight(t);if(o>0){const t=this._interpolants,e=this._propertyBindings;switch(this.blendMode){case w.d:for(let n=0,i=t.length;n!==i;++n)t[n].evaluate(r),e[n].accumulateAdditive(o);break;case w.wb:default:for(let n=0,s=t.length;n!==s;++n)t[n].evaluate(r),e[n].accumulate(i,o)}}}_updateWeight(t){let e=0;if(this.enabled){e=this.weight;const n=this._weightInterpolant;if(null!==n){const i=n.evaluate(t)[0];e*=i,t>n.parameterPositions[1]&&(this.stopFading(),0===i&&(this.enabled=!1))}}return this._effectiveWeight=e,e}_updateTimeScale(t){let e=0;if(!this.paused){e=this.timeScale;const n=this._timeScaleInterpolant;if(null!==n){e*=n.evaluate(t)[0],t>n.parameterPositions[1]&&(this.stopWarping(),0===e?this.paused=!0:this.timeScale=e)}}return this._effectiveTimeScale=e,e}_updateTime(t){const e=this._clip.duration,n=this.loop;let i=this.time+t,s=this._loopCount;const r=n===w.db;if(0===t)return-1===s?i:r&&1==(1&s)?e-i:i;if(n===w.cb){-1===s&&(this._loopCount=0,this._setEndings(!0,!0,!1));t:{if(i>=e)i=e;else{if(!(i<0)){this.time=i;break t}i=0}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(-1===s&&(t>=0?(s=0,this._setEndings(!0,0===this.repetitions,r)):this._setEndings(0===this.repetitions,!0,r)),i>=e||i<0){const n=Math.floor(i/e);i-=e*n,s+=Math.abs(n);const o=this.repetitions-s;if(o<=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(1===o){const e=t<0;this._setEndings(e,!e,r)}else this._setEndings(!1,!1,r);this._loopCount=s,this.time=i,this._mixer.dispatchEvent({type:\\\\\\\"loop\\\\\\\",action:this,loopDelta:n})}}else this.time=i;if(r&&1==(1&s))return e-i}return i}_setEndings(t,e,n){const i=this._interpolantSettings;n?(i.endingStart=w.kd,i.endingEnd=w.kd):(i.endingStart=t?this.zeroSlopeAtStart?w.kd:w.id:w.hd,i.endingEnd=e?this.zeroSlopeAtEnd?w.kd:w.id:w.hd)}_scheduleFading(t,e,n){const i=this._mixer,s=i.time;let r=this._weightInterpolant;null===r&&(r=i._lendControlInterpolant(),this._weightInterpolant=r);const o=r.parameterPositions,a=r.sampleValues;return o[0]=s,a[0]=e,o[1]=s+t,a[1]=n,this}}var Cq=n(71),Nq=n(66);class Lq{constructor(t,e,n){let i,s,r;switch(this.binding=t,this.valueSize=n,e){case\\\\\\\"quaternion\\\\\\\":i=this._slerp,s=this._slerpAdditive,r=this._setAdditiveIdentityQuaternion,this.buffer=new Float64Array(6*n),this._workIndex=5;break;case\\\\\\\"string\\\\\\\":case\\\\\\\"bool\\\\\\\":i=this._select,s=this._select,r=this._setAdditiveIdentityOther,this.buffer=new Array(5*n);break;default:i=this._lerp,s=this._lerpAdditive,r=this._setAdditiveIdentityNumeric,this.buffer=new Float64Array(5*n)}this._mixBufferRegion=i,this._mixBufferRegionAdditive=s,this._setIdentity=r,this._origIndex=3,this._addIndex=4,this.cumulativeWeight=0,this.cumulativeWeightAdditive=0,this.useCount=0,this.referenceCount=0}accumulate(t,e){const n=this.buffer,i=this.valueSize,s=t*i+i;let r=this.cumulativeWeight;if(0===r){for(let t=0;t!==i;++t)n[s+t]=n[t];r=e}else{r+=e;const t=e/r;this._mixBufferRegion(n,s,0,t,i)}this.cumulativeWeight=r}accumulateAdditive(t){const e=this.buffer,n=this.valueSize,i=n*this._addIndex;0===this.cumulativeWeightAdditive&&this._setIdentity(),this._mixBufferRegionAdditive(e,i,0,t,n),this.cumulativeWeightAdditive+=t}apply(t){const e=this.valueSize,n=this.buffer,i=t*e+e,s=this.cumulativeWeight,r=this.cumulativeWeightAdditive,o=this.binding;if(this.cumulativeWeight=0,this.cumulativeWeightAdditive=0,s<1){const t=e*this._origIndex;this._mixBufferRegion(n,i,t,1-s,e)}r>0&&this._mixBufferRegionAdditive(n,i,this._addIndex*e,1,e);for(let t=e,s=e+e;t!==s;++t)if(n[t]!==n[t+e]){o.setValue(n,i);break}}saveOriginalState(){const t=this.binding,e=this.buffer,n=this.valueSize,i=n*this._origIndex;t.getValue(e,i);for(let t=n,s=i;t!==s;++t)e[t]=e[i+t%n];this._setIdentity(),this.cumulativeWeight=0,this.cumulativeWeightAdditive=0}restoreOriginalState(){const t=3*this.valueSize;this.binding.setValue(this.buffer,t)}_setAdditiveIdentityNumeric(){const 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(){const 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 i=0;i!==s;++i)t[e+i]=t[n+i]}_slerp(t,e,n,i){hh.a.slerpFlat(t,e,t,e,t,n,i)}_slerpAdditive(t,e,n,i,s){const r=this._workIndex*s;hh.a.multiplyQuaternionsFlat(t,r,t,e,t,n),hh.a.slerpFlat(t,e,t,e,t,r,i)}_lerp(t,e,n,i,s){const r=1-i;for(let o=0;o!==s;++o){const s=e+o;t[s]=t[s]*r+t[n+o]*i}}_lerpAdditive(t,e,n,i,s){for(let r=0;r!==s;++r){const s=e+r;t[s]=t[s]+t[n+r]*i}}}var Oq=n(64);class Pq extends J.a{constructor(t){super(),this._root=t,this._initMemoryManager(),this._accuIndex=0,this.time=0,this.timeScale=1}_bindAction(t,e){const n=t._localRoot||this._root,i=t._clip.tracks,s=i.length,r=t._propertyBindings,o=t._interpolants,a=n.uuid,l=this._bindingsByRootAndName;let c=l[a];void 0===c&&(c={},l[a]=c);for(let t=0;t!==s;++t){const s=i[t],l=s.name;let h=c[l];if(void 0!==h)r[t]=h;else{if(h=r[t],void 0!==h){null===h._cacheIndex&&(++h.referenceCount,this._addInactiveBinding(h,a,l));continue}const i=e&&e._propertyBindings[t].binding.parsedPath;h=new Lq(Nq.a.create(n,l,i),s.ValueTypeName,s.getValueSize()),++h.referenceCount,this._addInactiveBinding(h,a,l),r[t]=h}o[t].resultBuffer=h.buffer}}_activateAction(t){if(!this._isActiveAction(t)){if(null===t._cacheIndex){const e=(t._localRoot||this._root).uuid,n=t._clip.uuid,i=this._actionsByClip[n];this._bindAction(t,i&&i.knownActions[0]),this._addInactiveAction(t,n,e)}const e=t._propertyBindings;for(let t=0,n=e.length;t!==n;++t){const n=e[t];0==n.useCount++&&(this._lendBinding(n),n.saveOriginalState())}this._lendAction(t)}}_deactivateAction(t){if(this._isActiveAction(t)){const e=t._propertyBindings;for(let t=0,n=e.length;t!==n;++t){const n=e[t];0==--n.useCount&&(n.restoreOriginalState(),this._takeBackBinding(n))}this._takeBackAction(t)}}_initMemoryManager(){this._actions=[],this._nActiveActions=0,this._actionsByClip={},this._bindings=[],this._nActiveBindings=0,this._bindingsByRootAndName={},this._controlInterpolants=[],this._nActiveControlInterpolants=0;const 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){const e=t._cacheIndex;return null!==e&&e<this._nActiveActions}_addInactiveAction(t,e,n){const i=this._actions,s=this._actionsByClip;let r=s[e];if(void 0===r)r={knownActions:[t],actionByRoot:{}},t._byClipCacheIndex=0,s[e]=r;else{const e=r.knownActions;t._byClipCacheIndex=e.length,e.push(t)}t._cacheIndex=i.length,i.push(t),r.actionByRoot[n]=t}_removeInactiveAction(t){const e=this._actions,n=e[e.length-1],i=t._cacheIndex;n._cacheIndex=i,e[i]=n,e.pop(),t._cacheIndex=null;const s=t._clip.uuid,r=this._actionsByClip,o=r[s],a=o.knownActions,l=a[a.length-1],c=t._byClipCacheIndex;l._byClipCacheIndex=c,a[c]=l,a.pop(),t._byClipCacheIndex=null;delete o.actionByRoot[(t._localRoot||this._root).uuid],0===a.length&&delete r[s],this._removeInactiveBindingsForAction(t)}_removeInactiveBindingsForAction(t){const e=t._propertyBindings;for(let t=0,n=e.length;t!==n;++t){const n=e[t];0==--n.referenceCount&&this._removeInactiveBinding(n)}}_lendAction(t){const 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){const 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){const i=this._bindingsByRootAndName,s=this._bindings;let r=i[e];void 0===r&&(r={},i[e]=r),r[n]=t,t._cacheIndex=s.length,s.push(t)}_removeInactiveBinding(t){const e=this._bindings,n=t.binding,i=n.rootNode.uuid,s=n.path,r=this._bindingsByRootAndName,o=r[i],a=e[e.length-1],l=t._cacheIndex;a._cacheIndex=l,e[l]=a,e.pop(),delete o[s],0===Object.keys(o).length&&delete r[i]}_lendBinding(t){const 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){const 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(){const t=this._controlInterpolants,e=this._nActiveControlInterpolants++;let n=t[e];return void 0===n&&(n=new Cq.a(new Float32Array(2),new Float32Array(2),1,this._controlInterpolantsResultBuffer),n.__cacheIndex=e,t[e]=n),n}_takeBackControlInterpolant(t){const 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){const i=e||this._root,s=i.uuid;let r=\\\\\\\"string\\\\\\\"==typeof t?Oq.a.findByName(i,t):t;const o=null!==r?r.uuid:t,a=this._actionsByClip[o];let l=null;if(void 0===n&&(n=null!==r?r.blendMode:w.wb),void 0!==a){const t=a.actionByRoot[s];if(void 0!==t&&t.blendMode===n)return t;l=a.knownActions[0],null===r&&(r=l._clip)}if(null===r)return null;const c=new Sq(this,r,e,n);return this._bindAction(c,l),this._addInactiveAction(c,o,s),c}existingAction(t,e){const n=e||this._root,i=n.uuid,s=\\\\\\\"string\\\\\\\"==typeof t?Oq.a.findByName(n,t):t,r=s?s.uuid:t,o=this._actionsByClip[r];return void 0!==o&&o.actionByRoot[i]||null}stopAllAction(){const t=this._actions;for(let e=this._nActiveActions-1;e>=0;--e)t[e].stop();return this}update(t){t*=this.timeScale;const e=this._actions,n=this._nActiveActions,i=this.time+=t,s=Math.sign(t),r=this._accuIndex^=1;for(let o=0;o!==n;++o){e[o]._update(i,t,s,r)}const o=this._bindings,a=this._nActiveBindings;for(let t=0;t!==a;++t)o[t].apply(r);return this}setTime(t){this.time=0;for(let t=0;t<this._actions.length;t++)this._actions[t].time=0;return this.update(t)}getRoot(){return this._root}uncacheClip(t){const e=this._actions,n=t.uuid,i=this._actionsByClip,s=i[n];if(void 0!==s){const t=s.knownActions;for(let n=0,i=t.length;n!==i;++n){const i=t[n];this._deactivateAction(i);const s=i._cacheIndex,r=e[e.length-1];i._cacheIndex=null,i._byClipCacheIndex=null,r._cacheIndex=s,e[s]=r,e.pop(),this._removeInactiveBindingsForAction(i)}delete i[n]}}uncacheRoot(t){const e=t.uuid,n=this._actionsByClip;for(const t in n){const i=n[t].actionByRoot[e];void 0!==i&&(this._deactivateAction(i),this._removeInactiveAction(i))}const i=this._bindingsByRootAndName[e];if(void 0!==i)for(const t in i){const e=i[t];e.restoreOriginalState(),this._removeInactiveBinding(e)}}uncacheAction(t,e){const n=this.existingAction(t,e);null!==n&&(this._deactivateAction(n),this._removeInactiveAction(n))}}Pq.prototype._controlInterpolantsResultBuffer=new Float32Array(1);const Rq=new class extends ua{constructor(){super(...arguments),this.time=ha.FLOAT(\\\\\\\"$T\\\\\\\",{range:[0,10]}),this.clip=ha.OPERATOR_PATH(\\\\\\\"/ANIM/OUT\\\\\\\",{nodeSelection:{context:ts.ANIM},dependentOnFoundNode:!1}),this.reset=ha.BUTTON(null,{callback:(t,e)=>{Iq.PARAM_CALLBACK_reset(t,e)}})}};class Iq extends uV{constructor(){super(...arguments),this.paramsConfig=Rq}static type(){return\\\\\\\"animationMixer\\\\\\\"}static displayedInputNames(){return[\\\\\\\"geometry to be animated\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(Qi.NEVER)}async cook(t){const e=t[0].objects()[0];e&&(await this.create_mixer_if_required(e),this._update_mixer()),this.setObjects([e])}async create_mixer_if_required(t){if(!this._mixer){const e=await this._create_mixer(t);e&&(this._mixer=e)}}async _create_mixer(t){this.p.clip.isDirty()&&await this.p.clip.compute();if(this.p.clip.found_node_with_context(ts.ANIM)){return new Pq(t)}}_update_mixer(){this._set_mixer_time()}_set_mixer_time(){this.pv.time!=this._previous_time&&(this._mixer&&this._mixer.setTime(this.pv.time),this._previous_time=this.pv.time)}static PARAM_CALLBACK_reset(t,e){e.setDirty(),t.reset_animation_mixer()}async reset_animation_mixer(){this._mixer=void 0,this._previous_time=void 0,this.setDirty()}}class Fq extends aV{static type(){return\\\\\\\"attribAddMult\\\\\\\"}cook(t,e){const n=t[0],i=n.attribNamesMatchingMask(e.name);for(let t of i){const i=n.geometries();for(let n of i)this._update_attrib(t,n,e)}return n}_update_attrib(t,e,n){const i=e.getAttribute(t);if(i){const t=i.array,e=n.preAdd,s=n.mult,r=n.postAdd;for(let n=0;n<t.length;n++){const i=t[n];t[n]=(i+e)*s+r}i.needsUpdate=!0}}}Fq.DEFAULT_PARAMS={name:\\\\\\\"\\\\\\\",preAdd:0,mult:1,postAdd:0},Fq.INPUT_CLONED_STATE=Qi.FROM_NODE;const Dq=Fq.DEFAULT_PARAMS;const Bq=new class extends ua{constructor(){super(...arguments),this.name=ha.STRING(Dq.name),this.preAdd=ha.FLOAT(Dq.preAdd,{range:[0,1]}),this.mult=ha.FLOAT(Dq.mult,{range:[0,1]}),this.postAdd=ha.FLOAT(Dq.postAdd,{range:[0,1]})}};class zq extends uV{constructor(){super(...arguments),this.paramsConfig=Bq}static type(){return\\\\\\\"attribAddMult\\\\\\\"}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(Fq.INPUT_CLONED_STATE)}cook(t){this._operation=this._operation||new Fq(this.scene(),this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}var kq;!function(t){t.Float64BufferAttribute=\\\\\\\"Float64BufferAttribute\\\\\\\",t.Float32BufferAttribute=\\\\\\\"Float32BufferAttribute\\\\\\\",t.Float16BufferAttribute=\\\\\\\"Float16BufferAttribute\\\\\\\",t.Uint32BufferAttribute=\\\\\\\"Uint32BufferAttribute\\\\\\\",t.Int32BufferAttribute=\\\\\\\"Int32BufferAttribute\\\\\\\",t.Uint16BufferAttribute=\\\\\\\"Uint16BufferAttribute\\\\\\\",t.Int16BufferAttribute=\\\\\\\"Int16BufferAttribute\\\\\\\",t.Uint8ClampedBufferAttribute=\\\\\\\"Uint8ClampedBufferAttribute\\\\\\\",t.Uint8BufferAttribute=\\\\\\\"Uint8BufferAttribute\\\\\\\",t.Int8BufferAttribute=\\\\\\\"Int8BufferAttribute\\\\\\\"}(kq||(kq={}));const Uq=[kq.Float64BufferAttribute,kq.Float32BufferAttribute,kq.Float16BufferAttribute,kq.Uint32BufferAttribute,kq.Int32BufferAttribute,kq.Uint16BufferAttribute,kq.Int16BufferAttribute,kq.Uint8ClampedBufferAttribute,kq.Uint8BufferAttribute,kq.Int8BufferAttribute],Gq={[kq.Float64BufferAttribute]:C.d,[kq.Float32BufferAttribute]:C.c,[kq.Float16BufferAttribute]:C.b,[kq.Uint32BufferAttribute]:C.i,[kq.Int32BufferAttribute]:C.f,[kq.Uint16BufferAttribute]:C.h,[kq.Int16BufferAttribute]:C.e,[kq.Uint8ClampedBufferAttribute]:C.k,[kq.Uint8BufferAttribute]:C.j,[kq.Int8BufferAttribute]:C.g},Vq={[kq.Float64BufferAttribute]:Float64Array,[kq.Float32BufferAttribute]:Float32Array,[kq.Float16BufferAttribute]:Uint16Array,[kq.Uint32BufferAttribute]:Uint32Array,[kq.Int32BufferAttribute]:Int32Array,[kq.Uint16BufferAttribute]:Uint16Array,[kq.Int16BufferAttribute]:Int16Array,[kq.Uint8ClampedBufferAttribute]:Uint8Array,[kq.Uint8BufferAttribute]:Uint8Array,[kq.Int8BufferAttribute]:Int8Array};class Hq extends aV{static type(){return\\\\\\\"attribCast\\\\\\\"}cook(t,e){const n=t[0],i=n.objectsWithGeo();for(let t of i)this._castGeoAttributes(t.geometry,e);return n}_castGeoAttributes(t,e){const n=Uq[e.type],i=Gq[n],s=Vq[n];if(e.castAttributes){const n=fr.attribNamesMatchingMask(t,e.mask);for(let e of n){const n=t.attributes[e],r=n.array,o=new s(n.count*n.itemSize);for(let t=0;t<r.length;t++)o[t]=r[t];const a=new i(o,1);t.setAttribute(e,a)}}if(e.castIndex){const e=t.getIndex();if(e){const n=e.array,r=new s(e.count*1);for(let t=0;t<n.length;t++)r[t]=n[t];const o=new i(r,1);t.setIndex(o)}}}}Hq.DEFAULT_PARAMS={castAttributes:!0,mask:\\\\\\\"*\\\\\\\",castIndex:!1,type:Uq.indexOf(kq.Float32BufferAttribute)},Hq.INPUT_CLONED_STATE=Qi.FROM_NODE;const jq=Hq.DEFAULT_PARAMS;const Wq=new class extends ua{constructor(){super(...arguments),this.castAttributes=ha.BOOLEAN(jq.castAttributes),this.mask=ha.STRING(jq.mask,{visibleIf:{castAttributes:1}}),this.castIndex=ha.BOOLEAN(jq.castIndex),this.type=ha.INTEGER(jq.type,{menu:{entries:Uq.map(((t,e)=>({name:t,value:e})))}})}};class qq extends uV{constructor(){super(...arguments),this.paramsConfig=Wq}static type(){return\\\\\\\"attribCast\\\\\\\"}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(Hq.INPUT_CLONED_STATE),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.type],(()=>Uq[this.pv.type]))}))}))}cook(t){this._operation=this._operation||new Hq(this.scene(),this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}class Xq extends aV{static type(){return\\\\\\\"attribCopy\\\\\\\"}cook(t,e){const n=t[0],i=t[1]||n,s=i.attribNamesMatchingMask(e.name);for(let t of s)this.copy_vertex_attribute_between_core_groups(n,i,t,e);return n}copy_vertex_attribute_between_core_groups(t,e,n,i){var s;const r=e.objectsWithGeo(),o=t.objectsWithGeo();if(o.length>r.length)null===(s=this.states)||void 0===s||s.error.set(\\\\\\\"second input does not have enough objects to copy attributes from\\\\\\\");else for(let t=0;t<o.length;t++){const e=o[t].geometry,s=r[t].geometry;this.copy_vertex_attribute_between_geometries(e,s,n,i)}}copy_vertex_attribute_between_geometries(t,e,n,i){var s,r;const o=e.getAttribute(n);if(o){const r=o.itemSize,a=e.getAttribute(\\\\\\\"position\\\\\\\").array.length/3,l=t.getAttribute(\\\\\\\"position\\\\\\\").array.length/3;l>a&&(null===(s=this.states)||void 0===s||s.error.set(\\\\\\\"not enough points in second input\\\\\\\"));const c=i.tnewName?i.newName:n;let h=t.getAttribute(c);if(h)this._fill_dest_array(h,o,i),h.needsUpdate=!0;else{const e=o.array.slice(0,l*r);t.setAttribute(c,new C.c(e,r))}}else null===(r=this.states)||void 0===r||r.error.set(`attribute '${n}' does not exist on second input`)}_fill_dest_array(t,e,n){const i=t.array,s=e.array,r=i.length,o=t.itemSize,a=e.itemSize,l=n.srcOffset,c=n.destOffset;if(t.itemSize==e.itemSize){t.copyArray(e.array);for(let t=0;t<r;t++)i[t]=s[t]}else{const t=i.length/o;if(o<a)for(let e=0;e<t;e++)for(let t=0;t<o;t++)i[e*o+t+c]=s[e*a+t+l];else for(let e=0;e<t;e++)for(let t=0;t<a;t++)i[e*o+t+c]=s[e*a+t+l]}}}Xq.DEFAULT_PARAMS={name:\\\\\\\"\\\\\\\",tnewName:!1,newName:\\\\\\\"\\\\\\\",srcOffset:0,destOffset:0},Xq.INPUT_CLONED_STATE=[Qi.FROM_NODE,Qi.NEVER];const Yq=Xq.DEFAULT_PARAMS;const $q=new class extends ua{constructor(){super(...arguments),this.name=ha.STRING(Yq.name),this.tnewName=ha.BOOLEAN(Yq.tnewName),this.newName=ha.STRING(Yq.newName,{visibleIf:{tnewName:1}}),this.srcOffset=ha.INTEGER(Yq.srcOffset,{range:[0,3],rangeLocked:[!0,!0]}),this.destOffset=ha.INTEGER(Yq.destOffset,{range:[0,3],rangeLocked:[!0,!0]})}};class Jq extends uV{constructor(){super(...arguments),this.paramsConfig=$q}static type(){return\\\\\\\"attribCopy\\\\\\\"}static displayedInputNames(){return[\\\\\\\"geometry to copy attributes to\\\\\\\",\\\\\\\"geometry to copy attributes from\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1,2),this.io.inputs.initInputsClonedState(Xq.INPUT_CLONED_STATE),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.name,this.p.tnewName,this.p.newName],(()=>this.pv.tnewName?`${this.pv.name} -> ${this.pv.newName}`:this.pv.name))}))}))}cook(t){this._operation=this._operation||new Xq(this.scene(),this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}class Zq extends aV{static type(){return\\\\\\\"attribCreate\\\\\\\"}cook(t,e){var n;const i=t[0];return e.name&&\\\\\\\"\\\\\\\"!=e.name.trim()?this._add_attribute(Ds[e.class],i,e):null===(n=this.states)||void 0===n||n.error.set(\\\\\\\"attribute name is not valid\\\\\\\"),i}async _add_attribute(t,e,n){const i=ks[n.type];switch(t){case Fs.VERTEX:return void await this.add_point_attribute(i,e,n);case Fs.OBJECT:return void await this.add_object_attribute(i,e,n)}os.unreachable(t)}async add_point_attribute(t,e,n){const i=e.coreObjects();switch(t){case zs.NUMERIC:for(let t=0;t<i.length;t++)await this.add_numeric_attribute_to_points(i[t],n);return;case zs.STRING:for(let t=0;t<i.length;t++)await this.add_string_attribute_to_points(i[t],n);return}os.unreachable(t)}async add_object_attribute(t,e,n){const i=e.coreObjectsFromGroup(n.group);switch(t){case zs.NUMERIC:return void await this.add_numeric_attribute_to_object(i,n);case zs.STRING:return void await this.add_string_attribute_to_object(i,n)}os.unreachable(t)}async add_numeric_attribute_to_points(t,e){if(!t.coreGeometry())return;const n=[e.value1,e.value2,e.value3,e.value4][e.size-1];t.addNumericVertexAttrib(e.name,e.size,n)}async add_numeric_attribute_to_object(t,e){const n=[e.value1,e.value2,e.value3,e.value4][e.size-1];for(let i of t)i.setAttribValue(e.name,n)}async add_string_attribute_to_points(t,e){const n=t.pointsFromGroup(e.group),i=e.string,s=new Array(n.length);for(let t=0;t<n.length;t++)s[t]=i;const r=Xs.arrayToIndexedArrays(s),o=t.coreGeometry();o&&o.setIndexedAttribute(e.name,r.values,r.indices)}async add_string_attribute_to_object(t,e){const n=e.string;for(let i of t)i.setAttribValue(e.name,n)}}Zq.DEFAULT_PARAMS={group:\\\\\\\"\\\\\\\",class:Ds.indexOf(Fs.VERTEX),type:ks.indexOf(zs.NUMERIC),name:\\\\\\\"new_attrib\\\\\\\",size:1,value1:0,value2:new d.a(0,0),value3:new p.a(0,0,0),value4:new _.a(0,0,0,0),string:\\\\\\\"\\\\\\\"},Zq.INPUT_CLONED_STATE=Qi.FROM_NODE;const Kq=[\\\\\\\"x\\\\\\\",\\\\\\\"y\\\\\\\",\\\\\\\"z\\\\\\\",\\\\\\\"w\\\\\\\"],Qq=Zq.DEFAULT_PARAMS;const tX=new class extends ua{constructor(){super(...arguments),this.group=ha.STRING(Qq.group),this.class=ha.INTEGER(Qq.class,{menu:{entries:Bs}}),this.type=ha.INTEGER(Qq.type,{menu:{entries:Us}}),this.name=ha.STRING(Qq.name),this.size=ha.INTEGER(Qq.size,{range:[1,4],rangeLocked:[!0,!0],visibleIf:{type:zs.NUMERIC}}),this.value1=ha.FLOAT(Qq.value1,{visibleIf:{type:zs.NUMERIC,size:1},expression:{forEntities:!0}}),this.value2=ha.VECTOR2(Qq.value2,{visibleIf:{type:zs.NUMERIC,size:2},expression:{forEntities:!0}}),this.value3=ha.VECTOR3(Qq.value3,{visibleIf:{type:zs.NUMERIC,size:3},expression:{forEntities:!0}}),this.value4=ha.VECTOR4(Qq.value4,{visibleIf:{type:zs.NUMERIC,size:4},expression:{forEntities:!0}}),this.string=ha.STRING(Qq.string,{visibleIf:{type:zs.STRING},expression:{forEntities:!0}})}};class eX extends uV{constructor(){super(...arguments),this.paramsConfig=tX,this._x_arrays_by_geometry_uuid={},this._y_arrays_by_geometry_uuid={},this._z_arrays_by_geometry_uuid={},this._w_arrays_by_geometry_uuid={}}static type(){return\\\\\\\"attribCreate\\\\\\\"}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(Zq.INPUT_CLONED_STATE),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.name])}))}))}cook(t){if(this._is_using_expression())this.pv.name&&\\\\\\\"\\\\\\\"!=this.pv.name.trim()?this._addAttribute(Ds[this.pv.class],t[0]):this.states.error.set(\\\\\\\"attribute name is not valid\\\\\\\");else{this._operation=this._operation||new Zq(this.scene(),this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}async _addAttribute(t,e){const n=ks[this.pv.type];switch(t){case Fs.VERTEX:return await this._addPointAttribute(n,e),this.setCoreGroup(e);case Fs.OBJECT:return await this._addObjectAttribute(n,e),this.setCoreGroup(e)}os.unreachable(t)}async _addPointAttribute(t,e){const n=e.coreObjects();switch(t){case zs.NUMERIC:for(let t=0;t<n.length;t++)await this._addNumericAttributeToPoints(n[t]);return;case zs.STRING:for(let t=0;t<n.length;t++)await this._addStringAttributeToPoints(n[t]);return}os.unreachable(t)}async _addObjectAttribute(t,e){const n=e.coreObjectsFromGroup(this.pv.group);switch(t){case zs.NUMERIC:return void await this.add_numeric_attribute_to_object(n);case zs.STRING:return void await this.add_string_attribute_to_object(n)}os.unreachable(t)}async _addNumericAttributeToPoints(t){const e=t.coreGeometry();if(!e)return;const n=t.pointsFromGroup(this.pv.group),i=[this.p.value1,this.p.value2,this.p.value3,this.p.value4][this.pv.size-1];if(i.hasExpression()){e.hasAttrib(this.pv.name)||e.addNumericAttrib(this.pv.name,this.pv.size,i.value);const t=e.geometry(),s=t.getAttribute(this.pv.name).array;if(1==this.pv.size)this.p.value1.expressionController&&await this.p.value1.expressionController.computeExpressionForPoints(n,((t,e)=>{s[t.index()*this.pv.size+0]=e}));else{let e=[this.p.value2,this.p.value3,this.p.value4][this.pv.size-2].components;const i=new Array(e.length);let r;const o=[this._x_arrays_by_geometry_uuid,this._y_arrays_by_geometry_uuid,this._z_arrays_by_geometry_uuid,this._w_arrays_by_geometry_uuid];for(let a=0;a<e.length;a++)if(r=e[a],r.hasExpression()&&r.expressionController)i[a]=this._init_array_if_required(t,o[a],n.length),await r.expressionController.computeExpressionForPoints(n,((t,e)=>{i[a][t.index()]=e}));else{const t=r.value;for(let e of n)s[e.index()*this.pv.size+a]=t}for(let t=0;t<i.length;t++){const e=i[t];if(e)for(let n=0;n<e.length;n++)s[n*this.pv.size+t]=e[n]}}}}async add_numeric_attribute_to_object(t){if([this.p.value1,this.p.value2,this.p.value3,this.p.value4][this.pv.size-1].hasExpression())if(1==this.pv.size)this.p.value1.expressionController&&await this.p.value1.expressionController.computeExpressionForObjects(t,((t,e)=>{t.setAttribValue(this.pv.name,e)}));else{let e=[this.p.value2,this.p.value3,this.p.value4][this.pv.size-2].components,n={};const i=this._vector_by_attrib_size(this.pv.size);if(i){for(let e of t)n[e.index()]=i;for(let i=0;i<e.length;i++){const s=e[i],r=Kq[i];if(s.hasExpression()&&s.expressionController)await s.expressionController.computeExpressionForObjects(t,((t,e)=>{n[t.index()][r]=e}));else for(let e of t){n[e.index()][r]=s.value}}for(let e=0;e<t.length;e++){const i=t[e],s=n[i.index()];i.setAttribValue(this.pv.name,s)}}}}_vector_by_attrib_size(t){switch(t){case 2:return new d.a(0,0);case 3:return new p.a(0,0,0);case 4:return new _.a(0,0,0,0)}}async _addStringAttributeToPoints(t){const e=t.pointsFromGroup(this.pv.group),n=this.p.string,i=new Array(e.length);n.hasExpression()&&n.expressionController&&await n.expressionController.computeExpressionForPoints(e,((t,e)=>{i[t.index()]=e}));const s=Xs.arrayToIndexedArrays(i),r=t.coreGeometry();r&&r.setIndexedAttribute(this.pv.name,s.values,s.indices)}async add_string_attribute_to_object(t){const e=this.p.string;e.hasExpression()&&e.expressionController&&await e.expressionController.computeExpressionForObjects(t,((t,e)=>{t.setAttribValue(this.pv.name,e)}))}_init_array_if_required(t,e,n){const i=t.uuid,s=e[i];return s?s.length<n&&(e[i]=new Array(n)):e[i]=new Array(n),e[i]}_is_using_expression(){switch(ks[this.pv.type]){case zs.NUMERIC:return[this.p.value1,this.p.value2,this.p.value3,this.p.value4][this.pv.size-1].hasExpression();case zs.STRING:return this.p.string.hasExpression()}}setType(t){this.p.type.set(ks.indexOf(t))}}const nX=new class extends ua{constructor(){super(...arguments),this.class=ha.INTEGER(Fs.VERTEX,{menu:{entries:Bs}}),this.name=ha.STRING(\\\\\\\"\\\\\\\")}};class iX extends uV{constructor(){super(...arguments),this.paramsConfig=nX}static type(){return\\\\\\\"attribDelete\\\\\\\"}static displayedInputNames(){return[\\\\\\\"geometry to delete attributes from\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(Qi.FROM_NODE),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.name])}))}))}cook(t){const e=t[0],n=e.attribNamesMatchingMask(this.pv.name);for(let t of n)switch(this.pv.class){case Fs.VERTEX:this.delete_vertex_attribute(e,t);case Fs.OBJECT:this.delete_object_attribute(e,t)}this.setCoreGroup(e)}delete_vertex_attribute(t,e){for(let n of t.objects())n.traverse((t=>{const n=t;if(n.geometry){new fr(n.geometry).deleteAttribute(e)}}))}delete_object_attribute(t,e){for(let n of t.objects()){let t=0;n.traverse((n=>{new br(n,t).deleteAttribute(e),t++}))}}}class sX{set_attrib(t){const e=t.geometry,n=t.targetAttribSize;if(n<1||n>4)return;const i=t.add,s=t.mult,r=this._data_from_texture(t.texture);if(!r)return;const{data:o,resx:a,resy:l}=r,c=o.length/(a*l),h=e.getAttribute(t.uvAttribName).array,u=h.length/2,d=new Array(u*n);let p,_,m,f,g,v,y,x,b;const w=or.clamp;for(v=0;v<u;v++)for(p=2*v,_=w(h[p],0,1),m=w(h[p+1],0,1),f=Math.floor((a-1)*_),g=Math.floor((l-1)*(1-m)),y=g*a+f,b=0;b<n;b++)x=o[c*y+b],d[v*n+b]=s*x+i;const T=Xs.remapName(t.targetAttribName),A=new Float32Array(d);e.setAttribute(T,new C.a(A,n))}_data_from_texture(t){if(t.image)return t.image.data?this._data_from_data_texture(t):this._data_from_default_texture(t)}_data_from_default_texture(t){const e=t.image.width,n=t.image.height;return{data:Bf.data_from_image(t.image).data,resx:e,resy:n}}_data_from_data_texture(t){return{data:t.image.data,resx:t.image.width,resy:t.image.height}}}class rX extends aV{static type(){return\\\\\\\"attribFromTexture\\\\\\\"}async cook(t,e){var n;const i=t[0],s=e.texture.nodeWithContext(ts.COP,null===(n=this.states)||void 0===n?void 0:n.error);if(!s)return i;const r=(await s.compute()).texture();for(let t of i.coreObjects())this._set_position_from_data_texture(t,r,e);return i}_set_position_from_data_texture(t,e,n){var i,s;const r=null===(i=t.coreGeometry())||void 0===i?void 0:i.geometry();if(!r)return;if(null==r.getAttribute(n.uvAttrib))return void(null===(s=this.states)||void 0===s||s.error.set(`param '${n.uvAttrib} not found'`));(new sX).set_attrib({geometry:r,texture:e,uvAttribName:n.uvAttrib,targetAttribName:n.attrib,targetAttribSize:n.attribSize,add:n.add,mult:n.mult})}}rX.DEFAULT_PARAMS={texture:new yi(vi.EMPTY),uvAttrib:\\\\\\\"uv\\\\\\\",attrib:\\\\\\\"pscale\\\\\\\",attribSize:1,add:0,mult:1},rX.INPUT_CLONED_STATE=Qi.FROM_NODE;const oX=rX.DEFAULT_PARAMS;const aX=new class extends ua{constructor(){super(...arguments),this.texture=ha.NODE_PATH(oX.texture.path(),{nodeSelection:{context:ts.COP}}),this.uvAttrib=ha.STRING(oX.uvAttrib),this.attrib=ha.STRING(oX.attrib),this.attribSize=ha.INTEGER(oX.attribSize,{range:[1,3],rangeLocked:[!0,!0]}),this.add=ha.FLOAT(oX.add),this.mult=ha.FLOAT(oX.mult)}};class lX extends uV{constructor(){super(...arguments),this.paramsConfig=aX}static type(){return\\\\\\\"attribFromTexture\\\\\\\"}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(Qi.FROM_NODE),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.attrib])}))}))}async cook(t){this._operation=this._operation||new rX(this.scene(),this.states);const e=await this._operation.cook(t,this.pv);this.setCoreGroup(e)}}var cX;!function(t){t.MIN_MAX_TO_01=\\\\\\\"min/max to 0/1\\\\\\\",t.VECTOR_TO_LENGTH_1=\\\\\\\"vectors to length 1\\\\\\\"}(cX||(cX={}));const hX=[cX.MIN_MAX_TO_01,cX.VECTOR_TO_LENGTH_1];class uX extends aV{constructor(){super(...arguments),this.min3=new p.a,this.max3=new p.a,this._vec=new p.a}static type(){return\\\\\\\"attribNormalize\\\\\\\"}cook(t,e){const n=t[0],i=t[0].objectsWithGeo(),s=ss.attribNames(e.name);for(let t of i){const n=t.geometry;for(let t of s){const i=n.getAttribute(t);if(i){let t=i;e.changeName&&\\\\\\\"\\\\\\\"!=e.newName&&(t=n.getAttribute(e.newName),t&&(t.needsUpdate=!0),t=t||i.clone()),this._normalize_attribute(i,t,e)}}}return n}_normalize_attribute(t,e,n){switch(hX[n.mode]){case cX.MIN_MAX_TO_01:return this._normalize_from_min_max_to_01(t,e);case cX.VECTOR_TO_LENGTH_1:return this._normalize_vectors(t,e)}}_normalize_from_min_max_to_01(t,e){const n=t.itemSize,i=t.array,s=e.array;switch(n){case 1:{const t=Math.min(...i),e=Math.max(...i);for(let n=0;n<s.length;n++)s[n]=(i[n]-t)/(e-t);return}case 3:{const t=i.length/n,e=new Array(t),r=new Array(t),o=new Array(t);let a=0;for(let s=0;s<t;s++)a=s*n,e[s]=i[a+0],r[s]=i[a+1],o[s]=i[a+2];this.min3.set(Math.min(...e),Math.min(...r),Math.min(...o)),this.max3.set(Math.max(...e),Math.max(...r),Math.max(...o));for(let i=0;i<t;i++)a=i*n,s[a+0]=(e[i]-this.min3.x)/(this.max3.x-this.min3.x),s[a+1]=(r[i]-this.min3.y)/(this.max3.y-this.min3.y),s[a+2]=(o[i]-this.min3.z)/(this.max3.z-this.min3.z);return}}}_normalize_vectors(t,e){const n=t.array,i=e.array,s=n.length;if(3==t.itemSize)for(let t=0;t<s;t+=3)this._vec.fromArray(n,t),this._vec.normalize(),this._vec.toArray(i,t)}}uX.DEFAULT_PARAMS={mode:0,name:\\\\\\\"position\\\\\\\",changeName:!1,newName:\\\\\\\"\\\\\\\"},uX.INPUT_CLONED_STATE=Qi.FROM_NODE;const dX=uX.DEFAULT_PARAMS;const pX=new class extends ua{constructor(){super(...arguments),this.mode=ha.INTEGER(dX.mode,{menu:{entries:hX.map(((t,e)=>({name:t,value:e})))}}),this.name=ha.STRING(dX.name),this.changeName=ha.BOOLEAN(dX.changeName),this.newName=ha.STRING(dX.newName,{visibleIf:{changeName:1}})}};class _X extends uV{constructor(){super(...arguments),this.paramsConfig=pX}static type(){return\\\\\\\"attribNormalize\\\\\\\"}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(uX.INPUT_CLONED_STATE),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.name])}))}))}set_mode(t){this.p.mode.set(hX.indexOf(t))}cook(t){this._operation=this._operation||new uX(this.scene(),this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}var mX;!function(t){t[t.MIN=0]=\\\\\\\"MIN\\\\\\\",t[t.MAX=1]=\\\\\\\"MAX\\\\\\\",t[t.FIRST_FOUND=2]=\\\\\\\"FIRST_FOUND\\\\\\\"}(mX||(mX={}));class fX extends aV{constructor(){super(...arguments),this._values_per_attrib_name={},this._filtered_values_per_attrib_name={}}static type(){return\\\\\\\"attribPromote\\\\\\\"}cook(t,e){this._core_group=t[0],this._values_per_attrib_name={},this._filtered_values_per_attrib_name={};for(let t of this._core_group.coreObjects())this._core_object=t,this.find_values(e),this.filter_values(e),this.set_values(e);return this._core_group}find_values(t){const e=ss.attribNames(t.name);for(let n of e)this._find_values_for_attrib_name(n,t)}_find_values_for_attrib_name(t,e){switch(e.classFrom){case Fs.VERTEX:return this.find_values_from_points(t,e);case Fs.OBJECT:return this.find_values_from_object(t,e)}}find_values_from_points(t,e){if(this._core_object){const e=this._core_object.points(),n=e[0];if(n&&!n.isAttribIndexed(t)){const n=new Array(e.length);let i;for(let s=0;s<e.length;s++)i=e[s],n[s]=i.attribValue(t);this._values_per_attrib_name[t]=n}}}find_values_from_object(t,e){this._values_per_attrib_name[t]=[],this._core_object&&this._values_per_attrib_name[t].push(this._core_object.attribValue(t))}filter_values(t){const e=Object.keys(this._values_per_attrib_name);for(let n of e){const e=this._values_per_attrib_name[n];switch(t.mode){case mX.MIN:this._filtered_values_per_attrib_name[n]=f.min(e);break;case mX.MAX:this._filtered_values_per_attrib_name[n]=f.max(e);break;case mX.FIRST_FOUND:this._filtered_values_per_attrib_name[n]=e[0]}}}set_values(t){const e=Object.keys(this._filtered_values_per_attrib_name);for(let n of e){const e=this._filtered_values_per_attrib_name[n];if(null!=e)switch(t.classTo){case Fs.VERTEX:this.set_values_to_points(n,e,t);break;case Fs.OBJECT:this.set_values_to_object(n,e,t)}}}set_values_to_points(t,e,n){if(this._core_group&&this._core_object){if(!this._core_group.hasAttrib(t)){const n=Xs.attribSizeFromValue(e);n&&this._core_group.addNumericVertexAttrib(t,n,e)}const n=this._core_object.points();for(let i of n)i.setAttribValue(t,e)}}set_values_to_object(t,e,n){var i;null===(i=this._core_object)||void 0===i||i.setAttribValue(t,e)}}fX.DEFAULT_PARAMS={classFrom:Fs.VERTEX,classTo:Fs.OBJECT,mode:mX.FIRST_FOUND,name:\\\\\\\"\\\\\\\"},fX.INPUT_CLONED_STATE=Qi.FROM_NODE;const gX=[{name:\\\\\\\"min\\\\\\\",value:mX.MIN},{name:\\\\\\\"max\\\\\\\",value:mX.MAX},{name:\\\\\\\"first_found\\\\\\\",value:mX.FIRST_FOUND}],vX=fX.DEFAULT_PARAMS;const yX=new class extends ua{constructor(){super(...arguments),this.classFrom=ha.INTEGER(vX.classFrom,{menu:{entries:Bs}}),this.classTo=ha.INTEGER(vX.classTo,{menu:{entries:Bs}}),this.mode=ha.INTEGER(vX.mode,{menu:{entries:gX}}),this.name=ha.STRING(vX.name)}};class xX extends uV{constructor(){super(...arguments),this.paramsConfig=yX}static type(){return\\\\\\\"attribPromote\\\\\\\"}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(fX.INPUT_CLONED_STATE),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.name,this.p.classFrom,this.p.classTo],(()=>{if(\\\\\\\"\\\\\\\"!=this.pv.name){const t=Bs.filter((t=>t.value==this.pv.classFrom))[0].name,e=Bs.filter((t=>t.value==this.pv.classTo))[0].name;return`${this.pv.name} (${t} -> ${e})`}return\\\\\\\"\\\\\\\"}))}))}))}cook(t){this._operation=this._operation||new fX(this.scene(),this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}const bX=new class extends ua{constructor(){super(...arguments),this.name=ha.STRING(),this.ramp=ha.RAMP(),this.changeName=ha.BOOLEAN(0),this.newName=ha.STRING(\\\\\\\"\\\\\\\",{visibleIf:{changeName:1}})}};class wX extends uV{constructor(){super(...arguments),this.paramsConfig=bX}static type(){return\\\\\\\"attribRemap\\\\\\\"}initializeNode(){this.io.inputs.setCount(1)}cook(t){const e=t[0];this._remap_attribute(e),this.setCoreGroup(e)}_remap_attribute(t){const e=t.points();if(0===e.length)return;if(\\\\\\\"\\\\\\\"===this.pv.name)return;const n=e[0].attribSize(this.pv.name),i=e.map((t=>t.attribValue(this.pv.name)));let s=new Array(e.length);this._get_remaped_values(n,i,s);let r=this.pv.name;this.pv.changeName&&(r=this.pv.newName,t.hasAttrib(r)||t.addNumericVertexAttrib(r,n,0));let o=0;for(let t of s){e[o].setAttribValue(r,t),o++}}_get_remaped_values(t,e,n){switch(t){case Gs.FLOAT:return this._get_normalized_float(e,n);case Gs.VECTOR2:return this._get_normalized_vector2(e,n);case Gs.VECTOR3:return this._get_normalized_vector3(e,n);case Gs.VECTOR4:return this._get_normalized_vector4(e,n)}os.unreachable(t)}_get_normalized_float(t,e){const n=t,i=this.p.ramp;for(let t=0;t<n.length;t++){const s=n[t],r=i.valueAtPosition(s);e[t]=r}}_get_normalized_vector2(t,e){const n=t,i=this.p.ramp;for(let t=0;t<n.length;t++){const s=n[t],r=new d.a(i.valueAtPosition(s.x),i.valueAtPosition(s.y));e[t]=r}}_get_normalized_vector3(t,e){const n=t,i=this.p.ramp;for(let t=0;t<n.length;t++){const s=n[t],r=new p.a(i.valueAtPosition(s.x),i.valueAtPosition(s.y),i.valueAtPosition(s.z));e[t]=r}}_get_normalized_vector4(t,e){const n=t,i=this.p.ramp;for(let t=0;t<n.length;t++){const s=n[t],r=new _.a(i.valueAtPosition(s.x),i.valueAtPosition(s.y),i.valueAtPosition(s.z),i.valueAtPosition(s.w));e[t]=r}}}const TX=new class extends ua{constructor(){super(...arguments),this.class=ha.INTEGER(Fs.VERTEX,{menu:{entries:Bs}}),this.oldName=ha.STRING(),this.newName=ha.STRING()}};class AX extends uV{constructor(){super(...arguments),this.paramsConfig=TX}static type(){return\\\\\\\"attribRename\\\\\\\"}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(Qi.FROM_NODE),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.oldName,this.p.newName],(()=>\\\\\\\"\\\\\\\"!=this.pv.oldName&&\\\\\\\"\\\\\\\"!=this.pv.newName?`${this.pv.oldName} -> ${this.pv.newName}`:\\\\\\\"\\\\\\\"))}))}))}cook(t){const e=t[0];e.renameAttrib(this.pv.oldName,this.pv.newName,this.pv.class),this.setCoreGroup(e)}}var MX=n(18);class EX{constructor(t,e=0){this._bbox=t,this._level=e,this._leaves_by_octant={},this._points_by_octant_id={},this._leaves=[],this._bounding_boxes_by_octant={},this._bounding_boxes_by_octant_prepared=!1,this._center=this._bbox.max.clone().add(this._bbox.min).multiplyScalar(.5)}level(){return this._level}traverse(t){t(this);Object.values(this._leaves_by_octant).forEach((e=>{e.traverse(t)}))}intersects_sphere(t){return!!this._bbox&&this._bbox.intersectsSphere(t)}points_in_sphere(t,e){if(0==this._leaves.length){Object.values(this._points_by_octant_id).flat().filter((e=>t.containsPoint(e.position()))).forEach((t=>{e.push(t)}))}else{this._leaves.filter((e=>e.intersects_sphere(t))).forEach((n=>n.points_in_sphere(t,e)))}}bounding_box(){return this._bbox}set_points(t){this._points_by_octant_id={};for(let e of t)this.add_point(e);const e=Object.keys(this._points_by_octant_id);e.length>1&&e.forEach((t=>{this.create_leaf(t)}))}create_leaf(t){const e=this._leaf_bbox(t),n=new EX(e,this._level+1);this._leaves_by_octant[t]=n,this._leaves.push(n),n.set_points(this._points_by_octant_id[t])}add_point(t){const e=this._octant_id(t.position());null==this._points_by_octant_id[e]&&(this._points_by_octant_id[e]=[]),this._points_by_octant_id[e].push(t)}_octant_id(t){return`${t.x>this._center.x?1:0}${t.y>this._center.y?1:0}${t.z>this._center.z?1:0}`}_leaf_bbox(t){return this._bounding_boxes_by_octant_prepared||(this._prepare_leaves_bboxes(),this._bounding_boxes_by_octant_prepared=!0),this._bounding_boxes_by_octant[t]}_bbox_center(t,e,n){const i=this._bbox.min.clone();return t&&(i.x=this._bbox.max.x),e&&(i.y=this._bbox.max.y),n&&(i.z=this._bbox.max.z),i.clone().add(this._center).multiplyScalar(.5)}_prepare_leaves_bboxes(){const t=[];t.push(this._bbox_center(0,0,0)),t.push(this._bbox_center(0,0,1)),t.push(this._bbox_center(0,1,0)),t.push(this._bbox_center(0,1,1)),t.push(this._bbox_center(1,0,0)),t.push(this._bbox_center(1,0,1)),t.push(this._bbox_center(1,1,0)),t.push(this._bbox_center(1,1,1));const e=this._bbox.max.clone().sub(this._bbox.min).multiplyScalar(.25);for(let n of t){const t=this._octant_id(n),i=new Ry.a(n.clone().sub(e),n.clone().add(e));this._bounding_boxes_by_octant[t]=i}}}class SX{constructor(t){this._root=new EX(t)}set_points(t){this._root.set_points(t)}traverse(t){this._root.traverse(t)}find_points(t,e,n){const i=new MX.a(t,e);let s=[];return this._root.intersects_sphere(i)&&this._root.points_in_sphere(i,s),null==n||s.length>n&&(s=f.sortBy(s,(e=>e.position().distanceTo(t))),s=s.slice(0,n)),s}}class CX{constructor(t={}){this._array_index=0,this._count=0,this._current_count_index=0,this._resolve=null,this._max_time_per_chunk=t.max_time_per_chunk||10,this._check_every_interations=t.check_every_interations||100}async startWithCount(t,e){if(this._count=t,this._current_count_index=0,this._iteratee_method_count=e,this._bound_next_with_count=this.nextWithCount.bind(this),this._resolve)throw\\\\\\\"an iterator cannot be started twice\\\\\\\";return new Promise(((t,e)=>{this._resolve=t,this.nextWithCount()}))}nextWithCount(){const t=li.performance.performanceManager(),e=t.now();if(this._iteratee_method_count&&this._bound_next_with_count)for(;this._current_count_index<this._count;)if(this._iteratee_method_count(this._current_count_index),this._current_count_index++,this._current_count_index%this._check_every_interations==0&&t.now()-e>this._max_time_per_chunk){setTimeout(this._bound_next_with_count,1);break}this._current_count_index>=this._count&&this._resolve&&this._resolve()}async startWithArray(t,e){if(this._array=t,this._array_index=0,this._iteratee_method_array=e,this._bound_next_with_array=this.nextWithArray.bind(this),this._resolve)throw\\\\\\\"an iterator cannot be started twice\\\\\\\";return new Promise(((t,e)=>{this._resolve=t,this.nextWithArray()}))}nextWithArray(){const t=li.performance.performanceManager(),e=t.now();if(this._iteratee_method_array&&this._bound_next_with_array&&this._array)for(;this._current_array_element=this._array[this._array_index];)if(this._iteratee_method_array(this._current_array_element,this._array_index),this._array_index++,this._array_index%this._check_every_interations==0&&t.now()-e>this._max_time_per_chunk){setTimeout(this._bound_next_with_array,1);break}void 0===this._current_array_element&&this._resolve&&this._resolve()}}const NX=new class extends ua{constructor(){super(...arguments),this.srcGroup=ha.STRING(),this.destGroup=ha.STRING(),this.name=ha.STRING(),this.maxSamplesCount=ha.INTEGER(1,{range:[1,10],rangeLocked:[!0,!1]}),this.distanceThreshold=ha.FLOAT(1),this.blendWidth=ha.FLOAT(0)}};class LX extends uV{constructor(){super(...arguments),this.paramsConfig=NX}static type(){return\\\\\\\"attribTransfer\\\\\\\"}static displayedInputNames(){return[\\\\\\\"geometry to transfer attributes to\\\\\\\",\\\\\\\"geometry to transfer attributes from\\\\\\\"]}initializeNode(){this.io.inputs.setCount(2),this.io.inputs.initInputsClonedState([Qi.FROM_NODE,Qi.NEVER])}async cook(t){this._core_group_dest=t[0];const e=this._core_group_dest.pointsFromGroup(this.pv.destGroup);this._core_group_src=t[1],this._attrib_names=this._core_group_src.attribNamesMatchingMask(this.pv.name),this._error_if_attribute_not_found_on_second_input(),this._build_octree_if_required(this._core_group_src),this._add_attribute_if_required(),await this._transfer_attributes(e),this.setCoreGroup(this._core_group_dest)}_error_if_attribute_not_found_on_second_input(){for(let t of this._attrib_names)this._core_group_src.hasAttrib(t)||this.states.error.set(`attribute '${t}' not found on second input`)}_build_octree_if_required(t){const e=null==this._octree_timestamp||this._octree_timestamp!==t.timestamp();if(this._prev_param_srcGroup!==this.pv.srcGroup||e){this._octree_timestamp=t.timestamp(),this._prev_param_srcGroup=this.pv.srcGroup;const e=this._core_group_src.pointsFromGroup(this.pv.srcGroup);this._octree=new SX(this._core_group_src.boundingBox()),this._octree.set_points(e)}}_add_attribute_if_required(){for(let t of this._attrib_names)if(!this._core_group_dest.hasAttrib(t)){const e=this._core_group_src.attribSize(t);this._core_group_dest.addNumericVertexAttrib(t,e,0)}}async _transfer_attributes(t){const e=new CX;await e.startWithArray(t,this._transfer_attributes_for_point.bind(this))}_transfer_attributes_for_point(t){var e;const n=this.pv.distanceThreshold+this.pv.blendWidth,i=(null===(e=this._octree)||void 0===e?void 0:e.find_points(t.position(),n,this.pv.maxSamplesCount))||[];for(let e of this._attrib_names)this._interpolate_points(t,i,e)}_interpolate_points(t,e,n){let i;i=class{static perform(t,e,n,i,s){switch(e.length){case 0:return t.attribValue(n);case 1:return this._interpolate_with_1_point(t,e[0],n,i,s);default:return this._interpolate_with_multiple_points(t,e,n,i,s)}}static _interpolate_with_1_point(t,e,n,i,s){const r=t.position(),o=e.position(),a=r.distanceTo(o),l=e.attribValue(n);return m.isNumber(l)?this._weighted_value_from_distance(t,l,n,a,i,s):(console.warn(\\\\\\\"value is not a number\\\\\\\",l),0)}static _weight_from_distance(t,e,n){return(t-e)/n}static _weighted_value_from_distance(t,e,n,i,s,r){if(i<=s)return e;{const o=t.attribValue(n);if(m.isNumber(o)){const t=this._weight_from_distance(i,s,r);return t*o+(1-t)*e}return console.warn(\\\\\\\"value is not a number\\\\\\\",o),0}}static _interpolate_with_multiple_points(t,e,n,i,s){const r=e.map((e=>this._interpolate_with_1_point(t,e,n,i,s)));return f.max(r)||0}static weights(t,e){switch(e.length){case 1:return 1;case 2:return this._weights_from_2(t,e);default:return e=e.slice(0,3),this._weights_from_3(t,e)}}static _weights_from_2(t,e){const n=e.map((e=>t.distanceTo(e))),i=f.sum(n);return[n[1]/i,n[0]/i]}static _weights_from_3(t,e){const n=e.map((e=>t.distanceTo(e))),i=f.sum([n[0]*n[1],n[0]*n[2],n[1]*n[2]]);return[n[1]*n[2]/i,n[0]*n[2]/i,n[0]*n[1]/i]}}.perform(t,e,n,this.pv.distanceThreshold,this.pv.blendWidth),null!=i&&t.setAttribValue(n,i)}}const OX=new class extends ua{constructor(){super(...arguments),this.stepSize=ha.FLOAT(.1)}};class PX extends uV{constructor(){super(...arguments),this.paramsConfig=OX}static type(){return\\\\\\\"bboxScatter\\\\\\\"}static displayedInputNames(){return[\\\\\\\"geometry to create points from\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1)}cook(t){const e=t[0],n=this.pv.stepSize,i=e.boundingBox(),s=i.min,r=i.max,o=[];for(let t=s.x;t<=r.x;t+=n)for(let e=s.y;e<=r.y;e+=n)for(let i=s.z;i<=r.z;i+=n)o.push(t),o.push(e),o.push(i);const a=new S.a;a.setAttribute(\\\\\\\"position\\\\\\\",new C.a(new Float32Array(o),3)),this.setGeometry(a,Ns.POINTS)}}const RX=new class extends ua{constructor(){super(...arguments),this.attribName=ha.STRING(\\\\\\\"position\\\\\\\"),this.blend=ha.FLOAT(.5,{range:[0,1],rangeLocked:[!0,!0]})}};class IX extends uV{constructor(){super(...arguments),this.paramsConfig=RX}static type(){return\\\\\\\"blend\\\\\\\"}static displayedInputNames(){return[\\\\\\\"geometry to blend from\\\\\\\",\\\\\\\"geometry to blend to\\\\\\\"]}initializeNode(){this.io.inputs.setCount(2),this.io.inputs.initInputsClonedState([Qi.FROM_NODE,Qi.NEVER])}cook(t){const e=t[0],n=t[1],i=e.objects(),s=n.objects();let r,o;for(let t=0;t<i.length;t++)r=i[t],o=s[t],this.blend(r,o,this.pv.blend);this.setCoreGroup(e)}blend(t,e,n){const i=t.geometry,s=e.geometry;if(null==i||null==s)return;const r=i.getAttribute(this.pv.attribName),o=s.getAttribute(this.pv.attribName);if(null==r||null==o)return;const a=r.array,l=o.array;let c,h;for(let t=0;t<a.length;t++)c=a[t],h=l[t],null!=h&&(a[t]=(1-n)*c+n*h);i.computeVertexNormals()}}class FX{constructor(){this.polygons=[]}clone(){let t=new FX;return t.polygons=this.polygons.map((function(t){return t.clone()})),t}toPolygons(){return this.polygons}union(t){let e=new VX(this.clone().polygons),n=new VX(t.clone().polygons);return e.clipTo(n),n.clipTo(e),n.invert(),n.clipTo(e),n.invert(),e.build(n.allPolygons()),FX.fromPolygons(e.allPolygons())}subtract(t){let e=new VX(this.clone().polygons),n=new VX(t.clone().polygons);return e.invert(),e.clipTo(n),n.clipTo(e),n.invert(),n.clipTo(e),n.invert(),e.build(n.allPolygons()),e.invert(),FX.fromPolygons(e.allPolygons())}intersect(t){let e=new VX(this.clone().polygons),n=new VX(t.clone().polygons);return e.invert(),n.clipTo(e),n.invert(),e.clipTo(n),n.clipTo(e),e.build(n.allPolygons()),e.invert(),FX.fromPolygons(e.allPolygons())}inverse(){let t=this.clone();return t.polygons.forEach((t=>t.flip())),t}}FX.fromPolygons=function(t){let e=new FX;return e.polygons=t,e};class DX{constructor(t=0,e=0,n=0){this.x=t,this.y=e,this.z=n}copy(t){return this.x=t.x,this.y=t.y,this.z=t.z,this}clone(){return new DX(this.x,this.y,this.z)}negate(){return this.x*=-1,this.y*=-1,this.z*=-1,this}add(t){return this.x+=t.x,this.y+=t.y,this.z+=t.z,this}sub(t){return this.x-=t.x,this.y-=t.y,this.z-=t.z,this}times(t){return this.x*=t,this.y*=t,this.z*=t,this}dividedBy(t){return this.x/=t,this.y/=t,this.z/=t,this}lerp(t,e){return this.add(BX.copy(t).sub(this).times(e))}unit(){return this.dividedBy(this.length())}length(){return Math.sqrt(this.x**2+this.y**2+this.z**2)}normalize(){return this.unit()}cross(t){let e=this;const n=e.x,i=e.y,s=e.z,r=t.x,o=t.y,a=t.z;return this.x=i*a-s*o,this.y=s*r-n*a,this.z=n*o-i*r,this}dot(t){return this.x*t.x+this.y*t.y+this.z*t.z}}let BX=new DX,zX=new DX;class kX{constructor(t,e,n,i){this.pos=(new DX).copy(t),this.normal=(new DX).copy(e),this.uv=(new DX).copy(n),this.uv.z=0,i&&(this.color=(new DX).copy(i))}clone(){return new kX(this.pos,this.normal,this.uv,this.color)}flip(){this.normal.negate()}interpolate(t,e){return new kX(this.pos.clone().lerp(t.pos,e),this.normal.clone().lerp(t.normal,e),this.uv.clone().lerp(t.uv,e),this.color&&t.color&&this.color.clone().lerp(t.color,e))}}class UX{constructor(t,e){this.normal=t,this.w=e}clone(){return new UX(this.normal.clone(),this.w)}flip(){this.normal.negate(),this.w=-this.w}splitPolygon(t,e,n,i,s){let r=0,o=[];for(let e=0;e<t.vertices.length;e++){let n=this.normal.dot(t.vertices[e].pos)-this.w,i=n<-UX.EPSILON?2:n>UX.EPSILON?1:0;r|=i,o.push(i)}switch(r){case 0:(this.normal.dot(t.plane.normal)>0?e:n).push(t);break;case 1:i.push(t);break;case 2:s.push(t);break;case 3:let r=[],a=[];for(let e=0;e<t.vertices.length;e++){let n=(e+1)%t.vertices.length,i=o[e],s=o[n],l=t.vertices[e],c=t.vertices[n];if(2!=i&&r.push(l),1!=i&&a.push(2!=i?l.clone():l),3==(i|s)){let t=(this.w-this.normal.dot(l.pos))/this.normal.dot(BX.copy(c.pos).sub(l.pos)),e=l.interpolate(c,t);r.push(e),a.push(e.clone())}}r.length>=3&&i.push(new GX(r,t.shared)),a.length>=3&&s.push(new GX(a,t.shared))}}}UX.EPSILON=1e-5,UX.fromPoints=function(t,e,n){let i=BX.copy(e).sub(t).cross(zX.copy(n).sub(t)).normalize();return new UX(i.clone(),i.dot(t))};class GX{constructor(t,e){this.vertices=t,this.shared=e,this.plane=UX.fromPoints(t[0].pos,t[1].pos,t[2].pos)}clone(){return new GX(this.vertices.map((t=>t.clone())),this.shared)}flip(){this.vertices.reverse().map((t=>t.flip())),this.plane.flip()}}class VX{constructor(t){this.plane=null,this.front=null,this.back=null,this.polygons=[],t&&this.build(t)}clone(){let t=new VX;return t.plane=this.plane&&this.plane.clone(),t.front=this.front&&this.front.clone(),t.back=this.back&&this.back.clone(),t.polygons=this.polygons.map((t=>t.clone())),t}invert(){for(let t=0;t<this.polygons.length;t++)this.polygons[t].flip();this.plane&&this.plane.flip(),this.front&&this.front.invert(),this.back&&this.back.invert();let t=this.front;this.front=this.back,this.back=t}clipPolygons(t){if(!this.plane)return t.slice();let e=[],n=[];for(let i=0;i<t.length;i++)this.plane.splitPolygon(t[i],e,n,e,n);return this.front&&(e=this.front.clipPolygons(e)),n=this.back?this.back.clipPolygons(n):[],e.concat(n)}clipTo(t){this.polygons=t.clipPolygons(this.polygons),this.front&&this.front.clipTo(t),this.back&&this.back.clipTo(t)}allPolygons(){let t=this.polygons.slice();return this.front&&(t=t.concat(this.front.allPolygons())),this.back&&(t=t.concat(this.back.allPolygons())),t}build(t){if(!t.length)return;this.plane||(this.plane=t[0].plane.clone());let e=[],n=[];for(let i=0;i<t.length;i++)this.plane.splitPolygon(t[i],this.polygons,this.polygons,e,n);e.length&&(this.front||(this.front=new VX),this.front.build(e)),n.length&&(this.back||(this.back=new VX),this.back.build(n))}}FX.fromJSON=function(t){return FX.fromPolygons(t.polygons.map((t=>new GX(t.vertices.map((t=>new kX(t.pos,t.normal,t.uv))),t.shared))))},FX.fromGeometry=function(t,e){let n=[];if(t.isGeometry){let i=t.faces,s=t.vertices,r=[\\\\\\\"a\\\\\\\",\\\\\\\"b\\\\\\\",\\\\\\\"c\\\\\\\"];for(let o=0;o<i.length;o++){let a=i[o],l=[];for(let e=0;e<3;e++)l.push(new kX(s[a[r[e]]],a.vertexNormals[e],t.faceVertexUvs[0][o][e]));n.push(new GX(l,e))}}else if(t.isBufferGeometry){let i,s=t.attributes.position,r=t.attributes.normal,o=t.attributes.uv,a=t.attributes.color;if(t.index)i=t.index.array;else{i=new Array(s.array.length/s.itemSize|0);for(let t=0;t<i.length;t++)i[t]=t}let l=i.length/3|0;n=new Array(l);for(let t=0,l=0,c=i.length;t<c;t+=3,l++){let c=new Array(3);for(let e=0;e<3;e++){let n=i[t+e],l=3*n,h=2*n,u=s.array[l],d=s.array[l+1],p=s.array[l+2],_=r.array[l],m=r.array[l+1],f=r.array[l+2],g=o.array[h],v=o.array[h+1];c[e]=new kX({x:u,y:d,z:p},{x:_,y:m,z:f},{x:g,y:v,z:0},a&&{x:a.array[h],y:a.array[h+1],z:a.array[h+2]})}n[l]=new GX(c,e)}}else console.error(\\\\\\\"Unsupported CSG input type:\\\\\\\"+t.type);return FX.fromPolygons(n)};let HX=new p.a,jX=new G.a;FX.fromMesh=function(t,e){let n=FX.fromGeometry(t.geometry,e);jX.getNormalMatrix(t.matrix);for(let e=0;e<n.polygons.length;e++){let i=n.polygons[e];for(let e=0;e<i.vertices.length;e++){let n=i.vertices[e];n.pos.copy(HX.copy(n.pos).applyMatrix4(t.matrix)),n.normal.copy(HX.copy(n.normal).applyMatrix3(jX))}}return n};let WX=t=>({top:0,array:new Float32Array(t),write:function(t){this.array[this.top++]=t.x,this.array[this.top++]=t.y,this.array[this.top++]=t.z}}),qX=t=>({top:0,array:new Float32Array(t),write:function(t){this.array[this.top++]=t.x,this.array[this.top++]=t.y}});var XX;FX.toMesh=function(t,e,n){let i,s,r=t.polygons;{let t=0;r.forEach((e=>t+=e.vertices.length-2)),i=new S.a;let e,n=WX(3*t*3),o=WX(3*t*3),a=qX(2*t*3),l=[];if(r.forEach((i=>{let s=i.vertices,r=s.length;void 0!==i.shared&&(l[i.shared]||(l[i.shared]=[])),r&&void 0!==s[0].color&&(e||(e=WX(3*t*3)));for(let t=3;t<=r;t++)void 0!==i.shared&&l[i.shared].push(n.top/3,n.top/3+1,n.top/3+2),n.write(s[0].pos),n.write(s[t-2].pos),n.write(s[t-1].pos),o.write(s[0].normal),o.write(s[t-2].normal),o.write(s[t-1].normal),a.write(s[0].uv),a.write(s[t-2].uv),a.write(s[t-1].uv),e&&(e.write(s[0].color)||e.write(s[t-2].color)||e.write(s[t-1].color))})),i.setAttribute(\\\\\\\"position\\\\\\\",new C.a(n.array,3)),i.setAttribute(\\\\\\\"normal\\\\\\\",new C.a(o.array,3)),i.setAttribute(\\\\\\\"uv\\\\\\\",new C.a(a.array,2)),e&&i.setAttribute(\\\\\\\"color\\\\\\\",new C.a(e.array,3)),l.length){let t=[],e=0;for(let n=0;n<l.length;n++)i.addGroup(e,l[n].length,n),e+=l[n].length,t=t.concat(l[n]);i.setIndex(t)}s=i}let o=(new A.a).copy(e).invert();i.applyMatrix4(o),i.computeBoundingSphere(),i.computeBoundingBox();let a=new B.a(i,n);return a.matrix.copy(e),a.matrix.decompose(a.position,a.quaternion,a.scale),a.rotation.setFromQuaternion(a.quaternion),a.updateMatrixWorld(),a.castShadow=a.receiveShadow=!0,a},function(t){t.INTERSECT=\\\\\\\"intersect\\\\\\\",t.SUBSTRACT=\\\\\\\"substract\\\\\\\",t.UNION=\\\\\\\"union\\\\\\\"}(XX||(XX={}));const YX=[XX.INTERSECT,XX.SUBSTRACT,XX.UNION];class $X extends aV{static type(){return\\\\\\\"boolean\\\\\\\"}cook(t,e){const n=t[0].objectsWithGeo()[0],i=t[1].objectsWithGeo()[0],s=this._applyBooleaOperation(n,i,e);let r=n.material;if(e.useBothMaterials){r=m.isArray(r)?r[0]:r;let t=i.material;t=m.isArray(t)?t[0]:t,r=[r,t]}const o=FX.toMesh(s,n.matrix,r);return this.createCoreGroupFromObjects([o])}_applyBooleaOperation(t,e,n){const i=YX[n.operation];let s=FX.fromMesh(t,0),r=FX.fromMesh(e,1);switch(i){case XX.INTERSECT:return s.intersect(r);case XX.SUBSTRACT:return s.subtract(r);case XX.UNION:return s.union(r)}os.unreachable(i)}}$X.DEFAULT_PARAMS={operation:YX.indexOf(XX.INTERSECT),useBothMaterials:!0},$X.INPUT_CLONED_STATE=[Qi.FROM_NODE,Qi.NEVER];const JX=$X.DEFAULT_PARAMS;const ZX=new class extends ua{constructor(){super(...arguments),this.operation=ha.INTEGER(JX.operation,{menu:{entries:YX.map(((t,e)=>({name:t,value:e})))}}),this.useBothMaterials=ha.BOOLEAN(JX.useBothMaterials)}};class KX extends uV{constructor(){super(...arguments),this.paramsConfig=ZX}static type(){return\\\\\\\"boolean\\\\\\\"}initializeNode(){super.initializeNode(),this.io.inputs.setCount(2),this.io.inputs.initInputsClonedState($X.INPUT_CLONED_STATE),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.operation],(()=>YX[this.pv.operation]))}))}))}setOperation(t){this.p.operation.set(YX.indexOf(t))}async cook(t){this._operation=this._operation||new $X(this.scene(),this.states,this);const e=await this._operation.cook(t,this.pv);this.setCoreGroup(e)}}class QX extends aV{constructor(){super(...arguments),this._core_transform=new bU}static type(){return\\\\\\\"box\\\\\\\"}cook(t,e){const n=t[0],i=n?this._cookWithInput(n,e):this._cookWithoutInput(e);return this.createCoreGroupFromGeometry(i)}_cookWithoutInput(t){const e=t.divisions,n=t.size,i=new N(n,n,n,e,e,e);return i.translate(t.center.x,t.center.y,t.center.z),i.computeVertexNormals(),i}_cookWithInput(t,e){const n=e.divisions,i=t.boundingBox(),s=i.max.clone().sub(i.min),r=i.max.clone().add(i.min).multiplyScalar(.5),o=new N(s.x,s.y,s.z,n,n,n),a=this._core_transform.translationMatrix(r);return o.applyMatrix4(a),o}}QX.DEFAULT_PARAMS={size:1,divisions:1,center:new p.a(0,0,0)},QX.INPUT_CLONED_STATE=Qi.NEVER;const tY=QX.DEFAULT_PARAMS;const eY=new class extends ua{constructor(){super(...arguments),this.size=ha.FLOAT(tY.size),this.divisions=ha.INTEGER(tY.divisions,{range:[1,10],rangeLocked:[!0,!1]}),this.center=ha.VECTOR3(tY.center)}};class nY extends uV{constructor(){super(...arguments),this.paramsConfig=eY}static type(){return\\\\\\\"box\\\\\\\"}static displayedInputNames(){return[\\\\\\\"geometry to create bounding box from (optional)\\\\\\\"]}initializeNode(){this.io.inputs.setCount(0,1),this.io.inputs.initInputsClonedState(QX.INPUT_CLONED_STATE)}cook(t){this._operation=this._operation||new QX(this._scene,this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}class iY{constructor(){}}function sY(t,e,n){return n.min.x=e[t],n.min.y=e[t+1],n.min.z=e[t+2],n.max.x=e[t+3],n.max.y=e[t+4],n.max.z=e[t+5],n}function rY(t){let e=-1,n=-1/0;for(let i=0;i<3;i++){const s=t[i+3]-t[i];s>n&&(n=s,e=i)}return e}function oY(t,e){e.set(t)}function aY(t,e,n){let i,s;for(let r=0;r<3;r++){const o=r+3;i=t[r],s=e[r],n[r]=i<s?i:s,i=t[o],s=e[o],n[o]=i>s?i:s}}function lY(t){const e=t[3]-t[0],n=t[4]-t[1],i=t[5]-t[2];return 2*(e*n+n*i+i*e)}const cY=Math.pow(2,-24);function hY(t,e,n,i,s=null){let r=1/0,o=1/0,a=1/0,l=-1/0,c=-1/0,h=-1/0,u=1/0,d=1/0,p=1/0,_=-1/0,m=-1/0,f=-1/0;const g=null!==s;for(let i=6*e,s=6*(e+n);i<s;i+=6){const e=t[i+0],n=t[i+1],s=e-n,v=e+n;s<r&&(r=s),v>l&&(l=v),g&&e<u&&(u=e),g&&e>_&&(_=e);const y=t[i+2],x=t[i+3],b=y-x,w=y+x;b<o&&(o=b),w>c&&(c=w),g&&y<d&&(d=y),g&&y>m&&(m=y);const T=t[i+4],A=t[i+5],M=T-A,E=T+A;M<a&&(a=M),E>h&&(h=E),g&&T<p&&(p=T),g&&T>f&&(f=T)}i[0]=r,i[1]=o,i[2]=a,i[3]=l,i[4]=c,i[5]=h,g&&(s[0]=u,s[1]=d,s[2]=p,s[3]=_,s[4]=m,s[5]=f)}const uY=32,dY=new Array(uY).fill().map((()=>({count:0,bounds:new Float32Array(6),rightCacheBounds:new Float32Array(6),candidate:0}))),pY=new Float32Array(6);function _Y(t,e){function n(e,i,d,p=null,_=0){if(!u&&_>=a&&(u=!0,l&&(console.warn(`MeshBVH: Max depth of ${a} reached when generating BVH. Consider increasing maxDepth.`),console.warn(t))),d<=c||_>=a)return e.offset=i,e.count=d,e;const m=function(t,e,n,i,s,r){let o=-1,a=0;if(0===r)o=rY(e),-1!==o&&(a=(e[o]+e[o+3])/2);else if(1===r)o=rY(t),-1!==o&&(a=function(t,e,n,i){let s=0;for(let r=e,o=e+n;r<o;r++)s+=t[6*r+2*i];return s/n}(n,i,s,o));else if(2===r){const r=lY(t);let l=1.25*s;const c=6*i,h=6*(i+s);for(let t=0;t<3;t++){const i=e[t],u=(e[t+3]-i)/uY;for(let t=0;t<uY;t++){const e=dY[t];e.count=0,e.candidate=i+u+t*u;const n=e.bounds;for(let t=0;t<3;t++)n[t]=1/0,n[t+3]=-1/0}for(let e=c;e<h;e+=6){let s=~~((n[e+2*t]-i)/u);s>=uY&&(s=31);const r=dY[s];r.count++;const o=r.bounds;for(let t=0;t<3;t++){const i=n[e+2*t],s=n[e+2*t+1],r=i-s,a=i+s;r<o[t]&&(o[t]=r),a>o[t+3]&&(o[t+3]=a)}}const d=dY[31];oY(d.bounds,d.rightCacheBounds);for(let t=30;t>=0;t--){const e=dY[t],n=dY[t+1];aY(e.bounds,n.rightCacheBounds,e.rightCacheBounds)}let p=0;for(let e=0;e<31;e++){const n=dY[e],i=n.count,c=n.bounds,h=dY[e+1].rightCacheBounds;0!==i&&(0===p?oY(c,pY):aY(c,pY,pY)),p+=i;let u=0,d=0;0!==p&&(u=lY(pY)/r);const _=s-p;0!==_&&(d=lY(h)/r);const m=1+1.25*(u*p+d*_);m<l&&(o=t,l=m,a=n.candidate)}}}return{axis:o,pos:a}}(e.boundingData,p,r,i,d,h);if(-1===m.axis)return e.offset=i,e.count=d,e;const f=function(t,e,n,i,s){let r=n,o=n+i-1;const a=s.pos,l=2*s.axis;for(;;){for(;r<=o&&e[6*r+l]<a;)r++;for(;r<=o&&e[6*o+l]>=a;)o--;if(!(r<o))return r;for(let n=0;n<3;n++){let i=t[3*r+n];t[3*r+n]=t[3*o+n],t[3*o+n]=i;let s=e[6*r+2*n+0];e[6*r+2*n+0]=e[6*o+2*n+0],e[6*o+2*n+0]=s;let a=e[6*r+2*n+1];e[6*r+2*n+1]=e[6*o+2*n+1],e[6*o+2*n+1]=a}r++,o--}}(o,r,i,d,m);if(f===i||f===i+d)e.offset=i,e.count=d;else{e.splitAxis=m.axis;const t=new iY,o=i,a=f-i;e.left=t,t.boundingData=new Float32Array(6),hY(r,o,a,t.boundingData,s),n(t,o,a,s,_+1);const l=new iY,c=f,h=d-a;e.right=l,l.boundingData=new Float32Array(6),hY(r,c,h,l.boundingData,s),n(l,c,h,s,_+1)}return e}!function(t,e){if(!t.index){const n=t.attributes.position.count,i=e.useSharedArrayBuffer?SharedArrayBuffer:ArrayBuffer;let s;s=n>65535?new Uint32Array(new i(4*n)):new Uint16Array(new i(2*n)),t.setIndex(new Qw(s,1));for(let t=0;t<n;t++)s[t]=t}}(t,e);const i=new Float32Array(6),s=new Float32Array(6),r=function(t,e){const n=t.attributes.position,i=n.array,s=t.index.array,r=s.length/3,o=new Float32Array(6*r),a=n.offset||0;let l=3;n.isInterleavedBufferAttribute&&(l=n.data.stride);for(let t=0;t<r;t++){const n=3*t,r=6*t,c=s[n+0]*l+a,h=s[n+1]*l+a,u=s[n+2]*l+a;for(let t=0;t<3;t++){const n=i[c+t],s=i[h+t],a=i[u+t];let l=n;s<l&&(l=s),a<l&&(l=a);let d=n;s>d&&(d=s),a>d&&(d=a);const p=(d-l)/2,_=2*t;o[r+_+0]=l+p,o[r+_+1]=p+(Math.abs(l)+p)*cY,l<e[t]&&(e[t]=l),d>e[t+3]&&(e[t+3]=d)}}return o}(t,i),o=t.index.array,a=e.maxDepth,l=e.verbose,c=e.maxLeafTris,h=e.strategy;let u=!1;const d=[],p=function(t){if(!t.groups||!t.groups.length)return[{offset:0,count:t.index.count/3}];const e=[],n=new Set;for(const e of t.groups)n.add(e.start),n.add(e.start+e.count);const i=Array.from(n.values()).sort(((t,e)=>t-e));for(let t=0;t<i.length-1;t++){const n=i[t],s=i[t+1];e.push({offset:n/3,count:(s-n)/3})}return e}(t);if(1===p.length){const t=p[0],e=new iY;e.boundingData=i,function(t,e,n,i){let s=1/0,r=1/0,o=1/0,a=-1/0,l=-1/0,c=-1/0;for(let i=6*e,h=6*(e+n);i<h;i+=6){const e=t[i+0];e<s&&(s=e),e>a&&(a=e);const n=t[i+2];n<r&&(r=n),n>l&&(l=n);const h=t[i+4];h<o&&(o=h),h>c&&(c=h)}i[0]=s,i[1]=r,i[2]=o,i[3]=a,i[4]=l,i[5]=c}(r,t.offset,t.count,s),n(e,t.offset,t.count,s),d.push(e)}else for(let t of p){const e=new iY;e.boundingData=new Float32Array(6),hY(r,t.offset,t.count,e.boundingData,s),n(e,t.offset,t.count,s),d.push(e)}return d}const mY=65535;class fY{constructor(){this.min=1/0,this.max=-1/0}setFromPointsField(t,e){let n=1/0,i=-1/0;for(let s=0,r=t.length;s<r;s++){const r=t[s][e];n=r<n?r:n,i=r>i?r:i}this.min=n,this.max=i}setFromPoints(t,e){let n=1/0,i=-1/0;for(let s=0,r=e.length;s<r;s++){const r=e[s],o=t.dot(r);n=o<n?o:n,i=o>i?o:i}this.min=n,this.max=i}isSeparated(t){return this.min>t.max||t.min>this.max}}fY.prototype.setFromBox=function(){const t=new Sb;return function(e,n){const i=n.min,s=n.max;let r=1/0,o=-1/0;for(let n=0;n<=1;n++)for(let a=0;a<=1;a++)for(let l=0;l<=1;l++){t.x=i.x*n+s.x*(1-n),t.y=i.y*a+s.y*(1-a),t.z=i.z*l+s.z*(1-l);const c=e.dot(t);r=Math.min(c,r),o=Math.max(c,o)}this.min=r,this.max=o}}();!function(){const t=new fY}();const gY=function(){const t=new Sb,e=new Sb,n=new Sb;return function(i,s,r){const o=i.start,a=t,l=s.start,c=e;n.subVectors(o,l),t.subVectors(i.end,s.start),e.subVectors(s.end,s.start);const h=n.dot(c),u=c.dot(a),d=c.dot(c),p=n.dot(a),_=a.dot(a)*d-u*u;let m,f;m=0!==_?(h*u-p*d)/_:0,f=(h+m*u)/d,r.x=m,r.y=f}}(),vY=function(){const t=new _b,e=new Sb,n=new Sb;return function(i,s,r,o){gY(i,s,t);let a=t.x,l=t.y;if(a>=0&&a<=1&&l>=0&&l<=1)return i.at(a,r),void s.at(l,o);if(a>=0&&a<=1)return l<0?s.at(0,o):s.at(1,o),void i.closestPointToPoint(o,!0,r);if(l>=0&&l<=1)return a<0?i.at(0,r):i.at(1,r),void s.closestPointToPoint(r,!0,o);{let t,c;t=a<0?i.start:i.end,c=l<0?s.start:s.end;const h=e,u=n;return i.closestPointToPoint(c,!0,e),s.closestPointToPoint(t,!0,n),h.distanceToSquared(c)<=u.distanceToSquared(t)?(r.copy(h),void o.copy(c)):(r.copy(t),void o.copy(u))}}}(),yY=function(){const t=new Sb,e=new Sb,n=new jT,i=new sL;return function(s,r){const{radius:o,center:a}=s,{a:l,b:c,c:h}=r;i.start=l,i.end=c;if(i.closestPointToPoint(a,!0,t).distanceTo(a)<=o)return!0;i.start=l,i.end=h;if(i.closestPointToPoint(a,!0,t).distanceTo(a)<=o)return!0;i.start=c,i.end=h;if(i.closestPointToPoint(a,!0,t).distanceTo(a)<=o)return!0;const u=r.getPlane(n);if(Math.abs(u.distanceToPoint(a))<=o){const t=u.projectPoint(a,e);if(r.containsPoint(t))return!0}return!1}}();class xY extends Uw{constructor(...t){super(...t),this.isSeparatingAxisTriangle=!0,this.satAxes=new Array(4).fill().map((()=>new Sb)),this.satBounds=new Array(4).fill().map((()=>new fY)),this.points=[this.a,this.b,this.c],this.sphere=new $b,this.plane=new jT,this.needsUpdate=!1}intersectsSphere(t){return yY(t,this)}update(){const t=this.a,e=this.b,n=this.c,i=this.points,s=this.satAxes,r=this.satBounds,o=s[0],a=r[0];this.getNormal(o),a.setFromPoints(o,i);const l=s[1],c=r[1];l.subVectors(t,e),c.setFromPoints(l,i);const h=s[2],u=r[2];h.subVectors(e,n),u.setFromPoints(h,i);const d=s[3],p=r[3];d.subVectors(n,t),p.setFromPoints(d,i),this.sphere.setFromPoints(this.points),this.plane.setFromNormalAndCoplanarPoint(o,t),this.needsUpdate=!1}}xY.prototype.closestPointToSegment=function(){const t=new Sb,e=new Sb,n=new sL;return function(i,s=null,r=null){const{start:o,end:a}=i,l=this.points;let c,h=1/0;for(let o=0;o<3;o++){const a=(o+1)%3;n.start.copy(l[o]),n.end.copy(l[a]),vY(n,i,t,e),c=t.distanceToSquared(e),c<h&&(h=c,s&&s.copy(t),r&&r.copy(e))}return this.closestPointToPoint(o,t),c=o.distanceToSquared(t),c<h&&(h=c,s&&s.copy(t),r&&r.copy(o)),this.closestPointToPoint(a,t),c=a.distanceToSquared(t),c<h&&(h=c,s&&s.copy(t),r&&r.copy(a)),Math.sqrt(h)}}(),xY.prototype.intersectsTriangle=function(){const t=new xY,e=new Array(3),n=new Array(3),i=new fY,s=new fY,r=new Sb,o=new Sb,a=new Sb,l=new Sb,c=new sL,h=new sL,u=new sL;return function(d,p=null){this.needsUpdate&&this.update(),d.isSeparatingAxisTriangle?d.needsUpdate&&d.update():(t.copy(d),t.update(),d=t);const _=this.satBounds,m=this.satAxes;n[0]=d.a,n[1]=d.b,n[2]=d.c;for(let t=0;t<4;t++){const e=_[t],s=m[t];if(i.setFromPoints(s,n),e.isSeparated(i))return!1}const f=d.satBounds,g=d.satAxes;e[0]=this.a,e[1]=this.b,e[2]=this.c;for(let t=0;t<4;t++){const n=f[t],s=g[t];if(i.setFromPoints(s,e),n.isSeparated(i))return!1}for(let t=0;t<4;t++){const o=m[t];for(let t=0;t<4;t++){const a=g[t];if(r.crossVectors(o,a),i.setFromPoints(r,e),s.setFromPoints(r,n),i.isSeparated(s))return!1}}if(p){const t=this.plane,e=d.plane;if(Math.abs(t.normal.dot(e.normal))>1-1e-10)console.warn(\\\\\\\"SeparatingAxisTriangle.intersectsTriangle: Triangles are coplanar which does not support an output edge. Setting edge to 0, 0, 0.\\\\\\\"),p.start.set(0,0,0),p.end.set(0,0,0);else{const n=this.points;let i=!1;for(let t=0;t<3;t++){const s=n[t],r=n[(t+1)%3];if(c.start.copy(s),c.end.copy(r),e.intersectLine(c,i?h.start:h.end)){if(i)break;i=!0}}const s=d.points;let r=!1;for(let e=0;e<3;e++){const n=s[e],i=s[(e+1)%3];if(c.start.copy(n),c.end.copy(i),t.intersectLine(c,r?u.start:u.end)){if(r)break;r=!0}}if(h.delta(o),u.delta(a),o.dot(a)<0){let t=u.start;u.start=u.end,u.end=t}l.subVectors(h.start,u.start),l.dot(o)>0?p.start.copy(h.start):p.start.copy(u.start),l.subVectors(h.end,u.end),l.dot(o)<0?p.end.copy(h.end):p.end.copy(u.end)}}return!0}}(),xY.prototype.distanceToPoint=function(){const t=new Sb;return function(e){return this.closestPointToPoint(e,t),e.distanceTo(t)}}(),xY.prototype.distanceToTriangle=function(){const t=new Sb,e=new Sb,n=[\\\\\\\"a\\\\\\\",\\\\\\\"b\\\\\\\",\\\\\\\"c\\\\\\\"],i=new sL,s=new sL;return function(r,o=null,a=null){const l=o||a?i:null;if(this.intersectsTriangle(r,l))return(o||a)&&(o&&l.getCenter(o),a&&l.getCenter(a)),0;let c=1/0;for(let e=0;e<3;e++){let i;const s=n[e],l=r[s];this.closestPointToPoint(l,t),i=l.distanceToSquared(t),i<c&&(c=i,o&&o.copy(t),a&&a.copy(l));const h=this[s];r.closestPointToPoint(h,t),i=h.distanceToSquared(t),i<c&&(c=i,o&&o.copy(h),a&&a.copy(t))}for(let l=0;l<3;l++){const h=n[l],u=n[(l+1)%3];i.set(this[h],this[u]);for(let l=0;l<3;l++){const h=n[l],u=n[(l+1)%3];s.set(r[h],r[u]),vY(i,s,t,e);const d=t.distanceToSquared(e);d<c&&(c=d,o&&o.copy(t),a&&a.copy(e))}}return Math.sqrt(c)}}();class bY extends Lb{constructor(...t){super(...t),this.isOrientedBox=!0,this.matrix=new sw,this.invMatrix=new sw,this.points=new Array(8).fill().map((()=>new Sb)),this.satAxes=new Array(3).fill().map((()=>new Sb)),this.satBounds=new Array(3).fill().map((()=>new fY)),this.alignedSatBounds=new Array(3).fill().map((()=>new fY)),this.needsUpdate=!1}set(t,e,n){super.set(t,e),this.matrix=n,this.needsUpdate=!0}copy(t){super.copy(t),this.matrix.copy(t.matrix),this.needsUpdate=!0}}bY.prototype.update=function(){const t=this.matrix,e=this.min,n=this.max,i=this.points;for(let s=0;s<=1;s++)for(let r=0;r<=1;r++)for(let o=0;o<=1;o++){const a=i[1*s|2*r|4*o];a.x=s?n.x:e.x,a.y=r?n.y:e.y,a.z=o?n.z:e.z,a.applyMatrix4(t)}const s=this.satBounds,r=this.satAxes,o=i[0];for(let t=0;t<3;t++){const e=r[t],n=s[t],a=i[1<<t];e.subVectors(o,a),n.setFromPoints(e,i)}const a=this.alignedSatBounds;a[0].setFromPointsField(i,\\\\\\\"x\\\\\\\"),a[1].setFromPointsField(i,\\\\\\\"y\\\\\\\"),a[2].setFromPointsField(i,\\\\\\\"z\\\\\\\"),this.invMatrix.copy(this.matrix).invert(),this.needsUpdate=!1},bY.prototype.intersectsBox=function(){const t=new fY;return function(e){this.needsUpdate&&this.update();const n=e.min,i=e.max,s=this.satBounds,r=this.satAxes,o=this.alignedSatBounds;if(t.min=n.x,t.max=i.x,o[0].isSeparated(t))return!1;if(t.min=n.y,t.max=i.y,o[1].isSeparated(t))return!1;if(t.min=n.z,t.max=i.z,o[2].isSeparated(t))return!1;for(let n=0;n<3;n++){const i=r[n],o=s[n];if(t.setFromBox(i,e),o.isSeparated(t))return!1}return!0}}(),bY.prototype.intersectsTriangle=function(){const t=new xY,e=new Array(3),n=new fY,i=new fY,s=new Sb;return function(r){this.needsUpdate&&this.update(),r.isSeparatingAxisTriangle?r.needsUpdate&&r.update():(t.copy(r),t.update(),r=t);const o=this.satBounds,a=this.satAxes;e[0]=r.a,e[1]=r.b,e[2]=r.c;for(let t=0;t<3;t++){const i=o[t],s=a[t];if(n.setFromPoints(s,e),i.isSeparated(n))return!1}const l=r.satBounds,c=r.satAxes,h=this.points;for(let t=0;t<3;t++){const e=l[t],i=c[t];if(n.setFromPoints(i,h),e.isSeparated(n))return!1}for(let t=0;t<3;t++){const r=a[t];for(let t=0;t<4;t++){const o=c[t];if(s.crossVectors(r,o),n.setFromPoints(s,e),i.setFromPoints(s,h),n.isSeparated(i))return!1}}return!0}}(),bY.prototype.closestPointToPoint=function(t,e){return this.needsUpdate&&this.update(),e.copy(t).applyMatrix4(this.invMatrix).clamp(this.min,this.max).applyMatrix4(this.matrix),e},bY.prototype.distanceToPoint=function(){const t=new Sb;return function(e){return this.closestPointToPoint(e,t),e.distanceTo(t)}}(),bY.prototype.distanceToBox=function(){const t=[\\\\\\\"x\\\\\\\",\\\\\\\"y\\\\\\\",\\\\\\\"z\\\\\\\"],e=new Array(12).fill().map((()=>new sL)),n=new Array(12).fill().map((()=>new sL)),i=new Sb,s=new Sb;return function(r,o=0,a=null,l=null){if(this.needsUpdate&&this.update(),this.intersectsBox(r))return(a||l)&&(r.getCenter(s),this.closestPointToPoint(s,i),r.closestPointToPoint(i,s),a&&a.copy(i),l&&l.copy(s)),0;const c=o*o,h=r.min,u=r.max,d=this.points;let p=1/0;for(let t=0;t<8;t++){const e=d[t];s.copy(e).clamp(h,u);const n=e.distanceToSquared(s);if(n<p&&(p=n,a&&a.copy(e),l&&l.copy(s),n<c))return Math.sqrt(n)}let _=0;for(let i=0;i<3;i++)for(let s=0;s<=1;s++)for(let r=0;r<=1;r++){const o=(i+1)%3,a=(i+2)%3,l=1<<i|s<<o|r<<a,c=d[s<<o|r<<a],p=d[l];e[_].set(c,p);const m=t[i],f=t[o],g=t[a],v=n[_],y=v.start,x=v.end;y[m]=h[m],y[f]=s?h[f]:u[f],y[g]=r?h[g]:u[f],x[m]=u[m],x[f]=s?h[f]:u[f],x[g]=r?h[g]:u[f],_++}for(let t=0;t<=1;t++)for(let e=0;e<=1;e++)for(let n=0;n<=1;n++){s.x=t?u.x:h.x,s.y=e?u.y:h.y,s.z=n?u.z:h.z,this.closestPointToPoint(s,i);const r=s.distanceToSquared(i);if(r<p&&(p=r,a&&a.copy(i),l&&l.copy(s),r<c))return Math.sqrt(r)}for(let t=0;t<12;t++){const r=e[t];for(let t=0;t<12;t++){const e=n[t];vY(r,e,i,s);const o=i.distanceToSquared(s);if(o<p&&(p=o,a&&a.copy(i),l&&l.copy(s),o<c))return Math.sqrt(o)}}return Math.sqrt(p)}}();const wY=new Sb,TY=new Sb,AY=new Sb,MY=new _b,EY=new _b,SY=new _b,CY=new Sb;function NY(t,e,n,i,s){const r=3*i,o=t.index.getX(r),a=t.index.getX(r+1),l=t.index.getX(r+2),c=function(t,e,n,i,s,r,o){wY.fromBufferAttribute(e,i),TY.fromBufferAttribute(e,s),AY.fromBufferAttribute(e,r);const a=function(t,e,n,i,s,r){let o;return o=1===r?t.intersectTriangle(i,n,e,!0,s):t.intersectTriangle(e,n,i,2!==r,s),null===o?null:{distance:t.origin.distanceTo(s),point:s.clone()}}(t,wY,TY,AY,CY,o);if(a){n&&(MY.fromBufferAttribute(n,i),EY.fromBufferAttribute(n,s),SY.fromBufferAttribute(n,r),a.uv=Uw.getUV(CY,wY,TY,AY,MY,EY,SY,new _b));const t={a:i,b:s,c:r,normal:new Sb,materialIndex:0};Uw.getNormal(wY,TY,AY,t.normal),a.face=t,a.faceIndex=i}return a}(n,t.attributes.position,t.attributes.uv,o,a,l,e);return c?(c.faceIndex=i,s&&s.push(c),c):null}function LY(t,e,n){return null===t?null:(t.point.applyMatrix4(e.matrixWorld),t.distance=t.point.distanceTo(n.ray.origin),t.object=e,t.distance<n.near||t.distance>n.far?null:t)}function OY(t,e,n,i){const s=t.a,r=t.b,o=t.c;let a=e,l=e+1,c=e+2;n&&(a=n.getX(e),l=n.getX(e+1),c=n.getX(e+2)),s.x=i.getX(a),s.y=i.getY(a),s.z=i.getZ(a),r.x=i.getX(l),r.y=i.getY(l),r.z=i.getZ(l),o.x=i.getX(c),o.y=i.getY(c),o.z=i.getZ(c)}function PY(t,e,n,i,s,r,o){const a=n.index,l=n.attributes.position;for(let n=t,c=e+t;n<c;n++)if(OY(o,3*n,a,l),o.needsUpdate=!0,i(o,n,s,r))return!0;return!1}class RY{constructor(t){this._getNewPrimitive=t,this._primitives=[]}getPrimitive(){const t=this._primitives;return 0===t.length?this._getNewPrimitive():t.pop()}releasePrimitive(t){this._primitives.push(t)}}function IY(t,e){return 65535===e[t+15]}function FY(t,e){return e[t+6]}function DY(t,e){return e[t+14]}function BY(t){return t+8}function zY(t,e){return e[t+6]}const kY=new Lb,UY=new Sb,GY=[\\\\\\\"x\\\\\\\",\\\\\\\"y\\\\\\\",\\\\\\\"z\\\\\\\"];function VY(t,e,n,i,s){let r=2*t,o=$Y,a=JY,l=ZY;if(IY(r,a)){!function(t,e,n,i,s,r){for(let o=i,a=i+s;o<a;o++)NY(t,e,n,o,r)}(e,n,i,FY(t,l),DY(r,a),s)}else{const r=BY(t);qY(r,o,i,UY)&&VY(r,e,n,i,s);const a=zY(t,l);qY(a,o,i,UY)&&VY(a,e,n,i,s)}}function HY(t,e,n,i){let s=2*t,r=$Y,o=JY,a=ZY;if(IY(s,o)){return function(t,e,n,i,s){let r=1/0,o=null;for(let a=i,l=i+s;a<l;a++){const i=NY(t,e,n,a);i&&i.distance<r&&(o=i,r=i.distance)}return o}(e,n,i,FY(t,a),DY(s,o))}{const s=function(t,e){return e[t+7]}(t,a),o=GY[s],l=i.direction[o]>=0;let c,h;l?(c=BY(t),h=zY(t,a)):(c=zY(t,a),h=BY(t));const u=qY(c,r,i,UY)?HY(c,e,n,i):null;if(u){const t=u.point[o];if(l?t<=r[h+s]:t>=r[h+s+3])return u}const d=qY(h,r,i,UY)?HY(h,e,n,i):null;return u&&d?u.distance<=d.distance?u:d:u||d||null}}const jY=function(){let t,e;const n=[],i=new RY((()=>new Lb));return function(...r){t=i.getPrimitive(),e=i.getPrimitive(),n.push(t,e);const o=s(...r);i.releasePrimitive(t),i.releasePrimitive(e),n.pop(),n.pop();const a=n.length;return a>0&&(e=n[a-1],t=n[a-2]),o};function s(n,i,r,o,a=null,l=0,c=0){function h(t){let e=2*t,n=JY,i=ZY;for(;!IY(e,n);)e=2*(t=BY(t));return FY(t,i)}function u(t){let e=2*t,n=JY,i=ZY;for(;!IY(e,n);)e=2*(t=zY(t,i));return FY(t,i)+DY(e,n)}let d=2*n,p=$Y,_=JY,m=ZY;if(IY(d,_)){const e=FY(n,m),i=DY(d,_);return sY(n,p,t),o(e,i,!1,c,l+n,t)}{const d=BY(n),f=zY(n,m);let g,v,y,x,b=d,w=f;if(a&&(y=t,x=e,sY(b,p,y),sY(w,p,x),g=a(y),v=a(x),v<g)){b=f,w=d;const t=g;g=v,v=t,y=x}y||(y=t,sY(b,p,y));const T=r(y,IY(2*b,_),g,c+1,l+b);let A;if(2===T){const t=h(b);A=o(t,u(b)-t,!0,c+1,l+b,y)}else A=T&&s(b,i,r,o,a,l,c+1);if(A)return!0;x=e,sY(w,p,x);const M=r(x,IY(2*w,_),v,c+1,l+w);let E;if(2===M){const t=h(w);E=o(t,u(w)-t,!0,c+1,l+w,x)}else E=M&&s(w,i,r,o,a,l,c+1);return!!E}}}(),WY=function(){const t=new xY,e=new xY,n=new sw,i=new bY,s=new bY;return function r(o,a,l,c,h=null){let u=2*o,d=$Y,p=JY,_=ZY;null===h&&(l.boundingBox||l.computeBoundingBox(),i.set(l.boundingBox.min,l.boundingBox.max,c),h=i);if(!IY(u,p)){const t=o+8,e=_[o+6];sY(t,d,kY);if(h.intersectsBox(kY)&&r(t,a,l,c,h))return!0;sY(e,d,kY);return!!(h.intersectsBox(kY)&&r(e,a,l,c,h))}{const i=a,r=i.index,h=i.attributes.position,m=l.index,f=l.attributes.position,g=FY(o,_),v=DY(u,p);if(n.copy(c).invert(),l.boundsTree){sY(o,d,s),s.matrix.copy(n),s.needsUpdate=!0;return l.boundsTree.shapecast({intersectsBounds:t=>s.intersectsBox(t),intersectsTriangle:t=>{t.a.applyMatrix4(c),t.b.applyMatrix4(c),t.c.applyMatrix4(c),t.needsUpdate=!0;for(let n=3*g,i=3*(v+g);n<i;n+=3)if(OY(e,n,r,h),e.needsUpdate=!0,t.intersectsTriangle(e))return!0;return!1}})}for(let i=3*g,s=v+3*g;i<s;i+=3){OY(t,i,r,h),t.a.applyMatrix4(n),t.b.applyMatrix4(n),t.c.applyMatrix4(n),t.needsUpdate=!0;for(let n=0,i=m.count;n<i;n+=3)if(OY(e,n,m,f),e.needsUpdate=!0,t.intersectsTriangle(e))return!0}}}}();function qY(t,e,n,i){return sY(t,e,kY),n.intersectBox(kY,i)}const XY=[];let YY,$Y,JY,ZY;function KY(t){YY&&XY.push(YY),YY=t,$Y=new Float32Array(t),JY=new Uint16Array(t),ZY=new Uint32Array(t)}function QY(){YY=null,$Y=null,JY=null,ZY=null,XY.length&&KY(XY.pop())}const t$=Symbol(\\\\\\\"skip tree generation\\\\\\\"),e$=new Lb,n$=new Lb,i$=new sw,s$=new bY,r$=new bY,o$=new Sb,a$=new Sb,l$=new Sb,c$=new Sb,h$=new Sb,u$=new Lb,d$=new RY((()=>new xY));class p${static serialize(t,e={}){if(e.isBufferGeometry)return console.warn(\\\\\\\"MeshBVH.serialize: The arguments for the function have changed. See documentation for new signature.\\\\\\\"),p$.serialize(arguments[0],{cloneBuffers:void 0===arguments[2]||arguments[2]});e={cloneBuffers:!0,...e};const n=t.geometry,i=t._roots,s=n.getIndex();let r;return r=e.cloneBuffers?{roots:i.map((t=>t.slice())),index:s.array.slice()}:{roots:i,index:s.array},r}static deserialize(t,e,n={}){if(\\\\\\\"boolean\\\\\\\"==typeof n)return console.warn(\\\\\\\"MeshBVH.deserialize: The arguments for the function have changed. See documentation for new signature.\\\\\\\"),p$.deserialize(arguments[0],arguments[1],{setIndex:void 0===arguments[2]||arguments[2]});n={setIndex:!0,...n};const{index:i,roots:s}=t,r=new p$(e,{...n,[t$]:!0});if(r._roots=s,n.setIndex){const n=e.getIndex();if(null===n){const n=new Qw(t.index,1,!1);e.setIndex(n)}else n.array!==i&&(n.array.set(i),n.needsUpdate=!0)}return r}constructor(t,e={}){if(!t.isBufferGeometry)throw new Error(\\\\\\\"MeshBVH: Only BufferGeometries are supported.\\\\\\\");if(t.index&&t.index.isInterleavedBufferAttribute)throw new Error(\\\\\\\"MeshBVH: InterleavedBufferAttribute is not supported for the index attribute.\\\\\\\");if((e=Object.assign({strategy:0,maxDepth:40,maxLeafTris:10,verbose:!0,useSharedArrayBuffer:!1,setBoundingBox:!0,[t$]:!1},e)).useSharedArrayBuffer&&\\\\\\\"undefined\\\\\\\"==typeof SharedArrayBuffer)throw new Error(\\\\\\\"MeshBVH: SharedArrayBuffer is not available.\\\\\\\");this._roots=null,e[t$]||(this._roots=function(t,e){const n=_Y(t,e);let i,s,r;const o=[],a=e.useSharedArrayBuffer?SharedArrayBuffer:ArrayBuffer;for(let t=0;t<n.length;t++){const e=n[t],h=new a(32*l(e));i=new Float32Array(h),s=new Uint32Array(h),r=new Uint16Array(h),c(0,e),o.push(h)}return o;function l(t){return t.count?1:1+l(t.left)+l(t.right)}function c(t,e){const n=t/4,o=t/2,a=!!e.count,l=e.boundingData;for(let t=0;t<6;t++)i[n+t]=l[t];if(a){const i=e.offset,a=e.count;return s[n+6]=i,r[o+14]=a,r[o+15]=mY,t+32}{const i=e.left,r=e.right,o=e.splitAxis;let a;if(a=c(t+32,i),a/4>Math.pow(2,32))throw new Error(\\\\\\\"MeshBVH: Cannot store child pointer greater than 32 bits.\\\\\\\");return s[n+6]=a/4,a=c(a,r),s[n+7]=o,a}}}(t,e),!t.boundingBox&&e.setBoundingBox&&(t.boundingBox=this.getBoundingBox(new Lb))),this.geometry=t}refit(t=null){t&&Array.isArray(t)&&(t=new Set(t));const e=this.geometry,n=e.index.array,i=e.attributes.position,s=i.array,r=i.offset||0;let o,a,l,c,h=3;i.isInterleavedBufferAttribute&&(h=i.data.stride);let u=0;const d=this._roots;for(let t=0,e=d.length;t<e;t++)o=d[t],a=new Uint32Array(o),l=new Uint16Array(o),c=new Float32Array(o),p(0,u),u+=o.byteLength;function p(e,i,o=!1){const u=2*e;if(l[u+15]===mY){const t=a[e+6];let i=1/0,o=1/0,d=1/0,p=-1/0,_=-1/0,m=-1/0;for(let e=3*t,a=3*(t+l[u+14]);e<a;e++){const t=n[e]*h+r,a=s[t+0],l=s[t+1],c=s[t+2];a<i&&(i=a),a>p&&(p=a),l<o&&(o=l),l>_&&(_=l),c<d&&(d=c),c>m&&(m=c)}return(c[e+0]!==i||c[e+1]!==o||c[e+2]!==d||c[e+3]!==p||c[e+4]!==_||c[e+5]!==m)&&(c[e+0]=i,c[e+1]=o,c[e+2]=d,c[e+3]=p,c[e+4]=_,c[e+5]=m,!0)}{const n=e+8,s=a[e+6],r=n+i,l=s+i;let h=o,u=!1,d=!1;t?h||(u=t.has(r),d=t.has(l),h=!u&&!d):(u=!0,d=!0);const _=h||d;let m=!1;(h||u)&&(m=p(n,i,h));let f=!1;_&&(f=p(s,i,h));const g=m||f;if(g)for(let t=0;t<3;t++){const i=n+t,r=s+t,o=c[i],a=c[i+3],l=c[r],h=c[r+3];c[e+t]=o<l?o:l,c[e+t+3]=a>h?a:h}return g}}}traverse(t,e=0){const n=this._roots[e],i=new Uint32Array(n),s=new Uint16Array(n);!function e(r,o=0){const a=2*r,l=s[a+15]===mY;if(l){const e=i[r+6],c=s[a+14];t(o,l,new Float32Array(n,4*r,6),e,c)}else{const s=r+8,a=i[r+6],c=i[r+7];t(o,l,new Float32Array(n,4*r,6),c)||(e(s,o+1),e(a,o+1))}}(0)}raycast(t,e=0){const n=this._roots,i=this.geometry,s=[],r=e.isMaterial,o=Array.isArray(e),a=i.groups,l=r?e.side:e;for(let r=0,c=n.length;r<c;r++){const c=o?e[a[r].materialIndex].side:l,h=s.length;if(KY(n[r]),VY(0,i,c,t,s),QY(),o){const t=a[r].materialIndex;for(let e=h,n=s.length;e<n;e++)s[e].face.materialIndex=t}}return s}raycastFirst(t,e=0){const n=this._roots,i=this.geometry,s=e.isMaterial,r=Array.isArray(e);let o=null;const a=i.groups,l=s?e.side:e;for(let s=0,c=n.length;s<c;s++){const c=r?e[a[s].materialIndex].side:l;KY(n[s]);const h=HY(0,i,c,t);QY(),null!=h&&(null==o||h.distance<o.distance)&&(o=h,r&&(h.face.materialIndex=a[s].materialIndex))}return o}intersectsGeometry(t,e){const n=this.geometry;let i=!1;for(const s of this._roots)if(KY(s),i=WY(0,n,t,e),QY(),i)break;return i}shapecast(t,e,n){const i=this.geometry;if(t instanceof Function){if(e){const t=e;e=(e,n,i,s)=>{const r=3*n;return t(e,r,r+1,r+2,i,s)}}t={boundsTraverseOrder:n,intersectsBounds:t,intersectsTriangle:e,intersectsRange:null},console.warn(\\\\\\\"MeshBVH: Shapecast function signature has changed and now takes an object of callbacks as a second argument. See docs for new signature.\\\\\\\")}const s=d$.getPrimitive();let{boundsTraverseOrder:r,intersectsBounds:o,intersectsRange:a,intersectsTriangle:l}=t;if(a&&l){const t=a;a=(e,n,r,o,a)=>!!t(e,n,r,o,a)||PY(e,n,i,l,r,o,s)}else a||(a=l?(t,e,n,r)=>PY(t,e,i,l,n,r,s):(t,e,n)=>n);let c=!1,h=0;for(const t of this._roots){if(KY(t),c=jY(0,i,o,a,r,h),QY(),c)break;h+=t.byteLength}return d$.releasePrimitive(s),c}bvhcast(t,e,n){let{intersectsRanges:i,intersectsTriangles:s}=n;const r=t.geometry,o=r.index,a=r.attributes.position;i$.copy(e).invert();const l=d$.getPrimitive(),c=d$.getPrimitive();if(s){function h(t,n,i,r,h,u,d,p){for(let _=i,m=i+r;_<m;_++){OY(c,3*_,o,a),c.a.applyMatrix4(e),c.b.applyMatrix4(e),c.c.applyMatrix4(e),c.needsUpdate=!0;for(let e=t,i=t+n;e<i;e++)if(OY(l,3*e,o,a),l.needsUpdate=!0,s(l,c,e,_,h,u,d,p))return!0}return!1}if(i){const t=i;i=function(e,n,i,s,r,o,a,l){return!!t(e,n,i,s,r,o,a,l)||h(e,n,i,s,r,o,a,l)}}else i=h}this.getBoundingBox(n$),n$.applyMatrix4(e);const u=this.shapecast({intersectsBounds:t=>n$.intersectsBox(t),intersectsRange:(e,n,s,r,o,a)=>(e$.copy(a),e$.applyMatrix4(i$),t.shapecast({intersectsBounds:t=>e$.intersectsBox(t),intersectsRange:(t,s,a,l,c)=>i(e,n,t,s,r,o,l,c)}))});return d$.releasePrimitive(l),d$.releasePrimitive(c),u}intersectsBox(t,e){return s$.set(t.min,t.max,e),s$.needsUpdate=!0,this.shapecast({intersectsBounds:t=>s$.intersectsBox(t),intersectsTriangle:t=>s$.intersectsTriangle(t)})}intersectsSphere(t){return this.shapecast({intersectsBounds:e=>t.intersectsBox(e),intersectsTriangle:e=>e.intersectsSphere(t)})}closestPointToGeometry(t,e,n={},i={},s=0,r=1/0){t.boundingBox||t.computeBoundingBox(),s$.set(t.boundingBox.min,t.boundingBox.max,e),s$.needsUpdate=!0;const o=this.geometry,a=o.attributes.position,l=o.index,c=t.attributes.position,h=t.index,u=d$.getPrimitive(),d=d$.getPrimitive();let p=a$,_=l$,m=null,f=null;i&&(m=c$,f=h$);let g=1/0,v=null,y=null;return i$.copy(e).invert(),r$.matrix.copy(i$),this.shapecast({boundsTraverseOrder:t=>s$.distanceToBox(t,Math.min(g,r)),intersectsBounds:(t,e,n)=>n<g&&n<r&&(e&&(r$.min.copy(t.min),r$.max.copy(t.max),r$.needsUpdate=!0),!0),intersectsRange:(n,i)=>{if(t.boundsTree)return t.boundsTree.shapecast({boundsTraverseOrder:t=>r$.distanceToBox(t,Math.min(g,r)),intersectsBounds:(t,e,n)=>n<g&&n<r,intersectsRange:(t,r)=>{for(let o=3*t,x=3*(t+r);o<x;o+=3){OY(d,o,h,c),d.a.applyMatrix4(e),d.b.applyMatrix4(e),d.c.applyMatrix4(e),d.needsUpdate=!0;for(let t=3*n,e=3*(n+i);t<e;t+=3){OY(u,t,l,a),u.needsUpdate=!0;const e=u.distanceToTriangle(d,p,m);if(e<g&&(_.copy(p),f&&f.copy(m),g=e,v=t/3,y=o/3),e<s)return!0}}}});for(let t=0,r=h?h.count:c.count;t<r;t+=3){OY(d,t,h,c),d.a.applyMatrix4(e),d.b.applyMatrix4(e),d.c.applyMatrix4(e),d.needsUpdate=!0;for(let e=3*n,r=3*(n+i);e<r;e+=3){OY(u,e,l,a),u.needsUpdate=!0;const n=u.distanceToTriangle(d,p,m);if(n<g&&(_.copy(p),f&&f.copy(m),g=n,v=e/3,y=t/3),n<s)return!0}}}}),d$.releasePrimitive(u),d$.releasePrimitive(d),g===1/0?null:(n.point?n.point.copy(_):n.point=_.clone(),n.distance=g,n.faceIndex=v,i&&(i.point?i.point.copy(f):i.point=f.clone(),i.point.applyMatrix4(i$),_.applyMatrix4(i$),i.distance=_.sub(i.point).length(),i.faceIndex=y),n)}closestPointToPoint(t,e={},n=0,i=1/0){const s=n*n,r=i*i;let o=1/0,a=null;if(this.shapecast({boundsTraverseOrder:e=>(o$.copy(t).clamp(e.min,e.max),o$.distanceToSquared(t)),intersectsBounds:(t,e,n)=>n<o&&n<r,intersectsTriangle:(e,n)=>{e.closestPointToPoint(t,o$);const i=t.distanceToSquared(o$);return i<o&&(a$.copy(o$),o=i,a=n),i<s}}),o===1/0)return null;const l=Math.sqrt(o);return e.point?e.point.copy(a$):e.point=a$.clone(),e.distance=l,e.faceIndex=a,e}getBoundingBox(t){t.makeEmpty();return this._roots.forEach((e=>{sY(0,new Float32Array(e),u$),t.union(u$)})),t}}const _$=p$.prototype.raycast;p$.prototype.raycast=function(...t){if(t[0].isMesh){console.warn('MeshBVH: The function signature and results frame for \\\\\\\"raycast\\\\\\\" has changed. See docs for new signature.');const[e,n,i,s]=t;return _$.call(this,i,e.material).forEach((t=>{(t=LY(t,e,n))&&s.push(t)})),s}return _$.apply(this,t)};const m$=p$.prototype.raycastFirst;p$.prototype.raycastFirst=function(...t){if(t[0].isMesh){console.warn('MeshBVH: The function signature and results frame for \\\\\\\"raycastFirst\\\\\\\" has changed. See docs for new signature.');const[e,n,i]=t;return LY(m$.call(this,i,e.material),e,n)}return m$.apply(this,t)};const f$=p$.prototype.closestPointToPoint;p$.prototype.closestPointToPoint=function(...t){if(t[0].isMesh){console.warn('MeshBVH: The function signature and results frame for \\\\\\\"closestPointToPoint\\\\\\\" has changed. See docs for new signature.'),t.unshift();const e=t[1],n={};return t[1]=n,f$.apply(this,t),e&&e.copy(n.point),n.distance}return f$.apply(this,t)};const g$=p$.prototype.closestPointToGeometry;p$.prototype.closestPointToGeometry=function(...t){const e=t[2],n=t[3];if(e&&e.isVector3||n&&n.isVector3){console.warn('MeshBVH: The function signature and results frame for \\\\\\\"closestPointToGeometry\\\\\\\" has changed. See docs for new signature.');const i={},s={},r=t[1];return t[2]=i,t[3]=s,g$.apply(this,t),e&&e.copy(i.point),n&&n.copy(s.point).applyMatrix4(r),i.distance}return g$.apply(this,t)};const v$=p$.prototype.refit;p$.prototype.refit=function(...t){const e=t[0],n=t[1];if(n&&(n instanceof Set||Array.isArray(n))){console.warn('MeshBVH: The function signature for \\\\\\\"refit\\\\\\\" has changed. See docs for new signature.');const t=new Set;n.forEach((e=>t.add(e))),e&&e.forEach((e=>t.add(e))),v$.call(this,t)}else v$.apply(this,t)},[\\\\\\\"intersectsGeometry\\\\\\\",\\\\\\\"shapecast\\\\\\\",\\\\\\\"intersectsBox\\\\\\\",\\\\\\\"intersectsSphere\\\\\\\"].forEach((t=>{const e=p$.prototype[t];p$.prototype[t]=function(...n){return(null===n[0]||n[0].isMesh)&&(n.shift(),console.warn(`MeshBVH: The function signature for \\\\\\\"${t}\\\\\\\" has changed and no longer takes Mesh. See docs for new signature.`)),e.apply(this,n)}}));const y$=new iw,x$=new sw,b$=CT.prototype.raycast;function w$(t,e){if(this.geometry.boundsTree){if(void 0===this.material)return;x$.copy(this.matrixWorld).invert(),y$.copy(t.ray).applyMatrix4(x$);const n=this.geometry.boundsTree;if(!0===t.firstHitOnly){const i=LY(n.raycastFirst(y$,this.material),this,t);i&&e.push(i)}else{const i=n.raycast(y$,this.material);for(let n=0,s=i.length;n<s;n++){const s=LY(i[n],this,t);s&&e.push(s)}}}else b$.call(this,t,e)}const T$=new Lb;class A$ extends Nw{get isMesh(){return!this.displayEdges}get isLineSegments(){return this.displayEdges}get isLine(){return this.displayEdges}constructor(t,e,n=10,i=0){super(),this.material=e,this.geometry=new hT,this.name=\\\\\\\"MeshBVHRootVisualizer\\\\\\\",this.depth=n,this.displayParents=!1,this.mesh=t,this.displayEdges=!0,this._group=i}raycast(){}update(){const t=this.geometry,e=this.mesh.geometry.boundsTree,n=this._group;if(t.dispose(),this.visible=!1,e){const i=this.depth-1,s=this.displayParents;let r=0;e.traverse(((t,e)=>{if(t===i||e)return r++,!0;s&&r++}),n);let o=0;const a=new Float32Array(24*r);let l,c;e.traverse(((t,e,n)=>{const r=t===i||e;if(r||s){sY(0,n,T$);const{min:t,max:e}=T$;for(let n=-1;n<=1;n+=2){const i=n<0?t.x:e.x;for(let n=-1;n<=1;n+=2){const s=n<0?t.y:e.y;for(let n=-1;n<=1;n+=2){const r=n<0?t.z:e.z;a[o+0]=i,a[o+1]=s,a[o+2]=r,o+=3}}}return r}}),n),c=this.displayEdges?new Uint8Array([0,4,1,5,2,6,3,7,0,2,1,3,4,6,5,7,0,1,2,3,4,5,6,7]):new Uint8Array([0,1,2,2,1,3,4,6,5,6,7,5,1,4,5,0,4,1,2,3,6,3,7,6,0,2,4,2,6,4,1,5,3,3,5,7]),l=a.length>65535?new Uint32Array(c.length*r):new Uint16Array(c.length*r);const h=c.length;for(let t=0;t<r;t++){const e=8*t,n=t*h;for(let t=0;t<h;t++)l[n+t]=e+c[t]}t.setIndex(new Qw(l,1,!1)),t.setAttribute(\\\\\\\"position\\\\\\\",new Qw(a,3,!1)),this.visible=!0}}}class M$ extends LE{get color(){return this.edgeMaterial.color}get opacity(){return this.edgeMaterial.opacity}set opacity(t){this.edgeMaterial.opacity=t,this.meshMaterial.opacity=t}constructor(t,e=10){super(),this.name=\\\\\\\"MeshBVHVisualizer\\\\\\\",this.depth=e,this.mesh=t,this.displayParents=!1,this.displayEdges=!0,this._roots=[];const n=new vS({color:65416,transparent:!0,opacity:.3,depthWrite:!1}),i=new Jw({color:65416,transparent:!0,opacity:.3,depthWrite:!1});i.color=n.color,this.edgeMaterial=n,this.meshMaterial=i,this.update()}update(){const t=this.mesh.geometry.boundsTree,e=t?t._roots.length:0;for(;this._roots.length>e;)this._roots.pop();for(let t=0;t<e;t++){if(t>=this._roots.length){const e=new A$(this.mesh,this.edgeMaterial,this.depth,t);this.add(e),this._roots.push(e)}const e=this._roots[t];e.depth=this.depth,e.mesh=this.mesh,e.displayParents=this.displayParents,e.displayEdges=this.displayEdges,e.material=this.displayEdges?this.edgeMaterial:this.meshMaterial,e.update()}}updateMatrixWorld(...t){this.position.copy(this.mesh.position),this.rotation.copy(this.mesh.rotation),this.scale.copy(this.mesh.scale),super.updateMatrixWorld(...t)}copy(t){this.depth=t.depth,this.mesh=t.mesh}clone(){return new M$(this.mesh,this.depth)}dispose(){this.edgeMaterial.dispose(),this.meshMaterial.dispose();const t=this.children;for(let e=0,n=t.length;e<n;e++)t[e].geometry.dispose()}}class E$ extends aV{static type(){return\\\\\\\"BVH\\\\\\\"}cook(t,e){const n=[];for(let i of t)if(i){const t=i.objects();for(let i of t)i.traverse((t=>{const i=t;if(i.isMesh){if(e.keepOnlyPosition){const t=i.geometry;for(const e in t.attributes)\\\\\\\"position\\\\\\\"!==e&&t.deleteAttribute(e)}n.push(i)}}))}const i=this._makeCompact(n);if(i){i.matrixAutoUpdate=!1,i.raycast=w$;const t=new p$(i.geometry,{verbose:!1});return i.geometry.boundsTree=t,this.createCoreGroupFromObjects([i])}return this.createCoreGroupFromObjects([])}_makeCompact(t){var e,n;const i=[];let s;for(let e of t){s=s||e.material;const t=e.geometry;t.applyMatrix4(e.matrix),i.push(t)}try{const t=fr.mergeGeometries(i);if(t){return this.createObject(t,Ns.MESH,s)}null===(e=this.states)||void 0===e||e.error.set(\\\\\\\"merge failed, check that input geometries have the same attributes\\\\\\\")}catch(t){null===(n=this.states)||void 0===n||n.error.set(t.message)}}}E$.DEFAULT_PARAMS={keepOnlyPosition:!1},E$.INPUT_CLONED_STATE=Qi.ALWAYS;const S$=E$.DEFAULT_PARAMS;const C$=new class extends ua{constructor(){super(...arguments),this.keepOnlyPosition=ha.BOOLEAN(S$.keepOnlyPosition)}};class N$ extends uV{constructor(){super(...arguments),this.paramsConfig=C$}static type(){return\\\\\\\"BVH\\\\\\\"}static displayedInputNames(){return[\\\\\\\"geometry to create BVH from\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(E$.INPUT_CLONED_STATE)}cook(t){this._operation=this._operation||new E$(this._scene,this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}class L$ extends aV{static type(){return\\\\\\\"BVHVisualizer\\\\\\\"}cook(t,e){const n=t[0].objects()[0],i=new M$(n,e.depth);return i.opacity=1,i.update(),this.createCoreGroupFromObjects([i])}}L$.DEFAULT_PARAMS={depth:0},L$.INPUT_CLONED_STATE=Qi.NEVER;const O$=L$.DEFAULT_PARAMS;const P$=new class extends ua{constructor(){super(...arguments),this.depth=ha.INTEGER(O$.depth,{range:[0,20],rangeLocked:[!0,!1]})}};class R$ extends uV{constructor(){super(...arguments),this.paramsConfig=P$}static type(){return\\\\\\\"BVHVisualizer\\\\\\\"}static displayedInputNames(){return[\\\\\\\"geometry with bvh\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(L$.INPUT_CLONED_STATE)}cook(t){this._operation=this._operation||new L$(this._scene,this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}class I$ extends C.a{constructor(t,e,n,i=1){\\\\\\\"number\\\\\\\"==typeof n&&(i=n,n=!1,console.error(\\\\\\\"THREE.InstancedBufferAttribute: The constructor now expects normalized as the third argument.\\\\\\\")),super(t,e,n),this.meshPerAttribute=i}copy(t){return super.copy(t),this.meshPerAttribute=t.meshPerAttribute,this}toJSON(){const t=super.toJSON();return t.meshPerAttribute=this.meshPerAttribute,t.isInstancedBufferAttribute=!0,t}}I$.prototype.isInstancedBufferAttribute=!0;const F$=new A.a,D$=new A.a,B$=[],z$=new B.a;class k$ extends B.a{constructor(t,e,n){super(t,e),this.instanceMatrix=new I$(new Float32Array(16*n),16),this.instanceColor=null,this.count=n,this.frustumCulled=!1}copy(t){return super.copy(t),this.instanceMatrix.copy(t.instanceMatrix),null!==t.instanceColor&&(this.instanceColor=t.instanceColor.clone()),this.count=t.count,this}getColorAt(t,e){e.fromArray(this.instanceColor.array,3*t)}getMatrixAt(t,e){e.fromArray(this.instanceMatrix.array,16*t)}raycast(t,e){const n=this.matrixWorld,i=this.count;if(z$.geometry=this.geometry,z$.material=this.material,void 0!==z$.material)for(let s=0;s<i;s++){this.getMatrixAt(s,F$),D$.multiplyMatrices(n,F$),z$.matrixWorld=D$,z$.raycast(t,B$);for(let t=0,n=B$.length;t<n;t++){const n=B$[t];n.instanceId=s,n.object=this,e.push(n)}B$.length=0}}setColorAt(t,e){null===this.instanceColor&&(this.instanceColor=new I$(new Float32Array(3*this.instanceMatrix.count),3)),e.toArray(this.instanceColor.array,3*t)}setMatrixAt(t,e){e.toArray(this.instanceMatrix.array,16*t)}updateMorphTargets(){}dispose(){this.dispatchEvent({type:\\\\\\\"dispose\\\\\\\"})}}let U$;k$.prototype.isInstancedMesh=!0;const G$=new p.a,V$=new p.a,H$=new p.a,j$=new d.a,W$=new d.a,q$=new A.a,X$=new p.a,Y$=new p.a,$$=new p.a,J$=new d.a,Z$=new d.a,K$=new d.a;class Q$ extends Q.a{constructor(t){if(super(),this.type=\\\\\\\"Sprite\\\\\\\",void 0===U$){U$=new S.a;const t=new Float32Array([-.5,-.5,0,0,0,.5,-.5,0,1,0,.5,.5,0,1,1,-.5,.5,0,0,1]),e=new cr.a(t,5);U$.setIndex([0,1,2,0,2,3]),U$.setAttribute(\\\\\\\"position\\\\\\\",new hr.a(e,3,0,!1)),U$.setAttribute(\\\\\\\"uv\\\\\\\",new hr.a(e,2,3,!1))}this.geometry=U$,this.material=void 0!==t?t:new jf,this.center=new d.a(.5,.5)}raycast(t,e){null===t.camera&&console.error('THREE.Sprite: \\\\\\\"Raycaster.camera\\\\\\\" needs to be set in order to raycast against sprites.'),V$.setFromMatrixScale(this.matrixWorld),q$.copy(t.camera.matrixWorld),this.modelViewMatrix.multiplyMatrices(t.camera.matrixWorldInverse,this.matrixWorld),H$.setFromMatrixPosition(this.modelViewMatrix),t.camera.isPerspectiveCamera&&!1===this.material.sizeAttenuation&&V$.multiplyScalar(-H$.z);const n=this.material.rotation;let i,s;0!==n&&(s=Math.cos(n),i=Math.sin(n));const r=this.center;tJ(X$.set(-.5,-.5,0),H$,r,V$,i,s),tJ(Y$.set(.5,-.5,0),H$,r,V$,i,s),tJ($$.set(.5,.5,0),H$,r,V$,i,s),J$.set(0,0),Z$.set(1,0),K$.set(1,1);let o=t.ray.intersectTriangle(X$,Y$,$$,!1,G$);if(null===o&&(tJ(Y$.set(-.5,.5,0),H$,r,V$,i,s),Z$.set(0,1),o=t.ray.intersectTriangle(X$,$$,Y$,!1,G$),null===o))return;const a=t.ray.origin.distanceTo(G$);a<t.near||a>t.far||e.push({distance:a,point:G$.clone(),uv:tr.a.getUV(G$,X$,Y$,$$,J$,Z$,K$,new d.a),face:null,object:this})}copy(t){return super.copy(t),void 0!==t.center&&this.center.copy(t.center),this.material=t.material,this}}function tJ(t,e,n,i,s,r){j$.subVectors(t,n).addScalar(.5).multiply(i),void 0!==s?(W$.x=r*j$.x-s*j$.y,W$.y=s*j$.x+r*j$.y):W$.copy(j$),t.copy(e),t.x+=W$.x,t.y+=W$.y,t.applyMatrix4(q$)}Q$.prototype.isSprite=!0;var eJ=n(92),nJ=n(81),iJ=n(46);class sJ{constructor(){this.coefficients=[];for(let t=0;t<9;t++)this.coefficients.push(new p.a)}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){const n=t.x,i=t.y,s=t.z,r=this.coefficients;return e.copy(r[0]).multiplyScalar(.282095),e.addScaledVector(r[1],.488603*i),e.addScaledVector(r[2],.488603*s),e.addScaledVector(r[3],.488603*n),e.addScaledVector(r[4],n*i*1.092548),e.addScaledVector(r[5],i*s*1.092548),e.addScaledVector(r[6],.315392*(3*s*s-1)),e.addScaledVector(r[7],n*s*1.092548),e.addScaledVector(r[8],.546274*(n*n-i*i)),e}getIrradianceAt(t,e){const n=t.x,i=t.y,s=t.z,r=this.coefficients;return e.copy(r[0]).multiplyScalar(.886227),e.addScaledVector(r[1],1.023328*i),e.addScaledVector(r[2],1.023328*s),e.addScaledVector(r[3],1.023328*n),e.addScaledVector(r[4],.858086*n*i),e.addScaledVector(r[5],.858086*i*s),e.addScaledVector(r[6],.743125*s*s-.247708),e.addScaledVector(r[7],.858086*n*s),e.addScaledVector(r[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){const n=this.coefficients;for(let i=0;i<9;i++)n[i].fromArray(t,e+3*i);return this}toArray(t=[],e=0){const n=this.coefficients;for(let i=0;i<9;i++)n[i].toArray(t,e+3*i);return t}static getBasisAt(t,e){const 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)}}sJ.prototype.isSphericalHarmonics3=!0;class rJ extends cv.a{constructor(t=new sJ,e=1){super(void 0,e),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){const e=super.toJSON(t);return e.object.sh=this.sh.toArray(),e}}rJ.prototype.isLightProbe=!0;var oJ=n(63),aJ=n(43);class lJ extends S.a{constructor(){super(),this.type=\\\\\\\"InstancedBufferGeometry\\\\\\\",this.instanceCount=1/0}copy(t){return super.copy(t),this.instanceCount=t.instanceCount,this}clone(){return(new this.constructor).copy(this)}toJSON(){const t=super.toJSON(this);return t.instanceCount=this.instanceCount,t.isInstancedBufferGeometry=!0,t}}lJ.prototype.isInstancedBufferGeometry=!0;class cJ extends Vf.a{constructor(t){super(t)}load(t,e,n,i){const s=this,r=new Gf.a(s.manager);r.setPath(s.path),r.setRequestHeader(s.requestHeader),r.setWithCredentials(s.withCredentials),r.load(t,(function(n){try{e(s.parse(JSON.parse(n)))}catch(e){i?i(e):console.error(e),s.manager.itemError(t)}}),n,i)}parse(t){const e={},n={};function i(t,i){if(void 0!==e[i])return e[i];const s=t.interleavedBuffers[i],r=function(t,e){if(void 0!==n[e])return n[e];const i=t.arrayBuffers[e],s=new Uint32Array(i).buffer;return n[e]=s,s}(t,s.buffer),o=Object(It.c)(s.type,r),a=new cr.a(o,s.stride);return a.uuid=s.uuid,e[i]=a,a}const s=t.isInstancedBufferGeometry?new lJ:new S.a,r=t.data.index;if(void 0!==r){const t=Object(It.c)(r.type,r.array);s.setIndex(new C.a(t,1))}const o=t.data.attributes;for(const e in o){const n=o[e];let r;if(n.isInterleavedBufferAttribute){const e=i(t.data,n.data);r=new hr.a(e,n.itemSize,n.offset,n.normalized)}else{const t=Object(It.c)(n.type,n.array);r=new(n.isInstancedBufferAttribute?I$:C.a)(t,n.itemSize,n.normalized)}void 0!==n.name&&(r.name=n.name),void 0!==n.usage&&r.setUsage(n.usage),void 0!==n.updateRange&&(r.updateRange.offset=n.updateRange.offset,r.updateRange.count=n.updateRange.count),s.setAttribute(e,r)}const a=t.data.morphAttributes;if(a)for(const e in a){const n=a[e],r=[];for(let e=0,s=n.length;e<s;e++){const s=n[e];let o;if(s.isInterleavedBufferAttribute){const e=i(t.data,s.data);o=new hr.a(e,s.itemSize,s.offset,s.normalized)}else{const t=Object(It.c)(s.type,s.array);o=new C.a(t,s.itemSize,s.normalized)}void 0!==s.name&&(o.name=s.name),r.push(o)}s.morphAttributes[e]=r}t.data.morphTargetsRelative&&(s.morphTargetsRelative=!0);const l=t.data.groups||t.data.drawcalls||t.data.offsets;if(void 0!==l)for(let t=0,e=l.length;t!==e;++t){const e=l[t];s.addGroup(e.start,e.count,e.materialIndex)}const c=t.data.boundingSphere;if(void 0!==c){const t=new p.a;void 0!==c.center&&t.fromArray(c.center),s.boundingSphere=new MX.a(t,c.radius)}return t.name&&(s.name=t.name),t.userData&&(s.userData=t.userData),s}}class hJ extends S.a{constructor(t=1,e=8,n=0,i=2*Math.PI){super(),this.type=\\\\\\\"CircleGeometry\\\\\\\",this.parameters={radius:t,segments:e,thetaStart:n,thetaLength:i},e=Math.max(3,e);const s=[],r=[],o=[],a=[],l=new p.a,c=new d.a;r.push(0,0,0),o.push(0,0,1),a.push(.5,.5);for(let s=0,h=3;s<=e;s++,h+=3){const u=n+s/e*i;l.x=t*Math.cos(u),l.y=t*Math.sin(u),r.push(l.x,l.y,l.z),o.push(0,0,1),c.x=(r[h]/t+1)/2,c.y=(r[h+1]/t+1)/2,a.push(c.x,c.y)}for(let t=1;t<=e;t++)s.push(t,t+1,0);this.setIndex(s),this.setAttribute(\\\\\\\"position\\\\\\\",new C.c(r,3)),this.setAttribute(\\\\\\\"normal\\\\\\\",new C.c(o,3)),this.setAttribute(\\\\\\\"uv\\\\\\\",new C.c(a,2))}static fromJSON(t){return new hJ(t.radius,t.segments,t.thetaStart,t.thetaLength)}}class uJ extends XU{constructor(t=1,e=0){const n=(1+Math.sqrt(5))/2,i=1/n;super([-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],[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],t,e),this.type=\\\\\\\"DodecahedronGeometry\\\\\\\",this.parameters={radius:t,detail:e}}static fromJSON(t){return new uJ(t.radius,t.detail)}}const dJ=new p.a,pJ=new p.a,_J=new p.a,mJ=new tr.a;class fJ extends S.a{constructor(t=null,e=1){if(super(),this.type=\\\\\\\"EdgesGeometry\\\\\\\",this.parameters={geometry:t,thresholdAngle:e},null!==t){const n=4,i=Math.pow(10,n),s=Math.cos(On.a*e),r=t.getIndex(),o=t.getAttribute(\\\\\\\"position\\\\\\\"),a=r?r.count:o.count,l=[0,0,0],c=[\\\\\\\"a\\\\\\\",\\\\\\\"b\\\\\\\",\\\\\\\"c\\\\\\\"],h=new Array(3),u={},d=[];for(let t=0;t<a;t+=3){r?(l[0]=r.getX(t),l[1]=r.getX(t+1),l[2]=r.getX(t+2)):(l[0]=t,l[1]=t+1,l[2]=t+2);const{a:e,b:n,c:a}=mJ;if(e.fromBufferAttribute(o,l[0]),n.fromBufferAttribute(o,l[1]),a.fromBufferAttribute(o,l[2]),mJ.getNormal(_J),h[0]=`${Math.round(e.x*i)},${Math.round(e.y*i)},${Math.round(e.z*i)}`,h[1]=`${Math.round(n.x*i)},${Math.round(n.y*i)},${Math.round(n.z*i)}`,h[2]=`${Math.round(a.x*i)},${Math.round(a.y*i)},${Math.round(a.z*i)}`,h[0]!==h[1]&&h[1]!==h[2]&&h[2]!==h[0])for(let t=0;t<3;t++){const e=(t+1)%3,n=h[t],i=h[e],r=mJ[c[t]],o=mJ[c[e]],a=`${n}_${i}`,p=`${i}_${n}`;p in u&&u[p]?(_J.dot(u[p].normal)<=s&&(d.push(r.x,r.y,r.z),d.push(o.x,o.y,o.z)),u[p]=null):a in u||(u[a]={index0:l[t],index1:l[e],normal:_J.clone()})}}for(const t in u)if(u[t]){const{index0:e,index1:n}=u[t];dJ.fromBufferAttribute(o,e),pJ.fromBufferAttribute(o,n),d.push(dJ.x,dJ.y,dJ.z),d.push(pJ.x,pJ.y,pJ.z)}this.setAttribute(\\\\\\\"position\\\\\\\",new C.c(d,3))}}}var gJ=n(79),vJ=n(53);class yJ extends S.a{constructor(t=new iJ.a([new d.a(.5,.5),new d.a(-.5,.5),new d.a(-.5,-.5),new d.a(.5,-.5)]),e={}){super(),this.type=\\\\\\\"ExtrudeGeometry\\\\\\\",this.parameters={shapes:t,options:e},t=Array.isArray(t)?t:[t];const n=this,i=[],s=[];for(let e=0,n=t.length;e<n;e++){r(t[e])}function r(t){const r=[],o=void 0!==e.curveSegments?e.curveSegments:12,a=void 0!==e.steps?e.steps:1;let l=void 0!==e.depth?e.depth:1,c=void 0===e.bevelEnabled||e.bevelEnabled,h=void 0!==e.bevelThickness?e.bevelThickness:.2,u=void 0!==e.bevelSize?e.bevelSize:h-.1,_=void 0!==e.bevelOffset?e.bevelOffset:0,m=void 0!==e.bevelSegments?e.bevelSegments:3;const f=e.extrudePath,g=void 0!==e.UVGenerator?e.UVGenerator:xJ;void 0!==e.amount&&(console.warn(\\\\\\\"THREE.ExtrudeBufferGeometry: amount has been renamed to depth.\\\\\\\"),l=e.amount);let v,y,x,b,w,T=!1;f&&(v=f.getSpacedPoints(a),T=!0,c=!1,y=f.computeFrenetFrames(a,!1),x=new p.a,b=new p.a,w=new p.a),c||(m=0,h=0,u=0,_=0);const A=t.extractPoints(o);let M=A.shape;const E=A.holes;if(!vJ.a.isClockWise(M)){M=M.reverse();for(let t=0,e=E.length;t<e;t++){const e=E[t];vJ.a.isClockWise(e)&&(E[t]=e.reverse())}}const S=vJ.a.triangulateShape(M,E),C=M;for(let t=0,e=E.length;t<e;t++){const e=E[t];M=M.concat(e)}function N(t,e,n){return e||console.error(\\\\\\\"THREE.ExtrudeGeometry: vec does not exist\\\\\\\"),e.clone().multiplyScalar(n).add(t)}const L=M.length,O=S.length;function P(t,e,n){let i,s,r;const o=t.x-e.x,a=t.y-e.y,l=n.x-t.x,c=n.y-t.y,h=o*o+a*a,u=o*c-a*l;if(Math.abs(u)>Number.EPSILON){const u=Math.sqrt(h),p=Math.sqrt(l*l+c*c),_=e.x-a/u,m=e.y+o/u,f=((n.x-c/p-_)*c-(n.y+l/p-m)*l)/(o*c-a*l);i=_+o*f-t.x,s=m+a*f-t.y;const g=i*i+s*s;if(g<=2)return new d.a(i,s);r=Math.sqrt(g/2)}else{let t=!1;o>Number.EPSILON?l>Number.EPSILON&&(t=!0):o<-Number.EPSILON?l<-Number.EPSILON&&(t=!0):Math.sign(a)===Math.sign(c)&&(t=!0),t?(i=-a,s=o,r=Math.sqrt(h)):(i=o,s=a,r=Math.sqrt(h/2))}return new d.a(i/r,s/r)}const R=[];for(let t=0,e=C.length,n=e-1,i=t+1;t<e;t++,n++,i++)n===e&&(n=0),i===e&&(i=0),R[t]=P(C[t],C[n],C[i]);const I=[];let F,D=R.concat();for(let t=0,e=E.length;t<e;t++){const e=E[t];F=[];for(let t=0,n=e.length,i=n-1,s=t+1;t<n;t++,i++,s++)i===n&&(i=0),s===n&&(s=0),F[t]=P(e[t],e[i],e[s]);I.push(F),D=D.concat(F)}for(let t=0;t<m;t++){const e=t/m,n=h*Math.cos(e*Math.PI/2),i=u*Math.sin(e*Math.PI/2)+_;for(let t=0,e=C.length;t<e;t++){const e=N(C[t],R[t],i);k(e.x,e.y,-n)}for(let t=0,e=E.length;t<e;t++){const e=E[t];F=I[t];for(let t=0,s=e.length;t<s;t++){const s=N(e[t],F[t],i);k(s.x,s.y,-n)}}}const B=u+_;for(let t=0;t<L;t++){const e=c?N(M[t],D[t],B):M[t];T?(b.copy(y.normals[0]).multiplyScalar(e.x),x.copy(y.binormals[0]).multiplyScalar(e.y),w.copy(v[0]).add(b).add(x),k(w.x,w.y,w.z)):k(e.x,e.y,0)}for(let t=1;t<=a;t++)for(let e=0;e<L;e++){const n=c?N(M[e],D[e],B):M[e];T?(b.copy(y.normals[t]).multiplyScalar(n.x),x.copy(y.binormals[t]).multiplyScalar(n.y),w.copy(v[t]).add(b).add(x),k(w.x,w.y,w.z)):k(n.x,n.y,l/a*t)}for(let t=m-1;t>=0;t--){const e=t/m,n=h*Math.cos(e*Math.PI/2),i=u*Math.sin(e*Math.PI/2)+_;for(let t=0,e=C.length;t<e;t++){const e=N(C[t],R[t],i);k(e.x,e.y,l+n)}for(let t=0,e=E.length;t<e;t++){const e=E[t];F=I[t];for(let t=0,s=e.length;t<s;t++){const s=N(e[t],F[t],i);T?k(s.x,s.y+v[a-1].y,v[a-1].x+n):k(s.x,s.y,l+n)}}}function z(t,e){let n=t.length;for(;--n>=0;){const i=n;let s=n-1;s<0&&(s=t.length-1);for(let t=0,n=a+2*m;t<n;t++){const n=L*t,r=L*(t+1);G(e+i+n,e+s+n,e+s+r,e+i+r)}}}function k(t,e,n){r.push(t),r.push(e),r.push(n)}function U(t,e,s){V(t),V(e),V(s);const r=i.length/3,o=g.generateTopUV(n,i,r-3,r-2,r-1);H(o[0]),H(o[1]),H(o[2])}function G(t,e,s,r){V(t),V(e),V(r),V(e),V(s),V(r);const o=i.length/3,a=g.generateSideWallUV(n,i,o-6,o-3,o-2,o-1);H(a[0]),H(a[1]),H(a[3]),H(a[1]),H(a[2]),H(a[3])}function V(t){i.push(r[3*t+0]),i.push(r[3*t+1]),i.push(r[3*t+2])}function H(t){s.push(t.x),s.push(t.y)}!function(){const t=i.length/3;if(c){let t=0,e=L*t;for(let t=0;t<O;t++){const n=S[t];U(n[2]+e,n[1]+e,n[0]+e)}t=a+2*m,e=L*t;for(let t=0;t<O;t++){const n=S[t];U(n[0]+e,n[1]+e,n[2]+e)}}else{for(let t=0;t<O;t++){const e=S[t];U(e[2],e[1],e[0])}for(let t=0;t<O;t++){const e=S[t];U(e[0]+L*a,e[1]+L*a,e[2]+L*a)}}n.addGroup(t,i.length/3-t,0)}(),function(){const t=i.length/3;let e=0;z(C,e),e+=C.length;for(let t=0,n=E.length;t<n;t++){const n=E[t];z(n,e),e+=n.length}n.addGroup(t,i.length/3-t,1)}()}this.setAttribute(\\\\\\\"position\\\\\\\",new C.c(i,3)),this.setAttribute(\\\\\\\"uv\\\\\\\",new C.c(s,2)),this.computeVertexNormals()}toJSON(){const t=super.toJSON();return function(t,e,n){if(n.shapes=[],Array.isArray(t))for(let e=0,i=t.length;e<i;e++){const i=t[e];n.shapes.push(i.uuid)}else n.shapes.push(t.uuid);void 0!==e.extrudePath&&(n.options.extrudePath=e.extrudePath.toJSON());return n}(this.parameters.shapes,this.parameters.options,t)}static fromJSON(t,e){const n=[];for(let i=0,s=t.shapes.length;i<s;i++){const s=e[t.shapes[i]];n.push(s)}const i=t.options.extrudePath;return void 0!==i&&(t.options.extrudePath=(new gJ[i.type]).fromJSON(i)),new yJ(n,t.options)}}const xJ={generateTopUV:function(t,e,n,i,s){const r=e[3*n],o=e[3*n+1],a=e[3*i],l=e[3*i+1],c=e[3*s],h=e[3*s+1];return[new d.a(r,o),new d.a(a,l),new d.a(c,h)]},generateSideWallUV:function(t,e,n,i,s,r){const o=e[3*n],a=e[3*n+1],l=e[3*n+2],c=e[3*i],h=e[3*i+1],u=e[3*i+2],p=e[3*s],_=e[3*s+1],m=e[3*s+2],f=e[3*r],g=e[3*r+1],v=e[3*r+2];return Math.abs(a-h)<Math.abs(o-c)?[new d.a(o,1-l),new d.a(c,1-u),new d.a(p,1-m),new d.a(f,1-v)]:[new d.a(a,1-l),new d.a(h,1-u),new d.a(_,1-m),new d.a(g,1-v)]}};class bJ extends XU{constructor(t=1,e=0){const n=(1+Math.sqrt(5))/2;super([-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],[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],t,e),this.type=\\\\\\\"IcosahedronGeometry\\\\\\\",this.parameters={radius:t,detail:e}}static fromJSON(t){return new bJ(t.radius,t.detail)}}class wJ extends S.a{constructor(t=[new d.a(0,.5),new d.a(.5,0),new d.a(0,-.5)],e=12,n=0,i=2*Math.PI){super(),this.type=\\\\\\\"LatheGeometry\\\\\\\",this.parameters={points:t,segments:e,phiStart:n,phiLength:i},e=Math.floor(e),i=On.d(i,0,2*Math.PI);const s=[],r=[],o=[],a=1/e,l=new p.a,c=new d.a;for(let s=0;s<=e;s++){const h=n+s*a*i,u=Math.sin(h),d=Math.cos(h);for(let n=0;n<=t.length-1;n++)l.x=t[n].x*u,l.y=t[n].y,l.z=t[n].x*d,r.push(l.x,l.y,l.z),c.x=s/e,c.y=n/(t.length-1),o.push(c.x,c.y)}for(let n=0;n<e;n++)for(let e=0;e<t.length-1;e++){const i=e+n*t.length,r=i,o=i+t.length,a=i+t.length+1,l=i+1;s.push(r,o,l),s.push(o,a,l)}if(this.setIndex(s),this.setAttribute(\\\\\\\"position\\\\\\\",new C.c(r,3)),this.setAttribute(\\\\\\\"uv\\\\\\\",new C.c(o,2)),this.computeVertexNormals(),i===2*Math.PI){const n=this.attributes.normal.array,i=new p.a,s=new p.a,r=new p.a,o=e*t.length*3;for(let e=0,a=0;e<t.length;e++,a+=3)i.x=n[a+0],i.y=n[a+1],i.z=n[a+2],s.x=n[o+a+0],s.y=n[o+a+1],s.z=n[o+a+2],r.addVectors(i,s).normalize(),n[a+0]=n[o+a+0]=r.x,n[a+1]=n[o+a+1]=r.y,n[a+2]=n[o+a+2]=r.z}}static fromJSON(t){return new wJ(t.points,t.segments,t.phiStart,t.phiLength)}}class TJ extends S.a{constructor(t=.5,e=1,n=8,i=1,s=0,r=2*Math.PI){super(),this.type=\\\\\\\"RingGeometry\\\\\\\",this.parameters={innerRadius:t,outerRadius:e,thetaSegments:n,phiSegments:i,thetaStart:s,thetaLength:r},n=Math.max(3,n);const o=[],a=[],l=[],c=[];let h=t;const u=(e-t)/(i=Math.max(1,i)),_=new p.a,m=new d.a;for(let t=0;t<=i;t++){for(let t=0;t<=n;t++){const i=s+t/n*r;_.x=h*Math.cos(i),_.y=h*Math.sin(i),a.push(_.x,_.y,_.z),l.push(0,0,1),m.x=(_.x/e+1)/2,m.y=(_.y/e+1)/2,c.push(m.x,m.y)}h+=u}for(let t=0;t<i;t++){const e=t*(n+1);for(let t=0;t<n;t++){const i=t+e,s=i,r=i+n+1,a=i+n+2,l=i+1;o.push(s,r,l),o.push(r,a,l)}}this.setIndex(o),this.setAttribute(\\\\\\\"position\\\\\\\",new C.c(a,3)),this.setAttribute(\\\\\\\"normal\\\\\\\",new C.c(l,3)),this.setAttribute(\\\\\\\"uv\\\\\\\",new C.c(c,2))}static fromJSON(t){return new TJ(t.innerRadius,t.outerRadius,t.thetaSegments,t.phiSegments,t.thetaStart,t.thetaLength)}}class AJ extends S.a{constructor(t=new iJ.a([new d.a(0,.5),new d.a(-.5,-.5),new d.a(.5,-.5)]),e=12){super(),this.type=\\\\\\\"ShapeGeometry\\\\\\\",this.parameters={shapes:t,curveSegments:e};const n=[],i=[],s=[],r=[];let o=0,a=0;if(!1===Array.isArray(t))l(t);else for(let e=0;e<t.length;e++)l(t[e]),this.addGroup(o,a,e),o+=a,a=0;function l(t){const o=i.length/3,l=t.extractPoints(e);let c=l.shape;const h=l.holes;!1===vJ.a.isClockWise(c)&&(c=c.reverse());for(let t=0,e=h.length;t<e;t++){const e=h[t];!0===vJ.a.isClockWise(e)&&(h[t]=e.reverse())}const u=vJ.a.triangulateShape(c,h);for(let t=0,e=h.length;t<e;t++){const e=h[t];c=c.concat(e)}for(let t=0,e=c.length;t<e;t++){const e=c[t];i.push(e.x,e.y,0),s.push(0,0,1),r.push(e.x,e.y)}for(let t=0,e=u.length;t<e;t++){const e=u[t],i=e[0]+o,s=e[1]+o,r=e[2]+o;n.push(i,s,r),a+=3}}this.setIndex(n),this.setAttribute(\\\\\\\"position\\\\\\\",new C.c(i,3)),this.setAttribute(\\\\\\\"normal\\\\\\\",new C.c(s,3)),this.setAttribute(\\\\\\\"uv\\\\\\\",new C.c(r,2))}toJSON(){const t=super.toJSON();return function(t,e){if(e.shapes=[],Array.isArray(t))for(let n=0,i=t.length;n<i;n++){const i=t[n];e.shapes.push(i.uuid)}else e.shapes.push(t.uuid);return e}(this.parameters.shapes,t)}static fromJSON(t,e){const n=[];for(let i=0,s=t.shapes.length;i<s;i++){const s=e[t.shapes[i]];n.push(s)}return new AJ(n,t.curveSegments)}}class MJ extends XU{constructor(t=1,e=0){super([1,1,1,-1,-1,1,-1,1,-1,1,-1,-1],[2,1,0,0,3,2,1,3,0,2,3,1],t,e),this.type=\\\\\\\"TetrahedronGeometry\\\\\\\",this.parameters={radius:t,detail:e}}static fromJSON(t){return new MJ(t.radius,t.detail)}}class EJ extends S.a{constructor(t=1,e=.4,n=8,i=6,s=2*Math.PI){super(),this.type=\\\\\\\"TorusGeometry\\\\\\\",this.parameters={radius:t,tube:e,radialSegments:n,tubularSegments:i,arc:s},n=Math.floor(n),i=Math.floor(i);const r=[],o=[],a=[],l=[],c=new p.a,h=new p.a,u=new p.a;for(let r=0;r<=n;r++)for(let d=0;d<=i;d++){const p=d/i*s,_=r/n*Math.PI*2;h.x=(t+e*Math.cos(_))*Math.cos(p),h.y=(t+e*Math.cos(_))*Math.sin(p),h.z=e*Math.sin(_),o.push(h.x,h.y,h.z),c.x=t*Math.cos(p),c.y=t*Math.sin(p),u.subVectors(h,c).normalize(),a.push(u.x,u.y,u.z),l.push(d/i),l.push(r/n)}for(let t=1;t<=n;t++)for(let e=1;e<=i;e++){const n=(i+1)*t+e-1,s=(i+1)*(t-1)+e-1,o=(i+1)*(t-1)+e,a=(i+1)*t+e;r.push(n,s,a),r.push(s,o,a)}this.setIndex(r),this.setAttribute(\\\\\\\"position\\\\\\\",new C.c(o,3)),this.setAttribute(\\\\\\\"normal\\\\\\\",new C.c(a,3)),this.setAttribute(\\\\\\\"uv\\\\\\\",new C.c(l,2))}static fromJSON(t){return new EJ(t.radius,t.tube,t.radialSegments,t.tubularSegments,t.arc)}}class SJ extends S.a{constructor(t=1,e=.4,n=64,i=8,s=2,r=3){super(),this.type=\\\\\\\"TorusKnotGeometry\\\\\\\",this.parameters={radius:t,tube:e,tubularSegments:n,radialSegments:i,p:s,q:r},n=Math.floor(n),i=Math.floor(i);const o=[],a=[],l=[],c=[],h=new p.a,u=new p.a,d=new p.a,_=new p.a,m=new p.a,f=new p.a,g=new p.a;for(let o=0;o<=n;++o){const p=o/n*s*Math.PI*2;v(p,s,r,t,d),v(p+.01,s,r,t,_),f.subVectors(_,d),g.addVectors(_,d),m.crossVectors(f,g),g.crossVectors(m,f),m.normalize(),g.normalize();for(let t=0;t<=i;++t){const s=t/i*Math.PI*2,r=-e*Math.cos(s),p=e*Math.sin(s);h.x=d.x+(r*g.x+p*m.x),h.y=d.y+(r*g.y+p*m.y),h.z=d.z+(r*g.z+p*m.z),a.push(h.x,h.y,h.z),u.subVectors(h,d).normalize(),l.push(u.x,u.y,u.z),c.push(o/n),c.push(t/i)}}for(let t=1;t<=n;t++)for(let e=1;e<=i;e++){const n=(i+1)*(t-1)+(e-1),s=(i+1)*t+(e-1),r=(i+1)*t+e,a=(i+1)*(t-1)+e;o.push(n,s,a),o.push(s,r,a)}function v(t,e,n,i,s){const r=Math.cos(t),o=Math.sin(t),a=n/e*t,l=Math.cos(a);s.x=i*(2+l)*.5*r,s.y=i*(2+l)*o*.5,s.z=i*Math.sin(a)*.5}this.setIndex(o),this.setAttribute(\\\\\\\"position\\\\\\\",new C.c(a,3)),this.setAttribute(\\\\\\\"normal\\\\\\\",new C.c(l,3)),this.setAttribute(\\\\\\\"uv\\\\\\\",new C.c(c,2))}static fromJSON(t){return new SJ(t.radius,t.tube,t.tubularSegments,t.radialSegments,t.p,t.q)}}var CJ=n(90);class NJ extends S.a{constructor(t=new CJ.a(new p.a(-1,-1,0),new p.a(-1,1,0),new p.a(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};const r=t.computeFrenetFrames(e,s);this.tangents=r.tangents,this.normals=r.normals,this.binormals=r.binormals;const o=new p.a,a=new p.a,l=new d.a;let c=new p.a;const h=[],u=[],_=[],m=[];function f(s){c=t.getPointAt(s/e,c);const l=r.normals[s],d=r.binormals[s];for(let t=0;t<=i;t++){const e=t/i*Math.PI*2,s=Math.sin(e),r=-Math.cos(e);a.x=r*l.x+s*d.x,a.y=r*l.y+s*d.y,a.z=r*l.z+s*d.z,a.normalize(),u.push(a.x,a.y,a.z),o.x=c.x+n*a.x,o.y=c.y+n*a.y,o.z=c.z+n*a.z,h.push(o.x,o.y,o.z)}}!function(){for(let t=0;t<e;t++)f(t);f(!1===s?e:0),function(){for(let t=0;t<=e;t++)for(let n=0;n<=i;n++)l.x=t/e,l.y=n/i,_.push(l.x,l.y)}(),function(){for(let t=1;t<=e;t++)for(let e=1;e<=i;e++){const n=(i+1)*(t-1)+(e-1),s=(i+1)*t+(e-1),r=(i+1)*t+e,o=(i+1)*(t-1)+e;m.push(n,s,o),m.push(s,r,o)}}()}(),this.setIndex(m),this.setAttribute(\\\\\\\"position\\\\\\\",new C.c(h,3)),this.setAttribute(\\\\\\\"normal\\\\\\\",new C.c(u,3)),this.setAttribute(\\\\\\\"uv\\\\\\\",new C.c(_,2))}toJSON(){const t=super.toJSON();return t.path=this.parameters.path.toJSON(),t}static fromJSON(t){return new NJ((new gJ[t.path.type]).fromJSON(t.path),t.tubularSegments,t.radius,t.radialSegments,t.closed)}}class LJ extends S.a{constructor(t=null){if(super(),this.type=\\\\\\\"WireframeGeometry\\\\\\\",this.parameters={geometry:t},null!==t){const e=[],n=new Set,i=new p.a,s=new p.a;if(null!==t.index){const r=t.attributes.position,o=t.index;let a=t.groups;0===a.length&&(a=[{start:0,count:o.count,materialIndex:0}]);for(let t=0,l=a.length;t<l;++t){const l=a[t],c=l.start;for(let t=c,a=c+l.count;t<a;t+=3)for(let a=0;a<3;a++){const l=o.getX(t+a),c=o.getX(t+(a+1)%3);i.fromBufferAttribute(r,l),s.fromBufferAttribute(r,c),!0===OJ(i,s,n)&&(e.push(i.x,i.y,i.z),e.push(s.x,s.y,s.z))}}}else{const r=t.attributes.position;for(let t=0,o=r.count/3;t<o;t++)for(let o=0;o<3;o++){const a=3*t+o,l=3*t+(o+1)%3;i.fromBufferAttribute(r,a),s.fromBufferAttribute(r,l),!0===OJ(i,s,n)&&(e.push(i.x,i.y,i.z),e.push(s.x,s.y,s.z))}}this.setAttribute(\\\\\\\"position\\\\\\\",new C.c(e,3))}}}function OJ(t,e,n){const i=`${t.x},${t.y},${t.z}-${e.x},${e.y},${e.z}`,s=`${e.x},${e.y},${e.z}-${t.x},${t.y},${t.z}`;return!0!==n.has(i)&&!0!==n.has(s)&&(n.add(i,s),!0)}class PJ extends Vf.a{constructor(t){super(t)}load(t,e,n,i){const s=this,r=\\\\\\\"\\\\\\\"===this.path?aJ.a.extractUrlBase(t):this.path;this.resourcePath=this.resourcePath||r;const o=new Gf.a(this.manager);o.setPath(this.path),o.setRequestHeader(this.requestHeader),o.setWithCredentials(this.withCredentials),o.load(t,(function(n){let r=null;try{r=JSON.parse(n)}catch(e){return void 0!==i&&i(e),void console.error(\\\\\\\"THREE:ObjectLoader: Can't parse \\\\\\\"+t+\\\\\\\".\\\\\\\",e.message)}const o=r.metadata;void 0!==o&&void 0!==o.type&&\\\\\\\"geometry\\\\\\\"!==o.type.toLowerCase()?s.parse(r,e):console.error(\\\\\\\"THREE.ObjectLoader: Can't load \\\\\\\"+t)}),n,i)}async loadAsync(t,e){const n=\\\\\\\"\\\\\\\"===this.path?aJ.a.extractUrlBase(t):this.path;this.resourcePath=this.resourcePath||n;const i=new Gf.a(this.manager);i.setPath(this.path),i.setRequestHeader(this.requestHeader),i.setWithCredentials(this.withCredentials);const s=await i.loadAsync(t,e),r=JSON.parse(s),o=r.metadata;if(void 0===o||void 0===o.type||\\\\\\\"geometry\\\\\\\"===o.type.toLowerCase())throw new Error(\\\\\\\"THREE.ObjectLoader: Can't load \\\\\\\"+t);return await this.parseAsync(r)}parse(t,e){const n=this.parseAnimations(t.animations),i=this.parseShapes(t.shapes),s=this.parseGeometries(t.geometries,i),r=this.parseImages(t.images,(function(){void 0!==e&&e(l)})),o=this.parseTextures(t.textures,r),a=this.parseMaterials(t.materials,o),l=this.parseObject(t.object,s,a,o,n),c=this.parseSkeletons(t.skeletons,l);if(this.bindSkeletons(l,c),void 0!==e){let t=!1;for(const e in r)if(r[e]instanceof HTMLImageElement){t=!0;break}!1===t&&e(l)}return l}async parseAsync(t){const e=this.parseAnimations(t.animations),n=this.parseShapes(t.shapes),i=this.parseGeometries(t.geometries,n),s=await this.parseImagesAsync(t.images),r=this.parseTextures(t.textures,s),o=this.parseMaterials(t.materials,r),a=this.parseObject(t.object,i,o,r,e),l=this.parseSkeletons(t.skeletons,a);return this.bindSkeletons(a,l),a}parseShapes(t){const e={};if(void 0!==t)for(let n=0,i=t.length;n<i;n++){const i=(new iJ.a).fromJSON(t[n]);e[i.uuid]=i}return e}parseSkeletons(t,e){const n={},i={};if(e.traverse((function(t){t.isBone&&(i[t.uuid]=t)})),void 0!==t)for(let e=0,s=t.length;e<s;e++){const s=(new nJ.a).fromJSON(t[e],i);n[s.uuid]=s}return n}parseGeometries(t,e){const n={};if(void 0!==t){const i=new cJ;for(let r=0,o=t.length;r<o;r++){let o;const a=t[r];switch(a.type){case\\\\\\\"BufferGeometry\\\\\\\":case\\\\\\\"InstancedBufferGeometry\\\\\\\":o=i.parse(a);break;case\\\\\\\"Geometry\\\\\\\":console.error(\\\\\\\"THREE.ObjectLoader: The legacy Geometry type is no longer supported.\\\\\\\");break;default:a.type in s?o=s[a.type].fromJSON(a,e):console.warn(`THREE.ObjectLoader: Unsupported geometry type \\\\\\\"${a.type}\\\\\\\"`)}o.uuid=a.uuid,void 0!==a.name&&(o.name=a.name),!0===o.isBufferGeometry&&void 0!==a.userData&&(o.userData=a.userData),n[a.uuid]=o}}return n}parseMaterials(t,e){const n={},i={};if(void 0!==t){const s=new Zf;s.setTextures(e);for(let e=0,r=t.length;e<r;e++){const r=t[e];if(\\\\\\\"MultiMaterial\\\\\\\"===r.type){const t=[];for(let e=0;e<r.materials.length;e++){const i=r.materials[e];void 0===n[i.uuid]&&(n[i.uuid]=s.parse(i)),t.push(n[i.uuid])}i[r.uuid]=t}else void 0===n[r.uuid]&&(n[r.uuid]=s.parse(r)),i[r.uuid]=n[r.uuid]}}return i}parseAnimations(t){const e={};if(void 0!==t)for(let n=0;n<t.length;n++){const i=t[n],s=Oq.a.parse(i);e[s.uuid]=s}return e}parseImages(t,e){const n=this,i={};let s;function r(t){if(\\\\\\\"string\\\\\\\"==typeof t){const e=t;return function(t){return n.manager.itemStart(t),s.load(t,(function(){n.manager.itemEnd(t)}),void 0,(function(){n.manager.itemError(t),n.manager.itemEnd(t)}))}(/^(\\\\/\\\\/)|([a-z]+:(\\\\/\\\\/)?)/i.test(e)?e:n.resourcePath+e)}return t.data?{data:Object(It.c)(t.type,t.data),width:t.width,height:t.height}:null}if(void 0!==t&&t.length>0){const n=new Xg.b(e);s=new oJ.a(n),s.setCrossOrigin(this.crossOrigin);for(let e=0,n=t.length;e<n;e++){const n=t[e],s=n.url;if(Array.isArray(s)){i[n.uuid]=[];for(let t=0,e=s.length;t<e;t++){const e=r(s[t]);null!==e&&(e instanceof HTMLImageElement?i[n.uuid].push(e):i[n.uuid].push(new vo.a(e.data,e.width,e.height)))}}else{const t=r(n.url);null!==t&&(i[n.uuid]=t)}}}return i}async parseImagesAsync(t){const e=this,n={};let i;async function s(t){if(\\\\\\\"string\\\\\\\"==typeof t){const n=t,s=/^(\\\\/\\\\/)|([a-z]+:(\\\\/\\\\/)?)/i.test(n)?n:e.resourcePath+n;return await i.loadAsync(s)}return t.data?{data:Object(It.c)(t.type,t.data),width:t.width,height:t.height}:null}if(void 0!==t&&t.length>0){i=new oJ.a(this.manager),i.setCrossOrigin(this.crossOrigin);for(let e=0,i=t.length;e<i;e++){const i=t[e],r=i.url;if(Array.isArray(r)){n[i.uuid]=[];for(let t=0,e=r.length;t<e;t++){const e=r[t],o=await s(e);null!==o&&(o instanceof HTMLImageElement?n[i.uuid].push(o):n[i.uuid].push(new vo.a(o.data,o.width,o.height)))}}else{const t=await s(i.url);null!==t&&(n[i.uuid]=t)}}}return n}parseTextures(t,e){function n(t,e){return\\\\\\\"number\\\\\\\"==typeof t?t:(console.warn(\\\\\\\"THREE.ObjectLoader.parseTexture: Constant should be in numeric form.\\\\\\\",t),e[t])}const i={};if(void 0!==t)for(let s=0,r=t.length;s<r;s++){const r=t[s];let o;void 0===r.image&&console.warn('THREE.ObjectLoader: No \\\\\\\"image\\\\\\\" specified for',r.uuid),void 0===e[r.image]&&console.warn(\\\\\\\"THREE.ObjectLoader: Undefined image\\\\\\\",r.image);const a=e[r.image];Array.isArray(a)?(o=new it(a),6===a.length&&(o.needsUpdate=!0)):(o=a&&a.data?new vo.a(a.data,a.width,a.height):new Z.a(a),a&&(o.needsUpdate=!0)),o.uuid=r.uuid,void 0!==r.name&&(o.name=r.name),void 0!==r.mapping&&(o.mapping=n(r.mapping,RJ)),void 0!==r.offset&&o.offset.fromArray(r.offset),void 0!==r.repeat&&o.repeat.fromArray(r.repeat),void 0!==r.center&&o.center.fromArray(r.center),void 0!==r.rotation&&(o.rotation=r.rotation),void 0!==r.wrap&&(o.wrapS=n(r.wrap[0],IJ),o.wrapT=n(r.wrap[1],IJ)),void 0!==r.format&&(o.format=r.format),void 0!==r.type&&(o.type=r.type),void 0!==r.encoding&&(o.encoding=r.encoding),void 0!==r.minFilter&&(o.minFilter=n(r.minFilter,FJ)),void 0!==r.magFilter&&(o.magFilter=n(r.magFilter,FJ)),void 0!==r.anisotropy&&(o.anisotropy=r.anisotropy),void 0!==r.flipY&&(o.flipY=r.flipY),void 0!==r.premultiplyAlpha&&(o.premultiplyAlpha=r.premultiplyAlpha),void 0!==r.unpackAlignment&&(o.unpackAlignment=r.unpackAlignment),i[r.uuid]=o}return i}parseObject(t,e,n,i,s){let r,o,a;function l(t){return void 0===e[t]&&console.warn(\\\\\\\"THREE.ObjectLoader: Undefined geometry\\\\\\\",t),e[t]}function c(t){if(void 0!==t){if(Array.isArray(t)){const e=[];for(let i=0,s=t.length;i<s;i++){const s=t[i];void 0===n[s]&&console.warn(\\\\\\\"THREE.ObjectLoader: Undefined material\\\\\\\",s),e.push(n[s])}return e}return void 0===n[t]&&console.warn(\\\\\\\"THREE.ObjectLoader: Undefined material\\\\\\\",t),n[t]}}function h(t){return void 0===i[t]&&console.warn(\\\\\\\"THREE.ObjectLoader: Undefined texture\\\\\\\",t),i[t]}switch(t.type){case\\\\\\\"Scene\\\\\\\":r=new vs,void 0!==t.background&&(Number.isInteger(t.background)?r.background=new D.a(t.background):r.background=h(t.background)),void 0!==t.environment&&(r.environment=h(t.environment)),void 0!==t.fog&&(\\\\\\\"Fog\\\\\\\"===t.fog.type?r.fog=new Aa(t.fog.color,t.fog.near,t.fog.far):\\\\\\\"FogExp2\\\\\\\"===t.fog.type&&(r.fog=new Ma(t.fog.color,t.fog.density)));break;case\\\\\\\"PerspectiveCamera\\\\\\\":r=new tt.a(t.fov,t.aspect,t.near,t.far),void 0!==t.focus&&(r.focus=t.focus),void 0!==t.zoom&&(r.zoom=t.zoom),void 0!==t.filmGauge&&(r.filmGauge=t.filmGauge),void 0!==t.filmOffset&&(r.filmOffset=t.filmOffset),void 0!==t.view&&(r.view=Object.assign({},t.view));break;case\\\\\\\"OrthographicCamera\\\\\\\":r=new ot.a(t.left,t.right,t.top,t.bottom,t.near,t.far),void 0!==t.zoom&&(r.zoom=t.zoom),void 0!==t.view&&(r.view=Object.assign({},t.view));break;case\\\\\\\"AmbientLight\\\\\\\":r=new rU.a(t.color,t.intensity);break;case\\\\\\\"DirectionalLight\\\\\\\":r=new FU.a(t.color,t.intensity);break;case\\\\\\\"PointLight\\\\\\\":r=new QU.a(t.color,t.intensity,t.distance,t.decay);break;case\\\\\\\"RectAreaLight\\\\\\\":r=new pU(t.color,t.intensity,t.width,t.height);break;case\\\\\\\"SpotLight\\\\\\\":r=new rG.a(t.color,t.intensity,t.distance,t.angle,t.penumbra,t.decay);break;case\\\\\\\"HemisphereLight\\\\\\\":r=new qU(t.color,t.groundColor,t.intensity);break;case\\\\\\\"LightProbe\\\\\\\":r=(new rJ).fromJSON(t);break;case\\\\\\\"SkinnedMesh\\\\\\\":o=l(t.geometry),a=c(t.material),r=new gs.a(o,a),void 0!==t.bindMode&&(r.bindMode=t.bindMode),void 0!==t.bindMatrix&&r.bindMatrix.fromArray(t.bindMatrix),void 0!==t.skeleton&&(r.skeleton=t.skeleton);break;case\\\\\\\"Mesh\\\\\\\":o=l(t.geometry),a=c(t.material),r=new B.a(o,a);break;case\\\\\\\"InstancedMesh\\\\\\\":o=l(t.geometry),a=c(t.material);const e=t.count,n=t.instanceMatrix,i=t.instanceColor;r=new k$(o,a,e),r.instanceMatrix=new I$(new Float32Array(n.array),16),void 0!==i&&(r.instanceColor=new I$(new Float32Array(i.array),i.itemSize));break;case\\\\\\\"LOD\\\\\\\":r=new Cs;break;case\\\\\\\"Line\\\\\\\":r=new CU.a(l(t.geometry),c(t.material));break;case\\\\\\\"LineLoop\\\\\\\":r=new eJ.a(l(t.geometry),c(t.material));break;case\\\\\\\"LineSegments\\\\\\\":r=new Ms.a(l(t.geometry),c(t.material));break;case\\\\\\\"PointCloud\\\\\\\":case\\\\\\\"Points\\\\\\\":r=new ys.a(l(t.geometry),c(t.material));break;case\\\\\\\"Sprite\\\\\\\":r=new Q$(c(t.material));break;case\\\\\\\"Group\\\\\\\":r=new Fn.a;break;case\\\\\\\"Bone\\\\\\\":r=new xs.a;break;default:r=new Q.a}if(r.uuid=t.uuid,void 0!==t.name&&(r.name=t.name),void 0!==t.matrix?(r.matrix.fromArray(t.matrix),void 0!==t.matrixAutoUpdate&&(r.matrixAutoUpdate=t.matrixAutoUpdate),r.matrixAutoUpdate&&r.matrix.decompose(r.position,r.quaternion,r.scale)):(void 0!==t.position&&r.position.fromArray(t.position),void 0!==t.rotation&&r.rotation.fromArray(t.rotation),void 0!==t.quaternion&&r.quaternion.fromArray(t.quaternion),void 0!==t.scale&&r.scale.fromArray(t.scale)),void 0!==t.castShadow&&(r.castShadow=t.castShadow),void 0!==t.receiveShadow&&(r.receiveShadow=t.receiveShadow),t.shadow&&(void 0!==t.shadow.bias&&(r.shadow.bias=t.shadow.bias),void 0!==t.shadow.normalBias&&(r.shadow.normalBias=t.shadow.normalBias),void 0!==t.shadow.radius&&(r.shadow.radius=t.shadow.radius),void 0!==t.shadow.mapSize&&r.shadow.mapSize.fromArray(t.shadow.mapSize),void 0!==t.shadow.camera&&(r.shadow.camera=this.parseObject(t.shadow.camera))),void 0!==t.visible&&(r.visible=t.visible),void 0!==t.frustumCulled&&(r.frustumCulled=t.frustumCulled),void 0!==t.renderOrder&&(r.renderOrder=t.renderOrder),void 0!==t.userData&&(r.userData=t.userData),void 0!==t.layers&&(r.layers.mask=t.layers),void 0!==t.children){const o=t.children;for(let t=0;t<o.length;t++)r.add(this.parseObject(o[t],e,n,i,s))}if(void 0!==t.animations){const e=t.animations;for(let t=0;t<e.length;t++){const n=e[t];r.animations.push(s[n])}}if(\\\\\\\"LOD\\\\\\\"===t.type){void 0!==t.autoUpdate&&(r.autoUpdate=t.autoUpdate);const e=t.levels;for(let t=0;t<e.length;t++){const n=e[t],i=r.getObjectByProperty(\\\\\\\"uuid\\\\\\\",n.object);void 0!==i&&r.addLevel(i,n.distance)}}return r}bindSkeletons(t,e){0!==Object.keys(e).length&&t.traverse((function(t){if(!0===t.isSkinnedMesh&&void 0!==t.skeleton){const n=e[t.skeleton];void 0===n?console.warn(\\\\\\\"THREE.ObjectLoader: No skeleton found with UUID:\\\\\\\",t.skeleton):t.bind(n,t.bindMatrix)}}))}setTexturePath(t){return console.warn(\\\\\\\"THREE.ObjectLoader: .setTexturePath() has been renamed to .setResourcePath().\\\\\\\"),this.setResourcePath(t)}}const RJ={UVMapping:w.Yc,CubeReflectionMapping:w.o,CubeRefractionMapping:w.p,EquirectangularReflectionMapping:w.D,EquirectangularRefractionMapping:w.E,CubeUVReflectionMapping:w.q,CubeUVRefractionMapping:w.r},IJ={RepeatWrapping:w.wc,ClampToEdgeWrapping:w.n,MirroredRepeatWrapping:w.kb},FJ={NearestFilter:w.ob,NearestMipmapNearestFilter:w.sb,NearestMipmapLinearFilter:w.rb,LinearFilter:w.V,LinearMipmapNearestFilter:w.Z,LinearMipmapLinearFilter:w.Y};const DJ=new class extends ua{constructor(){super(...arguments),this.cache=ha.STRING(\\\\\\\"\\\\\\\",{hidden:!0}),this.reset=ha.BUTTON(null,{callback:(t,e)=>{BJ.PARAM_CALLBACK_reset(t,e)}})}};class BJ extends uV{constructor(){super(...arguments),this.paramsConfig=DJ}static type(){return\\\\\\\"cache\\\\\\\"}static displayedInputNames(){return[\\\\\\\"geometry to cache\\\\\\\"]}initializeNode(){this.io.inputs.setCount(0,1)}cook(t){const e=\\\\\\\"\\\\\\\"==this.pv.cache||null==this.pv.cache,n=t[0];if(e&&n){const t=[];for(let e of n.objects())t.push(e.toJSON());this.setCoreGroup(n),this.p.cache.set(JSON.stringify(t))}else if(this.pv.cache){const t=new PJ,e=JSON.parse(this.pv.cache),n=[];for(let i of e){const e=t.parse(i);n.push(e)}this.setObjects(n)}else this.setObjects([])}static PARAM_CALLBACK_reset(t,e){t.param_callback_PARAM_CALLBACK_reset()}async param_callback_PARAM_CALLBACK_reset(){this.p.cache.set(\\\\\\\"\\\\\\\"),this.compute()}}const zJ={direction:new p.a(0,1,0)},kJ=[new d.a(-1,-1),new d.a(-1,1),new d.a(1,1),new d.a(1,-1)],UJ=new p.a(0,0,1);const GJ=new class extends ua{constructor(){super(...arguments),this.camera=ha.NODE_PATH(\\\\\\\"\\\\\\\",{nodeSelection:{context:ts.OBJ,types:ds}}),this.direction=ha.VECTOR3(zJ.direction),this.offset=ha.FLOAT(0,{range:[-10,10],rangeLocked:[!1,!1]}),this.useSegmentsCount=ha.BOOLEAN(!0),this.stepSize=ha.FLOAT(1,{range:[.001,1],rangeLocked:[!1,!1],visibleIf:{useSegmentsCount:0}}),this.segments=ha.VECTOR2([10,10],{visibleIf:{useSegmentsCount:1}}),this.sizeMult=ha.FLOAT(1,{range:[0,2],rangeLocked:[!0,!1]}),this.updateOnWindowResize=ha.BOOLEAN(1),this.update=ha.BUTTON(null,{callback:t=>{VJ.PARAM_CALLBACK_update(t)}})}};class VJ extends uV{constructor(){super(...arguments),this.paramsConfig=GJ,this._plane=new Y.a,this._raycaster=new eO,this._planeCorners=[new p.a,new p.a,new p.a,new p.a],this._planeCenter=new p.a,this._core_transform=new bU,this.segments_count=new d.a(1,1),this.planeSize=new d.a}static type(){return\\\\\\\"cameraPlane\\\\\\\"}cook(){this._updateWindowControllerDependency();const t=this.pv.camera.nodeWithContext(ts.OBJ);if(!t)return this.states.error.set(\\\\\\\"no camera found\\\\\\\"),void this.cookController.endCook();if(!ds.includes(t.type()))return this.states.error.set(\\\\\\\"node found is not a camera\\\\\\\"),void this.cookController.endCook();const e=t.object;this._computePlaneParams(e)}_updateWindowControllerDependency(){this.pv.updateOnWindowResize?this.addGraphInput(this.scene().windowController.graphNode()):this.removeGraphInput(this.scene().windowController.graphNode())}_computePlaneParams(t){this._plane.normal.copy(this.pv.direction),this._plane.constant=this.pv.offset;let e=0;this._planeCenter.set(0,0,0);for(let n of kJ){this._raycaster.setFromCamera(n,t);const i=this._planeCorners[e];this._raycaster.ray.intersectPlane(this._plane,i),this._planeCenter.add(i),e++}this._planeCenter.multiplyScalar(.25);const n=this._planeCorners[1].distanceTo(this._planeCorners[2]),i=this._planeCorners[0].distanceTo(this._planeCorners[3]),s=this._planeCorners[0].distanceTo(this._planeCorners[1]),r=this._planeCorners[2].distanceTo(this._planeCorners[3]),o=Math.max(n,i)*this.pv.sizeMult,a=Math.max(s,r)*this.pv.sizeMult;this.planeSize.set(o,a);const l=this._createPlane(this.planeSize);this._core_transform.rotateGeometry(l,UJ,this.pv.direction);const c=this._core_transform.translationMatrix(this._planeCenter);l.applyMatrix4(c),this.setGeometry(l)}_createPlane(t){return t=t.clone(),this.pv.useSegmentsCount?(this.segments_count.x=Math.floor(this.pv.segments.x),this.segments_count.y=Math.floor(this.pv.segments.y)):this.pv.stepSize>0&&(this.segments_count.x=Math.floor(t.x/this.pv.stepSize),this.segments_count.y=Math.floor(t.y/this.pv.stepSize),t.x=this.segments_count.x*this.pv.stepSize,t.y=this.segments_count.y*this.pv.stepSize),new L(t.x,t.y,this.segments_count.x,this.segments_count.y)}static PARAM_CALLBACK_update(t){t._paramCallbackUpdate()}_paramCallbackUpdate(){this.setDirty()}}class HJ extends aV{constructor(){super(...arguments),this._pointPosition=new p.a}static type(){return\\\\\\\"cameraProject\\\\\\\"}cook(t,e){var n,i;const s=t[0],r=e.camera.nodeWithContext(ts.OBJ,null===(n=this.states)||void 0===n?void 0:n.error);if(r){const t=r.object;for(let n of s.points())n.getPosition(this._pointPosition),e.unproject?this._pointPosition.unproject(t):this._pointPosition.project(t),n.setPosition(this._pointPosition)}else null===(i=this.states)||void 0===i||i.error.set(\\\\\\\"cameraNode invalid.\\\\\\\");return s}}HJ.DEFAULT_PARAMS={camera:new yi(\\\\\\\"\\\\\\\"),unproject:!1},HJ.INPUT_CLONED_STATE=Qi.FROM_NODE;const jJ=HJ.DEFAULT_PARAMS;const WJ=new class extends ua{constructor(){super(...arguments),this.camera=ha.NODE_PATH(jJ.camera.path(),{nodeSelection:{context:ts.OBJ,types:ds}}),this.unproject=ha.BOOLEAN(jJ.unproject)}};class qJ extends uV{constructor(){super(...arguments),this.paramsConfig=WJ}static type(){return\\\\\\\"cameraProject\\\\\\\"}static displayedInputNames(){return[\\\\\\\"points to project/unproject\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(HJ.INPUT_CLONED_STATE)}cook(t){this._operation=this._operation||new HJ(this._scene,this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}class XJ extends aV{constructor(){super(...arguments),this._geo_center=new p.a}static type(){return\\\\\\\"center\\\\\\\"}cook(t,e){var n;const i=t[0].objectsWithGeo(),s=new Array(3*i.length);s.fill(0);for(let t=0;t<i.length;t++){const e=i[t],r=e.geometry;r.computeBoundingBox(),r.boundingBox&&(null===(n=r.boundingBox)||void 0===n||n.getCenter(this._geo_center),e.updateMatrixWorld(),this._geo_center.applyMatrix4(e.matrixWorld),this._geo_center.toArray(s,3*t))}const r=new S.a;r.setAttribute(\\\\\\\"position\\\\\\\",new C.a(new Float32Array(s),3));const o=this.createObject(r,Ns.POINTS);return this.createCoreGroupFromObjects([o])}}XJ.DEFAULT_PARAMS={},XJ.INPUT_CLONED_STATE=Qi.FROM_NODE;const YJ=new class extends ua{};class $J extends uV{constructor(){super(...arguments),this.paramsConfig=YJ}static type(){return\\\\\\\"center\\\\\\\"}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(XJ.INPUT_CLONED_STATE)}cook(t){this._operation=this._operation||new XJ(this.scene(),this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}class JJ{static positions(t,e,n=360){const i=or.degrees_to_radians(n)/e,s=[];for(let n=0;n<e;n++){const e=i*n,r=t*Math.cos(e),o=t*Math.sin(e);s.push(new d.a(r,o))}return s}static create(t,e,n=360){const i=this.positions(t,e,n),s=[],r=[];let o;for(let t=0;t<i.length;t++)o=i[t],s.push(o.x),s.push(o.y),s.push(0),t>0&&(r.push(t-1),r.push(t));r.push(e-1),r.push(0);const a=new S.a;return a.setAttribute(\\\\\\\"position\\\\\\\",new C.c(s,3)),a.setIndex(r),a}}const ZJ=new p.a(0,0,1);class KJ extends aV{constructor(){super(...arguments),this._core_transform=new bU}static type(){return\\\\\\\"circle\\\\\\\"}cook(t,e){return e.open?this._create_circle(e):this._create_disk(e)}_create_circle(t){const e=JJ.create(t.radius,t.segments,t.arcAngle);return this._core_transform.rotateGeometry(e,ZJ,t.direction),this.createCoreGroupFromGeometry(e,Ns.LINE_SEGMENTS)}_create_disk(t){const e=new hJ(t.radius,t.segments);return this._core_transform.rotateGeometry(e,ZJ,t.direction),this.createCoreGroupFromGeometry(e)}}KJ.DEFAULT_PARAMS={radius:1,segments:12,open:!0,arcAngle:360,direction:new p.a(0,1,0)};const QJ=KJ.DEFAULT_PARAMS;const tZ=new class extends ua{constructor(){super(...arguments),this.radius=ha.FLOAT(QJ.radius),this.segments=ha.INTEGER(QJ.segments,{range:[1,50],rangeLocked:[!0,!1]}),this.open=ha.BOOLEAN(QJ.open),this.arcAngle=ha.FLOAT(QJ.arcAngle,{range:[0,360],rangeLocked:[!1,!1],visibleIf:{open:1}}),this.direction=ha.VECTOR3(QJ.direction)}};class eZ extends uV{constructor(){super(...arguments),this.paramsConfig=tZ}static type(){return\\\\\\\"circle\\\\\\\"}initializeNode(){}cook(){this._operation=this._operation||new KJ(this._scene,this.states);const t=this._operation.cook([],this.pv);this.setCoreGroup(t)}}var nZ;!function(t){t.SEGMENTS_COUNT=\\\\\\\"segments count\\\\\\\",t.SEGMENTS_LENGTH=\\\\\\\"segments length\\\\\\\"}(nZ||(nZ={}));const iZ=[nZ.SEGMENTS_COUNT,nZ.SEGMENTS_LENGTH];var sZ;!function(t){t.ABC=\\\\\\\"abc\\\\\\\",t.ACB=\\\\\\\"acb\\\\\\\",t.AB=\\\\\\\"ab\\\\\\\",t.BC=\\\\\\\"bc\\\\\\\",t.AC=\\\\\\\"ac\\\\\\\"}(sZ||(sZ={}));const rZ=[sZ.ABC,sZ.ACB,sZ.AB,sZ.AC,sZ.BC];class oZ{constructor(t){this.params=t,this.a=new p.a,this.b=new p.a,this.c=new p.a,this.an=new p.a,this.bn=new p.a,this.cn=new p.a,this.ac=new p.a,this.ab=new p.a,this.ab_x_ac=new p.a,this.part0=new p.a,this.part1=new p.a,this.divider=1,this.a_center=new p.a,this.center=new p.a,this.normal=new p.a,this.radius=1,this.x=new p.a,this.y=new p.a,this.z=new p.a,this.angle_ab=1,this.angle_ac=1,this.angle_bc=1,this.angle=2*Math.PI,this.x_rotated=new p.a,this._created_geometries={}}created_geometries(){return this._created_geometries}create(t,e,n){this.a.copy(t),this.b.copy(e),this.c.copy(n),this._compute_axis(),this._create_arc(),this._create_center()}_create_arc(){this._compute_angle();const t=this._points_count(),e=new Array(3*t),n=new Array(t),i=this.angle/(t-1);this.x_rotated.copy(this.x).multiplyScalar(this.radius);let s=0;for(s=0;s<t;s++)this.x_rotated.copy(this.x).applyAxisAngle(this.normal,i*s).multiplyScalar(this.radius).add(this.center),this.x_rotated.toArray(e,3*s),s>0&&(n[2*(s-1)]=s-1,n[2*(s-1)+1]=s);this.params.full&&(n.push(s-1),n.push(0));const r=new S.a;if(r.setAttribute(\\\\\\\"position\\\\\\\",new C.a(new Float32Array(e),3)),r.setIndex(n),this.params.addIdAttribute||this.params.addIdnAttribute){const e=new Array(t);for(let t=0;t<e.length;t++)e[t]=t;this.params.addIdAttribute&&r.setAttribute(\\\\\\\"id\\\\\\\",new C.a(new Float32Array(e),1));const n=e.map((e=>e/(t-1)));this.params.addIdnAttribute&&r.setAttribute(\\\\\\\"idn\\\\\\\",new C.a(new Float32Array(n),1))}this._created_geometries.arc=r}_create_center(){if(!this.params.center)return;const t=new S.a,e=[this.center.x,this.center.y,this.center.z];t.setAttribute(\\\\\\\"position\\\\\\\",new C.a(new Float32Array(e),3)),this._created_geometries.center=t}_compute_axis(){this.ac.copy(this.c).sub(this.a),this.ab.copy(this.b).sub(this.a),this.ab_x_ac.copy(this.ab).cross(this.ac),this.divider=2*this.ab_x_ac.lengthSq(),this.part0.copy(this.ab_x_ac).cross(this.ab).multiplyScalar(this.ac.lengthSq()),this.part1.copy(this.ac).cross(this.ab_x_ac).multiplyScalar(this.ab.lengthSq()),this.a_center.copy(this.part0).add(this.part1).divideScalar(this.divider),this.radius=this.a_center.length(),this.normal.copy(this.ab_x_ac).normalize(),this.center.copy(this.a).add(this.a_center)}_compute_angle(){this.params.arc&&(this.params.full?(this.x.copy(this.a).sub(this.center).normalize(),this.angle=2*Math.PI):(this.an.copy(this.a).sub(this.center).normalize(),this.bn.copy(this.b).sub(this.center).normalize(),this.cn.copy(this.c).sub(this.center).normalize(),this._set_x_from_joinMode(),this.y.copy(this.normal),this.z.copy(this.x).cross(this.y).normalize(),this.angle_ab=this.an.angleTo(this.bn),this.angle_ac=this.an.angleTo(this.cn),this.angle_bc=this.bn.angleTo(this.cn),this._set_angle_from_joinMode()))}_points_count(){const t=this.params.pointsCountMode;switch(t){case nZ.SEGMENTS_COUNT:return this.params.segmentsCount+1;case nZ.SEGMENTS_LENGTH:{let t=Math.PI*this.radius*this.radius;return this.params.full||(t*=Math.abs(this.angle)/(2*Math.PI)),Math.ceil(t/this.params.segmentsLength)}}os.unreachable(t)}_set_x_from_joinMode(){const t=this.params.joinMode;switch(this.x.copy(this.a).sub(this.center).normalize(),t){case sZ.ABC:case sZ.ACB:case sZ.AB:case sZ.AC:return this.x.copy(this.an);case sZ.BC:return this.x.copy(this.bn)}os.unreachable(t)}_set_angle_from_joinMode(){const t=this.params.joinMode;switch(t){case sZ.ABC:return void(this.angle=this.angle_ab+this.angle_bc);case sZ.ACB:return this.angle=this.angle_ac+this.angle_bc,void(this.angle*=-1);case sZ.AB:return void(this.angle=this.angle_ab);case sZ.AC:return this.angle=this.angle_ac,void(this.angle*=-1);case sZ.BC:return void(this.angle=this.angle_bc)}os.unreachable(t)}}const aZ=new class extends ua{constructor(){super(...arguments),this.arc=ha.BOOLEAN(1),this.pointsCountMode=ha.INTEGER(iZ.indexOf(nZ.SEGMENTS_COUNT),{visibleIf:{arc:1},menu:{entries:iZ.map(((t,e)=>({value:e,name:t})))}}),this.segmentsLength=ha.FLOAT(.1,{visibleIf:{arc:1,pointsCountMode:iZ.indexOf(nZ.SEGMENTS_LENGTH)},range:[0,1],rangeLocked:[!0,!1]}),this.segmentsCount=ha.INTEGER(100,{visibleIf:{arc:1,pointsCountMode:iZ.indexOf(nZ.SEGMENTS_COUNT)},range:[1,100],rangeLocked:[!0,!1]}),this.full=ha.BOOLEAN(1,{visibleIf:{arc:1}}),this.joinMode=ha.INTEGER(rZ.indexOf(sZ.ABC),{visibleIf:{arc:1,full:0},menu:{entries:rZ.map(((t,e)=>({value:e,name:t})))}}),this.addIdAttribute=ha.BOOLEAN(1),this.addIdnAttribute=ha.BOOLEAN(1),this.center=ha.BOOLEAN(0)}};class lZ extends uV{constructor(){super(...arguments),this.paramsConfig=aZ,this.a=new p.a,this.b=new p.a,this.c=new p.a}static type(){return\\\\\\\"circle3Points\\\\\\\"}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState([Qi.NEVER])}cook(t){const e=t[0].points();e.length<3?this.states.error.set(`only ${e.length} points found, when 3 are required`):this._create_circle(e)}_create_circle(t){const e=new oZ({arc:this.pv.arc,center:this.pv.center,pointsCountMode:iZ[this.pv.pointsCountMode],segmentsLength:this.pv.segmentsLength,segmentsCount:this.pv.segmentsCount,full:this.pv.full,joinMode:rZ[this.pv.joinMode],addIdAttribute:this.pv.addIdAttribute,addIdnAttribute:this.pv.addIdnAttribute});t[0].getPosition(this.a),t[1].getPosition(this.b),t[2].getPosition(this.c),e.create(this.a,this.b,this.c);const n=[],i=e.created_geometries();i.arc&&n.push(this.createObject(i.arc,Ns.LINE_SEGMENTS)),i.center&&n.push(this.createObject(i.center,Ns.POINTS)),this.setObjects(n)}}const cZ=new p.a,hZ=new Dy;class uZ extends aV{constructor(){super(...arguments),this._plane=new Y.a}static type(){return\\\\\\\"clip\\\\\\\"}cook(t,e){const n=t[0].objectsWithGeo()[0];this._plane.set(e.direction,-e.distance),this._plane.translate(e.origin);const i=this._createClipGeo(n);return i?this.createCoreGroupFromObjects([i]):this.createCoreGroupFromObjects([])}_createClipGeo(t){var e;const n=t;if(!n.geometry.boundsTree)return void(null===(e=this.states)||void 0===e||e.error.set(\\\\\\\"no BVH found on input geo, make sure to use a BVH SOP node\\\\\\\"));const i=n.geometry.boundsTree,s=t=>{let e=0;return i.shapecast({intersectsBounds:t=>this._plane.intersectsBox(t),intersectsTriangle:n=>{let i=0;hZ.start.copy(n.a),hZ.end.copy(n.b),this._plane.intersectLine(hZ,cZ)&&(null==t||t.setXYZ(e,cZ.x,cZ.y,cZ.z),e++,i++),hZ.start.copy(n.b),hZ.end.copy(n.c),this._plane.intersectLine(hZ,cZ)&&(null==t||t.setXYZ(e,cZ.x,cZ.y,cZ.z),i++,e++),hZ.start.copy(n.c),hZ.end.copy(n.a),this._plane.intersectLine(hZ,cZ)&&(null==t||t.setXYZ(e,cZ.x,cZ.y,cZ.z),i++,e++),2!==i&&(e-=i)}}),{index:e}},{index:r}=s(),o=new S.a,a=new C.a(new Float32Array(3*r),3,!1);o.setAttribute(\\\\\\\"position\\\\\\\",a);const l=new Ms.a(o,js.MATERIALS[Ns.LINE_SEGMENTS]);l.frustumCulled=!1;return s(l.geometry.attributes.position),l}}uZ.DEFAULT_PARAMS={origin:new p.a(0,0,0),distance:0,direction:new p.a(0,1,0)},uZ.INPUT_CLONED_STATE=Qi.NEVER;const dZ=uZ.DEFAULT_PARAMS;const pZ=new class extends ua{constructor(){super(...arguments),this.origin=ha.VECTOR3(dZ.origin),this.distance=ha.FLOAT(dZ.distance,{range:[-10,10],rangeLocked:[!1,!1]}),this.direction=ha.VECTOR3(dZ.direction)}};class _Z extends uV{constructor(){super(...arguments),this.paramsConfig=pZ}static type(){return\\\\\\\"clip\\\\\\\"}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(uZ.INPUT_CLONED_STATE)}cook(t){this._operation=this._operation||new uZ(this._scene,this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}class mZ extends aV{static type(){return\\\\\\\"color\\\\\\\"}cook(t,e){}}mZ.DEFAULT_PARAMS={fromAttribute:!1,attribName:\\\\\\\"\\\\\\\",color:new D.a(1,1,1),asHsv:!1};const fZ=new D.a(1,1,1),gZ=\\\\\\\"color\\\\\\\",vZ=mZ.DEFAULT_PARAMS;const yZ=new class extends ua{constructor(){super(...arguments),this.fromAttribute=ha.BOOLEAN(vZ.fromAttribute),this.attribName=ha.STRING(vZ.attribName,{visibleIf:{fromAttribute:1}}),this.color=ha.COLOR(vZ.color,{visibleIf:{fromAttribute:0},expression:{forEntities:!0}}),this.asHsv=ha.BOOLEAN(vZ.asHsv,{visibleIf:{fromAttribute:0}})}};class xZ extends uV{constructor(){super(...arguments),this.paramsConfig=yZ,this._r_arrays_by_geometry_uuid={},this._g_arrays_by_geometry_uuid={},this._b_arrays_by_geometry_uuid={}}static type(){return\\\\\\\"color\\\\\\\"}static displayedInputNames(){return[\\\\\\\"geometry to update color of\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(Qi.FROM_NODE)}async cook(t){const e=t[0],n=e.coreObjects();for(let t of n)if(this.pv.fromAttribute)this._set_fromAttribute(t);else{this.p.color.hasExpression()?await this._eval_expressions(t):this._eval_simple_values(t)}if(!this.io.inputs.cloneRequired(0)){const t=e.geometries();for(let e of t)e.getAttribute(gZ).needsUpdate=!0}this.setCoreGroup(e)}_set_fromAttribute(t){const e=t.coreGeometry();if(!e)return;this._create_init_color(e,fZ);const n=e.points(),i=e.attribSize(this.pv.attribName),s=e.geometry(),r=s.getAttribute(this.pv.attribName).array,o=s.getAttribute(gZ).array;switch(i){case 1:for(let t=0;t<n.length;t++){const e=3*t;o[e+0]=r[t],o[e+1]=1-r[t],o[e+2]=0}break;case 2:for(let t=0;t<n.length;t++){const e=3*t,n=2*t;o[e+0]=r[n+0],o[e+1]=r[n+1],o[e+2]=0}break;case 3:for(let t=0;t<r.length;t++)o[t]=r[t];break;case 4:for(let t=0;t<n.length;t++){const e=3*t,n=4*t;o[e+0]=r[n+0],o[e+1]=r[n+1],o[e+2]=r[n+2]}}}_create_init_color(t,e){t.hasAttrib(gZ)||t.addNumericAttrib(gZ,3,fZ)}_eval_simple_values(t){const e=t.coreGeometry();if(!e)return;let n;this._create_init_color(e,fZ),this.pv.asHsv?(n=new D.a,co.set_hsv(this.pv.color.r,this.pv.color.g,this.pv.color.b,n)):n=this.pv.color,e.addNumericAttrib(gZ,3,n)}async _eval_expressions(t){const e=t.points(),n=t.object(),i=t.coreGeometry();i&&this._create_init_color(i,fZ);const s=n.geometry;if(s){const t=s.getAttribute(gZ).array,n=await this._update_from_param(s,t,e,0),i=await this._update_from_param(s,t,e,1),r=await this._update_from_param(s,t,e,2);if(n&&this._commit_tmp_values(n,t,0),i&&this._commit_tmp_values(i,t,1),r&&this._commit_tmp_values(r,t,2),this.pv.asHsv){let n,i=new D.a,s=new D.a;for(let r of e)n=3*r.index(),i.fromArray(t,n),co.set_hsv(i.r,i.g,i.b,s),s.toArray(t,n)}}}async _update_from_param(t,e,n,i){const s=this.p.color.components[i],r=[this.pv.color.r,this.pv.color.g,this.pv.color.b][i],o=[this._r_arrays_by_geometry_uuid,this._g_arrays_by_geometry_uuid,this._b_arrays_by_geometry_uuid][i];let a;if(s.hasExpression()&&s.expressionController)a=this._init_array_if_required(t,o,n.length),await s.expressionController.computeExpressionForPoints(n,((t,e)=>{a[t.index()]=e}));else for(let t of n)e[3*t.index()+i]=r;return a}_init_array_if_required(t,e,n){const i=t.uuid,s=e[i];return s?s.length<n&&(e[i]=new Array(n)):e[i]=new Array(n),e[i]}_commit_tmp_values(t,e,n){for(let i=0;i<t.length;i++)e[3*i+n]=t[i]}}const bZ=new p.a(0,1,0);const wZ=new class extends ua{constructor(){super(...arguments),this.radius=ha.FLOAT(1,{range:[0,1]}),this.height=ha.FLOAT(1,{range:[0,1]}),this.segmentsRadial=ha.INTEGER(12,{range:[3,20],rangeLocked:[!0,!1]}),this.segmentsHeight=ha.INTEGER(1,{range:[1,20],rangeLocked:[!0,!1]}),this.cap=ha.BOOLEAN(1),this.thetaStart=ha.FLOAT(1,{range:[0,2*Math.PI]}),this.thetaLength=ha.FLOAT(\\\\\\\"2*$PI\\\\\\\",{range:[0,2*Math.PI]}),this.center=ha.VECTOR3([0,0,0]),this.direction=ha.VECTOR3([0,0,1])}};class TZ extends uV{constructor(){super(...arguments),this.paramsConfig=wZ,this._core_transform=new bU}static type(){return\\\\\\\"cone\\\\\\\"}cook(){const t=new lG(this.pv.radius,this.pv.height,this.pv.segmentsRadial,this.pv.segmentsHeight,!this.pv.cap,this.pv.thetaStart,this.pv.thetaLength);this._core_transform.rotateGeometry(t,bZ,this.pv.direction),t.translate(this.pv.center.x,this.pv.center.y,this.pv.center.z),this.setGeometry(t)}}const AZ={SCALE:new p.a(1,1,1),PSCALE:1,EYE:new p.a(0,0,0),UP:new p.a(0,1,0)},MZ=new p.a(1,1,1),EZ=new d.a(0,0),SZ=\\\\\\\"color\\\\\\\";var CZ;!function(t){t.POSITION=\\\\\\\"instancePosition\\\\\\\",t.SCALE=\\\\\\\"instanceScale\\\\\\\",t.ORIENTATION=\\\\\\\"instanceOrientation\\\\\\\",t.COLOR=\\\\\\\"instanceColor\\\\\\\",t.UV=\\\\\\\"instanceUv\\\\\\\"}(CZ||(CZ={}));const NZ={P:CZ.POSITION,N:CZ.ORIENTATION,up:CZ.ORIENTATION,Cd:CZ.COLOR,[Ws.COLOR]:CZ.COLOR,[Ws.NORMAL]:CZ.ORIENTATION,[Ws.POSITION]:CZ.POSITION,[Ws.PSCALE]:CZ.SCALE,[Ws.SCALE]:CZ.SCALE};class LZ{constructor(t){this._coreGroup=t,this._is_pscale_present=!1,this._is_scale_present=!1,this._is_normal_present=!1,this._is_up_present=!1,this._do_rotate_matrices=!1,this._matrixT=new A.a,this._matrixR=new A.a,this._matrixS=new A.a,this._pointScale=new p.a,this._pointNormal=new p.a,this._pointUp=new p.a,t&&this.setCoreGroup(t)}static remapName(t){return NZ[t]||t}setCoreGroup(t){this._coreGroup=t,this._is_pscale_present=this._coreGroup.hasAttrib(Ws.PSCALE),this._is_scale_present=this._coreGroup.hasAttrib(Ws.SCALE),this._is_normal_present=this._coreGroup.hasAttrib(Ws.NORMAL),this._is_up_present=this._coreGroup.hasAttrib(Ws.UP),this._do_rotate_matrices=this._is_normal_present}matrixFromPoint(t,e){e.identity();const n=t.position();this._is_scale_present?t.attribValue(\\\\\\\"scale\\\\\\\",this._pointScale):this._pointScale.copy(AZ.SCALE);const i=this._is_pscale_present?t.attribValue(\\\\\\\"pscale\\\\\\\"):AZ.PSCALE;this._pointScale.multiplyScalar(i);const s=this._matrixS;s.makeScale(this._pointScale.x,this._pointScale.y,this._pointScale.z);const r=this._matrixT;if(r.makeTranslation(n.x,n.y,n.z),e.multiply(r),this._do_rotate_matrices){const n=this._matrixR,i=AZ.EYE;t.attribValue(\\\\\\\"normal\\\\\\\",this._pointNormal),this._pointNormal.multiplyScalar(-1),this._is_up_present?t.attribValue(\\\\\\\"up\\\\\\\",this._pointUp):this._pointUp.copy(AZ.UP),this._pointUp.normalize(),n.lookAt(i,this._pointNormal,this._pointUp),e.multiply(n)}e.multiply(s)}static updateTransformInstanceAttributes(t,e,n){const i=t.length,s=new Float32Array(3*i),r=new Float32Array(3*i),o=new Float32Array(4*i),a=new LZ(e);let l=0;for(let e of t){a.matrixFromPoint(e,this._tmpMatrix);const t=3*l,n=4*l;this._tmpMatrix.decompose(this._position,this._quaternion,this._scale),this._position.toArray(s,t),this._quaternion.toArray(o,n),this._scale.toArray(r,t),l++}n.setAttribute(CZ.POSITION,new I$(s,3)),n.setAttribute(CZ.SCALE,new I$(r,3)),n.setAttribute(CZ.ORIENTATION,new I$(o,4))}static updateColorInstanceAttribute(t,e,n){const i=t.length,s=new Float32Array(3*i),r=e.hasAttrib(SZ);let o=0;for(let e of t){(r?e.attribValue(SZ,this._point_color):MZ).toArray(s,3*o),o++}n.setAttribute(CZ.COLOR,new I$(s,3))}static createInstanceBufferGeometry(t,e,n){const i=e.points(),s=new lJ;s.copy(t),s.instanceCount=1/0;const r=i.length,o=e.hasAttrib(\\\\\\\"uv\\\\\\\");if(o){const t=new Float32Array(2*r);let e=0;for(let n of i){const i=2*e;(o?n.attribValue(\\\\\\\"uv\\\\\\\",this._point_uv):EZ).toArray(t,i),e++}s.setAttribute(CZ.UV,new I$(t,2))}this.updateTransformInstanceAttributes(i,e,s),this.updateColorInstanceAttribute(i,e,s);e.attribNamesMatchingMask(n).forEach((t=>{const n=e.attribSize(t),o=new Float32Array(r*n);i.forEach(((e,i)=>{const s=e.attribValue(t);m.isNumber(s)?o[i]=s:s.toArray(o,i*n)})),s.setAttribute(t,new I$(o,n))}));return new fr(s).markAsInstance(),s}}LZ.transformAttributeNames=[CZ.POSITION,CZ.ORIENTATION,CZ.SCALE],LZ._point_color=new p.a,LZ._point_uv=new d.a,LZ._position=new p.a(0,0,0),LZ._quaternion=new hh.a,LZ._scale=new p.a(1,1,1),LZ._tmpMatrix=new A.a;class OZ extends ah{set_point(t){this._point=t,this.setDirty(),this.removeDirtyState()}value(t){return this._point?t?this._point.attribValue(t):this._point.index():this._global_index}}var PZ;!function(t){t[t.OBJECT=0]=\\\\\\\"OBJECT\\\\\\\",t[t.GEOMETRY=1]=\\\\\\\"GEOMETRY\\\\\\\"}(PZ||(PZ={}));const RZ=[PZ.OBJECT,PZ.GEOMETRY],IZ=[{name:\\\\\\\"object\\\\\\\",value:PZ.OBJECT},{name:\\\\\\\"geometry\\\\\\\",value:PZ.GEOMETRY}];const FZ=new class extends ua{constructor(){super(...arguments),this.count=ha.INTEGER(1,{range:[1,20],rangeLocked:[!0,!1]}),this.transformOnly=ha.BOOLEAN(0),this.transformMode=ha.INTEGER(0,{menu:{entries:IZ}}),this.copyAttributes=ha.BOOLEAN(0),this.attributesToCopy=ha.STRING(\\\\\\\"\\\\\\\",{visibleIf:{copyAttributes:!0}}),this.useCopyExpr=ha.BOOLEAN(0)}};class DZ extends uV{constructor(){super(...arguments),this.paramsConfig=FZ,this._attribute_names_to_copy=[],this._objects=[],this._instancer=new LZ,this._instanceMatrix=new A.a,this._object_position=new p.a}static type(){return\\\\\\\"copy\\\\\\\"}static displayedInputNames(){return[\\\\\\\"geometry to be copied\\\\\\\",\\\\\\\"points to copy to\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1,2),this.io.inputs.initInputsClonedState([Qi.ALWAYS,Qi.NEVER])}async cook(t){const e=t[0];if(!this.io.inputs.has_input(1))return void await this.cook_without_template(e);const n=t[1];n?await this.cook_with_template(e,n):this.states.error.set(\\\\\\\"second input invalid\\\\\\\")}async cook_with_template(t,e){this._objects=[];const n=e.points();this._instancer.setCoreGroup(e),this._attribute_names_to_copy=ss.attribNames(this.pv.attributesToCopy).filter((t=>e.hasAttrib(t))),await this._copy_moved_objects_on_template_points(t,n),this.setObjects(this._objects)}async _copy_moved_objects_on_template_points(t,e){for(let n=0;n<e.length;n++)await this._copy_moved_object_on_template_point(t,e,n)}async _copy_moved_object_on_template_point(t,e,n){this._instancer.matrixFromPoint(e[n],this._instanceMatrix);const i=e[n];this.stamp_node.set_point(i);const s=await this._get_moved_objects_for_template_point(t,n);for(let t of s)this.pv.copyAttributes&&this._copyAttributes_from_template(t,i),this.pv.transformOnly?t.applyMatrix4(this._instanceMatrix):this._apply_matrix_to_object_or_geometry(t,this._instanceMatrix),this._objects.push(t)}_apply_matrix_to_object_or_geometry(t,e){const n=RZ[this.pv.transformMode];switch(n){case PZ.OBJECT:return void this._apply_matrix_to_object(t,e);case PZ.GEOMETRY:{const n=t.geometry;return void(n&&n.applyMatrix4(e))}}os.unreachable(n)}_apply_matrix_to_object(t,e){this._object_position.copy(t.position),t.position.multiplyScalar(0),t.updateMatrix(),t.applyMatrix4(e),t.position.add(this._object_position),t.updateMatrix()}async _get_moved_objects_for_template_point(t,e){const n=await this._stamp_instance_group_if_required(t);if(n){return this.pv.transformOnly?f.compact([n.objects()[e]]):n.clone().objects()}return[]}async _stamp_instance_group_if_required(t){if(!this.pv.useCopyExpr)return t;{const t=await this.containerController.requestInputContainer(0);if(t){const e=t.coreContent();return e||void 0}this.states.error.set(`input failed for index ${this.stamp_value()}`)}}async _copy_moved_objects_for_each_instance(t){for(let e=0;e<this.pv.count;e++)await this._copy_moved_objects_for_instance(t,e)}async _copy_moved_objects_for_instance(t,e){this.stamp_node.set_global_index(e);const n=await this._stamp_instance_group_if_required(t);n&&n.objects().forEach((t=>{const e=br.clone(t);this._objects.push(e)}))}async cook_without_template(t){this._objects=[],await this._copy_moved_objects_for_each_instance(t),this.setObjects(this._objects)}_copyAttributes_from_template(t,e){this._attribute_names_to_copy.forEach(((n,i)=>{const s=e.attribValue(n);new br(t,i).addAttribute(n,s)}))}stamp_value(t){return this.stamp_node.value(t)}get stamp_node(){return this._stamp_node=this._stamp_node||this.create_stamp_node()}create_stamp_node(){const t=new OZ(this.scene());return this.dirtyController.setForbiddenTriggerNodes([t]),t}dispose(){super.dispose(),this._stamp_node&&this._stamp_node.dispose()}}const BZ=\\\\\\\"id\\\\\\\",zZ=\\\\\\\"class\\\\\\\",kZ=\\\\\\\"html\\\\\\\";class UZ extends aV{static type(){return\\\\\\\"CSS2DObject\\\\\\\"}cook(t,e){const n=t[0];if(n){const t=this._create_objects_from_input_points(n,e);return this.createCoreGroupFromObjects(t)}{const t=this._create_object_from_scratch(e);return this.createCoreGroupFromObjects([t])}}_create_objects_from_input_points(t,e){const n=t.points(),i=[];for(let t of n){const n=e.useIdAttrib?t.attribValue(BZ):e.id,s=e.useClassAttrib?t.attribValue(zZ):e.className,r=e.useHTMLAttrib?t.attribValue(kZ):e.html,o=UZ.create_css_object({id:n,className:s,html:r}),a=o.element;if(e.copyAttributes){const n=ss.attribNames(e.attributesToCopy);for(let e of n){const n=t.attribValue(e);m.isString(n)?a.setAttribute(e,n):m.isNumber(n)&&a.setAttribute(e,`${n}`)}}o.position.copy(t.position()),o.updateMatrix(),i.push(o)}return i}_create_object_from_scratch(t){return UZ.create_css_object({id:t.id,className:t.className,html:t.html})}static create_css_object(t){const e=document.createElement(\\\\\\\"div\\\\\\\");e.id=t.id,e.className=t.className,e.innerHTML=t.html;const n=new dq(e);return n.matrixAutoUpdate=!1,n}}UZ.DEFAULT_PARAMS={useIdAttrib:!1,id:\\\\\\\"myCSSObject\\\\\\\",useClassAttrib:!1,className:\\\\\\\"CSS2DObject\\\\\\\",useHTMLAttrib:!1,html:\\\\\\\"<div>default html</div>\\\\\\\",copyAttributes:!1,attributesToCopy:\\\\\\\"\\\\\\\"},UZ.INPUT_CLONED_STATE=Qi.NEVER;const GZ=UZ.DEFAULT_PARAMS;const VZ=new class extends ua{constructor(){super(...arguments),this.useIdAttrib=ha.BOOLEAN(GZ.useIdAttrib),this.id=ha.STRING(GZ.id,{visibleIf:{useIdAttrib:0}}),this.useClassAttrib=ha.BOOLEAN(GZ.useClassAttrib),this.className=ha.STRING(GZ.className,{visibleIf:{useClassAttrib:0}}),this.useHTMLAttrib=ha.BOOLEAN(GZ.useHTMLAttrib),this.html=ha.STRING(GZ.html,{visibleIf:{useHTMLAttrib:0},multiline:!0}),this.copyAttributes=ha.BOOLEAN(GZ.copyAttributes),this.attributesToCopy=ha.STRING(GZ.attributesToCopy,{visibleIf:{copyAttributes:!0}})}};class HZ extends uV{constructor(){super(...arguments),this.paramsConfig=VZ}static type(){return\\\\\\\"CSS2DObject\\\\\\\"}initializeNode(){this.io.inputs.setCount(0,1),this.io.inputs.initInputsClonedState(UZ.INPUT_CLONED_STATE)}cook(t){this._operation=this._operation||new UZ(this.scene(),this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}class jZ{constructor(t,e){this._size=t,this._type=e}size(){return this._size}type(){return this._type}static from_value(t){const e=m.isString(t)?zs.STRING:zs.NUMERIC;return new this(m.isArray(t)?t.length:1,e)}}class WZ{constructor(t={}){this._attribute_datas_by_name={},this._options={},this._options.dataKeysPrefix=t.dataKeysPrefix,this._options.skipEntries=t.skipEntries,this._options.doConvert=t.doConvert||!1,this._options.convertToNumeric=t.convertToNumeric}dataKeysPrefix(){return this._options.dataKeysPrefix}get_prefixed_json(t,e){if(0==e.length)return t;{const n=e.shift();if(n)return this.get_prefixed_json(t[n],e)}return[]}setJSON(t){return this._json=t}createObject(){const t=new S.a,e=new fr(t);if(null!=this._json){const n=this._json.length;e.initPositionAttribute(n),this._find_attributes();const i=ss.attribNames(this._options.convertToNumeric||\\\\\\\"\\\\\\\");for(let n of Object.keys(this._attribute_datas_by_name)){const s=Xs.remapName(n);let r=this._attribute_values_for_name(n).flat();const o=this._attribute_datas_by_name[n],a=o.size();if(o.type()===zs.STRING)if(this._options.doConvert&&ss.matchesOneMask(n,i)){const e=r.map((t=>m.isString(t)?parseFloat(t)||0:t));t.setAttribute(s,new C.c(e,a))}else{const t=Xs.arrayToIndexedArrays(r);e.setIndexedAttribute(s,t.values,t.indices)}else{const e=r;t.setAttribute(s,new C.c(e,a))}}}return t}_find_attributes(){let t;const e=ss.attribNames(this._options.skipEntries||\\\\\\\"\\\\\\\");if(this._json&&null!=(t=this._json[0]))for(let n of Object.keys(t)){const i=t[n];if(this._value_has_subentries(i))for(let t of Object.keys(i)){const s=[n,t].join(\\\\\\\":\\\\\\\"),r=i[n];ss.matchesOneMask(s,e)||(this._attribute_datas_by_name[s]=jZ.from_value(r))}else ss.matchesOneMask(n,e)||(this._attribute_datas_by_name[n]=jZ.from_value(i))}}_attribute_values_for_name(t){return this._json?this._json.map((e=>{const n=t.split(\\\\\\\":\\\\\\\")[0],i=e[n];if(this._value_has_subentries(i)){return i[t.substring(n.length+1)]||0}return i||0})):[]}_value_has_subentries(t){return m.isObject(t)&&!m.isArray(t)}}const qZ=JSON.stringify([{value:-40},{value:-30},{value:-20},{value:-10},{value:0},{value:10},{value:20},{value:30},{value:40},{value:50},{value:60},{value:70},{value:80}]);const XZ=new class extends ua{constructor(){super(...arguments),this.data=ha.STRING(qZ)}};class YZ extends uV{constructor(){super(...arguments),this.paramsConfig=XZ}static type(){return\\\\\\\"data\\\\\\\"}cook(){let t=null;try{t=JSON.parse(this.pv.data)}catch(t){this.states.error.set(\\\\\\\"could not parse json\\\\\\\")}if(t)try{const e=new WZ;e.setJSON(t);const n=e.createObject();this.setGeometry(n,Ns.POINTS)}catch(t){this.states.error.set(\\\\\\\"could not build geometry from json\\\\\\\")}else this.cookController.endCook()}}class $Z extends $g{constructor(t,e,n={},i){super(t,e,i),this._node=i,this._parser=new WZ(n)}async load(t,e,n){const i=await this._urlToLoad();fetch(i).then((async e=>{let n=await e.json();const i=this._parser.dataKeysPrefix();null!=i&&\\\\\\\"\\\\\\\"!=i&&(n=this._parser.get_prefixed_json(n,i.split(\\\\\\\".\\\\\\\"))),this._parser.setJSON(n);const s=this._parser.createObject();t(s)})).catch((t=>{li.error(\\\\\\\"error\\\\\\\",t),n(t)}))}}const JZ=\\\\\\\"position\\\\\\\";class ZZ extends $g{constructor(t,e,n,i){super(t,e,i),this.attribute_names=n,this._node=i,this.attribute_names_from_first_line=!1,this.lines=[],this.points_count=0,this.attribute_values_by_name={},this.attribute_data_by_name={},this._loading=!1,this.attribute_names||(this.attribute_names_from_first_line=!0)}async load(){if(this._loading)return void console.warn(\\\\\\\"is already loading\\\\\\\");this._loading=!0,this.points_count=0,await this.loadData(),this.infer_types(),this.read_values();return this.create_points()}async loadData(){const t=await this._urlToLoad(),e=await fetch(t),n=await e.text();this.lines=n.split(\\\\\\\"\\\\n\\\\\\\"),this.attribute_names||(this.attribute_names=this.lines[0].split(ZZ.SEPARATOR)),this.attribute_names=this.attribute_names.map((t=>Xs.remapName(t)));for(let t of this.attribute_names)this.attribute_values_by_name[t]=[]}infer_types(){const t=this.attribute_names_from_first_line?1:0;let e=this.lines[t].split(ZZ.SEPARATOR);for(let t=0;t<e.length;t++){const n=this.attribute_names[t],i=e[t],s=this._value_from_line_element(i);this.attribute_data_by_name[n]=jZ.from_value(s)}}_value_from_line_element(t){if(m.isString(t)){if(`${parseFloat(t)}`===t)return parseFloat(t);if(\\\\\\\"[\\\\\\\"===t[0]&&\\\\\\\"]\\\\\\\"===t[t.length-1]){return t.substring(1,t.length-1).split(ZZ.VECTOR_SEPARATOR).map((t=>parseFloat(t)))}return t}return t}read_values(){if(!this.attribute_names)return;let t;for(let e=this.attribute_names_from_first_line?1:0;e<this.lines.length;e++){t=this.lines[e];const n=t.split(ZZ.SEPARATOR);if(n.length>=this.attribute_names.length){for(let t=0;t<n.length;t++){const e=this.attribute_names[t];if(e){const i=n[t],s=this._value_from_line_element(i);this.attribute_values_by_name[e].push(s)}}this.points_count+=1}}if(!this.attribute_values_by_name.position){const t=new Array(3*this.points_count);t.fill(0),this.attribute_values_by_name.position=t,this.attribute_data_by_name.position=new jZ(3,zs.NUMERIC),this.attribute_names.push(JZ)}}create_points(){if(!this.attribute_names)return;const t=new S.a,e=new fr(t);for(let n of this.attribute_names){const i=this.attribute_values_by_name[n].flat(),s=this.attribute_data_by_name[n].size();if(this.attribute_data_by_name[n].type()==zs.STRING){const t=Xs.arrayToIndexedArrays(i);e.setIndexedAttribute(n,t.values,t.indices)}else t.setAttribute(n,new C.c(i,s))}const n=new Array(this.points_count);for(let t=0;t<this.points_count;t++)n.push(t);return t.setIndex(n),t}}var KZ;ZZ.SEPARATOR=\\\\\\\",\\\\\\\",ZZ.VECTOR_SEPARATOR=\\\\\\\",\\\\\\\",function(t){t.JSON=\\\\\\\"json\\\\\\\",t.CSV=\\\\\\\"csv\\\\\\\"}(KZ||(KZ={}));const QZ=[KZ.JSON,KZ.CSV],tK=`${qg}/nodes/sop/DataUrl/basic.json`;const eK=new class extends ua{constructor(){super(...arguments),this.dataType=ha.INTEGER(QZ.indexOf(KZ.JSON),{menu:{entries:QZ.map(((t,e)=>({name:t,value:e})))}}),this.url=ha.STRING(tK,{fileBrowse:{type:[Rr.JSON]}}),this.jsonDataKeysPrefix=ha.STRING(\\\\\\\"\\\\\\\",{visibleIf:{dataType:QZ.indexOf(KZ.JSON)}}),this.skipEntries=ha.STRING(\\\\\\\"\\\\\\\",{visibleIf:{dataType:QZ.indexOf(KZ.JSON)}}),this.convert=ha.BOOLEAN(0,{visibleIf:{dataType:QZ.indexOf(KZ.JSON)}}),this.convertToNumeric=ha.STRING(\\\\\\\"\\\\\\\",{visibleIf:{dataType:QZ.indexOf(KZ.JSON),convert:1}}),this.readAttribNamesFromFile=ha.BOOLEAN(1,{visibleIf:{dataType:QZ.indexOf(KZ.CSV)}}),this.attribNames=ha.STRING(\\\\\\\"height scale\\\\\\\",{visibleIf:{dataType:QZ.indexOf(KZ.CSV),readAttribNamesFromFile:0}}),this.reload=ha.BUTTON(null,{callback:(t,e)=>{nK.PARAM_CALLBACK_reload(t,e)}})}};class nK extends uV{constructor(){super(...arguments),this.paramsConfig=eK}static type(){return\\\\\\\"dataUrl\\\\\\\"}initializeNode(){this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.url],(()=>{const t=this.p.url.rawInput();if(t){const e=t.split(\\\\\\\"/\\\\\\\");return e[e.length-1]}return\\\\\\\"\\\\\\\"}))}))}))}async cook(){this._load()}_load(){switch(QZ[this.pv.dataType]){case KZ.JSON:return this._loadJSON();case KZ.CSV:return this._loadCSV()}}_clearLoadedBlob(){switch(QZ[this.pv.dataType]){case KZ.JSON:return this._resetJSON();case KZ.CSV:return this._resetCSV()}}_url(){const t=this.scene().assets.root();return t?`${t}${this.pv.url}`:this.pv.url}_loadJSON(){new $Z(this._url(),this.scene(),{dataKeysPrefix:this.pv.jsonDataKeysPrefix,skipEntries:this.pv.skipEntries,doConvert:this.pv.convert,convertToNumeric:this.pv.convertToNumeric},this).load(this._onLoad.bind(this),void 0,this._onError.bind(this))}_resetJSON(){new $Z(this._url(),this.scene()).deregisterUrl()}_onLoad(t){this.setGeometry(t,Ns.POINTS)}_onError(t){this.states.error.set(`could not load geometry from ${this._url()} (${t})`),this.cookController.endCook()}async _loadCSV(){const t=this.pv.readAttribNamesFromFile?void 0:this.pv.attribNames.split(\\\\\\\" \\\\\\\"),e=new ZZ(this._url(),this.scene(),t,this),n=await e.load();n?this.setGeometry(n,Ns.POINTS):this.states.error.set(\\\\\\\"could not generate points\\\\\\\")}_resetCSV(){new ZZ(this._url(),this.scene(),[],this).deregisterUrl()}static PARAM_CALLBACK_reload(t,e){t.param_callback_reload()}param_callback_reload(){this._clearLoadedBlob(),this.p.url.setDirty()}}class iK extends S.a{constructor(t,e,n,i){super();const s=[],r=[],o=[],a=new p.a,l=new A.a;l.makeRotationFromEuler(n),l.setPosition(e);const c=new A.a;function h(e,n,i){n.applyMatrix4(t.matrixWorld),n.applyMatrix4(c),i.transformDirection(t.matrixWorld),e.push(new sK(n.clone(),i.clone()))}function u(t,e){const n=[],s=.5*Math.abs(i.dot(e));for(let i=0;i<t.length;i+=3){let r,o,a,l,c=0;const h=t[i+0].position.dot(e)-s>0,u=t[i+1].position.dot(e)-s>0,p=t[i+2].position.dot(e)-s>0;switch(c=(h?1:0)+(u?1:0)+(p?1:0),c){case 0:n.push(t[i]),n.push(t[i+1]),n.push(t[i+2]);break;case 1:if(h&&(r=t[i+1],o=t[i+2],a=d(t[i],r,e,s),l=d(t[i],o,e,s)),u){r=t[i],o=t[i+2],a=d(t[i+1],r,e,s),l=d(t[i+1],o,e,s),n.push(a),n.push(o.clone()),n.push(r.clone()),n.push(o.clone()),n.push(a.clone()),n.push(l);break}p&&(r=t[i],o=t[i+1],a=d(t[i+2],r,e,s),l=d(t[i+2],o,e,s)),n.push(r.clone()),n.push(o.clone()),n.push(a),n.push(l),n.push(a.clone()),n.push(o.clone());break;case 2:h||(r=t[i].clone(),o=d(r,t[i+1],e,s),a=d(r,t[i+2],e,s),n.push(r),n.push(o),n.push(a)),u||(r=t[i+1].clone(),o=d(r,t[i+2],e,s),a=d(r,t[i],e,s),n.push(r),n.push(o),n.push(a)),p||(r=t[i+2].clone(),o=d(r,t[i],e,s),a=d(r,t[i+1],e,s),n.push(r),n.push(o),n.push(a))}}return n}function d(t,e,n,i){const s=t.position.dot(n)-i,r=s/(s-(e.position.dot(n)-i));return new sK(new p.a(t.position.x+r*(e.position.x-t.position.x),t.position.y+r*(e.position.y-t.position.y),t.position.z+r*(e.position.z-t.position.z)),new p.a(t.normal.x+r*(e.normal.x-t.normal.x),t.normal.y+r*(e.normal.y-t.normal.y),t.normal.z+r*(e.normal.z-t.normal.z)))}c.copy(l).invert(),function(){let e=[];const n=new p.a,c=new p.a;if(!0===t.geometry.isGeometry)return void console.error(\\\\\\\"THREE.DecalGeometry no longer supports THREE.Geometry. Use BufferGeometry instead.\\\\\\\");const d=t.geometry,_=d.attributes.position,m=d.attributes.normal;if(null!==d.index){const t=d.index;for(let i=0;i<t.count;i++)n.fromBufferAttribute(_,t.getX(i)),c.fromBufferAttribute(m,t.getX(i)),h(e,n,c)}else for(let t=0;t<_.count;t++)n.fromBufferAttribute(_,t),c.fromBufferAttribute(m,t),h(e,n,c);e=u(e,a.set(1,0,0)),e=u(e,a.set(-1,0,0)),e=u(e,a.set(0,1,0)),e=u(e,a.set(0,-1,0)),e=u(e,a.set(0,0,1)),e=u(e,a.set(0,0,-1));for(let t=0;t<e.length;t++){const n=e[t];o.push(.5+n.position.x/i.x,.5+n.position.y/i.y),n.position.applyMatrix4(l),s.push(n.position.x,n.position.y,n.position.z),r.push(n.normal.x,n.normal.y,n.normal.z)}}(),this.setAttribute(\\\\\\\"position\\\\\\\",new C.c(s,3)),this.setAttribute(\\\\\\\"normal\\\\\\\",new C.c(r,3)),this.setAttribute(\\\\\\\"uv\\\\\\\",new C.c(o,2))}}class sK{constructor(t,e){this.position=t,this.normal=e}clone(){return new this.constructor(this.position.clone(),this.normal.clone())}}class rK extends aV{constructor(){super(...arguments),this._r=new p.a,this._rotation=new ny.a(0,0,0),this._scale=new p.a(1,1,1)}static type(){return\\\\\\\"decal\\\\\\\"}cook(t,e){const n=t[0];this._r.copy(e.r).multiplyScalar(On.a),this._rotation.set(this._r.x,this._r.y,this._r.z),this._scale.copy(e.s).multiplyScalar(e.scale);const i=n.objectsWithGeo(),s=[];for(let t of i)if(t.isMesh){const n=new iK(t,e.t,this._rotation,this._scale),i=new B.a(n,t.material);s.push(i)}return this.createCoreGroupFromObjects(s)}}rK.DEFAULT_PARAMS={t:new p.a(0,0,0),r:new p.a(0,0,0),s:new p.a(1,1,1),scale:1},rK.INPUT_CLONED_STATE=Qi.NEVER;const oK=rK.DEFAULT_PARAMS;const aK=new class extends ua{constructor(){super(...arguments),this.t=ha.VECTOR3(oK.t),this.r=ha.VECTOR3(oK.r),this.s=ha.VECTOR3(oK.s),this.scale=ha.FLOAT(oK.scale)}};class lK extends uV{constructor(){super(...arguments),this.paramsConfig=aK}static type(){return\\\\\\\"decal\\\\\\\"}static displayedInputNames(){return[\\\\\\\"geometry to create decal from\\\\\\\"]}initializeNode(){this.io.inputs.setCount(0,1),this.io.inputs.initInputsClonedState(rK.INPUT_CLONED_STATE)}cook(t){this._operation=this._operation||new rK(this._scene,this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}const cK=new class extends ua{constructor(){super(...arguments),this.duration=ha.INTEGER(1e3,{range:[0,1e3],rangeLocked:[!0,!1]})}};class hK extends uV{constructor(){super(...arguments),this.paramsConfig=cK}static type(){return\\\\\\\"delay\\\\\\\"}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(Qi.ALWAYS)}cook(t){const e=t[0];setTimeout((()=>{this.setCoreGroup(e)}),Math.max(this.pv.duration,0))}}class uK{constructor(t){this.node=t,this.selected_state=new Map,this._entities_count=0,this._selected_entities_count=0}init(t){this.selected_state.clear();for(let e of t)this.selected_state.set(e,!1);this._entities_count=t.length,this._selected_entities_count=0}select(t){const e=this.selected_state.get(t);null!=e&&0==e&&(this.selected_state.set(t,!0),this._selected_entities_count++)}entities_to_keep(){return this._entities_for_state(this.node.pv.invert)}entities_to_delete(){return this._entities_for_state(!this.node.pv.invert)}_entities_for_state(t){const e=!!t,n=t?this._selected_entities_count:this._entities_count-this._selected_entities_count;if(0==n)return[];{const t=new Array(n);let i=0;return this.selected_state.forEach(((n,s)=>{n==e&&(t[i]=s,i++)})),t}}}var dK;!function(t){t.EQUAL=\\\\\\\"==\\\\\\\",t.LESS_THAN=\\\\\\\"<\\\\\\\",t.EQUAL_OR_LESS_THAN=\\\\\\\"<=\\\\\\\",t.EQUAL_OR_GREATER_THAN=\\\\\\\">=\\\\\\\",t.GREATER_THAN=\\\\\\\">\\\\\\\",t.DIFFERENT=\\\\\\\"!=\\\\\\\"}(dK||(dK={}));const pK=[dK.EQUAL,dK.LESS_THAN,dK.EQUAL_OR_LESS_THAN,dK.EQUAL_OR_GREATER_THAN,dK.GREATER_THAN,dK.DIFFERENT],_K={[dK.EQUAL]:(t,e)=>t==e,[dK.LESS_THAN]:(t,e)=>t<e,[dK.EQUAL_OR_LESS_THAN]:(t,e)=>t<=e,[dK.EQUAL_OR_GREATER_THAN]:(t,e)=>t>=e,[dK.GREATER_THAN]:(t,e)=>t>e,[dK.DIFFERENT]:(t,e)=>t!=e},mK=pK.map(((t,e)=>({name:t,value:e})));class fK{constructor(t){this.node=t}evalForEntities(t){const e=ks[this.node.pv.attribType];switch(e){case zs.NUMERIC:return void this._eval_for_numeric(t);case zs.STRING:return void this._eval_for_string(t)}os.unreachable(e)}_eval_for_string(t){let e;for(let n of t)e=n.stringAttribValue(this.node.pv.attribName),e==this.node.pv.attribString&&this.node.entitySelectionHelper.select(n)}_eval_for_numeric(t){const e=Vs[this.node.pv.attribSize-1];switch(e){case Gs.FLOAT:return this._eval_for_points_numeric_float(t);case Gs.VECTOR2:return this._eval_for_points_numeric_vector2(t);case Gs.VECTOR3:return this._eval_for_points_numeric_vector3(t);case Gs.VECTOR4:return this._eval_for_points_numeric_vector4(t)}os.unreachable(e)}_eval_for_points_numeric_float(t){let e=this.node.pv.attribName;const n=this.node.pv.attribValue1;let i;const s=pK[this.node.pv.attribComparisonOperator],r=_K[s];for(let s of t)i=s.attribValue(e),r(i,n)&&this.node.entitySelectionHelper.select(s)}_eval_for_points_numeric_vector2(t){let e=this.node.pv.attribName;const n=this.node.pv.attribValue2;let i=new d.a;for(let s of t){const t=s.attribValue(e,i);n.equals(t)&&this.node.entitySelectionHelper.select(s)}}_eval_for_points_numeric_vector3(t){let e=this.node.pv.attribName;const n=this.node.pv.attribValue3;let i=new p.a;for(let s of t){const t=s.attribValue(e,i);n.equals(t)&&this.node.entitySelectionHelper.select(s)}}_eval_for_points_numeric_vector4(t){let e=this.node.pv.attribName;const n=this.node.pv.attribValue4;let i=new _.a;for(let s of t){const t=s.attribValue(e,i);n.equals(t)&&this.node.entitySelectionHelper.select(s)}}}class gK{constructor(t){this.node=t}async evalForEntities(t){const e=this.node.p.expression;this.node.p.expression.hasExpression()&&e.expressionController?await this.eval_expressions_for_points_with_expression(t):this.eval_expressions_without_expression(t)}async eval_expressions_for_points_with_expression(t){const e=this.node.p.expression;e.expressionController&&await e.expressionController.computeExpressionForEntities(t,((t,e)=>{e&&this.node.entitySelectionHelper.select(t)}))}eval_expressions_without_expression(t){if(this.node.pv.expression)for(let e of t)this.node.entitySelectionHelper.select(e)}}class vK{constructor(t){this.node=t,this._point_position=new p.a}evalForPoints(t){const e=this._createBbox();for(let n of t){e.containsPoint(n.getPosition(this._point_position))&&this.node.entitySelectionHelper.select(n)}}_createBbox(){return new Ry.a(this.node.pv.bboxCenter.clone().sub(this.node.pv.bboxSize.clone().multiplyScalar(.5)),this.node.pv.bboxCenter.clone().add(this.node.pv.bboxSize.clone().multiplyScalar(.5)))}}class yK{constructor(t){this.node=t}eval_for_objects(t){const e=Ps[this.node.pv.objectType];for(let n of t){Os(n.object().constructor)==e&&this.node.entitySelectionHelper.select(n)}}}class xK{constructor(){this._sidePropertyByMaterial=new WeakMap,this._bound_setMat=this._setObjectMaterialDoubleSided.bind(this),this._bound_restoreMat=this._restoreObjectMaterialSide.bind(this)}setCoreGroupMaterialDoubleSided(t){const e=t.objects();for(let t of e)t.traverse(this._bound_setMat)}restoreMaterialSideProperty(t){const e=t.objects();for(let t of e)t.traverse(this._bound_restoreMat)}_setObjectMaterialDoubleSided(t){const e=t.material;if(e)if(m.isArray(e))for(let t of e)this._setMaterialDoubleSided(t);else this._setMaterialDoubleSided(e)}_restoreObjectMaterialSide(t){const e=t.material;if(e)if(m.isArray(e))for(let t of e)this._restoreMaterialDoubleSided(t);else this._restoreMaterialDoubleSided(e)}_setMaterialDoubleSided(t){this._sidePropertyByMaterial.set(t,t.side),t.side=w.z}_restoreMaterialDoubleSided(t){t.side=this._sidePropertyByMaterial.get(t)||w.z}}const bK=new p.a(0,1,0),wK=new p.a(0,-1,0);class TK{constructor(t){this.node=t,this._matDoubleSideTmpSetter=new xK,this._point_position=new p.a,this._raycaster=new eO,this._intersections=[]}evalForPoints(t,e){if(!e)return;const n=null==e?void 0:e.objectsWithGeo()[0];if(!n)return;const i=n;if(!i.isMesh)return;this._matDoubleSideTmpSetter.setCoreGroupMaterialDoubleSided(e);const s=n.geometry;s.computeBoundingBox();const r=s.boundingBox;for(let e of t)e.getPosition(this._point_position),r.containsPoint(this._point_position)?this._isPositionInObject(this._point_position,i,bK)&&this._isPositionInObject(this._point_position,i,wK)&&this.node.entitySelectionHelper.select(e):this.node.entitySelectionHelper.select(e);this._matDoubleSideTmpSetter.restoreMaterialSideProperty(e)}_isPositionInObject(t,e,n){var i;this._raycaster.ray.direction.copy(n),this._raycaster.ray.origin.copy(t),this._intersections.length=0;const s=this._raycaster.intersectObject(e,!1,this._intersections);if(!s)return!1;if(0==s.length)return!1;const r=null===(i=s[0].face)||void 0===i?void 0:i.normal;if(!r)return!1;return this._raycaster.ray.direction.dot(r)>=0}}const AK=new class extends ua{constructor(){super(...arguments),this.class=ha.INTEGER(Ds.indexOf(Fs.VERTEX),{menu:{entries:Bs}}),this.invert=ha.BOOLEAN(0),this.byObjectType=ha.BOOLEAN(0,{visibleIf:{class:Ds.indexOf(Fs.OBJECT)}}),this.objectType=ha.INTEGER(Ps.indexOf(Ns.MESH),{menu:{entries:Rs},visibleIf:{class:Ds.indexOf(Fs.OBJECT),byObjectType:!0},separatorAfter:!0}),this.byExpression=ha.BOOLEAN(0),this.expression=ha.BOOLEAN(\\\\\\\"@ptnum==0\\\\\\\",{visibleIf:{byExpression:!0},expression:{forEntities:!0},separatorAfter:!0}),this.byAttrib=ha.BOOLEAN(0),this.attribType=ha.INTEGER(ks.indexOf(zs.NUMERIC),{menu:{entries:Us},visibleIf:{byAttrib:1}}),this.attribName=ha.STRING(\\\\\\\"\\\\\\\",{visibleIf:{byAttrib:1}}),this.attribSize=ha.INTEGER(1,{range:Hs,rangeLocked:[!0,!0],visibleIf:{byAttrib:1,attribType:ks.indexOf(zs.NUMERIC)}}),this.attribComparisonOperator=ha.INTEGER(pK.indexOf(dK.EQUAL),{menu:{entries:mK},visibleIf:{byAttrib:!0,attribType:ks.indexOf(zs.NUMERIC),attribSize:Gs.FLOAT}}),this.attribValue1=ha.FLOAT(0,{visibleIf:{byAttrib:1,attribType:ks.indexOf(zs.NUMERIC),attribSize:1}}),this.attribValue2=ha.VECTOR2([0,0],{visibleIf:{byAttrib:1,attribType:ks.indexOf(zs.NUMERIC),attribSize:2}}),this.attribValue3=ha.VECTOR3([0,0,0],{visibleIf:{byAttrib:1,attribType:ks.indexOf(zs.NUMERIC),attribSize:3}}),this.attribValue4=ha.VECTOR4([0,0,0,0],{visibleIf:{byAttrib:1,attribType:ks.indexOf(zs.NUMERIC),attribSize:4}}),this.attribString=ha.STRING(\\\\\\\"\\\\\\\",{visibleIf:{byAttrib:1,attribType:ks.indexOf(zs.STRING)},separatorAfter:!0}),this.byBbox=ha.BOOLEAN(0,{visibleIf:{class:Ds.indexOf(Fs.VERTEX)}}),this.bboxSize=ha.VECTOR3([1,1,1],{visibleIf:{class:Ds.indexOf(Fs.VERTEX),byBbox:!0}}),this.bboxCenter=ha.VECTOR3([0,0,0],{visibleIf:{class:Ds.indexOf(Fs.VERTEX),byBbox:!0},separatorAfter:!0}),this.byBoundingObject=ha.BOOLEAN(0,{visibleIf:{class:Ds.indexOf(Fs.VERTEX)}}),this.keepPoints=ha.BOOLEAN(0,{visibleIf:{class:Ds.indexOf(Fs.OBJECT)}})}};class MK extends uV{constructor(){super(...arguments),this.paramsConfig=AK,this._marked_for_deletion_per_object_index=new Map,this.entitySelectionHelper=new uK(this),this.byExpressionHelper=new gK(this),this.byAttributeHelper=new fK(this),this.byObjectTypeHelper=new yK(this),this.byBboxHelper=new vK(this),this.byBoundingObjectHelper=new TK(this)}static type(){return\\\\\\\"delete\\\\\\\"}static displayedInputNames(){return[\\\\\\\"geometry to delete from\\\\\\\",\\\\\\\"points inside this geometry will be deleted (optional)\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1,2),this.io.inputs.initInputsClonedState(Qi.FROM_NODE)}async cook(t){const e=t[0],n=t[1];switch(this.pv.class){case Fs.VERTEX:await this._eval_for_points(e,n);break;case Fs.OBJECT:await this._eval_for_objects(e)}}set_class(t){this.p.class.set(t)}async _eval_for_objects(t){const e=t.coreObjects();this.entitySelectionHelper.init(e),this._marked_for_deletion_per_object_index=new Map;for(let t of e)this._marked_for_deletion_per_object_index.set(t.index(),!1);this.pv.byExpression&&await this.byExpressionHelper.evalForEntities(e),this.pv.byObjectType&&this.byObjectTypeHelper.eval_for_objects(e),this.pv.byAttrib&&\\\\\\\"\\\\\\\"!=this.pv.attribName&&this.byAttributeHelper.evalForEntities(e);const n=this.entitySelectionHelper.entities_to_keep().map((t=>t.object()));if(this.pv.keepPoints){const t=this.entitySelectionHelper.entities_to_delete();for(let e of t){const t=this._point_object(e);t&&n.push(t)}}this.setObjects(n)}async _eval_for_points(t,e){const n=t.coreObjects();let i,s=[];for(let t=0;t<n.length;t++){i=n[t];let r=i.coreGeometry();if(r){const t=i.object(),n=r.pointsFromGeometry();this.entitySelectionHelper.init(n);const o=n.length;this.pv.byExpression&&await this.byExpressionHelper.evalForEntities(n),this.pv.byAttrib&&\\\\\\\"\\\\\\\"!=this.pv.attribName&&this.byAttributeHelper.evalForEntities(n),this.pv.byBbox&&this.byBboxHelper.evalForPoints(n),this.pv.byBoundingObject&&this.byBoundingObjectHelper.evalForPoints(n,e);const a=this.entitySelectionHelper.entities_to_keep();if(a.length==o)s.push(t);else if(r.geometry().dispose(),a.length>0){const e=fr.geometryFromPoints(a,Os(t.constructor));e&&(t.geometry=e,s.push(t))}}}this.setObjects(s)}_point_object(t){const e=t.points(),n=fr.geometryFromPoints(e,Ns.POINTS);if(n)return this.createObject(n,Ns.POINTS)}}const EK=new class extends ua{constructor(){super(...arguments),this.start=ha.INTEGER(0,{range:[0,100],rangeLocked:[!0,!1]}),this.useCount=ha.BOOLEAN(0),this.count=ha.INTEGER(0,{range:[0,100],rangeLocked:[!0,!1],visibleIf:{useCount:1}})}};class SK extends uV{constructor(){super(...arguments),this.paramsConfig=EK}static type(){return\\\\\\\"drawRange\\\\\\\"}initializeNode(){this.io.inputs.setCount(0,1),this.io.inputs.initInputsClonedState(Qi.FROM_NODE)}cook(t){const e=t[0],n=e.objects();for(let t of n){const e=t.geometry;if(e){const t=e.drawRange;t.start=this.pv.start,this.pv.useCount?t.count=this.pv.count:t.count=1/0}}this.setCoreGroup(e)}}class CK{constructor(){this.pluginCallbacks=[],this.register((function(t){return new nQ(t)})),this.register((function(t){return new iQ(t)})),this.register((function(t){return new sQ(t)})),this.register((function(t){return new rQ(t)})),this.register((function(t){return new oQ(t)}))}register(t){return-1===this.pluginCallbacks.indexOf(t)&&this.pluginCallbacks.push(t),this}unregister(t){return-1!==this.pluginCallbacks.indexOf(t)&&this.pluginCallbacks.splice(this.pluginCallbacks.indexOf(t),1),this}parse(t,e,n){const i=new eQ,s=[];for(let t=0,e=this.pluginCallbacks.length;t<e;t++)s.push(this.pluginCallbacks[t](i));i.setPlugins(s),i.write(t,e,n)}}const NK=0,LK=1,OK=2,PK=3,RK=4,IK=5121,FK=5123,DK=5126,BK=5125,zK=34962,kK=34963,UK=9728,GK=9729,VK=9984,HK=9985,jK=9986,WK=9987,qK=33071,XK=33648,YK=10497,$K={};$K[1003]=UK,$K[1004]=VK,$K[1005]=jK,$K[1006]=GK,$K[1007]=HK,$K[1008]=WK,$K[1001]=qK,$K[1e3]=YK,$K[1002]=XK;const JK={scale:\\\\\\\"scale\\\\\\\",position:\\\\\\\"translation\\\\\\\",quaternion:\\\\\\\"rotation\\\\\\\",morphTargetInfluences:\\\\\\\"weights\\\\\\\"};function ZK(t,e){return t.length===e.length&&t.every((function(t,n){return t===e[n]}))}function KK(t){return 4*Math.ceil(t/4)}function QK(t,e=0){const n=KK(t.byteLength);if(n!==t.byteLength){const i=new Uint8Array(n);if(i.set(new Uint8Array(t)),0!==e)for(let s=t.byteLength;s<n;s++)i[s]=e;return i.buffer}return t}let tQ=null;class eQ{constructor(){this.plugins=[],this.options={},this.pending=[],this.buffers=[],this.byteOffset=0,this.buffers=[],this.nodeMap=new Map,this.skins=[],this.extensionsUsed={},this.uids=new Map,this.uid=0,this.json={asset:{version:\\\\\\\"2.0\\\\\\\",generator:\\\\\\\"THREE.GLTFExporter\\\\\\\"}},this.cache={meshes:new Map,attributes:new Map,attributesNormalized:new Map,materials:new Map,textures:new Map,images:new Map}}setPlugins(t){this.plugins=t}write(t,e,n){this.options=Object.assign({},{binary:!1,trs:!1,onlyVisible:!0,truncateDrawRange:!0,embedImages:!0,maxTextureSize:1/0,animations:[],includeCustomExtensions:!1},n),this.options.animations.length>0&&(this.options.trs=!0),this.processInput(t);const i=this;Promise.all(this.pending).then((function(){const t=i.buffers,n=i.json,s=i.options,r=i.extensionsUsed,o=new Blob(t,{type:\\\\\\\"application/octet-stream\\\\\\\"}),a=Object.keys(r);if(a.length>0&&(n.extensionsUsed=a),n.buffers&&n.buffers.length>0&&(n.buffers[0].byteLength=o.size),!0===s.binary){const t=new window.FileReader;t.readAsArrayBuffer(o),t.onloadend=function(){const i=QK(t.result),s=new DataView(new ArrayBuffer(8));s.setUint32(0,i.byteLength,!0),s.setUint32(4,5130562,!0);const r=QK(function(t){if(void 0!==window.TextEncoder)return(new TextEncoder).encode(t).buffer;const e=new Uint8Array(new ArrayBuffer(t.length));for(let n=0,i=t.length;n<i;n++){const i=t.charCodeAt(n);e[n]=i>255?32:i}return e.buffer}(JSON.stringify(n)),32),o=new DataView(new ArrayBuffer(8));o.setUint32(0,r.byteLength,!0),o.setUint32(4,1313821514,!0);const a=new ArrayBuffer(12),l=new DataView(a);l.setUint32(0,1179937895,!0),l.setUint32(4,2,!0);const c=12+o.byteLength+r.byteLength+s.byteLength+i.byteLength;l.setUint32(8,c,!0);const h=new Blob([a,o,r,s,i],{type:\\\\\\\"application/octet-stream\\\\\\\"}),u=new window.FileReader;u.readAsArrayBuffer(h),u.onloadend=function(){e(u.result)}}}else if(n.buffers&&n.buffers.length>0){const t=new window.FileReader;t.readAsDataURL(o),t.onloadend=function(){const i=t.result;n.buffers[0].uri=i,e(n)}}else e(n)}))}serializeUserData(t,e){if(0===Object.keys(t.userData).length)return;const n=this.options,i=this.extensionsUsed;try{const s=JSON.parse(JSON.stringify(t.userData));if(n.includeCustomExtensions&&s.gltfExtensions){void 0===e.extensions&&(e.extensions={});for(const t in s.gltfExtensions)e.extensions[t]=s.gltfExtensions[t],i[t]=!0;delete s.gltfExtensions}Object.keys(s).length>0&&(e.extras=s)}catch(e){console.warn(\\\\\\\"THREE.GLTFExporter: userData of '\\\\\\\"+t.name+\\\\\\\"' won't be serialized because of JSON.stringify error - \\\\\\\"+e.message)}}getUID(t){return this.uids.has(t)||this.uids.set(t,this.uid++),this.uids.get(t)}isNormalizedNormalAttribute(t){if(this.cache.attributesNormalized.has(t))return!1;const e=new Sb;for(let n=0,i=t.count;n<i;n++)if(Math.abs(e.fromBufferAttribute(t,n).length()-1)>5e-4)return!1;return!0}createNormalizedNormalAttribute(t){const e=this.cache;if(e.attributesNormalized.has(t))return e.attributesNormalized.get(t);const n=t.clone(),i=new Sb;for(let t=0,e=n.count;t<e;t++)i.fromBufferAttribute(n,t),0===i.x&&0===i.y&&0===i.z?i.setX(1):i.normalize(),n.setXYZ(t,i.x,i.y,i.z);return e.attributesNormalized.set(t,n),n}applyTextureTransform(t,e){let n=!1;const i={};0===e.offset.x&&0===e.offset.y||(i.offset=e.offset.toArray(),n=!0),0!==e.rotation&&(i.rotation=e.rotation,n=!0),1===e.repeat.x&&1===e.repeat.y||(i.scale=e.repeat.toArray(),n=!0),n&&(t.extensions=t.extensions||{},t.extensions.KHR_texture_transform=i,this.extensionsUsed.KHR_texture_transform=!0)}processBuffer(t){const e=this.json,n=this.buffers;return e.buffers||(e.buffers=[{byteLength:0}]),n.push(t),0}processBufferView(t,e,n,i,s){const r=this.json;let o;r.bufferViews||(r.bufferViews=[]),o=e===IK?1:e===FK?2:4;const a=KK(i*t.itemSize*o),l=new DataView(new ArrayBuffer(a));let c=0;for(let s=n;s<n+i;s++)for(let n=0;n<t.itemSize;n++){let i;t.itemSize>4?i=t.array[s*t.itemSize+n]:0===n?i=t.getX(s):1===n?i=t.getY(s):2===n?i=t.getZ(s):3===n&&(i=t.getW(s)),e===DK?l.setFloat32(c,i,!0):e===BK?l.setUint32(c,i,!0):e===FK?l.setUint16(c,i,!0):e===IK&&l.setUint8(c,i),c+=o}const h={buffer:this.processBuffer(l.buffer),byteOffset:this.byteOffset,byteLength:a};void 0!==s&&(h.target=s),s===zK&&(h.byteStride=t.itemSize*o),this.byteOffset+=a,r.bufferViews.push(h);return{id:r.bufferViews.length-1,byteLength:0}}processBufferViewImage(t){const e=this,n=e.json;return n.bufferViews||(n.bufferViews=[]),new Promise((function(i){const s=new window.FileReader;s.readAsArrayBuffer(t),s.onloadend=function(){const t=QK(s.result),r={buffer:e.processBuffer(t),byteOffset:e.byteOffset,byteLength:t.byteLength};e.byteOffset+=t.byteLength,i(n.bufferViews.push(r)-1)}}))}processAccessor(t,e,n,i){const s=this.options,r=this.json;let o;if(t.array.constructor===Float32Array)o=DK;else if(t.array.constructor===Uint32Array)o=BK;else if(t.array.constructor===Uint16Array)o=FK;else{if(t.array.constructor!==Uint8Array)throw new Error(\\\\\\\"THREE.GLTFExporter: Unsupported bufferAttribute component type.\\\\\\\");o=IK}if(void 0===n&&(n=0),void 0===i&&(i=t.count),s.truncateDrawRange&&void 0!==e&&null===e.index){const s=n+i,r=e.drawRange.count===1/0?t.count:e.drawRange.start+e.drawRange.count;n=Math.max(n,e.drawRange.start),(i=Math.min(s,r)-n)<0&&(i=0)}if(0===i)return null;const a=function(t,e,n){const i={min:new Array(t.itemSize).fill(Number.POSITIVE_INFINITY),max:new Array(t.itemSize).fill(Number.NEGATIVE_INFINITY)};for(let s=e;s<e+n;s++)for(let e=0;e<t.itemSize;e++){let n;t.itemSize>4?n=t.array[s*t.itemSize+e]:0===e?n=t.getX(s):1===e?n=t.getY(s):2===e?n=t.getZ(s):3===e&&(n=t.getW(s)),i.min[e]=Math.min(i.min[e],n),i.max[e]=Math.max(i.max[e],n)}return i}(t,n,i);let l;void 0!==e&&(l=t===e.index?kK:zK);const c=this.processBufferView(t,o,n,i,l),h={bufferView:c.id,byteOffset:c.byteOffset,componentType:o,count:i,max:a.max,min:a.min,type:{1:\\\\\\\"SCALAR\\\\\\\",2:\\\\\\\"VEC2\\\\\\\",3:\\\\\\\"VEC3\\\\\\\",4:\\\\\\\"VEC4\\\\\\\",16:\\\\\\\"MAT4\\\\\\\"}[t.itemSize]};return!0===t.normalized&&(h.normalized=!0),r.accessors||(r.accessors=[]),r.accessors.push(h)-1}processImage(t,e,n){const i=this,s=i.cache,r=i.json,o=i.options,a=i.pending;s.images.has(t)||s.images.set(t,{});const l=s.images.get(t),c=e===Dx?\\\\\\\"image/png\\\\\\\":\\\\\\\"image/jpeg\\\\\\\",h=c+\\\\\\\":flipY/\\\\\\\"+n.toString();if(void 0!==l[h])return l[h];r.images||(r.images=[]);const u={mimeType:c};if(o.embedImages){const s=tQ=tQ||document.createElement(\\\\\\\"canvas\\\\\\\");s.width=Math.min(t.width,o.maxTextureSize),s.height=Math.min(t.height,o.maxTextureSize);const r=s.getContext(\\\\\\\"2d\\\\\\\");if(!0===n&&(r.translate(0,s.height),r.scale(1,-1)),\\\\\\\"undefined\\\\\\\"!=typeof HTMLImageElement&&t instanceof HTMLImageElement||\\\\\\\"undefined\\\\\\\"!=typeof HTMLCanvasElement&&t instanceof HTMLCanvasElement||\\\\\\\"undefined\\\\\\\"!=typeof OffscreenCanvas&&t instanceof OffscreenCanvas||\\\\\\\"undefined\\\\\\\"!=typeof ImageBitmap&&t instanceof ImageBitmap)r.drawImage(t,0,0,s.width,s.height);else{e!==Dx&&e!==Fx&&console.error(\\\\\\\"GLTFExporter: Only RGB and RGBA formats are supported.\\\\\\\"),(t.width>o.maxTextureSize||t.height>o.maxTextureSize)&&console.warn(\\\\\\\"GLTFExporter: Image size is bigger than maxTextureSize\\\\\\\",t);const n=new Uint8ClampedArray(t.height*t.width*4);if(e===Dx)for(let e=0;e<n.length;e+=4)n[e+0]=t.data[e+0],n[e+1]=t.data[e+1],n[e+2]=t.data[e+2],n[e+3]=t.data[e+3];else for(let e=0,i=0;e<n.length;e+=4,i+=3)n[e+0]=t.data[i+0],n[e+1]=t.data[i+1],n[e+2]=t.data[i+2],n[e+3]=255;r.putImageData(new ImageData(n,t.width,t.height),0,0)}!0===o.binary?a.push(new Promise((function(t){s.toBlob((function(e){i.processBufferViewImage(e).then((function(e){u.bufferView=e,t()}))}),c)}))):u.uri=s.toDataURL(c)}else u.uri=t.src;const d=r.images.push(u)-1;return l[h]=d,d}processSampler(t){const e=this.json;e.samplers||(e.samplers=[]);const n={magFilter:$K[t.magFilter],minFilter:$K[t.minFilter],wrapS:$K[t.wrapS],wrapT:$K[t.wrapT]};return e.samplers.push(n)-1}processTexture(t){const e=this.cache,n=this.json;if(e.textures.has(t))return e.textures.get(t);n.textures||(n.textures=[]);const i={sampler:this.processSampler(t),source:this.processImage(t.image,t.format,t.flipY)};t.name&&(i.name=t.name),this._invokeAll((function(e){e.writeTexture&&e.writeTexture(t,i)}));const s=n.textures.push(i)-1;return e.textures.set(t,s),s}processMaterial(t){const e=this.cache,n=this.json;if(e.materials.has(t))return e.materials.get(t);if(t.isShaderMaterial)return console.warn(\\\\\\\"GLTFExporter: THREE.ShaderMaterial not supported.\\\\\\\"),null;n.materials||(n.materials=[]);const i={pbrMetallicRoughness:{}};!0!==t.isMeshStandardMaterial&&!0!==t.isMeshBasicMaterial&&console.warn(\\\\\\\"GLTFExporter: Use MeshStandardMaterial or MeshBasicMaterial for best results.\\\\\\\");const s=t.color.toArray().concat([t.opacity]);if(ZK(s,[1,1,1,1])||(i.pbrMetallicRoughness.baseColorFactor=s),t.isMeshStandardMaterial?(i.pbrMetallicRoughness.metallicFactor=t.metalness,i.pbrMetallicRoughness.roughnessFactor=t.roughness):(i.pbrMetallicRoughness.metallicFactor=.5,i.pbrMetallicRoughness.roughnessFactor=.5),t.metalnessMap||t.roughnessMap)if(t.metalnessMap===t.roughnessMap){const e={index:this.processTexture(t.metalnessMap)};this.applyTextureTransform(e,t.metalnessMap),i.pbrMetallicRoughness.metallicRoughnessTexture=e}else console.warn(\\\\\\\"THREE.GLTFExporter: Ignoring metalnessMap and roughnessMap because they are not the same Texture.\\\\\\\");if(t.map){const e={index:this.processTexture(t.map)};this.applyTextureTransform(e,t.map),i.pbrMetallicRoughness.baseColorTexture=e}if(t.emissive){const e=t.emissive.clone().multiplyScalar(t.emissiveIntensity),n=Math.max(e.r,e.g,e.b);if(n>1&&(e.multiplyScalar(1/n),console.warn(\\\\\\\"THREE.GLTFExporter: Some emissive components exceed 1; emissive has been limited\\\\\\\")),n>0&&(i.emissiveFactor=e.toArray()),t.emissiveMap){const e={index:this.processTexture(t.emissiveMap)};this.applyTextureTransform(e,t.emissiveMap),i.emissiveTexture=e}}if(t.normalMap){const e={index:this.processTexture(t.normalMap)};t.normalScale&&1!==t.normalScale.x&&(e.scale=t.normalScale.x),this.applyTextureTransform(e,t.normalMap),i.normalTexture=e}if(t.aoMap){const e={index:this.processTexture(t.aoMap),texCoord:1};1!==t.aoMapIntensity&&(e.strength=t.aoMapIntensity),this.applyTextureTransform(e,t.aoMap),i.occlusionTexture=e}t.transparent?i.alphaMode=\\\\\\\"BLEND\\\\\\\":t.alphaTest>0&&(i.alphaMode=\\\\\\\"MASK\\\\\\\",i.alphaCutoff=t.alphaTest),2===t.side&&(i.doubleSided=!0),\\\\\\\"\\\\\\\"!==t.name&&(i.name=t.name),this.serializeUserData(t,i),this._invokeAll((function(e){e.writeMaterial&&e.writeMaterial(t,i)}));const r=n.materials.push(i)-1;return e.materials.set(t,r),r}processMesh(t){const e=this.cache,n=this.json,i=[t.geometry.uuid];if(Array.isArray(t.material))for(let e=0,n=t.material.length;e<n;e++)i.push(t.material[e].uuid);else i.push(t.material.uuid);const s=i.join(\\\\\\\":\\\\\\\");if(e.meshes.has(s))return e.meshes.get(s);const r=t.geometry;let o;if(o=t.isLineSegments?LK:t.isLineLoop?OK:t.isLine?PK:t.isPoints?NK:t.material.wireframe?LK:RK,!0!==r.isBufferGeometry)throw new Error(\\\\\\\"THREE.GLTFExporter: Geometry is not of type THREE.BufferGeometry.\\\\\\\");const a={},l={},c=[],h=[],u={uv:\\\\\\\"TEXCOORD_0\\\\\\\",uv2:\\\\\\\"TEXCOORD_1\\\\\\\",color:\\\\\\\"COLOR_0\\\\\\\",skinWeight:\\\\\\\"WEIGHTS_0\\\\\\\",skinIndex:\\\\\\\"JOINTS_0\\\\\\\"},d=r.getAttribute(\\\\\\\"normal\\\\\\\");void 0===d||this.isNormalizedNormalAttribute(d)||(console.warn(\\\\\\\"THREE.GLTFExporter: Creating normalized normal attribute from the non-normalized one.\\\\\\\"),r.setAttribute(\\\\\\\"normal\\\\\\\",this.createNormalizedNormalAttribute(d)));let p=null;for(let t in r.attributes){if(\\\\\\\"morph\\\\\\\"===t.substr(0,5))continue;const n=r.attributes[t];t=u[t]||t.toUpperCase();if(/^(POSITION|NORMAL|TANGENT|TEXCOORD_\\\\d+|COLOR_\\\\d+|JOINTS_\\\\d+|WEIGHTS_\\\\d+)$/.test(t)||(t=\\\\\\\"_\\\\\\\"+t),e.attributes.has(this.getUID(n))){l[t]=e.attributes.get(this.getUID(n));continue}p=null;const i=n.array;\\\\\\\"JOINTS_0\\\\\\\"!==t||i instanceof Uint16Array||i instanceof Uint8Array||(console.warn('GLTFExporter: Attribute \\\\\\\"skinIndex\\\\\\\" converted to type UNSIGNED_SHORT.'),p=new Qw(new Uint16Array(i),n.itemSize,n.normalized));const s=this.processAccessor(p||n,r);null!==s&&(l[t]=s,e.attributes.set(this.getUID(n),s))}if(void 0!==d&&r.setAttribute(\\\\\\\"normal\\\\\\\",d),0===Object.keys(l).length)return null;if(void 0!==t.morphTargetInfluences&&t.morphTargetInfluences.length>0){const n=[],i=[],s={};if(void 0!==t.morphTargetDictionary)for(const e in t.morphTargetDictionary)s[t.morphTargetDictionary[e]]=e;for(let o=0;o<t.morphTargetInfluences.length;++o){const a={};let l=!1;for(const t in r.morphAttributes){if(\\\\\\\"position\\\\\\\"!==t&&\\\\\\\"normal\\\\\\\"!==t){l||(console.warn(\\\\\\\"GLTFExporter: Only POSITION and NORMAL morph are supported.\\\\\\\"),l=!0);continue}const n=r.morphAttributes[t][o],i=t.toUpperCase(),s=r.attributes[t];if(e.attributes.has(this.getUID(n))){a[i]=e.attributes.get(this.getUID(n));continue}const c=n.clone();if(!r.morphTargetsRelative)for(let t=0,e=n.count;t<e;t++)c.setXYZ(t,n.getX(t)-s.getX(t),n.getY(t)-s.getY(t),n.getZ(t)-s.getZ(t));a[i]=this.processAccessor(c,r),e.attributes.set(this.getUID(s),a[i])}h.push(a),n.push(t.morphTargetInfluences[o]),void 0!==t.morphTargetDictionary&&i.push(s[o])}a.weights=n,i.length>0&&(a.extras={},a.extras.targetNames=i)}const _=Array.isArray(t.material);if(_&&0===r.groups.length)return null;const m=_?t.material:[t.material],f=_?r.groups:[{materialIndex:0,start:void 0,count:void 0}];for(let t=0,n=f.length;t<n;t++){const n={mode:o,attributes:l};if(this.serializeUserData(r,n),h.length>0&&(n.targets=h),null!==r.index){let i=this.getUID(r.index);void 0===f[t].start&&void 0===f[t].count||(i+=\\\\\\\":\\\\\\\"+f[t].start+\\\\\\\":\\\\\\\"+f[t].count),e.attributes.has(i)?n.indices=e.attributes.get(i):(n.indices=this.processAccessor(r.index,r,f[t].start,f[t].count),e.attributes.set(i,n.indices)),null===n.indices&&delete n.indices}const i=this.processMaterial(m[f[t].materialIndex]);null!==i&&(n.material=i),c.push(n)}a.primitives=c,n.meshes||(n.meshes=[]),this._invokeAll((function(e){e.writeMesh&&e.writeMesh(t,a)}));const g=n.meshes.push(a)-1;return e.meshes.set(s,g),g}processCamera(t){const e=this.json;e.cameras||(e.cameras=[]);const n=t.isOrthographicCamera,i={type:n?\\\\\\\"orthographic\\\\\\\":\\\\\\\"perspective\\\\\\\"};return n?i.orthographic={xmag:2*t.right,ymag:2*t.top,zfar:t.far<=0?.001:t.far,znear:t.near<0?0:t.near}:i.perspective={aspectRatio:t.aspect,yfov:pb.degToRad(t.fov),zfar:t.far<=0?.001:t.far,znear:t.near<0?0:t.near},\\\\\\\"\\\\\\\"!==t.name&&(i.name=t.type),e.cameras.push(i)-1}processAnimation(t,e){const n=this.json,i=this.nodeMap;n.animations||(n.animations=[]);const s=(t=CK.Utils.mergeMorphTargetTracks(t.clone(),e)).tracks,r=[],o=[];for(let t=0;t<s.length;++t){const n=s[t],a=ZN.parseTrackName(n.name);let l=ZN.findNode(e,a.nodeName);const c=JK[a.propertyName];if(\\\\\\\"bones\\\\\\\"===a.objectName&&(l=!0===l.isSkinnedMesh?l.skeleton.getBoneByName(a.objectIndex):void 0),!l||!c)return console.warn('THREE.GLTFExporter: Could not export animation track \\\\\\\"%s\\\\\\\".',n.name),null;const h=1;let u,d=n.values.length/n.times.length;c===JK.morphTargetInfluences&&(d/=l.morphTargetInfluences.length),!0===n.createInterpolant.isInterpolantFactoryMethodGLTFCubicSpline?(u=\\\\\\\"CUBICSPLINE\\\\\\\",d/=3):u=n.getInterpolation()===kx?\\\\\\\"STEP\\\\\\\":\\\\\\\"LINEAR\\\\\\\",o.push({input:this.processAccessor(new Qw(n.times,h)),output:this.processAccessor(new Qw(n.values,d)),interpolation:u}),r.push({sampler:o.length-1,target:{node:i.get(l),path:c}})}return n.animations.push({name:t.name||\\\\\\\"clip_\\\\\\\"+n.animations.length,samplers:o,channels:r}),n.animations.length-1}processSkin(t){const e=this.json,n=this.nodeMap,i=e.nodes[n.get(t)],s=t.skeleton;if(void 0===s)return null;const r=t.skeleton.bones[0];if(void 0===r)return null;const o=[],a=new Float32Array(16*s.bones.length),l=new sw;for(let e=0;e<s.bones.length;++e)o.push(n.get(s.bones[e])),l.copy(s.boneInverses[e]),l.multiply(t.bindMatrix).toArray(a,16*e);void 0===e.skins&&(e.skins=[]),e.skins.push({inverseBindMatrices:this.processAccessor(new Qw(a,16)),joints:o,skeleton:n.get(r)});return i.skin=e.skins.length-1}processNode(t){const e=this.json,n=this.options,i=this.nodeMap;e.nodes||(e.nodes=[]);const s={};if(n.trs){const e=t.quaternion.toArray(),n=t.position.toArray(),i=t.scale.toArray();ZK(e,[0,0,0,1])||(s.rotation=e),ZK(n,[0,0,0])||(s.translation=n),ZK(i,[1,1,1])||(s.scale=i)}else t.matrixAutoUpdate&&t.updateMatrix(),!1===ZK(t.matrix.elements,[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1])&&(s.matrix=t.matrix.elements);if(\\\\\\\"\\\\\\\"!==t.name&&(s.name=String(t.name)),this.serializeUserData(t,s),t.isMesh||t.isLine||t.isPoints){const e=this.processMesh(t);null!==e&&(s.mesh=e)}else t.isCamera&&(s.camera=this.processCamera(t));if(t.isSkinnedMesh&&this.skins.push(t),t.children.length>0){const e=[];for(let i=0,s=t.children.length;i<s;i++){const s=t.children[i];if(s.visible||!1===n.onlyVisible){const t=this.processNode(s);null!==t&&e.push(t)}}e.length>0&&(s.children=e)}this._invokeAll((function(e){e.writeNode&&e.writeNode(t,s)}));const r=e.nodes.push(s)-1;return i.set(t,r),r}processScene(t){const e=this.json,n=this.options;e.scenes||(e.scenes=[],e.scene=0);const i={};\\\\\\\"\\\\\\\"!==t.name&&(i.name=t.name),e.scenes.push(i);const s=[];for(let e=0,i=t.children.length;e<i;e++){const i=t.children[e];if(i.visible||!1===n.onlyVisible){const t=this.processNode(i);null!==t&&s.push(t)}}s.length>0&&(i.nodes=s),this.serializeUserData(t,i)}processObjects(t){const e=new zE;e.name=\\\\\\\"AuxScene\\\\\\\";for(let n=0;n<t.length;n++)e.children.push(t[n]);this.processScene(e)}processInput(t){const e=this.options;t=t instanceof Array?t:[t],this._invokeAll((function(e){e.beforeParse&&e.beforeParse(t)}));const n=[];for(let e=0;e<t.length;e++)t[e]instanceof zE?this.processScene(t[e]):n.push(t[e]);n.length>0&&this.processObjects(n);for(let t=0;t<this.skins.length;++t)this.processSkin(this.skins[t]);for(let n=0;n<e.animations.length;++n)this.processAnimation(e.animations[n],t[0]);this._invokeAll((function(e){e.afterParse&&e.afterParse(t)}))}_invokeAll(t){for(let e=0,n=this.plugins.length;e<n;e++)t(this.plugins[e])}}class nQ{constructor(t){this.writer=t,this.name=\\\\\\\"KHR_lights_punctual\\\\\\\"}writeNode(t,e){if(!t.isLight)return;if(!t.isDirectionalLight&&!t.isPointLight&&!t.isSpotLight)return void console.warn(\\\\\\\"THREE.GLTFExporter: Only directional, point, and spot lights are supported.\\\\\\\",t);const n=this.writer,i=n.json,s=n.extensionsUsed,r={};t.name&&(r.name=t.name),r.color=t.color.toArray(),r.intensity=t.intensity,t.isDirectionalLight?r.type=\\\\\\\"directional\\\\\\\":t.isPointLight?(r.type=\\\\\\\"point\\\\\\\",t.distance>0&&(r.range=t.distance)):t.isSpotLight&&(r.type=\\\\\\\"spot\\\\\\\",t.distance>0&&(r.range=t.distance),r.spot={},r.spot.innerConeAngle=(t.penumbra-1)*t.angle*-1,r.spot.outerConeAngle=t.angle),void 0!==t.decay&&2!==t.decay&&console.warn(\\\\\\\"THREE.GLTFExporter: Light decay may be lost. glTF is physically-based, and expects light.decay=2.\\\\\\\"),!t.target||t.target.parent===t&&0===t.target.position.x&&0===t.target.position.y&&-1===t.target.position.z||console.warn(\\\\\\\"THREE.GLTFExporter: Light direction may be lost. For best results, make light.target a child of the light with position 0,0,-1.\\\\\\\"),s[this.name]||(i.extensions=i.extensions||{},i.extensions[this.name]={lights:[]},s[this.name]=!0);const o=i.extensions[this.name].lights;o.push(r),e.extensions=e.extensions||{},e.extensions[this.name]={light:o.length-1}}}class iQ{constructor(t){this.writer=t,this.name=\\\\\\\"KHR_materials_unlit\\\\\\\"}writeMaterial(t,e){if(!t.isMeshBasicMaterial)return;const n=this.writer.extensionsUsed;e.extensions=e.extensions||{},e.extensions[this.name]={},n[this.name]=!0,e.pbrMetallicRoughness.metallicFactor=0,e.pbrMetallicRoughness.roughnessFactor=.9}}class sQ{constructor(t){this.writer=t,this.name=\\\\\\\"KHR_materials_pbrSpecularGlossiness\\\\\\\"}writeMaterial(t,e){if(!t.isGLTFSpecularGlossinessMaterial)return;const n=this.writer,i=n.extensionsUsed,s={};e.pbrMetallicRoughness.baseColorFactor&&(s.diffuseFactor=e.pbrMetallicRoughness.baseColorFactor);const r=[1,1,1];if(t.specular.toArray(r,0),s.specularFactor=r,s.glossinessFactor=t.glossiness,e.pbrMetallicRoughness.baseColorTexture&&(s.diffuseTexture=e.pbrMetallicRoughness.baseColorTexture),t.specularMap){const e={index:n.processTexture(t.specularMap)};n.applyTextureTransform(e,t.specularMap),s.specularGlossinessTexture=e}e.extensions=e.extensions||{},e.extensions[this.name]=s,i[this.name]=!0}}class rQ{constructor(t){this.writer=t,this.name=\\\\\\\"KHR_materials_transmission\\\\\\\"}writeMaterial(t,e){if(!t.isMeshPhysicalMaterial||0===t.transmission)return;const n=this.writer,i=n.extensionsUsed,s={};if(s.transmissionFactor=t.transmission,t.transmissionMap){const e={index:n.processTexture(t.transmissionMap)};n.applyTextureTransform(e,t.transmissionMap),s.transmissionTexture=e}e.extensions=e.extensions||{},e.extensions[this.name]=s,i[this.name]=!0}}class oQ{constructor(t){this.writer=t,this.name=\\\\\\\"KHR_materials_volume\\\\\\\"}writeMaterial(t,e){if(!t.isMeshPhysicalMaterial||0===t.thickness)return;const n=this.writer,i=n.extensionsUsed,s={};if(s.thicknessFactor=t.thickness,t.thicknessMap){const e={index:n.processTexture(t.thicknessMap)};n.applyTextureTransform(e,t.thicknessMap),s.thicknessTexture=e}s.attenuationDistance=t.attenuationDistance,s.attenuationColor=t.attenuationTint.toArray(),e.extensions=e.extensions||{},e.extensions[this.name]=s,i[this.name]=!0}}function aQ(t,e){const n=document.createElement(\\\\\\\"a\\\\\\\");n.style.display=\\\\\\\"none\\\\\\\",document.body.appendChild(n),n.href=URL.createObjectURL(t),n.download=e,n.click(),setTimeout((()=>{document.body.removeChild(n)}),10)}CK.Utils={insertKeyframe:function(t,e){const n=.001,i=t.getValueSize(),s=new t.TimeBufferType(t.times.length+1),r=new t.ValueBufferType(t.values.length+i),o=t.createInterpolant(new t.ValueBufferType(i));let a;if(0===t.times.length){s[0]=e;for(let t=0;t<i;t++)r[t]=0;a=0}else if(e<t.times[0]){if(Math.abs(t.times[0]-e)<n)return 0;s[0]=e,s.set(t.times,1),r.set(o.evaluate(e),0),r.set(t.values,i),a=0}else if(e>t.times[t.times.length-1]){if(Math.abs(t.times[t.times.length-1]-e)<n)return t.times.length-1;s[s.length-1]=e,s.set(t.times,0),r.set(t.values,0),r.set(o.evaluate(e),t.values.length),a=s.length-1}else for(let l=0;l<t.times.length;l++){if(Math.abs(t.times[l]-e)<n)return l;if(t.times[l]<e&&t.times[l+1]>e){s.set(t.times.slice(0,l+1),0),s[l+1]=e,s.set(t.times.slice(l+1),l+2),r.set(t.values.slice(0,(l+1)*i),0),r.set(o.evaluate(e),(l+1)*i),r.set(t.values.slice((l+1)*i),(l+2)*i),a=l+1;break}}return t.times=s,t.values=r,a},mergeMorphTargetTracks:function(t,e){const n=[],i={},s=t.tracks;for(let t=0;t<s.length;++t){let r=s[t];const o=ZN.parseTrackName(r.name),a=ZN.findNode(e,o.nodeName);if(\\\\\\\"morphTargetInfluences\\\\\\\"!==o.propertyName||void 0===o.propertyIndex){n.push(r);continue}if(r.createInterpolant!==r.InterpolantFactoryMethodDiscrete&&r.createInterpolant!==r.InterpolantFactoryMethodLinear){if(r.createInterpolant.isInterpolantFactoryMethodGLTFCubicSpline)throw new Error(\\\\\\\"THREE.GLTFExporter: Cannot merge tracks with glTF CUBICSPLINE interpolation.\\\\\\\");console.warn(\\\\\\\"THREE.GLTFExporter: Morph target interpolation mode not yet supported. Using LINEAR instead.\\\\\\\"),r=r.clone(),r.setInterpolation(Ux)}const l=a.morphTargetInfluences.length,c=a.morphTargetDictionary[o.propertyIndex];if(void 0===c)throw new Error(\\\\\\\"THREE.GLTFExporter: Morph target name not found: \\\\\\\"+o.propertyIndex);let h;if(void 0===i[a.uuid]){h=r.clone();const t=new h.ValueBufferType(l*h.times.length);for(let e=0;e<h.times.length;e++)t[e*l+c]=h.values[e];h.name=(o.nodeName||\\\\\\\"\\\\\\\")+\\\\\\\".morphTargetInfluences\\\\\\\",h.values=t,i[a.uuid]=h,n.push(h);continue}const u=r.createInterpolant(new r.ValueBufferType(1));h=i[a.uuid];for(let t=0;t<h.times.length;t++)h.values[t*l+c]=u.evaluate(h.times[t]);for(let t=0;t<r.times.length;t++){const e=this.insertKeyframe(h,r.times[t]);h.values[e*l+c]=r.values[t]}}return t.tracks=n,t}};const lQ=new class extends ua{constructor(){super(...arguments),this.export=ha.BUTTON(null,{callback:t=>{cQ.PARAM_CALLBACK_export(t)}})}};class cQ extends uV{constructor(){super(...arguments),this.paramsConfig=lQ}static type(){return\\\\\\\"exporter\\\\\\\"}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(Qi.NEVER)}async cook(t){this.setCoreGroup(t[0])}static PARAM_CALLBACK_export(t){t._paramCallbackExport()}async _paramCallbackExport(){const t=(await this.compute()).coreContent();if(!t)return void console.error(\\\\\\\"input invalid\\\\\\\");const e=new WeakMap,n=t.objects();for(let t of n)e.set(t,t.parent);const i=new vs;for(let t of n)i.add(t);(new CK).parse(i,(t=>{if(t instanceof ArrayBuffer)i=\\\\\\\"scene.glb\\\\\\\",aQ(new Blob([t],{type:\\\\\\\"application/octet-stream\\\\\\\"}),i);else{!function(t,e){aQ(new Blob([t],{type:\\\\\\\"text/plain\\\\\\\"}),e)}(JSON.stringify(t,null,2),\\\\\\\"scene.gltf\\\\\\\")}var i;for(let t of n){const n=e.get(t);n&&n.add(t)}}),{embedImages:!0})}}const hQ=new class extends ua{constructor(){super(...arguments),this.makeFacesUnique=ha.BOOLEAN(0),this.addFaceCenterAttribute=ha.BOOLEAN(0,{visibleIf:{makeFacesUnique:1}}),this.addFaceId=ha.BOOLEAN(0,{visibleIf:{makeFacesUnique:1}}),this.transform=ha.BOOLEAN(0,{visibleIf:{makeFacesUnique:1}}),this.scale=ha.FLOAT(1,{visibleIf:{makeFacesUnique:1,transform:1}})}};class uQ extends uV{constructor(){super(...arguments),this.paramsConfig=hQ}static type(){return\\\\\\\"face\\\\\\\"}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(Qi.FROM_NODE)}cook(t){const e=t[0];this.pv.makeFacesUnique&&(this._makeFacesUnique(e),this.pv.addFaceCenterAttribute&&this._addFaceCenterAttribute(e),this.pv.addFaceId&&this._addFaceId(e),this.pv.transform&&this._transform_faces(e)),this.setCoreGroup(e)}_makeFacesUnique(t){var e;for(let n of t.objects())if(n.isMesh){const t=n.geometry,i=f.chunk((null===(e=t.index)||void 0===e?void 0:e.array)||[],3),s=3*i.length;for(let e of Object.keys(t.attributes)){const n=t.attributes[e],r=n.itemSize,o=new Float32Array(s*r);let a=0;i.forEach((t=>{t.forEach((t=>{for(let e=0;e<r;e++){const i=n.array[t*r+e];o[a]=i,a+=1}}))})),t.setAttribute(e,new C.a(o,r))}const r=f.range(s);t.setIndex(r)}}_addFaceCenterAttribute(t){const e=\\\\\\\"face_center\\\\\\\",n=new p.a;let i,s,r,o;t.coreObjects().forEach((t=>{const a=t.object(),l=t.coreGeometry();if(a.isMesh&&l){i=l.faces(),l.hasAttrib(e)||l.addNumericAttrib(e,3,-1);for(let t=0;t<i.length;t++){s=i[t],s.center(n),r=s.points();for(let t=0;t<r.length;t++)o=r[t],o.setAttribValue(e,n)}}}))}_addFaceId(t){const e=\\\\\\\"face_id\\\\\\\";t.coreObjects().forEach((t=>{const n=t.object(),i=t.coreGeometry();if(n.isMesh&&i){const t=i.faces();i.hasAttrib(e)||i.addNumericAttrib(e,1,-1);for(let n=0;n<t.length;n++){const i=t[n].points();for(let t=0;t<i.length;t++){i[t].setAttribValue(e,n)}}}}))}_transform_faces(t){const e=\\\\\\\"position\\\\\\\",n=new p.a,i=new p.a,s=this.pv.scale;let r,o,a,l;t.coreObjects().forEach((t=>{const c=t.object(),h=t.coreGeometry();if(c.isMesh&&h){r=h.faces(),h.hasAttrib(e)||h.addNumericAttrib(e,3,-1);for(let t=0;t<r.length;t++){o=r[t],o.center(n),a=o.points();for(let t=0;t<a.length;t++){l=a[t];const r=l.position();i.x=r.x*s+n.x*(1-s),i.y=r.y*s+n.y*(1-s),i.z=r.z*s+n.z*(1-s),l.setAttribValue(e,i)}}}}))}}var dQ;!function(t){t.AUTO=\\\\\\\"auto\\\\\\\",t.DRC=\\\\\\\"drc\\\\\\\",t.FBX=\\\\\\\"fbx\\\\\\\",t.JSON=\\\\\\\"json\\\\\\\",t.GLTF=\\\\\\\"gltf\\\\\\\",t.GLTF_WITH_DRACO=\\\\\\\"gltf_with_draco\\\\\\\",t.OBJ=\\\\\\\"obj\\\\\\\",t.PDB=\\\\\\\"pdb\\\\\\\",t.PLY=\\\\\\\"ply\\\\\\\",t.STL=\\\\\\\"stl\\\\\\\"}(dQ||(dQ={}));const pQ=[dQ.AUTO,dQ.DRC,dQ.FBX,dQ.JSON,dQ.GLTF,dQ.GLTF_WITH_DRACO,dQ.OBJ,dQ.PDB,dQ.PLY,dQ.STL];var _Q;!function(t){t.DRC=\\\\\\\"drc\\\\\\\",t.FBX=\\\\\\\"fbx\\\\\\\",t.GLTF=\\\\\\\"gltf\\\\\\\",t.GLB=\\\\\\\"glb\\\\\\\",t.OBJ=\\\\\\\"obj\\\\\\\",t.PDB=\\\\\\\"pdb\\\\\\\",t.PLY=\\\\\\\"ply\\\\\\\",t.STL=\\\\\\\"stl\\\\\\\"}(_Q||(_Q={}));_Q.DRC,_Q.FBX,_Q.GLTF,_Q.GLB,_Q.OBJ,_Q.PDB,_Q.PLY,_Q.STL;class mQ extends $g{constructor(t,e,n){super(t.url,e,n),this._options=t,this._scene=e,this._node=n}load(t,e){this._load().then((e=>{t(e)})).catch((t=>{e(t)}))}_load(){return new Promise((async(t,e)=>{const n=await this._urlToLoad(),i=this.extension();if(i==dQ.JSON&&this._options.format==dQ.AUTO)mQ.increment_in_progress_loads_count(),await mQ.wait_for_max_concurrent_loads_queue_freed(),fetch(n).then((async e=>{const n=await e.json();new PJ(this.loadingManager).parse(n,(e=>{mQ.decrement_in_progress_loads_count(),t(this.on_load_success(e.children[0]))}))})).catch((t=>{mQ.decrement_in_progress_loads_count(),e(t)}));else{const s=await this._loaderForFormat();if(s)mQ.increment_in_progress_loads_count(),await mQ.wait_for_max_concurrent_loads_queue_freed(),s.load(n,(e=>{this.on_load_success(e).then((e=>{mQ.decrement_in_progress_loads_count(),t(e)}))}),void 0,(t=>{li.warn(\\\\\\\"error loading\\\\\\\",n,t),mQ.decrement_in_progress_loads_count(),e(t)}));else{e(`format not supported (${i})`)}}}))}async on_load_success(t){const e=this.extension();if(e==dQ.JSON)return[t];const n=t;if(n.isObject3D)switch(e){case _Q.PDB:return this.on_load_succes_pdb(t);case _Q.OBJ:default:return[n]}const i=t;if(i.isBufferGeometry)switch(e){case _Q.DRC:return this.on_load_succes_drc(i);default:return[new B.a(i)]}const s=t;if(null!=s.scene)switch(e){case _Q.GLTF:case _Q.GLB:return this.on_load_succes_gltf(s);default:return[n]}const r=t;if(r.geometryAtoms||r.geometryBonds)switch(e){case _Q.PDB:return this.on_load_succes_pdb(r);default:return[]}return[]}on_load_succes_drc(t){return[new B.a(t,mQ._default_mat_mesh)]}on_load_succes_gltf(t){const e=t.scene;return e.animations=t.animations,[e]}on_load_succes_pdb(t){return[new ys.a(t.geometryAtoms,mQ._default_mat_point),new Ms.a(t.geometryBonds,mQ._default_mat_line)]}static moduleNamesFromFormat(t,e){switch(t){case dQ.AUTO:return this.moduleNamesFromExt(e);case dQ.DRC:return[Hn.DRACOLoader];case dQ.FBX:return[Hn.FBXLoader];case dQ.JSON:return[];case dQ.GLTF:return[Hn.GLTFLoader];case dQ.GLTF_WITH_DRACO:return[Hn.GLTFLoader,Hn.DRACOLoader];case dQ.OBJ:return[Hn.OBJLoader];case dQ.PDB:return[Hn.PDBLoader];case dQ.PLY:return[Hn.PLYLoader];case dQ.STL:return[Hn.STLLoader]}os.unreachable(t)}static moduleNamesFromExt(t){switch(t){case _Q.DRC:return[Hn.DRACOLoader];case _Q.FBX:return[Hn.FBXLoader];case _Q.GLTF:return[Hn.GLTFLoader];case _Q.GLB:return[Hn.GLTFLoader,Hn.DRACOLoader];case _Q.OBJ:return[Hn.OBJLoader];case _Q.PDB:return[Hn.PDBLoader];case _Q.PLY:return[Hn.PLYLoader];case _Q.STL:return[Hn.STLLoader]}}async _loaderForFormat(){const t=this._options.format;switch(t){case dQ.AUTO:return this._loaderForExt();case dQ.DRC:return this.loader_for_drc(this._node);case dQ.FBX:return this.loader_for_fbx();case dQ.JSON:return;case dQ.GLTF:return this.loader_for_gltf();case dQ.GLTF_WITH_DRACO:return this.loader_for_glb(this._node);case dQ.OBJ:return this.loader_for_obj();case dQ.PDB:return this.loader_for_pdb();case dQ.PLY:return this.loader_for_ply();case dQ.STL:return this.loader_for_stl()}os.unreachable(t)}async _loaderForExt(){switch(this.extension().toLowerCase()){case _Q.DRC:return this.loader_for_drc(this._node);case _Q.FBX:return this.loader_for_fbx();case _Q.GLTF:return this.loader_for_gltf();case _Q.GLB:return this.loader_for_glb(this._node);case _Q.OBJ:return this.loader_for_obj();case _Q.PDB:return this.loader_for_pdb();case _Q.PLY:return this.loader_for_ply();case _Q.STL:return this.loader_for_stl()}}loader_for_fbx(){const t=li.modulesRegister.module(Hn.FBXLoader);if(t)return new t(this.loadingManager)}loader_for_gltf(){const t=li.modulesRegister.module(Hn.GLTFLoader);if(t)return new t(this.loadingManager)}static async loader_for_drc(t){const e=li.modulesRegister.module(Hn.DRACOLoader);if(e){const n=new e(this.loadingManager),i=li.libs.root(),s=li.libs.DRACOPath();if(i||s){const e=`${i||\\\\\\\"\\\\\\\"}${s||\\\\\\\"\\\\\\\"}/`;if(t){const n=[\\\\\\\"draco_decoder.js\\\\\\\",\\\\\\\"draco_decoder.wasm\\\\\\\",\\\\\\\"draco_wasm_wrapper.js\\\\\\\"];await this._loadMultipleBlobGlobal({files:n.map((t=>({storedUrl:`${s}/${t}`,fullUrl:`${e}${t}`}))),node:t,error:\\\\\\\"failed to load draco libraries. Make sure to install them to load .glb files\\\\\\\"})}n.setDecoderPath(e)}else n.setDecoderPath(void 0);return n.setDecoderConfig({type:\\\\\\\"js\\\\\\\"}),n}}loader_for_drc(t){return mQ.loader_for_drc(t)}static async loader_for_glb(t){const e=li.modulesRegister.module(Hn.GLTFLoader),n=li.modulesRegister.module(Hn.DRACOLoader);if(e&&n){this.gltf_loader=this.gltf_loader||new e(this.loadingManager),this.draco_loader=this.draco_loader||new n(this.loadingManager);const i=li.libs.root(),s=li.libs.DRACOGLTFPath();if(i||s){const e=`${i||\\\\\\\"\\\\\\\"}${s||\\\\\\\"\\\\\\\"}/`;if(t){const n=[\\\\\\\"draco_decoder.js\\\\\\\",\\\\\\\"draco_decoder.wasm\\\\\\\",\\\\\\\"draco_wasm_wrapper.js\\\\\\\"];await this._loadMultipleBlobGlobal({files:n.map((t=>({storedUrl:`${s}/${t}`,fullUrl:`${e}${t}`}))),node:t,error:\\\\\\\"failed to load draco libraries. Make sure to install them to load .glb files\\\\\\\"})}this.draco_loader.setDecoderPath(e)}else this.draco_loader.setDecoderPath(void 0);return this.gltf_loader.setDRACOLoader(this.draco_loader),this.gltf_loader}}loader_for_glb(t){return mQ.loader_for_glb(t)}loader_for_obj(){const t=li.modulesRegister.module(Hn.OBJLoader);if(t)return new t(this.loadingManager)}loader_for_pdb(){const t=li.modulesRegister.module(Hn.PDBLoader);if(t)return new t(this.loadingManager)}loader_for_ply(){const t=li.modulesRegister.module(Hn.PLYLoader);if(t)return new t(this.loadingManager)}loader_for_stl(){const t=li.modulesRegister.module(Hn.STLLoader);if(t)return new t(this.loadingManager)}static setMaxConcurrentLoadsCount(t){this._maxConcurrentLoadsCountMethod=t}static _init_max_concurrent_loads_count(){return this._maxConcurrentLoadsCountMethod?this._maxConcurrentLoadsCountMethod():ng.isChrome()?4:1}static _init_concurrent_loads_delay(){return ng.isChrome()?1:10}static increment_in_progress_loads_count(){this.in_progress_loads_count++}static decrement_in_progress_loads_count(){this.in_progress_loads_count--;const t=this._queue.pop();if(t){const e=this.CONCURRENT_LOADS_DELAY;setTimeout((()=>{t()}),e)}}static async wait_for_max_concurrent_loads_queue_freed(){return this.in_progress_loads_count<=this.MAX_CONCURRENT_LOADS_COUNT?void 0:new Promise((t=>{this._queue.push(t)}))}}mQ._default_mat_mesh=new Ts.a,mQ._default_mat_point=new bs.a,mQ._default_mat_line=new As.a,mQ.MAX_CONCURRENT_LOADS_COUNT=mQ._init_max_concurrent_loads_count(),mQ.CONCURRENT_LOADS_DELAY=mQ._init_concurrent_loads_delay(),mQ.in_progress_loads_count=0,mQ._queue=[];class fQ extends aV{static type(){return\\\\\\\"file\\\\\\\"}static loader(t,e,n){return new mQ({url:t.url,format:t.format},e,n)}cook(t,e){const n=fQ.loader(e,this.scene(),this._node);return new Promise((t=>{n.load((e=>{const n=this._onLoad(e);t(this.createCoreGroupFromObjects(n))}),(t=>{this._onError(t,e)}))}))}clearLoadedBlob(t){fQ.loader(t,this.scene(),this._node).deregisterUrl()}_onLoad(t){t=t.flat();for(let e of t)e.traverse((t=>{this._ensureGeometryHasIndex(t),t.matrixAutoUpdate=!1}));return t}_onError(t,e){var n;null===(n=this.states)||void 0===n||n.error.set(`could not load geometry from ${e.url} (${t})`)}_ensureGeometryHasIndex(t){const e=t.geometry;e&&this.createIndexIfNone(e)}}fQ.DEFAULT_PARAMS={url:`${qg}/models/wolf.obj`,format:dQ.AUTO};const gQ=fQ.DEFAULT_PARAMS;const vQ=new class extends ua{constructor(){super(...arguments),this.url=ha.STRING(gQ.url,{fileBrowse:{type:[Rr.GEOMETRY]}}),this.format=ha.STRING(gQ.format,{menuString:{entries:pQ.map((t=>({name:t,value:t})))}}),this.reload=ha.BUTTON(null,{callback:t=>{yQ.PARAM_CALLBACK_reload(t)}})}};class yQ extends uV{constructor(){super(...arguments),this.paramsConfig=vQ}static type(){return\\\\\\\"file\\\\\\\"}async requiredModules(){for(let t of[this.p.url,this.p.format])t.isDirty()&&await t.compute();const t=$g.extension(this.pv.url||\\\\\\\"\\\\\\\"),e=this.pv.format;return mQ.moduleNamesFromFormat(e,t)}initializeNode(){this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.url],(()=>{const t=this.p.url.rawInput();if(t){const e=t.split(\\\\\\\"/\\\\\\\");return e[e.length-1]}return\\\\\\\"\\\\\\\"}))}))}))}operation(){return this._operation=this._operation||new fQ(this.scene(),this.states,this)}async cook(t){const e=await this.operation().cook(t,this.pv);this.setCoreGroup(e)}static PARAM_CALLBACK_reload(t){t._paramCallbackReload()}_paramCallbackReload(){this.operation().clearLoadedBlob(this.pv),this.p.url.setDirty()}}const xQ=new class extends ua{constructor(){super(...arguments),this.url=ha.STRING(`${qg}/models/\\\\`@name\\\\`.obj`,{fileBrowse:{type:[Rr.GEOMETRY]},expression:{forEntities:!0}}),this.format=ha.STRING(dQ.AUTO,{menuString:{entries:pQ.map((t=>({name:t,value:t})))}}),this.reload=ha.BUTTON(null,{callback:t=>{bQ.PARAM_CALLBACK_reload(t)}})}};class bQ extends uV{constructor(){super(...arguments),this.paramsConfig=xQ,this._instancer=new LZ,this._instanceMatrix=new A.a}static type(){return\\\\\\\"fileMulti\\\\\\\"}async requiredModules(){const t=$g.extension(this.p.url.rawInput()||\\\\\\\"\\\\\\\"),e=this.pv.format;return mQ.moduleNamesFromFormat(e,t)}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(Qi.NEVER),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.url],(()=>this.p.url.rawInput()))}))}))}async cook(t){const e=t[0],n=e.points(),i=[],s=new Map,r=new Map,o=new Map,a=this.p.url;if(a.hasExpression()&&a.expressionController){const t=new Set;await a.expressionController.computeExpressionForPoints(n,((e,n)=>{const i=e.index();s.has(i)?this.states.error.set(\\\\\\\"input points have duplicate indices. Make sure to merge inputs together.\\\\\\\"):(s.set(i,n),t.add(n),bQ._incrementUrlUsageCount(n,o))})),t.forEach((t=>{i.push(t)}))}else{const t=this.pv.url;i.push(t),bQ._incrementUrlUsageCount(t,o)}const l=[],c=i.map((t=>this._loadFromUrlPromises(t,r)));await Promise.all(c),this._instancer.setCoreGroup(e);for(let t of n){const e=t.index(),n=s.get(e)||this.pv.url;this._instancer.matrixFromPoint(t,this._instanceMatrix);const i=o.get(n)||1;let a=r.get(n);a&&(i>1&&(a=a.clone()),a.applyMatrix4(this._instanceMatrix),l.push(a))}this.setObjects(l)}static _incrementUrlUsageCount(t,e){const n=e.get(t);null!=n?e.set(t,n+1):e.set(t,1)}async _loadFromUrlPromises(t,e){const n=await this._loadObject(t),i=new Fn.a;i.matrixAutoUpdate=!1,i.name=t;for(let t of n)i.add(t);e.set(t,i)}_loadObject(t){const e=new mQ({url:t,format:this.pv.format},this.scene(),this);return new Promise((n=>{e.load((t=>{const e=this._onLoad(t);n(e)}),(e=>{this._onError(e,t)}))}))}_onLoad(t){t=t.flat();for(let e of t)e.traverse((t=>{this._ensureGeometryHasIndex(t),t.matrixAutoUpdate=!1}));return t}_onError(t,e){var n;null===(n=this.states)||void 0===n||n.error.set(`could not load geometry from ${e} (${t})`)}_ensureGeometryHasIndex(t){const e=t.geometry;e&&pr.createIndexIfNone(e)}static PARAM_CALLBACK_reload(t){t._paramCallbackReload()}_paramCallbackReload(){this.p.url.setDirty()}}const wQ=new class extends ua{constructor(){super(...arguments),this.dist=ha.FLOAT(.1,{range:[0,1],rangeLocked:[!0,!1]})}};class TQ extends uV{constructor(){super(...arguments),this.paramsConfig=wQ}static type(){return\\\\\\\"fuse\\\\\\\"}static displayedInputNames(){return[\\\\\\\"points to fuse together\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(Qi.FROM_NODE)}cook(t){const e=t[0],n=[];let i;for(let t of e.coreObjects())i=this._fuse_core_object(t),i&&n.push(i);this.setObjects(n)}_fuse_core_object(t){const e=t.object();if(!e)return;const n=t.points(),i=this.pv.dist,s={};for(let t of n){const e=t.position(),n=new p.a(Math.round(e.x/i),Math.round(e.y/i),Math.round(e.z/i)).toArray().join(\\\\\\\"-\\\\\\\");s[n]=s[n]||[],s[n].push(t)}const r=[];if(Object.keys(s).forEach((t=>{r.push(s[t][0])})),e.geometry.dispose(),r.length>0){const t=fr.geometryFromPoints(r,Os(e.constructor));return t&&(e.geometry=t),e}}}class AQ{constructor(t,e,n){this._param_size=t,this._param_hexagon_radius=e,this._param_points_only=n}process(){const t=this._param_hexagon_radius,e=.5*t,n=t,i=Math.cos(Math.PI/6)*this._param_hexagon_radius,s=Math.floor(this._param_size.x/n),r=Math.floor(this._param_size.y/i);let o=[],a=[];for(let t=0;t<r;t++)for(let r=0;r<s;r++)o.push([-.5*this._param_size.x+r*n+(t%2==0?e:0),0,-.5*this._param_size.y+t*i]),this._param_points_only||t>=1&&(0==r||r==s-1?0==r?a.push([r+1+(t-1)*s,r+(t-1)*s,r+t*s]):a.push([r+t*s,r+(t-1)*s,r-1+t*s]):(a.push([r+t*s,r+(t-1)*s,r-1+t*s]),a.push([r+t*s,r+1+(t-1)*s,r+(t-1)*s])));const l=new S.a;return l.setAttribute(\\\\\\\"position\\\\\\\",new C.a(new Float32Array(o.flat()),3)),this._param_points_only||(l.setIndex(a.flat()),l.computeVertexNormals()),l}}const MQ=new p.a(0,1,0);const EQ=new class extends ua{constructor(){super(...arguments),this.size=ha.VECTOR2([1,1]),this.hexagonRadius=ha.FLOAT(.1,{range:[.001,1],rangeLocked:[!1,!1]}),this.direction=ha.VECTOR3([0,1,0]),this.pointsOnly=ha.BOOLEAN(0)}};class SQ extends uV{constructor(){super(...arguments),this.paramsConfig=EQ,this._coreTransform=new bU}static type(){return\\\\\\\"hexagons\\\\\\\"}cook(){if(this.pv.hexagonRadius>0){const t=new AQ(this.pv.size,this.pv.hexagonRadius,this.pv.pointsOnly).process();this._coreTransform.rotateGeometry(t,MQ,this.pv.direction),this.pv.pointsOnly?this.setGeometry(t,Ns.POINTS):this.setGeometry(t)}else this.setObjects([])}}var CQ;!function(t){t.ADD_PARENT=\\\\\\\"add_parent\\\\\\\",t.REMOVE_PARENT=\\\\\\\"remove_parent\\\\\\\",t.ADD_CHILD=\\\\\\\"add_child\\\\\\\"}(CQ||(CQ={}));const NQ=[CQ.ADD_PARENT,CQ.REMOVE_PARENT,CQ.ADD_CHILD];class LQ extends aV{static type(){return\\\\\\\"hierarchy\\\\\\\"}cook(t,e){const n=t[0],i=NQ[e.mode];switch(i){case CQ.ADD_PARENT:{const t=this._add_parent_to_core_group(n,e);return this.createCoreGroupFromObjects(t)}case CQ.REMOVE_PARENT:{const t=this._remove_parent_from_core_group(n,e);return this.createCoreGroupFromObjects(t)}case CQ.ADD_CHILD:{const i=this._add_child_to_core_group(n,t[1],e);return this.createCoreGroupFromObjects(i)}}os.unreachable(i)}_add_parent_to_core_group(t,e){if(0==e.levels)return t.objects();return[this._add_parent_to_object(t.objects(),e)]}_add_parent_to_object(t,e){let n=new Fn.a;if(n.matrixAutoUpdate=!1,n.add(...t),e.levels>0)for(let t=0;t<e.levels-1;t++)n=this._add_new_parent(n,e);return n}_add_new_parent(t,e){const n=new Fn.a;return n.matrixAutoUpdate=!1,n.add(t),n}_remove_parent_from_core_group(t,e){if(0==e.levels)return t.objects();{const n=[];for(let i of t.objects()){const t=this._remove_parent_from_object(i,e);for(let e of t)n.push(e)}return n}}_remove_parent_from_object(t,e){let n=t.children;for(let t=0;t<e.levels-1;t++)n=this._get_children_from_objects(n,e);return n}_get_children_from_objects(t,e){let n;const i=[];for(;n=t.pop();)if(n.children)for(let t of n.children)i.push(t);return i}_add_child_to_core_group(t,e,n){var i,s;const r=t.objects();if(!e)return null===(i=this.states)||void 0===i||i.error.set(\\\\\\\"input 1 is invalid\\\\\\\"),[];const o=e.objects(),a=n.objectMask.trim(),l=\\\\\\\"\\\\\\\"!=a?this._findObjectsByMaskFromObjects(a,r):r;n.debugObjectMask&&console.log(l);for(let t=0;t<l.length;t++){const e=l[t],n=o[t]||o[0];if(!n)return null===(s=this.states)||void 0===s||s.error.set(\\\\\\\"no objects found in input 1\\\\\\\"),[];e.add(n)}return r}_findObjectsByMaskFromObjects(t,e){const n=[];for(let i of e)this.scene().objectsController.objectsByMaskInObject(t,i,n);return n}}LQ.DEFAULT_PARAMS={mode:0,levels:1,objectMask:\\\\\\\"\\\\\\\",debugObjectMask:!1},LQ.INPUT_CLONED_STATE=Qi.FROM_NODE;const OQ=[CQ.ADD_PARENT,CQ.REMOVE_PARENT],PQ=LQ.DEFAULT_PARAMS;const RQ=new class extends ua{constructor(){super(...arguments),this.mode=ha.INTEGER(PQ.mode,{menu:{entries:NQ.map(((t,e)=>({name:t,value:e})))}}),this.levels=ha.INTEGER(PQ.levels,{range:[0,5],visibleIf:[{mode:NQ.indexOf(CQ.ADD_PARENT)},{mode:NQ.indexOf(CQ.REMOVE_PARENT)}]}),this.objectMask=ha.STRING(\\\\\\\"\\\\\\\",{visibleIf:{mode:NQ.indexOf(CQ.ADD_CHILD)}}),this.debugObjectMask=ha.BOOLEAN(0,{visibleIf:{mode:NQ.indexOf(CQ.ADD_CHILD)}})}};class IQ extends uV{constructor(){super(...arguments),this.paramsConfig=RQ}static type(){return\\\\\\\"hierarchy\\\\\\\"}static displayedInputNames(){return[\\\\\\\"geometry to add or remove parents to/from\\\\\\\",\\\\\\\"objects to use as parent or children (optional)\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1,2),this.io.inputs.initInputsClonedState(LQ.INPUT_CLONED_STATE),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.mode,this.p.levels,this.p.objectMask],(()=>{const t=NQ[this.pv.mode];return OQ.includes(t)?`${t} ${this.pv.levels}`:`${t} (with mask: ${this.pv.objectMask})`}))}))}))}cook(t){this._operation=this._operation||new LQ(this._scene,this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}const FQ=new class extends ua{constructor(){super(...arguments),this.texture=ha.OPERATOR_PATH(vi.UV,{nodeSelection:{context:ts.COP}}),this.mult=ha.FLOAT(1)}};class DQ extends uV{constructor(){super(...arguments),this.paramsConfig=FQ}static type(){return\\\\\\\"heightMap\\\\\\\"}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(Qi.FROM_NODE)}async cook(t){const e=t[0],n=this.p.texture.found_node();if(n){if(n.context()==ts.COP){const t=n,i=(await t.compute()).texture();for(let t of e.coreObjects())this._set_position_from_data_texture(t,i)}else this.states.error.set(\\\\\\\"found node is not a texture\\\\\\\")}e.computeVertexNormals(),this.setCoreGroup(e)}_set_position_from_data_texture(t,e){var n;const i=this._data_from_texture(e);if(!i)return;const{data:s,resx:r,resy:o}=i,a=s.length/(r*o),l=null===(n=t.coreGeometry())||void 0===n?void 0:n.geometry();if(!l)return;const c=l.getAttribute(\\\\\\\"position\\\\\\\").array,h=l.getAttribute(\\\\\\\"uv\\\\\\\"),u=l.getAttribute(\\\\\\\"normal\\\\\\\");if(null==h)return void this.states.error.set(\\\\\\\"uvs are required\\\\\\\");if(null==u)return void this.states.error.set(\\\\\\\"normals are required\\\\\\\");const d=h.array,p=u.array,_=c.length/3;let m,f,g,v,y,x,b,w=0;for(let t=0;t<_;t++)m=2*t,f=d[m],g=d[m+1],v=Math.floor((r-1)*f),y=Math.floor((o-1)*(1-g)),x=y*r+v,b=s[a*x],w=3*t,c[w+0]+=p[w+0]*b*this.pv.mult,c[w+1]+=p[w+1]*b*this.pv.mult,c[w+2]+=p[w+2]*b*this.pv.mult}_data_from_texture(t){if(t.image)return t.image.data?this._data_from_data_texture(t):this._data_from_default_texture(t)}_data_from_default_texture(t){const e=t.image.width,n=t.image.height;return{data:Bf.data_from_image(t.image).data,resx:e,resy:n}}_data_from_data_texture(t){return{data:t.image.data,resx:t.image.width,resy:t.image.height}}}function BQ(t){return Math.atan2(-t.y,Math.sqrt(t.x*t.x+t.z*t.z))}class zQ extends S.a{constructor(t,e,n,i,s){super(),this.type=\\\\\\\"PolyhedronBufferGeometry\\\\\\\",this.parameters={vertices:t,indices:e,radius:n,detail:i},n=n||1,i=i||0;const r=[],o=[],a=new Map;function l(t,e,n,i){const s=i+1,r=[];for(let i=0;i<=s;i++){r[i]=[];const o=t.clone().lerp(n,i/s),a=e.clone().lerp(n,i/s),l=s-i;for(let t=0;t<=l;t++)r[i][t]=0===t&&i===s?o:o.clone().lerp(a,t/l)}for(let t=0;t<s;t++)for(let e=0;e<2*(s-t)-1;e++){const n=Math.floor(e/2);e%2==0?(c(r[t][n+1]),c(r[t+1][n]),c(r[t][n])):(c(r[t][n+1]),c(r[t+1][n+1]),c(r[t+1][n]))}}function c(t){if(s){let e=a.get(t.x);if(e){const n=e.get(t.y);if(n&&n.has(t.z))return}e||(e=new Map,a.set(t.x,e));let n=e.get(t.y);n||(n=new Set,e.set(t.y,n)),n.add(t.z)}r.push(t.x,t.y,t.z)}function h(e,n){const i=3*e;n.x=t[i+0],n.y=t[i+1],n.z=t[i+2]}!function(t){const n=new p.a,i=new p.a,s=new p.a;for(let r=0;r<e.length;r+=3)h(e[r+0],n),h(e[r+1],i),h(e[r+2],s),l(n,i,s,t)}(i),function(t){const e=new p.a;for(let n=0;n<r.length;n+=3)e.x=r[n+0],e.y=r[n+1],e.z=r[n+2],e.normalize().multiplyScalar(t),r[n+0]=e.x,r[n+1]=e.y,r[n+2]=e.z}(n),function(){const t=new p.a;for(let n=0;n<r.length;n+=3){t.x=r[n+0],t.y=r[n+1],t.z=r[n+2];const i=(e=t,Math.atan2(e.z,-e.x)/2/Math.PI+.5),s=BQ(t)/Math.PI+.5;o.push(i,1-s)}var e}(),this.setAttribute(\\\\\\\"position\\\\\\\",new C.c(r,3)),this.setAttribute(\\\\\\\"uv\\\\\\\",new C.c(o,2)),s||(this.setAttribute(\\\\\\\"normal\\\\\\\",new C.c(r.slice(),3)),0===i?this.computeVertexNormals():this.normalizeNormals())}}class kQ extends zQ{constructor(t,e,n){const i=(1+Math.sqrt(5))/2;super([-1,i,0,1,i,0,-1,-i,0,1,-i,0,0,-1,i,0,1,i,0,-1,-i,0,1,-i,i,0,-1,i,0,1,-i,0,-1,-i,0,1],[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],t,e,n),this.type=\\\\\\\"IcosahedronBufferGeometry\\\\\\\",this.parameters={radius:t,detail:e}}}class UQ extends aV{static type(){return\\\\\\\"icosahedron\\\\\\\"}cook(t,e){const n=e.pointsOnly,i=new kQ(e.radius,e.detail,n);if(i.translate(e.center.x,e.center.y,e.center.z),n){const t=this.createObject(i,Ns.POINTS);return this.createCoreGroupFromObjects([t])}return i.computeVertexNormals(),this.createCoreGroupFromGeometry(i)}}UQ.DEFAULT_PARAMS={radius:1,detail:0,pointsOnly:!1,center:new p.a(0,0,0)};const GQ=UQ.DEFAULT_PARAMS;const VQ=new class extends ua{constructor(){super(...arguments),this.radius=ha.FLOAT(GQ.radius),this.detail=ha.INTEGER(GQ.detail,{range:[0,10],rangeLocked:[!0,!1]}),this.pointsOnly=ha.BOOLEAN(GQ.pointsOnly),this.center=ha.VECTOR3(GQ.center)}};class HQ extends uV{constructor(){super(...arguments),this.paramsConfig=VQ}static type(){return\\\\\\\"icosahedron\\\\\\\"}cook(){this._operation=this._operation||new UQ(this._scene,this.states);const t=this._operation.cook([],this.pv);this.setCoreGroup(t)}}class jQ extends aV{static type(){return\\\\\\\"instance\\\\\\\"}async cook(t,e){const n=t[0];this._geometry=void 0;const i=n.objectsWithGeo()[0];if(i){const n=i.geometry;if(n){const i=t[1];this._create_instance(n,i,e)}}if(this._geometry){const t=(s=i)instanceof B.a?Ns.MESH:s instanceof Fn.a?Ns.GROUP:s instanceof Ms.a?Ns.LINE_SEGMENTS:s instanceof ys.a?Ns.POINTS:s instanceof Q.a?Ns.OBJECT3D:void li.warn(\\\\\\\"ObjectTypeByObject received an unknown object type\\\\\\\",s);if(t){const n=this.createObject(this._geometry,t);if(e.applyMaterial){const t=await this._get_material(e);t&&await this._applyMaterial(n,t)}return this.createCoreGroupFromObjects([n])}}var s;return this.createCoreGroupFromObjects([])}async _get_material(t){var e;if(t.applyMaterial){const n=t.material.nodeWithContext(ts.MAT,null===(e=this.states)||void 0===e?void 0:e.error);if(n){this._globals_handler=this._globals_handler||new Pf;const t=n.assemblerController;t&&t.set_assembler_globals_handler(this._globals_handler);return(await n.compute()).material()}}}async _applyMaterial(t,e){t.material=e,yr.applyCustomMaterials(t,e)}_create_instance(t,e,n){this._geometry=LZ.createInstanceBufferGeometry(t,e,n.attributesToCopy)}}jQ.DEFAULT_PARAMS={attributesToCopy:\\\\\\\"instance*\\\\\\\",applyMaterial:!0,material:new yi(\\\\\\\"\\\\\\\")},jQ.INPUT_CLONED_STATE=[Qi.ALWAYS,Qi.NEVER];const WQ=jQ.DEFAULT_PARAMS;const qQ=new class extends ua{constructor(){super(...arguments),this.attributesToCopy=ha.STRING(WQ.attributesToCopy),this.applyMaterial=ha.BOOLEAN(WQ.applyMaterial),this.material=ha.NODE_PATH(WQ.material.path(),{visibleIf:{applyMaterial:1},nodeSelection:{context:ts.MAT},dependentOnFoundNode:!1})}};class XQ extends uV{constructor(){super(...arguments),this.paramsConfig=qQ}static type(){return\\\\\\\"instance\\\\\\\"}static displayedInputNames(){return[\\\\\\\"geometry to be instanciated\\\\\\\",\\\\\\\"points to instance to\\\\\\\"]}initializeNode(){super.initializeNode(),this.io.inputs.setCount(2),this.io.inputs.initInputsClonedState(jQ.INPUT_CLONED_STATE)}async cook(t){this._operation=this._operation||new jQ(this.scene(),this.states);const e=await this._operation.cook(t,this.pv);this.setCoreGroup(e)}}var YQ;!function(t){t.GEO=\\\\\\\"geo\\\\\\\",t.POINTS=\\\\\\\"points\\\\\\\"}(YQ||(YQ={}));const $Q=[YQ.GEO,YQ.POINTS];class JQ extends aV{static type(){return\\\\\\\"instanceUpdate\\\\\\\"}async cook(t,e){return this._cookFromUpdateMode(t,e),t[0]}_cookFromUpdateMode(t,e){const n=$Q[e.mode];switch(n){case YQ.GEO:return this._cookForUpdateGeo(t,e);case YQ.POINTS:return this._cookForUpdatePoints(t,e)}os.unreachable(n)}_cookForUpdateGeo(t,e){const n=t[0],i=n.objects()[0].geometry,s=t[1].objectsWithGeo()[0],r=n.attribNamesMatchingMask(e.geoAttributes);for(let t of r){const e=i.getAttribute(t),n=s.geometry.getAttribute(t).array;e.array=n.slice(0,n.length-1),e.needsUpdate=!0}}_cookForUpdatePoints(t,e){const n=t[0],i=n.objects()[0].geometry,s=t[1],r=n.attribNamesMatchingMask(e.pointAttributes).map((t=>LZ.remapName(t)));let o=!1;for(let t of r)LZ.transformAttributeNames.includes(t)&&(o=!0);const a=s.points();if(o){LZ.updateTransformInstanceAttributes(a,s,i);for(let t of LZ.transformAttributeNames){const e=i.getAttribute(t);e&&(e.needsUpdate=!0)}}}}JQ.DEFAULT_PARAMS={mode:$Q.indexOf(YQ.GEO),geoAttributes:\\\\\\\"P N\\\\\\\",pointAttributes:\\\\\\\"P\\\\\\\"},JQ.INPUT_CLONED_STATE=[Qi.FROM_NODE,Qi.NEVER];const ZQ=JQ.DEFAULT_PARAMS;const KQ=new class extends ua{constructor(){super(...arguments),this.mode=ha.INTEGER(ZQ.mode,{menu:{entries:$Q.map(((t,e)=>({value:e,name:t})))}}),this.geoAttributes=ha.STRING(ZQ.geoAttributes,{visibleIf:{mode:$Q.indexOf(YQ.GEO)}}),this.pointAttributes=ha.STRING(ZQ.pointAttributes,{visibleIf:{mode:$Q.indexOf(YQ.POINTS)}})}};class QQ extends uV{constructor(){super(...arguments),this.paramsConfig=KQ}static type(){return\\\\\\\"instanceUpdate\\\\\\\"}static displayedInputNames(){return[\\\\\\\"instance to update\\\\\\\",\\\\\\\"geometry to copy attributes from\\\\\\\"]}initializeNode(){super.initializeNode(),this.io.inputs.setCount(2),this.io.inputs.initInputsClonedState(JQ.INPUT_CLONED_STATE)}setMode(t){this.p.mode.set($Q.indexOf(t))}async cook(t){this._operation=this._operation||new JQ(this.scene(),this.states);const e=await this._operation.cook(t,this.pv);this.setCoreGroup(e)}}const t0=new class extends ua{constructor(){super(...arguments),this.useMax=ha.BOOLEAN(0),this.max=ha.INTEGER(1,{range:[0,100],rangeLocked:[!0,!1],visibleIf:{useMax:1}})}};class e0 extends uV{constructor(){super(...arguments),this.paramsConfig=t0}static type(){return\\\\\\\"instancesCount\\\\\\\"}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(Qi.FROM_NODE)}async cook(t){const e=t[0],n=e.objectsWithGeo();for(let t of n){const e=t.geometry;e&&e instanceof lJ&&(this.pv.useMax?e.instanceCount=this.pv.max:e.instanceCount=1/0)}this.setCoreGroup(e)}}class n0 extends aV{static type(){return\\\\\\\"jitter\\\\\\\"}cook(t,e){const n=t[0],i=n.points();let s;for(let t=0;t<i.length;t++){s=i[t];const n=new p.a(2*(or.randFloat(75*t+764+e.seed)-.5),2*(or.randFloat(5678*t+3653+e.seed)-.5),2*(or.randFloat(657*t+48464+e.seed)-.5));n.normalize(),n.multiply(e.mult),n.multiplyScalar(e.amount*or.randFloat(78*t+54+e.seed));const r=s.position().clone().add(n);s.setPosition(r)}return n}}n0.DEFAULT_PARAMS={amount:1,mult:new p.a(1,1,1),seed:1},n0.INPUT_CLONED_STATE=Qi.FROM_NODE;const i0=n0.DEFAULT_PARAMS;const s0=new class extends ua{constructor(){super(...arguments),this.amount=ha.FLOAT(i0.amount),this.mult=ha.VECTOR3(i0.mult),this.seed=ha.INTEGER(i0.seed,{range:[0,100]})}};class r0 extends uV{constructor(){super(...arguments),this.paramsConfig=s0}static type(){return\\\\\\\"jitter\\\\\\\"}static displayedInputNames(){return[\\\\\\\"geometry to jitter points of\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(n0.INPUT_CLONED_STATE)}cook(t){this._operation=this._operation||new n0(this.scene(),this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}new class extends ua{};const o0=new class extends ua{constructor(){super(...arguments),this.layer=ha.INTEGER(0,{range:[0,31],rangeLocked:[!0,!0]})}};class a0 extends uV{constructor(){super(...arguments),this.paramsConfig=o0}static type(){return\\\\\\\"layer\\\\\\\"}static displayedInputNames(){return[\\\\\\\"objects to change layers of\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(Qi.FROM_NODE),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.layer])}))}))}cook(t){const e=t[0];for(let t of e.objects())t.layers.set(this.pv.layer);this.setCoreGroup(e)}}const l0=new class extends ua{constructor(){super(...arguments),this.length=ha.FLOAT(1,{range:[0,10]}),this.pointsCount=ha.INTEGER(1,{range:[2,100],rangeLocked:[!0,!1]}),this.origin=ha.VECTOR3([0,0,0]),this.direction=ha.VECTOR3([0,1,0])}};class c0 extends uV{constructor(){super(...arguments),this.paramsConfig=l0}static type(){return\\\\\\\"line\\\\\\\"}initializeNode(){}cook(){const t=Math.max(2,this.pv.pointsCount),e=new Array(3*t),n=new Array(t),i=this.pv.direction.clone().normalize().multiplyScalar(this.pv.length);for(let s=0;s<t;s++){const r=s/(t-1),o=i.clone().multiplyScalar(r);o.add(this.pv.origin),o.toArray(e,3*s),s>0&&(n[2*(s-1)]=s-1,n[2*(s-1)+1]=s)}const s=new S.a;s.setAttribute(\\\\\\\"position\\\\\\\",new C.c(e,3)),s.setIndex(n),this.setGeometry(s,Ns.LINE_SEGMENTS)}}const h0=new class extends ua{constructor(){super(...arguments),this.distance0=ha.FLOAT(1),this.distance1=ha.FLOAT(2),this.autoUpdate=ha.BOOLEAN(1),this.update=ha.BUTTON(null,{callback:t=>{u0.PARAM_CALLBACK_update(t)}}),this.camera=ha.OPERATOR_PATH(\\\\\\\"/perspective_camera1\\\\\\\",{visibleIf:{autoUpdate:0},dependentOnFoundNode:!1})}};class u0 extends uV{constructor(){super(...arguments),this.paramsConfig=h0,this._lod=this._create_LOD()}static type(){return\\\\\\\"lod\\\\\\\"}static displayedInputNames(){return[\\\\\\\"high res\\\\\\\",\\\\\\\"mid res\\\\\\\",\\\\\\\"low res\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1,3),this.io.inputs.initInputsClonedState(Qi.FROM_NODE)}_create_LOD(){const t=new Cs;return t.matrixAutoUpdate=!1,t}cook(t){this._clear_lod(),this._add_level(t[0],0),this._add_level(t[1],this.pv.distance0),this._add_level(t[2],this.pv.distance1),this._lod.autoUpdate=this.pv.autoUpdate,this.setObject(this._lod)}_add_level(t,e){if(t){const n=t.objects();let i;for(let t=0;t<n.length;t++)i=n[t],i.visible=!0,this._lod.addLevel(i,e),0==e&&0==t&&(this._lod.matrix.copy(i.matrix),bU.decomposeMatrix(this._lod)),i.matrix.identity(),bU.decomposeMatrix(i)}}_clear_lod(){let t;for(;t=this._lod.children[0];)this._lod.remove(t),t.matrix.multiply(this._lod.matrix),bU.decomposeMatrix(t);for(;this._lod.levels.pop(););}static PARAM_CALLBACK_update(t){t._update_lod()}async _update_lod(){if(this.p.autoUpdate)return;const t=this.p.camera;t.isDirty()&&await t.compute();let e=t.found_node_with_context_and_type(ts.OBJ,is.PERSPECTIVE)||t.found_node_with_context_and_type(ts.OBJ,is.ORTHOGRAPHIC);if(e){const t=e.object;this._lod.update(t)}else this.states.error.set(\\\\\\\"no camera node found\\\\\\\")}}class d0 extends aV{constructor(){super(...arguments),this._globals_handler=new Pf,this._old_mat_by_old_new_id=new Map,this._materials_by_uuid=new Map}static type(){return\\\\\\\"material\\\\\\\"}async cook(t,e){const n=t[0];return this._old_mat_by_old_new_id.clear(),await this._apply_materials(n,e),this._swap_textures(n,e),n}async _apply_materials(t,e){var n,i,s;if(!e.assignMat)return;const r=e.material.nodeWithContext(ts.MAT,null===(n=this.states)||void 0===n?void 0:n.error);if(r){const n=r.material,s=r.assemblerController;if(s&&s.set_assembler_globals_handler(this._globals_handler),await r.compute(),n){if(e.applyToChildren)for(let i of t.objects())i.traverse((t=>{this._apply_material(t,n,e)}));else for(let i of t.objectsFromGroup(e.group))this._apply_material(i,n,e);return t}null===(i=this.states)||void 0===i||i.error.set(`material invalid. (error: '${r.states.error.message()}')`)}else null===(s=this.states)||void 0===s||s.error.set(\\\\\\\"no material node found\\\\\\\")}_swap_textures(t,e){if(e.swapCurrentTex){this._materials_by_uuid.clear();for(let n of t.objectsFromGroup(e.group))if(e.applyToChildren)n.traverse((t=>{const e=n.material;this._materials_by_uuid.set(e.uuid,e)}));else{const t=n.material;this._materials_by_uuid.set(t.uuid,t)}this._materials_by_uuid.forEach(((t,n)=>{this._swap_texture(t,e)}))}}_apply_material(t,e,n){if(n.group&&!br.isInGroup(n.group,t))return;const i=n.cloneMat?yr.clone(e):e;if(e instanceof F&&i instanceof F)for(let t in e.uniforms)i.uniforms[t]=e.uniforms[t];const s=t;this._old_mat_by_old_new_id.set(i.uuid,s.material),s.material=i,yr.apply_render_hook(t,i),yr.applyCustomMaterials(t,i)}_swap_texture(t,e){if(\\\\\\\"\\\\\\\"==e.texSrc0||\\\\\\\"\\\\\\\"==e.texDest0)return;let n=this._old_mat_by_old_new_id.get(t.uuid);n=n||t;const i=n[e.texSrc0];if(i){t[e.texDest0]=i;const n=t.uniforms;if(n){n[e.texDest0]&&(n[e.texDest0]={value:i})}}}}d0.DEFAULT_PARAMS={group:\\\\\\\"\\\\\\\",assignMat:!0,material:new yi(\\\\\\\"\\\\\\\"),applyToChildren:!0,cloneMat:!1,shareUniforms:!0,swapCurrentTex:!1,texSrc0:\\\\\\\"emissiveMap\\\\\\\",texDest0:\\\\\\\"map\\\\\\\"},d0.INPUT_CLONED_STATE=Qi.FROM_NODE;const p0=d0.DEFAULT_PARAMS;const _0=new class extends ua{constructor(){super(...arguments),this.group=ha.STRING(p0.group),this.assignMat=ha.BOOLEAN(p0.assignMat),this.material=ha.NODE_PATH(p0.material.path(),{nodeSelection:{context:ts.MAT},dependentOnFoundNode:!1,visibleIf:{assignMat:1}}),this.applyToChildren=ha.BOOLEAN(p0.applyToChildren,{visibleIf:{assignMat:1}}),this.cloneMat=ha.BOOLEAN(p0.cloneMat,{visibleIf:{assignMat:1}}),this.shareUniforms=ha.BOOLEAN(p0.shareUniforms,{visibleIf:{assignMat:1,cloneMat:1}}),this.swapCurrentTex=ha.BOOLEAN(p0.swapCurrentTex),this.texSrc0=ha.STRING(p0.texSrc0,{visibleIf:{swapCurrentTex:1}}),this.texDest0=ha.STRING(p0.texDest0,{visibleIf:{swapCurrentTex:1}})}};class m0 extends uV{constructor(){super(...arguments),this.paramsConfig=_0}static type(){return\\\\\\\"material\\\\\\\"}static displayedInputNames(){return[\\\\\\\"objects to assign material to\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(d0.INPUT_CLONED_STATE),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.material],(()=>this.p.material.rawInput()))}))}))}async cook(t){this._operation=this._operation||new d0(this._scene,this.states);const e=await this._operation.cook(t,this.pv);this.setCoreGroup(e)}}class f0 extends aV{static type(){return\\\\\\\"merge\\\\\\\"}cook(t,e){let n=[];for(let i of t)if(i){const t=i.objects();if(e.compact)for(let e of t)e.traverse((t=>{n.push(t)}));else for(let t of i.objects())n.push(t)}e.compact&&(n=this._makeCompact(n));for(let t of n)t.traverse((t=>{t.matrixAutoUpdate=!1}));return this.createCoreGroupFromObjects(n)}_makeCompact(t){const e=new Map,n=new Map,i=[];for(let s of t)s.traverse((t=>{if(t instanceof Fn.a)return;const s=t;if(s.geometry){const t=Os(s.constructor);if(i.includes(t)||i.push(t),t){e.get(t)||e.set(t,s.material),h.pushOnArrayAtEntry(n,t,s)}}}));const s=[];return i.forEach((t=>{var i,r;const o=n.get(t);if(o){const n=[];for(let t of o){const e=t.geometry;e.applyMatrix4(t.matrix),n.push(e)}try{const r=fr.mergeGeometries(n);if(r){const n=e.get(t),i=this.createObject(r,t,n);s.push(i)}else null===(i=this.states)||void 0===i||i.error.set(\\\\\\\"merge failed, check that input geometries have the same attributes\\\\\\\")}catch(t){null===(r=this.states)||void 0===r||r.error.set(t.message)}}})),s}}f0.DEFAULT_PARAMS={compact:!1},f0.INPUT_CLONED_STATE=Qi.FROM_NODE;const g0=\\\\\\\"geometry to merge\\\\\\\",v0=f0.DEFAULT_PARAMS;const y0=new class extends ua{constructor(){super(...arguments),this.compact=ha.BOOLEAN(v0.compact),this.inputsCount=ha.INTEGER(4,{range:[1,32],rangeLocked:[!0,!1],callback:t=>{x0.PARAM_CALLBACK_setInputsCount(t)}})}};class x0 extends uV{constructor(){super(...arguments),this.paramsConfig=y0}static type(){return\\\\\\\"merge\\\\\\\"}static displayedInputNames(){return[g0,g0,g0,g0]}setCompactMode(t){this.p.compact.set(t)}initializeNode(){this.io.inputs.setCount(1,4),this.io.inputs.initInputsClonedState(f0.INPUT_CLONED_STATE),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.compact],(()=>this.pv.compact?\\\\\\\"compact\\\\\\\":\\\\\\\"separate objects\\\\\\\"))})),this.params.addOnSceneLoadHook(\\\\\\\"update inputs\\\\\\\",(()=>{this._callbackUpdateInputsCount()}))}))}cook(t){this._operation=this._operation||new f0(this.scene(),this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}_callbackUpdateInputsCount(){this.io.inputs.setCount(1,this.pv.inputsCount),this.emit(Ei.INPUTS_UPDATED)}static PARAM_CALLBACK_setInputsCount(t){t._callbackUpdateInputsCount()}}const b0=new Float32Array(36),w0=new Float32Array(36),T0=new Float32Array(36);function A0(t,e,n){return t+(e-t)*n}class M0 extends S.a{constructor(t,e,n){super(),this.resolution=t,this.isMarchingCubes=!0,this.isolation=80,this.size=-1,this.size2=-1,this.size3=-1,this.halfsize=-1,this.delta=-1,this.yd=-1,this.zd=-1,this.count=-1,this.maxCount=-1,this.enableUvs=void 0!==e&&e,this.enableColors=void 0!==n&&n,this.size=this.resolution,this.size2=this.size*this.size,this.size3=this.size2*this.size,this.halfsize=this.size/2,this.delta=2/this.size,this.yd=this.size,this.zd=this.size2,this.field=new Float32Array(this.size3),this.normal_cache=new Float32Array(3*this.size3),this.palette=new Float32Array(3*this.size3),this.maxCount=this.size3,this.count=0,this.positionArray=new Float32Array(3*this.maxCount),this.setAttribute(\\\\\\\"position\\\\\\\",new C.a(this.positionArray,3)),this.normalArray=new Float32Array(3*this.maxCount),this.setAttribute(\\\\\\\"normal\\\\\\\",new C.a(this.normalArray,3)),this.enableUvs&&(this.uvArray=new Float32Array(2*this.maxCount),this.setAttribute(\\\\\\\"uv\\\\\\\",new C.a(this.uvArray,2))),this.enableColors&&(this.colorArray=new Float32Array(3*this.maxCount),this.setAttribute(\\\\\\\"color\\\\\\\",new C.a(this.colorArray,3)));const i=(t,e,n,i,c)=>{const h=i+1,u=i+this.yd,d=i+this.zd,p=h+this.yd,_=h+this.zd,m=i+this.yd+this.zd,f=h+this.yd+this.zd;let g=0;const v=this.field[i],y=this.field[h],x=this.field[u],b=this.field[p],w=this.field[d],T=this.field[_],A=this.field[m],M=this.field[f];v<c&&(g|=1),y<c&&(g|=2),x<c&&(g|=8),b<c&&(g|=4),w<c&&(g|=16),T<c&&(g|=32),A<c&&(g|=128),M<c&&(g|=64);const E=E0[g];if(0===E)return 0;const S=this.delta,C=t+S,N=e+S,L=n+S;1&E&&(a(i),a(h),s(3*i,0,c,t,e,n,v,y,i,h)),2&E&&(a(h),a(p),r(3*h,3,c,C,e,n,y,b,h,p)),4&E&&(a(u),a(p),s(3*u,6,c,t,N,n,x,b,u,p)),8&E&&(a(i),a(u),r(3*i,9,c,t,e,n,v,x,i,u)),16&E&&(a(d),a(_),s(3*d,12,c,t,e,L,w,T,d,_)),32&E&&(a(_),a(f),r(3*_,15,c,C,e,L,T,M,_,f)),64&E&&(a(m),a(f),s(3*m,18,c,t,N,L,A,M,m,f)),128&E&&(a(d),a(m),r(3*d,21,c,t,e,L,w,A,d,m)),256&E&&(a(i),a(d),o(3*i,24,c,t,e,n,v,w,i,d)),512&E&&(a(h),a(_),o(3*h,27,c,C,e,n,y,T,h,_)),1024&E&&(a(p),a(f),o(3*p,30,c,C,N,n,b,M,p,f)),2048&E&&(a(u),a(m),o(3*u,33,c,t,N,n,x,A,u,m)),g<<=4;let O,P,R,I=0,F=0;for(;-1!=S0[g+F];)O=g+F,P=O+1,R=O+2,l(b0,w0,T0,3*S0[O],3*S0[P],3*S0[R]),F+=3,I++;return I};this._createPolygons=()=>{const t=this.size-2;for(let e=1;e<t;e++){const n=this.size2*e,s=(e-this.halfsize)/this.halfsize;for(let e=1;e<t;e++){const r=n+this.size*e,o=(e-this.halfsize)/this.halfsize;for(let e=1;e<t;e++){const t=(e-this.halfsize)/this.halfsize;i(t,o,s,r+e,this.isolation)}}}};const s=(t,e,n,i,s,r,o,a,l,c)=>{const h=(n-o)/(a-o),u=this.normal_cache;b0[e+0]=i+h*this.delta,b0[e+1]=s,b0[e+2]=r,w0[e+0]=A0(u[t+0],u[t+3],h),w0[e+1]=A0(u[t+1],u[t+4],h),w0[e+2]=A0(u[t+2],u[t+5],h),T0[e+0]=A0(this.palette[3*l+0],this.palette[3*c+0],h),T0[e+1]=A0(this.palette[3*l+1],this.palette[3*c+1],h),T0[e+2]=A0(this.palette[3*l+2],this.palette[3*c+2],h)},r=(t,e,n,i,s,r,o,a,l,c)=>{const h=(n-o)/(a-o),u=this.normal_cache;b0[e+0]=i,b0[e+1]=s+h*this.delta,b0[e+2]=r;const d=t+3*this.yd;w0[e+0]=A0(u[t+0],u[d+0],h),w0[e+1]=A0(u[t+1],u[d+1],h),w0[e+2]=A0(u[t+2],u[d+2],h),T0[e+0]=A0(this.palette[3*l+0],this.palette[3*c+0],h),T0[e+1]=A0(this.palette[3*l+1],this.palette[3*c+1],h),T0[e+2]=A0(this.palette[3*l+2],this.palette[3*c+2],h)},o=(t,e,n,i,s,r,o,a,l,c)=>{const h=(n-o)/(a-o),u=this.normal_cache;b0[e+0]=i,b0[e+1]=s,b0[e+2]=r+h*this.delta;const d=t+3*this.zd;w0[e+0]=A0(u[t+0],u[d+0],h),w0[e+1]=A0(u[t+1],u[d+1],h),w0[e+2]=A0(u[t+2],u[d+2],h),T0[e+0]=A0(this.palette[3*l+0],this.palette[3*c+0],h),T0[e+1]=A0(this.palette[3*l+1],this.palette[3*c+1],h),T0[e+2]=A0(this.palette[3*l+2],this.palette[3*c+2],h)},a=t=>{const e=3*t;0===this.normal_cache[e]&&(this.normal_cache[e+0]=this.field[t-1]-this.field[t+1],this.normal_cache[e+1]=this.field[t-this.yd]-this.field[t+this.yd],this.normal_cache[e+2]=this.field[t-this.zd]-this.field[t+this.zd])},l=(t,e,n,i,s,r)=>{const o=3*this.count;if(this.positionArray&&this.normalArray){if(this.positionArray[o+0]=t[i],this.positionArray[o+1]=t[i+1],this.positionArray[o+2]=t[i+2],this.positionArray[o+3]=t[s],this.positionArray[o+4]=t[s+1],this.positionArray[o+5]=t[s+2],this.positionArray[o+6]=t[r],this.positionArray[o+7]=t[r+1],this.positionArray[o+8]=t[r+2],this.normalArray[o+0]=e[i+0],this.normalArray[o+1]=e[i+1],this.normalArray[o+2]=e[i+2],this.normalArray[o+3]=e[s+0],this.normalArray[o+4]=e[s+1],this.normalArray[o+5]=e[s+2],this.normalArray[o+6]=e[r+0],this.normalArray[o+7]=e[r+1],this.normalArray[o+8]=e[r+2],this.enableUvs&&this.uvArray){const e=2*this.count;this.uvArray[e+0]=t[i+0],this.uvArray[e+1]=t[i+2],this.uvArray[e+2]=t[s+0],this.uvArray[e+3]=t[s+2],this.uvArray[e+4]=t[r+0],this.uvArray[e+5]=t[r+2]}this.enableColors&&this.colorArray&&(this.colorArray[o+0]=n[i+0],this.colorArray[o+1]=n[i+1],this.colorArray[o+2]=n[i+2],this.colorArray[o+3]=n[s+0],this.colorArray[o+4]=n[s+1],this.colorArray[o+5]=n[s+2],this.colorArray[o+6]=n[r+0],this.colorArray[o+7]=n[r+1],this.colorArray[o+8]=n[r+2]),this.count+=3}}}createPolygons(){this._createPolygons()}addBall(t,e,n,i,s,r){const o=Math.sign(i);i=Math.abs(i);const a=!(null==r);let l=new D.a(t,e,n);if(a)try{r&&(l=r)}catch(i){l=new D.a(t,e,n)}const c=this.size*Math.sqrt(i/s),h=n*this.size,u=e*this.size,d=t*this.size;let p=Math.floor(h-c);p<1&&(p=1);let _=Math.floor(h+c);_>this.size-1&&(_=this.size-1);let m=Math.floor(u-c);m<1&&(m=1);let f=Math.floor(u+c);f>this.size-1&&(f=this.size-1);let g=Math.floor(d-c);g<1&&(g=1);let v,y,x,b,w,T,A,M,E,S,C,N=Math.floor(d+c);for(N>this.size-1&&(N=this.size-1),x=p;x<_;x++)for(w=this.size2*x,M=x/this.size-n,E=M*M,y=m;y<f;y++)for(b=w+this.size*y,A=y/this.size-e,S=A*A,v=g;v<N;v++)if(T=v/this.size-t,C=i/(1e-6+T*T+S+E)-s,C>0){this.field[b+v]+=C*o;const t=Math.sqrt((v-d)*(v-d)+(y-u)*(y-u)+(x-h)*(x-h))/c,e=1-t*t*t*(t*(6*t-15)+10);this.palette[3*(b+v)+0]+=l.r*e,this.palette[3*(b+v)+1]+=l.g*e,this.palette[3*(b+v)+2]+=l.b*e}}}const E0=new Int32Array([0,265,515,778,1030,1295,1541,1804,2060,2309,2575,2822,3082,3331,3593,3840,400,153,915,666,1430,1183,1941,1692,2460,2197,2975,2710,3482,3219,3993,3728,560,825,51,314,1590,1855,1077,1340,2620,2869,2111,2358,3642,3891,3129,3376,928,681,419,170,1958,1711,1445,1196,2988,2725,2479,2214,4010,3747,3497,3232,1120,1385,1635,1898,102,367,613,876,3180,3429,3695,3942,2154,2403,2665,2912,1520,1273,2035,1786,502,255,1013,764,3580,3317,4095,3830,2554,2291,3065,2800,1616,1881,1107,1370,598,863,85,348,3676,3925,3167,3414,2650,2899,2137,2384,1984,1737,1475,1226,966,719,453,204,4044,3781,3535,3270,3018,2755,2505,2240,2240,2505,2755,3018,3270,3535,3781,4044,204,453,719,966,1226,1475,1737,1984,2384,2137,2899,2650,3414,3167,3925,3676,348,85,863,598,1370,1107,1881,1616,2800,3065,2291,2554,3830,4095,3317,3580,764,1013,255,502,1786,2035,1273,1520,2912,2665,2403,2154,3942,3695,3429,3180,876,613,367,102,1898,1635,1385,1120,3232,3497,3747,4010,2214,2479,2725,2988,1196,1445,1711,1958,170,419,681,928,3376,3129,3891,3642,2358,2111,2869,2620,1340,1077,1855,1590,314,51,825,560,3728,3993,3219,3482,2710,2975,2197,2460,1692,1941,1183,1430,666,915,153,400,3840,3593,3331,3082,2822,2575,2309,2060,1804,1541,1295,1030,778,515,265,0]),S0=new Int32Array([-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,0,8,3,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,0,1,9,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1,8,3,9,8,1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1,2,10,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,0,8,3,1,2,10,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,9,2,10,0,2,9,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2,8,3,2,10,8,10,9,8,-1,-1,-1,-1,-1,-1,-1,3,11,2,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,0,11,2,8,11,0,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1,9,0,2,3,11,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1,11,2,1,9,11,9,8,11,-1,-1,-1,-1,-1,-1,-1,3,10,1,11,10,3,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,0,10,1,0,8,10,8,11,10,-1,-1,-1,-1,-1,-1,-1,3,9,0,3,11,9,11,10,9,-1,-1,-1,-1,-1,-1,-1,9,8,10,10,8,11,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4,7,8,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4,3,0,7,3,4,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,0,1,9,8,4,7,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4,1,9,4,7,1,7,3,1,-1,-1,-1,-1,-1,-1,-1,1,2,10,8,4,7,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3,4,7,3,0,4,1,2,10,-1,-1,-1,-1,-1,-1,-1,9,2,10,9,0,2,8,4,7,-1,-1,-1,-1,-1,-1,-1,2,10,9,2,9,7,2,7,3,7,9,4,-1,-1,-1,-1,8,4,7,3,11,2,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,11,4,7,11,2,4,2,0,4,-1,-1,-1,-1,-1,-1,-1,9,0,1,8,4,7,2,3,11,-1,-1,-1,-1,-1,-1,-1,4,7,11,9,4,11,9,11,2,9,2,1,-1,-1,-1,-1,3,10,1,3,11,10,7,8,4,-1,-1,-1,-1,-1,-1,-1,1,11,10,1,4,11,1,0,4,7,11,4,-1,-1,-1,-1,4,7,8,9,0,11,9,11,10,11,0,3,-1,-1,-1,-1,4,7,11,4,11,9,9,11,10,-1,-1,-1,-1,-1,-1,-1,9,5,4,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,9,5,4,0,8,3,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,0,5,4,1,5,0,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8,5,4,8,3,5,3,1,5,-1,-1,-1,-1,-1,-1,-1,1,2,10,9,5,4,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3,0,8,1,2,10,4,9,5,-1,-1,-1,-1,-1,-1,-1,5,2,10,5,4,2,4,0,2,-1,-1,-1,-1,-1,-1,-1,2,10,5,3,2,5,3,5,4,3,4,8,-1,-1,-1,-1,9,5,4,2,3,11,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,0,11,2,0,8,11,4,9,5,-1,-1,-1,-1,-1,-1,-1,0,5,4,0,1,5,2,3,11,-1,-1,-1,-1,-1,-1,-1,2,1,5,2,5,8,2,8,11,4,8,5,-1,-1,-1,-1,10,3,11,10,1,3,9,5,4,-1,-1,-1,-1,-1,-1,-1,4,9,5,0,8,1,8,10,1,8,11,10,-1,-1,-1,-1,5,4,0,5,0,11,5,11,10,11,0,3,-1,-1,-1,-1,5,4,8,5,8,10,10,8,11,-1,-1,-1,-1,-1,-1,-1,9,7,8,5,7,9,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,9,3,0,9,5,3,5,7,3,-1,-1,-1,-1,-1,-1,-1,0,7,8,0,1,7,1,5,7,-1,-1,-1,-1,-1,-1,-1,1,5,3,3,5,7,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,9,7,8,9,5,7,10,1,2,-1,-1,-1,-1,-1,-1,-1,10,1,2,9,5,0,5,3,0,5,7,3,-1,-1,-1,-1,8,0,2,8,2,5,8,5,7,10,5,2,-1,-1,-1,-1,2,10,5,2,5,3,3,5,7,-1,-1,-1,-1,-1,-1,-1,7,9,5,7,8,9,3,11,2,-1,-1,-1,-1,-1,-1,-1,9,5,7,9,7,2,9,2,0,2,7,11,-1,-1,-1,-1,2,3,11,0,1,8,1,7,8,1,5,7,-1,-1,-1,-1,11,2,1,11,1,7,7,1,5,-1,-1,-1,-1,-1,-1,-1,9,5,8,8,5,7,10,1,3,10,3,11,-1,-1,-1,-1,5,7,0,5,0,9,7,11,0,1,0,10,11,10,0,-1,11,10,0,11,0,3,10,5,0,8,0,7,5,7,0,-1,11,10,5,7,11,5,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,10,6,5,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,0,8,3,5,10,6,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,9,0,1,5,10,6,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1,8,3,1,9,8,5,10,6,-1,-1,-1,-1,-1,-1,-1,1,6,5,2,6,1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1,6,5,1,2,6,3,0,8,-1,-1,-1,-1,-1,-1,-1,9,6,5,9,0,6,0,2,6,-1,-1,-1,-1,-1,-1,-1,5,9,8,5,8,2,5,2,6,3,2,8,-1,-1,-1,-1,2,3,11,10,6,5,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,11,0,8,11,2,0,10,6,5,-1,-1,-1,-1,-1,-1,-1,0,1,9,2,3,11,5,10,6,-1,-1,-1,-1,-1,-1,-1,5,10,6,1,9,2,9,11,2,9,8,11,-1,-1,-1,-1,6,3,11,6,5,3,5,1,3,-1,-1,-1,-1,-1,-1,-1,0,8,11,0,11,5,0,5,1,5,11,6,-1,-1,-1,-1,3,11,6,0,3,6,0,6,5,0,5,9,-1,-1,-1,-1,6,5,9,6,9,11,11,9,8,-1,-1,-1,-1,-1,-1,-1,5,10,6,4,7,8,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4,3,0,4,7,3,6,5,10,-1,-1,-1,-1,-1,-1,-1,1,9,0,5,10,6,8,4,7,-1,-1,-1,-1,-1,-1,-1,10,6,5,1,9,7,1,7,3,7,9,4,-1,-1,-1,-1,6,1,2,6,5,1,4,7,8,-1,-1,-1,-1,-1,-1,-1,1,2,5,5,2,6,3,0,4,3,4,7,-1,-1,-1,-1,8,4,7,9,0,5,0,6,5,0,2,6,-1,-1,-1,-1,7,3,9,7,9,4,3,2,9,5,9,6,2,6,9,-1,3,11,2,7,8,4,10,6,5,-1,-1,-1,-1,-1,-1,-1,5,10,6,4,7,2,4,2,0,2,7,11,-1,-1,-1,-1,0,1,9,4,7,8,2,3,11,5,10,6,-1,-1,-1,-1,9,2,1,9,11,2,9,4,11,7,11,4,5,10,6,-1,8,4,7,3,11,5,3,5,1,5,11,6,-1,-1,-1,-1,5,1,11,5,11,6,1,0,11,7,11,4,0,4,11,-1,0,5,9,0,6,5,0,3,6,11,6,3,8,4,7,-1,6,5,9,6,9,11,4,7,9,7,11,9,-1,-1,-1,-1,10,4,9,6,4,10,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4,10,6,4,9,10,0,8,3,-1,-1,-1,-1,-1,-1,-1,10,0,1,10,6,0,6,4,0,-1,-1,-1,-1,-1,-1,-1,8,3,1,8,1,6,8,6,4,6,1,10,-1,-1,-1,-1,1,4,9,1,2,4,2,6,4,-1,-1,-1,-1,-1,-1,-1,3,0,8,1,2,9,2,4,9,2,6,4,-1,-1,-1,-1,0,2,4,4,2,6,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8,3,2,8,2,4,4,2,6,-1,-1,-1,-1,-1,-1,-1,10,4,9,10,6,4,11,2,3,-1,-1,-1,-1,-1,-1,-1,0,8,2,2,8,11,4,9,10,4,10,6,-1,-1,-1,-1,3,11,2,0,1,6,0,6,4,6,1,10,-1,-1,-1,-1,6,4,1,6,1,10,4,8,1,2,1,11,8,11,1,-1,9,6,4,9,3,6,9,1,3,11,6,3,-1,-1,-1,-1,8,11,1,8,1,0,11,6,1,9,1,4,6,4,1,-1,3,11,6,3,6,0,0,6,4,-1,-1,-1,-1,-1,-1,-1,6,4,8,11,6,8,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7,10,6,7,8,10,8,9,10,-1,-1,-1,-1,-1,-1,-1,0,7,3,0,10,7,0,9,10,6,7,10,-1,-1,-1,-1,10,6,7,1,10,7,1,7,8,1,8,0,-1,-1,-1,-1,10,6,7,10,7,1,1,7,3,-1,-1,-1,-1,-1,-1,-1,1,2,6,1,6,8,1,8,9,8,6,7,-1,-1,-1,-1,2,6,9,2,9,1,6,7,9,0,9,3,7,3,9,-1,7,8,0,7,0,6,6,0,2,-1,-1,-1,-1,-1,-1,-1,7,3,2,6,7,2,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2,3,11,10,6,8,10,8,9,8,6,7,-1,-1,-1,-1,2,0,7,2,7,11,0,9,7,6,7,10,9,10,7,-1,1,8,0,1,7,8,1,10,7,6,7,10,2,3,11,-1,11,2,1,11,1,7,10,6,1,6,7,1,-1,-1,-1,-1,8,9,6,8,6,7,9,1,6,11,6,3,1,3,6,-1,0,9,1,11,6,7,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7,8,0,7,0,6,3,11,0,11,6,0,-1,-1,-1,-1,7,11,6,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7,6,11,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3,0,8,11,7,6,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,0,1,9,11,7,6,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8,1,9,8,3,1,11,7,6,-1,-1,-1,-1,-1,-1,-1,10,1,2,6,11,7,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1,2,10,3,0,8,6,11,7,-1,-1,-1,-1,-1,-1,-1,2,9,0,2,10,9,6,11,7,-1,-1,-1,-1,-1,-1,-1,6,11,7,2,10,3,10,8,3,10,9,8,-1,-1,-1,-1,7,2,3,6,2,7,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7,0,8,7,6,0,6,2,0,-1,-1,-1,-1,-1,-1,-1,2,7,6,2,3,7,0,1,9,-1,-1,-1,-1,-1,-1,-1,1,6,2,1,8,6,1,9,8,8,7,6,-1,-1,-1,-1,10,7,6,10,1,7,1,3,7,-1,-1,-1,-1,-1,-1,-1,10,7,6,1,7,10,1,8,7,1,0,8,-1,-1,-1,-1,0,3,7,0,7,10,0,10,9,6,10,7,-1,-1,-1,-1,7,6,10,7,10,8,8,10,9,-1,-1,-1,-1,-1,-1,-1,6,8,4,11,8,6,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3,6,11,3,0,6,0,4,6,-1,-1,-1,-1,-1,-1,-1,8,6,11,8,4,6,9,0,1,-1,-1,-1,-1,-1,-1,-1,9,4,6,9,6,3,9,3,1,11,3,6,-1,-1,-1,-1,6,8,4,6,11,8,2,10,1,-1,-1,-1,-1,-1,-1,-1,1,2,10,3,0,11,0,6,11,0,4,6,-1,-1,-1,-1,4,11,8,4,6,11,0,2,9,2,10,9,-1,-1,-1,-1,10,9,3,10,3,2,9,4,3,11,3,6,4,6,3,-1,8,2,3,8,4,2,4,6,2,-1,-1,-1,-1,-1,-1,-1,0,4,2,4,6,2,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1,9,0,2,3,4,2,4,6,4,3,8,-1,-1,-1,-1,1,9,4,1,4,2,2,4,6,-1,-1,-1,-1,-1,-1,-1,8,1,3,8,6,1,8,4,6,6,10,1,-1,-1,-1,-1,10,1,0,10,0,6,6,0,4,-1,-1,-1,-1,-1,-1,-1,4,6,3,4,3,8,6,10,3,0,3,9,10,9,3,-1,10,9,4,6,10,4,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4,9,5,7,6,11,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,0,8,3,4,9,5,11,7,6,-1,-1,-1,-1,-1,-1,-1,5,0,1,5,4,0,7,6,11,-1,-1,-1,-1,-1,-1,-1,11,7,6,8,3,4,3,5,4,3,1,5,-1,-1,-1,-1,9,5,4,10,1,2,7,6,11,-1,-1,-1,-1,-1,-1,-1,6,11,7,1,2,10,0,8,3,4,9,5,-1,-1,-1,-1,7,6,11,5,4,10,4,2,10,4,0,2,-1,-1,-1,-1,3,4,8,3,5,4,3,2,5,10,5,2,11,7,6,-1,7,2,3,7,6,2,5,4,9,-1,-1,-1,-1,-1,-1,-1,9,5,4,0,8,6,0,6,2,6,8,7,-1,-1,-1,-1,3,6,2,3,7,6,1,5,0,5,4,0,-1,-1,-1,-1,6,2,8,6,8,7,2,1,8,4,8,5,1,5,8,-1,9,5,4,10,1,6,1,7,6,1,3,7,-1,-1,-1,-1,1,6,10,1,7,6,1,0,7,8,7,0,9,5,4,-1,4,0,10,4,10,5,0,3,10,6,10,7,3,7,10,-1,7,6,10,7,10,8,5,4,10,4,8,10,-1,-1,-1,-1,6,9,5,6,11,9,11,8,9,-1,-1,-1,-1,-1,-1,-1,3,6,11,0,6,3,0,5,6,0,9,5,-1,-1,-1,-1,0,11,8,0,5,11,0,1,5,5,6,11,-1,-1,-1,-1,6,11,3,6,3,5,5,3,1,-1,-1,-1,-1,-1,-1,-1,1,2,10,9,5,11,9,11,8,11,5,6,-1,-1,-1,-1,0,11,3,0,6,11,0,9,6,5,6,9,1,2,10,-1,11,8,5,11,5,6,8,0,5,10,5,2,0,2,5,-1,6,11,3,6,3,5,2,10,3,10,5,3,-1,-1,-1,-1,5,8,9,5,2,8,5,6,2,3,8,2,-1,-1,-1,-1,9,5,6,9,6,0,0,6,2,-1,-1,-1,-1,-1,-1,-1,1,5,8,1,8,0,5,6,8,3,8,2,6,2,8,-1,1,5,6,2,1,6,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1,3,6,1,6,10,3,8,6,5,6,9,8,9,6,-1,10,1,0,10,0,6,9,5,0,5,6,0,-1,-1,-1,-1,0,3,8,5,6,10,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,10,5,6,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,11,5,10,7,5,11,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,11,5,10,11,7,5,8,3,0,-1,-1,-1,-1,-1,-1,-1,5,11,7,5,10,11,1,9,0,-1,-1,-1,-1,-1,-1,-1,10,7,5,10,11,7,9,8,1,8,3,1,-1,-1,-1,-1,11,1,2,11,7,1,7,5,1,-1,-1,-1,-1,-1,-1,-1,0,8,3,1,2,7,1,7,5,7,2,11,-1,-1,-1,-1,9,7,5,9,2,7,9,0,2,2,11,7,-1,-1,-1,-1,7,5,2,7,2,11,5,9,2,3,2,8,9,8,2,-1,2,5,10,2,3,5,3,7,5,-1,-1,-1,-1,-1,-1,-1,8,2,0,8,5,2,8,7,5,10,2,5,-1,-1,-1,-1,9,0,1,5,10,3,5,3,7,3,10,2,-1,-1,-1,-1,9,8,2,9,2,1,8,7,2,10,2,5,7,5,2,-1,1,3,5,3,7,5,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,0,8,7,0,7,1,1,7,5,-1,-1,-1,-1,-1,-1,-1,9,0,3,9,3,5,5,3,7,-1,-1,-1,-1,-1,-1,-1,9,8,7,5,9,7,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5,8,4,5,10,8,10,11,8,-1,-1,-1,-1,-1,-1,-1,5,0,4,5,11,0,5,10,11,11,3,0,-1,-1,-1,-1,0,1,9,8,4,10,8,10,11,10,4,5,-1,-1,-1,-1,10,11,4,10,4,5,11,3,4,9,4,1,3,1,4,-1,2,5,1,2,8,5,2,11,8,4,5,8,-1,-1,-1,-1,0,4,11,0,11,3,4,5,11,2,11,1,5,1,11,-1,0,2,5,0,5,9,2,11,5,4,5,8,11,8,5,-1,9,4,5,2,11,3,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2,5,10,3,5,2,3,4,5,3,8,4,-1,-1,-1,-1,5,10,2,5,2,4,4,2,0,-1,-1,-1,-1,-1,-1,-1,3,10,2,3,5,10,3,8,5,4,5,8,0,1,9,-1,5,10,2,5,2,4,1,9,2,9,4,2,-1,-1,-1,-1,8,4,5,8,5,3,3,5,1,-1,-1,-1,-1,-1,-1,-1,0,4,5,1,0,5,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8,4,5,8,5,3,9,0,5,0,3,5,-1,-1,-1,-1,9,4,5,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4,11,7,4,9,11,9,10,11,-1,-1,-1,-1,-1,-1,-1,0,8,3,4,9,7,9,11,7,9,10,11,-1,-1,-1,-1,1,10,11,1,11,4,1,4,0,7,4,11,-1,-1,-1,-1,3,1,4,3,4,8,1,10,4,7,4,11,10,11,4,-1,4,11,7,9,11,4,9,2,11,9,1,2,-1,-1,-1,-1,9,7,4,9,11,7,9,1,11,2,11,1,0,8,3,-1,11,7,4,11,4,2,2,4,0,-1,-1,-1,-1,-1,-1,-1,11,7,4,11,4,2,8,3,4,3,2,4,-1,-1,-1,-1,2,9,10,2,7,9,2,3,7,7,4,9,-1,-1,-1,-1,9,10,7,9,7,4,10,2,7,8,7,0,2,0,7,-1,3,7,10,3,10,2,7,4,10,1,10,0,4,0,10,-1,1,10,2,8,7,4,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4,9,1,4,1,7,7,1,3,-1,-1,-1,-1,-1,-1,-1,4,9,1,4,1,7,0,8,1,8,7,1,-1,-1,-1,-1,4,0,3,7,4,3,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4,8,7,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,9,10,8,10,11,8,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3,0,9,3,9,11,11,9,10,-1,-1,-1,-1,-1,-1,-1,0,1,10,0,10,8,8,10,11,-1,-1,-1,-1,-1,-1,-1,3,1,10,11,3,10,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1,2,11,1,11,9,9,11,8,-1,-1,-1,-1,-1,-1,-1,3,0,9,3,9,11,1,2,9,2,11,9,-1,-1,-1,-1,0,2,11,8,0,11,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3,2,11,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2,3,8,2,8,10,10,8,9,-1,-1,-1,-1,-1,-1,-1,9,10,2,0,9,2,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2,3,8,2,8,10,0,1,8,1,10,8,-1,-1,-1,-1,1,10,2,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1,3,8,9,1,8,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,0,9,1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,0,3,8,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1]),C0=new p.a;class N0 extends aV{static type(){return\\\\\\\"metaball\\\\\\\"}cook(t,e){const n=t[0],i=new M0(e.resolution,e.enableUVs,e.enableColors);i.isolation=e.isolation;const s=n.points();for(let t of s){t.getPosition(C0),C0.multiplyScalar(.5).addScalar(.5);let n=e.metaStrength;if(e.useMetaStrengthAttrib){let e=t.attribValue(\\\\\\\"metaStrength\\\\\\\");m.isNumber(e)&&(n*=e)}let s=e.metaSubstract;if(e.useMetaSubstractAttrib){let e=t.attribValue(\\\\\\\"metaSubstract\\\\\\\");m.isNumber(e)&&(s*=e)}i.addBall(C0.x,C0.y,C0.z,n,s,void 0)}return i.createPolygons(),this.createCoreGroupFromGeometry(i)}}N0.DEFAULT_PARAMS={resolution:40,isolation:30,useMetaStrengthAttrib:!1,metaStrength:1,useMetaSubstractAttrib:!1,metaSubstract:1,enableUVs:!1,enableColors:!1},N0.INPUT_CLONED_STATE=Qi.NEVER;const L0=N0.DEFAULT_PARAMS;const O0=new class extends ua{constructor(){super(...arguments),this.resolution=ha.FLOAT(L0.resolution,{range:[0,100],rangeLocked:[!0,!1]}),this.isolation=ha.FLOAT(L0.isolation,{range:[0,100],rangeLocked:[!0,!1]}),this.useMetaStrengthAttrib=ha.BOOLEAN(L0.useMetaStrengthAttrib),this.metaStrength=ha.FLOAT(L0.metaStrength,{range:[0,10],rangeLocked:[!0,!1]}),this.useMetaSubstractAttrib=ha.BOOLEAN(L0.useMetaSubstractAttrib),this.metaSubstract=ha.FLOAT(L0.metaSubstract,{range:[0,10],rangeLocked:[!0,!1]}),this.enableUVs=ha.BOOLEAN(L0.enableUVs),this.enableColors=ha.BOOLEAN(L0.enableColors)}};class P0 extends uV{constructor(){super(...arguments),this.paramsConfig=O0}static type(){return\\\\\\\"metaball\\\\\\\"}static displayedInputNames(){return[\\\\\\\"points to create metaballs from\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(N0.INPUT_CLONED_STATE)}cook(t){this._operation=this._operation||new N0(this._scene,this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}class R0{constructor(t=Math){this.grad3=[[1,1,0],[-1,1,0],[1,-1,0],[-1,-1,0],[1,0,1],[-1,0,1],[1,0,-1],[-1,0,-1],[0,1,1],[0,-1,1],[0,1,-1],[0,-1,-1]],this.grad4=[[0,1,1,1],[0,1,1,-1],[0,1,-1,1],[0,1,-1,-1],[0,-1,1,1],[0,-1,1,-1],[0,-1,-1,1],[0,-1,-1,-1],[1,0,1,1],[1,0,1,-1],[1,0,-1,1],[1,0,-1,-1],[-1,0,1,1],[-1,0,1,-1],[-1,0,-1,1],[-1,0,-1,-1],[1,1,0,1],[1,1,0,-1],[1,-1,0,1],[1,-1,0,-1],[-1,1,0,1],[-1,1,0,-1],[-1,-1,0,1],[-1,-1,0,-1],[1,1,1,0],[1,1,-1,0],[1,-1,1,0],[1,-1,-1,0],[-1,1,1,0],[-1,1,-1,0],[-1,-1,1,0],[-1,-1,-1,0]],this.p=[];for(let e=0;e<256;e++)this.p[e]=Math.floor(256*t.random());this.perm=[];for(let t=0;t<512;t++)this.perm[t]=this.p[255&t];this.simplex=[[0,1,2,3],[0,1,3,2],[0,0,0,0],[0,2,3,1],[0,0,0,0],[0,0,0,0],[0,0,0,0],[1,2,3,0],[0,2,1,3],[0,0,0,0],[0,3,1,2],[0,3,2,1],[0,0,0,0],[0,0,0,0],[0,0,0,0],[1,3,2,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[1,2,0,3],[0,0,0,0],[1,3,0,2],[0,0,0,0],[0,0,0,0],[0,0,0,0],[2,3,0,1],[2,3,1,0],[1,0,2,3],[1,0,3,2],[0,0,0,0],[0,0,0,0],[0,0,0,0],[2,0,3,1],[0,0,0,0],[2,1,3,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[2,0,1,3],[0,0,0,0],[0,0,0,0],[0,0,0,0],[3,0,1,2],[3,0,2,1],[0,0,0,0],[3,1,2,0],[2,1,0,3],[0,0,0,0],[0,0,0,0],[0,0,0,0],[3,1,0,2],[0,0,0,0],[3,2,0,1],[3,2,1,0]]}dot(t,e,n){return t[0]*e+t[1]*n}dot3(t,e,n,i){return t[0]*e+t[1]*n+t[2]*i}dot4(t,e,n,i,s){return t[0]*e+t[1]*n+t[2]*i+t[3]*s}noise(t,e){let n,i,s;const r=(t+e)*(.5*(Math.sqrt(3)-1)),o=Math.floor(t+r),a=Math.floor(e+r),l=(3-Math.sqrt(3))/6,c=(o+a)*l,h=t-(o-c),u=e-(a-c);let d,p;h>u?(d=1,p=0):(d=0,p=1);const _=h-d+l,m=u-p+l,f=h-1+2*l,g=u-1+2*l,v=255&o,y=255&a,x=this.perm[v+this.perm[y]]%12,b=this.perm[v+d+this.perm[y+p]]%12,w=this.perm[v+1+this.perm[y+1]]%12;let T=.5-h*h-u*u;T<0?n=0:(T*=T,n=T*T*this.dot(this.grad3[x],h,u));let A=.5-_*_-m*m;A<0?i=0:(A*=A,i=A*A*this.dot(this.grad3[b],_,m));let M=.5-f*f-g*g;return M<0?s=0:(M*=M,s=M*M*this.dot(this.grad3[w],f,g)),70*(n+i+s)}noise3d(t,e,n){let i,s,r,o;const a=(t+e+n)*(1/3),l=Math.floor(t+a),c=Math.floor(e+a),h=Math.floor(n+a),u=1/6,d=(l+c+h)*u,p=t-(l-d),_=e-(c-d),m=n-(h-d);let f,g,v,y,x,b;p>=_?_>=m?(f=1,g=0,v=0,y=1,x=1,b=0):p>=m?(f=1,g=0,v=0,y=1,x=0,b=1):(f=0,g=0,v=1,y=1,x=0,b=1):_<m?(f=0,g=0,v=1,y=0,x=1,b=1):p<m?(f=0,g=1,v=0,y=0,x=1,b=1):(f=0,g=1,v=0,y=1,x=1,b=0);const w=p-f+u,T=_-g+u,A=m-v+u,M=p-y+2*u,E=_-x+2*u,S=m-b+2*u,C=p-1+.5,N=_-1+.5,L=m-1+.5,O=255&l,P=255&c,R=255&h,I=this.perm[O+this.perm[P+this.perm[R]]]%12,F=this.perm[O+f+this.perm[P+g+this.perm[R+v]]]%12,D=this.perm[O+y+this.perm[P+x+this.perm[R+b]]]%12,B=this.perm[O+1+this.perm[P+1+this.perm[R+1]]]%12;let z=.6-p*p-_*_-m*m;z<0?i=0:(z*=z,i=z*z*this.dot3(this.grad3[I],p,_,m));let k=.6-w*w-T*T-A*A;k<0?s=0:(k*=k,s=k*k*this.dot3(this.grad3[F],w,T,A));let U=.6-M*M-E*E-S*S;U<0?r=0:(U*=U,r=U*U*this.dot3(this.grad3[D],M,E,S));let G=.6-C*C-N*N-L*L;return G<0?o=0:(G*=G,o=G*G*this.dot3(this.grad3[B],C,N,L)),32*(i+s+r+o)}noise4d(t,e,n,i){const s=this.grad4,r=this.simplex,o=this.perm,a=(Math.sqrt(5)-1)/4,l=(5-Math.sqrt(5))/20;let c,h,u,d,p;const _=(t+e+n+i)*a,m=Math.floor(t+_),f=Math.floor(e+_),g=Math.floor(n+_),v=Math.floor(i+_),y=(m+f+g+v)*l,x=t-(m-y),b=e-(f-y),w=n-(g-y),T=i-(v-y),A=(x>b?32:0)+(x>w?16:0)+(b>w?8:0)+(x>T?4:0)+(b>T?2:0)+(w>T?1:0),M=r[A][0]>=3?1:0,E=r[A][1]>=3?1:0,S=r[A][2]>=3?1:0,C=r[A][3]>=3?1:0,N=r[A][0]>=2?1:0,L=r[A][1]>=2?1:0,O=r[A][2]>=2?1:0,P=r[A][3]>=2?1:0,R=r[A][0]>=1?1:0,I=r[A][1]>=1?1:0,F=r[A][2]>=1?1:0,D=r[A][3]>=1?1:0,B=x-M+l,z=b-E+l,k=w-S+l,U=T-C+l,G=x-N+2*l,V=b-L+2*l,H=w-O+2*l,j=T-P+2*l,W=x-R+3*l,q=b-I+3*l,X=w-F+3*l,Y=T-D+3*l,$=x-1+4*l,J=b-1+4*l,Z=w-1+4*l,K=T-1+4*l,Q=255&m,tt=255&f,et=255&g,nt=255&v,it=o[Q+o[tt+o[et+o[nt]]]]%32,st=o[Q+M+o[tt+E+o[et+S+o[nt+C]]]]%32,rt=o[Q+N+o[tt+L+o[et+O+o[nt+P]]]]%32,ot=o[Q+R+o[tt+I+o[et+F+o[nt+D]]]]%32,at=o[Q+1+o[tt+1+o[et+1+o[nt+1]]]]%32;let lt=.6-x*x-b*b-w*w-T*T;lt<0?c=0:(lt*=lt,c=lt*lt*this.dot4(s[it],x,b,w,T));let ct=.6-B*B-z*z-k*k-U*U;ct<0?h=0:(ct*=ct,h=ct*ct*this.dot4(s[st],B,z,k,U));let ht=.6-G*G-V*V-H*H-j*j;ht<0?u=0:(ht*=ht,u=ht*ht*this.dot4(s[rt],G,V,H,j));let ut=.6-W*W-q*q-X*X-Y*Y;ut<0?d=0:(ut*=ut,d=ut*ut*this.dot4(s[ot],W,q,X,Y));let dt=.6-$*$-J*J-Z*Z-K*K;return dt<0?p=0:(dt*=dt,p=dt*dt*this.dot4(s[at],$,J,Z,K)),27*(c+h+u+d+p)}}var I0;!function(t){t.ADD=\\\\\\\"add\\\\\\\",t.SET=\\\\\\\"set\\\\\\\",t.MULT=\\\\\\\"mult\\\\\\\",t.SUBSTRACT=\\\\\\\"substract\\\\\\\",t.DIVIDE=\\\\\\\"divide\\\\\\\"}(I0||(I0={}));const F0=[I0.ADD,I0.SET,I0.MULT,I0.SUBSTRACT,I0.DIVIDE];const D0=new class extends ua{constructor(){super(...arguments),this.amplitude=ha.FLOAT(1),this.tamplitudeAttrib=ha.BOOLEAN(0),this.amplitudeAttrib=ha.STRING(\\\\\\\"amp\\\\\\\",{visibleIf:{tamplitudeAttrib:!0}}),this.freq=ha.VECTOR3([1,1,1]),this.offset=ha.VECTOR3([0,0,0]),this.octaves=ha.INTEGER(3,{range:[1,8],rangeLocked:[!0,!1]}),this.ampAttenuation=ha.FLOAT(.5,{range:[0,1]}),this.freqIncrease=ha.FLOAT(2,{range:[0,10]}),this.seed=ha.INTEGER(0,{range:[0,100],separatorAfter:!0}),this.useNormals=ha.BOOLEAN(0),this.attribName=ha.STRING(\\\\\\\"position\\\\\\\"),this.useRestAttributes=ha.BOOLEAN(0),this.restP=ha.STRING(\\\\\\\"restP\\\\\\\",{visibleIf:{useRestAttributes:!0}}),this.restN=ha.STRING(\\\\\\\"restN\\\\\\\",{visibleIf:{useRestAttributes:!0}}),this.operation=ha.INTEGER(F0.indexOf(I0.ADD),{menu:{entries:F0.map((t=>({name:t,value:F0.indexOf(t)})))}}),this.computeNormals=ha.BOOLEAN(1)}},B0=new p.a,z0=new p.a;class k0 extends uV{constructor(){super(...arguments),this.paramsConfig=D0,this._simplexBySeed=new Map,this._restPos=new p.a,this._restValue2=new d.a,this._restValue4=new _.a,this._noiseValueV=new p.a,this._currentAttribValueF=0,this._currentAttribValueV2=new d.a,this._currentAttribValueV3=new p.a,this._currentAttribValueV4=new _.a}static type(){return\\\\\\\"noise\\\\\\\"}static displayedInputNames(){return[\\\\\\\"geometry to add noise to\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState([Qi.FROM_NODE])}setOperation(t){this.p.operation.set(F0.indexOf(t))}async cook(t){const e=t[0],n=e.points(),i=this.pv.attribName;if(!e.hasAttrib(i))return this.states.error.set(`attribute ${i} not found`),void this.cookController.endCook();if(e.attribType(i)!=zs.NUMERIC)return this.states.error.set(`attribute ${i} is not a numeric attribute`),void this.cookController.endCook();const s=e.attribSize(this.pv.attribName),r=n[0];if(!r)return void this.setCoreGroup(e);const o=r.attribValue(i);if(m.isString(o))return void this.states.error.set(\\\\\\\"cannot add noise to a string attribute\\\\\\\");const a={octaves:this.pv.octaves,ampAttenuation:this.pv.ampAttenuation,freqIncrease:this.pv.freqIncrease};try{switch(s){case 1:this._cookForFloat(n,a);break;case 2:this._cookForV2(n,a);break;case 3:this._cookForV3(n,a);break;case 4:this._cookForV4(n,a)}}catch(t){console.error(\\\\\\\"sop/noise error\\\\\\\",t),this.states.error.set(`cook failed for (${this.path()}). make sure the required attributes are present`)}if(!this.io.inputs.cloneRequired(0))for(let t of e.geometries())t.getAttribute(i).needsUpdate=!0;this.pv.computeNormals&&e.computeVertexNormals(),this.setCoreGroup(e)}_cookForFloat(t,e){const n=this._getSimplex(),i=this.pv.useRestAttributes,s=this.pv.useNormals,r=this.pv.tamplitudeAttrib,o=this.pv.amplitude,a=F0[this.pv.operation],l=this.pv.attribName;for(let c of t){i?(c.attribValueVector3(this.pv.restP,B0),s&&c.attribValueVector3(this.pv.restN,z0),this._currentAttribValueF=B0.x):(c.getPosition(B0),s&&c.attribValueVector3(Ws.NORMAL,z0),this._currentAttribValueF=c.attribValueNumber(l));const t=r?this._amplitudeFromAttrib(c,o):o,h=this._noiseValue(s,n,t,e,B0,z0).x,u=k0._newAttribValueFromFloat(a,this._currentAttribValueF,h);c.setAttribValueFromNumber(l,u)}}_cookForV2(t,e){const n=this._getSimplex(),i=this.pv.useRestAttributes,s=this.pv.useNormals,r=this.pv.tamplitudeAttrib,o=this.pv.amplitude,a=F0[this.pv.operation],l=this.pv.attribName;for(let c of t){i?(c.attribValueVector3(this.pv.restP,B0),s&&c.attribValueVector3(this.pv.restN,z0),this._currentAttribValueV2.set(B0.x,B0.y)):(c.getPosition(B0),s&&c.attribValueVector3(Ws.NORMAL,z0),c.attribValueVector2(l,this._currentAttribValueV2));const t=r?this._amplitudeFromAttrib(c,o):o,h=this._noiseValue(s,n,t,e,B0,z0);this._restValue2.set(h.x,h.y);const u=this._restValue2,d=k0._newAttribValueFromVector2(a,this._currentAttribValueV2,u);c.setAttribValueFromVector2(l,d)}}_cookForV3(t,e){const n=this._getSimplex(),i=this.pv.useRestAttributes,s=this.pv.useNormals,r=this.pv.tamplitudeAttrib,o=this.pv.amplitude,a=F0[this.pv.operation],l=this.pv.attribName;for(let c of t){i?(c.attribValueVector3(this.pv.restP,B0),s&&c.attribValueVector3(this.pv.restN,z0),this._currentAttribValueV3.copy(B0)):(c.getPosition(B0),s&&c.attribValueVector3(Ws.NORMAL,z0),c.attribValueVector3(l,this._currentAttribValueV3));const t=r?this._amplitudeFromAttrib(c,o):o,h=this._noiseValue(s,n,t,e,B0,z0),u=k0._newAttribValueFromVector3(a,this._currentAttribValueV3,h);c.setAttribValueFromVector3(l,u)}}_cookForV4(t,e){const n=this._getSimplex(),i=this.pv.useRestAttributes,s=this.pv.useNormals,r=this.pv.tamplitudeAttrib,o=this.pv.amplitude,a=F0[this.pv.operation],l=this.pv.attribName;for(let c of t){i?(c.attribValueVector3(this.pv.restP,B0),s&&c.attribValueVector3(this.pv.restN,z0),this._currentAttribValueV4.set(B0.x,B0.y,B0.z,0)):(c.getPosition(B0),s&&c.attribValueVector3(Ws.NORMAL,z0),c.attribValueVector4(l,this._currentAttribValueV4));const t=r?this._amplitudeFromAttrib(c,o):o,h=this._noiseValue(s,n,t,e,B0,z0);this._restValue4.set(h.x,h.y,h.z,0);const u=this._restValue4,d=k0._newAttribValueFromVector4(a,this._currentAttribValueV4,u);c.setAttribValueFromVector4(l,d)}}_noiseValue(t,e,n,i,s,r){if(this._restPos.copy(s).add(this.pv.offset).multiply(this.pv.freq),t&&r){const t=n*this._fbm(e,i,this._restPos.x,this._restPos.y,this._restPos.z);return this._noiseValueV.copy(r),this._noiseValueV.multiplyScalar(t)}return this._noiseValueV.set(n*this._fbm(e,i,this._restPos.x+545,this._restPos.y+125454,this._restPos.z+2142),n*this._fbm(e,i,this._restPos.x-425,this._restPos.y-25746,this._restPos.z+95242),n*this._fbm(e,i,this._restPos.x+765132,this._restPos.y+21,this._restPos.z-9245)),this._noiseValueV}static _newAttribValueFromFloat(t,e,n){switch(t){case I0.ADD:return e+n;case I0.SET:return n;case I0.MULT:return e*n;case I0.DIVIDE:return e/n;case I0.SUBSTRACT:return e-n}os.unreachable(t)}static _newAttribValueFromVector2(t,e,n){switch(t){case I0.ADD:return e.add(n);case I0.SET:return n;case I0.MULT:return e.multiply(n);case I0.DIVIDE:return e.divide(n);case I0.SUBSTRACT:return e.sub(n)}os.unreachable(t)}static _newAttribValueFromVector3(t,e,n){switch(t){case I0.ADD:return e.add(n);case I0.SET:return n;case I0.MULT:return e.multiply(n);case I0.DIVIDE:return e.divide(n);case I0.SUBSTRACT:return e.sub(n)}os.unreachable(t)}static _newAttribValueFromVector4(t,e,n){switch(t){case I0.ADD:return e.add(n);case I0.SET:return n;case I0.MULT:return e.multiplyScalar(n.x);case I0.DIVIDE:return e.divideScalar(n.x);case I0.SUBSTRACT:return e.sub(n)}os.unreachable(t)}_amplitudeFromAttrib(t,e){const n=t.attribValue(this.pv.amplitudeAttrib);return m.isNumber(n)?n*e:n instanceof d.a||n instanceof p.a||n instanceof _.a?n.x*e:1}_fbm(t,e,n,i,s){let r=0,o=1;for(let a=0;a<e.octaves;a++)r+=o*t.noise3d(n,i,s),n*=e.freqIncrease,i*=e.freqIncrease,s*=e.freqIncrease,o*=e.ampAttenuation;return r}_getSimplex(){const t=this._simplexBySeed.get(this.pv.seed);if(t)return t;{const t=this._createSimplex();return this._simplexBySeed.set(this.pv.seed,t),t}}_createSimplex(){const t=this.pv.seed,e=new R0({random:function(){return or.randFloat(t)}});return this._simplexBySeed.delete(t),e}}const U0=new class extends ua{constructor(){super(...arguments),this.edit=ha.BOOLEAN(0),this.updateX=ha.BOOLEAN(0,{visibleIf:{edit:1}}),this.x=ha.FLOAT(\\\\\\\"@N.x\\\\\\\",{visibleIf:{updateX:1,edit:1},expression:{forEntities:!0}}),this.updateY=ha.BOOLEAN(0,{visibleIf:{edit:1}}),this.y=ha.FLOAT(\\\\\\\"@N.y\\\\\\\",{visibleIf:{updateY:1,edit:1},expression:{forEntities:!0}}),this.updateZ=ha.BOOLEAN(0,{visibleIf:{edit:1}}),this.z=ha.FLOAT(\\\\\\\"@N.z\\\\\\\",{visibleIf:{updateZ:1,edit:1},expression:{forEntities:!0}}),this.recompute=ha.BOOLEAN(1,{visibleIf:{edit:0}}),this.invert=ha.BOOLEAN(0)}};class G0 extends uV{constructor(){super(...arguments),this.paramsConfig=U0}static type(){return\\\\\\\"normals\\\\\\\"}static displayedInputNames(){return[\\\\\\\"geometry to update normals of\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(Qi.FROM_NODE)}async cook(t){const e=t[0];this.pv.edit?await this._eval_expressions_for_core_group(e):this.pv.recompute&&e.computeVertexNormals(),this.pv.invert&&this._invert_normals(e),this.setCoreGroup(e)}async _eval_expressions_for_core_group(t){const e=t.coreObjects();for(let t=0;t<e.length;t++)await this._eval_expressions_for_core_object(e[t])}async _eval_expressions_for_core_object(t){const e=t.object().geometry,n=t.points();let i=e.getAttribute(Ws.NORMAL);if(!i){new fr(e).addNumericAttrib(Ws.NORMAL,3,0),i=e.getAttribute(Ws.NORMAL)}const s=i.array;if(this.pv.updateX)if(this.p.x.hasExpression()&&this.p.x.expressionController)await this.p.x.expressionController.computeExpressionForPoints(n,((t,e)=>{s[3*t.index()+0]=e}));else{let t;for(let e=0;e<n.length;e++)t=n[e],s[3*t.index()+0]=this.pv.x}if(this.pv.updateY)if(this.p.y.hasExpression()&&this.p.y.expressionController)await this.p.y.expressionController.computeExpressionForPoints(n,((t,e)=>{s[3*t.index()+1]=e}));else{let t;for(let e=0;e<n.length;e++)t=n[e],s[3*t.index()+1]=this.pv.y}if(this.pv.updateZ)if(this.p.z.hasExpression()&&this.p.z.expressionController)await this.p.z.expressionController.computeExpressionForPoints(n,((t,e)=>{s[3*t.index()+2]=e}));else{let t;for(let e=0;e<n.length;e++)t=n[e],s[3*t.index()+2]=this.pv.z}}_invert_normals(t){var e;for(let n of t.coreObjects()){const t=null===(e=n.coreGeometry())||void 0===e?void 0:e.geometry();if(t){const e=t.attributes[Ws.NORMAL];if(e){const t=e.array;for(let e=0;e<t.length;e++)t[e]*=-1}}}}}class V0 extends aV{static type(){return\\\\\\\"null\\\\\\\"}cook(t,e){const n=t[0];return n||this.createCoreGroupFromObjects([])}}V0.DEFAULT_PARAMS={},V0.INPUT_CLONED_STATE=Qi.FROM_NODE;const H0=new class extends ua{};class j0 extends uV{constructor(){super(...arguments),this.paramsConfig=H0}static type(){return\\\\\\\"null\\\\\\\"}initializeNode(){this.io.inputs.setCount(0,1),this.io.inputs.initInputsClonedState(V0.INPUT_CLONED_STATE)}cook(t){this._operation=this._operation||new V0(this.scene(),this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}const W0=new class extends ua{constructor(){super(...arguments),this.geometry=ha.OPERATOR_PATH(\\\\\\\"\\\\\\\",{nodeSelection:{context:ts.SOP}})}};class q0 extends uV{constructor(){super(...arguments),this.paramsConfig=W0}static type(){return\\\\\\\"objectMerge\\\\\\\"}initializeNode(){this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.geometry],(()=>this.p.geometry.rawInput()))}))}))}async cook(t){const e=this.p.geometry.found_node();if(e)if(e.context()==ts.SOP){const t=await e.compute();this.import_input(e,t)}else this.states.error.set(\\\\\\\"found node is not a geometry\\\\\\\");else this.states.error.set(`node not found at path '${this.pv.geometry}'`)}import_input(t,e){let n;null!=(n=e.coreContentCloned())?this.setCoreGroup(n):this.states.error.set(\\\\\\\"invalid target\\\\\\\")}}class X0 extends aV{static type(){return\\\\\\\"objectProperties\\\\\\\"}cook(t,e){const n=t[0];for(let t of n.objects())e.applyToChildren?t.traverse((t=>{this._update_object(t,e)})):this._update_object(t,e);return n}_update_object(t,e){e.tname&&(t.name=e.name),e.trenderOrder&&(t.renderOrder=e.renderOrder),e.tfrustumCulled&&(t.frustumCulled=e.frustumCulled),e.tmatrixAutoUpdate&&(t.matrixAutoUpdate=e.matrixAutoUpdate),e.tvisible&&(t.visible=e.visible),e.tcastShadow&&(t.castShadow=e.castShadow),e.treceiveShadow&&(t.receiveShadow=e.receiveShadow)}}X0.DEFAULT_PARAMS={applyToChildren:!0,tname:!1,name:\\\\\\\"\\\\\\\",trenderOrder:!1,renderOrder:0,tfrustumCulled:!1,frustumCulled:!0,tmatrixAutoUpdate:!1,matrixAutoUpdate:!1,tvisible:!1,visible:!0,tcastShadow:!1,castShadow:!0,treceiveShadow:!1,receiveShadow:!0},X0.INPUT_CLONED_STATE=Qi.FROM_NODE;const Y0=X0.DEFAULT_PARAMS;const $0=new class extends ua{constructor(){super(...arguments),this.applyToChildren=ha.BOOLEAN(Y0.applyToChildren,{separatorAfter:!0}),this.tname=ha.BOOLEAN(Y0.tname),this.name=ha.STRING(Y0.name,{visibleIf:{tname:!0},separatorAfter:!0}),this.trenderOrder=ha.BOOLEAN(Y0.trenderOrder),this.renderOrder=ha.INTEGER(Y0.renderOrder,{visibleIf:{trenderOrder:!0},range:[0,10],rangeLocked:[!1,!1],separatorAfter:!0}),this.tfrustumCulled=ha.BOOLEAN(Y0.tfrustumCulled),this.frustumCulled=ha.BOOLEAN(Y0.frustumCulled,{visibleIf:{tfrustumCulled:!0},separatorAfter:!0}),this.tmatrixAutoUpdate=ha.BOOLEAN(Y0.tmatrixAutoUpdate),this.matrixAutoUpdate=ha.BOOLEAN(Y0.matrixAutoUpdate,{visibleIf:{tmatrixAutoUpdate:!0},separatorAfter:!0}),this.tvisible=ha.BOOLEAN(Y0.tvisible),this.visible=ha.BOOLEAN(Y0.visible,{visibleIf:{tvisible:!0},separatorAfter:!0}),this.tcastShadow=ha.BOOLEAN(Y0.tcastShadow),this.castShadow=ha.BOOLEAN(Y0.castShadow,{visibleIf:{tcastShadow:!0},separatorAfter:!0}),this.treceiveShadow=ha.BOOLEAN(Y0.treceiveShadow),this.receiveShadow=ha.BOOLEAN(Y0.receiveShadow,{visibleIf:{treceiveShadow:!0}})}};class J0 extends uV{constructor(){super(...arguments),this.paramsConfig=$0}static type(){return\\\\\\\"objectProperties\\\\\\\"}static displayedInputNames(){return[\\\\\\\"objects to change properties of\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(X0.INPUT_CLONED_STATE)}async cook(t){this._operation=this._operation||new X0(this.scene(),this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}const Z0=new class extends ua{};class K0 extends uV{constructor(){super(...arguments),this.paramsConfig=Z0,this._input_configs_by_operation_container=new WeakMap}static type(){return Bl}initializeNode(){this.io.inputs.initInputsClonedState(Qi.FROM_NODE)}set_output_operation_container(t){this._output_operation_container=t}output_operation_container(){return this._output_operation_container}add_input_config(t,e){let n=this._input_configs_by_operation_container.get(t);n||(n=new Map,this._input_configs_by_operation_container.set(t,n)),n.set(e.operation_input_index,e.node_input_index)}add_operation_container_with_path_param_resolve_required(t){this._operation_containers_requiring_resolve||(this._operation_containers_requiring_resolve=[]),this._operation_containers_requiring_resolve.push(t)}resolve_operation_containers_path_params(){if(this._operation_containers_requiring_resolve)for(let t of this._operation_containers_requiring_resolve)t.resolve_path_params(this)}async cook(t){if(this._output_operation_container){this._output_operation_container.setDirty();const e=await this._output_operation_container.compute(t,this._input_configs_by_operation_container);e&&this.setCoreGroup(e)}}}class Q0 extends _f{constructor(t){super(),this._uv_name=t}set_texture_allocations_controller(t){this._texture_allocations_controller=t}handle_globals_node(t,e,n){if(!this._texture_allocations_controller)return;const i=t.io.outputs.namedOutputConnectionPointsByName(e),s=t.glVarName(e);if(this._texture_allocations_controller.variable(e)&&i){const r=i.type(),o=`${r} ${s} = ${this.read_attribute(t,r,e,n)}`;n.addBodyLines(t,[o])}else this.globals_geometry_handler=this.globals_geometry_handler||new Pf,this.globals_geometry_handler.handle_globals_node(t,e,n)}read_attribute(t,e,n,i){if(!this._texture_allocations_controller)return;const s=this._texture_allocations_controller.variable(n);if(!s)return Pf.read_attribute(t,e,n,i);{this.add_particles_sim_uv_attribute(t,i);const e=s.component(),n=s.allocation();if(n){const s=n.textureName(),r=new Nf(t,Uo.SAMPLER_2D,s);i.addDefinitions(t,[r]);return`texture2D( ${s}, ${this._uv_name} ).${e}`}}}add_particles_sim_uv_attribute(t,e){const n=new Sf(t,Uo.VEC2,Q0.UV_ATTRIB),i=new Lf(t,Uo.VEC2,Q0.UV_VARYING);e.addDefinitions(t,[n,i],Mf.VERTEX),e.addDefinitions(t,[i],Mf.FRAGMENT),e.addBodyLines(t,[`${Q0.UV_VARYING} = ${Q0.UV_ATTRIB}`],Mf.VERTEX)}}Q0.UV_ATTRIB=\\\\\\\"particles_sim_uv_attrib\\\\\\\",Q0.UV_VARYING=\\\\\\\"particles_sim_uv_varying\\\\\\\",Q0.PARTICLE_SIM_UV=\\\\\\\"particleUV\\\\\\\";class t1{constructor(t){this.node=t,this._particles_group_objects=[],this._all_shader_names=[],this._all_uniform_names=[],this.globals_handler=new Q0(Q0.UV_VARYING)}setShadersByName(t){this._shaders_by_name=t,this._all_shader_names=[],this._all_uniform_names=[],this._shaders_by_name.forEach(((t,e)=>{this._all_shader_names.push(e),this._all_uniform_names.push(`texture_${e}`)})),this.reset_render_material()}assign_render_material(){if(this._render_material){for(let t of this._particles_group_objects){const e=t;e.geometry&&(e.material=this._render_material,yr.applyCustomMaterials(e,this._render_material),e.matrixAutoUpdate=!1,e.updateMatrix())}this._render_material.needsUpdate=!0,this.update_render_material_uniforms()}}update_render_material_uniforms(){var t;if(!this._render_material)return;let e,n;for(let i=0;i<this._all_shader_names.length;i++){n=this._all_shader_names[i],e=this._all_uniform_names[i];const s=null===(t=this.node.gpuController.getCurrentRenderTarget(n))||void 0===t?void 0:t.texture;s&&(this._render_material.uniforms[e].value=s,yr.assign_custom_uniforms(this._render_material,e,s))}}reset_render_material(){this._render_material=void 0,this._particles_group_objects=[]}material(){return this._render_material}initialized(){return null!=this._render_material}init_core_group(t){for(let e of t.objectsWithGeo())this._particles_group_objects.push(e)}async init_render_material(){var t;const e=null===(t=this.node.assemblerController)||void 0===t?void 0:t.assembler;if(this._render_material)return;this.node.p.material.isDirty()&&await this.node.p.material.compute();const n=this.node.p.material.found_node();if(n){if(e){const t=e.textureAllocationsController().toJSON(this.node.scene()),i=n.assemblerController;i&&(this.globals_handler.set_texture_allocations_controller(e.textureAllocationsController()),i.set_assembler_globals_handler(this.globals_handler)),this._texture_allocations_json&&JSON.stringify(this._texture_allocations_json)==JSON.stringify(t)||(this._texture_allocations_json=b.cloneDeep(t),i&&i.set_compilation_required_and_dirty())}const t=await n.compute();this._render_material=t.material()}else this.node.states.error.set(\\\\\\\"render material not valid\\\\\\\");if(this._render_material){const t=this._render_material.uniforms;for(let e of this._all_uniform_names){const n={value:null};t[e]=n,this._render_material&&yr.init_custom_material_uniforms(this._render_material,e,n)}}this.assign_render_material()}}var e1,n1=function(t,e,n){this.variables=[],this.currentTextureIndex=0;var i=w.G,s=new vs;s.matrixAutoUpdate=!1;var r=new of.a;r.position.z=1,r.matrixAutoUpdate=!1,r.updateMatrix();var o={passThruTexture:{value:null}},a=h(\\\\\\\"uniform sampler2D passThruTexture;\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\tvec2 uv = gl_FragCoord.xy / resolution.xy;\\\\n\\\\n\\\\tgl_FragColor = texture2D( passThruTexture, uv );\\\\n\\\\n}\\\\n\\\\\\\",o),l=new B.a(new L(2,2),a);function c(n){n.defines.resolution=\\\\\\\"vec2( \\\\\\\"+t.toFixed(1)+\\\\\\\", \\\\\\\"+e.toFixed(1)+\\\\\\\" )\\\\\\\"}function h(t,e){var n=new F({uniforms:e=e||{},vertexShader:\\\\\\\"void main()\\\\t{\\\\n\\\\n\\\\tgl_Position = vec4( position, 1.0 );\\\\n\\\\n}\\\\n\\\\\\\",fragmentShader:t});return c(n),n}l.matrixAutoUpdate=!1,l.updateMatrix(),s.add(l),this.setDataType=function(t){return i=t,this},this.addVariable=function(t,e,n){var i={name:t,initialValueTexture:n,material:this.createShaderMaterial(e),dependencies:null,renderTargets:[],wrapS:null,wrapT:null,minFilter:w.ob,magFilter:w.ob};return this.variables.push(i),i},this.setVariableDependencies=function(t,e){t.dependencies=e},this.init=function(){if(!1===n.capabilities.isWebGL2&&!1===n.extensions.has(\\\\\\\"OES_texture_float\\\\\\\"))return\\\\\\\"No OES_texture_float support for float textures.\\\\\\\";if(0===n.capabilities.maxVertexTextures)return\\\\\\\"No support for vertex shader textures.\\\\\\\";for(var i=0;i<this.variables.length;i++){var s=this.variables[i];s.renderTargets[0]=this.createRenderTarget(t,e,s.wrapS,s.wrapT,s.minFilter,s.magFilter),s.renderTargets[1]=this.createRenderTarget(t,e,s.wrapS,s.wrapT,s.minFilter,s.magFilter),this.renderTexture(s.initialValueTexture,s.renderTargets[0]),this.renderTexture(s.initialValueTexture,s.renderTargets[1]);var r=s.material.uniforms;if(null!==s.dependencies)for(var o=0;o<s.dependencies.length;o++){var a=s.dependencies[o];if(a.name!==s.name){for(var l=!1,c=0;c<this.variables.length;c++)if(a.name===this.variables[c].name){l=!0;break}if(!l)return\\\\\\\"Variable dependency not found. Variable=\\\\\\\"+s.name+\\\\\\\", dependency=\\\\\\\"+a.name}r[a.name]={value:null}}}return this.currentTextureIndex=0,null},this.compute=function(){for(var t=this.currentTextureIndex,e=0===this.currentTextureIndex?1:0,n=0,i=this.variables.length;n<i;n++){var s=this.variables[n];if(null!==s.dependencies)for(var r=s.material.uniforms,o=0,a=s.dependencies.length;o<a;o++){var l=s.dependencies[o];r[l.name].value=l.renderTargets[t].texture}this.doRenderTarget(s.material,s.renderTargets[e])}this.currentTextureIndex=e},this.getCurrentRenderTarget=function(t){return t.renderTargets[this.currentTextureIndex]},this.getAlternateRenderTarget=function(t){return t.renderTargets[0===this.currentTextureIndex?1:0]},this.addResolutionDefine=c,this.createShaderMaterial=h,this.createRenderTarget=function(n,s,r,o,a,l){return n=n||t,s=s||e,r=r||w.n,o=o||w.n,a=a||w.ob,l=l||w.ob,new K(n,s,{wrapS:r,wrapT:o,minFilter:a,magFilter:l,format:w.Ib,type:i,depthBuffer:!1})},this.createTexture=function(){var n=new Float32Array(t*e*4);return new vo.a(n,t,e,w.Ib,w.G)},this.renderTexture=function(t,e){o.passThruTexture.value=t,this.doRenderTarget(a,e),o.passThruTexture.value=null},this.doRenderTarget=function(t,e){var i=n.getRenderTarget();l.material=t,n.setRenderTarget(e),n.render(s,r),l.material=a,n.setRenderTarget(i)}};!function(t){t.FLOAT=\\\\\\\"float\\\\\\\",t.HALF_FLOAT=\\\\\\\"half\\\\\\\"}(e1||(e1={}));const i1=[e1.FLOAT,e1.HALF_FLOAT],s1={[e1.FLOAT]:w.G,[e1.HALF_FLOAT]:w.M};class r1{constructor(t){this.node=t,this._simulationRestartRequired=!1,this._points=[],this._variablesByName=new Map,this._allVariables=[],this._createdTexturesByName=new Map,this._deltaTime=0,this._usedTexturesSize=new d.a}dispose(){this._graph_node&&this._graph_node.dispose()}setPersistedTextureAllocationController(t){this._persistedTextureAllocationsController=t}setShadersByName(t){this._shadersByName=t,this.resetGpuCompute()}allVariables(){return this._allVariables}async init(t){this.initParticleGroupPoints(t),await this.create_gpu_compute()}getCurrentRenderTarget(t){var e;const n=this._variablesByName.get(t);if(n)return null===(e=this._gpuCompute)||void 0===e?void 0:e.getCurrentRenderTarget(n)}initParticleGroupPoints(t){this.resetGpuCompute(),t&&(this._particlesCoreGroup=t,this._points=this._getPoints()||[])}computeSimilationIfRequired(){const t=this.node.scene().frame(),e=this.node.pv.startFrame;t>=e&&(null==this._lastSimulatedFrame&&(this._lastSimulatedFrame=e-1),null==this._lastSimulatedTime&&(this._lastSimulatedTime=this.node.scene().time()),t>this._lastSimulatedFrame&&this._computeSimulation(t-this._lastSimulatedFrame))}_computeSimulation(t=1){if(!this._gpuCompute||null==this._lastSimulatedTime)return;this._updateSimulationMaterialUniforms();for(let e=0;e<t;e++)this._gpuCompute.compute();this.node.renderController.update_render_material_uniforms(),this._lastSimulatedFrame=this.node.scene().frame();const e=this.node.scene().time();this._deltaTime=e-this._lastSimulatedTime,this._deltaTime=Math.min(this._deltaTime,.1),this._lastSimulatedTime=e}_dataType(){const t=i1[this.node.pv.dataType];return s1[t]}_textureNameForShaderName(t){return`texture_${t}`}async create_gpu_compute(){var t,e;if(this.node.pv.autoTexturesSize){const t=or.nearestPower2(Math.sqrt(this._points.length));this._usedTexturesSize.x=Math.min(t,this.node.pv.maxTexturesSize.x),this._usedTexturesSize.y=Math.min(t,this.node.pv.maxTexturesSize.y)}else{if(!Object(On.i)(this.node.pv.texturesSize.x)||!Object(On.i)(this.node.pv.texturesSize.y))return void this.node.states.error.set(\\\\\\\"texture size must be a power of 2\\\\\\\");const t=this.node.pv.texturesSize.x*this.node.pv.texturesSize.y;if(this._points.length>t)return void this.node.states.error.set(`max particles is set to (${this.node.pv.texturesSize.x}x${this.node.pv.texturesSize.y}=) ${t}`);this._usedTexturesSize.copy(this.node.pv.texturesSize)}this._forceTimeDependent(),this._initParticlesUVs(),this.node.renderController.reset_render_material();const n=await li.renderersController.waitForRenderer();if(n?this._renderer=n:this.node.states.error.set(\\\\\\\"no renderer found\\\\\\\"),!this._renderer)return;const i=new n1(this._usedTexturesSize.x,this._usedTexturesSize.y,this._renderer);if(i.setDataType(this._dataType()),this._gpuCompute=i,this._gpuCompute){this._lastSimulatedFrame=void 0,this._variablesByName.forEach(((t,e)=>{t.renderTargets[0].dispose(),t.renderTargets[1].dispose(),this._variablesByName.delete(e)})),this._allVariables=[],null===(t=this._shadersByName)||void 0===t||t.forEach(((t,e)=>{if(this._gpuCompute){const n=this._gpuCompute.addVariable(this._textureNameForShaderName(e),t,this._createdTexturesByName.get(e));this._variablesByName.set(e,n),this._allVariables.push(n)}})),null===(e=this._variablesByName)||void 0===e||e.forEach(((t,e)=>{this._gpuCompute&&this._gpuCompute.setVariableDependencies(t,this._allVariables)})),this._createTextureRenderTargets(),this._fillTextures(),this._createSimulationMaterialUniforms();var s=this._gpuCompute.init();null!==s&&(console.error(s),this.node.states.error.set(s))}else this.node.states.error.set(\\\\\\\"failed to create the GPUComputationRenderer\\\\\\\")}_forceTimeDependent(){this._graph_node||(this._graph_node=new Mi(this.node.scene(),\\\\\\\"gpu_compute\\\\\\\"),this._graph_node.addGraphInput(this.node.scene().timeController.graphNode),this._graph_node.addPostDirtyHook(\\\\\\\"on_time_change\\\\\\\",this._onGraphNodeDirty.bind(this)))}_onGraphNodeDirty(){this.node.isOnStartFrame()?this.node.setDirty():this.computeSimilationIfRequired()}materials(){const t=[];return this._variablesByName.forEach(((e,n)=>{t.push(e.material)})),t}_createSimulationMaterialUniforms(){const t=this.node.assemblerController,e=null==t?void 0:t.assembler;if(!e&&!this._persistedTextureAllocationsController)return;const n=[];this._variablesByName.forEach(((t,e)=>{n.push(t.material)}));const i=this._readonlyAllocations();for(let t of n)t.uniforms[TR.TIME]={value:this.node.scene().time()},t.uniforms[TR.DELTA_TIME]={value:this.node.scene().time()},i&&this._assignReadonlyTextures(t,i);if(e)for(let t of n)for(let n of e.param_configs())t.uniforms[n.uniform_name]=n.uniform;else{const t=this.node.persisted_config.loaded_data();if(t){const e=this.node.persisted_config.uniforms();if(e){const s=t.param_uniform_pairs;for(let t of s){const s=t[0],r=t[1],o=this.node.params.get(s),a=e[r];for(let t of n)t.uniforms[r]=a,i&&this._assignReadonlyTextures(t,i);o&&a&&o.options.setOption(\\\\\\\"callback\\\\\\\",(()=>{for(let t of n)tg.callback(o,t.uniforms[r])}))}}}}}_assignReadonlyTextures(t,e){for(let n of e){const e=n.shaderName(),i=this._createdTexturesByName.get(e);if(i){const n=this._textureNameForShaderName(e);t.uniforms[n]={value:i}}}}_updateSimulationMaterialUniforms(){for(let t of this._allVariables)t.material.uniforms[TR.TIME].value=this.node.scene().time(),t.material.uniforms[TR.DELTA_TIME].value=this._deltaTime}_initParticlesUVs(){var t=new Float32Array(2*this._points.length);let e=0;for(var n=0,i=0;i<this._usedTexturesSize.x;i++)for(var s=0;s<this._usedTexturesSize.y&&(t[e++]=s/(this._usedTexturesSize.x-1),t[e++]=i/(this._usedTexturesSize.y-1),!((n+=2)>=t.length));s++);const r=Q0.UV_ATTRIB;if(this._particlesCoreGroup)for(let e of this._particlesCoreGroup.coreGeometries()){const n=e.geometry(),i=e.markedAsInstance()?I$:C.a;n.setAttribute(r,new i(t,2))}}createdTexturesByName(){return this._createdTexturesByName}_fillTextures(){const t=this._textureAllocationsController();t&&this._createdTexturesByName.forEach(((e,n)=>{const i=t.allocationForShaderName(n);if(!i)return void console.warn(`no allocation found for shader ${n}`);const s=i.variables();if(!s)return void console.warn(\\\\\\\"allocation has no variables\\\\\\\");const r=e.image.data;for(let t of s){const e=t.position();let n=t.name();const i=this._points[0];if(i){if(i.hasAttrib(n)){const t=i.attribSize(n);let s=e;for(let e of this._points){if(1==t){const t=e.attribValue(n);r[s]=t}else e.attribValue(n).toArray(r,s);s+=4}}}}}))}resetGpuCompute(){this._gpuCompute=void 0,this._simulationRestartRequired=!0}setRestartNotRequired(){this._simulationRestartRequired=!1}resetGpuComputeAndSetDirty(){this.resetGpuCompute(),this.node.setDirty()}resetParticleGroups(){this._particlesCoreGroup=void 0}initialized(){return null!=this._particlesCoreGroup&&null!=this._gpuCompute}_createTextureRenderTargets(){this._createdTexturesByName.forEach(((t,e)=>{t.dispose()})),this._createdTexturesByName.clear(),this._variablesByName.forEach(((t,e)=>{this._gpuCompute&&this._createdTexturesByName.set(e,this._gpuCompute.createTexture())}));const t=this._readonlyAllocations();if(t&&this._gpuCompute)for(let e of t)this._createdTexturesByName.set(e.shaderName(),this._gpuCompute.createTexture())}_textureAllocationsController(){var t;return(null===(t=this.node.assemblerController)||void 0===t?void 0:t.assembler.textureAllocationsController())||this._persistedTextureAllocationsController}_readonlyAllocations(){var t;return null===(t=this._textureAllocationsController())||void 0===t?void 0:t.readonlyAllocations()}restartSimulationIfRequired(){this._simulationRestartRequired&&this._restartSimulation()}_restartSimulation(){this._lastSimulatedTime=void 0,this._createTextureRenderTargets();this._getPoints()&&(this._fillTextures(),this._variablesByName.forEach(((t,e)=>{const n=this._createdTexturesByName.get(e);this._gpuCompute&&n&&(this._gpuCompute.renderTexture(n,t.renderTargets[0]),this._gpuCompute.renderTexture(n,t.renderTargets[1]))})))}_getPoints(){if(!this._particlesCoreGroup)return;let t=this._particlesCoreGroup.coreGeometries();const e=t[0];if(e){const n=e.markedAsInstance(),i=[];for(let e of t)e.markedAsInstance()==n&&i.push(e);const s=[];for(let t of i)for(let e of t.points())s.push(e);return s}return[]}}class o1{constructor(t,e){if(this._name=t,this._size=e,this._position=-1,this._readonly=!1,!t)throw\\\\\\\"TextureVariable requires a name\\\\\\\"}merge(t){var e;t.readonly()||this.setReadonly(!1),null===(e=t.graphNodeIds())||void 0===e||e.forEach(((t,e)=>{this.addGraphNodeId(e)}))}setReadonly(t){this._readonly=t}readonly(){return this._readonly}setAllocation(t){this._allocation=t}allocation(){return this._allocation}graphNodeIds(){return this._graph_node_ids}addGraphNodeId(t){this._graph_node_ids=this._graph_node_ids||new Map,this._graph_node_ids.set(t,!0)}name(){return this._name}size(){return this._size}setPosition(t){this._position=t}position(){return this._position}component(){return\\\\\\\"xyzw\\\\\\\".split(\\\\\\\"\\\\\\\").splice(this._position,this._size).join(\\\\\\\"\\\\\\\")}static fromJSON(t){return new o1(t.name,t.size)}toJSON(t){const e=[];return this._graph_node_ids&&this._graph_node_ids.forEach(((n,i)=>{const s=t.graph.nodeFromId(i);if(s){const t=s.path();t&&e.push(t)}})),{name:this.name(),size:this.size(),nodes:e}}}class a1{constructor(){this._size=0}addVariable(t){this._variables=this._variables||[],this._variables.push(t),t.setPosition(this._size),t.setAllocation(this),this._size+=t.size()}hasSpaceForVariable(t){return this._size+t.size()<=4}shaderName(){var t;return((null===(t=this.variables())||void 0===t?void 0:t.map((t=>t.name())))||[\\\\\\\"no_variables_allocated\\\\\\\"]).join(\\\\\\\"_SEPARATOR_\\\\\\\")}textureName(){return`texture_${this.shaderName()}`}variables(){return this._variables}variablesForInputNode(t){var e;return null===(e=this._variables)||void 0===e?void 0:e.filter((e=>{var n;return(null===(n=e.graphNodeIds())||void 0===n?void 0:n.has(t.graphNodeId()))||!1}))}inputNamesForNode(t){const e=this.variablesForInputNode(t);if(e)return t.type()==ps.ATTRIBUTE?[wf.INPUT_NAME]:e.map((t=>t.name()))}variable(t){if(this._variables)for(let e of this._variables)if(e.name()==t)return e}static fromJSON(t){const e=new a1;for(let n of t){const t=o1.fromJSON(n);e.addVariable(t)}return e}toJSON(t){return this._variables?this._variables.map((e=>e.toJSON(t))):[]}}const l1=[\\\\\\\"position\\\\\\\",\\\\\\\"normal\\\\\\\",\\\\\\\"color\\\\\\\",\\\\\\\"uv\\\\\\\"];class c1{constructor(){this._writableAllocations=[],this._readonlyAllocations=[]}static _sortNodes(t){const e=t.filter((t=>t.type()==OF.type())),n=t.filter((t=>t.type()!=OF.type())),i=n.map((t=>t.name())).sort(),s=new Map;for(let t of n)s.set(t.name(),t);for(let t of i){const n=s.get(t);n&&e.push(n)}return e}allocateConnectionsFromRootNodes(t,e){const n=[];t=c1._sortNodes(t),e=c1._sortNodes(e);for(let e of t){const t=e.graphNodeId();switch(e.type()){case OF.type():for(let i of e.io.inputs.namedInputConnectionPoints()){if(e.io.inputs.named_input(i.name())){const e=new o1(i.name(),Wo[i.type()]);e.addGraphNodeId(t),n.push(e)}}break;case wf.type():{const i=e,s=i.connected_input_node(),r=i.connected_input_connection_point();if(s&&r){const e=new o1(i.attribute_name,Wo[r.type()]);e.addGraphNodeId(t),n.push(e)}break}}}for(let t of e){const e=t.graphNodeId();switch(t.type()){case II.type():{const i=t;for(let t of i.io.outputs.used_output_names()){if(l1.includes(t)){const s=i.io.outputs.namedOutputConnectionPointsByName(t);if(s){const i=s.type(),r=new o1(t,Wo[i]);r.addGraphNodeId(e),n.push(r)}}}break}case wf.type():{const i=t,s=i.output_connection_point();if(s){const t=new o1(i.attribute_name,Wo[s.type()]);i.isExporting()||t.setReadonly(!0),t.addGraphNodeId(e),n.push(t)}break}}}this._allocateVariables(n)}_allocateVariables(t){const e=f.sortBy(t,(t=>-t.size())),n=this._ensureVariablesAreUnique(e);for(let t of n)t.readonly()?this._allocateVariable(t,this._readonlyAllocations):this._allocateVariable(t,this._writableAllocations)}_ensureVariablesAreUnique(t){const e=new Map;for(let n of t)h.pushOnArrayAtEntry(e,n.name(),n);const n=[];return e.forEach(((t,e)=>{const i=t[0];n.push(i);for(let e=1;e<t.length;e++){const n=t[e];i.merge(n)}})),n}_allocateVariable(t,e){let n=this.hasVariable(t.name());if(n)throw\\\\\\\"no variable should be allocated since they have been made unique before\\\\\\\";if(!n)for(let i of e)!n&&i.hasSpaceForVariable(t)&&(i.addVariable(t),n=!0);if(!n){const n=new a1;e.push(n),n.addVariable(t)}}_addWritableAllocation(t){this._writableAllocations.push(t)}_addReadonlyAllocation(t){this._readonlyAllocations.push(t)}readonlyAllocations(){return this._readonlyAllocations}shaderNames(){const t=this._writableAllocations.map((t=>t.shaderName()));return f.uniq(t)}createShaderConfigs(){return[]}allocationForShaderName(t){const e=this._writableAllocations.filter((e=>e.shaderName()==t))[0];return e||this._readonlyAllocations.filter((e=>e.shaderName()==t))[0]}inputNamesForShaderName(t,e){const n=this.allocationForShaderName(e);if(n)return n.inputNamesForNode(t)}variable(t){for(let e of this._writableAllocations){const n=e.variable(t);if(n)return n}for(let e of this._readonlyAllocations){const n=e.variable(t);if(n)return n}}variables(){const t=this._writableAllocations.map((t=>t.variables()||[])).flat(),e=this._writableAllocations.map((t=>t.variables()||[])).flat();return t.concat(e)}hasVariable(t){return this.variables().map((t=>t.name())).includes(t)}static fromJSON(t){const e=new c1;for(let n of t.writable){const t=n[Object.keys(n)[0]],i=a1.fromJSON(t);e._addWritableAllocation(i)}for(let n of t.readonly){const t=n[Object.keys(n)[0]],i=a1.fromJSON(t);e._addReadonlyAllocation(i)}return e}toJSON(t){return{writable:this._writableAllocations.map((e=>({[e.shaderName()]:e.toJSON(t)}))),readonly:this._readonlyAllocations.map((e=>({[e.shaderName()]:e.toJSON(t)})))}}print(t){console.warn(JSON.stringify(this.toJSON(t),[\\\\\\\"\\\\\\\"],2))}}class h1 extends Kf{constructor(t){super(t),this.node=t}toJSON(){const t=this.node.assemblerController;if(!t)return;const e={};this.node.shaders_by_name().forEach(((t,n)=>{e[n]=t}));const n=t.assembler.textureAllocationsController().toJSON(this.node.scene()),i=[],s=new F,r=t.assembler.param_configs();for(let t of r)i.push([t.name(),t.uniform_name]),s.uniforms[t.uniform_name]=t.uniform;const o=this._materialToJson(s,{node:this.node,suffix:\\\\\\\"main\\\\\\\"});return{shaders_by_name:e,texture_allocations:n,param_uniform_pairs:i,uniforms_owner:o||{}}}load(t){li.playerMode()&&(this._loaded_data=t,this.node.init_with_persisted_config())}loaded_data(){return this._loaded_data}shaders_by_name(){if(this._loaded_data){const t=new Map,e=Object.keys(this._loaded_data.shaders_by_name);for(let n of e)t.set(n,this._loaded_data.shaders_by_name[n]);return t}}texture_allocations_controller(){if(this._loaded_data)return c1.fromJSON(this._loaded_data.texture_allocations)}uniforms(){if(this._loaded_data){const t=this._loadMaterial(this._loaded_data.uniforms_owner);return(null==t?void 0:t.uniforms)||{}}}}const u1=new class extends ua{constructor(){super(...arguments),this.startFrame=ha.FLOAT(Nl.START_FRAME,{range:[0,1e3],rangeLocked:[!0,!1]}),this.autoTexturesSize=ha.BOOLEAN(1),this.maxTexturesSize=ha.VECTOR2([1024,1024],{visibleIf:{autoTexturesSize:1}}),this.texturesSize=ha.VECTOR2([64,64],{visibleIf:{autoTexturesSize:0}}),this.dataType=ha.INTEGER(0,{menu:{entries:i1.map(((t,e)=>({value:e,name:t})))}}),this.reset=ha.BUTTON(null,{callback:(t,e)=>{d1.PARAM_CALLBACK_reset(t)}}),this.material=ha.OPERATOR_PATH(\\\\\\\"\\\\\\\",{nodeSelection:{context:ts.MAT},dependentOnFoundNode:!1})}};class d1 extends uV{constructor(){super(...arguments),this.paramsConfig=u1,this._assembler_controller=this._create_assembler_controller(),this.persisted_config=new h1(this),this.globals_handler=new Q0(Q0.PARTICLE_SIM_UV),this._shaders_by_name=new Map,this.gpuController=new r1(this),this.renderController=new t1(this),this._reset_material_if_dirty_bound=this._reset_material_if_dirty.bind(this),this._children_controller_context=ts.GL}static type(){return\\\\\\\"particlesSystemGpu\\\\\\\"}dispose(){super.dispose(),this.gpuController.dispose()}get assemblerController(){return this._assembler_controller}usedAssembler(){return jn.GL_PARTICLES}_create_assembler_controller(){return li.assemblersRegister.assembler(this,this.usedAssembler())}shaders_by_name(){return this._shaders_by_name}static require_webgl2(){return!0}static PARAM_CALLBACK_reset(t){t.PARAM_CALLBACK_reset()}PARAM_CALLBACK_reset(){this.gpuController.resetGpuComputeAndSetDirty()}static displayedInputNames(){return[\\\\\\\"points to emit particles from\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(Qi.NEVER),this.addPostDirtyHook(\\\\\\\"_reset_material_if_dirty\\\\\\\",this._reset_material_if_dirty_bound)}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}childrenAllowed(){return this.assemblerController?super.childrenAllowed():(this.scene().markAsReadOnly(this),!1)}async _reset_material_if_dirty(){this.p.material.isDirty()&&(this.renderController.reset_render_material(),this.isOnStartFrame()||await this.renderController.init_render_material())}isOnStartFrame(){return this.scene().frame()==this.pv.startFrame}async cook(t){this.gpuController.setRestartNotRequired();const e=t[0];this.compileIfRequired();const n=this.isOnStartFrame();n&&this.gpuController.resetParticleGroups(),this.gpuController.initialized()||await this.gpuController.init(e),this.renderController.initialized()||(this.renderController.init_core_group(e),await this.renderController.init_render_material()),this.gpuController.restartSimulationIfRequired(),this.gpuController.computeSimilationIfRequired(),n?this.setCoreGroup(e):this.cookController.endCook()}async compileIfRequired(){var t;(null===(t=this.assemblerController)||void 0===t?void 0:t.compileRequired())&&await this.run_assembler()}async run_assembler(){const t=this.assemblerController;if(!t)return;const e=this._find_export_nodes();if(e.length>0){const n=e;t.set_assembler_globals_handler(this.globals_handler),t.assembler.set_root_nodes(n),t.assembler.compile(),t.post_compile()}const n=t.assembler.shaders_by_name();this._setShaderNames(n)}_setShaderNames(t){this._shaders_by_name=t,this.gpuController.setShadersByName(this._shaders_by_name),this.renderController.setShadersByName(this._shaders_by_name),this.gpuController.resetGpuCompute(),this.gpuController.resetParticleGroups()}init_with_persisted_config(){const t=this.persisted_config.shaders_by_name(),e=this.persisted_config.texture_allocations_controller();t&&e&&(this._setShaderNames(t),this.gpuController.setPersistedTextureAllocationController(e))}_find_export_nodes(){const t=Df.findAttributeExportNodes(this),e=Df.findOutputNodes(this);if(e.length>1)return this.states.error.set(\\\\\\\"only one output node is allowed\\\\\\\"),[];const n=e[0];return n&&t.push(n),t}}class p1 extends aV{static type(){return\\\\\\\"peak\\\\\\\"}cook(t,e){const n=t[0];let i,s;for(let t of n.objects())t.traverse((t=>{let n;if(null!=(n=t.geometry)){for(s of(i=new fr(n),i.points())){const t=s.normal(),n=s.position().clone().add(t.multiplyScalar(e.amount));s.setPosition(n)}i.geometry().getAttribute(\\\\\\\"position\\\\\\\").needsUpdate=!0}}));return t[0]}}p1.DEFAULT_PARAMS={amount:0};const _1=p1.DEFAULT_PARAMS;const m1=new class extends ua{constructor(){super(...arguments),this.amount=ha.FLOAT(_1.amount,{range:[-1,1]})}};class f1 extends uV{constructor(){super(...arguments),this.paramsConfig=m1}static type(){return\\\\\\\"peak\\\\\\\"}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(Qi.FROM_NODE)}cook(t){this._operation=this._operation||new p1(this.scene(),this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}const g1=new p.a(0,0,1),v1=new p.a(0,0,1),y1=new p.a(0,1,0);class x1 extends aV{constructor(){super(...arguments),this._core_transform=new bU,this._size=new p.a,this._center=new p.a,this._segmentsCount=new d.a(1,1)}static type(){return\\\\\\\"plane\\\\\\\"}cook(t,e){const n=t[0];return n?this._cook_with_input(n,e):this._cook_without_input(e)}_cook_without_input(t){const e=this._create_plane(t.size,t);this._core_transform.rotateGeometry(e,g1,t.direction);const n=this._core_transform.translationMatrix(t.center);return e.applyMatrix4(n),this.createCoreGroupFromGeometry(e)}_cook_with_input(t,e){const n=t.boundingBox();n.getSize(this._size),n.getCenter(this._center);const i=new d.a(this._size.x,this._size.z),s=this._create_plane(i,e);this._core_transform.rotateGeometry(s,v1,y1);const r=this._core_transform.translationMatrix(this._center);return s.applyMatrix4(r),this.createCoreGroupFromGeometry(s)}_create_plane(t,e){return t=t.clone(),e.useSegmentsCount?(this._segmentsCount.x=Math.floor(e.segments.x),this._segmentsCount.y=Math.floor(e.segments.y)):e.stepSize>0&&(this._segmentsCount.x=Math.floor(t.x/e.stepSize),this._segmentsCount.y=Math.floor(t.y/e.stepSize),t.x=this._segmentsCount.x*e.stepSize,t.y=this._segmentsCount.y*e.stepSize),new L(t.x,t.y,this._segmentsCount.x,this._segmentsCount.y)}}x1.DEFAULT_PARAMS={size:new d.a(1,1),useSegmentsCount:!1,stepSize:1,segments:new d.a(1,1),direction:new p.a(0,1,0),center:new p.a(0,0,0)},x1.INPUT_CLONED_STATE=Qi.NEVER;const b1=x1.DEFAULT_PARAMS;const w1=new class extends ua{constructor(){super(...arguments),this.size=ha.VECTOR2(b1.size),this.useSegmentsCount=ha.BOOLEAN(b1.useSegmentsCount),this.stepSize=ha.FLOAT(b1.stepSize,{range:[.001,1],rangeLocked:[!1,!1],visibleIf:{useSegmentsCount:0}}),this.segments=ha.VECTOR2(b1.segments,{visibleIf:{useSegmentsCount:1}}),this.direction=ha.VECTOR3(b1.direction),this.center=ha.VECTOR3(b1.center)}};class T1 extends uV{constructor(){super(...arguments),this.paramsConfig=w1}static type(){return\\\\\\\"plane\\\\\\\"}static displayedInputNames(){return[\\\\\\\"geometry to create plane from (optional)\\\\\\\"]}initializeNode(){this.io.inputs.setCount(0,1),this.io.inputs.initInputsClonedState(x1.INPUT_CLONED_STATE)}cook(t){this._operation=this._operation||new x1(this.scene(),this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}class A1 extends aV{static type(){return\\\\\\\"playerCapsule\\\\\\\"}cook(t,e){return this.createCoreGroupFromGeometry(Uy(e))}}A1.DEFAULT_PARAMS={radius:.5,height:1};const M1=A1.DEFAULT_PARAMS;const E1=new class extends ua{constructor(){super(...arguments),this.radius=ha.FLOAT(M1.radius,{range:[0,1],rangeLocked:[!0,!1]}),this.height=ha.FLOAT(M1.height,{range:[0,1],rangeLocked:[!0,!1]})}};class S1 extends uV{constructor(){super(...arguments),this.paramsConfig=E1}static type(){return\\\\\\\"playerCapsule\\\\\\\"}initializeNode(){this.io.inputs.setCount(0)}cook(t){this._operation=this._operation||new A1(this._scene,this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}const C1=\\\\\\\"position\\\\\\\";const N1=new class extends ua{constructor(){super(...arguments),this.updateX=ha.BOOLEAN(0),this.x=ha.FLOAT(\\\\\\\"@P.x\\\\\\\",{visibleIf:{updateX:1},expression:{forEntities:!0}}),this.updateY=ha.BOOLEAN(0),this.y=ha.FLOAT(\\\\\\\"@P.y\\\\\\\",{visibleIf:{updateY:1},expression:{forEntities:!0}}),this.updateZ=ha.BOOLEAN(0),this.z=ha.FLOAT(\\\\\\\"@P.z\\\\\\\",{visibleIf:{updateZ:1},expression:{forEntities:!0}}),this.updateNormals=ha.BOOLEAN(1)}};class L1 extends uV{constructor(){super(...arguments),this.paramsConfig=N1,this._x_arrays_by_geometry_uuid=new Map,this._y_arrays_by_geometry_uuid=new Map,this._z_arrays_by_geometry_uuid=new Map}static type(){return\\\\\\\"point\\\\\\\"}static displayedInputNames(){return[\\\\\\\"points to move\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(Qi.FROM_NODE)}async cook(t){const e=t[0];await this._eval_expressions_for_core_group(e)}async _eval_expressions_for_core_group(t){const e=t.coreObjects();for(let t=0;t<e.length;t++)await this._eval_expressions_for_core_object(e[t]);this.pv.updateNormals&&t.computeVertexNormals();const n=t.geometries();for(let t of n)t.computeBoundingBox();if(!this.io.inputs.cloneRequired(0)){const e=t.geometries();for(let t of e){t.getAttribute(C1).needsUpdate=!0}}this.setCoreGroup(t)}async _eval_expressions_for_core_object(t){const e=t.object().geometry,n=t.points(),i=e.getAttribute(C1).array,s=await this._update_from_param(e,i,n,this.p.updateX,this.p.x,this.pv.x,this._x_arrays_by_geometry_uuid,0),r=await this._update_from_param(e,i,n,this.p.updateY,this.p.y,this.pv.y,this._y_arrays_by_geometry_uuid,1),o=await this._update_from_param(e,i,n,this.p.updateZ,this.p.z,this.pv.z,this._z_arrays_by_geometry_uuid,2);s&&this._commit_tmp_values(s,i,0),r&&this._commit_tmp_values(r,i,1),o&&this._commit_tmp_values(o,i,2)}async _update_from_param(t,e,n,i,s,r,o,a){const l=i,c=s;let h=this._init_array_if_required(t,o,n.length,a);if(l.value)if(c.hasExpression()&&c.expressionController)await c.expressionController.computeExpressionForPoints(n,((t,e)=>{h[t.index()]=e}));else{let t;for(let e=0;e<n.length;e++)t=n[e],h[t.index()]=r}return h}_init_array_if_required(t,e,n,i){const s=t.uuid,r=e.get(s);if(r){if(r.length<n){const r=this._array_for_component(t,n,i);return e.set(s,r),r}return r}{const r=this._array_for_component(t,n,i);return e.set(s,r),r}}_array_for_component(t,e,n){const i=new Array(e),s=t.getAttribute(C1).array;for(let t=0;t<i.length;t++)i[t]=s[3*t+n];return i}_commit_tmp_values(t,e,n){for(let i=0;i<t.length;i++)e[3*i+n]=t[i]}}class O1 extends aV{static type(){return\\\\\\\"pointLight\\\\\\\"}cook(t,e){const n=new QU.a;return n.matrixAutoUpdate=!1,n.castShadow=!0,n.shadow.bias=-.001,n.shadow.mapSize.x=1024,n.shadow.mapSize.y=1024,n.shadow.camera.near=.1,n.color=e.color,n.intensity=e.intensity,n.decay=e.decay,n.distance=e.distance,n.castShadow=e.castShadows,n.shadow.mapSize.copy(e.shadowRes),n.shadow.camera.near=e.shadowNear,n.shadow.camera.far=e.shadowFar,n.shadow.bias=e.shadowBias,this.createCoreGroupFromObjects([n])}}O1.DEFAULT_PARAMS={color:new D.a(1,1,1),intensity:1,decay:.1,distance:100,castShadows:!1,shadowRes:new d.a(1024,1024),shadowBias:.001,shadowNear:1,shadowFar:100},O1.INPUT_CLONED_STATE=Qi.NEVER;const P1=O1.DEFAULT_PARAMS;const R1=new class extends ua{constructor(){super(...arguments),this.light=ha.FOLDER(),this.color=ha.COLOR(P1.color.toArray(),{conversion:lo.SRGB_TO_LINEAR}),this.intensity=ha.FLOAT(P1.intensity),this.decay=ha.FLOAT(P1.decay),this.distance=ha.FLOAT(P1.distance),this.castShadows=ha.BOOLEAN(P1.castShadows),this.shadowRes=ha.VECTOR2(P1.shadowRes.toArray(),{visibleIf:{castShadows:1}}),this.shadowBias=ha.FLOAT(P1.shadowBias,{visibleIf:{castShadows:1}}),this.shadowNear=ha.FLOAT(P1.shadowNear,{visibleIf:{castShadows:1}}),this.shadowFar=ha.FLOAT(P1.shadowFar,{visibleIf:{castShadows:1}})}};class I1 extends uV{constructor(){super(...arguments),this.paramsConfig=R1}static type(){return\\\\\\\"pointLight\\\\\\\"}initializeNode(){this.io.inputs.setCount(0)}cook(t){this._operation=this._operation||new O1(this._scene,this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}const F1=new p.a(0,1,0),D1=new p.a(-1,0,0);class B1 extends aV{constructor(){super(...arguments),this._centerMatrix=new A.a,this._longitudeMatrix=new A.a,this._latitudeMatrix=new A.a,this._depthMatrix=new A.a,this._fullMatrix=new A.a,this._decomposed={t:new p.a,q:new hh.a,s:new p.a}}static type(){return\\\\\\\"polarTransform\\\\\\\"}cook(t,e){const n=t[0].objects(),i=this.matrix(e);return this._apply_transform(n,e,i),t[0]}_apply_transform(t,e,n){const i=gU[e.applyOn];switch(i){case _U.GEOMETRIES:return this._apply_matrix_to_geometries(t,n);case _U.OBJECTS:return this._apply_matrix_to_objects(t,n)}os.unreachable(i)}_apply_matrix_to_geometries(t,e){for(let n of t){const t=n.geometry;t&&t.applyMatrix4(e)}}_apply_matrix_to_objects(t,e){for(let n of t)e.decompose(this._decomposed.t,this._decomposed.q,this._decomposed.s),n.position.copy(this._decomposed.t),n.quaternion.copy(this._decomposed.q),n.scale.copy(this._decomposed.s),n.updateMatrix()}matrix(t){return this._centerMatrix.identity(),this._longitudeMatrix.identity(),this._latitudeMatrix.identity(),this._depthMatrix.identity(),this._centerMatrix.makeTranslation(t.center.x,t.center.y,t.center.z),this._longitudeMatrix.makeRotationAxis(F1,Object(On.e)(t.longitude)),this._latitudeMatrix.makeRotationAxis(D1,Object(On.e)(t.latitude)),this._depthMatrix.makeTranslation(0,0,t.depth),this._fullMatrix.copy(this._centerMatrix).multiply(this._longitudeMatrix).multiply(this._latitudeMatrix).multiply(this._depthMatrix),this._fullMatrix}}B1.DEFAULT_PARAMS={applyOn:gU.indexOf(_U.GEOMETRIES),center:new p.a(0,0,0),longitude:0,latitude:0,depth:1},B1.INPUT_CLONED_STATE=Qi.FROM_NODE;const z1=B1.DEFAULT_PARAMS;const k1=new class extends ua{constructor(){super(...arguments),this.applyOn=ha.INTEGER(z1.applyOn,{menu:{entries:gU.map(((t,e)=>({name:t,value:e})))}}),this.center=ha.VECTOR3(z1.center.toArray()),this.longitude=ha.FLOAT(z1.longitude,{range:[0,360]}),this.latitude=ha.FLOAT(z1.latitude,{range:[-180,180]}),this.depth=ha.FLOAT(z1.depth,{range:[0,10]})}};class U1 extends uV{constructor(){super(...arguments),this.paramsConfig=k1}static type(){return\\\\\\\"polarTransform\\\\\\\"}static displayedInputNames(){return[\\\\\\\"geometries or objects to transform\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(B1.INPUT_CLONED_STATE)}cook(t){this._operation=this._operation||new B1(this.scene(),this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}class G1{static accumulated_curve_point_indices(t){let e=[];const n=[];let i,s=null;for(let r=0;r<t.length;r++)if(r%2==1){i=t[r];const o=t[r-1];null==s||o===s?(0===e.length&&e.push(o),e.push(i),s=i):(n.push(e),e=[o,i],s=i)}return n.push(e),n}static create_line_segment_geometry(t,e,n,i){const s=[],r={};n.forEach((t=>{r[t]=[]})),e.forEach(((e,o)=>{const a=t[e];n.forEach((t=>{const e=a.attribValue(t);let n;n=i[t]>1?e.toArray():[e],n.forEach((e=>{r[t].push(e)}))})),o>0&&(s.push(o-1),s.push(o))}));const o=new S.a;return n.forEach((t=>{const e=i[t],n=r[t];o.setAttribute(t,new C.c(n,e))})),o.setIndex(s),o}static line_segment_to_geometries(t){var e;const n=[],i=new fr(t),s=i.attribNames(),r=i.points(),o=(null===(e=t.getIndex())||void 0===e?void 0:e.array)||[],a=this.accumulated_curve_point_indices(o);if(a.length>0){const e=i.attribSizes();a.forEach(((i,o)=>{t=this.create_line_segment_geometry(r,i,s,e),n.push(t)}))}return n}}class V1{constructor(t,e,n){this.geometry=t,this.geometry1=e,this.geometry0=n}process(){const t=new fr(this.geometry0),e=new fr(this.geometry1),n=t.segments(),i=e.segments();if(0===n.length||0===i.length)return;const s=n.length<i.length?[t,e]:[e,t],r=s[0],o=s[1],a=r.segments(),l=o.segments(),c=r.points(),h=o.points(),u=c.length,d=c.concat(h),p=[];a.forEach(((t,e)=>{const n=l[e];p.push(t[0]),p.push(t[1]),p.push(n[0]+u),p.push(t[1]),p.push(n[1]+u),p.push(n[0]+u)}));f.intersection(r.attribNames(),o.attribNames()).forEach((t=>{const e=r.attribSize(t);let n,i=d.map((e=>e.attribValue(t)));n=1==e?i:i.map((t=>t.toArray())).flat(),this.geometry.setAttribute(t,new C.c(n,e))})),this.geometry.setIndex(p),this.geometry.computeVertexNormals()}}const H1=new p.a(0,0,0),j1=new p.a(1,1,1);const W1=new class extends ua{constructor(){super(...arguments),this.radius=ha.FLOAT(1),this.segmentsRadial=ha.INTEGER(8,{range:[3,20],rangeLocked:[!0,!1]}),this.closed=ha.BOOLEAN(0)}};class q1 extends uV{constructor(){super(...arguments),this.paramsConfig=W1,this._core_transform=new bU,this._geometries=[]}static type(){return\\\\\\\"polywire\\\\\\\"}static displayedInputNames(){return[\\\\\\\"lines to create tubes from\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(Qi.NEVER)}cook(t){const e=t[0];this._geometries=[];for(let t of e.objects())t instanceof Ms.a&&this._create_tube(t);const n=fr.mergeGeometries(this._geometries);for(let t of this._geometries)t.dispose();if(n){const t=this.createObject(n,Ns.MESH);this.setObject(t)}else this.setObjects([])}_create_tube(t){var e;const n=t.geometry,i=new fr(n).points(),s=null===(e=n.getIndex())||void 0===e?void 0:e.array,r=G1.accumulated_curve_point_indices(s);for(let t of r){const e=t.map((t=>i[t]));this._create_tube_from_points(e)}}_create_tube_from_points(t){if(t.length<=1)return;const e=t.map((t=>t.attribValue(\\\\\\\"position\\\\\\\"))),n=JJ.create(this.pv.radius,this.pv.segmentsRadial),i=[];for(let t of e){const e=t,s=this._core_transform.matrix(e,H1,j1,1,xU),r=n.clone();r.applyMatrix4(s),i.push(r)}for(let t=0;t<i.length;t++)if(t>0){const e=i[t],n=i[t-1],s=this._skin(n,e);this._geometries.push(s)}}_skin(t,e){const n=new S.a;return new V1(n,t,e).process(),n}}const X1=\\\\\\\"dist\\\\\\\";class Y1 extends aV{constructor(){super(...arguments),this._matDoubleSideTmpSetter=new xK,this._raycaster=function(){const t=new eO;return t.firstHitOnly=!0,t}(),this._pointPos=new p.a,this._pointNormal=new p.a}static type(){return\\\\\\\"ray\\\\\\\"}cook(t,e){const n=t[0],i=t[1];return this._ray(n,i,e)}_ray(t,e,n){let i,s;this._matDoubleSideTmpSetter.setCoreGroupMaterialDoubleSided(e),n.addDistAttribute&&(t.hasAttrib(X1)||t.addNumericVertexAttrib(X1,1,-1));const r=t.points();for(let t of r)if(t.getPosition(this._pointPos),i=n.direction,n.useNormals&&(t.getNormal(this._pointNormal),i=this._pointNormal),this._raycaster.set(this._pointPos,i),s=this._raycaster.intersectObjects(e.objects(),!0)[0],s){if(n.transformPoints&&t.setPosition(s.point),n.addDistAttribute){const e=this._pointPos.distanceTo(s.point);console.log(e),t.setAttribValue(X1,e)}n.transferFaceNormals&&s.face&&t.setNormal(s.face.normal)}return this._matDoubleSideTmpSetter.restoreMaterialSideProperty(e),t}}Y1.DEFAULT_PARAMS={useNormals:!0,direction:new p.a(0,-1,0),transformPoints:!0,transferFaceNormals:!0,addDistAttribute:!1},Y1.INPUT_CLONED_STATE=[Qi.FROM_NODE,Qi.NEVER];const $1=Y1.DEFAULT_PARAMS;const J1=new class extends ua{constructor(){super(...arguments),this.useNormals=ha.BOOLEAN($1.useNormals),this.direction=ha.VECTOR3($1.direction.toArray(),{visibleIf:{useNormals:0}}),this.transformPoints=ha.BOOLEAN($1.transformPoints),this.transferFaceNormals=ha.BOOLEAN($1.transferFaceNormals),this.addDistAttribute=ha.BOOLEAN($1.addDistAttribute)}};class Z1 extends uV{constructor(){super(...arguments),this.paramsConfig=J1}static type(){return\\\\\\\"ray\\\\\\\"}static displayedInputNames(){return[\\\\\\\"geometry to move\\\\\\\",\\\\\\\"geometry to ray onto\\\\\\\"]}initializeNode(){this.io.inputs.setCount(2),this.io.inputs.initInputsClonedState(Y1.INPUT_CLONED_STATE)}cook(t){this._operation=this._operation||new Y1(this._scene,this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}const K1={color:{value:null},tDiffuse:{value:null},textureMatrix:{value:null},opacity:{value:.5}},Q1=\\\\\\\"uniform mat4 textureMatrix;\\\\nvarying vec4 vUv;\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\tvUv = textureMatrix * vec4( position, 1.0 );\\\\n\\\\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\\\\n\\\\n}\\\\\\\",t2=\\\\\\\"uniform vec3 color;\\\\nuniform sampler2D tDiffuse;\\\\nvarying vec4 vUv;\\\\nuniform float opacity;\\\\n\\\\nfloat blendOverlay( float base, float blend ) {\\\\n\\\\n\\\\treturn( base < 0.5 ? ( 2.0 * base * blend ) : ( 1.0 - 2.0 * ( 1.0 - base ) * ( 1.0 - blend ) ) );\\\\n\\\\n}\\\\n\\\\nvec3 blendOverlay( vec3 base, vec3 blend ) {\\\\n\\\\n\\\\treturn vec3( blendOverlay( base.r, blend.r ), blendOverlay( base.g, blend.g ), blendOverlay( base.b, blend.b ) );\\\\n\\\\n}\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\tvec4 base = texture2DProj( tDiffuse, vUv );\\\\n\\\\tgl_FragColor = vec4( blendOverlay( base.rgb, color ), opacity );\\\\n\\\\n}\\\\\\\",e2={minFilter:w.V,magFilter:w.V,format:w.ic};class n2 extends B.a{constructor(t,e){super(),this.geometry=t,this._options=e,this.type=\\\\\\\"Reflector\\\\\\\",this.reflectorPlane=new Y.a,this.normal=new p.a,this.reflectorWorldPosition=new p.a,this.cameraWorldPosition=new p.a,this.rotationMatrix=new A.a,this.lookAtPosition=new p.a(0,0,-1),this.clipPlane=new _.a,this.view=new p.a,this.target=new p.a,this.q=new _.a,this.textureMatrix=new A.a,this.virtualCamera=new tt.a,this.onBeforeRender=this._onBeforeRender.bind(this),this._onWindowResizeBound=this._onWindowResize.bind(this);const{width:n,height:i}=this._getRendererSize(this._options.renderer);this.renderTarget=new K(n,i,e2),Object(On.i)(n)&&Object(On.i)(i)||(this.renderTarget.texture.generateMipmaps=!1),this._coreRenderBlur=new OG(new d.a(n,i)),this.material=new F({uniforms:I.clone(K1),fragmentShader:t2,vertexShader:Q1}),this.material.uniforms.tDiffuse.value=this.renderTarget.texture,this.material.uniforms.color.value=this._options.color,this.material.uniforms.textureMatrix.value=this.textureMatrix,this.material.uniforms.opacity.value=this._options.opacity,this.material.transparent=this._options.opacity<1,this._addWindowResizeEvent()}_addWindowResizeEvent(){window.addEventListener(\\\\\\\"resize\\\\\\\",this._onWindowResizeBound.bind(this),!1)}_removeWindowResizeEvent(){window.removeEventListener(\\\\\\\"resize\\\\\\\",this._onWindowResizeBound.bind(this),!1)}_onWindowResize(){this.traverseAncestors((t=>{t.parent||t.uuid!=this._options.scene.uuid&&this._removeWindowResizeEvent()}));const{width:t,height:e}=this._getRendererSize(this._options.renderer);this.renderTarget.setSize(t,e),this._coreRenderBlur.setSize(t,e)}_getRendererSize(t){const e=t.domElement;return{width:e.width*this._options.pixelRatio,height:e.height*this._options.pixelRatio}}_onBeforeRender(t,e,n,i,s,r){if(!this._options.active)return;const o=n;if(this.reflectorWorldPosition.setFromMatrixPosition(this.matrixWorld),this.cameraWorldPosition.setFromMatrixPosition(o.matrixWorld),this.rotationMatrix.extractRotation(this.matrixWorld),this.normal.set(0,0,1),this.normal.applyMatrix4(this.rotationMatrix),this.view.subVectors(this.reflectorWorldPosition,this.cameraWorldPosition),!(this.view.dot(this.normal)>0)){this.view.reflect(this.normal).negate(),this.view.add(this.reflectorWorldPosition),this.rotationMatrix.extractRotation(o.matrixWorld),this.lookAtPosition.set(0,0,-1),this.lookAtPosition.applyMatrix4(this.rotationMatrix),this.lookAtPosition.add(this.cameraWorldPosition),this.target.subVectors(this.reflectorWorldPosition,this.lookAtPosition),this.target.reflect(this.normal).negate(),this.target.add(this.reflectorWorldPosition),this.virtualCamera.position.copy(this.view),this.virtualCamera.up.set(0,1,0),this.virtualCamera.up.applyMatrix4(this.rotationMatrix),this.virtualCamera.up.reflect(this.normal),this.virtualCamera.lookAt(this.target),this.virtualCamera.far=o.far,this.virtualCamera.updateMatrixWorld(),this.virtualCamera.projectionMatrix.copy(o.projectionMatrix),this.textureMatrix.set(.5,0,0,.5,0,.5,0,.5,0,0,.5,.5,0,0,0,1),this.textureMatrix.multiply(this.virtualCamera.projectionMatrix),this.textureMatrix.multiply(this.virtualCamera.matrixWorldInverse),this.textureMatrix.multiply(this.matrixWorld),this.reflectorPlane.setFromNormalAndCoplanarPoint(this.normal,this.reflectorWorldPosition),this.reflectorPlane.applyMatrix4(this.virtualCamera.matrixWorldInverse),this.clipPlane.set(this.reflectorPlane.normal.x,this.reflectorPlane.normal.y,this.reflectorPlane.normal.z,this.reflectorPlane.constant);var a=this.virtualCamera.projectionMatrix;this.q.x=(Math.sign(this.clipPlane.x)+a.elements[8])/a.elements[0],this.q.y=(Math.sign(this.clipPlane.y)+a.elements[9])/a.elements[5],this.q.z=-1,this.q.w=(1+a.elements[10])/a.elements[14],this.clipPlane.multiplyScalar(2/this.clipPlane.dot(this.q)),a.elements[2]=this.clipPlane.x,a.elements[6]=this.clipPlane.y,a.elements[10]=this.clipPlane.z+1-this._options.clipBias,a.elements[14]=this.clipPlane.w,this.renderTarget.texture.encoding=t.outputEncoding,this.visible=!1;var l=t.getRenderTarget(),c=t.xr.enabled,h=t.shadowMap.autoUpdate;if(t.xr.enabled=!1,t.shadowMap.autoUpdate=!1,t.setRenderTarget(this.renderTarget),t.state.buffers.depth.setMask(!0),!1===t.autoClear&&t.clear(),t.render(e,this.virtualCamera),this._options.tblur){const e=this._options.blur*this._options.pixelRatio,n=e*this._options.verticalBlurMult;if(this._coreRenderBlur.applyBlur(this.renderTarget,t,e,n),this._options.tblur2){const e=this._options.blur2*this._options.pixelRatio,n=e*this._options.verticalBlur2Mult;this._coreRenderBlur.applyBlur(this.renderTarget,t,e,n)}}t.xr.enabled=c,t.shadowMap.autoUpdate=h,t.setRenderTarget(l);var u=o.viewport;void 0!==u&&t.state.viewport(u),this.visible=!0}}}class i2 extends aV{static type(){return\\\\\\\"reflector\\\\\\\"}async cook(t,e){const n=t[0],i=[],s=await li.renderersController.firstRenderer();if(!s)return this.createCoreGroupFromObjects(i);const r=n.objectsWithGeo();for(let t of r){const n=new n2(t.geometry,{clipBias:e.clipBias,renderer:s,scene:this.scene().threejsScene(),pixelRatio:e.pixelRatio,color:e.color,opacity:e.opacity,active:e.active,tblur:e.tblur,blur:e.blur,verticalBlurMult:e.verticalBlurMult,tblur2:e.tblur2,blur2:e.blur2,verticalBlur2Mult:e.verticalBlur2Mult});n.position.copy(t.position),n.rotation.copy(t.rotation),n.scale.copy(t.scale),n.updateMatrix(),i.push(n)}return this.createCoreGroupFromObjects(i)}}i2.DEFAULT_PARAMS={active:!0,clipBias:.003,color:new D.a(1,1,1),opacity:1,pixelRatio:1,tblur:!1,blur:1,verticalBlurMult:1,tblur2:!1,blur2:1,verticalBlur2Mult:1},i2.INPUT_CLONED_STATE=Qi.NEVER;const s2=i2.DEFAULT_PARAMS;const r2=new class extends ua{constructor(){super(...arguments),this.active=ha.BOOLEAN(s2.active),this.clipBias=ha.FLOAT(s2.clipBias),this.color=ha.COLOR(s2.color.toArray()),this.opacity=ha.FLOAT(s2.opacity),this.pixelRatio=ha.INTEGER(s2.pixelRatio,{range:[1,4],rangeLocked:[!0,!1]}),this.tblur=ha.BOOLEAN(s2.tblur),this.blur=ha.FLOAT(s2.blur,{visibleIf:{tblur:1}}),this.verticalBlurMult=ha.FLOAT(s2.verticalBlurMult,{visibleIf:{tblur:1}}),this.tblur2=ha.BOOLEAN(s2.tblur2,{visibleIf:{tblur:1}}),this.blur2=ha.FLOAT(s2.blur2,{visibleIf:{tblur:1,tblur2:1}}),this.verticalBlur2Mult=ha.FLOAT(s2.verticalBlur2Mult,{visibleIf:{tblur:1,tblur2:1}})}};class o2 extends uV{constructor(){super(...arguments),this.paramsConfig=r2}static type(){return\\\\\\\"reflector\\\\\\\"}static displayedInputNames(){return[\\\\\\\"geometry to create a reflector from\\\\\\\"]}initializeNode(){this.io.inputs.setCount(0,1),this.io.inputs.initInputsClonedState(i2.INPUT_CLONED_STATE)}async cook(t){this._operation=this._operation||new i2(this._scene,this.states);const e=await this._operation.cook(t,this.pv);this.setCoreGroup(e)}}var a2=n(85);var l2;!function(t){t.POINTS_COUNT=\\\\\\\"pointsCount\\\\\\\",t.SEGMENT_LENGTH=\\\\\\\"segmentLength\\\\\\\"}(l2||(l2={}));const c2=[l2.POINTS_COUNT,l2.SEGMENT_LENGTH];var h2;!function(t){t.CENTRIPETAL=\\\\\\\"centripetal\\\\\\\",t.CHORDAL=\\\\\\\"chordal\\\\\\\",t.CATMULLROM=\\\\\\\"catmullrom\\\\\\\"}(h2||(h2={}));const u2=[h2.CENTRIPETAL,h2.CHORDAL,h2.CATMULLROM];const d2=new class extends ua{constructor(){super(...arguments),this.method=ha.INTEGER(c2.indexOf(l2.POINTS_COUNT),{menu:{entries:c2.map(((t,e)=>({name:t,value:e})))}}),this.curveType=ha.INTEGER(u2.indexOf(h2.CATMULLROM),{range:[0,2],rangeLocked:[!0,!0],menu:{entries:u2.map(((t,e)=>({name:t,value:e})))}}),this.tension=ha.FLOAT(.01,{range:[0,1],rangeLocked:[!0,!0]}),this.pointsCount=ha.INTEGER(100,{visibleIf:{method:c2.indexOf(l2.POINTS_COUNT)},range:[1,1e3],rangeLocked:[!0,!1]}),this.segmentLength=ha.FLOAT(1,{visibleIf:{method:c2.indexOf(l2.SEGMENT_LENGTH)}})}};class p2 extends uV{constructor(){super(...arguments),this.paramsConfig=d2}static type(){return\\\\\\\"resample\\\\\\\"}initializeNode(){this.io.inputs.setCount(1)}cook(t){const e=t[0],n=[];if(this.pv.pointsCount>=2){const t=e.coreObjects();for(let e=0;e<t.length;e++){const i=t[e].object();if(i instanceof Ms.a){const t=this._resample(i);n.push(t)}}}this.setObjects(n)}_resample(t){var e;const n=t.geometry,i=new fr(n).points(),s=null===(e=n.getIndex())||void 0===e?void 0:e.array,r=G1.accumulated_curve_point_indices(s),o=[];for(let t=0;t<r.length;t++){const e=r[t].map((t=>i[t])),n=this._create_curve_from_points(e);n&&o.push(n)}const a=ur(o);return this.createObject(a,Ns.LINE_SEGMENTS)}_create_curve_from_points(t){if(t.length<=1)return;const e=t.map((t=>t.attribValue(\\\\\\\"position\\\\\\\"))),n=u2[this.pv.curveType],i=this.pv.tension,s=new a2.a(e,!1,n,i),r=this._get_points_from_curve(s);let o=[];const a=[];for(let t=0;t<r.length;t++){const e=r[t].toArray();o.push(e),t>0&&(a.push(t-1),a.push(t))}const l=new S.a;return l.setAttribute(\\\\\\\"position\\\\\\\",new C.c(o.flat(),3)),l.setIndex(a),l}_get_points_from_curve(t){const e=c2[this.pv.method];switch(e){case l2.POINTS_COUNT:return t.getSpacedPoints(Math.max(2,this.pv.pointsCount));case l2.SEGMENT_LENGTH:var n=t.getLength(),i=0!==this.pv.segmentLength?1+n/this.pv.segmentLength:2;return i=Math.max(2,i),t.getSpacedPoints(i)}os.unreachable(e)}}class _2 extends aV{static type(){return\\\\\\\"restAttributes\\\\\\\"}cook(t,e){const n=t[0].objectsWithGeo();return e.tposition&&this._create_rest_attribute(n,e.position,e.restP),e.tnormal&&this._create_rest_attribute(n,e.normal,e.restN),this.createCoreGroupFromObjects(n)}_create_rest_attribute(t,e,n){for(let i of t){const t=i.geometry;if(t){const i=t.getAttribute(e);i&&t.setAttribute(n,i.clone())}}}}_2.DEFAULT_PARAMS={tposition:!0,position:\\\\\\\"position\\\\\\\",restP:\\\\\\\"restP\\\\\\\",tnormal:!0,normal:\\\\\\\"normal\\\\\\\",restN:\\\\\\\"restN\\\\\\\"};const m2=_2.DEFAULT_PARAMS;const f2=new class extends ua{constructor(){super(...arguments),this.tposition=ha.BOOLEAN(m2.tposition),this.position=ha.STRING(m2.position,{visibleIf:{tposition:!0}}),this.restP=ha.STRING(m2.restP,{visibleIf:{tposition:!0}}),this.tnormal=ha.BOOLEAN(m2.tnormal),this.normal=ha.STRING(m2.normal,{visibleIf:{tnormal:!0}}),this.restN=ha.STRING(m2.restN,{visibleIf:{tnormal:!0}})}};class g2 extends uV{constructor(){super(...arguments),this.paramsConfig=f2}static type(){return\\\\\\\"restAttributes\\\\\\\"}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState([Qi.FROM_NODE])}cook(t){this._operation=this._operation||new _2(this.scene(),this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}class v2 extends aV{constructor(){super(...arguments),this._core_transform=new bU}static type(){return\\\\\\\"roundedBox\\\\\\\"}cook(t,e){const n=t[0],i=n?this._cook_with_input(n,e):this._cook_without_input(e);return this.createCoreGroupFromGeometry(i)}_cook_without_input(t){const e=t.size,n=new ky(e.x,e.y,e.z,t.divisions,t.bevel);return n.translate(t.center.x,t.center.y,t.center.z),n.computeVertexNormals(),n}_cook_with_input(t,e){const n=e.divisions,i=t.boundingBox(),s=i.max.clone().sub(i.min),r=i.max.clone().add(i.min).multiplyScalar(.5),o=new ky(s.x,s.y,s.z,n,e.bevel),a=this._core_transform.translationMatrix(r);return o.applyMatrix4(a),o}}v2.DEFAULT_PARAMS={size:new p.a(1,1,1),divisions:2,bevel:.1,center:new p.a(0,0,0)},v2.INPUT_CLONED_STATE=Qi.NEVER;const y2=v2.DEFAULT_PARAMS;const x2=new class extends ua{constructor(){super(...arguments),this.size=ha.VECTOR3(y2.size),this.divisions=ha.INTEGER(y2.divisions,{range:[1,10],rangeLocked:[!0,!1]}),this.bevel=ha.FLOAT(y2.bevel,{range:[0,1],rangeLocked:[!0,!1]}),this.center=ha.VECTOR3(y2.center)}};class b2 extends uV{constructor(){super(...arguments),this.paramsConfig=x2}static type(){return\\\\\\\"roundedBox\\\\\\\"}static displayedInputNames(){return[\\\\\\\"geometry to create bounding box from (optional)\\\\\\\"]}initializeNode(){this.io.inputs.setCount(0,1),this.io.inputs.initInputsClonedState(v2.INPUT_CLONED_STATE)}cook(t){this._operation=this._operation||new v2(this._scene,this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}class w2 extends aV{static type(){return\\\\\\\"scatter\\\\\\\"}async cook(t,e){const n=t[0];let i=n.faces();const s=[];let r=0;const o=new Map;for(let t of i){const e=t.area();o.set(t.index(),e)}const a=f.sortBy(i,(t=>o.get(t.index())||-1));let l=0;for(let t of a)r+=o.get(t.index()),s[l]=r,l++;const c=[];let h=[];e.transferAttributes&&(h=n.attribNamesMatchingMask(e.attributesToTransfer));const u=new Map,d=new Map;for(let t of h)u.set(t,[]),d.set(t,n.attribSize(t));const p=new CX,_=2454*e.seed%Number.MAX_SAFE_INTEGER;await p.startWithCount(e.pointsCount,(t=>{const e=or.randFloat(_+t)*r;for(let t=0;t<s.length;t++){if(e<=s[t]){const n=a[t],i=n.randomPosition(e);i.toArray(c,c.length);for(let t of h){const e=n.attribValueAtPosition(t,i);null!=e&&(m.isNumber(e)?u.get(t).push(e):m.isVector(e)&&e.toArray(u.get(t),u.get(t).length))}break}}}));const g=new S.a;g.setAttribute(\\\\\\\"position\\\\\\\",new C.a(new Float32Array(c),3));for(let t of h)g.setAttribute(t,new C.a(new Float32Array(u.get(t)),d.get(t)));if(e.addIdAttribute||e.addIdnAttribute){const t=e.pointsCount,n=f.range(t);e.addIdAttribute&&g.setAttribute(\\\\\\\"id\\\\\\\",new C.a(new Float32Array(n),1));const i=n.map((e=>e/(t-1)));e.addIdnAttribute&&g.setAttribute(\\\\\\\"idn\\\\\\\",new C.a(new Float32Array(i),1))}const v=this.createObject(g,Ns.POINTS);return this.createCoreGroupFromObjects([v])}}w2.DEFAULT_PARAMS={pointsCount:100,seed:0,transferAttributes:!0,attributesToTransfer:\\\\\\\"normal\\\\\\\",addIdAttribute:!0,addIdnAttribute:!0},w2.INPUT_CLONED_STATE=Qi.FROM_NODE;const T2=w2.DEFAULT_PARAMS;const A2=new class extends ua{constructor(){super(...arguments),this.pointsCount=ha.INTEGER(T2.pointsCount,{range:[0,100],rangeLocked:[!0,!1]}),this.seed=ha.INTEGER(T2.seed,{range:[0,100],rangeLocked:[!1,!1]}),this.transferAttributes=ha.BOOLEAN(T2.transferAttributes),this.attributesToTransfer=ha.STRING(T2.attributesToTransfer,{visibleIf:{transferAttributes:1}}),this.addIdAttribute=ha.BOOLEAN(T2.addIdAttribute),this.addIdnAttribute=ha.BOOLEAN(T2.addIdnAttribute)}};class M2 extends uV{constructor(){super(...arguments),this.paramsConfig=A2}static type(){return\\\\\\\"scatter\\\\\\\"}static displayedInputNames(){return[\\\\\\\"geometry to scatter points onto\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(Qi.NEVER)}async cook(t){this._operation=this._operation||new w2(this.scene(),this.states);const e=await this._operation.cook(t,this.pv);this.setCoreGroup(e)}}var E2;!function(t){t.MATRIX=\\\\\\\"matrix\\\\\\\",t.AXIS=\\\\\\\"axis\\\\\\\"}(E2||(E2={}));const S2=[E2.MATRIX,E2.AXIS];var C2;!function(t){t.BBOX_CENTER=\\\\\\\"bbox center\\\\\\\",t.BBOX_CENTER_OFFSET=\\\\\\\"bbox center offset\\\\\\\",t.CUSTOM=\\\\\\\"custom\\\\\\\"}(C2||(C2={}));const N2=[C2.BBOX_CENTER,C2.BBOX_CENTER_OFFSET,C2.CUSTOM];class L2 extends aV{constructor(){super(...arguments),this._m4=new A.a,this._axisNormalized=new p.a,this._center=new p.a,this._pointPos=new p.a,this._axisPlane=new Y.a,this._pointOnPlane=new p.a,this._delta=new p.a,this._deltaNormalized=new p.a,this._offset=new p.a}static type(){return\\\\\\\"shear\\\\\\\"}cook(t,e){const n=t[0].objects();return this._applyShear(n,e),t[0]}_applyShear(t,e){const n=S2[e.mode];switch(n){case E2.MATRIX:return this._applyMatrixShear(t,e);case E2.AXIS:return this._applyAxisShear(t,e)}os.unreachable(n)}_applyMatrixShear(t,e){this._m4.makeShear(e.xy,e.xz,e.yx,e.yz,e.zx,e.zy);for(let e of t){const t=e.geometry;t&&t.applyMatrix4(this._m4)}}_applyAxisShear(t,e){this._axisNormalized.copy(e.axis),this._axisNormalized.normalize();for(let n of t){const t=n.geometry;if(t){this._getAxisModeCenter(t,e),this._axisPlane.setFromNormalAndCoplanarPoint(e.planeAxis,this._center);const n=new fr(t).points();for(let t of n){t.getPosition(this._pointPos),this._axisPlane.projectPoint(this._pointPos,this._pointOnPlane),this._delta.copy(this._pointOnPlane).sub(this._pointPos);const n=this._delta.length();this._deltaNormalized.copy(this._delta).normalize(),this._offset.copy(this._axisNormalized).multiplyScalar(e.axisAmount*n),this._delta.dot(e.planeAxis)>0&&this._offset.multiplyScalar(-1),this._pointPos.add(this._offset),t.setPosition(this._pointPos)}}}}_getAxisModeCenter(t,e){const n=N2[e.centerMode];switch(n){case C2.BBOX_CENTER:return this._getAxisModeCenterBbox(t,e);case C2.BBOX_CENTER_OFFSET:return this._getAxisModeCenterBboxOffset(t,e);case C2.CUSTOM:return this._getAxisModeCenterCustom(e)}os.unreachable(n)}_getAxisModeCenterBbox(t,e){t.computeBoundingBox();const n=t.boundingBox;n?n.getCenter(this._center):this._center.set(0,0,0)}_getAxisModeCenterBboxOffset(t,e){this._getAxisModeCenterBbox(t,e),this._center.add(e.centerOffset)}_getAxisModeCenterCustom(t){return this._center.copy(t.center)}}var O2;L2.DEFAULT_PARAMS={mode:S2.indexOf(E2.AXIS),xy:0,xz:0,yx:0,yz:0,zx:0,zy:0,centerMode:N2.indexOf(C2.BBOX_CENTER),centerOffset:new p.a(0,0,0),center:new p.a(0,0,0),planeAxis:new p.a(0,0,1),axis:new p.a(0,1,0),axisAmount:0},L2.INPUT_CLONED_STATE=Qi.FROM_NODE,function(t){t.SHEAR=\\\\\\\"shear\\\\\\\",t.TRANSFORM=\\\\\\\"transform\\\\\\\",t.UV_LAYOUT=\\\\\\\"uvLayout\\\\\\\",t.UV_TRANSFORM=\\\\\\\"uvTransform\\\\\\\",t.UV_UNWRAP=\\\\\\\"uvUnwrap\\\\\\\"}(O2||(O2={}));const P2=L2.DEFAULT_PARAMS;const R2=new class extends ua{constructor(){super(...arguments),this.mode=ha.INTEGER(P2.mode,{menu:{entries:S2.map(((t,e)=>({name:t,value:e})))}}),this.xy=ha.FLOAT(P2.xy,{visibleIf:{mode:S2.indexOf(E2.MATRIX)}}),this.xz=ha.FLOAT(P2.xz,{visibleIf:{mode:S2.indexOf(E2.MATRIX)}}),this.yx=ha.FLOAT(P2.yx,{visibleIf:{mode:S2.indexOf(E2.MATRIX)}}),this.yz=ha.FLOAT(P2.yz,{visibleIf:{mode:S2.indexOf(E2.MATRIX)}}),this.zx=ha.FLOAT(P2.zx,{visibleIf:{mode:S2.indexOf(E2.MATRIX)}}),this.zy=ha.FLOAT(P2.zy,{visibleIf:{mode:S2.indexOf(E2.MATRIX)}}),this.centerMode=ha.INTEGER(P2.centerMode,{visibleIf:{mode:S2.indexOf(E2.AXIS)},menu:{entries:N2.map(((t,e)=>({name:t,value:e})))}}),this.centerOffset=ha.VECTOR3(P2.centerOffset.toArray(),{visibleIf:{mode:S2.indexOf(E2.AXIS),centerMode:N2.indexOf(C2.BBOX_CENTER_OFFSET)}}),this.center=ha.VECTOR3(P2.center.toArray(),{visibleIf:{mode:S2.indexOf(E2.AXIS),centerMode:N2.indexOf(C2.CUSTOM)}}),this.planeAxis=ha.VECTOR3(P2.planeAxis.toArray(),{visibleIf:{mode:S2.indexOf(E2.AXIS)}}),this.axis=ha.VECTOR3(P2.axis.toArray(),{visibleIf:{mode:S2.indexOf(E2.AXIS)}}),this.axisAmount=ha.FLOAT(P2.axisAmount,{range:[-1,1],visibleIf:{mode:S2.indexOf(E2.AXIS)}})}};class I2 extends uV{constructor(){super(...arguments),this.paramsConfig=R2}static type(){return O2.SHEAR}static displayedInputNames(){return[\\\\\\\"geometries or objects to transform\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(L2.INPUT_CLONED_STATE)}setMode(t){this.p.mode.set(S2.indexOf(t))}cook(t){this._operation=this._operation||new L2(this.scene(),this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}const F2=new class extends ua{};class D2 extends uV{constructor(){super(...arguments),this.paramsConfig=F2}static type(){return\\\\\\\"skin\\\\\\\"}static displayedInputNames(){return[\\\\\\\"lines to create polygons from\\\\\\\",\\\\\\\"if used, lines from both inputs will be used\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1,2)}cook(t){switch(f.compact(this.io.inputs.inputs()).length){case 1:return this.process_one_input(t);case 2:return this.process_two_inputs(t);default:return this.states.error.set(\\\\\\\"inputs count not valid\\\\\\\")}}process_one_input(t){const e=t[0],n=this._get_line_segments(e),i=[];if(n){const t=n[0];if(t){const e=G1.line_segment_to_geometries(t.geometry);e.forEach(((t,n)=>{if(n>0){const s=e[n-1],r=this._skin(s,t);i.push(r)}}))}}this.setGeometries(i)}process_two_inputs(t){const e=t[0],n=t[1],i=this._get_line_segments(e),s=this._get_line_segments(n),r=f.sortBy([i,s],(t=>-t.length)),o=r[0],a=r[1],l=[];o.forEach(((t,e)=>{const n=a[e];if(null!=t&&null!=n){const e=t.geometry,i=n.geometry,s=this._skin(e,i);l.push(s)}})),this.setGeometries(l)}_get_line_segments(t){return t.objects().filter((t=>t.isLineSegments))}_skin(t,e){const n=new S.a;return new V1(n,t,e).process(),n}}var B2;!function(t){t.X=\\\\\\\"x\\\\\\\",t.Y=\\\\\\\"y\\\\\\\",t.Z=\\\\\\\"z\\\\\\\"}(B2||(B2={}));const z2=[B2.X,B2.Y,B2.Z];class k2 extends aV{constructor(){super(...arguments),this._pointPos=new p.a,this._positions=[],this._indicesByPos=new Map,this._indexDest=new Map,this._debugActive=!1}static type(){return\\\\\\\"sort\\\\\\\"}cook(t,e){const n=t[0],i=n.objectsWithGeo();for(let t of i)this._sortObject(t,e);return n}_debug(t){this._debugActive}_sortObject(t,e){const n=new br(t,0).points(),i=t.geometry.getIndex();if(!i)return void console.warn(\\\\\\\"geometry cannot be sorted since it has no index\\\\\\\");const s=i.array;this._positions=new Array(n.length),this._indicesByPos.clear(),this._indexDest.clear();const r=z2[e.axis];let o=0,a=0;for(let t of n){switch(t.getPosition(this._pointPos),r){case B2.X:o=this._pointPos.x;break;case B2.Y:o=this._pointPos.y;break;case B2.Z:o=this._pointPos.z}this._positions[a]=o,h.pushOnArrayAtEntry(this._indicesByPos,o,t.index()),a++}let l=this._positions.sort(((t,e)=>t-e));e.invert&&l.reverse();const c=new Array(n.length);a=0;const u=f.uniq(l);for(let t of u){const e=this._indicesByPos.get(t);if(e)for(let t of e)c[a]=t,this._indexDest.set(t,a),a++}const d=new Array(s.length);for(let t=0;t<s.length;t++){const e=s[t],n=this._indexDest.get(e);d[t]=n}t.geometry.setIndex(d);const p=fr.attribNames(t.geometry);for(let e of p){\\\\\\\"id\\\\\\\"==e&&(this._debugActive=!0);const n=t.geometry.getAttribute(e);this._updateAttribute(n,c),this._debugActive=!1}}_updateAttribute(t,e){const n=t.clone(),i=t.array,s=n.array,r=n.itemSize;this._debug(e);for(let t of e){const e=this._indexDest.get(t);if(this._debug(`${t} -> ${e}`),null!=e)for(let n=0;n<r;n++)s[e*r+n]=i[t*r+n];else console.warn(\\\\\\\"no old index found\\\\\\\")}t.array=s,t.needsUpdate=!0}}k2.DEFAULT_PARAMS={axis:z2.indexOf(B2.X),invert:!1},k2.INPUT_CLONED_STATE=Qi.FROM_NODE;const U2=k2.DEFAULT_PARAMS;const G2=new class extends ua{constructor(){super(...arguments),this.axis=ha.INTEGER(U2.axis,{menu:{entries:z2.map(((t,e)=>({name:t,value:e})))}}),this.invert=ha.BOOLEAN(U2.invert)}};class V2 extends uV{constructor(){super(...arguments),this.paramsConfig=G2}static type(){return\\\\\\\"sort\\\\\\\"}static displayedInputNames(){return[\\\\\\\"geometry to sort\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState([Qi.FROM_NODE])}cook(t){this._operation=this._operation||new k2(this._scene,this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}const H2=new class extends ua{constructor(){super(...arguments),this.startFrame=ha.INTEGER(Nl.START_FRAME)}};class j2 extends _V{constructor(){super(...arguments),this.paramsConfig=H2,this._last_simulated_frame=null,this.childrenDisplayController=new fV(this,{dependsOnDisplayNode:!1}),this.displayNodeController=new Fm(this,{onDisplayNodeRemove:()=>{},onDisplayNodeSet:()=>{},onDisplayNodeUpdate:()=>{}},{dependsOnDisplayNode:!1})}static type(){return\\\\\\\"solver\\\\\\\"}initializeNode(){this.io.inputs.setCount(0,4),this.io.inputs.initInputsClonedState(Qi.NEVER),this.addGraphInput(this.scene().timeController.graphNode)}previousFrameCoreGroup(){return this._previousFrameCoreGroup}async cook(t){this.pv.startFrame==this.scene().frame()&&this._reset(),this.computeSolverIfRequired()}_reset(){this._previousFrameCoreGroup=void 0,this._last_simulated_frame=null}computeSolverIfRequired(){const t=this.scene().frame(),e=this.pv.startFrame;t>=e&&(null==this._last_simulated_frame&&(this._last_simulated_frame=e-1),t>this._last_simulated_frame&&this._computeSolverMultipleTimes(t-this._last_simulated_frame))}_computeSolverMultipleTimes(t=1){for(let e=0;e<t;e++)this.computeSolver();this._last_simulated_frame=this.scene().frame()}async computeSolver(){const t=this.childrenDisplayController.output_node();if(t){const e=(await t.compute()).coreContent();e?(this._previousFrameCoreGroup=e,this.setCoreGroup(e)):t.states.error.active()?this.states.error.set(t.states.error.message()):(this._previousFrameCoreGroup=void 0,this.setObjects([]))}else this.states.error.set(\\\\\\\"no output node found inside subnet\\\\\\\")}isOnFrameStart(){return this.scene().frame()==this.pv.startFrame}}const W2=new class extends ua{};class q2 extends uV{constructor(){super(...arguments),this.paramsConfig=W2}static type(){return\\\\\\\"solverPreviousFrame\\\\\\\"}initializeNode(){this.addGraphInput(this.scene().timeController.graphNode)}async cook(){const t=this.parent();(null==t?void 0:t.type())!=j2.type()&&(this.states.error.set(`the parent is not a '${j2.type()}'`),this.cookController.endCook());const e=t.previousFrameCoreGroup();e?this.setCoreGroup(e):this.setObjects([])}}var X2;!function(t){t.DEFAULT=\\\\\\\"default\\\\\\\",t.ISOCAHEDRON=\\\\\\\"isocahedron\\\\\\\"}(X2||(X2={}));const Y2={default:0,isocahedron:1},$2=[X2.DEFAULT,X2.ISOCAHEDRON];class J2 extends aV{static type(){return\\\\\\\"sphere\\\\\\\"}cook(t,e){const n=t[0];return n?this._cook_with_input(n,e):this._cook_without_input(e)}_cook_without_input(t){const e=this._create_required_geometry(t);return e.translate(t.center.x,t.center.y,t.center.z),this.createCoreGroupFromGeometry(e)}_cook_with_input(t,e){const n=t.boundingBox(),i=n.max.clone().sub(n.min),s=n.max.clone().add(n.min).multiplyScalar(.5),r=this._create_required_geometry(e);return r.translate(e.center.x,e.center.y,e.center.z),r.translate(s.x,s.y,s.z),r.scale(i.x,i.y,i.z),this.createCoreGroupFromGeometry(r)}_create_required_geometry(t){return t.type==Y2.default?this._create_default_sphere(t):this._create_default_isocahedron(t)}_create_default_sphere(t){return t.open?new tG(t.radius,t.resolution.x,t.resolution.y,t.phiStart,t.phiLength,t.thetaStart,t.thetaLength):new tG(t.radius,t.resolution.x,t.resolution.y)}_create_default_isocahedron(t){return new bJ(t.radius,t.detail)}}J2.DEFAULT_PARAMS={type:Y2.default,radius:1,resolution:new d.a(30,30),open:!1,phiStart:0,phiLength:2*Math.PI,thetaStart:0,thetaLength:Math.PI,detail:1,center:new p.a(0,0,0)},J2.INPUT_CLONED_STATE=Qi.FROM_NODE;const Z2=J2.DEFAULT_PARAMS;const K2=new class extends ua{constructor(){super(...arguments),this.type=ha.INTEGER(Z2.type,{menu:{entries:$2.map((t=>({name:t,value:Y2[t]})))}}),this.radius=ha.FLOAT(Z2.radius,{visibleIf:{type:Y2.default}}),this.resolution=ha.VECTOR2(Z2.resolution,{visibleIf:{type:Y2.default}}),this.open=ha.BOOLEAN(Z2.open,{visibleIf:{type:Y2.default}}),this.phiStart=ha.FLOAT(Z2.phiStart,{range:[0,2*Math.PI],visibleIf:{type:Y2.default,open:!0}}),this.phiLength=ha.FLOAT(\\\\\\\"$PI*2\\\\\\\",{range:[0,2*Math.PI],visibleIf:{type:Y2.default,open:!0}}),this.thetaStart=ha.FLOAT(Z2.thetaStart,{range:[0,Math.PI],visibleIf:{type:Y2.default,open:!0}}),this.thetaLength=ha.FLOAT(\\\\\\\"$PI\\\\\\\",{range:[0,Math.PI],visibleIf:{type:Y2.default,open:!0}}),this.detail=ha.INTEGER(Z2.detail,{range:[0,5],rangeLocked:[!0,!1],visibleIf:{type:Y2.isocahedron}}),this.center=ha.VECTOR3(Z2.center)}};class Q2 extends uV{constructor(){super(...arguments),this.paramsConfig=K2}static type(){return\\\\\\\"sphere\\\\\\\"}initializeNode(){this.io.inputs.setCount(0,1),this.io.inputs.initInputsClonedState(J2.INPUT_CLONED_STATE)}cook(t){this._operation=this._operation||new J2(this.scene(),this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}const t9=new class extends ua{constructor(){super(...arguments),this.attribType=ha.INTEGER(ks.indexOf(zs.NUMERIC),{menu:{entries:Us}}),this.attribName=ha.STRING(\\\\\\\"\\\\\\\")}};class e9 extends uV{constructor(){super(...arguments),this.paramsConfig=t9,this._new_objects=[]}static type(){return\\\\\\\"split\\\\\\\"}static displayedInputNames(){return[\\\\\\\"geometry to split in multiple objects\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1)}async cook(t){const e=t[0];this._new_objects=[],\\\\\\\"\\\\\\\"!=this.pv.attribName&&this._split_core_group(e),this.setObjects(this._new_objects)}async _split_core_group(t){const e=t.coreObjects();for(let t of e)this._split_core_object(t)}_split_core_object(t){let e=t.coreGeometry(),n=this.pv.attribName,i=new Map;if(e){const s=t.object(),r=e.pointsFromGeometry(),o=r[0];if(o){if(o.attribSize(n)!=Gs.FLOAT&&!o.isAttribIndexed(n))return void this.states.error.set(`attrib '${n}' must be a float or a string`);let t;if(o.isAttribIndexed(n))for(let e of r)t=e.indexedAttribValue(n),h.pushOnArrayAtEntry(i,t,e);else for(let e of r)t=e.attribValue(n),h.pushOnArrayAtEntry(i,t,e)}const a=Os(s.constructor);i.forEach(((t,e)=>{const i=fr.geometryFromPoints(t,a);if(i){const t=this.createObject(i,a);br.addAttribute(t,n,e),this._new_objects.push(t)}}))}}}const n9=new A.a,i9=new Q.a,s9=new p.a;class r9 extends J.a{constructor(){super(),this.uuid=On.h(),this.name=\\\\\\\"\\\\\\\",this.type=\\\\\\\"Geometry\\\\\\\",this.vertices=[],this.colors=[],this.faces=[],this.faceVertexUvs=[[]],this.morphTargets=[],this.morphNormals=[],this.skinWeights=[],this.skinIndices=[],this.lineDistances=[],this.boundingBox=null,this.boundingSphere=null,this.elementsNeedUpdate=!1,this.verticesNeedUpdate=!1,this.uvsNeedUpdate=!1,this.normalsNeedUpdate=!1,this.colorsNeedUpdate=!1,this.lineDistancesNeedUpdate=!1,this.groupsNeedUpdate=!1}applyMatrix4(t){const e=(new G.a).getNormalMatrix(t);for(let e=0,n=this.vertices.length;e<n;e++){this.vertices[e].applyMatrix4(t)}for(let t=0,n=this.faces.length;t<n;t++){const n=this.faces[t];n.normal.applyMatrix3(e).normalize();for(let t=0,i=n.vertexNormals.length;t<i;t++)n.vertexNormals[t].applyMatrix3(e).normalize()}return null!==this.boundingBox&&this.computeBoundingBox(),null!==this.boundingSphere&&this.computeBoundingSphere(),this.verticesNeedUpdate=!0,this.normalsNeedUpdate=!0,this}rotateX(t){return n9.makeRotationX(t),this.applyMatrix4(n9),this}rotateY(t){return n9.makeRotationY(t),this.applyMatrix4(n9),this}rotateZ(t){return n9.makeRotationZ(t),this.applyMatrix4(n9),this}translate(t,e,n){return n9.makeTranslation(t,e,n),this.applyMatrix4(n9),this}scale(t,e,n){return n9.makeScale(t,e,n),this.applyMatrix4(n9),this}lookAt(t){return i9.lookAt(t),i9.updateMatrix(),this.applyMatrix4(i9.matrix),this}fromBufferGeometry(t){const e=this,n=null!==t.index?t.index:void 0,i=t.attributes;if(void 0===i.position)return console.error(\\\\\\\"THREE.Geometry.fromBufferGeometry(): Position attribute required for conversion.\\\\\\\"),this;const s=i.position,r=i.normal,o=i.color,a=i.uv,l=i.uv2;void 0!==l&&(this.faceVertexUvs[1]=[]);for(let t=0;t<s.count;t++)e.vertices.push((new p.a).fromBufferAttribute(s,t)),void 0!==o&&e.colors.push((new D.a).fromBufferAttribute(o,t));function c(t,n,i,s){const c=void 0===o?[]:[e.colors[t].clone(),e.colors[n].clone(),e.colors[i].clone()],h=void 0===r?[]:[(new p.a).fromBufferAttribute(r,t),(new p.a).fromBufferAttribute(r,n),(new p.a).fromBufferAttribute(r,i)],u=new a9(t,n,i,h,c,s);e.faces.push(u),void 0!==a&&e.faceVertexUvs[0].push([(new d.a).fromBufferAttribute(a,t),(new d.a).fromBufferAttribute(a,n),(new d.a).fromBufferAttribute(a,i)]),void 0!==l&&e.faceVertexUvs[1].push([(new d.a).fromBufferAttribute(l,t),(new d.a).fromBufferAttribute(l,n),(new d.a).fromBufferAttribute(l,i)])}const h=t.groups;if(h.length>0)for(let t=0;t<h.length;t++){const e=h[t],i=e.start;for(let t=i,s=i+e.count;t<s;t+=3)void 0!==n?c(n.getX(t),n.getX(t+1),n.getX(t+2),e.materialIndex):c(t,t+1,t+2,e.materialIndex)}else if(void 0!==n)for(let t=0;t<n.count;t+=3)c(n.getX(t),n.getX(t+1),n.getX(t+2));else for(let t=0;t<s.count;t+=3)c(t,t+1,t+2);return this.computeFaceNormals(),null!==t.boundingBox&&(this.boundingBox=t.boundingBox.clone()),null!==t.boundingSphere&&(this.boundingSphere=t.boundingSphere.clone()),this}center(){return this.computeBoundingBox(),this.boundingBox.getCenter(s9).negate(),this.translate(s9.x,s9.y,s9.z),this}normalize(){this.computeBoundingSphere();const t=this.boundingSphere.center,e=this.boundingSphere.radius,n=0===e?1:1/e,i=new A.a;return i.set(n,0,0,-n*t.x,0,n,0,-n*t.y,0,0,n,-n*t.z,0,0,0,1),this.applyMatrix4(i),this}computeFaceNormals(){const t=new p.a,e=new p.a;for(let n=0,i=this.faces.length;n<i;n++){const i=this.faces[n],s=this.vertices[i.a],r=this.vertices[i.b],o=this.vertices[i.c];t.subVectors(o,r),e.subVectors(s,r),t.cross(e),t.normalize(),i.normal.copy(t)}}computeVertexNormals(t=!0){const e=new Array(this.vertices.length);for(let t=0,n=this.vertices.length;t<n;t++)e[t]=new p.a;if(t){const t=new p.a,n=new p.a;for(let i=0,s=this.faces.length;i<s;i++){const s=this.faces[i],r=this.vertices[s.a],o=this.vertices[s.b],a=this.vertices[s.c];t.subVectors(a,o),n.subVectors(r,o),t.cross(n),e[s.a].add(t),e[s.b].add(t),e[s.c].add(t)}}else{this.computeFaceNormals();for(let t=0,n=this.faces.length;t<n;t++){const n=this.faces[t];e[n.a].add(n.normal),e[n.b].add(n.normal),e[n.c].add(n.normal)}}for(let t=0,n=this.vertices.length;t<n;t++)e[t].normalize();for(let t=0,n=this.faces.length;t<n;t++){const n=this.faces[t],i=n.vertexNormals;3===i.length?(i[0].copy(e[n.a]),i[1].copy(e[n.b]),i[2].copy(e[n.c])):(i[0]=e[n.a].clone(),i[1]=e[n.b].clone(),i[2]=e[n.c].clone())}this.faces.length>0&&(this.normalsNeedUpdate=!0)}computeFlatVertexNormals(){this.computeFaceNormals();for(let t=0,e=this.faces.length;t<e;t++){const e=this.faces[t],n=e.vertexNormals;3===n.length?(n[0].copy(e.normal),n[1].copy(e.normal),n[2].copy(e.normal)):(n[0]=e.normal.clone(),n[1]=e.normal.clone(),n[2]=e.normal.clone())}this.faces.length>0&&(this.normalsNeedUpdate=!0)}computeMorphNormals(){for(let t=0,e=this.faces.length;t<e;t++){const e=this.faces[t];e.__originalFaceNormal?e.__originalFaceNormal.copy(e.normal):e.__originalFaceNormal=e.normal.clone(),e.__originalVertexNormals||(e.__originalVertexNormals=[]);for(let t=0,n=e.vertexNormals.length;t<n;t++)e.__originalVertexNormals[t]?e.__originalVertexNormals[t].copy(e.vertexNormals[t]):e.__originalVertexNormals[t]=e.vertexNormals[t].clone()}const t=new r9;t.faces=this.faces;for(let e=0,n=this.morphTargets.length;e<n;e++){if(!this.morphNormals[e]){this.morphNormals[e]={},this.morphNormals[e].faceNormals=[],this.morphNormals[e].vertexNormals=[];const t=this.morphNormals[e].faceNormals,n=this.morphNormals[e].vertexNormals;for(let e=0,i=this.faces.length;e<i;e++){const e=new p.a,i={a:new p.a,b:new p.a,c:new p.a};t.push(e),n.push(i)}}const n=this.morphNormals[e];t.vertices=this.morphTargets[e].vertices,t.computeFaceNormals(),t.computeVertexNormals();for(let t=0,e=this.faces.length;t<e;t++){const e=this.faces[t],i=n.faceNormals[t],s=n.vertexNormals[t];i.copy(e.normal),s.a.copy(e.vertexNormals[0]),s.b.copy(e.vertexNormals[1]),s.c.copy(e.vertexNormals[2])}}for(let t=0,e=this.faces.length;t<e;t++){const e=this.faces[t];e.normal=e.__originalFaceNormal,e.vertexNormals=e.__originalVertexNormals}}computeBoundingBox(){null===this.boundingBox&&(this.boundingBox=new Ry.a),this.boundingBox.setFromPoints(this.vertices)}computeBoundingSphere(){null===this.boundingSphere&&(this.boundingSphere=new MX.a),this.boundingSphere.setFromPoints(this.vertices)}merge(t,e,n=0){if(!t||!t.isGeometry)return void console.error(\\\\\\\"THREE.Geometry.merge(): geometry not an instance of THREE.Geometry.\\\\\\\",t);let i;const s=this.vertices.length,r=this.vertices,o=t.vertices,a=this.faces,l=t.faces,c=this.colors,h=t.colors;void 0!==e&&(i=(new G.a).getNormalMatrix(e));for(let t=0,n=o.length;t<n;t++){const n=o[t].clone();void 0!==e&&n.applyMatrix4(e),r.push(n)}for(let t=0,e=h.length;t<e;t++)c.push(h[t].clone());for(let t=0,e=l.length;t<e;t++){const e=l[t];let r,o;const c=e.vertexNormals,h=e.vertexColors,u=new a9(e.a+s,e.b+s,e.c+s);u.normal.copy(e.normal),void 0!==i&&u.normal.applyMatrix3(i).normalize();for(let t=0,e=c.length;t<e;t++)r=c[t].clone(),void 0!==i&&r.applyMatrix3(i).normalize(),u.vertexNormals.push(r);u.color.copy(e.color);for(let t=0,e=h.length;t<e;t++)o=h[t],u.vertexColors.push(o.clone());u.materialIndex=e.materialIndex+n,a.push(u)}for(let e=0,n=t.faceVertexUvs.length;e<n;e++){const n=t.faceVertexUvs[e];void 0===this.faceVertexUvs[e]&&(this.faceVertexUvs[e]=[]);for(let t=0,i=n.length;t<i;t++){const i=n[t],s=[];for(let t=0,e=i.length;t<e;t++)s.push(i[t].clone());this.faceVertexUvs[e].push(s)}}}mergeMesh(t){t&&t.isMesh?(t.matrixAutoUpdate&&t.updateMatrix(),this.merge(t.geometry,t.matrix)):console.error(\\\\\\\"THREE.Geometry.mergeMesh(): mesh not an instance of THREE.Mesh.\\\\\\\",t)}mergeVertices(t=4){const e={},n=[],i=[],s=Math.pow(10,t);for(let t=0,r=this.vertices.length;t<r;t++){const r=this.vertices[t],o=Math.round(r.x*s)+\\\\\\\"_\\\\\\\"+Math.round(r.y*s)+\\\\\\\"_\\\\\\\"+Math.round(r.z*s);void 0===e[o]?(e[o]=t,n.push(this.vertices[t]),i[t]=n.length-1):i[t]=i[e[o]]}const r=[];for(let t=0,e=this.faces.length;t<e;t++){const e=this.faces[t];e.a=i[e.a],e.b=i[e.b],e.c=i[e.c];const n=[e.a,e.b,e.c];for(let e=0;e<3;e++)if(n[e]===n[(e+1)%3]){r.push(t);break}}for(let t=r.length-1;t>=0;t--){const e=r[t];this.faces.splice(e,1);for(let t=0,n=this.faceVertexUvs.length;t<n;t++)this.faceVertexUvs[t].splice(e,1)}const o=this.vertices.length-n.length;return this.vertices=n,o}setFromPoints(t){this.vertices=[];for(let e=0,n=t.length;e<n;e++){const n=t[e];this.vertices.push(new p.a(n.x,n.y,n.z||0))}return this}sortFacesByMaterialIndex(){const t=this.faces,e=t.length;for(let n=0;n<e;n++)t[n]._id=n;t.sort((function(t,e){return t.materialIndex-e.materialIndex}));const n=this.faceVertexUvs[0],i=this.faceVertexUvs[1];let s,r;n&&n.length===e&&(s=[]),i&&i.length===e&&(r=[]);for(let o=0;o<e;o++){const e=t[o]._id;s&&s.push(n[e]),r&&r.push(i[e])}s&&(this.faceVertexUvs[0]=s),r&&(this.faceVertexUvs[1]=r)}toJSON(){const t={metadata:{version:4.5,type:\\\\\\\"Geometry\\\\\\\",generator:\\\\\\\"Geometry.toJSON\\\\\\\"}};if(t.uuid=this.uuid,t.type=this.type,\\\\\\\"\\\\\\\"!==this.name&&(t.name=this.name),void 0!==this.parameters){const e=this.parameters;for(const n in e)void 0!==e[n]&&(t[n]=e[n]);return t}const e=[];for(let t=0;t<this.vertices.length;t++){const n=this.vertices[t];e.push(n.x,n.y,n.z)}const n=[],i=[],s={},r=[],o={},a=[],l={};for(let t=0;t<this.faces.length;t++){const e=this.faces[t],i=!0,s=!1,r=void 0!==this.faceVertexUvs[0][t],o=e.normal.length()>0,a=e.vertexNormals.length>0,l=1!==e.color.r||1!==e.color.g||1!==e.color.b,p=e.vertexColors.length>0;let _=0;if(_=c(_,0,0),_=c(_,1,i),_=c(_,2,s),_=c(_,3,r),_=c(_,4,o),_=c(_,5,a),_=c(_,6,l),_=c(_,7,p),n.push(_),n.push(e.a,e.b,e.c),n.push(e.materialIndex),r){const e=this.faceVertexUvs[0][t];n.push(d(e[0]),d(e[1]),d(e[2]))}if(o&&n.push(h(e.normal)),a){const t=e.vertexNormals;n.push(h(t[0]),h(t[1]),h(t[2]))}if(l&&n.push(u(e.color)),p){const t=e.vertexColors;n.push(u(t[0]),u(t[1]),u(t[2]))}}function c(t,e,n){return n?t|1<<e:t&~(1<<e)}function h(t){const e=t.x.toString()+t.y.toString()+t.z.toString();return void 0!==s[e]||(s[e]=i.length/3,i.push(t.x,t.y,t.z)),s[e]}function u(t){const e=t.r.toString()+t.g.toString()+t.b.toString();return void 0!==o[e]||(o[e]=r.length,r.push(t.getHex())),o[e]}function d(t){const e=t.x.toString()+t.y.toString();return void 0!==l[e]||(l[e]=a.length/2,a.push(t.x,t.y)),l[e]}return t.data={},t.data.vertices=e,t.data.normals=i,r.length>0&&(t.data.colors=r),a.length>0&&(t.data.uvs=[a]),t.data.faces=n,t}clone(){return(new r9).copy(this)}copy(t){this.vertices=[],this.colors=[],this.faces=[],this.faceVertexUvs=[[]],this.morphTargets=[],this.morphNormals=[],this.skinWeights=[],this.skinIndices=[],this.lineDistances=[],this.boundingBox=null,this.boundingSphere=null,this.name=t.name;const e=t.vertices;for(let t=0,n=e.length;t<n;t++)this.vertices.push(e[t].clone());const n=t.colors;for(let t=0,e=n.length;t<e;t++)this.colors.push(n[t].clone());const i=t.faces;for(let t=0,e=i.length;t<e;t++)this.faces.push(i[t].clone());for(let e=0,n=t.faceVertexUvs.length;e<n;e++){const n=t.faceVertexUvs[e];void 0===this.faceVertexUvs[e]&&(this.faceVertexUvs[e]=[]);for(let t=0,i=n.length;t<i;t++){const i=n[t],s=[];for(let t=0,e=i.length;t<e;t++){const e=i[t];s.push(e.clone())}this.faceVertexUvs[e].push(s)}}const s=t.morphTargets;for(let t=0,e=s.length;t<e;t++){const e={};if(e.name=s[t].name,void 0!==s[t].vertices){e.vertices=[];for(let n=0,i=s[t].vertices.length;n<i;n++)e.vertices.push(s[t].vertices[n].clone())}if(void 0!==s[t].normals){e.normals=[];for(let n=0,i=s[t].normals.length;n<i;n++)e.normals.push(s[t].normals[n].clone())}this.morphTargets.push(e)}const r=t.morphNormals;for(let t=0,e=r.length;t<e;t++){const e={};if(void 0!==r[t].vertexNormals){e.vertexNormals=[];for(let n=0,i=r[t].vertexNormals.length;n<i;n++){const i=r[t].vertexNormals[n],s={};s.a=i.a.clone(),s.b=i.b.clone(),s.c=i.c.clone(),e.vertexNormals.push(s)}}if(void 0!==r[t].faceNormals){e.faceNormals=[];for(let n=0,i=r[t].faceNormals.length;n<i;n++)e.faceNormals.push(r[t].faceNormals[n].clone())}this.morphNormals.push(e)}const o=t.skinWeights;for(let t=0,e=o.length;t<e;t++)this.skinWeights.push(o[t].clone());const a=t.skinIndices;for(let t=0,e=a.length;t<e;t++)this.skinIndices.push(a[t].clone());const l=t.lineDistances;for(let t=0,e=l.length;t<e;t++)this.lineDistances.push(l[t]);const c=t.boundingBox;null!==c&&(this.boundingBox=c.clone());const h=t.boundingSphere;return null!==h&&(this.boundingSphere=h.clone()),this.elementsNeedUpdate=t.elementsNeedUpdate,this.verticesNeedUpdate=t.verticesNeedUpdate,this.uvsNeedUpdate=t.uvsNeedUpdate,this.normalsNeedUpdate=t.normalsNeedUpdate,this.colorsNeedUpdate=t.colorsNeedUpdate,this.lineDistancesNeedUpdate=t.lineDistancesNeedUpdate,this.groupsNeedUpdate=t.groupsNeedUpdate,this}toBufferGeometry(){const t=(new o9).fromGeometry(this),e=new S.a,n=new Float32Array(3*t.vertices.length);if(e.setAttribute(\\\\\\\"position\\\\\\\",new C.a(n,3).copyVector3sArray(t.vertices)),t.normals.length>0){const n=new Float32Array(3*t.normals.length);e.setAttribute(\\\\\\\"normal\\\\\\\",new C.a(n,3).copyVector3sArray(t.normals))}if(t.colors.length>0){const n=new Float32Array(3*t.colors.length);e.setAttribute(\\\\\\\"color\\\\\\\",new C.a(n,3).copyColorsArray(t.colors))}if(t.uvs.length>0){const n=new Float32Array(2*t.uvs.length);e.setAttribute(\\\\\\\"uv\\\\\\\",new C.a(n,2).copyVector2sArray(t.uvs))}if(t.uvs2.length>0){const n=new Float32Array(2*t.uvs2.length);e.setAttribute(\\\\\\\"uv2\\\\\\\",new C.a(n,2).copyVector2sArray(t.uvs2))}e.groups=t.groups;for(const n in t.morphTargets){const i=[],s=t.morphTargets[n];for(let t=0,e=s.length;t<e;t++){const e=s[t],n=new C.c(3*e.data.length,3);n.name=e.name,i.push(n.copyVector3sArray(e.data))}e.morphAttributes[n]=i}if(t.skinIndices.length>0){const n=new C.c(4*t.skinIndices.length,4);e.setAttribute(\\\\\\\"skinIndex\\\\\\\",n.copyVector4sArray(t.skinIndices))}if(t.skinWeights.length>0){const n=new C.c(4*t.skinWeights.length,4);e.setAttribute(\\\\\\\"skinWeight\\\\\\\",n.copyVector4sArray(t.skinWeights))}return null!==t.boundingSphere&&(e.boundingSphere=t.boundingSphere.clone()),null!==t.boundingBox&&(e.boundingBox=t.boundingBox.clone()),e}computeTangents(){console.error(\\\\\\\"THREE.Geometry: .computeTangents() has been removed.\\\\\\\")}computeLineDistances(){console.error(\\\\\\\"THREE.Geometry: .computeLineDistances() has been removed. Use THREE.Line.computeLineDistances() instead.\\\\\\\")}applyMatrix(t){return console.warn(\\\\\\\"THREE.Geometry: .applyMatrix() has been renamed to .applyMatrix4().\\\\\\\"),this.applyMatrix4(t)}dispose(){this.dispatchEvent({type:\\\\\\\"dispose\\\\\\\"})}static createBufferGeometryFromObject(t){let e=new S.a;const n=t.geometry;if(t.isPoints||t.isLine){const t=new C.c(3*n.vertices.length,3),i=new C.c(3*n.colors.length,3);if(e.setAttribute(\\\\\\\"position\\\\\\\",t.copyVector3sArray(n.vertices)),e.setAttribute(\\\\\\\"color\\\\\\\",i.copyColorsArray(n.colors)),n.lineDistances&&n.lineDistances.length===n.vertices.length){const t=new C.c(n.lineDistances.length,1);e.setAttribute(\\\\\\\"lineDistance\\\\\\\",t.copyArray(n.lineDistances))}null!==n.boundingSphere&&(e.boundingSphere=n.boundingSphere.clone()),null!==n.boundingBox&&(e.boundingBox=n.boundingBox.clone())}else t.isMesh&&(e=n.toBufferGeometry());return e}}r9.prototype.isGeometry=!0;class o9{constructor(){this.vertices=[],this.normals=[],this.colors=[],this.uvs=[],this.uvs2=[],this.groups=[],this.morphTargets={},this.skinWeights=[],this.skinIndices=[],this.boundingBox=null,this.boundingSphere=null,this.verticesNeedUpdate=!1,this.normalsNeedUpdate=!1,this.colorsNeedUpdate=!1,this.uvsNeedUpdate=!1,this.groupsNeedUpdate=!1}computeGroups(t){const e=[];let n,i,s;const r=t.faces;for(i=0;i<r.length;i++){const t=r[i];t.materialIndex!==s&&(s=t.materialIndex,void 0!==n&&(n.count=3*i-n.start,e.push(n)),n={start:3*i,materialIndex:s})}void 0!==n&&(n.count=3*i-n.start,e.push(n)),this.groups=e}fromGeometry(t){const e=t.faces,n=t.vertices,i=t.faceVertexUvs,s=i[0]&&i[0].length>0,r=i[1]&&i[1].length>0,o=t.morphTargets,a=o.length;let l;if(a>0){l=[];for(let t=0;t<a;t++)l[t]={name:o[t].name,data:[]};this.morphTargets.position=l}const c=t.morphNormals,h=c.length;let u;if(h>0){u=[];for(let t=0;t<h;t++)u[t]={name:c[t].name,data:[]};this.morphTargets.normal=u}const p=t.skinIndices,_=t.skinWeights,m=p.length===n.length,f=_.length===n.length;n.length>0&&0===e.length&&console.error(\\\\\\\"THREE.DirectGeometry: Faceless geometries are not supported.\\\\\\\");for(let t=0;t<e.length;t++){const g=e[t];this.vertices.push(n[g.a],n[g.b],n[g.c]);const v=g.vertexNormals;if(3===v.length)this.normals.push(v[0],v[1],v[2]);else{const t=g.normal;this.normals.push(t,t,t)}const y=g.vertexColors;if(3===y.length)this.colors.push(y[0],y[1],y[2]);else{const t=g.color;this.colors.push(t,t,t)}if(!0===s){const e=i[0][t];void 0!==e?this.uvs.push(e[0],e[1],e[2]):(console.warn(\\\\\\\"THREE.DirectGeometry.fromGeometry(): Undefined vertexUv \\\\\\\",t),this.uvs.push(new d.a,new d.a,new d.a))}if(!0===r){const e=i[1][t];void 0!==e?this.uvs2.push(e[0],e[1],e[2]):(console.warn(\\\\\\\"THREE.DirectGeometry.fromGeometry(): Undefined vertexUv2 \\\\\\\",t),this.uvs2.push(new d.a,new d.a,new d.a))}for(let t=0;t<a;t++){const e=o[t].vertices;l[t].data.push(e[g.a],e[g.b],e[g.c])}for(let e=0;e<h;e++){const n=c[e].vertexNormals[t];u[e].data.push(n.a,n.b,n.c)}m&&this.skinIndices.push(p[g.a],p[g.b],p[g.c]),f&&this.skinWeights.push(_[g.a],_[g.b],_[g.c])}return this.computeGroups(t),this.verticesNeedUpdate=t.verticesNeedUpdate,this.normalsNeedUpdate=t.normalsNeedUpdate,this.colorsNeedUpdate=t.colorsNeedUpdate,this.uvsNeedUpdate=t.uvsNeedUpdate,this.groupsNeedUpdate=t.groupsNeedUpdate,null!==t.boundingSphere&&(this.boundingSphere=t.boundingSphere.clone()),null!==t.boundingBox&&(this.boundingBox=t.boundingBox.clone()),this}}class a9{constructor(t,e,n,i,s,r=0){this.a=t,this.b=e,this.c=n,this.normal=i&&i.isVector3?i:new p.a,this.vertexNormals=Array.isArray(i)?i:[],this.color=s&&s.isColor?s:new D.a,this.vertexColors=Array.isArray(s)?s:[],this.materialIndex=r}clone(){return(new this.constructor).copy(this)}copy(t){this.a=t.a,this.b=t.b,this.c=t.c,this.normal.copy(t.normal),this.color.copy(t.color),this.materialIndex=t.materialIndex;for(let e=0,n=t.vertexNormals.length;e<n;e++)this.vertexNormals[e]=t.vertexNormals[e].clone();for(let e=0,n=t.vertexColors.length;e<n;e++)this.vertexColors[e]=t.vertexColors[e].clone();return this}}var l9=function(t){this.subdivisions=void 0===t?1:t};l9.prototype.modify=function(t){var e=t.isBufferGeometry;(t=e?(new r9).fromBufferGeometry(t):t.clone()).mergeVertices(6);for(var n=this.subdivisions;n-- >0;)this.smooth(t);return t.computeFaceNormals(),t.computeVertexNormals(),e?t.toBufferGeometry():t},function(){var t=[\\\\\\\"a\\\\\\\",\\\\\\\"b\\\\\\\",\\\\\\\"c\\\\\\\"];function e(t,e,n){return n[Math.min(t,e)+\\\\\\\"_\\\\\\\"+Math.max(t,e)]}function n(t,e,n,i,s,r){var o,a=Math.min(t,e),l=Math.max(t,e),c=a+\\\\\\\"_\\\\\\\"+l;c in i?o=i[c]:(o={a:n[a],b:n[l],newEdge:null,faces:[]},i[c]=o);o.faces.push(s),r[t].edges.push(o),r[e].edges.push(o)}function i(t,e,n,i,s){t.push(new a9(e,n,i,void 0,void 0,s))}function s(t,e){return Math.abs(e-t)/2+Math.min(t,e)}function r(t,e,n,i){t.push([e.clone(),n.clone(),i.clone()])}l9.prototype.smooth=function(o){var a,l,c,h,u,_,m,f,g,v,y,x,b,w=new p.a,T=[];a=o.vertices,l=o.faces;var A,M,E,S,C,N,L,O,P,R,I,F,D,B,z=void 0!==(c=o.faceVertexUvs)[0]&&c[0].length>0;if(z)for(var k=0;k<c.length;k++)T.push([]);for(m in function(t,e,i,s){var r,o,a;for(r=0,o=t.length;r<o;r++)i[r]={edges:[]};for(r=0,o=e.length;r<o;r++)n((a=e[r]).a,a.b,t,s,a,i),n(a.b,a.c,t,s,a,i),n(a.c,a.a,t,s,a,i)}(a,l,v=new Array(a.length),y={}),x=[],y){for(M=y[m],E=new p.a,C=3/8,N=1/8,2!=(L=M.faces.length)&&(C=.5,N=0),E.addVectors(M.a,M.b).multiplyScalar(C),w.set(0,0,0),k=0;k<L;k++){for(S=M.faces[k],g=0;g<3&&((A=a[S[t[g]]])===M.a||A===M.b);g++);w.add(A)}w.multiplyScalar(N),E.add(w),M.newEdge=x.length,x.push(E)}for(b=[],m=0,f=a.length;m<f;m++){for(D=a[m],3==(_=(F=v[m].edges).length)?O=3/16:_>3&&(O=3/(8*_)),P=1-_*O,R=O,_<=2&&2==_&&(P=3/4,R=1/8),B=D.clone().multiplyScalar(P),w.set(0,0,0),k=0;k<_;k++)A=(I=F[k]).a!==D?I.a:I.b,w.add(A);w.multiplyScalar(R),B.add(w),b.push(B)}h=b.concat(x);var U,G,V,H,j,W,q,X=b.length;u=[];var Y=new d.a,$=new d.a,J=new d.a;for(m=0,f=l.length;m<f;m++)if(i(u,U=e((S=l[m]).a,S.b,y).newEdge+X,G=e(S.b,S.c,y).newEdge+X,V=e(S.c,S.a,y).newEdge+X,S.materialIndex),i(u,S.a,U,V,S.materialIndex),i(u,S.b,G,U,S.materialIndex),i(u,S.c,V,G,S.materialIndex),z)for(k=0;k<c.length;k++)j=(H=c[k][m])[0],W=H[1],q=H[2],Y.set(s(j.x,W.x),s(j.y,W.y)),$.set(s(W.x,q.x),s(W.y,q.y)),J.set(s(j.x,q.x),s(j.y,q.y)),r(T[k],Y,$,J),r(T[k],j,Y,J),r(T[k],W,$,Y),r(T[k],q,J,$);o.vertices=h,o.faces=u,z&&(o.faceVertexUvs=T)}}();class c9 extends aV{static type(){return\\\\\\\"subdivide\\\\\\\"}cook(t,e){const n=t[0],i=new l9(e.subdivisions);for(let t of n.objects()){const e=t.geometry;if(e){const n=i.modify(e);t.geometry=n}}return n}}c9.DEFAULT_PARAMS={subdivisions:1};const h9=c9.DEFAULT_PARAMS;const u9=new class extends ua{constructor(){super(...arguments),this.subdivisions=ha.INTEGER(h9.subdivisions,{range:[0,5],rangeLocked:[!0,!1]})}};class d9 extends uV{constructor(){super(...arguments),this.paramsConfig=u9}static type(){return\\\\\\\"subdivide\\\\\\\"}initializeNode(){this.io.inputs.setCount(1)}cook(t){this._operation=this._operation||new c9(this.scene(),this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}const p9=new class extends ua{};class _9 extends _V{constructor(){super(...arguments),this.paramsConfig=p9}static type(){return\\\\\\\"subnet\\\\\\\"}initializeNode(){this.io.inputs.setCount(0,4),this.io.inputs.initInputsClonedState(Qi.NEVER)}}const m9=new class extends ua{constructor(){super(...arguments),this.input=ha.INTEGER(0,{range:[0,3],rangeLocked:[!0,!0],callback:t=>{f9.PARAM_CALLBACK_reset(t)}})}};class f9 extends uV{constructor(){super(...arguments),this.paramsConfig=m9}static type(){return ns.INPUT}initializeNode(){this.io.inputs.setCount(0),this.lifecycle.add_on_add_hook((()=>{this.set_parent_input_dependency()}))}async cook(){const t=this.pv.input,e=this.parent();if(e){if(e.io.inputs.has_input(t)){const n=await e.containerController.requestInputContainer(t);if(n){const t=n.coreContent();if(t)return void this.setCoreGroup(t)}}else this.states.error.set(`parent has no input ${t}`);this.cookController.endCook()}else this.states.error.set(\\\\\\\"subnet input has no parent\\\\\\\")}static PARAM_CALLBACK_reset(t){t.set_parent_input_dependency()}set_parent_input_dependency(){this._current_parent_input_graph_node&&this.removeGraphInput(this._current_parent_input_graph_node);const t=this.parent();t&&(this._current_parent_input_graph_node=t.io.inputs.inputGraphNode(this.pv.input),this.addGraphInput(this._current_parent_input_graph_node))}}var g9=n(82);class v9 extends $g{constructor(t,e,n){super(t,e,n)}load(t){return new Promise((async(e,n)=>{const i=new g9.a(this.loadingManager),s=await this._urlToLoad();i.load(s,(i=>{try{const n=this._onLoaded(i,t);e(n)}catch(t){n([])}}))}))}parse(t,e){const n=new g9.a(this.loadingManager).parse(t);return this._onLoaded(n,e)}_onLoaded(t,e){const n=t.paths,i=new Fn.a;for(let t=0;t<n.length;t++){const s=n[t],r=s.userData,o=r.style.fill;e.drawFillShapes&&void 0!==o&&\\\\\\\"none\\\\\\\"!==o&&this._drawShapes(i,s,e);const a=r.style.stroke;e.drawStrokes&&void 0!==a&&\\\\\\\"none\\\\\\\"!==a&&this._drawStrokes(i,s,e)}return i}_drawShapes(t,e,n){const i=e.userData,s=new lt.a({color:(new D.a).setStyle(i.style.fill),opacity:i.style.fillOpacity,transparent:i.style.fillOpacity<1,side:w.z,depthWrite:!1,wireframe:n.fillShapesWireframe}),r=e.toShapes(!0);for(let e=0;e<r.length;e++){const n=r[e],i=new AJ(n),o=new B.a(i,s);t.add(o)}}_drawStrokes(t,e,n){const i=e.userData;if(n.strokesWireframe){const n=new As.a({color:(new D.a).setStyle(i.style.stroke),opacity:i.style.strokeOpacity,transparent:i.style.strokeOpacity<1,side:w.z,depthWrite:!1});for(let s=0,r=e.subPaths.length;s<r;s++){const r=e.subPaths[s],o=g9.a.pointsToStroke(r.getPoints(),i.style);if(o){const e=new Ms.a(o,n);t.add(e)}}}else{const n=new lt.a({color:(new D.a).setStyle(i.style.stroke),opacity:i.style.strokeOpacity,transparent:i.style.strokeOpacity<1,side:w.z,depthWrite:!1});for(let s=0,r=e.subPaths.length;s<r;s++){const r=e.subPaths[s],o=g9.a.pointsToStroke(r.getPoints(),i.style);if(o){const e=new B.a(o,n);t.add(e)}}}}}const y9=`${qg}/models/svg/tiger.svg`;class x9 extends aV{static type(){return\\\\\\\"svg\\\\\\\"}cook(t,e){const n=new v9(e.url,this.scene(),this._node);return new Promise((async t=>{const i=await n.load(e);for(let t of i.children)this._ensure_geometry_has_index(t);t(this.createCoreGroupFromObjects(i.children))}))}_ensure_geometry_has_index(t){const e=t.geometry;e&&this.createIndexIfNone(e)}}x9.DEFAULT_PARAMS={url:y9,drawFillShapes:!0,fillShapesWireframe:!1,drawStrokes:!0,strokesWireframe:!1};const b9=x9.DEFAULT_PARAMS;const w9=new class extends ua{constructor(){super(...arguments),this.url=ha.STRING(b9.url,{fileBrowse:{type:[Rr.SVG]}}),this.reload=ha.BUTTON(null,{callback:(t,e)=>{T9.PARAM_CALLBACK_reload(t)}}),this.drawFillShapes=ha.BOOLEAN(b9.drawFillShapes),this.fillShapesWireframe=ha.BOOLEAN(b9.fillShapesWireframe),this.drawStrokes=ha.BOOLEAN(b9.drawStrokes),this.strokesWireframe=ha.BOOLEAN(b9.strokesWireframe)}};class T9 extends uV{constructor(){super(...arguments),this.paramsConfig=w9}static type(){return\\\\\\\"svg\\\\\\\"}async requiredModules(){return[Hn.SVGLoader]}initializeNode(){this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.url],(()=>{const t=this.pv.url;if(t){const e=t.split(\\\\\\\"/\\\\\\\");return e[e.length-1]}return\\\\\\\"\\\\\\\"}))}))}))}async cook(t){this._operation=this._operation||new x9(this.scene(),this.states,this);const e=await this._operation.cook(t,this.pv);this.setCoreGroup(e)}static PARAM_CALLBACK_reload(t){t.param_callback_reload()}param_callback_reload(){this.p.url.setDirty()}}const A9=\\\\\\\"geometry to switch to\\\\\\\";const M9=new class extends ua{constructor(){super(...arguments),this.input=ha.INTEGER(0,{range:[0,3],rangeLocked:[!0,!0]})}};class E9 extends uV{constructor(){super(...arguments),this.paramsConfig=M9}static type(){return\\\\\\\"switch\\\\\\\"}static displayedInputNames(){return[A9,A9,A9,A9]}initializeNode(){this.io.inputs.setCount(0,4),this.io.inputs.initInputsClonedState(Qi.NEVER),this.cookController.disallowInputsEvaluation()}async cook(){const t=this.pv.input;if(this.io.inputs.has_input(t)){const e=await this.containerController.requestInputContainer(t);if(e){const t=e.coreContent();if(t)return void this.setCoreGroup(t)}}else this.states.error.set(`no input ${t}`);this.cookController.endCook()}}class S9 extends zQ{constructor(t,e,n){super([1,1,1,-1,-1,1,-1,1,-1,1,-1,-1],[2,1,0,0,3,2,1,3,0,2,3,1],t,e,n),this.type=\\\\\\\"TetrahedronBufferGeometry\\\\\\\",this.parameters={radius:t,detail:e}}}const C9=new class extends ua{constructor(){super(...arguments),this.radius=ha.FLOAT(1),this.detail=ha.INTEGER(0,{range:[0,10],rangeLocked:[!0,!1]}),this.pointsOnly=ha.BOOLEAN(0),this.center=ha.VECTOR3([0,0,0])}};class N9 extends uV{constructor(){super(...arguments),this.paramsConfig=C9}static type(){return\\\\\\\"tetrahedron\\\\\\\"}cook(){const t=this.pv.pointsOnly,e=new S9(this.pv.radius,this.pv.detail,t);if(e.translate(this.pv.center.x,this.pv.center.y,this.pv.center.z),t){const t=this.createObject(e,Ns.POINTS);this.setObject(t)}else e.computeVertexNormals(),this.setGeometry(e)}}class L9 extends yJ{constructor(t,e={}){const n=e.font;if(!n||!n.isFont)return new S.a;const i=n.generateShapes(t,e.size);e.depth=void 0!==e.height?e.height:50,void 0===e.bevelThickness&&(e.bevelThickness=10),void 0===e.bevelSize&&(e.bevelSize=8),void 0===e.bevelEnabled&&(e.bevelEnabled=!1),super(i,e),this.type=\\\\\\\"TextGeometry\\\\\\\"}}var O9=n(48);class P9 extends Vf.a{constructor(t){super(t)}load(t,e,n,i){const s=this,r=new Gf.a(this.manager);r.setPath(this.path),r.setRequestHeader(this.requestHeader),r.setWithCredentials(s.withCredentials),r.load(t,(function(t){let n;try{n=JSON.parse(t)}catch(e){console.warn(\\\\\\\"THREE.FontLoader: typeface.js support is being deprecated. Use typeface.json instead.\\\\\\\"),n=JSON.parse(t.substring(65,t.length-2))}const i=s.parse(n);e&&e(i)}),n,i)}parse(t){return new R9(t)}}class R9{constructor(t){this.type=\\\\\\\"Font\\\\\\\",this.data=t}generateShapes(t,e=100){const n=[],i=function(t,e,n){const i=Array.from(t),s=e/n.resolution,r=(n.boundingBox.yMax-n.boundingBox.yMin+n.underlineThickness)*s,o=[];let a=0,l=0;for(let t=0;t<i.length;t++){const e=i[t];if(\\\\\\\"\\\\n\\\\\\\"===e)a=0,l-=r;else{const t=I9(e,s,a,l,n);a+=t.offsetX,o.push(t.path)}}return o}(t,e,this.data);for(let t=0,e=i.length;t<e;t++)Array.prototype.push.apply(n,i[t].toShapes());return n}}function I9(t,e,n,i,s){const r=s.glyphs[t]||s.glyphs[\\\\\\\"?\\\\\\\"];if(!r)return void console.error('THREE.Font: character \\\\\\\"'+t+'\\\\\\\" does not exists in font family '+s.familyName+\\\\\\\".\\\\\\\");const o=new O9.a;let a,l,c,h,u,d,p,_;if(r.o){const t=r._cachedOutline||(r._cachedOutline=r.o.split(\\\\\\\" \\\\\\\"));for(let s=0,r=t.length;s<r;){switch(t[s++]){case\\\\\\\"m\\\\\\\":a=t[s++]*e+n,l=t[s++]*e+i,o.moveTo(a,l);break;case\\\\\\\"l\\\\\\\":a=t[s++]*e+n,l=t[s++]*e+i,o.lineTo(a,l);break;case\\\\\\\"q\\\\\\\":c=t[s++]*e+n,h=t[s++]*e+i,u=t[s++]*e+n,d=t[s++]*e+i,o.quadraticCurveTo(u,d,c,h);break;case\\\\\\\"b\\\\\\\":c=t[s++]*e+n,h=t[s++]*e+i,u=t[s++]*e+n,d=t[s++]*e+i,p=t[s++]*e+n,_=t[s++]*e+i,o.bezierCurveTo(u,d,p,_,c,h)}}}return{offsetX:r.ha*e,path:o}}R9.prototype.isFont=!0;class F9 extends $g{constructor(t,e,n){super(t,e,n),this._font_loader=new P9(this.loadingManager)}async load(){const t=this.extension(),e=await this._urlToLoad();switch(t){case\\\\\\\"ttf\\\\\\\":return this._loadTTF(e);case\\\\\\\"json\\\\\\\":return this._loadJSON(e);default:return null}}static requiredModules(t){switch(this.extension(t)){case\\\\\\\"ttf\\\\\\\":return[Hn.TTFLoader];case\\\\\\\"json\\\\\\\":return[Hn.SVGLoader]}}_loadTTF(t){return new Promise((async(e,n)=>{const i=await this._loadTTFLoader();i&&i.load(t,(t=>{const n=this._font_loader.parse(t);e(n)}),void 0,(()=>{n()}))}))}_loadJSON(t){return new Promise(((e,n)=>{this._font_loader.load(t,(t=>{e(t)}),void 0,(()=>{n()}))}))}async _loadTTFLoader(){const t=await li.modulesRegister.module(Hn.TTFLoader);if(t)return new t(this.loadingManager)}static async loadSVGLoader(){const t=await li.modulesRegister.module(Hn.SVGLoader);if(t)return t}}var D9;!function(t){t.MESH=\\\\\\\"mesh\\\\\\\",t.FLAT=\\\\\\\"flat\\\\\\\",t.LINE=\\\\\\\"line\\\\\\\",t.STROKE=\\\\\\\"stroke\\\\\\\"}(D9||(D9={}));const B9=[D9.MESH,D9.FLAT,D9.LINE,D9.STROKE],z9=\\\\\\\"failed to generate geometry. Try to remove some characters\\\\\\\";const k9=new class extends ua{constructor(){super(...arguments),this.font=ha.STRING(\\\\\\\"https://raw.githubusercontent.com/polygonjs/polygonjs-assets/master/fonts/droid_sans_regular.typeface.json\\\\\\\",{fileBrowse:{type:[Rr.FONT]}}),this.text=ha.STRING(\\\\\\\"polygonjs\\\\\\\",{multiline:!0}),this.type=ha.INTEGER(0,{menu:{entries:B9.map(((t,e)=>({name:t,value:e})))}}),this.size=ha.FLOAT(1,{range:[0,1],rangeLocked:[!0,!1]}),this.extrude=ha.FLOAT(.1,{visibleIf:{type:B9.indexOf(D9.MESH)}}),this.segments=ha.INTEGER(1,{range:[1,20],rangeLocked:[!0,!1],visibleIf:{type:B9.indexOf(D9.MESH)}}),this.strokeWidth=ha.FLOAT(.02,{visibleIf:{type:B9.indexOf(D9.STROKE)}})}};class U9 extends uV{constructor(){super(...arguments),this.paramsConfig=k9,this._loaded_fonts={}}static type(){return\\\\\\\"text\\\\\\\"}initializeNode(){this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.text],(()=>this.p.text.rawInput()))}))}))}async cook(){try{this._loaded_fonts[this.pv.font]=this._loaded_fonts[this.pv.font]||await this._loadFont()}catch(t){return void this.states.error.set(`count not load font (${this.pv.font})`)}const t=this._loaded_fonts[this.pv.font];if(t)switch(B9[this.pv.type]){case D9.MESH:return this._create_geometry_from_type_mesh(t);case D9.FLAT:return this._create_geometry_from_type_flat(t);case D9.LINE:return this._create_geometry_from_type_line(t);case D9.STROKE:return this._create_geometry_from_type_stroke(t);default:console.warn(\\\\\\\"type is not valid\\\\\\\")}}_create_geometry_from_type_mesh(t){const e=this.displayed_text(),n={font:t,size:this.pv.size,height:this.pv.extrude,curveSegments:this.pv.segments};try{const t=new L9(e,n);if(!t.index){const e=t.getAttribute(\\\\\\\"position\\\\\\\").array;t.setIndex(f.range(e.length/3))}this.setGeometry(t)}catch(t){this.states.error.set(z9)}}_create_geometry_from_type_flat(t){const e=this._get_shapes(t);if(e){var n=new AJ(e);this.setGeometry(n)}}_create_geometry_from_type_line(t){const e=this.shapes_from_font(t);if(e){const t=[],n=[];let i=0;for(let s=0;s<e.length;s++){const r=e[s].getPoints();for(let e=0;e<r.length;e++){const s=r[e];t.push(s.x),t.push(s.y),t.push(0),n.push(i),e>0&&e<r.length-1&&n.push(i),i+=1}}const s=new S.a;s.setAttribute(\\\\\\\"position\\\\\\\",new C.c(t,3)),s.setIndex(n),this.setGeometry(s,Ns.LINE_SEGMENTS)}}async _create_geometry_from_type_stroke(t){const e=this.shapes_from_font(t);if(e){const t=await F9.loadSVGLoader();if(!t)return;var n=t.getStrokeStyle(this.pv.strokeWidth,\\\\\\\"white\\\\\\\",\\\\\\\"miter\\\\\\\",\\\\\\\"butt\\\\\\\",4);const i=[];for(let s=0;s<e.length;s++){const r=e[s].getPoints(),o=12,a=.001,l=t.pointsToStroke(r,n,o,a);i.push(l)}const s=ur(i);this.setGeometry(s)}}shapes_from_font(t){const e=this._get_shapes(t);if(e){const t=[];for(let n=0;n<e.length;n++){const i=e[n];if(i.holes&&i.holes.length>0)for(let e=0;e<i.holes.length;e++){const n=i.holes[e];t.push(n)}}return e.push.apply(e,t),e}}_get_shapes(t){const e=this.displayed_text();try{return t.generateShapes(e,this.pv.size)}catch(t){this.states.error.set(z9)}}displayed_text(){return this.pv.text||\\\\\\\"\\\\\\\"}_loadFont(){return new F9(this.pv.font,this.scene(),this).load()}async requiredModules(){return this.p.font.isDirty()&&await this.p.font.compute(),F9.requiredModules(this.pv.font)}}class G9 extends aV{static type(){return\\\\\\\"TextureCopy\\\\\\\"}async cook(t,e){const n=t[0],i=t[1];let s;for(let t of i.objects())t.traverse((t=>{const n=t.material;n&&(m.isArray(n)||s||(s=n[e.textureName]))}));if(s)for(let t of n.objects())t.traverse((t=>{const n=t.material;if(n&&!m.isArray(n)){n[e.textureName]=s;const t=n.uniforms;if(t){const n=t[e.textureName];n&&(n.value=s)}n.needsUpdate=!0}}));return n}}G9.DEFAULT_PARAMS={textureName:\\\\\\\"map\\\\\\\"},G9.INPUT_CLONED_STATE=[Qi.FROM_NODE,Qi.NEVER];const V9=G9.DEFAULT_PARAMS;const H9=new class extends ua{constructor(){super(...arguments),this.textureName=ha.STRING(V9.textureName)}};class j9 extends uV{constructor(){super(...arguments),this.paramsConfig=H9}static type(){return\\\\\\\"TextureCopy\\\\\\\"}static displayedInputNames(){return[\\\\\\\"objects to copy textures to\\\\\\\",\\\\\\\"objects to copy textures from\\\\\\\"]}initializeNode(){this.io.inputs.setCount(2),this.io.inputs.initInputsClonedState(G9.INPUT_CLONED_STATE)}async cook(t){this._operation=this._operation||new G9(this.scene(),this.states);const e=await this._operation.cook(t,this.pv);this.setCoreGroup(e)}}class W9 extends aV{static type(){return\\\\\\\"textureProperties\\\\\\\"}async cook(t,e){const n=t[0],i=[];for(let t of n.objects())e.applyToChildren?t.traverse((t=>{i.push(t)})):i.push(t);const s=i.map((t=>this._update_object(t,e)));return await Promise.all(s),n}async _update_object(t,e){const n=t.material;n&&await this._update_material(n,e)}async _update_material(t,e){let n=t.map;n&&await this._update_texture(n,e)}async _update_texture(t,e){this._updateEncoding(t,e),this._updateMapping(t,e),this._updateWrap(t,e),await this._updateAnisotropy(t,e),this._updateFilter(t,e)}_updateEncoding(t,e){e.tencoding&&(t.encoding=e.encoding,t.needsUpdate=!0)}_updateMapping(t,e){e.tmapping&&(t.mapping=e.mapping)}_updateWrap(t,e){e.twrap&&(t.wrapS=e.wrapS,t.wrapT=e.wrapT)}async _updateAnisotropy(t,e){if(e.tanisotropy)if(e.useRendererMaxAnisotropy){const e=await li.renderersController.firstRenderer();e&&(t.anisotropy=e.capabilities.getMaxAnisotropy())}else t.anisotropy=e.anisotropy}_updateFilter(t,e){e.tminFilter&&(t.minFilter=e.minFilter),e.tmagFilter&&(t.magFilter=e.magFilter)}}W9.DEFAULT_PARAMS={applyToChildren:!1,tencoding:!1,encoding:w.U,tmapping:!1,mapping:w.Yc,twrap:!1,wrapS:w.wc,wrapT:w.wc,tanisotropy:!1,useRendererMaxAnisotropy:!1,anisotropy:2,tminFilter:!1,minFilter:Km,tmagFilter:!1,magFilter:Zm},W9.INPUT_CLONED_STATE=Qi.FROM_NODE;const q9=W9.DEFAULT_PARAMS;const X9=new class extends ua{constructor(){super(...arguments),this.applyToChildren=ha.BOOLEAN(q9.applyToChildren,{separatorAfter:!0}),this.tencoding=ha.BOOLEAN(q9.tencoding),this.encoding=ha.INTEGER(q9.encoding,{visibleIf:{tencoding:1},menu:{entries:og.map((t=>({name:Object.keys(t)[0],value:Object.values(t)[0]})))}}),this.tmapping=ha.BOOLEAN(q9.tmapping),this.mapping=ha.INTEGER(q9.mapping,{visibleIf:{tmapping:1},menu:{entries:lg.map((t=>({name:Object.keys(t)[0],value:Object.values(t)[0]})))}}),this.twrap=ha.BOOLEAN(q9.twrap),this.wrapS=ha.INTEGER(q9.wrapS,{visibleIf:{twrap:1},menu:{entries:ag.map((t=>({name:Object.keys(t)[0],value:Object.values(t)[0]})))}}),this.wrapT=ha.INTEGER(q9.wrapT,{visibleIf:{twrap:1},menu:{entries:ag.map((t=>({name:Object.keys(t)[0],value:Object.values(t)[0]})))},separatorAfter:!0}),this.tanisotropy=ha.BOOLEAN(q9.tanisotropy),this.useRendererMaxAnisotropy=ha.BOOLEAN(q9.useRendererMaxAnisotropy,{visibleIf:{tanisotropy:1}}),this.anisotropy=ha.INTEGER(q9.anisotropy,{visibleIf:{tanisotropy:1,useRendererMaxAnisotropy:0},range:[0,32],rangeLocked:[!0,!1]}),this.tminFilter=ha.BOOLEAN(0),this.minFilter=ha.INTEGER(q9.minFilter,{visibleIf:{tminFilter:1},menu:{entries:tf}}),this.tmagFilter=ha.BOOLEAN(0),this.magFilter=ha.INTEGER(q9.magFilter,{visibleIf:{tmagFilter:1},menu:{entries:Qm}})}};class Y9 extends uV{constructor(){super(...arguments),this.paramsConfig=X9}static type(){return\\\\\\\"textureProperties\\\\\\\"}static displayedInputNames(){return[\\\\\\\"objects with textures to change properties of\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(W9.INPUT_CLONED_STATE)}async cook(t){this._operation=this._operation||new W9(this.scene(),this.states);const e=await this._operation.cook(t,this.pv);this.setCoreGroup(e)}}const $9=new p.a(0,0,1);class J9 extends aV{constructor(){super(...arguments),this._core_transform=new bU}static type(){return\\\\\\\"torus\\\\\\\"}cook(t,e){const n=e.radius,i=e.radiusTube,s=e.segmentsRadial,r=e.segmentsTube,o=new EJ(n,i,s,r);return o.translate(e.center.x,e.center.y,e.center.z),this._core_transform.rotateGeometry(o,$9,e.direction),this.createCoreGroupFromGeometry(o)}}J9.DEFAULT_PARAMS={radius:1,radiusTube:1,segmentsRadial:20,segmentsTube:12,direction:new p.a(0,1,0),center:new p.a(0,0,0)},J9.INPUT_CLONED_STATE=Qi.FROM_NODE;const Z9=J9.DEFAULT_PARAMS;const K9=new class extends ua{constructor(){super(...arguments),this.radius=ha.FLOAT(Z9.radius,{range:[0,1]}),this.radiusTube=ha.FLOAT(Z9.radiusTube,{range:[0,1]}),this.segmentsRadial=ha.INTEGER(Z9.segmentsRadial,{range:[1,50],rangeLocked:[!0,!1]}),this.segmentsTube=ha.INTEGER(Z9.segmentsTube,{range:[1,50],rangeLocked:[!0,!1]}),this.direction=ha.VECTOR3(Z9.direction),this.center=ha.VECTOR3(Z9.center)}};class Q9 extends uV{constructor(){super(...arguments),this.paramsConfig=K9}static type(){return\\\\\\\"torus\\\\\\\"}cook(t){this._operation=this._operation||new J9(this.scene(),this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}class t3 extends aV{static type(){return\\\\\\\"torusKnot\\\\\\\"}cook(t,e){const n=e.radius,i=e.radiusTube,s=e.segmentsRadial,r=e.segmentsTube,o=e.p,a=e.q,l=new SJ(n,i,s,r,o,a);return l.translate(e.center.x,e.center.y,e.center.z),this.createCoreGroupFromGeometry(l)}}t3.DEFAULT_PARAMS={radius:1,radiusTube:1,segmentsRadial:64,segmentsTube:8,p:2,q:3,center:new p.a(0,0,0)},t3.INPUT_CLONED_STATE=Qi.FROM_NODE;const e3=t3.DEFAULT_PARAMS;const n3=new class extends ua{constructor(){super(...arguments),this.radius=ha.FLOAT(e3.radius),this.radiusTube=ha.FLOAT(e3.radiusTube),this.segmentsRadial=ha.INTEGER(e3.segmentsRadial,{range:[1,128]}),this.segmentsTube=ha.INTEGER(e3.segmentsTube,{range:[1,32]}),this.p=ha.INTEGER(e3.p,{range:[1,10]}),this.q=ha.INTEGER(e3.q,{range:[1,10]}),this.center=ha.VECTOR3(e3.center)}};class i3 extends uV{constructor(){super(...arguments),this.paramsConfig=n3}static type(){return\\\\\\\"torusKnot\\\\\\\"}initializeNode(){}cook(t){this._operation=this._operation||new t3(this.scene(),this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}var s3;!function(t){t.SET_PARAMS=\\\\\\\"set params\\\\\\\",t.UPDATE_MATRIX=\\\\\\\"update matrix\\\\\\\"}(s3||(s3={}));const r3=[s3.SET_PARAMS,s3.UPDATE_MATRIX];class o3 extends aV{constructor(){super(...arguments),this._core_transform=new bU,this._point_pos=new p.a,this._object_scale=new p.a,this._r=new p.a,this._object_position=new p.a}static type(){return\\\\\\\"transform\\\\\\\"}cook(t,e){const n=t[0].objects();return this._apply_transform(n,e),t[0]}_apply_transform(t,e){const n=gU[e.applyOn];switch(n){case _U.GEOMETRIES:return this._update_geometries(t,e);case _U.OBJECTS:return this._update_objects(t,e)}os.unreachable(n)}_update_geometries(t,e){const n=this._matrix(e);if(\\\\\\\"\\\\\\\"===e.group.trim())for(let i of t){const t=i.geometry;t&&(t.translate(-e.pivot.x,-e.pivot.y,-e.pivot.z),t.applyMatrix4(n),t.translate(e.pivot.x,e.pivot.y,e.pivot.z))}else{const i=oV._fromObjects(t).pointsFromGroup(e.group);for(let t of i){const i=t.getPosition(this._point_pos).sub(e.pivot);i.applyMatrix4(n),t.setPosition(i.add(e.pivot))}}}_update_objects(t,e){const n=r3[e.objectMode];switch(n){case s3.SET_PARAMS:return this._update_objects_params(t,e);case s3.UPDATE_MATRIX:return this._update_objects_matrix(t,e)}os.unreachable(n)}_update_objects_params(t,e){for(let n of t){n.position.copy(e.t);const t=yU[e.rotationOrder];this._r.copy(e.r).multiplyScalar(On.a),n.rotation.set(this._r.x,this._r.y,this._r.z,t),this._object_scale.copy(e.s).multiplyScalar(e.scale),n.scale.copy(this._object_scale),n.updateMatrix()}}_update_objects_matrix(t,e){const n=this._matrix(e);for(let e of t)this._object_position.copy(e.position),e.position.multiplyScalar(0),e.updateMatrix(),e.applyMatrix4(n),e.position.add(this._object_position),e.updateMatrix()}_matrix(t){return this._core_transform.matrix(t.t,t.r,t.s,t.scale,yU[t.rotationOrder])}}o3.DEFAULT_PARAMS={applyOn:gU.indexOf(_U.GEOMETRIES),objectMode:r3.indexOf(s3.SET_PARAMS),group:\\\\\\\"\\\\\\\",rotationOrder:yU.indexOf(vU.XYZ),t:new p.a(0,0,0),r:new p.a(0,0,0),s:new p.a(1,1,1),scale:1,pivot:new p.a(0,0,0)},o3.INPUT_CLONED_STATE=Qi.FROM_NODE;const a3=o3.DEFAULT_PARAMS;const l3=new class extends ua{constructor(){super(...arguments),this.applyOn=ha.INTEGER(a3.applyOn,{menu:{entries:gU.map(((t,e)=>({name:t,value:e})))}}),this.objectMode=ha.INTEGER(a3.objectMode,{visibleIf:{applyOn:gU.indexOf(_U.OBJECTS)},menu:{entries:r3.map(((t,e)=>({name:t,value:e})))}}),this.group=ha.STRING(a3.group,{visibleIf:{applyOn:gU.indexOf(_U.GEOMETRIES)}}),this.rotationOrder=ha.INTEGER(a3.rotationOrder,{menu:{entries:yU.map(((t,e)=>({name:t,value:e})))}}),this.t=ha.VECTOR3(a3.t),this.r=ha.VECTOR3(a3.r),this.s=ha.VECTOR3(a3.s),this.scale=ha.FLOAT(a3.scale,{range:[0,10]}),this.pivot=ha.VECTOR3(a3.pivot,{visibleIf:{applyOn:gU.indexOf(_U.GEOMETRIES)}})}};class c3 extends uV{constructor(){super(...arguments),this.paramsConfig=l3}static type(){return O2.TRANSFORM}static displayedInputNames(){return[\\\\\\\"geometries or objects to transform\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(o3.INPUT_CLONED_STATE),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.applyOn],(()=>gU[this.pv.applyOn]))}))}))}setApplyOn(t){this.p.applyOn.set(gU.indexOf(t))}setObjectMode(t){this.p.objectMode.set(r3.indexOf(t))}cook(t){this._operation=this._operation||new o3(this.scene(),this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}const h3=new class extends ua{constructor(){super(...arguments),this.useSecondInput=ha.BOOLEAN(1),this.reference=ha.OPERATOR_PATH(\\\\\\\"\\\\\\\",{nodeSelection:{context:ts.SOP},visibleIf:{useSecondInput:0}})}};class u3 extends uV{constructor(){super(...arguments),this.paramsConfig=h3}static type(){return\\\\\\\"transformCopy\\\\\\\"}static displayedInputNames(){return[\\\\\\\"objects to transform\\\\\\\",\\\\\\\"objects to copy transform from\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1,2),this.io.inputs.initInputsClonedState([Qi.FROM_NODE,Qi.NEVER])}cook(t){this.pv.useSecondInput&&t[1]?this._copy_from_src_objects(t[0].objects(),t[1].objects()):this._copy_from_found_node(t[0].objects())}_copy_from_src_objects(t,e){let n,i;for(let s=0;s<t.length;s++)n=t[s],i=e[s],i.updateMatrix(),n.matrix.copy(i.matrix),n.matrix.decompose(n.position,n.quaternion,n.scale);this.setObjects(t)}async _copy_from_found_node(t){const e=this.p.reference.found_node_with_context(ts.SOP);if(e){const n=(await e.compute()).coreContent();if(n){const e=n.objects();return void this._copy_from_src_objects(t,e)}}this.setObjects(t)}}const d3=yU.indexOf(vU.XYZ),p3={menu:{entries:yU.map(((t,e)=>({name:t,value:e})))}};function _3(t){const e=[];for(let n=t+1;n<=6;n++)e.push({count:n});return{visibleIf:e}}const m3=new class extends ua{constructor(){super(...arguments),this.applyOn=ha.INTEGER(gU.indexOf(_U.GEOMETRIES),{menu:{entries:gU.map(((t,e)=>({name:t,value:e})))}}),this.count=ha.INTEGER(2,{range:[0,6],rangeLocked:[!0,!0]}),this.rotationOrder0=ha.INTEGER(d3,{separatorBefore:!0,...p3,..._3(0)}),this.r0=ha.VECTOR3([0,0,0],{..._3(0)}),this.rotationOrder1=ha.INTEGER(d3,{separatorBefore:!0,...p3,..._3(1)}),this.r1=ha.VECTOR3([0,0,0],{..._3(1)}),this.rotationOrder2=ha.INTEGER(d3,{separatorBefore:!0,...p3,..._3(2)}),this.r2=ha.VECTOR3([0,0,0],{..._3(2)}),this.rotationOrder3=ha.INTEGER(d3,{separatorBefore:!0,...p3,..._3(3)}),this.r3=ha.VECTOR3([0,0,0],{..._3(3)}),this.rotationOrder4=ha.INTEGER(d3,{separatorBefore:!0,...p3,..._3(4)}),this.r4=ha.VECTOR3([0,0,0],{..._3(4)}),this.rotationOrder5=ha.INTEGER(d3,{separatorBefore:!0,...p3,..._3(5)}),this.r5=ha.VECTOR3([0,0,0],{..._3(5)})}};class f3 extends uV{constructor(){super(...arguments),this.paramsConfig=m3,this._core_transform=new bU,this._t=new p.a(0,0,0),this._s=new p.a(1,1,1),this._scale=1}static type(){return\\\\\\\"transformMulti\\\\\\\"}static displayedInputNames(){return[\\\\\\\"objects to transform\\\\\\\",\\\\\\\"objects to copy initial transform from\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1,2),this.io.inputs.initInputsClonedState([Qi.FROM_NODE,Qi.NEVER]),this.scene().dispatchController.onAddListener((()=>{this.params.onParamsCreated(\\\\\\\"params_label\\\\\\\",(()=>{this.params.label.init([this.p.applyOn],(()=>gU[this.pv.applyOn]))}))})),this.params.onParamsCreated(\\\\\\\"cache param pairs\\\\\\\",(()=>{this._rot_and_index_pairs=[[this.p.r0,this.p.rotationOrder0],[this.p.r1,this.p.rotationOrder1],[this.p.r2,this.p.rotationOrder2],[this.p.r3,this.p.rotationOrder3],[this.p.r4,this.p.rotationOrder4],[this.p.r5,this.p.rotationOrder5]]}))}cook(t){const e=t[0].objectsWithGeo(),n=t[1]?t[1].objectsWithGeo()[0]:void 0;this._apply_transforms(e,n),this.setObjects(e)}_apply_transforms(t,e){const n=gU[this.pv.applyOn];switch(n){case _U.GEOMETRIES:return this._apply_matrix_to_geometries(t,e);case _U.OBJECTS:return this._apply_matrix_to_objects(t,e)}os.unreachable(n)}_apply_matrix_to_geometries(t,e){if(!this._rot_and_index_pairs)return;if(e){const n=e.geometry;if(n){const e=[Ws.POSITION,Ws.NORMAL,Ws.TANGENT];for(let i of e){const e=n.attributes[i];for(let n of t){const t=n.geometry.attributes[i];e&&t&&Xs.copy(e,t)}}}}let n;for(let e=0;e<this.pv.count;e++){n=this._rot_and_index_pairs[e];const i=this._matrix(n[0].value,n[1].value);for(let e of t)e.geometry.applyMatrix4(i)}}_apply_matrix_to_objects(t,e){if(!this._rot_and_index_pairs)return;if(e)for(let n of t)n.matrix.copy(e.matrix),n.matrix.decompose(n.position,n.quaternion,n.scale);let n;for(let e=0;e<this.pv.count;e++){n=this._rot_and_index_pairs[e];const i=this._matrix(n[0].value,n[1].value);for(let e of t)e.applyMatrix4(i)}}_matrix(t,e){return this._core_transform.matrix(this._t,t,this._s,this._scale,yU[e])}}var g3;!function(t){t.RESET_OBJECT=\\\\\\\"reset objects transform\\\\\\\",t.CENTER_GEO=\\\\\\\"center geometries\\\\\\\",t.PROMOTE_GEO_TO_OBJECT=\\\\\\\"center geometry and transform object\\\\\\\"}(g3||(g3={}));const v3=[g3.RESET_OBJECT,g3.CENTER_GEO,g3.PROMOTE_GEO_TO_OBJECT];const y3=new class extends ua{constructor(){super(...arguments),this.mode=ha.INTEGER(v3.indexOf(g3.RESET_OBJECT),{menu:{entries:v3.map(((t,e)=>({name:t,value:e})))}})}};class x3 extends uV{constructor(){super(...arguments),this.paramsConfig=y3,this._bbox_center=new p.a,this._translate_matrix=new A.a}static type(){return\\\\\\\"transformReset\\\\\\\"}static displayedInputNames(){return[\\\\\\\"objects to reset transform\\\\\\\",\\\\\\\"optional reference for center\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1,2),this.io.inputs.initInputsClonedState(Qi.FROM_NODE)}setMode(t){this.p.mode.set(v3.indexOf(t))}cook(t){const e=v3[this.pv.mode];this._select_mode(e,t)}_select_mode(t,e){switch(t){case g3.RESET_OBJECT:return this._reset_objects(e);case g3.CENTER_GEO:return this._center_geos(e,!1);case g3.PROMOTE_GEO_TO_OBJECT:return this._center_geos(e,!0)}os.unreachable(t)}_reset_objects(t){const e=t[0],n=e.objects();for(let t of n)t.matrix.identity(),bU.decomposeMatrix(t);this.setCoreGroup(e)}_center_geos(t,e){const n=t[0],i=n.objectsWithGeo();let s=i;const r=t[1];r&&(s=r.objectsWithGeo());for(let t=0;t<i.length;t++){const n=i[t],r=s[t]||s[s.length-1],o=n.geometry,a=r.geometry;if(o&&a){a.computeBoundingBox();const t=a.boundingBox;t&&(t.getCenter(this._bbox_center),r.updateMatrixWorld(),this._bbox_center.applyMatrix4(r.matrixWorld),e&&(this._translate_matrix.identity(),this._translate_matrix.makeTranslation(this._bbox_center.x,this._bbox_center.y,this._bbox_center.z),n.matrix.multiply(this._translate_matrix),bU.decomposeMatrix(n),n.updateWorldMatrix(!1,!1)),this._translate_matrix.identity(),this._translate_matrix.makeTranslation(-this._bbox_center.x,-this._bbox_center.y,-this._bbox_center.z),o.applyMatrix4(this._translate_matrix))}}this.setCoreGroup(n)}}const b3=new p.a(0,1,0);const w3=new class extends ua{constructor(){super(...arguments),this.radius=ha.FLOAT(1,{range:[0,1]}),this.height=ha.FLOAT(1,{range:[0,1]}),this.segmentsRadial=ha.INTEGER(12,{range:[3,20],rangeLocked:[!0,!1]}),this.segmentsHeight=ha.INTEGER(1,{range:[1,20],rangeLocked:[!0,!1]}),this.cap=ha.BOOLEAN(1),this.center=ha.VECTOR3([0,0,0]),this.direction=ha.VECTOR3([0,0,1])}};class T3 extends uV{constructor(){super(...arguments),this.paramsConfig=w3,this._core_transform=new bU}static type(){return\\\\\\\"tube\\\\\\\"}cook(){const t=new aG(this.pv.radius,this.pv.radius,this.pv.height,this.pv.segmentsRadial,this.pv.segmentsHeight,!this.pv.cap);this._core_transform.rotateGeometry(t,b3,this.pv.direction),t.translate(this.pv.center.x,this.pv.center.y,this.pv.center.z),this.setGeometry(t)}}function A3(t){return function(t){let e=0,n=0;for(const i of t)e+=i.w*i.h,n=Math.max(n,i.w);t.sort(((t,e)=>e.h-t.h));const i=[{x:0,y:0,w:Math.max(Math.ceil(Math.sqrt(e/.95)),n),h:1/0}];let s=0,r=0;for(const e of t)for(let t=i.length-1;t>=0;t--){const n=i[t];if(!(e.w>n.w||e.h>n.h)){if(e.x=n.x,e.y=n.y,r=Math.max(r,e.y+e.h),s=Math.max(s,e.x+e.w),e.w===n.w&&e.h===n.h){const e=i.pop();t<i.length&&(i[t]=e)}else e.h===n.h?(n.x+=e.w,n.w-=e.w):e.w===n.w?(n.y+=e.h,n.h-=e.h):(i.push({x:n.x+e.w,y:n.y,w:n.w-e.w,h:e.h}),n.y+=e.h,n.h-=e.h);break}}return{w:s,h:r,fill:e/(s*r)||0}}(t)}class M3 extends aV{static type(){return O2.UV_LAYOUT}cook(t,e){const n=t[0].objectsWithGeo(),i=[];for(let t of n){const e=t;e.isMesh&&i.push(e)}return this._layoutUVs(i,e),t[0]}_layoutUVs(t,e){var n;const i=[],s=new WeakMap,r=e.padding/e.res;let o=0;for(let a of t){a.geometry.hasAttribute(e.uv)||null===(n=this.states)||void 0===n||n.error.set(`attribute ${e.uv} not found`);const t={w:1+2*r,h:1+2*r};i.push(t),s.set(t,o),o++}const a=A3(i);for(let n of i){const i=n,o=s.get(n);if(null!=o){const n=t[o],s=n.geometry.getAttribute(e.uv).clone(),l=s.array;for(let t=0;t<s.array.length;t+=s.itemSize)l[t]=(s.array[t]+i.x+r)/a.w,l[t+1]=(s.array[t+1]+i.y+r)/a.h;n.geometry.setAttribute(e.uv2,s),n.geometry.getAttribute(e.uv2).needsUpdate=!0}}}}M3.DEFAULT_PARAMS={res:1024,padding:3,uv:\\\\\\\"uv\\\\\\\",uv2:\\\\\\\"uv2\\\\\\\"},M3.INPUT_CLONED_STATE=Qi.FROM_NODE;const E3=new class extends ua{constructor(){super(...arguments),this.res=ha.INTEGER(1024),this.padding=ha.INTEGER(3),this.uv=ha.STRING(\\\\\\\"uv\\\\\\\"),this.uv2=ha.STRING(\\\\\\\"uv2\\\\\\\")}};class S3 extends uV{constructor(){super(...arguments),this.paramsConfig=E3}static type(){return O2.UV_LAYOUT}static displayedInputNames(){return[\\\\\\\"geometries to unwrap UVs\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(M3.INPUT_CLONED_STATE)}cook(t){this._operation=this._operation||new M3(this.scene(),this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}var C3;!function(t){t.CHANGE=\\\\\\\"change\\\\\\\",t.MOVEEND=\\\\\\\"moveend\\\\\\\"}(C3||(C3={}));class N3{constructor(t){this._callback=t,this._updateAlways=!0,this._listenerAdded=!1,this._listener=this._executeCallback.bind(this)}removeTarget(){this.setTarget(void 0)}setTarget(t){t||this._removeCameraEvent();const e=this._target;this._target=t,null!=this._target&&this._executeCallback(),(null!=this._target?this._target.uuid:void 0)!==(null!=e?e.uuid:void 0)&&this._addCameraEvent()}setUpdateAlways(t){this._removeCameraEvent(),this._updateAlways=t,this._addCameraEvent()}_currentEventName(){return this._updateAlways?C3.CHANGE:C3.MOVEEND}_addCameraEvent(){this._listenerAdded||null!=this._target&&(this._target.addEventListener(this._currentEventName(),this._listener),this._listenerAdded=!0)}_removeCameraEvent(){!0===this._listenerAdded&&null!=this._target&&(this._target.removeEventListener(this._currentEventName(),this._listener),this._listenerAdded=!1)}_executeCallback(){null!=this._target&&this._callback(this._target)}}const L3=new class extends ua{constructor(){super(...arguments),this.camera=ha.OPERATOR_PATH(\\\\\\\"/perspective_camera1\\\\\\\",{nodeSelection:{context:ts.OBJ}})}};class O3 extends uV{constructor(){super(...arguments),this.paramsConfig=L3,this._cameraController=new N3(this._updateUVsFromCamera.bind(this))}static type(){return\\\\\\\"uvProject\\\\\\\"}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(Qi.FROM_NODE)}cook(t){this._processed_core_group=t[0];const e=this.p.camera.found_node();null!=e?(this._camera_object=e.object,this._cameraController.setTarget(this._camera_object)):(this._camera_object=void 0,this._cameraController.removeTarget()),this.setCoreGroup(this._processed_core_group)}_updateUVsFromCamera(t){const e=this.parent();if(this._processed_core_group&&e){const t=this._processed_core_group.points(),n=e.object.matrixWorld;for(let e of t){const t=e.position(),i=this._vectorInCameraSpace(t,n);if(i){const t={x:1-(.5*i[0]+.5),y:.5*i[1]+.5};e.setAttribValue(\\\\\\\"uv\\\\\\\",t)}}}}_vectorInCameraSpace(t,e){if(this._camera_object)return t.applyMatrix4(e),t.project(this._camera_object).toArray()}}class P3 extends aV{static type(){return O2.UV_TRANSFORM}cook(t,e){const n=t[0].objectsWithGeo();for(let t of n){const n=t.geometry.getAttribute(e.attribName),i=n.array,s=i.length/2;for(let t=0;t<s;t++)i[2*t+0]=e.t.x+e.pivot.x+e.s.x*(i[2*t+0]-e.pivot.x),i[2*t+1]=e.t.y+e.pivot.y+e.s.y*(i[2*t+1]-e.pivot.y);n.needsUpdate=!0}return t[0]}}P3.DEFAULT_PARAMS={attribName:\\\\\\\"uv\\\\\\\",t:new d.a(0,0),s:new d.a(1,1),pivot:new d.a(0,0)},P3.INPUT_CLONED_STATE=Qi.FROM_NODE;const R3=P3.DEFAULT_PARAMS;const I3=new class extends ua{constructor(){super(...arguments),this.attribName=ha.STRING(R3.attribName),this.t=ha.VECTOR2(R3.t.toArray()),this.s=ha.VECTOR2(R3.s.toArray()),this.pivot=ha.VECTOR2(R3.pivot.toArray())}};class F3 extends uV{constructor(){super(...arguments),this.paramsConfig=I3}static type(){return O2.UV_TRANSFORM}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(P3.INPUT_CLONED_STATE)}async cook(t){this._operation=this._operation||new P3(this.scene(),this.states,this);const e=await this._operation.cook(t,this.pv);this.setCoreGroup(e)}}class D3 extends aV{static type(){return O2.UV_UNWRAP}cook(t,e){const n=t[0].objectsWithGeo();for(let t of n){const n=t;n.isMesh&&this._unwrapUVs(n,e)}return t[0]}_unwrapUVs(t,e){var n,i,s;const r=[],o=t.geometry,a=null===(n=o.getIndex())||void 0===n?void 0:n.array;if(!a)return;if(!(null===(i=o.attributes.position)||void 0===i?void 0:i.array))return;const l=null===(s=o.attributes[e.uv])||void 0===s?void 0:s.array;if(!l)return;const c=a.length/3;for(let t=0;t<c;t++)r.push({w:1,h:1});const h=A3(r),u=new Array(l.length);for(let t=0;t<c;t++){const e=r[t],n=e.x/h.w,i=e.y/h.h,s=e.w/h.w,o=e.h/h.h,l=2*a[3*t+0],c=2*a[3*t+1],d=2*a[3*t+2];u[l]=n,u[l+1]=i,u[c]=n+s,u[c+1]=i,u[d]=n,u[d+1]=i+o}o.setAttribute(e.uv,new C.c(u,2))}}D3.DEFAULT_PARAMS={uv:\\\\\\\"uv\\\\\\\"},D3.INPUT_CLONED_STATE=Qi.FROM_NODE;const B3=new class extends ua{constructor(){super(...arguments),this.uv=ha.STRING(\\\\\\\"uv\\\\\\\")}};class z3 extends uV{constructor(){super(...arguments),this.paramsConfig=B3}static type(){return O2.UV_UNWRAP}static displayedInputNames(){return[\\\\\\\"geometries to unwrap UVs\\\\\\\"]}initializeNode(){this.io.inputs.setCount(1),this.io.inputs.initInputsClonedState(D3.INPUT_CLONED_STATE)}cook(t){this._operation=this._operation||new D3(this.scene(),this.states);const e=this._operation.cook(t,this.pv);this.setCoreGroup(e)}}class k3 extends aa{static context(){return ts.SOP}cook(){this.cookController.endCook()}}class U3 extends k3{}class G3 extends U3{constructor(){super(...arguments),this._children_controller_context=ts.ANIM}static type(){return es.ANIM}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class V3 extends U3{constructor(){super(...arguments),this._children_controller_context=ts.COP}static type(){return es.COP}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class H3 extends U3{constructor(){super(...arguments),this._children_controller_context=ts.EVENT}static type(){return es.EVENT}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class j3 extends U3{constructor(){super(...arguments),this._children_controller_context=ts.MAT}static type(){return es.MAT}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class W3 extends k3{constructor(){super(...arguments),this.paramsConfig=new ef,this.effectsComposerController=new nf(this),this.displayNodeController=new Fm(this,this.effectsComposerController.displayNodeControllerCallbacks()),this._children_controller_context=ts.POST}static type(){return es.POST}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class q3 extends U3{constructor(){super(...arguments),this._children_controller_context=ts.ROP}static type(){return es.ROP}createNode(t,e){return super.createNode(t,e)}children(){return super.children()}nodesByType(t){return super.nodesByType(t)}}class X3{constructor(t){this.param=t,this._require_dependency=!1}require_dependency(){return this._require_dependency}node(){return this._node=this._node||this.param.node}static requiredArguments(){return console.warn(\\\\\\\"Expression.Method._Base.required_arguments virtual method call. Please override\\\\\\\"),[]}static optionalArguments(){return[]}static minAllowedArgumentsCount(){return this.requiredArguments().length}static maxAllowedArgumentsCount(){return this.minAllowedArgumentsCount()+this.optionalArguments().length}static allowedArgumentsCount(t){return t>=this.minAllowedArgumentsCount()&&t<=this.maxAllowedArgumentsCount()}processArguments(t){throw\\\\\\\"Expression.Method._Base.process_arguments virtual method call. Please override\\\\\\\"}async getReferencedNodeContainer(t){const e=this.getReferencedNode(t);if(e){let t;if(t=e.isDirty()?await e.compute():e.containerController.container(),t){if(t.coreContent())return t}throw`referenced node invalid: ${e.path()}`}throw`invalid input (${t})`}getReferencedParam(t,e){const n=this.node();return n?bi.findParam(n,t,e):null}findReferencedGraphNode(t,e){if(!m.isNumber(t)){const n=t;return this.getReferencedNode(n,e)}{const e=t,n=this.node();if(n){return n.io.inputs.inputGraphNode(e)}}return null}getReferencedNode(t,e){let n=null;const i=this.node();if(m.isString(t)){if(i){const s=t;n=bi.findNode(i,s,e)}}else if(i){const e=t;n=i.io.inputs.input(e)}return n||null}findDependency(t){return null}createDependencyFromIndexOrPath(t){const e=new po,n=this.findReferencedGraphNode(t,e);return n?this.createDependency(n,t,e):(li.warn(\\\\\\\"node not found for path\\\\\\\",t),null)}createDependency(t,e,n){return Ur.create(this.param,e,t,n)}}class Y3 extends X3{constructor(){super(...arguments),this._require_dependency=!0}static requiredArguments(){return[[\\\\\\\"string\\\\\\\",\\\\\\\"arguments list\\\\\\\"],[\\\\\\\"number\\\\\\\",\\\\\\\"index\\\\\\\"]]}processArguments(t){return new Promise(((e,n)=>{if(2==t.length){const n=t[0],i=t[1];e(n.split(\\\\\\\" \\\\\\\")[i])}else e(0)}))}}class $3 extends X3{constructor(){super(...arguments),this._require_dependency=!0}static requiredArguments(){return[[\\\\\\\"string\\\\\\\",\\\\\\\"arguments list\\\\\\\"]]}processArguments(t){return new Promise(((e,n)=>{if(1==t.length){e(t[0].split(\\\\\\\" \\\\\\\").length)}else e(0)}))}}const J3=[\\\\\\\"min\\\\\\\",\\\\\\\"max\\\\\\\",\\\\\\\"size\\\\\\\",\\\\\\\"center\\\\\\\"],Z3=[\\\\\\\"x\\\\\\\",\\\\\\\"y\\\\\\\",\\\\\\\"z\\\\\\\"];class K3 extends X3{constructor(){super(...arguments),this._require_dependency=!0}static requiredArguments(){return[[\\\\\\\"string\\\\\\\",\\\\\\\"path to node\\\\\\\"],[\\\\\\\"string\\\\\\\",\\\\\\\"vector name, min, max, size or center\\\\\\\"],[\\\\\\\"string\\\\\\\",\\\\\\\"component_name, x,y or z\\\\\\\"]]}findDependency(t){return this.createDependencyFromIndexOrPath(t)}processArguments(t){let e=0;return new Promise((async(n,i)=>{if(t.length>=1){const s=t[0],r=t[1],o=t[2];let a=null;try{a=await this.getReferencedNodeContainer(s)}catch(t){i(t)}a&&(e=this._get_value_from_container(a,r,o),n(e))}else n(0)}))}_get_value_from_container(t,e,n){const i=t.boundingBox();if(!e)return i;if(J3.indexOf(e)>=0){let t=new p.a;switch(e){case\\\\\\\"size\\\\\\\":i.getSize(t);break;case\\\\\\\"center\\\\\\\":i.getCenter(t);break;default:t=i[e]}return n?Z3.indexOf(n)>=0?t[n]:-1:t}return-1}}class Q3 extends X3{constructor(){super(...arguments),this._require_dependency=!0}static requiredArguments(){return[[\\\\\\\"string\\\\\\\",\\\\\\\"path to node\\\\\\\"],[\\\\\\\"string\\\\\\\",\\\\\\\"component_name, x,y or z\\\\\\\"]]}findDependency(t){return this.createDependencyFromIndexOrPath(t)}processArguments(t){return new Promise((async(e,n)=>{if(t.length>=1){const i=t[0],s=t[1];let r=null;try{r=await this.getReferencedNodeContainer(i)}catch(t){n(t)}if(r){const t=r.boundingBox(),n=t.min.clone().add(t.max).multiplyScalar(.5);if(s){const t=n[s];e(null!=t?t:0)}else e(n)}}else e(0)}))}}class t4 extends X3{constructor(){super(...arguments),this._require_dependency=!0}static requiredArguments(){return[[\\\\\\\"string\\\\\\\",\\\\\\\"path to param\\\\\\\"]]}findDependency(t){const e=new po,n=this.getReferencedParam(t,e);return n?this.createDependency(n,t,e):null}async processArguments(t){return new Promise((async(e,n)=>{let i=0;if(1==t.length){const s=t[0],r=this.getReferencedParam(s);if(r){r.isDirty()&&await r.compute();const t=r.value;null!=t&&(i=t,e(i))}else n(0)}}))}}class e4 extends X3{constructor(){super(...arguments),this._require_dependency=!0}static requiredArguments(){return[[\\\\\\\"string\\\\\\\",\\\\\\\"path to copy\\\\\\\"],[\\\\\\\"integer\\\\\\\",\\\\\\\"default value\\\\\\\"]]}static optionalArguments(){return[[\\\\\\\"string\\\\\\\",\\\\\\\"attribute name (optional)\\\\\\\"]]}findDependency(t){const e=this.findReferencedGraphNode(t);if(e&&\\\\\\\"copy\\\\\\\"==e.type()){const n=e.stamp_node;return this.createDependency(n,t)}return null}processArguments(t){return new Promise(((e,n)=>{if(2==t.length||3==t.length){const n=t[0],i=t[1],s=t[2],r=this.node(),o=r?bi.findNode(r,n):null;let a;o&&o.type()==DZ.type()&&(a=o.stamp_value(s)),null==a&&(a=i),e(a)}else e(0)}))}}class n4 extends X3{constructor(){super(...arguments),this._require_dependency=!0,this._resolution=new d.a}static requiredArguments(){return[[\\\\\\\"string\\\\\\\",\\\\\\\"path to node\\\\\\\"],[\\\\\\\"string\\\\\\\",\\\\\\\"component_name: x or y\\\\\\\"]]}findDependency(t){return this.createDependencyFromIndexOrPath(t)}async processArguments(t){if(1==t.length||2==t.length){const e=t[0],n=t[1],i=await this.getReferencedNodeContainer(e);if(i){const t=i.resolution();if(!n)return this._resolution.set(t[0],t[1]),this._resolution;if([0,\\\\\\\"0\\\\\\\",\\\\\\\"x\\\\\\\"].includes(n))return t[0];if([1,\\\\\\\"1\\\\\\\",\\\\\\\"y\\\\\\\"].includes(n))return t[1]}}return-1}}class i4 extends X3{constructor(){super(...arguments),this._require_dependency=!0}static requiredArguments(){return[]}async processArguments(t){return new Promise((async(t,e)=>{t(ng.isMobile())}))}}class s4 extends X3{constructor(){super(...arguments),this._require_dependency=!0}static requiredArguments(){return[]}async processArguments(t){return new Promise((async(t,e)=>{t(ng.isTouchDevice())}))}}class r4 extends X3{static requiredArguments(){return[[\\\\\\\"string\\\\\\\",\\\\\\\"javascript expression\\\\\\\"]]}async processArguments(t){let e=0;if(1==t.length){const n=t[0];if(this._function=this._function||this._create_function(n),this._function)try{e=this._function(this.param.scene(),this.param.node,this.param)}catch(t){console.warn(\\\\\\\"expression error\\\\\\\"),console.warn(t)}}return e}_create_function(t){return new Function(\\\\\\\"scene\\\\\\\",\\\\\\\"node\\\\\\\",\\\\\\\"param\\\\\\\",`return ${t}`)}}class o4 extends X3{constructor(){super(...arguments),this._require_dependency=!0}static requiredArguments(){return[[\\\\\\\"string\\\\\\\",\\\\\\\"path to node\\\\\\\"],[\\\\\\\"string\\\\\\\",\\\\\\\"attribute name\\\\\\\"],[\\\\\\\"index\\\\\\\",\\\\\\\"object index\\\\\\\"]]}findDependency(t){return this.createDependencyFromIndexOrPath(t)}processArguments(t){return new Promise((async(e,n)=>{if(3==t.length){const i=t[0],s=t[1],r=t[2];let o=null;try{o=await this.getReferencedNodeContainer(i)}catch(t){n(t)}if(o){e(this._get_value_from_container(o,s,r))}}else console.warn(`${t.length} given when expected 3`),e(0)}))}_get_value_from_container(t,e,n){const i=t.coreContent();if(i){const t=i.coreObjects()[n];return t?t.attribValue(e):0}return null}}class a4 extends X3{constructor(){super(...arguments),this._require_dependency=!0}static requiredArguments(){return[[\\\\\\\"string\\\\\\\",\\\\\\\"path to node\\\\\\\"]]}findDependency(t){return this.createDependencyFromIndexOrPath(t)}processArguments(t){return new Promise((async(e,n)=>{if(1==t.length){const i=t[0];let s;try{s=await this.getReferencedNodeContainer(i)}catch(t){return void n(t)}if(s){e(s.objectsCount())}}else e(0)}))}}class l4 extends X3{constructor(){super(...arguments),this._require_dependency=!0}static requiredArguments(){return[[\\\\\\\"string\\\\\\\",\\\\\\\"path to node\\\\\\\"]]}findDependency(t){const e=this.findReferencedGraphNode(t);if(e){const n=e;if(n.nameController){const e=n.nameController.graph_node;return this.createDependency(e,t)}}return null}processArguments(t){return new Promise(((e,n)=>{if(1==t.length){const n=t[0],i=this.getReferencedNode(n);if(i){const t=i.name();e(ss.tailDigits(t))}else e(0)}else e(0)}))}}class c4 extends X3{constructor(){super(...arguments),this._require_dependency=!0}static requiredArguments(){return[[\\\\\\\"string\\\\\\\",\\\\\\\"path to node\\\\\\\"]]}findDependency(t){const e=this.findReferencedGraphNode(t);if(e){const n=e;if(n.nameController){const e=n.nameController.graph_node;return this.createDependency(e,t)}}return null}processArguments(t){return new Promise(((e,n)=>{if(1==t.length){const n=t[0],i=this.getReferencedNode(n);if(i){e(i.name())}else e(0)}else e(0)}))}}class h4 extends X3{static requiredArguments(){return[[\\\\\\\"string\\\\\\\",\\\\\\\"number\\\\\\\"]]}processArguments(t){return new Promise((e=>{const n=t[0]||2;e(`${t[1]||0}`.padStart(n,\\\\\\\"0\\\\\\\"))}))}}class u4 extends X3{constructor(){super(...arguments),this._require_dependency=!0}static requiredArguments(){return[[\\\\\\\"string\\\\\\\",\\\\\\\"path to node\\\\\\\"],[\\\\\\\"string\\\\\\\",\\\\\\\"attribute name\\\\\\\"],[\\\\\\\"index\\\\\\\",\\\\\\\"point index\\\\\\\"]]}findDependency(t){return this.createDependencyFromIndexOrPath(t)}processArguments(t){return new Promise((async(e,n)=>{if(3==t.length){const i=t[0],s=t[1],r=t[2];let o=null;try{o=await this.getReferencedNodeContainer(i)}catch(t){n(t)}if(o){e(this._get_value_from_container(o,s,r))}}else console.warn(`${t.length} given when expected 3`),e(0)}))}_get_value_from_container(t,e,n){const i=t.coreContent();if(i){const t=i.points()[n];return t?t.attribValue(e):0}return null}}class d4 extends X3{constructor(){super(...arguments),this._require_dependency=!0}static requiredArguments(){return[[\\\\\\\"string\\\\\\\",\\\\\\\"path to node\\\\\\\"]]}findDependency(t){return this.createDependencyFromIndexOrPath(t)}processArguments(t){return new Promise((async(e,n)=>{if(1==t.length){const i=t[0];let s;try{s=await this.getReferencedNodeContainer(i)}catch(t){return void n(t)}if(s){e(s.pointsCount())}}else e(0)}))}}class p4 extends X3{static requiredArguments(){return[[\\\\\\\"string\\\\\\\",\\\\\\\"string to count characters of\\\\\\\"]]}async processArguments(t){let e=0;if(1==t.length){e=t[0].length}return e}}class _4 extends X3{static requiredArguments(){return[]}async processArguments(t){let e=\\\\\\\"\\\\\\\";for(let n of t)null==n&&(n=\\\\\\\"\\\\\\\"),e+=`${n}`;return e}}class m4 extends X3{static requiredArguments(){return[[\\\\\\\"string\\\\\\\",\\\\\\\"string to get index from\\\\\\\"],[\\\\\\\"string\\\\\\\",\\\\\\\"char to find index of\\\\\\\"]]}async processArguments(t){let e=-1;if(2==t.length){const n=t[0],i=t[1];e=n.indexOf(i)}return e}}class f4 extends X3{static requiredArguments(){return[[\\\\\\\"string\\\\\\\",\\\\\\\"string to get range from\\\\\\\"],[\\\\\\\"integer\\\\\\\",\\\\\\\"range start\\\\\\\"],[\\\\\\\"integer\\\\\\\",\\\\\\\"range size\\\\\\\"]]}async processArguments(t){let e=\\\\\\\"\\\\\\\";const n=t[0],i=t[1]||0;let s=t[2]||1;return n&&(e=n.substr(i,s)),e}}class g4 extends X3{constructor(){super(...arguments),this._require_dependency=!0,this._windowSize=new d.a}static requiredArguments(){return[[]]}findDependency(t){return this.param.addGraphInput(this.param.scene().windowController.graphNode()),null}processArguments(t){return new Promise((t=>{this._windowSize.set(window.innerWidth,window.innerHeight),t(this._windowSize)}))}}class v4{constructor(t,e){this._controller=t,this._node=e,this._deleted_params_data=new Map,this._created_spare_param_names=[],this._raw_input_serialized_by_param_name=new Map,this._init_value_serialized_by_param_name=new Map}get assembler(){return this._controller.assembler}createSpareParameters(){var t;const e={},n=this.assembler.param_configs(),i=n.map((t=>t.name())),s=b.clone(i);if(0==this._validateNames(s))return;b.clone(this._created_spare_param_names).concat(s).forEach((t=>{const n=this._node.params.get(t);if(n){this._raw_input_serialized_by_param_name.set(n.name(),n.rawInputSerialized()),this._init_value_serialized_by_param_name.set(n.name(),n.defaultValueSerialized());const t=rV.dispatch_param(n);if(t.required()){const e=t.data();this._deleted_params_data.set(n.name(),e)}}e.namesToDelete=e.namesToDelete||[],e.namesToDelete.push(t)}));for(let t of n)if(s.indexOf(t.name())>=0){const n=b.clone(t.param_options),i={spare:!0,computeOnDirty:!0,cook:!1},s=b.merge(n,i);let r=this._init_value_serialized_by_param_name.get(t.name());null==r&&(r=t.default_value);let o=this._raw_input_serialized_by_param_name.get(t.name());null==o&&(o=t.default_value),e.toAdd=e.toAdd||[],e.toAdd.push({name:t.name(),type:t.type(),init_value:r,raw_input:o,options:s})}this._node.params.updateParams(e),this._created_spare_param_names=(null===(t=e.toAdd)||void 0===t?void 0:t.map((t=>t.name)))||[];for(let t of n){const e=this._node.params.get(t.name());e&&(t.execute_callback(this._node,e),e.type()==Cr.OPERATOR_PATH&&setTimeout((async()=>{e.isDirty()&&await e.compute(),e.options.executeCallback()}),200))}}_validateNames(t){const e=b.clone(this._node.params.non_spare_names),n=f.intersection(t,e);if(n.length>0){const t=`${this._node.path()} attempts to create spare params called '${n.join(\\\\\\\", \\\\\\\")}' with same name as params`;return this._node.states.error.set(t),!1}return!0}}class y4{constructor(t,e){this.node=t,this._globals_handler=new Pf,this._compile_required=!0,this._assembler=new e(this.node),this._spare_params_controller=new v4(this,this.node)}set_assembler_globals_handler(t){(this._globals_handler?this._globals_handler.id():null)!=(t?t.id():null)&&(this._globals_handler=t,this.set_compilation_required_and_dirty(),this._assembler.reset_configs())}get assembler(){return this._assembler}get globals_handler(){return this._globals_handler}add_output_inputs(t){this._assembler.add_output_inputs(t)}add_globals_outputs(t){this._assembler.add_globals_outputs(t)}allow_attribute_exports(){return this._assembler.allow_attribute_exports()}setCompilationRequired(t=!0){this._compile_required=t}set_compilation_required_and_dirty(t){this.setCompilationRequired(),this.node.setDirty(t)}compileRequired(){return this._compile_required}post_compile(){this.createSpareParameters(),this.setCompilationRequired(!1)}createSpareParameters(){this._spare_params_controller.createSpareParameters()}addFilterFragmentShaderCallback(t,e){this.assembler._addFilterFragmentShaderCallback(t,e),this.setCompilationRequired()}removeFilterFragmentShaderCallback(t){this.assembler._removeFilterFragmentShaderCallback(t),this.setCompilationRequired()}}var x4;!function(t){t.FUNCTION_DECLARATION=\\\\\\\"function_declaration\\\\\\\",t.DEFINE=\\\\\\\"define\\\\\\\",t.BODY=\\\\\\\"body\\\\\\\"}(x4||(x4={}));class b4{constructor(t,e,n){this._name=t,this._input_names=e,this._dependencies=n}name(){return this._name}input_names(){return this._input_names}dependencies(){return this._dependencies}}class w4{constructor(t,e={}){this._name=t,this._options=e}name(){return this._name}default_from_attribute(){return this._options.default_from_attribute||!1}default(){return this._options.default}if_condition(){return this._options.if}prefix(){return this._options.prefix||\\\\\\\"\\\\\\\"}suffix(){return this._options.suffix||\\\\\\\"\\\\\\\"}postLines(){return this._options.postLines}}class T4{constructor(t){this._shader_name=t,this._definitions_by_node_id=new Map,this._body_lines_by_node_id=new Map}get shader_name(){return this._shader_name}addDefinitions(t,e){for(let n of e)h.pushOnArrayAtEntry(this._definitions_by_node_id,t.graphNodeId(),n)}definitions(t){return this._definitions_by_node_id.get(t.graphNodeId())}addBodyLines(t,e){for(let n of e)h.pushOnArrayAtEntry(this._body_lines_by_node_id,t.graphNodeId(),n)}body_lines(t){return this._body_lines_by_node_id.get(t.graphNodeId())}}class A4{constructor(t,e,n){this._shader_names=t,this._current_shader_name=e,this._assembler=n,this._lines_controller_by_shader_name=new Map;for(let t of this._shader_names)this._lines_controller_by_shader_name.set(t,new T4(t))}assembler(){return this._assembler}shaderNames(){return this._shader_names}set_current_shader_name(t){this._current_shader_name=t}get current_shader_name(){return this._current_shader_name}addDefinitions(t,e,n){if(0==e.length)return;n=n||this._current_shader_name;const i=this._lines_controller_by_shader_name.get(n);i&&i.addDefinitions(t,e)}definitions(t,e){const n=this._lines_controller_by_shader_name.get(t);if(n)return n.definitions(e)}addBodyLines(t,e,n){if(0==e.length)return;n=n||this._current_shader_name;const i=this._lines_controller_by_shader_name.get(n);i&&i.addBodyLines(t,e)}body_lines(t,e){const n=this._lines_controller_by_shader_name.get(t);if(n)return n.body_lines(e)}}const M4={[x4.FUNCTION_DECLARATION]:\\\\\\\"\\\\\\\",[x4.DEFINE]:\\\\\\\";\\\\\\\",[x4.BODY]:\\\\\\\";\\\\\\\"},E4={[x4.FUNCTION_DECLARATION]:\\\\\\\"\\\\\\\",[x4.DEFINE]:\\\\\\\"\\\\\\\",[x4.BODY]:\\\\\\\"\\\\t\\\\\\\"};class S4{static node_comment(t,e){let n=`// ${t.path()}`,i=E4[e];if(e==x4.BODY){let e=this.node_distance_to_material(t);t.type()==ns.OUTPUT&&(e+=1),i=i.repeat(e)}return e==x4.BODY&&(n=`${i}${n}`),n}static line_wrap(t,e,n){let i=!0;0!=e.indexOf(\\\\\\\"#if\\\\\\\")&&0!=e.indexOf(\\\\\\\"#endif\\\\\\\")||(i=!1);let s=E4[n];if(n==x4.BODY&&(s=s.repeat(this.node_distance_to_material(t))),e=`${s}${e}`,i){const t=e[e.length-1],i=M4[n];t!=i&&\\\\\\\"{\\\\\\\"!=t&&\\\\\\\"}\\\\\\\"!=t&&(e+=i)}return e}static post_line_separator(t){return t==x4.BODY?\\\\\\\"\\\\t\\\\\\\":\\\\\\\"\\\\\\\"}static node_distance_to_material(t){const e=t.parent();if(!e)return 0;if(e.context()!=t.context())return 1;{let n=1;return t.type()!=ns.INPUT&&t.type()!=ns.OUTPUT||(n=0),n+this.node_distance_to_material(e)}}}class C4{constructor(t,e,n){this._node_traverser=t,this._root_nodes_for_shader_method=e,this._assembler=n,this._param_configs_controller=new PF,this._param_configs_set_allowed=!0,this._lines=new Map}shaderNames(){return this._node_traverser.shaderNames()}buildFromNodes(t,e){this._node_traverser.traverse(t);const n=new Map;for(let t of this.shaderNames()){const e=this._node_traverser.nodes_for_shader_name(t);n.set(t,e)}const i=this._node_traverser.sorted_nodes();for(let t of this.shaderNames()){const e=this._root_nodes_for_shader_method(t);for(let i of e)h.pushOnArrayAtEntry(n,t,i)}const s=new Map;for(let t of i)s.set(t.graphNodeId(),!0);for(let e of t)s.get(e.graphNodeId())||(i.push(e),s.set(e.graphNodeId(),!0));for(let t of i)t.reset_code();for(let t of e)t.reset_code();this._shaders_collection_controller=new A4(this.shaderNames(),this.shaderNames()[0],this._assembler),this.reset();for(let t of this.shaderNames()){let e=n.get(t)||[];if(e=f.uniq(e),this._shaders_collection_controller.set_current_shader_name(t),e)for(let t of e)t.setLines(this._shaders_collection_controller)}if(this._param_configs_set_allowed){for(let t of e)t.setParamConfigs();this.setParamConfigs(e)}this.set_code_lines(i)}shaders_collection_controller(){return this._shaders_collection_controller}disallow_new_param_configs(){this._param_configs_set_allowed=!1}allow_new_param_configs(){this._param_configs_set_allowed=!0}reset(){for(let t of this.shaderNames()){const e=new Map;this._lines.set(t,e)}}param_configs(){return this._param_configs_controller.list()||[]}lines(t,e){var n;return(null===(n=this._lines.get(t))||void 0===n?void 0:n.get(e))||[]}all_lines(){return this._lines}setParamConfigs(t){this._param_configs_controller.reset();for(let e of t){const t=e.param_configs();if(t)for(let e of t)this._param_configs_controller.push(e)}}set_code_lines(t){for(let e of this.shaderNames())this.add_code_lines(t,e)}add_code_lines(t,e){this.addDefinitions(t,e,Af.FUNCTION,x4.FUNCTION_DECLARATION),this.addDefinitions(t,e,Af.UNIFORM,x4.DEFINE),this.addDefinitions(t,e,Af.VARYING,x4.DEFINE),this.addDefinitions(t,e,Af.ATTRIBUTE,x4.DEFINE),this.add_code_line_for_nodes_and_line_type(t,e,x4.BODY)}addDefinitions(t,e,n,i){if(!this._shaders_collection_controller)return;const s=[];for(let i of t){let t=this._shaders_collection_controller.definitions(e,i);if(t){t=t.filter((t=>t.definition_type==n));for(let e of t)s.push(e)}}if(s.length>0){const t=new Tf(s),n=t.uniq();if(t.errored)throw`code builder error: ${t.error_message}`;const r=new Map,o=new Map;for(let t of n){const e=t.node.graphNodeId();o.has(e)||o.set(e,!0),h.pushOnArrayAtEntry(r,e,t)}const a=this._lines.get(e);o.forEach(((t,e)=>{const n=r.get(e);if(n){const t=n[0];if(t){const e=S4.node_comment(t.node,i);h.pushOnArrayAtEntry(a,i,e);for(let e of n){const n=S4.line_wrap(t.node,e.line,i);h.pushOnArrayAtEntry(a,i,n)}const s=S4.post_line_separator(i);h.pushOnArrayAtEntry(a,i,s)}}}))}}add_code_line_for_nodes_and_line_type(t,e,n){var i=(t=t.filter((t=>{if(this._shaders_collection_controller){const n=this._shaders_collection_controller.body_lines(e,t);return n&&n.length>0}}))).length;for(let s=0;s<i;s++){const i=s==t.length-1;this.add_code_line_for_node_and_line_type(t[s],e,n,i)}}add_code_line_for_node_and_line_type(t,e,n,i){if(!this._shaders_collection_controller)return;const s=this._shaders_collection_controller.body_lines(e,t);if(s&&s.length>0){const r=this._lines.get(e),o=S4.node_comment(t,n);if(h.pushOnArrayAtEntry(r,n,o),f.uniq(s).forEach((e=>{e=S4.line_wrap(t,e,n),h.pushOnArrayAtEntry(r,n,e)})),n!=x4.BODY||!i){const t=S4.post_line_separator(n);h.pushOnArrayAtEntry(r,n,t)}}}}class N4{constructor(t,e,n){this._parent_node=t,this._shader_names=e,this._input_names_for_shader_name_method=n,this._leaves_graph_id=new Map,this._graph_ids_by_shader_name=new Map,this._outputs_by_graph_id=new Map,this._depth_by_graph_id=new Map,this._graph_id_by_depth=new Map,this._graph=this._parent_node.scene().graph}reset(){this._leaves_graph_id.clear(),this._graph_ids_by_shader_name.clear(),this._outputs_by_graph_id.clear(),this._depth_by_graph_id.clear(),this._graph_id_by_depth.clear(),this._shader_names.forEach((t=>{this._graph_ids_by_shader_name.set(t,new Map)}))}shaderNames(){return this._shader_names}input_names_for_shader_name(t,e){return this._input_names_for_shader_name_method(t,e)}traverse(t){this.reset();for(let t of this.shaderNames())this._leaves_graph_id.set(t,new Map);for(let e of this.shaderNames()){this._shader_name=e;for(let e of t)this.find_leaves_from_root_node(e),this.set_nodes_depth()}this._depth_by_graph_id.forEach(((t,e)=>{null!=t&&h.pushOnArrayAtEntry(this._graph_id_by_depth,t,e)}))}leaves_from_nodes(t){var e;this._shader_name=Mf.LEAVES_FROM_NODES_SHADER,this._graph_ids_by_shader_name.set(this._shader_name,new Map),this._leaves_graph_id.set(this._shader_name,new Map);for(let e of t)this.find_leaves(e);const n=[];return null===(e=this._leaves_graph_id.get(this._shader_name))||void 0===e||e.forEach(((t,e)=>{n.push(e)})),this._graph.nodesFromIds(n)}nodes_for_shader_name(t){const e=[];this._graph_id_by_depth.forEach(((t,n)=>{e.push(n)})),e.sort(((t,e)=>t-e));const n=[],i=new Map;return e.forEach((e=>{const s=this._graph_id_by_depth.get(e);s&&s.forEach((e=>{var s;if(null===(s=this._graph_ids_by_shader_name.get(t))||void 0===s?void 0:s.get(e)){const s=this._graph.nodeFromId(e);this.add_nodes_with_children(s,i,n,t)}}))})),n}sorted_nodes(){const t=[];this._graph_id_by_depth.forEach(((e,n)=>{t.push(n)})),t.sort(((t,e)=>t-e));const e=[],n=new Map;return t.forEach((t=>{const i=this._graph_id_by_depth.get(t);if(i)for(let t of i){const i=this._graph.nodeFromId(t);i&&this.add_nodes_with_children(i,n,e)}})),e}add_nodes_with_children(t,e,n,i){if(e.get(t.graphNodeId())||(n.push(t),e.set(t.graphNodeId(),!0)),t.type()==ns.INPUT){const s=t.parent();if(s){const r=this.sorted_nodes_for_shader_name_for_parent(s,i);for(let s of r)s.graphNodeId()!=t.graphNodeId()&&this.add_nodes_with_children(s,e,n,i)}}}sorted_nodes_for_shader_name_for_parent(t,e){const n=[];this._graph_id_by_depth.forEach(((t,e)=>{n.push(e)})),n.sort(((t,e)=>t-e));const i=[];n.forEach((n=>{const s=this._graph_id_by_depth.get(n);s&&s.forEach((n=>{var s;if(!e||(null===(s=this._graph_ids_by_shader_name.get(e))||void 0===s?void 0:s.get(n))){const e=this._graph.nodeFromId(n);e.parent()==t&&i.push(e)}}))}));const s=i[0];return t.context()==s.context()&&i.push(t),i}find_leaves_from_root_node(t){var e;null===(e=this._graph_ids_by_shader_name.get(this._shader_name))||void 0===e||e.set(t.graphNodeId(),!0);const n=this.input_names_for_shader_name(t,this._shader_name);if(n)for(let e of n){const n=t.io.inputs.named_input(e);n&&(h.pushOnArrayAtEntry(this._outputs_by_graph_id,n.graphNodeId(),t.graphNodeId()),this.find_leaves(n))}this._outputs_by_graph_id.forEach(((t,e)=>{this._outputs_by_graph_id.set(e,f.uniq(t))}))}find_leaves(t){var e;null===(e=this._graph_ids_by_shader_name.get(this._shader_name))||void 0===e||e.set(t.graphNodeId(),!0);const n=this._find_inputs_or_children(t),i=f.compact(n),s=f.uniq(i.map((t=>t.graphNodeId()))).map((t=>this._graph.nodeFromId(t)));if(s.length>0)for(let e of s)h.pushOnArrayAtEntry(this._outputs_by_graph_id,e.graphNodeId(),t.graphNodeId()),this.find_leaves(e);else this._leaves_graph_id.get(this._shader_name).set(t.graphNodeId(),!0)}_find_inputs_or_children(t){var e,n;if(t.type()==ns.INPUT)return(null===(e=t.parent())||void 0===e?void 0:e.io.inputs.inputs())||[];if(t.childrenAllowed()){return[null===(n=t.childrenController)||void 0===n?void 0:n.output_node()]}return t.io.inputs.inputs()}set_nodes_depth(){this._leaves_graph_id.forEach(((t,e)=>{t.forEach(((t,e)=>{this.set_node_depth(e)}))}))}set_node_depth(t,e=0){const n=this._depth_by_graph_id.get(t);null!=n?this._depth_by_graph_id.set(t,Math.max(n,e)):this._depth_by_graph_id.set(t,e);const i=this._outputs_by_graph_id.get(t);i&&i.forEach((t=>{this.set_node_depth(t,e+1)}))}}const L4=new Map([[Mf.VERTEX,\\\\\\\"#include <common>\\\\\\\"],[Mf.FRAGMENT,\\\\\\\"#include <common>\\\\\\\"]]),O4=new Map([[Mf.VERTEX,\\\\\\\"#include <color_vertex>\\\\\\\"],[Mf.FRAGMENT,\\\\\\\"vec4 diffuseColor = vec4( diffuse, opacity );\\\\\\\"]]),P4=new Map([[Mf.VERTEX,[\\\\\\\"#include <begin_vertex>\\\\\\\",\\\\\\\"#include <beginnormal_vertex>\\\\\\\"]],[Mf.FRAGMENT,[]]]);class R4 extends class{}{constructor(t){super(),this._gl_parent_node=t,this._shaders_by_name=new Map,this._lines=new Map,this._root_nodes=[],this._leaf_nodes=[],this._uniforms_time_dependent=!1,this._uniforms_resolution_dependent=!1}setGlParentNode(t){this._overriden_gl_parent_node=t}currentGlParentNode(){return this._overriden_gl_parent_node||this._gl_parent_node}compile(){}_template_shader_for_shader_name(t){var e,n;switch(t){case Mf.VERTEX:return null===(e=this.templateShader())||void 0===e?void 0:e.vertexShader;case Mf.FRAGMENT:return null===(n=this.templateShader())||void 0===n?void 0:n.fragmentShader}}get globals_handler(){var t;return null===(t=this.currentGlParentNode().assemblerController)||void 0===t?void 0:t.globals_handler}compileAllowed(){var t;return null!=(null===(t=this.currentGlParentNode().assemblerController)||void 0===t?void 0:t.globals_handler)}shaders_by_name(){return this._shaders_by_name}_build_lines(){for(let t of this.shaderNames()){const e=this._template_shader_for_shader_name(t);e&&this._replace_template(e,t)}}set_root_nodes(t){this._root_nodes=t}templateShader(){}addUniforms(t){for(let e of this.param_configs())t[e.uniform_name]=e.uniform;this.uniformsTimeDependent()&&(t.time={value:this.currentGlParentNode().scene().time()}),this.uniforms_resolution_dependent()&&(t.resolution={value:new d.a(1e3,1e3)})}root_nodes_by_shader_name(t){const e=[];for(let t of this._root_nodes)switch(t.type()){case OF.type():case IF.type():e.push(t);break;case wf.type():case Ff.type():e.push(t)}return e}leaf_nodes_by_shader_name(t){const e=[];for(let t of this._leaf_nodes)switch(t.type()){case II.type():e.push(t);break;case wf.type():}return e}set_node_lines_globals(t,e){}set_node_lines_output(t,e){}set_node_lines_attribute(t,e){}codeBuilder(){return this._code_builder=this._code_builder||this._create_code_builder()}_resetCodeBuilder(){this._code_builder=void 0}_create_code_builder(){const t=new N4(this.currentGlParentNode(),this.shaderNames(),((t,e)=>this.input_names_for_shader_name(t,e)));return new C4(t,(t=>this.root_nodes_by_shader_name(t)),this)}build_code_from_nodes(t){const e=Df.findParamGeneratingNodes(this.currentGlParentNode());this.codeBuilder().buildFromNodes(t,e)}allow_new_param_configs(){this.codeBuilder().allow_new_param_configs()}disallow_new_param_configs(){this.codeBuilder().disallow_new_param_configs()}builder_param_configs(){return this.codeBuilder().param_configs()}builder_lines(t,e){return this.codeBuilder().lines(t,e)}all_builder_lines(){return this.codeBuilder().all_lines()}param_configs(){return(this._param_config_owner||this.codeBuilder()).param_configs()}set_param_configs_owner(t){this._param_config_owner=t,this._param_config_owner?this.codeBuilder().disallow_new_param_configs():this.codeBuilder().allow_new_param_configs()}static output_input_connection_points(){return[new qo(\\\\\\\"position\\\\\\\",Uo.VEC3),new qo(\\\\\\\"normal\\\\\\\",Uo.VEC3),new qo(\\\\\\\"color\\\\\\\",Uo.VEC3),new qo(\\\\\\\"alpha\\\\\\\",Uo.FLOAT),new qo(\\\\\\\"uv\\\\\\\",Uo.VEC2)]}add_output_inputs(t){t.io.inputs.setNamedInputConnectionPoints(R4.output_input_connection_points())}static create_globals_node_output_connections(){return[new qo(\\\\\\\"position\\\\\\\",Uo.VEC3),new qo(\\\\\\\"normal\\\\\\\",Uo.VEC3),new qo(\\\\\\\"color\\\\\\\",Uo.VEC3),new qo(\\\\\\\"uv\\\\\\\",Uo.VEC2),new qo(\\\\\\\"mvPosition\\\\\\\",Uo.VEC4),new qo(\\\\\\\"worldPosition\\\\\\\",Uo.VEC4),new qo(\\\\\\\"worldNormal\\\\\\\",Uo.VEC3),new qo(\\\\\\\"gl_Position\\\\\\\",Uo.VEC4),new qo(\\\\\\\"gl_FragCoord\\\\\\\",Uo.VEC4),new qo(\\\\\\\"cameraPosition\\\\\\\",Uo.VEC3),new qo(\\\\\\\"resolution\\\\\\\",Uo.VEC2),new qo(\\\\\\\"time\\\\\\\",Uo.FLOAT)]}create_globals_node_output_connections(){return R4.create_globals_node_output_connections()}add_globals_outputs(t){t.io.outputs.setNamedOutputConnectionPoints(this.create_globals_node_output_connections())}allow_attribute_exports(){return!1}reset_configs(){this._reset_shader_configs(),this._reset_variable_configs(),this._resetUniformsTimeDependency(),this._reset_uniforms_resolution_dependency()}shaderConfigs(){return this._shader_configs=this._shader_configs||this.create_shader_configs()}set_shader_configs(t){this._shader_configs=t}shaderNames(){var t;return(null===(t=this.shaderConfigs())||void 0===t?void 0:t.map((t=>t.name())))||[]}_reset_shader_configs(){this._shader_configs=void 0}create_shader_configs(){return[new b4(Mf.VERTEX,[\\\\\\\"position\\\\\\\",\\\\\\\"normal\\\\\\\",\\\\\\\"uv\\\\\\\",Ff.INPUT_NAME],[]),new b4(Mf.FRAGMENT,[\\\\\\\"color\\\\\\\",\\\\\\\"alpha\\\\\\\"],[Mf.VERTEX])]}shader_config(t){var e;return null===(e=this.shaderConfigs())||void 0===e?void 0:e.filter((e=>e.name()==t))[0]}variable_configs(){return this._variable_configs=this._variable_configs||this.create_variable_configs()}set_variable_configs(t){this._variable_configs=t}variable_config(t){return this.variable_configs().filter((e=>e.name()==t))[0]}static create_variable_configs(){return[new w4(\\\\\\\"position\\\\\\\",{default_from_attribute:!0,prefix:\\\\\\\"vec3 transformed = \\\\\\\"}),new w4(\\\\\\\"normal\\\\\\\",{default_from_attribute:!0,prefix:\\\\\\\"vec3 objectNormal = \\\\\\\",postLines:[\\\\\\\"#ifdef USE_TANGENT\\\\\\\",\\\\\\\"\\\\tvec3 objectTangent = vec3( tangent.xyz );\\\\\\\",\\\\\\\"#endif\\\\\\\"]}),new w4(\\\\\\\"color\\\\\\\",{prefix:\\\\\\\"diffuseColor.xyz = \\\\\\\"}),new w4(\\\\\\\"alpha\\\\\\\",{prefix:\\\\\\\"diffuseColor.a = \\\\\\\"}),new w4(\\\\\\\"uv\\\\\\\",{prefix:\\\\\\\"vUv = \\\\\\\",if:Pf.IF_RULE.uv})]}create_variable_configs(){return R4.create_variable_configs()}_reset_variable_configs(){this._variable_configs=void 0,this.variable_configs()}input_names_for_shader_name(t,e){var n;return(null===(n=this.shader_config(e))||void 0===n?void 0:n.input_names())||[]}_resetUniformsTimeDependency(){this._uniforms_time_dependent=!1}setUniformsTimeDependent(){this._uniforms_time_dependent=!0}uniformsTimeDependent(){return this._uniforms_time_dependent}_reset_uniforms_resolution_dependency(){this._uniforms_resolution_dependent=!1}set_uniforms_resolution_dependent(){this._uniforms_resolution_dependent=!0}uniforms_resolution_dependent(){return this._uniforms_resolution_dependent}insert_define_after(t){return L4.get(t)}insert_body_after(t){return O4.get(t)}lines_to_remove(t){return P4.get(t)}_replace_template(t,e){const n=this.builder_lines(e,x4.FUNCTION_DECLARATION),i=this.builder_lines(e,x4.DEFINE),s=this.builder_lines(e,x4.BODY);let r=t.split(\\\\\\\"\\\\n\\\\\\\");const o=[],a=this.insert_define_after(e),l=this.insert_body_after(e),c=this.lines_to_remove(e);let h=!1,u=!1;for(let t of r){1==h&&(n&&this._insert_lines(o,n),i&&this._insert_lines(o,i),h=!1),1==u&&(s&&this._insert_lines(o,s),u=!1);let e=!1;if(c)for(let n of c)t.indexOf(n)>=0&&(e=!0);e?(o.push(\\\\\\\"// removed:\\\\\\\"),o.push(`//${t}`)):o.push(t),a&&t.indexOf(a)>=0&&(h=!0),l&&t.indexOf(l)>=0&&(u=!0)}this._lines.set(e,o)}_insert_lines(t,e){if(e.length>0){for(let e=0;e<3;e++)t.push(\\\\\\\"\\\\\\\");for(let n of e)t.push(n);for(let e=0;e<3;e++)t.push(\\\\\\\"\\\\\\\")}}_addFilterFragmentShaderCallback(t,e){}_removeFilterFragmentShaderCallback(t){}getCustomMaterials(){return new Map}static expandShader(t){return function t(e){return e.replace(/^[ \\\\t]*#include +<([\\\\w\\\\d./]+)>/gm,(function(e,n){var i=U[n];if(void 0===i)throw new Error(\\\\\\\"Can not resolve #include <\\\\\\\"+n+\\\\\\\">\\\\\\\");return t(i)}))}(t)}}var I4,F4;!function(t){t.DISTANCE=\\\\\\\"customDistanceMaterial\\\\\\\",t.DEPTH=\\\\\\\"customDepthMaterial\\\\\\\",t.DEPTH_DOF=\\\\\\\"customDepthDOFMaterial\\\\\\\"}(I4||(I4={})),function(t){t.TIME=\\\\\\\"time\\\\\\\",t.RESOLUTION=\\\\\\\"resolution\\\\\\\",t.MV_POSITION=\\\\\\\"mvPosition\\\\\\\",t.GL_POSITION=\\\\\\\"gl_Position\\\\\\\",t.GL_FRAGCOORD=\\\\\\\"gl_FragCoord\\\\\\\",t.GL_POINTCOORD=\\\\\\\"gl_PointCoord\\\\\\\"}(F4||(F4={}));const D4=[F4.GL_FRAGCOORD,F4.GL_POINTCOORD];class B4 extends R4{constructor(){super(...arguments),this._assemblers_by_custom_name=new Map,this._filterFragmentShaderCallbacks=new Map}createMaterial(){return new F}custom_assembler_class_by_custom_name(){}_addCustomMaterials(t){const e=this.custom_assembler_class_by_custom_name();e&&e.forEach(((e,n)=>{this._add_custom_material(t,n,e)}))}_add_custom_material(t,e,n){let i=this._assemblers_by_custom_name.get(e);i||(i=new n(this.currentGlParentNode()),this._assemblers_by_custom_name.set(e,i)),t.customMaterials=t.customMaterials||{};const s=i.createMaterial();s.name=e,t.customMaterials[e]=s}compileCustomMaterials(t){const e=this.custom_assembler_class_by_custom_name();e&&e.forEach(((e,n)=>{if(this._code_builder){let i=this._assemblers_by_custom_name.get(n);i||(i=new e(this.currentGlParentNode()),this._assemblers_by_custom_name.set(n,i)),i.set_root_nodes(this._root_nodes),i.set_param_configs_owner(this._code_builder),i.set_shader_configs(this.shaderConfigs()),i.set_variable_configs(this.variable_configs());const s=t.customMaterials[n];s&&(i.setFilterFragmentShaderMethodOwner(this),i.compileMaterial(s),i.setFilterFragmentShaderMethodOwner(void 0))}}))}_resetFilterFragmentShaderCallbacks(){this._filterFragmentShaderCallbacks.clear()}_addFilterFragmentShaderCallback(t,e){this._filterFragmentShaderCallbacks.set(t,e)}_removeFilterFragmentShaderCallback(t){this._filterFragmentShaderCallbacks.delete(t)}setFilterFragmentShaderMethodOwner(t){this._filterFragmentShaderMethodOwner=t}filterFragmentShader(t){return this._filterFragmentShaderCallbacks.forEach(((e,n)=>{t=e(t)})),t}processFilterFragmentShader(t){return this._filterFragmentShaderMethodOwner?this._filterFragmentShaderMethodOwner.filterFragmentShader(t):this.filterFragmentShader(t)}compileMaterial(t){if(!this.compileAllowed())return;const e=Df.findOutputNodes(this.currentGlParentNode());e.length>1&&this.currentGlParentNode().states.error.set(\\\\\\\"only one output node allowed\\\\\\\");const n=Df.findVaryingNodes(this.currentGlParentNode()),i=e.concat(n);this.set_root_nodes(i),this._update_shaders();const s=this._shaders_by_name.get(Mf.VERTEX),r=this._shaders_by_name.get(Mf.FRAGMENT);s&&r&&(t.vertexShader=s,t.fragmentShader=this.processFilterFragmentShader(r),this.addUniforms(t.uniforms),t.needsUpdate=!0);const o=this.currentGlParentNode().scene();this.uniformsTimeDependent()?o.uniformsController.addTimeDependentUniformOwner(t.uuid,t.uniforms):o.uniformsController.removeTimeDependentUniformOwner(t.uuid),this.uniforms_resolution_dependent()?o.uniformsController.addResolutionDependentUniformOwner(t.uuid,t.uniforms):o.uniformsController.removeResolutionDependentUniformOwner(t.uuid),t.customMaterials&&this.compileCustomMaterials(t)}_update_shaders(){this._shaders_by_name=new Map,this._lines=new Map;for(let t of this.shaderNames()){const e=this._template_shader_for_shader_name(t);e&&this._lines.set(t,e.split(\\\\\\\"\\\\n\\\\\\\"))}this._root_nodes.length>0&&(this.build_code_from_nodes(this._root_nodes),this._build_lines());for(let t of this.shaderNames()){const e=this._lines.get(t);e&&this._shaders_by_name.set(t,e.join(\\\\\\\"\\\\n\\\\\\\"))}}shadow_assembler_class_by_custom_name(){return{}}add_output_body_line(t,e,n){var i;const s=t.io.inputs.named_input(n),r=t.variableForInput(n),o=this.variable_config(n);let a=null;if(s)a=mf.vector3(r);else if(o.default_from_attribute()){const s=t.io.inputs.namedInputConnectionPointsByName(n);if(s){const r=s.type(),o=null===(i=this.globals_handler)||void 0===i?void 0:i.read_attribute(t,r,n,e);o&&(a=o)}}else{const t=o.default();t&&(a=t)}if(a){const n=o.prefix(),i=o.suffix(),s=o.if_condition();s&&e.addBodyLines(t,[`#if ${s}`]),e.addBodyLines(t,[`${n}${a}${i}`]);const r=o.postLines();r&&e.addBodyLines(t,r),s&&e.addBodyLines(t,[\\\\\\\"#endif\\\\\\\"])}}set_node_lines_output(t,e){var n;const i=e.current_shader_name,s=null===(n=this.shader_config(i))||void 0===n?void 0:n.input_names();if(s)for(let n of s)t.io.inputs.has_named_input(n)&&this.add_output_body_line(t,e,n)}set_node_lines_attribute(t,e){var n;const i=t.gl_type(),s=null===(n=this.globals_handler)||void 0===n?void 0:n.read_attribute(t,i,t.attribute_name,e),r=t.glVarName(t.output_name);e.addBodyLines(t,[`${i} ${r} = ${s}`])}handle_globals_output_name(t){var e;switch(t.output_name){case F4.TIME:return void this.handleTime(t);case F4.RESOLUTION:return void this.handle_resolution(t);case F4.MV_POSITION:return void this.handle_mvPosition(t);case F4.GL_POSITION:return void this.handle_gl_Position(t);case F4.GL_FRAGCOORD:return void this.handle_gl_FragCoord(t);case F4.GL_POINTCOORD:return void this.handle_gl_PointCoord(t);default:null===(e=this.globals_handler)||void 0===e||e.handle_globals_node(t.globals_node,t.output_name,t.shaders_collection_controller)}}handleTime(t){const e=new Nf(t.globals_node,Uo.FLOAT,t.output_name);t.globals_shader_name&&h.pushOnArrayAtEntry(t.definitions_by_shader_name,t.globals_shader_name,e);const n=`float ${t.var_name} = ${t.output_name}`;for(let i of t.dependencies)h.pushOnArrayAtEntry(t.definitions_by_shader_name,i,e),h.pushOnArrayAtEntry(t.body_lines_by_shader_name,i,n);t.body_lines.push(n),this.setUniformsTimeDependent()}handle_resolution(t){t.body_lines.push(`vec2 ${t.var_name} = resolution`);const e=new Nf(t.globals_node,Uo.VEC2,t.output_name);t.globals_shader_name&&h.pushOnArrayAtEntry(t.definitions_by_shader_name,t.globals_shader_name,e);for(let n of t.dependencies)h.pushOnArrayAtEntry(t.definitions_by_shader_name,n,e);this.set_uniforms_resolution_dependent()}handle_mvPosition(t){if(t.shader_name==Mf.FRAGMENT){const e=t.globals_node,n=t.shaders_collection_controller,i=new Lf(e,Uo.VEC4,t.var_name),s=`${t.var_name} = modelViewMatrix * vec4(position, 1.0)`;n.addDefinitions(e,[i],Mf.VERTEX),n.addBodyLines(e,[s],Mf.VERTEX),n.addDefinitions(e,[i])}}handle_gl_Position(t){if(t.shader_name==Mf.FRAGMENT){const e=t.globals_node,n=t.shaders_collection_controller,i=new Lf(e,Uo.VEC4,t.var_name),s=`${t.var_name} = projectionMatrix * modelViewMatrix * vec4(position, 1.0)`;n.addDefinitions(e,[i],Mf.VERTEX),n.addBodyLines(e,[s],Mf.VERTEX),n.addDefinitions(e,[i])}}handle_gl_FragCoord(t){t.shader_name==Mf.FRAGMENT&&t.body_lines.push(`vec4 ${t.var_name} = gl_FragCoord`)}handle_gl_PointCoord(t){t.shader_name==Mf.FRAGMENT?t.body_lines.push(`vec2 ${t.var_name} = gl_PointCoord`):t.body_lines.push(`vec2 ${t.var_name} = vec2(0.0, 0.0)`)}set_node_lines_globals(t,e){const n=[],i=e.current_shader_name,s=this.shader_config(i);if(!s)return;const r=s.dependencies(),o=new Map,a=new Map,l=this.used_output_names_for_shader(t,i);for(let s of l){const l=t.glVarName(s),c=e.current_shader_name,h={globals_node:t,shaders_collection_controller:e,output_name:s,globals_shader_name:c,definitions_by_shader_name:o,body_lines:n,var_name:l,shader_name:i,dependencies:r,body_lines_by_shader_name:a};this.handle_globals_output_name(h)}o.forEach(((n,i)=>{e.addDefinitions(t,n,i)})),a.forEach(((n,i)=>{e.addBodyLines(t,n,i)})),e.addBodyLines(t,n)}used_output_names_for_shader(t,e){const n=t.io.outputs.used_output_names(),i=[];for(let t of n)e==Mf.VERTEX&&D4.includes(t)||i.push(t);return i}}const z4=new Map([[Mf.VERTEX,\\\\\\\"#include <begin_vertex>\\\\\\\"],[Mf.FRAGMENT,\\\\\\\"vec4 diffuseColor = vec4( 1.0 );\\\\\\\"]]);const k4=new Map([[Mf.VERTEX,\\\\\\\"#include <begin_vertex>\\\\\\\"],[Mf.FRAGMENT,\\\\\\\"vec4 diffuseColor = vec4( 1.0 );\\\\\\\"]]);var U4=\\\\\\\"uniform float mNear;\\\\nuniform float mFar;\\\\n\\\\nvarying float vViewZDepth;\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\tfloat color = 1.0 - smoothstep( mNear, mFar, vViewZDepth );\\\\n\\\\tgl_FragColor = vec4( vec3( color ), 1.0 );\\\\n\\\\n}\\\\n\\\\\\\";const G4=new Map([[Mf.VERTEX,\\\\\\\"// INSERT DEFINES\\\\\\\"]]),V4=new Map([[Mf.VERTEX,\\\\\\\"// INSERT BODY\\\\\\\"]]);const H4=new Map([]);H4.set(I4.DISTANCE,class extends B4{templateShader(){const t=H.distanceRGBA;return{vertexShader:t.vertexShader,fragmentShader:t.fragmentShader,uniforms:t.uniforms}}insert_body_after(t){return z4.get(t)}createMaterial(){const t=this.templateShader();return new F({defines:{DEPTH_PACKING:[w.Hb,w.j][0]},uniforms:I.clone(t.uniforms),vertexShader:t.vertexShader,fragmentShader:t.fragmentShader})}}),H4.set(I4.DEPTH,class extends B4{templateShader(){const t=H.depth;return{vertexShader:t.vertexShader,fragmentShader:t.fragmentShader,uniforms:t.uniforms}}insert_body_after(t){return k4.get(t)}createMaterial(){const t=this.templateShader();return new F({defines:{DEPTH_PACKING:[w.Hb,w.j][0]},uniforms:I.clone(t.uniforms),vertexShader:t.vertexShader,fragmentShader:t.fragmentShader})}}),H4.set(I4.DEPTH_DOF,class extends B4{templateShader(){return{vertexShader:\\\\\\\"#include <common>\\\\n\\\\nvarying float vViewZDepth;\\\\n\\\\n// INSERT DEFINES\\\\n\\\\n\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\t// INSERT BODY\\\\n\\\\n\\\\n\\\\t#include <project_vertex>\\\\n\\\\n\\\\tvViewZDepth = - mvPosition.z;\\\\n}\\\\\\\",fragmentShader:U4,uniforms:{mNear:{value:0},mFar:{value:10}}}}insert_define_after(t){return G4.get(t)}insert_body_after(t){return V4.get(t)}createMaterial(){const t=this.templateShader();return new F({uniforms:I.clone(t.uniforms),vertexShader:t.vertexShader,fragmentShader:t.fragmentShader})}});class j4 extends B4{custom_assembler_class_by_custom_name(){return H4}}class W4 extends j4{templateShader(){const t=H.basic;return{vertexShader:t.vertexShader,fragmentShader:t.fragmentShader,uniforms:t.uniforms}}createMaterial(){const t=this.templateShader(),e=new F({lights:!1,uniforms:I.clone(t.uniforms),vertexShader:t.vertexShader,fragmentShader:t.fragmentShader});return this._addCustomMaterials(e),e}}class q4 extends j4{templateShader(){const t=H.lambert;return{vertexShader:t.vertexShader,fragmentShader:t.fragmentShader,uniforms:t.uniforms}}createMaterial(){const t=this.templateShader(),e=new F({lights:!0,uniforms:I.clone(t.uniforms),vertexShader:t.vertexShader,fragmentShader:t.fragmentShader});return this._addCustomMaterials(e),e}}class X4 extends j4{templateShader(){const t=H.phong;return{vertexShader:t.vertexShader,fragmentShader:t.fragmentShader,uniforms:t.uniforms}}createMaterial(){const t=this.templateShader(),e=new F({lights:!0,uniforms:I.clone(t.uniforms),vertexShader:t.vertexShader,fragmentShader:t.fragmentShader});return this._addCustomMaterials(e),e}}var Y4=\\\\\\\"SSSModel(/*isActive*/false,/*color*/vec3(1.0, 1.0, 1.0), /*thickness*/0.1, /*power*/2.0, /*scale*/16.0, /*distortion*/0.1,/*ambient*/0.4,/*attenuation*/0.8 )\\\\\\\";class $4 extends j4{constructor(t){super(t),this._gl_parent_node=t,this._addFilterFragmentShaderCallback(\\\\\\\"MeshStandardBuilderMatNode\\\\\\\",$4.filterFragmentShader)}isPhysical(){return!1}templateShader(){const t=this.isPhysical()?H.physical:H.standard;return{vertexShader:t.vertexShader,fragmentShader:t.fragmentShader,uniforms:t.uniforms}}static filterFragmentShader(t){return t=(t=(t=t.replace(\\\\\\\"#include <metalnessmap_fragment>\\\\\\\",\\\\\\\"float metalnessFactor = metalness * POLY_metalness;\\\\n\\\\n#ifdef USE_METALNESSMAP\\\\n\\\\n\\\\tvec4 texelMetalness = texture2D( metalnessMap, vUv );\\\\n\\\\n\\\\t// reads channel B, compatible with a combined OcclusionRoughnessMetallic (RGB) texture\\\\n\\\\tmetalnessFactor *= texelMetalness.b;\\\\n\\\\n#endif\\\\n\\\\\\\")).replace(\\\\\\\"#include <roughnessmap_fragment>\\\\\\\",\\\\\\\"float roughnessFactor = roughness * POLY_roughness;\\\\n\\\\n#ifdef USE_ROUGHNESSMAP\\\\n\\\\n\\\\tvec4 texelRoughness = texture2D( roughnessMap, vUv );\\\\n\\\\n\\\\t// reads channel G, compatible with a combined OcclusionRoughnessMetallic (RGB) texture\\\\n\\\\troughnessFactor *= texelRoughness.g;\\\\n\\\\n#endif\\\\n\\\\\\\")).replace(\\\\\\\"vec3 totalEmissiveRadiance = emissive;\\\\\\\",\\\\\\\"vec3 totalEmissiveRadiance = emissive * POLY_emissive;\\\\\\\"),$4.USE_SSS&&(t=(t=t.replace(/void main\\\\s?\\\\(\\\\) {/,\\\\\\\"struct SSSModel {\\\\n\\\\tbool isActive;\\\\n\\\\tvec3 color;\\\\n\\\\tfloat thickness;\\\\n\\\\tfloat power;\\\\n\\\\tfloat scale;\\\\n\\\\tfloat distortion;\\\\n\\\\tfloat ambient;\\\\n\\\\tfloat attenuation;\\\\n};\\\\n\\\\nvoid RE_Direct_Scattering(\\\\n\\\\tconst in IncidentLight directLight,\\\\n\\\\tconst in GeometricContext geometry,\\\\n\\\\tconst in SSSModel sssModel,\\\\n\\\\tinout ReflectedLight reflectedLight\\\\n\\\\t){\\\\n\\\\tvec3 scatteringHalf = normalize(directLight.direction + (geometry.normal * sssModel.distortion));\\\\n\\\\tfloat scatteringDot = pow(saturate(dot(geometry.viewDir, -scatteringHalf)), sssModel.power) * sssModel.scale;\\\\n\\\\tvec3 scatteringIllu = (scatteringDot + sssModel.ambient) * (sssModel.color * (1.0-sssModel.thickness));\\\\n\\\\treflectedLight.directDiffuse += scatteringIllu * sssModel.attenuation * directLight.color;\\\\n}\\\\n\\\\nvoid main() {\\\\\\\")).replace(\\\\\\\"#include <lights_fragment_begin>\\\\\\\",\\\\\\\"#include <lights_fragment_begin>\\\\nif(POLY_SSSModel.isActive){\\\\n\\\\tRE_Direct_Scattering(directLight, geometry, POLY_SSSModel, reflectedLight);\\\\n}\\\\n\\\\n\\\\\\\")),t}createMaterial(){const t=this.templateShader(),e={lights:!0,extensions:{derivatives:!0},uniforms:I.clone(t.uniforms),vertexShader:t.vertexShader,fragmentShader:t.fragmentShader},n=new F(e);return this.isPhysical()&&(n.defines.PHYSICAL=!0),this._addCustomMaterials(n),n}add_output_inputs(t){const e=R4.output_input_connection_points();e.push(new qo(\\\\\\\"metalness\\\\\\\",Uo.FLOAT,1)),e.push(new qo(\\\\\\\"roughness\\\\\\\",Uo.FLOAT,1)),e.push(new qo(\\\\\\\"emissive\\\\\\\",Uo.VEC3,[1,1,1])),$4.USE_SSS&&e.push(new qo(\\\\\\\"SSSModel\\\\\\\",Uo.SSS_MODEL,Y4)),this.isPhysical()&&(e.push(new qo(\\\\\\\"transmission\\\\\\\",Uo.FLOAT,1)),e.push(new qo(\\\\\\\"thickness\\\\\\\",Uo.FLOAT,1))),t.io.inputs.setNamedInputConnectionPoints(e)}create_shader_configs(){const t=[\\\\\\\"color\\\\\\\",\\\\\\\"alpha\\\\\\\",\\\\\\\"metalness\\\\\\\",\\\\\\\"roughness\\\\\\\",\\\\\\\"emissive\\\\\\\",\\\\\\\"SSSModel\\\\\\\"];return this.isPhysical()&&(t.push(\\\\\\\"transmission\\\\\\\"),t.push(\\\\\\\"thickness\\\\\\\")),[new b4(Mf.VERTEX,[\\\\\\\"position\\\\\\\",\\\\\\\"normal\\\\\\\",\\\\\\\"uv\\\\\\\"],[]),new b4(Mf.FRAGMENT,t,[Mf.VERTEX])]}create_variable_configs(){const t=R4.create_variable_configs();return t.push(new w4(\\\\\\\"metalness\\\\\\\",{default:\\\\\\\"1.0\\\\\\\",prefix:\\\\\\\"float POLY_metalness = \\\\\\\"})),t.push(new w4(\\\\\\\"roughness\\\\\\\",{default:\\\\\\\"1.0\\\\\\\",prefix:\\\\\\\"float POLY_roughness = \\\\\\\"})),t.push(new w4(\\\\\\\"emissive\\\\\\\",{default:\\\\\\\"vec3(1.0, 1.0, 1.0)\\\\\\\",prefix:\\\\\\\"vec3 POLY_emissive = \\\\\\\"})),$4.USE_SSS&&t.push(new w4(\\\\\\\"SSSModel\\\\\\\",{default:Y4,prefix:\\\\\\\"SSSModel POLY_SSSModel = \\\\\\\"})),this.isPhysical()&&(t.push(new w4(\\\\\\\"transmission\\\\\\\",{default:\\\\\\\"1.0\\\\\\\",prefix:\\\\\\\"float POLY_transmission = \\\\\\\"})),t.push(new w4(\\\\\\\"thickness\\\\\\\",{default:\\\\\\\"1.0\\\\\\\",prefix:\\\\\\\"float POLY_thickness = \\\\\\\"}))),t}}$4.USE_SSS=!0;class J4 extends $4{constructor(t){super(t),this._gl_parent_node=t,this._addFilterFragmentShaderCallback(\\\\\\\"MeshPhysicalBuilderMatNode\\\\\\\",J4.filterFragmentShader)}isPhysical(){return!0}static filterFragmentShader(t){return t=t.replace(\\\\\\\"#include <transmission_fragment>\\\\\\\",function(t){const e=t.split(\\\\\\\"\\\\n\\\\\\\");let n=0;for(let t of e)t.includes(\\\\\\\"float transmissionFactor = transmission;\\\\\\\")&&(t=\\\\\\\"float transmissionFactor = transmission * POLY_transmission;\\\\\\\",e[n]=t),t.includes(\\\\\\\"float thicknessFactor = thickness;\\\\\\\")&&(t=\\\\\\\"float thicknessFactor = thickness * POLY_thickness;\\\\\\\",e[n]=t),n++;return e.join(\\\\\\\"\\\\n\\\\\\\")}(k))}}const Z4=new Map([[Mf.VERTEX,\\\\\\\"// INSERT DEFINES\\\\\\\"]]),K4=new Map([[Mf.VERTEX,\\\\\\\"// INSERT BODY\\\\\\\"]]);const Q4=new Map([[Mf.VERTEX,\\\\\\\"// INSERT DEFINES\\\\\\\"]]),t5=new Map([[Mf.VERTEX,\\\\\\\"// INSERT BODY\\\\\\\"]]);const e5=new Map([[Mf.VERTEX,[\\\\\\\"#include <begin_vertex>\\\\\\\",\\\\\\\"gl_PointSize = size;\\\\\\\"]],[Mf.FRAGMENT,[]]]),n5=new Map;n5.set(I4.DISTANCE,class extends B4{templateShader(){const t=H.distanceRGBA,e=I.clone(t.uniforms);return e.size={value:1},e.scale={value:1},{vertexShader:\\\\\\\"uniform float size;\\\\nuniform float scale;\\\\n#define DISTANCE\\\\nvarying vec3 vWorldPosition;\\\\n#include <common>\\\\n#include <clipping_planes_pars_vertex>\\\\nvarying float vViewZDepth;\\\\n\\\\n// INSERT DEFINES\\\\n\\\\n\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\t// INSERT BODY\\\\n\\\\n\\\\n\\\\t#include <project_vertex>\\\\n\\\\t#include <worldpos_vertex>\\\\n\\\\t#include <clipping_planes_vertex>\\\\n\\\\n\\\\t#ifdef USE_SIZEATTENUATION\\\\n\\\\t\\\\tbool isPerspective = ( projectionMatrix[ 2 ][ 3 ] == - 1.0 );\\\\n\\\\t\\\\tif ( isPerspective ) gl_PointSize *= ( scale / - mvPosition.z );\\\\n\\\\t#endif\\\\n\\\\tvWorldPosition = worldPosition.xyz;\\\\n}\\\\n\\\\n// #define DISTANCE\\\\n// varying vec3 vWorldPosition;\\\\n// #include <common>\\\\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>\\\\n// void main() {\\\\n// \\\\t#include <uv_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\\\\n\\\\n\\\\\\\",fragmentShader:t.fragmentShader,uniforms:e}}insert_define_after(t){return Z4.get(t)}insert_body_after(t){return K4.get(t)}createMaterial(){const t=this.templateShader();return new F({defines:{USE_SIZEATTENUATION:1,DEPTH_PACKING:[w.Hb,w.j][0]},uniforms:I.clone(t.uniforms),vertexShader:t.vertexShader,fragmentShader:t.fragmentShader})}}),n5.set(I4.DEPTH_DOF,class extends B4{templateShader(){return{vertexShader:\\\\\\\"uniform float size;\\\\nuniform float scale;\\\\n#include <common>\\\\n\\\\nvarying float vViewZDepth;\\\\n\\\\n// INSERT DEFINES\\\\n\\\\n\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\t// INSERT BODY\\\\n\\\\n\\\\n\\\\t#include <project_vertex>\\\\n\\\\n\\\\tvViewZDepth = - mvPosition.z;\\\\n\\\\t#ifdef USE_SIZEATTENUATION\\\\n\\\\t\\\\tbool isPerspective = ( projectionMatrix[ 2 ][ 3 ] == - 1.0 );\\\\n\\\\t\\\\tif ( isPerspective ) gl_PointSize *= ( scale / - mvPosition.z );\\\\n\\\\t#endif\\\\n\\\\n}\\\\n\\\\n\\\\\\\",fragmentShader:U4,uniforms:{size:{value:1},scale:{value:1},mNear:{value:0},mFar:{value:10}}}}insert_define_after(t){return Q4.get(t)}insert_body_after(t){return t5.get(t)}createMaterial(){const t=this.templateShader();return new F({depthTest:!0,defines:{USE_SIZEATTENUATION:1},uniforms:I.clone(t.uniforms),vertexShader:t.vertexShader,fragmentShader:t.fragmentShader})}});class i5 extends B4{custom_assembler_class_by_custom_name(){return n5}templateShader(){const t=H.points;return{vertexShader:t.vertexShader,fragmentShader:t.fragmentShader,uniforms:t.uniforms}}createMaterial(){const t=this.templateShader(),e=new F({transparent:!0,fog:!0,defines:{USE_SIZEATTENUATION:1},uniforms:I.clone(t.uniforms),vertexShader:t.vertexShader,fragmentShader:t.fragmentShader});return this._addCustomMaterials(e),e}add_output_inputs(t){const e=R4.output_input_connection_points();e.push(new qo(\\\\\\\"gl_PointSize\\\\\\\",Uo.FLOAT)),t.io.inputs.setNamedInputConnectionPoints(e)}create_globals_node_output_connections(){return R4.create_globals_node_output_connections().concat([new qo(F4.GL_POINTCOORD,Uo.VEC2)])}create_shader_configs(){return[new b4(Mf.VERTEX,[\\\\\\\"position\\\\\\\",\\\\\\\"normal\\\\\\\",\\\\\\\"uv\\\\\\\",\\\\\\\"gl_PointSize\\\\\\\"],[]),new b4(Mf.FRAGMENT,[\\\\\\\"color\\\\\\\",\\\\\\\"alpha\\\\\\\"],[Mf.VERTEX])]}create_variable_configs(){return R4.create_variable_configs().concat([new w4(\\\\\\\"gl_PointSize\\\\\\\",{default:\\\\\\\"1.0\\\\\\\",prefix:\\\\\\\"gl_PointSize = \\\\\\\",suffix:\\\\\\\" * size * 10.0\\\\\\\"})])}lines_to_remove(t){return e5.get(t)}}const s5=new Map([[Mf.VERTEX,\\\\\\\"// INSERT DEFINES\\\\\\\"]]),r5=new Map([[Mf.VERTEX,\\\\\\\"// INSERT BODY\\\\\\\"]]);const o5=new Map([]);o5.set(I4.DEPTH_DOF,class extends B4{templateShader(){return{vertexShader:\\\\\\\"uniform float scale;\\\\nattribute float lineDistance;\\\\nvarying float vLineDistance;\\\\n#include <common>\\\\n\\\\nvarying float vViewZDepth;\\\\n\\\\n// INSERT DEFINES\\\\n\\\\n\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\t// INSERT BODY\\\\n\\\\n\\\\n\\\\tvLineDistance = scale * lineDistance;\\\\n\\\\tgl_Position = projectionMatrix * mvPosition;\\\\n\\\\n\\\\tvViewZDepth = - mvPosition.z;\\\\n\\\\n\\\\n}\\\\n\\\\n\\\\n\\\\n\\\\\\\",fragmentShader:U4,uniforms:{scale:{value:1},mNear:{value:0},mFar:{value:10}}}}insert_define_after(t){return s5.get(t)}insert_body_after(t){return r5.get(t)}createMaterial(){const t=this.templateShader();return new F({depthTest:!0,linewidth:100,uniforms:I.clone(t.uniforms),vertexShader:t.vertexShader,fragmentShader:t.fragmentShader})}});const a5=new Map([[Mf.VERTEX,[\\\\\\\"#include <begin_vertex>\\\\\\\",\\\\\\\"#include <project_vertex>\\\\\\\"]],[Mf.FRAGMENT,[]]]);class l5 extends B4{templateShader(){const t=H.dashed;return{vertexShader:t.vertexShader,fragmentShader:t.fragmentShader,uniforms:t.uniforms}}createMaterial(){const t=this.templateShader(),e=new F({depthTest:!0,alphaTest:.5,linewidth:1,uniforms:I.clone(t.uniforms),vertexShader:t.vertexShader,fragmentShader:t.fragmentShader});return this._addCustomMaterials(e),e}custom_assembler_class_by_custom_name(){return o5}create_shader_configs(){return[new b4(Mf.VERTEX,[\\\\\\\"position\\\\\\\",\\\\\\\"uv\\\\\\\"],[]),new b4(Mf.FRAGMENT,[\\\\\\\"color\\\\\\\",\\\\\\\"alpha\\\\\\\"],[Mf.VERTEX])]}static output_input_connection_points(){return[new qo(\\\\\\\"position\\\\\\\",Uo.VEC3),new qo(\\\\\\\"color\\\\\\\",Uo.VEC3),new qo(\\\\\\\"alpha\\\\\\\",Uo.FLOAT),new qo(\\\\\\\"uv\\\\\\\",Uo.VEC2)]}add_output_inputs(t){t.io.inputs.setNamedInputConnectionPoints(l5.output_input_connection_points())}static create_globals_node_output_connections(){return[new qo(\\\\\\\"position\\\\\\\",Uo.VEC3),new qo(\\\\\\\"color\\\\\\\",Uo.VEC3),new qo(\\\\\\\"uv\\\\\\\",Uo.VEC2),new qo(\\\\\\\"gl_FragCoord\\\\\\\",Uo.VEC4),new qo(\\\\\\\"resolution\\\\\\\",Uo.VEC2),new qo(\\\\\\\"time\\\\\\\",Uo.FLOAT)]}create_globals_node_output_connections(){return l5.create_globals_node_output_connections()}create_variable_configs(){return[new w4(\\\\\\\"position\\\\\\\",{default:\\\\\\\"vec3( position )\\\\\\\",prefix:\\\\\\\"vec3 transformed = \\\\\\\",suffix:\\\\\\\";vec4 mvPosition = vec4( transformed, 1.0 ); gl_Position = projectionMatrix * modelViewMatrix * mvPosition;\\\\\\\"}),new w4(\\\\\\\"color\\\\\\\",{prefix:\\\\\\\"diffuseColor.xyz = \\\\\\\"}),new w4(\\\\\\\"alpha\\\\\\\",{prefix:\\\\\\\"diffuseColor.w = \\\\\\\"}),new w4(\\\\\\\"uv\\\\\\\",{prefix:\\\\\\\"vUv = \\\\\\\",if:Pf.IF_RULE.uv})]}lines_to_remove(t){return a5.get(t)}}class c5 extends R4{templateShader(){}_template_shader_for_shader_name(t){return\\\\\\\"#include <common>\\\\n\\\\n// INSERT DEFINE\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\tvec2 particleUV = (gl_FragCoord.xy / resolution.xy);\\\\n\\\\n\\\\t// INSERT BODY\\\\n\\\\n}\\\\\\\"}compile(){this.setup_shader_names_and_variables(),this.update_shaders()}root_nodes_by_shader_name(t){var e,n;const i=[];for(let s of this._root_nodes)switch(s.type()){case OF.type():i.push(s);break;case wf.type():{const r=s.attribute_name,o=null===(e=this._texture_allocations_controller)||void 0===e?void 0:e.variable(r);if(o&&o.allocation()){(null===(n=o.allocation())||void 0===n?void 0:n.shaderName())==t&&i.push(s)}break}}return i}leaf_nodes_by_shader_name(t){var e,n;const i=[];for(let s of this._leaf_nodes)switch(s.type()){case II.type():i.push(s);break;case wf.type():{const r=s.attribute_name,o=null===(e=this._texture_allocations_controller)||void 0===e?void 0:e.variable(r);if(o&&o.allocation()){(null===(n=o.allocation())||void 0===n?void 0:n.shaderName())==t&&i.push(s)}break}}return i}setup_shader_names_and_variables(){var t;const e=new N4(this.currentGlParentNode(),this.shaderNames(),((t,e)=>this.input_names_for_shader_name(t,e)));this._leaf_nodes=e.leaves_from_nodes(this._root_nodes),this._texture_allocations_controller=new c1,this._texture_allocations_controller.allocateConnectionsFromRootNodes(this._root_nodes,this._leaf_nodes),this.globals_handler&&(null===(t=this.globals_handler)||void 0===t||t.set_texture_allocations_controller(this._texture_allocations_controller)),this._reset_shader_configs()}update_shaders(){this._shaders_by_name.clear(),this._lines.clear();for(let t of this.shaderNames()){const e=this._template_shader_for_shader_name(t);this._lines.set(t,e.split(\\\\\\\"\\\\n\\\\\\\"))}this._root_nodes.length>0&&(this._resetCodeBuilder(),this.build_code_from_nodes(this._root_nodes),this._build_lines());for(let t of this.shaderNames()){const e=this._lines.get(t);e&&this._shaders_by_name.set(t,e.join(\\\\\\\"\\\\n\\\\\\\"))}}add_output_inputs(t){t.io.inputs.setNamedInputConnectionPoints([new qo(\\\\\\\"position\\\\\\\",Uo.VEC3),new qo(\\\\\\\"velocity\\\\\\\",Uo.VEC3)])}add_globals_outputs(t){t.io.outputs.setNamedOutputConnectionPoints([new qo(\\\\\\\"position\\\\\\\",Uo.VEC3),new qo(\\\\\\\"velocity\\\\\\\",Uo.VEC3),new qo(\\\\\\\"time\\\\\\\",Uo.FLOAT)])}allow_attribute_exports(){return!0}textureAllocationsController(){return this._texture_allocations_controller=this._texture_allocations_controller||new c1}create_shader_configs(){var t;return(null===(t=this._texture_allocations_controller)||void 0===t?void 0:t.createShaderConfigs())||[]}create_variable_configs(){return[]}shaderNames(){return this.textureAllocationsController().shaderNames()||[]}input_names_for_shader_name(t,e){return this.textureAllocationsController().inputNamesForShaderName(t,e)||[]}insert_define_after(t){return\\\\\\\"// INSERT DEFINE\\\\\\\"}insert_body_after(t){return\\\\\\\"// INSERT BODY\\\\\\\"}lines_to_remove(t){return[\\\\\\\"// INSERT DEFINE\\\\\\\",\\\\\\\"// INSERT BODY\\\\\\\"]}add_export_body_line(t,e,n,i,s){var r;if(n){const n=t.variableForInput(e),o=mf.vector3(n);if(o){const e=this.textureAllocationsController().variable(i),n=s.current_shader_name;if(e&&(null===(r=e.allocation())||void 0===r?void 0:r.shaderName())==n){const i=`gl_FragColor.${e.component()} = ${o}`;s.addBodyLines(t,[i],n)}}}}set_node_lines_output(t,e){const n=e.current_shader_name,i=this.textureAllocationsController().inputNamesForShaderName(t,n);if(i)for(let n of i){const i=t.io.inputs.named_input(n);if(i){const s=n;this.add_export_body_line(t,n,i,s,e)}}}set_node_lines_attribute(t,e){var n,i;if(t.isImporting()){const s=t.gl_type(),r=t.attribute_name,o=null===(n=this.globals_handler)||void 0===n?void 0:n.read_attribute(t,s,r,e),a=t.glVarName(t.output_name),l=`${s} ${a} = ${o}`;e.addBodyLines(t,[l]);const c=this.textureAllocationsController().variable(r),h=e.current_shader_name;if(c&&(null===(i=c.allocation())||void 0===i?void 0:i.shaderName())==h){const n=this.textureAllocationsController().variable(r);if(n){const i=`gl_FragColor.${n.component()} = ${a}`;e.addBodyLines(t,[i])}}}if(t.isExporting()){const n=t.connected_input_node();if(n){const i=t.attribute_name;this.add_export_body_line(t,t.input_name,n,i,e)}}}set_node_lines_globals(t,e){for(let n of t.io.outputs.used_output_names())switch(n){case\\\\\\\"time\\\\\\\":this._handle_globals_time(t,n,e);break;default:this._handle_globals_default(t,n,e)}}_handle_globals_time(t,e,n){const i=new Nf(t,Uo.FLOAT,e);n.addDefinitions(t,[i]);const s=`float ${t.glVarName(e)} = ${e}`;n.addBodyLines(t,[s]),this.setUniformsTimeDependent()}_handle_globals_default(t,e,n){var i;const s=t.io.outputs.namedOutputConnectionPointsByName(e);if(s){const r=s.type(),o=null===(i=this.globals_handler)||void 0===i?void 0:i.read_attribute(t,r,e,n);if(o){const i=`${r} ${t.glVarName(e)} = ${o}`;n.addBodyLines(t,[i])}}}}class h5 extends R4{templateShader(){return{fragmentShader:\\\\\\\"#include <common>\\\\n\\\\nuniform vec2 resolution;\\\\n\\\\n// INSERT DEFINE\\\\n\\\\nvoid main() {\\\\n\\\\n\\\\tvec4 diffuseColor = vec4(0.0,0.0,0.0,1.0);\\\\n\\\\n\\\\n\\\\t// INSERT BODY\\\\n\\\\n\\\\tgl_FragColor = vec4( diffuseColor );\\\\n}\\\\\\\",vertexShader:void 0,uniforms:void 0}}fragment_shader(){return this._shaders_by_name.get(Mf.FRAGMENT)}uniforms(){return this._uniforms}update_fragment_shader(){this._lines=new Map,this._shaders_by_name=new Map;for(let t of this.shaderNames())if(t==Mf.FRAGMENT){const e=this.templateShader().fragmentShader;this._lines.set(t,e.split(\\\\\\\"\\\\n\\\\\\\"))}this._root_nodes.length>0&&(this.build_code_from_nodes(this._root_nodes),this._build_lines()),this._uniforms=this._uniforms||{},this.addUniforms(this._uniforms);for(let t of this.shaderNames()){const e=this._lines.get(t);e&&this._shaders_by_name.set(t,e.join(\\\\\\\"\\\\n\\\\\\\"))}rg.handleDependencies(this.currentGlParentNode(),this.uniformsTimeDependent(),this._uniforms)}add_output_inputs(t){t.io.inputs.setNamedInputConnectionPoints([new qo(\\\\\\\"color\\\\\\\",Uo.VEC3),new qo(\\\\\\\"alpha\\\\\\\",Uo.FLOAT)])}add_globals_outputs(t){t.io.outputs.setNamedOutputConnectionPoints([new qo(\\\\\\\"gl_FragCoord\\\\\\\",Uo.VEC2),new qo(\\\\\\\"time\\\\\\\",Uo.FLOAT)])}create_shader_configs(){return[new b4(Mf.FRAGMENT,[\\\\\\\"color\\\\\\\",\\\\\\\"alpha\\\\\\\"],[])]}create_variable_configs(){return[new w4(\\\\\\\"color\\\\\\\",{prefix:\\\\\\\"diffuseColor.xyz = \\\\\\\"}),new w4(\\\\\\\"alpha\\\\\\\",{prefix:\\\\\\\"diffuseColor.a = \\\\\\\",default:\\\\\\\"1.0\\\\\\\"})]}insert_define_after(t){return\\\\\\\"// INSERT DEFINE\\\\\\\"}insert_body_after(t){return\\\\\\\"// INSERT BODY\\\\\\\"}lines_to_remove(t){return[\\\\\\\"// INSERT DEFINE\\\\\\\",\\\\\\\"// INSERT BODY\\\\\\\"]}handle_gl_FragCoord(t,e,n){\\\\\\\"fragment\\\\\\\"==e&&t.push(`vec2 ${n} = vec2(gl_FragCoord.x / resolution.x, gl_FragCoord.y / resolution.y)`)}set_node_lines_output(t,e){const n=this.input_names_for_shader_name(t,e.current_shader_name);if(n)for(let i of n){if(t.io.inputs.named_input(i)){const n=t.variableForInput(i);let s;\\\\\\\"color\\\\\\\"==i&&(s=`diffuseColor.xyz = ${mf.any(n)}`),\\\\\\\"alpha\\\\\\\"==i&&(s=`diffuseColor.a = ${mf.any(n)}`),s&&e.addBodyLines(t,[s])}}}set_node_lines_globals(t,e){const n=e.current_shader_name;if(!this.shader_config(n))return;const i=[],s=[];for(let e of t.io.outputs.used_output_names()){const r=t.glVarName(e);switch(e){case\\\\\\\"time\\\\\\\":s.push(new Nf(t,Uo.FLOAT,e)),i.push(`float ${r} = ${e}`),this.setUniformsTimeDependent();break;case\\\\\\\"gl_FragCoord\\\\\\\":this.handle_gl_FragCoord(i,n,r)}}e.addDefinitions(t,s,n),e.addBodyLines(t,i)}}const u5=new Map([]);class d5 extends B4{custom_assembler_class_by_custom_name(){return u5}}const p5=new Map([[Mf.VERTEX,\\\\\\\"// start builder body code\\\\\\\"],[Mf.FRAGMENT,\\\\\\\"// start builder body code\\\\\\\"]]),_5=new Map([[Mf.FRAGMENT,[]]]);class m5 extends d5{templateShader(){return{vertexShader:Uk,fragmentShader:Gk,uniforms:I.clone(Vk)}}createMaterial(){const t=this.templateShader(),e=new F({vertexShader:t.vertexShader,fragmentShader:t.fragmentShader,side:w.H,transparent:!0,depthTest:!0,uniforms:I.clone(t.uniforms)});return yr.add_user_data_render_hook(e,jk.render_hook.bind(jk)),this._addCustomMaterials(e),e}add_output_inputs(t){t.io.inputs.setNamedInputConnectionPoints([new qo(\\\\\\\"density\\\\\\\",Uo.FLOAT,1)])}static create_globals_node_output_connections(){return[new qo(\\\\\\\"position\\\\\\\",Uo.VEC3),new qo(\\\\\\\"pos_normalized\\\\\\\",Uo.VEC3),new qo(\\\\\\\"time\\\\\\\",Uo.FLOAT)]}create_globals_node_output_connections(){return m5.create_globals_node_output_connections()}insert_body_after(t){return p5.get(t)}lines_to_remove(t){return _5.get(t)}create_shader_configs(){return[new b4(Mf.VERTEX,[],[]),new b4(Mf.FRAGMENT,[\\\\\\\"density\\\\\\\"],[Mf.VERTEX])]}static create_variable_configs(){return[new w4(\\\\\\\"position\\\\\\\",{}),new w4(\\\\\\\"density\\\\\\\",{prefix:\\\\\\\"density *= \\\\\\\"})]}create_variable_configs(){return m5.create_variable_configs()}set_node_lines_globals(t,e){const n=[],i=e.current_shader_name,s=this.shader_config(i);if(!s)return;const r=s.dependencies(),o=new Map,a=new Map;let l,c;for(let s of t.io.outputs.used_output_names()){const u=t.glVarName(s),d=e.current_shader_name;switch(s){case\\\\\\\"time\\\\\\\":l=new Nf(t,Uo.FLOAT,s),d&&h.pushOnArrayAtEntry(o,d,l),c=`float ${u} = ${s}`;for(let t of r)h.pushOnArrayAtEntry(o,t,l),h.pushOnArrayAtEntry(a,t,c);n.push(c),this.setUniformsTimeDependent();break;case\\\\\\\"position\\\\\\\":i==Mf.FRAGMENT&&n.push(`vec3 ${u} = position_for_step`);break;case\\\\\\\"pos_normalized\\\\\\\":i==Mf.FRAGMENT&&n.push(`vec3 ${u} = (position_for_step - u_BoundingBoxMax) / (u_BoundingBoxMax - u_BoundingBoxMin)`)}}o.forEach(((n,i)=>{e.addDefinitions(t,n,i)})),a.forEach(((n,i)=>{e.addBodyLines(t,n,i)})),e.addBodyLines(t,n)}}class f5{static async run(){this._started||(this._started=!0,class{static async run(t){(class{static run(t){t.registerNode(k_,ec),t.registerNode(G_,sc),t.registerNode(H_,ec),t.registerNode(W_,ec),t.registerNode(tm,ec),t.registerNode(nm,tc),t.registerNode(sm,ec),t.registerNode(om,sc),t.registerNode(lm,ic),t.registerNode(mm,ic),t.registerNode(gm,ec),t.registerNode(ym,tc),t.registerNode(Sm,ic),t.registerNode(Lm,nc),t.registerNode(Om,nc),t.registerNode(Pm,nc),t.registerNode(Rm,nc),t.registerNode(sf,nc),t.registerNode(rf,nc)}}).run(t),class{static run(t){t.registerNode(rg,rc),t.registerNode(Og,oc),t.registerNode(Rg,oc),t.registerNode(kg,oc),t.registerNode(Hg,oc),t.registerNode(sv,oc),t.registerNode(lv,oc),t.registerNode(pv,ac),t.registerNode(mv,ac),t.registerNode(vv,ac),t.registerNode(Tv,ac),t.registerNode(Mv,ac),t.registerNode(Cv,rc),t.registerNode(Ov,oc),t.registerNode(Iv,rc),t.registerNode(Bv,lc),t.registerNode(kv,lc),t.registerNode(zv,lc),t.registerNode(Uv,lc),t.registerNode(Gv,lc),t.registerNode(Vv,lc)}}.run(t),class{static run(t){t.registerNode(qv,dc),t.registerNode($v,uc),t.registerNode(Zv,uc),t.registerNode(ty,uc),t.registerNode(hy,cc),t.registerNode(Ty,cc),t.registerNode(wy,cc),t.registerNode(My,uc),t.registerNode(Tl,hc),t.registerNode(ox,cc),t.registerNode(hl,hc),t.registerNode(hx,uc),t.registerNode(dx,uc),t.registerNode(IL,cc),t.registerNode(Ja,hc),t.registerNode(zL,dc),t.registerNode(VL,uc),t.registerNode(ZL,hc),t.registerNode(el,hc),t.registerNode(xO,uc),t.registerNode(rl,dc),t.registerNode(AO,dc),t.registerNode(FO,dc),t.registerNode(BO,uc),t.registerNode(UO,uc),t.registerNode(Ml,hc),t.registerNode(VO,uc),t.registerNode(ml,hc),t.registerNode(WO,pc),t.registerNode(qO,pc),t.registerNode(XO,pc),t.registerNode(YO,pc),t.registerNode($O,pc),t.registerNode(JO,pc)}}.run(t),class{static run(t){t.registerNode(FP,xc),t.registerNode(LR,bc),t.registerNode(DP,Tc),t.registerNode(mR,xc),t.registerNode(FR,Tc),t.registerNode(bR,yc),t.registerNode(BP,Tc),t.registerNode(zP,Tc),t.registerNode(wf,gc,{except:[`${ts.COP}/builder`]}),t.registerNode(aP,mc),t.registerNode(kP,xc),t.registerNode(uR,xc),t.registerNode(kR,_c),t.registerNode(qR,yc),t.registerNode(XR,xc),t.registerNode(JR,gc),t.registerNode(UP,Tc),t.registerNode(QR,fc),t.registerNode(tI,xc),t.registerNode(GP,mc),t.registerNode(iI,fc),t.registerNode(nR,fc),t.registerNode(fR,xc),t.registerNode(iR,fc),t.registerNode(uI,xc),t.registerNode(VP,xc),t.registerNode(HP,xc),t.registerNode(dR,fc),t.registerNode(_I,xc),t.registerNode(fI,xc),t.registerNode(vI,xc),t.registerNode(xI,xc),t.registerNode(QO,mc),t.registerNode(cP,mc),t.registerNode(uP,mc),t.registerNode(pP,mc),t.registerNode(jP,xc),t.registerNode(TI,_c),t.registerNode(PI,yc),t.registerNode(WP,xc),t.registerNode(II,gc),t.registerNode(DI,_c),t.registerNode(zI,_c),t.registerNode(GI,yc),t.registerNode(HI,Ac),t.registerNode(rP,mc),t.registerNode(nP,mc),t.registerNode(qP,xc),t.registerNode(JI,fc),t.registerNode(ZI,fc),t.registerNode(QI,_c),t.registerNode(XP,xc),t.registerNode(YP,xc),t.registerNode(sR,xc),t.registerNode(eF,xc),t.registerNode(rR,xc),t.registerNode(oR,xc),t.registerNode(oF,xc),t.registerNode(iF,xc),t.registerNode(vR,xc),t.registerNode(cF,xc),t.registerNode(hF,xc),t.registerNode(NF,Ac),t.registerNode(CF,fc),t.registerNode($P,xc),t.registerNode(wR,yc),t.registerNode(OF,gc),t.registerNode(IF,gc),t.registerNode(aR,xc),t.registerNode(kF,wc),t.registerNode(HF,wc),t.registerNode(jF,wc),t.registerNode(WF,wc),t.registerNode(YF,gc),t.registerNode(ZF,gc),t.registerNode(JP,mc),t.registerNode(lR,fc),t.registerNode(FF,fc),t.registerNode(QF,_c),t.registerNode(lD,fc),t.registerNode(hD,xc),t.registerNode(ZP,xc),t.registerNode(KP,Tc),t.registerNode(pR,xc),t.registerNode(dD,fc),t.registerNode(QP,xc),t.registerNode(zF,vc),t.registerNode(cR,fc),t.registerNode(CI,yc),t.registerNode(_D,yc,RD),t.registerNode(MI,yc,RD),t.registerNode(gR,xc),t.registerNode(fD,yc),t.registerNode(tR,Tc),t.registerNode(vD,_c),t.registerNode(wD,gc),t.registerNode(MD,yc),t.registerNode(Ff,gc),t.registerNode(CD,gc),t.registerNode(xP,mc),t.registerNode(MP,mc),t.registerNode(bP,mc),t.registerNode(AP,mc),t.registerNode(EP,mc),t.registerNode(wP,mc),t.registerNode(TP,mc),t.registerNode(LD,fc),t.registerNode(PD,fc)}}.run(t),class{static run(t){t.registerNode(BD,Mc),t.registerNode(kD,Mc),t.registerNode(GD,Mc),t.registerNode(YD,Mc)}}.run(t),class{static run(t){t.registerNode(iB,Sc),t.registerNode(mB,Sc),t.registerNode(qB,Cc),t.registerNode(KB,Ec),t.registerNode(sz,Cc),t.registerNode(hz,Ec),t.registerNode(Mz,Cc),t.registerNode(Nz,Cc),t.registerNode(Fz,Cc),t.registerNode(kz,Ec),t.registerNode(Jz,Cc),t.registerNode(tk,Ec),t.registerNode(sk,Cc),t.registerNode(lk,Ec),t.registerNode(xk,Cc),t.registerNode(Ek,Cc),t.registerNode(Lk,Lc),t.registerNode(Rk,Ec),t.registerNode(Dk,Ec),t.registerNode(kk,Cc),t.registerNode(Xk,Oc),t.registerNode(Jk,Oc),t.registerNode(Qk,Nc),t.registerNode(tU,Nc),t.registerNode(eU,Nc),t.registerNode(nU,Nc),t.registerNode(iU,Nc),t.registerNode(sU,Nc)}}.run(t),class{static run(t){t.registerNode(dU,Dc),t.registerNode(IU,Dc),t.registerNode(WU,Dc),t.registerNode(KU,Dc),t.registerNode(sG,Dc),t.registerNode(dG,Dc),t.registerNode(wG,Rc),t.registerNode(SG,zc),t.registerNode(BG,Pc),t.registerNode(VG,Fc),t.registerNode(WG,zc),t.registerNode(JG,zc),t.registerNode(TV,Pc),t.registerNode(zV,Rc),t.registerNode(VV,zc),t.registerNode(WV,Pc),t.registerNode(nj,Ic),t.registerNode(oj,Ic),t.registerNode(cj,Ic),t.registerNode(pj,Bc),t.registerNode(_j,Bc),t.registerNode(mj,Bc),t.registerNode(fj,Bc),t.registerNode(gj,Bc),t.registerNode(vj,Bc)}}.run(t),class{static run(t){t.registerNode(Ej,eh),t.registerNode(Lj,eh),t.registerNode(Rj,th),t.registerNode(Dj,th),t.registerNode(kj,nh),t.registerNode(Gj,nh),t.registerNode(jj,nh),t.registerNode(qj,nh),t.registerNode(eW,eh),t.registerNode(Kj,eh),t.registerNode(rW,eh),t.registerNode(lW,nh),t.registerNode(uW,th),t.registerNode(pW,Qc),t.registerNode(mW,nh),t.registerNode(bW,nh),t.registerNode(TW,nh),t.registerNode(MW,nh),t.registerNode(CW,eh),t.registerNode(OW,eh),t.registerNode(RW,nh),t.registerNode(DW,eh),t.registerNode(kW,th),t.registerNode(GW,nh),t.registerNode(WW,Qc),t.registerNode($W,eh),t.registerNode(ZW,Qc),t.registerNode(tq,eh),t.registerNode(iq,ih),t.registerNode(sq,ih),t.registerNode(rq,ih),t.registerNode(oq,ih),t.registerNode(aq,ih),t.registerNode(lq,ih)}}.run(t),class{static run(t){t.registerNode(mq,kc),t.registerNode(SH,Gc),t.registerNode(fq,Uc),t.registerNode(uq,Uc),t.registerNode(gq,Uc),t.registerNode(vq,Uc),t.registerNode(yq,Uc),t.registerNode(xq,Uc)}}.run(t),class{static run(t){t.registerOperation(bq),t.registerOperation(Fq),t.registerOperation(Hq),t.registerOperation(Xq),t.registerOperation(Zq),t.registerOperation(uX),t.registerOperation(rX),t.registerOperation(fX),t.registerOperation($X),t.registerOperation(QX),t.registerOperation(E$),t.registerOperation(L$),t.registerOperation(HJ),t.registerOperation(XJ),t.registerOperation(KJ),t.registerOperation(uZ),t.registerOperation(UZ),t.registerOperation(rK),t.registerOperation(fQ),t.registerOperation(LQ),t.registerOperation(UQ),t.registerOperation(jQ),t.registerOperation(JQ),t.registerOperation(n0),t.registerOperation(f0),t.registerOperation(N0),t.registerOperation(d0),t.registerOperation(V0),t.registerOperation(X0),t.registerOperation(p1),t.registerOperation(x1),t.registerOperation(A1),t.registerOperation(O1),t.registerOperation(B1),t.registerOperation(Y1),t.registerOperation(i2),t.registerOperation(_2),t.registerOperation(v2),t.registerOperation(w2),t.registerOperation(L2),t.registerOperation(k2),t.registerOperation(J2),t.registerOperation(c9),t.registerOperation(x9),t.registerOperation(G9),t.registerOperation(W9),t.registerOperation(J9),t.registerOperation(t3),t.registerOperation(o3),t.registerOperation(M3),t.registerOperation(P3),t.registerOperation(D3),t.registerNode(Aq,qc),t.registerNode(Eq,Hc),t.registerNode(Iq,Hc),t.registerNode(zq,jc),t.registerNode(qq,jc),t.registerNode(Jq,jc),t.registerNode(eX,jc),t.registerNode(iX,jc),t.registerNode(lX,jc),t.registerNode(_X,jc),t.registerNode(xX,jc),t.registerNode(wX,jc),t.registerNode(AX,jc),t.registerNode(LX,jc),t.registerNode(PX,$c),t.registerNode(IX,$c),t.registerNode(KX,$c),t.registerNode(nY,Zc),t.registerNode(N$,Vc),t.registerNode(R$,Vc),t.registerNode(BJ,Yc),t.registerNode(VJ,Zc),t.registerNode(qJ,$c),t.registerNode($J,Zc),t.registerNode(eZ,Zc),t.registerNode(lZ,Zc),t.registerNode(_Z,$c),t.registerNode(xZ,$c),t.registerNode(TZ,Zc),t.registerNode(DZ,$c),t.registerNode(HZ,Zc),t.registerNode(YZ,qc),t.registerNode(nK,qc),t.registerNode(lK,Yc),t.registerNode(hK,Yc),t.registerNode(MK,$c),t.registerNode(SK,$c),t.registerNode(cQ,Vc),t.registerNode(uQ,$c),t.registerNode(yQ,qc),t.registerNode(bQ,qc),t.registerNode(TQ,$c),t.registerNode(SQ,Zc),t.registerNode(DQ,$c),t.registerNode(IQ,Yc),t.registerNode(HQ,Zc),t.registerNode(XQ,Kc),t.registerNode(QQ,$c),t.registerNode(e0,Kc),t.registerNode(r0,$c),t.registerNode(a0,$c),t.registerNode(c0,Zc),t.registerNode(u0,Vc),t.registerNode(m0,Kc),t.registerNode(x0,Yc),t.registerNode(P0,Zc),t.registerNode(k0,Yc),t.registerNode(G0,$c),t.registerNode(j0,Yc),t.registerNode(q0,qc),t.registerNode(J0,$c),t.registerNode(K0,Vc,{userAllowed:!1}),t.registerNode(d1,Wc),t.registerNode(f1,$c),t.registerNode(T1,Zc),t.registerNode(S1,$c),t.registerNode(U1,$c),t.registerNode(L1,$c),t.registerNode(I1,Xc),t.registerNode(yV,Vc),t.registerNode(q1,$c),t.registerNode(Z1,$c),t.registerNode(o2,Kc),t.registerNode(p2,$c),t.registerNode(g2,jc),t.registerNode(b2,qc),t.registerNode(M2,$c),t.registerNode(D2,$c),t.registerNode(I2,$c),t.registerNode(j2,Vc),t.registerNode(q2,Vc),t.registerNode(V2,$c),t.registerNode(Q2,Zc),t.registerNode(e9,$c),t.registerNode(d9,$c),t.registerNode(_9,Yc),t.registerNode(f9,Yc),t.registerNode(pV,Yc),t.registerNode(T9,qc),t.registerNode(E9,Yc),t.registerNode(N9,Zc),t.registerNode(U9,Zc),t.registerNode(j9,$c),t.registerNode(Y9,$c),t.registerNode(Q9,Zc),t.registerNode(i3,Zc),t.registerNode(c3,$c),t.registerNode(u3,$c),t.registerNode(f3,$c),t.registerNode(x3,$c),t.registerNode(T3,Zc),t.registerNode(S3,$c),t.registerNode(O3,$c),t.registerNode(F3,$c),t.registerNode(z3,$c),t.registerNode(G3,Jc),t.registerNode(V3,Jc),t.registerNode(H3,Jc),t.registerNode(j3,Jc),t.registerNode(W3,Jc),t.registerNode(q3,Jc)}}.run(t)}}.run(li),class{static run(t){t.registerCamera(nj),t.registerCamera(oj)}}.run(li),class{static run(t){t.expressionsRegister.register(Y3,\\\\\\\"arg\\\\\\\"),t.expressionsRegister.register($3,\\\\\\\"argc\\\\\\\"),t.expressionsRegister.register(K3,\\\\\\\"bbox\\\\\\\"),t.expressionsRegister.register(Q3,\\\\\\\"centroid\\\\\\\"),t.expressionsRegister.register(t4,\\\\\\\"ch\\\\\\\"),t.expressionsRegister.register(e4,\\\\\\\"copy\\\\\\\"),t.expressionsRegister.register(n4,\\\\\\\"copRes\\\\\\\"),t.expressionsRegister.register(i4,\\\\\\\"isDeviceMobile\\\\\\\"),t.expressionsRegister.register(s4,\\\\\\\"isDeviceTouch\\\\\\\"),t.expressionsRegister.register(r4,\\\\\\\"js\\\\\\\"),t.expressionsRegister.register(o4,\\\\\\\"object\\\\\\\"),t.expressionsRegister.register(a4,\\\\\\\"objectsCount\\\\\\\"),t.expressionsRegister.register(l4,\\\\\\\"opdigits\\\\\\\"),t.expressionsRegister.register(c4,\\\\\\\"opname\\\\\\\"),t.expressionsRegister.register(h4,\\\\\\\"padzero\\\\\\\"),t.expressionsRegister.register(u4,\\\\\\\"point\\\\\\\"),t.expressionsRegister.register(d4,\\\\\\\"pointsCount\\\\\\\"),t.expressionsRegister.register(p4,\\\\\\\"strCharsCount\\\\\\\"),t.expressionsRegister.register(_4,\\\\\\\"strConcat\\\\\\\"),t.expressionsRegister.register(m4,\\\\\\\"strIndex\\\\\\\"),t.expressionsRegister.register(f4,\\\\\\\"strSub\\\\\\\"),t.expressionsRegister.register(g4,\\\\\\\"windowSize\\\\\\\")}}.run(li),class{static run(t){t.assemblersRegister.register(jn.GL_MESH_BASIC,y4,W4),t.assemblersRegister.register(jn.GL_MESH_LAMBERT,y4,q4),t.assemblersRegister.register(jn.GL_MESH_PHONG,y4,X4),t.assemblersRegister.register(jn.GL_MESH_STANDARD,y4,$4),t.assemblersRegister.register(jn.GL_MESH_PHYSICAL,y4,J4),t.assemblersRegister.register(jn.GL_PARTICLES,y4,c5),t.assemblersRegister.register(jn.GL_POINTS,y4,i5),t.assemblersRegister.register(jn.GL_LINE,y4,l5),t.assemblersRegister.register(jn.GL_TEXTURE,y4,h5),t.assemblersRegister.register(jn.GL_VOLUME,y4,m5)}}.run(li))}}f5._started=!1,f5.run()}]);void 0===POLY&&console.error(\\\\\\\"esm-webpack-plugin: nothing exported!\\\\\\\");const _POLY$PolyScene=POLY.PolyScene,_POLY$Poly=POLY.Poly,_POLY$SceneJsonImporter=POLY.SceneJsonImporter,_POLY$SceneDataManifestImporter=POLY.SceneDataManifestImporter,_POLY$mountScene=POLY.mountScene;export{_POLY$PolyScene as PolyScene,_POLY$Poly as Poly,_POLY$SceneJsonImporter as SceneJsonImporter,_POLY$SceneDataManifestImporter as SceneDataManifestImporter,_POLY$mountScene as mountScene};\\n//# sourceMappingURL=all.js.map\"","status":200,"headers":{"content-type":"application/javascript","content-length":"2831720"}},"type":2,"external":true,"timestamp":1723918835983},{"data":{"url":"blob:https://ipfs.arkivo.art/d1a7846b-11de-43bc-ad1f-79345eb706d1","host":"","path":"https://ipfs.arkivo.art/d1a7846b-11de-43bc-ad1f-79345eb706d1","type":"http","query":"","method":"GET","headers":{"origin":"https://ipfs.arkivo.art","referer":"","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/119.0.6045.9 Safari/537.36"},"fragment":"","postData":null,"protocol":"blob:"},"type":1,"external":false,"timestamp":1723918835983},{"data":{"url":"https://ipfs.arkivo.art/ipfs/QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw/underoceanwaves.mp3","host":"ipfs.arkivo.art","path":"/ipfs/QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw/underoceanwaves.mp3","type":"http","query":"","method":"GET","headers":{"referer":"https://ipfs.arkivo.art/ipfs/QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw/?creator=tz1djshvCnhi5p5wAebiBb2XQLcvVKBqyH7F&viewer=&objkt=573145","sec-ch-ua":"\"HeadlessChrome\";v=\"119\", \"Chromium\";v=\"119\", \"Not?A_Brand\";v=\"24\"","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/119.0.6045.9 Safari/537.36","sec-ch-ua-mobile":"?0","sec-ch-ua-platform":"\"Linux\""},"fragment":"","postData":null,"protocol":"https:"},"type":1,"external":false,"timestamp":1723918837315},{"data":{"url":"blob:https://ipfs.arkivo.art/658d6e1d-c996-4308-949a-dd753485028e","host":"","path":"https://ipfs.arkivo.art/658d6e1d-c996-4308-949a-dd753485028e","type":"http","query":"","method":"GET","headers":{"origin":"https://ipfs.arkivo.art","referer":"","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/119.0.6045.9 Safari/537.36"},"fragment":"","postData":null,"protocol":"blob:"},"type":1,"external":false,"timestamp":1723918837322},{"data":{"url":"blob:https://ipfs.arkivo.art/d1a7846b-11de-43bc-ad1f-79345eb706d1","body":"\"var __create = Object.create;\\nvar __defProp = Object.defineProperty;\\nvar __getProtoOf = Object.getPrototypeOf;\\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\\nvar __getOwnPropNames = Object.getOwnPropertyNames;\\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\\nvar __markAsModule = (target) => __defProp(target, \\\\\\\"__esModule\\\\\\\", {value: true});\\nvar __commonJS = (callback, module) => () => {\\n  if (!module) {\\n    module = {exports: {}};\\n    callback(module.exports, module);\\n  }\\n  return module.exports;\\n};\\nvar __exportStar = (target, module, desc) => {\\n  __markAsModule(target);\\n  if (module && typeof module === \\\\\\\"object\\\\\\\" || typeof module === \\\\\\\"function\\\\\\\") {\\n    for (let key of __getOwnPropNames(module))\\n      if (!__hasOwnProp.call(target, key) && key !== \\\\\\\"default\\\\\\\")\\n        __defProp(target, key, {get: () => module[key], enumerable: !(desc = __getOwnPropDesc(module, key)) || desc.enumerable});\\n  }\\n  return target;\\n};\\nvar __toModule = (module) => {\\n  if (module && module.__esModule)\\n    return module;\\n  return __exportStar(__defProp(module != null ? __create(__getProtoOf(module)) : {}, \\\\\\\"default\\\\\\\", {value: module, enumerable: true}), module);\\n};\\n\\n// ../../../node_modules/lodash/_listCacheClear.js\\nvar require_listCacheClear = __commonJS((exports, module) => {\\n  function listCacheClear() {\\n    this.__data__ = [];\\n    this.size = 0;\\n  }\\n  module.exports = listCacheClear;\\n});\\n\\n// ../../../node_modules/lodash/eq.js\\nvar require_eq = __commonJS((exports, module) => {\\n  function eq(value, other) {\\n    return value === other || value !== value && other !== other;\\n  }\\n  module.exports = eq;\\n});\\n\\n// ../../../node_modules/lodash/_assocIndexOf.js\\nvar require_assocIndexOf = __commonJS((exports, module) => {\\n  var eq = require_eq();\\n  function assocIndexOf(array, key) {\\n    var length = array.length;\\n    while (length--) {\\n      if (eq(array[length][0], key)) {\\n        return length;\\n      }\\n    }\\n    return -1;\\n  }\\n  module.exports = assocIndexOf;\\n});\\n\\n// ../../../node_modules/lodash/_listCacheDelete.js\\nvar require_listCacheDelete = __commonJS((exports, module) => {\\n  var assocIndexOf = require_assocIndexOf();\\n  var arrayProto = Array.prototype;\\n  var splice = arrayProto.splice;\\n  function listCacheDelete(key) {\\n    var data = this.__data__, index = assocIndexOf(data, key);\\n    if (index < 0) {\\n      return false;\\n    }\\n    var lastIndex = data.length - 1;\\n    if (index == lastIndex) {\\n      data.pop();\\n    } else {\\n      splice.call(data, index, 1);\\n    }\\n    --this.size;\\n    return true;\\n  }\\n  module.exports = listCacheDelete;\\n});\\n\\n// ../../../node_modules/lodash/_listCacheGet.js\\nvar require_listCacheGet = __commonJS((exports, module) => {\\n  var assocIndexOf = require_assocIndexOf();\\n  function listCacheGet(key) {\\n    var data = this.__data__, index = assocIndexOf(data, key);\\n    return index < 0 ? void 0 : data[index][1];\\n  }\\n  module.exports = listCacheGet;\\n});\\n\\n// ../../../node_modules/lodash/_listCacheHas.js\\nvar require_listCacheHas = __commonJS((exports, module) => {\\n  var assocIndexOf = require_assocIndexOf();\\n  function listCacheHas(key) {\\n    return assocIndexOf(this.__data__, key) > -1;\\n  }\\n  module.exports = listCacheHas;\\n});\\n\\n// ../../../node_modules/lodash/_listCacheSet.js\\nvar require_listCacheSet = __commonJS((exports, module) => {\\n  var assocIndexOf = require_assocIndexOf();\\n  function listCacheSet(key, value) {\\n    var data = this.__data__, index = assocIndexOf(data, key);\\n    if (index < 0) {\\n      ++this.size;\\n      data.push([key, value]);\\n    } else {\\n      data[index][1] = value;\\n    }\\n    return this;\\n  }\\n  module.exports = listCacheSet;\\n});\\n\\n// ../../../node_modules/lodash/_ListCache.js\\nvar require_ListCache = __commonJS((exports, module) => {\\n  var listCacheClear = require_listCacheClear();\\n  var listCacheDelete = require_listCacheDelete();\\n  var listCacheGet = require_listCacheGet();\\n  var listCacheHas = require_listCacheHas();\\n  var listCacheSet = require_listCacheSet();\\n  function ListCache(entries) {\\n    var index = -1, length = entries == null ? 0 : entries.length;\\n    this.clear();\\n    while (++index < length) {\\n      var entry = entries[index];\\n      this.set(entry[0], entry[1]);\\n    }\\n  }\\n  ListCache.prototype.clear = listCacheClear;\\n  ListCache.prototype[\\\\\\\"delete\\\\\\\"] = listCacheDelete;\\n  ListCache.prototype.get = listCacheGet;\\n  ListCache.prototype.has = listCacheHas;\\n  ListCache.prototype.set = listCacheSet;\\n  module.exports = ListCache;\\n});\\n\\n// ../../../node_modules/lodash/_stackClear.js\\nvar require_stackClear = __commonJS((exports, module) => {\\n  var ListCache = require_ListCache();\\n  function stackClear() {\\n    this.__data__ = new ListCache();\\n    this.size = 0;\\n  }\\n  module.exports = stackClear;\\n});\\n\\n// ../../../node_modules/lodash/_stackDelete.js\\nvar require_stackDelete = __commonJS((exports, module) => {\\n  function stackDelete(key) {\\n    var data = this.__data__, result = data[\\\\\\\"delete\\\\\\\"](key);\\n    this.size = data.size;\\n    return result;\\n  }\\n  module.exports = stackDelete;\\n});\\n\\n// ../../../node_modules/lodash/_stackGet.js\\nvar require_stackGet = __commonJS((exports, module) => {\\n  function stackGet(key) {\\n    return this.__data__.get(key);\\n  }\\n  module.exports = stackGet;\\n});\\n\\n// ../../../node_modules/lodash/_stackHas.js\\nvar require_stackHas = __commonJS((exports, module) => {\\n  function stackHas(key) {\\n    return this.__data__.has(key);\\n  }\\n  module.exports = stackHas;\\n});\\n\\n// ../../../node_modules/lodash/_freeGlobal.js\\nvar require_freeGlobal = __commonJS((exports, module) => {\\n  var freeGlobal = typeof global == \\\\\\\"object\\\\\\\" && global && global.Object === Object && global;\\n  module.exports = freeGlobal;\\n});\\n\\n// ../../../node_modules/lodash/_root.js\\nvar require_root = __commonJS((exports, module) => {\\n  var freeGlobal = require_freeGlobal();\\n  var freeSelf = typeof self == \\\\\\\"object\\\\\\\" && self && self.Object === Object && self;\\n  var root = freeGlobal || freeSelf || Function(\\\\\\\"return this\\\\\\\")();\\n  module.exports = root;\\n});\\n\\n// ../../../node_modules/lodash/_Symbol.js\\nvar require_Symbol = __commonJS((exports, module) => {\\n  var root = require_root();\\n  var Symbol2 = root.Symbol;\\n  module.exports = Symbol2;\\n});\\n\\n// ../../../node_modules/lodash/_getRawTag.js\\nvar require_getRawTag = __commonJS((exports, module) => {\\n  var Symbol2 = require_Symbol();\\n  var objectProto = Object.prototype;\\n  var hasOwnProperty = objectProto.hasOwnProperty;\\n  var nativeObjectToString = objectProto.toString;\\n  var symToStringTag = Symbol2 ? Symbol2.toStringTag : void 0;\\n  function getRawTag(value) {\\n    var isOwn = hasOwnProperty.call(value, symToStringTag), tag = value[symToStringTag];\\n    try {\\n      value[symToStringTag] = void 0;\\n      var unmasked = true;\\n    } catch (e) {\\n    }\\n    var result = nativeObjectToString.call(value);\\n    if (unmasked) {\\n      if (isOwn) {\\n        value[symToStringTag] = tag;\\n      } else {\\n        delete value[symToStringTag];\\n      }\\n    }\\n    return result;\\n  }\\n  module.exports = getRawTag;\\n});\\n\\n// ../../../node_modules/lodash/_objectToString.js\\nvar require_objectToString = __commonJS((exports, module) => {\\n  var objectProto = Object.prototype;\\n  var nativeObjectToString = objectProto.toString;\\n  function objectToString(value) {\\n    return nativeObjectToString.call(value);\\n  }\\n  module.exports = objectToString;\\n});\\n\\n// ../../../node_modules/lodash/_baseGetTag.js\\nvar require_baseGetTag = __commonJS((exports, module) => {\\n  var Symbol2 = require_Symbol();\\n  var getRawTag = require_getRawTag();\\n  var objectToString = require_objectToString();\\n  var nullTag = \\\\\\\"[object Null]\\\\\\\";\\n  var undefinedTag = \\\\\\\"[object Undefined]\\\\\\\";\\n  var symToStringTag = Symbol2 ? Symbol2.toStringTag : void 0;\\n  function baseGetTag(value) {\\n    if (value == null) {\\n      return value === void 0 ? undefinedTag : nullTag;\\n    }\\n    return symToStringTag && symToStringTag in Object(value) ? getRawTag(value) : objectToString(value);\\n  }\\n  module.exports = baseGetTag;\\n});\\n\\n// ../../../node_modules/lodash/isObject.js\\nvar require_isObject = __commonJS((exports, module) => {\\n  function isObject(value) {\\n    var type = typeof value;\\n    return value != null && (type == \\\\\\\"object\\\\\\\" || type == \\\\\\\"function\\\\\\\");\\n  }\\n  module.exports = isObject;\\n});\\n\\n// ../../../node_modules/lodash/isFunction.js\\nvar require_isFunction = __commonJS((exports, module) => {\\n  var baseGetTag = require_baseGetTag();\\n  var isObject = require_isObject();\\n  var asyncTag = \\\\\\\"[object AsyncFunction]\\\\\\\";\\n  var funcTag = \\\\\\\"[object Function]\\\\\\\";\\n  var genTag = \\\\\\\"[object GeneratorFunction]\\\\\\\";\\n  var proxyTag = \\\\\\\"[object Proxy]\\\\\\\";\\n  function isFunction(value) {\\n    if (!isObject(value)) {\\n      return false;\\n    }\\n    var tag = baseGetTag(value);\\n    return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;\\n  }\\n  module.exports = isFunction;\\n});\\n\\n// ../../../node_modules/lodash/_coreJsData.js\\nvar require_coreJsData = __commonJS((exports, module) => {\\n  var root = require_root();\\n  var coreJsData = root[\\\\\\\"__core-js_shared__\\\\\\\"];\\n  module.exports = coreJsData;\\n});\\n\\n// ../../../node_modules/lodash/_isMasked.js\\nvar require_isMasked = __commonJS((exports, module) => {\\n  var coreJsData = require_coreJsData();\\n  var maskSrcKey = function() {\\n    var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || \\\\\\\"\\\\\\\");\\n    return uid ? \\\\\\\"Symbol(src)_1.\\\\\\\" + uid : \\\\\\\"\\\\\\\";\\n  }();\\n  function isMasked(func) {\\n    return !!maskSrcKey && maskSrcKey in func;\\n  }\\n  module.exports = isMasked;\\n});\\n\\n// ../../../node_modules/lodash/_toSource.js\\nvar require_toSource = __commonJS((exports, module) => {\\n  var funcProto = Function.prototype;\\n  var funcToString = funcProto.toString;\\n  function toSource(func) {\\n    if (func != null) {\\n      try {\\n        return funcToString.call(func);\\n      } catch (e) {\\n      }\\n      try {\\n        return func + \\\\\\\"\\\\\\\";\\n      } catch (e) {\\n      }\\n    }\\n    return \\\\\\\"\\\\\\\";\\n  }\\n  module.exports = toSource;\\n});\\n\\n// ../../../node_modules/lodash/_baseIsNative.js\\nvar require_baseIsNative = __commonJS((exports, module) => {\\n  var isFunction = require_isFunction();\\n  var isMasked = require_isMasked();\\n  var isObject = require_isObject();\\n  var toSource = require_toSource();\\n  var reRegExpChar = /[\\\\\\\\^$.*+?()[\\\\]{}|]/g;\\n  var reIsHostCtor = /^\\\\[object .+?Constructor\\\\]$/;\\n  var funcProto = Function.prototype;\\n  var objectProto = Object.prototype;\\n  var funcToString = funcProto.toString;\\n  var hasOwnProperty = objectProto.hasOwnProperty;\\n  var reIsNative = RegExp(\\\\\\\"^\\\\\\\" + funcToString.call(hasOwnProperty).replace(reRegExpChar, \\\\\\\"\\\\\\\\$&\\\\\\\").replace(/hasOwnProperty|(function).*?(?=\\\\\\\\\\\\()| for .+?(?=\\\\\\\\\\\\])/g, \\\\\\\"$1.*?\\\\\\\") + \\\\\\\"$\\\\\\\");\\n  function baseIsNative(value) {\\n    if (!isObject(value) || isMasked(value)) {\\n      return false;\\n    }\\n    var pattern = isFunction(value) ? reIsNative : reIsHostCtor;\\n    return pattern.test(toSource(value));\\n  }\\n  module.exports = baseIsNative;\\n});\\n\\n// ../../../node_modules/lodash/_getValue.js\\nvar require_getValue = __commonJS((exports, module) => {\\n  function getValue(object, key) {\\n    return object == null ? void 0 : object[key];\\n  }\\n  module.exports = getValue;\\n});\\n\\n// ../../../node_modules/lodash/_getNative.js\\nvar require_getNative = __commonJS((exports, module) => {\\n  var baseIsNative = require_baseIsNative();\\n  var getValue = require_getValue();\\n  function getNative(object, key) {\\n    var value = getValue(object, key);\\n    return baseIsNative(value) ? value : void 0;\\n  }\\n  module.exports = getNative;\\n});\\n\\n// ../../../node_modules/lodash/_Map.js\\nvar require_Map = __commonJS((exports, module) => {\\n  var getNative = require_getNative();\\n  var root = require_root();\\n  var Map2 = getNative(root, \\\\\\\"Map\\\\\\\");\\n  module.exports = Map2;\\n});\\n\\n// ../../../node_modules/lodash/_nativeCreate.js\\nvar require_nativeCreate = __commonJS((exports, module) => {\\n  var getNative = require_getNative();\\n  var nativeCreate = getNative(Object, \\\\\\\"create\\\\\\\");\\n  module.exports = nativeCreate;\\n});\\n\\n// ../../../node_modules/lodash/_hashClear.js\\nvar require_hashClear = __commonJS((exports, module) => {\\n  var nativeCreate = require_nativeCreate();\\n  function hashClear() {\\n    this.__data__ = nativeCreate ? nativeCreate(null) : {};\\n    this.size = 0;\\n  }\\n  module.exports = hashClear;\\n});\\n\\n// ../../../node_modules/lodash/_hashDelete.js\\nvar require_hashDelete = __commonJS((exports, module) => {\\n  function hashDelete(key) {\\n    var result = this.has(key) && delete this.__data__[key];\\n    this.size -= result ? 1 : 0;\\n    return result;\\n  }\\n  module.exports = hashDelete;\\n});\\n\\n// ../../../node_modules/lodash/_hashGet.js\\nvar require_hashGet = __commonJS((exports, module) => {\\n  var nativeCreate = require_nativeCreate();\\n  var HASH_UNDEFINED = \\\\\\\"__lodash_hash_undefined__\\\\\\\";\\n  var objectProto = Object.prototype;\\n  var hasOwnProperty = objectProto.hasOwnProperty;\\n  function hashGet(key) {\\n    var data = this.__data__;\\n    if (nativeCreate) {\\n      var result = data[key];\\n      return result === HASH_UNDEFINED ? void 0 : result;\\n    }\\n    return hasOwnProperty.call(data, key) ? data[key] : void 0;\\n  }\\n  module.exports = hashGet;\\n});\\n\\n// ../../../node_modules/lodash/_hashHas.js\\nvar require_hashHas = __commonJS((exports, module) => {\\n  var nativeCreate = require_nativeCreate();\\n  var objectProto = Object.prototype;\\n  var hasOwnProperty = objectProto.hasOwnProperty;\\n  function hashHas(key) {\\n    var data = this.__data__;\\n    return nativeCreate ? data[key] !== void 0 : hasOwnProperty.call(data, key);\\n  }\\n  module.exports = hashHas;\\n});\\n\\n// ../../../node_modules/lodash/_hashSet.js\\nvar require_hashSet = __commonJS((exports, module) => {\\n  var nativeCreate = require_nativeCreate();\\n  var HASH_UNDEFINED = \\\\\\\"__lodash_hash_undefined__\\\\\\\";\\n  function hashSet(key, value) {\\n    var data = this.__data__;\\n    this.size += this.has(key) ? 0 : 1;\\n    data[key] = nativeCreate && value === void 0 ? HASH_UNDEFINED : value;\\n    return this;\\n  }\\n  module.exports = hashSet;\\n});\\n\\n// ../../../node_modules/lodash/_Hash.js\\nvar require_Hash = __commonJS((exports, module) => {\\n  var hashClear = require_hashClear();\\n  var hashDelete = require_hashDelete();\\n  var hashGet = require_hashGet();\\n  var hashHas = require_hashHas();\\n  var hashSet = require_hashSet();\\n  function Hash(entries) {\\n    var index = -1, length = entries == null ? 0 : entries.length;\\n    this.clear();\\n    while (++index < length) {\\n      var entry = entries[index];\\n      this.set(entry[0], entry[1]);\\n    }\\n  }\\n  Hash.prototype.clear = hashClear;\\n  Hash.prototype[\\\\\\\"delete\\\\\\\"] = hashDelete;\\n  Hash.prototype.get = hashGet;\\n  Hash.prototype.has = hashHas;\\n  Hash.prototype.set = hashSet;\\n  module.exports = Hash;\\n});\\n\\n// ../../../node_modules/lodash/_mapCacheClear.js\\nvar require_mapCacheClear = __commonJS((exports, module) => {\\n  var Hash = require_Hash();\\n  var ListCache = require_ListCache();\\n  var Map2 = require_Map();\\n  function mapCacheClear() {\\n    this.size = 0;\\n    this.__data__ = {\\n      hash: new Hash(),\\n      map: new (Map2 || ListCache)(),\\n      string: new Hash()\\n    };\\n  }\\n  module.exports = mapCacheClear;\\n});\\n\\n// ../../../node_modules/lodash/_isKeyable.js\\nvar require_isKeyable = __commonJS((exports, module) => {\\n  function isKeyable(value) {\\n    var type = typeof value;\\n    return type == \\\\\\\"string\\\\\\\" || type == \\\\\\\"number\\\\\\\" || type == \\\\\\\"symbol\\\\\\\" || type == \\\\\\\"boolean\\\\\\\" ? value !== \\\\\\\"__proto__\\\\\\\" : value === null;\\n  }\\n  module.exports = isKeyable;\\n});\\n\\n// ../../../node_modules/lodash/_getMapData.js\\nvar require_getMapData = __commonJS((exports, module) => {\\n  var isKeyable = require_isKeyable();\\n  function getMapData(map, key) {\\n    var data = map.__data__;\\n    return isKeyable(key) ? data[typeof key == \\\\\\\"string\\\\\\\" ? \\\\\\\"string\\\\\\\" : \\\\\\\"hash\\\\\\\"] : data.map;\\n  }\\n  module.exports = getMapData;\\n});\\n\\n// ../../../node_modules/lodash/_mapCacheDelete.js\\nvar require_mapCacheDelete = __commonJS((exports, module) => {\\n  var getMapData = require_getMapData();\\n  function mapCacheDelete(key) {\\n    var result = getMapData(this, key)[\\\\\\\"delete\\\\\\\"](key);\\n    this.size -= result ? 1 : 0;\\n    return result;\\n  }\\n  module.exports = mapCacheDelete;\\n});\\n\\n// ../../../node_modules/lodash/_mapCacheGet.js\\nvar require_mapCacheGet = __commonJS((exports, module) => {\\n  var getMapData = require_getMapData();\\n  function mapCacheGet(key) {\\n    return getMapData(this, key).get(key);\\n  }\\n  module.exports = mapCacheGet;\\n});\\n\\n// ../../../node_modules/lodash/_mapCacheHas.js\\nvar require_mapCacheHas = __commonJS((exports, module) => {\\n  var getMapData = require_getMapData();\\n  function mapCacheHas(key) {\\n    return getMapData(this, key).has(key);\\n  }\\n  module.exports = mapCacheHas;\\n});\\n\\n// ../../../node_modules/lodash/_mapCacheSet.js\\nvar require_mapCacheSet = __commonJS((exports, module) => {\\n  var getMapData = require_getMapData();\\n  function mapCacheSet(key, value) {\\n    var data = getMapData(this, key), size = data.size;\\n    data.set(key, value);\\n    this.size += data.size == size ? 0 : 1;\\n    return this;\\n  }\\n  module.exports = mapCacheSet;\\n});\\n\\n// ../../../node_modules/lodash/_MapCache.js\\nvar require_MapCache = __commonJS((exports, module) => {\\n  var mapCacheClear = require_mapCacheClear();\\n  var mapCacheDelete = require_mapCacheDelete();\\n  var mapCacheGet = require_mapCacheGet();\\n  var mapCacheHas = require_mapCacheHas();\\n  var mapCacheSet = require_mapCacheSet();\\n  function MapCache(entries) {\\n    var index = -1, length = entries == null ? 0 : entries.length;\\n    this.clear();\\n    while (++index < length) {\\n      var entry = entries[index];\\n      this.set(entry[0], entry[1]);\\n    }\\n  }\\n  MapCache.prototype.clear = mapCacheClear;\\n  MapCache.prototype[\\\\\\\"delete\\\\\\\"] = mapCacheDelete;\\n  MapCache.prototype.get = mapCacheGet;\\n  MapCache.prototype.has = mapCacheHas;\\n  MapCache.prototype.set = mapCacheSet;\\n  module.exports = MapCache;\\n});\\n\\n// ../../../node_modules/lodash/_stackSet.js\\nvar require_stackSet = __commonJS((exports, module) => {\\n  var ListCache = require_ListCache();\\n  var Map2 = require_Map();\\n  var MapCache = require_MapCache();\\n  var LARGE_ARRAY_SIZE = 200;\\n  function stackSet(key, value) {\\n    var data = this.__data__;\\n    if (data instanceof ListCache) {\\n      var pairs = data.__data__;\\n      if (!Map2 || pairs.length < LARGE_ARRAY_SIZE - 1) {\\n        pairs.push([key, value]);\\n        this.size = ++data.size;\\n        return this;\\n      }\\n      data = this.__data__ = new MapCache(pairs);\\n    }\\n    data.set(key, value);\\n    this.size = data.size;\\n    return this;\\n  }\\n  module.exports = stackSet;\\n});\\n\\n// ../../../node_modules/lodash/_Stack.js\\nvar require_Stack = __commonJS((exports, module) => {\\n  var ListCache = require_ListCache();\\n  var stackClear = require_stackClear();\\n  var stackDelete = require_stackDelete();\\n  var stackGet = require_stackGet();\\n  var stackHas = require_stackHas();\\n  var stackSet = require_stackSet();\\n  function Stack(entries) {\\n    var data = this.__data__ = new ListCache(entries);\\n    this.size = data.size;\\n  }\\n  Stack.prototype.clear = stackClear;\\n  Stack.prototype[\\\\\\\"delete\\\\\\\"] = stackDelete;\\n  Stack.prototype.get = stackGet;\\n  Stack.prototype.has = stackHas;\\n  Stack.prototype.set = stackSet;\\n  module.exports = Stack;\\n});\\n\\n// ../../../node_modules/lodash/_arrayEach.js\\nvar require_arrayEach = __commonJS((exports, module) => {\\n  function arrayEach(array, iteratee) {\\n    var index = -1, length = array == null ? 0 : array.length;\\n    while (++index < length) {\\n      if (iteratee(array[index], index, array) === false) {\\n        break;\\n      }\\n    }\\n    return array;\\n  }\\n  module.exports = arrayEach;\\n});\\n\\n// ../../../node_modules/lodash/_defineProperty.js\\nvar require_defineProperty = __commonJS((exports, module) => {\\n  var getNative = require_getNative();\\n  var defineProperty = function() {\\n    try {\\n      var func = getNative(Object, \\\\\\\"defineProperty\\\\\\\");\\n      func({}, \\\\\\\"\\\\\\\", {});\\n      return func;\\n    } catch (e) {\\n    }\\n  }();\\n  module.exports = defineProperty;\\n});\\n\\n// ../../../node_modules/lodash/_baseAssignValue.js\\nvar require_baseAssignValue = __commonJS((exports, module) => {\\n  var defineProperty = require_defineProperty();\\n  function baseAssignValue(object, key, value) {\\n    if (key == \\\\\\\"__proto__\\\\\\\" && defineProperty) {\\n      defineProperty(object, key, {\\n        configurable: true,\\n        enumerable: true,\\n        value,\\n        writable: true\\n      });\\n    } else {\\n      object[key] = value;\\n    }\\n  }\\n  module.exports = baseAssignValue;\\n});\\n\\n// ../../../node_modules/lodash/_assignValue.js\\nvar require_assignValue = __commonJS((exports, module) => {\\n  var baseAssignValue = require_baseAssignValue();\\n  var eq = require_eq();\\n  var objectProto = Object.prototype;\\n  var hasOwnProperty = objectProto.hasOwnProperty;\\n  function assignValue(object, key, value) {\\n    var objValue = object[key];\\n    if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) || value === void 0 && !(key in object)) {\\n      baseAssignValue(object, key, value);\\n    }\\n  }\\n  module.exports = assignValue;\\n});\\n\\n// ../../../node_modules/lodash/_copyObject.js\\nvar require_copyObject = __commonJS((exports, module) => {\\n  var assignValue = require_assignValue();\\n  var baseAssignValue = require_baseAssignValue();\\n  function copyObject(source, props, object, customizer) {\\n    var isNew = !object;\\n    object || (object = {});\\n    var index = -1, length = props.length;\\n    while (++index < length) {\\n      var key = props[index];\\n      var newValue = customizer ? customizer(object[key], source[key], key, object, source) : void 0;\\n      if (newValue === void 0) {\\n        newValue = source[key];\\n      }\\n      if (isNew) {\\n        baseAssignValue(object, key, newValue);\\n      } else {\\n        assignValue(object, key, newValue);\\n      }\\n    }\\n    return object;\\n  }\\n  module.exports = copyObject;\\n});\\n\\n// ../../../node_modules/lodash/_baseTimes.js\\nvar require_baseTimes = __commonJS((exports, module) => {\\n  function baseTimes(n, iteratee) {\\n    var index = -1, result = Array(n);\\n    while (++index < n) {\\n      result[index] = iteratee(index);\\n    }\\n    return result;\\n  }\\n  module.exports = baseTimes;\\n});\\n\\n// ../../../node_modules/lodash/isObjectLike.js\\nvar require_isObjectLike = __commonJS((exports, module) => {\\n  function isObjectLike(value) {\\n    return value != null && typeof value == \\\\\\\"object\\\\\\\";\\n  }\\n  module.exports = isObjectLike;\\n});\\n\\n// ../../../node_modules/lodash/_baseIsArguments.js\\nvar require_baseIsArguments = __commonJS((exports, module) => {\\n  var baseGetTag = require_baseGetTag();\\n  var isObjectLike = require_isObjectLike();\\n  var argsTag = \\\\\\\"[object Arguments]\\\\\\\";\\n  function baseIsArguments(value) {\\n    return isObjectLike(value) && baseGetTag(value) == argsTag;\\n  }\\n  module.exports = baseIsArguments;\\n});\\n\\n// ../../../node_modules/lodash/isArguments.js\\nvar require_isArguments = __commonJS((exports, module) => {\\n  var baseIsArguments = require_baseIsArguments();\\n  var isObjectLike = require_isObjectLike();\\n  var objectProto = Object.prototype;\\n  var hasOwnProperty = objectProto.hasOwnProperty;\\n  var propertyIsEnumerable = objectProto.propertyIsEnumerable;\\n  var isArguments = baseIsArguments(function() {\\n    return arguments;\\n  }()) ? baseIsArguments : function(value) {\\n    return isObjectLike(value) && hasOwnProperty.call(value, \\\\\\\"callee\\\\\\\") && !propertyIsEnumerable.call(value, \\\\\\\"callee\\\\\\\");\\n  };\\n  module.exports = isArguments;\\n});\\n\\n// ../../../node_modules/lodash/isArray.js\\nvar require_isArray = __commonJS((exports, module) => {\\n  var isArray = Array.isArray;\\n  module.exports = isArray;\\n});\\n\\n// ../../../node_modules/lodash/stubFalse.js\\nvar require_stubFalse = __commonJS((exports, module) => {\\n  function stubFalse() {\\n    return false;\\n  }\\n  module.exports = stubFalse;\\n});\\n\\n// ../../../node_modules/lodash/isBuffer.js\\nvar require_isBuffer = __commonJS((exports, module) => {\\n  var root = require_root();\\n  var stubFalse = require_stubFalse();\\n  var freeExports = typeof exports == \\\\\\\"object\\\\\\\" && exports && !exports.nodeType && exports;\\n  var freeModule = freeExports && typeof module == \\\\\\\"object\\\\\\\" && module && !module.nodeType && module;\\n  var moduleExports = freeModule && freeModule.exports === freeExports;\\n  var Buffer2 = moduleExports ? root.Buffer : void 0;\\n  var nativeIsBuffer = Buffer2 ? Buffer2.isBuffer : void 0;\\n  var isBuffer = nativeIsBuffer || stubFalse;\\n  module.exports = isBuffer;\\n});\\n\\n// ../../../node_modules/lodash/_isIndex.js\\nvar require_isIndex = __commonJS((exports, module) => {\\n  var MAX_SAFE_INTEGER = 9007199254740991;\\n  var reIsUint = /^(?:0|[1-9]\\\\d*)$/;\\n  function isIndex(value, length) {\\n    var type = typeof value;\\n    length = length == null ? MAX_SAFE_INTEGER : length;\\n    return !!length && (type == \\\\\\\"number\\\\\\\" || type != \\\\\\\"symbol\\\\\\\" && reIsUint.test(value)) && (value > -1 && value % 1 == 0 && value < length);\\n  }\\n  module.exports = isIndex;\\n});\\n\\n// ../../../node_modules/lodash/isLength.js\\nvar require_isLength = __commonJS((exports, module) => {\\n  var MAX_SAFE_INTEGER = 9007199254740991;\\n  function isLength(value) {\\n    return typeof value == \\\\\\\"number\\\\\\\" && value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;\\n  }\\n  module.exports = isLength;\\n});\\n\\n// ../../../node_modules/lodash/_baseIsTypedArray.js\\nvar require_baseIsTypedArray = __commonJS((exports, module) => {\\n  var baseGetTag = require_baseGetTag();\\n  var isLength = require_isLength();\\n  var isObjectLike = require_isObjectLike();\\n  var argsTag = \\\\\\\"[object Arguments]\\\\\\\";\\n  var arrayTag = \\\\\\\"[object Array]\\\\\\\";\\n  var boolTag = \\\\\\\"[object Boolean]\\\\\\\";\\n  var dateTag = \\\\\\\"[object Date]\\\\\\\";\\n  var errorTag = \\\\\\\"[object Error]\\\\\\\";\\n  var funcTag = \\\\\\\"[object Function]\\\\\\\";\\n  var mapTag = \\\\\\\"[object Map]\\\\\\\";\\n  var numberTag = \\\\\\\"[object Number]\\\\\\\";\\n  var objectTag = \\\\\\\"[object Object]\\\\\\\";\\n  var regexpTag = \\\\\\\"[object RegExp]\\\\\\\";\\n  var setTag = \\\\\\\"[object Set]\\\\\\\";\\n  var stringTag = \\\\\\\"[object String]\\\\\\\";\\n  var weakMapTag = \\\\\\\"[object WeakMap]\\\\\\\";\\n  var arrayBufferTag = \\\\\\\"[object ArrayBuffer]\\\\\\\";\\n  var dataViewTag = \\\\\\\"[object DataView]\\\\\\\";\\n  var float32Tag = \\\\\\\"[object Float32Array]\\\\\\\";\\n  var float64Tag = \\\\\\\"[object Float64Array]\\\\\\\";\\n  var int8Tag = \\\\\\\"[object Int8Array]\\\\\\\";\\n  var int16Tag = \\\\\\\"[object Int16Array]\\\\\\\";\\n  var int32Tag = \\\\\\\"[object Int32Array]\\\\\\\";\\n  var uint8Tag = \\\\\\\"[object Uint8Array]\\\\\\\";\\n  var uint8ClampedTag = \\\\\\\"[object Uint8ClampedArray]\\\\\\\";\\n  var uint16Tag = \\\\\\\"[object Uint16Array]\\\\\\\";\\n  var uint32Tag = \\\\\\\"[object Uint32Array]\\\\\\\";\\n  var typedArrayTags = {};\\n  typedArrayTags[float32Tag] = typedArrayTags[float64Tag] = typedArrayTags[int8Tag] = typedArrayTags[int16Tag] = typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] = typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] = typedArrayTags[uint32Tag] = true;\\n  typedArrayTags[argsTag] = typedArrayTags[arrayTag] = typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] = typedArrayTags[dataViewTag] = typedArrayTags[dateTag] = typedArrayTags[errorTag] = typedArrayTags[funcTag] = typedArrayTags[mapTag] = typedArrayTags[numberTag] = typedArrayTags[objectTag] = typedArrayTags[regexpTag] = typedArrayTags[setTag] = typedArrayTags[stringTag] = typedArrayTags[weakMapTag] = false;\\n  function baseIsTypedArray(value) {\\n    return isObjectLike(value) && isLength(value.length) && !!typedArrayTags[baseGetTag(value)];\\n  }\\n  module.exports = baseIsTypedArray;\\n});\\n\\n// ../../../node_modules/lodash/_baseUnary.js\\nvar require_baseUnary = __commonJS((exports, module) => {\\n  function baseUnary(func) {\\n    return function(value) {\\n      return func(value);\\n    };\\n  }\\n  module.exports = baseUnary;\\n});\\n\\n// ../../../node_modules/lodash/_nodeUtil.js\\nvar require_nodeUtil = __commonJS((exports, module) => {\\n  var freeGlobal = require_freeGlobal();\\n  var freeExports = typeof exports == \\\\\\\"object\\\\\\\" && exports && !exports.nodeType && exports;\\n  var freeModule = freeExports && typeof module == \\\\\\\"object\\\\\\\" && module && !module.nodeType && module;\\n  var moduleExports = freeModule && freeModule.exports === freeExports;\\n  var freeProcess = moduleExports && freeGlobal.process;\\n  var nodeUtil = function() {\\n    try {\\n      var types = freeModule && freeModule.require && freeModule.require(\\\\\\\"util\\\\\\\").types;\\n      if (types) {\\n        return types;\\n      }\\n      return freeProcess && freeProcess.binding && freeProcess.binding(\\\\\\\"util\\\\\\\");\\n    } catch (e) {\\n    }\\n  }();\\n  module.exports = nodeUtil;\\n});\\n\\n// ../../../node_modules/lodash/isTypedArray.js\\nvar require_isTypedArray = __commonJS((exports, module) => {\\n  var baseIsTypedArray = require_baseIsTypedArray();\\n  var baseUnary = require_baseUnary();\\n  var nodeUtil = require_nodeUtil();\\n  var nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;\\n  var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;\\n  module.exports = isTypedArray;\\n});\\n\\n// ../../../node_modules/lodash/_arrayLikeKeys.js\\nvar require_arrayLikeKeys = __commonJS((exports, module) => {\\n  var baseTimes = require_baseTimes();\\n  var isArguments = require_isArguments();\\n  var isArray = require_isArray();\\n  var isBuffer = require_isBuffer();\\n  var isIndex = require_isIndex();\\n  var isTypedArray = require_isTypedArray();\\n  var objectProto = Object.prototype;\\n  var hasOwnProperty = objectProto.hasOwnProperty;\\n  function arrayLikeKeys(value, inherited) {\\n    var isArr = isArray(value), isArg = !isArr && isArguments(value), isBuff = !isArr && !isArg && isBuffer(value), isType = !isArr && !isArg && !isBuff && isTypedArray(value), skipIndexes = isArr || isArg || isBuff || isType, result = skipIndexes ? baseTimes(value.length, String) : [], length = result.length;\\n    for (var key in value) {\\n      if ((inherited || hasOwnProperty.call(value, key)) && !(skipIndexes && (key == \\\\\\\"length\\\\\\\" || isBuff && (key == \\\\\\\"offset\\\\\\\" || key == \\\\\\\"parent\\\\\\\") || isType && (key == \\\\\\\"buffer\\\\\\\" || key == \\\\\\\"byteLength\\\\\\\" || key == \\\\\\\"byteOffset\\\\\\\") || isIndex(key, length)))) {\\n        result.push(key);\\n      }\\n    }\\n    return result;\\n  }\\n  module.exports = arrayLikeKeys;\\n});\\n\\n// ../../../node_modules/lodash/_isPrototype.js\\nvar require_isPrototype = __commonJS((exports, module) => {\\n  var objectProto = Object.prototype;\\n  function isPrototype(value) {\\n    var Ctor = value && value.constructor, proto = typeof Ctor == \\\\\\\"function\\\\\\\" && Ctor.prototype || objectProto;\\n    return value === proto;\\n  }\\n  module.exports = isPrototype;\\n});\\n\\n// ../../../node_modules/lodash/_overArg.js\\nvar require_overArg = __commonJS((exports, module) => {\\n  function overArg(func, transform) {\\n    return function(arg) {\\n      return func(transform(arg));\\n    };\\n  }\\n  module.exports = overArg;\\n});\\n\\n// ../../../node_modules/lodash/_nativeKeys.js\\nvar require_nativeKeys = __commonJS((exports, module) => {\\n  var overArg = require_overArg();\\n  var nativeKeys = overArg(Object.keys, Object);\\n  module.exports = nativeKeys;\\n});\\n\\n// ../../../node_modules/lodash/_baseKeys.js\\nvar require_baseKeys = __commonJS((exports, module) => {\\n  var isPrototype = require_isPrototype();\\n  var nativeKeys = require_nativeKeys();\\n  var objectProto = Object.prototype;\\n  var hasOwnProperty = objectProto.hasOwnProperty;\\n  function baseKeys(object) {\\n    if (!isPrototype(object)) {\\n      return nativeKeys(object);\\n    }\\n    var result = [];\\n    for (var key in Object(object)) {\\n      if (hasOwnProperty.call(object, key) && key != \\\\\\\"constructor\\\\\\\") {\\n        result.push(key);\\n      }\\n    }\\n    return result;\\n  }\\n  module.exports = baseKeys;\\n});\\n\\n// ../../../node_modules/lodash/isArrayLike.js\\nvar require_isArrayLike = __commonJS((exports, module) => {\\n  var isFunction = require_isFunction();\\n  var isLength = require_isLength();\\n  function isArrayLike(value) {\\n    return value != null && isLength(value.length) && !isFunction(value);\\n  }\\n  module.exports = isArrayLike;\\n});\\n\\n// ../../../node_modules/lodash/keys.js\\nvar require_keys = __commonJS((exports, module) => {\\n  var arrayLikeKeys = require_arrayLikeKeys();\\n  var baseKeys = require_baseKeys();\\n  var isArrayLike = require_isArrayLike();\\n  function keys(object) {\\n    return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);\\n  }\\n  module.exports = keys;\\n});\\n\\n// ../../../node_modules/lodash/_baseAssign.js\\nvar require_baseAssign = __commonJS((exports, module) => {\\n  var copyObject = require_copyObject();\\n  var keys = require_keys();\\n  function baseAssign(object, source) {\\n    return object && copyObject(source, keys(source), object);\\n  }\\n  module.exports = baseAssign;\\n});\\n\\n// ../../../node_modules/lodash/_nativeKeysIn.js\\nvar require_nativeKeysIn = __commonJS((exports, module) => {\\n  function nativeKeysIn(object) {\\n    var result = [];\\n    if (object != null) {\\n      for (var key in Object(object)) {\\n        result.push(key);\\n      }\\n    }\\n    return result;\\n  }\\n  module.exports = nativeKeysIn;\\n});\\n\\n// ../../../node_modules/lodash/_baseKeysIn.js\\nvar require_baseKeysIn = __commonJS((exports, module) => {\\n  var isObject = require_isObject();\\n  var isPrototype = require_isPrototype();\\n  var nativeKeysIn = require_nativeKeysIn();\\n  var objectProto = Object.prototype;\\n  var hasOwnProperty = objectProto.hasOwnProperty;\\n  function baseKeysIn(object) {\\n    if (!isObject(object)) {\\n      return nativeKeysIn(object);\\n    }\\n    var isProto = isPrototype(object), result = [];\\n    for (var key in object) {\\n      if (!(key == \\\\\\\"constructor\\\\\\\" && (isProto || !hasOwnProperty.call(object, key)))) {\\n        result.push(key);\\n      }\\n    }\\n    return result;\\n  }\\n  module.exports = baseKeysIn;\\n});\\n\\n// ../../../node_modules/lodash/keysIn.js\\nvar require_keysIn = __commonJS((exports, module) => {\\n  var arrayLikeKeys = require_arrayLikeKeys();\\n  var baseKeysIn = require_baseKeysIn();\\n  var isArrayLike = require_isArrayLike();\\n  function keysIn(object) {\\n    return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);\\n  }\\n  module.exports = keysIn;\\n});\\n\\n// ../../../node_modules/lodash/_baseAssignIn.js\\nvar require_baseAssignIn = __commonJS((exports, module) => {\\n  var copyObject = require_copyObject();\\n  var keysIn = require_keysIn();\\n  function baseAssignIn(object, source) {\\n    return object && copyObject(source, keysIn(source), object);\\n  }\\n  module.exports = baseAssignIn;\\n});\\n\\n// ../../../node_modules/lodash/_cloneBuffer.js\\nvar require_cloneBuffer = __commonJS((exports, module) => {\\n  var root = require_root();\\n  var freeExports = typeof exports == \\\\\\\"object\\\\\\\" && exports && !exports.nodeType && exports;\\n  var freeModule = freeExports && typeof module == \\\\\\\"object\\\\\\\" && module && !module.nodeType && module;\\n  var moduleExports = freeModule && freeModule.exports === freeExports;\\n  var Buffer2 = moduleExports ? root.Buffer : void 0;\\n  var allocUnsafe = Buffer2 ? Buffer2.allocUnsafe : void 0;\\n  function cloneBuffer(buffer, isDeep) {\\n    if (isDeep) {\\n      return buffer.slice();\\n    }\\n    var length = buffer.length, result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);\\n    buffer.copy(result);\\n    return result;\\n  }\\n  module.exports = cloneBuffer;\\n});\\n\\n// ../../../node_modules/lodash/_copyArray.js\\nvar require_copyArray = __commonJS((exports, module) => {\\n  function copyArray2(source, array) {\\n    var index = -1, length = source.length;\\n    array || (array = Array(length));\\n    while (++index < length) {\\n      array[index] = source[index];\\n    }\\n    return array;\\n  }\\n  module.exports = copyArray2;\\n});\\n\\n// ../../../node_modules/lodash/_arrayFilter.js\\nvar require_arrayFilter = __commonJS((exports, module) => {\\n  function arrayFilter(array, predicate) {\\n    var index = -1, length = array == null ? 0 : array.length, resIndex = 0, result = [];\\n    while (++index < length) {\\n      var value = array[index];\\n      if (predicate(value, index, array)) {\\n        result[resIndex++] = value;\\n      }\\n    }\\n    return result;\\n  }\\n  module.exports = arrayFilter;\\n});\\n\\n// ../../../node_modules/lodash/stubArray.js\\nvar require_stubArray = __commonJS((exports, module) => {\\n  function stubArray() {\\n    return [];\\n  }\\n  module.exports = stubArray;\\n});\\n\\n// ../../../node_modules/lodash/_getSymbols.js\\nvar require_getSymbols = __commonJS((exports, module) => {\\n  var arrayFilter = require_arrayFilter();\\n  var stubArray = require_stubArray();\\n  var objectProto = Object.prototype;\\n  var propertyIsEnumerable = objectProto.propertyIsEnumerable;\\n  var nativeGetSymbols = Object.getOwnPropertySymbols;\\n  var getSymbols = !nativeGetSymbols ? stubArray : function(object) {\\n    if (object == null) {\\n      return [];\\n    }\\n    object = Object(object);\\n    return arrayFilter(nativeGetSymbols(object), function(symbol) {\\n      return propertyIsEnumerable.call(object, symbol);\\n    });\\n  };\\n  module.exports = getSymbols;\\n});\\n\\n// ../../../node_modules/lodash/_copySymbols.js\\nvar require_copySymbols = __commonJS((exports, module) => {\\n  var copyObject = require_copyObject();\\n  var getSymbols = require_getSymbols();\\n  function copySymbols(source, object) {\\n    return copyObject(source, getSymbols(source), object);\\n  }\\n  module.exports = copySymbols;\\n});\\n\\n// ../../../node_modules/lodash/_arrayPush.js\\nvar require_arrayPush = __commonJS((exports, module) => {\\n  function arrayPush(array, values) {\\n    var index = -1, length = values.length, offset = array.length;\\n    while (++index < length) {\\n      array[offset + index] = values[index];\\n    }\\n    return array;\\n  }\\n  module.exports = arrayPush;\\n});\\n\\n// ../../../node_modules/lodash/_getPrototype.js\\nvar require_getPrototype = __commonJS((exports, module) => {\\n  var overArg = require_overArg();\\n  var getPrototype = overArg(Object.getPrototypeOf, Object);\\n  module.exports = getPrototype;\\n});\\n\\n// ../../../node_modules/lodash/_getSymbolsIn.js\\nvar require_getSymbolsIn = __commonJS((exports, module) => {\\n  var arrayPush = require_arrayPush();\\n  var getPrototype = require_getPrototype();\\n  var getSymbols = require_getSymbols();\\n  var stubArray = require_stubArray();\\n  var nativeGetSymbols = Object.getOwnPropertySymbols;\\n  var getSymbolsIn = !nativeGetSymbols ? stubArray : function(object) {\\n    var result = [];\\n    while (object) {\\n      arrayPush(result, getSymbols(object));\\n      object = getPrototype(object);\\n    }\\n    return result;\\n  };\\n  module.exports = getSymbolsIn;\\n});\\n\\n// ../../../node_modules/lodash/_copySymbolsIn.js\\nvar require_copySymbolsIn = __commonJS((exports, module) => {\\n  var copyObject = require_copyObject();\\n  var getSymbolsIn = require_getSymbolsIn();\\n  function copySymbolsIn(source, object) {\\n    return copyObject(source, getSymbolsIn(source), object);\\n  }\\n  module.exports = copySymbolsIn;\\n});\\n\\n// ../../../node_modules/lodash/_baseGetAllKeys.js\\nvar require_baseGetAllKeys = __commonJS((exports, module) => {\\n  var arrayPush = require_arrayPush();\\n  var isArray = require_isArray();\\n  function baseGetAllKeys(object, keysFunc, symbolsFunc) {\\n    var result = keysFunc(object);\\n    return isArray(object) ? result : arrayPush(result, symbolsFunc(object));\\n  }\\n  module.exports = baseGetAllKeys;\\n});\\n\\n// ../../../node_modules/lodash/_getAllKeys.js\\nvar require_getAllKeys = __commonJS((exports, module) => {\\n  var baseGetAllKeys = require_baseGetAllKeys();\\n  var getSymbols = require_getSymbols();\\n  var keys = require_keys();\\n  function getAllKeys(object) {\\n    return baseGetAllKeys(object, keys, getSymbols);\\n  }\\n  module.exports = getAllKeys;\\n});\\n\\n// ../../../node_modules/lodash/_getAllKeysIn.js\\nvar require_getAllKeysIn = __commonJS((exports, module) => {\\n  var baseGetAllKeys = require_baseGetAllKeys();\\n  var getSymbolsIn = require_getSymbolsIn();\\n  var keysIn = require_keysIn();\\n  function getAllKeysIn(object) {\\n    return baseGetAllKeys(object, keysIn, getSymbolsIn);\\n  }\\n  module.exports = getAllKeysIn;\\n});\\n\\n// ../../../node_modules/lodash/_DataView.js\\nvar require_DataView = __commonJS((exports, module) => {\\n  var getNative = require_getNative();\\n  var root = require_root();\\n  var DataView = getNative(root, \\\\\\\"DataView\\\\\\\");\\n  module.exports = DataView;\\n});\\n\\n// ../../../node_modules/lodash/_Promise.js\\nvar require_Promise = __commonJS((exports, module) => {\\n  var getNative = require_getNative();\\n  var root = require_root();\\n  var Promise2 = getNative(root, \\\\\\\"Promise\\\\\\\");\\n  module.exports = Promise2;\\n});\\n\\n// ../../../node_modules/lodash/_Set.js\\nvar require_Set = __commonJS((exports, module) => {\\n  var getNative = require_getNative();\\n  var root = require_root();\\n  var Set2 = getNative(root, \\\\\\\"Set\\\\\\\");\\n  module.exports = Set2;\\n});\\n\\n// ../../../node_modules/lodash/_WeakMap.js\\nvar require_WeakMap = __commonJS((exports, module) => {\\n  var getNative = require_getNative();\\n  var root = require_root();\\n  var WeakMap2 = getNative(root, \\\\\\\"WeakMap\\\\\\\");\\n  module.exports = WeakMap2;\\n});\\n\\n// ../../../node_modules/lodash/_getTag.js\\nvar require_getTag = __commonJS((exports, module) => {\\n  var DataView = require_DataView();\\n  var Map2 = require_Map();\\n  var Promise2 = require_Promise();\\n  var Set2 = require_Set();\\n  var WeakMap2 = require_WeakMap();\\n  var baseGetTag = require_baseGetTag();\\n  var toSource = require_toSource();\\n  var mapTag = \\\\\\\"[object Map]\\\\\\\";\\n  var objectTag = \\\\\\\"[object Object]\\\\\\\";\\n  var promiseTag = \\\\\\\"[object Promise]\\\\\\\";\\n  var setTag = \\\\\\\"[object Set]\\\\\\\";\\n  var weakMapTag = \\\\\\\"[object WeakMap]\\\\\\\";\\n  var dataViewTag = \\\\\\\"[object DataView]\\\\\\\";\\n  var dataViewCtorString = toSource(DataView);\\n  var mapCtorString = toSource(Map2);\\n  var promiseCtorString = toSource(Promise2);\\n  var setCtorString = toSource(Set2);\\n  var weakMapCtorString = toSource(WeakMap2);\\n  var getTag = baseGetTag;\\n  if (DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag || Map2 && getTag(new Map2()) != mapTag || Promise2 && getTag(Promise2.resolve()) != promiseTag || Set2 && getTag(new Set2()) != setTag || WeakMap2 && getTag(new WeakMap2()) != weakMapTag) {\\n    getTag = function(value) {\\n      var result = baseGetTag(value), Ctor = result == objectTag ? value.constructor : void 0, ctorString = Ctor ? toSource(Ctor) : \\\\\\\"\\\\\\\";\\n      if (ctorString) {\\n        switch (ctorString) {\\n          case dataViewCtorString:\\n            return dataViewTag;\\n          case mapCtorString:\\n            return mapTag;\\n          case promiseCtorString:\\n            return promiseTag;\\n          case setCtorString:\\n            return setTag;\\n          case weakMapCtorString:\\n            return weakMapTag;\\n        }\\n      }\\n      return result;\\n    };\\n  }\\n  module.exports = getTag;\\n});\\n\\n// ../../../node_modules/lodash/_initCloneArray.js\\nvar require_initCloneArray = __commonJS((exports, module) => {\\n  var objectProto = Object.prototype;\\n  var hasOwnProperty = objectProto.hasOwnProperty;\\n  function initCloneArray(array) {\\n    var length = array.length, result = new array.constructor(length);\\n    if (length && typeof array[0] == \\\\\\\"string\\\\\\\" && hasOwnProperty.call(array, \\\\\\\"index\\\\\\\")) {\\n      result.index = array.index;\\n      result.input = array.input;\\n    }\\n    return result;\\n  }\\n  module.exports = initCloneArray;\\n});\\n\\n// ../../../node_modules/lodash/_Uint8Array.js\\nvar require_Uint8Array = __commonJS((exports, module) => {\\n  var root = require_root();\\n  var Uint8Array2 = root.Uint8Array;\\n  module.exports = Uint8Array2;\\n});\\n\\n// ../../../node_modules/lodash/_cloneArrayBuffer.js\\nvar require_cloneArrayBuffer = __commonJS((exports, module) => {\\n  var Uint8Array2 = require_Uint8Array();\\n  function cloneArrayBuffer(arrayBuffer) {\\n    var result = new arrayBuffer.constructor(arrayBuffer.byteLength);\\n    new Uint8Array2(result).set(new Uint8Array2(arrayBuffer));\\n    return result;\\n  }\\n  module.exports = cloneArrayBuffer;\\n});\\n\\n// ../../../node_modules/lodash/_cloneDataView.js\\nvar require_cloneDataView = __commonJS((exports, module) => {\\n  var cloneArrayBuffer = require_cloneArrayBuffer();\\n  function cloneDataView(dataView, isDeep) {\\n    var buffer = isDeep ? cloneArrayBuffer(dataView.buffer) : dataView.buffer;\\n    return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength);\\n  }\\n  module.exports = cloneDataView;\\n});\\n\\n// ../../../node_modules/lodash/_cloneRegExp.js\\nvar require_cloneRegExp = __commonJS((exports, module) => {\\n  var reFlags = /\\\\w*$/;\\n  function cloneRegExp(regexp) {\\n    var result = new regexp.constructor(regexp.source, reFlags.exec(regexp));\\n    result.lastIndex = regexp.lastIndex;\\n    return result;\\n  }\\n  module.exports = cloneRegExp;\\n});\\n\\n// ../../../node_modules/lodash/_cloneSymbol.js\\nvar require_cloneSymbol = __commonJS((exports, module) => {\\n  var Symbol2 = require_Symbol();\\n  var symbolProto = Symbol2 ? Symbol2.prototype : void 0;\\n  var symbolValueOf = symbolProto ? symbolProto.valueOf : void 0;\\n  function cloneSymbol(symbol) {\\n    return symbolValueOf ? Object(symbolValueOf.call(symbol)) : {};\\n  }\\n  module.exports = cloneSymbol;\\n});\\n\\n// ../../../node_modules/lodash/_cloneTypedArray.js\\nvar require_cloneTypedArray = __commonJS((exports, module) => {\\n  var cloneArrayBuffer = require_cloneArrayBuffer();\\n  function cloneTypedArray(typedArray, isDeep) {\\n    var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer;\\n    return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);\\n  }\\n  module.exports = cloneTypedArray;\\n});\\n\\n// ../../../node_modules/lodash/_initCloneByTag.js\\nvar require_initCloneByTag = __commonJS((exports, module) => {\\n  var cloneArrayBuffer = require_cloneArrayBuffer();\\n  var cloneDataView = require_cloneDataView();\\n  var cloneRegExp = require_cloneRegExp();\\n  var cloneSymbol = require_cloneSymbol();\\n  var cloneTypedArray = require_cloneTypedArray();\\n  var boolTag = \\\\\\\"[object Boolean]\\\\\\\";\\n  var dateTag = \\\\\\\"[object Date]\\\\\\\";\\n  var mapTag = \\\\\\\"[object Map]\\\\\\\";\\n  var numberTag = \\\\\\\"[object Number]\\\\\\\";\\n  var regexpTag = \\\\\\\"[object RegExp]\\\\\\\";\\n  var setTag = \\\\\\\"[object Set]\\\\\\\";\\n  var stringTag = \\\\\\\"[object String]\\\\\\\";\\n  var symbolTag = \\\\\\\"[object Symbol]\\\\\\\";\\n  var arrayBufferTag = \\\\\\\"[object ArrayBuffer]\\\\\\\";\\n  var dataViewTag = \\\\\\\"[object DataView]\\\\\\\";\\n  var float32Tag = \\\\\\\"[object Float32Array]\\\\\\\";\\n  var float64Tag = \\\\\\\"[object Float64Array]\\\\\\\";\\n  var int8Tag = \\\\\\\"[object Int8Array]\\\\\\\";\\n  var int16Tag = \\\\\\\"[object Int16Array]\\\\\\\";\\n  var int32Tag = \\\\\\\"[object Int32Array]\\\\\\\";\\n  var uint8Tag = \\\\\\\"[object Uint8Array]\\\\\\\";\\n  var uint8ClampedTag = \\\\\\\"[object Uint8ClampedArray]\\\\\\\";\\n  var uint16Tag = \\\\\\\"[object Uint16Array]\\\\\\\";\\n  var uint32Tag = \\\\\\\"[object Uint32Array]\\\\\\\";\\n  function initCloneByTag(object, tag, isDeep) {\\n    var Ctor = object.constructor;\\n    switch (tag) {\\n      case arrayBufferTag:\\n        return cloneArrayBuffer(object);\\n      case boolTag:\\n      case dateTag:\\n        return new Ctor(+object);\\n      case dataViewTag:\\n        return cloneDataView(object, isDeep);\\n      case float32Tag:\\n      case float64Tag:\\n      case int8Tag:\\n      case int16Tag:\\n      case int32Tag:\\n      case uint8Tag:\\n      case uint8ClampedTag:\\n      case uint16Tag:\\n      case uint32Tag:\\n        return cloneTypedArray(object, isDeep);\\n      case mapTag:\\n        return new Ctor();\\n      case numberTag:\\n      case stringTag:\\n        return new Ctor(object);\\n      case regexpTag:\\n        return cloneRegExp(object);\\n      case setTag:\\n        return new Ctor();\\n      case symbolTag:\\n        return cloneSymbol(object);\\n    }\\n  }\\n  module.exports = initCloneByTag;\\n});\\n\\n// ../../../node_modules/lodash/_baseCreate.js\\nvar require_baseCreate = __commonJS((exports, module) => {\\n  var isObject = require_isObject();\\n  var objectCreate = Object.create;\\n  var baseCreate = function() {\\n    function object() {\\n    }\\n    return function(proto) {\\n      if (!isObject(proto)) {\\n        return {};\\n      }\\n      if (objectCreate) {\\n        return objectCreate(proto);\\n      }\\n      object.prototype = proto;\\n      var result = new object();\\n      object.prototype = void 0;\\n      return result;\\n    };\\n  }();\\n  module.exports = baseCreate;\\n});\\n\\n// ../../../node_modules/lodash/_initCloneObject.js\\nvar require_initCloneObject = __commonJS((exports, module) => {\\n  var baseCreate = require_baseCreate();\\n  var getPrototype = require_getPrototype();\\n  var isPrototype = require_isPrototype();\\n  function initCloneObject(object) {\\n    return typeof object.constructor == \\\\\\\"function\\\\\\\" && !isPrototype(object) ? baseCreate(getPrototype(object)) : {};\\n  }\\n  module.exports = initCloneObject;\\n});\\n\\n// ../../../node_modules/lodash/_baseIsMap.js\\nvar require_baseIsMap = __commonJS((exports, module) => {\\n  var getTag = require_getTag();\\n  var isObjectLike = require_isObjectLike();\\n  var mapTag = \\\\\\\"[object Map]\\\\\\\";\\n  function baseIsMap(value) {\\n    return isObjectLike(value) && getTag(value) == mapTag;\\n  }\\n  module.exports = baseIsMap;\\n});\\n\\n// ../../../node_modules/lodash/isMap.js\\nvar require_isMap = __commonJS((exports, module) => {\\n  var baseIsMap = require_baseIsMap();\\n  var baseUnary = require_baseUnary();\\n  var nodeUtil = require_nodeUtil();\\n  var nodeIsMap = nodeUtil && nodeUtil.isMap;\\n  var isMap = nodeIsMap ? baseUnary(nodeIsMap) : baseIsMap;\\n  module.exports = isMap;\\n});\\n\\n// ../../../node_modules/lodash/_baseIsSet.js\\nvar require_baseIsSet = __commonJS((exports, module) => {\\n  var getTag = require_getTag();\\n  var isObjectLike = require_isObjectLike();\\n  var setTag = \\\\\\\"[object Set]\\\\\\\";\\n  function baseIsSet(value) {\\n    return isObjectLike(value) && getTag(value) == setTag;\\n  }\\n  module.exports = baseIsSet;\\n});\\n\\n// ../../../node_modules/lodash/isSet.js\\nvar require_isSet = __commonJS((exports, module) => {\\n  var baseIsSet = require_baseIsSet();\\n  var baseUnary = require_baseUnary();\\n  var nodeUtil = require_nodeUtil();\\n  var nodeIsSet = nodeUtil && nodeUtil.isSet;\\n  var isSet = nodeIsSet ? baseUnary(nodeIsSet) : baseIsSet;\\n  module.exports = isSet;\\n});\\n\\n// ../../../node_modules/lodash/_baseClone.js\\nvar require_baseClone = __commonJS((exports, module) => {\\n  var Stack = require_Stack();\\n  var arrayEach = require_arrayEach();\\n  var assignValue = require_assignValue();\\n  var baseAssign = require_baseAssign();\\n  var baseAssignIn = require_baseAssignIn();\\n  var cloneBuffer = require_cloneBuffer();\\n  var copyArray2 = require_copyArray();\\n  var copySymbols = require_copySymbols();\\n  var copySymbolsIn = require_copySymbolsIn();\\n  var getAllKeys = require_getAllKeys();\\n  var getAllKeysIn = require_getAllKeysIn();\\n  var getTag = require_getTag();\\n  var initCloneArray = require_initCloneArray();\\n  var initCloneByTag = require_initCloneByTag();\\n  var initCloneObject = require_initCloneObject();\\n  var isArray = require_isArray();\\n  var isBuffer = require_isBuffer();\\n  var isMap = require_isMap();\\n  var isObject = require_isObject();\\n  var isSet = require_isSet();\\n  var keys = require_keys();\\n  var keysIn = require_keysIn();\\n  var CLONE_DEEP_FLAG = 1;\\n  var CLONE_FLAT_FLAG = 2;\\n  var CLONE_SYMBOLS_FLAG = 4;\\n  var argsTag = \\\\\\\"[object Arguments]\\\\\\\";\\n  var arrayTag = \\\\\\\"[object Array]\\\\\\\";\\n  var boolTag = \\\\\\\"[object Boolean]\\\\\\\";\\n  var dateTag = \\\\\\\"[object Date]\\\\\\\";\\n  var errorTag = \\\\\\\"[object Error]\\\\\\\";\\n  var funcTag = \\\\\\\"[object Function]\\\\\\\";\\n  var genTag = \\\\\\\"[object GeneratorFunction]\\\\\\\";\\n  var mapTag = \\\\\\\"[object Map]\\\\\\\";\\n  var numberTag = \\\\\\\"[object Number]\\\\\\\";\\n  var objectTag = \\\\\\\"[object Object]\\\\\\\";\\n  var regexpTag = \\\\\\\"[object RegExp]\\\\\\\";\\n  var setTag = \\\\\\\"[object Set]\\\\\\\";\\n  var stringTag = \\\\\\\"[object String]\\\\\\\";\\n  var symbolTag = \\\\\\\"[object Symbol]\\\\\\\";\\n  var weakMapTag = \\\\\\\"[object WeakMap]\\\\\\\";\\n  var arrayBufferTag = \\\\\\\"[object ArrayBuffer]\\\\\\\";\\n  var dataViewTag = \\\\\\\"[object DataView]\\\\\\\";\\n  var float32Tag = \\\\\\\"[object Float32Array]\\\\\\\";\\n  var float64Tag = \\\\\\\"[object Float64Array]\\\\\\\";\\n  var int8Tag = \\\\\\\"[object Int8Array]\\\\\\\";\\n  var int16Tag = \\\\\\\"[object Int16Array]\\\\\\\";\\n  var int32Tag = \\\\\\\"[object Int32Array]\\\\\\\";\\n  var uint8Tag = \\\\\\\"[object Uint8Array]\\\\\\\";\\n  var uint8ClampedTag = \\\\\\\"[object Uint8ClampedArray]\\\\\\\";\\n  var uint16Tag = \\\\\\\"[object Uint16Array]\\\\\\\";\\n  var uint32Tag = \\\\\\\"[object Uint32Array]\\\\\\\";\\n  var cloneableTags = {};\\n  cloneableTags[argsTag] = cloneableTags[arrayTag] = cloneableTags[arrayBufferTag] = cloneableTags[dataViewTag] = cloneableTags[boolTag] = cloneableTags[dateTag] = cloneableTags[float32Tag] = cloneableTags[float64Tag] = cloneableTags[int8Tag] = cloneableTags[int16Tag] = cloneableTags[int32Tag] = cloneableTags[mapTag] = cloneableTags[numberTag] = cloneableTags[objectTag] = cloneableTags[regexpTag] = cloneableTags[setTag] = cloneableTags[stringTag] = cloneableTags[symbolTag] = cloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] = cloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true;\\n  cloneableTags[errorTag] = cloneableTags[funcTag] = cloneableTags[weakMapTag] = false;\\n  function baseClone(value, bitmask, customizer, key, object, stack) {\\n    var result, isDeep = bitmask & CLONE_DEEP_FLAG, isFlat = bitmask & CLONE_FLAT_FLAG, isFull = bitmask & CLONE_SYMBOLS_FLAG;\\n    if (customizer) {\\n      result = object ? customizer(value, key, object, stack) : customizer(value);\\n    }\\n    if (result !== void 0) {\\n      return result;\\n    }\\n    if (!isObject(value)) {\\n      return value;\\n    }\\n    var isArr = isArray(value);\\n    if (isArr) {\\n      result = initCloneArray(value);\\n      if (!isDeep) {\\n        return copyArray2(value, result);\\n      }\\n    } else {\\n      var tag = getTag(value), isFunc = tag == funcTag || tag == genTag;\\n      if (isBuffer(value)) {\\n        return cloneBuffer(value, isDeep);\\n      }\\n      if (tag == objectTag || tag == argsTag || isFunc && !object) {\\n        result = isFlat || isFunc ? {} : initCloneObject(value);\\n        if (!isDeep) {\\n          return isFlat ? copySymbolsIn(value, baseAssignIn(result, value)) : copySymbols(value, baseAssign(result, value));\\n        }\\n      } else {\\n        if (!cloneableTags[tag]) {\\n          return object ? value : {};\\n        }\\n        result = initCloneByTag(value, tag, isDeep);\\n      }\\n    }\\n    stack || (stack = new Stack());\\n    var stacked = stack.get(value);\\n    if (stacked) {\\n      return stacked;\\n    }\\n    stack.set(value, result);\\n    if (isSet(value)) {\\n      value.forEach(function(subValue) {\\n        result.add(baseClone(subValue, bitmask, customizer, subValue, value, stack));\\n      });\\n    } else if (isMap(value)) {\\n      value.forEach(function(subValue, key2) {\\n        result.set(key2, baseClone(subValue, bitmask, customizer, key2, value, stack));\\n      });\\n    }\\n    var keysFunc = isFull ? isFlat ? getAllKeysIn : getAllKeys : isFlat ? keysIn : keys;\\n    var props = isArr ? void 0 : keysFunc(value);\\n    arrayEach(props || value, function(subValue, key2) {\\n      if (props) {\\n        key2 = subValue;\\n        subValue = value[key2];\\n      }\\n      assignValue(result, key2, baseClone(subValue, bitmask, customizer, key2, value, stack));\\n    });\\n    return result;\\n  }\\n  module.exports = baseClone;\\n});\\n\\n// ../../../node_modules/lodash/cloneDeep.js\\nvar require_cloneDeep = __commonJS((exports, module) => {\\n  var baseClone = require_baseClone();\\n  var CLONE_DEEP_FLAG = 1;\\n  var CLONE_SYMBOLS_FLAG = 4;\\n  function cloneDeep(value) {\\n    return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG);\\n  }\\n  module.exports = cloneDeep;\\n});\\n\\n// ../../../node_modules/lodash/clone.js\\nvar require_clone = __commonJS((exports, module) => {\\n  var baseClone = require_baseClone();\\n  var CLONE_SYMBOLS_FLAG = 4;\\n  function clone(value) {\\n    return baseClone(value, CLONE_SYMBOLS_FLAG);\\n  }\\n  module.exports = clone;\\n});\\n\\n// ../../../node_modules/jsep/build/jsep.js\\nvar require_jsep = __commonJS((exports, module) => {\\n  (function(root) {\\n    \\\\\\\"use strict\\\\\\\";\\n    var COMPOUND = \\\\\\\"Compound\\\\\\\", IDENTIFIER = \\\\\\\"Identifier\\\\\\\", MEMBER_EXP = \\\\\\\"MemberExpression\\\\\\\", LITERAL = \\\\\\\"Literal\\\\\\\", THIS_EXP = \\\\\\\"ThisExpression\\\\\\\", CALL_EXP = \\\\\\\"CallExpression\\\\\\\", UNARY_EXP = \\\\\\\"UnaryExpression\\\\\\\", BINARY_EXP = \\\\\\\"BinaryExpression\\\\\\\", LOGICAL_EXP = \\\\\\\"LogicalExpression\\\\\\\", CONDITIONAL_EXP = \\\\\\\"ConditionalExpression\\\\\\\", ARRAY_EXP = \\\\\\\"ArrayExpression\\\\\\\", PERIOD_CODE = 46, COMMA_CODE = 44, SQUOTE_CODE = 39, DQUOTE_CODE = 34, OPAREN_CODE = 40, CPAREN_CODE = 41, OBRACK_CODE = 91, CBRACK_CODE = 93, QUMARK_CODE = 63, SEMCOL_CODE = 59, COLON_CODE = 58, throwError = function(message, index) {\\n      var error = new Error(message + \\\\\\\" at character \\\\\\\" + index);\\n      error.index = index;\\n      error.description = message;\\n      throw error;\\n    }, t = true, unary_ops = {\\\\\\\"-\\\\\\\": t, \\\\\\\"!\\\\\\\": t, \\\\\\\"~\\\\\\\": t, \\\\\\\"+\\\\\\\": t}, binary_ops = {\\n      \\\\\\\"||\\\\\\\": 1,\\n      \\\\\\\"&&\\\\\\\": 2,\\n      \\\\\\\"|\\\\\\\": 3,\\n      \\\\\\\"^\\\\\\\": 4,\\n      \\\\\\\"&\\\\\\\": 5,\\n      \\\\\\\"==\\\\\\\": 6,\\n      \\\\\\\"!=\\\\\\\": 6,\\n      \\\\\\\"===\\\\\\\": 6,\\n      \\\\\\\"!==\\\\\\\": 6,\\n      \\\\\\\"<\\\\\\\": 7,\\n      \\\\\\\">\\\\\\\": 7,\\n      \\\\\\\"<=\\\\\\\": 7,\\n      \\\\\\\">=\\\\\\\": 7,\\n      \\\\\\\"<<\\\\\\\": 8,\\n      \\\\\\\">>\\\\\\\": 8,\\n      \\\\\\\">>>\\\\\\\": 8,\\n      \\\\\\\"+\\\\\\\": 9,\\n      \\\\\\\"-\\\\\\\": 9,\\n      \\\\\\\"*\\\\\\\": 10,\\n      \\\\\\\"/\\\\\\\": 10,\\n      \\\\\\\"%\\\\\\\": 10\\n    }, getMaxKeyLen = function(obj) {\\n      var max_len = 0, len;\\n      for (var key in obj) {\\n        if ((len = key.length) > max_len && obj.hasOwnProperty(key)) {\\n          max_len = len;\\n        }\\n      }\\n      return max_len;\\n    }, max_unop_len = getMaxKeyLen(unary_ops), max_binop_len = getMaxKeyLen(binary_ops), literals = {\\n      true: true,\\n      false: false,\\n      null: null\\n    }, this_str = \\\\\\\"this\\\\\\\", binaryPrecedence = function(op_val) {\\n      return binary_ops[op_val] || 0;\\n    }, createBinaryExpression = function(operator, left, right) {\\n      var type = operator === \\\\\\\"||\\\\\\\" || operator === \\\\\\\"&&\\\\\\\" ? LOGICAL_EXP : BINARY_EXP;\\n      return {\\n        type,\\n        operator,\\n        left,\\n        right\\n      };\\n    }, isDecimalDigit = function(ch) {\\n      return ch >= 48 && ch <= 57;\\n    }, isIdentifierStart = function(ch) {\\n      return ch === 36 || ch === 95 || ch >= 65 && ch <= 90 || ch >= 97 && ch <= 122 || ch >= 128 && !binary_ops[String.fromCharCode(ch)];\\n    }, isIdentifierPart = function(ch) {\\n      return ch === 36 || ch === 95 || ch >= 65 && ch <= 90 || ch >= 97 && ch <= 122 || ch >= 48 && ch <= 57 || ch >= 128 && !binary_ops[String.fromCharCode(ch)];\\n    }, jsep2 = function(expr) {\\n      var index = 0, charAtFunc = expr.charAt, charCodeAtFunc = expr.charCodeAt, exprI = function(i) {\\n        return charAtFunc.call(expr, i);\\n      }, exprICode = function(i) {\\n        return charCodeAtFunc.call(expr, i);\\n      }, length = expr.length, gobbleSpaces = function() {\\n        var ch = exprICode(index);\\n        while (ch === 32 || ch === 9 || ch === 10 || ch === 13) {\\n          ch = exprICode(++index);\\n        }\\n      }, gobbleExpression = function() {\\n        var test = gobbleBinaryExpression(), consequent, alternate;\\n        gobbleSpaces();\\n        if (exprICode(index) === QUMARK_CODE) {\\n          index++;\\n          consequent = gobbleExpression();\\n          if (!consequent) {\\n            throwError(\\\\\\\"Expected expression\\\\\\\", index);\\n          }\\n          gobbleSpaces();\\n          if (exprICode(index) === COLON_CODE) {\\n            index++;\\n            alternate = gobbleExpression();\\n            if (!alternate) {\\n              throwError(\\\\\\\"Expected expression\\\\\\\", index);\\n            }\\n            return {\\n              type: CONDITIONAL_EXP,\\n              test,\\n              consequent,\\n              alternate\\n            };\\n          } else {\\n            throwError(\\\\\\\"Expected :\\\\\\\", index);\\n          }\\n        } else {\\n          return test;\\n        }\\n      }, gobbleBinaryOp = function() {\\n        gobbleSpaces();\\n        var biop, to_check = expr.substr(index, max_binop_len), tc_len = to_check.length;\\n        while (tc_len > 0) {\\n          if (binary_ops.hasOwnProperty(to_check) && (!isIdentifierStart(exprICode(index)) || index + to_check.length < expr.length && !isIdentifierPart(exprICode(index + to_check.length)))) {\\n            index += tc_len;\\n            return to_check;\\n          }\\n          to_check = to_check.substr(0, --tc_len);\\n        }\\n        return false;\\n      }, gobbleBinaryExpression = function() {\\n        var ch_i2, node2, biop, prec, stack, biop_info, left, right, i, cur_biop;\\n        left = gobbleToken();\\n        biop = gobbleBinaryOp();\\n        if (!biop) {\\n          return left;\\n        }\\n        biop_info = {value: biop, prec: binaryPrecedence(biop)};\\n        right = gobbleToken();\\n        if (!right) {\\n          throwError(\\\\\\\"Expected expression after \\\\\\\" + biop, index);\\n        }\\n        stack = [left, biop_info, right];\\n        while (biop = gobbleBinaryOp()) {\\n          prec = binaryPrecedence(biop);\\n          if (prec === 0) {\\n            break;\\n          }\\n          biop_info = {value: biop, prec};\\n          cur_biop = biop;\\n          while (stack.length > 2 && prec <= stack[stack.length - 2].prec) {\\n            right = stack.pop();\\n            biop = stack.pop().value;\\n            left = stack.pop();\\n            node2 = createBinaryExpression(biop, left, right);\\n            stack.push(node2);\\n          }\\n          node2 = gobbleToken();\\n          if (!node2) {\\n            throwError(\\\\\\\"Expected expression after \\\\\\\" + cur_biop, index);\\n          }\\n          stack.push(biop_info, node2);\\n        }\\n        i = stack.length - 1;\\n        node2 = stack[i];\\n        while (i > 1) {\\n          node2 = createBinaryExpression(stack[i - 1].value, stack[i - 2], node2);\\n          i -= 2;\\n        }\\n        return node2;\\n      }, gobbleToken = function() {\\n        var ch, to_check, tc_len;\\n        gobbleSpaces();\\n        ch = exprICode(index);\\n        if (isDecimalDigit(ch) || ch === PERIOD_CODE) {\\n          return gobbleNumericLiteral();\\n        } else if (ch === SQUOTE_CODE || ch === DQUOTE_CODE) {\\n          return gobbleStringLiteral();\\n        } else if (ch === OBRACK_CODE) {\\n          return gobbleArray();\\n        } else {\\n          to_check = expr.substr(index, max_unop_len);\\n          tc_len = to_check.length;\\n          while (tc_len > 0) {\\n            if (unary_ops.hasOwnProperty(to_check) && (!isIdentifierStart(exprICode(index)) || index + to_check.length < expr.length && !isIdentifierPart(exprICode(index + to_check.length)))) {\\n              index += tc_len;\\n              return {\\n                type: UNARY_EXP,\\n                operator: to_check,\\n                argument: gobbleToken(),\\n                prefix: true\\n              };\\n            }\\n            to_check = to_check.substr(0, --tc_len);\\n          }\\n          if (isIdentifierStart(ch) || ch === OPAREN_CODE) {\\n            return gobbleVariable();\\n          }\\n        }\\n        return false;\\n      }, gobbleNumericLiteral = function() {\\n        var number = \\\\\\\"\\\\\\\", ch, chCode;\\n        while (isDecimalDigit(exprICode(index))) {\\n          number += exprI(index++);\\n        }\\n        if (exprICode(index) === PERIOD_CODE) {\\n          number += exprI(index++);\\n          while (isDecimalDigit(exprICode(index))) {\\n            number += exprI(index++);\\n          }\\n        }\\n        ch = exprI(index);\\n        if (ch === \\\\\\\"e\\\\\\\" || ch === \\\\\\\"E\\\\\\\") {\\n          number += exprI(index++);\\n          ch = exprI(index);\\n          if (ch === \\\\\\\"+\\\\\\\" || ch === \\\\\\\"-\\\\\\\") {\\n            number += exprI(index++);\\n          }\\n          while (isDecimalDigit(exprICode(index))) {\\n            number += exprI(index++);\\n          }\\n          if (!isDecimalDigit(exprICode(index - 1))) {\\n            throwError(\\\\\\\"Expected exponent (\\\\\\\" + number + exprI(index) + \\\\\\\")\\\\\\\", index);\\n          }\\n        }\\n        chCode = exprICode(index);\\n        if (isIdentifierStart(chCode)) {\\n          throwError(\\\\\\\"Variable names cannot start with a number (\\\\\\\" + number + exprI(index) + \\\\\\\")\\\\\\\", index);\\n        } else if (chCode === PERIOD_CODE) {\\n          throwError(\\\\\\\"Unexpected period\\\\\\\", index);\\n        }\\n        return {\\n          type: LITERAL,\\n          value: parseFloat(number),\\n          raw: number\\n        };\\n      }, gobbleStringLiteral = function() {\\n        var str = \\\\\\\"\\\\\\\", quote = exprI(index++), closed = false, ch;\\n        while (index < length) {\\n          ch = exprI(index++);\\n          if (ch === quote) {\\n            closed = true;\\n            break;\\n          } else if (ch === \\\\\\\"\\\\\\\\\\\\\\\") {\\n            ch = exprI(index++);\\n            switch (ch) {\\n              case \\\\\\\"n\\\\\\\":\\n                str += \\\\\\\"\\\\n\\\\\\\";\\n                break;\\n              case \\\\\\\"r\\\\\\\":\\n                str += \\\\\\\"\\\\r\\\\\\\";\\n                break;\\n              case \\\\\\\"t\\\\\\\":\\n                str += \\\\\\\"\\t\\\\\\\";\\n                break;\\n              case \\\\\\\"b\\\\\\\":\\n                str += \\\\\\\"\\\\b\\\\\\\";\\n                break;\\n              case \\\\\\\"f\\\\\\\":\\n                str += \\\\\\\"\\\\f\\\\\\\";\\n                break;\\n              case \\\\\\\"v\\\\\\\":\\n                str += \\\\\\\"\\\\v\\\\\\\";\\n                break;\\n              default:\\n                str += ch;\\n            }\\n          } else {\\n            str += ch;\\n          }\\n        }\\n        if (!closed) {\\n          throwError('Unclosed quote after \\\\\\\"' + str + '\\\\\\\"', index);\\n        }\\n        return {\\n          type: LITERAL,\\n          value: str,\\n          raw: quote + str + quote\\n        };\\n      }, gobbleIdentifier = function() {\\n        var ch = exprICode(index), start = index, identifier;\\n        if (isIdentifierStart(ch)) {\\n          index++;\\n        } else {\\n          throwError(\\\\\\\"Unexpected \\\\\\\" + exprI(index), index);\\n        }\\n        while (index < length) {\\n          ch = exprICode(index);\\n          if (isIdentifierPart(ch)) {\\n            index++;\\n          } else {\\n            break;\\n          }\\n        }\\n        identifier = expr.slice(start, index);\\n        if (literals.hasOwnProperty(identifier)) {\\n          return {\\n            type: LITERAL,\\n            value: literals[identifier],\\n            raw: identifier\\n          };\\n        } else if (identifier === this_str) {\\n          return {type: THIS_EXP};\\n        } else {\\n          return {\\n            type: IDENTIFIER,\\n            name: identifier\\n          };\\n        }\\n      }, gobbleArguments = function(termination) {\\n        var ch_i2, args = [], node2, closed = false;\\n        var separator_count = 0;\\n        while (index < length) {\\n          gobbleSpaces();\\n          ch_i2 = exprICode(index);\\n          if (ch_i2 === termination) {\\n            closed = true;\\n            index++;\\n            if (termination === CPAREN_CODE && separator_count && separator_count >= args.length) {\\n              throwError(\\\\\\\"Unexpected token \\\\\\\" + String.fromCharCode(termination), index);\\n            }\\n            break;\\n          } else if (ch_i2 === COMMA_CODE) {\\n            index++;\\n            separator_count++;\\n            if (separator_count !== args.length) {\\n              if (termination === CPAREN_CODE) {\\n                throwError(\\\\\\\"Unexpected token ,\\\\\\\", index);\\n              } else if (termination === CBRACK_CODE) {\\n                for (var arg = args.length; arg < separator_count; arg++) {\\n                  args.push(null);\\n                }\\n              }\\n            }\\n          } else {\\n            node2 = gobbleExpression();\\n            if (!node2 || node2.type === COMPOUND) {\\n              throwError(\\\\\\\"Expected comma\\\\\\\", index);\\n            }\\n            args.push(node2);\\n          }\\n        }\\n        if (!closed) {\\n          throwError(\\\\\\\"Expected \\\\\\\" + String.fromCharCode(termination), index);\\n        }\\n        return args;\\n      }, gobbleVariable = function() {\\n        var ch_i2, node2;\\n        ch_i2 = exprICode(index);\\n        if (ch_i2 === OPAREN_CODE) {\\n          node2 = gobbleGroup();\\n        } else {\\n          node2 = gobbleIdentifier();\\n        }\\n        gobbleSpaces();\\n        ch_i2 = exprICode(index);\\n        while (ch_i2 === PERIOD_CODE || ch_i2 === OBRACK_CODE || ch_i2 === OPAREN_CODE) {\\n          index++;\\n          if (ch_i2 === PERIOD_CODE) {\\n            gobbleSpaces();\\n            node2 = {\\n              type: MEMBER_EXP,\\n              computed: false,\\n              object: node2,\\n              property: gobbleIdentifier()\\n            };\\n          } else if (ch_i2 === OBRACK_CODE) {\\n            node2 = {\\n              type: MEMBER_EXP,\\n              computed: true,\\n              object: node2,\\n              property: gobbleExpression()\\n            };\\n            gobbleSpaces();\\n            ch_i2 = exprICode(index);\\n            if (ch_i2 !== CBRACK_CODE) {\\n              throwError(\\\\\\\"Unclosed [\\\\\\\", index);\\n            }\\n            index++;\\n          } else if (ch_i2 === OPAREN_CODE) {\\n            node2 = {\\n              type: CALL_EXP,\\n              arguments: gobbleArguments(CPAREN_CODE),\\n              callee: node2\\n            };\\n          }\\n          gobbleSpaces();\\n          ch_i2 = exprICode(index);\\n        }\\n        return node2;\\n      }, gobbleGroup = function() {\\n        index++;\\n        var node2 = gobbleExpression();\\n        gobbleSpaces();\\n        if (exprICode(index) === CPAREN_CODE) {\\n          index++;\\n          return node2;\\n        } else {\\n          throwError(\\\\\\\"Unclosed (\\\\\\\", index);\\n        }\\n      }, gobbleArray = function() {\\n        index++;\\n        return {\\n          type: ARRAY_EXP,\\n          elements: gobbleArguments(CBRACK_CODE)\\n        };\\n      }, nodes = [], ch_i, node;\\n      while (index < length) {\\n        ch_i = exprICode(index);\\n        if (ch_i === SEMCOL_CODE || ch_i === COMMA_CODE) {\\n          index++;\\n        } else {\\n          if (node = gobbleExpression()) {\\n            nodes.push(node);\\n          } else if (index < length) {\\n            throwError('Unexpected \\\\\\\"' + exprI(index) + '\\\\\\\"', index);\\n          }\\n        }\\n      }\\n      if (nodes.length === 1) {\\n        return nodes[0];\\n      } else {\\n        return {\\n          type: COMPOUND,\\n          body: nodes\\n        };\\n      }\\n    };\\n    jsep2.version = \\\\\\\"0.3.5\\\\\\\";\\n    jsep2.toString = function() {\\n      return \\\\\\\"JavaScript Expression Parser (JSEP) v\\\\\\\" + jsep2.version;\\n    };\\n    jsep2.addUnaryOp = function(op_name) {\\n      max_unop_len = Math.max(op_name.length, max_unop_len);\\n      unary_ops[op_name] = t;\\n      return this;\\n    };\\n    jsep2.addBinaryOp = function(op_name, precedence2) {\\n      max_binop_len = Math.max(op_name.length, max_binop_len);\\n      binary_ops[op_name] = precedence2;\\n      return this;\\n    };\\n    jsep2.addLiteral = function(literal_name, literal_value) {\\n      literals[literal_name] = literal_value;\\n      return this;\\n    };\\n    jsep2.removeUnaryOp = function(op_name) {\\n      delete unary_ops[op_name];\\n      if (op_name.length === max_unop_len) {\\n        max_unop_len = getMaxKeyLen(unary_ops);\\n      }\\n      return this;\\n    };\\n    jsep2.removeAllUnaryOps = function() {\\n      unary_ops = {};\\n      max_unop_len = 0;\\n      return this;\\n    };\\n    jsep2.removeBinaryOp = function(op_name) {\\n      delete binary_ops[op_name];\\n      if (op_name.length === max_binop_len) {\\n        max_binop_len = getMaxKeyLen(binary_ops);\\n      }\\n      return this;\\n    };\\n    jsep2.removeAllBinaryOps = function() {\\n      binary_ops = {};\\n      max_binop_len = 0;\\n      return this;\\n    };\\n    jsep2.removeLiteral = function(literal_name) {\\n      delete literals[literal_name];\\n      return this;\\n    };\\n    jsep2.removeAllLiterals = function() {\\n      literals = {};\\n      return this;\\n    };\\n    if (typeof exports === \\\\\\\"undefined\\\\\\\") {\\n      var old_jsep = root.jsep;\\n      root.jsep = jsep2;\\n      jsep2.noConflict = function() {\\n        if (root.jsep === jsep2) {\\n          root.jsep = old_jsep;\\n        }\\n        return jsep2;\\n      };\\n    } else {\\n      if (typeof module !== \\\\\\\"undefined\\\\\\\" && module.exports) {\\n        exports = module.exports = jsep2;\\n      } else {\\n        exports.parse = jsep2;\\n      }\\n    }\\n  })(exports);\\n});\\n\\n// ../../../node_modules/three/src/math/MathUtils.js\\nvar DEG2RAD = Math.PI / 180;\\nvar RAD2DEG = 180 / Math.PI;\\nvar _lut = [];\\nfor (let i = 0; i < 256; i++) {\\n  _lut[i] = (i < 16 ? \\\\\\\"0\\\\\\\" : \\\\\\\"\\\\\\\") + i.toString(16);\\n}\\nvar hasRandomUUID = typeof crypto !== \\\\\\\"undefined\\\\\\\" && \\\\\\\"randomUUID\\\\\\\" in crypto;\\nfunction generateUUID() {\\n  if (hasRandomUUID) {\\n    return crypto.randomUUID().toUpperCase();\\n  }\\n  const d0 = Math.random() * 4294967295 | 0;\\n  const d1 = Math.random() * 4294967295 | 0;\\n  const d2 = Math.random() * 4294967295 | 0;\\n  const d3 = Math.random() * 4294967295 | 0;\\n  const uuid = _lut[d0 & 255] + _lut[d0 >> 8 & 255] + _lut[d0 >> 16 & 255] + _lut[d0 >> 24 & 255] + \\\\\\\"-\\\\\\\" + _lut[d1 & 255] + _lut[d1 >> 8 & 255] + \\\\\\\"-\\\\\\\" + _lut[d1 >> 16 & 15 | 64] + _lut[d1 >> 24 & 255] + \\\\\\\"-\\\\\\\" + _lut[d2 & 63 | 128] + _lut[d2 >> 8 & 255] + \\\\\\\"-\\\\\\\" + _lut[d2 >> 16 & 255] + _lut[d2 >> 24 & 255] + _lut[d3 & 255] + _lut[d3 >> 8 & 255] + _lut[d3 >> 16 & 255] + _lut[d3 >> 24 & 255];\\n  return uuid.toUpperCase();\\n}\\nfunction clamp(value, min, max) {\\n  return Math.max(min, Math.min(max, value));\\n}\\nfunction euclideanModulo(n, m) {\\n  return (n % m + m) % m;\\n}\\nfunction lerp(x, y, t) {\\n  return (1 - t) * x + t * y;\\n}\\nfunction degToRad(degrees) {\\n  return degrees * DEG2RAD;\\n}\\nfunction isPowerOfTwo(value) {\\n  return (value & value - 1) === 0 && value !== 0;\\n}\\nfunction floorPowerOfTwo(value) {\\n  return Math.pow(2, Math.floor(Math.log(value) / Math.LN2));\\n}\\n\\n// ../../../node_modules/three/src/math/Quaternion.js\\nvar Quaternion = class {\\n  constructor(x = 0, y = 0, z = 0, w = 1) {\\n    this._x = x;\\n    this._y = y;\\n    this._z = z;\\n    this._w = w;\\n  }\\n  static slerp(qa, qb, qm, t) {\\n    console.warn(\\\\\\\"THREE.Quaternion: Static .slerp() has been deprecated. Use qm.slerpQuaternions( qa, qb, t ) instead.\\\\\\\");\\n    return qm.slerpQuaternions(qa, qb, t);\\n  }\\n  static slerpFlat(dst, dstOffset, src0, srcOffset0, src1, srcOffset1, t) {\\n    let x0 = src0[srcOffset0 + 0], y0 = src0[srcOffset0 + 1], z0 = src0[srcOffset0 + 2], w0 = src0[srcOffset0 + 3];\\n    const x1 = src1[srcOffset1 + 0], y1 = src1[srcOffset1 + 1], z1 = src1[srcOffset1 + 2], w1 = src1[srcOffset1 + 3];\\n    if (t === 0) {\\n      dst[dstOffset + 0] = x0;\\n      dst[dstOffset + 1] = y0;\\n      dst[dstOffset + 2] = z0;\\n      dst[dstOffset + 3] = w0;\\n      return;\\n    }\\n    if (t === 1) {\\n      dst[dstOffset + 0] = x1;\\n      dst[dstOffset + 1] = y1;\\n      dst[dstOffset + 2] = z1;\\n      dst[dstOffset + 3] = w1;\\n      return;\\n    }\\n    if (w0 !== w1 || x0 !== x1 || y0 !== y1 || z0 !== z1) {\\n      let s = 1 - t;\\n      const cos = x0 * x1 + y0 * y1 + z0 * z1 + w0 * w1, dir = cos >= 0 ? 1 : -1, sqrSin = 1 - cos * cos;\\n      if (sqrSin > Number.EPSILON) {\\n        const sin = Math.sqrt(sqrSin), len = Math.atan2(sin, cos * dir);\\n        s = Math.sin(s * len) / sin;\\n        t = Math.sin(t * len) / sin;\\n      }\\n      const tDir = t * dir;\\n      x0 = x0 * s + x1 * tDir;\\n      y0 = y0 * s + y1 * tDir;\\n      z0 = z0 * s + z1 * tDir;\\n      w0 = w0 * s + w1 * tDir;\\n      if (s === 1 - t) {\\n        const f = 1 / Math.sqrt(x0 * x0 + y0 * y0 + z0 * z0 + w0 * w0);\\n        x0 *= f;\\n        y0 *= f;\\n        z0 *= f;\\n        w0 *= f;\\n      }\\n    }\\n    dst[dstOffset] = x0;\\n    dst[dstOffset + 1] = y0;\\n    dst[dstOffset + 2] = z0;\\n    dst[dstOffset + 3] = w0;\\n  }\\n  static multiplyQuaternionsFlat(dst, dstOffset, src0, srcOffset0, src1, srcOffset1) {\\n    const x0 = src0[srcOffset0];\\n    const y0 = src0[srcOffset0 + 1];\\n    const z0 = src0[srcOffset0 + 2];\\n    const w0 = src0[srcOffset0 + 3];\\n    const x1 = src1[srcOffset1];\\n    const y1 = src1[srcOffset1 + 1];\\n    const z1 = src1[srcOffset1 + 2];\\n    const w1 = src1[srcOffset1 + 3];\\n    dst[dstOffset] = x0 * w1 + w0 * x1 + y0 * z1 - z0 * y1;\\n    dst[dstOffset + 1] = y0 * w1 + w0 * y1 + z0 * x1 - x0 * z1;\\n    dst[dstOffset + 2] = z0 * w1 + w0 * z1 + x0 * y1 - y0 * x1;\\n    dst[dstOffset + 3] = w0 * w1 - x0 * x1 - y0 * y1 - z0 * z1;\\n    return dst;\\n  }\\n  get x() {\\n    return this._x;\\n  }\\n  set x(value) {\\n    this._x = value;\\n    this._onChangeCallback();\\n  }\\n  get y() {\\n    return this._y;\\n  }\\n  set y(value) {\\n    this._y = value;\\n    this._onChangeCallback();\\n  }\\n  get z() {\\n    return this._z;\\n  }\\n  set z(value) {\\n    this._z = value;\\n    this._onChangeCallback();\\n  }\\n  get w() {\\n    return this._w;\\n  }\\n  set w(value) {\\n    this._w = value;\\n    this._onChangeCallback();\\n  }\\n  set(x, y, z, w) {\\n    this._x = x;\\n    this._y = y;\\n    this._z = z;\\n    this._w = w;\\n    this._onChangeCallback();\\n    return this;\\n  }\\n  clone() {\\n    return new this.constructor(this._x, this._y, this._z, this._w);\\n  }\\n  copy(quaternion) {\\n    this._x = quaternion.x;\\n    this._y = quaternion.y;\\n    this._z = quaternion.z;\\n    this._w = quaternion.w;\\n    this._onChangeCallback();\\n    return this;\\n  }\\n  setFromEuler(euler, update) {\\n    if (!(euler && euler.isEuler)) {\\n      throw new Error(\\\\\\\"THREE.Quaternion: .setFromEuler() now expects an Euler rotation rather than a Vector3 and order.\\\\\\\");\\n    }\\n    const x = euler._x, y = euler._y, z = euler._z, order = euler._order;\\n    const cos = Math.cos;\\n    const sin = Math.sin;\\n    const c1 = cos(x / 2);\\n    const c2 = cos(y / 2);\\n    const c3 = cos(z / 2);\\n    const s1 = sin(x / 2);\\n    const s2 = sin(y / 2);\\n    const s3 = sin(z / 2);\\n    switch (order) {\\n      case \\\\\\\"XYZ\\\\\\\":\\n        this._x = s1 * c2 * c3 + c1 * s2 * s3;\\n        this._y = c1 * s2 * c3 - s1 * c2 * s3;\\n        this._z = c1 * c2 * s3 + s1 * s2 * c3;\\n        this._w = c1 * c2 * c3 - s1 * s2 * s3;\\n        break;\\n      case \\\\\\\"YXZ\\\\\\\":\\n        this._x = s1 * c2 * c3 + c1 * s2 * s3;\\n        this._y = c1 * s2 * c3 - s1 * c2 * s3;\\n        this._z = c1 * c2 * s3 - s1 * s2 * c3;\\n        this._w = c1 * c2 * c3 + s1 * s2 * s3;\\n        break;\\n      case \\\\\\\"ZXY\\\\\\\":\\n        this._x = s1 * c2 * c3 - c1 * s2 * s3;\\n        this._y = c1 * s2 * c3 + s1 * c2 * s3;\\n        this._z = c1 * c2 * s3 + s1 * s2 * c3;\\n        this._w = c1 * c2 * c3 - s1 * s2 * s3;\\n        break;\\n      case \\\\\\\"ZYX\\\\\\\":\\n        this._x = s1 * c2 * c3 - c1 * s2 * s3;\\n        this._y = c1 * s2 * c3 + s1 * c2 * s3;\\n        this._z = c1 * c2 * s3 - s1 * s2 * c3;\\n        this._w = c1 * c2 * c3 + s1 * s2 * s3;\\n        break;\\n      case \\\\\\\"YZX\\\\\\\":\\n        this._x = s1 * c2 * c3 + c1 * s2 * s3;\\n        this._y = c1 * s2 * c3 + s1 * c2 * s3;\\n        this._z = c1 * c2 * s3 - s1 * s2 * c3;\\n        this._w = c1 * c2 * c3 - s1 * s2 * s3;\\n        break;\\n      case \\\\\\\"XZY\\\\\\\":\\n        this._x = s1 * c2 * c3 - c1 * s2 * s3;\\n        this._y = c1 * s2 * c3 - s1 * c2 * s3;\\n        this._z = c1 * c2 * s3 + s1 * s2 * c3;\\n        this._w = c1 * c2 * c3 + s1 * s2 * s3;\\n        break;\\n      default:\\n        console.warn(\\\\\\\"THREE.Quaternion: .setFromEuler() encountered an unknown order: \\\\\\\" + order);\\n    }\\n    if (update !== false)\\n      this._onChangeCallback();\\n    return this;\\n  }\\n  setFromAxisAngle(axis, angle) {\\n    const halfAngle = angle / 2, s = Math.sin(halfAngle);\\n    this._x = axis.x * s;\\n    this._y = axis.y * s;\\n    this._z = axis.z * s;\\n    this._w = Math.cos(halfAngle);\\n    this._onChangeCallback();\\n    return this;\\n  }\\n  setFromRotationMatrix(m) {\\n    const te = m.elements, m11 = te[0], m12 = te[4], m13 = te[8], m21 = te[1], m22 = te[5], m23 = te[9], m31 = te[2], m32 = te[6], m33 = te[10], trace = m11 + m22 + m33;\\n    if (trace > 0) {\\n      const s = 0.5 / Math.sqrt(trace + 1);\\n      this._w = 0.25 / s;\\n      this._x = (m32 - m23) * s;\\n      this._y = (m13 - m31) * s;\\n      this._z = (m21 - m12) * s;\\n    } else if (m11 > m22 && m11 > m33) {\\n      const s = 2 * Math.sqrt(1 + m11 - m22 - m33);\\n      this._w = (m32 - m23) / s;\\n      this._x = 0.25 * s;\\n      this._y = (m12 + m21) / s;\\n      this._z = (m13 + m31) / s;\\n    } else if (m22 > m33) {\\n      const s = 2 * Math.sqrt(1 + m22 - m11 - m33);\\n      this._w = (m13 - m31) / s;\\n      this._x = (m12 + m21) / s;\\n      this._y = 0.25 * s;\\n      this._z = (m23 + m32) / s;\\n    } else {\\n      const s = 2 * Math.sqrt(1 + m33 - m11 - m22);\\n      this._w = (m21 - m12) / s;\\n      this._x = (m13 + m31) / s;\\n      this._y = (m23 + m32) / s;\\n      this._z = 0.25 * s;\\n    }\\n    this._onChangeCallback();\\n    return this;\\n  }\\n  setFromUnitVectors(vFrom, vTo) {\\n    let r = vFrom.dot(vTo) + 1;\\n    if (r < Number.EPSILON) {\\n      r = 0;\\n      if (Math.abs(vFrom.x) > Math.abs(vFrom.z)) {\\n        this._x = -vFrom.y;\\n        this._y = vFrom.x;\\n        this._z = 0;\\n        this._w = r;\\n      } else {\\n        this._x = 0;\\n        this._y = -vFrom.z;\\n        this._z = vFrom.y;\\n        this._w = r;\\n      }\\n    } else {\\n      this._x = vFrom.y * vTo.z - vFrom.z * vTo.y;\\n      this._y = vFrom.z * vTo.x - vFrom.x * vTo.z;\\n      this._z = vFrom.x * vTo.y - vFrom.y * vTo.x;\\n      this._w = r;\\n    }\\n    return this.normalize();\\n  }\\n  angleTo(q) {\\n    return 2 * Math.acos(Math.abs(clamp(this.dot(q), -1, 1)));\\n  }\\n  rotateTowards(q, step) {\\n    const angle = this.angleTo(q);\\n    if (angle === 0)\\n      return this;\\n    const t = Math.min(1, step / angle);\\n    this.slerp(q, t);\\n    return this;\\n  }\\n  identity() {\\n    return this.set(0, 0, 0, 1);\\n  }\\n  invert() {\\n    return this.conjugate();\\n  }\\n  conjugate() {\\n    this._x *= -1;\\n    this._y *= -1;\\n    this._z *= -1;\\n    this._onChangeCallback();\\n    return this;\\n  }\\n  dot(v) {\\n    return this._x * v._x + this._y * v._y + this._z * v._z + this._w * v._w;\\n  }\\n  lengthSq() {\\n    return this._x * this._x + this._y * this._y + this._z * this._z + this._w * this._w;\\n  }\\n  length() {\\n    return Math.sqrt(this._x * this._x + this._y * this._y + this._z * this._z + this._w * this._w);\\n  }\\n  normalize() {\\n    let l = this.length();\\n    if (l === 0) {\\n      this._x = 0;\\n      this._y = 0;\\n      this._z = 0;\\n      this._w = 1;\\n    } else {\\n      l = 1 / l;\\n      this._x = this._x * l;\\n      this._y = this._y * l;\\n      this._z = this._z * l;\\n      this._w = this._w * l;\\n    }\\n    this._onChangeCallback();\\n    return this;\\n  }\\n  multiply(q, p) {\\n    if (p !== void 0) {\\n      console.warn(\\\\\\\"THREE.Quaternion: .multiply() now only accepts one argument. Use .multiplyQuaternions( a, b ) instead.\\\\\\\");\\n      return this.multiplyQuaternions(q, p);\\n    }\\n    return this.multiplyQuaternions(this, q);\\n  }\\n  premultiply(q) {\\n    return this.multiplyQuaternions(q, this);\\n  }\\n  multiplyQuaternions(a, b) {\\n    const qax = a._x, qay = a._y, qaz = a._z, qaw = a._w;\\n    const qbx = b._x, qby = b._y, qbz = b._z, qbw = b._w;\\n    this._x = qax * qbw + qaw * qbx + qay * qbz - qaz * qby;\\n    this._y = qay * qbw + qaw * qby + qaz * qbx - qax * qbz;\\n    this._z = qaz * qbw + qaw * qbz + qax * qby - qay * qbx;\\n    this._w = qaw * qbw - qax * qbx - qay * qby - qaz * qbz;\\n    this._onChangeCallback();\\n    return this;\\n  }\\n  slerp(qb, t) {\\n    if (t === 0)\\n      return this;\\n    if (t === 1)\\n      return this.copy(qb);\\n    const x = this._x, y = this._y, z = this._z, w = this._w;\\n    let cosHalfTheta = w * qb._w + x * qb._x + y * qb._y + z * qb._z;\\n    if (cosHalfTheta < 0) {\\n      this._w = -qb._w;\\n      this._x = -qb._x;\\n      this._y = -qb._y;\\n      this._z = -qb._z;\\n      cosHalfTheta = -cosHalfTheta;\\n    } else {\\n      this.copy(qb);\\n    }\\n    if (cosHalfTheta >= 1) {\\n      this._w = w;\\n      this._x = x;\\n      this._y = y;\\n      this._z = z;\\n      return this;\\n    }\\n    const sqrSinHalfTheta = 1 - cosHalfTheta * cosHalfTheta;\\n    if (sqrSinHalfTheta <= Number.EPSILON) {\\n      const s = 1 - t;\\n      this._w = s * w + t * this._w;\\n      this._x = s * x + t * this._x;\\n      this._y = s * y + t * this._y;\\n      this._z = s * z + t * this._z;\\n      this.normalize();\\n      this._onChangeCallback();\\n      return this;\\n    }\\n    const sinHalfTheta = Math.sqrt(sqrSinHalfTheta);\\n    const halfTheta = Math.atan2(sinHalfTheta, cosHalfTheta);\\n    const ratioA = Math.sin((1 - t) * halfTheta) / sinHalfTheta, ratioB = Math.sin(t * halfTheta) / sinHalfTheta;\\n    this._w = w * ratioA + this._w * ratioB;\\n    this._x = x * ratioA + this._x * ratioB;\\n    this._y = y * ratioA + this._y * ratioB;\\n    this._z = z * ratioA + this._z * ratioB;\\n    this._onChangeCallback();\\n    return this;\\n  }\\n  slerpQuaternions(qa, qb, t) {\\n    this.copy(qa).slerp(qb, t);\\n  }\\n  random() {\\n    const u1 = Math.random();\\n    const sqrt1u1 = Math.sqrt(1 - u1);\\n    const sqrtu1 = Math.sqrt(u1);\\n    const u2 = 2 * Math.PI * Math.random();\\n    const u3 = 2 * Math.PI * Math.random();\\n    return this.set(sqrt1u1 * Math.cos(u2), sqrtu1 * Math.sin(u3), sqrtu1 * Math.cos(u3), sqrt1u1 * Math.sin(u2));\\n  }\\n  equals(quaternion) {\\n    return quaternion._x === this._x && quaternion._y === this._y && quaternion._z === this._z && quaternion._w === this._w;\\n  }\\n  fromArray(array, offset = 0) {\\n    this._x = array[offset];\\n    this._y = array[offset + 1];\\n    this._z = array[offset + 2];\\n    this._w = array[offset + 3];\\n    this._onChangeCallback();\\n    return this;\\n  }\\n  toArray(array = [], offset = 0) {\\n    array[offset] = this._x;\\n    array[offset + 1] = this._y;\\n    array[offset + 2] = this._z;\\n    array[offset + 3] = this._w;\\n    return array;\\n  }\\n  fromBufferAttribute(attribute, index) {\\n    this._x = attribute.getX(index);\\n    this._y = attribute.getY(index);\\n    this._z = attribute.getZ(index);\\n    this._w = attribute.getW(index);\\n    return this;\\n  }\\n  _onChange(callback) {\\n    this._onChangeCallback = callback;\\n    return this;\\n  }\\n  _onChangeCallback() {\\n  }\\n};\\nQuaternion.prototype.isQuaternion = true;\\n\\n// ../../../node_modules/three/src/math/Vector3.js\\nvar Vector3 = class {\\n  constructor(x = 0, y = 0, z = 0) {\\n    this.x = x;\\n    this.y = y;\\n    this.z = z;\\n  }\\n  set(x, y, z) {\\n    if (z === void 0)\\n      z = this.z;\\n    this.x = x;\\n    this.y = y;\\n    this.z = z;\\n    return this;\\n  }\\n  setScalar(scalar) {\\n    this.x = scalar;\\n    this.y = scalar;\\n    this.z = scalar;\\n    return this;\\n  }\\n  setX(x) {\\n    this.x = x;\\n    return this;\\n  }\\n  setY(y) {\\n    this.y = y;\\n    return this;\\n  }\\n  setZ(z) {\\n    this.z = z;\\n    return this;\\n  }\\n  setComponent(index, value) {\\n    switch (index) {\\n      case 0:\\n        this.x = value;\\n        break;\\n      case 1:\\n        this.y = value;\\n        break;\\n      case 2:\\n        this.z = value;\\n        break;\\n      default:\\n        throw new Error(\\\\\\\"index is out of range: \\\\\\\" + index);\\n    }\\n    return this;\\n  }\\n  getComponent(index) {\\n    switch (index) {\\n      case 0:\\n        return this.x;\\n      case 1:\\n        return this.y;\\n      case 2:\\n        return this.z;\\n      default:\\n        throw new Error(\\\\\\\"index is out of range: \\\\\\\" + index);\\n    }\\n  }\\n  clone() {\\n    return new this.constructor(this.x, this.y, this.z);\\n  }\\n  copy(v) {\\n    this.x = v.x;\\n    this.y = v.y;\\n    this.z = v.z;\\n    return this;\\n  }\\n  add(v, w) {\\n    if (w !== void 0) {\\n      console.warn(\\\\\\\"THREE.Vector3: .add() now only accepts one argument. Use .addVectors( a, b ) instead.\\\\\\\");\\n      return this.addVectors(v, w);\\n    }\\n    this.x += v.x;\\n    this.y += v.y;\\n    this.z += v.z;\\n    return this;\\n  }\\n  addScalar(s) {\\n    this.x += s;\\n    this.y += s;\\n    this.z += s;\\n    return this;\\n  }\\n  addVectors(a, b) {\\n    this.x = a.x + b.x;\\n    this.y = a.y + b.y;\\n    this.z = a.z + b.z;\\n    return this;\\n  }\\n  addScaledVector(v, s) {\\n    this.x += v.x * s;\\n    this.y += v.y * s;\\n    this.z += v.z * s;\\n    return this;\\n  }\\n  sub(v, w) {\\n    if (w !== void 0) {\\n      console.warn(\\\\\\\"THREE.Vector3: .sub() now only accepts one argument. Use .subVectors( a, b ) instead.\\\\\\\");\\n      return this.subVectors(v, w);\\n    }\\n    this.x -= v.x;\\n    this.y -= v.y;\\n    this.z -= v.z;\\n    return this;\\n  }\\n  subScalar(s) {\\n    this.x -= s;\\n    this.y -= s;\\n    this.z -= s;\\n    return this;\\n  }\\n  subVectors(a, b) {\\n    this.x = a.x - b.x;\\n    this.y = a.y - b.y;\\n    this.z = a.z - b.z;\\n    return this;\\n  }\\n  multiply(v, w) {\\n    if (w !== void 0) {\\n      console.warn(\\\\\\\"THREE.Vector3: .multiply() now only accepts one argument. Use .multiplyVectors( a, b ) instead.\\\\\\\");\\n      return this.multiplyVectors(v, w);\\n    }\\n    this.x *= v.x;\\n    this.y *= v.y;\\n    this.z *= v.z;\\n    return this;\\n  }\\n  multiplyScalar(scalar) {\\n    this.x *= scalar;\\n    this.y *= scalar;\\n    this.z *= scalar;\\n    return this;\\n  }\\n  multiplyVectors(a, b) {\\n    this.x = a.x * b.x;\\n    this.y = a.y * b.y;\\n    this.z = a.z * b.z;\\n    return this;\\n  }\\n  applyEuler(euler) {\\n    if (!(euler && euler.isEuler)) {\\n      console.error(\\\\\\\"THREE.Vector3: .applyEuler() now expects an Euler rotation rather than a Vector3 and order.\\\\\\\");\\n    }\\n    return this.applyQuaternion(_quaternion.setFromEuler(euler));\\n  }\\n  applyAxisAngle(axis, angle) {\\n    return this.applyQuaternion(_quaternion.setFromAxisAngle(axis, angle));\\n  }\\n  applyMatrix3(m) {\\n    const x = this.x, y = this.y, z = this.z;\\n    const e = m.elements;\\n    this.x = e[0] * x + e[3] * y + e[6] * z;\\n    this.y = e[1] * x + e[4] * y + e[7] * z;\\n    this.z = e[2] * x + e[5] * y + e[8] * z;\\n    return this;\\n  }\\n  applyNormalMatrix(m) {\\n    return this.applyMatrix3(m).normalize();\\n  }\\n  applyMatrix4(m) {\\n    const x = this.x, y = this.y, z = this.z;\\n    const e = m.elements;\\n    const w = 1 / (e[3] * x + e[7] * y + e[11] * z + e[15]);\\n    this.x = (e[0] * x + e[4] * y + e[8] * z + e[12]) * w;\\n    this.y = (e[1] * x + e[5] * y + e[9] * z + e[13]) * w;\\n    this.z = (e[2] * x + e[6] * y + e[10] * z + e[14]) * w;\\n    return this;\\n  }\\n  applyQuaternion(q) {\\n    const x = this.x, y = this.y, z = this.z;\\n    const qx = q.x, qy = q.y, qz = q.z, qw = q.w;\\n    const ix = qw * x + qy * z - qz * y;\\n    const iy = qw * y + qz * x - qx * z;\\n    const iz = qw * z + qx * y - qy * x;\\n    const iw = -qx * x - qy * y - qz * z;\\n    this.x = ix * qw + iw * -qx + iy * -qz - iz * -qy;\\n    this.y = iy * qw + iw * -qy + iz * -qx - ix * -qz;\\n    this.z = iz * qw + iw * -qz + ix * -qy - iy * -qx;\\n    return this;\\n  }\\n  project(camera) {\\n    return this.applyMatrix4(camera.matrixWorldInverse).applyMatrix4(camera.projectionMatrix);\\n  }\\n  unproject(camera) {\\n    return this.applyMatrix4(camera.projectionMatrixInverse).applyMatrix4(camera.matrixWorld);\\n  }\\n  transformDirection(m) {\\n    const x = this.x, y = this.y, z = this.z;\\n    const e = m.elements;\\n    this.x = e[0] * x + e[4] * y + e[8] * z;\\n    this.y = e[1] * x + e[5] * y + e[9] * z;\\n    this.z = e[2] * x + e[6] * y + e[10] * z;\\n    return this.normalize();\\n  }\\n  divide(v) {\\n    this.x /= v.x;\\n    this.y /= v.y;\\n    this.z /= v.z;\\n    return this;\\n  }\\n  divideScalar(scalar) {\\n    return this.multiplyScalar(1 / scalar);\\n  }\\n  min(v) {\\n    this.x = Math.min(this.x, v.x);\\n    this.y = Math.min(this.y, v.y);\\n    this.z = Math.min(this.z, v.z);\\n    return this;\\n  }\\n  max(v) {\\n    this.x = Math.max(this.x, v.x);\\n    this.y = Math.max(this.y, v.y);\\n    this.z = Math.max(this.z, v.z);\\n    return this;\\n  }\\n  clamp(min, max) {\\n    this.x = Math.max(min.x, Math.min(max.x, this.x));\\n    this.y = Math.max(min.y, Math.min(max.y, this.y));\\n    this.z = Math.max(min.z, Math.min(max.z, this.z));\\n    return this;\\n  }\\n  clampScalar(minVal, maxVal) {\\n    this.x = Math.max(minVal, Math.min(maxVal, this.x));\\n    this.y = Math.max(minVal, Math.min(maxVal, this.y));\\n    this.z = Math.max(minVal, Math.min(maxVal, this.z));\\n    return this;\\n  }\\n  clampLength(min, max) {\\n    const length = this.length();\\n    return this.divideScalar(length || 1).multiplyScalar(Math.max(min, Math.min(max, length)));\\n  }\\n  floor() {\\n    this.x = Math.floor(this.x);\\n    this.y = Math.floor(this.y);\\n    this.z = Math.floor(this.z);\\n    return this;\\n  }\\n  ceil() {\\n    this.x = Math.ceil(this.x);\\n    this.y = Math.ceil(this.y);\\n    this.z = Math.ceil(this.z);\\n    return this;\\n  }\\n  round() {\\n    this.x = Math.round(this.x);\\n    this.y = Math.round(this.y);\\n    this.z = Math.round(this.z);\\n    return this;\\n  }\\n  roundToZero() {\\n    this.x = this.x < 0 ? Math.ceil(this.x) : Math.floor(this.x);\\n    this.y = this.y < 0 ? Math.ceil(this.y) : Math.floor(this.y);\\n    this.z = this.z < 0 ? Math.ceil(this.z) : Math.floor(this.z);\\n    return this;\\n  }\\n  negate() {\\n    this.x = -this.x;\\n    this.y = -this.y;\\n    this.z = -this.z;\\n    return this;\\n  }\\n  dot(v) {\\n    return this.x * v.x + this.y * v.y + this.z * v.z;\\n  }\\n  lengthSq() {\\n    return this.x * this.x + this.y * this.y + this.z * this.z;\\n  }\\n  length() {\\n    return Math.sqrt(this.x * this.x + this.y * this.y + this.z * this.z);\\n  }\\n  manhattanLength() {\\n    return Math.abs(this.x) + Math.abs(this.y) + Math.abs(this.z);\\n  }\\n  normalize() {\\n    return this.divideScalar(this.length() || 1);\\n  }\\n  setLength(length) {\\n    return this.normalize().multiplyScalar(length);\\n  }\\n  lerp(v, alpha) {\\n    this.x += (v.x - this.x) * alpha;\\n    this.y += (v.y - this.y) * alpha;\\n    this.z += (v.z - this.z) * alpha;\\n    return this;\\n  }\\n  lerpVectors(v1, v2, alpha) {\\n    this.x = v1.x + (v2.x - v1.x) * alpha;\\n    this.y = v1.y + (v2.y - v1.y) * alpha;\\n    this.z = v1.z + (v2.z - v1.z) * alpha;\\n    return this;\\n  }\\n  cross(v, w) {\\n    if (w !== void 0) {\\n      console.warn(\\\\\\\"THREE.Vector3: .cross() now only accepts one argument. Use .crossVectors( a, b ) instead.\\\\\\\");\\n      return this.crossVectors(v, w);\\n    }\\n    return this.crossVectors(this, v);\\n  }\\n  crossVectors(a, b) {\\n    const ax = a.x, ay = a.y, az = a.z;\\n    const bx = b.x, by = b.y, bz = b.z;\\n    this.x = ay * bz - az * by;\\n    this.y = az * bx - ax * bz;\\n    this.z = ax * by - ay * bx;\\n    return this;\\n  }\\n  projectOnVector(v) {\\n    const denominator = v.lengthSq();\\n    if (denominator === 0)\\n      return this.set(0, 0, 0);\\n    const scalar = v.dot(this) / denominator;\\n    return this.copy(v).multiplyScalar(scalar);\\n  }\\n  projectOnPlane(planeNormal) {\\n    _vector.copy(this).projectOnVector(planeNormal);\\n    return this.sub(_vector);\\n  }\\n  reflect(normal) {\\n    return this.sub(_vector.copy(normal).multiplyScalar(2 * this.dot(normal)));\\n  }\\n  angleTo(v) {\\n    const denominator = Math.sqrt(this.lengthSq() * v.lengthSq());\\n    if (denominator === 0)\\n      return Math.PI / 2;\\n    const theta = this.dot(v) / denominator;\\n    return Math.acos(clamp(theta, -1, 1));\\n  }\\n  distanceTo(v) {\\n    return Math.sqrt(this.distanceToSquared(v));\\n  }\\n  distanceToSquared(v) {\\n    const dx = this.x - v.x, dy = this.y - v.y, dz = this.z - v.z;\\n    return dx * dx + dy * dy + dz * dz;\\n  }\\n  manhattanDistanceTo(v) {\\n    return Math.abs(this.x - v.x) + Math.abs(this.y - v.y) + Math.abs(this.z - v.z);\\n  }\\n  setFromSpherical(s) {\\n    return this.setFromSphericalCoords(s.radius, s.phi, s.theta);\\n  }\\n  setFromSphericalCoords(radius, phi, theta) {\\n    const sinPhiRadius = Math.sin(phi) * radius;\\n    this.x = sinPhiRadius * Math.sin(theta);\\n    this.y = Math.cos(phi) * radius;\\n    this.z = sinPhiRadius * Math.cos(theta);\\n    return this;\\n  }\\n  setFromCylindrical(c) {\\n    return this.setFromCylindricalCoords(c.radius, c.theta, c.y);\\n  }\\n  setFromCylindricalCoords(radius, theta, y) {\\n    this.x = radius * Math.sin(theta);\\n    this.y = y;\\n    this.z = radius * Math.cos(theta);\\n    return this;\\n  }\\n  setFromMatrixPosition(m) {\\n    const e = m.elements;\\n    this.x = e[12];\\n    this.y = e[13];\\n    this.z = e[14];\\n    return this;\\n  }\\n  setFromMatrixScale(m) {\\n    const sx = this.setFromMatrixColumn(m, 0).length();\\n    const sy = this.setFromMatrixColumn(m, 1).length();\\n    const sz = this.setFromMatrixColumn(m, 2).length();\\n    this.x = sx;\\n    this.y = sy;\\n    this.z = sz;\\n    return this;\\n  }\\n  setFromMatrixColumn(m, index) {\\n    return this.fromArray(m.elements, index * 4);\\n  }\\n  setFromMatrix3Column(m, index) {\\n    return this.fromArray(m.elements, index * 3);\\n  }\\n  equals(v) {\\n    return v.x === this.x && v.y === this.y && v.z === this.z;\\n  }\\n  fromArray(array, offset = 0) {\\n    this.x = array[offset];\\n    this.y = array[offset + 1];\\n    this.z = array[offset + 2];\\n    return this;\\n  }\\n  toArray(array = [], offset = 0) {\\n    array[offset] = this.x;\\n    array[offset + 1] = this.y;\\n    array[offset + 2] = this.z;\\n    return array;\\n  }\\n  fromBufferAttribute(attribute, index, offset) {\\n    if (offset !== void 0) {\\n      console.warn(\\\\\\\"THREE.Vector3: offset has been removed from .fromBufferAttribute().\\\\\\\");\\n    }\\n    this.x = attribute.getX(index);\\n    this.y = attribute.getY(index);\\n    this.z = attribute.getZ(index);\\n    return this;\\n  }\\n  random() {\\n    this.x = Math.random();\\n    this.y = Math.random();\\n    this.z = Math.random();\\n    return this;\\n  }\\n  randomDirection() {\\n    const u = (Math.random() - 0.5) * 2;\\n    const t = Math.random() * Math.PI * 2;\\n    const f = Math.sqrt(1 - u ** 2);\\n    this.x = f * Math.cos(t);\\n    this.y = f * Math.sin(t);\\n    this.z = u;\\n    return this;\\n  }\\n  *[Symbol.iterator]() {\\n    yield this.x;\\n    yield this.y;\\n    yield this.z;\\n  }\\n};\\nVector3.prototype.isVector3 = true;\\nvar _vector = /* @__PURE__ */ new Vector3();\\nvar _quaternion = /* @__PURE__ */ new Quaternion();\\n\\n// ../../../node_modules/three/src/math/Matrix4.js\\nvar Matrix4 = class {\\n  constructor() {\\n    this.elements = [\\n      1,\\n      0,\\n      0,\\n      0,\\n      0,\\n      1,\\n      0,\\n      0,\\n      0,\\n      0,\\n      1,\\n      0,\\n      0,\\n      0,\\n      0,\\n      1\\n    ];\\n    if (arguments.length > 0) {\\n      console.error(\\\\\\\"THREE.Matrix4: the constructor no longer reads arguments. use .set() instead.\\\\\\\");\\n    }\\n  }\\n  set(n11, n12, n13, n14, n21, n22, n23, n24, n31, n32, n33, n34, n41, n42, n43, n44) {\\n    const te = this.elements;\\n    te[0] = n11;\\n    te[4] = n12;\\n    te[8] = n13;\\n    te[12] = n14;\\n    te[1] = n21;\\n    te[5] = n22;\\n    te[9] = n23;\\n    te[13] = n24;\\n    te[2] = n31;\\n    te[6] = n32;\\n    te[10] = n33;\\n    te[14] = n34;\\n    te[3] = n41;\\n    te[7] = n42;\\n    te[11] = n43;\\n    te[15] = n44;\\n    return this;\\n  }\\n  identity() {\\n    this.set(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);\\n    return this;\\n  }\\n  clone() {\\n    return new Matrix4().fromArray(this.elements);\\n  }\\n  copy(m) {\\n    const te = this.elements;\\n    const me = m.elements;\\n    te[0] = me[0];\\n    te[1] = me[1];\\n    te[2] = me[2];\\n    te[3] = me[3];\\n    te[4] = me[4];\\n    te[5] = me[5];\\n    te[6] = me[6];\\n    te[7] = me[7];\\n    te[8] = me[8];\\n    te[9] = me[9];\\n    te[10] = me[10];\\n    te[11] = me[11];\\n    te[12] = me[12];\\n    te[13] = me[13];\\n    te[14] = me[14];\\n    te[15] = me[15];\\n    return this;\\n  }\\n  copyPosition(m) {\\n    const te = this.elements, me = m.elements;\\n    te[12] = me[12];\\n    te[13] = me[13];\\n    te[14] = me[14];\\n    return this;\\n  }\\n  setFromMatrix3(m) {\\n    const me = m.elements;\\n    this.set(me[0], me[3], me[6], 0, me[1], me[4], me[7], 0, me[2], me[5], me[8], 0, 0, 0, 0, 1);\\n    return this;\\n  }\\n  extractBasis(xAxis, yAxis, zAxis) {\\n    xAxis.setFromMatrixColumn(this, 0);\\n    yAxis.setFromMatrixColumn(this, 1);\\n    zAxis.setFromMatrixColumn(this, 2);\\n    return this;\\n  }\\n  makeBasis(xAxis, yAxis, zAxis) {\\n    this.set(xAxis.x, yAxis.x, zAxis.x, 0, xAxis.y, yAxis.y, zAxis.y, 0, xAxis.z, yAxis.z, zAxis.z, 0, 0, 0, 0, 1);\\n    return this;\\n  }\\n  extractRotation(m) {\\n    const te = this.elements;\\n    const me = m.elements;\\n    const scaleX = 1 / _v1.setFromMatrixColumn(m, 0).length();\\n    const scaleY = 1 / _v1.setFromMatrixColumn(m, 1).length();\\n    const scaleZ = 1 / _v1.setFromMatrixColumn(m, 2).length();\\n    te[0] = me[0] * scaleX;\\n    te[1] = me[1] * scaleX;\\n    te[2] = me[2] * scaleX;\\n    te[3] = 0;\\n    te[4] = me[4] * scaleY;\\n    te[5] = me[5] * scaleY;\\n    te[6] = me[6] * scaleY;\\n    te[7] = 0;\\n    te[8] = me[8] * scaleZ;\\n    te[9] = me[9] * scaleZ;\\n    te[10] = me[10] * scaleZ;\\n    te[11] = 0;\\n    te[12] = 0;\\n    te[13] = 0;\\n    te[14] = 0;\\n    te[15] = 1;\\n    return this;\\n  }\\n  makeRotationFromEuler(euler) {\\n    if (!(euler && euler.isEuler)) {\\n      console.error(\\\\\\\"THREE.Matrix4: .makeRotationFromEuler() now expects a Euler rotation rather than a Vector3 and order.\\\\\\\");\\n    }\\n    const te = this.elements;\\n    const x = euler.x, y = euler.y, z = euler.z;\\n    const a = Math.cos(x), b = Math.sin(x);\\n    const c = Math.cos(y), d = Math.sin(y);\\n    const e = Math.cos(z), f = Math.sin(z);\\n    if (euler.order === \\\\\\\"XYZ\\\\\\\") {\\n      const ae = a * e, af = a * f, be = b * e, bf = b * f;\\n      te[0] = c * e;\\n      te[4] = -c * f;\\n      te[8] = d;\\n      te[1] = af + be * d;\\n      te[5] = ae - bf * d;\\n      te[9] = -b * c;\\n      te[2] = bf - ae * d;\\n      te[6] = be + af * d;\\n      te[10] = a * c;\\n    } else if (euler.order === \\\\\\\"YXZ\\\\\\\") {\\n      const ce = c * e, cf = c * f, de = d * e, df = d * f;\\n      te[0] = ce + df * b;\\n      te[4] = de * b - cf;\\n      te[8] = a * d;\\n      te[1] = a * f;\\n      te[5] = a * e;\\n      te[9] = -b;\\n      te[2] = cf * b - de;\\n      te[6] = df + ce * b;\\n      te[10] = a * c;\\n    } else if (euler.order === \\\\\\\"ZXY\\\\\\\") {\\n      const ce = c * e, cf = c * f, de = d * e, df = d * f;\\n      te[0] = ce - df * b;\\n      te[4] = -a * f;\\n      te[8] = de + cf * b;\\n      te[1] = cf + de * b;\\n      te[5] = a * e;\\n      te[9] = df - ce * b;\\n      te[2] = -a * d;\\n      te[6] = b;\\n      te[10] = a * c;\\n    } else if (euler.order === \\\\\\\"ZYX\\\\\\\") {\\n      const ae = a * e, af = a * f, be = b * e, bf = b * f;\\n      te[0] = c * e;\\n      te[4] = be * d - af;\\n      te[8] = ae * d + bf;\\n      te[1] = c * f;\\n      te[5] = bf * d + ae;\\n      te[9] = af * d - be;\\n      te[2] = -d;\\n      te[6] = b * c;\\n      te[10] = a * c;\\n    } else if (euler.order === \\\\\\\"YZX\\\\\\\") {\\n      const ac = a * c, ad = a * d, bc = b * c, bd = b * d;\\n      te[0] = c * e;\\n      te[4] = bd - ac * f;\\n      te[8] = bc * f + ad;\\n      te[1] = f;\\n      te[5] = a * e;\\n      te[9] = -b * e;\\n      te[2] = -d * e;\\n      te[6] = ad * f + bc;\\n      te[10] = ac - bd * f;\\n    } else if (euler.order === \\\\\\\"XZY\\\\\\\") {\\n      const ac = a * c, ad = a * d, bc = b * c, bd = b * d;\\n      te[0] = c * e;\\n      te[4] = -f;\\n      te[8] = d * e;\\n      te[1] = ac * f + bd;\\n      te[5] = a * e;\\n      te[9] = ad * f - bc;\\n      te[2] = bc * f - ad;\\n      te[6] = b * e;\\n      te[10] = bd * f + ac;\\n    }\\n    te[3] = 0;\\n    te[7] = 0;\\n    te[11] = 0;\\n    te[12] = 0;\\n    te[13] = 0;\\n    te[14] = 0;\\n    te[15] = 1;\\n    return this;\\n  }\\n  makeRotationFromQuaternion(q) {\\n    return this.compose(_zero, q, _one);\\n  }\\n  lookAt(eye, target, up) {\\n    const te = this.elements;\\n    _z.subVectors(eye, target);\\n    if (_z.lengthSq() === 0) {\\n      _z.z = 1;\\n    }\\n    _z.normalize();\\n    _x.crossVectors(up, _z);\\n    if (_x.lengthSq() === 0) {\\n      if (Math.abs(up.z) === 1) {\\n        _z.x += 1e-4;\\n      } else {\\n        _z.z += 1e-4;\\n      }\\n      _z.normalize();\\n      _x.crossVectors(up, _z);\\n    }\\n    _x.normalize();\\n    _y.crossVectors(_z, _x);\\n    te[0] = _x.x;\\n    te[4] = _y.x;\\n    te[8] = _z.x;\\n    te[1] = _x.y;\\n    te[5] = _y.y;\\n    te[9] = _z.y;\\n    te[2] = _x.z;\\n    te[6] = _y.z;\\n    te[10] = _z.z;\\n    return this;\\n  }\\n  multiply(m, n) {\\n    if (n !== void 0) {\\n      console.warn(\\\\\\\"THREE.Matrix4: .multiply() now only accepts one argument. Use .multiplyMatrices( a, b ) instead.\\\\\\\");\\n      return this.multiplyMatrices(m, n);\\n    }\\n    return this.multiplyMatrices(this, m);\\n  }\\n  premultiply(m) {\\n    return this.multiplyMatrices(m, this);\\n  }\\n  multiplyMatrices(a, b) {\\n    const ae = a.elements;\\n    const be = b.elements;\\n    const te = this.elements;\\n    const a11 = ae[0], a12 = ae[4], a13 = ae[8], a14 = ae[12];\\n    const a21 = ae[1], a22 = ae[5], a23 = ae[9], a24 = ae[13];\\n    const a31 = ae[2], a32 = ae[6], a33 = ae[10], a34 = ae[14];\\n    const a41 = ae[3], a42 = ae[7], a43 = ae[11], a44 = ae[15];\\n    const b11 = be[0], b12 = be[4], b13 = be[8], b14 = be[12];\\n    const b21 = be[1], b22 = be[5], b23 = be[9], b24 = be[13];\\n    const b31 = be[2], b32 = be[6], b33 = be[10], b34 = be[14];\\n    const b41 = be[3], b42 = be[7], b43 = be[11], b44 = be[15];\\n    te[0] = a11 * b11 + a12 * b21 + a13 * b31 + a14 * b41;\\n    te[4] = a11 * b12 + a12 * b22 + a13 * b32 + a14 * b42;\\n    te[8] = a11 * b13 + a12 * b23 + a13 * b33 + a14 * b43;\\n    te[12] = a11 * b14 + a12 * b24 + a13 * b34 + a14 * b44;\\n    te[1] = a21 * b11 + a22 * b21 + a23 * b31 + a24 * b41;\\n    te[5] = a21 * b12 + a22 * b22 + a23 * b32 + a24 * b42;\\n    te[9] = a21 * b13 + a22 * b23 + a23 * b33 + a24 * b43;\\n    te[13] = a21 * b14 + a22 * b24 + a23 * b34 + a24 * b44;\\n    te[2] = a31 * b11 + a32 * b21 + a33 * b31 + a34 * b41;\\n    te[6] = a31 * b12 + a32 * b22 + a33 * b32 + a34 * b42;\\n    te[10] = a31 * b13 + a32 * b23 + a33 * b33 + a34 * b43;\\n    te[14] = a31 * b14 + a32 * b24 + a33 * b34 + a34 * b44;\\n    te[3] = a41 * b11 + a42 * b21 + a43 * b31 + a44 * b41;\\n    te[7] = a41 * b12 + a42 * b22 + a43 * b32 + a44 * b42;\\n    te[11] = a41 * b13 + a42 * b23 + a43 * b33 + a44 * b43;\\n    te[15] = a41 * b14 + a42 * b24 + a43 * b34 + a44 * b44;\\n    return this;\\n  }\\n  multiplyScalar(s) {\\n    const te = this.elements;\\n    te[0] *= s;\\n    te[4] *= s;\\n    te[8] *= s;\\n    te[12] *= s;\\n    te[1] *= s;\\n    te[5] *= s;\\n    te[9] *= s;\\n    te[13] *= s;\\n    te[2] *= s;\\n    te[6] *= s;\\n    te[10] *= s;\\n    te[14] *= s;\\n    te[3] *= s;\\n    te[7] *= s;\\n    te[11] *= s;\\n    te[15] *= s;\\n    return this;\\n  }\\n  determinant() {\\n    const te = this.elements;\\n    const n11 = te[0], n12 = te[4], n13 = te[8], n14 = te[12];\\n    const n21 = te[1], n22 = te[5], n23 = te[9], n24 = te[13];\\n    const n31 = te[2], n32 = te[6], n33 = te[10], n34 = te[14];\\n    const n41 = te[3], n42 = te[7], n43 = te[11], n44 = te[15];\\n    return n41 * (+n14 * n23 * n32 - n13 * n24 * n32 - n14 * n22 * n33 + n12 * n24 * n33 + n13 * n22 * n34 - n12 * n23 * n34) + n42 * (+n11 * n23 * n34 - n11 * n24 * n33 + n14 * n21 * n33 - n13 * n21 * n34 + n13 * n24 * n31 - n14 * n23 * n31) + n43 * (+n11 * n24 * n32 - n11 * n22 * n34 - n14 * n21 * n32 + n12 * n21 * n34 + n14 * n22 * n31 - n12 * n24 * n31) + n44 * (-n13 * n22 * n31 - n11 * n23 * n32 + n11 * n22 * n33 + n13 * n21 * n32 - n12 * n21 * n33 + n12 * n23 * n31);\\n  }\\n  transpose() {\\n    const te = this.elements;\\n    let tmp;\\n    tmp = te[1];\\n    te[1] = te[4];\\n    te[4] = tmp;\\n    tmp = te[2];\\n    te[2] = te[8];\\n    te[8] = tmp;\\n    tmp = te[6];\\n    te[6] = te[9];\\n    te[9] = tmp;\\n    tmp = te[3];\\n    te[3] = te[12];\\n    te[12] = tmp;\\n    tmp = te[7];\\n    te[7] = te[13];\\n    te[13] = tmp;\\n    tmp = te[11];\\n    te[11] = te[14];\\n    te[14] = tmp;\\n    return this;\\n  }\\n  setPosition(x, y, z) {\\n    const te = this.elements;\\n    if (x.isVector3) {\\n      te[12] = x.x;\\n      te[13] = x.y;\\n      te[14] = x.z;\\n    } else {\\n      te[12] = x;\\n      te[13] = y;\\n      te[14] = z;\\n    }\\n    return this;\\n  }\\n  invert() {\\n    const te = this.elements, n11 = te[0], n21 = te[1], n31 = te[2], n41 = te[3], n12 = te[4], n22 = te[5], n32 = te[6], n42 = te[7], n13 = te[8], n23 = te[9], n33 = te[10], n43 = te[11], n14 = te[12], n24 = te[13], n34 = te[14], n44 = te[15], t11 = n23 * n34 * n42 - n24 * n33 * n42 + n24 * n32 * n43 - n22 * n34 * n43 - n23 * n32 * n44 + n22 * n33 * n44, t12 = n14 * n33 * n42 - n13 * n34 * n42 - n14 * n32 * n43 + n12 * n34 * n43 + n13 * n32 * n44 - n12 * n33 * n44, t13 = n13 * n24 * n42 - n14 * n23 * n42 + n14 * n22 * n43 - n12 * n24 * n43 - n13 * n22 * n44 + n12 * n23 * n44, t14 = n14 * n23 * n32 - n13 * n24 * n32 - n14 * n22 * n33 + n12 * n24 * n33 + n13 * n22 * n34 - n12 * n23 * n34;\\n    const det = n11 * t11 + n21 * t12 + n31 * t13 + n41 * t14;\\n    if (det === 0)\\n      return this.set(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);\\n    const detInv = 1 / det;\\n    te[0] = t11 * detInv;\\n    te[1] = (n24 * n33 * n41 - n23 * n34 * n41 - n24 * n31 * n43 + n21 * n34 * n43 + n23 * n31 * n44 - n21 * n33 * n44) * detInv;\\n    te[2] = (n22 * n34 * n41 - n24 * n32 * n41 + n24 * n31 * n42 - n21 * n34 * n42 - n22 * n31 * n44 + n21 * n32 * n44) * detInv;\\n    te[3] = (n23 * n32 * n41 - n22 * n33 * n41 - n23 * n31 * n42 + n21 * n33 * n42 + n22 * n31 * n43 - n21 * n32 * n43) * detInv;\\n    te[4] = t12 * detInv;\\n    te[5] = (n13 * n34 * n41 - n14 * n33 * n41 + n14 * n31 * n43 - n11 * n34 * n43 - n13 * n31 * n44 + n11 * n33 * n44) * detInv;\\n    te[6] = (n14 * n32 * n41 - n12 * n34 * n41 - n14 * n31 * n42 + n11 * n34 * n42 + n12 * n31 * n44 - n11 * n32 * n44) * detInv;\\n    te[7] = (n12 * n33 * n41 - n13 * n32 * n41 + n13 * n31 * n42 - n11 * n33 * n42 - n12 * n31 * n43 + n11 * n32 * n43) * detInv;\\n    te[8] = t13 * detInv;\\n    te[9] = (n14 * n23 * n41 - n13 * n24 * n41 - n14 * n21 * n43 + n11 * n24 * n43 + n13 * n21 * n44 - n11 * n23 * n44) * detInv;\\n    te[10] = (n12 * n24 * n41 - n14 * n22 * n41 + n14 * n21 * n42 - n11 * n24 * n42 - n12 * n21 * n44 + n11 * n22 * n44) * detInv;\\n    te[11] = (n13 * n22 * n41 - n12 * n23 * n41 - n13 * n21 * n42 + n11 * n23 * n42 + n12 * n21 * n43 - n11 * n22 * n43) * detInv;\\n    te[12] = t14 * detInv;\\n    te[13] = (n13 * n24 * n31 - n14 * n23 * n31 + n14 * n21 * n33 - n11 * n24 * n33 - n13 * n21 * n34 + n11 * n23 * n34) * detInv;\\n    te[14] = (n14 * n22 * n31 - n12 * n24 * n31 - n14 * n21 * n32 + n11 * n24 * n32 + n12 * n21 * n34 - n11 * n22 * n34) * detInv;\\n    te[15] = (n12 * n23 * n31 - n13 * n22 * n31 + n13 * n21 * n32 - n11 * n23 * n32 - n12 * n21 * n33 + n11 * n22 * n33) * detInv;\\n    return this;\\n  }\\n  scale(v) {\\n    const te = this.elements;\\n    const x = v.x, y = v.y, z = v.z;\\n    te[0] *= x;\\n    te[4] *= y;\\n    te[8] *= z;\\n    te[1] *= x;\\n    te[5] *= y;\\n    te[9] *= z;\\n    te[2] *= x;\\n    te[6] *= y;\\n    te[10] *= z;\\n    te[3] *= x;\\n    te[7] *= y;\\n    te[11] *= z;\\n    return this;\\n  }\\n  getMaxScaleOnAxis() {\\n    const te = this.elements;\\n    const scaleXSq = te[0] * te[0] + te[1] * te[1] + te[2] * te[2];\\n    const scaleYSq = te[4] * te[4] + te[5] * te[5] + te[6] * te[6];\\n    const scaleZSq = te[8] * te[8] + te[9] * te[9] + te[10] * te[10];\\n    return Math.sqrt(Math.max(scaleXSq, scaleYSq, scaleZSq));\\n  }\\n  makeTranslation(x, y, z) {\\n    this.set(1, 0, 0, x, 0, 1, 0, y, 0, 0, 1, z, 0, 0, 0, 1);\\n    return this;\\n  }\\n  makeRotationX(theta) {\\n    const c = Math.cos(theta), s = Math.sin(theta);\\n    this.set(1, 0, 0, 0, 0, c, -s, 0, 0, s, c, 0, 0, 0, 0, 1);\\n    return this;\\n  }\\n  makeRotationY(theta) {\\n    const c = Math.cos(theta), s = Math.sin(theta);\\n    this.set(c, 0, s, 0, 0, 1, 0, 0, -s, 0, c, 0, 0, 0, 0, 1);\\n    return this;\\n  }\\n  makeRotationZ(theta) {\\n    const c = Math.cos(theta), s = Math.sin(theta);\\n    this.set(c, -s, 0, 0, s, c, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);\\n    return this;\\n  }\\n  makeRotationAxis(axis, angle) {\\n    const c = Math.cos(angle);\\n    const s = Math.sin(angle);\\n    const t = 1 - c;\\n    const x = axis.x, y = axis.y, z = axis.z;\\n    const tx = t * x, ty = t * y;\\n    this.set(tx * x + c, tx * y - s * z, tx * z + s * y, 0, tx * y + s * z, ty * y + c, ty * z - s * x, 0, tx * z - s * y, ty * z + s * x, t * z * z + c, 0, 0, 0, 0, 1);\\n    return this;\\n  }\\n  makeScale(x, y, z) {\\n    this.set(x, 0, 0, 0, 0, y, 0, 0, 0, 0, z, 0, 0, 0, 0, 1);\\n    return this;\\n  }\\n  makeShear(xy, xz, yx, yz, zx, zy) {\\n    this.set(1, yx, zx, 0, xy, 1, zy, 0, xz, yz, 1, 0, 0, 0, 0, 1);\\n    return this;\\n  }\\n  compose(position, quaternion, scale) {\\n    const te = this.elements;\\n    const x = quaternion._x, y = quaternion._y, z = quaternion._z, w = quaternion._w;\\n    const x2 = x + x, y2 = y + y, z2 = z + z;\\n    const xx = x * x2, xy = x * y2, xz = x * z2;\\n    const yy = y * y2, yz = y * z2, zz = z * z2;\\n    const wx = w * x2, wy = w * y2, wz = w * z2;\\n    const sx = scale.x, sy = scale.y, sz = scale.z;\\n    te[0] = (1 - (yy + zz)) * sx;\\n    te[1] = (xy + wz) * sx;\\n    te[2] = (xz - wy) * sx;\\n    te[3] = 0;\\n    te[4] = (xy - wz) * sy;\\n    te[5] = (1 - (xx + zz)) * sy;\\n    te[6] = (yz + wx) * sy;\\n    te[7] = 0;\\n    te[8] = (xz + wy) * sz;\\n    te[9] = (yz - wx) * sz;\\n    te[10] = (1 - (xx + yy)) * sz;\\n    te[11] = 0;\\n    te[12] = position.x;\\n    te[13] = position.y;\\n    te[14] = position.z;\\n    te[15] = 1;\\n    return this;\\n  }\\n  decompose(position, quaternion, scale) {\\n    const te = this.elements;\\n    let sx = _v1.set(te[0], te[1], te[2]).length();\\n    const sy = _v1.set(te[4], te[5], te[6]).length();\\n    const sz = _v1.set(te[8], te[9], te[10]).length();\\n    const det = this.determinant();\\n    if (det < 0)\\n      sx = -sx;\\n    position.x = te[12];\\n    position.y = te[13];\\n    position.z = te[14];\\n    _m1.copy(this);\\n    const invSX = 1 / sx;\\n    const invSY = 1 / sy;\\n    const invSZ = 1 / sz;\\n    _m1.elements[0] *= invSX;\\n    _m1.elements[1] *= invSX;\\n    _m1.elements[2] *= invSX;\\n    _m1.elements[4] *= invSY;\\n    _m1.elements[5] *= invSY;\\n    _m1.elements[6] *= invSY;\\n    _m1.elements[8] *= invSZ;\\n    _m1.elements[9] *= invSZ;\\n    _m1.elements[10] *= invSZ;\\n    quaternion.setFromRotationMatrix(_m1);\\n    scale.x = sx;\\n    scale.y = sy;\\n    scale.z = sz;\\n    return this;\\n  }\\n  makePerspective(left, right, top, bottom, near, far) {\\n    if (far === void 0) {\\n      console.warn(\\\\\\\"THREE.Matrix4: .makePerspective() has been redefined and has a new signature. Please check the docs.\\\\\\\");\\n    }\\n    const te = this.elements;\\n    const x = 2 * near / (right - left);\\n    const y = 2 * near / (top - bottom);\\n    const a = (right + left) / (right - left);\\n    const b = (top + bottom) / (top - bottom);\\n    const c = -(far + near) / (far - near);\\n    const d = -2 * far * near / (far - near);\\n    te[0] = x;\\n    te[4] = 0;\\n    te[8] = a;\\n    te[12] = 0;\\n    te[1] = 0;\\n    te[5] = y;\\n    te[9] = b;\\n    te[13] = 0;\\n    te[2] = 0;\\n    te[6] = 0;\\n    te[10] = c;\\n    te[14] = d;\\n    te[3] = 0;\\n    te[7] = 0;\\n    te[11] = -1;\\n    te[15] = 0;\\n    return this;\\n  }\\n  makeOrthographic(left, right, top, bottom, near, far) {\\n    const te = this.elements;\\n    const w = 1 / (right - left);\\n    const h = 1 / (top - bottom);\\n    const p = 1 / (far - near);\\n    const x = (right + left) * w;\\n    const y = (top + bottom) * h;\\n    const z = (far + near) * p;\\n    te[0] = 2 * w;\\n    te[4] = 0;\\n    te[8] = 0;\\n    te[12] = -x;\\n    te[1] = 0;\\n    te[5] = 2 * h;\\n    te[9] = 0;\\n    te[13] = -y;\\n    te[2] = 0;\\n    te[6] = 0;\\n    te[10] = -2 * p;\\n    te[14] = -z;\\n    te[3] = 0;\\n    te[7] = 0;\\n    te[11] = 0;\\n    te[15] = 1;\\n    return this;\\n  }\\n  equals(matrix) {\\n    const te = this.elements;\\n    const me = matrix.elements;\\n    for (let i = 0; i < 16; i++) {\\n      if (te[i] !== me[i])\\n        return false;\\n    }\\n    return true;\\n  }\\n  fromArray(array, offset = 0) {\\n    for (let i = 0; i < 16; i++) {\\n      this.elements[i] = array[i + offset];\\n    }\\n    return this;\\n  }\\n  toArray(array = [], offset = 0) {\\n    const te = this.elements;\\n    array[offset] = te[0];\\n    array[offset + 1] = te[1];\\n    array[offset + 2] = te[2];\\n    array[offset + 3] = te[3];\\n    array[offset + 4] = te[4];\\n    array[offset + 5] = te[5];\\n    array[offset + 6] = te[6];\\n    array[offset + 7] = te[7];\\n    array[offset + 8] = te[8];\\n    array[offset + 9] = te[9];\\n    array[offset + 10] = te[10];\\n    array[offset + 11] = te[11];\\n    array[offset + 12] = te[12];\\n    array[offset + 13] = te[13];\\n    array[offset + 14] = te[14];\\n    array[offset + 15] = te[15];\\n    return array;\\n  }\\n};\\nMatrix4.prototype.isMatrix4 = true;\\nvar _v1 = /* @__PURE__ */ new Vector3();\\nvar _m1 = /* @__PURE__ */ new Matrix4();\\nvar _zero = /* @__PURE__ */ new Vector3(0, 0, 0);\\nvar _one = /* @__PURE__ */ new Vector3(1, 1, 1);\\nvar _x = /* @__PURE__ */ new Vector3();\\nvar _y = /* @__PURE__ */ new Vector3();\\nvar _z = /* @__PURE__ */ new Vector3();\\n\\n// ../../../node_modules/three/src/core/EventDispatcher.js\\nvar EventDispatcher = class {\\n  addEventListener(type, listener) {\\n    if (this._listeners === void 0)\\n      this._listeners = {};\\n    const listeners = this._listeners;\\n    if (listeners[type] === void 0) {\\n      listeners[type] = [];\\n    }\\n    if (listeners[type].indexOf(listener) === -1) {\\n      listeners[type].push(listener);\\n    }\\n  }\\n  hasEventListener(type, listener) {\\n    if (this._listeners === void 0)\\n      return false;\\n    const listeners = this._listeners;\\n    return listeners[type] !== void 0 && listeners[type].indexOf(listener) !== -1;\\n  }\\n  removeEventListener(type, listener) {\\n    if (this._listeners === void 0)\\n      return;\\n    const listeners = this._listeners;\\n    const listenerArray = listeners[type];\\n    if (listenerArray !== void 0) {\\n      const index = listenerArray.indexOf(listener);\\n      if (index !== -1) {\\n        listenerArray.splice(index, 1);\\n      }\\n    }\\n  }\\n  dispatchEvent(event) {\\n    if (this._listeners === void 0)\\n      return;\\n    const listeners = this._listeners;\\n    const listenerArray = listeners[event.type];\\n    if (listenerArray !== void 0) {\\n      event.target = this;\\n      const array = listenerArray.slice(0);\\n      for (let i = 0, l = array.length; i < l; i++) {\\n        array[i].call(this, event);\\n      }\\n      event.target = null;\\n    }\\n  }\\n};\\n\\n// ../../../node_modules/three/src/math/Euler.js\\nvar _matrix = /* @__PURE__ */ new Matrix4();\\nvar _quaternion2 = /* @__PURE__ */ new Quaternion();\\nvar Euler = class {\\n  constructor(x = 0, y = 0, z = 0, order = Euler.DefaultOrder) {\\n    this._x = x;\\n    this._y = y;\\n    this._z = z;\\n    this._order = order;\\n  }\\n  get x() {\\n    return this._x;\\n  }\\n  set x(value) {\\n    this._x = value;\\n    this._onChangeCallback();\\n  }\\n  get y() {\\n    return this._y;\\n  }\\n  set y(value) {\\n    this._y = value;\\n    this._onChangeCallback();\\n  }\\n  get z() {\\n    return this._z;\\n  }\\n  set z(value) {\\n    this._z = value;\\n    this._onChangeCallback();\\n  }\\n  get order() {\\n    return this._order;\\n  }\\n  set order(value) {\\n    this._order = value;\\n    this._onChangeCallback();\\n  }\\n  set(x, y, z, order = this._order) {\\n    this._x = x;\\n    this._y = y;\\n    this._z = z;\\n    this._order = order;\\n    this._onChangeCallback();\\n    return this;\\n  }\\n  clone() {\\n    return new this.constructor(this._x, this._y, this._z, this._order);\\n  }\\n  copy(euler) {\\n    this._x = euler._x;\\n    this._y = euler._y;\\n    this._z = euler._z;\\n    this._order = euler._order;\\n    this._onChangeCallback();\\n    return this;\\n  }\\n  setFromRotationMatrix(m, order = this._order, update = true) {\\n    const te = m.elements;\\n    const m11 = te[0], m12 = te[4], m13 = te[8];\\n    const m21 = te[1], m22 = te[5], m23 = te[9];\\n    const m31 = te[2], m32 = te[6], m33 = te[10];\\n    switch (order) {\\n      case \\\\\\\"XYZ\\\\\\\":\\n        this._y = Math.asin(clamp(m13, -1, 1));\\n        if (Math.abs(m13) < 0.9999999) {\\n          this._x = Math.atan2(-m23, m33);\\n          this._z = Math.atan2(-m12, m11);\\n        } else {\\n          this._x = Math.atan2(m32, m22);\\n          this._z = 0;\\n        }\\n        break;\\n      case \\\\\\\"YXZ\\\\\\\":\\n        this._x = Math.asin(-clamp(m23, -1, 1));\\n        if (Math.abs(m23) < 0.9999999) {\\n          this._y = Math.atan2(m13, m33);\\n          this._z = Math.atan2(m21, m22);\\n        } else {\\n          this._y = Math.atan2(-m31, m11);\\n          this._z = 0;\\n        }\\n        break;\\n      case \\\\\\\"ZXY\\\\\\\":\\n        this._x = Math.asin(clamp(m32, -1, 1));\\n        if (Math.abs(m32) < 0.9999999) {\\n          this._y = Math.atan2(-m31, m33);\\n          this._z = Math.atan2(-m12, m22);\\n        } else {\\n          this._y = 0;\\n          this._z = Math.atan2(m21, m11);\\n        }\\n        break;\\n      case \\\\\\\"ZYX\\\\\\\":\\n        this._y = Math.asin(-clamp(m31, -1, 1));\\n        if (Math.abs(m31) < 0.9999999) {\\n          this._x = Math.atan2(m32, m33);\\n          this._z = Math.atan2(m21, m11);\\n        } else {\\n          this._x = 0;\\n          this._z = Math.atan2(-m12, m22);\\n        }\\n        break;\\n      case \\\\\\\"YZX\\\\\\\":\\n        this._z = Math.asin(clamp(m21, -1, 1));\\n        if (Math.abs(m21) < 0.9999999) {\\n          this._x = Math.atan2(-m23, m22);\\n          this._y = Math.atan2(-m31, m11);\\n        } else {\\n          this._x = 0;\\n          this._y = Math.atan2(m13, m33);\\n        }\\n        break;\\n      case \\\\\\\"XZY\\\\\\\":\\n        this._z = Math.asin(-clamp(m12, -1, 1));\\n        if (Math.abs(m12) < 0.9999999) {\\n          this._x = Math.atan2(m32, m22);\\n          this._y = Math.atan2(m13, m11);\\n        } else {\\n          this._x = Math.atan2(-m23, m33);\\n          this._y = 0;\\n        }\\n        break;\\n      default:\\n        console.warn(\\\\\\\"THREE.Euler: .setFromRotationMatrix() encountered an unknown order: \\\\\\\" + order);\\n    }\\n    this._order = order;\\n    if (update === true)\\n      this._onChangeCallback();\\n    return this;\\n  }\\n  setFromQuaternion(q, order, update) {\\n    _matrix.makeRotationFromQuaternion(q);\\n    return this.setFromRotationMatrix(_matrix, order, update);\\n  }\\n  setFromVector3(v, order = this._order) {\\n    return this.set(v.x, v.y, v.z, order);\\n  }\\n  reorder(newOrder) {\\n    _quaternion2.setFromEuler(this);\\n    return this.setFromQuaternion(_quaternion2, newOrder);\\n  }\\n  equals(euler) {\\n    return euler._x === this._x && euler._y === this._y && euler._z === this._z && euler._order === this._order;\\n  }\\n  fromArray(array) {\\n    this._x = array[0];\\n    this._y = array[1];\\n    this._z = array[2];\\n    if (array[3] !== void 0)\\n      this._order = array[3];\\n    this._onChangeCallback();\\n    return this;\\n  }\\n  toArray(array = [], offset = 0) {\\n    array[offset] = this._x;\\n    array[offset + 1] = this._y;\\n    array[offset + 2] = this._z;\\n    array[offset + 3] = this._order;\\n    return array;\\n  }\\n  toVector3(optionalResult) {\\n    if (optionalResult) {\\n      return optionalResult.set(this._x, this._y, this._z);\\n    } else {\\n      return new Vector3(this._x, this._y, this._z);\\n    }\\n  }\\n  _onChange(callback) {\\n    this._onChangeCallback = callback;\\n    return this;\\n  }\\n  _onChangeCallback() {\\n  }\\n};\\nEuler.prototype.isEuler = true;\\nEuler.DefaultOrder = \\\\\\\"XYZ\\\\\\\";\\nEuler.RotationOrders = [\\\\\\\"XYZ\\\\\\\", \\\\\\\"YZX\\\\\\\", \\\\\\\"ZXY\\\\\\\", \\\\\\\"XZY\\\\\\\", \\\\\\\"YXZ\\\\\\\", \\\\\\\"ZYX\\\\\\\"];\\n\\n// ../../../node_modules/three/src/core/Layers.js\\nvar Layers = class {\\n  constructor() {\\n    this.mask = 1 | 0;\\n  }\\n  set(channel) {\\n    this.mask = 1 << channel | 0;\\n  }\\n  enable(channel) {\\n    this.mask |= 1 << channel | 0;\\n  }\\n  enableAll() {\\n    this.mask = 4294967295 | 0;\\n  }\\n  toggle(channel) {\\n    this.mask ^= 1 << channel | 0;\\n  }\\n  disable(channel) {\\n    this.mask &= ~(1 << channel | 0);\\n  }\\n  disableAll() {\\n    this.mask = 0;\\n  }\\n  test(layers) {\\n    return (this.mask & layers.mask) !== 0;\\n  }\\n};\\n\\n// ../../../node_modules/three/src/math/Matrix3.js\\nvar Matrix3 = class {\\n  constructor() {\\n    this.elements = [\\n      1,\\n      0,\\n      0,\\n      0,\\n      1,\\n      0,\\n      0,\\n      0,\\n      1\\n    ];\\n    if (arguments.length > 0) {\\n      console.error(\\\\\\\"THREE.Matrix3: the constructor no longer reads arguments. use .set() instead.\\\\\\\");\\n    }\\n  }\\n  set(n11, n12, n13, n21, n22, n23, n31, n32, n33) {\\n    const te = this.elements;\\n    te[0] = n11;\\n    te[1] = n21;\\n    te[2] = n31;\\n    te[3] = n12;\\n    te[4] = n22;\\n    te[5] = n32;\\n    te[6] = n13;\\n    te[7] = n23;\\n    te[8] = n33;\\n    return this;\\n  }\\n  identity() {\\n    this.set(1, 0, 0, 0, 1, 0, 0, 0, 1);\\n    return this;\\n  }\\n  copy(m) {\\n    const te = this.elements;\\n    const me = m.elements;\\n    te[0] = me[0];\\n    te[1] = me[1];\\n    te[2] = me[2];\\n    te[3] = me[3];\\n    te[4] = me[4];\\n    te[5] = me[5];\\n    te[6] = me[6];\\n    te[7] = me[7];\\n    te[8] = me[8];\\n    return this;\\n  }\\n  extractBasis(xAxis, yAxis, zAxis) {\\n    xAxis.setFromMatrix3Column(this, 0);\\n    yAxis.setFromMatrix3Column(this, 1);\\n    zAxis.setFromMatrix3Column(this, 2);\\n    return this;\\n  }\\n  setFromMatrix4(m) {\\n    const me = m.elements;\\n    this.set(me[0], me[4], me[8], me[1], me[5], me[9], me[2], me[6], me[10]);\\n    return this;\\n  }\\n  multiply(m) {\\n    return this.multiplyMatrices(this, m);\\n  }\\n  premultiply(m) {\\n    return this.multiplyMatrices(m, this);\\n  }\\n  multiplyMatrices(a, b) {\\n    const ae = a.elements;\\n    const be = b.elements;\\n    const te = this.elements;\\n    const a11 = ae[0], a12 = ae[3], a13 = ae[6];\\n    const a21 = ae[1], a22 = ae[4], a23 = ae[7];\\n    const a31 = ae[2], a32 = ae[5], a33 = ae[8];\\n    const b11 = be[0], b12 = be[3], b13 = be[6];\\n    const b21 = be[1], b22 = be[4], b23 = be[7];\\n    const b31 = be[2], b32 = be[5], b33 = be[8];\\n    te[0] = a11 * b11 + a12 * b21 + a13 * b31;\\n    te[3] = a11 * b12 + a12 * b22 + a13 * b32;\\n    te[6] = a11 * b13 + a12 * b23 + a13 * b33;\\n    te[1] = a21 * b11 + a22 * b21 + a23 * b31;\\n    te[4] = a21 * b12 + a22 * b22 + a23 * b32;\\n    te[7] = a21 * b13 + a22 * b23 + a23 * b33;\\n    te[2] = a31 * b11 + a32 * b21 + a33 * b31;\\n    te[5] = a31 * b12 + a32 * b22 + a33 * b32;\\n    te[8] = a31 * b13 + a32 * b23 + a33 * b33;\\n    return this;\\n  }\\n  multiplyScalar(s) {\\n    const te = this.elements;\\n    te[0] *= s;\\n    te[3] *= s;\\n    te[6] *= s;\\n    te[1] *= s;\\n    te[4] *= s;\\n    te[7] *= s;\\n    te[2] *= s;\\n    te[5] *= s;\\n    te[8] *= s;\\n    return this;\\n  }\\n  determinant() {\\n    const te = this.elements;\\n    const a = te[0], b = te[1], c = te[2], d = te[3], e = te[4], f = te[5], g = te[6], h = te[7], i = te[8];\\n    return a * e * i - a * f * h - b * d * i + b * f * g + c * d * h - c * e * g;\\n  }\\n  invert() {\\n    const te = this.elements, n11 = te[0], n21 = te[1], n31 = te[2], n12 = te[3], n22 = te[4], n32 = te[5], n13 = te[6], n23 = te[7], n33 = te[8], t11 = n33 * n22 - n32 * n23, t12 = n32 * n13 - n33 * n12, t13 = n23 * n12 - n22 * n13, det = n11 * t11 + n21 * t12 + n31 * t13;\\n    if (det === 0)\\n      return this.set(0, 0, 0, 0, 0, 0, 0, 0, 0);\\n    const detInv = 1 / det;\\n    te[0] = t11 * detInv;\\n    te[1] = (n31 * n23 - n33 * n21) * detInv;\\n    te[2] = (n32 * n21 - n31 * n22) * detInv;\\n    te[3] = t12 * detInv;\\n    te[4] = (n33 * n11 - n31 * n13) * detInv;\\n    te[5] = (n31 * n12 - n32 * n11) * detInv;\\n    te[6] = t13 * detInv;\\n    te[7] = (n21 * n13 - n23 * n11) * detInv;\\n    te[8] = (n22 * n11 - n21 * n12) * detInv;\\n    return this;\\n  }\\n  transpose() {\\n    let tmp;\\n    const m = this.elements;\\n    tmp = m[1];\\n    m[1] = m[3];\\n    m[3] = tmp;\\n    tmp = m[2];\\n    m[2] = m[6];\\n    m[6] = tmp;\\n    tmp = m[5];\\n    m[5] = m[7];\\n    m[7] = tmp;\\n    return this;\\n  }\\n  getNormalMatrix(matrix4) {\\n    return this.setFromMatrix4(matrix4).invert().transpose();\\n  }\\n  transposeIntoArray(r) {\\n    const m = this.elements;\\n    r[0] = m[0];\\n    r[1] = m[3];\\n    r[2] = m[6];\\n    r[3] = m[1];\\n    r[4] = m[4];\\n    r[5] = m[7];\\n    r[6] = m[2];\\n    r[7] = m[5];\\n    r[8] = m[8];\\n    return this;\\n  }\\n  setUvTransform(tx, ty, sx, sy, rotation, cx, cy) {\\n    const c = Math.cos(rotation);\\n    const s = Math.sin(rotation);\\n    this.set(sx * c, sx * s, -sx * (c * cx + s * cy) + cx + tx, -sy * s, sy * c, -sy * (-s * cx + c * cy) + cy + ty, 0, 0, 1);\\n    return this;\\n  }\\n  scale(sx, sy) {\\n    const te = this.elements;\\n    te[0] *= sx;\\n    te[3] *= sx;\\n    te[6] *= sx;\\n    te[1] *= sy;\\n    te[4] *= sy;\\n    te[7] *= sy;\\n    return this;\\n  }\\n  rotate(theta) {\\n    const c = Math.cos(theta);\\n    const s = Math.sin(theta);\\n    const te = this.elements;\\n    const a11 = te[0], a12 = te[3], a13 = te[6];\\n    const a21 = te[1], a22 = te[4], a23 = te[7];\\n    te[0] = c * a11 + s * a21;\\n    te[3] = c * a12 + s * a22;\\n    te[6] = c * a13 + s * a23;\\n    te[1] = -s * a11 + c * a21;\\n    te[4] = -s * a12 + c * a22;\\n    te[7] = -s * a13 + c * a23;\\n    return this;\\n  }\\n  translate(tx, ty) {\\n    const te = this.elements;\\n    te[0] += tx * te[2];\\n    te[3] += tx * te[5];\\n    te[6] += tx * te[8];\\n    te[1] += ty * te[2];\\n    te[4] += ty * te[5];\\n    te[7] += ty * te[8];\\n    return this;\\n  }\\n  equals(matrix) {\\n    const te = this.elements;\\n    const me = matrix.elements;\\n    for (let i = 0; i < 9; i++) {\\n      if (te[i] !== me[i])\\n        return false;\\n    }\\n    return true;\\n  }\\n  fromArray(array, offset = 0) {\\n    for (let i = 0; i < 9; i++) {\\n      this.elements[i] = array[i + offset];\\n    }\\n    return this;\\n  }\\n  toArray(array = [], offset = 0) {\\n    const te = this.elements;\\n    array[offset] = te[0];\\n    array[offset + 1] = te[1];\\n    array[offset + 2] = te[2];\\n    array[offset + 3] = te[3];\\n    array[offset + 4] = te[4];\\n    array[offset + 5] = te[5];\\n    array[offset + 6] = te[6];\\n    array[offset + 7] = te[7];\\n    array[offset + 8] = te[8];\\n    return array;\\n  }\\n  clone() {\\n    return new this.constructor().fromArray(this.elements);\\n  }\\n};\\nMatrix3.prototype.isMatrix3 = true;\\n\\n// ../../../node_modules/three/src/core/Object3D.js\\nvar _object3DId = 0;\\nvar _v12 = /* @__PURE__ */ new Vector3();\\nvar _q1 = /* @__PURE__ */ new Quaternion();\\nvar _m12 = /* @__PURE__ */ new Matrix4();\\nvar _target = /* @__PURE__ */ new Vector3();\\nvar _position = /* @__PURE__ */ new Vector3();\\nvar _scale = /* @__PURE__ */ new Vector3();\\nvar _quaternion3 = /* @__PURE__ */ new Quaternion();\\nvar _xAxis = /* @__PURE__ */ new Vector3(1, 0, 0);\\nvar _yAxis = /* @__PURE__ */ new Vector3(0, 1, 0);\\nvar _zAxis = /* @__PURE__ */ new Vector3(0, 0, 1);\\nvar _addedEvent = {type: \\\\\\\"added\\\\\\\"};\\nvar _removedEvent = {type: \\\\\\\"removed\\\\\\\"};\\nvar Object3D = class extends EventDispatcher {\\n  constructor() {\\n    super();\\n    Object.defineProperty(this, \\\\\\\"id\\\\\\\", {value: _object3DId++});\\n    this.uuid = generateUUID();\\n    this.name = \\\\\\\"\\\\\\\";\\n    this.type = \\\\\\\"Object3D\\\\\\\";\\n    this.parent = null;\\n    this.children = [];\\n    this.up = Object3D.DefaultUp.clone();\\n    const position = new Vector3();\\n    const rotation = new Euler();\\n    const quaternion = new Quaternion();\\n    const scale = new Vector3(1, 1, 1);\\n    function onRotationChange() {\\n      quaternion.setFromEuler(rotation, false);\\n    }\\n    function onQuaternionChange() {\\n      rotation.setFromQuaternion(quaternion, void 0, false);\\n    }\\n    rotation._onChange(onRotationChange);\\n    quaternion._onChange(onQuaternionChange);\\n    Object.defineProperties(this, {\\n      position: {\\n        configurable: true,\\n        enumerable: true,\\n        value: position\\n      },\\n      rotation: {\\n        configurable: true,\\n        enumerable: true,\\n        value: rotation\\n      },\\n      quaternion: {\\n        configurable: true,\\n        enumerable: true,\\n        value: quaternion\\n      },\\n      scale: {\\n        configurable: true,\\n        enumerable: true,\\n        value: scale\\n      },\\n      modelViewMatrix: {\\n        value: new Matrix4()\\n      },\\n      normalMatrix: {\\n        value: new Matrix3()\\n      }\\n    });\\n    this.matrix = new Matrix4();\\n    this.matrixWorld = new Matrix4();\\n    this.matrixAutoUpdate = Object3D.DefaultMatrixAutoUpdate;\\n    this.matrixWorldNeedsUpdate = false;\\n    this.layers = new Layers();\\n    this.visible = true;\\n    this.castShadow = false;\\n    this.receiveShadow = false;\\n    this.frustumCulled = true;\\n    this.renderOrder = 0;\\n    this.animations = [];\\n    this.userData = {};\\n  }\\n  onBeforeRender() {\\n  }\\n  onAfterRender() {\\n  }\\n  applyMatrix4(matrix) {\\n    if (this.matrixAutoUpdate)\\n      this.updateMatrix();\\n    this.matrix.premultiply(matrix);\\n    this.matrix.decompose(this.position, this.quaternion, this.scale);\\n  }\\n  applyQuaternion(q) {\\n    this.quaternion.premultiply(q);\\n    return this;\\n  }\\n  setRotationFromAxisAngle(axis, angle) {\\n    this.quaternion.setFromAxisAngle(axis, angle);\\n  }\\n  setRotationFromEuler(euler) {\\n    this.quaternion.setFromEuler(euler, true);\\n  }\\n  setRotationFromMatrix(m) {\\n    this.quaternion.setFromRotationMatrix(m);\\n  }\\n  setRotationFromQuaternion(q) {\\n    this.quaternion.copy(q);\\n  }\\n  rotateOnAxis(axis, angle) {\\n    _q1.setFromAxisAngle(axis, angle);\\n    this.quaternion.multiply(_q1);\\n    return this;\\n  }\\n  rotateOnWorldAxis(axis, angle) {\\n    _q1.setFromAxisAngle(axis, angle);\\n    this.quaternion.premultiply(_q1);\\n    return this;\\n  }\\n  rotateX(angle) {\\n    return this.rotateOnAxis(_xAxis, angle);\\n  }\\n  rotateY(angle) {\\n    return this.rotateOnAxis(_yAxis, angle);\\n  }\\n  rotateZ(angle) {\\n    return this.rotateOnAxis(_zAxis, angle);\\n  }\\n  translateOnAxis(axis, distance) {\\n    _v12.copy(axis).applyQuaternion(this.quaternion);\\n    this.position.add(_v12.multiplyScalar(distance));\\n    return this;\\n  }\\n  translateX(distance) {\\n    return this.translateOnAxis(_xAxis, distance);\\n  }\\n  translateY(distance) {\\n    return this.translateOnAxis(_yAxis, distance);\\n  }\\n  translateZ(distance) {\\n    return this.translateOnAxis(_zAxis, distance);\\n  }\\n  localToWorld(vector) {\\n    return vector.applyMatrix4(this.matrixWorld);\\n  }\\n  worldToLocal(vector) {\\n    return vector.applyMatrix4(_m12.copy(this.matrixWorld).invert());\\n  }\\n  lookAt(x, y, z) {\\n    if (x.isVector3) {\\n      _target.copy(x);\\n    } else {\\n      _target.set(x, y, z);\\n    }\\n    const parent = this.parent;\\n    this.updateWorldMatrix(true, false);\\n    _position.setFromMatrixPosition(this.matrixWorld);\\n    if (this.isCamera || this.isLight) {\\n      _m12.lookAt(_position, _target, this.up);\\n    } else {\\n      _m12.lookAt(_target, _position, this.up);\\n    }\\n    this.quaternion.setFromRotationMatrix(_m12);\\n    if (parent) {\\n      _m12.extractRotation(parent.matrixWorld);\\n      _q1.setFromRotationMatrix(_m12);\\n      this.quaternion.premultiply(_q1.invert());\\n    }\\n  }\\n  add(object) {\\n    if (arguments.length > 1) {\\n      for (let i = 0; i < arguments.length; i++) {\\n        this.add(arguments[i]);\\n      }\\n      return this;\\n    }\\n    if (object === this) {\\n      console.error(\\\\\\\"THREE.Object3D.add: object can't be added as a child of itself.\\\\\\\", object);\\n      return this;\\n    }\\n    if (object && object.isObject3D) {\\n      if (object.parent !== null) {\\n        object.parent.remove(object);\\n      }\\n      object.parent = this;\\n      this.children.push(object);\\n      object.dispatchEvent(_addedEvent);\\n    } else {\\n      console.error(\\\\\\\"THREE.Object3D.add: object not an instance of THREE.Object3D.\\\\\\\", object);\\n    }\\n    return this;\\n  }\\n  remove(object) {\\n    if (arguments.length > 1) {\\n      for (let i = 0; i < arguments.length; i++) {\\n        this.remove(arguments[i]);\\n      }\\n      return this;\\n    }\\n    const index = this.children.indexOf(object);\\n    if (index !== -1) {\\n      object.parent = null;\\n      this.children.splice(index, 1);\\n      object.dispatchEvent(_removedEvent);\\n    }\\n    return this;\\n  }\\n  removeFromParent() {\\n    const parent = this.parent;\\n    if (parent !== null) {\\n      parent.remove(this);\\n    }\\n    return this;\\n  }\\n  clear() {\\n    for (let i = 0; i < this.children.length; i++) {\\n      const object = this.children[i];\\n      object.parent = null;\\n      object.dispatchEvent(_removedEvent);\\n    }\\n    this.children.length = 0;\\n    return this;\\n  }\\n  attach(object) {\\n    this.updateWorldMatrix(true, false);\\n    _m12.copy(this.matrixWorld).invert();\\n    if (object.parent !== null) {\\n      object.parent.updateWorldMatrix(true, false);\\n      _m12.multiply(object.parent.matrixWorld);\\n    }\\n    object.applyMatrix4(_m12);\\n    this.add(object);\\n    object.updateWorldMatrix(false, true);\\n    return this;\\n  }\\n  getObjectById(id) {\\n    return this.getObjectByProperty(\\\\\\\"id\\\\\\\", id);\\n  }\\n  getObjectByName(name) {\\n    return this.getObjectByProperty(\\\\\\\"name\\\\\\\", name);\\n  }\\n  getObjectByProperty(name, value) {\\n    if (this[name] === value)\\n      return this;\\n    for (let i = 0, l = this.children.length; i < l; i++) {\\n      const child = this.children[i];\\n      const object = child.getObjectByProperty(name, value);\\n      if (object !== void 0) {\\n        return object;\\n      }\\n    }\\n    return void 0;\\n  }\\n  getWorldPosition(target) {\\n    this.updateWorldMatrix(true, false);\\n    return target.setFromMatrixPosition(this.matrixWorld);\\n  }\\n  getWorldQuaternion(target) {\\n    this.updateWorldMatrix(true, false);\\n    this.matrixWorld.decompose(_position, target, _scale);\\n    return target;\\n  }\\n  getWorldScale(target) {\\n    this.updateWorldMatrix(true, false);\\n    this.matrixWorld.decompose(_position, _quaternion3, target);\\n    return target;\\n  }\\n  getWorldDirection(target) {\\n    this.updateWorldMatrix(true, false);\\n    const e = this.matrixWorld.elements;\\n    return target.set(e[8], e[9], e[10]).normalize();\\n  }\\n  raycast() {\\n  }\\n  traverse(callback) {\\n    callback(this);\\n    const children = this.children;\\n    for (let i = 0, l = children.length; i < l; i++) {\\n      children[i].traverse(callback);\\n    }\\n  }\\n  traverseVisible(callback) {\\n    if (this.visible === false)\\n      return;\\n    callback(this);\\n    const children = this.children;\\n    for (let i = 0, l = children.length; i < l; i++) {\\n      children[i].traverseVisible(callback);\\n    }\\n  }\\n  traverseAncestors(callback) {\\n    const parent = this.parent;\\n    if (parent !== null) {\\n      callback(parent);\\n      parent.traverseAncestors(callback);\\n    }\\n  }\\n  updateMatrix() {\\n    this.matrix.compose(this.position, this.quaternion, this.scale);\\n    this.matrixWorldNeedsUpdate = true;\\n  }\\n  updateMatrixWorld(force) {\\n    if (this.matrixAutoUpdate)\\n      this.updateMatrix();\\n    if (this.matrixWorldNeedsUpdate || force) {\\n      if (this.parent === null) {\\n        this.matrixWorld.copy(this.matrix);\\n      } else {\\n        this.matrixWorld.multiplyMatrices(this.parent.matrixWorld, this.matrix);\\n      }\\n      this.matrixWorldNeedsUpdate = false;\\n      force = true;\\n    }\\n    const children = this.children;\\n    for (let i = 0, l = children.length; i < l; i++) {\\n      children[i].updateMatrixWorld(force);\\n    }\\n  }\\n  updateWorldMatrix(updateParents, updateChildren) {\\n    const parent = this.parent;\\n    if (updateParents === true && parent !== null) {\\n      parent.updateWorldMatrix(true, false);\\n    }\\n    if (this.matrixAutoUpdate)\\n      this.updateMatrix();\\n    if (this.parent === null) {\\n      this.matrixWorld.copy(this.matrix);\\n    } else {\\n      this.matrixWorld.multiplyMatrices(this.parent.matrixWorld, this.matrix);\\n    }\\n    if (updateChildren === true) {\\n      const children = this.children;\\n      for (let i = 0, l = children.length; i < l; i++) {\\n        children[i].updateWorldMatrix(false, true);\\n      }\\n    }\\n  }\\n  toJSON(meta) {\\n    const isRootObject = meta === void 0 || typeof meta === \\\\\\\"string\\\\\\\";\\n    const output = {};\\n    if (isRootObject) {\\n      meta = {\\n        geometries: {},\\n        materials: {},\\n        textures: {},\\n        images: {},\\n        shapes: {},\\n        skeletons: {},\\n        animations: {}\\n      };\\n      output.metadata = {\\n        version: 4.5,\\n        type: \\\\\\\"Object\\\\\\\",\\n        generator: \\\\\\\"Object3D.toJSON\\\\\\\"\\n      };\\n    }\\n    const object = {};\\n    object.uuid = this.uuid;\\n    object.type = this.type;\\n    if (this.name !== \\\\\\\"\\\\\\\")\\n      object.name = this.name;\\n    if (this.castShadow === true)\\n      object.castShadow = true;\\n    if (this.receiveShadow === true)\\n      object.receiveShadow = true;\\n    if (this.visible === false)\\n      object.visible = false;\\n    if (this.frustumCulled === false)\\n      object.frustumCulled = false;\\n    if (this.renderOrder !== 0)\\n      object.renderOrder = this.renderOrder;\\n    if (JSON.stringify(this.userData) !== \\\\\\\"{}\\\\\\\")\\n      object.userData = this.userData;\\n    object.layers = this.layers.mask;\\n    object.matrix = this.matrix.toArray();\\n    if (this.matrixAutoUpdate === false)\\n      object.matrixAutoUpdate = false;\\n    if (this.isInstancedMesh) {\\n      object.type = \\\\\\\"InstancedMesh\\\\\\\";\\n      object.count = this.count;\\n      object.instanceMatrix = this.instanceMatrix.toJSON();\\n      if (this.instanceColor !== null)\\n        object.instanceColor = this.instanceColor.toJSON();\\n    }\\n    function serialize(library, element) {\\n      if (library[element.uuid] === void 0) {\\n        library[element.uuid] = element.toJSON(meta);\\n      }\\n      return element.uuid;\\n    }\\n    if (this.isScene) {\\n      if (this.background) {\\n        if (this.background.isColor) {\\n          object.background = this.background.toJSON();\\n        } else if (this.background.isTexture) {\\n          object.background = this.background.toJSON(meta).uuid;\\n        }\\n      }\\n      if (this.environment && this.environment.isTexture) {\\n        object.environment = this.environment.toJSON(meta).uuid;\\n      }\\n    } else if (this.isMesh || this.isLine || this.isPoints) {\\n      object.geometry = serialize(meta.geometries, this.geometry);\\n      const parameters = this.geometry.parameters;\\n      if (parameters !== void 0 && parameters.shapes !== void 0) {\\n        const shapes = parameters.shapes;\\n        if (Array.isArray(shapes)) {\\n          for (let i = 0, l = shapes.length; i < l; i++) {\\n            const shape = shapes[i];\\n            serialize(meta.shapes, shape);\\n          }\\n        } else {\\n          serialize(meta.shapes, shapes);\\n        }\\n      }\\n    }\\n    if (this.isSkinnedMesh) {\\n      object.bindMode = this.bindMode;\\n      object.bindMatrix = this.bindMatrix.toArray();\\n      if (this.skeleton !== void 0) {\\n        serialize(meta.skeletons, this.skeleton);\\n        object.skeleton = this.skeleton.uuid;\\n      }\\n    }\\n    if (this.material !== void 0) {\\n      if (Array.isArray(this.material)) {\\n        const uuids = [];\\n        for (let i = 0, l = this.material.length; i < l; i++) {\\n          uuids.push(serialize(meta.materials, this.material[i]));\\n        }\\n        object.material = uuids;\\n      } else {\\n        object.material = serialize(meta.materials, this.material);\\n      }\\n    }\\n    if (this.children.length > 0) {\\n      object.children = [];\\n      for (let i = 0; i < this.children.length; i++) {\\n        object.children.push(this.children[i].toJSON(meta).object);\\n      }\\n    }\\n    if (this.animations.length > 0) {\\n      object.animations = [];\\n      for (let i = 0; i < this.animations.length; i++) {\\n        const animation = this.animations[i];\\n        object.animations.push(serialize(meta.animations, animation));\\n      }\\n    }\\n    if (isRootObject) {\\n      const geometries = extractFromCache(meta.geometries);\\n      const materials2 = extractFromCache(meta.materials);\\n      const textures = extractFromCache(meta.textures);\\n      const images = extractFromCache(meta.images);\\n      const shapes = extractFromCache(meta.shapes);\\n      const skeletons = extractFromCache(meta.skeletons);\\n      const animations = extractFromCache(meta.animations);\\n      if (geometries.length > 0)\\n        output.geometries = geometries;\\n      if (materials2.length > 0)\\n        output.materials = materials2;\\n      if (textures.length > 0)\\n        output.textures = textures;\\n      if (images.length > 0)\\n        output.images = images;\\n      if (shapes.length > 0)\\n        output.shapes = shapes;\\n      if (skeletons.length > 0)\\n        output.skeletons = skeletons;\\n      if (animations.length > 0)\\n        output.animations = animations;\\n    }\\n    output.object = object;\\n    return output;\\n    function extractFromCache(cache) {\\n      const values = [];\\n      for (const key in cache) {\\n        const data = cache[key];\\n        delete data.metadata;\\n        values.push(data);\\n      }\\n      return values;\\n    }\\n  }\\n  clone(recursive) {\\n    return new this.constructor().copy(this, recursive);\\n  }\\n  copy(source, recursive = true) {\\n    this.name = source.name;\\n    this.up.copy(source.up);\\n    this.position.copy(source.position);\\n    this.rotation.order = source.rotation.order;\\n    this.quaternion.copy(source.quaternion);\\n    this.scale.copy(source.scale);\\n    this.matrix.copy(source.matrix);\\n    this.matrixWorld.copy(source.matrixWorld);\\n    this.matrixAutoUpdate = source.matrixAutoUpdate;\\n    this.matrixWorldNeedsUpdate = source.matrixWorldNeedsUpdate;\\n    this.layers.mask = source.layers.mask;\\n    this.visible = source.visible;\\n    this.castShadow = source.castShadow;\\n    this.receiveShadow = source.receiveShadow;\\n    this.frustumCulled = source.frustumCulled;\\n    this.renderOrder = source.renderOrder;\\n    this.userData = JSON.parse(JSON.stringify(source.userData));\\n    if (recursive === true) {\\n      for (let i = 0; i < source.children.length; i++) {\\n        const child = source.children[i];\\n        this.add(child.clone());\\n      }\\n    }\\n    return this;\\n  }\\n};\\nObject3D.DefaultUp = new Vector3(0, 1, 0);\\nObject3D.DefaultMatrixAutoUpdate = true;\\nObject3D.prototype.isObject3D = true;\\n\\n// ../../../node_modules/three/src/constants.js\\nvar CullFaceNone = 0;\\nvar CullFaceBack = 1;\\nvar CullFaceFront = 2;\\nvar PCFShadowMap = 1;\\nvar PCFSoftShadowMap = 2;\\nvar VSMShadowMap = 3;\\nvar FrontSide = 0;\\nvar BackSide = 1;\\nvar DoubleSide = 2;\\nvar FlatShading = 1;\\nvar NoBlending = 0;\\nvar NormalBlending = 1;\\nvar AdditiveBlending = 2;\\nvar SubtractiveBlending = 3;\\nvar MultiplyBlending = 4;\\nvar CustomBlending = 5;\\nvar AddEquation = 100;\\nvar SubtractEquation = 101;\\nvar ReverseSubtractEquation = 102;\\nvar MinEquation = 103;\\nvar MaxEquation = 104;\\nvar ZeroFactor = 200;\\nvar OneFactor = 201;\\nvar SrcColorFactor = 202;\\nvar OneMinusSrcColorFactor = 203;\\nvar SrcAlphaFactor = 204;\\nvar OneMinusSrcAlphaFactor = 205;\\nvar DstAlphaFactor = 206;\\nvar OneMinusDstAlphaFactor = 207;\\nvar DstColorFactor = 208;\\nvar OneMinusDstColorFactor = 209;\\nvar SrcAlphaSaturateFactor = 210;\\nvar NeverDepth = 0;\\nvar AlwaysDepth = 1;\\nvar LessDepth = 2;\\nvar LessEqualDepth = 3;\\nvar EqualDepth = 4;\\nvar GreaterEqualDepth = 5;\\nvar GreaterDepth = 6;\\nvar NotEqualDepth = 7;\\nvar MultiplyOperation = 0;\\nvar MixOperation = 1;\\nvar AddOperation = 2;\\nvar NoToneMapping = 0;\\nvar LinearToneMapping = 1;\\nvar ReinhardToneMapping = 2;\\nvar CineonToneMapping = 3;\\nvar ACESFilmicToneMapping = 4;\\nvar CustomToneMapping = 5;\\nvar UVMapping = 300;\\nvar CubeReflectionMapping = 301;\\nvar CubeRefractionMapping = 302;\\nvar EquirectangularReflectionMapping = 303;\\nvar EquirectangularRefractionMapping = 304;\\nvar CubeUVReflectionMapping = 306;\\nvar CubeUVRefractionMapping = 307;\\nvar RepeatWrapping = 1e3;\\nvar ClampToEdgeWrapping = 1001;\\nvar MirroredRepeatWrapping = 1002;\\nvar NearestFilter = 1003;\\nvar NearestMipmapNearestFilter = 1004;\\nvar NearestMipmapLinearFilter = 1005;\\nvar LinearFilter = 1006;\\nvar LinearMipmapNearestFilter = 1007;\\nvar LinearMipmapLinearFilter = 1008;\\nvar UnsignedByteType = 1009;\\nvar ByteType = 1010;\\nvar ShortType = 1011;\\nvar UnsignedShortType = 1012;\\nvar IntType = 1013;\\nvar UnsignedIntType = 1014;\\nvar FloatType = 1015;\\nvar HalfFloatType = 1016;\\nvar UnsignedShort4444Type = 1017;\\nvar UnsignedShort5551Type = 1018;\\nvar UnsignedShort565Type = 1019;\\nvar UnsignedInt248Type = 1020;\\nvar AlphaFormat = 1021;\\nvar RGBFormat = 1022;\\nvar RGBAFormat = 1023;\\nvar LuminanceFormat = 1024;\\nvar LuminanceAlphaFormat = 1025;\\nvar RGBEFormat = RGBAFormat;\\nvar DepthFormat = 1026;\\nvar DepthStencilFormat = 1027;\\nvar RedFormat = 1028;\\nvar RedIntegerFormat = 1029;\\nvar RGFormat = 1030;\\nvar RGIntegerFormat = 1031;\\nvar RGBIntegerFormat = 1032;\\nvar RGBAIntegerFormat = 1033;\\nvar RGB_S3TC_DXT1_Format = 33776;\\nvar RGBA_S3TC_DXT1_Format = 33777;\\nvar RGBA_S3TC_DXT3_Format = 33778;\\nvar RGBA_S3TC_DXT5_Format = 33779;\\nvar RGB_PVRTC_4BPPV1_Format = 35840;\\nvar RGB_PVRTC_2BPPV1_Format = 35841;\\nvar RGBA_PVRTC_4BPPV1_Format = 35842;\\nvar RGBA_PVRTC_2BPPV1_Format = 35843;\\nvar RGB_ETC1_Format = 36196;\\nvar RGB_ETC2_Format = 37492;\\nvar RGBA_ETC2_EAC_Format = 37496;\\nvar RGBA_ASTC_4x4_Format = 37808;\\nvar RGBA_ASTC_5x4_Format = 37809;\\nvar RGBA_ASTC_5x5_Format = 37810;\\nvar RGBA_ASTC_6x5_Format = 37811;\\nvar RGBA_ASTC_6x6_Format = 37812;\\nvar RGBA_ASTC_8x5_Format = 37813;\\nvar RGBA_ASTC_8x6_Format = 37814;\\nvar RGBA_ASTC_8x8_Format = 37815;\\nvar RGBA_ASTC_10x5_Format = 37816;\\nvar RGBA_ASTC_10x6_Format = 37817;\\nvar RGBA_ASTC_10x8_Format = 37818;\\nvar RGBA_ASTC_10x10_Format = 37819;\\nvar RGBA_ASTC_12x10_Format = 37820;\\nvar RGBA_ASTC_12x12_Format = 37821;\\nvar RGBA_BPTC_Format = 36492;\\nvar SRGB8_ALPHA8_ASTC_4x4_Format = 37840;\\nvar SRGB8_ALPHA8_ASTC_5x4_Format = 37841;\\nvar SRGB8_ALPHA8_ASTC_5x5_Format = 37842;\\nvar SRGB8_ALPHA8_ASTC_6x5_Format = 37843;\\nvar SRGB8_ALPHA8_ASTC_6x6_Format = 37844;\\nvar SRGB8_ALPHA8_ASTC_8x5_Format = 37845;\\nvar SRGB8_ALPHA8_ASTC_8x6_Format = 37846;\\nvar SRGB8_ALPHA8_ASTC_8x8_Format = 37847;\\nvar SRGB8_ALPHA8_ASTC_10x5_Format = 37848;\\nvar SRGB8_ALPHA8_ASTC_10x6_Format = 37849;\\nvar SRGB8_ALPHA8_ASTC_10x8_Format = 37850;\\nvar SRGB8_ALPHA8_ASTC_10x10_Format = 37851;\\nvar SRGB8_ALPHA8_ASTC_12x10_Format = 37852;\\nvar SRGB8_ALPHA8_ASTC_12x12_Format = 37853;\\nvar ZeroCurvatureEnding = 2400;\\nvar ZeroSlopeEnding = 2401;\\nvar WrapAroundEnding = 2402;\\nvar LinearEncoding = 3e3;\\nvar sRGBEncoding = 3001;\\nvar GammaEncoding = 3007;\\nvar RGBEEncoding = 3002;\\nvar LogLuvEncoding = 3003;\\nvar RGBM7Encoding = 3004;\\nvar RGBM16Encoding = 3005;\\nvar RGBDEncoding = 3006;\\nvar BasicDepthPacking = 3200;\\nvar RGBADepthPacking = 3201;\\nvar TangentSpaceNormalMap = 0;\\nvar ObjectSpaceNormalMap = 1;\\nvar KeepStencilOp = 7680;\\nvar AlwaysStencilFunc = 519;\\nvar StaticDrawUsage = 35044;\\nvar GLSL3 = \\\\\\\"300 es\\\\\\\";\\n\\n// ../../../node_modules/three/src/math/Box3.js\\nvar Box3 = class {\\n  constructor(min = new Vector3(Infinity, Infinity, Infinity), max = new Vector3(-Infinity, -Infinity, -Infinity)) {\\n    this.min = min;\\n    this.max = max;\\n  }\\n  set(min, max) {\\n    this.min.copy(min);\\n    this.max.copy(max);\\n    return this;\\n  }\\n  setFromArray(array) {\\n    let minX = Infinity;\\n    let minY = Infinity;\\n    let minZ = Infinity;\\n    let maxX = -Infinity;\\n    let maxY = -Infinity;\\n    let maxZ = -Infinity;\\n    for (let i = 0, l = array.length; i < l; i += 3) {\\n      const x = array[i];\\n      const y = array[i + 1];\\n      const z = array[i + 2];\\n      if (x < minX)\\n        minX = x;\\n      if (y < minY)\\n        minY = y;\\n      if (z < minZ)\\n        minZ = z;\\n      if (x > maxX)\\n        maxX = x;\\n      if (y > maxY)\\n        maxY = y;\\n      if (z > maxZ)\\n        maxZ = z;\\n    }\\n    this.min.set(minX, minY, minZ);\\n    this.max.set(maxX, maxY, maxZ);\\n    return this;\\n  }\\n  setFromBufferAttribute(attribute) {\\n    let minX = Infinity;\\n    let minY = Infinity;\\n    let minZ = Infinity;\\n    let maxX = -Infinity;\\n    let maxY = -Infinity;\\n    let maxZ = -Infinity;\\n    for (let i = 0, l = attribute.count; i < l; i++) {\\n      const x = attribute.getX(i);\\n      const y = attribute.getY(i);\\n      const z = attribute.getZ(i);\\n      if (x < minX)\\n        minX = x;\\n      if (y < minY)\\n        minY = y;\\n      if (z < minZ)\\n        minZ = z;\\n      if (x > maxX)\\n        maxX = x;\\n      if (y > maxY)\\n        maxY = y;\\n      if (z > maxZ)\\n        maxZ = z;\\n    }\\n    this.min.set(minX, minY, minZ);\\n    this.max.set(maxX, maxY, maxZ);\\n    return this;\\n  }\\n  setFromPoints(points2) {\\n    this.makeEmpty();\\n    for (let i = 0, il = points2.length; i < il; i++) {\\n      this.expandByPoint(points2[i]);\\n    }\\n    return this;\\n  }\\n  setFromCenterAndSize(center, size) {\\n    const halfSize = _vector2.copy(size).multiplyScalar(0.5);\\n    this.min.copy(center).sub(halfSize);\\n    this.max.copy(center).add(halfSize);\\n    return this;\\n  }\\n  setFromObject(object) {\\n    this.makeEmpty();\\n    return this.expandByObject(object);\\n  }\\n  clone() {\\n    return new this.constructor().copy(this);\\n  }\\n  copy(box) {\\n    this.min.copy(box.min);\\n    this.max.copy(box.max);\\n    return this;\\n  }\\n  makeEmpty() {\\n    this.min.x = this.min.y = this.min.z = Infinity;\\n    this.max.x = this.max.y = this.max.z = -Infinity;\\n    return this;\\n  }\\n  isEmpty() {\\n    return this.max.x < this.min.x || this.max.y < this.min.y || this.max.z < this.min.z;\\n  }\\n  getCenter(target) {\\n    return this.isEmpty() ? target.set(0, 0, 0) : target.addVectors(this.min, this.max).multiplyScalar(0.5);\\n  }\\n  getSize(target) {\\n    return this.isEmpty() ? target.set(0, 0, 0) : target.subVectors(this.max, this.min);\\n  }\\n  expandByPoint(point) {\\n    this.min.min(point);\\n    this.max.max(point);\\n    return this;\\n  }\\n  expandByVector(vector) {\\n    this.min.sub(vector);\\n    this.max.add(vector);\\n    return this;\\n  }\\n  expandByScalar(scalar) {\\n    this.min.addScalar(-scalar);\\n    this.max.addScalar(scalar);\\n    return this;\\n  }\\n  expandByObject(object) {\\n    object.updateWorldMatrix(false, false);\\n    const geometry = object.geometry;\\n    if (geometry !== void 0) {\\n      if (geometry.boundingBox === null) {\\n        geometry.computeBoundingBox();\\n      }\\n      _box.copy(geometry.boundingBox);\\n      _box.applyMatrix4(object.matrixWorld);\\n      this.union(_box);\\n    }\\n    const children = object.children;\\n    for (let i = 0, l = children.length; i < l; i++) {\\n      this.expandByObject(children[i]);\\n    }\\n    return this;\\n  }\\n  containsPoint(point) {\\n    return point.x < this.min.x || point.x > this.max.x || point.y < this.min.y || point.y > this.max.y || point.z < this.min.z || point.z > this.max.z ? false : true;\\n  }\\n  containsBox(box) {\\n    return this.min.x <= box.min.x && box.max.x <= this.max.x && this.min.y <= box.min.y && box.max.y <= this.max.y && this.min.z <= box.min.z && box.max.z <= this.max.z;\\n  }\\n  getParameter(point, target) {\\n    return target.set((point.x - this.min.x) / (this.max.x - this.min.x), (point.y - this.min.y) / (this.max.y - this.min.y), (point.z - this.min.z) / (this.max.z - this.min.z));\\n  }\\n  intersectsBox(box) {\\n    return box.max.x < this.min.x || box.min.x > this.max.x || box.max.y < this.min.y || box.min.y > this.max.y || box.max.z < this.min.z || box.min.z > this.max.z ? false : true;\\n  }\\n  intersectsSphere(sphere) {\\n    this.clampPoint(sphere.center, _vector2);\\n    return _vector2.distanceToSquared(sphere.center) <= sphere.radius * sphere.radius;\\n  }\\n  intersectsPlane(plane) {\\n    let min, max;\\n    if (plane.normal.x > 0) {\\n      min = plane.normal.x * this.min.x;\\n      max = plane.normal.x * this.max.x;\\n    } else {\\n      min = plane.normal.x * this.max.x;\\n      max = plane.normal.x * this.min.x;\\n    }\\n    if (plane.normal.y > 0) {\\n      min += plane.normal.y * this.min.y;\\n      max += plane.normal.y * this.max.y;\\n    } else {\\n      min += plane.normal.y * this.max.y;\\n      max += plane.normal.y * this.min.y;\\n    }\\n    if (plane.normal.z > 0) {\\n      min += plane.normal.z * this.min.z;\\n      max += plane.normal.z * this.max.z;\\n    } else {\\n      min += plane.normal.z * this.max.z;\\n      max += plane.normal.z * this.min.z;\\n    }\\n    return min <= -plane.constant && max >= -plane.constant;\\n  }\\n  intersectsTriangle(triangle) {\\n    if (this.isEmpty()) {\\n      return false;\\n    }\\n    this.getCenter(_center);\\n    _extents.subVectors(this.max, _center);\\n    _v0.subVectors(triangle.a, _center);\\n    _v13.subVectors(triangle.b, _center);\\n    _v2.subVectors(triangle.c, _center);\\n    _f0.subVectors(_v13, _v0);\\n    _f1.subVectors(_v2, _v13);\\n    _f2.subVectors(_v0, _v2);\\n    let axes = [\\n      0,\\n      -_f0.z,\\n      _f0.y,\\n      0,\\n      -_f1.z,\\n      _f1.y,\\n      0,\\n      -_f2.z,\\n      _f2.y,\\n      _f0.z,\\n      0,\\n      -_f0.x,\\n      _f1.z,\\n      0,\\n      -_f1.x,\\n      _f2.z,\\n      0,\\n      -_f2.x,\\n      -_f0.y,\\n      _f0.x,\\n      0,\\n      -_f1.y,\\n      _f1.x,\\n      0,\\n      -_f2.y,\\n      _f2.x,\\n      0\\n    ];\\n    if (!satForAxes(axes, _v0, _v13, _v2, _extents)) {\\n      return false;\\n    }\\n    axes = [1, 0, 0, 0, 1, 0, 0, 0, 1];\\n    if (!satForAxes(axes, _v0, _v13, _v2, _extents)) {\\n      return false;\\n    }\\n    _triangleNormal.crossVectors(_f0, _f1);\\n    axes = [_triangleNormal.x, _triangleNormal.y, _triangleNormal.z];\\n    return satForAxes(axes, _v0, _v13, _v2, _extents);\\n  }\\n  clampPoint(point, target) {\\n    return target.copy(point).clamp(this.min, this.max);\\n  }\\n  distanceToPoint(point) {\\n    const clampedPoint = _vector2.copy(point).clamp(this.min, this.max);\\n    return clampedPoint.sub(point).length();\\n  }\\n  getBoundingSphere(target) {\\n    this.getCenter(target.center);\\n    target.radius = this.getSize(_vector2).length() * 0.5;\\n    return target;\\n  }\\n  intersect(box) {\\n    this.min.max(box.min);\\n    this.max.min(box.max);\\n    if (this.isEmpty())\\n      this.makeEmpty();\\n    return this;\\n  }\\n  union(box) {\\n    this.min.min(box.min);\\n    this.max.max(box.max);\\n    return this;\\n  }\\n  applyMatrix4(matrix) {\\n    if (this.isEmpty())\\n      return this;\\n    _points[0].set(this.min.x, this.min.y, this.min.z).applyMatrix4(matrix);\\n    _points[1].set(this.min.x, this.min.y, this.max.z).applyMatrix4(matrix);\\n    _points[2].set(this.min.x, this.max.y, this.min.z).applyMatrix4(matrix);\\n    _points[3].set(this.min.x, this.max.y, this.max.z).applyMatrix4(matrix);\\n    _points[4].set(this.max.x, this.min.y, this.min.z).applyMatrix4(matrix);\\n    _points[5].set(this.max.x, this.min.y, this.max.z).applyMatrix4(matrix);\\n    _points[6].set(this.max.x, this.max.y, this.min.z).applyMatrix4(matrix);\\n    _points[7].set(this.max.x, this.max.y, this.max.z).applyMatrix4(matrix);\\n    this.setFromPoints(_points);\\n    return this;\\n  }\\n  translate(offset) {\\n    this.min.add(offset);\\n    this.max.add(offset);\\n    return this;\\n  }\\n  equals(box) {\\n    return box.min.equals(this.min) && box.max.equals(this.max);\\n  }\\n};\\nBox3.prototype.isBox3 = true;\\nvar _points = [\\n  /* @__PURE__ */ new Vector3(),\\n  /* @__PURE__ */ new Vector3(),\\n  /* @__PURE__ */ new Vector3(),\\n  /* @__PURE__ */ new Vector3(),\\n  /* @__PURE__ */ new Vector3(),\\n  /* @__PURE__ */ new Vector3(),\\n  /* @__PURE__ */ new Vector3(),\\n  /* @__PURE__ */ new Vector3()\\n];\\nvar _vector2 = /* @__PURE__ */ new Vector3();\\nvar _box = /* @__PURE__ */ new Box3();\\nvar _v0 = /* @__PURE__ */ new Vector3();\\nvar _v13 = /* @__PURE__ */ new Vector3();\\nvar _v2 = /* @__PURE__ */ new Vector3();\\nvar _f0 = /* @__PURE__ */ new Vector3();\\nvar _f1 = /* @__PURE__ */ new Vector3();\\nvar _f2 = /* @__PURE__ */ new Vector3();\\nvar _center = /* @__PURE__ */ new Vector3();\\nvar _extents = /* @__PURE__ */ new Vector3();\\nvar _triangleNormal = /* @__PURE__ */ new Vector3();\\nvar _testAxis = /* @__PURE__ */ new Vector3();\\nfunction satForAxes(axes, v0, v1, v2, extents) {\\n  for (let i = 0, j = axes.length - 3; i <= j; i += 3) {\\n    _testAxis.fromArray(axes, i);\\n    const r = extents.x * Math.abs(_testAxis.x) + extents.y * Math.abs(_testAxis.y) + extents.z * Math.abs(_testAxis.z);\\n    const p0 = v0.dot(_testAxis);\\n    const p1 = v1.dot(_testAxis);\\n    const p2 = v2.dot(_testAxis);\\n    if (Math.max(-Math.max(p0, p1, p2), Math.min(p0, p1, p2)) > r) {\\n      return false;\\n    }\\n  }\\n  return true;\\n}\\n\\n// ../../../node_modules/three/src/math/Sphere.js\\nvar _box2 = /* @__PURE__ */ new Box3();\\nvar _v14 = /* @__PURE__ */ new Vector3();\\nvar _toFarthestPoint = /* @__PURE__ */ new Vector3();\\nvar _toPoint = /* @__PURE__ */ new Vector3();\\nvar Sphere = class {\\n  constructor(center = new Vector3(), radius = -1) {\\n    this.center = center;\\n    this.radius = radius;\\n  }\\n  set(center, radius) {\\n    this.center.copy(center);\\n    this.radius = radius;\\n    return this;\\n  }\\n  setFromPoints(points2, optionalCenter) {\\n    const center = this.center;\\n    if (optionalCenter !== void 0) {\\n      center.copy(optionalCenter);\\n    } else {\\n      _box2.setFromPoints(points2).getCenter(center);\\n    }\\n    let maxRadiusSq = 0;\\n    for (let i = 0, il = points2.length; i < il; i++) {\\n      maxRadiusSq = Math.max(maxRadiusSq, center.distanceToSquared(points2[i]));\\n    }\\n    this.radius = Math.sqrt(maxRadiusSq);\\n    return this;\\n  }\\n  copy(sphere) {\\n    this.center.copy(sphere.center);\\n    this.radius = sphere.radius;\\n    return this;\\n  }\\n  isEmpty() {\\n    return this.radius < 0;\\n  }\\n  makeEmpty() {\\n    this.center.set(0, 0, 0);\\n    this.radius = -1;\\n    return this;\\n  }\\n  containsPoint(point) {\\n    return point.distanceToSquared(this.center) <= this.radius * this.radius;\\n  }\\n  distanceToPoint(point) {\\n    return point.distanceTo(this.center) - this.radius;\\n  }\\n  intersectsSphere(sphere) {\\n    const radiusSum = this.radius + sphere.radius;\\n    return sphere.center.distanceToSquared(this.center) <= radiusSum * radiusSum;\\n  }\\n  intersectsBox(box) {\\n    return box.intersectsSphere(this);\\n  }\\n  intersectsPlane(plane) {\\n    return Math.abs(plane.distanceToPoint(this.center)) <= this.radius;\\n  }\\n  clampPoint(point, target) {\\n    const deltaLengthSq = this.center.distanceToSquared(point);\\n    target.copy(point);\\n    if (deltaLengthSq > this.radius * this.radius) {\\n      target.sub(this.center).normalize();\\n      target.multiplyScalar(this.radius).add(this.center);\\n    }\\n    return target;\\n  }\\n  getBoundingBox(target) {\\n    if (this.isEmpty()) {\\n      target.makeEmpty();\\n      return target;\\n    }\\n    target.set(this.center, this.center);\\n    target.expandByScalar(this.radius);\\n    return target;\\n  }\\n  applyMatrix4(matrix) {\\n    this.center.applyMatrix4(matrix);\\n    this.radius = this.radius * matrix.getMaxScaleOnAxis();\\n    return this;\\n  }\\n  translate(offset) {\\n    this.center.add(offset);\\n    return this;\\n  }\\n  expandByPoint(point) {\\n    _toPoint.subVectors(point, this.center);\\n    const lengthSq = _toPoint.lengthSq();\\n    if (lengthSq > this.radius * this.radius) {\\n      const length = Math.sqrt(lengthSq);\\n      const missingRadiusHalf = (length - this.radius) * 0.5;\\n      this.center.add(_toPoint.multiplyScalar(missingRadiusHalf / length));\\n      this.radius += missingRadiusHalf;\\n    }\\n    return this;\\n  }\\n  union(sphere) {\\n    _toFarthestPoint.subVectors(sphere.center, this.center).normalize().multiplyScalar(sphere.radius);\\n    this.expandByPoint(_v14.copy(sphere.center).add(_toFarthestPoint));\\n    this.expandByPoint(_v14.copy(sphere.center).sub(_toFarthestPoint));\\n    return this;\\n  }\\n  equals(sphere) {\\n    return sphere.center.equals(this.center) && sphere.radius === this.radius;\\n  }\\n  clone() {\\n    return new this.constructor().copy(this);\\n  }\\n};\\n\\n// ../../../node_modules/three/src/math/Plane.js\\nvar _vector1 = /* @__PURE__ */ new Vector3();\\nvar _vector22 = /* @__PURE__ */ new Vector3();\\nvar _normalMatrix = /* @__PURE__ */ new Matrix3();\\nvar Plane = class {\\n  constructor(normal = new Vector3(1, 0, 0), constant = 0) {\\n    this.normal = normal;\\n    this.constant = constant;\\n  }\\n  set(normal, constant) {\\n    this.normal.copy(normal);\\n    this.constant = constant;\\n    return this;\\n  }\\n  setComponents(x, y, z, w) {\\n    this.normal.set(x, y, z);\\n    this.constant = w;\\n    return this;\\n  }\\n  setFromNormalAndCoplanarPoint(normal, point) {\\n    this.normal.copy(normal);\\n    this.constant = -point.dot(this.normal);\\n    return this;\\n  }\\n  setFromCoplanarPoints(a, b, c) {\\n    const normal = _vector1.subVectors(c, b).cross(_vector22.subVectors(a, b)).normalize();\\n    this.setFromNormalAndCoplanarPoint(normal, a);\\n    return this;\\n  }\\n  copy(plane) {\\n    this.normal.copy(plane.normal);\\n    this.constant = plane.constant;\\n    return this;\\n  }\\n  normalize() {\\n    const inverseNormalLength = 1 / this.normal.length();\\n    this.normal.multiplyScalar(inverseNormalLength);\\n    this.constant *= inverseNormalLength;\\n    return this;\\n  }\\n  negate() {\\n    this.constant *= -1;\\n    this.normal.negate();\\n    return this;\\n  }\\n  distanceToPoint(point) {\\n    return this.normal.dot(point) + this.constant;\\n  }\\n  distanceToSphere(sphere) {\\n    return this.distanceToPoint(sphere.center) - sphere.radius;\\n  }\\n  projectPoint(point, target) {\\n    return target.copy(this.normal).multiplyScalar(-this.distanceToPoint(point)).add(point);\\n  }\\n  intersectLine(line, target) {\\n    const direction = line.delta(_vector1);\\n    const denominator = this.normal.dot(direction);\\n    if (denominator === 0) {\\n      if (this.distanceToPoint(line.start) === 0) {\\n        return target.copy(line.start);\\n      }\\n      return null;\\n    }\\n    const t = -(line.start.dot(this.normal) + this.constant) / denominator;\\n    if (t < 0 || t > 1) {\\n      return null;\\n    }\\n    return target.copy(direction).multiplyScalar(t).add(line.start);\\n  }\\n  intersectsLine(line) {\\n    const startSign = this.distanceToPoint(line.start);\\n    const endSign = this.distanceToPoint(line.end);\\n    return startSign < 0 && endSign > 0 || endSign < 0 && startSign > 0;\\n  }\\n  intersectsBox(box) {\\n    return box.intersectsPlane(this);\\n  }\\n  intersectsSphere(sphere) {\\n    return sphere.intersectsPlane(this);\\n  }\\n  coplanarPoint(target) {\\n    return target.copy(this.normal).multiplyScalar(-this.constant);\\n  }\\n  applyMatrix4(matrix, optionalNormalMatrix) {\\n    const normalMatrix = optionalNormalMatrix || _normalMatrix.getNormalMatrix(matrix);\\n    const referencePoint = this.coplanarPoint(_vector1).applyMatrix4(matrix);\\n    const normal = this.normal.applyMatrix3(normalMatrix).normalize();\\n    this.constant = -referencePoint.dot(normal);\\n    return this;\\n  }\\n  translate(offset) {\\n    this.constant -= offset.dot(this.normal);\\n    return this;\\n  }\\n  equals(plane) {\\n    return plane.normal.equals(this.normal) && plane.constant === this.constant;\\n  }\\n  clone() {\\n    return new this.constructor().copy(this);\\n  }\\n};\\nPlane.prototype.isPlane = true;\\n\\n// ../../../node_modules/three/src/math/Frustum.js\\nvar _sphere = /* @__PURE__ */ new Sphere();\\nvar _vector3 = /* @__PURE__ */ new Vector3();\\nvar Frustum = class {\\n  constructor(p0 = new Plane(), p1 = new Plane(), p2 = new Plane(), p3 = new Plane(), p4 = new Plane(), p5 = new Plane()) {\\n    this.planes = [p0, p1, p2, p3, p4, p5];\\n  }\\n  set(p0, p1, p2, p3, p4, p5) {\\n    const planes = this.planes;\\n    planes[0].copy(p0);\\n    planes[1].copy(p1);\\n    planes[2].copy(p2);\\n    planes[3].copy(p3);\\n    planes[4].copy(p4);\\n    planes[5].copy(p5);\\n    return this;\\n  }\\n  copy(frustum) {\\n    const planes = this.planes;\\n    for (let i = 0; i < 6; i++) {\\n      planes[i].copy(frustum.planes[i]);\\n    }\\n    return this;\\n  }\\n  setFromProjectionMatrix(m) {\\n    const planes = this.planes;\\n    const me = m.elements;\\n    const me0 = me[0], me1 = me[1], me2 = me[2], me3 = me[3];\\n    const me4 = me[4], me5 = me[5], me6 = me[6], me7 = me[7];\\n    const me8 = me[8], me9 = me[9], me10 = me[10], me11 = me[11];\\n    const me12 = me[12], me13 = me[13], me14 = me[14], me15 = me[15];\\n    planes[0].setComponents(me3 - me0, me7 - me4, me11 - me8, me15 - me12).normalize();\\n    planes[1].setComponents(me3 + me0, me7 + me4, me11 + me8, me15 + me12).normalize();\\n    planes[2].setComponents(me3 + me1, me7 + me5, me11 + me9, me15 + me13).normalize();\\n    planes[3].setComponents(me3 - me1, me7 - me5, me11 - me9, me15 - me13).normalize();\\n    planes[4].setComponents(me3 - me2, me7 - me6, me11 - me10, me15 - me14).normalize();\\n    planes[5].setComponents(me3 + me2, me7 + me6, me11 + me10, me15 + me14).normalize();\\n    return this;\\n  }\\n  intersectsObject(object) {\\n    const geometry = object.geometry;\\n    if (geometry.boundingSphere === null)\\n      geometry.computeBoundingSphere();\\n    _sphere.copy(geometry.boundingSphere).applyMatrix4(object.matrixWorld);\\n    return this.intersectsSphere(_sphere);\\n  }\\n  intersectsSprite(sprite2) {\\n    _sphere.center.set(0, 0, 0);\\n    _sphere.radius = 0.7071067811865476;\\n    _sphere.applyMatrix4(sprite2.matrixWorld);\\n    return this.intersectsSphere(_sphere);\\n  }\\n  intersectsSphere(sphere) {\\n    const planes = this.planes;\\n    const center = sphere.center;\\n    const negRadius = -sphere.radius;\\n    for (let i = 0; i < 6; i++) {\\n      const distance = planes[i].distanceToPoint(center);\\n      if (distance < negRadius) {\\n        return false;\\n      }\\n    }\\n    return true;\\n  }\\n  intersectsBox(box) {\\n    const planes = this.planes;\\n    for (let i = 0; i < 6; i++) {\\n      const plane = planes[i];\\n      _vector3.x = plane.normal.x > 0 ? box.max.x : box.min.x;\\n      _vector3.y = plane.normal.y > 0 ? box.max.y : box.min.y;\\n      _vector3.z = plane.normal.z > 0 ? box.max.z : box.min.z;\\n      if (plane.distanceToPoint(_vector3) < 0) {\\n        return false;\\n      }\\n    }\\n    return true;\\n  }\\n  containsPoint(point) {\\n    const planes = this.planes;\\n    for (let i = 0; i < 6; i++) {\\n      if (planes[i].distanceToPoint(point) < 0) {\\n        return false;\\n      }\\n    }\\n    return true;\\n  }\\n  clone() {\\n    return new this.constructor().copy(this);\\n  }\\n};\\n\\n// ../../../node_modules/three/src/math/Vector4.js\\nvar Vector4 = class {\\n  constructor(x = 0, y = 0, z = 0, w = 1) {\\n    this.x = x;\\n    this.y = y;\\n    this.z = z;\\n    this.w = w;\\n  }\\n  get width() {\\n    return this.z;\\n  }\\n  set width(value) {\\n    this.z = value;\\n  }\\n  get height() {\\n    return this.w;\\n  }\\n  set height(value) {\\n    this.w = value;\\n  }\\n  set(x, y, z, w) {\\n    this.x = x;\\n    this.y = y;\\n    this.z = z;\\n    this.w = w;\\n    return this;\\n  }\\n  setScalar(scalar) {\\n    this.x = scalar;\\n    this.y = scalar;\\n    this.z = scalar;\\n    this.w = scalar;\\n    return this;\\n  }\\n  setX(x) {\\n    this.x = x;\\n    return this;\\n  }\\n  setY(y) {\\n    this.y = y;\\n    return this;\\n  }\\n  setZ(z) {\\n    this.z = z;\\n    return this;\\n  }\\n  setW(w) {\\n    this.w = w;\\n    return this;\\n  }\\n  setComponent(index, value) {\\n    switch (index) {\\n      case 0:\\n        this.x = value;\\n        break;\\n      case 1:\\n        this.y = value;\\n        break;\\n      case 2:\\n        this.z = value;\\n        break;\\n      case 3:\\n        this.w = value;\\n        break;\\n      default:\\n        throw new Error(\\\\\\\"index is out of range: \\\\\\\" + index);\\n    }\\n    return this;\\n  }\\n  getComponent(index) {\\n    switch (index) {\\n      case 0:\\n        return this.x;\\n      case 1:\\n        return this.y;\\n      case 2:\\n        return this.z;\\n      case 3:\\n        return this.w;\\n      default:\\n        throw new Error(\\\\\\\"index is out of range: \\\\\\\" + index);\\n    }\\n  }\\n  clone() {\\n    return new this.constructor(this.x, this.y, this.z, this.w);\\n  }\\n  copy(v) {\\n    this.x = v.x;\\n    this.y = v.y;\\n    this.z = v.z;\\n    this.w = v.w !== void 0 ? v.w : 1;\\n    return this;\\n  }\\n  add(v, w) {\\n    if (w !== void 0) {\\n      console.warn(\\\\\\\"THREE.Vector4: .add() now only accepts one argument. Use .addVectors( a, b ) instead.\\\\\\\");\\n      return this.addVectors(v, w);\\n    }\\n    this.x += v.x;\\n    this.y += v.y;\\n    this.z += v.z;\\n    this.w += v.w;\\n    return this;\\n  }\\n  addScalar(s) {\\n    this.x += s;\\n    this.y += s;\\n    this.z += s;\\n    this.w += s;\\n    return this;\\n  }\\n  addVectors(a, b) {\\n    this.x = a.x + b.x;\\n    this.y = a.y + b.y;\\n    this.z = a.z + b.z;\\n    this.w = a.w + b.w;\\n    return this;\\n  }\\n  addScaledVector(v, s) {\\n    this.x += v.x * s;\\n    this.y += v.y * s;\\n    this.z += v.z * s;\\n    this.w += v.w * s;\\n    return this;\\n  }\\n  sub(v, w) {\\n    if (w !== void 0) {\\n      console.warn(\\\\\\\"THREE.Vector4: .sub() now only accepts one argument. Use .subVectors( a, b ) instead.\\\\\\\");\\n      return this.subVectors(v, w);\\n    }\\n    this.x -= v.x;\\n    this.y -= v.y;\\n    this.z -= v.z;\\n    this.w -= v.w;\\n    return this;\\n  }\\n  subScalar(s) {\\n    this.x -= s;\\n    this.y -= s;\\n    this.z -= s;\\n    this.w -= s;\\n    return this;\\n  }\\n  subVectors(a, b) {\\n    this.x = a.x - b.x;\\n    this.y = a.y - b.y;\\n    this.z = a.z - b.z;\\n    this.w = a.w - b.w;\\n    return this;\\n  }\\n  multiply(v) {\\n    this.x *= v.x;\\n    this.y *= v.y;\\n    this.z *= v.z;\\n    this.w *= v.w;\\n    return this;\\n  }\\n  multiplyScalar(scalar) {\\n    this.x *= scalar;\\n    this.y *= scalar;\\n    this.z *= scalar;\\n    this.w *= scalar;\\n    return this;\\n  }\\n  applyMatrix4(m) {\\n    const x = this.x, y = this.y, z = this.z, w = this.w;\\n    const e = m.elements;\\n    this.x = e[0] * x + e[4] * y + e[8] * z + e[12] * w;\\n    this.y = e[1] * x + e[5] * y + e[9] * z + e[13] * w;\\n    this.z = e[2] * x + e[6] * y + e[10] * z + e[14] * w;\\n    this.w = e[3] * x + e[7] * y + e[11] * z + e[15] * w;\\n    return this;\\n  }\\n  divideScalar(scalar) {\\n    return this.multiplyScalar(1 / scalar);\\n  }\\n  setAxisAngleFromQuaternion(q) {\\n    this.w = 2 * Math.acos(q.w);\\n    const s = Math.sqrt(1 - q.w * q.w);\\n    if (s < 1e-4) {\\n      this.x = 1;\\n      this.y = 0;\\n      this.z = 0;\\n    } else {\\n      this.x = q.x / s;\\n      this.y = q.y / s;\\n      this.z = q.z / s;\\n    }\\n    return this;\\n  }\\n  setAxisAngleFromRotationMatrix(m) {\\n    let angle, x, y, z;\\n    const epsilon = 0.01, epsilon2 = 0.1, te = m.elements, m11 = te[0], m12 = te[4], m13 = te[8], m21 = te[1], m22 = te[5], m23 = te[9], m31 = te[2], m32 = te[6], m33 = te[10];\\n    if (Math.abs(m12 - m21) < epsilon && Math.abs(m13 - m31) < epsilon && Math.abs(m23 - m32) < epsilon) {\\n      if (Math.abs(m12 + m21) < epsilon2 && Math.abs(m13 + m31) < epsilon2 && Math.abs(m23 + m32) < epsilon2 && Math.abs(m11 + m22 + m33 - 3) < epsilon2) {\\n        this.set(1, 0, 0, 0);\\n        return this;\\n      }\\n      angle = Math.PI;\\n      const xx = (m11 + 1) / 2;\\n      const yy = (m22 + 1) / 2;\\n      const zz = (m33 + 1) / 2;\\n      const xy = (m12 + m21) / 4;\\n      const xz = (m13 + m31) / 4;\\n      const yz = (m23 + m32) / 4;\\n      if (xx > yy && xx > zz) {\\n        if (xx < epsilon) {\\n          x = 0;\\n          y = 0.707106781;\\n          z = 0.707106781;\\n        } else {\\n          x = Math.sqrt(xx);\\n          y = xy / x;\\n          z = xz / x;\\n        }\\n      } else if (yy > zz) {\\n        if (yy < epsilon) {\\n          x = 0.707106781;\\n          y = 0;\\n          z = 0.707106781;\\n        } else {\\n          y = Math.sqrt(yy);\\n          x = xy / y;\\n          z = yz / y;\\n        }\\n      } else {\\n        if (zz < epsilon) {\\n          x = 0.707106781;\\n          y = 0.707106781;\\n          z = 0;\\n        } else {\\n          z = Math.sqrt(zz);\\n          x = xz / z;\\n          y = yz / z;\\n        }\\n      }\\n      this.set(x, y, z, angle);\\n      return this;\\n    }\\n    let s = Math.sqrt((m32 - m23) * (m32 - m23) + (m13 - m31) * (m13 - m31) + (m21 - m12) * (m21 - m12));\\n    if (Math.abs(s) < 1e-3)\\n      s = 1;\\n    this.x = (m32 - m23) / s;\\n    this.y = (m13 - m31) / s;\\n    this.z = (m21 - m12) / s;\\n    this.w = Math.acos((m11 + m22 + m33 - 1) / 2);\\n    return this;\\n  }\\n  min(v) {\\n    this.x = Math.min(this.x, v.x);\\n    this.y = Math.min(this.y, v.y);\\n    this.z = Math.min(this.z, v.z);\\n    this.w = Math.min(this.w, v.w);\\n    return this;\\n  }\\n  max(v) {\\n    this.x = Math.max(this.x, v.x);\\n    this.y = Math.max(this.y, v.y);\\n    this.z = Math.max(this.z, v.z);\\n    this.w = Math.max(this.w, v.w);\\n    return this;\\n  }\\n  clamp(min, max) {\\n    this.x = Math.max(min.x, Math.min(max.x, this.x));\\n    this.y = Math.max(min.y, Math.min(max.y, this.y));\\n    this.z = Math.max(min.z, Math.min(max.z, this.z));\\n    this.w = Math.max(min.w, Math.min(max.w, this.w));\\n    return this;\\n  }\\n  clampScalar(minVal, maxVal) {\\n    this.x = Math.max(minVal, Math.min(maxVal, this.x));\\n    this.y = Math.max(minVal, Math.min(maxVal, this.y));\\n    this.z = Math.max(minVal, Math.min(maxVal, this.z));\\n    this.w = Math.max(minVal, Math.min(maxVal, this.w));\\n    return this;\\n  }\\n  clampLength(min, max) {\\n    const length = this.length();\\n    return this.divideScalar(length || 1).multiplyScalar(Math.max(min, Math.min(max, length)));\\n  }\\n  floor() {\\n    this.x = Math.floor(this.x);\\n    this.y = Math.floor(this.y);\\n    this.z = Math.floor(this.z);\\n    this.w = Math.floor(this.w);\\n    return this;\\n  }\\n  ceil() {\\n    this.x = Math.ceil(this.x);\\n    this.y = Math.ceil(this.y);\\n    this.z = Math.ceil(this.z);\\n    this.w = Math.ceil(this.w);\\n    return this;\\n  }\\n  round() {\\n    this.x = Math.round(this.x);\\n    this.y = Math.round(this.y);\\n    this.z = Math.round(this.z);\\n    this.w = Math.round(this.w);\\n    return this;\\n  }\\n  roundToZero() {\\n    this.x = this.x < 0 ? Math.ceil(this.x) : Math.floor(this.x);\\n    this.y = this.y < 0 ? Math.ceil(this.y) : Math.floor(this.y);\\n    this.z = this.z < 0 ? Math.ceil(this.z) : Math.floor(this.z);\\n    this.w = this.w < 0 ? Math.ceil(this.w) : Math.floor(this.w);\\n    return this;\\n  }\\n  negate() {\\n    this.x = -this.x;\\n    this.y = -this.y;\\n    this.z = -this.z;\\n    this.w = -this.w;\\n    return this;\\n  }\\n  dot(v) {\\n    return this.x * v.x + this.y * v.y + this.z * v.z + this.w * v.w;\\n  }\\n  lengthSq() {\\n    return this.x * this.x + this.y * this.y + this.z * this.z + this.w * this.w;\\n  }\\n  length() {\\n    return Math.sqrt(this.x * this.x + this.y * this.y + this.z * this.z + this.w * this.w);\\n  }\\n  manhattanLength() {\\n    return Math.abs(this.x) + Math.abs(this.y) + Math.abs(this.z) + Math.abs(this.w);\\n  }\\n  normalize() {\\n    return this.divideScalar(this.length() || 1);\\n  }\\n  setLength(length) {\\n    return this.normalize().multiplyScalar(length);\\n  }\\n  lerp(v, alpha) {\\n    this.x += (v.x - this.x) * alpha;\\n    this.y += (v.y - this.y) * alpha;\\n    this.z += (v.z - this.z) * alpha;\\n    this.w += (v.w - this.w) * alpha;\\n    return this;\\n  }\\n  lerpVectors(v1, v2, alpha) {\\n    this.x = v1.x + (v2.x - v1.x) * alpha;\\n    this.y = v1.y + (v2.y - v1.y) * alpha;\\n    this.z = v1.z + (v2.z - v1.z) * alpha;\\n    this.w = v1.w + (v2.w - v1.w) * alpha;\\n    return this;\\n  }\\n  equals(v) {\\n    return v.x === this.x && v.y === this.y && v.z === this.z && v.w === this.w;\\n  }\\n  fromArray(array, offset = 0) {\\n    this.x = array[offset];\\n    this.y = array[offset + 1];\\n    this.z = array[offset + 2];\\n    this.w = array[offset + 3];\\n    return this;\\n  }\\n  toArray(array = [], offset = 0) {\\n    array[offset] = this.x;\\n    array[offset + 1] = this.y;\\n    array[offset + 2] = this.z;\\n    array[offset + 3] = this.w;\\n    return array;\\n  }\\n  fromBufferAttribute(attribute, index, offset) {\\n    if (offset !== void 0) {\\n      console.warn(\\\\\\\"THREE.Vector4: offset has been removed from .fromBufferAttribute().\\\\\\\");\\n    }\\n    this.x = attribute.getX(index);\\n    this.y = attribute.getY(index);\\n    this.z = attribute.getZ(index);\\n    this.w = attribute.getW(index);\\n    return this;\\n  }\\n  random() {\\n    this.x = Math.random();\\n    this.y = Math.random();\\n    this.z = Math.random();\\n    this.w = Math.random();\\n    return this;\\n  }\\n  *[Symbol.iterator]() {\\n    yield this.x;\\n    yield this.y;\\n    yield this.z;\\n    yield this.w;\\n  }\\n};\\nVector4.prototype.isVector4 = true;\\n\\n// ../../../node_modules/three/src/renderers/webgl/WebGLAnimation.js\\nfunction WebGLAnimation() {\\n  let context = null;\\n  let isAnimating = false;\\n  let animationLoop = null;\\n  let requestId = null;\\n  function onAnimationFrame(time, frame) {\\n    animationLoop(time, frame);\\n    requestId = context.requestAnimationFrame(onAnimationFrame);\\n  }\\n  return {\\n    start: function() {\\n      if (isAnimating === true)\\n        return;\\n      if (animationLoop === null)\\n        return;\\n      requestId = context.requestAnimationFrame(onAnimationFrame);\\n      isAnimating = true;\\n    },\\n    stop: function() {\\n      context.cancelAnimationFrame(requestId);\\n      isAnimating = false;\\n    },\\n    setAnimationLoop: function(callback) {\\n      animationLoop = callback;\\n    },\\n    setContext: function(value) {\\n      context = value;\\n    }\\n  };\\n}\\n\\n// ../../../node_modules/three/src/renderers/webgl/WebGLAttributes.js\\nfunction WebGLAttributes(gl, capabilities) {\\n  const isWebGL2 = capabilities.isWebGL2;\\n  const buffers = new WeakMap();\\n  function createBuffer(attribute, bufferType) {\\n    const array = attribute.array;\\n    const usage = attribute.usage;\\n    const buffer = gl.createBuffer();\\n    gl.bindBuffer(bufferType, buffer);\\n    gl.bufferData(bufferType, array, usage);\\n    attribute.onUploadCallback();\\n    let type = gl.FLOAT;\\n    if (array instanceof Float32Array) {\\n      type = gl.FLOAT;\\n    } else if (array instanceof Float64Array) {\\n      console.warn(\\\\\\\"THREE.WebGLAttributes: Unsupported data buffer format: Float64Array.\\\\\\\");\\n    } else if (array instanceof Uint16Array) {\\n      if (attribute.isFloat16BufferAttribute) {\\n        if (isWebGL2) {\\n          type = gl.HALF_FLOAT;\\n        } else {\\n          console.warn(\\\\\\\"THREE.WebGLAttributes: Usage of Float16BufferAttribute requires WebGL2.\\\\\\\");\\n        }\\n      } else {\\n        type = gl.UNSIGNED_SHORT;\\n      }\\n    } else if (array instanceof Int16Array) {\\n      type = gl.SHORT;\\n    } else if (array instanceof Uint32Array) {\\n      type = gl.UNSIGNED_INT;\\n    } else if (array instanceof Int32Array) {\\n      type = gl.INT;\\n    } else if (array instanceof Int8Array) {\\n      type = gl.BYTE;\\n    } else if (array instanceof Uint8Array) {\\n      type = gl.UNSIGNED_BYTE;\\n    } else if (array instanceof Uint8ClampedArray) {\\n      type = gl.UNSIGNED_BYTE;\\n    }\\n    return {\\n      buffer,\\n      type,\\n      bytesPerElement: array.BYTES_PER_ELEMENT,\\n      version: attribute.version\\n    };\\n  }\\n  function updateBuffer(buffer, attribute, bufferType) {\\n    const array = attribute.array;\\n    const updateRange = attribute.updateRange;\\n    gl.bindBuffer(bufferType, buffer);\\n    if (updateRange.count === -1) {\\n      gl.bufferSubData(bufferType, 0, array);\\n    } else {\\n      if (isWebGL2) {\\n        gl.bufferSubData(bufferType, updateRange.offset * array.BYTES_PER_ELEMENT, array, updateRange.offset, updateRange.count);\\n      } else {\\n        gl.bufferSubData(bufferType, updateRange.offset * array.BYTES_PER_ELEMENT, array.subarray(updateRange.offset, updateRange.offset + updateRange.count));\\n      }\\n      updateRange.count = -1;\\n    }\\n  }\\n  function get(attribute) {\\n    if (attribute.isInterleavedBufferAttribute)\\n      attribute = attribute.data;\\n    return buffers.get(attribute);\\n  }\\n  function remove(attribute) {\\n    if (attribute.isInterleavedBufferAttribute)\\n      attribute = attribute.data;\\n    const data = buffers.get(attribute);\\n    if (data) {\\n      gl.deleteBuffer(data.buffer);\\n      buffers.delete(attribute);\\n    }\\n  }\\n  function update(attribute, bufferType) {\\n    if (attribute.isGLBufferAttribute) {\\n      const cached = buffers.get(attribute);\\n      if (!cached || cached.version < attribute.version) {\\n        buffers.set(attribute, {\\n          buffer: attribute.buffer,\\n          type: attribute.type,\\n          bytesPerElement: attribute.elementSize,\\n          version: attribute.version\\n        });\\n      }\\n      return;\\n    }\\n    if (attribute.isInterleavedBufferAttribute)\\n      attribute = attribute.data;\\n    const data = buffers.get(attribute);\\n    if (data === void 0) {\\n      buffers.set(attribute, createBuffer(attribute, bufferType));\\n    } else if (data.version < attribute.version) {\\n      updateBuffer(data.buffer, attribute, bufferType);\\n      data.version = attribute.version;\\n    }\\n  }\\n  return {\\n    get,\\n    remove,\\n    update\\n  };\\n}\\n\\n// ../../../node_modules/three/src/math/Vector2.js\\nvar Vector2 = class {\\n  constructor(x = 0, y = 0) {\\n    this.x = x;\\n    this.y = y;\\n  }\\n  get width() {\\n    return this.x;\\n  }\\n  set width(value) {\\n    this.x = value;\\n  }\\n  get height() {\\n    return this.y;\\n  }\\n  set height(value) {\\n    this.y = value;\\n  }\\n  set(x, y) {\\n    this.x = x;\\n    this.y = y;\\n    return this;\\n  }\\n  setScalar(scalar) {\\n    this.x = scalar;\\n    this.y = scalar;\\n    return this;\\n  }\\n  setX(x) {\\n    this.x = x;\\n    return this;\\n  }\\n  setY(y) {\\n    this.y = y;\\n    return this;\\n  }\\n  setComponent(index, value) {\\n    switch (index) {\\n      case 0:\\n        this.x = value;\\n        break;\\n      case 1:\\n        this.y = value;\\n        break;\\n      default:\\n        throw new Error(\\\\\\\"index is out of range: \\\\\\\" + index);\\n    }\\n    return this;\\n  }\\n  getComponent(index) {\\n    switch (index) {\\n      case 0:\\n        return this.x;\\n      case 1:\\n        return this.y;\\n      default:\\n        throw new Error(\\\\\\\"index is out of range: \\\\\\\" + index);\\n    }\\n  }\\n  clone() {\\n    return new this.constructor(this.x, this.y);\\n  }\\n  copy(v) {\\n    this.x = v.x;\\n    this.y = v.y;\\n    return this;\\n  }\\n  add(v, w) {\\n    if (w !== void 0) {\\n      console.warn(\\\\\\\"THREE.Vector2: .add() now only accepts one argument. Use .addVectors( a, b ) instead.\\\\\\\");\\n      return this.addVectors(v, w);\\n    }\\n    this.x += v.x;\\n    this.y += v.y;\\n    return this;\\n  }\\n  addScalar(s) {\\n    this.x += s;\\n    this.y += s;\\n    return this;\\n  }\\n  addVectors(a, b) {\\n    this.x = a.x + b.x;\\n    this.y = a.y + b.y;\\n    return this;\\n  }\\n  addScaledVector(v, s) {\\n    this.x += v.x * s;\\n    this.y += v.y * s;\\n    return this;\\n  }\\n  sub(v, w) {\\n    if (w !== void 0) {\\n      console.warn(\\\\\\\"THREE.Vector2: .sub() now only accepts one argument. Use .subVectors( a, b ) instead.\\\\\\\");\\n      return this.subVectors(v, w);\\n    }\\n    this.x -= v.x;\\n    this.y -= v.y;\\n    return this;\\n  }\\n  subScalar(s) {\\n    this.x -= s;\\n    this.y -= s;\\n    return this;\\n  }\\n  subVectors(a, b) {\\n    this.x = a.x - b.x;\\n    this.y = a.y - b.y;\\n    return this;\\n  }\\n  multiply(v) {\\n    this.x *= v.x;\\n    this.y *= v.y;\\n    return this;\\n  }\\n  multiplyScalar(scalar) {\\n    this.x *= scalar;\\n    this.y *= scalar;\\n    return this;\\n  }\\n  divide(v) {\\n    this.x /= v.x;\\n    this.y /= v.y;\\n    return this;\\n  }\\n  divideScalar(scalar) {\\n    return this.multiplyScalar(1 / scalar);\\n  }\\n  applyMatrix3(m) {\\n    const x = this.x, y = this.y;\\n    const e = m.elements;\\n    this.x = e[0] * x + e[3] * y + e[6];\\n    this.y = e[1] * x + e[4] * y + e[7];\\n    return this;\\n  }\\n  min(v) {\\n    this.x = Math.min(this.x, v.x);\\n    this.y = Math.min(this.y, v.y);\\n    return this;\\n  }\\n  max(v) {\\n    this.x = Math.max(this.x, v.x);\\n    this.y = Math.max(this.y, v.y);\\n    return this;\\n  }\\n  clamp(min, max) {\\n    this.x = Math.max(min.x, Math.min(max.x, this.x));\\n    this.y = Math.max(min.y, Math.min(max.y, this.y));\\n    return this;\\n  }\\n  clampScalar(minVal, maxVal) {\\n    this.x = Math.max(minVal, Math.min(maxVal, this.x));\\n    this.y = Math.max(minVal, Math.min(maxVal, this.y));\\n    return this;\\n  }\\n  clampLength(min, max) {\\n    const length = this.length();\\n    return this.divideScalar(length || 1).multiplyScalar(Math.max(min, Math.min(max, length)));\\n  }\\n  floor() {\\n    this.x = Math.floor(this.x);\\n    this.y = Math.floor(this.y);\\n    return this;\\n  }\\n  ceil() {\\n    this.x = Math.ceil(this.x);\\n    this.y = Math.ceil(this.y);\\n    return this;\\n  }\\n  round() {\\n    this.x = Math.round(this.x);\\n    this.y = Math.round(this.y);\\n    return this;\\n  }\\n  roundToZero() {\\n    this.x = this.x < 0 ? Math.ceil(this.x) : Math.floor(this.x);\\n    this.y = this.y < 0 ? Math.ceil(this.y) : Math.floor(this.y);\\n    return this;\\n  }\\n  negate() {\\n    this.x = -this.x;\\n    this.y = -this.y;\\n    return this;\\n  }\\n  dot(v) {\\n    return this.x * v.x + this.y * v.y;\\n  }\\n  cross(v) {\\n    return this.x * v.y - this.y * v.x;\\n  }\\n  lengthSq() {\\n    return this.x * this.x + this.y * this.y;\\n  }\\n  length() {\\n    return Math.sqrt(this.x * this.x + this.y * this.y);\\n  }\\n  manhattanLength() {\\n    return Math.abs(this.x) + Math.abs(this.y);\\n  }\\n  normalize() {\\n    return this.divideScalar(this.length() || 1);\\n  }\\n  angle() {\\n    const angle = Math.atan2(-this.y, -this.x) + Math.PI;\\n    return angle;\\n  }\\n  distanceTo(v) {\\n    return Math.sqrt(this.distanceToSquared(v));\\n  }\\n  distanceToSquared(v) {\\n    const dx = this.x - v.x, dy = this.y - v.y;\\n    return dx * dx + dy * dy;\\n  }\\n  manhattanDistanceTo(v) {\\n    return Math.abs(this.x - v.x) + Math.abs(this.y - v.y);\\n  }\\n  setLength(length) {\\n    return this.normalize().multiplyScalar(length);\\n  }\\n  lerp(v, alpha) {\\n    this.x += (v.x - this.x) * alpha;\\n    this.y += (v.y - this.y) * alpha;\\n    return this;\\n  }\\n  lerpVectors(v1, v2, alpha) {\\n    this.x = v1.x + (v2.x - v1.x) * alpha;\\n    this.y = v1.y + (v2.y - v1.y) * alpha;\\n    return this;\\n  }\\n  equals(v) {\\n    return v.x === this.x && v.y === this.y;\\n  }\\n  fromArray(array, offset = 0) {\\n    this.x = array[offset];\\n    this.y = array[offset + 1];\\n    return this;\\n  }\\n  toArray(array = [], offset = 0) {\\n    array[offset] = this.x;\\n    array[offset + 1] = this.y;\\n    return array;\\n  }\\n  fromBufferAttribute(attribute, index, offset) {\\n    if (offset !== void 0) {\\n      console.warn(\\\\\\\"THREE.Vector2: offset has been removed from .fromBufferAttribute().\\\\\\\");\\n    }\\n    this.x = attribute.getX(index);\\n    this.y = attribute.getY(index);\\n    return this;\\n  }\\n  rotateAround(center, angle) {\\n    const c = Math.cos(angle), s = Math.sin(angle);\\n    const x = this.x - center.x;\\n    const y = this.y - center.y;\\n    this.x = x * c - y * s + center.x;\\n    this.y = x * s + y * c + center.y;\\n    return this;\\n  }\\n  random() {\\n    this.x = Math.random();\\n    this.y = Math.random();\\n    return this;\\n  }\\n  *[Symbol.iterator]() {\\n    yield this.x;\\n    yield this.y;\\n  }\\n};\\nVector2.prototype.isVector2 = true;\\n\\n// ../../../node_modules/three/src/math/Color.js\\nvar _colorKeywords = {\\n  aliceblue: 15792383,\\n  antiquewhite: 16444375,\\n  aqua: 65535,\\n  aquamarine: 8388564,\\n  azure: 15794175,\\n  beige: 16119260,\\n  bisque: 16770244,\\n  black: 0,\\n  blanchedalmond: 16772045,\\n  blue: 255,\\n  blueviolet: 9055202,\\n  brown: 10824234,\\n  burlywood: 14596231,\\n  cadetblue: 6266528,\\n  chartreuse: 8388352,\\n  chocolate: 13789470,\\n  coral: 16744272,\\n  cornflowerblue: 6591981,\\n  cornsilk: 16775388,\\n  crimson: 14423100,\\n  cyan: 65535,\\n  darkblue: 139,\\n  darkcyan: 35723,\\n  darkgoldenrod: 12092939,\\n  darkgray: 11119017,\\n  darkgreen: 25600,\\n  darkgrey: 11119017,\\n  darkkhaki: 12433259,\\n  darkmagenta: 9109643,\\n  darkolivegreen: 5597999,\\n  darkorange: 16747520,\\n  darkorchid: 10040012,\\n  darkred: 9109504,\\n  darksalmon: 15308410,\\n  darkseagreen: 9419919,\\n  darkslateblue: 4734347,\\n  darkslategray: 3100495,\\n  darkslategrey: 3100495,\\n  darkturquoise: 52945,\\n  darkviolet: 9699539,\\n  deeppink: 16716947,\\n  deepskyblue: 49151,\\n  dimgray: 6908265,\\n  dimgrey: 6908265,\\n  dodgerblue: 2003199,\\n  firebrick: 11674146,\\n  floralwhite: 16775920,\\n  forestgreen: 2263842,\\n  fuchsia: 16711935,\\n  gainsboro: 14474460,\\n  ghostwhite: 16316671,\\n  gold: 16766720,\\n  goldenrod: 14329120,\\n  gray: 8421504,\\n  green: 32768,\\n  greenyellow: 11403055,\\n  grey: 8421504,\\n  honeydew: 15794160,\\n  hotpink: 16738740,\\n  indianred: 13458524,\\n  indigo: 4915330,\\n  ivory: 16777200,\\n  khaki: 15787660,\\n  lavender: 15132410,\\n  lavenderblush: 16773365,\\n  lawngreen: 8190976,\\n  lemonchiffon: 16775885,\\n  lightblue: 11393254,\\n  lightcoral: 15761536,\\n  lightcyan: 14745599,\\n  lightgoldenrodyellow: 16448210,\\n  lightgray: 13882323,\\n  lightgreen: 9498256,\\n  lightgrey: 13882323,\\n  lightpink: 16758465,\\n  lightsalmon: 16752762,\\n  lightseagreen: 2142890,\\n  lightskyblue: 8900346,\\n  lightslategray: 7833753,\\n  lightslategrey: 7833753,\\n  lightsteelblue: 11584734,\\n  lightyellow: 16777184,\\n  lime: 65280,\\n  limegreen: 3329330,\\n  linen: 16445670,\\n  magenta: 16711935,\\n  maroon: 8388608,\\n  mediumaquamarine: 6737322,\\n  mediumblue: 205,\\n  mediumorchid: 12211667,\\n  mediumpurple: 9662683,\\n  mediumseagreen: 3978097,\\n  mediumslateblue: 8087790,\\n  mediumspringgreen: 64154,\\n  mediumturquoise: 4772300,\\n  mediumvioletred: 13047173,\\n  midnightblue: 1644912,\\n  mintcream: 16121850,\\n  mistyrose: 16770273,\\n  moccasin: 16770229,\\n  navajowhite: 16768685,\\n  navy: 128,\\n  oldlace: 16643558,\\n  olive: 8421376,\\n  olivedrab: 7048739,\\n  orange: 16753920,\\n  orangered: 16729344,\\n  orchid: 14315734,\\n  palegoldenrod: 15657130,\\n  palegreen: 10025880,\\n  paleturquoise: 11529966,\\n  palevioletred: 14381203,\\n  papayawhip: 16773077,\\n  peachpuff: 16767673,\\n  peru: 13468991,\\n  pink: 16761035,\\n  plum: 14524637,\\n  powderblue: 11591910,\\n  purple: 8388736,\\n  rebeccapurple: 6697881,\\n  red: 16711680,\\n  rosybrown: 12357519,\\n  royalblue: 4286945,\\n  saddlebrown: 9127187,\\n  salmon: 16416882,\\n  sandybrown: 16032864,\\n  seagreen: 3050327,\\n  seashell: 16774638,\\n  sienna: 10506797,\\n  silver: 12632256,\\n  skyblue: 8900331,\\n  slateblue: 6970061,\\n  slategray: 7372944,\\n  slategrey: 7372944,\\n  snow: 16775930,\\n  springgreen: 65407,\\n  steelblue: 4620980,\\n  tan: 13808780,\\n  teal: 32896,\\n  thistle: 14204888,\\n  tomato: 16737095,\\n  turquoise: 4251856,\\n  violet: 15631086,\\n  wheat: 16113331,\\n  white: 16777215,\\n  whitesmoke: 16119285,\\n  yellow: 16776960,\\n  yellowgreen: 10145074\\n};\\nvar _hslA = {h: 0, s: 0, l: 0};\\nvar _hslB = {h: 0, s: 0, l: 0};\\nfunction hue2rgb(p, q, t) {\\n  if (t < 0)\\n    t += 1;\\n  if (t > 1)\\n    t -= 1;\\n  if (t < 1 / 6)\\n    return p + (q - p) * 6 * t;\\n  if (t < 1 / 2)\\n    return q;\\n  if (t < 2 / 3)\\n    return p + (q - p) * 6 * (2 / 3 - t);\\n  return p;\\n}\\nfunction SRGBToLinear(c) {\\n  return c < 0.04045 ? c * 0.0773993808 : Math.pow(c * 0.9478672986 + 0.0521327014, 2.4);\\n}\\nfunction LinearToSRGB(c) {\\n  return c < 31308e-7 ? c * 12.92 : 1.055 * Math.pow(c, 0.41666) - 0.055;\\n}\\nvar Color = class {\\n  constructor(r, g, b) {\\n    if (g === void 0 && b === void 0) {\\n      return this.set(r);\\n    }\\n    return this.setRGB(r, g, b);\\n  }\\n  set(value) {\\n    if (value && value.isColor) {\\n      this.copy(value);\\n    } else if (typeof value === \\\\\\\"number\\\\\\\") {\\n      this.setHex(value);\\n    } else if (typeof value === \\\\\\\"string\\\\\\\") {\\n      this.setStyle(value);\\n    }\\n    return this;\\n  }\\n  setScalar(scalar) {\\n    this.r = scalar;\\n    this.g = scalar;\\n    this.b = scalar;\\n    return this;\\n  }\\n  setHex(hex) {\\n    hex = Math.floor(hex);\\n    this.r = (hex >> 16 & 255) / 255;\\n    this.g = (hex >> 8 & 255) / 255;\\n    this.b = (hex & 255) / 255;\\n    return this;\\n  }\\n  setRGB(r, g, b) {\\n    this.r = r;\\n    this.g = g;\\n    this.b = b;\\n    return this;\\n  }\\n  setHSL(h, s, l) {\\n    h = euclideanModulo(h, 1);\\n    s = clamp(s, 0, 1);\\n    l = clamp(l, 0, 1);\\n    if (s === 0) {\\n      this.r = this.g = this.b = l;\\n    } else {\\n      const p = l <= 0.5 ? l * (1 + s) : l + s - l * s;\\n      const q = 2 * l - p;\\n      this.r = hue2rgb(q, p, h + 1 / 3);\\n      this.g = hue2rgb(q, p, h);\\n      this.b = hue2rgb(q, p, h - 1 / 3);\\n    }\\n    return this;\\n  }\\n  setStyle(style) {\\n    function handleAlpha(string) {\\n      if (string === void 0)\\n        return;\\n      if (parseFloat(string) < 1) {\\n        console.warn(\\\\\\\"THREE.Color: Alpha component of \\\\\\\" + style + \\\\\\\" will be ignored.\\\\\\\");\\n      }\\n    }\\n    let m;\\n    if (m = /^((?:rgb|hsl)a?)\\\\(([^\\\\)]*)\\\\)/.exec(style)) {\\n      let color;\\n      const name = m[1];\\n      const components = m[2];\\n      switch (name) {\\n        case \\\\\\\"rgb\\\\\\\":\\n        case \\\\\\\"rgba\\\\\\\":\\n          if (color = /^\\\\s*(\\\\d+)\\\\s*,\\\\s*(\\\\d+)\\\\s*,\\\\s*(\\\\d+)\\\\s*(?:,\\\\s*(\\\\d*\\\\.?\\\\d+)\\\\s*)?$/.exec(components)) {\\n            this.r = Math.min(255, parseInt(color[1], 10)) / 255;\\n            this.g = Math.min(255, parseInt(color[2], 10)) / 255;\\n            this.b = Math.min(255, parseInt(color[3], 10)) / 255;\\n            handleAlpha(color[4]);\\n            return this;\\n          }\\n          if (color = /^\\\\s*(\\\\d+)\\\\%\\\\s*,\\\\s*(\\\\d+)\\\\%\\\\s*,\\\\s*(\\\\d+)\\\\%\\\\s*(?:,\\\\s*(\\\\d*\\\\.?\\\\d+)\\\\s*)?$/.exec(components)) {\\n            this.r = Math.min(100, parseInt(color[1], 10)) / 100;\\n            this.g = Math.min(100, parseInt(color[2], 10)) / 100;\\n            this.b = Math.min(100, parseInt(color[3], 10)) / 100;\\n            handleAlpha(color[4]);\\n            return this;\\n          }\\n          break;\\n        case \\\\\\\"hsl\\\\\\\":\\n        case \\\\\\\"hsla\\\\\\\":\\n          if (color = /^\\\\s*(\\\\d*\\\\.?\\\\d+)\\\\s*,\\\\s*(\\\\d+)\\\\%\\\\s*,\\\\s*(\\\\d+)\\\\%\\\\s*(?:,\\\\s*(\\\\d*\\\\.?\\\\d+)\\\\s*)?$/.exec(components)) {\\n            const h = parseFloat(color[1]) / 360;\\n            const s = parseInt(color[2], 10) / 100;\\n            const l = parseInt(color[3], 10) / 100;\\n            handleAlpha(color[4]);\\n            return this.setHSL(h, s, l);\\n          }\\n          break;\\n      }\\n    } else if (m = /^\\\\#([A-Fa-f\\\\d]+)$/.exec(style)) {\\n      const hex = m[1];\\n      const size = hex.length;\\n      if (size === 3) {\\n        this.r = parseInt(hex.charAt(0) + hex.charAt(0), 16) / 255;\\n        this.g = parseInt(hex.charAt(1) + hex.charAt(1), 16) / 255;\\n        this.b = parseInt(hex.charAt(2) + hex.charAt(2), 16) / 255;\\n        return this;\\n      } else if (size === 6) {\\n        this.r = parseInt(hex.charAt(0) + hex.charAt(1), 16) / 255;\\n        this.g = parseInt(hex.charAt(2) + hex.charAt(3), 16) / 255;\\n        this.b = parseInt(hex.charAt(4) + hex.charAt(5), 16) / 255;\\n        return this;\\n      }\\n    }\\n    if (style && style.length > 0) {\\n      return this.setColorName(style);\\n    }\\n    return this;\\n  }\\n  setColorName(style) {\\n    const hex = _colorKeywords[style.toLowerCase()];\\n    if (hex !== void 0) {\\n      this.setHex(hex);\\n    } else {\\n      console.warn(\\\\\\\"THREE.Color: Unknown color \\\\\\\" + style);\\n    }\\n    return this;\\n  }\\n  clone() {\\n    return new this.constructor(this.r, this.g, this.b);\\n  }\\n  copy(color) {\\n    this.r = color.r;\\n    this.g = color.g;\\n    this.b = color.b;\\n    return this;\\n  }\\n  copyGammaToLinear(color, gammaFactor = 2) {\\n    this.r = Math.pow(color.r, gammaFactor);\\n    this.g = Math.pow(color.g, gammaFactor);\\n    this.b = Math.pow(color.b, gammaFactor);\\n    return this;\\n  }\\n  copyLinearToGamma(color, gammaFactor = 2) {\\n    const safeInverse = gammaFactor > 0 ? 1 / gammaFactor : 1;\\n    this.r = Math.pow(color.r, safeInverse);\\n    this.g = Math.pow(color.g, safeInverse);\\n    this.b = Math.pow(color.b, safeInverse);\\n    return this;\\n  }\\n  convertGammaToLinear(gammaFactor) {\\n    this.copyGammaToLinear(this, gammaFactor);\\n    return this;\\n  }\\n  convertLinearToGamma(gammaFactor) {\\n    this.copyLinearToGamma(this, gammaFactor);\\n    return this;\\n  }\\n  copySRGBToLinear(color) {\\n    this.r = SRGBToLinear(color.r);\\n    this.g = SRGBToLinear(color.g);\\n    this.b = SRGBToLinear(color.b);\\n    return this;\\n  }\\n  copyLinearToSRGB(color) {\\n    this.r = LinearToSRGB(color.r);\\n    this.g = LinearToSRGB(color.g);\\n    this.b = LinearToSRGB(color.b);\\n    return this;\\n  }\\n  convertSRGBToLinear() {\\n    this.copySRGBToLinear(this);\\n    return this;\\n  }\\n  convertLinearToSRGB() {\\n    this.copyLinearToSRGB(this);\\n    return this;\\n  }\\n  getHex() {\\n    return this.r * 255 << 16 ^ this.g * 255 << 8 ^ this.b * 255 << 0;\\n  }\\n  getHexString() {\\n    return (\\\\\\\"000000\\\\\\\" + this.getHex().toString(16)).slice(-6);\\n  }\\n  getHSL(target) {\\n    const r = this.r, g = this.g, b = this.b;\\n    const max = Math.max(r, g, b);\\n    const min = Math.min(r, g, b);\\n    let hue, saturation;\\n    const lightness = (min + max) / 2;\\n    if (min === max) {\\n      hue = 0;\\n      saturation = 0;\\n    } else {\\n      const delta = max - min;\\n      saturation = lightness <= 0.5 ? delta / (max + min) : delta / (2 - max - min);\\n      switch (max) {\\n        case r:\\n          hue = (g - b) / delta + (g < b ? 6 : 0);\\n          break;\\n        case g:\\n          hue = (b - r) / delta + 2;\\n          break;\\n        case b:\\n          hue = (r - g) / delta + 4;\\n          break;\\n      }\\n      hue /= 6;\\n    }\\n    target.h = hue;\\n    target.s = saturation;\\n    target.l = lightness;\\n    return target;\\n  }\\n  getStyle() {\\n    return \\\\\\\"rgb(\\\\\\\" + (this.r * 255 | 0) + \\\\\\\",\\\\\\\" + (this.g * 255 | 0) + \\\\\\\",\\\\\\\" + (this.b * 255 | 0) + \\\\\\\")\\\\\\\";\\n  }\\n  offsetHSL(h, s, l) {\\n    this.getHSL(_hslA);\\n    _hslA.h += h;\\n    _hslA.s += s;\\n    _hslA.l += l;\\n    this.setHSL(_hslA.h, _hslA.s, _hslA.l);\\n    return this;\\n  }\\n  add(color) {\\n    this.r += color.r;\\n    this.g += color.g;\\n    this.b += color.b;\\n    return this;\\n  }\\n  addColors(color1, color2) {\\n    this.r = color1.r + color2.r;\\n    this.g = color1.g + color2.g;\\n    this.b = color1.b + color2.b;\\n    return this;\\n  }\\n  addScalar(s) {\\n    this.r += s;\\n    this.g += s;\\n    this.b += s;\\n    return this;\\n  }\\n  sub(color) {\\n    this.r = Math.max(0, this.r - color.r);\\n    this.g = Math.max(0, this.g - color.g);\\n    this.b = Math.max(0, this.b - color.b);\\n    return this;\\n  }\\n  multiply(color) {\\n    this.r *= color.r;\\n    this.g *= color.g;\\n    this.b *= color.b;\\n    return this;\\n  }\\n  multiplyScalar(s) {\\n    this.r *= s;\\n    this.g *= s;\\n    this.b *= s;\\n    return this;\\n  }\\n  lerp(color, alpha) {\\n    this.r += (color.r - this.r) * alpha;\\n    this.g += (color.g - this.g) * alpha;\\n    this.b += (color.b - this.b) * alpha;\\n    return this;\\n  }\\n  lerpColors(color1, color2, alpha) {\\n    this.r = color1.r + (color2.r - color1.r) * alpha;\\n    this.g = color1.g + (color2.g - color1.g) * alpha;\\n    this.b = color1.b + (color2.b - color1.b) * alpha;\\n    return this;\\n  }\\n  lerpHSL(color, alpha) {\\n    this.getHSL(_hslA);\\n    color.getHSL(_hslB);\\n    const h = lerp(_hslA.h, _hslB.h, alpha);\\n    const s = lerp(_hslA.s, _hslB.s, alpha);\\n    const l = lerp(_hslA.l, _hslB.l, alpha);\\n    this.setHSL(h, s, l);\\n    return this;\\n  }\\n  equals(c) {\\n    return c.r === this.r && c.g === this.g && c.b === this.b;\\n  }\\n  fromArray(array, offset = 0) {\\n    this.r = array[offset];\\n    this.g = array[offset + 1];\\n    this.b = array[offset + 2];\\n    return this;\\n  }\\n  toArray(array = [], offset = 0) {\\n    array[offset] = this.r;\\n    array[offset + 1] = this.g;\\n    array[offset + 2] = this.b;\\n    return array;\\n  }\\n  fromBufferAttribute(attribute, index) {\\n    this.r = attribute.getX(index);\\n    this.g = attribute.getY(index);\\n    this.b = attribute.getZ(index);\\n    if (attribute.normalized === true) {\\n      this.r /= 255;\\n      this.g /= 255;\\n      this.b /= 255;\\n    }\\n    return this;\\n  }\\n  toJSON() {\\n    return this.getHex();\\n  }\\n};\\nColor.NAMES = _colorKeywords;\\nColor.prototype.isColor = true;\\nColor.prototype.r = 1;\\nColor.prototype.g = 1;\\nColor.prototype.b = 1;\\n\\n// ../../../node_modules/three/src/core/BufferAttribute.js\\nvar _vector4 = /* @__PURE__ */ new Vector3();\\nvar _vector23 = /* @__PURE__ */ new Vector2();\\nvar BufferAttribute = class {\\n  constructor(array, itemSize, normalized) {\\n    if (Array.isArray(array)) {\\n      throw new TypeError(\\\\\\\"THREE.BufferAttribute: array should be a Typed Array.\\\\\\\");\\n    }\\n    this.name = \\\\\\\"\\\\\\\";\\n    this.array = array;\\n    this.itemSize = itemSize;\\n    this.count = array !== void 0 ? array.length / itemSize : 0;\\n    this.normalized = normalized === true;\\n    this.usage = StaticDrawUsage;\\n    this.updateRange = {offset: 0, count: -1};\\n    this.version = 0;\\n  }\\n  onUploadCallback() {\\n  }\\n  set needsUpdate(value) {\\n    if (value === true)\\n      this.version++;\\n  }\\n  setUsage(value) {\\n    this.usage = value;\\n    return this;\\n  }\\n  copy(source) {\\n    this.name = source.name;\\n    this.array = new source.array.constructor(source.array);\\n    this.itemSize = source.itemSize;\\n    this.count = source.count;\\n    this.normalized = source.normalized;\\n    this.usage = source.usage;\\n    return this;\\n  }\\n  copyAt(index1, attribute, index2) {\\n    index1 *= this.itemSize;\\n    index2 *= attribute.itemSize;\\n    for (let i = 0, l = this.itemSize; i < l; i++) {\\n      this.array[index1 + i] = attribute.array[index2 + i];\\n    }\\n    return this;\\n  }\\n  copyArray(array) {\\n    this.array.set(array);\\n    return this;\\n  }\\n  copyColorsArray(colors) {\\n    const array = this.array;\\n    let offset = 0;\\n    for (let i = 0, l = colors.length; i < l; i++) {\\n      let color = colors[i];\\n      if (color === void 0) {\\n        console.warn(\\\\\\\"THREE.BufferAttribute.copyColorsArray(): color is undefined\\\\\\\", i);\\n        color = new Color();\\n      }\\n      array[offset++] = color.r;\\n      array[offset++] = color.g;\\n      array[offset++] = color.b;\\n    }\\n    return this;\\n  }\\n  copyVector2sArray(vectors) {\\n    const array = this.array;\\n    let offset = 0;\\n    for (let i = 0, l = vectors.length; i < l; i++) {\\n      let vector = vectors[i];\\n      if (vector === void 0) {\\n        console.warn(\\\\\\\"THREE.BufferAttribute.copyVector2sArray(): vector is undefined\\\\\\\", i);\\n        vector = new Vector2();\\n      }\\n      array[offset++] = vector.x;\\n      array[offset++] = vector.y;\\n    }\\n    return this;\\n  }\\n  copyVector3sArray(vectors) {\\n    const array = this.array;\\n    let offset = 0;\\n    for (let i = 0, l = vectors.length; i < l; i++) {\\n      let vector = vectors[i];\\n      if (vector === void 0) {\\n        console.warn(\\\\\\\"THREE.BufferAttribute.copyVector3sArray(): vector is undefined\\\\\\\", i);\\n        vector = new Vector3();\\n      }\\n      array[offset++] = vector.x;\\n      array[offset++] = vector.y;\\n      array[offset++] = vector.z;\\n    }\\n    return this;\\n  }\\n  copyVector4sArray(vectors) {\\n    const array = this.array;\\n    let offset = 0;\\n    for (let i = 0, l = vectors.length; i < l; i++) {\\n      let vector = vectors[i];\\n      if (vector === void 0) {\\n        console.warn(\\\\\\\"THREE.BufferAttribute.copyVector4sArray(): vector is undefined\\\\\\\", i);\\n        vector = new Vector4();\\n      }\\n      array[offset++] = vector.x;\\n      array[offset++] = vector.y;\\n      array[offset++] = vector.z;\\n      array[offset++] = vector.w;\\n    }\\n    return this;\\n  }\\n  applyMatrix3(m) {\\n    if (this.itemSize === 2) {\\n      for (let i = 0, l = this.count; i < l; i++) {\\n        _vector23.fromBufferAttribute(this, i);\\n        _vector23.applyMatrix3(m);\\n        this.setXY(i, _vector23.x, _vector23.y);\\n      }\\n    } else if (this.itemSize === 3) {\\n      for (let i = 0, l = this.count; i < l; i++) {\\n        _vector4.fromBufferAttribute(this, i);\\n        _vector4.applyMatrix3(m);\\n        this.setXYZ(i, _vector4.x, _vector4.y, _vector4.z);\\n      }\\n    }\\n    return this;\\n  }\\n  applyMatrix4(m) {\\n    for (let i = 0, l = this.count; i < l; i++) {\\n      _vector4.x = this.getX(i);\\n      _vector4.y = this.getY(i);\\n      _vector4.z = this.getZ(i);\\n      _vector4.applyMatrix4(m);\\n      this.setXYZ(i, _vector4.x, _vector4.y, _vector4.z);\\n    }\\n    return this;\\n  }\\n  applyNormalMatrix(m) {\\n    for (let i = 0, l = this.count; i < l; i++) {\\n      _vector4.x = this.getX(i);\\n      _vector4.y = this.getY(i);\\n      _vector4.z = this.getZ(i);\\n      _vector4.applyNormalMatrix(m);\\n      this.setXYZ(i, _vector4.x, _vector4.y, _vector4.z);\\n    }\\n    return this;\\n  }\\n  transformDirection(m) {\\n    for (let i = 0, l = this.count; i < l; i++) {\\n      _vector4.x = this.getX(i);\\n      _vector4.y = this.getY(i);\\n      _vector4.z = this.getZ(i);\\n      _vector4.transformDirection(m);\\n      this.setXYZ(i, _vector4.x, _vector4.y, _vector4.z);\\n    }\\n    return this;\\n  }\\n  set(value, offset = 0) {\\n    this.array.set(value, offset);\\n    return this;\\n  }\\n  getX(index) {\\n    return this.array[index * this.itemSize];\\n  }\\n  setX(index, x) {\\n    this.array[index * this.itemSize] = x;\\n    return this;\\n  }\\n  getY(index) {\\n    return this.array[index * this.itemSize + 1];\\n  }\\n  setY(index, y) {\\n    this.array[index * this.itemSize + 1] = y;\\n    return this;\\n  }\\n  getZ(index) {\\n    return this.array[index * this.itemSize + 2];\\n  }\\n  setZ(index, z) {\\n    this.array[index * this.itemSize + 2] = z;\\n    return this;\\n  }\\n  getW(index) {\\n    return this.array[index * this.itemSize + 3];\\n  }\\n  setW(index, w) {\\n    this.array[index * this.itemSize + 3] = w;\\n    return this;\\n  }\\n  setXY(index, x, y) {\\n    index *= this.itemSize;\\n    this.array[index + 0] = x;\\n    this.array[index + 1] = y;\\n    return this;\\n  }\\n  setXYZ(index, x, y, z) {\\n    index *= this.itemSize;\\n    this.array[index + 0] = x;\\n    this.array[index + 1] = y;\\n    this.array[index + 2] = z;\\n    return this;\\n  }\\n  setXYZW(index, x, y, z, w) {\\n    index *= this.itemSize;\\n    this.array[index + 0] = x;\\n    this.array[index + 1] = y;\\n    this.array[index + 2] = z;\\n    this.array[index + 3] = w;\\n    return this;\\n  }\\n  onUpload(callback) {\\n    this.onUploadCallback = callback;\\n    return this;\\n  }\\n  clone() {\\n    return new this.constructor(this.array, this.itemSize).copy(this);\\n  }\\n  toJSON() {\\n    const data = {\\n      itemSize: this.itemSize,\\n      type: this.array.constructor.name,\\n      array: Array.prototype.slice.call(this.array),\\n      normalized: this.normalized\\n    };\\n    if (this.name !== \\\\\\\"\\\\\\\")\\n      data.name = this.name;\\n    if (this.usage !== StaticDrawUsage)\\n      data.usage = this.usage;\\n    if (this.updateRange.offset !== 0 || this.updateRange.count !== -1)\\n      data.updateRange = this.updateRange;\\n    return data;\\n  }\\n};\\nBufferAttribute.prototype.isBufferAttribute = true;\\nvar Uint16BufferAttribute = class extends BufferAttribute {\\n  constructor(array, itemSize, normalized) {\\n    super(new Uint16Array(array), itemSize, normalized);\\n  }\\n};\\nvar Int32BufferAttribute = class extends BufferAttribute {\\n  constructor(array, itemSize, normalized) {\\n    super(new Int32Array(array), itemSize, normalized);\\n  }\\n};\\nvar Uint32BufferAttribute = class extends BufferAttribute {\\n  constructor(array, itemSize, normalized) {\\n    super(new Uint32Array(array), itemSize, normalized);\\n  }\\n};\\nvar Float16BufferAttribute = class extends BufferAttribute {\\n  constructor(array, itemSize, normalized) {\\n    super(new Uint16Array(array), itemSize, normalized);\\n  }\\n};\\nFloat16BufferAttribute.prototype.isFloat16BufferAttribute = true;\\nvar Float32BufferAttribute = class extends BufferAttribute {\\n  constructor(array, itemSize, normalized) {\\n    super(new Float32Array(array), itemSize, normalized);\\n  }\\n};\\n\\n// ../../../node_modules/three/src/utils.js\\nfunction arrayMax(array) {\\n  if (array.length === 0)\\n    return -Infinity;\\n  let max = array[0];\\n  for (let i = 1, l = array.length; i < l; ++i) {\\n    if (array[i] > max)\\n      max = array[i];\\n  }\\n  return max;\\n}\\nvar TYPED_ARRAYS = {\\n  Int8Array,\\n  Uint8Array,\\n  Uint8ClampedArray,\\n  Int16Array,\\n  Uint16Array,\\n  Int32Array,\\n  Uint32Array,\\n  Float32Array,\\n  Float64Array\\n};\\nfunction createElementNS(name) {\\n  return document.createElementNS(\\\\\\\"http://www.w3.org/1999/xhtml\\\\\\\", name);\\n}\\n\\n// ../../../node_modules/three/src/core/BufferGeometry.js\\nvar _id = 0;\\nvar _m13 = /* @__PURE__ */ new Matrix4();\\nvar _obj = /* @__PURE__ */ new Object3D();\\nvar _offset = /* @__PURE__ */ new Vector3();\\nvar _box3 = /* @__PURE__ */ new Box3();\\nvar _boxMorphTargets = /* @__PURE__ */ new Box3();\\nvar _vector5 = /* @__PURE__ */ new Vector3();\\nvar BufferGeometry = class extends EventDispatcher {\\n  constructor() {\\n    super();\\n    Object.defineProperty(this, \\\\\\\"id\\\\\\\", {value: _id++});\\n    this.uuid = generateUUID();\\n    this.name = \\\\\\\"\\\\\\\";\\n    this.type = \\\\\\\"BufferGeometry\\\\\\\";\\n    this.index = null;\\n    this.attributes = {};\\n    this.morphAttributes = {};\\n    this.morphTargetsRelative = false;\\n    this.groups = [];\\n    this.boundingBox = null;\\n    this.boundingSphere = null;\\n    this.drawRange = {start: 0, count: Infinity};\\n    this.userData = {};\\n  }\\n  getIndex() {\\n    return this.index;\\n  }\\n  setIndex(index) {\\n    if (Array.isArray(index)) {\\n      this.index = new (arrayMax(index) > 65535 ? Uint32BufferAttribute : Uint16BufferAttribute)(index, 1);\\n    } else {\\n      this.index = index;\\n    }\\n    return this;\\n  }\\n  getAttribute(name) {\\n    return this.attributes[name];\\n  }\\n  setAttribute(name, attribute) {\\n    this.attributes[name] = attribute;\\n    return this;\\n  }\\n  deleteAttribute(name) {\\n    delete this.attributes[name];\\n    return this;\\n  }\\n  hasAttribute(name) {\\n    return this.attributes[name] !== void 0;\\n  }\\n  addGroup(start, count, materialIndex = 0) {\\n    this.groups.push({\\n      start,\\n      count,\\n      materialIndex\\n    });\\n  }\\n  clearGroups() {\\n    this.groups = [];\\n  }\\n  setDrawRange(start, count) {\\n    this.drawRange.start = start;\\n    this.drawRange.count = count;\\n  }\\n  applyMatrix4(matrix) {\\n    const position = this.attributes.position;\\n    if (position !== void 0) {\\n      position.applyMatrix4(matrix);\\n      position.needsUpdate = true;\\n    }\\n    const normal = this.attributes.normal;\\n    if (normal !== void 0) {\\n      const normalMatrix = new Matrix3().getNormalMatrix(matrix);\\n      normal.applyNormalMatrix(normalMatrix);\\n      normal.needsUpdate = true;\\n    }\\n    const tangent = this.attributes.tangent;\\n    if (tangent !== void 0) {\\n      tangent.transformDirection(matrix);\\n      tangent.needsUpdate = true;\\n    }\\n    if (this.boundingBox !== null) {\\n      this.computeBoundingBox();\\n    }\\n    if (this.boundingSphere !== null) {\\n      this.computeBoundingSphere();\\n    }\\n    return this;\\n  }\\n  applyQuaternion(q) {\\n    _m13.makeRotationFromQuaternion(q);\\n    this.applyMatrix4(_m13);\\n    return this;\\n  }\\n  rotateX(angle) {\\n    _m13.makeRotationX(angle);\\n    this.applyMatrix4(_m13);\\n    return this;\\n  }\\n  rotateY(angle) {\\n    _m13.makeRotationY(angle);\\n    this.applyMatrix4(_m13);\\n    return this;\\n  }\\n  rotateZ(angle) {\\n    _m13.makeRotationZ(angle);\\n    this.applyMatrix4(_m13);\\n    return this;\\n  }\\n  translate(x, y, z) {\\n    _m13.makeTranslation(x, y, z);\\n    this.applyMatrix4(_m13);\\n    return this;\\n  }\\n  scale(x, y, z) {\\n    _m13.makeScale(x, y, z);\\n    this.applyMatrix4(_m13);\\n    return this;\\n  }\\n  lookAt(vector) {\\n    _obj.lookAt(vector);\\n    _obj.updateMatrix();\\n    this.applyMatrix4(_obj.matrix);\\n    return this;\\n  }\\n  center() {\\n    this.computeBoundingBox();\\n    this.boundingBox.getCenter(_offset).negate();\\n    this.translate(_offset.x, _offset.y, _offset.z);\\n    return this;\\n  }\\n  setFromPoints(points2) {\\n    const position = [];\\n    for (let i = 0, l = points2.length; i < l; i++) {\\n      const point = points2[i];\\n      position.push(point.x, point.y, point.z || 0);\\n    }\\n    this.setAttribute(\\\\\\\"position\\\\\\\", new Float32BufferAttribute(position, 3));\\n    return this;\\n  }\\n  computeBoundingBox() {\\n    if (this.boundingBox === null) {\\n      this.boundingBox = new Box3();\\n    }\\n    const position = this.attributes.position;\\n    const morphAttributesPosition = this.morphAttributes.position;\\n    if (position && position.isGLBufferAttribute) {\\n      console.error('THREE.BufferGeometry.computeBoundingBox(): GLBufferAttribute requires a manual bounding box. Alternatively set \\\\\\\"mesh.frustumCulled\\\\\\\" to \\\\\\\"false\\\\\\\".', this);\\n      this.boundingBox.set(new Vector3(-Infinity, -Infinity, -Infinity), new Vector3(Infinity, Infinity, Infinity));\\n      return;\\n    }\\n    if (position !== void 0) {\\n      this.boundingBox.setFromBufferAttribute(position);\\n      if (morphAttributesPosition) {\\n        for (let i = 0, il = morphAttributesPosition.length; i < il; i++) {\\n          const morphAttribute = morphAttributesPosition[i];\\n          _box3.setFromBufferAttribute(morphAttribute);\\n          if (this.morphTargetsRelative) {\\n            _vector5.addVectors(this.boundingBox.min, _box3.min);\\n            this.boundingBox.expandByPoint(_vector5);\\n            _vector5.addVectors(this.boundingBox.max, _box3.max);\\n            this.boundingBox.expandByPoint(_vector5);\\n          } else {\\n            this.boundingBox.expandByPoint(_box3.min);\\n            this.boundingBox.expandByPoint(_box3.max);\\n          }\\n        }\\n      }\\n    } else {\\n      this.boundingBox.makeEmpty();\\n    }\\n    if (isNaN(this.boundingBox.min.x) || isNaN(this.boundingBox.min.y) || isNaN(this.boundingBox.min.z)) {\\n      console.error('THREE.BufferGeometry.computeBoundingBox(): Computed min/max have NaN values. The \\\\\\\"position\\\\\\\" attribute is likely to have NaN values.', this);\\n    }\\n  }\\n  computeBoundingSphere() {\\n    if (this.boundingSphere === null) {\\n      this.boundingSphere = new Sphere();\\n    }\\n    const position = this.attributes.position;\\n    const morphAttributesPosition = this.morphAttributes.position;\\n    if (position && position.isGLBufferAttribute) {\\n      console.error('THREE.BufferGeometry.computeBoundingSphere(): GLBufferAttribute requires a manual bounding sphere. Alternatively set \\\\\\\"mesh.frustumCulled\\\\\\\" to \\\\\\\"false\\\\\\\".', this);\\n      this.boundingSphere.set(new Vector3(), Infinity);\\n      return;\\n    }\\n    if (position) {\\n      const center = this.boundingSphere.center;\\n      _box3.setFromBufferAttribute(position);\\n      if (morphAttributesPosition) {\\n        for (let i = 0, il = morphAttributesPosition.length; i < il; i++) {\\n          const morphAttribute = morphAttributesPosition[i];\\n          _boxMorphTargets.setFromBufferAttribute(morphAttribute);\\n          if (this.morphTargetsRelative) {\\n            _vector5.addVectors(_box3.min, _boxMorphTargets.min);\\n            _box3.expandByPoint(_vector5);\\n            _vector5.addVectors(_box3.max, _boxMorphTargets.max);\\n            _box3.expandByPoint(_vector5);\\n          } else {\\n            _box3.expandByPoint(_boxMorphTargets.min);\\n            _box3.expandByPoint(_boxMorphTargets.max);\\n          }\\n        }\\n      }\\n      _box3.getCenter(center);\\n      let maxRadiusSq = 0;\\n      for (let i = 0, il = position.count; i < il; i++) {\\n        _vector5.fromBufferAttribute(position, i);\\n        maxRadiusSq = Math.max(maxRadiusSq, center.distanceToSquared(_vector5));\\n      }\\n      if (morphAttributesPosition) {\\n        for (let i = 0, il = morphAttributesPosition.length; i < il; i++) {\\n          const morphAttribute = morphAttributesPosition[i];\\n          const morphTargetsRelative = this.morphTargetsRelative;\\n          for (let j = 0, jl = morphAttribute.count; j < jl; j++) {\\n            _vector5.fromBufferAttribute(morphAttribute, j);\\n            if (morphTargetsRelative) {\\n              _offset.fromBufferAttribute(position, j);\\n              _vector5.add(_offset);\\n            }\\n            maxRadiusSq = Math.max(maxRadiusSq, center.distanceToSquared(_vector5));\\n          }\\n        }\\n      }\\n      this.boundingSphere.radius = Math.sqrt(maxRadiusSq);\\n      if (isNaN(this.boundingSphere.radius)) {\\n        console.error('THREE.BufferGeometry.computeBoundingSphere(): Computed radius is NaN. The \\\\\\\"position\\\\\\\" attribute is likely to have NaN values.', this);\\n      }\\n    }\\n  }\\n  computeTangents() {\\n    const index = this.index;\\n    const attributes = this.attributes;\\n    if (index === null || attributes.position === void 0 || attributes.normal === void 0 || attributes.uv === void 0) {\\n      console.error(\\\\\\\"THREE.BufferGeometry: .computeTangents() failed. Missing required attributes (index, position, normal or uv)\\\\\\\");\\n      return;\\n    }\\n    const indices = index.array;\\n    const positions = attributes.position.array;\\n    const normals = attributes.normal.array;\\n    const uvs = attributes.uv.array;\\n    const nVertices = positions.length / 3;\\n    if (attributes.tangent === void 0) {\\n      this.setAttribute(\\\\\\\"tangent\\\\\\\", new BufferAttribute(new Float32Array(4 * nVertices), 4));\\n    }\\n    const tangents = attributes.tangent.array;\\n    const tan1 = [], tan2 = [];\\n    for (let i = 0; i < nVertices; i++) {\\n      tan1[i] = new Vector3();\\n      tan2[i] = new Vector3();\\n    }\\n    const vA = new Vector3(), vB = new Vector3(), vC = new Vector3(), uvA = new Vector2(), uvB = new Vector2(), uvC = new Vector2(), sdir = new Vector3(), tdir = new Vector3();\\n    function handleTriangle(a, b, c) {\\n      vA.fromArray(positions, a * 3);\\n      vB.fromArray(positions, b * 3);\\n      vC.fromArray(positions, c * 3);\\n      uvA.fromArray(uvs, a * 2);\\n      uvB.fromArray(uvs, b * 2);\\n      uvC.fromArray(uvs, c * 2);\\n      vB.sub(vA);\\n      vC.sub(vA);\\n      uvB.sub(uvA);\\n      uvC.sub(uvA);\\n      const r = 1 / (uvB.x * uvC.y - uvC.x * uvB.y);\\n      if (!isFinite(r))\\n        return;\\n      sdir.copy(vB).multiplyScalar(uvC.y).addScaledVector(vC, -uvB.y).multiplyScalar(r);\\n      tdir.copy(vC).multiplyScalar(uvB.x).addScaledVector(vB, -uvC.x).multiplyScalar(r);\\n      tan1[a].add(sdir);\\n      tan1[b].add(sdir);\\n      tan1[c].add(sdir);\\n      tan2[a].add(tdir);\\n      tan2[b].add(tdir);\\n      tan2[c].add(tdir);\\n    }\\n    let groups = this.groups;\\n    if (groups.length === 0) {\\n      groups = [{\\n        start: 0,\\n        count: indices.length\\n      }];\\n    }\\n    for (let i = 0, il = groups.length; i < il; ++i) {\\n      const group = groups[i];\\n      const start = group.start;\\n      const count = group.count;\\n      for (let j = start, jl = start + count; j < jl; j += 3) {\\n        handleTriangle(indices[j + 0], indices[j + 1], indices[j + 2]);\\n      }\\n    }\\n    const tmp = new Vector3(), tmp2 = new Vector3();\\n    const n = new Vector3(), n2 = new Vector3();\\n    function handleVertex(v) {\\n      n.fromArray(normals, v * 3);\\n      n2.copy(n);\\n      const t = tan1[v];\\n      tmp.copy(t);\\n      tmp.sub(n.multiplyScalar(n.dot(t))).normalize();\\n      tmp2.crossVectors(n2, t);\\n      const test = tmp2.dot(tan2[v]);\\n      const w = test < 0 ? -1 : 1;\\n      tangents[v * 4] = tmp.x;\\n      tangents[v * 4 + 1] = tmp.y;\\n      tangents[v * 4 + 2] = tmp.z;\\n      tangents[v * 4 + 3] = w;\\n    }\\n    for (let i = 0, il = groups.length; i < il; ++i) {\\n      const group = groups[i];\\n      const start = group.start;\\n      const count = group.count;\\n      for (let j = start, jl = start + count; j < jl; j += 3) {\\n        handleVertex(indices[j + 0]);\\n        handleVertex(indices[j + 1]);\\n        handleVertex(indices[j + 2]);\\n      }\\n    }\\n  }\\n  computeVertexNormals() {\\n    const index = this.index;\\n    const positionAttribute = this.getAttribute(\\\\\\\"position\\\\\\\");\\n    if (positionAttribute !== void 0) {\\n      let normalAttribute = this.getAttribute(\\\\\\\"normal\\\\\\\");\\n      if (normalAttribute === void 0) {\\n        normalAttribute = new BufferAttribute(new Float32Array(positionAttribute.count * 3), 3);\\n        this.setAttribute(\\\\\\\"normal\\\\\\\", normalAttribute);\\n      } else {\\n        for (let i = 0, il = normalAttribute.count; i < il; i++) {\\n          normalAttribute.setXYZ(i, 0, 0, 0);\\n        }\\n      }\\n      const pA = new Vector3(), pB = new Vector3(), pC = new Vector3();\\n      const nA = new Vector3(), nB = new Vector3(), nC = new Vector3();\\n      const cb = new Vector3(), ab = new Vector3();\\n      if (index) {\\n        for (let i = 0, il = index.count; i < il; i += 3) {\\n          const vA = index.getX(i + 0);\\n          const vB = index.getX(i + 1);\\n          const vC = index.getX(i + 2);\\n          pA.fromBufferAttribute(positionAttribute, vA);\\n          pB.fromBufferAttribute(positionAttribute, vB);\\n          pC.fromBufferAttribute(positionAttribute, vC);\\n          cb.subVectors(pC, pB);\\n          ab.subVectors(pA, pB);\\n          cb.cross(ab);\\n          nA.fromBufferAttribute(normalAttribute, vA);\\n          nB.fromBufferAttribute(normalAttribute, vB);\\n          nC.fromBufferAttribute(normalAttribute, vC);\\n          nA.add(cb);\\n          nB.add(cb);\\n          nC.add(cb);\\n          normalAttribute.setXYZ(vA, nA.x, nA.y, nA.z);\\n          normalAttribute.setXYZ(vB, nB.x, nB.y, nB.z);\\n          normalAttribute.setXYZ(vC, nC.x, nC.y, nC.z);\\n        }\\n      } else {\\n        for (let i = 0, il = positionAttribute.count; i < il; i += 3) {\\n          pA.fromBufferAttribute(positionAttribute, i + 0);\\n          pB.fromBufferAttribute(positionAttribute, i + 1);\\n          pC.fromBufferAttribute(positionAttribute, i + 2);\\n          cb.subVectors(pC, pB);\\n          ab.subVectors(pA, pB);\\n          cb.cross(ab);\\n          normalAttribute.setXYZ(i + 0, cb.x, cb.y, cb.z);\\n          normalAttribute.setXYZ(i + 1, cb.x, cb.y, cb.z);\\n          normalAttribute.setXYZ(i + 2, cb.x, cb.y, cb.z);\\n        }\\n      }\\n      this.normalizeNormals();\\n      normalAttribute.needsUpdate = true;\\n    }\\n  }\\n  merge(geometry, offset) {\\n    if (!(geometry && geometry.isBufferGeometry)) {\\n      console.error(\\\\\\\"THREE.BufferGeometry.merge(): geometry not an instance of THREE.BufferGeometry.\\\\\\\", geometry);\\n      return;\\n    }\\n    if (offset === void 0) {\\n      offset = 0;\\n      console.warn(\\\\\\\"THREE.BufferGeometry.merge(): Overwriting original geometry, starting at offset=0. Use BufferGeometryUtils.mergeBufferGeometries() for lossless merge.\\\\\\\");\\n    }\\n    const attributes = this.attributes;\\n    for (const key in attributes) {\\n      if (geometry.attributes[key] === void 0)\\n        continue;\\n      const attribute1 = attributes[key];\\n      const attributeArray1 = attribute1.array;\\n      const attribute2 = geometry.attributes[key];\\n      const attributeArray2 = attribute2.array;\\n      const attributeOffset = attribute2.itemSize * offset;\\n      const length = Math.min(attributeArray2.length, attributeArray1.length - attributeOffset);\\n      for (let i = 0, j = attributeOffset; i < length; i++, j++) {\\n        attributeArray1[j] = attributeArray2[i];\\n      }\\n    }\\n    return this;\\n  }\\n  normalizeNormals() {\\n    const normals = this.attributes.normal;\\n    for (let i = 0, il = normals.count; i < il; i++) {\\n      _vector5.fromBufferAttribute(normals, i);\\n      _vector5.normalize();\\n      normals.setXYZ(i, _vector5.x, _vector5.y, _vector5.z);\\n    }\\n  }\\n  toNonIndexed() {\\n    function convertBufferAttribute(attribute, indices2) {\\n      const array = attribute.array;\\n      const itemSize = attribute.itemSize;\\n      const normalized = attribute.normalized;\\n      const array2 = new array.constructor(indices2.length * itemSize);\\n      let index = 0, index2 = 0;\\n      for (let i = 0, l = indices2.length; i < l; i++) {\\n        if (attribute.isInterleavedBufferAttribute) {\\n          index = indices2[i] * attribute.data.stride + attribute.offset;\\n        } else {\\n          index = indices2[i] * itemSize;\\n        }\\n        for (let j = 0; j < itemSize; j++) {\\n          array2[index2++] = array[index++];\\n        }\\n      }\\n      return new BufferAttribute(array2, itemSize, normalized);\\n    }\\n    if (this.index === null) {\\n      console.warn(\\\\\\\"THREE.BufferGeometry.toNonIndexed(): BufferGeometry is already non-indexed.\\\\\\\");\\n      return this;\\n    }\\n    const geometry2 = new BufferGeometry();\\n    const indices = this.index.array;\\n    const attributes = this.attributes;\\n    for (const name in attributes) {\\n      const attribute = attributes[name];\\n      const newAttribute = convertBufferAttribute(attribute, indices);\\n      geometry2.setAttribute(name, newAttribute);\\n    }\\n    const morphAttributes = this.morphAttributes;\\n    for (const name in morphAttributes) {\\n      const morphArray = [];\\n      const morphAttribute = morphAttributes[name];\\n      for (let i = 0, il = morphAttribute.length; i < il; i++) {\\n        const attribute = morphAttribute[i];\\n        const newAttribute = convertBufferAttribute(attribute, indices);\\n        morphArray.push(newAttribute);\\n      }\\n      geometry2.morphAttributes[name] = morphArray;\\n    }\\n    geometry2.morphTargetsRelative = this.morphTargetsRelative;\\n    const groups = this.groups;\\n    for (let i = 0, l = groups.length; i < l; i++) {\\n      const group = groups[i];\\n      geometry2.addGroup(group.start, group.count, group.materialIndex);\\n    }\\n    return geometry2;\\n  }\\n  toJSON() {\\n    const data = {\\n      metadata: {\\n        version: 4.5,\\n        type: \\\\\\\"BufferGeometry\\\\\\\",\\n        generator: \\\\\\\"BufferGeometry.toJSON\\\\\\\"\\n      }\\n    };\\n    data.uuid = this.uuid;\\n    data.type = this.type;\\n    if (this.name !== \\\\\\\"\\\\\\\")\\n      data.name = this.name;\\n    if (Object.keys(this.userData).length > 0)\\n      data.userData = this.userData;\\n    if (this.parameters !== void 0) {\\n      const parameters = this.parameters;\\n      for (const key in parameters) {\\n        if (parameters[key] !== void 0)\\n          data[key] = parameters[key];\\n      }\\n      return data;\\n    }\\n    data.data = {attributes: {}};\\n    const index = this.index;\\n    if (index !== null) {\\n      data.data.index = {\\n        type: index.array.constructor.name,\\n        array: Array.prototype.slice.call(index.array)\\n      };\\n    }\\n    const attributes = this.attributes;\\n    for (const key in attributes) {\\n      const attribute = attributes[key];\\n      data.data.attributes[key] = attribute.toJSON(data.data);\\n    }\\n    const morphAttributes = {};\\n    let hasMorphAttributes = false;\\n    for (const key in this.morphAttributes) {\\n      const attributeArray = this.morphAttributes[key];\\n      const array = [];\\n      for (let i = 0, il = attributeArray.length; i < il; i++) {\\n        const attribute = attributeArray[i];\\n        array.push(attribute.toJSON(data.data));\\n      }\\n      if (array.length > 0) {\\n        morphAttributes[key] = array;\\n        hasMorphAttributes = true;\\n      }\\n    }\\n    if (hasMorphAttributes) {\\n      data.data.morphAttributes = morphAttributes;\\n      data.data.morphTargetsRelative = this.morphTargetsRelative;\\n    }\\n    const groups = this.groups;\\n    if (groups.length > 0) {\\n      data.data.groups = JSON.parse(JSON.stringify(groups));\\n    }\\n    const boundingSphere = this.boundingSphere;\\n    if (boundingSphere !== null) {\\n      data.data.boundingSphere = {\\n        center: boundingSphere.center.toArray(),\\n        radius: boundingSphere.radius\\n      };\\n    }\\n    return data;\\n  }\\n  clone() {\\n    return new this.constructor().copy(this);\\n  }\\n  copy(source) {\\n    this.index = null;\\n    this.attributes = {};\\n    this.morphAttributes = {};\\n    this.groups = [];\\n    this.boundingBox = null;\\n    this.boundingSphere = null;\\n    const data = {};\\n    this.name = source.name;\\n    const index = source.index;\\n    if (index !== null) {\\n      this.setIndex(index.clone(data));\\n    }\\n    const attributes = source.attributes;\\n    for (const name in attributes) {\\n      const attribute = attributes[name];\\n      this.setAttribute(name, attribute.clone(data));\\n    }\\n    const morphAttributes = source.morphAttributes;\\n    for (const name in morphAttributes) {\\n      const array = [];\\n      const morphAttribute = morphAttributes[name];\\n      for (let i = 0, l = morphAttribute.length; i < l; i++) {\\n        array.push(morphAttribute[i].clone(data));\\n      }\\n      this.morphAttributes[name] = array;\\n    }\\n    this.morphTargetsRelative = source.morphTargetsRelative;\\n    const groups = source.groups;\\n    for (let i = 0, l = groups.length; i < l; i++) {\\n      const group = groups[i];\\n      this.addGroup(group.start, group.count, group.materialIndex);\\n    }\\n    const boundingBox = source.boundingBox;\\n    if (boundingBox !== null) {\\n      this.boundingBox = boundingBox.clone();\\n    }\\n    const boundingSphere = source.boundingSphere;\\n    if (boundingSphere !== null) {\\n      this.boundingSphere = boundingSphere.clone();\\n    }\\n    this.drawRange.start = source.drawRange.start;\\n    this.drawRange.count = source.drawRange.count;\\n    this.userData = source.userData;\\n    if (source.parameters !== void 0)\\n      this.parameters = Object.assign({}, source.parameters);\\n    return this;\\n  }\\n  dispose() {\\n    this.dispatchEvent({type: \\\\\\\"dispose\\\\\\\"});\\n  }\\n};\\nBufferGeometry.prototype.isBufferGeometry = true;\\n\\n// ../../../node_modules/three/src/geometries/BoxGeometry.js\\nvar BoxGeometry = class extends BufferGeometry {\\n  constructor(width = 1, height = 1, depth2 = 1, widthSegments = 1, heightSegments = 1, depthSegments = 1) {\\n    super();\\n    this.type = \\\\\\\"BoxGeometry\\\\\\\";\\n    this.parameters = {\\n      width,\\n      height,\\n      depth: depth2,\\n      widthSegments,\\n      heightSegments,\\n      depthSegments\\n    };\\n    const scope = this;\\n    widthSegments = Math.floor(widthSegments);\\n    heightSegments = Math.floor(heightSegments);\\n    depthSegments = Math.floor(depthSegments);\\n    const indices = [];\\n    const vertices = [];\\n    const normals = [];\\n    const uvs = [];\\n    let numberOfVertices = 0;\\n    let groupStart = 0;\\n    buildPlane(\\\\\\\"z\\\\\\\", \\\\\\\"y\\\\\\\", \\\\\\\"x\\\\\\\", -1, -1, depth2, height, width, depthSegments, heightSegments, 0);\\n    buildPlane(\\\\\\\"z\\\\\\\", \\\\\\\"y\\\\\\\", \\\\\\\"x\\\\\\\", 1, -1, depth2, height, -width, depthSegments, heightSegments, 1);\\n    buildPlane(\\\\\\\"x\\\\\\\", \\\\\\\"z\\\\\\\", \\\\\\\"y\\\\\\\", 1, 1, width, depth2, height, widthSegments, depthSegments, 2);\\n    buildPlane(\\\\\\\"x\\\\\\\", \\\\\\\"z\\\\\\\", \\\\\\\"y\\\\\\\", 1, -1, width, depth2, -height, widthSegments, depthSegments, 3);\\n    buildPlane(\\\\\\\"x\\\\\\\", \\\\\\\"y\\\\\\\", \\\\\\\"z\\\\\\\", 1, -1, width, height, depth2, widthSegments, heightSegments, 4);\\n    buildPlane(\\\\\\\"x\\\\\\\", \\\\\\\"y\\\\\\\", \\\\\\\"z\\\\\\\", -1, -1, width, height, -depth2, widthSegments, heightSegments, 5);\\n    this.setIndex(indices);\\n    this.setAttribute(\\\\\\\"position\\\\\\\", new Float32BufferAttribute(vertices, 3));\\n    this.setAttribute(\\\\\\\"normal\\\\\\\", new Float32BufferAttribute(normals, 3));\\n    this.setAttribute(\\\\\\\"uv\\\\\\\", new Float32BufferAttribute(uvs, 2));\\n    function buildPlane(u, v, w, udir, vdir, width2, height2, depth3, gridX, gridY, materialIndex) {\\n      const segmentWidth = width2 / gridX;\\n      const segmentHeight = height2 / gridY;\\n      const widthHalf = width2 / 2;\\n      const heightHalf = height2 / 2;\\n      const depthHalf = depth3 / 2;\\n      const gridX1 = gridX + 1;\\n      const gridY1 = gridY + 1;\\n      let vertexCounter = 0;\\n      let groupCount = 0;\\n      const vector = new Vector3();\\n      for (let iy = 0; iy < gridY1; iy++) {\\n        const y = iy * segmentHeight - heightHalf;\\n        for (let ix = 0; ix < gridX1; ix++) {\\n          const x = ix * segmentWidth - widthHalf;\\n          vector[u] = x * udir;\\n          vector[v] = y * vdir;\\n          vector[w] = depthHalf;\\n          vertices.push(vector.x, vector.y, vector.z);\\n          vector[u] = 0;\\n          vector[v] = 0;\\n          vector[w] = depth3 > 0 ? 1 : -1;\\n          normals.push(vector.x, vector.y, vector.z);\\n          uvs.push(ix / gridX);\\n          uvs.push(1 - iy / gridY);\\n          vertexCounter += 1;\\n        }\\n      }\\n      for (let iy = 0; iy < gridY; iy++) {\\n        for (let ix = 0; ix < gridX; ix++) {\\n          const a = numberOfVertices + ix + gridX1 * iy;\\n          const b = numberOfVertices + ix + gridX1 * (iy + 1);\\n          const c = numberOfVertices + (ix + 1) + gridX1 * (iy + 1);\\n          const d = numberOfVertices + (ix + 1) + gridX1 * iy;\\n          indices.push(a, b, d);\\n          indices.push(b, c, d);\\n          groupCount += 6;\\n        }\\n      }\\n      scope.addGroup(groupStart, groupCount, materialIndex);\\n      groupStart += groupCount;\\n      numberOfVertices += vertexCounter;\\n    }\\n  }\\n  static fromJSON(data) {\\n    return new BoxGeometry(data.width, data.height, data.depth, data.widthSegments, data.heightSegments, data.depthSegments);\\n  }\\n};\\n\\n// ../../../node_modules/three/src/geometries/PlaneGeometry.js\\nvar PlaneGeometry = class extends BufferGeometry {\\n  constructor(width = 1, height = 1, widthSegments = 1, heightSegments = 1) {\\n    super();\\n    this.type = \\\\\\\"PlaneGeometry\\\\\\\";\\n    this.parameters = {\\n      width,\\n      height,\\n      widthSegments,\\n      heightSegments\\n    };\\n    const width_half = width / 2;\\n    const height_half = height / 2;\\n    const gridX = Math.floor(widthSegments);\\n    const gridY = Math.floor(heightSegments);\\n    const gridX1 = gridX + 1;\\n    const gridY1 = gridY + 1;\\n    const segment_width = width / gridX;\\n    const segment_height = height / gridY;\\n    const indices = [];\\n    const vertices = [];\\n    const normals = [];\\n    const uvs = [];\\n    for (let iy = 0; iy < gridY1; iy++) {\\n      const y = iy * segment_height - height_half;\\n      for (let ix = 0; ix < gridX1; ix++) {\\n        const x = ix * segment_width - width_half;\\n        vertices.push(x, -y, 0);\\n        normals.push(0, 0, 1);\\n        uvs.push(ix / gridX);\\n        uvs.push(1 - iy / gridY);\\n      }\\n    }\\n    for (let iy = 0; iy < gridY; iy++) {\\n      for (let ix = 0; ix < gridX; ix++) {\\n        const a = ix + gridX1 * iy;\\n        const b = ix + gridX1 * (iy + 1);\\n        const c = ix + 1 + gridX1 * (iy + 1);\\n        const d = ix + 1 + gridX1 * iy;\\n        indices.push(a, b, d);\\n        indices.push(b, c, d);\\n      }\\n    }\\n    this.setIndex(indices);\\n    this.setAttribute(\\\\\\\"position\\\\\\\", new Float32BufferAttribute(vertices, 3));\\n    this.setAttribute(\\\\\\\"normal\\\\\\\", new Float32BufferAttribute(normals, 3));\\n    this.setAttribute(\\\\\\\"uv\\\\\\\", new Float32BufferAttribute(uvs, 2));\\n  }\\n  static fromJSON(data) {\\n    return new PlaneGeometry(data.width, data.height, data.widthSegments, data.heightSegments);\\n  }\\n};\\n\\n// ../../../node_modules/three/src/materials/Material.js\\nvar materialId = 0;\\nvar Material = class extends EventDispatcher {\\n  constructor() {\\n    super();\\n    Object.defineProperty(this, \\\\\\\"id\\\\\\\", {value: materialId++});\\n    this.uuid = generateUUID();\\n    this.name = \\\\\\\"\\\\\\\";\\n    this.type = \\\\\\\"Material\\\\\\\";\\n    this.fog = true;\\n    this.blending = NormalBlending;\\n    this.side = FrontSide;\\n    this.vertexColors = false;\\n    this.opacity = 1;\\n    this.format = RGBAFormat;\\n    this.transparent = false;\\n    this.blendSrc = SrcAlphaFactor;\\n    this.blendDst = OneMinusSrcAlphaFactor;\\n    this.blendEquation = AddEquation;\\n    this.blendSrcAlpha = null;\\n    this.blendDstAlpha = null;\\n    this.blendEquationAlpha = null;\\n    this.depthFunc = LessEqualDepth;\\n    this.depthTest = true;\\n    this.depthWrite = true;\\n    this.stencilWriteMask = 255;\\n    this.stencilFunc = AlwaysStencilFunc;\\n    this.stencilRef = 0;\\n    this.stencilFuncMask = 255;\\n    this.stencilFail = KeepStencilOp;\\n    this.stencilZFail = KeepStencilOp;\\n    this.stencilZPass = KeepStencilOp;\\n    this.stencilWrite = false;\\n    this.clippingPlanes = null;\\n    this.clipIntersection = false;\\n    this.clipShadows = false;\\n    this.shadowSide = null;\\n    this.colorWrite = true;\\n    this.precision = null;\\n    this.polygonOffset = false;\\n    this.polygonOffsetFactor = 0;\\n    this.polygonOffsetUnits = 0;\\n    this.dithering = false;\\n    this.alphaToCoverage = false;\\n    this.premultipliedAlpha = false;\\n    this.visible = true;\\n    this.toneMapped = true;\\n    this.userData = {};\\n    this.version = 0;\\n    this._alphaTest = 0;\\n  }\\n  get alphaTest() {\\n    return this._alphaTest;\\n  }\\n  set alphaTest(value) {\\n    if (this._alphaTest > 0 !== value > 0) {\\n      this.version++;\\n    }\\n    this._alphaTest = value;\\n  }\\n  onBuild() {\\n  }\\n  onBeforeRender() {\\n  }\\n  onBeforeCompile() {\\n  }\\n  customProgramCacheKey() {\\n    return this.onBeforeCompile.toString();\\n  }\\n  setValues(values) {\\n    if (values === void 0)\\n      return;\\n    for (const key in values) {\\n      const newValue = values[key];\\n      if (newValue === void 0) {\\n        console.warn(\\\\\\\"THREE.Material: '\\\\\\\" + key + \\\\\\\"' parameter is undefined.\\\\\\\");\\n        continue;\\n      }\\n      if (key === \\\\\\\"shading\\\\\\\") {\\n        console.warn(\\\\\\\"THREE.\\\\\\\" + this.type + \\\\\\\": .shading has been removed. Use the boolean .flatShading instead.\\\\\\\");\\n        this.flatShading = newValue === FlatShading ? true : false;\\n        continue;\\n      }\\n      const currentValue = this[key];\\n      if (currentValue === void 0) {\\n        console.warn(\\\\\\\"THREE.\\\\\\\" + this.type + \\\\\\\": '\\\\\\\" + key + \\\\\\\"' is not a property of this material.\\\\\\\");\\n        continue;\\n      }\\n      if (currentValue && currentValue.isColor) {\\n        currentValue.set(newValue);\\n      } else if (currentValue && currentValue.isVector3 && (newValue && newValue.isVector3)) {\\n        currentValue.copy(newValue);\\n      } else {\\n        this[key] = newValue;\\n      }\\n    }\\n  }\\n  toJSON(meta) {\\n    const isRoot = meta === void 0 || typeof meta === \\\\\\\"string\\\\\\\";\\n    if (isRoot) {\\n      meta = {\\n        textures: {},\\n        images: {}\\n      };\\n    }\\n    const data = {\\n      metadata: {\\n        version: 4.5,\\n        type: \\\\\\\"Material\\\\\\\",\\n        generator: \\\\\\\"Material.toJSON\\\\\\\"\\n      }\\n    };\\n    data.uuid = this.uuid;\\n    data.type = this.type;\\n    if (this.name !== \\\\\\\"\\\\\\\")\\n      data.name = this.name;\\n    if (this.color && this.color.isColor)\\n      data.color = this.color.getHex();\\n    if (this.roughness !== void 0)\\n      data.roughness = this.roughness;\\n    if (this.metalness !== void 0)\\n      data.metalness = this.metalness;\\n    if (this.sheen !== void 0)\\n      data.sheen = this.sheen;\\n    if (this.sheenTint && this.sheenTint.isColor)\\n      data.sheenTint = this.sheenTint.getHex();\\n    if (this.sheenRoughness !== void 0)\\n      data.sheenRoughness = this.sheenRoughness;\\n    if (this.emissive && this.emissive.isColor)\\n      data.emissive = this.emissive.getHex();\\n    if (this.emissiveIntensity && this.emissiveIntensity !== 1)\\n      data.emissiveIntensity = this.emissiveIntensity;\\n    if (this.specular && this.specular.isColor)\\n      data.specular = this.specular.getHex();\\n    if (this.specularIntensity !== void 0)\\n      data.specularIntensity = this.specularIntensity;\\n    if (this.specularTint && this.specularTint.isColor)\\n      data.specularTint = this.specularTint.getHex();\\n    if (this.shininess !== void 0)\\n      data.shininess = this.shininess;\\n    if (this.clearcoat !== void 0)\\n      data.clearcoat = this.clearcoat;\\n    if (this.clearcoatRoughness !== void 0)\\n      data.clearcoatRoughness = this.clearcoatRoughness;\\n    if (this.clearcoatMap && this.clearcoatMap.isTexture) {\\n      data.clearcoatMap = this.clearcoatMap.toJSON(meta).uuid;\\n    }\\n    if (this.clearcoatRoughnessMap && this.clearcoatRoughnessMap.isTexture) {\\n      data.clearcoatRoughnessMap = this.clearcoatRoughnessMap.toJSON(meta).uuid;\\n    }\\n    if (this.clearcoatNormalMap && this.clearcoatNormalMap.isTexture) {\\n      data.clearcoatNormalMap = this.clearcoatNormalMap.toJSON(meta).uuid;\\n      data.clearcoatNormalScale = this.clearcoatNormalScale.toArray();\\n    }\\n    if (this.map && this.map.isTexture)\\n      data.map = this.map.toJSON(meta).uuid;\\n    if (this.matcap && this.matcap.isTexture)\\n      data.matcap = this.matcap.toJSON(meta).uuid;\\n    if (this.alphaMap && this.alphaMap.isTexture)\\n      data.alphaMap = this.alphaMap.toJSON(meta).uuid;\\n    if (this.lightMap && this.lightMap.isTexture) {\\n      data.lightMap = this.lightMap.toJSON(meta).uuid;\\n      data.lightMapIntensity = this.lightMapIntensity;\\n    }\\n    if (this.aoMap && this.aoMap.isTexture) {\\n      data.aoMap = this.aoMap.toJSON(meta).uuid;\\n      data.aoMapIntensity = this.aoMapIntensity;\\n    }\\n    if (this.bumpMap && this.bumpMap.isTexture) {\\n      data.bumpMap = this.bumpMap.toJSON(meta).uuid;\\n      data.bumpScale = this.bumpScale;\\n    }\\n    if (this.normalMap && this.normalMap.isTexture) {\\n      data.normalMap = this.normalMap.toJSON(meta).uuid;\\n      data.normalMapType = this.normalMapType;\\n      data.normalScale = this.normalScale.toArray();\\n    }\\n    if (this.displacementMap && this.displacementMap.isTexture) {\\n      data.displacementMap = this.displacementMap.toJSON(meta).uuid;\\n      data.displacementScale = this.displacementScale;\\n      data.displacementBias = this.displacementBias;\\n    }\\n    if (this.roughnessMap && this.roughnessMap.isTexture)\\n      data.roughnessMap = this.roughnessMap.toJSON(meta).uuid;\\n    if (this.metalnessMap && this.metalnessMap.isTexture)\\n      data.metalnessMap = this.metalnessMap.toJSON(meta).uuid;\\n    if (this.emissiveMap && this.emissiveMap.isTexture)\\n      data.emissiveMap = this.emissiveMap.toJSON(meta).uuid;\\n    if (this.specularMap && this.specularMap.isTexture)\\n      data.specularMap = this.specularMap.toJSON(meta).uuid;\\n    if (this.specularIntensityMap && this.specularIntensityMap.isTexture)\\n      data.specularIntensityMap = this.specularIntensityMap.toJSON(meta).uuid;\\n    if (this.specularTintMap && this.specularTintMap.isTexture)\\n      data.specularTintMap = this.specularTintMap.toJSON(meta).uuid;\\n    if (this.envMap && this.envMap.isTexture) {\\n      data.envMap = this.envMap.toJSON(meta).uuid;\\n      if (this.combine !== void 0)\\n        data.combine = this.combine;\\n    }\\n    if (this.envMapIntensity !== void 0)\\n      data.envMapIntensity = this.envMapIntensity;\\n    if (this.reflectivity !== void 0)\\n      data.reflectivity = this.reflectivity;\\n    if (this.refractionRatio !== void 0)\\n      data.refractionRatio = this.refractionRatio;\\n    if (this.gradientMap && this.gradientMap.isTexture) {\\n      data.gradientMap = this.gradientMap.toJSON(meta).uuid;\\n    }\\n    if (this.transmission !== void 0)\\n      data.transmission = this.transmission;\\n    if (this.transmissionMap && this.transmissionMap.isTexture)\\n      data.transmissionMap = this.transmissionMap.toJSON(meta).uuid;\\n    if (this.thickness !== void 0)\\n      data.thickness = this.thickness;\\n    if (this.thicknessMap && this.thicknessMap.isTexture)\\n      data.thicknessMap = this.thicknessMap.toJSON(meta).uuid;\\n    if (this.attenuationDistance !== void 0)\\n      data.attenuationDistance = this.attenuationDistance;\\n    if (this.attenuationTint !== void 0)\\n      data.attenuationTint = this.attenuationTint.getHex();\\n    if (this.size !== void 0)\\n      data.size = this.size;\\n    if (this.shadowSide !== null)\\n      data.shadowSide = this.shadowSide;\\n    if (this.sizeAttenuation !== void 0)\\n      data.sizeAttenuation = this.sizeAttenuation;\\n    if (this.blending !== NormalBlending)\\n      data.blending = this.blending;\\n    if (this.side !== FrontSide)\\n      data.side = this.side;\\n    if (this.vertexColors)\\n      data.vertexColors = true;\\n    if (this.opacity < 1)\\n      data.opacity = this.opacity;\\n    if (this.format !== RGBAFormat)\\n      data.format = this.format;\\n    if (this.transparent === true)\\n      data.transparent = this.transparent;\\n    data.depthFunc = this.depthFunc;\\n    data.depthTest = this.depthTest;\\n    data.depthWrite = this.depthWrite;\\n    data.colorWrite = this.colorWrite;\\n    data.stencilWrite = this.stencilWrite;\\n    data.stencilWriteMask = this.stencilWriteMask;\\n    data.stencilFunc = this.stencilFunc;\\n    data.stencilRef = this.stencilRef;\\n    data.stencilFuncMask = this.stencilFuncMask;\\n    data.stencilFail = this.stencilFail;\\n    data.stencilZFail = this.stencilZFail;\\n    data.stencilZPass = this.stencilZPass;\\n    if (this.rotation && this.rotation !== 0)\\n      data.rotation = this.rotation;\\n    if (this.polygonOffset === true)\\n      data.polygonOffset = true;\\n    if (this.polygonOffsetFactor !== 0)\\n      data.polygonOffsetFactor = this.polygonOffsetFactor;\\n    if (this.polygonOffsetUnits !== 0)\\n      data.polygonOffsetUnits = this.polygonOffsetUnits;\\n    if (this.linewidth && this.linewidth !== 1)\\n      data.linewidth = this.linewidth;\\n    if (this.dashSize !== void 0)\\n      data.dashSize = this.dashSize;\\n    if (this.gapSize !== void 0)\\n      data.gapSize = this.gapSize;\\n    if (this.scale !== void 0)\\n      data.scale = this.scale;\\n    if (this.dithering === true)\\n      data.dithering = true;\\n    if (this.alphaTest > 0)\\n      data.alphaTest = this.alphaTest;\\n    if (this.alphaToCoverage === true)\\n      data.alphaToCoverage = this.alphaToCoverage;\\n    if (this.premultipliedAlpha === true)\\n      data.premultipliedAlpha = this.premultipliedAlpha;\\n    if (this.wireframe === true)\\n      data.wireframe = this.wireframe;\\n    if (this.wireframeLinewidth > 1)\\n      data.wireframeLinewidth = this.wireframeLinewidth;\\n    if (this.wireframeLinecap !== \\\\\\\"round\\\\\\\")\\n      data.wireframeLinecap = this.wireframeLinecap;\\n    if (this.wireframeLinejoin !== \\\\\\\"round\\\\\\\")\\n      data.wireframeLinejoin = this.wireframeLinejoin;\\n    if (this.flatShading === true)\\n      data.flatShading = this.flatShading;\\n    if (this.visible === false)\\n      data.visible = false;\\n    if (this.toneMapped === false)\\n      data.toneMapped = false;\\n    if (JSON.stringify(this.userData) !== \\\\\\\"{}\\\\\\\")\\n      data.userData = this.userData;\\n    function extractFromCache(cache) {\\n      const values = [];\\n      for (const key in cache) {\\n        const data2 = cache[key];\\n        delete data2.metadata;\\n        values.push(data2);\\n      }\\n      return values;\\n    }\\n    if (isRoot) {\\n      const textures = extractFromCache(meta.textures);\\n      const images = extractFromCache(meta.images);\\n      if (textures.length > 0)\\n        data.textures = textures;\\n      if (images.length > 0)\\n        data.images = images;\\n    }\\n    return data;\\n  }\\n  clone() {\\n    return new this.constructor().copy(this);\\n  }\\n  copy(source) {\\n    this.name = source.name;\\n    this.fog = source.fog;\\n    this.blending = source.blending;\\n    this.side = source.side;\\n    this.vertexColors = source.vertexColors;\\n    this.opacity = source.opacity;\\n    this.format = source.format;\\n    this.transparent = source.transparent;\\n    this.blendSrc = source.blendSrc;\\n    this.blendDst = source.blendDst;\\n    this.blendEquation = source.blendEquation;\\n    this.blendSrcAlpha = source.blendSrcAlpha;\\n    this.blendDstAlpha = source.blendDstAlpha;\\n    this.blendEquationAlpha = source.blendEquationAlpha;\\n    this.depthFunc = source.depthFunc;\\n    this.depthTest = source.depthTest;\\n    this.depthWrite = source.depthWrite;\\n    this.stencilWriteMask = source.stencilWriteMask;\\n    this.stencilFunc = source.stencilFunc;\\n    this.stencilRef = source.stencilRef;\\n    this.stencilFuncMask = source.stencilFuncMask;\\n    this.stencilFail = source.stencilFail;\\n    this.stencilZFail = source.stencilZFail;\\n    this.stencilZPass = source.stencilZPass;\\n    this.stencilWrite = source.stencilWrite;\\n    const srcPlanes = source.clippingPlanes;\\n    let dstPlanes = null;\\n    if (srcPlanes !== null) {\\n      const n = srcPlanes.length;\\n      dstPlanes = new Array(n);\\n      for (let i = 0; i !== n; ++i) {\\n        dstPlanes[i] = srcPlanes[i].clone();\\n      }\\n    }\\n    this.clippingPlanes = dstPlanes;\\n    this.clipIntersection = source.clipIntersection;\\n    this.clipShadows = source.clipShadows;\\n    this.shadowSide = source.shadowSide;\\n    this.colorWrite = source.colorWrite;\\n    this.precision = source.precision;\\n    this.polygonOffset = source.polygonOffset;\\n    this.polygonOffsetFactor = source.polygonOffsetFactor;\\n    this.polygonOffsetUnits = source.polygonOffsetUnits;\\n    this.dithering = source.dithering;\\n    this.alphaTest = source.alphaTest;\\n    this.alphaToCoverage = source.alphaToCoverage;\\n    this.premultipliedAlpha = source.premultipliedAlpha;\\n    this.visible = source.visible;\\n    this.toneMapped = source.toneMapped;\\n    this.userData = JSON.parse(JSON.stringify(source.userData));\\n    return this;\\n  }\\n  dispose() {\\n    this.dispatchEvent({type: \\\\\\\"dispose\\\\\\\"});\\n  }\\n  set needsUpdate(value) {\\n    if (value === true)\\n      this.version++;\\n  }\\n};\\nMaterial.prototype.isMaterial = true;\\n\\n// ../../../node_modules/three/src/renderers/shaders/UniformsUtils.js\\nfunction cloneUniforms(src) {\\n  const dst = {};\\n  for (const u in src) {\\n    dst[u] = {};\\n    for (const p in src[u]) {\\n      const property = src[u][p];\\n      if (property && (property.isColor || property.isMatrix3 || property.isMatrix4 || property.isVector2 || property.isVector3 || property.isVector4 || property.isTexture || property.isQuaternion)) {\\n        dst[u][p] = property.clone();\\n      } else if (Array.isArray(property)) {\\n        dst[u][p] = property.slice();\\n      } else {\\n        dst[u][p] = property;\\n      }\\n    }\\n  }\\n  return dst;\\n}\\nfunction mergeUniforms(uniforms) {\\n  const merged = {};\\n  for (let u = 0; u < uniforms.length; u++) {\\n    const tmp = cloneUniforms(uniforms[u]);\\n    for (const p in tmp) {\\n      merged[p] = tmp[p];\\n    }\\n  }\\n  return merged;\\n}\\nvar UniformsUtils = {clone: cloneUniforms, merge: mergeUniforms};\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/default_vertex.glsl.js\\nvar default_vertex_glsl_default = `\\nvoid main() {\\n\\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\\n}\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/default_fragment.glsl.js\\nvar default_fragment_glsl_default = `\\nvoid main() {\\n\\tgl_FragColor = vec4( 1.0, 0.0, 0.0, 1.0 );\\n}\\n`;\\n\\n// ../../../node_modules/three/src/materials/ShaderMaterial.js\\nvar ShaderMaterial = class extends Material {\\n  constructor(parameters) {\\n    super();\\n    this.type = \\\\\\\"ShaderMaterial\\\\\\\";\\n    this.defines = {};\\n    this.uniforms = {};\\n    this.vertexShader = default_vertex_glsl_default;\\n    this.fragmentShader = default_fragment_glsl_default;\\n    this.linewidth = 1;\\n    this.wireframe = false;\\n    this.wireframeLinewidth = 1;\\n    this.fog = false;\\n    this.lights = false;\\n    this.clipping = false;\\n    this.extensions = {\\n      derivatives: false,\\n      fragDepth: false,\\n      drawBuffers: false,\\n      shaderTextureLOD: false\\n    };\\n    this.defaultAttributeValues = {\\n      color: [1, 1, 1],\\n      uv: [0, 0],\\n      uv2: [0, 0]\\n    };\\n    this.index0AttributeName = void 0;\\n    this.uniformsNeedUpdate = false;\\n    this.glslVersion = null;\\n    if (parameters !== void 0) {\\n      if (parameters.attributes !== void 0) {\\n        console.error(\\\\\\\"THREE.ShaderMaterial: attributes should now be defined in THREE.BufferGeometry instead.\\\\\\\");\\n      }\\n      this.setValues(parameters);\\n    }\\n  }\\n  copy(source) {\\n    super.copy(source);\\n    this.fragmentShader = source.fragmentShader;\\n    this.vertexShader = source.vertexShader;\\n    this.uniforms = cloneUniforms(source.uniforms);\\n    this.defines = Object.assign({}, source.defines);\\n    this.wireframe = source.wireframe;\\n    this.wireframeLinewidth = source.wireframeLinewidth;\\n    this.lights = source.lights;\\n    this.clipping = source.clipping;\\n    this.extensions = Object.assign({}, source.extensions);\\n    this.glslVersion = source.glslVersion;\\n    return this;\\n  }\\n  toJSON(meta) {\\n    const data = super.toJSON(meta);\\n    data.glslVersion = this.glslVersion;\\n    data.uniforms = {};\\n    for (const name in this.uniforms) {\\n      const uniform = this.uniforms[name];\\n      const value = uniform.value;\\n      if (value && value.isTexture) {\\n        data.uniforms[name] = {\\n          type: \\\\\\\"t\\\\\\\",\\n          value: value.toJSON(meta).uuid\\n        };\\n      } else if (value && value.isColor) {\\n        data.uniforms[name] = {\\n          type: \\\\\\\"c\\\\\\\",\\n          value: value.getHex()\\n        };\\n      } else if (value && value.isVector2) {\\n        data.uniforms[name] = {\\n          type: \\\\\\\"v2\\\\\\\",\\n          value: value.toArray()\\n        };\\n      } else if (value && value.isVector3) {\\n        data.uniforms[name] = {\\n          type: \\\\\\\"v3\\\\\\\",\\n          value: value.toArray()\\n        };\\n      } else if (value && value.isVector4) {\\n        data.uniforms[name] = {\\n          type: \\\\\\\"v4\\\\\\\",\\n          value: value.toArray()\\n        };\\n      } else if (value && value.isMatrix3) {\\n        data.uniforms[name] = {\\n          type: \\\\\\\"m3\\\\\\\",\\n          value: value.toArray()\\n        };\\n      } else if (value && value.isMatrix4) {\\n        data.uniforms[name] = {\\n          type: \\\\\\\"m4\\\\\\\",\\n          value: value.toArray()\\n        };\\n      } else {\\n        data.uniforms[name] = {\\n          value\\n        };\\n      }\\n    }\\n    if (Object.keys(this.defines).length > 0)\\n      data.defines = this.defines;\\n    data.vertexShader = this.vertexShader;\\n    data.fragmentShader = this.fragmentShader;\\n    const extensions = {};\\n    for (const key in this.extensions) {\\n      if (this.extensions[key] === true)\\n        extensions[key] = true;\\n    }\\n    if (Object.keys(extensions).length > 0)\\n      data.extensions = extensions;\\n    return data;\\n  }\\n};\\nShaderMaterial.prototype.isShaderMaterial = true;\\n\\n// ../../../node_modules/three/src/math/Ray.js\\nvar _vector6 = /* @__PURE__ */ new Vector3();\\nvar _segCenter = /* @__PURE__ */ new Vector3();\\nvar _segDir = /* @__PURE__ */ new Vector3();\\nvar _diff = /* @__PURE__ */ new Vector3();\\nvar _edge1 = /* @__PURE__ */ new Vector3();\\nvar _edge2 = /* @__PURE__ */ new Vector3();\\nvar _normal = /* @__PURE__ */ new Vector3();\\nvar Ray = class {\\n  constructor(origin = new Vector3(), direction = new Vector3(0, 0, -1)) {\\n    this.origin = origin;\\n    this.direction = direction;\\n  }\\n  set(origin, direction) {\\n    this.origin.copy(origin);\\n    this.direction.copy(direction);\\n    return this;\\n  }\\n  copy(ray) {\\n    this.origin.copy(ray.origin);\\n    this.direction.copy(ray.direction);\\n    return this;\\n  }\\n  at(t, target) {\\n    return target.copy(this.direction).multiplyScalar(t).add(this.origin);\\n  }\\n  lookAt(v) {\\n    this.direction.copy(v).sub(this.origin).normalize();\\n    return this;\\n  }\\n  recast(t) {\\n    this.origin.copy(this.at(t, _vector6));\\n    return this;\\n  }\\n  closestPointToPoint(point, target) {\\n    target.subVectors(point, this.origin);\\n    const directionDistance = target.dot(this.direction);\\n    if (directionDistance < 0) {\\n      return target.copy(this.origin);\\n    }\\n    return target.copy(this.direction).multiplyScalar(directionDistance).add(this.origin);\\n  }\\n  distanceToPoint(point) {\\n    return Math.sqrt(this.distanceSqToPoint(point));\\n  }\\n  distanceSqToPoint(point) {\\n    const directionDistance = _vector6.subVectors(point, this.origin).dot(this.direction);\\n    if (directionDistance < 0) {\\n      return this.origin.distanceToSquared(point);\\n    }\\n    _vector6.copy(this.direction).multiplyScalar(directionDistance).add(this.origin);\\n    return _vector6.distanceToSquared(point);\\n  }\\n  distanceSqToSegment(v0, v1, optionalPointOnRay, optionalPointOnSegment) {\\n    _segCenter.copy(v0).add(v1).multiplyScalar(0.5);\\n    _segDir.copy(v1).sub(v0).normalize();\\n    _diff.copy(this.origin).sub(_segCenter);\\n    const segExtent = v0.distanceTo(v1) * 0.5;\\n    const a01 = -this.direction.dot(_segDir);\\n    const b0 = _diff.dot(this.direction);\\n    const b1 = -_diff.dot(_segDir);\\n    const c = _diff.lengthSq();\\n    const det = Math.abs(1 - a01 * a01);\\n    let s0, s1, sqrDist, extDet;\\n    if (det > 0) {\\n      s0 = a01 * b1 - b0;\\n      s1 = a01 * b0 - b1;\\n      extDet = segExtent * det;\\n      if (s0 >= 0) {\\n        if (s1 >= -extDet) {\\n          if (s1 <= extDet) {\\n            const invDet = 1 / det;\\n            s0 *= invDet;\\n            s1 *= invDet;\\n            sqrDist = s0 * (s0 + a01 * s1 + 2 * b0) + s1 * (a01 * s0 + s1 + 2 * b1) + c;\\n          } else {\\n            s1 = segExtent;\\n            s0 = Math.max(0, -(a01 * s1 + b0));\\n            sqrDist = -s0 * s0 + s1 * (s1 + 2 * b1) + c;\\n          }\\n        } else {\\n          s1 = -segExtent;\\n          s0 = Math.max(0, -(a01 * s1 + b0));\\n          sqrDist = -s0 * s0 + s1 * (s1 + 2 * b1) + c;\\n        }\\n      } else {\\n        if (s1 <= -extDet) {\\n          s0 = Math.max(0, -(-a01 * segExtent + b0));\\n          s1 = s0 > 0 ? -segExtent : Math.min(Math.max(-segExtent, -b1), segExtent);\\n          sqrDist = -s0 * s0 + s1 * (s1 + 2 * b1) + c;\\n        } else if (s1 <= extDet) {\\n          s0 = 0;\\n          s1 = Math.min(Math.max(-segExtent, -b1), segExtent);\\n          sqrDist = s1 * (s1 + 2 * b1) + c;\\n        } else {\\n          s0 = Math.max(0, -(a01 * segExtent + b0));\\n          s1 = s0 > 0 ? segExtent : Math.min(Math.max(-segExtent, -b1), segExtent);\\n          sqrDist = -s0 * s0 + s1 * (s1 + 2 * b1) + c;\\n        }\\n      }\\n    } else {\\n      s1 = a01 > 0 ? -segExtent : segExtent;\\n      s0 = Math.max(0, -(a01 * s1 + b0));\\n      sqrDist = -s0 * s0 + s1 * (s1 + 2 * b1) + c;\\n    }\\n    if (optionalPointOnRay) {\\n      optionalPointOnRay.copy(this.direction).multiplyScalar(s0).add(this.origin);\\n    }\\n    if (optionalPointOnSegment) {\\n      optionalPointOnSegment.copy(_segDir).multiplyScalar(s1).add(_segCenter);\\n    }\\n    return sqrDist;\\n  }\\n  intersectSphere(sphere, target) {\\n    _vector6.subVectors(sphere.center, this.origin);\\n    const tca = _vector6.dot(this.direction);\\n    const d2 = _vector6.dot(_vector6) - tca * tca;\\n    const radius2 = sphere.radius * sphere.radius;\\n    if (d2 > radius2)\\n      return null;\\n    const thc = Math.sqrt(radius2 - d2);\\n    const t0 = tca - thc;\\n    const t1 = tca + thc;\\n    if (t0 < 0 && t1 < 0)\\n      return null;\\n    if (t0 < 0)\\n      return this.at(t1, target);\\n    return this.at(t0, target);\\n  }\\n  intersectsSphere(sphere) {\\n    return this.distanceSqToPoint(sphere.center) <= sphere.radius * sphere.radius;\\n  }\\n  distanceToPlane(plane) {\\n    const denominator = plane.normal.dot(this.direction);\\n    if (denominator === 0) {\\n      if (plane.distanceToPoint(this.origin) === 0) {\\n        return 0;\\n      }\\n      return null;\\n    }\\n    const t = -(this.origin.dot(plane.normal) + plane.constant) / denominator;\\n    return t >= 0 ? t : null;\\n  }\\n  intersectPlane(plane, target) {\\n    const t = this.distanceToPlane(plane);\\n    if (t === null) {\\n      return null;\\n    }\\n    return this.at(t, target);\\n  }\\n  intersectsPlane(plane) {\\n    const distToPoint = plane.distanceToPoint(this.origin);\\n    if (distToPoint === 0) {\\n      return true;\\n    }\\n    const denominator = plane.normal.dot(this.direction);\\n    if (denominator * distToPoint < 0) {\\n      return true;\\n    }\\n    return false;\\n  }\\n  intersectBox(box, target) {\\n    let tmin, tmax, tymin, tymax, tzmin, tzmax;\\n    const invdirx = 1 / this.direction.x, invdiry = 1 / this.direction.y, invdirz = 1 / this.direction.z;\\n    const origin = this.origin;\\n    if (invdirx >= 0) {\\n      tmin = (box.min.x - origin.x) * invdirx;\\n      tmax = (box.max.x - origin.x) * invdirx;\\n    } else {\\n      tmin = (box.max.x - origin.x) * invdirx;\\n      tmax = (box.min.x - origin.x) * invdirx;\\n    }\\n    if (invdiry >= 0) {\\n      tymin = (box.min.y - origin.y) * invdiry;\\n      tymax = (box.max.y - origin.y) * invdiry;\\n    } else {\\n      tymin = (box.max.y - origin.y) * invdiry;\\n      tymax = (box.min.y - origin.y) * invdiry;\\n    }\\n    if (tmin > tymax || tymin > tmax)\\n      return null;\\n    if (tymin > tmin || tmin !== tmin)\\n      tmin = tymin;\\n    if (tymax < tmax || tmax !== tmax)\\n      tmax = tymax;\\n    if (invdirz >= 0) {\\n      tzmin = (box.min.z - origin.z) * invdirz;\\n      tzmax = (box.max.z - origin.z) * invdirz;\\n    } else {\\n      tzmin = (box.max.z - origin.z) * invdirz;\\n      tzmax = (box.min.z - origin.z) * invdirz;\\n    }\\n    if (tmin > tzmax || tzmin > tmax)\\n      return null;\\n    if (tzmin > tmin || tmin !== tmin)\\n      tmin = tzmin;\\n    if (tzmax < tmax || tmax !== tmax)\\n      tmax = tzmax;\\n    if (tmax < 0)\\n      return null;\\n    return this.at(tmin >= 0 ? tmin : tmax, target);\\n  }\\n  intersectsBox(box) {\\n    return this.intersectBox(box, _vector6) !== null;\\n  }\\n  intersectTriangle(a, b, c, backfaceCulling, target) {\\n    _edge1.subVectors(b, a);\\n    _edge2.subVectors(c, a);\\n    _normal.crossVectors(_edge1, _edge2);\\n    let DdN = this.direction.dot(_normal);\\n    let sign;\\n    if (DdN > 0) {\\n      if (backfaceCulling)\\n        return null;\\n      sign = 1;\\n    } else if (DdN < 0) {\\n      sign = -1;\\n      DdN = -DdN;\\n    } else {\\n      return null;\\n    }\\n    _diff.subVectors(this.origin, a);\\n    const DdQxE2 = sign * this.direction.dot(_edge2.crossVectors(_diff, _edge2));\\n    if (DdQxE2 < 0) {\\n      return null;\\n    }\\n    const DdE1xQ = sign * this.direction.dot(_edge1.cross(_diff));\\n    if (DdE1xQ < 0) {\\n      return null;\\n    }\\n    if (DdQxE2 + DdE1xQ > DdN) {\\n      return null;\\n    }\\n    const QdN = -sign * _diff.dot(_normal);\\n    if (QdN < 0) {\\n      return null;\\n    }\\n    return this.at(QdN / DdN, target);\\n  }\\n  applyMatrix4(matrix4) {\\n    this.origin.applyMatrix4(matrix4);\\n    this.direction.transformDirection(matrix4);\\n    return this;\\n  }\\n  equals(ray) {\\n    return ray.origin.equals(this.origin) && ray.direction.equals(this.direction);\\n  }\\n  clone() {\\n    return new this.constructor().copy(this);\\n  }\\n};\\n\\n// ../../../node_modules/three/src/math/Triangle.js\\nvar _v02 = /* @__PURE__ */ new Vector3();\\nvar _v15 = /* @__PURE__ */ new Vector3();\\nvar _v22 = /* @__PURE__ */ new Vector3();\\nvar _v3 = /* @__PURE__ */ new Vector3();\\nvar _vab = /* @__PURE__ */ new Vector3();\\nvar _vac = /* @__PURE__ */ new Vector3();\\nvar _vbc = /* @__PURE__ */ new Vector3();\\nvar _vap = /* @__PURE__ */ new Vector3();\\nvar _vbp = /* @__PURE__ */ new Vector3();\\nvar _vcp = /* @__PURE__ */ new Vector3();\\nvar Triangle = class {\\n  constructor(a = new Vector3(), b = new Vector3(), c = new Vector3()) {\\n    this.a = a;\\n    this.b = b;\\n    this.c = c;\\n  }\\n  static getNormal(a, b, c, target) {\\n    target.subVectors(c, b);\\n    _v02.subVectors(a, b);\\n    target.cross(_v02);\\n    const targetLengthSq = target.lengthSq();\\n    if (targetLengthSq > 0) {\\n      return target.multiplyScalar(1 / Math.sqrt(targetLengthSq));\\n    }\\n    return target.set(0, 0, 0);\\n  }\\n  static getBarycoord(point, a, b, c, target) {\\n    _v02.subVectors(c, a);\\n    _v15.subVectors(b, a);\\n    _v22.subVectors(point, a);\\n    const dot00 = _v02.dot(_v02);\\n    const dot01 = _v02.dot(_v15);\\n    const dot02 = _v02.dot(_v22);\\n    const dot11 = _v15.dot(_v15);\\n    const dot12 = _v15.dot(_v22);\\n    const denom = dot00 * dot11 - dot01 * dot01;\\n    if (denom === 0) {\\n      return target.set(-2, -1, -1);\\n    }\\n    const invDenom = 1 / denom;\\n    const u = (dot11 * dot02 - dot01 * dot12) * invDenom;\\n    const v = (dot00 * dot12 - dot01 * dot02) * invDenom;\\n    return target.set(1 - u - v, v, u);\\n  }\\n  static containsPoint(point, a, b, c) {\\n    this.getBarycoord(point, a, b, c, _v3);\\n    return _v3.x >= 0 && _v3.y >= 0 && _v3.x + _v3.y <= 1;\\n  }\\n  static getUV(point, p1, p2, p3, uv1, uv2, uv3, target) {\\n    this.getBarycoord(point, p1, p2, p3, _v3);\\n    target.set(0, 0);\\n    target.addScaledVector(uv1, _v3.x);\\n    target.addScaledVector(uv2, _v3.y);\\n    target.addScaledVector(uv3, _v3.z);\\n    return target;\\n  }\\n  static isFrontFacing(a, b, c, direction) {\\n    _v02.subVectors(c, b);\\n    _v15.subVectors(a, b);\\n    return _v02.cross(_v15).dot(direction) < 0 ? true : false;\\n  }\\n  set(a, b, c) {\\n    this.a.copy(a);\\n    this.b.copy(b);\\n    this.c.copy(c);\\n    return this;\\n  }\\n  setFromPointsAndIndices(points2, i0, i1, i2) {\\n    this.a.copy(points2[i0]);\\n    this.b.copy(points2[i1]);\\n    this.c.copy(points2[i2]);\\n    return this;\\n  }\\n  setFromAttributeAndIndices(attribute, i0, i1, i2) {\\n    this.a.fromBufferAttribute(attribute, i0);\\n    this.b.fromBufferAttribute(attribute, i1);\\n    this.c.fromBufferAttribute(attribute, i2);\\n    return this;\\n  }\\n  clone() {\\n    return new this.constructor().copy(this);\\n  }\\n  copy(triangle) {\\n    this.a.copy(triangle.a);\\n    this.b.copy(triangle.b);\\n    this.c.copy(triangle.c);\\n    return this;\\n  }\\n  getArea() {\\n    _v02.subVectors(this.c, this.b);\\n    _v15.subVectors(this.a, this.b);\\n    return _v02.cross(_v15).length() * 0.5;\\n  }\\n  getMidpoint(target) {\\n    return target.addVectors(this.a, this.b).add(this.c).multiplyScalar(1 / 3);\\n  }\\n  getNormal(target) {\\n    return Triangle.getNormal(this.a, this.b, this.c, target);\\n  }\\n  getPlane(target) {\\n    return target.setFromCoplanarPoints(this.a, this.b, this.c);\\n  }\\n  getBarycoord(point, target) {\\n    return Triangle.getBarycoord(point, this.a, this.b, this.c, target);\\n  }\\n  getUV(point, uv1, uv2, uv3, target) {\\n    return Triangle.getUV(point, this.a, this.b, this.c, uv1, uv2, uv3, target);\\n  }\\n  containsPoint(point) {\\n    return Triangle.containsPoint(point, this.a, this.b, this.c);\\n  }\\n  isFrontFacing(direction) {\\n    return Triangle.isFrontFacing(this.a, this.b, this.c, direction);\\n  }\\n  intersectsBox(box) {\\n    return box.intersectsTriangle(this);\\n  }\\n  closestPointToPoint(p, target) {\\n    const a = this.a, b = this.b, c = this.c;\\n    let v, w;\\n    _vab.subVectors(b, a);\\n    _vac.subVectors(c, a);\\n    _vap.subVectors(p, a);\\n    const d1 = _vab.dot(_vap);\\n    const d2 = _vac.dot(_vap);\\n    if (d1 <= 0 && d2 <= 0) {\\n      return target.copy(a);\\n    }\\n    _vbp.subVectors(p, b);\\n    const d3 = _vab.dot(_vbp);\\n    const d4 = _vac.dot(_vbp);\\n    if (d3 >= 0 && d4 <= d3) {\\n      return target.copy(b);\\n    }\\n    const vc = d1 * d4 - d3 * d2;\\n    if (vc <= 0 && d1 >= 0 && d3 <= 0) {\\n      v = d1 / (d1 - d3);\\n      return target.copy(a).addScaledVector(_vab, v);\\n    }\\n    _vcp.subVectors(p, c);\\n    const d5 = _vab.dot(_vcp);\\n    const d6 = _vac.dot(_vcp);\\n    if (d6 >= 0 && d5 <= d6) {\\n      return target.copy(c);\\n    }\\n    const vb = d5 * d2 - d1 * d6;\\n    if (vb <= 0 && d2 >= 0 && d6 <= 0) {\\n      w = d2 / (d2 - d6);\\n      return target.copy(a).addScaledVector(_vac, w);\\n    }\\n    const va = d3 * d6 - d5 * d4;\\n    if (va <= 0 && d4 - d3 >= 0 && d5 - d6 >= 0) {\\n      _vbc.subVectors(c, b);\\n      w = (d4 - d3) / (d4 - d3 + (d5 - d6));\\n      return target.copy(b).addScaledVector(_vbc, w);\\n    }\\n    const denom = 1 / (va + vb + vc);\\n    v = vb * denom;\\n    w = vc * denom;\\n    return target.copy(a).addScaledVector(_vab, v).addScaledVector(_vac, w);\\n  }\\n  equals(triangle) {\\n    return triangle.a.equals(this.a) && triangle.b.equals(this.b) && triangle.c.equals(this.c);\\n  }\\n};\\n\\n// ../../../node_modules/three/src/materials/MeshBasicMaterial.js\\nvar MeshBasicMaterial = class extends Material {\\n  constructor(parameters) {\\n    super();\\n    this.type = \\\\\\\"MeshBasicMaterial\\\\\\\";\\n    this.color = new Color(16777215);\\n    this.map = null;\\n    this.lightMap = null;\\n    this.lightMapIntensity = 1;\\n    this.aoMap = null;\\n    this.aoMapIntensity = 1;\\n    this.specularMap = null;\\n    this.alphaMap = null;\\n    this.envMap = null;\\n    this.combine = MultiplyOperation;\\n    this.reflectivity = 1;\\n    this.refractionRatio = 0.98;\\n    this.wireframe = false;\\n    this.wireframeLinewidth = 1;\\n    this.wireframeLinecap = \\\\\\\"round\\\\\\\";\\n    this.wireframeLinejoin = \\\\\\\"round\\\\\\\";\\n    this.setValues(parameters);\\n  }\\n  copy(source) {\\n    super.copy(source);\\n    this.color.copy(source.color);\\n    this.map = source.map;\\n    this.lightMap = source.lightMap;\\n    this.lightMapIntensity = source.lightMapIntensity;\\n    this.aoMap = source.aoMap;\\n    this.aoMapIntensity = source.aoMapIntensity;\\n    this.specularMap = source.specularMap;\\n    this.alphaMap = source.alphaMap;\\n    this.envMap = source.envMap;\\n    this.combine = source.combine;\\n    this.reflectivity = source.reflectivity;\\n    this.refractionRatio = source.refractionRatio;\\n    this.wireframe = source.wireframe;\\n    this.wireframeLinewidth = source.wireframeLinewidth;\\n    this.wireframeLinecap = source.wireframeLinecap;\\n    this.wireframeLinejoin = source.wireframeLinejoin;\\n    return this;\\n  }\\n};\\nMeshBasicMaterial.prototype.isMeshBasicMaterial = true;\\n\\n// ../../../node_modules/three/src/objects/Mesh.js\\nvar _inverseMatrix = /* @__PURE__ */ new Matrix4();\\nvar _ray = /* @__PURE__ */ new Ray();\\nvar _sphere2 = /* @__PURE__ */ new Sphere();\\nvar _vA = /* @__PURE__ */ new Vector3();\\nvar _vB = /* @__PURE__ */ new Vector3();\\nvar _vC = /* @__PURE__ */ new Vector3();\\nvar _tempA = /* @__PURE__ */ new Vector3();\\nvar _tempB = /* @__PURE__ */ new Vector3();\\nvar _tempC = /* @__PURE__ */ new Vector3();\\nvar _morphA = /* @__PURE__ */ new Vector3();\\nvar _morphB = /* @__PURE__ */ new Vector3();\\nvar _morphC = /* @__PURE__ */ new Vector3();\\nvar _uvA = /* @__PURE__ */ new Vector2();\\nvar _uvB = /* @__PURE__ */ new Vector2();\\nvar _uvC = /* @__PURE__ */ new Vector2();\\nvar _intersectionPoint = /* @__PURE__ */ new Vector3();\\nvar _intersectionPointWorld = /* @__PURE__ */ new Vector3();\\nvar Mesh = class extends Object3D {\\n  constructor(geometry = new BufferGeometry(), material = new MeshBasicMaterial()) {\\n    super();\\n    this.type = \\\\\\\"Mesh\\\\\\\";\\n    this.geometry = geometry;\\n    this.material = material;\\n    this.updateMorphTargets();\\n  }\\n  copy(source) {\\n    super.copy(source);\\n    if (source.morphTargetInfluences !== void 0) {\\n      this.morphTargetInfluences = source.morphTargetInfluences.slice();\\n    }\\n    if (source.morphTargetDictionary !== void 0) {\\n      this.morphTargetDictionary = Object.assign({}, source.morphTargetDictionary);\\n    }\\n    this.material = source.material;\\n    this.geometry = source.geometry;\\n    return this;\\n  }\\n  updateMorphTargets() {\\n    const geometry = this.geometry;\\n    if (geometry.isBufferGeometry) {\\n      const morphAttributes = geometry.morphAttributes;\\n      const keys = Object.keys(morphAttributes);\\n      if (keys.length > 0) {\\n        const morphAttribute = morphAttributes[keys[0]];\\n        if (morphAttribute !== void 0) {\\n          this.morphTargetInfluences = [];\\n          this.morphTargetDictionary = {};\\n          for (let m = 0, ml = morphAttribute.length; m < ml; m++) {\\n            const name = morphAttribute[m].name || String(m);\\n            this.morphTargetInfluences.push(0);\\n            this.morphTargetDictionary[name] = m;\\n          }\\n        }\\n      }\\n    } else {\\n      const morphTargets = geometry.morphTargets;\\n      if (morphTargets !== void 0 && morphTargets.length > 0) {\\n        console.error(\\\\\\\"THREE.Mesh.updateMorphTargets() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.\\\\\\\");\\n      }\\n    }\\n  }\\n  raycast(raycaster, intersects) {\\n    const geometry = this.geometry;\\n    const material = this.material;\\n    const matrixWorld = this.matrixWorld;\\n    if (material === void 0)\\n      return;\\n    if (geometry.boundingSphere === null)\\n      geometry.computeBoundingSphere();\\n    _sphere2.copy(geometry.boundingSphere);\\n    _sphere2.applyMatrix4(matrixWorld);\\n    if (raycaster.ray.intersectsSphere(_sphere2) === false)\\n      return;\\n    _inverseMatrix.copy(matrixWorld).invert();\\n    _ray.copy(raycaster.ray).applyMatrix4(_inverseMatrix);\\n    if (geometry.boundingBox !== null) {\\n      if (_ray.intersectsBox(geometry.boundingBox) === false)\\n        return;\\n    }\\n    let intersection;\\n    if (geometry.isBufferGeometry) {\\n      const index = geometry.index;\\n      const position = geometry.attributes.position;\\n      const morphPosition = geometry.morphAttributes.position;\\n      const morphTargetsRelative = geometry.morphTargetsRelative;\\n      const uv = geometry.attributes.uv;\\n      const uv2 = geometry.attributes.uv2;\\n      const groups = geometry.groups;\\n      const drawRange = geometry.drawRange;\\n      if (index !== null) {\\n        if (Array.isArray(material)) {\\n          for (let i = 0, il = groups.length; i < il; i++) {\\n            const group = groups[i];\\n            const groupMaterial = material[group.materialIndex];\\n            const start = Math.max(group.start, drawRange.start);\\n            const end = Math.min(index.count, Math.min(group.start + group.count, drawRange.start + drawRange.count));\\n            for (let j = start, jl = end; j < jl; j += 3) {\\n              const a = index.getX(j);\\n              const b = index.getX(j + 1);\\n              const c = index.getX(j + 2);\\n              intersection = checkBufferGeometryIntersection(this, groupMaterial, raycaster, _ray, position, morphPosition, morphTargetsRelative, uv, uv2, a, b, c);\\n              if (intersection) {\\n                intersection.faceIndex = Math.floor(j / 3);\\n                intersection.face.materialIndex = group.materialIndex;\\n                intersects.push(intersection);\\n              }\\n            }\\n          }\\n        } else {\\n          const start = Math.max(0, drawRange.start);\\n          const end = Math.min(index.count, drawRange.start + drawRange.count);\\n          for (let i = start, il = end; i < il; i += 3) {\\n            const a = index.getX(i);\\n            const b = index.getX(i + 1);\\n            const c = index.getX(i + 2);\\n            intersection = checkBufferGeometryIntersection(this, material, raycaster, _ray, position, morphPosition, morphTargetsRelative, uv, uv2, a, b, c);\\n            if (intersection) {\\n              intersection.faceIndex = Math.floor(i / 3);\\n              intersects.push(intersection);\\n            }\\n          }\\n        }\\n      } else if (position !== void 0) {\\n        if (Array.isArray(material)) {\\n          for (let i = 0, il = groups.length; i < il; i++) {\\n            const group = groups[i];\\n            const groupMaterial = material[group.materialIndex];\\n            const start = Math.max(group.start, drawRange.start);\\n            const end = Math.min(position.count, Math.min(group.start + group.count, drawRange.start + drawRange.count));\\n            for (let j = start, jl = end; j < jl; j += 3) {\\n              const a = j;\\n              const b = j + 1;\\n              const c = j + 2;\\n              intersection = checkBufferGeometryIntersection(this, groupMaterial, raycaster, _ray, position, morphPosition, morphTargetsRelative, uv, uv2, a, b, c);\\n              if (intersection) {\\n                intersection.faceIndex = Math.floor(j / 3);\\n                intersection.face.materialIndex = group.materialIndex;\\n                intersects.push(intersection);\\n              }\\n            }\\n          }\\n        } else {\\n          const start = Math.max(0, drawRange.start);\\n          const end = Math.min(position.count, drawRange.start + drawRange.count);\\n          for (let i = start, il = end; i < il; i += 3) {\\n            const a = i;\\n            const b = i + 1;\\n            const c = i + 2;\\n            intersection = checkBufferGeometryIntersection(this, material, raycaster, _ray, position, morphPosition, morphTargetsRelative, uv, uv2, a, b, c);\\n            if (intersection) {\\n              intersection.faceIndex = Math.floor(i / 3);\\n              intersects.push(intersection);\\n            }\\n          }\\n        }\\n      }\\n    } else if (geometry.isGeometry) {\\n      console.error(\\\\\\\"THREE.Mesh.raycast() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.\\\\\\\");\\n    }\\n  }\\n};\\nMesh.prototype.isMesh = true;\\nfunction checkIntersection(object, material, raycaster, ray, pA, pB, pC, point) {\\n  let intersect;\\n  if (material.side === BackSide) {\\n    intersect = ray.intersectTriangle(pC, pB, pA, true, point);\\n  } else {\\n    intersect = ray.intersectTriangle(pA, pB, pC, material.side !== DoubleSide, point);\\n  }\\n  if (intersect === null)\\n    return null;\\n  _intersectionPointWorld.copy(point);\\n  _intersectionPointWorld.applyMatrix4(object.matrixWorld);\\n  const distance = raycaster.ray.origin.distanceTo(_intersectionPointWorld);\\n  if (distance < raycaster.near || distance > raycaster.far)\\n    return null;\\n  return {\\n    distance,\\n    point: _intersectionPointWorld.clone(),\\n    object\\n  };\\n}\\nfunction checkBufferGeometryIntersection(object, material, raycaster, ray, position, morphPosition, morphTargetsRelative, uv, uv2, a, b, c) {\\n  _vA.fromBufferAttribute(position, a);\\n  _vB.fromBufferAttribute(position, b);\\n  _vC.fromBufferAttribute(position, c);\\n  const morphInfluences = object.morphTargetInfluences;\\n  if (morphPosition && morphInfluences) {\\n    _morphA.set(0, 0, 0);\\n    _morphB.set(0, 0, 0);\\n    _morphC.set(0, 0, 0);\\n    for (let i = 0, il = morphPosition.length; i < il; i++) {\\n      const influence = morphInfluences[i];\\n      const morphAttribute = morphPosition[i];\\n      if (influence === 0)\\n        continue;\\n      _tempA.fromBufferAttribute(morphAttribute, a);\\n      _tempB.fromBufferAttribute(morphAttribute, b);\\n      _tempC.fromBufferAttribute(morphAttribute, c);\\n      if (morphTargetsRelative) {\\n        _morphA.addScaledVector(_tempA, influence);\\n        _morphB.addScaledVector(_tempB, influence);\\n        _morphC.addScaledVector(_tempC, influence);\\n      } else {\\n        _morphA.addScaledVector(_tempA.sub(_vA), influence);\\n        _morphB.addScaledVector(_tempB.sub(_vB), influence);\\n        _morphC.addScaledVector(_tempC.sub(_vC), influence);\\n      }\\n    }\\n    _vA.add(_morphA);\\n    _vB.add(_morphB);\\n    _vC.add(_morphC);\\n  }\\n  if (object.isSkinnedMesh) {\\n    object.boneTransform(a, _vA);\\n    object.boneTransform(b, _vB);\\n    object.boneTransform(c, _vC);\\n  }\\n  const intersection = checkIntersection(object, material, raycaster, ray, _vA, _vB, _vC, _intersectionPoint);\\n  if (intersection) {\\n    if (uv) {\\n      _uvA.fromBufferAttribute(uv, a);\\n      _uvB.fromBufferAttribute(uv, b);\\n      _uvC.fromBufferAttribute(uv, c);\\n      intersection.uv = Triangle.getUV(_intersectionPoint, _vA, _vB, _vC, _uvA, _uvB, _uvC, new Vector2());\\n    }\\n    if (uv2) {\\n      _uvA.fromBufferAttribute(uv2, a);\\n      _uvB.fromBufferAttribute(uv2, b);\\n      _uvC.fromBufferAttribute(uv2, c);\\n      intersection.uv2 = Triangle.getUV(_intersectionPoint, _vA, _vB, _vC, _uvA, _uvB, _uvC, new Vector2());\\n    }\\n    const face = {\\n      a,\\n      b,\\n      c,\\n      normal: new Vector3(),\\n      materialIndex: 0\\n    };\\n    Triangle.getNormal(_vA, _vB, _vC, face.normal);\\n    intersection.face = face;\\n  }\\n  return intersection;\\n}\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/alphamap_fragment.glsl.js\\nvar alphamap_fragment_glsl_default = `\\n#ifdef USE_ALPHAMAP\\n\\n\\tdiffuseColor.a *= texture2D( alphaMap, vUv ).g;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/alphamap_pars_fragment.glsl.js\\nvar alphamap_pars_fragment_glsl_default = `\\n#ifdef USE_ALPHAMAP\\n\\n\\tuniform sampler2D alphaMap;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/alphatest_fragment.glsl.js\\nvar alphatest_fragment_glsl_default = `\\n#ifdef USE_ALPHATEST\\n\\n\\tif ( diffuseColor.a < alphaTest ) discard;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/alphatest_pars_fragment.glsl.js\\nvar alphatest_pars_fragment_glsl_default = `\\n#ifdef USE_ALPHATEST\\n\\tuniform float alphaTest;\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/aomap_fragment.glsl.js\\nvar aomap_fragment_glsl_default = `\\n#ifdef USE_AOMAP\\n\\n\\t// reads channel R, compatible with a combined OcclusionRoughnessMetallic (RGB) texture\\n\\tfloat ambientOcclusion = ( texture2D( aoMap, vUv2 ).r - 1.0 ) * aoMapIntensity + 1.0;\\n\\n\\treflectedLight.indirectDiffuse *= ambientOcclusion;\\n\\n\\t#if defined( USE_ENVMAP ) && defined( STANDARD )\\n\\n\\t\\tfloat dotNV = saturate( dot( geometry.normal, geometry.viewDir ) );\\n\\n\\t\\treflectedLight.indirectSpecular *= computeSpecularOcclusion( dotNV, ambientOcclusion, material.roughness );\\n\\n\\t#endif\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/aomap_pars_fragment.glsl.js\\nvar aomap_pars_fragment_glsl_default = `\\n#ifdef USE_AOMAP\\n\\n\\tuniform sampler2D aoMap;\\n\\tuniform float aoMapIntensity;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/begin_vertex.glsl.js\\nvar begin_vertex_glsl_default = `\\nvec3 transformed = vec3( position );\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/beginnormal_vertex.glsl.js\\nvar beginnormal_vertex_glsl_default = `\\nvec3 objectNormal = vec3( normal );\\n\\n#ifdef USE_TANGENT\\n\\n\\tvec3 objectTangent = vec3( tangent.xyz );\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/bsdfs.glsl.js\\nvar bsdfs_glsl_default = `\\n\\nvec3 BRDF_Lambert( const in vec3 diffuseColor ) {\\n\\n\\treturn RECIPROCAL_PI * diffuseColor;\\n\\n} // validated\\n\\nvec3 F_Schlick( const in vec3 f0, const in float f90, const in float dotVH ) {\\n\\n\\t// Original approximation by Christophe Schlick '94\\n\\t// float fresnel = pow( 1.0 - dotVH, 5.0 );\\n\\n\\t// Optimized variant (presented by Epic at SIGGRAPH '13)\\n\\t// https://cdn2.unrealengine.com/Resources/files/2013SiggraphPresentationsNotes-26915738.pdf\\n\\tfloat fresnel = exp2( ( - 5.55473 * dotVH - 6.98316 ) * dotVH );\\n\\n\\treturn f0 * ( 1.0 - fresnel ) + ( f90 * fresnel );\\n\\n} // validated\\n\\n// Moving Frostbite to Physically Based Rendering 3.0 - page 12, listing 2\\n// https://seblagarde.files.wordpress.com/2015/07/course_notes_moving_frostbite_to_pbr_v32.pdf\\nfloat V_GGX_SmithCorrelated( const in float alpha, const in float dotNL, const in float dotNV ) {\\n\\n\\tfloat a2 = pow2( alpha );\\n\\n\\tfloat gv = dotNL * sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNV ) );\\n\\tfloat gl = dotNV * sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNL ) );\\n\\n\\treturn 0.5 / max( gv + gl, EPSILON );\\n\\n}\\n\\n// Microfacet Models for Refraction through Rough Surfaces - equation (33)\\n// http://graphicrants.blogspot.com/2013/08/specular-brdf-reference.html\\n// alpha is \\\\\\\"roughness squared\\\\\\\" in Disney\\\\u2019s reparameterization\\nfloat D_GGX( const in float alpha, const in float dotNH ) {\\n\\n\\tfloat a2 = pow2( alpha );\\n\\n\\tfloat denom = pow2( dotNH ) * ( a2 - 1.0 ) + 1.0; // avoid alpha = 0 with dotNH = 1\\n\\n\\treturn RECIPROCAL_PI * a2 / pow2( denom );\\n\\n}\\n\\n// GGX Distribution, Schlick Fresnel, GGX_SmithCorrelated Visibility\\nvec3 BRDF_GGX( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, const in vec3 f0, const in float f90, const in float roughness ) {\\n\\n\\tfloat alpha = pow2( roughness ); // UE4's roughness\\n\\n\\tvec3 halfDir = normalize( lightDir + viewDir );\\n\\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\\n\\tvec3 F = F_Schlick( f0, f90, dotVH );\\n\\n\\tfloat V = V_GGX_SmithCorrelated( alpha, dotNL, dotNV );\\n\\n\\tfloat D = D_GGX( alpha, dotNH );\\n\\n\\treturn F * ( V * D );\\n\\n}\\n\\n// Rect Area Light\\n\\n// Real-Time Polygonal-Light Shading with Linearly Transformed Cosines\\n// by Eric Heitz, Jonathan Dupuy, Stephen Hill and David Neubelt\\n// code: https://github.com/selfshadow/ltc_code/\\n\\nvec2 LTC_Uv( const in vec3 N, const in vec3 V, const in float roughness ) {\\n\\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\\n\\tfloat dotNV = saturate( dot( N, V ) );\\n\\n\\t// texture parameterized by sqrt( GGX alpha ) and sqrt( 1 - cos( theta ) )\\n\\tvec2 uv = vec2( roughness, sqrt( 1.0 - dotNV ) );\\n\\n\\tuv = uv * LUT_SCALE + LUT_BIAS;\\n\\n\\treturn uv;\\n\\n}\\n\\nfloat LTC_ClippedSphereFormFactor( const in vec3 f ) {\\n\\n\\t// Real-Time Area Lighting: a Journey from Research to Production (p.102)\\n\\t// An approximation of the form factor of a horizon-clipped rectangle.\\n\\n\\tfloat l = length( f );\\n\\n\\treturn max( ( l * l + f.z ) / ( l + 1.0 ), 0.0 );\\n\\n}\\n\\nvec3 LTC_EdgeVectorFormFactor( const in vec3 v1, const in vec3 v2 ) {\\n\\n\\tfloat x = dot( v1, v2 );\\n\\n\\tfloat y = abs( x );\\n\\n\\t// rational polynomial approximation to theta / sin( theta ) / 2PI\\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\\n\\tfloat theta_sintheta = ( x > 0.0 ) ? v : 0.5 * inversesqrt( max( 1.0 - x * x, 1e-7 ) ) - v;\\n\\n\\treturn cross( v1, v2 ) * theta_sintheta;\\n\\n}\\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\\n\\t// bail if point is on back side of plane of light\\n\\t// assumes ccw winding order of light vertices\\n\\tvec3 v1 = rectCoords[ 1 ] - rectCoords[ 0 ];\\n\\tvec3 v2 = rectCoords[ 3 ] - rectCoords[ 0 ];\\n\\tvec3 lightNormal = cross( v1, v2 );\\n\\n\\tif( dot( lightNormal, P - rectCoords[ 0 ] ) < 0.0 ) return vec3( 0.0 );\\n\\n\\t// construct orthonormal basis around N\\n\\tvec3 T1, T2;\\n\\tT1 = normalize( V - N * dot( V, N ) );\\n\\tT2 = - cross( N, T1 ); // negated from paper; possibly due to a different handedness of world coordinate system\\n\\n\\t// compute transform\\n\\tmat3 mat = mInv * transposeMat3( mat3( T1, T2, N ) );\\n\\n\\t// transform rect\\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\\n\\t// project rect onto sphere\\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\\n\\t// calculate vector form factor\\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\\n\\t// adjust for horizon clipping\\n\\tfloat result = LTC_ClippedSphereFormFactor( vectorFormFactor );\\n\\n/*\\n\\t// alternate method of adjusting for horizon clipping (see referece)\\n\\t// refactoring required\\n\\tfloat len = length( vectorFormFactor );\\n\\tfloat z = vectorFormFactor.z / len;\\n\\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\\n\\t// tabulated horizon-clipped sphere, apparently...\\n\\tvec2 uv = vec2( z * 0.5 + 0.5, len );\\n\\tuv = uv * LUT_SCALE + LUT_BIAS;\\n\\n\\tfloat scale = texture2D( ltc_2, uv ).w;\\n\\n\\tfloat result = len * scale;\\n*/\\n\\n\\treturn vec3( result );\\n\\n}\\n\\n// End Rect Area Light\\n\\n\\nfloat G_BlinnPhong_Implicit( /* const in float dotNL, const in float dotNV */ ) {\\n\\n\\t// geometry term is (n dot l)(n dot v) / 4(n dot l)(n dot v)\\n\\treturn 0.25;\\n\\n}\\n\\nfloat D_BlinnPhong( const in float shininess, const in float dotNH ) {\\n\\n\\treturn RECIPROCAL_PI * ( shininess * 0.5 + 1.0 ) * pow( dotNH, shininess );\\n\\n}\\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\\n\\tvec3 halfDir = normalize( lightDir + viewDir );\\n\\n\\tfloat dotNH = saturate( dot( normal, halfDir ) );\\n\\tfloat dotVH = saturate( dot( viewDir, halfDir ) );\\n\\n\\tvec3 F = F_Schlick( specularColor, 1.0, dotVH );\\n\\n\\tfloat G = G_BlinnPhong_Implicit( /* dotNL, dotNV */ );\\n\\n\\tfloat D = D_BlinnPhong( shininess, dotNH );\\n\\n\\treturn F * ( G * D );\\n\\n} // validated\\n\\n#if defined( USE_SHEEN )\\n\\n// https://github.com/google/filament/blob/master/shaders/src/brdf.fs\\nfloat D_Charlie( float roughness, float dotNH ) {\\n\\n\\tfloat alpha = pow2( roughness );\\n\\n\\t// Estevez and Kulla 2017, \\\\\\\"Production Friendly Microfacet Sheen BRDF\\\\\\\"\\n\\tfloat invAlpha = 1.0 / alpha;\\n\\tfloat cos2h = dotNH * dotNH;\\n\\tfloat sin2h = max( 1.0 - cos2h, 0.0078125 ); // 2^(-14/2), so sin2h^2 > 0 in fp16\\n\\n\\treturn ( 2.0 + invAlpha ) * pow( sin2h, invAlpha * 0.5 ) / ( 2.0 * PI );\\n\\n}\\n\\n// https://github.com/google/filament/blob/master/shaders/src/brdf.fs\\nfloat V_Neubelt( float dotNV, float dotNL ) {\\n\\n\\t// Neubelt and Pettineo 2013, \\\\\\\"Crafting a Next-gen Material Pipeline for The Order: 1886\\\\\\\"\\n\\treturn saturate( 1.0 / ( 4.0 * ( dotNL + dotNV - dotNL * dotNV ) ) );\\n\\n}\\n\\nvec3 BRDF_Sheen( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, vec3 sheenTint, const in float sheenRoughness ) {\\n\\n\\tvec3 halfDir = normalize( lightDir + viewDir );\\n\\n\\tfloat dotNL = saturate( dot( normal, lightDir ) );\\n\\tfloat dotNV = saturate( dot( normal, viewDir ) );\\n\\tfloat dotNH = saturate( dot( normal, halfDir ) );\\n\\n\\tfloat D = D_Charlie( sheenRoughness, dotNH );\\n\\tfloat V = V_Neubelt( dotNV, dotNL );\\n\\n\\treturn sheenTint * ( D * V );\\n\\n}\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/bumpmap_pars_fragment.glsl.js\\nvar bumpmap_pars_fragment_glsl_default = `\\n#ifdef USE_BUMPMAP\\n\\n\\tuniform sampler2D bumpMap;\\n\\tuniform float bumpScale;\\n\\n\\t// Bump Mapping Unparametrized Surfaces on the GPU by Morten S. Mikkelsen\\n\\t// http://api.unrealengine.com/attachments/Engine/Rendering/LightingAndShadows/BumpMappingWithoutTangentSpace/mm_sfgrad_bump.pdf\\n\\n\\t// Evaluate the derivative of the height w.r.t. screen-space using forward differencing (listing 2)\\n\\n\\tvec2 dHdxy_fwd() {\\n\\n\\t\\tvec2 dSTdx = dFdx( vUv );\\n\\t\\tvec2 dSTdy = dFdy( vUv );\\n\\n\\t\\tfloat Hll = bumpScale * texture2D( bumpMap, vUv ).x;\\n\\t\\tfloat dBx = bumpScale * texture2D( bumpMap, vUv + dSTdx ).x - Hll;\\n\\t\\tfloat dBy = bumpScale * texture2D( bumpMap, vUv + dSTdy ).x - Hll;\\n\\n\\t\\treturn vec2( dBx, dBy );\\n\\n\\t}\\n\\n\\tvec3 perturbNormalArb( vec3 surf_pos, vec3 surf_norm, vec2 dHdxy, float faceDirection ) {\\n\\n\\t\\t// Workaround for Adreno 3XX dFd*( vec3 ) bug. See #9988\\n\\n\\t\\tvec3 vSigmaX = vec3( dFdx( surf_pos.x ), dFdx( surf_pos.y ), dFdx( surf_pos.z ) );\\n\\t\\tvec3 vSigmaY = vec3( dFdy( surf_pos.x ), dFdy( surf_pos.y ), dFdy( surf_pos.z ) );\\n\\t\\tvec3 vN = surf_norm;\\t\\t// normalized\\n\\n\\t\\tvec3 R1 = cross( vSigmaY, vN );\\n\\t\\tvec3 R2 = cross( vN, vSigmaX );\\n\\n\\t\\tfloat fDet = dot( vSigmaX, R1 ) * faceDirection;\\n\\n\\t\\tvec3 vGrad = sign( fDet ) * ( dHdxy.x * R1 + dHdxy.y * R2 );\\n\\t\\treturn normalize( abs( fDet ) * surf_norm - vGrad );\\n\\n\\t}\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/clipping_planes_fragment.glsl.js\\nvar clipping_planes_fragment_glsl_default = `\\n#if NUM_CLIPPING_PLANES > 0\\n\\n\\tvec4 plane;\\n\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < UNION_CLIPPING_PLANES; i ++ ) {\\n\\n\\t\\tplane = clippingPlanes[ i ];\\n\\t\\tif ( dot( vClipPosition, plane.xyz ) > plane.w ) discard;\\n\\n\\t}\\n\\t#pragma unroll_loop_end\\n\\n\\t#if UNION_CLIPPING_PLANES < NUM_CLIPPING_PLANES\\n\\n\\t\\tbool clipped = true;\\n\\n\\t\\t#pragma unroll_loop_start\\n\\t\\tfor ( int i = UNION_CLIPPING_PLANES; i < NUM_CLIPPING_PLANES; i ++ ) {\\n\\n\\t\\t\\tplane = clippingPlanes[ i ];\\n\\t\\t\\tclipped = ( dot( vClipPosition, plane.xyz ) > plane.w ) && clipped;\\n\\n\\t\\t}\\n\\t\\t#pragma unroll_loop_end\\n\\n\\t\\tif ( clipped ) discard;\\n\\n\\t#endif\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/clipping_planes_pars_fragment.glsl.js\\nvar clipping_planes_pars_fragment_glsl_default = `\\n#if NUM_CLIPPING_PLANES > 0\\n\\n\\tvarying vec3 vClipPosition;\\n\\n\\tuniform vec4 clippingPlanes[ NUM_CLIPPING_PLANES ];\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/clipping_planes_pars_vertex.glsl.js\\nvar clipping_planes_pars_vertex_glsl_default = `\\n#if NUM_CLIPPING_PLANES > 0\\n\\n\\tvarying vec3 vClipPosition;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/clipping_planes_vertex.glsl.js\\nvar clipping_planes_vertex_glsl_default = `\\n#if NUM_CLIPPING_PLANES > 0\\n\\n\\tvClipPosition = - mvPosition.xyz;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/color_fragment.glsl.js\\nvar color_fragment_glsl_default = `\\n#if defined( USE_COLOR_ALPHA )\\n\\n\\tdiffuseColor *= vColor;\\n\\n#elif defined( USE_COLOR )\\n\\n\\tdiffuseColor.rgb *= vColor;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/color_pars_fragment.glsl.js\\nvar color_pars_fragment_glsl_default = `\\n#if defined( USE_COLOR_ALPHA )\\n\\n\\tvarying vec4 vColor;\\n\\n#elif defined( USE_COLOR )\\n\\n\\tvarying vec3 vColor;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/color_pars_vertex.glsl.js\\nvar color_pars_vertex_glsl_default = `\\n#if defined( USE_COLOR_ALPHA )\\n\\n\\tvarying vec4 vColor;\\n\\n#elif defined( USE_COLOR ) || defined( USE_INSTANCING_COLOR )\\n\\n\\tvarying vec3 vColor;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/color_vertex.glsl.js\\nvar color_vertex_glsl_default = `\\n#if defined( USE_COLOR_ALPHA )\\n\\n\\tvColor = vec4( 1.0 );\\n\\n#elif defined( USE_COLOR ) || defined( USE_INSTANCING_COLOR )\\n\\n\\tvColor = vec3( 1.0 );\\n\\n#endif\\n\\n#ifdef USE_COLOR\\n\\n\\tvColor *= color;\\n\\n#endif\\n\\n#ifdef USE_INSTANCING_COLOR\\n\\n\\tvColor.xyz *= instanceColor.xyz;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/common.glsl.js\\nvar common_glsl_default = `\\n#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\\n#ifndef saturate\\n// <tonemapping_pars_fragment> may have defined saturate() already\\n#define saturate( a ) clamp( a, 0.0, 1.0 )\\n#endif\\n#define whiteComplement( a ) ( 1.0 - saturate( a ) )\\n\\nfloat pow2( const in float 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 color ) { return dot( color, vec3( 0.3333 ) ); }\\n\\n// expects values in the range of [0,1]x[0,1], returns values in the [0,1] range.\\n// do not collapse into a single function per: http://byteblacksmith.com/improvements-to-the-canonical-one-liner-glsl-rand-for-opengl-es-2-0/\\nhighp float rand( const in vec2 uv ) {\\n\\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\\n\\treturn fract( sin( sn ) * c );\\n\\n}\\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\\n\\nstruct IncidentLight {\\n\\tvec3 color;\\n\\tvec3 direction;\\n\\tbool visible;\\n};\\n\\nstruct ReflectedLight {\\n\\tvec3 directDiffuse;\\n\\tvec3 directSpecular;\\n\\tvec3 indirectDiffuse;\\n\\tvec3 indirectSpecular;\\n};\\n\\nstruct GeometricContext {\\n\\tvec3 position;\\n\\tvec3 normal;\\n\\tvec3 viewDir;\\n#ifdef USE_CLEARCOAT\\n\\tvec3 clearcoatNormal;\\n#endif\\n};\\n\\nvec3 transformDirection( in vec3 dir, in mat4 matrix ) {\\n\\n\\treturn normalize( ( matrix * vec4( dir, 0.0 ) ).xyz );\\n\\n}\\n\\nvec3 inverseTransformDirection( in vec3 dir, in mat4 matrix ) {\\n\\n\\t// dir can be either a direction vector or a normal vector\\n\\t// upper-left 3x3 of matrix is assumed to be orthogonal\\n\\n\\treturn normalize( ( vec4( dir, 0.0 ) * matrix ).xyz );\\n\\n}\\n\\nmat3 transposeMat3( const in mat3 m ) {\\n\\n\\tmat3 tmp;\\n\\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\\n\\treturn tmp;\\n\\n}\\n\\n// https://en.wikipedia.org/wiki/Relative_luminance\\nfloat linearToRelativeLuminance( const in vec3 color ) {\\n\\n\\tvec3 weights = vec3( 0.2126, 0.7152, 0.0722 );\\n\\n\\treturn dot( weights, color.rgb );\\n\\n}\\n\\nbool isPerspectiveMatrix( mat4 m ) {\\n\\n\\treturn m[ 2 ][ 3 ] == - 1.0;\\n\\n}\\n\\nvec2 equirectUv( in vec3 dir ) {\\n\\n\\t// dir is assumed to be unit length\\n\\n\\tfloat u = atan( dir.z, dir.x ) * RECIPROCAL_PI2 + 0.5;\\n\\n\\tfloat v = asin( clamp( dir.y, - 1.0, 1.0 ) ) * RECIPROCAL_PI + 0.5;\\n\\n\\treturn vec2( u, v );\\n\\n}\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/cube_uv_reflection_fragment.glsl.js\\nvar cube_uv_reflection_fragment_glsl_default = `\\n#ifdef ENVMAP_TYPE_CUBE_UV\\n\\n\\t#define cubeUV_maxMipLevel 8.0\\n\\t#define cubeUV_minMipLevel 4.0\\n\\t#define cubeUV_maxTileSize 256.0\\n\\t#define cubeUV_minTileSize 16.0\\n\\n\\t// These shader functions convert between the UV coordinates of a single face of\\n\\t// a cubemap, the 0-5 integer index of a cube face, and the direction vector for\\n\\t// sampling a textureCube (not generally normalized ).\\n\\n\\tfloat getFace( vec3 direction ) {\\n\\n\\t\\tvec3 absDirection = abs( direction );\\n\\n\\t\\tfloat face = - 1.0;\\n\\n\\t\\tif ( absDirection.x > absDirection.z ) {\\n\\n\\t\\t\\tif ( absDirection.x > absDirection.y )\\n\\n\\t\\t\\t\\tface = direction.x > 0.0 ? 0.0 : 3.0;\\n\\n\\t\\t\\telse\\n\\n\\t\\t\\t\\tface = direction.y > 0.0 ? 1.0 : 4.0;\\n\\n\\t\\t} else {\\n\\n\\t\\t\\tif ( absDirection.z > absDirection.y )\\n\\n\\t\\t\\t\\tface = direction.z > 0.0 ? 2.0 : 5.0;\\n\\n\\t\\t\\telse\\n\\n\\t\\t\\t\\tface = direction.y > 0.0 ? 1.0 : 4.0;\\n\\n\\t\\t}\\n\\n\\t\\treturn face;\\n\\n\\t}\\n\\n\\t// RH coordinate system; PMREM face-indexing convention\\n\\tvec2 getUV( vec3 direction, float face ) {\\n\\n\\t\\tvec2 uv;\\n\\n\\t\\tif ( face == 0.0 ) {\\n\\n\\t\\t\\tuv = vec2( direction.z, direction.y ) / abs( direction.x ); // pos x\\n\\n\\t\\t} else if ( face == 1.0 ) {\\n\\n\\t\\t\\tuv = vec2( - direction.x, - direction.z ) / abs( direction.y ); // pos y\\n\\n\\t\\t} else if ( face == 2.0 ) {\\n\\n\\t\\t\\tuv = vec2( - direction.x, direction.y ) / abs( direction.z ); // pos z\\n\\n\\t\\t} else if ( face == 3.0 ) {\\n\\n\\t\\t\\tuv = vec2( - direction.z, direction.y ) / abs( direction.x ); // neg x\\n\\n\\t\\t} else if ( face == 4.0 ) {\\n\\n\\t\\t\\tuv = vec2( - direction.x, direction.z ) / abs( direction.y ); // neg y\\n\\n\\t\\t} else {\\n\\n\\t\\t\\tuv = vec2( direction.x, direction.y ) / abs( direction.z ); // neg z\\n\\n\\t\\t}\\n\\n\\t\\treturn 0.5 * ( uv + 1.0 );\\n\\n\\t}\\n\\n\\tvec3 bilinearCubeUV( sampler2D envMap, vec3 direction, float mipInt ) {\\n\\n\\t\\tfloat face = getFace( direction );\\n\\n\\t\\tfloat filterInt = max( cubeUV_minMipLevel - mipInt, 0.0 );\\n\\n\\t\\tmipInt = max( mipInt, cubeUV_minMipLevel );\\n\\n\\t\\tfloat faceSize = exp2( mipInt );\\n\\n\\t\\tfloat texelSize = 1.0 / ( 3.0 * cubeUV_maxTileSize );\\n\\n\\t\\tvec2 uv = getUV( direction, face ) * ( faceSize - 1.0 );\\n\\n\\t\\tvec2 f = fract( uv );\\n\\n\\t\\tuv += 0.5 - f;\\n\\n\\t\\tif ( face > 2.0 ) {\\n\\n\\t\\t\\tuv.y += faceSize;\\n\\n\\t\\t\\tface -= 3.0;\\n\\n\\t\\t}\\n\\n\\t\\tuv.x += face * faceSize;\\n\\n\\t\\tif ( mipInt < cubeUV_maxMipLevel ) {\\n\\n\\t\\t\\tuv.y += 2.0 * cubeUV_maxTileSize;\\n\\n\\t\\t}\\n\\n\\t\\tuv.y += filterInt * 2.0 * cubeUV_minTileSize;\\n\\n\\t\\tuv.x += 3.0 * max( 0.0, cubeUV_maxTileSize - 2.0 * faceSize );\\n\\n\\t\\tuv *= texelSize;\\n\\n\\t\\tvec3 tl = envMapTexelToLinear( texture2D( envMap, uv ) ).rgb;\\n\\n\\t\\tuv.x += texelSize;\\n\\n\\t\\tvec3 tr = envMapTexelToLinear( texture2D( envMap, uv ) ).rgb;\\n\\n\\t\\tuv.y += texelSize;\\n\\n\\t\\tvec3 br = envMapTexelToLinear( texture2D( envMap, uv ) ).rgb;\\n\\n\\t\\tuv.x -= texelSize;\\n\\n\\t\\tvec3 bl = envMapTexelToLinear( texture2D( envMap, uv ) ).rgb;\\n\\n\\t\\tvec3 tm = mix( tl, tr, f.x );\\n\\n\\t\\tvec3 bm = mix( bl, br, f.x );\\n\\n\\t\\treturn mix( tm, bm, f.y );\\n\\n\\t}\\n\\n\\t// These defines must match with PMREMGenerator\\n\\n\\t#define r0 1.0\\n\\t#define v0 0.339\\n\\t#define m0 - 2.0\\n\\t#define r1 0.8\\n\\t#define v1 0.276\\n\\t#define m1 - 1.0\\n\\t#define r4 0.4\\n\\t#define v4 0.046\\n\\t#define m4 2.0\\n\\t#define r5 0.305\\n\\t#define v5 0.016\\n\\t#define m5 3.0\\n\\t#define r6 0.21\\n\\t#define v6 0.0038\\n\\t#define m6 4.0\\n\\n\\tfloat roughnessToMip( float roughness ) {\\n\\n\\t\\tfloat mip = 0.0;\\n\\n\\t\\tif ( roughness >= r1 ) {\\n\\n\\t\\t\\tmip = ( r0 - roughness ) * ( m1 - m0 ) / ( r0 - r1 ) + m0;\\n\\n\\t\\t} else if ( roughness >= r4 ) {\\n\\n\\t\\t\\tmip = ( r1 - roughness ) * ( m4 - m1 ) / ( r1 - r4 ) + m1;\\n\\n\\t\\t} else if ( roughness >= r5 ) {\\n\\n\\t\\t\\tmip = ( r4 - roughness ) * ( m5 - m4 ) / ( r4 - r5 ) + m4;\\n\\n\\t\\t} else if ( roughness >= r6 ) {\\n\\n\\t\\t\\tmip = ( r5 - roughness ) * ( m6 - m5 ) / ( r5 - r6 ) + m5;\\n\\n\\t\\t} else {\\n\\n\\t\\t\\tmip = - 2.0 * log2( 1.16 * roughness ); // 1.16 = 1.79^0.25\\n\\t\\t}\\n\\n\\t\\treturn mip;\\n\\n\\t}\\n\\n\\tvec4 textureCubeUV( sampler2D envMap, vec3 sampleDir, float roughness ) {\\n\\n\\t\\tfloat mip = clamp( roughnessToMip( roughness ), m0, cubeUV_maxMipLevel );\\n\\n\\t\\tfloat mipF = fract( mip );\\n\\n\\t\\tfloat mipInt = floor( mip );\\n\\n\\t\\tvec3 color0 = bilinearCubeUV( envMap, sampleDir, mipInt );\\n\\n\\t\\tif ( mipF == 0.0 ) {\\n\\n\\t\\t\\treturn vec4( color0, 1.0 );\\n\\n\\t\\t} else {\\n\\n\\t\\t\\tvec3 color1 = bilinearCubeUV( envMap, sampleDir, mipInt + 1.0 );\\n\\n\\t\\t\\treturn vec4( mix( color0, color1, mipF ), 1.0 );\\n\\n\\t\\t}\\n\\n\\t}\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/defaultnormal_vertex.glsl.js\\nvar defaultnormal_vertex_glsl_default = `\\nvec3 transformedNormal = objectNormal;\\n\\n#ifdef USE_INSTANCING\\n\\n\\t// this is in lieu of a per-instance normal-matrix\\n\\t// shear transforms in the instance matrix are not supported\\n\\n\\tmat3 m = mat3( instanceMatrix );\\n\\n\\ttransformedNormal /= vec3( dot( m[ 0 ], m[ 0 ] ), dot( m[ 1 ], m[ 1 ] ), dot( m[ 2 ], m[ 2 ] ) );\\n\\n\\ttransformedNormal = m * transformedNormal;\\n\\n#endif\\n\\ntransformedNormal = normalMatrix * transformedNormal;\\n\\n#ifdef FLIP_SIDED\\n\\n\\ttransformedNormal = - transformedNormal;\\n\\n#endif\\n\\n#ifdef USE_TANGENT\\n\\n\\tvec3 transformedTangent = ( modelViewMatrix * vec4( objectTangent, 0.0 ) ).xyz;\\n\\n\\t#ifdef FLIP_SIDED\\n\\n\\t\\ttransformedTangent = - transformedTangent;\\n\\n\\t#endif\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/displacementmap_pars_vertex.glsl.js\\nvar displacementmap_pars_vertex_glsl_default = `\\n#ifdef USE_DISPLACEMENTMAP\\n\\n\\tuniform sampler2D displacementMap;\\n\\tuniform float displacementScale;\\n\\tuniform float displacementBias;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/displacementmap_vertex.glsl.js\\nvar displacementmap_vertex_glsl_default = `\\n#ifdef USE_DISPLACEMENTMAP\\n\\n\\ttransformed += normalize( objectNormal ) * ( texture2D( displacementMap, vUv ).x * displacementScale + displacementBias );\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/emissivemap_fragment.glsl.js\\nvar emissivemap_fragment_glsl_default = `\\n#ifdef USE_EMISSIVEMAP\\n\\n\\tvec4 emissiveColor = texture2D( emissiveMap, vUv );\\n\\n\\temissiveColor.rgb = emissiveMapTexelToLinear( emissiveColor ).rgb;\\n\\n\\ttotalEmissiveRadiance *= emissiveColor.rgb;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/emissivemap_pars_fragment.glsl.js\\nvar emissivemap_pars_fragment_glsl_default = `\\n#ifdef USE_EMISSIVEMAP\\n\\n\\tuniform sampler2D emissiveMap;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/encodings_fragment.glsl.js\\nvar encodings_fragment_glsl_default = `\\ngl_FragColor = linearToOutputTexel( gl_FragColor );\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/encodings_pars_fragment.glsl.js\\nvar encodings_pars_fragment_glsl_default = `\\n// For a discussion of what this is, please read this: http://lousodrome.net/blog/light/2013/05/26/gamma-correct-and-hdr-rendering-in-a-32-bits-buffer/\\n\\nvec4 LinearToLinear( in vec4 value ) {\\n\\treturn value;\\n}\\n\\nvec4 GammaToLinear( in vec4 value, in float gammaFactor ) {\\n\\treturn vec4( pow( value.rgb, vec3( gammaFactor ) ), value.a );\\n}\\n\\nvec4 LinearToGamma( in vec4 value, in float gammaFactor ) {\\n\\treturn vec4( pow( value.rgb, vec3( 1.0 / gammaFactor ) ), value.a );\\n}\\n\\nvec4 sRGBToLinear( in vec4 value ) {\\n\\treturn vec4( mix( pow( value.rgb * 0.9478672986 + vec3( 0.0521327014 ), vec3( 2.4 ) ), value.rgb * 0.0773993808, vec3( lessThanEqual( value.rgb, vec3( 0.04045 ) ) ) ), value.a );\\n}\\n\\nvec4 LinearTosRGB( 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}\\n\\nvec4 RGBEToLinear( in vec4 value ) {\\n\\treturn vec4( value.rgb * exp2( value.a * 255.0 - 128.0 ), 1.0 );\\n}\\n\\nvec4 LinearToRGBE( in vec4 value ) {\\n\\tfloat maxComponent = max( max( value.r, value.g ), value.b );\\n\\tfloat fExp = clamp( ceil( log2( maxComponent ) ), -128.0, 127.0 );\\n\\treturn vec4( value.rgb / exp2( fExp ), ( fExp + 128.0 ) / 255.0 );\\n\\t// return vec4( value.brg, ( 3.0 + 128.0 ) / 256.0 );\\n}\\n\\n// reference: http://iwasbeingirony.blogspot.ca/2010/06/difference-between-rgbm-and-rgbd.html\\nvec4 RGBMToLinear( in vec4 value, in float maxRange ) {\\n\\treturn vec4( value.rgb * value.a * maxRange, 1.0 );\\n}\\n\\nvec4 LinearToRGBM( in vec4 value, in float maxRange ) {\\n\\tfloat maxRGB = max( value.r, max( value.g, value.b ) );\\n\\tfloat M = clamp( maxRGB / maxRange, 0.0, 1.0 );\\n\\tM = ceil( M * 255.0 ) / 255.0;\\n\\treturn vec4( value.rgb / ( M * maxRange ), M );\\n}\\n\\n// reference: http://iwasbeingirony.blogspot.ca/2010/06/difference-between-rgbm-and-rgbd.html\\nvec4 RGBDToLinear( in vec4 value, in float maxRange ) {\\n\\treturn vec4( value.rgb * ( ( maxRange / 255.0 ) / value.a ), 1.0 );\\n}\\n\\nvec4 LinearToRGBD( in vec4 value, in float maxRange ) {\\n\\tfloat maxRGB = max( value.r, max( value.g, value.b ) );\\n\\tfloat D = max( maxRange / maxRGB, 1.0 );\\n\\t// NOTE: The implementation with min causes the shader to not compile on\\n\\t// a common Alcatel A502DL in Chrome 78/Android 8.1. Some research suggests \\n\\t// that the chipset is Mediatek MT6739 w/ IMG PowerVR GE8100 GPU.\\n\\t// D = min( floor( D ) / 255.0, 1.0 );\\n\\tD = clamp( floor( D ) / 255.0, 0.0, 1.0 );\\n\\treturn vec4( value.rgb * ( D * ( 255.0 / maxRange ) ), D );\\n}\\n\\n// LogLuv reference: http://graphicrants.blogspot.ca/2009/04/rgbm-color-encoding.html\\n\\n// M matrix, for encoding\\nconst mat3 cLogLuvM = mat3( 0.2209, 0.3390, 0.4184, 0.1138, 0.6780, 0.7319, 0.0102, 0.1130, 0.2969 );\\nvec4 LinearToLogLuv( in vec4 value ) {\\n\\tvec3 Xp_Y_XYZp = cLogLuvM * value.rgb;\\n\\tXp_Y_XYZp = max( Xp_Y_XYZp, vec3( 1e-6, 1e-6, 1e-6 ) );\\n\\tvec4 vResult;\\n\\tvResult.xy = Xp_Y_XYZp.xy / Xp_Y_XYZp.z;\\n\\tfloat Le = 2.0 * log2(Xp_Y_XYZp.y) + 127.0;\\n\\tvResult.w = fract( Le );\\n\\tvResult.z = ( Le - ( floor( vResult.w * 255.0 ) ) / 255.0 ) / 255.0;\\n\\treturn vResult;\\n}\\n\\n// Inverse M matrix, for decoding\\nconst mat3 cLogLuvInverseM = mat3( 6.0014, -2.7008, -1.7996, -1.3320, 3.1029, -5.7721, 0.3008, -1.0882, 5.6268 );\\nvec4 LogLuvToLinear( in vec4 value ) {\\n\\tfloat Le = value.z * 255.0 + value.w;\\n\\tvec3 Xp_Y_XYZp;\\n\\tXp_Y_XYZp.y = exp2( ( Le - 127.0 ) / 2.0 );\\n\\tXp_Y_XYZp.z = Xp_Y_XYZp.y / value.y;\\n\\tXp_Y_XYZp.x = value.x * Xp_Y_XYZp.z;\\n\\tvec3 vRGB = cLogLuvInverseM * Xp_Y_XYZp.rgb;\\n\\treturn vec4( max( vRGB, 0.0 ), 1.0 );\\n}\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/envmap_fragment.glsl.js\\nvar envmap_fragment_glsl_default = `\\n#ifdef USE_ENVMAP\\n\\n\\t#ifdef ENV_WORLDPOS\\n\\n\\t\\tvec3 cameraToFrag;\\n\\n\\t\\tif ( isOrthographic ) {\\n\\n\\t\\t\\tcameraToFrag = normalize( vec3( - viewMatrix[ 0 ][ 2 ], - viewMatrix[ 1 ][ 2 ], - viewMatrix[ 2 ][ 2 ] ) );\\n\\n\\t\\t} else {\\n\\n\\t\\t\\tcameraToFrag = normalize( vWorldPosition - cameraPosition );\\n\\n\\t\\t}\\n\\n\\t\\t// Transforming Normal Vectors with the Inverse Transformation\\n\\t\\tvec3 worldNormal = inverseTransformDirection( normal, viewMatrix );\\n\\n\\t\\t#ifdef ENVMAP_MODE_REFLECTION\\n\\n\\t\\t\\tvec3 reflectVec = reflect( cameraToFrag, worldNormal );\\n\\n\\t\\t#else\\n\\n\\t\\t\\tvec3 reflectVec = refract( cameraToFrag, worldNormal, refractionRatio );\\n\\n\\t\\t#endif\\n\\n\\t#else\\n\\n\\t\\tvec3 reflectVec = vReflect;\\n\\n\\t#endif\\n\\n\\t#ifdef ENVMAP_TYPE_CUBE\\n\\n\\t\\tvec4 envColor = textureCube( envMap, vec3( flipEnvMap * reflectVec.x, reflectVec.yz ) );\\n\\n\\t\\tenvColor = envMapTexelToLinear( envColor );\\n\\n\\t#elif defined( ENVMAP_TYPE_CUBE_UV )\\n\\n\\t\\tvec4 envColor = textureCubeUV( envMap, reflectVec, 0.0 );\\n\\n\\t#else\\n\\n\\t\\tvec4 envColor = vec4( 0.0 );\\n\\n\\t#endif\\n\\n\\t#ifdef ENVMAP_BLENDING_MULTIPLY\\n\\n\\t\\toutgoingLight = mix( outgoingLight, outgoingLight * envColor.xyz, specularStrength * reflectivity );\\n\\n\\t#elif defined( ENVMAP_BLENDING_MIX )\\n\\n\\t\\toutgoingLight = mix( outgoingLight, envColor.xyz, specularStrength * reflectivity );\\n\\n\\t#elif defined( ENVMAP_BLENDING_ADD )\\n\\n\\t\\toutgoingLight += envColor.xyz * specularStrength * reflectivity;\\n\\n\\t#endif\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/envmap_common_pars_fragment.glsl.js\\nvar envmap_common_pars_fragment_glsl_default = `\\n#ifdef USE_ENVMAP\\n\\n\\tuniform float envMapIntensity;\\n\\tuniform float flipEnvMap;\\n\\tuniform int maxMipLevel;\\n\\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\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/envmap_pars_fragment.glsl.js\\nvar envmap_pars_fragment_glsl_default = `\\n#ifdef USE_ENVMAP\\n\\n\\tuniform float reflectivity;\\n\\n\\t#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG )\\n\\n\\t\\t#define ENV_WORLDPOS\\n\\n\\t#endif\\n\\n\\t#ifdef ENV_WORLDPOS\\n\\n\\t\\tvarying vec3 vWorldPosition;\\n\\t\\tuniform float refractionRatio;\\n\\t#else\\n\\t\\tvarying vec3 vReflect;\\n\\t#endif\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/envmap_pars_vertex.glsl.js\\nvar envmap_pars_vertex_glsl_default = `\\n#ifdef USE_ENVMAP\\n\\n\\t#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) ||defined( PHONG )\\n\\n\\t\\t#define ENV_WORLDPOS\\n\\n\\t#endif\\n\\n\\t#ifdef ENV_WORLDPOS\\n\\t\\t\\n\\t\\tvarying vec3 vWorldPosition;\\n\\n\\t#else\\n\\n\\t\\tvarying vec3 vReflect;\\n\\t\\tuniform float refractionRatio;\\n\\n\\t#endif\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/envmap_vertex.glsl.js\\nvar envmap_vertex_glsl_default = `\\n#ifdef USE_ENVMAP\\n\\n\\t#ifdef ENV_WORLDPOS\\n\\n\\t\\tvWorldPosition = worldPosition.xyz;\\n\\n\\t#else\\n\\n\\t\\tvec3 cameraToVertex;\\n\\n\\t\\tif ( isOrthographic ) {\\n\\n\\t\\t\\tcameraToVertex = normalize( vec3( - viewMatrix[ 0 ][ 2 ], - viewMatrix[ 1 ][ 2 ], - viewMatrix[ 2 ][ 2 ] ) );\\n\\n\\t\\t} else {\\n\\n\\t\\t\\tcameraToVertex = normalize( worldPosition.xyz - cameraPosition );\\n\\n\\t\\t}\\n\\n\\t\\tvec3 worldNormal = inverseTransformDirection( transformedNormal, viewMatrix );\\n\\n\\t\\t#ifdef ENVMAP_MODE_REFLECTION\\n\\n\\t\\t\\tvReflect = reflect( cameraToVertex, worldNormal );\\n\\n\\t\\t#else\\n\\n\\t\\t\\tvReflect = refract( cameraToVertex, worldNormal, refractionRatio );\\n\\n\\t\\t#endif\\n\\n\\t#endif\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/fog_vertex.glsl.js\\nvar fog_vertex_glsl_default = `\\n#ifdef USE_FOG\\n\\n\\tvFogDepth = - mvPosition.z;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/fog_pars_vertex.glsl.js\\nvar fog_pars_vertex_glsl_default = `\\n#ifdef USE_FOG\\n\\n\\tvarying float vFogDepth;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/fog_fragment.glsl.js\\nvar fog_fragment_glsl_default = `\\n#ifdef USE_FOG\\n\\n\\t#ifdef FOG_EXP2\\n\\n\\t\\tfloat fogFactor = 1.0 - exp( - fogDensity * fogDensity * vFogDepth * vFogDepth );\\n\\n\\t#else\\n\\n\\t\\tfloat fogFactor = smoothstep( fogNear, fogFar, vFogDepth );\\n\\n\\t#endif\\n\\n\\tgl_FragColor.rgb = mix( gl_FragColor.rgb, fogColor, fogFactor );\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/fog_pars_fragment.glsl.js\\nvar fog_pars_fragment_glsl_default = `\\n#ifdef USE_FOG\\n\\n\\tuniform vec3 fogColor;\\n\\tvarying float vFogDepth;\\n\\n\\t#ifdef FOG_EXP2\\n\\n\\t\\tuniform float fogDensity;\\n\\n\\t#else\\n\\n\\t\\tuniform float fogNear;\\n\\t\\tuniform float fogFar;\\n\\n\\t#endif\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/gradientmap_pars_fragment.glsl.js\\nvar gradientmap_pars_fragment_glsl_default = `\\n\\n#ifdef USE_GRADIENTMAP\\n\\n\\tuniform sampler2D gradientMap;\\n\\n#endif\\n\\nvec3 getGradientIrradiance( vec3 normal, vec3 lightDirection ) {\\n\\n\\t// dotNL will be from -1.0 to 1.0\\n\\tfloat dotNL = dot( normal, lightDirection );\\n\\tvec2 coord = vec2( dotNL * 0.5 + 0.5, 0.0 );\\n\\n\\t#ifdef USE_GRADIENTMAP\\n\\n\\t\\treturn texture2D( gradientMap, coord ).rgb;\\n\\n\\t#else\\n\\n\\t\\treturn ( coord.x < 0.7 ) ? vec3( 0.7 ) : vec3( 1.0 );\\n\\n\\t#endif\\n\\n}\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/lightmap_fragment.glsl.js\\nvar lightmap_fragment_glsl_default = `\\n#ifdef USE_LIGHTMAP\\n\\n\\tvec4 lightMapTexel = texture2D( lightMap, vUv2 );\\n\\tvec3 lightMapIrradiance = lightMapTexelToLinear( lightMapTexel ).rgb * lightMapIntensity;\\n\\n\\t#ifndef PHYSICALLY_CORRECT_LIGHTS\\n\\n\\t\\tlightMapIrradiance *= PI;\\n\\n\\t#endif\\n\\n\\treflectedLight.indirectDiffuse += lightMapIrradiance;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/lightmap_pars_fragment.glsl.js\\nvar lightmap_pars_fragment_glsl_default = `\\n#ifdef USE_LIGHTMAP\\n\\n\\tuniform sampler2D lightMap;\\n\\tuniform float lightMapIntensity;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/lights_lambert_vertex.glsl.js\\nvar lights_lambert_vertex_glsl_default = `\\nvec3 diffuse = vec3( 1.0 );\\n\\nGeometricContext geometry;\\ngeometry.position = mvPosition.xyz;\\ngeometry.normal = normalize( transformedNormal );\\ngeometry.viewDir = ( isOrthographic ) ? vec3( 0, 0, 1 ) : normalize( -mvPosition.xyz );\\n\\nGeometricContext backGeometry;\\nbackGeometry.position = geometry.position;\\nbackGeometry.normal = -geometry.normal;\\nbackGeometry.viewDir = geometry.viewDir;\\n\\nvLightFront = vec3( 0.0 );\\nvIndirectFront = vec3( 0.0 );\\n#ifdef DOUBLE_SIDED\\n\\tvLightBack = vec3( 0.0 );\\n\\tvIndirectBack = vec3( 0.0 );\\n#endif\\n\\nIncidentLight directLight;\\nfloat dotNL;\\nvec3 directLightColor_Diffuse;\\n\\nvIndirectFront += getAmbientLightIrradiance( ambientLightColor );\\n\\nvIndirectFront += getLightProbeIrradiance( lightProbe, geometry.normal );\\n\\n#ifdef DOUBLE_SIDED\\n\\n\\tvIndirectBack += getAmbientLightIrradiance( ambientLightColor );\\n\\n\\tvIndirectBack += getLightProbeIrradiance( lightProbe, backGeometry.normal );\\n\\n#endif\\n\\n#if NUM_POINT_LIGHTS > 0\\n\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) {\\n\\n\\t\\tgetPointLightInfo( pointLights[ i ], geometry, directLight );\\n\\n\\t\\tdotNL = dot( geometry.normal, directLight.direction );\\n\\t\\tdirectLightColor_Diffuse = directLight.color;\\n\\n\\t\\tvLightFront += saturate( dotNL ) * directLightColor_Diffuse;\\n\\n\\t\\t#ifdef DOUBLE_SIDED\\n\\n\\t\\t\\tvLightBack += saturate( - dotNL ) * directLightColor_Diffuse;\\n\\n\\t\\t#endif\\n\\n\\t}\\n\\t#pragma unroll_loop_end\\n\\n#endif\\n\\n#if NUM_SPOT_LIGHTS > 0\\n\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) {\\n\\n\\t\\tgetSpotLightInfo( spotLights[ i ], geometry, directLight );\\n\\n\\t\\tdotNL = dot( geometry.normal, directLight.direction );\\n\\t\\tdirectLightColor_Diffuse = directLight.color;\\n\\n\\t\\tvLightFront += saturate( dotNL ) * directLightColor_Diffuse;\\n\\n\\t\\t#ifdef DOUBLE_SIDED\\n\\n\\t\\t\\tvLightBack += saturate( - dotNL ) * directLightColor_Diffuse;\\n\\n\\t\\t#endif\\n\\t}\\n\\t#pragma unroll_loop_end\\n\\n#endif\\n\\n#if NUM_DIR_LIGHTS > 0\\n\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) {\\n\\n\\t\\tgetDirectionalLightInfo( directionalLights[ i ], geometry, directLight );\\n\\n\\t\\tdotNL = dot( geometry.normal, directLight.direction );\\n\\t\\tdirectLightColor_Diffuse = directLight.color;\\n\\n\\t\\tvLightFront += saturate( dotNL ) * directLightColor_Diffuse;\\n\\n\\t\\t#ifdef DOUBLE_SIDED\\n\\n\\t\\t\\tvLightBack += saturate( - dotNL ) * directLightColor_Diffuse;\\n\\n\\t\\t#endif\\n\\n\\t}\\n\\t#pragma unroll_loop_end\\n\\n#endif\\n\\n#if NUM_HEMI_LIGHTS > 0\\n\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < NUM_HEMI_LIGHTS; i ++ ) {\\n\\n\\t\\tvIndirectFront += getHemisphereLightIrradiance( hemisphereLights[ i ], geometry.normal );\\n\\n\\t\\t#ifdef DOUBLE_SIDED\\n\\n\\t\\t\\tvIndirectBack += getHemisphereLightIrradiance( hemisphereLights[ i ], backGeometry.normal );\\n\\n\\t\\t#endif\\n\\n\\t}\\n\\t#pragma unroll_loop_end\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/lights_pars_begin.glsl.js\\nvar lights_pars_begin_glsl_default = `\\nuniform bool receiveShadow;\\nuniform vec3 ambientLightColor;\\nuniform vec3 lightProbe[ 9 ];\\n\\n// get the irradiance (radiance convolved with cosine lobe) at the point 'normal' on the unit sphere\\n// source: https://graphics.stanford.edu/papers/envmap/envmap.pdf\\nvec3 shGetIrradianceAt( in vec3 normal, in vec3 shCoefficients[ 9 ] ) {\\n\\n\\t// normal is assumed to have unit length\\n\\n\\tfloat x = normal.x, y = normal.y, z = normal.z;\\n\\n\\t// band 0\\n\\tvec3 result = shCoefficients[ 0 ] * 0.886227;\\n\\n\\t// band 1\\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\\n\\t// band 2\\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\\n\\treturn result;\\n\\n}\\n\\nvec3 getLightProbeIrradiance( const in vec3 lightProbe[ 9 ], const in vec3 normal ) {\\n\\n\\tvec3 worldNormal = inverseTransformDirection( normal, viewMatrix );\\n\\n\\tvec3 irradiance = shGetIrradianceAt( worldNormal, lightProbe );\\n\\n\\treturn irradiance;\\n\\n}\\n\\nvec3 getAmbientLightIrradiance( const in vec3 ambientLightColor ) {\\n\\n\\tvec3 irradiance = ambientLightColor;\\n\\n\\treturn irradiance;\\n\\n}\\n\\nfloat getDistanceAttenuation( const in float lightDistance, const in float cutoffDistance, const in float decayExponent ) {\\n\\n\\t#if defined ( PHYSICALLY_CORRECT_LIGHTS )\\n\\n\\t\\t// based upon Frostbite 3 Moving to Physically-based Rendering\\n\\t\\t// page 32, equation 26: E[window1]\\n\\t\\t// https://seblagarde.files.wordpress.com/2015/07/course_notes_moving_frostbite_to_pbr_v32.pdf\\n\\t\\tfloat distanceFalloff = 1.0 / max( pow( lightDistance, decayExponent ), 0.01 );\\n\\n\\t\\tif ( cutoffDistance > 0.0 ) {\\n\\n\\t\\t\\tdistanceFalloff *= pow2( saturate( 1.0 - pow4( lightDistance / cutoffDistance ) ) );\\n\\n\\t\\t}\\n\\n\\t\\treturn distanceFalloff;\\n\\n\\t#else\\n\\n\\t\\tif ( cutoffDistance > 0.0 && decayExponent > 0.0 ) {\\n\\n\\t\\t\\treturn pow( saturate( - lightDistance / cutoffDistance + 1.0 ), decayExponent );\\n\\n\\t\\t}\\n\\n\\t\\treturn 1.0;\\n\\n\\t#endif\\n\\n}\\n\\nfloat getSpotAttenuation( const in float coneCosine, const in float penumbraCosine, const in float angleCosine ) {\\n\\n\\treturn smoothstep( coneCosine, penumbraCosine, angleCosine );\\n\\n}\\n\\n#if NUM_DIR_LIGHTS > 0\\n\\n\\tstruct DirectionalLight {\\n\\t\\tvec3 direction;\\n\\t\\tvec3 color;\\n\\t};\\n\\n\\tuniform DirectionalLight directionalLights[ NUM_DIR_LIGHTS ];\\n\\n\\tvoid getDirectionalLightInfo( const in DirectionalLight directionalLight, const in GeometricContext geometry, out IncidentLight light ) {\\n\\n\\t\\tlight.color = directionalLight.color;\\n\\t\\tlight.direction = directionalLight.direction;\\n\\t\\tlight.visible = true;\\n\\n\\t}\\n\\n#endif\\n\\n\\n#if NUM_POINT_LIGHTS > 0\\n\\n\\tstruct PointLight {\\n\\t\\tvec3 position;\\n\\t\\tvec3 color;\\n\\t\\tfloat distance;\\n\\t\\tfloat decay;\\n\\t};\\n\\n\\tuniform PointLight pointLights[ NUM_POINT_LIGHTS ];\\n\\n\\t// light is an out parameter as having it as a return value caused compiler errors on some devices\\n\\tvoid getPointLightInfo( const in PointLight pointLight, const in GeometricContext geometry, out IncidentLight light ) {\\n\\n\\t\\tvec3 lVector = pointLight.position - geometry.position;\\n\\n\\t\\tlight.direction = normalize( lVector );\\n\\n\\t\\tfloat lightDistance = length( lVector );\\n\\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\\n\\t}\\n\\n#endif\\n\\n\\n#if NUM_SPOT_LIGHTS > 0\\n\\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\\n\\tuniform SpotLight spotLights[ NUM_SPOT_LIGHTS ];\\n\\n\\t// light is an out parameter as having it as a return value caused compiler errors on some devices\\n\\tvoid getSpotLightInfo( const in SpotLight spotLight, const in GeometricContext geometry, out IncidentLight light ) {\\n\\n\\t\\tvec3 lVector = spotLight.position - geometry.position;\\n\\n\\t\\tlight.direction = normalize( lVector );\\n\\n\\t\\tfloat angleCos = dot( light.direction, spotLight.direction );\\n\\n\\t\\tfloat spotAttenuation = getSpotAttenuation( spotLight.coneCos, spotLight.penumbraCos, angleCos );\\n\\n\\t\\tif ( spotAttenuation > 0.0 ) {\\n\\n\\t\\t\\tfloat lightDistance = length( lVector );\\n\\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\\n\\t\\t} else {\\n\\n\\t\\t\\tlight.color = vec3( 0.0 );\\n\\t\\t\\tlight.visible = false;\\n\\n\\t\\t}\\n\\n\\t}\\n\\n#endif\\n\\n\\n#if NUM_RECT_AREA_LIGHTS > 0\\n\\n\\tstruct RectAreaLight {\\n\\t\\tvec3 color;\\n\\t\\tvec3 position;\\n\\t\\tvec3 halfWidth;\\n\\t\\tvec3 halfHeight;\\n\\t};\\n\\n\\t// Pre-computed values of LinearTransformedCosine approximation of BRDF\\n\\t// BRDF approximation Texture is 64x64\\n\\tuniform sampler2D ltc_1; // RGBA Float\\n\\tuniform sampler2D ltc_2; // RGBA Float\\n\\n\\tuniform RectAreaLight rectAreaLights[ NUM_RECT_AREA_LIGHTS ];\\n\\n#endif\\n\\n\\n#if NUM_HEMI_LIGHTS > 0\\n\\n\\tstruct HemisphereLight {\\n\\t\\tvec3 direction;\\n\\t\\tvec3 skyColor;\\n\\t\\tvec3 groundColor;\\n\\t};\\n\\n\\tuniform HemisphereLight hemisphereLights[ NUM_HEMI_LIGHTS ];\\n\\n\\tvec3 getHemisphereLightIrradiance( const in HemisphereLight hemiLight, const in vec3 normal ) {\\n\\n\\t\\tfloat dotNL = dot( normal, hemiLight.direction );\\n\\t\\tfloat hemiDiffuseWeight = 0.5 * dotNL + 0.5;\\n\\n\\t\\tvec3 irradiance = mix( hemiLight.groundColor, hemiLight.skyColor, hemiDiffuseWeight );\\n\\n\\t\\treturn irradiance;\\n\\n\\t}\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/envmap_physical_pars_fragment.glsl.js\\nvar envmap_physical_pars_fragment_glsl_default = `\\n#if defined( USE_ENVMAP )\\n\\n\\t#ifdef ENVMAP_MODE_REFRACTION\\n\\n\\t\\tuniform float refractionRatio;\\n\\n\\t#endif\\n\\n\\tvec3 getIBLIrradiance( const in vec3 normal ) {\\n\\n\\t\\t#if defined( ENVMAP_TYPE_CUBE_UV )\\n\\n\\t\\t\\tvec3 worldNormal = inverseTransformDirection( normal, viewMatrix );\\n\\n\\t\\t\\tvec4 envMapColor = textureCubeUV( envMap, worldNormal, 1.0 );\\n\\n\\t\\t\\treturn PI * envMapColor.rgb * envMapIntensity;\\n\\n\\t\\t#else\\n\\n\\t\\t\\treturn vec3( 0.0 );\\n\\n\\t\\t#endif\\n\\n\\t}\\n\\n\\tvec3 getIBLRadiance( const in vec3 viewDir, const in vec3 normal, const in float roughness ) {\\n\\n\\t\\t#if defined( ENVMAP_TYPE_CUBE_UV )\\n\\n\\t\\t\\tvec3 reflectVec;\\n\\n\\t\\t\\t#ifdef ENVMAP_MODE_REFLECTION\\n\\n\\t\\t\\t\\treflectVec = reflect( - viewDir, normal );\\n\\n\\t\\t\\t\\t// Mixing the reflection with the normal is more accurate and keeps rough objects from gathering light from behind their tangent plane.\\n\\t\\t\\t\\treflectVec = normalize( mix( reflectVec, normal, roughness * roughness) );\\n\\n\\t\\t\\t#else\\n\\n\\t\\t\\t\\treflectVec = refract( - viewDir, normal, refractionRatio );\\n\\n\\t\\t\\t#endif\\n\\n\\t\\t\\treflectVec = inverseTransformDirection( reflectVec, viewMatrix );\\n\\n\\t\\t\\tvec4 envMapColor = textureCubeUV( envMap, reflectVec, roughness );\\n\\n\\t\\t\\treturn envMapColor.rgb * envMapIntensity;\\n\\n\\t\\t#else\\n\\n\\t\\t\\treturn vec3( 0.0 );\\n\\n\\t\\t#endif\\n\\n\\t}\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/lights_toon_fragment.glsl.js\\nvar lights_toon_fragment_glsl_default = `\\nToonMaterial material;\\nmaterial.diffuseColor = diffuseColor.rgb;\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/lights_toon_pars_fragment.glsl.js\\nvar lights_toon_pars_fragment_glsl_default = `\\nvarying vec3 vViewPosition;\\n\\nstruct ToonMaterial {\\n\\n\\tvec3 diffuseColor;\\n\\n};\\n\\nvoid RE_Direct_Toon( const in IncidentLight directLight, const in GeometricContext geometry, const in ToonMaterial material, inout ReflectedLight reflectedLight ) {\\n\\n\\tvec3 irradiance = getGradientIrradiance( geometry.normal, directLight.direction ) * directLight.color;\\n\\n\\treflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\\n\\n}\\n\\nvoid RE_IndirectDiffuse_Toon( const in vec3 irradiance, const in GeometricContext geometry, const in ToonMaterial material, inout ReflectedLight reflectedLight ) {\\n\\n\\treflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\\n\\n}\\n\\n#define RE_Direct\\t\\t\\t\\tRE_Direct_Toon\\n#define RE_IndirectDiffuse\\t\\tRE_IndirectDiffuse_Toon\\n\\n#define Material_LightProbeLOD( material )\\t(0)\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/lights_phong_fragment.glsl.js\\nvar lights_phong_fragment_glsl_default = `\\nBlinnPhongMaterial material;\\nmaterial.diffuseColor = diffuseColor.rgb;\\nmaterial.specularColor = specular;\\nmaterial.specularShininess = shininess;\\nmaterial.specularStrength = specularStrength;\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/lights_phong_pars_fragment.glsl.js\\nvar lights_phong_pars_fragment_glsl_default = `\\nvarying vec3 vViewPosition;\\n\\nstruct BlinnPhongMaterial {\\n\\n\\tvec3 diffuseColor;\\n\\tvec3 specularColor;\\n\\tfloat specularShininess;\\n\\tfloat specularStrength;\\n\\n};\\n\\nvoid RE_Direct_BlinnPhong( const in IncidentLight directLight, const in GeometricContext geometry, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) {\\n\\n\\tfloat dotNL = saturate( dot( geometry.normal, directLight.direction ) );\\n\\tvec3 irradiance = dotNL * directLight.color;\\n\\n\\treflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\\n\\n\\treflectedLight.directSpecular += irradiance * BRDF_BlinnPhong( directLight.direction, geometry.viewDir, geometry.normal, material.specularColor, material.specularShininess ) * material.specularStrength;\\n\\n}\\n\\nvoid RE_IndirectDiffuse_BlinnPhong( const in vec3 irradiance, const in GeometricContext geometry, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) {\\n\\n\\treflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\\n\\n}\\n\\n#define RE_Direct\\t\\t\\t\\tRE_Direct_BlinnPhong\\n#define RE_IndirectDiffuse\\t\\tRE_IndirectDiffuse_BlinnPhong\\n\\n#define Material_LightProbeLOD( material )\\t(0)\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/lights_physical_fragment.glsl.js\\nvar lights_physical_fragment_glsl_default = `\\nPhysicalMaterial material;\\nmaterial.diffuseColor = diffuseColor.rgb * ( 1.0 - metalnessFactor );\\n\\nvec3 dxy = max( abs( dFdx( geometryNormal ) ), abs( dFdy( geometryNormal ) ) );\\nfloat geometryRoughness = max( max( dxy.x, dxy.y ), dxy.z );\\n\\nmaterial.roughness = max( roughnessFactor, 0.0525 );// 0.0525 corresponds to the base mip of a 256 cubemap.\\nmaterial.roughness += geometryRoughness;\\nmaterial.roughness = min( material.roughness, 1.0 );\\n\\n#ifdef IOR\\n\\n\\t#ifdef SPECULAR\\n\\n\\t\\tfloat specularIntensityFactor = specularIntensity;\\n\\t\\tvec3 specularTintFactor = specularTint;\\n\\n\\t\\t#ifdef USE_SPECULARINTENSITYMAP\\n\\n\\t\\t\\tspecularIntensityFactor *= texture2D( specularIntensityMap, vUv ).a;\\n\\n\\t\\t#endif\\n\\n\\t\\t#ifdef USE_SPECULARTINTMAP\\n\\n\\t\\t\\tspecularTintFactor *= specularTintMapTexelToLinear( texture2D( specularTintMap, vUv ) ).rgb;\\n\\n\\t\\t#endif\\n\\n\\t\\tmaterial.specularF90 = mix( specularIntensityFactor, 1.0, metalnessFactor );\\n\\n\\t#else\\n\\n\\t\\tfloat specularIntensityFactor = 1.0;\\n\\t\\tvec3 specularTintFactor = vec3( 1.0 );\\n\\t\\tmaterial.specularF90 = 1.0;\\n\\n\\t#endif\\n\\n\\tmaterial.specularColor = mix( min( pow2( ( ior - 1.0 ) / ( ior + 1.0 ) ) * specularTintFactor, vec3( 1.0 ) ) * specularIntensityFactor, diffuseColor.rgb, metalnessFactor );\\n\\n#else\\n\\n\\tmaterial.specularColor = mix( vec3( 0.04 ), diffuseColor.rgb, metalnessFactor );\\n\\tmaterial.specularF90 = 1.0;\\n\\n#endif\\n\\n#ifdef USE_CLEARCOAT\\n\\n\\tmaterial.clearcoat = clearcoat;\\n\\tmaterial.clearcoatRoughness = clearcoatRoughness;\\n\\tmaterial.clearcoatF0 = vec3( 0.04 );\\n\\tmaterial.clearcoatF90 = 1.0;\\n\\n\\t#ifdef USE_CLEARCOATMAP\\n\\n\\t\\tmaterial.clearcoat *= texture2D( clearcoatMap, vUv ).x;\\n\\n\\t#endif\\n\\n\\t#ifdef USE_CLEARCOAT_ROUGHNESSMAP\\n\\n\\t\\tmaterial.clearcoatRoughness *= texture2D( clearcoatRoughnessMap, vUv ).y;\\n\\n\\t#endif\\n\\n\\tmaterial.clearcoat = saturate( material.clearcoat ); // Burley clearcoat model\\n\\tmaterial.clearcoatRoughness = max( material.clearcoatRoughness, 0.0525 );\\n\\tmaterial.clearcoatRoughness += geometryRoughness;\\n\\tmaterial.clearcoatRoughness = min( material.clearcoatRoughness, 1.0 );\\n\\n#endif\\n\\n#ifdef USE_SHEEN\\n\\n\\tmaterial.sheenTint = sheenTint;\\n\\tmaterial.sheenRoughness = clamp( sheenRoughness, 0.07, 1.0 );\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js\\nvar lights_physical_pars_fragment_glsl_default = `\\nstruct PhysicalMaterial {\\n\\n\\tvec3 diffuseColor;\\n\\tfloat roughness;\\n\\tvec3 specularColor;\\n\\tfloat specularF90;\\n\\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\\n\\t#ifdef USE_SHEEN\\n\\t\\tvec3 sheenTint;\\n\\t\\tfloat sheenRoughness;\\n\\t#endif\\n\\n};\\n\\n// temporary\\nvec3 clearcoatSpecular = vec3( 0.0 );\\n\\n// Analytical approximation of the DFG LUT, one half of the\\n// split-sum approximation used in indirect specular lighting.\\n// via 'environmentBRDF' from \\\\\\\"Physically Based Shading on Mobile\\\\\\\"\\n// https://www.unrealengine.com/blog/physically-based-shading-on-mobile\\nvec2 DFGApprox( const in vec3 normal, const in vec3 viewDir, const in float roughness ) {\\n\\n\\tfloat dotNV = saturate( dot( normal, viewDir ) );\\n\\n\\tconst vec4 c0 = vec4( - 1, - 0.0275, - 0.572, 0.022 );\\n\\n\\tconst vec4 c1 = vec4( 1, 0.0425, 1.04, - 0.04 );\\n\\n\\tvec4 r = roughness * c0 + c1;\\n\\n\\tfloat a004 = min( r.x * r.x, exp2( - 9.28 * dotNV ) ) * r.x + r.y;\\n\\n\\tvec2 fab = vec2( - 1.04, 1.04 ) * a004 + r.zw;\\n\\n\\treturn fab;\\n\\n}\\n\\nvec3 EnvironmentBRDF( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float roughness ) {\\n\\n\\tvec2 fab = DFGApprox( normal, viewDir, roughness );\\n\\n\\treturn specularColor * fab.x + specularF90 * fab.y;\\n\\n}\\n\\n// Fdez-Ag\\\\xFCera's \\\\\\\"Multiple-Scattering Microfacet Model for Real-Time Image Based Lighting\\\\\\\"\\n// Approximates multiscattering in order to preserve energy.\\n// http://www.jcgt.org/published/0008/01/03/\\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\\n\\tvec2 fab = DFGApprox( normal, viewDir, roughness );\\n\\n\\tvec3 FssEss = specularColor * fab.x + specularF90 * fab.y;\\n\\n\\tfloat Ess = fab.x + fab.y;\\n\\tfloat Ems = 1.0 - Ess;\\n\\n\\tvec3 Favg = specularColor + ( 1.0 - specularColor ) * 0.047619; // 1/21\\n\\tvec3 Fms = FssEss * Favg / ( 1.0 - Ems * Favg );\\n\\n\\tsingleScatter += FssEss;\\n\\tmultiScatter += Fms * Ems;\\n\\n}\\n\\n#if NUM_RECT_AREA_LIGHTS > 0\\n\\n\\tvoid RE_Direct_RectArea_Physical( const in RectAreaLight rectAreaLight, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\\n\\n\\t\\tvec3 normal = geometry.normal;\\n\\t\\tvec3 viewDir = geometry.viewDir;\\n\\t\\tvec3 position = geometry.position;\\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\\n\\t\\tvec3 rectCoords[ 4 ];\\n\\t\\trectCoords[ 0 ] = lightPos + halfWidth - halfHeight; // counterclockwise; light shines in local neg z direction\\n\\t\\trectCoords[ 1 ] = lightPos - halfWidth - halfHeight;\\n\\t\\trectCoords[ 2 ] = lightPos - halfWidth + halfHeight;\\n\\t\\trectCoords[ 3 ] = lightPos + halfWidth + halfHeight;\\n\\n\\t\\tvec2 uv = LTC_Uv( normal, viewDir, roughness );\\n\\n\\t\\tvec4 t1 = texture2D( ltc_1, uv );\\n\\t\\tvec4 t2 = texture2D( ltc_2, uv );\\n\\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\\n\\t\\t// LTC Fresnel Approximation by Stephen Hill\\n\\t\\t// http://blog.selfshadow.com/publications/s2016-advances/s2016_ltc_fresnel.pdf\\n\\t\\tvec3 fresnel = ( material.specularColor * t2.x + ( vec3( 1.0 ) - material.specularColor ) * t2.y );\\n\\n\\t\\treflectedLight.directSpecular += lightColor * fresnel * LTC_Evaluate( normal, viewDir, position, mInv, rectCoords );\\n\\n\\t\\treflectedLight.directDiffuse += lightColor * material.diffuseColor * LTC_Evaluate( normal, viewDir, position, mat3( 1.0 ), rectCoords );\\n\\n\\t}\\n\\n#endif\\n\\nvoid RE_Direct_Physical( const in IncidentLight directLight, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\\n\\n\\tfloat dotNL = saturate( dot( geometry.normal, directLight.direction ) );\\n\\n\\tvec3 irradiance = dotNL * directLight.color;\\n\\n\\t#ifdef USE_CLEARCOAT\\n\\n\\t\\tfloat dotNLcc = saturate( dot( geometry.clearcoatNormal, directLight.direction ) );\\n\\n\\t\\tvec3 ccIrradiance = dotNLcc * directLight.color;\\n\\n\\t\\tclearcoatSpecular += ccIrradiance * BRDF_GGX( directLight.direction, geometry.viewDir, geometry.clearcoatNormal, material.clearcoatF0, material.clearcoatF90, material.clearcoatRoughness );\\n\\n\\t#endif\\n\\n\\t#ifdef USE_SHEEN\\n\\n\\t\\treflectedLight.directSpecular += irradiance * BRDF_Sheen( directLight.direction, geometry.viewDir, geometry.normal, material.sheenTint, material.sheenRoughness );\\n\\n\\t#endif\\n\\n\\treflectedLight.directSpecular += irradiance * BRDF_GGX( directLight.direction, geometry.viewDir, geometry.normal, material.specularColor, material.specularF90, material.roughness );\\n\\n\\n\\treflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\\n}\\n\\nvoid RE_IndirectDiffuse_Physical( const in vec3 irradiance, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\\n\\n\\treflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\\n\\n}\\n\\nvoid RE_IndirectSpecular_Physical( const in vec3 radiance, const in vec3 irradiance, const in vec3 clearcoatRadiance, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight) {\\n\\n\\t#ifdef USE_CLEARCOAT\\n\\n\\t\\tclearcoatSpecular += clearcoatRadiance * EnvironmentBRDF( geometry.clearcoatNormal, geometry.viewDir, material.clearcoatF0, material.clearcoatF90, material.clearcoatRoughness );\\n\\n\\t#endif\\n\\n\\t// Both indirect specular and indirect diffuse light accumulate here\\n\\n\\tvec3 singleScattering = vec3( 0.0 );\\n\\tvec3 multiScattering = vec3( 0.0 );\\n\\tvec3 cosineWeightedIrradiance = irradiance * RECIPROCAL_PI;\\n\\n\\tcomputeMultiscattering( geometry.normal, geometry.viewDir, material.specularColor, material.specularF90, material.roughness, singleScattering, multiScattering );\\n\\n\\tvec3 diffuse = material.diffuseColor * ( 1.0 - ( singleScattering + multiScattering ) );\\n\\n\\treflectedLight.indirectSpecular += radiance * singleScattering;\\n\\treflectedLight.indirectSpecular += multiScattering * cosineWeightedIrradiance;\\n\\n\\treflectedLight.indirectDiffuse += diffuse * cosineWeightedIrradiance;\\n\\n}\\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\\n\\n// ref: https://seblagarde.files.wordpress.com/2015/07/course_notes_moving_frostbite_to_pbr_v32.pdf\\nfloat computeSpecularOcclusion( const in float dotNV, const in float ambientOcclusion, const in float roughness ) {\\n\\n\\treturn saturate( pow( dotNV + ambientOcclusion, exp2( - 16.0 * roughness - 1.0 ) ) - 1.0 + ambientOcclusion );\\n\\n}\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/lights_fragment_begin.glsl.js\\nvar lights_fragment_begin_glsl_default = `\\n/**\\n * This is a template that can be used to light a material, it uses pluggable\\n * RenderEquations (RE)for specific lighting scenarios.\\n *\\n * Instructions for use:\\n * - Ensure that both RE_Direct, RE_IndirectDiffuse and RE_IndirectSpecular are defined\\n * - If you have defined an RE_IndirectSpecular, you need to also provide a Material_LightProbeLOD. <---- ???\\n * - Create a material parameter that is to be passed as the third parameter to your lighting functions.\\n *\\n * TODO:\\n * - Add area light support.\\n * - Add sphere light support.\\n * - Add diffuse light probe (irradiance cubemap) support.\\n */\\n\\nGeometricContext geometry;\\n\\ngeometry.position = - vViewPosition;\\ngeometry.normal = normal;\\ngeometry.viewDir = ( isOrthographic ) ? vec3( 0, 0, 1 ) : normalize( vViewPosition );\\n\\n#ifdef USE_CLEARCOAT\\n\\n\\tgeometry.clearcoatNormal = clearcoatNormal;\\n\\n#endif\\n\\nIncidentLight directLight;\\n\\n#if ( NUM_POINT_LIGHTS > 0 ) && defined( RE_Direct )\\n\\n\\tPointLight pointLight;\\n\\t#if defined( USE_SHADOWMAP ) && NUM_POINT_LIGHT_SHADOWS > 0\\n\\tPointLightShadow pointLightShadow;\\n\\t#endif\\n\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) {\\n\\n\\t\\tpointLight = pointLights[ i ];\\n\\n\\t\\tgetPointLightInfo( pointLight, geometry, directLight );\\n\\n\\t\\t#if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_POINT_LIGHT_SHADOWS )\\n\\t\\tpointLightShadow = pointLightShadows[ i ];\\n\\t\\tdirectLight.color *= all( bvec2( 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\\n\\t\\tRE_Direct( directLight, geometry, material, reflectedLight );\\n\\n\\t}\\n\\t#pragma unroll_loop_end\\n\\n#endif\\n\\n#if ( NUM_SPOT_LIGHTS > 0 ) && defined( RE_Direct )\\n\\n\\tSpotLight spotLight;\\n\\t#if defined( USE_SHADOWMAP ) && NUM_SPOT_LIGHT_SHADOWS > 0\\n\\tSpotLightShadow spotLightShadow;\\n\\t#endif\\n\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) {\\n\\n\\t\\tspotLight = spotLights[ i ];\\n\\n\\t\\tgetSpotLightInfo( spotLight, geometry, directLight );\\n\\n\\t\\t#if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS )\\n\\t\\tspotLightShadow = spotLightShadows[ i ];\\n\\t\\tdirectLight.color *= all( bvec2( directLight.visible, receiveShadow ) ) ? getShadow( spotShadowMap[ i ], spotLightShadow.shadowMapSize, spotLightShadow.shadowBias, spotLightShadow.shadowRadius, vSpotShadowCoord[ i ] ) : 1.0;\\n\\t\\t#endif\\n\\n\\t\\tRE_Direct( directLight, geometry, material, reflectedLight );\\n\\n\\t}\\n\\t#pragma unroll_loop_end\\n\\n#endif\\n\\n#if ( NUM_DIR_LIGHTS > 0 ) && defined( RE_Direct )\\n\\n\\tDirectionalLight directionalLight;\\n\\t#if defined( USE_SHADOWMAP ) && NUM_DIR_LIGHT_SHADOWS > 0\\n\\tDirectionalLightShadow directionalLightShadow;\\n\\t#endif\\n\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) {\\n\\n\\t\\tdirectionalLight = directionalLights[ i ];\\n\\n\\t\\tgetDirectionalLightInfo( directionalLight, geometry, directLight );\\n\\n\\t\\t#if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_DIR_LIGHT_SHADOWS )\\n\\t\\tdirectionalLightShadow = directionalLightShadows[ i ];\\n\\t\\tdirectLight.color *= all( bvec2( directLight.visible, receiveShadow ) ) ? getShadow( directionalShadowMap[ i ], directionalLightShadow.shadowMapSize, directionalLightShadow.shadowBias, directionalLightShadow.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0;\\n\\t\\t#endif\\n\\n\\t\\tRE_Direct( directLight, geometry, material, reflectedLight );\\n\\n\\t}\\n\\t#pragma unroll_loop_end\\n\\n#endif\\n\\n#if ( NUM_RECT_AREA_LIGHTS > 0 ) && defined( RE_Direct_RectArea )\\n\\n\\tRectAreaLight rectAreaLight;\\n\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < NUM_RECT_AREA_LIGHTS; i ++ ) {\\n\\n\\t\\trectAreaLight = rectAreaLights[ i ];\\n\\t\\tRE_Direct_RectArea( rectAreaLight, geometry, material, reflectedLight );\\n\\n\\t}\\n\\t#pragma unroll_loop_end\\n\\n#endif\\n\\n#if defined( RE_IndirectDiffuse )\\n\\n\\tvec3 iblIrradiance = vec3( 0.0 );\\n\\n\\tvec3 irradiance = getAmbientLightIrradiance( ambientLightColor );\\n\\n\\tirradiance += getLightProbeIrradiance( lightProbe, geometry.normal );\\n\\n\\t#if ( NUM_HEMI_LIGHTS > 0 )\\n\\n\\t\\t#pragma unroll_loop_start\\n\\t\\tfor ( int i = 0; i < NUM_HEMI_LIGHTS; i ++ ) {\\n\\n\\t\\t\\tirradiance += getHemisphereLightIrradiance( hemisphereLights[ i ], geometry.normal );\\n\\n\\t\\t}\\n\\t\\t#pragma unroll_loop_end\\n\\n\\t#endif\\n\\n#endif\\n\\n#if defined( RE_IndirectSpecular )\\n\\n\\tvec3 radiance = vec3( 0.0 );\\n\\tvec3 clearcoatRadiance = vec3( 0.0 );\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/lights_fragment_maps.glsl.js\\nvar lights_fragment_maps_glsl_default = `\\n#if defined( RE_IndirectDiffuse )\\n\\n\\t#ifdef USE_LIGHTMAP\\n\\n\\t\\tvec4 lightMapTexel = texture2D( lightMap, vUv2 );\\n\\t\\tvec3 lightMapIrradiance = lightMapTexelToLinear( lightMapTexel ).rgb * lightMapIntensity;\\n\\n\\t\\t#ifndef PHYSICALLY_CORRECT_LIGHTS\\n\\n\\t\\t\\tlightMapIrradiance *= PI;\\n\\n\\t\\t#endif\\n\\n\\t\\tirradiance += lightMapIrradiance;\\n\\n\\t#endif\\n\\n\\t#if defined( USE_ENVMAP ) && defined( STANDARD ) && defined( ENVMAP_TYPE_CUBE_UV )\\n\\n\\t\\tiblIrradiance += getIBLIrradiance( geometry.normal );\\n\\n\\t#endif\\n\\n#endif\\n\\n#if defined( USE_ENVMAP ) && defined( RE_IndirectSpecular )\\n\\n\\tradiance += getIBLRadiance( geometry.viewDir, geometry.normal, material.roughness );\\n\\n\\t#ifdef USE_CLEARCOAT\\n\\n\\t\\tclearcoatRadiance += getIBLRadiance( geometry.viewDir, geometry.clearcoatNormal, material.clearcoatRoughness );\\n\\n\\t#endif\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/lights_fragment_end.glsl.js\\nvar lights_fragment_end_glsl_default = `\\n#if defined( RE_IndirectDiffuse )\\n\\n\\tRE_IndirectDiffuse( irradiance, geometry, material, reflectedLight );\\n\\n#endif\\n\\n#if defined( RE_IndirectSpecular )\\n\\n\\tRE_IndirectSpecular( radiance, iblIrradiance, clearcoatRadiance, geometry, material, reflectedLight );\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/logdepthbuf_fragment.glsl.js\\nvar logdepthbuf_fragment_glsl_default = `\\n#if defined( USE_LOGDEPTHBUF ) && defined( USE_LOGDEPTHBUF_EXT )\\n\\n\\t// Doing a strict comparison with == 1.0 can cause noise artifacts\\n\\t// on some platforms. See issue #17623.\\n\\tgl_FragDepthEXT = vIsPerspective == 0.0 ? gl_FragCoord.z : log2( vFragDepth ) * logDepthBufFC * 0.5;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/logdepthbuf_pars_fragment.glsl.js\\nvar logdepthbuf_pars_fragment_glsl_default = `\\n#if defined( USE_LOGDEPTHBUF ) && defined( USE_LOGDEPTHBUF_EXT )\\n\\n\\tuniform float logDepthBufFC;\\n\\tvarying float vFragDepth;\\n\\tvarying float vIsPerspective;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/logdepthbuf_pars_vertex.glsl.js\\nvar logdepthbuf_pars_vertex_glsl_default = `\\n#ifdef USE_LOGDEPTHBUF\\n\\n\\t#ifdef USE_LOGDEPTHBUF_EXT\\n\\n\\t\\tvarying float vFragDepth;\\n\\t\\tvarying float vIsPerspective;\\n\\n\\t#else\\n\\n\\t\\tuniform float logDepthBufFC;\\n\\n\\t#endif\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/logdepthbuf_vertex.glsl.js\\nvar logdepthbuf_vertex_glsl_default = `\\n#ifdef USE_LOGDEPTHBUF\\n\\n\\t#ifdef USE_LOGDEPTHBUF_EXT\\n\\n\\t\\tvFragDepth = 1.0 + gl_Position.w;\\n\\t\\tvIsPerspective = float( isPerspectiveMatrix( projectionMatrix ) );\\n\\n\\t#else\\n\\n\\t\\tif ( isPerspectiveMatrix( projectionMatrix ) ) {\\n\\n\\t\\t\\tgl_Position.z = log2( max( EPSILON, gl_Position.w + 1.0 ) ) * logDepthBufFC - 1.0;\\n\\n\\t\\t\\tgl_Position.z *= gl_Position.w;\\n\\n\\t\\t}\\n\\n\\t#endif\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/map_fragment.glsl.js\\nvar map_fragment_glsl_default = `\\n#ifdef USE_MAP\\n\\n\\tvec4 texelColor = texture2D( map, vUv );\\n\\n\\ttexelColor = mapTexelToLinear( texelColor );\\n\\tdiffuseColor *= texelColor;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/map_pars_fragment.glsl.js\\nvar map_pars_fragment_glsl_default = `\\n#ifdef USE_MAP\\n\\n\\tuniform sampler2D map;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/map_particle_fragment.glsl.js\\nvar map_particle_fragment_glsl_default = `\\n#if defined( USE_MAP ) || defined( USE_ALPHAMAP )\\n\\n\\tvec2 uv = ( uvTransform * vec3( gl_PointCoord.x, 1.0 - gl_PointCoord.y, 1 ) ).xy;\\n\\n#endif\\n\\n#ifdef USE_MAP\\n\\n\\tvec4 mapTexel = texture2D( map, uv );\\n\\tdiffuseColor *= mapTexelToLinear( mapTexel );\\n\\n#endif\\n\\n#ifdef USE_ALPHAMAP\\n\\n\\tdiffuseColor.a *= texture2D( alphaMap, uv ).g;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/map_particle_pars_fragment.glsl.js\\nvar map_particle_pars_fragment_glsl_default = `\\n#if defined( USE_MAP ) || defined( USE_ALPHAMAP )\\n\\n\\tuniform mat3 uvTransform;\\n\\n#endif\\n\\n#ifdef USE_MAP\\n\\n\\tuniform sampler2D map;\\n\\n#endif\\n\\n#ifdef USE_ALPHAMAP\\n\\n\\tuniform sampler2D alphaMap;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/metalnessmap_fragment.glsl.js\\nvar metalnessmap_fragment_glsl_default = `\\nfloat metalnessFactor = metalness;\\n\\n#ifdef USE_METALNESSMAP\\n\\n\\tvec4 texelMetalness = texture2D( metalnessMap, vUv );\\n\\n\\t// reads channel B, compatible with a combined OcclusionRoughnessMetallic (RGB) texture\\n\\tmetalnessFactor *= texelMetalness.b;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/metalnessmap_pars_fragment.glsl.js\\nvar metalnessmap_pars_fragment_glsl_default = `\\n#ifdef USE_METALNESSMAP\\n\\n\\tuniform sampler2D metalnessMap;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/morphnormal_vertex.glsl.js\\nvar morphnormal_vertex_glsl_default = `\\n#ifdef USE_MORPHNORMALS\\n\\n\\t// morphTargetBaseInfluence is set based on BufferGeometry.morphTargetsRelative value:\\n\\t// When morphTargetsRelative is false, this is set to 1 - sum(influences); this results in normal = sum((target - base) * influence)\\n\\t// When morphTargetsRelative is true, this is set to 1; as a result, all morph targets are simply added to the base after weighting\\n\\tobjectNormal *= morphTargetBaseInfluence;\\n\\n\\t#ifdef MORPHTARGETS_TEXTURE\\n\\n\\t\\tfor ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {\\n\\n\\t\\t\\tif ( morphTargetInfluences[ i ] > 0.0 ) objectNormal += getMorph( gl_VertexID, i, 1, 2 ) * morphTargetInfluences[ i ];\\n\\n\\t\\t}\\n\\n\\t#else\\n\\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\\n\\t#endif\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/morphtarget_pars_vertex.glsl.js\\nvar morphtarget_pars_vertex_glsl_default = `\\n#ifdef USE_MORPHTARGETS\\n\\n\\tuniform float morphTargetBaseInfluence;\\n\\n\\t#ifdef MORPHTARGETS_TEXTURE\\n\\n\\t\\tuniform float morphTargetInfluences[ MORPHTARGETS_COUNT ];\\n\\t\\tuniform sampler2DArray morphTargetsTexture;\\n\\t\\tuniform vec2 morphTargetsTextureSize;\\n\\n\\t\\tvec3 getMorph( const in int vertexIndex, const in int morphTargetIndex, const in int offset, const in int stride ) {\\n\\n\\t\\t\\tfloat texelIndex = float( vertexIndex * stride + offset );\\n\\t\\t\\tfloat y = floor( texelIndex / morphTargetsTextureSize.x );\\n\\t\\t\\tfloat x = texelIndex - y * morphTargetsTextureSize.x;\\n\\n\\t\\t\\tvec3 morphUV = vec3( ( x + 0.5 ) / morphTargetsTextureSize.x, y / morphTargetsTextureSize.y, morphTargetIndex );\\n\\t\\t\\treturn texture( morphTargetsTexture, morphUV ).xyz;\\n\\n\\t\\t}\\n\\n\\t#else\\n\\n\\t\\t#ifndef USE_MORPHNORMALS\\n\\n\\t\\t\\tuniform float morphTargetInfluences[ 8 ];\\n\\n\\t\\t#else\\n\\n\\t\\t\\tuniform float morphTargetInfluences[ 4 ];\\n\\n\\t\\t#endif\\n\\n\\t#endif\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/morphtarget_vertex.glsl.js\\nvar morphtarget_vertex_glsl_default = `\\n#ifdef USE_MORPHTARGETS\\n\\n\\t// morphTargetBaseInfluence is set based on BufferGeometry.morphTargetsRelative value:\\n\\t// When morphTargetsRelative is false, this is set to 1 - sum(influences); this results in position = sum((target - base) * influence)\\n\\t// When morphTargetsRelative is true, this is set to 1; as a result, all morph targets are simply added to the base after weighting\\n\\ttransformed *= morphTargetBaseInfluence;\\n\\n\\t#ifdef MORPHTARGETS_TEXTURE\\n\\n\\t\\tfor ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {\\n\\n\\t\\t\\t#ifndef USE_MORPHNORMALS\\n\\n\\t\\t\\t\\tif ( morphTargetInfluences[ i ] > 0.0 ) transformed += getMorph( gl_VertexID, i, 0, 1 ) * morphTargetInfluences[ i ];\\n\\n\\t\\t\\t#else\\n\\n\\t\\t\\t\\tif ( morphTargetInfluences[ i ] > 0.0 ) transformed += getMorph( gl_VertexID, i, 0, 2 ) * morphTargetInfluences[ i ];\\n\\n\\t\\t\\t#endif\\n\\n\\t\\t}\\n\\n\\t#else\\n\\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\\n\\t\\t#ifndef USE_MORPHNORMALS\\n\\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\\n\\t\\t#endif\\n\\n\\t#endif\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/normal_fragment_begin.glsl.js\\nvar normal_fragment_begin_glsl_default = `\\nfloat faceDirection = gl_FrontFacing ? 1.0 : - 1.0;\\n\\n#ifdef FLAT_SHADED\\n\\n\\t// Workaround for Adreno GPUs not able to do dFdx( vViewPosition )\\n\\n\\tvec3 fdx = vec3( dFdx( vViewPosition.x ), dFdx( vViewPosition.y ), dFdx( vViewPosition.z ) );\\n\\tvec3 fdy = vec3( dFdy( vViewPosition.x ), dFdy( vViewPosition.y ), dFdy( vViewPosition.z ) );\\n\\tvec3 normal = normalize( cross( fdx, fdy ) );\\n\\n#else\\n\\n\\tvec3 normal = normalize( vNormal );\\n\\n\\t#ifdef DOUBLE_SIDED\\n\\n\\t\\tnormal = normal * faceDirection;\\n\\n\\t#endif\\n\\n\\t#ifdef USE_TANGENT\\n\\n\\t\\tvec3 tangent = normalize( vTangent );\\n\\t\\tvec3 bitangent = normalize( vBitangent );\\n\\n\\t\\t#ifdef DOUBLE_SIDED\\n\\n\\t\\t\\ttangent = tangent * faceDirection;\\n\\t\\t\\tbitangent = bitangent * faceDirection;\\n\\n\\t\\t#endif\\n\\n\\t\\t#if defined( TANGENTSPACE_NORMALMAP ) || defined( USE_CLEARCOAT_NORMALMAP )\\n\\n\\t\\t\\tmat3 vTBN = mat3( tangent, bitangent, normal );\\n\\n\\t\\t#endif\\n\\n\\t#endif\\n\\n#endif\\n\\n// non perturbed normal for clearcoat among others\\n\\nvec3 geometryNormal = normal;\\n\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/normal_fragment_maps.glsl.js\\nvar normal_fragment_maps_glsl_default = `\\n\\n#ifdef OBJECTSPACE_NORMALMAP\\n\\n\\tnormal = texture2D( normalMap, vUv ).xyz * 2.0 - 1.0; // overrides both flatShading and attribute normals\\n\\n\\t#ifdef FLIP_SIDED\\n\\n\\t\\tnormal = - normal;\\n\\n\\t#endif\\n\\n\\t#ifdef DOUBLE_SIDED\\n\\n\\t\\tnormal = normal * faceDirection;\\n\\n\\t#endif\\n\\n\\tnormal = normalize( normalMatrix * normal );\\n\\n#elif defined( TANGENTSPACE_NORMALMAP )\\n\\n\\tvec3 mapN = texture2D( normalMap, vUv ).xyz * 2.0 - 1.0;\\n\\tmapN.xy *= normalScale;\\n\\n\\t#ifdef USE_TANGENT\\n\\n\\t\\tnormal = normalize( vTBN * mapN );\\n\\n\\t#else\\n\\n\\t\\tnormal = perturbNormal2Arb( - vViewPosition, normal, mapN, faceDirection );\\n\\n\\t#endif\\n\\n#elif defined( USE_BUMPMAP )\\n\\n\\tnormal = perturbNormalArb( - vViewPosition, normal, dHdxy_fwd(), faceDirection );\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/normal_pars_fragment.glsl.js\\nvar normal_pars_fragment_glsl_default = `\\n#ifndef FLAT_SHADED\\n\\n\\tvarying vec3 vNormal;\\n\\n\\t#ifdef USE_TANGENT\\n\\n\\t\\tvarying vec3 vTangent;\\n\\t\\tvarying vec3 vBitangent;\\n\\n\\t#endif\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/normal_pars_vertex.glsl.js\\nvar normal_pars_vertex_glsl_default = `\\n#ifndef FLAT_SHADED\\n\\n\\tvarying vec3 vNormal;\\n\\n\\t#ifdef USE_TANGENT\\n\\n\\t\\tvarying vec3 vTangent;\\n\\t\\tvarying vec3 vBitangent;\\n\\n\\t#endif\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/normal_vertex.glsl.js\\nvar normal_vertex_glsl_default = `\\n#ifndef FLAT_SHADED // normal is computed with derivatives when FLAT_SHADED\\n\\n\\tvNormal = normalize( transformedNormal );\\n\\n\\t#ifdef USE_TANGENT\\n\\n\\t\\tvTangent = normalize( transformedTangent );\\n\\t\\tvBitangent = normalize( cross( vNormal, vTangent ) * tangent.w );\\n\\n\\t#endif\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/normalmap_pars_fragment.glsl.js\\nvar normalmap_pars_fragment_glsl_default = `\\n#ifdef USE_NORMALMAP\\n\\n\\tuniform sampler2D normalMap;\\n\\tuniform vec2 normalScale;\\n\\n#endif\\n\\n#ifdef OBJECTSPACE_NORMALMAP\\n\\n\\tuniform mat3 normalMatrix;\\n\\n#endif\\n\\n#if ! defined ( USE_TANGENT ) && ( defined ( TANGENTSPACE_NORMALMAP ) || defined ( USE_CLEARCOAT_NORMALMAP ) )\\n\\n\\t// Normal Mapping Without Precomputed Tangents\\n\\t// http://www.thetenthplanet.de/archives/1180\\n\\n\\tvec3 perturbNormal2Arb( vec3 eye_pos, vec3 surf_norm, vec3 mapN, float faceDirection ) {\\n\\n\\t\\t// Workaround for Adreno 3XX dFd*( vec3 ) bug. See #9988\\n\\n\\t\\tvec3 q0 = vec3( dFdx( eye_pos.x ), dFdx( eye_pos.y ), dFdx( eye_pos.z ) );\\n\\t\\tvec3 q1 = vec3( dFdy( eye_pos.x ), dFdy( eye_pos.y ), dFdy( eye_pos.z ) );\\n\\t\\tvec2 st0 = dFdx( vUv.st );\\n\\t\\tvec2 st1 = dFdy( vUv.st );\\n\\n\\t\\tvec3 N = surf_norm; // normalized\\n\\n\\t\\tvec3 q1perp = cross( q1, N );\\n\\t\\tvec3 q0perp = cross( N, q0 );\\n\\n\\t\\tvec3 T = q1perp * st0.x + q0perp * st1.x;\\n\\t\\tvec3 B = q1perp * st0.y + q0perp * st1.y;\\n\\n\\t\\tfloat det = max( dot( T, T ), dot( B, B ) );\\n\\t\\tfloat scale = ( det == 0.0 ) ? 0.0 : faceDirection * inversesqrt( det );\\n\\n\\t\\treturn normalize( T * ( mapN.x * scale ) + B * ( mapN.y * scale ) + N * mapN.z );\\n\\n\\t}\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/clearcoat_normal_fragment_begin.glsl.js\\nvar clearcoat_normal_fragment_begin_glsl_default = `\\n#ifdef USE_CLEARCOAT\\n\\n\\tvec3 clearcoatNormal = geometryNormal;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/clearcoat_normal_fragment_maps.glsl.js\\nvar clearcoat_normal_fragment_maps_glsl_default = `\\n#ifdef USE_CLEARCOAT_NORMALMAP\\n\\n\\tvec3 clearcoatMapN = texture2D( clearcoatNormalMap, vUv ).xyz * 2.0 - 1.0;\\n\\tclearcoatMapN.xy *= clearcoatNormalScale;\\n\\n\\t#ifdef USE_TANGENT\\n\\n\\t\\tclearcoatNormal = normalize( vTBN * clearcoatMapN );\\n\\n\\t#else\\n\\n\\t\\tclearcoatNormal = perturbNormal2Arb( - vViewPosition, clearcoatNormal, clearcoatMapN, faceDirection );\\n\\n\\t#endif\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/clearcoat_pars_fragment.glsl.js\\nvar clearcoat_pars_fragment_glsl_default = `\\n\\n#ifdef USE_CLEARCOATMAP\\n\\n\\tuniform sampler2D clearcoatMap;\\n\\n#endif\\n\\n#ifdef USE_CLEARCOAT_ROUGHNESSMAP\\n\\n\\tuniform sampler2D clearcoatRoughnessMap;\\n\\n#endif\\n\\n#ifdef USE_CLEARCOAT_NORMALMAP\\n\\n\\tuniform sampler2D clearcoatNormalMap;\\n\\tuniform vec2 clearcoatNormalScale;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/output_fragment.glsl.js\\nvar output_fragment_glsl_default = `\\n#ifdef OPAQUE\\ndiffuseColor.a = 1.0;\\n#endif\\n\\n// https://github.com/mrdoob/three.js/pull/22425\\n#ifdef USE_TRANSMISSION\\ndiffuseColor.a *= transmissionAlpha + 0.1;\\n#endif\\n\\ngl_FragColor = vec4( outgoingLight, diffuseColor.a );\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/packing.glsl.js\\nvar packing_glsl_default = `\\nvec3 packNormalToRGB( const in vec3 normal ) {\\n\\treturn normalize( normal ) * 0.5 + 0.5;\\n}\\n\\nvec3 unpackRGBToNormal( const in vec3 rgb ) {\\n\\treturn 2.0 * rgb.xyz - 1.0;\\n}\\n\\nconst float PackUpscale = 256. / 255.; // fraction -> 0..1 (including 1)\\nconst float UnpackDownscale = 255. / 256.; // 0..1 -> fraction (excluding 1)\\n\\nconst vec3 PackFactors = vec3( 256. * 256. * 256., 256. * 256., 256. );\\nconst vec4 UnpackFactors = UnpackDownscale / vec4( PackFactors, 1. );\\n\\nconst float ShiftRight8 = 1. / 256.;\\n\\nvec4 packDepthToRGBA( const in float v ) {\\n\\tvec4 r = vec4( fract( v * PackFactors ), v );\\n\\tr.yzw -= r.xyz * ShiftRight8; // tidy overflow\\n\\treturn r * PackUpscale;\\n}\\n\\nfloat unpackRGBAToDepth( const in vec4 v ) {\\n\\treturn dot( v, UnpackFactors );\\n}\\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}\\n\\nvec2 unpackRGBATo2Half( vec4 v ) {\\n\\treturn vec2( v.x + ( v.y / 255.0 ), v.z + ( v.w / 255.0 ) );\\n}\\n\\n// NOTE: viewZ/eyeZ is < 0 when in front of the camera per OpenGL conventions\\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 linearClipZ, const in float near, const in float far ) {\\n\\treturn linearClipZ * ( near - far ) - near;\\n}\\n\\n// NOTE: https://twitter.com/gonnavis/status/1377183786949959682\\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 invClipZ, const in float near, const in float far ) {\\n\\treturn ( near * far ) / ( ( far - near ) * invClipZ - far );\\n}\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/premultiplied_alpha_fragment.glsl.js\\nvar premultiplied_alpha_fragment_glsl_default = `\\n#ifdef PREMULTIPLIED_ALPHA\\n\\n\\t// Get get normal blending with premultipled, use with CustomBlending, OneFactor, OneMinusSrcAlphaFactor, AddEquation.\\n\\tgl_FragColor.rgb *= gl_FragColor.a;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/project_vertex.glsl.js\\nvar project_vertex_glsl_default = `\\nvec4 mvPosition = vec4( transformed, 1.0 );\\n\\n#ifdef USE_INSTANCING\\n\\n\\tmvPosition = instanceMatrix * mvPosition;\\n\\n#endif\\n\\nmvPosition = modelViewMatrix * mvPosition;\\n\\ngl_Position = projectionMatrix * mvPosition;\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/dithering_fragment.glsl.js\\nvar dithering_fragment_glsl_default = `\\n#ifdef DITHERING\\n\\n\\tgl_FragColor.rgb = dithering( gl_FragColor.rgb );\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/dithering_pars_fragment.glsl.js\\nvar dithering_pars_fragment_glsl_default = `\\n#ifdef DITHERING\\n\\n\\t// based on https://www.shadertoy.com/view/MslGR8\\n\\tvec3 dithering( vec3 color ) {\\n\\t\\t//Calculate grid position\\n\\t\\tfloat grid_position = rand( gl_FragCoord.xy );\\n\\n\\t\\t//Shift the individual colors differently, thus making it even harder to see the dithering pattern\\n\\t\\tvec3 dither_shift_RGB = vec3( 0.25 / 255.0, -0.25 / 255.0, 0.25 / 255.0 );\\n\\n\\t\\t//modify shift acording to grid position.\\n\\t\\tdither_shift_RGB = mix( 2.0 * dither_shift_RGB, -2.0 * dither_shift_RGB, grid_position );\\n\\n\\t\\t//shift the color by dither_shift\\n\\t\\treturn color + dither_shift_RGB;\\n\\t}\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/roughnessmap_fragment.glsl.js\\nvar roughnessmap_fragment_glsl_default = `\\nfloat roughnessFactor = roughness;\\n\\n#ifdef USE_ROUGHNESSMAP\\n\\n\\tvec4 texelRoughness = texture2D( roughnessMap, vUv );\\n\\n\\t// reads channel G, compatible with a combined OcclusionRoughnessMetallic (RGB) texture\\n\\troughnessFactor *= texelRoughness.g;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/roughnessmap_pars_fragment.glsl.js\\nvar roughnessmap_pars_fragment_glsl_default = `\\n#ifdef USE_ROUGHNESSMAP\\n\\n\\tuniform sampler2D roughnessMap;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/shadowmap_pars_fragment.glsl.js\\nvar shadowmap_pars_fragment_glsl_default = `\\n#ifdef USE_SHADOWMAP\\n\\n\\t#if NUM_DIR_LIGHT_SHADOWS > 0\\n\\n\\t\\tuniform sampler2D directionalShadowMap[ NUM_DIR_LIGHT_SHADOWS ];\\n\\t\\tvarying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHT_SHADOWS ];\\n\\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\\n\\t\\tuniform DirectionalLightShadow directionalLightShadows[ NUM_DIR_LIGHT_SHADOWS ];\\n\\n\\t#endif\\n\\n\\t#if NUM_SPOT_LIGHT_SHADOWS > 0\\n\\n\\t\\tuniform sampler2D spotShadowMap[ NUM_SPOT_LIGHT_SHADOWS ];\\n\\t\\tvarying vec4 vSpotShadowCoord[ NUM_SPOT_LIGHT_SHADOWS ];\\n\\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\\n\\t\\tuniform SpotLightShadow spotLightShadows[ NUM_SPOT_LIGHT_SHADOWS ];\\n\\n\\t#endif\\n\\n\\t#if NUM_POINT_LIGHT_SHADOWS > 0\\n\\n\\t\\tuniform sampler2D pointShadowMap[ NUM_POINT_LIGHT_SHADOWS ];\\n\\t\\tvarying vec4 vPointShadowCoord[ NUM_POINT_LIGHT_SHADOWS ];\\n\\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\\n\\t\\tuniform PointLightShadow pointLightShadows[ NUM_POINT_LIGHT_SHADOWS ];\\n\\n\\t#endif\\n\\n\\t/*\\n\\t#if NUM_RECT_AREA_LIGHTS > 0\\n\\n\\t\\t// TODO (abelnation): create uniforms for area light shadows\\n\\n\\t#endif\\n\\t*/\\n\\n\\tfloat texture2DCompare( sampler2D depths, vec2 uv, float compare ) {\\n\\n\\t\\treturn step( compare, unpackRGBAToDepth( texture2D( depths, uv ) ) );\\n\\n\\t}\\n\\n\\tvec2 texture2DDistribution( sampler2D shadow, vec2 uv ) {\\n\\n\\t\\treturn unpackRGBATo2Half( texture2D( shadow, uv ) );\\n\\n\\t}\\n\\n\\tfloat VSMShadow (sampler2D shadow, vec2 uv, float compare ){\\n\\n\\t\\tfloat occlusion = 1.0;\\n\\n\\t\\tvec2 distribution = texture2DDistribution( shadow, uv );\\n\\n\\t\\tfloat hard_shadow = step( compare , distribution.x ); // Hard Shadow\\n\\n\\t\\tif (hard_shadow != 1.0 ) {\\n\\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 ); // Chebeyshevs inequality\\n\\t\\t\\tsoftness_probability = clamp( ( softness_probability - 0.3 ) / ( 0.95 - 0.3 ), 0.0, 1.0 ); // 0.3 reduces light bleed\\n\\t\\t\\tocclusion = clamp( max( hard_shadow, softness_probability ), 0.0, 1.0 );\\n\\n\\t\\t}\\n\\t\\treturn occlusion;\\n\\n\\t}\\n\\n\\tfloat getShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowBias, float shadowRadius, vec4 shadowCoord ) {\\n\\n\\t\\tfloat shadow = 1.0;\\n\\n\\t\\tshadowCoord.xyz /= shadowCoord.w;\\n\\t\\tshadowCoord.z += shadowBias;\\n\\n\\t\\t// if ( something && something ) breaks ATI OpenGL shader compiler\\n\\t\\t// if ( all( something, something ) ) using this instead\\n\\n\\t\\tbvec4 inFrustumVec = bvec4 ( shadowCoord.x >= 0.0, shadowCoord.x <= 1.0, shadowCoord.y >= 0.0, shadowCoord.y <= 1.0 );\\n\\t\\tbool inFrustum = all( inFrustumVec );\\n\\n\\t\\tbvec2 frustumTestVec = bvec2( inFrustum, shadowCoord.z <= 1.0 );\\n\\n\\t\\tbool frustumTest = all( frustumTestVec );\\n\\n\\t\\tif ( frustumTest ) {\\n\\n\\t\\t#if defined( SHADOWMAP_TYPE_PCF )\\n\\n\\t\\t\\tvec2 texelSize = vec2( 1.0 ) / shadowMapSize;\\n\\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\\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\\n\\t\\t#elif defined( SHADOWMAP_TYPE_PCF_SOFT )\\n\\n\\t\\t\\tvec2 texelSize = vec2( 1.0 ) / shadowMapSize;\\n\\t\\t\\tfloat dx = texelSize.x;\\n\\t\\t\\tfloat dy = texelSize.y;\\n\\n\\t\\t\\tvec2 uv = shadowCoord.xy;\\n\\t\\t\\tvec2 f = fract( uv * shadowMapSize + 0.5 );\\n\\t\\t\\tuv -= f * texelSize;\\n\\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\\n\\t\\t#elif defined( SHADOWMAP_TYPE_VSM )\\n\\n\\t\\t\\tshadow = VSMShadow( shadowMap, shadowCoord.xy, shadowCoord.z );\\n\\n\\t\\t#else // no percentage-closer filtering:\\n\\n\\t\\t\\tshadow = texture2DCompare( shadowMap, shadowCoord.xy, shadowCoord.z );\\n\\n\\t\\t#endif\\n\\n\\t\\t}\\n\\n\\t\\treturn shadow;\\n\\n\\t}\\n\\n\\t// cubeToUV() maps a 3D direction vector suitable for cube texture mapping to a 2D\\n\\t// vector suitable for 2D texture mapping. This code uses the following layout for the\\n\\t// 2D texture:\\n\\t//\\n\\t// xzXZ\\n\\t//  y Y\\n\\t//\\n\\t// Y - Positive y direction\\n\\t// y - Negative y direction\\n\\t// X - Positive x direction\\n\\t// x - Negative x direction\\n\\t// Z - Positive z direction\\n\\t// z - Negative z direction\\n\\t//\\n\\t// Source and test bed:\\n\\t// https://gist.github.com/tschw/da10c43c467ce8afd0c4\\n\\n\\tvec2 cubeToUV( vec3 v, float texelSizeY ) {\\n\\n\\t\\t// Number of texels to avoid at the edge of each square\\n\\n\\t\\tvec3 absV = abs( v );\\n\\n\\t\\t// Intersect unit cube\\n\\n\\t\\tfloat scaleToCube = 1.0 / max( absV.x, max( absV.y, absV.z ) );\\n\\t\\tabsV *= scaleToCube;\\n\\n\\t\\t// Apply scale to avoid seams\\n\\n\\t\\t// two texels less per square (one texel will do for NEAREST)\\n\\t\\tv *= scaleToCube * ( 1.0 - 2.0 * texelSizeY );\\n\\n\\t\\t// Unwrap\\n\\n\\t\\t// space: -1 ... 1 range for each square\\n\\t\\t//\\n\\t\\t// #X##\\t\\tdim    := ( 4 , 2 )\\n\\t\\t//  # #\\t\\tcenter := ( 1 , 1 )\\n\\n\\t\\tvec2 planar = v.xy;\\n\\n\\t\\tfloat almostATexel = 1.5 * texelSizeY;\\n\\t\\tfloat almostOne = 1.0 - almostATexel;\\n\\n\\t\\tif ( absV.z >= almostOne ) {\\n\\n\\t\\t\\tif ( v.z > 0.0 )\\n\\t\\t\\t\\tplanar.x = 4.0 - v.x;\\n\\n\\t\\t} else if ( absV.x >= almostOne ) {\\n\\n\\t\\t\\tfloat signX = sign( v.x );\\n\\t\\t\\tplanar.x = v.z * signX + 2.0 * signX;\\n\\n\\t\\t} else if ( absV.y >= almostOne ) {\\n\\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\\n\\t\\t}\\n\\n\\t\\t// Transform to UV space\\n\\n\\t\\t// scale := 0.5 / dim\\n\\t\\t// translate := ( center + 0.5 ) / dim\\n\\t\\treturn vec2( 0.125, 0.25 ) * planar + vec2( 0.375, 0.75 );\\n\\n\\t}\\n\\n\\tfloat getPointShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowBias, float shadowRadius, vec4 shadowCoord, float shadowCameraNear, float shadowCameraFar ) {\\n\\n\\t\\tvec2 texelSize = vec2( 1.0 ) / ( shadowMapSize * vec2( 4.0, 2.0 ) );\\n\\n\\t\\t// for point lights, the uniform @vShadowCoord is re-purposed to hold\\n\\t\\t// the vector from the light to the world-space position of the fragment.\\n\\t\\tvec3 lightToPosition = shadowCoord.xyz;\\n\\n\\t\\t// dp = normalized distance from light to fragment position\\n\\t\\tfloat dp = ( length( lightToPosition ) - shadowCameraNear ) / ( shadowCameraFar - shadowCameraNear ); // need to clamp?\\n\\t\\tdp += shadowBias;\\n\\n\\t\\t// bd3D = base direction 3D\\n\\t\\tvec3 bd3D = normalize( lightToPosition );\\n\\n\\t\\t#if defined( SHADOWMAP_TYPE_PCF ) || defined( SHADOWMAP_TYPE_PCF_SOFT ) || defined( SHADOWMAP_TYPE_VSM )\\n\\n\\t\\t\\tvec2 offset = vec2( - 1, 1 ) * shadowRadius * texelSize.y;\\n\\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\\n\\t\\t#else // no percentage-closer filtering\\n\\n\\t\\t\\treturn texture2DCompare( shadowMap, cubeToUV( bd3D, texelSize.y ), dp );\\n\\n\\t\\t#endif\\n\\n\\t}\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/shadowmap_pars_vertex.glsl.js\\nvar shadowmap_pars_vertex_glsl_default = `\\n#ifdef USE_SHADOWMAP\\n\\n\\t#if NUM_DIR_LIGHT_SHADOWS > 0\\n\\n\\t\\tuniform mat4 directionalShadowMatrix[ NUM_DIR_LIGHT_SHADOWS ];\\n\\t\\tvarying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHT_SHADOWS ];\\n\\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\\n\\t\\tuniform DirectionalLightShadow directionalLightShadows[ NUM_DIR_LIGHT_SHADOWS ];\\n\\n\\t#endif\\n\\n\\t#if NUM_SPOT_LIGHT_SHADOWS > 0\\n\\n\\t\\tuniform mat4 spotShadowMatrix[ NUM_SPOT_LIGHT_SHADOWS ];\\n\\t\\tvarying vec4 vSpotShadowCoord[ NUM_SPOT_LIGHT_SHADOWS ];\\n\\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\\n\\t\\tuniform SpotLightShadow spotLightShadows[ NUM_SPOT_LIGHT_SHADOWS ];\\n\\n\\t#endif\\n\\n\\t#if NUM_POINT_LIGHT_SHADOWS > 0\\n\\n\\t\\tuniform mat4 pointShadowMatrix[ NUM_POINT_LIGHT_SHADOWS ];\\n\\t\\tvarying vec4 vPointShadowCoord[ NUM_POINT_LIGHT_SHADOWS ];\\n\\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\\n\\t\\tuniform PointLightShadow pointLightShadows[ NUM_POINT_LIGHT_SHADOWS ];\\n\\n\\t#endif\\n\\n\\t/*\\n\\t#if NUM_RECT_AREA_LIGHTS > 0\\n\\n\\t\\t// TODO (abelnation): uniforms for area light shadows\\n\\n\\t#endif\\n\\t*/\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/shadowmap_vertex.glsl.js\\nvar shadowmap_vertex_glsl_default = `\\n#ifdef USE_SHADOWMAP\\n\\n\\t#if NUM_DIR_LIGHT_SHADOWS > 0 || NUM_SPOT_LIGHT_SHADOWS > 0 || NUM_POINT_LIGHT_SHADOWS > 0\\n\\n\\t\\t// Offsetting the position used for querying occlusion along the world normal can be used to reduce shadow acne.\\n\\t\\tvec3 shadowWorldNormal = inverseTransformDirection( transformedNormal, viewMatrix );\\n\\t\\tvec4 shadowWorldPosition;\\n\\n\\t#endif\\n\\n\\t#if NUM_DIR_LIGHT_SHADOWS > 0\\n\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < NUM_DIR_LIGHT_SHADOWS; i ++ ) {\\n\\n\\t\\tshadowWorldPosition = worldPosition + vec4( shadowWorldNormal * directionalLightShadows[ i ].shadowNormalBias, 0 );\\n\\t\\tvDirectionalShadowCoord[ i ] = directionalShadowMatrix[ i ] * shadowWorldPosition;\\n\\n\\t}\\n\\t#pragma unroll_loop_end\\n\\n\\t#endif\\n\\n\\t#if NUM_SPOT_LIGHT_SHADOWS > 0\\n\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < NUM_SPOT_LIGHT_SHADOWS; i ++ ) {\\n\\n\\t\\tshadowWorldPosition = worldPosition + vec4( shadowWorldNormal * spotLightShadows[ i ].shadowNormalBias, 0 );\\n\\t\\tvSpotShadowCoord[ i ] = spotShadowMatrix[ i ] * shadowWorldPosition;\\n\\n\\t}\\n\\t#pragma unroll_loop_end\\n\\n\\t#endif\\n\\n\\t#if NUM_POINT_LIGHT_SHADOWS > 0\\n\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < NUM_POINT_LIGHT_SHADOWS; i ++ ) {\\n\\n\\t\\tshadowWorldPosition = worldPosition + vec4( shadowWorldNormal * pointLightShadows[ i ].shadowNormalBias, 0 );\\n\\t\\tvPointShadowCoord[ i ] = pointShadowMatrix[ i ] * shadowWorldPosition;\\n\\n\\t}\\n\\t#pragma unroll_loop_end\\n\\n\\t#endif\\n\\n\\t/*\\n\\t#if NUM_RECT_AREA_LIGHTS > 0\\n\\n\\t\\t// TODO (abelnation): update vAreaShadowCoord with area light info\\n\\n\\t#endif\\n\\t*/\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/shadowmask_pars_fragment.glsl.js\\nvar shadowmask_pars_fragment_glsl_default = `\\nfloat getShadowMask() {\\n\\n\\tfloat shadow = 1.0;\\n\\n\\t#ifdef USE_SHADOWMAP\\n\\n\\t#if NUM_DIR_LIGHT_SHADOWS > 0\\n\\n\\tDirectionalLightShadow directionalLight;\\n\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < NUM_DIR_LIGHT_SHADOWS; i ++ ) {\\n\\n\\t\\tdirectionalLight = directionalLightShadows[ i ];\\n\\t\\tshadow *= receiveShadow ? getShadow( directionalShadowMap[ i ], directionalLight.shadowMapSize, directionalLight.shadowBias, directionalLight.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0;\\n\\n\\t}\\n\\t#pragma unroll_loop_end\\n\\n\\t#endif\\n\\n\\t#if NUM_SPOT_LIGHT_SHADOWS > 0\\n\\n\\tSpotLightShadow spotLight;\\n\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < NUM_SPOT_LIGHT_SHADOWS; i ++ ) {\\n\\n\\t\\tspotLight = spotLightShadows[ i ];\\n\\t\\tshadow *= receiveShadow ? getShadow( spotShadowMap[ i ], spotLight.shadowMapSize, spotLight.shadowBias, spotLight.shadowRadius, vSpotShadowCoord[ i ] ) : 1.0;\\n\\n\\t}\\n\\t#pragma unroll_loop_end\\n\\n\\t#endif\\n\\n\\t#if NUM_POINT_LIGHT_SHADOWS > 0\\n\\n\\tPointLightShadow pointLight;\\n\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < NUM_POINT_LIGHT_SHADOWS; i ++ ) {\\n\\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\\n\\t}\\n\\t#pragma unroll_loop_end\\n\\n\\t#endif\\n\\n\\t/*\\n\\t#if NUM_RECT_AREA_LIGHTS > 0\\n\\n\\t\\t// TODO (abelnation): update shadow for Area light\\n\\n\\t#endif\\n\\t*/\\n\\n\\t#endif\\n\\n\\treturn shadow;\\n\\n}\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/skinbase_vertex.glsl.js\\nvar skinbase_vertex_glsl_default = `\\n#ifdef USE_SKINNING\\n\\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\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/skinning_pars_vertex.glsl.js\\nvar skinning_pars_vertex_glsl_default = `\\n#ifdef USE_SKINNING\\n\\n\\tuniform mat4 bindMatrix;\\n\\tuniform mat4 bindMatrixInverse;\\n\\n\\t#ifdef BONE_TEXTURE\\n\\n\\t\\tuniform highp sampler2D boneTexture;\\n\\t\\tuniform int boneTextureSize;\\n\\n\\t\\tmat4 getBoneMatrix( const in float i ) {\\n\\n\\t\\t\\tfloat j = i * 4.0;\\n\\t\\t\\tfloat x = mod( j, float( boneTextureSize ) );\\n\\t\\t\\tfloat y = floor( j / float( boneTextureSize ) );\\n\\n\\t\\t\\tfloat dx = 1.0 / float( boneTextureSize );\\n\\t\\t\\tfloat dy = 1.0 / float( boneTextureSize );\\n\\n\\t\\t\\ty = dy * ( y + 0.5 );\\n\\n\\t\\t\\tvec4 v1 = texture2D( boneTexture, vec2( dx * ( x + 0.5 ), y ) );\\n\\t\\t\\tvec4 v2 = texture2D( boneTexture, vec2( dx * ( x + 1.5 ), y ) );\\n\\t\\t\\tvec4 v3 = texture2D( boneTexture, vec2( dx * ( x + 2.5 ), y ) );\\n\\t\\t\\tvec4 v4 = texture2D( boneTexture, vec2( dx * ( x + 3.5 ), y ) );\\n\\n\\t\\t\\tmat4 bone = mat4( v1, v2, v3, v4 );\\n\\n\\t\\t\\treturn bone;\\n\\n\\t\\t}\\n\\n\\t#else\\n\\n\\t\\tuniform mat4 boneMatrices[ MAX_BONES ];\\n\\n\\t\\tmat4 getBoneMatrix( const in float i ) {\\n\\n\\t\\t\\tmat4 bone = boneMatrices[ int(i) ];\\n\\t\\t\\treturn bone;\\n\\n\\t\\t}\\n\\n\\t#endif\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/skinning_vertex.glsl.js\\nvar skinning_vertex_glsl_default = `\\n#ifdef USE_SKINNING\\n\\n\\tvec4 skinVertex = bindMatrix * vec4( transformed, 1.0 );\\n\\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\\n\\ttransformed = ( bindMatrixInverse * skinned ).xyz;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/skinnormal_vertex.glsl.js\\nvar skinnormal_vertex_glsl_default = `\\n#ifdef USE_SKINNING\\n\\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\\n\\tobjectNormal = vec4( skinMatrix * vec4( objectNormal, 0.0 ) ).xyz;\\n\\n\\t#ifdef USE_TANGENT\\n\\n\\t\\tobjectTangent = vec4( skinMatrix * vec4( objectTangent, 0.0 ) ).xyz;\\n\\n\\t#endif\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/specularmap_fragment.glsl.js\\nvar specularmap_fragment_glsl_default = `\\nfloat specularStrength;\\n\\n#ifdef USE_SPECULARMAP\\n\\n\\tvec4 texelSpecular = texture2D( specularMap, vUv );\\n\\tspecularStrength = texelSpecular.r;\\n\\n#else\\n\\n\\tspecularStrength = 1.0;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/specularmap_pars_fragment.glsl.js\\nvar specularmap_pars_fragment_glsl_default = `\\n#ifdef USE_SPECULARMAP\\n\\n\\tuniform sampler2D specularMap;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/tonemapping_fragment.glsl.js\\nvar tonemapping_fragment_glsl_default = `\\n#if defined( TONE_MAPPING )\\n\\n\\tgl_FragColor.rgb = toneMapping( gl_FragColor.rgb );\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/tonemapping_pars_fragment.glsl.js\\nvar tonemapping_pars_fragment_glsl_default = `\\n#ifndef saturate\\n// <common> may have defined saturate() already\\n#define saturate( a ) clamp( a, 0.0, 1.0 )\\n#endif\\n\\nuniform float toneMappingExposure;\\n\\n// exposure only\\nvec3 LinearToneMapping( vec3 color ) {\\n\\n\\treturn toneMappingExposure * color;\\n\\n}\\n\\n// source: https://www.cs.utah.edu/~reinhard/cdrom/\\nvec3 ReinhardToneMapping( vec3 color ) {\\n\\n\\tcolor *= toneMappingExposure;\\n\\treturn saturate( color / ( vec3( 1.0 ) + color ) );\\n\\n}\\n\\n// source: http://filmicworlds.com/blog/filmic-tonemapping-operators/\\nvec3 OptimizedCineonToneMapping( vec3 color ) {\\n\\n\\t// optimized filmic operator by Jim Hejl and Richard Burgess-Dawson\\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\\n}\\n\\n// source: https://github.com/selfshadow/ltc_code/blob/master/webgl/shaders/ltc/ltc_blit.fs\\nvec3 RRTAndODTFit( vec3 v ) {\\n\\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\\n}\\n\\n// this implementation of ACES is modified to accommodate a brighter viewing environment.\\n// the scale factor of 1/0.6 is subjective. see discussion in #19621.\\n\\nvec3 ACESFilmicToneMapping( vec3 color ) {\\n\\n\\t// sRGB => XYZ => D65_2_D60 => AP1 => RRT_SAT\\n\\tconst mat3 ACESInputMat = mat3(\\n\\t\\tvec3( 0.59719, 0.07600, 0.02840 ), // transposed from source\\n\\t\\tvec3( 0.35458, 0.90834, 0.13383 ),\\n\\t\\tvec3( 0.04823, 0.01566, 0.83777 )\\n\\t);\\n\\n\\t// ODT_SAT => XYZ => D60_2_D65 => sRGB\\n\\tconst mat3 ACESOutputMat = mat3(\\n\\t\\tvec3(  1.60475, -0.10208, -0.00327 ), // transposed from source\\n\\t\\tvec3( -0.53108,  1.10813, -0.07276 ),\\n\\t\\tvec3( -0.07367, -0.00605,  1.07602 )\\n\\t);\\n\\n\\tcolor *= toneMappingExposure / 0.6;\\n\\n\\tcolor = ACESInputMat * color;\\n\\n\\t// Apply RRT and ODT\\n\\tcolor = RRTAndODTFit( color );\\n\\n\\tcolor = ACESOutputMat * color;\\n\\n\\t// Clamp to [0, 1]\\n\\treturn saturate( color );\\n\\n}\\n\\nvec3 CustomToneMapping( vec3 color ) { return color; }\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/transmission_fragment.glsl.js\\nvar transmission_fragment_glsl_default = `\\n#ifdef USE_TRANSMISSION\\n\\n\\tfloat transmissionAlpha = 1.0;\\n\\tfloat transmissionFactor = transmission;\\n\\tfloat thicknessFactor = thickness;\\n\\n\\t#ifdef USE_TRANSMISSIONMAP\\n\\n\\t\\ttransmissionFactor *= texture2D( transmissionMap, vUv ).r;\\n\\n\\t#endif\\n\\n\\t#ifdef USE_THICKNESSMAP\\n\\n\\t\\tthicknessFactor *= texture2D( thicknessMap, vUv ).g;\\n\\n\\t#endif\\n\\n\\tvec3 pos = vWorldPosition;\\n\\tvec3 v = normalize( cameraPosition - pos );\\n\\tvec3 n = inverseTransformDirection( normal, viewMatrix );\\n\\n\\tvec4 transmission = getIBLVolumeRefraction(\\n\\t\\tn, v, roughnessFactor, material.diffuseColor, material.specularColor, material.specularF90,\\n\\t\\tpos, modelMatrix, viewMatrix, projectionMatrix, ior, thicknessFactor,\\n\\t\\tattenuationTint, attenuationDistance );\\n\\n\\ttotalDiffuse = mix( totalDiffuse, transmission.rgb, transmissionFactor );\\n\\ttransmissionAlpha = mix( transmissionAlpha, transmission.a, transmissionFactor );\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/transmission_pars_fragment.glsl.js\\nvar transmission_pars_fragment_glsl_default = `\\n#ifdef USE_TRANSMISSION\\n\\n\\t// Transmission code is based on glTF-Sampler-Viewer\\n\\t// https://github.com/KhronosGroup/glTF-Sample-Viewer\\n\\n\\tuniform float transmission;\\n\\tuniform float thickness;\\n\\tuniform float attenuationDistance;\\n\\tuniform vec3 attenuationTint;\\n\\n\\t#ifdef USE_TRANSMISSIONMAP\\n\\n\\t\\tuniform sampler2D transmissionMap;\\n\\n\\t#endif\\n\\n\\t#ifdef USE_THICKNESSMAP\\n\\n\\t\\tuniform sampler2D thicknessMap;\\n\\n\\t#endif\\n\\n\\tuniform vec2 transmissionSamplerSize;\\n\\tuniform sampler2D transmissionSamplerMap;\\n\\n\\tuniform mat4 modelMatrix;\\n\\tuniform mat4 projectionMatrix;\\n\\n\\tvarying vec3 vWorldPosition;\\n\\n\\tvec3 getVolumeTransmissionRay( vec3 n, vec3 v, float thickness, float ior, mat4 modelMatrix ) {\\n\\n\\t\\t// Direction of refracted light.\\n\\t\\tvec3 refractionVector = refract( - v, normalize( n ), 1.0 / ior );\\n\\n\\t\\t// Compute rotation-independant scaling of the model matrix.\\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\\n\\t\\t// The thickness is specified in local space.\\n\\t\\treturn normalize( refractionVector ) * thickness * modelScale;\\n\\n\\t}\\n\\n\\tfloat applyIorToRoughness( float roughness, float ior ) {\\n\\n\\t\\t// Scale roughness with IOR so that an IOR of 1.0 results in no microfacet refraction and\\n\\t\\t// an IOR of 1.5 results in the default amount of microfacet refraction.\\n\\t\\treturn roughness * clamp( ior * 2.0 - 2.0, 0.0, 1.0 );\\n\\n\\t}\\n\\n\\tvec4 getTransmissionSample( vec2 fragCoord, float roughness, float ior ) {\\n\\n\\t\\tfloat framebufferLod = log2( transmissionSamplerSize.x ) * applyIorToRoughness( roughness, ior );\\n\\n\\t\\t#ifdef TEXTURE_LOD_EXT\\n\\n\\t\\t\\treturn texture2DLodEXT( transmissionSamplerMap, fragCoord.xy, framebufferLod );\\n\\n\\t\\t#else\\n\\n\\t\\t\\treturn texture2D( transmissionSamplerMap, fragCoord.xy, framebufferLod );\\n\\n\\t\\t#endif\\n\\n\\t}\\n\\n\\tvec3 applyVolumeAttenuation( vec3 radiance, float transmissionDistance, vec3 attenuationColor, float attenuationDistance ) {\\n\\n\\t\\tif ( attenuationDistance == 0.0 ) {\\n\\n\\t\\t\\t// Attenuation distance is +\\\\u221E (which we indicate by zero), i.e. the transmitted color is not attenuated at all.\\n\\t\\t\\treturn radiance;\\n\\n\\t\\t} else {\\n\\n\\t\\t\\t// Compute light attenuation using Beer's law.\\n\\t\\t\\tvec3 attenuationCoefficient = -log( attenuationColor ) / attenuationDistance;\\n\\t\\t\\tvec3 transmittance = exp( - attenuationCoefficient * transmissionDistance ); // Beer's law\\n\\t\\t\\treturn transmittance * radiance;\\n\\n\\t\\t}\\n\\n\\t}\\n\\n\\tvec4 getIBLVolumeRefraction( vec3 n, vec3 v, float roughness, vec3 diffuseColor, vec3 specularColor, float specularF90,\\n\\t\\tvec3 position, mat4 modelMatrix, mat4 viewMatrix, mat4 projMatrix, float ior, float thickness,\\n\\t\\tvec3 attenuationColor, float attenuationDistance ) {\\n\\n\\t\\tvec3 transmissionRay = getVolumeTransmissionRay( n, v, thickness, ior, modelMatrix );\\n\\t\\tvec3 refractedRayExit = position + transmissionRay;\\n\\n\\t\\t// Project refracted vector on the framebuffer, while mapping to normalized device coordinates.\\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\\n\\t\\t// Sample framebuffer to get pixel the refracted ray hits.\\n\\t\\tvec4 transmittedLight = getTransmissionSample( refractionCoords, roughness, ior );\\n\\n\\t\\tvec3 attenuatedColor = applyVolumeAttenuation( transmittedLight.rgb, length( transmissionRay ), attenuationColor, attenuationDistance );\\n\\n\\t\\t// Get the specular component.\\n\\t\\tvec3 F = EnvironmentBRDF( n, v, specularColor, specularF90, roughness );\\n\\n\\t\\treturn vec4( ( 1.0 - F ) * attenuatedColor * diffuseColor, transmittedLight.a );\\n\\n\\t}\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/uv_pars_fragment.glsl.js\\nvar uv_pars_fragment_glsl_default = `\\n#if ( defined( USE_UV ) && ! defined( UVS_VERTEX_ONLY ) )\\n\\n\\tvarying vec2 vUv;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/uv_pars_vertex.glsl.js\\nvar uv_pars_vertex_glsl_default = `\\n#ifdef USE_UV\\n\\n\\t#ifdef UVS_VERTEX_ONLY\\n\\n\\t\\tvec2 vUv;\\n\\n\\t#else\\n\\n\\t\\tvarying vec2 vUv;\\n\\n\\t#endif\\n\\n\\tuniform mat3 uvTransform;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/uv_vertex.glsl.js\\nvar uv_vertex_glsl_default = `\\n#ifdef USE_UV\\n\\n\\tvUv = ( uvTransform * vec3( uv, 1 ) ).xy;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/uv2_pars_fragment.glsl.js\\nvar uv2_pars_fragment_glsl_default = `\\n#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP )\\n\\n\\tvarying vec2 vUv2;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/uv2_pars_vertex.glsl.js\\nvar uv2_pars_vertex_glsl_default = `\\n#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP )\\n\\n\\tattribute vec2 uv2;\\n\\tvarying vec2 vUv2;\\n\\n\\tuniform mat3 uv2Transform;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/uv2_vertex.glsl.js\\nvar uv2_vertex_glsl_default = `\\n#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP )\\n\\n\\tvUv2 = ( uv2Transform * vec3( uv2, 1 ) ).xy;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk/worldpos_vertex.glsl.js\\nvar worldpos_vertex_glsl_default = `\\n#if defined( USE_ENVMAP ) || defined( DISTANCE ) || defined ( USE_SHADOWMAP ) || defined ( USE_TRANSMISSION )\\n\\n\\tvec4 worldPosition = vec4( transformed, 1.0 );\\n\\n\\t#ifdef USE_INSTANCING\\n\\n\\t\\tworldPosition = instanceMatrix * worldPosition;\\n\\n\\t#endif\\n\\n\\tworldPosition = modelMatrix * worldPosition;\\n\\n#endif\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderLib/background.glsl.js\\nvar vertex = `\\nvarying vec2 vUv;\\nuniform mat3 uvTransform;\\n\\nvoid main() {\\n\\n\\tvUv = ( uvTransform * vec3( uv, 1 ) ).xy;\\n\\n\\tgl_Position = vec4( position.xy, 1.0, 1.0 );\\n\\n}\\n`;\\nvar fragment = `\\nuniform sampler2D t2D;\\n\\nvarying vec2 vUv;\\n\\nvoid main() {\\n\\n\\tvec4 texColor = texture2D( t2D, vUv );\\n\\n\\tgl_FragColor = mapTexelToLinear( texColor );\\n\\n\\t#include <tonemapping_fragment>\\n\\t#include <encodings_fragment>\\n\\n}\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderLib/cube.glsl.js\\nvar vertex2 = `\\nvarying vec3 vWorldDirection;\\n\\n#include <common>\\n\\nvoid main() {\\n\\n\\tvWorldDirection = transformDirection( position, modelMatrix );\\n\\n\\t#include <begin_vertex>\\n\\t#include <project_vertex>\\n\\n\\tgl_Position.z = gl_Position.w; // set z to camera.far\\n\\n}\\n`;\\nvar fragment2 = `\\n#include <envmap_common_pars_fragment>\\nuniform float opacity;\\n\\nvarying vec3 vWorldDirection;\\n\\n#include <cube_uv_reflection_fragment>\\n\\nvoid main() {\\n\\n\\tvec3 vReflect = vWorldDirection;\\n\\t#include <envmap_fragment>\\n\\n\\tgl_FragColor = envColor;\\n\\tgl_FragColor.a *= opacity;\\n\\n\\t#include <tonemapping_fragment>\\n\\t#include <encodings_fragment>\\n\\n}\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderLib/depth.glsl.js\\nvar vertex3 = `\\n#include <common>\\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>\\n\\n// This is used for computing an equivalent of gl_FragCoord.z that is as high precision as possible.\\n// Some platforms compute gl_FragCoord at a lower precision which makes the manually computed value better for\\n// depth-based postprocessing effects. Reproduced on iPad with A10 processor / iPadOS 13.3.1.\\nvarying vec2 vHighPrecisionZW;\\n\\nvoid main() {\\n\\n\\t#include <uv_vertex>\\n\\n\\t#include <skinbase_vertex>\\n\\n\\t#ifdef USE_DISPLACEMENTMAP\\n\\n\\t\\t#include <beginnormal_vertex>\\n\\t\\t#include <morphnormal_vertex>\\n\\t\\t#include <skinnormal_vertex>\\n\\n\\t#endif\\n\\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\\n\\tvHighPrecisionZW = gl_Position.zw;\\n\\n}\\n`;\\nvar fragment3 = `\\n#if DEPTH_PACKING == 3200\\n\\n\\tuniform float opacity;\\n\\n#endif\\n\\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 <logdepthbuf_pars_fragment>\\n#include <clipping_planes_pars_fragment>\\n\\nvarying vec2 vHighPrecisionZW;\\n\\nvoid main() {\\n\\n\\t#include <clipping_planes_fragment>\\n\\n\\tvec4 diffuseColor = vec4( 1.0 );\\n\\n\\t#if DEPTH_PACKING == 3200\\n\\n\\t\\tdiffuseColor.a = opacity;\\n\\n\\t#endif\\n\\n\\t#include <map_fragment>\\n\\t#include <alphamap_fragment>\\n\\t#include <alphatest_fragment>\\n\\n\\t#include <logdepthbuf_fragment>\\n\\n\\t// Higher precision equivalent of gl_FragCoord.z. This assumes depthRange has been left to its default values.\\n\\tfloat fragCoordZ = 0.5 * vHighPrecisionZW[0] / vHighPrecisionZW[1] + 0.5;\\n\\n\\t#if DEPTH_PACKING == 3200\\n\\n\\t\\tgl_FragColor = vec4( vec3( 1.0 - fragCoordZ ), opacity );\\n\\n\\t#elif DEPTH_PACKING == 3201\\n\\n\\t\\tgl_FragColor = packDepthToRGBA( fragCoordZ );\\n\\n\\t#endif\\n\\n}\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderLib/distanceRGBA.glsl.js\\nvar vertex4 = `\\n#define DISTANCE\\n\\nvarying vec3 vWorldPosition;\\n\\n#include <common>\\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>\\n\\nvoid main() {\\n\\n\\t#include <uv_vertex>\\n\\n\\t#include <skinbase_vertex>\\n\\n\\t#ifdef USE_DISPLACEMENTMAP\\n\\n\\t\\t#include <beginnormal_vertex>\\n\\t\\t#include <morphnormal_vertex>\\n\\t\\t#include <skinnormal_vertex>\\n\\n\\t#endif\\n\\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\\n\\tvWorldPosition = worldPosition.xyz;\\n\\n}\\n`;\\nvar fragment4 = `\\n#define DISTANCE\\n\\nuniform vec3 referencePosition;\\nuniform float nearDistance;\\nuniform float farDistance;\\nvarying vec3 vWorldPosition;\\n\\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 <clipping_planes_pars_fragment>\\n\\nvoid main () {\\n\\n\\t#include <clipping_planes_fragment>\\n\\n\\tvec4 diffuseColor = vec4( 1.0 );\\n\\n\\t#include <map_fragment>\\n\\t#include <alphamap_fragment>\\n\\t#include <alphatest_fragment>\\n\\n\\tfloat dist = length( vWorldPosition - referencePosition );\\n\\tdist = ( dist - nearDistance ) / ( farDistance - nearDistance );\\n\\tdist = saturate( dist ); // clamp to [ 0, 1 ]\\n\\n\\tgl_FragColor = packDepthToRGBA( dist );\\n\\n}\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderLib/equirect.glsl.js\\nvar vertex5 = `\\nvarying vec3 vWorldDirection;\\n\\n#include <common>\\n\\nvoid main() {\\n\\n\\tvWorldDirection = transformDirection( position, modelMatrix );\\n\\n\\t#include <begin_vertex>\\n\\t#include <project_vertex>\\n\\n}\\n`;\\nvar fragment5 = `\\nuniform sampler2D tEquirect;\\n\\nvarying vec3 vWorldDirection;\\n\\n#include <common>\\n\\nvoid main() {\\n\\n\\tvec3 direction = normalize( vWorldDirection );\\n\\n\\tvec2 sampleUV = equirectUv( direction );\\n\\n\\tvec4 texColor = texture2D( tEquirect, sampleUV );\\n\\n\\tgl_FragColor = mapTexelToLinear( texColor );\\n\\n\\t#include <tonemapping_fragment>\\n\\t#include <encodings_fragment>\\n\\n}\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderLib/linedashed.glsl.js\\nvar vertex6 = `\\nuniform float scale;\\nattribute float lineDistance;\\n\\nvarying float vLineDistance;\\n\\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\\nvoid main() {\\n\\n\\tvLineDistance = scale * lineDistance;\\n\\n\\t#include <color_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\\n}\\n`;\\nvar fragment6 = `\\nuniform vec3 diffuse;\\nuniform float opacity;\\n\\nuniform float dashSize;\\nuniform float totalSize;\\n\\nvarying float vLineDistance;\\n\\n#include <common>\\n#include <color_pars_fragment>\\n#include <fog_pars_fragment>\\n#include <logdepthbuf_pars_fragment>\\n#include <clipping_planes_pars_fragment>\\n\\nvoid main() {\\n\\n\\t#include <clipping_planes_fragment>\\n\\n\\tif ( mod( vLineDistance, totalSize ) > dashSize ) {\\n\\n\\t\\tdiscard;\\n\\n\\t}\\n\\n\\tvec3 outgoingLight = vec3( 0.0 );\\n\\tvec4 diffuseColor = vec4( diffuse, opacity );\\n\\n\\t#include <logdepthbuf_fragment>\\n\\t#include <color_fragment>\\n\\n\\toutgoingLight = diffuseColor.rgb; // simple shader\\n\\n\\t#include <output_fragment>\\n\\t#include <tonemapping_fragment>\\n\\t#include <encodings_fragment>\\n\\t#include <fog_fragment>\\n\\t#include <premultiplied_alpha_fragment>\\n\\n}\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderLib/meshbasic.glsl.js\\nvar vertex7 = `\\n#include <common>\\n#include <uv_pars_vertex>\\n#include <uv2_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>\\n\\nvoid main() {\\n\\n\\t#include <uv_vertex>\\n\\t#include <uv2_vertex>\\n\\t#include <color_vertex>\\n\\n\\t#if defined ( USE_ENVMAP ) || defined ( USE_SKINNING )\\n\\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\\n\\t#endif\\n\\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\\n\\t#include <worldpos_vertex>\\n\\t#include <envmap_vertex>\\n\\t#include <fog_vertex>\\n\\n}\\n`;\\nvar fragment7 = `\\nuniform vec3 diffuse;\\nuniform float opacity;\\n\\n#ifndef FLAT_SHADED\\n\\n\\tvarying vec3 vNormal;\\n\\n#endif\\n\\n#include <common>\\n#include <dithering_pars_fragment>\\n#include <color_pars_fragment>\\n#include <uv_pars_fragment>\\n#include <uv2_pars_fragment>\\n#include <map_pars_fragment>\\n#include <alphamap_pars_fragment>\\n#include <alphatest_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 <cube_uv_reflection_fragment>\\n#include <fog_pars_fragment>\\n#include <specularmap_pars_fragment>\\n#include <logdepthbuf_pars_fragment>\\n#include <clipping_planes_pars_fragment>\\n\\nvoid main() {\\n\\n\\t#include <clipping_planes_fragment>\\n\\n\\tvec4 diffuseColor = vec4( diffuse, opacity );\\n\\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 <specularmap_fragment>\\n\\n\\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\\n\\n\\t// accumulation (baked indirect lighting only)\\n\\t#ifdef USE_LIGHTMAP\\n\\n\\t\\tvec4 lightMapTexel= texture2D( lightMap, vUv2 );\\n\\t\\treflectedLight.indirectDiffuse += lightMapTexelToLinear( lightMapTexel ).rgb * lightMapIntensity;\\n\\n\\t#else\\n\\n\\t\\treflectedLight.indirectDiffuse += vec3( 1.0 );\\n\\n\\t#endif\\n\\n\\t// modulation\\n\\t#include <aomap_fragment>\\n\\n\\treflectedLight.indirectDiffuse *= diffuseColor.rgb;\\n\\n\\tvec3 outgoingLight = reflectedLight.indirectDiffuse;\\n\\n\\t#include <envmap_fragment>\\n\\n\\t#include <output_fragment>\\n\\t#include <tonemapping_fragment>\\n\\t#include <encodings_fragment>\\n\\t#include <fog_fragment>\\n\\t#include <premultiplied_alpha_fragment>\\n\\t#include <dithering_fragment>\\n\\n}\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderLib/meshlambert.glsl.js\\nvar vertex8 = `\\n#define LAMBERT\\n\\nvarying vec3 vLightFront;\\nvarying vec3 vIndirectFront;\\n\\n#ifdef DOUBLE_SIDED\\n\\tvarying vec3 vLightBack;\\n\\tvarying vec3 vIndirectBack;\\n#endif\\n\\n#include <common>\\n#include <uv_pars_vertex>\\n#include <uv2_pars_vertex>\\n#include <envmap_pars_vertex>\\n#include <bsdfs>\\n#include <lights_pars_begin>\\n#include <color_pars_vertex>\\n#include <fog_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>\\n\\nvoid main() {\\n\\n\\t#include <uv_vertex>\\n\\t#include <uv2_vertex>\\n\\t#include <color_vertex>\\n\\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\\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\\n\\t#include <worldpos_vertex>\\n\\t#include <envmap_vertex>\\n\\t#include <lights_lambert_vertex>\\n\\t#include <shadowmap_vertex>\\n\\t#include <fog_vertex>\\n}\\n`;\\nvar fragment8 = `\\nuniform vec3 diffuse;\\nuniform vec3 emissive;\\nuniform float opacity;\\n\\nvarying vec3 vLightFront;\\nvarying vec3 vIndirectFront;\\n\\n#ifdef DOUBLE_SIDED\\n\\tvarying vec3 vLightBack;\\n\\tvarying vec3 vIndirectBack;\\n#endif\\n\\n\\n#include <common>\\n#include <packing>\\n#include <dithering_pars_fragment>\\n#include <color_pars_fragment>\\n#include <uv_pars_fragment>\\n#include <uv2_pars_fragment>\\n#include <map_pars_fragment>\\n#include <alphamap_pars_fragment>\\n#include <alphatest_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 <cube_uv_reflection_fragment>\\n#include <bsdfs>\\n#include <lights_pars_begin>\\n#include <fog_pars_fragment>\\n#include <shadowmap_pars_fragment>\\n#include <shadowmask_pars_fragment>\\n#include <specularmap_pars_fragment>\\n#include <logdepthbuf_pars_fragment>\\n#include <clipping_planes_pars_fragment>\\n\\nvoid main() {\\n\\n\\t#include <clipping_planes_fragment>\\n\\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\\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 <specularmap_fragment>\\n\\t#include <emissivemap_fragment>\\n\\n\\t// accumulation\\n\\n\\t#ifdef DOUBLE_SIDED\\n\\n\\t\\treflectedLight.indirectDiffuse += ( gl_FrontFacing ) ? vIndirectFront : vIndirectBack;\\n\\n\\t#else\\n\\n\\t\\treflectedLight.indirectDiffuse += vIndirectFront;\\n\\n\\t#endif\\n\\n\\t#include <lightmap_fragment>\\n\\n\\treflectedLight.indirectDiffuse *= BRDF_Lambert( diffuseColor.rgb );\\n\\n\\t#ifdef DOUBLE_SIDED\\n\\n\\t\\treflectedLight.directDiffuse = ( gl_FrontFacing ) ? vLightFront : vLightBack;\\n\\n\\t#else\\n\\n\\t\\treflectedLight.directDiffuse = vLightFront;\\n\\n\\t#endif\\n\\n\\treflectedLight.directDiffuse *= BRDF_Lambert( diffuseColor.rgb ) * getShadowMask();\\n\\n\\t// modulation\\n\\n\\t#include <aomap_fragment>\\n\\n\\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + totalEmissiveRadiance;\\n\\n\\t#include <envmap_fragment>\\n\\n\\t#include <output_fragment>\\n\\t#include <tonemapping_fragment>\\n\\t#include <encodings_fragment>\\n\\t#include <fog_fragment>\\n\\t#include <premultiplied_alpha_fragment>\\n\\t#include <dithering_fragment>\\n}\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderLib/meshmatcap.glsl.js\\nvar vertex9 = `\\n#define MATCAP\\n\\nvarying vec3 vViewPosition;\\n\\n#include <common>\\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\\n#include <logdepthbuf_pars_vertex>\\n#include <clipping_planes_pars_vertex>\\n\\nvoid main() {\\n\\n\\t#include <uv_vertex>\\n\\t#include <color_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\\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\\n\\t#include <logdepthbuf_vertex>\\n\\t#include <clipping_planes_vertex>\\n\\t#include <fog_vertex>\\n\\n\\tvViewPosition = - mvPosition.xyz;\\n\\n}\\n`;\\nvar fragment9 = `\\n#define MATCAP\\n\\nuniform vec3 diffuse;\\nuniform float opacity;\\nuniform sampler2D matcap;\\n\\nvarying vec3 vViewPosition;\\n\\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 <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>\\n\\nvoid main() {\\n\\n\\t#include <clipping_planes_fragment>\\n\\n\\tvec4 diffuseColor = vec4( diffuse, opacity );\\n\\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 <normal_fragment_begin>\\n\\t#include <normal_fragment_maps>\\n\\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; // 0.495 to remove artifacts caused by undersized matcap disks\\n\\n\\t#ifdef USE_MATCAP\\n\\n\\t\\tvec4 matcapColor = texture2D( matcap, uv );\\n\\t\\tmatcapColor = matcapTexelToLinear( matcapColor );\\n\\n\\t#else\\n\\n\\t\\tvec4 matcapColor = vec4( 1.0 );\\n\\n\\t#endif\\n\\n\\tvec3 outgoingLight = diffuseColor.rgb * matcapColor.rgb;\\n\\n\\t#include <output_fragment>\\n\\t#include <tonemapping_fragment>\\n\\t#include <encodings_fragment>\\n\\t#include <fog_fragment>\\n\\t#include <premultiplied_alpha_fragment>\\n\\t#include <dithering_fragment>\\n\\n}\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderLib/meshnormal.glsl.js\\nvar vertex10 = `\\n#define NORMAL\\n\\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( TANGENTSPACE_NORMALMAP )\\n\\n\\tvarying vec3 vViewPosition;\\n\\n#endif\\n\\n#include <common>\\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>\\n\\nvoid main() {\\n\\n\\t#include <uv_vertex>\\n\\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\\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\\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( TANGENTSPACE_NORMALMAP )\\n\\n\\tvViewPosition = - mvPosition.xyz;\\n\\n#endif\\n\\n}\\n`;\\nvar fragment10 = `\\n#define NORMAL\\n\\nuniform float opacity;\\n\\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( TANGENTSPACE_NORMALMAP )\\n\\n\\tvarying vec3 vViewPosition;\\n\\n#endif\\n\\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>\\n\\nvoid main() {\\n\\n\\t#include <clipping_planes_fragment>\\n\\t#include <logdepthbuf_fragment>\\n\\t#include <normal_fragment_begin>\\n\\t#include <normal_fragment_maps>\\n\\n\\tgl_FragColor = vec4( packNormalToRGB( normal ), opacity );\\n\\n}\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderLib/meshphong.glsl.js\\nvar vertex11 = `\\n#define PHONG\\n\\nvarying vec3 vViewPosition;\\n\\n#include <common>\\n#include <uv_pars_vertex>\\n#include <uv2_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>\\n\\nvoid main() {\\n\\n\\t#include <uv_vertex>\\n\\t#include <uv2_vertex>\\n\\t#include <color_vertex>\\n\\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\\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\\n\\tvViewPosition = - mvPosition.xyz;\\n\\n\\t#include <worldpos_vertex>\\n\\t#include <envmap_vertex>\\n\\t#include <shadowmap_vertex>\\n\\t#include <fog_vertex>\\n\\n}\\n`;\\nvar fragment11 = `\\n#define PHONG\\n\\nuniform vec3 diffuse;\\nuniform vec3 emissive;\\nuniform vec3 specular;\\nuniform float shininess;\\nuniform float opacity;\\n\\n#include <common>\\n#include <packing>\\n#include <dithering_pars_fragment>\\n#include <color_pars_fragment>\\n#include <uv_pars_fragment>\\n#include <uv2_pars_fragment>\\n#include <map_pars_fragment>\\n#include <alphamap_pars_fragment>\\n#include <alphatest_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 <cube_uv_reflection_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>\\n\\nvoid main() {\\n\\n\\t#include <clipping_planes_fragment>\\n\\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\\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 <specularmap_fragment>\\n\\t#include <normal_fragment_begin>\\n\\t#include <normal_fragment_maps>\\n\\t#include <emissivemap_fragment>\\n\\n\\t// accumulation\\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\\n\\t// modulation\\n\\t#include <aomap_fragment>\\n\\n\\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + reflectedLight.directSpecular + reflectedLight.indirectSpecular + totalEmissiveRadiance;\\n\\n\\t#include <envmap_fragment>\\n\\t#include <output_fragment>\\n\\t#include <tonemapping_fragment>\\n\\t#include <encodings_fragment>\\n\\t#include <fog_fragment>\\n\\t#include <premultiplied_alpha_fragment>\\n\\t#include <dithering_fragment>\\n\\n}\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderLib/meshphysical.glsl.js\\nvar vertex12 = `\\n#define STANDARD\\n\\nvarying vec3 vViewPosition;\\n\\n#ifdef USE_TRANSMISSION\\n\\n\\tvarying vec3 vWorldPosition;\\n\\n#endif\\n\\n#include <common>\\n#include <uv_pars_vertex>\\n#include <uv2_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>\\n\\nvoid main() {\\n\\n\\t#include <uv_vertex>\\n\\t#include <uv2_vertex>\\n\\t#include <color_vertex>\\n\\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\\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\\n\\tvViewPosition = - mvPosition.xyz;\\n\\n\\t#include <worldpos_vertex>\\n\\t#include <shadowmap_vertex>\\n\\t#include <fog_vertex>\\n\\n#ifdef USE_TRANSMISSION\\n\\n\\tvWorldPosition = worldPosition.xyz;\\n\\n#endif\\n}\\n`;\\nvar fragment12 = `\\n#define STANDARD\\n\\n#ifdef PHYSICAL\\n\\t#define IOR\\n\\t#define SPECULAR\\n#endif\\n\\nuniform vec3 diffuse;\\nuniform vec3 emissive;\\nuniform float roughness;\\nuniform float metalness;\\nuniform float opacity;\\n\\n#ifdef IOR\\n\\tuniform float ior;\\n#endif\\n\\n#ifdef SPECULAR\\n\\tuniform float specularIntensity;\\n\\tuniform vec3 specularTint;\\n\\n\\t#ifdef USE_SPECULARINTENSITYMAP\\n\\t\\tuniform sampler2D specularIntensityMap;\\n\\t#endif\\n\\n\\t#ifdef USE_SPECULARTINTMAP\\n\\t\\tuniform sampler2D specularTintMap;\\n\\t#endif\\n#endif\\n\\n#ifdef USE_CLEARCOAT\\n\\tuniform float clearcoat;\\n\\tuniform float clearcoatRoughness;\\n#endif\\n\\n#ifdef USE_SHEEN\\n\\tuniform vec3 sheenTint;\\n\\tuniform float sheenRoughness;\\n#endif\\n\\nvarying vec3 vViewPosition;\\n\\n#include <common>\\n#include <packing>\\n#include <dithering_pars_fragment>\\n#include <color_pars_fragment>\\n#include <uv_pars_fragment>\\n#include <uv2_pars_fragment>\\n#include <map_pars_fragment>\\n#include <alphamap_pars_fragment>\\n#include <alphatest_pars_fragment>\\n#include <aomap_pars_fragment>\\n#include <lightmap_pars_fragment>\\n#include <emissivemap_pars_fragment>\\n#include <bsdfs>\\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 <roughnessmap_pars_fragment>\\n#include <metalnessmap_pars_fragment>\\n#include <logdepthbuf_pars_fragment>\\n#include <clipping_planes_pars_fragment>\\n\\nvoid main() {\\n\\n\\t#include <clipping_planes_fragment>\\n\\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\\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 <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\\n\\t// accumulation\\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\\n\\t// modulation\\n\\t#include <aomap_fragment>\\n\\n\\tvec3 totalDiffuse = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse;\\n\\tvec3 totalSpecular = reflectedLight.directSpecular + reflectedLight.indirectSpecular;\\n\\n\\t#include <transmission_fragment>\\n\\n\\tvec3 outgoingLight = totalDiffuse + totalSpecular + totalEmissiveRadiance;\\n\\n\\t#ifdef USE_CLEARCOAT\\n\\n\\t\\tfloat dotNVcc = saturate( dot( geometry.clearcoatNormal, geometry.viewDir ) );\\n\\n\\t\\tvec3 Fcc = F_Schlick( material.clearcoatF0, material.clearcoatF90, dotNVcc );\\n\\n\\t\\toutgoingLight = outgoingLight * ( 1.0 - clearcoat * Fcc ) + clearcoatSpecular * clearcoat;\\n\\n\\t#endif\\n\\n\\t#include <output_fragment>\\n\\t#include <tonemapping_fragment>\\n\\t#include <encodings_fragment>\\n\\t#include <fog_fragment>\\n\\t#include <premultiplied_alpha_fragment>\\n\\t#include <dithering_fragment>\\n\\n}\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderLib/meshtoon.glsl.js\\nvar vertex13 = `\\n#define TOON\\n\\nvarying vec3 vViewPosition;\\n\\n#include <common>\\n#include <uv_pars_vertex>\\n#include <uv2_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>\\n\\nvoid main() {\\n\\n\\t#include <uv_vertex>\\n\\t#include <uv2_vertex>\\n\\t#include <color_vertex>\\n\\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\\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\\n\\tvViewPosition = - mvPosition.xyz;\\n\\n\\t#include <worldpos_vertex>\\n\\t#include <shadowmap_vertex>\\n\\t#include <fog_vertex>\\n\\n}\\n`;\\nvar fragment13 = `\\n#define TOON\\n\\nuniform vec3 diffuse;\\nuniform vec3 emissive;\\nuniform float opacity;\\n\\n#include <common>\\n#include <packing>\\n#include <dithering_pars_fragment>\\n#include <color_pars_fragment>\\n#include <uv_pars_fragment>\\n#include <uv2_pars_fragment>\\n#include <map_pars_fragment>\\n#include <alphamap_pars_fragment>\\n#include <alphatest_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>\\n\\nvoid main() {\\n\\n\\t#include <clipping_planes_fragment>\\n\\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\\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 <normal_fragment_begin>\\n\\t#include <normal_fragment_maps>\\n\\t#include <emissivemap_fragment>\\n\\n\\t// accumulation\\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\\n\\t// modulation\\n\\t#include <aomap_fragment>\\n\\n\\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + totalEmissiveRadiance;\\n\\n\\t#include <output_fragment>\\n\\t#include <tonemapping_fragment>\\n\\t#include <encodings_fragment>\\n\\t#include <fog_fragment>\\n\\t#include <premultiplied_alpha_fragment>\\n\\t#include <dithering_fragment>\\n\\n}\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderLib/points.glsl.js\\nvar vertex14 = `\\nuniform float size;\\nuniform float scale;\\n\\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\\nvoid main() {\\n\\n\\t#include <color_vertex>\\n\\t#include <begin_vertex>\\n\\t#include <morphtarget_vertex>\\n\\t#include <project_vertex>\\n\\n\\tgl_PointSize = size;\\n\\n\\t#ifdef USE_SIZEATTENUATION\\n\\n\\t\\tbool isPerspective = isPerspectiveMatrix( projectionMatrix );\\n\\n\\t\\tif ( isPerspective ) gl_PointSize *= ( scale / - mvPosition.z );\\n\\n\\t#endif\\n\\n\\t#include <logdepthbuf_vertex>\\n\\t#include <clipping_planes_vertex>\\n\\t#include <worldpos_vertex>\\n\\t#include <fog_vertex>\\n\\n}\\n`;\\nvar fragment14 = `\\nuniform vec3 diffuse;\\nuniform float opacity;\\n\\n#include <common>\\n#include <color_pars_fragment>\\n#include <map_particle_pars_fragment>\\n#include <alphatest_pars_fragment>\\n#include <fog_pars_fragment>\\n#include <logdepthbuf_pars_fragment>\\n#include <clipping_planes_pars_fragment>\\n\\nvoid main() {\\n\\n\\t#include <clipping_planes_fragment>\\n\\n\\tvec3 outgoingLight = vec3( 0.0 );\\n\\tvec4 diffuseColor = vec4( diffuse, opacity );\\n\\n\\t#include <logdepthbuf_fragment>\\n\\t#include <map_particle_fragment>\\n\\t#include <color_fragment>\\n\\t#include <alphatest_fragment>\\n\\n\\toutgoingLight = diffuseColor.rgb;\\n\\n\\t#include <output_fragment>\\n\\t#include <tonemapping_fragment>\\n\\t#include <encodings_fragment>\\n\\t#include <fog_fragment>\\n\\t#include <premultiplied_alpha_fragment>\\n\\n}\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderLib/shadow.glsl.js\\nvar vertex15 = `\\n#include <common>\\n#include <fog_pars_vertex>\\n#include <morphtarget_pars_vertex>\\n#include <skinning_pars_vertex>\\n#include <shadowmap_pars_vertex>\\n\\nvoid main() {\\n\\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\\n\\t#include <begin_vertex>\\n\\t#include <morphtarget_vertex>\\n\\t#include <skinning_vertex>\\n\\t#include <project_vertex>\\n\\n\\t#include <worldpos_vertex>\\n\\t#include <shadowmap_vertex>\\n\\t#include <fog_vertex>\\n\\n}\\n`;\\nvar fragment15 = `\\nuniform vec3 color;\\nuniform float opacity;\\n\\n#include <common>\\n#include <packing>\\n#include <fog_pars_fragment>\\n#include <bsdfs>\\n#include <lights_pars_begin>\\n#include <shadowmap_pars_fragment>\\n#include <shadowmask_pars_fragment>\\n\\nvoid main() {\\n\\n\\tgl_FragColor = vec4( color, opacity * ( 1.0 - getShadowMask() ) );\\n\\n\\t#include <tonemapping_fragment>\\n\\t#include <encodings_fragment>\\n\\t#include <fog_fragment>\\n\\n}\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderLib/sprite.glsl.js\\nvar vertex16 = `\\nuniform float rotation;\\nuniform vec2 center;\\n\\n#include <common>\\n#include <uv_pars_vertex>\\n#include <fog_pars_vertex>\\n#include <logdepthbuf_pars_vertex>\\n#include <clipping_planes_pars_vertex>\\n\\nvoid main() {\\n\\n\\t#include <uv_vertex>\\n\\n\\tvec4 mvPosition = modelViewMatrix * vec4( 0.0, 0.0, 0.0, 1.0 );\\n\\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\\n\\t#ifndef USE_SIZEATTENUATION\\n\\n\\t\\tbool isPerspective = isPerspectiveMatrix( projectionMatrix );\\n\\n\\t\\tif ( isPerspective ) scale *= - mvPosition.z;\\n\\n\\t#endif\\n\\n\\tvec2 alignedPosition = ( position.xy - ( center - vec2( 0.5 ) ) ) * scale;\\n\\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\\n\\tmvPosition.xy += rotatedPosition;\\n\\n\\tgl_Position = projectionMatrix * mvPosition;\\n\\n\\t#include <logdepthbuf_vertex>\\n\\t#include <clipping_planes_vertex>\\n\\t#include <fog_vertex>\\n\\n}\\n`;\\nvar fragment16 = `\\nuniform vec3 diffuse;\\nuniform float opacity;\\n\\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 <fog_pars_fragment>\\n#include <logdepthbuf_pars_fragment>\\n#include <clipping_planes_pars_fragment>\\n\\nvoid main() {\\n\\n\\t#include <clipping_planes_fragment>\\n\\n\\tvec3 outgoingLight = vec3( 0.0 );\\n\\tvec4 diffuseColor = vec4( diffuse, opacity );\\n\\n\\t#include <logdepthbuf_fragment>\\n\\t#include <map_fragment>\\n\\t#include <alphamap_fragment>\\n\\t#include <alphatest_fragment>\\n\\n\\toutgoingLight = diffuseColor.rgb;\\n\\n\\t#include <output_fragment>\\n\\t#include <tonemapping_fragment>\\n\\t#include <encodings_fragment>\\n\\t#include <fog_fragment>\\n\\n}\\n`;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderChunk.js\\nvar ShaderChunk = {\\n  alphamap_fragment: alphamap_fragment_glsl_default,\\n  alphamap_pars_fragment: alphamap_pars_fragment_glsl_default,\\n  alphatest_fragment: alphatest_fragment_glsl_default,\\n  alphatest_pars_fragment: alphatest_pars_fragment_glsl_default,\\n  aomap_fragment: aomap_fragment_glsl_default,\\n  aomap_pars_fragment: aomap_pars_fragment_glsl_default,\\n  begin_vertex: begin_vertex_glsl_default,\\n  beginnormal_vertex: beginnormal_vertex_glsl_default,\\n  bsdfs: bsdfs_glsl_default,\\n  bumpmap_pars_fragment: bumpmap_pars_fragment_glsl_default,\\n  clipping_planes_fragment: clipping_planes_fragment_glsl_default,\\n  clipping_planes_pars_fragment: clipping_planes_pars_fragment_glsl_default,\\n  clipping_planes_pars_vertex: clipping_planes_pars_vertex_glsl_default,\\n  clipping_planes_vertex: clipping_planes_vertex_glsl_default,\\n  color_fragment: color_fragment_glsl_default,\\n  color_pars_fragment: color_pars_fragment_glsl_default,\\n  color_pars_vertex: color_pars_vertex_glsl_default,\\n  color_vertex: color_vertex_glsl_default,\\n  common: common_glsl_default,\\n  cube_uv_reflection_fragment: cube_uv_reflection_fragment_glsl_default,\\n  defaultnormal_vertex: defaultnormal_vertex_glsl_default,\\n  displacementmap_pars_vertex: displacementmap_pars_vertex_glsl_default,\\n  displacementmap_vertex: displacementmap_vertex_glsl_default,\\n  emissivemap_fragment: emissivemap_fragment_glsl_default,\\n  emissivemap_pars_fragment: emissivemap_pars_fragment_glsl_default,\\n  encodings_fragment: encodings_fragment_glsl_default,\\n  encodings_pars_fragment: encodings_pars_fragment_glsl_default,\\n  envmap_fragment: envmap_fragment_glsl_default,\\n  envmap_common_pars_fragment: envmap_common_pars_fragment_glsl_default,\\n  envmap_pars_fragment: envmap_pars_fragment_glsl_default,\\n  envmap_pars_vertex: envmap_pars_vertex_glsl_default,\\n  envmap_physical_pars_fragment: envmap_physical_pars_fragment_glsl_default,\\n  envmap_vertex: envmap_vertex_glsl_default,\\n  fog_vertex: fog_vertex_glsl_default,\\n  fog_pars_vertex: fog_pars_vertex_glsl_default,\\n  fog_fragment: fog_fragment_glsl_default,\\n  fog_pars_fragment: fog_pars_fragment_glsl_default,\\n  gradientmap_pars_fragment: gradientmap_pars_fragment_glsl_default,\\n  lightmap_fragment: lightmap_fragment_glsl_default,\\n  lightmap_pars_fragment: lightmap_pars_fragment_glsl_default,\\n  lights_lambert_vertex: lights_lambert_vertex_glsl_default,\\n  lights_pars_begin: lights_pars_begin_glsl_default,\\n  lights_toon_fragment: lights_toon_fragment_glsl_default,\\n  lights_toon_pars_fragment: lights_toon_pars_fragment_glsl_default,\\n  lights_phong_fragment: lights_phong_fragment_glsl_default,\\n  lights_phong_pars_fragment: lights_phong_pars_fragment_glsl_default,\\n  lights_physical_fragment: lights_physical_fragment_glsl_default,\\n  lights_physical_pars_fragment: lights_physical_pars_fragment_glsl_default,\\n  lights_fragment_begin: lights_fragment_begin_glsl_default,\\n  lights_fragment_maps: lights_fragment_maps_glsl_default,\\n  lights_fragment_end: lights_fragment_end_glsl_default,\\n  logdepthbuf_fragment: logdepthbuf_fragment_glsl_default,\\n  logdepthbuf_pars_fragment: logdepthbuf_pars_fragment_glsl_default,\\n  logdepthbuf_pars_vertex: logdepthbuf_pars_vertex_glsl_default,\\n  logdepthbuf_vertex: logdepthbuf_vertex_glsl_default,\\n  map_fragment: map_fragment_glsl_default,\\n  map_pars_fragment: map_pars_fragment_glsl_default,\\n  map_particle_fragment: map_particle_fragment_glsl_default,\\n  map_particle_pars_fragment: map_particle_pars_fragment_glsl_default,\\n  metalnessmap_fragment: metalnessmap_fragment_glsl_default,\\n  metalnessmap_pars_fragment: metalnessmap_pars_fragment_glsl_default,\\n  morphnormal_vertex: morphnormal_vertex_glsl_default,\\n  morphtarget_pars_vertex: morphtarget_pars_vertex_glsl_default,\\n  morphtarget_vertex: morphtarget_vertex_glsl_default,\\n  normal_fragment_begin: normal_fragment_begin_glsl_default,\\n  normal_fragment_maps: normal_fragment_maps_glsl_default,\\n  normal_pars_fragment: normal_pars_fragment_glsl_default,\\n  normal_pars_vertex: normal_pars_vertex_glsl_default,\\n  normal_vertex: normal_vertex_glsl_default,\\n  normalmap_pars_fragment: normalmap_pars_fragment_glsl_default,\\n  clearcoat_normal_fragment_begin: clearcoat_normal_fragment_begin_glsl_default,\\n  clearcoat_normal_fragment_maps: clearcoat_normal_fragment_maps_glsl_default,\\n  clearcoat_pars_fragment: clearcoat_pars_fragment_glsl_default,\\n  output_fragment: output_fragment_glsl_default,\\n  packing: packing_glsl_default,\\n  premultiplied_alpha_fragment: premultiplied_alpha_fragment_glsl_default,\\n  project_vertex: project_vertex_glsl_default,\\n  dithering_fragment: dithering_fragment_glsl_default,\\n  dithering_pars_fragment: dithering_pars_fragment_glsl_default,\\n  roughnessmap_fragment: roughnessmap_fragment_glsl_default,\\n  roughnessmap_pars_fragment: roughnessmap_pars_fragment_glsl_default,\\n  shadowmap_pars_fragment: shadowmap_pars_fragment_glsl_default,\\n  shadowmap_pars_vertex: shadowmap_pars_vertex_glsl_default,\\n  shadowmap_vertex: shadowmap_vertex_glsl_default,\\n  shadowmask_pars_fragment: shadowmask_pars_fragment_glsl_default,\\n  skinbase_vertex: skinbase_vertex_glsl_default,\\n  skinning_pars_vertex: skinning_pars_vertex_glsl_default,\\n  skinning_vertex: skinning_vertex_glsl_default,\\n  skinnormal_vertex: skinnormal_vertex_glsl_default,\\n  specularmap_fragment: specularmap_fragment_glsl_default,\\n  specularmap_pars_fragment: specularmap_pars_fragment_glsl_default,\\n  tonemapping_fragment: tonemapping_fragment_glsl_default,\\n  tonemapping_pars_fragment: tonemapping_pars_fragment_glsl_default,\\n  transmission_fragment: transmission_fragment_glsl_default,\\n  transmission_pars_fragment: transmission_pars_fragment_glsl_default,\\n  uv_pars_fragment: uv_pars_fragment_glsl_default,\\n  uv_pars_vertex: uv_pars_vertex_glsl_default,\\n  uv_vertex: uv_vertex_glsl_default,\\n  uv2_pars_fragment: uv2_pars_fragment_glsl_default,\\n  uv2_pars_vertex: uv2_pars_vertex_glsl_default,\\n  uv2_vertex: uv2_vertex_glsl_default,\\n  worldpos_vertex: worldpos_vertex_glsl_default,\\n  background_vert: vertex,\\n  background_frag: fragment,\\n  cube_vert: vertex2,\\n  cube_frag: fragment2,\\n  depth_vert: vertex3,\\n  depth_frag: fragment3,\\n  distanceRGBA_vert: vertex4,\\n  distanceRGBA_frag: fragment4,\\n  equirect_vert: vertex5,\\n  equirect_frag: fragment5,\\n  linedashed_vert: vertex6,\\n  linedashed_frag: fragment6,\\n  meshbasic_vert: vertex7,\\n  meshbasic_frag: fragment7,\\n  meshlambert_vert: vertex8,\\n  meshlambert_frag: fragment8,\\n  meshmatcap_vert: vertex9,\\n  meshmatcap_frag: fragment9,\\n  meshnormal_vert: vertex10,\\n  meshnormal_frag: fragment10,\\n  meshphong_vert: vertex11,\\n  meshphong_frag: fragment11,\\n  meshphysical_vert: vertex12,\\n  meshphysical_frag: fragment12,\\n  meshtoon_vert: vertex13,\\n  meshtoon_frag: fragment13,\\n  points_vert: vertex14,\\n  points_frag: fragment14,\\n  shadow_vert: vertex15,\\n  shadow_frag: fragment15,\\n  sprite_vert: vertex16,\\n  sprite_frag: fragment16\\n};\\n\\n// ../../../node_modules/three/src/renderers/shaders/UniformsLib.js\\nvar UniformsLib = {\\n  common: {\\n    diffuse: {value: new Color(16777215)},\\n    opacity: {value: 1},\\n    map: {value: null},\\n    uvTransform: {value: new Matrix3()},\\n    uv2Transform: {value: new Matrix3()},\\n    alphaMap: {value: null},\\n    alphaTest: {value: 0}\\n  },\\n  specularmap: {\\n    specularMap: {value: null}\\n  },\\n  envmap: {\\n    envMap: {value: null},\\n    flipEnvMap: {value: -1},\\n    reflectivity: {value: 1},\\n    ior: {value: 1.5},\\n    refractionRatio: {value: 0.98},\\n    maxMipLevel: {value: 0}\\n  },\\n  aomap: {\\n    aoMap: {value: null},\\n    aoMapIntensity: {value: 1}\\n  },\\n  lightmap: {\\n    lightMap: {value: null},\\n    lightMapIntensity: {value: 1}\\n  },\\n  emissivemap: {\\n    emissiveMap: {value: null}\\n  },\\n  bumpmap: {\\n    bumpMap: {value: null},\\n    bumpScale: {value: 1}\\n  },\\n  normalmap: {\\n    normalMap: {value: null},\\n    normalScale: {value: new Vector2(1, 1)}\\n  },\\n  displacementmap: {\\n    displacementMap: {value: null},\\n    displacementScale: {value: 1},\\n    displacementBias: {value: 0}\\n  },\\n  roughnessmap: {\\n    roughnessMap: {value: null}\\n  },\\n  metalnessmap: {\\n    metalnessMap: {value: null}\\n  },\\n  gradientmap: {\\n    gradientMap: {value: null}\\n  },\\n  fog: {\\n    fogDensity: {value: 25e-5},\\n    fogNear: {value: 1},\\n    fogFar: {value: 2e3},\\n    fogColor: {value: new Color(16777215)}\\n  },\\n  lights: {\\n    ambientLightColor: {value: []},\\n    lightProbe: {value: []},\\n    directionalLights: {value: [], properties: {\\n      direction: {},\\n      color: {}\\n    }},\\n    directionalLightShadows: {value: [], properties: {\\n      shadowBias: {},\\n      shadowNormalBias: {},\\n      shadowRadius: {},\\n      shadowMapSize: {}\\n    }},\\n    directionalShadowMap: {value: []},\\n    directionalShadowMatrix: {value: []},\\n    spotLights: {value: [], properties: {\\n      color: {},\\n      position: {},\\n      direction: {},\\n      distance: {},\\n      coneCos: {},\\n      penumbraCos: {},\\n      decay: {}\\n    }},\\n    spotLightShadows: {value: [], properties: {\\n      shadowBias: {},\\n      shadowNormalBias: {},\\n      shadowRadius: {},\\n      shadowMapSize: {}\\n    }},\\n    spotShadowMap: {value: []},\\n    spotShadowMatrix: {value: []},\\n    pointLights: {value: [], properties: {\\n      color: {},\\n      position: {},\\n      decay: {},\\n      distance: {}\\n    }},\\n    pointLightShadows: {value: [], properties: {\\n      shadowBias: {},\\n      shadowNormalBias: {},\\n      shadowRadius: {},\\n      shadowMapSize: {},\\n      shadowCameraNear: {},\\n      shadowCameraFar: {}\\n    }},\\n    pointShadowMap: {value: []},\\n    pointShadowMatrix: {value: []},\\n    hemisphereLights: {value: [], properties: {\\n      direction: {},\\n      skyColor: {},\\n      groundColor: {}\\n    }},\\n    rectAreaLights: {value: [], properties: {\\n      color: {},\\n      position: {},\\n      width: {},\\n      height: {}\\n    }},\\n    ltc_1: {value: null},\\n    ltc_2: {value: null}\\n  },\\n  points: {\\n    diffuse: {value: new Color(16777215)},\\n    opacity: {value: 1},\\n    size: {value: 1},\\n    scale: {value: 1},\\n    map: {value: null},\\n    alphaMap: {value: null},\\n    alphaTest: {value: 0},\\n    uvTransform: {value: new Matrix3()}\\n  },\\n  sprite: {\\n    diffuse: {value: new Color(16777215)},\\n    opacity: {value: 1},\\n    center: {value: new Vector2(0.5, 0.5)},\\n    rotation: {value: 0},\\n    map: {value: null},\\n    alphaMap: {value: null},\\n    alphaTest: {value: 0},\\n    uvTransform: {value: new Matrix3()}\\n  }\\n};\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderLib.js\\nvar ShaderLib = {\\n  basic: {\\n    uniforms: mergeUniforms([\\n      UniformsLib.common,\\n      UniformsLib.specularmap,\\n      UniformsLib.envmap,\\n      UniformsLib.aomap,\\n      UniformsLib.lightmap,\\n      UniformsLib.fog\\n    ]),\\n    vertexShader: ShaderChunk.meshbasic_vert,\\n    fragmentShader: ShaderChunk.meshbasic_frag\\n  },\\n  lambert: {\\n    uniforms: mergeUniforms([\\n      UniformsLib.common,\\n      UniformsLib.specularmap,\\n      UniformsLib.envmap,\\n      UniformsLib.aomap,\\n      UniformsLib.lightmap,\\n      UniformsLib.emissivemap,\\n      UniformsLib.fog,\\n      UniformsLib.lights,\\n      {\\n        emissive: {value: new Color(0)}\\n      }\\n    ]),\\n    vertexShader: ShaderChunk.meshlambert_vert,\\n    fragmentShader: ShaderChunk.meshlambert_frag\\n  },\\n  phong: {\\n    uniforms: mergeUniforms([\\n      UniformsLib.common,\\n      UniformsLib.specularmap,\\n      UniformsLib.envmap,\\n      UniformsLib.aomap,\\n      UniformsLib.lightmap,\\n      UniformsLib.emissivemap,\\n      UniformsLib.bumpmap,\\n      UniformsLib.normalmap,\\n      UniformsLib.displacementmap,\\n      UniformsLib.fog,\\n      UniformsLib.lights,\\n      {\\n        emissive: {value: new Color(0)},\\n        specular: {value: new Color(1118481)},\\n        shininess: {value: 30}\\n      }\\n    ]),\\n    vertexShader: ShaderChunk.meshphong_vert,\\n    fragmentShader: ShaderChunk.meshphong_frag\\n  },\\n  standard: {\\n    uniforms: mergeUniforms([\\n      UniformsLib.common,\\n      UniformsLib.envmap,\\n      UniformsLib.aomap,\\n      UniformsLib.lightmap,\\n      UniformsLib.emissivemap,\\n      UniformsLib.bumpmap,\\n      UniformsLib.normalmap,\\n      UniformsLib.displacementmap,\\n      UniformsLib.roughnessmap,\\n      UniformsLib.metalnessmap,\\n      UniformsLib.fog,\\n      UniformsLib.lights,\\n      {\\n        emissive: {value: new Color(0)},\\n        roughness: {value: 1},\\n        metalness: {value: 0},\\n        envMapIntensity: {value: 1}\\n      }\\n    ]),\\n    vertexShader: ShaderChunk.meshphysical_vert,\\n    fragmentShader: ShaderChunk.meshphysical_frag\\n  },\\n  toon: {\\n    uniforms: mergeUniforms([\\n      UniformsLib.common,\\n      UniformsLib.aomap,\\n      UniformsLib.lightmap,\\n      UniformsLib.emissivemap,\\n      UniformsLib.bumpmap,\\n      UniformsLib.normalmap,\\n      UniformsLib.displacementmap,\\n      UniformsLib.gradientmap,\\n      UniformsLib.fog,\\n      UniformsLib.lights,\\n      {\\n        emissive: {value: new Color(0)}\\n      }\\n    ]),\\n    vertexShader: ShaderChunk.meshtoon_vert,\\n    fragmentShader: ShaderChunk.meshtoon_frag\\n  },\\n  matcap: {\\n    uniforms: mergeUniforms([\\n      UniformsLib.common,\\n      UniformsLib.bumpmap,\\n      UniformsLib.normalmap,\\n      UniformsLib.displacementmap,\\n      UniformsLib.fog,\\n      {\\n        matcap: {value: null}\\n      }\\n    ]),\\n    vertexShader: ShaderChunk.meshmatcap_vert,\\n    fragmentShader: ShaderChunk.meshmatcap_frag\\n  },\\n  points: {\\n    uniforms: mergeUniforms([\\n      UniformsLib.points,\\n      UniformsLib.fog\\n    ]),\\n    vertexShader: ShaderChunk.points_vert,\\n    fragmentShader: ShaderChunk.points_frag\\n  },\\n  dashed: {\\n    uniforms: mergeUniforms([\\n      UniformsLib.common,\\n      UniformsLib.fog,\\n      {\\n        scale: {value: 1},\\n        dashSize: {value: 1},\\n        totalSize: {value: 2}\\n      }\\n    ]),\\n    vertexShader: ShaderChunk.linedashed_vert,\\n    fragmentShader: ShaderChunk.linedashed_frag\\n  },\\n  depth: {\\n    uniforms: mergeUniforms([\\n      UniformsLib.common,\\n      UniformsLib.displacementmap\\n    ]),\\n    vertexShader: ShaderChunk.depth_vert,\\n    fragmentShader: ShaderChunk.depth_frag\\n  },\\n  normal: {\\n    uniforms: mergeUniforms([\\n      UniformsLib.common,\\n      UniformsLib.bumpmap,\\n      UniformsLib.normalmap,\\n      UniformsLib.displacementmap,\\n      {\\n        opacity: {value: 1}\\n      }\\n    ]),\\n    vertexShader: ShaderChunk.meshnormal_vert,\\n    fragmentShader: ShaderChunk.meshnormal_frag\\n  },\\n  sprite: {\\n    uniforms: mergeUniforms([\\n      UniformsLib.sprite,\\n      UniformsLib.fog\\n    ]),\\n    vertexShader: ShaderChunk.sprite_vert,\\n    fragmentShader: ShaderChunk.sprite_frag\\n  },\\n  background: {\\n    uniforms: {\\n      uvTransform: {value: new Matrix3()},\\n      t2D: {value: null}\\n    },\\n    vertexShader: ShaderChunk.background_vert,\\n    fragmentShader: ShaderChunk.background_frag\\n  },\\n  cube: {\\n    uniforms: mergeUniforms([\\n      UniformsLib.envmap,\\n      {\\n        opacity: {value: 1}\\n      }\\n    ]),\\n    vertexShader: ShaderChunk.cube_vert,\\n    fragmentShader: ShaderChunk.cube_frag\\n  },\\n  equirect: {\\n    uniforms: {\\n      tEquirect: {value: null}\\n    },\\n    vertexShader: ShaderChunk.equirect_vert,\\n    fragmentShader: ShaderChunk.equirect_frag\\n  },\\n  distanceRGBA: {\\n    uniforms: mergeUniforms([\\n      UniformsLib.common,\\n      UniformsLib.displacementmap,\\n      {\\n        referencePosition: {value: new Vector3()},\\n        nearDistance: {value: 1},\\n        farDistance: {value: 1e3}\\n      }\\n    ]),\\n    vertexShader: ShaderChunk.distanceRGBA_vert,\\n    fragmentShader: ShaderChunk.distanceRGBA_frag\\n  },\\n  shadow: {\\n    uniforms: mergeUniforms([\\n      UniformsLib.lights,\\n      UniformsLib.fog,\\n      {\\n        color: {value: new Color(0)},\\n        opacity: {value: 1}\\n      }\\n    ]),\\n    vertexShader: ShaderChunk.shadow_vert,\\n    fragmentShader: ShaderChunk.shadow_frag\\n  }\\n};\\nShaderLib.physical = {\\n  uniforms: mergeUniforms([\\n    ShaderLib.standard.uniforms,\\n    {\\n      clearcoat: {value: 0},\\n      clearcoatMap: {value: null},\\n      clearcoatRoughness: {value: 0},\\n      clearcoatRoughnessMap: {value: null},\\n      clearcoatNormalScale: {value: new Vector2(1, 1)},\\n      clearcoatNormalMap: {value: null},\\n      sheen: {value: 0},\\n      sheenTint: {value: new Color(0)},\\n      sheenRoughness: {value: 0},\\n      transmission: {value: 0},\\n      transmissionMap: {value: null},\\n      transmissionSamplerSize: {value: new Vector2()},\\n      transmissionSamplerMap: {value: null},\\n      thickness: {value: 0},\\n      thicknessMap: {value: null},\\n      attenuationDistance: {value: 0},\\n      attenuationTint: {value: new Color(0)},\\n      specularIntensity: {value: 0},\\n      specularIntensityMap: {value: null},\\n      specularTint: {value: new Color(1, 1, 1)},\\n      specularTintMap: {value: null}\\n    }\\n  ]),\\n  vertexShader: ShaderChunk.meshphysical_vert,\\n  fragmentShader: ShaderChunk.meshphysical_frag\\n};\\n\\n// ../../../node_modules/three/src/renderers/webgl/WebGLBackground.js\\nfunction WebGLBackground(renderer, cubemaps, state, objects, premultipliedAlpha) {\\n  const clearColor = new Color(0);\\n  let clearAlpha = 0;\\n  let planeMesh;\\n  let boxMesh;\\n  let currentBackground = null;\\n  let currentBackgroundVersion = 0;\\n  let currentTonemapping = null;\\n  function render(renderList, scene) {\\n    let forceClear = false;\\n    let background2 = scene.isScene === true ? scene.background : null;\\n    if (background2 && background2.isTexture) {\\n      background2 = cubemaps.get(background2);\\n    }\\n    const xr = renderer.xr;\\n    const session = xr.getSession && xr.getSession();\\n    if (session && session.environmentBlendMode === \\\\\\\"additive\\\\\\\") {\\n      background2 = null;\\n    }\\n    if (background2 === null) {\\n      setClear(clearColor, clearAlpha);\\n    } else if (background2 && background2.isColor) {\\n      setClear(background2, 1);\\n      forceClear = true;\\n    }\\n    if (renderer.autoClear || forceClear) {\\n      renderer.clear(renderer.autoClearColor, renderer.autoClearDepth, renderer.autoClearStencil);\\n    }\\n    if (background2 && (background2.isCubeTexture || background2.mapping === CubeUVReflectionMapping)) {\\n      if (boxMesh === void 0) {\\n        boxMesh = new Mesh(new BoxGeometry(1, 1, 1), new ShaderMaterial({\\n          name: \\\\\\\"BackgroundCubeMaterial\\\\\\\",\\n          uniforms: cloneUniforms(ShaderLib.cube.uniforms),\\n          vertexShader: ShaderLib.cube.vertexShader,\\n          fragmentShader: ShaderLib.cube.fragmentShader,\\n          side: BackSide,\\n          depthTest: false,\\n          depthWrite: false,\\n          fog: false\\n        }));\\n        boxMesh.geometry.deleteAttribute(\\\\\\\"normal\\\\\\\");\\n        boxMesh.geometry.deleteAttribute(\\\\\\\"uv\\\\\\\");\\n        boxMesh.onBeforeRender = function(renderer2, scene2, camera) {\\n          this.matrixWorld.copyPosition(camera.matrixWorld);\\n        };\\n        Object.defineProperty(boxMesh.material, \\\\\\\"envMap\\\\\\\", {\\n          get: function() {\\n            return this.uniforms.envMap.value;\\n          }\\n        });\\n        objects.update(boxMesh);\\n      }\\n      boxMesh.material.uniforms.envMap.value = background2;\\n      boxMesh.material.uniforms.flipEnvMap.value = background2.isCubeTexture && background2.isRenderTargetTexture === false ? -1 : 1;\\n      if (currentBackground !== background2 || currentBackgroundVersion !== background2.version || currentTonemapping !== renderer.toneMapping) {\\n        boxMesh.material.needsUpdate = true;\\n        currentBackground = background2;\\n        currentBackgroundVersion = background2.version;\\n        currentTonemapping = renderer.toneMapping;\\n      }\\n      renderList.unshift(boxMesh, boxMesh.geometry, boxMesh.material, 0, 0, null);\\n    } else if (background2 && background2.isTexture) {\\n      if (planeMesh === void 0) {\\n        planeMesh = new Mesh(new PlaneGeometry(2, 2), new ShaderMaterial({\\n          name: \\\\\\\"BackgroundMaterial\\\\\\\",\\n          uniforms: cloneUniforms(ShaderLib.background.uniforms),\\n          vertexShader: ShaderLib.background.vertexShader,\\n          fragmentShader: ShaderLib.background.fragmentShader,\\n          side: FrontSide,\\n          depthTest: false,\\n          depthWrite: false,\\n          fog: false\\n        }));\\n        planeMesh.geometry.deleteAttribute(\\\\\\\"normal\\\\\\\");\\n        Object.defineProperty(planeMesh.material, \\\\\\\"map\\\\\\\", {\\n          get: function() {\\n            return this.uniforms.t2D.value;\\n          }\\n        });\\n        objects.update(planeMesh);\\n      }\\n      planeMesh.material.uniforms.t2D.value = background2;\\n      if (background2.matrixAutoUpdate === true) {\\n        background2.updateMatrix();\\n      }\\n      planeMesh.material.uniforms.uvTransform.value.copy(background2.matrix);\\n      if (currentBackground !== background2 || currentBackgroundVersion !== background2.version || currentTonemapping !== renderer.toneMapping) {\\n        planeMesh.material.needsUpdate = true;\\n        currentBackground = background2;\\n        currentBackgroundVersion = background2.version;\\n        currentTonemapping = renderer.toneMapping;\\n      }\\n      renderList.unshift(planeMesh, planeMesh.geometry, planeMesh.material, 0, 0, null);\\n    }\\n  }\\n  function setClear(color, alpha) {\\n    state.buffers.color.setClear(color.r, color.g, color.b, alpha, premultipliedAlpha);\\n  }\\n  return {\\n    getClearColor: function() {\\n      return clearColor;\\n    },\\n    setClearColor: function(color, alpha = 1) {\\n      clearColor.set(color);\\n      clearAlpha = alpha;\\n      setClear(clearColor, clearAlpha);\\n    },\\n    getClearAlpha: function() {\\n      return clearAlpha;\\n    },\\n    setClearAlpha: function(alpha) {\\n      clearAlpha = alpha;\\n      setClear(clearColor, clearAlpha);\\n    },\\n    render\\n  };\\n}\\n\\n// ../../../node_modules/three/src/renderers/webgl/WebGLBindingStates.js\\nfunction WebGLBindingStates(gl, extensions, attributes, capabilities) {\\n  const maxVertexAttributes = gl.getParameter(gl.MAX_VERTEX_ATTRIBS);\\n  const extension = capabilities.isWebGL2 ? null : extensions.get(\\\\\\\"OES_vertex_array_object\\\\\\\");\\n  const vaoAvailable = capabilities.isWebGL2 || extension !== null;\\n  const bindingStates = {};\\n  const defaultState = createBindingState(null);\\n  let currentState = defaultState;\\n  function setup(object, material, program, geometry, index) {\\n    let updateBuffers = false;\\n    if (vaoAvailable) {\\n      const state = getBindingState(geometry, program, material);\\n      if (currentState !== state) {\\n        currentState = state;\\n        bindVertexArrayObject(currentState.object);\\n      }\\n      updateBuffers = needsUpdate(geometry, index);\\n      if (updateBuffers)\\n        saveCache(geometry, index);\\n    } else {\\n      const wireframe = material.wireframe === true;\\n      if (currentState.geometry !== geometry.id || currentState.program !== program.id || currentState.wireframe !== wireframe) {\\n        currentState.geometry = geometry.id;\\n        currentState.program = program.id;\\n        currentState.wireframe = wireframe;\\n        updateBuffers = true;\\n      }\\n    }\\n    if (object.isInstancedMesh === true) {\\n      updateBuffers = true;\\n    }\\n    if (index !== null) {\\n      attributes.update(index, gl.ELEMENT_ARRAY_BUFFER);\\n    }\\n    if (updateBuffers) {\\n      setupVertexAttributes(object, material, program, geometry);\\n      if (index !== null) {\\n        gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER, attributes.get(index).buffer);\\n      }\\n    }\\n  }\\n  function createVertexArrayObject() {\\n    if (capabilities.isWebGL2)\\n      return gl.createVertexArray();\\n    return extension.createVertexArrayOES();\\n  }\\n  function bindVertexArrayObject(vao) {\\n    if (capabilities.isWebGL2)\\n      return gl.bindVertexArray(vao);\\n    return extension.bindVertexArrayOES(vao);\\n  }\\n  function deleteVertexArrayObject(vao) {\\n    if (capabilities.isWebGL2)\\n      return gl.deleteVertexArray(vao);\\n    return extension.deleteVertexArrayOES(vao);\\n  }\\n  function getBindingState(geometry, program, material) {\\n    const wireframe = material.wireframe === true;\\n    let programMap = bindingStates[geometry.id];\\n    if (programMap === void 0) {\\n      programMap = {};\\n      bindingStates[geometry.id] = programMap;\\n    }\\n    let stateMap = programMap[program.id];\\n    if (stateMap === void 0) {\\n      stateMap = {};\\n      programMap[program.id] = stateMap;\\n    }\\n    let state = stateMap[wireframe];\\n    if (state === void 0) {\\n      state = createBindingState(createVertexArrayObject());\\n      stateMap[wireframe] = state;\\n    }\\n    return state;\\n  }\\n  function createBindingState(vao) {\\n    const newAttributes = [];\\n    const enabledAttributes = [];\\n    const attributeDivisors = [];\\n    for (let i = 0; i < maxVertexAttributes; i++) {\\n      newAttributes[i] = 0;\\n      enabledAttributes[i] = 0;\\n      attributeDivisors[i] = 0;\\n    }\\n    return {\\n      geometry: null,\\n      program: null,\\n      wireframe: false,\\n      newAttributes,\\n      enabledAttributes,\\n      attributeDivisors,\\n      object: vao,\\n      attributes: {},\\n      index: null\\n    };\\n  }\\n  function needsUpdate(geometry, index) {\\n    const cachedAttributes = currentState.attributes;\\n    const geometryAttributes = geometry.attributes;\\n    let attributesNum = 0;\\n    for (const key in geometryAttributes) {\\n      const cachedAttribute = cachedAttributes[key];\\n      const geometryAttribute = geometryAttributes[key];\\n      if (cachedAttribute === void 0)\\n        return true;\\n      if (cachedAttribute.attribute !== geometryAttribute)\\n        return true;\\n      if (cachedAttribute.data !== geometryAttribute.data)\\n        return true;\\n      attributesNum++;\\n    }\\n    if (currentState.attributesNum !== attributesNum)\\n      return true;\\n    if (currentState.index !== index)\\n      return true;\\n    return false;\\n  }\\n  function saveCache(geometry, index) {\\n    const cache = {};\\n    const attributes2 = geometry.attributes;\\n    let attributesNum = 0;\\n    for (const key in attributes2) {\\n      const attribute = attributes2[key];\\n      const data = {};\\n      data.attribute = attribute;\\n      if (attribute.data) {\\n        data.data = attribute.data;\\n      }\\n      cache[key] = data;\\n      attributesNum++;\\n    }\\n    currentState.attributes = cache;\\n    currentState.attributesNum = attributesNum;\\n    currentState.index = index;\\n  }\\n  function initAttributes() {\\n    const newAttributes = currentState.newAttributes;\\n    for (let i = 0, il = newAttributes.length; i < il; i++) {\\n      newAttributes[i] = 0;\\n    }\\n  }\\n  function enableAttribute(attribute) {\\n    enableAttributeAndDivisor(attribute, 0);\\n  }\\n  function enableAttributeAndDivisor(attribute, meshPerAttribute) {\\n    const newAttributes = currentState.newAttributes;\\n    const enabledAttributes = currentState.enabledAttributes;\\n    const attributeDivisors = currentState.attributeDivisors;\\n    newAttributes[attribute] = 1;\\n    if (enabledAttributes[attribute] === 0) {\\n      gl.enableVertexAttribArray(attribute);\\n      enabledAttributes[attribute] = 1;\\n    }\\n    if (attributeDivisors[attribute] !== meshPerAttribute) {\\n      const extension2 = capabilities.isWebGL2 ? gl : extensions.get(\\\\\\\"ANGLE_instanced_arrays\\\\\\\");\\n      extension2[capabilities.isWebGL2 ? \\\\\\\"vertexAttribDivisor\\\\\\\" : \\\\\\\"vertexAttribDivisorANGLE\\\\\\\"](attribute, meshPerAttribute);\\n      attributeDivisors[attribute] = meshPerAttribute;\\n    }\\n  }\\n  function disableUnusedAttributes() {\\n    const newAttributes = currentState.newAttributes;\\n    const enabledAttributes = currentState.enabledAttributes;\\n    for (let i = 0, il = enabledAttributes.length; i < il; i++) {\\n      if (enabledAttributes[i] !== newAttributes[i]) {\\n        gl.disableVertexAttribArray(i);\\n        enabledAttributes[i] = 0;\\n      }\\n    }\\n  }\\n  function vertexAttribPointer(index, size, type, normalized, stride, offset) {\\n    if (capabilities.isWebGL2 === true && (type === gl.INT || type === gl.UNSIGNED_INT)) {\\n      gl.vertexAttribIPointer(index, size, type, stride, offset);\\n    } else {\\n      gl.vertexAttribPointer(index, size, type, normalized, stride, offset);\\n    }\\n  }\\n  function setupVertexAttributes(object, material, program, geometry) {\\n    if (capabilities.isWebGL2 === false && (object.isInstancedMesh || geometry.isInstancedBufferGeometry)) {\\n      if (extensions.get(\\\\\\\"ANGLE_instanced_arrays\\\\\\\") === null)\\n        return;\\n    }\\n    initAttributes();\\n    const geometryAttributes = geometry.attributes;\\n    const programAttributes = program.getAttributes();\\n    const materialDefaultAttributeValues = material.defaultAttributeValues;\\n    for (const name in programAttributes) {\\n      const programAttribute = programAttributes[name];\\n      if (programAttribute.location >= 0) {\\n        let geometryAttribute = geometryAttributes[name];\\n        if (geometryAttribute === void 0) {\\n          if (name === \\\\\\\"instanceMatrix\\\\\\\" && object.instanceMatrix)\\n            geometryAttribute = object.instanceMatrix;\\n          if (name === \\\\\\\"instanceColor\\\\\\\" && object.instanceColor)\\n            geometryAttribute = object.instanceColor;\\n        }\\n        if (geometryAttribute !== void 0) {\\n          const normalized = geometryAttribute.normalized;\\n          const size = geometryAttribute.itemSize;\\n          const attribute = attributes.get(geometryAttribute);\\n          if (attribute === void 0)\\n            continue;\\n          const buffer = attribute.buffer;\\n          const type = attribute.type;\\n          const bytesPerElement = attribute.bytesPerElement;\\n          if (geometryAttribute.isInterleavedBufferAttribute) {\\n            const data = geometryAttribute.data;\\n            const stride = data.stride;\\n            const offset = geometryAttribute.offset;\\n            if (data && data.isInstancedInterleavedBuffer) {\\n              for (let i = 0; i < programAttribute.locationSize; i++) {\\n                enableAttributeAndDivisor(programAttribute.location + i, data.meshPerAttribute);\\n              }\\n              if (object.isInstancedMesh !== true && geometry._maxInstanceCount === void 0) {\\n                geometry._maxInstanceCount = data.meshPerAttribute * data.count;\\n              }\\n            } else {\\n              for (let i = 0; i < programAttribute.locationSize; i++) {\\n                enableAttribute(programAttribute.location + i);\\n              }\\n            }\\n            gl.bindBuffer(gl.ARRAY_BUFFER, buffer);\\n            for (let i = 0; i < programAttribute.locationSize; i++) {\\n              vertexAttribPointer(programAttribute.location + i, size / programAttribute.locationSize, type, normalized, stride * bytesPerElement, (offset + size / programAttribute.locationSize * i) * bytesPerElement);\\n            }\\n          } else {\\n            if (geometryAttribute.isInstancedBufferAttribute) {\\n              for (let i = 0; i < programAttribute.locationSize; i++) {\\n                enableAttributeAndDivisor(programAttribute.location + i, geometryAttribute.meshPerAttribute);\\n              }\\n              if (object.isInstancedMesh !== true && geometry._maxInstanceCount === void 0) {\\n                geometry._maxInstanceCount = geometryAttribute.meshPerAttribute * geometryAttribute.count;\\n              }\\n            } else {\\n              for (let i = 0; i < programAttribute.locationSize; i++) {\\n                enableAttribute(programAttribute.location + i);\\n              }\\n            }\\n            gl.bindBuffer(gl.ARRAY_BUFFER, buffer);\\n            for (let i = 0; i < programAttribute.locationSize; i++) {\\n              vertexAttribPointer(programAttribute.location + i, size / programAttribute.locationSize, type, normalized, size * bytesPerElement, size / programAttribute.locationSize * i * bytesPerElement);\\n            }\\n          }\\n        } else if (materialDefaultAttributeValues !== void 0) {\\n          const value = materialDefaultAttributeValues[name];\\n          if (value !== void 0) {\\n            switch (value.length) {\\n              case 2:\\n                gl.vertexAttrib2fv(programAttribute.location, value);\\n                break;\\n              case 3:\\n                gl.vertexAttrib3fv(programAttribute.location, value);\\n                break;\\n              case 4:\\n                gl.vertexAttrib4fv(programAttribute.location, value);\\n                break;\\n              default:\\n                gl.vertexAttrib1fv(programAttribute.location, value);\\n            }\\n          }\\n        }\\n      }\\n    }\\n    disableUnusedAttributes();\\n  }\\n  function dispose() {\\n    reset();\\n    for (const geometryId in bindingStates) {\\n      const programMap = bindingStates[geometryId];\\n      for (const programId in programMap) {\\n        const stateMap = programMap[programId];\\n        for (const wireframe in stateMap) {\\n          deleteVertexArrayObject(stateMap[wireframe].object);\\n          delete stateMap[wireframe];\\n        }\\n        delete programMap[programId];\\n      }\\n      delete bindingStates[geometryId];\\n    }\\n  }\\n  function releaseStatesOfGeometry(geometry) {\\n    if (bindingStates[geometry.id] === void 0)\\n      return;\\n    const programMap = bindingStates[geometry.id];\\n    for (const programId in programMap) {\\n      const stateMap = programMap[programId];\\n      for (const wireframe in stateMap) {\\n        deleteVertexArrayObject(stateMap[wireframe].object);\\n        delete stateMap[wireframe];\\n      }\\n      delete programMap[programId];\\n    }\\n    delete bindingStates[geometry.id];\\n  }\\n  function releaseStatesOfProgram(program) {\\n    for (const geometryId in bindingStates) {\\n      const programMap = bindingStates[geometryId];\\n      if (programMap[program.id] === void 0)\\n        continue;\\n      const stateMap = programMap[program.id];\\n      for (const wireframe in stateMap) {\\n        deleteVertexArrayObject(stateMap[wireframe].object);\\n        delete stateMap[wireframe];\\n      }\\n      delete programMap[program.id];\\n    }\\n  }\\n  function reset() {\\n    resetDefaultState();\\n    if (currentState === defaultState)\\n      return;\\n    currentState = defaultState;\\n    bindVertexArrayObject(currentState.object);\\n  }\\n  function resetDefaultState() {\\n    defaultState.geometry = null;\\n    defaultState.program = null;\\n    defaultState.wireframe = false;\\n  }\\n  return {\\n    setup,\\n    reset,\\n    resetDefaultState,\\n    dispose,\\n    releaseStatesOfGeometry,\\n    releaseStatesOfProgram,\\n    initAttributes,\\n    enableAttribute,\\n    disableUnusedAttributes\\n  };\\n}\\n\\n// ../../../node_modules/three/src/renderers/webgl/WebGLBufferRenderer.js\\nfunction WebGLBufferRenderer(gl, extensions, info, capabilities) {\\n  const isWebGL2 = capabilities.isWebGL2;\\n  let mode;\\n  function setMode(value) {\\n    mode = value;\\n  }\\n  function render(start, count) {\\n    gl.drawArrays(mode, start, count);\\n    info.update(count, mode, 1);\\n  }\\n  function renderInstances(start, count, primcount) {\\n    if (primcount === 0)\\n      return;\\n    let extension, methodName;\\n    if (isWebGL2) {\\n      extension = gl;\\n      methodName = \\\\\\\"drawArraysInstanced\\\\\\\";\\n    } else {\\n      extension = extensions.get(\\\\\\\"ANGLE_instanced_arrays\\\\\\\");\\n      methodName = \\\\\\\"drawArraysInstancedANGLE\\\\\\\";\\n      if (extension === null) {\\n        console.error(\\\\\\\"THREE.WebGLBufferRenderer: using THREE.InstancedBufferGeometry but hardware does not support extension ANGLE_instanced_arrays.\\\\\\\");\\n        return;\\n      }\\n    }\\n    extension[methodName](mode, start, count, primcount);\\n    info.update(count, mode, primcount);\\n  }\\n  this.setMode = setMode;\\n  this.render = render;\\n  this.renderInstances = renderInstances;\\n}\\n\\n// ../../../node_modules/three/src/renderers/webgl/WebGLCapabilities.js\\nfunction WebGLCapabilities(gl, extensions, parameters) {\\n  let maxAnisotropy;\\n  function getMaxAnisotropy() {\\n    if (maxAnisotropy !== void 0)\\n      return maxAnisotropy;\\n    if (extensions.has(\\\\\\\"EXT_texture_filter_anisotropic\\\\\\\") === true) {\\n      const extension = extensions.get(\\\\\\\"EXT_texture_filter_anisotropic\\\\\\\");\\n      maxAnisotropy = gl.getParameter(extension.MAX_TEXTURE_MAX_ANISOTROPY_EXT);\\n    } else {\\n      maxAnisotropy = 0;\\n    }\\n    return maxAnisotropy;\\n  }\\n  function getMaxPrecision(precision2) {\\n    if (precision2 === \\\\\\\"highp\\\\\\\") {\\n      if (gl.getShaderPrecisionFormat(gl.VERTEX_SHADER, gl.HIGH_FLOAT).precision > 0 && gl.getShaderPrecisionFormat(gl.FRAGMENT_SHADER, gl.HIGH_FLOAT).precision > 0) {\\n        return \\\\\\\"highp\\\\\\\";\\n      }\\n      precision2 = \\\\\\\"mediump\\\\\\\";\\n    }\\n    if (precision2 === \\\\\\\"mediump\\\\\\\") {\\n      if (gl.getShaderPrecisionFormat(gl.VERTEX_SHADER, gl.MEDIUM_FLOAT).precision > 0 && gl.getShaderPrecisionFormat(gl.FRAGMENT_SHADER, gl.MEDIUM_FLOAT).precision > 0) {\\n        return \\\\\\\"mediump\\\\\\\";\\n      }\\n    }\\n    return \\\\\\\"lowp\\\\\\\";\\n  }\\n  const isWebGL2 = typeof WebGL2RenderingContext !== \\\\\\\"undefined\\\\\\\" && gl instanceof WebGL2RenderingContext || typeof WebGL2ComputeRenderingContext !== \\\\\\\"undefined\\\\\\\" && gl instanceof WebGL2ComputeRenderingContext;\\n  let precision = parameters.precision !== void 0 ? parameters.precision : \\\\\\\"highp\\\\\\\";\\n  const maxPrecision = getMaxPrecision(precision);\\n  if (maxPrecision !== precision) {\\n    console.warn(\\\\\\\"THREE.WebGLRenderer:\\\\\\\", precision, \\\\\\\"not supported, using\\\\\\\", maxPrecision, \\\\\\\"instead.\\\\\\\");\\n    precision = maxPrecision;\\n  }\\n  const drawBuffers = isWebGL2 || extensions.has(\\\\\\\"WEBGL_draw_buffers\\\\\\\");\\n  const logarithmicDepthBuffer = parameters.logarithmicDepthBuffer === true;\\n  const maxTextures = gl.getParameter(gl.MAX_TEXTURE_IMAGE_UNITS);\\n  const maxVertexTextures = gl.getParameter(gl.MAX_VERTEX_TEXTURE_IMAGE_UNITS);\\n  const maxTextureSize = gl.getParameter(gl.MAX_TEXTURE_SIZE);\\n  const maxCubemapSize = gl.getParameter(gl.MAX_CUBE_MAP_TEXTURE_SIZE);\\n  const maxAttributes = gl.getParameter(gl.MAX_VERTEX_ATTRIBS);\\n  const maxVertexUniforms = gl.getParameter(gl.MAX_VERTEX_UNIFORM_VECTORS);\\n  const maxVaryings = gl.getParameter(gl.MAX_VARYING_VECTORS);\\n  const maxFragmentUniforms = gl.getParameter(gl.MAX_FRAGMENT_UNIFORM_VECTORS);\\n  const vertexTextures = maxVertexTextures > 0;\\n  const floatFragmentTextures = isWebGL2 || extensions.has(\\\\\\\"OES_texture_float\\\\\\\");\\n  const floatVertexTextures = vertexTextures && floatFragmentTextures;\\n  const maxSamples = isWebGL2 ? gl.getParameter(gl.MAX_SAMPLES) : 0;\\n  return {\\n    isWebGL2,\\n    drawBuffers,\\n    getMaxAnisotropy,\\n    getMaxPrecision,\\n    precision,\\n    logarithmicDepthBuffer,\\n    maxTextures,\\n    maxVertexTextures,\\n    maxTextureSize,\\n    maxCubemapSize,\\n    maxAttributes,\\n    maxVertexUniforms,\\n    maxVaryings,\\n    maxFragmentUniforms,\\n    vertexTextures,\\n    floatFragmentTextures,\\n    floatVertexTextures,\\n    maxSamples\\n  };\\n}\\n\\n// ../../../node_modules/three/src/renderers/webgl/WebGLClipping.js\\nfunction WebGLClipping(properties) {\\n  const scope = this;\\n  let globalState = null, numGlobalPlanes = 0, localClippingEnabled = false, renderingShadows = false;\\n  const plane = new Plane(), viewNormalMatrix = new Matrix3(), uniform = {value: null, needsUpdate: false};\\n  this.uniform = uniform;\\n  this.numPlanes = 0;\\n  this.numIntersection = 0;\\n  this.init = function(planes, enableLocalClipping, camera) {\\n    const enabled = planes.length !== 0 || enableLocalClipping || numGlobalPlanes !== 0 || localClippingEnabled;\\n    localClippingEnabled = enableLocalClipping;\\n    globalState = projectPlanes(planes, camera, 0);\\n    numGlobalPlanes = planes.length;\\n    return enabled;\\n  };\\n  this.beginShadows = function() {\\n    renderingShadows = true;\\n    projectPlanes(null);\\n  };\\n  this.endShadows = function() {\\n    renderingShadows = false;\\n    resetGlobalState();\\n  };\\n  this.setState = function(material, camera, useCache) {\\n    const planes = material.clippingPlanes, clipIntersection = material.clipIntersection, clipShadows = material.clipShadows;\\n    const materialProperties = properties.get(material);\\n    if (!localClippingEnabled || planes === null || planes.length === 0 || renderingShadows && !clipShadows) {\\n      if (renderingShadows) {\\n        projectPlanes(null);\\n      } else {\\n        resetGlobalState();\\n      }\\n    } else {\\n      const nGlobal = renderingShadows ? 0 : numGlobalPlanes, lGlobal = nGlobal * 4;\\n      let dstArray = materialProperties.clippingState || null;\\n      uniform.value = dstArray;\\n      dstArray = projectPlanes(planes, camera, lGlobal, useCache);\\n      for (let i = 0; i !== lGlobal; ++i) {\\n        dstArray[i] = globalState[i];\\n      }\\n      materialProperties.clippingState = dstArray;\\n      this.numIntersection = clipIntersection ? this.numPlanes : 0;\\n      this.numPlanes += nGlobal;\\n    }\\n  };\\n  function resetGlobalState() {\\n    if (uniform.value !== globalState) {\\n      uniform.value = globalState;\\n      uniform.needsUpdate = numGlobalPlanes > 0;\\n    }\\n    scope.numPlanes = numGlobalPlanes;\\n    scope.numIntersection = 0;\\n  }\\n  function projectPlanes(planes, camera, dstOffset, skipTransform) {\\n    const nPlanes = planes !== null ? planes.length : 0;\\n    let dstArray = null;\\n    if (nPlanes !== 0) {\\n      dstArray = uniform.value;\\n      if (skipTransform !== true || dstArray === null) {\\n        const flatSize = dstOffset + nPlanes * 4, viewMatrix = camera.matrixWorldInverse;\\n        viewNormalMatrix.getNormalMatrix(viewMatrix);\\n        if (dstArray === null || dstArray.length < flatSize) {\\n          dstArray = new Float32Array(flatSize);\\n        }\\n        for (let i = 0, i4 = dstOffset; i !== nPlanes; ++i, i4 += 4) {\\n          plane.copy(planes[i]).applyMatrix4(viewMatrix, viewNormalMatrix);\\n          plane.normal.toArray(dstArray, i4);\\n          dstArray[i4 + 3] = plane.constant;\\n        }\\n      }\\n      uniform.value = dstArray;\\n      uniform.needsUpdate = true;\\n    }\\n    scope.numPlanes = nPlanes;\\n    scope.numIntersection = 0;\\n    return dstArray;\\n  }\\n}\\n\\n// ../../../node_modules/three/src/extras/ImageUtils.js\\nvar _canvas;\\nvar ImageUtils = class {\\n  static getDataURL(image) {\\n    if (/^data:/i.test(image.src)) {\\n      return image.src;\\n    }\\n    if (typeof HTMLCanvasElement == \\\\\\\"undefined\\\\\\\") {\\n      return image.src;\\n    }\\n    let canvas;\\n    if (image instanceof HTMLCanvasElement) {\\n      canvas = image;\\n    } else {\\n      if (_canvas === void 0)\\n        _canvas = createElementNS(\\\\\\\"canvas\\\\\\\");\\n      _canvas.width = image.width;\\n      _canvas.height = image.height;\\n      const context = _canvas.getContext(\\\\\\\"2d\\\\\\\");\\n      if (image instanceof ImageData) {\\n        context.putImageData(image, 0, 0);\\n      } else {\\n        context.drawImage(image, 0, 0, image.width, image.height);\\n      }\\n      canvas = _canvas;\\n    }\\n    if (canvas.width > 2048 || canvas.height > 2048) {\\n      console.warn(\\\\\\\"THREE.ImageUtils.getDataURL: Image converted to jpg for performance reasons\\\\\\\", image);\\n      return canvas.toDataURL(\\\\\\\"image/jpeg\\\\\\\", 0.6);\\n    } else {\\n      return canvas.toDataURL(\\\\\\\"image/png\\\\\\\");\\n    }\\n  }\\n};\\n\\n// ../../../node_modules/three/src/textures/Texture.js\\nvar textureId = 0;\\nvar Texture = class extends EventDispatcher {\\n  constructor(image = Texture.DEFAULT_IMAGE, mapping = Texture.DEFAULT_MAPPING, wrapS = ClampToEdgeWrapping, wrapT = ClampToEdgeWrapping, magFilter = LinearFilter, minFilter = LinearMipmapLinearFilter, format = RGBAFormat, type = UnsignedByteType, anisotropy = 1, encoding = LinearEncoding) {\\n    super();\\n    Object.defineProperty(this, \\\\\\\"id\\\\\\\", {value: textureId++});\\n    this.uuid = generateUUID();\\n    this.name = \\\\\\\"\\\\\\\";\\n    this.image = image;\\n    this.mipmaps = [];\\n    this.mapping = mapping;\\n    this.wrapS = wrapS;\\n    this.wrapT = wrapT;\\n    this.magFilter = magFilter;\\n    this.minFilter = minFilter;\\n    this.anisotropy = anisotropy;\\n    this.format = format;\\n    this.internalFormat = null;\\n    this.type = type;\\n    this.offset = new Vector2(0, 0);\\n    this.repeat = new Vector2(1, 1);\\n    this.center = new Vector2(0, 0);\\n    this.rotation = 0;\\n    this.matrixAutoUpdate = true;\\n    this.matrix = new Matrix3();\\n    this.generateMipmaps = true;\\n    this.premultiplyAlpha = false;\\n    this.flipY = true;\\n    this.unpackAlignment = 4;\\n    this.encoding = encoding;\\n    this.version = 0;\\n    this.onUpdate = null;\\n    this.isRenderTargetTexture = false;\\n  }\\n  updateMatrix() {\\n    this.matrix.setUvTransform(this.offset.x, this.offset.y, this.repeat.x, this.repeat.y, this.rotation, this.center.x, this.center.y);\\n  }\\n  clone() {\\n    return new this.constructor().copy(this);\\n  }\\n  copy(source) {\\n    this.name = source.name;\\n    this.image = source.image;\\n    this.mipmaps = source.mipmaps.slice(0);\\n    this.mapping = source.mapping;\\n    this.wrapS = source.wrapS;\\n    this.wrapT = source.wrapT;\\n    this.magFilter = source.magFilter;\\n    this.minFilter = source.minFilter;\\n    this.anisotropy = source.anisotropy;\\n    this.format = source.format;\\n    this.internalFormat = source.internalFormat;\\n    this.type = source.type;\\n    this.offset.copy(source.offset);\\n    this.repeat.copy(source.repeat);\\n    this.center.copy(source.center);\\n    this.rotation = source.rotation;\\n    this.matrixAutoUpdate = source.matrixAutoUpdate;\\n    this.matrix.copy(source.matrix);\\n    this.generateMipmaps = source.generateMipmaps;\\n    this.premultiplyAlpha = source.premultiplyAlpha;\\n    this.flipY = source.flipY;\\n    this.unpackAlignment = source.unpackAlignment;\\n    this.encoding = source.encoding;\\n    return this;\\n  }\\n  toJSON(meta) {\\n    const isRootObject = meta === void 0 || typeof meta === \\\\\\\"string\\\\\\\";\\n    if (!isRootObject && meta.textures[this.uuid] !== void 0) {\\n      return meta.textures[this.uuid];\\n    }\\n    const output = {\\n      metadata: {\\n        version: 4.5,\\n        type: \\\\\\\"Texture\\\\\\\",\\n        generator: \\\\\\\"Texture.toJSON\\\\\\\"\\n      },\\n      uuid: this.uuid,\\n      name: this.name,\\n      mapping: this.mapping,\\n      repeat: [this.repeat.x, this.repeat.y],\\n      offset: [this.offset.x, this.offset.y],\\n      center: [this.center.x, this.center.y],\\n      rotation: this.rotation,\\n      wrap: [this.wrapS, this.wrapT],\\n      format: this.format,\\n      type: this.type,\\n      encoding: this.encoding,\\n      minFilter: this.minFilter,\\n      magFilter: this.magFilter,\\n      anisotropy: this.anisotropy,\\n      flipY: this.flipY,\\n      premultiplyAlpha: this.premultiplyAlpha,\\n      unpackAlignment: this.unpackAlignment\\n    };\\n    if (this.image !== void 0) {\\n      const image = this.image;\\n      if (image.uuid === void 0) {\\n        image.uuid = generateUUID();\\n      }\\n      if (!isRootObject && meta.images[image.uuid] === void 0) {\\n        let url;\\n        if (Array.isArray(image)) {\\n          url = [];\\n          for (let i = 0, l = image.length; i < l; i++) {\\n            if (image[i].isDataTexture) {\\n              url.push(serializeImage(image[i].image));\\n            } else {\\n              url.push(serializeImage(image[i]));\\n            }\\n          }\\n        } else {\\n          url = serializeImage(image);\\n        }\\n        meta.images[image.uuid] = {\\n          uuid: image.uuid,\\n          url\\n        };\\n      }\\n      output.image = image.uuid;\\n    }\\n    if (!isRootObject) {\\n      meta.textures[this.uuid] = output;\\n    }\\n    return output;\\n  }\\n  dispose() {\\n    this.dispatchEvent({type: \\\\\\\"dispose\\\\\\\"});\\n  }\\n  transformUv(uv) {\\n    if (this.mapping !== UVMapping)\\n      return uv;\\n    uv.applyMatrix3(this.matrix);\\n    if (uv.x < 0 || uv.x > 1) {\\n      switch (this.wrapS) {\\n        case RepeatWrapping:\\n          uv.x = uv.x - Math.floor(uv.x);\\n          break;\\n        case ClampToEdgeWrapping:\\n          uv.x = uv.x < 0 ? 0 : 1;\\n          break;\\n        case MirroredRepeatWrapping:\\n          if (Math.abs(Math.floor(uv.x) % 2) === 1) {\\n            uv.x = Math.ceil(uv.x) - uv.x;\\n          } else {\\n            uv.x = uv.x - Math.floor(uv.x);\\n          }\\n          break;\\n      }\\n    }\\n    if (uv.y < 0 || uv.y > 1) {\\n      switch (this.wrapT) {\\n        case RepeatWrapping:\\n          uv.y = uv.y - Math.floor(uv.y);\\n          break;\\n        case ClampToEdgeWrapping:\\n          uv.y = uv.y < 0 ? 0 : 1;\\n          break;\\n        case MirroredRepeatWrapping:\\n          if (Math.abs(Math.floor(uv.y) % 2) === 1) {\\n            uv.y = Math.ceil(uv.y) - uv.y;\\n          } else {\\n            uv.y = uv.y - Math.floor(uv.y);\\n          }\\n          break;\\n      }\\n    }\\n    if (this.flipY) {\\n      uv.y = 1 - uv.y;\\n    }\\n    return uv;\\n  }\\n  set needsUpdate(value) {\\n    if (value === true)\\n      this.version++;\\n  }\\n};\\nTexture.DEFAULT_IMAGE = void 0;\\nTexture.DEFAULT_MAPPING = UVMapping;\\nTexture.prototype.isTexture = true;\\nfunction serializeImage(image) {\\n  if (typeof HTMLImageElement !== \\\\\\\"undefined\\\\\\\" && image instanceof HTMLImageElement || typeof HTMLCanvasElement !== \\\\\\\"undefined\\\\\\\" && image instanceof HTMLCanvasElement || typeof ImageBitmap !== \\\\\\\"undefined\\\\\\\" && image instanceof ImageBitmap) {\\n    return ImageUtils.getDataURL(image);\\n  } else {\\n    if (image.data) {\\n      return {\\n        data: Array.prototype.slice.call(image.data),\\n        width: image.width,\\n        height: image.height,\\n        type: image.data.constructor.name\\n      };\\n    } else {\\n      console.warn(\\\\\\\"THREE.Texture: Unable to serialize Texture.\\\\\\\");\\n      return {};\\n    }\\n  }\\n}\\n\\n// ../../../node_modules/three/src/renderers/WebGLRenderTarget.js\\nvar WebGLRenderTarget = class extends EventDispatcher {\\n  constructor(width, height, options = {}) {\\n    super();\\n    this.width = width;\\n    this.height = height;\\n    this.depth = 1;\\n    this.scissor = new Vector4(0, 0, width, height);\\n    this.scissorTest = false;\\n    this.viewport = new Vector4(0, 0, width, height);\\n    this.texture = new Texture(void 0, options.mapping, options.wrapS, options.wrapT, options.magFilter, options.minFilter, options.format, options.type, options.anisotropy, options.encoding);\\n    this.texture.isRenderTargetTexture = true;\\n    this.texture.image = {width, height, depth: 1};\\n    this.texture.generateMipmaps = options.generateMipmaps !== void 0 ? options.generateMipmaps : false;\\n    this.texture.internalFormat = options.internalFormat !== void 0 ? options.internalFormat : null;\\n    this.texture.minFilter = options.minFilter !== void 0 ? options.minFilter : LinearFilter;\\n    this.depthBuffer = options.depthBuffer !== void 0 ? options.depthBuffer : true;\\n    this.stencilBuffer = options.stencilBuffer !== void 0 ? options.stencilBuffer : false;\\n    this.depthTexture = options.depthTexture !== void 0 ? options.depthTexture : null;\\n  }\\n  setTexture(texture) {\\n    texture.image = {\\n      width: this.width,\\n      height: this.height,\\n      depth: this.depth\\n    };\\n    this.texture = texture;\\n  }\\n  setSize(width, height, depth2 = 1) {\\n    if (this.width !== width || this.height !== height || this.depth !== depth2) {\\n      this.width = width;\\n      this.height = height;\\n      this.depth = depth2;\\n      this.texture.image.width = width;\\n      this.texture.image.height = height;\\n      this.texture.image.depth = depth2;\\n      this.dispose();\\n    }\\n    this.viewport.set(0, 0, width, height);\\n    this.scissor.set(0, 0, width, height);\\n  }\\n  clone() {\\n    return new this.constructor().copy(this);\\n  }\\n  copy(source) {\\n    this.width = source.width;\\n    this.height = source.height;\\n    this.depth = source.depth;\\n    this.viewport.copy(source.viewport);\\n    this.texture = source.texture.clone();\\n    this.texture.image = {...this.texture.image};\\n    this.depthBuffer = source.depthBuffer;\\n    this.stencilBuffer = source.stencilBuffer;\\n    this.depthTexture = source.depthTexture;\\n    return this;\\n  }\\n  dispose() {\\n    this.dispatchEvent({type: \\\\\\\"dispose\\\\\\\"});\\n  }\\n};\\nWebGLRenderTarget.prototype.isWebGLRenderTarget = true;\\n\\n// ../../../node_modules/three/src/cameras/Camera.js\\nvar Camera = class extends Object3D {\\n  constructor() {\\n    super();\\n    this.type = \\\\\\\"Camera\\\\\\\";\\n    this.matrixWorldInverse = new Matrix4();\\n    this.projectionMatrix = new Matrix4();\\n    this.projectionMatrixInverse = new Matrix4();\\n  }\\n  copy(source, recursive) {\\n    super.copy(source, recursive);\\n    this.matrixWorldInverse.copy(source.matrixWorldInverse);\\n    this.projectionMatrix.copy(source.projectionMatrix);\\n    this.projectionMatrixInverse.copy(source.projectionMatrixInverse);\\n    return this;\\n  }\\n  getWorldDirection(target) {\\n    this.updateWorldMatrix(true, false);\\n    const e = this.matrixWorld.elements;\\n    return target.set(-e[8], -e[9], -e[10]).normalize();\\n  }\\n  updateMatrixWorld(force) {\\n    super.updateMatrixWorld(force);\\n    this.matrixWorldInverse.copy(this.matrixWorld).invert();\\n  }\\n  updateWorldMatrix(updateParents, updateChildren) {\\n    super.updateWorldMatrix(updateParents, updateChildren);\\n    this.matrixWorldInverse.copy(this.matrixWorld).invert();\\n  }\\n  clone() {\\n    return new this.constructor().copy(this);\\n  }\\n};\\nCamera.prototype.isCamera = true;\\n\\n// ../../../node_modules/three/src/cameras/PerspectiveCamera.js\\nvar PerspectiveCamera = class extends Camera {\\n  constructor(fov2 = 50, aspect2 = 1, near = 0.1, far = 2e3) {\\n    super();\\n    this.type = \\\\\\\"PerspectiveCamera\\\\\\\";\\n    this.fov = fov2;\\n    this.zoom = 1;\\n    this.near = near;\\n    this.far = far;\\n    this.focus = 10;\\n    this.aspect = aspect2;\\n    this.view = null;\\n    this.filmGauge = 35;\\n    this.filmOffset = 0;\\n    this.updateProjectionMatrix();\\n  }\\n  copy(source, recursive) {\\n    super.copy(source, recursive);\\n    this.fov = source.fov;\\n    this.zoom = source.zoom;\\n    this.near = source.near;\\n    this.far = source.far;\\n    this.focus = source.focus;\\n    this.aspect = source.aspect;\\n    this.view = source.view === null ? null : Object.assign({}, source.view);\\n    this.filmGauge = source.filmGauge;\\n    this.filmOffset = source.filmOffset;\\n    return this;\\n  }\\n  setFocalLength(focalLength) {\\n    const vExtentSlope = 0.5 * this.getFilmHeight() / focalLength;\\n    this.fov = RAD2DEG * 2 * Math.atan(vExtentSlope);\\n    this.updateProjectionMatrix();\\n  }\\n  getFocalLength() {\\n    const vExtentSlope = Math.tan(DEG2RAD * 0.5 * this.fov);\\n    return 0.5 * this.getFilmHeight() / vExtentSlope;\\n  }\\n  getEffectiveFOV() {\\n    return RAD2DEG * 2 * Math.atan(Math.tan(DEG2RAD * 0.5 * this.fov) / this.zoom);\\n  }\\n  getFilmWidth() {\\n    return this.filmGauge * Math.min(this.aspect, 1);\\n  }\\n  getFilmHeight() {\\n    return this.filmGauge / Math.max(this.aspect, 1);\\n  }\\n  setViewOffset(fullWidth, fullHeight, x, y, width, height) {\\n    this.aspect = fullWidth / fullHeight;\\n    if (this.view === null) {\\n      this.view = {\\n        enabled: true,\\n        fullWidth: 1,\\n        fullHeight: 1,\\n        offsetX: 0,\\n        offsetY: 0,\\n        width: 1,\\n        height: 1\\n      };\\n    }\\n    this.view.enabled = true;\\n    this.view.fullWidth = fullWidth;\\n    this.view.fullHeight = fullHeight;\\n    this.view.offsetX = x;\\n    this.view.offsetY = y;\\n    this.view.width = width;\\n    this.view.height = height;\\n    this.updateProjectionMatrix();\\n  }\\n  clearViewOffset() {\\n    if (this.view !== null) {\\n      this.view.enabled = false;\\n    }\\n    this.updateProjectionMatrix();\\n  }\\n  updateProjectionMatrix() {\\n    const near = this.near;\\n    let top = near * Math.tan(DEG2RAD * 0.5 * this.fov) / this.zoom;\\n    let height = 2 * top;\\n    let width = this.aspect * height;\\n    let left = -0.5 * width;\\n    const view = this.view;\\n    if (this.view !== null && this.view.enabled) {\\n      const fullWidth = view.fullWidth, fullHeight = view.fullHeight;\\n      left += view.offsetX * width / fullWidth;\\n      top -= view.offsetY * height / fullHeight;\\n      width *= view.width / fullWidth;\\n      height *= view.height / fullHeight;\\n    }\\n    const skew = this.filmOffset;\\n    if (skew !== 0)\\n      left += near * skew / this.getFilmWidth();\\n    this.projectionMatrix.makePerspective(left, left + width, top, top - height, near, this.far);\\n    this.projectionMatrixInverse.copy(this.projectionMatrix).invert();\\n  }\\n  toJSON(meta) {\\n    const data = super.toJSON(meta);\\n    data.object.fov = this.fov;\\n    data.object.zoom = this.zoom;\\n    data.object.near = this.near;\\n    data.object.far = this.far;\\n    data.object.focus = this.focus;\\n    data.object.aspect = this.aspect;\\n    if (this.view !== null)\\n      data.object.view = Object.assign({}, this.view);\\n    data.object.filmGauge = this.filmGauge;\\n    data.object.filmOffset = this.filmOffset;\\n    return data;\\n  }\\n};\\nPerspectiveCamera.prototype.isPerspectiveCamera = true;\\n\\n// ../../../node_modules/three/src/cameras/CubeCamera.js\\nvar fov = 90;\\nvar aspect = 1;\\nvar CubeCamera = class extends Object3D {\\n  constructor(near, far, renderTarget) {\\n    super();\\n    this.type = \\\\\\\"CubeCamera\\\\\\\";\\n    if (renderTarget.isWebGLCubeRenderTarget !== true) {\\n      console.error(\\\\\\\"THREE.CubeCamera: The constructor now expects an instance of WebGLCubeRenderTarget as third parameter.\\\\\\\");\\n      return;\\n    }\\n    this.renderTarget = renderTarget;\\n    const cameraPX = new PerspectiveCamera(fov, aspect, near, far);\\n    cameraPX.layers = this.layers;\\n    cameraPX.up.set(0, -1, 0);\\n    cameraPX.lookAt(new Vector3(1, 0, 0));\\n    this.add(cameraPX);\\n    const cameraNX = new PerspectiveCamera(fov, aspect, near, far);\\n    cameraNX.layers = this.layers;\\n    cameraNX.up.set(0, -1, 0);\\n    cameraNX.lookAt(new Vector3(-1, 0, 0));\\n    this.add(cameraNX);\\n    const cameraPY = new PerspectiveCamera(fov, aspect, near, far);\\n    cameraPY.layers = this.layers;\\n    cameraPY.up.set(0, 0, 1);\\n    cameraPY.lookAt(new Vector3(0, 1, 0));\\n    this.add(cameraPY);\\n    const cameraNY = new PerspectiveCamera(fov, aspect, near, far);\\n    cameraNY.layers = this.layers;\\n    cameraNY.up.set(0, 0, -1);\\n    cameraNY.lookAt(new Vector3(0, -1, 0));\\n    this.add(cameraNY);\\n    const cameraPZ = new PerspectiveCamera(fov, aspect, near, far);\\n    cameraPZ.layers = this.layers;\\n    cameraPZ.up.set(0, -1, 0);\\n    cameraPZ.lookAt(new Vector3(0, 0, 1));\\n    this.add(cameraPZ);\\n    const cameraNZ = new PerspectiveCamera(fov, aspect, near, far);\\n    cameraNZ.layers = this.layers;\\n    cameraNZ.up.set(0, -1, 0);\\n    cameraNZ.lookAt(new Vector3(0, 0, -1));\\n    this.add(cameraNZ);\\n  }\\n  update(renderer, scene) {\\n    if (this.parent === null)\\n      this.updateMatrixWorld();\\n    const renderTarget = this.renderTarget;\\n    const [cameraPX, cameraNX, cameraPY, cameraNY, cameraPZ, cameraNZ] = this.children;\\n    const currentXrEnabled = renderer.xr.enabled;\\n    const currentRenderTarget = renderer.getRenderTarget();\\n    renderer.xr.enabled = false;\\n    const generateMipmaps = renderTarget.texture.generateMipmaps;\\n    renderTarget.texture.generateMipmaps = false;\\n    renderer.setRenderTarget(renderTarget, 0);\\n    renderer.render(scene, cameraPX);\\n    renderer.setRenderTarget(renderTarget, 1);\\n    renderer.render(scene, cameraNX);\\n    renderer.setRenderTarget(renderTarget, 2);\\n    renderer.render(scene, cameraPY);\\n    renderer.setRenderTarget(renderTarget, 3);\\n    renderer.render(scene, cameraNY);\\n    renderer.setRenderTarget(renderTarget, 4);\\n    renderer.render(scene, cameraPZ);\\n    renderTarget.texture.generateMipmaps = generateMipmaps;\\n    renderer.setRenderTarget(renderTarget, 5);\\n    renderer.render(scene, cameraNZ);\\n    renderer.setRenderTarget(currentRenderTarget);\\n    renderer.xr.enabled = currentXrEnabled;\\n  }\\n};\\n\\n// ../../../node_modules/three/src/textures/CubeTexture.js\\nvar CubeTexture = class extends Texture {\\n  constructor(images, mapping, wrapS, wrapT, magFilter, minFilter, format, type, anisotropy, encoding) {\\n    images = images !== void 0 ? images : [];\\n    mapping = mapping !== void 0 ? mapping : CubeReflectionMapping;\\n    super(images, mapping, wrapS, wrapT, magFilter, minFilter, format, type, anisotropy, encoding);\\n    this.flipY = false;\\n  }\\n  get images() {\\n    return this.image;\\n  }\\n  set images(value) {\\n    this.image = value;\\n  }\\n};\\nCubeTexture.prototype.isCubeTexture = true;\\n\\n// ../../../node_modules/three/src/renderers/WebGLCubeRenderTarget.js\\nvar WebGLCubeRenderTarget = class extends WebGLRenderTarget {\\n  constructor(size, options, dummy) {\\n    if (Number.isInteger(options)) {\\n      console.warn(\\\\\\\"THREE.WebGLCubeRenderTarget: constructor signature is now WebGLCubeRenderTarget( size, options )\\\\\\\");\\n      options = dummy;\\n    }\\n    super(size, size, options);\\n    options = options || {};\\n    this.texture = new CubeTexture(void 0, options.mapping, options.wrapS, options.wrapT, options.magFilter, options.minFilter, options.format, options.type, options.anisotropy, options.encoding);\\n    this.texture.isRenderTargetTexture = true;\\n    this.texture.generateMipmaps = options.generateMipmaps !== void 0 ? options.generateMipmaps : false;\\n    this.texture.minFilter = options.minFilter !== void 0 ? options.minFilter : LinearFilter;\\n    this.texture._needsFlipEnvMap = false;\\n  }\\n  fromEquirectangularTexture(renderer, texture) {\\n    this.texture.type = texture.type;\\n    this.texture.format = RGBAFormat;\\n    this.texture.encoding = texture.encoding;\\n    this.texture.generateMipmaps = texture.generateMipmaps;\\n    this.texture.minFilter = texture.minFilter;\\n    this.texture.magFilter = texture.magFilter;\\n    const shader = {\\n      uniforms: {\\n        tEquirect: {value: null}\\n      },\\n      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`,\\n      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`\\n    };\\n    const geometry = new BoxGeometry(5, 5, 5);\\n    const material = new ShaderMaterial({\\n      name: \\\\\\\"CubemapFromEquirect\\\\\\\",\\n      uniforms: cloneUniforms(shader.uniforms),\\n      vertexShader: shader.vertexShader,\\n      fragmentShader: shader.fragmentShader,\\n      side: BackSide,\\n      blending: NoBlending\\n    });\\n    material.uniforms.tEquirect.value = texture;\\n    const mesh = new Mesh(geometry, material);\\n    const currentMinFilter = texture.minFilter;\\n    if (texture.minFilter === LinearMipmapLinearFilter)\\n      texture.minFilter = LinearFilter;\\n    const camera = new CubeCamera(1, 10, this);\\n    camera.update(renderer, mesh);\\n    texture.minFilter = currentMinFilter;\\n    mesh.geometry.dispose();\\n    mesh.material.dispose();\\n    return this;\\n  }\\n  clear(renderer, color, depth2, stencil) {\\n    const currentRenderTarget = renderer.getRenderTarget();\\n    for (let i = 0; i < 6; i++) {\\n      renderer.setRenderTarget(this, i);\\n      renderer.clear(color, depth2, stencil);\\n    }\\n    renderer.setRenderTarget(currentRenderTarget);\\n  }\\n};\\nWebGLCubeRenderTarget.prototype.isWebGLCubeRenderTarget = true;\\n\\n// ../../../node_modules/three/src/renderers/webgl/WebGLCubeMaps.js\\nfunction WebGLCubeMaps(renderer) {\\n  let cubemaps = new WeakMap();\\n  function mapTextureMapping(texture, mapping) {\\n    if (mapping === EquirectangularReflectionMapping) {\\n      texture.mapping = CubeReflectionMapping;\\n    } else if (mapping === EquirectangularRefractionMapping) {\\n      texture.mapping = CubeRefractionMapping;\\n    }\\n    return texture;\\n  }\\n  function get(texture) {\\n    if (texture && texture.isTexture && texture.isRenderTargetTexture === false) {\\n      const mapping = texture.mapping;\\n      if (mapping === EquirectangularReflectionMapping || mapping === EquirectangularRefractionMapping) {\\n        if (cubemaps.has(texture)) {\\n          const cubemap = cubemaps.get(texture).texture;\\n          return mapTextureMapping(cubemap, texture.mapping);\\n        } else {\\n          const image = texture.image;\\n          if (image && image.height > 0) {\\n            const currentRenderTarget = renderer.getRenderTarget();\\n            const renderTarget = new WebGLCubeRenderTarget(image.height / 2);\\n            renderTarget.fromEquirectangularTexture(renderer, texture);\\n            cubemaps.set(texture, renderTarget);\\n            renderer.setRenderTarget(currentRenderTarget);\\n            texture.addEventListener(\\\\\\\"dispose\\\\\\\", onTextureDispose);\\n            return mapTextureMapping(renderTarget.texture, texture.mapping);\\n          } else {\\n            return null;\\n          }\\n        }\\n      }\\n    }\\n    return texture;\\n  }\\n  function onTextureDispose(event) {\\n    const texture = event.target;\\n    texture.removeEventListener(\\\\\\\"dispose\\\\\\\", onTextureDispose);\\n    const cubemap = cubemaps.get(texture);\\n    if (cubemap !== void 0) {\\n      cubemaps.delete(texture);\\n      cubemap.dispose();\\n    }\\n  }\\n  function dispose() {\\n    cubemaps = new WeakMap();\\n  }\\n  return {\\n    get,\\n    dispose\\n  };\\n}\\n\\n// ../../../node_modules/three/src/cameras/OrthographicCamera.js\\nvar OrthographicCamera = class extends Camera {\\n  constructor(left = -1, right = 1, top = 1, bottom = -1, near = 0.1, far = 2e3) {\\n    super();\\n    this.type = \\\\\\\"OrthographicCamera\\\\\\\";\\n    this.zoom = 1;\\n    this.view = null;\\n    this.left = left;\\n    this.right = right;\\n    this.top = top;\\n    this.bottom = bottom;\\n    this.near = near;\\n    this.far = far;\\n    this.updateProjectionMatrix();\\n  }\\n  copy(source, recursive) {\\n    super.copy(source, recursive);\\n    this.left = source.left;\\n    this.right = source.right;\\n    this.top = source.top;\\n    this.bottom = source.bottom;\\n    this.near = source.near;\\n    this.far = source.far;\\n    this.zoom = source.zoom;\\n    this.view = source.view === null ? null : Object.assign({}, source.view);\\n    return this;\\n  }\\n  setViewOffset(fullWidth, fullHeight, x, y, width, height) {\\n    if (this.view === null) {\\n      this.view = {\\n        enabled: true,\\n        fullWidth: 1,\\n        fullHeight: 1,\\n        offsetX: 0,\\n        offsetY: 0,\\n        width: 1,\\n        height: 1\\n      };\\n    }\\n    this.view.enabled = true;\\n    this.view.fullWidth = fullWidth;\\n    this.view.fullHeight = fullHeight;\\n    this.view.offsetX = x;\\n    this.view.offsetY = y;\\n    this.view.width = width;\\n    this.view.height = height;\\n    this.updateProjectionMatrix();\\n  }\\n  clearViewOffset() {\\n    if (this.view !== null) {\\n      this.view.enabled = false;\\n    }\\n    this.updateProjectionMatrix();\\n  }\\n  updateProjectionMatrix() {\\n    const dx = (this.right - this.left) / (2 * this.zoom);\\n    const dy = (this.top - this.bottom) / (2 * this.zoom);\\n    const cx = (this.right + this.left) / 2;\\n    const cy = (this.top + this.bottom) / 2;\\n    let left = cx - dx;\\n    let right = cx + dx;\\n    let top = cy + dy;\\n    let bottom = cy - dy;\\n    if (this.view !== null && this.view.enabled) {\\n      const scaleW = (this.right - this.left) / this.view.fullWidth / this.zoom;\\n      const scaleH = (this.top - this.bottom) / this.view.fullHeight / this.zoom;\\n      left += scaleW * this.view.offsetX;\\n      right = left + scaleW * this.view.width;\\n      top -= scaleH * this.view.offsetY;\\n      bottom = top - scaleH * this.view.height;\\n    }\\n    this.projectionMatrix.makeOrthographic(left, right, top, bottom, this.near, this.far);\\n    this.projectionMatrixInverse.copy(this.projectionMatrix).invert();\\n  }\\n  toJSON(meta) {\\n    const data = super.toJSON(meta);\\n    data.object.zoom = this.zoom;\\n    data.object.left = this.left;\\n    data.object.right = this.right;\\n    data.object.top = this.top;\\n    data.object.bottom = this.bottom;\\n    data.object.near = this.near;\\n    data.object.far = this.far;\\n    if (this.view !== null)\\n      data.object.view = Object.assign({}, this.view);\\n    return data;\\n  }\\n};\\nOrthographicCamera.prototype.isOrthographicCamera = true;\\n\\n// ../../../node_modules/three/src/materials/RawShaderMaterial.js\\nvar RawShaderMaterial = class extends ShaderMaterial {\\n  constructor(parameters) {\\n    super(parameters);\\n    this.type = \\\\\\\"RawShaderMaterial\\\\\\\";\\n  }\\n};\\nRawShaderMaterial.prototype.isRawShaderMaterial = true;\\n\\n// ../../../node_modules/three/src/extras/PMREMGenerator.js\\nvar LOD_MIN = 4;\\nvar LOD_MAX = 8;\\nvar SIZE_MAX = Math.pow(2, LOD_MAX);\\nvar EXTRA_LOD_SIGMA = [0.125, 0.215, 0.35, 0.446, 0.526, 0.582];\\nvar TOTAL_LODS = LOD_MAX - LOD_MIN + 1 + EXTRA_LOD_SIGMA.length;\\nvar MAX_SAMPLES = 20;\\nvar ENCODINGS = {\\n  [LinearEncoding]: 0,\\n  [sRGBEncoding]: 1,\\n  [RGBEEncoding]: 2,\\n  [RGBM7Encoding]: 3,\\n  [RGBM16Encoding]: 4,\\n  [RGBDEncoding]: 5,\\n  [GammaEncoding]: 6\\n};\\nvar _flatCamera = /* @__PURE__ */ new OrthographicCamera();\\nvar {_lodPlanes, _sizeLods, _sigmas} = /* @__PURE__ */ _createPlanes();\\nvar _clearColor = /* @__PURE__ */ new Color();\\nvar _oldTarget = null;\\nvar PHI = (1 + Math.sqrt(5)) / 2;\\nvar INV_PHI = 1 / PHI;\\nvar _axisDirections = [\\n  /* @__PURE__ */ new Vector3(1, 1, 1),\\n  /* @__PURE__ */ new Vector3(-1, 1, 1),\\n  /* @__PURE__ */ new Vector3(1, 1, -1),\\n  /* @__PURE__ */ new Vector3(-1, 1, -1),\\n  /* @__PURE__ */ new Vector3(0, PHI, INV_PHI),\\n  /* @__PURE__ */ new Vector3(0, PHI, -INV_PHI),\\n  /* @__PURE__ */ new Vector3(INV_PHI, 0, PHI),\\n  /* @__PURE__ */ new Vector3(-INV_PHI, 0, PHI),\\n  /* @__PURE__ */ new Vector3(PHI, INV_PHI, 0),\\n  /* @__PURE__ */ new Vector3(-PHI, INV_PHI, 0)\\n];\\nvar PMREMGenerator = class {\\n  constructor(renderer) {\\n    this._renderer = renderer;\\n    this._pingPongRenderTarget = null;\\n    this._blurMaterial = _getBlurShader(MAX_SAMPLES);\\n    this._equirectShader = null;\\n    this._cubemapShader = null;\\n    this._compileMaterial(this._blurMaterial);\\n  }\\n  fromScene(scene, sigma = 0, near = 0.1, far = 100) {\\n    _oldTarget = this._renderer.getRenderTarget();\\n    const cubeUVRenderTarget = this._allocateTargets();\\n    this._sceneToCubeUV(scene, near, far, cubeUVRenderTarget);\\n    if (sigma > 0) {\\n      this._blur(cubeUVRenderTarget, 0, 0, sigma);\\n    }\\n    this._applyPMREM(cubeUVRenderTarget);\\n    this._cleanup(cubeUVRenderTarget);\\n    return cubeUVRenderTarget;\\n  }\\n  fromEquirectangular(equirectangular) {\\n    return this._fromTexture(equirectangular);\\n  }\\n  fromCubemap(cubemap) {\\n    return this._fromTexture(cubemap);\\n  }\\n  compileCubemapShader() {\\n    if (this._cubemapShader === null) {\\n      this._cubemapShader = _getCubemapShader();\\n      this._compileMaterial(this._cubemapShader);\\n    }\\n  }\\n  compileEquirectangularShader() {\\n    if (this._equirectShader === null) {\\n      this._equirectShader = _getEquirectShader();\\n      this._compileMaterial(this._equirectShader);\\n    }\\n  }\\n  dispose() {\\n    this._blurMaterial.dispose();\\n    if (this._cubemapShader !== null)\\n      this._cubemapShader.dispose();\\n    if (this._equirectShader !== null)\\n      this._equirectShader.dispose();\\n    for (let i = 0; i < _lodPlanes.length; i++) {\\n      _lodPlanes[i].dispose();\\n    }\\n  }\\n  _cleanup(outputTarget) {\\n    this._pingPongRenderTarget.dispose();\\n    this._renderer.setRenderTarget(_oldTarget);\\n    outputTarget.scissorTest = false;\\n    _setViewport(outputTarget, 0, 0, outputTarget.width, outputTarget.height);\\n  }\\n  _fromTexture(texture) {\\n    _oldTarget = this._renderer.getRenderTarget();\\n    const cubeUVRenderTarget = this._allocateTargets(texture);\\n    this._textureToCubeUV(texture, cubeUVRenderTarget);\\n    this._applyPMREM(cubeUVRenderTarget);\\n    this._cleanup(cubeUVRenderTarget);\\n    return cubeUVRenderTarget;\\n  }\\n  _allocateTargets(texture) {\\n    const params = {\\n      magFilter: NearestFilter,\\n      minFilter: NearestFilter,\\n      generateMipmaps: false,\\n      type: UnsignedByteType,\\n      format: RGBEFormat,\\n      encoding: _isLDR(texture) ? texture.encoding : RGBEEncoding,\\n      depthBuffer: false\\n    };\\n    const cubeUVRenderTarget = _createRenderTarget(params);\\n    cubeUVRenderTarget.depthBuffer = texture ? false : true;\\n    this._pingPongRenderTarget = _createRenderTarget(params);\\n    return cubeUVRenderTarget;\\n  }\\n  _compileMaterial(material) {\\n    const tmpMesh = new Mesh(_lodPlanes[0], material);\\n    this._renderer.compile(tmpMesh, _flatCamera);\\n  }\\n  _sceneToCubeUV(scene, near, far, cubeUVRenderTarget) {\\n    const fov2 = 90;\\n    const aspect2 = 1;\\n    const cubeCamera = new PerspectiveCamera(fov2, aspect2, near, far);\\n    const upSign = [1, -1, 1, 1, 1, 1];\\n    const forwardSign = [1, 1, 1, -1, -1, -1];\\n    const renderer = this._renderer;\\n    const originalAutoClear = renderer.autoClear;\\n    const outputEncoding = renderer.outputEncoding;\\n    const toneMapping = renderer.toneMapping;\\n    renderer.getClearColor(_clearColor);\\n    renderer.toneMapping = NoToneMapping;\\n    renderer.outputEncoding = LinearEncoding;\\n    renderer.autoClear = false;\\n    const backgroundMaterial = new MeshBasicMaterial({\\n      name: \\\\\\\"PMREM.Background\\\\\\\",\\n      side: BackSide,\\n      depthWrite: false,\\n      depthTest: false\\n    });\\n    const backgroundBox = new Mesh(new BoxGeometry(), backgroundMaterial);\\n    let useSolidColor = false;\\n    const background2 = scene.background;\\n    if (background2) {\\n      if (background2.isColor) {\\n        backgroundMaterial.color.copy(background2);\\n        scene.background = null;\\n        useSolidColor = true;\\n      }\\n    } else {\\n      backgroundMaterial.color.copy(_clearColor);\\n      useSolidColor = true;\\n    }\\n    for (let i = 0; i < 6; i++) {\\n      const col = i % 3;\\n      if (col == 0) {\\n        cubeCamera.up.set(0, upSign[i], 0);\\n        cubeCamera.lookAt(forwardSign[i], 0, 0);\\n      } else if (col == 1) {\\n        cubeCamera.up.set(0, 0, upSign[i]);\\n        cubeCamera.lookAt(0, forwardSign[i], 0);\\n      } else {\\n        cubeCamera.up.set(0, upSign[i], 0);\\n        cubeCamera.lookAt(0, 0, forwardSign[i]);\\n      }\\n      _setViewport(cubeUVRenderTarget, col * SIZE_MAX, i > 2 ? SIZE_MAX : 0, SIZE_MAX, SIZE_MAX);\\n      renderer.setRenderTarget(cubeUVRenderTarget);\\n      if (useSolidColor) {\\n        renderer.render(backgroundBox, cubeCamera);\\n      }\\n      renderer.render(scene, cubeCamera);\\n    }\\n    backgroundBox.geometry.dispose();\\n    backgroundBox.material.dispose();\\n    renderer.toneMapping = toneMapping;\\n    renderer.outputEncoding = outputEncoding;\\n    renderer.autoClear = originalAutoClear;\\n    scene.background = background2;\\n  }\\n  _setEncoding(uniform, texture) {\\n    if (this._renderer.capabilities.isWebGL2 === true && texture.format === RGBAFormat && texture.type === UnsignedByteType && texture.encoding === sRGBEncoding) {\\n      uniform.value = ENCODINGS[LinearEncoding];\\n    } else {\\n      uniform.value = ENCODINGS[texture.encoding];\\n    }\\n  }\\n  _textureToCubeUV(texture, cubeUVRenderTarget) {\\n    const renderer = this._renderer;\\n    if (texture.isCubeTexture) {\\n      if (this._cubemapShader == null) {\\n        this._cubemapShader = _getCubemapShader();\\n      }\\n    } else {\\n      if (this._equirectShader == null) {\\n        this._equirectShader = _getEquirectShader();\\n      }\\n    }\\n    const material = texture.isCubeTexture ? this._cubemapShader : this._equirectShader;\\n    const mesh = new Mesh(_lodPlanes[0], material);\\n    const uniforms = material.uniforms;\\n    uniforms[\\\\\\\"envMap\\\\\\\"].value = texture;\\n    if (!texture.isCubeTexture) {\\n      uniforms[\\\\\\\"texelSize\\\\\\\"].value.set(1 / texture.image.width, 1 / texture.image.height);\\n    }\\n    this._setEncoding(uniforms[\\\\\\\"inputEncoding\\\\\\\"], texture);\\n    this._setEncoding(uniforms[\\\\\\\"outputEncoding\\\\\\\"], cubeUVRenderTarget.texture);\\n    _setViewport(cubeUVRenderTarget, 0, 0, 3 * SIZE_MAX, 2 * SIZE_MAX);\\n    renderer.setRenderTarget(cubeUVRenderTarget);\\n    renderer.render(mesh, _flatCamera);\\n  }\\n  _applyPMREM(cubeUVRenderTarget) {\\n    const renderer = this._renderer;\\n    const autoClear = renderer.autoClear;\\n    renderer.autoClear = false;\\n    for (let i = 1; i < TOTAL_LODS; i++) {\\n      const sigma = Math.sqrt(_sigmas[i] * _sigmas[i] - _sigmas[i - 1] * _sigmas[i - 1]);\\n      const poleAxis = _axisDirections[(i - 1) % _axisDirections.length];\\n      this._blur(cubeUVRenderTarget, i - 1, i, sigma, poleAxis);\\n    }\\n    renderer.autoClear = autoClear;\\n  }\\n  _blur(cubeUVRenderTarget, lodIn, lodOut, sigma, poleAxis) {\\n    const pingPongRenderTarget = this._pingPongRenderTarget;\\n    this._halfBlur(cubeUVRenderTarget, pingPongRenderTarget, lodIn, lodOut, sigma, \\\\\\\"latitudinal\\\\\\\", poleAxis);\\n    this._halfBlur(pingPongRenderTarget, cubeUVRenderTarget, lodOut, lodOut, sigma, \\\\\\\"longitudinal\\\\\\\", poleAxis);\\n  }\\n  _halfBlur(targetIn, targetOut, lodIn, lodOut, sigmaRadians, direction, poleAxis) {\\n    const renderer = this._renderer;\\n    const blurMaterial = this._blurMaterial;\\n    if (direction !== \\\\\\\"latitudinal\\\\\\\" && direction !== \\\\\\\"longitudinal\\\\\\\") {\\n      console.error(\\\\\\\"blur direction must be either latitudinal or longitudinal!\\\\\\\");\\n    }\\n    const STANDARD_DEVIATIONS = 3;\\n    const blurMesh = new Mesh(_lodPlanes[lodOut], blurMaterial);\\n    const blurUniforms = blurMaterial.uniforms;\\n    const pixels = _sizeLods[lodIn] - 1;\\n    const radiansPerPixel = isFinite(sigmaRadians) ? Math.PI / (2 * pixels) : 2 * Math.PI / (2 * MAX_SAMPLES - 1);\\n    const sigmaPixels = sigmaRadians / radiansPerPixel;\\n    const samples = isFinite(sigmaRadians) ? 1 + Math.floor(STANDARD_DEVIATIONS * sigmaPixels) : MAX_SAMPLES;\\n    if (samples > MAX_SAMPLES) {\\n      console.warn(`sigmaRadians, ${sigmaRadians}, is too large and will clip, as it requested ${samples} samples when the maximum is set to ${MAX_SAMPLES}`);\\n    }\\n    const weights = [];\\n    let sum = 0;\\n    for (let i = 0; i < MAX_SAMPLES; ++i) {\\n      const x2 = i / sigmaPixels;\\n      const weight = Math.exp(-x2 * x2 / 2);\\n      weights.push(weight);\\n      if (i == 0) {\\n        sum += weight;\\n      } else if (i < samples) {\\n        sum += 2 * weight;\\n      }\\n    }\\n    for (let i = 0; i < weights.length; i++) {\\n      weights[i] = weights[i] / sum;\\n    }\\n    blurUniforms[\\\\\\\"envMap\\\\\\\"].value = targetIn.texture;\\n    blurUniforms[\\\\\\\"samples\\\\\\\"].value = samples;\\n    blurUniforms[\\\\\\\"weights\\\\\\\"].value = weights;\\n    blurUniforms[\\\\\\\"latitudinal\\\\\\\"].value = direction === \\\\\\\"latitudinal\\\\\\\";\\n    if (poleAxis) {\\n      blurUniforms[\\\\\\\"poleAxis\\\\\\\"].value = poleAxis;\\n    }\\n    blurUniforms[\\\\\\\"dTheta\\\\\\\"].value = radiansPerPixel;\\n    blurUniforms[\\\\\\\"mipInt\\\\\\\"].value = LOD_MAX - lodIn;\\n    this._setEncoding(blurUniforms[\\\\\\\"inputEncoding\\\\\\\"], targetIn.texture);\\n    this._setEncoding(blurUniforms[\\\\\\\"outputEncoding\\\\\\\"], targetIn.texture);\\n    const outputSize = _sizeLods[lodOut];\\n    const x = 3 * Math.max(0, SIZE_MAX - 2 * outputSize);\\n    const y = (lodOut === 0 ? 0 : 2 * SIZE_MAX) + 2 * outputSize * (lodOut > LOD_MAX - LOD_MIN ? lodOut - LOD_MAX + LOD_MIN : 0);\\n    _setViewport(targetOut, x, y, 3 * outputSize, 2 * outputSize);\\n    renderer.setRenderTarget(targetOut);\\n    renderer.render(blurMesh, _flatCamera);\\n  }\\n};\\nfunction _isLDR(texture) {\\n  if (texture === void 0 || texture.type !== UnsignedByteType)\\n    return false;\\n  return texture.encoding === LinearEncoding || texture.encoding === sRGBEncoding || texture.encoding === GammaEncoding;\\n}\\nfunction _createPlanes() {\\n  const _lodPlanes2 = [];\\n  const _sizeLods2 = [];\\n  const _sigmas2 = [];\\n  let lod = LOD_MAX;\\n  for (let i = 0; i < TOTAL_LODS; i++) {\\n    const sizeLod = Math.pow(2, lod);\\n    _sizeLods2.push(sizeLod);\\n    let sigma = 1 / sizeLod;\\n    if (i > LOD_MAX - LOD_MIN) {\\n      sigma = EXTRA_LOD_SIGMA[i - LOD_MAX + LOD_MIN - 1];\\n    } else if (i == 0) {\\n      sigma = 0;\\n    }\\n    _sigmas2.push(sigma);\\n    const texelSize = 1 / (sizeLod - 1);\\n    const min = -texelSize / 2;\\n    const max = 1 + texelSize / 2;\\n    const uv1 = [min, min, max, min, max, max, min, min, max, max, min, max];\\n    const cubeFaces = 6;\\n    const vertices = 6;\\n    const positionSize = 3;\\n    const uvSize = 2;\\n    const faceIndexSize = 1;\\n    const position = new Float32Array(positionSize * vertices * cubeFaces);\\n    const uv = new Float32Array(uvSize * vertices * cubeFaces);\\n    const faceIndex = new Float32Array(faceIndexSize * vertices * cubeFaces);\\n    for (let face = 0; face < cubeFaces; face++) {\\n      const x = face % 3 * 2 / 3 - 1;\\n      const y = face > 2 ? 0 : -1;\\n      const coordinates = [\\n        x,\\n        y,\\n        0,\\n        x + 2 / 3,\\n        y,\\n        0,\\n        x + 2 / 3,\\n        y + 1,\\n        0,\\n        x,\\n        y,\\n        0,\\n        x + 2 / 3,\\n        y + 1,\\n        0,\\n        x,\\n        y + 1,\\n        0\\n      ];\\n      position.set(coordinates, positionSize * vertices * face);\\n      uv.set(uv1, uvSize * vertices * face);\\n      const fill = [face, face, face, face, face, face];\\n      faceIndex.set(fill, faceIndexSize * vertices * face);\\n    }\\n    const planes = new BufferGeometry();\\n    planes.setAttribute(\\\\\\\"position\\\\\\\", new BufferAttribute(position, positionSize));\\n    planes.setAttribute(\\\\\\\"uv\\\\\\\", new BufferAttribute(uv, uvSize));\\n    planes.setAttribute(\\\\\\\"faceIndex\\\\\\\", new BufferAttribute(faceIndex, faceIndexSize));\\n    _lodPlanes2.push(planes);\\n    if (lod > LOD_MIN) {\\n      lod--;\\n    }\\n  }\\n  return {_lodPlanes: _lodPlanes2, _sizeLods: _sizeLods2, _sigmas: _sigmas2};\\n}\\nfunction _createRenderTarget(params) {\\n  const cubeUVRenderTarget = new WebGLRenderTarget(3 * SIZE_MAX, 3 * SIZE_MAX, params);\\n  cubeUVRenderTarget.texture.mapping = CubeUVReflectionMapping;\\n  cubeUVRenderTarget.texture.name = \\\\\\\"PMREM.cubeUv\\\\\\\";\\n  cubeUVRenderTarget.scissorTest = true;\\n  return cubeUVRenderTarget;\\n}\\nfunction _setViewport(target, x, y, width, height) {\\n  target.viewport.set(x, y, width, height);\\n  target.scissor.set(x, y, width, height);\\n}\\nfunction _getBlurShader(maxSamples) {\\n  const weights = new Float32Array(maxSamples);\\n  const poleAxis = new Vector3(0, 1, 0);\\n  const shaderMaterial = new RawShaderMaterial({\\n    name: \\\\\\\"SphericalGaussianBlur\\\\\\\",\\n    defines: {n: maxSamples},\\n    uniforms: {\\n      envMap: {value: null},\\n      samples: {value: 1},\\n      weights: {value: weights},\\n      latitudinal: {value: false},\\n      dTheta: {value: 0},\\n      mipInt: {value: 0},\\n      poleAxis: {value: poleAxis},\\n      inputEncoding: {value: ENCODINGS[LinearEncoding]},\\n      outputEncoding: {value: ENCODINGS[LinearEncoding]}\\n    },\\n    vertexShader: _getCommonVertexShader(),\\n    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${_getEncodings()}\\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\\tgl_FragColor = linearToOutputTexel( gl_FragColor );\\n\\n\\t\\t\\t}\\n\\t\\t`,\\n    blending: NoBlending,\\n    depthTest: false,\\n    depthWrite: false\\n  });\\n  return shaderMaterial;\\n}\\nfunction _getEquirectShader() {\\n  const texelSize = new Vector2(1, 1);\\n  const shaderMaterial = new RawShaderMaterial({\\n    name: \\\\\\\"EquirectangularToCubeUV\\\\\\\",\\n    uniforms: {\\n      envMap: {value: null},\\n      texelSize: {value: texelSize},\\n      inputEncoding: {value: ENCODINGS[LinearEncoding]},\\n      outputEncoding: {value: ENCODINGS[LinearEncoding]}\\n    },\\n    vertexShader: _getCommonVertexShader(),\\n    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 vec2 texelSize;\\n\\n\\t\\t\\t${_getEncodings()}\\n\\n\\t\\t\\t#include <common>\\n\\n\\t\\t\\tvoid main() {\\n\\n\\t\\t\\t\\tgl_FragColor = vec4( 0.0, 0.0, 0.0, 1.0 );\\n\\n\\t\\t\\t\\tvec3 outputDirection = normalize( vOutputDirection );\\n\\t\\t\\t\\tvec2 uv = equirectUv( outputDirection );\\n\\n\\t\\t\\t\\tvec2 f = fract( uv / texelSize - 0.5 );\\n\\t\\t\\t\\tuv -= f * texelSize;\\n\\t\\t\\t\\tvec3 tl = envMapTexelToLinear( texture2D ( envMap, uv ) ).rgb;\\n\\t\\t\\t\\tuv.x += texelSize.x;\\n\\t\\t\\t\\tvec3 tr = envMapTexelToLinear( texture2D ( envMap, uv ) ).rgb;\\n\\t\\t\\t\\tuv.y += texelSize.y;\\n\\t\\t\\t\\tvec3 br = envMapTexelToLinear( texture2D ( envMap, uv ) ).rgb;\\n\\t\\t\\t\\tuv.x -= texelSize.x;\\n\\t\\t\\t\\tvec3 bl = envMapTexelToLinear( texture2D ( envMap, uv ) ).rgb;\\n\\n\\t\\t\\t\\tvec3 tm = mix( tl, tr, f.x );\\n\\t\\t\\t\\tvec3 bm = mix( bl, br, f.x );\\n\\t\\t\\t\\tgl_FragColor.rgb = mix( tm, bm, f.y );\\n\\n\\t\\t\\t\\tgl_FragColor = linearToOutputTexel( gl_FragColor );\\n\\n\\t\\t\\t}\\n\\t\\t`,\\n    blending: NoBlending,\\n    depthTest: false,\\n    depthWrite: false\\n  });\\n  return shaderMaterial;\\n}\\nfunction _getCubemapShader() {\\n  const shaderMaterial = new RawShaderMaterial({\\n    name: \\\\\\\"CubemapToCubeUV\\\\\\\",\\n    uniforms: {\\n      envMap: {value: null},\\n      inputEncoding: {value: ENCODINGS[LinearEncoding]},\\n      outputEncoding: {value: ENCODINGS[LinearEncoding]}\\n    },\\n    vertexShader: _getCommonVertexShader(),\\n    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 samplerCube envMap;\\n\\n\\t\\t\\t${_getEncodings()}\\n\\n\\t\\t\\tvoid main() {\\n\\n\\t\\t\\t\\tgl_FragColor = vec4( 0.0, 0.0, 0.0, 1.0 );\\n\\t\\t\\t\\tgl_FragColor.rgb = envMapTexelToLinear( textureCube( envMap, vec3( - vOutputDirection.x, vOutputDirection.yz ) ) ).rgb;\\n\\t\\t\\t\\tgl_FragColor = linearToOutputTexel( gl_FragColor );\\n\\n\\t\\t\\t}\\n\\t\\t`,\\n    blending: NoBlending,\\n    depthTest: false,\\n    depthWrite: false\\n  });\\n  return shaderMaterial;\\n}\\nfunction _getCommonVertexShader() {\\n  return `\\n\\n\\t\\tprecision mediump float;\\n\\t\\tprecision mediump int;\\n\\n\\t\\tattribute vec3 position;\\n\\t\\tattribute vec2 uv;\\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`;\\n}\\nfunction _getEncodings() {\\n  return `\\n\\n\\t\\tuniform int inputEncoding;\\n\\t\\tuniform int outputEncoding;\\n\\n\\t\\t#include <encodings_pars_fragment>\\n\\n\\t\\tvec4 inputTexelToLinear( vec4 value ) {\\n\\n\\t\\t\\tif ( inputEncoding == 0 ) {\\n\\n\\t\\t\\t\\treturn value;\\n\\n\\t\\t\\t} else if ( inputEncoding == 1 ) {\\n\\n\\t\\t\\t\\treturn sRGBToLinear( value );\\n\\n\\t\\t\\t} else if ( inputEncoding == 2 ) {\\n\\n\\t\\t\\t\\treturn RGBEToLinear( value );\\n\\n\\t\\t\\t} else if ( inputEncoding == 3 ) {\\n\\n\\t\\t\\t\\treturn RGBMToLinear( value, 7.0 );\\n\\n\\t\\t\\t} else if ( inputEncoding == 4 ) {\\n\\n\\t\\t\\t\\treturn RGBMToLinear( value, 16.0 );\\n\\n\\t\\t\\t} else if ( inputEncoding == 5 ) {\\n\\n\\t\\t\\t\\treturn RGBDToLinear( value, 256.0 );\\n\\n\\t\\t\\t} else {\\n\\n\\t\\t\\t\\treturn GammaToLinear( value, 2.2 );\\n\\n\\t\\t\\t}\\n\\n\\t\\t}\\n\\n\\t\\tvec4 linearToOutputTexel( vec4 value ) {\\n\\n\\t\\t\\tif ( outputEncoding == 0 ) {\\n\\n\\t\\t\\t\\treturn value;\\n\\n\\t\\t\\t} else if ( outputEncoding == 1 ) {\\n\\n\\t\\t\\t\\treturn LinearTosRGB( value );\\n\\n\\t\\t\\t} else if ( outputEncoding == 2 ) {\\n\\n\\t\\t\\t\\treturn LinearToRGBE( value );\\n\\n\\t\\t\\t} else if ( outputEncoding == 3 ) {\\n\\n\\t\\t\\t\\treturn LinearToRGBM( value, 7.0 );\\n\\n\\t\\t\\t} else if ( outputEncoding == 4 ) {\\n\\n\\t\\t\\t\\treturn LinearToRGBM( value, 16.0 );\\n\\n\\t\\t\\t} else if ( outputEncoding == 5 ) {\\n\\n\\t\\t\\t\\treturn LinearToRGBD( value, 256.0 );\\n\\n\\t\\t\\t} else {\\n\\n\\t\\t\\t\\treturn LinearToGamma( value, 2.2 );\\n\\n\\t\\t\\t}\\n\\n\\t\\t}\\n\\n\\t\\tvec4 envMapTexelToLinear( vec4 color ) {\\n\\n\\t\\t\\treturn inputTexelToLinear( color );\\n\\n\\t\\t}\\n\\t`;\\n}\\n\\n// ../../../node_modules/three/src/renderers/webgl/WebGLCubeUVMaps.js\\nfunction WebGLCubeUVMaps(renderer) {\\n  let cubeUVmaps = new WeakMap();\\n  let pmremGenerator = null;\\n  function get(texture) {\\n    if (texture && texture.isTexture && texture.isRenderTargetTexture === false) {\\n      const mapping = texture.mapping;\\n      const isEquirectMap = mapping === EquirectangularReflectionMapping || mapping === EquirectangularRefractionMapping;\\n      const isCubeMap = mapping === CubeReflectionMapping || mapping === CubeRefractionMapping;\\n      if (isEquirectMap || isCubeMap) {\\n        if (cubeUVmaps.has(texture)) {\\n          return cubeUVmaps.get(texture).texture;\\n        } else {\\n          const image = texture.image;\\n          if (isEquirectMap && image && image.height > 0 || isCubeMap && image && isCubeTextureComplete(image)) {\\n            const currentRenderTarget = renderer.getRenderTarget();\\n            if (pmremGenerator === null)\\n              pmremGenerator = new PMREMGenerator(renderer);\\n            const renderTarget = isEquirectMap ? pmremGenerator.fromEquirectangular(texture) : pmremGenerator.fromCubemap(texture);\\n            cubeUVmaps.set(texture, renderTarget);\\n            renderer.setRenderTarget(currentRenderTarget);\\n            texture.addEventListener(\\\\\\\"dispose\\\\\\\", onTextureDispose);\\n            return renderTarget.texture;\\n          } else {\\n            return null;\\n          }\\n        }\\n      }\\n    }\\n    return texture;\\n  }\\n  function isCubeTextureComplete(image) {\\n    let count = 0;\\n    const length = 6;\\n    for (let i = 0; i < length; i++) {\\n      if (image[i] !== void 0)\\n        count++;\\n    }\\n    return count === length;\\n  }\\n  function onTextureDispose(event) {\\n    const texture = event.target;\\n    texture.removeEventListener(\\\\\\\"dispose\\\\\\\", onTextureDispose);\\n    const cubemapUV = cubeUVmaps.get(texture);\\n    if (cubemapUV !== void 0) {\\n      cubeUVmaps.delete(texture);\\n      cubemapUV.dispose();\\n    }\\n  }\\n  function dispose() {\\n    cubeUVmaps = new WeakMap();\\n    if (pmremGenerator !== null) {\\n      pmremGenerator.dispose();\\n      pmremGenerator = null;\\n    }\\n  }\\n  return {\\n    get,\\n    dispose\\n  };\\n}\\n\\n// ../../../node_modules/three/src/renderers/webgl/WebGLExtensions.js\\nfunction WebGLExtensions(gl) {\\n  const extensions = {};\\n  function getExtension(name) {\\n    if (extensions[name] !== void 0) {\\n      return extensions[name];\\n    }\\n    let extension;\\n    switch (name) {\\n      case \\\\\\\"WEBGL_depth_texture\\\\\\\":\\n        extension = gl.getExtension(\\\\\\\"WEBGL_depth_texture\\\\\\\") || gl.getExtension(\\\\\\\"MOZ_WEBGL_depth_texture\\\\\\\") || gl.getExtension(\\\\\\\"WEBKIT_WEBGL_depth_texture\\\\\\\");\\n        break;\\n      case \\\\\\\"EXT_texture_filter_anisotropic\\\\\\\":\\n        extension = gl.getExtension(\\\\\\\"EXT_texture_filter_anisotropic\\\\\\\") || gl.getExtension(\\\\\\\"MOZ_EXT_texture_filter_anisotropic\\\\\\\") || gl.getExtension(\\\\\\\"WEBKIT_EXT_texture_filter_anisotropic\\\\\\\");\\n        break;\\n      case \\\\\\\"WEBGL_compressed_texture_s3tc\\\\\\\":\\n        extension = gl.getExtension(\\\\\\\"WEBGL_compressed_texture_s3tc\\\\\\\") || gl.getExtension(\\\\\\\"MOZ_WEBGL_compressed_texture_s3tc\\\\\\\") || gl.getExtension(\\\\\\\"WEBKIT_WEBGL_compressed_texture_s3tc\\\\\\\");\\n        break;\\n      case \\\\\\\"WEBGL_compressed_texture_pvrtc\\\\\\\":\\n        extension = gl.getExtension(\\\\\\\"WEBGL_compressed_texture_pvrtc\\\\\\\") || gl.getExtension(\\\\\\\"WEBKIT_WEBGL_compressed_texture_pvrtc\\\\\\\");\\n        break;\\n      default:\\n        extension = gl.getExtension(name);\\n    }\\n    extensions[name] = extension;\\n    return extension;\\n  }\\n  return {\\n    has: function(name) {\\n      return getExtension(name) !== null;\\n    },\\n    init: function(capabilities) {\\n      if (capabilities.isWebGL2) {\\n        getExtension(\\\\\\\"EXT_color_buffer_float\\\\\\\");\\n      } else {\\n        getExtension(\\\\\\\"WEBGL_depth_texture\\\\\\\");\\n        getExtension(\\\\\\\"OES_texture_float\\\\\\\");\\n        getExtension(\\\\\\\"OES_texture_half_float\\\\\\\");\\n        getExtension(\\\\\\\"OES_texture_half_float_linear\\\\\\\");\\n        getExtension(\\\\\\\"OES_standard_derivatives\\\\\\\");\\n        getExtension(\\\\\\\"OES_element_index_uint\\\\\\\");\\n        getExtension(\\\\\\\"OES_vertex_array_object\\\\\\\");\\n        getExtension(\\\\\\\"ANGLE_instanced_arrays\\\\\\\");\\n      }\\n      getExtension(\\\\\\\"OES_texture_float_linear\\\\\\\");\\n      getExtension(\\\\\\\"EXT_color_buffer_half_float\\\\\\\");\\n    },\\n    get: function(name) {\\n      const extension = getExtension(name);\\n      if (extension === null) {\\n        console.warn(\\\\\\\"THREE.WebGLRenderer: \\\\\\\" + name + \\\\\\\" extension not supported.\\\\\\\");\\n      }\\n      return extension;\\n    }\\n  };\\n}\\n\\n// ../../../node_modules/three/src/renderers/webgl/WebGLGeometries.js\\nfunction WebGLGeometries(gl, attributes, info, bindingStates) {\\n  const geometries = {};\\n  const wireframeAttributes = new WeakMap();\\n  function onGeometryDispose(event) {\\n    const geometry = event.target;\\n    if (geometry.index !== null) {\\n      attributes.remove(geometry.index);\\n    }\\n    for (const name in geometry.attributes) {\\n      attributes.remove(geometry.attributes[name]);\\n    }\\n    geometry.removeEventListener(\\\\\\\"dispose\\\\\\\", onGeometryDispose);\\n    delete geometries[geometry.id];\\n    const attribute = wireframeAttributes.get(geometry);\\n    if (attribute) {\\n      attributes.remove(attribute);\\n      wireframeAttributes.delete(geometry);\\n    }\\n    bindingStates.releaseStatesOfGeometry(geometry);\\n    if (geometry.isInstancedBufferGeometry === true) {\\n      delete geometry._maxInstanceCount;\\n    }\\n    info.memory.geometries--;\\n  }\\n  function get(object, geometry) {\\n    if (geometries[geometry.id] === true)\\n      return geometry;\\n    geometry.addEventListener(\\\\\\\"dispose\\\\\\\", onGeometryDispose);\\n    geometries[geometry.id] = true;\\n    info.memory.geometries++;\\n    return geometry;\\n  }\\n  function update(geometry) {\\n    const geometryAttributes = geometry.attributes;\\n    for (const name in geometryAttributes) {\\n      attributes.update(geometryAttributes[name], gl.ARRAY_BUFFER);\\n    }\\n    const morphAttributes = geometry.morphAttributes;\\n    for (const name in morphAttributes) {\\n      const array = morphAttributes[name];\\n      for (let i = 0, l = array.length; i < l; i++) {\\n        attributes.update(array[i], gl.ARRAY_BUFFER);\\n      }\\n    }\\n  }\\n  function updateWireframeAttribute(geometry) {\\n    const indices = [];\\n    const geometryIndex = geometry.index;\\n    const geometryPosition = geometry.attributes.position;\\n    let version = 0;\\n    if (geometryIndex !== null) {\\n      const array = geometryIndex.array;\\n      version = geometryIndex.version;\\n      for (let i = 0, l = array.length; i < l; i += 3) {\\n        const a = array[i + 0];\\n        const b = array[i + 1];\\n        const c = array[i + 2];\\n        indices.push(a, b, b, c, c, a);\\n      }\\n    } else {\\n      const array = geometryPosition.array;\\n      version = geometryPosition.version;\\n      for (let i = 0, l = array.length / 3 - 1; i < l; i += 3) {\\n        const a = i + 0;\\n        const b = i + 1;\\n        const c = i + 2;\\n        indices.push(a, b, b, c, c, a);\\n      }\\n    }\\n    const attribute = new (arrayMax(indices) > 65535 ? Uint32BufferAttribute : Uint16BufferAttribute)(indices, 1);\\n    attribute.version = version;\\n    const previousAttribute = wireframeAttributes.get(geometry);\\n    if (previousAttribute)\\n      attributes.remove(previousAttribute);\\n    wireframeAttributes.set(geometry, attribute);\\n  }\\n  function getWireframeAttribute(geometry) {\\n    const currentAttribute = wireframeAttributes.get(geometry);\\n    if (currentAttribute) {\\n      const geometryIndex = geometry.index;\\n      if (geometryIndex !== null) {\\n        if (currentAttribute.version < geometryIndex.version) {\\n          updateWireframeAttribute(geometry);\\n        }\\n      }\\n    } else {\\n      updateWireframeAttribute(geometry);\\n    }\\n    return wireframeAttributes.get(geometry);\\n  }\\n  return {\\n    get,\\n    update,\\n    getWireframeAttribute\\n  };\\n}\\n\\n// ../../../node_modules/three/src/renderers/webgl/WebGLIndexedBufferRenderer.js\\nfunction WebGLIndexedBufferRenderer(gl, extensions, info, capabilities) {\\n  const isWebGL2 = capabilities.isWebGL2;\\n  let mode;\\n  function setMode(value) {\\n    mode = value;\\n  }\\n  let type, bytesPerElement;\\n  function setIndex(value) {\\n    type = value.type;\\n    bytesPerElement = value.bytesPerElement;\\n  }\\n  function render(start, count) {\\n    gl.drawElements(mode, count, type, start * bytesPerElement);\\n    info.update(count, mode, 1);\\n  }\\n  function renderInstances(start, count, primcount) {\\n    if (primcount === 0)\\n      return;\\n    let extension, methodName;\\n    if (isWebGL2) {\\n      extension = gl;\\n      methodName = \\\\\\\"drawElementsInstanced\\\\\\\";\\n    } else {\\n      extension = extensions.get(\\\\\\\"ANGLE_instanced_arrays\\\\\\\");\\n      methodName = \\\\\\\"drawElementsInstancedANGLE\\\\\\\";\\n      if (extension === null) {\\n        console.error(\\\\\\\"THREE.WebGLIndexedBufferRenderer: using THREE.InstancedBufferGeometry but hardware does not support extension ANGLE_instanced_arrays.\\\\\\\");\\n        return;\\n      }\\n    }\\n    extension[methodName](mode, count, type, start * bytesPerElement, primcount);\\n    info.update(count, mode, primcount);\\n  }\\n  this.setMode = setMode;\\n  this.setIndex = setIndex;\\n  this.render = render;\\n  this.renderInstances = renderInstances;\\n}\\n\\n// ../../../node_modules/three/src/renderers/webgl/WebGLInfo.js\\nfunction WebGLInfo(gl) {\\n  const memory = {\\n    geometries: 0,\\n    textures: 0\\n  };\\n  const render = {\\n    frame: 0,\\n    calls: 0,\\n    triangles: 0,\\n    points: 0,\\n    lines: 0\\n  };\\n  function update(count, mode, instanceCount) {\\n    render.calls++;\\n    switch (mode) {\\n      case gl.TRIANGLES:\\n        render.triangles += instanceCount * (count / 3);\\n        break;\\n      case gl.LINES:\\n        render.lines += instanceCount * (count / 2);\\n        break;\\n      case gl.LINE_STRIP:\\n        render.lines += instanceCount * (count - 1);\\n        break;\\n      case gl.LINE_LOOP:\\n        render.lines += instanceCount * count;\\n        break;\\n      case gl.POINTS:\\n        render.points += instanceCount * count;\\n        break;\\n      default:\\n        console.error(\\\\\\\"THREE.WebGLInfo: Unknown draw mode:\\\\\\\", mode);\\n        break;\\n    }\\n  }\\n  function reset() {\\n    render.frame++;\\n    render.calls = 0;\\n    render.triangles = 0;\\n    render.points = 0;\\n    render.lines = 0;\\n  }\\n  return {\\n    memory,\\n    render,\\n    programs: null,\\n    autoReset: true,\\n    reset,\\n    update\\n  };\\n}\\n\\n// ../../../node_modules/three/src/textures/DataTexture2DArray.js\\nvar DataTexture2DArray = class extends Texture {\\n  constructor(data = null, width = 1, height = 1, depth2 = 1) {\\n    super(null);\\n    this.image = {data, width, height, depth: depth2};\\n    this.magFilter = NearestFilter;\\n    this.minFilter = NearestFilter;\\n    this.wrapR = ClampToEdgeWrapping;\\n    this.generateMipmaps = false;\\n    this.flipY = false;\\n    this.unpackAlignment = 1;\\n    this.needsUpdate = true;\\n  }\\n};\\nDataTexture2DArray.prototype.isDataTexture2DArray = true;\\n\\n// ../../../node_modules/three/src/renderers/webgl/WebGLMorphtargets.js\\nfunction numericalSort(a, b) {\\n  return a[0] - b[0];\\n}\\nfunction absNumericalSort(a, b) {\\n  return Math.abs(b[1]) - Math.abs(a[1]);\\n}\\nfunction denormalize(morph, attribute) {\\n  let denominator = 1;\\n  const array = attribute.isInterleavedBufferAttribute ? attribute.data.array : attribute.array;\\n  if (array instanceof Int8Array)\\n    denominator = 127;\\n  else if (array instanceof Int16Array)\\n    denominator = 32767;\\n  else if (array instanceof Int32Array)\\n    denominator = 2147483647;\\n  else\\n    console.error(\\\\\\\"THREE.WebGLMorphtargets: Unsupported morph attribute data type: \\\\\\\", array);\\n  morph.divideScalar(denominator);\\n}\\nfunction WebGLMorphtargets(gl, capabilities, textures) {\\n  const influencesList = {};\\n  const morphInfluences = new Float32Array(8);\\n  const morphTextures = new WeakMap();\\n  const morph = new Vector3();\\n  const workInfluences = [];\\n  for (let i = 0; i < 8; i++) {\\n    workInfluences[i] = [i, 0];\\n  }\\n  function update(object, geometry, material, program) {\\n    const objectInfluences = object.morphTargetInfluences;\\n    if (capabilities.isWebGL2 === true) {\\n      const numberOfMorphTargets = geometry.morphAttributes.position.length;\\n      let entry = morphTextures.get(geometry);\\n      if (entry === void 0 || entry.count !== numberOfMorphTargets) {\\n        if (entry !== void 0)\\n          entry.texture.dispose();\\n        const hasMorphNormals = geometry.morphAttributes.normal !== void 0;\\n        const morphTargets = geometry.morphAttributes.position;\\n        const morphNormals = geometry.morphAttributes.normal || [];\\n        const numberOfVertices = geometry.attributes.position.count;\\n        const numberOfVertexData = hasMorphNormals === true ? 2 : 1;\\n        let width = numberOfVertices * numberOfVertexData;\\n        let height = 1;\\n        if (width > capabilities.maxTextureSize) {\\n          height = Math.ceil(width / capabilities.maxTextureSize);\\n          width = capabilities.maxTextureSize;\\n        }\\n        const buffer = new Float32Array(width * height * 4 * numberOfMorphTargets);\\n        const texture = new DataTexture2DArray(buffer, width, height, numberOfMorphTargets);\\n        texture.format = RGBAFormat;\\n        texture.type = FloatType;\\n        const vertexDataStride = numberOfVertexData * 4;\\n        for (let i = 0; i < numberOfMorphTargets; i++) {\\n          const morphTarget = morphTargets[i];\\n          const morphNormal = morphNormals[i];\\n          const offset = width * height * 4 * i;\\n          for (let j = 0; j < morphTarget.count; j++) {\\n            morph.fromBufferAttribute(morphTarget, j);\\n            if (morphTarget.normalized === true)\\n              denormalize(morph, morphTarget);\\n            const stride = j * vertexDataStride;\\n            buffer[offset + stride + 0] = morph.x;\\n            buffer[offset + stride + 1] = morph.y;\\n            buffer[offset + stride + 2] = morph.z;\\n            buffer[offset + stride + 3] = 0;\\n            if (hasMorphNormals === true) {\\n              morph.fromBufferAttribute(morphNormal, j);\\n              if (morphNormal.normalized === true)\\n                denormalize(morph, morphNormal);\\n              buffer[offset + stride + 4] = morph.x;\\n              buffer[offset + stride + 5] = morph.y;\\n              buffer[offset + stride + 6] = morph.z;\\n              buffer[offset + stride + 7] = 0;\\n            }\\n          }\\n        }\\n        entry = {\\n          count: numberOfMorphTargets,\\n          texture,\\n          size: new Vector2(width, height)\\n        };\\n        morphTextures.set(geometry, entry);\\n      }\\n      let morphInfluencesSum = 0;\\n      for (let i = 0; i < objectInfluences.length; i++) {\\n        morphInfluencesSum += objectInfluences[i];\\n      }\\n      const morphBaseInfluence = geometry.morphTargetsRelative ? 1 : 1 - morphInfluencesSum;\\n      program.getUniforms().setValue(gl, \\\\\\\"morphTargetBaseInfluence\\\\\\\", morphBaseInfluence);\\n      program.getUniforms().setValue(gl, \\\\\\\"morphTargetInfluences\\\\\\\", objectInfluences);\\n      program.getUniforms().setValue(gl, \\\\\\\"morphTargetsTexture\\\\\\\", entry.texture, textures);\\n      program.getUniforms().setValue(gl, \\\\\\\"morphTargetsTextureSize\\\\\\\", entry.size);\\n    } else {\\n      const length = objectInfluences === void 0 ? 0 : objectInfluences.length;\\n      let influences = influencesList[geometry.id];\\n      if (influences === void 0 || influences.length !== length) {\\n        influences = [];\\n        for (let i = 0; i < length; i++) {\\n          influences[i] = [i, 0];\\n        }\\n        influencesList[geometry.id] = influences;\\n      }\\n      for (let i = 0; i < length; i++) {\\n        const influence = influences[i];\\n        influence[0] = i;\\n        influence[1] = objectInfluences[i];\\n      }\\n      influences.sort(absNumericalSort);\\n      for (let i = 0; i < 8; i++) {\\n        if (i < length && influences[i][1]) {\\n          workInfluences[i][0] = influences[i][0];\\n          workInfluences[i][1] = influences[i][1];\\n        } else {\\n          workInfluences[i][0] = Number.MAX_SAFE_INTEGER;\\n          workInfluences[i][1] = 0;\\n        }\\n      }\\n      workInfluences.sort(numericalSort);\\n      const morphTargets = geometry.morphAttributes.position;\\n      const morphNormals = geometry.morphAttributes.normal;\\n      let morphInfluencesSum = 0;\\n      for (let i = 0; i < 8; i++) {\\n        const influence = workInfluences[i];\\n        const index = influence[0];\\n        const value = influence[1];\\n        if (index !== Number.MAX_SAFE_INTEGER && value) {\\n          if (morphTargets && geometry.getAttribute(\\\\\\\"morphTarget\\\\\\\" + i) !== morphTargets[index]) {\\n            geometry.setAttribute(\\\\\\\"morphTarget\\\\\\\" + i, morphTargets[index]);\\n          }\\n          if (morphNormals && geometry.getAttribute(\\\\\\\"morphNormal\\\\\\\" + i) !== morphNormals[index]) {\\n            geometry.setAttribute(\\\\\\\"morphNormal\\\\\\\" + i, morphNormals[index]);\\n          }\\n          morphInfluences[i] = value;\\n          morphInfluencesSum += value;\\n        } else {\\n          if (morphTargets && geometry.hasAttribute(\\\\\\\"morphTarget\\\\\\\" + i) === true) {\\n            geometry.deleteAttribute(\\\\\\\"morphTarget\\\\\\\" + i);\\n          }\\n          if (morphNormals && geometry.hasAttribute(\\\\\\\"morphNormal\\\\\\\" + i) === true) {\\n            geometry.deleteAttribute(\\\\\\\"morphNormal\\\\\\\" + i);\\n          }\\n          morphInfluences[i] = 0;\\n        }\\n      }\\n      const morphBaseInfluence = geometry.morphTargetsRelative ? 1 : 1 - morphInfluencesSum;\\n      program.getUniforms().setValue(gl, \\\\\\\"morphTargetBaseInfluence\\\\\\\", morphBaseInfluence);\\n      program.getUniforms().setValue(gl, \\\\\\\"morphTargetInfluences\\\\\\\", morphInfluences);\\n    }\\n  }\\n  return {\\n    update\\n  };\\n}\\n\\n// ../../../node_modules/three/src/renderers/WebGLMultisampleRenderTarget.js\\nvar WebGLMultisampleRenderTarget = class extends WebGLRenderTarget {\\n  constructor(width, height, options) {\\n    super(width, height, options);\\n    this.samples = 4;\\n  }\\n  copy(source) {\\n    super.copy.call(this, source);\\n    this.samples = source.samples;\\n    return this;\\n  }\\n};\\nWebGLMultisampleRenderTarget.prototype.isWebGLMultisampleRenderTarget = true;\\n\\n// ../../../node_modules/three/src/renderers/webgl/WebGLObjects.js\\nfunction WebGLObjects(gl, geometries, attributes, info) {\\n  let updateMap = new WeakMap();\\n  function update(object) {\\n    const frame = info.render.frame;\\n    const geometry = object.geometry;\\n    const buffergeometry = geometries.get(object, geometry);\\n    if (updateMap.get(buffergeometry) !== frame) {\\n      geometries.update(buffergeometry);\\n      updateMap.set(buffergeometry, frame);\\n    }\\n    if (object.isInstancedMesh) {\\n      if (object.hasEventListener(\\\\\\\"dispose\\\\\\\", onInstancedMeshDispose) === false) {\\n        object.addEventListener(\\\\\\\"dispose\\\\\\\", onInstancedMeshDispose);\\n      }\\n      attributes.update(object.instanceMatrix, gl.ARRAY_BUFFER);\\n      if (object.instanceColor !== null) {\\n        attributes.update(object.instanceColor, gl.ARRAY_BUFFER);\\n      }\\n    }\\n    return buffergeometry;\\n  }\\n  function dispose() {\\n    updateMap = new WeakMap();\\n  }\\n  function onInstancedMeshDispose(event) {\\n    const instancedMesh = event.target;\\n    instancedMesh.removeEventListener(\\\\\\\"dispose\\\\\\\", onInstancedMeshDispose);\\n    attributes.remove(instancedMesh.instanceMatrix);\\n    if (instancedMesh.instanceColor !== null)\\n      attributes.remove(instancedMesh.instanceColor);\\n  }\\n  return {\\n    update,\\n    dispose\\n  };\\n}\\n\\n// ../../../node_modules/three/src/textures/DataTexture3D.js\\nvar DataTexture3D = class extends Texture {\\n  constructor(data = null, width = 1, height = 1, depth2 = 1) {\\n    super(null);\\n    this.image = {data, width, height, depth: depth2};\\n    this.magFilter = NearestFilter;\\n    this.minFilter = NearestFilter;\\n    this.wrapR = ClampToEdgeWrapping;\\n    this.generateMipmaps = false;\\n    this.flipY = false;\\n    this.unpackAlignment = 1;\\n    this.needsUpdate = true;\\n  }\\n};\\nDataTexture3D.prototype.isDataTexture3D = true;\\n\\n// ../../../node_modules/three/src/renderers/webgl/WebGLUniforms.js\\nvar emptyTexture = new Texture();\\nvar emptyTexture2dArray = new DataTexture2DArray();\\nvar emptyTexture3d = new DataTexture3D();\\nvar emptyCubeTexture = new CubeTexture();\\nvar arrayCacheF32 = [];\\nvar arrayCacheI32 = [];\\nvar mat4array = new Float32Array(16);\\nvar mat3array = new Float32Array(9);\\nvar mat2array = new Float32Array(4);\\nfunction flatten(array, nBlocks, blockSize) {\\n  const firstElem = array[0];\\n  if (firstElem <= 0 || firstElem > 0)\\n    return array;\\n  const n = nBlocks * blockSize;\\n  let r = arrayCacheF32[n];\\n  if (r === void 0) {\\n    r = new Float32Array(n);\\n    arrayCacheF32[n] = r;\\n  }\\n  if (nBlocks !== 0) {\\n    firstElem.toArray(r, 0);\\n    for (let i = 1, offset = 0; i !== nBlocks; ++i) {\\n      offset += blockSize;\\n      array[i].toArray(r, offset);\\n    }\\n  }\\n  return r;\\n}\\nfunction arraysEqual(a, b) {\\n  if (a.length !== b.length)\\n    return false;\\n  for (let i = 0, l = a.length; i < l; i++) {\\n    if (a[i] !== b[i])\\n      return false;\\n  }\\n  return true;\\n}\\nfunction copyArray(a, b) {\\n  for (let i = 0, l = b.length; i < l; i++) {\\n    a[i] = b[i];\\n  }\\n}\\nfunction allocTexUnits(textures, n) {\\n  let r = arrayCacheI32[n];\\n  if (r === void 0) {\\n    r = new Int32Array(n);\\n    arrayCacheI32[n] = r;\\n  }\\n  for (let i = 0; i !== n; ++i) {\\n    r[i] = textures.allocateTextureUnit();\\n  }\\n  return r;\\n}\\nfunction setValueV1f(gl, v) {\\n  const cache = this.cache;\\n  if (cache[0] === v)\\n    return;\\n  gl.uniform1f(this.addr, v);\\n  cache[0] = v;\\n}\\nfunction setValueV2f(gl, v) {\\n  const cache = this.cache;\\n  if (v.x !== void 0) {\\n    if (cache[0] !== v.x || cache[1] !== v.y) {\\n      gl.uniform2f(this.addr, v.x, v.y);\\n      cache[0] = v.x;\\n      cache[1] = v.y;\\n    }\\n  } else {\\n    if (arraysEqual(cache, v))\\n      return;\\n    gl.uniform2fv(this.addr, v);\\n    copyArray(cache, v);\\n  }\\n}\\nfunction setValueV3f(gl, v) {\\n  const cache = this.cache;\\n  if (v.x !== void 0) {\\n    if (cache[0] !== v.x || cache[1] !== v.y || cache[2] !== v.z) {\\n      gl.uniform3f(this.addr, v.x, v.y, v.z);\\n      cache[0] = v.x;\\n      cache[1] = v.y;\\n      cache[2] = v.z;\\n    }\\n  } else if (v.r !== void 0) {\\n    if (cache[0] !== v.r || cache[1] !== v.g || cache[2] !== v.b) {\\n      gl.uniform3f(this.addr, v.r, v.g, v.b);\\n      cache[0] = v.r;\\n      cache[1] = v.g;\\n      cache[2] = v.b;\\n    }\\n  } else {\\n    if (arraysEqual(cache, v))\\n      return;\\n    gl.uniform3fv(this.addr, v);\\n    copyArray(cache, v);\\n  }\\n}\\nfunction setValueV4f(gl, v) {\\n  const cache = this.cache;\\n  if (v.x !== void 0) {\\n    if (cache[0] !== v.x || cache[1] !== v.y || cache[2] !== v.z || cache[3] !== v.w) {\\n      gl.uniform4f(this.addr, v.x, v.y, v.z, v.w);\\n      cache[0] = v.x;\\n      cache[1] = v.y;\\n      cache[2] = v.z;\\n      cache[3] = v.w;\\n    }\\n  } else {\\n    if (arraysEqual(cache, v))\\n      return;\\n    gl.uniform4fv(this.addr, v);\\n    copyArray(cache, v);\\n  }\\n}\\nfunction setValueM2(gl, v) {\\n  const cache = this.cache;\\n  const elements = v.elements;\\n  if (elements === void 0) {\\n    if (arraysEqual(cache, v))\\n      return;\\n    gl.uniformMatrix2fv(this.addr, false, v);\\n    copyArray(cache, v);\\n  } else {\\n    if (arraysEqual(cache, elements))\\n      return;\\n    mat2array.set(elements);\\n    gl.uniformMatrix2fv(this.addr, false, mat2array);\\n    copyArray(cache, elements);\\n  }\\n}\\nfunction setValueM3(gl, v) {\\n  const cache = this.cache;\\n  const elements = v.elements;\\n  if (elements === void 0) {\\n    if (arraysEqual(cache, v))\\n      return;\\n    gl.uniformMatrix3fv(this.addr, false, v);\\n    copyArray(cache, v);\\n  } else {\\n    if (arraysEqual(cache, elements))\\n      return;\\n    mat3array.set(elements);\\n    gl.uniformMatrix3fv(this.addr, false, mat3array);\\n    copyArray(cache, elements);\\n  }\\n}\\nfunction setValueM4(gl, v) {\\n  const cache = this.cache;\\n  const elements = v.elements;\\n  if (elements === void 0) {\\n    if (arraysEqual(cache, v))\\n      return;\\n    gl.uniformMatrix4fv(this.addr, false, v);\\n    copyArray(cache, v);\\n  } else {\\n    if (arraysEqual(cache, elements))\\n      return;\\n    mat4array.set(elements);\\n    gl.uniformMatrix4fv(this.addr, false, mat4array);\\n    copyArray(cache, elements);\\n  }\\n}\\nfunction setValueV1i(gl, v) {\\n  const cache = this.cache;\\n  if (cache[0] === v)\\n    return;\\n  gl.uniform1i(this.addr, v);\\n  cache[0] = v;\\n}\\nfunction setValueV2i(gl, v) {\\n  const cache = this.cache;\\n  if (arraysEqual(cache, v))\\n    return;\\n  gl.uniform2iv(this.addr, v);\\n  copyArray(cache, v);\\n}\\nfunction setValueV3i(gl, v) {\\n  const cache = this.cache;\\n  if (arraysEqual(cache, v))\\n    return;\\n  gl.uniform3iv(this.addr, v);\\n  copyArray(cache, v);\\n}\\nfunction setValueV4i(gl, v) {\\n  const cache = this.cache;\\n  if (arraysEqual(cache, v))\\n    return;\\n  gl.uniform4iv(this.addr, v);\\n  copyArray(cache, v);\\n}\\nfunction setValueV1ui(gl, v) {\\n  const cache = this.cache;\\n  if (cache[0] === v)\\n    return;\\n  gl.uniform1ui(this.addr, v);\\n  cache[0] = v;\\n}\\nfunction setValueV2ui(gl, v) {\\n  const cache = this.cache;\\n  if (arraysEqual(cache, v))\\n    return;\\n  gl.uniform2uiv(this.addr, v);\\n  copyArray(cache, v);\\n}\\nfunction setValueV3ui(gl, v) {\\n  const cache = this.cache;\\n  if (arraysEqual(cache, v))\\n    return;\\n  gl.uniform3uiv(this.addr, v);\\n  copyArray(cache, v);\\n}\\nfunction setValueV4ui(gl, v) {\\n  const cache = this.cache;\\n  if (arraysEqual(cache, v))\\n    return;\\n  gl.uniform4uiv(this.addr, v);\\n  copyArray(cache, v);\\n}\\nfunction setValueT1(gl, v, textures) {\\n  const cache = this.cache;\\n  const unit = textures.allocateTextureUnit();\\n  if (cache[0] !== unit) {\\n    gl.uniform1i(this.addr, unit);\\n    cache[0] = unit;\\n  }\\n  textures.safeSetTexture2D(v || emptyTexture, unit);\\n}\\nfunction setValueT3D1(gl, v, textures) {\\n  const cache = this.cache;\\n  const unit = textures.allocateTextureUnit();\\n  if (cache[0] !== unit) {\\n    gl.uniform1i(this.addr, unit);\\n    cache[0] = unit;\\n  }\\n  textures.setTexture3D(v || emptyTexture3d, unit);\\n}\\nfunction setValueT6(gl, v, textures) {\\n  const cache = this.cache;\\n  const unit = textures.allocateTextureUnit();\\n  if (cache[0] !== unit) {\\n    gl.uniform1i(this.addr, unit);\\n    cache[0] = unit;\\n  }\\n  textures.safeSetTextureCube(v || emptyCubeTexture, unit);\\n}\\nfunction setValueT2DArray1(gl, v, textures) {\\n  const cache = this.cache;\\n  const unit = textures.allocateTextureUnit();\\n  if (cache[0] !== unit) {\\n    gl.uniform1i(this.addr, unit);\\n    cache[0] = unit;\\n  }\\n  textures.setTexture2DArray(v || emptyTexture2dArray, unit);\\n}\\nfunction getSingularSetter(type) {\\n  switch (type) {\\n    case 5126:\\n      return setValueV1f;\\n    case 35664:\\n      return setValueV2f;\\n    case 35665:\\n      return setValueV3f;\\n    case 35666:\\n      return setValueV4f;\\n    case 35674:\\n      return setValueM2;\\n    case 35675:\\n      return setValueM3;\\n    case 35676:\\n      return setValueM4;\\n    case 5124:\\n    case 35670:\\n      return setValueV1i;\\n    case 35667:\\n    case 35671:\\n      return setValueV2i;\\n    case 35668:\\n    case 35672:\\n      return setValueV3i;\\n    case 35669:\\n    case 35673:\\n      return setValueV4i;\\n    case 5125:\\n      return setValueV1ui;\\n    case 36294:\\n      return setValueV2ui;\\n    case 36295:\\n      return setValueV3ui;\\n    case 36296:\\n      return setValueV4ui;\\n    case 35678:\\n    case 36198:\\n    case 36298:\\n    case 36306:\\n    case 35682:\\n      return setValueT1;\\n    case 35679:\\n    case 36299:\\n    case 36307:\\n      return setValueT3D1;\\n    case 35680:\\n    case 36300:\\n    case 36308:\\n    case 36293:\\n      return setValueT6;\\n    case 36289:\\n    case 36303:\\n    case 36311:\\n    case 36292:\\n      return setValueT2DArray1;\\n  }\\n}\\nfunction setValueV1fArray(gl, v) {\\n  gl.uniform1fv(this.addr, v);\\n}\\nfunction setValueV2fArray(gl, v) {\\n  const data = flatten(v, this.size, 2);\\n  gl.uniform2fv(this.addr, data);\\n}\\nfunction setValueV3fArray(gl, v) {\\n  const data = flatten(v, this.size, 3);\\n  gl.uniform3fv(this.addr, data);\\n}\\nfunction setValueV4fArray(gl, v) {\\n  const data = flatten(v, this.size, 4);\\n  gl.uniform4fv(this.addr, data);\\n}\\nfunction setValueM2Array(gl, v) {\\n  const data = flatten(v, this.size, 4);\\n  gl.uniformMatrix2fv(this.addr, false, data);\\n}\\nfunction setValueM3Array(gl, v) {\\n  const data = flatten(v, this.size, 9);\\n  gl.uniformMatrix3fv(this.addr, false, data);\\n}\\nfunction setValueM4Array(gl, v) {\\n  const data = flatten(v, this.size, 16);\\n  gl.uniformMatrix4fv(this.addr, false, data);\\n}\\nfunction setValueV1iArray(gl, v) {\\n  gl.uniform1iv(this.addr, v);\\n}\\nfunction setValueV2iArray(gl, v) {\\n  gl.uniform2iv(this.addr, v);\\n}\\nfunction setValueV3iArray(gl, v) {\\n  gl.uniform3iv(this.addr, v);\\n}\\nfunction setValueV4iArray(gl, v) {\\n  gl.uniform4iv(this.addr, v);\\n}\\nfunction setValueV1uiArray(gl, v) {\\n  gl.uniform1uiv(this.addr, v);\\n}\\nfunction setValueV2uiArray(gl, v) {\\n  gl.uniform2uiv(this.addr, v);\\n}\\nfunction setValueV3uiArray(gl, v) {\\n  gl.uniform3uiv(this.addr, v);\\n}\\nfunction setValueV4uiArray(gl, v) {\\n  gl.uniform4uiv(this.addr, v);\\n}\\nfunction setValueT1Array(gl, v, textures) {\\n  const n = v.length;\\n  const units = allocTexUnits(textures, n);\\n  gl.uniform1iv(this.addr, units);\\n  for (let i = 0; i !== n; ++i) {\\n    textures.safeSetTexture2D(v[i] || emptyTexture, units[i]);\\n  }\\n}\\nfunction setValueT6Array(gl, v, textures) {\\n  const n = v.length;\\n  const units = allocTexUnits(textures, n);\\n  gl.uniform1iv(this.addr, units);\\n  for (let i = 0; i !== n; ++i) {\\n    textures.safeSetTextureCube(v[i] || emptyCubeTexture, units[i]);\\n  }\\n}\\nfunction getPureArraySetter(type) {\\n  switch (type) {\\n    case 5126:\\n      return setValueV1fArray;\\n    case 35664:\\n      return setValueV2fArray;\\n    case 35665:\\n      return setValueV3fArray;\\n    case 35666:\\n      return setValueV4fArray;\\n    case 35674:\\n      return setValueM2Array;\\n    case 35675:\\n      return setValueM3Array;\\n    case 35676:\\n      return setValueM4Array;\\n    case 5124:\\n    case 35670:\\n      return setValueV1iArray;\\n    case 35667:\\n    case 35671:\\n      return setValueV2iArray;\\n    case 35668:\\n    case 35672:\\n      return setValueV3iArray;\\n    case 35669:\\n    case 35673:\\n      return setValueV4iArray;\\n    case 5125:\\n      return setValueV1uiArray;\\n    case 36294:\\n      return setValueV2uiArray;\\n    case 36295:\\n      return setValueV3uiArray;\\n    case 36296:\\n      return setValueV4uiArray;\\n    case 35678:\\n    case 36198:\\n    case 36298:\\n    case 36306:\\n    case 35682:\\n      return setValueT1Array;\\n    case 35680:\\n    case 36300:\\n    case 36308:\\n    case 36293:\\n      return setValueT6Array;\\n  }\\n}\\nfunction SingleUniform(id, activeInfo, addr) {\\n  this.id = id;\\n  this.addr = addr;\\n  this.cache = [];\\n  this.setValue = getSingularSetter(activeInfo.type);\\n}\\nfunction PureArrayUniform(id, activeInfo, addr) {\\n  this.id = id;\\n  this.addr = addr;\\n  this.cache = [];\\n  this.size = activeInfo.size;\\n  this.setValue = getPureArraySetter(activeInfo.type);\\n}\\nPureArrayUniform.prototype.updateCache = function(data) {\\n  const cache = this.cache;\\n  if (data instanceof Float32Array && cache.length !== data.length) {\\n    this.cache = new Float32Array(data.length);\\n  }\\n  copyArray(cache, data);\\n};\\nfunction StructuredUniform(id) {\\n  this.id = id;\\n  this.seq = [];\\n  this.map = {};\\n}\\nStructuredUniform.prototype.setValue = function(gl, value, textures) {\\n  const seq = this.seq;\\n  for (let i = 0, n = seq.length; i !== n; ++i) {\\n    const u = seq[i];\\n    u.setValue(gl, value[u.id], textures);\\n  }\\n};\\nvar RePathPart = /(\\\\w+)(\\\\])?(\\\\[|\\\\.)?/g;\\nfunction addUniform(container, uniformObject) {\\n  container.seq.push(uniformObject);\\n  container.map[uniformObject.id] = uniformObject;\\n}\\nfunction parseUniform(activeInfo, addr, container) {\\n  const path = activeInfo.name, pathLength = path.length;\\n  RePathPart.lastIndex = 0;\\n  while (true) {\\n    const match = RePathPart.exec(path), matchEnd = RePathPart.lastIndex;\\n    let id = match[1];\\n    const idIsIndex = match[2] === \\\\\\\"]\\\\\\\", subscript = match[3];\\n    if (idIsIndex)\\n      id = id | 0;\\n    if (subscript === void 0 || subscript === \\\\\\\"[\\\\\\\" && matchEnd + 2 === pathLength) {\\n      addUniform(container, subscript === void 0 ? new SingleUniform(id, activeInfo, addr) : new PureArrayUniform(id, activeInfo, addr));\\n      break;\\n    } else {\\n      const map = container.map;\\n      let next = map[id];\\n      if (next === void 0) {\\n        next = new StructuredUniform(id);\\n        addUniform(container, next);\\n      }\\n      container = next;\\n    }\\n  }\\n}\\nfunction WebGLUniforms(gl, program) {\\n  this.seq = [];\\n  this.map = {};\\n  const n = gl.getProgramParameter(program, gl.ACTIVE_UNIFORMS);\\n  for (let i = 0; i < n; ++i) {\\n    const info = gl.getActiveUniform(program, i), addr = gl.getUniformLocation(program, info.name);\\n    parseUniform(info, addr, this);\\n  }\\n}\\nWebGLUniforms.prototype.setValue = function(gl, name, value, textures) {\\n  const u = this.map[name];\\n  if (u !== void 0)\\n    u.setValue(gl, value, textures);\\n};\\nWebGLUniforms.prototype.setOptional = function(gl, object, name) {\\n  const v = object[name];\\n  if (v !== void 0)\\n    this.setValue(gl, name, v);\\n};\\nWebGLUniforms.upload = function(gl, seq, values, textures) {\\n  for (let i = 0, n = seq.length; i !== n; ++i) {\\n    const u = seq[i], v = values[u.id];\\n    if (v.needsUpdate !== false) {\\n      u.setValue(gl, v.value, textures);\\n    }\\n  }\\n};\\nWebGLUniforms.seqWithValue = function(seq, values) {\\n  const r = [];\\n  for (let i = 0, n = seq.length; i !== n; ++i) {\\n    const u = seq[i];\\n    if (u.id in values)\\n      r.push(u);\\n  }\\n  return r;\\n};\\n\\n// ../../../node_modules/three/src/renderers/webgl/WebGLShader.js\\nfunction WebGLShader(gl, type, string) {\\n  const shader = gl.createShader(type);\\n  gl.shaderSource(shader, string);\\n  gl.compileShader(shader);\\n  return shader;\\n}\\n\\n// ../../../node_modules/three/src/renderers/webgl/WebGLProgram.js\\nvar programIdCount = 0;\\nfunction addLineNumbers(string) {\\n  const lines = string.split(\\\\\\\"\\\\n\\\\\\\");\\n  for (let i = 0; i < lines.length; i++) {\\n    lines[i] = i + 1 + \\\\\\\": \\\\\\\" + lines[i];\\n  }\\n  return lines.join(\\\\\\\"\\\\n\\\\\\\");\\n}\\nfunction getEncodingComponents(encoding) {\\n  switch (encoding) {\\n    case LinearEncoding:\\n      return [\\\\\\\"Linear\\\\\\\", \\\\\\\"( value )\\\\\\\"];\\n    case sRGBEncoding:\\n      return [\\\\\\\"sRGB\\\\\\\", \\\\\\\"( value )\\\\\\\"];\\n    case RGBEEncoding:\\n      return [\\\\\\\"RGBE\\\\\\\", \\\\\\\"( value )\\\\\\\"];\\n    case RGBM7Encoding:\\n      return [\\\\\\\"RGBM\\\\\\\", \\\\\\\"( value, 7.0 )\\\\\\\"];\\n    case RGBM16Encoding:\\n      return [\\\\\\\"RGBM\\\\\\\", \\\\\\\"( value, 16.0 )\\\\\\\"];\\n    case RGBDEncoding:\\n      return [\\\\\\\"RGBD\\\\\\\", \\\\\\\"( value, 256.0 )\\\\\\\"];\\n    case GammaEncoding:\\n      return [\\\\\\\"Gamma\\\\\\\", \\\\\\\"( value, float( GAMMA_FACTOR ) )\\\\\\\"];\\n    case LogLuvEncoding:\\n      return [\\\\\\\"LogLuv\\\\\\\", \\\\\\\"( value )\\\\\\\"];\\n    default:\\n      console.warn(\\\\\\\"THREE.WebGLProgram: Unsupported encoding:\\\\\\\", encoding);\\n      return [\\\\\\\"Linear\\\\\\\", \\\\\\\"( value )\\\\\\\"];\\n  }\\n}\\nfunction getShaderErrors(gl, shader, type) {\\n  const status = gl.getShaderParameter(shader, gl.COMPILE_STATUS);\\n  const errors = gl.getShaderInfoLog(shader).trim();\\n  if (status && errors === \\\\\\\"\\\\\\\")\\n    return \\\\\\\"\\\\\\\";\\n  return type.toUpperCase() + \\\\\\\"\\\\n\\\\n\\\\\\\" + errors + \\\\\\\"\\\\n\\\\n\\\\\\\" + addLineNumbers(gl.getShaderSource(shader));\\n}\\nfunction getTexelDecodingFunction(functionName, encoding) {\\n  const components = getEncodingComponents(encoding);\\n  return \\\\\\\"vec4 \\\\\\\" + functionName + \\\\\\\"( vec4 value ) { return \\\\\\\" + components[0] + \\\\\\\"ToLinear\\\\\\\" + components[1] + \\\\\\\"; }\\\\\\\";\\n}\\nfunction getTexelEncodingFunction(functionName, encoding) {\\n  const components = getEncodingComponents(encoding);\\n  return \\\\\\\"vec4 \\\\\\\" + functionName + \\\\\\\"( vec4 value ) { return LinearTo\\\\\\\" + components[0] + components[1] + \\\\\\\"; }\\\\\\\";\\n}\\nfunction getToneMappingFunction(functionName, toneMapping) {\\n  let toneMappingName;\\n  switch (toneMapping) {\\n    case LinearToneMapping:\\n      toneMappingName = \\\\\\\"Linear\\\\\\\";\\n      break;\\n    case ReinhardToneMapping:\\n      toneMappingName = \\\\\\\"Reinhard\\\\\\\";\\n      break;\\n    case CineonToneMapping:\\n      toneMappingName = \\\\\\\"OptimizedCineon\\\\\\\";\\n      break;\\n    case ACESFilmicToneMapping:\\n      toneMappingName = \\\\\\\"ACESFilmic\\\\\\\";\\n      break;\\n    case CustomToneMapping:\\n      toneMappingName = \\\\\\\"Custom\\\\\\\";\\n      break;\\n    default:\\n      console.warn(\\\\\\\"THREE.WebGLProgram: Unsupported toneMapping:\\\\\\\", toneMapping);\\n      toneMappingName = \\\\\\\"Linear\\\\\\\";\\n  }\\n  return \\\\\\\"vec3 \\\\\\\" + functionName + \\\\\\\"( vec3 color ) { return \\\\\\\" + toneMappingName + \\\\\\\"ToneMapping( color ); }\\\\\\\";\\n}\\nfunction generateExtensions(parameters) {\\n  const chunks = [\\n    parameters.extensionDerivatives || parameters.envMapCubeUV || parameters.bumpMap || parameters.tangentSpaceNormalMap || parameters.clearcoatNormalMap || parameters.flatShading || parameters.shaderID === \\\\\\\"physical\\\\\\\" ? \\\\\\\"#extension GL_OES_standard_derivatives : enable\\\\\\\" : \\\\\\\"\\\\\\\",\\n    (parameters.extensionFragDepth || parameters.logarithmicDepthBuffer) && parameters.rendererExtensionFragDepth ? \\\\\\\"#extension GL_EXT_frag_depth : enable\\\\\\\" : \\\\\\\"\\\\\\\",\\n    parameters.extensionDrawBuffers && parameters.rendererExtensionDrawBuffers ? \\\\\\\"#extension GL_EXT_draw_buffers : require\\\\\\\" : \\\\\\\"\\\\\\\",\\n    (parameters.extensionShaderTextureLOD || parameters.envMap || parameters.transmission) && parameters.rendererExtensionShaderTextureLod ? \\\\\\\"#extension GL_EXT_shader_texture_lod : enable\\\\\\\" : \\\\\\\"\\\\\\\"\\n  ];\\n  return chunks.filter(filterEmptyLine).join(\\\\\\\"\\\\n\\\\\\\");\\n}\\nfunction generateDefines(defines) {\\n  const chunks = [];\\n  for (const name in defines) {\\n    const value = defines[name];\\n    if (value === false)\\n      continue;\\n    chunks.push(\\\\\\\"#define \\\\\\\" + name + \\\\\\\" \\\\\\\" + value);\\n  }\\n  return chunks.join(\\\\\\\"\\\\n\\\\\\\");\\n}\\nfunction fetchAttributeLocations(gl, program) {\\n  const attributes = {};\\n  const n = gl.getProgramParameter(program, gl.ACTIVE_ATTRIBUTES);\\n  for (let i = 0; i < n; i++) {\\n    const info = gl.getActiveAttrib(program, i);\\n    const name = info.name;\\n    let locationSize = 1;\\n    if (info.type === gl.FLOAT_MAT2)\\n      locationSize = 2;\\n    if (info.type === gl.FLOAT_MAT3)\\n      locationSize = 3;\\n    if (info.type === gl.FLOAT_MAT4)\\n      locationSize = 4;\\n    attributes[name] = {\\n      type: info.type,\\n      location: gl.getAttribLocation(program, name),\\n      locationSize\\n    };\\n  }\\n  return attributes;\\n}\\nfunction filterEmptyLine(string) {\\n  return string !== \\\\\\\"\\\\\\\";\\n}\\nfunction replaceLightNums(string, parameters) {\\n  return string.replace(/NUM_DIR_LIGHTS/g, parameters.numDirLights).replace(/NUM_SPOT_LIGHTS/g, parameters.numSpotLights).replace(/NUM_RECT_AREA_LIGHTS/g, parameters.numRectAreaLights).replace(/NUM_POINT_LIGHTS/g, parameters.numPointLights).replace(/NUM_HEMI_LIGHTS/g, parameters.numHemiLights).replace(/NUM_DIR_LIGHT_SHADOWS/g, parameters.numDirLightShadows).replace(/NUM_SPOT_LIGHT_SHADOWS/g, parameters.numSpotLightShadows).replace(/NUM_POINT_LIGHT_SHADOWS/g, parameters.numPointLightShadows);\\n}\\nfunction replaceClippingPlaneNums(string, parameters) {\\n  return string.replace(/NUM_CLIPPING_PLANES/g, parameters.numClippingPlanes).replace(/UNION_CLIPPING_PLANES/g, parameters.numClippingPlanes - parameters.numClipIntersection);\\n}\\nvar includePattern = /^[ \\\\t]*#include +<([\\\\w\\\\d./]+)>/gm;\\nfunction resolveIncludes(string) {\\n  return string.replace(includePattern, includeReplacer);\\n}\\nfunction includeReplacer(match, include) {\\n  const string = ShaderChunk[include];\\n  if (string === void 0) {\\n    throw new Error(\\\\\\\"Can not resolve #include <\\\\\\\" + include + \\\\\\\">\\\\\\\");\\n  }\\n  return resolveIncludes(string);\\n}\\nvar deprecatedUnrollLoopPattern = /#pragma unroll_loop[\\\\s]+?for \\\\( int i \\\\= (\\\\d+)\\\\; i < (\\\\d+)\\\\; i \\\\+\\\\+ \\\\) \\\\{([\\\\s\\\\S]+?)(?=\\\\})\\\\}/g;\\nvar unrollLoopPattern = /#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;\\nfunction unrollLoops(string) {\\n  return string.replace(unrollLoopPattern, loopReplacer).replace(deprecatedUnrollLoopPattern, deprecatedLoopReplacer);\\n}\\nfunction deprecatedLoopReplacer(match, start, end, snippet) {\\n  console.warn(\\\\\\\"WebGLProgram: #pragma unroll_loop shader syntax is deprecated. Please use #pragma unroll_loop_start syntax instead.\\\\\\\");\\n  return loopReplacer(match, start, end, snippet);\\n}\\nfunction loopReplacer(match, start, end, snippet) {\\n  let string = \\\\\\\"\\\\\\\";\\n  for (let i = parseInt(start); i < parseInt(end); i++) {\\n    string += snippet.replace(/\\\\[\\\\s*i\\\\s*\\\\]/g, \\\\\\\"[ \\\\\\\" + i + \\\\\\\" ]\\\\\\\").replace(/UNROLLED_LOOP_INDEX/g, i);\\n  }\\n  return string;\\n}\\nfunction generatePrecision(parameters) {\\n  let precisionstring = \\\\\\\"precision \\\\\\\" + parameters.precision + \\\\\\\" float;\\\\nprecision \\\\\\\" + parameters.precision + \\\\\\\" int;\\\\\\\";\\n  if (parameters.precision === \\\\\\\"highp\\\\\\\") {\\n    precisionstring += \\\\\\\"\\\\n#define HIGH_PRECISION\\\\\\\";\\n  } else if (parameters.precision === \\\\\\\"mediump\\\\\\\") {\\n    precisionstring += \\\\\\\"\\\\n#define MEDIUM_PRECISION\\\\\\\";\\n  } else if (parameters.precision === \\\\\\\"lowp\\\\\\\") {\\n    precisionstring += \\\\\\\"\\\\n#define LOW_PRECISION\\\\\\\";\\n  }\\n  return precisionstring;\\n}\\nfunction generateShadowMapTypeDefine(parameters) {\\n  let shadowMapTypeDefine = \\\\\\\"SHADOWMAP_TYPE_BASIC\\\\\\\";\\n  if (parameters.shadowMapType === PCFShadowMap) {\\n    shadowMapTypeDefine = \\\\\\\"SHADOWMAP_TYPE_PCF\\\\\\\";\\n  } else if (parameters.shadowMapType === PCFSoftShadowMap) {\\n    shadowMapTypeDefine = \\\\\\\"SHADOWMAP_TYPE_PCF_SOFT\\\\\\\";\\n  } else if (parameters.shadowMapType === VSMShadowMap) {\\n    shadowMapTypeDefine = \\\\\\\"SHADOWMAP_TYPE_VSM\\\\\\\";\\n  }\\n  return shadowMapTypeDefine;\\n}\\nfunction generateEnvMapTypeDefine(parameters) {\\n  let envMapTypeDefine = \\\\\\\"ENVMAP_TYPE_CUBE\\\\\\\";\\n  if (parameters.envMap) {\\n    switch (parameters.envMapMode) {\\n      case CubeReflectionMapping:\\n      case CubeRefractionMapping:\\n        envMapTypeDefine = \\\\\\\"ENVMAP_TYPE_CUBE\\\\\\\";\\n        break;\\n      case CubeUVReflectionMapping:\\n      case CubeUVRefractionMapping:\\n        envMapTypeDefine = \\\\\\\"ENVMAP_TYPE_CUBE_UV\\\\\\\";\\n        break;\\n    }\\n  }\\n  return envMapTypeDefine;\\n}\\nfunction generateEnvMapModeDefine(parameters) {\\n  let envMapModeDefine = \\\\\\\"ENVMAP_MODE_REFLECTION\\\\\\\";\\n  if (parameters.envMap) {\\n    switch (parameters.envMapMode) {\\n      case CubeRefractionMapping:\\n      case CubeUVRefractionMapping:\\n        envMapModeDefine = \\\\\\\"ENVMAP_MODE_REFRACTION\\\\\\\";\\n        break;\\n    }\\n  }\\n  return envMapModeDefine;\\n}\\nfunction generateEnvMapBlendingDefine(parameters) {\\n  let envMapBlendingDefine = \\\\\\\"ENVMAP_BLENDING_NONE\\\\\\\";\\n  if (parameters.envMap) {\\n    switch (parameters.combine) {\\n      case MultiplyOperation:\\n        envMapBlendingDefine = \\\\\\\"ENVMAP_BLENDING_MULTIPLY\\\\\\\";\\n        break;\\n      case MixOperation:\\n        envMapBlendingDefine = \\\\\\\"ENVMAP_BLENDING_MIX\\\\\\\";\\n        break;\\n      case AddOperation:\\n        envMapBlendingDefine = \\\\\\\"ENVMAP_BLENDING_ADD\\\\\\\";\\n        break;\\n    }\\n  }\\n  return envMapBlendingDefine;\\n}\\nfunction WebGLProgram(renderer, cacheKey, parameters, bindingStates) {\\n  const gl = renderer.getContext();\\n  const defines = parameters.defines;\\n  let vertexShader = parameters.vertexShader;\\n  let fragmentShader = parameters.fragmentShader;\\n  const shadowMapTypeDefine = generateShadowMapTypeDefine(parameters);\\n  const envMapTypeDefine = generateEnvMapTypeDefine(parameters);\\n  const envMapModeDefine = generateEnvMapModeDefine(parameters);\\n  const envMapBlendingDefine = generateEnvMapBlendingDefine(parameters);\\n  const gammaFactorDefine = renderer.gammaFactor > 0 ? renderer.gammaFactor : 1;\\n  const customExtensions = parameters.isWebGL2 ? \\\\\\\"\\\\\\\" : generateExtensions(parameters);\\n  const customDefines = generateDefines(defines);\\n  const program = gl.createProgram();\\n  let prefixVertex, prefixFragment;\\n  let versionString = parameters.glslVersion ? \\\\\\\"#version \\\\\\\" + parameters.glslVersion + \\\\\\\"\\\\n\\\\\\\" : \\\\\\\"\\\\\\\";\\n  if (parameters.isRawShaderMaterial) {\\n    prefixVertex = [\\n      customDefines\\n    ].filter(filterEmptyLine).join(\\\\\\\"\\\\n\\\\\\\");\\n    if (prefixVertex.length > 0) {\\n      prefixVertex += \\\\\\\"\\\\n\\\\\\\";\\n    }\\n    prefixFragment = [\\n      customExtensions,\\n      customDefines\\n    ].filter(filterEmptyLine).join(\\\\\\\"\\\\n\\\\\\\");\\n    if (prefixFragment.length > 0) {\\n      prefixFragment += \\\\\\\"\\\\n\\\\\\\";\\n    }\\n  } else {\\n    prefixVertex = [\\n      generatePrecision(parameters),\\n      \\\\\\\"#define SHADER_NAME \\\\\\\" + parameters.shaderName,\\n      customDefines,\\n      parameters.instancing ? \\\\\\\"#define USE_INSTANCING\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.instancingColor ? \\\\\\\"#define USE_INSTANCING_COLOR\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.supportsVertexTextures ? \\\\\\\"#define VERTEX_TEXTURES\\\\\\\" : \\\\\\\"\\\\\\\",\\n      \\\\\\\"#define GAMMA_FACTOR \\\\\\\" + gammaFactorDefine,\\n      \\\\\\\"#define MAX_BONES \\\\\\\" + parameters.maxBones,\\n      parameters.useFog && parameters.fog ? \\\\\\\"#define USE_FOG\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.useFog && parameters.fogExp2 ? \\\\\\\"#define FOG_EXP2\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.map ? \\\\\\\"#define USE_MAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.envMap ? \\\\\\\"#define USE_ENVMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.envMap ? \\\\\\\"#define \\\\\\\" + envMapModeDefine : \\\\\\\"\\\\\\\",\\n      parameters.lightMap ? \\\\\\\"#define USE_LIGHTMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.aoMap ? \\\\\\\"#define USE_AOMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.emissiveMap ? \\\\\\\"#define USE_EMISSIVEMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.bumpMap ? \\\\\\\"#define USE_BUMPMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.normalMap ? \\\\\\\"#define USE_NORMALMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.normalMap && parameters.objectSpaceNormalMap ? \\\\\\\"#define OBJECTSPACE_NORMALMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.normalMap && parameters.tangentSpaceNormalMap ? \\\\\\\"#define TANGENTSPACE_NORMALMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.clearcoatMap ? \\\\\\\"#define USE_CLEARCOATMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.clearcoatRoughnessMap ? \\\\\\\"#define USE_CLEARCOAT_ROUGHNESSMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.clearcoatNormalMap ? \\\\\\\"#define USE_CLEARCOAT_NORMALMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.displacementMap && parameters.supportsVertexTextures ? \\\\\\\"#define USE_DISPLACEMENTMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.specularMap ? \\\\\\\"#define USE_SPECULARMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.specularIntensityMap ? \\\\\\\"#define USE_SPECULARINTENSITYMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.specularTintMap ? \\\\\\\"#define USE_SPECULARTINTMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.roughnessMap ? \\\\\\\"#define USE_ROUGHNESSMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.metalnessMap ? \\\\\\\"#define USE_METALNESSMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.alphaMap ? \\\\\\\"#define USE_ALPHAMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.transmission ? \\\\\\\"#define USE_TRANSMISSION\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.transmissionMap ? \\\\\\\"#define USE_TRANSMISSIONMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.thicknessMap ? \\\\\\\"#define USE_THICKNESSMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.vertexTangents ? \\\\\\\"#define USE_TANGENT\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.vertexColors ? \\\\\\\"#define USE_COLOR\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.vertexAlphas ? \\\\\\\"#define USE_COLOR_ALPHA\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.vertexUvs ? \\\\\\\"#define USE_UV\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.uvsVertexOnly ? \\\\\\\"#define UVS_VERTEX_ONLY\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.flatShading ? \\\\\\\"#define FLAT_SHADED\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.skinning ? \\\\\\\"#define USE_SKINNING\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.useVertexTexture ? \\\\\\\"#define BONE_TEXTURE\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.morphTargets ? \\\\\\\"#define USE_MORPHTARGETS\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.morphNormals && parameters.flatShading === false ? \\\\\\\"#define USE_MORPHNORMALS\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.morphTargets && parameters.isWebGL2 ? \\\\\\\"#define MORPHTARGETS_TEXTURE\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.morphTargets && parameters.isWebGL2 ? \\\\\\\"#define MORPHTARGETS_COUNT \\\\\\\" + parameters.morphTargetsCount : \\\\\\\"\\\\\\\",\\n      parameters.doubleSided ? \\\\\\\"#define DOUBLE_SIDED\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.flipSided ? \\\\\\\"#define FLIP_SIDED\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.shadowMapEnabled ? \\\\\\\"#define USE_SHADOWMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.shadowMapEnabled ? \\\\\\\"#define \\\\\\\" + shadowMapTypeDefine : \\\\\\\"\\\\\\\",\\n      parameters.sizeAttenuation ? \\\\\\\"#define USE_SIZEATTENUATION\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.logarithmicDepthBuffer ? \\\\\\\"#define USE_LOGDEPTHBUF\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.logarithmicDepthBuffer && parameters.rendererExtensionFragDepth ? \\\\\\\"#define USE_LOGDEPTHBUF_EXT\\\\\\\" : \\\\\\\"\\\\\\\",\\n      \\\\\\\"uniform mat4 modelMatrix;\\\\\\\",\\n      \\\\\\\"uniform mat4 modelViewMatrix;\\\\\\\",\\n      \\\\\\\"uniform mat4 projectionMatrix;\\\\\\\",\\n      \\\\\\\"uniform mat4 viewMatrix;\\\\\\\",\\n      \\\\\\\"uniform mat3 normalMatrix;\\\\\\\",\\n      \\\\\\\"uniform vec3 cameraPosition;\\\\\\\",\\n      \\\\\\\"uniform bool isOrthographic;\\\\\\\",\\n      \\\\\\\"#ifdef USE_INSTANCING\\\\\\\",\\n      \\\\\\\"\\tattribute mat4 instanceMatrix;\\\\\\\",\\n      \\\\\\\"#endif\\\\\\\",\\n      \\\\\\\"#ifdef USE_INSTANCING_COLOR\\\\\\\",\\n      \\\\\\\"\\tattribute vec3 instanceColor;\\\\\\\",\\n      \\\\\\\"#endif\\\\\\\",\\n      \\\\\\\"attribute vec3 position;\\\\\\\",\\n      \\\\\\\"attribute vec3 normal;\\\\\\\",\\n      \\\\\\\"attribute vec2 uv;\\\\\\\",\\n      \\\\\\\"#ifdef USE_TANGENT\\\\\\\",\\n      \\\\\\\"\\tattribute vec4 tangent;\\\\\\\",\\n      \\\\\\\"#endif\\\\\\\",\\n      \\\\\\\"#if defined( USE_COLOR_ALPHA )\\\\\\\",\\n      \\\\\\\"\\tattribute vec4 color;\\\\\\\",\\n      \\\\\\\"#elif defined( USE_COLOR )\\\\\\\",\\n      \\\\\\\"\\tattribute vec3 color;\\\\\\\",\\n      \\\\\\\"#endif\\\\\\\",\\n      \\\\\\\"#if ( defined( USE_MORPHTARGETS ) && ! defined( MORPHTARGETS_TEXTURE ) )\\\\\\\",\\n      \\\\\\\"\\tattribute vec3 morphTarget0;\\\\\\\",\\n      \\\\\\\"\\tattribute vec3 morphTarget1;\\\\\\\",\\n      \\\\\\\"\\tattribute vec3 morphTarget2;\\\\\\\",\\n      \\\\\\\"\\tattribute vec3 morphTarget3;\\\\\\\",\\n      \\\\\\\"\\t#ifdef USE_MORPHNORMALS\\\\\\\",\\n      \\\\\\\"\\t\\tattribute vec3 morphNormal0;\\\\\\\",\\n      \\\\\\\"\\t\\tattribute vec3 morphNormal1;\\\\\\\",\\n      \\\\\\\"\\t\\tattribute vec3 morphNormal2;\\\\\\\",\\n      \\\\\\\"\\t\\tattribute vec3 morphNormal3;\\\\\\\",\\n      \\\\\\\"\\t#else\\\\\\\",\\n      \\\\\\\"\\t\\tattribute vec3 morphTarget4;\\\\\\\",\\n      \\\\\\\"\\t\\tattribute vec3 morphTarget5;\\\\\\\",\\n      \\\\\\\"\\t\\tattribute vec3 morphTarget6;\\\\\\\",\\n      \\\\\\\"\\t\\tattribute vec3 morphTarget7;\\\\\\\",\\n      \\\\\\\"\\t#endif\\\\\\\",\\n      \\\\\\\"#endif\\\\\\\",\\n      \\\\\\\"#ifdef USE_SKINNING\\\\\\\",\\n      \\\\\\\"\\tattribute vec4 skinIndex;\\\\\\\",\\n      \\\\\\\"\\tattribute vec4 skinWeight;\\\\\\\",\\n      \\\\\\\"#endif\\\\\\\",\\n      \\\\\\\"\\\\n\\\\\\\"\\n    ].filter(filterEmptyLine).join(\\\\\\\"\\\\n\\\\\\\");\\n    prefixFragment = [\\n      customExtensions,\\n      generatePrecision(parameters),\\n      \\\\\\\"#define SHADER_NAME \\\\\\\" + parameters.shaderName,\\n      customDefines,\\n      \\\\\\\"#define GAMMA_FACTOR \\\\\\\" + gammaFactorDefine,\\n      parameters.useFog && parameters.fog ? \\\\\\\"#define USE_FOG\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.useFog && parameters.fogExp2 ? \\\\\\\"#define FOG_EXP2\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.map ? \\\\\\\"#define USE_MAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.matcap ? \\\\\\\"#define USE_MATCAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.envMap ? \\\\\\\"#define USE_ENVMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.envMap ? \\\\\\\"#define \\\\\\\" + envMapTypeDefine : \\\\\\\"\\\\\\\",\\n      parameters.envMap ? \\\\\\\"#define \\\\\\\" + envMapModeDefine : \\\\\\\"\\\\\\\",\\n      parameters.envMap ? \\\\\\\"#define \\\\\\\" + envMapBlendingDefine : \\\\\\\"\\\\\\\",\\n      parameters.lightMap ? \\\\\\\"#define USE_LIGHTMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.aoMap ? \\\\\\\"#define USE_AOMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.emissiveMap ? \\\\\\\"#define USE_EMISSIVEMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.bumpMap ? \\\\\\\"#define USE_BUMPMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.normalMap ? \\\\\\\"#define USE_NORMALMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.normalMap && parameters.objectSpaceNormalMap ? \\\\\\\"#define OBJECTSPACE_NORMALMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.normalMap && parameters.tangentSpaceNormalMap ? \\\\\\\"#define TANGENTSPACE_NORMALMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.clearcoat ? \\\\\\\"#define USE_CLEARCOAT\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.clearcoatMap ? \\\\\\\"#define USE_CLEARCOATMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.clearcoatRoughnessMap ? \\\\\\\"#define USE_CLEARCOAT_ROUGHNESSMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.clearcoatNormalMap ? \\\\\\\"#define USE_CLEARCOAT_NORMALMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.specularMap ? \\\\\\\"#define USE_SPECULARMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.specularIntensityMap ? \\\\\\\"#define USE_SPECULARINTENSITYMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.specularTintMap ? \\\\\\\"#define USE_SPECULARTINTMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.roughnessMap ? \\\\\\\"#define USE_ROUGHNESSMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.metalnessMap ? \\\\\\\"#define USE_METALNESSMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.alphaMap ? \\\\\\\"#define USE_ALPHAMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.alphaTest ? \\\\\\\"#define USE_ALPHATEST\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.sheen ? \\\\\\\"#define USE_SHEEN\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.transmission ? \\\\\\\"#define USE_TRANSMISSION\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.transmissionMap ? \\\\\\\"#define USE_TRANSMISSIONMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.thicknessMap ? \\\\\\\"#define USE_THICKNESSMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.vertexTangents ? \\\\\\\"#define USE_TANGENT\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.vertexColors || parameters.instancingColor ? \\\\\\\"#define USE_COLOR\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.vertexAlphas ? \\\\\\\"#define USE_COLOR_ALPHA\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.vertexUvs ? \\\\\\\"#define USE_UV\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.uvsVertexOnly ? \\\\\\\"#define UVS_VERTEX_ONLY\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.gradientMap ? \\\\\\\"#define USE_GRADIENTMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.flatShading ? \\\\\\\"#define FLAT_SHADED\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.doubleSided ? \\\\\\\"#define DOUBLE_SIDED\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.flipSided ? \\\\\\\"#define FLIP_SIDED\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.shadowMapEnabled ? \\\\\\\"#define USE_SHADOWMAP\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.shadowMapEnabled ? \\\\\\\"#define \\\\\\\" + shadowMapTypeDefine : \\\\\\\"\\\\\\\",\\n      parameters.premultipliedAlpha ? \\\\\\\"#define PREMULTIPLIED_ALPHA\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.physicallyCorrectLights ? \\\\\\\"#define PHYSICALLY_CORRECT_LIGHTS\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.logarithmicDepthBuffer ? \\\\\\\"#define USE_LOGDEPTHBUF\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.logarithmicDepthBuffer && parameters.rendererExtensionFragDepth ? \\\\\\\"#define USE_LOGDEPTHBUF_EXT\\\\\\\" : \\\\\\\"\\\\\\\",\\n      (parameters.extensionShaderTextureLOD || parameters.envMap) && parameters.rendererExtensionShaderTextureLod ? \\\\\\\"#define TEXTURE_LOD_EXT\\\\\\\" : \\\\\\\"\\\\\\\",\\n      \\\\\\\"uniform mat4 viewMatrix;\\\\\\\",\\n      \\\\\\\"uniform vec3 cameraPosition;\\\\\\\",\\n      \\\\\\\"uniform bool isOrthographic;\\\\\\\",\\n      parameters.toneMapping !== NoToneMapping ? \\\\\\\"#define TONE_MAPPING\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.toneMapping !== NoToneMapping ? ShaderChunk[\\\\\\\"tonemapping_pars_fragment\\\\\\\"] : \\\\\\\"\\\\\\\",\\n      parameters.toneMapping !== NoToneMapping ? getToneMappingFunction(\\\\\\\"toneMapping\\\\\\\", parameters.toneMapping) : \\\\\\\"\\\\\\\",\\n      parameters.dithering ? \\\\\\\"#define DITHERING\\\\\\\" : \\\\\\\"\\\\\\\",\\n      parameters.format === RGBFormat ? \\\\\\\"#define OPAQUE\\\\\\\" : \\\\\\\"\\\\\\\",\\n      ShaderChunk[\\\\\\\"encodings_pars_fragment\\\\\\\"],\\n      parameters.map ? getTexelDecodingFunction(\\\\\\\"mapTexelToLinear\\\\\\\", parameters.mapEncoding) : \\\\\\\"\\\\\\\",\\n      parameters.matcap ? getTexelDecodingFunction(\\\\\\\"matcapTexelToLinear\\\\\\\", parameters.matcapEncoding) : \\\\\\\"\\\\\\\",\\n      parameters.envMap ? getTexelDecodingFunction(\\\\\\\"envMapTexelToLinear\\\\\\\", parameters.envMapEncoding) : \\\\\\\"\\\\\\\",\\n      parameters.emissiveMap ? getTexelDecodingFunction(\\\\\\\"emissiveMapTexelToLinear\\\\\\\", parameters.emissiveMapEncoding) : \\\\\\\"\\\\\\\",\\n      parameters.specularTintMap ? getTexelDecodingFunction(\\\\\\\"specularTintMapTexelToLinear\\\\\\\", parameters.specularTintMapEncoding) : \\\\\\\"\\\\\\\",\\n      parameters.lightMap ? getTexelDecodingFunction(\\\\\\\"lightMapTexelToLinear\\\\\\\", parameters.lightMapEncoding) : \\\\\\\"\\\\\\\",\\n      getTexelEncodingFunction(\\\\\\\"linearToOutputTexel\\\\\\\", parameters.outputEncoding),\\n      parameters.depthPacking ? \\\\\\\"#define DEPTH_PACKING \\\\\\\" + parameters.depthPacking : \\\\\\\"\\\\\\\",\\n      \\\\\\\"\\\\n\\\\\\\"\\n    ].filter(filterEmptyLine).join(\\\\\\\"\\\\n\\\\\\\");\\n  }\\n  vertexShader = resolveIncludes(vertexShader);\\n  vertexShader = replaceLightNums(vertexShader, parameters);\\n  vertexShader = replaceClippingPlaneNums(vertexShader, parameters);\\n  fragmentShader = resolveIncludes(fragmentShader);\\n  fragmentShader = replaceLightNums(fragmentShader, parameters);\\n  fragmentShader = replaceClippingPlaneNums(fragmentShader, parameters);\\n  vertexShader = unrollLoops(vertexShader);\\n  fragmentShader = unrollLoops(fragmentShader);\\n  if (parameters.isWebGL2 && parameters.isRawShaderMaterial !== true) {\\n    versionString = \\\\\\\"#version 300 es\\\\n\\\\\\\";\\n    prefixVertex = [\\n      \\\\\\\"precision mediump sampler2DArray;\\\\\\\",\\n      \\\\\\\"#define attribute in\\\\\\\",\\n      \\\\\\\"#define varying out\\\\\\\",\\n      \\\\\\\"#define texture2D texture\\\\\\\"\\n    ].join(\\\\\\\"\\\\n\\\\\\\") + \\\\\\\"\\\\n\\\\\\\" + prefixVertex;\\n    prefixFragment = [\\n      \\\\\\\"#define varying in\\\\\\\",\\n      parameters.glslVersion === GLSL3 ? \\\\\\\"\\\\\\\" : \\\\\\\"out highp vec4 pc_fragColor;\\\\\\\",\\n      parameters.glslVersion === GLSL3 ? \\\\\\\"\\\\\\\" : \\\\\\\"#define gl_FragColor pc_fragColor\\\\\\\",\\n      \\\\\\\"#define gl_FragDepthEXT gl_FragDepth\\\\\\\",\\n      \\\\\\\"#define texture2D texture\\\\\\\",\\n      \\\\\\\"#define textureCube texture\\\\\\\",\\n      \\\\\\\"#define texture2DProj textureProj\\\\\\\",\\n      \\\\\\\"#define texture2DLodEXT textureLod\\\\\\\",\\n      \\\\\\\"#define texture2DProjLodEXT textureProjLod\\\\\\\",\\n      \\\\\\\"#define textureCubeLodEXT textureLod\\\\\\\",\\n      \\\\\\\"#define texture2DGradEXT textureGrad\\\\\\\",\\n      \\\\\\\"#define texture2DProjGradEXT textureProjGrad\\\\\\\",\\n      \\\\\\\"#define textureCubeGradEXT textureGrad\\\\\\\"\\n    ].join(\\\\\\\"\\\\n\\\\\\\") + \\\\\\\"\\\\n\\\\\\\" + prefixFragment;\\n  }\\n  const vertexGlsl = versionString + prefixVertex + vertexShader;\\n  const fragmentGlsl = versionString + prefixFragment + fragmentShader;\\n  const glVertexShader = WebGLShader(gl, gl.VERTEX_SHADER, vertexGlsl);\\n  const glFragmentShader = WebGLShader(gl, gl.FRAGMENT_SHADER, fragmentGlsl);\\n  gl.attachShader(program, glVertexShader);\\n  gl.attachShader(program, glFragmentShader);\\n  if (parameters.index0AttributeName !== void 0) {\\n    gl.bindAttribLocation(program, 0, parameters.index0AttributeName);\\n  } else if (parameters.morphTargets === true) {\\n    gl.bindAttribLocation(program, 0, \\\\\\\"position\\\\\\\");\\n  }\\n  gl.linkProgram(program);\\n  if (renderer.debug.checkShaderErrors) {\\n    const programLog = gl.getProgramInfoLog(program).trim();\\n    const vertexLog = gl.getShaderInfoLog(glVertexShader).trim();\\n    const fragmentLog = gl.getShaderInfoLog(glFragmentShader).trim();\\n    let runnable = true;\\n    let haveDiagnostics = true;\\n    if (gl.getProgramParameter(program, gl.LINK_STATUS) === false) {\\n      runnable = false;\\n      const vertexErrors = getShaderErrors(gl, glVertexShader, \\\\\\\"vertex\\\\\\\");\\n      const fragmentErrors = getShaderErrors(gl, glFragmentShader, \\\\\\\"fragment\\\\\\\");\\n      console.error(\\\\\\\"THREE.WebGLProgram: Shader Error \\\\\\\" + gl.getError() + \\\\\\\" - VALIDATE_STATUS \\\\\\\" + gl.getProgramParameter(program, gl.VALIDATE_STATUS) + \\\\\\\"\\\\n\\\\nProgram Info Log: \\\\\\\" + programLog + \\\\\\\"\\\\n\\\\\\\" + vertexErrors + \\\\\\\"\\\\n\\\\\\\" + fragmentErrors);\\n    } else if (programLog !== \\\\\\\"\\\\\\\") {\\n      console.warn(\\\\\\\"THREE.WebGLProgram: Program Info Log:\\\\\\\", programLog);\\n    } else if (vertexLog === \\\\\\\"\\\\\\\" || fragmentLog === \\\\\\\"\\\\\\\") {\\n      haveDiagnostics = false;\\n    }\\n    if (haveDiagnostics) {\\n      this.diagnostics = {\\n        runnable,\\n        programLog,\\n        vertexShader: {\\n          log: vertexLog,\\n          prefix: prefixVertex\\n        },\\n        fragmentShader: {\\n          log: fragmentLog,\\n          prefix: prefixFragment\\n        }\\n      };\\n    }\\n  }\\n  gl.deleteShader(glVertexShader);\\n  gl.deleteShader(glFragmentShader);\\n  let cachedUniforms;\\n  this.getUniforms = function() {\\n    if (cachedUniforms === void 0) {\\n      cachedUniforms = new WebGLUniforms(gl, program);\\n    }\\n    return cachedUniforms;\\n  };\\n  let cachedAttributes;\\n  this.getAttributes = function() {\\n    if (cachedAttributes === void 0) {\\n      cachedAttributes = fetchAttributeLocations(gl, program);\\n    }\\n    return cachedAttributes;\\n  };\\n  this.destroy = function() {\\n    bindingStates.releaseStatesOfProgram(this);\\n    gl.deleteProgram(program);\\n    this.program = void 0;\\n  };\\n  this.name = parameters.shaderName;\\n  this.id = programIdCount++;\\n  this.cacheKey = cacheKey;\\n  this.usedTimes = 1;\\n  this.program = program;\\n  this.vertexShader = glVertexShader;\\n  this.fragmentShader = glFragmentShader;\\n  return this;\\n}\\n\\n// ../../../node_modules/three/src/renderers/webgl/WebGLPrograms.js\\nfunction WebGLPrograms(renderer, cubemaps, cubeuvmaps, extensions, capabilities, bindingStates, clipping) {\\n  const programs = [];\\n  const isWebGL2 = capabilities.isWebGL2;\\n  const logarithmicDepthBuffer = capabilities.logarithmicDepthBuffer;\\n  const floatVertexTextures = capabilities.floatVertexTextures;\\n  const maxVertexUniforms = capabilities.maxVertexUniforms;\\n  const vertexTextures = capabilities.vertexTextures;\\n  let precision = capabilities.precision;\\n  const shaderIDs = {\\n    MeshDepthMaterial: \\\\\\\"depth\\\\\\\",\\n    MeshDistanceMaterial: \\\\\\\"distanceRGBA\\\\\\\",\\n    MeshNormalMaterial: \\\\\\\"normal\\\\\\\",\\n    MeshBasicMaterial: \\\\\\\"basic\\\\\\\",\\n    MeshLambertMaterial: \\\\\\\"lambert\\\\\\\",\\n    MeshPhongMaterial: \\\\\\\"phong\\\\\\\",\\n    MeshToonMaterial: \\\\\\\"toon\\\\\\\",\\n    MeshStandardMaterial: \\\\\\\"physical\\\\\\\",\\n    MeshPhysicalMaterial: \\\\\\\"physical\\\\\\\",\\n    MeshMatcapMaterial: \\\\\\\"matcap\\\\\\\",\\n    LineBasicMaterial: \\\\\\\"basic\\\\\\\",\\n    LineDashedMaterial: \\\\\\\"dashed\\\\\\\",\\n    PointsMaterial: \\\\\\\"points\\\\\\\",\\n    ShadowMaterial: \\\\\\\"shadow\\\\\\\",\\n    SpriteMaterial: \\\\\\\"sprite\\\\\\\"\\n  };\\n  const parameterNames = [\\n    \\\\\\\"precision\\\\\\\",\\n    \\\\\\\"isWebGL2\\\\\\\",\\n    \\\\\\\"supportsVertexTextures\\\\\\\",\\n    \\\\\\\"outputEncoding\\\\\\\",\\n    \\\\\\\"instancing\\\\\\\",\\n    \\\\\\\"instancingColor\\\\\\\",\\n    \\\\\\\"map\\\\\\\",\\n    \\\\\\\"mapEncoding\\\\\\\",\\n    \\\\\\\"matcap\\\\\\\",\\n    \\\\\\\"matcapEncoding\\\\\\\",\\n    \\\\\\\"envMap\\\\\\\",\\n    \\\\\\\"envMapMode\\\\\\\",\\n    \\\\\\\"envMapEncoding\\\\\\\",\\n    \\\\\\\"envMapCubeUV\\\\\\\",\\n    \\\\\\\"lightMap\\\\\\\",\\n    \\\\\\\"lightMapEncoding\\\\\\\",\\n    \\\\\\\"aoMap\\\\\\\",\\n    \\\\\\\"emissiveMap\\\\\\\",\\n    \\\\\\\"emissiveMapEncoding\\\\\\\",\\n    \\\\\\\"bumpMap\\\\\\\",\\n    \\\\\\\"normalMap\\\\\\\",\\n    \\\\\\\"objectSpaceNormalMap\\\\\\\",\\n    \\\\\\\"tangentSpaceNormalMap\\\\\\\",\\n    \\\\\\\"clearcoat\\\\\\\",\\n    \\\\\\\"clearcoatMap\\\\\\\",\\n    \\\\\\\"clearcoatRoughnessMap\\\\\\\",\\n    \\\\\\\"clearcoatNormalMap\\\\\\\",\\n    \\\\\\\"displacementMap\\\\\\\",\\n    \\\\\\\"specularMap\\\\\\\",\\n    \\\\\\\"specularIntensityMap\\\\\\\",\\n    \\\\\\\"specularTintMap\\\\\\\",\\n    \\\\\\\"specularTintMapEncoding\\\\\\\",\\n    \\\\\\\"roughnessMap\\\\\\\",\\n    \\\\\\\"metalnessMap\\\\\\\",\\n    \\\\\\\"gradientMap\\\\\\\",\\n    \\\\\\\"alphaMap\\\\\\\",\\n    \\\\\\\"alphaTest\\\\\\\",\\n    \\\\\\\"combine\\\\\\\",\\n    \\\\\\\"vertexColors\\\\\\\",\\n    \\\\\\\"vertexAlphas\\\\\\\",\\n    \\\\\\\"vertexTangents\\\\\\\",\\n    \\\\\\\"vertexUvs\\\\\\\",\\n    \\\\\\\"uvsVertexOnly\\\\\\\",\\n    \\\\\\\"fog\\\\\\\",\\n    \\\\\\\"useFog\\\\\\\",\\n    \\\\\\\"fogExp2\\\\\\\",\\n    \\\\\\\"flatShading\\\\\\\",\\n    \\\\\\\"sizeAttenuation\\\\\\\",\\n    \\\\\\\"logarithmicDepthBuffer\\\\\\\",\\n    \\\\\\\"skinning\\\\\\\",\\n    \\\\\\\"maxBones\\\\\\\",\\n    \\\\\\\"useVertexTexture\\\\\\\",\\n    \\\\\\\"morphTargets\\\\\\\",\\n    \\\\\\\"morphNormals\\\\\\\",\\n    \\\\\\\"morphTargetsCount\\\\\\\",\\n    \\\\\\\"premultipliedAlpha\\\\\\\",\\n    \\\\\\\"numDirLights\\\\\\\",\\n    \\\\\\\"numPointLights\\\\\\\",\\n    \\\\\\\"numSpotLights\\\\\\\",\\n    \\\\\\\"numHemiLights\\\\\\\",\\n    \\\\\\\"numRectAreaLights\\\\\\\",\\n    \\\\\\\"numDirLightShadows\\\\\\\",\\n    \\\\\\\"numPointLightShadows\\\\\\\",\\n    \\\\\\\"numSpotLightShadows\\\\\\\",\\n    \\\\\\\"shadowMapEnabled\\\\\\\",\\n    \\\\\\\"shadowMapType\\\\\\\",\\n    \\\\\\\"toneMapping\\\\\\\",\\n    \\\\\\\"physicallyCorrectLights\\\\\\\",\\n    \\\\\\\"doubleSided\\\\\\\",\\n    \\\\\\\"flipSided\\\\\\\",\\n    \\\\\\\"numClippingPlanes\\\\\\\",\\n    \\\\\\\"numClipIntersection\\\\\\\",\\n    \\\\\\\"depthPacking\\\\\\\",\\n    \\\\\\\"dithering\\\\\\\",\\n    \\\\\\\"format\\\\\\\",\\n    \\\\\\\"sheen\\\\\\\",\\n    \\\\\\\"transmission\\\\\\\",\\n    \\\\\\\"transmissionMap\\\\\\\",\\n    \\\\\\\"thicknessMap\\\\\\\"\\n  ];\\n  function getMaxBones(object) {\\n    const skeleton = object.skeleton;\\n    const bones = skeleton.bones;\\n    if (floatVertexTextures) {\\n      return 1024;\\n    } else {\\n      const nVertexUniforms = maxVertexUniforms;\\n      const nVertexMatrices = Math.floor((nVertexUniforms - 20) / 4);\\n      const maxBones = Math.min(nVertexMatrices, bones.length);\\n      if (maxBones < bones.length) {\\n        console.warn(\\\\\\\"THREE.WebGLRenderer: Skeleton has \\\\\\\" + bones.length + \\\\\\\" bones. This GPU supports \\\\\\\" + maxBones + \\\\\\\".\\\\\\\");\\n        return 0;\\n      }\\n      return maxBones;\\n    }\\n  }\\n  function getTextureEncodingFromMap(map) {\\n    let encoding;\\n    if (map && map.isTexture) {\\n      encoding = map.encoding;\\n    } else if (map && map.isWebGLRenderTarget) {\\n      console.warn(\\\\\\\"THREE.WebGLPrograms.getTextureEncodingFromMap: don't use render targets as textures. Use their .texture property instead.\\\\\\\");\\n      encoding = map.texture.encoding;\\n    } else {\\n      encoding = LinearEncoding;\\n    }\\n    if (isWebGL2 && map && map.isTexture && map.format === RGBAFormat && map.type === UnsignedByteType && map.encoding === sRGBEncoding) {\\n      encoding = LinearEncoding;\\n    }\\n    return encoding;\\n  }\\n  function getParameters(material, lights, shadows, scene, object) {\\n    const fog = scene.fog;\\n    const environment = material.isMeshStandardMaterial ? scene.environment : null;\\n    const envMap = (material.isMeshStandardMaterial ? cubeuvmaps : cubemaps).get(material.envMap || environment);\\n    const shaderID = shaderIDs[material.type];\\n    const maxBones = object.isSkinnedMesh ? getMaxBones(object) : 0;\\n    if (material.precision !== null) {\\n      precision = capabilities.getMaxPrecision(material.precision);\\n      if (precision !== material.precision) {\\n        console.warn(\\\\\\\"THREE.WebGLProgram.getParameters:\\\\\\\", material.precision, \\\\\\\"not supported, using\\\\\\\", precision, \\\\\\\"instead.\\\\\\\");\\n      }\\n    }\\n    let vertexShader, fragmentShader;\\n    if (shaderID) {\\n      const shader = ShaderLib[shaderID];\\n      vertexShader = shader.vertexShader;\\n      fragmentShader = shader.fragmentShader;\\n    } else {\\n      vertexShader = material.vertexShader;\\n      fragmentShader = material.fragmentShader;\\n    }\\n    const currentRenderTarget = renderer.getRenderTarget();\\n    const useAlphaTest = material.alphaTest > 0;\\n    const useClearcoat = material.clearcoat > 0;\\n    const parameters = {\\n      isWebGL2,\\n      shaderID,\\n      shaderName: material.type,\\n      vertexShader,\\n      fragmentShader,\\n      defines: material.defines,\\n      isRawShaderMaterial: material.isRawShaderMaterial === true,\\n      glslVersion: material.glslVersion,\\n      precision,\\n      instancing: object.isInstancedMesh === true,\\n      instancingColor: object.isInstancedMesh === true && object.instanceColor !== null,\\n      supportsVertexTextures: vertexTextures,\\n      outputEncoding: currentRenderTarget !== null ? getTextureEncodingFromMap(currentRenderTarget.texture) : renderer.outputEncoding,\\n      map: !!material.map,\\n      mapEncoding: getTextureEncodingFromMap(material.map),\\n      matcap: !!material.matcap,\\n      matcapEncoding: getTextureEncodingFromMap(material.matcap),\\n      envMap: !!envMap,\\n      envMapMode: envMap && envMap.mapping,\\n      envMapEncoding: getTextureEncodingFromMap(envMap),\\n      envMapCubeUV: !!envMap && (envMap.mapping === CubeUVReflectionMapping || envMap.mapping === CubeUVRefractionMapping),\\n      lightMap: !!material.lightMap,\\n      lightMapEncoding: getTextureEncodingFromMap(material.lightMap),\\n      aoMap: !!material.aoMap,\\n      emissiveMap: !!material.emissiveMap,\\n      emissiveMapEncoding: getTextureEncodingFromMap(material.emissiveMap),\\n      bumpMap: !!material.bumpMap,\\n      normalMap: !!material.normalMap,\\n      objectSpaceNormalMap: material.normalMapType === ObjectSpaceNormalMap,\\n      tangentSpaceNormalMap: material.normalMapType === TangentSpaceNormalMap,\\n      clearcoat: useClearcoat,\\n      clearcoatMap: useClearcoat && !!material.clearcoatMap,\\n      clearcoatRoughnessMap: useClearcoat && !!material.clearcoatRoughnessMap,\\n      clearcoatNormalMap: useClearcoat && !!material.clearcoatNormalMap,\\n      displacementMap: !!material.displacementMap,\\n      roughnessMap: !!material.roughnessMap,\\n      metalnessMap: !!material.metalnessMap,\\n      specularMap: !!material.specularMap,\\n      specularIntensityMap: !!material.specularIntensityMap,\\n      specularTintMap: !!material.specularTintMap,\\n      specularTintMapEncoding: getTextureEncodingFromMap(material.specularTintMap),\\n      alphaMap: !!material.alphaMap,\\n      alphaTest: useAlphaTest,\\n      gradientMap: !!material.gradientMap,\\n      sheen: material.sheen > 0,\\n      transmission: material.transmission > 0,\\n      transmissionMap: !!material.transmissionMap,\\n      thicknessMap: !!material.thicknessMap,\\n      combine: material.combine,\\n      vertexTangents: !!material.normalMap && !!object.geometry && !!object.geometry.attributes.tangent,\\n      vertexColors: material.vertexColors,\\n      vertexAlphas: material.vertexColors === true && !!object.geometry && !!object.geometry.attributes.color && object.geometry.attributes.color.itemSize === 4,\\n      vertexUvs: !!material.map || !!material.bumpMap || !!material.normalMap || !!material.specularMap || !!material.alphaMap || !!material.emissiveMap || !!material.roughnessMap || !!material.metalnessMap || !!material.clearcoatMap || !!material.clearcoatRoughnessMap || !!material.clearcoatNormalMap || !!material.displacementMap || !!material.transmissionMap || !!material.thicknessMap || !!material.specularIntensityMap || !!material.specularTintMap,\\n      uvsVertexOnly: !(!!material.map || !!material.bumpMap || !!material.normalMap || !!material.specularMap || !!material.alphaMap || !!material.emissiveMap || !!material.roughnessMap || !!material.metalnessMap || !!material.clearcoatNormalMap || material.transmission > 0 || !!material.transmissionMap || !!material.thicknessMap || !!material.specularIntensityMap || !!material.specularTintMap) && !!material.displacementMap,\\n      fog: !!fog,\\n      useFog: material.fog,\\n      fogExp2: fog && fog.isFogExp2,\\n      flatShading: !!material.flatShading,\\n      sizeAttenuation: material.sizeAttenuation,\\n      logarithmicDepthBuffer,\\n      skinning: object.isSkinnedMesh === true && maxBones > 0,\\n      maxBones,\\n      useVertexTexture: floatVertexTextures,\\n      morphTargets: !!object.geometry && !!object.geometry.morphAttributes.position,\\n      morphNormals: !!object.geometry && !!object.geometry.morphAttributes.normal,\\n      morphTargetsCount: !!object.geometry && !!object.geometry.morphAttributes.position ? object.geometry.morphAttributes.position.length : 0,\\n      numDirLights: lights.directional.length,\\n      numPointLights: lights.point.length,\\n      numSpotLights: lights.spot.length,\\n      numRectAreaLights: lights.rectArea.length,\\n      numHemiLights: lights.hemi.length,\\n      numDirLightShadows: lights.directionalShadowMap.length,\\n      numPointLightShadows: lights.pointShadowMap.length,\\n      numSpotLightShadows: lights.spotShadowMap.length,\\n      numClippingPlanes: clipping.numPlanes,\\n      numClipIntersection: clipping.numIntersection,\\n      format: material.format,\\n      dithering: material.dithering,\\n      shadowMapEnabled: renderer.shadowMap.enabled && shadows.length > 0,\\n      shadowMapType: renderer.shadowMap.type,\\n      toneMapping: material.toneMapped ? renderer.toneMapping : NoToneMapping,\\n      physicallyCorrectLights: renderer.physicallyCorrectLights,\\n      premultipliedAlpha: material.premultipliedAlpha,\\n      doubleSided: material.side === DoubleSide,\\n      flipSided: material.side === BackSide,\\n      depthPacking: material.depthPacking !== void 0 ? material.depthPacking : false,\\n      index0AttributeName: material.index0AttributeName,\\n      extensionDerivatives: material.extensions && material.extensions.derivatives,\\n      extensionFragDepth: material.extensions && material.extensions.fragDepth,\\n      extensionDrawBuffers: material.extensions && material.extensions.drawBuffers,\\n      extensionShaderTextureLOD: material.extensions && material.extensions.shaderTextureLOD,\\n      rendererExtensionFragDepth: isWebGL2 || extensions.has(\\\\\\\"EXT_frag_depth\\\\\\\"),\\n      rendererExtensionDrawBuffers: isWebGL2 || extensions.has(\\\\\\\"WEBGL_draw_buffers\\\\\\\"),\\n      rendererExtensionShaderTextureLod: isWebGL2 || extensions.has(\\\\\\\"EXT_shader_texture_lod\\\\\\\"),\\n      customProgramCacheKey: material.customProgramCacheKey()\\n    };\\n    return parameters;\\n  }\\n  function getProgramCacheKey(parameters) {\\n    const array = [];\\n    if (parameters.shaderID) {\\n      array.push(parameters.shaderID);\\n    } else {\\n      array.push(parameters.fragmentShader);\\n      array.push(parameters.vertexShader);\\n    }\\n    if (parameters.defines !== void 0) {\\n      for (const name in parameters.defines) {\\n        array.push(name);\\n        array.push(parameters.defines[name]);\\n      }\\n    }\\n    if (parameters.isRawShaderMaterial === false) {\\n      for (let i = 0; i < parameterNames.length; i++) {\\n        array.push(parameters[parameterNames[i]]);\\n      }\\n      array.push(renderer.outputEncoding);\\n      array.push(renderer.gammaFactor);\\n    }\\n    array.push(parameters.customProgramCacheKey);\\n    return array.join();\\n  }\\n  function getUniforms(material) {\\n    const shaderID = shaderIDs[material.type];\\n    let uniforms;\\n    if (shaderID) {\\n      const shader = ShaderLib[shaderID];\\n      uniforms = UniformsUtils.clone(shader.uniforms);\\n    } else {\\n      uniforms = material.uniforms;\\n    }\\n    return uniforms;\\n  }\\n  function acquireProgram(parameters, cacheKey) {\\n    let program;\\n    for (let p = 0, pl = programs.length; p < pl; p++) {\\n      const preexistingProgram = programs[p];\\n      if (preexistingProgram.cacheKey === cacheKey) {\\n        program = preexistingProgram;\\n        ++program.usedTimes;\\n        break;\\n      }\\n    }\\n    if (program === void 0) {\\n      program = new WebGLProgram(renderer, cacheKey, parameters, bindingStates);\\n      programs.push(program);\\n    }\\n    return program;\\n  }\\n  function releaseProgram(program) {\\n    if (--program.usedTimes === 0) {\\n      const i = programs.indexOf(program);\\n      programs[i] = programs[programs.length - 1];\\n      programs.pop();\\n      program.destroy();\\n    }\\n  }\\n  return {\\n    getParameters,\\n    getProgramCacheKey,\\n    getUniforms,\\n    acquireProgram,\\n    releaseProgram,\\n    programs\\n  };\\n}\\n\\n// ../../../node_modules/three/src/renderers/webgl/WebGLProperties.js\\nfunction WebGLProperties() {\\n  let properties = new WeakMap();\\n  function get(object) {\\n    let map = properties.get(object);\\n    if (map === void 0) {\\n      map = {};\\n      properties.set(object, map);\\n    }\\n    return map;\\n  }\\n  function remove(object) {\\n    properties.delete(object);\\n  }\\n  function update(object, key, value) {\\n    properties.get(object)[key] = value;\\n  }\\n  function dispose() {\\n    properties = new WeakMap();\\n  }\\n  return {\\n    get,\\n    remove,\\n    update,\\n    dispose\\n  };\\n}\\n\\n// ../../../node_modules/three/src/renderers/webgl/WebGLRenderLists.js\\nfunction painterSortStable(a, b) {\\n  if (a.groupOrder !== b.groupOrder) {\\n    return a.groupOrder - b.groupOrder;\\n  } else if (a.renderOrder !== b.renderOrder) {\\n    return a.renderOrder - b.renderOrder;\\n  } else if (a.program !== b.program) {\\n    return a.program.id - b.program.id;\\n  } else if (a.material.id !== b.material.id) {\\n    return a.material.id - b.material.id;\\n  } else if (a.z !== b.z) {\\n    return a.z - b.z;\\n  } else {\\n    return a.id - b.id;\\n  }\\n}\\nfunction reversePainterSortStable(a, b) {\\n  if (a.groupOrder !== b.groupOrder) {\\n    return a.groupOrder - b.groupOrder;\\n  } else if (a.renderOrder !== b.renderOrder) {\\n    return a.renderOrder - b.renderOrder;\\n  } else if (a.z !== b.z) {\\n    return b.z - a.z;\\n  } else {\\n    return a.id - b.id;\\n  }\\n}\\nfunction WebGLRenderList(properties) {\\n  const renderItems = [];\\n  let renderItemsIndex = 0;\\n  const opaque = [];\\n  const transmissive = [];\\n  const transparent = [];\\n  const defaultProgram = {id: -1};\\n  function init() {\\n    renderItemsIndex = 0;\\n    opaque.length = 0;\\n    transmissive.length = 0;\\n    transparent.length = 0;\\n  }\\n  function getNextRenderItem(object, geometry, material, groupOrder, z, group) {\\n    let renderItem = renderItems[renderItemsIndex];\\n    const materialProperties = properties.get(material);\\n    if (renderItem === void 0) {\\n      renderItem = {\\n        id: object.id,\\n        object,\\n        geometry,\\n        material,\\n        program: materialProperties.program || defaultProgram,\\n        groupOrder,\\n        renderOrder: object.renderOrder,\\n        z,\\n        group\\n      };\\n      renderItems[renderItemsIndex] = renderItem;\\n    } else {\\n      renderItem.id = object.id;\\n      renderItem.object = object;\\n      renderItem.geometry = geometry;\\n      renderItem.material = material;\\n      renderItem.program = materialProperties.program || defaultProgram;\\n      renderItem.groupOrder = groupOrder;\\n      renderItem.renderOrder = object.renderOrder;\\n      renderItem.z = z;\\n      renderItem.group = group;\\n    }\\n    renderItemsIndex++;\\n    return renderItem;\\n  }\\n  function push(object, geometry, material, groupOrder, z, group) {\\n    const renderItem = getNextRenderItem(object, geometry, material, groupOrder, z, group);\\n    if (material.transmission > 0) {\\n      transmissive.push(renderItem);\\n    } else if (material.transparent === true) {\\n      transparent.push(renderItem);\\n    } else {\\n      opaque.push(renderItem);\\n    }\\n  }\\n  function unshift(object, geometry, material, groupOrder, z, group) {\\n    const renderItem = getNextRenderItem(object, geometry, material, groupOrder, z, group);\\n    if (material.transmission > 0) {\\n      transmissive.unshift(renderItem);\\n    } else if (material.transparent === true) {\\n      transparent.unshift(renderItem);\\n    } else {\\n      opaque.unshift(renderItem);\\n    }\\n  }\\n  function sort(customOpaqueSort, customTransparentSort) {\\n    if (opaque.length > 1)\\n      opaque.sort(customOpaqueSort || painterSortStable);\\n    if (transmissive.length > 1)\\n      transmissive.sort(customTransparentSort || reversePainterSortStable);\\n    if (transparent.length > 1)\\n      transparent.sort(customTransparentSort || reversePainterSortStable);\\n  }\\n  function finish() {\\n    for (let i = renderItemsIndex, il = renderItems.length; i < il; i++) {\\n      const renderItem = renderItems[i];\\n      if (renderItem.id === null)\\n        break;\\n      renderItem.id = null;\\n      renderItem.object = null;\\n      renderItem.geometry = null;\\n      renderItem.material = null;\\n      renderItem.program = null;\\n      renderItem.group = null;\\n    }\\n  }\\n  return {\\n    opaque,\\n    transmissive,\\n    transparent,\\n    init,\\n    push,\\n    unshift,\\n    finish,\\n    sort\\n  };\\n}\\nfunction WebGLRenderLists(properties) {\\n  let lists = new WeakMap();\\n  function get(scene, renderCallDepth) {\\n    let list;\\n    if (lists.has(scene) === false) {\\n      list = new WebGLRenderList(properties);\\n      lists.set(scene, [list]);\\n    } else {\\n      if (renderCallDepth >= lists.get(scene).length) {\\n        list = new WebGLRenderList(properties);\\n        lists.get(scene).push(list);\\n      } else {\\n        list = lists.get(scene)[renderCallDepth];\\n      }\\n    }\\n    return list;\\n  }\\n  function dispose() {\\n    lists = new WeakMap();\\n  }\\n  return {\\n    get,\\n    dispose\\n  };\\n}\\n\\n// ../../../node_modules/three/src/renderers/webgl/WebGLLights.js\\nfunction UniformsCache() {\\n  const lights = {};\\n  return {\\n    get: function(light) {\\n      if (lights[light.id] !== void 0) {\\n        return lights[light.id];\\n      }\\n      let uniforms;\\n      switch (light.type) {\\n        case \\\\\\\"DirectionalLight\\\\\\\":\\n          uniforms = {\\n            direction: new Vector3(),\\n            color: new Color()\\n          };\\n          break;\\n        case \\\\\\\"SpotLight\\\\\\\":\\n          uniforms = {\\n            position: new Vector3(),\\n            direction: new Vector3(),\\n            color: new Color(),\\n            distance: 0,\\n            coneCos: 0,\\n            penumbraCos: 0,\\n            decay: 0\\n          };\\n          break;\\n        case \\\\\\\"PointLight\\\\\\\":\\n          uniforms = {\\n            position: new Vector3(),\\n            color: new Color(),\\n            distance: 0,\\n            decay: 0\\n          };\\n          break;\\n        case \\\\\\\"HemisphereLight\\\\\\\":\\n          uniforms = {\\n            direction: new Vector3(),\\n            skyColor: new Color(),\\n            groundColor: new Color()\\n          };\\n          break;\\n        case \\\\\\\"RectAreaLight\\\\\\\":\\n          uniforms = {\\n            color: new Color(),\\n            position: new Vector3(),\\n            halfWidth: new Vector3(),\\n            halfHeight: new Vector3()\\n          };\\n          break;\\n      }\\n      lights[light.id] = uniforms;\\n      return uniforms;\\n    }\\n  };\\n}\\nfunction ShadowUniformsCache() {\\n  const lights = {};\\n  return {\\n    get: function(light) {\\n      if (lights[light.id] !== void 0) {\\n        return lights[light.id];\\n      }\\n      let uniforms;\\n      switch (light.type) {\\n        case \\\\\\\"DirectionalLight\\\\\\\":\\n          uniforms = {\\n            shadowBias: 0,\\n            shadowNormalBias: 0,\\n            shadowRadius: 1,\\n            shadowMapSize: new Vector2()\\n          };\\n          break;\\n        case \\\\\\\"SpotLight\\\\\\\":\\n          uniforms = {\\n            shadowBias: 0,\\n            shadowNormalBias: 0,\\n            shadowRadius: 1,\\n            shadowMapSize: new Vector2()\\n          };\\n          break;\\n        case \\\\\\\"PointLight\\\\\\\":\\n          uniforms = {\\n            shadowBias: 0,\\n            shadowNormalBias: 0,\\n            shadowRadius: 1,\\n            shadowMapSize: new Vector2(),\\n            shadowCameraNear: 1,\\n            shadowCameraFar: 1e3\\n          };\\n          break;\\n      }\\n      lights[light.id] = uniforms;\\n      return uniforms;\\n    }\\n  };\\n}\\nvar nextVersion = 0;\\nfunction shadowCastingLightsFirst(lightA, lightB) {\\n  return (lightB.castShadow ? 1 : 0) - (lightA.castShadow ? 1 : 0);\\n}\\nfunction WebGLLights(extensions, capabilities) {\\n  const cache = new UniformsCache();\\n  const shadowCache = ShadowUniformsCache();\\n  const state = {\\n    version: 0,\\n    hash: {\\n      directionalLength: -1,\\n      pointLength: -1,\\n      spotLength: -1,\\n      rectAreaLength: -1,\\n      hemiLength: -1,\\n      numDirectionalShadows: -1,\\n      numPointShadows: -1,\\n      numSpotShadows: -1\\n    },\\n    ambient: [0, 0, 0],\\n    probe: [],\\n    directional: [],\\n    directionalShadow: [],\\n    directionalShadowMap: [],\\n    directionalShadowMatrix: [],\\n    spot: [],\\n    spotShadow: [],\\n    spotShadowMap: [],\\n    spotShadowMatrix: [],\\n    rectArea: [],\\n    rectAreaLTC1: null,\\n    rectAreaLTC2: null,\\n    point: [],\\n    pointShadow: [],\\n    pointShadowMap: [],\\n    pointShadowMatrix: [],\\n    hemi: []\\n  };\\n  for (let i = 0; i < 9; i++)\\n    state.probe.push(new Vector3());\\n  const vector3 = new Vector3();\\n  const matrix4 = new Matrix4();\\n  const matrix42 = new Matrix4();\\n  function setup(lights, physicallyCorrectLights) {\\n    let r = 0, g = 0, b = 0;\\n    for (let i = 0; i < 9; i++)\\n      state.probe[i].set(0, 0, 0);\\n    let directionalLength = 0;\\n    let pointLength = 0;\\n    let spotLength = 0;\\n    let rectAreaLength = 0;\\n    let hemiLength = 0;\\n    let numDirectionalShadows = 0;\\n    let numPointShadows = 0;\\n    let numSpotShadows = 0;\\n    lights.sort(shadowCastingLightsFirst);\\n    const scaleFactor = physicallyCorrectLights !== true ? Math.PI : 1;\\n    for (let i = 0, l = lights.length; i < l; i++) {\\n      const light = lights[i];\\n      const color = light.color;\\n      const intensity = light.intensity;\\n      const distance = light.distance;\\n      const shadowMap = light.shadow && light.shadow.map ? light.shadow.map.texture : null;\\n      if (light.isAmbientLight) {\\n        r += color.r * intensity * scaleFactor;\\n        g += color.g * intensity * scaleFactor;\\n        b += color.b * intensity * scaleFactor;\\n      } else if (light.isLightProbe) {\\n        for (let j = 0; j < 9; j++) {\\n          state.probe[j].addScaledVector(light.sh.coefficients[j], intensity);\\n        }\\n      } else if (light.isDirectionalLight) {\\n        const uniforms = cache.get(light);\\n        uniforms.color.copy(light.color).multiplyScalar(light.intensity * scaleFactor);\\n        if (light.castShadow) {\\n          const shadow2 = light.shadow;\\n          const shadowUniforms = shadowCache.get(light);\\n          shadowUniforms.shadowBias = shadow2.bias;\\n          shadowUniforms.shadowNormalBias = shadow2.normalBias;\\n          shadowUniforms.shadowRadius = shadow2.radius;\\n          shadowUniforms.shadowMapSize = shadow2.mapSize;\\n          state.directionalShadow[directionalLength] = shadowUniforms;\\n          state.directionalShadowMap[directionalLength] = shadowMap;\\n          state.directionalShadowMatrix[directionalLength] = light.shadow.matrix;\\n          numDirectionalShadows++;\\n        }\\n        state.directional[directionalLength] = uniforms;\\n        directionalLength++;\\n      } else if (light.isSpotLight) {\\n        const uniforms = cache.get(light);\\n        uniforms.position.setFromMatrixPosition(light.matrixWorld);\\n        uniforms.color.copy(color).multiplyScalar(intensity * scaleFactor);\\n        uniforms.distance = distance;\\n        uniforms.coneCos = Math.cos(light.angle);\\n        uniforms.penumbraCos = Math.cos(light.angle * (1 - light.penumbra));\\n        uniforms.decay = light.decay;\\n        if (light.castShadow) {\\n          const shadow2 = light.shadow;\\n          const shadowUniforms = shadowCache.get(light);\\n          shadowUniforms.shadowBias = shadow2.bias;\\n          shadowUniforms.shadowNormalBias = shadow2.normalBias;\\n          shadowUniforms.shadowRadius = shadow2.radius;\\n          shadowUniforms.shadowMapSize = shadow2.mapSize;\\n          state.spotShadow[spotLength] = shadowUniforms;\\n          state.spotShadowMap[spotLength] = shadowMap;\\n          state.spotShadowMatrix[spotLength] = light.shadow.matrix;\\n          numSpotShadows++;\\n        }\\n        state.spot[spotLength] = uniforms;\\n        spotLength++;\\n      } else if (light.isRectAreaLight) {\\n        const uniforms = cache.get(light);\\n        uniforms.color.copy(color).multiplyScalar(intensity);\\n        uniforms.halfWidth.set(light.width * 0.5, 0, 0);\\n        uniforms.halfHeight.set(0, light.height * 0.5, 0);\\n        state.rectArea[rectAreaLength] = uniforms;\\n        rectAreaLength++;\\n      } else if (light.isPointLight) {\\n        const uniforms = cache.get(light);\\n        uniforms.color.copy(light.color).multiplyScalar(light.intensity * scaleFactor);\\n        uniforms.distance = light.distance;\\n        uniforms.decay = light.decay;\\n        if (light.castShadow) {\\n          const shadow2 = light.shadow;\\n          const shadowUniforms = shadowCache.get(light);\\n          shadowUniforms.shadowBias = shadow2.bias;\\n          shadowUniforms.shadowNormalBias = shadow2.normalBias;\\n          shadowUniforms.shadowRadius = shadow2.radius;\\n          shadowUniforms.shadowMapSize = shadow2.mapSize;\\n          shadowUniforms.shadowCameraNear = shadow2.camera.near;\\n          shadowUniforms.shadowCameraFar = shadow2.camera.far;\\n          state.pointShadow[pointLength] = shadowUniforms;\\n          state.pointShadowMap[pointLength] = shadowMap;\\n          state.pointShadowMatrix[pointLength] = light.shadow.matrix;\\n          numPointShadows++;\\n        }\\n        state.point[pointLength] = uniforms;\\n        pointLength++;\\n      } else if (light.isHemisphereLight) {\\n        const uniforms = cache.get(light);\\n        uniforms.skyColor.copy(light.color).multiplyScalar(intensity * scaleFactor);\\n        uniforms.groundColor.copy(light.groundColor).multiplyScalar(intensity * scaleFactor);\\n        state.hemi[hemiLength] = uniforms;\\n        hemiLength++;\\n      }\\n    }\\n    if (rectAreaLength > 0) {\\n      if (capabilities.isWebGL2) {\\n        state.rectAreaLTC1 = UniformsLib.LTC_FLOAT_1;\\n        state.rectAreaLTC2 = UniformsLib.LTC_FLOAT_2;\\n      } else {\\n        if (extensions.has(\\\\\\\"OES_texture_float_linear\\\\\\\") === true) {\\n          state.rectAreaLTC1 = UniformsLib.LTC_FLOAT_1;\\n          state.rectAreaLTC2 = UniformsLib.LTC_FLOAT_2;\\n        } else if (extensions.has(\\\\\\\"OES_texture_half_float_linear\\\\\\\") === true) {\\n          state.rectAreaLTC1 = UniformsLib.LTC_HALF_1;\\n          state.rectAreaLTC2 = UniformsLib.LTC_HALF_2;\\n        } else {\\n          console.error(\\\\\\\"THREE.WebGLRenderer: Unable to use RectAreaLight. Missing WebGL extensions.\\\\\\\");\\n        }\\n      }\\n    }\\n    state.ambient[0] = r;\\n    state.ambient[1] = g;\\n    state.ambient[2] = b;\\n    const hash = state.hash;\\n    if (hash.directionalLength !== directionalLength || hash.pointLength !== pointLength || hash.spotLength !== spotLength || hash.rectAreaLength !== rectAreaLength || hash.hemiLength !== hemiLength || hash.numDirectionalShadows !== numDirectionalShadows || hash.numPointShadows !== numPointShadows || hash.numSpotShadows !== numSpotShadows) {\\n      state.directional.length = directionalLength;\\n      state.spot.length = spotLength;\\n      state.rectArea.length = rectAreaLength;\\n      state.point.length = pointLength;\\n      state.hemi.length = hemiLength;\\n      state.directionalShadow.length = numDirectionalShadows;\\n      state.directionalShadowMap.length = numDirectionalShadows;\\n      state.pointShadow.length = numPointShadows;\\n      state.pointShadowMap.length = numPointShadows;\\n      state.spotShadow.length = numSpotShadows;\\n      state.spotShadowMap.length = numSpotShadows;\\n      state.directionalShadowMatrix.length = numDirectionalShadows;\\n      state.pointShadowMatrix.length = numPointShadows;\\n      state.spotShadowMatrix.length = numSpotShadows;\\n      hash.directionalLength = directionalLength;\\n      hash.pointLength = pointLength;\\n      hash.spotLength = spotLength;\\n      hash.rectAreaLength = rectAreaLength;\\n      hash.hemiLength = hemiLength;\\n      hash.numDirectionalShadows = numDirectionalShadows;\\n      hash.numPointShadows = numPointShadows;\\n      hash.numSpotShadows = numSpotShadows;\\n      state.version = nextVersion++;\\n    }\\n  }\\n  function setupView(lights, camera) {\\n    let directionalLength = 0;\\n    let pointLength = 0;\\n    let spotLength = 0;\\n    let rectAreaLength = 0;\\n    let hemiLength = 0;\\n    const viewMatrix = camera.matrixWorldInverse;\\n    for (let i = 0, l = lights.length; i < l; i++) {\\n      const light = lights[i];\\n      if (light.isDirectionalLight) {\\n        const uniforms = state.directional[directionalLength];\\n        uniforms.direction.setFromMatrixPosition(light.matrixWorld);\\n        vector3.setFromMatrixPosition(light.target.matrixWorld);\\n        uniforms.direction.sub(vector3);\\n        uniforms.direction.transformDirection(viewMatrix);\\n        directionalLength++;\\n      } else if (light.isSpotLight) {\\n        const uniforms = state.spot[spotLength];\\n        uniforms.position.setFromMatrixPosition(light.matrixWorld);\\n        uniforms.position.applyMatrix4(viewMatrix);\\n        uniforms.direction.setFromMatrixPosition(light.matrixWorld);\\n        vector3.setFromMatrixPosition(light.target.matrixWorld);\\n        uniforms.direction.sub(vector3);\\n        uniforms.direction.transformDirection(viewMatrix);\\n        spotLength++;\\n      } else if (light.isRectAreaLight) {\\n        const uniforms = state.rectArea[rectAreaLength];\\n        uniforms.position.setFromMatrixPosition(light.matrixWorld);\\n        uniforms.position.applyMatrix4(viewMatrix);\\n        matrix42.identity();\\n        matrix4.copy(light.matrixWorld);\\n        matrix4.premultiply(viewMatrix);\\n        matrix42.extractRotation(matrix4);\\n        uniforms.halfWidth.set(light.width * 0.5, 0, 0);\\n        uniforms.halfHeight.set(0, light.height * 0.5, 0);\\n        uniforms.halfWidth.applyMatrix4(matrix42);\\n        uniforms.halfHeight.applyMatrix4(matrix42);\\n        rectAreaLength++;\\n      } else if (light.isPointLight) {\\n        const uniforms = state.point[pointLength];\\n        uniforms.position.setFromMatrixPosition(light.matrixWorld);\\n        uniforms.position.applyMatrix4(viewMatrix);\\n        pointLength++;\\n      } else if (light.isHemisphereLight) {\\n        const uniforms = state.hemi[hemiLength];\\n        uniforms.direction.setFromMatrixPosition(light.matrixWorld);\\n        uniforms.direction.transformDirection(viewMatrix);\\n        uniforms.direction.normalize();\\n        hemiLength++;\\n      }\\n    }\\n  }\\n  return {\\n    setup,\\n    setupView,\\n    state\\n  };\\n}\\n\\n// ../../../node_modules/three/src/renderers/webgl/WebGLRenderStates.js\\nfunction WebGLRenderState(extensions, capabilities) {\\n  const lights = new WebGLLights(extensions, capabilities);\\n  const lightsArray = [];\\n  const shadowsArray = [];\\n  function init() {\\n    lightsArray.length = 0;\\n    shadowsArray.length = 0;\\n  }\\n  function pushLight(light) {\\n    lightsArray.push(light);\\n  }\\n  function pushShadow(shadowLight) {\\n    shadowsArray.push(shadowLight);\\n  }\\n  function setupLights(physicallyCorrectLights) {\\n    lights.setup(lightsArray, physicallyCorrectLights);\\n  }\\n  function setupLightsView(camera) {\\n    lights.setupView(lightsArray, camera);\\n  }\\n  const state = {\\n    lightsArray,\\n    shadowsArray,\\n    lights\\n  };\\n  return {\\n    init,\\n    state,\\n    setupLights,\\n    setupLightsView,\\n    pushLight,\\n    pushShadow\\n  };\\n}\\nfunction WebGLRenderStates(extensions, capabilities) {\\n  let renderStates = new WeakMap();\\n  function get(scene, renderCallDepth = 0) {\\n    let renderState;\\n    if (renderStates.has(scene) === false) {\\n      renderState = new WebGLRenderState(extensions, capabilities);\\n      renderStates.set(scene, [renderState]);\\n    } else {\\n      if (renderCallDepth >= renderStates.get(scene).length) {\\n        renderState = new WebGLRenderState(extensions, capabilities);\\n        renderStates.get(scene).push(renderState);\\n      } else {\\n        renderState = renderStates.get(scene)[renderCallDepth];\\n      }\\n    }\\n    return renderState;\\n  }\\n  function dispose() {\\n    renderStates = new WeakMap();\\n  }\\n  return {\\n    get,\\n    dispose\\n  };\\n}\\n\\n// ../../../node_modules/three/src/materials/MeshDepthMaterial.js\\nvar MeshDepthMaterial = class extends Material {\\n  constructor(parameters) {\\n    super();\\n    this.type = \\\\\\\"MeshDepthMaterial\\\\\\\";\\n    this.depthPacking = BasicDepthPacking;\\n    this.map = null;\\n    this.alphaMap = null;\\n    this.displacementMap = null;\\n    this.displacementScale = 1;\\n    this.displacementBias = 0;\\n    this.wireframe = false;\\n    this.wireframeLinewidth = 1;\\n    this.fog = false;\\n    this.setValues(parameters);\\n  }\\n  copy(source) {\\n    super.copy(source);\\n    this.depthPacking = source.depthPacking;\\n    this.map = source.map;\\n    this.alphaMap = source.alphaMap;\\n    this.displacementMap = source.displacementMap;\\n    this.displacementScale = source.displacementScale;\\n    this.displacementBias = source.displacementBias;\\n    this.wireframe = source.wireframe;\\n    this.wireframeLinewidth = source.wireframeLinewidth;\\n    return this;\\n  }\\n};\\nMeshDepthMaterial.prototype.isMeshDepthMaterial = true;\\n\\n// ../../../node_modules/three/src/materials/MeshDistanceMaterial.js\\nvar MeshDistanceMaterial = class extends Material {\\n  constructor(parameters) {\\n    super();\\n    this.type = \\\\\\\"MeshDistanceMaterial\\\\\\\";\\n    this.referencePosition = new Vector3();\\n    this.nearDistance = 1;\\n    this.farDistance = 1e3;\\n    this.map = null;\\n    this.alphaMap = null;\\n    this.displacementMap = null;\\n    this.displacementScale = 1;\\n    this.displacementBias = 0;\\n    this.fog = false;\\n    this.setValues(parameters);\\n  }\\n  copy(source) {\\n    super.copy(source);\\n    this.referencePosition.copy(source.referencePosition);\\n    this.nearDistance = source.nearDistance;\\n    this.farDistance = source.farDistance;\\n    this.map = source.map;\\n    this.alphaMap = source.alphaMap;\\n    this.displacementMap = source.displacementMap;\\n    this.displacementScale = source.displacementScale;\\n    this.displacementBias = source.displacementBias;\\n    return this;\\n  }\\n};\\nMeshDistanceMaterial.prototype.isMeshDistanceMaterial = true;\\n\\n// ../../../node_modules/three/src/renderers/shaders/ShaderLib/vsm.glsl.js\\nvar vertex17 = `\\nvoid main() {\\n\\n\\tgl_Position = vec4( position, 1.0 );\\n\\n}\\n`;\\nvar fragment17 = `\\nuniform sampler2D shadow_pass;\\nuniform vec2 resolution;\\nuniform float radius;\\nuniform float samples;\\n\\n#include <packing>\\n\\nvoid main() {\\n\\n\\tfloat mean = 0.0;\\n\\tfloat squared_mean = 0.0;\\n\\n\\t// This seems totally useless but it's a crazy work around for a Adreno compiler bug\\n\\t// float depth = unpackRGBAToDepth( texture2D( shadow_pass, ( gl_FragCoord.xy ) / resolution ) );\\n\\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\\n\\t\\tfloat uvOffset = uvStart + i * uvStride;\\n\\n\\t\\t#ifdef HORIZONTAL_PASS\\n\\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\\n\\t\\t#else\\n\\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\\n\\t\\t#endif\\n\\n\\t}\\n\\n\\tmean = mean / samples;\\n\\tsquared_mean = squared_mean / samples;\\n\\n\\tfloat std_dev = sqrt( squared_mean - mean * mean );\\n\\n\\tgl_FragColor = pack2HalfToRGBA( vec2( mean, std_dev ) );\\n\\n}\\n`;\\n\\n// ../../../node_modules/three/src/renderers/webgl/WebGLShadowMap.js\\nfunction WebGLShadowMap(_renderer, _objects, _capabilities) {\\n  let _frustum = new Frustum();\\n  const _shadowMapSize = new Vector2(), _viewportSize = new Vector2(), _viewport = new Vector4(), _depthMaterial = new MeshDepthMaterial({depthPacking: RGBADepthPacking}), _distanceMaterial = new MeshDistanceMaterial(), _materialCache = {}, _maxTextureSize = _capabilities.maxTextureSize;\\n  const shadowSide = {0: BackSide, 1: FrontSide, 2: DoubleSide};\\n  const shadowMaterialVertical = new ShaderMaterial({\\n    uniforms: {\\n      shadow_pass: {value: null},\\n      resolution: {value: new Vector2()},\\n      radius: {value: 4},\\n      samples: {value: 8}\\n    },\\n    vertexShader: vertex17,\\n    fragmentShader: fragment17\\n  });\\n  const shadowMaterialHorizontal = shadowMaterialVertical.clone();\\n  shadowMaterialHorizontal.defines.HORIZONTAL_PASS = 1;\\n  const fullScreenTri = new BufferGeometry();\\n  fullScreenTri.setAttribute(\\\\\\\"position\\\\\\\", new BufferAttribute(new Float32Array([-1, -1, 0.5, 3, -1, 0.5, -1, 3, 0.5]), 3));\\n  const fullScreenMesh = new Mesh(fullScreenTri, shadowMaterialVertical);\\n  const scope = this;\\n  this.enabled = false;\\n  this.autoUpdate = true;\\n  this.needsUpdate = false;\\n  this.type = PCFShadowMap;\\n  this.render = function(lights, scene, camera) {\\n    if (scope.enabled === false)\\n      return;\\n    if (scope.autoUpdate === false && scope.needsUpdate === false)\\n      return;\\n    if (lights.length === 0)\\n      return;\\n    const currentRenderTarget = _renderer.getRenderTarget();\\n    const activeCubeFace = _renderer.getActiveCubeFace();\\n    const activeMipmapLevel = _renderer.getActiveMipmapLevel();\\n    const _state = _renderer.state;\\n    _state.setBlending(NoBlending);\\n    _state.buffers.color.setClear(1, 1, 1, 1);\\n    _state.buffers.depth.setTest(true);\\n    _state.setScissorTest(false);\\n    for (let i = 0, il = lights.length; i < il; i++) {\\n      const light = lights[i];\\n      const shadow2 = light.shadow;\\n      if (shadow2 === void 0) {\\n        console.warn(\\\\\\\"THREE.WebGLShadowMap:\\\\\\\", light, \\\\\\\"has no shadow.\\\\\\\");\\n        continue;\\n      }\\n      if (shadow2.autoUpdate === false && shadow2.needsUpdate === false)\\n        continue;\\n      _shadowMapSize.copy(shadow2.mapSize);\\n      const shadowFrameExtents = shadow2.getFrameExtents();\\n      _shadowMapSize.multiply(shadowFrameExtents);\\n      _viewportSize.copy(shadow2.mapSize);\\n      if (_shadowMapSize.x > _maxTextureSize || _shadowMapSize.y > _maxTextureSize) {\\n        if (_shadowMapSize.x > _maxTextureSize) {\\n          _viewportSize.x = Math.floor(_maxTextureSize / shadowFrameExtents.x);\\n          _shadowMapSize.x = _viewportSize.x * shadowFrameExtents.x;\\n          shadow2.mapSize.x = _viewportSize.x;\\n        }\\n        if (_shadowMapSize.y > _maxTextureSize) {\\n          _viewportSize.y = Math.floor(_maxTextureSize / shadowFrameExtents.y);\\n          _shadowMapSize.y = _viewportSize.y * shadowFrameExtents.y;\\n          shadow2.mapSize.y = _viewportSize.y;\\n        }\\n      }\\n      if (shadow2.map === null && !shadow2.isPointLightShadow && this.type === VSMShadowMap) {\\n        const pars = {minFilter: LinearFilter, magFilter: LinearFilter, format: RGBAFormat};\\n        shadow2.map = new WebGLRenderTarget(_shadowMapSize.x, _shadowMapSize.y, pars);\\n        shadow2.map.texture.name = light.name + \\\\\\\".shadowMap\\\\\\\";\\n        shadow2.mapPass = new WebGLRenderTarget(_shadowMapSize.x, _shadowMapSize.y, pars);\\n        shadow2.camera.updateProjectionMatrix();\\n      }\\n      if (shadow2.map === null) {\\n        const pars = {minFilter: NearestFilter, magFilter: NearestFilter, format: RGBAFormat};\\n        shadow2.map = new WebGLRenderTarget(_shadowMapSize.x, _shadowMapSize.y, pars);\\n        shadow2.map.texture.name = light.name + \\\\\\\".shadowMap\\\\\\\";\\n        shadow2.camera.updateProjectionMatrix();\\n      }\\n      _renderer.setRenderTarget(shadow2.map);\\n      _renderer.clear();\\n      const viewportCount = shadow2.getViewportCount();\\n      for (let vp = 0; vp < viewportCount; vp++) {\\n        const viewport = shadow2.getViewport(vp);\\n        _viewport.set(_viewportSize.x * viewport.x, _viewportSize.y * viewport.y, _viewportSize.x * viewport.z, _viewportSize.y * viewport.w);\\n        _state.viewport(_viewport);\\n        shadow2.updateMatrices(light, vp);\\n        _frustum = shadow2.getFrustum();\\n        renderObject(scene, camera, shadow2.camera, light, this.type);\\n      }\\n      if (!shadow2.isPointLightShadow && this.type === VSMShadowMap) {\\n        VSMPass(shadow2, camera);\\n      }\\n      shadow2.needsUpdate = false;\\n    }\\n    scope.needsUpdate = false;\\n    _renderer.setRenderTarget(currentRenderTarget, activeCubeFace, activeMipmapLevel);\\n  };\\n  function VSMPass(shadow2, camera) {\\n    const geometry = _objects.update(fullScreenMesh);\\n    shadowMaterialVertical.uniforms.shadow_pass.value = shadow2.map.texture;\\n    shadowMaterialVertical.uniforms.resolution.value = shadow2.mapSize;\\n    shadowMaterialVertical.uniforms.radius.value = shadow2.radius;\\n    shadowMaterialVertical.uniforms.samples.value = shadow2.blurSamples;\\n    _renderer.setRenderTarget(shadow2.mapPass);\\n    _renderer.clear();\\n    _renderer.renderBufferDirect(camera, null, geometry, shadowMaterialVertical, fullScreenMesh, null);\\n    shadowMaterialHorizontal.uniforms.shadow_pass.value = shadow2.mapPass.texture;\\n    shadowMaterialHorizontal.uniforms.resolution.value = shadow2.mapSize;\\n    shadowMaterialHorizontal.uniforms.radius.value = shadow2.radius;\\n    shadowMaterialHorizontal.uniforms.samples.value = shadow2.blurSamples;\\n    _renderer.setRenderTarget(shadow2.map);\\n    _renderer.clear();\\n    _renderer.renderBufferDirect(camera, null, geometry, shadowMaterialHorizontal, fullScreenMesh, null);\\n  }\\n  function getDepthMaterial(object, geometry, material, light, shadowCameraNear, shadowCameraFar, type) {\\n    let result = null;\\n    const customMaterial = light.isPointLight === true ? object.customDistanceMaterial : object.customDepthMaterial;\\n    if (customMaterial !== void 0) {\\n      result = customMaterial;\\n    } else {\\n      result = light.isPointLight === true ? _distanceMaterial : _depthMaterial;\\n    }\\n    if (_renderer.localClippingEnabled && material.clipShadows === true && material.clippingPlanes.length !== 0 || material.displacementMap && material.displacementScale !== 0 || material.alphaMap && material.alphaTest > 0) {\\n      const keyA = result.uuid, keyB = material.uuid;\\n      let materialsForVariant = _materialCache[keyA];\\n      if (materialsForVariant === void 0) {\\n        materialsForVariant = {};\\n        _materialCache[keyA] = materialsForVariant;\\n      }\\n      let cachedMaterial = materialsForVariant[keyB];\\n      if (cachedMaterial === void 0) {\\n        cachedMaterial = result.clone();\\n        materialsForVariant[keyB] = cachedMaterial;\\n      }\\n      result = cachedMaterial;\\n    }\\n    result.visible = material.visible;\\n    result.wireframe = material.wireframe;\\n    if (type === VSMShadowMap) {\\n      result.side = material.shadowSide !== null ? material.shadowSide : material.side;\\n    } else {\\n      result.side = material.shadowSide !== null ? material.shadowSide : shadowSide[material.side];\\n    }\\n    result.alphaMap = material.alphaMap;\\n    result.alphaTest = material.alphaTest;\\n    result.clipShadows = material.clipShadows;\\n    result.clippingPlanes = material.clippingPlanes;\\n    result.clipIntersection = material.clipIntersection;\\n    result.displacementMap = material.displacementMap;\\n    result.displacementScale = material.displacementScale;\\n    result.displacementBias = material.displacementBias;\\n    result.wireframeLinewidth = material.wireframeLinewidth;\\n    result.linewidth = material.linewidth;\\n    if (light.isPointLight === true && result.isMeshDistanceMaterial === true) {\\n      result.referencePosition.setFromMatrixPosition(light.matrixWorld);\\n      result.nearDistance = shadowCameraNear;\\n      result.farDistance = shadowCameraFar;\\n    }\\n    return result;\\n  }\\n  function renderObject(object, camera, shadowCamera, light, type) {\\n    if (object.visible === false)\\n      return;\\n    const visible = object.layers.test(camera.layers);\\n    if (visible && (object.isMesh || object.isLine || object.isPoints)) {\\n      if ((object.castShadow || object.receiveShadow && type === VSMShadowMap) && (!object.frustumCulled || _frustum.intersectsObject(object))) {\\n        object.modelViewMatrix.multiplyMatrices(shadowCamera.matrixWorldInverse, object.matrixWorld);\\n        const geometry = _objects.update(object);\\n        const material = object.material;\\n        if (Array.isArray(material)) {\\n          const groups = geometry.groups;\\n          for (let k = 0, kl = groups.length; k < kl; k++) {\\n            const group = groups[k];\\n            const groupMaterial = material[group.materialIndex];\\n            if (groupMaterial && groupMaterial.visible) {\\n              const depthMaterial = getDepthMaterial(object, geometry, groupMaterial, light, shadowCamera.near, shadowCamera.far, type);\\n              _renderer.renderBufferDirect(shadowCamera, null, geometry, depthMaterial, object, group);\\n            }\\n          }\\n        } else if (material.visible) {\\n          const depthMaterial = getDepthMaterial(object, geometry, material, light, shadowCamera.near, shadowCamera.far, type);\\n          _renderer.renderBufferDirect(shadowCamera, null, geometry, depthMaterial, object, null);\\n        }\\n      }\\n    }\\n    const children = object.children;\\n    for (let i = 0, l = children.length; i < l; i++) {\\n      renderObject(children[i], camera, shadowCamera, light, type);\\n    }\\n  }\\n}\\n\\n// ../../../node_modules/three/src/renderers/webgl/WebGLState.js\\nfunction WebGLState(gl, extensions, capabilities) {\\n  const isWebGL2 = capabilities.isWebGL2;\\n  function ColorBuffer() {\\n    let locked = false;\\n    const color = new Vector4();\\n    let currentColorMask = null;\\n    const currentColorClear = new Vector4(0, 0, 0, 0);\\n    return {\\n      setMask: function(colorMask) {\\n        if (currentColorMask !== colorMask && !locked) {\\n          gl.colorMask(colorMask, colorMask, colorMask, colorMask);\\n          currentColorMask = colorMask;\\n        }\\n      },\\n      setLocked: function(lock) {\\n        locked = lock;\\n      },\\n      setClear: function(r, g, b, a, premultipliedAlpha) {\\n        if (premultipliedAlpha === true) {\\n          r *= a;\\n          g *= a;\\n          b *= a;\\n        }\\n        color.set(r, g, b, a);\\n        if (currentColorClear.equals(color) === false) {\\n          gl.clearColor(r, g, b, a);\\n          currentColorClear.copy(color);\\n        }\\n      },\\n      reset: function() {\\n        locked = false;\\n        currentColorMask = null;\\n        currentColorClear.set(-1, 0, 0, 0);\\n      }\\n    };\\n  }\\n  function DepthBuffer() {\\n    let locked = false;\\n    let currentDepthMask = null;\\n    let currentDepthFunc = null;\\n    let currentDepthClear = null;\\n    return {\\n      setTest: function(depthTest) {\\n        if (depthTest) {\\n          enable(gl.DEPTH_TEST);\\n        } else {\\n          disable(gl.DEPTH_TEST);\\n        }\\n      },\\n      setMask: function(depthMask) {\\n        if (currentDepthMask !== depthMask && !locked) {\\n          gl.depthMask(depthMask);\\n          currentDepthMask = depthMask;\\n        }\\n      },\\n      setFunc: function(depthFunc) {\\n        if (currentDepthFunc !== depthFunc) {\\n          if (depthFunc) {\\n            switch (depthFunc) {\\n              case NeverDepth:\\n                gl.depthFunc(gl.NEVER);\\n                break;\\n              case AlwaysDepth:\\n                gl.depthFunc(gl.ALWAYS);\\n                break;\\n              case LessDepth:\\n                gl.depthFunc(gl.LESS);\\n                break;\\n              case LessEqualDepth:\\n                gl.depthFunc(gl.LEQUAL);\\n                break;\\n              case EqualDepth:\\n                gl.depthFunc(gl.EQUAL);\\n                break;\\n              case GreaterEqualDepth:\\n                gl.depthFunc(gl.GEQUAL);\\n                break;\\n              case GreaterDepth:\\n                gl.depthFunc(gl.GREATER);\\n                break;\\n              case NotEqualDepth:\\n                gl.depthFunc(gl.NOTEQUAL);\\n                break;\\n              default:\\n                gl.depthFunc(gl.LEQUAL);\\n            }\\n          } else {\\n            gl.depthFunc(gl.LEQUAL);\\n          }\\n          currentDepthFunc = depthFunc;\\n        }\\n      },\\n      setLocked: function(lock) {\\n        locked = lock;\\n      },\\n      setClear: function(depth2) {\\n        if (currentDepthClear !== depth2) {\\n          gl.clearDepth(depth2);\\n          currentDepthClear = depth2;\\n        }\\n      },\\n      reset: function() {\\n        locked = false;\\n        currentDepthMask = null;\\n        currentDepthFunc = null;\\n        currentDepthClear = null;\\n      }\\n    };\\n  }\\n  function StencilBuffer() {\\n    let locked = false;\\n    let currentStencilMask = null;\\n    let currentStencilFunc = null;\\n    let currentStencilRef = null;\\n    let currentStencilFuncMask = null;\\n    let currentStencilFail = null;\\n    let currentStencilZFail = null;\\n    let currentStencilZPass = null;\\n    let currentStencilClear = null;\\n    return {\\n      setTest: function(stencilTest) {\\n        if (!locked) {\\n          if (stencilTest) {\\n            enable(gl.STENCIL_TEST);\\n          } else {\\n            disable(gl.STENCIL_TEST);\\n          }\\n        }\\n      },\\n      setMask: function(stencilMask) {\\n        if (currentStencilMask !== stencilMask && !locked) {\\n          gl.stencilMask(stencilMask);\\n          currentStencilMask = stencilMask;\\n        }\\n      },\\n      setFunc: function(stencilFunc, stencilRef, stencilMask) {\\n        if (currentStencilFunc !== stencilFunc || currentStencilRef !== stencilRef || currentStencilFuncMask !== stencilMask) {\\n          gl.stencilFunc(stencilFunc, stencilRef, stencilMask);\\n          currentStencilFunc = stencilFunc;\\n          currentStencilRef = stencilRef;\\n          currentStencilFuncMask = stencilMask;\\n        }\\n      },\\n      setOp: function(stencilFail, stencilZFail, stencilZPass) {\\n        if (currentStencilFail !== stencilFail || currentStencilZFail !== stencilZFail || currentStencilZPass !== stencilZPass) {\\n          gl.stencilOp(stencilFail, stencilZFail, stencilZPass);\\n          currentStencilFail = stencilFail;\\n          currentStencilZFail = stencilZFail;\\n          currentStencilZPass = stencilZPass;\\n        }\\n      },\\n      setLocked: function(lock) {\\n        locked = lock;\\n      },\\n      setClear: function(stencil) {\\n        if (currentStencilClear !== stencil) {\\n          gl.clearStencil(stencil);\\n          currentStencilClear = stencil;\\n        }\\n      },\\n      reset: function() {\\n        locked = false;\\n        currentStencilMask = null;\\n        currentStencilFunc = null;\\n        currentStencilRef = null;\\n        currentStencilFuncMask = null;\\n        currentStencilFail = null;\\n        currentStencilZFail = null;\\n        currentStencilZPass = null;\\n        currentStencilClear = null;\\n      }\\n    };\\n  }\\n  const colorBuffer = new ColorBuffer();\\n  const depthBuffer = new DepthBuffer();\\n  const stencilBuffer = new StencilBuffer();\\n  let enabledCapabilities = {};\\n  let xrFramebuffer = null;\\n  let currentBoundFramebuffers = {};\\n  let currentProgram = null;\\n  let currentBlendingEnabled = false;\\n  let currentBlending = null;\\n  let currentBlendEquation = null;\\n  let currentBlendSrc = null;\\n  let currentBlendDst = null;\\n  let currentBlendEquationAlpha = null;\\n  let currentBlendSrcAlpha = null;\\n  let currentBlendDstAlpha = null;\\n  let currentPremultipledAlpha = false;\\n  let currentFlipSided = null;\\n  let currentCullFace = null;\\n  let currentLineWidth = null;\\n  let currentPolygonOffsetFactor = null;\\n  let currentPolygonOffsetUnits = null;\\n  const maxTextures = gl.getParameter(gl.MAX_COMBINED_TEXTURE_IMAGE_UNITS);\\n  let lineWidthAvailable = false;\\n  let version = 0;\\n  const glVersion = gl.getParameter(gl.VERSION);\\n  if (glVersion.indexOf(\\\\\\\"WebGL\\\\\\\") !== -1) {\\n    version = parseFloat(/^WebGL (\\\\d)/.exec(glVersion)[1]);\\n    lineWidthAvailable = version >= 1;\\n  } else if (glVersion.indexOf(\\\\\\\"OpenGL ES\\\\\\\") !== -1) {\\n    version = parseFloat(/^OpenGL ES (\\\\d)/.exec(glVersion)[1]);\\n    lineWidthAvailable = version >= 2;\\n  }\\n  let currentTextureSlot = null;\\n  let currentBoundTextures = {};\\n  const scissorParam = gl.getParameter(gl.SCISSOR_BOX);\\n  const viewportParam = gl.getParameter(gl.VIEWPORT);\\n  const currentScissor = new Vector4().fromArray(scissorParam);\\n  const currentViewport = new Vector4().fromArray(viewportParam);\\n  function createTexture(type, target, count) {\\n    const data = new Uint8Array(4);\\n    const texture = gl.createTexture();\\n    gl.bindTexture(type, texture);\\n    gl.texParameteri(type, gl.TEXTURE_MIN_FILTER, gl.NEAREST);\\n    gl.texParameteri(type, gl.TEXTURE_MAG_FILTER, gl.NEAREST);\\n    for (let i = 0; i < count; i++) {\\n      gl.texImage2D(target + i, 0, gl.RGBA, 1, 1, 0, gl.RGBA, gl.UNSIGNED_BYTE, data);\\n    }\\n    return texture;\\n  }\\n  const emptyTextures = {};\\n  emptyTextures[gl.TEXTURE_2D] = createTexture(gl.TEXTURE_2D, gl.TEXTURE_2D, 1);\\n  emptyTextures[gl.TEXTURE_CUBE_MAP] = createTexture(gl.TEXTURE_CUBE_MAP, gl.TEXTURE_CUBE_MAP_POSITIVE_X, 6);\\n  colorBuffer.setClear(0, 0, 0, 1);\\n  depthBuffer.setClear(1);\\n  stencilBuffer.setClear(0);\\n  enable(gl.DEPTH_TEST);\\n  depthBuffer.setFunc(LessEqualDepth);\\n  setFlipSided(false);\\n  setCullFace(CullFaceBack);\\n  enable(gl.CULL_FACE);\\n  setBlending(NoBlending);\\n  function enable(id) {\\n    if (enabledCapabilities[id] !== true) {\\n      gl.enable(id);\\n      enabledCapabilities[id] = true;\\n    }\\n  }\\n  function disable(id) {\\n    if (enabledCapabilities[id] !== false) {\\n      gl.disable(id);\\n      enabledCapabilities[id] = false;\\n    }\\n  }\\n  function bindXRFramebuffer(framebuffer) {\\n    if (framebuffer !== xrFramebuffer) {\\n      gl.bindFramebuffer(gl.FRAMEBUFFER, framebuffer);\\n      xrFramebuffer = framebuffer;\\n    }\\n  }\\n  function bindFramebuffer(target, framebuffer) {\\n    if (framebuffer === null && xrFramebuffer !== null)\\n      framebuffer = xrFramebuffer;\\n    if (currentBoundFramebuffers[target] !== framebuffer) {\\n      gl.bindFramebuffer(target, framebuffer);\\n      currentBoundFramebuffers[target] = framebuffer;\\n      if (isWebGL2) {\\n        if (target === gl.DRAW_FRAMEBUFFER) {\\n          currentBoundFramebuffers[gl.FRAMEBUFFER] = framebuffer;\\n        }\\n        if (target === gl.FRAMEBUFFER) {\\n          currentBoundFramebuffers[gl.DRAW_FRAMEBUFFER] = framebuffer;\\n        }\\n      }\\n      return true;\\n    }\\n    return false;\\n  }\\n  function useProgram(program) {\\n    if (currentProgram !== program) {\\n      gl.useProgram(program);\\n      currentProgram = program;\\n      return true;\\n    }\\n    return false;\\n  }\\n  const equationToGL = {\\n    [AddEquation]: gl.FUNC_ADD,\\n    [SubtractEquation]: gl.FUNC_SUBTRACT,\\n    [ReverseSubtractEquation]: gl.FUNC_REVERSE_SUBTRACT\\n  };\\n  if (isWebGL2) {\\n    equationToGL[MinEquation] = gl.MIN;\\n    equationToGL[MaxEquation] = gl.MAX;\\n  } else {\\n    const extension = extensions.get(\\\\\\\"EXT_blend_minmax\\\\\\\");\\n    if (extension !== null) {\\n      equationToGL[MinEquation] = extension.MIN_EXT;\\n      equationToGL[MaxEquation] = extension.MAX_EXT;\\n    }\\n  }\\n  const factorToGL = {\\n    [ZeroFactor]: gl.ZERO,\\n    [OneFactor]: gl.ONE,\\n    [SrcColorFactor]: gl.SRC_COLOR,\\n    [SrcAlphaFactor]: gl.SRC_ALPHA,\\n    [SrcAlphaSaturateFactor]: gl.SRC_ALPHA_SATURATE,\\n    [DstColorFactor]: gl.DST_COLOR,\\n    [DstAlphaFactor]: gl.DST_ALPHA,\\n    [OneMinusSrcColorFactor]: gl.ONE_MINUS_SRC_COLOR,\\n    [OneMinusSrcAlphaFactor]: gl.ONE_MINUS_SRC_ALPHA,\\n    [OneMinusDstColorFactor]: gl.ONE_MINUS_DST_COLOR,\\n    [OneMinusDstAlphaFactor]: gl.ONE_MINUS_DST_ALPHA\\n  };\\n  function setBlending(blending, blendEquation, blendSrc, blendDst, blendEquationAlpha, blendSrcAlpha, blendDstAlpha, premultipliedAlpha) {\\n    if (blending === NoBlending) {\\n      if (currentBlendingEnabled === true) {\\n        disable(gl.BLEND);\\n        currentBlendingEnabled = false;\\n      }\\n      return;\\n    }\\n    if (currentBlendingEnabled === false) {\\n      enable(gl.BLEND);\\n      currentBlendingEnabled = true;\\n    }\\n    if (blending !== CustomBlending) {\\n      if (blending !== currentBlending || premultipliedAlpha !== currentPremultipledAlpha) {\\n        if (currentBlendEquation !== AddEquation || currentBlendEquationAlpha !== AddEquation) {\\n          gl.blendEquation(gl.FUNC_ADD);\\n          currentBlendEquation = AddEquation;\\n          currentBlendEquationAlpha = AddEquation;\\n        }\\n        if (premultipliedAlpha) {\\n          switch (blending) {\\n            case NormalBlending:\\n              gl.blendFuncSeparate(gl.ONE, gl.ONE_MINUS_SRC_ALPHA, gl.ONE, gl.ONE_MINUS_SRC_ALPHA);\\n              break;\\n            case AdditiveBlending:\\n              gl.blendFunc(gl.ONE, gl.ONE);\\n              break;\\n            case SubtractiveBlending:\\n              gl.blendFuncSeparate(gl.ZERO, gl.ZERO, gl.ONE_MINUS_SRC_COLOR, gl.ONE_MINUS_SRC_ALPHA);\\n              break;\\n            case MultiplyBlending:\\n              gl.blendFuncSeparate(gl.ZERO, gl.SRC_COLOR, gl.ZERO, gl.SRC_ALPHA);\\n              break;\\n            default:\\n              console.error(\\\\\\\"THREE.WebGLState: Invalid blending: \\\\\\\", blending);\\n              break;\\n          }\\n        } else {\\n          switch (blending) {\\n            case NormalBlending:\\n              gl.blendFuncSeparate(gl.SRC_ALPHA, gl.ONE_MINUS_SRC_ALPHA, gl.ONE, gl.ONE_MINUS_SRC_ALPHA);\\n              break;\\n            case AdditiveBlending:\\n              gl.blendFunc(gl.SRC_ALPHA, gl.ONE);\\n              break;\\n            case SubtractiveBlending:\\n              gl.blendFunc(gl.ZERO, gl.ONE_MINUS_SRC_COLOR);\\n              break;\\n            case MultiplyBlending:\\n              gl.blendFunc(gl.ZERO, gl.SRC_COLOR);\\n              break;\\n            default:\\n              console.error(\\\\\\\"THREE.WebGLState: Invalid blending: \\\\\\\", blending);\\n              break;\\n          }\\n        }\\n        currentBlendSrc = null;\\n        currentBlendDst = null;\\n        currentBlendSrcAlpha = null;\\n        currentBlendDstAlpha = null;\\n        currentBlending = blending;\\n        currentPremultipledAlpha = premultipliedAlpha;\\n      }\\n      return;\\n    }\\n    blendEquationAlpha = blendEquationAlpha || blendEquation;\\n    blendSrcAlpha = blendSrcAlpha || blendSrc;\\n    blendDstAlpha = blendDstAlpha || blendDst;\\n    if (blendEquation !== currentBlendEquation || blendEquationAlpha !== currentBlendEquationAlpha) {\\n      gl.blendEquationSeparate(equationToGL[blendEquation], equationToGL[blendEquationAlpha]);\\n      currentBlendEquation = blendEquation;\\n      currentBlendEquationAlpha = blendEquationAlpha;\\n    }\\n    if (blendSrc !== currentBlendSrc || blendDst !== currentBlendDst || blendSrcAlpha !== currentBlendSrcAlpha || blendDstAlpha !== currentBlendDstAlpha) {\\n      gl.blendFuncSeparate(factorToGL[blendSrc], factorToGL[blendDst], factorToGL[blendSrcAlpha], factorToGL[blendDstAlpha]);\\n      currentBlendSrc = blendSrc;\\n      currentBlendDst = blendDst;\\n      currentBlendSrcAlpha = blendSrcAlpha;\\n      currentBlendDstAlpha = blendDstAlpha;\\n    }\\n    currentBlending = blending;\\n    currentPremultipledAlpha = null;\\n  }\\n  function setMaterial(material, frontFaceCW) {\\n    material.side === DoubleSide ? disable(gl.CULL_FACE) : enable(gl.CULL_FACE);\\n    let flipSided = material.side === BackSide;\\n    if (frontFaceCW)\\n      flipSided = !flipSided;\\n    setFlipSided(flipSided);\\n    material.blending === NormalBlending && material.transparent === false ? setBlending(NoBlending) : setBlending(material.blending, material.blendEquation, material.blendSrc, material.blendDst, material.blendEquationAlpha, material.blendSrcAlpha, material.blendDstAlpha, material.premultipliedAlpha);\\n    depthBuffer.setFunc(material.depthFunc);\\n    depthBuffer.setTest(material.depthTest);\\n    depthBuffer.setMask(material.depthWrite);\\n    colorBuffer.setMask(material.colorWrite);\\n    const stencilWrite = material.stencilWrite;\\n    stencilBuffer.setTest(stencilWrite);\\n    if (stencilWrite) {\\n      stencilBuffer.setMask(material.stencilWriteMask);\\n      stencilBuffer.setFunc(material.stencilFunc, material.stencilRef, material.stencilFuncMask);\\n      stencilBuffer.setOp(material.stencilFail, material.stencilZFail, material.stencilZPass);\\n    }\\n    setPolygonOffset(material.polygonOffset, material.polygonOffsetFactor, material.polygonOffsetUnits);\\n    material.alphaToCoverage === true ? enable(gl.SAMPLE_ALPHA_TO_COVERAGE) : disable(gl.SAMPLE_ALPHA_TO_COVERAGE);\\n  }\\n  function setFlipSided(flipSided) {\\n    if (currentFlipSided !== flipSided) {\\n      if (flipSided) {\\n        gl.frontFace(gl.CW);\\n      } else {\\n        gl.frontFace(gl.CCW);\\n      }\\n      currentFlipSided = flipSided;\\n    }\\n  }\\n  function setCullFace(cullFace) {\\n    if (cullFace !== CullFaceNone) {\\n      enable(gl.CULL_FACE);\\n      if (cullFace !== currentCullFace) {\\n        if (cullFace === CullFaceBack) {\\n          gl.cullFace(gl.BACK);\\n        } else if (cullFace === CullFaceFront) {\\n          gl.cullFace(gl.FRONT);\\n        } else {\\n          gl.cullFace(gl.FRONT_AND_BACK);\\n        }\\n      }\\n    } else {\\n      disable(gl.CULL_FACE);\\n    }\\n    currentCullFace = cullFace;\\n  }\\n  function setLineWidth(width) {\\n    if (width !== currentLineWidth) {\\n      if (lineWidthAvailable)\\n        gl.lineWidth(width);\\n      currentLineWidth = width;\\n    }\\n  }\\n  function setPolygonOffset(polygonOffset, factor, units) {\\n    if (polygonOffset) {\\n      enable(gl.POLYGON_OFFSET_FILL);\\n      if (currentPolygonOffsetFactor !== factor || currentPolygonOffsetUnits !== units) {\\n        gl.polygonOffset(factor, units);\\n        currentPolygonOffsetFactor = factor;\\n        currentPolygonOffsetUnits = units;\\n      }\\n    } else {\\n      disable(gl.POLYGON_OFFSET_FILL);\\n    }\\n  }\\n  function setScissorTest(scissorTest) {\\n    if (scissorTest) {\\n      enable(gl.SCISSOR_TEST);\\n    } else {\\n      disable(gl.SCISSOR_TEST);\\n    }\\n  }\\n  function activeTexture(webglSlot) {\\n    if (webglSlot === void 0)\\n      webglSlot = gl.TEXTURE0 + maxTextures - 1;\\n    if (currentTextureSlot !== webglSlot) {\\n      gl.activeTexture(webglSlot);\\n      currentTextureSlot = webglSlot;\\n    }\\n  }\\n  function bindTexture(webglType, webglTexture) {\\n    if (currentTextureSlot === null) {\\n      activeTexture();\\n    }\\n    let boundTexture = currentBoundTextures[currentTextureSlot];\\n    if (boundTexture === void 0) {\\n      boundTexture = {type: void 0, texture: void 0};\\n      currentBoundTextures[currentTextureSlot] = boundTexture;\\n    }\\n    if (boundTexture.type !== webglType || boundTexture.texture !== webglTexture) {\\n      gl.bindTexture(webglType, webglTexture || emptyTextures[webglType]);\\n      boundTexture.type = webglType;\\n      boundTexture.texture = webglTexture;\\n    }\\n  }\\n  function unbindTexture() {\\n    const boundTexture = currentBoundTextures[currentTextureSlot];\\n    if (boundTexture !== void 0 && boundTexture.type !== void 0) {\\n      gl.bindTexture(boundTexture.type, null);\\n      boundTexture.type = void 0;\\n      boundTexture.texture = void 0;\\n    }\\n  }\\n  function compressedTexImage2D() {\\n    try {\\n      gl.compressedTexImage2D.apply(gl, arguments);\\n    } catch (error) {\\n      console.error(\\\\\\\"THREE.WebGLState:\\\\\\\", error);\\n    }\\n  }\\n  function texImage2D() {\\n    try {\\n      gl.texImage2D.apply(gl, arguments);\\n    } catch (error) {\\n      console.error(\\\\\\\"THREE.WebGLState:\\\\\\\", error);\\n    }\\n  }\\n  function texImage3D() {\\n    try {\\n      gl.texImage3D.apply(gl, arguments);\\n    } catch (error) {\\n      console.error(\\\\\\\"THREE.WebGLState:\\\\\\\", error);\\n    }\\n  }\\n  function scissor(scissor2) {\\n    if (currentScissor.equals(scissor2) === false) {\\n      gl.scissor(scissor2.x, scissor2.y, scissor2.z, scissor2.w);\\n      currentScissor.copy(scissor2);\\n    }\\n  }\\n  function viewport(viewport2) {\\n    if (currentViewport.equals(viewport2) === false) {\\n      gl.viewport(viewport2.x, viewport2.y, viewport2.z, viewport2.w);\\n      currentViewport.copy(viewport2);\\n    }\\n  }\\n  function reset() {\\n    gl.disable(gl.BLEND);\\n    gl.disable(gl.CULL_FACE);\\n    gl.disable(gl.DEPTH_TEST);\\n    gl.disable(gl.POLYGON_OFFSET_FILL);\\n    gl.disable(gl.SCISSOR_TEST);\\n    gl.disable(gl.STENCIL_TEST);\\n    gl.disable(gl.SAMPLE_ALPHA_TO_COVERAGE);\\n    gl.blendEquation(gl.FUNC_ADD);\\n    gl.blendFunc(gl.ONE, gl.ZERO);\\n    gl.blendFuncSeparate(gl.ONE, gl.ZERO, gl.ONE, gl.ZERO);\\n    gl.colorMask(true, true, true, true);\\n    gl.clearColor(0, 0, 0, 0);\\n    gl.depthMask(true);\\n    gl.depthFunc(gl.LESS);\\n    gl.clearDepth(1);\\n    gl.stencilMask(4294967295);\\n    gl.stencilFunc(gl.ALWAYS, 0, 4294967295);\\n    gl.stencilOp(gl.KEEP, gl.KEEP, gl.KEEP);\\n    gl.clearStencil(0);\\n    gl.cullFace(gl.BACK);\\n    gl.frontFace(gl.CCW);\\n    gl.polygonOffset(0, 0);\\n    gl.activeTexture(gl.TEXTURE0);\\n    gl.bindFramebuffer(gl.FRAMEBUFFER, null);\\n    if (isWebGL2 === true) {\\n      gl.bindFramebuffer(gl.DRAW_FRAMEBUFFER, null);\\n      gl.bindFramebuffer(gl.READ_FRAMEBUFFER, null);\\n    }\\n    gl.useProgram(null);\\n    gl.lineWidth(1);\\n    gl.scissor(0, 0, gl.canvas.width, gl.canvas.height);\\n    gl.viewport(0, 0, gl.canvas.width, gl.canvas.height);\\n    enabledCapabilities = {};\\n    currentTextureSlot = null;\\n    currentBoundTextures = {};\\n    xrFramebuffer = null;\\n    currentBoundFramebuffers = {};\\n    currentProgram = null;\\n    currentBlendingEnabled = false;\\n    currentBlending = null;\\n    currentBlendEquation = null;\\n    currentBlendSrc = null;\\n    currentBlendDst = null;\\n    currentBlendEquationAlpha = null;\\n    currentBlendSrcAlpha = null;\\n    currentBlendDstAlpha = null;\\n    currentPremultipledAlpha = false;\\n    currentFlipSided = null;\\n    currentCullFace = null;\\n    currentLineWidth = null;\\n    currentPolygonOffsetFactor = null;\\n    currentPolygonOffsetUnits = null;\\n    currentScissor.set(0, 0, gl.canvas.width, gl.canvas.height);\\n    currentViewport.set(0, 0, gl.canvas.width, gl.canvas.height);\\n    colorBuffer.reset();\\n    depthBuffer.reset();\\n    stencilBuffer.reset();\\n  }\\n  return {\\n    buffers: {\\n      color: colorBuffer,\\n      depth: depthBuffer,\\n      stencil: stencilBuffer\\n    },\\n    enable,\\n    disable,\\n    bindFramebuffer,\\n    bindXRFramebuffer,\\n    useProgram,\\n    setBlending,\\n    setMaterial,\\n    setFlipSided,\\n    setCullFace,\\n    setLineWidth,\\n    setPolygonOffset,\\n    setScissorTest,\\n    activeTexture,\\n    bindTexture,\\n    unbindTexture,\\n    compressedTexImage2D,\\n    texImage2D,\\n    texImage3D,\\n    scissor,\\n    viewport,\\n    reset\\n  };\\n}\\n\\n// ../../../node_modules/three/src/renderers/webgl/WebGLTextures.js\\nfunction WebGLTextures(_gl, extensions, state, properties, capabilities, utils, info) {\\n  const isWebGL2 = capabilities.isWebGL2;\\n  const maxTextures = capabilities.maxTextures;\\n  const maxCubemapSize = capabilities.maxCubemapSize;\\n  const maxTextureSize = capabilities.maxTextureSize;\\n  const maxSamples = capabilities.maxSamples;\\n  const _videoTextures = new WeakMap();\\n  let _canvas2;\\n  let useOffscreenCanvas = false;\\n  try {\\n    useOffscreenCanvas = typeof OffscreenCanvas !== \\\\\\\"undefined\\\\\\\" && new OffscreenCanvas(1, 1).getContext(\\\\\\\"2d\\\\\\\") !== null;\\n  } catch (err) {\\n  }\\n  function createCanvas(width, height) {\\n    return useOffscreenCanvas ? new OffscreenCanvas(width, height) : createElementNS(\\\\\\\"canvas\\\\\\\");\\n  }\\n  function resizeImage(image, needsPowerOfTwo, needsNewCanvas, maxSize) {\\n    let scale = 1;\\n    if (image.width > maxSize || image.height > maxSize) {\\n      scale = maxSize / Math.max(image.width, image.height);\\n    }\\n    if (scale < 1 || needsPowerOfTwo === true) {\\n      if (typeof HTMLImageElement !== \\\\\\\"undefined\\\\\\\" && image instanceof HTMLImageElement || typeof HTMLCanvasElement !== \\\\\\\"undefined\\\\\\\" && image instanceof HTMLCanvasElement || typeof ImageBitmap !== \\\\\\\"undefined\\\\\\\" && image instanceof ImageBitmap) {\\n        const floor = needsPowerOfTwo ? floorPowerOfTwo : Math.floor;\\n        const width = floor(scale * image.width);\\n        const height = floor(scale * image.height);\\n        if (_canvas2 === void 0)\\n          _canvas2 = createCanvas(width, height);\\n        const canvas = needsNewCanvas ? createCanvas(width, height) : _canvas2;\\n        canvas.width = width;\\n        canvas.height = height;\\n        const context = canvas.getContext(\\\\\\\"2d\\\\\\\");\\n        context.drawImage(image, 0, 0, width, height);\\n        console.warn(\\\\\\\"THREE.WebGLRenderer: Texture has been resized from (\\\\\\\" + image.width + \\\\\\\"x\\\\\\\" + image.height + \\\\\\\") to (\\\\\\\" + width + \\\\\\\"x\\\\\\\" + height + \\\\\\\").\\\\\\\");\\n        return canvas;\\n      } else {\\n        if (\\\\\\\"data\\\\\\\" in image) {\\n          console.warn(\\\\\\\"THREE.WebGLRenderer: Image in DataTexture is too big (\\\\\\\" + image.width + \\\\\\\"x\\\\\\\" + image.height + \\\\\\\").\\\\\\\");\\n        }\\n        return image;\\n      }\\n    }\\n    return image;\\n  }\\n  function isPowerOfTwo2(image) {\\n    return isPowerOfTwo(image.width) && isPowerOfTwo(image.height);\\n  }\\n  function textureNeedsPowerOfTwo(texture) {\\n    if (isWebGL2)\\n      return false;\\n    return texture.wrapS !== ClampToEdgeWrapping || texture.wrapT !== ClampToEdgeWrapping || texture.minFilter !== NearestFilter && texture.minFilter !== LinearFilter;\\n  }\\n  function textureNeedsGenerateMipmaps(texture, supportsMips) {\\n    return texture.generateMipmaps && supportsMips && texture.minFilter !== NearestFilter && texture.minFilter !== LinearFilter;\\n  }\\n  function generateMipmap(target, texture, width, height, depth2 = 1) {\\n    _gl.generateMipmap(target);\\n    const textureProperties = properties.get(texture);\\n    textureProperties.__maxMipLevel = Math.log2(Math.max(width, height, depth2));\\n  }\\n  function getInternalFormat(internalFormatName, glFormat, glType, encoding) {\\n    if (isWebGL2 === false)\\n      return glFormat;\\n    if (internalFormatName !== null) {\\n      if (_gl[internalFormatName] !== void 0)\\n        return _gl[internalFormatName];\\n      console.warn(\\\\\\\"THREE.WebGLRenderer: Attempt to use non-existing WebGL internal format '\\\\\\\" + internalFormatName + \\\\\\\"'\\\\\\\");\\n    }\\n    let internalFormat = glFormat;\\n    if (glFormat === _gl.RED) {\\n      if (glType === _gl.FLOAT)\\n        internalFormat = _gl.R32F;\\n      if (glType === _gl.HALF_FLOAT)\\n        internalFormat = _gl.R16F;\\n      if (glType === _gl.UNSIGNED_BYTE)\\n        internalFormat = _gl.R8;\\n    }\\n    if (glFormat === _gl.RGB) {\\n      if (glType === _gl.FLOAT)\\n        internalFormat = _gl.RGB32F;\\n      if (glType === _gl.HALF_FLOAT)\\n        internalFormat = _gl.RGB16F;\\n      if (glType === _gl.UNSIGNED_BYTE)\\n        internalFormat = _gl.RGB8;\\n    }\\n    if (glFormat === _gl.RGBA) {\\n      if (glType === _gl.FLOAT)\\n        internalFormat = _gl.RGBA32F;\\n      if (glType === _gl.HALF_FLOAT)\\n        internalFormat = _gl.RGBA16F;\\n      if (glType === _gl.UNSIGNED_BYTE)\\n        internalFormat = encoding === sRGBEncoding ? _gl.SRGB8_ALPHA8 : _gl.RGBA8;\\n    }\\n    if (internalFormat === _gl.R16F || internalFormat === _gl.R32F || internalFormat === _gl.RGBA16F || internalFormat === _gl.RGBA32F) {\\n      extensions.get(\\\\\\\"EXT_color_buffer_float\\\\\\\");\\n    }\\n    return internalFormat;\\n  }\\n  function filterFallback(f) {\\n    if (f === NearestFilter || f === NearestMipmapNearestFilter || f === NearestMipmapLinearFilter) {\\n      return _gl.NEAREST;\\n    }\\n    return _gl.LINEAR;\\n  }\\n  function onTextureDispose(event) {\\n    const texture = event.target;\\n    texture.removeEventListener(\\\\\\\"dispose\\\\\\\", onTextureDispose);\\n    deallocateTexture(texture);\\n    if (texture.isVideoTexture) {\\n      _videoTextures.delete(texture);\\n    }\\n    info.memory.textures--;\\n  }\\n  function onRenderTargetDispose(event) {\\n    const renderTarget = event.target;\\n    renderTarget.removeEventListener(\\\\\\\"dispose\\\\\\\", onRenderTargetDispose);\\n    deallocateRenderTarget(renderTarget);\\n  }\\n  function deallocateTexture(texture) {\\n    const textureProperties = properties.get(texture);\\n    if (textureProperties.__webglInit === void 0)\\n      return;\\n    _gl.deleteTexture(textureProperties.__webglTexture);\\n    properties.remove(texture);\\n  }\\n  function deallocateRenderTarget(renderTarget) {\\n    const texture = renderTarget.texture;\\n    const renderTargetProperties = properties.get(renderTarget);\\n    const textureProperties = properties.get(texture);\\n    if (!renderTarget)\\n      return;\\n    if (textureProperties.__webglTexture !== void 0) {\\n      _gl.deleteTexture(textureProperties.__webglTexture);\\n      info.memory.textures--;\\n    }\\n    if (renderTarget.depthTexture) {\\n      renderTarget.depthTexture.dispose();\\n    }\\n    if (renderTarget.isWebGLCubeRenderTarget) {\\n      for (let i = 0; i < 6; i++) {\\n        _gl.deleteFramebuffer(renderTargetProperties.__webglFramebuffer[i]);\\n        if (renderTargetProperties.__webglDepthbuffer)\\n          _gl.deleteRenderbuffer(renderTargetProperties.__webglDepthbuffer[i]);\\n      }\\n    } else {\\n      _gl.deleteFramebuffer(renderTargetProperties.__webglFramebuffer);\\n      if (renderTargetProperties.__webglDepthbuffer)\\n        _gl.deleteRenderbuffer(renderTargetProperties.__webglDepthbuffer);\\n      if (renderTargetProperties.__webglMultisampledFramebuffer)\\n        _gl.deleteFramebuffer(renderTargetProperties.__webglMultisampledFramebuffer);\\n      if (renderTargetProperties.__webglColorRenderbuffer)\\n        _gl.deleteRenderbuffer(renderTargetProperties.__webglColorRenderbuffer);\\n      if (renderTargetProperties.__webglDepthRenderbuffer)\\n        _gl.deleteRenderbuffer(renderTargetProperties.__webglDepthRenderbuffer);\\n    }\\n    if (renderTarget.isWebGLMultipleRenderTargets) {\\n      for (let i = 0, il = texture.length; i < il; i++) {\\n        const attachmentProperties = properties.get(texture[i]);\\n        if (attachmentProperties.__webglTexture) {\\n          _gl.deleteTexture(attachmentProperties.__webglTexture);\\n          info.memory.textures--;\\n        }\\n        properties.remove(texture[i]);\\n      }\\n    }\\n    properties.remove(texture);\\n    properties.remove(renderTarget);\\n  }\\n  let textureUnits = 0;\\n  function resetTextureUnits() {\\n    textureUnits = 0;\\n  }\\n  function allocateTextureUnit() {\\n    const textureUnit = textureUnits;\\n    if (textureUnit >= maxTextures) {\\n      console.warn(\\\\\\\"THREE.WebGLTextures: Trying to use \\\\\\\" + textureUnit + \\\\\\\" texture units while this GPU supports only \\\\\\\" + maxTextures);\\n    }\\n    textureUnits += 1;\\n    return textureUnit;\\n  }\\n  function setTexture2D(texture, slot) {\\n    const textureProperties = properties.get(texture);\\n    if (texture.isVideoTexture)\\n      updateVideoTexture(texture);\\n    if (texture.version > 0 && textureProperties.__version !== texture.version) {\\n      const image = texture.image;\\n      if (image === void 0) {\\n        console.warn(\\\\\\\"THREE.WebGLRenderer: Texture marked for update but image is undefined\\\\\\\");\\n      } else if (image.complete === false) {\\n        console.warn(\\\\\\\"THREE.WebGLRenderer: Texture marked for update but image is incomplete\\\\\\\");\\n      } else {\\n        uploadTexture(textureProperties, texture, slot);\\n        return;\\n      }\\n    }\\n    state.activeTexture(_gl.TEXTURE0 + slot);\\n    state.bindTexture(_gl.TEXTURE_2D, textureProperties.__webglTexture);\\n  }\\n  function setTexture2DArray(texture, slot) {\\n    const textureProperties = properties.get(texture);\\n    if (texture.version > 0 && textureProperties.__version !== texture.version) {\\n      uploadTexture(textureProperties, texture, slot);\\n      return;\\n    }\\n    state.activeTexture(_gl.TEXTURE0 + slot);\\n    state.bindTexture(_gl.TEXTURE_2D_ARRAY, textureProperties.__webglTexture);\\n  }\\n  function setTexture3D(texture, slot) {\\n    const textureProperties = properties.get(texture);\\n    if (texture.version > 0 && textureProperties.__version !== texture.version) {\\n      uploadTexture(textureProperties, texture, slot);\\n      return;\\n    }\\n    state.activeTexture(_gl.TEXTURE0 + slot);\\n    state.bindTexture(_gl.TEXTURE_3D, textureProperties.__webglTexture);\\n  }\\n  function setTextureCube(texture, slot) {\\n    const textureProperties = properties.get(texture);\\n    if (texture.version > 0 && textureProperties.__version !== texture.version) {\\n      uploadCubeTexture(textureProperties, texture, slot);\\n      return;\\n    }\\n    state.activeTexture(_gl.TEXTURE0 + slot);\\n    state.bindTexture(_gl.TEXTURE_CUBE_MAP, textureProperties.__webglTexture);\\n  }\\n  const wrappingToGL = {\\n    [RepeatWrapping]: _gl.REPEAT,\\n    [ClampToEdgeWrapping]: _gl.CLAMP_TO_EDGE,\\n    [MirroredRepeatWrapping]: _gl.MIRRORED_REPEAT\\n  };\\n  const filterToGL = {\\n    [NearestFilter]: _gl.NEAREST,\\n    [NearestMipmapNearestFilter]: _gl.NEAREST_MIPMAP_NEAREST,\\n    [NearestMipmapLinearFilter]: _gl.NEAREST_MIPMAP_LINEAR,\\n    [LinearFilter]: _gl.LINEAR,\\n    [LinearMipmapNearestFilter]: _gl.LINEAR_MIPMAP_NEAREST,\\n    [LinearMipmapLinearFilter]: _gl.LINEAR_MIPMAP_LINEAR\\n  };\\n  function setTextureParameters(textureType, texture, supportsMips) {\\n    if (supportsMips) {\\n      _gl.texParameteri(textureType, _gl.TEXTURE_WRAP_S, wrappingToGL[texture.wrapS]);\\n      _gl.texParameteri(textureType, _gl.TEXTURE_WRAP_T, wrappingToGL[texture.wrapT]);\\n      if (textureType === _gl.TEXTURE_3D || textureType === _gl.TEXTURE_2D_ARRAY) {\\n        _gl.texParameteri(textureType, _gl.TEXTURE_WRAP_R, wrappingToGL[texture.wrapR]);\\n      }\\n      _gl.texParameteri(textureType, _gl.TEXTURE_MAG_FILTER, filterToGL[texture.magFilter]);\\n      _gl.texParameteri(textureType, _gl.TEXTURE_MIN_FILTER, filterToGL[texture.minFilter]);\\n    } else {\\n      _gl.texParameteri(textureType, _gl.TEXTURE_WRAP_S, _gl.CLAMP_TO_EDGE);\\n      _gl.texParameteri(textureType, _gl.TEXTURE_WRAP_T, _gl.CLAMP_TO_EDGE);\\n      if (textureType === _gl.TEXTURE_3D || textureType === _gl.TEXTURE_2D_ARRAY) {\\n        _gl.texParameteri(textureType, _gl.TEXTURE_WRAP_R, _gl.CLAMP_TO_EDGE);\\n      }\\n      if (texture.wrapS !== ClampToEdgeWrapping || texture.wrapT !== ClampToEdgeWrapping) {\\n        console.warn(\\\\\\\"THREE.WebGLRenderer: Texture is not power of two. Texture.wrapS and Texture.wrapT should be set to THREE.ClampToEdgeWrapping.\\\\\\\");\\n      }\\n      _gl.texParameteri(textureType, _gl.TEXTURE_MAG_FILTER, filterFallback(texture.magFilter));\\n      _gl.texParameteri(textureType, _gl.TEXTURE_MIN_FILTER, filterFallback(texture.minFilter));\\n      if (texture.minFilter !== NearestFilter && texture.minFilter !== LinearFilter) {\\n        console.warn(\\\\\\\"THREE.WebGLRenderer: Texture is not power of two. Texture.minFilter should be set to THREE.NearestFilter or THREE.LinearFilter.\\\\\\\");\\n      }\\n    }\\n    if (extensions.has(\\\\\\\"EXT_texture_filter_anisotropic\\\\\\\") === true) {\\n      const extension = extensions.get(\\\\\\\"EXT_texture_filter_anisotropic\\\\\\\");\\n      if (texture.type === FloatType && extensions.has(\\\\\\\"OES_texture_float_linear\\\\\\\") === false)\\n        return;\\n      if (isWebGL2 === false && (texture.type === HalfFloatType && extensions.has(\\\\\\\"OES_texture_half_float_linear\\\\\\\") === false))\\n        return;\\n      if (texture.anisotropy > 1 || properties.get(texture).__currentAnisotropy) {\\n        _gl.texParameterf(textureType, extension.TEXTURE_MAX_ANISOTROPY_EXT, Math.min(texture.anisotropy, capabilities.getMaxAnisotropy()));\\n        properties.get(texture).__currentAnisotropy = texture.anisotropy;\\n      }\\n    }\\n  }\\n  function initTexture(textureProperties, texture) {\\n    if (textureProperties.__webglInit === void 0) {\\n      textureProperties.__webglInit = true;\\n      texture.addEventListener(\\\\\\\"dispose\\\\\\\", onTextureDispose);\\n      textureProperties.__webglTexture = _gl.createTexture();\\n      info.memory.textures++;\\n    }\\n  }\\n  function uploadTexture(textureProperties, texture, slot) {\\n    let textureType = _gl.TEXTURE_2D;\\n    if (texture.isDataTexture2DArray)\\n      textureType = _gl.TEXTURE_2D_ARRAY;\\n    if (texture.isDataTexture3D)\\n      textureType = _gl.TEXTURE_3D;\\n    initTexture(textureProperties, texture);\\n    state.activeTexture(_gl.TEXTURE0 + slot);\\n    state.bindTexture(textureType, textureProperties.__webglTexture);\\n    _gl.pixelStorei(_gl.UNPACK_FLIP_Y_WEBGL, texture.flipY);\\n    _gl.pixelStorei(_gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL, texture.premultiplyAlpha);\\n    _gl.pixelStorei(_gl.UNPACK_ALIGNMENT, texture.unpackAlignment);\\n    _gl.pixelStorei(_gl.UNPACK_COLORSPACE_CONVERSION_WEBGL, _gl.NONE);\\n    const needsPowerOfTwo = textureNeedsPowerOfTwo(texture) && isPowerOfTwo2(texture.image) === false;\\n    const image = resizeImage(texture.image, needsPowerOfTwo, false, maxTextureSize);\\n    const supportsMips = isPowerOfTwo2(image) || isWebGL2, glFormat = utils.convert(texture.format);\\n    let glType = utils.convert(texture.type), glInternalFormat = getInternalFormat(texture.internalFormat, glFormat, glType, texture.encoding);\\n    setTextureParameters(textureType, texture, supportsMips);\\n    let mipmap;\\n    const mipmaps = texture.mipmaps;\\n    if (texture.isDepthTexture) {\\n      glInternalFormat = _gl.DEPTH_COMPONENT;\\n      if (isWebGL2) {\\n        if (texture.type === FloatType) {\\n          glInternalFormat = _gl.DEPTH_COMPONENT32F;\\n        } else if (texture.type === UnsignedIntType) {\\n          glInternalFormat = _gl.DEPTH_COMPONENT24;\\n        } else if (texture.type === UnsignedInt248Type) {\\n          glInternalFormat = _gl.DEPTH24_STENCIL8;\\n        } else {\\n          glInternalFormat = _gl.DEPTH_COMPONENT16;\\n        }\\n      } else {\\n        if (texture.type === FloatType) {\\n          console.error(\\\\\\\"WebGLRenderer: Floating point depth texture requires WebGL2.\\\\\\\");\\n        }\\n      }\\n      if (texture.format === DepthFormat && glInternalFormat === _gl.DEPTH_COMPONENT) {\\n        if (texture.type !== UnsignedShortType && texture.type !== UnsignedIntType) {\\n          console.warn(\\\\\\\"THREE.WebGLRenderer: Use UnsignedShortType or UnsignedIntType for DepthFormat DepthTexture.\\\\\\\");\\n          texture.type = UnsignedShortType;\\n          glType = utils.convert(texture.type);\\n        }\\n      }\\n      if (texture.format === DepthStencilFormat && glInternalFormat === _gl.DEPTH_COMPONENT) {\\n        glInternalFormat = _gl.DEPTH_STENCIL;\\n        if (texture.type !== UnsignedInt248Type) {\\n          console.warn(\\\\\\\"THREE.WebGLRenderer: Use UnsignedInt248Type for DepthStencilFormat DepthTexture.\\\\\\\");\\n          texture.type = UnsignedInt248Type;\\n          glType = utils.convert(texture.type);\\n        }\\n      }\\n      state.texImage2D(_gl.TEXTURE_2D, 0, glInternalFormat, image.width, image.height, 0, glFormat, glType, null);\\n    } else if (texture.isDataTexture) {\\n      if (mipmaps.length > 0 && supportsMips) {\\n        for (let i = 0, il = mipmaps.length; i < il; i++) {\\n          mipmap = mipmaps[i];\\n          state.texImage2D(_gl.TEXTURE_2D, i, glInternalFormat, mipmap.width, mipmap.height, 0, glFormat, glType, mipmap.data);\\n        }\\n        texture.generateMipmaps = false;\\n        textureProperties.__maxMipLevel = mipmaps.length - 1;\\n      } else {\\n        state.texImage2D(_gl.TEXTURE_2D, 0, glInternalFormat, image.width, image.height, 0, glFormat, glType, image.data);\\n        textureProperties.__maxMipLevel = 0;\\n      }\\n    } else if (texture.isCompressedTexture) {\\n      for (let i = 0, il = mipmaps.length; i < il; i++) {\\n        mipmap = mipmaps[i];\\n        if (texture.format !== RGBAFormat && texture.format !== RGBFormat) {\\n          if (glFormat !== null) {\\n            state.compressedTexImage2D(_gl.TEXTURE_2D, i, glInternalFormat, mipmap.width, mipmap.height, 0, mipmap.data);\\n          } else {\\n            console.warn(\\\\\\\"THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()\\\\\\\");\\n          }\\n        } else {\\n          state.texImage2D(_gl.TEXTURE_2D, i, glInternalFormat, mipmap.width, mipmap.height, 0, glFormat, glType, mipmap.data);\\n        }\\n      }\\n      textureProperties.__maxMipLevel = mipmaps.length - 1;\\n    } else if (texture.isDataTexture2DArray) {\\n      state.texImage3D(_gl.TEXTURE_2D_ARRAY, 0, glInternalFormat, image.width, image.height, image.depth, 0, glFormat, glType, image.data);\\n      textureProperties.__maxMipLevel = 0;\\n    } else if (texture.isDataTexture3D) {\\n      state.texImage3D(_gl.TEXTURE_3D, 0, glInternalFormat, image.width, image.height, image.depth, 0, glFormat, glType, image.data);\\n      textureProperties.__maxMipLevel = 0;\\n    } else {\\n      if (mipmaps.length > 0 && supportsMips) {\\n        for (let i = 0, il = mipmaps.length; i < il; i++) {\\n          mipmap = mipmaps[i];\\n          state.texImage2D(_gl.TEXTURE_2D, i, glInternalFormat, glFormat, glType, mipmap);\\n        }\\n        texture.generateMipmaps = false;\\n        textureProperties.__maxMipLevel = mipmaps.length - 1;\\n      } else {\\n        state.texImage2D(_gl.TEXTURE_2D, 0, glInternalFormat, glFormat, glType, image);\\n        textureProperties.__maxMipLevel = 0;\\n      }\\n    }\\n    if (textureNeedsGenerateMipmaps(texture, supportsMips)) {\\n      generateMipmap(textureType, texture, image.width, image.height);\\n    }\\n    textureProperties.__version = texture.version;\\n    if (texture.onUpdate)\\n      texture.onUpdate(texture);\\n  }\\n  function uploadCubeTexture(textureProperties, texture, slot) {\\n    if (texture.image.length !== 6)\\n      return;\\n    initTexture(textureProperties, texture);\\n    state.activeTexture(_gl.TEXTURE0 + slot);\\n    state.bindTexture(_gl.TEXTURE_CUBE_MAP, textureProperties.__webglTexture);\\n    _gl.pixelStorei(_gl.UNPACK_FLIP_Y_WEBGL, texture.flipY);\\n    _gl.pixelStorei(_gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL, texture.premultiplyAlpha);\\n    _gl.pixelStorei(_gl.UNPACK_ALIGNMENT, texture.unpackAlignment);\\n    _gl.pixelStorei(_gl.UNPACK_COLORSPACE_CONVERSION_WEBGL, _gl.NONE);\\n    const isCompressed = texture && (texture.isCompressedTexture || texture.image[0].isCompressedTexture);\\n    const isDataTexture = texture.image[0] && texture.image[0].isDataTexture;\\n    const cubeImage = [];\\n    for (let i = 0; i < 6; i++) {\\n      if (!isCompressed && !isDataTexture) {\\n        cubeImage[i] = resizeImage(texture.image[i], false, true, maxCubemapSize);\\n      } else {\\n        cubeImage[i] = isDataTexture ? texture.image[i].image : texture.image[i];\\n      }\\n    }\\n    const image = cubeImage[0], supportsMips = isPowerOfTwo2(image) || isWebGL2, glFormat = utils.convert(texture.format), glType = utils.convert(texture.type), glInternalFormat = getInternalFormat(texture.internalFormat, glFormat, glType, texture.encoding);\\n    setTextureParameters(_gl.TEXTURE_CUBE_MAP, texture, supportsMips);\\n    let mipmaps;\\n    if (isCompressed) {\\n      for (let i = 0; i < 6; i++) {\\n        mipmaps = cubeImage[i].mipmaps;\\n        for (let j = 0; j < mipmaps.length; j++) {\\n          const mipmap = mipmaps[j];\\n          if (texture.format !== RGBAFormat && texture.format !== RGBFormat) {\\n            if (glFormat !== null) {\\n              state.compressedTexImage2D(_gl.TEXTURE_CUBE_MAP_POSITIVE_X + i, j, glInternalFormat, mipmap.width, mipmap.height, 0, mipmap.data);\\n            } else {\\n              console.warn(\\\\\\\"THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .setTextureCube()\\\\\\\");\\n            }\\n          } else {\\n            state.texImage2D(_gl.TEXTURE_CUBE_MAP_POSITIVE_X + i, j, glInternalFormat, mipmap.width, mipmap.height, 0, glFormat, glType, mipmap.data);\\n          }\\n        }\\n      }\\n      textureProperties.__maxMipLevel = mipmaps.length - 1;\\n    } else {\\n      mipmaps = texture.mipmaps;\\n      for (let i = 0; i < 6; i++) {\\n        if (isDataTexture) {\\n          state.texImage2D(_gl.TEXTURE_CUBE_MAP_POSITIVE_X + i, 0, glInternalFormat, cubeImage[i].width, cubeImage[i].height, 0, glFormat, glType, cubeImage[i].data);\\n          for (let j = 0; j < mipmaps.length; j++) {\\n            const mipmap = mipmaps[j];\\n            const mipmapImage = mipmap.image[i].image;\\n            state.texImage2D(_gl.TEXTURE_CUBE_MAP_POSITIVE_X + i, j + 1, glInternalFormat, mipmapImage.width, mipmapImage.height, 0, glFormat, glType, mipmapImage.data);\\n          }\\n        } else {\\n          state.texImage2D(_gl.TEXTURE_CUBE_MAP_POSITIVE_X + i, 0, glInternalFormat, glFormat, glType, cubeImage[i]);\\n          for (let j = 0; j < mipmaps.length; j++) {\\n            const mipmap = mipmaps[j];\\n            state.texImage2D(_gl.TEXTURE_CUBE_MAP_POSITIVE_X + i, j + 1, glInternalFormat, glFormat, glType, mipmap.image[i]);\\n          }\\n        }\\n      }\\n      textureProperties.__maxMipLevel = mipmaps.length;\\n    }\\n    if (textureNeedsGenerateMipmaps(texture, supportsMips)) {\\n      generateMipmap(_gl.TEXTURE_CUBE_MAP, texture, image.width, image.height);\\n    }\\n    textureProperties.__version = texture.version;\\n    if (texture.onUpdate)\\n      texture.onUpdate(texture);\\n  }\\n  function setupFrameBufferTexture(framebuffer, renderTarget, texture, attachment, textureTarget) {\\n    const glFormat = utils.convert(texture.format);\\n    const glType = utils.convert(texture.type);\\n    const glInternalFormat = getInternalFormat(texture.internalFormat, glFormat, glType, texture.encoding);\\n    if (textureTarget === _gl.TEXTURE_3D || textureTarget === _gl.TEXTURE_2D_ARRAY) {\\n      state.texImage3D(textureTarget, 0, glInternalFormat, renderTarget.width, renderTarget.height, renderTarget.depth, 0, glFormat, glType, null);\\n    } else {\\n      state.texImage2D(textureTarget, 0, glInternalFormat, renderTarget.width, renderTarget.height, 0, glFormat, glType, null);\\n    }\\n    state.bindFramebuffer(_gl.FRAMEBUFFER, framebuffer);\\n    _gl.framebufferTexture2D(_gl.FRAMEBUFFER, attachment, textureTarget, properties.get(texture).__webglTexture, 0);\\n    state.bindFramebuffer(_gl.FRAMEBUFFER, null);\\n  }\\n  function setupRenderBufferStorage(renderbuffer, renderTarget, isMultisample) {\\n    _gl.bindRenderbuffer(_gl.RENDERBUFFER, renderbuffer);\\n    if (renderTarget.depthBuffer && !renderTarget.stencilBuffer) {\\n      let glInternalFormat = _gl.DEPTH_COMPONENT16;\\n      if (isMultisample) {\\n        const depthTexture = renderTarget.depthTexture;\\n        if (depthTexture && depthTexture.isDepthTexture) {\\n          if (depthTexture.type === FloatType) {\\n            glInternalFormat = _gl.DEPTH_COMPONENT32F;\\n          } else if (depthTexture.type === UnsignedIntType) {\\n            glInternalFormat = _gl.DEPTH_COMPONENT24;\\n          }\\n        }\\n        const samples = getRenderTargetSamples(renderTarget);\\n        _gl.renderbufferStorageMultisample(_gl.RENDERBUFFER, samples, glInternalFormat, renderTarget.width, renderTarget.height);\\n      } else {\\n        _gl.renderbufferStorage(_gl.RENDERBUFFER, glInternalFormat, renderTarget.width, renderTarget.height);\\n      }\\n      _gl.framebufferRenderbuffer(_gl.FRAMEBUFFER, _gl.DEPTH_ATTACHMENT, _gl.RENDERBUFFER, renderbuffer);\\n    } else if (renderTarget.depthBuffer && renderTarget.stencilBuffer) {\\n      if (isMultisample) {\\n        const samples = getRenderTargetSamples(renderTarget);\\n        _gl.renderbufferStorageMultisample(_gl.RENDERBUFFER, samples, _gl.DEPTH24_STENCIL8, renderTarget.width, renderTarget.height);\\n      } else {\\n        _gl.renderbufferStorage(_gl.RENDERBUFFER, _gl.DEPTH_STENCIL, renderTarget.width, renderTarget.height);\\n      }\\n      _gl.framebufferRenderbuffer(_gl.FRAMEBUFFER, _gl.DEPTH_STENCIL_ATTACHMENT, _gl.RENDERBUFFER, renderbuffer);\\n    } else {\\n      const texture = renderTarget.isWebGLMultipleRenderTargets === true ? renderTarget.texture[0] : renderTarget.texture;\\n      const glFormat = utils.convert(texture.format);\\n      const glType = utils.convert(texture.type);\\n      const glInternalFormat = getInternalFormat(texture.internalFormat, glFormat, glType, texture.encoding);\\n      if (isMultisample) {\\n        const samples = getRenderTargetSamples(renderTarget);\\n        _gl.renderbufferStorageMultisample(_gl.RENDERBUFFER, samples, glInternalFormat, renderTarget.width, renderTarget.height);\\n      } else {\\n        _gl.renderbufferStorage(_gl.RENDERBUFFER, glInternalFormat, renderTarget.width, renderTarget.height);\\n      }\\n    }\\n    _gl.bindRenderbuffer(_gl.RENDERBUFFER, null);\\n  }\\n  function setupDepthTexture(framebuffer, renderTarget) {\\n    const isCube = renderTarget && renderTarget.isWebGLCubeRenderTarget;\\n    if (isCube)\\n      throw new Error(\\\\\\\"Depth Texture with cube render targets is not supported\\\\\\\");\\n    state.bindFramebuffer(_gl.FRAMEBUFFER, framebuffer);\\n    if (!(renderTarget.depthTexture && renderTarget.depthTexture.isDepthTexture)) {\\n      throw new Error(\\\\\\\"renderTarget.depthTexture must be an instance of THREE.DepthTexture\\\\\\\");\\n    }\\n    if (!properties.get(renderTarget.depthTexture).__webglTexture || renderTarget.depthTexture.image.width !== renderTarget.width || renderTarget.depthTexture.image.height !== renderTarget.height) {\\n      renderTarget.depthTexture.image.width = renderTarget.width;\\n      renderTarget.depthTexture.image.height = renderTarget.height;\\n      renderTarget.depthTexture.needsUpdate = true;\\n    }\\n    setTexture2D(renderTarget.depthTexture, 0);\\n    const webglDepthTexture = properties.get(renderTarget.depthTexture).__webglTexture;\\n    if (renderTarget.depthTexture.format === DepthFormat) {\\n      _gl.framebufferTexture2D(_gl.FRAMEBUFFER, _gl.DEPTH_ATTACHMENT, _gl.TEXTURE_2D, webglDepthTexture, 0);\\n    } else if (renderTarget.depthTexture.format === DepthStencilFormat) {\\n      _gl.framebufferTexture2D(_gl.FRAMEBUFFER, _gl.DEPTH_STENCIL_ATTACHMENT, _gl.TEXTURE_2D, webglDepthTexture, 0);\\n    } else {\\n      throw new Error(\\\\\\\"Unknown depthTexture format\\\\\\\");\\n    }\\n  }\\n  function setupDepthRenderbuffer(renderTarget) {\\n    const renderTargetProperties = properties.get(renderTarget);\\n    const isCube = renderTarget.isWebGLCubeRenderTarget === true;\\n    if (renderTarget.depthTexture) {\\n      if (isCube)\\n        throw new Error(\\\\\\\"target.depthTexture not supported in Cube render targets\\\\\\\");\\n      setupDepthTexture(renderTargetProperties.__webglFramebuffer, renderTarget);\\n    } else {\\n      if (isCube) {\\n        renderTargetProperties.__webglDepthbuffer = [];\\n        for (let i = 0; i < 6; i++) {\\n          state.bindFramebuffer(_gl.FRAMEBUFFER, renderTargetProperties.__webglFramebuffer[i]);\\n          renderTargetProperties.__webglDepthbuffer[i] = _gl.createRenderbuffer();\\n          setupRenderBufferStorage(renderTargetProperties.__webglDepthbuffer[i], renderTarget, false);\\n        }\\n      } else {\\n        state.bindFramebuffer(_gl.FRAMEBUFFER, renderTargetProperties.__webglFramebuffer);\\n        renderTargetProperties.__webglDepthbuffer = _gl.createRenderbuffer();\\n        setupRenderBufferStorage(renderTargetProperties.__webglDepthbuffer, renderTarget, false);\\n      }\\n    }\\n    state.bindFramebuffer(_gl.FRAMEBUFFER, null);\\n  }\\n  function setupRenderTarget(renderTarget) {\\n    const texture = renderTarget.texture;\\n    const renderTargetProperties = properties.get(renderTarget);\\n    const textureProperties = properties.get(texture);\\n    renderTarget.addEventListener(\\\\\\\"dispose\\\\\\\", onRenderTargetDispose);\\n    if (renderTarget.isWebGLMultipleRenderTargets !== true) {\\n      textureProperties.__webglTexture = _gl.createTexture();\\n      textureProperties.__version = texture.version;\\n      info.memory.textures++;\\n    }\\n    const isCube = renderTarget.isWebGLCubeRenderTarget === true;\\n    const isMultipleRenderTargets = renderTarget.isWebGLMultipleRenderTargets === true;\\n    const isMultisample = renderTarget.isWebGLMultisampleRenderTarget === true;\\n    const isRenderTarget3D = texture.isDataTexture3D || texture.isDataTexture2DArray;\\n    const supportsMips = isPowerOfTwo2(renderTarget) || isWebGL2;\\n    if (isWebGL2 && texture.format === RGBFormat && (texture.type === FloatType || texture.type === HalfFloatType)) {\\n      texture.format = RGBAFormat;\\n      console.warn(\\\\\\\"THREE.WebGLRenderer: Rendering to textures with RGB format is not supported. Using RGBA format instead.\\\\\\\");\\n    }\\n    if (isCube) {\\n      renderTargetProperties.__webglFramebuffer = [];\\n      for (let i = 0; i < 6; i++) {\\n        renderTargetProperties.__webglFramebuffer[i] = _gl.createFramebuffer();\\n      }\\n    } else {\\n      renderTargetProperties.__webglFramebuffer = _gl.createFramebuffer();\\n      if (isMultipleRenderTargets) {\\n        if (capabilities.drawBuffers) {\\n          const textures = renderTarget.texture;\\n          for (let i = 0, il = textures.length; i < il; i++) {\\n            const attachmentProperties = properties.get(textures[i]);\\n            if (attachmentProperties.__webglTexture === void 0) {\\n              attachmentProperties.__webglTexture = _gl.createTexture();\\n              info.memory.textures++;\\n            }\\n          }\\n        } else {\\n          console.warn(\\\\\\\"THREE.WebGLRenderer: WebGLMultipleRenderTargets can only be used with WebGL2 or WEBGL_draw_buffers extension.\\\\\\\");\\n        }\\n      } else if (isMultisample) {\\n        if (isWebGL2) {\\n          renderTargetProperties.__webglMultisampledFramebuffer = _gl.createFramebuffer();\\n          renderTargetProperties.__webglColorRenderbuffer = _gl.createRenderbuffer();\\n          _gl.bindRenderbuffer(_gl.RENDERBUFFER, renderTargetProperties.__webglColorRenderbuffer);\\n          const glFormat = utils.convert(texture.format);\\n          const glType = utils.convert(texture.type);\\n          const glInternalFormat = getInternalFormat(texture.internalFormat, glFormat, glType, texture.encoding);\\n          const samples = getRenderTargetSamples(renderTarget);\\n          _gl.renderbufferStorageMultisample(_gl.RENDERBUFFER, samples, glInternalFormat, renderTarget.width, renderTarget.height);\\n          state.bindFramebuffer(_gl.FRAMEBUFFER, renderTargetProperties.__webglMultisampledFramebuffer);\\n          _gl.framebufferRenderbuffer(_gl.FRAMEBUFFER, _gl.COLOR_ATTACHMENT0, _gl.RENDERBUFFER, renderTargetProperties.__webglColorRenderbuffer);\\n          _gl.bindRenderbuffer(_gl.RENDERBUFFER, null);\\n          if (renderTarget.depthBuffer) {\\n            renderTargetProperties.__webglDepthRenderbuffer = _gl.createRenderbuffer();\\n            setupRenderBufferStorage(renderTargetProperties.__webglDepthRenderbuffer, renderTarget, true);\\n          }\\n          state.bindFramebuffer(_gl.FRAMEBUFFER, null);\\n        } else {\\n          console.warn(\\\\\\\"THREE.WebGLRenderer: WebGLMultisampleRenderTarget can only be used with WebGL2.\\\\\\\");\\n        }\\n      }\\n    }\\n    if (isCube) {\\n      state.bindTexture(_gl.TEXTURE_CUBE_MAP, textureProperties.__webglTexture);\\n      setTextureParameters(_gl.TEXTURE_CUBE_MAP, texture, supportsMips);\\n      for (let i = 0; i < 6; i++) {\\n        setupFrameBufferTexture(renderTargetProperties.__webglFramebuffer[i], renderTarget, texture, _gl.COLOR_ATTACHMENT0, _gl.TEXTURE_CUBE_MAP_POSITIVE_X + i);\\n      }\\n      if (textureNeedsGenerateMipmaps(texture, supportsMips)) {\\n        generateMipmap(_gl.TEXTURE_CUBE_MAP, texture, renderTarget.width, renderTarget.height);\\n      }\\n      state.unbindTexture();\\n    } else if (isMultipleRenderTargets) {\\n      const textures = renderTarget.texture;\\n      for (let i = 0, il = textures.length; i < il; i++) {\\n        const attachment = textures[i];\\n        const attachmentProperties = properties.get(attachment);\\n        state.bindTexture(_gl.TEXTURE_2D, attachmentProperties.__webglTexture);\\n        setTextureParameters(_gl.TEXTURE_2D, attachment, supportsMips);\\n        setupFrameBufferTexture(renderTargetProperties.__webglFramebuffer, renderTarget, attachment, _gl.COLOR_ATTACHMENT0 + i, _gl.TEXTURE_2D);\\n        if (textureNeedsGenerateMipmaps(attachment, supportsMips)) {\\n          generateMipmap(_gl.TEXTURE_2D, attachment, renderTarget.width, renderTarget.height);\\n        }\\n      }\\n      state.unbindTexture();\\n    } else {\\n      let glTextureType = _gl.TEXTURE_2D;\\n      if (isRenderTarget3D) {\\n        if (isWebGL2) {\\n          const isTexture3D = texture.isDataTexture3D;\\n          glTextureType = isTexture3D ? _gl.TEXTURE_3D : _gl.TEXTURE_2D_ARRAY;\\n        } else {\\n          console.warn(\\\\\\\"THREE.DataTexture3D and THREE.DataTexture2DArray only supported with WebGL2.\\\\\\\");\\n        }\\n      }\\n      state.bindTexture(glTextureType, textureProperties.__webglTexture);\\n      setTextureParameters(glTextureType, texture, supportsMips);\\n      setupFrameBufferTexture(renderTargetProperties.__webglFramebuffer, renderTarget, texture, _gl.COLOR_ATTACHMENT0, glTextureType);\\n      if (textureNeedsGenerateMipmaps(texture, supportsMips)) {\\n        generateMipmap(glTextureType, texture, renderTarget.width, renderTarget.height, renderTarget.depth);\\n      }\\n      state.unbindTexture();\\n    }\\n    if (renderTarget.depthBuffer) {\\n      setupDepthRenderbuffer(renderTarget);\\n    }\\n  }\\n  function updateRenderTargetMipmap(renderTarget) {\\n    const supportsMips = isPowerOfTwo2(renderTarget) || isWebGL2;\\n    const textures = renderTarget.isWebGLMultipleRenderTargets === true ? renderTarget.texture : [renderTarget.texture];\\n    for (let i = 0, il = textures.length; i < il; i++) {\\n      const texture = textures[i];\\n      if (textureNeedsGenerateMipmaps(texture, supportsMips)) {\\n        const target = renderTarget.isWebGLCubeRenderTarget ? _gl.TEXTURE_CUBE_MAP : _gl.TEXTURE_2D;\\n        const webglTexture = properties.get(texture).__webglTexture;\\n        state.bindTexture(target, webglTexture);\\n        generateMipmap(target, texture, renderTarget.width, renderTarget.height);\\n        state.unbindTexture();\\n      }\\n    }\\n  }\\n  function updateMultisampleRenderTarget(renderTarget) {\\n    if (renderTarget.isWebGLMultisampleRenderTarget) {\\n      if (isWebGL2) {\\n        const width = renderTarget.width;\\n        const height = renderTarget.height;\\n        let mask = _gl.COLOR_BUFFER_BIT;\\n        if (renderTarget.depthBuffer)\\n          mask |= _gl.DEPTH_BUFFER_BIT;\\n        if (renderTarget.stencilBuffer)\\n          mask |= _gl.STENCIL_BUFFER_BIT;\\n        const renderTargetProperties = properties.get(renderTarget);\\n        state.bindFramebuffer(_gl.READ_FRAMEBUFFER, renderTargetProperties.__webglMultisampledFramebuffer);\\n        state.bindFramebuffer(_gl.DRAW_FRAMEBUFFER, renderTargetProperties.__webglFramebuffer);\\n        _gl.blitFramebuffer(0, 0, width, height, 0, 0, width, height, mask, _gl.NEAREST);\\n        state.bindFramebuffer(_gl.READ_FRAMEBUFFER, null);\\n        state.bindFramebuffer(_gl.DRAW_FRAMEBUFFER, renderTargetProperties.__webglMultisampledFramebuffer);\\n      } else {\\n        console.warn(\\\\\\\"THREE.WebGLRenderer: WebGLMultisampleRenderTarget can only be used with WebGL2.\\\\\\\");\\n      }\\n    }\\n  }\\n  function getRenderTargetSamples(renderTarget) {\\n    return isWebGL2 && renderTarget.isWebGLMultisampleRenderTarget ? Math.min(maxSamples, renderTarget.samples) : 0;\\n  }\\n  function updateVideoTexture(texture) {\\n    const frame = info.render.frame;\\n    if (_videoTextures.get(texture) !== frame) {\\n      _videoTextures.set(texture, frame);\\n      texture.update();\\n    }\\n  }\\n  let warnedTexture2D = false;\\n  let warnedTextureCube = false;\\n  function safeSetTexture2D(texture, slot) {\\n    if (texture && texture.isWebGLRenderTarget) {\\n      if (warnedTexture2D === false) {\\n        console.warn(\\\\\\\"THREE.WebGLTextures.safeSetTexture2D: don't use render targets as textures. Use their .texture property instead.\\\\\\\");\\n        warnedTexture2D = true;\\n      }\\n      texture = texture.texture;\\n    }\\n    setTexture2D(texture, slot);\\n  }\\n  function safeSetTextureCube(texture, slot) {\\n    if (texture && texture.isWebGLCubeRenderTarget) {\\n      if (warnedTextureCube === false) {\\n        console.warn(\\\\\\\"THREE.WebGLTextures.safeSetTextureCube: don't use cube render targets as textures. Use their .texture property instead.\\\\\\\");\\n        warnedTextureCube = true;\\n      }\\n      texture = texture.texture;\\n    }\\n    setTextureCube(texture, slot);\\n  }\\n  this.allocateTextureUnit = allocateTextureUnit;\\n  this.resetTextureUnits = resetTextureUnits;\\n  this.setTexture2D = setTexture2D;\\n  this.setTexture2DArray = setTexture2DArray;\\n  this.setTexture3D = setTexture3D;\\n  this.setTextureCube = setTextureCube;\\n  this.setupRenderTarget = setupRenderTarget;\\n  this.updateRenderTargetMipmap = updateRenderTargetMipmap;\\n  this.updateMultisampleRenderTarget = updateMultisampleRenderTarget;\\n  this.safeSetTexture2D = safeSetTexture2D;\\n  this.safeSetTextureCube = safeSetTextureCube;\\n}\\n\\n// ../../../node_modules/three/src/renderers/webgl/WebGLUtils.js\\nfunction WebGLUtils(gl, extensions, capabilities) {\\n  const isWebGL2 = capabilities.isWebGL2;\\n  function convert(p) {\\n    let extension;\\n    if (p === UnsignedByteType)\\n      return gl.UNSIGNED_BYTE;\\n    if (p === UnsignedShort4444Type)\\n      return gl.UNSIGNED_SHORT_4_4_4_4;\\n    if (p === UnsignedShort5551Type)\\n      return gl.UNSIGNED_SHORT_5_5_5_1;\\n    if (p === UnsignedShort565Type)\\n      return gl.UNSIGNED_SHORT_5_6_5;\\n    if (p === ByteType)\\n      return gl.BYTE;\\n    if (p === ShortType)\\n      return gl.SHORT;\\n    if (p === UnsignedShortType)\\n      return gl.UNSIGNED_SHORT;\\n    if (p === IntType)\\n      return gl.INT;\\n    if (p === UnsignedIntType)\\n      return gl.UNSIGNED_INT;\\n    if (p === FloatType)\\n      return gl.FLOAT;\\n    if (p === HalfFloatType) {\\n      if (isWebGL2)\\n        return gl.HALF_FLOAT;\\n      extension = extensions.get(\\\\\\\"OES_texture_half_float\\\\\\\");\\n      if (extension !== null) {\\n        return extension.HALF_FLOAT_OES;\\n      } else {\\n        return null;\\n      }\\n    }\\n    if (p === AlphaFormat)\\n      return gl.ALPHA;\\n    if (p === RGBFormat)\\n      return gl.RGB;\\n    if (p === RGBAFormat)\\n      return gl.RGBA;\\n    if (p === LuminanceFormat)\\n      return gl.LUMINANCE;\\n    if (p === LuminanceAlphaFormat)\\n      return gl.LUMINANCE_ALPHA;\\n    if (p === DepthFormat)\\n      return gl.DEPTH_COMPONENT;\\n    if (p === DepthStencilFormat)\\n      return gl.DEPTH_STENCIL;\\n    if (p === RedFormat)\\n      return gl.RED;\\n    if (p === RedIntegerFormat)\\n      return gl.RED_INTEGER;\\n    if (p === RGFormat)\\n      return gl.RG;\\n    if (p === RGIntegerFormat)\\n      return gl.RG_INTEGER;\\n    if (p === RGBIntegerFormat)\\n      return gl.RGB_INTEGER;\\n    if (p === RGBAIntegerFormat)\\n      return gl.RGBA_INTEGER;\\n    if (p === RGB_S3TC_DXT1_Format || p === RGBA_S3TC_DXT1_Format || p === RGBA_S3TC_DXT3_Format || p === RGBA_S3TC_DXT5_Format) {\\n      extension = extensions.get(\\\\\\\"WEBGL_compressed_texture_s3tc\\\\\\\");\\n      if (extension !== null) {\\n        if (p === RGB_S3TC_DXT1_Format)\\n          return extension.COMPRESSED_RGB_S3TC_DXT1_EXT;\\n        if (p === RGBA_S3TC_DXT1_Format)\\n          return extension.COMPRESSED_RGBA_S3TC_DXT1_EXT;\\n        if (p === RGBA_S3TC_DXT3_Format)\\n          return extension.COMPRESSED_RGBA_S3TC_DXT3_EXT;\\n        if (p === RGBA_S3TC_DXT5_Format)\\n          return extension.COMPRESSED_RGBA_S3TC_DXT5_EXT;\\n      } else {\\n        return null;\\n      }\\n    }\\n    if (p === RGB_PVRTC_4BPPV1_Format || p === RGB_PVRTC_2BPPV1_Format || p === RGBA_PVRTC_4BPPV1_Format || p === RGBA_PVRTC_2BPPV1_Format) {\\n      extension = extensions.get(\\\\\\\"WEBGL_compressed_texture_pvrtc\\\\\\\");\\n      if (extension !== null) {\\n        if (p === RGB_PVRTC_4BPPV1_Format)\\n          return extension.COMPRESSED_RGB_PVRTC_4BPPV1_IMG;\\n        if (p === RGB_PVRTC_2BPPV1_Format)\\n          return extension.COMPRESSED_RGB_PVRTC_2BPPV1_IMG;\\n        if (p === RGBA_PVRTC_4BPPV1_Format)\\n          return extension.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;\\n        if (p === RGBA_PVRTC_2BPPV1_Format)\\n          return extension.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG;\\n      } else {\\n        return null;\\n      }\\n    }\\n    if (p === RGB_ETC1_Format) {\\n      extension = extensions.get(\\\\\\\"WEBGL_compressed_texture_etc1\\\\\\\");\\n      if (extension !== null) {\\n        return extension.COMPRESSED_RGB_ETC1_WEBGL;\\n      } else {\\n        return null;\\n      }\\n    }\\n    if (p === RGB_ETC2_Format || p === RGBA_ETC2_EAC_Format) {\\n      extension = extensions.get(\\\\\\\"WEBGL_compressed_texture_etc\\\\\\\");\\n      if (extension !== null) {\\n        if (p === RGB_ETC2_Format)\\n          return extension.COMPRESSED_RGB8_ETC2;\\n        if (p === RGBA_ETC2_EAC_Format)\\n          return extension.COMPRESSED_RGBA8_ETC2_EAC;\\n      }\\n    }\\n    if (p === RGBA_ASTC_4x4_Format || p === RGBA_ASTC_5x4_Format || p === RGBA_ASTC_5x5_Format || p === RGBA_ASTC_6x5_Format || p === RGBA_ASTC_6x6_Format || p === RGBA_ASTC_8x5_Format || p === RGBA_ASTC_8x6_Format || p === RGBA_ASTC_8x8_Format || p === RGBA_ASTC_10x5_Format || p === RGBA_ASTC_10x6_Format || p === RGBA_ASTC_10x8_Format || p === RGBA_ASTC_10x10_Format || p === RGBA_ASTC_12x10_Format || p === RGBA_ASTC_12x12_Format || p === SRGB8_ALPHA8_ASTC_4x4_Format || p === SRGB8_ALPHA8_ASTC_5x4_Format || p === SRGB8_ALPHA8_ASTC_5x5_Format || p === SRGB8_ALPHA8_ASTC_6x5_Format || p === SRGB8_ALPHA8_ASTC_6x6_Format || p === SRGB8_ALPHA8_ASTC_8x5_Format || p === SRGB8_ALPHA8_ASTC_8x6_Format || p === SRGB8_ALPHA8_ASTC_8x8_Format || p === SRGB8_ALPHA8_ASTC_10x5_Format || p === SRGB8_ALPHA8_ASTC_10x6_Format || p === SRGB8_ALPHA8_ASTC_10x8_Format || p === SRGB8_ALPHA8_ASTC_10x10_Format || p === SRGB8_ALPHA8_ASTC_12x10_Format || p === SRGB8_ALPHA8_ASTC_12x12_Format) {\\n      extension = extensions.get(\\\\\\\"WEBGL_compressed_texture_astc\\\\\\\");\\n      if (extension !== null) {\\n        return p;\\n      } else {\\n        return null;\\n      }\\n    }\\n    if (p === RGBA_BPTC_Format) {\\n      extension = extensions.get(\\\\\\\"EXT_texture_compression_bptc\\\\\\\");\\n      if (extension !== null) {\\n        return p;\\n      } else {\\n        return null;\\n      }\\n    }\\n    if (p === UnsignedInt248Type) {\\n      if (isWebGL2)\\n        return gl.UNSIGNED_INT_24_8;\\n      extension = extensions.get(\\\\\\\"WEBGL_depth_texture\\\\\\\");\\n      if (extension !== null) {\\n        return extension.UNSIGNED_INT_24_8_WEBGL;\\n      } else {\\n        return null;\\n      }\\n    }\\n  }\\n  return {convert};\\n}\\n\\n// ../../../node_modules/three/src/cameras/ArrayCamera.js\\nvar ArrayCamera = class extends PerspectiveCamera {\\n  constructor(array = []) {\\n    super();\\n    this.cameras = array;\\n  }\\n};\\nArrayCamera.prototype.isArrayCamera = true;\\n\\n// ../../../node_modules/three/src/objects/Group.js\\nvar Group = class extends Object3D {\\n  constructor() {\\n    super();\\n    this.type = \\\\\\\"Group\\\\\\\";\\n  }\\n};\\nGroup.prototype.isGroup = true;\\n\\n// ../../../node_modules/three/src/renderers/webxr/WebXRController.js\\nvar _moveEvent = {type: \\\\\\\"move\\\\\\\"};\\nvar WebXRController = class {\\n  constructor() {\\n    this._targetRay = null;\\n    this._grip = null;\\n    this._hand = null;\\n  }\\n  getHandSpace() {\\n    if (this._hand === null) {\\n      this._hand = new Group();\\n      this._hand.matrixAutoUpdate = false;\\n      this._hand.visible = false;\\n      this._hand.joints = {};\\n      this._hand.inputState = {pinching: false};\\n    }\\n    return this._hand;\\n  }\\n  getTargetRaySpace() {\\n    if (this._targetRay === null) {\\n      this._targetRay = new Group();\\n      this._targetRay.matrixAutoUpdate = false;\\n      this._targetRay.visible = false;\\n      this._targetRay.hasLinearVelocity = false;\\n      this._targetRay.linearVelocity = new Vector3();\\n      this._targetRay.hasAngularVelocity = false;\\n      this._targetRay.angularVelocity = new Vector3();\\n    }\\n    return this._targetRay;\\n  }\\n  getGripSpace() {\\n    if (this._grip === null) {\\n      this._grip = new Group();\\n      this._grip.matrixAutoUpdate = false;\\n      this._grip.visible = false;\\n      this._grip.hasLinearVelocity = false;\\n      this._grip.linearVelocity = new Vector3();\\n      this._grip.hasAngularVelocity = false;\\n      this._grip.angularVelocity = new Vector3();\\n    }\\n    return this._grip;\\n  }\\n  dispatchEvent(event) {\\n    if (this._targetRay !== null) {\\n      this._targetRay.dispatchEvent(event);\\n    }\\n    if (this._grip !== null) {\\n      this._grip.dispatchEvent(event);\\n    }\\n    if (this._hand !== null) {\\n      this._hand.dispatchEvent(event);\\n    }\\n    return this;\\n  }\\n  disconnect(inputSource) {\\n    this.dispatchEvent({type: \\\\\\\"disconnected\\\\\\\", data: inputSource});\\n    if (this._targetRay !== null) {\\n      this._targetRay.visible = false;\\n    }\\n    if (this._grip !== null) {\\n      this._grip.visible = false;\\n    }\\n    if (this._hand !== null) {\\n      this._hand.visible = false;\\n    }\\n    return this;\\n  }\\n  update(inputSource, frame, referenceSpace) {\\n    let inputPose = null;\\n    let gripPose = null;\\n    let handPose = null;\\n    const targetRay = this._targetRay;\\n    const grip = this._grip;\\n    const hand = this._hand;\\n    if (inputSource && frame.session.visibilityState !== \\\\\\\"visible-blurred\\\\\\\") {\\n      if (targetRay !== null) {\\n        inputPose = frame.getPose(inputSource.targetRaySpace, referenceSpace);\\n        if (inputPose !== null) {\\n          targetRay.matrix.fromArray(inputPose.transform.matrix);\\n          targetRay.matrix.decompose(targetRay.position, targetRay.rotation, targetRay.scale);\\n          if (inputPose.linearVelocity) {\\n            targetRay.hasLinearVelocity = true;\\n            targetRay.linearVelocity.copy(inputPose.linearVelocity);\\n          } else {\\n            targetRay.hasLinearVelocity = false;\\n          }\\n          if (inputPose.angularVelocity) {\\n            targetRay.hasAngularVelocity = true;\\n            targetRay.angularVelocity.copy(inputPose.angularVelocity);\\n          } else {\\n            targetRay.hasAngularVelocity = false;\\n          }\\n          this.dispatchEvent(_moveEvent);\\n        }\\n      }\\n      if (hand && inputSource.hand) {\\n        handPose = true;\\n        for (const inputjoint of inputSource.hand.values()) {\\n          const jointPose = frame.getJointPose(inputjoint, referenceSpace);\\n          if (hand.joints[inputjoint.jointName] === void 0) {\\n            const joint2 = new Group();\\n            joint2.matrixAutoUpdate = false;\\n            joint2.visible = false;\\n            hand.joints[inputjoint.jointName] = joint2;\\n            hand.add(joint2);\\n          }\\n          const joint = hand.joints[inputjoint.jointName];\\n          if (jointPose !== null) {\\n            joint.matrix.fromArray(jointPose.transform.matrix);\\n            joint.matrix.decompose(joint.position, joint.rotation, joint.scale);\\n            joint.jointRadius = jointPose.radius;\\n          }\\n          joint.visible = jointPose !== null;\\n        }\\n        const indexTip = hand.joints[\\\\\\\"index-finger-tip\\\\\\\"];\\n        const thumbTip = hand.joints[\\\\\\\"thumb-tip\\\\\\\"];\\n        const distance = indexTip.position.distanceTo(thumbTip.position);\\n        const distanceToPinch = 0.02;\\n        const threshold = 5e-3;\\n        if (hand.inputState.pinching && distance > distanceToPinch + threshold) {\\n          hand.inputState.pinching = false;\\n          this.dispatchEvent({\\n            type: \\\\\\\"pinchend\\\\\\\",\\n            handedness: inputSource.handedness,\\n            target: this\\n          });\\n        } else if (!hand.inputState.pinching && distance <= distanceToPinch - threshold) {\\n          hand.inputState.pinching = true;\\n          this.dispatchEvent({\\n            type: \\\\\\\"pinchstart\\\\\\\",\\n            handedness: inputSource.handedness,\\n            target: this\\n          });\\n        }\\n      } else {\\n        if (grip !== null && inputSource.gripSpace) {\\n          gripPose = frame.getPose(inputSource.gripSpace, referenceSpace);\\n          if (gripPose !== null) {\\n            grip.matrix.fromArray(gripPose.transform.matrix);\\n            grip.matrix.decompose(grip.position, grip.rotation, grip.scale);\\n            if (gripPose.linearVelocity) {\\n              grip.hasLinearVelocity = true;\\n              grip.linearVelocity.copy(gripPose.linearVelocity);\\n            } else {\\n              grip.hasLinearVelocity = false;\\n            }\\n            if (gripPose.angularVelocity) {\\n              grip.hasAngularVelocity = true;\\n              grip.angularVelocity.copy(gripPose.angularVelocity);\\n            } else {\\n              grip.hasAngularVelocity = false;\\n            }\\n          }\\n        }\\n      }\\n    }\\n    if (targetRay !== null) {\\n      targetRay.visible = inputPose !== null;\\n    }\\n    if (grip !== null) {\\n      grip.visible = gripPose !== null;\\n    }\\n    if (hand !== null) {\\n      hand.visible = handPose !== null;\\n    }\\n    return this;\\n  }\\n};\\n\\n// ../../../node_modules/three/src/renderers/webxr/WebXRManager.js\\nvar WebXRManager = class extends EventDispatcher {\\n  constructor(renderer, gl) {\\n    super();\\n    const scope = this;\\n    const state = renderer.state;\\n    let session = null;\\n    let framebufferScaleFactor = 1;\\n    let referenceSpace = null;\\n    let referenceSpaceType = \\\\\\\"local-floor\\\\\\\";\\n    let pose = null;\\n    let glBinding = null;\\n    let glFramebuffer = null;\\n    let glProjLayer = null;\\n    let glBaseLayer = null;\\n    let isMultisample = false;\\n    let glMultisampledFramebuffer = null;\\n    let glColorRenderbuffer = null;\\n    let glDepthRenderbuffer = null;\\n    let xrFrame = null;\\n    let depthStyle = null;\\n    let clearStyle = null;\\n    const controllers = [];\\n    const inputSourcesMap = new Map();\\n    const cameraL = new PerspectiveCamera();\\n    cameraL.layers.enable(1);\\n    cameraL.viewport = new Vector4();\\n    const cameraR = new PerspectiveCamera();\\n    cameraR.layers.enable(2);\\n    cameraR.viewport = new Vector4();\\n    const cameras = [cameraL, cameraR];\\n    const cameraVR = new ArrayCamera();\\n    cameraVR.layers.enable(1);\\n    cameraVR.layers.enable(2);\\n    let _currentDepthNear = null;\\n    let _currentDepthFar = null;\\n    this.cameraAutoUpdate = true;\\n    this.enabled = false;\\n    this.isPresenting = false;\\n    this.getController = function(index) {\\n      let controller = controllers[index];\\n      if (controller === void 0) {\\n        controller = new WebXRController();\\n        controllers[index] = controller;\\n      }\\n      return controller.getTargetRaySpace();\\n    };\\n    this.getControllerGrip = function(index) {\\n      let controller = controllers[index];\\n      if (controller === void 0) {\\n        controller = new WebXRController();\\n        controllers[index] = controller;\\n      }\\n      return controller.getGripSpace();\\n    };\\n    this.getHand = function(index) {\\n      let controller = controllers[index];\\n      if (controller === void 0) {\\n        controller = new WebXRController();\\n        controllers[index] = controller;\\n      }\\n      return controller.getHandSpace();\\n    };\\n    function onSessionEvent(event) {\\n      const controller = inputSourcesMap.get(event.inputSource);\\n      if (controller) {\\n        controller.dispatchEvent({type: event.type, data: event.inputSource});\\n      }\\n    }\\n    function onSessionEnd() {\\n      inputSourcesMap.forEach(function(controller, inputSource) {\\n        controller.disconnect(inputSource);\\n      });\\n      inputSourcesMap.clear();\\n      _currentDepthNear = null;\\n      _currentDepthFar = null;\\n      state.bindXRFramebuffer(null);\\n      renderer.setRenderTarget(renderer.getRenderTarget());\\n      if (glFramebuffer)\\n        gl.deleteFramebuffer(glFramebuffer);\\n      if (glMultisampledFramebuffer)\\n        gl.deleteFramebuffer(glMultisampledFramebuffer);\\n      if (glColorRenderbuffer)\\n        gl.deleteRenderbuffer(glColorRenderbuffer);\\n      if (glDepthRenderbuffer)\\n        gl.deleteRenderbuffer(glDepthRenderbuffer);\\n      glFramebuffer = null;\\n      glMultisampledFramebuffer = null;\\n      glColorRenderbuffer = null;\\n      glDepthRenderbuffer = null;\\n      glBaseLayer = null;\\n      glProjLayer = null;\\n      glBinding = null;\\n      session = null;\\n      animation.stop();\\n      scope.isPresenting = false;\\n      scope.dispatchEvent({type: \\\\\\\"sessionend\\\\\\\"});\\n    }\\n    this.setFramebufferScaleFactor = function(value) {\\n      framebufferScaleFactor = value;\\n      if (scope.isPresenting === true) {\\n        console.warn(\\\\\\\"THREE.WebXRManager: Cannot change framebuffer scale while presenting.\\\\\\\");\\n      }\\n    };\\n    this.setReferenceSpaceType = function(value) {\\n      referenceSpaceType = value;\\n      if (scope.isPresenting === true) {\\n        console.warn(\\\\\\\"THREE.WebXRManager: Cannot change reference space type while presenting.\\\\\\\");\\n      }\\n    };\\n    this.getReferenceSpace = function() {\\n      return referenceSpace;\\n    };\\n    this.getBaseLayer = function() {\\n      return glProjLayer !== null ? glProjLayer : glBaseLayer;\\n    };\\n    this.getBinding = function() {\\n      return glBinding;\\n    };\\n    this.getFrame = function() {\\n      return xrFrame;\\n    };\\n    this.getSession = function() {\\n      return session;\\n    };\\n    this.setSession = async function(value) {\\n      session = value;\\n      if (session !== null) {\\n        session.addEventListener(\\\\\\\"select\\\\\\\", onSessionEvent);\\n        session.addEventListener(\\\\\\\"selectstart\\\\\\\", onSessionEvent);\\n        session.addEventListener(\\\\\\\"selectend\\\\\\\", onSessionEvent);\\n        session.addEventListener(\\\\\\\"squeeze\\\\\\\", onSessionEvent);\\n        session.addEventListener(\\\\\\\"squeezestart\\\\\\\", onSessionEvent);\\n        session.addEventListener(\\\\\\\"squeezeend\\\\\\\", onSessionEvent);\\n        session.addEventListener(\\\\\\\"end\\\\\\\", onSessionEnd);\\n        session.addEventListener(\\\\\\\"inputsourceschange\\\\\\\", onInputSourcesChange);\\n        const attributes = gl.getContextAttributes();\\n        if (attributes.xrCompatible !== true) {\\n          await gl.makeXRCompatible();\\n        }\\n        if (session.renderState.layers === void 0) {\\n          const layerInit = {\\n            antialias: attributes.antialias,\\n            alpha: attributes.alpha,\\n            depth: attributes.depth,\\n            stencil: attributes.stencil,\\n            framebufferScaleFactor\\n          };\\n          glBaseLayer = new XRWebGLLayer(session, gl, layerInit);\\n          session.updateRenderState({baseLayer: glBaseLayer});\\n        } else if (gl instanceof WebGLRenderingContext) {\\n          const layerInit = {\\n            antialias: true,\\n            alpha: attributes.alpha,\\n            depth: attributes.depth,\\n            stencil: attributes.stencil,\\n            framebufferScaleFactor\\n          };\\n          glBaseLayer = new XRWebGLLayer(session, gl, layerInit);\\n          session.updateRenderState({layers: [glBaseLayer]});\\n        } else {\\n          isMultisample = attributes.antialias;\\n          let depthFormat = null;\\n          if (attributes.depth) {\\n            clearStyle = gl.DEPTH_BUFFER_BIT;\\n            if (attributes.stencil)\\n              clearStyle |= gl.STENCIL_BUFFER_BIT;\\n            depthStyle = attributes.stencil ? gl.DEPTH_STENCIL_ATTACHMENT : gl.DEPTH_ATTACHMENT;\\n            depthFormat = attributes.stencil ? gl.DEPTH24_STENCIL8 : gl.DEPTH_COMPONENT24;\\n          }\\n          const projectionlayerInit = {\\n            colorFormat: attributes.alpha ? gl.RGBA8 : gl.RGB8,\\n            depthFormat,\\n            scaleFactor: framebufferScaleFactor\\n          };\\n          glBinding = new XRWebGLBinding(session, gl);\\n          glProjLayer = glBinding.createProjectionLayer(projectionlayerInit);\\n          glFramebuffer = gl.createFramebuffer();\\n          session.updateRenderState({layers: [glProjLayer]});\\n          if (isMultisample) {\\n            glMultisampledFramebuffer = gl.createFramebuffer();\\n            glColorRenderbuffer = gl.createRenderbuffer();\\n            gl.bindRenderbuffer(gl.RENDERBUFFER, glColorRenderbuffer);\\n            gl.renderbufferStorageMultisample(gl.RENDERBUFFER, 4, gl.RGBA8, glProjLayer.textureWidth, glProjLayer.textureHeight);\\n            state.bindFramebuffer(gl.FRAMEBUFFER, glMultisampledFramebuffer);\\n            gl.framebufferRenderbuffer(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.RENDERBUFFER, glColorRenderbuffer);\\n            gl.bindRenderbuffer(gl.RENDERBUFFER, null);\\n            if (depthFormat !== null) {\\n              glDepthRenderbuffer = gl.createRenderbuffer();\\n              gl.bindRenderbuffer(gl.RENDERBUFFER, glDepthRenderbuffer);\\n              gl.renderbufferStorageMultisample(gl.RENDERBUFFER, 4, depthFormat, glProjLayer.textureWidth, glProjLayer.textureHeight);\\n              gl.framebufferRenderbuffer(gl.FRAMEBUFFER, depthStyle, gl.RENDERBUFFER, glDepthRenderbuffer);\\n              gl.bindRenderbuffer(gl.RENDERBUFFER, null);\\n            }\\n            state.bindFramebuffer(gl.FRAMEBUFFER, null);\\n          }\\n        }\\n        referenceSpace = await session.requestReferenceSpace(referenceSpaceType);\\n        animation.setContext(session);\\n        animation.start();\\n        scope.isPresenting = true;\\n        scope.dispatchEvent({type: \\\\\\\"sessionstart\\\\\\\"});\\n      }\\n    };\\n    function onInputSourcesChange(event) {\\n      const inputSources = session.inputSources;\\n      for (let i = 0; i < controllers.length; i++) {\\n        inputSourcesMap.set(inputSources[i], controllers[i]);\\n      }\\n      for (let i = 0; i < event.removed.length; i++) {\\n        const inputSource = event.removed[i];\\n        const controller = inputSourcesMap.get(inputSource);\\n        if (controller) {\\n          controller.dispatchEvent({type: \\\\\\\"disconnected\\\\\\\", data: inputSource});\\n          inputSourcesMap.delete(inputSource);\\n        }\\n      }\\n      for (let i = 0; i < event.added.length; i++) {\\n        const inputSource = event.added[i];\\n        const controller = inputSourcesMap.get(inputSource);\\n        if (controller) {\\n          controller.dispatchEvent({type: \\\\\\\"connected\\\\\\\", data: inputSource});\\n        }\\n      }\\n    }\\n    const cameraLPos = new Vector3();\\n    const cameraRPos = new Vector3();\\n    function setProjectionFromUnion(camera, cameraL2, cameraR2) {\\n      cameraLPos.setFromMatrixPosition(cameraL2.matrixWorld);\\n      cameraRPos.setFromMatrixPosition(cameraR2.matrixWorld);\\n      const ipd = cameraLPos.distanceTo(cameraRPos);\\n      const projL = cameraL2.projectionMatrix.elements;\\n      const projR = cameraR2.projectionMatrix.elements;\\n      const near = projL[14] / (projL[10] - 1);\\n      const far = projL[14] / (projL[10] + 1);\\n      const topFov = (projL[9] + 1) / projL[5];\\n      const bottomFov = (projL[9] - 1) / projL[5];\\n      const leftFov = (projL[8] - 1) / projL[0];\\n      const rightFov = (projR[8] + 1) / projR[0];\\n      const left = near * leftFov;\\n      const right = near * rightFov;\\n      const zOffset = ipd / (-leftFov + rightFov);\\n      const xOffset = zOffset * -leftFov;\\n      cameraL2.matrixWorld.decompose(camera.position, camera.quaternion, camera.scale);\\n      camera.translateX(xOffset);\\n      camera.translateZ(zOffset);\\n      camera.matrixWorld.compose(camera.position, camera.quaternion, camera.scale);\\n      camera.matrixWorldInverse.copy(camera.matrixWorld).invert();\\n      const near2 = near + zOffset;\\n      const far2 = far + zOffset;\\n      const left2 = left - xOffset;\\n      const right2 = right + (ipd - xOffset);\\n      const top2 = topFov * far / far2 * near2;\\n      const bottom2 = bottomFov * far / far2 * near2;\\n      camera.projectionMatrix.makePerspective(left2, right2, top2, bottom2, near2, far2);\\n    }\\n    function updateCamera(camera, parent) {\\n      if (parent === null) {\\n        camera.matrixWorld.copy(camera.matrix);\\n      } else {\\n        camera.matrixWorld.multiplyMatrices(parent.matrixWorld, camera.matrix);\\n      }\\n      camera.matrixWorldInverse.copy(camera.matrixWorld).invert();\\n    }\\n    this.updateCamera = function(camera) {\\n      if (session === null)\\n        return;\\n      cameraVR.near = cameraR.near = cameraL.near = camera.near;\\n      cameraVR.far = cameraR.far = cameraL.far = camera.far;\\n      if (_currentDepthNear !== cameraVR.near || _currentDepthFar !== cameraVR.far) {\\n        session.updateRenderState({\\n          depthNear: cameraVR.near,\\n          depthFar: cameraVR.far\\n        });\\n        _currentDepthNear = cameraVR.near;\\n        _currentDepthFar = cameraVR.far;\\n      }\\n      const parent = camera.parent;\\n      const cameras2 = cameraVR.cameras;\\n      updateCamera(cameraVR, parent);\\n      for (let i = 0; i < cameras2.length; i++) {\\n        updateCamera(cameras2[i], parent);\\n      }\\n      cameraVR.matrixWorld.decompose(cameraVR.position, cameraVR.quaternion, cameraVR.scale);\\n      camera.position.copy(cameraVR.position);\\n      camera.quaternion.copy(cameraVR.quaternion);\\n      camera.scale.copy(cameraVR.scale);\\n      camera.matrix.copy(cameraVR.matrix);\\n      camera.matrixWorld.copy(cameraVR.matrixWorld);\\n      const children = camera.children;\\n      for (let i = 0, l = children.length; i < l; i++) {\\n        children[i].updateMatrixWorld(true);\\n      }\\n      if (cameras2.length === 2) {\\n        setProjectionFromUnion(cameraVR, cameraL, cameraR);\\n      } else {\\n        cameraVR.projectionMatrix.copy(cameraL.projectionMatrix);\\n      }\\n    };\\n    this.getCamera = function() {\\n      return cameraVR;\\n    };\\n    this.getFoveation = function() {\\n      if (glProjLayer !== null) {\\n        return glProjLayer.fixedFoveation;\\n      }\\n      if (glBaseLayer !== null) {\\n        return glBaseLayer.fixedFoveation;\\n      }\\n      return void 0;\\n    };\\n    this.setFoveation = function(foveation) {\\n      if (glProjLayer !== null) {\\n        glProjLayer.fixedFoveation = foveation;\\n      }\\n      if (glBaseLayer !== null && glBaseLayer.fixedFoveation !== void 0) {\\n        glBaseLayer.fixedFoveation = foveation;\\n      }\\n    };\\n    let onAnimationFrameCallback = null;\\n    function onAnimationFrame(time, frame) {\\n      pose = frame.getViewerPose(referenceSpace);\\n      xrFrame = frame;\\n      if (pose !== null) {\\n        const views = pose.views;\\n        if (glBaseLayer !== null) {\\n          state.bindXRFramebuffer(glBaseLayer.framebuffer);\\n        }\\n        let cameraVRNeedsUpdate = false;\\n        if (views.length !== cameraVR.cameras.length) {\\n          cameraVR.cameras.length = 0;\\n          cameraVRNeedsUpdate = true;\\n        }\\n        for (let i = 0; i < views.length; i++) {\\n          const view = views[i];\\n          let viewport = null;\\n          if (glBaseLayer !== null) {\\n            viewport = glBaseLayer.getViewport(view);\\n          } else {\\n            const glSubImage = glBinding.getViewSubImage(glProjLayer, view);\\n            state.bindXRFramebuffer(glFramebuffer);\\n            if (glSubImage.depthStencilTexture !== void 0) {\\n              gl.framebufferTexture2D(gl.FRAMEBUFFER, depthStyle, gl.TEXTURE_2D, glSubImage.depthStencilTexture, 0);\\n            }\\n            gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.TEXTURE_2D, glSubImage.colorTexture, 0);\\n            viewport = glSubImage.viewport;\\n          }\\n          const camera = cameras[i];\\n          camera.matrix.fromArray(view.transform.matrix);\\n          camera.projectionMatrix.fromArray(view.projectionMatrix);\\n          camera.viewport.set(viewport.x, viewport.y, viewport.width, viewport.height);\\n          if (i === 0) {\\n            cameraVR.matrix.copy(camera.matrix);\\n          }\\n          if (cameraVRNeedsUpdate === true) {\\n            cameraVR.cameras.push(camera);\\n          }\\n        }\\n        if (isMultisample) {\\n          state.bindXRFramebuffer(glMultisampledFramebuffer);\\n          if (clearStyle !== null)\\n            gl.clear(clearStyle);\\n        }\\n      }\\n      const inputSources = session.inputSources;\\n      for (let i = 0; i < controllers.length; i++) {\\n        const controller = controllers[i];\\n        const inputSource = inputSources[i];\\n        controller.update(inputSource, frame, referenceSpace);\\n      }\\n      if (onAnimationFrameCallback)\\n        onAnimationFrameCallback(time, frame);\\n      if (isMultisample) {\\n        const width = glProjLayer.textureWidth;\\n        const height = glProjLayer.textureHeight;\\n        state.bindFramebuffer(gl.READ_FRAMEBUFFER, glMultisampledFramebuffer);\\n        state.bindFramebuffer(gl.DRAW_FRAMEBUFFER, glFramebuffer);\\n        gl.invalidateFramebuffer(gl.READ_FRAMEBUFFER, [depthStyle]);\\n        gl.invalidateFramebuffer(gl.DRAW_FRAMEBUFFER, [depthStyle]);\\n        gl.blitFramebuffer(0, 0, width, height, 0, 0, width, height, gl.COLOR_BUFFER_BIT, gl.NEAREST);\\n        gl.invalidateFramebuffer(gl.READ_FRAMEBUFFER, [gl.COLOR_ATTACHMENT0]);\\n        state.bindFramebuffer(gl.READ_FRAMEBUFFER, null);\\n        state.bindFramebuffer(gl.DRAW_FRAMEBUFFER, null);\\n        state.bindFramebuffer(gl.FRAMEBUFFER, glMultisampledFramebuffer);\\n      }\\n      xrFrame = null;\\n    }\\n    const animation = new WebGLAnimation();\\n    animation.setAnimationLoop(onAnimationFrame);\\n    this.setAnimationLoop = function(callback) {\\n      onAnimationFrameCallback = callback;\\n    };\\n    this.dispose = function() {\\n    };\\n  }\\n};\\n\\n// ../../../node_modules/three/src/renderers/webgl/WebGLMaterials.js\\nfunction WebGLMaterials(properties) {\\n  function refreshFogUniforms(uniforms, fog) {\\n    uniforms.fogColor.value.copy(fog.color);\\n    if (fog.isFog) {\\n      uniforms.fogNear.value = fog.near;\\n      uniforms.fogFar.value = fog.far;\\n    } else if (fog.isFogExp2) {\\n      uniforms.fogDensity.value = fog.density;\\n    }\\n  }\\n  function refreshMaterialUniforms(uniforms, material, pixelRatio, height, transmissionRenderTarget) {\\n    if (material.isMeshBasicMaterial) {\\n      refreshUniformsCommon(uniforms, material);\\n    } else if (material.isMeshLambertMaterial) {\\n      refreshUniformsCommon(uniforms, material);\\n      refreshUniformsLambert(uniforms, material);\\n    } else if (material.isMeshToonMaterial) {\\n      refreshUniformsCommon(uniforms, material);\\n      refreshUniformsToon(uniforms, material);\\n    } else if (material.isMeshPhongMaterial) {\\n      refreshUniformsCommon(uniforms, material);\\n      refreshUniformsPhong(uniforms, material);\\n    } else if (material.isMeshStandardMaterial) {\\n      refreshUniformsCommon(uniforms, material);\\n      if (material.isMeshPhysicalMaterial) {\\n        refreshUniformsPhysical(uniforms, material, transmissionRenderTarget);\\n      } else {\\n        refreshUniformsStandard(uniforms, material);\\n      }\\n    } else if (material.isMeshMatcapMaterial) {\\n      refreshUniformsCommon(uniforms, material);\\n      refreshUniformsMatcap(uniforms, material);\\n    } else if (material.isMeshDepthMaterial) {\\n      refreshUniformsCommon(uniforms, material);\\n      refreshUniformsDepth(uniforms, material);\\n    } else if (material.isMeshDistanceMaterial) {\\n      refreshUniformsCommon(uniforms, material);\\n      refreshUniformsDistance(uniforms, material);\\n    } else if (material.isMeshNormalMaterial) {\\n      refreshUniformsCommon(uniforms, material);\\n      refreshUniformsNormal(uniforms, material);\\n    } else if (material.isLineBasicMaterial) {\\n      refreshUniformsLine(uniforms, material);\\n      if (material.isLineDashedMaterial) {\\n        refreshUniformsDash(uniforms, material);\\n      }\\n    } else if (material.isPointsMaterial) {\\n      refreshUniformsPoints(uniforms, material, pixelRatio, height);\\n    } else if (material.isSpriteMaterial) {\\n      refreshUniformsSprites(uniforms, material);\\n    } else if (material.isShadowMaterial) {\\n      uniforms.color.value.copy(material.color);\\n      uniforms.opacity.value = material.opacity;\\n    } else if (material.isShaderMaterial) {\\n      material.uniformsNeedUpdate = false;\\n    }\\n  }\\n  function refreshUniformsCommon(uniforms, material) {\\n    uniforms.opacity.value = material.opacity;\\n    if (material.color) {\\n      uniforms.diffuse.value.copy(material.color);\\n    }\\n    if (material.emissive) {\\n      uniforms.emissive.value.copy(material.emissive).multiplyScalar(material.emissiveIntensity);\\n    }\\n    if (material.map) {\\n      uniforms.map.value = material.map;\\n    }\\n    if (material.alphaMap) {\\n      uniforms.alphaMap.value = material.alphaMap;\\n    }\\n    if (material.specularMap) {\\n      uniforms.specularMap.value = material.specularMap;\\n    }\\n    if (material.alphaTest > 0) {\\n      uniforms.alphaTest.value = material.alphaTest;\\n    }\\n    const envMap = properties.get(material).envMap;\\n    if (envMap) {\\n      uniforms.envMap.value = envMap;\\n      uniforms.flipEnvMap.value = envMap.isCubeTexture && envMap.isRenderTargetTexture === false ? -1 : 1;\\n      uniforms.reflectivity.value = material.reflectivity;\\n      uniforms.ior.value = material.ior;\\n      uniforms.refractionRatio.value = material.refractionRatio;\\n      const maxMipLevel = properties.get(envMap).__maxMipLevel;\\n      if (maxMipLevel !== void 0) {\\n        uniforms.maxMipLevel.value = maxMipLevel;\\n      }\\n    }\\n    if (material.lightMap) {\\n      uniforms.lightMap.value = material.lightMap;\\n      uniforms.lightMapIntensity.value = material.lightMapIntensity;\\n    }\\n    if (material.aoMap) {\\n      uniforms.aoMap.value = material.aoMap;\\n      uniforms.aoMapIntensity.value = material.aoMapIntensity;\\n    }\\n    let uvScaleMap;\\n    if (material.map) {\\n      uvScaleMap = material.map;\\n    } else if (material.specularMap) {\\n      uvScaleMap = material.specularMap;\\n    } else if (material.displacementMap) {\\n      uvScaleMap = material.displacementMap;\\n    } else if (material.normalMap) {\\n      uvScaleMap = material.normalMap;\\n    } else if (material.bumpMap) {\\n      uvScaleMap = material.bumpMap;\\n    } else if (material.roughnessMap) {\\n      uvScaleMap = material.roughnessMap;\\n    } else if (material.metalnessMap) {\\n      uvScaleMap = material.metalnessMap;\\n    } else if (material.alphaMap) {\\n      uvScaleMap = material.alphaMap;\\n    } else if (material.emissiveMap) {\\n      uvScaleMap = material.emissiveMap;\\n    } else if (material.clearcoatMap) {\\n      uvScaleMap = material.clearcoatMap;\\n    } else if (material.clearcoatNormalMap) {\\n      uvScaleMap = material.clearcoatNormalMap;\\n    } else if (material.clearcoatRoughnessMap) {\\n      uvScaleMap = material.clearcoatRoughnessMap;\\n    } else if (material.specularIntensityMap) {\\n      uvScaleMap = material.specularIntensityMap;\\n    } else if (material.specularTintMap) {\\n      uvScaleMap = material.specularTintMap;\\n    } else if (material.transmissionMap) {\\n      uvScaleMap = material.transmissionMap;\\n    } else if (material.thicknessMap) {\\n      uvScaleMap = material.thicknessMap;\\n    }\\n    if (uvScaleMap !== void 0) {\\n      if (uvScaleMap.isWebGLRenderTarget) {\\n        uvScaleMap = uvScaleMap.texture;\\n      }\\n      if (uvScaleMap.matrixAutoUpdate === true) {\\n        uvScaleMap.updateMatrix();\\n      }\\n      uniforms.uvTransform.value.copy(uvScaleMap.matrix);\\n    }\\n    let uv2ScaleMap;\\n    if (material.aoMap) {\\n      uv2ScaleMap = material.aoMap;\\n    } else if (material.lightMap) {\\n      uv2ScaleMap = material.lightMap;\\n    }\\n    if (uv2ScaleMap !== void 0) {\\n      if (uv2ScaleMap.isWebGLRenderTarget) {\\n        uv2ScaleMap = uv2ScaleMap.texture;\\n      }\\n      if (uv2ScaleMap.matrixAutoUpdate === true) {\\n        uv2ScaleMap.updateMatrix();\\n      }\\n      uniforms.uv2Transform.value.copy(uv2ScaleMap.matrix);\\n    }\\n  }\\n  function refreshUniformsLine(uniforms, material) {\\n    uniforms.diffuse.value.copy(material.color);\\n    uniforms.opacity.value = material.opacity;\\n  }\\n  function refreshUniformsDash(uniforms, material) {\\n    uniforms.dashSize.value = material.dashSize;\\n    uniforms.totalSize.value = material.dashSize + material.gapSize;\\n    uniforms.scale.value = material.scale;\\n  }\\n  function refreshUniformsPoints(uniforms, material, pixelRatio, height) {\\n    uniforms.diffuse.value.copy(material.color);\\n    uniforms.opacity.value = material.opacity;\\n    uniforms.size.value = material.size * pixelRatio;\\n    uniforms.scale.value = height * 0.5;\\n    if (material.map) {\\n      uniforms.map.value = material.map;\\n    }\\n    if (material.alphaMap) {\\n      uniforms.alphaMap.value = material.alphaMap;\\n    }\\n    if (material.alphaTest > 0) {\\n      uniforms.alphaTest.value = material.alphaTest;\\n    }\\n    let uvScaleMap;\\n    if (material.map) {\\n      uvScaleMap = material.map;\\n    } else if (material.alphaMap) {\\n      uvScaleMap = material.alphaMap;\\n    }\\n    if (uvScaleMap !== void 0) {\\n      if (uvScaleMap.matrixAutoUpdate === true) {\\n        uvScaleMap.updateMatrix();\\n      }\\n      uniforms.uvTransform.value.copy(uvScaleMap.matrix);\\n    }\\n  }\\n  function refreshUniformsSprites(uniforms, material) {\\n    uniforms.diffuse.value.copy(material.color);\\n    uniforms.opacity.value = material.opacity;\\n    uniforms.rotation.value = material.rotation;\\n    if (material.map) {\\n      uniforms.map.value = material.map;\\n    }\\n    if (material.alphaMap) {\\n      uniforms.alphaMap.value = material.alphaMap;\\n    }\\n    if (material.alphaTest > 0) {\\n      uniforms.alphaTest.value = material.alphaTest;\\n    }\\n    let uvScaleMap;\\n    if (material.map) {\\n      uvScaleMap = material.map;\\n    } else if (material.alphaMap) {\\n      uvScaleMap = material.alphaMap;\\n    }\\n    if (uvScaleMap !== void 0) {\\n      if (uvScaleMap.matrixAutoUpdate === true) {\\n        uvScaleMap.updateMatrix();\\n      }\\n      uniforms.uvTransform.value.copy(uvScaleMap.matrix);\\n    }\\n  }\\n  function refreshUniformsLambert(uniforms, material) {\\n    if (material.emissiveMap) {\\n      uniforms.emissiveMap.value = material.emissiveMap;\\n    }\\n  }\\n  function refreshUniformsPhong(uniforms, material) {\\n    uniforms.specular.value.copy(material.specular);\\n    uniforms.shininess.value = Math.max(material.shininess, 1e-4);\\n    if (material.emissiveMap) {\\n      uniforms.emissiveMap.value = material.emissiveMap;\\n    }\\n    if (material.bumpMap) {\\n      uniforms.bumpMap.value = material.bumpMap;\\n      uniforms.bumpScale.value = material.bumpScale;\\n      if (material.side === BackSide)\\n        uniforms.bumpScale.value *= -1;\\n    }\\n    if (material.normalMap) {\\n      uniforms.normalMap.value = material.normalMap;\\n      uniforms.normalScale.value.copy(material.normalScale);\\n      if (material.side === BackSide)\\n        uniforms.normalScale.value.negate();\\n    }\\n    if (material.displacementMap) {\\n      uniforms.displacementMap.value = material.displacementMap;\\n      uniforms.displacementScale.value = material.displacementScale;\\n      uniforms.displacementBias.value = material.displacementBias;\\n    }\\n  }\\n  function refreshUniformsToon(uniforms, material) {\\n    if (material.gradientMap) {\\n      uniforms.gradientMap.value = material.gradientMap;\\n    }\\n    if (material.emissiveMap) {\\n      uniforms.emissiveMap.value = material.emissiveMap;\\n    }\\n    if (material.bumpMap) {\\n      uniforms.bumpMap.value = material.bumpMap;\\n      uniforms.bumpScale.value = material.bumpScale;\\n      if (material.side === BackSide)\\n        uniforms.bumpScale.value *= -1;\\n    }\\n    if (material.normalMap) {\\n      uniforms.normalMap.value = material.normalMap;\\n      uniforms.normalScale.value.copy(material.normalScale);\\n      if (material.side === BackSide)\\n        uniforms.normalScale.value.negate();\\n    }\\n    if (material.displacementMap) {\\n      uniforms.displacementMap.value = material.displacementMap;\\n      uniforms.displacementScale.value = material.displacementScale;\\n      uniforms.displacementBias.value = material.displacementBias;\\n    }\\n  }\\n  function refreshUniformsStandard(uniforms, material) {\\n    uniforms.roughness.value = material.roughness;\\n    uniforms.metalness.value = material.metalness;\\n    if (material.roughnessMap) {\\n      uniforms.roughnessMap.value = material.roughnessMap;\\n    }\\n    if (material.metalnessMap) {\\n      uniforms.metalnessMap.value = material.metalnessMap;\\n    }\\n    if (material.emissiveMap) {\\n      uniforms.emissiveMap.value = material.emissiveMap;\\n    }\\n    if (material.bumpMap) {\\n      uniforms.bumpMap.value = material.bumpMap;\\n      uniforms.bumpScale.value = material.bumpScale;\\n      if (material.side === BackSide)\\n        uniforms.bumpScale.value *= -1;\\n    }\\n    if (material.normalMap) {\\n      uniforms.normalMap.value = material.normalMap;\\n      uniforms.normalScale.value.copy(material.normalScale);\\n      if (material.side === BackSide)\\n        uniforms.normalScale.value.negate();\\n    }\\n    if (material.displacementMap) {\\n      uniforms.displacementMap.value = material.displacementMap;\\n      uniforms.displacementScale.value = material.displacementScale;\\n      uniforms.displacementBias.value = material.displacementBias;\\n    }\\n    const envMap = properties.get(material).envMap;\\n    if (envMap) {\\n      uniforms.envMapIntensity.value = material.envMapIntensity;\\n    }\\n  }\\n  function refreshUniformsPhysical(uniforms, material, transmissionRenderTarget) {\\n    refreshUniformsStandard(uniforms, material);\\n    uniforms.ior.value = material.ior;\\n    if (material.sheen > 0) {\\n      uniforms.sheenTint.value.copy(material.sheenTint).multiplyScalar(material.sheen);\\n      uniforms.sheenRoughness.value = material.sheenRoughness;\\n    }\\n    if (material.clearcoat > 0) {\\n      uniforms.clearcoat.value = material.clearcoat;\\n      uniforms.clearcoatRoughness.value = material.clearcoatRoughness;\\n      if (material.clearcoatMap) {\\n        uniforms.clearcoatMap.value = material.clearcoatMap;\\n      }\\n      if (material.clearcoatRoughnessMap) {\\n        uniforms.clearcoatRoughnessMap.value = material.clearcoatRoughnessMap;\\n      }\\n      if (material.clearcoatNormalMap) {\\n        uniforms.clearcoatNormalScale.value.copy(material.clearcoatNormalScale);\\n        uniforms.clearcoatNormalMap.value = material.clearcoatNormalMap;\\n        if (material.side === BackSide) {\\n          uniforms.clearcoatNormalScale.value.negate();\\n        }\\n      }\\n    }\\n    if (material.transmission > 0) {\\n      uniforms.transmission.value = material.transmission;\\n      uniforms.transmissionSamplerMap.value = transmissionRenderTarget.texture;\\n      uniforms.transmissionSamplerSize.value.set(transmissionRenderTarget.width, transmissionRenderTarget.height);\\n      if (material.transmissionMap) {\\n        uniforms.transmissionMap.value = material.transmissionMap;\\n      }\\n      uniforms.thickness.value = material.thickness;\\n      if (material.thicknessMap) {\\n        uniforms.thicknessMap.value = material.thicknessMap;\\n      }\\n      uniforms.attenuationDistance.value = material.attenuationDistance;\\n      uniforms.attenuationTint.value.copy(material.attenuationTint);\\n    }\\n    uniforms.specularIntensity.value = material.specularIntensity;\\n    uniforms.specularTint.value.copy(material.specularTint);\\n    if (material.specularIntensityMap) {\\n      uniforms.specularIntensityMap.value = material.specularIntensityMap;\\n    }\\n    if (material.specularTintMap) {\\n      uniforms.specularTintMap.value = material.specularTintMap;\\n    }\\n  }\\n  function refreshUniformsMatcap(uniforms, material) {\\n    if (material.matcap) {\\n      uniforms.matcap.value = material.matcap;\\n    }\\n    if (material.bumpMap) {\\n      uniforms.bumpMap.value = material.bumpMap;\\n      uniforms.bumpScale.value = material.bumpScale;\\n      if (material.side === BackSide)\\n        uniforms.bumpScale.value *= -1;\\n    }\\n    if (material.normalMap) {\\n      uniforms.normalMap.value = material.normalMap;\\n      uniforms.normalScale.value.copy(material.normalScale);\\n      if (material.side === BackSide)\\n        uniforms.normalScale.value.negate();\\n    }\\n    if (material.displacementMap) {\\n      uniforms.displacementMap.value = material.displacementMap;\\n      uniforms.displacementScale.value = material.displacementScale;\\n      uniforms.displacementBias.value = material.displacementBias;\\n    }\\n  }\\n  function refreshUniformsDepth(uniforms, material) {\\n    if (material.displacementMap) {\\n      uniforms.displacementMap.value = material.displacementMap;\\n      uniforms.displacementScale.value = material.displacementScale;\\n      uniforms.displacementBias.value = material.displacementBias;\\n    }\\n  }\\n  function refreshUniformsDistance(uniforms, material) {\\n    if (material.displacementMap) {\\n      uniforms.displacementMap.value = material.displacementMap;\\n      uniforms.displacementScale.value = material.displacementScale;\\n      uniforms.displacementBias.value = material.displacementBias;\\n    }\\n    uniforms.referencePosition.value.copy(material.referencePosition);\\n    uniforms.nearDistance.value = material.nearDistance;\\n    uniforms.farDistance.value = material.farDistance;\\n  }\\n  function refreshUniformsNormal(uniforms, material) {\\n    if (material.bumpMap) {\\n      uniforms.bumpMap.value = material.bumpMap;\\n      uniforms.bumpScale.value = material.bumpScale;\\n      if (material.side === BackSide)\\n        uniforms.bumpScale.value *= -1;\\n    }\\n    if (material.normalMap) {\\n      uniforms.normalMap.value = material.normalMap;\\n      uniforms.normalScale.value.copy(material.normalScale);\\n      if (material.side === BackSide)\\n        uniforms.normalScale.value.negate();\\n    }\\n    if (material.displacementMap) {\\n      uniforms.displacementMap.value = material.displacementMap;\\n      uniforms.displacementScale.value = material.displacementScale;\\n      uniforms.displacementBias.value = material.displacementBias;\\n    }\\n  }\\n  return {\\n    refreshFogUniforms,\\n    refreshMaterialUniforms\\n  };\\n}\\n\\n// ../../../node_modules/three/src/renderers/WebGLRenderer.js\\nfunction createCanvasElement() {\\n  const canvas = createElementNS(\\\\\\\"canvas\\\\\\\");\\n  canvas.style.display = \\\\\\\"block\\\\\\\";\\n  return canvas;\\n}\\nfunction WebGLRenderer(parameters = {}) {\\n  const _canvas2 = parameters.canvas !== void 0 ? parameters.canvas : createCanvasElement(), _context2 = parameters.context !== void 0 ? parameters.context : null, _alpha = parameters.alpha !== void 0 ? parameters.alpha : false, _depth = parameters.depth !== void 0 ? parameters.depth : true, _stencil = parameters.stencil !== void 0 ? parameters.stencil : true, _antialias = parameters.antialias !== void 0 ? parameters.antialias : false, _premultipliedAlpha = parameters.premultipliedAlpha !== void 0 ? parameters.premultipliedAlpha : true, _preserveDrawingBuffer = parameters.preserveDrawingBuffer !== void 0 ? parameters.preserveDrawingBuffer : false, _powerPreference = parameters.powerPreference !== void 0 ? parameters.powerPreference : \\\\\\\"default\\\\\\\", _failIfMajorPerformanceCaveat = parameters.failIfMajorPerformanceCaveat !== void 0 ? parameters.failIfMajorPerformanceCaveat : false;\\n  let currentRenderList = null;\\n  let currentRenderState = null;\\n  const renderListStack = [];\\n  const renderStateStack = [];\\n  this.domElement = _canvas2;\\n  this.debug = {\\n    checkShaderErrors: true\\n  };\\n  this.autoClear = true;\\n  this.autoClearColor = true;\\n  this.autoClearDepth = true;\\n  this.autoClearStencil = true;\\n  this.sortObjects = true;\\n  this.clippingPlanes = [];\\n  this.localClippingEnabled = false;\\n  this.gammaFactor = 2;\\n  this.outputEncoding = LinearEncoding;\\n  this.physicallyCorrectLights = false;\\n  this.toneMapping = NoToneMapping;\\n  this.toneMappingExposure = 1;\\n  const _this = this;\\n  let _isContextLost = false;\\n  let _currentActiveCubeFace = 0;\\n  let _currentActiveMipmapLevel = 0;\\n  let _currentRenderTarget = null;\\n  let _currentMaterialId = -1;\\n  let _currentCamera = null;\\n  const _currentViewport = new Vector4();\\n  const _currentScissor = new Vector4();\\n  let _currentScissorTest = null;\\n  let _width = _canvas2.width;\\n  let _height = _canvas2.height;\\n  let _pixelRatio = 1;\\n  let _opaqueSort = null;\\n  let _transparentSort = null;\\n  const _viewport = new Vector4(0, 0, _width, _height);\\n  const _scissor = new Vector4(0, 0, _width, _height);\\n  let _scissorTest = false;\\n  const _currentDrawBuffers = [];\\n  const _frustum = new Frustum();\\n  let _clippingEnabled = false;\\n  let _localClippingEnabled = false;\\n  let _transmissionRenderTarget = null;\\n  const _projScreenMatrix = new Matrix4();\\n  const _vector32 = new Vector3();\\n  const _emptyScene = {background: null, fog: null, environment: null, overrideMaterial: null, isScene: true};\\n  function getTargetPixelRatio() {\\n    return _currentRenderTarget === null ? _pixelRatio : 1;\\n  }\\n  let _gl = _context2;\\n  function getContext(contextNames, contextAttributes) {\\n    for (let i = 0; i < contextNames.length; i++) {\\n      const contextName = contextNames[i];\\n      const context = _canvas2.getContext(contextName, contextAttributes);\\n      if (context !== null)\\n        return context;\\n    }\\n    return null;\\n  }\\n  try {\\n    const contextAttributes = {\\n      alpha: _alpha,\\n      depth: _depth,\\n      stencil: _stencil,\\n      antialias: _antialias,\\n      premultipliedAlpha: _premultipliedAlpha,\\n      preserveDrawingBuffer: _preserveDrawingBuffer,\\n      powerPreference: _powerPreference,\\n      failIfMajorPerformanceCaveat: _failIfMajorPerformanceCaveat\\n    };\\n    _canvas2.addEventListener(\\\\\\\"webglcontextlost\\\\\\\", onContextLost, false);\\n    _canvas2.addEventListener(\\\\\\\"webglcontextrestored\\\\\\\", onContextRestore, false);\\n    if (_gl === null) {\\n      const contextNames = [\\\\\\\"webgl2\\\\\\\", \\\\\\\"webgl\\\\\\\", \\\\\\\"experimental-webgl\\\\\\\"];\\n      if (_this.isWebGL1Renderer === true) {\\n        contextNames.shift();\\n      }\\n      _gl = getContext(contextNames, contextAttributes);\\n      if (_gl === null) {\\n        if (getContext(contextNames)) {\\n          throw new Error(\\\\\\\"Error creating WebGL context with your selected attributes.\\\\\\\");\\n        } else {\\n          throw new Error(\\\\\\\"Error creating WebGL context.\\\\\\\");\\n        }\\n      }\\n    }\\n    if (_gl.getShaderPrecisionFormat === void 0) {\\n      _gl.getShaderPrecisionFormat = function() {\\n        return {rangeMin: 1, rangeMax: 1, precision: 1};\\n      };\\n    }\\n  } catch (error) {\\n    console.error(\\\\\\\"THREE.WebGLRenderer: \\\\\\\" + error.message);\\n    throw error;\\n  }\\n  let extensions, capabilities, state, info;\\n  let properties, textures, cubemaps, cubeuvmaps, attributes, geometries, objects;\\n  let programCache, materials2, renderLists, renderStates, clipping, shadowMap;\\n  let background2, morphtargets, bufferRenderer, indexedBufferRenderer;\\n  let utils, bindingStates;\\n  function initGLContext() {\\n    extensions = new WebGLExtensions(_gl);\\n    capabilities = new WebGLCapabilities(_gl, extensions, parameters);\\n    extensions.init(capabilities);\\n    utils = new WebGLUtils(_gl, extensions, capabilities);\\n    state = new WebGLState(_gl, extensions, capabilities);\\n    _currentDrawBuffers[0] = _gl.BACK;\\n    info = new WebGLInfo(_gl);\\n    properties = new WebGLProperties();\\n    textures = new WebGLTextures(_gl, extensions, state, properties, capabilities, utils, info);\\n    cubemaps = new WebGLCubeMaps(_this);\\n    cubeuvmaps = new WebGLCubeUVMaps(_this);\\n    attributes = new WebGLAttributes(_gl, capabilities);\\n    bindingStates = new WebGLBindingStates(_gl, extensions, attributes, capabilities);\\n    geometries = new WebGLGeometries(_gl, attributes, info, bindingStates);\\n    objects = new WebGLObjects(_gl, geometries, attributes, info);\\n    morphtargets = new WebGLMorphtargets(_gl, capabilities, textures);\\n    clipping = new WebGLClipping(properties);\\n    programCache = new WebGLPrograms(_this, cubemaps, cubeuvmaps, extensions, capabilities, bindingStates, clipping);\\n    materials2 = new WebGLMaterials(properties);\\n    renderLists = new WebGLRenderLists(properties);\\n    renderStates = new WebGLRenderStates(extensions, capabilities);\\n    background2 = new WebGLBackground(_this, cubemaps, state, objects, _premultipliedAlpha);\\n    shadowMap = new WebGLShadowMap(_this, objects, capabilities);\\n    bufferRenderer = new WebGLBufferRenderer(_gl, extensions, info, capabilities);\\n    indexedBufferRenderer = new WebGLIndexedBufferRenderer(_gl, extensions, info, capabilities);\\n    info.programs = programCache.programs;\\n    _this.capabilities = capabilities;\\n    _this.extensions = extensions;\\n    _this.properties = properties;\\n    _this.renderLists = renderLists;\\n    _this.shadowMap = shadowMap;\\n    _this.state = state;\\n    _this.info = info;\\n  }\\n  initGLContext();\\n  const xr = new WebXRManager(_this, _gl);\\n  this.xr = xr;\\n  this.getContext = function() {\\n    return _gl;\\n  };\\n  this.getContextAttributes = function() {\\n    return _gl.getContextAttributes();\\n  };\\n  this.forceContextLoss = function() {\\n    const extension = extensions.get(\\\\\\\"WEBGL_lose_context\\\\\\\");\\n    if (extension)\\n      extension.loseContext();\\n  };\\n  this.forceContextRestore = function() {\\n    const extension = extensions.get(\\\\\\\"WEBGL_lose_context\\\\\\\");\\n    if (extension)\\n      extension.restoreContext();\\n  };\\n  this.getPixelRatio = function() {\\n    return _pixelRatio;\\n  };\\n  this.setPixelRatio = function(value) {\\n    if (value === void 0)\\n      return;\\n    _pixelRatio = value;\\n    this.setSize(_width, _height, false);\\n  };\\n  this.getSize = function(target) {\\n    return target.set(_width, _height);\\n  };\\n  this.setSize = function(width, height, updateStyle) {\\n    if (xr.isPresenting) {\\n      console.warn(\\\\\\\"THREE.WebGLRenderer: Can't change size while VR device is presenting.\\\\\\\");\\n      return;\\n    }\\n    _width = width;\\n    _height = height;\\n    _canvas2.width = Math.floor(width * _pixelRatio);\\n    _canvas2.height = Math.floor(height * _pixelRatio);\\n    if (updateStyle !== false) {\\n      _canvas2.style.width = width + \\\\\\\"px\\\\\\\";\\n      _canvas2.style.height = height + \\\\\\\"px\\\\\\\";\\n    }\\n    this.setViewport(0, 0, width, height);\\n  };\\n  this.getDrawingBufferSize = function(target) {\\n    return target.set(_width * _pixelRatio, _height * _pixelRatio).floor();\\n  };\\n  this.setDrawingBufferSize = function(width, height, pixelRatio) {\\n    _width = width;\\n    _height = height;\\n    _pixelRatio = pixelRatio;\\n    _canvas2.width = Math.floor(width * pixelRatio);\\n    _canvas2.height = Math.floor(height * pixelRatio);\\n    this.setViewport(0, 0, width, height);\\n  };\\n  this.getCurrentViewport = function(target) {\\n    return target.copy(_currentViewport);\\n  };\\n  this.getViewport = function(target) {\\n    return target.copy(_viewport);\\n  };\\n  this.setViewport = function(x, y, width, height) {\\n    if (x.isVector4) {\\n      _viewport.set(x.x, x.y, x.z, x.w);\\n    } else {\\n      _viewport.set(x, y, width, height);\\n    }\\n    state.viewport(_currentViewport.copy(_viewport).multiplyScalar(_pixelRatio).floor());\\n  };\\n  this.getScissor = function(target) {\\n    return target.copy(_scissor);\\n  };\\n  this.setScissor = function(x, y, width, height) {\\n    if (x.isVector4) {\\n      _scissor.set(x.x, x.y, x.z, x.w);\\n    } else {\\n      _scissor.set(x, y, width, height);\\n    }\\n    state.scissor(_currentScissor.copy(_scissor).multiplyScalar(_pixelRatio).floor());\\n  };\\n  this.getScissorTest = function() {\\n    return _scissorTest;\\n  };\\n  this.setScissorTest = function(boolean) {\\n    state.setScissorTest(_scissorTest = boolean);\\n  };\\n  this.setOpaqueSort = function(method) {\\n    _opaqueSort = method;\\n  };\\n  this.setTransparentSort = function(method) {\\n    _transparentSort = method;\\n  };\\n  this.getClearColor = function(target) {\\n    return target.copy(background2.getClearColor());\\n  };\\n  this.setClearColor = function() {\\n    background2.setClearColor.apply(background2, arguments);\\n  };\\n  this.getClearAlpha = function() {\\n    return background2.getClearAlpha();\\n  };\\n  this.setClearAlpha = function() {\\n    background2.setClearAlpha.apply(background2, arguments);\\n  };\\n  this.clear = function(color, depth2, stencil) {\\n    let bits = 0;\\n    if (color === void 0 || color)\\n      bits |= _gl.COLOR_BUFFER_BIT;\\n    if (depth2 === void 0 || depth2)\\n      bits |= _gl.DEPTH_BUFFER_BIT;\\n    if (stencil === void 0 || stencil)\\n      bits |= _gl.STENCIL_BUFFER_BIT;\\n    _gl.clear(bits);\\n  };\\n  this.clearColor = function() {\\n    this.clear(true, false, false);\\n  };\\n  this.clearDepth = function() {\\n    this.clear(false, true, false);\\n  };\\n  this.clearStencil = function() {\\n    this.clear(false, false, true);\\n  };\\n  this.dispose = function() {\\n    _canvas2.removeEventListener(\\\\\\\"webglcontextlost\\\\\\\", onContextLost, false);\\n    _canvas2.removeEventListener(\\\\\\\"webglcontextrestored\\\\\\\", onContextRestore, false);\\n    renderLists.dispose();\\n    renderStates.dispose();\\n    properties.dispose();\\n    cubemaps.dispose();\\n    cubeuvmaps.dispose();\\n    objects.dispose();\\n    bindingStates.dispose();\\n    xr.dispose();\\n    xr.removeEventListener(\\\\\\\"sessionstart\\\\\\\", onXRSessionStart);\\n    xr.removeEventListener(\\\\\\\"sessionend\\\\\\\", onXRSessionEnd);\\n    if (_transmissionRenderTarget) {\\n      _transmissionRenderTarget.dispose();\\n      _transmissionRenderTarget = null;\\n    }\\n    animation.stop();\\n  };\\n  function onContextLost(event) {\\n    event.preventDefault();\\n    console.log(\\\\\\\"THREE.WebGLRenderer: Context Lost.\\\\\\\");\\n    _isContextLost = true;\\n  }\\n  function onContextRestore() {\\n    console.log(\\\\\\\"THREE.WebGLRenderer: Context Restored.\\\\\\\");\\n    _isContextLost = false;\\n    const infoAutoReset = info.autoReset;\\n    const shadowMapEnabled = shadowMap.enabled;\\n    const shadowMapAutoUpdate = shadowMap.autoUpdate;\\n    const shadowMapNeedsUpdate = shadowMap.needsUpdate;\\n    const shadowMapType = shadowMap.type;\\n    initGLContext();\\n    info.autoReset = infoAutoReset;\\n    shadowMap.enabled = shadowMapEnabled;\\n    shadowMap.autoUpdate = shadowMapAutoUpdate;\\n    shadowMap.needsUpdate = shadowMapNeedsUpdate;\\n    shadowMap.type = shadowMapType;\\n  }\\n  function onMaterialDispose(event) {\\n    const material = event.target;\\n    material.removeEventListener(\\\\\\\"dispose\\\\\\\", onMaterialDispose);\\n    deallocateMaterial(material);\\n  }\\n  function deallocateMaterial(material) {\\n    releaseMaterialProgramReferences(material);\\n    properties.remove(material);\\n  }\\n  function releaseMaterialProgramReferences(material) {\\n    const programs = properties.get(material).programs;\\n    if (programs !== void 0) {\\n      programs.forEach(function(program) {\\n        programCache.releaseProgram(program);\\n      });\\n    }\\n  }\\n  function renderObjectImmediate(object, program) {\\n    object.render(function(object2) {\\n      _this.renderBufferImmediate(object2, program);\\n    });\\n  }\\n  this.renderBufferImmediate = function(object, program) {\\n    bindingStates.initAttributes();\\n    const buffers = properties.get(object);\\n    if (object.hasPositions && !buffers.position)\\n      buffers.position = _gl.createBuffer();\\n    if (object.hasNormals && !buffers.normal)\\n      buffers.normal = _gl.createBuffer();\\n    if (object.hasUvs && !buffers.uv)\\n      buffers.uv = _gl.createBuffer();\\n    if (object.hasColors && !buffers.color)\\n      buffers.color = _gl.createBuffer();\\n    const programAttributes = program.getAttributes();\\n    if (object.hasPositions) {\\n      _gl.bindBuffer(_gl.ARRAY_BUFFER, buffers.position);\\n      _gl.bufferData(_gl.ARRAY_BUFFER, object.positionArray, _gl.DYNAMIC_DRAW);\\n      bindingStates.enableAttribute(programAttributes.position.location);\\n      _gl.vertexAttribPointer(programAttributes.position.location, 3, _gl.FLOAT, false, 0, 0);\\n    }\\n    if (object.hasNormals) {\\n      _gl.bindBuffer(_gl.ARRAY_BUFFER, buffers.normal);\\n      _gl.bufferData(_gl.ARRAY_BUFFER, object.normalArray, _gl.DYNAMIC_DRAW);\\n      bindingStates.enableAttribute(programAttributes.normal.location);\\n      _gl.vertexAttribPointer(programAttributes.normal.location, 3, _gl.FLOAT, false, 0, 0);\\n    }\\n    if (object.hasUvs) {\\n      _gl.bindBuffer(_gl.ARRAY_BUFFER, buffers.uv);\\n      _gl.bufferData(_gl.ARRAY_BUFFER, object.uvArray, _gl.DYNAMIC_DRAW);\\n      bindingStates.enableAttribute(programAttributes.uv.location);\\n      _gl.vertexAttribPointer(programAttributes.uv.location, 2, _gl.FLOAT, false, 0, 0);\\n    }\\n    if (object.hasColors) {\\n      _gl.bindBuffer(_gl.ARRAY_BUFFER, buffers.color);\\n      _gl.bufferData(_gl.ARRAY_BUFFER, object.colorArray, _gl.DYNAMIC_DRAW);\\n      bindingStates.enableAttribute(programAttributes.color.location);\\n      _gl.vertexAttribPointer(programAttributes.color.location, 3, _gl.FLOAT, false, 0, 0);\\n    }\\n    bindingStates.disableUnusedAttributes();\\n    _gl.drawArrays(_gl.TRIANGLES, 0, object.count);\\n    object.count = 0;\\n  };\\n  this.renderBufferDirect = function(camera, scene, geometry, material, object, group) {\\n    if (scene === null)\\n      scene = _emptyScene;\\n    const frontFaceCW = object.isMesh && object.matrixWorld.determinant() < 0;\\n    const program = setProgram(camera, scene, geometry, material, object);\\n    state.setMaterial(material, frontFaceCW);\\n    let index = geometry.index;\\n    const position = geometry.attributes.position;\\n    if (index === null) {\\n      if (position === void 0 || position.count === 0)\\n        return;\\n    } else if (index.count === 0) {\\n      return;\\n    }\\n    let rangeFactor = 1;\\n    if (material.wireframe === true) {\\n      index = geometries.getWireframeAttribute(geometry);\\n      rangeFactor = 2;\\n    }\\n    bindingStates.setup(object, material, program, geometry, index);\\n    let attribute;\\n    let renderer = bufferRenderer;\\n    if (index !== null) {\\n      attribute = attributes.get(index);\\n      renderer = indexedBufferRenderer;\\n      renderer.setIndex(attribute);\\n    }\\n    const dataCount = index !== null ? index.count : position.count;\\n    const rangeStart = geometry.drawRange.start * rangeFactor;\\n    const rangeCount = geometry.drawRange.count * rangeFactor;\\n    const groupStart = group !== null ? group.start * rangeFactor : 0;\\n    const groupCount = group !== null ? group.count * rangeFactor : Infinity;\\n    const drawStart = Math.max(rangeStart, groupStart);\\n    const drawEnd = Math.min(dataCount, rangeStart + rangeCount, groupStart + groupCount) - 1;\\n    const drawCount = Math.max(0, drawEnd - drawStart + 1);\\n    if (drawCount === 0)\\n      return;\\n    if (object.isMesh) {\\n      if (material.wireframe === true) {\\n        state.setLineWidth(material.wireframeLinewidth * getTargetPixelRatio());\\n        renderer.setMode(_gl.LINES);\\n      } else {\\n        renderer.setMode(_gl.TRIANGLES);\\n      }\\n    } else if (object.isLine) {\\n      let lineWidth = material.linewidth;\\n      if (lineWidth === void 0)\\n        lineWidth = 1;\\n      state.setLineWidth(lineWidth * getTargetPixelRatio());\\n      if (object.isLineSegments) {\\n        renderer.setMode(_gl.LINES);\\n      } else if (object.isLineLoop) {\\n        renderer.setMode(_gl.LINE_LOOP);\\n      } else {\\n        renderer.setMode(_gl.LINE_STRIP);\\n      }\\n    } else if (object.isPoints) {\\n      renderer.setMode(_gl.POINTS);\\n    } else if (object.isSprite) {\\n      renderer.setMode(_gl.TRIANGLES);\\n    }\\n    if (object.isInstancedMesh) {\\n      renderer.renderInstances(drawStart, drawCount, object.count);\\n    } else if (geometry.isInstancedBufferGeometry) {\\n      const instanceCount = Math.min(geometry.instanceCount, geometry._maxInstanceCount);\\n      renderer.renderInstances(drawStart, drawCount, instanceCount);\\n    } else {\\n      renderer.render(drawStart, drawCount);\\n    }\\n  };\\n  this.compile = function(scene, camera) {\\n    currentRenderState = renderStates.get(scene);\\n    currentRenderState.init();\\n    renderStateStack.push(currentRenderState);\\n    scene.traverseVisible(function(object) {\\n      if (object.isLight && object.layers.test(camera.layers)) {\\n        currentRenderState.pushLight(object);\\n        if (object.castShadow) {\\n          currentRenderState.pushShadow(object);\\n        }\\n      }\\n    });\\n    currentRenderState.setupLights(_this.physicallyCorrectLights);\\n    scene.traverse(function(object) {\\n      const material = object.material;\\n      if (material) {\\n        if (Array.isArray(material)) {\\n          for (let i = 0; i < material.length; i++) {\\n            const material2 = material[i];\\n            getProgram(material2, scene, object);\\n          }\\n        } else {\\n          getProgram(material, scene, object);\\n        }\\n      }\\n    });\\n    renderStateStack.pop();\\n    currentRenderState = null;\\n  };\\n  let onAnimationFrameCallback = null;\\n  function onAnimationFrame(time) {\\n    if (onAnimationFrameCallback)\\n      onAnimationFrameCallback(time);\\n  }\\n  function onXRSessionStart() {\\n    animation.stop();\\n  }\\n  function onXRSessionEnd() {\\n    animation.start();\\n  }\\n  const animation = new WebGLAnimation();\\n  animation.setAnimationLoop(onAnimationFrame);\\n  if (typeof window !== \\\\\\\"undefined\\\\\\\")\\n    animation.setContext(window);\\n  this.setAnimationLoop = function(callback) {\\n    onAnimationFrameCallback = callback;\\n    xr.setAnimationLoop(callback);\\n    callback === null ? animation.stop() : animation.start();\\n  };\\n  xr.addEventListener(\\\\\\\"sessionstart\\\\\\\", onXRSessionStart);\\n  xr.addEventListener(\\\\\\\"sessionend\\\\\\\", onXRSessionEnd);\\n  this.render = function(scene, camera) {\\n    if (camera !== void 0 && camera.isCamera !== true) {\\n      console.error(\\\\\\\"THREE.WebGLRenderer.render: camera is not an instance of THREE.Camera.\\\\\\\");\\n      return;\\n    }\\n    if (_isContextLost === true)\\n      return;\\n    if (scene.autoUpdate === true)\\n      scene.updateMatrixWorld();\\n    if (camera.parent === null)\\n      camera.updateMatrixWorld();\\n    if (xr.enabled === true && xr.isPresenting === true) {\\n      if (xr.cameraAutoUpdate === true)\\n        xr.updateCamera(camera);\\n      camera = xr.getCamera();\\n    }\\n    if (scene.isScene === true)\\n      scene.onBeforeRender(_this, scene, camera, _currentRenderTarget);\\n    currentRenderState = renderStates.get(scene, renderStateStack.length);\\n    currentRenderState.init();\\n    renderStateStack.push(currentRenderState);\\n    _projScreenMatrix.multiplyMatrices(camera.projectionMatrix, camera.matrixWorldInverse);\\n    _frustum.setFromProjectionMatrix(_projScreenMatrix);\\n    _localClippingEnabled = this.localClippingEnabled;\\n    _clippingEnabled = clipping.init(this.clippingPlanes, _localClippingEnabled, camera);\\n    currentRenderList = renderLists.get(scene, renderListStack.length);\\n    currentRenderList.init();\\n    renderListStack.push(currentRenderList);\\n    projectObject(scene, camera, 0, _this.sortObjects);\\n    currentRenderList.finish();\\n    if (_this.sortObjects === true) {\\n      currentRenderList.sort(_opaqueSort, _transparentSort);\\n    }\\n    if (_clippingEnabled === true)\\n      clipping.beginShadows();\\n    const shadowsArray = currentRenderState.state.shadowsArray;\\n    shadowMap.render(shadowsArray, scene, camera);\\n    if (_clippingEnabled === true)\\n      clipping.endShadows();\\n    if (this.info.autoReset === true)\\n      this.info.reset();\\n    background2.render(currentRenderList, scene);\\n    currentRenderState.setupLights(_this.physicallyCorrectLights);\\n    if (camera.isArrayCamera) {\\n      const cameras = camera.cameras;\\n      for (let i = 0, l = cameras.length; i < l; i++) {\\n        const camera2 = cameras[i];\\n        renderScene(currentRenderList, scene, camera2, camera2.viewport);\\n      }\\n    } else {\\n      renderScene(currentRenderList, scene, camera);\\n    }\\n    if (_currentRenderTarget !== null) {\\n      textures.updateMultisampleRenderTarget(_currentRenderTarget);\\n      textures.updateRenderTargetMipmap(_currentRenderTarget);\\n    }\\n    if (scene.isScene === true)\\n      scene.onAfterRender(_this, scene, camera);\\n    state.buffers.depth.setTest(true);\\n    state.buffers.depth.setMask(true);\\n    state.buffers.color.setMask(true);\\n    state.setPolygonOffset(false);\\n    bindingStates.resetDefaultState();\\n    _currentMaterialId = -1;\\n    _currentCamera = null;\\n    renderStateStack.pop();\\n    if (renderStateStack.length > 0) {\\n      currentRenderState = renderStateStack[renderStateStack.length - 1];\\n    } else {\\n      currentRenderState = null;\\n    }\\n    renderListStack.pop();\\n    if (renderListStack.length > 0) {\\n      currentRenderList = renderListStack[renderListStack.length - 1];\\n    } else {\\n      currentRenderList = null;\\n    }\\n  };\\n  function projectObject(object, camera, groupOrder, sortObjects) {\\n    if (object.visible === false)\\n      return;\\n    const visible = object.layers.test(camera.layers);\\n    if (visible) {\\n      if (object.isGroup) {\\n        groupOrder = object.renderOrder;\\n      } else if (object.isLOD) {\\n        if (object.autoUpdate === true)\\n          object.update(camera);\\n      } else if (object.isLight) {\\n        currentRenderState.pushLight(object);\\n        if (object.castShadow) {\\n          currentRenderState.pushShadow(object);\\n        }\\n      } else if (object.isSprite) {\\n        if (!object.frustumCulled || _frustum.intersectsSprite(object)) {\\n          if (sortObjects) {\\n            _vector32.setFromMatrixPosition(object.matrixWorld).applyMatrix4(_projScreenMatrix);\\n          }\\n          const geometry = objects.update(object);\\n          const material = object.material;\\n          if (material.visible) {\\n            currentRenderList.push(object, geometry, material, groupOrder, _vector32.z, null);\\n          }\\n        }\\n      } else if (object.isImmediateRenderObject) {\\n        if (sortObjects) {\\n          _vector32.setFromMatrixPosition(object.matrixWorld).applyMatrix4(_projScreenMatrix);\\n        }\\n        currentRenderList.push(object, null, object.material, groupOrder, _vector32.z, null);\\n      } else if (object.isMesh || object.isLine || object.isPoints) {\\n        if (object.isSkinnedMesh) {\\n          if (object.skeleton.frame !== info.render.frame) {\\n            object.skeleton.update();\\n            object.skeleton.frame = info.render.frame;\\n          }\\n        }\\n        if (!object.frustumCulled || _frustum.intersectsObject(object)) {\\n          if (sortObjects) {\\n            _vector32.setFromMatrixPosition(object.matrixWorld).applyMatrix4(_projScreenMatrix);\\n          }\\n          const geometry = objects.update(object);\\n          const material = object.material;\\n          if (Array.isArray(material)) {\\n            const groups = geometry.groups;\\n            for (let i = 0, l = groups.length; i < l; i++) {\\n              const group = groups[i];\\n              const groupMaterial = material[group.materialIndex];\\n              if (groupMaterial && groupMaterial.visible) {\\n                currentRenderList.push(object, geometry, groupMaterial, groupOrder, _vector32.z, group);\\n              }\\n            }\\n          } else if (material.visible) {\\n            currentRenderList.push(object, geometry, material, groupOrder, _vector32.z, null);\\n          }\\n        }\\n      }\\n    }\\n    const children = object.children;\\n    for (let i = 0, l = children.length; i < l; i++) {\\n      projectObject(children[i], camera, groupOrder, sortObjects);\\n    }\\n  }\\n  function renderScene(currentRenderList2, scene, camera, viewport) {\\n    const opaqueObjects = currentRenderList2.opaque;\\n    const transmissiveObjects = currentRenderList2.transmissive;\\n    const transparentObjects = currentRenderList2.transparent;\\n    currentRenderState.setupLightsView(camera);\\n    if (transmissiveObjects.length > 0)\\n      renderTransmissionPass(opaqueObjects, scene, camera);\\n    if (viewport)\\n      state.viewport(_currentViewport.copy(viewport));\\n    if (opaqueObjects.length > 0)\\n      renderObjects(opaqueObjects, scene, camera);\\n    if (transmissiveObjects.length > 0)\\n      renderObjects(transmissiveObjects, scene, camera);\\n    if (transparentObjects.length > 0)\\n      renderObjects(transparentObjects, scene, camera);\\n  }\\n  function renderTransmissionPass(opaqueObjects, scene, camera) {\\n    if (_transmissionRenderTarget === null) {\\n      const needsAntialias = _antialias === true && capabilities.isWebGL2 === true;\\n      const renderTargetType = needsAntialias ? WebGLMultisampleRenderTarget : WebGLRenderTarget;\\n      _transmissionRenderTarget = new renderTargetType(1024, 1024, {\\n        generateMipmaps: true,\\n        type: utils.convert(HalfFloatType) !== null ? HalfFloatType : UnsignedByteType,\\n        minFilter: LinearMipmapLinearFilter,\\n        magFilter: NearestFilter,\\n        wrapS: ClampToEdgeWrapping,\\n        wrapT: ClampToEdgeWrapping\\n      });\\n    }\\n    const currentRenderTarget = _this.getRenderTarget();\\n    _this.setRenderTarget(_transmissionRenderTarget);\\n    _this.clear();\\n    const currentToneMapping = _this.toneMapping;\\n    _this.toneMapping = NoToneMapping;\\n    renderObjects(opaqueObjects, scene, camera);\\n    _this.toneMapping = currentToneMapping;\\n    textures.updateMultisampleRenderTarget(_transmissionRenderTarget);\\n    textures.updateRenderTargetMipmap(_transmissionRenderTarget);\\n    _this.setRenderTarget(currentRenderTarget);\\n  }\\n  function renderObjects(renderList, scene, camera) {\\n    const overrideMaterial = scene.isScene === true ? scene.overrideMaterial : null;\\n    for (let i = 0, l = renderList.length; i < l; i++) {\\n      const renderItem = renderList[i];\\n      const object = renderItem.object;\\n      const geometry = renderItem.geometry;\\n      const material = overrideMaterial === null ? renderItem.material : overrideMaterial;\\n      const group = renderItem.group;\\n      if (object.layers.test(camera.layers)) {\\n        renderObject(object, scene, camera, geometry, material, group);\\n      }\\n    }\\n  }\\n  function renderObject(object, scene, camera, geometry, material, group) {\\n    object.onBeforeRender(_this, scene, camera, geometry, material, group);\\n    object.modelViewMatrix.multiplyMatrices(camera.matrixWorldInverse, object.matrixWorld);\\n    object.normalMatrix.getNormalMatrix(object.modelViewMatrix);\\n    material.onBeforeRender(_this, scene, camera, geometry, object, group);\\n    if (object.isImmediateRenderObject) {\\n      const program = setProgram(camera, scene, geometry, material, object);\\n      state.setMaterial(material);\\n      bindingStates.reset();\\n      renderObjectImmediate(object, program);\\n    } else {\\n      if (material.transparent === true && material.side === DoubleSide) {\\n        material.side = BackSide;\\n        material.needsUpdate = true;\\n        _this.renderBufferDirect(camera, scene, geometry, material, object, group);\\n        material.side = FrontSide;\\n        material.needsUpdate = true;\\n        _this.renderBufferDirect(camera, scene, geometry, material, object, group);\\n        material.side = DoubleSide;\\n      } else {\\n        _this.renderBufferDirect(camera, scene, geometry, material, object, group);\\n      }\\n    }\\n    object.onAfterRender(_this, scene, camera, geometry, material, group);\\n  }\\n  function getProgram(material, scene, object) {\\n    if (scene.isScene !== true)\\n      scene = _emptyScene;\\n    const materialProperties = properties.get(material);\\n    const lights = currentRenderState.state.lights;\\n    const shadowsArray = currentRenderState.state.shadowsArray;\\n    const lightsStateVersion = lights.state.version;\\n    const parameters2 = programCache.getParameters(material, lights.state, shadowsArray, scene, object);\\n    const programCacheKey = programCache.getProgramCacheKey(parameters2);\\n    let programs = materialProperties.programs;\\n    materialProperties.environment = material.isMeshStandardMaterial ? scene.environment : null;\\n    materialProperties.fog = scene.fog;\\n    materialProperties.envMap = (material.isMeshStandardMaterial ? cubeuvmaps : cubemaps).get(material.envMap || materialProperties.environment);\\n    if (programs === void 0) {\\n      material.addEventListener(\\\\\\\"dispose\\\\\\\", onMaterialDispose);\\n      programs = new Map();\\n      materialProperties.programs = programs;\\n    }\\n    let program = programs.get(programCacheKey);\\n    if (program !== void 0) {\\n      if (materialProperties.currentProgram === program && materialProperties.lightsStateVersion === lightsStateVersion) {\\n        updateCommonMaterialProperties(material, parameters2);\\n        return program;\\n      }\\n    } else {\\n      parameters2.uniforms = programCache.getUniforms(material);\\n      material.onBuild(parameters2, _this);\\n      material.onBeforeCompile(parameters2, _this);\\n      program = programCache.acquireProgram(parameters2, programCacheKey);\\n      programs.set(programCacheKey, program);\\n      materialProperties.uniforms = parameters2.uniforms;\\n    }\\n    const uniforms = materialProperties.uniforms;\\n    if (!material.isShaderMaterial && !material.isRawShaderMaterial || material.clipping === true) {\\n      uniforms.clippingPlanes = clipping.uniform;\\n    }\\n    updateCommonMaterialProperties(material, parameters2);\\n    materialProperties.needsLights = materialNeedsLights(material);\\n    materialProperties.lightsStateVersion = lightsStateVersion;\\n    if (materialProperties.needsLights) {\\n      uniforms.ambientLightColor.value = lights.state.ambient;\\n      uniforms.lightProbe.value = lights.state.probe;\\n      uniforms.directionalLights.value = lights.state.directional;\\n      uniforms.directionalLightShadows.value = lights.state.directionalShadow;\\n      uniforms.spotLights.value = lights.state.spot;\\n      uniforms.spotLightShadows.value = lights.state.spotShadow;\\n      uniforms.rectAreaLights.value = lights.state.rectArea;\\n      uniforms.ltc_1.value = lights.state.rectAreaLTC1;\\n      uniforms.ltc_2.value = lights.state.rectAreaLTC2;\\n      uniforms.pointLights.value = lights.state.point;\\n      uniforms.pointLightShadows.value = lights.state.pointShadow;\\n      uniforms.hemisphereLights.value = lights.state.hemi;\\n      uniforms.directionalShadowMap.value = lights.state.directionalShadowMap;\\n      uniforms.directionalShadowMatrix.value = lights.state.directionalShadowMatrix;\\n      uniforms.spotShadowMap.value = lights.state.spotShadowMap;\\n      uniforms.spotShadowMatrix.value = lights.state.spotShadowMatrix;\\n      uniforms.pointShadowMap.value = lights.state.pointShadowMap;\\n      uniforms.pointShadowMatrix.value = lights.state.pointShadowMatrix;\\n    }\\n    const progUniforms = program.getUniforms();\\n    const uniformsList = WebGLUniforms.seqWithValue(progUniforms.seq, uniforms);\\n    materialProperties.currentProgram = program;\\n    materialProperties.uniformsList = uniformsList;\\n    return program;\\n  }\\n  function updateCommonMaterialProperties(material, parameters2) {\\n    const materialProperties = properties.get(material);\\n    materialProperties.outputEncoding = parameters2.outputEncoding;\\n    materialProperties.instancing = parameters2.instancing;\\n    materialProperties.skinning = parameters2.skinning;\\n    materialProperties.morphTargets = parameters2.morphTargets;\\n    materialProperties.morphNormals = parameters2.morphNormals;\\n    materialProperties.morphTargetsCount = parameters2.morphTargetsCount;\\n    materialProperties.numClippingPlanes = parameters2.numClippingPlanes;\\n    materialProperties.numIntersection = parameters2.numClipIntersection;\\n    materialProperties.vertexAlphas = parameters2.vertexAlphas;\\n    materialProperties.vertexTangents = parameters2.vertexTangents;\\n  }\\n  function setProgram(camera, scene, geometry, material, object) {\\n    if (scene.isScene !== true)\\n      scene = _emptyScene;\\n    textures.resetTextureUnits();\\n    const fog = scene.fog;\\n    const environment = material.isMeshStandardMaterial ? scene.environment : null;\\n    const encoding = _currentRenderTarget === null ? _this.outputEncoding : _currentRenderTarget.texture.encoding;\\n    const envMap = (material.isMeshStandardMaterial ? cubeuvmaps : cubemaps).get(material.envMap || environment);\\n    const vertexAlphas = material.vertexColors === true && !!geometry && !!geometry.attributes.color && geometry.attributes.color.itemSize === 4;\\n    const vertexTangents = !!material.normalMap && !!geometry && !!geometry.attributes.tangent;\\n    const morphTargets = !!geometry && !!geometry.morphAttributes.position;\\n    const morphNormals = !!geometry && !!geometry.morphAttributes.normal;\\n    const morphTargetsCount = !!geometry && !!geometry.morphAttributes.position ? geometry.morphAttributes.position.length : 0;\\n    const materialProperties = properties.get(material);\\n    const lights = currentRenderState.state.lights;\\n    if (_clippingEnabled === true) {\\n      if (_localClippingEnabled === true || camera !== _currentCamera) {\\n        const useCache = camera === _currentCamera && material.id === _currentMaterialId;\\n        clipping.setState(material, camera, useCache);\\n      }\\n    }\\n    let needsProgramChange = false;\\n    if (material.version === materialProperties.__version) {\\n      if (materialProperties.needsLights && materialProperties.lightsStateVersion !== lights.state.version) {\\n        needsProgramChange = true;\\n      } else if (materialProperties.outputEncoding !== encoding) {\\n        needsProgramChange = true;\\n      } else if (object.isInstancedMesh && materialProperties.instancing === false) {\\n        needsProgramChange = true;\\n      } else if (!object.isInstancedMesh && materialProperties.instancing === true) {\\n        needsProgramChange = true;\\n      } else if (object.isSkinnedMesh && materialProperties.skinning === false) {\\n        needsProgramChange = true;\\n      } else if (!object.isSkinnedMesh && materialProperties.skinning === true) {\\n        needsProgramChange = true;\\n      } else if (materialProperties.envMap !== envMap) {\\n        needsProgramChange = true;\\n      } else if (material.fog && materialProperties.fog !== fog) {\\n        needsProgramChange = true;\\n      } else if (materialProperties.numClippingPlanes !== void 0 && (materialProperties.numClippingPlanes !== clipping.numPlanes || materialProperties.numIntersection !== clipping.numIntersection)) {\\n        needsProgramChange = true;\\n      } else if (materialProperties.vertexAlphas !== vertexAlphas) {\\n        needsProgramChange = true;\\n      } else if (materialProperties.vertexTangents !== vertexTangents) {\\n        needsProgramChange = true;\\n      } else if (materialProperties.morphTargets !== morphTargets) {\\n        needsProgramChange = true;\\n      } else if (materialProperties.morphNormals !== morphNormals) {\\n        needsProgramChange = true;\\n      } else if (capabilities.isWebGL2 === true && materialProperties.morphTargetsCount !== morphTargetsCount) {\\n        needsProgramChange = true;\\n      }\\n    } else {\\n      needsProgramChange = true;\\n      materialProperties.__version = material.version;\\n    }\\n    let program = materialProperties.currentProgram;\\n    if (needsProgramChange === true) {\\n      program = getProgram(material, scene, object);\\n    }\\n    let refreshProgram = false;\\n    let refreshMaterial = false;\\n    let refreshLights = false;\\n    const p_uniforms = program.getUniforms(), m_uniforms = materialProperties.uniforms;\\n    if (state.useProgram(program.program)) {\\n      refreshProgram = true;\\n      refreshMaterial = true;\\n      refreshLights = true;\\n    }\\n    if (material.id !== _currentMaterialId) {\\n      _currentMaterialId = material.id;\\n      refreshMaterial = true;\\n    }\\n    if (refreshProgram || _currentCamera !== camera) {\\n      p_uniforms.setValue(_gl, \\\\\\\"projectionMatrix\\\\\\\", camera.projectionMatrix);\\n      if (capabilities.logarithmicDepthBuffer) {\\n        p_uniforms.setValue(_gl, \\\\\\\"logDepthBufFC\\\\\\\", 2 / (Math.log(camera.far + 1) / Math.LN2));\\n      }\\n      if (_currentCamera !== camera) {\\n        _currentCamera = camera;\\n        refreshMaterial = true;\\n        refreshLights = true;\\n      }\\n      if (material.isShaderMaterial || material.isMeshPhongMaterial || material.isMeshToonMaterial || material.isMeshStandardMaterial || material.envMap) {\\n        const uCamPos = p_uniforms.map.cameraPosition;\\n        if (uCamPos !== void 0) {\\n          uCamPos.setValue(_gl, _vector32.setFromMatrixPosition(camera.matrixWorld));\\n        }\\n      }\\n      if (material.isMeshPhongMaterial || material.isMeshToonMaterial || material.isMeshLambertMaterial || material.isMeshBasicMaterial || material.isMeshStandardMaterial || material.isShaderMaterial) {\\n        p_uniforms.setValue(_gl, \\\\\\\"isOrthographic\\\\\\\", camera.isOrthographicCamera === true);\\n      }\\n      if (material.isMeshPhongMaterial || material.isMeshToonMaterial || material.isMeshLambertMaterial || material.isMeshBasicMaterial || material.isMeshStandardMaterial || material.isShaderMaterial || material.isShadowMaterial || object.isSkinnedMesh) {\\n        p_uniforms.setValue(_gl, \\\\\\\"viewMatrix\\\\\\\", camera.matrixWorldInverse);\\n      }\\n    }\\n    if (object.isSkinnedMesh) {\\n      p_uniforms.setOptional(_gl, object, \\\\\\\"bindMatrix\\\\\\\");\\n      p_uniforms.setOptional(_gl, object, \\\\\\\"bindMatrixInverse\\\\\\\");\\n      const skeleton = object.skeleton;\\n      if (skeleton) {\\n        if (capabilities.floatVertexTextures) {\\n          if (skeleton.boneTexture === null)\\n            skeleton.computeBoneTexture();\\n          p_uniforms.setValue(_gl, \\\\\\\"boneTexture\\\\\\\", skeleton.boneTexture, textures);\\n          p_uniforms.setValue(_gl, \\\\\\\"boneTextureSize\\\\\\\", skeleton.boneTextureSize);\\n        } else {\\n          p_uniforms.setOptional(_gl, skeleton, \\\\\\\"boneMatrices\\\\\\\");\\n        }\\n      }\\n    }\\n    if (!!geometry && (geometry.morphAttributes.position !== void 0 || geometry.morphAttributes.normal !== void 0)) {\\n      morphtargets.update(object, geometry, material, program);\\n    }\\n    if (refreshMaterial || materialProperties.receiveShadow !== object.receiveShadow) {\\n      materialProperties.receiveShadow = object.receiveShadow;\\n      p_uniforms.setValue(_gl, \\\\\\\"receiveShadow\\\\\\\", object.receiveShadow);\\n    }\\n    if (refreshMaterial) {\\n      p_uniforms.setValue(_gl, \\\\\\\"toneMappingExposure\\\\\\\", _this.toneMappingExposure);\\n      if (materialProperties.needsLights) {\\n        markUniformsLightsNeedsUpdate(m_uniforms, refreshLights);\\n      }\\n      if (fog && material.fog) {\\n        materials2.refreshFogUniforms(m_uniforms, fog);\\n      }\\n      materials2.refreshMaterialUniforms(m_uniforms, material, _pixelRatio, _height, _transmissionRenderTarget);\\n      WebGLUniforms.upload(_gl, materialProperties.uniformsList, m_uniforms, textures);\\n    }\\n    if (material.isShaderMaterial && material.uniformsNeedUpdate === true) {\\n      WebGLUniforms.upload(_gl, materialProperties.uniformsList, m_uniforms, textures);\\n      material.uniformsNeedUpdate = false;\\n    }\\n    if (material.isSpriteMaterial) {\\n      p_uniforms.setValue(_gl, \\\\\\\"center\\\\\\\", object.center);\\n    }\\n    p_uniforms.setValue(_gl, \\\\\\\"modelViewMatrix\\\\\\\", object.modelViewMatrix);\\n    p_uniforms.setValue(_gl, \\\\\\\"normalMatrix\\\\\\\", object.normalMatrix);\\n    p_uniforms.setValue(_gl, \\\\\\\"modelMatrix\\\\\\\", object.matrixWorld);\\n    return program;\\n  }\\n  function markUniformsLightsNeedsUpdate(uniforms, value) {\\n    uniforms.ambientLightColor.needsUpdate = value;\\n    uniforms.lightProbe.needsUpdate = value;\\n    uniforms.directionalLights.needsUpdate = value;\\n    uniforms.directionalLightShadows.needsUpdate = value;\\n    uniforms.pointLights.needsUpdate = value;\\n    uniforms.pointLightShadows.needsUpdate = value;\\n    uniforms.spotLights.needsUpdate = value;\\n    uniforms.spotLightShadows.needsUpdate = value;\\n    uniforms.rectAreaLights.needsUpdate = value;\\n    uniforms.hemisphereLights.needsUpdate = value;\\n  }\\n  function materialNeedsLights(material) {\\n    return material.isMeshLambertMaterial || material.isMeshToonMaterial || material.isMeshPhongMaterial || material.isMeshStandardMaterial || material.isShadowMaterial || material.isShaderMaterial && material.lights === true;\\n  }\\n  this.getActiveCubeFace = function() {\\n    return _currentActiveCubeFace;\\n  };\\n  this.getActiveMipmapLevel = function() {\\n    return _currentActiveMipmapLevel;\\n  };\\n  this.getRenderTarget = function() {\\n    return _currentRenderTarget;\\n  };\\n  this.setRenderTarget = function(renderTarget, activeCubeFace = 0, activeMipmapLevel = 0) {\\n    _currentRenderTarget = renderTarget;\\n    _currentActiveCubeFace = activeCubeFace;\\n    _currentActiveMipmapLevel = activeMipmapLevel;\\n    if (renderTarget && properties.get(renderTarget).__webglFramebuffer === void 0) {\\n      textures.setupRenderTarget(renderTarget);\\n    }\\n    let framebuffer = null;\\n    let isCube = false;\\n    let isRenderTarget3D = false;\\n    if (renderTarget) {\\n      const texture = renderTarget.texture;\\n      if (texture.isDataTexture3D || texture.isDataTexture2DArray) {\\n        isRenderTarget3D = true;\\n      }\\n      const __webglFramebuffer = properties.get(renderTarget).__webglFramebuffer;\\n      if (renderTarget.isWebGLCubeRenderTarget) {\\n        framebuffer = __webglFramebuffer[activeCubeFace];\\n        isCube = true;\\n      } else if (renderTarget.isWebGLMultisampleRenderTarget) {\\n        framebuffer = properties.get(renderTarget).__webglMultisampledFramebuffer;\\n      } else {\\n        framebuffer = __webglFramebuffer;\\n      }\\n      _currentViewport.copy(renderTarget.viewport);\\n      _currentScissor.copy(renderTarget.scissor);\\n      _currentScissorTest = renderTarget.scissorTest;\\n    } else {\\n      _currentViewport.copy(_viewport).multiplyScalar(_pixelRatio).floor();\\n      _currentScissor.copy(_scissor).multiplyScalar(_pixelRatio).floor();\\n      _currentScissorTest = _scissorTest;\\n    }\\n    const framebufferBound = state.bindFramebuffer(_gl.FRAMEBUFFER, framebuffer);\\n    if (framebufferBound && capabilities.drawBuffers) {\\n      let needsUpdate = false;\\n      if (renderTarget) {\\n        if (renderTarget.isWebGLMultipleRenderTargets) {\\n          const textures2 = renderTarget.texture;\\n          if (_currentDrawBuffers.length !== textures2.length || _currentDrawBuffers[0] !== _gl.COLOR_ATTACHMENT0) {\\n            for (let i = 0, il = textures2.length; i < il; i++) {\\n              _currentDrawBuffers[i] = _gl.COLOR_ATTACHMENT0 + i;\\n            }\\n            _currentDrawBuffers.length = textures2.length;\\n            needsUpdate = true;\\n          }\\n        } else {\\n          if (_currentDrawBuffers.length !== 1 || _currentDrawBuffers[0] !== _gl.COLOR_ATTACHMENT0) {\\n            _currentDrawBuffers[0] = _gl.COLOR_ATTACHMENT0;\\n            _currentDrawBuffers.length = 1;\\n            needsUpdate = true;\\n          }\\n        }\\n      } else {\\n        if (_currentDrawBuffers.length !== 1 || _currentDrawBuffers[0] !== _gl.BACK) {\\n          _currentDrawBuffers[0] = _gl.BACK;\\n          _currentDrawBuffers.length = 1;\\n          needsUpdate = true;\\n        }\\n      }\\n      if (needsUpdate) {\\n        if (capabilities.isWebGL2) {\\n          _gl.drawBuffers(_currentDrawBuffers);\\n        } else {\\n          extensions.get(\\\\\\\"WEBGL_draw_buffers\\\\\\\").drawBuffersWEBGL(_currentDrawBuffers);\\n        }\\n      }\\n    }\\n    state.viewport(_currentViewport);\\n    state.scissor(_currentScissor);\\n    state.setScissorTest(_currentScissorTest);\\n    if (isCube) {\\n      const textureProperties = properties.get(renderTarget.texture);\\n      _gl.framebufferTexture2D(_gl.FRAMEBUFFER, _gl.COLOR_ATTACHMENT0, _gl.TEXTURE_CUBE_MAP_POSITIVE_X + activeCubeFace, textureProperties.__webglTexture, activeMipmapLevel);\\n    } else if (isRenderTarget3D) {\\n      const textureProperties = properties.get(renderTarget.texture);\\n      const layer = activeCubeFace || 0;\\n      _gl.framebufferTextureLayer(_gl.FRAMEBUFFER, _gl.COLOR_ATTACHMENT0, textureProperties.__webglTexture, activeMipmapLevel || 0, layer);\\n    }\\n    _currentMaterialId = -1;\\n  };\\n  this.readRenderTargetPixels = function(renderTarget, x, y, width, height, buffer, activeCubeFaceIndex) {\\n    if (!(renderTarget && renderTarget.isWebGLRenderTarget)) {\\n      console.error(\\\\\\\"THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.\\\\\\\");\\n      return;\\n    }\\n    let framebuffer = properties.get(renderTarget).__webglFramebuffer;\\n    if (renderTarget.isWebGLCubeRenderTarget && activeCubeFaceIndex !== void 0) {\\n      framebuffer = framebuffer[activeCubeFaceIndex];\\n    }\\n    if (framebuffer) {\\n      state.bindFramebuffer(_gl.FRAMEBUFFER, framebuffer);\\n      try {\\n        const texture = renderTarget.texture;\\n        const textureFormat = texture.format;\\n        const textureType = texture.type;\\n        if (textureFormat !== RGBAFormat && utils.convert(textureFormat) !== _gl.getParameter(_gl.IMPLEMENTATION_COLOR_READ_FORMAT)) {\\n          console.error(\\\\\\\"THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in RGBA or implementation defined format.\\\\\\\");\\n          return;\\n        }\\n        const halfFloatSupportedByExt = textureType === HalfFloatType && (extensions.has(\\\\\\\"EXT_color_buffer_half_float\\\\\\\") || capabilities.isWebGL2 && extensions.has(\\\\\\\"EXT_color_buffer_float\\\\\\\"));\\n        if (textureType !== UnsignedByteType && utils.convert(textureType) !== _gl.getParameter(_gl.IMPLEMENTATION_COLOR_READ_TYPE) && !(textureType === FloatType && (capabilities.isWebGL2 || extensions.has(\\\\\\\"OES_texture_float\\\\\\\") || extensions.has(\\\\\\\"WEBGL_color_buffer_float\\\\\\\"))) && !halfFloatSupportedByExt) {\\n          console.error(\\\\\\\"THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in UnsignedByteType or implementation defined type.\\\\\\\");\\n          return;\\n        }\\n        if (_gl.checkFramebufferStatus(_gl.FRAMEBUFFER) === _gl.FRAMEBUFFER_COMPLETE) {\\n          if (x >= 0 && x <= renderTarget.width - width && (y >= 0 && y <= renderTarget.height - height)) {\\n            _gl.readPixels(x, y, width, height, utils.convert(textureFormat), utils.convert(textureType), buffer);\\n          }\\n        } else {\\n          console.error(\\\\\\\"THREE.WebGLRenderer.readRenderTargetPixels: readPixels from renderTarget failed. Framebuffer not complete.\\\\\\\");\\n        }\\n      } finally {\\n        const framebuffer2 = _currentRenderTarget !== null ? properties.get(_currentRenderTarget).__webglFramebuffer : null;\\n        state.bindFramebuffer(_gl.FRAMEBUFFER, framebuffer2);\\n      }\\n    }\\n  };\\n  this.copyFramebufferToTexture = function(position, texture, level = 0) {\\n    const levelScale = Math.pow(2, -level);\\n    const width = Math.floor(texture.image.width * levelScale);\\n    const height = Math.floor(texture.image.height * levelScale);\\n    let glFormat = utils.convert(texture.format);\\n    if (capabilities.isWebGL2) {\\n      if (glFormat === _gl.RGB)\\n        glFormat = _gl.RGB8;\\n      if (glFormat === _gl.RGBA)\\n        glFormat = _gl.RGBA8;\\n    }\\n    textures.setTexture2D(texture, 0);\\n    _gl.copyTexImage2D(_gl.TEXTURE_2D, level, glFormat, position.x, position.y, width, height, 0);\\n    state.unbindTexture();\\n  };\\n  this.copyTextureToTexture = function(position, srcTexture, dstTexture, level = 0) {\\n    const width = srcTexture.image.width;\\n    const height = srcTexture.image.height;\\n    const glFormat = utils.convert(dstTexture.format);\\n    const glType = utils.convert(dstTexture.type);\\n    textures.setTexture2D(dstTexture, 0);\\n    _gl.pixelStorei(_gl.UNPACK_FLIP_Y_WEBGL, dstTexture.flipY);\\n    _gl.pixelStorei(_gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL, dstTexture.premultiplyAlpha);\\n    _gl.pixelStorei(_gl.UNPACK_ALIGNMENT, dstTexture.unpackAlignment);\\n    if (srcTexture.isDataTexture) {\\n      _gl.texSubImage2D(_gl.TEXTURE_2D, level, position.x, position.y, width, height, glFormat, glType, srcTexture.image.data);\\n    } else {\\n      if (srcTexture.isCompressedTexture) {\\n        _gl.compressedTexSubImage2D(_gl.TEXTURE_2D, level, position.x, position.y, srcTexture.mipmaps[0].width, srcTexture.mipmaps[0].height, glFormat, srcTexture.mipmaps[0].data);\\n      } else {\\n        _gl.texSubImage2D(_gl.TEXTURE_2D, level, position.x, position.y, glFormat, glType, srcTexture.image);\\n      }\\n    }\\n    if (level === 0 && dstTexture.generateMipmaps)\\n      _gl.generateMipmap(_gl.TEXTURE_2D);\\n    state.unbindTexture();\\n  };\\n  this.copyTextureToTexture3D = function(sourceBox, position, srcTexture, dstTexture, level = 0) {\\n    if (_this.isWebGL1Renderer) {\\n      console.warn(\\\\\\\"THREE.WebGLRenderer.copyTextureToTexture3D: can only be used with WebGL2.\\\\\\\");\\n      return;\\n    }\\n    const width = sourceBox.max.x - sourceBox.min.x + 1;\\n    const height = sourceBox.max.y - sourceBox.min.y + 1;\\n    const depth2 = sourceBox.max.z - sourceBox.min.z + 1;\\n    const glFormat = utils.convert(dstTexture.format);\\n    const glType = utils.convert(dstTexture.type);\\n    let glTarget;\\n    if (dstTexture.isDataTexture3D) {\\n      textures.setTexture3D(dstTexture, 0);\\n      glTarget = _gl.TEXTURE_3D;\\n    } else if (dstTexture.isDataTexture2DArray) {\\n      textures.setTexture2DArray(dstTexture, 0);\\n      glTarget = _gl.TEXTURE_2D_ARRAY;\\n    } else {\\n      console.warn(\\\\\\\"THREE.WebGLRenderer.copyTextureToTexture3D: only supports THREE.DataTexture3D and THREE.DataTexture2DArray.\\\\\\\");\\n      return;\\n    }\\n    _gl.pixelStorei(_gl.UNPACK_FLIP_Y_WEBGL, dstTexture.flipY);\\n    _gl.pixelStorei(_gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL, dstTexture.premultiplyAlpha);\\n    _gl.pixelStorei(_gl.UNPACK_ALIGNMENT, dstTexture.unpackAlignment);\\n    const unpackRowLen = _gl.getParameter(_gl.UNPACK_ROW_LENGTH);\\n    const unpackImageHeight = _gl.getParameter(_gl.UNPACK_IMAGE_HEIGHT);\\n    const unpackSkipPixels = _gl.getParameter(_gl.UNPACK_SKIP_PIXELS);\\n    const unpackSkipRows = _gl.getParameter(_gl.UNPACK_SKIP_ROWS);\\n    const unpackSkipImages = _gl.getParameter(_gl.UNPACK_SKIP_IMAGES);\\n    const image = srcTexture.isCompressedTexture ? srcTexture.mipmaps[0] : srcTexture.image;\\n    _gl.pixelStorei(_gl.UNPACK_ROW_LENGTH, image.width);\\n    _gl.pixelStorei(_gl.UNPACK_IMAGE_HEIGHT, image.height);\\n    _gl.pixelStorei(_gl.UNPACK_SKIP_PIXELS, sourceBox.min.x);\\n    _gl.pixelStorei(_gl.UNPACK_SKIP_ROWS, sourceBox.min.y);\\n    _gl.pixelStorei(_gl.UNPACK_SKIP_IMAGES, sourceBox.min.z);\\n    if (srcTexture.isDataTexture || srcTexture.isDataTexture3D) {\\n      _gl.texSubImage3D(glTarget, level, position.x, position.y, position.z, width, height, depth2, glFormat, glType, image.data);\\n    } else {\\n      if (srcTexture.isCompressedTexture) {\\n        console.warn(\\\\\\\"THREE.WebGLRenderer.copyTextureToTexture3D: untested support for compressed srcTexture.\\\\\\\");\\n        _gl.compressedTexSubImage3D(glTarget, level, position.x, position.y, position.z, width, height, depth2, glFormat, image.data);\\n      } else {\\n        _gl.texSubImage3D(glTarget, level, position.x, position.y, position.z, width, height, depth2, glFormat, glType, image);\\n      }\\n    }\\n    _gl.pixelStorei(_gl.UNPACK_ROW_LENGTH, unpackRowLen);\\n    _gl.pixelStorei(_gl.UNPACK_IMAGE_HEIGHT, unpackImageHeight);\\n    _gl.pixelStorei(_gl.UNPACK_SKIP_PIXELS, unpackSkipPixels);\\n    _gl.pixelStorei(_gl.UNPACK_SKIP_ROWS, unpackSkipRows);\\n    _gl.pixelStorei(_gl.UNPACK_SKIP_IMAGES, unpackSkipImages);\\n    if (level === 0 && dstTexture.generateMipmaps)\\n      _gl.generateMipmap(glTarget);\\n    state.unbindTexture();\\n  };\\n  this.initTexture = function(texture) {\\n    textures.setTexture2D(texture, 0);\\n    state.unbindTexture();\\n  };\\n  this.resetState = function() {\\n    _currentActiveCubeFace = 0;\\n    _currentActiveMipmapLevel = 0;\\n    _currentRenderTarget = null;\\n    state.reset();\\n    bindingStates.reset();\\n  };\\n  if (typeof __THREE_DEVTOOLS__ !== \\\\\\\"undefined\\\\\\\") {\\n    __THREE_DEVTOOLS__.dispatchEvent(new CustomEvent(\\\\\\\"observe\\\\\\\", {detail: this}));\\n  }\\n}\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/poly/RenderersController.ts\\nvar CONTEXT_OPTIONS = {};\\nvar WebGLContext;\\n(function(WebGLContext2) {\\n  WebGLContext2[\\\\\\\"WEBGL\\\\\\\"] = \\\\\\\"webgl\\\\\\\";\\n  WebGLContext2[\\\\\\\"WEBGL2\\\\\\\"] = \\\\\\\"webgl2\\\\\\\";\\n  WebGLContext2[\\\\\\\"EXPERIMENTAL_WEBGL\\\\\\\"] = \\\\\\\"experimental-webgl\\\\\\\";\\n  WebGLContext2[\\\\\\\"EXPERIMENTAL_WEBGL2\\\\\\\"] = \\\\\\\"experimental-webgl2\\\\\\\";\\n})(WebGLContext || (WebGLContext = {}));\\nvar RenderersController = class {\\n  constructor() {\\n    this._next_renderer_id = 0;\\n    this._renderers = {};\\n    this._printDebug = false;\\n    this._require_webgl2 = false;\\n    this._resolves = [];\\n  }\\n  setPrintDebug(state = true) {\\n    this._printDebug = state;\\n  }\\n  printDebug() {\\n    return this._printDebug;\\n  }\\n  printDebugMessage(message) {\\n    if (!this._printDebug) {\\n      return;\\n    }\\n    console.warn(\\\\\\\"[Poly debug]\\\\\\\", message);\\n  }\\n  setRequireWebGL2() {\\n    if (!this._require_webgl2) {\\n      this._require_webgl2 = true;\\n    }\\n  }\\n  webgl2Available() {\\n    if (this._webgl2_available === void 0) {\\n      this._webgl2_available = this._set_webgl2_available();\\n    }\\n    return this._webgl2_available;\\n  }\\n  _set_webgl2_available() {\\n    const canvas = document.createElement(\\\\\\\"canvas\\\\\\\");\\n    return (window.WebGL2RenderingContext && canvas.getContext(WebGLContext.WEBGL2)) != null;\\n  }\\n  createWebGLRenderer(params) {\\n    const renderer = new WebGLRenderer(params);\\n    this.printDebugMessage([`create renderer:`, params]);\\n    return renderer;\\n  }\\n  createRenderingContext(canvas) {\\n    let gl = null;\\n    if (this._require_webgl2) {\\n      gl = this._getRenderingContextWebgl(canvas, true);\\n      if (!gl) {\\n        console.warn(\\\\\\\"failed to create webgl2 context\\\\\\\");\\n      }\\n    }\\n    if (!gl) {\\n      gl = this._getRenderingContextWebgl(canvas, false);\\n    }\\n    return gl;\\n  }\\n  _getRenderingContextWebgl(canvas, webgl2) {\\n    let context_name;\\n    if (this.webgl2Available()) {\\n      context_name = WebGLContext.WEBGL2;\\n    } else {\\n      context_name = webgl2 ? WebGLContext.WEBGL2 : WebGLContext.WEBGL;\\n    }\\n    let gl = canvas.getContext(context_name, CONTEXT_OPTIONS);\\n    if (gl) {\\n      this.printDebugMessage(`create gl context: ${context_name}.`);\\n    } else {\\n      context_name = webgl2 ? WebGLContext.EXPERIMENTAL_WEBGL2 : WebGLContext.EXPERIMENTAL_WEBGL;\\n      this.printDebugMessage(`create gl context: ${context_name}.`);\\n      gl = canvas.getContext(context_name, CONTEXT_OPTIONS);\\n    }\\n    return gl;\\n  }\\n  registerRenderer(renderer) {\\n    if (renderer._polygon_id) {\\n      throw new Error(\\\\\\\"render already registered\\\\\\\");\\n    }\\n    renderer._polygon_id = this._next_renderer_id += 1;\\n    this._renderers[renderer._polygon_id] = renderer;\\n    if (Object.keys(this._renderers).length == 1) {\\n      this.flush_callbacks_with_renderer(renderer);\\n    }\\n  }\\n  deregisterRenderer(renderer) {\\n    delete this._renderers[renderer._polygon_id];\\n    renderer.dispose();\\n  }\\n  firstRenderer() {\\n    const first_id = Object.keys(this._renderers)[0];\\n    if (first_id) {\\n      return this._renderers[first_id];\\n    }\\n    return null;\\n  }\\n  renderers() {\\n    return Object.values(this._renderers);\\n  }\\n  flush_callbacks_with_renderer(renderer) {\\n    let callback;\\n    while (callback = this._resolves.pop()) {\\n      callback(renderer);\\n    }\\n  }\\n  async waitForRenderer() {\\n    const renderer = this.firstRenderer();\\n    if (renderer) {\\n      return renderer;\\n    } else {\\n      return new Promise((resolve, reject) => {\\n        this._resolves.push(resolve);\\n      });\\n    }\\n  }\\n  renderTarget(width, height, parameters) {\\n    if (this.webgl2Available()) {\\n      return new WebGLMultisampleRenderTarget(width, height, parameters);\\n    } else {\\n      return new WebGLRenderTarget(width, height, parameters);\\n    }\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/poly/PolyLibsController.ts\\nvar PolyLibsController = class {\\n  constructor() {\\n    this._root = \\\\\\\"/three/js/libs\\\\\\\";\\n    this._BASISPath = \\\\\\\"/basis\\\\\\\";\\n    this._DRACOPath = \\\\\\\"/draco\\\\\\\";\\n    this._DRACOGLTFPath = \\\\\\\"/draco/gltf\\\\\\\";\\n  }\\n  root() {\\n    return this._root;\\n  }\\n  setRoot(url) {\\n    this._root = url;\\n  }\\n  BASISPath() {\\n    return this._BASISPath;\\n  }\\n  DRACOPath() {\\n    return this._DRACOPath;\\n  }\\n  DRACOGLTFPath() {\\n    return this._DRACOGLTFPath;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/poly/registers/nodes/NodesRegister.ts\\nvar NodesRegister = class {\\n  constructor(poly) {\\n    this.poly = poly;\\n    this._node_register = new Map();\\n    this._node_register_categories = new Map();\\n    this._node_register_options = new Map();\\n  }\\n  static type(node) {\\n    return this.filterType(node.type());\\n  }\\n  static filterType(nodeType) {\\n    return nodeType.toLowerCase();\\n  }\\n  register(node, tab_menu_category, options) {\\n    const context = node.context();\\n    const nodeType = NodesRegister.type(node);\\n    let current_nodes_for_context = this._node_register.get(context);\\n    if (!current_nodes_for_context) {\\n      current_nodes_for_context = new Map();\\n      this._node_register.set(context, current_nodes_for_context);\\n    }\\n    const already_registered_node = current_nodes_for_context.get(nodeType);\\n    if (already_registered_node) {\\n      console.error(`node ${context}/${nodeType} already registered`);\\n      return;\\n    }\\n    current_nodes_for_context.set(nodeType, node);\\n    if (tab_menu_category) {\\n      let current_categories = this._node_register_categories.get(context);\\n      if (!current_categories) {\\n        current_categories = new Map();\\n        this._node_register_categories.set(context, current_categories);\\n      }\\n      current_categories.set(nodeType, tab_menu_category);\\n    }\\n    if (options) {\\n      let current_options = this._node_register_options.get(context);\\n      if (!current_options) {\\n        current_options = new Map();\\n        this._node_register_options.set(context, current_options);\\n      }\\n      current_options.set(nodeType, options);\\n    }\\n    this.poly.pluginsRegister.registerNode(node);\\n  }\\n  deregister(context, nodeType) {\\n    nodeType = NodesRegister.filterType(nodeType);\\n    this._node_register.get(context)?.delete(nodeType);\\n    this._node_register_categories.get(context)?.delete(nodeType);\\n    this._node_register_options.get(context)?.delete(nodeType);\\n  }\\n  isRegistered(context, nodeType) {\\n    const nodes_for_context = this._node_register.get(context);\\n    if (!nodes_for_context) {\\n      return false;\\n    }\\n    nodeType = NodesRegister.filterType(nodeType);\\n    return nodes_for_context.get(nodeType) != null;\\n  }\\n  nodeOptions(context, nodeType) {\\n    nodeType = NodesRegister.filterType(nodeType);\\n    return this._node_register_options.get(context)?.get(nodeType);\\n  }\\n  registeredNodesForContextAndParentType(context, parent_node_type) {\\n    const map = this._node_register.get(context);\\n    if (map) {\\n      const nodes_for_context = [];\\n      this._node_register.get(context)?.forEach((node, type) => {\\n        nodes_for_context.push(node);\\n      });\\n      return nodes_for_context.filter((node) => {\\n        const nodeType = NodesRegister.type(node);\\n        const options = this._node_register_options.get(context)?.get(nodeType);\\n        if (!options) {\\n          return true;\\n        } else {\\n          const option_only = options[\\\\\\\"only\\\\\\\"];\\n          const option_except = options[\\\\\\\"except\\\\\\\"];\\n          const context_and_type = `${context}/${parent_node_type}`;\\n          if (option_only) {\\n            return option_only.includes(context_and_type);\\n          }\\n          if (option_except) {\\n            return !option_except.includes(context_and_type);\\n          }\\n          return true;\\n        }\\n      });\\n    } else {\\n      return [];\\n    }\\n  }\\n  registeredNodes(context, parentNodeType) {\\n    const nodesByType = {};\\n    const nodes = this.registeredNodesForContextAndParentType(context, parentNodeType);\\n    for (let node of nodes) {\\n      const nodeType = NodesRegister.type(node);\\n      nodesByType[nodeType] = node;\\n    }\\n    return nodesByType;\\n  }\\n  registeredCategory(context, nodeType) {\\n    nodeType = NodesRegister.filterType(nodeType);\\n    return this._node_register_categories.get(context)?.get(nodeType);\\n  }\\n  map() {\\n    return this._node_register;\\n  }\\n};\\nvar OperationsRegister = class {\\n  constructor(poly) {\\n    this.poly = poly;\\n    this._operation_register = new Map();\\n  }\\n  static type(node) {\\n    return this.filterType(node.type());\\n  }\\n  static filterType(nodeType) {\\n    return nodeType.toLowerCase();\\n  }\\n  register(operation) {\\n    const context = operation.context();\\n    let current_operations_for_context = this._operation_register.get(context);\\n    if (!current_operations_for_context) {\\n      current_operations_for_context = new Map();\\n      this._operation_register.set(context, current_operations_for_context);\\n    }\\n    const operationType = OperationsRegister.type(operation);\\n    const already_registered_operation = current_operations_for_context.get(operationType);\\n    if (already_registered_operation) {\\n      const message = `operation ${context}/${operationType} already registered`;\\n      console.error(message);\\n      return;\\n    }\\n    current_operations_for_context.set(operationType, operation);\\n    this.poly.pluginsRegister.registerOperation(operation);\\n  }\\n  registeredOperationsForContextAndParentType(context, parentNodeType) {\\n    const map = this._operation_register.get(context);\\n    if (map) {\\n      const nodes_for_context = [];\\n      this._operation_register.get(context)?.forEach((operation, type) => {\\n        nodes_for_context.push(operation);\\n      });\\n      return nodes_for_context;\\n    } else {\\n      return [];\\n    }\\n  }\\n  registeredOperation(context, operationType) {\\n    const current_operations_for_context = this._operation_register.get(context);\\n    if (current_operations_for_context) {\\n      operationType = OperationsRegister.filterType(operationType);\\n      return current_operations_for_context.get(operationType);\\n    }\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/poly/registers/expressions/_BaseRegister.ts\\nvar BaseExpressionRegister = class {\\n  constructor() {\\n    this._methods_names = [];\\n    this._methods_by_name = new Map();\\n  }\\n  register(expression, name) {\\n    this._methods_names.push(name);\\n    this._methods_by_name.set(name, expression);\\n  }\\n  getMethod(name) {\\n    return this._methods_by_name.get(name);\\n  }\\n  availableMethods() {\\n    return this._methods_names;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/poly/registers/expressions/ExpressionRegister.ts\\nvar ExpressionRegister = class extends BaseExpressionRegister {\\n  getMethod(name) {\\n    return super.getMethod(name);\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/poly/registers/modules/_BaseRegister.ts\\nvar BaseModulesRegister = class {\\n  constructor() {\\n    this._module_by_name = new Map();\\n  }\\n  register(name, module) {\\n    this._module_by_name.set(name, module);\\n  }\\n  moduleNames() {\\n    const list = [];\\n    this._module_by_name.forEach((module, moduleName) => {\\n      list.push(moduleName);\\n    });\\n    return list;\\n  }\\n  module(moduleName) {\\n    return this._module_by_name.get(moduleName);\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/poly/registers/modules/DynamicModulesRegister.ts\\nvar DynamicModulesRegister = class extends BaseModulesRegister {\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/poly/registers/assemblers/_BaseRegister.ts\\nvar AssemblerName;\\n(function(AssemblerName3) {\\n  AssemblerName3[\\\\\\\"GL_MESH_BASIC\\\\\\\"] = \\\\\\\"GL_MESH_BASIC\\\\\\\";\\n  AssemblerName3[\\\\\\\"GL_MESH_LAMBERT\\\\\\\"] = \\\\\\\"GL_MESH_LAMBERT\\\\\\\";\\n  AssemblerName3[\\\\\\\"GL_MESH_STANDARD\\\\\\\"] = \\\\\\\"GL_MESH_STANDARD\\\\\\\";\\n  AssemblerName3[\\\\\\\"GL_MESH_PHONG\\\\\\\"] = \\\\\\\"GL_MESH_PHONG\\\\\\\";\\n  AssemblerName3[\\\\\\\"GL_MESH_PHYSICAL\\\\\\\"] = \\\\\\\"GL_MESH_PHYSICAL\\\\\\\";\\n  AssemblerName3[\\\\\\\"GL_PARTICLES\\\\\\\"] = \\\\\\\"GL_PARTICLES\\\\\\\";\\n  AssemblerName3[\\\\\\\"GL_POINTS\\\\\\\"] = \\\\\\\"GL_POINTS\\\\\\\";\\n  AssemblerName3[\\\\\\\"GL_LINE\\\\\\\"] = \\\\\\\"GL_LINE\\\\\\\";\\n  AssemblerName3[\\\\\\\"GL_TEXTURE\\\\\\\"] = \\\\\\\"GL_TEXTURE\\\\\\\";\\n  AssemblerName3[\\\\\\\"GL_VOLUME\\\\\\\"] = \\\\\\\"GL_VOLUME\\\\\\\";\\n})(AssemblerName || (AssemblerName = {}));\\nvar BaseAssemblersRegister = class {\\n  constructor() {\\n    this._controller_assembler_by_name = new Map();\\n  }\\n  register(name, controller, assembler) {\\n    this._controller_assembler_by_name.set(name, {\\n      controller,\\n      assembler\\n    });\\n  }\\n  unregister(name) {\\n    this._controller_assembler_by_name.delete(name);\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/poly/registers/assemblers/AssemblersRegistry.ts\\nvar AssemblersRegister = class extends BaseAssemblersRegister {\\n  assembler(node, name) {\\n    const pair = this._controller_assembler_by_name.get(name);\\n    if (pair) {\\n      const controller = pair.controller;\\n      const assembler = pair.assembler;\\n      return new controller(node, assembler);\\n    }\\n    return pair;\\n  }\\n  unregister(name) {\\n    const pair = this._controller_assembler_by_name.get(name);\\n    super.unregister(name);\\n    return pair;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/poly/registers/plugins/PluginsRegister.ts\\nvar PluginsRegister = class {\\n  constructor(poly) {\\n    this.poly = poly;\\n    this._plugins_by_name = new Map();\\n    this._plugin_name_by_node_context_by_type = new Map();\\n    this._plugin_name_by_operation_context_by_type = new Map();\\n  }\\n  register(plugin) {\\n    this._current_plugin = plugin;\\n    this._plugins_by_name.set(plugin.name(), plugin);\\n    plugin.init(this.poly);\\n    this._current_plugin = void 0;\\n  }\\n  pluginByName(pluginName) {\\n    return this._plugins_by_name.get(pluginName);\\n  }\\n  registerNode(node) {\\n    if (!this._current_plugin) {\\n      return;\\n    }\\n    const context = node.context();\\n    const type = node.type();\\n    let map_for_context = this._plugin_name_by_node_context_by_type.get(context);\\n    if (!map_for_context) {\\n      map_for_context = new Map();\\n      this._plugin_name_by_node_context_by_type.set(context, map_for_context);\\n    }\\n    map_for_context.set(type, this._current_plugin.name());\\n  }\\n  registerOperation(operation) {\\n    if (!this._current_plugin) {\\n      return;\\n    }\\n    const context = operation.context();\\n    const type = operation.type();\\n    let map_for_context = this._plugin_name_by_operation_context_by_type.get(context);\\n    if (!map_for_context) {\\n      map_for_context = new Map();\\n      this._plugin_name_by_operation_context_by_type.set(context, map_for_context);\\n    }\\n    map_for_context.set(type, this._current_plugin.name());\\n  }\\n  toJson() {\\n    const data = {\\n      plugins: {},\\n      nodes: {},\\n      operations: {}\\n    };\\n    this._plugins_by_name.forEach((plugin, name) => {\\n      data.plugins[name] = plugin.toJSON();\\n    });\\n    this._plugin_name_by_node_context_by_type.forEach((map_for_context, context) => {\\n      data.nodes[context] = {};\\n      map_for_context.forEach((plugin_name, type) => {\\n        data.nodes[context][type] = plugin_name;\\n      });\\n    });\\n    this._plugin_name_by_operation_context_by_type.forEach((map_for_context, context) => {\\n      data.operations[context] = {};\\n      map_for_context.forEach((plugin_name, type) => {\\n        data.operations[context][type] = plugin_name;\\n      });\\n    });\\n    return data;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/poly/registers/cameras/CamerasRegister.ts\\nvar CamerasRegister = class {\\n  constructor(poly) {\\n    this._camera_types = [];\\n  }\\n  register(node) {\\n    const node_type = node.type();\\n    if (!this._camera_types.includes(node_type)) {\\n      this._camera_types.push(node_type);\\n    }\\n  }\\n  registeredTypes() {\\n    return this._camera_types;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/core/BlobUtils.ts\\nfunction createObjectURL(fileOrBlob) {\\n  const urlCreator = window.URL || window.webkitURL;\\n  return urlCreator.createObjectURL(fileOrBlob);\\n}\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/poly/BlobsController.ts\\nvar BlobsController = class {\\n  constructor() {\\n    this._blobUrlsByStoredUrl = new Map();\\n    this._blobsByStoredUrl = new Map();\\n    this._blobDataByNodeId = new Map();\\n    this._globalBlobsByStoredUrl = new Map();\\n  }\\n  registerBlobUrl(data) {\\n    if (!Poly.playerMode()) {\\n      return;\\n    }\\n    this._blobUrlsByStoredUrl.set(data.storedUrl, data.blobUrl);\\n  }\\n  deregisterUrl(url) {\\n    this._blobUrlsByStoredUrl.delete(url);\\n  }\\n  blobUrl(storedUrl) {\\n    return this._blobUrlsByStoredUrl.get(storedUrl);\\n  }\\n  clear() {\\n    this._blobUrlsByStoredUrl.clear();\\n    this._blobsByStoredUrl.clear();\\n    this._blobDataByNodeId.clear();\\n  }\\n  _clearBlobForNode(node) {\\n    const blobData = this._blobDataByNodeId.get(node.graphNodeId());\\n    if (blobData) {\\n      this._blobsByStoredUrl.delete(blobData.storedUrl);\\n      this._blobUrlsByStoredUrl.delete(blobData.storedUrl);\\n    }\\n    this._blobDataByNodeId.delete(node.graphNodeId());\\n  }\\n  _assignBlobToNode(node, blobData) {\\n    this._clearBlobForNode(node);\\n    this._blobDataByNodeId.set(node.graphNodeId(), {\\n      storedUrl: blobData.storedUrl,\\n      fullUrl: blobData.fullUrl\\n    });\\n  }\\n  async fetchBlobGlobal(options) {\\n    if (Poly.playerMode()) {\\n      return {};\\n    }\\n    try {\\n      const existingBlob = this._blobUrlsByStoredUrl.get(options.storedUrl);\\n      if (existingBlob) {\\n        return {};\\n      }\\n      const remapedUrl = Poly.assetUrls.remapedUrl(options.fullUrl);\\n      const response = await fetch(remapedUrl || options.fullUrl);\\n      if (response.ok) {\\n        const blob = await response.blob();\\n        this._blobsByStoredUrl.set(options.storedUrl, blob);\\n        this._blobUrlsByStoredUrl.set(options.storedUrl, this.createBlobUrl(blob));\\n        this._globalBlobsByStoredUrl.set(options.storedUrl, blob);\\n        return {\\n          blobData: {\\n            storedUrl: options.storedUrl,\\n            fullUrl: options.fullUrl\\n          }\\n        };\\n      } else {\\n        return {error: `failed to fetch ${options.fullUrl}`};\\n      }\\n    } catch (err) {\\n      return {error: `failed to fetch ${options.fullUrl}`};\\n    }\\n  }\\n  async fetchBlobForNode(options) {\\n    if (Poly.playerMode()) {\\n      return {};\\n    }\\n    try {\\n      const existingBlob = this._blobUrlsByStoredUrl.get(options.storedUrl);\\n      if (existingBlob) {\\n        return {};\\n      }\\n      const remapedUrl = Poly.assetUrls.remapedUrl(options.fullUrl);\\n      const response = await fetch(remapedUrl || options.fullUrl);\\n      if (response.ok) {\\n        const blob = await response.blob();\\n        this._blobsByStoredUrl.set(options.storedUrl, blob);\\n        this._blobUrlsByStoredUrl.set(options.storedUrl, this.createBlobUrl(blob));\\n        this._scene = options.node.scene();\\n        this._assignBlobToNode(options.node, {\\n          storedUrl: options.storedUrl,\\n          fullUrl: options.fullUrl\\n        });\\n        return {\\n          blobData: {\\n            storedUrl: options.storedUrl,\\n            fullUrl: options.fullUrl\\n          }\\n        };\\n      } else {\\n        return {error: `failed to fetch ${options.fullUrl}`};\\n      }\\n    } catch (err) {\\n      return {error: `failed to fetch ${options.fullUrl}`};\\n    }\\n  }\\n  forEachBlob(callback) {\\n    this._blobDataByNodeId.forEach((blobData, nodeGraphNodeId) => {\\n      if (this._scene) {\\n        const node = this._scene.graph.nodeFromId(nodeGraphNodeId);\\n        if (node) {\\n          const {storedUrl} = blobData;\\n          const blob = this._blobsByStoredUrl.get(storedUrl);\\n          if (blob) {\\n            callback(blob, storedUrl);\\n          }\\n        }\\n      }\\n    });\\n    let storedUrls = [];\\n    const blobsByStoreUrl = new Map();\\n    this._globalBlobsByStoredUrl.forEach((blob, storedUrl) => {\\n      storedUrls.push(storedUrl);\\n      blobsByStoreUrl.set(storedUrl, blob);\\n    });\\n    storedUrls = storedUrls.sort();\\n    storedUrls.forEach((storedUrl) => {\\n      const blob = this._globalBlobsByStoredUrl.get(storedUrl);\\n      if (blob) {\\n        callback(blob, storedUrl);\\n      }\\n    });\\n  }\\n  createBlobUrl(blob) {\\n    return createObjectURL(blob);\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/poly/AssetUrlsController.ts\\nvar AssetUrlsController = class {\\n  setMap(map) {\\n    this._map = map;\\n  }\\n  remapedUrl(url) {\\n    if (!this._map) {\\n      return;\\n    }\\n    const elements = url.split(\\\\\\\"?\\\\\\\");\\n    const preQuery = elements[0];\\n    const query = elements[1];\\n    const remapedUrl = this._map[preQuery];\\n    if (remapedUrl) {\\n      if (query) {\\n        return `${remapedUrl}?${query}`;\\n      } else {\\n        return remapedUrl;\\n      }\\n    }\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/core/DomEffects.ts\\nvar DomEffects = class {\\n  static fadeOut(element) {\\n    return new Promise((resolve) => {\\n      const fadeEffect = setInterval(() => {\\n        if (!element.style.opacity) {\\n          element.style.opacity = \\\\\\\"1\\\\\\\";\\n        }\\n        const opacity = parseFloat(element.style.opacity);\\n        if (opacity > 0) {\\n          element.style.opacity = `${opacity - 0.05}`;\\n        } else {\\n          resolve();\\n          clearInterval(fadeEffect);\\n        }\\n      }, 20);\\n    });\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/io/self_contained/Common.ts\\nvar SelfContainedFileName;\\n(function(SelfContainedFileName2) {\\n  SelfContainedFileName2[\\\\\\\"CODE\\\\\\\"] = \\\\\\\"code.json\\\\\\\";\\n  SelfContainedFileName2[\\\\\\\"EDITOR\\\\\\\"] = \\\\\\\"editor.json\\\\\\\";\\n  SelfContainedFileName2[\\\\\\\"ASSETS\\\\\\\"] = \\\\\\\"assets.json\\\\\\\";\\n  SelfContainedFileName2[\\\\\\\"POLYGONJS\\\\\\\"] = \\\\\\\"js/all.js\\\\\\\";\\n  SelfContainedFileName2[\\\\\\\"POLY_CONFIG\\\\\\\"] = \\\\\\\"js/polyConfig.js\\\\\\\";\\n  SelfContainedFileName2[\\\\\\\"JS_FILES\\\\\\\"] = \\\\\\\"js_files.json\\\\\\\";\\n  SelfContainedFileName2[\\\\\\\"POSTER\\\\\\\"] = \\\\\\\"poster.png\\\\\\\";\\n})(SelfContainedFileName || (SelfContainedFileName = {}));\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/poly/SelfContainedSceneLoader.ts\\nvar SelfContainedScenesLoader = class {\\n  markAsLoaded(callback, sceneJsonImporterContructor) {\\n    this._sceneJsonImporterContructor = sceneJsonImporterContructor;\\n    callback();\\n  }\\n  load(map) {\\n    if (!this._sceneJsonImporterContructor) {\\n      return;\\n    }\\n    const elements = [];\\n    map.forEach((data, element) => {\\n      elements.push(element);\\n    });\\n    for (let element of elements) {\\n      const data = map.get(element);\\n      if (data) {\\n        this._loadElement(element, data, this._sceneJsonImporterContructor);\\n        map.delete(element);\\n      }\\n    }\\n  }\\n  async _loadElement(element, viewerData, sceneJsonImporterContructor) {\\n    const {sceneData, assetsManifest, unzippedData} = viewerData;\\n    const storedUrls = Object.keys(assetsManifest);\\n    for (let storedUrl of storedUrls) {\\n      const assetUrl = assetsManifest[storedUrl];\\n      const assetUintArray = unzippedData[`assets/${assetUrl}`];\\n      if (!assetUintArray) {\\n        console.error(storedUrl, assetUintArray);\\n        return;\\n      }\\n      const assetBlob = new Blob([assetUintArray]);\\n      const blobUrl = Poly.blobs.createBlobUrl(assetBlob);\\n      const blobUrlData = {\\n        storedUrl,\\n        blobUrl\\n      };\\n      Poly.blobs.registerBlobUrl(blobUrlData);\\n    }\\n    Poly.setPlayerMode(true);\\n    Poly.libs.setRoot(null);\\n    const polyConfigId = `${Math.random()}`.replace(\\\\\\\".\\\\\\\", \\\\\\\"_\\\\\\\");\\n    const ids = {\\n      Poly: `___POLY_polyConfig_configurePolygonjs_${polyConfigId}`,\\n      scriptElementId: `___POLY_polyConfig_scriptElement_${polyConfigId}`,\\n      loadSceneArgs: `___POLY_polyConfig_loadSceneArgs_${polyConfigId}`\\n    };\\n    window[ids.Poly] = Poly;\\n    const method = this._loadScene.bind(this);\\n    const loadSceneArgs = {\\n      method,\\n      element,\\n      sceneData,\\n      sceneJsonImporterContructor\\n    };\\n    window[ids.loadSceneArgs] = loadSceneArgs;\\n    const polyConfigLoaded = this._loadPolyConfig(ids, unzippedData);\\n    if (polyConfigLoaded) {\\n      return;\\n    }\\n    this._loadScene(element, sceneData, sceneJsonImporterContructor);\\n  }\\n  _loadPolyConfig(ids, unzippedData) {\\n    const polyConfigArray = unzippedData[SelfContainedFileName.POLY_CONFIG];\\n    if (!polyConfigArray) {\\n      return false;\\n    }\\n    const polyConfigUrl = this._createJsBlob(polyConfigArray, \\\\\\\"polyConfig\\\\\\\");\\n    let script = document.getElementById(ids.scriptElementId);\\n    const lines = [];\\n    lines.push(`import {configurePolygonjs, configureScene} from '${polyConfigUrl}';`);\\n    lines.push(`configurePolygonjs(window.${ids.Poly});`);\\n    lines.push(`window.${ids.loadSceneArgs}.method(window.${ids.loadSceneArgs}.element, window.${ids.loadSceneArgs}.sceneData, window.${ids.loadSceneArgs}.sceneJsonImporterContructor, configureScene);`);\\n    lines.push(`delete window.${ids.loadSceneArgs};`);\\n    if (!script) {\\n      script = document.createElement(\\\\\\\"script\\\\\\\");\\n      script.setAttribute(\\\\\\\"type\\\\\\\", \\\\\\\"module\\\\\\\");\\n      script.text = lines.join(\\\\\\\"\\\\n\\\\\\\");\\n      document.body.append(script);\\n    }\\n    return true;\\n  }\\n  async _loadScene(element, sceneData, sceneJsonImporterContructor, configureScene2) {\\n    this._fadeOutPoster(element);\\n    const importer = new sceneJsonImporterContructor(sceneData);\\n    const scene = await importer.scene();\\n    if (configureScene2) {\\n      configureScene2(scene);\\n    }\\n    const cameraNode = scene.mainCameraNode();\\n    if (!cameraNode) {\\n      console.warn(\\\\\\\"no master camera found\\\\\\\");\\n      return;\\n    }\\n    const viewer = cameraNode.createViewer(element);\\n    scene.play();\\n    element.scene = scene;\\n    element.viewer = viewer;\\n  }\\n  _fadeOutPoster(element) {\\n    const posterElement = element.firstElementChild;\\n    if (posterElement) {\\n      posterElement.style.pointerEvents = \\\\\\\"none\\\\\\\";\\n      DomEffects.fadeOut(posterElement).then(() => {\\n        posterElement.parentElement?.removeChild(posterElement);\\n      });\\n    }\\n  }\\n  _createJsBlob(array, filename) {\\n    const blob = new Blob([array]);\\n    const file = new File([blob], `${filename}.js`, {type: \\\\\\\"application/javascript\\\\\\\"});\\n    return createObjectURL(file);\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/poly/PerformanceController.ts\\nvar PolyPerformanceformanceController = class {\\n  setPerformanceManager(p) {\\n    this._performanceManager = p;\\n  }\\n  performanceManager() {\\n    return this._performanceManager || window.performance;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/Poly.ts\\nvar PolyEngine = class {\\n  constructor() {\\n    this.renderersController = new RenderersController();\\n    this.nodesRegister = new NodesRegister(this);\\n    this.operationsRegister = new OperationsRegister(this);\\n    this.expressionsRegister = new ExpressionRegister();\\n    this.modulesRegister = new DynamicModulesRegister();\\n    this.assemblersRegister = new AssemblersRegister();\\n    this.pluginsRegister = new PluginsRegister(this);\\n    this.camerasRegister = new CamerasRegister(this);\\n    this.blobs = new BlobsController();\\n    this.assetUrls = new AssetUrlsController();\\n    this.selfContainedScenesLoader = new SelfContainedScenesLoader();\\n    this.performance = new PolyPerformanceformanceController();\\n    this.scenesByUuid = {};\\n    this._player_mode = true;\\n    this._logger = null;\\n  }\\n  static _instance_() {\\n    if (window.__POLYGONJS_POLY_INSTANCE__) {\\n      return window.__POLYGONJS_POLY_INSTANCE__;\\n    } else {\\n      const instance = new PolyEngine();\\n      window.__POLYGONJS_POLY_INSTANCE__ = instance;\\n      return window.__POLYGONJS_POLY_INSTANCE__;\\n    }\\n  }\\n  setPlayerMode(mode) {\\n    this._player_mode = mode;\\n  }\\n  playerMode() {\\n    return this._player_mode;\\n  }\\n  registerNode(node, tab_menu_category, options) {\\n    this.nodesRegister.register(node, tab_menu_category, options);\\n  }\\n  registerOperation(operation) {\\n    this.operationsRegister.register(operation);\\n  }\\n  registerCamera(node) {\\n    this.camerasRegister.register(node);\\n  }\\n  registerPlugin(plugin) {\\n    this.pluginsRegister.register(plugin);\\n  }\\n  registeredNodes(parent_context, type) {\\n    return this.nodesRegister.registeredNodes(parent_context, type);\\n  }\\n  registeredOperation(parent_context, operation_type) {\\n    return this.operationsRegister.registeredOperation(parent_context, operation_type);\\n  }\\n  registeredCameraTypes() {\\n    return this.camerasRegister.registeredTypes();\\n  }\\n  inWorkerThread() {\\n    return false;\\n  }\\n  desktopController() {\\n  }\\n  get libs() {\\n    return this._libs_controller = this._libs_controller || new PolyLibsController();\\n  }\\n  setEnv(env) {\\n    this._env = env;\\n  }\\n  env() {\\n    return this._env;\\n  }\\n  setLogger(logger) {\\n    this._logger = logger;\\n  }\\n  log(message, ...optionalParams) {\\n    this._logger?.log(...[message, ...optionalParams]);\\n  }\\n  warn(message, ...optionalParams) {\\n    this._logger?.warn(...[message, ...optionalParams]);\\n  }\\n  error(message, ...optionalParams) {\\n    this._logger?.error(...[message, ...optionalParams]);\\n  }\\n};\\nvar Poly = PolyEngine._instance_();\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/core/graph/DirtyController.ts\\nvar DirtyController = class {\\n  constructor(node) {\\n    this.node = node;\\n    this._dirty_count = 0;\\n    this._dirty = true;\\n  }\\n  dispose() {\\n    this._cached_successors = void 0;\\n    this._post_dirty_hooks = void 0;\\n    this._post_dirty_hook_names = void 0;\\n  }\\n  isDirty() {\\n    return this._dirty === true;\\n  }\\n  dirtyTimestamp() {\\n    return this._dirty_timestamp;\\n  }\\n  dirtyCount() {\\n    return this._dirty_count;\\n  }\\n  addPostDirtyHook(name, method) {\\n    this._post_dirty_hook_names = this._post_dirty_hook_names || [];\\n    this._post_dirty_hooks = this._post_dirty_hooks || [];\\n    if (!this._post_dirty_hook_names.includes(name)) {\\n      this._post_dirty_hook_names.push(name);\\n      this._post_dirty_hooks.push(method);\\n    } else {\\n      console.warn(`hook with name ${name} already exists`, this.node);\\n    }\\n  }\\n  removePostDirtyHook(name) {\\n    if (this._post_dirty_hook_names && this._post_dirty_hooks) {\\n      const index = this._post_dirty_hook_names.indexOf(name);\\n      if (index >= 0) {\\n        this._post_dirty_hook_names.splice(index, 1);\\n        this._post_dirty_hooks.splice(index, 1);\\n      }\\n    }\\n  }\\n  hasHook(name) {\\n    if (this._post_dirty_hook_names) {\\n      return this._post_dirty_hook_names.includes(name);\\n    }\\n    return false;\\n  }\\n  removeDirtyState() {\\n    this._dirty = false;\\n  }\\n  setForbiddenTriggerNodes(nodes) {\\n    this._forbidden_trigger_nodes = nodes.map((n) => n.graphNodeId());\\n  }\\n  setDirty(original_trigger_graph_node, propagate) {\\n    if (propagate == null) {\\n      propagate = true;\\n    }\\n    if (original_trigger_graph_node && this._forbidden_trigger_nodes && this._forbidden_trigger_nodes.includes(original_trigger_graph_node.graphNodeId())) {\\n      return;\\n    }\\n    if (original_trigger_graph_node == null) {\\n      original_trigger_graph_node = this.node;\\n    }\\n    this._dirty = true;\\n    const performance2 = Poly.performance.performanceManager();\\n    this._dirty_timestamp = performance2.now();\\n    this._dirty_count += 1;\\n    this.runPostDirtyHooks(original_trigger_graph_node);\\n    if (propagate === true) {\\n      this.setSuccessorsDirty(original_trigger_graph_node);\\n    }\\n  }\\n  runPostDirtyHooks(original_trigger_graph_node) {\\n    if (this._post_dirty_hooks) {\\n      const cooker = this.node.scene().cooker;\\n      if (cooker.blocked) {\\n        cooker.enqueue(this.node, original_trigger_graph_node);\\n      } else {\\n        for (let hook of this._post_dirty_hooks) {\\n          hook(original_trigger_graph_node);\\n        }\\n      }\\n    }\\n  }\\n  setSuccessorsDirty(original_trigger_graph_node) {\\n    const propagate = false;\\n    this._cached_successors = this._cached_successors || this.node.graphAllSuccessors();\\n    for (let successor of this._cached_successors) {\\n      successor.dirtyController.setDirty(original_trigger_graph_node, propagate);\\n    }\\n  }\\n  clearSuccessorsCache() {\\n    this._cached_successors = void 0;\\n  }\\n  clearSuccessorsCacheWithPredecessors() {\\n    this.clearSuccessorsCache();\\n    for (let predecessor of this.node.graphAllPredecessors()) {\\n      predecessor.dirtyController.clearSuccessorsCache();\\n    }\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/core/graph/CoreGraphNode.ts\\nvar CoreGraphNode = class {\\n  constructor(_scene, _name) {\\n    this._scene = _scene;\\n    this._name = _name;\\n    this._dirty_controller = new DirtyController(this);\\n    this._graph_node_id = _scene.graph.nextId();\\n    _scene.graph.addNode(this);\\n    this._graph = _scene.graph;\\n  }\\n  dispose() {\\n    this._dirty_controller.dispose();\\n    this.graphRemove();\\n  }\\n  name() {\\n    return this._name;\\n  }\\n  setName(name) {\\n    this._name = name;\\n  }\\n  scene() {\\n    return this._scene;\\n  }\\n  graphNodeId() {\\n    return this._graph_node_id;\\n  }\\n  get dirtyController() {\\n    return this._dirty_controller;\\n  }\\n  setDirty(trigger) {\\n    trigger = trigger || this;\\n    this._dirty_controller.setDirty(trigger);\\n  }\\n  setSuccessorsDirty(trigger) {\\n    this._dirty_controller.setSuccessorsDirty(trigger);\\n  }\\n  removeDirtyState() {\\n    this._dirty_controller.removeDirtyState();\\n  }\\n  isDirty() {\\n    return this._dirty_controller.isDirty();\\n  }\\n  addPostDirtyHook(name, callback) {\\n    this._dirty_controller.addPostDirtyHook(name, callback);\\n  }\\n  graphRemove() {\\n    this._graph.removeNode(this);\\n  }\\n  addGraphInput(src, check_if_graph_has_cycle = true) {\\n    return this._graph.connect(src, this, check_if_graph_has_cycle);\\n  }\\n  removeGraphInput(src) {\\n    this._graph.disconnect(src, this);\\n  }\\n  graphDisconnectPredecessors() {\\n    this._graph.disconnectPredecessors(this);\\n  }\\n  graphDisconnectSuccessors() {\\n    this._graph.disconnectSuccessors(this);\\n  }\\n  graphPredecessorIds() {\\n    return this._graph.predecessorIds(this._graph_node_id) || [];\\n  }\\n  graphPredecessors() {\\n    return this._graph.predecessors(this);\\n  }\\n  graphSuccessors() {\\n    return this._graph.successors(this);\\n  }\\n  graphAllPredecessors() {\\n    return this._graph.allPredecessors(this);\\n  }\\n  graphAllSuccessors() {\\n    return this._graph.allSuccessors(this);\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/poly/NodeEvent.ts\\nvar NodeEvent;\\n(function(NodeEvent2) {\\n  NodeEvent2[\\\\\\\"CREATED\\\\\\\"] = \\\\\\\"node_created\\\\\\\";\\n  NodeEvent2[\\\\\\\"DELETED\\\\\\\"] = \\\\\\\"node_deleted\\\\\\\";\\n  NodeEvent2[\\\\\\\"NAME_UPDATED\\\\\\\"] = \\\\\\\"node_name_update\\\\\\\";\\n  NodeEvent2[\\\\\\\"OVERRIDE_CLONABLE_STATE_UPDATE\\\\\\\"] = \\\\\\\"node_override_clonable_state_update\\\\\\\";\\n  NodeEvent2[\\\\\\\"NAMED_OUTPUTS_UPDATED\\\\\\\"] = \\\\\\\"node_named_outputs_updated\\\\\\\";\\n  NodeEvent2[\\\\\\\"NAMED_INPUTS_UPDATED\\\\\\\"] = \\\\\\\"node_named_inputs_updated\\\\\\\";\\n  NodeEvent2[\\\\\\\"INPUTS_UPDATED\\\\\\\"] = \\\\\\\"node_inputs_updated\\\\\\\";\\n  NodeEvent2[\\\\\\\"PARAMS_UPDATED\\\\\\\"] = \\\\\\\"node_params_updated\\\\\\\";\\n  NodeEvent2[\\\\\\\"UI_DATA_POSITION_UPDATED\\\\\\\"] = \\\\\\\"node_ui_data_position_updated\\\\\\\";\\n  NodeEvent2[\\\\\\\"UI_DATA_COMMENT_UPDATED\\\\\\\"] = \\\\\\\"node_ui_data_comment_updated\\\\\\\";\\n  NodeEvent2[\\\\\\\"ERROR_UPDATED\\\\\\\"] = \\\\\\\"node_error_updated\\\\\\\";\\n  NodeEvent2[\\\\\\\"FLAG_BYPASS_UPDATED\\\\\\\"] = \\\\\\\"bypass_flag_updated\\\\\\\";\\n  NodeEvent2[\\\\\\\"FLAG_DISPLAY_UPDATED\\\\\\\"] = \\\\\\\"display_flag_updated\\\\\\\";\\n  NodeEvent2[\\\\\\\"FLAG_OPTIMIZE_UPDATED\\\\\\\"] = \\\\\\\"optimize_flag_updated\\\\\\\";\\n  NodeEvent2[\\\\\\\"SELECTION_UPDATED\\\\\\\"] = \\\\\\\"selection_updated\\\\\\\";\\n})(NodeEvent || (NodeEvent = {}));\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/core/Type.ts\\nvar CoreType = class {\\n  static isNumber(value) {\\n    return typeof value == \\\\\\\"number\\\\\\\";\\n  }\\n  static isVector(value) {\\n    return value instanceof Vector2 || value instanceof Vector3 || value instanceof Vector4;\\n  }\\n  static isString(value) {\\n    return typeof value == \\\\\\\"string\\\\\\\";\\n  }\\n  static isBoolean(value) {\\n    return value === true || value === false;\\n  }\\n  static isNaN(value) {\\n    return isNaN(value);\\n  }\\n  static isArray(value) {\\n    return Array.isArray(value);\\n  }\\n  static isObject(value) {\\n    var type = typeof value;\\n    return value != null && (type == \\\\\\\"object\\\\\\\" || type == \\\\\\\"function\\\\\\\");\\n  }\\n};\\nfunction isBooleanTrue(value) {\\n  return value;\\n}\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/UIData.ts\\nvar UIData = class {\\n  constructor(node, x = 0, y = 0) {\\n    this.node = node;\\n    this._position = new Vector2();\\n    this._width = 50;\\n    this._color = new Color(0.75, 0.75, 0.75);\\n    this._layout_vertical = true;\\n    this._json = {\\n      x: 0,\\n      y: 0\\n    };\\n    this._position.x = x;\\n    this._position.y = y;\\n  }\\n  setComment(comment) {\\n    this._comment = comment;\\n    this.node.emit(NodeEvent.UI_DATA_COMMENT_UPDATED);\\n  }\\n  comment() {\\n    return this._comment;\\n  }\\n  setColor(color) {\\n    this._color = color;\\n  }\\n  color() {\\n    return this._color;\\n  }\\n  setLayoutHorizontal() {\\n    this._layout_vertical = false;\\n  }\\n  isLayoutVertical() {\\n    return this._layout_vertical;\\n  }\\n  copy(ui_data) {\\n    this._position.copy(ui_data.position());\\n    this._color.copy(ui_data.color());\\n  }\\n  position() {\\n    return this._position;\\n  }\\n  setPosition(new_position, y = 0) {\\n    if (CoreType.isNumber(new_position)) {\\n      const x = new_position;\\n      this._position.set(x, y);\\n    } else {\\n      this._position.copy(new_position);\\n    }\\n    this.node.emit(NodeEvent.UI_DATA_POSITION_UPDATED);\\n  }\\n  translate(offset, snap = false) {\\n    this._position.add(offset);\\n    if (snap) {\\n      this._position.x = Math.round(this._position.x);\\n      this._position.y = Math.round(this._position.y);\\n    }\\n    this.node.emit(NodeEvent.UI_DATA_POSITION_UPDATED);\\n  }\\n  toJSON() {\\n    this._json.x = this._position.x;\\n    this._json.y = this._position.y;\\n    this._json.comment = this._comment;\\n    return this._json;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/flags/Base.ts\\nvar BaseFlag = class {\\n  constructor(node) {\\n    this.node = node;\\n    this._state = true;\\n    this._hooks = null;\\n  }\\n  onUpdate(hook) {\\n    this._hooks = this._hooks || [];\\n    this._hooks.push(hook);\\n  }\\n  _on_update() {\\n  }\\n  set(new_state) {\\n    if (this._state != new_state) {\\n      this._state = new_state;\\n      this._on_update();\\n      this.runHooks();\\n    }\\n  }\\n  active() {\\n    return this._state;\\n  }\\n  toggle() {\\n    this.set(!this._state);\\n  }\\n  runHooks() {\\n    if (this._hooks) {\\n      for (let hook of this._hooks) {\\n        hook();\\n      }\\n    }\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/flags/Bypass.ts\\nvar BypassFlag = class extends BaseFlag {\\n  constructor() {\\n    super(...arguments);\\n    this._state = false;\\n  }\\n  _on_update() {\\n    this.node.emit(NodeEvent.FLAG_BYPASS_UPDATED);\\n    this.node.setDirty();\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/flags/Display.ts\\nvar DisplayFlag = class extends BaseFlag {\\n  _on_update() {\\n    this.node.emit(NodeEvent.FLAG_DISPLAY_UPDATED);\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/flags/Optimize.ts\\nvar OptimizeFlag = class extends BaseFlag {\\n  constructor() {\\n    super(...arguments);\\n    this._state = false;\\n  }\\n  _on_update() {\\n    this.node.emit(NodeEvent.FLAG_OPTIMIZE_UPDATED);\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/FlagsController.ts\\nvar FlagsController = class {\\n  constructor(node) {\\n    this.node = node;\\n  }\\n  hasDisplay() {\\n    return false;\\n  }\\n  hasBypass() {\\n    return false;\\n  }\\n  hasOptimize() {\\n    return false;\\n  }\\n};\\nfunction Display(Base) {\\n  return class Mixin extends Base {\\n    constructor() {\\n      super(...arguments);\\n      this.display = new DisplayFlag(this.node);\\n    }\\n    hasDisplay() {\\n      return true;\\n    }\\n  };\\n}\\nfunction Bypass(Base) {\\n  return class Mixin extends Base {\\n    constructor() {\\n      super(...arguments);\\n      this.bypass = new BypassFlag(this.node);\\n    }\\n    hasBypass() {\\n      return true;\\n    }\\n  };\\n}\\nfunction Optimize(Base) {\\n  return class Mixin extends Base {\\n    constructor() {\\n      super(...arguments);\\n      this.optimize = new OptimizeFlag(this.node);\\n    }\\n    hasOptimize() {\\n      return true;\\n    }\\n  };\\n}\\nvar FlagsControllerD = class extends Display(FlagsController) {\\n};\\nvar FlagsControllerB = class extends Bypass(FlagsController) {\\n};\\nvar FlagsControllerDB = class extends Bypass(Display(FlagsController)) {\\n};\\nvar FlagsControllerBO = class extends Optimize(Bypass(FlagsController)) {\\n};\\nvar FlagsControllerDBO = class extends Optimize(Bypass(Display(FlagsController))) {\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/states/Base.ts\\nvar BaseState = class {\\n  constructor(node) {\\n    this.node = node;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/states/TimeDependent.ts\\nvar TimeDependentState = class extends BaseState {\\n  active() {\\n    return this.paramsTimeDependent() || this.inputsTimeDependent();\\n  }\\n  paramsTimeDependent() {\\n    const param_names = this.node.params.names;\\n    for (let param_name of param_names) {\\n      const param = this.node.params.get(param_name);\\n      if (param && param.states.timeDependent.active()) {\\n        return true;\\n      }\\n    }\\n    return false;\\n  }\\n  inputsTimeDependent() {\\n    const inputs = this.node.io.inputs.inputs();\\n    for (let input of inputs) {\\n      if (input && input.states.timeDependent.active()) {\\n        return true;\\n      }\\n    }\\n    return false;\\n  }\\n  forceTimeDependent() {\\n    const predecessor_ids = this.node.graphPredecessors().map((n) => n.graphNodeId());\\n    const frame_node = this.node.scene().timeController.graphNode;\\n    if (!predecessor_ids.includes(frame_node.graphNodeId())) {\\n      this.node.addGraphInput(frame_node, false);\\n    }\\n  }\\n  unforceTimeDependent() {\\n    const frame_node = this.node.scene().timeController.graphNode;\\n    this.node.removeGraphInput(frame_node);\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/states/Error.ts\\nvar NodeErrorState = class extends BaseState {\\n  set(message) {\\n    if (this._message != message) {\\n      if (message) {\\n        Poly.error(`[${this.node.path()}] error: '${message}'`);\\n      }\\n      this._message = message;\\n      this.onUpdate();\\n    }\\n  }\\n  message() {\\n    return this._message;\\n  }\\n  clear() {\\n    this.set(void 0);\\n  }\\n  active() {\\n    return this._message != null;\\n  }\\n  onUpdate() {\\n    if (this._message != null) {\\n      this.node._setContainer(null, `from error '${this._message}'`);\\n    }\\n    this.node.emit(NodeEvent.ERROR_UPDATED);\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/StatesController.ts\\nvar StatesController = class {\\n  constructor(node) {\\n    this.node = node;\\n    this.timeDependent = new TimeDependentState(this.node);\\n    this.error = new NodeErrorState(this.node);\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/NameController.ts\\nvar NameController = class {\\n  constructor(node) {\\n    this.node = node;\\n    this._graph_node = new CoreGraphNode(node.scene(), \\\\\\\"node_name_controller\\\\\\\");\\n  }\\n  dispose() {\\n    this._graph_node.dispose();\\n    this._on_set_name_hooks = void 0;\\n    this._on_set_fullPath_hooks = void 0;\\n  }\\n  get graph_node() {\\n    return this._graph_node;\\n  }\\n  static base_name(node) {\\n    let base = node.type();\\n    const last_char = base[base.length - 1];\\n    if (!CoreType.isNaN(parseInt(last_char))) {\\n      base += \\\\\\\"_\\\\\\\";\\n    }\\n    return `${base}1`;\\n  }\\n  requestNameToParent(new_name) {\\n    const parent = this.node.parent();\\n    if (parent && parent.childrenAllowed() && parent.childrenController) {\\n      parent.childrenController.setChildName(this.node, new_name);\\n    } else {\\n      console.warn(\\\\\\\"requestNameToParent failed, no parent found\\\\\\\");\\n    }\\n  }\\n  setName(new_name) {\\n    if (new_name != this.node.name()) {\\n      this.requestNameToParent(new_name);\\n    }\\n  }\\n  updateNameFromParent(new_name) {\\n    this.node._set_core_name(new_name);\\n    this._postSetName();\\n    this.runPostSetFullPathHooks();\\n    if (this.node.childrenAllowed()) {\\n      const children = this.node.childrenController?.children();\\n      if (children) {\\n        for (let child_node of children) {\\n          child_node.nameController.runPostSetFullPathHooks();\\n        }\\n      }\\n    }\\n    if (this.node.lifecycle.creationCompleted()) {\\n      this.node.scene().missingExpressionReferencesController.checkForMissingReferences(this.node);\\n      this.node.scene().expressionsController.regenerateReferringExpressions(this.node);\\n    }\\n    this.node.scene().referencesController.notifyNameUpdated(this.node);\\n    this.node.emit(NodeEvent.NAME_UPDATED);\\n  }\\n  add_post_set_name_hook(hook) {\\n    this._on_set_name_hooks = this._on_set_name_hooks || [];\\n    this._on_set_name_hooks.push(hook);\\n  }\\n  add_post_set_fullPath_hook(hook) {\\n    this._on_set_fullPath_hooks = this._on_set_fullPath_hooks || [];\\n    this._on_set_fullPath_hooks.push(hook);\\n  }\\n  _postSetName() {\\n    if (this._on_set_name_hooks) {\\n      for (let hook of this._on_set_name_hooks) {\\n        hook();\\n      }\\n    }\\n  }\\n  runPostSetFullPathHooks() {\\n    if (this._on_set_fullPath_hooks) {\\n      for (let hook of this._on_set_fullPath_hooks) {\\n        hook();\\n      }\\n    }\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/core/Walker.ts\\nvar TypedNodePathParamValue = class {\\n  constructor(_path = \\\\\\\"\\\\\\\") {\\n    this._path = _path;\\n    this._node = null;\\n  }\\n  set_path(path) {\\n    this._path = path;\\n  }\\n  set_node(node) {\\n    this._node = node;\\n  }\\n  path() {\\n    return this._path;\\n  }\\n  node() {\\n    return this._node;\\n  }\\n  resolve(node_start) {\\n    this._node = CoreWalker.findNode(node_start, this._path);\\n  }\\n  clone() {\\n    const cloned = new TypedNodePathParamValue(this._path);\\n    cloned.set_node(this._node);\\n    return cloned;\\n  }\\n  nodeWithContext(context, error_state) {\\n    const found_node = this.node();\\n    if (!found_node) {\\n      error_state?.set(`no node found at ${this.path()}`);\\n      return;\\n    }\\n    const node_context = found_node.context();\\n    if (node_context == context) {\\n      return found_node;\\n    } else {\\n      error_state?.set(`expected ${context} node, but got a ${node_context}`);\\n      return;\\n    }\\n  }\\n};\\nvar TypedParamPathParamValue = class {\\n  constructor(_path = \\\\\\\"\\\\\\\") {\\n    this._path = _path;\\n    this._param = null;\\n  }\\n  set_path(path) {\\n    this._path = path;\\n  }\\n  set_param(param) {\\n    this._param = param;\\n  }\\n  path() {\\n    return this._path;\\n  }\\n  param() {\\n    return this._param;\\n  }\\n  resolve(node_start) {\\n    this._param = CoreWalker.findParam(node_start, this._path);\\n  }\\n  clone() {\\n    const cloned = new TypedParamPathParamValue(this._path);\\n    cloned.set_param(this._param);\\n    return cloned;\\n  }\\n  paramWithType(paramType, error_state) {\\n    const foundParam = this.param();\\n    if (!foundParam) {\\n      error_state?.set(`no param found at ${this.path()}`);\\n      return;\\n    }\\n    if (foundParam.type() == paramType) {\\n      return foundParam;\\n    } else {\\n      error_state?.set(`expected ${paramType} node, but got a ${foundParam.type()}`);\\n      return;\\n    }\\n  }\\n};\\nvar CoreWalker2 = class {\\n  static split_parent_child(path) {\\n    const elements = path.split(CoreWalker2.SEPARATOR).filter((e) => e.length > 0);\\n    const child_path = elements.pop();\\n    const parent_path = elements.join(CoreWalker2.SEPARATOR);\\n    return {parent: parent_path, child: child_path};\\n  }\\n  static findNode(node_src, path, decomposed_path) {\\n    if (!node_src) {\\n      return null;\\n    }\\n    const elements = path.split(CoreWalker2.SEPARATOR).filter((e) => e.length > 0);\\n    const first_element = elements[0];\\n    let next_node = null;\\n    if (path[0] === CoreWalker2.SEPARATOR) {\\n      const path_from_root = path.substr(1);\\n      next_node = this.findNode(node_src.root(), path_from_root, decomposed_path);\\n    } else {\\n      switch (first_element) {\\n        case CoreWalker2.PARENT:\\n          decomposed_path?.add_path_element(first_element);\\n          next_node = node_src.parent();\\n          break;\\n        case CoreWalker2.CURRENT:\\n          decomposed_path?.add_path_element(first_element);\\n          next_node = node_src;\\n          break;\\n        default:\\n          next_node = node_src.node(first_element);\\n          if (next_node) {\\n            decomposed_path?.add_node(first_element, next_node);\\n          }\\n      }\\n      if (next_node != null && elements.length > 1) {\\n        const remainder = elements.slice(1).join(CoreWalker2.SEPARATOR);\\n        next_node = this.findNode(next_node, remainder, decomposed_path);\\n      }\\n      return next_node;\\n    }\\n    return next_node;\\n  }\\n  static findParam(node_src, path, decomposed_path) {\\n    if (!node_src) {\\n      return null;\\n    }\\n    const elements = path.split(CoreWalker2.SEPARATOR);\\n    if (elements.length === 1) {\\n      return node_src.params.get(elements[0]);\\n    } else {\\n      const node_path = elements.slice(0, +(elements.length - 2) + 1 || void 0).join(CoreWalker2.SEPARATOR);\\n      const node = this.findNode(node_src, node_path, decomposed_path);\\n      if (node != null) {\\n        const param_name = elements[elements.length - 1];\\n        const param = node.params.get(param_name);\\n        if (decomposed_path && param) {\\n          decomposed_path.add_node(param_name, param);\\n        }\\n        return param;\\n      } else {\\n        return null;\\n      }\\n    }\\n  }\\n  static relativePath(src_graph_node, dest_graph_node) {\\n    const parent = this.closestCommonParent(src_graph_node, dest_graph_node);\\n    if (!parent) {\\n      return dest_graph_node.path();\\n    } else {\\n      const distance = this.distanceToParent(src_graph_node, parent);\\n      let up = \\\\\\\"\\\\\\\";\\n      if (distance > 0) {\\n        let i = 0;\\n        const ups = [];\\n        while (i++ < distance) {\\n          ups.push(CoreWalker2.PARENT);\\n        }\\n        up = ups.join(CoreWalker2.SEPARATOR) + CoreWalker2.SEPARATOR;\\n      }\\n      const parent_path_elements = parent.path().split(CoreWalker2.SEPARATOR).filter((e) => e.length > 0);\\n      const dest_path_elements = dest_graph_node.path().split(CoreWalker2.SEPARATOR).filter((e) => e.length > 0);\\n      const remaining_elements = [];\\n      let cmptr = 0;\\n      for (let dest_path_element of dest_path_elements) {\\n        if (!parent_path_elements[cmptr]) {\\n          remaining_elements.push(dest_path_element);\\n        }\\n        cmptr++;\\n      }\\n      const down = remaining_elements.join(CoreWalker2.SEPARATOR);\\n      return `${up}${down}`;\\n    }\\n  }\\n  static closestCommonParent(graph_node1, graph_node2) {\\n    const parents1 = this.parents(graph_node1).reverse().concat([graph_node1]);\\n    const parents2 = this.parents(graph_node2).reverse().concat([graph_node2]);\\n    const min_depth = Math.min(parents1.length, parents2.length);\\n    let found_parent = null;\\n    for (let i = 0; i < min_depth; i++) {\\n      if (parents1[i].graphNodeId() == parents2[i].graphNodeId()) {\\n        found_parent = parents1[i];\\n      }\\n    }\\n    return found_parent;\\n  }\\n  static parents(graph_node) {\\n    const parents = [];\\n    let parent = graph_node.parent();\\n    while (parent) {\\n      parents.push(parent);\\n      parent = parent.parent();\\n    }\\n    return parents;\\n  }\\n  static distanceToParent(graph_node, dest) {\\n    let distance = 0;\\n    let current = graph_node;\\n    const dest_id = dest.graphNodeId();\\n    while (current && current.graphNodeId() != dest_id) {\\n      distance += 1;\\n      current = current.parent();\\n    }\\n    if (current && current.graphNodeId() == dest_id) {\\n      return distance;\\n    } else {\\n      return -1;\\n    }\\n  }\\n  static makeAbsolutePath(nodeSrc, path) {\\n    if (path[0] == CoreWalker2.SEPARATOR) {\\n      return path;\\n    }\\n    const pathElements = path.split(CoreWalker2.SEPARATOR);\\n    const firstElement = pathElements.shift();\\n    if (firstElement) {\\n      switch (firstElement) {\\n        case \\\\\\\"..\\\\\\\": {\\n          const parent = nodeSrc.parent();\\n          if (parent) {\\n            if (parent == nodeSrc.scene().root()) {\\n              return CoreWalker2.SEPARATOR + pathElements.join(CoreWalker2.SEPARATOR);\\n            } else {\\n              return this.makeAbsolutePath(parent, pathElements.join(CoreWalker2.SEPARATOR));\\n            }\\n          } else {\\n            return null;\\n          }\\n        }\\n        case \\\\\\\".\\\\\\\": {\\n          return this.makeAbsolutePath(nodeSrc, pathElements.join(CoreWalker2.SEPARATOR));\\n        }\\n        default: {\\n          return [nodeSrc.path(), path].join(CoreWalker2.SEPARATOR);\\n        }\\n      }\\n    } else {\\n      return nodeSrc.path();\\n    }\\n  }\\n};\\nvar CoreWalker = CoreWalker2;\\nCoreWalker.SEPARATOR = \\\\\\\"/\\\\\\\";\\nCoreWalker.DOT = \\\\\\\".\\\\\\\";\\nCoreWalker.CURRENT = CoreWalker2.DOT;\\nCoreWalker.PARENT = \\\\\\\"..\\\\\\\";\\nCoreWalker.CURRENT_WITH_SLASH = `${CoreWalker2.CURRENT}/`;\\nCoreWalker.PARENT_WITH_SLASH = `${CoreWalker2.PARENT}/`;\\nCoreWalker.NON_LETTER_PREFIXES = [CoreWalker2.SEPARATOR, CoreWalker2.DOT];\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/hierarchy/ParentController.ts\\nvar HierarchyParentController = class {\\n  constructor(node) {\\n    this.node = node;\\n    this._parent = null;\\n  }\\n  parent() {\\n    return this._parent;\\n  }\\n  setParent(parent) {\\n    if (parent != this.node.parentController.parent()) {\\n      this._parent = parent;\\n      if (this._parent) {\\n        this.node.nameController.requestNameToParent(NameController.base_name(this.node));\\n      }\\n    }\\n  }\\n  firstAncestorWithContext(context) {\\n    if (this._parent) {\\n      if (this._parent.context() == context) {\\n        return this._parent;\\n      } else {\\n        return this._parent.parentController.firstAncestorWithContext(context);\\n      }\\n    }\\n    return null;\\n  }\\n  path(relative_to_parent) {\\n    const separator = CoreWalker.SEPARATOR;\\n    if (this._parent != null) {\\n      if (this._parent == relative_to_parent) {\\n        return this.node.name();\\n      } else {\\n        const parent_fullPath = this._parent.path(relative_to_parent);\\n        if (parent_fullPath === separator) {\\n          return parent_fullPath + this.node.name();\\n        } else {\\n          return parent_fullPath + separator + this.node.name();\\n        }\\n      }\\n    } else {\\n      return separator;\\n    }\\n  }\\n  onSetParent() {\\n    if (this._on_set_parent_hooks) {\\n      for (let hook of this._on_set_parent_hooks) {\\n        hook();\\n      }\\n    }\\n  }\\n  findNode(path) {\\n    if (path == null) {\\n      return null;\\n    }\\n    if (path == CoreWalker.CURRENT || path == CoreWalker.CURRENT_WITH_SLASH) {\\n      return this.node;\\n    }\\n    if (path == CoreWalker.PARENT || path == CoreWalker.PARENT_WITH_SLASH) {\\n      return this.node.parent();\\n    }\\n    const separator = CoreWalker.SEPARATOR;\\n    if (path === separator) {\\n      return this.node.scene().root();\\n    }\\n    if (path[0] === separator) {\\n      path = path.substring(1, path.length);\\n      return this.node.scene().root().node(path);\\n    }\\n    if (path.split) {\\n      const elements = path.split(separator);\\n      if (elements.length === 1) {\\n        const name = elements[0];\\n        if (this.node.childrenController) {\\n          return this.node.childrenController.childByName(name);\\n        } else {\\n          return null;\\n        }\\n      } else {\\n        return CoreWalker.findNode(this.node, path);\\n      }\\n    } else {\\n      console.error(\\\\\\\"unexpected path given:\\\\\\\", path);\\n      return null;\\n    }\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/core/MapUtils.ts\\nvar MapUtils = class {\\n  static arrayFromValues(map) {\\n    const array = [];\\n    map.forEach((v) => {\\n      array.push(v);\\n    });\\n    return array;\\n  }\\n  static pushOnArrayAtEntry(map, key, newElement) {\\n    let has_entry = map.has(key);\\n    if (has_entry) {\\n      map.get(key).push(newElement);\\n    } else {\\n      map.set(key, [newElement]);\\n    }\\n  }\\n  static addToSetAtEntry(map, key, newElement) {\\n    let has_entry = map.has(key);\\n    if (has_entry) {\\n      map.get(key).add(newElement);\\n    } else {\\n      const set = new Set();\\n      set.add(newElement);\\n      map.set(key, set);\\n    }\\n  }\\n  static popFromArrayAtEntry(map, key, elementToRemove) {\\n    let has_entry = map.has(key);\\n    if (has_entry) {\\n      const array = map.get(key);\\n      const index = array.indexOf(elementToRemove);\\n      if (index >= 0) {\\n        array.splice(index, 1);\\n      }\\n    }\\n  }\\n  static removeFromSetAtEntry(map, key, elementToRemove) {\\n    let has_entry = map.has(key);\\n    if (has_entry) {\\n      const set = map.get(key);\\n      set.delete(elementToRemove);\\n      if (set.size == 0) {\\n        map.delete(key);\\n      }\\n    }\\n  }\\n  static unshiftOnArrayAtEntry(map, key, newElement) {\\n    let has_entry = map.has(key);\\n    if (has_entry) {\\n      map.get(key).unshift(newElement);\\n    } else {\\n      map.set(key, [newElement]);\\n    }\\n  }\\n  static concatOnArrayAtEntry(map, key, newElements) {\\n    let has_entry = map.has(key);\\n    if (has_entry) {\\n      let array = map.get(key);\\n      for (let element of newElements) {\\n        array.push(element);\\n      }\\n    } else {\\n      map.set(key, newElements);\\n    }\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/core/SetUtils.ts\\nvar SetUtils = class {\\n  static toArray(set) {\\n    const array = [];\\n    set.forEach((elem) => {\\n      array.push(elem);\\n    });\\n    return array;\\n  }\\n  static union(set0, set1) {\\n    const newSet = new Set();\\n    set0.forEach((val) => newSet.add(val));\\n    set1.forEach((val) => newSet.add(val));\\n    return newSet;\\n  }\\n  static intersection(set0, set1) {\\n    const newSet = new Set();\\n    set0.forEach((val) => {\\n      if (set1.has(val)) {\\n        newSet.add(val);\\n      }\\n    });\\n    set1.forEach((val) => {\\n      if (set0.has(val)) {\\n        newSet.add(val);\\n      }\\n    });\\n    return newSet;\\n  }\\n  static difference(set0, set1) {\\n    const newSet = new Set();\\n    set0.forEach((val) => {\\n      if (!set1.has(val)) {\\n        newSet.add(val);\\n      }\\n    });\\n    set1.forEach((val) => {\\n      if (!set0.has(val)) {\\n        newSet.add(val);\\n      }\\n    });\\n    return newSet;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/core/ArrayUtils.ts\\nvar ArrayUtils = class {\\n  static shallowClone(array) {\\n    return [...array];\\n  }\\n  static min(array) {\\n    let min = array[0];\\n    for (let element of array) {\\n      if (element < min) {\\n        min = element;\\n      }\\n    }\\n    return min;\\n  }\\n  static max(array) {\\n    let min = array[0];\\n    for (let element of array) {\\n      if (element > min) {\\n        min = element;\\n      }\\n    }\\n    return min;\\n  }\\n  static sum(array) {\\n    let sum = 0;\\n    for (let element of array) {\\n      sum += element;\\n    }\\n    return sum;\\n  }\\n  static compact(array) {\\n    const newArray = [];\\n    for (let elem of array) {\\n      if (elem != null) {\\n        newArray.push(elem);\\n      }\\n    }\\n    return newArray;\\n  }\\n  static uniq(array) {\\n    const tmpSet = new Set();\\n    for (let elem of array) {\\n      tmpSet.add(elem);\\n    }\\n    const newArray = new Array(tmpSet.size);\\n    let i = 0;\\n    tmpSet.forEach((elem) => {\\n      newArray[i] = elem;\\n      i++;\\n    });\\n    return newArray;\\n  }\\n  static chunk(array, chunkSize) {\\n    const newArray = [];\\n    let newSubArray = [];\\n    newArray.push(newSubArray);\\n    for (let i = 0; i < array.length; i++) {\\n      if (newSubArray.length == chunkSize) {\\n        newSubArray = [];\\n        newArray.push(newSubArray);\\n      }\\n      newSubArray.push(array[i]);\\n    }\\n    return newArray;\\n  }\\n  static union(array0, array1) {\\n    const newArray = [];\\n    const unionSet = SetUtils.union(this.toSet(array0), this.toSet(array1));\\n    unionSet.forEach((val) => newArray.push(val));\\n    return newArray;\\n  }\\n  static intersection(array0, array1) {\\n    const newArray = [];\\n    const intersectionSet = SetUtils.intersection(this.toSet(array0), this.toSet(array1));\\n    intersectionSet.forEach((val) => newArray.push(val));\\n    return newArray;\\n  }\\n  static difference(array0, array1) {\\n    const newArray = [];\\n    const differenceSet = SetUtils.difference(this.toSet(array0), this.toSet(array1));\\n    differenceSet.forEach((val) => newArray.push(val));\\n    return newArray;\\n  }\\n  static toSet(array) {\\n    const set = new Set();\\n    for (let elem of array) {\\n      set.add(elem);\\n    }\\n    return set;\\n  }\\n  static isEqual(array0, array1) {\\n    if (array0.length != array1.length) {\\n      return false;\\n    }\\n    const count = array0.length;\\n    for (let i = 0; i < count; i++) {\\n      if (array0[i] != array1[i]) {\\n        return false;\\n      }\\n    }\\n    return true;\\n  }\\n  static sortBy(array, callback) {\\n    if (array.length == 0) {\\n      return [];\\n    }\\n    const elementsByValue = new Map();\\n    const valuesSet = new Set();\\n    for (let elem of array) {\\n      const value = callback(elem);\\n      valuesSet.add(value);\\n      MapUtils.pushOnArrayAtEntry(elementsByValue, value, elem);\\n    }\\n    const values = new Array(valuesSet.size);\\n    let i = 0;\\n    valuesSet.forEach((value) => {\\n      values[i] = value;\\n      i++;\\n    });\\n    if (CoreType.isString(values[0])) {\\n      values.sort();\\n    } else {\\n      values.sort((a, b) => a - b);\\n    }\\n    const sorted_elements = new Array(array.length);\\n    i = 0;\\n    for (let value of values) {\\n      const elements_for_value = elementsByValue.get(value);\\n      if (elements_for_value) {\\n        for (let element of elements_for_value) {\\n          sorted_elements[i] = element;\\n          i++;\\n        }\\n      }\\n    }\\n    return sorted_elements;\\n  }\\n  static range(start, end, step = 1) {\\n    if (end == null) {\\n      end = start;\\n      start = 0;\\n    }\\n    const length = Math.floor((end - start) / step);\\n    const array = new Array(length);\\n    for (let i = 0; i < array.length; i++) {\\n      array[i] = start + i * step;\\n    }\\n    return array;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/core/String.ts\\nvar ATTRIB_NAMES_SEPARATOR = /[, ]/;\\nvar TAIL_DIGIT_MATCH_REGEXP = /\\\\d+$/;\\nvar LEADING_ZEROS_MATCH_REGEXP = /^0+/;\\nvar INDICES_LIST_SEPARATOR = /,| /;\\nvar ZERO = \\\\\\\"0\\\\\\\";\\nvar SPACE = \\\\\\\" \\\\\\\";\\nvar NUM_REGEXP = /^-?\\\\d+\\\\.?\\\\d*$/;\\nvar BooleanString;\\n(function(BooleanString2) {\\n  BooleanString2[\\\\\\\"TRUE\\\\\\\"] = \\\\\\\"true\\\\\\\";\\n  BooleanString2[\\\\\\\"FALSE\\\\\\\"] = \\\\\\\"false\\\\\\\";\\n})(BooleanString || (BooleanString = {}));\\nvar CoreString = class {\\n  static isBoolean(word) {\\n    return word == BooleanString.TRUE || word == BooleanString.FALSE;\\n  }\\n  static toBoolean(word) {\\n    return word == BooleanString.TRUE;\\n  }\\n  static isNumber(word) {\\n    return NUM_REGEXP.test(word);\\n  }\\n  static tailDigits(word) {\\n    const match = word.match(TAIL_DIGIT_MATCH_REGEXP);\\n    if (match) {\\n      return parseInt(match[0]);\\n    } else {\\n      return 0;\\n    }\\n  }\\n  static increment(word) {\\n    const match = word.match(TAIL_DIGIT_MATCH_REGEXP);\\n    if (match) {\\n      let numbers_as_str = match[0];\\n      let zeros_prefix = \\\\\\\"\\\\\\\";\\n      const leading_zeros_match = numbers_as_str.match(LEADING_ZEROS_MATCH_REGEXP);\\n      if (leading_zeros_match) {\\n        zeros_prefix = leading_zeros_match[0];\\n      }\\n      const digits = parseInt(numbers_as_str);\\n      if (digits == 0) {\\n        if (zeros_prefix.length > 0) {\\n          if (zeros_prefix[zeros_prefix.length - 1] == ZERO) {\\n            zeros_prefix = zeros_prefix.slice(0, -1);\\n          }\\n        }\\n      }\\n      const prefix = word.substring(0, word.length - match[0].length);\\n      return `${prefix}${zeros_prefix}${digits + 1}`;\\n    } else {\\n      return `${word}1`;\\n    }\\n  }\\n  static pluralize(word) {\\n    const last_char = word[word.length - 1];\\n    if (last_char !== \\\\\\\"s\\\\\\\") {\\n      return `${word}s`;\\n    } else {\\n      return word;\\n    }\\n  }\\n  static camelCase(str) {\\n    const elements = str.replace(/_/g, \\\\\\\" \\\\\\\").split(\\\\\\\" \\\\\\\");\\n    let newWord = \\\\\\\"\\\\\\\";\\n    for (let i = 0; i < elements.length; i++) {\\n      let element = elements[i].toLowerCase();\\n      if (i > 0) {\\n        element = this.upperFirst(element);\\n      }\\n      newWord += element;\\n    }\\n    return newWord;\\n  }\\n  static upperFirst(word) {\\n    const newString = word[0].toUpperCase() + word.substr(1);\\n    return newString;\\n  }\\n  static titleize(word) {\\n    const elements = word.split(/\\\\s|_/g);\\n    const newElements = elements.map((elem) => this.upperFirst(elem));\\n    return newElements.join(\\\\\\\" \\\\\\\");\\n  }\\n  static precision(val, decimals = 2) {\\n    decimals = Math.max(decimals, 0);\\n    const elements = `${val}`.split(\\\\\\\".\\\\\\\");\\n    if (decimals <= 0) {\\n      return elements[0];\\n    }\\n    let frac = elements[1];\\n    if (frac !== void 0) {\\n      if (frac.length > decimals) {\\n        frac = frac.substring(0, decimals);\\n      }\\n      frac = frac.padEnd(decimals, \\\\\\\"0\\\\\\\");\\n      return `${elements[0]}.${frac}`;\\n    } else {\\n      const string_to_pad = `${val}.`;\\n      const pad = string_to_pad.length + decimals;\\n      return string_to_pad.padEnd(pad, \\\\\\\"0\\\\\\\");\\n    }\\n  }\\n  static ensureFloat(num) {\\n    const num_as_string = `${num}`;\\n    const dot_pos = num_as_string.indexOf(\\\\\\\".\\\\\\\");\\n    if (dot_pos >= 0) {\\n      return num_as_string;\\n    } else {\\n      return `${num_as_string}.0`;\\n    }\\n  }\\n  static ensureInteger(num) {\\n    const num_as_string = `${num}`;\\n    const dot_pos = num_as_string.indexOf(\\\\\\\".\\\\\\\");\\n    if (dot_pos >= 0) {\\n      return num_as_string.split(\\\\\\\".\\\\\\\")[0];\\n    } else {\\n      return num_as_string;\\n    }\\n  }\\n  static matchMask(word, mask) {\\n    if (mask === \\\\\\\"*\\\\\\\") {\\n      return true;\\n    }\\n    if (word == mask) {\\n      return true;\\n    }\\n    const elements = mask.split(SPACE);\\n    if (elements.length > 1) {\\n      for (let element of elements) {\\n        const match = this.matchMask(word, element);\\n        if (match) {\\n          return true;\\n        }\\n      }\\n      return false;\\n    }\\n    mask = mask.split(\\\\\\\"*\\\\\\\").join(\\\\\\\".*\\\\\\\");\\n    mask = `^${mask}$`;\\n    const regex = new RegExp(mask);\\n    return regex.test(word);\\n  }\\n  static matchesOneMask(word, masks) {\\n    let matches_one_mask = false;\\n    for (let mask of masks) {\\n      if (CoreString.matchMask(word, mask)) {\\n        matches_one_mask = true;\\n      }\\n    }\\n    return matches_one_mask;\\n  }\\n  static attribNames(word) {\\n    const elements = word.split(ATTRIB_NAMES_SEPARATOR);\\n    const names_set = new Set();\\n    for (let element of elements) {\\n      element = element.trim();\\n      if (element.length > 0) {\\n        names_set.add(element);\\n      }\\n    }\\n    const names = new Array(names_set.size);\\n    let i = 0;\\n    names_set.forEach((name) => {\\n      names[i] = name;\\n      i++;\\n    });\\n    return names;\\n  }\\n  static indices(indices_string) {\\n    const elements = indices_string.split(INDICES_LIST_SEPARATOR);\\n    if (elements.length > 1) {\\n      const indices = elements.flatMap((element) => this.indices(element));\\n      return ArrayUtils.uniq(indices).sort((a, b) => a - b);\\n    } else {\\n      const element = elements[0];\\n      if (element) {\\n        const range_separator = \\\\\\\"-\\\\\\\";\\n        if (element.indexOf(range_separator) > 0) {\\n          const range_elements = element.split(range_separator);\\n          return ArrayUtils.range(parseInt(range_elements[0]), parseInt(range_elements[1]) + 1);\\n        } else {\\n          const parsed = parseInt(element);\\n          if (CoreType.isNumber(parsed)) {\\n            return [parsed];\\n          } else {\\n            return [];\\n          }\\n        }\\n      } else {\\n        return [];\\n      }\\n    }\\n  }\\n  static escapeLineBreaks(word) {\\n    return word.replace(/(\\\\r\\\\n|\\\\n|\\\\r)/gm, \\\\\\\"\\\\\\\\n\\\\\\\");\\n  }\\n  static sanitizeName(name) {\\n    name = name.replace(/[^A-Za-z0-9]/g, \\\\\\\"_\\\\\\\");\\n    name = name.replace(/^[0-9]/, \\\\\\\"_\\\\\\\");\\n    return name;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/core/NodeSelection.ts\\nvar CoreNodeSelection = class {\\n  constructor(_node) {\\n    this._node = _node;\\n    this._node_ids = [];\\n    this._json = [];\\n  }\\n  node() {\\n    return this._node;\\n  }\\n  nodes() {\\n    return this._node.scene().graph.nodesFromIds(this._node_ids);\\n  }\\n  contains(node) {\\n    return this._node_ids.includes(node.graphNodeId());\\n  }\\n  equals(nodes) {\\n    const node_ids = nodes.map((node) => node.graphNodeId()).sort();\\n    return ArrayUtils.isEqual(node_ids, this._node_ids);\\n  }\\n  clear() {\\n    this._node_ids = [];\\n    this.send_update_event();\\n  }\\n  set(nodes) {\\n    this._node_ids = [];\\n    this.add(nodes);\\n  }\\n  add(nodes_to_add) {\\n    const node_ids_to_add = nodes_to_add.map((node) => node.graphNodeId());\\n    this._node_ids = ArrayUtils.union(this._node_ids, node_ids_to_add);\\n    this.send_update_event();\\n  }\\n  remove(nodes_to_remove) {\\n    const node_ids_to_remove = nodes_to_remove.map((node) => node.graphNodeId());\\n    this._node_ids = ArrayUtils.difference(this._node_ids, node_ids_to_remove);\\n    this.send_update_event();\\n  }\\n  send_update_event() {\\n    this._node.emit(NodeEvent.SELECTION_UPDATED);\\n  }\\n  toJSON() {\\n    this._json = this._json || [];\\n    this._json = this._node_ids.map((id) => id);\\n    return this._json;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/poly/InputCloneMode.ts\\nvar InputCloneMode;\\n(function(InputCloneMode2) {\\n  InputCloneMode2[\\\\\\\"ALWAYS\\\\\\\"] = \\\\\\\"always\\\\\\\";\\n  InputCloneMode2[\\\\\\\"NEVER\\\\\\\"] = \\\\\\\"never\\\\\\\";\\n  InputCloneMode2[\\\\\\\"FROM_NODE\\\\\\\"] = \\\\\\\"from_node\\\\\\\";\\n})(InputCloneMode || (InputCloneMode = {}));\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/poly/Assert.ts\\nvar TypeAssert = class {\\n  static unreachable(x) {\\n    throw new Error(\\\\\\\"Didn't expect to get here\\\\\\\");\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/operations/container/utils/inputs/ClonedStatesController.ts\\nvar ClonedStatesController = class {\\n  constructor(inputs_controller) {\\n    this.inputs_controller = inputs_controller;\\n    this._clone_required_states = [];\\n    this._overridden = false;\\n  }\\n  init_inputs_cloned_state(states) {\\n    if (CoreType.isArray(states)) {\\n      this._cloned_states = states;\\n    } else {\\n      this._cloned_state = states;\\n    }\\n    this._update_clone_required_state();\\n  }\\n  override_cloned_state_allowed() {\\n    if (this._cloned_states) {\\n      for (let state of this._cloned_states) {\\n        if (state == InputCloneMode.FROM_NODE) {\\n          return true;\\n        }\\n      }\\n    }\\n    if (this._cloned_state) {\\n      return this._cloned_state == InputCloneMode.FROM_NODE;\\n    }\\n    return false;\\n  }\\n  clone_required_state(index) {\\n    return this._clone_required_states[index];\\n  }\\n  clone_required_states() {\\n    return this._clone_required_states;\\n  }\\n  _get_clone_required_state(index) {\\n    const states = this._cloned_states;\\n    if (states) {\\n      const state = states[index];\\n      if (state != null) {\\n        return this.clone_required_from_state(state);\\n      }\\n    }\\n    if (this._cloned_state) {\\n      return this.clone_required_from_state(this._cloned_state);\\n    }\\n    return true;\\n  }\\n  clone_required_from_state(state) {\\n    switch (state) {\\n      case InputCloneMode.ALWAYS:\\n        return true;\\n      case InputCloneMode.NEVER:\\n        return false;\\n      case InputCloneMode.FROM_NODE:\\n        return !this._overridden;\\n    }\\n    return TypeAssert.unreachable(state);\\n  }\\n  override_cloned_state(state) {\\n    this._overridden = state;\\n    this._update_clone_required_state();\\n  }\\n  overriden() {\\n    return this._overridden;\\n  }\\n  _update_clone_required_state() {\\n    if (this._cloned_states) {\\n      const states = [];\\n      for (let i = 0; i < this._cloned_states.length; i++) {\\n        states[i] = this._get_clone_required_state(i);\\n      }\\n      this._clone_required_states = states;\\n      return;\\n    }\\n    if (this._cloned_state) {\\n      const max_inputs = this.inputs_controller.inputs_count();\\n      const states = [];\\n      for (let i = 0; i < max_inputs; i++) {\\n        states[i] = this._get_clone_required_state(i);\\n      }\\n      this._clone_required_states = states;\\n      return;\\n    }\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/operations/container/utils/InputsController.ts\\nvar InputsController = class {\\n  constructor(operation_container) {\\n    this.operation_container = operation_container;\\n  }\\n  inputs_count() {\\n    return this.operation_container.inputs_count();\\n  }\\n  init_inputs_cloned_state(states) {\\n    if (!this._cloned_states_controller) {\\n      this._cloned_states_controller = new ClonedStatesController(this);\\n      this._cloned_states_controller.init_inputs_cloned_state(states);\\n    }\\n  }\\n  clone_required(index) {\\n    const state = this._cloned_states_controller?.clone_required_state(index);\\n    if (state != null) {\\n      return state;\\n    }\\n    return true;\\n  }\\n  override_cloned_state(state) {\\n    this._cloned_states_controller?.override_cloned_state(state);\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/operations/container/_Base.ts\\nvar BaseOperationContainer = class {\\n  constructor(operation, name, init_params) {\\n    this.operation = operation;\\n    this.name = name;\\n    this.params = {};\\n    this._apply_default_params();\\n    this._apply_init_params(init_params);\\n    this._init_cloned_states();\\n  }\\n  path_param_resolve_required() {\\n    return this._path_params != null;\\n  }\\n  resolve_path_params(node_start) {\\n    if (!this._path_params) {\\n      return;\\n    }\\n    for (let path_param of this._path_params) {\\n      path_param.resolve(node_start);\\n    }\\n  }\\n  _apply_default_params() {\\n    const default_params = this.operation.constructor.DEFAULT_PARAMS;\\n    const param_names = Object.keys(default_params);\\n    for (let param_name of param_names) {\\n      const param_data = default_params[param_name];\\n      const clone_param_data = this._convert_param_data(param_name, param_data);\\n      if (clone_param_data != void 0) {\\n        this.params[param_name] = clone_param_data;\\n      }\\n    }\\n  }\\n  _apply_init_params(init_params) {\\n    const param_names = Object.keys(init_params);\\n    for (let param_name of param_names) {\\n      const param_data = init_params[param_name];\\n      if (param_data.simple_data != null) {\\n        const simple_data = param_data.simple_data;\\n        const clone_param_data = this._convert_export_param_data(param_name, simple_data);\\n        if (clone_param_data != void 0) {\\n          this.params[param_name] = clone_param_data;\\n        }\\n      }\\n    }\\n  }\\n  _convert_param_data(param_name, param_data) {\\n    if (CoreType.isNumber(param_data) || CoreType.isBoolean(param_data) || CoreType.isString(param_data)) {\\n      return param_data;\\n    }\\n    if (param_data instanceof TypedNodePathParamValue) {\\n      const cloned = param_data.clone();\\n      if (!this._path_params) {\\n        this._path_params = [];\\n      }\\n      this._path_params.push(cloned);\\n      return cloned;\\n    }\\n    if (param_data instanceof Color || param_data instanceof Vector2 || param_data instanceof Vector3 || param_data instanceof Vector4) {\\n      return param_data.clone();\\n    }\\n  }\\n  _convert_export_param_data(param_name, param_data) {\\n    const default_param = this.params[param_name];\\n    if (CoreType.isBoolean(param_data)) {\\n      return param_data;\\n    }\\n    if (CoreType.isNumber(param_data)) {\\n      if (CoreType.isBoolean(default_param)) {\\n        return param_data >= 1 ? true : false;\\n      } else {\\n        return param_data;\\n      }\\n    }\\n    if (CoreType.isString(param_data)) {\\n      if (default_param) {\\n        if (default_param instanceof TypedNodePathParamValue) {\\n          return default_param.set_path(param_data);\\n        }\\n        if (default_param instanceof TypedParamPathParamValue) {\\n          return default_param.set_path(param_data);\\n        }\\n      }\\n      return param_data;\\n    }\\n    if (CoreType.isArray(param_data)) {\\n      this.params[param_name].fromArray(param_data);\\n    }\\n  }\\n  setInput(index, input) {\\n    this._inputs = this._inputs || [];\\n    this._inputs[index] = input;\\n  }\\n  inputs_count() {\\n    if (this._inputs) {\\n      return this._inputs.length;\\n    } else {\\n      return 0;\\n    }\\n  }\\n  inputsController() {\\n    return this._inputs_controller = this._inputs_controller || new InputsController(this);\\n  }\\n  _init_cloned_states() {\\n    const default_cloned_states = this.operation.constructor.INPUT_CLONED_STATE;\\n    this.inputsController().init_inputs_cloned_state(default_cloned_states);\\n  }\\n  input_clone_required(index) {\\n    if (!this._inputs_controller) {\\n      return true;\\n    }\\n    return this._inputs_controller.clone_required(index);\\n  }\\n  override_input_clone_state(state) {\\n    this.inputsController().override_cloned_state(state);\\n  }\\n  cook(input_contents) {\\n    return this.operation.cook(input_contents, this.params);\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/operations/container/sop.ts\\nvar SopOperationContainer = class extends BaseOperationContainer {\\n  constructor(operation, name, init_params) {\\n    super(operation, name, init_params);\\n    this.operation = operation;\\n    this.name = name;\\n    this.init_params = init_params;\\n    this._inputs = [];\\n    this._current_input_index = 0;\\n    this._dirty = true;\\n  }\\n  add_input(input) {\\n    super.setInput(this._current_input_index, input);\\n    this.increment_input_index();\\n  }\\n  increment_input_index() {\\n    this._current_input_index++;\\n  }\\n  current_input_index() {\\n    return this._current_input_index;\\n  }\\n  setDirty() {\\n    if (this._dirty) {\\n      return;\\n    }\\n    this._compute_result = void 0;\\n    for (let i = 0; i < this._inputs.length; i++) {\\n      const input_operation = this._inputs[i];\\n      input_operation.setDirty();\\n    }\\n  }\\n  async compute(input_contents, operation_inputs_map) {\\n    if (this._compute_result) {\\n      return this._compute_result;\\n    }\\n    const operation_input_contents = [];\\n    const node_inputs_map = operation_inputs_map.get(this);\\n    if (node_inputs_map) {\\n      node_inputs_map.forEach((node_input_index, operation_input_index) => {\\n        operation_input_contents[operation_input_index] = input_contents[node_input_index];\\n      });\\n    }\\n    for (let i = 0; i < this._inputs.length; i++) {\\n      const input_operation = this._inputs[i];\\n      let result2 = await input_operation.compute(input_contents, operation_inputs_map);\\n      if (result2) {\\n        if (this.input_clone_required(i)) {\\n          result2 = result2.clone();\\n        }\\n        operation_input_contents[i] = result2;\\n      }\\n    }\\n    const result = this.operation.cook(operation_input_contents, this.params);\\n    if (result) {\\n      if (result instanceof Promise) {\\n        this._compute_result = await result;\\n      } else {\\n        this._compute_result = result;\\n      }\\n    } else {\\n      this._compute_result = void 0;\\n    }\\n    this._dirty = false;\\n    return this._compute_result;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/hierarchy/ChildrenController.ts\\nvar HierarchyChildrenController = class {\\n  constructor(node, _context2) {\\n    this.node = node;\\n    this._context = _context2;\\n    this._childrenByName = new Map();\\n    this._childrenByType = new Map();\\n    this._childrenAndGrandchildrenByContext = new Map();\\n  }\\n  get selection() {\\n    return this._selection = this._selection || new CoreNodeSelection(this.node);\\n  }\\n  dispose() {\\n    const children = this.children();\\n    for (let child of children) {\\n      this.node.removeNode(child);\\n    }\\n    this._selection = void 0;\\n  }\\n  get context() {\\n    return this._context;\\n  }\\n  set_output_node_find_method(method) {\\n    this._output_node_find_method = method;\\n  }\\n  output_node() {\\n    if (this._output_node_find_method) {\\n      return this._output_node_find_method();\\n    }\\n  }\\n  setChildName(node, new_name) {\\n    let current_child_with_name;\\n    new_name = CoreString.sanitizeName(new_name);\\n    if ((current_child_with_name = this._childrenByName.get(new_name)) != null) {\\n      if (node.name() === new_name && current_child_with_name.graphNodeId() === node.graphNodeId()) {\\n        return;\\n      }\\n      new_name = CoreString.increment(new_name);\\n      return this.setChildName(node, new_name);\\n    } else {\\n      const current_name = node.name();\\n      const current_child = this._childrenByName.get(current_name);\\n      if (current_child) {\\n        this._childrenByName.delete(current_name);\\n      }\\n      this._childrenByName.set(new_name, node);\\n      node.nameController.updateNameFromParent(new_name);\\n      this._addToNodesByType(node);\\n      this.node.scene().nodesController.addToInstanciatedNode(node);\\n    }\\n  }\\n  node_context_signature() {\\n    return `${this.node.context()}/${this.node.type()}`;\\n  }\\n  available_children_classes() {\\n    return Poly.registeredNodes(this._context, this.node.type());\\n  }\\n  isValidChildType(node_type) {\\n    const node_class = this.available_children_classes()[node_type];\\n    return node_class != null;\\n  }\\n  createNode(node_class_or_string, params_init_value_overrides, node_type = \\\\\\\"\\\\\\\") {\\n    if (typeof node_class_or_string == \\\\\\\"string\\\\\\\") {\\n      const node_class = this._find_node_class(node_class_or_string);\\n      return this._create_and_init_node(node_class, params_init_value_overrides, node_type);\\n    } else {\\n      return this._create_and_init_node(node_class_or_string, params_init_value_overrides, node_type);\\n    }\\n  }\\n  _create_and_init_node(node_class, params_init_value_overrides, node_type = \\\\\\\"\\\\\\\") {\\n    const child_node = new node_class(this.node.scene(), `child_node_${node_type}`, params_init_value_overrides);\\n    child_node.initialize_base_and_node();\\n    this._addNode(child_node);\\n    child_node.lifecycle.setCreationCompleted();\\n    return child_node;\\n  }\\n  _find_node_class(node_type) {\\n    const node_class = this.available_children_classes()[node_type.toLowerCase()];\\n    if (node_class == null) {\\n      const message = `child node type '${node_type}' not found for node '${this.node.path()}'. Available types are: ${Object.keys(this.available_children_classes()).join(\\\\\\\", \\\\\\\")}, ${this._context}, ${this.node.type()}`;\\n      console.error(message);\\n      throw message;\\n    }\\n    return node_class;\\n  }\\n  create_operation_container(operation_type, operation_container_name, params_init_value_overrides) {\\n    const operation_class = Poly.registeredOperation(this._context, operation_type);\\n    if (operation_class == null) {\\n      const message = `no operation found with context ${this._context}/${operation_type}`;\\n      console.error(message);\\n      throw message;\\n    } else {\\n      const operation = new operation_class(this.node.scene());\\n      const operation_container = new SopOperationContainer(operation, operation_container_name, params_init_value_overrides || {});\\n      return operation_container;\\n    }\\n  }\\n  _addNode(child_node) {\\n    child_node.setParent(this.node);\\n    child_node.params.init();\\n    child_node.parentController.onSetParent();\\n    child_node.nameController.runPostSetFullPathHooks();\\n    if (child_node.childrenAllowed() && child_node.childrenController) {\\n      for (let child of child_node.childrenController.children()) {\\n        child.nameController.runPostSetFullPathHooks();\\n      }\\n    }\\n    this.node.emit(NodeEvent.CREATED, {child_node_json: child_node.toJSON()});\\n    if (this.node.scene().lifecycleController.onCreateHookAllowed()) {\\n      child_node.lifecycle.run_on_create_hooks();\\n    }\\n    child_node.lifecycle.run_on_add_hooks();\\n    this.setChildName(child_node, NameController.base_name(child_node));\\n    this.node.lifecycle.run_on_child_add_hooks(child_node);\\n    if (child_node.require_webgl2()) {\\n      this.node.scene().webgl_controller.set_require_webgl2();\\n    }\\n    this.node.scene().missingExpressionReferencesController.checkForMissingReferences(child_node);\\n    return child_node;\\n  }\\n  removeNode(child_node) {\\n    if (child_node.parent() != this.node) {\\n      return console.warn(`node ${child_node.name()} not under parent ${this.node.path()}`);\\n    } else {\\n      if (this.selection.contains(child_node)) {\\n        this.selection.remove([child_node]);\\n      }\\n      const first_connection = child_node.io.connections.firstInputConnection();\\n      const input_connections = child_node.io.connections.inputConnections();\\n      const output_connections = child_node.io.connections.outputConnections();\\n      if (input_connections) {\\n        for (let input_connection of input_connections) {\\n          if (input_connection) {\\n            input_connection.disconnect({setInput: true});\\n          }\\n        }\\n      }\\n      if (output_connections) {\\n        for (let output_connection of output_connections) {\\n          if (output_connection) {\\n            output_connection.disconnect({setInput: true});\\n            if (first_connection) {\\n              const old_src = first_connection.node_src;\\n              const old_output_index = output_connection.output_index;\\n              const old_dest = output_connection.node_dest;\\n              const old_input_index = output_connection.input_index;\\n              old_dest.io.inputs.setInput(old_input_index, old_src, old_output_index);\\n            }\\n          }\\n        }\\n      }\\n      child_node.setParent(null);\\n      this._childrenByName.delete(child_node.name());\\n      this._removeFromNodesByType(child_node);\\n      this.node.scene().nodesController.removeFromInstanciatedNode(child_node);\\n      child_node.setSuccessorsDirty(this.node);\\n      child_node.graphDisconnectSuccessors();\\n      this.node.lifecycle.run_on_child_remove_hooks(child_node);\\n      child_node.lifecycle.run_on_delete_hooks();\\n      child_node.dispose();\\n      child_node.emit(NodeEvent.DELETED, {parent_id: this.node.graphNodeId()});\\n    }\\n  }\\n  _addToNodesByType(node) {\\n    const nodeId = node.graphNodeId();\\n    const type = node.type();\\n    MapUtils.addToSetAtEntry(this._childrenByType, type, nodeId);\\n    this._addToChildrenAndGrandchildrenByContext(node);\\n  }\\n  _removeFromNodesByType(node) {\\n    const nodeId = node.graphNodeId();\\n    const type = node.type();\\n    MapUtils.removeFromSetAtEntry(this._childrenByType, type, nodeId);\\n    this._removeFromChildrenAndGrandchildrenByContext(node);\\n  }\\n  _addToChildrenAndGrandchildrenByContext(node) {\\n    const nodeId = node.graphNodeId();\\n    const nodeContext = node.context();\\n    MapUtils.addToSetAtEntry(this._childrenAndGrandchildrenByContext, nodeContext, nodeId);\\n    const parent = this.node.parent();\\n    if (parent && parent.childrenAllowed()) {\\n      parent.childrenController?._addToChildrenAndGrandchildrenByContext(node);\\n    }\\n  }\\n  _removeFromChildrenAndGrandchildrenByContext(node) {\\n    const nodeId = node.graphNodeId();\\n    const type = node.context();\\n    MapUtils.removeFromSetAtEntry(this._childrenAndGrandchildrenByContext, type, nodeId);\\n    const parent = this.node.parent();\\n    if (parent && parent.childrenAllowed()) {\\n      parent.childrenController?._removeFromChildrenAndGrandchildrenByContext(node);\\n    }\\n  }\\n  nodesByType(type) {\\n    const nodeIds = this._childrenByType.get(type);\\n    if (!nodeIds) {\\n      return [];\\n    }\\n    const graph = this.node.scene().graph;\\n    const nodes = [];\\n    for (let node_id of nodeIds) {\\n      const node = graph.nodeFromId(node_id);\\n      if (node) {\\n        nodes.push(node);\\n      }\\n    }\\n    return nodes;\\n  }\\n  childByName(name) {\\n    return this._childrenByName.get(name) || null;\\n  }\\n  hasChildrenAndGrandchildrenWithContext(context) {\\n    return this._childrenAndGrandchildrenByContext.get(context) != null;\\n  }\\n  children() {\\n    const nodes = [];\\n    this._childrenByName.forEach((node) => {\\n      nodes.push(node);\\n    });\\n    return nodes;\\n  }\\n  childrenNames() {\\n    const names = [];\\n    this._childrenByName.forEach((node, nodeName) => {\\n      names.push(nodeName);\\n    });\\n    return names;\\n  }\\n  traverseChildren(callback) {\\n    this._childrenByName.forEach((childNode) => {\\n      callback(childNode);\\n      childNode.childrenController?.traverseChildren(callback);\\n    });\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/LifeCycleController.ts\\nvar LifeCycleController = class {\\n  constructor(node) {\\n    this.node = node;\\n    this._creation_completed = false;\\n  }\\n  dispose() {\\n    this._on_child_add_hooks = void 0;\\n    this._on_child_remove_hooks = void 0;\\n    this._on_create_hooks = void 0;\\n    this._on_add_hooks = void 0;\\n    this._on_delete_hooks = void 0;\\n  }\\n  setCreationCompleted() {\\n    if (!this._creation_completed) {\\n      this._creation_completed = true;\\n    }\\n  }\\n  creationCompleted() {\\n    return this.node.scene().loadingController.loaded() && this._creation_completed;\\n  }\\n  add_on_child_add_hook(callback) {\\n    this._on_child_add_hooks = this._on_child_add_hooks || [];\\n    this._on_child_add_hooks.push(callback);\\n  }\\n  run_on_child_add_hooks(node) {\\n    this.execute_hooks_with_child_node(this._on_child_add_hooks, node);\\n  }\\n  add_on_child_remove_hook(callback) {\\n    this._on_child_remove_hooks = this._on_child_remove_hooks || [];\\n    this._on_child_remove_hooks.push(callback);\\n  }\\n  run_on_child_remove_hooks(node) {\\n    this.execute_hooks_with_child_node(this._on_child_remove_hooks, node);\\n  }\\n  add_on_create_hook(callback) {\\n    this._on_create_hooks = this._on_create_hooks || [];\\n    this._on_create_hooks.push(callback);\\n  }\\n  run_on_create_hooks() {\\n    this.execute_hooks(this._on_create_hooks);\\n  }\\n  add_on_add_hook(callback) {\\n    this._on_add_hooks = this._on_add_hooks || [];\\n    this._on_add_hooks.push(callback);\\n  }\\n  run_on_add_hooks() {\\n    this.execute_hooks(this._on_add_hooks);\\n  }\\n  add_delete_hook(callback) {\\n    this._on_delete_hooks = this._on_delete_hooks || [];\\n    this._on_delete_hooks.push(callback);\\n  }\\n  run_on_delete_hooks() {\\n    this.execute_hooks(this._on_delete_hooks);\\n  }\\n  execute_hooks(hooks) {\\n    if (hooks) {\\n      let hook;\\n      for (hook of hooks) {\\n        hook();\\n      }\\n    }\\n  }\\n  execute_hooks_with_child_node(hooks, child_node) {\\n    if (hooks) {\\n      let hook;\\n      for (hook of hooks) {\\n        hook(child_node);\\n      }\\n    }\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/poly/NodeContext.ts\\nvar NodeContext;\\n(function(NodeContext3) {\\n  NodeContext3[\\\\\\\"ANIM\\\\\\\"] = \\\\\\\"anim\\\\\\\";\\n  NodeContext3[\\\\\\\"COP\\\\\\\"] = \\\\\\\"cop\\\\\\\";\\n  NodeContext3[\\\\\\\"EVENT\\\\\\\"] = \\\\\\\"event\\\\\\\";\\n  NodeContext3[\\\\\\\"GL\\\\\\\"] = \\\\\\\"gl\\\\\\\";\\n  NodeContext3[\\\\\\\"JS\\\\\\\"] = \\\\\\\"js\\\\\\\";\\n  NodeContext3[\\\\\\\"MANAGER\\\\\\\"] = \\\\\\\"manager\\\\\\\";\\n  NodeContext3[\\\\\\\"MAT\\\\\\\"] = \\\\\\\"mat\\\\\\\";\\n  NodeContext3[\\\\\\\"OBJ\\\\\\\"] = \\\\\\\"obj\\\\\\\";\\n  NodeContext3[\\\\\\\"POST\\\\\\\"] = \\\\\\\"post\\\\\\\";\\n  NodeContext3[\\\\\\\"ROP\\\\\\\"] = \\\\\\\"rop\\\\\\\";\\n  NodeContext3[\\\\\\\"SOP\\\\\\\"] = \\\\\\\"sop\\\\\\\";\\n})(NodeContext || (NodeContext = {}));\\nvar NetworkNodeType;\\n(function(NetworkNodeType2) {\\n  NetworkNodeType2[\\\\\\\"ANIM\\\\\\\"] = \\\\\\\"animationsNetwork\\\\\\\";\\n  NetworkNodeType2[\\\\\\\"COP\\\\\\\"] = \\\\\\\"copNetwork\\\\\\\";\\n  NetworkNodeType2[\\\\\\\"EVENT\\\\\\\"] = \\\\\\\"eventsNetwork\\\\\\\";\\n  NetworkNodeType2[\\\\\\\"MAT\\\\\\\"] = \\\\\\\"materialsNetwork\\\\\\\";\\n  NetworkNodeType2[\\\\\\\"POST\\\\\\\"] = \\\\\\\"postProcessNetwork\\\\\\\";\\n  NetworkNodeType2[\\\\\\\"ROP\\\\\\\"] = \\\\\\\"renderersNetwork\\\\\\\";\\n})(NetworkNodeType || (NetworkNodeType = {}));\\nvar NetworkChildNodeType;\\n(function(NetworkChildNodeType2) {\\n  NetworkChildNodeType2[\\\\\\\"INPUT\\\\\\\"] = \\\\\\\"subnetInput\\\\\\\";\\n  NetworkChildNodeType2[\\\\\\\"OUTPUT\\\\\\\"] = \\\\\\\"subnetOutput\\\\\\\";\\n})(NetworkChildNodeType || (NetworkChildNodeType = {}));\\nvar CameraNodeType;\\n(function(CameraNodeType2) {\\n  CameraNodeType2[\\\\\\\"PERSPECTIVE\\\\\\\"] = \\\\\\\"perspectiveCamera\\\\\\\";\\n  CameraNodeType2[\\\\\\\"ORTHOGRAPHIC\\\\\\\"] = \\\\\\\"orthographicCamera\\\\\\\";\\n})(CameraNodeType || (CameraNodeType = {}));\\nvar CAMERA_TYPES = [CameraNodeType.ORTHOGRAPHIC, CameraNodeType.PERSPECTIVE];\\nvar GlNodeType;\\n(function(GlNodeType2) {\\n  GlNodeType2[\\\\\\\"ATTRIBUTE\\\\\\\"] = \\\\\\\"attribute\\\\\\\";\\n})(GlNodeType || (GlNodeType = {}));\\nvar CameraControlsNodeType;\\n(function(CameraControlsNodeType2) {\\n  CameraControlsNodeType2[\\\\\\\"DEVICE_ORIENTATION\\\\\\\"] = \\\\\\\"cameraDeviceOrientationControls\\\\\\\";\\n  CameraControlsNodeType2[\\\\\\\"MAP\\\\\\\"] = \\\\\\\"cameraMapControls\\\\\\\";\\n  CameraControlsNodeType2[\\\\\\\"ORBIT\\\\\\\"] = \\\\\\\"cameraOrbitControls\\\\\\\";\\n  CameraControlsNodeType2[\\\\\\\"FIRST_PERSON\\\\\\\"] = \\\\\\\"firstPersonControls\\\\\\\";\\n  CameraControlsNodeType2[\\\\\\\"PLAYER\\\\\\\"] = \\\\\\\"playerControls\\\\\\\";\\n  CameraControlsNodeType2[\\\\\\\"MOBILE_JOYSTICK\\\\\\\"] = \\\\\\\"mobileJoystickControls\\\\\\\";\\n})(CameraControlsNodeType || (CameraControlsNodeType = {}));\\nvar CAMERA_CONTROLS_NODE_TYPES = [\\n  CameraControlsNodeType.DEVICE_ORIENTATION,\\n  CameraControlsNodeType.MAP,\\n  CameraControlsNodeType.ORBIT,\\n  CameraControlsNodeType.FIRST_PERSON,\\n  CameraControlsNodeType.MOBILE_JOYSTICK\\n];\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/containers/_Base.ts\\nvar TypedContainer = class {\\n  constructor(_node) {\\n    this._node = _node;\\n  }\\n  set_node(node) {\\n    this._node = node;\\n  }\\n  node() {\\n    return this._node;\\n  }\\n  set_content(content) {\\n    this._content = content;\\n    this._post_set_content();\\n  }\\n  has_content() {\\n    return this._content != null;\\n  }\\n  content() {\\n    return this._content;\\n  }\\n  _post_set_content() {\\n  }\\n  coreContent() {\\n    return this._content;\\n  }\\n  coreContentCloned() {\\n    return this._content;\\n  }\\n  infos() {\\n    return [];\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/containers/Animation.ts\\nvar AnimationContainer = class extends TypedContainer {\\n  set_content(content) {\\n    super.set_content(content);\\n  }\\n  setTimelineBuilder(timeline_builder) {\\n    return this.set_content(timeline_builder);\\n  }\\n  timeline_builder() {\\n    return this.content();\\n  }\\n  coreContentCloned() {\\n    if (this._content) {\\n      return this._content.clone();\\n    }\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/containers/Event.ts\\nvar EventContainer = class extends TypedContainer {\\n  set_content(content) {\\n    super.set_content(content);\\n  }\\n};\\n\\n// ../../../node_modules/three/src/objects/SkinnedMesh.js\\nvar _basePosition = /* @__PURE__ */ new Vector3();\\nvar _skinIndex = /* @__PURE__ */ new Vector4();\\nvar _skinWeight = /* @__PURE__ */ new Vector4();\\nvar _vector7 = /* @__PURE__ */ new Vector3();\\nvar _matrix2 = /* @__PURE__ */ new Matrix4();\\nvar SkinnedMesh = class extends Mesh {\\n  constructor(geometry, material) {\\n    super(geometry, material);\\n    this.type = \\\\\\\"SkinnedMesh\\\\\\\";\\n    this.bindMode = \\\\\\\"attached\\\\\\\";\\n    this.bindMatrix = new Matrix4();\\n    this.bindMatrixInverse = new Matrix4();\\n  }\\n  copy(source) {\\n    super.copy(source);\\n    this.bindMode = source.bindMode;\\n    this.bindMatrix.copy(source.bindMatrix);\\n    this.bindMatrixInverse.copy(source.bindMatrixInverse);\\n    this.skeleton = source.skeleton;\\n    return this;\\n  }\\n  bind(skeleton, bindMatrix) {\\n    this.skeleton = skeleton;\\n    if (bindMatrix === void 0) {\\n      this.updateMatrixWorld(true);\\n      this.skeleton.calculateInverses();\\n      bindMatrix = this.matrixWorld;\\n    }\\n    this.bindMatrix.copy(bindMatrix);\\n    this.bindMatrixInverse.copy(bindMatrix).invert();\\n  }\\n  pose() {\\n    this.skeleton.pose();\\n  }\\n  normalizeSkinWeights() {\\n    const vector = new Vector4();\\n    const skinWeight = this.geometry.attributes.skinWeight;\\n    for (let i = 0, l = skinWeight.count; i < l; i++) {\\n      vector.x = skinWeight.getX(i);\\n      vector.y = skinWeight.getY(i);\\n      vector.z = skinWeight.getZ(i);\\n      vector.w = skinWeight.getW(i);\\n      const scale = 1 / vector.manhattanLength();\\n      if (scale !== Infinity) {\\n        vector.multiplyScalar(scale);\\n      } else {\\n        vector.set(1, 0, 0, 0);\\n      }\\n      skinWeight.setXYZW(i, vector.x, vector.y, vector.z, vector.w);\\n    }\\n  }\\n  updateMatrixWorld(force) {\\n    super.updateMatrixWorld(force);\\n    if (this.bindMode === \\\\\\\"attached\\\\\\\") {\\n      this.bindMatrixInverse.copy(this.matrixWorld).invert();\\n    } else if (this.bindMode === \\\\\\\"detached\\\\\\\") {\\n      this.bindMatrixInverse.copy(this.bindMatrix).invert();\\n    } else {\\n      console.warn(\\\\\\\"THREE.SkinnedMesh: Unrecognized bindMode: \\\\\\\" + this.bindMode);\\n    }\\n  }\\n  boneTransform(index, target) {\\n    const skeleton = this.skeleton;\\n    const geometry = this.geometry;\\n    _skinIndex.fromBufferAttribute(geometry.attributes.skinIndex, index);\\n    _skinWeight.fromBufferAttribute(geometry.attributes.skinWeight, index);\\n    _basePosition.copy(target).applyMatrix4(this.bindMatrix);\\n    target.set(0, 0, 0);\\n    for (let i = 0; i < 4; i++) {\\n      const weight = _skinWeight.getComponent(i);\\n      if (weight !== 0) {\\n        const boneIndex = _skinIndex.getComponent(i);\\n        _matrix2.multiplyMatrices(skeleton.bones[boneIndex].matrixWorld, skeleton.boneInverses[boneIndex]);\\n        target.addScaledVector(_vector7.copy(_basePosition).applyMatrix4(_matrix2), weight);\\n      }\\n    }\\n    return target.applyMatrix4(this.bindMatrixInverse);\\n  }\\n};\\nSkinnedMesh.prototype.isSkinnedMesh = true;\\n\\n// ../../../node_modules/three/src/scenes/Scene.js\\nvar Scene = class extends Object3D {\\n  constructor() {\\n    super();\\n    this.type = \\\\\\\"Scene\\\\\\\";\\n    this.background = null;\\n    this.environment = null;\\n    this.fog = null;\\n    this.overrideMaterial = null;\\n    this.autoUpdate = true;\\n    if (typeof __THREE_DEVTOOLS__ !== \\\\\\\"undefined\\\\\\\") {\\n      __THREE_DEVTOOLS__.dispatchEvent(new CustomEvent(\\\\\\\"observe\\\\\\\", {detail: this}));\\n    }\\n  }\\n  copy(source, recursive) {\\n    super.copy(source, recursive);\\n    if (source.background !== null)\\n      this.background = source.background.clone();\\n    if (source.environment !== null)\\n      this.environment = source.environment.clone();\\n    if (source.fog !== null)\\n      this.fog = source.fog.clone();\\n    if (source.overrideMaterial !== null)\\n      this.overrideMaterial = source.overrideMaterial.clone();\\n    this.autoUpdate = source.autoUpdate;\\n    this.matrixAutoUpdate = source.matrixAutoUpdate;\\n    return this;\\n  }\\n  toJSON(meta) {\\n    const data = super.toJSON(meta);\\n    if (this.fog !== null)\\n      data.object.fog = this.fog.toJSON();\\n    return data;\\n  }\\n};\\nScene.prototype.isScene = true;\\n\\n// ../../../node_modules/three/src/materials/PointsMaterial.js\\nvar PointsMaterial = class extends Material {\\n  constructor(parameters) {\\n    super();\\n    this.type = \\\\\\\"PointsMaterial\\\\\\\";\\n    this.color = new Color(16777215);\\n    this.map = null;\\n    this.alphaMap = null;\\n    this.size = 1;\\n    this.sizeAttenuation = true;\\n    this.setValues(parameters);\\n  }\\n  copy(source) {\\n    super.copy(source);\\n    this.color.copy(source.color);\\n    this.map = source.map;\\n    this.alphaMap = source.alphaMap;\\n    this.size = source.size;\\n    this.sizeAttenuation = source.sizeAttenuation;\\n    return this;\\n  }\\n};\\nPointsMaterial.prototype.isPointsMaterial = true;\\n\\n// ../../../node_modules/three/src/objects/Points.js\\nvar _inverseMatrix2 = /* @__PURE__ */ new Matrix4();\\nvar _ray2 = /* @__PURE__ */ new Ray();\\nvar _sphere3 = /* @__PURE__ */ new Sphere();\\nvar _position2 = /* @__PURE__ */ new Vector3();\\nvar Points = class extends Object3D {\\n  constructor(geometry = new BufferGeometry(), material = new PointsMaterial()) {\\n    super();\\n    this.type = \\\\\\\"Points\\\\\\\";\\n    this.geometry = geometry;\\n    this.material = material;\\n    this.updateMorphTargets();\\n  }\\n  copy(source) {\\n    super.copy(source);\\n    this.material = source.material;\\n    this.geometry = source.geometry;\\n    return this;\\n  }\\n  raycast(raycaster, intersects) {\\n    const geometry = this.geometry;\\n    const matrixWorld = this.matrixWorld;\\n    const threshold = raycaster.params.Points.threshold;\\n    const drawRange = geometry.drawRange;\\n    if (geometry.boundingSphere === null)\\n      geometry.computeBoundingSphere();\\n    _sphere3.copy(geometry.boundingSphere);\\n    _sphere3.applyMatrix4(matrixWorld);\\n    _sphere3.radius += threshold;\\n    if (raycaster.ray.intersectsSphere(_sphere3) === false)\\n      return;\\n    _inverseMatrix2.copy(matrixWorld).invert();\\n    _ray2.copy(raycaster.ray).applyMatrix4(_inverseMatrix2);\\n    const localThreshold = threshold / ((this.scale.x + this.scale.y + this.scale.z) / 3);\\n    const localThresholdSq = localThreshold * localThreshold;\\n    if (geometry.isBufferGeometry) {\\n      const index = geometry.index;\\n      const attributes = geometry.attributes;\\n      const positionAttribute = attributes.position;\\n      if (index !== null) {\\n        const start = Math.max(0, drawRange.start);\\n        const end = Math.min(index.count, drawRange.start + drawRange.count);\\n        for (let i = start, il = end; i < il; i++) {\\n          const a = index.getX(i);\\n          _position2.fromBufferAttribute(positionAttribute, a);\\n          testPoint(_position2, a, localThresholdSq, matrixWorld, raycaster, intersects, this);\\n        }\\n      } else {\\n        const start = Math.max(0, drawRange.start);\\n        const end = Math.min(positionAttribute.count, drawRange.start + drawRange.count);\\n        for (let i = start, l = end; i < l; i++) {\\n          _position2.fromBufferAttribute(positionAttribute, i);\\n          testPoint(_position2, i, localThresholdSq, matrixWorld, raycaster, intersects, this);\\n        }\\n      }\\n    } else {\\n      console.error(\\\\\\\"THREE.Points.raycast() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.\\\\\\\");\\n    }\\n  }\\n  updateMorphTargets() {\\n    const geometry = this.geometry;\\n    if (geometry.isBufferGeometry) {\\n      const morphAttributes = geometry.morphAttributes;\\n      const keys = Object.keys(morphAttributes);\\n      if (keys.length > 0) {\\n        const morphAttribute = morphAttributes[keys[0]];\\n        if (morphAttribute !== void 0) {\\n          this.morphTargetInfluences = [];\\n          this.morphTargetDictionary = {};\\n          for (let m = 0, ml = morphAttribute.length; m < ml; m++) {\\n            const name = morphAttribute[m].name || String(m);\\n            this.morphTargetInfluences.push(0);\\n            this.morphTargetDictionary[name] = m;\\n          }\\n        }\\n      }\\n    } else {\\n      const morphTargets = geometry.morphTargets;\\n      if (morphTargets !== void 0 && morphTargets.length > 0) {\\n        console.error(\\\\\\\"THREE.Points.updateMorphTargets() does not support THREE.Geometry. Use THREE.BufferGeometry instead.\\\\\\\");\\n      }\\n    }\\n  }\\n};\\nPoints.prototype.isPoints = true;\\nfunction testPoint(point, index, localThresholdSq, matrixWorld, raycaster, intersects, object) {\\n  const rayPointDistanceSq = _ray2.distanceSqToPoint(point);\\n  if (rayPointDistanceSq < localThresholdSq) {\\n    const intersectPoint = new Vector3();\\n    _ray2.closestPointToPoint(point, intersectPoint);\\n    intersectPoint.applyMatrix4(matrixWorld);\\n    const distance = raycaster.ray.origin.distanceTo(intersectPoint);\\n    if (distance < raycaster.near || distance > raycaster.far)\\n      return;\\n    intersects.push({\\n      distance,\\n      distanceToRay: Math.sqrt(rayPointDistanceSq),\\n      point: intersectPoint,\\n      index,\\n      face: null,\\n      object\\n    });\\n  }\\n}\\n\\n// ../../../node_modules/three/src/objects/Bone.js\\nvar Bone = class extends Object3D {\\n  constructor() {\\n    super();\\n    this.type = \\\\\\\"Bone\\\\\\\";\\n  }\\n};\\nBone.prototype.isBone = true;\\n\\n// ../../../node_modules/three/src/materials/MeshStandardMaterial.js\\nvar MeshStandardMaterial = class extends Material {\\n  constructor(parameters) {\\n    super();\\n    this.defines = {STANDARD: \\\\\\\"\\\\\\\"};\\n    this.type = \\\\\\\"MeshStandardMaterial\\\\\\\";\\n    this.color = new Color(16777215);\\n    this.roughness = 1;\\n    this.metalness = 0;\\n    this.map = null;\\n    this.lightMap = null;\\n    this.lightMapIntensity = 1;\\n    this.aoMap = null;\\n    this.aoMapIntensity = 1;\\n    this.emissive = new Color(0);\\n    this.emissiveIntensity = 1;\\n    this.emissiveMap = null;\\n    this.bumpMap = null;\\n    this.bumpScale = 1;\\n    this.normalMap = null;\\n    this.normalMapType = TangentSpaceNormalMap;\\n    this.normalScale = new Vector2(1, 1);\\n    this.displacementMap = null;\\n    this.displacementScale = 1;\\n    this.displacementBias = 0;\\n    this.roughnessMap = null;\\n    this.metalnessMap = null;\\n    this.alphaMap = null;\\n    this.envMap = null;\\n    this.envMapIntensity = 1;\\n    this.refractionRatio = 0.98;\\n    this.wireframe = false;\\n    this.wireframeLinewidth = 1;\\n    this.wireframeLinecap = \\\\\\\"round\\\\\\\";\\n    this.wireframeLinejoin = \\\\\\\"round\\\\\\\";\\n    this.flatShading = false;\\n    this.setValues(parameters);\\n  }\\n  copy(source) {\\n    super.copy(source);\\n    this.defines = {STANDARD: \\\\\\\"\\\\\\\"};\\n    this.color.copy(source.color);\\n    this.roughness = source.roughness;\\n    this.metalness = source.metalness;\\n    this.map = source.map;\\n    this.lightMap = source.lightMap;\\n    this.lightMapIntensity = source.lightMapIntensity;\\n    this.aoMap = source.aoMap;\\n    this.aoMapIntensity = source.aoMapIntensity;\\n    this.emissive.copy(source.emissive);\\n    this.emissiveMap = source.emissiveMap;\\n    this.emissiveIntensity = source.emissiveIntensity;\\n    this.bumpMap = source.bumpMap;\\n    this.bumpScale = source.bumpScale;\\n    this.normalMap = source.normalMap;\\n    this.normalMapType = source.normalMapType;\\n    this.normalScale.copy(source.normalScale);\\n    this.displacementMap = source.displacementMap;\\n    this.displacementScale = source.displacementScale;\\n    this.displacementBias = source.displacementBias;\\n    this.roughnessMap = source.roughnessMap;\\n    this.metalnessMap = source.metalnessMap;\\n    this.alphaMap = source.alphaMap;\\n    this.envMap = source.envMap;\\n    this.envMapIntensity = source.envMapIntensity;\\n    this.refractionRatio = source.refractionRatio;\\n    this.wireframe = source.wireframe;\\n    this.wireframeLinewidth = source.wireframeLinewidth;\\n    this.wireframeLinecap = source.wireframeLinecap;\\n    this.wireframeLinejoin = source.wireframeLinejoin;\\n    this.flatShading = source.flatShading;\\n    return this;\\n  }\\n};\\nMeshStandardMaterial.prototype.isMeshStandardMaterial = true;\\n\\n// ../../../node_modules/three/src/materials/MeshLambertMaterial.js\\nvar MeshLambertMaterial = class extends Material {\\n  constructor(parameters) {\\n    super();\\n    this.type = \\\\\\\"MeshLambertMaterial\\\\\\\";\\n    this.color = new Color(16777215);\\n    this.map = null;\\n    this.lightMap = null;\\n    this.lightMapIntensity = 1;\\n    this.aoMap = null;\\n    this.aoMapIntensity = 1;\\n    this.emissive = new Color(0);\\n    this.emissiveIntensity = 1;\\n    this.emissiveMap = null;\\n    this.specularMap = null;\\n    this.alphaMap = null;\\n    this.envMap = null;\\n    this.combine = MultiplyOperation;\\n    this.reflectivity = 1;\\n    this.refractionRatio = 0.98;\\n    this.wireframe = false;\\n    this.wireframeLinewidth = 1;\\n    this.wireframeLinecap = \\\\\\\"round\\\\\\\";\\n    this.wireframeLinejoin = \\\\\\\"round\\\\\\\";\\n    this.setValues(parameters);\\n  }\\n  copy(source) {\\n    super.copy(source);\\n    this.color.copy(source.color);\\n    this.map = source.map;\\n    this.lightMap = source.lightMap;\\n    this.lightMapIntensity = source.lightMapIntensity;\\n    this.aoMap = source.aoMap;\\n    this.aoMapIntensity = source.aoMapIntensity;\\n    this.emissive.copy(source.emissive);\\n    this.emissiveMap = source.emissiveMap;\\n    this.emissiveIntensity = source.emissiveIntensity;\\n    this.specularMap = source.specularMap;\\n    this.alphaMap = source.alphaMap;\\n    this.envMap = source.envMap;\\n    this.combine = source.combine;\\n    this.reflectivity = source.reflectivity;\\n    this.refractionRatio = source.refractionRatio;\\n    this.wireframe = source.wireframe;\\n    this.wireframeLinewidth = source.wireframeLinewidth;\\n    this.wireframeLinecap = source.wireframeLinecap;\\n    this.wireframeLinejoin = source.wireframeLinejoin;\\n    return this;\\n  }\\n};\\nMeshLambertMaterial.prototype.isMeshLambertMaterial = true;\\n\\n// ../../../node_modules/three/src/materials/LineBasicMaterial.js\\nvar LineBasicMaterial = class extends Material {\\n  constructor(parameters) {\\n    super();\\n    this.type = \\\\\\\"LineBasicMaterial\\\\\\\";\\n    this.color = new Color(16777215);\\n    this.linewidth = 1;\\n    this.linecap = \\\\\\\"round\\\\\\\";\\n    this.linejoin = \\\\\\\"round\\\\\\\";\\n    this.setValues(parameters);\\n  }\\n  copy(source) {\\n    super.copy(source);\\n    this.color.copy(source.color);\\n    this.linewidth = source.linewidth;\\n    this.linecap = source.linecap;\\n    this.linejoin = source.linejoin;\\n    return this;\\n  }\\n};\\nLineBasicMaterial.prototype.isLineBasicMaterial = true;\\n\\n// ../../../node_modules/three/src/objects/Line.js\\nvar _start = /* @__PURE__ */ new Vector3();\\nvar _end = /* @__PURE__ */ new Vector3();\\nvar _inverseMatrix3 = /* @__PURE__ */ new Matrix4();\\nvar _ray3 = /* @__PURE__ */ new Ray();\\nvar _sphere4 = /* @__PURE__ */ new Sphere();\\nvar Line = class extends Object3D {\\n  constructor(geometry = new BufferGeometry(), material = new LineBasicMaterial()) {\\n    super();\\n    this.type = \\\\\\\"Line\\\\\\\";\\n    this.geometry = geometry;\\n    this.material = material;\\n    this.updateMorphTargets();\\n  }\\n  copy(source) {\\n    super.copy(source);\\n    this.material = source.material;\\n    this.geometry = source.geometry;\\n    return this;\\n  }\\n  computeLineDistances() {\\n    const geometry = this.geometry;\\n    if (geometry.isBufferGeometry) {\\n      if (geometry.index === null) {\\n        const positionAttribute = geometry.attributes.position;\\n        const lineDistances = [0];\\n        for (let i = 1, l = positionAttribute.count; i < l; i++) {\\n          _start.fromBufferAttribute(positionAttribute, i - 1);\\n          _end.fromBufferAttribute(positionAttribute, i);\\n          lineDistances[i] = lineDistances[i - 1];\\n          lineDistances[i] += _start.distanceTo(_end);\\n        }\\n        geometry.setAttribute(\\\\\\\"lineDistance\\\\\\\", new Float32BufferAttribute(lineDistances, 1));\\n      } else {\\n        console.warn(\\\\\\\"THREE.Line.computeLineDistances(): Computation only possible with non-indexed BufferGeometry.\\\\\\\");\\n      }\\n    } else if (geometry.isGeometry) {\\n      console.error(\\\\\\\"THREE.Line.computeLineDistances() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.\\\\\\\");\\n    }\\n    return this;\\n  }\\n  raycast(raycaster, intersects) {\\n    const geometry = this.geometry;\\n    const matrixWorld = this.matrixWorld;\\n    const threshold = raycaster.params.Line.threshold;\\n    const drawRange = geometry.drawRange;\\n    if (geometry.boundingSphere === null)\\n      geometry.computeBoundingSphere();\\n    _sphere4.copy(geometry.boundingSphere);\\n    _sphere4.applyMatrix4(matrixWorld);\\n    _sphere4.radius += threshold;\\n    if (raycaster.ray.intersectsSphere(_sphere4) === false)\\n      return;\\n    _inverseMatrix3.copy(matrixWorld).invert();\\n    _ray3.copy(raycaster.ray).applyMatrix4(_inverseMatrix3);\\n    const localThreshold = threshold / ((this.scale.x + this.scale.y + this.scale.z) / 3);\\n    const localThresholdSq = localThreshold * localThreshold;\\n    const vStart = new Vector3();\\n    const vEnd = new Vector3();\\n    const interSegment = new Vector3();\\n    const interRay = new Vector3();\\n    const step = this.isLineSegments ? 2 : 1;\\n    if (geometry.isBufferGeometry) {\\n      const index = geometry.index;\\n      const attributes = geometry.attributes;\\n      const positionAttribute = attributes.position;\\n      if (index !== null) {\\n        const start = Math.max(0, drawRange.start);\\n        const end = Math.min(index.count, drawRange.start + drawRange.count);\\n        for (let i = start, l = end - 1; i < l; i += step) {\\n          const a = index.getX(i);\\n          const b = index.getX(i + 1);\\n          vStart.fromBufferAttribute(positionAttribute, a);\\n          vEnd.fromBufferAttribute(positionAttribute, b);\\n          const distSq = _ray3.distanceSqToSegment(vStart, vEnd, interRay, interSegment);\\n          if (distSq > localThresholdSq)\\n            continue;\\n          interRay.applyMatrix4(this.matrixWorld);\\n          const distance = raycaster.ray.origin.distanceTo(interRay);\\n          if (distance < raycaster.near || distance > raycaster.far)\\n            continue;\\n          intersects.push({\\n            distance,\\n            point: interSegment.clone().applyMatrix4(this.matrixWorld),\\n            index: i,\\n            face: null,\\n            faceIndex: null,\\n            object: this\\n          });\\n        }\\n      } else {\\n        const start = Math.max(0, drawRange.start);\\n        const end = Math.min(positionAttribute.count, drawRange.start + drawRange.count);\\n        for (let i = start, l = end - 1; i < l; i += step) {\\n          vStart.fromBufferAttribute(positionAttribute, i);\\n          vEnd.fromBufferAttribute(positionAttribute, i + 1);\\n          const distSq = _ray3.distanceSqToSegment(vStart, vEnd, interRay, interSegment);\\n          if (distSq > localThresholdSq)\\n            continue;\\n          interRay.applyMatrix4(this.matrixWorld);\\n          const distance = raycaster.ray.origin.distanceTo(interRay);\\n          if (distance < raycaster.near || distance > raycaster.far)\\n            continue;\\n          intersects.push({\\n            distance,\\n            point: interSegment.clone().applyMatrix4(this.matrixWorld),\\n            index: i,\\n            face: null,\\n            faceIndex: null,\\n            object: this\\n          });\\n        }\\n      }\\n    } else if (geometry.isGeometry) {\\n      console.error(\\\\\\\"THREE.Line.raycast() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.\\\\\\\");\\n    }\\n  }\\n  updateMorphTargets() {\\n    const geometry = this.geometry;\\n    if (geometry.isBufferGeometry) {\\n      const morphAttributes = geometry.morphAttributes;\\n      const keys = Object.keys(morphAttributes);\\n      if (keys.length > 0) {\\n        const morphAttribute = morphAttributes[keys[0]];\\n        if (morphAttribute !== void 0) {\\n          this.morphTargetInfluences = [];\\n          this.morphTargetDictionary = {};\\n          for (let m = 0, ml = morphAttribute.length; m < ml; m++) {\\n            const name = morphAttribute[m].name || String(m);\\n            this.morphTargetInfluences.push(0);\\n            this.morphTargetDictionary[name] = m;\\n          }\\n        }\\n      }\\n    } else {\\n      const morphTargets = geometry.morphTargets;\\n      if (morphTargets !== void 0 && morphTargets.length > 0) {\\n        console.error(\\\\\\\"THREE.Line.updateMorphTargets() does not support THREE.Geometry. Use THREE.BufferGeometry instead.\\\\\\\");\\n      }\\n    }\\n  }\\n};\\nLine.prototype.isLine = true;\\n\\n// ../../../node_modules/three/src/objects/LineSegments.js\\nvar _start2 = /* @__PURE__ */ new Vector3();\\nvar _end2 = /* @__PURE__ */ new Vector3();\\nvar LineSegments = class extends Line {\\n  constructor(geometry, material) {\\n    super(geometry, material);\\n    this.type = \\\\\\\"LineSegments\\\\\\\";\\n  }\\n  computeLineDistances() {\\n    const geometry = this.geometry;\\n    if (geometry.isBufferGeometry) {\\n      if (geometry.index === null) {\\n        const positionAttribute = geometry.attributes.position;\\n        const lineDistances = [];\\n        for (let i = 0, l = positionAttribute.count; i < l; i += 2) {\\n          _start2.fromBufferAttribute(positionAttribute, i);\\n          _end2.fromBufferAttribute(positionAttribute, i + 1);\\n          lineDistances[i] = i === 0 ? 0 : lineDistances[i - 1];\\n          lineDistances[i + 1] = lineDistances[i] + _start2.distanceTo(_end2);\\n        }\\n        geometry.setAttribute(\\\\\\\"lineDistance\\\\\\\", new Float32BufferAttribute(lineDistances, 1));\\n      } else {\\n        console.warn(\\\\\\\"THREE.LineSegments.computeLineDistances(): Computation only possible with non-indexed BufferGeometry.\\\\\\\");\\n      }\\n    } else if (geometry.isGeometry) {\\n      console.error(\\\\\\\"THREE.LineSegments.computeLineDistances() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.\\\\\\\");\\n    }\\n    return this;\\n  }\\n};\\nLineSegments.prototype.isLineSegments = true;\\n\\n// ../../../node_modules/three/src/objects/LOD.js\\nvar _v16 = /* @__PURE__ */ new Vector3();\\nvar _v23 = /* @__PURE__ */ new Vector3();\\nvar LOD = class extends Object3D {\\n  constructor() {\\n    super();\\n    this._currentLevel = 0;\\n    this.type = \\\\\\\"LOD\\\\\\\";\\n    Object.defineProperties(this, {\\n      levels: {\\n        enumerable: true,\\n        value: []\\n      },\\n      isLOD: {\\n        value: true\\n      }\\n    });\\n    this.autoUpdate = true;\\n  }\\n  copy(source) {\\n    super.copy(source, false);\\n    const levels = source.levels;\\n    for (let i = 0, l = levels.length; i < l; i++) {\\n      const level = levels[i];\\n      this.addLevel(level.object.clone(), level.distance);\\n    }\\n    this.autoUpdate = source.autoUpdate;\\n    return this;\\n  }\\n  addLevel(object, distance = 0) {\\n    distance = Math.abs(distance);\\n    const levels = this.levels;\\n    let l;\\n    for (l = 0; l < levels.length; l++) {\\n      if (distance < levels[l].distance) {\\n        break;\\n      }\\n    }\\n    levels.splice(l, 0, {distance, object});\\n    this.add(object);\\n    return this;\\n  }\\n  getCurrentLevel() {\\n    return this._currentLevel;\\n  }\\n  getObjectForDistance(distance) {\\n    const levels = this.levels;\\n    if (levels.length > 0) {\\n      let i, l;\\n      for (i = 1, l = levels.length; i < l; i++) {\\n        if (distance < levels[i].distance) {\\n          break;\\n        }\\n      }\\n      return levels[i - 1].object;\\n    }\\n    return null;\\n  }\\n  raycast(raycaster, intersects) {\\n    const levels = this.levels;\\n    if (levels.length > 0) {\\n      _v16.setFromMatrixPosition(this.matrixWorld);\\n      const distance = raycaster.ray.origin.distanceTo(_v16);\\n      this.getObjectForDistance(distance).raycast(raycaster, intersects);\\n    }\\n  }\\n  update(camera) {\\n    const levels = this.levels;\\n    if (levels.length > 1) {\\n      _v16.setFromMatrixPosition(camera.matrixWorld);\\n      _v23.setFromMatrixPosition(this.matrixWorld);\\n      const distance = _v16.distanceTo(_v23) / camera.zoom;\\n      levels[0].object.visible = true;\\n      let i, l;\\n      for (i = 1, l = levels.length; i < l; i++) {\\n        if (distance >= levels[i].distance) {\\n          levels[i - 1].object.visible = false;\\n          levels[i].object.visible = true;\\n        } else {\\n          break;\\n        }\\n      }\\n      this._currentLevel = i - 1;\\n      for (; i < l; i++) {\\n        levels[i].object.visible = false;\\n      }\\n    }\\n  }\\n  toJSON(meta) {\\n    const data = super.toJSON(meta);\\n    if (this.autoUpdate === false)\\n      data.object.autoUpdate = false;\\n    data.object.levels = [];\\n    const levels = this.levels;\\n    for (let i = 0, l = levels.length; i < l; i++) {\\n      const level = levels[i];\\n      data.object.levels.push({\\n        object: level.object.uuid,\\n        distance: level.distance\\n      });\\n    }\\n    return data;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/core/geometry/Constant.ts\\nvar ObjectType;\\n(function(ObjectType2) {\\n  ObjectType2[\\\\\\\"OBJECT3D\\\\\\\"] = \\\\\\\"Object3D\\\\\\\";\\n  ObjectType2[\\\\\\\"GROUP\\\\\\\"] = \\\\\\\"Group\\\\\\\";\\n  ObjectType2[\\\\\\\"MESH\\\\\\\"] = \\\\\\\"Mesh\\\\\\\";\\n  ObjectType2[\\\\\\\"POINTS\\\\\\\"] = \\\\\\\"Points\\\\\\\";\\n  ObjectType2[\\\\\\\"LINE_SEGMENTS\\\\\\\"] = \\\\\\\"LineSegments\\\\\\\";\\n  ObjectType2[\\\\\\\"LOD\\\\\\\"] = \\\\\\\"LOD\\\\\\\";\\n})(ObjectType || (ObjectType = {}));\\nvar OBJECT_CONSTRUCTOR_BY_OBJECT_TYPE = {\\n  [ObjectType.MESH]: Mesh,\\n  [ObjectType.GROUP]: Group,\\n  [ObjectType.POINTS]: Points,\\n  [ObjectType.LINE_SEGMENTS]: LineSegments,\\n  [ObjectType.OBJECT3D]: Object3D,\\n  [ObjectType.LOD]: LOD\\n};\\nfunction objectTypeFromConstructor(constructor) {\\n  switch (constructor) {\\n    case Object3D:\\n      return ObjectType.OBJECT3D;\\n    case Group:\\n      return ObjectType.GROUP;\\n    case Mesh:\\n      return ObjectType.MESH;\\n    case Points:\\n      return ObjectType.POINTS;\\n    case LineSegments:\\n      return ObjectType.LINE_SEGMENTS;\\n    case LOD:\\n      return ObjectType.LOD;\\n    default:\\n      Poly.warn(\\\\\\\"object type not supported\\\\\\\", constructor);\\n      return ObjectType.MESH;\\n  }\\n}\\nvar ObjectTypes = [ObjectType.MESH, ObjectType.POINTS, ObjectType.LINE_SEGMENTS];\\nvar ObjectTypeMenuEntries = [\\n  {name: \\\\\\\"Mesh\\\\\\\", value: ObjectTypes.indexOf(ObjectType.MESH)},\\n  {name: \\\\\\\"Points\\\\\\\", value: ObjectTypes.indexOf(ObjectType.POINTS)},\\n  {name: \\\\\\\"LineSegments\\\\\\\", value: ObjectTypes.indexOf(ObjectType.LINE_SEGMENTS)}\\n];\\nvar materials = {\\n  MeshStandard: new MeshStandardMaterial({\\n    color: 16777215,\\n    side: FrontSide,\\n    metalness: 0.5,\\n    roughness: 0.9\\n  }),\\n  [ObjectType.MESH]: new MeshLambertMaterial({\\n    color: new Color(1, 1, 1),\\n    side: FrontSide,\\n    vertexColors: false,\\n    transparent: true,\\n    depthTest: true\\n  }),\\n  [ObjectType.POINTS]: new PointsMaterial({\\n    color: 16777215,\\n    size: 0.1,\\n    depthTest: true\\n  }),\\n  [ObjectType.LINE_SEGMENTS]: new LineBasicMaterial({\\n    color: 16777215,\\n    linewidth: 1\\n  })\\n};\\nvar AttribClass;\\n(function(AttribClass3) {\\n  AttribClass3[AttribClass3[\\\\\\\"VERTEX\\\\\\\"] = 0] = \\\\\\\"VERTEX\\\\\\\";\\n  AttribClass3[AttribClass3[\\\\\\\"OBJECT\\\\\\\"] = 1] = \\\\\\\"OBJECT\\\\\\\";\\n})(AttribClass || (AttribClass = {}));\\nvar AttribType;\\n(function(AttribType2) {\\n  AttribType2[AttribType2[\\\\\\\"NUMERIC\\\\\\\"] = 0] = \\\\\\\"NUMERIC\\\\\\\";\\n  AttribType2[AttribType2[\\\\\\\"STRING\\\\\\\"] = 1] = \\\\\\\"STRING\\\\\\\";\\n})(AttribType || (AttribType = {}));\\nvar AttribSize;\\n(function(AttribSize5) {\\n  AttribSize5[AttribSize5[\\\\\\\"FLOAT\\\\\\\"] = 1] = \\\\\\\"FLOAT\\\\\\\";\\n  AttribSize5[AttribSize5[\\\\\\\"VECTOR2\\\\\\\"] = 2] = \\\\\\\"VECTOR2\\\\\\\";\\n  AttribSize5[AttribSize5[\\\\\\\"VECTOR3\\\\\\\"] = 3] = \\\\\\\"VECTOR3\\\\\\\";\\n  AttribSize5[AttribSize5[\\\\\\\"VECTOR4\\\\\\\"] = 4] = \\\\\\\"VECTOR4\\\\\\\";\\n})(AttribSize || (AttribSize = {}));\\nvar CoreConstant = {\\n  ATTRIB_CLASS: {\\n    VERTEX: 0,\\n    OBJECT: 1\\n  },\\n  OBJECT_TYPES: ObjectTypes,\\n  CONSTRUCTOR_NAMES_BY_CONSTRUCTOR_NAME: {\\n    [Scene.name]: \\\\\\\"Scene\\\\\\\",\\n    [Group.name]: \\\\\\\"Group\\\\\\\",\\n    [Object3D.name]: \\\\\\\"Object3D\\\\\\\",\\n    [Mesh.name]: \\\\\\\"Mesh\\\\\\\",\\n    [Points.name]: \\\\\\\"Points\\\\\\\",\\n    [LineSegments.name]: \\\\\\\"LineSegments\\\\\\\",\\n    [Bone.name]: \\\\\\\"Bone\\\\\\\",\\n    [SkinnedMesh.name]: \\\\\\\"SkinnedMesh\\\\\\\"\\n  },\\n  CONSTRUCTORS_BY_NAME: {\\n    [ObjectType.MESH]: Mesh,\\n    [ObjectType.POINTS]: Points,\\n    [ObjectType.LINE_SEGMENTS]: LineSegments\\n  },\\n  MATERIALS: materials\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/core/geometry/Attribute.ts\\nvar Attribute;\\n(function(Attribute2) {\\n  Attribute2[\\\\\\\"COLOR\\\\\\\"] = \\\\\\\"color\\\\\\\";\\n  Attribute2[\\\\\\\"NORMAL\\\\\\\"] = \\\\\\\"normal\\\\\\\";\\n  Attribute2[\\\\\\\"POSITION\\\\\\\"] = \\\\\\\"position\\\\\\\";\\n  Attribute2[\\\\\\\"PSCALE\\\\\\\"] = \\\\\\\"pscale\\\\\\\";\\n  Attribute2[\\\\\\\"UP\\\\\\\"] = \\\\\\\"up\\\\\\\";\\n  Attribute2[\\\\\\\"UV\\\\\\\"] = \\\\\\\"uv\\\\\\\";\\n  Attribute2[\\\\\\\"SCALE\\\\\\\"] = \\\\\\\"scale\\\\\\\";\\n  Attribute2[\\\\\\\"TANGENT\\\\\\\"] = \\\\\\\"tangent\\\\\\\";\\n})(Attribute || (Attribute = {}));\\nvar ATTRIB_NAME_MAP = {\\n  P: Attribute.POSITION,\\n  N: Attribute.NORMAL,\\n  Cd: Attribute.COLOR\\n};\\nvar CoreAttribute = class {\\n  static remapName(name) {\\n    return ATTRIB_NAME_MAP[name] || name;\\n  }\\n  static arrayToIndexedArrays(array) {\\n    const index_by_value = {};\\n    let current_index = 0;\\n    const indices = [];\\n    const values = [];\\n    let i = 0;\\n    while (i < array.length) {\\n      const value = array[i];\\n      const index = index_by_value[value];\\n      if (index != null) {\\n        indices.push(index);\\n      } else {\\n        values.push(value);\\n        indices.push(current_index);\\n        index_by_value[value] = current_index;\\n        current_index += 1;\\n      }\\n      i++;\\n    }\\n    return {\\n      indices,\\n      values\\n    };\\n  }\\n  static default_value(size) {\\n    switch (size) {\\n      case 1:\\n        return 0;\\n      case 2:\\n        return new Vector2(0, 0);\\n      case 3:\\n        return new Vector3(0, 0, 0);\\n      default:\\n        throw `size ${size} not yet implemented`;\\n    }\\n  }\\n  static copy(src, dest, mark_as_needs_update = true) {\\n    const src_array = src?.array;\\n    const dest_array = dest?.array;\\n    if (src_array && dest_array) {\\n      const min_length = Math.min(src_array.length, dest_array.length);\\n      for (let i = 0; i < min_length; i++) {\\n        dest_array[i] = src_array[i];\\n      }\\n      if (mark_as_needs_update) {\\n        dest.needsUpdate = true;\\n      }\\n    }\\n  }\\n  static attribSizeFromValue(val) {\\n    if (CoreType.isString(val) || CoreType.isNumber(val)) {\\n      return AttribSize.FLOAT;\\n    }\\n    if (CoreType.isArray(val)) {\\n      return val.length;\\n    }\\n    switch (val.constructor) {\\n      case Vector2:\\n        return AttribSize.VECTOR2;\\n      case Vector3:\\n        return AttribSize.VECTOR3;\\n      case Vector4:\\n        return AttribSize.VECTOR4;\\n    }\\n    return 0;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/core/geometry/Entity.ts\\nvar CoreEntity = class {\\n  constructor(_index) {\\n    this._index = _index;\\n  }\\n  index() {\\n    return this._index;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/core/geometry/Point.ts\\nvar ATTRIB_NAMES = {\\n  POSITION: \\\\\\\"position\\\\\\\",\\n  NORMAL: \\\\\\\"normal\\\\\\\"\\n};\\nvar ComponentName;\\n(function(ComponentName2) {\\n  ComponentName2[\\\\\\\"x\\\\\\\"] = \\\\\\\"x\\\\\\\";\\n  ComponentName2[\\\\\\\"y\\\\\\\"] = \\\\\\\"y\\\\\\\";\\n  ComponentName2[\\\\\\\"z\\\\\\\"] = \\\\\\\"z\\\\\\\";\\n  ComponentName2[\\\\\\\"w\\\\\\\"] = \\\\\\\"w\\\\\\\";\\n  ComponentName2[\\\\\\\"r\\\\\\\"] = \\\\\\\"r\\\\\\\";\\n  ComponentName2[\\\\\\\"g\\\\\\\"] = \\\\\\\"g\\\\\\\";\\n  ComponentName2[\\\\\\\"b\\\\\\\"] = \\\\\\\"b\\\\\\\";\\n})(ComponentName || (ComponentName = {}));\\nvar COMPONENT_INDICES = {\\n  x: 0,\\n  y: 1,\\n  z: 2,\\n  w: 3,\\n  r: 0,\\n  g: 1,\\n  b: 2\\n};\\nvar PTNUM = \\\\\\\"ptnum\\\\\\\";\\nvar DOT = \\\\\\\".\\\\\\\";\\nvar CorePoint = class extends CoreEntity {\\n  constructor(_coreGeometry, _index) {\\n    super(_index);\\n    this._coreGeometry = _coreGeometry;\\n    this._geometry = this._coreGeometry.geometry();\\n  }\\n  applyMatrix4(matrix) {\\n    this.position().applyMatrix4(matrix);\\n  }\\n  coreGeometry() {\\n    return this._coreGeometry;\\n  }\\n  geometry() {\\n    return this._geometry = this._geometry || this._coreGeometry.geometry();\\n  }\\n  attribSize(name) {\\n    name = CoreAttribute.remapName(name);\\n    return this._geometry.getAttribute(name).itemSize;\\n  }\\n  hasAttrib(name) {\\n    const remapped_name = CoreAttribute.remapName(name);\\n    return this._coreGeometry.hasAttrib(remapped_name);\\n  }\\n  attribValue(name, target) {\\n    if (name === PTNUM) {\\n      return this.index();\\n    } else {\\n      let component_name = null;\\n      let component_index = null;\\n      if (name[name.length - 2] === DOT) {\\n        component_name = name[name.length - 1];\\n        component_index = COMPONENT_INDICES[component_name];\\n        name = name.substring(0, name.length - 2);\\n      }\\n      const remaped_name = CoreAttribute.remapName(name);\\n      const attrib = this._geometry.getAttribute(remaped_name);\\n      if (attrib) {\\n        const {array} = attrib;\\n        if (this._coreGeometry.isAttribIndexed(remaped_name)) {\\n          return this.indexedAttribValue(remaped_name);\\n        } else {\\n          const size = attrib.itemSize;\\n          const start_index = this._index * size;\\n          if (component_index == null) {\\n            switch (size) {\\n              case 1:\\n                return array[start_index];\\n                break;\\n              case 2:\\n                target = target || new Vector2();\\n                target.fromArray(array, start_index);\\n                return target;\\n                break;\\n              case 3:\\n                target = target || new Vector3();\\n                target.fromArray(array, start_index);\\n                return target;\\n                break;\\n              case 4:\\n                target = target || new Vector4();\\n                target.fromArray(array, start_index);\\n                return target;\\n                break;\\n              default:\\n                throw `size not valid (${size})`;\\n            }\\n          } else {\\n            switch (size) {\\n              case 1:\\n                return array[start_index];\\n                break;\\n              default:\\n                return array[start_index + component_index];\\n            }\\n          }\\n        }\\n      } else {\\n        const message = `attrib ${name} not found. availables are: ${Object.keys(this._geometry.attributes || {}).join(\\\\\\\",\\\\\\\")}`;\\n        console.warn(message);\\n        throw message;\\n      }\\n    }\\n  }\\n  attribValueNumber(name) {\\n    const remapedName = CoreAttribute.remapName(name);\\n    const attrib = this._geometry.getAttribute(remapedName);\\n    return attrib.array[this._index];\\n  }\\n  attribValueVector2(name, target) {\\n    const remapedName = CoreAttribute.remapName(name);\\n    const attrib = this._geometry.getAttribute(remapedName);\\n    target.fromArray(attrib.array, this._index * 2);\\n    return target;\\n  }\\n  attribValueVector3(name, target) {\\n    const remapedName = CoreAttribute.remapName(name);\\n    const attrib = this._geometry.getAttribute(remapedName);\\n    target.fromArray(attrib.array, this._index * 3);\\n    return target;\\n  }\\n  attribValueVector4(name, target) {\\n    const remapedName = CoreAttribute.remapName(name);\\n    const attrib = this._geometry.getAttribute(remapedName);\\n    target.fromArray(attrib.array, this._index * 4);\\n    return target;\\n  }\\n  indexedAttribValue(name) {\\n    const value_index = this.attribValueIndex(name);\\n    return this._coreGeometry.userDataAttrib(name)[value_index];\\n  }\\n  stringAttribValue(name) {\\n    return this.indexedAttribValue(name);\\n  }\\n  attribValueIndex(name) {\\n    if (this._coreGeometry.isAttribIndexed(name)) {\\n      return this._geometry.getAttribute(name).array[this._index];\\n    } else {\\n      return -1;\\n    }\\n  }\\n  isAttribIndexed(name) {\\n    return this._coreGeometry.isAttribIndexed(name);\\n  }\\n  position() {\\n    return this._position || (this._position = this.getPosition(new Vector3()));\\n  }\\n  getPosition(target) {\\n    const {array} = this._geometry.getAttribute(ATTRIB_NAMES.POSITION);\\n    return target.fromArray(array, this._index * 3);\\n  }\\n  setPosition(new_position) {\\n    this.setAttribValueVector3(ATTRIB_NAMES.POSITION, new_position);\\n  }\\n  normal() {\\n    return this._normal = this._normal || this.getNormal(new Vector3());\\n  }\\n  getNormal(target) {\\n    const {array} = this._geometry.getAttribute(ATTRIB_NAMES.NORMAL);\\n    return target.fromArray(array, this._index * 3);\\n  }\\n  setNormal(new_normal) {\\n    return this.setAttribValueVector3(ATTRIB_NAMES.NORMAL, new_normal);\\n  }\\n  setAttribValue(attribName, value) {\\n    const attrib = this._geometry.getAttribute(attribName);\\n    const array = attrib.array;\\n    const attribSize = attrib.itemSize;\\n    if (CoreType.isArray(value)) {\\n      for (let i = 0; i < attribSize; i++) {\\n        array[this._index * attribSize + i] = value[i];\\n      }\\n      return;\\n    }\\n    switch (attribSize) {\\n      case 1:\\n        array[this._index] = value;\\n        break;\\n      case 2:\\n        const v2 = value;\\n        const i2 = this._index * 2;\\n        array[i2 + 0] = v2.x;\\n        array[i2 + 1] = v2.y;\\n        break;\\n      case 3:\\n        const isColor = value.r != null;\\n        const i3 = this._index * 3;\\n        if (isColor) {\\n          const col = value;\\n          array[i3 + 0] = col.r;\\n          array[i3 + 1] = col.g;\\n          array[i3 + 2] = col.b;\\n        } else {\\n          const v3 = value;\\n          array[i3 + 0] = v3.x;\\n          array[i3 + 1] = v3.y;\\n          array[i3 + 2] = v3.z;\\n        }\\n        break;\\n      case 4:\\n        const v4 = value;\\n        const i4 = this._index * 4;\\n        array[i4 + 0] = v4.x;\\n        array[i4 + 1] = v4.y;\\n        array[i4 + 2] = v4.z;\\n        array[i4 + 3] = v4.w;\\n        break;\\n      default:\\n        console.warn(`Point.set_attrib_value does not yet allow attrib size ${attribSize}`);\\n        throw `attrib size ${attribSize} not implemented`;\\n    }\\n  }\\n  setAttribValueFromNumber(attribName, value) {\\n    const attrib = this._geometry.getAttribute(attribName);\\n    const array = attrib.array;\\n    array[this._index] = value;\\n  }\\n  setAttribValueFromVector2(attribName, value) {\\n    const attrib = this._geometry.getAttribute(attribName);\\n    value.toArray(attrib.array, this._index * 2);\\n  }\\n  setAttribValueFromVector3(attribName, value) {\\n    const attrib = this._geometry.getAttribute(attribName);\\n    value.toArray(attrib.array, this._index * 3);\\n  }\\n  setAttribValueFromVector4(attribName, value) {\\n    const attrib = this._geometry.getAttribute(attribName);\\n    value.toArray(attrib.array, this._index * 4);\\n  }\\n  setAttribValueVector3(name, value) {\\n    if (value == null) {\\n      return;\\n    }\\n    if (name == null) {\\n      throw \\\\\\\"Point.set_attrib_value requires a name\\\\\\\";\\n    }\\n    const attrib = this._geometry.getAttribute(name);\\n    const array = attrib.array;\\n    const i = this._index * 3;\\n    array[i] = value.x;\\n    array[i + 1] = value.y;\\n    array[i + 2] = value.z;\\n  }\\n  setAttribIndex(name, new_value_index) {\\n    const array = this._geometry.getAttribute(name).array;\\n    return array[this._index] = new_value_index;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/core/math/Easing.ts\\nvar ease_i = function(power) {\\n  return function(t) {\\n    return Math.pow(t, power);\\n  };\\n};\\nvar ease_o = function(power) {\\n  return function(t) {\\n    return 1 - Math.abs(Math.pow(t - 1, power));\\n  };\\n};\\nvar ease_io = function(power) {\\n  return function(t) {\\n    return t < 0.5 ? ease_i(power)(t * 2) / 2 : ease_o(power)(t * 2 - 1) / 2 + 0.5;\\n  };\\n};\\nvar Easing = {\\n  linear: ease_io(1),\\n  ease_i: function(t, power) {\\n    return ease_i(power)(t);\\n  },\\n  ease_o: function(t, power) {\\n    return ease_o(power)(t);\\n  },\\n  ease_io: function(t, power) {\\n    return ease_io(power)(t);\\n  },\\n  ease_i2: ease_i(2),\\n  ease_o2: ease_o(2),\\n  ease_io2: ease_io(2),\\n  ease_i3: ease_io(3),\\n  ease_o3: ease_io(3),\\n  ease_io3: ease_io(3),\\n  ease_i4: ease_io(4),\\n  ease_o4: ease_io(4),\\n  ease_io4: ease_io(4),\\n  ease_i_sin: function(t) {\\n    return 1 + Math.sin(Math.PI / 2 * t - Math.PI / 2);\\n  },\\n  ease_o_sin: function(t) {\\n    return Math.sin(Math.PI / 2 * t);\\n  },\\n  ease_io_sin: function(t) {\\n    return (1 + Math.sin(Math.PI * t - Math.PI / 2)) / 2;\\n  },\\n  ease_i_elastic: function(t) {\\n    return (0.04 - 0.04 / t) * Math.sin(25 * t) + 1;\\n  },\\n  ease_o_elastic: function(t) {\\n    return 0.04 * t / --t * Math.sin(25 * t);\\n  },\\n  ease_io_elastic: function(t) {\\n    return (t -= 0.5) < 0 ? (0.02 + 0.01 / t) * Math.sin(50 * t) : (0.02 - 0.01 / t) * Math.sin(50 * t) + 1;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/core/math/_Module.ts\\nvar RAD_DEG_RATIO = Math.PI / 180;\\nvar RAND_A = 12.9898;\\nvar RAND_B = 78.233;\\nvar RAND_C = 43758.5453;\\nvar CoreMath = class {\\n  static clamp(val, min, max) {\\n    if (val < min) {\\n      return min;\\n    } else if (val > max) {\\n      return max;\\n    } else {\\n      return val;\\n    }\\n  }\\n  static fit01(val, dest_min, dest_max) {\\n    return this.fit(val, 0, 1, dest_min, dest_max);\\n  }\\n  static fit(val, src_min, src_max, dest_min, dest_max) {\\n    const src_range = src_max - src_min;\\n    const dest_range = dest_max - dest_min;\\n    const r = (val - src_min) / src_range;\\n    return r * dest_range + dest_min;\\n  }\\n  static blend(num0, num1, blend) {\\n    return (1 - blend) * num0 + blend * num1;\\n  }\\n  static degrees_to_radians(degrees) {\\n    return degrees * RAD_DEG_RATIO;\\n  }\\n  static radians_to_degrees(radians) {\\n    return radians / RAD_DEG_RATIO;\\n  }\\n  static deg2rad(deg) {\\n    return this.degrees_to_radians(deg);\\n  }\\n  static rad2deg(rad) {\\n    return this.radians_to_degrees(rad);\\n  }\\n  static rand(number) {\\n    if (CoreType.isNumber(number)) {\\n      return this.randFloat(number);\\n    } else {\\n      return this.randVec2(number);\\n    }\\n  }\\n  static round(number, step_size) {\\n    const steps_count = number / step_size;\\n    const rounded_steps_count = number < 0 ? Math.ceil(steps_count) : Math.floor(steps_count);\\n    return rounded_steps_count * step_size;\\n  }\\n  static highest_even(number) {\\n    return 2 * Math.ceil(number * 0.5);\\n  }\\n  static randFloat(x, y = 136574) {\\n    this._vec.x = x;\\n    this._vec.y = y;\\n    return this.randVec2(this._vec);\\n  }\\n  static randVec2(uv) {\\n    const dt = uv.x * RAND_A + uv.y * RAND_B;\\n    const sn = dt % Math.PI;\\n    return this.fract(Math.sin(sn) * RAND_C);\\n  }\\n  static geodesic_distance(lnglat1, lnglat2) {\\n    var R = 6371e3;\\n    var d1 = this.deg2rad(lnglat1.lat);\\n    var d2 = this.deg2rad(lnglat2.lat);\\n    var ad1 = this.deg2rad(lnglat2.lat - lnglat1.lat);\\n    var ad2 = this.deg2rad(lnglat2.lng - lnglat1.lng);\\n    var a = Math.sin(ad1 / 2) * Math.sin(ad1 / 2) + Math.cos(d1) * Math.cos(d2) * Math.sin(ad2 / 2) * Math.sin(ad2 / 2);\\n    var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a));\\n    var d = R * c;\\n    return d;\\n  }\\n  static expand_triangle(triangle, margin) {\\n    triangle.getMidpoint(this._triangle_mid);\\n    this._triangle_mid_to_corner.copy(triangle.a).sub(this._triangle_mid);\\n    this._triangle_mid_to_corner.normalize().multiplyScalar(margin);\\n    triangle.a.add(this._triangle_mid_to_corner);\\n    this._triangle_mid_to_corner.copy(triangle.b).sub(this._triangle_mid);\\n    this._triangle_mid_to_corner.normalize().multiplyScalar(margin);\\n    triangle.b.add(this._triangle_mid_to_corner);\\n    this._triangle_mid_to_corner.copy(triangle.c).sub(this._triangle_mid);\\n    this._triangle_mid_to_corner.normalize().multiplyScalar(margin);\\n    triangle.c.add(this._triangle_mid_to_corner);\\n  }\\n  static nearestPower2(num) {\\n    return Math.pow(2, Math.ceil(Math.log(num) / Math.log(2)));\\n  }\\n};\\nCoreMath.Easing = Easing;\\nCoreMath.fract = (number) => number - Math.floor(number);\\nCoreMath._vec = {x: 0, y: 136574};\\nCoreMath._triangle_mid = new Vector3();\\nCoreMath._triangle_mid_to_corner = new Vector3();\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/core/geometry/Face.ts\\nvar CoreFace = class {\\n  constructor(_coreGeometry, _index) {\\n    this._coreGeometry = _coreGeometry;\\n    this._index = _index;\\n    this._geometry = this._coreGeometry.geometry();\\n  }\\n  index() {\\n    return this._index;\\n  }\\n  points() {\\n    return this._points = this._points || this._get_points();\\n  }\\n  applyMatrix4(matrix) {\\n    for (let point of this.points()) {\\n      point.applyMatrix4(matrix);\\n    }\\n  }\\n  _get_points() {\\n    const indexArray = this._geometry.index?.array || [];\\n    const start = this._index * 3;\\n    return [\\n      new CorePoint(this._coreGeometry, indexArray[start + 0]),\\n      new CorePoint(this._coreGeometry, indexArray[start + 1]),\\n      new CorePoint(this._coreGeometry, indexArray[start + 2])\\n    ];\\n  }\\n  positions() {\\n    return this._positions = this._positions || this._getPositions();\\n  }\\n  _getPositions() {\\n    const points2 = this.points();\\n    return [points2[0].position(), points2[1].position(), points2[2].position()];\\n  }\\n  triangle() {\\n    return this._triangle = this._triangle || this._get_triangle();\\n  }\\n  _get_triangle() {\\n    const positions = this.positions();\\n    return new Triangle(positions[0], positions[1], positions[2]);\\n  }\\n  deltas() {\\n    return this._deltas = this._deltas || this._getDeltas();\\n  }\\n  _getDeltas() {\\n    const positions = this.positions();\\n    return [positions[1].clone().sub(positions[0]), positions[2].clone().sub(positions[0])];\\n  }\\n  area() {\\n    return this.triangle().getArea();\\n  }\\n  center(target) {\\n    const positions = this.positions();\\n    target.x = (positions[0].x + positions[1].x + positions[2].x) / 3;\\n    target.y = (positions[0].y + positions[1].y + positions[2].y) / 3;\\n    target.z = (positions[0].z + positions[1].z + positions[2].z) / 3;\\n    return target;\\n  }\\n  randomPosition(seed) {\\n    let weights = [CoreMath.randFloat(seed), CoreMath.randFloat(seed * 6541)];\\n    if (weights[0] + weights[1] > 1) {\\n      weights[0] = 1 - weights[0];\\n      weights[1] = 1 - weights[1];\\n    }\\n    return this.positions()[0].clone().add(this.deltas()[0].clone().multiplyScalar(weights[0])).add(this.deltas()[1].clone().multiplyScalar(weights[1]));\\n  }\\n  attribValueAtPosition(attrib_name, position) {\\n    const barycentricCoordinates = new Vector3();\\n    this.triangle().getBarycoord(position, barycentricCoordinates);\\n    const weights = barycentricCoordinates.toArray();\\n    const attrib = this._geometry.attributes[attrib_name];\\n    const attribSize = attrib.itemSize;\\n    const pointValues = this.points().map((point) => point.attribValue(attrib_name));\\n    let newAttribValue;\\n    let sum;\\n    let index = 0;\\n    switch (attribSize) {\\n      case 1: {\\n        sum = 0;\\n        for (let pointValue of pointValues) {\\n          sum += pointValue * weights[index];\\n          index++;\\n        }\\n        newAttribValue = sum;\\n        break;\\n      }\\n      default: {\\n        for (let pointValue of pointValues) {\\n          const weightedValue = pointValue.multiplyScalar(weights[index]);\\n          if (sum) {\\n            sum.add(weightedValue);\\n          } else {\\n            sum = weightedValue;\\n          }\\n          index++;\\n        }\\n        newAttribValue = sum;\\n      }\\n    }\\n    return newAttribValue;\\n  }\\n  static interpolatedValue(geometry, face, intersectPoint, attrib) {\\n    const pointIndices = [face.a, face.b, face.c];\\n    const positionAttrib = geometry.getAttribute(\\\\\\\"position\\\\\\\");\\n    const positionAttribArray = positionAttrib.array;\\n    const pointPositions = pointIndices.map((point_index) => new Vector3(positionAttribArray[point_index * 3 + 0], positionAttribArray[point_index * 3 + 1], positionAttribArray[point_index * 3 + 2]));\\n    const attribSize = attrib.itemSize;\\n    const attribArray = attrib.array;\\n    let attribValues = [];\\n    switch (attribSize) {\\n      case 1:\\n        attribValues = pointIndices.map((point_index) => attribArray[point_index]);\\n        break;\\n      case 2:\\n        attribValues = pointIndices.map((point_index) => new Vector2(attribArray[point_index * 2 + 0], attribArray[point_index * 2 + 1]));\\n        break;\\n      case 3:\\n        attribValues = pointIndices.map((point_index) => new Vector3(attribArray[point_index * 3 + 0], attribArray[point_index * 3 + 1], attribArray[point_index * 3 + 2]));\\n        break;\\n    }\\n    const distToPoints = pointIndices.map((point_index, i) => intersectPoint.distanceTo(pointPositions[i]));\\n    const distanceTotal = ArrayUtils.sum([\\n      distToPoints[0] * distToPoints[1],\\n      distToPoints[0] * distToPoints[2],\\n      distToPoints[1] * distToPoints[2]\\n    ]);\\n    const weights = [\\n      distToPoints[1] * distToPoints[2] / distanceTotal,\\n      distToPoints[0] * distToPoints[2] / distanceTotal,\\n      distToPoints[0] * distToPoints[1] / distanceTotal\\n    ];\\n    let newAttribValue;\\n    switch (attribSize) {\\n      case 1:\\n        newAttribValue = ArrayUtils.sum(pointIndices.map((point_indx, i) => weights[i] * attribValues[i]));\\n        break;\\n      default:\\n        var values = pointIndices.map((point_index, i) => attribValues[i].multiplyScalar(weights[i]));\\n        newAttribValue = null;\\n        for (let value of values) {\\n          if (newAttribValue) {\\n            newAttribValue.add(value);\\n          } else {\\n            newAttribValue = value;\\n          }\\n        }\\n    }\\n    return newAttribValue;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/core/geometry/builders/_Base.ts\\nvar CoreGeometryBuilderBase = class {\\n  from_points(points2) {\\n    points2 = this._filter_points(points2);\\n    const geometry = new BufferGeometry();\\n    const core_geometry = new CoreGeometry(geometry);\\n    const first_point = points2[0];\\n    if (first_point != null) {\\n      const old_geometry = first_point.geometry();\\n      const old_core_geometry = first_point.coreGeometry();\\n      const new_index_by_old_index = {};\\n      for (let i = 0; i < points2.length; i++) {\\n        new_index_by_old_index[points2[i].index()] = i;\\n      }\\n      const indices = this._indices_from_points(new_index_by_old_index, old_geometry);\\n      if (indices) {\\n        geometry.setIndex(indices);\\n      }\\n      const {attributes} = old_geometry;\\n      for (let attribute_name of Object.keys(attributes)) {\\n        const attrib_values = old_core_geometry.userDataAttribs()[attribute_name];\\n        const is_attrib_indexed = attrib_values != null;\\n        if (is_attrib_indexed) {\\n          const new_values = ArrayUtils.uniq(points2.map((point) => point.indexedAttribValue(attribute_name)));\\n          const new_index_by_value = {};\\n          new_values.forEach((new_value, i) => new_index_by_value[new_value] = i);\\n          core_geometry.userDataAttribs()[attribute_name] = new_values;\\n          const new_attrib_indices = [];\\n          for (let point of points2) {\\n            const new_index = new_index_by_value[point.indexedAttribValue(attribute_name)];\\n            new_attrib_indices.push(new_index);\\n          }\\n          geometry.setAttribute(attribute_name, new Float32BufferAttribute(new_attrib_indices, 1));\\n        } else {\\n          const attrib_size = attributes[attribute_name].itemSize;\\n          const values = new Array(points2.length * attrib_size);\\n          switch (attrib_size) {\\n            case 1:\\n              for (let i = 0; i < points2.length; i++) {\\n                values[i] = points2[i].attribValue(attribute_name);\\n              }\\n              break;\\n            default:\\n              let value;\\n              for (let i = 0; i < points2.length; i++) {\\n                value = points2[i].attribValue(attribute_name);\\n                value.toArray(values, i * attrib_size);\\n              }\\n              break;\\n          }\\n          geometry.setAttribute(attribute_name, new Float32BufferAttribute(values, attrib_size));\\n        }\\n      }\\n    }\\n    return geometry;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/core/geometry/builders/Points.ts\\nvar CoreGeometryBuilderPoints = class extends CoreGeometryBuilderBase {\\n  _filter_points(points2) {\\n    return points2;\\n  }\\n  _indices_from_points(new_index_by_old_index, old_geometry) {\\n    const index_attrib = old_geometry.index;\\n    if (index_attrib != null) {\\n      const old_indices = index_attrib.array;\\n      const new_indices = [];\\n      let old_index;\\n      let new_index;\\n      for (let i = 0; i < old_indices.length; i++) {\\n        old_index = old_indices[i];\\n        new_index = new_index_by_old_index[old_index];\\n        if (new_index != null) {\\n          new_indices.push(new_index);\\n        }\\n      }\\n      return new_indices;\\n    }\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/modules/three/examples/jsm/utils/BufferGeometryUtils.js\\nfunction mergeBufferGeometries(geometries, useGroups = false) {\\n  const isIndexed = geometries[0].index !== null;\\n  const attributesUsed = new Set(Object.keys(geometries[0].attributes));\\n  const morphAttributesUsed = new Set(Object.keys(geometries[0].morphAttributes));\\n  const attributes = {};\\n  const morphAttributes = {};\\n  const morphTargetsRelative = geometries[0].morphTargetsRelative;\\n  const mergedGeometry = new BufferGeometry();\\n  let offset = 0;\\n  for (let i = 0; i < geometries.length; ++i) {\\n    const geometry = geometries[i];\\n    let attributesCount = 0;\\n    if (isIndexed !== (geometry.index !== null)) {\\n      console.error(\\\\\\\"THREE.BufferGeometryUtils: .mergeBufferGeometries() failed with geometry at index \\\\\\\" + i + \\\\\\\". All geometries must have compatible attributes; make sure index attribute exists among all geometries, or in none of them.\\\\\\\");\\n      return null;\\n    }\\n    for (const name in geometry.attributes) {\\n      if (!attributesUsed.has(name)) {\\n        console.error(\\\\\\\"THREE.BufferGeometryUtils: .mergeBufferGeometries() failed with geometry at index \\\\\\\" + i + '. All geometries must have compatible attributes; make sure \\\\\\\"' + name + '\\\\\\\" attribute exists among all geometries, or in none of them.');\\n        return null;\\n      }\\n      if (attributes[name] === void 0)\\n        attributes[name] = [];\\n      attributes[name].push(geometry.attributes[name]);\\n      attributesCount++;\\n    }\\n    if (attributesCount !== attributesUsed.size) {\\n      console.error(\\\\\\\"THREE.BufferGeometryUtils: .mergeBufferGeometries() failed with geometry at index \\\\\\\" + i + \\\\\\\". Make sure all geometries have the same number of attributes.\\\\\\\");\\n      return null;\\n    }\\n    if (morphTargetsRelative !== geometry.morphTargetsRelative) {\\n      console.error(\\\\\\\"THREE.BufferGeometryUtils: .mergeBufferGeometries() failed with geometry at index \\\\\\\" + i + \\\\\\\". .morphTargetsRelative must be consistent throughout all geometries.\\\\\\\");\\n      return null;\\n    }\\n    for (const name in geometry.morphAttributes) {\\n      if (!morphAttributesUsed.has(name)) {\\n        console.error(\\\\\\\"THREE.BufferGeometryUtils: .mergeBufferGeometries() failed with geometry at index \\\\\\\" + i + \\\\\\\".  .morphAttributes must be consistent throughout all geometries.\\\\\\\");\\n        return null;\\n      }\\n      if (morphAttributes[name] === void 0)\\n        morphAttributes[name] = [];\\n      morphAttributes[name].push(geometry.morphAttributes[name]);\\n    }\\n    mergedGeometry.userData.mergedUserData = mergedGeometry.userData.mergedUserData || [];\\n    mergedGeometry.userData.mergedUserData.push(geometry.userData);\\n    if (useGroups) {\\n      let count;\\n      if (isIndexed) {\\n        count = geometry.index.count;\\n      } else if (geometry.attributes.position !== void 0) {\\n        count = geometry.attributes.position.count;\\n      } else {\\n        console.error(\\\\\\\"THREE.BufferGeometryUtils: .mergeBufferGeometries() failed with geometry at index \\\\\\\" + i + \\\\\\\". The geometry must have either an index or a position attribute\\\\\\\");\\n        return null;\\n      }\\n      mergedGeometry.addGroup(offset, count, i);\\n      offset += count;\\n    }\\n  }\\n  if (isIndexed) {\\n    let indexOffset = 0;\\n    const mergedIndex = [];\\n    for (let i = 0; i < geometries.length; ++i) {\\n      const index = geometries[i].index;\\n      for (let j = 0; j < index.count; ++j) {\\n        mergedIndex.push(index.getX(j) + indexOffset);\\n      }\\n      indexOffset += geometries[i].attributes.position.count;\\n    }\\n    mergedGeometry.setIndex(mergedIndex);\\n  }\\n  for (const name in attributes) {\\n    const mergedAttribute = mergeBufferAttributes(attributes[name]);\\n    if (!mergedAttribute) {\\n      console.error(\\\\\\\"THREE.BufferGeometryUtils: .mergeBufferGeometries() failed while trying to merge the \\\\\\\" + name + \\\\\\\" attribute.\\\\\\\");\\n      return null;\\n    }\\n    mergedGeometry.setAttribute(name, mergedAttribute);\\n  }\\n  for (const name in morphAttributes) {\\n    const numMorphTargets = morphAttributes[name][0].length;\\n    if (numMorphTargets === 0)\\n      break;\\n    mergedGeometry.morphAttributes = mergedGeometry.morphAttributes || {};\\n    mergedGeometry.morphAttributes[name] = [];\\n    for (let i = 0; i < numMorphTargets; ++i) {\\n      const morphAttributesToMerge = [];\\n      for (let j = 0; j < morphAttributes[name].length; ++j) {\\n        morphAttributesToMerge.push(morphAttributes[name][j][i]);\\n      }\\n      const mergedMorphAttribute = mergeBufferAttributes(morphAttributesToMerge);\\n      if (!mergedMorphAttribute) {\\n        console.error(\\\\\\\"THREE.BufferGeometryUtils: .mergeBufferGeometries() failed while trying to merge the \\\\\\\" + name + \\\\\\\" morphAttribute.\\\\\\\");\\n        return null;\\n      }\\n      mergedGeometry.morphAttributes[name].push(mergedMorphAttribute);\\n    }\\n  }\\n  return mergedGeometry;\\n}\\nfunction mergeBufferAttributes(attributes) {\\n  let TypedArray;\\n  let itemSize;\\n  let normalized;\\n  let arrayLength = 0;\\n  for (let i = 0; i < attributes.length; ++i) {\\n    const attribute = attributes[i];\\n    if (attribute.isInterleavedBufferAttribute) {\\n      console.error(\\\\\\\"THREE.BufferGeometryUtils: .mergeBufferAttributes() failed. InterleavedBufferAttributes are not supported.\\\\\\\");\\n      return null;\\n    }\\n    if (TypedArray === void 0)\\n      TypedArray = attribute.array.constructor;\\n    if (TypedArray !== attribute.array.constructor) {\\n      console.error(\\\\\\\"THREE.BufferGeometryUtils: .mergeBufferAttributes() failed. BufferAttribute.array must be of consistent array types across matching attributes.\\\\\\\");\\n      return null;\\n    }\\n    if (itemSize === void 0)\\n      itemSize = attribute.itemSize;\\n    if (itemSize !== attribute.itemSize) {\\n      console.error(\\\\\\\"THREE.BufferGeometryUtils: .mergeBufferAttributes() failed. BufferAttribute.itemSize must be consistent across matching attributes.\\\\\\\");\\n      return null;\\n    }\\n    if (normalized === void 0)\\n      normalized = attribute.normalized;\\n    if (normalized !== attribute.normalized) {\\n      console.error(\\\\\\\"THREE.BufferGeometryUtils: .mergeBufferAttributes() failed. BufferAttribute.normalized must be consistent across matching attributes.\\\\\\\");\\n      return null;\\n    }\\n    arrayLength += attribute.array.length;\\n  }\\n  const array = new TypedArray(arrayLength);\\n  let offset = 0;\\n  for (let i = 0; i < attributes.length; ++i) {\\n    array.set(attributes[i].array, offset);\\n    offset += attributes[i].array.length;\\n  }\\n  return new BufferAttribute(array, itemSize, normalized);\\n}\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/core/geometry/util/IndexBuilder.ts\\nvar POSITION = \\\\\\\"position\\\\\\\";\\nvar CoreGeometryIndexBuilder = class {\\n  static createIndexIfNone(geometry) {\\n    if (!geometry.index) {\\n      const position = geometry.getAttribute(POSITION);\\n      if (position) {\\n        const position_array = position.array;\\n        geometry.setIndex(ArrayUtils.range(position_array.length / 3));\\n      }\\n    }\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/core/geometry/builders/Merge.ts\\nvar CoreGeometryBuilderMerge = class {\\n  static merge(geometries) {\\n    if (geometries.length === 0) {\\n      return;\\n    }\\n    for (let geometry of geometries) {\\n      CoreGeometryIndexBuilder.createIndexIfNone(geometry);\\n    }\\n    const core_geometries = geometries.map((geometry) => new CoreGeometry(geometry));\\n    const indexed_attribute_names = core_geometries[0].indexedAttributeNames();\\n    const new_values_by_attribute_name = {};\\n    for (let indexed_attribute_name of indexed_attribute_names) {\\n      const index_by_values = {};\\n      const all_geometries_points = [];\\n      for (let core_geometry of core_geometries) {\\n        const geometry_points = core_geometry.points();\\n        for (let point of geometry_points) {\\n          all_geometries_points.push(point);\\n          const value = point.indexedAttribValue(indexed_attribute_name);\\n          index_by_values[value] != null ? index_by_values[value] : index_by_values[value] = Object.keys(index_by_values).length;\\n        }\\n      }\\n      const values = Object.keys(index_by_values);\\n      for (let point of all_geometries_points) {\\n        const value = point.indexedAttribValue(indexed_attribute_name);\\n        const new_index = index_by_values[value];\\n        point.setAttribIndex(indexed_attribute_name, new_index);\\n      }\\n      new_values_by_attribute_name[indexed_attribute_name] = values;\\n    }\\n    const merged_geometry = mergeBufferGeometries(geometries);\\n    const merged_core_geometry = new CoreGeometry(merged_geometry);\\n    Object.keys(new_values_by_attribute_name).forEach((indexed_attribute_name) => {\\n      const values = new_values_by_attribute_name[indexed_attribute_name];\\n      merged_core_geometry.setIndexedAttributeValues(indexed_attribute_name, values);\\n    });\\n    if (merged_geometry) {\\n      delete merged_geometry.userData.mergedUserData;\\n    }\\n    return merged_geometry;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/core/geometry/builders/Mesh.ts\\nvar CoreGeometryBuilderMesh = class extends CoreGeometryBuilderBase {\\n  _filter_points(points2) {\\n    const first_point = points2[0];\\n    if (first_point) {\\n      const geometry = first_point.geometry();\\n      const indices = geometry.getIndex()?.array;\\n      if (indices) {\\n        const points_by_index = {};\\n        for (let point of points2) {\\n          points_by_index[point.index()] = point;\\n        }\\n        const filtered_points = [];\\n        const index_length = indices.length;\\n        let pt0;\\n        let pt1;\\n        let pt2;\\n        for (let i = 0; i < index_length; i += 3) {\\n          pt0 = points_by_index[indices[i + 0]];\\n          pt1 = points_by_index[indices[i + 1]];\\n          pt2 = points_by_index[indices[i + 2]];\\n          if (pt0 && pt1 && pt2) {\\n            filtered_points.push(pt0);\\n            filtered_points.push(pt1);\\n            filtered_points.push(pt2);\\n          }\\n        }\\n        return filtered_points;\\n      }\\n    }\\n    return [];\\n  }\\n  _indices_from_points(new_index_by_old_index, old_geometry) {\\n    const index_attrib = old_geometry.index;\\n    if (index_attrib != null) {\\n      const old_indices = index_attrib.array;\\n      const new_indices = [];\\n      let old_index0;\\n      let old_index1;\\n      let old_index2;\\n      let new_index0;\\n      let new_index1;\\n      let new_index2;\\n      for (let i = 0; i < old_indices.length; i += 3) {\\n        old_index0 = old_indices[i + 0];\\n        old_index1 = old_indices[i + 1];\\n        old_index2 = old_indices[i + 2];\\n        new_index0 = new_index_by_old_index[old_index0];\\n        new_index1 = new_index_by_old_index[old_index1];\\n        new_index2 = new_index_by_old_index[old_index2];\\n        if (new_index0 != null && new_index1 != null && new_index2 != null) {\\n          new_indices.push(new_index0);\\n          new_indices.push(new_index1);\\n          new_indices.push(new_index2);\\n        }\\n      }\\n      return new_indices;\\n    }\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/core/geometry/builders/LineSegments.ts\\nvar CoreGeometryBuilderLineSegments = class extends CoreGeometryBuilderBase {\\n  _filter_points(points2) {\\n    const first_point = points2[0];\\n    if (first_point) {\\n      const geometry = first_point.geometry();\\n      const indices = geometry.getIndex()?.array;\\n      if (indices) {\\n        const points_by_index = {};\\n        for (let point of points2) {\\n          points_by_index[point.index()] = point;\\n        }\\n        const filtered_points = [];\\n        const index_length = indices.length;\\n        let pt0;\\n        let pt1;\\n        for (let i = 0; i < index_length; i += 2) {\\n          pt0 = points_by_index[indices[i + 0]];\\n          pt1 = points_by_index[indices[i + 1]];\\n          if (pt0 && pt1) {\\n            filtered_points.push(pt0);\\n            filtered_points.push(pt1);\\n          }\\n        }\\n        return filtered_points;\\n      }\\n    }\\n    return [];\\n  }\\n  _indices_from_points(new_index_by_old_index, old_geometry) {\\n    const index_attrib = old_geometry.index;\\n    if (index_attrib != null) {\\n      const old_indices = index_attrib.array;\\n      const new_indices = [];\\n      let old_index0;\\n      let old_index1;\\n      let new_index0;\\n      let new_index1;\\n      for (let i = 0; i < old_indices.length; i += 2) {\\n        old_index0 = old_indices[i];\\n        old_index1 = old_indices[i + 1];\\n        new_index0 = new_index_by_old_index[old_index0];\\n        new_index1 = new_index_by_old_index[old_index1];\\n        if (new_index0 != null && new_index1 != null) {\\n          new_indices.push(new_index0);\\n          new_indices.push(new_index1);\\n        }\\n      }\\n      return new_indices;\\n    }\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/core/ObjectUtils.ts\\nvar import_cloneDeep = __toModule(require_cloneDeep());\\nvar import_clone = __toModule(require_clone());\\nvar ObjectUtils = class {\\n  static isEqual(object0, object1) {\\n    if (CoreType.isObject(object0) && CoreType.isObject(object1)) {\\n      const keys0 = Object.keys(object0);\\n      const keys1 = Object.keys(object1);\\n      if (!ArrayUtils.isEqual(keys0, keys1)) {\\n        return false;\\n      }\\n      return JSON.stringify(object0) == JSON.stringify(object1);\\n    }\\n    return false;\\n  }\\n  static merge(object0, object1) {\\n    return Object.assign(object0, object1);\\n  }\\n  static clone(value) {\\n    return import_clone.default(value);\\n  }\\n  static cloneDeep(value) {\\n    return import_cloneDeep.default(value);\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/core/geometry/Geometry.ts\\nvar IS_INSTANCE_KEY = \\\\\\\"isInstance\\\\\\\";\\nvar INDEX_ATTRIB_VALUES = \\\\\\\"indexed_attrib_values\\\\\\\";\\nvar CoreGeometry2 = class {\\n  constructor(_geometry) {\\n    this._geometry = _geometry;\\n  }\\n  geometry() {\\n    return this._geometry;\\n  }\\n  uuid() {\\n    return this._geometry.uuid;\\n  }\\n  boundingBox() {\\n    return this._bounding_box = this._bounding_box || this._create_bounding_box();\\n  }\\n  _create_bounding_box() {\\n    this._geometry.computeBoundingBox();\\n    if (this._geometry.boundingBox) {\\n      return this._geometry.boundingBox;\\n    }\\n  }\\n  markAsInstance() {\\n    this._geometry.userData[IS_INSTANCE_KEY] = true;\\n  }\\n  static markedAsInstance(geometry) {\\n    return geometry.userData[IS_INSTANCE_KEY] === true;\\n  }\\n  markedAsInstance() {\\n    return CoreGeometry2.markedAsInstance(this._geometry);\\n  }\\n  positionAttribName() {\\n    let name = \\\\\\\"position\\\\\\\";\\n    if (this.markedAsInstance()) {\\n      name = \\\\\\\"instancePosition\\\\\\\";\\n    }\\n    return name;\\n  }\\n  computeVertexNormals() {\\n    this._geometry.computeVertexNormals();\\n  }\\n  userDataAttribs() {\\n    return this._geometry.userData[INDEX_ATTRIB_VALUES] = this._geometry.userData[INDEX_ATTRIB_VALUES] || {};\\n  }\\n  indexedAttributeNames() {\\n    return Object.keys(this.userDataAttribs() || {});\\n  }\\n  userDataAttrib(name) {\\n    name = CoreAttribute.remapName(name);\\n    return this.userDataAttribs()[name];\\n  }\\n  isAttribIndexed(name) {\\n    name = CoreAttribute.remapName(name);\\n    return this.userDataAttrib(name) != null;\\n  }\\n  hasAttrib(name) {\\n    if (name === \\\\\\\"ptnum\\\\\\\") {\\n      return true;\\n    }\\n    name = CoreAttribute.remapName(name);\\n    return this._geometry.attributes[name] != null;\\n  }\\n  attribType(name) {\\n    if (this.isAttribIndexed(name)) {\\n      return AttribType.STRING;\\n    } else {\\n      return AttribType.NUMERIC;\\n    }\\n  }\\n  static attribNames(geometry) {\\n    return Object.keys(geometry.attributes);\\n  }\\n  attribNames() {\\n    return CoreGeometry2.attribNames(this._geometry);\\n  }\\n  static attribNamesMatchingMask(geometry, masks_string) {\\n    const masks = CoreString.attribNames(masks_string);\\n    const matching_attrib_names = [];\\n    for (let attrib_name of this.attribNames(geometry)) {\\n      for (let mask of masks) {\\n        if (CoreString.matchMask(attrib_name, mask)) {\\n          matching_attrib_names.push(attrib_name);\\n        }\\n      }\\n    }\\n    return ArrayUtils.uniq(matching_attrib_names);\\n  }\\n  attribSizes() {\\n    const h = {};\\n    for (let attrib_name of this.attribNames()) {\\n      h[attrib_name] = this._geometry.attributes[attrib_name].itemSize;\\n    }\\n    return h;\\n  }\\n  attribSize(name) {\\n    let attrib;\\n    name = CoreAttribute.remapName(name);\\n    if ((attrib = this._geometry.attributes[name]) != null) {\\n      return attrib.itemSize;\\n    } else {\\n      if (name === \\\\\\\"ptnum\\\\\\\") {\\n        return 1;\\n      } else {\\n        return 0;\\n      }\\n    }\\n  }\\n  setIndexedAttributeValues(name, values) {\\n    this.userDataAttribs()[name] = values;\\n  }\\n  setIndexedAttribute(name, values, indices) {\\n    this.setIndexedAttributeValues(name, values);\\n    this._geometry.setAttribute(name, new Int32BufferAttribute(indices, 1));\\n  }\\n  addNumericAttrib(name, size = 1, default_value = 0) {\\n    const values = [];\\n    let attribute_added = false;\\n    if (CoreType.isNumber(default_value)) {\\n      for (let i = 0; i < this.pointsCount(); i++) {\\n        for (let j = 0; j < size; j++) {\\n          values.push(default_value);\\n        }\\n      }\\n      attribute_added = true;\\n    } else {\\n      if (size > 1) {\\n        if (CoreType.isArray(default_value)) {\\n          for (let i = 0; i < this.pointsCount(); i++) {\\n            for (let j = 0; j < size; j++) {\\n              values.push(default_value[j]);\\n            }\\n          }\\n          attribute_added = true;\\n        } else {\\n          const vec2 = default_value;\\n          if (size == 2 && vec2.x != null && vec2.y != null) {\\n            for (let i = 0; i < this.pointsCount(); i++) {\\n              values.push(vec2.x);\\n              values.push(vec2.y);\\n            }\\n            attribute_added = true;\\n          }\\n          const vec3 = default_value;\\n          if (size == 3 && vec3.x != null && vec3.y != null && vec3.z != null) {\\n            for (let i = 0; i < this.pointsCount(); i++) {\\n              values.push(vec3.x);\\n              values.push(vec3.y);\\n              values.push(vec3.z);\\n            }\\n            attribute_added = true;\\n          }\\n          const col = default_value;\\n          if (size == 3 && col.r != null && col.g != null && col.b != null) {\\n            for (let i = 0; i < this.pointsCount(); i++) {\\n              values.push(col.r);\\n              values.push(col.g);\\n              values.push(col.b);\\n            }\\n            attribute_added = true;\\n          }\\n          const vec4 = default_value;\\n          if (size == 4 && vec4.x != null && vec4.y != null && vec4.z != null && vec4.w != null) {\\n            for (let i = 0; i < this.pointsCount(); i++) {\\n              values.push(vec4.x);\\n              values.push(vec4.y);\\n              values.push(vec4.z);\\n              values.push(vec4.w);\\n            }\\n            attribute_added = true;\\n          }\\n        }\\n      }\\n    }\\n    if (attribute_added) {\\n      this._geometry.setAttribute(name.trim(), new Float32BufferAttribute(values, size));\\n    } else {\\n      console.warn(default_value);\\n      throw `CoreGeometry.add_numeric_attrib error: no other default value allowed for now in add_numeric_attrib (default given: ${default_value})`;\\n    }\\n  }\\n  initPositionAttribute(points_count, default_value) {\\n    const values = [];\\n    if (default_value == null) {\\n      default_value = new Vector3();\\n    }\\n    for (let i = 0; i < points_count; i++) {\\n      values.push(default_value.x);\\n      values.push(default_value.y);\\n      values.push(default_value.z);\\n    }\\n    return this._geometry.setAttribute(\\\\\\\"position\\\\\\\", new Float32BufferAttribute(values, 3));\\n  }\\n  addAttribute(name, attrib_data) {\\n    switch (attrib_data.type()) {\\n      case AttribType.STRING:\\n        return console.log(\\\\\\\"TODO: to implement\\\\\\\");\\n      case AttribType.NUMERIC:\\n        return this.addNumericAttrib(name, attrib_data.size());\\n    }\\n  }\\n  renameAttrib(old_name, new_name) {\\n    if (this.isAttribIndexed(old_name)) {\\n      this.userDataAttribs()[new_name] = ObjectUtils.clone(this.userDataAttribs()[old_name]);\\n      delete this.userDataAttribs()[old_name];\\n    }\\n    const old_attrib = this._geometry.getAttribute(old_name);\\n    this._geometry.setAttribute(new_name.trim(), new Float32BufferAttribute(old_attrib.array, old_attrib.itemSize));\\n    return this._geometry.deleteAttribute(old_name);\\n  }\\n  deleteAttribute(name) {\\n    if (this.isAttribIndexed(name)) {\\n      delete this.userDataAttribs()[name];\\n    }\\n    return this._geometry.deleteAttribute(name);\\n  }\\n  clone() {\\n    return CoreGeometry2.clone(this._geometry);\\n  }\\n  static clone(src_geometry) {\\n    let src_userData;\\n    const new_geometry = src_geometry.clone();\\n    if ((src_userData = src_geometry.userData) != null) {\\n      new_geometry.userData = ObjectUtils.cloneDeep(src_userData);\\n    }\\n    return new_geometry;\\n  }\\n  pointsCount() {\\n    return CoreGeometry2.pointsCount(this._geometry);\\n  }\\n  static pointsCount(geometry) {\\n    let position;\\n    let count = 0;\\n    const core_geometry = new this(geometry);\\n    let position_attrib_name = \\\\\\\"position\\\\\\\";\\n    if (core_geometry.markedAsInstance()) {\\n      position_attrib_name = \\\\\\\"instancePosition\\\\\\\";\\n    }\\n    if ((position = geometry.getAttribute(position_attrib_name)) != null) {\\n      let array;\\n      if ((array = position.array) != null) {\\n        count = array.length / 3;\\n      }\\n    }\\n    return count;\\n  }\\n  points() {\\n    return this.pointsFromGeometry();\\n  }\\n  pointsFromGeometry() {\\n    const points2 = [];\\n    const positionAttrib = this._geometry.getAttribute(this.positionAttribName());\\n    if (positionAttrib != null) {\\n      const count = positionAttrib.array.length / 3;\\n      for (let i = 0; i < count; i++) {\\n        const point = new CorePoint(this, i);\\n        points2.push(point);\\n      }\\n    }\\n    return points2;\\n  }\\n  static geometryFromPoints(points2, object_type) {\\n    switch (object_type) {\\n      case ObjectType.MESH:\\n        return this._mesh_builder.from_points(points2);\\n      case ObjectType.POINTS:\\n        return this._points_builder.from_points(points2);\\n      case ObjectType.LINE_SEGMENTS:\\n        return this._lines_segment_builder.from_points(points2);\\n      case ObjectType.OBJECT3D:\\n        return null;\\n      case ObjectType.GROUP:\\n        return null;\\n      case ObjectType.LOD:\\n        return null;\\n    }\\n    TypeAssert.unreachable(object_type);\\n  }\\n  static mergeGeometries(geometries) {\\n    return CoreGeometryBuilderMerge.merge(geometries);\\n  }\\n  static merge_geometries(geometries) {\\n    return CoreGeometryBuilderMerge.merge(geometries);\\n  }\\n  segments() {\\n    const index = this.geometry().index?.array || [];\\n    return ArrayUtils.chunk(index, 2);\\n  }\\n  faces() {\\n    return this.facesFromGeometry();\\n  }\\n  facesFromGeometry() {\\n    const index_array = this.geometry().index?.array || [];\\n    const faces_count = index_array.length / 3;\\n    return ArrayUtils.range(faces_count).map((i) => new CoreFace(this, i));\\n  }\\n};\\nvar CoreGeometry = CoreGeometry2;\\nCoreGeometry._mesh_builder = new CoreGeometryBuilderMesh();\\nCoreGeometry._points_builder = new CoreGeometryBuilderPoints();\\nCoreGeometry._lines_segment_builder = new CoreGeometryBuilderLineSegments();\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/core/geometry/Material.ts\\nvar CustomMaterialName;\\n(function(CustomMaterialName2) {\\n  CustomMaterialName2[\\\\\\\"customDistanceMaterial\\\\\\\"] = \\\\\\\"customDistanceMaterial\\\\\\\";\\n  CustomMaterialName2[\\\\\\\"customDepthMaterial\\\\\\\"] = \\\\\\\"customDepthMaterial\\\\\\\";\\n  CustomMaterialName2[\\\\\\\"customDepthDOFMaterial\\\\\\\"] = \\\\\\\"customDepthDOFMaterial\\\\\\\";\\n})(CustomMaterialName || (CustomMaterialName = {}));\\nvar RENDER_HOOK_USER_DATA_KEY = \\\\\\\"POLY_render_hook\\\\\\\";\\nvar EMPTY_RENDER_HOOK = (renderer, scene, camera, geometry, material, group) => {\\n};\\nvar CoreMaterial = class {\\n  static node(scene, material) {\\n    return scene.node(material.name);\\n  }\\n  static clone(src_material) {\\n    const cloned_material = src_material.clone();\\n    const src_uniforms = src_material.uniforms;\\n    if (src_uniforms) {\\n      cloned_material.uniforms = UniformsUtils.clone(src_uniforms);\\n    }\\n    return cloned_material;\\n  }\\n  static add_user_data_render_hook(material, render_hook) {\\n    material.userData[RENDER_HOOK_USER_DATA_KEY] = render_hook;\\n  }\\n  static apply_render_hook(object, material) {\\n    if (material.userData) {\\n      const render_hook = material.userData[RENDER_HOOK_USER_DATA_KEY];\\n      if (render_hook) {\\n        object.onBeforeRender = (renderer, scene, camera, geometry, material2, group) => {\\n          render_hook(renderer, scene, camera, geometry, material2, group, object);\\n        };\\n        return;\\n      }\\n    }\\n    object.onBeforeRender = EMPTY_RENDER_HOOK;\\n  }\\n  static applyCustomMaterials(object, material) {\\n    const material_with_custom = material;\\n    if (material_with_custom.customMaterials) {\\n      for (let name of Object.keys(material_with_custom.customMaterials)) {\\n        const mat_name = name;\\n        const custom_material = material_with_custom.customMaterials[mat_name];\\n        if (custom_material) {\\n          object[mat_name] = custom_material;\\n          custom_material.needsUpdate = true;\\n        }\\n      }\\n    }\\n  }\\n  static assign_custom_uniforms(mat, uniform_name, uniform_value) {\\n    const material = mat;\\n    if (material.customMaterials) {\\n      for (let name of Object.keys(material.customMaterials)) {\\n        const mat_name = name;\\n        const custom_material = material.customMaterials[mat_name];\\n        if (custom_material) {\\n          custom_material.uniforms[uniform_name].value = uniform_value;\\n        }\\n      }\\n    }\\n  }\\n  static init_custom_material_uniforms(mat, uniform_name, uniform_value) {\\n    const material = mat;\\n    if (material.customMaterials) {\\n      for (let name of Object.keys(material.customMaterials)) {\\n        const mat_name = name;\\n        const custom_material = material.customMaterials[mat_name];\\n        if (custom_material) {\\n          custom_material.uniforms[uniform_name] = custom_material.uniforms[uniform_name] || uniform_value;\\n        }\\n      }\\n    }\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/core/geometry/Object.ts\\nvar PTNUM2 = \\\\\\\"ptnum\\\\\\\";\\nvar NAME_ATTR = \\\\\\\"name\\\\\\\";\\nvar ATTRIBUTES = \\\\\\\"attributes\\\\\\\";\\nvar CoreObject = class extends CoreEntity {\\n  constructor(_object, index) {\\n    super(index);\\n    this._object = _object;\\n    if (this._object.userData[ATTRIBUTES] == null) {\\n      this._object.userData[ATTRIBUTES] = {};\\n    }\\n  }\\n  object() {\\n    return this._object;\\n  }\\n  geometry() {\\n    return this._object.geometry;\\n  }\\n  coreGeometry() {\\n    const geo = this.geometry();\\n    if (geo) {\\n      return new CoreGeometry(geo);\\n    } else {\\n      return null;\\n    }\\n  }\\n  points() {\\n    return this.coreGeometry()?.points() || [];\\n  }\\n  pointsFromGroup(group) {\\n    if (group) {\\n      const indices = CoreString.indices(group);\\n      if (indices) {\\n        const points2 = this.points();\\n        return indices.map((i) => points2[i]);\\n      } else {\\n        return [];\\n      }\\n    } else {\\n      return this.points();\\n    }\\n  }\\n  static isInGroup(groupString, object) {\\n    const group = groupString.trim();\\n    if (group.length == 0) {\\n      return true;\\n    }\\n    const elements = group.split(\\\\\\\"=\\\\\\\");\\n    const attribNameWithPrefix = elements[0];\\n    if (attribNameWithPrefix[0] == \\\\\\\"@\\\\\\\") {\\n      const attribName = attribNameWithPrefix.substr(1);\\n      const expectedAttribValue = elements[1];\\n      const currentAttribValue = this.attribValue(object, attribName);\\n      return expectedAttribValue == currentAttribValue;\\n    }\\n    return false;\\n  }\\n  computeVertexNormals() {\\n    this.coreGeometry()?.computeVertexNormals();\\n  }\\n  static _convert_array_to_vector(value) {\\n    switch (value.length) {\\n      case 1:\\n        return value[0];\\n      case 2:\\n        return new Vector2(value[0], value[1]);\\n      case 3:\\n        return new Vector3(value[0], value[1], value[2]);\\n      case 4:\\n        return new Vector4(value[0], value[1], value[2], value[3]);\\n    }\\n  }\\n  static addAttribute(object, attrib_name, value) {\\n    if (CoreType.isArray(value)) {\\n      const converted_value = this._convert_array_to_vector(value);\\n      if (!converted_value) {\\n        const message = `attribute_value invalid`;\\n        console.error(message, value);\\n        throw new Error(message);\\n      }\\n    }\\n    const data = value;\\n    const user_data = object.userData;\\n    user_data[ATTRIBUTES] = user_data[ATTRIBUTES] || {};\\n    user_data[ATTRIBUTES][attrib_name] = data;\\n  }\\n  addAttribute(name, value) {\\n    CoreObject.addAttribute(this._object, name, value);\\n  }\\n  addNumericAttrib(name, value) {\\n    this.addAttribute(name, value);\\n  }\\n  setAttribValue(name, value) {\\n    this.addAttribute(name, value);\\n  }\\n  addNumericVertexAttrib(name, size, default_value) {\\n    if (default_value == null) {\\n      default_value = CoreAttribute.default_value(size);\\n    }\\n    this.coreGeometry()?.addNumericAttrib(name, size, default_value);\\n  }\\n  attributeNames() {\\n    return Object.keys(this._object.userData[ATTRIBUTES]);\\n  }\\n  attribNames() {\\n    return this.attributeNames();\\n  }\\n  hasAttrib(name) {\\n    return this.attributeNames().includes(name);\\n  }\\n  renameAttrib(old_name, new_name) {\\n    const current_value = this.attribValue(old_name);\\n    if (current_value != null) {\\n      this.addAttribute(new_name, current_value);\\n      this.deleteAttribute(old_name);\\n    } else {\\n      console.warn(`attribute ${old_name} not found`);\\n    }\\n  }\\n  deleteAttribute(name) {\\n    delete this._object.userData[ATTRIBUTES][name];\\n  }\\n  static attribValue(object, name, index = 0, target) {\\n    if (name === PTNUM2) {\\n      return index;\\n    }\\n    if (object.userData && object.userData[ATTRIBUTES]) {\\n      const val = object.userData[ATTRIBUTES][name];\\n      if (val == null) {\\n        if (name == NAME_ATTR) {\\n          return object.name;\\n        }\\n      } else {\\n        if (CoreType.isArray(val) && target) {\\n          target.fromArray(val);\\n          return target;\\n        }\\n      }\\n      return val;\\n    }\\n    if (name == NAME_ATTR) {\\n      return object.name;\\n    }\\n  }\\n  static stringAttribValue(object, name, index = 0) {\\n    const str = this.attribValue(object, name, index);\\n    if (str != null) {\\n      if (CoreType.isString(str)) {\\n        return str;\\n      } else {\\n        return `${str}`;\\n      }\\n    }\\n  }\\n  attribValue(name, target) {\\n    return CoreObject.attribValue(this._object, name, this._index, target);\\n  }\\n  stringAttribValue(name) {\\n    return CoreObject.stringAttribValue(this._object, name, this._index);\\n  }\\n  name() {\\n    return this.attribValue(NAME_ATTR);\\n  }\\n  humanType() {\\n    return CoreConstant.CONSTRUCTOR_NAMES_BY_CONSTRUCTOR_NAME[this._object.constructor.name];\\n  }\\n  attribTypes() {\\n    const h = {};\\n    for (let attrib_name of this.attribNames()) {\\n      const type = this.attribType(attrib_name);\\n      if (type != null) {\\n        h[attrib_name] = type;\\n      }\\n    }\\n    return h;\\n  }\\n  attribType(name) {\\n    const val = this.attribValue(name);\\n    if (CoreType.isString(val)) {\\n      return AttribType.STRING;\\n    } else {\\n      return AttribType.NUMERIC;\\n    }\\n  }\\n  attribSizes() {\\n    const h = {};\\n    for (let attrib_name of this.attribNames()) {\\n      const size = this.attribSize(attrib_name);\\n      if (size != null) {\\n        h[attrib_name] = size;\\n      }\\n    }\\n    return h;\\n  }\\n  attribSize(name) {\\n    const val = this.attribValue(name);\\n    if (val == null) {\\n      return null;\\n    }\\n    return CoreAttribute.attribSizeFromValue(val);\\n  }\\n  clone() {\\n    return CoreObject.clone(this._object);\\n  }\\n  static clone(src_object) {\\n    const new_object = src_object.clone();\\n    var sourceLookup = new Map();\\n    var cloneLookup = new Map();\\n    CoreObject.parallelTraverse(src_object, new_object, function(sourceNode, clonedNode) {\\n      sourceLookup.set(clonedNode, sourceNode);\\n      cloneLookup.set(sourceNode, clonedNode);\\n    });\\n    new_object.traverse(function(node) {\\n      const src_node = sourceLookup.get(node);\\n      const mesh_node = node;\\n      if (mesh_node.geometry) {\\n        const src_node_geometry = src_node.geometry;\\n        mesh_node.geometry = CoreGeometry.clone(src_node_geometry);\\n        const mesh_node_geometry = mesh_node.geometry;\\n        if (mesh_node_geometry.userData) {\\n          mesh_node_geometry.userData = ObjectUtils.cloneDeep(src_node_geometry.userData);\\n        }\\n      }\\n      if (mesh_node.material) {\\n        mesh_node.material = src_node.material;\\n        CoreMaterial.applyCustomMaterials(node, mesh_node.material);\\n        const material_with_color = mesh_node.material;\\n        if (material_with_color.color == null) {\\n          material_with_color.color = new Color(1, 1, 1);\\n        }\\n      }\\n      if (src_object.userData) {\\n        node.userData = ObjectUtils.cloneDeep(src_node.userData);\\n      }\\n      const src_node_with_animations = src_node;\\n      if (src_node_with_animations.animations) {\\n        node.animations = src_node_with_animations.animations.map((animation) => animation.clone());\\n      }\\n      const skinned_node = node;\\n      if (skinned_node.isSkinnedMesh) {\\n        var clonedMesh = skinned_node;\\n        var sourceMesh = src_node;\\n        var sourceBones = sourceMesh.skeleton.bones;\\n        clonedMesh.skeleton = sourceMesh.skeleton.clone();\\n        clonedMesh.bindMatrix.copy(sourceMesh.bindMatrix);\\n        const new_bones = sourceBones.map(function(bone) {\\n          return cloneLookup.get(bone);\\n        });\\n        clonedMesh.skeleton.bones = new_bones;\\n        clonedMesh.bind(clonedMesh.skeleton, clonedMesh.bindMatrix);\\n      }\\n    });\\n    return new_object;\\n  }\\n  static parallelTraverse(a, b, callback) {\\n    callback(a, b);\\n    for (var i = 0; i < a.children.length; i++) {\\n      this.parallelTraverse(a.children[i], b.children[i], callback);\\n    }\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/containers/Geometry.ts\\nvar GeometryContainer = class extends TypedContainer {\\n  coreContentCloned() {\\n    if (this._content) {\\n      return this._content.clone();\\n    }\\n  }\\n  set_content(content) {\\n    super.set_content(content);\\n  }\\n  firstObject() {\\n    if (this._content) {\\n      return this._content.objects()[0];\\n    }\\n  }\\n  firstCoreObject() {\\n    const object = this.firstObject();\\n    if (object) {\\n      return new CoreObject(object, 0);\\n    }\\n  }\\n  firstGeometry() {\\n    const object = this.firstObject();\\n    if (object) {\\n      return object.geometry;\\n    } else {\\n      return null;\\n    }\\n  }\\n  objectsCount() {\\n    if (this._content) {\\n      return this._content.objects().length;\\n    } else {\\n      return 0;\\n    }\\n  }\\n  objectsVisibleCount() {\\n    let count = 0;\\n    if (this._content) {\\n      const objects = this._content.objects();\\n      for (let object of objects) {\\n        if (object.visible) {\\n          count++;\\n        }\\n      }\\n    }\\n    return count;\\n  }\\n  objectsCountByType() {\\n    const count_by_type = {};\\n    const core_group = this._content;\\n    if (this._content && core_group) {\\n      for (let core_object of core_group.coreObjects()) {\\n        const human_type = core_object.humanType();\\n        if (count_by_type[human_type] == null) {\\n          count_by_type[human_type] = 0;\\n        }\\n        count_by_type[human_type] += 1;\\n      }\\n    }\\n    return count_by_type;\\n  }\\n  objectsNamesByType() {\\n    const names_by_type = {};\\n    const core_group = this._content;\\n    if (this._content && core_group) {\\n      for (let core_object of core_group.coreObjects()) {\\n        const human_type = core_object.humanType();\\n        names_by_type[human_type] = names_by_type[human_type] || [];\\n        names_by_type[human_type].push(core_object.name());\\n      }\\n    }\\n    return names_by_type;\\n  }\\n  pointAttributeNames() {\\n    let names = [];\\n    const geometry = this.firstGeometry();\\n    if (geometry) {\\n      names = Object.keys(geometry.attributes);\\n    }\\n    return names;\\n  }\\n  pointAttributeSizesByName() {\\n    let sizes_by_name = {};\\n    const geometry = this.firstGeometry();\\n    if (geometry) {\\n      Object.keys(geometry.attributes).forEach((attrib_name) => {\\n        const attrib = geometry.attributes[attrib_name];\\n        sizes_by_name[attrib_name] = attrib.itemSize;\\n      });\\n    }\\n    return sizes_by_name;\\n  }\\n  objectAttributeSizesByName() {\\n    let sizes_by_name = {};\\n    const core_object = this.firstCoreObject();\\n    if (core_object) {\\n      const attribNames = core_object.attribNames();\\n      for (let name of attribNames) {\\n        const size = core_object.attribSize(name);\\n        if (size != null) {\\n          sizes_by_name[name] = size;\\n        }\\n      }\\n    }\\n    return sizes_by_name;\\n  }\\n  pointAttributeTypesByName() {\\n    let types_by_name = {};\\n    const geometry = this.firstGeometry();\\n    if (geometry) {\\n      const core_geo = new CoreGeometry(geometry);\\n      Object.keys(geometry.attributes).forEach((attrib_name) => {\\n        types_by_name[attrib_name] = core_geo.attribType(attrib_name);\\n      });\\n    }\\n    return types_by_name;\\n  }\\n  objectAttributeTypesByName() {\\n    let types_by_name = {};\\n    const core_object = this.firstCoreObject();\\n    if (core_object) {\\n      for (let name of core_object.attribNames()) {\\n        types_by_name[name] = core_object.attribType(name);\\n      }\\n    }\\n    return types_by_name;\\n  }\\n  objectAttributeNames() {\\n    let names = [];\\n    const object = this.firstObject();\\n    if (object) {\\n      names = Object.keys(object.userData[\\\\\\\"attributes\\\\\\\"] || {});\\n    }\\n    return names;\\n  }\\n  pointsCount() {\\n    if (this._content) {\\n      return this._content.pointsCount();\\n    } else {\\n      return 0;\\n    }\\n  }\\n  totalPointsCount() {\\n    if (this._content) {\\n      return this._content.totalPointsCount();\\n    } else {\\n      return 0;\\n    }\\n  }\\n  objectsData() {\\n    if (this._content) {\\n      return this._content.objectsData();\\n    } else {\\n      return [];\\n    }\\n  }\\n  boundingBox(forceUpdate = false) {\\n    return this._content.boundingBox(forceUpdate);\\n  }\\n  center() {\\n    return this._content.center();\\n  }\\n  size() {\\n    return this._content.size();\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/containers/Gl.ts\\nvar GlContainer = class extends TypedContainer {\\n  object() {\\n    return this._content;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/containers/Js.ts\\nvar JsContainer = class extends TypedContainer {\\n  object() {\\n    return this._content;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/containers/Manager.ts\\nvar ManagerContainer = class extends TypedContainer {\\n  set_content(content) {\\n    super.set_content(content);\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/containers/Material.ts\\nvar MaterialContainer = class extends TypedContainer {\\n  set_content(content) {\\n    super.set_content(content);\\n  }\\n  set_material(material) {\\n    if (this._content != null) {\\n      this._content.dispose();\\n    }\\n    this.set_content(material);\\n  }\\n  has_material() {\\n    return this.has_content();\\n  }\\n  material() {\\n    return this.content();\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/containers/Object.ts\\nvar ObjectContainer = class extends TypedContainer {\\n  set_content(content) {\\n    super.set_content(content);\\n  }\\n  set_object(object) {\\n    return this.set_content(object);\\n  }\\n  has_object() {\\n    return this.has_content();\\n  }\\n  object() {\\n    return this.content();\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/containers/Texture.ts\\nvar TextureContainer = class extends TypedContainer {\\n  set_content(content) {\\n    super.set_content(content);\\n  }\\n  texture() {\\n    return this._content;\\n  }\\n  coreContent() {\\n    return this._content;\\n  }\\n  coreContentCloned() {\\n    const texture = this._content?.clone();\\n    if (texture) {\\n      texture.needsUpdate = true;\\n    }\\n    return texture;\\n  }\\n  object() {\\n    return this.texture();\\n  }\\n  infos() {\\n    if (this._content != null) {\\n      return [this._content];\\n    }\\n  }\\n  resolution() {\\n    if (this._content) {\\n      const image = this._content.image;\\n      if (image) {\\n        if (image instanceof HTMLImageElement || image instanceof Image || image instanceof ImageData || image instanceof HTMLCanvasElement) {\\n          return [image.width, image.height];\\n        }\\n        if (image.data && image.width != null && image.height != null) {\\n          return [image.width, image.height];\\n        }\\n        const video = image;\\n        return [video.videoWidth, video.videoHeight];\\n      }\\n    }\\n    return [-1, -1];\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/containers/PostProcess.ts\\nvar PostProcessContainer = class extends TypedContainer {\\n  set_content(content) {\\n    super.set_content(content);\\n  }\\n  render_pass() {\\n    return this._content;\\n  }\\n  object(options = {}) {\\n    return this.render_pass();\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/containers/Rop.ts\\nvar RopContainer = class extends TypedContainer {\\n  set_content(content) {\\n    super.set_content(content);\\n  }\\n  renderer() {\\n    return this._content;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/containers/utils/ContainerMap.ts\\nvar ContainerClassMap = {\\n  [NodeContext.ANIM]: AnimationContainer,\\n  [NodeContext.COP]: TextureContainer,\\n  [NodeContext.EVENT]: EventContainer,\\n  [NodeContext.GL]: GlContainer,\\n  [NodeContext.JS]: JsContainer,\\n  [NodeContext.MANAGER]: ManagerContainer,\\n  [NodeContext.MAT]: MaterialContainer,\\n  [NodeContext.OBJ]: ObjectContainer,\\n  [NodeContext.POST]: PostProcessContainer,\\n  [NodeContext.ROP]: RopContainer,\\n  [NodeContext.SOP]: GeometryContainer\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/ContainerController.ts\\nvar TypedContainerController = class {\\n  constructor(node) {\\n    this.node = node;\\n    this._callbacks = [];\\n    this._callbacks_tmp = [];\\n    const container_class = ContainerClassMap[node.context()];\\n    this._container = new container_class(this.node);\\n  }\\n  container() {\\n    return this._container;\\n  }\\n  async compute() {\\n    if (this.node.flags?.bypass?.active()) {\\n      const container = await this.requestInputContainer(0) || this._container;\\n      this.node.cookController.endCook();\\n      return container;\\n    }\\n    if (this.node.isDirty()) {\\n      return new Promise((resolve, reject) => {\\n        this._callbacks.push(resolve);\\n        this.node.cookController.cookMain();\\n      });\\n    }\\n    return this._container;\\n  }\\n  async requestInputContainer(input_index) {\\n    const inputNode = this.node.io.inputs.input(input_index);\\n    if (inputNode) {\\n      return await inputNode.compute();\\n    } else {\\n      this.node.states.error.set(`input ${input_index} required`);\\n      this.notifyRequesters();\\n      return null;\\n    }\\n  }\\n  notifyRequesters(container) {\\n    this._callbacks_tmp = this._callbacks.slice();\\n    this._callbacks.splice(0, this._callbacks.length);\\n    if (!container) {\\n      container = this.node.containerController.container();\\n    }\\n    let callback;\\n    while (callback = this._callbacks_tmp.pop()) {\\n      callback(container);\\n    }\\n    this.node.scene().cookController.removeNode(this.node);\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/cook/PerformanceController.ts\\nvar performance = Poly.performance.performanceManager();\\nvar NodeCookPerformanceformanceController = class {\\n  constructor(cookController) {\\n    this.cookController = cookController;\\n    this._inputs_start = 0;\\n    this._params_start = 0;\\n    this._cook_start = 0;\\n    this._cooksCount = 0;\\n    this._data = {\\n      inputsTime: 0,\\n      paramsTime: 0,\\n      cookTime: 0\\n    };\\n  }\\n  cooksCount() {\\n    return this._cooksCount;\\n  }\\n  data2() {\\n    return this._data;\\n  }\\n  active() {\\n    return this.cookController.performanceRecordStarted();\\n  }\\n  recordInputsStart() {\\n    if (this.active()) {\\n      this._inputs_start = performance.now();\\n    }\\n  }\\n  recordInputsEnd() {\\n    if (this.active()) {\\n      this._data.inputsTime = performance.now() - this._inputs_start;\\n    }\\n  }\\n  recordParamsStart() {\\n    if (this.active()) {\\n      this._params_start = performance.now();\\n    }\\n  }\\n  recordParamsEnd() {\\n    if (this.active()) {\\n      this._data.paramsTime = performance.now() - this._params_start;\\n    }\\n  }\\n  recordCookStart() {\\n    if (this.active()) {\\n      this._cook_start = performance.now();\\n    }\\n  }\\n  recordCookEnd() {\\n    if (this.active()) {\\n      this._data.cookTime = performance.now() - this._cook_start;\\n      this._cooksCount += 1;\\n    }\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/CookController.ts\\nvar NodeCookController = class {\\n  constructor(node) {\\n    this.node = node;\\n    this._cooking = false;\\n    this._performanceController = new NodeCookPerformanceformanceController(this);\\n    this._inputs_evaluation_required = true;\\n    this._core_performance = this.node.scene().performance;\\n  }\\n  performanceRecordStarted() {\\n    return this._core_performance.started();\\n  }\\n  disallowInputsEvaluation() {\\n    this._inputs_evaluation_required = false;\\n  }\\n  isCooking() {\\n    return this._cooking === true;\\n  }\\n  _start_cook_if_no_errors(input_contents) {\\n    if (this.node.states.error.active()) {\\n      this.endCook();\\n    } else {\\n      try {\\n        this._performanceController.recordCookStart();\\n        this.node.cook(input_contents);\\n      } catch (e) {\\n        this.node.states.error.set(`node internal error: '${e}'.`);\\n        Poly.warn(e);\\n        this.endCook();\\n      }\\n    }\\n  }\\n  async cookMain() {\\n    if (this.isCooking()) {\\n      return;\\n    }\\n    this._initCookingState();\\n    this.node.states.error.clear();\\n    this.node.scene().cookController.addNode(this.node);\\n    let input_contents;\\n    if (this._inputs_evaluation_required) {\\n      input_contents = await this._evaluateInputs();\\n    } else {\\n      input_contents = [];\\n    }\\n    if (this.node.params.paramsEvalRequired()) {\\n      await this._evaluateParams();\\n    }\\n    this._start_cook_if_no_errors(input_contents);\\n  }\\n  async cookMainWithoutInputs() {\\n    this.node.scene().cookController.addNode(this.node);\\n    if (this.isCooking()) {\\n      Poly.warn(\\\\\\\"cook_main_without_inputs already cooking\\\\\\\", this.node.path());\\n      return;\\n    }\\n    this._initCookingState();\\n    this.node.states.error.clear();\\n    if (this.node.params.paramsEvalRequired()) {\\n      await this._evaluateParams();\\n    }\\n    this._start_cook_if_no_errors([]);\\n  }\\n  endCook(message) {\\n    this._finalizeCookPerformance();\\n    const dirty_timestamp = this.node.dirtyController.dirtyTimestamp();\\n    if (dirty_timestamp == null || dirty_timestamp === this._cooking_dirty_timestamp) {\\n      this.node.removeDirtyState();\\n      this._terminateCookProcess();\\n    } else {\\n      Poly.log(\\\\\\\"COOK AGAIN\\\\\\\", dirty_timestamp, this._cooking_dirty_timestamp, this.node.path());\\n      this._cooking = false;\\n      this.cookMain();\\n    }\\n  }\\n  _initCookingState() {\\n    this._cooking = true;\\n    this._cooking_dirty_timestamp = this.node.dirtyController.dirtyTimestamp();\\n  }\\n  _terminateCookProcess() {\\n    if (this.isCooking()) {\\n      this._cooking = false;\\n      this.node.containerController.notifyRequesters();\\n      this._run_on_cook_complete_hooks();\\n    }\\n  }\\n  async _evaluateInputs() {\\n    this._performanceController.recordInputsStart();\\n    let input_containers = [];\\n    const io_inputs = this.node.io.inputs;\\n    if (this._inputs_evaluation_required) {\\n      if (io_inputs.is_any_input_dirty()) {\\n        input_containers = await io_inputs.eval_required_inputs();\\n      } else {\\n        input_containers = await io_inputs.containers_without_evaluation();\\n      }\\n    }\\n    const inputs = io_inputs.inputs();\\n    const input_contents = [];\\n    let input_container;\\n    for (let i = 0; i < inputs.length; i++) {\\n      input_container = input_containers[i];\\n      if (input_container) {\\n        if (io_inputs.cloneRequired(i)) {\\n          input_contents[i] = input_container.coreContentCloned();\\n        } else {\\n          input_contents[i] = input_container.coreContent();\\n        }\\n      }\\n    }\\n    this._performanceController.recordInputsEnd();\\n    return input_contents;\\n  }\\n  async _evaluateParams() {\\n    this._performanceController.recordParamsStart();\\n    await this.node.params.evalAll();\\n    this._performanceController.recordParamsEnd();\\n  }\\n  cooksCount() {\\n    return this._performanceController.cooksCount();\\n  }\\n  cookTime() {\\n    return this._performanceController.data2().cookTime;\\n  }\\n  _finalizeCookPerformance() {\\n    if (!this._core_performance.started()) {\\n      return;\\n    }\\n    this._performanceController.recordCookEnd();\\n    this._core_performance.record_node_cook_data(this.node, this._performanceController.data2());\\n  }\\n  registerOnCookEnd(callbackName, callback) {\\n    this._on_cook_complete_hook_names = this._on_cook_complete_hook_names || [];\\n    this._on_cook_complete_hooks = this._on_cook_complete_hooks || [];\\n    this._on_cook_complete_hook_names.push(callbackName);\\n    this._on_cook_complete_hooks.push(callback);\\n  }\\n  deregisterOnCookEnd(callbackName) {\\n    if (!this._on_cook_complete_hook_names || !this._on_cook_complete_hooks) {\\n      return;\\n    }\\n    const index = this._on_cook_complete_hook_names?.indexOf(callbackName);\\n    this._on_cook_complete_hook_names.splice(index, 1);\\n    this._on_cook_complete_hooks.splice(index, 1);\\n  }\\n  _run_on_cook_complete_hooks() {\\n    if (this._on_cook_complete_hooks) {\\n      for (let hook of this._on_cook_complete_hooks) {\\n        hook();\\n      }\\n    }\\n  }\\n  onCookEndCallbackNames() {\\n    return this._on_cook_complete_hook_names;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/Serializer.ts\\nvar NodeSerializer = class {\\n  constructor(node) {\\n    this.node = node;\\n  }\\n  toJSON(include_param_components = false) {\\n    const data = {\\n      name: this.node.name(),\\n      type: this.node.type(),\\n      graph_node_id: this.node.graphNodeId(),\\n      is_dirty: this.node.isDirty(),\\n      ui_data_json: this.node.uiData.toJSON(),\\n      error_message: this.node.states.error.message(),\\n      children: this.childrenIds(),\\n      maxInputsCount: this.maxInputsCount(),\\n      inputs: this.inputIds(),\\n      input_connection_output_indices: this.inputConnectionOutputIndices(),\\n      named_input_connection_points: this.namedInputConnectionPoints(),\\n      named_output_connection_points: this.namedOutputConnectionPoints(),\\n      param_ids: this.to_json_params(include_param_components),\\n      override_cloned_state_allowed: this.node.io.inputs.overrideClonedStateAllowed(),\\n      inputs_clone_required_states: this.node.io.inputs.cloneRequiredStates(),\\n      flags: {\\n        display: this.node.flags?.display?.active(),\\n        bypass: this.node.flags?.bypass?.active(),\\n        optimize: this.node.flags?.optimize?.active()\\n      },\\n      selection: void 0\\n    };\\n    if (this.node.childrenAllowed() && this.node.childrenController) {\\n      data[\\\\\\\"selection\\\\\\\"] = this.node.childrenController.selection.toJSON();\\n    }\\n    return data;\\n  }\\n  childrenIds() {\\n    return this.node.children().map((node) => node.graphNodeId());\\n  }\\n  maxInputsCount() {\\n    return this.node.io.inputs.maxInputsCount();\\n  }\\n  inputIds() {\\n    return this.node.io.inputs.inputs().map((node) => node != null ? node.graphNodeId() : void 0);\\n  }\\n  inputConnectionOutputIndices() {\\n    return this.node.io.connections.inputConnections()?.map((connection) => connection != null ? connection.output_index : void 0);\\n  }\\n  namedInputConnectionPoints() {\\n    return this.node.io.inputs.namedInputConnectionPoints().map((i) => i.toJSON());\\n  }\\n  namedOutputConnectionPoints() {\\n    return this.node.io.outputs.namedOutputConnectionPoints().map((o) => o.toJSON());\\n  }\\n  to_json_params_from_names(param_names, include_components = false) {\\n    return param_names.map((param_name) => {\\n      return this.node.params.get(param_name).graphNodeId();\\n    });\\n  }\\n  to_json_params(include_components = false) {\\n    return this.to_json_params_from_names(this.node.params.names, include_components);\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/poly/ParamType.ts\\nvar ParamType;\\n(function(ParamType2) {\\n  ParamType2[\\\\\\\"BOOLEAN\\\\\\\"] = \\\\\\\"boolean\\\\\\\";\\n  ParamType2[\\\\\\\"BUTTON\\\\\\\"] = \\\\\\\"button\\\\\\\";\\n  ParamType2[\\\\\\\"COLOR\\\\\\\"] = \\\\\\\"color\\\\\\\";\\n  ParamType2[\\\\\\\"FLOAT\\\\\\\"] = \\\\\\\"float\\\\\\\";\\n  ParamType2[\\\\\\\"FOLDER\\\\\\\"] = \\\\\\\"folder\\\\\\\";\\n  ParamType2[\\\\\\\"INTEGER\\\\\\\"] = \\\\\\\"integer\\\\\\\";\\n  ParamType2[\\\\\\\"OPERATOR_PATH\\\\\\\"] = \\\\\\\"operator_path\\\\\\\";\\n  ParamType2[\\\\\\\"PARAM_PATH\\\\\\\"] = \\\\\\\"param_path\\\\\\\";\\n  ParamType2[\\\\\\\"NODE_PATH\\\\\\\"] = \\\\\\\"node_path\\\\\\\";\\n  ParamType2[\\\\\\\"RAMP\\\\\\\"] = \\\\\\\"ramp\\\\\\\";\\n  ParamType2[\\\\\\\"STRING\\\\\\\"] = \\\\\\\"string\\\\\\\";\\n  ParamType2[\\\\\\\"VECTOR2\\\\\\\"] = \\\\\\\"vector2\\\\\\\";\\n  ParamType2[\\\\\\\"VECTOR3\\\\\\\"] = \\\\\\\"vector3\\\\\\\";\\n  ParamType2[\\\\\\\"VECTOR4\\\\\\\"] = \\\\\\\"vector4\\\\\\\";\\n})(ParamType || (ParamType = {}));\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/poly/ParamEvent.ts\\nvar ParamEvent;\\n(function(ParamEvent2) {\\n  ParamEvent2[\\\\\\\"VISIBLE_UPDATED\\\\\\\"] = \\\\\\\"param_visible_updated\\\\\\\";\\n  ParamEvent2[\\\\\\\"RAW_INPUT_UPDATED\\\\\\\"] = \\\\\\\"raw_input_updated\\\\\\\";\\n  ParamEvent2[\\\\\\\"VALUE_UPDATED\\\\\\\"] = \\\\\\\"param_value_updated\\\\\\\";\\n  ParamEvent2[\\\\\\\"EXPRESSION_UPDATED\\\\\\\"] = \\\\\\\"param_expression_update\\\\\\\";\\n  ParamEvent2[\\\\\\\"ERROR_UPDATED\\\\\\\"] = \\\\\\\"param_error_updated\\\\\\\";\\n  ParamEvent2[\\\\\\\"DELETED\\\\\\\"] = \\\\\\\"param_deleted\\\\\\\";\\n})(ParamEvent || (ParamEvent = {}));\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/params/utils/OptionsController.ts\\nvar CALLBACK_OPTION = \\\\\\\"callback\\\\\\\";\\nvar CALLBACK_STRING_OPTION = \\\\\\\"callbackString\\\\\\\";\\nvar COMPUTE_ON_DIRTY = \\\\\\\"computeOnDirty\\\\\\\";\\nvar COOK_OPTION = \\\\\\\"cook\\\\\\\";\\nvar FILE_BROWSE_OPTION = \\\\\\\"fileBrowse\\\\\\\";\\nvar FILE_TYPE_OPTION = \\\\\\\"type\\\\\\\";\\nvar EXPRESSION = \\\\\\\"expression\\\\\\\";\\nvar FOR_ENTITIES = \\\\\\\"forEntities\\\\\\\";\\nvar LABEL = \\\\\\\"label\\\\\\\";\\nvar LEVEL = \\\\\\\"level\\\\\\\";\\nvar MENU = \\\\\\\"menu\\\\\\\";\\nvar MENU_STRING = \\\\\\\"menuString\\\\\\\";\\nvar ENTRIES = \\\\\\\"entries\\\\\\\";\\nvar MULTILINE_OPTION = \\\\\\\"multiline\\\\\\\";\\nvar LANGUAGE_OPTION = \\\\\\\"language\\\\\\\";\\nvar NODE_SELECTION = \\\\\\\"nodeSelection\\\\\\\";\\nvar NODE_SELECTION_CONTEXT = \\\\\\\"context\\\\\\\";\\nvar NODE_SELECTION_TYPES = \\\\\\\"types\\\\\\\";\\nvar PARAM_SELECTION = \\\\\\\"paramSelection\\\\\\\";\\nvar DEPENDENT_ON_FOUND_NODE = \\\\\\\"dependentOnFoundNode\\\\\\\";\\nvar RANGE_OPTION = \\\\\\\"range\\\\\\\";\\nvar RANGE_LOCKED_OPTION = \\\\\\\"rangeLocked\\\\\\\";\\nvar STEP_OPTION = \\\\\\\"step\\\\\\\";\\nvar SPARE_OPTION = \\\\\\\"spare\\\\\\\";\\nvar TEXTURE_OPTION = \\\\\\\"texture\\\\\\\";\\nvar ENV_OPTION = \\\\\\\"env\\\\\\\";\\nvar HIDDEN_OPTION = \\\\\\\"hidden\\\\\\\";\\nvar FIELD_OPTION = \\\\\\\"field\\\\\\\";\\nvar VISIBLE_IF_OPTION = \\\\\\\"visibleIf\\\\\\\";\\nvar COLOR_CONVERSION = \\\\\\\"conversion\\\\\\\";\\nvar SEPARATOR_BEFORE_OPTION = \\\\\\\"separatorBefore\\\\\\\";\\nvar SEPARATOR_AFTER_OPTION = \\\\\\\"separatorAfter\\\\\\\";\\nvar StringParamLanguage;\\n(function(StringParamLanguage2) {\\n  StringParamLanguage2[\\\\\\\"TYPESCRIPT\\\\\\\"] = \\\\\\\"typescript\\\\\\\";\\n})(StringParamLanguage || (StringParamLanguage = {}));\\nvar FileType;\\n(function(FileType2) {\\n  FileType2[\\\\\\\"AUDIO\\\\\\\"] = \\\\\\\"audio\\\\\\\";\\n  FileType2[\\\\\\\"TEXTURE_IMAGE\\\\\\\"] = \\\\\\\"texture_image\\\\\\\";\\n  FileType2[\\\\\\\"TEXTURE_VIDEO\\\\\\\"] = \\\\\\\"texture_video\\\\\\\";\\n  FileType2[\\\\\\\"GEOMETRY\\\\\\\"] = \\\\\\\"geometry\\\\\\\";\\n  FileType2[\\\\\\\"FONT\\\\\\\"] = \\\\\\\"font\\\\\\\";\\n  FileType2[\\\\\\\"SVG\\\\\\\"] = \\\\\\\"svg\\\\\\\";\\n  FileType2[\\\\\\\"JSON\\\\\\\"] = \\\\\\\"json\\\\\\\";\\n})(FileType || (FileType = {}));\\nvar OptionsController = class {\\n  constructor(_param) {\\n    this._param = _param;\\n    this._programatic_visible_state = true;\\n    this._callbackAllowed = false;\\n    this._updateVisibilityAndRemoveDirtyBound = this.updateVisibilityAndRemoveDirty.bind(this);\\n    this._ui_data_dependency_set = false;\\n  }\\n  dispose() {\\n    try {\\n      this._options[CALLBACK_OPTION] = void 0;\\n      this._options[CALLBACK_STRING_OPTION] = void 0;\\n    } catch (err) {\\n    }\\n    this._visibility_graph_node?.dispose();\\n  }\\n  set(options) {\\n    this._default_options = options;\\n    this._options = ObjectUtils.cloneDeep(this._default_options);\\n    this.post_set_options();\\n  }\\n  copy(options_controller) {\\n    this._default_options = ObjectUtils.cloneDeep(options_controller.default());\\n    this._options = ObjectUtils.cloneDeep(options_controller.current());\\n    this.post_set_options();\\n  }\\n  setOption(name, value) {\\n    this._options[name] = value;\\n    if (this._param.components) {\\n      for (let component of this._param.components) {\\n        component.options.setOption(name, value);\\n      }\\n    }\\n  }\\n  post_set_options() {\\n    this._handleComputeOnDirty();\\n  }\\n  param() {\\n    return this._param;\\n  }\\n  node() {\\n    return this._param.node;\\n  }\\n  default() {\\n    return this._default_options;\\n  }\\n  current() {\\n    return this._options;\\n  }\\n  hasOptionsOverridden() {\\n    return !ObjectUtils.isEqual(this._options, this._default_options);\\n  }\\n  overriddenOptions() {\\n    const overriden = {};\\n    const option_names = Object.keys(this._options);\\n    for (let option_name of option_names) {\\n      if (!ObjectUtils.isEqual(this._options[option_name], this._default_options[option_name])) {\\n        const cloned_option = ObjectUtils.cloneDeep(this._options[option_name]);\\n        Object.assign(overriden, {[option_name]: cloned_option});\\n      }\\n    }\\n    return overriden;\\n  }\\n  overriddenOptionNames() {\\n    return Object.keys(this.overriddenOptions());\\n  }\\n  computeOnDirty() {\\n    return this._options[COMPUTE_ON_DIRTY] || false;\\n  }\\n  _handleComputeOnDirty() {\\n    if (this.computeOnDirty()) {\\n      if (!this._computeOnDirty_callback_added) {\\n        this.param().addPostDirtyHook(\\\\\\\"computeOnDirty\\\\\\\", this._computeParam.bind(this));\\n        this._computeOnDirty_callback_added = true;\\n      }\\n    }\\n  }\\n  async _computeParam() {\\n    await this.param().compute();\\n  }\\n  hasCallback() {\\n    return this._options[CALLBACK_OPTION] != null || this._options[CALLBACK_STRING_OPTION] != null;\\n  }\\n  allowCallback() {\\n    this._callbackAllowed = true;\\n  }\\n  executeCallback() {\\n    if (!this._callbackAllowed) {\\n      return;\\n    }\\n    if (!this.node()) {\\n      return;\\n    }\\n    const callback = this.getCallback();\\n    if (!callback) {\\n      return;\\n    }\\n    if (!this.node().scene().loadingController.loaded()) {\\n      return;\\n    }\\n    const parent_param = this.param().parent_param;\\n    if (parent_param) {\\n      parent_param.options.executeCallback();\\n    } else {\\n      callback(this.node(), this.param());\\n    }\\n  }\\n  getCallback() {\\n    if (this.hasCallback()) {\\n      return this._options[CALLBACK_OPTION] = this._options[CALLBACK_OPTION] || this.createCallbackFromString();\\n    }\\n  }\\n  createCallbackFromString() {\\n    const callbackString = this._options[CALLBACK_STRING_OPTION];\\n    if (callbackString) {\\n      const callback_function = new Function(\\\\\\\"node\\\\\\\", \\\\\\\"scene\\\\\\\", \\\\\\\"window\\\\\\\", \\\\\\\"location\\\\\\\", callbackString);\\n      return () => {\\n        callback_function(this.node(), this.node().scene(), null, null);\\n      };\\n    }\\n  }\\n  colorConversion() {\\n    return this._options[COLOR_CONVERSION];\\n  }\\n  makesNodeDirtyWhenDirty() {\\n    let cook_options;\\n    if (this.param().parent_param != null) {\\n      return false;\\n    }\\n    let value = true;\\n    if ((cook_options = this._options[COOK_OPTION]) != null) {\\n      value = cook_options;\\n    }\\n    return value;\\n  }\\n  fileBrowseOption() {\\n    return this._options[FILE_BROWSE_OPTION];\\n  }\\n  fileBrowseAllowed() {\\n    return this.fileBrowseOption() != null;\\n  }\\n  fileBrowseType() {\\n    const option = this.fileBrowseOption();\\n    if (option) {\\n      return option[FILE_TYPE_OPTION];\\n    } else {\\n      return null;\\n    }\\n  }\\n  separatorBefore() {\\n    return this._options[SEPARATOR_BEFORE_OPTION];\\n  }\\n  separatorAfter() {\\n    return this._options[SEPARATOR_AFTER_OPTION];\\n  }\\n  isExpressionForEntities() {\\n    const expr_option = this._options[EXPRESSION];\\n    if (expr_option) {\\n      return expr_option[FOR_ENTITIES] || false;\\n    }\\n    return false;\\n  }\\n  level() {\\n    return this._options[LEVEL] || 0;\\n  }\\n  hasMenu() {\\n    return this.menuOptions() != null || this.menuStringOptions() != null;\\n  }\\n  menuOptions() {\\n    return this._options[MENU];\\n  }\\n  menuStringOptions() {\\n    return this._options[MENU_STRING];\\n  }\\n  menuEntries() {\\n    const options = this.menuOptions() || this.menuStringOptions();\\n    if (options) {\\n      return options[ENTRIES];\\n    } else {\\n      return [];\\n    }\\n  }\\n  isMultiline() {\\n    return this._options[MULTILINE_OPTION] === true;\\n  }\\n  language() {\\n    return this._options[LANGUAGE_OPTION];\\n  }\\n  isCode() {\\n    return this.language() != null;\\n  }\\n  nodeSelectionOptions() {\\n    return this._options[NODE_SELECTION];\\n  }\\n  nodeSelectionContext() {\\n    const options = this.nodeSelectionOptions();\\n    if (options) {\\n      return options[NODE_SELECTION_CONTEXT];\\n    }\\n  }\\n  nodeSelectionTypes() {\\n    const options = this.nodeSelectionOptions();\\n    if (options) {\\n      return options[NODE_SELECTION_TYPES];\\n    }\\n  }\\n  dependentOnFoundNode() {\\n    if (DEPENDENT_ON_FOUND_NODE in this._options) {\\n      return this._options[DEPENDENT_ON_FOUND_NODE];\\n    } else {\\n      return true;\\n    }\\n  }\\n  isSelectingParam() {\\n    return this.paramSelectionOptions() != null;\\n  }\\n  paramSelectionOptions() {\\n    return this._options[PARAM_SELECTION];\\n  }\\n  paramSelectionType() {\\n    const options = this.paramSelectionOptions();\\n    if (options) {\\n      const type_or_boolean = options;\\n      if (!CoreType.isBoolean(type_or_boolean)) {\\n        return type_or_boolean;\\n      }\\n    }\\n  }\\n  range() {\\n    return this._options[RANGE_OPTION] || [0, 1];\\n  }\\n  step() {\\n    return this._options[STEP_OPTION];\\n  }\\n  rangeLocked() {\\n    return this._options[RANGE_LOCKED_OPTION] || [false, false];\\n  }\\n  ensureInRange(value) {\\n    const range = this.range();\\n    if (value >= range[0] && value <= range[1]) {\\n      return value;\\n    } else {\\n      if (value < range[0]) {\\n        return this.rangeLocked()[0] === true ? range[0] : value;\\n      } else {\\n        return this.rangeLocked()[1] === true ? range[1] : value;\\n      }\\n    }\\n  }\\n  isSpare() {\\n    return this._options[SPARE_OPTION] || false;\\n  }\\n  textureOptions() {\\n    return this._options[TEXTURE_OPTION];\\n  }\\n  textureAsEnv() {\\n    const texture_options = this.textureOptions();\\n    if (texture_options != null) {\\n      return texture_options[ENV_OPTION] === true;\\n    }\\n    return false;\\n  }\\n  isHidden() {\\n    return this._options[HIDDEN_OPTION] === true || this._programatic_visible_state === false;\\n  }\\n  isVisible() {\\n    return !this.isHidden();\\n  }\\n  setVisibleState(state) {\\n    this._options[HIDDEN_OPTION] = !state;\\n    this.param().emit(ParamEvent.VISIBLE_UPDATED);\\n  }\\n  label() {\\n    return this._options[LABEL];\\n  }\\n  isLabelHidden() {\\n    const type = this.param().type();\\n    return type === ParamType.BUTTON || type === ParamType.BOOLEAN && this.isFieldHidden();\\n  }\\n  isFieldHidden() {\\n    return this._options[FIELD_OPTION] === false;\\n  }\\n  uiDataDependsOnOtherParams() {\\n    return VISIBLE_IF_OPTION in this._options;\\n  }\\n  visibilityPredecessors() {\\n    const visibility_options = this._options[VISIBLE_IF_OPTION];\\n    if (!visibility_options) {\\n      return [];\\n    }\\n    let predecessor_names = [];\\n    if (CoreType.isArray(visibility_options)) {\\n      predecessor_names = ArrayUtils.uniq(visibility_options.map((options) => Object.keys(options)).flat());\\n    } else {\\n      predecessor_names = Object.keys(visibility_options);\\n    }\\n    const node = this.param().node;\\n    return ArrayUtils.compact(predecessor_names.map((name) => {\\n      const param = node.params.get(name);\\n      if (param) {\\n        return param;\\n      } else {\\n        console.error(`param ${name} not found as visibility condition for ${this.param().name()} in node ${this.param().node.type()}`);\\n      }\\n    }));\\n  }\\n  setUiDataDependency() {\\n    if (this._ui_data_dependency_set) {\\n      return;\\n    }\\n    this._ui_data_dependency_set = true;\\n    const predecessors = this.visibilityPredecessors();\\n    if (predecessors.length > 0) {\\n      this._visibility_graph_node = new CoreGraphNode(this.param().scene(), \\\\\\\"param_visibility\\\\\\\");\\n      for (let predecessor of predecessors) {\\n        this._visibility_graph_node.addGraphInput(predecessor);\\n      }\\n      this._visibility_graph_node.addPostDirtyHook(\\\\\\\"_update_visibility_and_remove_dirty\\\\\\\", this._updateVisibilityAndRemoveDirtyBound);\\n    }\\n  }\\n  updateVisibilityAndRemoveDirty() {\\n    this.updateVisibility();\\n    this.param().removeDirtyState();\\n  }\\n  async updateVisibility() {\\n    const options = this._options[VISIBLE_IF_OPTION];\\n    if (options) {\\n      const params = this.visibilityPredecessors();\\n      const promises = params.map((p) => {\\n        if (p.isDirty()) {\\n          return p.compute();\\n        }\\n      });\\n      this._programatic_visible_state = false;\\n      await Promise.all(promises);\\n      if (CoreType.isArray(options)) {\\n        for (let options_set of options) {\\n          const satisfied_values = params.filter((param) => param.value == options_set[param.name()]);\\n          if (satisfied_values.length == params.length) {\\n            this._programatic_visible_state = true;\\n          }\\n        }\\n      } else {\\n        const satisfied_values = params.filter((param) => param.value == options[param.name()]);\\n        this._programatic_visible_state = satisfied_values.length == params.length;\\n      }\\n      this.param().emit(ParamEvent.VISIBLE_UPDATED);\\n    }\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/params/utils/EmitController.ts\\nvar EmitController = class {\\n  constructor(param) {\\n    this.param = param;\\n    this._blocked_emit = false;\\n    this._blocked_parent_emit = false;\\n    this._count_by_event_name = {};\\n  }\\n  emitAllowed() {\\n    if (this._blocked_emit === true) {\\n      return false;\\n    }\\n    if (this.param.scene().loadingController.isLoading()) {\\n      return false;\\n    }\\n    return this.param.scene().dispatchController.emitAllowed();\\n  }\\n  blockEmit() {\\n    this._blocked_emit = true;\\n    if (this.param.isMultiple() && this.param.components) {\\n      for (let component of this.param.components) {\\n        component.emitController.blockEmit();\\n      }\\n    }\\n    return true;\\n  }\\n  unblockEmit() {\\n    this._blocked_emit = false;\\n    if (this.param.isMultiple() && this.param.components) {\\n      for (let component of this.param.components) {\\n        component.emitController.unblockEmit();\\n      }\\n    }\\n    return true;\\n  }\\n  blockParentEmit() {\\n    this._blocked_parent_emit = true;\\n    return true;\\n  }\\n  unblockParentEmit() {\\n    this._blocked_parent_emit = false;\\n    return true;\\n  }\\n  incrementCount(event_name) {\\n    this._count_by_event_name[event_name] = this._count_by_event_name[event_name] || 0;\\n    this._count_by_event_name[event_name] += 1;\\n  }\\n  eventsCount(event_name) {\\n    return this._count_by_event_name[event_name] || 0;\\n  }\\n  emit(event) {\\n    if (this.emitAllowed()) {\\n      this.param.emit(event);\\n      if (this.param.parent_param != null && this._blocked_parent_emit !== true) {\\n        this.param.parent_param.emit(event);\\n      }\\n    }\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/params/utils/Serializer.ts\\nvar ParamSerializer = class {\\n  constructor(param) {\\n    this.param = param;\\n  }\\n  toJSON() {\\n    const data = {\\n      name: this.param.name(),\\n      type: this.param.type(),\\n      raw_input: this.rawInput(),\\n      value: this.value(),\\n      value_pre_conversion: this.value_pre_conversion(),\\n      expression: this.expression(),\\n      graph_node_id: this.param.graphNodeId(),\\n      error_message: this.error_message(),\\n      is_visible: this.is_visible(),\\n      components: void 0\\n    };\\n    if (this.param.isMultiple() && this.param.components) {\\n      data[\\\\\\\"components\\\\\\\"] = this.param.components.map((component) => component.graphNodeId());\\n    }\\n    return data;\\n  }\\n  rawInput() {\\n    return this.param.rawInputSerialized();\\n  }\\n  value() {\\n    return this.param.valueSerialized();\\n  }\\n  value_pre_conversion() {\\n    return this.param.valuePreConversionSerialized();\\n  }\\n  expression() {\\n    return this.param.hasExpression() ? this.param.expressionController?.expression() : void 0;\\n  }\\n  error_message() {\\n    return this.param.states.error.message();\\n  }\\n  is_visible() {\\n    return this.param.options.isVisible();\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/params/utils/states/TimeDependent.ts\\nvar TimeDependentState2 = class {\\n  constructor(param) {\\n    this.param = param;\\n  }\\n  active() {\\n    const frame_graph_node_id = this.param.scene().timeController.graphNode.graphNodeId();\\n    return this.param.graphPredecessorIds().includes(frame_graph_node_id);\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/params/utils/states/Error.ts\\nvar ParamErrorState = class {\\n  constructor(param) {\\n    this.param = param;\\n  }\\n  set(message) {\\n    if (this._message != message) {\\n      this._message = message;\\n      if (this._message) {\\n        Poly.warn(this.param.path(), this._message);\\n      }\\n      this.param.emitController.emit(ParamEvent.ERROR_UPDATED);\\n    }\\n  }\\n  message() {\\n    return this._message;\\n  }\\n  clear() {\\n    this.set(void 0);\\n  }\\n  active() {\\n    return this._message != null;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/params/utils/StatesController.ts\\nvar StatesController2 = class {\\n  constructor(param) {\\n    this.param = param;\\n    this.timeDependent = new TimeDependentState2(this.param);\\n    this.error = new ParamErrorState(this.param);\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/expressions/MethodDependency.ts\\nvar MethodDependency = class extends CoreGraphNode {\\n  constructor(param, path_argument, decomposed_path) {\\n    super(param.scene(), \\\\\\\"MethodDependency\\\\\\\");\\n    this.param = param;\\n    this.path_argument = path_argument;\\n    this.decomposed_path = decomposed_path;\\n    this._update_from_name_change_bound = this._update_from_name_change.bind(this);\\n    param.expressionController?.registerMethodDependency(this);\\n    this.addPostDirtyHook(\\\\\\\"_update_from_name_change\\\\\\\", this._update_from_name_change_bound);\\n  }\\n  _update_from_name_change(trigger) {\\n    if (trigger && this.decomposed_path) {\\n      const node = trigger;\\n      this.decomposed_path.update_from_name_change(node);\\n      const new_path = this.decomposed_path.to_path();\\n      const literal = this.jsep_node;\\n      if (literal) {\\n        literal.value = `${literal.value}`.replace(`${this.path_argument}`, new_path);\\n        literal.raw = literal.raw.replace(`${this.path_argument}`, new_path);\\n      }\\n      if (this.param.expressionController) {\\n        this.param.expressionController.updateFromMethodDependencyNameChange();\\n      }\\n    }\\n  }\\n  reset() {\\n    this.graphDisconnectPredecessors();\\n  }\\n  listen_for_name_changes() {\\n    if (this.jsep_node && this.decomposed_path) {\\n      for (let node_in_path of this.decomposed_path.named_nodes()) {\\n        if (node_in_path) {\\n          const node = node_in_path;\\n          if (node.nameController) {\\n            this.addGraphInput(node.nameController.graph_node);\\n          }\\n        }\\n      }\\n    }\\n  }\\n  set_jsep_node(jsep_node) {\\n    this.jsep_node = jsep_node;\\n  }\\n  set_resolved_graph_node(node) {\\n    this.resolved_graph_node = node;\\n  }\\n  set_unresolved_path(path) {\\n    this.unresolved_path = path;\\n  }\\n  static create(param, index_or_path, node, decomposed_path) {\\n    const is_index = CoreType.isNumber(index_or_path);\\n    const instance = new MethodDependency(param, index_or_path, decomposed_path);\\n    if (node) {\\n      instance.set_resolved_graph_node(node);\\n    } else {\\n      if (!is_index) {\\n        const path = index_or_path;\\n        instance.set_unresolved_path(path);\\n      }\\n    }\\n    return instance;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/params/_Base.ts\\nvar TYPED_PARAM_DEFAULT_COMPONENT_NAMES = [];\\nvar TypedParam = class extends CoreGraphNode {\\n  constructor(scene, node) {\\n    super(scene, \\\\\\\"BaseParam\\\\\\\");\\n    this._options = new OptionsController(this);\\n    this._emit_controller = new EmitController(this);\\n    this._is_computing = false;\\n    this._node = node;\\n    this.initialize_param();\\n  }\\n  get options() {\\n    return this._options = this._options || new OptionsController(this);\\n  }\\n  get emitController() {\\n    return this._emit_controller = this._emit_controller || new EmitController(this);\\n  }\\n  get expressionController() {\\n    return this._expression_controller;\\n  }\\n  get serializer() {\\n    return this._serializer = this._serializer || new ParamSerializer(this);\\n  }\\n  get states() {\\n    return this._states = this._states || new StatesController2(this);\\n  }\\n  dispose() {\\n    const predecessors = this.graphPredecessors();\\n    for (let predecessor of predecessors) {\\n      if (predecessor instanceof MethodDependency) {\\n        predecessor.dispose();\\n      }\\n    }\\n    this.scene().missingExpressionReferencesController.deregisterParam(this);\\n    this._expression_controller?.dispose();\\n    super.dispose();\\n    this._options?.dispose();\\n  }\\n  initialize_param() {\\n  }\\n  static type() {\\n    return ParamType.FLOAT;\\n  }\\n  type() {\\n    return this.constructor.type();\\n  }\\n  isNumeric() {\\n    return false;\\n  }\\n  setName(name) {\\n    super.setName(name);\\n  }\\n  get value() {\\n    return this._value;\\n  }\\n  copy_value(param) {\\n    if (param.type() == this.type()) {\\n      this._copy_value(param);\\n    } else {\\n      console.warn(`cannot copy value from ${param.type()} to ${this.type()}`);\\n    }\\n  }\\n  _copy_value(param) {\\n    throw \\\\\\\"abstract method param._copy_value\\\\\\\";\\n  }\\n  valuePreConversionSerialized() {\\n    return void 0;\\n  }\\n  convert(raw_val) {\\n    return null;\\n  }\\n  static are_raw_input_equal(val1, val2) {\\n    return false;\\n  }\\n  is_raw_input_equal(other_raw_input) {\\n    return this.constructor.are_raw_input_equal(this._raw_input, other_raw_input);\\n  }\\n  static are_values_equal(val1, val2) {\\n    return false;\\n  }\\n  is_value_equal(other_val) {\\n    return this.constructor.are_values_equal(this.value, other_val);\\n  }\\n  _clone_raw_input(raw_input) {\\n    return raw_input;\\n  }\\n  set(raw_input) {\\n    this._raw_input = this._clone_raw_input(this._prefilter_invalid_raw_input(raw_input));\\n    this.emitController.emit(ParamEvent.RAW_INPUT_UPDATED);\\n    this.processRawInput();\\n  }\\n  _prefilter_invalid_raw_input(raw_input) {\\n    return raw_input;\\n  }\\n  defaultValue() {\\n    return this._default_value;\\n  }\\n  isDefault() {\\n    return this._raw_input == this._default_value;\\n  }\\n  rawInput() {\\n    return this._raw_input;\\n  }\\n  processRawInput() {\\n  }\\n  async compute() {\\n    if (this.scene().loadingController.isLoading()) {\\n      console.warn(`param attempt to compute ${this.path()}`);\\n    }\\n    if (this.isDirty()) {\\n      if (!this._is_computing) {\\n        this._is_computing = true;\\n        await this.processComputation();\\n        this._is_computing = false;\\n        if (this._compute_resolves) {\\n          let callback;\\n          while (callback = this._compute_resolves.pop()) {\\n            callback();\\n          }\\n        }\\n      } else {\\n        return new Promise((resolve, reject) => {\\n          this._compute_resolves = this._compute_resolves || [];\\n          this._compute_resolves.push(resolve);\\n        });\\n      }\\n    }\\n  }\\n  async processComputation() {\\n  }\\n  setInitValue(init_value) {\\n    this._default_value = this._clone_raw_input(this._prefilter_invalid_raw_input(init_value));\\n  }\\n  _setupNodeDependencies(node) {\\n    if (!node) {\\n      if (this._node) {\\n        this._node.params.params_node?.removeGraphInput(this);\\n      }\\n    } else {\\n      this.options.allowCallback();\\n      if (!this.parent_param) {\\n        if (this.options.makesNodeDirtyWhenDirty()) {\\n          node.params.params_node?.addGraphInput(this, false);\\n        } else {\\n          this.dirtyController.addPostDirtyHook(\\\\\\\"run callback\\\\\\\", async () => {\\n            await this.compute();\\n            this.options.executeCallback();\\n          });\\n        }\\n      }\\n    }\\n    if (this.components) {\\n      for (let c of this.components) {\\n        c._setupNodeDependencies(node);\\n      }\\n    }\\n  }\\n  get node() {\\n    return this._node;\\n  }\\n  parent() {\\n    return this.node;\\n  }\\n  set_parent_param(param) {\\n    param.addGraphInput(this, false);\\n    this._parent_param = param;\\n  }\\n  get parent_param() {\\n    return this._parent_param;\\n  }\\n  has_parent_param() {\\n    return this._parent_param != null;\\n  }\\n  path() {\\n    return this.node?.path() + \\\\\\\"/\\\\\\\" + this.name();\\n  }\\n  pathRelativeTo(node) {\\n    const nodeRelativePath = CoreWalker.relativePath(node, this.node);\\n    if (nodeRelativePath.length > 0) {\\n      return `${nodeRelativePath}${CoreWalker.SEPARATOR}${this.name()}`;\\n    } else {\\n      return this.name();\\n    }\\n  }\\n  emit(event_name) {\\n    if (this.emitController.emitAllowed()) {\\n      this.emitController.incrementCount(event_name);\\n      this.scene().dispatchController.dispatch(this, event_name);\\n    }\\n  }\\n  get components() {\\n    return this._components;\\n  }\\n  componentNames() {\\n    return TYPED_PARAM_DEFAULT_COMPONENT_NAMES;\\n  }\\n  isMultiple() {\\n    return this.componentNames().length > 0;\\n  }\\n  initComponents() {\\n  }\\n  hasExpression() {\\n    return this.expressionController != null && this.expressionController.active();\\n  }\\n  toJSON() {\\n    return this.serializer.toJSON();\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/expressions/traversers/ParsedTree.ts\\nvar import_jsep = __toModule(require_jsep());\\nimport_jsep.default.addUnaryOp(\\\\\\\"@\\\\\\\");\\nvar precedence = 10;\\nimport_jsep.default.addBinaryOp(\\\\\\\"**\\\\\\\", precedence);\\nvar JSEP_IDENTIFIER = \\\\\\\"Identifier\\\\\\\";\\nvar JSEP_LITERAL = \\\\\\\"Literal\\\\\\\";\\nvar JSEP_CALL_EXPRESSION = \\\\\\\"CallExpression\\\\\\\";\\nvar STRING_EXPRESSION_SEPARATOR = \\\\\\\"`\\\\\\\";\\nvar ParsedTree = class {\\n  constructor() {\\n  }\\n  parse_expression(string) {\\n    try {\\n      this.reset();\\n      this.node = import_jsep.default(string);\\n    } catch (e) {\\n      const message = `could not parse the expression '${string}' (error: ${e})`;\\n      this.error_message = message;\\n    }\\n  }\\n  parse_expression_for_string_param(string) {\\n    try {\\n      this.reset();\\n      const elements = ParsedTree.string_value_elements(string);\\n      const nodes = [];\\n      for (let i = 0; i < elements.length; i++) {\\n        const element = elements[i];\\n        let node;\\n        if (i % 2 == 1) {\\n          node = import_jsep.default(element);\\n        } else {\\n          const sanitizedElement = element.replace(/\\\\'/g, \\\\\\\"\\\\\\\\'\\\\\\\");\\n          node = {\\n            type: JSEP_LITERAL,\\n            value: `'${sanitizedElement}'`,\\n            raw: `'${sanitizedElement}'`\\n          };\\n        }\\n        nodes.push(node);\\n      }\\n      this.node = {\\n        type: JSEP_CALL_EXPRESSION,\\n        arguments: nodes,\\n        callee: {\\n          type: JSEP_IDENTIFIER,\\n          name: \\\\\\\"strConcat\\\\\\\"\\n        }\\n      };\\n    } catch (e) {\\n      const message = `could not parse the expression '${string}' (error: ${e})`;\\n      this.error_message = message;\\n    }\\n  }\\n  static string_value_elements(v) {\\n    if (v != null) {\\n      if (CoreType.isString(v)) {\\n        return v.split(STRING_EXPRESSION_SEPARATOR);\\n      } else {\\n        return [];\\n      }\\n    } else {\\n      return [];\\n    }\\n  }\\n  reset() {\\n    this.node = void 0;\\n    this.error_message = void 0;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/expressions/LiteralConstructsController.ts\\nvar LiteralConstructsController = class {\\n  static if(args) {\\n    const condition = args[0];\\n    const val_true = args[1];\\n    const val_false = args[2];\\n    return `(${condition}) ? (${val_true}) : (${val_false})`;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/expressions/traversers/_Base.ts\\nvar VARIABLE_PREFIX = \\\\\\\"$\\\\\\\";\\nvar BaseTraverser = class {\\n  constructor(param) {\\n    this.param = param;\\n    this._set_error_from_error_bound = this._set_error_from_error.bind(this);\\n  }\\n  clear_error() {\\n    this._error_message = void 0;\\n  }\\n  set_error(message) {\\n    this._error_message = this._error_message || message;\\n  }\\n  _set_error_from_error(error) {\\n    if (CoreType.isString(error)) {\\n      this._error_message = error;\\n    } else {\\n      this._error_message = error.message;\\n    }\\n  }\\n  is_errored() {\\n    return this._error_message != null;\\n  }\\n  error_message() {\\n    return this._error_message;\\n  }\\n  reset() {\\n    this._error_message = void 0;\\n  }\\n  traverse_node(node) {\\n    const method_name = `traverse_${node.type}`;\\n    const method = this[method_name];\\n    if (method) {\\n      return this[method_name](node);\\n    } else {\\n      this.set_error(`expression unknown node type: ${node.type}`);\\n    }\\n  }\\n  traverse_BinaryExpression(node) {\\n    return `${this.traverse_node(node.left)} ${node.operator} ${this.traverse_node(node.right)}`;\\n  }\\n  traverse_LogicalExpression(node) {\\n    return `${this.traverse_node(node.left)} ${node.operator} ${this.traverse_node(node.right)}`;\\n  }\\n  traverse_MemberExpression(node) {\\n    return `${this.traverse_node(node.object)}.${this.traverse_node(node.property)}`;\\n  }\\n  traverse_ConditionalExpression(node) {\\n    return `(${this.traverse_node(node.test)}) ? (${this.traverse_node(node.consequent)}) : (${this.traverse_node(node.alternate)})`;\\n  }\\n  traverse_Compound(node) {\\n    const args = node.body;\\n    let traversed_args = [];\\n    for (let i = 0; i < args.length; i++) {\\n      const arg_node = args[i];\\n      if (arg_node.type == \\\\\\\"Identifier\\\\\\\") {\\n        if (arg_node.name[0] == VARIABLE_PREFIX) {\\n          traversed_args.push(\\\\\\\"`${\\\\\\\" + this.traverse_node(arg_node) + \\\\\\\"}`\\\\\\\");\\n        } else {\\n          traversed_args.push(`'${arg_node.name}'`);\\n        }\\n      } else {\\n        traversed_args.push(\\\\\\\"`${\\\\\\\" + this.traverse_node(arg_node) + \\\\\\\"}`\\\\\\\");\\n      }\\n    }\\n    return traversed_args.join(\\\\\\\" + \\\\\\\");\\n  }\\n  traverse_Literal(node) {\\n    return `${node.raw}`;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/expressions/AttributeRequirementsController.ts\\nvar VAR_CORE_GEOMETRY = `coreGeometry`;\\nvar AttributeRequirementsController = class {\\n  constructor() {\\n  }\\n  reset() {\\n    if (this._attributeNames) {\\n      this._attributeNames.clear();\\n    }\\n  }\\n  assignAttributesLines() {\\n    if (this._attributeNames) {\\n      const lines = [];\\n      for (let attribName of this._attributeNames) {\\n        lines.push(AttributeRequirementsController.assignAttributeLine(attribName));\\n      }\\n      return lines.join(\\\\\\\";\\\\n\\\\\\\");\\n    } else {\\n      return \\\\\\\"\\\\\\\";\\n    }\\n  }\\n  assignArraysLines() {\\n    if (this._attributeNames) {\\n      const lines = [];\\n      if (this._attributeNames.size > 0) {\\n        const coreGeoLine = `const ${VAR_CORE_GEOMETRY} = entities[0].coreGeometry();`;\\n        lines.push(coreGeoLine);\\n      }\\n      for (let attribName of this._attributeNames) {\\n        lines.push(AttributeRequirementsController.assignItemSizeLine(attribName));\\n        lines.push(AttributeRequirementsController.assignArrayLine(attribName));\\n      }\\n      return lines.join(\\\\\\\";\\\\n\\\\\\\");\\n    } else {\\n      return \\\\\\\"\\\\\\\";\\n    }\\n  }\\n  attributePresenceCheckLine() {\\n    if (this._attributeNames) {\\n      const varNames = [];\\n      for (let attribName of this._attributeNames) {\\n        const varName = AttributeRequirementsController._varAttribute(attribName);\\n        varNames.push(varName);\\n      }\\n      if (varNames.length > 0) {\\n        return varNames.join(\\\\\\\" && \\\\\\\");\\n      }\\n    }\\n    return \\\\\\\"true\\\\\\\";\\n  }\\n  add(attribName) {\\n    this._attributeNames = this._attributeNames || new Set();\\n    this._attributeNames.add(attribName);\\n  }\\n  static assignAttributeLine(attribName) {\\n    const varAttribute = this._varAttribute(attribName);\\n    return `const ${varAttribute} = entities[0].geometry().attributes['${attribName}']`;\\n  }\\n  static assignItemSizeLine(attribName) {\\n    const varAttribute = this._varAttribute(attribName);\\n    const varAttributeSize = this._varAttribSize(attribName);\\n    return `const ${varAttributeSize} = ${varAttribute}.itemSize`;\\n  }\\n  static assignArrayLine(attribName) {\\n    const varAttribute = this._varAttribute(attribName);\\n    const varArray = this._varArray(attribName);\\n    const isIndexedCondition = `${VAR_CORE_GEOMETRY}.isAttribIndexed('${attribName}')`;\\n    const indexedArray = `entities.map(e=>e.indexedAttribValue('${attribName}'))`;\\n    const nonIndexedArray = `${varAttribute}.array`;\\n    return `const ${varArray} = ${isIndexedCondition} ? ${indexedArray} : ${nonIndexedArray}`;\\n  }\\n  static _varAttribute(attribName) {\\n    return `attrib_${attribName}`;\\n  }\\n  static _varAttribSize(attribName) {\\n    return `attrib_size_${attribName}`;\\n  }\\n  static _varArray(attribName) {\\n    return `array_${attribName}`;\\n  }\\n  varAttributeSize(attribName) {\\n    return AttributeRequirementsController._varAttribSize(attribName);\\n  }\\n  varArray(attribName) {\\n    return AttributeRequirementsController._varArray(attribName);\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/expressions/traversers/FunctionGenerator.ts\\nvar NATIVE_MATH_METHODS = [\\n  \\\\\\\"abs\\\\\\\",\\n  \\\\\\\"acos\\\\\\\",\\n  \\\\\\\"acosh\\\\\\\",\\n  \\\\\\\"asin\\\\\\\",\\n  \\\\\\\"asinh\\\\\\\",\\n  \\\\\\\"atan\\\\\\\",\\n  \\\\\\\"atan2\\\\\\\",\\n  \\\\\\\"atanh\\\\\\\",\\n  \\\\\\\"ceil\\\\\\\",\\n  \\\\\\\"cos\\\\\\\",\\n  \\\\\\\"cosh\\\\\\\",\\n  \\\\\\\"exp\\\\\\\",\\n  \\\\\\\"expm1\\\\\\\",\\n  \\\\\\\"floor\\\\\\\",\\n  \\\\\\\"log\\\\\\\",\\n  \\\\\\\"log1p\\\\\\\",\\n  \\\\\\\"log2\\\\\\\",\\n  \\\\\\\"log10\\\\\\\",\\n  \\\\\\\"max\\\\\\\",\\n  \\\\\\\"min\\\\\\\",\\n  \\\\\\\"pow\\\\\\\",\\n  \\\\\\\"round\\\\\\\",\\n  \\\\\\\"sign\\\\\\\",\\n  \\\\\\\"sin\\\\\\\",\\n  \\\\\\\"sinh\\\\\\\",\\n  \\\\\\\"sqrt\\\\\\\",\\n  \\\\\\\"tan\\\\\\\",\\n  \\\\\\\"tanh\\\\\\\"\\n];\\nvar NATIVE_ES6_MATH_METHODS = [\\\\\\\"cbrt\\\\\\\", \\\\\\\"hypot\\\\\\\", \\\\\\\"log10\\\\\\\", \\\\\\\"trunc\\\\\\\"];\\nvar NATIVE_MATH_METHODS_RENAMED = {\\n  math_random: \\\\\\\"random\\\\\\\"\\n};\\nvar CORE_MATH_METHODS = [\\\\\\\"fit\\\\\\\", \\\\\\\"fit01\\\\\\\", \\\\\\\"fract\\\\\\\", \\\\\\\"deg2rad\\\\\\\", \\\\\\\"rad2deg\\\\\\\", \\\\\\\"rand\\\\\\\", \\\\\\\"clamp\\\\\\\"];\\nvar EASING_METHODS = Object.keys(Easing);\\nvar CORE_STRING_METHODS = [\\\\\\\"precision\\\\\\\"];\\nvar NATIVE_MATH_CONSTANTS = [\\\\\\\"E\\\\\\\", \\\\\\\"LN2\\\\\\\", \\\\\\\"LN10\\\\\\\", \\\\\\\"LOG10E\\\\\\\", \\\\\\\"LOG2E\\\\\\\", \\\\\\\"PI\\\\\\\", \\\\\\\"SQRT1_2\\\\\\\", \\\\\\\"SQRT2\\\\\\\"];\\nvar DIRECT_EXPRESSION_FUNCTIONS = {};\\nNATIVE_MATH_METHODS.forEach((name) => {\\n  DIRECT_EXPRESSION_FUNCTIONS[name] = `Math.${name}`;\\n});\\nNATIVE_ES6_MATH_METHODS.forEach((name) => {\\n  DIRECT_EXPRESSION_FUNCTIONS[name] = `Math.${name}`;\\n});\\nObject.keys(NATIVE_MATH_METHODS_RENAMED).forEach((name) => {\\n  const remaped = NATIVE_MATH_METHODS_RENAMED[name];\\n  DIRECT_EXPRESSION_FUNCTIONS[name] = `Math.${remaped}`;\\n});\\nCORE_MATH_METHODS.forEach((name) => {\\n  DIRECT_EXPRESSION_FUNCTIONS[name] = `Core.Math.${name}`;\\n});\\nEASING_METHODS.forEach((name) => {\\n  DIRECT_EXPRESSION_FUNCTIONS[name] = `Core.Math.Easing.${name}`;\\n});\\nCORE_STRING_METHODS.forEach((name) => {\\n  DIRECT_EXPRESSION_FUNCTIONS[name] = `Core.String.${name}`;\\n});\\nvar LITERAL_CONSTRUCT = {\\n  if: LiteralConstructsController.if\\n};\\nvar GLOBAL_CONSTANTS = {};\\nNATIVE_MATH_CONSTANTS.forEach((name) => {\\n  GLOBAL_CONSTANTS[name] = `Math.${name}`;\\n});\\nvar QUOTE = \\\\\\\"'\\\\\\\";\\nvar ARGUMENTS_SEPARATOR = \\\\\\\", \\\\\\\";\\nvar ATTRIBUTE_PREFIX = \\\\\\\"@\\\\\\\";\\nvar PROPERTY_OFFSETS = {\\n  x: 0,\\n  y: 1,\\n  z: 2,\\n  w: 3,\\n  r: 0,\\n  g: 1,\\n  b: 2\\n};\\nvar FunctionGenerator = class extends BaseTraverser {\\n  constructor(param) {\\n    super(param);\\n    this.param = param;\\n    this._attribute_requirements_controller = new AttributeRequirementsController();\\n    this.methods = [];\\n    this.method_index = -1;\\n    this.method_dependencies = [];\\n    this.immutable_dependencies = [];\\n  }\\n  parse_tree(parsed_tree) {\\n    this.reset();\\n    if (parsed_tree.error_message == null) {\\n      try {\\n        this._attribute_requirements_controller = new AttributeRequirementsController();\\n        if (parsed_tree.node) {\\n          const function_main_string = this.traverse_node(parsed_tree.node);\\n          if (function_main_string && !this.is_errored()) {\\n            this.function_main_string = function_main_string;\\n          }\\n        } else {\\n          console.warn(\\\\\\\"no parsed_tree.node\\\\\\\");\\n        }\\n      } catch (e) {\\n        console.warn(`error in expression for param ${this.param.path()}`);\\n        console.warn(e);\\n      }\\n      if (this.function_main_string) {\\n        try {\\n          const body = this._functionBody();\\n          this.function = new Function(\\\\\\\"Core\\\\\\\", \\\\\\\"param\\\\\\\", \\\\\\\"methods\\\\\\\", \\\\\\\"_set_error_from_error\\\\\\\", `\\n\\t\\t\\t\\t\\ttry {\\n\\t\\t\\t\\t\\t\\t${body}\\n\\t\\t\\t\\t\\t} catch(e) {\\n\\t\\t\\t\\t\\t\\t_set_error_from_error(e)\\n\\t\\t\\t\\t\\t\\treturn null;\\n\\t\\t\\t\\t\\t}`);\\n        } catch (e) {\\n          console.warn(e);\\n          this.set_error(\\\\\\\"cannot generate function\\\\\\\");\\n        }\\n      } else {\\n        this.set_error(\\\\\\\"cannot generate function body\\\\\\\");\\n      }\\n    } else {\\n      this.set_error(\\\\\\\"cannot parse expression\\\\\\\");\\n    }\\n  }\\n  reset() {\\n    super.reset();\\n    this.function_main_string = void 0;\\n    this.methods = [];\\n    this.method_index = -1;\\n    this.function = void 0;\\n    this.method_dependencies = [];\\n    this.immutable_dependencies = [];\\n  }\\n  _functionBody() {\\n    if (this.param.options.isExpressionForEntities()) {\\n      return `\\n\\t\\t\\tconst entities = param.expressionController.entities();\\n\\t\\t\\tif(entities){\\n\\t\\t\\t\\treturn new Promise( async (resolve, reject)=>{\\n\\t\\t\\t\\t\\tlet entity;\\n\\t\\t\\t\\t\\tconst entity_callback = param.expressionController.entity_callback();\\n\\t\\t\\t\\t\\t// assign_attributes_lines\\n\\t\\t\\t\\t\\t${this._attribute_requirements_controller.assignAttributesLines()}\\n\\t\\t\\t\\t\\t// check if attributes are present\\n\\t\\t\\t\\t\\tif( ${this._attribute_requirements_controller.attributePresenceCheckLine()} ){\\n\\t\\t\\t\\t\\t\\t// assign_arrays_lines\\n\\t\\t\\t\\t\\t\\t${this._attribute_requirements_controller.assignArraysLines()}\\n\\t\\t\\t\\t\\t\\tfor(let index=0; index < entities.length; index++){\\n\\t\\t\\t\\t\\t\\t\\tentity = entities[index];\\n\\t\\t\\t\\t\\t\\t\\tresult = ${this.function_main_string};\\n\\t\\t\\t\\t\\t\\t\\tentity_callback(entity, result);\\n\\t\\t\\t\\t\\t\\t}\\n\\t\\t\\t\\t\\t\\tresolve()\\n\\t\\t\\t\\t\\t} else {\\n\\t\\t\\t\\t\\t\\tconst error = new Error('attribute not found')\\n\\t\\t\\t\\t\\t\\t_set_error_from_error(error)\\n\\t\\t\\t\\t\\t\\treject(error)\\n\\t\\t\\t\\t\\t}\\n\\t\\t\\t\\t})\\n\\t\\t\\t}\\n\\t\\t\\treturn []`;\\n    } else {\\n      return `\\n\\t\\t\\treturn new Promise( async (resolve, reject)=>{\\n\\t\\t\\t\\ttry {\\n\\t\\t\\t\\t\\tconst value = ${this.function_main_string}\\n\\t\\t\\t\\t\\tresolve(value)\\n\\t\\t\\t\\t} catch(e) {\\n\\t\\t\\t\\t\\t_set_error_from_error(e)\\n\\t\\t\\t\\t\\treject()\\n\\t\\t\\t\\t}\\n\\t\\t\\t})\\n\\t\\t\\t`;\\n    }\\n  }\\n  evalAllowed() {\\n    return this.function != null;\\n  }\\n  evalFunction() {\\n    if (this.function) {\\n      this.clear_error();\\n      const Core = {\\n        Math: CoreMath,\\n        String: CoreString\\n      };\\n      const result = this.function(Core, this.param, this.methods, this._set_error_from_error_bound);\\n      return result;\\n    }\\n  }\\n  traverse_CallExpression(node) {\\n    const method_arguments = node.arguments.map((arg) => {\\n      return this.traverse_node(arg);\\n    });\\n    const callee = node.callee;\\n    const method_name = callee.name;\\n    if (method_name) {\\n      const literal_contruct = LITERAL_CONSTRUCT[method_name];\\n      if (literal_contruct) {\\n        return literal_contruct(method_arguments);\\n      }\\n      const arguments_joined = `${method_arguments.join(ARGUMENTS_SEPARATOR)}`;\\n      const direct_function_name = DIRECT_EXPRESSION_FUNCTIONS[method_name];\\n      if (direct_function_name) {\\n        return `${direct_function_name}(${arguments_joined})`;\\n      }\\n      const expressionRegister = Poly.expressionsRegister;\\n      const indirect_method = expressionRegister.getMethod(method_name);\\n      if (indirect_method) {\\n        const path_node = node.arguments[0];\\n        const function_string = `return ${method_arguments[0]}`;\\n        let path_argument_function;\\n        let path_argument = [];\\n        try {\\n          path_argument_function = new Function(function_string);\\n          path_argument = path_argument_function();\\n        } catch {\\n        }\\n        this._create_method_and_dependencies(method_name, path_argument, path_node);\\n        return `(await methods[${this.method_index}].processArguments([${arguments_joined}]))`;\\n      } else {\\n        const available_methods = expressionRegister.availableMethods().join(\\\\\\\", \\\\\\\");\\n        const message = `method not found (${method_name}), available methods are: ${available_methods}`;\\n        Poly.warn(message);\\n      }\\n    }\\n    this.set_error(`unknown method: ${method_name}`);\\n  }\\n  traverse_BinaryExpression(node) {\\n    return `(${this.traverse_node(node.left)} ${node.operator} ${this.traverse_node(node.right)})`;\\n  }\\n  traverse_LogicalExpression(node) {\\n    return `(${this.traverse_node(node.left)} ${node.operator} ${this.traverse_node(node.right)})`;\\n  }\\n  traverse_MemberExpression(node) {\\n    return `${this.traverse_node(node.object)}.${this.traverse_node(node.property)}`;\\n  }\\n  traverse_UnaryExpression(node) {\\n    if (node.operator === ATTRIBUTE_PREFIX) {\\n      let argument = node.argument;\\n      let attribute_name;\\n      let property;\\n      switch (argument.type) {\\n        case \\\\\\\"Identifier\\\\\\\": {\\n          const argument_identifier = argument;\\n          attribute_name = argument_identifier.name;\\n          break;\\n        }\\n        case \\\\\\\"MemberExpression\\\\\\\": {\\n          const argument_member_expression = argument;\\n          const attrib_node = argument_member_expression.object;\\n          const property_node = argument_member_expression.property;\\n          attribute_name = attrib_node.name;\\n          property = property_node.name;\\n          break;\\n        }\\n      }\\n      if (attribute_name) {\\n        attribute_name = CoreAttribute.remapName(attribute_name);\\n        if (attribute_name == \\\\\\\"ptnum\\\\\\\") {\\n          return \\\\\\\"((entity != null) ? entity.index() : 0)\\\\\\\";\\n        } else {\\n          const var_attribute_size = this._attribute_requirements_controller.varAttributeSize(attribute_name);\\n          const var_array = this._attribute_requirements_controller.varArray(attribute_name);\\n          this._attribute_requirements_controller.add(attribute_name);\\n          if (property) {\\n            const property_offset = PROPERTY_OFFSETS[property];\\n            return `${var_array}[entity.index()*${var_attribute_size}+${property_offset}]`;\\n          } else {\\n            return `${var_array}[entity.index()*${var_attribute_size}]`;\\n          }\\n        }\\n      } else {\\n        console.warn(\\\\\\\"attribute not found\\\\\\\");\\n        return \\\\\\\"\\\\\\\";\\n      }\\n    } else {\\n      return `${node.operator}${this.traverse_node(node.argument)}`;\\n    }\\n  }\\n  traverse_Literal(node) {\\n    return `${node.raw}`;\\n  }\\n  traverse_Identifier(node) {\\n    const identifier_first_char = node.name[0];\\n    if (identifier_first_char == VARIABLE_PREFIX) {\\n      const identifier_name_without_dollar_sign = node.name.substr(1);\\n      const direct_constant_name = GLOBAL_CONSTANTS[identifier_name_without_dollar_sign];\\n      if (direct_constant_name) {\\n        return direct_constant_name;\\n      }\\n      const method_name = `traverse_Identifier_${identifier_name_without_dollar_sign}`;\\n      const method = this[method_name];\\n      if (method) {\\n        return this[method_name]();\\n      } else {\\n        this.set_error(`identifier unknown: ${node.name}`);\\n      }\\n    } else {\\n      return node.name;\\n    }\\n  }\\n  traverse_Identifier_F() {\\n    this.immutable_dependencies.push(this.param.scene().timeController.graphNode);\\n    return `param.scene().timeController.frame()`;\\n  }\\n  traverse_Identifier_T() {\\n    this.immutable_dependencies.push(this.param.scene().timeController.graphNode);\\n    return `param.scene().timeController.time()`;\\n  }\\n  traverse_Identifier_OS() {\\n    return `${QUOTE}${this.param.node.name()}${QUOTE}`;\\n  }\\n  traverse_Identifier_CH() {\\n    return `${QUOTE}${this.param.name()}${QUOTE}`;\\n  }\\n  traverse_Identifier_CEX() {\\n    return this._method_centroid(\\\\\\\"x\\\\\\\");\\n  }\\n  traverse_Identifier_CEY() {\\n    return this._method_centroid(\\\\\\\"y\\\\\\\");\\n  }\\n  traverse_Identifier_CEZ() {\\n    return this._method_centroid(\\\\\\\"z\\\\\\\");\\n  }\\n  _method_centroid(component) {\\n    const method_arguments = [0, `${QUOTE}${component}${QUOTE}`];\\n    const arguments_joined = method_arguments.join(ARGUMENTS_SEPARATOR);\\n    this._create_method_and_dependencies(\\\\\\\"centroid\\\\\\\", 0);\\n    return `(await methods[${this.method_index}].processArguments([${arguments_joined}]))`;\\n  }\\n  _create_method_and_dependencies(method_name, path_argument, path_node) {\\n    const expressionRegister = Poly.expressionsRegister;\\n    const method_constructor = expressionRegister.getMethod(method_name);\\n    if (!method_constructor) {\\n      const available_methods = expressionRegister.availableMethods();\\n      const message = `method not found (${method_name}), available methods are: ${available_methods.join(\\\\\\\", \\\\\\\")}`;\\n      this.set_error(message);\\n      Poly.warn(message);\\n      return;\\n    }\\n    const method = new method_constructor(this.param);\\n    this.method_index += 1;\\n    this.methods[this.method_index] = method;\\n    if (method.require_dependency()) {\\n      const method_dependency = method.findDependency(path_argument);\\n      if (method_dependency) {\\n        if (path_node) {\\n          method_dependency.set_jsep_node(path_node);\\n        }\\n        this.method_dependencies.push(method_dependency);\\n      } else {\\n        if (path_node && CoreType.isString(path_argument)) {\\n          this.param.scene().missingExpressionReferencesController.register(this.param, path_argument);\\n        }\\n      }\\n    }\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/expressions/traversers/ExpressionStringGenerator.ts\\nvar ARGUMENTS_SEPARATOR2 = \\\\\\\", \\\\\\\";\\nvar ExpressionStringGenerator = class extends BaseTraverser {\\n  constructor(param) {\\n    super(param);\\n    this.param = param;\\n  }\\n  parse_tree(parsed_tree) {\\n    if (parsed_tree.error_message == null && parsed_tree.node) {\\n      try {\\n        return this.traverse_node(parsed_tree.node);\\n      } catch (e) {\\n        this.set_error(\\\\\\\"could not traverse tree\\\\\\\");\\n      }\\n    } else {\\n      this.set_error(\\\\\\\"cannot parse tree\\\\\\\");\\n    }\\n  }\\n  traverse_CallExpression(node) {\\n    const method_arguments = node.arguments.map((arg) => {\\n      return this.traverse_node(arg);\\n    });\\n    const arguments_joined = `${method_arguments.join(ARGUMENTS_SEPARATOR2)}`;\\n    const method_name = node.callee.name;\\n    return `${method_name}(${arguments_joined})`;\\n  }\\n  traverse_UnaryExpression(node) {\\n    return `${node.operator}${this.traverse_node(node.argument)}`;\\n  }\\n  traverse_Identifier(node) {\\n    return `${node.name}`;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/expressions/DependenciesController.ts\\nvar DependenciesController = class {\\n  constructor(param) {\\n    this.param = param;\\n    this.cyclic_graph_detected = false;\\n    this.method_dependencies = [];\\n  }\\n  set_error(message) {\\n    this.error_message = this.error_message || message;\\n  }\\n  reset() {\\n    this.param.graphDisconnectPredecessors();\\n    this.method_dependencies.forEach((method_dependency) => {\\n      method_dependency.reset();\\n    });\\n    this.method_dependencies = [];\\n  }\\n  update(function_generator) {\\n    this.cyclic_graph_detected = false;\\n    this.connect_immutable_dependencies(function_generator);\\n    this.method_dependencies = function_generator.method_dependencies;\\n    this.handle_method_dependencies();\\n    this.listen_for_name_changes();\\n  }\\n  connect_immutable_dependencies(function_generator) {\\n    function_generator.immutable_dependencies.forEach((dependency) => {\\n      if (this.cyclic_graph_detected == false) {\\n        if (this.param.addGraphInput(dependency) == false) {\\n          this.cyclic_graph_detected = true;\\n          this.set_error(\\\\\\\"cannot create expression, infinite graph detected\\\\\\\");\\n          this.reset();\\n          return;\\n        }\\n      }\\n    });\\n  }\\n  handle_method_dependencies() {\\n    this.method_dependencies.forEach((method_dependency) => {\\n      if (this.cyclic_graph_detected == false) {\\n        this.handle_method_dependency(method_dependency);\\n      }\\n    });\\n  }\\n  handle_method_dependency(method_dependency) {\\n    const node_simple = method_dependency.resolved_graph_node;\\n    if (node_simple) {\\n      if (!this.param.addGraphInput(node_simple)) {\\n        this.cyclic_graph_detected = true;\\n        this.set_error(\\\\\\\"cannot create expression, infinite graph detected\\\\\\\");\\n        this.reset();\\n        return;\\n      }\\n    }\\n  }\\n  listen_for_name_changes() {\\n    this.method_dependencies.forEach((method_dependency) => {\\n      method_dependency.listen_for_name_changes();\\n    });\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/expressions/ExpressionManager.ts\\nvar ExpressionManager = class {\\n  constructor(param) {\\n    this.param = param;\\n    this.parse_completed = false;\\n    this.parse_started = false;\\n    this.parsed_tree = new ParsedTree();\\n    this._functionGenerator = new FunctionGenerator(this.param);\\n    this.dependencies_controller = new DependenciesController(this.param);\\n  }\\n  parseExpression(expression) {\\n    if (this.parse_started) {\\n      throw new Error(`parse in progress for param ${this.param.path()}`);\\n    }\\n    this.parse_started = true;\\n    this.parse_completed = false;\\n    this.parsed_tree = this.parsed_tree || new ParsedTree();\\n    this.reset();\\n    if (this.param.type() == ParamType.STRING) {\\n      this.parsed_tree.parse_expression_for_string_param(expression);\\n    } else {\\n      this.parsed_tree.parse_expression(expression);\\n    }\\n    this._functionGenerator.parse_tree(this.parsed_tree);\\n    if (this._functionGenerator.error_message() == null) {\\n      this.dependencies_controller.update(this._functionGenerator);\\n      if (this.dependencies_controller.error_message) {\\n        this.param.states.error.set(this.dependencies_controller.error_message);\\n      } else {\\n        this.parse_completed = true;\\n        this.parse_started = false;\\n      }\\n    }\\n  }\\n  async computeFunction() {\\n    if (this._computeAllowed()) {\\n      try {\\n        const new_value = await this._functionGenerator.evalFunction();\\n        return new_value;\\n      } catch (e) {\\n        return;\\n      }\\n    } else {\\n      return new Promise((resolve, reject) => {\\n        resolve(null);\\n      });\\n    }\\n  }\\n  reset() {\\n    this.parse_completed = false;\\n    this.parse_started = false;\\n    this.dependencies_controller.reset();\\n    this._functionGenerator.reset();\\n  }\\n  is_errored() {\\n    return this._functionGenerator.is_errored();\\n  }\\n  error_message() {\\n    return this._functionGenerator.error_message();\\n  }\\n  _computeAllowed() {\\n    return this._functionGenerator.evalAllowed();\\n  }\\n  updateFromMethodDependencyNameChange() {\\n    this.expression_string_generator = this.expression_string_generator || new ExpressionStringGenerator(this.param);\\n    const new_expression_string = this.expression_string_generator.parse_tree(this.parsed_tree);\\n    if (new_expression_string) {\\n      this.param.set(new_expression_string);\\n    } else {\\n      console.warn(\\\\\\\"failed to regenerate expression\\\\\\\");\\n    }\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/params/utils/ExpressionController.ts\\nvar ExpressionController = class {\\n  constructor(param) {\\n    this.param = param;\\n  }\\n  dispose() {\\n    this.param.scene().expressionsController.deregisterParam(this.param);\\n    this._resetMethodDependencies();\\n  }\\n  _resetMethodDependencies() {\\n    this._method_dependencies_by_graph_node_id?.forEach((method_dependency) => {\\n      method_dependency.dispose();\\n    });\\n    this._method_dependencies_by_graph_node_id?.clear();\\n  }\\n  registerMethodDependency(method_dependency) {\\n    this._method_dependencies_by_graph_node_id = this._method_dependencies_by_graph_node_id || new Map();\\n    this._method_dependencies_by_graph_node_id.set(method_dependency.graphNodeId(), method_dependency);\\n  }\\n  active() {\\n    return this._expression != null;\\n  }\\n  expression() {\\n    return this._expression;\\n  }\\n  is_errored() {\\n    if (this._manager) {\\n      return this._manager.is_errored();\\n    }\\n    return false;\\n  }\\n  error_message() {\\n    if (this._manager) {\\n      return this._manager.error_message();\\n    }\\n    return null;\\n  }\\n  requires_entities() {\\n    return this.param.options.isExpressionForEntities();\\n  }\\n  set_expression(expression, set_dirty = true) {\\n    this.param.scene().missingExpressionReferencesController.deregisterParam(this.param);\\n    this.param.scene().expressionsController.deregisterParam(this.param);\\n    if (this._expression != expression) {\\n      this._resetMethodDependencies();\\n      this._expression = expression;\\n      if (this._expression) {\\n        this._manager = this._manager || new ExpressionManager(this.param);\\n        this._manager.parseExpression(this._expression);\\n      } else {\\n        this._manager?.reset();\\n      }\\n      if (set_dirty) {\\n        this.param.setDirty();\\n      }\\n    }\\n  }\\n  updateFromMethodDependencyNameChange() {\\n    if (this._manager && this.active()) {\\n      this._manager.updateFromMethodDependencyNameChange();\\n    }\\n  }\\n  async computeExpression() {\\n    if (this._manager && this.active()) {\\n      const result = await this._manager.computeFunction();\\n      return result;\\n    }\\n  }\\n  async computeExpressionForEntities(entities, callback) {\\n    this.set_entities(entities, callback);\\n    await this.computeExpression();\\n    if (this._manager?.error_message()) {\\n      this.param.node.states.error.set(`expression evalution error: ${this._manager?.error_message()}`);\\n    }\\n    this.reset_entities();\\n  }\\n  computeExpressionForPoints(entities, callback) {\\n    return this.computeExpressionForEntities(entities, callback);\\n  }\\n  computeExpressionForObjects(entities, callback) {\\n    return this.computeExpressionForEntities(entities, callback);\\n  }\\n  entities() {\\n    return this._entities;\\n  }\\n  entity_callback() {\\n    return this._entity_callback;\\n  }\\n  set_entities(entities, callback) {\\n    this._entities = entities;\\n    this._entity_callback = callback;\\n  }\\n  reset_entities() {\\n    this._entities = void 0;\\n    this._entity_callback = void 0;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/params/_Numeric.ts\\nvar TypedNumericParam = class extends TypedParam {\\n  isNumeric() {\\n    return true;\\n  }\\n  isDefault() {\\n    return this._raw_input == this._default_value;\\n  }\\n  _prefilter_invalid_raw_input(raw_input) {\\n    if (CoreType.isArray(raw_input)) {\\n      return raw_input[0];\\n    } else {\\n      return raw_input;\\n    }\\n  }\\n  processRawInput() {\\n    this.states.error.clear();\\n    const converted = this.convert(this._raw_input);\\n    if (converted != null) {\\n      if (this._expression_controller) {\\n        this._expression_controller.set_expression(void 0, false);\\n        this.emitController.emit(ParamEvent.EXPRESSION_UPDATED);\\n      }\\n      if (converted != this._value) {\\n        this._update_value(converted);\\n        this.setSuccessorsDirty(this);\\n      }\\n    } else {\\n      if (CoreType.isString(this._raw_input)) {\\n        this._expression_controller = this._expression_controller || new ExpressionController(this);\\n        if (this._raw_input != this._expression_controller.expression()) {\\n          this._expression_controller.set_expression(this._raw_input);\\n          this.emitController.emit(ParamEvent.EXPRESSION_UPDATED);\\n        }\\n      } else {\\n        this.states.error.set(`param input is invalid (${this.path()})`);\\n      }\\n    }\\n  }\\n  async processComputation() {\\n    if (this.expressionController?.active() && !this.expressionController.requires_entities()) {\\n      const expression_result = await this.expressionController.computeExpression();\\n      if (this.expressionController.is_errored()) {\\n        this.states.error.set(`expression error: \\\\\\\"${this.expressionController.expression()}\\\\\\\" (${this.expressionController.error_message()})`);\\n      } else {\\n        const converted = this.convert(expression_result);\\n        if (converted != null) {\\n          if (this.states.error.active()) {\\n            this.states.error.clear();\\n          }\\n          this._update_value(converted);\\n        } else {\\n          this.states.error.set(`expression returns an invalid type (${expression_result}) (${this.expressionController.expression()})`);\\n        }\\n      }\\n    }\\n  }\\n  _update_value(new_value) {\\n    this._value = new_value;\\n    if (this.parent_param) {\\n      this.parent_param.set_value_from_components();\\n    }\\n    this.options.executeCallback();\\n    this.emitController.emit(ParamEvent.VALUE_UPDATED);\\n    this.removeDirtyState();\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/params/Boolean.ts\\nvar BooleanParam = class extends TypedNumericParam {\\n  static type() {\\n    return ParamType.BOOLEAN;\\n  }\\n  defaultValueSerialized() {\\n    if (CoreType.isString(this._default_value)) {\\n      return this._default_value;\\n    } else {\\n      return this.convert(this._default_value) || false;\\n    }\\n  }\\n  rawInputSerialized() {\\n    return this._raw_input;\\n  }\\n  valueSerialized() {\\n    return this.value;\\n  }\\n  _copy_value(param) {\\n    this.set(param.value);\\n  }\\n  static are_raw_input_equal(raw_input1, raw_input2) {\\n    return raw_input1 == raw_input2;\\n  }\\n  static are_values_equal(val1, val2) {\\n    return val1 == val2;\\n  }\\n  convert(raw_val) {\\n    if (CoreType.isBoolean(raw_val)) {\\n      return raw_val;\\n    } else {\\n      if (CoreType.isNumber(raw_val)) {\\n        return raw_val >= 1;\\n      } else {\\n        if (CoreType.isString(raw_val)) {\\n          if (CoreString.isBoolean(raw_val)) {\\n            return CoreString.toBoolean(raw_val);\\n          } else {\\n            if (CoreString.isNumber(raw_val)) {\\n              const parsed = parseFloat(raw_val);\\n              return parsed >= 1;\\n            }\\n          }\\n        }\\n      }\\n    }\\n    return null;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/params/Button.ts\\nvar ButtonParam = class extends TypedParam {\\n  static type() {\\n    return ParamType.BUTTON;\\n  }\\n  defaultValueSerialized() {\\n    return this._default_value;\\n  }\\n  rawInputSerialized() {\\n    return this._raw_input;\\n  }\\n  valueSerialized() {\\n    return this.value;\\n  }\\n  _copy_value(param) {\\n  }\\n  static are_raw_input_equal(raw_input1, raw_input2) {\\n    return true;\\n  }\\n  static are_values_equal(val1, val2) {\\n    return true;\\n  }\\n  async pressButton() {\\n    if (this.node.isDirty() || this.node.cookController.isCooking()) {\\n      await this.node.compute();\\n    }\\n    this.options.executeCallback();\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/params/Float.ts\\nvar FloatParam = class extends TypedNumericParam {\\n  static type() {\\n    return ParamType.FLOAT;\\n  }\\n  defaultValueSerialized() {\\n    return this._default_value;\\n  }\\n  rawInputSerialized() {\\n    return this._raw_input;\\n  }\\n  valueSerialized() {\\n    return this.value;\\n  }\\n  _copy_value(param) {\\n    this.set(param.valueSerialized());\\n  }\\n  _prefilter_invalid_raw_input(raw_input) {\\n    if (CoreType.isArray(raw_input)) {\\n      return raw_input[0];\\n    }\\n    if (CoreType.isString(raw_input) && CoreString.isNumber(raw_input)) {\\n      return parseFloat(raw_input);\\n    }\\n    return raw_input;\\n  }\\n  static are_raw_input_equal(raw_input1, raw_input2) {\\n    return raw_input1 == raw_input2;\\n  }\\n  static are_values_equal(val1, val2) {\\n    return val1 == val2;\\n  }\\n  static convert(raw_val) {\\n    if (CoreType.isNumber(raw_val)) {\\n      return raw_val;\\n    } else {\\n      if (CoreType.isBoolean(raw_val)) {\\n        return raw_val ? 1 : 0;\\n      } else {\\n        if (CoreString.isNumber(raw_val)) {\\n          const parsed = parseFloat(raw_val);\\n          if (CoreType.isNumber(parsed)) {\\n            return parsed;\\n          }\\n        }\\n      }\\n      return null;\\n    }\\n  }\\n  convert(raw_val) {\\n    const result = FloatParam.convert(raw_val);\\n    if (result) {\\n      return this.options.ensureInRange(result);\\n    } else {\\n      return result;\\n    }\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/params/_Multiple.ts\\nvar TypedMultipleParam = class extends TypedParam {\\n  constructor() {\\n    super(...arguments);\\n    this._components_contructor = FloatParam;\\n  }\\n  get components() {\\n    return this._components;\\n  }\\n  isNumeric() {\\n    return true;\\n  }\\n  isDefault() {\\n    for (let c of this.components) {\\n      if (!c.isDefault()) {\\n        return false;\\n      }\\n    }\\n    return true;\\n  }\\n  rawInput() {\\n    return this._components.map((c) => c.rawInput());\\n  }\\n  rawInputSerialized() {\\n    return this._components.map((c) => c.rawInputSerialized());\\n  }\\n  _copy_value(param) {\\n    for (let i = 0; i < this.components.length; i++) {\\n      const component = this.components[i];\\n      const src_component = param.components[i];\\n      component.copy_value(src_component);\\n    }\\n  }\\n  initComponents() {\\n    if (this._components != null) {\\n      return;\\n    }\\n    let index = 0;\\n    this._components = new Array(this.componentNames().length);\\n    for (let component_name of this.componentNames()) {\\n      const component = new this._components_contructor(this.scene(), this._node);\\n      let default_val;\\n      if (CoreType.isArray(this._default_value)) {\\n        default_val = this._default_value[index];\\n      } else {\\n        default_val = this._default_value[component_name];\\n      }\\n      component.options.copy(this.options);\\n      component.setInitValue(default_val);\\n      component.setName(`${this.name()}${component_name}`);\\n      component.set_parent_param(this);\\n      this._components[index] = component;\\n      index++;\\n    }\\n  }\\n  async processComputation() {\\n    await this.compute_components();\\n    this.set_value_from_components();\\n  }\\n  set_value_from_components() {\\n  }\\n  hasExpression() {\\n    for (let c of this.components) {\\n      if (c.expressionController?.active()) {\\n        return true;\\n      }\\n    }\\n    return false;\\n  }\\n  async compute_components() {\\n    const components = this.components;\\n    const promises = [];\\n    for (let c of components) {\\n      if (c.isDirty()) {\\n        promises.push(c.compute());\\n      }\\n    }\\n    await Promise.all(promises);\\n    this.removeDirtyState();\\n  }\\n  _prefilter_invalid_raw_input(raw_input) {\\n    if (!CoreType.isArray(raw_input)) {\\n      const number_or_string = raw_input;\\n      const raw_input_wrapped_in_array = this.componentNames().map(() => number_or_string);\\n      return raw_input_wrapped_in_array;\\n    } else {\\n      return raw_input;\\n    }\\n  }\\n  processRawInput() {\\n    const cooker = this.scene().cooker;\\n    cooker.block();\\n    const components = this.components;\\n    for (let c of components) {\\n      c.emitController.blockParentEmit();\\n    }\\n    const value = this._raw_input;\\n    let prev_value = 0;\\n    if (CoreType.isArray(value)) {\\n      for (let i = 0; i < components.length; i++) {\\n        let component_value = value[i];\\n        if (component_value == null) {\\n          component_value = prev_value;\\n        }\\n        components[i].set(component_value);\\n        prev_value = component_value;\\n      }\\n    } else {\\n      for (let i = 0; i < components.length; i++) {\\n        const component_name = this.componentNames()[i];\\n        let component_value = value[component_name];\\n        if (component_value == null) {\\n          component_value = prev_value;\\n        }\\n        components[i].set(component_value);\\n        prev_value = component_value;\\n      }\\n    }\\n    cooker.unblock();\\n    for (let i = 0; i < components.length; i++) {\\n      components[i].emitController.unblockParentEmit();\\n    }\\n    this.emitController.emit(ParamEvent.VALUE_UPDATED);\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/core/Color.ts\\nvar ColorConversion;\\n(function(ColorConversion2) {\\n  ColorConversion2[\\\\\\\"NONE\\\\\\\"] = \\\\\\\"no conversion\\\\\\\";\\n  ColorConversion2[\\\\\\\"GAMMA_TO_LINEAR\\\\\\\"] = \\\\\\\"gamma -> linear\\\\\\\";\\n  ColorConversion2[\\\\\\\"LINEAR_TO_GAMMA\\\\\\\"] = \\\\\\\"linear -> gamma\\\\\\\";\\n  ColorConversion2[\\\\\\\"SRGB_TO_LINEAR\\\\\\\"] = \\\\\\\"sRGB -> linear\\\\\\\";\\n  ColorConversion2[\\\\\\\"LINEAR_TO_SRGB\\\\\\\"] = \\\\\\\"linear -> sRGB\\\\\\\";\\n})(ColorConversion || (ColorConversion = {}));\\nvar COLOR_CONVERSIONS = [\\n  ColorConversion.NONE,\\n  ColorConversion.GAMMA_TO_LINEAR,\\n  ColorConversion.LINEAR_TO_GAMMA,\\n  ColorConversion.SRGB_TO_LINEAR,\\n  ColorConversion.LINEAR_TO_SRGB\\n];\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/params/Color.ts\\nvar COMPONENT_NAMES_COLOR = [\\\\\\\"r\\\\\\\", \\\\\\\"g\\\\\\\", \\\\\\\"b\\\\\\\"];\\nvar ColorParam = class extends TypedMultipleParam {\\n  constructor() {\\n    super(...arguments);\\n    this._value = new Color();\\n    this._value_pre_conversion = new Color();\\n    this._value_serialized_dirty = false;\\n    this._value_serialized = [0, 0, 0];\\n    this._value_pre_conversion_serialized = [0, 0, 0];\\n    this._copied_value = [0, 0, 0];\\n  }\\n  static type() {\\n    return ParamType.COLOR;\\n  }\\n  componentNames() {\\n    return COMPONENT_NAMES_COLOR;\\n  }\\n  defaultValueSerialized() {\\n    if (CoreType.isArray(this._default_value)) {\\n      return this._default_value;\\n    } else {\\n      return this._default_value.toArray();\\n    }\\n  }\\n  valueSerialized() {\\n    this._update_value_serialized_if_required();\\n    return this._value_serialized;\\n  }\\n  valuePreConversionSerialized() {\\n    this._update_value_serialized_if_required();\\n    return this._value_pre_conversion_serialized;\\n  }\\n  _copy_value(param) {\\n    param.value.toArray(this._copied_value);\\n    this.set(this._copied_value);\\n  }\\n  _clone_raw_input(raw_input) {\\n    if (raw_input instanceof Color) {\\n      return raw_input.clone();\\n    } else {\\n      const new_array = [raw_input[0], raw_input[1], raw_input[2]];\\n      if (new_array[0] == null) {\\n        new_array[0] = new_array[0] || 0;\\n      }\\n      if (new_array[1] == null) {\\n        new_array[1] = new_array[1] || new_array[0];\\n      }\\n      if (new_array[2] == null) {\\n        new_array[2] = new_array[2] || new_array[1];\\n      }\\n      return new_array;\\n    }\\n  }\\n  static are_raw_input_equal(raw_input1, raw_input2) {\\n    if (raw_input1 instanceof Color) {\\n      if (raw_input2 instanceof Color) {\\n        return raw_input1.equals(raw_input2);\\n      } else {\\n        return raw_input1.r == raw_input2[0] && raw_input1.g == raw_input2[1] && raw_input1.b == raw_input2[2];\\n      }\\n    } else {\\n      if (raw_input2 instanceof Color) {\\n        return raw_input1[0] == raw_input2.r && raw_input1[1] == raw_input2.g && raw_input1[2] == raw_input2.b;\\n      } else {\\n        return raw_input1[0] == raw_input2[0] && raw_input1[1] == raw_input2[1] && raw_input1[2] == raw_input2[2];\\n      }\\n    }\\n  }\\n  static are_values_equal(val1, val2) {\\n    return val1.equals(val2);\\n  }\\n  initComponents() {\\n    super.initComponents();\\n    this.r = this.components[0];\\n    this.g = this.components[1];\\n    this.b = this.components[2];\\n    this._value_serialized_dirty = true;\\n  }\\n  _update_value_serialized_if_required() {\\n    if (!this._value_serialized_dirty) {\\n      return;\\n    }\\n    this._value_serialized[0] = this._value.r;\\n    this._value_serialized[1] = this._value.g;\\n    this._value_serialized[2] = this._value.b;\\n    this._value_pre_conversion_serialized[0] = this._value_pre_conversion.r;\\n    this._value_pre_conversion_serialized[1] = this._value_pre_conversion.g;\\n    this._value_pre_conversion_serialized[2] = this._value_pre_conversion.b;\\n  }\\n  valuePreConversion() {\\n    return this._value_pre_conversion;\\n  }\\n  set_value_from_components() {\\n    this._value_pre_conversion.r = this.r.value;\\n    this._value_pre_conversion.g = this.g.value;\\n    this._value_pre_conversion.b = this.b.value;\\n    this._value.copy(this._value_pre_conversion);\\n    const conversion = this.options.colorConversion();\\n    if (conversion != null && conversion != ColorConversion.NONE) {\\n      switch (conversion) {\\n        case ColorConversion.GAMMA_TO_LINEAR: {\\n          this._value.convertGammaToLinear();\\n          return;\\n        }\\n        case ColorConversion.LINEAR_TO_GAMMA: {\\n          this._value.convertLinearToGamma();\\n          return;\\n        }\\n        case ColorConversion.SRGB_TO_LINEAR: {\\n          this._value.convertSRGBToLinear();\\n          return;\\n        }\\n        case ColorConversion.LINEAR_TO_SRGB: {\\n          this._value.convertLinearToSRGB();\\n          return;\\n        }\\n      }\\n      TypeAssert.unreachable(conversion);\\n    }\\n    this._value_serialized_dirty = true;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/params/Folder.ts\\nvar FolderParam = class extends TypedParam {\\n  static type() {\\n    return ParamType.FOLDER;\\n  }\\n  defaultValueSerialized() {\\n    return this._default_value;\\n  }\\n  rawInputSerialized() {\\n    return this._raw_input;\\n  }\\n  valueSerialized() {\\n    return this.value;\\n  }\\n  _copy_value(param) {\\n  }\\n  static are_raw_input_equal(raw_input1, raw_input2) {\\n    return true;\\n  }\\n  static are_values_equal(val1, val2) {\\n    return true;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/params/Integer.ts\\nvar IntegerParam = class extends TypedNumericParam {\\n  static type() {\\n    return ParamType.INTEGER;\\n  }\\n  defaultValueSerialized() {\\n    return this._default_value;\\n  }\\n  rawInputSerialized() {\\n    return this._raw_input;\\n  }\\n  valueSerialized() {\\n    return this.value;\\n  }\\n  _copy_value(param) {\\n    this.set(param.valueSerialized());\\n  }\\n  _prefilter_invalid_raw_input(raw_input) {\\n    if (CoreType.isArray(raw_input)) {\\n      return raw_input[0];\\n    }\\n    if (CoreType.isString(raw_input) && CoreString.isNumber(raw_input)) {\\n      return parseInt(raw_input);\\n    }\\n    return raw_input;\\n  }\\n  static are_raw_input_equal(raw_input1, raw_input2) {\\n    return raw_input1 == raw_input2;\\n  }\\n  static are_values_equal(val1, val2) {\\n    return val1 == val2;\\n  }\\n  static convert(raw_val) {\\n    if (CoreType.isNumber(raw_val)) {\\n      return Math.round(raw_val);\\n    } else {\\n      if (CoreType.isBoolean(raw_val)) {\\n        return raw_val ? 1 : 0;\\n      } else {\\n        if (CoreString.isNumber(raw_val)) {\\n          const parsed = parseInt(raw_val);\\n          if (CoreType.isNumber(parsed)) {\\n            return parsed;\\n          }\\n        }\\n      }\\n      return null;\\n    }\\n  }\\n  convert(raw_val) {\\n    const result = IntegerParam.convert(raw_val);\\n    if (result) {\\n      return this.options.ensureInRange(result);\\n    } else {\\n      return result;\\n    }\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/core/DecomposedPath.ts\\nvar DecomposedPath = class {\\n  constructor() {\\n    this._index = -1;\\n    this._path_elements = [];\\n    this._named_nodes = [];\\n    this._graph_node_ids = [];\\n    this._node_element_by_graph_node_id = new Map();\\n  }\\n  reset() {\\n    this._index = -1;\\n    this._path_elements = [];\\n    this._named_nodes = [];\\n    this._graph_node_ids = [];\\n    this._node_element_by_graph_node_id.clear();\\n  }\\n  add_node(name, node) {\\n    this._index += 1;\\n    if (name == node.name()) {\\n      this._named_nodes[this._index] = node;\\n    }\\n    this._graph_node_ids[this._index] = node.graphNodeId();\\n    this._node_element_by_graph_node_id.set(node.graphNodeId(), name);\\n  }\\n  add_path_element(path_element) {\\n    this._index += 1;\\n    this._path_elements[this._index] = path_element;\\n  }\\n  named_graph_nodes() {\\n    return this._named_nodes;\\n  }\\n  named_nodes() {\\n    const nodes = [];\\n    for (let graph_node of this._named_nodes) {\\n      if (graph_node) {\\n        const node = graph_node;\\n        if (node.nameController) {\\n          nodes.push(node);\\n        }\\n      }\\n    }\\n    return nodes;\\n  }\\n  update_from_name_change(node) {\\n    const named_graph_node_ids = this._named_nodes.map((n) => n?.graphNodeId());\\n    if (named_graph_node_ids.includes(node.graphNodeId())) {\\n      this._node_element_by_graph_node_id.set(node.graphNodeId(), node.name());\\n    }\\n  }\\n  to_path() {\\n    const elements = new Array(this._index);\\n    for (let i = 0; i <= this._index; i++) {\\n      const node = this._named_nodes[i];\\n      if (node) {\\n        const node_name = this._node_element_by_graph_node_id.get(node.graphNodeId());\\n        if (node_name) {\\n          elements[i] = node_name;\\n        }\\n      } else {\\n        const path_element = this._path_elements[i];\\n        if (path_element) {\\n          elements[i] = path_element;\\n        }\\n      }\\n    }\\n    let joined_path = elements.join(CoreWalker.SEPARATOR);\\n    const first_char = joined_path[0];\\n    if (first_char) {\\n      if (!CoreWalker.NON_LETTER_PREFIXES.includes(first_char)) {\\n        joined_path = `${CoreWalker.SEPARATOR}${joined_path}`;\\n      }\\n    }\\n    return joined_path;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/params/_BasePath.ts\\nvar TypedPathParam = class extends TypedParam {\\n  constructor() {\\n    super(...arguments);\\n    this.decomposed_path = new DecomposedPath();\\n  }\\n  _handleReferences(node, path) {\\n    this.scene().referencesController.setNamedNodesFromParam(this);\\n    if (node) {\\n      this.scene().referencesController.setReferenceFromParam(this, node);\\n    } else {\\n      this.scene().missingExpressionReferencesController.register(this, path);\\n    }\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/params/OperatorPath.ts\\nvar OperatorPathMode;\\n(function(OperatorPathMode2) {\\n  OperatorPathMode2[\\\\\\\"NODE\\\\\\\"] = \\\\\\\"NODE\\\\\\\";\\n  OperatorPathMode2[\\\\\\\"PARAM\\\\\\\"] = \\\\\\\"PARAM\\\\\\\";\\n})(OperatorPathMode || (OperatorPathMode = {}));\\nvar OperatorPathParam = class extends TypedPathParam {\\n  constructor() {\\n    super(...arguments);\\n    this._found_node = null;\\n    this._found_node_with_expected_type = null;\\n    this._found_param = null;\\n    this._found_param_with_expected_type = null;\\n  }\\n  static type() {\\n    return ParamType.OPERATOR_PATH;\\n  }\\n  defaultValueSerialized() {\\n    return this._default_value;\\n  }\\n  rawInputSerialized() {\\n    return `${this._raw_input}`;\\n  }\\n  valueSerialized() {\\n    return `${this.value}`;\\n  }\\n  _copy_value(param) {\\n    this.set(param.valueSerialized());\\n  }\\n  static are_raw_input_equal(raw_input1, raw_input2) {\\n    return raw_input1 == raw_input2;\\n  }\\n  static are_values_equal(val1, val2) {\\n    return val1 == val2;\\n  }\\n  isDefault() {\\n    return this._value == this._default_value;\\n  }\\n  setNode(node) {\\n    this.set(node.path());\\n  }\\n  processRawInput() {\\n    if (this._value != this._raw_input) {\\n      this._value = this._raw_input;\\n      this.setDirty();\\n      this.emitController.emit(ParamEvent.VALUE_UPDATED);\\n    }\\n  }\\n  async processComputation() {\\n    this.find_target();\\n  }\\n  find_target() {\\n    if (!this.node) {\\n      return;\\n    }\\n    const path = this._value;\\n    let node = null;\\n    let param = null;\\n    const path_non_empty = path != null && path !== \\\\\\\"\\\\\\\";\\n    const mode = this.options.paramSelectionOptions() ? OperatorPathMode.PARAM : OperatorPathMode.NODE;\\n    this.scene().referencesController.resetReferenceFromParam(this);\\n    this.decomposed_path.reset();\\n    if (path_non_empty) {\\n      if (mode == OperatorPathMode.PARAM) {\\n        param = CoreWalker.findParam(this.node, path, this.decomposed_path);\\n      } else {\\n        node = CoreWalker.findNode(this.node, path, this.decomposed_path);\\n      }\\n    }\\n    const current_found_entity = mode == OperatorPathMode.PARAM ? this._found_param : this._found_node;\\n    const newly_found_entity = mode == OperatorPathMode.PARAM ? param : node;\\n    this._handleReferences(node, path);\\n    if (current_found_entity?.graphNodeId() !== newly_found_entity?.graphNodeId()) {\\n      const dependent_on_found_node = this.options.dependentOnFoundNode();\\n      if (this._found_node) {\\n        if (dependent_on_found_node) {\\n          this.removeGraphInput(this._found_node);\\n        } else {\\n        }\\n      }\\n      if (mode == OperatorPathMode.PARAM) {\\n        this._found_param = param;\\n        this._found_node = null;\\n      } else {\\n        this._found_node = node;\\n        this._found_param = null;\\n      }\\n      if (node) {\\n        this._assign_found_node(node);\\n      }\\n      if (param) {\\n        this._assign_found_param(param);\\n      }\\n      this.options.executeCallback();\\n    }\\n    this.removeDirtyState();\\n  }\\n  _assign_found_node(node) {\\n    const dependent_on_found_node = this.options.dependentOnFoundNode();\\n    if (this._is_node_expected_context(node)) {\\n      if (this._is_node_expected_type(node)) {\\n        this._found_node_with_expected_type = node;\\n        if (dependent_on_found_node) {\\n          this.addGraphInput(node);\\n        }\\n      } else {\\n        this.states.error.set(`node type is ${node.type()} but the params expects one of ${(this._expected_node_types() || []).join(\\\\\\\", \\\\\\\")}`);\\n      }\\n    } else {\\n      this.states.error.set(`node context is ${node.context()} but the params expects a ${this._expected_context()}`);\\n    }\\n  }\\n  _assign_found_param(param) {\\n    if (this._is_param_expected_type(param)) {\\n      this._found_param_with_expected_type = param;\\n    } else {\\n      this.states.error.set(`param type is ${param.type()} but the params expects a ${this._expected_param_type()}`);\\n    }\\n  }\\n  found_node() {\\n    return this._found_node;\\n  }\\n  found_param() {\\n    return this._found_param;\\n  }\\n  found_node_with_context(context) {\\n    return this._found_node_with_expected_type;\\n  }\\n  found_node_with_context_and_type(context, type_or_types) {\\n    const node = this.found_node_with_context(context);\\n    if (node) {\\n      if (CoreType.isArray(type_or_types)) {\\n        for (let type of type_or_types) {\\n          if (node.type() == type) {\\n            return node;\\n          }\\n        }\\n        this.states.error.set(`expected node type to be ${type_or_types.join(\\\\\\\", \\\\\\\")}, but was instead ${node.type()}`);\\n      } else {\\n        const type = type_or_types;\\n        if (node.type() == type) {\\n          return node;\\n        } else {\\n          this.states.error.set(`expected node type to be ${type}, but was instead ${node.type()}`);\\n        }\\n      }\\n    }\\n  }\\n  found_param_with_type(type) {\\n    if (this._found_param_with_expected_type) {\\n      return this._found_param_with_expected_type;\\n    }\\n  }\\n  found_node_with_expected_type() {\\n    return this._found_node_with_expected_type;\\n  }\\n  _expected_context() {\\n    return this.options.nodeSelectionContext();\\n  }\\n  _is_node_expected_context(node) {\\n    const expected_context = this._expected_context();\\n    if (expected_context == null) {\\n      return true;\\n    }\\n    const node_context = node.parent()?.childrenController?.context;\\n    return expected_context == node_context;\\n  }\\n  _expected_node_types() {\\n    return this.options.nodeSelectionTypes();\\n  }\\n  _expected_param_type() {\\n    return this.options.paramSelectionType();\\n  }\\n  _is_node_expected_type(node) {\\n    const expected_types = this._expected_node_types();\\n    if (expected_types == null) {\\n      return true;\\n    }\\n    return expected_types?.includes(node.type());\\n  }\\n  _is_param_expected_type(param) {\\n    const expected_types = this._expected_node_types();\\n    if (expected_types == null) {\\n      return true;\\n    }\\n    return expected_types.includes(param.type());\\n  }\\n  notifyPathRebuildRequired(node) {\\n    this.decomposed_path.update_from_name_change(node);\\n    const new_path = this.decomposed_path.to_path();\\n    this.set(new_path);\\n  }\\n  notifyTargetParamOwnerParamsUpdated(node) {\\n    this.setDirty();\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/params/ParamPath.ts\\nvar ParamPathParam = class extends TypedPathParam {\\n  static type() {\\n    return ParamType.PARAM_PATH;\\n  }\\n  initialize_param() {\\n    this._value = new TypedParamPathParamValue();\\n  }\\n  defaultValueSerialized() {\\n    return this._default_value;\\n  }\\n  rawInputSerialized() {\\n    return `${this._raw_input}`;\\n  }\\n  valueSerialized() {\\n    return `${this.value}`;\\n  }\\n  _copy_value(param) {\\n    this.set(param.valueSerialized());\\n  }\\n  static are_raw_input_equal(raw_input1, raw_input2) {\\n    return raw_input1 == raw_input2;\\n  }\\n  static are_values_equal(val1, val2) {\\n    return val1 == val2;\\n  }\\n  isDefault() {\\n    return this._raw_input == this._default_value;\\n  }\\n  setParam(param) {\\n    this.set(param.path());\\n  }\\n  processRawInput() {\\n    if (this._value.path() != this._raw_input) {\\n      this._value.set_path(this._raw_input);\\n      this.find_target();\\n      this.setDirty();\\n      this.emitController.emit(ParamEvent.VALUE_UPDATED);\\n    }\\n  }\\n  async processComputation() {\\n    this.find_target();\\n  }\\n  find_target() {\\n    if (!this.node) {\\n      return;\\n    }\\n    const path = this._raw_input;\\n    let param = null;\\n    const path_non_empty = path != null && path !== \\\\\\\"\\\\\\\";\\n    this.scene().referencesController.resetReferenceFromParam(this);\\n    this.decomposed_path.reset();\\n    if (path_non_empty) {\\n      param = CoreWalker.findParam(this.node, path, this.decomposed_path);\\n    }\\n    const current_found_entity = this._value.param();\\n    const newly_found_entity = param;\\n    this._handleReferences(param, path);\\n    if (current_found_entity?.graphNodeId() !== newly_found_entity?.graphNodeId()) {\\n      const dependent_on_found_node = this.options.dependentOnFoundNode();\\n      const previously_found_node = this._value.param();\\n      if (previously_found_node) {\\n        if (dependent_on_found_node) {\\n          this.removeGraphInput(previously_found_node);\\n        } else {\\n        }\\n      }\\n      if (param) {\\n        this._assign_found_node(param);\\n      } else {\\n        this._value.set_param(null);\\n      }\\n      this.options.executeCallback();\\n    }\\n    this.removeDirtyState();\\n  }\\n  _assign_found_node(param) {\\n    const dependent_on_found_node = this.options.dependentOnFoundNode();\\n    this._value.set_param(param);\\n    if (dependent_on_found_node) {\\n      this.addGraphInput(param);\\n    }\\n  }\\n  notifyPathRebuildRequired(param) {\\n    this.decomposed_path.update_from_name_change(param);\\n    const new_path = this.decomposed_path.to_path();\\n    this.set(new_path);\\n  }\\n  notifyTargetParamOwnerParamsUpdated(node) {\\n    this.setDirty();\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/params/NodePath.ts\\nvar NodePathParam = class extends TypedPathParam {\\n  static type() {\\n    return ParamType.NODE_PATH;\\n  }\\n  initialize_param() {\\n    this._value = new TypedNodePathParamValue();\\n  }\\n  defaultValueSerialized() {\\n    return this._default_value;\\n  }\\n  rawInputSerialized() {\\n    return `${this._raw_input}`;\\n  }\\n  valueSerialized() {\\n    return `${this.value}`;\\n  }\\n  _copy_value(param) {\\n    this.set(param.valueSerialized());\\n  }\\n  static are_raw_input_equal(raw_input1, raw_input2) {\\n    return raw_input1 == raw_input2;\\n  }\\n  static are_values_equal(val1, val2) {\\n    return val1 == val2;\\n  }\\n  isDefault() {\\n    return this._raw_input == this._default_value;\\n  }\\n  setNode(node) {\\n    this.set(node.path());\\n  }\\n  processRawInput() {\\n    if (this._value.path() != this._raw_input) {\\n      this._value.set_path(this._raw_input);\\n      this._findTarget();\\n      this.setDirty();\\n      this.emitController.emit(ParamEvent.VALUE_UPDATED);\\n    }\\n  }\\n  async processComputation() {\\n    this._findTarget();\\n  }\\n  _findTarget() {\\n    if (!this.node) {\\n      return;\\n    }\\n    const path = this._raw_input;\\n    let node = null;\\n    const path_non_empty = path != null && path !== \\\\\\\"\\\\\\\";\\n    this.scene().referencesController.resetReferenceFromParam(this);\\n    this.decomposed_path.reset();\\n    if (path_non_empty) {\\n      node = CoreWalker.findNode(this.node, path, this.decomposed_path);\\n    }\\n    const current_found_entity = this._value.node();\\n    const newly_found_entity = node;\\n    this._handleReferences(node, path);\\n    if (current_found_entity?.graphNodeId() !== newly_found_entity?.graphNodeId()) {\\n      const dependent_on_found_node = this.options.dependentOnFoundNode();\\n      const previously_found_node = this._value.node();\\n      if (previously_found_node) {\\n        if (dependent_on_found_node) {\\n          this.removeGraphInput(previously_found_node);\\n        } else {\\n        }\\n      }\\n      if (node) {\\n        this._assign_found_node(node);\\n      } else {\\n        this._value.set_node(null);\\n      }\\n      this.options.executeCallback();\\n    }\\n    if (path_non_empty && !node && this.scene().loadingController.loaded()) {\\n      if (path_non_empty) {\\n        this.states.error.set(`no node found at path '${path}'`);\\n      }\\n    }\\n    this.removeDirtyState();\\n  }\\n  _assign_found_node(node) {\\n    const dependent_on_found_node = this.options.dependentOnFoundNode();\\n    if (this._isNodeExpectedContext(node)) {\\n      if (this._is_node_expected_type(node)) {\\n        this.states.error.clear();\\n        this._value.set_node(node);\\n        if (dependent_on_found_node) {\\n          this.addGraphInput(node);\\n        }\\n      } else {\\n        this.states.error.set(`node type is ${node.type()} but the params expects one of ${(this._expected_node_types() || []).join(\\\\\\\", \\\\\\\")}`);\\n      }\\n    } else {\\n      this.states.error.set(`node context is ${node.context()} but the params expects a ${this._expectedContext()}`);\\n    }\\n  }\\n  _expectedContext() {\\n    return this.options.nodeSelectionContext();\\n  }\\n  _isNodeExpectedContext(node) {\\n    const expected_context = this._expectedContext();\\n    if (expected_context == null) {\\n      return true;\\n    }\\n    const node_context = node.parent()?.childrenController?.context;\\n    return expected_context == node_context;\\n  }\\n  _expected_node_types() {\\n    return this.options.nodeSelectionTypes();\\n  }\\n  _is_node_expected_type(node) {\\n    const expected_types = this._expected_node_types();\\n    if (expected_types == null) {\\n      return true;\\n    }\\n    return expected_types?.includes(node.type());\\n  }\\n  notifyPathRebuildRequired(node) {\\n    this.decomposed_path.update_from_name_change(node);\\n    const newPath = this.decomposed_path.to_path();\\n    this.set(newPath);\\n  }\\n  notifyTargetParamOwnerParamsUpdated(node) {\\n    this.setDirty();\\n  }\\n};\\n\\n// ../../../node_modules/three/src/textures/DataTexture.js\\nvar DataTexture = class extends Texture {\\n  constructor(data = null, width = 1, height = 1, format, type, mapping, wrapS, wrapT, magFilter = NearestFilter, minFilter = NearestFilter, anisotropy, encoding) {\\n    super(null, mapping, wrapS, wrapT, magFilter, minFilter, format, type, anisotropy, encoding);\\n    this.image = {data, width, height};\\n    this.magFilter = magFilter;\\n    this.minFilter = minFilter;\\n    this.generateMipmaps = false;\\n    this.flipY = false;\\n    this.unpackAlignment = 1;\\n    this.needsUpdate = true;\\n  }\\n};\\nDataTexture.prototype.isDataTexture = true;\\n\\n// ../../../node_modules/three/src/math/Interpolant.js\\nvar Interpolant = class {\\n  constructor(parameterPositions, sampleValues, sampleSize, resultBuffer) {\\n    this.parameterPositions = parameterPositions;\\n    this._cachedIndex = 0;\\n    this.resultBuffer = resultBuffer !== void 0 ? resultBuffer : new sampleValues.constructor(sampleSize);\\n    this.sampleValues = sampleValues;\\n    this.valueSize = sampleSize;\\n    this.settings = null;\\n    this.DefaultSettings_ = {};\\n  }\\n  evaluate(t) {\\n    const pp = this.parameterPositions;\\n    let i1 = this._cachedIndex, t1 = pp[i1], t0 = pp[i1 - 1];\\n    validate_interval: {\\n      seek: {\\n        let right;\\n        linear_scan: {\\n          forward_scan:\\n            if (!(t < t1)) {\\n              for (let giveUpAt = i1 + 2; ; ) {\\n                if (t1 === void 0) {\\n                  if (t < t0)\\n                    break forward_scan;\\n                  i1 = pp.length;\\n                  this._cachedIndex = i1;\\n                  return this.afterEnd_(i1 - 1, t, t0);\\n                }\\n                if (i1 === giveUpAt)\\n                  break;\\n                t0 = t1;\\n                t1 = pp[++i1];\\n                if (t < t1) {\\n                  break seek;\\n                }\\n              }\\n              right = pp.length;\\n              break linear_scan;\\n            }\\n          if (!(t >= t0)) {\\n            const t1global = pp[1];\\n            if (t < t1global) {\\n              i1 = 2;\\n              t0 = t1global;\\n            }\\n            for (let giveUpAt = i1 - 2; ; ) {\\n              if (t0 === void 0) {\\n                this._cachedIndex = 0;\\n                return this.beforeStart_(0, t, t1);\\n              }\\n              if (i1 === giveUpAt)\\n                break;\\n              t1 = t0;\\n              t0 = pp[--i1 - 1];\\n              if (t >= t0) {\\n                break seek;\\n              }\\n            }\\n            right = i1;\\n            i1 = 0;\\n            break linear_scan;\\n          }\\n          break validate_interval;\\n        }\\n        while (i1 < right) {\\n          const mid = i1 + right >>> 1;\\n          if (t < pp[mid]) {\\n            right = mid;\\n          } else {\\n            i1 = mid + 1;\\n          }\\n        }\\n        t1 = pp[i1];\\n        t0 = pp[i1 - 1];\\n        if (t0 === void 0) {\\n          this._cachedIndex = 0;\\n          return this.beforeStart_(0, t, t1);\\n        }\\n        if (t1 === void 0) {\\n          i1 = pp.length;\\n          this._cachedIndex = i1;\\n          return this.afterEnd_(i1 - 1, t0, t);\\n        }\\n      }\\n      this._cachedIndex = i1;\\n      this.intervalChanged_(i1, t0, t1);\\n    }\\n    return this.interpolate_(i1, t0, t, t1);\\n  }\\n  getSettings_() {\\n    return this.settings || this.DefaultSettings_;\\n  }\\n  copySampleValue_(index) {\\n    const result = this.resultBuffer, values = this.sampleValues, stride = this.valueSize, offset = index * stride;\\n    for (let i = 0; i !== stride; ++i) {\\n      result[i] = values[offset + i];\\n    }\\n    return result;\\n  }\\n  interpolate_() {\\n    throw new Error(\\\\\\\"call to abstract method\\\\\\\");\\n  }\\n  intervalChanged_() {\\n  }\\n};\\nInterpolant.prototype.beforeStart_ = Interpolant.prototype.copySampleValue_;\\nInterpolant.prototype.afterEnd_ = Interpolant.prototype.copySampleValue_;\\n\\n// ../../../node_modules/three/src/math/interpolants/CubicInterpolant.js\\nvar CubicInterpolant = class extends Interpolant {\\n  constructor(parameterPositions, sampleValues, sampleSize, resultBuffer) {\\n    super(parameterPositions, sampleValues, sampleSize, resultBuffer);\\n    this._weightPrev = -0;\\n    this._offsetPrev = -0;\\n    this._weightNext = -0;\\n    this._offsetNext = -0;\\n    this.DefaultSettings_ = {\\n      endingStart: ZeroCurvatureEnding,\\n      endingEnd: ZeroCurvatureEnding\\n    };\\n  }\\n  intervalChanged_(i1, t0, t1) {\\n    const pp = this.parameterPositions;\\n    let iPrev = i1 - 2, iNext = i1 + 1, tPrev = pp[iPrev], tNext = pp[iNext];\\n    if (tPrev === void 0) {\\n      switch (this.getSettings_().endingStart) {\\n        case ZeroSlopeEnding:\\n          iPrev = i1;\\n          tPrev = 2 * t0 - t1;\\n          break;\\n        case WrapAroundEnding:\\n          iPrev = pp.length - 2;\\n          tPrev = t0 + pp[iPrev] - pp[iPrev + 1];\\n          break;\\n        default:\\n          iPrev = i1;\\n          tPrev = t1;\\n      }\\n    }\\n    if (tNext === void 0) {\\n      switch (this.getSettings_().endingEnd) {\\n        case ZeroSlopeEnding:\\n          iNext = i1;\\n          tNext = 2 * t1 - t0;\\n          break;\\n        case WrapAroundEnding:\\n          iNext = 1;\\n          tNext = t1 + pp[1] - pp[0];\\n          break;\\n        default:\\n          iNext = i1 - 1;\\n          tNext = t0;\\n      }\\n    }\\n    const halfDt = (t1 - t0) * 0.5, stride = this.valueSize;\\n    this._weightPrev = halfDt / (t0 - tPrev);\\n    this._weightNext = halfDt / (tNext - t1);\\n    this._offsetPrev = iPrev * stride;\\n    this._offsetNext = iNext * stride;\\n  }\\n  interpolate_(i1, t0, t, t1) {\\n    const result = this.resultBuffer, values = this.sampleValues, stride = this.valueSize, o1 = i1 * stride, o0 = o1 - stride, oP = this._offsetPrev, oN = this._offsetNext, wP = this._weightPrev, wN = this._weightNext, p = (t - t0) / (t1 - t0), pp = p * p, ppp = pp * p;\\n    const sP = -wP * ppp + 2 * wP * pp - wP * p;\\n    const s0 = (1 + wP) * ppp + (-1.5 - 2 * wP) * pp + (-0.5 + wP) * p + 1;\\n    const s1 = (-1 - wN) * ppp + (1.5 + wN) * pp + 0.5 * p;\\n    const sN = wN * ppp - wN * pp;\\n    for (let i = 0; i !== stride; ++i) {\\n      result[i] = sP * values[oP + i] + s0 * values[o0 + i] + s1 * values[o1 + i] + sN * values[oN + i];\\n    }\\n    return result;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/params/ramp/RampValue.ts\\nvar RampPoint = class {\\n  constructor(_position3 = 0, _value = 0) {\\n    this._position = _position3;\\n    this._value = _value;\\n  }\\n  toJSON() {\\n    return {\\n      position: this._position,\\n      value: this._value\\n    };\\n  }\\n  position() {\\n    return this._position;\\n  }\\n  value() {\\n    return this._value;\\n  }\\n  copy(point) {\\n    this._position = point.position();\\n    this._value = point.value();\\n  }\\n  clone() {\\n    const point = new RampPoint();\\n    point.copy(this);\\n    return point;\\n  }\\n  isEqual(other_point) {\\n    return this._position == other_point.position() && this._value == other_point.value();\\n  }\\n  isEqualJSON(json) {\\n    return this._position == json.position && this._value == json.value;\\n  }\\n  fromJSON(json) {\\n    this._position = json.position;\\n    this._value = json.value;\\n  }\\n  static areEqualJSON(json1, json2) {\\n    return json1.position == json2.position && json1.value == json2.value;\\n  }\\n  static fromJSON(json) {\\n    return new RampPoint(json.position, json.value);\\n  }\\n};\\nvar RampInterpolation;\\n(function(RampInterpolation2) {\\n  RampInterpolation2[\\\\\\\"LINEAR\\\\\\\"] = \\\\\\\"linear\\\\\\\";\\n})(RampInterpolation || (RampInterpolation = {}));\\nvar RampValue = class {\\n  constructor(_interpolation = RampInterpolation.LINEAR, _points2 = []) {\\n    this._interpolation = _interpolation;\\n    this._points = _points2;\\n    this._uuid = generateUUID();\\n  }\\n  uuid() {\\n    return this._uuid;\\n  }\\n  interpolation() {\\n    return this._interpolation;\\n  }\\n  points() {\\n    return this._points;\\n  }\\n  static fromJSON(json) {\\n    const points2 = [];\\n    for (let jsonPoint of json.points) {\\n      points2.push(RampPoint.fromJSON(jsonPoint));\\n    }\\n    return new RampValue(json.interpolation, points2);\\n  }\\n  toJSON() {\\n    return {\\n      interpolation: this._interpolation,\\n      points: this._points.map((p) => p.toJSON())\\n    };\\n  }\\n  clone() {\\n    const ramp = new RampValue();\\n    ramp.copy(this);\\n    return ramp;\\n  }\\n  copy(ramp) {\\n    this._interpolation = ramp.interpolation();\\n    let index = 0;\\n    for (let point of ramp.points()) {\\n      const current_point = this._points[index];\\n      if (current_point) {\\n        current_point.copy(point);\\n      } else {\\n        this._points.push(point.clone());\\n      }\\n      index += 1;\\n    }\\n  }\\n  is_equal(other_ramp_value) {\\n    if (this._interpolation != other_ramp_value.interpolation()) {\\n      return false;\\n    }\\n    const other_points = other_ramp_value.points();\\n    if (this._points.length != other_points.length) {\\n      return false;\\n    }\\n    let index = 0;\\n    for (let point of this._points) {\\n      const other_point = other_points[index];\\n      if (!point.isEqual(other_point)) {\\n        return false;\\n      }\\n      index += 1;\\n    }\\n    return true;\\n  }\\n  is_equal_json(json) {\\n    if (this._interpolation != json.interpolation) {\\n      return false;\\n    }\\n    if (this._points.length != json.points.length) {\\n      return false;\\n    }\\n    let index = 0;\\n    for (let point of this._points) {\\n      const other_point = json.points[index];\\n      if (!point.isEqualJSON(other_point)) {\\n        return false;\\n      }\\n      index += 1;\\n    }\\n    return true;\\n  }\\n  static are_json_equal(json1, json2) {\\n    if (json1.interpolation != json2.interpolation) {\\n      return false;\\n    }\\n    if (json1.points.length != json2.points.length) {\\n      return false;\\n    }\\n    let index = 0;\\n    for (let point1 of json1.points) {\\n      const point2 = json2.points[index];\\n      if (!RampPoint.areEqualJSON(point1, point2)) {\\n        return false;\\n      }\\n      index += 1;\\n    }\\n    return true;\\n  }\\n  from_json(json) {\\n    this._interpolation = json.interpolation;\\n    let index = 0;\\n    for (let json_point of json.points) {\\n      const current_point = this._points[index];\\n      if (current_point) {\\n        current_point.fromJSON(json_point);\\n      } else {\\n        this._points.push(RampPoint.fromJSON(json_point));\\n      }\\n      index += 1;\\n    }\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/params/Ramp.ts\\nvar TEXTURE_WIDTH = 1024;\\nvar TEXTURE_HEIGHT = 1;\\nvar TEXTURE_SIZE = TEXTURE_WIDTH * TEXTURE_HEIGHT;\\nvar TEXTURE_BYTES_MULT = 255;\\nvar RampParam2 = class extends TypedParam {\\n  constructor() {\\n    super(...arguments);\\n    this._texture_data = new Uint8Array(3 * TEXTURE_SIZE);\\n    this._ramp_texture = new DataTexture(this._texture_data, TEXTURE_WIDTH, TEXTURE_HEIGHT, RGBFormat);\\n  }\\n  static type() {\\n    return ParamType.RAMP;\\n  }\\n  defaultValueSerialized() {\\n    if (this._default_value instanceof RampValue) {\\n      return this._default_value.toJSON();\\n    } else {\\n      return this._default_value;\\n    }\\n  }\\n  _clone_raw_input(raw_input) {\\n    if (raw_input instanceof RampValue) {\\n      return raw_input.clone();\\n    } else {\\n      return RampValue.fromJSON(raw_input).toJSON();\\n    }\\n  }\\n  rawInputSerialized() {\\n    if (this._raw_input instanceof RampValue) {\\n      return this._raw_input.toJSON();\\n    } else {\\n      return RampValue.fromJSON(this._raw_input).toJSON();\\n    }\\n  }\\n  valueSerialized() {\\n    return this.value.toJSON();\\n  }\\n  _copy_value(param) {\\n    this.set(param.valueSerialized());\\n  }\\n  static are_raw_input_equal(raw_input1, raw_input2) {\\n    if (raw_input1 instanceof RampValue) {\\n      if (raw_input2 instanceof RampValue) {\\n        return raw_input1.is_equal(raw_input2);\\n      } else {\\n        return raw_input1.is_equal_json(raw_input2);\\n      }\\n    } else {\\n      if (raw_input2 instanceof RampValue) {\\n        return raw_input2.is_equal_json(raw_input1);\\n      } else {\\n        return RampValue.are_json_equal(raw_input1, raw_input2);\\n      }\\n    }\\n  }\\n  static are_values_equal(val1, val2) {\\n    return val1.is_equal(val2);\\n  }\\n  isDefault() {\\n    if (this._default_value instanceof RampValue) {\\n      return this.value.is_equal(this._default_value);\\n    } else {\\n      return this.value.is_equal_json(this._default_value);\\n    }\\n  }\\n  processRawInput() {\\n    if (this._raw_input instanceof RampValue) {\\n      if (!this._value) {\\n        this._value = this._raw_input;\\n      } else {\\n        this._value.copy(this._raw_input);\\n      }\\n    } else {\\n      if (!this._value) {\\n        this._value = RampValue.fromJSON(this._raw_input);\\n      } else {\\n        this._value.from_json(this._raw_input);\\n      }\\n    }\\n    this._resetRampInterpolant();\\n    this._updateRampTexture();\\n    this.options.executeCallback();\\n    this.emitController.emit(ParamEvent.VALUE_UPDATED);\\n    this.setSuccessorsDirty(this);\\n  }\\n  hasExpression() {\\n    return false;\\n  }\\n  _resetRampInterpolant() {\\n    this._ramp_interpolant = void 0;\\n  }\\n  rampTexture() {\\n    return this._ramp_texture;\\n  }\\n  _updateRampTexture() {\\n    this._updateRampTextureData();\\n    this.rampTexture().needsUpdate = true;\\n  }\\n  _updateRampTextureData() {\\n    let stride = 0;\\n    let position = 0;\\n    let value = 0;\\n    for (var i = 0; i < TEXTURE_SIZE; i++) {\\n      stride = i * 3;\\n      position = i / TEXTURE_WIDTH;\\n      value = this.valueAtPosition(position);\\n      if (value <= 0) {\\n        this._texture_data[stride + 0] = (clamp(value, -1, 0) + 1) * TEXTURE_BYTES_MULT;\\n        this._texture_data[stride + 1] = 0;\\n        this._texture_data[stride + 2] = 0;\\n      } else {\\n        if (value <= 1) {\\n          this._texture_data[stride + 0] = TEXTURE_BYTES_MULT;\\n          this._texture_data[stride + 1] = clamp(value, 0, 1) * TEXTURE_BYTES_MULT;\\n          this._texture_data[stride + 2] = 0;\\n        } else {\\n          this._texture_data[stride + 0] = TEXTURE_BYTES_MULT;\\n          this._texture_data[stride + 1] = TEXTURE_BYTES_MULT;\\n          this._texture_data[stride + 2] = (clamp(value, 1, 2) - 1) * TEXTURE_BYTES_MULT;\\n        }\\n      }\\n    }\\n  }\\n  static createInterpolant(positions, values) {\\n    const valuesCount = 1;\\n    const interpolatedValues = new Float32Array(valuesCount);\\n    return new CubicInterpolant(positions, values, valuesCount, interpolatedValues);\\n  }\\n  interpolant() {\\n    return this._ramp_interpolant = this._ramp_interpolant || this._createInterpolant();\\n  }\\n  _createInterpolant() {\\n    const points2 = this.value.points();\\n    const sortedPoints = ArrayUtils.sortBy(points2, (point) => point.position());\\n    const positions = new Float32Array(sortedPoints.length);\\n    const values = new Float32Array(sortedPoints.length);\\n    let i = 0;\\n    for (let sortedPoint of sortedPoints) {\\n      positions[i] = sortedPoint.position();\\n      values[i] = sortedPoint.value();\\n      i++;\\n    }\\n    return RampParam2.createInterpolant(positions, values);\\n  }\\n  valueAtPosition(position) {\\n    return this.interpolant().evaluate(position)[0];\\n  }\\n};\\nvar RampParam = RampParam2;\\nRampParam.DEFAULT_VALUE = new RampValue(RampInterpolation.LINEAR, [new RampPoint(0, 0), new RampPoint(1, 1)]);\\nRampParam.DEFAULT_VALUE_JSON = RampParam2.DEFAULT_VALUE.toJSON();\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/params/String.ts\\nvar StringParam = class extends TypedParam {\\n  static type() {\\n    return ParamType.STRING;\\n  }\\n  defaultValueSerialized() {\\n    return this._default_value;\\n  }\\n  _clone_raw_input(raw_input) {\\n    return `${raw_input}`;\\n  }\\n  rawInputSerialized() {\\n    return `${this._raw_input}`;\\n  }\\n  valueSerialized() {\\n    return `${this.value}`;\\n  }\\n  _copy_value(param) {\\n    this.set(param.value);\\n  }\\n  static are_raw_input_equal(raw_input1, raw_input2) {\\n    return raw_input1 == raw_input2;\\n  }\\n  static are_values_equal(val1, val2) {\\n    return val1 == val2;\\n  }\\n  isDefault() {\\n    return this._raw_input == this._default_value;\\n  }\\n  convert(raw_val) {\\n    if (CoreType.isString(raw_val)) {\\n      return raw_val;\\n    }\\n    return `${raw_val}`;\\n  }\\n  rawInput() {\\n    return this._raw_input;\\n  }\\n  processRawInput() {\\n    this.states.error.clear();\\n    if (this._value_elements(this._raw_input).length >= 3) {\\n      this._expression_controller = this._expression_controller || new ExpressionController(this);\\n      if (this._raw_input != this._expression_controller.expression()) {\\n        this._expression_controller.set_expression(this._raw_input);\\n        this.setDirty();\\n        this.emitController.emit(ParamEvent.EXPRESSION_UPDATED);\\n      }\\n    } else {\\n      if (this._raw_input != this._value) {\\n        this._value = this._raw_input;\\n        this.removeDirtyState();\\n        this.setSuccessorsDirty(this);\\n        this.emitController.emit(ParamEvent.VALUE_UPDATED);\\n        this.options.executeCallback();\\n        if (this._expression_controller) {\\n          this._expression_controller.set_expression(void 0, false);\\n          this.emitController.emit(ParamEvent.EXPRESSION_UPDATED);\\n        }\\n      }\\n    }\\n  }\\n  async processComputation() {\\n    if (this.expressionController?.active() && !this.expressionController.requires_entities()) {\\n      const expression_result = await this.expressionController.computeExpression();\\n      if (this.expressionController.is_errored()) {\\n        this.states.error.set(`expression error: ${this.expressionController.error_message()}`);\\n      } else {\\n        const converted = this.convert(expression_result);\\n        if (converted != null) {\\n          this._value = converted;\\n          this.emitController.emit(ParamEvent.VALUE_UPDATED);\\n          this.options.executeCallback();\\n        } else {\\n          this.states.error.set(`expression returns an invalid type (${expression_result})`);\\n        }\\n        this.removeDirtyState();\\n      }\\n    }\\n  }\\n  _value_elements(v) {\\n    return ParsedTree.string_value_elements(v);\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/params/Vector2.ts\\nvar COMPONENT_NAMES_VECTOR2 = [\\\\\\\"x\\\\\\\", \\\\\\\"y\\\\\\\"];\\nvar Vector2Param = class extends TypedMultipleParam {\\n  constructor() {\\n    super(...arguments);\\n    this._value = new Vector2();\\n    this._copied_value = [0, 0];\\n  }\\n  static type() {\\n    return ParamType.VECTOR2;\\n  }\\n  componentNames() {\\n    return COMPONENT_NAMES_VECTOR2;\\n  }\\n  defaultValueSerialized() {\\n    if (CoreType.isArray(this._default_value)) {\\n      return this._default_value;\\n    } else {\\n      return this._default_value.toArray();\\n    }\\n  }\\n  valueSerialized() {\\n    return this.value.toArray();\\n  }\\n  _copy_value(param) {\\n    param.value.toArray(this._copied_value);\\n    this.set(this._copied_value);\\n  }\\n  _clone_raw_input(raw_input) {\\n    if (raw_input instanceof Vector2) {\\n      return raw_input.clone();\\n    } else {\\n      const new_array = [raw_input[0], raw_input[1]];\\n      if (new_array[0] == null) {\\n        new_array[0] = new_array[0] || 0;\\n      }\\n      if (new_array[1] == null) {\\n        new_array[1] = new_array[1] || new_array[0];\\n      }\\n      return new_array;\\n    }\\n  }\\n  static are_raw_input_equal(raw_input1, raw_input2) {\\n    if (raw_input1 instanceof Vector2) {\\n      if (raw_input2 instanceof Vector2) {\\n        return raw_input1.equals(raw_input2);\\n      } else {\\n        return raw_input1.x == raw_input2[0] && raw_input1.y == raw_input2[1];\\n      }\\n    } else {\\n      if (raw_input2 instanceof Vector2) {\\n        return raw_input1[0] == raw_input2.x && raw_input1[1] == raw_input2.y;\\n      } else {\\n        return raw_input1[0] == raw_input2[0] && raw_input1[1] == raw_input2[1];\\n      }\\n    }\\n  }\\n  static are_values_equal(val1, val2) {\\n    return val1.equals(val2);\\n  }\\n  initComponents() {\\n    super.initComponents();\\n    this.x = this.components[0];\\n    this.y = this.components[1];\\n  }\\n  set_value_from_components() {\\n    this._value.x = this.x.value;\\n    this._value.y = this.y.value;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/params/Vector3.ts\\nvar COMPONENT_NAMES_VECTOR3 = [\\\\\\\"x\\\\\\\", \\\\\\\"y\\\\\\\", \\\\\\\"z\\\\\\\"];\\nvar Vector3Param = class extends TypedMultipleParam {\\n  constructor() {\\n    super(...arguments);\\n    this._value = new Vector3();\\n    this._copied_value = [0, 0, 0];\\n  }\\n  static type() {\\n    return ParamType.VECTOR3;\\n  }\\n  componentNames() {\\n    return COMPONENT_NAMES_VECTOR3;\\n  }\\n  defaultValueSerialized() {\\n    if (CoreType.isArray(this._default_value)) {\\n      return this._default_value;\\n    } else {\\n      return this._default_value.toArray();\\n    }\\n  }\\n  valueSerialized() {\\n    return this.value.toArray();\\n  }\\n  _copy_value(param) {\\n    param.value.toArray(this._copied_value);\\n    this.set(this._copied_value);\\n  }\\n  _clone_raw_input(raw_input) {\\n    if (raw_input instanceof Vector3) {\\n      return raw_input.clone();\\n    } else {\\n      const new_array = [raw_input[0], raw_input[1], raw_input[2]];\\n      if (new_array[0] == null) {\\n        new_array[0] = new_array[0] || 0;\\n      }\\n      if (new_array[1] == null) {\\n        new_array[1] = new_array[1] || new_array[0];\\n      }\\n      if (new_array[2] == null) {\\n        new_array[2] = new_array[2] || new_array[1];\\n      }\\n      return new_array;\\n    }\\n  }\\n  static are_raw_input_equal(raw_input1, raw_input2) {\\n    if (raw_input1 instanceof Vector3) {\\n      if (raw_input2 instanceof Vector3) {\\n        return raw_input1.equals(raw_input2);\\n      } else {\\n        return raw_input1.x == raw_input2[0] && raw_input1.y == raw_input2[1] && raw_input1.z == raw_input2[2];\\n      }\\n    } else {\\n      if (raw_input2 instanceof Vector3) {\\n        return raw_input1[0] == raw_input2.x && raw_input1[1] == raw_input2.y && raw_input1[2] == raw_input2.z;\\n      } else {\\n        return raw_input1[0] == raw_input2[0] && raw_input1[1] == raw_input2[1] && raw_input1[2] == raw_input2[2];\\n      }\\n    }\\n  }\\n  static are_values_equal(val1, val2) {\\n    return val1.equals(val2);\\n  }\\n  initComponents() {\\n    super.initComponents();\\n    this.x = this.components[0];\\n    this.y = this.components[1];\\n    this.z = this.components[2];\\n  }\\n  set_value_from_components() {\\n    this._value.x = this.x.value;\\n    this._value.y = this.y.value;\\n    this._value.z = this.z.value;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/params/Vector4.ts\\nvar COMPONENT_NAMES_VECTOR4 = [\\\\\\\"x\\\\\\\", \\\\\\\"y\\\\\\\", \\\\\\\"z\\\\\\\", \\\\\\\"w\\\\\\\"];\\nvar Vector4Param = class extends TypedMultipleParam {\\n  constructor() {\\n    super(...arguments);\\n    this._value = new Vector4();\\n    this._copied_value = [0, 0, 0, 0];\\n  }\\n  static type() {\\n    return ParamType.VECTOR4;\\n  }\\n  componentNames() {\\n    return COMPONENT_NAMES_VECTOR4;\\n  }\\n  defaultValueSerialized() {\\n    if (CoreType.isArray(this._default_value)) {\\n      return this._default_value;\\n    } else {\\n      return this._default_value.toArray();\\n    }\\n  }\\n  valueSerialized() {\\n    return this.value.toArray();\\n  }\\n  _copy_value(param) {\\n    param.value.toArray(this._copied_value);\\n    this.set(this._copied_value);\\n  }\\n  _clone_raw_input(raw_input) {\\n    if (raw_input instanceof Vector4) {\\n      return raw_input.clone();\\n    } else {\\n      const new_array = [raw_input[0], raw_input[1], raw_input[2], raw_input[3]];\\n      if (new_array[0] == null) {\\n        new_array[0] = new_array[0] || 0;\\n      }\\n      if (new_array[1] == null) {\\n        new_array[1] = new_array[1] || new_array[0];\\n      }\\n      if (new_array[2] == null) {\\n        new_array[2] = new_array[2] || new_array[1];\\n      }\\n      if (new_array[3] == null) {\\n        new_array[3] = new_array[3] || new_array[2];\\n      }\\n      return new_array;\\n    }\\n  }\\n  static are_raw_input_equal(raw_input1, raw_input2) {\\n    if (raw_input1 instanceof Vector4) {\\n      if (raw_input2 instanceof Vector4) {\\n        return raw_input1.equals(raw_input2);\\n      } else {\\n        return raw_input1.x == raw_input2[0] && raw_input1.y == raw_input2[1] && raw_input1.z == raw_input2[2] && raw_input1.w == raw_input2[3];\\n      }\\n    } else {\\n      if (raw_input2 instanceof Vector4) {\\n        return raw_input1[0] == raw_input2.x && raw_input1[1] == raw_input2.y && raw_input1[2] == raw_input2.z && raw_input1[3] == raw_input2.w;\\n      } else {\\n        return raw_input1[0] == raw_input2[0] && raw_input1[1] == raw_input2[1] && raw_input1[2] == raw_input2[2] && raw_input1[3] == raw_input2[3];\\n      }\\n    }\\n  }\\n  static are_values_equal(val1, val2) {\\n    return val1.equals(val2);\\n  }\\n  initComponents() {\\n    super.initComponents();\\n    this.x = this.components[0];\\n    this.y = this.components[1];\\n    this.z = this.components[2];\\n    this.w = this.components[3];\\n  }\\n  set_value_from_components() {\\n    this._value.x = this.x.value;\\n    this._value.y = this.y.value;\\n    this._value.z = this.z.value;\\n    this._value.w = this.w.value;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/params/types/ParamConstructorByType.ts\\nvar ParamConstructorByType = {\\n  [ParamType.BOOLEAN]: BooleanParam,\\n  [ParamType.BUTTON]: ButtonParam,\\n  [ParamType.COLOR]: ColorParam,\\n  [ParamType.FLOAT]: FloatParam,\\n  [ParamType.FOLDER]: FolderParam,\\n  [ParamType.INTEGER]: IntegerParam,\\n  [ParamType.OPERATOR_PATH]: OperatorPathParam,\\n  [ParamType.PARAM_PATH]: ParamPathParam,\\n  [ParamType.NODE_PATH]: NodePathParam,\\n  [ParamType.RAMP]: RampParam,\\n  [ParamType.STRING]: StringParam,\\n  [ParamType.VECTOR2]: Vector2Param,\\n  [ParamType.VECTOR3]: Vector3Param,\\n  [ParamType.VECTOR4]: Vector4Param\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/params/ParamsLabelController.ts\\nvar ParamsLabelController = class {\\n  dispose() {\\n    this._callback = void 0;\\n  }\\n  params() {\\n    return this._params;\\n  }\\n  callback() {\\n    return this._callback;\\n  }\\n  init(params, callback) {\\n    this._params = params;\\n    if (callback) {\\n      this._callback = callback;\\n    } else {\\n      const param = this._params[0];\\n      switch (param.type()) {\\n        case ParamType.STRING:\\n          return this._handle_string_param(param);\\n        case ParamType.OPERATOR_PATH:\\n          return this._handle_operator_path_param(param);\\n        case ParamType.NODE_PATH:\\n          return this._handle_node_path_param(param);\\n        case ParamType.PARAM_PATH:\\n          return this._handle_param_path_param(param);\\n        case ParamType.FLOAT:\\n          return this._handle_number_param(param);\\n        case ParamType.INTEGER:\\n          return this._handle_number_param(param);\\n      }\\n    }\\n  }\\n  _handle_string_param(param) {\\n    this._callback = () => {\\n      return param.value;\\n    };\\n  }\\n  _handle_operator_path_param(param) {\\n    this._callback = () => {\\n      return param.value;\\n    };\\n  }\\n  _handle_node_path_param(param) {\\n    this._callback = () => {\\n      return param.value.path();\\n    };\\n  }\\n  _handle_param_path_param(param) {\\n    this._callback = () => {\\n      return param.value.path();\\n    };\\n  }\\n  _handle_number_param(param) {\\n    this._callback = () => {\\n      return `${param.value}`;\\n    };\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/params/ParamsController.ts\\nvar NODE_SIMPLE_NAME = \\\\\\\"params\\\\\\\";\\nvar ParamsController = class {\\n  constructor(node) {\\n    this.node = node;\\n    this._param_create_mode = false;\\n    this._params_created = false;\\n    this._params_by_name = {};\\n    this._params_list = [];\\n    this._param_names = [];\\n    this._non_spare_params = [];\\n    this._spare_params = [];\\n    this._non_spare_param_names = [];\\n    this._spare_param_names = [];\\n    this._params_added_since_last_params_eval = false;\\n  }\\n  get label() {\\n    return this._label_controller = this._label_controller || new ParamsLabelController();\\n  }\\n  hasLabelController() {\\n    return this._label_controller != null;\\n  }\\n  dispose() {\\n    if (this._params_node) {\\n      this._params_node.dispose();\\n    }\\n    for (let param of this.all) {\\n      param.dispose();\\n    }\\n    this._post_create_params_hook_names = void 0;\\n    this._post_create_params_hooks = void 0;\\n    this._on_scene_load_hooks = void 0;\\n    this._on_scene_load_hook_names = void 0;\\n    this._label_controller?.dispose();\\n  }\\n  initDependencyNode() {\\n    if (!this._params_node) {\\n      this._params_node = new CoreGraphNode(this.node.scene(), NODE_SIMPLE_NAME);\\n      this.node.addGraphInput(this._params_node, false);\\n    }\\n  }\\n  init() {\\n    this.initDependencyNode();\\n    this._param_create_mode = true;\\n    this._initFromParamsConfig();\\n    this.node.createParams();\\n    this._postCreateParams();\\n  }\\n  _postCreateParams() {\\n    this._updateCaches();\\n    this._initParamAccessors();\\n    this._param_create_mode = false;\\n    this._params_created = true;\\n    this._runPostCreateParamsHooks();\\n  }\\n  postCreateSpareParams() {\\n    this._updateCaches();\\n    this._initParamAccessors();\\n    this.node.scene().referencesController.notifyParamsUpdated(this.node);\\n    this.node.emit(NodeEvent.PARAMS_UPDATED);\\n  }\\n  updateParams(options) {\\n    let has_created_a_param = false;\\n    let has_deleted_a_param = false;\\n    if (options.namesToDelete) {\\n      for (let param_name of options.namesToDelete) {\\n        if (this.has(param_name)) {\\n          this._deleteParam(param_name);\\n          has_deleted_a_param = true;\\n        }\\n      }\\n    }\\n    if (options.toAdd) {\\n      for (let param_data of options.toAdd) {\\n        const param = this.addParam(param_data.type, param_data.name, param_data.init_value, param_data.options);\\n        if (param) {\\n          if (param_data.raw_input != null) {\\n            param.set(param_data.raw_input);\\n          }\\n          has_created_a_param = true;\\n        }\\n      }\\n    }\\n    if (has_deleted_a_param || has_created_a_param) {\\n      this.postCreateSpareParams();\\n    }\\n  }\\n  _initFromParamsConfig() {\\n    const paramsConfig = this.node.paramsConfig;\\n    let init_values_used = false;\\n    if (paramsConfig) {\\n      for (let name of Object.keys(paramsConfig)) {\\n        const config = paramsConfig[name];\\n        let init_value;\\n        if (this.node.params_init_value_overrides) {\\n          init_value = this.node.params_init_value_overrides[name];\\n          init_values_used = true;\\n        }\\n        this.addParam(config.type, name, config.init_value, config.options, init_value);\\n      }\\n    }\\n    if (init_values_used) {\\n      this.node.setDirty();\\n    }\\n    this.node.params_init_value_overrides = void 0;\\n  }\\n  _initParamAccessors() {\\n    let current_names_in_accessor = Object.getOwnPropertyNames(this.node.pv);\\n    this._removeUnneededAccessors(current_names_in_accessor);\\n    current_names_in_accessor = Object.getOwnPropertyNames(this.node.pv);\\n    for (let param of this.all) {\\n      const is_spare = param.options.isSpare();\\n      const param_not_yet_in_accessors = !current_names_in_accessor.includes(param.name());\\n      if (param_not_yet_in_accessors || is_spare) {\\n        Object.defineProperty(this.node.pv, param.name(), {\\n          get: () => {\\n            return param.value;\\n          },\\n          configurable: is_spare\\n        });\\n        Object.defineProperty(this.node.p, param.name(), {\\n          get: () => {\\n            return param;\\n          },\\n          configurable: is_spare\\n        });\\n      }\\n    }\\n  }\\n  _removeUnneededAccessors(current_names_in_accessor) {\\n    const current_param_names = this._param_names;\\n    const names_to_remove = [];\\n    for (let current_name_in_accessor of current_names_in_accessor) {\\n      if (!current_param_names.includes(current_name_in_accessor)) {\\n        names_to_remove.push(current_name_in_accessor);\\n      }\\n    }\\n    for (let name_to_remove of names_to_remove) {\\n      Object.defineProperty(this.node.pv, name_to_remove, {\\n        get: () => {\\n          return void 0;\\n        },\\n        configurable: true\\n      });\\n      Object.defineProperty(this.node.p, name_to_remove, {\\n        get: () => {\\n          return void 0;\\n        },\\n        configurable: true\\n      });\\n    }\\n  }\\n  get params_node() {\\n    return this._params_node;\\n  }\\n  get all() {\\n    return this._params_list;\\n  }\\n  get non_spare() {\\n    return this._non_spare_params;\\n  }\\n  get spare() {\\n    return this._spare_params;\\n  }\\n  get names() {\\n    return this._param_names;\\n  }\\n  get non_spare_names() {\\n    return this._non_spare_param_names;\\n  }\\n  get spare_names() {\\n    return this._spare_param_names;\\n  }\\n  set_with_type(param_name, value, type) {\\n    const param = this.param_with_type(param_name, type);\\n    if (param) {\\n      param.set(value);\\n    } else {\\n      Poly.warn(`param ${param_name} not found with type ${type}`);\\n    }\\n  }\\n  set_float(param_name, value) {\\n    this.set_with_type(param_name, value, ParamType.FLOAT);\\n  }\\n  set_vector3(param_name, value) {\\n    this.set_with_type(param_name, value, ParamType.VECTOR3);\\n  }\\n  has_param(param_name) {\\n    return this._params_by_name[param_name] != null;\\n  }\\n  has(param_name) {\\n    return this.has_param(param_name);\\n  }\\n  get(param_name) {\\n    return this.param(param_name);\\n  }\\n  param_with_type(param_name, type) {\\n    const param = this.param(param_name);\\n    if (param && param.type() == type) {\\n      return param;\\n    }\\n  }\\n  get_float(param_name) {\\n    return this.param_with_type(param_name, ParamType.FLOAT);\\n  }\\n  get_operator_path(param_name) {\\n    return this.param_with_type(param_name, ParamType.OPERATOR_PATH);\\n  }\\n  value(param_name) {\\n    return this.param(param_name)?.value;\\n  }\\n  value_with_type(param_name, type) {\\n    return this.param_with_type(param_name, type)?.value;\\n  }\\n  boolean(param_name) {\\n    return this.value_with_type(param_name, ParamType.BOOLEAN);\\n  }\\n  float(param_name) {\\n    return this.value_with_type(param_name, ParamType.FLOAT);\\n  }\\n  integer(param_name) {\\n    return this.value_with_type(param_name, ParamType.INTEGER);\\n  }\\n  string(param_name) {\\n    return this.value_with_type(param_name, ParamType.STRING);\\n  }\\n  vector2(param_name) {\\n    return this.value_with_type(param_name, ParamType.VECTOR2);\\n  }\\n  vector3(param_name) {\\n    return this.value_with_type(param_name, ParamType.VECTOR3);\\n  }\\n  color(param_name) {\\n    return this.value_with_type(param_name, ParamType.COLOR);\\n  }\\n  param(param_name) {\\n    const p = this._params_by_name[param_name];\\n    if (p != null) {\\n      return p;\\n    } else {\\n      Poly.warn(`tried to access param '${param_name}' in node ${this.node.path()}, but existing params are: ${this.names} on node ${this.node.path()}`);\\n      return null;\\n    }\\n  }\\n  _deleteParam(param_name) {\\n    const param = this._params_by_name[param_name];\\n    if (param) {\\n      if (this._params_node) {\\n        this._params_node.removeGraphInput(this._params_by_name[param_name]);\\n      }\\n      param._setupNodeDependencies(null);\\n      delete this._params_by_name[param_name];\\n      if (param.isMultiple() && param.components) {\\n        for (let component of param.components) {\\n          const child_name = component.name();\\n          delete this._params_by_name[child_name];\\n        }\\n      }\\n    } else {\\n      throw new Error(`param '${param_name}' does not exist on node ${this.node.path()}`);\\n    }\\n  }\\n  addParam(type, param_name, default_value, options = {}, init_data) {\\n    const is_spare = options[\\\\\\\"spare\\\\\\\"] || false;\\n    if (this._param_create_mode === false && !is_spare) {\\n      Poly.warn(`node ${this.node.path()} (${this.node.type()}) param '${param_name}' cannot be created outside of create_params`);\\n    }\\n    if (this.node.scene() == null) {\\n      Poly.warn(`node ${this.node.path()} (${this.node.type()}) has no scene assigned`);\\n    }\\n    const constructor = ParamConstructorByType[type];\\n    if (constructor != null) {\\n      const existing_param = this._params_by_name[param_name];\\n      if (existing_param) {\\n        if (is_spare) {\\n          if (existing_param.type() != type) {\\n            this._deleteParam(existing_param.name());\\n          }\\n        } else {\\n          Poly.warn(`a param named ${param_name} already exists`, this.node);\\n        }\\n      }\\n      const param = new constructor(this.node.scene(), this.node);\\n      param.options.set(options);\\n      param.setName(param_name);\\n      param.setInitValue(default_value);\\n      param.initComponents();\\n      if (init_data == null) {\\n        param.set(default_value);\\n      } else {\\n        if (param.options.isExpressionForEntities()) {\\n          param.set(default_value);\\n        }\\n        if (init_data.raw_input != null) {\\n          param.set(init_data.raw_input);\\n        } else {\\n          if (init_data.simple_data != null) {\\n            param.set(init_data.simple_data);\\n          } else {\\n            if (init_data.complex_data != null) {\\n              const raw_input = init_data.complex_data.raw_input;\\n              if (raw_input) {\\n                param.set(raw_input);\\n              } else {\\n                param.set(default_value);\\n              }\\n              const overriden_options = init_data.complex_data.overriden_options;\\n              if (overriden_options != null) {\\n                const keys = Object.keys(overriden_options);\\n                for (let key of keys) {\\n                  param.options.setOption(key, overriden_options[key]);\\n                }\\n              }\\n            }\\n          }\\n        }\\n      }\\n      param._setupNodeDependencies(this.node);\\n      this._params_by_name[param.name()] = param;\\n      if (param.isMultiple() && param.components) {\\n        for (let component of param.components) {\\n          this._params_by_name[component.name()] = component;\\n        }\\n      }\\n      this._params_added_since_last_params_eval = true;\\n      return param;\\n    }\\n  }\\n  _updateCaches() {\\n    this._params_list = Object.values(this._params_by_name);\\n    this._param_names = Object.keys(this._params_by_name);\\n    this._non_spare_params = Object.values(this._params_by_name).filter((p) => !p.options.isSpare());\\n    this._spare_params = Object.values(this._params_by_name).filter((p) => p.options.isSpare());\\n    this._non_spare_param_names = Object.values(this._params_by_name).filter((p) => !p.options.isSpare()).map((p) => p.name());\\n    this._spare_param_names = Object.values(this._params_by_name).filter((p) => p.options.isSpare()).map((p) => p.name());\\n  }\\n  async _evalParam(param) {\\n    if (param.isDirty()) {\\n      await param.compute();\\n      if (param.states.error.active()) {\\n        this.node.states.error.set(`param '${param.name()}' error: ${param.states.error.message()}`);\\n      }\\n    } else {\\n    }\\n  }\\n  async evalParams(params) {\\n    const promises = [];\\n    for (let param of params) {\\n      if (param.isDirty()) {\\n        promises.push(this._evalParam(param));\\n      }\\n    }\\n    await Promise.all(promises);\\n    if (this.node.states.error.active()) {\\n      this.node._setContainer(null);\\n    }\\n  }\\n  paramsEvalRequired() {\\n    return this._params_node != null && (this._params_node.isDirty() || this._params_added_since_last_params_eval);\\n  }\\n  async evalAll() {\\n    if (this.paramsEvalRequired()) {\\n      await this.evalParams(this._params_list);\\n      this._params_node?.removeDirtyState();\\n      this._params_added_since_last_params_eval = false;\\n    }\\n  }\\n  onParamsCreated(hook_name, hook) {\\n    if (this._params_created) {\\n      hook();\\n    } else {\\n      if (this._post_create_params_hook_names && this._post_create_params_hook_names.includes(hook_name)) {\\n        Poly.error(`hook name ${hook_name} already exists`);\\n        return;\\n      }\\n      this._post_create_params_hook_names = this._post_create_params_hook_names || [];\\n      this._post_create_params_hook_names.push(hook_name);\\n      this._post_create_params_hooks = this._post_create_params_hooks || [];\\n      this._post_create_params_hooks.push(hook);\\n    }\\n  }\\n  addOnSceneLoadHook(param_name, method) {\\n    this._on_scene_load_hook_names = this._on_scene_load_hook_names || [];\\n    this._on_scene_load_hooks = this._on_scene_load_hooks || [];\\n    if (!this._on_scene_load_hook_names.includes(param_name)) {\\n      this._on_scene_load_hook_names.push(param_name);\\n      this._on_scene_load_hooks.push(method);\\n    } else {\\n      Poly.warn(`hook with name ${param_name} already exists`, this.node);\\n    }\\n  }\\n  _runPostCreateParamsHooks() {\\n    if (this._post_create_params_hooks) {\\n      for (let hook of this._post_create_params_hooks) {\\n        hook();\\n      }\\n    }\\n  }\\n  runOnSceneLoadHooks() {\\n    if (this._on_scene_load_hooks) {\\n      for (let hook of this._on_scene_load_hooks) {\\n        hook();\\n      }\\n    }\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/params/ParamsValueAccessor.ts\\nvar ParamsValueAccessor = class {\\n  constructor() {\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/io/NodeConnection.ts\\nvar TypedNodeConnection2 = class {\\n  constructor(_node_src, _node_dest, _output_index = 0, _input_index = 0) {\\n    this._node_src = _node_src;\\n    this._node_dest = _node_dest;\\n    this._output_index = _output_index;\\n    this._input_index = _input_index;\\n    if (this._output_index == null) {\\n      throw \\\\\\\"bad output index\\\\\\\";\\n    }\\n    if (this._input_index == null) {\\n      throw \\\\\\\"bad input index\\\\\\\";\\n    }\\n    this._id = TypedNodeConnection2._next_id++;\\n    if (this._node_src.io.connections && this._node_dest.io.connections) {\\n      this._node_src.io.connections.addOutputConnection(this);\\n      this._node_dest.io.connections.addInputConnection(this);\\n    }\\n  }\\n  get id() {\\n    return this._id;\\n  }\\n  get node_src() {\\n    return this._node_src;\\n  }\\n  get node_dest() {\\n    return this._node_dest;\\n  }\\n  get output_index() {\\n    return this._output_index;\\n  }\\n  get input_index() {\\n    return this._input_index;\\n  }\\n  src_connection_point() {\\n    const node_src = this._node_src;\\n    const output_index = this._output_index;\\n    return node_src.io.outputs.namedOutputConnectionPoints()[output_index];\\n  }\\n  dest_connection_point() {\\n    const node_dest = this._node_dest;\\n    const input_index = this._input_index;\\n    return node_dest.io.inputs.namedInputConnectionPoints()[input_index];\\n  }\\n  disconnect(options = {}) {\\n    if (this._node_src.io.connections && this._node_dest.io.connections) {\\n      this._node_src.io.connections.removeOutputConnection(this);\\n      this._node_dest.io.connections.removeInputConnection(this);\\n    }\\n    if (options.setInput === true) {\\n      this._node_dest.io.inputs.setInput(this._input_index, null);\\n    }\\n  }\\n};\\nvar TypedNodeConnection = TypedNodeConnection2;\\nTypedNodeConnection._next_id = 0;\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/io/utils/ClonedStatesController.ts\\nvar ClonedStatesController2 = class {\\n  constructor(inputs_controller) {\\n    this.inputs_controller = inputs_controller;\\n    this._clone_required_states = [];\\n    this._overridden = false;\\n    this.node = inputs_controller.node;\\n  }\\n  initInputsClonedState(states) {\\n    if (CoreType.isArray(states)) {\\n      this._cloned_states = states;\\n    } else {\\n      this._cloned_state = states;\\n    }\\n    this._update_clone_required_state();\\n  }\\n  overrideClonedStateAllowed() {\\n    if (this._cloned_states) {\\n      for (let state of this._cloned_states) {\\n        if (state == InputCloneMode.FROM_NODE) {\\n          return true;\\n        }\\n      }\\n    }\\n    if (this._cloned_state) {\\n      return this._cloned_state == InputCloneMode.FROM_NODE;\\n    }\\n    return false;\\n  }\\n  cloneRequiredState(index) {\\n    return this._clone_required_states[index];\\n  }\\n  cloneRequiredStates() {\\n    return this._clone_required_states;\\n  }\\n  _get_clone_required_state(index) {\\n    const states = this._cloned_states;\\n    if (states) {\\n      const state = states[index];\\n      if (state != null) {\\n        return this.clone_required_from_state(state);\\n      }\\n    }\\n    if (this._cloned_state) {\\n      return this.clone_required_from_state(this._cloned_state);\\n    }\\n    return true;\\n  }\\n  clone_required_from_state(state) {\\n    switch (state) {\\n      case InputCloneMode.ALWAYS:\\n        return true;\\n      case InputCloneMode.NEVER:\\n        return false;\\n      case InputCloneMode.FROM_NODE:\\n        return !this._overridden;\\n    }\\n    return TypeAssert.unreachable(state);\\n  }\\n  overrideClonedState(state) {\\n    this._overridden = state;\\n    this._update_clone_required_state();\\n    this.node.emit(NodeEvent.OVERRIDE_CLONABLE_STATE_UPDATE);\\n    this.node.setDirty();\\n  }\\n  overriden() {\\n    return this._overridden;\\n  }\\n  _update_clone_required_state() {\\n    if (this._cloned_states) {\\n      const states = [];\\n      for (let i = 0; i < this._cloned_states.length; i++) {\\n        states[i] = this._get_clone_required_state(i);\\n      }\\n      this._clone_required_states = states;\\n      return;\\n    }\\n    if (this._cloned_state) {\\n      const max_inputs = this.inputs_controller.maxInputsCount();\\n      const states = [];\\n      for (let i = 0; i < max_inputs; i++) {\\n        states[i] = this._get_clone_required_state(i);\\n      }\\n      this._clone_required_states = states;\\n      return;\\n    }\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/io/InputsController.ts\\nvar MAX_INPUTS_COUNT_UNSET = 0;\\nvar InputsController2 = class {\\n  constructor(node) {\\n    this.node = node;\\n    this._graph_node_inputs = [];\\n    this._inputs = [];\\n    this._has_named_inputs = false;\\n    this._minInputsCount = 0;\\n    this._maxInputsCount = MAX_INPUTS_COUNT_UNSET;\\n    this._maxInputsCountOnInput = MAX_INPUTS_COUNT_UNSET;\\n    this._depends_on_inputs = true;\\n  }\\n  dispose() {\\n    if (this._graph_node) {\\n      this._graph_node.dispose();\\n    }\\n    for (let graph_node of this._graph_node_inputs) {\\n      if (graph_node) {\\n        graph_node.dispose();\\n      }\\n    }\\n    this._on_update_hooks = void 0;\\n    this._on_update_hook_names = void 0;\\n  }\\n  set_depends_on_inputs(depends_on_inputs) {\\n    this._depends_on_inputs = depends_on_inputs;\\n  }\\n  setMinCount(minInputsCount) {\\n    this._minInputsCount = minInputsCount;\\n  }\\n  minCount() {\\n    return this._minInputsCount;\\n  }\\n  setMaxCount(maxInputsCount) {\\n    if (this._maxInputsCount == MAX_INPUTS_COUNT_UNSET) {\\n      this._maxInputsCountOnInput = maxInputsCount;\\n    }\\n    this._maxInputsCount = maxInputsCount;\\n    this._initGraphNodeInputs();\\n  }\\n  namedInputConnectionPointsByName(name) {\\n    if (this._named_input_connection_points) {\\n      for (let connection_point of this._named_input_connection_points) {\\n        if (connection_point && connection_point.name() == name) {\\n          return connection_point;\\n        }\\n      }\\n    }\\n  }\\n  setNamedInputConnectionPoints(connection_points) {\\n    this._has_named_inputs = true;\\n    const connections = this.node.io.connections.inputConnections();\\n    if (connections) {\\n      for (let connection of connections) {\\n        if (connection) {\\n          if (connection.input_index >= connection_points.length) {\\n            connection.disconnect({setInput: true});\\n          }\\n        }\\n      }\\n    }\\n    this._named_input_connection_points = connection_points;\\n    this.setMinCount(0);\\n    this.setMaxCount(connection_points.length);\\n    this._initGraphNodeInputs();\\n    this.node.emit(NodeEvent.NAMED_INPUTS_UPDATED);\\n  }\\n  hasNamedInputs() {\\n    return this._has_named_inputs;\\n  }\\n  namedInputConnectionPoints() {\\n    return this._named_input_connection_points || [];\\n  }\\n  _initGraphNodeInputs() {\\n    for (let i = 0; i < this._maxInputsCount; i++) {\\n      this._graph_node_inputs[i] = this._graph_node_inputs[i] || this._createGraphNodeInput(i);\\n    }\\n  }\\n  _createGraphNodeInput(index) {\\n    const graph_input_node = new CoreGraphNode(this.node.scene(), `input_${index}`);\\n    if (!this._graph_node) {\\n      this._graph_node = new CoreGraphNode(this.node.scene(), \\\\\\\"inputs\\\\\\\");\\n      this.node.addGraphInput(this._graph_node, false);\\n    }\\n    this._graph_node.addGraphInput(graph_input_node, false);\\n    return graph_input_node;\\n  }\\n  maxInputsCount() {\\n    return this._maxInputsCount || 0;\\n  }\\n  maxInputsCountOverriden() {\\n    return this._maxInputsCount != this._maxInputsCountOnInput;\\n  }\\n  inputGraphNode(input_index) {\\n    return this._graph_node_inputs[input_index];\\n  }\\n  setCount(min, max) {\\n    if (max == null) {\\n      max = min;\\n    }\\n    this.setMinCount(min);\\n    this.setMaxCount(max);\\n    this._initConnectionControllerInputs();\\n  }\\n  _initConnectionControllerInputs() {\\n    this.node.io.connections.initInputs();\\n  }\\n  is_any_input_dirty() {\\n    return this._graph_node?.isDirty() || false;\\n  }\\n  async containers_without_evaluation() {\\n    const containers = [];\\n    for (let i = 0; i < this._inputs.length; i++) {\\n      const input_node = this._inputs[i];\\n      let container = void 0;\\n      if (input_node) {\\n        container = await input_node.compute();\\n      }\\n      containers.push(container);\\n    }\\n    return containers;\\n  }\\n  existing_input_indices() {\\n    const existing_input_indices = [];\\n    if (this._maxInputsCount > 0) {\\n      for (let i = 0; i < this._inputs.length; i++) {\\n        if (this._inputs[i]) {\\n          existing_input_indices.push(i);\\n        }\\n      }\\n    }\\n    return existing_input_indices;\\n  }\\n  async eval_required_inputs() {\\n    let containers = [];\\n    if (this._maxInputsCount > 0) {\\n      const existing_input_indices = this.existing_input_indices();\\n      if (existing_input_indices.length < this._minInputsCount) {\\n        this.node.states.error.set(\\\\\\\"inputs are missing\\\\\\\");\\n      } else {\\n        if (existing_input_indices.length > 0) {\\n          const promises = [];\\n          let input;\\n          for (let i = 0; i < this._inputs.length; i++) {\\n            input = this._inputs[i];\\n            if (input) {\\n              promises.push(this.eval_required_input(i));\\n            }\\n          }\\n          containers = await Promise.all(promises);\\n          this._graph_node?.removeDirtyState();\\n        }\\n      }\\n    }\\n    return containers;\\n  }\\n  async eval_required_input(input_index) {\\n    let container = void 0;\\n    const input_node = this.input(input_index);\\n    if (input_node) {\\n      container = await input_node.compute();\\n      this._graph_node_inputs[input_index].removeDirtyState();\\n    }\\n    if (container && container.coreContent()) {\\n    } else {\\n      const input_node2 = this.input(input_index);\\n      if (input_node2) {\\n        const input_error_message = input_node2.states.error.message();\\n        if (input_error_message) {\\n          this.node.states.error.set(`input ${input_index} is invalid (error: ${input_error_message})`);\\n        }\\n      }\\n    }\\n    return container;\\n  }\\n  get_named_input_index(name) {\\n    if (this._named_input_connection_points) {\\n      for (let i = 0; i < this._named_input_connection_points.length; i++) {\\n        if (this._named_input_connection_points[i]?.name() == name) {\\n          return i;\\n        }\\n      }\\n    }\\n    return -1;\\n  }\\n  get_input_index(input_index_or_name) {\\n    if (CoreType.isString(input_index_or_name)) {\\n      if (this.hasNamedInputs()) {\\n        return this.get_named_input_index(input_index_or_name);\\n      } else {\\n        throw new Error(`node ${this.node.path()} has no named inputs`);\\n      }\\n    } else {\\n      return input_index_or_name;\\n    }\\n  }\\n  setInput(input_index_or_name, node, output_index_or_name = 0) {\\n    const input_index = this.get_input_index(input_index_or_name) || 0;\\n    if (input_index < 0) {\\n      const message = `invalid input (${input_index_or_name}) for node ${this.node.path()}`;\\n      console.warn(message);\\n      throw new Error(message);\\n    }\\n    let output_index = 0;\\n    if (node) {\\n      if (node.io.outputs.hasNamedOutputs()) {\\n        output_index = node.io.outputs.getOutputIndex(output_index_or_name);\\n        if (output_index == null || output_index < 0) {\\n          const connection_points = node.io.outputs.namedOutputConnectionPoints();\\n          const names = connection_points.map((cp) => cp.name());\\n          console.warn(`node ${node.path()} does not have an output named ${output_index_or_name}. inputs are: ${names.join(\\\\\\\", \\\\\\\")}`);\\n          return;\\n        }\\n      }\\n    }\\n    const graph_input_node = this._graph_node_inputs[input_index];\\n    if (graph_input_node == null) {\\n      const message = `graph_input_node not found at index ${input_index}`;\\n      console.warn(message);\\n      throw new Error(message);\\n    }\\n    if (node && this.node.parent() != node.parent()) {\\n      return;\\n    }\\n    const old_input_node = this._inputs[input_index];\\n    let old_output_index = null;\\n    let old_connection = void 0;\\n    if (this.node.io.connections) {\\n      old_connection = this.node.io.connections.inputConnection(input_index);\\n    }\\n    if (old_connection) {\\n      old_output_index = old_connection.output_index;\\n    }\\n    if (node !== old_input_node || output_index != old_output_index) {\\n      if (old_input_node != null) {\\n        if (this._depends_on_inputs) {\\n          graph_input_node.removeGraphInput(old_input_node);\\n        }\\n      }\\n      if (node != null) {\\n        if (graph_input_node.addGraphInput(node)) {\\n          if (!this._depends_on_inputs) {\\n            graph_input_node.removeGraphInput(node);\\n          }\\n          if (old_connection) {\\n            old_connection.disconnect({setInput: false});\\n          }\\n          this._inputs[input_index] = node;\\n          new TypedNodeConnection(node, this.node, output_index, input_index);\\n        } else {\\n          console.warn(`cannot connect ${node.path()} to ${this.node.path()}`);\\n        }\\n      } else {\\n        this._inputs[input_index] = null;\\n        if (old_connection) {\\n          old_connection.disconnect({setInput: false});\\n        }\\n      }\\n      this._run_on_set_input_hooks();\\n      graph_input_node.setSuccessorsDirty();\\n      this.node.emit(NodeEvent.INPUTS_UPDATED);\\n    }\\n  }\\n  remove_input(node) {\\n    const inputs = this.inputs();\\n    let input;\\n    for (let i = 0; i < inputs.length; i++) {\\n      input = inputs[i];\\n      if (input != null && node != null) {\\n        if (input.graphNodeId() === node.graphNodeId()) {\\n          this.setInput(i, null);\\n        }\\n      }\\n    }\\n  }\\n  input(input_index) {\\n    return this._inputs[input_index];\\n  }\\n  named_input(input_name) {\\n    if (this.hasNamedInputs()) {\\n      const input_index = this.get_input_index(input_name);\\n      return this._inputs[input_index];\\n    } else {\\n      return null;\\n    }\\n  }\\n  named_input_connection_point(input_name) {\\n    if (this.hasNamedInputs() && this._named_input_connection_points) {\\n      const input_index = this.get_input_index(input_name);\\n      return this._named_input_connection_points[input_index];\\n    }\\n  }\\n  has_named_input(name) {\\n    return this.get_named_input_index(name) >= 0;\\n  }\\n  has_input(input_index) {\\n    return this._inputs[input_index] != null;\\n  }\\n  inputs() {\\n    return this._inputs;\\n  }\\n  initInputsClonedState(states) {\\n    if (!this._cloned_states_controller) {\\n      this._cloned_states_controller = new ClonedStatesController2(this);\\n      this._cloned_states_controller.initInputsClonedState(states);\\n    }\\n  }\\n  overrideClonedStateAllowed() {\\n    return this._cloned_states_controller?.overrideClonedStateAllowed() || false;\\n  }\\n  overrideClonedState(state) {\\n    this._cloned_states_controller?.overrideClonedState(state);\\n  }\\n  clonedStateOverriden() {\\n    return this._cloned_states_controller?.overriden() || false;\\n  }\\n  cloneRequired(index) {\\n    const state = this._cloned_states_controller?.cloneRequiredState(index);\\n    if (state != null) {\\n      return state;\\n    }\\n    return true;\\n  }\\n  cloneRequiredStates() {\\n    const states = this._cloned_states_controller?.cloneRequiredStates();\\n    if (states != null) {\\n      return states;\\n    }\\n    return true;\\n  }\\n  add_on_set_input_hook(name, hook) {\\n    this._on_update_hooks = this._on_update_hooks || [];\\n    this._on_update_hook_names = this._on_update_hook_names || [];\\n    if (!this._on_update_hook_names.includes(name)) {\\n      this._on_update_hooks.push(hook);\\n      this._on_update_hook_names.push(name);\\n    } else {\\n      console.warn(`hook with name ${name} already exists`, this.node);\\n    }\\n  }\\n  _run_on_set_input_hooks() {\\n    if (this._on_update_hooks) {\\n      for (let hook of this._on_update_hooks) {\\n        hook();\\n      }\\n    }\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/io/OutputsController.ts\\nvar OutputsController = class {\\n  constructor(node) {\\n    this.node = node;\\n    this._has_outputs = false;\\n    this._has_named_outputs = false;\\n  }\\n  setHasOneOutput() {\\n    this._has_outputs = true;\\n  }\\n  setHasNoOutput() {\\n    this._has_outputs = false;\\n  }\\n  hasOutputs() {\\n    return this._has_outputs;\\n  }\\n  hasNamedOutputs() {\\n    return this._has_named_outputs;\\n  }\\n  hasNamedOutput(name) {\\n    return this.getNamedOutputIndex(name) >= 0;\\n  }\\n  namedOutputConnectionPoints() {\\n    return this._named_output_connection_points || [];\\n  }\\n  namedOutputConnection(index) {\\n    if (this._named_output_connection_points) {\\n      return this._named_output_connection_points[index];\\n    }\\n  }\\n  getNamedOutputIndex(name) {\\n    if (this._named_output_connection_points) {\\n      for (let i = 0; i < this._named_output_connection_points.length; i++) {\\n        if (this._named_output_connection_points[i]?.name() == name) {\\n          return i;\\n        }\\n      }\\n    }\\n    return -1;\\n  }\\n  getOutputIndex(output_index_or_name) {\\n    if (output_index_or_name != null) {\\n      if (CoreType.isString(output_index_or_name)) {\\n        if (this.hasNamedOutputs()) {\\n          return this.getNamedOutputIndex(output_index_or_name);\\n        } else {\\n          console.warn(`node ${this.node.path()} has no named outputs`);\\n          return -1;\\n        }\\n      } else {\\n        return output_index_or_name;\\n      }\\n    }\\n    return -1;\\n  }\\n  namedOutputConnectionPointsByName(name) {\\n    if (this._named_output_connection_points) {\\n      for (let connection_point of this._named_output_connection_points) {\\n        if (connection_point?.name() == name) {\\n          return connection_point;\\n        }\\n      }\\n    }\\n  }\\n  setNamedOutputConnectionPoints(connection_points, set_dirty = true) {\\n    this._has_named_outputs = true;\\n    const connections = this.node.io.connections.outputConnections();\\n    if (connections) {\\n      for (let connection of connections) {\\n        if (connection) {\\n          if (connection.output_index >= connection_points.length) {\\n            connection.disconnect({setInput: true});\\n          }\\n        }\\n      }\\n    }\\n    this._named_output_connection_points = connection_points;\\n    if (set_dirty && this.node.scene()) {\\n      this.node.setDirty(this.node);\\n    }\\n    this.node.emit(NodeEvent.NAMED_OUTPUTS_UPDATED);\\n  }\\n  used_output_names() {\\n    const connections_controller = this.node.io.connections;\\n    if (connections_controller) {\\n      const output_connections = connections_controller.outputConnections();\\n      let output_indices = output_connections.map((connection) => connection ? connection.output_index : null);\\n      output_indices = ArrayUtils.uniq(output_indices);\\n      const used_output_indices = [];\\n      output_indices.forEach((index) => {\\n        if (CoreType.isNumber(index)) {\\n          used_output_indices.push(index);\\n        }\\n      });\\n      const used_output_names = [];\\n      for (let index of used_output_indices) {\\n        const name = this.namedOutputConnectionPoints()[index]?.name();\\n        if (name) {\\n          used_output_names.push(name);\\n        }\\n      }\\n      return used_output_names;\\n    } else {\\n      return [];\\n    }\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/io/ConnectionsController.ts\\nvar ConnectionsController = class {\\n  constructor(_node) {\\n    this._node = _node;\\n    this._output_connections = new Map();\\n  }\\n  initInputs() {\\n    const count = this._node.io.inputs.maxInputsCount();\\n    this._input_connections = this._input_connections || new Array(count);\\n    while (this._input_connections.length < count) {\\n      this._input_connections.push(void 0);\\n    }\\n  }\\n  addInputConnection(connection) {\\n    if (this._input_connections) {\\n      this._input_connections[connection.input_index] = connection;\\n    } else {\\n      console.warn(`input connections array not initialized`);\\n    }\\n  }\\n  removeInputConnection(connection) {\\n    if (this._input_connections) {\\n      if (connection.input_index < this._input_connections.length) {\\n        this._input_connections[connection.input_index] = void 0;\\n        let all_connections_after_are_undefined = true;\\n        for (let i = connection.input_index; i < this._input_connections.length; i++) {\\n          if (this._input_connections[i]) {\\n            all_connections_after_are_undefined = false;\\n          }\\n        }\\n        if (all_connections_after_are_undefined) {\\n          this._input_connections = this._input_connections.slice(0, connection.input_index);\\n        }\\n      } else {\\n        console.warn(`attempt to remove an input connection at index ${connection.input_index}`);\\n      }\\n    } else {\\n      console.warn(`input connections array not initialized`);\\n    }\\n  }\\n  inputConnection(index) {\\n    if (this._input_connections) {\\n      return this._input_connections[index];\\n    }\\n  }\\n  firstInputConnection() {\\n    if (this._input_connections) {\\n      return ArrayUtils.compact(this._input_connections)[0];\\n    } else {\\n      return null;\\n    }\\n  }\\n  inputConnections() {\\n    return this._input_connections;\\n  }\\n  existingInputConnections() {\\n    const current_connections = this._input_connections;\\n    if (current_connections) {\\n      while (current_connections.length > 1 && current_connections[current_connections.length - 1] === void 0) {\\n        current_connections.pop();\\n      }\\n    }\\n    return current_connections;\\n  }\\n  addOutputConnection(connection) {\\n    const output_index = connection.output_index;\\n    const id = connection.id;\\n    let connections_by_id = this._output_connections.get(output_index);\\n    if (!connections_by_id) {\\n      connections_by_id = new Map();\\n      this._output_connections.set(output_index, connections_by_id);\\n    }\\n    connections_by_id.set(id, connection);\\n  }\\n  removeOutputConnection(connection) {\\n    const output_index = connection.output_index;\\n    const id = connection.id;\\n    let connections_by_id = this._output_connections.get(output_index);\\n    if (connections_by_id) {\\n      connections_by_id.delete(id);\\n    }\\n  }\\n  outputConnections() {\\n    let list = [];\\n    this._output_connections.forEach((connections_by_id, output_index) => {\\n      connections_by_id.forEach((connection, id) => {\\n        if (connection) {\\n          list.push(connection);\\n        }\\n      });\\n    });\\n    return list;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/io/SavedConnectionPointsDataController.ts\\nvar SavedConnectionPointsDataController = class {\\n  constructor(_node) {\\n    this._node = _node;\\n  }\\n  set_in(data) {\\n    this._in = data;\\n  }\\n  set_out(data) {\\n    this._out = data;\\n  }\\n  clear() {\\n    this._in = void 0;\\n    this._out = void 0;\\n  }\\n  in() {\\n    return this._in;\\n  }\\n  out() {\\n    return this._out;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/io/connections/_Base.ts\\nvar BaseConnectionPoint = class {\\n  constructor(_name, _type, _init_value) {\\n    this._name = _name;\\n    this._type = _type;\\n    this._init_value = _init_value;\\n  }\\n  get init_value() {\\n    return this._init_value;\\n  }\\n  name() {\\n    return this._name;\\n  }\\n  type() {\\n    return this._type;\\n  }\\n  are_types_matched(src_type, dest_type) {\\n    return true;\\n  }\\n  toJSON() {\\n    return this._json = this._json || this._create_json();\\n  }\\n  _create_json() {\\n    return {\\n      name: this._name,\\n      type: this._type\\n    };\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/io/connections/Gl.ts\\nvar GlConnectionPointType;\\n(function(GlConnectionPointType2) {\\n  GlConnectionPointType2[\\\\\\\"BOOL\\\\\\\"] = \\\\\\\"bool\\\\\\\";\\n  GlConnectionPointType2[\\\\\\\"INT\\\\\\\"] = \\\\\\\"int\\\\\\\";\\n  GlConnectionPointType2[\\\\\\\"FLOAT\\\\\\\"] = \\\\\\\"float\\\\\\\";\\n  GlConnectionPointType2[\\\\\\\"VEC2\\\\\\\"] = \\\\\\\"vec2\\\\\\\";\\n  GlConnectionPointType2[\\\\\\\"VEC3\\\\\\\"] = \\\\\\\"vec3\\\\\\\";\\n  GlConnectionPointType2[\\\\\\\"VEC4\\\\\\\"] = \\\\\\\"vec4\\\\\\\";\\n  GlConnectionPointType2[\\\\\\\"SAMPLER_2D\\\\\\\"] = \\\\\\\"sampler2D\\\\\\\";\\n  GlConnectionPointType2[\\\\\\\"SSS_MODEL\\\\\\\"] = \\\\\\\"SSSModel\\\\\\\";\\n})(GlConnectionPointType || (GlConnectionPointType = {}));\\nvar GL_CONNECTION_POINT_TYPES = [\\n  GlConnectionPointType.BOOL,\\n  GlConnectionPointType.INT,\\n  GlConnectionPointType.FLOAT,\\n  GlConnectionPointType.VEC2,\\n  GlConnectionPointType.VEC3,\\n  GlConnectionPointType.VEC4\\n];\\nvar GlConnectionPointTypeToParamTypeMap = {\\n  [GlConnectionPointType.BOOL]: ParamType.BOOLEAN,\\n  [GlConnectionPointType.INT]: ParamType.INTEGER,\\n  [GlConnectionPointType.FLOAT]: ParamType.FLOAT,\\n  [GlConnectionPointType.VEC2]: ParamType.VECTOR2,\\n  [GlConnectionPointType.VEC3]: ParamType.VECTOR3,\\n  [GlConnectionPointType.VEC4]: ParamType.VECTOR4,\\n  [GlConnectionPointType.SAMPLER_2D]: ParamType.RAMP,\\n  [GlConnectionPointType.SSS_MODEL]: ParamType.STRING\\n};\\nvar GLParamTypeToConnectionPointTypeMap = {\\n  [ParamType.BOOLEAN]: GlConnectionPointType.BOOL,\\n  [ParamType.COLOR]: GlConnectionPointType.VEC3,\\n  [ParamType.INTEGER]: GlConnectionPointType.INT,\\n  [ParamType.FLOAT]: GlConnectionPointType.FLOAT,\\n  [ParamType.FOLDER]: void 0,\\n  [ParamType.VECTOR2]: GlConnectionPointType.VEC2,\\n  [ParamType.VECTOR3]: GlConnectionPointType.VEC3,\\n  [ParamType.VECTOR4]: GlConnectionPointType.VEC4,\\n  [ParamType.BUTTON]: void 0,\\n  [ParamType.OPERATOR_PATH]: void 0,\\n  [ParamType.PARAM_PATH]: void 0,\\n  [ParamType.NODE_PATH]: void 0,\\n  [ParamType.RAMP]: void 0,\\n  [ParamType.STRING]: void 0\\n};\\nvar GlConnectionPointInitValueMap = {\\n  [GlConnectionPointType.BOOL]: false,\\n  [GlConnectionPointType.INT]: 0,\\n  [GlConnectionPointType.FLOAT]: 0,\\n  [GlConnectionPointType.VEC2]: [0, 0],\\n  [GlConnectionPointType.VEC3]: [0, 0, 0],\\n  [GlConnectionPointType.VEC4]: [0, 0, 0, 0],\\n  [GlConnectionPointType.SAMPLER_2D]: RampParam.DEFAULT_VALUE_JSON,\\n  [GlConnectionPointType.SSS_MODEL]: \\\\\\\"SSSModel()\\\\\\\"\\n};\\nvar GlConnectionPointComponentsCountMap = {\\n  [GlConnectionPointType.BOOL]: 1,\\n  [GlConnectionPointType.INT]: 1,\\n  [GlConnectionPointType.FLOAT]: 1,\\n  [GlConnectionPointType.VEC2]: 2,\\n  [GlConnectionPointType.VEC3]: 3,\\n  [GlConnectionPointType.VEC4]: 4,\\n  [GlConnectionPointType.SAMPLER_2D]: 1,\\n  [GlConnectionPointType.SSS_MODEL]: 1\\n};\\nvar GlConnectionPoint = class extends BaseConnectionPoint {\\n  constructor(_name, _type, _init_value) {\\n    super(_name, _type);\\n    this._name = _name;\\n    this._type = _type;\\n    this._init_value = _init_value;\\n    this._init_value = this._init_value || GlConnectionPointInitValueMap[this._type];\\n  }\\n  type() {\\n    return this._type;\\n  }\\n  are_types_matched(src_type, dest_type) {\\n    return src_type == dest_type;\\n  }\\n  get param_type() {\\n    return GlConnectionPointTypeToParamTypeMap[this._type];\\n  }\\n  get init_value() {\\n    return this._init_value;\\n  }\\n  toJSON() {\\n    return this._json = this._json || this._create_json();\\n  }\\n  _create_json() {\\n    return {\\n      name: this._name,\\n      type: this._type\\n    };\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/io/connections/Js.ts\\nvar JsConnectionPointType;\\n(function(JsConnectionPointType2) {\\n  JsConnectionPointType2[\\\\\\\"BOOL\\\\\\\"] = \\\\\\\"bool\\\\\\\";\\n  JsConnectionPointType2[\\\\\\\"INT\\\\\\\"] = \\\\\\\"int\\\\\\\";\\n  JsConnectionPointType2[\\\\\\\"FLOAT\\\\\\\"] = \\\\\\\"float\\\\\\\";\\n  JsConnectionPointType2[\\\\\\\"VEC2\\\\\\\"] = \\\\\\\"vec2\\\\\\\";\\n  JsConnectionPointType2[\\\\\\\"VEC3\\\\\\\"] = \\\\\\\"vec3\\\\\\\";\\n  JsConnectionPointType2[\\\\\\\"VEC4\\\\\\\"] = \\\\\\\"vec4\\\\\\\";\\n})(JsConnectionPointType || (JsConnectionPointType = {}));\\nvar JS_CONNECTION_POINT_TYPES = [\\n  JsConnectionPointType.BOOL,\\n  JsConnectionPointType.INT,\\n  JsConnectionPointType.FLOAT,\\n  JsConnectionPointType.VEC2,\\n  JsConnectionPointType.VEC3,\\n  JsConnectionPointType.VEC4\\n];\\nvar JsConnectionPointTypeToParamTypeMap = {\\n  [JsConnectionPointType.BOOL]: ParamType.BOOLEAN,\\n  [JsConnectionPointType.INT]: ParamType.INTEGER,\\n  [JsConnectionPointType.FLOAT]: ParamType.FLOAT,\\n  [JsConnectionPointType.VEC2]: ParamType.VECTOR2,\\n  [JsConnectionPointType.VEC3]: ParamType.VECTOR3,\\n  [JsConnectionPointType.VEC4]: ParamType.VECTOR4\\n};\\nvar JsParamTypeToConnectionPointTypeMap = {\\n  [ParamType.BOOLEAN]: JsConnectionPointType.BOOL,\\n  [ParamType.COLOR]: JsConnectionPointType.VEC3,\\n  [ParamType.INTEGER]: JsConnectionPointType.INT,\\n  [ParamType.FLOAT]: JsConnectionPointType.FLOAT,\\n  [ParamType.FOLDER]: void 0,\\n  [ParamType.VECTOR2]: JsConnectionPointType.VEC2,\\n  [ParamType.VECTOR3]: JsConnectionPointType.VEC3,\\n  [ParamType.VECTOR4]: JsConnectionPointType.VEC4,\\n  [ParamType.BUTTON]: void 0,\\n  [ParamType.OPERATOR_PATH]: void 0,\\n  [ParamType.PARAM_PATH]: void 0,\\n  [ParamType.NODE_PATH]: void 0,\\n  [ParamType.RAMP]: void 0,\\n  [ParamType.STRING]: void 0\\n};\\nvar JsConnectionPointInitValueMap = {\\n  [JsConnectionPointType.BOOL]: false,\\n  [JsConnectionPointType.INT]: 0,\\n  [JsConnectionPointType.FLOAT]: 0,\\n  [JsConnectionPointType.VEC2]: [0, 0],\\n  [JsConnectionPointType.VEC3]: [0, 0, 0],\\n  [JsConnectionPointType.VEC4]: [0, 0, 0, 0]\\n};\\nvar GlConnectionPointComponentsCountMap2 = {\\n  [JsConnectionPointType.BOOL]: 1,\\n  [JsConnectionPointType.INT]: 1,\\n  [JsConnectionPointType.FLOAT]: 1,\\n  [JsConnectionPointType.VEC2]: 2,\\n  [JsConnectionPointType.VEC3]: 3,\\n  [JsConnectionPointType.VEC4]: 4\\n};\\nvar JsConnectionPoint = class extends BaseConnectionPoint {\\n  constructor(_name, _type) {\\n    super(_name, _type);\\n    this._name = _name;\\n    this._type = _type;\\n    this._init_value = JsConnectionPointInitValueMap[this._type];\\n  }\\n  type() {\\n    return this._type;\\n  }\\n  are_types_matched(src_type, dest_type) {\\n    return src_type == dest_type;\\n  }\\n  get param_type() {\\n    return JsConnectionPointTypeToParamTypeMap[this._type];\\n  }\\n  get init_value() {\\n    return this._init_value;\\n  }\\n  toJSON() {\\n    return this._json = this._json || this._create_json();\\n  }\\n  _create_json() {\\n    return {\\n      name: this._name,\\n      type: this._type\\n    };\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/io/connections/Event.ts\\nvar EventConnectionPointType;\\n(function(EventConnectionPointType2) {\\n  EventConnectionPointType2[\\\\\\\"BASE\\\\\\\"] = \\\\\\\"base\\\\\\\";\\n  EventConnectionPointType2[\\\\\\\"DRAG\\\\\\\"] = \\\\\\\"drag\\\\\\\";\\n  EventConnectionPointType2[\\\\\\\"KEYBOARD\\\\\\\"] = \\\\\\\"keyboard\\\\\\\";\\n  EventConnectionPointType2[\\\\\\\"MOUSE\\\\\\\"] = \\\\\\\"mouse\\\\\\\";\\n  EventConnectionPointType2[\\\\\\\"POINTER\\\\\\\"] = \\\\\\\"pointer\\\\\\\";\\n})(EventConnectionPointType || (EventConnectionPointType = {}));\\nvar EventConnectionPoint = class extends BaseConnectionPoint {\\n  constructor(_name, _type, _event_listener) {\\n    super(_name, _type);\\n    this._name = _name;\\n    this._type = _type;\\n    this._event_listener = _event_listener;\\n  }\\n  type() {\\n    return this._type;\\n  }\\n  get param_type() {\\n    return ParamType.FLOAT;\\n  }\\n  are_types_matched(src_type, dest_type) {\\n    if (dest_type == EventConnectionPointType.BASE) {\\n      return true;\\n    } else {\\n      return src_type == dest_type;\\n    }\\n  }\\n  get event_listener() {\\n    return this._event_listener;\\n  }\\n  toJSON() {\\n    return this._json = this._json || this._create_json();\\n  }\\n  _create_json() {\\n    return {\\n      name: this._name,\\n      type: this._type\\n    };\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/io/connections/ConnectionMap.ts\\nvar DEFAULT_CONNECTION_POINT_ENUM_MAP = {\\n  [NodeContext.ANIM]: void 0,\\n  [NodeContext.COP]: void 0,\\n  [NodeContext.EVENT]: EventConnectionPointType.BASE,\\n  [NodeContext.GL]: GlConnectionPointType.FLOAT,\\n  [NodeContext.JS]: JsConnectionPointType.FLOAT,\\n  [NodeContext.MANAGER]: void 0,\\n  [NodeContext.MAT]: void 0,\\n  [NodeContext.OBJ]: void 0,\\n  [NodeContext.POST]: void 0,\\n  [NodeContext.ROP]: void 0,\\n  [NodeContext.SOP]: void 0\\n};\\nfunction create_connection_point(context, name, type) {\\n  switch (context) {\\n    case NodeContext.EVENT: {\\n      return new EventConnectionPoint(name, type);\\n    }\\n    case NodeContext.GL: {\\n      return new GlConnectionPoint(name, type);\\n    }\\n    case NodeContext.JS: {\\n      return new JsConnectionPoint(name, type);\\n    }\\n    default: {\\n      return void 0;\\n    }\\n  }\\n}\\nfunction param_type_to_connection_point_type_map(context) {\\n  switch (context) {\\n    case NodeContext.EVENT: {\\n      return void 0;\\n    }\\n    case NodeContext.GL: {\\n      return GLParamTypeToConnectionPointTypeMap;\\n    }\\n    case NodeContext.JS: {\\n      return JsParamTypeToConnectionPointTypeMap;\\n    }\\n    default: {\\n      return void 0;\\n    }\\n  }\\n}\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/io/ConnectionPointsSpareParamsController.ts\\nvar ConnectionPointsSpareParamsController = class {\\n  constructor(node, _context2) {\\n    this.node = node;\\n    this._context = _context2;\\n    this._raw_input_serialized_by_param_name = new Map();\\n    this._default_value_serialized_by_param_name = new Map();\\n    this._initialized = false;\\n  }\\n  initializeNode() {\\n    if (this._initialized) {\\n      console.warn(\\\\\\\"already initialized\\\\\\\", this.node);\\n      return;\\n    }\\n    this._initialized = true;\\n    this.node.params.onParamsCreated(\\\\\\\"create_inputs_from_params\\\\\\\", this.create_inputs_from_params.bind(this));\\n  }\\n  initialized() {\\n    return this._initialized;\\n  }\\n  create_inputs_from_params() {\\n    const connection_type_map = param_type_to_connection_point_type_map(this._context);\\n    if (!connection_type_map) {\\n      return;\\n    }\\n    const connection_points = [];\\n    for (let param_name of this.node.params.names) {\\n      let add_input = true;\\n      if (this._inputless_param_names && this._inputless_param_names.length > 0 && this._inputless_param_names.includes(param_name)) {\\n        add_input = false;\\n      }\\n      if (add_input) {\\n        if (this.node.params.has(param_name)) {\\n          const param = this.node.params.get(param_name);\\n          if (param && !param.parent_param) {\\n            const connection_type = connection_type_map[param.type()];\\n            if (connection_type) {\\n              const connection_point = create_connection_point(this._context, param.name(), connection_type);\\n              if (connection_point) {\\n                connection_points.push(connection_point);\\n              }\\n            }\\n          }\\n        }\\n      }\\n    }\\n    this.node.io.inputs.setNamedInputConnectionPoints(connection_points);\\n  }\\n  set_inputless_param_names(names) {\\n    return this._inputless_param_names = names;\\n  }\\n  createSpareParameters() {\\n    if (this.node.scene().loadingController.isLoading()) {\\n      return;\\n    }\\n    const current_param_names = this.node.params.spare_names;\\n    const params_update_options = {};\\n    for (let param_name of current_param_names) {\\n      if (this.node.params.has(param_name)) {\\n        const param = this.node.params.get(param_name);\\n        if (param) {\\n          this._raw_input_serialized_by_param_name.set(param_name, param.rawInputSerialized());\\n          this._default_value_serialized_by_param_name.set(param_name, param.defaultValueSerialized());\\n          params_update_options.namesToDelete = params_update_options.namesToDelete || [];\\n          params_update_options.namesToDelete.push(param_name);\\n        }\\n      }\\n    }\\n    for (let connection_point of this.node.io.inputs.namedInputConnectionPoints()) {\\n      if (connection_point) {\\n        const param_name = connection_point.name();\\n        const param_type = connection_point.param_type;\\n        let init_value = connection_point.init_value;\\n        const last_param_init_value = this._default_value_serialized_by_param_name.get(param_name);\\n        let default_value_from_name = this.node.paramDefaultValue(param_name);\\n        if (default_value_from_name != null) {\\n          init_value = default_value_from_name;\\n        } else {\\n          if (last_param_init_value != null) {\\n            init_value = last_param_init_value;\\n          } else {\\n            init_value = connection_point.init_value;\\n          }\\n        }\\n        if (CoreType.isArray(connection_point.init_value)) {\\n          if (CoreType.isNumber(init_value)) {\\n            const array = new Array(connection_point.init_value.length);\\n            array.fill(init_value);\\n            init_value = array;\\n          } else if (CoreType.isArray(init_value)) {\\n            if (init_value.length == connection_point.init_value.length) {\\n              if (last_param_init_value != null) {\\n                init_value = connection_point.init_value;\\n              }\\n            }\\n          }\\n        }\\n        if (init_value != null) {\\n          params_update_options.toAdd = params_update_options.toAdd || [];\\n          params_update_options.toAdd.push({\\n            name: param_name,\\n            type: param_type,\\n            init_value: ObjectUtils.clone(init_value),\\n            raw_input: ObjectUtils.clone(init_value),\\n            options: {\\n              spare: true\\n            }\\n          });\\n        }\\n      }\\n    }\\n    this.node.params.updateParams(params_update_options);\\n    for (let spare_param of this.node.params.spare) {\\n      if (!spare_param.parent_param) {\\n        const raw_input = this._raw_input_serialized_by_param_name.get(spare_param.name());\\n        if (raw_input) {\\n          spare_param.set(raw_input);\\n        }\\n      }\\n    }\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/io/ConnectionPointsController.ts\\nvar ConnectionPointsController = class {\\n  constructor(node, _context2) {\\n    this.node = node;\\n    this._context = _context2;\\n    this._create_spare_params_from_inputs = true;\\n    this._functions_overridden = false;\\n    this._input_name_function = (index) => {\\n      return `in${index}`;\\n    };\\n    this._output_name_function = (index) => {\\n      return index == 0 ? \\\\\\\"val\\\\\\\" : `val${index}`;\\n    };\\n    this._expected_input_types_function = () => {\\n      const type = this.first_input_connection_type() || this.default_connection_type();\\n      return [type, type];\\n    };\\n    this._expected_output_types_function = () => {\\n      return [this._expected_input_types_function()[0]];\\n    };\\n    this._update_signature_if_required_bound = this.update_signature_if_required.bind(this);\\n    this._initialized = false;\\n    this._spare_params_controller = new ConnectionPointsSpareParamsController(this.node, this._context);\\n  }\\n  default_connection_type() {\\n    return DEFAULT_CONNECTION_POINT_ENUM_MAP[this._context];\\n  }\\n  create_connection_point(name, type) {\\n    return create_connection_point(this._context, name, type);\\n  }\\n  functions_overridden() {\\n    return this._functions_overridden;\\n  }\\n  initialized() {\\n    return this._initialized;\\n  }\\n  set_create_spare_params_from_inputs(state) {\\n    this._create_spare_params_from_inputs = state;\\n  }\\n  set_input_name_function(func) {\\n    this._initialize_if_required();\\n    this._input_name_function = func;\\n  }\\n  set_output_name_function(func) {\\n    this._initialize_if_required();\\n    this._output_name_function = func;\\n  }\\n  set_expected_input_types_function(func) {\\n    this._initialize_if_required();\\n    this._functions_overridden = true;\\n    this._expected_input_types_function = func;\\n  }\\n  set_expected_output_types_function(func) {\\n    this._initialize_if_required();\\n    this._functions_overridden = true;\\n    this._expected_output_types_function = func;\\n  }\\n  input_name(index) {\\n    return this._wrapped_input_name_function(index);\\n  }\\n  output_name(index) {\\n    return this._wrapped_output_name_function(index);\\n  }\\n  initializeNode() {\\n    if (this._initialized) {\\n      console.warn(\\\\\\\"already initialized\\\\\\\", this.node);\\n      return;\\n    }\\n    this._initialized = true;\\n    this.node.io.inputs.add_on_set_input_hook(\\\\\\\"_update_signature_if_required\\\\\\\", this._update_signature_if_required_bound);\\n    this.node.params.addOnSceneLoadHook(\\\\\\\"_update_signature_if_required\\\\\\\", this._update_signature_if_required_bound);\\n    this.node.params.onParamsCreated(\\\\\\\"_update_signature_if_required_bound\\\\\\\", this._update_signature_if_required_bound);\\n    this.node.addPostDirtyHook(\\\\\\\"_update_signature_if_required\\\\\\\", this._update_signature_if_required_bound);\\n    if (!this._spare_params_controller.initialized()) {\\n      this._spare_params_controller.initializeNode();\\n    }\\n  }\\n  _initialize_if_required() {\\n    if (!this._initialized) {\\n      this.initializeNode();\\n    }\\n  }\\n  get spare_params() {\\n    return this._spare_params_controller;\\n  }\\n  update_signature_if_required(dirty_trigger) {\\n    if (!this.node.lifecycle.creationCompleted() || !this._connections_match_inputs()) {\\n      this.update_connection_types();\\n      this.node.removeDirtyState();\\n      if (!this.node.scene().loadingController.isLoading()) {\\n        this.make_successors_update_signatures();\\n      }\\n    }\\n  }\\n  make_successors_update_signatures() {\\n    const successors = this.node.graphAllSuccessors();\\n    if (this.node.childrenAllowed()) {\\n      const subnet_inputs = this.node.nodesByType(NetworkChildNodeType.INPUT);\\n      const subnet_outputs = this.node.nodesByType(NetworkChildNodeType.OUTPUT);\\n      for (let subnet_input of subnet_inputs) {\\n        successors.push(subnet_input);\\n      }\\n      for (let subnet_output of subnet_outputs) {\\n        successors.push(subnet_output);\\n      }\\n    }\\n    for (let graph_node of successors) {\\n      const node = graph_node;\\n      if (node.io && node.io.has_connection_points_controller && node.io.connection_points.initialized()) {\\n        node.io.connection_points.update_signature_if_required(this.node);\\n      }\\n    }\\n  }\\n  update_connection_types() {\\n    const set_dirty = false;\\n    const expected_input_types = this._wrapped_expected_input_types_function();\\n    const expected_output_types = this._wrapped_expected_output_types_function();\\n    const named_input_connection_points = [];\\n    for (let i = 0; i < expected_input_types.length; i++) {\\n      const type = expected_input_types[i];\\n      const point = this.create_connection_point(this._wrapped_input_name_function(i), type);\\n      named_input_connection_points.push(point);\\n    }\\n    const named_output_connect_points = [];\\n    for (let i = 0; i < expected_output_types.length; i++) {\\n      const type = expected_output_types[i];\\n      const point = this.create_connection_point(this._wrapped_output_name_function(i), type);\\n      named_output_connect_points.push(point);\\n    }\\n    this.node.io.inputs.setNamedInputConnectionPoints(named_input_connection_points);\\n    this.node.io.outputs.setNamedOutputConnectionPoints(named_output_connect_points, set_dirty);\\n    if (this._create_spare_params_from_inputs) {\\n      this._spare_params_controller.createSpareParameters();\\n    }\\n  }\\n  _connections_match_inputs() {\\n    const current_input_types = this.node.io.inputs.namedInputConnectionPoints().map((c) => c?.type());\\n    const current_output_types = this.node.io.outputs.namedOutputConnectionPoints().map((c) => c?.type());\\n    const expected_input_types = this._wrapped_expected_input_types_function();\\n    const expected_output_types = this._wrapped_expected_output_types_function();\\n    if (expected_input_types.length != current_input_types.length) {\\n      return false;\\n    }\\n    if (expected_output_types.length != current_output_types.length) {\\n      return false;\\n    }\\n    for (let i = 0; i < current_input_types.length; i++) {\\n      if (current_input_types[i] != expected_input_types[i]) {\\n        return false;\\n      }\\n    }\\n    for (let i = 0; i < current_output_types.length; i++) {\\n      if (current_output_types[i] != expected_output_types[i]) {\\n        return false;\\n      }\\n    }\\n    return true;\\n  }\\n  _wrapped_expected_input_types_function() {\\n    if (this.node.scene().loadingController.isLoading()) {\\n      const in_data = this.node.io.saved_connection_points_data.in();\\n      if (in_data) {\\n        return in_data.map((d) => d.type);\\n      }\\n    }\\n    return this._expected_input_types_function();\\n  }\\n  _wrapped_expected_output_types_function() {\\n    if (this.node.scene().loadingController.isLoading()) {\\n      const out_data = this.node.io.saved_connection_points_data.out();\\n      if (out_data) {\\n        return out_data.map((d) => d.type);\\n      }\\n    }\\n    return this._expected_output_types_function();\\n  }\\n  _wrapped_input_name_function(index) {\\n    if (this.node.scene().loadingController.isLoading()) {\\n      const in_data = this.node.io.saved_connection_points_data.in();\\n      if (in_data) {\\n        return in_data[index].name;\\n      }\\n    }\\n    return this._input_name_function(index);\\n  }\\n  _wrapped_output_name_function(index) {\\n    if (this.node.scene().loadingController.isLoading()) {\\n      const out_data = this.node.io.saved_connection_points_data.out();\\n      if (out_data) {\\n        return out_data[index].name;\\n      }\\n    }\\n    return this._output_name_function(index);\\n  }\\n  first_input_connection_type() {\\n    return this.input_connection_type(0);\\n  }\\n  input_connection_type(index) {\\n    const connections = this.node.io.connections.inputConnections();\\n    if (connections) {\\n      const connection = connections[index];\\n      if (connection) {\\n        return connection.src_connection_point().type();\\n      }\\n    }\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/io/IOController.ts\\nvar IOController = class {\\n  constructor(node) {\\n    this.node = node;\\n    this._connections = new ConnectionsController(this.node);\\n  }\\n  get connections() {\\n    return this._connections;\\n  }\\n  get inputs() {\\n    return this._inputs = this._inputs || new InputsController2(this.node);\\n  }\\n  has_inputs() {\\n    return this._inputs != null;\\n  }\\n  get outputs() {\\n    return this._outputs = this._outputs || new OutputsController(this.node);\\n  }\\n  has_outputs() {\\n    return this._outputs != null;\\n  }\\n  get connection_points() {\\n    return this._connection_points = this._connection_points || new ConnectionPointsController(this.node, this.node.context());\\n  }\\n  get has_connection_points_controller() {\\n    return this._connection_points != null;\\n  }\\n  get saved_connection_points_data() {\\n    return this._saved_connection_points_data = this._saved_connection_points_data || new SavedConnectionPointsDataController(this.node);\\n  }\\n  clear_saved_connection_points_data() {\\n    if (this._saved_connection_points_data) {\\n      this._saved_connection_points_data.clear();\\n      this._saved_connection_points_data = void 0;\\n    }\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/params/ParamsAccessor.ts\\nvar ParamsAccessor = class {\\n  constructor() {\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/_Base.ts\\nvar TypedNode = class extends CoreGraphNode {\\n  constructor(scene, name = \\\\\\\"BaseNode\\\\\\\", params_init_value_overrides) {\\n    super(scene, name);\\n    this.params_init_value_overrides = params_init_value_overrides;\\n    this.containerController = new TypedContainerController(this);\\n    this.pv = new ParamsValueAccessor();\\n    this.p = new ParamsAccessor();\\n    this._initialized = false;\\n  }\\n  copy_param_values(node) {\\n    const non_spare = this.params.non_spare;\\n    for (let param of non_spare) {\\n      const other_param = node.params.get(param.name());\\n      if (other_param) {\\n        param.copy_value(other_param);\\n      }\\n    }\\n  }\\n  get parentController() {\\n    return this._parent_controller = this._parent_controller || new HierarchyParentController(this);\\n  }\\n  static displayedInputNames() {\\n    return [];\\n  }\\n  get childrenControllerContext() {\\n    return this._children_controller_context;\\n  }\\n  _create_children_controller() {\\n    if (this._children_controller_context) {\\n      return new HierarchyChildrenController(this, this._children_controller_context);\\n    }\\n  }\\n  get childrenController() {\\n    return this._children_controller = this._children_controller || this._create_children_controller();\\n  }\\n  childrenAllowed() {\\n    return this._children_controller_context != null;\\n  }\\n  get uiData() {\\n    return this._ui_data = this._ui_data || new UIData(this);\\n  }\\n  get states() {\\n    return this._states = this._states || new StatesController(this);\\n  }\\n  get lifecycle() {\\n    return this._lifecycle = this._lifecycle || new LifeCycleController(this);\\n  }\\n  get serializer() {\\n    return this._serializer = this._serializer || new NodeSerializer(this);\\n  }\\n  get cookController() {\\n    return this._cook_controller = this._cook_controller || new NodeCookController(this);\\n  }\\n  get io() {\\n    return this._io = this._io || new IOController(this);\\n  }\\n  get nameController() {\\n    return this._name_controller = this._name_controller || new NameController(this);\\n  }\\n  setName(name) {\\n    this.nameController.setName(name);\\n  }\\n  _set_core_name(name) {\\n    this._name = name;\\n  }\\n  get params() {\\n    return this._params_controller = this._params_controller || new ParamsController(this);\\n  }\\n  initialize_base_and_node() {\\n    if (!this._initialized) {\\n      this._initialized = true;\\n      this.displayNodeController?.initializeNode();\\n      this.initializeBaseNode();\\n      this.initializeNode();\\n      if (this.polyNodeController) {\\n        this.polyNodeController.initializeNode();\\n      }\\n    } else {\\n      console.warn(\\\\\\\"node already initialized\\\\\\\");\\n    }\\n  }\\n  initializeBaseNode() {\\n  }\\n  initializeNode() {\\n  }\\n  static type() {\\n    throw \\\\\\\"type to be overriden\\\\\\\";\\n  }\\n  type() {\\n    const c = this.constructor;\\n    return c.type();\\n  }\\n  static context() {\\n    console.error(\\\\\\\"node has no node_context\\\\\\\", this);\\n    throw \\\\\\\"context requires override\\\\\\\";\\n  }\\n  context() {\\n    const c = this.constructor;\\n    return c.context();\\n  }\\n  static require_webgl2() {\\n    return false;\\n  }\\n  require_webgl2() {\\n    const c = this.constructor;\\n    return c.require_webgl2();\\n  }\\n  setParent(parent) {\\n    this.parentController.setParent(parent);\\n  }\\n  parent() {\\n    return this.parentController.parent();\\n  }\\n  firstAncestorWithContext(context) {\\n    return this.parentController.firstAncestorWithContext(context);\\n  }\\n  root() {\\n    return this._scene.root();\\n  }\\n  path(relative_to_parent) {\\n    return this.parentController.path(relative_to_parent);\\n  }\\n  createParams() {\\n  }\\n  addParam(type, name, default_value, options) {\\n    return this._params_controller?.addParam(type, name, default_value, options);\\n  }\\n  paramDefaultValue(name) {\\n    return null;\\n  }\\n  cook(input_contents) {\\n    return null;\\n  }\\n  onCookEnd(callbackName, callback) {\\n    this.cookController.registerOnCookEnd(callbackName, callback);\\n  }\\n  async compute() {\\n    if (this.isDirty() || this.flags?.bypass?.active()) {\\n      return await this.containerController.compute();\\n    } else {\\n      return this.containerController.container();\\n    }\\n  }\\n  _setContainer(content, message = null) {\\n    this.containerController.container().set_content(content);\\n    if (content != null) {\\n      if (!content.name) {\\n        content.name = this.path();\\n      }\\n      if (!content.node) {\\n        content.node = this;\\n      }\\n    }\\n    this.cookController.endCook(message);\\n  }\\n  createNode(nodeClass, params_init_value_overrides) {\\n    return this.childrenController?.createNode(nodeClass, params_init_value_overrides);\\n  }\\n  create_operation_container(type, operation_container_name, params_init_value_overrides) {\\n    return this.childrenController?.create_operation_container(type, operation_container_name, params_init_value_overrides);\\n  }\\n  removeNode(node) {\\n    this.childrenController?.removeNode(node);\\n  }\\n  dispose() {\\n    super.dispose();\\n    this.setParent(null);\\n    this.io.inputs.dispose();\\n    this.lifecycle.dispose();\\n    this.displayNodeController?.dispose();\\n    this.nameController.dispose();\\n    this.childrenController?.dispose();\\n    this.params.dispose();\\n  }\\n  children() {\\n    return this.childrenController?.children() || [];\\n  }\\n  node(path) {\\n    return this.parentController?.findNode(path) || null;\\n  }\\n  nodeSibbling(name) {\\n    const parent = this.parent();\\n    if (parent) {\\n      const node = parent.childrenController?.childByName(name);\\n      if (node) {\\n        return node;\\n      }\\n    }\\n    return null;\\n  }\\n  nodesByType(type) {\\n    return this.childrenController?.nodesByType(type) || [];\\n  }\\n  setInput(input_index_or_name, node, output_index_or_name = 0) {\\n    this.io.inputs.setInput(input_index_or_name, node, output_index_or_name);\\n  }\\n  emit(event_name, data = null) {\\n    this.scene().dispatchController.dispatch(this, event_name, data);\\n  }\\n  toJSON(include_param_components = false) {\\n    return this.serializer.toJSON(include_param_components);\\n  }\\n  async requiredModules() {\\n  }\\n  usedAssembler() {\\n  }\\n  integrationData() {\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/obj/_Base.ts\\nvar INPUT_OBJECT_NAME = \\\\\\\"parent object\\\\\\\";\\nvar DEFAULT_INPUT_NAMES = [INPUT_OBJECT_NAME, INPUT_OBJECT_NAME, INPUT_OBJECT_NAME, INPUT_OBJECT_NAME];\\nvar ObjNodeRenderOrder;\\n(function(ObjNodeRenderOrder2) {\\n  ObjNodeRenderOrder2[ObjNodeRenderOrder2[\\\\\\\"MANAGER\\\\\\\"] = 0] = \\\\\\\"MANAGER\\\\\\\";\\n  ObjNodeRenderOrder2[ObjNodeRenderOrder2[\\\\\\\"CAMERA\\\\\\\"] = 2] = \\\\\\\"CAMERA\\\\\\\";\\n  ObjNodeRenderOrder2[ObjNodeRenderOrder2[\\\\\\\"LIGHT\\\\\\\"] = 3] = \\\\\\\"LIGHT\\\\\\\";\\n})(ObjNodeRenderOrder || (ObjNodeRenderOrder = {}));\\nvar TypedObjNode = class extends TypedNode {\\n  constructor() {\\n    super(...arguments);\\n    this.renderOrder = 0;\\n    this._children_group = this._create_children_group();\\n    this._attachableToHierarchy = true;\\n    this._used_in_scene = true;\\n  }\\n  static context() {\\n    return NodeContext.OBJ;\\n  }\\n  static displayedInputNames() {\\n    return DEFAULT_INPUT_NAMES;\\n  }\\n  _create_children_group() {\\n    const group = new Group();\\n    group.matrixAutoUpdate = false;\\n    return group;\\n  }\\n  attachableToHierarchy() {\\n    return this._attachableToHierarchy;\\n  }\\n  usedInScene() {\\n    return this._used_in_scene;\\n  }\\n  addObjectToParent(parent) {\\n    if (this.attachableToHierarchy()) {\\n      parent.add(this.object);\\n    }\\n  }\\n  removeObjectFromParent() {\\n    if (this.attachableToHierarchy()) {\\n      const parent = this.object.parent;\\n      if (parent) {\\n        parent.remove(this.object);\\n      }\\n    }\\n  }\\n  initializeBaseNode() {\\n    this._object = this._create_object_with_attributes();\\n    this.nameController.add_post_set_fullPath_hook(this.set_object_name.bind(this));\\n    this.set_object_name();\\n  }\\n  get children_group() {\\n    return this._children_group;\\n  }\\n  get object() {\\n    return this._object;\\n  }\\n  _create_object_with_attributes() {\\n    const object = this.createObject();\\n    object.node = this;\\n    object.add(this._children_group);\\n    return object;\\n  }\\n  set_object_name() {\\n    if (this._object) {\\n      this._object.name = this.path();\\n      this._children_group.name = `${this.path()}:parented_outputs`;\\n    }\\n  }\\n  createObject() {\\n    const object = new Object3D();\\n    object.matrixAutoUpdate = false;\\n    return object;\\n  }\\n  isDisplayNodeCooking() {\\n    if (this.displayNodeController) {\\n      const displayNode = this.displayNodeController.displayNode();\\n      if (displayNode) {\\n        return displayNode.cookController.isCooking();\\n      }\\n    }\\n    return false;\\n  }\\n  isDisplayed() {\\n    return this.flags?.display?.active() || false;\\n  }\\n};\\n\\n// ../../../node_modules/three/src/audio/AudioAnalyser.js\\nvar AudioAnalyser = class {\\n  constructor(audio, fftSize = 2048) {\\n    this.analyser = audio.context.createAnalyser();\\n    this.analyser.fftSize = fftSize;\\n    this.data = new Uint8Array(this.analyser.frequencyBinCount);\\n    audio.getOutput().connect(this.analyser);\\n  }\\n  getFrequencyData() {\\n    this.analyser.getByteFrequencyData(this.data);\\n    return this.data;\\n  }\\n  getAverageFrequency() {\\n    let value = 0;\\n    const data = this.getFrequencyData();\\n    for (let i = 0; i < data.length; i++) {\\n      value += data[i];\\n    }\\n    return value / data.length;\\n  }\\n};\\n\\n// ../../../node_modules/three/src/audio/Audio.js\\nvar Audio2 = class extends Object3D {\\n  constructor(listener) {\\n    super();\\n    this.type = \\\\\\\"Audio\\\\\\\";\\n    this.listener = listener;\\n    this.context = listener.context;\\n    this.gain = this.context.createGain();\\n    this.gain.connect(listener.getInput());\\n    this.autoplay = false;\\n    this.buffer = null;\\n    this.detune = 0;\\n    this.loop = false;\\n    this.loopStart = 0;\\n    this.loopEnd = 0;\\n    this.offset = 0;\\n    this.duration = void 0;\\n    this.playbackRate = 1;\\n    this.isPlaying = false;\\n    this.hasPlaybackControl = true;\\n    this.source = null;\\n    this.sourceType = \\\\\\\"empty\\\\\\\";\\n    this._startedAt = 0;\\n    this._progress = 0;\\n    this._connected = false;\\n    this.filters = [];\\n  }\\n  getOutput() {\\n    return this.gain;\\n  }\\n  setNodeSource(audioNode) {\\n    this.hasPlaybackControl = false;\\n    this.sourceType = \\\\\\\"audioNode\\\\\\\";\\n    this.source = audioNode;\\n    this.connect();\\n    return this;\\n  }\\n  setMediaElementSource(mediaElement) {\\n    this.hasPlaybackControl = false;\\n    this.sourceType = \\\\\\\"mediaNode\\\\\\\";\\n    this.source = this.context.createMediaElementSource(mediaElement);\\n    this.connect();\\n    return this;\\n  }\\n  setMediaStreamSource(mediaStream) {\\n    this.hasPlaybackControl = false;\\n    this.sourceType = \\\\\\\"mediaStreamNode\\\\\\\";\\n    this.source = this.context.createMediaStreamSource(mediaStream);\\n    this.connect();\\n    return this;\\n  }\\n  setBuffer(audioBuffer) {\\n    this.buffer = audioBuffer;\\n    this.sourceType = \\\\\\\"buffer\\\\\\\";\\n    if (this.autoplay)\\n      this.play();\\n    return this;\\n  }\\n  play(delay = 0) {\\n    if (this.isPlaying === true) {\\n      console.warn(\\\\\\\"THREE.Audio: Audio is already playing.\\\\\\\");\\n      return;\\n    }\\n    if (this.hasPlaybackControl === false) {\\n      console.warn(\\\\\\\"THREE.Audio: this Audio has no playback control.\\\\\\\");\\n      return;\\n    }\\n    this._startedAt = this.context.currentTime + delay;\\n    const source = this.context.createBufferSource();\\n    source.buffer = this.buffer;\\n    source.loop = this.loop;\\n    source.loopStart = this.loopStart;\\n    source.loopEnd = this.loopEnd;\\n    source.onended = this.onEnded.bind(this);\\n    source.start(this._startedAt, this._progress + this.offset, this.duration);\\n    this.isPlaying = true;\\n    this.source = source;\\n    this.setDetune(this.detune);\\n    this.setPlaybackRate(this.playbackRate);\\n    return this.connect();\\n  }\\n  pause() {\\n    if (this.hasPlaybackControl === false) {\\n      console.warn(\\\\\\\"THREE.Audio: this Audio has no playback control.\\\\\\\");\\n      return;\\n    }\\n    if (this.isPlaying === true) {\\n      this._progress += Math.max(this.context.currentTime - this._startedAt, 0) * this.playbackRate;\\n      if (this.loop === true) {\\n        this._progress = this._progress % (this.duration || this.buffer.duration);\\n      }\\n      this.source.stop();\\n      this.source.onended = null;\\n      this.isPlaying = false;\\n    }\\n    return this;\\n  }\\n  stop() {\\n    if (this.hasPlaybackControl === false) {\\n      console.warn(\\\\\\\"THREE.Audio: this Audio has no playback control.\\\\\\\");\\n      return;\\n    }\\n    this._progress = 0;\\n    this.source.stop();\\n    this.source.onended = null;\\n    this.isPlaying = false;\\n    return this;\\n  }\\n  connect() {\\n    if (this.filters.length > 0) {\\n      this.source.connect(this.filters[0]);\\n      for (let i = 1, l = this.filters.length; i < l; i++) {\\n        this.filters[i - 1].connect(this.filters[i]);\\n      }\\n      this.filters[this.filters.length - 1].connect(this.getOutput());\\n    } else {\\n      this.source.connect(this.getOutput());\\n    }\\n    this._connected = true;\\n    return this;\\n  }\\n  disconnect() {\\n    if (this.filters.length > 0) {\\n      this.source.disconnect(this.filters[0]);\\n      for (let i = 1, l = this.filters.length; i < l; i++) {\\n        this.filters[i - 1].disconnect(this.filters[i]);\\n      }\\n      this.filters[this.filters.length - 1].disconnect(this.getOutput());\\n    } else {\\n      this.source.disconnect(this.getOutput());\\n    }\\n    this._connected = false;\\n    return this;\\n  }\\n  getFilters() {\\n    return this.filters;\\n  }\\n  setFilters(value) {\\n    if (!value)\\n      value = [];\\n    if (this._connected === true) {\\n      this.disconnect();\\n      this.filters = value.slice();\\n      this.connect();\\n    } else {\\n      this.filters = value.slice();\\n    }\\n    return this;\\n  }\\n  setDetune(value) {\\n    this.detune = value;\\n    if (this.source.detune === void 0)\\n      return;\\n    if (this.isPlaying === true) {\\n      this.source.detune.setTargetAtTime(this.detune, this.context.currentTime, 0.01);\\n    }\\n    return this;\\n  }\\n  getDetune() {\\n    return this.detune;\\n  }\\n  getFilter() {\\n    return this.getFilters()[0];\\n  }\\n  setFilter(filter) {\\n    return this.setFilters(filter ? [filter] : []);\\n  }\\n  setPlaybackRate(value) {\\n    if (this.hasPlaybackControl === false) {\\n      console.warn(\\\\\\\"THREE.Audio: this Audio has no playback control.\\\\\\\");\\n      return;\\n    }\\n    this.playbackRate = value;\\n    if (this.isPlaying === true) {\\n      this.source.playbackRate.setTargetAtTime(this.playbackRate, this.context.currentTime, 0.01);\\n    }\\n    return this;\\n  }\\n  getPlaybackRate() {\\n    return this.playbackRate;\\n  }\\n  onEnded() {\\n    this.isPlaying = false;\\n  }\\n  getLoop() {\\n    if (this.hasPlaybackControl === false) {\\n      console.warn(\\\\\\\"THREE.Audio: this Audio has no playback control.\\\\\\\");\\n      return false;\\n    }\\n    return this.loop;\\n  }\\n  setLoop(value) {\\n    if (this.hasPlaybackControl === false) {\\n      console.warn(\\\\\\\"THREE.Audio: this Audio has no playback control.\\\\\\\");\\n      return;\\n    }\\n    this.loop = value;\\n    if (this.isPlaying === true) {\\n      this.source.loop = this.loop;\\n    }\\n    return this;\\n  }\\n  setLoopStart(value) {\\n    this.loopStart = value;\\n    return this;\\n  }\\n  setLoopEnd(value) {\\n    this.loopEnd = value;\\n    return this;\\n  }\\n  getVolume() {\\n    return this.gain.gain.value;\\n  }\\n  setVolume(value) {\\n    this.gain.gain.setTargetAtTime(value, this.context.currentTime, 0.01);\\n    return this;\\n  }\\n};\\n\\n// ../../../node_modules/three/src/audio/AudioContext.js\\nvar _context;\\nvar AudioContext = {\\n  getContext: function() {\\n    if (_context === void 0) {\\n      _context = new (window.AudioContext || window.webkitAudioContext)();\\n    }\\n    return _context;\\n  },\\n  setContext: function(value) {\\n    _context = value;\\n  }\\n};\\n\\n// ../../../node_modules/three/src/loaders/Cache.js\\nvar Cache = {\\n  enabled: false,\\n  files: {},\\n  add: function(key, file) {\\n    if (this.enabled === false)\\n      return;\\n    this.files[key] = file;\\n  },\\n  get: function(key) {\\n    if (this.enabled === false)\\n      return;\\n    return this.files[key];\\n  },\\n  remove: function(key) {\\n    delete this.files[key];\\n  },\\n  clear: function() {\\n    this.files = {};\\n  }\\n};\\n\\n// ../../../node_modules/three/src/loaders/LoadingManager.js\\nvar LoadingManager = class {\\n  constructor(onLoad, onProgress, onError) {\\n    const scope = this;\\n    let isLoading = false;\\n    let itemsLoaded = 0;\\n    let itemsTotal = 0;\\n    let urlModifier = void 0;\\n    const handlers = [];\\n    this.onStart = void 0;\\n    this.onLoad = onLoad;\\n    this.onProgress = onProgress;\\n    this.onError = onError;\\n    this.itemStart = function(url) {\\n      itemsTotal++;\\n      if (isLoading === false) {\\n        if (scope.onStart !== void 0) {\\n          scope.onStart(url, itemsLoaded, itemsTotal);\\n        }\\n      }\\n      isLoading = true;\\n    };\\n    this.itemEnd = function(url) {\\n      itemsLoaded++;\\n      if (scope.onProgress !== void 0) {\\n        scope.onProgress(url, itemsLoaded, itemsTotal);\\n      }\\n      if (itemsLoaded === itemsTotal) {\\n        isLoading = false;\\n        if (scope.onLoad !== void 0) {\\n          scope.onLoad();\\n        }\\n      }\\n    };\\n    this.itemError = function(url) {\\n      if (scope.onError !== void 0) {\\n        scope.onError(url);\\n      }\\n    };\\n    this.resolveURL = function(url) {\\n      if (urlModifier) {\\n        return urlModifier(url);\\n      }\\n      return url;\\n    };\\n    this.setURLModifier = function(transform) {\\n      urlModifier = transform;\\n      return this;\\n    };\\n    this.addHandler = function(regex, loader) {\\n      handlers.push(regex, loader);\\n      return this;\\n    };\\n    this.removeHandler = function(regex) {\\n      const index = handlers.indexOf(regex);\\n      if (index !== -1) {\\n        handlers.splice(index, 2);\\n      }\\n      return this;\\n    };\\n    this.getHandler = function(file) {\\n      for (let i = 0, l = handlers.length; i < l; i += 2) {\\n        const regex = handlers[i];\\n        const loader = handlers[i + 1];\\n        if (regex.global)\\n          regex.lastIndex = 0;\\n        if (regex.test(file)) {\\n          return loader;\\n        }\\n      }\\n      return null;\\n    };\\n  }\\n};\\nvar DefaultLoadingManager = new LoadingManager();\\n\\n// ../../../node_modules/three/src/loaders/Loader.js\\nvar Loader = class {\\n  constructor(manager) {\\n    this.manager = manager !== void 0 ? manager : DefaultLoadingManager;\\n    this.crossOrigin = \\\\\\\"anonymous\\\\\\\";\\n    this.withCredentials = false;\\n    this.path = \\\\\\\"\\\\\\\";\\n    this.resourcePath = \\\\\\\"\\\\\\\";\\n    this.requestHeader = {};\\n  }\\n  load() {\\n  }\\n  loadAsync(url, onProgress) {\\n    const scope = this;\\n    return new Promise(function(resolve, reject) {\\n      scope.load(url, resolve, onProgress, reject);\\n    });\\n  }\\n  parse() {\\n  }\\n  setCrossOrigin(crossOrigin) {\\n    this.crossOrigin = crossOrigin;\\n    return this;\\n  }\\n  setWithCredentials(value) {\\n    this.withCredentials = value;\\n    return this;\\n  }\\n  setPath(path) {\\n    this.path = path;\\n    return this;\\n  }\\n  setResourcePath(resourcePath) {\\n    this.resourcePath = resourcePath;\\n    return this;\\n  }\\n  setRequestHeader(requestHeader) {\\n    this.requestHeader = requestHeader;\\n    return this;\\n  }\\n};\\n\\n// ../../../node_modules/three/src/loaders/FileLoader.js\\nvar loading = {};\\nvar FileLoader = class extends Loader {\\n  constructor(manager) {\\n    super(manager);\\n  }\\n  load(url, onLoad, onProgress, onError) {\\n    if (url === void 0)\\n      url = \\\\\\\"\\\\\\\";\\n    if (this.path !== void 0)\\n      url = this.path + url;\\n    url = this.manager.resolveURL(url);\\n    const scope = this;\\n    const cached = Cache.get(url);\\n    if (cached !== void 0) {\\n      scope.manager.itemStart(url);\\n      setTimeout(function() {\\n        if (onLoad)\\n          onLoad(cached);\\n        scope.manager.itemEnd(url);\\n      }, 0);\\n      return cached;\\n    }\\n    if (loading[url] !== void 0) {\\n      loading[url].push({\\n        onLoad,\\n        onProgress,\\n        onError\\n      });\\n      return;\\n    }\\n    const dataUriRegex = /^data:(.*?)(;base64)?,(.*)$/;\\n    const dataUriRegexResult = url.match(dataUriRegex);\\n    let request;\\n    if (dataUriRegexResult) {\\n      const mimeType = dataUriRegexResult[1];\\n      const isBase64 = !!dataUriRegexResult[2];\\n      let data = dataUriRegexResult[3];\\n      data = decodeURIComponent(data);\\n      if (isBase64)\\n        data = atob(data);\\n      try {\\n        let response;\\n        const responseType = (this.responseType || \\\\\\\"\\\\\\\").toLowerCase();\\n        switch (responseType) {\\n          case \\\\\\\"arraybuffer\\\\\\\":\\n          case \\\\\\\"blob\\\\\\\":\\n            const view = new Uint8Array(data.length);\\n            for (let i = 0; i < data.length; i++) {\\n              view[i] = data.charCodeAt(i);\\n            }\\n            if (responseType === \\\\\\\"blob\\\\\\\") {\\n              response = new Blob([view.buffer], {type: mimeType});\\n            } else {\\n              response = view.buffer;\\n            }\\n            break;\\n          case \\\\\\\"document\\\\\\\":\\n            const parser = new DOMParser();\\n            response = parser.parseFromString(data, mimeType);\\n            break;\\n          case \\\\\\\"json\\\\\\\":\\n            response = JSON.parse(data);\\n            break;\\n          default:\\n            response = data;\\n            break;\\n        }\\n        setTimeout(function() {\\n          if (onLoad)\\n            onLoad(response);\\n          scope.manager.itemEnd(url);\\n        }, 0);\\n      } catch (error) {\\n        setTimeout(function() {\\n          if (onError)\\n            onError(error);\\n          scope.manager.itemError(url);\\n          scope.manager.itemEnd(url);\\n        }, 0);\\n      }\\n    } else {\\n      loading[url] = [];\\n      loading[url].push({\\n        onLoad,\\n        onProgress,\\n        onError\\n      });\\n      request = new XMLHttpRequest();\\n      request.open(\\\\\\\"GET\\\\\\\", url, true);\\n      request.addEventListener(\\\\\\\"load\\\\\\\", function(event) {\\n        const response = this.response;\\n        const callbacks = loading[url];\\n        delete loading[url];\\n        if (this.status === 200 || this.status === 0) {\\n          if (this.status === 0)\\n            console.warn(\\\\\\\"THREE.FileLoader: HTTP Status 0 received.\\\\\\\");\\n          Cache.add(url, response);\\n          for (let i = 0, il = callbacks.length; i < il; i++) {\\n            const callback = callbacks[i];\\n            if (callback.onLoad)\\n              callback.onLoad(response);\\n          }\\n          scope.manager.itemEnd(url);\\n        } else {\\n          for (let i = 0, il = callbacks.length; i < il; i++) {\\n            const callback = callbacks[i];\\n            if (callback.onError)\\n              callback.onError(event);\\n          }\\n          scope.manager.itemError(url);\\n          scope.manager.itemEnd(url);\\n        }\\n      }, false);\\n      request.addEventListener(\\\\\\\"progress\\\\\\\", function(event) {\\n        const callbacks = loading[url];\\n        for (let i = 0, il = callbacks.length; i < il; i++) {\\n          const callback = callbacks[i];\\n          if (callback.onProgress)\\n            callback.onProgress(event);\\n        }\\n      }, false);\\n      request.addEventListener(\\\\\\\"error\\\\\\\", function(event) {\\n        const callbacks = loading[url];\\n        delete loading[url];\\n        for (let i = 0, il = callbacks.length; i < il; i++) {\\n          const callback = callbacks[i];\\n          if (callback.onError)\\n            callback.onError(event);\\n        }\\n        scope.manager.itemError(url);\\n        scope.manager.itemEnd(url);\\n      }, false);\\n      request.addEventListener(\\\\\\\"abort\\\\\\\", function(event) {\\n        const callbacks = loading[url];\\n        delete loading[url];\\n        for (let i = 0, il = callbacks.length; i < il; i++) {\\n          const callback = callbacks[i];\\n          if (callback.onError)\\n            callback.onError(event);\\n        }\\n        scope.manager.itemError(url);\\n        scope.manager.itemEnd(url);\\n      }, false);\\n      if (this.responseType !== void 0)\\n        request.responseType = this.responseType;\\n      if (this.withCredentials !== void 0)\\n        request.withCredentials = this.withCredentials;\\n      if (request.overrideMimeType)\\n        request.overrideMimeType(this.mimeType !== void 0 ? this.mimeType : \\\\\\\"text/plain\\\\\\\");\\n      for (const header in this.requestHeader) {\\n        request.setRequestHeader(header, this.requestHeader[header]);\\n      }\\n      request.send(null);\\n    }\\n    scope.manager.itemStart(url);\\n    return request;\\n  }\\n  setResponseType(value) {\\n    this.responseType = value;\\n    return this;\\n  }\\n  setMimeType(value) {\\n    this.mimeType = value;\\n    return this;\\n  }\\n};\\n\\n// ../../../node_modules/three/src/loaders/AudioLoader.js\\nvar AudioLoader = class extends Loader {\\n  constructor(manager) {\\n    super(manager);\\n  }\\n  load(url, onLoad, onProgress, onError) {\\n    const scope = this;\\n    const loader = new FileLoader(this.manager);\\n    loader.setResponseType(\\\\\\\"arraybuffer\\\\\\\");\\n    loader.setPath(this.path);\\n    loader.setRequestHeader(this.requestHeader);\\n    loader.setWithCredentials(this.withCredentials);\\n    loader.load(url, function(buffer) {\\n      try {\\n        const bufferCopy = buffer.slice(0);\\n        const context = AudioContext.getContext();\\n        context.decodeAudioData(bufferCopy, function(audioBuffer) {\\n          onLoad(audioBuffer);\\n        });\\n      } catch (e) {\\n        if (onError) {\\n          onError(e);\\n        } else {\\n          console.error(e);\\n        }\\n        scope.manager.itemError(url);\\n      }\\n    }, onProgress, onError);\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/utils/params/ParamsConfig.ts\\nvar ParamTemplate = class {\\n  constructor(type, init_value, options) {\\n    this.type = type;\\n    this.init_value = init_value;\\n    this.options = options;\\n  }\\n};\\nvar ParamConfig = class {\\n  static BUTTON(init_value, options) {\\n    return new ParamTemplate(ParamType.BUTTON, init_value, options);\\n  }\\n  static BOOLEAN(init_value, options) {\\n    return new ParamTemplate(ParamType.BOOLEAN, init_value, options);\\n  }\\n  static COLOR(init_value, options) {\\n    if (init_value instanceof Color) {\\n      init_value = init_value.toArray();\\n    }\\n    return new ParamTemplate(ParamType.COLOR, init_value, options);\\n  }\\n  static FLOAT(init_value, options) {\\n    return new ParamTemplate(ParamType.FLOAT, init_value, options);\\n  }\\n  static FOLDER(init_value = null, options) {\\n    return new ParamTemplate(ParamType.FOLDER, init_value, options);\\n  }\\n  static INTEGER(init_value, options) {\\n    return new ParamTemplate(ParamType.INTEGER, init_value, options);\\n  }\\n  static RAMP(init_value = RampParam.DEFAULT_VALUE, options) {\\n    return new ParamTemplate(ParamType.RAMP, init_value, options);\\n  }\\n  static STRING(init_value = \\\\\\\"\\\\\\\", options) {\\n    return new ParamTemplate(ParamType.STRING, init_value, options);\\n  }\\n  static VECTOR2(init_value, options) {\\n    if (init_value instanceof Vector2) {\\n      init_value = init_value.toArray();\\n    }\\n    return new ParamTemplate(ParamType.VECTOR2, init_value, options);\\n  }\\n  static VECTOR3(init_value, options) {\\n    if (init_value instanceof Vector3) {\\n      init_value = init_value.toArray();\\n    }\\n    return new ParamTemplate(ParamType.VECTOR3, init_value, options);\\n  }\\n  static VECTOR4(init_value, options) {\\n    if (init_value instanceof Vector4) {\\n      init_value = init_value.toArray();\\n    }\\n    return new ParamTemplate(ParamType.VECTOR4, init_value, options);\\n  }\\n  static OPERATOR_PATH(init_value, options) {\\n    return new ParamTemplate(ParamType.OPERATOR_PATH, init_value, options);\\n  }\\n  static NODE_PATH(init_value, options) {\\n    return new ParamTemplate(ParamType.NODE_PATH, init_value, options);\\n  }\\n  static PARAM_PATH(init_value, options) {\\n    return new ParamTemplate(ParamType.PARAM_PATH, init_value, options);\\n  }\\n};\\nvar NodeParamsConfig = class {\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/core/Transform.ts\\nvar TransformTargetType;\\n(function(TransformTargetType2) {\\n  TransformTargetType2[\\\\\\\"OBJECTS\\\\\\\"] = \\\\\\\"objects\\\\\\\";\\n  TransformTargetType2[\\\\\\\"GEOMETRIES\\\\\\\"] = \\\\\\\"geometries\\\\\\\";\\n})(TransformTargetType || (TransformTargetType = {}));\\nvar TRANSFORM_TARGET_TYPES = [\\n  TransformTargetType.GEOMETRIES,\\n  TransformTargetType.OBJECTS\\n];\\nvar RotationOrder;\\n(function(RotationOrder2) {\\n  RotationOrder2[\\\\\\\"XYZ\\\\\\\"] = \\\\\\\"XYZ\\\\\\\";\\n  RotationOrder2[\\\\\\\"XZY\\\\\\\"] = \\\\\\\"XZY\\\\\\\";\\n  RotationOrder2[\\\\\\\"YXZ\\\\\\\"] = \\\\\\\"YXZ\\\\\\\";\\n  RotationOrder2[\\\\\\\"YZX\\\\\\\"] = \\\\\\\"YZX\\\\\\\";\\n  RotationOrder2[\\\\\\\"ZYX\\\\\\\"] = \\\\\\\"ZYX\\\\\\\";\\n  RotationOrder2[\\\\\\\"ZXY\\\\\\\"] = \\\\\\\"ZXY\\\\\\\";\\n})(RotationOrder || (RotationOrder = {}));\\nvar ROTATION_ORDERS = [\\n  RotationOrder.XYZ,\\n  RotationOrder.XZY,\\n  RotationOrder.YXZ,\\n  RotationOrder.YZX,\\n  RotationOrder.ZXY,\\n  RotationOrder.ZYX\\n];\\nvar DEFAULT_ROTATION_ORDER = RotationOrder.XYZ;\\nvar CoreTransform = class {\\n  constructor() {\\n    this._translation_matrix = new Matrix4();\\n    this._translation_matrix_q = new Quaternion();\\n    this._translation_matrix_s = new Vector3(1, 1, 1);\\n    this._matrix = new Matrix4().identity();\\n    this._matrix_q = new Quaternion();\\n    this._matrix_euler = new Euler();\\n    this._matrix_s = new Vector3();\\n    this._rotate_geometry_m = new Matrix4();\\n    this._rotate_geometry_q = new Quaternion();\\n    this._rotate_geometry_vec_dest = new Vector3();\\n  }\\n  static setParamsFromMatrix(matrix, node, options = {}) {\\n    let update_scale = options[\\\\\\\"scale\\\\\\\"];\\n    if (update_scale == null) {\\n      update_scale = true;\\n    }\\n    matrix.decompose(this.set_params_from_matrix_position, this.set_params_from_matrix_quaternion, this.set_params_from_matrix_scale);\\n    this.set_params_from_matrix_euler.setFromQuaternion(this.set_params_from_matrix_quaternion);\\n    this.set_params_from_matrix_euler.toVector3(this.set_params_from_matrix_rotation);\\n    this.set_params_from_matrix_rotation.divideScalar(Math.PI / 180);\\n    this.set_params_from_matrix_position.toArray(this.set_params_from_matrix_t);\\n    this.set_params_from_matrix_rotation.toArray(this.set_params_from_matrix_r);\\n    this.set_params_from_matrix_scale.toArray(this.set_params_from_matrix_s);\\n    node.scene().batchUpdates(() => {\\n      node.params.set_vector3(\\\\\\\"t\\\\\\\", this.set_params_from_matrix_t);\\n      node.params.set_vector3(\\\\\\\"r\\\\\\\", this.set_params_from_matrix_r);\\n      node.params.set_vector3(\\\\\\\"s\\\\\\\", this.set_params_from_matrix_s);\\n      if (update_scale) {\\n        node.params.set_float(\\\\\\\"scale\\\\\\\", 1);\\n      }\\n    });\\n  }\\n  static setParamsFromObject(object, node) {\\n    object.position.toArray(this.set_params_from_object_position_array);\\n    object.rotation.toArray(this.set_params_from_object_rotation_array);\\n    this.set_params_from_object_rotation_deg.fromArray(this.set_params_from_object_rotation_array);\\n    this.set_params_from_object_rotation_deg.multiplyScalar(180 / Math.PI);\\n    this.set_params_from_object_rotation_deg.toArray(this.set_params_from_object_rotation_array);\\n    node.scene().batchUpdates(() => {\\n      node.params.set_vector3(\\\\\\\"t\\\\\\\", this.set_params_from_object_position_array);\\n      node.params.set_vector3(\\\\\\\"r\\\\\\\", this.set_params_from_object_rotation_array);\\n    });\\n  }\\n  translationMatrix(t) {\\n    this._translation_matrix.compose(t, this._translation_matrix_q, this._translation_matrix_s);\\n    return this._translation_matrix;\\n  }\\n  matrix(t, r, s, scale, rotation_order) {\\n    this._matrix_euler.set(degToRad(r.x), degToRad(r.y), degToRad(r.z), rotation_order);\\n    this._matrix_q.setFromEuler(this._matrix_euler);\\n    this._matrix_s.copy(s).multiplyScalar(scale);\\n    this._matrix.compose(t, this._matrix_q, this._matrix_s);\\n    return this._matrix;\\n  }\\n  rotateGeometry(geometry, vec_origin, vec_dest) {\\n    this._rotate_geometry_vec_dest.copy(vec_dest);\\n    this._rotate_geometry_vec_dest.normalize();\\n    this._rotate_geometry_q.setFromUnitVectors(vec_origin, this._rotate_geometry_vec_dest);\\n    this._rotate_geometry_m.makeRotationFromQuaternion(this._rotate_geometry_q);\\n    geometry.applyMatrix4(this._rotate_geometry_m);\\n  }\\n  static decomposeMatrix(object) {\\n    object.matrix.decompose(object.position, object.quaternion, object.scale);\\n  }\\n};\\nCoreTransform.set_params_from_matrix_position = new Vector3();\\nCoreTransform.set_params_from_matrix_quaternion = new Quaternion();\\nCoreTransform.set_params_from_matrix_scale = new Vector3();\\nCoreTransform.set_params_from_matrix_euler = new Euler();\\nCoreTransform.set_params_from_matrix_rotation = new Vector3();\\nCoreTransform.set_params_from_matrix_t = [0, 0, 0];\\nCoreTransform.set_params_from_matrix_r = [0, 0, 0];\\nCoreTransform.set_params_from_matrix_s = [0, 0, 0];\\nCoreTransform.set_params_from_object_position_array = [0, 0, 0];\\nCoreTransform.set_params_from_object_rotation_deg = new Vector3();\\nCoreTransform.set_params_from_object_rotation_array = [0, 0, 0];\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/obj/utils/TransformController.ts\\nfunction TransformedParamConfig(Base, default_params) {\\n  const matrixAutoUpdate = default_params?.matrixAutoUpdate || false;\\n  return class Mixin extends Base {\\n    constructor() {\\n      super(...arguments);\\n      this.transform = ParamConfig.FOLDER();\\n      this.keepPosWhenParenting = ParamConfig.BOOLEAN(0);\\n      this.rotationOrder = ParamConfig.INTEGER(ROTATION_ORDERS.indexOf(RotationOrder.XYZ), {\\n        menu: {\\n          entries: ROTATION_ORDERS.map((order, v) => {\\n            return {name: order, value: v};\\n          })\\n        }\\n      });\\n      this.t = ParamConfig.VECTOR3([0, 0, 0]);\\n      this.r = ParamConfig.VECTOR3([0, 0, 0]);\\n      this.s = ParamConfig.VECTOR3([1, 1, 1]);\\n      this.scale = ParamConfig.FLOAT(1);\\n      this.matrixAutoUpdate = ParamConfig.BOOLEAN(matrixAutoUpdate ? 1 : 0);\\n      this.updateTransformFromObject = ParamConfig.BUTTON(null, {\\n        callback: (node) => {\\n          TransformController.PARAM_CALLBACK_update_transform_from_object(node);\\n        }\\n      });\\n    }\\n  };\\n}\\nvar TransformedParamsConfig = class extends TransformedParamConfig(NodeParamsConfig) {\\n};\\nvar HOOK_NAME = \\\\\\\"_cook_main_without_inputs_when_dirty\\\\\\\";\\nvar TransformController = class {\\n  constructor(node) {\\n    this.node = node;\\n    this._cook_main_without_inputs_when_dirty_bound = this._cook_main_without_inputs_when_dirty.bind(this);\\n    this._core_transform = new CoreTransform();\\n    this._keep_pos_when_parenting_m_object = new Matrix4();\\n    this._keep_pos_when_parenting_m_new_parent_inv = new Matrix4();\\n  }\\n  initializeNode() {\\n    if (!this.node.dirtyController.hasHook(HOOK_NAME)) {\\n      this.node.dirtyController.addPostDirtyHook(HOOK_NAME, this._cook_main_without_inputs_when_dirty_bound);\\n    }\\n  }\\n  async _cook_main_without_inputs_when_dirty() {\\n    await this.node.cookController.cookMainWithoutInputs();\\n  }\\n  update() {\\n    this.update_transform_with_matrix();\\n    const object = this.node.object;\\n    object.matrixAutoUpdate = isBooleanTrue(this.node.pv.matrixAutoUpdate);\\n  }\\n  update_transform_with_matrix(matrix) {\\n    const object = this.node.object;\\n    if (matrix != null && !matrix.equals(object.matrix)) {\\n      object.matrix.copy(matrix);\\n      object.dispatchEvent({type: \\\\\\\"change\\\\\\\"});\\n    } else {\\n      this._update_matrix_from_params_with_core_transform();\\n    }\\n  }\\n  _update_matrix_from_params_with_core_transform() {\\n    const object = this.node.object;\\n    let prev_auto_update = object.matrixAutoUpdate;\\n    if (prev_auto_update) {\\n      object.matrixAutoUpdate = false;\\n    }\\n    const matrix = this._core_transform.matrix(this.node.pv.t, this.node.pv.r, this.node.pv.s, this.node.pv.scale, ROTATION_ORDERS[this.node.pv.rotationOrder]);\\n    object.matrix.identity();\\n    object.applyMatrix4(matrix);\\n    this._apply_look_at();\\n    object.updateMatrix();\\n    if (prev_auto_update) {\\n      object.matrixAutoUpdate = true;\\n    }\\n    object.dispatchEvent({type: \\\\\\\"change\\\\\\\"});\\n  }\\n  _apply_look_at() {\\n  }\\n  set_params_from_matrix(matrix, options = {}) {\\n    CoreTransform.setParamsFromMatrix(matrix, this.node, options);\\n  }\\n  static update_node_transform_params_if_required(node, new_parent_object) {\\n    node.transformController.update_node_transform_params_if_required(new_parent_object);\\n  }\\n  update_node_transform_params_if_required(new_parent_object) {\\n    if (!isBooleanTrue(this.node.pv.keepPosWhenParenting)) {\\n      return;\\n    }\\n    if (!this.node.scene().loadingController.loaded()) {\\n      return;\\n    }\\n    if (new_parent_object == this.node.object.parent) {\\n      return;\\n    }\\n    const object = this.node.object;\\n    object.updateMatrixWorld(true);\\n    new_parent_object.updateMatrixWorld(true);\\n    this._keep_pos_when_parenting_m_object.copy(object.matrixWorld);\\n    this._keep_pos_when_parenting_m_new_parent_inv.copy(new_parent_object.matrixWorld);\\n    this._keep_pos_when_parenting_m_new_parent_inv.invert();\\n    this._keep_pos_when_parenting_m_object.premultiply(this._keep_pos_when_parenting_m_new_parent_inv);\\n    CoreTransform.setParamsFromMatrix(this._keep_pos_when_parenting_m_object, this.node, {scale: true});\\n  }\\n  update_node_transform_params_from_object(update_matrix = false) {\\n    const object = this.node.object;\\n    if (update_matrix) {\\n      object.updateMatrix();\\n    }\\n    CoreTransform.setParamsFromMatrix(object.matrix, this.node, {scale: true});\\n  }\\n  static PARAM_CALLBACK_update_transform_from_object(node) {\\n    node.transformController.update_node_transform_params_from_object();\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/obj/utils/HierarchyController.ts\\nvar HierarchyController = class {\\n  constructor(node) {\\n    this.node = node;\\n  }\\n  initializeNode() {\\n    this.node.io.inputs.setCount(0, 1);\\n    this.node.io.inputs.set_depends_on_inputs(false);\\n    this.node.io.outputs.setHasOneOutput();\\n    this.node.io.inputs.add_on_set_input_hook(\\\\\\\"on_input_updated:update_parent\\\\\\\", () => {\\n      this.on_input_updated();\\n    });\\n  }\\n  static on_input_updated(node) {\\n    const parent_object = node.root().getParentForNode(node);\\n    if (node.transformController && parent_object) {\\n      TransformController.update_node_transform_params_if_required(node, parent_object);\\n    }\\n    if (node.io.inputs.input(0) != null) {\\n      node.root().addToParentTransform(node);\\n    } else {\\n      node.root().removeFromParentTransform(node);\\n    }\\n  }\\n  on_input_updated() {\\n    HierarchyController.on_input_updated(this.node);\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/core/loader/_Base.ts\\nvar LOADING_MANAGER = new LoadingManager();\\nLOADING_MANAGER.setURLModifier((url) => {\\n  const remapedUrl = Poly.assetUrls.remapedUrl(url);\\n  if (remapedUrl) {\\n    return remapedUrl;\\n  }\\n  const blobUrl = Poly.blobs.blobUrl(url);\\n  if (blobUrl) {\\n    return blobUrl;\\n  }\\n  return url;\\n});\\nvar CoreBaseLoader2 = class {\\n  constructor(_url, _scene, _node) {\\n    this._url = _url;\\n    this._scene = _scene;\\n    this._node = _node;\\n    this.loadingManager = LOADING_MANAGER;\\n  }\\n  static extension(url) {\\n    let ext = null;\\n    try {\\n      const _url = new URL(url);\\n      ext = _url.searchParams.get(\\\\\\\"ext\\\\\\\");\\n    } catch (e) {\\n    }\\n    if (!ext) {\\n      const url_without_params = url.split(\\\\\\\"?\\\\\\\")[0];\\n      const elements = url_without_params.split(\\\\\\\".\\\\\\\");\\n      ext = elements[elements.length - 1].toLowerCase();\\n    }\\n    return ext;\\n  }\\n  extension() {\\n    return CoreBaseLoader2.extension(this._url);\\n  }\\n  async _urlToLoad() {\\n    const {storedUrl, fullUrl} = this._urlData();\\n    if (this._node) {\\n      await Poly.blobs.fetchBlobForNode({storedUrl, fullUrl, node: this._node});\\n    }\\n    const blobUrl = Poly.blobs.blobUrl(storedUrl);\\n    return blobUrl || fullUrl;\\n  }\\n  deregisterUrl() {\\n    const {storedUrl} = this._urlData();\\n    Poly.blobs.deregisterUrl(storedUrl);\\n  }\\n  _urlData() {\\n    let fullUrl = this._url;\\n    const storedUrl = this._url.split(\\\\\\\"?\\\\\\\")[0];\\n    if (fullUrl[0] != \\\\\\\"h\\\\\\\") {\\n      const assets_root = this._scene.assets.root();\\n      if (assets_root) {\\n        fullUrl = `${assets_root}${fullUrl}`;\\n      }\\n    }\\n    return {fullUrl, storedUrl};\\n  }\\n  static async _loadMultipleBlobGlobal(options) {\\n    const promises = [];\\n    for (let file of options.files) {\\n      const storedUrl = file.storedUrl;\\n      const fullUrl = file.fullUrl;\\n      const node = options.node;\\n      promises.push(Poly.blobs.fetchBlobGlobal({storedUrl, fullUrl, node}));\\n    }\\n    const responses = await Promise.all(promises);\\n    for (let response of responses) {\\n      if (response.error) {\\n        options.node.states.error.set(options.error);\\n      }\\n    }\\n  }\\n};\\nvar CoreBaseLoader = CoreBaseLoader2;\\nCoreBaseLoader.loadingManager = LOADING_MANAGER;\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/core/loader/Audio.ts\\nvar Extension;\\n(function(Extension2) {\\n  Extension2[\\\\\\\"MP3\\\\\\\"] = \\\\\\\"mp3\\\\\\\";\\n  Extension2[\\\\\\\"WAV\\\\\\\"] = \\\\\\\"wav\\\\\\\";\\n})(Extension || (Extension = {}));\\nvar AUDIO_EXTENSIONS = [Extension.MP3, Extension.WAV];\\nvar CoreLoaderAudio = class extends CoreBaseLoader {\\n  async load() {\\n    const audioLoader = new AudioLoader(this.loadingManager);\\n    const url = await this._urlToLoad();\\n    return new Promise((resolve) => {\\n      audioLoader.load(url, function(buffer) {\\n        resolve(buffer);\\n      });\\n    });\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/poly/registers/nodes/types/Obj.ts\\nvar ObjType;\\n(function(ObjType2) {\\n  ObjType2[\\\\\\\"GEO\\\\\\\"] = \\\\\\\"geo\\\\\\\";\\n  ObjType2[\\\\\\\"CUBE_CAMERA\\\\\\\"] = \\\\\\\"cubeCamera\\\\\\\";\\n  ObjType2[\\\\\\\"AUDIO_LISTENER\\\\\\\"] = \\\\\\\"audioListener\\\\\\\";\\n  ObjType2[\\\\\\\"POSITIONAL_AUDIO\\\\\\\"] = \\\\\\\"positionalAudio\\\\\\\";\\n})(ObjType || (ObjType = {}));\\n\\n// src/engine/nodes/obj/AudioAnalyzer.ts\\nvar AudioAnalyzerParamConfig = class extends NodeParamsConfig {\\n  constructor() {\\n    super(...arguments);\\n    this.url = ParamConfig.STRING(\\\\\\\"\\\\\\\", {\\n      fileBrowse: {type: [FileType.AUDIO]}\\n    });\\n    this.listener = ParamConfig.NODE_PATH(\\\\\\\"\\\\\\\", {\\n      nodeSelection: {\\n        context: NodeContext.OBJ,\\n        types: [ObjType.AUDIO_LISTENER]\\n      }\\n    });\\n    this.fftSize = ParamConfig.INTEGER(128, {\\n      range: [1, 1024]\\n    });\\n    this.output0 = ParamConfig.FLOAT(1);\\n    this.output1 = ParamConfig.FLOAT(1);\\n    this.play = ParamConfig.BUTTON(null, {\\n      callback: (node) => {\\n        AudioAnalyzerObjNode.PARAM_CALLBACK_play(node);\\n      }\\n    });\\n    this.pause = ParamConfig.BUTTON(null, {\\n      callback: (node) => {\\n        AudioAnalyzerObjNode.PARAM_CALLBACK_pause(node);\\n      }\\n    });\\n  }\\n};\\nvar ParamsConfig = new AudioAnalyzerParamConfig();\\nvar AudioAnalyzerObjNode = class extends TypedObjNode {\\n  constructor() {\\n    super(...arguments);\\n    this.paramsConfig = ParamsConfig;\\n    this.hierarchyController = new HierarchyController(this);\\n    this.flags = new FlagsControllerD(this);\\n  }\\n  static type() {\\n    return \\\\\\\"audioAnalyzer\\\\\\\";\\n  }\\n  createObject() {\\n    const group = new Group();\\n    group.matrixAutoUpdate = false;\\n    return group;\\n  }\\n  initializeNode() {\\n    this.hierarchyController.initializeNode();\\n  }\\n  cook() {\\n    this.cookController.endCook();\\n  }\\n  async audioAnalyzer() {\\n    return this._audioAnalyzer = this._audioAnalyzer || await this._createAudioAnalyzer();\\n  }\\n  async _createAudioAnalyzer() {\\n    console.log(\\\\\\\"_createAudioAnalyzer\\\\\\\");\\n    if (this.p.listener.isDirty()) {\\n      await this.p.listener.compute();\\n    }\\n    const node = this.pv.listener.nodeWithContext(NodeContext.OBJ);\\n    if (!node) {\\n      return;\\n    }\\n    console.log(\\\\\\\"_createAudioAnalyzer B\\\\\\\");\\n    const listener = node.object;\\n    this._audio = new Audio2(listener);\\n    if (/(iPad|iPhone|iPod)/g.test(navigator.userAgent)) {\\n      const loader2 = new AudioLoader();\\n      loader2.load(this.pv.url, (buffer) => {\\n        if (this._audio) {\\n          this._audio.setBuffer(buffer);\\n          this._audio.hasPlaybackControl = true;\\n          console.log(\\\\\\\"play A\\\\\\\");\\n        }\\n      });\\n    } else {\\n      this._mediaElement = new Audio(this.pv.url);\\n      console.log(\\\\\\\"play B\\\\\\\");\\n      this._audio.setMediaElementSource(this._mediaElement);\\n      this._audio.hasPlaybackControl = true;\\n    }\\n    const audioAnalyzer = new AudioAnalyser(this._audio, this.pv.fftSize);\\n    const loader = new CoreLoaderAudio(this.pv.url, this.scene(), this);\\n    this.scene().registerOnBeforeTick(`audioAnalyzer-${this.path()}`, () => {\\n      if (this._audioAnalyzer) {\\n        this._audioAnalyzer.getFrequencyData();\\n        const value = this._audioAnalyzer.data[0];\\n        console.log(value, this._audioAnalyzer.data);\\n        this.p.output0.set(value);\\n        const average = this._audioAnalyzer.getAverageFrequency();\\n        this.p.output1.set(average);\\n      }\\n    });\\n    return audioAnalyzer;\\n  }\\n  isPlaying() {\\n    if (this._audio) {\\n      return isBooleanTrue(this._audio.isPlaying);\\n    }\\n    if (this._mediaElement) {\\n      return isBooleanTrue(this._mediaElement.isPlaying);\\n    }\\n    return false;\\n  }\\n  static PARAM_CALLBACK_play(node) {\\n    node.PARAM_CALLBACK_play();\\n  }\\n  static PARAM_CALLBACK_pause(node) {\\n    node.PARAM_CALLBACK_pause();\\n  }\\n  PARAM_CALLBACK_play() {\\n    this.audioAnalyzer();\\n    if (!this.isPlaying()) {\\n      console.log(\\\\\\\"play !\\\\\\\");\\n      this._audio?.play();\\n      this._mediaElement?.play();\\n    }\\n  }\\n  PARAM_CALLBACK_pause() {\\n    this.audioAnalyzer();\\n    if (this.isPlaying()) {\\n      console.log(\\\\\\\"-pause-\\\\\\\");\\n      this._audio?.pause();\\n      this._mediaElement?.pause();\\n    }\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/core/geometry/Group.ts\\nvar CoreGroup = class {\\n  constructor() {\\n    this._objects = [];\\n    this._objects_with_geo = [];\\n    this.touch();\\n  }\\n  timestamp() {\\n    return this._timestamp;\\n  }\\n  touch() {\\n    const performance2 = Poly.performance.performanceManager();\\n    this._timestamp = performance2.now();\\n    this.reset();\\n  }\\n  reset() {\\n    this._bounding_box = void 0;\\n    this._core_geometries = void 0;\\n    this._core_objects = void 0;\\n  }\\n  clone() {\\n    const core_group = new CoreGroup();\\n    if (this._objects) {\\n      const objects = [];\\n      for (let object of this._objects) {\\n        objects.push(CoreObject.clone(object));\\n      }\\n      core_group.setObjects(objects);\\n    }\\n    return core_group;\\n  }\\n  setObjects(objects) {\\n    this._objects = objects;\\n    this._objects_with_geo = objects.filter((obj) => obj.geometry != null);\\n    this.touch();\\n  }\\n  objects() {\\n    return this._objects;\\n  }\\n  objectsWithGeo() {\\n    return this._objects_with_geo;\\n  }\\n  coreObjects() {\\n    return this._core_objects = this._core_objects || this._create_core_objects();\\n  }\\n  _create_core_objects() {\\n    if (this._objects) {\\n      return this._objects.map((object, i) => new CoreObject(object, i));\\n    }\\n    return [];\\n  }\\n  objectsData() {\\n    if (this._objects) {\\n      return this._objects.map((object) => this._objectData(object));\\n    }\\n    return [];\\n  }\\n  _objectData(object) {\\n    let points_count = 0;\\n    if (object.geometry) {\\n      points_count = CoreGeometry.pointsCount(object.geometry);\\n    }\\n    return {\\n      type: objectTypeFromConstructor(object.constructor),\\n      name: object.name,\\n      children_count: object.children.length,\\n      points_count\\n    };\\n  }\\n  geometries() {\\n    const list = [];\\n    for (let core_object of this.coreObjects()) {\\n      const geometry = core_object.object().geometry;\\n      if (geometry) {\\n        list.push(geometry);\\n      }\\n    }\\n    return list;\\n  }\\n  coreGeometries() {\\n    return this._core_geometries = this._core_geometries || this._createCoreGeometries();\\n  }\\n  _createCoreGeometries() {\\n    const list = [];\\n    for (let geometry of this.geometries()) {\\n      list.push(new CoreGeometry(geometry));\\n    }\\n    return list;\\n  }\\n  static geometryFromObject(object) {\\n    if (object.isMesh || object.isLine || object.isPoints) {\\n      return object.geometry;\\n    }\\n    return null;\\n  }\\n  faces() {\\n    const faces = [];\\n    for (let object of this.objectsWithGeo()) {\\n      if (object.geometry) {\\n        const coreGeo = new CoreGeometry(object.geometry);\\n        const geoFaces = coreGeo.faces();\\n        for (let geoFace of geoFaces) {\\n          geoFace.applyMatrix4(object.matrix);\\n          faces.push(geoFace);\\n        }\\n      }\\n    }\\n    return faces;\\n  }\\n  points() {\\n    return this.coreGeometries().map((g) => g.points()).flat();\\n  }\\n  pointsCount() {\\n    return ArrayUtils.sum(this.coreGeometries().map((g) => g.pointsCount()));\\n  }\\n  totalPointsCount() {\\n    if (this._objects) {\\n      let sum = 0;\\n      for (let object of this._objects) {\\n        object.traverse((object2) => {\\n          const geometry = object2.geometry;\\n          if (geometry) {\\n            sum += CoreGeometry.pointsCount(geometry);\\n          }\\n        });\\n      }\\n      return sum;\\n    } else {\\n      return 0;\\n    }\\n  }\\n  pointsFromGroup(group) {\\n    if (group) {\\n      const indices = CoreString.indices(group);\\n      const points2 = this.points();\\n      return ArrayUtils.compact(indices.map((i) => points2[i]));\\n    } else {\\n      return this.points();\\n    }\\n  }\\n  static _fromObjects(objects) {\\n    const core_group = new CoreGroup();\\n    core_group.setObjects(objects);\\n    return core_group;\\n  }\\n  objectsFromGroup(group_name) {\\n    return this.coreObjectsFromGroup(group_name).map((co) => co.object());\\n  }\\n  coreObjectsFromGroup(group_name) {\\n    group_name = group_name.trim();\\n    if (group_name !== \\\\\\\"\\\\\\\") {\\n      const index = parseInt(group_name);\\n      if (!CoreType.isNaN(index)) {\\n        return ArrayUtils.compact([this.coreObjects()[index]]);\\n      } else {\\n        return this.coreObjects().filter((core_object) => {\\n          return CoreString.matchMask(group_name, core_object.name());\\n        });\\n      }\\n    } else {\\n      return this.coreObjects();\\n    }\\n  }\\n  boundingBox(forceUpdate = false) {\\n    if (forceUpdate) {\\n      return this._bounding_box = this._computeBoundingBox();\\n    }\\n    return this._bounding_box = this._bounding_box || this._computeBoundingBox();\\n  }\\n  center() {\\n    const center = new Vector3();\\n    this.boundingBox().getCenter(center);\\n    return center;\\n  }\\n  size() {\\n    const size = new Vector3();\\n    this.boundingBox().getSize(size);\\n    return size;\\n  }\\n  _computeBoundingBox() {\\n    let bbox;\\n    if (this._objects) {\\n      for (let object of this._objects) {\\n        const geometry = object.geometry;\\n        if (geometry) {\\n          geometry.computeBoundingBox();\\n          if (bbox) {\\n            bbox.expandByObject(object);\\n          } else {\\n            if (geometry.boundingBox) {\\n              bbox = geometry.boundingBox.clone();\\n            }\\n          }\\n        }\\n      }\\n    }\\n    bbox = bbox || new Box3(new Vector3(-1, -1, -1), new Vector3(1, 1, 1));\\n    return bbox;\\n  }\\n  computeVertexNormals() {\\n    for (let object of this.coreObjects()) {\\n      object.computeVertexNormals();\\n    }\\n  }\\n  hasAttrib(name) {\\n    let first_geometry;\\n    if ((first_geometry = this.coreGeometries()[0]) != null) {\\n      return first_geometry.hasAttrib(name);\\n    } else {\\n      return false;\\n    }\\n  }\\n  attribType(name) {\\n    const first_core_geometry = this.coreGeometries()[0];\\n    if (first_core_geometry != null) {\\n      return first_core_geometry.attribType(name);\\n    } else {\\n      return null;\\n    }\\n  }\\n  objectAttribType(name) {\\n    const first_core_object = this.coreObjects()[0];\\n    if (first_core_object != null) {\\n      return first_core_object.attribType(name);\\n    } else {\\n      return null;\\n    }\\n  }\\n  renameAttrib(old_name, new_name, attrib_class) {\\n    switch (attrib_class) {\\n      case CoreConstant.ATTRIB_CLASS.VERTEX:\\n        if (this.hasAttrib(old_name)) {\\n          if (this._objects) {\\n            for (let object of this._objects) {\\n              object.traverse((child) => {\\n                const geometry = CoreGroup.geometryFromObject(child);\\n                if (geometry) {\\n                  const core_geometry = new CoreGeometry(geometry);\\n                  core_geometry.renameAttrib(old_name, new_name);\\n                }\\n              });\\n            }\\n          }\\n        }\\n        break;\\n      case CoreConstant.ATTRIB_CLASS.OBJECT:\\n        if (this.hasAttrib(old_name)) {\\n          if (this._objects) {\\n            for (let object of this._objects) {\\n              object.traverse((child) => {\\n                const core_object = new CoreObject(child, 0);\\n                core_object.renameAttrib(old_name, new_name);\\n              });\\n            }\\n          }\\n        }\\n        break;\\n    }\\n  }\\n  attribNames() {\\n    let first_geometry;\\n    if ((first_geometry = this.coreGeometries()[0]) != null) {\\n      return first_geometry.attribNames();\\n    } else {\\n      return [];\\n    }\\n  }\\n  objectAttribNames() {\\n    let first_object;\\n    if ((first_object = this.coreObjects()[0]) != null) {\\n      return first_object.attribNames();\\n    } else {\\n      return [];\\n    }\\n  }\\n  attribNamesMatchingMask(masks_string) {\\n    const masks = CoreString.attribNames(masks_string);\\n    const matching_attrib_names = [];\\n    for (let attrib_name of this.attribNames()) {\\n      for (let mask of masks) {\\n        if (CoreString.matchMask(attrib_name, mask)) {\\n          matching_attrib_names.push(attrib_name);\\n        } else {\\n          const remapped = CoreAttribute.remapName(mask);\\n          if (attrib_name == remapped) {\\n            matching_attrib_names.push(attrib_name);\\n          }\\n        }\\n      }\\n    }\\n    return ArrayUtils.uniq(matching_attrib_names);\\n  }\\n  attribSizes() {\\n    let first_geometry;\\n    if ((first_geometry = this.coreGeometries()[0]) != null) {\\n      return first_geometry.attribSizes();\\n    } else {\\n      return {};\\n    }\\n  }\\n  objectAttribSizes() {\\n    let first_object;\\n    if ((first_object = this.coreObjects()[0]) != null) {\\n      return first_object.attribSizes();\\n    } else {\\n      return {};\\n    }\\n  }\\n  attribSize(attrib_name) {\\n    let first_geometry;\\n    if ((first_geometry = this.coreGeometries()[0]) != null) {\\n      return first_geometry.attribSize(attrib_name);\\n    } else {\\n      return 0;\\n    }\\n  }\\n  addNumericVertexAttrib(name, size, default_value) {\\n    if (default_value == null) {\\n      default_value = CoreAttribute.default_value(size);\\n    }\\n    for (let core_geometry of this.coreGeometries()) {\\n      core_geometry.addNumericAttrib(name, size, default_value);\\n    }\\n  }\\n  static clone(src_group) {\\n    const new_group = new Group();\\n    src_group.children.forEach((src_object) => {\\n      const new_object = CoreObject.clone(src_object);\\n      new_group.add(new_object);\\n    });\\n    return new_group;\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/operations/_Base.ts\\nvar BaseOperation = class {\\n  constructor(_scene, states, _node) {\\n    this._scene = _scene;\\n    this.states = states;\\n    this._node = _node;\\n  }\\n  static type() {\\n    throw \\\\\\\"type to be overriden\\\\\\\";\\n  }\\n  type() {\\n    const c = this.constructor;\\n    return c.type();\\n  }\\n  static context() {\\n    console.error(\\\\\\\"operation has no node_context\\\\\\\", this);\\n    throw \\\\\\\"context requires override\\\\\\\";\\n  }\\n  context() {\\n    const c = this.constructor;\\n    return c.context();\\n  }\\n  scene() {\\n    return this._scene;\\n  }\\n  cook(input_contents, params) {\\n  }\\n};\\nBaseOperation.DEFAULT_PARAMS = {};\\nBaseOperation.INPUT_CLONED_STATE = [];\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/operations/sop/_Base.ts\\nvar BaseSopOperation = class extends BaseOperation {\\n  static context() {\\n    return NodeContext.SOP;\\n  }\\n  cook(input_contents, params) {\\n  }\\n  createCoreGroupFromObjects(objects) {\\n    const core_group = new CoreGroup();\\n    core_group.setObjects(objects);\\n    return core_group;\\n  }\\n  createCoreGroupFromGeometry(geometry, type = ObjectType.MESH) {\\n    const object = BaseSopOperation.createObject(geometry, type);\\n    return this.createCoreGroupFromObjects([object]);\\n  }\\n  createObject(geometry, type, material) {\\n    return BaseSopOperation.createObject(geometry, type, material);\\n  }\\n  static createObject(geometry, type, material) {\\n    this.createIndexIfNone(geometry);\\n    const object_constructor = OBJECT_CONSTRUCTOR_BY_OBJECT_TYPE[type];\\n    material = material || CoreConstant.MATERIALS[type].clone();\\n    const object = new object_constructor(geometry, material);\\n    object.castShadow = true;\\n    object.receiveShadow = true;\\n    object.frustumCulled = false;\\n    object.matrixAutoUpdate = false;\\n    return object;\\n  }\\n  createIndexIfNone(geometry) {\\n    BaseSopOperation.createIndexIfNone(geometry);\\n  }\\n  static createIndexIfNone(geometry) {\\n    CoreGeometryIndexBuilder.createIndexIfNone(geometry);\\n  }\\n};\\n\\n// ../../../node_modules/@polygonjs/polygonjs/src/engine/nodes/sop/_Base.ts\\nvar MESSAGE;\\n(function(MESSAGE2) {\\n  MESSAGE2[\\\\\\\"FROM_SET_CORE_GROUP\\\\\\\"] = \\\\\\\"from set_core_group\\\\\\\";\\n  MESSAGE2[\\\\\\\"FROM_SET_GROUP\\\\\\\"] = \\\\\\\"from set_group\\\\\\\";\\n  MESSAGE2[\\\\\\\"FROM_SET_OBJECTS\\\\\\\"] = \\\\\\\"from set_objects\\\\\\\";\\n  MESSAGE2[\\\\\\\"FROM_SET_OBJECT\\\\\\\"] = \\\\\\\"from set_object\\\\\\\";\\n  MESSAGE2[\\\\\\\"FROM_SET_GEOMETRIES\\\\\\\"] = \\\\\\\"from set_geometries\\\\\\\";\\n  MESSAGE2[\\\\\\\"FROM_SET_GEOMETRY\\\\\\\"] = \\\\\\\"from set_geometry\\\\\\\";\\n})(MESSAGE || (MESSAGE = {}));\\nvar INPUT_GEOMETRY_NAME = \\\\\\\"input geometry\\\\\\\";\\nvar DEFAULT_INPUT_NAMES2 = [INPUT_GEOMETRY_NAME, INPUT_GEOMETRY_NAME, INPUT_GEOMETRY_NAME, INPUT_GEOMETRY_NAME];\\nvar TypedSopNode = class extends TypedNode {\\n  constructor() {\\n    super(...arguments);\\n    this.flags = new FlagsControllerDBO(this);\\n  }\\n  static context() {\\n    return NodeContext.SOP;\\n  }\\n  static displayedInputNames() {\\n    return DEFAULT_INPUT_NAMES2;\\n  }\\n  initializeBaseNode() {\\n    this.flags.display.set(false);\\n    this.flags.display.onUpdate(() => {\\n      if (this.flags.display.active()) {\\n        const parent = this.parent();\\n        if (parent && parent.displayNodeController) {\\n          parent.displayNodeController.setDisplayNode(this);\\n        }\\n      }\\n    });\\n    this.io.outputs.setHasOneOutput();\\n  }\\n  setCoreGroup(core_group) {\\n    this._setContainer(core_group, MESSAGE.FROM_SET_CORE_GROUP);\\n  }\\n  setObject(object) {\\n    this._setContainerObjects([object], MESSAGE.FROM_SET_OBJECT);\\n  }\\n  setObjects(objects) {\\n    this._setContainerObjects(objects, MESSAGE.FROM_SET_OBJECTS);\\n  }\\n  setGeometry(geometry, type = ObjectType.MESH) {\\n    const object = this.createObject(geometry, type);\\n    this._setContainerObjects([object], MESSAGE.FROM_SET_GEOMETRY);\\n  }\\n  setGeometries(geometries, type = ObjectType.MESH) {\\n    const objects = [];\\n    let object;\\n    for (let geometry of geometries) {\\n      object = this.createObject(geometry, type);\\n      objects.push(object);\\n    }\\n    this._setContainerObjects(objects, MESSAGE.FROM_SET_GEOMETRIES);\\n  }\\n  _setContainerObjects(objects, message) {\\n    const core_group = this.containerController.container().coreContent() || new CoreGroup();\\n    core_group.setObjects(objects);\\n    core_group.touch();\\n    this._setContainer(core_group);\\n  }\\n  static createObject(geometry, type, material) {\\n    return BaseSopOperation.createObject(geometry, type, material);\\n  }\\n  createObject(geometry, type, material) {\\n    return TypedSopNode.createObject(geometry, type, material);\\n  }\\n  static createIndexIfNone(geometry) {\\n    BaseSopOperation.createIndexIfNone(geometry);\\n  }\\n  _createIndexIfNone(geometry) {\\n    TypedSopNode.createIndexIfNone(geometry);\\n  }\\n};\\n\\n// src/engine/nodes/sop/AudioAnalyzer.ts\\nvar AudioAnalyzerParamConfig2 = class extends NodeParamsConfig {\\n  constructor() {\\n    super(...arguments);\\n    this.url = ParamConfig.STRING(\\\\\\\"\\\\\\\", {\\n      fileBrowse: {type: [FileType.AUDIO]}\\n    });\\n    this.listener = ParamConfig.NODE_PATH(\\\\\\\"\\\\\\\", {\\n      nodeSelection: {\\n        context: NodeContext.OBJ,\\n        types: [ObjType.AUDIO_LISTENER]\\n      }\\n    });\\n    this.fftSize = ParamConfig.INTEGER(128, {\\n      range: [1, 1024]\\n    });\\n    this.outputMult = ParamConfig.FLOAT(0.1);\\n    this.average = ParamConfig.FLOAT(1, {\\n      cook: false\\n    });\\n    this.play = ParamConfig.BUTTON(null, {\\n      callback: (node) => {\\n        AudioAnalyzerSopNode.PARAM_CALLBACK_play(node);\\n      }\\n    });\\n    this.pause = ParamConfig.BUTTON(null, {\\n      callback: (node) => {\\n        AudioAnalyzerSopNode.PARAM_CALLBACK_pause(node);\\n      }\\n    });\\n  }\\n};\\nvar ParamsConfig2 = new AudioAnalyzerParamConfig2();\\nvar AudioAnalyzerSopNode = class extends TypedSopNode {\\n  constructor() {\\n    super(...arguments);\\n    this.paramsConfig = ParamsConfig2;\\n  }\\n  static type() {\\n    return \\\\\\\"audioAnalyzer\\\\\\\";\\n  }\\n  initializeNode() {\\n    this.io.inputs.setCount(1);\\n    this.addGraphInput(this.scene().timeController.graphNode);\\n    this.io.inputs.initInputsClonedState(InputCloneMode.FROM_NODE);\\n  }\\n  cook(input_contents) {\\n    console.log(\\\\\\\"cook\\\\\\\");\\n    const core_group = input_contents[0];\\n    const objects = core_group.objects();\\n    if (this._audioAnalyzer) {\\n      const outputMult = this.pv.outputMult;\\n      this._audioAnalyzer.getFrequencyData();\\n      const data = this._audioAnalyzer.data;\\n      const maxCount = Math.min(objects.length, data.length);\\n      for (let i = 0; i < maxCount; i++) {\\n        const object = objects[i];\\n        const dataEntry = data[i] * outputMult;\\n        object.position.y = dataEntry;\\n      }\\n      const average = this._audioAnalyzer.getAverageFrequency();\\n      this.p.average.set(average);\\n    }\\n    this.setCoreGroup(core_group);\\n  }\\n  async audioAnalyzer() {\\n    return this._audioAnalyzer = this._audioAnalyzer || await this._createAudioAnalyzer();\\n  }\\n  async _createAudioAnalyzer() {\\n    console.log(\\\\\\\"_createAudioAnalyzer\\\\\\\");\\n    if (this.p.listener.isDirty()) {\\n      await this.p.listener.compute();\\n    }\\n    const node = this.pv.listener.nodeWithContext(NodeContext.OBJ);\\n    if (!node) {\\n      return;\\n    }\\n    console.log(\\\\\\\"_createAudioAnalyzer B\\\\\\\");\\n    const listener = node.object;\\n    this._audio = new Audio2(listener);\\n    if (/(iPad|iPhone|iPod)/g.test(navigator.userAgent)) {\\n      const loader = new AudioLoader();\\n      loader.load(this.pv.url, (buffer) => {\\n        if (this._audio) {\\n          this._audio.setBuffer(buffer);\\n          console.log(\\\\\\\"play A\\\\\\\");\\n        }\\n      });\\n    } else {\\n      this._mediaElement = new Audio(this.pv.url);\\n      console.log(\\\\\\\"play B\\\\\\\");\\n      this._audio.setMediaElementSource(this._mediaElement);\\n    }\\n    const audioAnalyzer = new AudioAnalyser(this._audio, this.pv.fftSize);\\n    return audioAnalyzer;\\n  }\\n  isPlaying() {\\n    if (this._audio) {\\n      return isBooleanTrue(this._audio.isPlaying);\\n    }\\n    if (this._mediaElement) {\\n      return isBooleanTrue(this._mediaElement.isPlaying);\\n    }\\n    return false;\\n  }\\n  static PARAM_CALLBACK_play(node) {\\n    node.PARAM_CALLBACK_play();\\n  }\\n  static PARAM_CALLBACK_pause(node) {\\n    node.PARAM_CALLBACK_pause();\\n  }\\n  PARAM_CALLBACK_play() {\\n    this.audioAnalyzer();\\n    if (!this.isPlaying()) {\\n      console.log(\\\\\\\"play !\\\\\\\");\\n      this._audio?.play();\\n      this._mediaElement?.play();\\n    }\\n  }\\n  PARAM_CALLBACK_pause() {\\n    if (this.isPlaying()) {\\n      this._audio?.pause();\\n      this._mediaElement?.pause();\\n    }\\n  }\\n};\\n\\n// src/polygonjs/PolyConfig.ts\\nfunction configurePolygonjs(poly) {\\n  poly.nodesRegister.register(AudioAnalyzerObjNode, \\\\\\\"myNodes\\\\\\\");\\n  poly.nodesRegister.register(AudioAnalyzerSopNode, \\\\\\\"myNodes\\\\\\\");\\n}\\nfunction configureScene(scene) {\\n}\\nexport {\\n  configurePolygonjs,\\n  configureScene\\n};\\n\"","status":200,"headers":{"content-type":"application/javascript","content-length":"1180231"}},"type":2,"external":true,"timestamp":1723918844401},{"data":{"url":"https://ipfs.arkivo.art/ipfs/QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw/underoceanwaves.mp3","body":"","status":200,"headers":{"date":"Sat, 17 Aug 2024 18:20:37 GMT","etag":"\"QmcmrNabbTqQkFnJ168eC5L8zp8m6H63hFtt6iXVd1N237\"","server":"nginx/1.27.0","connection":"keep-alive","x-ipfs-path":"/ipfs/QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw/underoceanwaves.mp3","content-type":"audio/mpeg","x-ipfs-roots":"QmcfRtuzru12FisCXjMGXLg4iudQ6u8QujTEjLtwjYqcfw,QmcmrNabbTqQkFnJ168eC5L8zp8m6H63hFtt6iXVd1N237","accept-ranges":"bytes","cache-control":"public, max-age=29030400, immutable","content-length":"1376416","access-control-allow-origin":"*","access-control-allow-headers":"Content-Type, Range, User-Agent, X-Requested-With","access-control-allow-methods":"GET, HEAD, OPTIONS","access-control-expose-headers":"Content-Length, Content-Range, X-Chunked-Output, X-Ipfs-Path, X-Ipfs-Roots, X-Stream-Output"}},"type":2,"external":false,"timestamp":1723918851198},{"data":{"url":"blob:https://ipfs.arkivo.art/658d6e1d-c996-4308-949a-dd753485028e","body":"\"����\\u0000\\u0018Exif\\u0000\\u0000II*\\u0000\\b\\u0000\\u0000\\u0000\\u0000\\u0000\\u0000\\u0000\\u0000\\u0000\\u0000\\u0000��\\u0000\\u0011Ducky\\u0000\\u0001\\u0000\\u0004\\u0000\\u0000\\u0000\\u001e\\u0000\\u0000��\\u0003\\u001dhttp://ns.adobe.com/xap/1.0/\\u0000<?xpacket begin=\\\\\\\"﻿\\\\\\\" id=\\\\\\\"W5M0MpCehiHzreSzNTczkc9d\\\\\\\"?> <x:xmpmeta xmlns:x=\\\\\\\"adobe:ns:meta/\\\\\\\" x:xmptk=\\\\\\\"Adobe XMP Core 7.1-c000 79.dabacbb, 2021/04/14-00:39:44        \\\\\\\"> <rdf:RDF xmlns:rdf=\\\\\\\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\\\\\\\"> <rdf:Description rdf:about=\\\\\\\"\\\\\\\" xmlns:xmpMM=\\\\\\\"http://ns.adobe.com/xap/1.0/mm/\\\\\\\" xmlns:stRef=\\\\\\\"http://ns.adobe.com/xap/1.0/sType/ResourceRef#\\\\\\\" xmlns:xmp=\\\\\\\"http://ns.adobe.com/xap/1.0/\\\\\\\" xmpMM:DocumentID=\\\\\\\"xmp.did:15B3EE434E3811EC911EB6E2C60E4019\\\\\\\" xmpMM:InstanceID=\\\\\\\"xmp.iid:15B3EE424E3811EC911EB6E2C60E4019\\\\\\\" xmp:CreatorTool=\\\\\\\"Adobe Photoshop 2022 Macintosh\\\\\\\"> <xmpMM:DerivedFrom stRef:instanceID=\\\\\\\"52B26A73C85C31A77FF50228249C8343\\\\\\\" stRef:documentID=\\\\\\\"52B26A73C85C31A77FF50228249C8343\\\\\\\"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end=\\\\\\\"r\\\\\\\"?>��\\u0000\\u000eAdobe\\u0000d�\\u0000\\u0000\\u0000\\u0001��\\u0000�\\u0000\\u0010\\u000b\\u000b\\u000b\\f\\u000b\\u0010\\f\\f\\u0010\\u0017\\u000f\\r\\u000f\\u0017\\u001b\\u0014\\u0010\\u0010\\u0014\\u001b\\u001f\\u0017\\u0017\\u0017\\u0017\\u0017\\u001f\\u001e\\u0017\\u001a\\u001a\\u001a\\u001a\\u0017\\u001e\\u001e#%'%#\\u001e//33//@@@@@@@@@@@@@@@\\u0001\\u0011\\u000f\\u000f\\u0011\\u0013\\u0011\\u0015\\u0012\\u0012\\u0015\\u0014\\u0011\\u0014\\u0011\\u0014\\u001a\\u0014\\u0016\\u0016\\u0014\\u001a&\\u001a\\u001a\\u001c\\u001a\\u001a&0#\\u001e\\u001e\\u001e\\u001e#0+.'''.+550055@@?@@@@@@@@@@@@��\\u0000\\u0011\\b\\b\\u0000\\b\\u0000\\u0003\\u0001\\\\\\\"\\u0000\\u0002\\u0011\\u0001\\u0003\\u0011\\u0001��\\u0000�\\u0000\\u0000\\u0002\\u0003\\u0001\\u0001\\u0001\\u0000\\u0000\\u0000\\u0000\\u0000\\u0000\\u0000\\u0000\\u0000\\u0000\\u0004\\u0005\\u0000\\u0002\\u0003\\u0006\\u0001\\u0007\\u0001\\u0000\\u0003\\u0001\\u0001\\u0001\\u0000\\u0000\\u0000\\u0000\\u0000\\u0000\\u0000\\u0000\\u0000\\u0000\\u0000\\u0000\\u0001\\u0002\\u0003\\u0004\\u0005\\u0010\\u0000\\u0002\\u0001\\u0003\\u0003\\u0002\\u0004\\u0003\\u0006\\u0004\\u0005\\u0001\\u0007\\u0002\\u0001\\r\\u0001\\u0002\\u0003\\u0000\\u0011\\u0004!1\\u0012A\\u0005Qa\\\\\\\"\\u0013q�2���B\\u0014\\u0006��R#�br3\\u0015����CS$4�\\u0016��s5cT�D%���\\u0007\\u0011\\u0000\\u0002\\u0002\\u0001\\u0004\\u0001\\u0003\\u0004\\u0001\\u0003\\u0003\\u0003\\u0004\\u0002\\u0001\\u0005\\u0000\\u0001\\u0011\\u0002!1A\\u0012\\u0003Qaq\\\\\\\"�2\\u0013\\u0004���B��Rb#\\u0014��r\\u0005�3��Cc\\u0015��\\u0000\\f\\u0003\\u0001\\u0000\\u0002\\u0011\\u0003\\u0011\\u0000?\\u0000KR�J\\u0000�*Qx8\\r�Ȗ���+^���\\u0001*SI;\\u001b\\u0004&9y8�H��w�\\r�\\u0004\\u0019k��\\bk���o#IY=\\u0007\\fa��r[��XG^��)�x��pDR\\u0017K�XV1���\\u0013\\u001fAkr\\u001b\\u0001�(L.��<�>�M���-$���\\u001aL\\u000bGh�����)\\u001eF4��\\u0018�^-����]���\\\\\\\"���\\t�\\u0010.H�\\u001e\\u0014�(`Y�e9\\u0007bw\\u0000�\\u0000�ƚaj�c��DO���я\\u000b�A���=4�3ԕ(\\\\����-����\\u001e5ll��\\u0005�!����1�EJ��ޥ\\u0002%J�(\\u0002S�o@q�Y%p�̢�\\u0002F�RX#�g�?�`>W��=ź\\u000biUT��ً��a��\\u0017o+��\\u0014|8\\u001d�%�@��rG#�\\u0000�z�\\u0006�\\u001b��^��\\u0004�&����e_\\u001b\\u0019��D�N��+��\\u0018\\u000f�-������\\u0007κn@/��Ɇ\\u0019�1Jy+\\u000f����'YCN\\u000eN�m��&,�7�n�ч�[\\u001f\\u0003' \\u0006E�g���Y�й\\u0007�M���@-1>$.�&n\\u0003c\\u0000�K�t&ֱ�աJ\\u0004�R�!��J�\\u0001*T�@\\u0012�J�\\u0001*T�@\\u0012��^�F�\\u0011MoG|�e��\\n?�\\u001f��C\\u000b0\\u0004\\u001d�\\u0017\\u0015��x��)VT��Ԯ�nÇ3���$��o�ֱ�>�\\b�\\u0003!�s�AG�n\\u001c\\u0019�*�\\u001b(,|\\u0000�j�yl.�HG�Muk\\u001a�8��\\u0003��?\\n�7�}�\\u0010�z��v���c����5�v.�ڲ�c��?���N�V�K�[�\\u001f\\u0004s��r}=ɑ~\\u0000���\\\\\\\"�\\u0000�?��T酒æ�֪�����\\u000f=����>(H�\\u0000�e\\u001fFB�\\u000eJG�M{��o^YR��\\u0011�\\u0000�����\\u0004�\\u0017���.�y\\u0005Dc����-\\u0004J/�:���ٱ\\\\\\\"�\\n<j�w\\u0004\\n���5�����pai#\\u0001����<\\u0014�r��{vGk\\\\\\\"|v���nA=.k����\\u0007R��\\u0001�\\u000b\\rEv�����G�\\u0001\\u0000�\\u000e.\\r�5�]���Pe�\\u00118�\\u000b�\\u0017�Z���4��[4&V\\f���\\u0011p|�E+�Z#�.2�?J\\u0000��6\\u001b_Z\\u001a\\u0011�iS;c\\u0006�\\u0001�\\u0005\\u0000Z \\u0015jb<(�^\\\\\\\"���*�\\u0016��(\\u000fq���\\u0012�KN\\u0018��\\u0018��ʲ�q:iD)�{�.\\u001b�J�\\u0019p a�\\u001c\\u001b�m�Px����)�\\u0013��\\u00164+�/pm�O���\\u0005e�\\u0017n݄�Ȗ\\u0000��X\\\\\\\"�M�(6\\u0006�$��u��X�C��\\u0011\\nH#��G�)y��ƙ�U�\\u0002�UQb}GM�\\u0019Bڔ�b�E����q\\u0011P�b�jGKR\\u0000\\u001a�*P\\u0004�\\t\\u0003z;\\u0007\\u000e,�/#\\u0010\\u0001�\\u0003O����#����G�I�����\\tvS\\u0002��Z�j�;\\n�[���D+�:���©�y\\u001cE��\\u0001RH�|:\\u001a�+\\u0019/�H�&u�Sq�\\u001aM�\\u0003���/VV��\\u0000)bo}�z\\u0002���tH\\u0014��9/�G\\u0003R��}��ۖ��$ Ӛ�}N��\\t;\\\\\\\"H\\u0016�\\u0000�ҽ�6���Z$ *�\\f�<4��x��Vx\\\\�\\\\_�cLF�*W����\\u0000{R�|��ž\\u0015�Ϸ�_��\\u0014\\u0000eJ�74W��\\u000b��V�\\t^�X�Qrt\\u0000nM^\\fy�d��R���|Mt=��ŉ��>���t_��\\u0000:�d���'b�`\\u0012LO3��(���Yp�\\u0004E��ǩ��lG�p����E4�.4�\\u0019fed����[ԫ1��2�<�\\fn9��V�\\u000b�jo�\\u0000���H�\\u0000���s��\\u001fw,\\u0006c\\u0019��\\u0006��]@��\\u000f92\\u0012�=�\\u0007ԭ��;�����r�'ē��k�,5V�\\u001aƺ\\\\܈dV�N\\r\\u001f���-��|^�\\u0016<�������O�=\\u000b���+c!�\\u0013\\u0013���B&\\u001cbV�C�\\u0012<l\\u0006՞h���e��я\\u001b��;�p+��Ҩab�f\\u001a�𥿸%|<X�h\\f���\\u0013�r��j91�G'\\u001co+��R��\\u0005QrkUē�0���]\\n���\\u0014�3���HH�`e��%R\\u00143���\\u0003\\u000f\\u0003j7;\\u00013a�N��v(�%�đ\\u001dT��\\u0000��\\u000e̾�Ӓ�6^�������*U�%G�9��@�ԧ�v�p%\\u001b�O~&�?\\u001a1�1������eة\\u001f�j�û����\\u0005C�\\u0018��Z�,�}\\u0011��8�:��:�����s7���T?ƶ=� ��2�\\u001bkU[�&\\u000f����#�WR�J���*T�\\tR�J\\u0000�*T�\\tR�J\\u0000��\\u00175�YE�`\\\\\\u0000j�0j�[ �(��\\rOҩ\\u001e\\u0015�\\u0015�[\\u0000)K\\u0001c��v��\\u0015Jp��^�ʌ>DQ�9�_�i�\\t�5Vf\\n��;\\u0001G���,���A�M\\u0019\\u0016,P-�\\u001a�c��\\u0000�w�\\u0002\\f�M��\\u0000��`�Yq{Y\\u000e�E�~\\u0006�\\u0001K��^��t<O�juy\\u0006.�^��0U\\u0005��\\u0000Ԛuۻ@����/�Ǹ_6�n\\u0004\\u0003\\u000fi͚1\\\\\\\"�P�\\u000666�e����\\u0014�\\u0007\\u0016�\\u00157\\u0017�\\n��G<M\\u0014���w���g%[�c\\f��\\tb��K\\u0001}�\\u001d�ٹ�M\\u001eO!\\u001c`qeӕ�:�S\\u001c~Ս�'�\\u0011bַ��,~T; H\\u0005�\\n�<&%�\\\\\\u000b_�Ԯh%�C\\u001c�U��<Eu�ֳ�Ň!8J�ק��\\u001a�!\\u0007'N�1�\\u001f\\u00103�goS\\u0002<v\\u0014~?m��\\u001e���\\u0000[z��*M\\u0015���;N\\u0002\\u0004\\u001d�I�N\\u0018�\\\\\\\"��X[�N��$xo�7)[P�a���S�f�94p�/ԪH���hB\\u0002ˀc���,\\rΛ�5ygi��m�o��@\\u0012�J�\\u0001*T�@\\u0012�z��l���a�v7��_\\u000e�\\u0001�Q�d\\b4���QC��Y\\u000f�E�1�8��u��j�\\u000bR��(��S}��`G��}�h\\u001a^�\\u001bހ\\u0017��+���p%\\u001b\\u0010~�L��m�(��jv�X]�T}�D8\\u0010���g�:\\n,\\u0000/P\\u0001}�\\b)�C�\\u0000��`�e����\\u0014?��좀&�j(\\u0001\\u0005J�x��Y<\\u000e�\\u0003�gLD�R�\\u0000\\u0011�\\u0012�)�.�6>&�lh-olT�d�\\u001fY��\\u0016ɩ���Z��\\u0005������\\u001dE\\u000e��&�q�5��.k�P)�?p�'Tw<QK\\u001f\\u0001Fc`��y��e�_:5\\u0016�Ak�W\\u000bMي\\f�����\\n[��b��=\\r����kD��'���\\u000e$�,|*WG$+*\\u0014qum�\\u000eL\\u0007\\u001ef��\\u0006�|A�V�Z�*�*U\\b��\\u0005�U\\u0017'@\\u0006��\\u0013��\\u0000��|O�h\\u0000�~�$�\\u0019�\\u0011��\\u0017a�+v�\\u0011�����u\\u0016�i�\\u000b�'\\u001d�e\\u001c����\\u0002?�9\\f�\\u0012`|IS�\\u0011\\u0017��ԟ~R�\\u001c\\u0007\\u001b}���\\u0015\\u0006�]�\\u001dj}C�:`/�\\u0000��ֿ���\\u0000\\n�]���x4!�}.�c𣂋�ڏ��k\\\\�t�i@\\u00037m�-e�\\u0000\\u001b�iY?i�;B\\u0005�&�ߍ\\u001bȖ�}4�\\u0010B�?/�1\\u0001E�p�<�`��1'�$ƍȰ\\u000b�O�\\u0010���t�&�Ef�']F�����\\u0001�����c\\u0017�\\u0012�Z�\\u001a7�\\b�\\u001dŇη��T�\\u001b�\\u000eַO���mE��oa}\\u0001�\\u0000\\u0006��\\u0005��0f�F:kj��]�.�.�&$��Z#��H��Sm�\\u0015�#s��M�\\u0000d����x(S��7����b\\u0015�R-��\\u0014I���W:\\u0012~�z���\\u000fk��[an��\\u000e#\\u0019�ʇ ��[ʱ�]�Qe���*t���C%J�\\u000f\\u0012L̅�>��tU�M<\\u001d�\\u00065�B�����֤�CJNr��c/���3>���t�C\\u000b\\u0016\\u000fTQ�N�s��Yln4�d \\u000b+\\u0019\\u001a\\u0016��:�,5ҕ��\\u001a\\\\\\r�4$���{�\\u0004�a��4!]J(����*GBt��U=Rٟ��(\\u0000$ǝ��\\r�v�jߣ����S[T�)\\u001c\\nN.B��?-\\n�؛�\\u0000M��o�P�!\\u0002����\\u0006��H�\\u0017R\\u0001ڛn(\\\\�����H@\\rJ�)��*T�\\tR�J\\u0000�*T�\\tR�z\\u0014�@6�\\u000b$/ %zx�4Wj��gO��\\u0011��F�}7�n�.?��B\\\\\\\"[ʆ��noַ=�c\\u0002�i�$nm\\u001c�-Ȟ�G�=0h���=�\\bgLp\\u001b���~_\\u001a�Og���i�����t\\u001d(�ۅ*g�ə)�%x�m�\\u0004^�:V���܁\\u0014����qћ�ho)N���^\\u0005_�M�\\b��\\u0012ڕ:�\\u0014,�\\u0000�\\b����0\\u0016��3�\\\\\\\"��\\u001e\\\\�\\u0017H�!����s�=�\\u0007\\\\\\\"+\\u0013�9)�5�\\u0000)��z��B�I���56�����!ks �\\u0013cR\\\\L���\\u0018�܂\\b��U�����q>Ju�-T���\\u0019�1��>u��H�Ֆ\\r�JN�\\u0002h´�i�\\t`\\u0010�å��\\b�Z�T\\u0007�OlS�Ê\\u0000��\\u0013J�\\u0016�:��Z͎~�\\u001a�\\u0015n�?�O��ƫ�%\\u0013\\u0019<=�p/�>@ט�\\u0016ˎ)\\u0017s�S�5��/WX���r6���ć\\u0007\\f�{+����vɤ�x/�\\u0013y\\b��-񧪠�V�aIY��\\f]�\\u00115�����\\u001fu\\u0010;f\\u0007����\\u0000ΉJ��R�� #��H'�P\\u0001���k\\u0017i�F��K\\u000f\\u001b���'��ۋ\\u001do�+H�\\u0004�\\u001b)�/����j\\u000f!�\\u001d�Q\\u0012\\u0002��\\u0005\\u001a}ո�I�W�\\u0014\\u0014�>6P�=PJ\\u0000q��u���y����¢FE\\u0005T�s��¨ѨI��s\\u0004\\u0010���Yg���+\\u0003{n��R>�ۢ��2�\\u000b9u\\u0004��\\u0017�\\u0005>���g~YY�\\b\\u0018�\\u00076[^�6D\\u001f���}�>\\f�H�AIL��\\u000e�\\u000b�#;\\u000b�;9�\\trO\\u0014�\\u0018����\\u0000�¿\\u0011\\u0019'�G�׸����\\u001d(����މb�.���\\u000f��O��\\u0015Cڱ�o�=5:���q�Z�x�\\u0007��̤17ӧ��B\\u0014 1�!$�,\\b�Sұ~�w��L?�0W7r�G?I��5�+�n \\u0000\\u0005ԝ\\u0001�0�8�,h��ot�TzW��a\\\\\\\"\\b�4\\u000b�P\\u0000\\u001f\\u001a�9�����o�^���~74\\u0004\\u0019dv��\\u0007���2��t�/\\nlF\\u0002K\\u0015?K\\u000e��D\\\\&�S��\\u0000�-�\\n�$'[?�)&\\r\\njT�TI�#H�.�l\\u0007���\\u001a\\u0005ǅb_�5>'��ݟ\\u0016����\\u001f�4�\\n��1ອ˅���ǲcg0�E�����|E2QW�D��\\u001fo��<A\\u000e�ݧ\\u001e|���Ԧ���\\u0015ک\\u0016a]\\u000e���S�/�T�e͏\\f\\u000b\\u001c�S�<P(%��ma�ƀ��\\u0005\\u0010\\u000f�\\u0010�(�l��\\u0018���x���26�v*���l\\u001a�D�1\\u001d�����;o\\u001ammt�u��V�E�JYG%�\\u000eb\\u0018�X�䑇�j\\b�oL��؎:�7����U���#��d\\u000b3\\fN}�\\u001eJ-o\\u001a�\\u0011�6�\\u0014;SA��%G�4'z��%���0�\\b\\u0004\\u0011�k\\n5\\u001dc�b\\u001a��AQYܜ�J�*S\\u0000��\\u0018|�-��,~�\\u000fƺ2\\u0006�~�o�}�=r�F�(��O\\u0017_ :V�ЋjF�E���\\u0014��t��������Ϋ~*܎�p*�Y��A\\u001b�³�=/n�Wc�\\u00006�����܍M��@\\u0019ec�*�2�\\u0001\\u0004|j�Ǎ�:*�\\u001e��ڹ\\u0003b\\n��*�8���\\u000b�\\r��\\u0004�x\\u0001�*�XՕ��%:\\u0011D�7���\\u001d�@��?� 9ܼVƓ��\\u001bTo\\u0011��\\n�2�I�18\\u001eDn\\u000f�\\\\\\\"�'�C\\u001b�G�<k;(-9)R�J���J�\\u0001*T�@\\u0012�J�\\u0000�\\u0000�G�\\u0015����\\u0000\\b�6\\u0017\\u0003]hN�\\u001f��\\u0002�R����U\\u001bm+��lߩ�tE�QV���\\u001dh*@\\u0019Ʒ���\\u001d}F�n�\\u0001tگj�mZP\\u0006v���UtbB~]��*d+p�b�M����\\u0012\\u0018�X�#��i���\\u0003�ߒ\\u0016\\\\\\\"ָ�6�P؂z��5�:Ȯܯ�|��[�˪�؏�|��\\u0010�.�2����o�?�8S�$M'\\t\\u0000\\u0006>[Wj�\\u0001�'z\\u00137�aw8�<��F����˥Ƶ�M��d_8>`��3]T��@�Y�\\u0018��W�C]<�O�\\u001f\\u001e \\u0001��'���d�\\u0012��N���Zϩʻ-�8�8�2�����:��\\u001a&\\roY6��\\\\\\\"�T'9�S��\\n��\\u0001^ړ\\u0002Z�+��T��]�NU���Դ3NU�5K׷�(\\u001c�� Uo^ޭ1\\u0016\\u0015~�U\\u0001�\\u0003@\\u001e���� �\\u001a��� #j�����5�ڐ\\t���/u\\u001f�m���\\nm�\\u0014�8���\\u0017�W�=�\\u0015�I-�����*y|���/�Ó{�\\u0019v�\\u0005^>���\\u001d)�\\u000b�P4 �\\u0003\\u0019R<�E\\n�-��F�\\u0006�\\u0012k;ջa\\u001c�i['\\u0013��VV�PYP���צ?�\\t��\\u000f\\u0013�\\\\\\\"�G�q\\u0011�k3�\\\\�\\u0004%�oj��?Rq\\u0013\\u000f�\\u0000q\\u001a�kY�����f]{\\u0013�T�\\f�\\u000b\\u0014R\\u0000��KVk�#-���]+�_۹2��e�nwf�\\u0014�\\u0007�a�c,<\\u0004�jΪI���J\\r\\u0013�\\u0004�pE�X��mQ�\\u001b�\\u001c���u�'�(��4[��\\u0017�V/�p��/�\\u0005\\u0010\\u0012|�y�\\u00021�u�/j�ه����\\u0000�wߡ��\\t�\\\\\\\"\\u0016��\\u0017�P�\\t\\u001ceO��2,̪�ܶ:�~4\\u000eN\\u0011�֠nz^��J�\\u001c�|-���A���\\\\\\\"Lx�\\u0005�3F�Ө\\\\\\\"��]�G\\u001f%CnAA�\\u0002�\\u0005�N\\u0000�����E�a`oW�\\u0012G:��z�$*�:�@�p\\u000b7\\u0011s�Dq��\\u0014��5�\\u0004|��#�(-ˮ�9t\\u0000�6��_�}\\u0015�&n2B����E�;V\\u0012����\\u0007\\u001e2o�]o�\\u0000v�!'�L�T�I;\\u0001X�n��\\u001a���j�Lf�(\\u0016\\u0019\\u0014_�\\u0016�¹G�Y\\u001c3�\\u0007Aֆ�F��\\u001f�G�[�\\u001f�*F?;\\u0005�MP\\u0000\\u0005��l(�֜�c=\\u0012�~B�с�A\\fP'�\\n�Q����Z�Y��KV\\u0006��oZ����V��(\\u0011g�ǒA#Ƭ�X_���1\\u0011���Y��t&�\\u0012!<\\t�o��Mj\\u00077����yO,�c3\\u000eF.�ā焞�w#�O�{�h��\\\\��C�\\u0000�/����8�(�F�݂�ܝ\\u0005\\\\\\\"�������1,��\\u001b��\\f\\u001a1���\\u0018��\\u0007�6l3\\u0003���ebyK���S\\u000e�\\u001b+�\\u0011����9˅$�,F\\u000ei\\u001a�OYn'�\\u001e�m�g��k;\\b_\\u0003�~���\\u000b\\n�o�\\u0006��\\u0003�v��\\u000end���!�y\\u0011}��пM|h\\u0002?�U�\\u0000V$Y�y!��\\rn��O�|�\\u001e�&f,��,(\\u0014�d!�C�\\u0012E>���]�\\u0019I����`\\u0016�|k���\\u0014>�y\\u000e�\\u0015\\u0001lM���\\n\\r:x�J�q�N���\\u0005rqr�B9(RL`�Z�:H�E$|e�,�?;_�Z2^�\\u000b�\\u001e\\u00167�+/�ܽ���6P�:\\f��\\u001f��؃���{�>ZQŝ\\n��%\\u001f/\\u001a-�{'��(\\f�۩:�<ܼi1&�X2\\u0003��}�si$��C\\u000b\\u0016ҵ�Hb/���\\r9�V��mexy� U*P.��K|��<:�\\u0000\\u000b\\u0003u6>U����/��\\u0001U+4�6�c�kJ\\u0000�*T�\\tR��ca^sc@A��뮵����4�*\\u000b ��U\\u0015kuZ@Y\\u0016浩\\u001a�_Ƭ\\u0006��z\\u0006��2m\\u001eD2�Ҭ/�ގQsCw\\u0014\\u001e�=A\\u0004P�\\u0007�uyj�\\t̘�ok}�Q\\u001cMF�\\u0011�\\u0015�L\\u001e�m\\u0016Ŷ>}+u\\u0015�\\u001e��T��\\u000f\\u0006\\u001cQu\\u001c�;�w�xQ�T\\u0015a��\\\\\\\".j\\u0003z�\\\\T� =]\\r�5E��\\r\\u001e\\n���XR`{j���kRԀQ�\\u0015�����\\u0002����y\\u0010�SH��I�\\tt\\u0006��խ\\\\�\\u0013\\u0005�TL�U4Pm�V\\u0015\\u0004�A�\\u001d�SR�D�R�\\u0000J�Q<��\\u0005��>5�0I;�A�=\\u0000�\\u0010�G\\u0002qO��Ԛ\\u0000�\\bV\\u0004⻟�����S�Wam*��@E�ξF���\\u0011�\\u0003=ڢ�^^�_��\\u0003�\\u0000{k׿�5+�\\u001b_~�\\b�\\u001feA^�J�X��\\u0019��鵫�_z��#���*.h\\u0001Wp�\\u0000䟀�(j��4��۱�{���\\u0000��\\u0000���TIJ�\\nc��{�b�X���i$�<��c��ǀ���i\\u0017P\\u0007�\\u0001\\u001e[��]!��\\\\lq\\u0014(�Ҡ\\u001f�FA�\\u001ac�\\b��w�\\u00134\\u0002Tּe�8��x��!\\u0014Tҭƴ\\t^�֘\\u0019��Z��T�u&�\\u000bv�@�M>4���mg\\u0003T<[�v���\\u001a�XVE(�2��\\u001e�'\\u000eD��ԧ\\u0019]�8��\\u0013p�A<X^��zI\\u001c�!n;)�ƵM2Zh�Z'x�WO�\\u001d*��'�\\u0000*\\u001f�\\u0000H���!���}-� _+���ޱ�,e\\\\1<u\\u0003K鮴̰R+�ƀ�f��C\\u0016c�\\r\\u0000u\\u0004�<�\\u0000��]T\\r?�z�\\u001fCk[�ƵC��=(\\u0002�X�?\\u001bW�k�:�\\u0000\\n��W:�\\u0015�k��yu�\\u000f\\u0007\\u0010�H��A��*��\\u000b�\\u0001�@������\\u001a��k�\\r�\\u0002��A�S��K�ې\\u000e�\\u0000\\u0003�Z��܀�\\r�J̀A�:\\u001dm�S\\u0011,�H&��E��Tv��\\u0007��m�W�`��\\u0000��W������\\u001f;\\u001f:\\u0000��U��[�-�T\\bC�.\\u0001��A^\\u0014\\u0002�kk\\u0000oׯƽ�\\u001cv\\\\\\\"�\\u001e]znh\\u0003�/���$t�k�T\\u000b\\u0003nV\\u0005Z��t�\\u001b����z\\u0013��\\u0000�VF\\u001c�3\\u0010\\b6񽭯ƀ\\u0015w������ޗQ��\\u0010�n,m���x\\u001f��\\u0011\\u0013�5\\u001c�#~7�|i1������\\\\.�;\\\\��`(���\\u0007J�\\u0011!�c�q�\\u0005�G����{jk=Yz WKﰡ�PZ��F��k��\\u0007!���ZD�w\\\\\\\"��Y����\\u001a�j\\u0004>F�ڪ\\u0004T(\\u0015�i�����&\\u0007��\\t�Mx\\u0005H�*\\u001a�ז\\u001di\\f���\\u00000����F�.d�#)Q�S@�*T�TI*T�Oj�\\u0011\\t\\u0001Sq�(��~TH�o@*�^&\\n���x\\u0013�[��u��~��U���?�ҿΓ�)��8j\\u000e|\\u0002M���\\b� �\\u0006����_ƚ��rRk�/��O�7���\\b�e:م��-�5�w)�F�7�����h�\\u001d�e�\\u0000˵�|�u\\u0011v�_ia�\\u0002���2Ms�\\u00180K����y�7y%f1�[h����\\u0003��\\u0007h�l��J�z�6$�\\u0006(5��lI$;\\\\lha0\\u0004\\u0005\\\\Y�����~ǦT�\\u0013��䱃�Xѡq���d��^$�1 \\u0001m�i:L�4�\\u001d�,�rζm\\u0018��,i�Z��C)\\u0016Y�����dA�Z�5�NT]�E��ɑ06ac��<|!��O��HyH\\u0011���aJ\\\\\\\"8�\\u001d�y1��=��$�M�\\u0016�&`\\u0018�BȾ\\u0006�ϔ�)\\u0000�\\u000b�0�|��\\u0001�r7jX\\u0015Y��\\u0002�SY�\\u0015nR\\\\\\u0005�j.I���d���k\\u0013�0`�\\\\\\\"�r+\\tlE�����4y��o\\u0000(���P�1�\\f|�G\\u0004\\\\\\\"���*�d\\u0017�z��ZԧZ�\\u000b���\\u0004\\rR(�$g\\u0002Ņ�\\\\\\u0002\\r�P��\\\\\\\"\\\\\\\"V�Y\\u0001cZ�05]\\b�����ֵSp)\\u0001�oZ.ՙѪ�h\\u0003СX\\u001e�m���\\u0015\\u0012\\\\\\\"��܏/:��]G/\\u0001V��(H����@\\u001e�(�є�c��|�{'kIa�\\u001c���\\u0005YG��9  �pe\\u0006���[Ι\\u0013*G\\u000b�Q�\\u0000ݔh��/�>=*�Vk\\u000b�\\u0011f`&\\f�9r�h\\bP��L�+���5o }\\\\\\\"��YT�\\u000f\\u0012X\\u0001�_�}��WK\\u0011�\\u0018��m\\u001e�dʷp�.��\\u0000T�{��r��\\b�ϒ\\u0018��P8�Ƣ�U#;h\\u0012�Q�\\fX(#v�~g�k\\u000eq\\u000e�Ë)�+ic{Q8qb�`\\u0005u\\u001e�\\u0000\\u0019XnE+�x1�ș\\u0010�q��..x\\u00124��\\n��aú\\u0014�n\\u000e��\\u0006��\\u000f\\u0005\\u000bP:��崖\\u0012X\\u0011bT\\u0010F�~B�eg����\\u0001��B6T\\u0002�u;�\\u0005�D.��x\\u001b���O%m:�u��Mv\\u0000�C`i�\\nU@�ykY�]�F��Z��\\r��EC!�:j|>t���Ro}>4\\u001fu\\u0004��e4X�#b<x�҅�*�\\u0015�{hEźѸ��Za���\\u0007��Q�u���\\u001d(����\\u0005��\\u0001��4�\\u000f�\\u001f:m�ԭ}�*�1�\\u0015�\\u00164\\u0016D\\u0016QW��{Um�fP'xl��ᄌ���\\u0012��~f\\u0014N\\u0016@�\\u0015a�]\\r�?0k~ �q^�aI#�\\u0013�\\u0003\\f����&��hZ�z�e[�k��(.\\u0018xԤ���0�+�\\u0014�LW�H7P~uqݤ��>�]PoZ�:x+�S�#6�ſ�\\u001e\\u0004�Oq��`\\u0007��T\\u0005M��:�uQh���qH��\\u0000�\\\\\\\"����V\\u0016\\u0007�aCB��UmA \\u001a�x��J\\u000b�q\\u0003O�O�j�N\\u0014�\\u0000&`�^�m�\\u0013$/\\u0016��\\\\|�w���ޅjT�LGC�`�\\u001d���X\\u000f-��L\\u000f�m�h|5\\u0007\\u001a\\u0011��~\\u001b\\n ��\\r\\u0018i񭖆oR�,/�:|��5���\\u0000\\u001a���.>U�}O���\\u0006f�\\u0005͸�V���Gz�o��iqz��\\u0010��k\\n\\u0000�\\u0003�M�|kȮ\\b7$ޮڐ�A\\u001b޳f*\\u0001[\\u000e=7�\\u0007�ǖ��Ϋ\\u001d�\\u001eCM���̬N��\\u001e\\u001f\\u001a���{\\u0000m��\\u0005\\u001dQG�����\\\\�������ܱ^\\u0004�5�+9�ծ���{Pԁ̺21G\\u0016a�\\u0015�9��\\u0013-��\\\\\\\"�'���vVV*��4 �MAi��J�)\\f�*T�\\t^�ȅ�6�kʼB��<YG�@\\u001d�Q� A�@\\u0003�^�\\u0017Mj��#r�Z�u����\\u0014�@�H5�gk\\u001aݵZȊ\\u0000��\\u0015sTS��q�\\u0002'\\u001d5�X�VK\\u0002���\\u0003η$mS�\\u0013\\u0003)}.zjEx�ݥ�am�\\u0004��V6\\u0002�iXM\\u000b<BF!\\u0015[�S� �)�KH���f�>K��&0?�%�]���L`���u\\u001c\\u0019���6&�il��9\\u000e�\\u0010!��.��:q�;�q���\\u000bq ]�o�����\\t/�h��.wL;�M�\\u001c�.\\f��\\r[��\\\\��X\\u000b_�xnMΤ�jRR�x\\u0013�Nѩ��[ǽ/ə�*��\\u0003�\\u0019�]�\\f��w5[!\\u0005T\\u0015*R\\u0003��\\u001a� =�UE{Hg�+���\\u0012�\\u0002�z(\\u0003�V\\u0015\\u0005XP\\u0005��\\u0002����\\u0000\\u000e���$k{k~,����\\u001e����%�U\\u001cHӥZLx&[J��5idD�����:\\u000e�\\u00155MY�&���Um���O\\u0016T�}W����O�!\\u0003\\u0001�`\\t��s��\\u0014�ˎ9~��o;\\u000b�N�@��?�h��\\u001f|J�X�\\u0007Z\\u0007\\u001d���>Vv�%��A�\\r\\u0005�ĺ�\\u00038\\u001e�n7\\u001a\\\\Տi~�\\n�d�/�\\u0004j\\u0006���7\\u001a\\u0015Тm�\\u001bc��d�%����\\u000f�լo�\\u0006��z_���\\n\\u0015ǌ#\\\\\\\"�M�[ζ���8\\u001b\\\\�\\u0000@��\\nM�%\\u0005���΃���ν�#�x��\\u001c��\\u0000ܓ�H�s��<�ex��5\\u001cP���)n\\tn7�`\\u0014!\\u0000��\\u001fƼ�8�\\u0000�����\\u001f\\n旸f(��[[ݽGﮯ\\u000b2\\u0018�dS\\u0012\\u0001�\\u0007/�l~�Q\\u0003� \\u0019�����B���Ą\\u0015��\\u000b��P\\u0018�È?������\\u0016@�\\u001a�%�m-{�\\u001d:�\\u0019�ȋ\\u0018PR+Y�mj�\\r'���TG���ko\\u001b\\u001dhc��{���]�cf\\u0002�\\u0000굨\\u0019pW$��\\u0013\\\\��\\u0000qX��\\u0002v�g\\u0014Y/dP�����y\\n���]��#��\\u0011�#l�\\u0019V)Wu6'����E���S�=k����\\b�$3� Ԫ�\\u001c�(��r�qI�Sрo�T�S:~��.$�\\\\�4lx��C�qtcw\\\\�FF�qpC\\u000e#c��b%7�P{q���o%�\\u0000\\u001a[�\\u000f�(_�5o�:C�\\u0003j��b��\\fC�Bu�\\u0003aR��E\\u001a�}(�����D)�\\u00026?M��e,��fa�C�\\u0001�7��&�bNGS��ܓҽƄ�3ͬ��(������EvY�M���ƨ�����)�,=\\bY��[��`�[����\\u0004�\\u0007�\\u0002�É\\u0015K,a/�����\\u0002��II����龄t\\u001f:�\\u0005[�\\u0000p��A\\u001f��\\u0011\\u000f������B�,'�\\t��Q�u��Z�)\\u0012�r�y\\u000bF]\\u0011@\\u001dO\\u001d\\u0001?\\n� ~��3q'uY�U8k ��H;�d����\\u0010��n\\u0000!��|u Ӽ���߸G\\u001eCd#�\\u001e��8H>\\u000fZ%�]�֭�/��`S�q�ďْ\\u0006�pG�7.J�����x�\\\\;�\\u000eO��\\f^�P|\\u0005\\u001f\\u0019�#�4�ʆ̳��S�\\u0011�γ�-\\u0004r���\\u000b�A\\u0017K|�$�5���ݼ��9\\u0001�_ +1�m�b�R*4\\u0012��,�6\\\\\\\"�f7�Z��X���&}��W�r�<�?1��>����A� �Z�\\u0015`(\\u0003�\\u0000נ�}-��J�#�W\\u0018�7$�\\nR\\u0010Qg������\\u0016\\u0000�S��\\n�GD�\\u0014\\u0002���YR�T�3�J�Wj����\\u0012\\u0004EֶU�\\u0011t��]EH�q��E\\u001a�ȯUi\\u0001�\\u000b�=�e\\u0011�{�k�\\u0014nC��g;(����FJ�Ի\\u0000G�ꪷ�&�x���4��\\u0017��\\u0015X�\\\\�c+S�C^\\u0006\\u0007czb5Sz�mX��AҘ�\\u0014�\\\\\\\"��Z��\\u000f\\u0006��ڼ5�Thj�W�@\\u0016\\u0006�\\u0015@lj��3�PE\\u0001�\\u0002��ת��x5I#�-M8\\u0013\\u0015ev�\\\\���\\u0004n>��\\rH<���c�F�H�\\u0007rv�\\n����֕r&J�\\fy'~\\b>$�\\u0005y\\u000f�����Ӏlt�\\t\\u001e�\\fp'\\u0004\\u001f\\u0013ԟ:��[޼�\\u0003=5�xM��(\\u0003�$���\\t�թr@N����\\u0005\\u0014U�ҽ���B��\\u0007�Z���T\\u0007ʠ��P\\u0004��\\u001d+��w�^���פ\\u000f\\u001b��T\\b�\\u001aP������\\u000f�F|i_t��\\u000f��?=�Ca��;b��\\u001c���Ʊ�vg?H�Z��z�����\\u0000���\\u0000��\\u0000��N5���-\\f�n\\rb��]�)\\u0013B|\\u0005f�B�E��\\\\Q���hG\\u0014�cmMx\\u0017Z����zb\\\\\\\"�j[Rj�ֽ#��\\u0007�����MoUQa[(��\\u0005-^��އ�����͐�Tl:��Av��\\u0000�����\\u0012H#�1�gٸ�t�\\u0000c��1\\\\\\\"�\\u001f\\u0016~K�1&fPM��x�y Ì��~q�N�j}�\\fyY-48\\u000b��z]ق�n�\\u001bCjU�ݬ3�x�c�c��R��j���:��A\\u0006�j\\rJ��\\u0006�70�<��\\u001aa�\\\\\\\"��JE�e\\u0007��iE;� �e\\u0017 s\\u001b|(\\u0001����\\u000f�X�n\\u0005Q�\\u0016�B:�;\\u000b�|~4\\u0001��_\\u0001��Ʀ���\\u0001�C^sa���:\\u0000��)n��S���\\u0017��\\u000b�\\u0013��Ծ�m}�0=e��[����G![�ܝI�U�\\u0016\\u0007S�R���_�D%� hv����ڛ5�*u\\u001e\\u0015Vk*�\\u001b\\r�\\u0013�\\u0006ŉ�\\u001bZ�P\\u0007��'èҼ\\u0001��nz��>5�+~\\u001b\\u0012~5�cfrMŬ��\\u0004�9�\\u0016�bv�_��ȧ���7'�|�֮͡%�q�|7�T\\u0011m\\u0006��1ܝGN�\\u0000�?\\u0017�\\u0013b$_���-O00q�V��\\t\\u001a�GƗdL�\\u0018�u�\\u000f�Sn\\\\o�j/�u4f\\u0015�\\u001b�U���b7\\u0014�ٜ���\\u0007.�J!�\\u0013s�j���\\r��\\f��yו-�����Sb<&����^\\u0013���K�\\u0000�׀�\\u0000\\u0013rl*���,g���0\\u0000�6\\u0003rk�z�Ư���k�\\u0018<٤�b�W�\\t$��h�\\u0011�G��O�F���\\u001a�С�T�YJ�0��4^\\u0006\\u0012�rgb�\\b\\u0016\\u001b��\\u0014\\u0001���ǳA\\u001fPQ\\n\\u0012<Lls� #��R<��@�5�PܗU\\u0005 ��E��\\n=o�\\u001c$\\u0001I\\u00166���>���ڲ@��b�2u6:��Ri.ڲ�{ΒM\\t\\u0012��1 6R�\\u001b�\\u001e60Ȟ\\u0019r2��J-ŏDC��T�>A\\u000b[�nx��8{�@�I��f��U}�V8�@��\\u001f�\\u0002lj�#\\u001a%�\\u0018\\u0019�g\\u001c�3`�OW�\\u0014�\\u0013\\u0016dV�ρb�B�=�\\u0016(G�\\u0000�E�c�E��tK#e89Sz��5\\u000b�/s��FF�L���\\u0005�3�1�\\f\\r�ŵ�N��\\u0014�\\u001f��������7&c��\\u0000�\\u0016�K3����\\b�O%@\\u000b\\r?3\\u001d/FeL�q�\\r:�q\\u0016 �\\u0000�B(|8�\\u0016V�r�1�\\u0015�x��o�w�BA�p\\u0004D��]�c�R�\\\\���\\u001fe\\u0003\\u001e\\u001a �ho���Iܪ�\\u000f��&Di\\u001c��\\n�\\u0000h\\u0014z��������w\\r��,���j��~�*ș�'\\u0002��\\n\\u000e<�\\u0014\\u0003�?�j�Z����\\u0019�zE��z�\\u000f�<��ːA��\\u001675�*�\\u000f1cҴ��c\\\\\\\"���kK�O�\\u001a8�B���\\u000b\\u000e�oLx�5���R�\\u0003\\u0014#]�z\\u0014\\u0011zܥ��\\u0005֐�Y:׫[\\u0014�+><O�\\u0000{�K��ת*q���l�⬺\\u001a�\\u001dj�:�C���4�.��7!J��\\u0015uak\\u000b�:U\\u0014�SH[��袀-e�?�<,�c�Q��[��\\f�e\\u0007KlkX$%�ŇB4\\u0015��&���׼{���.\\u0012��\\u0019/uPz�7���c��\\t��J�l����)�ho�\\u001e�Sß\\u000b���:\\u0006<w�ӵe�?r&N\\u001f�R\\\\\\\"Y�󑍇���|��\\u0013k2I�Ǖ�_���\\r\\u0007\\u0015�Z���F�4m�t�R���C\\r��M���+���\\u001a�͸|Sz2�ݽ�\\u0001�\\u0010\\u0019q\\u000e�\\u0017�_��8�\\bO.@�UX�{\\u000f�ؒO\\f���d�17%���'Kk�\\u0005�;P\\u000er���\\u001d\\u001dA��\\u0002�3&���\\u0001��\\u000f�o\\u0019^�>\\u001eb���؅�q+���Ǩ`\\u001ae\\u001d��CL��:mP��ֽ��M\\u000e�m�\\u000f.G��!>�X�\\u001a\\u0000��\\u0004��jI�s��R���9�Z��X��@O�4��6N�6�j�%���?�hп�nE%칶?���u���Zt5\\u0015��2�Q*��׀z� 4�V]��U�R\\u0003�\\u001f�o�s��E\\u001f�\\u001fƺ'�\\u001b�i\\u000fz_�_����u2���#�j���sB���\\u000b��\\u0015gG��H�[{0���[v�\\u0002f '��\\fe���,\\u000f�Dw�����Ey8q�)�n'�s�\\u0000q�\\u0017R:\\u0010i�p�V\\\\y�\\u0000&�G�!\\u0006�.���ᢿ@7󨶪=H���\\\\��xB�I\\u0018�H�_�5\\u0015���_n4uN\\u000b\\u001b\\u0010?ӵs�j/UM=�\\u0015�c�.\\f�T�V\\u0007O� 8P�,�}�V����mA������Hd����\\u0018��֙�qEN]I�ƵO\\b��\\u001d��[r�\\u0013jϐ-`n\\b��=*�K�ƃA�/�X\\u000f�r<@�1\\u0016Hǩ���:��R�����ڽp\\u0011Br�ܯ�פ\\u0006\\u0000�m�<E0) �`u��\\u0013Y ^\\u00008�\\u0013�|��֨��I����kU\\u0000X2����P\\u0007��\\u001c���\\u0016\\u0004\\u001f�\\u0002� m\\u0002\\u001f\\rO���z\\u0010X�\\b����m7:�Z�P\\u0006d^2��&����VR��\\b\\n6��η`D$�[��?*ɘ{W��с��7�FQ�����@A��B�b�8�ߦQ�;\\u001f#E�\\r�\\u0001��\\u001d>�U\\fb�A\\u0002���i49\\u0016�M{\\u0017P~uq�d+p\\u0012?(\\u0006�1%T�\\t\\u0000�a��k�J�\\u0013a���5<P�1_�y��u��1�}k��Ӏ�k�V�\\u0000W�귌\\u001b�Φ�Ҏ(%�h����̘:�b��g> ߈��'�+\\u0003\\u001b$��$obk��(�b�BF�\\u0005\\u0015��~8Z�Z���\\u001akVSҦ��v7�\\\\ƥ�z���59\\u0005RN�.~T�_ʲm.<:Vxy�e\\u0016\\u0011�\\u001c7�޵�K�����\\u0000̨ \\u000f��]\\u0007�)�T����A�WF6�W}��l�\\u0019C)�\\\\\\\"��lD����ֵZ՛8\\u0004*��lu��h�\\f\\b������1�1�\\u0004t�®��\\u0015}A\\u0016�f�ۡ:�ֈU\\u0018��=(Z�����\\u001c\\u0018�!�\\u0007�zW(I$����A��+�\\u0016*�X�q�4[�=]tm�'=�pJ�*U\\u0012Q�\\u0012�\\u0013��J65\\nl\\u0005�\\u000e�U\\u0013\\u001dL�{\\u001aT�^^���+�ח�\\u0005���/^ހ-z�\\u001a���h\\u0003Kע�*\\u0016\\u0015qT\\u0015�\\u0014\\u0001t޵Q�f�բ�M���\\\\V\\u0007}�\\u001c~7҉ڕwy�2�\\u000f��o�J\\u0010\\u0018��\\u000b�\\u0011=y\\u000f�\\u001a�:k�S\\r�e��@\\u001c\\\\�R\\u000e�^�G7~\\u001a~�������\\u001b_��!O�YW\\u000f�'�ab@\\u0014����ϛ$쾄���%V�jOʧVmE\\u0014H\\u001a9rF0�+�\\u0003~���N��͈��*���\\u0000\\r4�\\u0019Ĥq(��{y(&���cMz�e\\u001c�wl��I��\\u000e�\\u0007\\u0011}�\\u0007���x\\u0010u;Q߹q��.9c\\u001cL�K�����t���˔�� �ߴ�XB�o\\u001cLl�\\u001dit0{����3�\\t�\\u001f\\u000b݉�;^���:�\\u0010I;����ȸo&[��jd�fx��c�?�u\\\\\\\"�y�\\u0018�0\\u0005^R ��P�?��̑�a�(�b&tkp�|(���v�\\u0014m\\\\\\\"rfA~1�S\\u001f�����V9\\\\\\\"k8ԫq�M��\\u001c3��\\u0006�ɐ�,@\\u001c���B�h\\u0017U\\u00139\\u001e,�>�|Q2�T��2�~�g����m4����R�@�mv`�O��t��x�퉌\\u0004�^��ͪC�Wٕf‫0#mE8\\u0003��PmR��8\\t�\\\\\\\"�\\\\��z\\u0013\\u0010�\\u0000a>�\\u0012�Z�ڲց3�q�zד�Ez���Y�\\u000e\\b\\\\\\\"��\\f��TH.O����!�\\u0010��U����o�Ċ�(k^��\\u0006�8���؀zU���3�t���_Z0\\\\\\\"ݶY{���T�#Ldm���ƙ��8�W��\\n:ނ�'ۼ\\u0010�:�^�\\u001a-��H[�!�^ܼj��I\\u0010���-�)�\\u0010,.:7Z3\\u001d�h��J�\\r�t�\\u001c��\\u0011��\\u000667Ֆ��ێ����GX��B��f���j��\\u001b���m�q\\u001cCS�\\u001d\\u0005�W ��[�\\u0016> �ރ�+!bIn��$r[������\\u0007�\\u000e�!�c�\\u001f��.��\\u0000���Љb��&/��r�yK\\u000e�\\u0011�����~��F�&5`\\u0001\\u0017`\\b�\\u001a��V�gC����LPc��R=L�������,n���MyR�PS��I�-\\tR�Jd��q��\\u0003�Ѵ\\u0012���\\u0013z\\u0006�(�\\u0002��K��\\t5283E#QZ\\u00044B�as�\\u001dMx\\u0012I\\u000f�\\\\\\\"g�\\u00005��i��pd\\u0013J�&��1��\\u0017[6����_۵�H\\u0018�V�����&��h�3\\bkP�\\u0015uJ�\\u0000�@\\u001e\\\\\\\"�[\\\\\\\"�^�zkDZL\\u000f8ת�����R\\u0018\\u001fp\\u0000b���I��\\u0000�Q�S\\u001e�7\\u0018�!�����\\u0000\\u001aT����� ��uX�!�t��^�V3u��V5�E\\u0018\\u0006\\u0005N�X���\\u001c#�b�®N�V4�h��5�5p��i�ƴV���kWV�\\r��x��z��T�hH�U�Vf�\\u0006�\\u0001��A���\\u0007ZP\\u0006�נ�j�5��D\\f�;�1�\\f�����t\\u0017\\u001d)u\\u0013�Q��Q���\\u001bq���\\r[-\\u0011\\u0005����\\u0011��`nM+�&s}�Ƙ+k�\\fh�\\u001e�aY���Hd�&�\\u0007[\\n�Rl*�-@\\u0017���\\u000e����\\u0003�\\u0000y�Oƽ�j��\\u001et��}�`+�\\u000f\\n��@\\u001e���\\\\\\\"��+�5�0<+���\\u0000���~\\u0014��H����.-��\\u0016���13�0�ɋ+D�p>��S���v���1\\\\\\\"�B\\u000f5\\u001c����_��\\u0017�vL��> KD@nm�R/�i�d��]�1!�( �䪪ܿ���;\\u000e�Ҳ�\\u0013:�U\\\\�R�`.j�Q^Hl�βe!\\u0013�<�\\u0016RO\\u001f�`�t詢�@�Z���S�yz��\\u00051\\u001a.�7 Uo`*�u��\\u0003e\\u0017kV�m��>�ג�`�nF�@\\u001c�K?x��\\u001e9�\\u001e\\u0016�t�z�;��\\u0014P�\\u0002�\\u001cG��ۃ8�~��`�^��\\u000eDѳGv\\ra���:��XY�{8����+�\\u0019#%wוņ���\\u00196<�\\u001cX\\u0013�\\\\>�_�u�\\rGƗ��\\u001dm�\\u0013\\u0007��Q2��>�9p�'�A�3'U7�>\\u001e\\u0014\\u001fz�\\u001f\\u0010$�\\u0005��\\u0004]/M!��J�+C\\\\\\\"S��\\u001d�m\\f�\\u0014cՆ�RJ�t��(PN�\\u00003@\\f$ (n�A��Y�HP�QXN�\\u0011Č\\u0013�������p��1���ΐ�\\n�`:U�\\u0003��s�y�A9y\\tts��\\u0000\\u0011MW�b�\\n��D�\\u0003q�� �@:�zW�\\u001a���Y�k�mQ��K\\u0001��\\u0007�%��;�\\n��\\u0017\\u001b�祫>w\\u001a\\n���{���L\\u000b���T�Z��|�ظq%��\\\\X\\u000b�mԝ\\u0000���Ơ`-���\\u001f�\\n\\u0000մ���>W�@�\\u0006��cf>~\\u0015��\\u001a�`nM�tޥ��\\u0000����\\u001a0\\u001a&� 3u\\u0000�@� \\u001b�y�Wf澳āe\\u001f\\u0001�Ɵ\\n̩\\u0017RA\\u0005}:��\\u0000{�!\\tV�<���}�Bpa,K\\u001b\\u001dN�\\u0004�Aw\\u0005�+��P.��YcH�ۿ��(a$9\\u001fSk����ܪ�\\u0007���.4\\u0006�cmw\\u0014�\\u0007\\\\\\\"X�\\u0006I<d�'-YT�|�02�\\u0000)��J)�rM��CH�m��ݴ�Z\\u0012Cc�!��c�k�lm���\\u0017����Z\\u0000�5\\b&�����޼&���Ï�x\\u000e��Uj�g��|\\u0007J�:��Z�:iH\\tR�\\u000b\\\\[望@̲@�����n��\\u0004����\\u000f-�\\\\�4��]Me\\u0004�\\f�\\\\\\\"�>�j���#�4Jx3\\u000eG���*�d#�F\\u0001VP\\r��=E�&9y���u'S��N\\\\\\\"�#���KX��IR\\u001c6=<�g\\u0014\\n�\\u0000W�v�\\u0001�ƃl�\\\\�ǵ��K|�\\u0019{�ɑ.,d\\u0019�\\u0001\\u0019\\u0002���8a�\\u0007\\u0013�xp��X�\\u0016\\u000brE�\\u0000(I�bN\\u0013/:K��,f�\\u000bm\\u0015m��\\u001fr\\u001d�\\u0011�/+�\\u001e��\\u0018\\u0012.\\u0007ݥ\\u0010;�,��f��\\t\\u0015��җ\\u001d�\\u0013���'0F�\\u0016:!r}�\\u0012�J��\\u0012\\u000f�\\u0011i_!\\u000f\\u0003�¾�fPC\\u0011˗�Bh\\u0018\\u001b\\nY�<�ݮ�ز� \\\\\\u0003�����) \\u0019\\u001b\\\\\\\"{\\u000e\\u0017Q\\u0018 q�\\\\\\u0011o\\u0001zLa�ك\\u001f�fPH�\\u0003݂\\u0013��T�p��Q�F�*oo��9^ڗ��\\\\\\\"�.M��Q>L��Y�\\u000f�:\\n\\u0015y{\\t�\\u001bc��a'�k�\\r�u\\u0002�/y�+�'���cN7\\\\\\\"ĒoK�U�$�f�J�*U\\b�*T�\\u0007\\u001d�����\\u0003���촏����D��\\u000f�ƺ\\u0012�V\\u0017���^\\f-Te��JԌ�xW���V\\\\\\\"ƽ�\\f��5�\\u000b�>\\u0015�\\u000b\\u001b��M�1\\u001e�h\\u000fJ���Ck@\\u001b\\rEd�\\u0012k�}j��\\u0000�\\u001bJ�mH\\u0007���\\u0011��\\u0011�h\\u0003@}\\u001bZ���ױ�\\u0007\\u0001��4=t�VrN�\\u0000\\\\\\u0016~Q,�@\\u0004r��bv�U��?r1�\\u0012\\u000f\\u0019\\u0007�\\rsu��x�'\\r��Z;ȧ�G�Z��\\u0019�S��4\\u0006���\\u0019=G�\\u0006��SuLu�Ķ�\\u000e!�\\u001f��ڪ)\\u0000��\\u0011���3\\u0006\\u001ak}�ڹ�����Q�8Y��\\f-��M?�\\f�]�2TO\\u000f�kka�y\\u001bR�<���l|�Lg�\\u0016>�\\u001byWK\\u0004�[�ӡ�;�n�2;�\\t\\u0006��&&ck�(��j\\n�\\r\\u0003��$�\\n\\u001b�׏�`��ڝ�a�\\r�\\u0016�X\\u0013��~\\\\\\\"��\\\\\\\"dF%��[z�T>\\rOL���S\\u001e匊����هC~���9!��̤2�07\\u0004t\\\\\\\"��Y\\f�G!��X�H�J��!lH@�\\u0000�_£�DUM�^���^���/k՗z�U�P\\u0005_�o�%�K|w�\\u0017�\\b�m�\\u001aO�G(�x�}¥��0���sGz�W�k�Fv\\b��v\\u0002�MOE\\u0019��22\\u0000kp����\\u0014^\\u001flH���\\u00124\\u0002�\\u000b�?\\u0013�6Y#�&�!�$9H�7�H�\\u000b�1P�������ۅ�\\u0000/�\\u0002�\\u0000���@�*H�77��|\\u001c4�\\\\\\\"c\\u0005M��gB\\u0005���?qI�ח0�\\u0010�k\\rG5bzُ�za\\u0004�1#�$\\u0004hǾF�[���<~�\\u0015s-�5֓�����w\\u001cs���8\\u001a���u�u�dD�H�H=K��λ���LOկ�Q\\u0013��+�ǕsLq��\\u0016\\u0016�!wQ�\\u0003��S�r����鳞��Ul��Ȃ�1���$\\u0013@�\\u000b��X|\\u000fCV�����S�W��\\u0016k��YG$m\\u001d~\\u001e\\u0006�C���\\u0001����ta�j��Q�Z�\\u0018�'Xַ�\\u001bڽK���X\\u0000N��/A�O���V�F���\\u001a\\u001fE��ܪ�\\u0005�\\u0001\\u0011'B/q�fy�q��o\\u001a��1��\\u0017��{��6R�\\u000e�̊�\\u0019�\\tn-�/\\u001d��\\u001a�,H*I yW������^�^�G\\u0012��h\\u0002����\\u0000a�+.][Q�\\u001f\\u001dE�Y[M>\\u0017;|�u��r�\\u0005��=E\\u0000U�I\\u0000���^1\\u0005\\u0000��M7?\\u001a�Ѯ��nW���^�\\u0007wp\\n�q�m�\\u00030oT�y\\u0004\\\\\\\"��7'��U��$���h�v\\u001a��\\u0015^����ܘ�9\\u0011��zW��d�\\u0017[\\u000b0�\\u0007J@\\u001c{�)s�����9?��y���\\n�/�N�J��4\\u0007�h-�\\r�k�\\n���{����CI�\\u001a/�[\\u0012H� ��K9\\u000524�v,P�b�W\\u001b��J��ƣ����+��� ������6A���\\u0014X\\u000f�\\\\�z�#�I\\u0018��\\u000f����\\u0014��9\\u0002\\u001c��\\u000b�#������r��y91\\u0000\\u0005 �|6�v�v\\u001e�\\u0002��Q�:B\\u000fAտ�aګ\\u001c��4��`�\\u0006��Cҡ�M�ӵr��\\u0006�{^�O:���\\u001e�Ҙ�\\\\\\\"�\\u0003�B��Z�\\u001b��\\u001aU\\u0014�Z�\\r��\\u0000�+\\u0011�\\\\\\\"�ȫ^�m��\\u0010/\\b�\\u0000�R����R�5u>�$E�\\fG(�\\u001fMH�x[������\\u001e\\u0015���t�Fa���F��l�.M!����-�\\u0018{)�GW?ʫ����&�<f�D}D~g�\\u0000\\nW[����jM��G���Y�f:�u&��R�3%J�(\\u0003���\\u0017\\u0018�A�5�RkoSd�h(��5���5\\u0004�M�B\\u0002��/^\\u0013^^��\\u0003V\\u0006��z\\r0/z��KՁ�\\rEXU\\u0005\\\\\\n@h+P+5\\u0015�\\u0014��%n�VH+QR\\u0004j�r9��{�_#ʞ�M�2..\\u0005%�u�!�]���UA�S��,U\\u00125ʦ��(�@�q)�\\u0016�5�9qݢ�jea�^�c�\\u000eկ�m��0�#5���o\\u0016��T�}[\\u000b[�TÉc�\\u000f\\u0001j��B\\u001fH�\\u0019��YX�\\u000bu�RF���\\\\\\\"1�\\u001cW%�o�\\u0001c�>\\u0000\\u001e��Y%`\\u0002c��FT�g�`���\\u0001t$�{�o˭�M\\u0000\\u0000X\\u0001L\\u000ek��PW\\u0013�\\u000bĕU<�|�5�f��醹x�!b�RC-�\\u000b�Z��Ԙ\\u0004c\\\\�\\r�G06%ua�������G�?'�\\r��C��\\u0011���M\\\\\\\"�\\u000fL�\\u0017�-�ݯ�V��)\\u000fj�Y\\u0001A���� \\u0001��ְ�c�\\u0000y\\u0015M�$\\u0003Ywl�I�'�dY\\u0019���u?e\\u001c��\\u0007\\u0017�9|\\u0010]�Fr#?�m��Yؑ���b\\u0016�V<���7&N�^Ԟ\\td�ԀU��F�_�r\\u0007;\\u00109�5�:�Z<�4�\\n�\\u0004�4��m4��\\t��U*P\\u0004�R�\\u0000\\u001b��ν\\u0005���>1s@`�#\\u001f\\u0013�)�;VVՖ�.�\\u000ec���>?\\n��\\u0000��XJ\\u0005�$�|��%��j<:א�.\\u0019��j���0�e������k\\t$\\u0003{�¨�[Ɓ~t�űϾf�����e֩64�4�]Z�:z\\u001a�\\u001d��oF\\u0011u \\u001e�ց͂�p~UC�W��*a�\\u000b,�wt[��P�/�טݻ�GϜ\\u0001��q{\\r��uH�q\\u0010\\n�\\u0006���\\u0017\\u0007��Շy�Ώ\\u000e�\\u0016YXس��|\\u0001��ڂ�\\n\\u0005�N<�����Ƹy�yfy$7fbM\\u0016�=�M��\\f\\u0017C*\\\\1�m@�rO��U3Vl�J�@J�*P\\u0004�R�\\u0000g1��\\u001b��Y�Z�'���]P�*\\u001b- �hy\\n:,oVն\\u0006/�\\u0012(�Ǳڲ��H\\u001a<t\\u0016%y\\u0011���*��\\\\\\\"B�\\u000f\\u00105 ^�X����\\u001c�4NHV߉��Z���\\u0015�_��j��kV��\\u0000��kt\\u001cA�ڒ\\u0002F��\\n֪rCp8\\u0005xڢYE*\\u0012�6s�׆I\\u000e�OΫ��.CYr\\\\\\\"�]��7�cω��\\u001c\\u0007C�.�O�\\u0014��r�\\u0003���\\u001b\\u0003��e7\\r�\\\\\\\"��i������u���ZN��4�<j��T�l\\u0006��V�\\u001coI{�f��C�!�\\u0000�jR�\\u0003x\\u0000��9\\u0013���e�\\u0000H�jT�H:\\f\\t9�F���i[�K�C�\\u0006O�oƎf��ae�Q�5Bj\\u0016�^�\\u0003@�U�5���4����Ր���F��W��TS^�@\\u0016����ը\\u0019u5\\rTo^�@\\u0017\\rV�b\\r_�\\u0000\\u0001ޱD�������+�R\\u0018�g\\u0000�]'qu\\u00183���G��;\\u0000���U�An\\u0014��\\u000f\\n�\\u0014��1a�!�E�Z��8E,t\\u0003S^�2H���~\\u0014\\f�E\\\\\\n�kV��\\b�W��\\u0000*�W��\\u0007�@Ex/�܊���R\\u0003�M�5�@�����(��\\r�B�\\u001f�y��|O_�\\u0000Sj��ҡ!����ASm�\\u0002\\u0010i/r�\\u0000�\\u001f�tt����\\u0000��)�gK�\\u0017����t�\\u0000�h�ݰ�~�,�v��r�n7\\u0003�����)<�GKFm�\\u0000];��ʽ�.�\\u000b�����\\u0005Q%�Fq�\\u00181eq�\\\\\\u0010�Ӓ�&�Td�M\\t�qN'mƁ��P\\u0017\\u001f�oQ�h�~���-P�'s@I�\\u001b�ښ_#kP�f2\\u001e&��sYO'�>\\u0015E�Z� �`��[Z\\u0011e��Q�j��YM\\f\\u001e��5!���qgP�\\u0011z��\\u001b\\n#'\\u0010�`\\u0014\\u000b��\\u0005z\\u001a��\\u0019�r \\u0011�Пx�BT�6��Κ\\u001c\\u0005G�\\u001a�y��8�R�}a���;��\\u0000�\\u0006���D'Qo:LѶ\\\\�Z%������U\\u001a��@��F��aa��� 2\\u0016fh�-\\\\\\\"��Rj����n?��p��?�:������ly�]!\\u000bm\\u0003���\\t\\u00166�L��Z��|d�\\u0011{�A6\\u0000_J29eō�\\u0017���\\u0003B�ȑ��l\\b�艦��6a���L�\\u001f#.|�>�\\u0007��\\u000boXԩ@\\u0012�J�\\u0000d]�x�!\\u0001��\\u001b�թ���\\u001d��4��\\u00002^�\\r�!���JM\\u001c�Y5S�^\\u0004�-\\u0019;����\\u00036k�m��¬5/����\\u0000±����h��XX\\u0000A\\u0003�|)��f\\ny\\u001b��{u�8���\\u0014�:�mT\\f�\\u001a߭��W\\u0016 s6\\u001fQ#B���\\u000b\\u0015\\u0016\\u0017�7�:ޫ���s���\\u0001�W��k#t:���\\u0000u\\u000b�&��%t,x�*\\u0004\\u0007��#\\u0006�-�\\t�~\\u0015\\\\)bV�1�\\u0003�A��-JO#C���i��\\u0019��\\u0015�,�\\u000bxR�n.\\u000f�M1��\\u0013���j\\u000bNBdr�Չ:׎�k�I\\u00164���BB믧z��h�z�UA�{LD'�\\u000e�Ծ��Tڥ���Ո�\\u0000�^���S�z@\\u0015Sz@K׬t��R���Q���@���\\u0012�s^W���\\u0011j7��\\u001c�I�CX\\u000b\\\\_�h@64�Ӄk��zx����r\\u001bq�:|j誧ҡ~\\u0000\\n�\\rA4���1�g��3��N%v��U�1\\u0013\\rdΆ�9[9\\u0003�[��G.�'t�V��\\u001a��K���8`(�\\u0019S\\\\\\\"�\\\\\\\"�m�ه0z�eҼ�\\u001e#�4Ua\\u001a�x]t2��\\t����$�&1�\\u0004Aɇ�ۥW\\u00068��$�W\\u001a�v\\u001c~@jiYB\\u0005��?\\u0016Lt��Q�\\u0006\\u000e��\\nw\\n\\b���k�O~�,�o���?��\\tq\\u0000�ZA�P)\\\\\\\"C\\u0012j�\\u0001�)J\\u001bp�2��d�{\\u001dhj�*��Kr�*T�\\\\\\\"T�R�%J�(\\u0000���{�c��/��]P\\u0002���?\\f�\\u0018�\\u001d~�j��}5�f�غhb�T\\\\\\\"�e��T\\u0014b�T�C[�zͅ\\u0000f¨��U�jȞ�\\u0001wk�:��Ƴw6�c$Ȗ��o��RB\\u000b�-�z�]h?t\\u0011�\\u0003�_���\\u0010\\u0006���o��.v�?[\\u0002\\u001b4�\\b�^��T�� ���\\u0015F�����\\fr{Q�}�XC����-z_?q�.�Ib4$\\u000e�:�Yp�FV\\nS�\\u0017����$�A��\\u001d7sƟ\\u0016[�I80(��֮z��\\u001c\\u0007�<\\n��l\\u0000:�zUW]\\b���*T�$��1\\u0016#q����mI��:��`8��<�貔�5$/�[�j�`�����Ju\\u0007�k\\\\\\u0003���4���\\t�\\u0011s��9tg\\u0006�=,��\\u0000A��i\\u0016>>wm���\\u0012/d�)�*�~,<m���0.\\u001cu��M�̜u�2�\\u001ehA'�ΦFs��).8\\u001b9aq��˻�\\u0017�p-rA\\\\\\\"���B^������$%v�\\u0007�\\u000b\\u001a�)�`��<\\u0004ꇒ�&���X�\\u001d5\\u001cڽ\\u001bԨ7\\u0015�e�|*��j�tڀ)&�iN~���q��m1�\\u001aU�,�OCR�F\\u001d��c�Tfn*.��\\n�;`\\f/��v��\\u0015�\\u001e,j�ֻ�6>U�a�!�\\u000f�u5��'\\u000bMƾn?�jH�0�U>��8�}.l��:�\\u00189S��\\u001a\\u001b���+h��_�\\\\����Lŷ�]F,��@��t��o��%~b�� Qߠ�ci��C`=�ΖBvP�u����\\u0001N�9Zh�\\f!��T/(�^�\\u0017SBwY��\\t'�D�qt;�\\u0002�R��������\\u0006*\\u000f�����&�y:�p��\\u0015�*�*�\\u0003N6\\u0000�R��\\u001e6,�Ό}W��7�Ln�ۥEA:�\\u0016\\u001c^��\\u0000U\\u0015>C\\u0011�&VS����\\u0013\\u0006��V�^/�\\u0000���իx�y8�ȅ\\u001a+��\\u000e��Su�\\u0015B�e^��\\u000f��dw�X\\u0019�#\\u001d\\u0017�4/@v��g?֥C��J��a�&��\\u0006>�5_�\\u000f𮃎����\\\\�nѺȆ̤\\u0011�\\u0015��L�F�\\rC�\\u0007�iG�&� q\\n���+.\\u001c��n5\\u0016�j�#m\\u0005�^�e�����\\u0012P6�X\\u0013�U��ͯ}���Y��y\\u000b[�\\u0003�:�'_ƀ<g%@����B\\f�D�\\u0002�H,l|�U���\\u001e\\u0006���\\u0017�ƹ�ff,��M��k@ғ�~>�-�u���\\u0002,\\u0017F\\u001b\\u000bx�O��\\u001d\\u0000�\\\\\\\"�\\u001f�~a�鸝\\u001e?u\\be#CM4��E\\\\�{��u��3#N�O�[��e�UVf\\u0016\\n\\tҹ�vw.~�7?:�8\\u001aR\\u001c�\\u0007���<���@d�T�\\u0005��V�*�\\r\\b��z�Y�R\\u000b\\u0000\\u000f�.H8�N��3�d-\\u000e4�C��\\u0001�����K<�4�^G7f;�T�Pܖ\\u001f��kf����}g�\\u001f�\\u0015�(\\n�TY@�\\u001e\\u0000R��\\u0000��۩b�4!�r�Y�5�֪\\u0011�\\u001a�����ؐ|Ex�k\\u0002o�Y�mz�fd\\u0015R���j�\\u001fZ��^sր4�\\u001a�:V,�\\u0001bl\\u0006��W7z2�\\\\\\u001b\\u0010�4��\\u0000䎴�lC�(\\u001a�\\u0007��\\u0013�\\u0007\\bͦ��O�\\\\���\\u0019*�#=�\\u001d>ʶVC���7�\\u0000x\\u0001ZS�ZoBml\\u0018ԩR�\\f�R�J\\u0000�*T�\\tR�J\\u0000�*T�\\u000b+���V��j�t� /V\\u0015QV\\u0014\\f��Yk�U�k@\\u001a-j��\\u0002��#��\\u001e\\u0014�!El��9�\\u000e��\\n/\\u001b\\\\\\\"9\\u0017���\\u001dE&\\u0001\\n*�O\\u0014\\bd����k�u\\u0007Q��o�\\u000b��UU�*��\\u0007S�R\\u0018�\\br�!�Q���:\\u0005�~\\nn\\b\\u0004U�s�F�� \\u000bX�\\u0013����7]����=\\t\\u0004�\\t�`.P�ƺ\\u000e�ùβۇ���orv��n����#�;�!XIna���\\u000f�T���շGТ\\u0000(�rc\\u001e˳�\\u0007V�İn�q�s���0��v��I?v�\\\\\\\"�8�c�c��(+\\u001f�H�/\\u001cX��F�\\b\\u0001u�\\u0013�?p4j$�\\u0001\\u000eYؠr��u�&�\\u0019k/p2�V6��e���~\\u001cjI�0\\u0006��\\u0000:\\u0000\\u001ei�\\u001f\\u001eV�B�V�\\\\�5\\u0007o\\n�F���\\u000fq��x�\\u001aB�\\u001f.f�)&��zO@\\u0012��!�7]Wr���@\\u001bI�W6@Ž�h\\u0014k�բ�d������\\u0005��@�R�B\\u001bޚ����)A\\u000eE��Q\\\\�K3�:*��,��\\u001b�\\u001d�\\u0017N\\rƝ$\\u0000/�G��\\u001eF\\u001f9.\\u001a��M�K��\\u0000(�;i���)�wh�\\u000b\\u0019gg�ȅ+kZ��K��%J'\\u001b\\u0015fBň �J�\\u0018�$�I\\u001b��K��\\u001c8�\\\\\\u0011�����La\\u001aP8)��|I?B��Y�VRе���+͍*��\\u0017e�\\u0007A��JIK\\u0007���\\u0012��-�+,�덎�W6;\\\\\\\"\\u001b��j�*�\\u0000\\u001a�.C\\u0017��ġT^�k�毉�f\\u0019Q�[�\\n��\\u0005�\\\\\\\"� ojWR�\\u0010��[�'uhfeF\\u001e���ֽ�\\u0017�+H7�Џ�z� ʟ\\u001c�\\u0017+}���5��۸K\\u0019�庝�\\u001f��<r\\u0016r��s%\\u0004��[�\\bu$�ԩT�\\u0012�D�R�1���\\u001a�6�Q8���-�4��H�� �\\\\�|*�C\\u0000GZ�Hd�i\\fw<<��\\u0002\\u0010\\u0002,F��I9\\u0004d�\\u0017�&��\\u001fRy�K\\u0015\\u001f� /c�i�\\ti��\\\\\\\"�;\\u001eGmME�)6�N�\\u0007\\u001b�j\\u0000�D�r\\u000e�GnPb:j\\b��\\u0012R��ڑ�\\f^Бұ�;\\u0003L�\\u0003�JW�s1�V�8RvA�\\u001f����\\u0014�{䞨�\\u001en\\u0001J�|܏�d��\\u0010����\\u0002�����Fm�%J�*�J�*P\\u0004�A*C)�\\u0006����\\u0000\\u0015�\\u0000'��\\u0000�~���fff,���䞤ו(�\\u0004�R�\\u0000\\u001f�^�:R��?�L��\\u001cy�\\u0012�T\\\\��|��(_�\\u001f=G�Yڮdi�\\tQ������xMP:\\u0011x�#ʼ�Hf���k\\u0010�ujb5\\u0006�+%:ր�\\u0002�u��Y\\n���j����^�-ֽ�Յ\\u0000W�VWⷫ0ֽdVB�ץ\\u0003\\u0000ɝ&Ĕ\\u001dl�O1���%�y�k\\\\�R6xSS�6�V)2*�~�Mc\\u0002Aht\\u0015���\\u000fԀt\\u0004׍�!\\u0016_O�ZP�(�l���S��_\\u001a\\u001d\\u001d�nHlj�*���>z��OKx�4j�4���.Hl>����)44�V���ޅ�?\\u0019�]��\\u0003�h2a;H��*Fl+Ok��C�N��~\\u0002��x�\\\\X�F$\\u0010>U铑����M1�in\\n �GS�5�&�ӥC}�\\u0001\\u0001;�?\\n�#\\u0011}����\\u0016 �uӭ\\u0000x���/p\\u000f��,46��M���R���\\u001eޛ\\u0011=�3N�ݳ;l�0�Y�#�p`M�&�\\nF��i�\\u0006GrĊ^�\\u0002+��\\u0012\\u0000\\u0018pe$)k��¹o�\\u0018RdwA�\\b\\u0011�\\u000eM}�pʠWyz�$�\\u0016��k-ZYB�:\\u0003#$\\u0011�ag/\\u0005�n\\u0005����7����\\u0017:҉r5ބ��%��MPKA���\\u0012U��\\t%m\\u001b���z.6ҁ��p+x�Z\\u00008��N\\\\�4�\\u000b\\u0012��E�\\u0014% �\\u001dU�\\u0010\\u0001��$��3sx��\\\\�T������t9Y\\u0010_ّ����j�Igʌ\\u0019�-�bA�W���M�e�\\u001f��\\boh\\u0000\\u0002\\u0016$��5\\u0003��!\\u0001Bo�t6ڲv�\\\\\\\"\\u0000Nrtc}�d���۲�\\u000e�����δ��N}�y\\u001eB��@o�\\u001d+\\u0006~F��Q#;?\\u001bI��²�3\\u0016Cu�j��t�����OjT�Z\\u001ea*T�@\\u0012�J�\\u0001*T�@\\u0012��QÍ��V�\\u00007\\u0007�s\\u0007Cn59���|h<Y�\\u0011\\u0013\\u001b\\u0011��\\\\��\\u001b�\\u0003�@\\u0017�\\u0006�F�]n5��:��\\u001f\\u001b�,��5��b�H7�M?\\n\\u0000�\\\\\\\"\\u0006��b\\u000eƀ�\\u0012�\\n���\\\\\\\"���\\u0011�#��Ɩ3\\u0016b�nN��\\u0003ʕ+�Vo�^�\\u0014���d{x���l=d�t�\\f���#�[cd,J����Z�鵁��a�\\u001f4\\u0012Fn/���2�\\u001d\\tگ\\u000eT@���n\\rz\\u0019\\u0018�\\u00047c��&���V!nmPxӐ�׾�*t�\\t����􀜺T\\u001aj+ʀ�\\u0007��^q�z+�C3+�U�D�\\u0017��\\u0016���G�-�\\u0000\\u0003,e��J'��גK�~��cZ�+^��\\u0012U�\\u001f�\\u0002��\\ta�\\r�᭽P5�ڪ㖠�\\u0011�����µ��n/}�U!I���4�\\u001aPR<\\u001d�\\u0005��b\\u0018n\\u0001��N��\\u001aUˋC{0񣄩���u4��e{�qF�\\u0012}6��MN[\\r\\f2r\\u001f&S#��\\u0001�\\u0015�JŲ�F*�A\\u001a\\u0011cTI�J�r���\\r��j\\u0000�*T�\\tR�J\\u0000�*T�\\u000bF�$W��\\u0007�7��5�\\u001du\\u0015�\\u001d����{�p��Q���gئ\\n�<d��Q����5�Ar\\u0006N�V4��d����@�Z���u5�]�6?��c��_~�|\\u001bRO,����>�P#�1\\u001e���m>�YK�ݾ�\\n|I�.\\u0016�\\u001c�NFB��~��RH�w7'�$�#rs��kJ�\\tnI[ř4k�F\\u001d9t�*U4��\\t|�J�\\u0016�F�5J��K@�T�R�\\u0012�J�\\u0001*T�@\\u0012�J�\\u0001꒤\\u0011��]�$L8Zλ�/\\u001aINc�S\\u001b:\\u001e,��ƓX\\u0004�5I\\u0000k#^ۥl%�r\\u0004\\u0015���\\u0000:\\u0006\\u000f\\\\q�\\u001bR��[k�oD*Z�\\u000f\\u0013�����:��4Y\\u0016�����J�\\u0012�O�#��ʺ�]��e\\u0005�6�\\u0001Z�DE�%\\u0015�r\\u0006>b;\\u001b#z\\\\��zе,|(y���#�( �\\u001d���!����o\\u0013\\u0010�P��E�f�'��f����GL\\u0018U׭s8��u��'�-�\\n-��SU�}���[���],���\\u001b!��I;�|q\\u0013\\n�r��\\u0017�Z���u�����N�B\\u0002���>IbY�؛�w&�z��\\\\\\\"�63�y�gT��I����WV�8�\\u0004������\\u0002\\nw�{ъ?��\\u0012�G��`nG�u�պ%-\\u0015�\\nV�tS�1\\u001e=t?\\n�)��rf\\u000b���\\u0013k\\u0011֗���F��-6\\u0000����g�<����\\u000f�!�ͼM\\t7�]����r��\\\\熑/�<OV���9\\u0000�F\\u0003�ƫVdܒ�Ve�I_��V��W�\\u0001�fafbG�$ו*P\\u0004�R�\\u0000Jq�2�������è��x��`�\\u0006\\f6e\\u0006�p�ԣ�F.56\\u0017�h�C������#��}c��\\u0000:��\\u0016����[݄�:���j�H�,l̡�\\u001e��/\\u001e6\\u001aq�7B(#���ȏ\\\\\\\"����Q�\\u000f���������k�O��C\\u0004��93\\\\\\u001f�����t5J��ɡ*��,W�ܭ��R�\\u0000h�\\u0013��w%N⳩R�%J�(\\u0002T�R�:\\u001e�9l#\\u0019\\u001f�9\\u0000���S\\u0002��=�{�8q:H�Ś㍼-��\\u0013w�����3��a�W5����jj��,f�Y�)\\u0012�\\u001c�0�ܰ�-�\\u0014W��\\u001f��\\u0000w��Yz��\\u0019��9�K7r���p\\u001e'V�\\f�\\u0012X�$�ni���p'tt��C*/�B�M����\\u0000�~�^\\u001dw��U�}E��}���Ѽm*م���\\u0000\\n�`���r��'AZW�\\u0013�'�U^��D���775+Ҭ7\\u0004|EyZ(ؒT�R�%J�(\\u0002T�R�%J�(\\u0002T�x?���ׇM\\u000e��%z7�*P\\u0006�W\\u0015�p+�v�#6�\\u0007\\u0002�g-�ޜ\\u0004���\\u001b�B�'��l*�(J\\u0004J�*S\\u0002T�R�%J�(\\u0002T�^�c�\\u0004��\\u0000yR��O%�����\\u0015&�||�ה�:/�)\\u0003�\\f�XT�@\\u0012�J�\\u0001*T�@\\u001a㲬�[m���;oj��P�\\u0012\\u001d~�-��\\\\�5�߸2p\\u0010�\\u0005�~RĂ>��-֝�<� �ݪǬ�Rv<q����aCfv8\\u0014r�F�H��7�m��.ތh��,��U���0$�!��q��qJ�uZ�\\u0003췒�\\u0000�\\u0000=��\\\\��o��j��wL�\\u001a\\u0015��\\\\\\\"\\r�\\u0007cK+I +\\u0012B���mo�U�{�\\\\�⃩S�2>X��\\u0004�Ub\\u001fX���1eֹ�&h%\\u0012(\\u0004��|��y��(�֓��\\r1�nZ�G�y\\u001bD_�HY�ػ\\u001b�\\u001b�V�i&~r7&�S�`M�*W�X�\\u000f�S�I�\\rP�*U��?���^�\\u0013��&�)R�b�jQ���\\b#qo�\\u0000J�*P\\u0004�R�\\u0000J�J��)���T���\\u0006\\u0018��,x�\\bI-���M\\u00053��<�8�7\\u000b�T�I$�׷�l��^��\\u0017\\u0011��ѐ���\\u001e67�!I\\u001a7\\u000e��6�!��C\\\\\\\"��ۉ#\\u001b���\\u000e�\\u0011\\u0015W�\\u0016,�{�H�jYF�\\u0003�H~����\\u0000����t�/\\\\\\\"l��'��\\u0000vCv\\u001b[�|�V�!�v:_�}�\\\\g\\\\\\\\G\\u0002F\\u001c�qbT\\u001f�\\u000f:噙ػ��ږ&�ו+D���R��Jb%J�(\\u0002T�R�%J�(\\u0002T�R�%J�\\t\\u0003S��\\tR��?�}��z\\u0000�\\u0012��l|�d˕w�\\u000f:¥\\u0010\\u0001��\\u0019��S���27������u\\f���veF ����rF�dFF��\\n�|�x���\\u001cZ�\\u000e)\\bw\\u001b1\\u001f\\u0002j�\\\\\\\"q���Ӏ��aYϙ\\u0014\\u000bw7=\\u0014ni?��\\u000f�Y�\\u0016%�ܝɥ\\u0000\\u0016��(��HU薸��;���%\\u0001\\u0018�$liEJp�u\\n׫�jI���c��$��_r<�\\u0016��\\u0014) � h,u50�_;��+�\\u0005�\\u001c��{Xt�2;�ҧ\\b�ڿ������G�F��ٍɪ�$�IR�Jb%J�(\\u0002T�R�%J�a\\u001c�P�o��\\nԯJ8�H���%Yd�\\rՈ#��jP\\u0001�w9TZE\\u000f籭ӻG�4a\\u000b\\u001aWR�!�\\u001c'r�b=ENڊߝ��􂈃2HW���@zR����й��?�~47����\\u0007�k\\t���F6_�\\u001bP��GC�+\\\\\\\"\\bd�\\u0013H��X��!ob���]@��`�%I\\u0018\\\\�YX��\\r|�׫$r\\u001dcV=.��\\u0000\\nmI'�%��.msa\\u0013җO!�_J�\\u0018H��\\u0018xr��k˟\\u0013��~?R�z\\rrr`bm\\\\\\\"��/�Ebx��5*�P�\\u001e\\u001b޽\\rj�)�I�R\\u0002h�(T��)}K�\\u001a\\\\G��L�_v��\\u001aVU*U\\u0012J�76��Ƴ�I�/�����꼯\\u0001`���p6��\\u0015��t&��W�5)q�:��v�IW��Oɞ\\\\J�4Kc�\\n�\\u001e6�Hmɽ�Z�*������4�*T�TbJ�*P\\u0004�R�\\u0000J�*P\\u0004�R�\\u0000J�\\u001c��\\u0007�\\r�QYp��[�5Z\\u0000m�+b\\n��g$�93mKú�+\\u0010<\\u0001�\\u0019پ�Oƀ=�F��7�x\\n�J�\\u0001+lb\\u0001k�4\\u001b�5(\\u0000��R�b\\u000e�(z�(@J'\\u000eDBU��:P�(`3csz����lH���)��\\u001e\\u0006��R\\u001b�_j\\u001b�_���\\f�;�>�!���d\\u0002��w\\u0015[�\\u0007!-���\\u000e��n��@H�d\\u0004����7���Ha�\\u0015����E\\u001cBC�q7\\u0006�+�M/9R��>UA4��\\u0018�\\u001cXH��EL\\u0007Q$���H y\\u0001A\\f��A��\\u0015\\u0010�F�DVV;�?�BP&�w�Z�\\u0000I6\\u0003ri7벿�\\u000f�?�g$����\\u0016�å8\\u0001���.��ᱬ��0�軟�}���8\\t4�g��1��^�Vu*P\\\\\\\"\\r�\\u001c�Vh̪-\\\\\\\"o�+j�T�P�\\r�{�\\u0007�G�\\u0014Ux\\u0000Qe\\u0000\\u000f\\u0001^�\\u0002T�R�%J��B.\\u0011��\\u0000�1�7V\\u001f#@\\u0015�Sm�P\\u0004���~���ċ\\u001ed��c�e�\\u0016\\u001bu\\u0015�T�Ԃgb��;[o)_&F�\\u0017�7�|\\u0018���\\u0002B�mO���T��\\u000f�=wi\\u001d��ىf>gZ�J�\\u0012�J�\\u0001*T�@\\u0012�J�\\u0001*T�@\\u0012�J�\\u0001*T�@\\u0012�J�\\u0013��%J������\\rC\\u001c�ta�4\\u0001Z}�2�8���m�\\u001aCWIe��\\u0018�t��e\\u00000�)��#'�,>W6�f��a�0\\u0002�\\nL򳛐*��noR�,�h5ɗ�poˈ��\\u001a�)�\\n\\tnBb�\\u0016�M\\r�X��-j\\r�\\u001e��ҧ��z��п���\\u000f��V�j,hM�jEɉ���\\u001b\\u0011�~5$ƞ%�\\\\\\\"\\u0015]�i�5�[�\\u0007z|����WG4\\u0011�\\u0019�Ǥ�\\u001b��.���,q�?\\u0010�\\u0016��VB���nվ���\\u0000\\n��\\t�0�F\\u0000�e\\nm�\\u0017��?�~j�H�\\u0000q����5�\\u0018+�\\u0000���9\\u0006,���JOQ�qTWk�\\u0000��\\u001f��\\u0006��=�^0o����mR7h�dCfB\\u0018\\u001f1VI��G��\\u000b/f���<|\\u0018�����\\u000f�߱\\\\/�\\fNt:]G�����+�%G]�\\u0004hj\\u0012h�C9��91�2+~����4)�\\rm��\\u001fa\\\\\\\"P�\\u0001\\u0000\\u000f+WE>N9\\u0000���\\u000f�\\u0002�L���R\\u0010��\\f}�n-�T�k5;\\u0010ꖀ�*��D�7�$�1[�bi;��\\u0012��I������k�B쩨\\f@�ƚ&$1�-�]��kPb�q�Ar.<��o��\\u0002\\u001b�5\\u001eW��Z�hgN\\u0012\\tS�\\u0003z�KS`\\u0013�9k�\\u0001��F���#P-�ZH[�e7#��]�,|̟ng\\u001c�u\\u0004��Hh- ���b�əy�\\u0013:��\\u0003K�]/��\\\\�����uч¼�\\u0002<D�!7�6's~��\\u0011��ɇ�\\u0012��\\u0017U\\u001b�\\u001aVJ.@��ֺ�a\\u001b\\u0003��!�F/H���ҥ�0F�(�6�4;:��J�I\\u0019�\\u0011��RH��B��}T\\u001dm�U\\b�4PZ�\\u001b��oc��c<��\\u0001Kt�\\u0015On��~�|PK(��\\u001b\\u0013b7\\u0015�c���GƼP��v\\u0015�\\u001a^�\\u001a!\\nY� l\\u0014\\u001f��<q�m�E�P+Q��'�S#����S�\\u0002y\\u0000�H\\u0002�aX���ַJ�H�,v��,g=\\u0000�z'\\u001f�}��yN\\u0000)Y[cz���i\\u0014ǘF7\\u0007o�\\u0010\\u0001\\u0015*T�\\u0004��\\u0017�o��(�%�W�$�}�g�TԼ�\\u0018\\u001c$\\\\\\\"�Ɨ7\\u0010�)��klⅣ/��\\u0003\\n�b��2�*:�Y&\\u000fR��\\u0017μ�Sζ�3\\u001a�fB�\\u000f\\u001a�0%J�hл�\\u001dh\\u0002\\\\\\\"3�(��>4�\\u000f\\u000e\\u0005�P\\u001eM��װ�E\\u0003�ч�^�^ߔժ��I�����5��)\\u0004��b7\\\\\\\"�p\\u0000ؓVb\\n��T!\\rJ�X�t\\\\\\\"�dY+��(�I��'���¹��q�\\u0000�@�W\\u0011�USrl\\r&\\u000e7�]�˲��E@#E\\nQB�4\\u001d*\\u0013sm\\t=w�}���oW\\u0004�\\u000fv�7Q<@\\u0006M\\u0018\\u000e���U�L���ZmH��)C���ܪ�:�*T�J�*P\\u0004�x8�>:��fbnN�\\u001a\\u0013\\n\\u0014�~..�\\u0012F����^4D-\\u0003_�Qs\\u001f^d�x�3Q��t1-k\\u001a\\u0002\\u0000��A�Q�6𬤝�s\\u0010\\u0004\\u000b\\\\\\u0012��]��ձ���\\\\\\\"a\\u001b\\\\��ͮ\\u0007���_C@\\u001b\\u0019�\\u001e\\u0012!<��@\\u001a�֤�3L\\b`8\\u0013`7\\u0004P���H\\u0014��\\u0019��\\u0001G\\u001a[2��,��1�L\\u001e���x�c�)����T�1��nݏ\\u0004�v%]��O�ڑ��I�)��\\u0003�a�\\u000f\\u001a-�ѝ\\u0006\\u0012%��c\\u001d�X���9M�W��\\u000b.8�B\\u0003�\\u0002�)_�m�\\u0015��E�r/�E�<o\\u0012�\\u0018\\u0014q�H�J1Sӭ14V�@\\t6\\u0002��V���\\u0000�m�\\u001a\\u0004{\\u000e6NE���^?W\\u0000M��j�L\\u00198�}�^2���\\u0015��5�v\\u001c/��\\u0002�\\u0019f!��\\u0005�+�?sd�)�\\f/&���m�ŀ\\u0006�p�jr��\\u0013��\\u0015�v\\u001f��\\u0018q����\\rg/o\\u0000z\\\\��L�\\u0000���[�:!$Y\\u0017���_�\\f�D�\\b!H\\u001ay�=�&�\\u0019.l\\u0003j~B�=��M\\u0011\\u000e\\u001b�As�|��(��H����޵�\\u0015.�\\u0006���<h��(>$�kOn?�_�V|�k�BԤpj\\u0015\\u0001���U�E�4�Cyڴ\\u000e�E��i�\\u0006��^�\\u0000�lk.f��n�m��%�j�M�+��.\\t��ʘ\\u001eXuڼe��_K�W��������\\bN�\\u0014��fp����\\u0000Q;�����n4\\u001d~�\\n\\u0000\\u0015�v5��\\u0016�4��O8�&\\u0001����\\u0001*T�@\\u0012�J�\\u0000۵�\\u001cr�A<Τ\\u000b�)��\\nUڥ��?�_��%5��4�� \\u001d7�ɍ\\u0014�����\\u0015�ֶ\\u0006�@?�l���G�\\r��4@�x�;C\\u0018I\\u0017U}�>\\u0006�Xڮ�Z%�Ih���I\\u0002��(f\\u001e�*>\\u0015��\\fC���~C��������Z\\u00173\\u000b\\u001b%y�!\\u0018$5� uڪ�-^K\\u0007!R��\\\\\\\"{���@:.�|khq�&Nk\\u001b[���\\\\�\\u000b��u+i1f�y0ӭcL�V�2T�R�\\u0012�J�\\u0000d\\u001d�����jI� PRC�G&�oUt�E,\\u001d�4J���\\b\\u000f�����\\u0017q1\\u001fT���\\r\\b\\u0000aP����EvO\\f]�\\u0018�z�\\u0003����z��\\\\�c�Oܰ0��\\u0017�\\u0003|\\u0014�?�?�ӕ\\u001b��HA�x�\\u0005��<����Z�bIjZɞ\\u0017�̜��bt�+�����(�����oų��\\u001d\\\\Y\\u0007�?�\\u0015ەR\\u0004H�E\\u001aS\\u0005�y6i\\u0006Yy1��<��q\\u0001�\\u001au�\\u0002��ܙpgI\\u0006LW\\u000e\\u0001���\\u0007��\\u0000\\u001a�{�2>\\u001e\\u0018�ޘ;��1\\u000e�����\\u001c�\\u001d\\u0019B�\\u000fK���CM` ��Qy=���\\u0002�\\u0018�k����\\f\\u0010�*�Jԫ{f�*GJ\\u0000�J�\\u0001*ʌ�mZ\\\\\\\"\\u000e �SV��v\\u001aF^�yU\\b#CE\\u0004�h1�\\ru\\u0014�ƣ�\\u0003R�87�M�:�/�2\\u0002m�\\u000f\\nj�{�\\u0019�J���U4�P���5�P:ְ�d?N�(Z�01������xE���8QE�\\u001c����\\u0015�[\\u001a-����u�ɷ-�\\u0010\\n|+\\u001c�U�:z����\\u0016SZ�]~\\u0015�Y,U�M�\\u0000��eR�����U�#.�&������J�*�J�*P\\u0004�R�\\u0000Ju�\\u00018�/o^��)-3�Ӕia\\u001b��~#CUMEm\\u0006���:q�\\u0007_��R|��$7x�\\u001fQ��󧄎\\n\\u0019��e$n|�u�\\u001b�km��h�\\t�r�)�n\\u001aM��^2��\\u0003|iA\\u0004\\u001b\\u001d\\b޲uh��*T�2T�R�%J�(\\u0002T�R�%YP��i�Ԋ7�E�1vc`+��Ċ\\b\\u0004 \\u0006'Vo\\u0016����\\\\\\\"F6'��W�\\u0011#Z�%�F��\\u0000\\u0012\\r���T��\\u0002�����=-��h\\u0013\\u0016�\\u00156?myE�\\u0017\\u001bi�X4,6\\u0017\\u0014�fu*T�\\u0004�R�\\u0000J�*P\\u0004�}�\\u000e7\\u001f���cd^����S����\\u001fR��Ε�\\u001a\\u0018�й\\u001d�\\u001f%�ƺ?R���E\\u0001�\\\\\\n�\\u0018�N�\\u0000^K3-�,\\u0001\\u001f�\\u0018F!X:�`�K�o�3�1Q���iah�\\u0003_�n�+D�I,ƥi\\u00042dL�D\\u0001�C�A6\\u0017>t��m�eR�\\u0012�\\t>���\\u0005u*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�\\u001c��B\\u001b16�i�X��Hl\\u0005��=�\\u0016��\\u0017�.\\u0007�t\\u0010B��~�=;�zhE���\\u0018�{)+?R\\u0001#�ֲ=���o��������G\\u001c�\\u0016ͫ\\u0010G�a\\u0014���\\u000bi���[�@\\n�{\\u00067\\u0016�;8p=!�ԟ�􄂤�\\u000b\\u0010lA�Eu��\\u0010�Iԏ��E�\\u000fx�{��A`�H\\u0007�x��\\u0018��J���*T�\\tR�i���ƌ.��\\\\\\\"�$8��֍o��\\u0001�x��\\u0018��q����\\u0014\\u0005\\u0001T\\u0000\\u0006�mW�f��j��ڥx��FdX�\\u0012N�v\\u0003�R3I��Nrۏ��`���l��\\r�N?­���q��dQk��7�0ܶ2��(ض��\\u001a`\\u000b'n�s�\\u0005\\u000f���\\u001a\\u0005��.�\\u0007�B�F��S\\f��.&0] \\u0007�\\u001fS��ʍ�\\u0011\\u001cu\\u0011X\\u0010=CΚm\\n\\u00139�\\\\\\\"�#�E(|Ū��e�\\u0012�A+\\u000b��|iL=�\\\\\\\"iL`YT��?M��jӒ]AjS�����߮�ʖ��\\u001cI�\\u0002J0�1�(M0ukPj�*S\\u0011*T�@\\u0012�J�\\u0001*T�@\\u0012�\\u0017�T�G��ƀ=���c�����;����֛BL�\\\\\\\"�\\u001a�En�m�b���\\u001aŚ\\u001a!7ވU��UmDGR�\\u000b7m�&NLJ7V[k^\\u000eÍmds�\\u000f�G���j�M��o!\\bI7i�@J��.��\\\\\\\"�\\u0000u,�U\\u001c�`á\\u0014��,RaI+^�\\u0016 l\\u000b�H��5�w3\\u001d��\\u0000ڑY\\u0010�O����Ul�d�\\u0017��1��H���)[�h�GQEa����\\\\\\\"����\\u0016D�4�#����ZE�h���\\u001e�\\n4\\u0016�-U\\r�>\\\\\\\"�\\u0002�(�UԚ��\\n\\u0000�Mj�X-j�P\\u0001(�h�����\\u0011Mo\\u0019\\\\\\\"�\\u000fN7\\u0004tڵ��[$c�����.�ۗZ�L�Y}��8\\u0017o\\u0010\\u000e��\\u000eo�bI���\\u001b{s��G�\\r/���{���\\\\�ܾGCH+J�\\u0012�R�Jb%�J�(\\u0002��׉6��<H<����+�\\u0017`<H�ꛖ�ꛖ�PFD(<\\u0014^�uP�\\r��� �^�\\r\\u001e��&M\\u0016�}����(�\\u0016�\\u0015�� ��D\\f\\u000f�D`����\\u0005��$a��N�یyk�\\u001b\\u001f�\\u001e~d�\\u0014_t�����\\u0004�RsS�ʅ��Ȑ�q��\\u0003�s�\\u0007p�lu͞�\\b��\\u0000XrPvklk\\u0006e][JQ\\fN���Y�ݏ��k\\\\���\\u0001�2���jmxR\\u001a\\\\\\\"f�f\\u0005�\\u0002\\u0000뭩Gr�\\t\\u0015LK�\\u0011��\\u0000�I&߅\\u0011�'\\u0018^E#�P#k�n_Ɩ,�G����차��{�hbv֠_N��^��V����}\\u0001�V�&2��\\u001a���Lg�:�Me��8]��\\u0014�\\n\\u000fƘ��\\n\\u0018�:�J�\\u001a\\u0013V*9xڽ�F�\\u0015:�����\\u001c�$k�\\u001a�%J��\\u0013�k����ް�a��ZRz\\u0002\\u0015�\\u0004yׅj�8���\\\\\\\"��#^\\u001aЭP�\\u0000��\\u001d\\r�ij�[�\\u0010Tr+� ��U�\\u001e$j+D�u��!�֔\\f*��'����B���7�{\\b%�xTڲ�:�\\b˳Dz��|��h��(L�&&Q�\\\\\\\"­��·76\\u00175\\t\\u0014��U&��xMY$5�-�\\u001bV���Z�\\u0019V��,�X�k��Vu�\\u0000Π�H�\\u0003%`t;V���@��\\u0015����ʲ(���V���RO�Ҵ^$��z�\\u001c�j�\\u0015P\\u0005@\\u001fi�\\\\\\\"�C\\u001c�2�����\\u001f�b�\\u0000aaryQ\\t�]I\\u001c��7O�z\\u0011�e��\\u0017wm\\u0007ǥ\\u0010�@׵�21p��\\u0003�\\u0014J/\\u0000\\u0017Sk\\u0000MzA��db\\n�N�iQJ�\\u0000h:Q\\bR˔p.������\\u0007Rt\\u0006��!`4��^ƈ-��i�~j��A,~d���\\b�.j�x�\\u001ec��I�`v�*�\\u0005���\\nO �tk����d7�\\u0013\\u001f���%X͔\\u0000�B�֎\\u0003:�OR�\\u001c���\\u001b���YWE$\\fM��!�3\\u0014�\\u0019�����X\\u001aro��Q���@)��e�\\u001b�2�a�S���V���?q,�\\u0000���H�(�65�o�Q���+�4�9A\\u0018�䙽D�\\\\\\\"Ⴣ���Qc\\nE�d�\\u0013���o��\\u0004�\\u0015��\\u0000e���\\u0004���Տ�7��oco*��Ù�\\u0004\\u0000\\f��8o�����7Z�\\u000eC\\u001a7�Rs#rɎW��t�\\u001a�\\u0000\\u001a>~灒\\u0013,��\\nVx\\u001c�H��yuS����>�١�'\\u0004\\u0019��X��헽ۖ�ҩذ�b�F,���\\u000b?�`�9O�]\\u000e�ϴG�\\u001b��\\u00199Q,����,m�ו�r�a�3�\\u0000pB�I\\u0017mp�\\u0000ig��\\u0018��\\u0006����)|�>�vL%`Ă\\u001b�W�H�E��\\u000b�u�$�Lț!rao�ʍ�Y\\u0016\\u0011%�fN?��\\n\\u0007%\\u0012\\f��,&^y0����a�1���N-EA�g,}�\\u0000B��7'�C�����c�h�bx�$H��;ݮ4\\r��S�<�Z�\\u0016\\u0000�w\\u0017񩳁�'�\\u001cq\\u000fJ�\\u001e#J��\\u0016ܼ<� ����c\\u000e9������˛�E܂#6�kr���\\u000b@cG��88��\\u0018ťCn.t�&��H2��S��\\u0013DyHG�.���Zc.TfB��Nn~']k��7���\\u001cz���\\tB�拓��H\\u0007�\\u0001oơ�}�H�\\u001b\\u001f�\\u001a}��\\u0015@ďPǈ$��Y�;v<�sD\\u000b ?P\\u0000\\u0013z!1��\\u001cr�/tqҶ��\\u0006*�k�\\u0006ֿSXC\\u0010�%�\\u001b�r|j��\\u0010)��X\\u0011}ǍX(=id^�0�\\u0012\\u0019��\\u0014�# k�ޢՂ���u�8��oZ5��W�\\u0001ަ\\u0006R�:�\\u000e/P�<�P�\\u000f�)\\u0003R�6�XI���\\u0000�j��\\u0003�5a@Pp*����\\u001bH\\u0003\\u0010\\u000f!��a1�V\\u0013A�ͯ�QN�8�Z�eh�\\u0013�ʮDm}ŷ�/e�~�@�kY�2�&m\\u0002��\\u0014H\\u0000�\\u0019n�!��7ǥ\\u0005Vw2;;n��LD�R���\\u000f�z:\\u000f\\u001a\\u001b�� ��Vm�?\\u0001zl��5TQ�\\u0015���J�^���,Ît�$\\u0011�\\u001bٴ��zp��GCWMj[�҃t޶�c޴f����KYk)sa�^R0\\u0016�K�����P���W?.D�2q\\u0004�\\u0013�Kpvt~��l�\\u000err7�D\\u000b����s�hѬ|��S�CU����I(��]v\\u0014״���+ƋŢЩ�n���\\\\\\u001d-�ү�\\u0015��$��e�Z�\\u00026�y\\u0017q���|9�I��\\u0014_p��;K&\\u001fo�o~�y\\u0011��qKS�wh�3ɎL�8w��']\\u0007�T�\\ndƝԵ�\\u001dRo0{.L�\\u0016nG�͇�d�q�qr1[�Ȱ��3�mMa\\u0010<M�j��z\\u001c��_����\\u0012�/R�J����,\\r��\\u0014*.]��u��*e�|\\u000f�H���h\\u0001�r+\\u000e\\u0013��A\\\\osv�\\u0018�k�ʹ:xWS��^1$k�\\u001dk��f|�@\\t\\u0011&�\\u0017�j\\u0005���\\f�^�>2�2�r���6�֎�0˛1�%��哌�� ���ć�~��9�\\u000f)\\u000b*��Z5�\\u001fS\\u001aװ��\\u0014��f�>r��~�wqQW6~�G���B^ɦ�ߍ\\u0018�E[ڬHE,N�\\\\��\\u0014h�\\\\\\\"��\\u0000y�C��D\\\\\\\"S�y\\u000f&���Kc�m)_c\\u0005�)���\\u001e_���~�Dw>�\\u001fo�y�뵐x��B\\u0016~�ρqN\\fm��e,\\u0007�Mr5��ɑ3M!����U�Z�%�ܖ�\\\\_�[g\\ff�d�\\u0007��\\\\�s���X\\n�!g\\f:T��V���m��\\\\\\\"\\r!��G�X��\\u0001U�Ê\\u0018�!%�\\u0001��\\u0016�\\u0003CfH\\tH�ߑ�)r\\u0006*�n5d\\u001aU�ԶQ�-\\u0013\\n_O��Q�\\u0017\\b��\\u0016cE�7\\u0015���ZF,\\u000fCZ�Wұv*\\u0004y����!\\u0016q�Q��ƒ�E�C�w��\\u00143�L\\u0006͎|�S\\u0013�d���؏Iӭi���6�2m]����ӱT�\\\\\\\"�_�WA۟���~<z�������\\u001d��\\u0010���p�B��ܨ<nˑ� �fF]@*M�|n\\u0005\\u001d�5\\n�dְuތ�XВizʺ�\\u000eEf�Z��u�\\u0013<:-'��\\u0000~O�\\u001ae���\\u000fV����Q$�N����kr,yR�JВT�R�%J�(\\u0002Q\\u0018\\u0012\\b��c��ž\\r�V\\u001c<���\\u000f\\u001f�:/�L1�J/�W��Q��\\u00003UT�\\u0002m\\f�\\u0005�\\u0016�������T\\u0017`��\\u0012�$�}oҨ�\\u001d}۪���\\u0002d�>�\\u0003P4$��359:� 5��6��'��_�1�\\u0003��x�\\u0000U4f[\\u0010�\\u0000��X\\u001b\\u0001��C�o m\\tC��\\rKR�i��(d��q/&=?�\\u0014{sG����\\u0007Ja\\u0004h��\\u0000\\\\\\\"����]��� �g��\\nJ�q�\\b�!X��$���4wr�4���\\u0000u\\u0003Qe\\f��*T�Hd�G\\u0014��HԻ\\u001e��`�i�\\biɂ#���7�t�Q�Í\\u001f\\u0018S�\\u001fW�>$�*Ȥ\\u0003���e.�i�F�A�G��\\u0002\\u0005�+Ҡ���q\\u001a�:��pK/�R\\t�<:�3��:\\u0001ɬ4\\u0016�kZr�<��:��\\u000b�?y�\\u0002��y!`�܃_��\\u001fm\\u000e��Y|��o\\nxy\\u0010�b/v>4�*2& X��7Ɣ\\f\\u0000�-��\\u0017�.��G�\\u0000m�Z���\\tT*����(\\u0018!\\u0016�+S\\u001d��\\u0000�Y�cm�(\\u0019�J�⽤\\u0004��\\u0002!\\u0016$j\\u0005�\\u0001��u�yW�*��@�k�Ak/A�M��@ҡ�^�\\u00146~Jcc����$ԥ.\\u0006,�\\u0019\\u0018٫.\\bkN��\\u001f\\riF62f G%Y6aW��ܲ�[���\\u0013V�Ǜ\\u0016y\\\\\\\"�X�lkx�'�#l\\u001eޘSc�<��L\\u0018��Q�i���f$$ Ft�76�)R\\u0015�\\fo���W�}��#ޛ)�\\u001a�1��o\\\\\\\"oaS\\u000b25;\\u000b���R�,�N�4^�2{S�B�ڟ��4��'vE.خ\\u0015A,t�\\rOZ��\\u0003@5*T�\\\\\\\"T�R�%J�(\\u0002T�R�%J�(\\u0002T�R�%U�k\\r�X\\u0002M��5�\\u0007=�\\u0010���X�?����i�Z ��\\\\��C��8#��$�7[\\u001f3L���\\u0011�[��S\\u0002�11p{�?��Q^8��\\u000b\\u0013����C�DJ\\u0000@����/\\u0016V'Sk�\\u0000ťWF\\u00167ač���\\r.,rFP�J�ƈr�����J���X\\r�6�\\u0000r�Da��:�$^�D�\\u0011l�G��\\u0005\\rH\\tR�J\\u0000��9�\\u0019�\\u00000�k:�\\u001b\\u0010|\\r�\\u0001�z*��_\\u001djՉ�`kǊ\\u0019����<\\u0018^��CP\\u0006I۰\\\\\\\"`��Ƭ6!E�<�\\u001f.Q�\\u0019�@�\\u0000q�|���tޗ�Ȱ����aմ�0\\u0019(\\b�TX\\u0001`(\\\\�(�ȋ$�x�\\u0013vcZM��\\u0015��3��4��|\\u0015j���$���^/�q�x\\u000f�@\\u001aab\\u0018`�)�&oT�ڒƉE\\n,4�z�M\\u0012\\u0004��(_�o!��}��T60�:����ScBe��\\u000b���msM�̚U+c�&su(��V��\\u0015<\\u001bR\\u0000�OZ\\u001e�9R�-WW\\rA*T�LD�R�\\u0000J�*P\\u0004�R�\\u0000YY�\\u0000I�ыm����\\u0007R4#cSa�x։U�@���bE�՛e\\u0019�\\\\\\\"�]*��N6���Sqj����aP��t��.XeWǔ\\u0003\\u001b\\u001fm��\\u000b�R�����Q\\u0016�\\u0012܉�?3W� ,���ƃ�PY\\u0013�3\\u000eF�E�]P�f��pw\\u0016�ΧM��d��4�\\u0016;�j�!q��\\r�7�QZ��\\u0013�\\u0012{\\u0001�\\u000f*ې�A#c[�)7c�ASe\\u0019\\u001a{\\u0004ՅKT�(���Mf��Zr#d�#42֫H\\u0002�\\u0003`u�Z\\u0018e[2���>����ks[� މ\\u0002�b{����\\b�M$=� H�\\u001b�lv�]$oq�\\u0005�ۢ�w�\\u0012=ߪ�kN��\\u0013^\\u000efxZ\\t\\n\\u001dG�>\\\\\\\"���'���\\u0015�i\\u000f���h\\u0007\\t\\f�>\\u001a��%�QeJ�X��R�\\tP\\u001b\\u0010|5�R�\\u000e��\\u0019,��\\u001ar&�\\\\��1�Ҁ�t�Z3�i�\\\\\\\"�\\u0012\\u0017\\u001c�R�Q^��w��[C�%��@��e�\\u0000�<���\\u0007�k\\f$V2�-�����\\u0019\\u0018o\\u001e�\\u001c�����^�1�\\t��\\u0001RƆ�d�\\u0016;K%�����jK�̙\\\\�\\u000b�ܛ|t�r'�(�\\u0012O�r�]�4���ߏ�ץ\\u0013�\\u0014�q\\u0005HUM��S��V4\\u0012:,N�����;����{�r07Pl�\\u0001�`\\u00005b\\u000f�\\u0007�\\t)6F���U��F�\\u0011}*�KZ�\\u0011�c��CzA�t�^&]�\\u001aj<�i�� ����\\u001c�\\r�N5���+rv7�Bz�\\u001b��Σ �.u���\\u0003\\u0001��׭��O�6�J��\\n9\\u001d:\\u000f�QZ�_O\\u001a\\u0004\\\\%���|h<�\\u0015�.��Z49���ڂ����\\u001aV�u�\\nA�|�M�X�A\\u0006���fY�\\u0015�\\u0015z�����8��^Z�\\u0002�j�k[T�D��J�4Z���\\u001a$��Hަ\\u0019�@|~�^����;��_�H��R��*���Z��\\u0005{H\\f�z�x�o\\u0003z��V�\\b,eGkj+X�#>�B�)}z��\\u000f��R�\\u0014\\r��\\u001eZ\\u0001VG���5�ۉ�;U�m�ïZ�M�oI�s�Y$h�)p��\\u0018hA\\u0015Q�\\u0007v�k֏K�Vԟ\\u0003@\\u001e�,��\\u001b�uc��=@�\\u0004)�\\u0015���HP6?�VAv\\u0006�z�\\u001bP#E,�i�\\u001b��C\\\\5�\\u0011�\\u0005P\\u000b��\\u001duܚ�+^���)�aͷ����\\u0002���=M_�����[Z���-��\\u0001d�F�\\u0014\\u000erh\\t�Aac{��Ur�Wt>Z��t[�7\\u001b�h\\u0000��\\u0005�\\u0004\\u001e�i'w@2\\u0016E��_�����\\u0012|H�4\\u0007s��9X�\\r�GJV�\\u001du\\u0015WM�� @\\u0000\\u0000���\\\\�\\u0005�Q��|릆�U\\u0007�\\u0000\\u0013�\\u0015��<���\\u0010p��\\u0015�\\u0011�)�4Ts!���\\u0013RN�m{�ڱn3-�\\u0003�\\\\\\\"����Y��L�\\u000b�Y\\u001c\\u001e�\\u0004���:Rl�L��\\f1,���j���\\u0000Im/�+��<��\\u0000w���\\u0002'\\u0007\\\\\\\"'R��u6C�Θcd�c�\\t ��g�f.䶫��-\\u0006�m�\\t3����A\\\\\\\"S\\u000e�_̚R�\\u001e�3\\u001e�\\u001eNvL(ʹ-,M���7�\\u001f���/��1\\\\\\\"92��t�Ō�J��G'\\u001e\\u0006A���]�VIዾ6L*�s�㈖+\\u0010Q�\\u0012^F:\\r\\r\\u0015\\u001bd��A;,M�2\\u0014�.�b9?3u��\\f\\u0010'{�LOf\\\\Q���\\f�$,�\\u0018��{���C�����b�F���+܎Ϗ�q��Y2�\\u0011�fGbQlU�e��E\\u000b��y\\\\\\\"I\\u0018�dp\\u000eu�p>U\\r��Ƃ%�~~�k��m@�R��x��׵�E3~���\\u0000r�@\\u001b�l���Ip,���N��P��\\u0004�v��Ue��p6����\\u0014�N��,�VdP8�{ۮ���X����y\\u0011\\u001a�GSa\\\\�d�Y\\u0000�2�Ē\\r��z�\\\\\\\"m�\\\\=O�?c�ϟ���m|M������+YNF9\\u0014p�N\\tג����\\u001a\\r���\\f��\\u000eB��Ҙ��F,�Ǉ��\\u001a\\nn{�톊�\\u0004�l�\\u001b�\\u001b��U�(�|�V�0���\\\\|\\u0003�\\u001bD�\\u001b}��׭9�>�\\u0016;\\u0011�E\\u0019�U�~b\\u0007ʴO��KY�\\u001d���r�NB�t\\u0001�)\\u001fƏC�?$��t�\\u001d*�80��#7\\f�\\u0004q�\\u0016�2�krڔ��]���YʱQ\\u0003w��q�\\u0015�����UI\\u0018\\tv��j1�E ���\\u0000\\u0005��Td\\u0016�J1�[��CKyU\\u001a;��:�\\u0000\\bP\\u0000\\u000e��ez�(�\\u001fC��͗JP0S{�bA�6��.�o��5��o�R\\u0005}�\\b\\u0015�Ϧ�V%u�z��ojr�@g�M�}�����P�N��Y�\\u001b\\u0011X�~f�trKEjT�Z\\u0012^\\u0005\\r*�j\\u000e��R�o����S\\u0005ޢڗ]\\rWj�j��A��(��V���Q��Z%\\u0000j��\\\\�8��Sz�XĈQ�4��Jɽ\\u000eK/!��t&�*}�;J�c&u���\\u000fAJ;�\\u0003aN�b�1��\\u001d�?��xO\\u0010\\u001c�\\u0011�N��Z�=\\u001e���Uu,[V��\\u0005 \\r�H�r��\\u001b5Z��œ�Ɔ��ؐ�Q��\\u0005�$���\\\\\\\"UH��\\n�[����C�\\n�rt����\\u001c��D��kkW���Ƈݙ�P+�=�=�\\u0004�\\u0006=(��Ot͌;\\u0002�v,is�\\u0014�\\u0015�:�7�H�\\u0012M��6;p\\u0004\\\\\\\"-����\\t\\\\\\\"Q�[�C{Y��-��nu+с����\\u0003��\\rU\\\\\\u001c�ԯbzW0��\\u001eԫ:\\u0014�굪ryף��m�%:��\\u0003{��[@8)��:�����Im�yI\\u0019��t�I�{~yj�n\\u0010\\\\�4�y��qp��}�,���{\\u0001�/���ɏ��]�$PW�3k�^�V\\u0001�'r���m���y\\u0007�1�[[��'�mM;\\u0004%�\\\\��\\u0012\\u0011o���h\\u001f�&9{�4>�LLs/\\u001f�1���i�b�Ł\\u0018a�\\u000eF��֧�胭k#+Z�t\\u000fy�hp$\\t��=�\\u0003{���L��\\u0003K�Qg�8��\\u0010��q�/�\\u0000sT�y����G\\n\\u001bp\\u0001\\u0015H�\\u000b�1���~�4Ɨ���\\u0002i�\\u0000ȃ���\\u0000m\\u0015g�H���\\u0012I']IԚu[���J���]h�c��a\\u0005�b`�PmY��\\u0014�4��\\u0019#�Th<�O3ϛjo�<�d��7�I%���ۑ��N�D��7���\\u0005\\f�E�؊27\\u0006��\\nL�VƊ�k\\u0005 �0�V)\\u0006�=64\\\\IBBh�k��\\u0004D�4�=O�\\fR����w�]|i�](\\u000e���%�\\u00007\\u0012|��mÁ�Q�\\u00166N?�G�\\u000b\\u000b��޶�eX\\u0006�,-Z�w���\\u0007�\\u0016�p-T��\\u0000���,A��o\\u0004��v�e?/��C��$މ��\\u0006�vް�l͎�\\u0016^O��_�\\u001bo/:\\\\\\\"G��&�&#��lF��D�$�y%�f7'rk�&|d�>JI7\\u001b�պs��*T�q��ɔE\\u0010��N�x�`f��x�,�`\\u0005�\\u0015\\u0017l͗�\\u0000/��Oݽ;���\\u00158'��y:��E���ŗQ�\\u0007�V��Hv�&N��y�/!�c\\u001d<nkx�~${ '~Lo�֎f*,<�:�TR\\\\.�\\u0000-�4�J�T�\\u0014����7M�CQ�c�����|:��zf�ևK�^��*��~6;�~�LG�\\u001c���$}=5;\\u0001Y����:\\u0010:���j�oW���5�@\\u0016�u�T�DO��ɔ��j�:�]7%O���\\u000e�I\\u0003Ȟ���Z�\\u0000#{\\u0012\\u0018���\\u0000�\\u0000T-���i�Y]\\u0015��w�\\u001b�UM���\\u0017��\\u0007z����AYm`wmm�\\u0005�ᑚ\\\\\\\"��U��\\u0014���jU�\\u0004[�@�vՖ�%t���b���\\u0000ܘ�y���\\u0015�WY��\\u000eL\\n�\\u001b�\\u0001]N�@�EB�\\u0004\\u0010\\r��񬙐hM�=j��6��\\u001d\\u0005��I\\u0015d\\u0010�M�u��BGK��\\u0002/p~#ƭpV����@\\u0014nV�����^�������޼�1\\u0006�{՘�M����\\f�\\u0014���zu�Y�h�Ǎ��m<|v�\\\\Z�\\u0003{z�>'�5Ѐ[��\\u0006�\\u001a��\\u0001Y���\\u001e�\\u0017��E��ڰ�\\u0012U\\u0001��lM�s�)�jY���[������\\u0001�Ad���\\u001b�\\u001dv�R��&B�n\\u0006��9X�/��\\f�X�\\u001c��t�R�1w��\\u001a�\\u001d�/ b�#7��G��0\\u0016�kc���x+�\\b��i���[VD�7\\u0014�\\u0018f\\u0002s̈t\\u0007��\\u0000��tJ:�.����\\u001d�~�i���\\u000e\\u0019D.Ǚ\\u001c���\\b���²���7�}�� ���\\\\\\\"\\u0018g\\u0011\\bi� q\\u001bڝ�,Y\\t�&\\f�\\u0012:\\u001aQܿk�fG�\\\\\\\"���_�ҝ\\u001aN^���\\u0003��V,)6>C$���\\u0011\\u0017Rh��F �- ܊����\\u0000k��\\u0019#.$\\u0017h�\\u001eV�\\u0013�����9^,��<��2��\\u00111�O��Zj�̱\\u0010E�8a�\\\\S@��fRG=����Fq�\\u0006�ok�Zk������ǒp�\\u00066R�7�ʟI \\u0011�#�\\u0019�E�R?p��6?*A\\u001c�9\\u0012/�N<��1qp�܂j�S��n<\\u0012�h\\u0011p45�0�0�,-�\\u001d�\\b\\r�\\u000f!k뷕\\u0002P(\\u0005[�:��aͫ%e\\u0012�O�\\u0018��Qhς�*T�\\rIR�J\\u0000�*T�\\tR�����5&E\\\\\\\"�GZ\\u0000\\u001a�m\\u001c\\\\\\\"B\\u0000�\\u001d/M#�\\nTH��F�\\u001bz�\\u0000'����Ѣ\\\\\\\"��\\u001f�\\u001b��SU��:�\\u0014\\u001e�\\n���D�ȃ�\\u001b\\u0000O\\u0013n�4\\u0001y��\\u0002'�7����,��F$�\\u0019>��7�0�%^\\u0012��rBI��\\u0000��\\u001byQo��ܴP5��0\\u0007\\u000f�貱���i���e_q�\\u0006�o\\u0001�44�\\fabkE\\u0005���|oAK�2d'�\\u0014#h�vBm���@\\u0006M\\tY,\\t7ݛQj�є�\\u001f��x�:\\u001dqd�9lɈ�����:V\\u0010ddŒ�4��H\\r��Y�x_�\\u0002\\u0016wpFk_r�t�Z��\\u001d��-X~d\\u001by\\u0013K�\\f�*T�\\tV�\\f�*\\u000f�@��\\u001c\\u001c~\\u000b�����Rn\\u0010Җ\\u0018,\\u0000\\u0003a��\\u0003^\\n��,�xj�\\\\\\\"��\\u0000]Z���0��\\u001cy��6��R\\u0002A\\u0006<\\\\\\\"�ı��@\\u0006�:Vw�*�(\\u0003Ek��6��+\\u001a��\\u0000\\u0010N����Jfcpzu�9P�yf2#�\\f���:\\u000f�4��Y���\\u0013\\u0019\\u0010\\u000b\\u000e*j����3�Q�\\u0001ukk���\\u0010�\\f͖��d\\u0007��4�$�㧅=\\u0001�\\r��ԭrb�g�>���:�ʴ1%J�(\\u0002T�R�%J�[���JP�\\u0011\\u0003]x�_°+Pr\\u001a�(y@�8gQN\\\\\\\"K�4���VC��_*�q�ҹ�0ൡ���t�&+��X�Q .�Z�w����Z��7\\u001b�V�\\u0006sH���R�����`�\\u0019*��Qk������V�aZWQ=\\ne�\\u00191��x��X�~]hu7E*,�@>\\u0015�w����c\\u0016D�Y�\\u0004lzy���a��\\ft\\u001e���ز�P:��U_AT\\\\\\\"�\\u0002ޮ\\u00005kVe\\u0015\\u000bW\\u000bj�-��P\\u0004QZ���րkH\\rSAW\\u0015AW\\u0014\\b���P��R\\u001c���`�,��\\u0000�}R�o#Z��̌@p��}�;\\r������ߙ���l�E��Z�����9_Ttx�o<\\u0004˫�m��Ur\\\\\\\"���@穵��\\u001a\\u0007\\u000f&\\fRQԁ}\\b�|)�ˍ4o2��ړ� m�\\u001aj�'=,-k�Ȃ\\r�⌒\\\\\\\"�����\\r2ٯ�T�'\\u001b\\u0019ԩR�\\u001a��Z�o���Җ�\\u0015`�qD~�x\\u001a�l\\t�f����^�\\n�\\u001c�����\\u0006�w.ŏʫG ���.�^���\\\\\\\"�e+�ň�M\\u0014��'%o\\u000b�hl\\u001c�p�澤?Zx�<�uɇ+\\rZ3�I��>\\u0006���ϣ�q}���1�\\u0010c��%�v\\u001b�\\n\\f�ȍ���b,m}�46\\\\\\u0016��դd�/�X�7��Vv����\\u0000eP�8�.*����\\u0013Z#�@�\\r�$nu\\u001b�q\\\\��7*,O¬u\\u0005���E��L��\\u0018\\u00107���\\u0011Y��e�����}h��mg��<�y}L�G\\u0016VmF�oq@�L�n\\u000e�lO�SCn�ޫ��$\\u0011��^�=6��ƀ=\\tsk�F����\\u0012\\u0000w\\u0002�R\\u000e�J\\u00070�\\u0000{�)[A�Pv�Mx�J�\\u0017\\u0016��>5�g�W��A\\u001a���ր+j���U�\\u0000V���֩j\\u0000��U�ז�3��C��r>\\u001fʷ;�ͤ�\\u001b�\\u0000:\\u0000+�YMb\\r�d���րTD�n#�l��8VN�\\u001a1�\\u0001BK�\\u0015y\\u0013)R�J�Fp5�C�\\u0005\\u0010�6�x�\\t��ůBE\\u0017`mo��Z\\u0010ː\\n�׭Kmc�\\u001f�P������7m������\\rI:�U�܂t��y\\n��K*��\\u0013W\\fOS�_�@\\u0017�V��u>\\u001b��\\\\�ȅ��ڨ��n��@\\u0018z��#N|��.�oY��@_ˡ����\\n�\\u0016�\\u000b1�e�\\u001bi@\\u001e9\\u001b�:X\\u000f\\u000f\\n�\\u0007�f`/������U�\\u001b� �\\u0005�J��p\\u0017������;\\u001fq�G�\\u00109]�(\\\\��x�Xh��FrVP\\u0015E�ԝ�C�'\\u0013��T\\u0000����d\\u000b�)�o�M]c�H�\\u0001\\rr��\\u001bqam��ک�\\u0012!���9�7�5y�E28`^FD(w��[���\\\\�����0\\u000faT?���\\u001c���\\u0017\\u0017\\u0004n+<��\\u0014A$(�\\t\\\\\\\"A��\\u0011�#����D�^\\u0010�H���\\u0007��\\u0001���4��e�\\\\\\\"X�\\t,j6$�k���RW\\u001d\\u001bp��_�\\\\\\\"9�\\n��`n��+-�\\u0003S�h�o���Yn��\\\\���~[\\u001f*�a�PPD]\\u0012���\\u00058�\\u001b\\n�%���ڣ�pH\\u0004��&����bz�M�����q㈙��HW��\\u0000vS����qqb�H�Ƅ\\u0000l\\u001d��\\u0000nM\\u000e�<з\\u0014\\u0002Nv:\\u000fH����D��p���0��\\u0000���4���C��<��U�\\u0013Sj�r��&Le\\u0001`��y\\u000bX�O�3^)aƌ\\u0002έ#��(���s\\\\�s�\\u001bM���ѫ��kP���\\u00158�\\\\\\\"B��aY��/?���P�\\u0000\\u001doz�1��\\u0001ZF@������Q�p�\\u0018��)\\u0013��%�}&�a�����\\\\����mI���Q��v�U\\u0005���N��\\u0005W>\\b�E\\u00105������]t�|aK�\\u000b�Sk�)�\\u0001�/$�E��S[)*Z�$\\u001dh�7�ܒUy\\u0018�۹�\\u0001��4�F�-{�D�M\\\\\\\"���S�OSpoD�\\u00102����(`,<kHIY\\u0001\\u001a\\u001djm����GE\\u0004�y\\u0002\\b�B<o��VH����ف�qJ�^@\\b\\u0017n]\\u0006��D�<r+�jd�\\u0013���\\r�g(�dS���W�}���\\u0003�?\\u000f\\u000f�iX�{��t�>\\u001b\\u00157�o�Z�\\u000f��%���\\u0006�{t�g���FGNI�-�\\u0000��V�+T�\\u001c�g\\u0003&1�'ԧM\\u000e�Q\\r\\t��v�#�ό�&\\u00033\\u0003c��\\u0011n���bwy����\\u000e4`��;V�Ё�-��߭RHE��\\u001e\\u001c�q\\\\\\\"0\\u001eG���\\u001d\\u0006�6�\\u0005rCj����v�Mx\\t\\u0019�PWCqj\\u001aH�����\\u001e4q\\t\\u0000a�Y��\\u00194\\u001a��`�E���KLrd#��T�}\\b�u\\u0006캎���\\u0013��!��qk��\\u0015�FW}G�\\u001e�H��1�$PA\\u001bU�=�i\\u0015Ď�Ϣ��P���B�&�Q֋<�U��j�՚\\n�mHfdkZ%P�j�GJ\\u0000�j��U\\u0016�\\u000e��4VHbq�e����H�f\\u0010��-��[�Q�˸{Cی���饘��f�� Xu?�Գ���z�v�\\u001a�~���M�ף`�Y��_\\u0013�t\\u0018}�\\fmX\\u0007��\\u001e�\\ncp\\u0005\\n��~�N(�՜�7�{�n+���H1�$�Wj�XV��n*�KC���;/�<-�=�\\u0000\\u0003݁3b\\u0017�\\rO��&�]�\\u0006ŋ��z\\u000b\\u0010�F6\\r��_�aŵ\\u0007B<�r����d�6�����Ƈ�'��eV�i\\n�S �q�{[�\\u001c�8�\\r�\\r�\\u0016R�U� ��u�W�\\u001f�����U���lȤ\\u0006\\u0005��E�\\u0014��\\u001c��M\\f\\u001c}�\\u0003�:�]\\u0000�RNV4̻E��\\u0013��\\u001d-���\\u0000\\n��A\\u000es�E�\\u0003y\\u001b[�^v���\\u0000\\u0015ܠ����\\u0001'��������rY���Z�1{yӮɏۛ��\\f���\\u0019c����\\u0012lm�پ�&ˌ��2'�2/�ْF�!�qD\\u0001w�Wq�\\u001b,J\\u0016��X�Eq��`�$\\u0004��\\b��\\u0000��mo:a�߳c͉`F�\\u0010�X8ߐ�~U��b�\\u0011�����:R�\\u0019���2R�\\u0014㎠��mc�4����=�l\\u0002{���t�s0�./b�-��NS3\\u0000w\\u0006Rl�b��]���\\\\\\\"�s\\u0014D�[�v��ux.>uj�\\u000f\\t�/^ڽF\\n��\\u0004\\u000e��\\u0001�g�i��\\u001e��k�\\u00028c%���Q��\\n\\u0003��C�2��m![���\\u0015ޞ..\\u000e.CK~RIk\\u0006�q�kRִ���Zk��3%��$2�F��ۊ\\b��|k���\\u000e<SC,V�&\\r�G��[y�9]\\u0015P�l��)��+ʕB\\n�5��&�Ն��\\u0006؍� �02%\\u0013G\\u0005�\\u0000�N��k+��QU�������\\u001e�Զ\\\\\\\"6\\u0014|\\u0007j�4C(�c�\\u0013�\\u00030�,��ZDt�fA.4���k&?\\fϵ��\\u0004[^,F�~��W�/n��r�\\u0011�{\\u0003�\\f���lO޿�2$]�!��\\to�6\\u001f}v���\\u0000�\\f���N|�(\\u001b�PS�\\u0005�3���֖ϗț\\u001aΝl��d��W�AA,��kEk�[�&K��x��k\\u0018ay߂Z���(���j��\\u0006A\\u000b�S���D�M���~�\\u000f\\u0010��Q�\\u0003��\\u0014�\\u0004��J�q�\\u0006�\\u0000\\u001f\\u001a�Jɿ�Ņ��[�\\u0015{q�[uַI-\\f�g�,,M����v\\u0001�\\u0000�\\u0006�\\u0001�zW���\\u0007KY���Z@=1٘~}��\\\\\\\"dH����j�z\\u001c�q�6_�\\u001a��Vr\\u000b\\u0015c�́'��\\u000f\\u0015\\u0002�]�R\\u0019�%�\\u001bZ�n�k^�-`H$��\\u0005T%�ymbMY�\\r\\u0001��_�\\u001a\\u0000��\\u0017;��=z\\u001dk� XX\\u000b�\\u001dj�[t�\\u001b�U�I\\u0000�\\rlm��\\u0000��\\u0000x�Q�w�^��jÕŹx��8\\u0005�\\u000f��o�ya{\\u0000o����\\u0004�\\u0015:\\u001e����rF�\\u000b�\\u0000\\u001a��ů��M��ּe�\\t_;���4�]��.c�K�\\u0000\\n\\u0006�d�V��\\rV�t���*��n*,�]t<�{y�\\u0019I�c���w\\u001cz��$�jN��\\u0016Ǌ�o+��_�U,\\u001b����C�Tb\\u0007���U��q\\u0017�;\\u000f�fT\\\\�\\u0019��u�V�\\u001e���\\u0002�r~?\\n�e�魿�j3Z�n�\\u000b[rO�T�O�:\\u0003{[��\\r\\u0018re��\\u0000]o��^�\\u0019@6\\u0005o��\\u0000�P\\u001b\\u000b�z)\\u0007�TV:0\\u001e��@\\u0017\\u0016R\\r͏�\\rV��[�\\r�6�I6��I��.��,\\u0015���\\u0016�\\u000fN�����\\u0000\\n�\\t\\r�\\u0001��:�V�PAsf\\u0003�RO�R@8��}�ɿ�@\\u0003�\\fM�S��N��\\u000f�\\n)U}\\u0000��������>��\\u00056П1BL�\\u0016�\\u0013�4�\\u000e�D�fn*K_�\\t\\u001a��Xʰd\\u0003�\\u0002�?�\\u0014[��\\u00008��}ؖ\\u001d4�2��Nh�~*~�\\r.T\\u0001��\\u0011m؛\\\\�\\n\\u0000'����R�\\u0000�����@�U�\\u001e���k�C��$<�`\\u0010���*�w\\u0019�B��c��d���\\u001bR�\\u0003\\u000e�B��[�\\u000bd\\u001b\\u000b_��oqF�W\\\\\\\"�K\\u001f��~\\u001aW�$���7ēI�XZɹG\\\\��!1�+\\u001bj\\u0001\\u0004ڳ���X���7\\u0015�v�������|\\u001b�k�_��4�d�\\b\\u0004j<+v6��\\u0011�~u�\\u000eQ�Or�W��M\\u00041`��́��~�e�\\u00113�|k\\u0005������̘&G���\\u0016��\\f���9���Vݳ����%�y\\u0011�\\u001cw\\u001c4�G�\\u00174�\\u0000�\\u001b)�z[�\\r��o���-\\u000eS���)�\\u0004ȁ��h��W�؃Y�\\u0012ŗ+]��ټ�\\u0006VSŅ�����l��J�)�J�*P\\u0001�\\u0011\\u0019\\u0007�SGˇ\\u001c���\\u0015�������«����5��i�\\teFBW� �+l^瓋e?݄�����G�\\u0004R\\u000fR��\\u0000WZ\\u0019�C-�\\u0003@���XY\\t�)B���r\\u0003\\u0002|:\\u0011���+��\\b��-\\\\T�ΌU��/�(�>�\\u0004O��W��?��@\\u001do5�G��J�]H��Z�T\\u000f\\u001a���q7���\\u000fۯ�Hp{Ì�\\u0000y�\\r\\u000eV��\\u0010b#��t�\\u0015Ы,�\\n\\u0018ik����\\u0011@�\\u00162�\\tX��\\u0000����\\u00006�d\\u0006bu��P�\\u001a-�D��\\u001f�k��x�ɽ���P\\u0002x���\\u0014\\u0000\\u001b�<`���4�?�\\u000e��E`�܋i�L]��\\u0004f#Sf\\u0002����]�Ы�b6�/J@滴&\\u0019c\\u0017$\\u0010m�\\u0001N��\\u00009\\u0016)\\n�\\u0005�\\u0010<m�%�d�R�\\u0000\\u0013���6\\u001f�_��S*Ƿ��\\u001a �vԵ��@m^j+�T�_����I���\\ry\\u0003^��\\u0003ՃP#nU\\u0015���T�@�X�ת՗:��� �z���\\u0000\\u000b\\r�az�Z�\\u0003X�\\u0000y7&mMzܛcj��\\u001cx��yi��W�����HW�1��\\u001e��hc���\\u000f��ɑ\\u001asŃY@67�k\\u0016�Y\\rd\\f��5��J �\\r9a\\u0006\\u0005\\u0018t���V���9b��,-^�\\u0015�!�\\\\\\\"��V��{�H\\u000bbN���������v\\u001d�3\\u001b%@C�����{F�\\u0003k�L{Iŋ$��wB8�\\u0013��;��\\u0016��㓸X� ;\\u001f:�Xt�Q��B$\\u0011���\\u0013���\\\\\\\"��M)B�s�p�\\u001a�ة\\\\\\\"����\\rr]ψ��R��1c1�ޡ\\u001a�ԭ�%�a��nM�ұ0�j*���\\u0018�p�Ұ�촮V�`�G娸\\u001a\\nJ^\\\\\\u0003��z��y)��*U�3Õ�Sqb�i֌\\u000bBv�\\u0006#���\\n>Ս�f�B��*޽��@�\\u0016�\\u0003�5�U��\\u0016�j\\u0000�W�H��ҹ� �>U\\u0017z�@�\\n���cz\\u0000�{�i�̗\\\\\\\"&�*�^�Z�e[̈M�0�)�w���x�\\u000e4�׽���\\u001bD�l��\\u000f5�S���gw�\\u0011(�\\u0006�5*�i\\\\\\\"k����'\\u001df�xȽ�q�!��\\u000e�H�(��2Z���\\u0006�\\\\r�˩2(�a�g2#�4�\\r�\\u0018r�V�O�7\\u0007�W�K:�]\\\\4B�����-\\u0005\\t\\\\\\\"̥M�yD,qȼ�������\\u000e,A�M9\\u0003ʕ*S\\u0002T�R�%z\\t\\u0000�t;��\\u0000g�\\u000b�s��h}��I#�\\u0011R��\\f�^3��1���;�\\u001ap:�����~]��0���\\u0017�U��-��pO#�&��Z�K��\\u001bZ��\\\\\\\\\\\")t\\u0004#\\u001b�j�r��\\u0002($��Z�cҲ>7%m�¶K��s��X�Yc��\\u000b����P\\u0000�\\u0017n���_�\\u0012;�o�\\u001a��_\\u0011V�A���\\u001f*�I�X\\r5\\u001b�\\u0005�\\u0002��\\u0003qk�k[�K�\\u0005��\\ng�[���mb����\\u001d�z��m\\b�m\\u0007]A*T�@��fY�UF�mҵ\\n\\u0005N R�<�Rխ��Z$e@�\\u0005�B֨�ғc�\\u0012�R-E�7��&ץ� \\t�Yt�O���Le���@d-��,~�M0��n���NDP[\\u000bSL\\u000e\\u0004/���hR\\t\\u0004�V�\\\\��jBڰ�x��6>\\u001dk\\u0015gg��2�����\\\\\\\"nnj�Jdk�aY���,��$�R�P�1gX\\u001b���(�GԷ�\\u001b����5h\\u0013Ci2�M\\u000b����\\u001f���\\u0014��N�\\u0005J|�B\\u000eN�K\\u001ful������YK)\\f\\bЊGW�Y\\\\\\\"7Co\\u001f\\u0003B��u:\\u0000C*۠���*é*7����\\u001c\\u0004���=\\r0�̶�ޭ9!��Eϧ��[׷-��\\u0001j�\\b&K�½�e\\u0007b~�`W�\\u0001k���}�\\u0018�K\\u0017�w\\u0003�ν���b��V�|��#$�s�;��Z0��:��t�[�\\u000b�\\rF�\\u0010\\u0011���YR��+�\\u001c�d�!�\\u0017py\\u000b�\\u0004\\u0001Z�-77\\f�\\u0010px�h\\t$rm@��JK\\u0004�\\u0004�*�Q�:�w�\\n�\\u001aIK\\u0002�ٔ؋�|\\u000e�5\\u000fY*�\\u001e\\f\\u0002����f;t\\u0012F�H��{rV�\\u001b\\u001b�_/uxr�����]�V�AMFLh��­�b\\u0005Ip�4f\\b$�\\b�ـ�ǰc���ls,��$�\\u0004��������򠗼�˕\\u001e<\\u0000�3ľ�?�\\u001b+-�>ey}6����)4\\n\\u000bI4�\\u0018��$\\u0001�[�mD��Ԑ��U�\\u001b|mCª��߀\\u001c��\\u0017\\u0015�N��c�y�\\u001b���x�\\u001a��&�,��\\f\\f\\\\\\\"���T��!���:�\\\\��JeQ\\u001a�@\\u001b���e�.�Zǈ\\u0002��<�\\u001cߨ!���C2\\u000e �sR�&���Ɨ\\u001c�\\u0012�'�Rv?\\n�(�%R�`76�$�ܟK\\u001f��\\u0003�EJy@ꇓ� \\u0001��Z�_R\\\\3\\u0016��*�\\n�7\\f<\\u0006��k�\\u001f;%�6�F.\\u0007����\\u0011��ǻ�a�\\u0016�k��Yr\\u001a2\\\\\\\"\\u0011�s�\\u0016\\u001f��$�#�uS���\\u0002���6;TY�E\\b\\\\]t��\\u001aWP@%n\\u0007\\u00105�ڬ;vc�� �Y�C�S����6߀��).\\u0011�\\u0011�\\u001d+D6`|�,\\\\i������ƌ�4Ƹrq�\\u001e����w$\\u0001FB*�\\u0013ŭ�m�����\\u0012[�\\u000e�o:hg�\\u0000�~���\\u000b���c[�5�V5O\\u0007�َcxW��4\\u0004�Lz�\\u0000ݢ��i�X�U\\f\\b\\roN��4�d��y��k\\u001dA�b�1�$�n[�g���[����ʣUb�?\\u001bV\\u0019}�<�$����\\u0017F\\u001f:�e*���nn5\\u001di�3�A%������A4r\\u0013����\\u000bD�&>���G�+|N�,jUۓ\\u0011a�`|A�]CC�Ʈ��9b\\n�7�����X2\\u000b4k��z��c�:�5���#�f/yI]V`\\u0011@�1����R��_��\\u0000P���h��X$��`ۣ|\\u000f�q{��I�B\\bԣ\\u001b�\\u0006�k�GE6:�����P��\\u0014������A�hd�\\n�9�\\u001b\\u0010�\\u001b���|i��\\u0018�\\r���x�[��H�Hx����i�Ї:�\\rv�'�:h\\t���4��m�#Y;3\\u0013cp64w��*n+\\u0019�d$\\\\0�WPj\\u001dX�\\u0002ǐ���\\u001a2\\u001c���~$�4��5�_\\u0014й4>��*��])F&Y����g���P܀�j\\u000bNO@��u\\u0000��UQW\\u001bR\\u0019��W,\\u0015I&�\\u000b�\\u0012ʐ��9���ʔewI���(U#��Db|\\u000e��Z���\\u0014��ق\\b�˱�������aÇ\\u0010�!���I�O��.&G�e\\u0004�\\u0005KI=i����E�b��Vh����Y�Q7T��4��/H��{����n�z�~Z\\u000b;�O���AHφ斘&|���<�\\u0001:\\u001b�\\n����vG�\\u0000\\u0013����FD�����\\u0013��t\\bt�%�}�\\u0017\\t��\\\\�}g�Sup���f2s~ã��/{W%��*<����rx.\\u0019�Rz|�����G�\\u001b\\f�C�H6_��,�\\u0019XX�f�S$����_sSk)�����\\u0000Zʯ��m�¾�N��,Rv�T\\u000b�k��\\u0000�)\\u001fz���\\u000e\\u0000�p�>b�¯�� ��+��;�q\\u001b뱬{�q��RG>9�x���~5�=\\u000e\\u000e�YV��X\\u001d��ښwA�É��\\u0014r\\u001f+�\\u000b\\u000e36T0\\u0011pΠ�/s[�i�f�'�\\u001bU��\\u0004M�șȾ�E9��H?oc�+�w*`�x����\\u0002��$�\\u0018�G�g\\u0000|]�)��*�$/p��_�_w�\\u000f[\\n�\\u0013�%̥�:O�Qŉ\\u000b��\\u0010;�BOE�\\u0000�N&�Ɠ(d���\\u0017�K[J\\u001b\\u000b�C&\\u00040N\\u000f\\u001e>�\\u0006��ԃ��Ȃ`�\\u001cU[!���MJ��A�\\f�\\u0016\\u0002�$eQGV ��kָ����\\u000e>\\u0004�\\u001d�\\u0005e��m���k腀^[�_5��FΝ�\\u001e�\\u001c���R\\u0013\\u0006[U�+\\u0011�t�G#��Q&��T�ԵJ\\u0000/�g�n�L�\\u000b\\u0005\\f���J��Zo/��U�n].��W;R��u�ܤi���^Tٓ�D�\\u0017k\\r4\\u0000\\r\\u0000\\u0015�J�b%J�\\u0012l5'aM1�\\u00124\\u0005�4��u��&�\\u0012\\u0002�\\u000ei�@���Q���E\\\\\\\"���okiE\\rj�k'v�I\\u001a%���ޏ�����+X$�x��ce%&8���L�\\u0011{\\u0002(\\u0004�\\u0001�\\u0001�{���\\u0003�e��T��\\u001c��fF*\\u000b\\u0015-���\\u001b�ֈ�Ñ�0&�!Ÿ1e\\u0007���}���l�L�\\b�97�6?u\\u000b����-3�\\u0013s���c�����x-<���O?P�mzϑ&�.j�Z��&��֢KmX(c�ՠ\\u0016\\u0014@I���+|\\t��ԷPG�+�vF\\u000e��64�'\\\\\\\"yGL��5&�_�Y�\\u0015O9X-�b�k|k�\\u0019�ci\\b�\\u000f�X���Nŏ�7�9�\\u0011��\\u0012x�\\u0005�nH}$�cj�#�\\u001a\\u0000E��(N�cLH�Ե��h�\\b[]I�y��R�L�ı�k�|m���zWN��z�@\\u001b�r�z��~��\\\\\\\"�\\u001bX^��Q�*��S}\\u0007Q��Y�n\\u0004���J��\\u0010�/C�R\\u0019\\u000f\\u0013n@��xE�\\u0016\\u001clw�?\\u001a������\\u0000��xnS�C��\\n��\\u001f�j\\u0011r\\u0018��\\u001b�l/j�\\u0005<�l�;�ӭU�[�m�����\\u0007�Tr��:\\u00127��ob9_�Ҵ$q\\rap���l\\u000fQ�Tq\\u0002�I]ocb~�(\\u0003�@\\r<h\\f������\\u0002�%W�܏��ކt�l��\\u0018�\\u0000������'�֧����?�N4\\u0007�Jz���S���������P,�����x�\\u0011p\\u000f��%\\u0000ܕ7��OZ���������,J���_Kח��rTjGBi����zu;|�.r\\u000b�M�7�j�\\u0004\\u001b�|��dO&\\rՏO�@\\u001e3\\u001e^�t�|����/Ɂ�k\\u000f����+��\\\\\\\"��\\u000b-�\\u000e��0���I<��c�kY7\\u0012I6��<5�\\u0000-X\\u000fKxnT\\\\VL��\\u0010-Э\\u0002\\b�mfb\\b��\\u000f��mP�k\\\\\\u000bh~\\u0015�\\\\x��֯�Z��\\u0018X�@\\u0018�e\\u0000^����΄�X6������\\\\��\\u0006ޓ�\\u0000kyV\\f�㒷#ց�|�\\u0019�:\\u0013A<c����\\rm��ݍKe$T\\u0000\\u0005�J�*\\u0006J�*P\\u0004\\u0004�q�\\u001b\\u001a�0��F<sR�����\\u001fO�\\u0000oM�\\u0007���mp<��i2��7\\u0003kx��n+5]��VCj���0�I�\\r����� �j�H\\f�\\u0006TB���M�\\u0004\\u0019j[J\\u0011bqM3\\\\\\\"�nv����\\u0013\\u0003�-f�ۖ�WYl\\u0015�+���H<OΪ񠛄�N�\\u0006ۊǹ\\u000fm�\\u001bY��α\\u0013�'��Я�_�����E;\\u0004>:I�^��C�21\\u0007�Z2h�ŗ�r=6�@�*�׼�^���S��[E�*��8b��\\u001b�\\u0000�\\u0017���ZK�P\\u0002����c����ǘ�kz޶�rj�z\\u001d\\n���[���\\u001e��J�\\fɅ��Jz<������ʣh<�B0x#�G[��\\u0016V\\u0007\\u0012\\u0004w7�\\u0017\\\\\\\"��;Չ����\\u0002L|%nm<�\\u0015PJj.̿��Ҏ���`�\\u0002RR&\\u0016\\u0003R�̏�R|5��.��\\u001e��d��\\u001b�hgc+\\u0002��\\u0003\\t\\u001e�\\u000e�=E���U`�\\u0016\\f,M�?���C>L61���t����a\\u001c�ٶ�\\u001a��T��9��\\u0017��h����gfbޡ�驰�γ��\\u001fI�۱������I!�f�dR�}>�X0\\u001e7�\\u0005}�Ncb\\u0005�ׯ�C�~چE/\\u0013{2om���|��.>i�/��k\\u00106��\\b\\u0016h�iUTzN����\\u0003����Ƽ��k�Z�\\u0000ʴ���t����$\\ny����I��S�\\u0003{�E\\u001b\\u0004��q{)�j���$Ӏ���v�����\\u0019����.\\u001c�����?�sG>|�DyF�uo\\u0011kP�-&Rm\\u000eyT&�C���Z��YQג\\u001b�����ܪ�j���He�W��+�T�j F���U�\\u0013ҽV�\\u0000�5h�X\\u0013mj�p �5u���T\\n�\\\\\\\"�Y�V&�V㩥�2�HI%��}=\\u00054�1b��wv׉<��V�\\bq$*-�:|�-Jbh$X�\\r���E\\\\|�\\u0001W�R�n�\\u00145�)�0��j��y\\u0002.5\\u0015�!�\\u001a�Z��\\t^�R�\\u0005\\u0000z���\\u0012lF��\\n;\\u001dF��`2��ŕ=��V�ר�0�{�g�\\u001e0ab�E��\\u0007�+\\\\vࠊO�{��\\u001f��\\u0011FH���o\\u000f��I���\\f�{�{W�\\u001cy9�:FT\\u0015#��׷λ�\\\\�4jN�G�\\r�u\\u0015���@��*�\\u0010a\\u0000���WE&\\u001c�.g�nq�8~a�\\rigd�/��P��3b\\u000f\\u0013\\u001b�=\\u000fJ໳:�28�\\u0003���3��FI\\u0007\\u0006SŁ��種�\\u00148����=�s�\\u0003ca�Χ�� Ό唓{ժ�\\u0017\\u0019\\u0019P\\u0012\\u0007ΪQ��\\u0004|Eh�\\u0013-�\\u0012��\\n����\\u001a#��ɯ\\u001dI��\\u0017(\\u0016�t&�3��ޛ\\u0011D\\u0001�J�)�e��P�\\u001d�@��T�\\u0010k��\\u001d���bnU��u��]˫�`�W�VU�Z�(�«�]��3��c\\u000e\\tf��:/���� �ޗ~�XpK�{\\u0003�㽨\\u001cn�<\\u0005�\\u000ft��y\\u001bX׹]�L��M\\u001a��\\u0013rt���\\\\��h�ǒ\\u001en\\u0002����l\\u001e�\\u0004�A\\rע3h\\t�\\b���\\u0014*�\\r*�|Eɝ��\\u0012\\u0007\\u0011D���w,M���\\rɮ_� \\u0019l�\\bY\\u0000`\\u0018\\u0015?a���_u���o��9���|�\\u001c�H�<��\\fy1$�\\u001f�K��+��s��I��C�\\u0007�\\u000f\\u0011�\\u001a�n%�S���\\u001d�\\u0014�\\\\\\\"D2�:�+\\r\\u000f����4\\u0016�&\\u001c�\\u001f�Zs\\u001e�L\\u0011��\\u0016Ub�k���;t�\\\\\\\"�nܙM�;�������4qŒ\\u0019\\u001bVї�Lc\\u001a�+7�\\t�\\u000b�Xx�I 3�\\u0013�G_����\\u001c\\u0000\\b\\u0000X�����a)c�'�潹?���^qa�?eu���׼\\t\\u0003�Z��\\u0000!�\\u0000����ד��\\u001b���$\\\\�����\\u0003�V����t\\u001b�*�?�?�?\\u001f���T���:\\u0002J�������L�P);\\u0005��f�}}��*�Z���IR\\b�]Gj�9!Y\\u0017a��#�r�\\u0000&�Q=�5���>�/�\\u001eb������P�\\u0000?ܙ#U\\u0000�$�_ʗ�\\u0010nN�\\u001e\\\\\\\"��~Q�\\r��A�\\r\\f�8\\n\\u0004)�\\u001dE[ ��,�a�\\u0017'�j�K3���\\u0007��U�d$\\u0003�\\u001b|kI�I\\\\\\\"<4n��\\u0000*��9��~}EUr��UЎ���8r\\u0014��j\\u0010�\\f͸`A���\\u0018�\\u0003\\u0011{�&�γF�t?�iە$�C\\\\\\u0011��w\\u0018U ,:\\u0011N�0Z�ez�ו\\u0001��dhj+�T[\\u001a�\\u0015,eBץGZ�����4�yp+XH��!$�P3.���E#eU\\\\\\\"����+L��s�x\\u001ai����'Q���cuj�-4�[\\u000f�\\u0015�\\\\\\\"́�2\\u0011�\\u0017\\u0006�( �+�X<�\\u001c[V��\\u0015�{�+����{)�;\\u001a`���\\u0005ר�Z{��\\u0000n�\\u000e\\\\I�\\u00013/8��7�i�}�����o\\n�C�+��vx�����j7��\\u001c�ȱs�ҳ$�s��R�I-\\u0014\\u0010J�*S\\u0002T�R�%J�(\\u0002T�R�%J�(\\u0002QxY�\\u0003\\u0005rLGC�_1BT�8\\u0003�V\\f��\\u0010u\\u0007�Y�K�\\u001b�5�R\\\\\\f�\\t��?�?I�����\\rk���S�f�\\u000b{�\\u0017�L\\u0006��|\\r*��X�Hʰ�� ��卢��m�ڦ�2UYJ�*T\\u0014J*>�\\u001a*#\\u000e*,4\\u001bP�(\\u0003I��v�!\\u0004�\\u000bU\\t-�\\u0012~:ו(\\u0003|\\u0019R\\u001c�e�DV�\\u001f��֖\\b�y�\\b\\u0011F9]�\\u0002�k����Y�]~�:YS6\\u0016WȲ�\\u0003A�)��\\u0017���ڢ�\\\\}߹�x�ŒS�\\u0003�,\\\\\\\"�cq�I�+���s矹c:'\\b�2c�!�\\u0005\\nY��m�!fɎd�ݗ\\u00124<\\u0004>�M$���=\\u0000\\u0001��Q�w0�9c\\u0001��[m��ΔxZ�q��\\u001b��\\u000f�H/�\\u0002,:X�|�qʍ1Z\\u0012I2\\u000b �b7����y\\u0004To\\u001d�I%�S����RT�D킕dr�\\u0019w\\u0015Z��\\u0005\\u001e ����n����C8�\\u0018���\\r芔��n\\u001ay��\\u000f4�)\\fX�Q��\\r\\u000e��U34*x1�wc��\\u001dC���u�b\\u0006���O؍urS\\u001f*y$\\b�X\\u001f\\u001a.��\\u0018��F�'zҀ-\\u0019��5�\\r$X�.nK\\u000fe\\u0019BX�˝��\\u0000\\u001a^�ɭ�\\u0003�39�\\u0018�n����\\u001f�*x�if��t�U��C\\u0014�a��8���bR]��[2�֓H\\u0002�k��12\\f��k��7��m�\\u000f\\n�Τ8�nJw�{��8�\\u001b�x��M֒U�v��D6e7\\u0007�J�P'\\u0007^&$\\u0011}F�&@c�\\u0018�6�\\nS�\\u00005��\\t��\\u0000:�;�sq\\u0012�m�]��\\u0000*ˍ�R�&�J���6�����\\u0019\\u001d�3�\\u0003��lt��[�Ν����\\u001f³�\\u001b��\\u0019�(�\\u0003�4���Y����\\u0003\\u0006���_*2\\u001c�Z���{iE4\\u000b5��\\u0002:\\u0013�_��d�I�K#\\u0007�j\\b���\\rj����\\u0013���\\u0019\\u001e��\\u0000�����F|y.cnNE�Zƹ,|�\\u0014\\u0006���\\u0000:c\\f��r\\u0006̽GJ`7�\\u0018\\u0010@\\u0004��4�&�\\u0001s�7 y��4N$�,|^�@\\u0007\\\\\\\"u7;ד���..l\\b$�\\u0000q�&�W�I\\\\��5J\\u0000�f\\u0016_\\u0002\\\\\\\"��O�|<�:����\\u0007@��U܀.t��A�^$��̍���y��\\u001ex��8\\u0003�k{�Tqe�Esr�D�S���|��b.,v5*V�D���gŉ�`㒝\\b4_�\\u0000�pY�X��\\r\\u0003ٲ=��e��]��?�t�t�mT�\\u001dU��Ǖf����,u\\u001e�b�'Z[��\\u0011Y\\u0013&1�H��)�ҤhY�UQrOJ�{�{e�a�+�/�����`��������=�6�\\u0011�\\u0015\\u001a�\\u0003��޴���\\u001cwB�\\u001c�$[��Rڕ���1�u���~R�Ɲ��dw\\u0012�\\u0019\\u0000)�\\u0013�N�������U�`��ǃ�g\\u0011�N��\\u0007�v��d\\u0004\\u00025\\u0007b+%֖�����ٿ��y8>��\\u000e\\f�ӎP���&>2@�P�Z�ut�&\\r<0�ȥ����)\\u0013\\u001b\\u0003ZR��<\\u001c���\\u0000��|�\\u001d�}�o�ҝ����dq\\u001f�+�\\u00137�+~i\\\\��}���ٗ�t�V%�\\u000b�ƔfX�\\u0004C`9\\u001fƭjs�\\u001b�w\\u001f���\\u001aOi]�\\u0017r�V�\\u0002�����w�&sw�j���zN�\\u0000\\n_\\u0006l��_�Dm���n\\u0003[^&�)��h\\t�9\\u000fThd7\\u0016<�4�������n呏9�<Vx�\\u0000�\\u0017,���\\u0003�4�\\tD��mq�;��)\\u0002��̋\\n&ɔ�U\\u0016�V=\\u0014y�h�i��q�tF\\\\�����Vcࢸ^��얘F#R}+����g�w\\f�<��\\u0010}(�\\u0002��J\\u0004ܒ�J��J�*P\\u0004�R�\\u0000J��*V؂�\\u0011�o�\\n\\u0000/\\u0013\\u0017�\\u001e��\\u001d��ыcU\\u0015�J-b*�\\u0015^ZkU-jP3P�MF���j\\u0019��C���dXϋ\\u001b\\n\\u0015$S\\u0005��\\u0015]��\\u0019�M#\\u001b�?��ō\\u0001�F�b1\\u0016]U�Ɠ;_z��\\u0001�L�rF��-(�U-b.N�Θvo��ܲ�37�\\u001a�mmY����m!D�Qdo�t��V�\\r�s!]o}������xܢhmt$�`H^�o\\\\�$�\\u0002T�c�R��R�J\\u0000�*W���T~b\\u0007�h\\u0001�2�p��Y@���Lq�ݐY��o�e��I\\u0004��V�خ�7\\u001eu�36#@F��\\u000f�Z�^��m�^\\u0006,4\\u0016\\u001b\\u0003�ު�\\u000f6:\\u0001}���Z`g*�nN�\\b�\\n�G��Z�t�Z�m��\\u0000�T\\u0016$)6#}t�\\u0005\\u0005��X����mT�\\u0003qQ{\\u000b\\u000bjH�i��r\\u0005�����^\\u0015��\\u0001\\u001e\\u001d?�\\u0000ysr[��t\\u0015\\u001dUO\\u0003{��\\u0007�C{\\u001d���[�׈�F�Q����\\u0005[��\\u001ax��]��\\u0016&��O���-�{d�Cc���'0F[�\\r\\u0017�ϝ\\u0000\\u0003���Om\\u001a�t6�j���g�ͷ1��1$��I�գb��7R\\u000f�k9̗\\u0018:��ڍ:|�x\\u000e�rt�U\\u0017U&�'o�z\\u001bSrC\\u001d|:xV�\\u0016sb\\u000fN�k0��m|/��^m齺��U\\u000eB�H���/�g��m�hO��%���p-�]�7�m\\u0000��>�6\\u0003@\\u000f��\\u0002�B�\\u0002-��\\u001dj���/]�œ�167ޔge��<h։M�4���7\\u0003���\\f,xq��6��\\\\3�3��ޕk�\\u001b[�\\rR�َ\\u000e�M�[[�����\\u001aۭ(��Q\\b\\u00129X���6&�ڍ�6\\u0007\\u0016YV��mV�&\\u0001{�+\\u0004�E�xZ�]H�?m\\u0003��/I\\u0016��w���#~�ma�F=U�8��\\u0011�?\\t=vm\\u000fK���L@\\u0013I\\\\\\\"���Ƈ���\\u000b!]�?e\\u0001Y�Rք�R�!��J�\\u0001(�͐ �^G�H\\n1&��}⁩@#�9x�_�M7�\\u000f�J�qE\\u001c�q��P}NO\\u0010�\\\\��JPS�:�n��-��B�@\\u001bk�1Z��OS\\u000b//I��H\\u0012\\b#q��WL{�\\u000b�\\r2�mW]/�ׁ�)�_�B�+�[A�v)%NRDobU����2&�F���Kg/\\u0005����kַ�uR�����s(1�N�]S�\\u0000w���)<\\u000b*1,��6\\u0007N�Ҟb�\\u0018c�H䮄\\u001d\\re�&Ü���zö�_\\u00152+Uĥ��;�\\u000e���6� ��i��(D�5���R6�S�\\u0011w.�$O�W����n+�H��\\u0001�b��qcX�u�\\u0000���z�|�+)���^��ڳFV�� u4^4��B��C�X\\n��&<p\\t�ׄ��\\r��e�Һ\\u001fZ\\u000f[Z��\\u001a�\\\\~�8�\\u0004�\\fw�\\u001b\\u000b�iƌ<�\\u0015ލ\\n\\u0002\\u000b\\\\iZ5νj���Tcm�����μ��*����N�����O/�\\u0002.\\u0013O³hcu*�-��c[�e\\u0016 \\n�Y\\u0015\\u0014�\\u0010�\\u0006��\\u0002옖\\\\\\\"8܎��oBs\\u0004�\\u001bڽ����\\u0018�u�hM��l�\\u0012l�֐8�N\\\\\\u0011ň+ ��P��u�D��^�\\f���������/�sY\\u0016a�b���TL�=\\rRIy\\u001d\\u0005�@\\u0006��Vŉ���_�\\u0017�\\u001f:�#�e䡎G�guQ`~4-JR\\u0004�R�\\u0000J�Y��M�yR�\\bL�t}\\u000f�J�j\\u0016��F�*]JL�5X\\u001b� ����4�K\\u0013j�[Z���e\\u001bz��\\u0004��E�աbX\\u001b��6���D��X\\u0006~�\\u001f�%�p0�aֶQ�e\\u001e�u��\\u0002��p\\\\\\\"I��@\\r���W����fTe,�P\\u0001\\u001b\\u001f�\\u0007�]ZTPA*\\u000f/+�51\\u0005I*T�@�U���V��\\u0017\\u0015�@HړCL��E�߭S�ysJ\\u0018�\\u001b\\n��\\u0003�WY)d\\u0002\\u0010�2\\u0007\\u0017\\u0014��\\u001e5e�\\t���\\u0003��A�z�g�\\u0000zO���D�s�\\\\\\\"џlx�O�h2I$�IԚ�U��7!8\\u001d�/�Lf�p�Ë\\u0002\\u0001\\f/{\\u0010k����\\u0010��\\u0000���Ƿ�!\\\\\\\"�yz�rU*�v�]�ϯ�������\\u0000�o�w��n\\n��2BI�,�����*\\u0015\\u0012o�r�Rg\\u000e_�ޯ<�E\\u0003��z�Q��[�/cu.��t\\u0017��V<9\\u0011=�l�z�V���#��\\u0003�-pE����B�E#b9.���\\u001dH_\\u0002i\\f\\\\\\\"�J�����#�\\n�J�.��\\u0000ݒ?\\u0010\\u0018|���\\\\\\\"\\t؅Xؓ�\\u0000V���c<�\\u0019T��a�+)P5�҆P(<��\\r�oq�\\u0000�5�Nԑ�ZË{�\\u001d��k6�d��e��\\u0015\\u000b��\\u001b�|��f\\u0004F�/�\\u0013ȏ�K��\\u0012�n�RN�ו*�KA6�*T�LD�R�\\u0000J��@,\\u0018�åV�\\u0000Yܻr;���,����V՛�su�)@ׁ\\\\Ã\\u0016;\\u0003WěޝG\\u001dT��(܌s4E8�OZ�6,x��uc�7SL\\u0003��b)�y���\\u0000\\u0007ʓT��\\\\�5oA��@G�G��fψ�\\u0000�/�Hj\\u0000I\\u0000\\u000b��\\u0014�\\n�>o���\\u0018\\u0007�h�\\\\�n�o���4��9��\\u0012�k'�X�\\u0000�FO�\\u0002?\\u001a\\u0017M<��o\\u0003F�5�n4ш�d�2�A�.�=J҉S�&ϖ��z�\\u0000����\\u0001V�����\\r6�m���Y\\u001fX����)h�\\u0001�9\\f<.:��%�����\\ro����W\\u0004!���V�14\\u001c�\\u0004�{_qD��C!(w;\\u001aX�q\\u0011a��9\\u0004\\u001b��Ư�!Օ��\\u0000�K���k:�+#B��,F�Z��Sʼ$~K�aYT�,!\\u0012�J���r+E�V5��溇H$eapB�\\b��ԗ\\u000e-XJ�6�dǞ\\u001f�bt�e#��H\\u001b%J�)��h�x�H��6�Ԡ\\u000e��gE�\\u001d�I\\u0014YӨ��Usf_�-�Kq'��[\\u001f\\\\\\\"liVh\\u001b����\\u0006�^�gIg\\u000b(Sr����K���\\u0000\\u001d&ri^��;��C\\u0016:�,J�,-�ӭ�~���̵:�\\u0013��p��Ñ\\bȉ�a�\\u001b8?�\\t�?pc�a�0�Ew =׈)cqz�V�� R�v�J��\\u0004�R�\\u0000J�*P\\u0004�R�\\u0000J�*P\\u0004�R�\\u0000J�*P\\u0004�]�;�\\u0010Jt�\\u0018�\\u0000�4��4ቩ:�\\u001b�6�\\u001d�\\u0015WIAս'�W�ϑ��dy]6(9\\u001e>u�p\\u0013�\\u0004ǘ\\u0015$��\\u001b�Z���%W:\\u000b*V�\\u00075�ǐ����l<�\\u0017h$\\u0000x���/+�.\\u001f�\\u001a�\\u000e��C�R��R�J\\u0000�e\\u0003�M2��x@��7�U\\u001dH\\u0005I�<\\r+�I�\\u001ap6�y�x�\\u0004��S\\u001a\\u0018�\\u001b�\\u0004��}��������A��\\u0016� r���\\u0015J#2\\u0013�%J�)��*T�\\tR�J\\u0000�*�\\\\\\\"%��[�sj�]\\u001c]Ha�(\\u0003ڕ*P\\u0007��pol�r,��)i�s�$ʤ�ru�u(\\u0003<xD\\u0010�@��}v�޴�R�%J�(\\u0002T�R�7��0��(w\\u001e\\u001eb�&~6��\\u001f0iEJ�T�4��\\\\\\\"He\\u001c��x�Չ�\\u001a.\\u0007Q��Ζ�5\\u001bս�?���q��L\\u000e,j�\\u0002l\\u000f�j�O��R�P������0w�h��\\u001b��t��\\u0000\\u001f\\u000fj��C�\\u0002)�٭v\\u0000�|(|�9��\\u0011N\\u0000r\\u0003\\u0000\\r�?\\nuٻ�\\u0006.\\u0002C<�$\\fĩ\\u0004�N�\\n_�2���\\u0016Lw�0��\\u001a�|ifG\\n\\u0005�*T�\\\\\\\"T�R�%J�(\\u0003�J��lA�>b��� �\\u001b�ֵ���u)4��Vk@��ܛ0�@R\\u0011�\\u0013�>&��R���\\u0006��%J�)��a$�X;\\u00006\\u0000�Qc���\\u0019��\\u0010O�Q��-�\\u0019o� G�@\\u001e\\u0012X݉'��^�����7@\\u000e�Z��C�7�h\\u0001���{LJ�us�\\u0001mΖ\\u001f\\n��\\u0018~�ǀ�\\n7�\\u000bà7�P�M� �$f+�\\u0011q�Ѡ�8��);V$��dA'%k\\u001eN�\\\\\\u0013�eڜ�4�L��`ą\\u0003����\\u001f��b�I\\u000b{{�a`��_�\\u000f�F��\\tZv|�\\t�MSVm��_q���2�?\\u0015\\u001b\\u000f���GZ���u��L\\u0019�\\bS���{y�3BK4�0i��a�bO�T�J\\nl�*T�\\\\\\\"T�R�%J�(\\u0002T�R�%o��\\u0000�_��XU���p�l\\u0003�kW�R�����\\u0007p��\\u0004@��\\u0004�QŎCͫ&$V\\u0007+*��\\u001b|�(�d`i�\\u0006���Q�B\\u001eH��C\\u001c�=\\rff帵Up&i34���I�u��\\u0003����⳪m\\t\\u001e������l>u��� ��\\u0004��\\u001b��\\\\4.#�9\\b�F\\fG�ޟ/�h��\\\\\\\"p�cu��2�Jܵ\\u0010����d�\\u001fg�X�)TA��7�+�;љ��;��6\\\\��p��@��-\\f\\u0011�URG���&Y\\u001dz�[sP�/Ԥ_�Z�� l�*T�\\\\\\\"V����܇�Yת�X0�j(\\u0001��\\t���\\n\\u0005�;��|fd\\r��\\u0015o�\\f����\\u000f�ZsDqg@����\\u000b���mj�\\\\\\\"�6\\u0007C��s�f\\u001d�?`�U���\\u0000�O�?�\\u001c�qgD�\\u0017��\\u000f����^z�ku\\u0016�G?0�3\\u001b|+��e؏u�wڎh8��*�GC�ּ���N�[\\r)\\u0010���!��������_���G4\\u001cX�'koo*���y\\u001b�í$l����c�\\u0019$o����K����d~6\\u0017��Z]���H\\u0014\\u001b�܎���Ԥ�#J\\tR�\\u0004�\\u0006��\\u0005k�\\\\��'�\\rH�\\u0010w,?aD�Y��E��|�\\u001e�d\\u001e��汵#*T�`A\\u001b��yUɋ�:DȂ@\\n���\\u0015$x��\\u0018\\u0015�\\u0000Usu,(��\\u001cN�ߊ��\\u001eb�2�\\u0000�q~�H*Q� y4��\\\\\\\"���A6�ޑ�I��ԩI�\\u0019*T�H\\tR�]!�O��g�\\u0000J��P\\u0004Y�Kq����5i2�d7�Fc�M{�,��\\t?�o�V�\\u0000������\\u0000�h�P�C\\u0006fcv$�:��\\u0000���\\u0000�y?�5��,�#'���Ɖ\\u00032mW�\\u001aBF�nk7^@\\u0000j�3�o�:Z���Q�.NS�3F�\\b^��\\u0017)�9\\u0001s�T��yei�^G��\\u0000\\u001a��s��\\u0016���/�_\\u0013\\u0013�e��ְf4��(\\u0005@\\\\\\\"�4�9!�\\u0018�f�\\u0015�\\u001e,�\\u0007\\u0010@\\u0003Pu��<����O\\u0018��m\\u0004��A��O�e4\\u000f\\\\\\\"q��J�\\u001a6�\\u0015G�_o3F`F�5��V>`�K�Y�_o���X�|o�S�琌�&r�4-]\\u0006\\u001f��\\f��\\f�\\u000b\\u0011}\\u0002��qL�\\\\\\\"�l�ʎ����,�Ǎ��\\r�+L�Ҋ��S��Ș���\\u001c��EF,�r����C�oE6,~:Qrw�2r��pb\\u000e\\u0011T}Z-�6��\\u0000�\\\\\\\"�cF�G��X��mQ~{8!5ɦ�l-^J��+�\\r�ؑ��#�Av\\u000b}�����\\u0003�\\u0003�\\t�gB\\u0005�6�Ĭ=�'���0b\\u0007��k���9\\u001e�j��}�$��P}�)1�4�9��\\b\\u0000��c�E�\\u0000��\\u0010\\r�\\u0011Ӊ�{�|9�1\\u0015�\\u0017�\\\\\\\"�ڡR�<R~�EvB�a��Dj��%�[��6�ڗԫ\\u0001��\\u0018��\\u00005~��\\\\\\\")\\u0000dpW����W!@�'&4\\u0000\\u0013v�\\u0001�c\\u001fr15�\\t��P5);0���̆�cA��T\\u001eF\\\\�6�N�e\\u001a\\nƥǍ\\u0012�J�*�\\u0014�.��<@&�\\u0015�^�:�2�'`E�qo\\u0003@\\u001eT�56\\u001a���?O��\\u0000��\\u0000��\\u0000ΥB\\b6\\\\\\\"�t5(\\u0002T�R�%J�(\\u0002T�R�=\\ro�[��T�\\bđ�x�\\r�z\\u0001&�S�^�o�?e\\u0003.\\u0002�����8Qa�,�sD�y\\u001b�ײdE\\u0012򑸏���q�\\u001f��$��?\\u001a\\u0000��\\t%y\\u0000�bH\\u0015J��ǜ��؃���\\u0016wI�@��J�$ht�#�,E\\f��>��q��\\u0001�խ>�\\u001cx�\\u0012fFy\\u000f�2�Z��A�\\u001a�k+!��8�R=��$bXԷ(������nj�O�-�\\u0016���X}�k㬍�B��ֶ�uo\\u00034WS�\\u001e��\\u000b��\\u0016B!bAe�qbk��\\b��\\u001c~�ʺ\\u000e�x�|�+B\\u001aEn�n\\u0007ºD��G\\u001b�1G<X����m�U#2+��\\u0003�`I��D\\u0012���%��\\u0001k�\\u001f�S!�+\\u0003\\u0011��\\b���]\\u0011��9�\\u001d���lF�:L��#I{\\u00167?\\u001a.�\\u000e�B��\\u0014���@Y\\u0019� \\u0013rHPu��Za�<�a��K�\\u0012\\b]ͫ�Ǒ2��)B,u�]���\\t\\u0012�4��� 2�D�C�\\u000b\\u001f\\u0013G��\\u000f�,�c���R�־����[$6��%\\u001cd����4������r%��7B�����\\u0012<)V�YKǨ�f��d걻'j�0�\\u001dd=^A͏�J�\\u0000r���\\u00060ǅ!/!\\fȡI\\u001cI�[M��\\u001e(�\\u0010M��P�O��i\\u0016ox�ϕ\\u001ak,HIH�aqk�rk[:Gŧ�cZߔ��o\\u0002�\\u0018�ѫ!�V \\u0016\\u0007�Ҝ���v�cTX�[K\\u0012@�j'�H\\u0006�4\\f�,���pE�j-Y\\u001b\\u000b�*iH��y�\\u0007�^��p̺� �\\u001b�0�\\u0006\\u0016B�\\u0002����Z.,�\\u0007aa�4\\bo��\\u0014��.u�w�Z\\u0014��\\u0000#]m�C\\tt\\u0017�Z\\u001c�)\\u000b�*Y\\u0013�:\\u000f�}�\\u0019`9y��\\u0004�0#tQ���r�\\u000e&+�ėx��\\u0014X\\u0015?ʝ`�� _�\\u0000f��E\\r�\\u001a\\u0015�w��5\\u001e�ȿ0t��E/\\u0007Λ�͑�KEmn�_��\\u000eɞ{�:{��\\u0012�1��E�>4��.��rF�\\u0014��t��F�4�\\u0003\\u0005p��H��f/��%ٴ�\\u0005�M��\\u0012�b��|)X�N1��ۭ/�ً\\u0014�PZ�'Aa�4�oSG�X���#V�=.m\\\\�x d,+�q-��S���5+P\\u0002\\u000e]�;�M\\u001d��п��\\\\\\\"Vy8����\\u0011C�-��M=��\\n�6�V\\bȹ\\u0000���9\\u000bZ��\\u0002zI�5D��h�r���\\u0001#\\u0001�$\\ngsm�l����ؤR�J�#%J�(\\u0002T�R�%J�(\\u0002V��\\u0017���\\u0015�z��\\u000f�\\u0006�;2\\t��6\\u0004�kd^B㮢�e=k��\\u0012L\\\\g�8���QB�ڰO�Y_��)�/�d��M7�P�ˉ\\u0014\\u0000����?:�Qr�()\\r�F�Q�\\n�[2�mA�]�\\u0016z``�TۧCU�\\u0018޳�*䆠�*T�\\u0011�<-�2B��ͯ�M����A��O���P��;�<�ж\\u001f\\u0016�`��䤌����[�й��\\u0018s�\\u001cXo\\u0019:\\u001f�=i��t�\\u0000\\u0006�X�\\u001ck+#\\u0015pU��\\u001d\\b�Ƿ\\u000b���5�+\\u001c�݋��gK������⌅\\u00124X�Y\\u0010\\u0005Q�\\u0005T�UA���,�;n\\u0017\\t\\u001at�\\u0003����>�ۖ&98�\\u0000�7��?)��\\u001a�[\\u001eI2C�Q\\u0012Y�mr�mͿ�4\\u0014+,�\\u0006D_R)*E�\\u0014IMJ9:�nn�\\u0016A�I���jG�\\u0006A_�\\u0011�Ҩͦ�*T�@�R�J\\u0000�*T�\\tR�J\\u0000�*W�㕩7\\u0003JK#�mk)d\\nčkR\\u0014�*�c�p~�KQ�\\\\\\\"Ǚ��Xp�\\u0014�EgMd[\\r��*��ndMA*T�V\\\\\\\"T�R�%J�(\\u0002T�Gv�\\u000f�e\\u0000��1���\\u001d\\u0017�J�UM�\\u0010җ\\b7��2C3dJ8G\\\\\\\"qBt����t\\u001c�\\u001a\\u0010~uI ���t\\u0002��\\u001c(��\\u001a���W��{��Ў�V��HG���A,�\\\\\\\"Y9��\\u001b\\u0015\\u0003Ċ��dLU[�\\u0013jŲ�]d�~�JU��3V�t�\\u001a`]�%���@�٭z^�w\\u001azO�N�\\\\\\r���?�\\r�\\u0007��и(\\t2(:�4�����4����\\t�\\tW^$�\\u0011�gO�3^�\\u000f���\\f(�{�%���|<�z��꿃7��jQr�D\\u0001o���X�i\\n\\u0019\\u0006�Н/Z�ʿOr\\u001d\\u001a2�Y��9@.WCPM�,+H$ҥx\\b\\\\\\\"�j��\\u0012�@.@���b���y�t���Q{��D�\\u0005e,�o�ي�U,~嘦�\\u0017\\u001b�\\\\\\\"���{�9���7\\u001bn7���:�\\bHc�\\u0018��qP=/mA�p�\\u001c��F�����d\\u0018��\\u0004YE�\\u0015�u�'\\u0015?G�f�#���Y&�\\u0011x3�\\u000f��1\\u001f�F���\\u001f�bx�I�U���\\u00067c�>f��\\u000b\\u001a\\u000e<l5\\u0002�6�Ț�7�7��}�dĝ�/\\u0011��SF��\\u0012*�\\n\\u0000�@����\\u0006�&#�І�\\u001aQ�/�g�ޗ&\\u0010�\\b ���^�c�&� \\u0003�k�mO�q\\u0004��¼*F�jc�7�8��52p�#,\\r��\\u0012\\u0010\\u0003R�J�IR�KP\\u0004�WheXĬ�C�5J\\u0000�a\\u001c�\\f�\\tA�`4��:�\\u001f��x�^P#\\u0015O�v2\\u0011���]T��Ra�\\fk\\u001cQ����P<);C��|Ы\\u0012[�j\\u0000��w!���H�\\u001e\\u0003˥yǧJb 5�7\\u001a��\\u001e�a\\b\\u001b�@\\u0015V\\f.+��\\u000e$���%J�(\\u0002T�R�%J�(\\u0002Qx\\u001d�\\\\���W��<�����[s��\\u0000��o%��4H�G\\u001a�E�TVw�ajUk9d�\\b��\\u0011B�Qz\\u0013UȂ,��S\\u000eJ~�|Ej6�-sYz�,���\\u001f$�+\\u0007T�\\u0000hu�\\u0000Q�S]j֯\\u001bAM��\\u0012Pa..4���#��\\u0012\\u0005�ʠ\\u0000�,\\u0006�h*�t���\\u0001IbY\\u0011�qtpT�#\\\\�D\\u000f�3B�������\\u000e4��v�\\u0000��\\u001a1���z\\\\I����̖�8�͕:��\\u0014�'���\\u0017�\\r�~P�����5�b��rh�R����\\u0016#Q]\\u000eF1\\u0000\\u0015��\\u0013��蓍�\\u001elv�*�=\\u000fC�5�t�@%FIm��?��\\u0019X͍)��@��P�\\u0018ԩ^��>\\\\\\\"�\\f��sK\\nJeT./ĂH�z���~c��Z��i�\\u000fm������r�ٳ�\\u0010�\\u001b�@��\\u0005��m�6[�\\u000bW���\\\\yޣv��$����S\\b�\\\\\\\"4e\\u0004t�i�n*\\u0018o�]�B\\u0010�|y `\\u001chva���\\f�� ���>t�\\\\\\\"8�\\nH=&�ƍbC\\u0018<�ɽ\\u0012.\\\\\\\"�#h�0I��41>��G�E�JK\\u0018�*7�%:��\\u0003�]��;�/$p�\\u0001�r\\u0003m>����:Vo�7�QXqw\\u001f�e\\u000b��U���(\\b\\u0018E4sb���!��\\u000bX�\\u0013K�\\u0004=�1��k�*;\\u000f\\u001a<~H��^���r�\\u0017&��$<qU@��$��\\u0005��K�M�7+`\\u0016�G6T#̂6��N�\\u001b�ޚI-�\\\\\\\"��Fp����x�Z~�N9Mb\\u0006͵RbjD�+l���R��p7��Ʊ� �*U���u�5/#���rN/\\u0004>�h���\\u001a�Ā�O�\\u0010ݓ?\\u0012�̢�Đn5��.�Ů�<\\r�K��2�Xܴ�0e4\\r\\\\\\\"�v�KYY\\u0018�\\u000b\\u0011N\\u0015��F���rq�Qq����4�в�z��J��\\u0015�\\u0004��y4r�V*B�p|�ԆKr�Ɯ\\u0019�ĜA*U�r\\u001d���FG]YH��F�jT�@\\u0012�\\u0017 T�\\r��\\u0000��S�\\u001a�ַ�U�\\u000b��\\u001a��\\u0000<\\u0005Oj67e\\u0007�R���U��a�\\u0001�+xq �tPǩmk�5��\\u0000�#E7T\\u0000��+a�QkE\\u001e4�\\u0019O�\\u0014����F\\u001b�K<-\\f�\\u001bt�����1����\\u0011�e\\u0003U<I�4&\\u0002��*U\\b�*T�\\tR�8�����G9�'�����[�n\\u0002\\u0004�\\u0012l5'aO�?n�i3���\\u0015?���p;\\u0012cd���%᪯\\u001bz�\\u001d���E��*��R(!���H��(\\u0015�:\\u0011�|\\u0005x<�ہQ%�p�Z��\\u0006�J�ɽ��\\u00149'���u��0*W�:�W�A�_�\\\\붃o��&��\\u0017#��\\f$��\\u001c��Q��C�v޸�\\u0007���ڐ4���A\\u0002�o�9~E\\u0002�\\u0000�>�k�\\u0002��o�^\\u000e��\\b��<wo�L���t\\u0015\\u0001�yމ~B\\u0011�w�ٍ�����������F��G]}����_t�����H�\\u0019��H_\\u0011WW�l�g^����.N�xǆ3��\\u001d�ֱx�f�ˍ�ǡ�Jr(\\u0006�Z+�R\\bЎ���6!��ΖN�;���q�n\\u001aL�֥���*�}ԫ�vV�0�\\u001aD��򪭪��V�i��7�\\\\\\\\\\\"\\u0005�\\\\O�w�0d�c\\u000b9��jt\\u0015��v�_\\u0002��%$\\u001dG��~�(��`���,ܴ�7�|�[�ʲ�Z�\\u000e���ee{Iլ�,B��\\u0012/`��V1���\\u0011�\\u0017%P��\\u0014��s]�fyNA\\r���6\\u0007�K\\u0015�Q�\\u001f\\u001cG<�Y��2����\\u001d�w;*��Ox��\\u0000��3�!��b6��>Ѻ}JE9�\\u001b\\u001bېcj�G-t�\\u001d+?d3���\\u0003`z�\\u001a��\\u0004��QR���v��\\u0000l���^���\\u0019a`��BE�>\\u0015i�\\rAJ�*S\\u0011*T�@\\u0012�J�\\u0001����Z��C�F�'B(���\\u0016���q\\u001fe�\\u0013��M(\\u0001�\\u001cL�\\u001dy\\u0003�\\u0014�28����\\u0001�,���\\u000ej����޺\\u001cL\\u0006U\\u001c��\\u0017,\\n��ř��#\\u0019&À��\\u0006�\\u0011�}=k~��9#\\u00163��\\r�ߙ��;n8H��WR?�\\u000fA�j�#�L8q�X'�H՛S��m�Croz��b3�\\u0018�\\u0016�C|F��|Ib�ª^����+�6?\\u001a�\\u0016\\u00174\\u0000�\\u001b����\\r�z��_m\\u001a{>\\u0000\\u0017���_�D�\\u001d�X)���\\u0003\\u0010��>1,�xN��y5\\t];\\u0000A\\u0004\\\\\\u001d\\b;R����\\u00034?�Y?���C@/�R� %7����f�<\\u0001ׂ��nԷ\\u0019yd½\\u000b���]7s����䪨|��s)-X�[��a�A\\tH�\\n\\u0018Y�՛�M\\fݧ\\u0010H\\u001b�V�+z�w\\u0018&�I\\f���\\u0006��g\\u0003'\\u0012k\\u000b8�1�$�\\u000b�\\u000e�Д�cUQr\\\\q ��wn݇��>\\u001c��f�Đ�\\u0002/pe\\u0015�؋��\\u0006��\\u0000�����Y\\u0005acu��\\t�+D���P#$\\rͫ�k�(\\\\��屄�\\r�\\u001f-,�/LbƂ<6\\u0016����JV�kDe�gT�|\\u0019!W\\u000e�����\\u0014�&�ۊ�'��iv\\u000e8R\\u001cjG�\\u0018y{m��\\u0005N����k{N~S�s��yya�b$�2\\u0000�6\\u0007Pi?y�8��ơ\\u0007\\u0000l���4f\\u0016VJ;��fE\\u0000���T?v�i\\u001cd��U\\n���kz�'E^\\u0005�*T�\\n,��\\u0017\\u0015����]@��´\\u0007 ����/z�3$����}\\\\��*�@��D�\\u0007\\u001b\\u001dh�0�&�܍n�k��>[֯\\u0014`\\u0004Q�@��ב�\\f�Χ��1c�T�/�I�\\u0018�i�΅N\\u001c�^��\\u0015�\\u0004hw��\\u0019���c��F92\\u00029\\u0000|�В�*�ȅ~\\\\\\\"��Νv�W�%o�\\u000fQ\\u001f\\u001aKM�,���ıSu\\u001f\\u001aϲ���*�#\\\\�\\u0018�$b�%���F����hW݆܇ԫ�x�;�e\\ta�I@b�\\u0000��kZ��ֳ-�1����\\u000f\\u001f\\u000b\\u0011��U2��_��e<��Qy*��%P����B\\u0010A�޵D\\u000e�\\u0000l�%ȑ��*�Z���\\u0000\\nk��Oq�aO�2�p�4��i��rq�bȒc�e��\\u0003]\\u0014�pC\\u0007�!�\\u001b\\u0015\\u001dO-@��T�J\\u0013�a\\u001c�\\u0000�\\u0000�&�\\u0000���\\u0000��\\u0000:M�\\u0003cdI\\u0003��lT�\\u001bu��\\u001b'\\u001f-\\u000bGpWu;��sB��#���\\u000b|T��(�P�um5\\r\\u001d\\u001fdʉ�~<��\\u001b�R\\u000b\\u0000n���\\n]����\\u0001ӌ��8�����Pي�%����P)�������q%D���\\u00028��q\\u0006���|\\u0019\\u0011ơ�q��~\\\\u���S\\u0017\\t�\\u0007$�\\u0015��j?�Wk�xǆ�䴖�3�GC��,\\u0015-��\\u000b��1,�R�h�1�G\\u001b)�}��g������ӥ���]\\u0007x�8h�\\u0005̒\\r\\u0019Th\\u000f�5�J���\\u0003o�5�,7\\n0��u}\\u0007�Q\\u0000��\\u001f���0X �\\u0000�\\u0003\\u0011���R$�,|K\\u0013�Y�\\\\\\\"�m}�4n�zЛ� |N��xYΆ�x\\nY/����M\\u000f�\\u000f�+����\\u0000Q�a��*T�(�*T�\\tW�\\u0004�G\\u00196\\u000eʷ��mT��\\u0001�LM�\\u001dY�\\nA40:1�C\\u0018\\u001fVL�y*��[/�>�>����\\u0001�-;�#\\u0016T\\f�\\u001d[PEi�\\u000f�k>O�p�\\bO�n��/��^�_�xK�\\u0000_�S�\\u001b|j�~T�?!\\b\\u00151�j\\u0011uP\\u0000\\u0017�J� ���R0I\\u0010\\r�i@�ђ�@��R\\u0000IM�@��D�u���*�\\u0014��`�Ug�dƜ\\bӝ�ڤb��)\\u001d��֚@cR��\\u0002�(�ۊ�\\u0019\\u000f�\\u001f�xt�\\\\��1�\\u0005��fǀ���!�\\u001e\\u0003��@'@x�ԋ��Y��WQqP�,�$n�\\u000b2�\\u001b���V�Y-j���\\n�hj-{j\\u0013\\u001a/�M��*��ŕ�ʪ=�p�\\u001a\\u0016���\\u0014�j�8qe�b�hH7�u7\\u0015c\\u0017ň?�&]��\\u000b��â�L}�c^\\u001cC\\\\\\\\�\\u0001���0$�suPd X*��\\u001f�#w.��pm��[�\\t�'\\u001a�\\u0005;�&\\u001b���d�}H4V�x\\u001aKZ�w$��5VS�5jw!��J�\\b�Jb%J�(\\u0002T�R�%\\u0019\\u0006\\u0017m@��r\\b\\u0004z\\u0012/���\\u0006\\u00199q}�����cp�à5-����c��\\u001d���\\u0000��\\u0011�1]xr\\u001fWZS���Ҵ>��u7�\\u0006��˸#���N\\u0003'�^\\u0005ov\\\\\\\"�PU*UV�&�*T�\\\\\\\"T�R�%J�F\\u0006\\u0013�e&,l\\u0011�\\u0012\\u0019�a�_�\\r\\u0000�\\u0012l5'a]f�<,T���!�'��O�-�\\u0000��\\u0005��q$�谰����d�,�7\\b>�\\\\_��-V�y::�\\u0012ޣ95����a�K�\\u0000-yTn\\r�;��_�c��o�£OQco�kjq�u�7�~\\u000bɄ��r�\\u0005�1$��ܟ�y,�\\u0016\\\\\\\"��.\\u000e�\\u0012\\u0006�uץz\\b\\u0019,or\\u0010���\\u0005����\\u0010���\\u0007\\u0003���I�Ԥ�/*J\\u001bR\\f�A�4e�[�\\u0002-�\\u001c��O�\\u000f'mB[��*\\u0001\\u001dw'�Q�\\\\\\\"�\\u0016RJ��\\u0004���X/��Q�1�u��R���\\u0014f@���Sb��u�2&A&H�4w\\u0007�x�\\\\\\\"kf�\\u0012=L��\\u0000�E�q1�>������UҖ��I�ԯaZɭ�����ݾ)\\n�\\u0016���&�~j�j\\u0014h\\u0006�r�E@�q\\u00027�?��2\\u0016�$y/�\\u001a��������5�?R�0`\\u0018x��.���\\u0000|A�\\u0019<����IJi����ۦvf\\u001d�,{\\u0003\\\\\\u0015�k\\u0005\\u0005\\u001c\\u001e�C[�=D�A�\\u0007������\\u000eH\\u001a\\fp��k�\\u001c@\\u001b����|h�<��\\u0007N�\\u0016�It�s\\u0006�Vu\\u0005c\\u00046�꿈\\u0014go��ܱ\\u001c@[\\u0001X��Y\\\\\\\"���a�k���S\\u001e?��k9ћ�޳r� ����_ӟ��\\u0010go���\\u001fΕĖ%��s�\\u0013�5LhX�#\\u0002�M��4B�v�U�)�D$\\u0010z\\u0003MD��W��\\ridq�\\u0010����𣍑\\u00165�F�\\u001e�����Y3��zA:�+�ʿJ���~�R\\u0007�\\u001b��\\u001ax�\\u0005x��A�U�$���\\n���h\\u0019�B�O���\\u0015wk��\\u0012.W\\u0003KnzZ�Pְ�SB,�F�W�C�H?�B+D\\u0005O!Ҥ�N��\\u0001Ͳ�b�pl~U�o��2_�ޯ��p� $_�ք\\u0018\\u0013az�J�\\u0016��\\u0017�\\u0019�\\u0012���\\u0002�-��\\u001aP1O����\\u001b�\\u000b�Ө1�Vf.V\\u0004f\\u0003b\\u0018\\u0002�E��vN���'�uƏY[��\\u0007���gnǒ2�ٜ�R�\\u0000��\\u0000\\u0017\\u001a\\u00181�,x�H�z\\u0007��穥f�\\u0000�x��\\u0016 �\\u0011E�\\u0001�\\u0003`(?�y\\u000b�ڦ�t��\\u0005�^ZQ��ƹ��\\u000f/\\fhCl�v\\u0017��T�Q̪�J�\\u0015�\\u0015�\\u0015d�\\n���\\u0015,N�o\\u001a@b�ե[؛�\\u0000M��D��\\u001a-\\u001bOUC�\\u000e\\u0005~���m�UJ��\\u0011��t�҂�$��\\u0014+7�@%J��6$�O�!����+�n\\u0004d\\u0001b\\u0015E��\\u0001�5����L�\\u0006�!���Ga�A�.���d;��(��ݛ\\\\\\\"�|���\\u0001TYF�\\r\\u0000\\u0015�x*Ve\\u0017\\u0006���Sj�-u�\\u000bک!�ե\\u000e�w�\\u0000F=*�,*��V���@�\\b\\u0007z�ڪ�P\\u0002�̷��� \\f\\u0019\\n0=C51��\\u0019\\u0001WP\\b؊�2�?Q��\\u0013����Z*\\f�-i\\u000e�7��$LNC�$ב\\u001axR��\\u0012^.�κ[�S\\f�G�Ϊ]�\\\\\\u0001�s�=�5b�d�\\u001f��t�)����5YF�'&�\\\\֫��p@\\u0003��XAݱT�c���bQǐ�Ե���*\\u001fb�\\u0000�e.���;,\\\\�� \\u000f��G5�p�ԣ�t&�����5���LRD�����%x�E3N�\\\\\\\"�\\u0019�y\\u0005$~5/������\\u000f\\u0011#)�^$�x?��t\\u0017B�N�4�9Pj�fDئ��Ko@\\f��f�Zv<�\\\\\\\"E�\\u0005O��0�\\u0000�\\\\~�\\u0016k��8>�]��qIRn\\u0007�iK��\\u0015��\\f��R�\\f��4���U��t;k��=��>�\\u0007O�o��m茌�r�\\u000e�\\u0012RF��\\\\\\\"E�� 5�q[\\u001d�e�\\\\�����Mm�\\u0000��j��\\u0013��B�_�W��'\\u000f=�\\b=\\rS��\\u0014LHU`C\\u0003h��\\u001f��1�nd��T1�G\\u0001�}&�����L\\tYS�� �Ʋi�\\u0014��\\u0002��P�\\u0016v�\\u0016�R����g\\n\\u0001s�r7>W5���7\\u0012�㉶2X\\\\_�­�\\u0007\\u0015\\u0012#k�ٸ��jC�td̫\\u001b��r\\\\,��k\\u0013}F�ս�>C�K�ģ�\\u0002T�7��/�\\u0011\\u001aG\\u0011\\u000b\\u001e��\\\\\\\"-����ǜ������o\\ni�\\bl[>/�Y\\u0001�[��j�Yٜٙ݉֫TdJ��\\u001fh��C�̲��\\\\\\\"�������c��5~��\\u001f�v���gD�a��.\\u0010�\\fO�䴭0��e�&�/�\\u001f�=����k���L߳cυ\\u0014Ÿd\\u0014\\fO����I;~\\\\Y����\\u0018��:�:؍+���\\u001bq:����oֵ�k�tl]�բ�|�!l�3㷭t��j\\rü�9\\u0010+���<�}�\\u0012�ΰ��1�.9��N����i��VI�����\\\\\\\"�ΰ���\\u0004���[��'�X��R\\u0000�Y;\\u0017\\u0016��O\\nC�oi^ \\u000e��e\\bY��9�t6\\u001bQJ]c(G�Vk\\u0011k2\\u001d�7��J�7\\u0013�^^�K\\u000b�R0e�M+\\u001c��\\u0019\\u0019lOJ:LM�Z�\\u0000U\\u0000���\\u0011\\u001c��-\\u0000ʕ�Z��'�`��l\\u0017sC�\\u0002T�� ,N�U��H��\\u000b��[�U�z)H�/PUE\\\\P\\u0006�Z!���\\u0014\\b�Ml\\rŨt��ґ�\\rM�N��\\u0000���h�\\u001aR���\\u001a\\u0003eby\\u000f\\u001bZ�-A��T�VI*T�@\\u0012��P$H�EU\\u0000\\u000f +��œ3! �v՛�Tnk�\\u0011��H��쨹U&����}�\\u001bp>��ͼ+6Y���ʼѭ�ּ\\u0016;��B��\\u0014��1�^���n\\t\\u0007�P<�đ���� hM�ڽ�c󬹂m�\\u0001�@�i�@\\u001a��;W����PI�\\u0000�u�h\\n��Q K�t鹯9oo�����\\u0004�T��\\u0017\\u0003j`.�\\u0003���C��k�UtP� 렵�?\\u000f:y��P�@\\u000f�G\\u000b�\\u001e�I\\u001eNq\\u0002<��1WU�^��=�B�H�q�؊���\\u0011�B�E�5��C�<��,�sI}\\\\N����U�Kg�\\tC\\u001f\\u001f���*$\\u000f �p��\\u001cR�&FbWu�>�\\u000f�z���Eq�T<��{~[��U��i\\t��L\\u001adnB��㭼���\\u001c��x��`$�\\u0004�oR�j[�Q��bu��b\\fc!Ws�u���9L����x�6��o�T�8P\\\\�\\u0019\\u000b$�R��с��D��\\u000b��9��^��c�`za�\\u0004\\n&1��5��C��42�*�ﱖ@��}\\u0005��h�f8��Y�ә�\\u001at�{.,j��?���\\\\\\\"��OME��1\\u0015\\u0012b�SF��u����4���t�f�����\\u0010n��E��ՔF#�\\u0019\\u001e�\\u001aB�����TiY&Ia�ŝ���z�[\\u001b\\u001e��&\\u001a\\u001dFV.\\f8�l\\\\\\\"�����\\u0015��)a�\\u0010@!��|��S\\\\��.8�\\\\�\\u0013�\\u0015�A��s$\\u0001�v�8�F.\\u00017_\\u001a�V��k\\u0000ԯ\\u0003�ܮ��Q$�R�\\u0000J�QK1������Ӡ�n\\u001bO��\\u0001\\u001f(\\u0013e\\u0017C׭@n8��^C�Ί�uLlr�kO{~\\u0018�,5m�$�\\u0018~��xq��\\\\\\\"ĝ���ܿI\\u0018��q��\\b�U\\u001dZ�y�0;CJ}\\n��M�O�q��&L�/��n����\\t���Y�\\u000f�i�rz���̲^�4�o\\u0001K{Lv�'m��\\u001a6�7�$�-m��������\\u0000����`h\\u0002�E��=j\\rMεP׫.�\\u000b[��\\u000b�E�ZÍ���nt֡�y�`BGϰě�&�&�����%�n����H\\u00055*T�3�\\u001c��\\u001c'���\\u001f\\u0002h\\u000e��2��\\u000b��d��2��aʙ⿷�\\u000b�WR~\\u0017�?v���}�25��8��*�~\\rZ�6�1����\\u001e�S�I�!�\\u0012; &̠�QD���bd���� 2�O���}�*.�$k\\u0013q���Y������W���Տ�������\\\\\\\"�U�J�\\u000fX:��\\b�\\b\\u0006��D<i�{|����I�\\u000bc�]+�e\\u000eB\\u001e���W��ӃG`\\f�^e����\\u001e?B��\\u0015��_!OJ(�\\n\\u0003yZ�\\u0019Y����0�7�\\u00056�E��4�\\u001e;�#z��E���\\n�7\\\\\\\"��\\u000f(�|�Xq�:��OƲ]y��*�\\u0001����$�/\\u001bO��fI�\\u0016R��BG�T\\\\�W���\\u0005P\\u0013�P)4��ʼKqO�\\u001b|�Z��mN��cR�J�e��\\\\\\\"\\u0007u� ��kP]�e�I�Yl�C��\\u001d_6\\\\l2�ٽ�� S|�ۃ\\u000e0l\\u001c`��\\tz� �W���UJ^��rZ\\u001ch��|��\\u0012�\\\\\\\"\\u001a\\u0019_����T�X`>Ńd\\u0012Zu\\u0016��с�:�mKb͕�\\u0019ᕯ}\\u0018j��h�\\u0014D�n�qз@}Z}�ҳ�\\u0006�2{\\f��}���]��Au��\\u0000Co�J˻wi�pX��G&\\n��q\\u001b�m�k�BZy�;\\u0012\\u0015\\u000e�@��TD��\\u0014n<\\t�\\u0014\\u0000\\u0007�[j\\u0015�j'U:\\u001cf4�<�d�/����(S\\u001d�\\bY�m,:.�'q����\\u000frg$2-�\\u001d}Vڝ`���b�\\u0006��O�Sf��\\u0007�\\u000fKc;�L��ʪ�CS���\\u0006.&bM,�{@�h�_\\r��}��3\\\\\\\"�'��\\u0010b��$\\u00025;[���Iqg�\\u0018Uď��H¯�ƺ\\u001a��|��q�\\u0004�v��\\u0000G\\b@#�[h\\t���N�\\u0010VGQk�\\u001aa���\\u000f̫��]�\\\\\\\"��\\u0016��u\\u0015��m\\u0019�\\u0001�ߩ��5V\\\\����\\f\\u0011\\t\\u001e�I��R\\u001c(���l��~\\u0017���Ɵ&gV\\f�\\u001a\\u0005#�^Ⅻ�;%ׯ���4o��c�ae{��@�[���,��\\u001c�hnR5���c{�W��I�\\u001c��\\u0000`\\u0007[���0s�_����\\r�%x�\\u0019J��{R�!�d\\u0011ŋ�q�?ʎ�*,|fȋҪ>��Go����g�\\u0011\\u0013�\\r���ԓ&yW��+{�M�n\\u0006l��]�ى$���P9��mT�9j7\\u0014�\\u0005a\\u00161�������֍��k��r1�px�\\u000e�V$�\\u0005����u�\\u001bo�P�\\bTn(��MV�'�E�����\\u000fI���C{�7��h+d�0�\\u0017�ީ\\t�Z��-�y1:H�G������lH�\\u0005[�Mn9\\u000e���5 �\\b�ڮ\\\\\\\"��~F��\\u001a\\u001d<�Vd6��\\u001diq�\\u000eBo��i��/�j{nP\\u0000�\\u0000\\u001d�\\u001f����>\\u001bڮ\\u0003��-n���\\u0007&*�\\u0000����_��\\f/\\u0016A������4׊��arz�kcܸ_VP��OeR�\\u001d\\u001f�\\u001a���9F\\u0018���\\u0002�D]�:\\u0013f<�х�?���\\u0000o�\\u0004fR�q\\u0017e6������9$��P\\u001f��cŚ�@�~�]�B<Ƣ���0�4\\u000e/�t4�o۹�\\t�c����3�j(\\u0019�T�O\\u0014�X���}���\\\\�\\u0007R�\\u0013\\u000b�V/��UW<H��8\\u001eE��\\u0000��5�w��tʈ�t$��@\\r�d�zO��k�Й\\u001f��Q��i\\\\��Cpj�E!s���B<���Zbj��T\\b#ܽYAcC�֘aBdqN\\u0000�P��8B\\u0011oFG�d�G��\\u0006T�\\u0004�.7#��`\\u0018,�����\\u000e*[���ޔ\\u0012I$�h��-��'F�~\\\\\\\"��\\u0002O#u�P�(kU�(�kE޲CZ� 4]�A�f5�\\u0012�\\u0018w\\fÃ�6X��b^\\\\\\u0001��t'`�O�qf�#��\\u000b�At^\\u0007U\\\\\\\"�T�H�X�7\\u0017G\\u0005Xy\\u001a�;tO��Ľ��)(h�\\u001dWt5I���\\u0019��b���9��w\\u0006���-�\\u0017����i�`C�0��TC\\u0016!)\\u0011\\u0002nX\\u0013���\\u001d��\\u0000����5k�(ёe\\u000e|�'\\u0015�D�R����ץb�\\u001f���'a�jȻ7��MQ2\\u0013,X�q��X\\u0005b\\u0001��Yf�\\u001c`\\tRyiT�-��Rl\\u000e�v��\\u0010o{kD!GB�\\r4?\\u001a\\u0012Eb�\\u001b޳S$z6��Ƃ�@�v�\\u0012\\u0006���]x�o\\nȐ�n)HF�9�\\rF�P\\u0000��d�ɾ�ek�\\u0011��nl)�\\u0016\\\\\\\"\\u0007\\n�\\u0010�܏_:��%%�L\\f'uV�R\\\\��o�ӎ\\u001b�����ִ�\\u001d�\\u001f���\\u0001\\u0013e���~4�N��$F\\u0012�!�\\u0016����A���V�cO*�U��:U�\\u000e@\\u001b\\u000f���D0z��<lymn�of_�o��\\u0014�P�\\r��n*P\\u0004�?����^O�8;,B�js�fxa̔J�D\\n���o{Tv}��\\u0005W�C����:_�_࠱��\\u0002̏b䛊*t\\u0012̬��.W�-YO��,2,�DF�O]�εe��N��L����Z�R�m\\t\\u0000�H�w��?����+'��v/��\\u001bO8R\\n\\u000b\\u0011cj��+*�\\u0012V�X\\u001f��QY)�#�)��/��^���e�jt���J�r�֠��\\u0002�R\\u0018X��ƽ\\u0019��k��k�\\u000e�\\u0002�x���c�j\\u000b�4�\\\\\\\"\\u0018��6\\u0007]|�ٗ�\\u0004���\\u0018ե2�\\u0016$��\\u0013Z�\\u00183������TlL~����\\u0003D#�$&��Ὣ^�����6\\u001bH�0�:�\\u0000m?\\n�B�)���\\u0016��9B�e`�<��f\\u0012J�67?i�^\\bB>��\\u0014�Ĩ\\u001f�\\nY\\u001c\\u000eдȷX�dk�}�L��\\u0001!���pH�Qz\\n4U<x��@{��\\u00007J��e�\\u0000oݘv��RD��\\u000b��\\n�o�_C֛�\\u0010f�a�:|�\\u001c�&�=�>��\\u0006��pf���Ł�D�n\\u0007�\\u0003�Ƃ&��Ҷlܯd$\\u001cx\\u0010\\u0000n����iSN��� cb\\u0000r[�o�0t�id\\u0018��[���'��\\u0018\\u0018\\u000253I���ϩ�\\u0017\\u001d}Đ\\u00008��B�\\u0011$�Ǝ8�\\u001b\\u001b�O���\\u0016#�{'OQZ`*�'4,��\\u0001��S�px��\\\\\\\"\\b\\r���k;\\r�i\\u0018c\\u0002\\\\z�ֱ�c\\n\\u0016��\\n@RfU�\\u0013�i�ż���ב����Zcd\\u0018\\\\_T�*�`\\\\�;X��*�+�Z�X�WP�A\\u0007cZ�w4�Y�\\u0011�F�I�5\\u0015o��jk{����G\\\\\\\")���Y��A�4\\u00009���\\u0015��o�e\\u001f:��\\u0014��mM\\u0000\\\\\\\"�\\tP�\\u001fƪ��\\u0019b:\\u0006\\u00001\\u001ef�˘e��.�ҧ�ε͋�8\\u001dY�G�T�'�\\u001f|�g˒8�dT�\\u000e��:k�O\\u001aU��;�\\u0004J�2\\u001d.F����@�1Ԑt_��y�1\\\\�,�q\\u0007\\u001e-9\\u001b}D\\u0003o=*�\\u0013\\u001cvlr���F���0�Cs\\u0000�\\u0002ۗ�-k��\\u000by��s��d�e(K������\\u0017���$\\u0006�G\\u001f}C͛)h�Z>K����畟�{gh�\\u0000>5�E2��f\\u001b�\\\\\\u0007z���\\r���*��\\b\\u0015`*\\u0001W\\u0002��-^�^ڽ\\u0002�\\u0003Ԣ\\u0010V+p\\t\\u0003�\\u0003A�h��aq�QQa�{ڂ�6P�'�\\u000e�ZW���T�Ɗ�\\f�\\u0000.��H\\u0007���8��\\u0004q�T]��X\\u001e$0�\\u001b��ԣ�\\u0011\\\\l�0���تnZ��J�:Ծ��E�j�k�:T��\\u0001�k\\u0016��\\u0006�C�\\u0002.���\\u0014j���5Ԋ�E�0,�ր�@&�ڳO\\u001a�6*H���\\u0003SkiB��.>;�ߔi�;}�␧�&��t���(���>�\\u001c�̝�ʥ\\\\�p),�[�w5d���ުE�)=\\\\\\\"�+F��a�9�����O�;�>,��=�l_@|/��y�\\u0011�n�&T�\\u0003D�Ue �\\u000b٭��1�+�\\u000b�\\u0016�q�h��Bc�\\u001fSk�Vxз;�;�QS�2\\u0007��T^ϒ�\\u0011I$��~ۍ<�n\\f�t����Fˠ<|��ׂ�\\u001f�-Řo�i��ZL��g+\\u0012u\\u001b�v\\u0002��z۳4y�\\r+Ʃ�Ҡ둑�c���A�\\u0012k��XK?oxrP�5�\\r�\\u0006\\\\\\\"��hh\\\\\\\"8H�\\n�H'��[Έ���X\\u0016a\\u0011K����\\u0004\\u001bu����u�|�l�I9��[|b7G\\u001b�0�1�\\u000e>BL�+\\u001fh�t�����F��+\\u0015V8�(q\\u0019d0�^r\\u0014��@r�S��\\u001d�\\u000eL�w\\u001c-k���,^ώ�:,�Z2/�G\\u001c�_�\\u0000H\\u0018�m{k\\u0019y1us\\b�{Ws��\\u0018���\\u0010\\u0006�mp|-z*a���̨\\u000eܘ\\u0001�\\u0000�\\\\�,I��3+\\u0010�\\u00176�\\u001e4\\u0004�uaǏ�G&T\\u0010��̐e���)��V�\\u0011ȁ�I�NS��nO��4�a�ݫ\\u001au��\\u001dA\\u001a}�iAd�x�\\u001c����f#��v���a�dI�\\b�BX���/�:�AwN���q:���\\u0001{\\u0001��̚�ԓ�a=��h�孤��l�;��\\\\\\\"܀њ��1f\\u0016��wwf�\\u0019\\u00162�X��o�5�Nl2�*�c��\\u0015e l>5���5r�Mz��Qj�u8� �\\u0011�'�ԩA\\u0004����n\\t�\\u0000�JUN�R\\u001f����0@9\\u0000\\u0011qc�UV������n5v�\\u0000�����h��x��R�\\u0000I�ڙ��\\u0000Z�B�C��J\\u0002\\u001bu�t0���\\u0014�GZ��UR�\\u000en�7����\\u0000�\\u0006�����-/���y\\u0003'�\\u001aC�{�[f<\\u0011�F��\\u0003�<��\\r�\\ry�\\u001c�\\u0011��׋j�qs�W�V=\\u0016�wu��y�\\u0018+����6��{��\\\\\\\")��z�\\taYAt��{�O�ZIۂ\\u0000L�\\u001aa�q�X�\\u0016nH�T�ƺ;?\\u000f\\t�B:�w?��!�1e�\\u0012�\\u001cnT\\u001f�#�y5�\\b{��B��S�C]�<1F���\\u0007M�\\u001c��ٳ}O����4a�W\\u0013yp�#�e/'+\\u0017rǕ��\\u0004r��4��(q��\\u0001��\\u0007_�������{ع\\u0006��#�\\\\\\\"���,��\\u0011\\u000b\\u0001�)�4+V&A��\\u0016H�:\\u001eL\\n��b\\b���\\u001c��\\\\\\\"��d%㟐^�b�K���n�]�6I�5aXB.Ɖ��f�<�{j�\\n�\\u0014\\u0001\\u0014U�^(�\\u0000�B\\u000f\\u0005j��\\u0016�\\u0014H\\u001a%k\\u0018���J�,\\u0005!�^w<�4�\\u0017���'�9������\\u0004��������UT&J�*U\\u0012J�(�ɏ\\u001eGq�d�P\\u0019-�W`h\\u0001�e�ߥ�\\f���f{�\\u001d\\u0016��<k�/�q\\u0007JųD�X[�[J\\\\\\\"Aq�\\f���AHe..<�5��Ak\\u0011�Vf����_\\u001d�|h\\u0000�L\\\\�\\t6��ǭT>�]+ X���k�I�XiҐ\\u001as$ma�ڴ릔:��\\u001b��ɰ�\\u0006ڛ��x�����xT\\f\\u0005�Z�po�@\\u001a\\u0019\\b>\\u001f}I'�(̒8H�R��R���\\u0006%��ɺF:���+7#-�L�\\u0003�A���UV���\\u0001��ǟ<k\\u0010>�Z\\u0002t�X�mV�1㧽�ҝ\\u0000�R�lo�L��r\\u0018<���S��\\u0015��K'��xk����)G\\u001a�'[\\u001f#Av>�!�D��\\u0000�Nu?�lv?\\nk\\u0003�;s�\\u0016\\u001e�,��_�{|�zca��\\u0002qh���!�󤞩���\\u001ag$2A��ّ���ǡ�P\\u0018�R�,�\\u000b�@47\\u0003��������Ѣ��&�$U��\\u001f�_oY!\\u0001Ԩ*?0���R�/(\\u0013�\\u0007�.6U���\\u0001�\\u0017�ߨ�¨���4\\u0005\\u0002�GM���Ǩ�f�f%�onU%��y���`�fQ<�\\r�!;�Bs��s�E*4��;���\\u0000R��il\\u0018��H\\u000bm�+��c�Ȋ ��#�*8\\u0012B��,4���x�.;�rj$<��qq鿘������@>~\\u0006M�\\u0011\\f�����N�o�\\rۆL\\u00191d4L�֌�\\u0013pw\\u0014p˖$\\r�<�i���Z�l�\\u0012e��d+c����\\u000f���/8��y/��b��\\u0002���\\u0010����\\fݠ�1�\\u001fݒp]�U�қf��y�2�]%u�\\u0016��k�4\\u001fo�_d�A\\u0006�7�;}�JJ�\\u0000�\\u0003����!��5Թ���\\\\����F^H\\u000f��\\u0005g*G����\\u000f�4��}��ap�k2\\u000b0\\\\\\\"��:Ѹ�\\f���\\u0003_i�\\u0015[�k\\n�И��Bu��Q��ŏ�$�ozUoc[�r:�\\u001d�\\\\�� f%�P��m��\\u0013\\u0005����\\u0000I�)|z�\\u001d�2�z���^�~�Sd�&\\u0011��.���6\\n<����8l�-��{\\u001e$1�#��rI;��jϽg�I�8ܓV?ҟ�BA&\\u001d�7q�C\\u0011�$\\u001a(��:�x���@�\\u001e\\nE���֝��q\\u000b<�8Z��_�\\u001e\\u0014���J�\\u0019�#t�2\\u001a5B]Wu�\\u0000Sxծ\\u0007Mj��Y�n�W�\\\\\\u0003bi$�/Vi�z[��x�QU�o�[�֦�5a^ڙ�\\u0014\\u0010>5��oY�E���m��\\u0001~B�ޠ �{�=��Xߥz\\u000f��\\u0000z��R.���m�\\u0010\\u0014\\u0000��<E=\\u001e��|h�N\\u0012-�C�|\\r\\u0000s�*�/\\t\\u0019?���\\u001a�!�v��|�$��\\u0017�/�t��\\u000f�x��BI��\\u0011�\\u001b\\t2����]��#���\\u000b\\u000f�\\u000b�����\\u0018c���H�D\\u0016\\u0001��}J�ϕml�ƍGZi�/s��\\u0000����\\u001fs\\u0019��G�\\u001bF\\u0015���M\\u0004/���o�i73\\u0004屜�\\u001fC�H�Q\\u0019�H�F\\u001f�:��Z.�����淜=t9�<��;�S\\u0004�V;�kU\\u001aS�)�c\\u0011���2~tKG�_�s������K��\\u00069\\u001cB��\\u0000\\n\\u000f&F�46\\u0003K��\\\\�H\\u0005d�ɬ�\\u0015��RC早�}�r�H��h���\\u000f\\u001ad'�7\\u0018;%��R��\\u0000�\\u0017���\\u001a\\u0013��^$�U*�\\u0001�Vu�I��\\u0019*�\\u0001f_nV\\bl�p+:�����+���g�ڮT��xH\\u001b�\\f\\u000eաAH\\u00020dчZ�<��9��U���T\\u0000r6�+?y�\\u0005a��2d�O�~\\f\\u000e�~��\\u001aKԦ����\\b�N��)I���O`�L��JH�O�.���JX�\\u001cŉ�m\\u001d�;r�\\u0000U;��\\u0006 U~�\\u0005�XSh�l\\u0005K���\\b0)\\u00177:�~��\\u0004�Y���hh�2C�Q:؝5�C2BT���Y>S�\\u0003�\\n����8DP�`Y�1o\\u0016m�V\\u0014oyN��ט�\\u0010�z~G��Qk�ޚC\\u0012�bG���feʏ�BM�\\\\��\\u001a�\\r�U�<9x�6S#\\u0018��D�\\u0012����^���>l�ݑ�����É�9��x�\\u000f鉙��\\u0013c�ߙO lk�]������\\to0'\\u0007���a�\\u001b|\\u0005�\\u0007�'�Fu$��B�e*���k���\\u0000��\\u0011~f�ԁ�F\\u000fi��$fU%�\\u0002u��\\u0015�]�c3J��5S`~��\\u001a:5\\u0000\\u0004\\u001a�\\u0001�\\u0015�fn>\\u0014e�X���\\u0002ŉ>\\u0016\\u0015�\\u0015�k��J��x���~�-�\\u0003�4����X�Y\\u000b&1%\\u0002X�[[�\\u001a\\u0006���ϒT�R�\\u0012�J�\\u0001*T�@\\u0015d\\u0004�hz�ԛ�;����ʔ� 3�X�u\\u001b\\n�2\\u001bX}����\\u0017�^�]\\u001407?e^�HW \\u00186���D�K\\u0013pH\\u001ai�\\u0014��`�׽��0\\u0005\\u001aW&��:�&X�\\u0016��m{�;X�6�\\u0002/{\\u0002:\\n�K\\u0013pmaL\\n�,o�\\u0013o1�+ۨ�Q�\\u001a�;=�����Z�`��\\u0000RG\\r�:yPX=�n��\\u001e\\b\\\\G���J��ǝ\\u0017(@\\tS{nE\\u0017�-G���w���\\u0000�K\\u001f�T�<\\u000e�'U�\\u0011�\\u0014��.Ƞ3�\\u0001b:�[V&Q��ע[t��.H�f�+\\u001fyF��\\u000eJ\\rn~\\u0016��\\be��ŘZXQ��J\\r\\u0005����Kqh��\\u0016��z[kڈ�:5\\u001fZ��@e��m\\u001dBG#\\u00156�i��G\\f��\\u0000pv��̟\\u0019\\tc\\u0015��Z�㕏\\u001b\\r�\\u0001cN{�౉,\\t%��Hצ�O\\nJt\\u0006@�`Ց�T\\u0013LC\\f(\\u001ag\\n���v��`\\u001a�W\\u0018\\u0013+��b7\\u0010��46�w���Wr|5Țf�F\\u0000��\\u001d\\n��X0&��E��\\\\\\\"�n28�R֮K�\\n\\u0014�6��E��]{�݂\\u0015�\\u0010\\t\\u001aX�y�#��G�N�]y\\u000f\\u0013�\\u000bh+�G!�E�wSz�\\u001f\\u000fi����c��5�\\u0003,y\\u0016UWCuj$\\n\\u001f\\u0017\\u0016<t���{�|h��Y�E�J�k0\\u0005h�R\\u0003T\\u0015�\\u0016�%l\\u0005� =���X9x��ϒb\\t\\\\\\\"\\u001fo�\\u000fQ\\u0002��J�3f�\\u00133�:K�n�?\\u001a&\\u0005k:�O{�ds�bC����\\u0011������R�s䝉��7U\\u0014nV\\u0004E�\\u0013��6�-�ŗ\\u001aC\\u001c�n�*�o�\\u001a�ڙ3��cZ㐒�0�\\u0001\\u0004�T\\u0003¬��\\u0000���+`~�f�/��r<����&�cM2L\\\\\\\":���h,)�v3,�!7p\\u0000�����\\u0003��z�s�Et�j�`�\\u0004��\\u0015b81����il=��/>��U��QH�V\\u0001\\u0012�L\\\\����cUǂY�\\u000f�\\u0011�;\\u001b\\u0006}\\u0000\\u0014n.,r2�.Bh\\u0003Snx��\\u0003�\\u001erI�B���'b���.\\u0002�@�<�\\u001a\\u0001vv4>v���7mv�\\u001b�E��x-�\\u0013���@�)����E�µ��Ć�܇�ҡS3k7谇�\\u0010��\\u001f\\u001f�����I�۟:5{~:\\u000b\\u0011���M�J�:�I0x\\u0014\\r\\u0006�ij����SHdUK���������/�xh\\u0000iqč�\\u001e$�dq\\u001f�\\u0003�Q��O�\\b@\\r\\u0004�����\\b�i���Be}k�V�Z\\b���x��������~\\u0006�O�J��BTx���mH�R}tnc#V~G\\u0013�\\\\i$\\u0012#:�x� �7�X��y@\\u00129�dCu ��-�T�J\\ty�|=�1\\\\��\\\\\\\"۝\\r\\u0011��s@S\\u001c�R,ˣ\\nQR���쿂���y��re~\\u0019.\\n��\\u000bR~�\\u001c��2_~\\u001b}���\\u0010�T>���\\u0000D?��t��\\u0014ߗ%��_�z�9�l�OX����f\\u0012\\u0005Χ{P�,�R]5�P.�u�am�m\\u0000\\u00167Ү�)ˉ>6�Z\\fwa�}#��&�g�M\\u001d����&��Ys�\\u0003�ކٳ&l�l\\\\\\\"\\u0004%��=M\\u000e��;�:k}6���lM��\\u0017ҳx���\\u001b\\u0003m\\u000e�WUh��V��ٷ,e���?q�QH\\u0001u���4SbE4D\\u0006��*T��@��D\\u0019�PZ�?�<<�x�/#H�,mk����-Z(%���@�I$\\u000f�)*h�,h�K\\u0015$�\\u0005��(��\\r�#�����\\u001b}���,+��C�jhjmm+�U�&��(�Z�\\u0001�j�\\u0012����8\\u0014���>������\\u0001:���\\nfE��\\u000el��C0�Wҿ\\u0001UU�=\\f*T�VI�.Sc��g�_�)�R�����v\\\\\\\"���\\u0017)��MP�K�EK��3�\\u0007K\\u001d�\\u001d6�a�&@�n��b\\u0006�\\u0005\\u001e\\u0016�J{�y���\\u001f@��u>\\u001f\\nӸ��\\u0006\\b���m�<>4���q6k�7�'�{\\u0011�Fe�G:c\\u0010,\\u001aD$y^���\\u00165鹍R�\\u0000I�5D�M��{��!ݛ���nٛ*����\\u00028�\\u0017�)\\r��_�m6X\\u0001]����4 �,��$\\n\\u0001\\f\\u000b��\\rhZd\\u0019�\\b��Ȇ�\\u001c�l-Lռu�=�?o\\u00121��r\\u000f�֘�t�E\\u0019w,y$�͊��ɳo�Z�r\\\\�T�ڒ����<�a��¾t���ŉ�MR\\u0013,\\u0005Z���\\b�\\n�\\u0015��Z�h\\t�6�ʥ�dZ��\\r�8���޵\\u000fs�}�-\\r\\u001e��\\u0003pB��z_��2�Н\\u000fʙ3�^�\\u0015\\u000e�Z��&���VAf\\u0004�64�\\u0006\\u000b]&\\u00181�č����\\\\�\\u0011��$��\\u001f�Z職§�芡vmjr��ֽ\\u0006�(�N����\\u0003�z��\\u0011�5��=����\\u0014\\u0001V5Bj�$�<��Q��<\\r\\u0019c\\u0019��8\\u0010�tҵ:&��\\u001f�&,�`�>])��\\u000e;I\\u0019������\\u00101vwt�\\u001aS\\u0017\\u0012�\\u000b\\\\\\r\\u0006��I2gl��f\\u0016-�t\\u0003J��<�d��w7b|j��PCd�L��!wޯ^���|H\\u001fm1\\u000b}�\\u0017'A^�2�(�\\u0000o�'��,�t�x������ҕ��\\u001eL�sٌd�n�t\\\\\\\"���4��E0��a�\\u001f�� g�X�v�O��-��~\\u0014�'�dP\\b\\u0005��\\u0013\\\\��+_\\u001a\\u001a[\\t\\u000f��\\u0004�r/���\\u000b$Fd���ڔ]����Aag~��YK#�\\u0010>�|�y�\\u0000p��b\\u0012f\\f-����h���\\u0017r����Q�\\u0015�Ʀ�M�Ҳ����Eذ�\\u001a��\\u000e�\\u0001C���\\u0003���j?-�a\\u001f��$bL2\\u0013��\\\\\\\"ߍhׇ\\u0004�ֲ�K�\\u0003Zn�\\u0011�D�$����i �i%&6\\u000b\\\\\\\"��\\u0007_\\u0011K'��Q�Ê�z�b\\r\\u000e�\\u0000�;�$�\\u0011*������'\\u00038%�S�lb턬}\\u0016A࠵�+������\\u0003��\\u001e(#⠟M��H����$�i\\u001b�=~�Гw��(�V��`>���xm\\u0019�5�3����;�5��b��>�v$R/� �\\u0010Xkm�\\u0000\\u001a�?>B-;ݿ���\\u0000�j��d=�H�\\u0007�1m~u6�vն:�WE\\u0003��ƅ\\u0001��OҤ���\\b:�� t&�G�܁�=M\\u0014�\\u0007\\u001eu\\r���J�d�I\\t\\u0011�9\\u001a����LEj�J�8u�t5���\\u001b������9\\u0000�#\\u00007$\\u0010)��Ml&�P�c�\\u0003�D2o�}>\\u0006���v#�RW���\\t�\\u001a�\\u0004A�׆�j�k\\u00029\\u0006FQ�%M���}����9�^\\u0012���\\u0000p^�rU_\\u001e�Q�)P\\u0005g6�Ƶ�,��\\u000bZ�\\b\\u001f\\u001dj�����\\u0001'6-v\\u0003s��\\u0010G�qQe�����w�N�\\u0019��Z|��\\u0004\\u001b\\\\\\\"2\\u0001$���L{|P�\\u0013�7R47��S�\\u0000|w��s� WPB�����>5�кmJ��t�4X�e<F�h/j�$\\u0010��ю��Y�h�A\\u0000\\u000b�-��ش�,lF���5�;�'X����m[�*b�*S���^��(c�a��)�\\u0001�Vi�\\u0010\\u0006֤Y�\\u0000���͒$�N�/�Z�kz�ơK��xZ��\\u000e>�\\u0006�\\n��Q��Gࠂ�X\\u000bu\\u0015�߻���\\u001e0\\u000fљ�\\u0007�\\u0001J�{�^lB)B�\\u00047�\\u0011r>f���~���\\u0016\\u001b�6\\u0014H\\u0004�q�{�5�[U=D��V\\u0002��z\\u0005!�\\n��\\u0005X\\n\\u0000�E\\\\\\n�\\n�\\n\\u0000�5�j\\r�;\\rI��Z �\\u0001;���6�o̅\\u0014��C�\\b�\\u0000M���Ɔ�\\u0014S�\\u0002��\\t���]p��\\\\\\\"�$?�E)︑ıK\\u0012\\u0004\\u0017*�@\\u001b�6��\\\\\\\"hOL;\\u0014�>�\\u001d�>�d\\u0016�=~�\\u0005#�ChԹ�PO�O�\\u0017o�\\u001d�&u�!\\u001ccS�\\u0007s��\\u0001j9I�r�h�\\u001b���|�5*~��\\u001aӐ\\u0002�@4\\u001f²f��W6�\\u0012|\\u0005b��ֱ\\u001bۭl��\\u001e#Q�du�o�\\u00183�u\\u001b\\u000b�GMm[J-�Zům7�LG���\\u001a|j܁�5�\\r^�\\u0005�o�U��\\u0004�Y�\\u001dk�k\\u001a\\u0000ט\\u0002��57�R|��\\u0010�4��o���T�3c�\\\\\\\"5�!�w֗֕��m�\\t$�M�ܚ�*U�J+\\u0004�fY[�v��jѐ\\t'jOA����ě\\u0018M\\u0000�\\u0001#�W_�Rx����H�=�Jɧ�[���(�ɛ\\f%��x�\\u001c�ȏ�+w�\\f� ��e\\u0004�m\\t[܃Q�~\\n��]�\\u0018��(k/0�r\\r��\\u0000#Z�D����k��$1�bM��F��+3A#�\\\\SŐ��>\\u0006����'\\u0012�J�n|?�'����+��~�!\\\\\\\"�2:1��w�g7�0�d����C\\u0003�>U�t�H%F��t`��k\\u000b׭�\\u001bH!Ȍ��]%���i�\\u0003�#&\\u0000���a\\u001c��K)�\\u001d\\u0018U\\u001e4\\u0011�H㝷#q�\\\\\\\"\\u0016�\\u0018��\\u0001Ѝ��PٱJ�r\\u0011VH�\\u001f���O�)HĳK$R�\\u0010<�\\u001d/Hg�Y�X+�Y:[Ιfw\\u001cq�\\\\\\\"ٽ&�[b\\u0005f��=�\\u0012�[_�ƵZ\\u0019����ᗑ�$SN\\u001aH\\\\/�jVۓ։����1P�'G�8�r�4�\\u0013��i\\u0018\\u0002d��>\\u0016���+1{��\\u000e2���\\u001aK�r���ǐX{���\\f��c�m@V$�z����#���\\u0012\\u0014\\u0015B\\t<t\\u001f\\n\\u000b.2f,���O\\u001a�B�<P��;V�k�\\u001c��G���\\u000f\\u000fg\\u0019�t[�̭�4LдVN'���X���/��]\\u0005���k{\\u000f\\nt�$�\\u0002���\\n��9\\u00150*H\\\\\\\"�UI\\n\\t:\\u0001�\\u0011�\\u0014�Aqk�Ad܅Q֐\\f�p,8�\\u001dc!��Xk������'��2�o�\\u0000�)�m���\\u0013\\u0002I\\u001a��t�X�\\u0000��������\\u0005\\u0000\\u0010H��yW��ǧ�P\\\\�v�V���ڀ(n\\u0018Ֆ�`�C��*�)��Qm��\\u0005����^\\u001d�\\u0002=�ۏ�^�AК���z\\u0006��\\u0004\\u001e=js#Khw5��*\\u0000I�S@��\\\\�Z�:��r\\u0005Zװ?*��\\u0015%���Ɓ\\u001c�P�L����l�l����\\u0011��33�2�\\u0015c\\u0006���s塤�g�ʎ�\\u001b�g\\n~zU����v�+'\\u001e[�=ǇK*��\\u001d��{.\\u0019�i�BF��BI�7\\u001b�T�\\u0011p��˄Ď\\u0000���N\\t�\\u0001�W]��up��\\u0000/��ۓ��FØ���mb\\u0018j<�\\u001b�EʌLo�*��?wɒf�\\u0018��:-;Ā\\b\\nۥ\\u001f���Բ�������9�Ҳ�/�^/o\\n8\\u000b�C�e&�ƌu�ܺW-��!YJ�m'\\u001b\\u0000zV&7���96��\\u001b�R�Iҳo�q-\\u0011eq�*lk\\u0016�\\u0010̝��K\\u001b�a\\u0019\\u000eN�\\u000b}տ�OJ���\\u0002E��ј�\\\\�t\\r:�D�jG�\\u0010Ư.@\\f@����.�����m�֞e�9옦�\\u001d��Q\\u0014-1ʜ:����@+������QX[\\u001b�XF�a�d��N\\\\w�\\r�5��C!I\\u0005�t#{Qx��{~<�R��G�:m���R\\u0012F�y;kmwެS�z��\\u001b\\u0013\\ne�\\u0000eC\\r��u�ccJ%�5:\\u0010u���J�\\r�&\\u0016;qE�Xu��ƛ�8\\\\)�^�\\\\\\\"� D�4\\u0007��{Z�TK�\\u001fѠ\\u0000�nj��\\u001c�c[����t\\u001a�x�\\u0016\\r�k\\u000b�\\u000b���\\u0007��@����Z��T\\u0006�:�\\u0004�\\u000e��YI��ve�d��K\\u001e�췍\\u0018�\\u0011T�\\u001b�)*@��A$���f��kw#�vR\\u0014(\\u0007C�&R\\u0015�\\u001c�'FFrX�b��\\u0004.�yי1H��AYdC�U�\\u001bjm~�ک��4�[\\u0018��\\\\\\\"\\r���V\\u0007cs}�L����]���VV���_ιj���2��IF��\\u0005�B�9\\u0003ԣB5\\u0006�^�bH\\\\\\\"ɊB.\\u0011�[�4k��\\u0017\\u0004X��y\\u0007��?���XL�U;�mk$tqgd�r7��=@Sk��hN��f�\\bd�\\u0000uX��Z��`�N$��r\\u001c]O�\\u001aP�鑲P��5\\u001e\\u001a�ur�u6��֍�V8�\\u000b�T�L�%J�(\\u0002T�\\u000b\\u0005\\u0017&�C5��\\u0001�J�[�޽�\\tR�J\\u0000��w�\\u0007`,\\u000e��J\\u0000��8�\\u001do�[�|i\\\\\\\"�3\\u0005Qv&�\\u000f\\u001a���4Vf��j�\\u0003�UWQXن����zv\\u0004��~U�q\\r`׶���z�/�ެ��)b\\\\/˥f\\n�F�n\\u0003NK\\u0011r\\u000fۭx\\u000f�`���Ҁ\\u0005ɼq;m�6�_�\\r�2?�(�\\u0000�)gr���\\b�1\\u0003O�����#\\\\����\\u0003�SYv�]\\u000e�ܯ\\f�����\\u001b3α4\\u00194�p(\\u0007Ρeͽ07˞��?�܉�r2δ�&rצ�\\u00030և\\\\\\\"���k;U�ρ&���g�r\\u001au�!�Zq�'�\\u0000\\u001aRlgI�\\u00164\\u0010{AT\\u000bjH\\u0014Ggｲ0pZe�b�GoJ\\u0011{�X�)��$�aCh�\\u00005�o��V��+=����{Lq<�.&(\\u000b\\u0005W\\u0017k\\r�Ƹ~��\\u0013��,��aE[q$\\u0012X�N���Y%�K���X�+�\\u0017�\\u0018���+�]�lR.��\\u0015P+E\\u0015#,\\u0000��QkN:^�\\u0012=�pk\\u0001�j�J@kjE�����;�c��\\u0010I�\\u0000/Zz5\\u0015I�Iah�]XX�\\u001a\\u0000�2�i��!$�\\u0006��\\u000e\\u001fp\\u0018�rs͡�k�Tnh\\u0018�vO�y\\\\\\\"����'�\\u0011O;a��l��\\u0000\\u0017�D�\\u0015a\\u0013��^�<9\\r\\u000b\\u000b*��;XV>�Fm\\u0005��C��º���2.q:�����ֹV�`b$ԩ�E\\t�\\u0019\\u000f\\u000e\\u001f���#�$�Rh:.iY��u�ʄ�@J�`���$m}�5�-���0��ϐJ��/�\\u0002�����/�d��(�c�wq4��M��\\u0005m�x�\\u0010����P�8��(\\u0019���\\u0015��U��ۭx�|�h\\u000foj����K�\\u0003�U&�j��R\\u0019��*W�i\\u0001[^��{o\\n��\\u0011I:\\u0001HfR8[�t��˵��W��dk��*��PCd�R�1\\u0012�J�\\u0001*T�@\\u0012����U�@\\u0006�T`���mX�\\t&-k�v���\\u0016\\u0011����M-Ԛ\\\\\\\"H�\\\\\\\"��\\rq��A6҄�i\\u001f\\u0016P�=;q�J�\\u000f]�\\u0006�\\u0002���߯����,o{X_]+e�\\f�E\\u0003�\\\\\\u0000t�F\\b��H\\u0016!x��@o^��q`oT\\bL��'���Lh�D�6bF�G�޶��$,��\\u0018rV��k��U�;\\u001fP>�΄�*�\\u0006E��\\u001e�\\u0000k�ր\\u0005Ι^\\u0003�\\u0003Ԥ}��,���v���EG0��з�[P���2�mWcX�)~���\\u001e\\b���B�ױ2�r\\u0006����W�dYA^�^is^��\\u0000c�/����\\u000b\\u000f�ҐSN�/�\\\\\\\"\\u0007s��\\u0006Ԯ��\\u0012�R�Jb%J�(\\u0003ll�q���\\u0007u;V�ݲH#��z��}�\\u0015JP�HI&�Rw5*T�\\u0004�R�\\u0000\\u000f�m\\b�\\u0000P���y3aU:�_�@�\\u001d\\u0015ԫ\\u000b�O{\\u001feH=���5�_S�M�*�\\u0011.N�\\u001b{JW�j!Z��OH�ڴ\\u0006�mY��W\\u0012B�z\\u0006\\u0007�_>��v$�\\u0002o��s�d�?��O\\u0018��'F����+��+��Nl�^���ת�3T �*�l-��©\\u0017�AW`t\\\\\\\"�:0>\\u001eUD�\\t9\\u0000�ӭ�?�x\\u000f�l\\u0017��u���%\\u0016�{\\r�@:^�\\u0012�E`}W�$o�I�\\u001b�f�@\\u0001�10Ʀ�\\u0000�n���y\\u001f�Q3]��\\u0004�H��qM\\u0002���{�G�\\\\\\\"���<�\\\\\\\"^�Y����Z\\u001f6q,C�>�\\u0019z׸�(�젬�Z��e���J\\u000b\\u0006�ǝ\\u0004��m\\u0000���U$~\\u0014ە)�����\\u0002���2�e��\\u0017]\\u000b�)�yU�Ԕoʬ���W\\r@���D^⅌�^ϙ\\u000e:s��:\\u000e��(�\\bwXԳ\\u0010��䞂���\\f\\u0019y�O\\u0011*�|7�3��ه��B6A��\\u0007Z֑�\\r�Ŋa��=ǁ\\u001a�\\u001f���o�)������\\rR���\\td�R�1\\u0012�Sŕ�\\b?a�*P\\u0003��\\u0000\\u0010A���\\u0014�# ϒ�\\u0000q.n\\u0006���P\\u0001�g\\u0015VG��ټ�H\\u001f�-�hz��+�*\\u0018\\u0016�Aֳ�UM��+�q9'�30iU��lI��kP�v\\u0004\\u000f��\\u0016�D[�)��$�;\\u0001�b*�4sD��N.=\\u0004'\\u000f�RQ ��+h��Qn\\u0017z�\\u0002� ��)�90=�`\\u0016D�mq��3G\\t��Po�T!tX��9�42\\u0010.@�<M\\u001d��2�?��6\\u0003�h�ד��$�8�����\\u001e4d}�\\b++\\u001d:\\u001e&�����ޖ��(-�-��u����\\n�~�\\u0010��\\u0000\\u001a颒\\t�B\\u001b�u�f����A�����L\\u001c�}�N!����6�����H\\u0007�]\\n�\\u001b�]��ڗ�\\u000e#����A\\\\\\\"�Åw�|O�R4O�@�T�\\u0004���q��ub\\u0016g\\u0000��J\\rH\\u0006�;\\u0005BN֯1�rr��t�ר�jL\\u000e�o�\\u001d�9nҳ��N��T��F\\u001c��\\u0018�E:7!��\\u0014���p�V@9lE��[��\\f\\u0001�0ā�\\u0003jX\\u001c\\u0005bwX�\\r\\u0019\\u0007��\\u0012�US�\\u001f;Ur��M�G��:7+\\u001by�\\u0007���\\u001cx2\\u001dE��V�h��H\\u0007��Uoj�N\\u0005jV�,�\\u0019\\f��\\u0018\\u0001�T�_SXd�g�x��:\\u0010�\\u0010j3z�]��U�f��i��7���?���\\u0000\\u001a�\\u0000\\u0006���I\\\\\\\"7�X��lO�\\u0017�\\u0000-*\\u001bF�����\\u0000\\u00004\\u0002¥S���*��$�uKmL�����*�\\u000f%��\\u0000�S�w����\\u0000���\\u0002�b����(P��T�ӸN8ː�N�A�?�mBԩ@\\u0012�J�\\u0000f+\\u000fl\\u000e���hl(�/�l>TYҳz��ڽ\\u0002�\\u0015`��@*�T\\u0003Ƭ\\u0005 =QW\\u0015�E\\u0000YkA^\\\\\\\"Հ֐\\u0017B���KZ�M\\u0005j��\\u0016�Pu�\\rP�P]�\\u000fs\\u0006[n�q�\\u0000w�(�J��\\u0015\\u001dK�V�XX�\\r48\\u0010���\\u0000v���i�2��\\\\�\\u0019\\u0013�N�ݹ\\u0002Q�\\u000b�cOW0�bENWP��zv&�$�\\u0010\\t�½/u;���\\u0000\\u001a\\u0002.�\\u0003:��і�K}&�\\u0012�$#r\\u0000�5�e��#C�kr?�|���Tt=+�w\\u0000\\u001d<*YFO\\u0011 �xV\\u0006\\\\\\\"v�ݖ��ˈ�~�`���HP\\f#6Ҽ���Z+�Z�(�B\\fD@ս�-ַX�\\u001b_�MV�ޘ\\u001c�xN\\u0019��ʧ�\\n\\u0006���Vβ�x�\\rn��J][��FOVJ�*S\\u0011+|(�L�V6\\u0016$���*��\\u00182�\\u0011@\\u000e����\\u0012�T�\\u0018\\u0001��M��˷���e��yFA�\\r�^���þH�#��\\u0011��kX��\\\\\\\"IcXͤ:r:����P�1�Z���\\n�@����s\\u0014���?\\u0003V\\\\̩�yy�ʩ^>\\u0002���*\\u0013.'*ڬ�\\r�\\u0003�P�Ra+��\\u001eW��ZԠ$=��gG\\u0016;�Y� �`y�-�h1ݥ�H$�t\\u0001$\\u001fR\\u001b�F�u�{Y\\u001f�\\u001c� \\u001b�/[,<sd����[_U���D%��Cn��qP�y\\u0001p\\u000fU7*A򡲤�3�b\\u0018�\\u0019�⦵\\u0019\\u0002\\bQX\\t�>,�_Kj��\\rS5��C�\\u0004#�\\u0018��\\u0015;�V�\\u0015�0��t�uw,\\b#c��\\u001b�\\f������n>tD��Fo\\u001f�W�\\u0000�A�2`�!|��K�Ͳ�xя\\u0012\\u0004aˌ�sb>�V���T�5��Wdc�:m�4>^BdE�B�\\u000fU���V�\\u0016�׀X)���U��5���\\u0015�t\\u0000��[M>t�\\u001aGi\\u0010��\\\\\\\"�\\u001f���J�r��*2���Q�p�V�@B��F��\\u0001'���2\\u0017\\u001c�!k|).A9\\t\\u0014��Ȕ'�\\na���\\u0000N�ST�\\u0012�}�\\b�\\u0012F]��>��d\\u0017*z\\n{� �$��\\u0000��-B)����nEד�q\\u001d\\u00054�� \\u0004���\\u001f-*����i�!�\\u0014��\\u0005-�'z�6��p���I>'Z�\\u001c���\\u001a��'QL\\u0007�5\\u0007~�\\r\\u0001\\u0007v��&R��j(Ց\\\\\\u0006R\\u0019[b(\\u0011���\\b��kյ�\\u001d(\\u0003�\\u000eƽ\\u001dj���\\u0000�^�\\u0014\\u0001/��߭M�ֽ���]���\\u0003 ��|*܀��x�|��m,(\\u0003��\\u0001�V^C\\u0000cf\\b���\\u000b�ƙ��I�\\u0004\\u001d<�wn�ǏߎIU\\u001f�'�\\u00104*�5N�4'\\u0010�'\\u0005�\\u0006���o\\r\\r�\\u001a�Z�\\u0003��s'�[\\ni\\u0012h���T8> \\u001e���ws͇\\u001f\\u0019b�\\u0018�\\u001f�y[��M˅�^ŜI`�},v+��}׷{\\u001e��\\u0004�\\u0003�=o�n�-J���h�y�����n8�ǎ��n��k��o,�Z�m\\u0001Yw\\\\i2ФD\\\\\\u001b��\\b\\u0015�e��\\u0000\\u0012�t*�\\u000f����n��\\u0000Z�����s�����`�s�W�\\u0007�\\u0004o�UO�׭dd*\\u0005`���}A��\\u0002E\\u0018&�҉\\u0016T�r\\rfP�S_*�,<�����պW#����\\u001e��*���N���ƚ�I\\u0001���X��\\u0006�J��\\u0003\\u0013\\u0017���\\u0016sKREȉ��-q���\\u0000һ:��T�t�ե\\f�&lY��\\u000bI�4�BW��xX_���U�o]\\rY\\u001a&x�\\u0001p7��\\u0017,c�@��1'�U�\\u001er\\\\�1�3Zį\\u001b\\\\\\\")Uwе��7c[W�\\u0016\\u0018Ǒ\\u00063qg\\u0001��\\u000b\\u001f��%&�e2#�\\u0007�\\u00027\\u0015\\\\/eb\\u0001-����5��a��OO���:�\\u00001T��!+�q]I7�cD\\fE�����z\\u0006\\u0006\\u0002N\\u0007�:��Dd��\\u0014$\\u0013�Z��mSkl:�p���\\u0006�\\u001e�mk��H�U@6\\u0000jz�y���\\u001b�I����\\u0013��ew\\b@E�\\u0012lIm���f�B�\\u0010�0\\u0003{�ډ�&L7kj���\\u001aP�\\u000b��5�u�տx�ݽbf\\b\\u001d�9x]�z���KI\\u0017���\\u0000ir\\u0000���\\u000b\\u00006$r�\\n�/��9D�(}o#\\u0016��:֏����0\\f�+\\\\\\u0007��/��VfIf�\\u0012�\\n�pP��Ա��XuU�,uJ&r`������\\u0005,ʆ�f\\\\\\\"~�\\u0005�\\u0000�M����0�#�F�zu�3������\\u001b|+�d%�,����l<|5�\\u0019�Z�o����E�(�7P\\u0000��c��\\u0005��\\rhݶ\\u0002�����S���T�\\t���tϑeJ��2��\\u001e��\\u001d�\\u001do���LM\\u0019\\u0000�\\u001e���]Q��+�z\\u0018T�R�\\nK��l�@/DԠ\\n�\\n�\\u0007z�J�\\u0001*T�@\\u0012�J�\\u0000F\\u0007�\\u00002/�\\u0003O�;\\u000e��\\u0002T���j\\b��=�Mh�6�����UW�-\\f�o�����j��IQkx׈�[u�lT\\u001bz��dX��q�w�;r;�^ɡ\\u0005W�VnK\\u000b맀�\\u0005�ѽ(�$��v����u6Q�އ�\\u000eZUS�W�{s\\u0001\\u001b�\\u0000�~\\u0015��.�\\r\\f���\\u001aŦAY4㠬�\\r^v���9�X<�E��\\\\\\\"����\\u001c�f�~GsX���\\u0003\\u0002\\u0005��AW�m\\u001cv֘�#P��kU-����s��zi\\t�T�R��R�J\\u0000�\\\\\\\"C2\\b��,\\u0002�:��E�\\t_��H\\u0016\\u0015�b�\\\\�Y��u���N\\u0005M��\\u0014Z�Q^\\u0001V\\u0015\\u0003.\\u0005�d�Ր�\\u0016�\\u0001\\u0019\\bץz�\\u001a�j*�\\\\\\\"�5SV$q,M�ԓX��z�e��o��\\u0007�@\\u0019w\\u001cc���#�jlY��I���\\u001aUg�bV5\\u001a\\u000b\\u000f�i�Z�Ē8���W�s�g<X��\\\\\\\"\\u0014x�V\\u0007K��+6�\\u000fl�c\\f`�UX��mz|�Y�s�&���ǹ��\\fe�YL�\\u001cc\\u0004r?*\\fd�`\\u0017]F��U�E\\u001eu\\u0016L��~f��2\\n�����5�Z\\u0010V\\u0014\\u001c��&�\\u000e����\\u0000o��~�/\\u0013��Q67�\\u001b���\\u001b�Ր�\\b\\u001d5�\\b��5�\\u000fƜ\\b��MN���.?Ƈ�6\\u0011��\\u0011�*Flw�kU��7ߥ\\u000f\\u0004�U�4 ؊��#<�-W'J�?e!����J���\\u0001\\u000e��ʓ��\\u001b.�\\u0000\\u001a*i8!o��K�$��j��\\u0015�*T�VI*T�@\\u0012�J�\\u0001*T�@\\u0012�J�\\u0000�\\u001f�H:�\\u001a|���\\u0014w�:�W��yR�י\\u0016+�e$+\\u0001k\\u000b�(�����,��E�\\u001ai)��m�AUwF\\u0001l�ou��z�׹� ���a\\u0016Ll�獼Mj��G\\u001eB�\\u0015�j5%�Ot�\\u001c}G�\\n�\\r����\\f�ZM�-K̡_N�kll�AŴ\\u001d:��^I\\\\�e`c�\\u0013ߒ\\u0010�k�\\u001e��Ƃ�7�\\u001cSW��zr�\\ru��\\u000eK1c��?m'o\\u0006�$�I7'RMyR�@�ݚF)\\\\\\\"\\u0013p�q\\u0007��&��ޕ�gPҧ� \\u0011�\\u001f�i�>�\\u000fR����.O��T��6fG�\\u0016�[h�ΐ���{�.z/�|�z�+B\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�j�q\\u000f�1m\\u0002�¸��;tĒ8դT��2\\u001d5\\u001aiz�\\r\\u000fF��NM��{��*��kU\\u001a\\u001d\\u000f\\u0004�}-����\\\\\\u000ftV�˚%\\u0004\\u0000�_�t\\u0015���D\\u0007Ƹ��Q��r�[�\\u001fO\\u0002-�*����99\\n.\\u0015��娣\\u0002�K\\u001dZ��k8@@\\u0013r5�Ʈ�A��\\b(^4\\u000b\\u0000��\\u001e��j���K�p�c�Y�@�G�6�\\u000f8ϟZ\\u001b9�\\u0018���d\\u001c�k8>��M�J+D8ل#�^<�b�\\b�0�ۅ�\\u0000}U�0h]�E\\u0000�o�l(��I\\u0002p\\u001cP\\u0005���x��\\u0007�X\\u0012u��:�s\\u001e���E��_�9\\u000b\\u0001��U&�8�k�z�]����\\u001aדĈE��|i�&��\\u0000!X���<[S�(�U�6�yW3˓���Ք�@Ք�\\u0003`j��@ՃP\\u0001\\b�\\u0017���_s(����㹦2N�F��(���ݝ�bI�֔Y�lV�J��$�R�\\u0000J�*P\\u0004�W�\\u0019f<cR�on�\\u001a*\\u001c\\u001fCr`�\\u0003���N�lM�\\u0005R��E��B5�\\u0014�ߔ�\\u0018�6s�� ���7X�JӰ]J\\r�]I+��7�J;\\u0018�G$ �o�����%\\u0015��xo��`,-�Q��\\\\\\\"�\\\\�\\u0004�=��\\u0016�g��[ƴ%/��k�\\\\Z���Iz����S\\u0019R-����j�^��g�$m\\fG(�9]͇/\\u0003\\\\�{Tn�$��h����,k����~�uۭ��O�8q�\\u001d��\\u0017T�t<N�ڽQɂ���\\b\\tSu$\\u001f\\u0011�X�)\\u001621\\u0007�cZ��'�\\u0005�ַ˗\\u0016x�WIF��}�lR�\\bf\\u001b\\u0012>\\u0006��SsU�4��\\u0001V_�zDɇ︴`|ν)&\\u0016�}@ljS\\t#H���+ OI\\\\\\\"�\\\\r��A�\\u0012}#�D�\\u0000�c �����\\u0011���0B�C��[�\\u0019h���Tŏ�\\nH\\u0006��M\\u0000L\\frP�\\u001e���\\u001b_ƽǆh�d���!'c�O�R\\u00101�n$\\u000b��\\rU���5�C�,����g���\\r�NV`\\r��^��A��\\u001b�M1���I�mT����\\u000b�\\\\\\\"����\\u0006�2�R�1\\u0012�J�\\u0001*T�@\\u0012�J�\\u0001*T�@\\r!P���\\u0015�[�k\\b�\\\\\\\"`\\u00006#�҈\\f\\rfY-�]ET\\u0011VSҀ-j�\\u0015�Aր%�ڮ��\\u0004u�\\u0014�\\u0000]EYF��H�.H\\u0003��+H���H\\r\\u0002չF\\u0018+\\u0011�j�\\n�HƄ\\u001b����@�=ȯ�\\u001b�:\\u000e��W�k��*��[7K��[�\\u0006�KA��x�ş%ƒY������\\u001dx�!U��Ku\\u001etG�?�T_�?��_�?���j��Hxn\\u000e�\\b^5�2����a&\\u0014\\u001c��x����H�����6d\\u001dT�>�E�\\u0000�OmcO����>Hm\\u0016f~1�E�?�=_h��1d\\n�\\u000bqb��Z��\\u00123\\u001f�\\\\\\\"\\u000f�\\u0016���^v����t=>T�\\u001b�\\u0003�ǜd�H$uҮ�7�W\\u0011�|G�[����A�VP?-�a��z�?C�[0�j𩿕-��8�Cy\\u0018E(є�#ʵ��`Ƽ�P�J\\t5\\u001c^�T�!E�:j��%��',|Sw��\\u001b/��нþ4�c��Q\\u001d\\u000b��\\u001f�Já6\\f\\t�\\u0004V���_d{��ԝ�J�7ڴ �+�-�~ʖ>\\u0014\\u0001�h1� \\u0010���5�[u���x�*\\u0018\\u000eD\\u0005��𨽚�*d\\u0002����jt�\\u001ar\\u001fʇ�T.�\\u001d��j\\u0014��$�V\\u0017.A76�\\u0000Է+�իB1�҇��\\u0015j�V֟�I�f�2���:Z°\\u0000�\\u0000�B�\\u0010;\\u000e ��^\\t�/Y�\\u001d\\u00056�\\u0013��#B��pa�j���4�R\\u00016�u���2\\\\�tQ���u\\u0013\\u0004\\u0005�\\u0004q�Б�\\u0016��(a��2q#���5���<b6P\\u00007��s�Q\\u0002XB�}&�͵�\\u0007\\u000bN�kY\\u0017�'K\\u000f�*��\\u0006��޽\\f�n��ʼ�+�8�\\u000e����L�\\u0000�#�\\u0000�o�V�7�\\r������$�kȢ,�8������I=\\u0000��n�O�����{x�\\u000312�\\t\\n_�c�:\\\\y�|X� F��\\u0005�\\u000eU\\u001e%hiqg�Y�d\\u001b]��U��\\u0000�a�(�9\\f��\\u0000���y�8��~�*��9x9���W\\u0011��.O�Q�ڻ���YA�\\u0000Mt߷��2r\\u0014\\u000erL�{\\r\\u0015-��jP98\\u001c���H\\u0017.7�\\tӒ�\\u0013�+�����|�F����W)CP9�T�R�\\u0012�J�\\u0001)�j��\\u0005\\u000e��u�4ok��AN�>�\\u00009��uV7�[J]����B}[3�y\\n`\\u001c�\\u0010+\\u0010Π�A\\\\\\\"��#h\\u0018\\u001f�\\u0015�T�\\u0007F_kmS�P=GN��9sR��@\\u000e��ŏC c���wa�\\u0000�\\u001d���\\u0000*[R�-,�,�#Z�nm�V�J\\u0000\\u0013%�Ma����rO���H=.�^�7/\\nX�\\u0000ap)�k�8�s�( \\u000e\\u0017���k|c�\\fr�#�\\u0019���R:�\\u0017+pf��\\u0006���a\\u001c,/jG��K�\\u001b\\\\�V��Y\\u001f�V\\\\\\\"$�@Б��BI�3�%\\u0016U�\\u0000��+���Q\\u000e�q��絖���-��\\u0006�V3�5R��^��X���ĩ�˨ުmzǛI��\\u001d�5��\\u0019$2�W\\u0011Ԛ�#i#�'�\\u0000���\\u0018O���,�\\u0015:\\u0013kV���d���\\u0006��\\u0000�C�4W�&��)h�i��\\f��f��7\\u001e&7��#jQ���(�[���\\u0000�i�p��H�U�7\\u001c��\\u0004�U���*�n'o�uU�}�:��\\u0014�p8$\\u0003aו/���,�CrF\\u0017\\u0006�u0ye\\b8[@o���e�)1J\\u0005��#ʪ��M |2\\u0003;���7\\u0000��T��ǐ�#��W\\\\\\\"�O[Ֆ��~��������\\u0001l��5��3\\u001eG4�&1��\\u0010��PP�%�d�YO y\\u0013���<���'&3�<���7 �Փ\\u0015�@~|\\u0001����e�?qG�<�ώETBy���6�o�\\u001f\\u0017rS0��\\u0006�?�j<g�~k' �QkQ��sr�6>݁%�saSe��iܧ�e�e�\\u001aXt=E\\t�\\u0018�!��$S�Hk[�����\\u0006\\u0013�]\\u0011\\u0003\\u0013i\\r��4VO{�P��I\\u0011�a�\\u0001���ݜ�R��?i�i\\u001d��<�\\\\\\\"��k�;V=��4��o��\\u000f��C�l�h���q����������+��\\u001a\\u0017)X��Ћ,`s*\\u0006��f/s�k>�U��Y�\\u001e\\u0014�q���\\b�\\u0002̲-Å\\u001e���t��c\\u001a�I�mn/�Z���D\\t�@�H@k^O���Z\\u000f/-g\\u0000\\u0018�L4��O_�\\u001a��ږ�|��\\u0012S\\r�x�\\u000b\\rl\\u0005�zP}�g��j\\u0001�h�T�\\u0016��\\u0003��K{���\\u0014����j\\u000f@�m�mk��$\\u0003X`r�:_��\\u0010F��8l��\\r*�B66���� pVa��5�\\u0000��\\u0000֪�S�v���B�yq5��U�uY���:?Zؽ}\\u0004�*T�\\r\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�Uf�Ao���V\\u0010�M�lI���\\u0003.�ܵ\\u0011d\\u001dvW=|���\\u0012�����`�1�����G�\\u001e�\\u0002p�\\u001d�)�\\u0004U��D��lARI�$�u ��Y�'k\\u0013� #�\\u001f��se$?��}��S\\u0010�7�\\u0000�����b�\\u0015��+<�\\u0016I��U6��^E/�pE���-\\u0005\\u001f:�\\u0011T�B��UL�|j!�.Qrk6�e^�Bע\\u0005%XU\\n����.\\u0010��\\f2�b��\\u0000\\n\\u0002L�5���\\u0000V�\\u001f'q\\u001b}�����ȥXxӀ�f\\u0005�{R��\\u001eyW�q���PH�Q&u+I1�r�6E� �T\\n��R~\\u0000�\\u0000�zQ��R\\u0007�\\u0004W�\\u0001�h�|��]z�Er\\u0001\\u001c��m�GG�s�N$�\\u0003b���\\u0006��F�\\u001d\\u0012�V\\u0007Z��3<\\u0013�?Ω\\u001fx΍�\\u0016\\u000e\\u0018ܫ\\r>\\u0002�T�c䎟J�XW2{�]���\\u000f�\\u0007w�#�\\u00008��_�O�\\tGb��b+���\\u000ez-�#�� ��\\u0000�Ezq�\\u0011`���b�\\u001cXJ:sX�#DI\\u001a�sM���\\r\\u001dW��޲��w\\t���m�P\\u0017�\\tGO\\f��;\\u001e��l4҄�\\u000b\\u0002�e���y�|+�\\u0019�ci��5Yg�k{�4�v�I�\\u001c}C��J�*�%J�(\\u0001�mu\\n�U�o+Q�k���82�`�\\u001b\\u00026ҷ|܈Ť��������xyU�\\u001dh\\u0011�\\u0019Ԇ\\u0007��\\u001f�/�R|o�P�{��@�~mO�P\\u0015��\\u0019�1\\u0016���*@^)�&%z�\\r\\u0012���)\\u001f\\rh:��$;��x7�U9��I��P�k^��6�\\u0000'az8��\\t9�tP>���L5�\\u0002��D/\\u0001,�;����j��%�\\u001fm{LD�T�A\\\\\\\"�F��I�U\\u001aVM�\\u0016;�\\u0018�۷\\u0017\\u0003�\\nI��\\u000b���ʫ\\u0018\\\\\\\";�M�~��.6��P\\t\\u0016�ʽX�0�\\u0005\\u0003R\\u0007�$��k�%\\u000fQ�4jѭ��³�\\u0012F�-��4���x��|*�Œ�\\u0000܆7e'p\\t\\u0015M�\\u0006EW\\u0019�%T\\\\��;�\\u000b�\\r�;��P`�9���M�\\u0015;[z_��I;�9�>�\\\\\\\"��\\u0016�0��\\u000f\\u0001B\\u0001*��)$u��r�\\u0016�rj:�[/�H�\\u000e����։\\u0006��\\u0017\\u001b���G\\u0015�g\\u0003�\\\\���i�\\u0017�PFZ?S�O�*\\u001ei\\u001c\\u0010�\\u000e�6ތ��Cu�\\u000e'}/X�\\u0002�3A�\\u001d�R\\u0001{�\\u001e�\\u001b���\\u001d�tWn\\n�ﶕe\\u0013�m\\u0014�?K\\u0013Ȋ�\\u0015XW�\\r:�\\u001al\\u0002U�\\u000fV�?7J��뵼/UY\\u0007\\u0012�cUgbN�\\u001aC+R�j12����;zM\\u0002=ē��G'����\\u001alr��\\u0000�W�\\u0014����,F�\\u001a�R9\\u001b��e6��&�Ξ9�=�p��KoBԡ(\\u0006�R�Jb%J�(\\u0002T�R�%J�(\\u0002T�ZE\\u0004Ӓ!B�n\\u0014P\\u0006u+i0��^RBȾ$V4\\u0001*T�\\\\\\\"�Ȝ\\u0013\\fO \\u001b�\\u0004�\\u0006���x�\\u001e)X\\u0011�I,�x\\u0010i�?�q�/�\\u001b���q\\u0000���oH�\\u0006r��y\\u0000�\\u0000A���+ofO�\\u001b�R�\\u001d\\u001a~��稑A7�^�#K��V.NLy8�\\u0007�ن��\\r( ��\\u0002\\b�\\u001d\\ryM \\t��\\u0016���k�*Ґ��zGK���� nm\\u001ak�\\u0003a�J\\u001e+7�.\\u0018�z��\\u000e(\\u0016�\\u0001\\u0004��ƀ\\f�b\\r[�x\\u001f����M�%�`ddh�e$\\u0011n��\\u0000�T�U\\u001c�@9-���[���/zn�3�9�4i\\u0005��\\r�U�f\\u0016'AҼTg`�\\u000b1�\\rMhqrT\\u001618\\u0003Rx��e�F������ĵ�;oDr�bwV⃑k\\u0000(�9}`j��ɪx5\\u0006���i�\\u001e.���k�կ��ń��j��R��!�W����p��oҎ\\f%\\u001egOͽ��W3BW���'�I��\\u0000��eh�(',ƥY�>�+�\\u0015Zb%J�(\\u0002T�R�\\f��I�eg؀\\u0007�X�w)\\f�����T-�7���\\u0019CW������PF����\\u0010��O\\t\\u000f�\\\\\\\"T!�HQ+\\u0006\\u0001�蠀\\u000f�B\\u0001\\u001e[���\\u001c��}V@\\b�k��TNdg\\\\\\\"U�M�\\u001b�ֱ�\\u0010�'��^�\\r(mH�`�A6#��\\u0016By(\\u0006�ծ��ݲ_j>En\\t�΋�\\u0011$\\u0017��۟* `e\\u0000\\u0000��6\\u001aT�4)HT��6�\\u0017\\\\\\\";���\\u0012\\u0018x\\u001b�rr\\u0012I��\\u001fi���cB<\\u0013����x�m[Gۻ��$�\\u001eFF�X\\u0003cR����+)�4L�<\\u0014F��\\u000b�]#�^ܲ\\u0000\\u0004�/��̛}�\\u001b�����y\\u0001��'𨯐!��7\\u0015>\\u0004[ʡ�e��W'�\\b�,��I$��]h�c�X�(ᒚ!Q����\\b�{sH@TbG@/W8��\\u001b��\\u0000\\u001e&�b\\u000b���Yk�h��[�����听�\\b�5�2>;\\u0015u+ⶱ�4�r���C@�\\u0012M<��b5C��۷�\\u0000�b�\\u0019�\\u0000؂�����R��1&��k\\u001c�E��\\u0015����RI�٧\\u0001\\u0019�'��p�K9���\\u001bY@���_P<����^cw:�\\\\\\\"�\\u0001\\u0000\\u000b���R9dw*�5�0!�\\u0006�kjO�{M\\b�\\u001eEPC\\u000bU�Da����aR�\\r�la\\u0005��v\\u0000iB;��]�csU�@\\u0012�J�\\u0001*W���\\u0015Af;\\u0001��?I��\\u0000��\\u0000��\\u0000ʥJ�\\u0001*T�@\\u0012�J�\\u0001*�$���\\u001f:�J\\u0000�3%S��Q�󤺩�q�R��\\u001d��!�\\u000e��\\u001ag@-j�'! NM�\\u001f�|hx\\u0007wȌK\\u0004<�$��\\u000b\\\\|�\\u001c�\\u001e���h\\u001c��\\u0017��^�/#�\\u0003��\\\\�\\u001c�z\\r�ʿ��\\u0000�\\u000f�?�H�~t���v㽅y6\\u000ed\\t�h^4��0��X\\u0016L�I$7��\\u001f3z/\\u000b�I��pd�l/��(*�Ӂ\\u001d\\u0014\\u001d�\\r�f1��\\r>�z:<��\\u0017��Ǒ\\u0006�\\u000e\\r�^�q�\\u0004T���3��~.9X �\\u001a\\u0007/�C\\u001d�\\u001c{��[ �u�ܝɩN\\u0003�؝�.|�Y&k��\\u0003@\\u0007�\\u0017���\\u001e+e�H\\u0014zX\\u001do�5\\u0004�\\u0019mmzW���1�f����ڲ�3����\\u0011��T����\\u000e���ʹy�\\u001e|q$\\u000fv��X��\\u000f�\\u001e\\\\\\\"��L�Y\\u0019�N\\n��\\n~�k}@6�\\b�\\u001a��O-����2\\u0003/��..\\u000fB<oF`\\u001fk\\u0019�{qS`<F��.�\\u000ffM��3���\\u0018u �A�ܡ%\\f�,3#+��m���\\n*H�T�q^E(H�\\u001d-���%��ސ�P��ћ0��ʼ�#!��\\u0011V�w��66�^�\\u0017�+��Z�CjP\\u0012\\u0007�%ʃ� �@2�PC\\u0005\\u0006���K�\\u0019�Z@80\\f.5�ƅ��O\\u001b�\\\\YH��\\u0006��n!\\u0013���]qȺkf��kE˕$N���\\u001b���`�\\u0016@��\\n��\\u000f��\\u00181r%\\u001f�B�ǧ�J��\\u0004�sT���\\f�ڐG�k��!�\\u0006��A���#,΄)ԁT��ʱ#���o�7���Bn4*�0ȳ\\ryt7�ӑ�y�q��\\\\�\\u001e��J�\\u000f�4���rD�\\u0000\\\\\\u0016�]+�����\\u001e;@��x\\u0012\\u0018X��)P\\f_<2�cN���!\\u001c���҄\\\\�� I�ty!*\\u0014�\\u000eZm͇�>4^nZeX\\u0004�\\u0005�7��&���=#r:\\u001a����,�d��\\u0018r\\u001a��[�V�\\u001f%(װ�ʽ�d����E��u^7�h`��F*������q��ٻ�\\u000b\\u0005:o֯W�\\t�����n@�\\u0015\\u0010��/�\\u001eH�wk��y�\\u001e+$*�B�$\\u001f��#ʣ`�\\u0000KB�\\u001eUE%t\\u00150��\\u000f�9��@\\u0007Zk������4��I�ZU���)a\\r\\\\\\\"\\u0007��;�U´�H$v\\u001c\\u0018\\u0014Qkq�XՑ�3�\\r���\\u000b��\\u0019�2�%5$('�*8��*��\\u0011�5���(�zR�y\\t���B�,�LCHn@��C��\\u0015N����N���Q����4՚���ܣ��1I\\u0014�Y˂�\\b�\\u0000u#��\\u001e$v\\r\\f�����T&���;�\\t`1�����>E��}˷.\\u0013\\u0016F2C{\\u0006\\u001a�}��ִ�=��\\u0010��0C\\\\�Q#m�H�x��I\\u000fbzܩ���lYH��:/9\\u0017�;\\u000e�:\\u0013�\\u0012x\\n>Y��@IRt�J\\u0004�oI\\u0004y�p\\u0019�d��1#U��Z\\u0017��\\t>\\u0015\\u0015@��\\u0004�\\u0006��\\tY��i!��\\t6m\\r�Vѣ\\u0007\\f��.��+(ث\\u0006j٦R\\b�Qj��8к�d3\\u00069��LRN� ���S��}8���k�]D���\\u0000� �YQbN�1<J�\\u0016\\u0017��Ӹ�raD�ZF�\\u0001m�i>s�|@;�g�\\u001f0E\\tc\\u0010�H��V\\\\\\\"�O*���7�A�\\u0000�ե�q���x\\u0004E\\u001e��-��5���\\u0011 �0o�Z��A�\\\\�q\\u0014�\\u001a\\u001b�����^���q^����d\\u0003�+i\\n��\\u0017�Z��K\\u0019���\\u0006D&YI>��\\u0003m���\\u0018@\\u001fK\\u0003m\\u000f#Xv��l|nV*܉؝\\u000f��a�<X����u?:Nd�\\u001b�jT�TI*W���J��\\u0015bo�4`\\u000b�]��[\\n�)��\\u0010\\u001b\\u0002��\\u0001m/�B���\\u001a\\u0011Vy]śZ��M��#+���R\\\\���G\\u0011��^\\f��CxiYpK�4DXYs'8�wO�\\u0003J�~���'�6���{H�v���\\u00130s~�Z�ll�{{�|��B׵eS�\\u0000����\\u0005�\\u001a�\\u0000/�7���Kt,E��>�*��lO-G��hf\\u001b\\u0012>u\\t's�t����mZ�r���2\\u0002\\u0002��5��6�F��Ji$\\\\�ULhw�T�!k��fg\\nJ܁��zS\\u001cVx�Uqb/�ν�O�\\u0014\\u0017y9�V�r\\b�\\u0015��\\r��5�JM��\\u0007\\u001d�%�\\u0015�\\\\\\\"�յ�I���(��c\\u0017�M��N�5�J\\u0002N����o~��6��+YB���\\u0019\\u0010<�\\u0015Ԑ�l4��i&$Y�\\u001c%��r\\\\\\\"����\\u0000�p_���˩��\\u001d�V���\\u001a�*�:4Z{d�{\\\\\\n]���v��C���h\\u0019׸�t�\\u0013F\\u000e��\\u0000~�\\u001bCJ��\\r��\\u0007�:\\u0018\\\\\\\"a!\\u001dJ��|�<�򴯹�:\\u000f\\nΥZP\\u00128�\\u0013.<r\\\\\\u0004\\u0001n�ԃDhi\\\\\\\"ed\\\\\\\"�Y\\u000f\\u001d��G�[G�e]\\u001dC\\u000f-\\rh�s۩̡��(L�m\\u0003��\\u000e��O�(��\\u0016���΄ʔ��\\u0000�\\u001e4^\\u001a�\\u001du����*T�PnJ�*P\\u0004�R�\\u0000J�*P\\u0004��BF�\\u0005�\\u0016Ol\\u0006Uqq{�\\u0014\\u0005i\\u0006D��Z#bE���r'�ثc��\\u000f�3\\u0002x\\u0001�\\u000e�W�\\u001f��\\u0010�^�-����I\\u000eJǐG\\u0017�Zֳt�k�\\f��\\u0014\\u000fM�*�9X3j\\f�\\u0005\\u0006�����t��iR7T��Q� u��\\n),ͯ�)��C#���\\u000e��Ν)�������\\u001a�ۍ�\\r�;�Q��Vܐj\\u000b_���|j�)�\\f�|\\u0018u>t\\u0000��A\\u0014\\u0019�bP�P1\\u0003k�h%B���Y?��f\\u001a��\\u0014�����1\\u0011b:�\\u0016���+��h��\\u001e�MX\\n�\\u001aT�PfaB4ҼLw./�_S[\\u0001z�V\\b.���-��+e\\u0015 YA�g��2\\u0016�G\\u001fKQ\\u0011�ը\\u0014H�98O�\\u001f�+�\\u0011�{�|I���Om��\\u0006���W޿�Y1�,�5A�J�\\u0003aZbv��;,/3�F�9X}�NX�\\f\\\\Is���`q��\\u0000i\\u0014�\\u0011�N1�,l�=*m��bH�5�%��OH\\u001a�\\u0007�\\u0010\\u0017�~�\\u0014�o���\\u0018\\\\\\u00156`t���,�\\u001d�\\u0013ڒP�ܨ���\\u0003a}V�\\u0018ۊ�e!����4\\u0017x�\\\\\\\"ŖBtu*�e���r(����q\\u0002�d���^��0\\u001c�)��S��\\u001c(�<y\\b��P\\u0018�H'��\\u0014�&\\u0007�Yq��\\u0012���TI�D�\\u0000��zɖ�\\\\I\\u0011X�5;�h|��Ck�\\u001d�@\\u0004ԬVrT\\u0012\\u0006��H�c\\u0010��ol��Jb)R�J\\u0000�*T�\\tR�J\\u0000�*T�\\tE���uǡN���\\u0000�a\\u0004-4�5���\\u0001M�5D\\n�ʺ\\n��0UQ{׌zt�/U-Y\\u0014f��>�,|WJ\\u001d�p���<\\b�TXz��R�[�\\u0010����2���\\\\I��\\\\\\\"-}Kt��5�yz|�qF\\u000b� ��~�Ec��Bܕ.�\\u0019�\\\\\\\"�5���g�i\\\\\\\"�\\u000b\\u0019���\\u0005PK\\u0013�@��C\\u001c\\r� )\\u0011��;���V\\\\O���0��2��r�`�B��u\\u0004�\\u0003k߯�\\u000bA�\\u0010��\\u0017���\\u0003,#�\\u0000-\\u000e�ϝs��\\u001eX��\\u0005s!��.�+\\n�Ǜ��\\fI1�N�8 \\u0006&ڵ�8\\u0018x�gHǺ9յ�0\\u001cd��o�8��|�Y!cmw\\u001f*�\\u0013x����3�%Ð�\\u0001@��z��� \\u0000\\u0016\\u0002�t���&�0J�*U�J���[�\\u001f\\n�q��P\\u0011v6�)A\\u0005�˒�H��\\u0001��=�c\\b\\u0007\\u0014]\\u0014\\n�\\u0011=�\\\\\\\"�]~�|Mo$�G�GƔ�\\u0005}�\\u0012c\\u001b�z�\\u0011c�k\\u000fh���ܻ���\\u0012\\u0007�C�6^Q���֜@��:�\\u0006���\\r!7q��\\fblpx�֤��Kk�hC.�\\u0010t\\\\\\\"�dv\\u001c�#\\u001c`\\u001e=�of\\u001eZ�[l��\\u0002���ؙ8䉢d�R4�F��Y$�R�\\u0000J�*P\\u0004�R�\\u001co,�\\u001cc����\\u00007��\\u001c��6�Eb��OE���p�\\u0010�(?�2�\\u0013��\\u0000\\u001a'\\u000e\\u001c|,t������ms�\\u001a)V\\\\\\\"ҫ�K\\u0011ĝ��\\u0003Y��j�\\b�f`�\\r��\\u001f3^���B���-B�Σa#\\u0001���\\u0005c,�!� \\u0004շ\\nLl�6G�P؏���\\u0017\\u001d\\\\�iԚd������\\u0017!\\u0019�T�Oȍ�Q��.\\u0004d_p\\u001f�*kf�x\\u0015m;0Yq���K\\u0001��\\nh���ʜPn��\\n�<Xr\\u0012�\\u001a��Ɵ/M\\u0006ߦ���gr�(�Q\\u0012�R���\\u0007M9R\\tʒT�R��R�RV�\\u0019o�k@\\u0016�\\\\\\\"��0⯦���\\\\\\\"���l\\b�\\u001f\\u0018���TZ�@k�̋NĀ\\u0000D@\\u0002�����Ջ�[@E��m^E\\u0001>���t���-`u\\u001fQ��8\\u0006�\\u001a �'����\\u0005��ŗ�M\\u0005���P1@�N r:Yz��tjذ�ver\\u0005�\\u001b��J���6Ǎ�Q�!\\b�k�@�w� {\\u0012n�k�{\\n\\u0003�w���q��h�6\\u0014\\u0012eN��f7�\\u001f\\nu��M�w�\\u0016L�u7\\u0005V��A�\\u0013M*Ļ��k���.�8�m>Tǲc*�� �oLb�ө�tD�,m\\u0000�\\u0005�@\\u0001E������Rh�ȸ�\\u0011�4���\\u0002��\\b?5jՑ]\\n7�\\u0016֊Y�&�NpOg\\\\�8��c��u\\nuf6\\u0002�l\\u0007�F\\u0010N\\n�\\u0017F:s\\u0014\\u001c!!�H�_��D�M���?�UZ���_rw�)�.�,\\u0018e�L{����% )㵷'�{v$8RO2�D<\\u0001���[S����aI,:�\\u0002�)&>sD�%\\u0002h�m�)ٯ���s.�:�Y�xOՋ���9VTԮ��z6|�X�(�\\u0004���1��E-�)\\u001e0)\\u0017��~��\\u0012�t��5��z���}����l\\\\{&#����odd{`�`�@���O=+�\\u0015�\\u001bh��Z}4A\\u0000T�@�\\u001d+����nGmthg��\\u0019�\\u0012\\u0010z\\u000f\\u001a�V0�GB�\\u0014��gw\\t�s�8�Ʊ�TlI\\u001b޵ƒ[\\u0004�Rvn����1/x_u8�0R��z���3C�\\u0006;74$�o+\\u0013Z-����j���\\u0014\\u001c�V��մ\\u0005��\\u001f�J/n5�UK���i\\u0007��Rx�\\u001f\\n&�S�T�s6ۖl�,\\u00175��@�\\u0000R\\u0002|F��X�T��N�`�\\u000f�%~�\\u0016X\\u001e-w_�\\u0014yj�5u��$��uJ\\\\\\\"X\\u0001�4�� ��kj�[B\\u001ah�*T�\\u0011\\u0006�ժ*}$YǏ�++���Z��͕M�T���L�i�\\u0004�\\u001e\\\\4,�>\\u001et׳f�Lb9ۏ\\r����\\u001c�<���6\\rbAa��VDq�?���\\\\�sR�\\u0007M`�\\u0001�0,t ��H6�\\u001b�\\u0018ҳ&�\\u0007�\\r��(<,xQ� \\u0010�*����h\\u000fƉ���\\u0003�\\\\�H�'�k-p͞\\r&\\n����\\u0001r�\\u001a]/���#��O����^�|���(��É:u޼��R\\u0003NU�6\\u0004\\u001eZ\\u000f1N��D�\\u001eU�r=��t���1�`��\\u0000x�樘�\\u0016$\\n�Y�Rx�0�Й�N$���8��\\u0017c}��T�-\\u0001��L�����M���-�Ce`�:�V濛KZ�c�Ĥ��c\\u00071`�J�����-��+lNƭY�\\bCR����$��[U�*�%J�(\\u0002T\\u0000�`.OAR�\\u000e��DI������S�\\u0007�4ґ7\\u0002\\u001fnO�o��v޻2\\u000fSo\\u001aȢ0 �f��\\u0000���z����Ԯ�^ً:٣PǪ\\u000b\\u0011�R��ϑ�v���<>��\\u0014�Z\\u001a�\\u0017����e5�\\u0016Q�9�QX}��\\u0002Y��\\u0000G�?\\u001f\\ns\\u0012�G���\\u0018�@�|��gQ;x0���\\u0019G��s�9����n\\u0017�v� \\nH\\u000f�\\u0004��b|\\u0007­ꌳ\\u0003���!�;�\\u0003-�c]?�\\u0007�\\u0000�J�nE\\u0001cp�kiHs�\\u000e<�������T^����\\u0005�R�AD�p�e�k�1\\u000f��\\u0000������·�k��\\u0000\\u0001�ꊠ*��4\\u0000l*mh�Ґ?�|/��\\u0000��\\u0014�x�����\\u0018���R\\u0017J\\f�h��3J�\\u001b�Ɲ?��m�n�\\u0004\\u0001\\u001d��-�\\u0004צ9\\u0000�F\\u0003ă]�G\\u001c\\u0011\\u0004�B\\\\\\\"쫥y\\\\\\\"��'F����\\u001f\\u000fPo���J\\u0001�;��[�\\u0018Sr�I:���bD��\\u0003����-r(��ܔ� B�PM�||�Y^��\\u0011E�ߪF�͢D�\\u0016>~\\u0015V\\u0013O\\u000f��U\\u0012M\\n7Z������v�\\u001fLJ\\u0014�\\u001e,N�\\u001a\\t%�Y�n\\\\ͣ\\u0017�\\u0015\\u0015-��z�UCY��\\u0000��w\\bW\\u001b&XP�P�7�\\u0000�\\u0019\\u0016,�\\u0011\\u001e\\u0019\\u001c�\\u0015���\\u001e�CfN<\\u000f\\u001f�\\u0016��JU\\u0010��8`|�L��,��τ�\\u0000�\\b'�U��a3\\u0006[\\u0006\\nV���*״O>l�\\u001c��\\u0016�A\\u0017��G�\\f|(��\\u000fi�y�#��\\u0002�_Sl)r{��\\\\\\\"�&��1\\u001c�ms�U\\u0011�`�91�\\n�2\\u001b2�B�r݊�\\u000e5[\\u000b��֢pq�$�G&��.z�M�\\r�hK�&g7l�,F�c��\\u0017���Q=��a�\\fe�r\\u001e96x�\\u0000*�w:�'���=�\\n]՝\\u0016UO���J\\u000fK�8�Y-��ơ\\\\\\\"k_\\u001fRT||i+8�-%�{�;$ؠ�\\u000b{�\\rͬ��\\u0014��̉�\\u0005��\\u0007�\\u0015�N�9�B-ň��ND�\\u0014�R�1\\u0012�J�\\u0001*T�@\\u0012�\\u0014m,�\\u0012}N@\\u001f:�\\u001f�\\u0017�\\u0019��ҿƄ�@\\u0019��1��Z4\\u00128#�?�\\\\t+�\\u0013ݻ�m��I򈌸�D�U�E\\u0002�ńʱ�eX��t\\u001b\\u0011q\\\\�\\u000e2���!双�\\u0018\\u0014�\\u0000��\\u0000u�t���j=\\u0013�\\u0019\\u0015{�wQ\\u001e4\\u001e�\\u000em�HlH�q�\\u0000k�!>���\\u001d�_�6�0@�(�\\b�]O��&<��>ZHQ�\\u0014��ۭ5Gid�ƻ \\\\�3� \\u0000�F�H��\\rC��>���\\u000b��`\\u001aq��B��BJ�L�A��\\u0003S���)��T�\\u0017\\u0003J#�`?t*%on\\u001dO�z��Qó��\\u0017���2T9Ӑ\\u001b�j��)6T\\u000b\\u00166se\\u0017�%\\u0006+\\u0017��\\u0000:g��$׆4\\u0016\\r���/��ۚ�>3\\t\\u001du�[�Σ�*�\\u0004\\\\\\\"���c�$�op�\\u0015E�~}M\\u001f3c┄�NZ$c��\\nϲd��S,|&Ǹ0x\\u0011�\\u000b\\u001cR�K�9�)���'�k'��A�BA�\\u0011\\f����+�\\\\\\\"��\\u0017ߍ������Ea�\\u0014C���>d�7��H��S@��B\\t��b/I�Q&��.HP�\\u0000[�eVw�oU�Z\\u0012�%J��\\u001e\\u0006\\u0011(������\\r)\\u0003�\\u001aY~�e���\\u001b\\u000e\\u001cQ\\u0010H��'o��D��\\\\-�]��QY��&���\\u001a��8���\\u0018�Plw\\u0015(��8���F��4%Y\\u0004�R�\\u0000J�*P\\u0004�R�\\u0000J�*P\\u0004�^\\\\x״\\u0001*T�}���+�0�\\u001aƇ���쒖4��.͗ \\u0005��\\\\\\\"�'_���\\u0012(#<�<wf��,X�6FC\\u0001\\u001al:��+��̗�d�\\u000e��ҽ+.V�p���ʶ�F��b�Ȅ�\\u0003��\\u0000\\n\\u000b\\u0012\\u000fv�\\u0005��7���ǄH\\u0015\\u0005��C`��ͦ��Vk1�6��\\rh\\u0001[�m�?�yR�lf\\u0019�`Y�]C\\\\\\\"��\\u000e�\\u0003��R���\\r�\\\\\\\"��\\u001d�[}*\\u0014\\u001f���)����R�\\u0007��\\u001c�W@=k��:|떮݅�r��\\u000fc:E\\u0002���\\u001f��\\u0000\\u001a�=��p:�*U�J�*P\\u0004�R�\\u0000i��.L�\\u0018G)\\u001a�\\u0017\\u0003a~�`�=��\\b�\\u0000��y�\\u0019W��������Sj�\\u0003�KpƑ�\\u001f���\\u000b�\\u0017�\\f��h\\u0019q灊�\\u001b��p�E}!Uk<�\\u001b\\u001b\\nl���0�j��\\u0017R/cҜ��{��{'��Q���\\b����\\b؛\\\\\\\"��_\\u001a\\u0015�\\u0000vvwt�;{?�\\\\qTk\\u0012/�������Gܡ\\u0019\\t\\u001c���\\u0019G\\u0016>v���\\b�9����\\u0016E�x�\\u0005�\\u0002�\\\\�S�+|A���Td+�\\u0003�\\t^oo�v��ڿ\\u001b$�^N�uR�O*F�*I�\\u0010d��\\\\�LO\\u0004v\\u001a�*\\u0001�\\u0011j\\u0016l���UV�X�1E\\u0004��Px?�Q�^9�HQ��e<͇��\\u001a۫�mo��\\u0017���J�²o���\\u0006\\u001c\\u0018]����#�k������\\u001e5ܰ��g�\\u000f\\u0002�\\\\\\u000e.�\\u000bi�^��(��2\\u0014�8-�\\u0000\\n���Jp��n�\\u0007\\u0013\\u0004>�\\u0015\\f\\u0005��ks��*��\\r��qۥWF�\\\\\\\"��$U\\f\\b��R̬\\u0005*�\\u0014�T\\u000b�\\u0011�\\u0000�S_����C�Yj�̈́e~,,E\\\\��k�\\u000bBU��\\t�!Y;�؍�t�dэJl���\\u001d\\u0015��f\\u0000�c֪�\\u0000���)'���\\u0014q��r^Eu(�;n|F�\\u0003�����\\u001b�쬆ΥO�\\u0016�iC\\u0019�J�(\\u0002T�b�ȟ�����6�v�Ӳg\\u001b��##ucv�\\u00054��\\nP��?�����{�f���@\\u000bo��8�8qr��Q�-���j�\\u0018�#��\\u0017&shbw;�\\u0003]>\\u0001��\\u0018����I ܛu6�R �\\u0014PX.���´V�1�@\\u000e��\\u0019���X%�,Y�\\u001e[\\u001f�\\u0000kP�ر�\\u0004o�|\\u0007�^X���ob>5\\u0018l�\\u0012w\\u001d|N�B%�\\u001b�\\u001b\\u0015\\n\\u0005��o���y\\u0002\\fV+�7�?��(��R��\\u001fQ����N�$/\\u0013\\u001f��@�\\u0000WZVp��X���ŷ�R�ƇOq�?H�5�p�R����C֯Z2W�t��<Q[��d�Z$.��\\u001e�ҵ\\u0002���QH\\u000b�+ٝb��o�\\u0001'�VQ�S5�x�9C \\u0000�\\u0006��@�?3\\\\\\\"<�\\u001aD\\f�������_!���\\u0000�{j���\\u0011���\\u0018�}MԹ����wo�r���\\u0011d7n_ݐ\\u000e�]\\u0005u\\u0010@�\\u0002��_��BlI\\u001dt�Hh�Iq�8�����ֈ1ت)�Z�\\u0016|Y�)\\f�$����6�й\\u0019�M�$����H Fp,\\u001c�_�M�)���=�\\u000f�e-�*c'�?�F�t��\\f��\\\\\\\"�����:����\\u0014f`�G<�x\\b��\\u001c\\\\\\u0013�ޛR��S,���� �|�ަ���\\u0012�e��4�|�&\\u0014Q1��8��PU�;Əw\\u001f\\u0003�Z33\\t�ib2)&d�mK�\\u0013߀2�����S�$\\u001e�a�;�\\u001a]�\\u0010�p�He7>MI\\f*X\\\\\\\"|\\b3�G��\\b����6\\u0017�ޒ,~\\\\\\\"����\\u0000���\\u000e2����^���Б�z���'��H\\f�#\\rn\\u001bOW�L�.Kb�;r�ϴ�m�?CӶ��W�f=�\\u0017��m\\u0018\\u0016V\\u0001���4%7���怍}-�ΔRZ\\u0003%J�)�*T�@\\u0012�J�\\u0000Ƿ�X̟���B��K�r� �{�M��Z���\\u001f�o�\\\\\\\"��r�Zj\\r�U\\u0018�\\u0015��\\u001bh�\\t��Y�\\f�5�z�;�KP\\u0006����p׭\\u0011�`l\\u001a�F�\\u0005j���ݒ'u\\u0017e\\u0004�BÔ?Kh\\u0012F\\\\\\\"�$�����.���\\u0018��\\u0000l<�,��la\\u000f�!{���X\\u0001?\\u001e��)\\u001b�G���r�\\\\\\u0019%\\u0004\\b��4����h�����u,ۂv\\u001f\\n\\u001dd?��'\\u001b �ju[�[��в�.T��c�\\u001a��{��\\u0000�ަ��tuu�[�B��?݉ Cp}n~\\u001fH�ui\\u0014��E��k7n6\\u001e5�>�rv}�K)6�j�^Q'\\u0016\\u001f1^���׻\\u001b�Y��\\u000eX�\\u0004C*����g�p\\u0014�)\\u0004[Ɔ'�R[�;\\u0001[� �-�7�\\u001cE'G�r�Ƽ�b�o�\\u0015;{\\u0002��j\\u001b��˗\\u0013�\\u0015+�\\u001e��'\\u0007?�O*�a\\u0000j�W9�,|��{��*�{�\\u0003ip5\\u001aRe#a�㧑ֽ-趋�\\u0010\\u0014\\u0003�\\u001e5鷍\\b\\u00012q�мGg\\u0004_ϡ�M���0�) �1]��4ڹ����e��=3\\u000b�\\u0000�\\u001a\\u001a������J��+}(��\\t�$�Z8�WX�R��ʢ�\\\\<�6X\\\\�\\u0000�#�����\\u001ark4�=M�\\u000f�\\u0015.�\\r)2���7������p /�\\\\QX}�\\u0013\\ns4|�\\u0005 \\u0017 ��@(���g�0��Y�G7\\u0004-��\\u0007~���l��.�\\u0019\\fe�\\u0005$�\\u0017\\u00166\\u0006��މ\\r\\u001f\\u000e\\n\\u0000\\u0003p-��R$�\\u0018gM��1\\u0018p1�Xh�t*���p�;|\\u000b8�bܤ,܇�mr6�)\\u0017t�\\ne�q� �\\u0011I\\u0016d�E+�ٖ�T��(p��ȕBl�xWI�b�_h/�t$؎\\u001c����K\\u001f\\u0006H�8���\\u0003�QV�&\\u0016��eC\\u001c_��yF,If#���k^�6#X�\\t,?2���{��cG�z\\b�N�\\u000e��z�L2��K1��\\u0000/��\\u0015*��%Qz�4��ز���\\n�_��b�\\u0016K�#*��p,/���k��d!~�趺ޯ\\n��b;�1 �a��b\\r6�a��`\\u0013>6�UV<��>W�kl�B^,nTX~5�R�\\r\\u0012�9�\\u001f\\u0007#\\u0019q����� ܛ^��@�o��!�}é��\\u0002� \\u0004�O\\u0013K\\u0013\\\\\\\"�v�V�06<�\\u0013jW��\\u001e4��\\u0010F�k�n>T;@�9L8�f�\\u000b�:�\\ne\\fj�-p\\u001a��@�n��O·ŉ_^�ʳ�)\\\\\\\"�l�(�i�^\\u0018�G\\u0002�V�#\\u00001�V2�\\u001bہL���Q�jT�\\u0006\\u001a�0�#\\u0012E��͗��}��\\u0013�u5�v쉛��p/�A��4�P-�l*�KՉ�A�\\u001e:\\u0016q�N�\\u001f:��N�\\u000f!j��f:�\\u001cUG�\\u0001�;eg\\bW�\\u0011��(\\u001a�������k-�m��\\u0001أ��\\u0000q;��_�\\u0004�X\\u0000\\rt)\\u0010P..A��CM��>A����\\u0000��\\u0001:\\u0011�iGs�h2�\\u0011�_n���2uƆIOA�p�e<�-;���+����+[E��?b�q��5��L��O\\u0016.\\\\\\\"�m�5�O\\u001c\\u0010�\\u001f�h�\\u001cm�-j�{?j|��i\\u0001D�z\\u001b��P·�\\\\����% \\f_�E���5�g\\u001b5\\u000f\\u0014Y&�����\\r��v<x�c�w�X\\n[�\\u0004\\u0019\\u001f�\\u0012�]l��yQy\\u0018Q�<R�y��z�;\\u000e6�\\t�a\\u001c�ka�֦���\\u0019,ϩN�e%���m�$�2൵f򪡕�\\r�q�C0:\\u0013pEa\\u001elYl��x�lT���u���bJ�jC\\u0003g\\u001a\\u0011n���z�\\u000bC�̀�]۴a�\\b\\u001bތ\\u0019T^9\\u0006��Ʌ\\u001f#�]I�\\u0006�\\n\\u0007��=�\\\\\\\"HG)�l#Q�b,,<�^�z\\u001cFX2��\\f��$��9A\\u001c�:\\u001a�QWa�\\u0016�[|iN\\u00166LYh�D�\\u000f/S�\\u001a���z��[�Sl=1�����SM�?���?�g���r���`w�5xƲf�\\r\\u000fX�lj3VL�HE�ׅ�2¼�)�ӕꬁ��mR�un�i�\\u0018:\\u0015�\\u001e5Z0�ǈ=(Y\\u0010����[R�\\u0016�\\u0014o��(y,t#m�E\\u0013R��\\u001a��\\u0002�<F��;�\\u0019�3�m��(|�\\u0016>BB��\\u0015\\u0000\\u001c����Ũ��\\u0002�\\rg<I�ot\\\\���*89��(�;SA>\\u0014a5U\\u0000�Mt�Z��\\u001cwa�\\b�����\\u0000�?�V\\u0011t\\u0011� $�M\\u000f�\\u0019�j\\u001e�]��֢!��5ns�M�,�\\u0019L��/��!��\\u001fͮ�Lu��<\\u0002�a��\\u0012���\\u001e��%Y,HQ�KZ�\\u0017r�UX���\\tn�\\u001dv�9q\\u0002�\\u001fs����ŏ&*[O\\u0001k�k�w*�0R\\\\\\\"��.�u�j��e2ZK*��\\u0012~�߷��Y\\u000b9�\\u0012\\u0015�n�}|w�p��W����{0snW�~�ލǅq�\\u0001(d}�/�^g���kܑ����̣V��D q��ƀ\\u0006�{с�S����\\\\�,�Xߏ�|\\u0005cZ-\\bd�R�0\\u0018��Dw\\u0019\\u0012�}\\u000b�é�S�Ï+�$yځ�jcň[B9\\u0013��z:�h4a��׭\\u0016\\u0011\\u000fS�\\u001c�r\\u001c�<�ҽ��I7\\u0006�꒧C��I&�|*�S���K��*���Z�]��W�\\u0017�'a�\\u000f8�H:����\\u0007��®\\\\����\\u0012y���k��i���T��\\u001b�-��W�\\b\\u001b���:��ɵ�����V�\\u00001�\\u0006\\u001b_��\\b�\\u0001n�|\\u0007Z\\u001b!\\u0011��\\\\\\\"�,:�\\\\\\\"�'P\\u0006�݈\\u0017\\u0002�~[�~]~\\u0014\\u0001Ϻ�vC�I\\u001feT\\u0002H\\u0000\\\\�\\u0000\\u0014Fz��c�k51�]��\\u0003&a�?�������\\u0016q&�!\\u0018\\u0018g\\u001a\\u0000���������\\u0014R�����U�o�)�ћ�N�bCirO\\u0005�u5���n�ݧ����ɐG�\\t�\\u0013`��\\u001cY�ɌK\\u0003�\\u0010��j����``㒲��\\u001er5Vm���凶͕\\u001b\\u0010���\\u0010l,|*��\\u0006��:1\\u0016��\\u001d|k_iM�H���(��e�B2bd��m\\u0016I\\u0007'o��V�9�-�q�o~\\u001d��q\\u0005���[�p�ƨ�إ,�F4H�{\\u0012ONZ��ǘ�q�6i[�?\\u001d�ߥKX�t\\u001b�W���-�\\u0017Y!<�\\\\W�5�7�_)�\\u00068��a�#�Y@�\\u0013��U��\\u0014�[\\u001e&�A��ec�+�Ov�U3B\\u0013\\u001c�b��6�\\u0000Q=<��\\u000b��\\u0016\\n��\\u0010/�\\n^��VmgɿS��b�R�\\u0016�Ņ��b@\\\\\\\"�QO{��4I��ch�\\u0016#pN�*EZ��9-�\\t�*��!\\n,\\u0019��u\\u0016���h�\\u0015P��H��oua��S\\\\�R<2,��:\\u001b����K3�)\\u0005dB\\r�\\\\xT�<4����OS�wH��f�L\\\\\\\"f����0��m�Z�C�a�k\\u001eF�\\u001b[�{\\u0006�;�&B\\u0003�z��\\u001a\\u0017�\\u001cUE�-��J�-e\\u0015�5\\u000fr�\\u0018�S\\u0017�7\\u0011��\\u0018�.GSƙ�U\\u0001t�1�Hĳ\\u0012|)��\\b�܅U\\u0004�\\u001e�R�\\u0005UBK���E:��r���e��y+1 ��k\\f����\\u0018��Vc��4\\u0016v\\u0002@�H��/fS��\\nҮ\\u001c1X\\u0006�J��\\u0011\\u0019��\\t?*�\\u000bT�c��M�ks�ku�o�\\u001f��\\u0000\\u001bR�V\\f���\\\\Sn��\\u000edK�$�\\\\\\\"bl�.�\\u001buғi)cI�!Uv]��E\\u00064J�\\u000b�\\u0005��GS^�v�ߍf� �6w�7ߥ\\u001c-j�ݓ�\\r+H�\\u0007�\\u000eH��2ʂÍ��¹N�;���\\u0019K�\\f��\\u001b�?@~7�?�g�Ê6�U�������w\\u001e�C^k0��3�i�V��\\u0000��k��_\\u0003^�6Gy��Œ1\\u001c���\\u000eJ\\n��5�ɘ��\\u001cy�ݱ����\\u0003���]�\\u001cc�{�j\\u0014y�eāA.T�B��)��rD\\u0013�&`X\\u000b��\\u0015Q�X��/n�9�Ձf�\\u0011\\u0015}��zَȾt^y�X��Y$��\\u0010K7�ě���Y��Ŋ\\u0002#<\\n��[{u\\u001f:�\\u0001�4YY��3�H \\u0007�\\u001f�6��iֹ�L�\\b��1�\\u0012*��3\\u001bX\\u0010z�ʉ�,O�1�[$'�U:;!K����s,��\\u001d�*\\u0005�?�V���Hd�\\u0012g\\u000fn\\u001e�,����Vi}r��\\u001a�\\\\\\\"�\\u0018�{�z!�{�n�\\u0002���S?��6i=K\\u001f�!��f����0�l�^(�V$h��\\u0001\\u001d(�\\u00189�$m\\u0001���Ϗ�ܽA4�Q��_�\\u000fNV9f\\u001e,����ŒҜ|D�\\u0013��N��\\u0017�����\\u0000�\\u0003K��l\\\\`�d�������#>PT�G\\u0000}\\u0018����\\u0000u�A�RJم\\\\\\\"w��i\\u001eK��/��\\u0010�Wu�}D豏��U\\u001e\\u001b�\\u001a0�q\\u001ctozG%�'a��7��\\u000f\\n�����.(\\\\\\\"\\u00167��R9?���Ɖ\\u0018�\\u0005&�'���e���\\u001c&�\\u0019�w\\u0005PP�\\u0005�{P�ou*2=� �\\u001aۡ=(0\\u000b\\u0010�.N�\\r�Z�ަ�����t&��5�\\\\T\\u0001m�J�\\u000b�K\\n��ۙ\\u0016��G�\\u001a�\\u0012l\\u0005�M��2\\u000b�z\\u0000�\\b��j��!��\\u0018ڮj�{y�P\\u0006RƮ�XhF��h�)\\n7M�����B-Bgc{��G�u\\u001ec©14*�R�Q$�R�\\u0000J�*Rn\\u0010 �\\u0018�Y}v\\\\\\\"�\\nz��Rc��4�^�C�h �z��#��{��n�9c׭L��6\\u001a�\\u001f�,�8��hO­\\u00064� {pS�/:�\\u0007\\u0000\\u0019\\f�\\u0013+\\u0001`\\\\�\\u000b�\\u001f��\\u001fSe\\u000bn>f����\\u0003��X�\\u0012N��5 t�#�8y�H��#�\\u0003���\\f\\u001b�'�\\u001cP^F4���#�'�\\u0000�\\u0000�O�j�vy�xG��7':d2!�\\u001c\\u000ep�2��հ�\\u001ec��\\rɩ��>S�9<\\u0014\\u0000\\\\�\\u000e��Ʃ\\n{h\\u0000\\u0003�E\\u0012!�\\u0002 �mɯXު�M��xI�\\bt��\\u0018\\b��\\u001a�j� �\\u0000e�\\u0014-P0\\n�*V�gGآ����žC�?\\nf(lX�8�E�\\n\\u0001��Z��\\u0001����\\r����ѵ �Ɩ�\\u0007�\\f��\\u0010i��\\r�֔~ቛ\\u001a7\\u0000�\\u001b���\\u0011�]v\\u0007��ԩR� �*T�\\tR�J\\u0000��z�b���ֺ>���v_w�F�\\u0001 ���;+�9#��@8�Mk��\\\\\\\"�9��<r\\\\\\\"��\\u0002�Y\\t��P�a}+q� ؃�\\u001b�\\u001aK�3��B�]����_��:t�\\\\\\\"�x\\u001b9��\\u000e�<ؙP:`�����9�W\\u0017h�[���N;gq���$�s{�����\\u001f-\\r[�`c�4E��Ø�\\u0011<R{|�׏\\u0013�jX��#�3eG�r�\\u0010gĔF�,cr�,K�O\\u001d��vL���\\u0000�t\\u00144E�{�z�\\u0011��uz\\t���a$2\\u000eQ��\\r\\u0005��<\\u0018��#�[��v\\u000bo[-�<oj������{$wV+�+��\\u0000�\\u0003\\u000b�\\u000eݙ$��\\u0012K�.}�M�q�a��DA�0{lY\\\\Q�E-��j��\\u0003~�Q��<\\t�A\\u00123ƌ\\u0018�?1�;�WCKv�$QÃ\\u0010�\\t_r@7\\\\\\\"�\\u000f�o˕�UD�>�rR;;ݱ\\u001fs^�\\u0019�\\u000e��3͊�\\u0000\\u000bƦ爸���\\u0017��H���a�p]�l��\\u0019P����\\u0001u\\u001c�����\\u0006!�I�X���V�\\u000b\\u001bQ����a�����kh¦�H�;Fi[�(Y�\\u0001�i�ł,W20��#��F�_j�\\tƃ\\u0010{D:0�@A�|o\\\\�|�9�\\u0013\\u0018'\\u001e�#U�M��1#ꮾ��T�?��콌;;[q����~� \\u0012B��$\\\\\\u0012\\u0014�\\u000fJi��\\u0003a�\\u0004j��\\u0010B�A\\u0002���d�\\\\��auRy\\u0001���7���I\\u0004��~N���Z�[ƺ\\f\\u0018�\\u001ax�I\\u0003���)\\u0007�Z�\\fc����A�%��(�\\u001a\\u001670�J<��\\u001ay!\\u001e����k�9Hɨe\\u0012�\\r�܋���5���1W�\\u000b^�hk@�щ\\u0004\\u001by�פ��\\u0005\\u001c��~\\u001f΁\\u0001���k4\\n\\tА8��\\u0000\\u000bW������\\u0005�\\u0013fW!��\\bb�Q���|*\\u0010Ǌ��'@OZP�\\u000eY��Tp��n#��\\u001d���ۏɀ�B��-�km\\u0006�i���\\u0018�\\u0014�Cz`y�\\u0006#bw\\t}N���^\\u001e!�\\u0016�Va�z�E\\u0006�4\\f\\u0005���k\\u0010�t@\\b\\u001b_���P\\u0005�u\\t��[�ԑ�P�:F\\u0001s���:��^(\\u00063sf�ŷ�y�����mt�\\u000fK-��ⶹ�\\u0003KZ�ą,�I\\u0017��sү̕\\n6:�\\u0007K��xH\\u000eu\\u0001���QҀ<�*\\t�7����@��&D-\\u001b�c���\\u001b\\u001a6Ol݁��Q�&�\\u00124����6��l\\u0007,���\\u0018Y�؏1L #�_��{�8�2\\u0010o��\\u001e���F�W=�85��\\u001a�\\u001a𦬼�D�F����1�j\\u000f�����i�UWZ%\\u0017�d�r�Pz��,\\u0016�U�\\n�kE\\u001e��\\b\\u000fTR�����\\u0014A�����/����f���Yf�A�\\u0017�:\\u0007M���)�\\u001c�\\u001b�2`�\\u0001J\\u0012�%Բ�Cfb1�\\u0019YR��\\u0011b��@f_���P��8\\u0019U\\u0000R�(�l�\\u0019x�-[���H�oA�y8����\\b�0��r��2���o������$�C�b\\u0006>=�@\\u0001[�\\u001eJE��>���-�K����r\\u0000#��-����DO�tmL�\\u0000@�{��'��ɴw�<[�I��ػ��ڒz�$�I�ו)@ےT�R��^ȫ<M\\u0003u�~5�^(^F��y�cB��+Dǌ�E��#�aG�u�#-3&T\\u0012q\\u0011J��T�-�N�ֱΉ��\\u0000q4�z�X���gkz��;SZ\\t�r���?�F��Cԩ@\\u0012�J�\\u0001*T�@\\u0012�J�\\u0001*T�@\\u0012�I����5)4�'\\u0001%�^\\u0017�`\\u0018�:T&��-9\\bV�\\u0015�dj�/zP0�7������EF�:R`j���\\nG.T�(�\\u0018\\u0016.]�A$\\u001b�>4��Q�6\\u0004Z��\\u000e\\u001chȑ�\\u001d�1Qb\\u0017�-��Z�/�1�\\u001e%6��D�L�����ca�`���q~d��Pǂ�ʑ�W��~f��H�xU�Rn�\\u000e��R��<�=���d���\\u0000\\u001f%s��T�\\u0010� \\\\u���Yd��(\\u0015�BO\\u0012\\u0006�j�\\u0011�Y�������zߕZ)�\\u0004�H\\u001dm��=�X맙����ȸ�\\u0001M��Jw\\ni�R\\n�H|ku�d\\u0000��F�j��\\n\\u0005����,�Ӣ�h\\u001b\\u0016�\\n��kQ�3{p|t�w\\b�\\u0018\\u0002G�\\u0000�ڽ흹��C#z\\u0001�U�u�\\\\\\\"��x�m��eD�\\u0006#�R�]\\\\?#}5��\\f��K\\u0003�¹�,J�Q˩\\u0000\\u000b����X\\u0017����nH��\\u000f\\u001a�\\u0004�qY�$�c�WBv��[�`x��\\u0001@�|c���\\u001e��k���\\f�~�\\u0001�ڪ�\\u0011�(\\u0011�v�|�|\\u0010��S�u��n.1��S��B���\\u0011LlL���f�}Ahj������ֽ�E��\\u0003~\\u0007�>b�xٜ�~;\\u0005��n���N\\f�\\f��C}�[\\n�����\\u0006�Α��\\n$i\\u0003D��<Y��k��\\u0006���q�ƉFLfg[�\\u0000t(c�\\u0017�D\\\\\\\"Id�\\u0019�%�pFħ\\u000662X\\u0011��R4�\\u000e~俆h� #\\u0005\\u0015}�\\u0005P�\\u0007\\u0017�ˑ��\\u00005xQ�q\\u0011���c�\\u00125\\u0017����Q\\\\\\\"\\u001bH�H[��@5\\u001cE�\\u001bγ�\\u0006H��jC2��,yn|o�d�n^��9%���A\\u001a�\\u0005����}�4�1�\\u0019n�eI\\u0014�P�\\u0000I\\u0016 �,��cǟ%�T�n!���#z�b�H\\u0004���Cv��j\\u0012or-��\\u0006��\\u0011���������D\\f�B�\\u0006��6\\u001f\\u001a\\u001c��q�\\u0010�<B\\u0010\\b�ucU�5\\u0010�h�;��X�ވ�2)ǝ��g\\u000e�\\b��n\\u0005��_�e�\\u001cj���r\\u001a�Eaa~�kx]'�*C��B�I��qj�1�,bpIf�SF\\u0016�?mJ���Q%6���%W�$$���\\u001as�1��\\u001eFT��\\\\t�I�Z�E@N,����7\\u0005\\u0004]�+�\\\\Ғ�$#��u�\\u0017��¸�?�\\u0012�a\\u0018��\\u001a�v\\u001f*!\\u0001�\\f��IA`Qt�h%�%��\\u001d�:*�\\n{�\\u0016<���݅�Xr�\\u001aϳ�\\n�x�\\u0000q������JV|W��,O.\\u0016t24���\\u0005�����Je\\u0014s�\\u000b&K,ImAЏ�\\u0017��q�,Q�%;tQ}.h�>E��rͿ�>�YL��\\u001bݓ)�8�XΆv��\\u0000�t���,H�(��Vc�'�[\\u000fn%\\u000b\\u0012�\\u0003³mN�:~�\\b\\u000f\\u001aG$��gSW��R\\u0000�D��Z����=\\u0000�{4��\\u0017:ڗɑ$�\\u001d\\u0017�U��\\u001cy��V�Ō\\u000f)X}D��<k��.(�1�y\\u001aH�Q}�6&��e��\\\\�i�r'+#\\u001fm,�\\u0007�7���I�h?LT��8\\u0000..����+�N��)V\\u001c�Ae\\u0003�>t\\u000e\\u001f���A+�c\\u001a�S��ͩ�I\\b�Q6��\\u0017�C�[cb��D���B�����'�u�s\\u0019\\nX�\\b�(��\\u0000RN�ʭ��zf�\\t7��O��\\u001f}.���i���7����U�\\u0000��Л��[/�&VF?��S���K!ܱW�P\\u000f\\u001eW��K�\\u0003C��p\\u001a��O>&?m������ѧ�\\rkJۮ�s-�W�˱ߒ�����\\u0002ʨ��P'c�Y²b(�4��磧�|k��\\u0000���}�t��w\\u0006xɀ\\u0001�oO��\\\\ܚ%�k��\\u0016Q:@j���\\u001e����M)\\u000fv����$KA���]Y�.\\t�\\u0000Q�WF�U\\t�}\\u0007�Ԯ\\u0000\\u0004�L�\\nJLNw�\\u0000l�~\\u001a�{��qQ�ܻ��\\n�X뷟�ֱ�Я���O_\\n�;�q3�RȾ�6U�\\u001aqE6�j�Y}�\\f����xSS&v�\\b����fo���w?\\u0001L\\u0016\\u0011\\u0012\\b��Qmh�h>\\u0015��J�ݵ4UH\\u0012AC�\\\\\\\"��XВ\\u0013H\\n3�ɚ��ĵP������W����j�3sC�DA�&\\u0001�-���\\u0007[\\u001f��`SF�\\\\X��1��X�'(�^��U)�t�\\u0006?+z�\\u0016?\\u001aQ]4�%&VP�R�J�\\r�'z|\\u0006\\u0018Ρ��{�l�Z��1]�U�J6�\\u0007ξo]g���2\\u0010a����\\u001f��\\u001f�P��wE'��D�E#$1�]I��:}��y��˼l�� �|�-tY\\u0010�%�{�{\\u0012+3\\u0000@\\u0002\\u000eJu�P�(E\\u0006Z�֌-��E�kXsDv\\u0010���\\u0005St�u�ra\\\\P�+�bG%�Փ�.�6LFs�\\u0000�*��d���{Z�&#��r\\r�\\u0002�Ա:(�Vi��!dpYvQ��G3�Hc�\\u0005��s:r�Bw����\\u001b�����`\\u0001�X�j\\u0018#��\\u0015�E;� ��J�Śi\\u0019���[�}j��\\u0004�@�B�ɷ�DG۳��d�\\u0006dauamG�W�Þ<�b�\\n5�Y�\\u0006��$��TDX���\\u0003�t���\\u001a�\\u0004�v�VĒ��iӭhfNd\\u001eV\\u0005T�\\u000f_�Uy\\u00106�U�\\u0000��@\\b$\\u001bX�j`F\\u0004�_��8��~:i�*�܆'S��T-�\\u0000�\\u0000z�mk��ټ�Y�\\u0004��\\u000f\\u001d��K\\u000bZ�\\u0003�J�\\u001e\\u0007rH�h\\u0002���\\u0004�M�x��B�5\\u001a(�\\u000f/�^��^����Tw�\\u001b��4\\u0001sw\\u001c��I���\\u001a*��7��\\u0001�M��ZB\\b������\\u001a@c\\u0000�`mn�\\u001dh�*�����l���@�/M�\\u0003S�!�ScK\\u001c�s\\nuS�\\b4�\\u000e�(VYT\\u0013�X�a�5�ھRkM\\u0001#C���\\u001b���\\u001b\\n�<x����rd�P{���~��x�#5Zx�X�RI��*��O�n<��ߋ\\u0006Ks�\\u001f\\u001b\\u001f�x�u_N���|j5.\\u0004�}�\\u0007=��Y�\\u0018��\\u0010���~f�z\\u0013�r˚\\t&�cc�x�\\u001d��W�����(��q�r��ݒ4fD0E`$�ܺ�䅻��,h�b@��i\\u0017���Qz�ߪ�M�L�m\\n\\u0016Y�Nf\\u0012\\u0011��0l;\\u0000�܅��|mN;F8�2�d��\\n�\\u000e��RXl*�vNՃ�n?�ʓE\\u000e׻��,(�<|��@�\\u0002��q�\\u0005\\b]�\\u001aV��x|f&\\u001b���R����\\u0010gp�㌩\\u0013�^}�O\\u0005���\\u0003&>k& �%\\\\\\\"\\u0001�����sg��\\u0007ʑ�~w!�-���,)�~�!}�\\\\\\\"cFvE\\n�o�1�G�Z��S�\\u0013�:��ɒ\\u0006\\u0010�<Si`�ޱ�W�=�@��<�#R,m�Q,�,$;rb,Y@V��\\\\�~*�1�\\u001b�\\u001b�oA�잋�aܲ\\u0001��k� �|�4�\\u0011�y&��Vș�7\\\\\\\"�\\u0002\\u0000���ۇmChS�5�P�Ƀs���-�K�^Ur��i\\u0018�1Q�~S�4�\\u001a8!T�U]\\u001c\\u0000$o\\u001f\\r|ꬡ/RV@+ly\\u0015\\u0018���E�����\\u0011�b\\u0005�\\u0014��R�\\u0019�2\\u0017,��-�.���\\u0005[���f&���T\\f��zR��*M\\f���,�w���\\t;,�q�(��Q��x�\\u0002-�Ҕ��FyĪÎ��K\\u001a/\\u001f �|�k\\u0013���\\u001c��2�t�l|G�\\u0015\\u0015�%0P�6�d)h$P.J�\\u0000�U��{�%�]\\u0001�j�XڴD\\b�D�A\\u0004\\u0011\\u001a-�P,\\r\\u0019$\\u0011Kb�r6a��k����~�2\\u0004�\\u0016�G�񮳱̇�*)\\u0005�,\\u0018x\\u0012I\\u0015ˀ\\u0000�\\u0016\\u0003�\\u0013��&\\u001c�T�vt����*�ԪZ-,�R�\\u001dO�J���!ˍ�\\u0019\\u0011�Q�qDC#I\\u001f6^\\u0017�\\u001d�\\\\�\\u001b6r\\u001f�;�G�\\u001b�(���G��\\u001c�x��N�?i�����/��AD�^�&^KG�\\\\\\\"��َ�w�Nǋ�+�fD\\\\�\\fW\\u0016\\u0016�O��\\u001dX����T�s�s�rv~�\\u0017�0A���\\u0004rύ$Q�\\u001eB!*��%Rz_Z\\u0007&o�彠y#(���,�\\r�x�ܙ���|\\\\B�r\\u000b��F����\\u0018P�H'��s&��ѯ�ޒ�\\u0011�b\\u0005��Q���#\\u001fR\\u000e���f�L��&��&Z��D/\\u0014��Q�QҖwh[3�ʑ�\\u0000rh�<���^�i�?p9\\u0012\\fYY��T@�}/3��Y��W�Zy[�\\u0005�Ow��r�͒��\\u001b\\u0005P\\u001bD�k�4�I��3��\\u0010\\u000f\\u0011}mj�;oe\\n^,trt-rā�ס���R> h\\u0019A+f66�\\u0006��\\u0016\\u001e\\u0002�$!\\r��E�\\u001a\\u001b�M\\u000f�_��w\\u001e��ǿ��a�Ke�\\u001dϵ\\\\\\\"E�\\u001cL�u7\\\\\\\"��m�׹?�1[�dDcfșLk\\u001d��XZ�ƓaĤ��\\u0017�dI���\\u0016W\\u0002�\\u001e�Tq\\u0000���h&�$\\r*ر�\\n[�Uq�hfa# �S�kS!b$�5�l\\b��YZ��O\\u0005׮��F`l����_�Ҟ睓\\u0014�\\u0004'�`\\u0002\\\\o�K���Q���e�U�g�\\u0000f��\\u0011E+�e��'�\\tr$�\\u0018�\\u001dI=<�9���\\u0018\\\\z�;��\\u0014\\u000fg�\\u0000�?�?����v{\\u0010�蕶]�j\\u0017r8�a�UY@�Z��z��ו��ҠV��?1L\\u000f-U����\\u000f\\u001f���g��\\u0000�|�\\u0002�\\u0012@\\u001dk�\\u0017ӭ\\\\�\\u0003�G�����\\u001c_���0\\u0016d��ļF�u*v4���n.\\n�\\u0003]\\u001f��;\\u0000G�#��9\\u0018a���\\b�6�)�&�\\u0015(���$Wh�i��\\u0012��T5*Ȍ�\\u0015w4\\u0000L}�4j�B9\\u000b�\\u000f\\u001a��Ǎ���:�T��p��@S��ҽX��Ȫ�5\\u0017��b�m\\u0016���Hؖ6��\\u001f1Dč9�/�\\u000f/����\\u0002<�3��\\u000br)�5�\\u001a\\u0013��5\\u0017��:\\u000fL�\\u000e��\\u0014�^\\u0006aݻ���&\\u0019�W����0�[H��\\u0000�\\\\��ko�\\u000b�\\u0015�\\u0003�1\\u0002�\\u0000\\u001a�\\u0018p\\u001c\\u0014h����ҩ�\\u0002Ԁ�j\\\\\\\"��-���1�Ծ��J��-�K�@\\u001e\\u0015�hI�(ej7�����\\u001ec+�W`u�]D�\\u0004��n7�2�\\u001f�=o�\\u001b\\u000f�\\u000bO�f?���!��=M�\\u0005]�\\\\\\\"P�\\u001bױ�\\u0011p��c���V7\\fx�d]_��+�'��e�՚;0\\nv*oY\\u0014\\u001a\\u0014\\u0006�Z��nV>*��re%Q@�\\\\\\\"\\u0005ϖ�!�\\u0012�Ȩ�.�@��\\u0006����L�\\u0010f*#$�*��~ΕKi\\u0019�f�g��:�`�>T5=�����8`��T�]��\\u0015X�G��W��q��W��.'�k\\u000e$�T�T�R�%J�(\\u0000,�DR�\\u0012\\u0005c �g[\\u001d,��|k|�9�\\u001c�\\u0006�}��=��m��4\\u0000�ws\\u0003ƌ�����\\u0000TGu�\\u0000�]�.\\\\r��8`@ ����K�X\\u0018΀�?�k����C���B/\\u0019#���e�\\u001a�u�C��\\t�\\\\\\\"5�&�[��\\u001f:G�p�>!l��r�ЂQ� d��\\u001fOq~�\\u0000�:���\\u000b�v���*cE���\\u001c4�Ǘ0:^�RL\\u0004X\\u001dӰb�\\u0013\\u001d�d �m\\u001c�\\u0014������+�8e͉}ɕ}%M�-�s����3��ȓ\\u001b\\u0011�W��>��Vdk�mO{g|eʋ\\u0013/*<��\\u0007��-x��\\u001f�n�l\\t�Y���,�/���]�����:�ըkъ0��ē+\\u000e\\\\iF<��#B\\u001d�+�:�y��N嘯\\bh�UUyH,l���]vJt�w77\\u0015��\\u0019�l.\\u0007�q\\\\���Mڎ�\\u001e��:�Z�f�=t\\u0014>\\u000e<xɋ\\n\\u0005H�Q�ԟ3A���Q��ζ\\u001bӷ�B�\\u0013f7��\\u001f\\u000bP��E\\u001f)\\u0007��\\u0000�c���\\u0000���WnY�9�:-��Tӷ\\u0014����\\u0019qK�\\u0007e\\u0004��\\u001fI��߼�dI@�O\\u0013�4`��Yy�\\u0010H�'μ��#�ݐ��\\u0011^�E/N�~Z��h�����u~ھ�&����{Zs�\\u0010��rt�`k���h�,�\\u0000\\n�h<+��SC\\u0007uǚv\\t\\u0012\\u0016,��\\u000fI\\u001d+��}�I�:Ð�/���\\u0001���n��hZ\\u000eɳ��\\u0019#\\u001b>&cds��\\r�5�9\\u0004�7���y�\\t]Wn��F*I_�'�����{\\n�p�ǁ\\u0017�nW�꠱[��\\r���:��\\u0002T\\u0005��~��$��\\ru6=~Ud\\u001e�\\f6���\\u001bn|+�pJ�C���J�ƣ@n/鶣�|+�t&�����Ɓ�9,Æ���uXY@+�\\\\\\\"�8�X\\u0011a}���P�-`Gƀ4�G\\u0016']G��u㸹a�խ��\\b\\u0000���N�m֨YL�\\u0018�\\u0006�\\u000e�\\n\\u0000���\\u0015�\\\\\\\"���\\u000f�z�u�\\u0005���k�^\\u0001ķ!�lo�=~ʭ�J�+\\r6��\\b\\u0005�U�e6Ө�\\u0000\\u001a���\\u001a�\\u001f\\r>ڂŋ>�t�֪�dV\\u001c���M���T\\u0001\\\\\\\"�\\u0019\\t;}:\\u0016���Ve\\u0017�b����m�V=\\u0002�[����L����||�\\u0002d4\\u0012�!�*8 \\u0001}�u�\\u001d��f|\\u0011�\\u0004�t\\b��\\u001d�;�\\u000b�+x��\\u0014 [�Jv�p\\u0007����\\u0017��YZ#%���\\u001de*\\u001aAĞ�@�![��*�\\u0013��K5�WA�5�:֋�\\u0002���iz]�;�逍\\u0005�qpN�<i�>�峧�F\\\\�\\rV�W�\\n�)bl����1,�ROZ�JԒT�R�%J�(\\u0002T�R�%o�'\\u0017�z�|�\\n��n7\\u0014\\u0000^f9\\t���ޗ\\u001fƕ�\\u0001�7�\\u0013ł�*��2��\\u0016]C�\\nIܡ�\\u0012�.۫\\rAS�R�b���cerO�*7\\u001b)��=��0�Њx�x�auq�\\u000e�ͻLk60f>�\\\\q�\\u0013^��Z�\\u0000�m*�\\u0004�J蓱c{B\\u0015Ff\\u001f���z\\u000b/��t\\u0000�#�N�~��\\u0000w�ʦQP*�P�\\t\\u0004X�\\b:\\u0011R��R�J\\u0000�*T�\\tR�J\\u0000�*W���U\\u0017'@(\\u0002\\r�T�_J����\\u0017\\u001f�Q�î�0�=�l-[G�T��\\b���\\u0002�唍�\\u000b^���]�9b�\\u000b���9���\\u001b!���o�5��rmou��5J��\\u000ePnD�Z5�'�Q���I$�I�ו)֩\\u000b����*T� �*W�l(\\u0000�%���1?�\\u001b\\u0002|�L�l8\\u0015\\n\\u0005\\u0007D�F���5�3\\u0015\\u001au�1L���ٟAț�\\u000f�K��3���&_�,k\\u001b��(��ƹn��م\\u001e�ԅ$\\u000f�t=�%�\\u001b�\\u001f�k\\\\��\\\\��3<Ma&�p\\b x�P�R�YK\\\\�c\\u0014�E�sm�=I�\\n,6��Qc�H���n\\u0005�V�R�\\u001a\\u001f!j�7l��,.<\\rj�8��v�����*����\\u001a[�RX��t�đ@\\u001b�<4$�Ċ��J����\\u0000aY���&an��\\u0016E_E���\\u0000)�r��f1�O�a���o:\\u0007���ώ�,\\u0003\\u001b�ƕ�\\u0016ly+�2\\u000f�?��z�{\\f\\u0000�V�h+8��j�T�\\u0002^�\\fFE\\u0010��.=���CΈ�)#�\\t��b��p\\u0007'�>�Issr�\\u0000Mh�\\u0015~O�Ǌ\\u001bپ4���\\t ��.I�/�\\rZ��j�k\\tN_�}�\\u0018�O\\u0014N�W\\u0016;\\\\�f��\\u0011�T��\\u0014j8�q`��1_vI\\r�$\\u0003ӧ��o���\\u0018P�H��\\u00168OT��\\u0012�0��\\u0000�5�\\nǳ`�cb4��Z`Uc\\u0007�j\\u0007���=Tlb��\\t$0��\\u001f�\\u001d\\u0018\\\\��&�\\u0007}i\\u0012\\u0015�DnV\\u0001y�4\\u001e\\u0002�g&D���$gS��M��\\u0000\\r�t�E\\t\\u00120U��]v?mL�Ԭ<\\u001c�o�5�\\u0014\\u0002<|��Jq%��^���\\u0015}��ܗ,l\\u0015G\\u001d�r4ݔ:\\u0012�\\u0002�Q\\u0016\\u001f}/0@\\u001c��y\\u0003�[�\\u0013���T���2|���SB�\\u001d1�.��g\\u0017`\\u0001���r�\\u0006B�,��ӈ�-��Z��#\\u0001�\\u0001��iA�2M_8����S�\\u0005�6Ak\\n�\\u0012��/�Q�3��W�1��Z�Ǡޕ�\\u0005\\u00175��O�Z<\\tg\\u0017ud�j�[J�%Z�,\\u0013�N�\\u0014L\\u0013K�*ʢ���A�Favr�O2�ψ�\\b��\\u0012�z�ǥ1(�\\u0007ۍC ���Q�<M\\u000e��5W�\\f0�l���F�m���9 �\\u001a\\u0002�\\u0012\\u0000%�7:���c,I�\\u0015\\n�p*�\\u001b��Z�ͷ�RPf8��s��yk��p��\\u001a\\rȨF��\\u0006em��+B*�4�H��X�³7�\\r��-��R\\u0011Ic\\u000e�\\u0011�\\u0016��\\u0015%N���õ'�^3��7�j��w`c��\\\\�\\u001b\\u000f0A��\\u001b\\u001e\\u0001y\\n�:7����l<��7P���jq�r\\u0017\\\\\\\"s,�3����2��||h�B���.y��l��\\u0018�M\\u0018��k\\u001bt���\\u0019\\\\\\\"fu����#Ee:[�jٚ�\\u0005\\u0006��EK.�nәާ��P�F\\u0006\\u001c.Ud��o\\u001a{.<2\\u0010Π��\\u001d�f.\\u000b�w|�֔~�)P�����M����q��\\u0012q=H�a��5��O\\u0010�q�篅���\\u0012����p�\\nb��?ӿ�\\n�E=oIef�˶���Y��\\u0017�\\u0015�;DARkL\\\\�1�몓��8�y�L\\b4�O\\f��S����,��r����\\u0017�j�<x��IX\\u0004u�|C�z�RG�ã\\u0015a�\\u0014t\\u001d�\\b왑��XH\\u0005�S�?�C�Zg��K%�K���=�{bJ?O\\u0003F���\\u0004�i\\t��\\u001f���Ѓa�ΉΜ�F\\u0007\\r\\u001b�Emf�$to\\u001a\\u0015>�V��[��,\\u001e�c�Y\\u0006鲿U��SSf\\u0017\\u001a��\\u0015�S�G\\nG�*\\u0007�X��(kr��3���SQ3δ\\u0004�\\u0003Y����ōz�VE��Kע��A������5$�\\u001clvkiYbF\\u0018�+���/k\\n����\\u0006�\\u0014�j��@Ҝ.\\u0002��K����!�F�\\u0001ԟ\\u0000*\\u0015�q\\u001a�\\u00079��Җ�-�Zĝ�S@��q$� \\u0016\\u000eŭ�7�W}j�I\\u00187,�*T�\\u0011*���H��x�\\u0010�|\\b�Ԡ\\u000f�v̥�Ï!E���\\u001bن�>ڦL��\\u001fN��\\u001f�;�E9���\\u0000n[�^N\\u0006���\\u0015��*�t)��T:��2eA4\\\\g\\u0017�7�,o㨯 �\\t�\\u000e=�\\u001d7\\u0007�U�ą�ȍi\\u000f�\\u0006��\\u0018�},����\\u000f�[���\\u001c3����0��`t'Q�m��\\u001e?f��>�\\u001d�\\u0007Y�)\\\\\\\"�^�[�X�6:Rwy��\\u0018�u77҄�@� �)\\u001b\\u0017k}��\\u0001b\\u0014nM��כ��E��s.@r=\\u0011Y���QZ\\\\\\\"\\u0019�@DQ$K�(Q�\\u0015$��\\u00129\\u0015�\\u001bmz�\\u001d.\\r��Z�6\\u001bXt�\\b *T_��\\t`���F�\\u001dw5\\t?v�t�A�P>u\\u0019���u��k\\u001d��f\\\\�\\u0001�:X��\\u0005��\\u001e\\u0007��\\u001f{\\r\\u0000���ll\\r�\\u0007j�\\r�m���\\u0006�=E��k)\\u0004�\\t@\\t:�޽�[-�`>���r��㶢�<\\u000eG\\u001e[�|��UG$_[�q��5�\\\\�O]?�x���K\\u000b�s��\\u0000Q��.>����j���@��\\u001bՊ��:�\\u001f�T��{�k�\\u0001~x*ʧC��+l����~Q�_��k+9e�\\u0003�b���\\u0018����<ܒ�_�u֛��\\u0000;��8Ǌb�\\u0000\\u0011K���ik�\\u0011�cJ��'�?�}-��C��(��9��I�\\u0016rF�[q\\u00177�+7�5��Sv\\u0019�G�2���guRTs�T\\u001f*0v�f\\u0012N\\u001d���$$huy\\u0010}m}\\u0007���\\u001f��>Cd\\u0018\\u000b��\\u0005\\f\\u0017���z\\rh^�\\fyW����}�\\u0011_���\\u001e#Jۮ�p�\\u00123�R�j]1;|1���_+���.X\\u0002ǑS}+\\\\�\\u001f\\u000e)q��YO�}��Xz�m��.\\u001e\\u0016'n�?l{ reaq��K^�\\u0004�ΒIa@��\\u0007�\\b����*;;%:�y�����.v��\\u001fɷꢑ�Ǝ\\u0015�\\u0005\\u0005$�K5�B\\r��\\u001a�4>;�v\\u0005w,\\u0000A�\\n'\\u0012e�iW%\\u0019&crH��Ɛ��ן��J�ƈ�\\u0000�7�ՒRm{�xX��3w܎!1�6\\u001f��7�\\u0001Kg�˞�4������\\u0014�\\u00139^\\u0002�ZW�B@�t���O3?\\u000e\\r��\\u0000:���sZ^�Udr�q�UjU�\\u0016sA��*lE\\u000f6RG\\u0012\\u0007\\u001c�\\t`�$�}�G�\\u0015�6*��E.Ɠ#\\\\\\\"xÿ1�\\u000b1�4<�\\u0001\\u001d<8P�\\u001a�\\u001b\\u001dE�+�\\u0004�98�՘lt�b3bȢ]apB��\\u0007����x�[���T+d�X\\u0015>b�2�>�bo�^G�\\u0014���>���G�.�br�\\u001e�y�����ʌ@%@�\\u000e�yU\\b�!��)\\u001a!�܅\\u0011����\\u00168߅��b��م�\\u0016o:���V<\\u0004����%0�x���4DSM�\\u001e@{L#`���(���\\rv��HR�\\u001c�rPc6>\\u0007�-�\\\\\\\"\\b�By:�\\u0010:\\u0011]\\u0007s�k�&�\\u001d$\\u001c��\\u0000U��zK.\\u0016.L��<\\u000b\\u001b�]�˥$��7\\u0005�E�n�1W�\\u0013��~8��j�#\\u0012|{\\u0019\\u0017�v5I�#\\n�*S\\u0000�\\u001e���ѐ^&׍�o\\u0011L��eT��č�B߅!�R�V填4\\u001d?si�2{An,@&��_j3\\u0011\\u0017[���zΥW�A$���q��Ō1�\\u0019���\\u0016ҡ�瘴~��s�.�@\\u0005A$m�+0\\u0005%7\\u0004��t�$N\\u0017�[E`\\u001d����#Ȟ/��e�\\u001d)��\\u0004\\r�\\u00041O�E\\u0012��ldRu\\u001f�:|)��㒖\\u0000X1:/�\\u0000J�#͕fY_�c�CFwNዛ�����^\\u0004\\u001bk�ҕ��/PNᗏ �\\u000f\\u001d��3\\u001c����7\\u0002�\\u001fˠ�v�\\u0018$���db�\\u0005k\\u001b):r�*\\u0010�4��\\u0016���t㽨�9��+&\\u001c��3YPX�s���&���5eU'��!��c.:�b,̻U'�0�X\\u0017�:�r1;�.!|�\\u0010Ȼ��/ʒ�_��ܝoY%��Gqw,x�!��h.+\\f���?j lM؝6�@T��R2m�v�㖿�\\u0005~�Ӑ~t�\\u0019�dF�\\f>�)�kT�QԹ:Z�\\u0017\\u0002�f�Vw�U�o��:Ԍ����֯\\t�J��v�\\u0005��[�Tr[ؐ\\u000e�\\u001a�j�_��\\u0015���O*��O>��$鿑�\\u000f,-^i^��qo\\u000e�\\b��\\u00018ނ�Ĉ��ۋ�&㭼h�騡����\\u0000��|t�����d�\\r��Z\\u000eq���@�\\u000b�z\\u0017\\u000f%�-��-��}h�\\\\\\\"��XÏn\\u0014n|O�M+\\u0002\\u000e@�\\u001b\\u001b^�c�H\\n\\u0005��X��\\u001d\\u0014#\\u000b�hO�y����\\u0003\\u001f\\u0018rɐ�\\u0006��Z�r���z\\u0010\\u0006��?�#�����k��\\u00125:�ֈ�\\nLy\\u0007��I��H7*I���<LT�y�\\u00071�­DJ\\u0013�0����)*׸_*=��\\n�1�UK\\u001di\\u0001m*���^\\u0012z��/Ld���X�T#Z\\u0000�B(v\\u0016�V�oX��o��4&{�������OS\\u0001O��ݭ@�-mY��v\\u001c�X�X��=\\u0005+e�\\thi\\\\\\\"G���m�:\\u000e����B�M\\\\\\\"�㲖k�/�겐ur�\\u000e�or@'T\\u0002ѧ�����X�=��_e\\u001d\\u0011���xr�����1�4��F\\u0006�)\\n��YF�\\f��2�\\u001b�6`\\u000e��±�c\\u0005�\\u0004���a`\\u0014�_\\u000e�l`��dE��o��/\\rt�*���I4�\\u0013�\\\\�\\u0019�Lb܉'�\\u0013r�}ǅs��%22Ԧ�\\\\x5ɵt\\u001d�g�\\u0006ib6u]\\u000f���4�MΤ�j�o]����*U��I\\\\G\\u001a�v�*��M���{ c$JH�RI#�ANE\\r��Q���3\\u000eŸ�:��H��^�h�AwFQ�A\\u0003�E\\u0019C\\u0002\\u000eƃ�\\tx�Q�\\u001f\\n6�\\u0000)�\\u000ey\\bFB��\\u0011�7��&2(�\\u0017F\\f�yW�(\\u0003���\\u000f\\u0002ɽ�4r�qz��\\u001ft�ð�K��\\u0000����\\u0000\\n�0?tb��)L\\r�_R1Q\\r\\u000eC;�\\f3\\\\\\\"�$a�\\\\\\\"\\u0016h���\\u0017承\\u0015=\\r-\\u0011��%ē�㧽b��D\\u0001%(=x�N�a�=\\rm���yw��� \\u0016e7\\u001f�R��3c\\u0016X��yL\\u001d�\\\\\\b�]Vx�uV��\\u0015\\u001f\\u0019�R�\\u001av��Ԥ��ʰ�\\u0007�%hث)�;_Θ#�t\\u001br\\u0000\\u0013��il\\u0012w,\\u0017=�-�\\\\\\\"��@rXH}r\\u0001��!M\\u0018�\\u0003z6.�3�c\\u001aȭb\\u001e����C\\u0013����P��̅e([K��<)vmܪ�MA>tKI\\nd�,r\\u0012f��}��iS%`v�\\u0007��[Q��V�vUޜX�����K�˝��$\\b��\\u0003��8yaK���oH$`�;\\r�\\u0012>f��im&_�Hox7��\\u0000���\\u0014t��\\f\\u0001���Q�W\\u0004i�x�eN��ƹ��\\u0007L;6_��nm\\u001c�\\u001b�o�i}JiÑ5*\\u000eОM��i���e3(C���\\u000e:Yz~4&\\u0006��\\r�\\u0000���>]~tC]�>6�u?�[L��\\u000fy\\u0016]�\\\\^�\\u001f�YY卑ŉ���n���Q���W�R��-ŀ�Q�@\\u001a��q:\\u001b\\u0001�>>un%H��i�Ě�0\\u001e��\\u0005�5b�j\\b�Mw�\\u001a\\u0000��mω7���&̼���\\u0000W�Y\\t9X�t\\u0003[��O�ƚz���\\u0000U���M�\\u0017�_��r#�mH���\\u001dk�e\\bApA:�t'ƭ\\u000f\\u0016C}�\\u0010m@\\u0015S`\\u0019�p-�<��VI\\b�\\u000b\\u0010>�/�\\r7r�\\u00141J��t\\n��K'�\\u0010\\u0011���I�!���l���v�\\u000b���R̞�,Ą\\u001eڟ\\r�΅$��\\u0012Iܝ���ٿB�Q*T�R2S��<�\\u001f�&�x�_\\u0019GU��v,\\\\\\\"��W*�6\\u0000\\u001a\\u0017��uz�\\u0006\\u0016�ֵ\\u0007QC+t\\u0015�;P\\u0007��>�$�\\u000f��+�m+����W�7\\u0015?ۏA�z�\\u0012���K%J�*�J�*P\\u0004�R�\\u0000J�*P\\u0004�R�\\u0000]r�ƊN\\u0002���>5LIFhly����1��J\\nX�\\u0019C'�^�GB(\\u0002�(b��k+\\u001b:�5f��\\f�݉D\\u0007��@V7 S<�\\u0019p��m{q�AѺ5'p�J���_\\u0006}#�w'��^z�z\\\\��|�:\\u001cXy��{\\u000ftL|�X�X��}E����ֻ�r��\\u0012.|k6��9@��\\u0017�d!3�}��FQ�������i�\\u0000mI\\f>�SK�q�V�g��\\u0001�X���\\f��e�f4����$3!x͎���´�\\u0014ŹͿl�HNG��\\u0015Ը�\\u0001��B�c��\\u0000r\\f��\\u0000O�k�4\\u0019q\\\\E�Y\\u0000oƀ�����C���\\u0016�ݍ~�\\u001fξ\\u001eu2\\u0007;R�J`J�*P\\u0004�1��\\u000f�\\u0015�m��\\u001eTN�Ȭ\\u000b\\u001f*\\u001e��Pb�j�� c��Y|~\\u0015\\\\���'aX+9�X\\u0015䲭��4�+!�\\u0018΃�ʵ��-�lF�(iJ��Z�T��ݲeR�JB%J�(\\u0002T�^\\u0012\\u0006�\\u000f�\\u0000{Tv��\\u001d����\\u0015V[Z��Rzo�3���\\u0006�4�T��0Ñ�A��I�4>Ra��ܡ�ނ|\\u001c8�re�\\u0019�`5�\\u0019nN�\\u001b|�����\\u0000M1)<�|hL5�lq\\u0013��|�5��q�Zq!��y'�n��\\\\\\\"]ƴ\\u001cx�\\u000bi�D��!�&�{��\\u0005�\\u001c\\u0006\\f4�W�\\u0018�s��U�IA\\u001ai�ּ2�\\u000e]<\\t�\\u0000z\\u0010Z���|*\\u001d4\\\\\\\"�ǭP̬.\\u0014���E\\\\\\\"~a��i���\\u000e�\\u0010��\\u0003�ҥvF\\u000e��.��k�����\\u0006����4��hK��1��H�vPO�Q\\u0003�\\u0002�[�Es�w�b�c\\u0011)\\b\\u0002�砵\\\\w�A����\\u001aσ)Y\\u0007�v���1\\n$\\u0012\\u0003��lb�/�믝n�*61ň\\u0014�!dy}�-m\\u000b\\u0006:ү�\\u0000\\u0010��\\u0015�OQ�1;�\\\\�\\n��T��pE�uP������s\\u000e�\\u0004�洝�rΊ7\\u000es\\u0017� ��j�\\u001e1�;�����~����F�FK�\\\\\\\"�\\u0017�\\u0000-8��\\u000eƕ��G,\\u0002,��\\u0016G\\u001a�W�YG�\\u001c��\\u0015�[\\u000f��vy����\\u0011\\nz\\u0000�p�v#�B���i�$\\u0003�������ʻ0fb�o\\u0015'J\\n9�Lr99\\u001925���?\\n?;*8$1�f\\u001fY��\\u001d:(���\\u001e$�Q�=x��\\u0012�k:?�#�%{;�XaY�y����>��\\u0007��\\u0003��PX�\\b�Y\\bnD\\u001ecP-�\\u0001[��\\u0012�q�qK&�F���\\u0010\\u001b[\\u001a�Qۏ��gʪ�#6'V�J\\u0019�&e\\n�H\\u001b^�&��sR��DA�%����+\\u001d�\\u0003H�@�\\u0006�é:R(��A��}����\\u0010\\\\[�Qٱ�\\u000b���A��\\u0004�\\t��\\u0000�;��QPX\\u000fJ�\\u0006��U�`\\u0014\\r\\u0000\\u0015�f��\\u001d+#B����V�7�ҮY@6��\\u0003�X����T�<����U ^�c}:��X܋��\\u0002�\\u0000ΚB1��n\\u000e��Qsmk6�qz�#6\\u0017�ՙ\\u0016��Rl,\\u000fJŔ�j��\\r�w\\u0010\\u0004�GU���d�R��\\u0003�a�\\u000b_Κ\\u0013\\u0007��4�7(��x�T�LCLO�9��2��{��?j��n�\\u000e^;M\\u0019��=q��S�����,��8�\\u0016���\\u0003I�JVy�\\u0019ew\\f�\\u001d��\\u0003�P��nM�>|�n�\\u0015pn5��\\u0002�*(�b1�ʲ0���lnB-65Y\\u001c�aBՒ�Y��*\\u0012O�}\\t���X��M\\fŏ��#���J�\\f�\\u0015E���SW�t�5=�\\u000f\\u0018��4\\u0007ƛp�ЪJ���ұ�}��\\u0018\\t u�*����T�J�|X��3���E�!U�!�G\\u0018\\u0016�T�!�a\\\\�n��7��g+�4;^�bMP�B\\u0003&\\u0006�A�J�\\b\\u001e5B)�Y/}*i^���~�\\\\\\\"@}ڱ\\u001ef\\u0005M�\\u0001z�V,x�$\\\\�k��\\u00138�\\u0010c�Y[�|,Mv���o�\\u001e\\u0000ڧ�\\u0000\\u001e�����\\u0001s��\\u0018�8�+�T��\\u000eF�&��.�2��d�Y$m\\u0015t��\\u0000\\u0000Ҍ��\\f\\u0018�\\u0006T\\u0000\\u0014x�\\u0017܆\\u0006�\\u0004�1V��OV�q�uK����D�\\u0012�b\\u001cI��op\\u0018_}hz3�fG��&�J�P�k_B|>4\\u001dn�\\u0014��%J�)�*T�@\\u0016�W�T�3g��)�\\u001a��1�e�]~�T7Ʌ��5�~��l���\\u0005�c�#t�t�\\u0006R�H��>�n>\\u0006��d����s��\\u001b|i��]\\u000e����$��0��x�l5�M�\\u001a-2���qH-ol]�����ޔg*\\b���[E�(�۲��BJcu\\u0016�� t6�A\\u0004\\u0019Q\\u0019\\u0018����ֿ�Єs\\u0014ﲰ\\\\V�w7�\\u0005\\u000b�;tQ3>3�5\\u0017*z|\\r[�O�c����\\ri]Hc�I���P7\\u0015����Ua�)\\u0007P\\u0005�5�9:��Y&�\\\\t\\u0007�Y���O\\u0011I��B��,c@ֹ>z�RedKrF`w\\u0017��\\u0014�\\u000f��3��\\u0006<k3ld�\\u000f��\\u000b�2�2\\n�ĉ����\\u001f�\\u0001S�S�̎0u\\nu\\u0002�\\u0000\\u0011P�sm5���H�(��{z�\\u0017\\u0017���b��*�<t�kID�7u�\\u001b�u���P�\\bP\\u0003oc^\\t\\u0015�M�t�����Β�:���[B@��\\u0004dUH��z�\\u0000�T�\\u001a�n��Y\\u0019��:�c�Q��'_\\u001a\\u0006d�vM�\\u000f��B�E+D�4'��yV3�»�6���(\\u0001-i�\\u0003�N�Gnr\\u001b-�\\u001f:Ή������Y����Z�\\u000e\\u0017��1ӛ0�'ur=*|���\\t�%��2E\\u0013�������F��<��$ƕ��0\\\\\\\" \\u0006��-콢X\\u0017�L�4�\\\\*DA\\u0011�Ջ_w>&��6C�u�\\u0002�@/q�ۥU��3����q�����9oY4�\\u001f���~g,/o�Z\\u001b-0\\u0004g#\\\\\\\"\\u0019\\n.��K\\u000b�.G�\\r����ܣ��\\fY3\\u0016 ?+%�װޱlY��.<���\\u0019�/�ީ���/9�2%�\\u00067DP6UAaG\\u0013\\u001bA����\\\\\\\"���\\u0014U\\u001d\\u0007�ś�CEW���\\u0000\\u0019�D��⺓��\\u001b���oƀXq�9�*G6�c���´�\\u0018���;;��k\\u0010nJ�\\u001dN�՞.tX\\\\�oJ\\u001f��\\u0017�.i{\\u0010��ɗpc�/�\\u0017���j4\\u0004xZ��t\\u00192\\u0017\\u0003��Ҷ��~�f���\\u001c�\\u0004V8��`���\\u0006&�F�O��('2]M�\\u001a��$K\\u001d��>\\u0015J��/S,�\\u0006DF&<A���a�� ��r6\\u0016��}U��M�jT\\u0002Գ��\\u0011�\\u001d�G���[�&L�|s���z���\\tS�ě��\\u001b�f9#q\\u001b�\\u001d�\\u001bʥ�\\n�%�a�$\\u0010�\\u0006�V���=����*\\u000e�\\u0006�J�W\\u0000\\u001f#[U'$�\\u001e*�P��\\u0002�y\\naٲ�ř���=��P\\u0015(jD6��\\t�)�U��n�\\bk|�~�{�$y�0�,/'���a���ΑQ\\u000b���\\fh�\\\\\\\"=|6=/D@\\u001eb����\\u0014��z\\\\|*�4�ur|�W�SE\\u0016Do4a�f�\\u000e�*eM6VL��}r\\u001b�;\\u0001�\\u0002���\\u0011��;���\\nE�J�!���>L�\\u0012����u5iȌjW['g��c{�\\u000f$P.�bON��(��bv�\\u0013 ��{|���H��Y�xܤ�Q�B�X��!��J�\\u0001*U�\\u0019d\\u0017Df\\u0017� i���\\u000f���P\\u000b��\\u001f�k��/M&�Bm-D�+����\\\\O������(>w��_�v���L�\\u0010e!�3>�\\\\\\u0011s���S����\\u000b0'�\\u001d˸�\\u001bz����:��8y\\u0019\\u0010��V��]�\\u001f���eb�\\u0012\\u001e\\f$�K:���mT��Z�.�������^%�E�؆���n,\\u0018�&!c�\\u000b|o\\\\�`����.H�\\u0014O��Ꮡ���\\u0011ry\\u0005�c�\\u0000.�\\u0010v��p�ЮS�z��~�\\u0016��\\u001f�#�P�}�\\u0006D*��I�Yt��SWOaq9��_\\nx�p\\u000f���I]\\u001a7h��RA�Q��F\\u0011Q�\\u0005@\\u0017�iN�b\\u0002�aʥ�P�<o�8?:�sY�n\\r��CiY��\\\\x\\u0001�)�A�#�z-j��E[�A��jF��m@:��NDmu����k2A;U�\\u0004\\u0011L\\b/���v>U4��:\\u0000�C�\\u0005������\\u0007�\\t�\\r�.�=�\\u0018SB`\\u0018�$%�\\u000e�SL0���\\n޻j<\\u0007Ɣѝ�)1gfq����F����\\u0004�Y��Sڀ\\u0003;\\r\\t�PS\\u001e����\\u001e�\\u0000�orw�\\u0000s(����\\u000f:\\u0019��.y\\u000bj]�\\u0003�\\r\\u0000�\\u0018�J\\u0014����\\u000f�G\\u0005��?�s�_%p��\\u0000�mɽΦ�;�\\r�ۍ���\\u0017$S\\u0002��k�j����z\\u0006B�\\u000f�T�{�\\u001a�\\u0000��Z�\\u001aT��[�H\\n�\\u0007C@d\\u000bJG�1�Z_���|�\\n�j+h5�\\u0016ŏ�\\u0013���c\\u001f�}��O��OKy�x�c���V�3\\\\\\\"qSŁ\\f�p\\u0019M��=A\\u0017�\\t� �Ö��o\\rY�\\u0000�[\\u0013\\u0011uy�y\\nr��\\u0010\\u0010.��\\u0000�^,�\\u0000k�K�׏�l~��<g�C,����W��[��Ԁ3�W#��\\u001f���ֈ$�\\b\\n:6�UWZ���\\u001b��[KjEQRW=!�?F�U�\\u0007\\u0011�\\\\�5����xY=�~\\u000e\\u0003F�� \\u001b��O'�6<�'�\\u0016�s�\\u000f@\\u0003\\u0001���h����\\u00042��\\\\\\u0016\\u0003�=\\u0010V�p�e+�-7�\\u000e�u�>.�_B��\\u0012,H#���\\u0019A2\\u001dC�׏�����P�J�nCCf\\u001e`�Y\\u001ei�I2ax=�=�f\\u001a\\u0001�B\\r������2BQ!ǖ|h�*\\u000b��o�4uu�Z�V_�\\u0001k�\\u001c<�3{�\\u001b�\\u0006��^d�%�\\u0007�ƇpG¼�)\\u0010���`8�۩�e��\\fh�YB��\\u0002��\\u0007Z��%��Ts\\u0019���2�\\n��\\u0000l+\\u001a�*E�&Y\\u0013�f$|+*�h�Y*T�L\\tR�J\\u0000�M������w,�`M�T�D����񁙈;n|k��\\n�Io\\u000f\\u0003V��'�h�@!_���\\u001d\\u0007\\u001b\\u001a�ԕ!�؃pG�?�=�\\b���4�%ſ?�Γ\\u0018�ەO\\tU�ѭq^Jf!y��\\u001a\\u0016�q\\\\�~��\\u000bt\\u0004^���gp�Ib������d0N�\\u0001P��\\u0000l\\u000b�� ��#���`d#\\u0001\\f�\\r���\\u0000Ms�v��I�\\u0000�\\u0015��m��p���W�)_�k_j��e nk%��\\u0002H�ޠ�7�R�1\\u0004�d{\\u0013������\\u0000���=�U\\u001a-�?\\u001a���m�\\u0012Bbc��\\u0016���]\\u001e��n3�Rl@kr\\u000b{_�P\\u0002l@V\\u0004k~��TU\\u0001C\\u00009\\u001f����U,@��;�Ӧ��\\u0005l�r�7��׋&�\\u0011�׉:\\u001b|��I����G���Ľ��\\u0011�M\\t�]h\\u0003P���f\\u001b3^�UddBL�{vԶ�ά�\\u0001��\\u00128�'N?�\\\\�s�')����_�����\\r)\\u000b����=��+.��[|id��2�%ʡ����*VN͖�D�R�!��J�\\u0001*T�@\\u0012��g��v;�Υ\\u0000\\u0016�|�\\u000e6�[���\\u00022\\u0003��\\u000b \\u0007B\\rCQ�I�#}kC�\\u0004\\u001d���$r��hr�A�`?\\u001a�\\u0018�׃��\\u0000I#�5Z��\\u001aFa�$���qZ�J�*P\\u0004�R�\\u0000J�*P\\u0004�R�\\u0000J�*P\\u0004��\\u0007R��Z�\\u0000_���\\rf\\u0012h�����c><�0$\\rC\\u001e����\\u0012@[��<���$\\r�.CHM�ښ7\\u0001\\f92B���.m�ޝ�v͒\\u0004d��v\\u001au�ƹ�\\u001cM��jBbvmT��|7��\\u0004u\\u0010���Ǐ�\\u0013������=�\\u001f\\nR�GI\\u0005�\\u001a��e�Z�D��#}���h\\u0003��=�(��\\u000e�! H\\u0012�@=}<M2���q�?R�\\u0017\\u001b\\u0005>����S�.�$\\u000e���E0��wH�\\\\\\\"Me\\u001bzT�\\u0000\\nP0<�\\u0011�K\\u0018�#����gV�F��G7g%�����ϙ��ĵ��\\u0017�#z��S�5��{o}+K\\u001a\\u0000�+X1�2_�\\u00114�5!E��e�}�(�Yq�H�]��\\u0000�PA��I��-c�&��\\u0014���1+\\u0018�:\\r\\t�\\u0017��$B\\u0007����\\u000b`\\r�kk���%��o\\u0003R��J�\\u00039f{�n��{ǭT0;kT��(=�^r[��״':\\b�+�R����\\u0015�6 u=)��R�XJ����\\u001b�R���L\\u00118��*�Ve �;\\u0013U�����<hv�\\u0005\\\\\\u0017�Y� ��Z�qq�\\u001b\\u001a\\u0019\\\\\\\"!A�\\u000b�[V�G\\u001b\\u0003�J\\u001eD\\u001f� ��~T;k�ʛ�$SL8-��nu��ZW��H�䵄��cm\\u0005����\\u0012�b��\\u0005��R*\\u001e��A�KhmW��\\u001fʗ��B\\u0003\\u001d\\u0006��Sw\\u0002S�]m�SDdR2\\u0011����W�F�\\u0000�a��eK:����\\u0017b}$\\u0001@�� Յ�«$Q��E�Ʒ#���\\u000b�0ƂI��R@��>�\\u0000�{���c�\\u0011���\\u0000N�\\u0000}\\u0007^�X�:�nO��*�%J�(\\u0002Q���S$�Q\\\\\\\"5Btܛ�(*/�b��VK�\\u0000�'�I�5��c����\\u001c�b��\\u0006\\u0005�W��:�)\\u0004�\\u0007���C��(Od\\u0017h��\\u0018l\\tm\\u0005�\\\\\\\"n�\\u0004G\\r�8��\\u0016p\\r���\\u001byդ��2g���Ec�\\u00108�\\u0003�CR\\\\�1�\\u001f\\\\\\\"49\\u000eC9\\u0005��\\u0006\\u001e=)[3;\\u0016crh�yDd+Y� �օ�DکD9�J�*S$�*T�\\u000b#pu� ���\\u0017�\\u0016\\u0015�?P>U�Qq�L��X�R�,�\\u00176���\\u0006�\\u001d42sb\\u0000��W��\\u001e���\\u0011�cڜ˄�?��-m6$V�\\u00047窝��X�Mv\\u0007iBܵ�G^�U\\u0004��\\u001d[��\\u001aS�s\\u000bH��8hE��[��z\\\\47\\u001a\\u0011��+LK!�'T��r;\\u001d�[����R���\\u0000���f\\u0007�6�0�\\u0000��6\\u0002e�ވa(\\\\\\\"�\\u001bmY��^.T\\u0012\\u001fD��A�\\\\��:S\\u00032\\u0005\\u0005�+�\\u0018t\\u0000��ގ*F�\\u0000m\\u0005������i�1cgd��\\u000b�\\u0014>�ԩTI*T�@\\u0012�J�\\u0001+E~���@H�6\\u0011�\\u000b�MX\\u001dA�C��PF�E�MU��\\u0012ƻ�:ԥ\\u0000��K�)\\\\\\\"�I;\\n�H�1R\\b>\\u001dh�����+\\u0015=-E�J�\\u000e\\f�\\u0019c�\\u001b��C�J`Vme�\\u001bv��\\u0012)\\u0019*Vy\\u0017�gaǨ\\u0007�u�]�\\u001cc�\\u0004ܑs��gϊ\\u0004d��\\u0015��(:�uQ�M ȞL��iM����\\u0014��&�\\u0015ㇼ�ףR\\u0005y^�\\b5oB\\u0011�\\u001d,\\u0001\\\\\\\"�P�}�R-�ʪR�\\u0011�\\n�|��T)�\\n%��ƨ@�\\u0007��U\\\\\\\"�TIK���AM\\u0012e\\u001a\\u0006bN��꨼V�mZ���fܲ��\\u001b��J�\\u0010�A�\\u0004W\\\\?wv�\\\\\\\"�(6�q\\u001b�\\u0000�\\\\}Jb\\u0018���'r��t�C�����\\u0000Sy�r�s�����o�A��\\u0000:L\\n.��^��H�,\\u0000\\u0007AcT�\\u0004�=أ�\\u0004���ي�+��h��x\\u0003�\\u00005l,E�H\\u001d����A�;[J\\u0012hDnW]7\\u0007Ι���\\u001f\\u0018:\\u000eQJ�\\u0016É�= [o;�=ɞL�r\\t++��k�+0*��\\u0001�Ft���c8���^p�Η� 4�k\\u001a�v��ʒ&���\\t\\u0016\\u0006ۯ�SN�ܰ���d{Nn=������˅'1?\\u0007�@6k0\\u001eeM.Nb\\u0003��\\tVUI#7�E\\f��0�\\u0005>3+�3\\u0001\\u001a����W�.(�$����\\u0015\\b4\\u000b�m���$��_PQ�\\u0016֫T\\u0011\\u001fPWh�H��}B�A~�u��\\u0018���$=���;iV d�\\u001e\\u0000���\\t\\u0017c`oҽ\\u0018Ŝ%��S��SzJ\\u00103��ة\\u0003��\\u001d7���A+C*J����|���L��z� �\\f\\u0006����J�\\u0013�\\u001c_�F\\u001c���\\u0000���\\u0013\\u000e����%bő��\\u0000��\\u000f�6\\u0002����\\u0013��\\u001cG@�9f@m��S\\u000e��p�\\u001aFTA�[����\\u001e;�\\t<C��\\\\\\u000bkj��Z���#����h���7\\u0011��C\\u001f�I�\\b ��F��a��\\u0003Lq�!_r�{�׸\\u0016�$�\\u0011#i'\\u000b#\\u0005.��\\u0016 k��-e�3ob�/U\\u0007-R�O\\u0016\\u001c�m\\u0010�OI\\u0000���47�K\\u000b��>�E�*Ji�\\u001e\\u0000�U�n$���w�\\u001e4~\\u0017b�\\u0019Ô!\\u0002�K8\\u0016#���\\u0002\\u0004�ʗ\\u001c�\\r��cG\\u000e�\\b\\u0016(��?�\\u001f\\u000f�싩�!\\u0000��UK|�x�e��u�\\u0004Ki�\\u0003鍊%����V��\\u001eG>66��Q���4��� ?�\\u001b�P��\\u0018�:k^��\\r�?\\u0001M�)^\\u000e>N��\\u001a�Hپ,\\u000f��ɋY\\\\\\\"u\\u0003rT�����\\u001f����@�\\\\\\\"��C\\u0002F\\u0002ى\\u001e���E��Ԥ���z�U�\\r�\\u0004|����>�*ơ\\u0017�\\u001b(\\u0000\\\\�N����HΓ\\u0007��;.<����*��oo�\\u0014�\\u001d}�\\u0016\\u0018@X���_Ě⑊:��\\u0011�\\u001a�O7r�l\\u0016|9@�\\u000b�h�~\\u0006�F���0�\\u001d]��E�F�\\u001aV�!x�FB�$�G�]�k�9��\\u0015\\u000e�7��\\\\m�8��8�\\f�\\u001b��Pn��RFݽ}����&\\u001c�\\u00190�3�Xz^�q{���w�\\u001aK�)\\u0010$G\\u0002h��u��^�5� G���[A�6�A�T�濨\\u0003������CM#��L\\u0018�ܠXF��\\u001cx�+��A\\u0019I\\u0005��IՉ��\\u0016#]��+D׹o\\u001aOX\\u0012�Ƕ� ,\\n�m�BF�eL��E�[[�Uu)\\u00078��S�\\u001d\\b�#.�]��&���\\u001a\\u0019\\u0019�n�+�\\u0000ڍ��y���/\\u0018���/�Ʈ��CkV\\u0007^\\u0011qj�\\\\\\\"��\\u0000�\\u0000zws��(��E��;d_�<�ܖ�]v�!�T�\\u0002����1���5�Ɂ��\\u001b�\\u0010�P\\u0013a�ܘ�T\\u001e\\\\\\\"�u��\\u0005{\\u0017��\\bK�:Z��С\\u0004�\\u0010�5So��\\t\\u0007�'���G_\\n�RF���Q�G�oJ�\\u0007U4\\u001f�}W��4sAŔ�+q��\\f��j�X�\\u001a\\n9W@�zZ��V�]8�\\u001b��cvNV��s\\u0014�y\\u0015 x���\\\\\\\"ɩu\\\\\\\"��g\\u001eE�\\u0019���sxe�\\u001e�\\u000fƐ��ob�Ӯ�\\u0017����#�|�Q�ЫJ��\\\\2�G�&#�!��!Y��q���_º<\\u0006_���^JPqk��M5��*���'\\\\��0J��\\u0000�����\\u0000:e\\u000eO\\fS�\\u0004�\\u0002�@\\u000b騰��U�\\r�\\f}�^���ot*�ǅ\\u001c�3a\\u001e���[t�~U�Wy&2̜˛H.�@���W:��,y���L{�6�\\u0001ӗ��\\u0016�d�,�#�IO�n.\\u0001o�/�zS�����݋\\\\\\\"B���\\u000e�m�����\\u00151���V%H���\\u0001����_g_w�0\\u0007�x��d�X\\u0002x�ȁ�Z��%ٽ0i���\\n:,\\n�1��\\u0016\\b/�q�Mp#h�\\u0019Y\\n�\\u0002���\\u001d=I��\\u001c��\\u0013�\\u001a�=�\\b\\b:{�h\\u0005���S,t��HɹQ��=j�,��\\u0012a�Lť�9\\u0018�Y\\u0001?x�>R�S�_�q<5#K�(D��J���\\u0014��%QG�\\u0002�jw7ژ�;�g�8$��U�\\\\\\\"�ʀ(��\\u0014���×�!��8�zM��t=�I��SE)�\\u0018\\u0005\\r�\\u0012F��X`v�ƁZ#|�\\u0017i>:�yV=ֈ5�R���\\u000fdh#�^�dyC١��\\u00027?�0콪<\\u0018D�F�� ����\\u001f�(���\\bU\\u001c����}�����Mɺ��w|A�G���=�L�DL�DYP�*�y\\u000f\\u0002<��!���ʭ\\u001a���ҫS�\\u0006��\\f����/\\u0006m��iR��EL�U\\u0016\\u001a\\u001b\\u000f1Y��\\\\\\\"�\\u001a�cj�̥\\u0019�$rĹ⿗�Ќ��R��ע�d\\u0011\\u0007�\\u001b�kX\\u0013J�\\u0003���H�פ\\u001b�b��.���\\u0000I�۸BN���ϋ�\\\\�!6\\u0015�:Pg�B\\u000e���?�:('�J8��J\\u000e\\u0004�}*��\\u0015�ȕKC\\u0001eۖ��ow0\\u000fV3|����J�7��W��r\\u0006ֽ/9�tx�O�Y{�\\u0017܃�\\u001f�J�\\u001cXR��\\u0013'���\\\\\\u0013m��O���~�Kl\\u0019�ћ�5Iy\\u0013ejW{�d��\\u0005`�*�\\u000b�k\\\\��'�Яݻt\\u0001���\\u0000\\u001ak�\\u0016���l�G#��E!vК8�@E�^�\\u0000�<)\\\\\\\"�3�P3CȺ��Q�K�R~됳#H�*:�\\u000b\\u0012<�U�D�+m\\u0005�2'k\\u001b��=kO~1���\\u0014�\\u0017&y�x�;2\\u000eW[�jy�\\u0002�a\\u0002q�s��<\\n�fّ\\u0016;����W\\u0017��DO�\\\\\\\"[�ʵ��|�\\\\\\\"�\\u0015��\\u0015\\u0001�ܟ:8��Td�z��׾�c�[������o���#�\\u000b\\u0014\\nۇԨӣt4��\\u0019 \\u0019�R\\u001d�\\u000b�m�R�Oqs~\\u0000S\\u0018�ׯ\\u000ed~g�[ɏ\\f��0�\\u0006�K|����\\u0012�\\\\\\\"�G�\\u0000����B��9��������/k_�x�˸�ה�R*dg��� ���,<��T�H\\u0015�\\u00182�0�\\u001au�!�$���[x��@�\\u000bJ�v��U�\\u000b�����q� �9#�0t#�Q\\u0003\\u000b\\fB�7\\u0015@\\u0004�W�&7Q���J�<{\\u0006\\u0017;j*��9�\\u0012Mύh�\\u0019�,i\\u001c�.K�sᥪ��q�ʒw�;�`I\\u0005b\\u001bz\\u0007�\\u0015\\fh�d���Pd�,�B\\u0011WrM���M-u3���-Z�T�� X���\\u0002t\\u001fT��A�N��ވ�D1(�]\\\\\\\"^>��[|�?u�J�\\u001cQ�_�O�?�:�7fv,�\\u001d���q��\\u000b��%�Z#��φ<i\\u0016W\\u0012[�\\u0000�Kt�vY����ܛa�<\\u0005R�\\u0015�\\n��ޞ�Sd�\\u0005���N�Rk/�,M�\\u001f�M\\u0016?m��fY�X��}<��7ڂ��\\u0007\\u000eP\\u000eTS\\\\\\\"�Q@�f����c�_!W��\\n\\u001c��v4۵���;�����\\u001e\\u0000믈ކ�y\\u000b��$R\\u0002�\\u000f�:\\u0001� �G$> \\u0015(L��0�.y\\u0012jǢ֊�<q�S�\\u0012|I\\u0014�^\\r�\\u0012\\u0006�UR9w�ݼ-��G\\u0004�H\\u0015Т7Vڟ\\u0011I\\u0014r6\\u001b����xc��Љ� Y���\\u0013����\\u0013\\u0015����om?\\u001a!\\u0003l�\\u0013\\u0013&k���um\\u0001�V�v��ܔ)?�\\u001bZ?\\u0011�F�ۈ�(���\\fEd��5UPs���Gc$L��K�\\u0015�+/�\\n�k�WO!�.M��\\u0003��AB\\u0003�\\u001d�W�\\u0017\\u00110\\u0005�\\u0003s���yF�~�^���B�[�Q̣��[\\u001a�^\\u0005�5\\u0016T�R��U���u�\\r�M�V�\\u0000tؙQ�F�6_�|\\u001a�V���\\u0011��\\u0000msxyM�/1�6��\\\\\\\"�K�1\\u001c\\u0000\\u000b�\\u000b[��֪�2C���ܾ᥾\\u0015��QB��`<:��\\u0014�n�)\\u0005 \\u001cG���B�fy\\u001b�\\u0012�z�I���\\u0015|��w\\u0006�\\u001c#\\u0005#���\\u001a\\u000e���\\u0000��j\\u001boR�%J�)\\u0001*T�@\\u0012�J�\\u0001(ŋ\\u0014@\\u001d�n7&���F�\\u0018�xo�\\u0002q�nFZ��(XP�i[Ҡ�|ǩ\\u0003\\u0004��+�!���4f/y�<\\u0013�2�\\u0011�\\u001dh\\u0019�}�9� X-��7����`3�6\\u001cY\\u000e3cR\\u001dm\\u001b8\\u001cy\\rƺQyX��+\\\\\\\"\\u0002���EG\\u0011�C+���dD�����؋�E�c�\\u0014R�4^�\\u001b�q�\\u001bR�_)oA��y.\\u0006\\u0014\\u0002�B���\\u0000�|�Og\\u001f%\\u001a6�\\u00007�\\u0000���\\u001f���c�@����\\u0000\\u001a\\u001e^�\\u001ff6-�k\\u0001�WRuZ�G�9o[7���!��\\u001f\\u0018a�hՙ��3\\u0000O��\\u001b���\\u0019\\u001e��ק\\u0005�U���s�\\u001f�2^;������I6W'����\\u001d�igZj\\u0011��H1�X\\u001a\\b�2Ź\\u0015\\u0016��\\u0015�7�sē�}�=��\\u0006P���^���\\n�!�7\\u0015i8RL�\\u0005�L��y�ō�>t@ˍ\\u0014\\t7�Th��\\r����\\\\)\\u0019��,6\\u0006��\\u0018�͘�$\\u0001n���C*\\u0006\\\\\\\"ěP�\\nf\\\\\\\"���Ec�a@���ƚ�8�c��$�EQvG6V��\\u001d�9T�\\u000e�Ԟ�ڞ\\u0003\\u0013\\u0016\\u001c��\\u001b�\\u001a���ycOy�3x��+\\u000e���V��jںJ�.�>>\\n\\u0007s��^;��Ҷ�g\\u001cY#%F�\\n�\\u0004Sr(P\\u0011p\\b�\\u0014}����\\u001dK��sn7��\\\\\\u0018'��\\u0017R��k\\u001f��GÍgxԳ\\u0005��u\\u0017�S5\\u0002� ����q��%w�M�ڍN��k��Q�n\\u0010�$��\\u001cn\\t_3Q{V>LJ�ݛ[\\r���\\u0014VWsƝV���k���,|�R �p����ޫ�\\u001b�[�\\u0006^р��Cq�hE���\\u0014*��Қd���)rO��+bd_K\\u0011񧑣a�p�.�^�*�.R@T\\fN�^�\\u0016$��;\\u000b��Z�\\u0005�4d\\\\\\\"��\\r<�õ�aq5Р\\u0006�m�0�\\u0000��#I\\u001c}�ʁ�Y\\u0011c<�f��\\u00004'c�L[��(ы�\\u0000\\u000f�\\u00075�!I�\\u0000}*m\\u001dh6���q�\\u001b��r1g��i\\\\\\\"[�7�7\\u0015\\u0007n�\\u0003X��u�MA\\f�QF���WA����\\u0007bO�Hノ�n|\\u0006�f.CA2��\\u0000}K��OA�\\u0007c��b��X7�<�^��p`���U�~F�cw�ܱK\\u0014ŭ(\\u001a�$�6�����\\f\\n]�*\\u001d�\\u0000\\u001d>5��o\\b�YFD�\\u0015�\\u0006^V��>T&~L�f��x�(�:\\u0002\\u000fJ&6\\u000bYw(�di��X�c�[A����\\u0000\\u001b�7*���,9B\\u0014��x�\\u0005�Ѩ�c\\bI:X�\\u001a�\\\\%�8\\u0016 tҧ��9\\u0007L��\\u0016\\u0016�1�1��>�_���\\u0013�ّJB���yhh�\\f<���\\u001eM�d֚I0nQ���Z8Q�v {��E�\\u0000(Q�k���V�^ܕ�7���ڴ\\u0018�H�Oi�\\rϤ����󤙤H���F��TܿBRǩ[\\u0011�ޥx\\u0012D�K���\\u0007q^�\\u0019Y\\u0001(�om(&I\\u0014�\\nE�ڏ�J\\u0000�$��*�^�j�)�*�K$-�&(�X��T�@\\u0006C�+1\\u0019\\u0012����?*�LȂ�\\u000f&�5��)F㑔=���0��=��˙�%_K\\r$_\\u0006�B�$lmD\\u0004��!�������\\u001e:0%�'�����t���~��\\t\\b��I�`����V÷��9���\\u0000Y�|/Y`�\\u001c\\u00123I{0���h��q\\u0019\\u001a6rUň����9}\\f�x�,�`�#%�7\\u0006�J�\\u001f�{\\t\\u0000\\u001b]��\\u001a\\u001ew\\u0012\\u000e �\\r�5X}�a�S��Uu�㗔:�):L>�ۥ˅=�xەƺ�I\\u001dh��\\u001f��F��LF���\\u001ecZ��r�%I�S�$�a�\\u0004X��s�0�{r*�u�N�}L[\\u0006���\\u0018a9�\\u0003{�\\u000b�H���(������¢炋hX���N\\\\\\\"�HE�\\u0004\\u001f�m6T3@�$6�M�6��4c�\\tK\\u0012\\u0002�_E�G,Bܮ�J�e$\\\\\\\"��T�kY'���k\\u001f�6�k\\u0012\\u0010��e��r2��Q�cf��X�}�\\u0016��04�\\u0004rC� �>u�3�<�2ؕ7\\u0000�;�K�8��Q�֦Ị̇���\\u001b�\\u0017��d�v�]�u��F\\u001e\\u0003΁�\\u0016D��\\u0010Y�\\u001e\\u0016\\u0015�QO\\u001b���SpoK09M��*4N<E�{����$ZߍeMhK\\f��f�İ��\\u0011v\\u0005A�ޫ�ܳ2�ۙ�Mʀ\\u0005��jQ�k\\u0003��*T�\\\\\\\"T�?���[��uV��MZ&\\u0000u�)^PC1��]�D|2�\\f�=���n����F\\u0004|k�5\\u0001��\\f-Ջ\\u0011��E��W��6N��\\u001fD\\u001fƆ�D\\u000eIR�Jb=\\n[n��[u��ʤ�\\u00109�64� J� ��0���gD�4i\\u0018RM��PƁ�S\\u0019�o�U\\f\\t�_%��t�Hk�2\\u0005�6#N\\u0015�q*t�j12X\\u0006\\u00111\\u0007cj�7�\\fr��\\u000e��\\u001a%l��Y\\u0010�\\\\\\u0012v�\\u001cʺ\\u0013o��^U.��*���4d\\f��\\u000b���\\u0000\\u0004��.*J���qU11U�h,j��\\u0012�+\\u0006\\u00193�0�n`\\u0016�\\u001b\\u000b\\n+'�fb���Â��k�M�+.�4x9f\\\\�d*E�婦�ϻad�I\\f,�ح�R6 ��b��0�´�\\\\g}>T\\u001dJ��_a�aM<gcX�\\u0007Ʋ,��6��9\\u000f\\u001ak�z�wf�'ʱ����m�,��\\u0007�\\u0000�����\\u000exɈ�T�H*J��\\u001a\\u0010kʲIR�J\\u0000�F,�\\u0019nf׵�z�5 \\u0013�,r\\\\\\\"�7 �CT�BP\\f�\\u0001��R�\\u0018`[�k�8���ƫܡd�ѡ����^��~4\\u001aH�n�G­&L��\\u0000��4�r_%\\u0010{�1q��v�p���\\b\\u0004��N4�\\b��\\u000b�J����\\r\\u0007$�*��y\\u0004�A�V�L�\\u0016\\u0010��\\u0002��\\\\D�t\\u0018�\\u0000�\\u0005T#SnMkh56ޛ���|Y\\u0014\\u000b\\u0011{�r\\\\\\\".�H�\\u0000k���Y�n|g�,�osm5�!�ɭ\\u000e�1��K �V2��l}�\\u001d\\t<�n\\u0015����sQgw�O����mkf����Y�@�s��..u\\u0014��#7+3\\u0019��\\u001a�l@Њ#�Hg�@×�)���E!�;+&������~\\u0002����\\u0012���c�O�\\u001a��Xl=�Q�8�L\\\\�\\\\\\\"\\u00056�?}\\u001a{vH*��^K\\u0015�F�:\\n���Íx��?��\\u0000��g��mh%?��K��\\u0012A\\b���K/��iavb�A�sE7liS��B�}D�A:\\u001aS����\\u0005S\\u0014p#^o��+\\u001f�\\u0000\\u0015��G�b��T�c�\\u0001��\\u0013��c�m63\\b�U������\\u001a�|\\u0013\\u0003z�iN����m�j]7�\\f�X��BE��q�&�n���P��\\u001e5uq���\\r�HĐ�\\u001e$H��Кu�a\\u0011�\\u001c�!�mb�\\\\H|Ǖr���:�{Z��Z����(�H�\\u0000NǊ�$0���ڇ:�;��t:C�N�ۮ�h>��0\\u0019�>ཬ\\u001a���9t�t�\\u0005_\\u0002�[�\\u0016��{�q�C\\u001b���uU\\u001f�������U?�q�o��\\f�Q�+\\u0014�4�K�����vʗ��9RuB\\b\\u0016�U+Ac��;�h�,�Y\\u001e�7n,<(�o�1c@TF�>�\\r����7R�A�fd��\\u000f��yH�\\u0002�\\u0001�\\u001f\\n¥A��\\u0001*�?� {^�e�v�cb\\u000f����/�\\u0000H��\\r6�kT��Yě\\u0002+\\u001a��,Z\\u0015���$�5������ƺ\\u001d\\u000fmul8�׈�A�\\u0014?p�\\u000bi�i�Rk���rw�3$�ɧ\\u0018����_�����#j�;\\u0001k�h���hH\\u001bW�\\t'z�҄&i���\\u0011#\\u000b�0\\u0004y^�Ȧ(�*�:\\u00004\\u0016�F)\\fR,�R�0\\u0007ʛ��C�\\\\\\\"\\u0007$�]kJ[�fw���L��\\u0010�}\\f�<��#\\u001f!�\\u0006�s��\\u0016O��\\u0006��\\ru�a\\u001b�¯�7d�?\\u0001̣r.|���Ȇ4��\\n�\\u000b�@>Wq�\\u0000�+�\\u0000t�\\u0006W�ܴ�����ug�����JU{�d��T����7�2�r27\\u001b\\u00067\\u0002���\\u0019y)\\u0017���j��R�\\rS,J=�U�\\u001au5�L���p.�\\u000b�Ln\\u0012\\t\\u0015��\\u0015�[�+�K�\\\\�fȉ}1F�\\u0007�wK�x�H����2\\u001fH5S3��u\\u00143�\\\\���v\\u001e\\u0014qa#��8�6\\u0000��򡥝�\\u0007_N�Հ�@�o��r:��Ŋ@�H�J�\\u0016=o�5�s��@��Yx\\u0012|z\\u001a\\u001a�Z���\\t���\\f��K�\\u000b���x�c[��\\\\X�\\u001f��>��W3-\\u0000T��\\u001a\\u0000\\u0018փ�w$�\\\\\\\"A�7�j�S0(�D���ogڽ�#�'���ئX�E\\u0011�\\u0006��x�u�@���\\u0011�e�OF��Eh����\\u000fFH���9��2x���LILaD�\\u000f��1ؖ[q\\nK)��Y0\\fqȱ�KJ\\u0000�B�\\u0002��\\u001a)�Q?rwT����A�-Z���7\\u0011\\u0013���\\u0000����\\u0002�Ώ�>Or\\\\\\\"�\\u0019\\u0011��S���\\u0007��a�H~��@\\t\\u0011'`\\u0014�\\u0000���\\u0000\\u0012�p��t�s����\\u0007\\u00068�$YD�{nK�b7,\\r��\\u001a��mm�]?Z\\u0004��\\n�\\n�߉��v��)\\u0003~��-\\u0002]N�X������kY����\\u0000��:�\\u0017\\u0017�m�����\\u0014��d&ې@��\\u0019=�\\f\\u001cH�uu�Q��j�O�!ѓ��r\\u0004_���\\u0000Ms�D'�D��\\u001b[�eڕ�64�̆�����C�\\u0017�,v�'���(\\f\\u001c�ܹ\\u0013��!�P��%�zy��Tŀb�(�F�6�0�\\u0018\\u0015>�� \\u000e��ҌF\\u000b�Q�Y9Am3#\\\\\\rR�\\u0000���2{�PF\\u0011=RZʽ\\u0007ƅ1�ȼ��p��6�|()b�')2�}�m����\\u001d���Y���'Szf�&]-q֓���4n.dq�6��Z\\u0012��0����X�W��`(��8l�-�\\u001aY�,q�L�*v��'\\u0006̩4�e�G\\u0010ݺ\\n�p�8\\n{$8e$\\u001b�T�x�nq��\\u0011j\\u0019\\u0003��\\u001f����q�/�ś�\\u0016a��0��_\\u001e<��5ב_\\u000f\\u0011@���!%@�΋Öh�1J<@�񩳶8���C\\u001e���G\\u00186�CiGB�^�ϊ\\u0013\\u0010�}H�|���lyV@.W�7�\\u0000�\\f��b\\u0018Ł�[A�\\n�D|��g�FT����5\\u000b�j^�c��5#P�\\u001b�����9�å.�$ၰ y�>\\u0007\\u0018\\b�˒PQ�\\u0019v�l�P|�BÈ�'���\\u0000QT\\u0001�~T�C\\u0003�O�\\u000e�^�\\u0000¼/&Z�\\u000b�,��\\u001b\\u0012\\t;U7�ױ�FSm\\u0001��\\u0012.#���\\u0000�Y����T\\u0015F�a���BG\\u001f3�#%��\\u0007�M�j�;�h���[��Sܸ�1����\\u0000*$po\\u0006\\u001c��\\u00028A�����\\u001ay���Κi��*���O�d�\\u000b���y$��9,Ɖ\\u0014I�Ω!a�&�\\u0000:;\\u0007�@;�,��\\u0011%Vw;\\u0001�\\u0005�\\u0000\\u001b��\\u0000���W���\\r���MK����;N�\\u0004Y!\\\\z]m�A���~GQJ�<�a\\u00033�g$���=�@\\u001b�zS\\u0007t�ÌcΥ�\\u001fB��(�\\u0000)��c�A�0.3�&�����*��\\u0010�=\\u0005ypU@�-{k�u\\u00143c\\u00057\\u0000\\u001dm`l5�\\u0000�YH{�J�$\\u0012 :��M��ɲs\\u0010�@G���ʇe�\\u001f\\u001f(2,tfx�\\u00146�5\\u001aPy�\\nȦ!�\\u0011��?[7\\\\\\\"�\\\\�e$�!\\u0005���K\\u0019J?\\u00176\\u0018�T{�\\u0017�_�\\u0001R�R\\u0012\\u0017��&\\u0001#�\\r��\\\\Е*SJ\\u0000�D}�20\\u0002Jl6���CԠ\\u0003?���I�|\\u0000\\u001f�'\\\\\\\"sy�i-�#zζ�\\u0013*e�\\u0014L� 4���\\u000f,ƥi66D\\u0000\\u0019�h�m�Z���:\\b�*T�\\u0003��#\\\\C��S��oK#\\\\\\\"L���X�\\u0000E�Z��� \\u001e�7\\u0004T��7\\u001c�\\u001e�.���\\u0006V:�rSQ$g�?\\u001f\\u001aS<�KM(�fE�\\u0018��4|ɦ�\\u0011�3�ۂ-J&\\u0005]��S�\\u001a\\u0012Ǩ�\\u0012�o�7\\u001f���|<M>Ŏ4T\\u0016�\\u0016\\u0000\\u001f\\u0001C,h�*�\\u0013��W\\f�cj��&�\\u000fl�\\u0016�%��-Y�P-ˁ`4�\\tz���E\\u0001-�c�Ee��\\u0017��6t�okZ��x��TU�}i\\f6\\u000e�ѨG^@iq��\\u0013�\\u0000!\\f�(%[��\\u0000:V\\u0015��\\u0004�*\\u0014q���uL��\\u0013ŵ�\\u0006��kۖ����61(��Z��چ�\\u0016E\\u0010\\u0018]n�Qn����\\nƞ��-��\\u001a��$�\\u001akC \\u000bn�\\u001dh��\\u0016N!H#cjj�\\r�=J�*�%J�(\\u0002T�N�\\u0000o\\\\\\\"\\u0018�b��e\\u0000�\\t\\u001aS�e���H�8���F����ˍ��\\u0004��E�}\\u000e�*�\\u001e0T�\\u0000�Z\\u0003=\\u001e8\\u0019����\\\\\\\"�}i)�\\u0015��#�WP\\u0003�B|Eb�\\u001a��\\u0012>\\u0014G��To\\t\\u0003ܿ\\u0011*�~�\\u001e\\u0002�ƣ]\\r\\b\\f\\u00059_N�\\u0016�\\u001e\\u0015)�@���V�\\u0002�,H��\\u000bt�\\u0012�q\\u001a�[+(\\n\\u0000�i�\\r��!eK\\u001aw�J�\\f��ٹ��kk\\n˺{yS���2\\u0001��\\u0005��Cc�I nmR��T�\\t��Q�������8�\\u0007M\\u0007QG �J��V\\u001b��R�k\\u000e4�j��7c�ʉ\\u0003\\u001eH\\u0018\\u0007<ylz|���6�-�nm��WxB8���5�>*���\\u0015I�\\u0005���C����F�C�\\u0015\\u000e@sdF?*bp�\\f8 �h��&����\\rl\\u0001:j�CY۲�Ԫѽ\\u0004ɉ�(/Ī\\u000f\\u001a��t�b<h\\u000b\\u001d\\u00161\\\\�7$��O�����}��\\u000bsʕ*V�d�R�\\u0000J�*ȍ#\\u0004Arh\\u0003�Vb\\u0015E��\\u0000���\\t���\\rBt����\\u000b��[�V�!`.5\\u001dj\\u001d�\\u0014��� �\\u0003܏#\\u0019��'�&�\\\\\\\",�0�%�7���\\u0018�h~�W�&\\u0019��oO��|�0��S0���\\u0000\\u0007J\\u000f/���\\u0014' хJ��_���Jb'%�A\\u0007j��\\u001b��P�\\\\\\\"��1c���\\u00001��SGb��{<����?\\u001f\\n2. ��\\u000f\\r-E�W���,�3�\\u0018�xF�\\u0007����Mj�{\\r/^\\\\��Θ���HŬT�O\\u0013�+'���-����LW���V�s@\\t_�䮪U�v�k\\u0016��]�'�c�S�\\u0013s��KykD\\f�\\u001d\\r�J�1j�wD\\u0012B\\u001c\\u000fTg�;Қ@J�*ȏ#\\u0004E,�`(\\u0000�߂r���Ļ��>\\u0002��\\u0004P'�\\u001a�_\\u001e�3X`�>:��9%���h���\\u0007�mcZ�\\u000fZʹ��ZX�\\u0013�\\u0002\\u0007�\\u0012)\\u001f�Ƭ�Ԑ\\t�_��ɧ�\\u0005����X5�,\\u0001����\\u001b�;i�\\u0002y�2�\\u0000��G�\\u000b�℗��D��|��˯ݽt\\u0004[[\\\\�mҼr[�'��\\n!\\u0004��\\u0004\\u001b\\u001d\\b�T�r�\\u0000�S��\\u001aʤg���#�T�\\u001b\\u001a�\\u0013��ն��Č�rěه�\\u0012�%#�l�����BzT����q���އɼl����`���J�\\u000b>H�\\u000f���A�֛o�8F��{q��\\u0011{Z��r3\\\\\\\"�7U\\rv��ŅgȎ&$+�\\u00127��)\\u00111�i��\\r�\\u0017'~��K\\u0019G���Gc�<�\\bݵ\\u000ez��V̈\\u001c^Ħ�R��%q�\\u0005\\u0007m�M��8׎��*�l<S\\tP�-�`5�Q[rs�\\\\\\\"�lH���\\t:�I\\u0017\\u001amK!�#��Z�t����\\u0016��\\u0007Ιd�-�KX\\u0014\\u0004��dFDb?��U7�%��H�'�����H�\\u001bV\\f��N\\nhWR�ȇ��I��cZ'$\\u0012�J�\\u0001*T�@\\u0012�J�\\u0001*T�4ѡ�\\u001b\\u001f��\\u000bԬ�\\u0000Q\\u0007W\\u0003�\\\\\\u0010E���\\u0014\\u0001�J�;��c@\\u001d\\fِE\\bqu\\u001e�w�[1g���n\\u0005#r��-|��ȅP\\u000e$\\u0013ᠬ\\u001d`�0�� ���\\u0016\\u0000�l>�,��%\\u0017\\bI\\u001a���Qw\\u001cX�]�֚�\\\\\\\"�5�w�}��V���\\u001f��K�n\\n\\\\w�V��D��-�ΓK\\u0018��@�QS7s�\\u001e�1�a���\\u001e���\\\\\\\"���T�rM��\\tR�\\u001cRJ�#R�M1{dig��?��Q��[]WR\\u0015[\\u0014T�����\\u0000�O�Ef�X��K������+��!�N�m�\\u0006�\\t�$ډ�\\ft�#U> \\u000b����a���PM+\\u0005�\\u000b_���hn�30f^J=��\\u001a��]v��'q�L�W���4��ͽ0>\\u0006]�W��\\u0012�B44����e\\u0002\\u0014��\\\\�.(^߁߱$h�$1��6��\\u001ae\\u001fb��q/r�2���U��(��P9j D{��X�m�ޏ��<�\\u0011G$�\\u0012[�?�n���s��#׮�콃\\u001a\\\\`�QMЏ�[�\\u001a�̴\\u000e\\u0005\\u000foa{F�\\u000e�\\nW�\\u0011�r��\\b\\u0004\\n/�e�\\u0004��֓�X�\\rf��|\\t�N2�TY�ZR�T\\u0010\\n�o�[q�^\\u0018��r�+��\\u0000��1�Y\\u0007�'�P�ð.&+�G+9K\\u0012�\\r�bn+E�W�815y{\\u001a��#Q�ִ^��\\f��Բ\\u000b��Gv�x�$��x�ˍ�,��/N{HQ�������X\\r/J�a�Y\\u001a4\\u0006�g�C�����M!�$�\\u001c\\n͵�tI��N\\u0011G@��u\\u0000z����\\u0011�L���G��#o��������\\u0016�)Y\\u0003\\u0010\\u0002r6��l���1\\u001aH�\\u0006^$�I�\\u0013~_M����ᒵ)����\\\\��Mb�F>\\u000e?����\\u00007�&>Lo�>+*8�)7 ��5\\u0014��\\u0000\\u0018�!�I\\u0016�&���*P�,�[�V�\\u0017�0�Q�\\u0012*+um\\u000bukR�*��ۗ\\u0013o\\u001bUj�%J�(\\u0002T�\\\\\\\"�9\\u001c�����M\\\\\\\"��E��\\u001e����\\u0000��8�1\\\\\\\"A�%\\u001c��Ԧ@�F\\u000b��O�\\t�\\f{Gn�(4�ܢ�\\u0010�K�_SO�� \\u0001aP�z(��~�\\b�\\u0002+�Ù�\\u0000��\\u001e\\u0002�k6��K\\u0006oȃm\\u0006՛��\\u0003�Bh��\\u001bVm\\u001a���\\u001d�\\u0018;(�N�6\\u0003�e'+i��E:�E���X\\u0010\\b���\\u0015HB�ኾ�J�\\u0003������]t�\\u0017�\\n\\u0011~W\\u0004|k(qa�kƁ��ܵ?mR%�,|*S�D\\fxߍ��ATu��o�S\\b\\u0011Ը����Z�/r6�Ҏ\\u0010�n\\u0002\\u0000F���!\\u0007%qR��\\u0004w7U�OO�R�񎭋� \\u0000�A�t:\\u001a$ GR�Jb%J�(\\u0002T�R�=U,�T]��Sx{V?�=˴��ka*\\u001f\\u0003\\u0018���z��<\\u0007�1B�\\n`Q0�XT��_Ʒ�\\u0012� (�\\u0016�\\u0001����\\u0017]~�\\u0004zV�]G�^*\\u0003a{^����+�6�*\\u0000���:��c&\\u00064�-\\u0018\\u0007�h~�ۑ��\\u0014\\u001dI��1^Wk\\b���b7C���ut�y��\\u0019�\\u001e��ZO̿��4�UR�k\\u000e<�\\u001fH����(\\u0002c�e�ߔjƍ�<?�+H�XS��ԟ\\u0013Z*Զ4��ǉu\\u0011��/D =4�TV�*X�PrЂ\\u000f���+t�VQ\\tA>�\\u0007_H\\u0002�\\u0014J\\n�=X����\\t\\u0019Zh�N:�!{U�V�(\\u0002��Ʒ�1�\\u0000пʸ��ۧ��,�d{�u��|k��\\u001f�\\u0014�\\nX\\u0012D��k�j�����V$9Rȳ\\u0002B�ō���~���q�Đ�\\u0018�]I:\\u0010h���\\u000e\\u0013��\\u000fu\\u0000�A��^~�b�\\fK��,|n�\\u000fƯq\\b�T�L\\tR�Z8�F��@\\u0015�AEcC\\u0017!�\\u000eW�}\\u0005^(�U(���T\\u0006NT�_b\\r^�\\r���X�\\u0000i}\\u0007�C͌�%�n�P���P�\\u0019�J�{�X��ѷ�j+�?(��O�\\u0015\\u0016|��tv*�|����Xc\\u0000\\rm������$�?�C�e�>T�N�f�\\u0015���$\\u0010lh�i���\\bH ��\\u000f\\u001f*N�j��Z���>\\u0006�\\u0000`�\\r0\\u0004(\\u0007�}>t�\\u000bL�N�\\u0006�\\u001e&&�\\u0019����\\u000fK\\u000f;�\\u001a�\\u000b+\\r�2F�;�\\u001f±�\\u0003*s�B\\u0017��AN�A�B(��ߥ�u=<4��8\\u0013�\\u0000�d�\\u0000Z}�\\u0000ʃ|i\\u0016S\\n�F]=\\u001a��eOv\\u0019#\\fP��\\u001cn��H�i\\u0017\\u001aA��\\u001c\\t�\\u0001%����{_��\\\\���r^�M�m���8\\u0019��G�#\\u000eA��nx�\\u0000:i��{\\b0\\\\I&�R?Q��m�\\u0003�\\u001b�!�\\u0001\\u0015�ܙ}1\\\\\\\"�_ż�����F\\nv����WP4�[���{�m\\u0019y��p����F�KPݣ\\u00033\\fO\\u0006$�%���E om�\\u000eK\\\\\\\"\\u0011�_I�\\u0019�i��2H\\f���\\u001d\\u0000\\u001a��xx`�$��\\u0000��?�$�\\u0000��T��v�0�k�&>��\\u0007κX�\\u0012E�\\u000f ~�:����*�X�\\u0007�iVϔjW\\u0015�D5*T�H%J�(\\u0002U�I~���Lq\\\\\\\"t�\\u0017\\u0016�n>\\u0014��\\r)2L%\\u0006�ܼ���\\u001e:\\u0001�Jׇ�Z�\\u0010���m�\\b\\u0002d.�[]�\\u0005O�\\u0015#jO�\\u000f�9\\u0003�oR�Q�+\\u0018T�R��V�������>,v\\u0003β����c��r7�\\u0005M�\\nK�;@�\\u001b�b�\\u000f\\u0005P�~�`\\t'�P\\u0019>˳�nA� \\u0001c�E\\u001c3�@(%RֻX�����\\u000b,nx��\\u0017���ٷ�wR���:�c\\u0013�#�\\u001aX5u<N�L�\\u0017n�\\u0018fJ=+�Ҟ���TNH^\\u0016�z\\u001clzѸ����\\u0000P\\u0006�-Z�G\\u0010�9�D7e��g\\u001cms`��&�le�\\u0006Hۉ�����9Y8�2����`A�*����;�Y� �\\u000e�)>f�o0R�|]��\\u0018\\u0011ɍ�.CE:[\\u001d\\u001b��}\\u000bx-L\\u0001���>\\f�|X���-�w�_\\u001a����f�u�\\u0018��\\u0012\\u00153�f讧��r�\\u0013�đ.4R��Ჲ\\u001a��o�P�\\u0001�t���2���\\u000f�S��\\u001fh;��o�\\u0005��\\u001eۑcqǦ�EH��x��x��*\\u0001\\u0016`<G\\u0016��)U@1\\u0018�\\t\\u0016�zM��4~̖r�(�摦@\\u0011�U�4\\u0002��Е�r�ȕ*UK��N@�J��\\u001d��H�@��_#��*��6D�(#id;*���;?��\\u0019cYsK���\\u0015\\u001f\\u001bjk��ć\\u0019=�x�$�@\\u0017��}�D�8��o���\\u0011���Y�q\\u0002�H�\\u0000Y�L��\\u000b��\\u0001�\\u0003@)�O\\u001a�TN$������M*���wx\\u0016L'�@d!��\\u001f\\u000f�s�\\u00025;�yq�b\\u0006���)���[S]\\u001d2��Ex�#�ߔއycCf:�WJ���C��Ð\\u0007{x�\\u001f�uΙ�A�+dȲ��y\\u000b��V�/08��\\u001d\\u0014o�\\r\\u0005�\\u0019�h�-d$r����2�d�$+\\u001c\\u0006B���\\u0003��mL\\u0012�F8q9�2+ir8\\u001b���\\u001a\\u000b=U�IP��\\rm��4��eb]\\u0016����-Y��%�P9�z�Ƨ2^�\\u0015*U�)\\u001fa�؝\\u0005Q%*V����}�C\\u001c�ة�\\r\\u0000V�zC\\r�\\u001f\\u0011^P\\u0001\\u0010\\u001b'�z�L�=Zx��[��\\u0003�.X�mq�Lg��'\\u000f�����q�d�Y�u~����Q�\\u0014)��K\\\\\\\"�[\\u000bx�(z;#\\u0003*\\u000fL��q�\\u001dT�\\u0004�\\t\\u0007qUM�q���wK����|\\\\�J�*U�$�R�\\u0000J�*P\\u0004��Nsb�#:�1\\u0001�Pv\\u0004Pp�$�1\\u000eR9����/�ٕ�I�U�A������UQZe\\u0013f�\\u0018����\\u0002b7K�|��ǉ\\u0017�#��-�\\u0011\\u000e��ڷ�qFeO�\\t1c�\\u0002�ą`O.���\\\\\\\"���\\u0016꾣{\\u0011�ޱ�C����ǌ@[�[ՙ�̑�� \\u000e#�o�j�X7\\f��Kpe\\u0016ԩݷ��\\u0005\\u0018ţ�$@9Q`N��C�@T����\\u001cT[�\\u0006Ǘƌ�����>��Ksa�I�'�1�iQ�!�m�\\u0005�T�Ƚ�g\\u0003���\\u000f.Tn{+fJWQ{_�(C\\u0018$��z R\\u0017\\f�T���z+\\u0012\\u0004\\u0016V<�&�f��*\\u0000�\\u001b3\\u001b\\u0013֋�2�����ڨk��&ƥԤ²Yc\\u0004��7?H�3i����1�\\u0005#\\u0013\\u0002uX�6\\u0003���P�duB�\\u001f�n�\\u0018|�RR6{\\u0019b�[��Ө�\\b�\\u000f�\\u0005�O\\u0011�����\\u00008ݩZX�\\\\ٸK\\u001b-�m�i��ռQ9*\\u0014z���8o��v�ƙ���sU<�\\u0006��󨽡\\u0015U,�\\u0016&���,��a�$�\\u0013���U�Z���\\u0015C 6�/b.<��c'v\\u000b ��V\\u0016��`�YW\\u0002^��$�c!�Ǭ�m��5g�͹���\\\\\\\"|o�V�z�UU�����d�H\\u001b�R��F�\\u001e#��Q&���A�״$\\u00182E:0<�\\r���Sx0\\u000bz�6\\u001f�7���G\\f\\u00168�F��'��8�,+a�\\u001d�Ƶ\\u0011�\\u000e*\\u0000\\u001e\\u0002�#�R܍(,ͥ��{iz�mMT�zP3����\\rW��_J\\u0000�y�\\nX�m}�6ڪZ�VpF֠\\u000fKPY&���\\u0014M\\u00071���U!2��x��\\u000b���aF`�����A�©�S�R��XqP/�qo*2\\u0018�\\b\\u0006�W��\\u001a��2��ՏB�%�\\u0003�n>���U��Pl<\\rZM\\u0000\\u0000�\\u0000�h�%^R��R\\u0017]�j���t�j_��K\\u0011�>\\u0015�-�\\u00126���A�Ưk|*\\u000e#E�\\u0015�S�\\u0000K-���U���P��\\u0000\\u000f�V顠\\f�EpU��\\u000b\\u001f�s�!��\\u001bu6�����=i?t�$���~\\\\\\\"���@�\\u0013,K����:���\\u000e2�wݎ��Avx�byN�Ǎ��0�5�\\u000bT����o�PP\\u0006�u�@����$\\u001e�����\\u0003�\\u000bߥU���uQ�T\\u0003��w�\\u0011\\r�\\u001f\\u000f\\u000b׌F��׏�\\u0016;��f\\\\\\\"'�����G7#r��ŉ�MV�J����oq�nF�\\u0017�ל�6�����~5,\\u0006¥J`J'���������(j;\\u0017\\u001etA(\\u001f^��\\u000f��hkQ�aȹ!��<��\\u0003\\u0011}���J�\\u0011-�U�\\u001d<��[\\u0001~�|>u\\u0003�6K\\r\\b�\\u0017\\u001f\\n�ߋ\\\\��>4P[�E�����Z\\fH\\u0019O���6m�L\\u000e/-X41��o�FvI\\u0014C\\\\\\\"�`��\\u0011�\\u0015�yÂ\\u000fjH\\u0014 bC\\u0001��\\u00147n�C9�l��\\u001f��S���K\\\\�&�SB=��,���v\\u0002�v���Y����Nƀx�>���\\u0018�U-z����\\u000e�lȧ���fP�:�B��+�&���SD��gR�x�T�{�t'\\\\\\\"%W\\\\\\\"5�Tl�\\u00007�Z����\\u001401n�\\u0015����a���\\\\\\u0005X�\\u0005-�_*�0�\\u0007QEǔʠ\\r��L��|@\\u0007\\u001d�ڳxx\\u0003�r��y�h��0,��$�K\\u001a��[OƓhjD͇#Kv���oa�1���1Yс�̤����\\u0013�\\u001c��/k:\\\\\\\"5\\u0010����\\n���-�*�,�8q9(�!��b~\\u0014v<q�/\\\\\\\"�\\u0012\\rM\\t,Q{|�\\u0003�z�2��}�t�6��*O�M\\u0016����cl��,�B�h����HWŎ�^d��d�,G_\\u000f:Z�X�crw5�+&vp9�\\n�ѐ\\u0000�.m���Jq��B0\\u000e�AЊ6,�e�Z��'CYޖM����\\u0005s�\\u000bV%��u\\u0005\\u0004\\u0007�yچ�j��@�C׷ְWִ\\r@\\u001ee���\\u0003O.�e\\u001b��\\u0014,#�g�$��\\u0018X]R0\\u001aB<ٴ\\u0015�y2\\u0014�~��2��\\\\\\\"�\\u001dǹ$arV\\u001cAk{��f�\\u0000D~5Ic\\u0011>����0A(�n�2�\\u0016@�\\u0018�x��Ov�����\\u001fi�\\u000f*x�.��X\\u001c���(��0����܁�R��p�������~\\u0007��!��\\u0007|��''���S�'?@\\u0002�\\u001e�8\\t���JyM��}�o�X�]\\u000b1\\b@6{i��\\\\^�\\f�\\r�����k��z�u���\\u0016\\u0017 ��ʓy�KL\\u0013\\u001a3�9%��'K�Ϻ�8�\\u0002j�)\\u000f�R�F�կ$�\\u0000�u�Khifc1_r�\\u0011�{_�=\\tbu��i\\r\\u0011�M��!���\\u001d\\u0003\\\\\\u001b|(�۸���X��tb66�k�e\\u0018��\\\\�\\u0016<������\\u001f\\u001a�Y �+�\\u0010�x\\u0004\\u0003c�\\u0006�׬����ڝa7��h�\\u001fӾR\\b\\u0003�\\u001c��\\u0010ְ'B+��_o\\u000f\\u000b\\u0018X�*��!�5���؃�\\u0001�^V\\u0017�\\u0011{���G\\u0007�\\u001d=�;o�V�@<�qʙ���,�%�\\\\\\\"\\u0002��>\\u0017�\\\\�\\u0019.'nAP3����xZ�I2.\\u0013\\u0011�(\\u0017\\u0016ܖ?�&�x�ف\\\\\\\"B\\u0001+�+��)\\f\\u0005�\\\\\\\"#��FE���ڳ�63H\\u000b\\u0019\\f�\\u00106�j1�\\t\\u001e6b�\\u0011�t\\u0003��\\u001d�&\\u0003�!i�\\b�\\u0004�\\u0005��X\\u001a�T��b���d�b��U��i�\\u0000�}-�4gs��E�Y$,G��\\u0000����b�ıԚ��\\u0007ݛ��晽�V�/\\u001e&�ޙ���7_����\\r�}�W3������8\\u001e�\\r����\\u001cO�]�\\u001fL��2x��J\\u0002FS��lLY\\u001d�LjB����a\\u00068�\\rH\\u0003�V��\\u001e�\\u0018E��\\u0000�,M�ۥMx��om��Y�X\\u0000\\u001e��p�[�\\u001a�\\u001ca���͉�\\u0003�mWu92�P\\u001a�\\u0003OH��\\u001dB\\u000e���o֘\\u001d,Q�P���\\u0007���ca��K^�kz�A\\u0017�\\u0011��#c�\\u0000z��\\u0018����V���ݶ$x׎\\u0001&ۯ�M\\bͺ�Z��\\u0012o���O��\\u001d*�6\\u0016���Bf\\fYo�Ճ�\\u001a���h�\\u0017��mC0\\u0017\\u0004�o\\u001a�K\\\\\\\"���ۭ�z�Yוȸ��ٸ�5\\u001d?ƱpI\\u0003�jb\\n��7��\\r�\\u0000��\\u0003��Gǭ\\u0001\\u001b�\\u0000=4\\u0017ډC{��k�&���-���𬧍$��;2�?:�\\\\\\u001d\\u0000��y \\u0004h,\\u0005�R3�e(�\\u001bu$\\u001f��(��\\u000f���m \\u000e>'C��uD��J�U���%��P\\u0007�N\\u001e1��0����|+|~�\\u0007�cs�\\u0006�3G-�\\u0000\\u000b\\u0001���\\u0001�ؑW;�h?\\u001a�u��`�_�w�\\\\\\\"^�'n�:�k[μ���V�1����\\u0019.-�\\u0000m��\\u0003A�\\u0007{׶�M\\u000f�\\u001d(\\u0011�::���\\u0013a�{cIҧBN�h\\u0019\\u0002��\\u000b�wڨ\\u0005�\\u0003��v��b\\u0005��O:�\\\\\\\"g�\\u0013o:@+�\\u0018h�ӧ��V\\u001d\\u0018:�\\u0003�\\u0000�>'񢻇�\\u001ePt��|�~ڷ�_�4��#p��\\u0016�\\u0014U�\\u0007K�T\\u0014UWʵU��Y�X�REʝ�l�i\\u0001\\u0014Vъ��V���,�Z\\u0005�x��P\\u0006�\\u0001^ UXu�I\\u001b\\n��B�қ�\\u0007n�*\\u0000�p�t��H�\\u0000q�+\\u0018�\\u001aĀ�\\u001e\\u0004��N�*����X�\\u001aUޏ���u俍Z\\u0006�z��������+TJ �z�kD\\u0001-m\\u0005x/W��ґPGpuځ�\\u001e�{ѿ\\u0017��$��͗\\u0015�\\u0017�P��4�1�nG!�h\\rh�\\u0011��2�m��[ �\\u0000A\\u0003�W�9��>�=)G�P��qA\\u001c_N�v��J�̌.4��\\b0k\\u001b��}�?\\u001arx��kܱ�o�iHT���\\u0000*2|�\\\\\\\"�\\u001bH��x�MKEQ�i~ �\\u0004\\u000f�5�\\u0000���)\\u0014��\\u0005�T0�\\u0006��Rh&0�\\u001f���H�\\u0010n\\u000eƩ�\\u001a-�]z�B�\\u0006�\\rc�kEk�<*X̓t�F<\\u0019���\\n����������cǊ�[�^'�K�Vq:cc\\u0015)\\n�\\u001c)~`���&�G�_:\\u0017�&�=��Y��3E\\f]\\u0014�e�\\u0002������|�\\\\\\\"s�y6DĂ�\\u001e�=G�\\u0001@G��<��K\\u001c6IcK�J�S�׏�kw�+��#<���H�Y�\\u0011o�P\\u0000���C�r\\u001b<\\u0004E�*@2�cXd�\\u000b�ݚ����(�Ĉ`9\\u001a�[\\u0006\\u001b�n�\\u0012���0c��#�\\u0005�ǒ0\\u0016�ՉY1��敽����\\u0016\\u0000�\\u0005��o�T9z\\u00196��Z�~\\u0003�z{ha\\u0006Ȧ�K�\\u0006�V=��\\u0010u����8�\\u000bc�'�]n�w�ֆ�I\\u0019Ė�`\\r���\\\\Y{��E8�\\bjT�[���J�\\u001e\\u0006șb^��\\u0001��\\u0001=�\\u0010L���Jt\\u001f�i��\\u0015�z��h��*�\\n��@�ے�2���5n \\n���Hg�Ҁ�P��=~]i�\\u001aU\\u001d\\u0014��\\u001a\\u0013�g7R��#\\f�\\u0019�t�t��R\\tQ�b���\\u0018�ԩÙ\\u0002�7��SFm��U�~c�1�\\u0019��#\\u001e1��Q�_�9ƛ/\\tc\\u0019\\u0006�̢�:\\u000f\\u0000k\\u0014�3e\\u0010��Qo�_p<�L��\\u0002°�M2F}��zv��5�_/\\u001e\\u000fW���T��\\u0000���0̍W\\u001a9�rR��Iac�osV��;{@�����x\\n\\u000f�1�\\t`6%T��\\u001bi�D���$���1\\f���\\nm�}\\f\\u001dx�\\u001e֏�@���0���aȯԃk�ڋώ8@����s� \\u0007_+��*v�#h�M\\b&�6�w~�'r�T�S\\u0004��\\u000fk�O�-N��$Ƿ��v<餜�s9dFrYp�T�T\\u0000�[f0�\\u000e�\\u0013�Q\\u0018\\u001d�~�w�A��\\u0010�%���o��{��ջ�o�\\u0001�\\u001e\\u0019$B\\u0014��2\\\\\\\"�����5n=�g�\\f�8�\\u001b\\u0001\\u0010�I%���\\u0007�V���\\u001cͶ����\\\\\\\"a\\u000e.��\\u0015[5�P|�{�\\u0014�\\u0011$&E�^�*�5Ǽq\\u0010YH\\fͻ[�Z\\bɏ\\u0013�$Xj\\u0016�O��^Jk�\\u0014�\\u0007-�A�@SC\\u0013az�t�\\f�\\u0011�y\\u001d|��d:Z����O�L٘�WʼүcP�Y�T\\u0010+x�1�j�Xj\\rccZÍ4�\\u0015\\u0014��(p\\u0003�/�\\u0019�\\\\\\\"D���\\u0001T/��\\n{\\u0017q��~n\\u0015ɰ��a�4���)��Y��\\u001elr5Un.��\\rF�ۤQƈ�r\\u0010YK\\u001b���֧�����\\u001d�U \\t���y*#\\u000e�����\\u00037���w��\\u0012�p�I\\u001a���s�PY��\\u0017\\u001262���\\u0000宬�T>�G;[�\\u0015��G\\t1��Zr\\u0018��ڝv�1\\u001a���W]�$R�_ޙ��V$�����?zT\\u001cQ���cZ:�XN=����gr�p�\\f�\\\\\\\"�8\\u000fS���u���%F���Y]��bn/DUd^HG^��E]�M�\\\\(Ζ$�O�\\u000e��x��\\r�u>�\\\\>��:��ڒ�ꑃ}��\\n��Ɗ>O\\u001d�\\u000b������+Y-F�>JA6?(�\\u001e\\u0017�ZͶ�XR׏\\u0015�E�k��`)�d*\\u0016HАK\\t/�&�{r�E�p,O\\u001bhv���PY;H���3H�\\\\�/o\\u0015��Y\\u0006~%%\\u0001d]���\\u0011���\\u000e9P\\u0018\\u00070�\\u0016Gm\\u0017Q�\\n�\\u0001&;$��t>�.n�k|���\\fqxJl�\\u0016�\\u0000���Dj�ɉ7PC/Bo��A\\u0018�\\u001fd\\u0000�5Y����@|�d\\u0013FB�\\u0018ʖ\\u001cmŘy��=G�\\u0014��\\u0010\\u0012���M�b)=;�l���`\\u0003k�ǭ�NDm\\u001c�0�:�yӫؖ��&[œ�R8%W�}�]\\u001cY\\u0019K\\u001b0Q��������\\\\���V�K�\\\\*1\\u0003�j�з5\\u001f@\\u001a\\u0001mi[SJ���7nx�\\tVUd ��7�=F��W+������\\u000b+\\u0010�m�@��~\\u0019ySaEu�\\u0016�$ n\\u001c\\u0002�?:Y�{,�@�:���Kj\\u00157\\u0007���~⼴ �R�hf1흮\\\\��đ�Ү��f��x�\\u0006����\\u0012[�)���Kvx-�\\u000eM�\\u0000����DG�\\u0017�\\u0015�8��L�-�����\\u0000E~�T=�\\u000e�\\u0001𸮝���X\\u001f\\u000b�ɻ|\\u001d9\\u000f�_�셟,�qpb�.9ӗ���^�~�3��\\u0003��?n@ޗ:��@5�v����E5Z�\\t�R�8�W9�e9\\u0013��\\u001b}5�6\\u000eGN'�K�;4������u�[q\\u0016EQ��\\u001c8�I\\u000bO\\u0019\\b�l<�?-\\nR\\\\�WF�%�[�5��\\u001aj�3\\u001f\\u0018�ab�x���}�\\u0000�Y�۔L����n��.�ش�1�+\\u0012\\u0016\\u0017 \\\\�\\u0002�9�I)�Zыh4��Z�\\u001f(�vq���\\u0000�A�\\u0017rǩ�F\\n��*T�\\u0001X\\u0005VR�y2�M�\\u0013E�<�74\\u001c\\n��q����\\u0012m{�Li���\\b$��M�m6\\u001aH�^�+���d[\\u000b���\\u001f�Ս�\\\\\\\"��hV`Xk��T�\\u000f:\\\\2T�/ \\u0004�y\\u000f k,���2\\beA\\u0014���_�֬��T!`ş��\\u0016�\\u0015�Tl\\u0007cBI���h��=�A�\\u0018_mO��7���P܂A�c\\u001b\\u001empv\\u0015�\\\\(��i�����0 �\\u001du��',�oo�Y��S\\u001a\\u001bI:F-\\u0016��:\\u000eIX��b�q^7�w$�K�\\u001boZ%\\u0002\\u0017�'\\u001c�a���}jbc.C0f*\\u0014\\r�����\\u0005�\\u0007O�{�̂F\\u000bț\\u0005�i/�\\tܮ^,8�\\u0012\\u0012�����x��m\\u001f:����\\u0013$�s�y\\u0001W*�m�K-\\u000f\\u0005c�\\u0003\\\\\\u0000\\b�ƕ��>�k[\\u0001�\\u001cBO\\t��V׫�\\\\\\u000e�|��\\r��\\u0010\\u0006l\\u0000\\u001anj���U����\\u0000cT4\\b��5�ᆇJ\\u0006xo����z��\\u001b\\u0002|\\u0005\\u0000U�(�|�\\bM�>5\\u0019����וI\\u0012�x����sL��[\\u001dI��XH�^�z��b\\u0005�?\\u0000�F� ��B�5?eQ\\u0006���UU@�=�UoW�P�lj\\u0006=4�\\u0011��{��j�J��L�F�&��ԧ3 �.��/�`2n猢��[n\\\\\\\"���\\u0003�FO�\\u001b~\\u0014��!�\\u001e��\\u0010\\u0014\\u000f\\u000bV���\\u0016\\u0012G5?ΖԠ\\u0007+ݱJ��)=\\b��@�\\f��(b$��-��J�\\u0012\\u0015�n/�\\u0001sj\\u0000m��\\u0014\\b��\\\\�Ml\\u000fZ�(\\u0000q�\\u000b\\u0001Z\\u0000|(\\u0002^��lw�i�[��:�\\u0003T>��W�ڲQmo��Uf�,/@\\u0016/q��Q��\\u001a\\u0013~���뾇�Q�\\u0000\\u0001;��N@�#�t����\\\\\\r�yv\\u0004\\\\m��*�K\\u0010:P!.n3�3���ɸ i�J\\u001a�\\u0016[t�\\rip�}�p(\\f\\b�\\u001e\\u0006�@.��1D�\\u0010�ʺ�nk\\u001d��;|�c<�L\\r��E�`v�i\\u0014�y��@��>L/��[�Ԣd�;�\\r9\\u0010�}�\\u0006q�wi�W:?QEaBZ_�6�\\u000f��O�\\u001c��x0}�<Ó�\\u0000GA��ؑ���HڴR�6޶�5 \\u0003��*d� �뿀�kP\\b<A�c��k�\\u0018\\u0007[hmk^���x�|)��Qp��Q\\u000b�Zه�\\u0005��?�Y!S����\\\\\\\"�%\\u0001���\\u0000H\\u001e\\u001f�(\\u0001w~A�@Yx����\\u0011H\\u0016����}�\\u001c@�]��\\t�����Oanj��ց����lF�\\u0003<j�Y�2i�\\t����j��\\u0004�\\r*�V�t�2�6������yV�\\\\\\\"\\u0019�\\u0017>]Mi�(:��?�\\u0018����y#q��h|���\\u000f���-`x���\\u0000�ZM�f\\\\\\\" M��Lk/+�z��{�,<KH5�[Ƶ3(�\\u001dI�l �\\u0018�!��h�tJB�.�4#o�c�\\u000b��\\n�\\u001b_Ə\\\\Q\\u0012\\u0005PV1�[{Vn�brZL��*���\\u0001�C�G��[@\\u000f�V�E�?@��(7:\\u001aK#<�E$(�EbZ�\\u001d?\\u001a�F�w�:�\\u0006�up\\\\\\\"�Iޔ?��\\u0013��Gp.z\\nTM�>:�u�M�R�JГx��M\\t�\\u0007��bEu\\f�CKj��ѝ6;���i�jR�j\\u001e$֮\\u001e�\\u000e\\u0018r\\u0007J�Z��E�+^���B��c\\u001djF^_s�okG����\\u0007i|h�y�<�eK\\u001f\\\\��W_�� \\u0004Z��80 y!EG?�ō��Zi�<���\\fi�Q$��\\n8ے3��'��i���\\b+�_&S�O)U���\\u0000���+yU���{O4�K}.,�o���$��ʜ�*�\\\\l�sꙈ=\\u0018�U��@o۹K���Ѵh�\\u0012\\\\\\\"�!w��1hѝd7�N���mC~�%!��Ȼ<��\\u001f\\u000e��@��qǗ��Ik\\u000e,/���o��B'x�\\u001e��61\\u0006A����\\u0000(�feH\\byX��^��\\u0015��L\\u0001�@�ƛI�`E��6��+D�S+_9\\u0014T���Hd\\n��\\u0017�^��S\\u0011*T�\\u000b�6,\\u0001��\\u0005�GQ`t\\u001a�7\\u001b�N�iMӉ\\u0016\\u0002������\\u0007�^�i���9'9�7�q�\\n���&���v\\u0014\\u0006w)2�\\u00008r�\\u0005�\\u0000��\\u0000��X������p��3\\\\�d��\\u0000��\\u0017�'�FY#�}�\\u001b\\u0014\\f,9\\u0011��\\u0013B�yP�#dx����S�Ӽ\\f�\\fq�.��*��V{�+�/\\u001f\\\\\\\"\\u001e��ZV\\u0005��r��=V\\u0000h~t�\\u001aB\\u0003���\\u0002gǚE���c��@�hE����}\\u001c֑o�[�?��Fʸr�;�C\\u001cʊM�A�_sG!3柘\\u000f\\rkE4Ϸv�|�~y��\\u0007���\\u0000\\u0016khv��`ǎ�)�׷)\\u0010\\u0016���|�(��\\fX��\\u001bXi���\\u001e?�\\n��\\u000b��;���_��{��\\n�%��q�A)妖SRY\\u0012L�QM�5��\\\\\\\"�RIץh�Q���C\\u000f��P��\\u0001c^2�@\\u000fƀ���\\f�\\u0013���s\\u0019��ji���~�����RW��W�����\\u001b���.����Y>�ۮ��\\u00032�\\u000b�\\u001d���e\\b_3��V�qЋ��n��Hf\\b�\\u001b\\\\�ک\\b\\u0016Bï�\\u0000Z��a}oEI�Z�A\\u0007��U�̀\\u0002�\\u0017��Z�2AB�XVa\\bm�u��M\\u0007��\\u0007�Z���������\\b��v�W�\\u0011m���؂\\u0000�J��.��P\\u0005��A\\u001b\\u001f\\u0001�ʴ�\\b#N��C���=�-�=\\r&� }�\\u000f줣^\\rc�jM]&H��e���,z\\u001aS�\\u0004C9Pr;\\u00129\\u000f\\nH\\u0019�/o�{3z#����\\ni\\u000e,P�\\u0018��-��M\\u0010E�æ�J�\\u0018X���W���׌*\\u0003a@\\u001e�\\u001f¬o��Uca��[�b/j@z�h5�D�PM��H6\\u0016�x�Wq{u�L\\u0002\\u0001\\u001d~F����f�3[o:����\\u0016 ��\\\\\\\"�؆]k��[Z�*��A��z\\u000b\\u001b���M\\u0003&��\\u001d|���<5�W�o}��ɘ\\u0001��rh\\u0001u��G\\u0007�\\f߀��\\u0015@\\u0015\\u0005�t\\u0002��1�!��r��\\r�����\\u001cl�\\u0011�֢�G�*��\\u0015`*\\u0006z�+E\\u0014,�\\\\\\\"\\u0017D>�{�b.�GC�:V�x�LD�\\t��boŗCq��j\\u0000!�c��bo���ש�\\u00191��96P/ko��9%��Z3mX�p\\u000e�3U�\\u0012�J!T�!�\\\\��c�\\u0000\\u000bQ\\u0000\\u0018ٱzD7���\\u001cv\\r��}�ګ\\u001c�\\u000b��\\u000b\\\\�u���\\\\\\\"��ǒi�&U�\\u0004\\n�u�\\u0004����\\u0000Ҏ�\\u001f\\u001f\\u001634�-\\u001a�y��\\u0002__!U\\bi\\u0004<|����\\u001a\\u0015��O�'�\\u000eV\\u001bzv\\u001a�+�~Ꮧ4��rDi\\\\\\\"?GI\\u0005�/�����>\\u0015��s,N#}M���\\u001f��@7\\u000b\\u0001��\\\\yQ�\\u0000Ov1�\\t�\\u0000WQ���c:Fw�N��+\\u000f|���m�\\u0002�\\u0011��e�h\\u0007�E�\\r\\u0006��rN}��2��INzj/j\\\\�\\u0018\\\\Q��*�\\u001d@�©���G�\\u0012\\u0007�B�)�\\u001c^3j�R��c�q��b\\u0004)��]�\\u00155�\\n��\\u0013�-1\\u000f��xĠ \\u0000��r#�?��:��\\u0004՛KU\\f�\\u000e\\u0013=ى V�\\u0004)�u�Da��\\\\\\\"�!�����d8�l\\u0019�)&���\\u001aNѶ\\tv����fgm\\u0017�6\\u0000\\u001a���hQ���X�\\u001a /\\u001bM(b\\u001b�����F����1���@(�\\u000eB�o�\\u001c�_M�Vj'I9�p@;�\\u0000�^�r.��<�4~\\u0016\\u000f�3�L˟rȲ\\u001e�\\u001f�Ddf<�,X�� <d}�\\u001b��)ri��3r�@��᫤*\\u001c�\\u001e\\u0000���22\\u0010��ɶ\\u001bS\\u0010u�y)\\\\\\\"��\\\\lv�=\\u000f­\\u000bܿ�[�\\u0015���\\u0010����Z��ȃeq,,���$\\u0005��O��\\nQ#\\u0019�H*\\u000f\\u0012E�\\u001b�\\u00169�X�7o��s\\u0000�\\fwy$��}苂<A�\\fm����Dӈ�[�R\\u0002�É��\\u001f�G\\u0010H�ϟ��\\u001eM�R�\\fOe����Q���V$3�'{��\\u0002����z�\\u0010�u�V&�8\\u001a\\u0006_\\u001e��$=\\u0002�\\u0006Õ�~�7u�|�`��+r\\u0002��q�]��K\\u001e#k�k,�����pW��Nw\\u001c��[RI̖�*<�����\\u0011��\\u0018d�,B\\u001b�}\\u0005�4<�9\\u0019\\u0000�D��\\u0000K+m�\\u001et�*U8��@̬L��\\u000b��\\u0002��\\u0016���I\\u0015�k<M�`�:jړ҇����\\u0013Ȇ7*zUi�q�%�2\\u000b\\u001eV�R꺹Rce\\f����\\u0011ra��5>C���p�2�(��UO_3�M�����\\u001aE�+Ʊm>����:[�S�\\t��H�u�\\u000e��j���R\\u0002�Z����/��K��\\u0000��A�Y��}-�;R��'X卐��Ŵ�uё�\\u001bu6?*��\\u0013b��\\u0000�\\u0005�kY�X1���V�ϱ�\\u0017ҿ�����j�G\\u0011���t \\u000b�4v>,\\u001f�k\\u0003�i%�7ap:�/�\\u0003.\\u0012eeD!_k\\u001d~��l\\u0018�_zi\\u001fn��#�,L�t���ˍr�S�Q������W�ao\\u001a#��ے\\u0006c�2�\\u001c�����Gi�O���\\u0002�ݺ�j�ْɓ��0����k��t���\\t�&6$\\u001b0�m����\\u0018��/��֯�-��[cd���F\\u001e����\\u001f\\u001eDm#D$Wu:��\\u001a�\\u0000z��$���D ��ZG�i]�X\\u0011�[�\\u0000��JҔPސs^���g`����\\u0013{�{��$��/�0@��\\b�\\u0012\\\\\\\"\\u001bz�j\\u0014\\u001a�cD�3�G�����,(\\\\���F��*���U�o�aֆ�\\u0012\\u0014���-�\\u0016��#\\u0007ai#Q�ϥ$��\\b��*P�\\u0000�snV��iNY�ᇚ9=��B\\u0010��f���yX/�5[�\\u000bo��F�䦭(X�-�8�\\u0012\\u0006��/��u�\\u001c��P�Z�N�č�z�\\u0012\\r^`ö9(�{Ƭ\\u0012��\\u0015�q�A� �3\\r/]\\u001fl�T��\\u0005-Ā\\\\\\u0013N�\\u0016��\\u0019u\\u001c��Tr\\u0000ڷ.�iZ�@Ҽl�m�5(N��͔��Z��B�!\\u0003Ƙe吤^���ؒ/Z���\\u0013��\\u0001�ֲ;ы��j4\\u001dM\\t\\\\\\\"�vS�6�����*T�\\u0010ok�G3����4�)?��di\\u001ah�ڹ�y=��C�>��Zu�\\u001c�\\\\\\\"�F\\u0005�t\\u0003�k.ʦ�u��n\\f�,�����\\u0017\\u0007���^Ç����� \\\\\\u0012\\t�����:���ź�[^�0ډ\\b�5EgT\\u0000�\\u0000�z\\u0014%\\t�\\u000b% �&0іR�l��\\u0003n��َ3�YY\\u0015#\\u0006�\\u0016�f#J�uƅ�+�/.��\\u000b�V\\u0018�\\\\��쒋5�#m�P�P�+2J`l�y\\u0011�\\u0000�R\\r�\\u001dO��i\\u001aAd*��\\\\�m�ߍF\\t�y#r��\\n�\\u001e���j�M\\u0010��B-as����4��e�t%�Ӗ����R��\\u0015�\\u000f\\u0013p�\\u000b�\\u001aݙg,\\u0014�����AK\\u001f��w\\u001d\\u000f�Uu%��m���\\u0013���\\u0000ºy\\n��J��}ֱ�'\\u00137�26F�#\\u000b���[�O�)\\u000bK\\u001c��<�d\\u001c����u\\\\e��!���#��d\\u0017Ov\\u0004\\t/��\\u00197�A��Xw<̧wfb\\u0015��\\u0007��b*�_�0���8R�Tz�ZU������\\u001e���ߘ�\\u0000Q��vZ���`U*T�I�>�\\u0017���\\u0017�\\u0000ن?��_ƌ;U0\\u0017���\\r�Ă�\\u0000�E[�5�L��\\b�\\u0011Z\\u0013Tj�\\bǍ��W�mVA��&��\\u0003#TcWj��1\\u0015cv\\u0003��Y�d�G�nM`z�i��\\\\�Lp���\\u0001��ԉm.R�k��(ߑ�e��\\b��{\\u001a~�<\\u0006M��@�\\u0014��\\u000e�ߥ�`��^�=E�5��v�\\u0018D~�c�V��]�$�R�I�d^n�{r!o�6�\\u000e+��\\b���c�>�?���H�vV\\u0004���wt�ɋ��\\f\\r���jm;\\u0017N;��*�\\u0016c�d-Ǩ�i�^d�M����\\rJ��A\\u001f��ѝ�|\\t\\u0016,��#/���\\u0005�0&���^���\\\\\\\"�\\t��S�\\u0001�O�@)\\u001e<������\\u0007���5������BF6ݺ���\\u0012\\u0015olh���h^V%�6�����|OSB�#\\u001bX���U俙�y�\\u0003�M�7\\u001b׷��ע��RTY\\u0005��|4�\\u0019Pvcc^\\u0013BG��d��rSpE5�Lpʟ=�T�\\\\\\\"�\\u0001T\\u0004�\\u001f x�\\u0017���y\\u00070�\\u001c��[\\u0010�� j�Z\\t��j���U\\u0000!\\u0005�f�so���U`8�I�Q�`w�^8\\u0016�j��<�P��!���ʼ����zu��\\u001f`)\\f�\\u0003��UrY�ڮ\\u0005��2n|(\\u0003�C��T�ݶ�V�H\\u0011I=(&b�X�i�&�+H#�%T�N�\\u0001Yѝ�Eݺ�\\u0001�$`��B(\\u0001F�U�\\u000b�Qke]h@YE�{�m��T�_�\\u0006mo�U��\\u0019��\\r����}O�G�Fy�\\u001c\\u0013�S�}���imZI\\u001aG.۵V��R�J\\u0000�*T�\\tFv�\\u0004�N��\\u0007W�V��/�x�\\u0000��D�0T��}7\\u0017\\u001a�Tt7�ZR�rf\\u001e�,�.��m֚{�(\\u0004ӣ5��8\\u000eDZ�\\u0002�<��?\\r��ia�\\u001c��H��q�En����\\u0006J����ά˷O:ӊ�\\u001eƪV�J\\u0000\\u000f I�F\\u000f1���ɤ��Y/��A\\u001fʟ������r7+{li�\\u001a\\\\\\\"Έͣ0�yڽ�\\u0004\\r@�V� VNk��\\u001f��ak��\\f�Xnnw\\u0014>bs�ŵ*O�kEZ�S��z�%\\u0011�#Q��\\u0000*\\u0000\\u001b\\u0006\\u0018�\\u0011.\\u0000g\\u001a����ZG�܊q�k�@\\u0005yڦ�E\\u0012�\\u001c��oc{��9\\b\\u0001H@,�F�Ƴ��I\\u000b'���1[�?.��@���E�\\u0000\\u0000�^$@؞�+_H6\\u0003SR�w#� \\r�נ\\u0002��A���ʣ��K�m�\\u001b�K8$�\\u000e��\\u0001��@hÑ\\u0004�\\u0001��\\u0001{X�F���գ[�D[So\\u0003�O�l\\u0015.n�[RO�Q@�!fC��G\\u001b�m���\\\\��\\u000e�7�Td*.�R�����W��0h�\\u0000��\\t�(\\u0003\\u001e�')c�\\u001f�\\u0016#��X��Ȓĳ\\u0012Iԓ�������\\u0005�IҳcZ\\u0011TaP36�؞��\\u0015B)�K\\u001b���ʭj�\\u0014\\u0001�\\u0016�V2¢%訣�J@\\n0K��Ʈ;D��q�\\u0006�ƞ\\u0014\\\\ka�\\u001c�\\bG;$r��b��`\\u0013���[�D?�\\u0011F�\\u001b�e���^w��X�\\u0000@�M\\u0001T��؏U�\\u0012\\u0007�}(�\\u0018%̐�\\u000f\\u0015Qvj\\u000e�\\u000e�\\u001cq�<�@26��]?\\u001a��ƍ�tEu��O@�\\fX��\\b9\\u001b\\\\����kIei�\\f\\u0002�� \\u001e�k�Rh�2��=�׈�;\\u001a\\u0016y����s�Q�6s�/���I��`�\\u0019\\u0000\\u0002\\u0001\\u0001F�ΗM5ǈ52\\u0019�؝\\rc���Z�#3E ����oFc��d�\\u0019>�]� �M7��q\\u0014���s\\u000e\\u0018CF9\\u0012Z6�](*�\\\\\\\"@�(�Ʊ�j�Cԕ*T�\\u0011*T�@\\u0016G(n6�(�`lFƄ� k=�Ƴ쬩ܪ��Qk�\\u0017\\u001a��,\\u0003j>5\\u0016�\\r\\u000b���\\t\\\\\\\"4m�Ƣ�ȝ1�i_�]�ܞ����(7���\\u0000\\u0013UZ7�'d�%Η\\nI1��\\u0004m\\u0019�ݫ\\u0018��R��7\\u0017o\\u0002-�P�\\u0013\\u0019�y��\\\\܁Y��2��ݜ�3��d�\\u001b'��X\\u0011�\\u0013qzYR�4��\\u0003m�z��\\u001f\\u0003��7x��\\u001e���iuJd������?\\\\\\\"\\u0000��\\u0002��R���A4\\bǛ0Pw�Z6���w�V\\u0016\\u001a��ƍ!�\\u0017�\\u001b\\u0006�V��c�/VxG\\u0011ua�J�\\u00199J����R�F뀺�7EB\\u000e�⳩Z'\\u0004���<��ҭm|m�<�y!�d�f.�\\u0001�[���\\u001a���6�R��\\b�f�H�\\t�\\u0003�g���g\\u0014�\\u000br}\\u0003�\\u001f\\u0000\\rs����I�:\\u0006\\u0016:S�\\u0013R4ǔ��^D�rk�[\\r=��}�\\u0014�\\u001d=ɑOVֺ\\u000e�� �\\u0001Q#q�[-��M��\\u0016;.,@��r_�K����Q�W�˜{\\u0003�\\u0000ѿ!��6߭'r�I��8/ʞ\\u0004T\\f�[ۻ\\u001f�s�Wgf\\\\\\\"ō�R�\\u0019 ��5j�\\u000b\\u0000+�c\\b���͂S�����\\u001a���@��f7�\\u0006�<Y���ͧ�U������֌��\\u001b(��\\u0000\\u0003Y0�\\\\lu֬\\b�^�멯9YF�\\u0017���Qe-յ\\u001f\\n�jI�\\u001a\\u001f*��&�Ҷ�ZS����������\\u0007ϭR%���\\u0002�\\\\\\\"\\u0002�᎔�����\\u0012��\\u001dɰ��9y\\u0019M�g��E\\u001f\\u0001XդKcq���q2�}\\b?ʴ���9r(\\u000f�?T�#�\\\\�I@\\u0011Ȍ|\\u0001\\u0017�+R�������GϨ�]��\\u0007\\u001e�CY�es�o��\\u0003\\u0019\\u0018�\\u0000���ª�[^:��\\\\[���W�*\\t\\u0003]�\\u0000��H\\u00002�������k\\n]s��\\u0013��n\\u000f��M�\\u0007����#`\\u0000�}��'�\\bQ\\u0004,�K\\u0003�\\n\\u0001�\\rw��6\\u0004��:�}K�o�\\u0013�LE\\u0018_���]\\t�\\u0011�U�\\u0003΀<:�G�T���j�\\u001b�t�Ƴ&ͭ\\u0000h.7��*Z��u�m�^5&�ܝ��(\\u0002�bv�\\u001b|��\\u000e[��\\u001dk2N�Ѓ�i`\\u0000����_��\\rZ��\\u0001�AҪH\\u0000\\u001d�b-ҼgU�N��F�\\u00019X\\r�\\t�g��Ѥ���V�8c���+Ϙ�7\\u001e�-�;�\\u0000��\\u0013���\\\\\\\"�M�[���\\u0014��KR\\u0007P�F�\\b`A�\\rV|��\\u0001�|w�f�.\\u001e���H�ٌ��0�\\u0003�K)�\\u0000>�?*'\\u0017\\u001cb�&�\\u000bk�\\u0005#�c�S��$��\\u0004A&��˧0mq�[C��\\u0017&U���Bl_r\\u000fM\\u0000����\\u0001�\\u0019�\\u0017�EQ��0V�\\b\\u001e�n\\\\u�2�s�W�-�>Q�E�\\u0005\\n��Cqn^�u�W��8r�\\u00139\\u0002��\\u00180\\u0017'��ڱ�!�D��\\u0002��@\\u0003�D��\\u0002�7��`a\\u00072<t���#�@��m\\u0014��cm(\\u001f�\\u0019/��{\\u001f���\\u0015�c�!<�}7<Uk^��\\u000b7�$��r# M�rzXW<\\u000e[*8����\\u0019}����Ǎ4&5�͋\\u0000G�c��GpɈ,h4�$�x��\\u001f\\u001aI�.L�!2�l�\\\\\\\"}@\\u0002��[�Ӊ�zb\\t2�\\u0011^\\u000e�P��b\\u0011�Y�Ԇc��{\\u0017%߸+G�,���km\\u0003kkx�&�0@\\\\rryIv_�՜՜E0e:lc&�Y/<�B\\u0010��%>\\u0001m`(0\\u001b��T��Ջ;�B�XX^�\\u0004��6�Z��Y \\u0007�\\u000b\\u0003�\\u0018\\u0012�\\u0006�\\u001a��Y\\u0010$}�\\\\\\\"|�L�c]�\\r�/N �\\u0019��}i�\\u000f*T�\\u0014�\\u0007\\u001a(���J�ț\\u001b�3*��9 =/�Μ\\r�̥-?��Dx\\u000eV�\\u001b\\n�Y\\u0011d�ʼXh�w\\u0006�\\u0001E\\u0000S�w\\u001a�'¶ſ�\\u0018\\u0007����f�q�5��\\r\\u0002gk�\\u0013���\\\\\\u0016��i$�T����O�\\u0003�d_e���1o��d�����9��\\u0003h\\u001e�\\u0000ef�iW�E`���Ȗ\\\\�\\u000f�\\\\\\\"$�}QOF\\u0003j�hc�r5�\\u001b�2�7�u74�#'\\u0012\\u001cr��\\u0004�\\b,n~5��e�K�8�6\\u001dO��Y&�e�\\u0017VMJ\\u001b�h�|�x�af\\u0002�li}Z'��W�:�)�\\u0005#tj\\u000b;\\u0018\\t\\u0016e�BHr�*/��]�҉\\r�lj�\\u0012H�\\u001c]H�\\r��\\u0016\\u0006_\\u0016a$#QuЁ����j�g�\\tT\\u001e�\\u001b@��\\fx�ưN����Xe'�^\\u0000�onm���P�J6l�\\u001d�����\\u001a\\u001d\\u0006���|�k#�\\u00165�M�kX��O�T�2��y\\u001d\\u0005�Q����`�(Չ>����@�L�`$�8�{�:2��\\u000f��H���*�\\u001f?q��+�'���\\u0019T��ڌ8��Y�Ar��'�\\u0000����'+��uR�v$���\\u0000e\\u0012�6��\\u0018G\\fs���\\u000b\\u0017\\u0016�/��\\u000b\\\\�\\u0005a�+E�≮d�Lo�\\u0000wO¬;�F��؝����\\u0012�;�2z\\u0015���Q\\u000e�µ�g�$e��AF-�kj2>�\\u0018\\ndbXjm��\\u000b\\u0011\\u0017�H�X���5�\\u0003Q�=0��ɦ�Z�����-���{)\\u0000jjFn\\u001e����\\u0000[��Va�#��*l\\t:�o\\u001a$e�}�\\u0003_��\\t��z</kR�4���M�\\u0017ֳW���+��� \\u000f��H\\u0017&���C�E�l�7�S.v�X�'�\\u000b'S��F��l��-0�؍2\\u0017�U�k�v�\\u0000$�\\u0003S���<���\\u0011\\u00107\\u001dO#k��\\u001a�/��v��f\\u00166\\\\�eiʄ<a\\u0005\\u0016�G[V��sǇ\\u001d����U�M��T����͎P�\\u001d$\\u001cB���h���3��l��=\\\\\\u001b��羕��#����f�)Uv{��#�:,�&2�ɍ�_�6����ʐ8�\\u0014\\u0000\\\\�~\\u00144m���H!�B5R��Ҳ�t�\\u000f\\u001c�O\\u0019Y\\u0019Qq\\b\\u0007_�v���Դ�ow\\u000fF��Q�D�0�\\u0016$)\\u0000_�c�Դ�1����bŹ6��\\u000fJ/#(�J¾��\\\\\\u000b�@�&����\\t6|&�A��.���\\u001f�]\\u001cI�;gb@\\u0019`�tU�l%�\\u0000�jϸK��Q\\\\\\\"e�d\\u0016��\\u0001��\\u001a'2t�\\u0019�#/\\u001b�\\u0000X(�\\u0017�\\u0007�\\u0013O�!�\\u001c��\\u0012wۡ\\u0004�oI����9\\u0016�>J�� �\\\\\\\"ゅ\\u0017����L;\\u0001\\u0015�����UF�n��P\\r����Dp\\u0005�[B��_�LK�k�<�lj+�=@ףa�ʡ�V�\\u0015�\\u0017nV�T\\u0014LZP�D�j͍\\u0007@v��\\u0001�+��\\u0017\\u001b�m\\u0014��Uin+\\u0015$խK�H6A-z^������P�D\\u0000׭]Ig�8��\\u00111�-lN�R��q2�3\\u0006.\\u0003�����]�.\\b��ZTF��\\u0005�?Q�]�d�44l\\u001c\\b�rR\\b�υk]Ib�*U�Ja��h�\\u000fԻ\\u001f*_Z@�e^F�M��R��4�tx�?��(�.�C����\\u0017'#.\\u000f�\\n�7#4w��WP-Fad���\\u0005�j��\\r+|̬x�\\u0007�_��P\\u001bR,7�\\u0014O۩mF��(��>��۟0�\\u001b�\\u0019\\u0019Rr�\\u000b�q�\\u0016Q�P)-��h�ʆ��\\\\\\\"��G\\u0002\\u001b[jt�\\u001b\\u0016<\\r\\u001d�\\u0015\\u0013\\u0006h�[V#��p�Й�y�6>T<!R�\\u0015����hgy�d�\\u0001l�-�rI��p��8e�2ؽ�\\t\\u001b\\u001d4փȒx�ȗ)8�!e`@\\u0003��Z5\\u0019lr�\\u001e\\u0007_n]J8�_]�҂�WY8��U��D�;�3���'�Ʃ�/�)o\\u0000\\u0007�N������\\t{ra�ւ\\u0011*�\\u0011ݜ��K\\u0001�Q�h\\\\��3^�����k��\\u0007#�bE�k��ZVfT(��4�]x�9s�0��0Ǝ�d�\\u0005�|G�\\u0012���K��:P\\u000f/(Å��?\\u001a6)�V\\u0014\\u0012 ��\\u000f\\u0011[�N�=�\\u001e�n�ڮV�@�����;sA\\u001364d�RI\\u001b�\\u0005r�ȑ��\\u001a\\u000e(�0U\\u001b\\u0000\\rrV�ͯ\\u0001j:����\\u001ed2v�%��^5\\u0003�\\u0007\\u0012>DT\\u000fI;\\u00122�ȅ͘���m�)�bº���ag�k��\\u000b�T��W7\\u0007�$�>�^1�j�L\\fޱjի\\u0019\\u0001\\\\\\\"�s���`,�\\t\\u001a*�����\\u0000\\u0005�;<&l��as\\u0018��X�;yV��^y\\f\\u0001א\\b7\\u0016](�\\u001ca\\u0006%�ر.[k�VK���\\\\���g\\u000e�Z���Q�2\\u000b̸��ro�7�R��&c>D�\\u001d݉��\\u0015�eg6l����}T���}�R�JF��R�\\u0000J�\\u0012��H>#J�\\u00002ƕ��K\\u0012�4$�iʗE��\\u0002�]N��\\u0013&6��O��h��ʊ�b*\\u0006\\u0006�4�U�\\u0006��_����׽nj�@\\u001aP\\u0005\\u001e^ ��(\\\\\\\"nI��'6�a�R�\\\\\\\"X�\\u00008-�\\u0000�~\\u0015�א_\\u001d�T�rgA�\\\\�mֵ��s:���PlN��\\u0012��q����j�s���B��8`<+՘���j6����c�\\u001b���s^�\\u0011��5,��l-U\\\\\\\"��j������ =b8�:PY32\\u0010�lw&��VD%w���ۓoM!6x�ϫ\\u001bו*U\\u0012J7���\\u0000/�AVز�r�]����@\\u000e�\\u0000/Z�w� \\u0000\\n��Z�=&²w\\u0000\\u0016&é5L���[�u�sI�r��6>����\\u0006�9��\\u001f7�T\\t$��I�ԩ@\\u0012�J�\\u0001*T�@\\u0012�J�\\u0001*T�M��\\u0001�g<av\\u001b���\\u0014�[�d՛`t��W'\\u0016y���J����Q���\\u0014X\\u0015��jZs%J����9\\u001f��s��5�}��k\\u0007q�ch�ȊP,$>�h\\b{�\\u0011����*t��>���̅Qcep��6�|)�\\u0013����I�cP��\\u000e&��iz��I�:W)\\f�� �\\u0016(��4�\\u0013�G�e��7�F�\\u0000MP�\\u000b�(Pt������\\u000fԅ{?��Z��\\ny�\\u000e��\\u0011k\\u00125��Vr�P�\\u0016��\\u000e��=��u\\u001bU���6��j\\u0000��#{\\u000b�\\b�\\u0018\\u0002\\r��\\u0015yd����\\u0007�ʰf�yP\\u0000ݗ\\u001e\\u0019\\u001ai\\u001f��3�{ޙ�Enw���4���\\u0012<n\\u000f�H\\nG���i⛂���e\\\\\\\"��<Wa��Q�_��U�\\u0000��e�ծ�xxVn�������R\\u0003����ӥ����U�],GR>���0H�A��9�E��MGO\\u0001@\\u0004B?�\\u0000\\u0004��V���T\\u001e�\\u000bi�R\\u0002\\u0014\\u0010G��>5r�\\u0002\\u0017Bn\\u000e�0ːcF�\\u001f�5\\u0007K��˻��v7f$��i�vy\\u000e'\\u0007�����2Q\\u0018�uo\\u001f�C�8�p��m\\u0001\\u001bުj׾�SR2����@�Ƙ\\u0019��]R�\\u0016�\\u0016�\\u001e��\\u0011��\\u001e��\\u000f��d�E�=M�Q\\u0012\\u0003Tu]�u���\\u0016!�~\\u0003S�W?.D�}m��:8y\\u0014��,��r=ȯ�(\\u001a�k�\\tR�ZP\\\\\\\"WC��G�NB�,5��穏i�h��O������EGeyW��Tp��|��,����\\u0004��Qر�Y�\\u0016�H�Q�6\\u001fmUA\\u0004��\\u0016�A��P�\\\\\\\"�UOm\\\\�����ʂϓ�\\n�ŷ�V�j_���c�h>TV�t\\u0013x2�R�hI�6.F\\\\�\\u001ct2Hz\\u000e�Ğ�Y�}�\\u001b\\u0014_��=��˅�\\u0004�\\u0002���V:zA6��Sb�N��\\r���\\u0000\\nc8��\\u000e�k�9\\u000f\\u0010���\\\\�\\u001c�B\\u0006De/�:\\u0011����� ��E����'1\\f� �͝C8m�$��PЎF�ty���9E)��\\u0000����Ы�rV[���\\u0000��\\u0000:P8q;\\u000b��t��\\u001b|����J5F���O�\\u0000\\rͧ��_��J\\u001dx;%�ĕ��ڦ�Ku\\u0000��aY��(\\\\\\\"�*���SAԧ���쒁��8��\\tݼ��yQ��\\f�%He�]\\u0014��^\\t�rd x�I��B�q��î��\\u001d�\\u000b�.�c�ΊU�M�\\u0006�3_�X�ȼ) ��޼b\\u0016ܴ�Y��dE�\\u0014s`�u:�7�<Q���1x�`\\u0001\\u0004|9oC��\\u0012�/Ҵ�Ǘ&Oj\\u0011��M�\\u0006��Qb\\u0012(�?4\\u001b��2�E���S�AB���Q�h\\u0014\\u0003�ڳ�F�����\\u0010A�\\u001f:\\u0012��i�z��w\\u001diW`����l��diIUV\\u0000�U6��5uM�K�G9R����[�ё���T���\\bX\\u0019p��A�;+|<\\rS�BWG4U[�\\u0000�Ex\\u0011\\u0001�P\\u000f�\\u0015wG��H�Yt �E\\u0015��r3��\\u000bF>�O�?����\\u0012�t���)\\u001f���-VO�����{��P�W\\u000b\\u0013Χ;R�\\u001f���dk��\\u0000\\u0015xߵr\\u0007Ӑ�5#����\\u0003�|��S����>�co����;NV0��|��ڎ6�>K�_n�i�����+��y�+�\\u0000Ľ�n������H}�:вc8�����Ъ�\\u0017%����%f�\\u001b\\u0010��M�\\u00013{�҄|kȽ�:0�\\u001b�����o\\u0001})�x\\u0017!qV]�\\u001f\\u001a�h�ǎ;���`lTRn�\\fH�$kÙ7Q�ʓ�CV\\u0002�����\\u000f�'��#�}B��B���\\u0017;&&)������P���i�;NV���ʂ�︐�\\b�\\u0000�0ӊ�#��ʒ�?ph�͐YM�M�ZV\\t��.M��\\u0015<R��Rވ�}�+,�\\u0000u��#]\\u0017�hj%q�d\\u0011�\\t��0��S\\b?oM�����ݟU��Zbj����O��ț�tXŇ��\\u0013��<��L���4��5�F�O@��9ʕՏ�Xh��dv���_��\\u0007v����\\u0000��_�����S�5VԜ�J�\\u001f��\\u0005��J������7�<\\u0015Bgw�����\\u0001�o���~�\\n���?p�ǲ�rA�\\u001bQ�\\u0014�\\u001f��ˣ�\\u0000iȵ�c�4�_�����\\u0007��7\\\\\\\"�?\\u0006�Y}�'\\u0013*(d!���$˶� �h�����Ʈ-��\\u001d�j��=�*q�ԧ�}G��K{����ć;j6�b�R�X�dU?����Ҏ����\\u0011dI�ԍ`/ҷ��&XY�r\\u0018^7�ۂ:Ә�I\\u0014:0e=Es�\\u0010.E��\\u001b�����\\u0017U����Ʃ&�D���K|k\\t\\u001c(�\\u001b\\u000b�hY�2���B?�I\\\\\\\"�ϒ�܀\\u0006�6\\u00149C�ڵ��,��c-�k*�q�Ш�'ѯμ�Z#�\\u001f1H\\u0002S�H�Z��\\u001a\\u001a&<�N��>t�627\\u0015RMh�ʃ�)\\u0003ƀ\\u001d,��*C\\u000f*���\\u0014�3)��\\u000f�Ҷ\\u0019�\\u0000[�� \\u001a\\u0000j�_J�IB�SX\\u0003q:\\\\r�\\\\\\\"ܭ�\\u0015��ηc��C\\f|���\\u000b\\u001f�Pd�I;�Mi\\u0016<��a�\\r�Ҵ�\\u0013�\\u0000P����\\u001a�m.3ļ��6ұ�\\tR�J\\u0000�g�xen��+���G��|���\\\\|��g�1�h�ֺ�����\\u0007И�\\u0012_DA��\\n��D\\u0018�f�e�1\\\\\\\"p\\u0006���m�@�ݲe\\f��\\f�P�_�(\\t�wfB���\\rR�����93(\\u0012H����v5l\\f\\b�\\u001c��}�˓�b��\\u0016S�jƌ����ʎE�Q�T���\\u001f���\\u0018B��XJpc{XZ��\\u000f�)1�y\\u0005\\u001a6ct'm��뱟+�0���\\u0000y��M,�\\u000f�I{�<9\\u0018�:Y'OK��\\u0017��\\u0000\\n��]�\\u00062��f7k�V�\\t޼בk�w�G\\u0010Ak�j�RD�\\u000bmִ�\\u000e\\\\��\\u0015�\\u00176�\\u0015l\\u0000\\u001bS\\u0004���9�n\\f�^[\\u0005\\u0003�\\u000e��\\u001a6q\\u0013�\\u001dή����l��J����\\u0002=@�$�)�S�qw^������_7\\u001fߙ�<��@���ހ�_IY\\u0014I\\u0019Ыy�\\u001a�tÚ$�2U�\\u0005�F�Rm���C���U\\f$�\\u0018��Է������\\u0018E�\\u001e;�\\u0013�\\nEMe\\t�k\\u001e^LB���<�RYd�����~f��jS\\u0011-R�J\\u0000�*T�\\u00031��\\u0018\\u0007u҈����?\\u0017�ٴ4j�@�46>�UI�\\u0011��אB�^����\\u001d/o�l,�Z�p��\\b��|a\\u0007���@6?\\u001d�l��\\u001bٛ�o��j\\u0012Y\\u0017���\\u0005\\u000e�U䙸�W�D��p�F�y��\\u001a$G���!���a&r,\\u00066���G�g�Y\\u0013�\\u0017�458�.^\\u000fI��*T�I�!\\u0003!\\t�_�M�o�\\\\\\\"�\\u0018�\\u0019!V:���EKE&l��ˡ��~[Ճ�_���\\u001d\\rz$Crы���KC<\\u0004�<�P�\\u0011�!��c\\n?�ܵ\\u000f�(\\u0019�?ez\\u001bO:��\\u0007�NB�\\u00166����\\u0001�9xׅ��-\\rk��F�@��5�[R\\u0005\\u0000e����ck�R��n\\u0001��\\u0018��K`N�?*R������̌\\n�\\u0006�\\u0004�h��\\u0000I2���b>\\u0017�)�$�����N�!��;&��wr�«\\u000e>>2��R�\\u0000|-���]��h#-2zO\\bׯ�ވ��Y\\u0019r=�\\u0013Ǫ5�\\u000b�\\u001doQ��\\u001c��똮�1�Nl��&1\\u0010�\\u000b+\\u0002��$^�������)(��\\u000bYT�\\u001e�D�$�@\\u0004�3.�����<WP(\\b�&�3+��\\u0014d��ytӯƙ��!$��\\f,1�c�*Ú5���Zް^哋��&NX�=$\\u000b\\u0005�Z�9Q��$!l.nt\\u0014�'!��`�4�|�ֲb�\\f��\\u0010G;I������\\r�f��\\u0005J��ѵ�a��T��6�dK��Үόb}ěb\\u0017�qwa�7\\u0015�\\u001f�/\\u0007+k\\n\\u0002�\\u001c�+(%B/R�Q%�6ވ��4%Y$dڡ��J�8��\\r�8ʐmj��NE�\\u0003�*?\\u001b\\u001f$?IV�n9\\u001e�h�^B�4��H�Φ��Q�+O�\\u001c�,\\\\\\\\��+S�\\rZMJx\\n\\u000b?�p��,���LN��w��o��\\u001b�o!��ET�\\r�SR�J�̕*T�\\tR�J\\u00007\\u00071P�哋9�\\u0013�����c\\u0018ZY\\u0005��K\\u0006\\u0004����\\\\�J{�/��2�s�2˅3�#P\\nߠ���*,�+\\u0005'8ad�0;\\u0011�\\r\\u0002��}*���Ol\\u0006B\\t`\\u0006�\\u0015�DP�8�A�H����ͽ�\\u0007̙岱�D\\u001ce\\f\\u0002�^^\\u0017�Js��G\\u0011��9l,bf7�\\r�A��n���&(p�\\u0014��Y\\u001c\\u0010\\u0014�YH����\\u001c�Q�,@,W@�j�<��\\fb}�A�a�Z�rҍ����\\u000b=\\u000e,���@�8��z^���$�\\u001b\\u000brrO�\\t�]��/�\\u0001��B\\u0002���*�Bh+��(b|��\\u001c�YK�\\u0000\\u0000y�\\u0019�ǲf �.Xx���\\\\\\\"�u��h~�\\u001e\\u0012De��X9\\u0000=�����PB�\\u0004\\u0001؛/\\u0005�i�J\\u001eq�UmCG;;��U�Ò9V5�+���\\u0002����N��iXƊ�̖���O��2�/s��eU_e�n*\\u0017�\\u001b\\r\\u00053I۶�RF�i��\\u001f��zo\\n&G���s1��\\u001e\\u001f,|�uӊ�m\\u001a\\u000b����rى���d�\\u0019e%����WO>{�F�P ]�7֕���bF`/�����B�Y'f�g\\u0005��N\\u000e\\u001cI\\u0004p��څ��\\u0006�Ψ߽��x��?�\\u0015�\\u0004��\\u0006�\\u0013z�T�\\u0000n~U��'�:7��G�\\b��I��\\u0017~�\\u001d�<�?\\u0001\\n!v\\b�7�\\u0003_�rGO�t�\\u0000�a�\\u0000�N�\\u0018���U��\\r$u<���k���I���Ε�\\u0005\\t>\\u001f}\\u000f�3E\\u001b>�Q�]N��y)Gw�\\u0011���\\u0001f�mJ�\\u0011K,]�|�챭϶l��\\u001e-M;�Sb�\\u0018mv�\\u0014F�\\u0007[��O�\\u0010�Ǔ6ML��}\\u000f���X��.P�}\\u0011\\r��ڟ���h���K?��u�����\\u0015ԩR�=\\u0012T�R�%J��G\\\\\\\"�I\\u001e \\u001a\\u0000�C�6m\\u000f�ҽ\\n[�\\u0004�5�\\u000f*T`W�\\u001c~:~5� �A�P\\u0005���G��p91�M��\\u0005q�DC**X����C0\\u0000�t\\u0014$�3�4_\\n�҆\\u0001T�u�,38�F�<@&����*�\\u001c�ۚ��܁\\u001f�f�^4�X�5:\\n�4����\\u001eU`���j\\u001e\\\\n\\u0001Z�\\u000f�ځ��]��O\\u001f\\u0013W�q[\\u0016u���g�1�\\u0018��Z��\\u0012\\u0014\\u001b}B�R���}�\\u001d��\\u0001=/z�gA��s\\r\\u001b��\\\\c�kl:��\\u0012Η�p���\\u001a�ʄ�o��>-\\u0000�\\u0013�OJ�\\u0016i\\u001d�HװҔ!�\\u0019O2:�]o�\\u000fq{u�\\u000b\\u0005�n+�H�7���m�i;*�\\u0012��Vm\\u0014\\u0012|��U�ف\\u0007��I48��Mܨ��Eo?*\\u0010����ڶ��\\u0014�d�n�X�R�\\u0012�\\u0011\\u000b\\\\\\\"1�\\u0006\\u0004��j��W�:t5�\\u0018rL저\\u0013�o��s�x\\\\\\\"3\\u0003\\u001f�\\f_���\\r?sv��\\u0007���ʲ�\\u0003���V����\\u001e�=K֓��d#9�\\u0003\\u0016$��Iܚ���ɛD\\u0016]��W��\\u001a\\u0004\\u0004����+����ƽ��5oa�M��?OC[c�䰳)�@�).�yҴJw!�\\u0006�@'a�\\u0013.,��k\\u0011Ы+�U�RI��*\\u0019\\u0014�X\\u0002�O\\u0003C@�B\\b�\\u0011^W�e�\\u000e�0\\r�|\\r��\\u001c\\u0007�Oq\\\\\\\\\\\"�mA&�\\u001c�Ԧ�vhC�\\u0000vFa�\\u0007\\u001b�5Y{n^;��\\f�\\u001f��\\u0005��\\\\\\\"(�rB�\\u001f\\u0003U`x��ƙK�m�\\u0001}��k\\u001f\\u0003j\\n}e?*@��ړ�O�F��½�@�R�J\\u0000�*T�\\u0002��n<e�\\u0011�\\r�u�\\u0013+I}���h:�\\u0012\\r��\\u0000�\\u000e�=�\\u0012\\u001f����A4c�\\u000b�u��\\u001f�q�'\\u0012o��)�&J\\u000e-p��4�w%�5�!~�u\\u001eV�d#�`F�Q�aA��\\t\\u0018��}oY˙pV1�ГND_��\\u001c��Yo\\nk'O�Һ\\u0011\\u0012-��\\u0003Kн�\\u0011\\u0006\\u001a\\u0011��{�~?�E?���-��\\u0000�C(�\\u0016�,�o��8\\u000bi��\\u0000��\\u00017�M�N�+P�0뵩\\u0001���V������Eb܋�����>\\u0014i@��O�4,�lUM����\\u000b��@W$��M���[��\\u000e��E���7Qs�'�;V��\\u001c���\\u0000\\u0001�C.?\\u0016\\u0004Y����w��\\u0000ۄ'^b�$X�Z�\\\\\\\"Q8�+\\u0002���\\u00145\\u001f�\\u0019���$�z\\r\\u0017\\taS���W�jFd\\u0012�\\tZ��\\u0004�\\f�^�k\\u0001jѽ\\\\\\\"�e�ܘ�����!\\u0018�'�!?�h�\\nΥJ�\\u0012�J�\\u0001*T�@\\u0012�F(��u7\\u0015�J\\u0000bg2\\u0015\\u0011�\\u000e��\\u0003�\\u0005�F�#�ѷ\\u0004Vo\\f�P�5\\u0000�Z�֨mj\\u0000�9���?�0��#7�Җ�T�J�*U\\b�Y���`�\\u001a\\u0012|\\u001d�\\u001a�-�H�0�\\u0012+r\\u0004\\u0000n/A7u��\\u0011�>�\\u000b�\\u0011k�Z\\u0012\\\\ɥ�c,B��g�Kq�Q��\\u0019�%\\u0019�\\u001a�k'���\\u00006��\\u0000�*\\u0011�'7S�쪠\\u0013�ǐ�z���+����\\u001d-��κ\\u001e�,C\\u001a��M��>\\u001d\\r[r�bK\\t Ì��8����\\u0007��WLFP@����?�ڻO0*�\\n�k�mkt�գor6.�\\u0014\\u0000��~\\u0000R)����LV\\\\\\\"�07ב�\\u0005%����+���L��\\u0016as��>�{��\\u0002\\\\\\u0001�]8���n��%ȝq��F����\\u0000\\u000e��kM���\\n|��Of�\\u000f7\\u0016\\u0011 ��㎄\\u0011ċ޺�ҷ�\\u001f+��>�bw+�%ʨ�4�\\u001f�q\\u0000�\\u0002�c��\\u0006�X�\\\\�\\u000f1 \\u0005\\r�\\u0012\\t\\u001a���CÆ\\f,��D\\u0003�\\u0017�5��s\\u0001(���Z�w\\u0014>n~>\\u001c<�K�\\u0011�ϐ\\u0015�m�\\u001acQ\\u0016\\f&\\\\�rכD�Q��x\\u0003�\\u00154�3X\\u001f^�/�В�E$\\u0012\\u0005���y\\u001d��.��\\u0018�/[ZT{\\u0015EU^\\\\�6\\rʅ\\u0005�\\u0000�\\r�iq�T��K��\\u001c�\\u0010����y&�_��xt��gK����N��T�9h��M���\\u000f�\\nG�7�\\u0003��=�}�\\u0014\\u0017�m��3����N,��\\u001a3�L=�$]@\\u0000\\u0011�ЊަVP��̒\\u001bE��l\\u001c\\\\\\u001f��\\\\�����Z�\\u001b���)����Бx�!A�h唿\\u0007U�\\u0000n<�4KMj\\b\\\\\\\"I_۰k��\\u001fέ\\u0017\\b��,j\\u0015\\u0014��@\\u0018�](�@�ܱ��\\u0000����\\u001e�qs�&V�ٗ_���z�L��J�#\\u001c<!��l��+r/��餒�\\u0010C<����sk�\\u0010iD���g;9�\\u00131e\\u001c��\\u0005�F�K�;1�<��2�c��\\\\\\\"C�!�ʏCmk�V\\u0010m���ry\\u0015B_��[��F�c��A��a�\\u0013�19��fvrG�ߍł�i���ys�U[r��D������\\u0004\\u001e�!��Ur0��\\u00132r�\\u001b��s\\u0011#��\\u001f�#^JH�5���Ǐ\\u0011VP�N��\\u001fō&�F��e��{��%�/U�,H�\\rs�=��#�Kxs �������\\u0014�\\u001b��-���[�οe*$�Iԝɨ��-Q�\\u000enׁbQۗ���&,hAWo��\\tR�~���29K\\u0012��\\u0002���3�8�-�ְ�F/\\\\\\\"�\\u0016\\u0003����R:\\u001c~͆qDr/9\\r����\\u0007�\\u0015\\u0007a���p\\u001c�j��ڙ�_o{�{�=��\\u0000\\u0015���\\u0018J�Zp�\\b��&7t\\u0004���V\\u00188<H\\b,E��]��$ߕ�#¯\\u001a(P\\u0006¼�\\u0000��n\\u0014��f���Z(0�\\n\\u0015\\u0014\\u0005�tڊ�DAJ��\\u0001X(P+ۭf�z��/�N��β�R���&��J�Ny)�t��h�S��[>1�&������/�ۗ^���K�ObV0H�\\u0013U�u<E��\\bs�?DD�\\u001a~��\\u0000Dv�T[�{l��3-��Zڕ�a��n��\\u0001��گ��\\t\\u000f�!am\\u0006*���\\u0000�\\u0006���p\\u000b�c�qW�k���[y�\\u0016���N|\\u00048�\\\\܍�H���\\u0001LS��\\b~�ƽ�]��b<�y�!P\\u001d�OZ�Ӻ�w\\u001e�\\u0002�@�^�\\u0012�#C������{��َ5��V��\\u001b��%�Q`v���G�A�\\u0000?�E}\\u0007ƹ���%c\\u0006�Ґ�Lk�Z�=\\u0001����#\\u0013��^��k��\\u000b�|����\\f���\\u001do�BC!I�����l�X�\\u001a6�\\u0002?��ف=j�d�\\\\\\u001dC±�y\\u000f��-�����d�r��P�\\u001b��U�;�l\\u0011$���\\u001a�\\u0005k\\u0013�qX���6\\u0016�\\u0001�\\u000fI)d\\fm�,4�f��T'\\u0019�I�a�$��+o� Ì�\\u000bX�b�:|�H����C����\\\\�\\u000fƼ=���\\u0012A���b\\u0013���TJ*=F0�\\u0014@�#�op$\\u001b�޼��\\b����e\\f\\u001b�\\u0014�\\\\\\\"\\u001c�2��d/��[O\\r/TI����z�\\u0000��$\\nn�4%��y\\u0011:�~'�=+J\\u000f�6��\\u0003��6��1&t�\\u001d<�9\\\\\\\"���\\u0016�P��6;|i�0H�Р)��\\u0000�/�\\u0007bS�I\\u0004�\\bq�Q\\b��<z^��\\n<ʖK\\u000e\\u0002�ޭ\\u0017#\\t,\\u0007#��U�\\u001d��^��[\\n�!U\\u001b�/�t�kBA�е�j(\\n)�f_a�f!T�3M��!�\\u0007�&0�@V#�ҥ�4s�)�����Zkۨ]>�J2�cd<&��ې�}i@�J�2\\u001c�/H;������G��{�GZp\\u0000�\\u0000'az�`�aoe��kV���#ٳ6�K\\n0��'�e���U$�\\u001f\\u001a���Lyq�FZ�\\u0004,�#k�P�c��F&p�m�Pw\\u0014\\u001b�l�C\\u001e,�\\n\\u001d�X�\\\\\\\"�i�YCr�\\u0006\\u001d�\\t���X�'B�\\n��\\u00167�lX�W�[��f�&vi\\t��nh���\\u001cicE�A����򄇘�\\\\\\\"�9Q�\\t�U�Y7uU61\\u001f=³�N+s�06\\u0014\\u0013]��7\\u001bU\\u0000�\\u0013&,�\\u001a3b7S�����n)��]�q�`6)�Ȋ��J\\u0001븡�i�Ukqn$>\\u001e�+�sH\\u0011:�Z�~Ϗ\\u0002��\\u0005��\\r(��\\u001b�\\u001e7��VǑ\\u0016��n�[P�Ϲa{�+ru\\u0016b���zU��.�J�K�m�b�\\u00013\\u001b*���;\\u000b���o���c@�8(R6#J�1D�d�6�_��f�r\\u001b#�Ӡ]��,��\\u0004Y�aC�2�ɛ&Rҷ ��\\u001d\\u0000�*T�2%J�(\\u0002T�R�%J�(\\u0002Qп5\\r�c@�U�����q@\\r\\u0001\\u0000V\\u0019\\u0013�CMY�\\u0015�dه\\u0013��+\\t��\\u001e��aM����\\u001b���U�B��\\u0013�U��Gʐ\\u001eT�R�%J�\\u0012l\\u0005πֽ(�\\\\�\\u0003ă@\\u001eS.�y+��M��[[bd\\u001cyyn�F\\u001eT1�ӧQ���j�\\u001eUt��HՆi\\\\q�\\u001dT�� �s\\u0000\\u001b�<hisa_��>[}�\\u0004���Y��t\\u0015J|I���\\u001e�T\\u0003�oY�nA�\\u0007�V\\u0015)��\\u0012�\\u000eL�y\\u000f�U�e;�}��R�!\\u001e�c�'�^T�@\\u0012��&D@�R�u�J�0I;\\u0015�_���CƷ��K! 2�k��i=J��\\\\�\\u0001��/�\\u000f}\\u001dzyx׏ ��Fb�\\u0003��\\u0002n\\u0003�:טݧ\\\\\\\"\\u0012&Y�\\u001b\\u001b�\\t����|#�\\u001e�/\\u0013�!�*\\\\\\riڔ��\\u0001YѫB��̤�U��#�!L�\\u0012<J\\u0003���G���*\\u0016l��4T+o����M��7�\\u0000jo�\\n��\\u0016�mB�L�\\u0012-}<:W��.�'��|��<�.��A�E�5\\u0014FG��\\t�L�_\\u0000P��\\u0000�UA�����J�G\\u001b\\u0001a��\\u0006��r�\\u001f�mU�b\\u0002��\\u001ef�:Ψ\\u0013�ͥ�IX��OA��UVX��uo�\\u0006�&��\\u0011\\u0000{R��\\u000f\\nc�le�;�\\\\\\u000e�M&�Z��`\\u001a�ix\\u0002J}\\u001d/^��}�\\u0010R�U�-A\\\\\\\"\\u001e���\\u0011jئg�dm�k/��H���J�\\u0000ؐz^�|��Ycc\\u0013\\u0013b\\u0000���J����Y\\b���\\u0004��\\u0015�\\u0012X�&��O���3&\\u00012��#mv��h�Z3 S���ƕR��Q�&�ԵJŧu\\u0004�\\t�ƶ@�#,��w\\u0017�Np;Q�K�%J�R�������zd�$�R�\\u0000U�6�Olx�2\\u000b\\u0012x�8�=5ް�I�P\\tÑ�l��\\u000b��\\u001aq �h7�\\u000e2�i#ȼ��oO��ʲ�{1\\u0004�=\\\\\\\"�E��\\u0016@da���Ԫ�\\n�ry��\\u000f�\\u001c��!���{���\\u0000�o\\u0000�B\\u000b�y\\u0010\\u0002�ӧ@:V83*3�5��}l\\u0005�WȊ\\tK\\u0007\\u001c\\u000e�\\u001b��}\\u0012+Ծ.,\\b����M���p<�̥\\u00111{�\\bރ��1r`\\u001cG�\\u001d��\\u001a\\\\��\\u0000H�\\u000b��SU{����E\\u001c�\\u0017�{�{�o��h�)��X��\\u0006I�y{M!X�\\u0006���((�1�\\u0017�ݺ&�e��Qn����\\u0015�ƿ�9\\u0005��C��\\u0000Z�ö^W�D\\u0007�\\u0019\\u0001T��x�)�\\u0016T���\\u001b��\\bA��[�;�m���9�\\u0019,\\u0007����a�\\u0005���HDS\\rA\\u000f\\u001c��CЩ�q�d�\\u0017\\u00064&ʭ����o�n��\\u000f\\u0013�96�\\nG��F,�\\u0013�\\u0017��y\\u001c\\u0000MIg�r\\u001aW.@��A�OXd0\\u0019��X\\u000f�i^E���/�k<\\u0005ے��\\u001a�qL�r\\u0006�޴L�\\u0016޻o�1\\b�Pr,e����¸�Ɛ�,\\u0007Mi�f�'\\u0003\\u0017��\\nd\\n}\\u001cm���V�<�\\u001apu�4`�,9�B�R\\u0007�d�ms\\\\�oώ\\u001e��y\\u001c��}�G�n\\u00054��\\u0016\\u000f\\u0013�;7A`?�]{*�\\\\\\u0012��\\u0019\\u000e��>\\u0015�w�T-����\\u0000J�v��.��\\u0004�AS�$�^�M�\\t�7\\rjW��QUO��\\u001b/\\u0016\\u000e�\\u001bG�q(\\n:����A#��4�n�I$��\\u0010\\u0014�Gȕ_\\u001a����G��G뮧kO+]��J�*T\\u001d\\u0006S9\\u0002���7���.9\\u0018�P\\f\\u0015ԛ���µʂI\\u001d\\u0019G%_�on�FbE,�dļe\\u001aJ\\u0006��s%b\\f�Ȳ\\u0000V��7�_\\u001a�\\u0018+\\\\\\\"�\\u001d4��W%$\\u0012��eO��[_\\n�#�1�Q�{8\\u0003���T��@��s��*5�\\u0002�<�V=��Q?��\\u0007-I���\\u001c�\\u0000L��$\\u0013��&V��\\u001byS�i�~\\u0003�`^�H@\\\\\\\"����#�\\u000b�m���6+�}9\\u000b\\u00106�\\u0017���B5�%��b7\\u001f\\u001a�IU���t&�\\\\\\\"Y�P\\tM�q�VR��/����.�\\u001e�_j�znWz�,� �6\\u0001׭��%�\\tΈ3\\u00029?ݔ_�������z�\\u0016\\u0014��@���y\\u0014�\\u0006*YV�N��� ������6PN�\\u0019ɓ�M�C��#��R�M����=���u�q���xZ�*}��\\\\\\n�]�)r\\u0004��\\u000b��D<R%��[�zMx\\u001c�d1<c\\u0004(c�6��c��EKr\\u0017�\\u0015�\\\\\\\"6�\\u0001�׭cƝ��Q;/��\\\\\\\"��\\u0003�)�ʵ��iV�\\u0010/Zτ�\\u0000�^;��\\u0011���.�K_�J\\u0002LYW�\\f\\u0006�|kv\\n\\r���o������\\u0001D\\u0004�\\u0013��o�?P��F\\u001b�Z�[��ԍ���\\n�o\\u0003G��B�����\\u0003l���q\\u0003PG�[F�\\n]E�Z���\\u0005��U�6�Tړ�M&g���%�ēwa�[j���\\u0011qs���z��!>�-�W�\\u001d��^Ǖ�T*ݎ�.aB<�R����M�$�N;1-�77\\u001ff��F��\\u000bV���8x͈�ǅ7V��2���'�\\u0017.>'���\\u0017!�2\\u0006<�26�*�~\\f+\\f�ZY\\u0004�F�\\u000b\\u0006*H�Sq�Tz\\r�tP�R\\u0016N@�h�n(,�\\u0018���\\r�4�\\u0016Y��\\f�r���[͘eb�\\u0002��i.��rF��NK+\\u001b\\u0001�'�^���Lk\\u0004f���zYz}�\\u001a?\\u0016�u�'�:q\\\\\\\"�u�\\u001e�^\\u0019�\\u0002�u���n��\\u0004�p\\u0016\\fM\\\\\\u000b\\u001b��\\u0006s�\\u0004�m�\\n?\\u0003-���\\u0004�74\\u0013 ssW\\u0004�n�U�\\\\\\\"k\\u0018\\u000b��N}-+-��*o��hG�Ș��)I\\u001b���z��ea4.�E�?1W�<�nh����iMݭ\\b��!.%�����o����_I��:�9\\u0013��\\f�H������h�@3d�*�5��@\\u0002���˓��;�\\u0011~��\\\\+<*\\u0014\\u0001\\\\\\\"�\\u0011��1\\u00064�F%��\\u0011p\\u0005,����@E��m�Z\\u000b.4H�e^$\\u0003kt�NJ�7,\\u0014��B�L���zN��R��q��\\u0012de9\\u0000H��ы$�Ǔ�����q�M\\u001b\\u0010\\u0014\\u0015�n+obV*Z����W�Q��M\\u001bu�u\\u0004mT_{}ǝ1�L<ms��b�Ʒ\\r��E�HD�睒B�.�q�\\u000f��Ɯ��(��YX�8��5���a�NC�Z�Rh/\\u0015��U�Rz�*�7���4rC\\n��\\f/��ׇ�ȥ����8��zB(��B5\\u001c�\\u0016�����H�FF,�\\u000b�Z�Y��\\u0011e����P!�\\u0004k7A�\\u001fΩ>\\\\\\u0018��H\\u0016�_s�ސ��؅*��\\u0006��A���w%��I��\\u0007#ɻ�0�\\u0000i\\u001aC�􏾁��dHIEX�\\u0000���@XԱ�\\u0002\\u000b^咢ޓ�G�e�r/\\u001b��Qc��u)��31�Ēw'S^T�@\\u0012��ˊ(�\\u0018�F�PU(h\\u0007jA\\u0017�ڣ2�� \\u000f\\u0013J\\u0004�\\u001b\\u0007j��7~L|�S\\u0003\\u001c�\\u0004\\u00025\\u0007PE{p\\u0005&Q�G�=��ꅞ���[�Dz���eZ��~c��@סY��O���Q�VR\\u0007���yR�J`J�*P\\u0007��w�`���\\fz�!\\n��.k9U��/Zv����4����1��\\u001f*\\u00043\\u001f����\\u0013��BG��\\\\\\\"�P-r7\\u001b�c]:���CyN��o�Iq��c��=�&;\\u001d�\\u0012+\\u000fٿm(�Uy۔DN\\r�)�k�����\\u0019\\u0004L\\\\���\\u0000\\rǑ\\u0017�׵\\u0010W!@%\\u0006�\\r\\u001b�6\\u0015�ˁ�ë]}�;\\u001d�z���@�#fR}-�`OJ:�{V���5�@��[YU�S��Ǵ�N@�\\u0018Q���@I���F��BT��\\u0006���w�_���\\u0000K*�2]dȖD7Wve>D޶�g'�,��\\u001d�E�\\u0018�\\u0002OJ�&\\n�;U�De \\u001dH��\\u000fF\\u0016A\\u0017��βthܣ}Czb���\\u000fWKlh\\f�W��M��~UB3�R� -�:+p6$X|k��~�\\u001c)��\\u0016%�ki\\u0003�f�\\u0019�b?hJ�?�Jc��'s7x��c\\b�'H�Q�wkt�\\\\�����`b}Ƒ^��Rm筫�$�%��ܚ�˩�5v�KK\\u001d4���FO�\\u0019��(WR��~�k@���ɐ:c��\\u001frަ�B�^ݞ�0ǐ��6�e�X_��cm���H�{>@L�dc�U*\\t��\\u0007Z��A\\u0006!w����\\u0002A\\u0004hF����ˉO�9S�6?���%�u�q���\\u0006H�\\b[�������\\u0000�\\u0013�d�M��\\r�\\u000f;[�?_�6���4�]�F.�Y��u&��VW��#�e]x���R�ldJ�\\u001f����\\f��\\u001d:VU�#�s�������ZRmx\\u0004\\u00111�\\u00111h­� �U��\\u0018���YI�ۡ�k��\\u0003��v#AcK³\\u001b($�\\rjz�f��\\u001d��\\u0019?y*K@�]��mE�T�\\u0003�&F\\u0007�\\u0019�/�\\\\\\\"���/�q��6I�:\\u001f�����$�*��η���V�-J�:�,��\\u0006)�R5���{�GZ�\\u0015\\u0004Y!\\u0007�oQ�P��ן�&��x�\\u0000so��\\u0000\\u001a\\u0006~��f2D\\u001c�R-m~�\\u001e��d:�\\u0003^��\\u001c�J�\\u0015Q�\\u0005C_�\\r�v���*8�W)d����\\r�������/-B\\u000bE\\u0018躱��.�w�5O!�=�'������f,�����Z�#��<�+$��T\\u0005\\u001fu\\u0005R���T/\\u0007����K\\u001f3z�JC%J�G\\\\\\\"�I\\u001e \\u001a���0 ��@\\u001eT�U\\u001d��O½1�\\u0017*@�P\\u0005jѐ$Bt\\u0001�'�U�@\\u000f\\u001b�b��Q�Ɔ��\\u0019\\u0011~�\\\\\\\"c�f#F�(�\\u0001�e�2����TGO�\\u001d����'J��2�\\u000b)g\\u0003�\\u001a2�u4��닍�3yz��+��Bݝ��~�)_��Wg�/\\u0003,��p�2��Q�\\u001dX�\\u0001H��|�w\\u0010�K�.y[��K2�'̘�3\\\\�U\\u001b(�\\u0015�k��\\u0000�oU)�\\u0000u~K�|/bm���\\u000e�\\u000ehs\\u0000�=Q�����|�\\u0010F��\\u0015Q�\\u001b\\u0000+��\\\\���\\u001d�\\u0013�\\u0002@�ʤ��H\\u0000���@���o�\\u0000����'\\u0012���c~N�^��!�\\\\\\\"?��G�\\u0000���?}���\\u0004��=\\u0017�^���76�k�\\u0000�t�Zv��\\u0004�gc�{�\\u001cX��ʓK�\\\\\\\"�:���)T��Q��\\u0015���\\u0015�t�\\u0010v5�i��=4�rm�Ý�}ǽ\\u001c�`�#�\\u0006���|�c��\\u0000�c\\u0017���\\n��y�g�y\\u0014>\\u001a|\\rt֕���D�'^o��ű%��rI�4���q�A�V���t��MP\\u0012�J�\\u0001�\\u0000�\\u0011q�D��\\u0016\\u0011\\u0002�\\b��P6��z�\\u0001��.]h�,�Ӊ\\u0010�.4�е(\\b1�(�\\u0010�D\\u001b��@�\\u000bF��\\u00157ԝ����*��apw\\u0014\\t��$���4\\u0012���t����:?Ѩp\\u0010�чP�m�Z�\\\\\\\"�\\u001b!��\\u0011�N�s~d�����X^�z\\u0017���v�\\u001b`��Y�\\u001b(r~�=,��Cɍ�i\\u0016.[���\\u000f?\\u001a?\\u001f�C�[�\\u0002��Q\\u0002oQ�A��|li_s\\u0002\\u00199.�ko?\\u001a���\\u0001,���.,/�J�ȗ!��nv\\u0000h\\u0000��`�d>�;��e'�\\r��ώL_w\\u0016T!���l|���aHc���Ug\\u000fs��H&��S#سkZ��\\u001c�ѫ\\u0011�cM12�Iy�[K�]><��`�����N&L,�Ç��\\u0014�\\u001e�����#�҇�Up��1��\\u0005��\\\\t&��5\\u0015�$\\u0000?0�e�y\\u0007\\u0012�\\u000f����\\u0016�jS^B�\\u001c��\\u000e��B\\u0015M��҂���6���\\n�+Ʊ�,�%��%�`��z�9��1&-Y��K\\u000bЀ\\u0012l5'aZ��'�\\u0000E�\\u0000�4�\\u001a��p�@�R��\\u0011r>��j�h$�,��\\u0019;��F�>\\u001c��h�&��\\u001d�բ�u �\\u00027����\\u0002���$�%�|\\u000f\\u0013�OJ�Ir\\u0015�\\u0019\\u001bհ�\\u001e�\\u0019J�\\b�\\b���\\u0005@`4��`��L�\\u0010b�l5��]:��tō�0�Eg-��\\u0017�n\\u0012�\\u001dt?�t1��G�\\u0011?(�T.���[B�9\\u001b�I�@��\\u001dTX�0br,�y�ֽ\\\\�D\\u0018�E��ט��8�@T�sp��[jvN0%\\u0013�7�%��?J�\\u0017�QC�E$\\u0000r�-~?\\u001f::\\u001c�t��6�6ӥ\\t�$I�{f�o{�J��#mj{����T�\\\\\\\"���<�[d��\\u001ce��Q�CB�~�9�\\\\\\\"�R,�u�mGd�+�\\u0018$\\u0002�Q\\u001a\\nu���\\u001c���h�{�����HB>�=<�x�H�`�\\u0006܏�eg\\u0006���\\f<��\\u0003\\u001c��rok���\\u0003\\u001b��5�^�V,ArFĒ+�$f���D��\\bUf{^�oS!�\\u000b*X���k0*Tq#qU�G�\\u00027\\u001d(o\\u00033ǘ�Z\\u0019�נeЃ@�I��D��I\\u0005��\\u001f\\u0002M\\u0013�����ݹ&��$�ml\\u0007Z���7\\u0001�p������ѳN�#\\u0002�]y�����\\u0014�\\u0000�O�E�;��/��a}Z3�>U.�\\u0014�i��\\u0001����\\u0004\\\\\\u0011LJ�\\u000fH�ʖ��$`0�.Ƌ��\\u0004^.��,H��4ƚ\\n�r�� G��J#>`�3\\u000b\\u0010J�~\\\\\\\"�6J��\\b�լ��dG�n,N�9@�\\u0017N̐�)�\\u0003CK�NGI\\r5|wt*��H�J]&\\u0004�A��\\u001ez\\u001al�Z\\u001e�\\nؒF�\\u0012��϶`�K\\fO����*��bB�:\\u0001�)�2\\u0018} \\u001f���\\u0007��Í\\u0014R\\u0006G�B\\\\\\u000b��ש�(�J\\u0007o�o�N�\\u0010�V7�\\u0019 ����ϱ�����#2:��Z��\\u000b\\\\S��ݭc\\u0002IHo�7�]�������\\u0011\\n�[������\\u001fPę�l��b��\\u0018d'�S�����e\\u001b|\\u0018\\r~��F�9>���tҙd�$�@cbA\\u0017\\u001d@�-xK+�~�@���t�k<�Bѱ��4��b<G�z&�0��±�\\u0017%\\r�-�Q[.4�\\u0012@�޺\\b��\\fTn\\nW�=�v޳���\\r�u*�M��O=�k\\u001eTJ�\\u001a��c��['/\\u001eX���,�ck�k�r�x���\\u0013����\\u0004ز\\u001by�)��bE!^K\\u0018?UͶ�eIR\\bЃq^d\\u0013�\\u001d��C��\\u000f!V%hO\\u001f����~�\\u0018F���\\u001aÚ�\\u0005��\\u001b��'�r�-$1E\\u0002���ɼw5Θ&sp\\u0000:r���Q�I�\\u001e.4:\\u0016#C��$��\\u001d�L�\\u0013<��I>��?��(�h��%���O�\\u000e��!�2J\\u000b_S�^�z\\u0004v�\\u001c|���F\\n�u ���1Xdv\\\\)��i��=��W?\\u000fw͉����+\\u0001c�kG���G�\\u001f_'��\\u0015|��\\u0016i'�L\\u0017\\u0017I�_#cK�g\\u0019G����ѓ�\\u001a�+�\\u0006D�\\u0017\\u001d}�{��#�\\u001aPǼw#���_�O�|\\u0002���?�r1ܩ�Z�lEV(��GB�\\fE��k.T�\\u001b����P�FYG\\u0001��j[Q���\\u0018yC���#��3ƪt�\\u00021�.��\\u00007&�\\u0014V�\\u0010U[S�\\u001d�ٲs�61\\f�.T�\\u001a�Om�8\\u0000�L\\r\\u0012\\r����\\u0014gf��T��\\\\\\u001dy)\\u0017��w�|N�������5S�S��ƴ���5�։nϙrDN\\u0007�j��u\\u0004�on��\\u0002�05�ҤSsu�6�����r2��\\u001d,\\u0011�[\\u000e��^��\\tn:[Z�d8�/T�NE2{��U�\\u0013��i�$��\\bۥ�\\u0007�޳�4�ø�t�V��dt|m�x�&.IKhM����&x�����ڥJ��\\u0003��1Ɖ�V\\rk�}+d*\\\\+_�R���P�^Ƃ\\u001aj�P��1�7^���X\\u0018�����?B�����a�J�$XҺ8��BA\\u001eF�\\u000bb\\\\\\\"ǐ�\\f���W��\\u0016Mh.��\\u0000!ܝ���`��ؐy�m4ҹ\\u0005�ي�r<\\u0005:���\\u0018k�bG���\\u001fو\\u0012n]���Ri��bL�do@\\u001a���'�q��^B�y�O��\\u00171=�\\rrmm�^|rd�\\u0004\\u0002�obi|�82��/�?\\u0007Cw6���\\u001a��d�\\n\\u000b\\u0017��F�\\u000b���cB�$L�\\u0017�\\u0002H����oe#�\\u0004xqo�Z�3$�v\\u00167l�r�P��,�\\u001b\\u0003�z�\\r9o�]�\\u000f����\\u0000��p�|wW�9�܅:*�M[����\\u0000��o�S}p:�$'\\u001b\\nl��{�9\\n��!i�M\\u001bJ�(\\u0011�\\u001c@�;�\\f�ęSʚ��3/��+�����X\\u000e����ⵑʁ�p�Zh�o�0ӥ�s(\\u0001\\b�P\\u0007�H�0ؑ�C��`ǐ7\\u0006�\\u0007�'�v�l�\\u0012\\u0016�5�\\u000f�\\u000f:\\u0010/\\u0010\\u0014�}���-)�[\\u001aƙ$�R�\\u0000J�\\u0012\\u0004�u�G���S���\\u001b\\u0002|+L/s\\\\\\\"t�Vܵf�>�?\\ni\\u0000׸�A�\\r��.�t��\\u0016\\u0006�\\u0004�����£��ǲ\\u0001�\\u001f}'�3\\u000eFB\\u0018��C\\u0019T�6�@�R�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000��4'\\\\\\\"t�i��|\\u0007SYS~ό84�5oJ�\\u0006� \\u0018>&\\u0018A�Ěi`���\\u0003\\u0014V`�\\u0010��\\u0011�\\u001c\\u0010$|��7��~q{��\\\\�����\\u0002H%A�\\r/ү+���\\u0012�+b�%0݈@5�yß �k�\\u0000���\\u0001\\r�\\r>'��@�\\u0010\\u0002����9�\\u0011ߐC����)����\\u0016��ғ�h]]7b�\\u0000�r\\u000f�7�\\\\�8����G�c����C���w4qȦ7P�w\\f.)>Wd��lV���_��S���k�*���\\u000f��\\u0007.{vh���a�m�֑���>����������\\u000f�\\u001bک ��\\u0016К`\\u0003\\u0006\\u00048�\\b\\u001cۣ��µ��\\u001d\\u0006�kWF����e��O\\u001bko�\\u0002\\u00008p��,m�aD?m�%\\u0001��\\u0013�\\u0019\\\\�}��\\u0010z�t@@�#�\\u0005�\\u000f��Kh��bvB��L�Fꀑ�\\u0000SZ�p�\\u001e\\f���ѹS�k�G���p��[�/�3!\\u0017�m\\t�\\r<<*e�� \\f�\\u0017��\\u000fR�u\\u0014.��zx�*�\\u001eWV����}�\\u0016�Y�pJ��C��km�.>\\u0004�(��C\\u0017�\\u0001��u\\u00145Rr&��*T�F��{�9_��������`�\\f��S�\\u0004�\\u0000:Y\\u00107\\u0001HV\\u001b\\u001e�:i�'��%�\\u0018\\u000b�����z2�\\u0001�×\\u0014�LHZ\\u0005���[/�/í\\fdI�ўW�Sx��W\\u0012!\\u000e���k\\u0000�t Vy�\\u000b����\\u001f�IuQo�����\\u0000aZĩ�\\u0013��'e*lw\\u0015�6�\\u0005=��\\r3h�x��Q�sH�Qc��\\nC�\\u0012�\\u001d\\u0017���F�\\u0005�~��|i��,�ĝ���\\ry\\t��@���[U�s���b�F�-�i�i\\u001c��(К�l)�F>�~W��y��:�\\u0002��E\\u000bJ�A\\u0000\\rɣ�\\u0011��h�~�UX�G�}�ΌXŅ�:^�E!�f�X�|E\\u0005]\\u000f�\\u001b-�r\\u0007�\\u0017\\u0014�2!\\u0016K��-���\\u0003\\n�*P\\u0005�B�\\u0015EυN��\\u0018U�x�\\u001c��)��聞Y�\\u0003\\u0004P�}�\\u0013}�T\\u001fx��}����\\bR\\u0017n1�m�R��ٴ\\u0018`v�˓C�!\\u001cχº��QB \\n��\\u001a\\n[�A�\\u001dȳ;�i����~�M��3\\u001c�\\fq<��\\u0017ւ=�/:5��^Qx�Z�&���\\r�V*����\\u0001U �-� \\u0003�*m��B\\\\]���Oڙ���YB��\\u0019���Y�r�ER�Ϡ�{�ХH\\u000b�,\\u0007˭$ʒ'�B%#�Q��b\\\\��\\nF�CۻFT����=�㚝.���dv>ڨZ8Ux�M�\\\\\\\"��i�q��a�\\u0016�S$��_�\\u000b��\\u0000�;�\\u001f�\\u0019)$g�\\u0000o�Hh��#r�T6t�L�ѷ+\\u0013�Q��\\u001f�Ɉn�!�X��R8�5�뫺��jZ���4�R�\\u001c2�H�K\\u0010.m�V�Ƥ\\u0014�\\\\\\\"�\\u0011C\\rm��e�c\\fy\\u000fX�h�U� jlRF��C8,@��m\\rV|Xq�X\\u0002\\b����\\u0004�м�-�\\u0000�z��ȷ7qɵ?ʱ\\\\����I�?\\u0006\\r,}5�%�8 i\\\\���_��X�g\\u0001����;�4�Xc�#j\\r�t�բI�3���hQ\\u0013��/m��r1\\u0011դe��n<iF4�\\t���4����b,���\\u001fOK�]�u�us&�(\\u000f\\u0016eS�8\\nװa�\\u001a�9Yc�\\rA\\u0015Lo�\\u000b&RD�D\\t/\\u0015�S#(�\\u001f\\u0016\\u00167�\\u0007q�Z�P�\\u0000�*T�\\t%J�(\\u0002Q0aI)Ԅ\\u001ez�\\u0011ܠ\\f7�3��$��:(:\\u0001�Ƣ�kB��;\\u000f��ǩ_rA�}~��k��\\u0011ÔE\\n\\t8�l�\\u001a>\\u0018�8�㩷\\\\\\\"i?{�RD�\\u0018H����\\u001aVUm��$a�����\\u0019�s��+fB�\\u001a÷�]���U��\\u0002A_���#c\\t��M~����h\\u0019\\\\\\\"x͘i���<�xlE����(\\u0016T��bD �����1\\u0012�J�'n�\\\\\\\"\\u0013d 3��>Z�\\u001d4�47\\u0000-��yvv\\u001e�'���\\u0000�w���\\u0001l�\\u001d���\\u0011��e��|��w���o�Q�Cob�B��{{\\u001fJ�����T�x�D�E=v }�ӑ��\\u0017U\\u001c��V�n�m�*%�\\u001c�~�s'�pb\\u001dB��ۥ3�����h�\\u001c��ڷ�Ҍv*\\u0000M�bN֬��\\u0004\\r���\\u0012�\\n';�\\u001b^�m\\u0007Ʋ�ď%JL�ףmo��VBG��&��֣��`o�\\u001dE����v�q�$g܄jO�Q�@S���cN�\\u0000T�j�Ov6��E��T�0S\\\\\\\"R[�]\\u0007S�W�\\r�rs�t\\u001e5�(�Tɍ�7��X�:h��F��0�\\u001ao�&T\\u0018�E\\u0000\\u0007Z�\\u00196&R\\u001fZ\\u001bx�C�2\\u0001ȩ\\u001e4�\\u0013E\\u0015Y�*�X�\\u0000ԓD\\u000eݞu\\u0018��^���e,�\\\\\\\"!ϙ\\u0007A]<s,��j6;��R��@�L�Ǟ\\u0002\\u0004Ѵe��B׵\\u0017ڔ�^Kl,\\u000fƘw�\\\\\\\"�/j�F\\u0007Mm�)\\\\.�8nF>�ۥK���I�{ߤI\\fq�%@X� \\u001d\\u00004\\u0004p��D,]�KoZf������X���򋏶�����\\u0019�%��[�Tt��\\u000b\\b7\\u0004�)\\\\\\\"n2)V��«L��A4�h�8�$\\u001d���C$�#�rc��V�$�)Fv�x�2\\nJ9(R@�\\u000fk�\\u0002���\\u0000p�u�h��\\u0018X�`AЎ��N�\\u001e��T����\\u0017�E���\\u0016���F�X��o��\\u0002O����E �]�/\\u0014\\u001e��w�Tb\\u0016Oʩ�G�Xòƨ�F:ˊ8\\\\\\\"i�t�%\\u0017,�R�-�\\u0000x�s\\u0019�$��b���6\\\\�/��r\\u0018���h�t��zj���F�6���ՄH�\\t��xq��*\\u0002��Ƽ��ʐ�\\u001a�\\u0000\\u0005�����dW*�t_�4\\u0006�\\u0013A�\\u00041���\\u0012������x\\u0012�{鮚��Z��oHB�\\u0002�+F��M��+�\\u0014�9*�\\u0006�\\u001b8�0E�:ZY�7�\\u000f���\\f�\\u0012ˡ<P}(�\\u0001N�mDDa��\\u0019&��y)�KZ��Օk���9\\u001b�-YV�A2W���ʥ��\\u0017��!n\\u0005�Ҷ���\\u0019�\\u000f5��B�Ƙ\\u00150L\\u0005�l\\u0000�\\u0000)�Q]�\\u0000\\u001a<w\\u0001E�\\u001dY��|�\\u0002�7�~F��@=O�\\u000b 9� ۵�kG�\\u0013RMc�'u[���\\u0014��ҫJ�Dl\\b\\u0000\\u001b��2˄\\n'0�P���XI;M~=?��\\u0017$n�I\\u0006�Pf\\tc�O[Z�X[sR�Y��%�F!u\\n.ƭ�w~N\\u0001�؋u�\\u0004\\u0005G$\\u0016�o��@\\u0006?pj�^�>4Ӆ�\\u0015E��\\u0006��\\u001d\\r\\u0010`T\\u0000\\u0015\\u0004ֱ���K{�(�V�\\u000e�������Q�6S�7m���v�q��\\b��\\u0011<G�p\\u0016[��W7�\\u0013� \\u0005�*H����;A�ce�K���J`G�٤\\r�r\\u001d-Af��\\u00113����u�7�YG\\u001a'���0��~P�\\u0002M\\u00074>�6l\\u0012�u�\\\\\\\"\\u0013uc��ΥZf6q�\\u001a׫��B1��@&&Pv,8�5�����\\u0015�>\\n�@�M\\u0018�Ms�b�9�ǜ{�*�����W�)Z\\b�YM�\\u0010|\\ry]\\u0017�Y\\u001aL��h<*���漢om�+j�Δ���\\u0017����܅��\\u0000Zz��)�*T�@\\u0012�J�\\u0001*T�@\\u0012�J�\\u0001*��*�\\u0001 �o@\\r�pW �b\\u0002�&�K�\\u0017�c�����>�\\u000b�>�c�{\\u0012\\\\�ذ�!�����\\nu��o�J�6��\\u0017P\\u0012B?\\u001a\\u001b��\\tI��oq�A�\\u000ed�y\\u000b\\n]pu\\u001b\\u001d������#YRR��\\u001a\\\\��Ud����\\u000e\\u0004��X\\u0015<��\\u001a\\\\���b��r�(��;~W�����nV��ykBS\\u0002QX]�#4���E\\u001a�m\\u0001^`b�����c��xx|��h��\\n\\u001e0��[]<-�@\\u000bpJ`d\\u0015�0I��G�iԁt���^��}�3�3!\\\\��[\\u001b\\b�S`�m�[ńa�'\\\\\\\"H\\u001a\\u0013D�\\u001c�s\\u0000gI�b~6\\u0014%\\u0011�\\u001eJd1��\\u0000p�a��xZ��\\tR�J\\u0000�*T�\\u0003�Lh�HΡ��k��i���e\\u0003�\\u0005\\u0001�E�ߊ�\\u0000\\u001ahV���Hˈ�\\u00146F\\u00043\\u001b���^�\\u0011F\\u0011j�\\u0002v��\\u0014�\\b�@��\\u000e��>&�yi����\\u0015q��N4�p\\u0001����������R�qf�\\\\����RrFiH����\\n��`Ώ�BQ�F�\\u001fO*����v�/\\u0013��j��5�s�(��P��}I��Y�H�\\u0011����H��LJ�\\u001e_*���G~��؝��CH� .�D\\u0000�\\u0000��z����\\u0015ą��G�,\\n�ǈ\\u0014�2\\u000fC��o��Wc/�������Ы1\\u0000�\\t5οh���\\u0018B}�H�b\\u0017O�\\n�Ѕ��zה�O۽�\\u0005¤�J��\\u0000�Z����D��ǑTu���m=\\u0004\\u000f^\\u0013`O�{�^0���@�0�\\u0019\\fw(���D�x�\\u0018�\\u001b\\u0001D~�\\u0001%�[[�㦔�(���1�\\u0005$\\u0006]\\u0018�ށ\\b\\\\�\\u0006�E�?\\u0011C4E��[���\\fR�R7\\fF���\\u00056\\u0002��\\u0006\\u000f�\\u0015��Rvk�_T)�\\u0019R7�(��G�]���_�(M<��J�*S\\u0019*T�@\\u001a�D�L\\u0011�Uܑ���&\\u001e\\fjcXą�׻�!�`�\\u0002z�\\u0005;��\\u0011A9*Y��$\\u000bڢ��\\u001d�\\u001du}.�6M����4���P�5���Ɍ��\\u000b!���>t�\\u0013�.\\b�NWV�:i�e\\u0016l�@��\\u0006ne���\\\\�¤T�v�\\u000b�X9yqf^n��O\\u0016#�����WO>(��p]lZC��gf�\\u0019�%i\\u0014\\u0010�\\u0015S�h�\\f���Vt\\\\U��!v\\u0017mΚQ$\\b}���_�\\u0014��e#�(\\u000b����X(\\u0000\\u0000<\\u0005mk�jIA�wg;��\\u0015���\\u0005�(��=Cj(g�Hm�3�s���1#�(i11�$/!sk��Uɘ��\\u001eٗ�)�,�y?l��OrXHN��`><v��lL�%Ia+(C`�c�4�1�\\bA\\u001f�k\\u0001\\t6cq~�4�ɋ�8j���~އ&�XA)��=7�Z���Ó۔\\u0003���Z�\\u0015Jɐ�F\\u0015*T�\\\\\\\"Qx=�'9��\\u0002�Ѥo�\\u001f\\u000f:\\u0012�~Ȝ{|vбf?m��M�!�����\\u0012z�X�O�RQG٩�S����\\u0019�\\u0006?f]��0kt<����Ƙ�\\b]+\\u0017f�eDhs��y?\\u0019��!a�3k�\\u0007��t��*\\u0006R\\u0019\\u001a���f/%�����?�,�����0L��z�`�����\\u0000�Ʈ���=�\\u0013��\\u000eՃ��&N<B7�\\u0001 \\u001fI����(^��[�`\\u001c|uA0udf�\\u000b\\u001du\\u0000����\\u001c�$��#lEe��\\u0018\\u0001vn�\\u0015oȽ\\u000f�2�fS��\\u000f�\\u001bT�;\\n�p�q\\\\\\\"��e��?�\\u0012�9(��\\u0001��s�0\\u0011�9J��\\u001b\\u001b�k\\u0018K귪;\\\\֘�I�m�$Zh�c$(\\u0007J�D\\b\\u0006��y*\\u0004,G��B\\t\\u0007\\u00106�_T5�o;\\u001d�âN�\\u001cj�|u\\u0011ȧ#�Hr\\u0013���!��\\u0001\\u001f}p\\u0010��\\u0003󉸞�\\u0004x\\u001ao�����\\u0000�c$\\u001bz��o��\\u0019@�/��o��\\u0007,g�\\u0000/�?�o�Ir�\\u0000m�,{�j2\\u0010u���\\u0000���WI��0�l#�K\\u001f�ޖ�\\r\\u001e\\u0019O�\\u000e��Y��쬌Q�V\\u001b�\\u000b\\u0011�5�}\\u0013'\\u000b\\u0017)x�D���\\r~GzK��O\\u0019�ؒ�-�\\u000f�_�qP���J�s��Gf�n�v�>Q����K��\\u0003Q\\u0010T��J�\\u0001*T�@\\u0012�J�\\u0001*T�@\\u0012��\\u0006��A\\u0011���Ua��*D\\r��_{k�\\u000f�ڨ��&�\\u0015�c�dp7\\u0007k�E�,\\f?d���E�\\u000f�^���a*�,����b���\\u0000�쥹�nY�&��x�<\\u0007SM�@��d�7\\u0014�8�=\\u000bnh�L\\u000f�Ob�5\\u00001\\u001dO�\\u0015�&\\u0011�6c��\\u00162���}*<I�)�l�y�\\u0006J'\\u0011s\\u0014#���I�\\u0014��̊s\\u0006��y�%q�˽�\\u000f�z߷���\\u0000��\\u0000K)�5��aō\\u0010H��ՏV>&�h͉���pp\\u0019=�7\\u0015ydBѭ��؋��\\r]f~\\u000egs���@p���˧�\\u0002��������1�\\u0016�14!�O���qU$K\\t#��_�ZW��3�5�\\u0006U��9/�KqL@�*T�\\tR�J\\u0000�*T�\\u000b�\\u0013M*D�����Q\\u000e8DXЁ�\\u0005[�I�N4���K�T�4�@B�3\\u0017�轇��T��e��\\u0003�[Yu\\u0003δǖEB#��׭�lz�������@;\\u001bX\\u001b��(*n��\\u0016 \\\\�� ���x�a�V<���������y�]����\\u0011\\u0018MƂ�MGæ�����ǐak�{t�\\u000f ��\\u001d\\u000f&;\\u000f\\u0003҄��`���\\u0001�����\\u0007�o�k��\\u001fkY\\u0010��#\\u0005`ޥ;h\\b�\\\\�FNR9vnL@\\u001c���o\\u0006> ��\\u0003\\u0019��11�/A{����1�Ǉ9���$\\u0000l�\\u001bxR\\t�\\n�ѷ0@�󮫰��%���iX�\\u001e�`|:ׁB�\\u001cn��a�|*�H\\u0004\\u0013s{���X��P�ߐ�D�\\f�+���|k'Q�m\\r���;�1��<�[��<���/'�\\u0002�\\u0004u \\r(n\\u0014��e��$�\\u0018��\\u0017ڼ�9\\u00181�,T�E\\u000f���\\u000b<����|\\u0018�[\\u0013�\\b�U�\\f\\u0014��\\u001b��:\\u0015\\u0011����PL`�\\u0011u\\u0007Aq�Rl֟�1�\\u0015��c���PI�+��N�y�\\u0000\\n'\\u0003\\u000e<�\\u0017��^�n~},jl�Rƌ�\\u0012�Z2}\\n}F�\\u0017\\u0002�����a�\\u001b\\u000b^�T�\\u001b�ż2G\\u001c���#��˯\\u001a_,�0�3,��Ieb�Z \\u0006�U|�cI^g\\u0003�\\\\\\u001a����9p�(�\\u001b_��߭N0¢\\u0006~S���$3}7]��\\\\���?�\\u001f�@;v1�8ܙ.�����\\u001d(x�Op͑��\\n0�/�(\\u0014�\\u001f�$o�Ҫ��lz\\u0014�R����h�\\u0014+\\b�\\\\\\\"�yz��`i\\u0006D\\u0006\\t\\n��o\\u0011]*b��{E\\u0002�R�Iɋxjt\\u001aй*\\u0019JȀ)ӎ��Ү�ɓ���F�۟V�o�;��-�5i�L\\u001b@ܤU&����܀�\\u0004t\\u0006�S~�8�S\\u001c���\\u001f\\u001f���ܪ���\\u00078\\u0010\\r\\u0017v�Sj�\\u0015�Y\\u0007�)�xȸ�?0'Mz�`)��\\u001d�QPَ�>���Ɲl֌m %É.�\\u0014\\u0012zt\\u001e\\u0015\\u0018H�DK���>'jٚ'\\u001e�L\\tШ?���b}~�N���i��oS��o;\\u0004\\u0013-���Ɨ�O?n�4�m#\\u0005Sp˭��h<�۾�wǔ��\\u0000C�_�E\\u0012L\\u000b���m\\u001b\\u000e@�\\u0001�M���.�\\u001b����rC��\\\\\\\"�p��i�s\\u0015k\\u0010,t4;=\\u0001$j1�oJ�MzZ�LR\\u0016�yX�?¶�ȉ� +̍\\u0006���aB�^����\\u0000m\\n�\\u0000�/!o�s�4����X�\\u0003F\\u0005I�\\u001f�k�\\u0010�\\u00022m�����ޖ�|#6\\u0014�G�?��N�\\u0000u\\u0012\\u0010r�*SN���Dߨ�9A\\t�N��\\u001e`u�JpKp�߱��A����\\u001c\\u0012�=?/�Ip�͝$�\\u0015f.o�~l>`Z�w�\\u001e�ۣ\\\\�OS�\\u001f�uAm��(.ݝ$�@ѨU��b:[�\\u0000�7�3M�6�\\u001cx��0\\u000enH:\\u001b�E\\u001c�@�ƕ�$1ɍ\\u0014� ��\\u0018��na�\\u0003e\\u0007M���%���\\u0019/���Q�\\u0003HF�\\u0014�>�\\u001aj�\\rt5�K�W�cbc�\\u001cN��\\u0001�zӨ�\\u0000o��H��������Uq��6N�\\\\\\\"G\\u000b�pN�Z��Ɩ�?�޳]��ی\\u00005\\u0004ڎ��\\u0018��BXɸ\\u0007sՍ\\tء-.n@\\u001aM��\\u0013�1����e�G\\\\\\\"u��z�\\\\\\\"k�(\\u0004�I�\\u000f�\\u001a����\\u0013�U�̟���\\u001d�4�\\f�z�\\u0000_}M\\\\\\\"���,��ī�Hğ���z�\\u0013%1Ő��&��Q\\u000b/!���+)P4\\u001e�4�~����\\fEz1{xuU�̟�\\u001b���#\\\\\\\"E�\\\\h�$�\\n�\\u001e����F�V<\\\\8vQ��%�\\u0003,�1�\\u0018]���\\u0000M�/�ےQ�܁����^\\u0019\\u000b5��s�\\u001a!�RC7J+^1��U��\\u0019&{?!v:\\u000e6\\u0016\\u0014,�\\u0014���#���4l�~�)\\u0003(��e��s4X��%�G\\u0017�>�j�~\\u0006�J+9n��E�\\u0017\\u0005��@�\\u001aG�!� �{���|�\\\\M�ac󣲭�\\tD�?3\\u0014ǎLfǨ�.����\\u001a\\u0013�F��\\u0019���lH�c�\\u0005\\u0001O��f�^�DJ�*V�d���X�б\\u0006�V�,�JK0_K\\u001b^�cA\\u0018�\\u0010��d\\u001c[u�q]\\u000e\\\\\\\"�p㢁`6��\\u000eՀ�:\\u0013��Ԛ�a^$���k+�]CI)\\u0001,nu\\\\\\\"�gA\\\\�t��\\u0000p��ꇂ�\\u0000ݮ��d,x���\\t?\\u00104�_\\u0015Y�z����O�n+\\f�C\\u001c\\u0000\\r�Z�a[X,J�\\u001d\\u0007�^�\\b���¡&�\\rx��\\u0012v\\u0014��%��z��u�zı$�j�C&D�\\fB�����d��n�r�2���$\\u0016�\\u00003t_�](�\\u000b\\u0010n|+�8c��H#�F��f;��6~V�5���6R<,\\u0011\\u0002�m�ƭr�p4�UGK�!m�%��*H�����g��\\u0001m��\\u001eF�p܅���]��\\u0013\\u0018���>Z\\n�\\r@:h\\u0007��֐\\u0015mA��:�U]X\\\\�ŉ��}�]�lTۥϗ��\\u000f5��\\u0010o��\\u0002������c6Y*��\\u001bXm��t\\u0011Ȯ\\u001b��\\tC}/�Kr�+s6m��4@I�r�\\u0018@\\u001a3�\\u001f�֭ػz�?9\\u0016���֗O9�����W_�y��1}�\\u0007 �����&����\\u0007�챴~�R����@��gß��������\\u0019\\u000ey\\u001eH5�nGµ���J�[�����.R�^<n�l\\u0000���1�)���#Zm#d�s�\\bՈb�,\\u0005���\\f��z����{�&V�v�+���\\u0000ȗ��/$��@�x�mpM��30⑦F_MǦ��҈�\\b�[�\\u0007ظ\\fW�w�W4{d�\\u000e�c�\\u001a\\u0015�/(\\u0017��U\\u0011��í5���)%��\\u0017�{�\\u001eL����d\\u0002��\\u000f�4�\\\\\\\"`��ȓ�u7X�$\\\\\\\"�[s[�\\nÙ$Y\\u0018�(^�ۑV8��I�q&�/Xw(q�{c�B�\\u0000�6U\\u0000y������H\\u001c��c���vm�o�(�M\\u0019�J�on��)�\\u000f\\u000b�\\u0013�\\u0016\\u001d�Z�V�����N�\\n=�ߐڜv�_j\\u001fy��]����H�\\u0005�\\u0002-}>��\\u0011ma�iS���u�OB�\\u001e\\b�ՙ�sM���Z�\\u0002��\\u0012\\b���w\\u001eU�԰��+�WX\\\\\\\"\\u0017!@'sA���,l�W`w����I�p\\u0006PB��؂V�#��V���z\\u001f\\u001b1r�TE!c�9�|���i9��\\u001eF.@;kC�G\\u0013�N$�F���7��\\u0005�-s�AA��o������1-\\nث9��K�E�@T\\u0007�FՑ�x߯�i\\u001aM4�!�\\r�}\\u0005S!\\\\\\\"\\u001e���].os��I�2��;1cs^T��5�6\\u001c�\\u001e�_���7�\\u0004O��։&�9,�M��Z\\u000bv�\\u0017��\\u001c�[��o\\u001a�E�2~��8a8���\\u0019�~u�fe4���z�k!�>\\u0014j\\u0006Adʚ��o�W�\\u001a'\\u0013�.NZǌ\\u0019�tg�7�\\u001f��Y\\\\\\\"0�Ǎ�<��!K\\u0010�\\u001c���\\u001f}v��dxx��\\n�%���t\\u0014��k�²ߠN\\u0017mHbD\\b\\u0000]\\u0007Z ~�=��]�\\u0017p\\r��U��\\u0018X�&L�y�\\u0014\\\\���R�\\u0000��ˍb\\\\\\\"�J���K�Jv4��&ύ�H1��I\\u0001��4_��,k#Ơ\\u0001pN��.���/\\u0017�$t\\u0004�\\u001f�g�\\u0000�$\\u001a.9��a��U��Aڻ(\\u000fln�4�\\u0015�-��i�T\\u001d�\\f\\u0016X��'�����\\u0015�ｹ�du~k���O��6W~\\u0001�a��\\u000fS8�\\u0017���&�����NQ�\\u000bz�4�s�_�\\u000bx\\u001a�ݤv��f$��u����\\r��\\u0016bͻ\\u001b�6_�˃�Z\\u0005Br�qS�@?����\\b$ő��\\\\�,\\u000b(=\\u0007�c��\\u0002<_��N\\\\��%\\u001fKx�ҭ\\t��?�;�)B��8������i�6Lݪ(d��iq��#���\\u001f���Ǘ\\u00132&�2Ѥ�Xx�75��Y\\u001a~��\\u00148�FcR\\u000f!��r_��B\\tkF\\u0017\\u0007��ϓ��\\u0014�&\\u0011�(㏪�P8]�\\r�g�1p�\\u0004^$�MŮ\\u000fʹ��}�,>�@��\\n\\u001d\\u0002��#F�Q\\u001d�����@M'\\r5\\u0001G��m8io�V��odᑐ��LJ�)<�3M��\\f=��{ܨ&�\\u0010)l�G��\\n��U`��,���O\\u0013X7pv\\u001e�vp\\u0004,\\u0007��=*:��(��(ܫY�ރ ��\\u0001ǐ?-�ރ���Ӓ2 Vo굛���\\u0016\\u0013\\u001f\\u000f\\u0003��O\\u0015\\u001c�ڳ\\u001d?\\u001a[\\f�A��3���O�(\\u001b�iڞ0.�rǉ�\\u0000���\\u0011�\\u001aC\\u0019���\\u000f�zU���Aib%\\u0007�b���\\u0015��\\u001cq��E����a�K�%B��\\u0017]\\b\\u0004\\u001f\\u0002E�I�X�u)%-�]Js>$r�i\\u0012��C�Rܬf�a�V؟(¥J�\\u0001*T�@\\u0012�\\n\\t&�3�wU$x1�R���O\\u0013��ԟ�\\u0006�>����Ь\\u0018�\\u0000ێ1e\\u0002���Ռ9Vb'>�jUO�Wae�\\u00167�����p�I�ے�07�p���{\\r�\\u0003�f�x����i]���d�\\u0013��ՔY9+\\n,��X]�`/���\\u0000Q�}�\\n\\u0014<ذ��Z��<ᒄ�����:0�\\u0000�ҫ�𡯨�Yш�\\u0000pI�w\\\\\\\"|\\u0011\\u0005,��]�˕�Y��o\\u00004\\u0015V���j:�O��\\u0001 �\\u0005�P�����c�$���\\u0017�\\u0000P���\\u000f�\\b��\\u0018#��F�b���WKn\\u001b��Y���`̆9\\b���V\\u0016\\u0000�\\u0000\\u001f����cX�b�;\\u0003+�!���P|\\u0017�c�r2�b�\\\\\\\"~fP\\t���TY���\\u0016\\f��t+^���\\u0010��m�T�p\\u0002�d\\u0012\\u0017�mImO�I��(��D�6�\\u0006��D�\\u0019\\u0016��6��\\u0017��/�\\u001a�?H��t��\\u001c��\\u0011$lj���X�2�Gm\\u001d�\\u0017ڶPE��Za�{R�J@5�����6\\\\\\\"��H���;;Xݦ\\u00138AY[6e-\\b�T\\\\\\\"��b����TM�6�\\f\\r\\u0001��U4au7�\\t@u[�mj�4�r��8���c�Z\\u0007\\u0005N�l㥼~4h\\u00175�IU\\u001c\\u0006� �M+'V�1�\\u001c�i�����P�\\u001aH�����c�1��%�r?)��eJ�u�6;��x\\u001f�*/6T�\\u0018\\u001e�I\\u001f\\n:����}�c�]���:<l��\\u001c��X1��8�(��u'AC��_�����\\u0014*�U�v_Y��N��,K��\\u0018Ny��F�[��q�V\\u000b��s��\\u0000�)\\u001cN�tpT\\u0013r\\r�n�����t�\\u0000\\u000bk���\\r��\\u001ev�\\u0013�@�)iJ/2X3^ߚ�ִ�\\u0012��=\\u000e߅*푯�\\t�v \\u001b������e�\\u0000O \\u0007[�\\u001doj�'�I�u����µ��\\b�$\\u0004\\u0006�����䀻���\\u00005��\\t^%��X����\\u001fr�ɇ\\\\\\\"��x�\\u0017&�= ޛ�b`���T�-/�N&,�!�\\u001f��.>cZ�;_m�V2ċqȻ���.]+D\\u0011�\\u0006<w�\\u001d\\u0010\\u0006e��\\u000b�\\u0003֍�4RF���PmsR���I�|�ίg\\u0002�d���[�\\u0016�\\u0007�\\u001b���.��!rХПJ��t\\u000f\\u0017\\u0006�\\rů��V��8Ru��Ou}J�\\u0000GO\\n���Vun\\u001apkK$�ה���$0G��k�GΘ&\\u0014�qg�K�\\u0011\\\\��r^�i�(|�ۇ���!x���\\u0010.���դ�i#4��s<}\\n4`O�գ�\\u0018��o�{ȿ����4r\\\\\\u001eC�=u�H��yΗ3��M�0��u�,�I-\\u0001\\u0012�\\r��aq\\u001a�U�n:\\u001d�%Κ��\\u0019zګ�\\u0018uo�<���x�����Bʑf�\\u001d�c鿊�\\u0000P�yrdd�$�x�)��0UKukҜ��Ⲣ�_\\u001bh!D10r9���۴\\u0011�%y��Ḧ́�ߚ�\\\\\\\"��\\u00178c;̑b\\u0004בc$�]���1��1�N�\\u0010tk�!�����zy5�z�\\u0012Uo��m?h�?3\\u0016.�\\u0016\\u000e$~�D�y��*I7ө�,��$]$x\\u0018i�������1�L��:�Qs\\u0016�\\u000f\\u000f\\u001aϸ\\u0003�4>�ť�%iB�\\u0005���Ej�\\u0019��\\u001fUb�����~�=��W�$2I���\\u001f��p��a��\\u0002c��\\u001e�\\u0001Ԛ�1�2���5��ԙ\\u000e<�~up�Ë\\u000e?�'\\u0007=�\\u0015�[$��1�e(�\\u0012�(3F>�]\\r�h�y�ɉe��\\u001b�>\\u0006��\\u0005,�\\n\\u0005�;XW/\\u001fx�n�&?e1E\\u0014��\\u0000��l��B�G�|k5�o��rb\\u000bߊ\\r��7���\\u0000\\u000fյ�\\u001f\\u0010ii����[���� P����\\u0016\\\\���\\u001f��A2q\\u0001�d@\\n�ck�f�|)��v�\\b�R�Ac�\\u001d\\u0005g�!��<T媒�-��A������<2�׏���E���K�y�z�ϐ\\u001fe\\u00191���|y{��u�\\r\\t��\\u001an�.nF?q�{\\u0011\\u0001�ŷ#�\\u0013�aXw�H��-\\u000brx� �Co�M�����\\\\\\\"A��]��k�\\u001d�j)6O��Lp*\\u0002@�d�-k�<h��\\u000f��d��V\\u0011w\\u001c8�cL��-��i`E�|��vl�:\\b�.4�Œ���{��V�\\u0000�5u]�L\\f��\\u0000\\u0013Jsp{|\\u0010\\u0000��xu�+�E3�\\u0007��\\r��~F�\\u0000Ƣ�5�#�c�v�1\\u001d)DFƏ�M+6�\\u0018(|�\\u0018sc� �\\u000f���kuk���4�2t\\u0012�I>\\u000e_�g\\\\\\\"�{l�پ4�t�\\u0010�]�Ƥ���-\\\\\\\"�z7Q�4�++�v�_S4+��\\u0013}��D���_�\\u001e���i\\n-��\\\\�xQ\\u0016t�T*��\\u0001�5��L��G\\u001bɒ�ɘ�I\\u00186��ğ\\n��r�ə��ݛ�R���A�ҍ�C��1 i\\u000e����K��M�@���\\u0000��j\\n�ȔK%��4\\u0017���\\u0012�I^޼�V�B��Ѹ��?\\u0016�)�Q�\\u001bԿa�jU+�]Q�b��M\\u0017.\\u0012�����:��x9��\\u0013+��_��u��ޠ�7\\u001b��tK��\\t��#4��CUU\\u0017'N�ւ��x�Dɑ\\u0018���ތ>$hk����\\u0016ʳ\\u0017A�$���Zw���\\u001e@\\u00172\\u0012�,���\\u0000��O\\fYBܿ�91ݱ\\u001cL��ޖ�F�K\\f�?\\t��\\u0006\\u0016��\\u001f3\\u00070�\\u0000be}/��?��jec��D�S�|yT�-�5w������v\\bf��800�~�_���y=�7\\u001c�'���G����uh�d��T�n��J��R�J\\u0000;\\u00058\\u000f{NG��\\u0015y\\f��)���M�@���(t��\\\\G��z\\u0001���0\\u001f��\\u0015^�O@\\u0006�h��b�֊+���|i$^�V@�)b�$\\b7��[�Z�Leҩ��S\\u001f�\\u0000&�~ݎ,4��eD[\\u001f\\u0010p�\\u0016Ѧ:__���\\u0000�\\t\\u0003pi�᏷��~��o�̶�9�24�?\\u000bS_۸\\u000b\\u001a\\u0007\\u001a�\\u0018)\\t=u���j�0�+�e�\\\\���X��B}M��� �\\\\\\\"O�\\u0000\\u0003�*;\\u001f���n\\u0010�CwI��\\u0005�\\u001d&�q\\u0014g{r���4b�\\u000e;ew'�x�ǵ\\u001f�\\u0000�md?!aR�A1B����+�mƠZ�\\u0014�b�ݵ�ڇ|Y�kh�M�T\\u001aW�{�X\\nQ\\by���@�;�i��\\\\\\\"�\\\\\\\"�1�dK+�������~�\\u0000�y�#s\\u001e�{����Y��O�!�W%�\\u0006��l��bF�N�Ŝ�u��\\u0001�ʭ/ �[��\\u0002�\\u0000�?��Uo�\\u0000\\u000eD?�؟\\u000e\\\\\\\"�����l=�5��_Ə\\r\\f��2�-��\\nb\\u0011��{\\u0019��$�u\\u0016\\u001f½o�������q���A.F�O�z�\\\\\\\"�\\\\\\\"���s��4�@\\u0011b,\\u00068T�-��k���04\\r{\\u001dW�ƭ���\\u0015��a�F��\\u001au�Ӻ���\\u00117��R�lF�\\u0000\\u001dh\\u0002�G�>��jGZ��3\\u000b\\u0014<�]\\u0006�*Y���.\\u001fډ��\\u0001��y����t��퍍�\\u000f�_k� t�0��2eʨ��\\u0004ؒzZ�d���@�\\n6\\u0011\\u0013�>���:@�2��@��\\u00042�z��5謎�#��i\\t�\\u0000\\u0002�\\n�\\u001f\\u000bl:Rs�AN�2Ts�N�_K\\u001b��&3�\\u000b? J�UM�x�ީ�9��\\u000b�r�\\u001a�ڢ��8�X\\u000b\\u0001��uP��\\u0012\\u000fqP�h/�����}��\\u0007�������ϥ�\\u0010M�E%X0�mI�����݆��4��vb��Yֆ\\u0012r�\\u0007s�h���\\u0017K��ZԱ�[2��&�´\\u0000����!%H\\u001f\\u0001c�5�\\u0006���ʋ�\\u000eyBi� ��m�\\n�4�e$\\f�i\\u0000a��x��\\u0000Q=i�ݨ�ƈZE�nd\\u0016�&�\\u001f*�l\\b�V\\u0007��������� XUr3d�\\u0017�\\\\\\\"��\\t\\u001eྊ\\u000fO1Y�Y�Ĵ����ba�H\\u0012�4��\\u001b\\u001d\\u0014��$~[kX��\\u0012<FǄ\\u0001\\u0019k�\\u0002���\\u000b-^\\fN� )~+ %�\\u001c�G\\u0010(�;A�>8^5�Ă1�,���\\u0013��qvԛ_\\u0010�y\\u0006�>�\\u0012\\u0005NJ��n9\\\\_m\\u000e��\\u000f��\\u001e0\\u0012否���6�})�̘�\\\\\\\"�P��\\u0014[�P��ὮA�t\\u001a�ִ�/$Ix�>2�\\u0000a\\u0015O\\\\\\\"Y�Ss�Z���b@\\u0017%o��\\u001b��Zct�0�@��*\\u0016I\\u001a�@6 �\\rz���\\u0011;\\u0018*I\\t��\\u000b\\u0015���Jpee\\u000eߐ����\\u0000�t%���@�ڱ����wⱑ�5\\u001cy�.=_\\u001a�P��5���#E\\u0006�w(�y\\u001c��\\u000b���L��\\u0014\\u0014�\\b^\\\\\\\"ǩ�]��Ҿ���0\\u0019\\b\\u0004��6��P�a�EL�\\u0002��\\u0000\\u000f�o�Kj�K,.$��8ٔ�ս\\u0004�;Iae\\u0000�#��Vf% ��\\r95��$��\\u0016@^\\u0019H%\\u001f־�����\\u000el\\u0019�hM�����T�֥�z\\u0004G���\\u001d���.[P\\bЃ�m�Y���b� \\u0004�\\r����A:1�K\\u0019�U\\f>uB=R\\\\\\\"�q>���]~\\u0015�L)�!խ����A\\u001e������O�j�R�� 0�(\\u0001fj�\\\\�*�\\u001b�y\\u001f*B{_u\\u0012{F\\u0017��M�y^�ל�#p\\nQ����~`�2�����7>t� Qۻ\\f�Ι\\u0019L�MDjno�材�\\u0000\\u0005���\\u0006K�X\\u0016���&�����M4��h���A\\u0007��\\u0007o��Y\\u0005��B7\\u001f\\n���Հ�sr�]j4�\\u0010\\u001d��D����\\u0004�Y\\f�?�Ę��\\u001e\\u001f\\u0011L;^D���ְ\\u001b��:�X'ĕ$P�Ř\\u0003� \\\\\\u001a��\\u001b\\u0016^vۥ]^S\\\\\\\"�'�D�q��\\u000f�nHس>��#\\u0014\\u0016\\u0002�X�r\\u0000y\\u0018\\u0012\\u0014=\\u0003L��^��\\u0019C3ی)\\n�:�&��E�����ם�\\u001b���\\u0005���&��v&\\\\\\\"�FJ8\\b�l�\\u000f�\\u0015bG\\\\\\\"|��\\u001bk֠^1�{is�Tp�X6\\b�{�\\u0013��0?�5�\\r��{�\\u000eyٓt�\\u0010ݮ�^��Q�;袕^�\\u001eIB\\t�������Ko�v�v��ե#��׽o�&1���{3�\\u000bo;�[`��C\\u001c@�\\u001ci�\\u0005\\u0004�҅r\\t���\\n��iK�2c��\\u0013H\\bVn�_Q&�\\u0002\\u001f�\\u0012\\u0003�\\u001cc�%����\\u0014���r��d�M�ۏ��\\tP\\u00125\\u0015*P\\u0003�h�^�q����$\\u000b��H�p���\\u0016��\\u0010H�)ty�\\t\\u000eG �\\u001aV���/ԶL�T�!B���5��u1�����LX�_����c�}�l�� .\\u0014��U���6�cyf�ۊ?s���Ƈc�E�j��\\u0019S\\f\\nT*����c��49���9�,��c�����\\u001b�o�l͎ؒ#��+}g��T\\u001eTL%\\u000f\\u0018�\\u0000\\nd\\u0015\\u0004\\t\\\\\\\"H=�\\u001e�~�-).\\\\\\\"i�\\u0004p~�}�-bO�V�H�F,w5Z޳\\nu��J�Az�\\u000e�S\\u0001l�����\\u001a��+h�\\u000e�n�W���x�Q����\\b\\u0006����\\nC\\b�#�]��ȕ\\u0019���\\u001e�O����\\u0005M�P�\\u000e%�5\\u0016�_��2\\u0010H@*�\\nI>\\u0004\\u0001K1�\\u001a&rA;s�\\u0001ޙ��<iYa����*@��hu�Tqz�\\\\\\\"��:2\\u0018��dk�m����\\u0007A�E�wF�p�\\u0007��������p��\\r��ZЗ�c�k6 �:��U�7\\u0003J`Q�\\u0019�\\u0015�a�noU+ր\\u0002�߷��b|�/#\\u0012��\\r��K,|M�ƺ/��\\u000e�s�\\u0000���KQ��lt7ڬ\\u0019A�\\u001e�u�\\u0000�\\u001fs�T$���\\r�IG��[]T�^�/\\u001eJt��*ɜ\\u0001�pT�j���.��J\\u0000ъr�����[��moo>��Y[�V�H*\\t�k\\td�\\u001dn\\u000f�E8\\u0014��1c>���/�/��\\b\\u0012��Pn>|�,��mM�aJ�A+\\u000emt`A�\\u0000)��U*���.�Z\\u0016p�p\\u000f\\u0013�\\u0007���%���ru5�hQ���ڴ�(\\u0006�v��\\u000eX\\\\\\\"��O��h?�k�;W[�#0FY�R��'M�;SiD\\u000e��$ȑ���2�7�m�Z`����\\u0013\\u0010�.,H�\\b\\\\\\\"�\\u0015�S'+\\u0005\\n/�n=�R�\\u0019�H�7���:�2۟q�\\u0019\\u0015��̎G�-��&�\\u001f���\\u001e�k\\u0012E��Yqd6Hǉ�:��������\\u000b@#$3Z�ڀF�L���V��&L�S��<,y{�@�\\u0000WO���I$�6O��\\u001a\\u000e+#\\\\��\\u000f�����\\r�ʻ���~\\u0001�\\u0016�+�𣏕��\\u0018\\u001e�1\\u00041��Q��s�֝|\\u001al�罍\\u001e#⮰�� �\\u0004��q-{���g�n�ێ�V��H��!ǅI jz���7\\u001a^�+4\\u0017`(�#��.��Q�~\\u0014\\u000064e��C�����ErݪV���\\u001b]o]ZZ�5�n�غ�]u�q\\u0004X�j�J�ZՑ@�\\u0001C�\\u001f*��О2J\\u000f�^�$�����?;u��\\n��\\u001cx�0��a}�u\\u0010/����\\u0019\\u0012&�\\u001c�9\\u001cW����\\\\��3�\\u000e\\\\\\\"F&(�b���\\u0000\\u001d�G�L/\\u0011���U�����V�����6Jc�'�\\u001cC����\\u0000\\u001a,�aG� �\\u0000Hcu>;�z\\u0003�O�ۍH0��\\u0003lI��\\u0002�h}��\\u001b��H.�Iv&�h^��B�T����AV��@\\nIi�_�3�$s{Q/�/d\\u0001x�^ϟ�\\u000f\\u0004�\\u0000�7��m~�z�\\u0017&i\\\\\\b�\\u0005F�a{[��V�fx��\\u00132�\\u0012��A���)SU��\\u0000s\\u0017���\\u000f��#��Ӯې%���쭜\\u0001�?\\u000f�&-z�w���4)��\\b@:1���O�`��1䕁��V4\\u001by�ʳ��\\u0013\\u001dd�ȼ�\\u0010>�if�����\\u001dk����{�Z����%�o�(�Vv����8�K��czPt��e�N�u����/\\u000bp�۝�ɐ\\u001eQ�P\\u001d��\\t�/�s]nfTx��4�҃�?��\\u000f�L\\fA��\\u0010��ީX~f;�3޳�^Q�\\u001a�Bx�\\u001b\\u0016��YO+\\u0017�\\u0001�Y&����;\\u001b�5J�*�%J�(\\u0002T�R�%J�(\\u0001���Y\\u001f\\u0019�����H\\u001a�<�\\u001b��Qb�/�Ƈ�k�Vd`�J���\\u001b�)�=�\\u0019�U��s\\u000b\\\\����<)��\\r����_�@9(\\u0001�\\u00167�����d\\u0018S�Ok����o�c\\u0017vʊr� x�ױ�����8�\\u0001�^\\r-����'v\\u0002>��_�FZf_Գ\\u0003�V��\\u0000��}��e�օ��=rH��=.<5���,�\\u001c����y$nd23ik(\\u001b\\u0015�\\u0013�N�T���'c�\\u0002�4� tG�\\t����v��W�*Q\\u0011��(�ԉo�R��d����Y��\\u001c5�\\r��MfΜ[�kG*X\\u000bl|h�\\r&�\\u0019ϋ�3�OyPG\\u0014��BG�\\u0006ă�ֹ\\b�)�\\u001d�\\u0010��z\\u0013E���Ƒ����ij�v\\u001c�?-<(�~�I�%%�$\\u0012�r�di@\\u0001������5�y\\u0018y}���q�\\u000eEq���H]�ybiof���C�:����h�Gy�\\u0000�z$��#��\\u0006��1�\\u0000��[0��(�\\u000e����W�|�gu�)q�M����>�\\t\\b����|�wb�\\t�\\u0006�\\t)R�J\\u0000�*T�\\t^�%�\\r�\\u0000[���\\u0004�\\u0001rv\\u0002����\\u001e�9�*B��T�W�t��)\\u0001�Otx�oaK8\\u0016-�y�C��\\u001b��\\\\��_�k\\u001cԂ\\b\\b�e�����Ë\\n\\u0007��\\\\\\\"\\fLB���t�\\u0000.��\\u0017!(�W\\\\\\\"2\\u0001$�3��U��\\\\\\\\גb\\u0006�ydr�s'K�\\u0000�\\u0000��\\u0006L��b@\\u0014\\\\I�\\u0018��}��\\u0011,�!H��\\u0011s̻ȫ�-�o�\\u0006�LR\\u0001�����Q���r'�;�x{^9[N\\u0004�䶟:\\u001a\\u0012_5X�\\u0013\\u001cm�\\u0000�V���E��ֺ\\\\\\\"B\\u0002�X�b@\\u0002\\u0001�@�N�3��\\u001e�\\u00019�$�I^djz�5\\u001fm\\u00174͋�'@\\u001d�\\u0000\\u0014�I<h���\\u0019��$�h,\\t\\\\\\\"��\\u001ap��q�\\u001c��\\u0000��&��&LrE�o���\\u0000����Ν�\\u0014�y�x\\u001b�\\u000f ���\\u0000*�[�<�~����R��-�/�5�ʖ�H����\\u0017x\\u001d�&�<5� �i�6s�I\\u001cN�=i�\\\\`c��\\u0006��(,H�B\\u000e�&�r�%F2:���p�\\u0000�҈��N��v�H�\\u0007��\\u0001�@\\t \\rI�\\n�_l�K����hn\\u0010\\u000fqa\\u0010@���\\u0000?\\u001e�6k�4���K�\\r�*��r\\u0017��ʪ��BmE\\u0014\\u0016�\\u0000��EP\\u000e��&��ғ阯�⌇\\t��ݕ��A҄�f\\u0012�Қ�\\u0016�v\\u001a��Ii\\\\\\\"r\\u001a[7Z��v�7\\u0012�n�����\\u001b^�͕�4�\\u0000ڈ���l~�B��G�\\u0002�o�\\u0000q�Dң-�\\u0014\\u00064O\\u001fsX�]�HQ�O�\\u0000J+\\u001eib��z����_�Yc�)��2�n1�\\u0007�ע�q6�X�3���\\u0011���9\\nf�/��\\u000b�\\n�\\u0019��|���\\u001e\\u0000��\\u000e\\u0004f�^�N�|�q�n<�\\u0006r��$�\\u00076�9/+u�F^\\u001a�+I\\u001c�rU\\b}��Q����x���^]\\u0018Vo:i��;�㼸�{G��9\\r�,:Ն'\\u0012d_I\\u0016\\u0005���F��!�\\n\\u0017ByI\\u001a���Ԩ�t��H:_Ru�5�^\\u0011��ڶ��\\u0000���\\u0001I�A'f\\u0002�{�/B�\\u0010�\\u0007*\\u0001\\u0006?J�H`��z�\\u001c����__.���@ʤ�;2�\\u0010�*\\u0006�\\u001f\\u001a��4���\\u0000�\\u0003a�1���׸��z|(�9\\u0005溒�<�\\u0006��Ly��̈́5��s7ks��ѐBL!�ԁo����E�A�c��5\\u000e^>�'\\fZ3{���/X�F-�\\u000e\\u0006�����VوK�\\u001a��\\u0019��鶟}\\t\\f2��~�\\u0003\\\\�6��\\u000f�Q�r��\\n�Uɉ�:���\\u0018\\n䳡l\\u0019����B:��a�!R\\u000f ����?\\n��\\u0000r!\\u001919ء\\u0003�ƻ�h��&��+�f��\\u001d-���Om|��\\u0010}��eo�\\u0000$y�\\u0004\\u0002M��:\\u0001�]�kŋ\\u0003\\u0002,{\\u0002�^Kn�6�\\u0000ʳn\\rR�\\u001c�����5ɀ3 �\\u0011\\u001a\\u0010<4�)nG�\\u0005�U����E��G:�ׁ=|�3�=�\\ffT�^a�W��\\\\\\\"��3@a�R���Ym�����x%���m�\\u001b�g`\\u001ctPl�^9=%X�V]�+\\\\�����\\u001a\\u0005�'��\\u0014\\u0003Vo\\u001f�\\u001e4�u�3�wf�,l���'�*\\u0010~���YI���Zi�n�\\u000f�-��D?,�yN\\u0007�\\u001f\\u001e3�\\f��2\\u001a,��5�\\\\\\\"s6D�\\u00004Kԏ\\u0013W�˂\\u0018$YcY��'�\\r����\\u00152\\u000bȋ\\u001f\\u0003\\u001c\\u0018�\\u0015y\\u000bX\\r/B�.\\u0013�\\u0017\\u001f��nZf�v��|\\u001f*�9ooC\\\\���Dht�ހ?\\u0001I3a|��� ik\\u001f*&IY줒���\\n�Z�E��ٔ�2�\\u0001\\n�{������#r�ɝ���\\u0003I����m}�YJ%8r3�]��cL\\u001b\\u00181�o��-�{(9�\\u0007�֡s� �\\u0019'���E�c\\u000b�ZC�*[�UVװ�׭���xq�q��8�A�\\\\\\\"/$�����V��=�\\\\\\\",\\\\N������r�a�8��R���:\\n��m�i�L\\\\P�4�W\\u0011���\\u0005fn�����mu�f����uΜO$���\\f\\ta�(\\u001b���N�W���Q��\\u001f��H�ܛ_v�.oyCJ�o�e^#^�QZ�4�ʟ�V�˗ڧ������\\u0000��E�)\\u001c�@�#kx�i��\\u0001ofw�Kյ\\r\\n��i!���KnK�\\\\\\\"�NՌ22p�Y4B[{�WP+^\\u0014t��R8�_]\\u000e�����\\u001ci\\u0014��q �|�Ot�3r�%�X��9\\u001dP�)ca���\\f�SK�(4��Hz��\\u0014�ؘ\\u001e��j�+2���\\f�5�k\\\\r�׏��\\u00079��\\u0007w��wLu�W\\u0001�DS�Ad*T�\\u0002<)�k�S`��>�)��Xұ\\f���\\u001d�\\b�ܥ�Ŕ~�\\u0019q��O<`�nK\\u0003��S���'X �\\\\\\\"�|�V�^B\\u0019���}���cpK\\\\\\\",���Z@��\\u0013�Tlo�)��٬�@|�|�&�x�1�W��\\u0017�\\u001a,�1s\\u001ah��3\\u000b\\u001d�'QN�SB��;H�ͩGl�x���xJ>���\\u0000\\u0011�)�\\u001b�Ф5$����T֫!\\u0015\\r\\f.�\\u001fq\\u0011�3������e�Z\\u000b?$\\u0018�\\u001f\\nM�\\u0010p���H�\\r�\\u001d)Za����4\\u0018��[�:N���\\u0018�G½��{x�8\\u001a�k�M�o�=�\\u001cb\\u001c|�X�/����?\\u001a��&f9E�\\u001d�Q.�U�q�E��I��J�\\u001c�J�+c2T�R�%J�(\\u0002T�R�%z\\u0018��4�� �3~CB6\\\\\\\"�����1l\\u0016ou\\u0007��>���]R��%�\\u001dN?��9G\\f�\\fw��Կ��LY�~H�\\u001c�!��޸\\u0012\\u0005z���)�\\u001dF�J�\\u001d�_l��\\u0004�Ƭ��#��ֹ�;V\\b��\\u0019]�zi�^իw&�\\tP�r>�-��ޱL���G�c���֪\\u001cL�M�:�-g>�B\\u001eي\\u0001���QL��.\\\\\\\"^_�m\\u0005-��$7y����JT�X\\u001fcabA\\u001aL�]�\\f��\\u000e�R^��I&�u�W��D�\\u0000���\\td�\\u0000lz|�vLM�\\\\�j���m�L��L\\u0012��\\b#�\\u0000zf�9�o������M\\t�'a�p0�\\u0007�\\u0018~f\\u001b���oH�q�\\u00140�B�>���X\\u0018p{�\\bk��{�ە\\u001a�;%0(m�\\u000f�\\u000e\\u0003�9\\u0017�p\\u0004Ko�\\u0007�5 kCb��\\u0014&�\\u000b\\n#�\\u0011(,]@\\u001b�@\\u0015��M\\u000f32\\u0006.,�Z�ȿ��E\\u001f3S��~�\\u0011#cy-�F�v�1�h2_�g��ߢ�<��\\u0000Ԓޒ<���*�X\\n�� ���N\\u000e&1�ͣ\\u0011�P\\\\\\\"�뿮2�1Hi��o�\\u001bW9\\u000e4�l�;Yo땶�����Ap&�'�\\u001b�}�\\u001a��<R&<V�#\\u0001�\\u001dz[�Ճ��W�]1kom���h�⼯��݋����X��ڛ�iuo<��#_\\u0013XWJP�S\\\\\\\"W��\\u0019�1C⤏¼�L\\u0003���~;)�\\f�7G���6���d����Q؅u��O���נ�p\\u000e�z$\\r^w*��`\\\\ݽG�U��B�\\f|\\u0014\\u001dI7�|�DT1\\u001b�[�^4�b6�J�B1��/V�46�|k6K�m��� crk�\\u0010�\\roF\\u0000��\\u001b�\\u0000\\u000fV\\u001a���wyߓ���\\u000f\\u001d�6��bn>�ؕ�(�k0'�)\\u001e\\u001d4�\\u0005L\\b��5f���:��c\\u001c�5�\\u00005\\u0007��Lq�y���&�}\\t���V�+�6��q@��Է�{R�C(�\\u00126�`fi�[\\u001f\\u001a���*�x�'AI�\\bo\\u000eL8�\\u001c���X$��5\\u001d��\\u0012\\u0018��ąPF�~'�H\\u001aT)k븦]��cĜfb�N���\\\\�,�ߐ�𥟜�9Gr�-�bi�cE\\f\\u0010�\\u000b:�o�#����0�ٍ�U#c�����}���=����\\u000f�\\u0015\\u001f�lw�:D�nK\\u001a��\\u0010\\u0000??�*����4�$��\\u001b�>�O����ʟ%��!��\\\\�>\\u0003aY�N����\\nN�~�l��GA\\u001e)�\\u0013�\\u0003ј�\\f�Aab\\\\�G�q�\\u001e��^疪��\\u001e\\\\\\\"��saV���$��\\u0006����\\u0007�Y\\u0018��F\\u0004��~���L��G�ڃ��ʰ�#�UrD�\\u0019�J�\\u000eĎ<v=O�\\u000f\\u0018t͍��\\u0015���7\\u001b�hE�\\fZ��~4d9��$LX]\\r��~4�\\u0004�l\\u00142\\u000eJKj�\\u001d��}�(��?��\\u0001\\f\\fl9��>�@ř�����\\\\�sq���{� \\u0012E\\u0010gV\\u0004\\u0006\\u0002�Qn�-\\u0014�#j�*P\\u0004�x����}�m��q{�oҖS\\fv\\u001c\\u0011H6�\\u0017�ƍ�V\\u0013��*��F�\\u0006�n�N������YY/��/8\\u0013���\\u000f�\\u000e��6�'��T\\u0002LY�[\\u0016����N�'�\\u000f+���j7�t�t�+\\u0018�m��e\\u001c���\\u0000>�\\n\\u001bh:i։�#*��#�I�d\\u000fco\\u001fV�ԊI�=S�!х�>v��;�Tx�\\u001fX�1��T*Y[�n\\u0004�<�߻H�%p�'\\u0001��as�#�������ܰ{�\\u0005�D��\\u0005Էʒ{�\\u0014�ڃ�,(��d��5���\\u0017сQ`A\\u0015,h�q8C$����X\\u0013r\\u0000'�\\u0005n��j��I�\\u0007�\\u0001\\u0003�\\u001f\\u0015�Y�&T1�^\\b�{�:�\\u0001DC\\u0016#A\\u0018�\\u0007�/\\u0019=\\t���)k�\\tMg�ղ�Ԩ\\\\��@#�+�c^ȉ4d��T�H\\u0004q'�\\\\�d\\u0011de���R=6;i��U\\\\\\u001e��7�r�\\u0001����9MH��y\\u000f�}ɱ��Ô�)\\u0017?H\\u0007O�s��7\\u0013�\\u0006Bł����ʪ�+'$\\u0006�\\u001d���S_�\\u001c��3\\u000b\\bӊ�E6����Gd`�l�cL�)Pu2Α����\\u0014|�K\\u0013�pk�\\u0012\\u000f�w�?�Bh�e\\u001c]H7\\u001b\\u001f�V~Ꮀ4I��k\\u0000,)�9�\\u0000\\u000e2�)\\u001a�ڏ�\\u0000j�ne���\\u0000;S溂�\\u0014�+�1{x0\\u000e�A?=i���om΃�\\b�\\u0012��[\\u001f\\u001b\\u001bP$�\\u0014��\\u0018�Fuo\\u000b��\\u0002��ś*x}�����M�֭�\\b�V���y�@\\u001e��cb7\\u0000ڀ�8ߩ���fMT��\\u0016։�'���\\u0017�^�����LyN,+�.�=\\u0005\\u0000)r\\u000b�6�V�JC%[���~�i��\\u001aď���v���\\u0000�y(��n:\\u001a�ɘ@\\r\\u0004\\u0001\\u0011��\\u0014�C��x�Oor��NHvs��\\u0015\\bb�H\\u001eۛkֳ�,�cx���A\\\\\\\"�V��>O+ ���\\t\\u001f\\u0016v�2+��fRE��Q��c�\\u0010\\u0010\\u000eO����Ҷ���J\\\\�\\u001a5�����\\u001a�\\u001es��\\f� 7�k������X�\\u0000�\\u001b\\u0012c�htҁ|\\u0007OW-?)\\u001b�L���@т\\u0000\\u0007:\\u001c\\u0013b\\u000e�ե�\\u0012����dҔU/�o����jT��%VBU\\u0018���Ud^h˵ů@\\u000b���g<\\u0007���i�j��f1���\\n��Y��\\u0000�T�I &�\\u0015m��p\\u001b�IX[{���ed�<\\u0004�ۛ���Bμ���׵\\u0011�&�k��sB�L���\\u000f�\\u0003�2��J���~L���l�\\u0000�=\\\\\\\"¦\\u001eL�\\u0011\\u0015��YT\\u001d}7����y\\u001e!�\\u000fb;��g\\u0001 \\ru�4\\u001amzf\\\\\\\"�\\fF\\u0010(E�\\\\�{R�r�\\u0000\\u000e\\nt�鮦��2�x��N8\\u000f0�hm�eȒI`C\\u0013��>I���\\u0003�zm�\\u001f��\\u001fVƗcC��o�<,�\\u0001k\\u000b~\\u0015LH\\u0018�1Tf\\u0017���5� �@�m^\\u001b��im*�z\\u001b\\u0003\\f��>Z�O� \\\\l(c#�\\u0017�|[�k��n�x���\\u00186�\\u0001Mh'�~Z�+��\\u001e�k�kǸ�F��W�g\\u0004����G�����o�d�\\u0003���m�5�2�������+\\u0011m�'�\\u0001%g �\\u0002�@��\\u0002���q���V��F:\\u0010H�P�Ȭ��N�\\u0017�Jp)\\u0015\\u0018��VA�k�r�\\u0018\\u0001W���՚5NW\\u0000\\r�~NI��\\u0016Q���$�\\u0006^GSV�R�D�&Vo����(O+\\u000e�B�)\\\\\\\"'#~'�ز�r\\u0011c��)\\n\\u0014jI�Ə�E�p����\\u0002Ql��ڄ=�y�e�D8��Fՙ��\\u0015Erg��~0$�ԝ�\\u0007��J'�K?nY��0T\\u001c���W����0T��eY2#BܖC����:����i\\u0012'\\u0015P\\u0005q9s n\\u0018��#f\\f*�������\\u000b\\u001b���t��*t:yd�\\u0004�\\u001a�\\u001b�U-}OKйX+��{ŝܫk��8�m��.���Ж���׹\\u0007Q�x�����̱!P,N�RI��$�粱�\\u001aS\\u001a�A�\\u000b�cD�\\u0019�#-�X�\\nvچ�\\u0016��OT�ޘA�\\n�ѻX8 �z��@��\\u001f\\u001b+݈����M��Gi��\\u0000���Ҫ��S�\\r6��\\u0019�T\\u000e�\\u0019N�V����˛\\u0015�Ft?R\\u001d�?�͋%9!�\\u000f�\\u000eⱿ[��4V���և�-S�~7�\\u0005گ�J\\u0003)Eف�6��\\u001e\\u0014V�r\\r��+,I�B!��!\\u0000�mԱ��\\u0000�\\u0003����(>��o*\\u000f�9oa��~&*\\u0018\\u0007-������1�\\u0014^���|MS���q�<HHf*�rabM�N�\\u001eD�#��\\t�u��L?.��\\u0002��U.w��}�¡/�[0\\t33\\u0001��tQ���(�7�z�\\u001a;\\u0003 �ȳ)6aB��\\u0016L��o����K<Y�����]��\\u001d.E\\u0000��S�o�Ԛ8��<E�bG�Β3\\u0002#<���\\r�u�\\fc4Oٰ\\u0007k��O��|��(��\\u000f�ji�w�\\b�3\\u0000V\\\\\\\"@�\\u00004��o������w5��%��I\\\\������%Ć%�6EQ��)v8��]�\\u000e\\u0011���J?q`�\\u000e�6@�\\u0004�\\u0001Y\\u0000�j�n)��H��G��#�ϛ2bǎ��9>��l@\\u001f:����J�+BIR�J\\u0000�*T�\\tR�J\\u0000�*T�\\b4ڽ.�ܒH�kʔ\\u0000�\\u001b�\\f� I!\\u000fm\\u0001\\ro�\\u001a��\\u0013>;E\\f^܇A!n\\\\~\\u0002��*�\\u0001g�GnNŘ�bI��h�\\\\\\\"I^1#\\u0015\\u000b�bH\\u001a���x�#�'(N�M�\\u001ap�꠆R̍ :]|ϝ�p�@�\\u000b{�\\u0000\\u001c\\r����\\\\�?x́�\\u0016\\u0012���\\u0000�֜�jd�̤X�m}Gƞ5&�a�H\\u0004�\\u0016\\u001cF�\\u001d�|kS����M���B@ଈG�����\\byH�E\\u0016\\u0017ԟ*\\u0005D�ɏ�l�\\u0011�4g�/���:\\u000f��~\\b%ȕa�rv�����jO3�+J�V��\\r�m�e��\\u0011���x4,��\\u000fe�J.b\\u0016\\u001f�_�X6\\u000eb�\\u000b���\\u0000\\ne?u�2\\u0010�]G�d��\\\\\\\";�����\\u000f���^��b�\\u0004��F��*j��~�[��q��\\u0004��\\u0012��;Y��ȏ�P7�\\u0012i:�!���\\u001f:L<��&���5�vl�r���^&D�\\b�N��\\\\�|��w\\u000fm�X\\u001c�Bs\\nF���\\u001a�WW��\\u001d�.AU\\u00124!\\t\\u0004(�P<i_�\\u0000�i)\\u0004�:\\u0018K�2ZB�ѡb}¤3X��AR<Y!\\f\\u0003�G /=��49���(\\u0016\\u0016���t�PU�ы�crt�k�&��r��iܩE�Tp]\\t;\\u001e*ʿm�vn��We\\u0006_�B��\\nw&$2FA��u1�u[�\\u0000��W7��\\u0013\\u0017\\u000b�:�)�5J\\u001e\\u0004o��7*W�B�E\\u0000\\u000f���!�Z�?��,y�\\u0018��R���ꮽ-o:�\\u0001�J\\t E�Y��YO*$ƹ\\u0011�$�A�2��\\u001d\\u000fαr�\\u0014?�\\u0016�\\u001b11�g}\\u0010X����)�;MU|7�Jcİ\\u0003\\n��?G&��K�]�\\u0000g��\\u0000S�\\u0016����yI\\u0003�RI'��\\u001f��\\f�R\\r���C��R��\\u0012�9k|YE��>�Ba\\\\\\\"\\u0018�\\u0012L��2��52�C��zhǦ��lencv\\r{m���MT!�\\u0018Y�!|���*?o�[�G����5�\\u0002\\u0000�\\u0011��Ǝ�1��r����@r2���Ѹ�-\\u001f��\\u001c�o\\u0004�H���\\u0018�?�F\\u000f8��5�\\u0000\\nǱ�{�������Ɔs��K�~F��{\\u0003K�nOST6h�q�C�ʍ!�a�*�b�\\\\mV�\\u001ac��\\u001a9dF�X7\\u0013cc{\\u001f\\u0003XD�EYV8��� &�\\u0002��ڡ�Mf\\u0003�%\\u00001�mi\\u001eG��7G���\\u0013��\\u001apҍ\\u0005/�\\u0002\\u0003x�B�+��\\f2���?��\\u0000�\\\\\\\"��*�K\\u001c}���VE\\n��$\\u0003JaȞ\\t\\u0007'&4�m��^y=�\\u000b���j-�x�W�N�+�/o0Đ�.�cȫ}����d��faԬ��\\u0000�a��L��V�8\\u000b)m��Gp��*\\u000f�IUo&nv:i?tv���C02^��\\u0018�nu�G�������I���Ms\\u0013L�\\u0005�X��\\\\\\\"���0\\u0001Ѝ�\\\\Wk?�_-����\\\\\\u000e�s�9b�R\\u0010�u�&� ة>�\\u0016#�\\u001e\\u0006���⼘�\\u0019�r�h��Y����?���M�\\u0016�G\\u0007j�,p�!\\u001e�c�T \\u0001��\\u001cj�d�>!�q��\\u0012z�����}�Iep?���\\u0000ɭOxﱭ�\\u0010�vh���& \\u001dSr�gP&�B9\\u0002�<M���������\\u001cH��Ɵ��&��;�nc=u[k�5�w�&U�'��V;���J�l��Xhu��J��3�\\u0001#{t�����Y�N\\\\Y�1�kSݣ�\\u00064\\u00130��~k`ǐ�\\u00006��\\u0003�3�\\u0000Z��\\n��.ְ�[o��M���\\u0016\\u0004�d\\u0013��.Ꮎ2\\n��>݈r���d\\u0017�省\\\\�\\f�\\u001c�%;$�O��ӹ�\\u0015͜�>��%=\\u000b)ڥ��� 4,dy�<�;��ק�\\u001c��\\u0013rk>f���\\u0004���ŔrT\\u0002��M\\u0011\\u0017��!����q��ҫ\\u0014o�\\u0000��Ω���︸�$��u�r�0\\u0012Z�\\u001e\\f?�'\\u0002o`��SE|q|�\\u0006�[��\\u0002�ǈgF�F\\u0002�r�A�0�yP���ce���e�R\\b�.z����g�xq��3�fw�J�6���ԥU�1UUl)��l\\\\���\\u0006�|A�+\\\\����Jn�q�²�\\n%J�(\\u0001���dvՈ�]\\u0000G\\u0003�\\u000b\\u0002>4�~�s\\u000f�\\u0002F�\\u0013ݱ��P6���jl��q�x�a�ܥb#��Š��\\u0007���mqX�)Vme�'��\\u0007#\\u0012a�>\\u0013�fK��f6n�-{֝�|\\f�e�+��Xoh��H�Sq���Y����'/,��7W׍��J�W�y2:E\\t}'p�=���W��\\u00006�.�?�SUg��#\\u0013�$i4N\\u001a��\\u0011n���3�q�.:�F\\u0015Ho�1\\u0017B\\u0006���?��`��\\n$i�*����K\\u001eXNSc���bÏ�\\u000e�w��M��;��J�\\u0012��<w`:��ջ�v\\\\I#\\u000b\\u001f7pX�`\\u0005�K�\\u0017�r2A#pz�S$�J��b������So���/,2|��\\\\\\\"�7B�ab\\u0001��\\u0014\\u0006\\u000b�b�I��\\u0018��m��+ڕ|Q�&J�*S\\u0011�;#\\u0007BU��XhA���~�P�<�n4��^�\\u0000�_�\\\\�JMH\\u001fB�ʃ!\\u0003��\\\\\\\"x���[�#_:�y��܂F��\\u0000�M��\\u0017ɚ���\\u0000�&��]�C���\\u001bjU�[�\\u001b�������K�\\u0000H�\\u0000�t��3\\u0019ѣ��?�7�����x�\\u0003�\\u001c�\\u00167�\\t��S�ޅ�։\\b�J�*�J�heFd ��M�P�j��p\\\\\\\"JZ�1!GO�\\u0000\\\\�\\u001f�%Y.\\t�T�\\u0010�\\u0006�˚h\\r�+'����\\u0018��N��3!�lt���\\n�| \\u0014�˞2�\\n\\u001d�xޓ\\u0018��iH:�-p�_�Z�\\u0000pEe�`?��T\\u001f?\\n9c��\\u0017>�+\\u0010�hц\\u001a\\u000byZ����c`T\\u00138��\\u0000�\\u0000��\\u0000\\u001631��'C��e\\u0005��mZ�)b%a\\u001ar�1?P�\\u0000���`+��]9\\u0012n\\u0018M\\u0001\\u0006Q��J��I\\u0012��H��\\u0002��\\u001c��\\u0000w����U�~�un��v�_O��3zx�X�����N��\\u001c]qd��\\u0016�mEEڽ�Q�\\u0011Y��V6��U�/�X���<���\\u0000r%h�^g�\\f���gƊ5\\n\\u0017��e�����\\u0007\\u001eN\\u0003���Zx�Ö���\\u001e�K\\rz�\\u001a��C��\\u000b\\u001d�����\\u0007��<����g�s`����V���c��Xomi��Ӣ\\\\E��$}4�D��\\u0019��\\u0002�_M�ʈi6��.���{|J�W�̡I�o\\nj��K\\u000bz\\u0017�\\u0003�\\u0000\\u001f���!��&��S\\\\Wx�\\u0015�\\u0007�V>}j��uRf�Q\\u001dJ�(,�0V��?QgY\\u0013FM�\\u001a�\\u0000VGr��\\u001c^B#��<W�m�S�J�\\u0001��Y\\u0016^ߌ�k{k{P\\u0016?x���\\\\/a���\\u0015��Fx\\u0018�R��\\u001e�\\u001d���+����3\\u001b��'(ϑ\\u001bԴ9\\u0007���`�`��;��K\\u000er3��Sȗ\\u0005��҆�&I�ie$�o³�C�uu��Ba���\\u0011*�%<U5�{[�\\\\�u�\\\\�^D\\u001cT(Q}ͺ��w\\f��g\\u000b�?�X<���W?�~��|��[Lh��ow5\\u000b\\b�J�+�ĕ*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�\\u0002,h�p���ֱ�\\u001d<,hj���-����,�\\u0004�\\u0011�5\\u0017��{+�\\u001b[�Yk�J��\\u0002L��+�N$�\\u001b�/XQؠ{@��;_��ӭM���N�YT\\u001e]l)\\u0007p�SM3Ơ\\bш^�\\u0000�N�Yd��\\u0013�)!�ʹ��1���]\\u0003_�ι��\\u0016�l\\u001d\\u0017r�\\\\\\\"?!r,|+��]�\\u0001`Ig�NӨbd\\u0001��Z�\\u0019\\\\�|:\\n��\\u0016T-�\\u0002���W^��*�ݗ�������\\u001e�\\u0019\\u001d�nχ\\u0018U]@@\\u0000�\\u000b\\u001f)���k��S]J�*\\b\\u001a\\u001a�{��a��gT\\u0004�\\u0001��ʵ�쵥Z\\u0017���\\u0007Ňۊ\\u0001��!�@G�+��TLܤ@\\u0015\\u0004�\\u0015TX\\u0001�¯/�\\u0016�\\u0014�[��G�|\\u0016���q�f,�y9mnMh��i=�s�2e�\\\\\\\"\\r]����)\\u001d�.\\u0004\\nP�f�6�^��)�TDn\\u0000����Q������ʳ��C���?\\u0003Q,�\\u0018��\\u0018ݳ!���\\u0002Af;������v��\\u0000��N�'�ǔ�pʺ�\\u0014�!��yT\\u001fQ���0c��;�tQ�ְ��nn>4BHŽw\\u0007쫋\\u0012�\\u0001��(��Oi�S\\u0003��\\u0019��3\\u0011�RE/��\\u0012:�\\n>y���\\u0011k|t�z�X\\u0014���5�\\u0000{BK�\\u0000p\\r�Q�C{0�,\\u0001��\\u0013�µ�q�{�\\u0015�0\\u0007ck��#�mYJq���\\u001c\\u0007\\u0006�ֽ�Nݙ�G)\\\\\\\"��1�#��OCY��h�ew\\u0017�E�D\\u0005�\\u000fP4+we���k��\\u0015�y��(ˏ��\\u0015�q�(S.4Ѳ�\\b�o�@���t\\u0015��V��Q�vʎb\\\\\\u001bq�\\u001e�����?u-�9R\\u000fZ�K���F�`gRQ�-m\\r���i8\\u0010�\\u0007I�*8RH�:q��\\u001749X�W��y�줰����(��\\u000f��=�)R5���n�'\\u0016ӥ�z�;Tۓ�.\\u000b�\\u0005<���\\u000e��6^m����\\u0007���䮽.i^6I�x�7�\\n}4Ϊ8\\u001bz�ͯ���j�nenR�@�\\u0000I�\\u001d�X\\u000bk�5�$�0\\u001evS�l�\\u0007_�\\u0001��<R�\\u0006c\\u0013(6&���}��D���yXj�m+\\u001e��1�ͺ�3�\\u0010>N{�4\\f�f\\u0016�$ځ�[\\u0006$�H\\u000f2V�=\\r\\u0005U�خ�l\\u001d�ujw%J�+S\\\\\\\"��\\u0012)���\\u0000\\n۸����DX�\\u0000\\u001f�\\\\\\\"���\\u001b�\\u000f�@�)�;��\\u0019#T�Ҡ\\u000f�\\u0011#\\u000e+s���\\u00175����4Q$nX\\u000b\\u0012-�����\\u0011��;o��*hc���x0I�-�(\\u0017\\u0003ro`\\u0005����4�.�F�\\\\\\\"G\\u0000��^&����F�\\\\\\\"\\u0018�O&\\u0004ߑ�-�\\\\\\\"����,��D`/C\\u001d�>F��3b�<\\u0018H�6�x\\u001a\\u0016�\\u0003%m��&L�\\u001cv'�7�XoXѽ����_�jOG\\u0003Z�eVD%���Z\\u0001Kdʅ�z��ꀝ<5�1�*F.�CF�B�K�\\u001e��\\u001aE\\u0011>4�+!�\\u0000\\u001a���Y)�SK�����=�\\u0012\\u0000\\r�i�\\u001f½ȴȲ�nJo�b���\\u0006��}�\\u0016Ў�#R������ЈAXُ\\u0003�j����2H�9w7c��Ԫ�]j�j�\\bS$�R�X\\u0012�J�\\u0001*T� �\\u0000y>4\\u0001���z\\t\\u001f\\u0003�63$\\u0000\\u0016\\u0005�u\\u001d)lΥ�a�$�,�\\u0005\\\\�d\\u0013 \\u0001\\u0005�\\u0015�\\t\\u0011�\\f�l\\r��7�;y-���A�3��X�Ʋ�I�\\u001aV��C����\\u0003F�b5_\\n�+&'��A��\\u0003A�\\\\�\\u001bڨT���k\\u001e\\r��ǯ�-Rq\\u001eK$�d\\u000fF��\\u001f\\u0013�P\\u0004izl���U[\\u0006(,Oj&\\u000e[Y�y\\u0000l�����z\\u000b\\\\ډL�)��\\u0007� �۴��<���(�M\\u001b�o�7�\\u001b�䓈���Um$P�\\u0011_G\\u001fmx&C���\\u0013r�x���������Ƽ�QRb�!�]`�������r[p?�\\u0000�븮�\\u0006��(�!6t�����\\u001a�;t��\\u001b\\\\�\\u0011H��\\u0006P7xѼmq�Mh;���\\u0003�o�\\u0010�V�\\rх\\u000f)\\u000b꽀ܚ^��\\u0018ʬF�9\\u001d>�_>L��5�E\\u001a\\u000f��\\u0006�w\\u0015� �7��\\u001f\\nZI&�Rw5*R\\u0002T�R�%J�(\\u0003�\\u0001\\u0004\\u001dAЊ�{\\u0006\\u001e\\u00167k�JD�v���rk)�\\u0010N�W?Dcgdc\\u0002����P��\\u000e�\\u001e�ޙ\\t��l�\\\\|ir���Yk�\\u0018\\u0012G\\\\\\\"��\\\\\\\"��\\u0000,��.֥3w(f��F~��\\u0017�E\\u0002�(��kR�Ȼ'\\u0015p�|e7X·��l�����x�?N�\\u000bV4�J�*P\\u0004�R�\\u0000J�*P\\u0004�R�\\u0000J�r<l\\u001e6*�b*�(\\u0000��\\f��\\u0000��w�ZI\\u001d��\\u0016m�N�Z��x\\tc���'�!1�\\u000bŴ\\u0004hE�렍T-��\\u001e�G߳c�cQ\\u001f\\u0014\\u0001E�����'T9:\\u0019'��k|)Fdq�9\\u0001bM�ԋ�@4\\u001c��*E��x�\\b�4<��ΡZ�\\u0001�����s��@�v\\u001f@;�CBO�Ӱf\\u0000XXZ�$���UBԓ�\\u00176��8}�b\\u0015����P�Y\\u0014��7����i@A�5�Nđ֕�K�G�q\\u001b��-���Tb�!���n�!�g��tN_Lv\\u0000\\u000f����\\u0005��\\\\8�7��Icq8a�F�\\u0006�\\u0013�mP�S�\\u001b\\u001b\\u0000o��\\u001a\\u0011��Y[��\\u001a�!\\n�\\\\�~�w\\u0003�V�H���D#b\\u0014\\u0002\\u0006�\\u0012ȡ�!u\\u001fW��ve�6;��;�'>���ID�\\u001bdc�5?G+\\u0014q�\\u001f��}i/�&�467S�5W��;\\u0012\\u0012����\\r?��Z\\u0014\\u0005\\u0001��^tN`m.)����\\u001c\\u0000.�DmCySC�ybS\\u0018K��\\u0000\\u0017[ozW\\u0018*��A�\\u001d��`:=�x\\\\���%(4���!,S��V:_�\\u0000�5��Xm�\\u0003I\\u0002;�\\u0005��$�\\u000b27x�3�\\u0004�.v��~v\\\\\\\"aB�2+*ة`\\u000e���4��҅ٝ���R�(\\u0012\\u0014��\\u000fH�A��><\\u0011��\\u0007ƌ|�l�����)f\\u0006�E\\u0015YU%!�z��U7�����֡��k[�Eg��\\u0000��4'��Z���$9�.ܸ��\\u0003\\u0015\\u0004�;��y�::�4G��� Α�Q\\u001c���\\u0004\\u000e���\\\\f\\u001aF��M\\u0001���K��c>Onk,%K\\u0013k�R8VIU\\u0001����Qx�� \\fQF���P�x\\u0012nj9\\u000b\\u0011�����Iz�\\u001d1\\u0015I\\u0011!?�\\u0015���\\u001e7�4��\\u0019\\f�)0�\\u000bq�\\t��y�\\u0000':\\u001e\\u0004�ok�T4˔i���RĞ�\\u0013����;\\u0000I<�S����{�X����uG�}C\\u0003U�;�\\b�\\t���\\u0002��w\\u0007Pt5�Ý�5HТ؛�B\\u0013\\u000f�~d�n7\\u001e4Y�W@n���?Δ�2�����7!E�\\u000b|\\u0005j��$:�4\\\\oq��\\u0007S���ܼt\\u000e5��\\u001a��ʤ�\\u0002N��}�\\u0001�S*&�u`����̀�\\n�_�^�\\u0007p��\\f�.:�aa��66;\\u0010(����Ĕ�\\u0006(��\\u0000?�4��\\\\\\\"�\\u0001c��Q\\u0012��r�^��BO�������\\u000bʈ�th����\\u0015�v��̛݁YY���\\u0003�4�<�Z��i��B\\u001f����\\u0010��S��)d��R(l��-a\\u001aB����X�$\\u001a1$y�T��\\u001b�5�KT��\\u0010(�)\\u0014�e�IV\\u0006��\\b#ºO�L���$2\\u0007�Pr:\\u001fU��\\\\�\\u000b\\u000bmV��\\u0016�����\\u001c�Ys�<{�\\u0004�\\u001f嫧�,Yb+2�l\\u001b�\\u0000�\\n�O�s�)����}��\\u0012,d�\\n��\\u0015\\\\���q�0̯/\\u0012\\u0011E�'Aҹ:�H�����\\u0004*B8(�j��K��|��0�\\u000e�F��tx��D��\\u0003n$jt֊\\n\\u0007-:\\nO�߱#�������[/��Ը��P��y\\\\\\u001b\\u001f\\u0010iN4\\u0003\\u0012y�_��+��.\\u0007ʶ����\\u001a3\\\\�Ҝ��͒ό�F�w\\u001d@�Z�e\\r\\f�\\u0011\\fn�v\\u0004Ҝ\\t���Fo�*GPA�c&VL���$xm��x�\\u001e4�H-������P�\\u0000O\\u001dv?ʽ�]���\\u0015�*\\\\\\\"���u$\\nK�,��9�E�}>�\\u0016^���\\u001e }C�c#\\u0005B�)8ΝW�Xy�j�/\\\\\\\"䳖\\u0007u;R�\\u001232\\u0003b\\u000e�l��`��-\\u0019\\u000bpv�\\u0015����1$\\u001d��\\f�P\\u0000��ŘhG��\\u0015�<E�/j�G��j߷Ʋ�\\b��0��\\u0013�7��8\\\\\\\"/�F�Ǝ\\u0018r7�\\u0014NS���(#\\u001e�'0B�7\\u001e\\u001aW����=�$@�hIk����yS��Eh��AbGZ��\\f�7�O��\\u0002O\\u0016<EU�\\u001e\\u0007��=E.�&@�Sˡ�F�g^L,�j*�Y�v.�\\fь���+\\u0018������\\u0000�t\\u0003\\u0007��\\u0019_b(�ꪠ�F��N��c\\u0006�92����I_���9� j\\u001d\\u0001��V��R�\\u0003����x\\\\3<G�\\\\\\\"\\u000b��\\u0006���.ĨB�Fͽ��w��jv-�G��\\u0013g��*�\\u0001`N��64枵\\u0004Ʌ\\f\\\\\\\"Kب\\u0017��\\u001fƳ�;�k\\u001d\\u0006��6��d%�)�-Za���R�\\r�\\u001f\\u0015)�h�̽±\\u0003q�\\u000b\\u000e+�>;:�%\\n4����\\u0004|E[\\u0017\\u0017\\u001b�0�!n\\u0018\\u000b�\\u000bQ9\\u0013,�s��n \\u0002l>�Ƈ@�\\u0001\\u0005M��\\u001b���\\u001b��i�c�%�\\u0017ЊʑEĎ\\r��\\u001d\\u0004��q��\\u0007[R�#jMH\\r�'t\\n��5p=_uT�\\u0003�ı7�\\u000b��4�&t\\u0016\\u001a�j͗1P�\\u0000\\u000f\\r�xx\\u0017\\u0014\\u0010\\u001f�.\\b\\f\\u0007��H�mX�L�\\u0011���5�.�[�b]Υ�5S�>\\\\\\\"㒱�0%����V�\\u0005�U\\u0014J�(L��@#�����m���\\u001aԣ�F*«�X\\u001d~��LX��.L�L�/\\u0017e%@��\\u0002�7�\\n\\u0001qQ�(��맀��d�-�\\u0018<�WSxϨl\\u000fZ�L�&�rZ���G�\\u00062cH�\\u0019�\\u0003�s`\\u000f�)#���BO�y�vo-�\\u000f\\u000e\\u0003\\f�\\r\\u001f\\u0003#\\u0015��~��r�i���~��'��U|�c1+E��$�zI�'K�R��E�Cı\\u0007�n�2?�~�)iY=�.@\\u0016��<��Y%(�\\u0000M� �������d\\u001c\\u0006T�.�}/m\\u0007Z��OܲF<\\u0010\\u0012mvk���D��3��#U`�����ʍD���F�@��!&��(\\u001d~&�hBK �8�c0Yms�M�nߍ�3�!�\\u0003�\\u001a}�<��$�k�\\u0000Q�TH@�4�~�ЛjA�gA?n�1F\\u0001��Ā\\u0001v��w�s;2G\\u000bI\\u001f��\\u0001b���k^w���4�H�\\u0001\\u0012�s׏SK1�e��7bt#�~�dx\\r^��\\u00149jY$\\u0000��@|\\r^l<\\u0011\\u0019��s�jt�is~��iT\\u0000�5:)\\u001e\\u001e4ZwYg\\u0017{/�\\u0011k�4���2��S\\u0006ʄ��nn|i|�΍`A\\u001d4�yӮG\\u0015_˹���\\u0014���qzNF��\\u0004E4�\\u00179==\\u0007�·�%�\\u0016bw���c)�HX�6\\u001cG�R\\t\\u00165(v���m�ऒy6\\u0018��m~�\\u000f9�<�\\u0018��\\u0007&-��1�kC;Ec/\\u0003퓭�rq�[�ܞV6r�\\u0015��\\u0007\\u001e\\u000719t\\fE��RH���N�T�\\n S��W�\\b*\\u0010\\u000bjI\\u001a^�l�DU\\u0004��ׄ\\u0003�\\u0000\\u0013\\u00101+1�)\\u0000<��\\u001a�Z�\\f�e �\\u000f(��������AҊ�(\\u001b\\u0006����rP��rt{���������\\u0000z\\\\\\\"U��u]�ׁ�}l�\\u001f��UcY#f-�e�#Њ \\u000b�w\\f�\\u001c�.;X\\u0013�C���\\u0015�`w(sӜ~�_�3����\\\\e^\\u0019��A,.Q��)4\\t��\\u000e\\u0007�K�,O u�*fb� h��eٔ�>\\u0002��A��=\\u0000Y�&_\\u00128�ں}��\\u001fݘo\\u0010I�6\\u001dVο��T��'oX��L��YS`(M���{+�6!�C�_� �%l\\u0001=w�J#���1a�Z��\\u0015�\\u0011B\\u0006��tcN\\u0016�w�o�H�\\u0019Q2���5�zAڂ_�]�V��7�C�\\u0018P]ǹ�w'G�\\n\\f`��\\bЛ�ri�\\u000b� �i��\\u0019B�t\\u0007[V��A$\\fK��\\u0002��k,P\\f���w�\\u0019S����\\u0014L\\n$[R�Y\\u0011�uE���P �����24��K\\u0001ck��G����\\t#{�ֽňc�\\\\\\\"N��Ԟ�@����\\u001e��Aܠ�\\u001f $C��\\u0006׾�>5X�~l�$H[�},t\\u0007�zz0��a�*�u\\u001cB���j;��pa�~[�(\\u0003�^͘E�E���\\u0015���b�2G�D+rbV6�4�[�\\u0016�}�e�u�@\\u001c�$��rk�'?\\u0014�d�����\\u0000��\\u0000*\\u001a�\\u0012�J�\\u0017\\u001d�gXT�-}O@\\u0005�n2\\u0006Un\\u000f�&��n�\\u0018z\\u00073�3nk/�/;��=<+/�R?\\\\\\\"�9\\u0016��R��i\\u0013.��х+����n3-��.>�W[�\\u0014���aN�;*τ2�����5&�\\u0007í\\u000f��.VR\\f�^0\\u000f��\\u000b|\\u0007�0�\\u001b;\\u0002\\u0017|#��RTj���[P٥k�\\u0013�9��8��-b?ߙ��m�\\u00164�~ו�\\u0015�\\u0006�\\u0019t���֍,x�I\\u000bE�)i\\u0005��}'�QN\\u0011�Q��-ndu��JY\\\\Q�I�s���B��6\\f\\u001a��ocFC�j\\u0014\\u001f���#���GͅZN��e�P��$��y�2\\\\�2t�Z1�\\u001a\\\\�ҝ\\u0013��/��X\\n��!���#�\\u0014��mO{�K�\\\\\\\"�M�+��]j��\\u0017�uҊ�\\\\�M�T�R��%\\u0011�\\u0006T�{x���6Q�5\\\\LYr�\\u0010Ź՘�����\\\\X�ax�u�\\u001aL\\u0011�'c�(ȚWy\\u001f�*x-�\\u0005�o|���Q���Av`�b�\\u0001�O��\\u0016X|\\u0018i�\\\\\\\"�Ŗ%�1�Q\\u000e���>B����Ma�^���R����\\u001a\\t\\u001c\\u000f�\\u001f�U%�݉c�M�yR�%J�h�W\\u0011ƥݶU\\u0017&�<Wu�X��ڵ�\\u001c��DQ\\u0006�ϙ6\\u001eg��\\u001d��̏is�\\u0005�\\n�Q�\\u0000Q\\u001bWA\\u000640'�\\u0004k\\u001a\\u000e�-�Ի-�I���\\u0000k� �O��-�\\u0000��ʍ\\u001f�;_�9�\\u0000�i��zUަ�\\u0005qaG�՝A���T;4��Z��\\u0007'��\\f���p^���c�\\u000ei�Z�4g�\\u0018:��T�$XdUK\\u0012x�n(���&�\\u0019�]���oM%���>��\\u0013dv\\\\�V��s\\u0007�G�\\u001f΅x�M$F_�\\u0002?\\u001a� �,\\u0015��X��6$�Z�\\u000fqyI��c��:�|�T�\\u0016=I}O'9���-5�$��rw���3\\u0004Oy\\\\\\\"FC����\\u0006ԗ�C\\f\\u0019�8\\u0010$|\\u0014�]�oV���p/\\u0004��XoR�1\\u0014/\\u001b\\u0012�Rt�F���,��\\u0006+*�I`\\b����Ǖ%��HI1�?3V�B�e���#9&A\\u0019+p6K�4� i��`�\\u0018�\\u0012�\\\\\\\"��[Z[�\\\\{߀��Ӟ��1����\\u0000�\\u0016�t�\\u001e\\u0000\\u0011t\\u0016\\u0003��-\\u001b�\\u0012F����{��\\\\($YI��1\\u0000�Op0+���ړ�4�#�\\u0004~�8��(V���Z��i��t�0�\\u0015\\u0004j�\\u0006\\f.<��܌x�\\r��\\u000b�7�Dc\\u0017m�UYfR#Ш?Q\\u001e^\\u0014�\\u001c\\f3\\u0019���v^F�\\u00001G-�$}[�[�+����ݣ�7c/;2��}�\\u0016��\\u0017bs\\u000b�r+]ѯPƄ���9n �oqX��J\\\\�A\\u000b�\\\\\\\"���\\u0019=�\\u001e��P�\\\\\\\"�Ls�����졋g�b�W�9���nMy\\u0007\\u0015�\\n+e�T�U�=|��lԹo:�\\u0012\\u0018�y\\u001a8G6]���kI0r�B�\\u0019\\n����S�`�ć\\t PY� \\u001fS\\u0012����\\u0002�̗\\u000e\\t^\\u0015p%��\\u0005����h>\\u0015��V���kU+:�\\u001c�J(�~�I\\u001b\\f\\u0013\\n�\\u000bh/�\\ra$RFl�W��h���*T�D�R�\\u0000i\\u0014/%�W���M;Wk�Β�~#q�Ƴ�Q\\u001fi��Ts�:�D���i{�.3�u �Ŏ�\\n��n�'����D���Ǐ���8�P�\\u0016EbZ��\\\\\\\"��u��e��lx�W%X\\u0016��&�+��ğ\\u000evǜq�lt7\\u0004\\u001d�5tr��YdƥJ�d��J�\\u0001*T�@\\u001e�3�E\\u0017f6\\u0002��=�:0�\\u001a�\\u0010'.\\u00107�)�V\\u0018wVQw���56p17�D��^D\\u000f��O��\\u0012r\\u0011\\u0017f`���S6�z���,�u�S�_�U�׻�LvB�7#un��ݛP�nKM�\\u001a\\u0003f�\\\\\\\"!�ɸ\\u001b\\u000f*\\u0010\\u0012\\r��\\u001b\\u001a373#&8�\\\\\\\">\\u000f\\u0019$���:Һ\\u0014˴Ұ�9\\\\\\\"�uޥ@/��\\u0011�\\\\\\\"��\\u000b1�7�Y�5�'\\u001f3V�,\\u000eYB�\\u0016\\u0004��f���[X��n5񭳛\\u0019���A\\u0019d��6\\u000fr\\r�7\\r(�s����i�\\rj�9\\b\\u0002��\\u0001���$�\\u000b���'���$��e+�Y\\bb,N�T�7*U)$��w\\u001f�+\\u001a�\\u0016\\u0013��\\u001c+��|�4�\\u0000�\\u001b�v��\\u001bd����dju�����E��\\u0007_l� �z�)�@�\\b~2\\u001f���_�)�\\u001f�3�\\u0014E\\u0011^J\\t7\\f|N��Q%�8쨳`<2y�v$���hz��qՕ�q�\\u000e����w?\\u0001q��M�/\\u0003�-\\bV�z�T�SN�S$�*�-*��+�-{�\\u001bB�\\n�ak���ԫ�4�T����^��\\u0011*T� Tg�\\u001d�\\u001e46\\u0001���Œ\\u001a\\\\��\\u001a*\\u0003b|ϕ\\u0015���tJO\\u0016\\u0016�ۑ�\\u000f\\u0019�\\u0006u%Y\\u0005�\\u000f\\n�.�]Bd�tmomtְ��)�xD�i��b���\\u0016����\\u001f��W$o\\u0013��R���]\\u001cٱ�c$�]\\u0015�C��X�\\f1���J�C\\u000e�F�������\\u0015*\\u0010A �F��h\\\\\\\"V��҄\\u0002�Z�\\u0015�:�����iYU}*9x�I�CJX$�����Dp\\u000e�ڈ��'2!/�b\\r��\\u0001�Ξd�<ئf������/I�ʙ\\t�\\u00183B�iP��SH���31\\u000b��\\u001dx��K��n~�2��$,��\\u0001\\u001dH��\\n��Pǌ������\\u000fk�5S+\\u0018�x��l~e&�_:\\u0015�副\\u0007)R�[u�x����ք�T�R�%\\u0013��&vJ��x�\\u0012�u\\n��\\r]G��3\\u000e)���O��\\u0006���liHD�{R�V���Ջ0'�Cj\\u00173�v�^�\\u0001�b/ek�\\u001e'���mq���\\u0013�no�(�u��j@\\u0006����2ʄr\\u0019��|'�\\u0002�\\u0013e����\\u001a\\u0012��e<��\\\\\\\"\\u0017\\u0004��\\u0006ˮ���́$*\\u0005��2Z)R�Jb,����ژ~�\\u0016ױ�h|,s#�$*�.|i�X��?��\\u0002*]��.Ij,�\\u0010\\u0006�\\u001b!�\\u001dH� �x󭄌[������0\\u0006&Y<lu�qa�s\\u00125%\\fwiO��EK�k\\u000fA;&�O@y�m�/\\tW�\\u0000+\\u000e?}\\u000566F=�ddQ����;WN��JH'��=Ej͍Će#�$\\u0011Y�˯�I*�Z��*\\u000e���D\\u0006�E���\\u0004p�7�����\\r��\\u0014%t'*K�$�R�\\u0003!\\u0000�u\\u0015q,�X9\\u0000t�R��i\\u0016\\u001b ��a��@I�<��d�\\r(�9����>�~ߵ�}Ø���.&ߍq�Nͥ�뷈��/i�ėG&�\\u001d>ʮ$Z�&��ce�#��G�RM�GZ�<1�p�,?.�઱\\\\\\\"�t�N$\\u0006B�!�����*|Q��{�M\\u0012�%Z��5��7��}�i��|�\\u001a�I��bڱ'�y�J� �Kp����@6?:`Ll/�d�\\u0000P��r/�z��\\\\\\\"���cP\\u0004lOV�k��;?m8q�Ko~M��\\u0015���4�]o}���v�pZ^Ng����U�\\u001b��oK�$ٺ|�(��&\\u0014ȁ�q�J��:�%���qgBU�\\\\\\\"��I���U�\\u0017��\\u000e�>���P�8���@�6\\u0015�J\\u0000�1e�C��v��0;O�\\u0019��p\\n\\u0005�ؒ~t4y\\u001e�K}���SE��f�&E:\\u0004`\\u0003\\u000e�d\\u00078��{S�\\u0016Ew�~��E�B����\\u0004�F0��]}�俅���Q1[\\u0010l|��$�i\\f]\\u000f�n�\\u001aZ@�Vf+�\\u0004�V���@�>p\\u0010u*y\\\\xz�Ny\\u000bW��k�\\u0007<߳�x�\\u00192\\u0006�J�\\u001f;Z��>ѕ�\\u001dD�xܐ�.��\\u000f���\\u0014\\u001a�O=�\\f�x�\\u0011��\\u0016H������ |��ڲi\\u00181\\u001e\\u0015�w\\u000f�\\u0010,~�\\u0005���#\\u0012��+�j�s��NRA�E\\u0017�чKx�LP\\f�9��5��5�\\u0012�qމP\\u0001�~��Fr\\u0014B�S\\u001b\\u0001W0J\\u0001$m�*\\fx��{Rmk\\u001e�\\n�2G�3�&����peF�>0�Zcŭ��ԗ\\t���6��i�\\u0012��ʥF�E��7���gOa�ʯ)[���G`�\\u0003�ڳx$Cf�=���8�2y̋\\\\\\\"��\\u0013�\\u0015a{�ʈ��Œ\\u001b�d6��\\u0005��:�P�~�qͶ�^�.A\\u0006Ƽ�;�X��\\u0019���}/rG�/9\\u0011\\u0003bO�L�V�3J��A\\u001f\\u0011W2ƾ�k�|�\\b3�[c�e�!�(�-�{��μ�\\u001a|r\\u0004�P�׶�e\\u00022�sR�\\u0000M��R�\\u0000J�*�\\u0019:�\\u0005\\u0013\\u0000R��\\u0006i�'о-���*!�\\\\���\\u0010#6�Vv���M1�N\\u0007\\u0010��#Q$}�B���\\u0006,qˎ�T���:�7�\\u0018рEi��2�h\\t�\\u001a�0��\\u001b���u\\u0006����?i�\\u000e��M6���rk\\tY������΅=��\\u000f�\\u0000���/�V��\\u0003�O{O��e{=\\fq)�\\u0013�9��\\u0014�#��\\\\\\\"\\u001fn\\u0014O��\\u0000\\u001a�t�\\u000e\\u000eHdN\\u0007\\u0011#[�泦�+\\n�\\u0004k�^8�iT�\\u0010aR�Jb%J�(\\u0002T�R�%\\u0015��\\u001c��K�@\\u00166�i�oR\\\\\\\"'ſ\\n\\u0000�/\\u0011\\\\\\\"�<w��s}�Js*\\t\\u0011���ԝё�6�hh@yVTw�\\u0005-m�/U��\\u0003�)g��6�\\u0001�R��F\\u0003ăUU,�T\\u0012�@\\u0006��o�\\u0017��f#K��e��a\\u0019\\t(v,�0\\u001e\\u0004\\u001a\\u0007\\u0007�v,�ݙ}���Հ��+<��з\\u0015���]j��k���/�ǹ6\\u0015\\u0012�\\b�?I#\\u000b�o�b���X\\u0015a]\\n��[�:\\u001aY�\\u0017�QmC\\u0011�y�k\\u0012\\u0004&�)@�+n:\\u001a�%M���Qq�ɤ�e\\f�\\\\_��E\\u000eӍ�\\u0012����_�j�wR��\\u0000A�Y�\\u0004ҍ\\u0003��uN��L߶�6f\\u0003�?�`q#C{���л����\\u001f]�1X�d\\u001e������z\\u0001�i'\\u0006ᎈ\\f�:�\\u001blnM�XQ�/\\u0006up�CqR\\t �\\u0000:��T�\\t��Ⱥ,)&�\\\\}\\u0014�����_�\\u001a�u\\u0019\\n<���[��m�\\u000e��\\u0007ܲ\\u0017<E�\\t��$s�\\u0018�c?\\u0019G������̒2�f%��+����J���]mI��n�\\u0019D�\\u001b)n%\\u000e����\\u0005�'z�*S\\u0011s4�8\\u0017b�����T�@\\u00140�M�\\u0002N��h++ٖ�0��]\\t���\\u0000:�\\u0013\\u001c��$#@��|\\u0014nk��\\fXT~�\\u00162:����^б�N`Y��4\\u0018��)�RI7��\\u0019Q{\\u0011m��2B�h�e��F�\\u001d|��&\\u001c��>�&�>�эM[�l��G��;��]k��d��k0�=�ty\\u0016܁\\u0017���\\u0000)�Q�G$K ��j\\u0018\\u0011j��\\b\\u0013\\u0015*l��:\\u001d+�g�ű�:�A\\u0006�SND�\\u0012�J��\\u0011��&%��\\u0017M:��|8c��ou\\u001a\\\\��q��GS�?:�H�SqpE�Hb:�J���\\u0017\\u0011��@?}e><��,�İ��\\u001f��|j\\\\ԩ@\\u0012�\\u0004�\\u0000�:\\u0000+H �\\\\\\\"A\\u0014+�ۧ�5�v��\\u0016\\u0010\\u000f%���~��Γp4�Y��-f�\\u0004r\\u001a 6���'�`q�V\\u0003Ǒ���k0��On�]�4�p'n�\\u000e��T\\u001d�\\u000b�\\u0016��X�b���c��\\r�����\\u0012|�<�<yӄ��>�\\u001b��A�Ԣ2���oW�\\u000f��cC�#�fSu6>\\\\\\\"��K�f�R�%\\u001f�a�)���E��\\u0000��\\u0000�_����\\u0019G�$cEc-�k좺>��!�T�\\u001e+\\u001b\\u0010�ThE�\\u0007ZR\\u0000Z\\u0015�5���aN6��M<�k�#\\u0000F��H��֜lE���\\r\\u0003<\\u0005��h\\u0001ۭj\\u0018\\u001d\\u0014\\u001bn�V� \\r��@\\r\\r��u4\\u0001�&3!\\u0004^�5�\\u0001u\\u0003�?2hb\\u000fԻ���ֱ��mTx��\\u0000{�\\u0011��.���n��?0�b�Wf���k��x���`��o�O���B\\u0006\\tE��Dω��\\u0006��ċ\\n\\u0012�\\rJkȎ�и�ޱH��\\u00105��Gp��A)��\\u000fI?�G�\\u0014�=�ԻYGRk��P�������D�\\u001a\\u0005?:��\\u001eA�º\\u0012.�\\u0002)^~nNd�\\u0007\\u0003u\\u0017�A�\\u001a\\u001an͕��ra�c�\\u0017��7W���yx��UQ�\\u001d2\\u00024��\\u0015�!�\\u0001�\\r�sY]�q\\u0016 ��\\u001eqə����mW���W\\u001d2��G\\u0019\\u0005�m�_ʎA��g%X��@4\\u001bm\\\\�qe�K4����\\u0015�ʋ�(�\\u0000�a��ݻ�(U�q�\\\\\\\"F_�\\u0003���J����\\u0006Eǂ\\bԓk�ʇi\\u000e0̰\\u001f\\r�c��\\nέiA\\u0016�)��L�\\u0005�h�`\\u0018\\r-B�v\\u0017XZy3\\u001c���l\\u0007�Xb�D��IK����%:\\u000f�����2�$A\\u0004੍����^݋)\\\\\\\"^s�6Y\\rǧ��@�$K�F<k�\\u001a��u�˭iW��Gul�7\\u0019�>߇\\u0013�|�}����4�.��\\u0011��A���\\u001fa����\\u00142.��*����U��u�ͅŮzi�5d���\\u0006B,x���T���\\u0001AwIl���´�%Jr$\\u000b�,��Y�O�\\u000b\\r�i��d��S�it��WbnY���־�&���:�,5���yR�J\\u0000�*T�\\t]�b�Ǉ��4h\\u0004� i$ݍ�_¸��l�6V\\u0019����\\n���{��7�\\u001dF�\\u0019�^O,\\u0018љg`�:���U'��XC\\u0012\\u0019�\\u001b�w���V8�\\u0019-/�{�������\\u001e>u\\t\\u0014i\\u0010����_\\u001a\\u0003� �\\u0000q��\\u0013~?\\n-W��\\\\\\\"|Ϳ���\\u000b�T���,<j�`�qonR\\tce\\u001e\\\\\\\"����\\u000bp��\\u0016�$��n-��sU��\\u0010Zč�\\r\\u0005�v�b\\u000bC�����R)q�i�\\t�� �\\u0005���\\u001c\\u0004���7f6\\u0000|�,��=�bh��3n���Q�caG\\u0004W7\\u0019`y\\u0019ʷ�!��v� ��\\\\\\\"��9Y\\r1\\u001cE�Q�+����3*�\\u0016\\u0002��j\\u001e�(!��R�Jb3+'�\\u0004��\\u0014Y|����l|k:��aj�B�Җk\\u001c�\\\\\\u0019.���ld��%�B\\u0000��\\ri^\\u0016=�'�mN!E%\\u0010_MO�d�oR� \\u000e�\\u0012�\\t)k��E����P�8��S?![�\\u0019Q����qz\\u0017Ϳ1�\\u0018��<Z}m�_�k�CԈ��#]\\u0000��W ���@\\rh��j]��X�+���4�g��}�}�7xt\\u001f�;}��lu*^%\\u0002[h��\\\\�k���\\u0013^�ǃ|\\u001bOƺ�f\\u0011B�\\u001dx�ڦ\\u001a�7\\u001a���I�<������̺,�:��;SN�['.\\u001fn>Pc�IdS���/\\u0011��kH�2c˛#+ �2��-�����+WS�\\u0004I���2�I��4\\u0000Y���W���vw7ZgX�C\\u000e�vƓ>�\\u0019��3����/\\f\\u0018ch�^�&��O����3��'ln�\\n\\u001cd�]f\\u0003Du�\\u0006=M�Za���XD��Ԃ=M��\\u001f#F�!�Q\\u0018{�\\u0015#�6$hk���ΘHN�C\\b�\\u0014)\\b�V�,��5��(�u�[\\u0000��h�c*]3%��;��\\u0017��\\u0007m(l��B�촐J��u\\u0016�\\\\\\\"��#\\u0007-R�㋲�bE����)ܽ�r;ty\\u000bd�\\\\\\\"S��\\u0007ZD�,d\\u0016\\u0017_��dn�$!`�w�q�';\\u0000?������mJ/��31Q=�Gǌ��X�k|9�L��6*��I77�\\u0003J]\\bx\\rΡ�Kt>\\\\\\\"��\\u0010�S���D��F�_�ʳU��\\u0017D��q�����q{Y��*�ݝ��k,\\u0016\\u0019\\u0011\\u0002\\u0000?�w�\\u001f\\nߵf#J��q�U#�m�S\\\\\\\"\\r�?#N�t;�>l���X\\u0015e6e:\\u0010GC^WQ�������4�\\u000f̿��\\u0015�֩�3h�*T���\\u0011-}��.6)�\\f�9��䎴��S�Q��]}B�\\u0017\\u001fmM��\\u0003AK�\\u0004y\\u0011�\\u001f�%�>'�[e�5�@!\\u001e�C�(�.��E��\\r�9��Xe8�B��\\u0011��k\\nIy\\u0005�0�-Qm/�ev��\\u001bX��:\\u000b�U��8�\\u0017\\u000enS���\\u000b1����{�A=E�����gˏ\\ru\\u0018א��+�վ��C���\\u0004��C<����1�/��v�eJ�\\u000fJu��M+1�\\u0001n,E���j��:���66\\u0017\\u001f\\r)��b\\u000bjr#��Ñ��Ux�d\\u0018�\\u0006��E�izѲL���Z�8Ґ2�xb�m�mƼ\\\\\\\"��q�NE�\\\\\\\"�\\u0010n͹�\\u000e�n玘�0��\\u001b4�.�\\u001eG]�\\u0005\\u001b\\u001c������C����U?e[�v���.C��p%c��Z�8 \\u0011��\\u0003�k���s��������C]t�w4�o�\\u0000�$8і<�\\r�\\u001bk[�C\\u001cY�2�y\\u0011��\\u0000+T\\u0019�\\f��Dҫ�3ۗ/��~_}g$�\\u0019�q�d\\f/�\\rvV��Q��:�� �\\u001767\\u0016�ⵕ\\u0004l�G��vm�U\\fH�X�.:���P�m.�B�\\t=|�Fi��Ɏ��r\\u001ax�\\u001b���\\u001c��9G����]\\u0004FL�-B�+\\u001c��\\t8�\\u0011Z,z�'6ASf\\u0016>\\u0015���zc�^\\u0019�Ȃ�4a�(\\u0002\\u0003\\u0002\\u000e��R�0Ǖ��rVܔ�9t$��纼\\\\\\\"\\u0015I�r2���\\u0019�AmS��\\u0017��\\u001d�\\u00040�j�\\u0003ǋj*8�8�rUl��t�׀\\u0000,4\\u0015tFwT_���V�M�Ɯ���*�\\u001bz��)�=�w��H�4c�۰B��\\r&�\\u001d��\\u0005en�0�^�\\\\���\\u0001�-\\u001a\\u0006�޹G\\u0012\\u0007@���\\u001a�\\\\\\\"(ܛ}�g�����\\n�t�\\u0017�i\\b풿8[��\\u0006��4����J�h\\nV�\\u001a~!C\\\\\\\"�>;�5�\\u001a*Y�\\u0007.c�\\u0017��\\u001dE{�\\u0001���\\r������V2�.GoV1�q�>�lmCjU����)��&����bI�MV�\\\\\\\"{d�\\u0004\\u0015��+5�\\u001e�H$o�[&T\\u0004�a�fK�c�&ݏE\\u001e&��^ω\\fJ�yq��������\\u0000/#�\\u0000я�U�<!��\\u001b����zT��UV$S��G��I\\r��T\\u0012�r=)�ccE`�\\u0005�Z�ˏ�<�#�ʫ<^�*n\\r�5b��,J\\u0016FA\\u0012�\\u0000� \\u0016\\u0003��R\\ftdO�\\u0010m�\\u001d+\\u0019\\u001c&�T\\u0014�?+\\u00151\\fЛ\\u0006?�NF�Ĉ?\\u00193\\u00037-P\\u001d�D\\u0004�E'jI\\u0019��N�� \\u000bɏƷ���F��5��~#}|�yq�^0�����Z������'���ʰd�+#\\u000eE\\u0018�ք�!�q�\\\\hd�\\u0002�o��ta��r�>\\u0007q|e\\u0019S���g{\\u0000o�ȁ\\u001c��p6a����M\\u001eġ�]��۷�ˈ�\\t�\\u0013�\\u0012��\\u0000ݤ����i�DxѠ\\u0003�YT��b\\u000e��o0uS��t~D�^\\u000e�2q�1!n\\u0000�;�-�xV�\\u0017�~�X\\u001f*�^Xg�<��X�\\u0000\\b�7�/Ӡ\\u0014[��a>�\\u0012�y_�2l�\\u0016\\u001b��9u�b\\u0003��a�\\n\\r�m+�h'�2%�Râ��FM�����I�gw���\\r�\\u001e\\u0002�L�#\\u0012G�[\\u0015\\r�\\u0006����\\u0003�\\\\\\\"8��Xr�\\u0006�=b�q9\\rr\\u00017&��\\u0011,c�-\\u0002ۭɭ\\t\\\\\\\"��?��\\n�i@�RVSplGQG4�N������a�\\u0004Ҕ���],mG���d�\\n�k>ı�\\u0000�\\u0013t��\\u0000�@�\\u001bߠ��a+���6T\\u00166�w��Y[��?;\\u001bVk\\u001a0\\n���7ڬ�\\r����Z���<=)���f����R�Jb%�ޡQ#{`�\\u0011����ʲ��\\u0005�h�\\u0006Ts�\\u0016�\\u001d�\\u0011����4+h+�vKm�񮡳��}�\\u001e��\\u0004d�H!x��\\\\��9\\u000f�7\\u0012-�]�rņ\\f�H���&�\\r�\\u0003Z�3�;��i���nC{hu����\\bp�Xj�tU������d(18a�J�.4\\u0004mO�3_uY�z���ۢ�Ag��o\\u001dF�������\\u0000�N�<b�\\u0000\\u0000k��~�;Q��\\u0000&u�RWS�\\u0011�n�B=$��uFv\\b��\\u001b\\u0001�k���1�$0�\\n�*��\\u0006�N7�Uv8AE,*\\\\\\\"\\b��jF��S\\\\\\\"?e��{R\\u001b�\\u0006�\\u0015�\\u0001j��/�\\u0016��;��\\u0003���ƍe�x\\u001e���u\\u001a�e�%���rG\\u0016e=E4ቩ8z�Wp�|,�\\u0019�6�7�_�(Z�̕*T�\\u000f\\u0018�s����&JǙō�m\\u001a�r��ʹ��\\u0000�I�\\u000f�rѫn�t']A��\\u0018\\u0003�p����\\u0010��\\u0017�;l�#\\u001e9G�\\u0000�:\\u001e��cڥ\\f���j��a\\\\\\\"\\u0017l�T!��k��\\u001dh�� �k�����=���xs�ٖܣ��}&�R|(\\u0001�\\u0000���D��\\f�$s0��\\u0001��\\u0014��H��=OC\\\\�n��1������\\u000f�E��,��\\u0016X���t6𮃵wi�˛�w\\u0014X��0\\u0004��&O�D\\u0007�\\u0006!\\u001bw���\\n�!�@��\\tԛx\\u001e��(�5��\\r�\\u0017\\u0004X�\\u001a@|���7h�\\u001c$Sb+C`\\u0005�񮯽��VS&>����/c�_¹�I\\\\\\\"&9T�\\u001a\\u0010j��G�{\\n����c����\\u0005�\\u0005\\u0001C�\\u001ad\\u0006)b�\\u0011ҙc�\\u000f8\\u0012\\u0016e\\u0002�KzOK�y!����\\u0003�;|2D��H\\u0004�U�ƚ%�M�;��\\u0014�QT[�\\u000b.����V\\u0019\\u0013\\u0019\\u00166,Z]�o{�fӯ��`��\\u0016:�io�i�j�6�0\\u001c�'\\u0015\\n�B���7ԟ\\u001aϳ�u���ҍ=J�]�#�x}�.n_}M�\\u001b\\u000f���6<�v����C�ʾ��q�\\u0000��./����j~�\\u0015]��w\\u001a�]�6�{QN�d�YF�d��Z�ϩ��v��\\u001d�)X�\\u001br��\\u0014@�m!,ħ�Z�R\\u0019Ԓ�+\\u0010-e\\u0017�CkiZE�\\u001b\\u0012\\u001c\\u0003}\\u000f-uҴ��#��E�1�61��q\\fX�zt6���\\u001e�,,G&\\u0017\\u0006���ty\\u0013��\\r��-�srD� �����\\tk�*�*T\\u0016J�*P\\u0005�/�ۥl5���\\u0015��m�\\u0013\\u0004k��\\n�iKbkQ�IP�0��ŵ\\u0014\\u0004mD+��\\r\\u000f\\u001d[܌\\r�P�׷�l\\u0010��P|�\\f�!\\u0003sZ�'\\u0011J�_�SH\\u0005�\\u0002X�Y���;��T�Q\\u00016�\\u001f\\u001a\\u0007�q�T��.lm�Z\\bXw?\\u001a�JВT�V�6��tހ+VH���R�\\u0001L0D\\u0017(�\\u0002�^D\\\\��\\u001bm��)\\u001c\\n#��\\u000f�Y\\u0007���\\u00050�\\u0013\\n*^�\\u001b�ֻkU�z$pxiVo�\\u0000%�_�54�=8����?f�!3\\u0018�2ʑ.��Gκ\\u0016��ƈp\\u0003�6\\u0006��ycp���6�Xm�E򏬝\\u0007��ȃ�9(\\u0003rT}��W\\u000b�\\\\\\\"�cc��׍-���\\u000e\\bۧ�\\u0004A�\\u0000���4;�YEU�1�.�����\\f������#��$g68�Y����}����Dw\\n�\\r��Mry2���4���5���p�]dOH\\u000f3�\\u0018��8��+ƕbBd6;��\\u0006��<\\u0000�xx\\n*`�c7+\\u001d4�T��9r�5��0\\r.\\\\J�1�\\u0001G�\\u000f��\\u001cA��[\\u001d\\r���<��%d�U͑��u4,�\\u0014Qk���n|ER꠹X3���\\u0000����#\\u0007S�ӧ�o���\\u0012ă\\u001ap\\u0002�:�Q�һhz�X~�Ó\\u001e'ɐ\\u0011$ސ�qE=~&��\\u0002�!?(�\\\\Xn�\\u0015=��J��\\u0013\\\\\\\"إVhm�/\\n�1T��#H�}\\u000b���B�\\u0007b\\u0002��Ǎ�e\\u0000�\\u0000\\u000b^�F0����؁���9^�6R\\u000e�n6?*[��\\u0018�K�|����p XmI�ԥ�?�ROſ�U!1uJ�)��*T�\\u0006��\\u001c�$�H\\n>z�\\u0000\\n�`��%�h5\\u001b\\u001bR~�,Pb\\u0012䆑ɲ�F�Sٹ~�\\u0010�I\\u0016�Sj��l©;O�\\u0017v�ff�[���\\u001bh<w�8�ʓ\\u000eM�t֛��V6_\\\\�k7A�\\u0000�I�\\\\\\\"E�Xđ�\\u001f\\u0003a�ۥ]!�*އ�y�e��Ģ0ޖ&�C�T��8>Ċ�\\u0017E#�G�rK�\\\\\\\"'u�����x�r�\\u0015�F��\\u0004\\u0002�e��\\u001b��\\u0000OSU�葅\\u0007�.\\\\��2��x�Oa4R�ċݙE���|�\\u001am�\\u0010�\\u0015���L~5BA\\b.k^#\\n�\\n�!�ޗ�t�q���\\u001fh�\\u0000\\n`+\\f�Z|w�~�\\n�E1\\bjW�X7\\u0012\\b`lG[ս������@\\u000e�n\\u0001�d\\u001f�.�#N�r\\u0016�r��<��U�\\u0000ِ�A�$~o�u\\u0011�mmA��Y�d���Qj��,\\u0007�]��\\u0017\\u001a��6boL\\u000f8���Yā� ��GQ�o𭉰$���J\\u0004e���+�E1\\u0019ˏ\\u001cѴr*�m\\u0019k��]��ݠc�\\u000f�u�\\u0002x�s��!����.�,�E\\t�G\\u0015R��]��ߒݠs�c�?�h*�N���\\u0014��m,�Pd0h�߈\\u0016\\u0007�L;�\\n!��⼛�M0�hb��� (�\\u000e��x���>D��C���� ^�\\u001d*w\\u0019��zn���޵,t��z�e��o�\\u0011�4M\\u001cQā\\u00161��\\u001e��\\u0006f��j\\u0007CҪ\\u0007\\u0013u=~;yV\\u00072\\u0005���@%6��\\u0000\\n�rt���\\u0000l�G� �o�k�wM\\u000b_��V�\\u0012�[u'P:����M��c���P\\u0005ٙ�_~�_*\\u0003�b~�\\u0012����\\u001f?\\u000f�\\u001c�}D�\\u0017���d\\u001a\\u0002t��ހ9b\\n�\\b�\\u001a\\u0010k�i��.\\u000eDcQ���\\u001f�J鈼>��=�D��\\u0002<k���\\u000b����\\\\\\n]�z\\b�2�T\\u00199p�z-���2U\\\\\\\"e<y؞B��n����]\\u0014dW�r��P�X����ҷ�\\u0003)qZY�$ʐ舟O#��'w�\\f��\\u001e;q����N�\\\\Z��R�\\u001av���#\\u0001��`\\u0006��Yz\\u001b����3ȸ2��4q1�\\u0013�\\u001b�0��3g\\f~�8?�vf�\\u001e�>�hh$�9��\\u000eHg�#vc��\\u0006�Z�.D��I�%�E�\\n���\\u0000��E$PF\\u0006d��\\\\���I)P��\\u0000-����|J��I3r3c�\\u000e:�6�,�ŋ��J�\\u000b3]��\\u001b07��Й�I��#B�cSd7?OQZ<\\u001av4�\\u0012R��?xɞ,G��^9G\\u001b��+,<�\\bq����cօh����,�Z���z��ᙙ�\\u0016*,�T\\u000f�u�z��\\u001fzF�tk,6��-֖�ܕ;��e�a�To��~�PR��[���T�Z%��rwZ���-}Φw�T�Um\\b\\u0005I��E\\u001ce��\\u001b!� �Ӑ�iT.\\u0004q�_J�\\u0014dL�I�U�\\u001d�C�a&�\\b���.>�,��\\n��\\b�\\u0016����\\u0012p��\\u001a�\\t#���\\u0014�g`�\\u0012O�\\u001f\\u001a��R�2Ʈm`H�\\u0016؁�y�Nr\\u0007�\\u0017�Cn2iě�a��ACf\\u001b���:�]Kv\\f6U�c\\b�R�j\\u0014�5RC�^G����\\u001c�Ji����-$(d�{.��*VA\\u001a\\u0011c�h�z\\u0010J�*S\\u0002Wa�\\u0002*Ǐ\\u0003\\u0018�k�:��\\\\}8���̊�\\u000e���Ε��A�c��\\u0005�-ݾ�\\u000e��\\u0013[�O��\\fݝ���{�\\u0013�%�\\u001f5�2����0�pd#���F?&�L\\u000eCY�E�Z�������� �1�:\\r���Ot\\f\\u000f���\\n�R_��\\u0001�\\u0014/�ey��!\\u0017���Z�\\u000f\\u001c��%����j�x/\\u0019\\u001c��p8�.5���Z\\u0018YJ�A\\u0016<��\\u0000O��\\to��6��mAF \\u0011N\\u0001ĉM�\\u000b�X�_Ɩə�\\u000b�\\u0013�\\u0018��V�\\u0000�PRI�>o���6lI\\u0019�]�{Y��iH��X$1L�$]���X��\\u0002\\u0015\\fy��\\u00003i��o��/�d_�U\\u001a!\\u0003[|i�mU�%J��0_3�L�[�L��\\u0005[\\u0002@\\u0016'��д�Ƅ\\u0000dar5�\\u00040\\u001f�b���cN;d,��!ʭ�a�E�\\nH'\\t�\\u0000Q\\bu^\\u001c\\tY\\u0013���L�\\u000b\\u0011�\\u001a7\\u0010\\u0013͛�P}�\\u001c���-\\u0013�#̨�g�&�r\\u0017\\u001dM�\\r\\u001b�F�)p3��\\u000f9�\\u001fQP\\\\ߩ�n,|h~֜q��W\\\\\\\"㭇�\\u0010��Z\\u0012d�iV_�\\u0000!�_�6a�(�nS����B\\u0003 lo�v���\\u0010���\\u000f�/\\\\]uݫ*)�#���(Y\\u0007P@�+l�_\\u0005�\\u000b���re�XE�n<�\\u001e6�H�X\\u0015�+�\\u0011�\\u0011p�m�ֆ�;\\u0014N0�,$�Yt����\\u0018����/kXx��/�)�\\u0013qa�+iT��ͳ;���\\u0017�ʍ��o�\\u0004�m$\\u0012\\u0006��pѐ���'�46$y�@Y=\\u0012X���\\u0014\\u0003�\\u0001���'�������q���4�J4U\\u0006�\\u001f�8�=�3��i\\u0002��Z9\\u0019t��\\u001fRߡ\\u0014���Y����Т\\u001c\\u0002<�\\\\\\\"����d�e��%�żϏZ�\\u0012�\\u0010�\\u0014�3\\u0014e�\\u000f���x�\\u001b\\u001fMU��;pCt�\\u0000�&�q\\u001c��?\\u001a�F\\u0016L�dM\\u0007\\u0007NexZ�8�꿪�59��{��V��������dqgsc�P\\u0015kC7��C\\u0010���7\\u000e�\\u0011�[�\\b����\\u001eu�(acEa\\u000e*I����C*��\\u0007\\u001c>3D.��\\u0001����>ڶ\\u0004I'\\u001c?p­�ĺ�K���\\r�J�eb�p\\u000b�[�z\\u00109k�Ʊ�2rQ�fQ\\u0014\\u000b����\\u0000�z���钞2\\u001f���\\u000f���\\u0018�3ep�Q]�����\\u0000Q\\u001d��h�c�V�\\\\��VD��,a�2�w\\u0005\\u0004ܩ��@�\\u001a�b�\\b&2F��\\u0011���5�\\\\_��\\u000e�z���2!x�]dR�<��p\\u0019�3v��ƗR5F\\u001b2�����O\\u0016Sx�\\u0017\\u0007�I�u����Z\\u000f�c�W�m��\\rk\\\\\\u0019�r\\u0015I\\u000brUQrv���\\u0003���ڨ�o\\fa#��z��Y����^2i�𡸏n�\\u0003�Nk�k����i5\\fm&���|\\u000f``F��Aw%�Ȍ��\\u0011N5R6#���Z�6]ȯn�y�yT�$�J��«I_P\\\\\\t=�h�9\\u0004r>u�*���U\\u0019�b�\\u0000@�ֲ)�f]���b��3!L�\\u001bH��U��\\u00153#K3�Iq�\\\\,Y�<ĒQ=_r�(�˟��!���\\u0011�8�z�f:\\u0012~\\u0002���!��l���\\u0000\\u0001��k|8��q�%>�݇��\\u001aq\\u0003y�߸��q�G�����X���\\u001d�,T����\\u0000Hp<�4\\u001e#�@:�\\r'� ����Z\\u0001P�!�����H��֜�+��\\\\\\\"����(��\\u0000�Ҽ�A���َaP\\u001a>a�q��\\u0007�Z\\u001d�%��E�\\u0003�\\u00157���,9�sQh��\\u001a����>ěVQx��\\u0015\\u001c�������\\u0019�G�\\u000e\\u000eC�fp�\\u0003Z��t?~�\\f��/\\u001e�-N2�lh�\\u0019ߔh��\\\\\\\"�*:k�\\u001aD���x�֟�X�����It��}��\\u0002d����ڗE�\\u001e#CC��}�\\u0016���������HV\\u0018�\\u0018��\\f.u7��Gr�\\u000b��A\\u0000\\tA��ӗ�򮊧�{���:����+_qzM�%Wɰ4v4��\\u0002�\\u0002\\u001b���#>N��V�[%�e����&���\\u0017��J\\u001e�\\b2�\\u0001q�\\u0014ag\\u0004���A����%W��\\u0018�2��\\u0004Rb\\u0003�R� %\\u0011�o��}����x��_�+)My@���3��H��b9���\\u0005%+��I\\u000f&\\u0007�������P�hu�Vt�����h��\\u001a{Ҵ~��\\u001e\\u0015�qw��B�����m��Q\\u0015 !G�MKyS(+\\u0007$J��\\u001fI\\u0007�-H��;��\\u0014I\\n7\\rt�KR�n\\u0012YN�G�\\u0019�Z7H�{kb/��޳t�\\u0000���oS7X��Kܻ����wԛ�@\\u0004��^©\\u001cA\\u0014�ۛX��Eu��\\u001d��\\u0000)\\u0011��`�r^C\\u001a�0^\\u0002�\\u0002\\n\\u0013k��V�Ɔ�Y�߲w\\u0018�~S<���^\\f�u���Z�d\\u00077�I+G\\u0006�\\u0014ќ\\u001f�\\u001b�5���?�gE�IUrK��U\\u00175��\\u0017s��\\u001fo�\\u001e\\u0010,K\\u001fR���/��d:�~�&4�{pX��(�1���_�y>\\u001c&\\u0001\\u0014��\\u0012\\rx��e�2̘�dM,~�nm�P\\u0002�^\\u001e?\\u001a c��A�R��ۓ\\u001f��`\\u00051\\u0006L��\\u0017'Əv\\\\\\\"��)\\u0010�\\u0001l���\\u0006���$���!\\u001fPҽIs\\u0010�Q)ȶ���\\u001ef�\\u0003\\u0005�޹��Y\\\\\\\"A��\\u0012��\\t�Kt��\\u001c܃�&ߑtZ�;�<?�8��\\u0019d��б�\\u0000��\\u0007�%�\\u001bL�y�i\\u0018�H�����G\\u0010\\u0000V���Ғ\\u0018d��)>�?uu\\u0011�RD�e(��\\u0019[\\u0011аo:�sm����\\f@����岻:�Rl\\u0019��X�\\u001dM\\u000f,L\\u001c)ot8�$��\\u001a���,r������_��f�!���\\u0002C\\u0007���K\\u0005�\\r)�Yњ�Q+L�<O��G3\\u0018��}���Tom��LH�fw�G\\u0013�\\u000eXr\\n�X\\u000f\\u001a�J��&-`l,���]#�2��\\u0015\\u0004ۂ�a�I�K�/[�=9r�y�!'*h���\\u0003�������\\n\\u0019=\\u0004���\\r@\\u0017*疷\\u001a\\u0013W�폖̡�\\u0005\\u0002�:����]ӽ띣V\\b�bw$�i��ߘ}\\u0012\\u000b���K��eėڔk�a�\\u000f*ֶOs͵a�\\u0001أ�\\t����ͺИӿ\\u001e\\u0006�Ti�WinW��Ɯ\\n\\u0002���\\u0000�ː�=\\u0007U��PI\\u001c���J�y\\u0011V�Pq�\\\\\\\"��� >\\u0002�ē۝\\t؛\\u001f���m��\\u001a\\u0019�ں�4�c&7\\u001a����f����:�?�ċ#����K�d��,���+���}�S��g\\f+�V��-�%\\u001c\\u0014\\u0004��\\u0001ֲ��\\u0017�0�s�S�\\u001am..6\\u001c\\u0006gno\\t����R9�l����m�7���i��jܞ4�oR��^~�A#��j�\\u0007�b�Bl���mې�/�\\u0019�{R�\\u0013]\\u0017�ksX�B��g�Q�|k������VE#�\\u0017\\u0017��Ҧ�Zz�ܠ|4�&�A�v�G�+��Q)����\\u001b��\\u0011�W%�{\\u0019��X\\u0011:��W�tA��W]��\\u0000�r���)�\\u0000�ֈ���U�\\\\��� ��ma��&��Xd7\\u0018��yoM�\\u0019U|�?v�?�Ċ0t�ȏ���5�J\\u0015{�!:\\u001bhO�Z<\\f�PI\\u001c\\u000e�ګ\\u0001�\\u0015�j��uL�/�\\u0000&/���]\\u0014RDţ�\\u0006��V\\u0007�5�͋����\\u001bE��������[��j�Ӄ���ŋ\\u0004��� h�T���G�S\\u001b*\\u0019\\u0019�9\\u0016B-~$\\u001d/\\\\�$�N��Mk��&4�4gԻ��u\\u0006�\\fjW3��}j� 7��1�cȅf��n�A�\\rn6��(ϸ`Ǜ�b}\\u000e��\\u0000��5��v�3�Ժt�u_���\\\\\\u001bkՊ�\\u000b\\u001f��A�MY�5'\\u000bqR�a����\\u001e��_�Aw^�\\u000eF;\\u0018P,тP�\\u0002�*m�T���r�T�\\u0001�UX��\\u000bU꒩d n5\\u0015d�\\u0017�^�\\u0018Ɍ�ԧ��#]R0\\\\\\\"�kڝ\\u0013:\\u001ecBlN�z���>6\\u0002¥���h1\\f\\u0000��\\rh\\\\\\tRI&�Lᑉ=�1�m\\u0015��\\u001b��P\\b�\\u001f#��*������\\u00142/�\\u0001M}&�]|\\r\\u0000v�s�ɓ�%�\\t1���\\\\\\\"7p\\u000f���P��\\b��Lq$y\\u0012�3�~\\u001eՎ��>\\u0014'f�ݿ���2J�L\\u0002�2-��\\u0001M�=,A���` (�\\u000f lzۯʨ��E\\u0018u<[�V~�]�*��1��igp���q\\u0006�\\t��\\u001cD7��\\n@:����\\rs�\\u0000�{d\\u0006?qF�\\\\\\\"۩:��J\\u001f��q.LqċJ�X���\\t������#��\\u0010\\u001eV�q��ܚ��A��\\u001fS\\u0010~\\u0015�<'��\\u0007�K\\u0013�5�ύ1}X[�r(A�ak�(1�V�~D�D\\u000f\\u0006�*��̈́\\rO-\\u0007ʺ\\u0019����f$h�~V��s�4\\r��p��2\\rlH���q��M;D�3����TY\\u0013�=(\\u0005�����jq�bD��B\\u000f\\\\�y|\\u0001�\\u0015��:�8����5�_Z|�F\\u0013�v��\\u000b�\\u000bZ�\\u0000S\\u001b^��������i��\\u0005Ŭ<jom�\\u0017:�Aֳy\\u000b\\u000b������js�\\\\F`��n���,�8��,R�I\\u001b����֕�X9\\nmmm�\\u001fmR,�<��\\u0005F�Ƴ�x�R��\\u0014���+{�Օ�^��ݰی�=�k\\u0015��2��Nw�\\u00190�4��\\t�\\u0004����K�\\u001b(��ׄn\\u0003-�\\u00040���\\u0000ܙ\\u0018�G\\u0018�\\\\\\\"��� \\u0013��?\\nM\\u0013�fĒ��*ě[m:\\u0013�WM'�gXS�C�O�\\u001b22﷍\\u0011\\u001fo��=�ߡ��5bX\\u00129\\u000bة\\u0016\\u001a��\\u0000\\u001a+\\u001f(�%[�ORr\\u001a�\\u000f�\\u001f�8\\u0006�%��5/�\\u0001�\\u001d�r\\b�\\u0011�\\u0015�.=�FR��m�]��r\\u0015�FI\\u0010ټi�����O\\u0019҈U��\\u0015���\\u001b|�\\u001b\\u001a�++jh�#CEB���Q1�P�\\u0013\\u001aډJ\\u001a;�IS\\u0000h��7�^��#*�$�\\rI=\\u0005\\u0010\\u0000�;�� ��K\\u0016�-Aʖ:����\\u0004;X�\\r�\\u0017Co\\n��\\u0013z�\\u0004\\u001dEȫHR\\u0007<�\\u0014n�u\\u001aR���w�!��\\u000e��?��{`\\u0003a�h\\u001a�(\\u0013d�F`b$ļ��\\u0000���\\u0018�����3��\\u001476��'e0\\u0010\\u0007\\u0004\\u0012N�#\\u0017=O@<��X�E\\u0010�׶����Xv�bh\\u0007��\\b�u�\\u001b�e��\\u001b\\u0004��G\\u001d�\\u0000/�xT/z�F�uT����ۦ�[�׷����J\\u0006[J[��O��\\u0000\\u001a`\\t\\\\\\\"�g+\\u001c�7�\\u001c@�\\t�vHY�\\u0019�\\u0012�tk\\u001e7��F�\\t�\\u001b\\u001dE8\\u0004\\\\\\\"(\\u0002�\\u0001a�-�r�.\\u0000�֩V�\\u0010\\u000114^\\u0000&���\\u0000��3\\u0000M0�@\\b��\\u0010�!�T���g~���\\u0019\\u0007\\u0018�J룕�S\\u000e���{�~�4���ta�]����{����\\u0019;�ʇ�1I\\u0006�0��7\\u001f:��Ɲ�ؼd���)�8s`~�I\\n�\\u000eX~.6�SXw؄}�`?=���ZvG*Ǝ�#o�?��W쭣��\\u0017۵�����\\b2\\u0019���\\u0017�7�\\u0003i�����Hh����J��/�6���7\\u001f:�_�o��i!����0��w���i�_y������Ŕ�E�?d�B�e{Ƅ\\u0004���>\\u0015�B�x���׏�J��$r��zYa���7����LlM�]�5\\u0017�׹\\u001d��\\u001cI\\u0014N�-���H:\\u001b~c^�I�=Z�\\u001fQ�kJ�\\u001a@�5\\u0003R\\t���:A�'��#t���t���6q`\\u0014\\u0013�s�;��,��jMR\\u0013<�9\\u000eE6eЃ�\\r<�$�M�)Ҙ�\\u001e�\\fy�\\u000e.Ǌ0����\\u0000��0�c�\\u001d��6e��Mi\\f*�*�}\\u001b��\\u0007J���\\u0011���\\u0015���3{j���\\u0001Ms���pf����\\u001fbI\\u0014��#\\u0000(�O!1�\\u001b���͉,\\u0001�����q�kI�W�w\\re]\\u000f��Z��N�+*��\\u0006|�b~g}\\u0014��PX�q\\u0001J�����j�3!����K�\\u0003��y\\u0016G���:�W\\u0005�k~��\\u0011'\\u000bj�����\\u0015�ӣr���5\\u0006�����\\u0005��\\u001b��>AC!@\\u001a\\u001d+9��\\b���:��P����#@G�\\u0017�)f\\u0014\\u000b<�\\u0018�\\u0001��n��V\\b�\\u001aՍ�kU\\u0003Z��=\\u0017�CR��?5��\\u0011�Ĝ��#�ܭ�xkW��<��\\u0010��_.�e\\u0000-�@�\\u0004��\\u0003\\u001f�1���a�|�c�\\u0000��R���yy� \\u0001mk\\u001aMH'\\u0007m\\u0019\\u0017�qP-�\\u001d�o�ݛ���������s�\\u0001�O�;P-�����\\u0018��@4:\\u001e�UȰ?��#�\\u0005�pma�j��t�\\f�\\u000b�����̋\\u0016�\\u0002����\\\\�u\\u0003�=<�)P\\t�΁����ؒ\\\\\\\"��}B���Wi,\\u0011��\\u0000�'Ƹ������\\b�A�\\u001a�K\\u0019�}>�\\u0011H��\\u0005\\b\\b\\\\\\\"ޝ*I�\\u0014��&�%�(�LA�������<�?uh��b�\\b�I\\u001a\\u001b�jYR�.��e{�偹����1����¹���O�/�]0\\u0000���C\\u001a5���v6��\\f�\\u001bhtbk�6\\u0004\\u001d,6޼]u\\u0016\\u0004\\u001b� .�\\rM��« ���\\u000e�~5.�\\u0005:���_��\\\\\\\"�\\u001b-���}��\\u000f\\u0019..oI3�?O'%�\\u0000m��#�Ol�y\\u0002Mʹ���K���)~��\\r1\\u0005~�a�YV��.G�\\u0002��\\u001c�D\\u0014(k9��\\u0002�}#��N�3G��\\u000f�PU��r\\u0014�3\\u0011�(�o��$ggF���\\u001d7��{�W@,��.k�^9Uȋӷ���~\\u0015�\\u0018����,qb�ѝ56�\\u000e\\u0010'!ǂ���U\\u001f3�ƕ�\\b�T�\\u000b�\\\\�\\u0000�O\\u001d���\\u0005�\\u000b\\u0002\\fH��\\b9\\\\\\\"���\\u0019�\\n�\\u0000f\\u0004�A��I�+̙�� \\u0013�B��\\u0000q��Ǟ�\\u0013w\\t��\\u0012���H,A:\\n|P��\\u0013��g�S�\\u0016K6C\\u0003\\\\\\\"�\\\\\\\"�\\u0006^��/*L�}�>\\n<\\u0005i����n�Ѯ�\\u000e��еiA=���8����n�Gέ��b9�\\u001d\\rgR�\\f��+4�I(�H��w\\u0017�t\\u001d(j+\\u000eU@�w�P�\\u001a���\\u0001���U��+\\u001d~��\\u0000��[\\r|��?-�Ud|�\\u0003\\\\\\\"%b\\u0003�۟:�<��3*��7nZ��\\u0002�\\u0018��ua�H�[]��q�\\u0000��\\u001df4�\\\\{\\u0003g�\\u0017'j��Ř��?_��R83d��I�o}O�(�~��ȑJ�\\u001f\\u0011Y�5��#��I\\u0017 ������)4jTP\\u0004|�CG�{|q��K;\\u0000Q:�􎵔��g\\u0012Rb�rG\\u000b�� �\\u0000\\nj��7�>��;|�}��&��v'��)۽�E�Q�\\ro�V��\\u0010,��R�� �Y�\\\\-�$��0�\\u0016��\\u0003�z��\\u001cTݯ�B\\u000bI\\u0003q\\u001a�\\u0016aa�-v��ؓ�G���\\u0000\\t�&�D�\\t\\u0004\\u0011�\\u001a�R�\\u0000:���r��\\u001eU�\\\\\\\"ۗ�b�����G���r�ɢ`�mIЯ�\\u001d+����EG\\b�M\\u001c)���\\u0003L��?t�\\u000b<X����\\u0005��Ε����4��`��\\u0003���B�\\u0002��[��������b1ȪH$�.�=T��_�ʾ�;)*S#\\\\\\\"�4�6�I k�\\u0016?\\u001br�\\u0000\\u0013��\\u0000�\\u0019\\u001fl�T@α��@%���W\\u0003RY�\\u0006�-�b�\\u0000k�Nk��.����G����G���0�a4v��t��\\u0012D���\\\\\\\"�\\u001dv\\u001bR.���8\\u000b^�����R���Z�ue�(\\u0001��{�V�h<���\\u0018��M.w��]�#:�D \\u0000[��o��1��)\\u0018�\\u000f�׈��L�ݣ�J�:��zq�\\u0012�\\u001d��$�k\\u001b2�WT����\\u0003�\\u000bd\\u001bo\\\\�lY�I5f7��\\u001d�v�U�\\u0006�5o�J\\u000e5\\u0016\\u001eU�\\u0016$�1�\\u000e���$\\u0013o!Z\\u0013z\\u0017\\u0015&C�\\u0018��Mh�#¬E\\u001c\\u0012/�&����\\u0000Q�-}�i4�\\u0019\\\\��\\u001fƄ\\f�^)��A$LQ��U*S\\u0010�\\u00174�e.L�=�\\u0010�\\r��\\u001bS�\\u001c\\u0005�1��͑4��\\u001c�\\n\\u000f�Tڰ�8�E��\\u0001y'\\u001c����\\u000b�\\u0000�B�,�c�eTG?��l[]\\u0000�\\u0015����\\u0000�=V9=����.�>KE�!hc\\fqᑈ�W�o#��Q\\u001d�E~رȜ��Qx�$E$!�ޡI��n0w4x�\\u0003�\\b�;/��d\\u000b\\r..:k]\\u0006\\f�6\\u0018l�<��9U���\\n��\\u000f*TdT�q��\\\\\\\"��B\\u0005�̒rEGR�\\u0007�z]\\u0018���ڭ\\u001fu�4$\\u0018��y\\u001d�*�\\u0000\\u0016��D�\\u0003\\u0014�hP�f(�!\\u0016�*��\\u001d\\u0006�y�\\u0017ݟ���y-�Mmz��Q�r��\\u001e'�\\u0001�{\\u001d\\u000e��V��YD�1�%��\\u0005���]u�R�d#D�x�j�\\f6�We�M�(\\u0018�JI��)�k�>;C�F\\u001e�\\u0004\\u0010t�Z��{�ΒJ��,�\\u001c�\\\\�mE�l\\u0018BƮT3�E�:\\u001e���ؙ\\n���\\\\\\\"�h�����/sE8�L7�\\u0017�H\\u0019���W�P8L�8�g\\u0006�[�|���\\u0011'�3!\\u0001�\\u001e(� mG\\u0012�U?*X�s�Jス�ǖ���\\u0015��ɏ�{\\\\m:\\u0016�]Yc�ss��|)j�\\u000e6�2\\b^.P��>�ǀ�2`\\u0019\\u0018���,�P�\\\\Z�=��Ē�\\u0006\\\\\\\"\\t*�kx��j:7YPH����W��\\n���Y�2\\u001f\\u001eagCo\\\\\\\":0�5Dn-��k������G!\\u0017������~a�޸��\\u0006�E4�R4,\\u000f��\\u0000>5��v*H\\f���}J��[�E$ʨ��\\b\\u001a\\u000f�W�c���!\\u001c\\u0018(��\\u0005�e�\\\\L{\\t�q1�Pb�0(�\\u0000\\u0013q�\\u0014$�S�.o\\u0011�2�5��*݂�qcW��x}\\u0012\\u001eP1�O�֜Ye>^�O��|�\\u0019��$%U\\r�龔cw\\u0018�\\\\\\\"�6�����\\u0007\\u0002ͥz2al����\\u0000\\u001b\\u000f\\u0003ֽ���n\\fn�4��\\u0006�Z�KP�A�wl�@=�\\b\\u000fkk�!r^۝+e�T\\u0018�~ X\\n���\\u0014oӆ!��:�K���F��_u\\u001a\\nq,��f4=��iA��\\u0006��[\\u0000\\u0012�ziBQ���{�U�T�j0\\u0000�*mZķ\\u0017�z�g#\\u0006�sZp��]WZ�N@ώ��\\u001a�\\u0015�\\u0000\\u000b��!7:*�>W��߸����Л\\u0001�Ҋ��&J��E�{R�C�,��b\\fx��\\u0013�\\u001f���ŏ�$�XБ��QKa�2\\u0002ߣ*������h��.y\\u001bj�<�\\f�\\t�jF�lh>���\\u001b��ܺ�yy�\\u001a��\\u0016\\u001a�J�;\\\\�2}7�J�6\\f�\\b�IW�\\u001eC����9/\\u0012�\\nqp\\u0018\\\\���v��X�\\u0003�����Cƺ>����4SJx��\\u0012m󨶸*1,�%����o�w��U6`|\\r\\u001f�q�\\u0000M�&�\\u001b��c�Ph\\u0018�ydX�]��Q�I\\u000e�y5�oD�,|P�we���V����ZY\\u00165���l[�C\\\\\\\"�\\u0006g]/ұ��E6�\\u001f50�.|yP*��B\\t\\f\\u0001\\\\\\\"�\\u0015�=�\\u0006��\\u001am>b�6��\\u0017��᾿*Sڲ��,Y7(,yZ����m\\r�6�ǟ��\\u000f1�\\u001b*�Z�\\u0004�\\u0012�ox؏&Aq�So�Bѫ \\u001e�J\\u0011����C\\u0012H�����ߏ\\u0013}��*ߕ��$ʵ��gmH�\\u000e(�\\u0000L�\\u0017���\\u001a\\u0010z�s8��\\u001b\\\\ޤxx\\u0007�c\\f�(\\u0002)[1\\r{~[kK;��%�9`�\\u0000�}D\\u000e�v_'\\u0006�x�_��;��\\u0000�o�+��\\u0019f/���CR�0�`<\\u0005q_��W\\u001b�G&A�\\u001b]\\u0019�NB��\\u0000:�p\\u0011�5�\\u0001�������\\u0012�P?��≽�q�4�5 �\\u0000M\\u001b\\u0007n��^l��y~5��\\u000f\\u0014JF[\\r^qe\\u0000\\u0013��c�%��\\f��\\u001eX�\\u0015�9$�]w\\u0014�A������:��\\u001a�\\u001a\\u0013�N՟\\u0006v\\u0012�\\n�dh�\\u001d\\u0019XP����$����}B=\\u0012?/@���\\u000e��ۏ��m\\u001c��d��Ǖ(\\u0003o�3f��d�\\u0004�*�q}:�!�s�{���\\u001b�\\u001b�\\n##�f����\\u000f彗���\\u000fMW\\u0001�\\u001c��tu\\u0005c_�\\u001e��A�{��ۭ�xح�.M\\u0010��\\u001bt�\\u0000����rhH��=������\\u0015DY^hٜ*H�T^���ʦQ�DP��\\u001b� ��&�Z1{\\u0017\\u0006�_���fzu�><yV��L\\u0004e$�� nC����U�@c�W�>��{\\u0012�l<9�\\u0012�\\u001a[����5����c�$0\\u0010�J���?�4�f�-nOO��庮\\u000eЛ[��\\u0006k[c�&�v5U�g;�o�M+���\\u0001�1�X��]\\u0017f`؊6� |oXwv�KZ���C\\u001f��}u�\\u001b���^:��1�\\\\\\u0002\\u0007K�^�9�[Tq�\\u0010E;-�%�\\u0007A�\\u0014\\u001elx�!�m���y�Ϧ���/?\\u001dZkc��CG-\\u0000��<i��\\u0000(\\b,� t\\fG�M\\u0003]A���f(�\\u0007�:x\\u001b��S�v]�Mk\\t��m�\\n۹c3u\\u0005X��K�O�T��W�O� ig�1��\\\\�}2���kR\\f���c��\\u0015EF\\\\\\\"\\\\\\\",H\\u0016��2��`r��\\u0004�\\u0003�y\\u001a\\n\\fL\\f�+�TO\\u001c�86�v\\u001eW\\u0017�ƫU>\\u0007�-R�`V��h\\u0012yع�����\\b�ud��d��\\t\\r\\u0011�X����r\\u0017�Ƌ~���%��,\\u0000\\u0000*�\\u0000Q�|\\u0005\\u001b����\\\\e��������W_�2‐vi���5�p\\u0002������\\u001c�#\\u0000c]\\u000b\\u0003����2�\\u0002C\\r�z\\u0007�I\\u0017�\\u001d\\u0010�4\\n>b����@�q\\u0012Ʃ\\u0015�ܟ�Fv\\b\\\\\\\"�q�8�%�\\u0001���=5�&RE��Q��v�6+��\\u001b�@ڕe_�c(�̰2�����F�(�F�t\\u0001�㯅����;�>]�@�(m���t�\\u0019�n�g}\\u000f�ͭ�{�A��!�HgR9��6޵!�I�8XL�r\\n9\\u0010��qw,I�Jz�p�N���;㰄ܑ`��_#I��N&R.\\\\d\\u0000�ž\\\\\\\"��4I���c?o�2\\u0011\\u001c��{��#�E$<P*�*�\\u0014\\u000f\\u0001Y�Mx�]��<F�xQ��\\\\�7\\u0000�\\n\\u0011��>�\\u0018|\\u0006b5�����?�s5����v��Co�B�*C�ĩR�\\u0000\\u001d���$�\\\\�\\u0000bO���j鹂���\\u0000\\n���ӗ�\\nO&��\\u0001帨�ܪ����}�p՟�z�\\u001b\\u0011PY��m*3�O\\n��ԑ{�d�#����\\u0002��\\u001a�#��\\u0000f�\\u0000,\\u0004�a�)�\\u0000d���&���\\u0017<ȍ-��}D�\\u001b^���\\\\\\\"7\\u000fa\\r��Q��S��+��][Ƣ�9nru�>vf3��fR:^��:S!�rifp�#�j��M�尭G�g뒷�C�\\u0000�T���d��)�\\f\\\\-�?����ȁ$\\u0003vBP����\\u0000�\\u0017e� ��c��C��*\\u000e�:z�Ya~�\\\\l���e�4k�e4o���\\u001b\\u000f\\f�\\u001e�`��c�ǧ�]i�N��\\u001f�J�|\\t���ʋ:,�\\u001c�� ��'����{�~1��v�dy\\u0007�URB\\u0003�:}_�W��_{6\\t�V8R;\\u0019\\u0000\\u001cy\\u0010ܿ(�\\u0001��ڋ�\\u0000�\\u0015\\\\8ח=s���L˃���3�333u�I?���q���J\\\\�HQº����{w\\t9H��kp\\fz��(���2\\u0004\\b�_@4;\\u001d*���vO���O\\u0019'�ll�\\u0005�'\\n5$�\\u0000Vuۈ\\u0015�#kav\\u001b�M*��Ov��-W�5T���\\u0000��푾���9ڲ��ҥ��/[d�Ɏw\\u000e�Կ�Qx*�\\b��c�J����\\u001c\\\\�\\u0017�4D8\\r\\u001b\\u000f��\\u001a�Mݲ�1\\u001b�k~b5Ӯ��q\\u0016��������\\u0007_:ur�\\u001a�RI\\u001aCv���f�xx��\\u0004ᕖ��\\u0003�ԓ�Z[&\\u0003\\bݣ%�E��\\u0002�\\u0018x\\u0011�\\u001dA��Yg`Vh����\\\\�&@#�^�*\\u00077�\\u0003��\\u0001Q�\\u0000���?�\\u0014�#wuDR��ʣRO��#�}�PLx�@��?\\u0013QN�I���\\u000b[�6��ͻ�{7?}��\\u0000-������t�ܵ�\\u0001c�\\u0003�G�s�6�*�E���h߷{�k�&I\\u0018~U&�\\u0000.@\\nְ�\\u0007K51�c.\\u001e\\u0014\\u0016�w$i�F�ĵXA���YI$\\u0012m�7\\u001bW�����\\u0013DR�+J\\u0004c�g���U�+�@4#���[\\\\\\\"8�%$lUح�7�_\\\\\\\"\\u0015k��6\\u0014�\\u0007��\\u001el+,sJ\\u0003\\u000b�B�V9���\\\\\\\"����\\u0000q\\u0015��\\f\\u000f�\\u001a}�.��*���pC�س\\u0006�MՀ��\\\\\\\"���\\b�s�\\u0000I�T�^ߝ\\r��y\\u0014\\r�So�V\\u00042�@���\\u001c����83;�ŉ\\u001fmj�d~_���P�c\\u000fN���\\b�c��v#�\\r'�v��\\u000eY��n\\u0001�֊Az\\u000f\\u000eH�1�`ޕ؃ҏB+(\\u0019`4֓���\\u00168լ$b\\u001dGP\\u0005������\\u0017\\r/+]�,cV5�ddK�3K+\\u0016f&�;\\u000e�Uֹ�\\u0002l΋�\\u0000��?���w�W�\\u001f\\u0011]��\\u000f�\\u0000�G�\\u0000P�\\u0004q���+�}G�k�\\u0000}۰�b�ײ�ȟ�-�3���\\fZ�\\t��lO�?m\\u00117s0v�c��B�~\\u001d+\\u001eՋŽ��&����Ρ,��o\\u0001��.<d~snd��\\n����F���E<�4�Н\\u000f�ڳ��-ҽ\\rҀ<޽�xt�_K�\\u0004\\u0016\\u0002��P��\\u000f�7�\\u001a�-�\\u000f��G����J���6����t\\u00128\\u000bj]�o�\\u00199�ҙ� ���\\u0003)}i�\\u0013�ԩ\\u001a��\\u0002\\u0000�Z�T\\u0003���L�|�7�3z�m�>F�Yq;�o��B�����+�HǍ]�],�\\b ��\\u0004i�)�7��e�\\u0016���������˓�Ň҅Ǩ��|���|�9���\\u0019�\\u0001T�5\\u001a�a4'�\\\\\\u0016\\u0006$%[�\\u001e�r.v�\\\\�\\u0004\\u0012\\u000e���v|��\\u001c}\\u0005e\\u0015Y����̏\\u0019]d\\u0004� �<�:��\\u0018�ܣ!��܎�����z�Y���\\u0000\\u0017��H�<I\\u0000��s]v\\bX1�Pn\\u0000\\u000bԚ�~-�C!�ko!Һhm��(z\\u0002�\\u000f;\\u001b\\u001a.�2dF��R�\\u0017fӭ/���~\\u000e\\n�.�}��*ό\\u0005����i4��D�H��������f���C�\\u0006�Y7��\\u000e�\\u0010\\u000f�jh\\u001e���dO����jfγK��W��Y��q�#�(s\\u0019�S���\\u0013h�\\u000e�;N4�6fD<Y\\u0001`����Ai�,\\u001c���N�H��\\u001eEXl�\\\\\\\"���PK\\u0018��Y��n:��<N�\\u001f\\u0005��\\u0018�#k\\u0013`�\\n�\\u000b��,�\\u000b��R�LU6au��\\u001b[t�\\u0011�bc��@���X��e?���pXVy\\u001d�\\u0006�J|\\u0003^�TKJ�\\u0000CJҋD���_s��K\\u001c+>\\u0003\\u000bI���?�n��eK�I�,�Ƅ_ƙ�w<9#\\n��C���\\u0014��FU<�isV���\\u0005�P\\u0002tQ{xk^��?a��<�R�\\u0000J�h�:ƚ�\\u001b\\n�\\u0011�\\tʌ����\\u000300�Fy@\\u0017\\u0016\\u00167�G�^r\\u0015R��2T\\u001a\\r�1\\u0000�\\u001b�sY�~UR�HA��9%Hד�\\u0015\\u001dM\\r����G�O\\u0001����f�f�!��:\\u000f�4&\\u0015�ܤ{�>����\\u001f�A�I�7'��*S\\u0011*T�@\\u001ba�\\u0000���\\u0000�����\\u0000����3\\u0010��\\t;\\u0007S�\\u001a�c��\\u001a�\\u0006k\\u001f�&42\\u0016S�_��7��Y��\\u0002�x�U�\\u0018\\u000b�?�H�=@\\u0016E�w\\u000bTah�\\u001a^�k}-�ׄjױ��t\\u0001����\\u000f��\\f�Fl��\\u0000�oƻ\\u0007<��4�J�{��\\u0000?#�f�\\u0013\\u0006�R�P�R�Y�u\\u0001�HVؑ�\\u0000T\\u0012\\b#B5\\u0006��g���5��o1I+��He6a�>t\\u0001�\\u0013so��^�\\u001c��M��\\u0018\\u001e�|�\\beY1���P��\\u001eB���Uʍ�����\\u0017􁦆��+��*z\\u001b\\u0011���3YJ�_Y\\r�BE�����n\\u001c�%����ǥǅ,�\\u0000\\u000e��\\u0002��\\u0019H}u���6�P=�XZ5DpX5ʃ{\\u000bP��ID�9\\u001e\\u0004\\u0002\\u0000҃�\\u0006��\\f;���<Q|������_S�\\u000f\\n\\u0007�ģ��.�ًy�x�\\u0002�{@��n\\u0006�\\u001d�5�,��\\u0010�?^�\\u001a�(l(�0�,\\u0000�3�s�5��K$�?�T���\\u001f�[ee�c��R\\u0015?(\\u001b�ࢨ�P>��\\u0017\\u001e��1/���&�\\u001b\\n��ٴ'A��+L�����\\u001b���\\u000fE\\u001b\\nƩ#6�*T�\\\\\\\"T�R�%^&\\n�>\\u0015J�<y����\\u0006�]T��\\r����^��r�\\nq\\u0002��Vi;��i�Ԕ�\\u0006\\f〱����\\u000b��oo���^(ĵ����h�l��\\u0000M�ySb=g��!��Evx��Y��<�!:�\\u0000�\\n[��\\u0000��\\u001b��[\\u0006K@�\\u000f�16�ҁ�\\u0002�bFL�@I�\\u0005�\\u0000]\\u001c\\u000f��iE��1K\\u0002\\u0019�jG@G��H �h�\\u0012o\\u0014�Q�F�y�/\\u001b+މ`S�\\\\\\\"�H��b<M4�\\f�n�0���)\\byF�/e:���L��\\u0012�&�{\\u0000I\\u0007�K�\\u0015\\u0011G�\\u00007��j:߭\\u000eg�\\u000b��\\u00107V��5P)�k�'F��Su�D�P���6�e�\\u0018\\u001f\\t�0�8�\\u0014k��H�0D�R�!���\\\\\\\"�=\\u000e�-k��d\\u001e\\u0007J\\u0000p\\u0016x!l�Æ\\r�\\u001b����\\u001a��.��L�fp��CY���\\u0007[1�ښ�L���\\u0000\\u001f%đ�P0���\\u000bo�Z�~އ\\u0011�NPYr.H\\u0016���빯6﮼�j�i��+g�\\u0000��Ԧ�>���\\u0016n����\\u0000�KD���_�@��2�O��ٍ6�\\u001c8��\\u0002���+\\u0019�\\u0007!\\u0000/`<�g֖\\u001a볯��Y�JR��u\\u0014bˑ����#RE�\\u0005e��\\u0004H\\u0003��!&>\\u0014e�_���R|�\\u001aV�@,�r\\u0007ƽ.���\\u000e;ە��a\\u0016\\\\\\u0006c\\u001c�.��u�\\u0018�'�BdB\\nk����9�Й�\\\\\\\"\\u001e�v\\u001f\\u001a\\\\\\\"\\fop��V\\u0006�z\\u0000<<hs��l6�\\u0002I�N �F��M0gXa.\\r�\\u0005���\\u0017\\u0012\\u0010\\u0011cM\\u0014P��!��\\u0014ۑ\\u0005��m�5Y�S\\b\\t\\u0019���o�nO�\\u0013�Ѭ�0\\f���n(�<8�L��z���\\u001d\\u0005�L�\\u0010��O\\n�\\u00104v\\u001b�\\u0014;���Y\\u0005�\\u0006��(i\\u001d��-�5Z $d��0\\n����)i��ƥJb%J�(\\u0003��9P'i��p�\\u0018ek�\\u0000���0\\u001eh\\u0007\\f\\u0000fÕ���#�\\u000e~�\\u001eڭ\\t��\\u0012n�#0���\\u000f�\\u001f�;��\\u0000��q�,�5R�������\\u0014Gŵ���O�N1���/f\\u0007˝�ܙd�]�eT�,�:\\n.I���q1�\\u0014ޥc�!��\\f�w|l�x�#G`�s�H�㖀[J7&!/��d\\nx�X\\u0011�_:\\u001b���e\\u0010\\tKn���\\u0000� �\\u000e[���\\u001eޗ7\\u0005�����K(Ɍ�\\u001b�t)�67�+�\\b\\u0007����ELT���\\u000e�8��6��-�\\u0005�bd�{�4\\n׍���!����[�Rw��pЏ\\u001a�;�k��\\u0018\\tP�p:�\\u000f\\nRݱ`_W��ޡ]\\u0003B��\\\\\\\"\\u0004\\u001aۭZ�JЁ�1S\\u0014bܮ\\u0005��\\u001bդheh�\\u001cC+�\\u001bs�����kC`J8:\\u0013�.��ڈGǛ\\u001aH�y!#S�{﮴�\\\\�B�9�<����!J_���(��$Iۀ,���q}�6�ʸ�</�4d�4Qsb}\\u000fҚf�ceaaK\\f��\\t�&c~@�\\r��*eO�S��\\u0014&~�*��'����\\u0000>�\\u001eF���h��f&D�Ζ�\\u001f��Y��\\\\\\\"_e�.�&��d�\\u0019�\\\\\\\"B��)&\\u0016�\\u001f�?ϭJf��3p��0���\\u0007�5���p�&��\\u001bzI�U����r��cvM\\r� �\\u001a�u�^�\\u001b\\u0001�D9y٘V�͡l9�P���O\\u001f�ڃ�[�cO�fm��\\u000f\\u0005�+��h�`P�p�&L�\\u0014C�\\u0017�=+܌9�\\u0017u��z\\u000b\\u000b�ǉ��\\\\\\\"�r�˩4�\\u000e퉝3c[���C\\u000bhk;Z��SX�g{][\\nk\\u0012\\u0013�������ċ!�\\u0011������\\u0016\\u0010\\\\��J(\\u00147qɆ\\u0017�\\\\\\u0006:\\u0005�*��/��P4�x\\u001b�5�¹��\\u00130`��7� \\b��\\u0000\\u0010@��GWE��� ��\\u001a{�1'B�����\\u001d�\\u0013�Io�S��T�d!ո��3��[Q^*�E\\u0018d����Z�E�4�{����\\nx\\r��;�zq\\u001b̨��\\u0015]RhLy\\u0016T\\u0013/��*t\\\\\\\"�.DQFX���:�CR�\\u000fP�\\\\����6�}+�+*�*�J�*P\\u0001x]�;����\\\\\\\"�B�m�K��\\u0019c \\u0015<vҰ�\\u0019��\\u0004�$���\\u001bm|���$h�\\\\\\\"�kI٢��\\\\\\\"��O��|���#�dae��˄˴d�o��~T��ce7]<i<߷;~J�<�r$��x�ړ�Z���\\u001a�O\\u0000���#\\u001f1�\\u001d��Xj�i$C���-`3�\\u0002c��p1�H�\\u000by\\u001bS\\u001e�\\u0017v��!Αr!\\u001aE ���\\u00005\\u0005/m��g0�\\u0004cȠ$���֎\\u001c\\u0003[�\\\\��9y\\u0018�\\u001d�\\u0012O�Ev�b�\\u0005�@>\\u0015Y�Ccb/��1�LXq�\\t\\u0006�\\u001a�eA-\\u0006J�;X)���d:��:�g������\\u001fʪrb\\\\\\\"��$�\\u0000�f�\\u0011\\b\\n�Lt\\n<h\\u001cw��v\\u0007_��&�\\u001a��6'�T ���/�C?�\\u0001\\u0000��[ʛwL\\u0018�\\fM<�\\n1\\u0004\\u00166���+����LE\\u0003ZM�\\u001d�fo��\\u0016�dܸ\\u0002\\u0000f����mY�M���\\bS'C�\\u00007��7\\fU�S�@|�5��5�W�s���&>�\\u000eOo:W�ߕ0�\\\\h���ɡ>v\\u001djc�.J���\\u0017�\\n�\\u0002���F��ֺ�Ӓ�\\u001d�8fQ1BcX�P��yy\\u000b�/Oo�Ϗ=�'�\\u000eG��*ĵ\\u0018c��[�D\\u0001 A�J�lm�6�\\u0000!Y�K�}�Z��e.˥���b|kd�\\u000e\\u0015��%�\\\\\\\"�B�t��~f��Z\\u0006����<Ɨ\\u001f\\u001aj���UR�\\u000evV,�1�������Ǎ�\\u00002\\r��Qݻ��\\u0013!E)\\u0014`�\\fu$���G;�\\u0014\\u0010\\u0010�7�h,�h[���pĜ�\\u0000�\\u000f�\\u0006���ڕ\\u000e���T����J� \\u0011���7\\u0019����F��r\\u0000��+�OB��ɰȝ�\\u0019��\\u001b\\u001a�N=J�\\u0013���P\\u0019\\u000e�UP�\\r��^+�/�CY�ۃ�}뢜��\\\\\\\"k���<���\\f.���#�4lc��\\u0004�[lMcR��5\\u0007\\u001d�~�i����\\\\\\u001eA�3��5�\\u001d�֮��I\\u0019\\u0011��<��w�\\u000b�+c{�Q�F�x֑d�A\\u0011L�]��(A*t:0o�j��Ui�')Ǫ3�u����V�W��\\u0016$s\\u0019�F�\\u0000n\\u0015��\\u001fQ\\u001d\\u0006��I�˕��ħ�\\u0000L8g\\u0003ύ���A��M$�h���|�\\f��\\rk\\\\~\\u0014�\\u0007\\u000f\\u000f� W\\u0012H.���Q��ҟ\\u001a�\\u0019e�P\\u0011�\\u0007^ƛ,W\\u0000�?�\\u0014�a�g\\u0017َ�:�&����٦�\\u0019�v:82q љ\\u0010��z���Y�`��b5\\u0006���<�\\u0014\\f����\\u000b�Y��<��8'iy\\u0019��b�<�r'�\\u000bԱ��Ɛ�2�U��D`,57\\u0016�����1�M��(�rZdEan#�sN��\\\\\\\"���\\u0004{�h�\\u000b���\\n'\\u001at�d\\u0011�\\u0017цڏ:X�2_�Z�d\\u0015�]�0Sr�^�\\u000f\\u0001U\\u001a\\u000eel����f�Tiq�jQ��_��T���6A\\u0010RE���u-$�rnN�Ӫ{�k(�c�'����ѽ��\\u001e�')\\u001f�i�*�1\\u0000ځ�^P\\u001f��߳G\\u0004�{h,���T�v3n\\u0014�w|x��\\u0013D�8!\\u0000\\u0003��\\u001e4-΂�m�Gw�~�9�_�\\\\\\\"���\\u000b@�n��\\u000e2�C�oZd�\\u0018'���r���CK�S�O��\\u000e��|�c�$%�\\u0013a�Cv4�D�a��QM�/�Z�����\\u0004\\b�5`��\\u0012A\\u0000���ҧ�\\bmj(�ߑ\\u001abG\\u0002�s���\\u0000*k��\\u001ay���fA�#7���t=GU\\n\\tR�JC%3�1�+�#\\u0005�-ğ\\u0011ҖT�Ԩ\\u001ap��[Z�s�=�X-\\u001cג.��/��dG4a�`�z��բ�L�~�U�g���*}S\\u001d��54̑H�p�\\u0007�[�]Em\\u0006]��A�ۡ��mKH~-��)�t@\\u0014:m��x>��\\u0000�j�#-,\\\\\\\" �\\u0015A\\u0017SbI�˶J3{\\u0014\\n���?bF;�A��\\u0000��v��M-k��\\u0000p�JȦ\\u001cw�ݹ%�`z\\u0011����1�o�:Pݺ_T�>��;\\u001e�f��]�`\\u0000�M�ýbղ����ճ��?�͝47�V�G\\u001b.�j��1d\\u0000\\u000f�\\u0000\\t�23e����[�T��/3W�O\\u000b7�q��\\u000b����T�7\\n\\b��JK7{�\\u0019\\u0017�\\f��`���\\\\\\\"��x�����\\u0015�_���[�[��I��!��Y�\\u000fg��\\nC0�\\r��e\\f�4\\t2\\u001e^�(��/jR��g\\u0019WH��O�\\u001b�C��\\u0010�\\u0000 ��*iK���V���5t���;�J�F��ž\\u0006�L��Q\\u000f�U\\u0007o�W'�Gǀ\\u001e\\u0014\\u000eFk1<\\r�ֻ+F��8G�D\\n�'R\\r������`����P�:�-3�:8ب��]UMW;��E��3G\\u0001����()\\u0013&\\u0002Dwh�P.G�L{��&\\u0019mv\\fG��!�����u\\u0000���j�_lQ��)�`�]�m�J�l�4�\\u001dl՞\\u001c�\\f�$�3��+kܝ\\u0006��\\u0011`��A7+�\\u0001�������N���~\\u0018�/.h�inD�\\u0000o]��ۦ�����g�EW\\u0013';�q\\u0015��C5�\\u0012F\\u0011�M�\\u001at��]���8�\\u000e����\\u0001�R�{\\\\\\u0011�R)d�\\u0019\\bv�8�U��a�S\\u0011��\\u0002�\\u001c1,j�Q�ځ�U�D��8fҤ٭�F\\u0007\\u0000l���֮�cª��L���e\\u0017�\\u000031\\u0000\\n\\u0002O�QG�]A\\u001f�z��d���W\\t\\fJA\\u0005�獀�:$-0�\\u0012[\\r�\\u0017=qJ��fV7\\u0005X�BN���U'ē!\\u0016<���B\\r�x�J��̓���ܳ�\\u0003ܐ!:��o�zĞg�ŏ�&��\\u0012�5�\\u0017��\\u0017\\u0011d�h��\\u0007\\u001b\\u000b�\\u0006ߩ��\\u000fr�E�,4\\u0016�$(�P���\\u001d�8�\\rM.M�\\u000f_6\\u0019�1��k������\\u0000�\\u001f�5���Cxc>E��\\u0005\\u000b��6D��7`,\\u0005�aM\\t�v�\\\\v�Nh\\\\\\\"7Rb\\u0007Es���`v�Ŕā%��ݾ����\\u00162d���t.�v\\u0017���-[>\\u0013�H��\\nG�\\u000b\\u001d\\u0001֕���jм\\u0012��G6��}[u�J�:&D��`���Ӊ{Q�ܠ���ѫ8�;�(�,wY\\u0017f��5|\\u001e�\\u0007/@)0Z \\n�.M���:�\\u001e>o��A\\\\\\\"�S�\\u0017�3`�I�\\u0000��e�?���o�[���mG\\u001cj�9gL\\u0019�Lr�q\\u0004������X��O��\\u001dj7k����ly\\u0001o��|>����.)p�CV�0�\\u0018*�[�kc�^a�� s\\u0018�v*��|�4�Y$����X��\\u0016\\u0002�,~��\\u001fE�\\u001b��#j.�\\u001eGL�����\\u0012�@�I���\\u0013qz\\u00037�Ï��74��u��b�\\f����\\u000b�������C��T]z�+\\u001a��i�[UD�rn���ڝc�\\u001e:\\\\\\\"l\\u0005�$�zi\\u0001�)��Z�#b�\\u00144����5$hmS#)b�j�\\u001e\\u001f\\u001a^�Y�1�:�@HY��D����\\u0003�\\u001f}\\tR���\\u0000�\\u001f�\\u0007�^\\u001e�%�P\\u000f�BԠ$�I��bG��p��<�.�X��7֖S.�(IeC��\\u0011�\\u0000t�\\u0000�'�\\u000e؆])fdGZ%&\\\\\\\"�t���U�\\u0000x�\\n��T��S,\\t�G1�\\u0006e��7��d�RbȪ�\\u0000�����\\\\�}�/\\u0000�:F-$��-qq��V�J\\u0004�u#��\\u0000n+[�ɸ_!�i'���^ܐ#\\u0010f<\\u0019���\\u001bWA\\u0013�@\\u0010qA��_�q1g�O$��}Q���\\u000f�OK_����4����߰�`�R��d!:�\\u0001���^�\\u001f����a#[�񥿵�F\\u0017x�ܑ\\u0014����F���\\u001d��~��������v��b�������5^�\\u0015+�\\u0005w��O�c+�C<�1�\\u0000�_�t����\\u000fS\\u0001{\\n�r\\t\\u0007�F�\\u000f�\\u0012�\\u0019���\\u0015�\\u001d�M\\u0006J��\\u0018�\\u0003�$�����?=\\u001c�&�Eݎ�<�c/~�U�1g��o鿍���\\u001a:^��\\f��؄�Ώ'V\\u001e\\u000b�I�|Y'�oE����ڭ���?\\u0015\\u001c�ߥ\\u0012�\\u0019�Y\\u0000f\\u0000�h�Շ\\u001el&iIQ�P������\\u0016%�\\\\\\\"ܹ\\u0001� �A�γ�p�\\u0012sِ64��ѷ�w#�U�I�<D�\\u001b�\\r�\\u0006���I#\\u000b�;\\u000e��I3N;�]@R,\\u0015E�w���+Ye\\u00016\\u0005�\\u0012z\\u001a��\\u0004QM ���rE\\u0011�\\u001aG�\\u000b��#o����j$�A)�`��ܻ�C(&\\u0004\\u0005涚\\r���.*GJ}�DȹY\\f��\\u0000�U��k�\\u0000\\n�\\u000e�b�ń�q�q��\\r\\u0005`;�30P\\u0018\\u0013�ֈ��c�c�\\u000b^��\\u0000�-\\\\\\\"�[��m\\u001aWo���lC�P��g�ݻ>R%Ǎ�{�@c�\\u001a����L�Dq�w���\\u0000��)�:,9\\u00131~FÐ���[��K\\u001b\\u00024��\\u0000a����r�����?\\u001d!\\u001f?�݇3�\\u001em��s��4\\u001eL:\\u001a÷}r|\\u0007�]��P��$x/�5�\\u000e)^\\u0016��\\u0007cTԡ-G<�j�Mk%~J\\u001b�^�&�,��(\\\\����\\r��GAWv\\n����b�sUU$حJ�*�%J�(\\u0002T�R�-\\u0013��\\u001c�\\u0014�~T�\\u0000�N�7�\\u00196]\\b;��=Z�d͋ �#c�\\u001dA��\\u0000�\\u000b��:֊�[�A�j>�=�,j�w�p~���\\u001c��\\u0015eCu}�QI� 2؛h5ڼ>�a�\\r�t��2��Orf◰�7�\\u0002�w\\f9\\u0014q�\\r�X\\u000fƔ\\u000eM�`�Y��5,t�Ƹ��\\u0012\\\\��Ctf%O����dA'n�VE,W@\\u0018\\u0013��V�\\u0013%J�)��?\\u0011!v^a\\u0001!\\u000e��@|�^�a�]����\\u001f*ϡ\\u0003�d�Xߖ�\\u0014�rkR�Jb\\u0019����1\\u001d����[�w�$jY��\\u0000\\u001b�\\u0005-Ù\\\\\\\"��6V\\u001fx�����,Y\\u00112r@E�:�j)�\\u0018��\\u0007��������;kY�Z�KxiZw\\u0019aS���rՔ\\u001b�����p太I!Xn\\t�f\\u001d�\\u001b�o��\\b���P]��ed[\\u0010u�|�\\u001c2\\u0006J��\\r;or8X�\\u001f&\\u0016\\n��u����A4C~�ñ�HO����b�H;oI噑�\\u0002��y\\u001c����y�+�\\u001f\\u0012�A��U����S�dw hM���\\rڧ-�\\u0019��\\u0003��WDX_z��&؁`��%]*\\u0018%\\u0004\\u0002�'o�jr]\\u0019�m`����0�Н-z��\\u000e0ba�t���Ɖ�;��qcM�\\u001a6/��\\u001fM�+��[�)����m6�X��;�H&\\u0002\\u001e���kc\\u0004��\\u001d�(\\u000e�u\\u0012��ȵ����ŭI�\\u0010�b��h�X��F�2���?\\u0013XI��\\u0014�\\u0013�Y# 2�hH��uݻ����~2>LJ�\\u0012\\u0006R�\\u0010@��<�ᗸ�I\\u001b��2�`n\\r�\\r)�\\n�\\u0019�\\u0000��6\\u001f\\u001a���\\u001f�G�*\\\\��\\u001a`�-��}�����H��R\\u0019w\\u0015o~D\\\\\\\"˯�^f_zB\\b:�\\u0000\\u0001C\\u0006c'�Ɖ�\\u0007\\u0014]��C͇\\\\\\\"z�W�\\f�<\\u0014�t6�q�0J��;k��X\\u001e5yA`=B�#'�!\\u0001��\\u0017��ym�!���b�o��4�\\u0015|�F1q`lM�o�U�`�zX\\u001b\\u001d@4��ԋ8��f�\\f�%\\u0011H��3YeI�b\\u000b�,��A�ʼ×ۆ���:T��iP\\u0006�'kK[\\u0015�q��\\u0012ƥ\\\\��JurJd�R�1��ڊ�(\\u0001�\\u0014�ǚ\\u001b\\u0016\\u001cM��&�9\\u0018I;\\u0017T\\u001e�c�\\u0007���~4�3\\r�\\u001f\\u0003P���bG�&����\\\\�~Fr}1�ϏJ\\u0017�s�ky\\u0000+\\u001a��R��,�[�^�W�0I\\u0011�P�\\t\\u001e@�jS\\u0010�;>)�\\u001e8de$j��ǅNֱ���\\u000e \\u0003�+�bΖ(��!�a\\n�U�4�k��>C�*^�\\u0016�)N99y�WmY�/��¶��F�4-\\u0011!����&7�7\\u0002�j��\\u001fM�����\\u0015��\\u0002�dN��dn�\\u000f\\u0001Ri䙮�m�AY�$&J�*S\\u0011*T�z\\u0000�*T�\\u0006ݳ�Å��<l�\\u001b�-c�0��X�b���Ȕ\\u0017\\u001e�M%�G��<?\\u0007M�2!L��b\\u0003�\\u001b�F���{�z��r�Zi���W�k��E��+�Po&nT�������#@\\u0007�\\u001e\\u0015�w���(\\u0017�ҿʁ�@H�.��T�]�\\u0000�J����wd�\\n�l\\u0018�\\u0002HҖT��Y�+�%J�*�'���xfxo�c�5K�\\u001a�@\\u0015�D�-��Jq�2�f�Yt�\\u001f2&%E�����JH��u/�`�����I\\u001bM(Wc�\\u001b�<�5�\\u00037�H\\u001f�\\u0003\\t\\\\\\\"�hG�Jh��@�]�u�2�5��v��&�c�\\u001d=,.\\u0001�-���2�R�z2�����*2�(:\\t��Ox.��\\u0000M�s��\\u0000/�Y����\\b~:��k){�r�x�9 �(�\\u0005\\u0006��K1%���V�\\t�G�\\u000e�*S$�\\u001aL|��\\u0016!\\u0001\\u0016��c�uy2Q���\\u0015\\u0000\\\\\\\\�֤\\u0006\\u0016\\\\\\\"��V%G\\f�yRhQ��n��bJ9\\u0014r\\u0007�\\u0005��y\\nU\\f��\\u0013�&����B�\\u0005���kG~z�ǩ��\\u000br����Tְ�]n�N+\\u001f�X�$�}�r\\u0005�Ҽ�R��S>��K�_�K*��,-�6(|�5*\\u0000��WU���ᅄ�q�K��L��Ƒy,�n��\\u001f��i��\\u001b�i�o��t��\\u001b�F\\fK��=\\r&���z��J�B%J�(\\u0002T�R�ƀ%3������@I\\u0002�\\u0019�{xhieJ\\u001a���?��U\\\\\\\"lp�v(�E�|���%]m�E�\\u0000��\\u0000��*�\\u0015<+�|�����0fX���Z3��t/syT9P:Z�\\u0002��\\u0015<��F�\\u001b\\u001a��+}N��I���`*YU�\\fO�i�B1��yR�Bl�*T�\\\\\\\"T�R�=9\\u000b\\b$\\u000eOm/��Yk.VF����\\u001a�R�3\\\\Z�F\\u0012\\bAw�\\u0000p��\\u0015\\u0019�Q^�>\\u001c��v���O�\\u0006\\\\\\\"đ�j���\\u001e/l\\u001eW$��Z�\\u001c/0���\\u0000#�{T���ħ��Y\\nM\\u0019>����k^���X_�NQ���ƙ(�׈\\n[�nH���\\u0014\\u0007p��\\\\\\\"@\\u0004nM!�\\u0000���\\u0000���k\\t$�V/#\\u0017c�cz��\\u001c�=��`ղeId15�����\\u001ey�\\u001c]�<+:�2���VaO�%\\u000f��\\u0016D%��e?PБDT����\\u0015A�\\u0015|\\u0000\\u001f`�T�@\\u0012�J�\\u0001*T�@\\u000ec���x�nvf\\b�v,v��S�,�L�IV0�\\u001bz�e\\u0016k|)fD�\\\\\\\"?m�\\u00167\\u0004t5ir��%��*�׶����K�c�\\u0000=��J��<\\u0005���9�0{��n\\u001c�m���.\\u0011\\\\\\\"�1�ƯMQ\\u000b�$�1\\u001e����u?\\u001a�\\u0012&rL���>b�Ǖ\\u0015@���Z^6��\\u0000+�I'�A�-�_�i\\u0006f|��$)`�x�/r+��g-$nC��?�\\u0007\\u0019�~\\u0017Y\\u0018�;І\\u000e��F�P�\\u001dx�s�A�J��\\u0003\\u001f�ǯ��τb�\\u0014:�`i���[\\n)\\u001aD'�:\\r��֋�\\u0017�Q\\u001dT=���\\bd�����\\u001b�y\\nY��\\u0001\\u0004B\\n0�䟑�\\u001d�{�4s�|�T�\\t�_�G7p�.�\\u001eX�I%�77�W\\u001d�;z��쿶KI5�G7\\u0004\\u0010�\\u0006MX�ڽ�\\b\\u00126*=@hnh�7Ǳ�R.�_��a�\\u0019\\u0010���\\\\kc{W~\\u001a�\\u0005��x�F�[�����X�B>c�%ܒ:��jER�p�MJ���2O�,ћ�\\u0011c��\\n\\u001a��\\\\R\\u0019*T�@\\u0013�w��x��\\u001c�*\\u0010�\\r�\\r��pu,(@5��ọ�\\f\\u0004k��Ɩ��' w���hY=�\\u0007�m�i��\\u000e1�}\\u000f�f䠽�m�B�eM�2Oɕ�-}\\r\\u0018N�\\u0015?$�dx��D\\t̝:W�'!�*|\\r@�\\u000f ���\\u001bW�\\u001a�>\\u0006�� �!�\\u000e�N<�\\u0017�22\\u001e�M�ZH�[H\\n���S\\u0006�1�\\u001e�-\\u0004�\\r��\\u0004V�D��nT�\\u0012�N@\\u0006�x���H��LX\\u001f��34�,�˱�\\u0000\\n\\u000b��0&�5������\\u0011�\\u0000\\u001ef��݁�c�Y5�Â�\\u0002\\u0015s\\u000b2n\\u0001\\\\\\\"���ٔc��L��$\\u0019V/�\\n\\u0000�Ms��ޒڎF��V�ɗ\\u001b)rTݗ��+�tZ�\\n\\u000e��\\u001f�V��\\u00166Ѿ��׉\\u0014,��\\u0001�Ŏ�RI�\\u0000p�$�H�T���$��d��1�qTFo�\\u0001��MyV�\\u0000����Dl�:?:�^�}�%�c+\\u0013p�M4�\\u000e���\\u0000�fp\\n�\\u001f���\\\\��+�;\\u0017v,�v&�ו���}t�T��c�m�̭�gnI���i䝃Ik�aajΥJ�UR�T%�!�ܷ,a��b��\\u00112� �qkkW����Dmw&Բ�d�\\u0000_��٧-Υ.�Dx\\nl�c{\\u001aɲ\\u001c�:VU*�]V�vl��nw�8�\\u0000��p�Li�{�-�\\u0017җR��\\u00175c��\\r�ӲOQ&��7���#\\u001cx��\\u0017b\\u0018Z�Q�H�\\u0004k\\u000b���K����<H\\u0001M�<��ys�\\n��\\u001b\\u0003cQ���T��{�R�m�\\u001fv2r�\\nȪ\\u0015\\u0004���\\u000f�|7��8�:��O!���<\\u000e�<�Gm�ݷ\\u0017\\u0018\\u0007,�\\u000f��):�hL���󉙺�-�ƴ��D��m���+$�\\u001f��\\t\\u0018���6���Y��\\u001e��\\u001b#\\u001bF����?Q�h���4�U\\u0019�\\u0014Z���A�ɹ\\u0013v=N�Ȝ@& �J�\\u0014�\\r�܏�13�e�,\\u0017���jP\\u00122\\u0019���}Ʊn�%�\\u0005\\u0000t��\\u001dJ\\\\Prf�eO&��\\u001e\\u0003AY/�>5�Jp!���t��7�����W�����Q���crw4������_�0p0����ȋge\\u000bbn|M\\u001e��{s\\u001fZL�|A�\\u001a�ʔ�Pw+����\\u00013\\u0015�\\u000e�?\\u0000ks߻\\u0015��L_a�U���0>���\\u0000�;��\\\\\\\".GbA\\u0003��-Lcx$P��u;2؏�W��H2r1��<�\\u0013x�\\u0015�(\\u0003��I\\u0013&�\\u0011_?��\\u000e�F:�@H\\u0005�'�VG���\\b9��t#�\\u0003@\\u0017y\\u001aW���~\\u0014w�TB�\\u0000u\\\\\\\"܍�.\\u001akZG3\\t��w���0_\\\\NB�\\u0010��$��W�'�\\u0005u�]6 �\\u001d�d<�D&\\u0002n\\\\�����\\u0000��X�9@�A\\u001e&���/���9��<(1N\\u001cO,ir.��x՟\\u001b\\u0006B\\u0000E\\u001c��zI�)l]��\\u0001\\u0003 e]\\u0001���\\f�T� ��޶�a\\u0001������B��\\u001a�}����,L�o��\\u0006�l�\\\\0�\\u0006��D�w,TQ�0\\u000e�5��``Ǵ�X{�ˡ<z����҃eu?h�%��\\fx=ԞZ\\u0003��\\u001c�_�\\u000e\\u0007?\\u001d?\\u001a0\\u0000\\u0012�I\\u0015�Z�Ac�k��r��'����âu�kF�\\u001a^lA��ʏ�rB������\\u0010\\u001e�\\u0000>�:��Ʈ�a�,�qp�\\f��Ǉ\\u0017%[�ť��Q\\u0015���ƃ�w(_\\t\\u0004>�|�TYn\\t]��?s�\\t�\\u001b%N�\\\\\\\"�\\u000f\\u0013��_���?p͉���E\\u001f\\u0012�\\u0002I��i~[\\u0003P+��.x\\u001f��H\\u0014�\\u001c�n�'�s*޴'�& \\u001d��\\r\\u0005��´�D\\bm�`l>b���\\u0013ҹ��(��\\u0011XjX�����F�Ae\\u0004���\\u0014��W�gi�\\u001cD\\u000e�\\u0015�x�q�LQ�$�\\u001b\\u001e`�\\r�<\\t\\u0014�\\u001f�d�\\u0012�������?ec��r�eI\\t\\t�\\u001eH����]��\\\\��b\\nm@_l����\\u0016�d�e}�[YG���=��&\\u0001k�\\u000b�4w��}�t��O���li��ͻ9lX�\\u0003>q���R{���6\\u001e�\\u000f�n��X�UU�\\b�\\u0011�qfɔH�\\u0011ǎ�֬��)���z)\\u0016\\u0015)/\\u0000�=�:H\\u001f�TWYu\\u000e�\\u0005S6Vi��c�J.m��t���\\\\C\\n\\r\\u0000���\\u0007W^Q��\\u001e���(����3���B\\u001f�_�>&�`T\\u0005;��8x�4��g���~4nf\\u000b�\\u0014d\\u0001Xh�ao�=�\\u0005\\u0012���\\u000e\\u0013���ly=�\\u001dµl����p\\u001af߈\\n\\u000f��\\u0017\\u0017m�1��\\u001e�\\u0001DE\\u0004Q_�P\\t��?:\\u001a�H�c��U\\u001a�H'�j�rXU\\u001br�|��v��\\u0016\\u001e9�Dby\\u0012\\nۯ��]ϸG��Ք%��n��U\\u001f�vΥ;|`^T0�\\u0017\\u0015db�Tl��W�+r\\u000f WG�A�\\u0019\\u0016Y$�B�'o\\n\\u0014\\u001bT������:\\u001a��5�wk!�\\u0010\\\\\\\"�9\\u0003�M�j��L�\\u0003�\\u0007�*O������\\u001a}�s3\\u0016,���Q�Td�l\\b^W�m֍\\u001c\\u000feo'E ue��\\u0012�\\u001b\\u001f-��\\u0001��<x�m�\\u0005> ��O�p\\u0012&wȏ�\\u000b�:���\\u0006��rwG��H#@I�B��tԊ���S���\\u0001\\u001b5�F�=O��zk�k,a�V\\u0006�\\u0006�\\u0000\\n����ܰc��\\u0006�Ym��_�\\u0000\\u0013��\\u0011�\\u001d�\\t���\\u0001�\\u000fܻ�gq���\\u001fd\\u0013��4P:i����C�1[����m�*���E���\\u0014��q���3/�������0��R\\u0018�j�X+�H�\\u001f&&e<�����>T$�\\u0011�J١p4\\u0000zj~�4�\\u0014D�3\\u0016My��m{iZO��\\u0004BF�w\\u0017E��x�x�Y�{�E�\\u0003��޲�\\u000e�4^�V:�u;\\u000f��1\\u0004�0r@Ҽ~K{����ؒ��:�V�3\\u0015�J���\\u000bIA��b�]~��s̮��JѬ�8�\\u001bX����bA$�i��۲�A�$i�Z2\\u0005��{ޜ�����{���\\u0000�!���\\u0001]]\\u000b\\t\\b$���5N��\\r�0�\\u0000��h�2f�p\\u001c?k���O��\\u0000´O���\\u000fRH�|����Ǆ�ꑀ?�5i�p�>�S-�х�꿏�?/P��c�\\u0003iϑv�c�x\\u0011'\\u0018�H��Ⲹ\\u0017�\\u0000����Ǒ\\u000b��x��\\u0015Q޻��.O��||!���<���|�\\u0019cy\\n��G6�\\u0000�����\\u0000o���͏\\tY�\\u0001���@G-\\t�_�}��ԟ�\\u001a���\\\\���,�A\\\\\\\"2���E\\u000e!�\\tO�\\\\\\u001c|9�\\t\\u0001�v7�e�\\u001e<R����\\u001do�b��ď�Rx��8�/�]�/\\u0013&��ǁ�}��\\u001e6�n�y0��BI\\u001d�qf�\\\\\\\"լ_�x���Q\\u0018\\u0001lm�]�:A\\u001c�\\u0017���h�\\u001e�^�N�ؾ+�\\r\\u0016��&Q�X�����I!�-$FK��\\u0011��Qۇ%F�\\fm\\\\\\\"�\\u000eB��Њ\\u001f��Y\\u0010I\\u0003\\u000bI\\u001e�����\\u0006�q9ʕ*PI*T�\\t\\u0003Rm@�m���J�BH\\u0004\\u0011cT\\\\\\\"ď\\nJ���v���(<�\\u001b���\\u0002B�m���{M��~�&[\\u0002W�-p���c\\u00047\\u0007>%o�u��e'�U���sL��\\u001d�\\u0003\\u001a�\\u001c\\u0013�6\\u0003�Ǖ�\\u0003��bA���v��L�\\u0010(O�\\u000b&2B���p\\u0001��+�\\n�+r�\\u0018��\\u0004�\\u0003�¬�,���&�ɛ2f�\\\\V5\\u001b\\\\\\\"m}z\\n%h\\u0010��W��޿��״\\f�\\b$ȕb�rv6\\u001f����,X���%�NO_!\\\\�]�lL�$\\u001b��tk�\\rt���G���\\u001c\\u0019IW�����{\\u0016��ȭ�\\u0019�\\u001aR�T\\u0000��pv\\\\\\\"�����\\u0010E�k�\\u0004Y_��E�\\u001b��#Dw\\u001cX T1(PM�>\\u0014���Q\\u000b�\\u001bi�T�R�\\u0002T�[bc������dn<�{y�\\u00064N\\u001fn��,1!ix}DX\\u00016���\\u0003��\\u000b=�gyȠ ����E\\u00066>\\u0014\\u001e�4A\\\\\\\"]�N���8)?o��лb���J��\\u0014�CE��fr���F��\\u0001�-a_C�՜�� ��ibo�\\u000f�\\u0010�\\u001b�\\u0013����j\\u001e\\u0004���ڲ�o��o�Q��\\u001a�\\u0012\\\\\\\"\\u000f0�W�\\u0003�7����LET�c���ږ�<�\\u0000�\\u0015gOp�b4��ȵ��4�ThNw9��\\u001fCH\\u0017�\\u0002�GZ�\\u0013��f)x\\u0012�\\r��\\u0000�v�}�\\r���a\\u001b�m\\t=/ւ��\\u0016\\u000e<\\\\��\\t���u��N�ѕ�r\\u001d׶�bb4����E\\rʏ\\u001aJ���l����_K���2#\\u001b)�u�\\u0016��K�\\\\�q���\\u000b4�'�Q�\\u000bX��hhb��\\u0011���xs�\\u001d\\u001b�/*HW \\u0014q�\\u0004[��\\u001a�%id \\u0002~:\\u000b�\\u0001�S�/�u\\u001b��iXA����Ӧ�\\u001f\\u001a$��\\u0006�ʉ\\u0002�+��\\u001b���qL\\u000fjT�@\\u0012�J�R/ր\\u0017��t��\\u001546�z�ݺ'���E�\\u0013}h��\\u0005�\\u0004\\u0017:�4�]�\\u0011�M� F��!>�\\u001eu\\r��hp\\\\\\\"@���������W��ŉE��|�\\u0019�<E���8G\\u0005v�\\u0013Ԋ\\u0015����<����VW�XOR�T-�EG\\u0001E��*�,\\u0001 \\u0003µ��\\r�!��Ing��\\u0005mO�I\\u0016՞���ْrs�\\u0005>��ʴ��\\\\%�8��X��D�2ƁV�,\\u0000\\u0017�\\u0002�k\\u0016� \\n`d�x�\\u0007\\u001cuS�\\u0015��k�Ŏ�P:�aj#��d�F���Ҁ<\\u0018\\u0018�KH�/@�\\u0002O�PS��1rP��R�赒2t x�m�U�{q~_a�t\\u0000��\\u001c���_\\u0000��\\u0000�e/hɍK\\u0006V\\u0003^��]\\u0000��N'��+�!�\\r��|�D��T�J�\\\\?5���j�r{6<1+�R�\\u0004���:��CSQ)7\\u0012\\tIˀR���v��!ě$��9\\u0010.F�Qq�<�\\b-c����$˃#\\u0019�\\u0019_��\\b\\u0004\\u0005'�44oz���2�z�2!8�\\u0018܎K�\\u0001��V{�(��\\u001c��\\\\�P�#�� *ASnD\\\\�A'�+K֩(�s��͹P�=�ݪh�|�,��J\\u0000��\\f�ߨ�JSM��t�\\f��S\\u001e�v�.՞�\\n�9:^�\\u0016\\\\\\\"�a\\u0004f��d]:�W'����$��\\u0011�m�6�����s/\\to\\u0019m-r+Ň\\u0019S�~�:���\\n٤̓h��c�7�i��\\u0001�ӈ��bѯ�0`\\u000e�UQ�\\u0019�/\\f�̋�[X\\u0006�\\u001aω|�r�O\\n��x�ܒ(Q�\\u0001�Z�\\u0000#N���&�Xˡ��q��j�\\u0000Εg��aH�ƕC��\\u001c\\u0015f��\\u001f��\\u0004�������V�����)є�[PG�+A�$i�%F�6�\\u0006�J�*R\\u0019h�WX�R��*��X�P�pU��\\u001a�$�%\\r\\u0015�\\u0011���5�s������iZHf{��F\\u0003\\u0006�ڡ�_AH\\u0013c�\\u001a����\\fn�\\u00146y@�����\\n\\u0017\\u0019\\\\\\\"e˖O�2(1��MΣ��~4��\\u0000\\u001b���NJ-��\\n���5\\u001e� �<)\\r>�;�\\\\\\\"/�R\\u0007����\\r��n)�\\u0012���WQ�R\\u0005\\r4j��X\\u0002)�aD�k�ک)\\u0001D�J\\u0013m��+V�5 I���u�^,c\\u0013<f�\\r5�!�-J�(\\u0011*T�@\\u0012�UC��Y����j_���|:�;x\\u0003d��� \\u0001�~�.\\u000f�����,*��\\u001a�4�/ߥr��\\u0010e� Q�z�n��c\\u0014\\u0003�\\u0000\\u0000\\u0002�A�I_��)\\u000bS�3\\u0000�۳a�cI41��U,�\\u001e����\\u001a\\u001a��(�q�\\u000f\\n��\\u0016>/�`R��r\\u0017$io\\u001a�\\u001e�\\u0004V�bdõ��� r\\u001fڏ��~\\u000b��C�\\u0016�\\u0000\\u0001X��\\u0004X\\u0011\\u0002,�\\u000em�\\u0000{o��\\u0000jk+9f�`���\\u001c1*�\\u001a�fn,�E:^��4߾eF�b�ˣrs�i��J*�/R���J���H�E���r{l��\\u0004��\\u001d�v>Z�{c\\u0005�\\u00101�5��M��r�\\\\\\u0019��\\u0012=�\\u0005a�ͮ\\u000fKQ9HAx���1Wڂ0B�\\u001c\\u000eW\\u001e,�u����,��@\\u0010� �X�n4�rgem͜\\u0001`��aU�N~\\f��Z6�\\u0002Uƌ:\\u001dj��\\u001b��7\\u001e\\u001eU(<n擷\\u0019l�v�4e'�\\u0012�J�����\\u000f3W��`ɖ ȔFO��E$�尬rA*��2�?\\u001ai`\\u000e�3�Fc/\\u0007�E\\u0017�6jK�;F|��<��\\u0011\\u0011�!���\\u0014nDj���+�K@1�0qF\\\\��n\\u001e�׵���\\u001c��?�W����m�\\u001a�S�^_g\\u0018��7�[��<m{�x��o'tL��\\u001d��Հ�r�7�\\u001c+X�\\u0004uf\\u001f��JB��&\\u001e<ѩ��6��O�����+���N�LU�\\u001a\\u0001$�\\u001a;\\u0005ep\\u0019GA֊�\\t��p��+}=��/m-Z*�&ء{kG\\u00192j֠i��@\\u0001^\\u0005\\r�`�~G�%��\\u001e�\\\\TYAUe�\\u000f\\u001a3\\u000f\\u000b޻�p�Am\\t4\\u00062�em�\\u001b����s�2sR\\barH�\\u0016���S\\u0002��\\f\\u0012{w�/�u5�p�����z|hL���y�η�>�4�Ɖ�6��Se}\\u0019w�ޣ��pģq�'k�-���\\u0002�#l\\u0005y��&�A!et&�\\u0017\\u0007�CN1��l>\\u0000\\u0002\\u0005�--�{��\\u001c�2D8�Я�E*٭d��5i��\\u001c�\\u0015�\\u0004s3�\\u0005�\\u0005��c4/\\u000b�m�\\u001f\\u0011W�y#\\f�\\b\\u0004[���i��[Lƪ/\\u0016Zj�\\u0018]�\\u0015�oE�E�1�_\\u0003X�y��^h\\u0015�<oap-{�;.l�N�)\\u0019X��\\u001d~F�';6!��r�\\u0017F76�/]\\u001d��6����\\u000f}�}WQV\\u0006��3\\u0004c\\u001bh\\u000e���zۘ�S>Ģw%��̼9��\\u0003���\\u0015�\\u000e���,��\\u001c�K2��B@��]*��'�Ȇ)b-Қd��\\u0005F�SԚ�\\u0018\\u0014�ȹ��QɄ\\u0003$��`��\\u0011�/\\u001a\\u0018����ք)>�I�À\\u001fa�kV��9\\u0019Qc\\u0013���I�צq*\\u0011b5\\u0015#UN�mc�MUl�\\u00185�\\u001f��a�H�AanEAc�&�x�Z7.��������Jג�\\u0005�[�\\u000b�V=�\\u001drpf���R9\\u0017^�}[|�m��ͪ���6%��vɑ��Lk��O\\u001f���1ሕ�\\u0001\\u001d\\u001c�)��$=�5�%�]Aab��[J\\u0007\\u0012\\t���9B�FS�\\u0000h+\\u000b�p��u�3\\u001f�n�WΪqf�z�\\u00072(�ʁ��\\u001a\\u0014��\\\\�\\nc�\\u0006?k�;�Uۊ�����Ȉ�\\u001c�0\\u0007���������'�\\u001c=Q�\\u001a�ʉ[��\\t�\\rk�H��k\\u0004Qas�\\u0014�\\u0005]��/\\\\\\\"\\u0001�}��L���ɧ�c\\u0013.�)�\\u0007��\\u0015�\\u0007m?�y%��i�۽�ۊ*\\u0013��\\u0000�\\\\\\\"edb�,�lA�i��F���`�%�\\u001a�\\u0017�P�X�rf�5�=~5)5��=\\u0005u+��\\u001c�p�xW��t�����ۣ�\\u0016��[�24P\\t]��E��9\\u0016�\\u0014���������\\u0000Qb|\\u001b�\\u0000\\u001bSZ\\u0000�2;\\f���\\\\\\\"0�\\u0002�\\u000br�\\u001e+\\\\�\\u0004��}7:V, S�0,����a�Ҙ#���\\u001e<UN�j@��z\\u0000�x?���מ]k�@-��\\u0005�t�;���\\\\�¥��`���K@\\u001f>�11�t� �Ϥt�\\u001b޿o�\\u0000�D2a��\\t`��=K}�\\u001b�\\u0018��\\t��56x\\u001du6\\b�,\\u0014\\u0000<�,�u�t\\u0001Xl֭�z�'aQ��$X�zi^Q������\\u0012H\\u0003μ�\\r\\u0002\\u0012��\\u0003@j�\\\\\\\"8�J�*U\\b�*Q}�\\u0005��\\u0012\\u0000l����F�\\u0001�a�ȡ�\\u0017emC\\u00056?:�F>L\\u0016%�\\u0007C�k�\\\\\\u0019\\u0004v���YR��t�\\u001f��qq�2\\u0007�'Ё�ToM �J!ɏfɊe1�\\u001a\\u001b\\u000b�T\\\\�W��cV����k�\\u0000xxV}�YᕖĂ\\u0001\\u001d@�ZwhXƲ��\\u0000o���T�3�\\nv\\u0015T�[bC����?K0��5?u\\u0003:\\u001e��\\\\\\\"La6J��P\\bR.\\u0011N�X�����\\u0000�@�:\\u0011�\\u000f�&\\u001fqT�/�֙\\u0010+�\\\\\\\"�@\\u0001��C�K4�9\\u001e��\\u0017\\u0015DВccb�R���.��7\\u0018M\\u0004��K�>=+� �AЍ\\b���E�\\u0012��\\u0004�\\u001c�i\\u000e�:Z�A���4��\\u0003��яԤ��E�co�T����\\u0013���\\u0013��½����jF�_v0�1�\\u000f;]��\\u0003ƀ��Y�\\u0005����<�$�[�߅�W�n4q�\\u001cru�\\u000f���;�i�e2�,9p�o��Z��\\u0012��\\u0000��������V��\\u000b�\\u0010U�*\\t����\\u0000�²�L�E`K\\u001e6\\\\ \\u0006�\\u001b�cG(gK�\\u0018t��̻�5�\\u001b\\u0002�������\\t\\u0019�Y\\u000e�\\\\\\\"E#�!O\\u0015$��\\n�fK��\\u0014��BƉ��dpHRNEW�*~\\u0002�H�\\\\�I/ԝ��z����ו�9���1�.�_qU�u$\\u001d��\\u0006��R�jQ�J��[ʥ\\u0004��Jɦ\\u0002_l頱��\\u0006��C���c����>�x\\u0012@��c��+Ȩ����5]Ky\\u0000)H�<�g7\\u0014HmmF`v8��M�\\r�B?�hڂv\\u0012�4_�1�\\u0007\\u0006Oj\\u0015�Xc�U���I�Ή\\b\\u0012T�'EI�WP6�gLD\\u001a�Sl�А@$���=d��\\n_�\\u000f�2�B�A7�n����6G\\u001c\\\\c�W>��F�|*lƑ���\\\\\\\"?\\u0015����\\u0002.<m�Lp\\u0004>�w\\u0000�jo�\\u001f\\n]<H2�,fs���+1&f����b(X�\\u0002�Γx\\u001c\\u0004�\\\\\\\"\\u0006�\\u0017_!J����|�\\u0002�Ϊd�#cfa�\\u0007�.��#/1�sdNEυ�����:D[E\\\\\\\"�\\u0017��l��>H0#�\\u0007\\u001e\\u001eM\\u0019@\\u000f+����V���1�ZA�ˋȥU��PI;\\u0001��?I��\\u0000�'�'�P�&N\\u0017s|i\\t�.QI�\\u0015?I�t5��病D�+�W\\u001a����\\r��9ʔӹ��!3�G=�F���t\\f��8\\\\\\\"TU(��\\u0001$\\nP7\\u0014�\\u0005�M�*��cc�,b^[m�(�\\f$���-n��Cc9��?O��t\\u0006�����i�r��\\u0004����?�|i\\u001b++\\u0015`U��\\u001d�h��Z�ʕ*S\\u0011?�PJ\\u0016s\\u0013�\\u0011�輞Թ8Ȫ}���V���5?��#\\u0011\\u00138��\\u001f�2\\u0001\\u001f3R�Z� E�Q\\u0010�\\u0000p�Um��V��Yn�\\u0019�%\\u0007Co�\\t\\\\\\\"K��� ��v�S�|(Ӝ;�\\u001c�����&��'��\\u0019c�B)�΢�\\u00173qb�\\be6\\\\\\\"�D�C�z����\\u001a\\u001b\\u001f���輙WāB\\u0013=Dw6As[���P�?�\\u000f\\n4A�Z$:m`M�5���Lm\\u001a\\u001d5\\u0004\\n�l�/��*p��q:^�3�\\u0006�j)KH�Ґ�\\u000f\\\\\\\"\\u0001�R����d\\u0018\\u0004|�4bM����Av\\u001e\\u0015+\\u001c|��\\u001b�\\u0000\\u0012\\r\\u001b�����q�i\\b���|I�U\\f¥8O�\\u001d����<�\\u0013�-k'��q�\\u0013\\u0007\\u0013�jсao/\\u001a\\u0000L��/�!46DR�I{���5��d+��@QJ?p�{�{d\\u0011�$\\rmIì�!����-'\\u000b�G�D����\\\\\\\"��u\\u0014Ε\\\\����*T�$����$rL�\\u001d�p\\u001c��\\u0016\\u0006����|�Xz!_��|�Ɵb�\\u000e\\\\\\\"\\u0018�\\u0005T���u��I�$���\\f(A��G�{�b\\fY���8��yWS(�!؁�#��\\u0019\\u0000\\u0016b\\u0019\\u0001��P\\u0002���)v\\n����<��C.�N��\\u000fj\\u0010�3%�Q���9\\u0000lj��<o�h��-{�li\\u001e��\\u0007Cq��kFǙb.��׵\\u0011\\u000e1A�G��� ���U�V\\u0017D�,X\\u000b\\u000f��5\\u0012���dL\\u001b]�cq[M#��\\u000b��|(�������,\\\\�&��O��G���\\n�䖴\\t��#�[��x�jU�涱\\u0014$�h�\\\\�|~q��i����d��FS�j���\\u0001�'m\\u0006Lh��\\u0011a�4?w��Ĳ�JQ��n\\\\\\\"�T\\u001e,@�\\u0015�dpqۗ�S[�u�a�\\u001b?�eœ�xI\\u001a�\\u0019�©R8�\\u0005� �+Eh�b\\u0016���9�A\\f�w)$��/�\\u0012��\\u0017\\u001bX���e-�\\u0018ug7�+�\\u0007����\\u001f��pD��`Z(\\b�4�\\u001e3��(�qnD\\u0017\\r�X�J*a��\\u001e4����D�G\\u0016 �\\b�9�ߥ��\\rЎHN���+��c��\\u0012�i/��?�ɯ��[�W\\u0017�\\u001f1{��J\\u0000p�u'M��-\\u0001�z\\u001aVSM\\u001a��/�[\\bʧ����j͢���A56\\\\�Ծ��KK�>\\u0016{\\u0012c:\\u000b�76�\\t�'ƳHa��\\u0010)=z��֊����;��\\u0012�\\u00199\\n�VF\\n4\\u0002��\\u001b\\u000e\\fr\\\\\\\"�cv\\u0017��7d�2\\u0007�4�4�\\u001eg`N�챨;�Nía��\\u0011�\\u0002A\\u001a7ƫ��N�;�\\u0017U�[��oq����W�\\u0004框�\\u000e��F��B�i- �n\\n鶵|a\\u0013Ke���|*�0F#t\\u0006\\u0000��E��`q�\\u0004�Č\\u001bC��V&�6ߥ]��;�g�*�d�\\u0013\\u001eOqX��\\u001b�5��;V\\\\\\u0013\\u001c��/�3j�\\u001f��\\u0000��Db���(�f>�����nM\\u0005\\u001d�;��v�΀F�>\\u001c���[SGwF�\\u001a��Q�����u����9y��\\u0012����@7F����'��\\r`\\u001e�d�qr�\\u0002ETe/U5����\\u0015���� p/ůo��\\u0003\\u0006\\u0000�pi���h��̘���#\\u0007����)�:L\\t2�)#��9\\u0011���ƚ4�\\u001a\\u0016`M��ކ�I\\u0018]T4d\\u0002�\\u0011s��d�ʟI\\u0017\\\\\\\"�\\r����i%�fSd�\\u0001y˓�U6���\\u0015�H�܉�\\u001b�� ��Z_\\u001cx�]՝�O�:��ؖ\\u001e�cq[G'&3�u+d\\nA\\u0017\\u001a�<�We�I�\\\\=�2\\u001c\\u0018�G���Ԏ9\\u0019��rb\\u0003\\\\\\\"�\\u0014KmMؖ7�\\u0012J��A�3/���\\u001b���������%\\u001a�\\\\\\\"��<\\u0006�5Q[2�Xûd�>�4�\\u0015�\\u0014\\u000b�g\\u001cE'���eE�A`�J�m���}�\\u0007�\\u0019|�\\u00022G�\\u0010Ep5\\u001dz3J�/I;\\u000eL�r���_z4\\u0018�,,Đ5n�~��œ�\\t�R2|\\u000e�ev�\\u0019�ݺ\\tT��\\\\\\\"�~��潫Z��\\\\\\\"�|�\\u0017\\u0010.���3dA:\\u0006*�Ժ\\u001d|~\\u0016�\\u0019��0d\\u0013�Ȅ}Q�a��]l�7�H�\\u0011�\\u001e�oo�Z�3��\\u0000��\\u0011�Ԧ�h��g,IA��<�3\\u0002\\b:�\\u001ba[�b,ċ�|Oº��م���\\u0015��H������ә\\u0003�F��_�����5#\\u0005\\u0018'��\\u0016\\u0000m�$oW\\u00103\\u001e*\\u000b7�ڮ����x�\\u0001�B؞���q\\fxcP��Lĳ2��6�ƀ\\u0015K\\u0003�B��VtOq�^]6M/�jݲL2�\\u001f�S{1�P�\\u0004\\u0002J�C\\u0007�\\u001a6���\\u0018\\r/�AL��=�\\u0018��6*z��]>wu��\\u001bFH��\\u0016h�r\\u0004y��\\u0004���F�\\u001a&��\\u0000P��\\\\^��t��83�\\u0002vO�9HG����ni��W�\\u0002�ŏ�i7����������i�nƁrxd�\\u000e\\u000f�O�mu\\u0006��!�{��>l�8����\\u0014��S��;ȁ\\u0007�X���t�b�\\u0011>CD�8U�ma`76�4\\u0014�O)}`\\u000b\\u0005\\u001b(\\u001e\\u0002��/1�i\\\\\\n��-\\u0014�6�t?\\u0003G~�u_�\\u000b��$\\u000f���_� ��N�����el<�v�v{I޺:�4Iᭌ�ͬ���\\t���W��\\u0012�,>��q X\\\\�oR�\\r��ք��\\u0017�Q�^�\\u0000\\\\r\\u001f\\u0000?�XƷ��ex�l\\u0014|�\\u0003\\\\\\\"b-��o1�\\u0000ҵ1�4�|��+�a\\u001a�o�y��d�\\u001d\\u000f�h\\u0002�m�\\u0000>g�U�\\u001bhA�޳2����\\u001f��L����yR\\u0001\\u0010�7t�΋����z�3��K\\u000b�7f\\u0016���3�����I#�#������$�\\u0005�6�iY���n�*��Ye�\\u0015�E�$'ש?\\n/!b��)\\u0012(1\\u001ft�\\u001b\\u0007\\u000b�\\u0013�b�otÐ�R��(I��\\u0007*d9\\n���A�4\\u0004���#\\u0010W�t�yn���a\\u0004�O�\\u001c\\u0007'\\b�Y�-\\u0011���\\u0014\\u0004\\u0018FhĜ�{�k�^;���QUN�\\u0006��R\\u001c�n5Mt=)ߖ�\\u001f\\u0005W�i�2ȇٓ��h\\r�޼i$e\\u0005��\\b�<��l�D�s\\u001e\\u0000kY\\r�����L�4�D��\\u0001Xк�}K{*�Rb��b-\\u001b���U��Ty��d`AP����ixs\\u001bzzj+WhFj�9�L�vtu�5$)\\u0002�a�Z�ω8�\\b��k\\u001a\\u000f\\u001b!^7\\u001b17+Q�WR#��.T�\\u000fʌ4-\\u0019?M\\u0004HK��\\u001d,��/�\\u0003Th�Ù%�'R,5�\\u000f�d\\b�ǔ�\\u001dE�!�\\u001a�\\u0014N6K6��a�\\u0000�&���\\u0016=�_l\\tqI��-����,����\\u0001��~\\u0015\\u0007p�3l�n?�u�+xr;t�\\b�!\\u001aX�\\u0011�i7�=�\\u0015<2#� �=mU�ֽ�����\\u0011�+3_@�9\\u0016>T�Dkku\\u0003E\\u0004\\u0010~&�\\u001c�`��?��&*H=C~[|���_�g@\\u0005�\\u0017&9\\u0010x���?��Ycd\\u0018c�+q$ܑ�L;|rI�ܥ|v\\u0011K�Ynl�� �\\u001d5ݯY�X7\\u0014�x1J�Y���\\u0014^\\t\\\\\\\"��\\u0016��\\n#f���]���\\u0011�p�\\u0000l\\u0011}/}\\t��\\u0019�}5�in||e�\\u0006ϿƏ\\u0004\\u0011��\\\\�}ؙm��|�W\\u000b\\u0004�\\u001d�V\\u0004�/]F<� y#�z}\\u0016ב;W)O�rV,H�\\u0002H[�?oZ��bn\\u0011�M��D��ʴJ�}���\\u0013�\\u0017�����U�x�#�\\u0000�6��\\u0013dX_�[\\u0012�^G��ۥ\\r���+�:�)��)rcR�J��R�J\\u0000�c�}�)�\\u001d�,؉��M\\u0019�a���k\\fx�^F�=\\u0005u}�\\u0004�\\u0016�\\u0001#�#�β����G��b�/j��DD+he_Tm�T��{�\\u0013q��\\\\�s�\\u000f*?*\\u0018�V%\\u0001\\u0012�\\\\tj�30QAd�e:���m�j3��;;.>5C����\\u0000��7w\\t����n\\u000b7����\\u000f�J���`ci���Cm��\\u0013�ǻ�\\\\\\\"2\\u0012�C0$�P4޷v��^��gP�,j\\u0015G�\\u000b\\u000f��>�]�s�\\u001a�T挣�\\\\\\\"�\\u0000\\u001d+\\u0013��e��$��ؑ𾕝m��&\\u001c�\\tlYlA\\u001b\\u0010v5�l��#�n\\u001d\\r�u\\u0006��������0<U\\u0000��(�g��q�<�����kkR��T�\\\\\\\"c_�߷0���iTM�\\\\\\\"��j\\u0005�\\n\\u00077\\u0012)�\\u0017q�h��{|�\\u0016#Z����/]\\u0001�M��\\u0000J\\u0001f�\\u000e�\\u0013Af�\\u0016��EĒn�}k\\u0015�\\u0016��5�}\\u0004�8�~�\\u001b�~���\\u001a)%����1\\u0017\\\\\\\"��=�\\u001a,g�\\u0003��R�w\\f\\u0005y\\u000ft�cf�n4�k��\\u0019����u*\\u0007^DmO��JV��`��V�9R�Jآ��#�Cd\\n\\\\\\\"A#\\u0010���C�2�*����\\u0015HB��Q���b��!^�W֧�t5�N�4۱���bH�5���_��+\\r\\u0004ԫ<o\\u001b\\u0014�Y��H\\u0001;��\\u001ci�ۑ �/��\\\\�҄\\u000f�n\\u001e׿���^0���$\\u001a�𦝂|�;�;�\\u0018�bUS@ک\\u0002�z6bf�����\\u0001s�ޝA�4�\\u000b���d\\u0000\\u0012Vs����7\\u0016�u�\\n�\\u0016��myl7�Yg\\u000e\\u001cX�D���\\u001e���V]v�楨�\\u001e}F�ug=��\\u0010��}ە`\\u000e��\\u0014�.2�)��]7r\\u000f��튱{ҞD�\\u0001���9�I;����x�8��޷�!x�\\u0005\\u0004o�\\u001b�mq��N�+�F�|B�L��B��ن���2bG�1�8���^kzK6���Uv�\\t0\\bC�SS\\u000b���\\u0012�%�\\n�z��\\u0003$\\u0012G��̍\\u0014��1����<I�����n,6���x��\\u0017�^V�K��\\r�\\u0000W��bc`E�X{��rF��r+q!��CY���An��#{|(iȑU�\\u0002R������R�g\\t�\\u0015���_�p���Ɉ��*\\u0010n�kj+��\\fX��k�|M\\\\\\\"�or�ވ9\\u000f숗K_QGoS�\\u0015_���v5gke�\\u0003�\\u0011��$��Ab\\u0014\\u0001�h\\re&V|\\u001aŐJ)\\u000bt>�����v9�\\\\\\\"(�nW$oa�2��8�f\\u0002�u>f��Ɖ���k/i9�\\u0012�{�<�\\u000f\\u0013ZG\\u0014�\\u0003�x�M��`�;\\u0012P��*\\n�z��7��q4��<\\u0014�\\u0001aa�8�ZTsM\\u001b\\u0013cc$�iO��\\u0007�\\u001a\\\\\\\"Lt�.\\u0007K�����\\\\\\\"Ƨչ\\u001e\\u001a�y����_�\\t㮍Z�f\\u0000�H�X��F���\\fj\\u001a5 ��]h�c��B���\\u0014�H,\\u0005\\u0013�\\u000e\\nv�`�d6[�.�xёb��u�Z�c���O\\u0010mFb4p�'\\u0017����Ɠj\\u0006��3\\u000b!�hw\\u0007ȍ*�\\u0004|�\\u0013�֌���Ld��\\f�s��iH�W���7��\\u0017��5=m;?�K��_�o6\\u000epȒ\\b�Ș�\\u0010\\\\�\\\\\\\"�\\u000f:o���=�Gsyc�H���T���l-\\u0016;�Y��G_*Œ\\u0018\\u001f3\\u001c\\u000fi�ai}���eb>\\\\\\\"�U�����\\u0000B�;�c�p��Z����� 彾�ۅ���[�0ճ���=�\\b�ݼH\\u001d(.��\\u0000ø \\u001b\\u000eq�^\\u001e��{z\\u000b\\u0002�r\\u0006E>�#�\\u001b��\\\\���{q�!�M�\\u0015�]��I���\\u0007��.9�\\u0000��o�]h\\u0018{�d�!mt\\u0000|���i�\\u001f\\u001c�\\u001c\\u001aNE�R����b㕟\\u001fӧ\\u0012����]W�u�k���\\u001d���)\\n�yI�,�I�O�+A��ܗ+%��.,B� ��[��hl\\ft��H�\\\\\\u001d@�\\\\\\\"�fv\\f)ʱw��\\u0003�\\u001b+�����J믘�9�[[M<\\t0�V~wn�C!�?8��_O\\u0006���~Ih��\\u0004��]Ԗ%��n��7l�4S�Ye�FH�\\u001b)��¹�gt�\\u0013�hDM\\u0013��6�?@>5�:�V������\\u0000�K���Nu�\\u0019E�\\u0012������W�X��FG�e�TFW!G\\u0019��\\u0001V\\u001dN�<�C\\u0012T��\\u0014�Z�\\u0015�\\n\\t�V��m.N����\\bq�^ْ8j}�F��7���k��VIM�T+�\\u001d9_z�?l`c�gJ\\u0003O*�6o�0|<ύu\\t12\\b�X��\\r�\\u0001��X\\u001b��`�$΂B���f\\u001f�Tǉ#YW�D#�\\u0012�\\u0007�\\u001f*�\\u0018p-\\u00197#_��!ȚT��b5�,4�\\u0002��o5\\u001fq4(Wv\\u0004)+�5?P&}���C����$\\u0000����\\t�\\u0000'p�l�I`u\\u0000J�\\u000bkc��\\u000b\\u001d2$>�I���\\u0013�W��5w,.����f��l��^D��.�~c�M�!�Q�QH�RB\\u0019��]�Փ�PdP\\r�q����eƒ�Ԥݖ�R�\\u0018�U\\\\\\\"�����\\n#6���޴|yW�R-�-@\\n��{�K\\u0010u�ưde6`Gƛ\\u0014��\\u0000\\u0011\\u001f��Vz\\u0012�\\u0000�?�տ]#�M�\\\\\\\"�5e���j���0\\n�A~�Ι�2;cE(B1f \\u0001�ޯB�SkT��W���\\u0004&Olɨ��{\\u0013����\\u000b�d�os�C�-�c��?:���o��b��I�#�u�+ڙ� ٤`��k���\\u0016U1JS�:����9��n�m�\\u000f?s��\\u000b\\u0019n1�4\\u001f��sG�� L��#F(\\u000f\\b��]��jH��0��\\u0017�\\u0013���R�u��Ǘږ�5�\\u000b�\\u001d�<v��B{��<\\u000e��M�s��0#�X�ϐ�\\u0014Di�? *l�\\u0004�)��3�������Oa'�:�\\u001a\\u000b��\\u00011�\\u001f�\\u000f�3�DH�hm��5\\u001c��6/��}@�P$�_��\\n����Θ\\r\\u0001k���ڿ\\t�\\u0006\\u0016���\\\\�}���.�*��Uu&�\\u0000� ޣ�=�\\u0006$鶾4D+�\\u0001���伡\\u0000I\\n���ҵK\\u001a\\u001c��|8�[,N\\b��\\u0016��sV�e�?M��I:� ^���'�u�.v8�\\u001eb��\\u001f\\u001b�jVX/���nq\\u0006��9)\\u001f�5<��kx�^�d�$�\\tM�\\u0000Cx�����\\f\\\\c��V&&\\u0016{1�\\\\io ՖGm�\\u0016c\\u000b�[��=j �n\\nN��^�*D�\\u0014\\u0003�{a{��h�`Vr\\u0019��,w�0\\f�����hl��d\\r2��� �T�\\u0019\\u0016K+\\u000b�ӑ\\u0010\\u000b4\\u0018��f\\u0007�;Q�Q\\u0006�X�d\\u000b���֧\\u000e\\u001b��x�Sj+\\u001e\\u0000�\\u0003�n�-΁� r�ˮ��$*�Ɵ͎�6��\\u001aG\\\\\\\"��\\u000e�j)lR1��s��4�xީ��6�\\u0000�Vy0�\\u0010�������f�(Ĝ=��4�\\u000b\\u0002?�74�C�۶��ǃ>Gt\\u0006\\u00056\\u0017\\u0000��\\u0007�P\\u000f\\u0012h�գ��D%{V\\u0013�6T��\\\\��^?M�\\u0000�*w��^מ2V6�9Bї#�H��x�F�m�mK�033%|���1��<��G\\u0017\\u0003���\\u001bqQId\\r��\\u0015Q\\u001fh���A�7�mw��P��|�G\\u0012*�#HX�bě���S�ƶ殽\\u0019M�xI;�$)<�^���U\\u0004��\\n�|\\u001c�t�%_E�J�V�R\\u0011�<J�\\u0019�����G��\\\\\\\"~�\\u001bd�c1\\u001a�Q���1�\\\\\\\"���@�Xk�K_�`\\u001c�\\r'�%�Ϸ���2�W�Ә���BtE\\u0004��)�\\fNڪ3H��6�\\u0019\\u0007S���E\\u001eT�)����gr��\\u0004�b�l����\\bp��\\u000f@���ԛHi2�\\tf��3\\u001a�\\r�u�P\\r�<\\u0014P�+C �\\u0018����������x���\\u0003�$�z���ӄ�7h'\\u0013+��ޕ\\f�[m-���\\\\\\\"�H�|i$��\\u001d�\\u0006�n-겍�]\\u0004^����[��9�\\u0016�\\u001d�5\\u0018�Ia�\\u0000\\u0015[��\\u0014F/h�\\u001b��9J��T�u\\u0015�v^PG\\u0010�\\u0000̕G�O��\\b\\u0003��=K�_\\u000f��>ד<�\\u000b��\\u001e�\\u0006��w�֝�H�d2{�I$\\u0001k\\u001bt��\\u000f^�\\u00005�s�X-��\\u0006�X�\\n!Ai@�\\u001f\\u001a\\\\��A�1�S�Ю�z�Q$H#Ae\\u0015��Zɹ5J\\u000b\\\\\\\"^��\\f#W\\b�P\\b��x�\\u00122��i`I��\\u0015�*A��U���Ć_��[�K#\\tiBĤ�ɴ�jU�q^kN�K����|~T�D�(\\u0000�\\u0000n-]ܒT�\\u0000��\\fi�=v�^\\u0010D�5t=��q�\\u0000�f�Z�ۋ�oռ�+���Ё�\\n�!��\\u0007U&ܾT�\\u001e�\\u0000\\u001bP�\\u0002�˝��ö�\\u0014�<���֬��aрކ����\\f���)�\\r��Έ�̚~�&*��6<C��j��I��\\u00188�I���Qp�\\fZ�ζ`>�Ԥ6Û\\u001cHǐ\\f\\u001fpu\\u0016�20�?\\u0012�\\u0002��-�M(�l�$\\\\\\\"'>܇`���k��\\n�F�ia���b�\\u0017͔\\u001d\\u0015\\u0014X����(\\r�V\\u0002�M��J�Z��\\u0006��\\u00142����A�O�z��\\u0019����ab샠\\u001e�Z\\fS&4���l\\u0015P��6��c��v\\u0010��B�֊\\u0001�́��|R��\\u0016s+11\\u0002J�R�]��ͦ���ctc\\u001e\\u0013c\\u0012�\\b�b�9�X���;��.d�ۏ=M���T��\\u0011O3�Y��#B}�Q��-/�\\u00192�h\\\\/�#Qz���\\fl�pd\\u001f�\\u0001N�\\b?\\u000b^��ڬ����B��\\u000b1�\\u0000\\u0017�qX����J�\\u0006�\\r�\\u001e:SHW6t8�ŌnAt\\u0006����\\nM:z�gb���z��\\u0007U����E����HƟi������\\u0000'4�,\\u00064T�{��ZO�\\u0017���Ƿs��\\u0000x��\\u001fMt8\\u001dϷ��<V\\nֿ�n'쩫m��uw�u���\\u001dw��\\u0000�����9s\\u0011Y�XYC\\u0011�֪dv�~�>b1yK��]\\u0011T\\u001fƍˊ�R�\\u0001\\n手%N(��F�[\\u000by�\\u001a��v]7\\u001e'C��\\u0015g\\u000b{\\u0013].<q�+!\\u001e�r-kҌ�� ʐFG\\u001b�_C�ȱ�kq\\u0000\\u0011]\\u0015;�\\r����3�z��d�\\\\M��x���7t�%�:�PG\\u0012\\u0014^�Ίǁ2\\u0007)�V�\\u0000�\\u0014io�J\\u001d���p\\u001dڲc\\u0018�� 0\\u001a���cH�'mv�ur�\\u0000K���B*�V�m���}�\\u001e`�\\u0001\\\\\\\"Ap-�Mo+�!��\\u000e\\u0014���De`H:�M'˄a8\\u000e\\b�$\\u0013��O��B����CfS�l�;��Ɨ\\u0002��z�\\u001a�\\u001a!$�ce�@��8;)����Z��H��ю�|b�Idoh��\\u0001��Z�!H�_íxcf�\\u00156qn@���d��x\\u0017pd���cƈLp�Y�{i}�i���z�\\u0016�_\\u001c\\u001fK���x�IP-�OmK\\u001d4��_ʓd�*��~�|��w�G\\n�7R�\\u001fa���,e�qZS�\\\\\\\"�\\u0018�\\u000ex\\u0017\\u0005qreS#\\u0006���Ҹ�c�i\\u00163{��x�R��h�T��ϭȾ�\\u0005\\u001f\\u000b���J�\\u001a�T�[�L��\\u001d�ag�N�D\\u0002�\\u0018�I�ީ�c����{F9��\\u001a��BG\\u001f�}�&_6*��%���\\u0000\\n�hdc�ۂ#\\u0001?����G忕��\\u001b����$G8�\\u0015�����\\\\\\n���q��X/��@�M?ӡ�FK�\\u0000��\\u000fƇ,�m�\\u0000}����4L\\\\�L�JF���hΎ�O�N���v�l���(L�\\u001e�[�����s�NӲ)�+\\u000f�\\\\�����>#�\\u001aSnᕕ?���I�}��3�\\u0014[���ܩCl\\u001c$�\\u0002���\\u0001�;iP�7��;c�v\\u0017S~,?\\n-1Vh}�^�\\u000e��|p\\tJ�\\\\X\\u0006FBDO\\u0010׹\\u001e\\u0000^����\\u0014/ ��E,\\u0001\\u0003�\\u0007�\\u001a\\u0019��@/���&\\\\��2F����\\u0010z��ߒ�UU��Qu\\u0013��\\u0004Q��o��j�$\\u0010��q�id��m\\u0018f7��@\\u0016Q��\\u0000Q�}�4�%cg���&Dq�Łw���G#\\u0018�V�j�-��6�%F\\u0006*J�\\u0017U\\u00062\\u0000#k\\u0011�ke�L�c�H�z�7�/�3�5dc���\\u0015�?��;�\\u0003��ʹm/������rv�e>��:\\u0003.\\u0005��\\u000f��\\u001e\\u0016��\\\\�}Ƈ�\\u0001vK�(\\u001cƍ�2\\u001d\\r�=)VgQ4a\\u001c�\\u001b\\u0006_��):��{.��R�#\\u0015��\\\\\\\"��^�UYH�\\u0019$�\\u0003�Y�>TE&��\\u0014\\u0005I\\u0006��7ky�0ek�G_��_'n��&\\u0002P>�m���Vm9.P;�>⒆ā��ml�\\u0005��\\u001a+\\u0013���\\u0003<{\\u001c���}�~�s����$�.\\u0017��[�So�2��\\\\a��4~\\u0002�'�\\u0013B��۱�L�\\u0014aR0\\n��\\u0004jMo���LU���X����iot�9���.�bu����_����ۑ,�5�\\t�I���\\u000eշUe9ɝ�RC��\\n����q\\u0018\\u0016ٸ���h׌:��]6��\\u0013�c��\\t��^��ښd6JD[\\u001e5�K��\\u0012==m��J�8�[@� �\\u000f\\u0017�k\\u001doto\\rG\\u001a�\\u001e\\u0010\\\\\\\"���n,I7\\u00174\\u0019&TQ\\u00012< .D��nA<x���{ۥ[\\u0011�#��d\\u000eJ2�齇�Z��U����Dr��$��ԇ�١�Eb�\\\\�'��F���6P�_`���\\u001aI�e�{d\\u0017<_ޒG\\u0003��\\u000f���[\\u0007�0������c �\\u0017R4\\u0016�\\u000e��6��ܙ�\\u00167�SY2\\u0007��\\u0001��\\\\�E\\u0016\\r\\u001b%\\u0013��2p��MЛ�m��\\u001a\\u001a�P���w�sϷ���\\u000eEwR\\u0007�Q2��r{ \\u001e\\\\y�$q#�\\u001eu���>3��9�ȷ!�~4Rwl�D�1�X�{\\u0002/�\\u0000uq�\\u001eLBeT�5�e�\\u001d��\\r\\t�\\u001b&�eP�\\\\\\\"��\\u001b���Ć\\u0001��Z0�I\\\\\\\"���7���8ӧ�\\u0003{����ۦ����e$q��!\\\\\\\"ɭ�\\u0005U�n+�\\u0018�\\fP�D\\u000e\\n����7��Y��(�$L.\\u000f�ڰ�$:�\\u0003qbM\\u0003`y\\u000fa��5�\\u00013q:\\n%�XY�ǝW�P��q?u\\u000ev\\u0012��\\n�\\u0000\\u000b�Ѱbɓ�t���\\u001f\\u001a�\\u0019\\u0016F\\u0006V)\\u001d�$oz{\\u0007�\\u0002���7\\u001e\\u001a�\\u0016�i\\u0019��Z\\u0000��\\f�z\\u001fSo\\u001fO��\\u0005�@\\u001f���}L͹+}�R~�\\u0002\\u0012��!ې�h<y�X�\\u0011ɷ&�\\u0017�A(vG\\u0018ԓ���߯�.����1����0=6��]��1ѿ���=\\t;RRf\\u0012\\u00109?��\\u0000\\nt�S-�\\u001d�6H�\\u001ax�������\\u001a\\u0013+�\\u001f\\n\\u001e.k\\u001a�:���I;�Z֐�i\\u001ev̯{\\u001cD��\\u001e��zS\\u0000#7\\u0000�?\\n墚H\\\\I\\u0013qa֋NPW�\\\\\\\"߅T\\b~�,�\\u001f\\u001a�\\u0011�P���\\u0000�)Rw�kI\\u0011\\u001ejo�֣��\\b<\\u001fç� \\u001e�#^�\\u0000\\u001bZ��j<�\\u0001gB|��\\u0000ҁ��L�\\u001b�LN����E\\t\\u000f\\u001b\\u000b\\\\��\\u0014��ND�P��z�6s\\f\\u000ez���4[���\\u0006�\\u0014����E�l���4�3�w\\u0001\\u001e\\nb\\u0001w,ğ���L�\\t�ۈ�)\\u0016\\f2;rND�mo�|h�����6�{Vm��5vU�\\u0016�lc\\u001a���=�N��P���Z\\\\�\\u00141�\\u0011��N��[\\u001a7\\u000ei��.6=��e��\\u001f\\u001dk9����ʋ��\\u0007��ӌ�������]W�����h�J'\\nf:���46Ge��03\\u0007\\u0003EmA���٥⒤�Z�_�\\u0012�>����\\u0000��f�N~ΟǇ\\f��Q٘�\\u000bH�v>�_��.?���E&�\\u0000K\\u000b�ZrQ&*��3�G6\\bqh�\\u0012v>4�T̍�0 �ũr@�́ �hkdɑ<\\u000fƳ�\\f�Q�l�k�z��9\\u001e\\u0003�\\u0015J�\\u0018�\\u001f�\\\\��]�z\\u0018iq�\\r\\u000e\\t������ф\\u0010H:\\u0011�\\u0015�9&\\u0011��n\\u001cH��\\f\\\\\\\"-�4����*R���x�\\u0015L\\u00132q�)�-�Ʒ�!&�a�@d���\\u0003���/\\u001eM�u`\\t�(�����Ǭ��I��zn��t赲�\\u0015\\u001dM�^��3�Ę�=-���+�G#F��q�J\\u0014�\\r\\u000e^F\\u0013DfPc�'>��zC|ȬDqH\\u0004�t \\u0011z��s1�\\u0002#G\\u0003���\\u0000(�-e\\u0000kajM�\\u001aG��\\u001b�u��A]\\r�Ҩ�p� \\u0011rA��t�icB\\u0001gp�ڛ��d��ֈwRg\\u0004c�!R�r�����\\u0003���A\\u0004}��(_�|�豋�mT��\\u0011bb3��S̀\\u0001\\\\\\\"�|i.fI9�\\u0002\\u0013\\u001cQ\\u001b1���9�R��^�b�\\u000b���d��w�݁\\u0017�J�´hBf�w��!U&��GB't�<�5>\\u0003Ě\\u0003\\u0019Y�^����\\b\\u0016\\u001a�hay0��D۩<:RIx\\u0016I\\u001as\\r�\\u001e�r|~\\u0015XǸ�GSj�9q�<L�$���\\u001e\\u0016\\u0016�A^E\\u0011�~\\u001b���M����Y��\\u0006�0��׊�m�)�f&~J��=&��\\u0000:_��B\\u0006y=,�\\u000b�Q�\\u0013\\u0007u\\u0016�7\\u0016�\\u0015��^\\u0012�Z���R��\\u000e���Н�\\\\\\\"8���)\\bğ;V�Z2\\u001e䵬��\\u0011\\\\�}���\\u0000���%7��1\\u001d\\u0007���Z\\\\t\\u0005˓��\\u0000�\\u0013S?���9��\\u0000ٷ�)e0���ê7𪶌��:����],M����J�\\u001b\\u000b�&�;��.\\u0019qI�ib�ƓS�\\u0000�`�\\u0010��\\u000eT�\\u0000�\\u001f�H+Z���+����q\\u000b\\u001f�C�\\n竧��Ƿ��k��Mc�N:�ٗk��w,�6K\\u0002}(x��P.n\\r\\u0015�\\u0019L�A��\\u001f\\u0003�\\u0006�ª�*�4�J�\\u0015\\u001e\\n�0\\u0003]\\b���k��aTm��+D�\\u0003�٘�\\u00016���S���D��!�\\u0018upʨ�n\\u000e��\\u0014\\u0016*�/�Rw#z#\\u0015�����1��E7��c��\\bk��p�vo���!�=đX��mn���.ɋ�\\u001cs�I�'<\\u000b���7�t5�~�N<\\u0013�h�.|\\b�-�W6�\\u0003\\u000f�O>A�d0X�\\u000b\\u001fF���@q��ϋ��1\\r���f\\u001e5��>׏��\\u0004����T����ۧ�����9r�\\u0010\\u0005�\\u001dM����c�<T��[]-szVcZH��F\\u000b$�x��7�QJ��\\u0018��Q@�i\\u0019�\\u0006�\\u0000oC�~ܝ�)�\\u0011�i\\u0018կ�NV�\\u0013�Z�_�\\u0002T_�o�f1���Ft�O0y\\u0010\\u0007�/AN�\\\\,h\\u0006\\u000eZYI� \\u001e�^?�H��CÐ�D?O\\u0001#�\\u001b�k\\u001f�ۑM�\\t�'4�{�I�Im\\u0017k��7pp\\u0014�Sk�\\t7����{��%կ\\u001b\\\\�/��ә��T�\\u001f���k\\u001bu�I�D9�\\u000b��CN��匍�b��\\u0013I�݀V7\\u000b��i.fL�\\t_�\\u001bh?�cZ�\\\\\\\"J\\u000bF@:�L��8qa�q����\\u0005 ^�\\u001dt4�Ž#s����\\u0017�\\u0010~�(�?�M9x����h?T+�ɛ?,dL��\\u0001\\u0017O�6��a.V@_d�*�\\u000b\\u000b��o������>@\\u0003�Ё�0�A��\\tYA`A����]�+Cy�I��\\u0012\\u0011��\\u00184F��2��u���k\\u000f���\\u0016\\u0015\\u0012��������w��� �ՕTE$��;ժT�-�)j��\\u0000���<�t�,\\u000f�SVNMkP��>8RK�G��(�1')Tx��(�\\u001d��\\u0013\\u00163�\\u0002�_\\u0005�P��\\\\\\\"|\\\\\\u0007x�7/C1������I$�\\u001e2�5�\\u001a\\u000e��\\\\�\\u0000u�1d�dE�\\n��\\u0010Ei�vmh$�{29\\u0006ĭ��[\\\\\\\"󝝵�nƖ��>Lhn\\u00145�\\u0005��b:8�\\\\\\\"%7+��5Q��җ���1�s�?�e�\\u0000\\u0017\\u0016�)�\\\\\\\"�f�҉��\\u0018�'Q��K�R�z\\u001bPA�z�\\u0012\\u0019�iJ�\\u001d*�\\u000fh��d\\u001a�\\u0006�\\u0012\\tO\\u0014��k\\u001e�iI/viT���\\u0019K*��#\\u001b\\u0004\\u0017?*�A2J\\t��_��}�FH��~�\\t��\\u0000waK{R��®\\u0003-·m\\u00015�MaKՑ����r��풪]tVS���Q=�\\u0000\\u001aI!\\\\�{�����1���\\\\\\\"Ȇ2\\u0012Cśo\\u000bVߨBJ�6щ\\u0016'¶�M7��o\\u001b���N��\\u0000Լ3�ͼ��q�Tu�ɝiN/lʞ!=�8��F:�ll�s]~d\\u0010��28+\\u0000AKYM�R^�\\u0013�eĔ��9^krLr��#k0��'^\\\\\\u001b�qO�E���bP�w�E��\\u001c���y>��\\u0006I:�6#�B�olFO �M8��$8�&%�0\\n�܋t�ZMR�T���7��/\\u0014�C*�\\u0019������{�9h�}\\u0012G��\\u0011�\\\\��\\nq۱Z(��8�}\\\\��\\u0007����\\u0015\\u0018˝�G�\\u0014.��R$\\u0017bw��*�����ꌏM���A`�a�;d\\t9\\u0004\\u0005aD\\u0006F7���\\u000e����l��Jc�obr���R\\u0018\\u000b�A���\\u001a��AY\\u0011������2��8W\\u001eF�6_o\\u000e\\u0007��#9URے�-^|ѐ�<lg�\\u001dd2'�\\u0014�\\u001a��g�<���A���\\t\\u0007�jU��Z �`S�\\u0004p@9\\u0004\\u000b\\u0018P��\\u0002�j&\\u0018�B��]����S�\\u0011[ƪ\\u0006��jԃ\\b��J��\\u0002�����Z��*{�/\\\\\\\"\\u000b\\u001b�\\u0000\\u001bx�.kV6Sm-\\\\�GqɒvVɺ�x\\b�*�};�\\u0001#X��ȇ���lO�·��a�\\\\\\\"�\\\\����\\nΠ)\\u0016\\u0016�J\\u001b?�c`�w>��=1)����P\\u0003\\u001c��|h�L�#�ks��\\u0000�k�\\u0019�r3&�RTJ��\\u0011��$^����ϗ��k��A���QCP�z��ou��\\u00117QX�\\u0010�oc�֕)B�r» �Ƙ͏��6*� �(;��\\u001b/�Q���X�3-���}�1!\\r���[��\\u0017�\\\\\\\"�<�8\\u0019�\\t\\b�F:�n��$�$�5E�x����2\\u0017݌[OX\\u001d\\u000fKPS8l�b�\\u0017^C�Em\\u001fk�Ü�3���#\\u001dhHÞࡵq ���5U�%���\\u0004SI\\u000e2��?)?О����dȟ\\u001b\\u0011�h��ۢ�󡱛\\\\\\\">s��0���f��\\u0015�qȓ���do��W��\\u0004ܢ�A�\\u001a��l�Im+&�<+��V�\\u0000a7|�\\u0019��\\\\\\\"7\\u0011�\\nF���\\u0013@��6Ar�\\b\\u000e^���\\u000f:�lU�NL-��N����䝲\\u000b[G��\\u001fʿƹmf�UW�e$��A��eO�3M;��ucsa���P{\\u0010\\u0000~��?��P0@\\u001f&5��u?\\u0005��c[�$�\\u001dOi���\\u001c�KK(\\u000e�\\u0016:�\\u0005\\r��!rf�8���E�ܷ{|,\\u0005o&{A�\\u001cp��4j\\u0001��Tz�vB��\\\\\\\"�J���Y�ZC\\u0018�-\\n86d\\u0000��ѐ���q5�m�\\\\�n\\u0007�P\\u0002�k�ꌏ�!��k�X���S#\\u001aFx�]����بa� �H\\u001c%�U�u�)�<�Tq�\\u0000\\u001a]�;�<��\\u0012\\u001er,����l\\b�>:��v�q�$�󰝟�\\b\\u001a�J��ȟe?\\u001d�ys��K-�f���g<���\\u001e\\u0003j�y�MKm�\\u001a���\\u0011���\\u0000m��©���e���5&A��.BI\\u0018\\nu\\u0007m��p�b�U#C�I��Em�n0�\\u0005�)c\\u001aȧV�ȚP��Ř�'�ִi��1^���\\nʤ�nIR�J\\u0004J=�LȞ�p�\\u000b�[��mz�\\n%�oX�(�\\u001e4�Ll���\\u0016A�\\u001bCasI�\\u0004E<o\\u0019&6:���h�U\\u0000�_�kDC�\\u0006\\u000e7�\\u001b�=O$�V$VQdb��8O�\\u0010z����4�z�0㿍s���Y.���ߍ;��bܐM�P7��\\u0012�󴖲�\\u001a\\u001f\\n\\u0012\\u001c��&?�#���2�\\u0017�\\u0015Wж?S�r~\\u0016��\\u0015���s�@c����\\u0011B�\\u0004\\u0007��\\\\���\\u001c~�$�\\u0010qf(J�|4ֈ��\\u0015VA!wP\\u0001��F��~u\\f\\u0010۹�c�\\u0013M��<L�a\\u0019\\u001e�ȷ\\u0012�<\\u001f��i�����w����\\u001f���@ʱ�\\u0016�t���\\u000bP�}�3$\\u0018�\\u000fb�����[�\\t5�w\\u0002�N�&�Bd���nyE\\u0018@�\\u0014\\u001f�ݩt�ѹS��S\\\\\\\"�\\u0016���\\u0000�\\u001f\\u000f�T��{Vd8L�:�*<\\u0007_�����\\u0014��\\u0002D��f�9\\u001e\\u000b�Rp�\\u0014��kZ���\\u0000-���\\rI�TZe�h\\t9h϶5K�x��\\b��o��[�b�\\u0018��?Q����$mC'�\\u001a����\\u0018�*�R�-Z��Co�k\\u000f�B\\\\�ה.��\\\\�\\u0012�\\u00001\\u0000�yו�H\\u0007jЇ�\\u001dvw��\\u0011@\\u0005mn��ƚ���V����4X�\\u0000\\u0002I��ژ\\u0004��\\u000e�\\u0001����9�[\\u0005ȴ�ؑ\\r��0?�t\\u0011ۈ\\u0015�w)\\u001e,��]�q��L{Gv\\\\֖\\u001bqt\\u0000����O��z����n�5a}O_-?�'�؋!�ɿ�)\\u0002����al�\\r@\\u0014��\\u0006Dx�˨�dVX��nhz2��\\n:։��'�\\u0000�ki\\u0010�\\u0000��+L\\u001e�\\u001c�?���������\\u0016i(a���<��\\r�;k�\\r/[`�� �8vm��\\u000bt�j�eb�\\u0003�F\\u0003��\\u001fmi6v,\\t�I\\u0000\\u001d\\u0000ԟ�\\u0014-\\u0006W.\\u0005�\\u0018_ҏ�\\u0015��|h�ӌI\\n\\u0011�Tq�����r~�#�\\fQ�\\u0018��Q�6�\\u001d�-3bY��\\u001e�S��6��Tx4�\\u0011���Ϫ�X���п�QM��@�8׋\\u001b\\u0010|\\r\\u0011��Ln�0'��Q\\u0007��J�)�\\\\\\\"v���\\u000f�<�Q3�r]���ğ\\u001ao�{>&\\u0014\\\\����-$�����\\u0013��5b�O��\\u0015�\\u0010O�rT�L�\\u001c�����B�?:O�I�G��\\u000f\\u0018�L���\\u001fsb-փ\\f�df'�u��Ҭ��q�F��K\\u0019!�hk\\u0004�h��J\\\\���}>-Y��\\n�.1 yC�}>����6Kcʼ,\\u000b)[�\\\\���\\u001cOaȷ%\\\\\\\"���P�H�9fߧ���[��,�\\r0q=��0\\u0005oa{�OSZ�I}��/�ˈҲ���E\\n�+\\u0006]�\\u0005�\\u001a�'&\\u001c�h�\\u0010�V'J-˒{ Q\\u0010b�)�@1����׈\\u0012_���,�\\u001eG�x���N�ԏ�\\u0007�^\\u0007��1F�\\u0003Mt$y\\u000e�LСOt^<��Q�\\u001a�~_��v�\\u0011;\\u0018����\\u001e�i}���b�i���VS�\\\\\\\"��wB�B�g$܋\\u0010\\tڛ�\\\\�ƒC\\u0010�H�T��o�\\u0015y�]+k4����w>�\\u0006\\u001c|\\u0019D�8�����\\u0002�콣 e�e\\u0001\\u00117)\\n�}^#��1a�9?R���b\\bwRֿQMb��\\tQ�,��W\\u0000i֞�^�\\u001d�����}v��|�g���?�Y�{̢�F���QDbc�T!��3rGJ��\\u00141�e��4t\\u0000\\u001f1T�11�R\\b\\u0019V�\\u00035�.]h}=vn֪����B\\u0014�Lv�e\\r��O������Fኩ\\u0004�3@SUUP�A3�\\u00100e+�h</�[�f�r�n@�ʏ\\u0010-�\\u0011�\\u0000!\\u0003D\\u0010��m���\\n\\t]b�\\u0013C�ێ,6\\u0002�Ec\\u0016��G�i�c��\\\\\\\"�1�+ߩ\\u0014<ݣ\\u0016C�>Q��\\n��\\u0015�4�Pt�0��BX}DiV�x�1\\u000eV\\u0019�Y\\u0018?5����ku����wGT��}Riǭ�i-ZP���v]���v��\\u001d\\u001bz�\\b\\u0006��\\u0004,��sp6�0�p\\u001aFԱ�4\\u0002�$\\u0011Қa�%��/}�gt�.�c���V�k\\u001a�B\\u0015\\u0014\\u0003p\\u0006���q�n�])>qi�\\fF�~c�_�Y֭���E;�XȐ$f�����d\\\\\\u0011�J�Д(F-Ȳ<�*x�\\r����m�2�GO\\u001a��\\u0013\\u001b�)>$\\n�\\u0000l-D\\fe�\\u0011x�H\\f�����\\u0003�D���|�\\u0012β����T\\u0005\\u0001>&�S��\\u00140`��\\u0007d\\u0005��[�^��yE#i�N��j�C���\\u0013�\\\\\\\"\\u001d������!\\b\\u0016�\\u0001:|)��2��O>%v'��/�v3J\\u0004���$��\\u0013���\\r*�������\\u0000��K1��3j-�٨➖��S\\u001a��\\u001f'\\u000eE��%uɹkt!l\\u000f�z_ܧY{�1O�xZ)�\\u0011C+S��\\u0004�\\u0016np�\\u0001�ޥ���V�ݖa�U~\\u0017��J���g�\\u0015\\u0006\\u001bMnw��Z͊Э�\\u0000>�GJ?\\u0018\\\\\\\"(�Q^w\\b�f�$�˨+�jܼ-Y��b�_��9ٻ��(Q�0�!�4���r܃\\u001f\\u001b�}��l�E\\u001067��+�oSi�e\\u001f�i�\\u0006&9V̓�\\u001d\\u001bA�U��cRx�\\u0000A6 �@[t'c��h֌�\\fcv�\\u001a��b��O���6\\u0015C�ǉ��\\u001b���M��\\t��\\u0017w,h��8�Nl?ܰ�\\t��Å\\u0019����6��\\u0007o��)<������\\fE�P��\\u001aQh�P2���+\\u0002���Ҥ�\\u0006\\t-��6���P��ѷ!�Mk��#zF��\\\\d�A0�)���$0\\u001cXt\\\\\\\"����\\u0019��\\t�\\u001e\\u0015gGV\\bc���^��d�\\\\\\\"߭*=��2�2�Fm�\\rj�+BK�wy�2\\u0015�X�*uҜM��e�xr\\u0001�Kt\\u0004�K\\u000f\\u0001R�\\u0011�ӧw�\\u00022�r����>�k\\u001f�\\u0000\\u0013��[�Oo\\t%�d����Ms��m}�5�\\u0012�J\\u001a\\u0000��԰��5�\\u001cw\\\\�ݛ\\n�v\\\\\\\"D7\\u0002�\\u001b�(��,O��O�x�\\u0011}>�Y�ȳ!v�$IlO�X^��I\\\\\\\"`�F\\u001dA�U-\\u0012+#��.%`��������K�:p�޸aܳ����w�\\u000e�\\rħ�_�O��L����\\u0013Dr�PWW+��0��}$�\\u0011�V\\u0019�X�R\\u0007��Ǝ�܇�_�Ey�\\u00009�.IC��h��\\u001f?C��9��3�`���@��\\u001f�{�N*: \\f�\\u0016\\r�Z/�\\u001c�Շ�_pW��A$���\\u000eg[R�^<K]Wՠ̜�r�i�7f��\\u0001�\\u0015�J�\\b�FX^�\\u0014�\\u0007�bdD��4�0\\u0006��Pp h�ͅ���h��n�accj\\u0001�g��B\\u0002@��u\\u0017\\f��\\bp&��/�Z$�nGRh�#\\u001d|��R-li�ۍ�\\u0016�1��.c��;��\\u0003��ȥ�Q\\u0010�\\u0002ΧP5\\u001d>\\u0014\\f\\u0004��\\u0019y<�'갡�0�\\u0010\\u0019Iu��\\r��\\u0016�F`�Cin��0�\\u0004\\rA��i�N`�\\u000bלǅ\\u0010�\\u0007��chԟ��1�v��\\u0002�~n\\u0017��R���ەcP������4�\\u0011��:\\u000e�\\u001ad�]��6i.�n��Ø�6�f�\\u0006i\\u000f���z�'��u��е���l�췿�x��*�6�ִ䉃*�*S\\u0011*T���\\u0013M2D��\\u0005\\u001f:\\u0000�\\u001c\\t�J�B��u��T�\\u001a\\\\{s�\\r�\\u001bWN���G�N*,\\u0007��P���L�Y\\u0016׽�G��.s��\\u000f\\u001a��J�!^����\\u0010\\u0018��\\u001f.�j�jj�\\u0013��\\u000f\\u0000��\\u0019��`��\\u0007�mG�U�2�B�'�ņ�F��TW\\u0003[�*iȚ���ҕ�a]?�il�\\u0019di\\u001bw7�`�I�\\u0012,��-�g<>���\\u0017�9B\\u0018a�/c\\r`\\u000b���nu��q�q����a��_3J�k�L\\u0005���N���*����{��{�VD��V+!�\\u0005��O����l\\\\\\fH\\f� �'��<��W7\\u0016D�Ȳ�l�n)�r�\\u00190�d�X�\\u001cb�����Ul-�Eh��h��\\r�\\u0013\\u0004Ĭ����\\t�.l�*�n�\\\\\\\"�\\u0004����\\t��+��\\\\\\\"�B�\\u0010�\\\\\\\"[�/��׽�(�����}�UN��&\\u001d��컽��Џ*�\\u00124�5��\\u001c\\u0018�2\\u000b2�*z�\\u001dͭ}+e��o��O\\u0011+\\u000e�H{-�U\\u0016n�\\u001b\\u0001�U��X�u�[��(\\bf�c>�ʨ,�nm�֘C x�E�F7\\u0017��}$��x��I��eI�d?\\u0018J3�5k�ǈ�ѹ\\u0019�˕&<\\u0017� U\\u0005�V?Ua\\u0012I\\u0002p��E���q��^��q̌W�\\u000fe#�\\u0017�֩����\\u0013kM�2�|Y�d�h��,WS��\\u0002EB�Ϥ�\\b��4vP����ɏً���k\\u0011\\n\\u001f/�#���\\t��Ʌ�9\\u0010#\\u0010�ζ��y�8v�\\\\��(\\u000f��nジf;\\u0012K�����,Yy9}�hZy\\u001ax�dR�ĕ\\u0017V\\u001b���9�q\\u001a�+HP\\u0011��O@Un^��{D<1��5���h+\\f�2dH�oI\\b�����x��\\u001a$�@/�m/\\u0004d{�\\u0013żir��d��t�����\\u0006m\\u0018�:�77�Tr=_��\\u0011�\\u0002\\u000b�:\\u001f���͆��9\\u001a6�1�L!�d\\u001c��*`$ �\\t�������^\\u00128�P�\\u0013\\u0004\\u001a}GaM\\b�;!J�+�6-�]T�|GK\\u0000�?�p�nw5���!��U��A�E����uU�L\\u00028��V��5+��\\u0019y�\\u0002c��\\u000fSs7�X\\u0016<O\\u0013��;�����u�\\u000b�bF���p�&4���c\\u0004��bIs��|��\\u0012@��2c���ix�4?I��\\u0007⻥�k��6���\\u0014�<�\\u001c�\\u001a�\\u0007.��މ2��Ya$<e�ȱk\\u001a$\\u000bM�\\u000f�\\u001e2Tn\\u0014t�d\\t�\\u001c��CsX\\\\�N�j�ȷg6P+;�\\u000e\\u0006?�ϝ�`��\\t��q�FC���\\u0000�\\bC�\\u001f��(�ա>��PN��N�r\\t\\u001e��;ްv�y���j�k_�\\u001c�ܱ\\u0006\\u000b*\\u001fT��{n��V���9s\\u0006���ȧ��\\u000f[(�(�J0Jc�E���\\u0000C\\n]Gvi\\u0016>�\\u0019m9\\u0006Q�#J\\u001e�kS�b\\u0001��Ք�tڇ�AkV�ߍ�u��\\u000b1��I�h�^H��\\u00001\\\\�v\\f�R�mQ���G��K|hL�dʈ�(��A\\u001b��*��MI��|\\u001c�DP�m\\u0013N?>��/\\u0012\\\\I�R\\u000f5n�<E7���#\\u0010yY�Y5Uӈ����\\u001ce���V�\\u0001�8�e�}�z�\\u0000\\n�\\u0011���w�\\u0014�7#�%\\\\\\\"[\\u0017mXyR\\f�L�O!ӕ�>U��o��\\b�VK?n��*T��A�lh�$y\\u0005�E�ʙ��ɏ�\\u0005 ��\\u001f\\u000b�\\b�\\u0011�\\u000e�ze��\\u001a6�\\u0001�\\\\\\\"�m�YP&u���S(\\\\�\\u0003����\\u0015�?�=��<�\\u001c7\\u0010F8�\\u0018�+����g�^PVP\\n�,\\u0005�a\\\\\\\\��\\u0017%�\\u0016�\\u0013f\\u001dE*����=�]�����\\u0000�b?��Vo?*�W(=�\\u0016\\u000b鷅���ț\\u001c�R.ۃ�Fɝ�]ϫp4\\u0014��t��9\\u000fvDC�$r\\u0016��6\\u0016�2��$2�E\\u0003K1�'��\\\\^6D�Ӥћ2\\u001d�GQ󦧸�G�!r\\u0017r@����d��-V��w��{O\\u001cl\\b�d���{�A\\u001b8��\\\\\\\"��jm��E͟t`�U�G\\\\\\\"@�&90\\u000bݾv4�d�\\u001dj֥�\\u0015mm����j�\\u0010E�ƽ�(�*T�\\b\\r��J�&I�$.�C��i�\\u001d�:hă���\\u0006m~v\\u0006��\\u0005��$+#\\u0010\\u00118�S��BC7\\u0007h$<�uI?�y�?3���X�Q��oo��\\u000b\\u001e7�2�')NԝSM=v\\u0015�((�X���\\u001c�\\u0011��!!��J\\u0015�\\u0002FT�\\u0000�Z+XP83���rw�j؋\\u001bP��fɎ!��\\u0017�6��غnw=�\\u0003\\u001fn�R,J�?\\u0016ּl�1f������j�Ǹ\\f`1`�N\\u0014\\u0002z �>t�i}�dbI'S�&�Љ\\f�ɛ*gfb\\u0017kx\\u000f\\n[�)O�n\\\\o�D��\\u0006gr�\\u0006\\u0016��Z�[(&�l�,E��\\u0016\\u0014����\\\\�\\u0002w:�S~\\u000e\\n�,bT(M��(�qD���k�\\u0000�?I\\u0018�h$Y\\u000e ��+�}��2��H��s`���\\u0006���Z���kX�b\\u0017<\\u0006�__ƓCViɸ�\\u0001\\u0007���[{�X�JC) \\u0013�4\\u0017�:\\u0014_�V3�\\u001f��7�K��,��۽H\\u001d\\\\\\\"�\\u0006�\\u001e��Av��\\u0011\\u001d\\t�\\rVL9c\\u0017\\u0016a���\\u0001�\\t�\\u00008\\u001fn�Ҍ\\u0004�G��\\u0018H�\\u0005��_�\\u0019\\u0017qŒO���\\u0002�$\\\\0;Xг�H���\\t?!z�ٙ���D��Z\\u0005�pw�\\u0011�p6C\\u001e6+�\\u0002��(\\u0019��P����Y\\t\\u00045L��\\u0014��\\u001c^Zߗ����\\u001aWYZ9\\\\:���k~\\u0015���սoVӭv�5�u5�{�\\u001eaʍ\\u001a\\tHd\\u0007F\\u001a�\\r\\u0003N���\\u001c^�93\\u0001ǯ��4J\\u001eTC�0\\u0007�M��������c;�U�\\u000b��L�pl�\\u001f\\u001a�1\\u0019&A#ر��\\u001e����-C�8��d/\\u0011�����e�9&�^�2�$��F��[q�Jm�\\n�\\u0017�S�\\f���Ydw\\\\�PY�\\u00066e\\u001f\\u000e�Xf\\u0019��T�E�\\u0018��D)gs�\\u001c��O�wA\\u001b�4ѩ���$K��(\\n��Z�+\\\\\\\"r`�_\\u0014~U\\u0004\\u0017p?���~\\u0003��R�|��T�\\u0011r,�n\\u000fȚRrdL�f:�,\\u001b��\\r\\u0011�\\u001aA��l�8����MΤ�UnM�������a�\\r��\\u0000�_�X�~��x��Zt��X�`���\\u001a��J�F���\\u001ews&0}�^�)տ��\\nSVTv\\u0017U$x��\\u001a�\\u0001NW�JR\\u0010f\\u0001;\\u0002~\\u0015�V\\u001a�Gʛ���\\u0016#²��\\u0000�\\u001f��ir\\u001c\\u000b*T�@'jm���[K\\\\\\u001eT�x���b.\\u0010�I^�K'�\\u0012�^�\\u0004c�\\u000bF��\\u001a\\u0001W�`�+.�8#�?u\\u0004�Ȗ,�o����H$��T�S+sE|\\u000e��p\\\\\\\"�;�okkK\\\\\\\"ȍ;��}�'2:��9bw�^UR�}�g't\\fL\\\\\\\"�^�F���[�.kdw\\u000fk�\\u0000*\\u0001�<�����{���`�Վ>�����:l<\\\\�w�\\u0001cv�e����\\u001eUn���G\\u001cO�V.N>\\u001c�9�\\\\\\\"�qה�P>�W:�$�>D��JŘ�i���\\u000b�ta�42���]�(:�oY��;-l��\\u000bO\\tx-�\\u000f\\u0004�\\u001b��Q5*U�\\f��h�\\u001dN��ZJA��t\\u0003J\\u000b\\u000eq\\u0018eo��3�����T�x�m)-\\u001dW`� 7?[o�{�_�\\u000fl\\u0000�\\u00016�Xv��x��<� u[�nm�5Lܑ&CJ�[C}�\\u001d)$0'�h�C\\u001b\\u0015��~T�\\u001b\\u001bө�\\u000e;�5�\\u0007�\\u001a�G�%����o�g\\u0004�\\u000b5x�\\u0017k״ö��2\\nd]Lh��7��\\\\���#h�\\tx��R��\\u0012�ok�ޅ���aٹ{�6��k\\u001f\\u0003O\\\\\\\"�e�%\\\\\\\"2�W-\\u000e�xd����0?N��r�-򠣔�]<݋\\u0001��\\u0018ϊ�}��g��p��\\u0000\\\\'�~\\r@\\u0001ԩR�\\u0018ve��\\u001cI�K��cV��\\u001aѢ2� r6;��/�/Gh�:\\u001b\\u0011Y�nD��kP\\u0007��ɕ2��J\\u0014�٬/�a�H\\u0016i�\\u0013h�\\u0012<֌���b\\u0000'�=MV&�,�c���N\\u0004a4s%�n@n*V��1����T�J��P,\\u001c��\\rR�\\u0014m,�\\u001a���ƌ\\u0002��U��\\u0019�\\u0001\\u0004SH���G&���c9�1\\u0016$��E�U�з�֠�>+j\\r�ڲ�Q+r\\u001bZ¼d����w\\u0004m^\\u0015A�\\u001d)�\\t�`�`dfF�$,�ؐ@��װ`g`2�#k\\u001b����\\u0000��Ӳ��\\u001dŮK��\\u0014[�ʌ]��v�?7���kz�d�Z\\t���!\\u000fV\\u0004W�XS�ʊtk��r\\b=h\\u0015�Y�4R\\u000e7���g�y�\\\\G-�Ԣ��hF�)>\\u001a�\\u0011G2Bz���NK�C%J�m֥1\\u0006`�\\u0016�<\\\\s��}C�L�1mn/�\\u000f�H�S�C��\\u001b�e>T�F�F��\\u0002����%L�pC.��#�>F���7�_v�5\\u0004���S�\\u0019t��+ߗ��\\u000b%CU����~��.�D\\u0007��\\u0000Τ��>L�[.p\\u0014�\\u0003���/��F�\\u0019�E����4�L��\\u0019Thx�>\\u00140D�=]�J\\u0010\\u0018�����\\u0003.����q�F��b5 \\no���y\\u000fCF\\u0000e�_\\u001bVV�iX\\n�\\u0018��Y�\\u0001�\\u000e�T؋\\u001a�<�KLF�>�\\u0001\\u001f\\u0001�B���76뵴\\u0014�\\u0006�z�,�ḆF���$^�MQO�{VA��9\\u0013�&��\\u000b�\\fI��Y�\\u0006�+�\\u0001�A�▀z�L�\\u0018)\\u0001�5�L�G]\\b���DM#;�l\\u0000���J�\\u0010/�\\u0014�l��bz\\u000b��dro����\\u0016�\\u0004�-r\\u0019�6�U��]�\\u0011�� z�V\\u0004��5����ֆy�id\\u001f��\\t�\\u0016�=\\u0005'������a����\\u0006��mD/\\u0002�\\u0003��:k��TQ?+�H?mic{u�\\u0007��$\\u0002\\u0001�ō{��{q7��n�Sf��n\\t\\u00148�\\u0001q#U�Ī\\u0019Xq\\u0004֙8��\\u0012��\\u0002\\u0000\\u0019��?�k�\\u001d�\\t�J@e#��=�\\u0017B�IR-aj���\\u001b�\\u001b��)%���<-sN�\\u0002+gB���\\ru�+P!\\u00101 k�Z�3A:L�Tl\\u0018|�U$$�r�\\u001d��H��\\u0003�iR9}ջ#(7ѭƒE��\\tTrI\\u0001��\\u0000m�y'�aof\\u0017\\u001eD-��UO�����L�!�1�6V^e��E�s�_s�\\r�2\\u0004̞�\\u0015\\n\\u0014\\u001b�I��)L��*T�UY�U\\u0017'`(\\u0000�\\u000e�s\\u0003�|8��Sx_�\\u0018a����X�\\u001e=$F'���oUŒ,XU$�\\\\\\\"I<E�4^_l���K�$��{��\\u0002\\u0006�*��7\\u0019\\u0004%�K�h�\\u001a�PMf'�h$q�\\u0000x��\\b��\\t�kJ�7��fcv$�\\u0013�yR�1\\u0012�Jc�٦��9�����Δ�KQ�ނ�\\u000b\\u0010�\\t'`54�\\u001eǝ(\\f�b\\u0007���`�<����C\\u001aF\\u0015��n�~&�K�*zt��g��<�\\\\\\\"��\\u000f\\u001eRN�z�����o�nޫ�W������ႂo�\\r�2׽.V�T#����c�\\u001a¼\\u0003)$\\\\�o�@\\u0001sa֘��\\r���\\b/�$��6q��;�\\u001e��+��7��B�o���>\\u0002�_v��h��\\u001d@iKH?)�\\u0001�QC�n_��IH�\\r�gx�y�J �\\u000e\\u001c\\u001a�,�q\\u001d\\u0007���;�+;I\\u0002�J)%�1�\\u0016�\\u00003XPX�b4hrHLT�`\\u001a�=Y�k̞�U`E��ȫ��l�RG�,�\\u0013�A��\\u001c\\u0004\\u0019t���*:��S�qN\\u0012\\u000f��H�3���\\u001cN���p���\\n/���9\\u0014Dy\\u0011��x�N���*�[-J�\\u0016�B\\u0014oq�����!\\u0005�o�h�\\f��j\\t\\u001dm�5�Lh��܇&\\u00166�@�W��O4ݘ�<�Y\\u0015���\\u001f��\\u001b�Y�\\u0003z(�3��|D����8�\\u0004�V]�\\u001d�GĨ�۳�\\u001e����\\u0000\\u001a�\\u000b\\u0015;�\\u00189\\u0018J�ٔ_o��d�-鹪\\u0005���$r�L2\\u0003YЪ���t\\u0016�׃*�\\u0014=�\\u0007[Sܿۢ\\u001cI\\u0019r݄j\\\\#(����s��uj���\\u0013p�7��T[c��*\\\\��U�\\u00047$�R�2�\\u0000\\u0002oM�&ץ{qK\\u000e��\\u00123�F�\\u001c7N�\\n�Y��b\\\\\\\":\\r��6�Z\\u0015��'['@F���\\\\\\\"\\fy�\\u0019�+\\u0016�\\\\_O\\n\\u0015�.\\r��jхŕ7�t��T�B���a�@�\\u0010+X�Shж��\\\\\\\\�\\u0011٬\\\\�hM��r<�:S\\u0018��\\u0014�\\t.4'�G]w��%$N�\\u0007\\u0000]ߐ\\u001e�-��zP��I\\u0019��m�&�X���h��p��R��t�2�~*�W�t���\\u0014Lh�ʋ�_��IO�\\u001b^�+���E\\u001bH�\\n��\\u0001�h\\u0007�2\\u001b�d�\\u001dk�\\u0012�:�v�;�o��\\u0010�S\\\\\\\"ߘ�O\\u001e�;\\n\\u0004�\\u001eH\\u0014rFE:\\u000b���k���AperC\\u0004\\u0001���ͅ'az\\u0013Q:\\u0003N|�T��(�A���֊�4D�.E���\\u001a���4��5]-�n\\u0005l�u��\\u0019d%x�/��ÉQ�װ$�A��<�8�\\u0000�$\\u0011{oUɵ:\\u000b�Mnx�c�ؓ�T�V�P��\\u0000���jB��\\u0016�Q\\u0017�ύMr�-xO�\\u0005�T���[\\u001cƁ�6&�½Ef7�\\u0013��(r\\u001bM/r\\u0005��Z!\\u0000K\\u0014$�����\\u001d\\u001e\\t�%,5��\\u0002�P���\\u001f����ϓ�@)�\\u001d�[K�V2IŬ4'�,��=��ӽ���\\f5�\\u0013B�#�Ӡ�1�++\\u001dA�S\\u0000���H��U\\u0015�&�5�6�\\u0003<@\\u0005[�v�(>�\\\\\\\"�Ӥ���\\u000f\\u0013D�\\u0004S/�#���\\u001fmz�qk�p\\u001b)[h>u�V��6\\u0015�����\\u0012He�I\\u0000\\u000b��R�2�3b��\\u000f\\u001c��Y,�Ϝv\\\\\\\"�\\f̷��\\u0014:\\u0011{��\\u0000{K�(R2/�K�v&�ȉ��\\u001e��bl.~\\u0002�~�\\u0006�\\u0002�E�\\u0001��5�D҅b\\u0001C�\\u0017��ZE�B�-x�\\u0017�W��Dor\\u0014�m����ۍ57�SK��\\u0004\\u0011\\u001d�@\\u001eB��F��P\\t܀*ǂ%�ܷJ�\\u0019�\\u0017�\\\\\\\"�k�\\u000f���N��.Ef�\\u0011��\\u0007���j>4�\\u0010<y�\\u0014]э��\\u001ah͠\\u0003@�\\u0001Y�c�3�\\u001em�\\u0000ҶXO���1�\\u0000V�q���\\b^�S�Aw\\t�\\u0007$�D�4����7�{q\\\\�}=zҹ\\u0012Gb�B����\\\\\\\"�����ڋV�\\u0015�\\u0003�%�\\u0000�^���������X�\\u0000���O%��6!��\\u0003��Δbe����O@BA\\u0001��\\u0015�RU�#��\\u0003�fbO\\u0006\\u001bܐo�X1�ᕉ;\\u0010\\u0016�_��4h�@ܘ�\\u0016$�5�I�쀀7k|�Uh\\\\\\\"\\fp��7��I\\u0010}�Z���Jӟq�\\u0010\\b\\u001f\\n�Y=ַ濤�\\n����^�ˑ3ڔ�\\r#h\\u0007%\\u0004��@5��\\u001b}\\u000b�\\nN��\\u0001RTȪ�\\f�\\u000b\\u0011��\\\\��_\\u001e\\u0002�\\\\\\\"���k���餗\\u001c,��\\u000f\\u001e�3�#���j�Xp.>AӶ.7/nF\\u0001���Y�\\u0013{\\u001b\\\\֮ٲ2�S���ۍ���~\\u0000�@�<?���K}�����P�V\\u000e\\f*T\\u001c�r,z��LR5��\\u0010\\fS\\u0010`& �\\u000e�yQx��\\u0018\\u0004мb\\\\\\\"N�U\\u0004i��?W\\u0013J\\u0005��\\u001e\\u00174��Cn�\\u0016&W\\u0006��\\u0010��Q�\\u0005\\u000b\\u000eLF�\\b�\\u0019��ً\\u001f\\u0012oD�2߉���x�\\u0002���g`\\u0018�[W'��|�e�\\u000b\\u0014��{�?�-���:\\u0018���kq*\\u0014���\\u001f���L\\u0002+�_H�M�B�Ȣ\\u001c\\u0005�Or7:�\\u0010E蘠_}X�� }��W����\\u0000R�4�\\u0013gH��2\\u0014\\u0005�T�Q��AAw\\f\\u0005��,���T�\\u0013k�4��\\u0016\\u0007����ʆ��l\\u0002?��\\u001f�B�2ik��Z=Dx\\u0018R��&,D+=�Ͳ��ӗ���\\u001a\\u0016l��\\u00016���h�۽�\\u001c|\\u000f�L�L�忥\\u0001�\\u001fƌ\\u0019o#�Yy�ӛ\\u001d\\u000f�aNR|��&�v��jr\\u0003\\t�q���SC1TՇ�+���}�\\\\�l�{\\u0013M�Kz��Q�;Rn���w�UB��P\\u000f\\u000bTf&S5���F�������\\u001f�\\u001c�e\\u0005��[�@K:\\u0017>��A;WM����\\u0016v�\\u0007\\u0017A}\\u0000�u�~�\\u0010��7�AQ�\\u001bm�E�V]}���\\u001a-L]q%Օ�Ԃ<E{Xa\\u000f�/�?�{\\u00192�\\b\\u0015��'C�չ!\\\\\\\"iUx�<w\\u0003z���F��S�����*�\\t��\\u0007��5���C{�c���2h\\u0005�sMz�<80\\\\�Gέ\\u000e<P��}|M�o�6���R�IR�ۃ�\\u0000mꬍ�R���K�/�\\u0016xP\\ty*���Qȍ��2��m�W�8��*G7%�r��(O�j��H�b�l:\\n�kQ�\\u0007h�k\\u0002\\u0005x��G�G\\rE�)���[�oVַZ����'�yȟ��\\b�t6����^�\\u0018�:֕�F]\\b\\nVT�l}_\\n�12\\u000bYԠ\\u001b�\\u0016��\\u000f�2�D�\\u001c�\\\\\\\"�J�����m��11��\\u0014\\u001cш��nCpiȠy$�B\\u0017!���\\u0006_\\u0000z���R\\r8�T�o>��\\r�l*��\\\\\\r���5�#�4�\\nC���o��\\u0000Oʥ�\\u0014�GLm�������9\\u001d�\\fxس\\u000ev��}I�H�u�\\u0000��:���T�lm�߾(l\\\\\\\"X\\u0002����\\\\���n�\\u0011����)\\u0014��s��4���H���\\u0014�\\u0012e�ubt ����>?FE�\\u001cx\\u0004�R���C\\u001d��\\u001f!K�G�\\u001f\\u0011GΫ���\\u001b�r�m\\u0003���ꩅT�!��\\u0018T�R�\\u0011��\\u0006:¼#]\\u0016��'k�i.\\\\�3\\u0006\\b\\u0015O�ajo\\u0016B�cu��4��̶=�\\u0014\\u0014��@#~k|k:�[�\\u0010�\\u00186&�\\b\\\\\\\"�j�ڏ&\\u001epi:�\\\\]M��'\\u0016H��F�\\u0015��\\u000f%?W�`¥\\u0011�`�)A0�I�\\n\\u0001ԍmK�v<�\\u001c�\\u000b\\u0010��l<E\\r�%&�1T$oEv��\\u0003\\b�\\u0019q�ۗ�\\u001d��K�M���L�\\u0018��\\u0013�=\\u0019�b\\t�J�\\u0011\\u0013#�m�\\u0002�\\u0018��4���\\u0004�${�t���\\u0012\\t�e\\\\\\\"�\\u0010�</�i�-�R�@A�\\u001e�����\\f�\\u001f\\u000b�r�\\nh^T�(\\u0017-��,-\\u0015�ni�����y�ʰ�\\u0012\\u0006+�:�bk\\u0002�t��y(�5�61|�I\\u0007�ŏ�\\u0015�� �\\u00020t\\u000b�>���N�t\\u0017�X��U���Hb,BF�h\\u0000\\u0014T����O`\\u0006�W�\\u001b@H�z`#���\\u000fyn���[v�0��=m�|<+\\\\\\\\�+�y$�J�p��`~\\u001dG���8��I���\\u001b|�Ґ\\u0014�X�\\u0018�\\u0011H`m :i��ޑ.��O\\u001b�C��餑C~J��\\\\��\\\\\\\"��\\u001f�^V���[C�a�i��䋞�\\u001f����|Y�!,Y\\r�i�d&%7R�\\u0011c��[�����E�q�gF��[�����X�;�u�F°E⊾\\u0000\\n�Y\\u0006�O.4�<-�D7V���\\u0007vtdi�V\\u0005Xp]���-�@\\f1��O�h@:���F��f�\\u0004����\\u0018h��遢Xio�h\\u0001\\u0007�-�+\\u0014qp\\u000eո �\\u0002��S �\\u0019+�y[��ŷ�d�4^�hno�Sg\\u0015~�Q|��,sF��c���\\u00030�+q:^��:s\\nA,C��\\r>\\u0014���\\u0015�\\r�TS�OЫĵ\\u0011\\f\\u0013��c���(�Y\\u0016$\\u0017w!Tm���\\u0018n\\u0012@G�����xU\\u0019� |l��f\\u0002���0>�V��XǶ����`u�Q��R��\\t\\u0010�\\u0000�F�N�\\u0014�+�\\u001cɒh=2\\u00129��u�)����C�т�I�7=I�Q�:��Ha�7�2�8Ӵ,���Q�����]��\\u0010�^��(�\\u0011W\\u001b؂*��#hDf6��T�ijS��\\u0011���-ԁ�����Û�\\u0007]n)�$ɔ�\\u000e�w�)^0��\\rmc^e6F@VH���f\\u0017\\u001fe.�od3��H��v:)�}�����j�3\\f�y�ͯ#`oz��\\u0013ĝ\\b?�D�\\\\\\\"<��\\u000b���[��ݻ\\ny�\\f�\\u0000\\u0001����?~ƥ�!�'��\\u0014��ؖ$��P�cf�#S^����0�F��\\b�\\u001d�\\u0018\\u001e@\\u000b؃�Q�,�.�}*��eB�ۨ>u��\\\\�D ���g���7�!#\\u0002���hkH�f\\u001c��jḱi�yӾ�\\u001e\\u0013a��!P\\u0012�}�\\u001e\\u001fm\\u001d�����ӒK�\\tqb����I\\u0018\\u0017xΎ\\b��,f6�?��^�ƛ�o�eVŵ��*l��}i/q�\\u0003�l��=��\\u000e!�%k\\u0017���G��..���\\u0010c�8\\u000b \\u001a��\\u001d\\u0001�A�\\u0018�}G�~S���7��7���E�\\u0017�\\u0011֑��&�\\u001aXZ�Wa��7\\u001f����mDUX2�\\u001b\\u001d��\\u001f\\f�d\\u0005<�O����\\u0017:\\u0001�Re��В\\u0014�V\\u001f\\u001bP_�\\u0005�(��^Z\\u0002k8D�'���}�Ѝ9ݦ>6UV�<H�!��q!Yw�@�Τ�n�Y��5�5��/���b��&��i�oÚXѦrl\\u0007!}�Sk��\\u0015�z\\u0003�\\u0017(����j�H�v����'\\u0019\\u0018E\\u0012�!��\\u0017\\n<�(�~J�Xފ�Y&�Ռ\\u0003�QdF�Q��\\u000b\\u001d(Z��LI��2Ƃ=t'�f�&\\u0016\\t\\u001bz���\\u0017�iz}k񦘃�$��\\u0014@H�LI�^N�y\\u0010k\\u001av �V\\n\\u0007�㵩g}�L\\u0010R2u��>w���\\u0017��X�{BGr@����ޘ�fF���\\u0012O��>����v���!bI��_�S�<����\\u0019P\\\\\\\"�o$@\\u000ft������\\u001f�D�\\u0001Yݚ\\u001c�b��w\\u0016.��\\\\\\u001fP�.)\\u0000��9�¨�,�\\u0016\\\\\\\"���\\u000f����e��+��E�x0Џ��[��~�KiM8\\u0006�?�\\u0010��l�8�(\\u0000(�\\u000f�T�h�C�x�C�\\u001aM�;4�O\\u000b�P��\\\\\\\"K��\\u001e���e�\\u0019!H\\n\\u0005�&ַǭZrKAy��&/\\u0016��\\u001dV��ai�&s\\u001cll\\\\\\u000b��GG��*\\\\\\u001fWQ�.̒\\bd,HT�\\u000f�SyI�֡�v�\\u0015d^J��\\u001dC\\u000f�\\u0014.Nw��!E��ڂ\\\\��P��\\t��\\u001f�y\\n�Y�.V��b��R����\\u0000���גM0[�\\u001ao�d����n\\u000b\\u001a�\\u001a\\\\��Z�$�V���\\r �f`�\\r[b(�\\b�\\u0007!ӭ6Ċ9#,�s�T���8�Ce\\u001f\\u0013ҘcB�܃w;��^\\u0014\\u0011�\\n,:\\n�%E�;Y�\\u001bҕP�a�h�9����\\u001a囨\\u0016�^g`G���$�U�`�[F�|�xU��5�����V'�<��4^7����j}I��'��6Vh�ƀ\\\\\\\"Ċbf\\f4�\\u0007piy��kW�b\\u001d�rR0�9�s�I��Y˓9��n|�$��t�+�'��K\\u0013,,\\u0003_��գ��T�#��u\\u001b�/�y��,�8ܟ��L�\\u001e\\u0019I���K\\u000ewP/�sG\\u0017�\\t�\\f�\\u0019S!V�����s�z�d�$m\\u001aq\\u001axkLd���:��\\u0016����\\r�\\u0013�\\u001e4�W��4��\\u0013�Iee%�M�\\u0006���X�Gs�hŉ�\\\\\\r(s\\u001d͇��N�p�HQ���|��j1cF��\\n�\\u0004�\\r�N>8�\\u0018�<\\u000b~4\\u0012�����х8\\u0003\\u0018X\\u001eV:�b(��\\u0005#�Ph<�x��\\t���\\u0007U�Z�4\\\\T�R���T\\u000f*\\u0006\\\\\\\"@\\u0001'm�F���\\\\\\\"�O���O�7y\\u0019AS�\\u001byP���*� X�-�Ʈb%��~[|-N�;,\\u0012B2_ 9�\\u0019\\f@�\\u001a[�\\u0003F>{�ҪX5�\\u0006��L&�&uI\\u0007 ÉC�Ɠ)\\u0018'kɞ6l#��\\u0019(\\t�i8�e�4\\u0016LHu/�@\\u0014����\\u000521F\\u001e<�\\\\\\\"�K\\u0006��l��:����cF\\\\\\\"�h���@F�m�'񨳪_XHҽv��\\u0018Nͽ0r14�������[�A���BJ\\u0013�~\\\\\\\"Է7\\u0001�\\u0006h��*\\u0005��U(�6�\\rz��\\u001a�1\\u001a�Y9!r\\u001d��j�E�à�4�\\u0007�ʺ`c��\\u001e\\u0005<�\\u001eR7�9�\\u0018�V�Ù��u\\u000enRa�Ƀ����2���\\u0000)�\\u0019���ёn<��Mg��`R�JC\\r=�\\u0012\\b\\u0014�^��Sv��۔m�}��\\u001d۵M{aFH�2̤|�\\r\\u0000��B7�E\\u001b\\u0007$\\\\��\\n��Z�E4�}�\\u0006l(�p�`a�\\u001a\\\\���?@\\u00177�j4�j%N�^�\\u000f�\\u0016y�<HlbRy��\\u001fQ��)�j�pL���3ƶr\\u0005��\\u0002\\u0003�����W$PH���[�Fv�Y����R�Tį�\\u001a��Z�z3\\u0013��\\u0018O�B=�\\u0000����3b��O\\u001b�J�3\\u000f;\\nQ\\u000e\\\\\\u000f�#\\u000b�}9\\u0001�\\u0011�t����3��H��тʾ\\u001e\\u0006��\\u0003�wI�\\f��,�@\\\\\\\"��}��\\u0001n �����G\\u000f\\u0016Y汵�\\u0013nT]\\u0011�?m��\\\\\\u0019\\u0000|w6�Q��h\\u0015�\\\\\\\"/#~�e+8E��Z�7\\u000bv0��\\t[�ǚ�\\r\\u0013��\\u001b��G �5�\\\\\\\"�>I 𺲐C^��*\\\\\\\"\\u001e��\\u0001\\u001c��o�\\r��\\u001a��ɵ��W\\u000b54�0����ߏ�_�b���M�ZM0�]\\u0007�oX�\\u000eW:V�z\\u001c�S\\u000eڊ��\\u001d��>\\u0002�ѰH���6E\\u0017c�\\u001d��\\u0012�.�\\b���\\u0013�\\u000ej�|0�Σ�����\\u0019s�.\\u001ef9\\\\�S��T>\\u001a��+$m\\u0000�\\rԨ*|o�bx��5�r�Ъhs�\\u001bqqĎ����\\u0016���\\nq�į9S��\\u0010:�ߦ�ˀFP{gT Z�ƴ�\\n�\\u0002Ȭ�\\r~��W\\u0017\\u0007Sz:l\\t1�S\\u0002�\\u0018�\\u0000�K_�dE\\u0007��T+(҅l���g�\\u0013��8�Q\\u001b������*����=���\\u000b�?�)�l\\u000bi}\\t�򨼻?\\b�¯�dC{\\r-�c�k�eC��}I=k�}�YW�\\u0015B\\u001aֽ�H\\b,׬��aVv6E\\u0017'ʷ�\\n���o�'�\\u0019��\\u001fQ\\u001f��R��#(��\\u0019�I}\\u0011�v�\\u0000H�\\u000f�a� LIn�D\\\\\\\"o��� K �\\u001f��f�\\u0000r*���ץ�'�2\\u0006R�ē�\\u001fR_�֤\\u001d?c�\\u0012di�\\u0000�/��i\\fl�'`\\u001aC�\\u0000��\\u001d�(a�)\\b��$y��\\u0016X��L|o\\\\\\u0010��\\r9�ucB�ʳN]v�\\u001a�RZ��?\\u001b�#\\\\\\\"sԑ{t֌�h!x��%!�\\u0004�\\u0007K�\\u0010�\\fDE\\u001c�@\\u0000�|>\\u00143dB�(��A��Z���d�Fa��h��;�\\u0000\\n�&Wb��\\u0002�驡ƑD��[��+���X���i\\u0019\\u0007��>\\u0006�K�r4�\\\\\\\"x���M�kk�I���.p�1m͇���]<�\\u000b�\\u0003�t��XԤ)\\u001f��1\\u0016Wg\\fUň��X�wL,^�0\\f��(\\u0011����:^�T��]Zi�Ȯo\\u001e�K7y��I\\\\\\\"��gR\\u000f!ac���8�E\\u0017$��\\u0006���f��(\\u0004����ʒd��\\u0001{�Q����Rx�.X;rY�¡[�~�R�o�\\\\]ElA�c\\u0016$�ֱ��I\\u001cѕt\\u000fp@\\r���X�,b0.\\u0005�|\\\\��6�8\\r\\u0018\\u001d�Y����_gl\\u0019��c$����[Y�Ru��ɡS�\\u0017��di���V;:\\u0015Pnv�,izd�q>�e�q�����`�ۈ0!n�X\\u000f/�Bf�\\u001f��\\u000b0\\\\\\\"�\\u000e_\\u0016�eo��1�+\\u001c��q�5\\u0007RԾ\\\\�}F���Kbqp\\u000bk�J�97\\u0011ߏ]m�.I\\u001e;�6���Ar\\u001a��ա\\u0003\\u0010�\\u0017\\u0019.\\tm���y��܀����t�2�\\b$��}\\u001e��\\u001e����k\\u001e�e�lҊ�e��¦�\\u0000}U����j>�!CK:?\\u0006��!:����Xtڊ�,OPn��\\b��\\u0002_�\\u0001����AB�F�\\u0011l>�\\u001b-�d���٥\\u0018�e\\u0015^+\\\\��ҳ��I�WG<�zx�v�Q��A�\\t���б\\u0000|�\\u0005tHT6�t��y\\u0012�)p�\\t:\\u0013���xU��B�I�:t�Ze���2�Ra�Zw�)\\u001c�\\u0014\\u000b\\u0014\\u0002�=hL'�%k��4'S��\\u0000J-�U��\\\\\\\"\\t7�Q\\u0015\\u0005�[�ηI�3.Y��I�׵*SI-\\u0004�z�����QƎ\\u0006�z�u���7\\u0003jb+\\u0014RF�]\\u0018�_\\u000bх#\\u0011\\u0004\\nG\\u001d/X+���W3�]u�h\\u0006+<�},E�{ғvn_\\u001aΥ\\u0000\\u001b\\u001eZ��oK}�۴�$F$�s��\\u000b�K�\\u0010�F�n��i0C짎(Y��\\u0006���d�L�C��\\u0011|\\u0005o�;���C(�\\u0017^\\nos�h*\\u0012\\u001b 6�8qŏ�r%�N�ğ��V�\\u0000���\\f9*�'�xP�H͝f\\u001c��\\u001d̀\\u0006��(���S����!�\\u0007@u?�\\u0015��9F\\u0012S{u=\\bڲ�N5.�H�ې�Ռ�X\\u001b��Pϙ\\n݄��\\u0003{���$�\\t��+o~�\\u0015ꜥ\\u0010S��F ǡas�o��$v��ѥ\\feV#��\\u001e\\u0015�5���U�\\u0001\\u0006TT�>W�13`�ʗ�b\\u0004��X\\u000b�/��F�m�4+��#n��fdM����3\\u0006\\r/ \\r�C�mC˘'@#6Sk�k�iMa�\\u0014��c`\\u0017�\\u0002mz\\u001fR�\\r_��3��G�Jtа+c�+z\\u0011F&<'\\u0001���\\u0006�$8�\\u000fL�\\u0014�\\u0001��\\u0005P�@6\\u0014�\\u0001�\\u0012q�^7@�\\u0001fPt����\\u0016U��\\u0005ρ]�\\u001a�Jn��\\u0012�NLS\\u001f��&��V�*SJ\\tnC�It�Ɩ;�h�����\\u001c\\u0012dI~?�`�H�^��9^2J�\\\\X��f\\b��\\u0007ӱ\\u0015.�lҶQ��d�\\u0011\\u001f���\\u001bN0�7�\\u0000��k\\u0005��y�\\fY\\u001aIdf\\u0016�V\\n�}�(��K%hݘ���ZڃZG�4n�(\\u001c�nzЗ��Q��)�\\u0019[��ىSك���\\u000e��[sI��Ë!Ly �d�H\\u0012\\u0003��\\u0001�\\rEo�ܧ�\\u0004\\u0010�}����\\b�fLr\\u0007WK�~�ʫ9\\\\\\\"����o)�H\\f��keP�/�~\\u0015J�b���T�\\u0015eY���J��%\\u0013�מlKk�t�\\u0003CV�M&<�4v暋�<(\\u0003�i��Ofx\\u0016@������\\u0004\\u000f\\u0011T���\\u0000\\u001cTpI¨D\\u0016��\\u001d>\\u0014�~�9\\u0005�\\\\u\\u0000�\\u0000:\\u0011��\\u0016mI�а\\f�\\u0011��|\\u0019O�T�@\\u000e2g�:F�)\\n\\bU�q6��iAd��62�K�5��\\u000b\\n�\\u0019����Ws#�mκmI'2ή��N\\u0014^!�G����\\u0018��\\u0000� V\\u0002Vt1������j\\u0006,g(\\u001f\\u0012BK\\b�a���@|\\u0000\\u001a�8�d\\u001cw[���v��\\u0016ojTf+v2���[��\\u000e[�\\u0015�����*�'o���\\u0015�+&\\u001e�;�~فY#`\\u0002�E�\\u001bhm�\\\\�vA�͟\\\\\\\"�\\u00129+����=�3�2`�\\\\�Šo�x��I���I��ڮՄ������a�\\u000ex��\\u0007S$\\u0000�j:��F�\\u0007�,���Χ���I�c&Õň�cB,1�\\u0017U�\\u001e�\\u0015�U��ߓ._\\u0014�\\u0017�B�Q�\\u0016\\u0002��ŉ�\\\\\\u0012�'��. ���Y��Ƶ���br#�\\u0001�\\u0018���ڒ)\\f��^�\\b\\u001c�[r�\\u0016\\u0015����b���d#��ݸ\\u0001c��\\\\֊�\\\\0�V\\u0012�\\u0019\\u0006D\\u0004r\\u001a�ީ�O\\u000f�7\\u0012��i�=�h�^D^&�0\\u0003��l\\u0005{,�J\\u0019��\\u0015\\u0016��\\u000f\\u0012�Я\\tTe�5�Ru$�M4�SÍ�a�J�I$�{�mT�%�|\\tk��dIc8缾%/��L�x��Q�dm\\u001b�\\n9�N�Ġr�U�4�x��\\u0015�y�A�]�v�I�S4��\\u0002\\u0003��_˭\\u0011��\\u0004B�rT]�ѯ�Z\\u001f\\u000eX�R3fE6\\u001dk��\\u0011qf[,�T��'��Y&�i�GFr\\u000bD�F��\\u0000e=H?\\u001aW�&\\u001e��{�\\u000f\\u000exY�drC\\u001e�Ѫ�g\\u0012�2�ban�\\u0007�Y�i�(\\u0006y�a�rYSDS��S���7�vډ�\\u0010����an\\\\\\\"��\\f\\u0018�Fln.~5u�C�\\u0007=�u�g��\\u001c�ԟ\\u0011Fg\\u0015`�+�q�5\\u0015���G�o��F�۱�X��\\u0003��L��9왽�9�\\u0001�VT��\\u001e<qC\\u0014��9b��[KW>�B�o@D�T\\u0017:��Ekڕ_/\\u0019\\\\rV�C\\u0003�\\\\\\\"���v�|Ȃ�\\\\\\\"�~�P>�4Ҙ���gB�\\u001b%²�˯�gܲ�dh$S�+\\u001a/#�C�\\u0012[8)&��D���н���}�\\u0000K\\u0014��6��x�|�:T*|�OM��̀��Z��e`�2�A؍E$�r˦�4�\\u0004[\\u0012+�\\u0000O���3��\\t��\\r�u'��m�\\u0004y8�;��XR��3\\r�\\u0015<s#�@\\u000eT9\\u0011A��?)ՇԾu�>nL��I���#�񣳥��t^�gJS��i�#�H\\r!�s���@�f��\\\\Qٴ\\u000f�r\\u001f\\u0003a^�\\u001c��Ɠ�1q<���&���6�9��\\bqC�\\\\�\\u001f�\\u0012~�ԋmA͢\\rn�\\u0011�\\u001b���)��I\\u0012�F�N��QZ��!H�\\\\r\\u0001o҇�YR�o}G��A*C\\r\\b7\\u0007�S\\u0004��:\\u0000�\\fp�\\t:-�r������Af\\nm����C2�Ň�X���Q��R��\\n\\u0012\\\\v��MTt���D\\f��S�G�\\u0017���\\u0016�\\u0002BȻ�sT�\\r��\\n!�\\u001b�l*���Fe��#\\u0013��\\u0012<��R׾׬���M\\u001e�\\r����Z�X6�\\u0007��=�\\b���C;p䃑\\u0004S,!�\\n\\u0015�\\u0001T�X\\u0013�F>4\\u0006\\u0007v�gVg\\u00110�>���J�p�dI�#�9��Q�\\u0000���>!w�\\u0019\\u000bA�\\u0000u���х�Y���SGB|\\u000f_�s�Xٝ�_k��$���P},?��M;7whr\\u0014JU�\\u001fH��{��M<�9\\u0012�����\\u000f\\u0005\\u0014�\\u000bb�\\\\��Ɩ��\\u0007\\u001e�\\u001a�<.�{�eS����[��(����8�\\u001d�@f�ƇQz\\u0000'��%H��\\u0000�-�\\u0015��]�~E�\\u0000�PBBҬ�o�\\u0004� k����J}\\u0013��F����Rm�fy��\\u0000la�(�?ߜ��r#\\u0017�\\u0000ޅ�\\u001d�@�.4C�̀}>t�\\u0013'�<l�u;�Б7 M���\\u0004\\u001d�L�n)�#��x��\\t�E�G�\\n�io*�}�\\fߜHH���Qz3/\\r�B��U\\u0000k�@��А��\\u001d�O\\u0006���g\\\\��\\u000b3\\u000f\\u0002G�k���v>g�*H=\\u0004���xr�W\\u0001����=J\\u0000{\\u0019���:�\\r�A�{Z����)\\u000e����QYo�\\u0000�$\\u0012\\b�5�j/��b���ܬ3�@\\u000f ��$\\u0010����;�^8�\\u0007`$�\\u001fZ���Y\\u0019�FGR-p\\u0002��Vh�=\\r���d�h_}x��'c�ݲ|}a��\\\\�\\u000b�Ի�CyV\\u0001\\u000b\\u0016$\\r\\u000f��j\\u0007���4�o���B\\t�\\u0004�n�Pn)�\\f�\\u0002p\\u0004_���b:\\u0011���\\u001b�\\u001cR\\u0018�6�Ji�U%���@oa���r�֦�I�\\u0002�D\\r�`O�K;�afv�͂5Vp8��kr�v�w��_�؋ٔ\\u001d���\\\\\\\"a� O��^�ފ�k�}A�0\\u000e##�o��m֭\\\\\\\"ĉ�P����\\u0000H�m}-j�~�q\\u0000��x�<�ѝ\\n\\u001f\\nk�li@x�\\u0017�����\\u0003\\u001b\\u0010e4�(\\u0005E�?M�\\u0014T��-W�\\u000e�cCi�@X.��8�\\r�_\\n]�\\u0007��\\u0015Â��Q�<l��6�����\\u001a\\\\\\\"�8�\\u0004Z�U?Y\\u0018�\\u001eS�Q��6\\u0015��wFƊ<y\\u0016ѡ<$\\u001b��#��j\\u0014)uqf\\u001akқˇ$1��7�\\u001b($�o��yph�=�b�N�n\\u0019�q^M��0`\\u000f!�\\u000fR�U\\u0011�6,�\\u0004\\u0019\\u0001\\u001cv���σ��e-�O�\\u000eL��\\u001eVq�\\u001b�מ�X��K��*�(jT\\b7��)�WFk�.�m~5�q�\\u0019x�U+4EY[�,_I��|��o�j\\u0015!�'�e\\f�s�呜\\u000e6�\\u0000҄�H_�\\u0016+K$�.�z\\u0000'V�p�c����Fm\\u001f�����\\u0016]P9Ŏ\\u0004U@\\u0015@�\\u0001j_�\\u0014*�]ʒi�R�錠z�y_�JC,��\\u0006ֵ\\t���r��\\u001e\\\\\\\"��3��H�h�U,}�����^\\u001b��\\u0011ۗ���orǥ;8M�s�%�\\nU�؍��4�\\n��\\u001b�\\u000f\\u001a��\\u0011R�j@׮��>qw%\\u0017�__\\u0000+\\u001e<�-�;qP��fr����<�B`b��H'Ư�:?&,>F�l�*QtSZ��Ͱ\\u0011�$-\\u0019�\\u001d�\\nÌ�)Fc�:�MY�c�o��\\u0000�\\u001a�\\u000e�2�\\u0002��\\u001f�[εD7\\u0006���2�RGF��\\u0013�\\u0017�i|D\\u001d�� �數�G\\u0011�WS�R�����2� ����w�\\u001f6R8��x���$��jF�\\u001cr�\\u001c2/\\\\\\\"\\u001aQ��N#]�\\\\\\\"�ẜq�.�~\\u0014�x��.��!ӡ��fe����[\\u000f�CF����h�\\u0005$C�{���\\u001b��\\\\\\\"¹\\\\|��ˁ{�G���w�&��\\u000f\\u000e\\\\\\\"�2[C�v7:�\\u000f\\u001aY�;$9gލ��M΃C�\\u001dk\\u0011ޞި�> �(�\\u001e�\\u001eK\\u0004#��߉;�(I�6'���ф�ɒ�a��e�A�/�XSLP)\\u001c����ƻi�\\u0012)#F��s=Je2�\\u0001���oˎ�a�)���!bT�\\\\\\\"-Mj\\u0010\\b��xQ\\u0001\\\\\\\"Ő��D�\\u0017�QRc�Q��\\rm\\b\\u0016ցet<YH5-\\u0014�H�í3ŕc��m��p�vP\\u0006ڟ�\\u0014A;SZ0���O�EupU�����3�! ��]\\u0007��x\\u0014;n<�Uy��<\\r\\u0015�j0|�$E\\r�t$t�\\u0018�7\\f.�\\u0018xV�)U �Z�2\\u0012J�\\u000e�T|Y\\u0017�\\\\\\\"�)塵�*Քq\\u0015<��V����:�D�R�H�G#���م\\u0017�+O:�k{���*�\\t�\\t�d���Q!\\u0003\\f��\\\\C\\t�\\u000bsklO@~\\u0015fD�\\u0019l=6�ǭ�SYÕ\\u0014�^C��Ȇ4;�\\\\\\\"2\\\\\\\"7$k��ƞ��\\n\\u0000\\u001a\\n53�a\\u0018��\\\\\\\"\\u0002\\u0001��P�\\u0014m�Y��.�#}L�Z�\\u0000m\\u0019nZ��_*\\u0013\\f/�\\u0001�\\rmDO)-}\\u0005�<)� �%\\u0001O\\u0013� ��((1�1�u�&lpHY\\u0000Ѓ����E6-�]E��\\u001cu�h\\\\�\\u0004q\\u0001uғle;n0`�;�u�\\u0017���3x{�'M\\u001b�TL�c\\u0004D�A��Օ-�\\tV��n\\u001dM��*�(\\u0010�9�\\u0012\\u0006�?\\u0016}\\u0014\\u0005���CZ�\\u000ft�q%ؘG\\u0006��н�\\u0016Ȧ�u\\u0014?o��*�Y�-�\\u001d�\\u0014�\\u001b,)��-,�3\\u0006��K��{fq�u�&���\\u000b���6?�f���@*�\\u0007 �\\u0002.\\u000e�U� 0�5\\u0016�.��.8�!\\u001e�\\u001d�\\u0010A���+r�)��\\u00077\\u001b�pG��6�>\\u00145\\u001d�'8M�;o@�\\u0012�\\\\\\\"�����M;��4X�F\\u0001\\rv��߯ƐQ\\u001e�q�66ު��`���P\\u0017@����n��\\\\!�A�����\\u0014��\\r��fukӰ�Y�g\\u0000\\u0012l�\\u000e�Z�*\\u0006J�*P\\u0007���H��~넘)#F&�K/��|A�W9^�\\u0001՛P��y�`���۷O�'o\\u000e���Jy2\\u00104��o��Ͷ:0\\u0000�����h��.��nW;֔\\u000fM\\fI\\u0016���\\u0002E:fq�͓T\\u001d\\b�i�g+\\u0015\\\\\\\"�_�\\rBpR��J���������\\r��$$M�F\\f�F�U�Ʌ8,��?TofS�5$��}�T+0�\\u0005ڲf�뫖��I�\\u0015R\\u0000��a{\\u001dE���\\u0016�cY9\\u000eB�ksDS�|��qr�{���x\\u001cG�S\\u00164Q���eR|�\\u001a�۟�~>�>�Ǒ�rY��\\u001e@�S�\\f\\u0013�\\u001a�~�Z0l�\\n���Fघ��\\u0014�����\\u0005 ��F\\u0004�-Nq���O�^�:��s�8#���Eō��\\u001et�\\u0019�xË�����Y�)�R_R4\\u0003��TĄD\\u0003\\u001f��-��T�\\bN�:�م�Lp\\u001fY\\u001b��>\\u0014[�,\\u0006��}�\\\\\\\"�Cy�¼\\f\\t�Vl���ߥYE��T�\\u0004[j���c��A�M�\\u001a `]�4�C�=$��\\u001f\\u000075����&<�����\\\\\\\"ې����\\u0015�T#;<�f��c2'ա\\u001ev�C�v�n\\u00163�s&�\\u0003�\\u001d�<M\\u001f^L\\u000b�m\\n��nv\\u0004o���\\u0001\\f�R?;xV's^' �'�+�\\u0012\\u0006J��n4\\\\\\\"�Jb\\t\\u0019�V�`G�\\u0015��?pQ\\u0014�\\u001dF�Z�:�\\u0010��M�\\u0007�\\u0014{`\\u0015�O�I�a����\\u0000\\u0019@\\u001b\\rj��2�\\u0003\\u000f*4�}<zT.<-D�\\u0001G��/Җ\\u001e,mE'hk�v@\\u0001��Ɖ��\\u001a�ҵ\\u0012��&å^#Ԝ�!�P��7�O�K���+F)��t�����J��\\u0002e#r���H��,@\\u001dh�ۤ \\u001ek�ƅ\\u0006���ʙd\\u0000\\u001b�\\\\\\\"���}?�5\\u0001\\f��\\\\\\\"n%����ƅ1\\u000e\\u001c��u�\\u0006�E?u\\u0001�N;��r�\\u000f�4)���\\u0016+\\t���x*�#��^��d\\\\��5XC\\u0001��<�v�H����������#<\\u0002\\u0002\\u0003X�V-v��\\u001bV��\\u0019��H�Q�F���B\\u001bd�P\\u000b\\u000bxQ\\u0011���]�F\\u001c��\\u001eT��=�i��*��Z�����%�r��\\u0013�]��ze\\fp\\u0017��]���\\r�sk\\u001a�\\\\\\\"X̹JH�\\u001b2q��\\u0002@�P�\\u0012g<���$��ʲ�-N��$^�S�z��\\u0011���z�vUu>�\\u001b��Ҕ�D �7\\u0006��S^׋6jI$�Ȋ�*�s�\\u0001����G\\u001c���-�\\u000eƺ�!\\\\h�\\u0018��3L\\u00059]�c��Fy\\u0014\\u0016��j\\u0006�n��b��\\n���`u�Т���\\u000b\\u001a\\u0001h�z\\u0013A�\\u001d)H\\u001c��s��O�M`A\\u0006�B7\\u0006�\\u001b8P>?e(�\\u0018%�ʌz���:�\\u001f�\\u0012\\u0002Z��\\u0018O\\u00143̰�\\u0018)v\\u0004�\\u0007�5�Q�=�L�u�G�ҽn���+���U��O�2D�7\\u0017\\u001b�)����)1c%'I$��S�\\u000e\\u000e�k��_��\\u0003�8��\\u0004\\u001d\\b��sbX�d߈��UfNl$+��tқ�\\bK��f<\\u0003:؝��Q�\\u0011\\u0005ʟ���\\u0013��Aϐ��\\u0012�A��Ƥ��fI��|��U�TN�I�h6a�)��Jb\\u001dc�(]\\u0003K3\\u0012@$(\\u0002��޴=�\\u001a�\\u0012I�*/\\u0006D�$�MԨ���\\u0001\\u001a���Hbi;$*l����\\u0002�����.�ˎ�\\u0011m\\u0005=oQ<�;�����\\u0000o#\\u001d=\\r�ځ\\u001c�\\u0000�/����\\u0000I���\\u000f��IG����AK;�<14q�\\u0000��z�Eq\\u0002�������`#\\u0016^�6��4?n���?�<���\\u0000^⺈�㠌\\u0003\\u0018\\u001e�\\u0007KyS�k`��\\\\ݍ\\u0013��\\u0000�?�\\u0003���v�?4=v ��\\u000e��3����\\u001ċ/��|Po�\\u0006�}J�\\u0011sZ\\\\\\\"r\\\\\\\"#���\\u001eu�Y$�s�?mV�\\u0000z\\u0001b\\u0000\\u0017'@+yp��\\u0002��\\rk\\br�\\u0019ň�\\u0007]�i�rsd\\\\X\\n����y�li\\u0018�j��=�\\u0000�Ɩab|�� d�B׀�W\\u0006��ڬ ��eF`7 ^��T2\\u000eV\\u0003�jw���d@\\\\\\\"D���6��Qk����su(���I��c��_Q\\u0016ٶ?΂�NRb! nl<M{\\\\\\\"�f�n�lE\\r�db����ն,=�ϴ񰇏%f\\u0016��C��ܵJ��̧���\\u0003ƽ�\\u0012xW��`|��A� \\t6\\u001a��\\u001cf��oH\\u0002�\\u0016�\\nb���7���W��7\\u0018\\u0004� �8S'!$����\\u001a\\u001f�����b\\u001ekv��\\u0006;��h�̐d4�\\u0013\\u001eDj\\u0018��H�\\u0002�o\\u0011F��w\\u001cK~IG�\\u001f�|�ә�+\\rDC9���#��i�9=_��_�jX���\\\\\\u0015>\\u0006�Y=\\ti��*T�#H��_�з�O����Hu���\\rM2�?n\\u0014���\\u000fǭ^�\\u0017�\\u0000���M�*\\\\E�\\u001e\\u0006���K���\\u0000��4\\u0001Z�)�i��sb\\u0019\\u0019\\u0012\\u0018�o�T]��u�\\n$\\u0004�N2�I��\\u0010u\\fʣ쮜���\\u0017�Fy8�Rĺ�.��<|��닚Ca��\\\\\\\"��V�T��Uj��\\u0006f6T2\\u0006����\\u0012\\\\�|5��b\\u0019g\\u0011H�\\u0001Rn7��L3�\\u0018�X���@,=:l|u�03\\u000e^l|�\\u0007\\n܈��\\u000f�P���ױQ|R�ܳvE*}�\\u0018���[�jY,RC!�U(�pk��\\u0003��-�\\u000bܰ���)kH���m��4��'S��ZO\\u0004��R�.���+:ВT�^1Ҁ<-���7����/�)��jT�LG��A\\u001b�Eh�38�\\u0010G²$\\u0001s��&<�03�\\u0001&��H���&��\\bc��؆�\\u0001�ZɁe�\\u0013\\u0006�C�����%^\\n�=���]>�y�\\ndY�Dd\\u0002�\\u0003_]���;̶\\t8ʁ3ae��0�\\u001d�\\u0005�\\u0000\\n\\u001aH�U(���j��Q\\n�ae�(�>4��`�cI��u\\u0017\\u0005t'_�W^���{\\u001c��q�\\u000f�i�\\u0007qˁ\\u000412��Q�^�B�\\n��~\\u0015tI\\u0001�Ssҝ�Z��\\u0013{BnC{�VF\\\\J�2�\\u0013uU[\\\\�AE\\u0004R.�P�j�4��\\u0007qn&�t6���\\u0016.���\\u0000$��\\u0002�v\\r�O\\u001aη�g�n0g^�[\\t�\\n�Ɠ\\bG2\\u0012��u�R5\\u0015s޻��\\u0000��������LrO�`����k\\b�6K�e�\\u0006?@\\u0017n=\\u001a�u�i-dک�jͻnnN[��̝_�R-�V��9�ó�K2�\\u0005)!\\u0004l|�H����WĊ�t�$\\u0016y\\u0007��\\u0011���2\\u0013�4\\u000f\\u0014�G\\u0010�P��R�v��i~��9.3���\\u000f\\u00187/l\\\\x��ժ��Ā��q��<o\\u0018%ŀ޴���\\nԨ\\b\\\\\\\"�j�B��Z�36���ν�#`$��D\\u000b\\u001a%��SnR7е�\\u0018-\\n��\\u0003=�ץ�E&�\\f�Mb\\f�G]MgD�\\u0012�$P�ЉR�J\\u0000��e\\u0004\\u0002@��~#b��=����Z�'�K��\\u0010��\\u0010�\\u0005�`5�\\r�JG\\u0005� �Ԫ]�5V�{\\u001a�a�\\u0000\\u0005َ�noI7 ��J鰻L���\\u0018�w<�\\u001f�|<��R=\\u0000�\\u0011����L\\u0004X��i�f��\\u001f���|*�b�d�\\u0013q]\\u000b�B\\u0010r\\u0019W�\\\\\\\\\\u001f:\\u000f5ahZM,����A\\\\\\\"DP��J��DN\\\\��\\n�1��e����עH�*��\\u0007��S�i9Z�\\u000f]���Z��F\\u0017Tb\\u000e�\\u0003Z����M��\\u001a�\\u000b\\u0014Vc�Se'p:^�)JR&+�Gǂ2��6��M�\\u0017׭\\u000f&+G#FN�z�|遜r�\\u0011�n�F�I\\u001f�0��]�5\\f�\\fo��\\u0007�ik�CcV�,�\\u0011F䄑��hi7\\u0001\\t�7~�ݘ�}�\\u001dO\\u000b\\u001aͥ�\\u0019\\u0011�4�9k�TmX� E\\nֳZ�\\\\�\\u0015h�h�\\u0001�$i\\u001d\\u0014��\\u0002?�E��S*�I�\\u0002�b4 0<�������\\t\\u0016e:\\u0013��l�C��]bo��yS��\\u000fP��\\rR�z\\u0014�Ҭ��߅��J�+\\u001a��\\r��SI;i\\u0011\\u0014\\\\�&ސ�\\u0011��@b�4|#]I�>&��=\\u001d\\u0007?L�OJ��}���)�S~��\\t?�ȍ�e��G�\\u001e$y���/�}�Tfh�+\\u0003ev\\u0017$t��a\\u0016<�]�ۄr&Nd�\\n\\r�k�\\u000e\\u000bi]u�VҤ��n[g�ZY�ݢu��\\r�\\u000e�ѱ�����W\\u001cG��]\\u000f}�8��2$jU��\\\\�\\u001d+���lb\\b%�?�ֱ�4�u\\u0007W\\u0012�\\nM�4甄\\u0013�-V�?2\\u0011h�(<�X*�!T\\\\��D����\\u0011�Ɵ�\\u0007�\\u001b;]��ks��\\u000e0\\u0016�&��\\u0001�\\f>�{�U\\u0019؀���\\f������\\u0015��n��̡\\u0001-&����+�\\b\\\\\\\"\\f���\\u0003/�\\u0018\\u0000ׅ\\u0014�B�\\u001c�1�U4f&��\\n\\u000e'̘�\\u001d����)\\b\\u001c\\u0007*�oe\\u001b^�fC���R�L�&]X\\u000e��\\u0016�޶��A!`��iO��q��Ӳ1_�7�e�Ҝ'dƒ/ND�G��O�\\\\\\\"��ˇ\\u0011\\u0012\\u0012��\\u0005C\\r\\u0018\\u001e��L0{�\\tq�\\u0006�8\\u000b\\u0019Y�\\u0002�Qk\\\\�:$\\n�v����Nc�\\u0006�?/\\u001a\\u0000�7�\\fO)�\\u0019�0���Z�x^=X�<hV�\\u0004\\u0018ԩZ>6O��x��`J�:��T��.\\u001c�l�\\b\\u0017Assj�\\u0011Պ��a�\\u0014\\u001fc�}�?y\\\\\\\"_p(\\u000e�\\u0004t����\\\\�$s��!2T4`�\\u000b�\\u000e[T��\\u0001�\\u0017�mozδ�rX,\\u0000�jH�\\u000f�a\\u0001g\\u0001[�&��\\u0019�\\u001e�\\u0010��\\u0010�k�(`\\u0005\\u001e�\\u001b堯\\\\\\\"\\u0001\\u0000M��F3�P7��V���\\u0003.-��n��\\u0000I:\\u001a\\f�lt\\\\\\\"�,`�:�\\u001e޳��0\\u0007� \\u000bxiC^\\u00011\\rN|=\\\\�ۨ���dĘ���[�U\\f8�b�I �D7G'M�\\u0004xT1�Sܛ�\\u0015g$orEP����y\\u0015%\\f��u�z�\\u0005��4*<��b\\u0007����:$�G�e\\u000f�o-A�d�\\b���K�7���0\\u0016\\r�=6֌Ɠ+&2��*�\\u001b���6�\\u0005�4��\\u0000O��\\fa:\\u0001�\\u0015\\u0003I\\f�{+hO\\u0000G+uѫ\\\\��Z%�\\u0010�ԝ7��\\b1�ڴ�3#q\\u001a\\u000e�°\\u0019\\u0018�A\\\\\\\"���\\u0004�%��N�\\u0015R(\\b8H\\u0005��|�fE.V3�\\r��D�8�\\t�t%T\\u0002���׭�j��I�O���H\\u0001�\\n�ַ���3��T\\u0004�\\\\\\\"���r���X�.� _}7sā�.*�H��?�2\\u0006��j�8�a�_�Ҧp�\\u0000m��.\\r\\n�� �\\u001d�\\u0006�\\u0017�L�\\\\\\\"�{i�Nw�6ҁ���h�w\\u001d\\b�\\u0013\\u000e���Cp,hv�2�\\u0002+������\\t�&���\\u0000�[��*\\u001aI\\u001eW2Hy3nkc�2%����x\\n%{x�\\u0000��\\r��U�\\\\\\\"�y�G+��©HeY���œ�\\u0005���\\u00022n�ۥdP�V�A7�<)6\\u0001#\\u001d��\\\\\\\"������#��\\u001chx�P\\u000f&�AB\\u0018�`�2Y\\tǗD~�����\\u001a���rl\\u000b9�\\u0000�5��ܷT,���\\fx�M\\u001c�Y\\u0014��\\u0005�\\u00106�H�\\u0013%E�\\u001b|E}\\u0006_i��Â�\\b-}u�Y}�\\b\\u0013�y\\u000f\\u0011�����\\u0000\\\\\\\"�8x9R\\bЊ�\\u001e\\u0014�?\\u0011�f\\u000be� ڕ��ڭY2Z%J��\\u0000���\\u0001\\u0001OT�n]u:P�\\u0002R-��Yx��\\u0005G\\u0017\\u0005u�e�ȱ3F��\\u0007�M�MP��鋐R5\\u000b\\u00075,I�\\u0003��~`Z�;\\u001f��vi�RHD0r�q)�̑j���\\u0011�Sv$�5�6�\\u0001 u��\\u000e \\u001f�ǀ%�H��!\\u0016$x\\u001bSG�\\u000f����K.B��\\u001a\\u0011�jE���[<�Y-�\\u000b*��\\u0000y�V���\\u0000ව�2�?��k�;���{\\fM/�X\\r��}�D\\f�����6m���#�,�H��j��\\u0013C\\u001c\\u0012\\u0011h� ��b���UMV2O��� \\u0014ca\\u0018f���T\\u0019\\u0006@P�\\u0011�P��,)�$\\u00126�\\t���\\u000b�~:�0vɟ��\\u001a\\u00106�޳uȼn��G\\u0012ױ\\u0016����e��\\t\\u001b/&�Y\\u0002�O*\\\\��i�K��W�o͉�H�����\\u0001�[\\u0003� ޘ�uH�\\u0000S<�r#��D���N�ɕ��\\u001b׍���\\u0001*\\tF\\u001a���Jtԅ�| l<1*���O�\\u0002���m.+'�9\\tq����^�)\\n�\\u0006�\\r������@cq\\u001b\\r�����~@��\\u000b�%\\u0005T5��\\u0002�vv>�K\\r�\\u0013�s�V���6l��F��\\r�\\rM`~\\u0013�\\u0012\\u0001\\rm��X�\\\\\\\"ܽ�\\u0014�\\u0011bt�qq�K�\\r����Вŷ\\u001d\\u0000�1'\\\\YY�K\\u0002����&�#�丞��N�,�p<F��>|3)\\u0000\\u0015c�5�v|\\fU�М�x��ŕ�\\u0002tޛ^\\u00186���\\\\<��L�\\u0011N����V4����C\\u000e6D\\u0004�2�S`B\\u0005 ��\\\\b��\\u0012ǙQ��A3��+�6h�\\u001e�\\u0013\\u0019���y���h���nw�R��W��犋�\\n�\\u0003����0(=\\u001c�\\rN�q�L�)\\u0001�\\r�.��sS�|C\\u0017\\u0017����W��*)*�#����#�0fR��1��iJ���V�mG/\\u0003�j��T+e��&6 �x�څi\\u000e'�\\b\\u0007qz\\u001c��Hcb<EY'�\\u001e�ՇANPp�ť)\\u001ceʃn��\\u0019^�\\u0012�\\u0012��]5�P��dC*�(V�}Q��\\n�\\\\�a��\\u0000T�P�֚i�[���=��\\u0000�\\u0000j��Մшۈ7\\u0016�\\f{�S�J��\\u0018h�]|�s5��\\u000b�7AIL�\\u001bIx(\\u0014���޼�h�VƔ������x�>���7�$[3���\\u0013M��ba��S�Co\\u000e���\\u000e�\\u0007쮮\\\\BG���vY$\\u0005�>ݶ^�:�߉+\\u0000=��&w�Y�\\u0018�k\\u0000o{�����\\u0018\\u001bJY�����\\u001e�\\u0010�����G\\u0007���`���S�U,��5��Uo��'DZ��`�W!��IS�RE\\u0013\\u001ft�$\\\\\\\"�����=�*l5�N'��\\u0004��o�m��[\\u0017\\u001e\\tQ��J���T�\\u0000k�\\u0016�L\\u0017|��>���F߅\\u0017���1VY���\\\\\\u000bsk\\u001f��Aح�X��]\\fL�\\u0012\\u0005!l�\\u000b�\\u001d���UY�%�M�-`����4l���E\\u0015��\\u0000�!$��ź�+g�ʸ-*�Zޡo/��Y�n`&�R\\u0001$j?�-G��5kNJK�h*r\\\\���U+��H�F�B7\\u0014��\\f� (\\u001f\\u001d:[�(<�ҳ�YC�Y��m/�\\u001c1�՜��`\\u001a�|�<�G\\fd>������)#x��qgSf\\u001eu-AI�Z�*R\\u0018l*\\u0011@\\u001f?�X��f�\\u0000���oY�X5��*����K\\u000bՈ��&_�;��O\\u000e�k\\u0003�xe\\b5\\u0006�B��\\u0006���K���0\\u001f�-��W�L~4,��ټM4\\u0005j��@�1�Y��\\u001fN�ǭP\\u0002v\\u00175�l�\\u0016.毖�k����bj�\\u0014�>��1�\\u000f\\\\\\\"# X�B��|�F�\\u0010׸\\u001a�J\\u0007\\t�i�2�dB�U��-Ҽ����a���VF��-��u����x�&t9���\\u001c���:����$r��I\\u0004�ĩ\\u001cN�mD~�,rq�\\u0001~\\u0011���7;�Y���\\u0010�WBua�M%�\\u0012�����M�t|\\u0018J�\\r�\\u0004R��f\\u0004k�1�x##\\u0012Q )͇��\\u0011a��Z\\u0013�\\u0011(�\\nB��\\u001c��\\u0005��qb\\u0006�:0͎V��Y���t����e\\tڣ\\u000b�1�\\u000eV��R,O\\u0002G\\u0011\\u001a�\\u0015�y琋y��$\\u001e,�J�4�\\t\\u000e�~\\u0014\\bQCh�\\u0005�U�0\\u0001��ҵ2�\\n��\\u0004��\\u001d\\u0010�˭&\\bI�\\u0007)������OX\\u0005]�$R^�V\\u0010��d��mL�vv\\u0006Cr\\u0006�kд\\u0003G�(\\u000b��Y�\\u0019R�[A�Zֹ�'��\\u0014\\f�%\\u0000\\u0001���3\\u0003~�V�F�\\r[����X��F�\\u0000}\\r�2Y1&F�T�M�\\u0001Gl���\\u001d�RI��E�\\u0007�(׮�3;91K����E�9�\\u0002��ـ�|M[#\\u001a\\f�\\u001e�iO�2-�\\u0000ڇy��Ɍ�\\u0018�\\u000b��j,�@�H�\\u001d�r�����[\\u001f\\u0003F&L�J]J����Yw\\u001c��lh}�G���\\u0002��#kU%�y=\\u0011�Wm4�Rn\\u0000����x�ki�Y~6�B䖚p�ځ�;\\u000f�\\u0002�[�%��ms��G*��`\\u000b����Xl\\u000f��n\\u0006��6:�*�-o�\\u0018�H�\\n�\\u0014�\\r}����\\u0014И�\\u0005\\u0010Jұ\\t�\\u0000>Z�\\u0016Uw���6_�\\u000b١U�F\\\\\\\"��o��$+\\u0013���h\\u00036]��_��wy�b���\\u001b|����IR@���j�����I_�\\u0018����#��I$\\u0018l�\\u0000�\\u0001�m~`���ZU�q��$\\nL�߹�<m\\u0019>�*�\\u0016\\f\\u0019G�uX��v0�\\u0010\\u0019���f�\\u001aL��\\u0012F\\u001d�1D��5�\\\\�žB�l>�M��\\u001d��\\u0002{�\\u0002O/T�r\\u0002��4��x}0;N��8�\\u0005�+f��+�����:�˸��\\u0013�[v(9L�|k\\t�>�#L;\\u0011\\no�X7\\b͸\\u001dwH�{|�\\u000bY��f�\\\\���\\u0018�R,A؊�X�C�\\u001b��yyS��s>un\\u0013ɝU��\\r�zH\\u0000����O;z�:\\n��\\u0018)#��g�!�^i6\\u001d\\u0014ucE��\\u0014�ʨt��b�\\u0000�o�ʅ��\\u0014��L�<�op��\\u000f�WƑ���Q��\\naNVB$����õx�\\u0014XW�D\\u0014PY���=�rn|55�A\\u0006�U,mI�X1\\u001ay\\u0002F�'�j�;Gj|\\u0019\\u001aSf��\\b�M��N�\\u001aǵ����zj�(�{�\\\\���KI\\u001e��\\u001cnݎJ�\\u0012�B\\u0001��Rk��Ĺ\\r)݉f��\\u0013z?�d6C\\u0012~��\\u0003\\u0004>�6�\\u0003J��*͞�ԛ�\\u0015Y�\\u001ae�\\u0001Đ$\\u0004ik�M2��ɘE�\\u0019�<�\\\\\\\"�\\u001e^��\\u0016޸�F#q�Ac�>\\u00118s�(\\u001eR�$iu\\u001fP�Bmj�4�rE.�\\u0013\\u0019�8�<\\\\gt�5@x-�����Ea:�]�faS\\u0001��P9�����\\u0002��:�\\u001bs�@hG��-\\u0013D8�1�\\u0014\\u0016��՚J\\b�Q2=�nL��<�Q�i^Ex\\u0018��A\\r�$u��J}�m�\\u001a��0I�+���ª<�F��#�L9\\u000e}F��t6����LIN;�chDnl|\\u0001���l�\\u0014H.\\u0001�t\\u001f*\\\\\\\"\\u0017�;\\r��>U\\u0016є�\\u001a\\u0002���3s\\n�X\\u0013����Ʋ�$�x��:V��\\u000f���㐓-Ֆ���Q����.�:�|lP�L9��U.�\\b��9�t\\u0006��OP�b:Үޠ;��?\\u001aڶ��\\u001a���Ԛ������Y\\u0019\\u0000 fe����P\\\\���Y\\u001f�����&��7�!�\\u0014�1�\\u0001sM0g�x�e̱D���6\\u001b*�$�T��)c\\u001e�[DP\\u000e\\n\\u0000�C~������\\u0016S\\u000b4�\\u001b��\\r�QsGI�ا%\\u001cH\\u0000�W\\u0006Ǯ��\\u001b=�w�R�\\u001f7�E\\u0015�HY�VR~�-\\\\�NL���籕�7�vE'�\\u001e4l��;\\u0007f ��l)_rȋ*U*����i:@S�[A�~~'�Lr\\u0010��H��\\u0000�I�[q�\\u0010�@�o��\\u0014-Z9\\u001e)\\u0016T6t!���J��)�gh\\\\\\\\B6:���ï�{zF�\\u0001��pwH�P�z$\\u0000\\u0007A��yV�}�G�%\\u001c�r���WoM�8�\\u0017(ǿc�J.\\\\\\u0004\\u001fiO+~e���W?]T���\\u00064��b�Y6�#J�x;%�*H6���6Q\\u0007�R/V�*��\\\\\\\"��F\\u000e���\\u0005Ce#Î��ޫ�\\u000f<��Ƅ��\\u0014R�mj\\u0013�Hʛz�?#N�r��+,\\u0001���(*����V1s�j�`Ǟ\\u000e�U��\\n\\u0012�AQ�@����\\u001e�+�\\u0018i'I��$V6�n7�]��ux��!X\\u0011\\u0014��\\r��\\u001dL�A�~\\\\\\\"K\\u0012�py07c�R\\u0001nK~�ګ\\u00060����\\u0016����\\u000b�[P߫�@\\u000b�1\\u0000�P0�[�h~���S\\b̯#��@B��hȾ�ڡ��+����{lȄ\\u001b��\\u0010w\\u0002߉���s6\\u0004�\\u0012r$\\u000b��rh軉��\\u0004\\u0012�6\\u00067\\r��\\u0006\\\\\\\"��!\\u001d��%���R-~�ڕz�>�VY�r���SL\\\\\\\"UGE\\u0002����(8#D�hA�j�\\u0005���X��y\\u0017�U\\t��r�W����1��ߓ\\u000e�\\u0003��ab�{����{9�\\u0000�H��h@\\u001e6��(<���#�^aVڱ\\u0003�|i�\\u0018�\\u0005�\\u000b�se��}�ʏ�N_������Y2\\nG&��6݅;�!��v���`��-���\\\\��?����F\\u0007�cLb�?��f���!:\\u0015?�ºUZPv��9{4S\\t�s�\\u0017+2\\u0017�����\\u0010y�ڰ�\\u0015[�M,�\\u000b(W@��_N�zS�Ȱ3�yRO\\\\\\\"/\\u000b\\b����{\\n�Jv�)搡[��w7[\\u000e4���6����M%T��a�@�Hԃcc��\\u00198��3?�6��k�~bo�\\u0012�\\u0006\\u0017M\\t��z\\u001f.��젔��\\u000b�\\u001a\\u0011�2Ȇ ��S�\\\\[��{|K&;��y|�\\u0014��s:��(��,�/�����\\u000b��j�\\u0011\\u001b��?E�M(\\u0013�2��C�\\u0000|�:SIdVr\\u0004<tЃz��\\u0014\\t\\u001cZ�\\u0007��O�[cO\\u0011q�\\u0015\\r��Fٗ��IZ\\u0014�O���\\t��2H:#\\r\\u0007��A�>B{�`�����#$(�r԰\\u001b�mjŻ�xȫm6DQr~\\u0002�n\\u0004��?k���\\u0010åf�9�\\u0017��4\\\\������#�#Q�k,x��r\\u0007��\\u0013�JX�x5�\\u000f\\u0012(\\u0013��i\\b<��k�y\\u001e<J9\\u0004\\u001c��Ы4�kL��U��\\u000fQZ�\\u0019���di!��u�I�k�\\u0006����3u],<klG1Ȏ4*.<��8�K�t\\u001e&�`�\\u0013�2'=mo�M`\\u0003�1^>I4�S��\\u0000!��\\u001b\\u001e��wg���\\b[^M>@Q\\u0018��\\u0019q�5�>B�ۋj9��Z=�E\\u0000*�����9\\r�qv�=�W$#j\\u0005�\\u0014>t\\u0012�\\u0002F��;ݴ��m]\\u0013\\u0002TX��\\u0014�\\u0000=(s\\u001e�o��<�\\u00079�2FX7浏³~/16މY^�nkȏ;ڂ��Z��z����%춶�4Di\\u0013�\\u0003�s\\u0004xkҀ.�X��8�\\u0015�\\u001f}h��;�i��Xqܬ��f[\\u0005U�V��O�q�b��!�<�w��4V���bu�\\u0001@ə+F�{0\\u0016P7\\u0016�\\u001b\\u001aM\\u001c��9bI\\u0002ޢM�),�I\\u001d\\u0006T1�����\\b�gh�\\\\\\\"!\\u001cу\\u0001�*��d�+�\\\\\\\"֬&Έ\\u0000@�&��t��\\r\\rD�gx��6\\u0001�\\\\�¬�QL�!��\\u0004y��1���=�-�FK\\u0005\\u0006%{\\u001d�p\\u000f\\u001f���\\u000e\\u001c����aGr:��7�Y����C3C�\\u0017��\\u000f�W�+>3\\u0000\\u0005����\\u0003����\\u0015����ZJDv\\nl�\\u0007J�8c�\\u0017�ӭx�\\u00066ڛ�v�0����\\u000eDtִ��*�ܚ����\\u001d0�F_��\\u0002G��<�Z\\u0014\\f���Q�2͍#)PQŁ�a�(8��6�4��k)���O`��䜼�z�?�WJ���\\u0006�A�\\u001dN��_;�Y!�܉�:� ��5���yc�#�R�d���:��h���F��ƧC���,����\\u0010\\u000e�|�?u$�7���s2��\\\\\\\"\\u0012#H�����U���+��?�N\\b�Ss��\\\\\\\"����~8�\\fsiA�5��d�x�\\u0001׭g\\u0018\\u001cG��We)�\\u001a\\u0016��g9��\\u0016&1����\\u0000\\u0013X�H�\\u0000n�u�\\u001c��A6?Q�J�\\u0000p\\u001b�GC��H\\u001bŘ}���\\u000f�\\u001a}����k\\u000b�[�}���B}�7�*�P�O*%�\\u0000����\\u0011�9\\n�\\u001a\\u0012H�Z\\u0011nE�o��|c;F�x��\\u0003G��8\\u0018$��Q�%�6;\\r�\\u00145��\\f\\u0002H\\\\\\\"_SY�l�>;\\u001b�T\\\\\\u0005�����\\r�َ���Z�n�4\\\\Ӎ⌟��YKm�T�/\\u0013\\u0001\\t\\u0011LX��6�&�d$�/{\\u0018��g@=\\f?\\u0002:Uge\\u0013E����� �\\u0007j�~����d�N�G\\\\\\\"\\u000e-���\\u0015OiH��\\u0002�\\u0004�E��\\u0010n�ַ�T˞8�OI:뽁�\\u0002��Z��S\\f�(\\u0017�v���\\t\\u001c��\\u001dG�%\\u001ev��U\\n�l6�k��\\u0018�\\u0016���~S��\\u0014\\u0000�\\u000f!��\\u0014nx��ژoR�#l�`�\\\\\\\"PM�d\\u000b\\u001e7�\\u0017�.BK\\\\\\\"��*.�赊e\\u0006�_v�Ժ&�%<ll�ܮE�ڎ;i�L��m\\u0015\\u0003n\\u0007���VJ���\\u001e5���u{\\u0012z�o­ɭ�ڜ9B�,�gE�^�W\\u001e\\u0000\\u0005'Z]\\u001c��[�Z2)��\\u0000oj�pK\\n\\r$z:�t\\\\\\\"�a\\u000fk\\n5\\\\\\\"Ġk�u4��#�/����]\\u0004��\\u0018���\\u0000yiBb�W��Fn9\\u0000z;�gϪ�똋\\u001e\\u0006w'�N\\u0007r|-O�{�$��z@�H�\\u001cI��X\\u000eF��I�%!n|q4�`��Bo��\\u0013�ڇ�\\u0012yn�E��s�5�PE,j�\\u001b���\\u001do��\\f8�8m �$�\\u001a�u\\u001c��=�\\rfk����m\\u001b��\\u001e\\\\\\\"��\\u0001$�\\u001bxW�(�\\u0012E�$�0b\\u001cosz\\u0017620�V�Pm�Q\\u0001\\\\\\\"lEBX7�L\\u0016R�('��V�8�ܨ'��מ�_�(K27i6��&u��15Ք[PE\\u001d7j�\\u001f�&\\u0005YC\\u000bt��\\u001a\\u0018r\\u0012gK��˹wȊ\\\\\\\"��k݆��M�\\u0012\\u0007$!\\u00006��j׵�.>r��$�\\u0013�}��V\\u0019�ω�R9�\\b\\u001dO�sz\\u0010\\u001d��\\u0002��$oX\\u0015S�\\u0015ˎ�6ȓ��Շs�\\u001f���*��W��\\u000by:C\\u001cw�}��3\\\\����ݿ�/� ��$�#��5�O`�a�L\\\\\\\"8�\\u000e��6L�(<�]�Fdws�\\u0003ı�,-ȵ�\\u0000�-d+�Ge�k�tM,��<�E�E��nGAz����\\u0003�ޚv�����x���]�ڗO��L�;�`�Lmo�s�[�5�\\u001eA�\\u001bI��������\\b�,�Z=9\\u001b\\u0002v�\\u0013.\\\\i\\u0011�\\u001b��o�����1�Eb,,�)̒\\u001b��ؾ�\\u000eM�\\u0019�B�\\u0000Kx�Ɯ���u�\\\\\\\"\\u000b�\\u0015����5�j�\\\\�k��^��l\\u001d\\u0018�\\r���\\u000f�|�t�ܲVyf��s�\\u0017\\u001c��rk�雛.*J�G!Cs\\u001d��<F��3fS��u\\u0016�_5%q�+��M�__�J�)3����+���؆\\u001f#�(��_�pU\\u0017�\\u001f��L��s��YH;Ug��N'Vؚ+N/\\u001a\\u0010ܰ7��q�𮷷�{}�\\u0006W\\u0000\\\\\\\"\\u000b�\\n�?JI���\\u0017\\u001c�.�<[q�,�\\u0002i\\u000e���fL�>�\\u001f����ZĖ��?\\n����;R�L�Þmd����3/?\\u0017ۺ0s�V�i΅&���\\u001f\\u001dk\\f��)�\\u001f���+J�Η�xU��S��R��;x\\u0005i���u$ؓB�\\u00103�$�N�w�y&)YYE�yU1�O�\\u0019N��\\u0011+\\\\\\\"Pg� \\u0007��#mn>�M �8A$�p��ۍ\\u0015�����҇`�:^�[XC3��,>�[�\\u0000ڱX�\\u0012n\\u0005kc`\\t��:�9G��庚���E\\u0011�k����k�iJ�$��u\\\\\\\"�U�\\u000e�Z\\u001e�SY��\\b�P�M����[W�O��c~�\\u001d4��מ��C\\u001fR�\\u001f��N�1�\\u000bV��ndsU>�\\u0014�>5�8�\\u0015*H#���*�Ia�w\\u0002�AM\\u0006��[�L�\\u0013$i�\\\\�$l:�ʲ;#\\u0006BU�QS�l.(?�b)8�8zτ��:��[U�L\\u001e�$R���3�ȁ��yP��G\\u0013<R�6�_I�#�Y\\u0013\\u0017)\\u0013(�\\u0012qne}7#ƥ�M��\\u0010^Y�����{�sn���K�$ŖE�\\u0014�6[�\\r��{�L�k�2z[��>\\u0014.\\u0014\\r�\\u0007\\u00067$��.�ٵwm�a7�E�7\\u001a\\u0011�vݯ�ŕ�%\\u0004\\t\\\\\\\"[L��@�\\rq5�>D��^&� �\\u000e�OCZ�Y�}��\\u0019@�\\\\\\\"V8��U��͚�\\u001eۙ\\u0000bT\\u0018�\\u000bt$\\u000e��\\u0000\\u0017(C\\f�5��[��`�H\\u000b+�h�B\\t'��9� �VL�\\nx�\\\\����Ǎ1���[��f0q�Y��&��*�bD�{K�Ry\\u001e>5\\u0011�.s\\\\\\\"���y=2�\\u0011\\fE�\\u0002Wz���S���\\u0002��3\\t6k�pjx�L��&\\u0005\\u0006���\\n/\\u0007\\u001eY\\u0003s<�5�#�[©\\u0018�.H���0�Ϗ\\u001ad�i��iҥ�9A-�� \\u000e�[�#[Rܢ\\u0012r\\u0017k\\nm�;�$��\\u0000���\\u001e�\\u0010\\u0007۽!$�s�;�u��7����P\\r��\\\\\\\"�2�B\\u0015̐�\\u0005�\\t\\u0017�7���&����\\u0006�\\u0017N�\\r=v0Y�%�eH'\\u0001�Ҳ��&7<�Kփ\\u000f)X2�\\u0004yѩ\\n\\u0000\\u000b���mzhV�k�\\u0017\\u0019\\u001ax��\\u0000@���)�n1�\\u0002�y[Bk\\n�1]��5*\\u0007]�\\u000f�䴒\\u000eA-a�G�t\\u000b\\u0010Qn�i/c�8�\\u001a�7���[g?\\u001f\\u001ax[BF�`|i�\\u001a`����E��<k9\\u0000\\u0002´\\u000e���\\u0000�]������D��\\u0011�\\u001f�(��K��`0�%�/\\\\\\\"M��\\u000f�տ��<a'n�D�6��\\u001doj_ز\\u0012<Y�\\u001fP~Du�\\u001f�Cg��ؐ�Xw��}�5�W֟c�)�MU��\\u0013\\u0002a��\\u0002��\\u0015��\\u0015�������4�_����\\f�5i\\u0012%�9M��[.���4���d�\\u0011ִu�N\\u0002s@\\u0013�\\r�\\u001a�c\\u001eI�4��,-c��\\u001b҂ō�泋��rx�\\\\\\\"�\\u001f���\\u001f\\u001c\\u0019]r\\u001c�\\u000b8'�'\\\\\\\"\\u00016�<|A\\u001eub��T�\\u0010c��t��w32\\u0016�e'n�\\u0015\\f��8�0\\\\\\\"��5|��x�\\u0007K�3\\u001b\\u0001eR�0������u\\u0007Ƨs����K�< {�\\u0001�ԍ?-��?E܆�$Jo���\\\\\\\"�d��$�x�\\u0018����P�W1��Z�\\u0003)'\\b����<T<N}�*��\\u0016\\u001c���9\\u00134�<�,�nEi\\u0000�y\\u0013\\u001e7�d�\\u0013[���\\\\\\\"��gB\\u0010\\u0016 ^�|������\\u0000$\\rͫa�X\\u0003�kŸ́�Ə\\u0019���²�&\\\\IBI{/�#�!�=��VEH\\u001a|�\\u0015\\u0006v6J��&\\u0017�� y��\\u0002�zX�\\u0011�I��\\u0002��L�<\\u0014طK���\\u0019%X�\\u0015����t<M�dbm�r2\\u0000\\u001bM\\u0001�5\\u0002\\u0002@\\u001dt�R�o��z\\u001fJ\\u0000�\\\\T\\u0004�\\u000e,7�\\u0019���\\u001f}\\u001b\\u001b�l.!�\\u0003�P�h@\\u0010\\u000f�tވ��0�\\u0018�F+2�`\\r�\\u001c���Ɓ�\\u001a��xp�\\n�\\u0005h�����H�3��c�/=@;��Uf�\\u0010�\\\\\\\"IrŅ����I�\\f��}u[n\\u000f��\\u0014���\\u0007���^�\\b\\u0007�yҒ�Y�p�<�\\u0004�/\\u0011b\\u0010/�j\\u001a\\u0018�ܔ��$��`<\\u001bΊ1E$,\\t\\\\\\\"ap%\\u0017W_*�\\u0015�2F�\\b䉶\\u001b7۹��{�^(\\\\\\\"91�>����\\u0006�@�9\\u0015\\u0012�a�ʖ�H�\\u0011*�����E�Fu��\\f7\\u0014�k@�֎��\\u0019\\u0018ݹݘh8�l\\u0000�!\\u000e1�+]Xܲ��f'���u�N�2�q������z\\u000b+\\u001b��\\\\)Z>�\\u001a\\u0014%d&��}�\\u0016��.�P�i��D3(\\u001b��_\\n͑\\u001e-G�n<k,�Sؐ\\u0012\\u0001�ֹ�cL�_��/��G��|�?�m�6�Uu\\u0002ƹ�\\f���Y�\\u0004�\\u0004Xo���[�\\rm�6�\\r\\u0018�-m��ۚ�����|��\\u0015��j�[S��h\\u0019�#;\\u000f�\\u0000\\u0013���\\u0001���\\u0007٭4@���o��I�qH-\\f`�K1\\u001fp�\\u0004�m^\\u001b�|M{R�R!,�9��Q˙\\u001a\\rz�j�\\\\|�f\\u0011�\\u0011Gap\\u000f�Q��t`����]\\u000e�����*J��o���\\u0019�+\\u0010\\r\\u0016#���f�mo\\u0016)����H���\\u0019\\u0013��2\\u0006\\u0000���\\u001a��҉�q�M\\u0005��\\u0016�8;\\u000bZ�Di\\u001dQug!G�׌nܺ��f�\\u001c��>�\\u0017�~��5�=N�\\u001b\\u001da�#\\u001bF�\\u000f����!$�o�o\\u0013�Ve7��ΰe%�\\u001f\\u001d�/@\\u0016f���\\u0001q�\\u0005r2?9\\u001d�\\u0000���Mun\\u001c�M��r���4�#\\u0011�\\u001a\\u0010�V���X��\\u001eV��\\u001d>ͨ��\\u0000mw�\\u0011dH\\u0001W\\u0001��A�\\u0017\\u001dh\\f�i�g|y׌��2��/��\\u0001#Hs��v\\u0003\\u0005�R#�򨳔��\\rj��\\fcB�UXɰ+`/Ja\\u0019Ii�\\u000e�\\u001b\\t\\u0014\\u0010/�}���㕗�q�P\\u001b\\u0010VA���\\u0015\\u000e�\\nV\\u0007�P�³��\\u0002F�!�e\\u0017\\u0017�F˝�&\\u0017�,ed�\\u0005�\\u0016��*�A\\u0011&6\\u001c�����޸\\u0015Ԩ6��wr����z�`�֏�\\u0000�����I�����N����ӫ��ܳ\\u001e��6�ܳ)�k ��^��l|��y\\u0004x�z�s��Ҿf���h�ȯuف��\\u001d�\\u0018\\\\\\\"YC��1����|*��\\u000e�h'���v�\\u0012@E��Y,\\u0001k�ۭ*�\\u00165�>g��yr��8kƭr:^���\\u0012ܞ�r\\u0007�l�\\u0017m�k\\u00156`OJ��_:b.\\u0016��\\u0000hoxt\\u0006��z\\nM\\fq\\u0004�Z��1+kҵ˕\\u000e���oﴨ\\u0018�y\\n��\\u001c�JL�P��c\\u0004�.^\\u0007�g;\\u000f�cZ%+ܛ)�\\u001dv�#\\u001d�ד\\u0012I�\\u001dQ������x�c�\\u001f�Z��G��!��\\u0005�g\\u00114�E<=�X}V<y[�J\\u001b+��\\u0005}�\\u0004�4�+�gh�-H�#���N~$\\u000b,�\\u0015C�ǉ=\\r���#��4��0�sUo�7���zq/��<o\\u001c���c��S�`B�x�Q�����\\u001a�\\u000b�\\u0003¼�D�\\u0004����ժ�c\\u0012Iϐ���\\u0001Lp��\\u0018�����6��x2\\b`�E�o:\\u0016��;A�(�#�!a��C��\\u000eR���,.J�/Y,�O4k\\u001e��P���;q_J�\\t\\u001b�M*�)�6�*\\u0010\\u0018��V\\\\\\\"�Ƴ�\\u0001aPw:��\\u0001F�����j�\\u0015�Dɣ\\u001d\\u000e��L淰�Y:/MjFQd�iG�V�FC\\u001d=\\u000b�Η����p9\\f�\\u001a����W��$Gk�7�m�\\\\\\\"Hގ���M:ބ���e���[�+bl,6��BddF�gk���������m&|\\u0002�5�4�\\u0000\\u0005�@{�u\\u001a��]���밡R\\u0010\\u0013����z��v�q�\\u0005\\u0003p\\b�^�P\\u0010�\\u000e�\\u0015j\\u000b\\tb��~a��\\u0015\\u0015��#�7x��񶿍\\rZ�:c��6\\u00165-fF�<��\\\\�\\r�r�s��$\\u0006��\\u001f��\\u0017�\\u0000\\f�1\\u0012I��R�9�\\\\�rx��\\u0015�¿1��!]\\u0006L��He�đ�\\n��]j\\u001e4-dL�Q�\\u001d�ڢ�^���^�Tބ�(��z�ka[-�Rƌ�۵�ɡ�ݍ��U�\\r䷀���I-��O���\\\\\\\"�(�ɂn+#{v�\\u0000l���n*�\\u0016�J�F�\\u0010\\u001a��M>k�p~\\b��\\\\\\\"#�j�jG\\u000b�u\\u0007�\\u0000ِ/򦘝��c\\f\\u001b܎�h��'�\\u001e+�҇��I�Z�\\u000f�z�61��#\\u0016\\u000f�ڝo;ȭF�Pt\\u001e�\\u001bk�\\b���-\\u0011�\\u0000� U�L�S(i^\\\\W\\u001a{�\\u0012���\\u0014���\\u001f�O��6gm\\u0018�n��j�\\b�\\u001eY|�\\u0004�\\u0012J�\\n�Y|u4~\\u0019\\\\�\\u001e�\\u0003���Jɵ\\u0017���dc퇷�_ƹ{o��mS3�'��\\u000e\\\\\\\"�(=Pc�\\u0006�\\u000eF߈�L����<�<A\\u001dhX�\\u0019���g�)c M\\u0017#kx�p��ғ�'���4�\\u0015֓^\\u00129\\\\\\\"\\b6;���,Ñ�ֵ�\\u0000\\fـ\\u0016\\u001c��\\u000fz��e�)�@�P�����{Y<�ƒO�4�*?��Ia������FV6�\\u0006����`�\\u0019 �i\\u0006ܒ'a��*a�()T�ő��\\u0003�,\\u00029\\u0015�`n\\b�e�$o\\u0017+Y�o:dҰVV�n\\u0006��m֑�g�Z2�O����*�Ц�ɹ�4�2�\\u001cn\\u001d�1!�:t�u�\\u0006+�:���$�d���H�\\u0002=D\\u000b��u�\\u0007�[���J�I+�\\u0011Ѽ�\\f\\u0018��tD�B�o\\u0019k��?-�V�9(�\\u0011��p�t���ք�\\u0002�� �j�\\u000e� f��6�\\u00148��\\u0016���=*g�\\u0013qV�\\u0014[N��[��޹��V\\\\\\\"4���O�\\u0016C��'�F�~��}�\\u000e��[[S��\\u0018@\\\\���f�4�%b�`A;�I/ ߁VS�\\u0003�t�1ܺߠ���>*L�,��ǋ2n���)���\\u0015�?��&iY�1ق�jO�;dH\\t��qt!��;\\u0011���\\u000f~9J��86��\\u0014�^�VGC��\\u000el9N��d��M��������\\u0000$\\u0002=#ru\\u0014���<\\u0002<�x-�pn\\\\\\\"�bE�\\u001ć l����\\u0000�\\u0001�_;�\\u001a��V�X��=�Ӏ�8��ۉ\\u0016�\\u001dH\\u0017\\u0000[�\\u0002���J��\\u0018�,u\\u000eN�~��\\u001dh3�sȷ5�\\u0000�U\\u0012N����\\n\\u0001��h\\u001a����1�\\u001dI5�:6T�\\u0006=����\\u0004\\\\�\\u0005jQYݳ7\\u0001U�c�9�e!��\\r���\\u0011:\\u0006V'Ɣ��\\u0007M.N�\\u001d�깘_��%�V�)�ذ���(�`(��������؎��n\\u0017΅�'�i\\u001b�p�\\n�t[\\u0001��\\u0001&;�\\u0000�r\\fv�j� c�Z`e7j����X$���\\u0018��i\\tU\\u001c��Ph.�/ru�F�(\\u00168�(��X\\rی>≖T�[��6\\u0007M����N>I�\\fp�2\\u0019%\\u0000}lֿ�t��\\u001fк���\\u001c�Z]Hӕ\\u0016�{�\\u0014s�S{��rZ6�i!>�ԏ3YTV���\\u001d��X��M�����\\u0010AdPx�\\u0000�\\n�1��DCk��k��\\u0017$\\u0015\\u000e\\u000f\\u0012.\\u0007@k\\u000f�Jh��\\\\�t��Y��3;\\u001dX�\\u0002kb��:���+\\u001f'�'�k\\rX۠��\\u001c�ŀb1����mu�_��N��\\u0018�M�G\\u001e6=\\u000b\\r\\u001a��Բ�]S�J��7Udݟ�A&D.�\\u0012�0��uҴÔ,ha��W\\u0012:y�j� T�t\\u001a��qe�\\u0018D�B�lzWm�Ԯ�����%��-�I� ���\\u000b�x֩�\\u0004\\nW�s�9�U���E7�b,�\\u0004�dr�\\u001a�/Fv.ή�n]k�a�\\u0011���\\u001c\\u0001c�d<���~'i3@2%b���]��o[�c�����UN��y\\u001c�����k9�\\u0001\\t;\\nt{\\u0012��a}�\\u0014\\u000fr�\\u0002�$�\\u0019:�K7ʅj��\\nɋq�\\u000b/�����^��𡺭����YI��\\u0003j�(\\\\\\\"�\\u0019�4~� ak\\\\hk\\u000eߒ�Y�[�\\u001cx��D@��/��iǓ+ݧ\\n$�D���Cn�Y�\\u000eE�\\b7�ƶ�\\u001a0��o��XL\\u0002�~�\\u001an��o��\\u0003�\\nK:�t+�\\u001e&��R��*T������m-B\\f�\\u0003�\\u001e�\\u0015�c��75�/\\u000br6\\u0004ڋF�H�p\\u0006�Զ���`b\\\\\\\"�\\n�@��*|ε�S�Ӫ�\\\\\\\" nX�mҚ<fH���\\b��\\u001b\\u000f��UWa^Ա\\u001a\\u001d��*�%\\u001b�ڻ���\\u0010BJ6��Q��\\u0018��9ЅK��z\\u000e��cI\\u001aF�F=\\b�-�\\u0000ҳ���U��s27t��d�`O���H�SD��2e��\\b��n�\\u0011���錋`śC�\\u0014�\\u001f\\u001aH���Z�Ҵ����\\u0004�Bm-\\u000f%\\u0019Ғ�\\u0006�\\u0016\\u0014#�\\u0006�,|�NUYq��\\u0016\\u0017\\u0015n�U��)�[O��j.����j\\u001a�D�Д�v\\u000e��1��\\\\\\\"�3(?e��Q!�l�\\u0017��}7\\u0017����]T� �\\u0017acКǻ���RǓJQ=N,�^�\\u000f\\u0011\\u0001c�O�d���\\u001bI�\\\\\\\"����WW\\u0006KG\\f�*�c��\\u0000�`PH��ڒ+��\\u0000.�K�^`���Ĝ##���S���Ƣ+H�\\u0010rc�\\u0015�J����\\u000f��y���eUSgc�\\u0001{Z�|kn���eWX�R-��7\\\\\\\"W�ʎ3#�B\\rΆ�e`\\u0005��5�X� �\\u001bzQ?oos�l\\u0015X\\u0016��LbL�\\u0002�i�\\u001cX�����\\u0015�!��J�\\u0000��m��7\\u0003JL�\\\\QX�\\u0002\\t=��rM���\\u0007qE�|�s�\\u0001�/dr�b�]F��\\u001et�z\\u000f���r\\\\\\\"���_-k�ȉ�\\u0014��(\\u0013�_��+��'D_s�e$�kiqD�\\\\\\\"\\u0002�VU�ڭ\\u0006.FK?����\\u0007K�hx����N�o�\\f�\\b��U�m�ƢZ��^ٙ��獒2m:�\\\\\\\"D7\\u0017��v�a��4r�J�̶�2~��j�\\\\\\\"�I\\u0018>����M\\t���u+�VF(૩�)Ѓ^U\\u0012Y\\u0011�`�91�U�\\u0017!A&2\\u0000޽�u�p��\\u0007��/���(\\u001c\\u000b�Qr@�\\u0019��#]:ѝ��/v2\\u0006���n\\u001e�E��mF�H@��?�?�d���.)��\\t\\u0001^%T��s֐P\\\\\\\"T�@�\\u0003Ʒx���ڍ���M)\\b\\u0007�D�������1О�t�r;J��&�:\\u001d�W\\u0006ԣ\\u001e��u�V��`SR�edb�8�Ѓ^T\\u001b\\u0012�J�,i�*#BC\\u001b\\u0006����\\f�\\\\|Y�\\u000bɀ��\\u0000��boȺ<�\\u001f%$~4�\\u0012\\u0004������=�4\\u0000��~�\\u0005������\\u0000�\\t\\\\\\\"ȎR@U�؃�\\u0006��%\\u0012�\\u001bq\\u001d\\r(��\\u001c`C \\u0003�%Kx�/D�4��8��F���a�ZI��\\u0012\\u0017�2�7&տl�o�+\\u0004kq:�ʘw\\u001c\\f��T�= �{\\u001d�\\nM���1r$P�\\u0019*v5���ۏ�O�Xř\\u0019\\u0017��\\u0003���2q�o:2\\u001e݁,�]�22�A����*�nJuP�M�?�H\\u0007cU���\\u000e\\u001c0v�Q\\u000bz�~5��'$�W��v$_¼�%�\\u000b�LG��hI>\\u001dkQ����\\u000f�W@��\\u0016���@>4�3 c�/\\u0005��m/��\\u0002�#xۃ�0�U��A\\u0006\\\\�b'�_��\\u0001�(\\u001c�s�'�[����D�\\u0010cR��\\u0000�Ȱ%�P\\b߯ʽ��\\f9\\u000b#ZR��w[�o\\u0001 ���?�/�\\u0000I�\\f,�/�7�J��Ŗ���\\u001f��\\u0006�\\u0016q+#-�H7�%G���\\u0010���_��v\\u0000hw𤹪Rw hޡ@\\u0002�D*J��F⬒$������|�\\f\\u0015UݏD\\u0017$ч\\u0002,a�K\\u0007\\u001a2����b<�R�!��Joۻ\\u0013Ϋ��x�ڪ)�0���쒖4��P5<z���B1�SY?mM��#�\\f~\\\\�����\\u000f\\u001aS��qf�\\u000fiĪ�Y���m�ԫΙ\\u001f\\u0018Ԅ\\u0010lw�YI��ť\\u0005Y�����{\\u0016DS\\\\!�\\u001b���D�Q�w��\\fb4��]�\\u0000��4\\u0015\\u001f۱�����>�z߭+]U6Ɣ�2����^\\u0013HJ�T\\u0000��mB����\\u0001W���t\\u0016�$p����ej�-\\u0018�0k\\f�\\u0013�?6�x���$\\u0010>$��Ѓ}\\u000f�W쬲�e��`A�\\u0010Ee�!�<�f�C\\u000fK�ԾF�\\u0000U,<�(\\r}�Oo��ζUUP�,\\u0006��K\\u0004A�\\u0019\\u0018]]�Ď�K\\u0011�J\\u0013\\b=��\\u0006Kܪ�\\t:ތ�!R��������\\u0014�T�|\\u0010�\\u0004|$\\u0016k���)\\f����\\u0002\\u000fJ%�Č�N�+KiK�\\u0010��7{�V�,��\\u0007��e,�_����Mm$\\b�ɯ}��Z&�\\n\\\\\\\"�����4R\\u0016�iz�v�\\\\轔i\\n]���`<�)�p�\\\\9���E�Ac���tcL;\\u001fo��b\\u0016�\\u0003�-��\\u001d~��½��2�\\u0011n<t7א\\u0015���d�\\r\\u0002��*���\\n#\\u0013\\u00039_�����c&6&jZE�\\u001d�A\\u001a\\u001diX�x�%O�\\b+�\\u0014���ΐ���YPyI�\\u0016��;zAI\\t�{.N82c�v=����U�wt8�\\u0018�\\u0007�m\\u0018\\u001f��+�R�\\u0005\\u0003[\\u0000|Ǎ\\r�ڱ����2\\r9���N�בZ�2�E���7�����\\u0014<��\\u001b\\u001f*X�w>�yDL����#�(�N�BI���Ѿ��j��ɓE뽵�\\u0018�9\\u0000X���\\u0018c7?y�$�d\\u0006�:��\\u0010\\u0012\\u0004��ku\\u001e?*�L\\u001dɷ\\u001eZ�WhY���VRF��xR��\\u001c�p�\\u0013Cդk��ҫT�;���K\\u0001p�Q��J p���f7Q����αi�?I �\\u0003j�_�>�K��\\u001a�M\\u0013\\u0001\\u0001Sʷ�ܑ�±ƐB�OZ�� �h2G�mu��\\u001dmDI\\u0006:�`�y�vR>8\\u0007ȜJ\\u0000]�7�*�\\u0000:Uj��00�%\\\\\\\"�\\u001e�q{X�{��r%�\\u0018\\u0018\\u0012Ȁ\\u000b\\u001f\\u0001�m�\\n�<�{K��\\u001dk+���{�\\r�{�$\\u000b���'S�G�'��W/#\\u0017s�:�6.ӐX~��\\bt\\u0004���t�g��\\t\\u001e�d;5�Zp��8\\u0015����q�D9\\u0004�M\\r��m��9\\u0010\\u0018X\\u000b�NƱ��\\u0010�^��Ƚ��\\u0019���-k��zu+z8���\\\\\\\"�.ݝ��(s���\\r~����@�)�\\u0010\\r�.��\\\\�q�ϖ��Wп�ƚ���\\u0018�cwm\\u0013Ȟ����dg\\u0007�'��¨e\\u001f�ku&���(\\u0004�ڂ�]x�\\u0000UT�\\u0001��\\b�\\u0004spt�:|h�U\\u0012��DO\\u001eF��i֋I���\\u001b��\\u0015%\\u0005T�\\b\\\\\\\"�Pv5(\\u0002���t8Q�pᷤ� nM+�\\u0000���\\u0000��\\u0000�\\u001fΘ�����4^�?\\n@5�����;\\u000f+\\u001a���X��=mYE}GO\\u001f�xW�\\u000e�F�1�(��P3�\\u001e0.H\\u001f\\u0012\\u0005s9�6\\\\�\\u001b��Q�g4�<�+�Lo��\\u001d��#�y�S�`���?�ǐ�Kj~U˹���e�>�I`̚X\\u0001e��2Q�!���*-��\\u0010�Z\\u001f�=�3\\u001d�a_k��\\\\G\\u0016V�ۖ�_�\\u0016˄��ۢ�U�]�r�k0��\\u0005����2bd*��J�\\u0017��\\u0000\\u0017\\u0005|\\rr��!`\\u0005��|/�u�p�����L�3\\u0015V:hۀ>\\u0015�4f'(E�6�D��R;����<MTLo\\u0005r\\\\\\\"ŗ\\u0011��\\u001c������V��4�?�Q�?\\u001a?6P\\u0002��\\u0000y��\\u000b\\u0014wr�\\u0006�\\u001aQ\\r��k'�T�T�\\u0001�W\\u000f��|N�2/��\\u0017_�z���2 H�Vp\\u000b���Z���~���RX\\u0012\\\\\\\"\\u001f3sj��-A�:l\\u000ey���v�\\u000b\\u001e\\u0012������5���q!�铄H���\\u0018��>~4�\\u00176HD�c\\\\\\\"�\\r�믍`�)P�[��\\u001b�|�\\u0014�T\\u0016��)R�J�\\tR�\\u0004�\\u0001rz\\n3\\u000b�˒�����\\u0016>\\u0002�M�\\u001d@\\t6\\u0002��S၇\\u0019�B-����ZG\\u0012�O��\\u0000��\\u0001��p~I�(��fL�p��l�zG����\\u0005ȕ��SA��b���}\\u0016�隷\\u000eI�Z;�_�v�Up^���%��aK\\u001ef��K� ��bV9\\u001b��\\u0012I��s#j���\\u0007V��o�����[f2�՗�k\\u0002|�\\t\\u0000pC�1�zy��[M\\u0004�o$ܼ\\u0001\\u0015��u5Zh'�80\\u0017�ţ�O��4\\u0016/ni�\\u0011\\u0016\\n����M�,�X0��@֫\\u001e:��@ǐڭI.\\n�`ς^)v$\\u0015���Ig�n<�x�Y�\\u0011*�\\u001b��\\u0010rc�\\u0015Z?\\u0000pB��1��\\b\\u0003�\\u000f\\u0014\\u000b{I�\\\\\\\"�\\u0000�a��\\u000b\\u0000��6\\u0006����sۈ��Qmo�\\u001a\\u0017\\u0010�<�m�:\\u000b�z�&E�����������Q~�˼Ɖ�\\u0019P>���ƓTڳ���D���լL���\\u001e4�H��[�%����ᢥ0���#C{�\\u000f!���+\\u0015$Z�ڷI��N�\\u0011C�8b��^���\\r`e��$��\\\\�2\\u001c��t]ō�5Y{N*\\u0010�W\\u0012?�{\\u001d��Z�f\\u0018�J,Mg[�#q�'��H�i\\t&K�nI��.������U�J\\u0011�f2��\\u001070E�ǝ\\fB���2r\\u0004� �YN���[�a&*\\t�^\\u0002\\u0007�m�kd�\\u0015:��p\\u0003���&S�\\u0002�ڎ#z�D\\u000bku�\\u0013&\\\\~�'S�[�e|Q���us�\\u0016\\u0003k�S!�Je�!�n�\\u001aL�\\\\\\\"qs�����4���y�\\u000b:,�.��������`�\\u001dw�q.$�\\u0018B��\\u0011\\u0017�x�]?\\n�[\\u0006ly?S� ���c�\\u001eC�]F_y�9����:H�\\u0010�i\\u000e|Ȳ�p\\u001b���J�,�\\b\\b�M�չ��z��x�,|\\u0000���L��m�Z��H��z\\u000e��u�=�)?�$vD��}z�´�c\\u001c2��U\\t(�B-R��@�{�����sW�\\u0016G��\\u0010v�V1ٕ\\b`�Eͼkh�I\\u0001:�Rx\\r,�?K,w�2\\u0003�YM2D\\u0018~kzE\\u0015�0�(���r>\\u0016�,\\u0019~�\\u0002���?\\n��q�ɭ���i\\u0007pe\\u001c\\u001b�}���n.�P�\\u0000�E�ES'���$l\\u0006��co���\\u0005X��\\u0015]z3;����f�\\b�Pr=M��\\u001d̫d�\\u000bĸ�[���A��\\u0000\\u0004��R5����`�k�m+D�\\u0013�~�8�\\u001b.�\\\\\\\"��X��#�O��W�G,�*ļ��x|�\\u001d��;��2�6���u���nI��k�r���۪��\\u000f;J(\\u0019\\u0012'�e�M�\\rM\\u001f&zÈI#�QdS�Ҝ8�@x3\\\\\\\"e��$뿞Ռ�\\u0019�/����V��\\\\|$i֝J�#�#H������\\u0018Sg�ǋ\\u000f��V�7c������9l,��4><}M�+SA�\\u0007�مgt�L��˪��mML�FV+�'�]�a��,d$ \\u0016���\\u0000�+�)M���$Sp�o��\\u00040��ęY\\u001aV��C`='�ސwn�iZLiD��鵊ۥ\\u001d4�gFıL�ǩzH��Rי�\\u0019aV���Q���\\bGDG4\\u0011 /m7�\\n�n,\\b#B\\u000e�S|^��ٸ��>{T��\\u000b�R.D^�#��\\u0017�Q�4�\\u0010��Nڝ\\u000f>�90*��`*�WpN��\\u001ce\\u0004�\\u0017~��&��\\u001c�\\u0007�\\u001dmj�l��\\u0012���?\\u0013Ze��\\\\\\\"4�~�\\u001cI�s�\\u0015��\\u0004�ō�jZi%m}\\n�m��7\\u0013@�@U�C{_�н�\\u000b\\u001d��\\u0000-��ӥ]�qfK+pk�>��he�>�z#\\u0017\\u0011\\u0003�0\\u001b��\\u001e\\u0014'�4s\\u0012#F�\\u001bqB沤A�`�|��f\\u0010�o\\u001b\\u000ek���Y���\\u0004:Y�?*�w\\b�Ow\\u0013\\nQ�%B��dqZ�&K��'6\\u0003��\\t�M��,x�\\u0003�\\\\���L�6TP㻰�+\\u0010\\u0007���\\u000bT\\u001c�K�9�.\\u0000��c�\\u001a\\u001f+��,&\\u0015���Ŵ�����<�˓�ׅ�q����I��s�$��J���xY\\u0019���5���\\u001a/\\u0003��f&^>[\\u000fuQ�Q\\bW\\u0004l��\\u001a'�d�b���7\\u0010x��\\u001f7}�!\\f}�\\u0013o�y4\\u0003�)�^�,y\\u0013�j��\\u000f�\\u0019�e$}�8�M#\\u0006���\\u0010��I�󤶓\\u000eq�-�`���m��/��13d��9�\\u0000����XfF�ȏۜj�H\\u0001�?�|E>�V��l�'��컌S�E�6.F;Z܊�<�I��쐘���\\u001f_H�k\\\\�+#\\u0014afRA\\u001eb��z�]hyR�m��\\u001fސ]#��Ҵ a\\u0007k8�2�#\\u0012��A��}��_:l;ooe\\f ��\\u000b�\\u0006��X\\u001d�\\u0015ہ�\\u001b\\u0010�N��\\u001e�N��÷v����q�\\u0017�{�qU�����\\u0003}�'��x�E\\u0010/�]���B���G�M\\u0007AC��,���������F֊c$8ؼW�\\b�Q��K��T:�\\u001e\\\\\\\"�Ə�>TPB�^�\\u0006�<@�M�4�S\\\\\\\"�c��7�eh�/b��\\u0013�J�dYs&�~i\\u001a��\\u001bWW��\\u0000q`\\u001cpb_��=4C���\\u0005qq��\\u0003�\\\\\\\"�ʺ\\u0017_c�۔��ݫ��Qc���r��փ\\u0013��^��\\u001d@��B�\\\\�\\u0005�\\u000b��z��Rh��ɲ�[]���>��tť;6�z\\u0004�{9�t���Q�\\\\\\\"�nj�a��o�\\u001cѼ��i�3\\u0003��My��$\\f9\\u001eJ7�*ς{��\\u001bm�fG�y�C\\u0004\\u00111�\\n��]h����W�`+��gi��\\b�F\\u0002�_���(l��ز$�����\\u001b��I�U��g����\\u001e`p��7և��L�Z6\\u0016�4�=\\r%i�60� �K\\u000e@5�]��pqƌ��.�k��j�*���J���\\f�q\\u0012��\\u0011���\\u0010���*�\\u0001v6�5�L�'�-���m���J�RD�����H�\\u0000H�\\u0000�y\\u0013\\u0018\\\\�5��[.EbUxX��4\\u000b�uA.�\\t�\\u0015��\\u0017�D��������A�9\\u001e3+\\u0011��m*���&a~�\\u000fƳY�C\\u0018�n\\u0007�-�{�A+r����M\\u001e����62��� �ۃX4eE�ߧZ��\\u0015���@$���7����7��o[h�%��\\u0007'<TnM0\\u0010\\u0010��\\u000b7ӵ����%\\f�\\u0010�[_��D�\\u0005\\u0001�<F�9i�E�oU����J�F\\f���\\u0007'��6��j�\\f�q�e2\\u0004\\u001e�\\u0011\\rrEב�[�ZZ\\\\\\\"V�JE�4\\u001d|(�������*[���\\u001b�\\u0004p�\\u0016穦\\u0011/��#��(4�\\u0018�\\u0002�@�5��5\\u001f�\\u0006F��Vp��r�?w�#�N\\\\\\\"Ŗ��oAF��SnD-�&զNT�N\\u001eK\\u000b\\u000b\\u0000:\\n�\\u001b�\\u0000�\\u0015��\\u001a�J��3yc����Kr2-��,o�֏�\\n�����p\\u001cDY�1\\u0000_j�3�\\\\vx[�ܑ�\\\\�o���ݚ(WK@n���@�n\\u000e�i\\u0003�V\\u001cA\\u001a\\rE\\u0003��$�\\t.��x�\\u0003����\\u000eU�؃�Z���/\\u0007?un�\\u001c8O��\\u0018�aV�T8\\\\\\\"�jr��[7V��*��\\n[�\\figAbM��M�_ʀ�0����M�M�\\u0005�w�g\\\\\\u000e?nEǷ������\\u001e��Q���p\\u0005\\u001b�V�x�\\fh![\\u001e*\\t'�>���\\u000b��y8��\\u0015�w���W�\\u0014�|�\\u0019~<���\\u00102�$�6\\u0017?*�\\n>\\u0018H\\u000f�\\u0017#�\\\\�v�2N�@օO\\u0016#�\\u0011�ʹ��~�..\\u0016��\\u001a�����+'}�.,\\u001dP�G�L\\u001c�l�|�\\u0019Ŋ��խ�K��n,\\u001b�H?ezu�+��/���ޭ�\\u001c�*��t��\\u0004jT;��\\u000b�/�@c�ξ�^�e�\\u0000-5���t��\\u001a��A0s��1؉�]�F#@-K�X�\\u001b\\u0001�<�\\u0014W�\\\\\\\"��\\u0010WK�Y���?�E�)X�\\u0013s�a�|�j�\\u0003�\\u0016W���\\u0013@\\u0000\\u0011�\\u0005�\\u0017'����]�\\u001682ǳ\\u0018H\\u0019E��˭%y=�@߭\\u0017*��:�B�\\u0003A֞��\\u0013\\u0000�A$�����\\t#C�(�<�bt4X�H�$��M\\rd�-!~^)\\u0013\\u0015X��7]t�k(�P`�*ڑ�o\\u001acpE�SX�\\u0001��ӣ�\\u0002��%#�c�S���̯�\\\\I�P�\\u0002?(�߭)ċ�ʊ>���\\u0003S]Lx�7P�xn/ZY�MQ�\\u0012�\\u0004���i\\f\\n�8R�\\b�@-o��'\\u000f�E\\u0003�~�ґ��r}�Lv��I�1\\u0004\\u000eV��)��;��{��ڨ��l8�\\u00182H��X���!�,h\\u001c�Չ4dB\\u0016)��+`\\u000f�Z��Rő�^u�# �yX�\\u0016�ʞ�AQ\\u0004q�\\u0002�m�\\r����&�-��u��'hIm��dW��8��lA��ך�mMg�\\u0019=�.F�(�\\u00159�$o�ְ>\\u0015俶��4-11� �\\n��\\u0000zҜ\\u000f@\\t�*��\\u0007\\u0016���u�3��|L\\u0018��\\\\\\\"�*�Jn\\u0015�ֶ�kH�Y�W�.c�]����\\u0017�#���P\\u0018HU�\\u001d\\u0007%<Oڄ�Z\\u0014�c��Y�l9#*}��9#t�����j��+���\\b�+��P����A�\\u0000Mq��\\u0003�\\u0019�\\u001a0x\\u0018������>b��\\u001c{\\u000b���V�\\u001aJ�n1��͠mzW���\\teT��y5\\u001fek\\u0011i��\\u001e;\\u0003��} ����R�)\\u0004{0��{���`�\\u0013ᠿ�[C��V\\t\\u0017��,z��\\u0007�P\\u001e�P}^\\u0015YF�Qg:���S�\\u0004vuӱq�䂻�4S\\u000eW\\u000b(���\\u001aNA\\u0004��\\u001b�a\\u00149��$ËG\\u001d˹6#K��\\t$�\\u001cp\\u001c��Z�)Ⱥ��V\\u0013���{\\ffYR1��_��Pq�.�O\\u0015:\\u0010:[�s؊�Mͅ�E��t�\\u001eY$���\\u0015�O_\\u0005�(�!BI9\\u0005#�C��ڄ�̌J�劀H\\u0017�w��&����ޗe��&20��\\u0016���*��\\u001e\\r!�\\n56P.~Unۛ\\u001egx�0���d7a~D������k�\\\\\\\"��ʗ\\u000f!2!6t���\\u001f�\\fh�2�L�٠B�\\u001f���\\u0006��\\u0011W��D�\\u001eO�P7���)$��!qŋ\\u0006.�и���\\u001a˺f�\\u0017k�'��r���Ȱ�\\u0000��*`\\u001f\\u0007�r�\\u001e\\f+p���f���\\u001am۳=�y4d�&2ďS^�͚\\u001ec����¼�=�������[���\\u001d\\u0001��!�{\\u0000��-���\\u000fǂ�s\\u0006\\u001c�����bI@��G��&�)\\u001b/\\u0016+���9�0#�ߝC�:�6��=Oβ+\\f�.�١Я���<\\u0012�-@H#����\\r�\\u000b��\\u0014؛\\u000f*�X�H\\u0002�\\r�\\u000bu��(6�BP�}C�\\u0016�~5|q\\u0016[4Y.\\fi�\\u0004�~�U�����8�G0\\u0007��+8Z�)~�/��ɱ��\\u001f\\u0011b\\fT\\rl4��\\u001aM�\\b9e�@?�<W\\n.\\u000e��ҜH`�Ȟiɷ-\\u0000��F�\\u001bǞgT�P��1���6���(������~*~�a�\\u0000\\u001f��,���RE��^>$�]R´Ԇ�/�4P~�5�\\u0011(Xסf�i�@�g��:���N\\\\\\\"�2�\\u00128D]l\\b\\u0017\\u0013@����b���|hh��䳢��X~m�\\u0001�<s(�67\\u0007˭\\u001a1�P$c�����\\u0000J�(L�Uum�7�\\u0007�\\u000f�\\u0018����4:\\t\\u0019�r'mo�V3���d!��ڝ<�Ԛ93�ٽ՘\\u0016\\u0004�:mqAE\\u0002��c<�7�؂n\\u000f�O�)\\u0019�J��~�\\\\���\\u0001h�%�!i\\u0016?p�\\f�S�ŏ�p\\u0012Hr]L �\\u0000m\\u0006�> �\\u001f\\n@0�$��.׮�%Ȋ\\u0018\\\\\\\"S�WGw>� V=��ҋpɧeS�r{zTkv�)\\u0004����1��A��\\f\\u0007\\r\\u000fQ�h��4A=�RFn*����(\\b��$8�\\t���\\u0000�@E�\\u001f�Tҕ�\\u001d�r\\u0007��{��9*�#�&D\\u0007��\\u001d(\\u000eܬ��\\u0019H���C}����Da3}+mTRɤ��gU��袴�y���EaTi\\u0000sd\\u001a�;�u�>�Z���H\\u001f�9V\\u0016�8��A�U&�PA�\\u001dj?b�����`)�A�~�!ƉΊ��7$��}ш.�_a��L;�yΜE\\u001b�\\u001e\\u0003�?��\\u0016�\\u0002�\\f�qmm֧�_�V��/�*�+6L)%�v3f\\u0007O1W����I���7\\u0015Bx�>\\u0015��݇����\\u0014\\u00112�m�s�6\\u0005�}��G Ynn,m�Ј#fqÈ��^�Ǡ�dʕ]V\\u0013��[.�\\f\\b\\ra�Sk�\\u0010�\\u001b\\u001fQ~\\rk�m��\\u0018Ѧ<`�6_W�Lmz]��d2\\rz|��ʬ4Ңڍ\\u0015;�XiW,*��B\\u0019�\\u0010)�\\u0000�לvl��+L&~*��l\\u0012�?\\n@�kS\\u000b��mƞ\\u0000�C3�$\\u001f�tm~ʨ��;\\fx�\\u0001,�Y���\\u0012RǨ�)��h;_��2H\\u0001\\u001f2��hΝ�CL-!�PE�Q�����\\\\�$\\b.`nl:�kiY֩[M��\\u001c��\\u0007�\\tӥ\\u001f\\u001c�W\\u001eGbZ8�\\u001f\\u001b_��VXF�*~?�il_y�����\\u0000�M���¶�����\\u0010�8}�Q�C\\u001d\\b\\u0004\\u00105����4��ET,�z\\r���ޕ4\\u0018�\\u0002*\\u0018r�� �o�Z�eHZ\\u0018�\\r�;�\\u0003a��\\u0000\\u001a�S�Ɔ��]G*R�_�:���\\u0019݇\\u001b r��R\\u001dC.��(�Z���[\\u0006R�cbu4K[�\\u0019�\\t��h�{ח\\u001d?)$�\\u001f���ߗ2��bЕ�t��J>KIt{2�~��7���\\u0011��!\\b:/C�U���͢R\\u0003\\u0002\\n���\\u0014\\u0014�\\u0006+b-�H���}�k=�mž�zh��\\u001b\\\\\\\"��pq��>ڡ\\u00007�~&��h�[��\\u000e���ّ�\\u001b�:|\\r,���I�\\u000f%\\u001b���΁N` \\u0014�uP��Fc�\\u001e&���\\u0017n(0��g\\u0002���U\\u0001��q>��g�\\u0006'm�3\\u0000$����\\u0000S[�\\u001eB�\\u0013\\u0019]ى.��mo�\\n�ٷ�H�6?���?��^G;���4�\\u0019x\\\\[QX�F�\\u0000n���\\u0012�F�5\\r�g7��&(:\\u001a_.S\\u0007\\\\\\\";Xis�D�)K\\f�T������0ܑ�V�RDn\\u0018L���ue\\f,t���`���\\rA\\u0006�\\u0010q⻞�|LW\\fy[�Q#��\\u001d�/�X��\\u001c\\u000e�{��G�wL��H�\\u0005\\u0006�X��\\u0000(�+\\u0018�µ+�mm\\r.CH&a\\u001c��\\b�<�\\u000f®qqȷ�>T�ge�\\\\k�@\\u000f�Zh�+(u7R.+U�/P)p\\b���I���\\u0019Y\\u000f\\u0016\\u0005O��b�a{x����\\\\\\\"�א;\\u0013�)�KR�����#q�'z\\u0011��ف\\u0007��\\u0002�t}uS��\\\\\\\"\\u0010��w�]�!�\\u0018\\r(�\\u001b&\\u00160��\\u001f[\\u000b���h\\u0000(��2d\\u0013�c��\\u0016c�|�B��#is`|�܌f�UK�Bo~��/X�(�P�y\\u0002\\u000f\\u000bX���@u\\u000e\\u0016\\\\7V����ڬ7\\u001f\\u001a��}�&\\u0013>Ip\\u000f�ce\\u001d4\\u001e\\u0015�馊囐�D=�V�Q��[���\\u0000P�\\u0018�\\r�1p.�ை�\\u001c����L`G��\\b\\u0001E��R��)|�c�$c��ߥ�P�]�'+���?�]�~4�)\\b�Y�r6�\\u001aͤh��ΛkI0h:�/ǟ���>��\\u0012A���̓\\r��$��\\u0003��᠄�\\u0000v\\u0000n\\u0010�W�&�\\u001e��12�\\\\\\\"�����Ѽ��\\u0015�V�\\u0010%\\fM���&�X���'�|�}�x�P��X�Ga�(\\u000e�b�-�R8�>#�(���;3&�{׿��\\u000b����L�\\u0001�P5�O��\\u0000�\\u0015c�����>\\u000eBYY�g?��|:Qq�\\u0014\\u0003����\\u000b\\u0018yE�]M\\u0013]�ɓ�lsAEGbJ\\u0000\\u0005υi\\u0013�d��\\u0012ʪF�\\u001d)w�+�UI։��Վ�0��mD�}\\u001f\\u0004��@�G���\\u0014&D�ܭ�6\\\\\\\"�_}d�d<%RW_����\\u001c�i�I1\\\\�\\u0016f\\u001ao���y�\\u0017�\\\\\\\"��?p�����V�\\u001a$!��\\u000f\\u0013m@���\\u0017\\r\\u0019\\u0001m���M�&|�v��\\u0000Y��\\u0000��\\u001a�r\\n�Xj@ֹF\\u000f����T!��+��P�9:In7�jӭ�Vّ�H\\u0002���CY�\\u0000�:�\\u0002u6�/�!nG��ڇ�����5d���n��\\u0000�\\u0018=\\r\\\\�\\u001d�\\u000bZ�\\rb�/�4�\\\\���\\u0001�2��L9\\u001b�\\u0013��\\\\�<�\\u0006\\u0013\\u0001Ԩ#�H��H\\u0017#�g}J���dI\\u0018*\\u0014H��7�U�������*=>���r7�Vr\\u0001eRXn\\u0006��T����\\u0004nTn�\\u000e�,*\\u001a�h�L`\\u001a~E�+)\\u0004��UnQ�\\u001f��/^���I\\u0011\\u0002Abu\\u0014&&R�J�W�\\u0001��1\\u001b$ \\u0000ͩ��j\\\\\\\",�\\u0014�v\\u0001\\t�{��\\u0017���1���,��\\u0015f�_�@�w�\\u0004�\\u0002D�*����PK\\t�3�?\\u0010x��Q?��\\u0014��\\u0010���\\u0010\\u0000�exq�R�ِze\\u0002�\\u001f�q�\\u001e��FJE\\u000bHv\\u001b\\u000f\\u0013�S\\u0010��ds�@��\\u001e����\\u0014\\u0005z��śVcr|�\\u0015��/�2J\\u0007��\\u0003s�{Vm��H�@�^�LW#G\\u001ecZ&X\\n�%�X��e>\\u0006��)\\u0003\\u0019E��b��\\u000fhus�7W�������X�΋�\\u001e��\\rV����בy\\u0005\\u0017\\n:�XK\\u0005nm����$�K�\\u001bYn\\r�F\\u001d(�\\u001a(\\u0011�\\u000f[�>5������1�F����nB�\\u001c�\\u0000ݽ\\u0007���)����m����\\u0006�������\\u0000��*e�\\u0017'$\\u0014����\\u000e�\\u0017\\u0015Y@op9\\u001cU�\\u0016�\\u001a�*.ϖ�߭\\u0006e^<�5\\u001eb��j�\\t�iD�\\u001b�\\r��T�\\r���Ź��}$��5*\\u0000I\\u0000\\u000b��\\u0002�D�c�ɕ9�\\u0019e�zQ�ݨ��\\u0006�q\\u0018��4�!�KYF��ʹ�?e'\\u0014�C�u��\\n�p`�\\u0018��\\u0014\\u0002��>\\u0014\\u0012c���\\u0015]�>\\u0014�=$ØO���\\u0002����o�㱬c��̋�\\u0000k/\\u0019SVK\\u0011�5���\\b\\u0001�\\u001aI������\\u0000\\u001di�$-���^���\\u000f3W�XE��v\\u0017i\\u001c��Ǝ˄c_ ���\\u0019�\\u001f��h����l�4�u�[j[1��#v@AХ�ʤ�����<B��\\u0016WB��\\u001f�F���Ʈ�g\\u001c������\\u0019J������j��\\u0014���Y]\\u001e��\\b\\u001b�J��\\u0016$T���{Z�UkT��EfC\\\\\\\"q��څ�.)Y%^o\\u001b\\u0006T�ĩ���\\u0019Y�\\u0002�5цƛʁ!�D�ܧ\\u0019Y\\fb\\f��'�`\\u0007\\u0014S�W�eI��,\\u0002�\\u00021��z������-�}$Sv�O\\u0006\\u001c\\\\\\\"'�����\\u0000-i*�^�vq�s�cfL��\\u0019V3b5\\u0004\\u001f:�b�@\\u0001��u��:���̦<����\\u0001q}��(,�;�\\u001d�=,��Ξ6r,���cǊ~�VM-#��F�F.w\\u001c\\u0019O �Dx�]��=�;6%�\\u001a\\u000b2>�}��\\\\\\\"���\\\\\\u00163�+��`#��r\\u0002��0�N����I�/W˕~/����;(1�PO1�+\\u0000Im��)/�\\f<s\\u0012�c*�)��,.\\u000f���֏�����(O\\u001c�]'\\u0016a����Rܙ3b���\\u0015�\\u001d\\u0018���Д˳��\\u0007<R�k>^�.;W��|\\r�ۡ�O\\u000fn%��[\\\\���� l�tu���\\n�\\u0002»��+\\u0010\\u0001�݀ �ê�(]&K�#B�\\u0005n<�`=-�SK���lP \\u0007ԧ�4L�~�15�1���=\\u000f�O��4\\u0005�\\u0006��y�R�3�\\u0007\\u0017��\\u0017���u�=+\\\\6�E&LC}���\\u001f�4�<L<\\b=삊U@y[j�{�&W!��\\t��:x��U\\bY9.�c��\\u0005��k\\u001f���V.�*8,\\u0003\\u0001��4g�5S�\\u0014���\\u0007��iE \\u001d��9� �\\u001dl־����X2��#U��Ɛ*�>�sҶ�&\\u0011]an~\\u001cjg�+�\\u0011.b3{j\\t!������4S�Sw=:��s�>Bd/�\\b\\u0017���\\u0005�V��j\\r+9�F�ܒD�\\\\���&���~\\u0015�\\u0014��#k�ǻ[CsRI�h�!`Z!f\\u0003v>u`�ͨ��6�O\\u0011D���&\\u0014\\r�^Ɠ��\\u0019fH�B�͠EԖ\\u001bZ�9\\\\\\\"I�].\\rԍ�ީ�p�w�wR�J��\\u0000��\\u000fƭ\\u0010�c'���9�?���X\\u000b���V~��_�Y��$`\\u0007F�\\u001b^��sj���o�\\u0000^e|W�\\u0000\\u0002�`\\u0001��ؓ\\u0010Ô\\u0012ze��x�1Dw\\u001cC�'$�\\u0017�\\u001a���\\u001b�ַ��\\u0000�c�X���F����KC1�J�nߓ\\u001c�@�f\\u001b\\u0011X����,F� ��\\nHX��\\u0004XS\\\\x�~�^߷\\u0019Vb���[�Ҿӗ���_$\\u0013\\u001d��.y\\r��_~�i�&\\u0000�DЂ�n>7�\\u001fm�Uk���V��|��\\u001dǍ\\u00165����7v\\n��b��c8`�ǋ��hx��\\u000eL|]�\\u0012\\u001f���4�wy���\\u0016��T*[[�\\\\\\\"Ղ�l�%U\\u0015�H*Mu\\u0006���wI&��.�������2�\\u0015E����*f�{ju\\u001a���i�դ�\\u0010���,,|(��\\n�ϖ��(\\\\�D�\\u001d�)�e����zX�<��m?\\u00191�f�}���<�O��G���\\u001a�^�Γ���Kǅ\\u001b\\u0002\\u000b\\u0000Y��<[ң×�Vg�&R�0L<w����PlI�S�\\u001e5nᑑ�\\u000bD�(���e�-�?M��\\u001a�zM9��9��g.7n�\\tB�\\u0014�U��A��!��g4\\u0010�,��$i![\\\\��*���|�3Jֆ\\u00051��v�9v��ֹy�\\u0011�2����\\u0007 �NG�4�)�\\\\3\\u0018�a{�Pg�\\\\7@\\u0005�\\u0006���\\\\\\\"�;�W���!VX��\\u001a���\\u001a�E\\u0007�b)لMe:�CË��fk�`(��̷<�U��N�\\u001e7��}�iBy\\u001c�V���8;\\u000f\\u001a��OpDO���Zpd�t���ף��V�V�d`r�\\f\\u0019Xmb(\\\\��=�\\u000b(7\\u0007��\\u001d�r�u�5\\u001e��\\t�k��]�����o\\u001b��rE\\u001cG.}Dw\\u0011��Gư͛\\u0003�i���s*��D�^=��\\u000fγ~�\\u0014\\u0018��\\u001c�\\u0003c�������7il�Q.D��l?&��ƧK6s���Ƒ�\\nȬ�%��v��j�ǶJ6�4�/��FM�4�����Z\\u0004a\\u0016`f\\\\\\\"�uQV�\\u001a\\u0015ǉ���hZ�x�Q1Hګ\\u0003c�屭T\\\\��\\u0005�ª:\\u000f����EY\\u0011�������[�\\u0000n\\u0010�\\u0017a{W��$a҆�Y�@˭�����m\\u001c�S#7�\\u0006+�!�\\u001a\\u0011�.2J����^�K���}?U�j���X�b\\u000f=N�F�\\u0018�[�6\\u0013<��\\u0001�à� yYJȦ��\\u0011Z@\\u0007�\\u0018\\u000b\\u00125�)6oN�\\t�.�i\\u0012P�N@X���g\\u0004H��mҎ�1 \\u0017\\u0002�n����Nt$Z�h�<\\u001aFD���U����S�𪢄\\u0000\\n�\\u0004���\\u0007&m\\u0000���|�M��D6\\u0006b�f����Q����]kD��\\u0012����gc����ީ���y1cF@y�\\\\\\\"���S]�f���/$�l��l!*\\u000f����Ҳn�/\\f\\u0016�{��\\u0016%�ֹ҅\\u001c����}&��`�\\u001e�\\b��ة�ǭS\\u001c��\\u0005��:\\u0014uV�4�e_V�.X��^?�b�a��\\u00157Sb+l⭛9Su25���\\u0015�H�\\u001b5\\u0018�Km~��[\\u001aC[�|�D@�Xi}�]m\\u001a�w�۲8��=AZe,2cH\\b\\u0017��\\u001f*S�{��Ly\\u0007�P�C�&�$�%��p@���U��':��뻭�q\\u0019L�u�\\u0016,�p\\u001e5 \\u001d�GZI��r|m�:�$v�\\u0000��K�+��!]�m-�W��۴#ئ�5��\\u000e\\u0011�3ie\\u001cT�ʽMs�y�id.~\\u0000x\\n�vt��OW�c�nV�ؕ*T�H\\u001cv��X�f�\\u0002�\\u0005\\f@�ۥ��\\\\�S:\\u0007\\u000f���\\\\�i�;��%M���\\u001d�(\\u0001�S)��C�q�#ʵ�\\u0016HAS�\\u0017�7:бI\\u001c�\\u0018\\u001fI7>:t�\\u001d�!2�#����P�J�S���2��y�\\u0016\\u0001�^��\\u0005t]�1\\n�=�\\u0013��֓Sh�\\u000b$�\\u0010�P���(Ȝ�\\u001d�\\u000e#cAˎ}�\\\\\\\"�n[�}h�.\\u0000\\u0001H\\u001eb���\\r\\u00134$�jT�+UTE���9I����\\u0000�tXq�ǊB�dv���hM��\\rk��j?\\u001f�M\\f^� u\\u001b\\u001b��e#����>H\\\\\\\"e\\u0013/�\\r�o��\\u0012A�Pv�|�?�����`��;޳���4\\r\\u000bDl�ۊϴ��K�_K���O*�qz��q�\\u0019���Ï\\u0013\\u0015\\u00047^`z��-|E{�n\\u001cI�ݮ\\u0018��n|���rc!̚�\\u0006������.�����S�ה�ro,���<R�\\u001c����f!v<\\u0016;�m��~�t���МI�1ʶ����|~���r�\\u0016B�9\\\\X��!��$�����\\u0000:P\\u0012?����\\u0001��\\u0003�gPұ%v>�,�m\\\\�J�Ü��)�b��]@K�cf�O\\u001ak���\\u0017*\\u0018�+��\\n��Ӧ��;2��2Er\\u001bR:ޘ\\f;�s�\\u0018ߠÃچ9��Uɹ���\\u001dw�)��c\\u0016��)�1�]���*\\u0010\\u000e�Ԯ|\\u001c�_췗Jj\\u0000u�ߨ\\u0011��\\u0000��[���|?��'G<\\u001aÏP�%�\\u0012E\\u0004K�Ƞ\\u000bu�2|���{/\\u0019)��z��%���q\\u000fs([v\\u0004�&hx���zJ���F\\u001aQ\\u0002l�\\u0000\\u000f`�fe��\\u0015.��a�۩���{�5Πt\\\\\\\"�Ɩ$���\\u0018�ߩ�\\u0018]���m�\\u0015��{@\\u0012׹��/ȧ\\u0002�*���l%\\u0006m\\r*a��O?\\u001b��U6 ��׌\\u0014\\u0017qpE\\u001a��\\u00032\\u0003\\u0013�\\b\\u001a�y���\\u0016�\\u0017cZ�'���qK32D1���G�IK!�x\\u0004�\\u0013�\\b\\u0006�����I,K\\u0013ru&��nYiB\\n���:\\u001fv�>Z���}���L��͎.\\\\V�\\u0014��\\u0013X�eT��/���4�\\u0010�\\u0014*����\\u0004�Sk\\u0005U��ެ���2\\b�wb\\u0018��*��|�\\u0006bP��XQX�ĸ�)}-cco\\u0011j�(�RZs�\\u0002�;�0%ԨR\\r�\\b��Qx��l4�\\u0000��\\u0019#V&=�N�\\u0001#cM,\\t��3��ԐWAj�\\u000eH�I\\u001eQ�N!w��/VȌ�\\u0002/�-V����4�Ǡ��f.H\\\\\\\"Y\\u000b�]�����\\u001d\\u0005\\u000f<��CcԊ��f�YЯ��V���\\\\\\\"�E\\u0007���J5\\t\\u0004�浽Ʒ��\\u0011���3+�\\u001e�n��޽=��\\u0015\\u0012)#}\\r\\r4M\\u0014�\\t�\\u00167\\u001et�M@���K�)�~D0�QR��\\u0011*vS�ʹ\\u0015�Ȅ�\\u001b2|\\t\\u0015s��*��G+�Xڅ�\\u0005J�\\u0016�J\\u0013P��q�1��k�,\\t;[��U�i�k(�%���]�����~J w���M��\\u001b\\u000e�\\u0004��9v��%ʛ\\u001dM\\\\0:ZƉ �\\u0016c\\u001c�.\\u00021\\u0001��ε�0v�\\u001cRBCNY��\\u001b�u�\\tYN���:������5�\\t\\\\\\\"�]MY�(<�\\b\\b�+�؀O�h(�\\u0004��4\\f+��H�A�\\u0005�ۚ,�ʞ�\\u0019`ʦǗ\\u00104�\\u0002��\\f�1���K\\u0002-�|jأ\\u001d����\\u0018�I�֥�-�\\u0000��'��\\u0000X\\n�\\u000b,K\\u0017��η:q�kt\\u0015\\f�y]�F�4B�T[_*�&e�'.hڨ��h\\u001a\\u0015eg̨����P�\\u0014l+lf\\u000b('�5�o���\\u0015<oGf)o�,�ꂥ�͉3*��\\f���it\\u0013��\\u001clv�̥da�7\\\\\\\"���DN\\u000b���x�4q����\\u001bznI�X���U�����I�k$2F�\\u000e�5`,-Vy\\u001aCv�ʫ]\\tA�rVO��\\u001428B\\u0019����E7�~\\u0006���9\\t͹\\b��t\\u0001���Fe҆�\\u0013\\u0018��J�Lh�(:��U��D�`�\\u0015H^du<w�΄�o��.\\u0019,��۹\\u0002�G�����Y����H\\f|�@�g�\\u0003܍�F\\u0005�\\t��0\\\\\\\"?\\u001d�u���&��\\u0016Y)<\\u001a�W�\\u001a��#Qru�\\u0015e�\\\\\\\".\\u0018|�\\n@�4ֽ�Q,�ˉP�Ŋ�Ђ5�'�\\u0001� ��D~ܔE�P��\\u001c\\u0013��K\\f[��Ha\\u0001��\\u0007��/v�Ҏ���\\u0006)\\u001b\\u0014��dVQ'��ƚ>6VOp\\\\��\\u0004X\\u0011%��iɉ՞���\\u000e��r&x�A,\\u0000p\\u000b�@��:\\u0011L���\\r��9}:�����*�ͤ�w������H��Gcru�Ԣ\\u0000'\\u001b:h\\u001br�~�'�鐮�\\\\\\\"\\u001b�\\u001aW?Db䘮��m��E�*�d�\\\\\\\"����R\\u001b��\\u000f1Gv�̈T����d�Q70\\bn�\\u0017�E�\\\\\\u0018�ʭ�#@���kVj�41�-Y]C��\\u001e\\u0015�w.��ś\\u001c�ԝP�#���.�\\u0004��F�R\\u0006��Us�\\u0019q\\u001d��P\\u0013V��E�r\\u0018�\\\\\\\"+\\t7\\r�(�X�\\u0019D6�~G�\\u0005�#G\\u0013:hn-:�\\u0019&H�I��4�z\\u0013���ݒ\\u0018�\\u0005�t\\u0002�\\u000b�?\\u0018��M��i�C�8ӕ���Ъ\\u000b.�-�1�+�\\u0017\\u0007Z�\\\\\\\"s\\u001cN��m�:R��*�)��33\\u001b�$��B��9\\u0018e�\\u0000��\\u001a\\u00068�����)�*��apw\\u0015��*)h��\\u000e�v���QH�BA�\\u000e�\\\\32\\u001b\\u001dzP�\\u001c�\\u0016\\u0011�\\u0000Ԫ��\\u0007�\\u001a�r\\tR����V����uE\\u0006���v���\\u00125\\u0003���f@G�ގ��X�1�4�t{\\u0004�\\t\\u0005���\\u0012n'�c��~5��\\u001d�\\r\\u0001ګ[-\\u0017�/Q���\\u0017��X9;m@,��\\u0013�\\r�Ev k�)\\b\\r��t\\u001fq�\\u0013��*�k\\u001b��Й9\\u0006f��\\u0017o�M\\u00031�R�1\\u0002�Fy\\u0003�\\t�6Q�5�q��;�!<�\\u0004\\u001e�OI��Ȑ�|-�Z/��\\u000b�\\u0007)T4��ǉ\\u0005Xis�����\\u00146\\u00077q��@�7.#������YV'��\\u0016��ڝ��Ƚ�dG/)ny-�\\u0003�Ζ�\\u0013:L�\\u0007\\u0012\\t\\u0000kqJdq\\u0003\\u001f�輾�\\u0000�Tgp=��\\u001d��V\\u0012�\\r�*���oP�h��VHTE`.\\u000e��hg�\\u0016��\\u000e��h�݄���\\u0015wH���\\u001bxT�\\u0003�N�*V%��RYA���\\u0019]���\\u0005u\\u0017�\\u0010��-�$�\\u001d��σ\\b��\\u0016΢��9�P\\u0007VZ�YMY,eٲ\\u00049j�l��Oǥ\\t�r�\\u0000Q����x�����X;�)t��]~=(K�6�����X[�~_ɻ�\\u001f��)w��i�XG��5�x\\u0005�\\u001e\\u0015�n��K<�B^�\\r\\u0011F��,dg\\u001c��^��`���#Ə'\\u001b�*\\u0018���Aw\\u0001\\u0006>o\\u0015Q\\u0018�56\\u0002���I�CYe\\u001at�90��\\u001aب��1�e\\\\vy\\b8�\\u000b�7桍�t�*r���\\u0001���\\u00189/�V\\f\\u0001H���#��U*�+x3|y��0�>�m\\u001c\\u0013�\\u001f:3��\\u0013�Z�ы3��w\\u001a�\\u0000\\n\\u0016,�$���\\u0000i��:�\\u001e�׷�\\u001b)\\n��W��@\\u000b\\u001b\\u000eV�\\u0016j#�Q\\u0016J\\tܕD�T�\\u0010\\u001a�&z�$R�\\u0013Eo�X�N�:��5��\\u001a����K\\b��nQ��\\u0015#qTe,\\u0006�~m�\\u0007�$�yb`\\u0011�\\t\\u0017\\u001d>�w{#\\u0001��մ��<\\u0005\\u0006���Z�.ǐ\\u00176ߥfT\\u0010XxW���A��\\u001b��0(\\u001a\\u0012���\\r+[\\rN�wu'�k�?�.\\\\\\\"���.�\\u0012DC\\u0019�\\u001b\\u001dWR?\\n��x�2���tAȓ�mF\\u0012\\u0019x>�b�A8H��F��\\u0000y\\u001b\\u001a���ĆcK�1�ĜB�q;��Ce�s���N�\\u001a�1&�f�\\u0016�\\b��C)��\\u000e��\\u0015`��~2xT��~�l�hf���ݺ��\\u000f:\\u0007\\u000f&I�\\u0017���L�R\\u001f�\\u001f;V�����\\u001d�P�,���G�ƚ$f\\u0011am-�Q�a��1��\\u0007\\u0001�N-�ʘ\\u0017���\\\\\\\"�\\u0013\\u0003�N`����L�̯�\\u001bƟO��\\u0013ܲ�����\\u0006�GS�K�l\\u0012%9��\\u0011c�\\u001a\\u0001����ME������Y'�4��nݟ��uhא\\u0007���ӭ/�����8\\u0016(<ELg0:Țp'O\\u0011�L'�\\\\���j����D*�tV\\u0012J��\\u0013\\u0016��*s{_�[\\t�,�\\u0019@ ��Z�Ʌ�\\fa2��w�z_�Ҿ�\\u0007��\\b��) ��&�i�\\u0014��2�ϟ.u��@}\\\\�=\\r�?/\\ne7i^㋅��\\u0005�\\u0011=����>�\\u001f�4�(���P��qM#�\\u0012�d@��H�P�\\u0018ۗ�CM\\u00152\\t�ٰ�p\\u0005ʓ`\\u0006�\\u0000\\u001ac�o��N�B\\u0019ЄPޥ��;��̹%�\\u0002�k\\u001bU�{�f'/h��~B�J�<���S�Z�\\u0018w�,x ɉ`�c\\f������\\u0018|R�ǈOU�\\u0015�fvFs���Y\\u0007\\u0011�[Kބ��BW�O�r��q�@�����Z:H��M\\u0015�n��K��K\\u001d<��_l�1��\\u0005�� y�kL���B���}|��\\n~�]�r�*���\\u0016�\\u0006sf�㡒g\\n�RMs\\u0019����L�cx\\u0015��Ȱu��1ɗ%�t�CD/\\u001cl\\tK��Toj�;��\\u0018�<�\\u001f��װ��ڻUc�͹:nÐW� Q�F��>'�,��ُ�1�\\u0005�I\\u0001T)ˑ\\by\\u0000�j#�d���Q�⹱�`(^�\\u001en�\\u0011��\\fHY\\u001dE��5��5�1�����3%P��7�o��3�\\u0012�\\ba�oMm���\\u0002o��\\u001b�u�N�R�&˒\\t$lu\\u0015�x\\u0000\\u0000\\u0001��{~2��Ì���$|\\t�!�Ը��\\u001d�H\\tQ�\\u001a�\\u0010.\\r\\u0013��\\u0007nc\\u000eV5��0�\\u0016\\r�j4����b�ƫ,��\\u0002��¾����#\\u001af�\\u0010�\\u001a\\u0016\\n�[A��\\u0011c�4\\tď�9'���a��\\u0017�U�A�%�s��\\u0015�s�|j׾��?\\r�)$\\u001cU�\\u0012�\\rk����\\u0011�\\nMC\\u000ex\\u0001Ɵؓ��\\b��Q��\\t�&BF=�%��� n\\r�i|����\\u000b�X�m�\\u0018X�\\u0007c{����\\u000b.��~\\u0007x\\u0002tǀ�9\\u0005P\\\\\\u001dɶ��\\u0013�L22q�\\\\\\\".��AȌ\\u00125�+)ֱ�3���ґ'\\u0019\\u0004���q�d����\\u0019d1�3\\t\\u001d�\\u0000�1�.�M���U.\\u0007�u\\r�ʌ�C��k��Q�$7\\u0017\\u0014�?r`�@?P}�vd ��5 m\\\\�~Z�m0]�\\u0016P�\\b���*\\u001c��B��\\u001br�[�_\\nr���qY�oa��v��\\u0003��/�\\u0012\\u0012P�\\u0003\\u000b������c�SD������4�\\u0019f���)\\u0003dX{w1�>�~��Cc�<|���l~;���OwK�*�&�\\u001d>ZS�\\u001cy;�2Ϗ<V?R�bT�\\u001dE\\u0000(ʑ���s�X_�����\\t��x��Suk}��@�(%��0���x��Xk�Ƴ��=�'*�RGZV�P5\\u0010g?p\\u0010H\\u001a\\u0018�A�f���Ҩ��*��8-�F��k(\\u0016c\\u001c�#�\\u000b�u���\\u0003�\\u001b�(B�136��\\u00125\\u0017\\u001a���P12�[\\u0011����Q$>�>����i\\u001cO�\\u000ev��Ƶ�Y\\\\\\\"q$g�\\r�(�1�F\\u0004�G�\\u001a��yU\\u0012E\\u0005�bt\\u001e����5���\\u0014\\u0001�nV��Z�\\u0006~ZM\\u001f�H7��Ñ�:<)C�\\b&B�V6[��np��1������v,�T)!\\nG����\\u0006L\\u0012wT\\u0011ȥ�\\u00199X�r�֩��~\\u0004Β�\\u0015��&��2��\\u0000s�\\u0000�\\u0015ܾ\\\\P�I,����1#a_<��\\u0019y��a4��\\u001d�N�4�%\\\\\\\"�0�eK\\u001e@iֶ�V\\u0001���\\u0002\\u0017\\ns�\\u000b��\\u0007�Q=�\\r�D��u�x�禌��\\u001fI�ʞ���\\u001c�{9O�d\\u001e�?�1I��\\u0002caϔ\\u0018�\\u0005�BI����Fg�?��\\u0000\\na���.G�n�U���[��V�ч��U�\\u0017>u.�a\\u0014��bF���m��\\b\\\\\\\"�˛�\\u000e��\\\\\\\"J��֜`I\\u001c�\\u0019\\u0004���\\u000f�)!��S;\\u0011d\\r�K��ǅ�M�w��b��\\u001b�qĠ?����f\\u0013u\\u0016\\u0006��\\u0000�~|�\\u000b�\\u001a\\u001ax&�GF)�\\u0017\\u0004�7\\u001f>�4\\u0006i\\\\�\\u001f�Sgc��\\u0007�W\\u001a=2\\u001c��\\\\�{�s#�+\\u000b}�Т*��ŧ\\u0005�\\u000f>��\\u0003f\\u0007��째��J\\t\\f\\u0011��\\u001b\\u001a\\u001a�6\\u0012)\\u0004h{,\\u0016\\u0002B\\u0015Y�o�}@��M\\u000f&$��H\\u0016A\\u001b+*;���iu7�M�I�Hem��py�\\\\\\\"��\\u0000�xy׳whZ5��U�\\u0006�\\u001b��\\u0005c-۳��a$Yq���\\u0000\\u0019E��\\u001aZ��@9A\\u000b^\\u0000į�yW�y���\\u0010\\u0015\\u0017a��hz\\u0012�\\f/�\\u0010&k�\\u0000O�\\u0014c?\\u0016 lv�\\u0015��ؚ CDNj\\\\_��P�\\b\\u001d<Ơ�8/�\\u0014\\u000e���u��ō��b,�=��-��U�\\u0000���\\\\\\\"������Q\\u0019�\\u0017Fd������\\u0018�L�Ŝ������\\u0001I��\\u0014�j�I\\n�{rar�]\\tsn�z�5~\\u001e����/\\n�T(�ڒR�a��\\u001c�D�\\u0003q�޻�Hsˏ\\u001e4�\\u00164\\n�}صw[t�&�N��g���_��\\u0000r�뭾�_AS)� *S�\\u0001%n�-oA�z��\\u001c\\rh\\r�\\u0000\\u001b�\\u0014\\u0002(�ҿ��X�f'�\\\\<������>W���\\u001fu\\u0018�\\f8\\r��z����\\u00003\\\\�>��6�\\u0000�,�\\u0011A���F�T�aCa\\u0010%#�~\\u0014L���\\u000f\\u001bh�Zv�\\u0011�m�9^~h\\u001a�mp\\u000f�k<\\u0010�����{\\u0001T�&2҉\\u0018rb�Rum��rcF��?*�\\n2`�08^��{�U������SI{xt ��.��L6$\\\\\\\"񸺆7�[^��a��d����\\u0006��Z��\\u0001�kFl\\u0006������\\u0000,�\\u0017��=+�֙c�B��F\\u0002��\\u001fǭV�Kj`㲁ƙ�oQCbFլ1����\\u0016�W��~�)Q�\\u0017�����8�\\u001e�\\\\\\r\\u0000�(\\u001d*-h)))\\\\\\\"�Ca2����z�\\u000f�'�0�\\u001dW�\\u0000�J�?-��b\\u0012\\u0011\\u0015�!a��(�t \\u001a\\u0006f��\\u0016Ҍ�\\u0000%`b��\\u000e\\\\\\\"�X%�mxٔ\\u001f����x����\\u00007��\\u0000�\\u0000\\u0011miD�I#�Bz���\\u0006w�9T�ߨ��3\\u00104�y�\\u001dO�\\u001cy��T3F��ar�$\\u001bWh$FUm�m_;���A)<G�R�\\u000e�ڊ׺~����߱ TV���A4%u{fj�\\u0011.\\u001et:<�dɘ�9/3�?��*���3�����\\u0014��Թ\\u0019X��d72�ec��ߍ\\u0015��F>#����(��~�u�,�o�%��҂�\\u0001��\\u001b\\u0017 )`��\\u0017\\u0000\\u001d�+;�Qrv��\\u0019�UY�\\u00127��\\r)\\u0013cL��W���J�\\b$��YTu5�F$S�\\u0014U!�$_K�>��T���F&P`�.J\\f��ҟ!A�����9\\u0000O���8�l�V�q2ZI[��p\\u000e�_o����bM���Vs\\u0000����\\u001e|�\\u0016\\u0013ʪ4\\u0000;\\u0001�֒F\\u0019?�#�#j\\u0014��f��P\\u0000[��j�3\\n��݆��\\u0015���M\\u0012�\\u001c�����в����z\\u001b@<\\b�r&vV0��ԅ?���_��\\u00130\\u0016򪭛ܖ�(2�Z�r\\u001d|h�Q��\\u00128�i\\u0018 \\u001e\\u0004���BA\\u0003�N?i*�s\\u0017\\u0017�b><N��l���\\u0000�r��\\u0000�Go\\u001b5sYY�\\u001b\\\\\\\"H\\f|�lW�:\\u001b\\u001b\\\\W{��8��R����~'M+���\\u001c�X���\\u0002E�{߶�\\u0004 \\u0011�Q�)�'�\\u0015~\\u000eJ�<q�������Y&:;�\\u0000rPʠ�&�D�Z:,��3����X\\u0004Pn\\u0000��&Qs��qUQYSE\\u0016���T6\\u001f�RD��w�H�pu���\\u0010FŒ�z�\\u000f\\u0000*��*/��?\\u001e\\u0017���B�l�\\u0006r�C\\u001b�\\u001bU\\u0015�i֍xVM\\u0011nǦ�\\r�b@�\\u001b\\u001a|q�Iz\\u001b+!�q�{��m7�O�]e1�l�����4JT��Hшkm[4�\\fA�7f�*��Z\\u001b\\u0013\\u000eyg1F��6�K����\\u0017�fN��8�,G\\u0019\\u000f\\u001fU����)H�`0��^̗C��5X0��\\u001aa\\u001fd��\\t�\\u001a�@[Y��k\\u001c�\\u0004�U(܃\\u001bS��7P<t֋���8�&\\\\<r\\u00155� ?/����?O$�*\\u0010�jI6\\u0002��̝\\u0010b6G<u�ol�\\u001f+������WU2��v��W\\u0012@�F���j�\\u001e鏏9s\\u0019a�E��\\n�}*�]���\\u0000�x��`�\\u0001So��Ⳗ�%�<�����Y\\u001bċ���٦Ğ2�\\\\\\\"���Δ±\\b��\\u001b��j�\\u0012�Q��Z8��3\\n73��ЧV�;�c�a@/!6\\u0000xx��\\u0010\\f\\u0003�kt\\fΈچ%5�Ҳvϱ�V\\u0005]�&\\u000f�\\u0004\\u001e�s��>���\\u0013\\u001fr�c�)��\\u001eׄ��G�'�\\u0005�1���6�ͪ���\\u0000H��r�\\u001b\\u001d�UR�LV���0dL����W�\\u001c�a���92�#��>\\u000b�\\u0002��v�q�h�b����M5�\\u0004�s<\\fy$�C�A'�}��3w\\u0005U�\\u0004G����x�\\u0018rĮ�) Xm�֋\\u001d÷!�|�X��\\u0015u�Ɂ�h�\\u0014ٝ�ɤi1��[D>\\u001f�\\u0000\\u0015'�yD��\\u0013��4���1\\u001c�Qp��\\u001e+}�B�\\bs\\u0000uev]�G�E���\\u0001B_Pt�b���om/^�\\u0004i��;k}k�JJlu�d��R�$��\\u0006��\\u0006��(��Fd\\b������\\u001b�)c0��/���~7��\\u0004�c$SGŅ��+\\u000f?X�&���\\u0010T\\u0015N1�x�԰�u�A���ȼX�������g��)�\\u0002\\u0014!����t\\b�o�����i����f%cv \\u0001�@o�R��\\\\\\\"q\\u0012ls y�Ƭ��\\u0014�\\u001d�\\u0019c�W�\\u0003�-y\\u0003\\u0013�\\u001e͹\\nKmG��\\u0010��� �4�\\u0012I�%�`3%x(�L��{����T\\u001e\\u001fu\\u0011�7�\\u000b{dq\\u001c���Z�|~&�_���C�GB\\r\\b\\u0019a{\\u0003a}\\u000f��M��\\u0000���\\u0006KJy5���\\u0012K\\u0010z\\u0012\\u0005�t\\u00043}�\\u001a�hG\\u00157��nQ�Cy]�ߖ�R���\\f��\\u0000�Z�\\u0006\\u0000y�Ҏ�VL�\\u0004\\u0006\\n\\u0000�֚�OA\\u0010Α�,�\\\\�\\u0006�\\n9��$Vh͜]o�a�YeG���d3\\u0006�vR�+��\\u0012�\\u0004\\\\�\\\\\\\"�!�8��ۦ���S�P���\\u0015\\u0012\\u000f��ƽ�}W��:\\\\u\\u0014D\\u001e�Z\\u0017\\u000e/mP\\u001b��8HT�>F�C.�ɶ��\\u0001Ue�ָ�\\u0003��^MnZQ\\u0000R�Z427\\u0011L�\\u000e1@ʧ����\\bS�\\\\�0�\\r~tf3�\\u000e\\r���\\u001b\\u0006?~%\\u0017UbC\\r�\\u0017�\\u0017�c��+\\u001bjlƓhi14�D�.5:V9I7\\u0002��-�\\u001eU��l�2\\\\\\\"�*����\\u000e?�c%\\u001a�W�m\\u0001�����-Qq�2\\t\\u001e?qv\\u001cRV\\u001eA�zRͮ�6e;�[�6[\\rg��As��^�:*)����յ�\\u0000�NVĴS\\u0017IH�Ć#�\\u0006�W^^\\u0015�ŝ�d��1�$kn�졿N����������\\u001aI�\\u0007�2��\\u0005@\\u0007J�;\\u0005p�W2r�mk[�Ɨ�I�����\\u0011�\\n�� ���s��ax�R��fe�\\u001b\\u001f�.5��W�\\u000e[�\\u0007_P��*�\\u0019Uy�0_�#J�\\u0003\\\\\\\"#2Dl��oo�t�}�-�y\\u0015K�&!�\\u0010v\\u0017�ĎV�����\\u0011q?W |�[*\\u000f���ߐS��\\u0007QAf�\\u001b`\\u000e��@\\u001edJ�q�8��\\u000b1���#�\\f�˰ւ�!\\u001fҷ\\u0000h/F�\\u001b�Iߑ\\u0017�\\u0014l\\u0001�O$@�6\\u0007S�hRl�Z[��tR-qֵ��\\u0019\\u0011�P\\t\\ras�[J؈��@T����ʗ�5)\\tRF�\\u0016�&D�[_�[P��д�hӔIe\\u000b􃮻Q�\\u0003\\u0003�?�'xdKX\\u0005\\u0004\\u000f������o10](��k��J��t�|�\\u0006l\\u0013�Ў\\u0019��;�X��p�q3\\u001b�\\u0001x�>u�(Ϊ\\u0016��ʊ�<� �V�׀�\\u0000�\\u001d�l���� \\u001cP\\u0003���\\\\�$�bq$<����ku�������9#\\u0012�\\u0011q��FeC\\u001c��\\u0011@Ӑ`\\u0007MhAi\\u0013T�R�$�R�\\fM4�\\u0012�Nl/�\\u0000R�1=�$\\u000b�O��P��e�rі\\u0003�/�}���\\u0014�yY�.\\u001b�j�\\u0014�D��p7�,m��\\u0013��.T��\\u000b\\u0001����1�Lx�Q��u�O����΃w�\\u0014\\u0013�\\t;-���{�����DI\\fn�6�����\\t��\\u000e��x\\u001f�\\\\���c�\\u0019V���\\u000f� �*\\u0001��݈�]��P���R��\\\\\\\"�4e\\\\\\\"�Z0\\u0002H\\u0003Rt\\u0003��_�\\nccG\\u0005�Pjm�\\u001dO�C\\u001a8�a��&3��z�\\u0017��=M8��\\u0018�DR��u*t��ƔВ�\\u0019*T��1dʔF�\\u0001���b0�\\u001c\\u0016R�BE����v�\\u0018\\u001e�\\u0010�Ř\\\\��\\u000b���d�#0�������\\u000eg\\u0015^\\u0017<���\\u0014Π�;\\u001e����ʗ��8�>�A�\\u0004���|�����\\u0004��*T�\\u0011*\\u0000N��A��\\u0012c��j�k� \\u0013s�\\u0010#U\\u001cQB�\\u0000-N\\u0000�T�7#N�@�8�ʺ\\u0015@\\u0006��ev��q����bx�I\\u0017;kI�\\u0013\\u0002�^^��z��T�\\u0013�l�m��!�[�SEņ\\u0015\\t\\n\\u0001\\u001e�\\u0001��U\\u0013g#R�\\u001e��c\\u0016Q�ȽKn��\\n�j\\u0006\\r&\\u0012;�V*I�\\u0016��r1�\\\\\\\"5\\r~K�p/�\\u0011�\\u0018�x�c`�H��ڻ�%�\\u000b\\u0011q��\\\\\\\"\\u0007�m��n�\\u001a���]Q�M�Jr��L����?2\\u0010�Cbk*c�\\u000egt�bH$�\\u001b��W����*�[�kZ�R�6���\\u0017ԧ�ݧ��\\u0017\\u000e��-k|���۰\\u0004vXP0�ۗ/��G,UN�Z/�~�$g��E�r�\\u0014�N݌�W�E$n-p~T��r��{N�6��A�R�yF]�#�!21\\b,t�W�\\r�kh/W�T�/l�E��$�X[��Q�~,,mT�\\u0010I*T�LD:�U\\b�n\\u0005�Z�\\u0000J�*P\\u0003Ȼ�:p>�\\u0005@����\\u000b�fř��G��\\u0005-Л��g��2�\\b1�\\u0018�\\u0000�\\u001bE�x��\\u000e͇�C���\\u001f�Ɗʴ�t\\n��\\u0013���5\\\\\\\"f��4��\\u001a�\\\\\\\"�\\u000e�\\u0012���㴀HG�oSV�Ц�\\\\\\\"��\\u0007\\u0003Poj%�éR�_:\\u001a�T-I!77�R����M��/��\\u0017�Zz\\u0000\\u00186 �\\u001bѧ�����Mi6>\\u0018\\u000e�\\u0002�.77\\u0006��\\u001d�\\u0004�\\u0005�֕o�`\\\\\\\"MN~I�@Q�/���$�ř�#�J{��\\\\\\\"\\u0005��\\u0000E�~w�\\u0001U\\u0016�r76���\\u000eT�w$�k��-BeJ��so���\\u0004��4\\u0000�*E\\f�7\\u0018��_\\u0001�[\\u0006u����ZN7\\u001a�ܼ���\\u0017�;��R�ÒV�\\u001e#�sM��ȍy0[|j��3�\\u000b\\u0003�h�\\u000eX\\u001e<\\u000b\\u0002q\\u0006��I�[\\u0005f�A?\\u0001zg\\u001fk�\\u0000���Q��\\u0000:i�\\u0007\\u000e\\n�TmakR�\\u000e`�\\r�\\u001f\\u0011j�>'���h។\\u0012\\u0000�lH��\\\\�B�dH�,��\\u0001�\\r4�\\u0006u*T�\\u0004�!fF��;�Ev�DӰ 7\\u0015���Q���3�\\\\\\\"��Op��\\u0017��\\u001aM�\\u0003Ku�@\\f���X^����\\u001b�ĺ�\\u001bSi�&,���2\\u001d�w\\u0014\\u001eg����.G�\\u000b�J[�\\u000b^�|�t�\\f���1����\\u001eA\\u001c\\u001e������_[h\\u0000>\\u0002��J�UP�(P�R�\\u0000�`.|��*\\u00171�8��N�P\\u0016��M��+U�\\u0016\\\\\\\"Ve\\u0017\\u001dM\\u001d��;ZJ�\\u0015y\\u000f�_Jp%ii%���x\\u001f����g��oԩ-\\u001d�\\u0000\\u001a��\\\\�u������d\\r\\u0018\\u000f�\\u0007�����[P/Y\\bN\\u0016��\\u0015J�\\r��\\u001b�N�4����s'����T�\\n`j^$\\u0013\\u0003'\\u0013\\u001e;�\\\\\\\"V�����LQ���\\u000b\\t,[Kk�]�N\\u0014\\u0019��R-�ٔ��\\u000f��]����P��r%#�\\\\\\\"̠��S:6;'\\u0002�\\\\�qX�v!��;\\u001a%��y9�\\\\\\\"��i@T��L�I�\\u00125��\\u001bVu*S\\u0011(�ߒ���䲖X��F�B(z\\u0016L�\\fʶ��5�L�f�σ\\\\\\\"�\\\\\\\"�07\\u0006��\\u0000�W��.\\u0011\\u0003�%���o�\\u0000Us=�\\u001c��#\\\\\\\"*�Qr��\\n:~ϙ\\n�\\u0000H:�ԏ���~)�6o�XD�\\u0012K�c�\\u001f�ue/y�|E��\\u0012D��n;\\u0011��\\bS\\b3�\\u0012\\u0000\\\\���4ϳ���?�I�?H>\\u0014&փP�]����X�̼\\u0018�&���(c<i�f��Ͻ�3\\n\\u001c�u��������i\\r\\r��\\n ���\\u0016;�zm��p�l�&\\u0003V\\\\\\\"��F��L�#@<jI\\u0019�\\u0002M秊-�$p5L�(c⌠\\u0001��OZS���)u\\u0004\\u0003�VH]Ә�\\u001eu��輛ji�cɝ�\\u0016\\u0015�.��p+u\\u001c��ռX�~�s�SkWv\\n��c5�\\f��_[V���c0��`���ڶ�\\u001c��kP�$�\\u0003S�\\u0014�lB\\u001d��\\u0007\\u001e)}�\\u0003�\\u0017+a�}�5�v`{\\u0011\\u000b�2\\u000e�\\u001ag\\u000fh�1��Y��؃a򬲻v*\\u000bD�\\u001cosq��\\u001e�\\u001d�.,��+�*�r\\u0016>�j\\u0002D�u�kyq�\\u0006mT�k\\\\H���-���0H\\f�����~\\u0015��y5���Z�c���\\u001d�\\u0006������Ł/\\\\\\\":�\\u0012\\u000eR1�Tx���~�Aˢ{j\\u0014t�V���7�\\u0007���4�\\u0015��y�#jiȚ%J�)���\\u0004�\\t�S(b�[\\u0002�ORu�h���6\\u001eB���\\\\D�\\u0011��ƥ5�$����Y\\\\\\\"�vQ�6\\u0015IȚ��*T�#�Uaf\\u0017\\u0014:�ȭua�\\u0013^�I���\\u0005��X[�:�GB(��\\f��)���Ո�o\\u0011V�2�\\u0000Q�p<�O���\\u001c�C�M���7t�Y�G6\\u0012\\rI\\u001b}��D(�w�����4�\\u000b\\u000eD��v&��_~�Ռ�O����E\\n�4\\u0003��V�MV\\u0014\\u0004��R��$��3&����\\u001f��}���$37�\\u0016��t�\\u0011�����ػ2\\u001e>�\\u0007�M�\\u0000�W\\u001d<-\\u0004�B���O��\\u0006u*T�\\tR�J\\u0000'\\u0013(A�X\\u0012���\\r^l��zA�KС\\t�\\u001cy@���p�L�sR\\u000fZ�>H-j%0���bb\\u000eǧ�F��΍��J:�NCV�^�\\u0000\\u0013R�K�a$��=�x\\u000f3C�:��5XP)��\\u001e���\\u001cr,�%X\\\\\\\\S\\u0003���\\u0011n1���N�?��R��r��,�H����svc��*T�\\\\\\\"�?\\t\\u0003t\\u001b�(��+߈b6�\\u0013AWS�#��H�R\\u0016��7$�MM�\\u0007.U��ASАE0������;z��4�w�X�0\\u000e��\\u0006ֹ��Ł�Eם�\\t&�r�4\\u000f@���{<b��Б����r�\\u0016u\\u000e��\\u0005q��\\u000e��o\\t[�n\\u0005)LyA�\\u0000�O��?��\\u0000\\n���*X�'���!<��_R�^��p�\\u0018�ڶ9@� \\u000e�4=JM!�<�\\u0016F��s#��K\\u000biU�N\\u0002Y�sm46��)f�Ǩh\\rZ�l\\u001eϊ���D\\u001ag\\u0001���I�>\\u0014�Y\\u0015��敊���\\u001djKy�\\u0019}B�\\t{L��\\u0000�\\u0001J�;^B�w[�����)���ŌC�!�1�Q��\\u001a�|���\\f�\\u00198�7�zv؉�\\u0000��G�\\u001fƇ�����\\u0010\\u0007����\\u000f��\\u000eb��h�:�(��\\f\\u0005��yЬ��ΥO�\\u0016�+6��͟%�M<ERI\\u000b���*�(�H��Z���,M��Ԣ\\u0010���˵x\\\\��4��Z��W��3�B�\\u001f��\\t,s\\u001d���\\u0019[b�\\u0000��4�%-n>M�W\\u0012y\\u000e�����h�fTr��EÞ�m\\t�V��\\u001f�^\\u001b:\\u001e;��R\\b\\b�\\u001d�\\u001b;�F��6\\f,5�Ҟ\\u000b{�.h�I��Qx�f\\u001f�O�j���8�F_r䮃^C�j��05K5�dؼ���\\u0007qB'j�_���_[\\u0003]\\u0013�\\\\\\\"�-\\u0019F:��\\u001eV�P���&5�\\u001fU��2wJ�^�\\b���,*�*PQ*�I\\u0000�b\\u0007�V�\\u0000Vy2L|#>��[s�W\\u000e�\\u0000k�\\u000bk�^T�VhMI�\\u000b�\\u001e\\\\\\\"��H�Y\\u0011ʋ܅N�uZ֥CRRge�ܻ<\\b��C\\u0011^�׷ʒw\\u001e���.1f��\\u0011~��)Uf`�.�@)�6\\u0004q����>�𤨐;\\u0003dd��,\\u0018\\u001b�֬e��EC�M�\\u000fd\\u0005Ǫ���i\\u000fpE\\\\��Y��w��$\\u0011�2�\\u001byx�\\r\\tx\\n\\u0015�^��Dԥ\\u0003\\u0006Xf`���������\\u001d�Za�1\\u0012iĳ�������0\\u0016��l*�\\u0001�t���\\u0000]�pQ�Q��AMٔ��$!�O\\u00104��B\\u0000�r�8�6�\\u001d\\u000fƬ�(of�puނ�S�L���{�RM�e�\\u0016\\r�`�S�\\u001c�\\u0001����ƥR79+\\u001ck\\u0012\\u0004M�Z�J\\u0004@Hڼu�⽩@\\u0015a'�Q\\u0018�E�\\u001aU`\\\\�!�ש\\u001a�쮋�vH$�2s\\u0001n^��e�B�u�0��QB�\\u0016U\\u0002�\\nb�|�Sͮ��Uv���^\\u001f$�9F���~\\u0007�?n��ҁ�ۛ޴\\u0012\\u000e!OJʥ(C���\\t1�3(b-HdŒ<�Q�$>\\u0014uJ�\\u0011�-:ʮA�O�l�\\u000b\\u0016\\u0002��^T�v\\u0003||�\\t`G%qf\\u0014\\u001eLm+\\u0012�\\u0000�4BF�.\\u0005�\\u0012��\\u0000kQf\\u0007�a�C��\\u001f\\u001cH\\u000e\\b�\\u000eJ��F��\\u0006PU��V�FHKJ,�.E/��G�\\u0016��S\\u0010K�9R�8�օ�R�\\u0019�\\nN�\\u001fm�\\u001d\\r\\u0004�s�a��w\\u001bS\\u001a�\\u0000�4ΆA$H���k�oyl�,���dF��.�Ӭh\\u0016$\\u0011��'����\\bV2���V$��s��\\u001c��f�\\u0000#��4 /��6<�\\\\\\\"ףp'Ǐ'���\\tב�\\u001at��/ �a�5�/o�)�(�{��K3\\u0005�\\u001d\\u0005��T�ȝ�\\u0010\\u0013�4I8\\u0011I�T�\\u0011��Ư��O/\\\\\\\"�S�\\u000b��\\u0000�;qȆY��\\n�y��|x�)�!�ˑ��0x1Wb��G[�����j5\\u0017��8�rD��������\\t��~J�\\u001b�-j�Bv���Q��b��\\u0014��\\u0000*���\\u0000��\\u0012\\u0012�<G����.���|b\\u000f���j�*�0ѕ �5־.7&W�\\u0015��)@\\b��6ih�.0-\\u001e�7e�x��\\r)Y#�K�\\fټ���]hfnL[kו*[oQ�\\u0006�\\u0018}Jn\\u000f�Zi\\u001eqiO/��R�\\u0018&1�e�\\u001f� ��~㒙3,�����=@�/�C@z�Y���Ƴ�#�3\\u001b�\\u000f��2�\\u0016��('K1\\n4�1�)�\\u0000\\u0012��Ǝ�?j%�~\\\\\\\"�񡣑�Ů|\\r\\u0012��\\u0017�D�\\u000f%����N��ք�Ǟ9\\u001b�\\u0002���\\u001a`�Y��捆\\u0018��\\u0010\\u0018�\\rψ��\\b\\u0011�adN=\\u000b���Z�mė\\u0010�\\u001c���\\u001b[λVi'Ð�\\t'�ǖ���i�s\\u001a<�%�q�r�t��TZɦ���V��\\u0007\\u0019�\\u0002�I�ĝ��j����}\\u0005��]\\u000f��Q��\\bU�r�z[��m��\\u000e�\\u001bqu*�\\u0004X��!%�Ķ�XWk�X\\u0007��Ѿ��nCf��y;�mli\\u0010�\\u0006��\\u0000~b<��s�)��i/\\u0004�R�\\u0004��vXL�E�F�{iK����\\u001e��t�\\u0001��\\u0000\\u001au�OA��H �k�\\u0006�xV�k\\u0002.\\u000f���m���Z\\u0010T(S���:W�P\\n���V����{mT`@��'�\\u0000Q��Ʒ��zS��\\\\\\\"8؍C\\u0011���Ñf�۠��P]�3��(�����\\u001a�\\u0013�v�A��\\b�oB�ه�-���#J\\u001b�F���a���I�\\u0014��}I�-��X��T*�\\u0017��mc`�#�5��]�\\u0017�\\u0004�\\u001b�Ԯ�=+�����\\u001ew�ǭ��4&Z\\u0018d�E�1wm��t��c\\u0016 ������\\u001a�v�Ň��d?��C�E\\u0018I\\u0003BH�A\\u00140E\\r��y\\u0002\\u000f�FҨO-N��®\\u0000*l<ﾵ�ؒH\\u0016��\\u001ay\\nC(�\\u0000y\\u0011��o�Ʊ�\\u0007`�� ���Ҷq1<u:�-r:XW�\\u0000\\u0005Ȼln/LG;6\\u0004�a�K�e#�O�\\u001d��a���\\u0016_�F�\\u001f\\u0013E�\\u001f��O��U�\\u001dzSB._��o��J�\\u0005\\u0003�-�VqO\\u0014��\\u001b���&�\\bז�{U�\\u001f�f\\b�ڧ\\u0016b,�lC\\u001b~\\u0014�\\u0012y\\u000e���\\u0000\\u000f�P1q�6\\u001e$U���eT���0+��\\u0002nz�\\u001a\\u001c��\\u0016�0��\\u0017\\u001fƋ��}���v`\\u0007��\\u0005\\u001d�\\u0013\\u001b\\u0005bɁ,�*�\\\\؁���S�g�\\\\\\\"\\u00114D20��O#H{�؍\\u0001���\\u0000`�\\u0000\\u001aW������r��7\\u0007�+��z?$4��Ӯ��\\u0019w\\u0018\\u000e?r3�n\\u0012\\u0000�:r���H��nW�@җ�wO�\\u0010�\\u001d��6:|��)\\u0001����O�YU+��\\u0003�N\\u0006��\\u0002\\u0007��kQ�r�\\u0000y\\u001d�u����\\u000e��պ�o�\\nВꥏ\\u0002,G��U�)\\u001b\\u0006 z~C�k+�^Zq��_���&Ԓ\\u000f��\\u0006\\u001d�\\u0018��\\u0001*k\\u001b�'��6���XY��\\u0007����\\u0002��4���{��\\u001a�E���\\u0001�E\\u0002\\u0014T�R�\\u0012�J��74\\u0001x��g\\u0011ĥ��\\u0014�\\u000b��\\u001d��\\\\\\\"G\\u001a�\\u001fH�tF\\f\\u000b�\\n�-�wo\\u0013D���v�ص_&��l�\\u0001�\\u0015���x���x�^��}��\\u0018W�q�s\\u001d��w\\u0016��QA���\\u0000Ɵ+�\\\\�sFL�K\\u001b�<��5t�V�\\u0016�J��\\u0004�_��e���\\u0015�i�4��\\u001fۃ�<�;��\\u001f�@#\\u001ee�\\n��׶��Milr��/[����a�i�%\\u0017Q��W9\\u001cH�9�Iԝ��8śo\\fkQ�nɍ�\\u0010��\\u0001��ф\\u000br�\\u001b�J��X�@U�\\u0018��߃��|\\r5\\\\\\\";Y�#�X3��\\u0003�l����E�\\u001d�)!IZf��b\\u0000\\u001a\\\\^���5��\\u0014���A�\\u001b`F˨T\\bW�%\\u0016�E�I@�d�\\u00040��\\n\\u0006�_��\\\\\\\"�\\u0013��\\u000eQ�r\\u0015H$��lXS�fF�4����\\n<5���ˊ�X�aq�O�� T��\\u0004�Y�#��G�7���U�\\u001d�A\\u001e��:Q1\\u0018'ǖQ��n���'�k\\u0014�c^j�?\\u0003�P#ɲ&�C\\u0010<H��Z��<g>���UU�g>���\\u001e��ƪ\\u0013���?I�nm�O\\u00001x��YAF7`~>5��KM!;�7�k��\\u0013�\\r}\\u0015u?\\n�92g�\\u0012�y\\t!G�V�fu(��l�\\u0004�\\u0000��( ��(Չ�\\u001et�A��C�$ȷ1n%A�.��|���ΎQ����#\\u0013!#�t�jG�����W\\u000f'\\n'ʱf\\u0000���um.�Cz��Df_m�P\\\\\\\"7���(�\\u0000e\\u001b͛��\\r�cѧOZ_\\u0014�?\\u0016�~��H�ɒ��\\u001fq�� \\u0005�S�y��7�2dE�$\\u0019d4�\\u0010V`-�k\\nϴA\\u001c�f��\\u001a/�\\u000b��9'����V\\u001f��lS��\\u000375�p�կ�UT�gS��n�]i}��R��ǃ��@�\\u0003�ڼ�Tٔ��~4�\\r2 �\\u0015���u\\r��(i�,b0�X\\u0016=\\u0001 �\\u001a�Q\\\\\\\"pU�]�\\u0001�h~��X�̍\\u001cI�\\u0011�E�����Z��ǻ�\\u0016�\\u0016�N��W��xB�\\u001cϢ\\u0010K\\u0012��lxf%����I\\u0003�\\u0004ym�k����ܽ�u+\\u0012�Z�$�Q֦\\u001c92w<9$RJ���=1�-m|?�Q\\u0019��C�4��/\\u0011���G@l>u�g���8]ܣ��\\u0000ȇ=�0�<Xt�\\t��b�\\\\\\\"4K��1\\u0002�|knߟ\\u0006>1\\u00128\\u00045��o\\u001a\\u0017+2\\f�,�\\u0015� ��\\u00155�\\\\���\\u0007\\u001e)8�ـ\\u0006�؂mY��K\\u0006\\u00007�}(\\u0007����\\\\����@�D�����\\u001e�+L��I\\u001a)%c�����EE��^F�\\u0012紨m\\u001d�\\fA#O����\\u001dY$\\u0001��\\u0005z\\u0010t���s\\u001c�=t\\u001fʌ�^\\u0003�`/��Cԣ���8yO\\u000e�g�N�5?�)\\u001eb\\u0000t�>��\\u0007ʑI\\u001b��$\\u0005Xt5�rCEjT�LD�����|\\t����:U2��!{��;k�\\u0002gMؤ�0�$\\u0000�\\u0018����\\u0000\\n�\\u0001VP�n\\u000e���Ɏ\\\\\\\"��FF��\\u001f:�L�,RchN��\\u0017�T�k9x\\u0005΍d�#�_}�\\u0016���\\u0000:�p�X�T\\u0002�@\\u0003�H�Z�wu�U�Lo�j9u�̚�\\n�B������IjtW\\u0015E]L�n\\u0001F� ���}|�E\\u001fo�Ra;YA�7���z�KX-|���y{��D9��V#_R�E\\u0016Х���ˇ���%7I�t>4h�l�ԫh���w�Z��2ĸ�61Ȅ\\u0005mx��6�{t)����\\u00066k_�&�쬛�K@����\\u0010ش2D��ĩ��Sfd2)Q\\u0012\\rx�_�>�ϙ!�i\\u0012�z���s�E��G���i~ɋ$ieMj%H�\\u0000�H>\\u0002�Gc2��Z>~7⣊���`�D�������cҀ,�8k\\\\.��\\u0012����\\r,�������[��z��/Bn�\\b�.�\\\\\\\"1c\\u000bI\\u0012��5+�\\u0015���ʐp�z�_Ch�]j���`pBŒ�9\\u0007@���k|�م��$�#�\\u0011�'��k���J�F)�^�rG��\\u001f\\u0001��\\u0002<�4KE�\\u001c9�\\u0014\\u0000�u_\\u0007\\u0003\\u001a\\u001cE�\\u001338'����ږ���㬆,���\\u0003�\\u001f��f]�؃���[\\u001a/R��bd\\u0013/��!\\u0001\\u0003��H��x��M��\\u0000'2c�ɰ�!�\\b�w���\\u0005\\u0007�\\u0013����\\u0003�$t�L\\u0002<���G\\u0000\\u0004��:xS\\u000e�\\u0018����.슽=-j��4\\u001b\\u00166;C$N�g\\u0006��p6�\\u000bt��[�q�\\\\��P���v��\\u000e,A�bX�)^&���~T�\\u0012�U�$R�J�ff����\\u0012g\\u001doC\\u0003��q�Y�\\u0017�\\u0012(YM�'Ƭ\\u001a��K\\u0002fU+N\\u000b^�_\\nr((���V��X\\u001b�\\u001amR�c�k��Z�I�g1���R\\u0001�l\\u000e���#�\\u001f\\nʴ�\\u001ez�v��ƩhK *\\b-~7��ڎ\\\\(\\u001d\\u0003���c�'�%�x�\\u001b�ec�@7��H?��X��\\u000f|�k���a��`B�\\\\�\\u0006D���*\\u001b|G�w\\u001d�\\u001d�*�Kb�]I=\\u000f�p�óO��\\u0013��d9 \\u0003��}\\u001e\\u0014L~ޑ[@�#ϭ4\\u0007;߻�xr���\\\\�[a��\\\\�^\\\\Yy\\r<zr\\u0003��\\u0002���Ü�`\\u0001J1m͏B/�ݧ\\u0001�� I�\\\\\\\"2���<}V���m�\\u0013\\u000fb�R����!�\\u00176$|7�\\\\\\\"�\\u001d��� �8������]g �k��rȪ�&\\u001c�pBt\\u001c�v�*l�@'\\u000eOr�\\u000bF`�,r�\\u0006�`\\u0019\\u000b\\u000eK:@t�U3\\u00168�\\u001d!��U��\\u001a���rm|��c$�&��Ub~�k;jt8}�\\u0016�Y\\u0019ȑ�\\u0015m�q�V^��d\\u0005,�G#{�\\u0003í\\u0013�U�\\f%�>�n|��\\u001bB,l>\\u0015� ��\\u0016�6\\u0003�dR׶�mD\\u0016[\\u0011�x\\u0016͵Ǉ��\\u0000b�VF\\u0000�\\u0017 �h\\u0019q\\n)e%�ŒÕ���l\\u0005�~u�R���i\\u0000����Y<=F��ˋ\\f�H@\\u000e5�\\u001a��J_.4�}@�z�q��&�\\\\\\\"�\\u0000e�kUde����;��u�\\u000b\\\\��BM~��fGj�d\\u0011�ͫ2�*5;W/\\u0018\\u0006D\\u0007b�\\u001f����!Cqem�T[`\\u0015K\\f�)\\\\��Cȧ��[R.�\\u0017��\\u0014\\u0006UR[å;͞H��Op\\u0000\\u0019�6�1-aH;�Q�=�ܤ`�]��USG�!�b��̷K�}�\\u0007�Y��r�\\r*��Y��^��K�uk\\u0003  �\\u001a\\u001d*:��/������UX@�\\u0001l�QoP�Z:\\u001e�c\\n�,�X�)*�6�Ҵ\\u0018�答\\\\�j]\\u0013Erc\\u0017x\\u001c�B\\u0002�\\n�\\u0006��U\\u0006\\u0002\\u001b0�6�\\u000e��ǥumTZ�\\n�k\\u000b>��=�\\u0016a\\u0017\\u0010��\\u0015�++\\u0015`U���i�w)���\\u0007�pw�2_��IbN��UUݼ�j��{�1�敟!K,dYo���\\u0004\\u0011qֹ��\\u0017�[�9\\u000f(�\\u0003º(�cmKW�׵�mVI�V,�M�[5�6�\\u0011��G �����Ч��Jޔ*O��(�V�������Kt\\t��o�{\\u001f���a��\\u0000�b_�V>\\u0016\\u0000:����r[$m�n\\u0006�\\u001a�y\\u001a�\\u0007�j�V��[n5\\u00137g�_���*�v�=�\\u0006V�\\u0005��;%�^���qagK$�A;BCq� \\f,)��c���jj;\\u001cL.%��c'c�ۑ[���:DuP\\t��Z\\u0001}��:����N^Nݛ\\u001e�\\u0012<W��P�26��\\u000f\\u001d\\rv%E���q��\\u000f�E\\u001f��Vw�UR�u�n\\u0018*��s=*�dI��y\\u000f��\\u0015�8\\u0005\\u0000;\\u001a)\\u0012(���W��#de\\u001bG)��7�2;b�������O��Qf��s>��^H�\\u001c;�\\u0007m��쩉\\u001a��f\\u0000��\\u0006a,�\\u000b\\\\\\\"�x��GT\\\\\\\"��˄�ᎆ�O_��9WbX���1��7\\u0017�ƴk\\b��w��֥J��Z�M�mH��{j�H��\\u0003��\\u0012\\u0011�z�*���7\\u0014\\u00174\\u0001Z�p�)�k>�\\\\8H5��a���\\u0000\\u001a,*�B:\\r�T\\u0001�&'�y1\\r!�x\\u0001�F\\u00156��E�8�0�����*嘰!�\\u001b�xiLF��ߑ�zXu=i/p`�&��\\u0000\\u001f�7�¥���7�4�w\\u0012L�1҆\\bΥJ�q�u�;)ق�)\\f��t�x�\\u001cTG\\u001a���'ZU��nA�e�2�������S�[j~\\u001b�cE�U�\\u0000��P�ҩ$z\\ru���ZĤ��k�>5�*��פ\\u0007%*\\u0018�t?���\\rR��{yl���>{��%P�D`�ϝ8�\\u000br�&'@�7&���)2��\\u0015�J�C��Ў��\\u000e�~��A9\\u0013[���\\u0000��+ޠ���,O�'\\u0010��Cc�����L��)%�\\u0018��\\u000b}>u�i����*}7�5MA\\n�;\\u001e<����ƞ��\\u000ff6�e\\u001e��\\u0001��?�k�\\u0014~�\\u0010u��E���J\\u001b�H#b\\b�\\u001a\\u0012FV��kbA;7p\\u0018�}*����\\u0014�AT�P/�\\nC�חw�?Ҫ>��/\\u0019\\u001a�a���R6�ڽ���Y�1M�Y\\u0016Χ]�������\\u0001�򣭴��\\t�+�\\u001b�T+�5�/`:\\u000e:\\u001f��\\f��N\\u001eN#�y1�m��\\u001f���5�y���\\fR��\\u001buaq\\\\G{\\u0007=����Up\\t��_KҀ\\u0017ԩR��F�x{rD�� \\\\�\\u0000\\u0018����R�_�{���sUW\\u0002a�\\f܉��Q�H\\u0017?\\nn�\\u0018E`���܁�Ic\\u0010c���d:,Z�z�M`\\\\��K\\u0018彶U�Bw6�*l��Ux�Ξ�t\\u0017<�����\\u0005\\u0010�FT� ��MD���\\u0018�F���\\u0014�:y\\f��c$ly\\u0001��_�\\u0001\\u000b�\\u001eO�J�BI�ԠD��DT\\u0011{�\\u0015�c^@\\\\�PRH�H\\b]@��I��9ƐIf�؊u��ܝ|+��s�\\u001cBᢓ����\\ru�Iu\\u0006³M�\\u001b��lq$eXh���g'\\u000elf+ \\u0004t`n+��\\u00181\\u000b��+��ɒcv?*�\\b#�ᜧ`\\u0015�-�_\\u0013L?�\\u001f32,\\u0015�lOk�>I$���_K�)��(@Ėn�%��:iܲ�\\\\\\\"\\u0011��\\u001b����\\u000b�W��kj�#\\u001b?�<I���ϋ\\u000b{q(\\u0017\\u0007������a�\\u000f����j�0\\u0007��Z�\\u0001B�'�\\u001a�@W�\\\\�5>�+�Uh�tŏ� ��f6\\u001elǠ��\\u0004\\u000bF\\u0002 ��\\u001fū@,��\\u0013TN(���:�x�F\\u000f�c�:/��٥L�;|9h\\t��\\u0007�A����A��64�����ه���5�Ξ\\u0015��C�\\u0019�U�x> ӭ��\\u0007T�8\\\\�ڳ^X,��]�#I�YX�\\u0002\\u0018hA޻\\u000e����<���;I��ԣ��\\u0014���q\\u0005�\\u000f��Z��BM�1-J�+2�R�J\\u0000��f\\u001ca\\u0017c�¤\\u001d�~%�*���b�\\u0002�\\u0000\\n?�{^�\\t56����t���\\u001b(�NE�\\u0016\\u001c\\u0013^�+;7.\\u000b�N%��b����c!����>U�\\u0003�Z?3�O\\u001c\\u0011�\\u0012���<�[��ԾA�\\u0012�\\u0000~5Ӫ����0y�?�/�k\\f��L�1�\\u001f�v�2�b5*~\\u0015\\u0019�Tf]\\u001eƧi\\u0012,�-��H\\u000f#�_��zϠ��e̸}�F�9�����#�މ����\\u000e\\u0018R2�(�#�\\u0013�'�Y-'uɇ\\u001a;��I.�\\u000f\\u001f���WY�\\t�8� \\to��TY,\\u0016�\\u0005vi&ec�+\\\\��e��x�H�8a{����z��H�;1�IޮE�\\u001a��\\u001c�uď\\u0013/�@��C(&�F�����\\u0019��(O�QI+Z�#7�*T�LD���!�#6ܜ��\\n�����oO2�类���\\u0003�����U\\u0019���\\u001b�դnc^�h4��X���U�l�#{\\u0011���'`H\\u0007A}4�\\u0006���ׁn\\r�\\u0003��\\u000f8��Z\\u001b��\\u001f\\u001aa}ԟ�Z,\\u0005��c���)}K��\\u00164�\\u0003\\u001e˒�a$cF�pa�\\u001ab×��\\u0001�r}�%�sR�K�mǑ6��u�Yl-��\\n�z�#'\\u001ai��Z\\u0006<8S1�ݛa�'�\\u001ef������U\\u0000d�k}�@�}\\\\\\\"����\\u0000�Q@&�s7޼b\\u0015y.��zב�\\u0006�\\u0019��N��\\u000fxX�\\u0003uЃ��,���M�\\u001bmS�MV�����MY[�@\\u0004)���\\f�7�t �֧8��Í�nk�\\u001f�\\u001cz\\u0013�JW�r��bS��>�%�\\u0000\\u001ab\\u0007��)�\\r+_�a�������j�������i��U�.�\\\\\\\"y��#\\u001a9Z5�-{�E!�N@�K�.5\\u0015x�&\\u0000�4�r�$��W�m]&+�Ǎ���\\u0012~T�\\u0010_!co\\u001a�\\u0003����W�\\u0005��[@�-��T\\\\\\\"7���\\u000e��fȭn^�5�ݵ��\\u0015��\\u001fu\\u0002\\u0010��'H��V�\\u0000i�\\u0000\\n_Ew7�-�R\\u0017�\\u0014-CԵ�*�,�߃\\u0015���Ԥ\\u0005�y�x��/�5�c�k\\u001d\\u0005�\\b\\u0005�¹�^n��D\\u000f��P�}\\u0014^�RcD\\f\\tR�\\u001d�����O$mx������`\\u000e�\\u0006��TnjI\\u0002��\\u0010m��\\u0007�e���]H\\u001f��\\u00125+��\\n�{|n�\\u001e�چ��\\\\D�#7-�)�\\u0004��'���W��%�����jqo\\u0003�S\\u0011�^!�TQՔ}�UGv\\b�Y΁@��=����V|�����:\\u001f�\\u001aV�Hi6\\u001e�+¶��D*\\u000b[z�J�M\\f8\\u0013�R�\\u001f��\\\\\\\"Ǎ��c#mh\\u0011�\\u001di\\u0017y�\\u0000�\\u0003��5�����?�@\\u0019i��5T�V�[R�Y\\\\\\\"�CdRMjA�;\\u0005Qvc`<�t�\\u0011{0ǎ��5>gV4�\\u0019?L��ㅴRi�\\u0000oe�B\\u0005�\\u000b\\u001dva�cHh/)m�!\\u001a��G���}bM\\u0014l~�&�?�k��H���\\u0002�Z�ױ�m���d�U�E#q�81$k�5�d��\\u00130�K\\u0011[�\\r\\u001e���$���\\u0002��\\u00192yL�T����c�Z���d��su\\u0002ž�#@�јJ\\u0013\\u0014G�\\u0006 �\\u0006�@��҇�D}�$IW�7$h~\\u0006��y\\\\\\\"�]��\\u001d�)�zB=�\\\\\\\"ڰ�\\r*��C\\\\N��!\\n�����k4��Rŕ�{��efS�I\\u0004lEX�3n�~u.�+\\u000e���>�(e��ӑ�RB�e\\u000b�\\u0000\\u0014.\\u0004�_G�b��ƍ��6���N��\\r1�<�C\\u001a��k�4\\u0003Z��0\\u001c$;t\\u001bUc�v\\r����9��\\u0000/�z�\\nil\\u0013��VC��\\u0003\\u001fmzt&���m�A�\\u0000�m�)eY$�6�\\u001b\\u0014m����U� �����E2�J��\\u001e���b��f\\u0017H�\\u001f�m�\\u0007��u+$��w\\fď������\\\\\\\"�H��.?�-Տ濅\\u0015I8l�u�Z��V�q��I�aI�'��i��<���Ȅ\\u000b�|A��i�H�c~E\\u0005쭥�ip>��y\\f)�\\u00108\\r\\\\�n+m�GT���M;����[+a���I]1.\\u0015D�\\u001d��6^`_���\\u0011*N\\\\�0<�\\u0012�I��1�y�\\u0007>�\\u0004�'B��Z��f:vy\\u000b��)F��ԮN�*ƽ��޵����k�\\u000b�9y���顩I��ʞ�rli��T\\u0013�\\u0000��;�����O\\u001a��\\u001b��\\\\\\\"��ޭ4��K\\u00042*��\\u0012U��J�\\u0017��d7�(�\\u0001\\u001bV1�h!�;&f��u@�̰�\\u0007�w֟r��\\u0016�����Ϛp{�<��\\u000b W\\u0000Xpro�\\u001dj���\\u0000�gd�~��8��9X}�֙\\u0012�I���9s�J�C0��N1�ع���\\u0018�!�h�X�q�A7���鱏D�U\\u000ec���\\u0019�ر�\\u001f�\\u0004��\\u0014륅\\u000e��\\u001fm���,�Y��\\u001a�##�v%�[\\u000b��������E�:�+\\u000bh-k��ɬ\\u001a�9�\\u001c7�;���d��\\u0005n�mp)���d\\u001cm�>4��In�3�J\\\\�q��\\u0019����F �\\t&��$�\\r\\u0013&5�\\u000e\\u0003\\u000f1G���\\\\\\\"�Cq �\\u001e����H\\\\<mŇ����>GO\\u0013+�@\\u0014?�ZWݤ\\u001e�d\\u0004�b6�\\u0017=\\u0000V�\\u0003b�t���D��\\u0012��!?��}LO���JP���T��ǵ,1��nA~�\\u001e\\u001e\\\\\\\"�X�V��J�b���*9\\u001d��kV�qd��c�\\u0000~\\u0007J\\u0005m\\u0019��8 ��\\u0010\\u0005�W��C\\u000eI$^AE����\\u001f:�6�\\u000eVJ��'o�\\u0012����6����S��ֹ4�;L��1�G\\u0018g���Z�\\u0012\\u0001��Bّ$���,}�qg��J\\u0007+\\u0004Ɏ\\u001a\\u0005\\u0006T\\u0016U���4\\u000e>\\u001eK��?��\\n�\\u0005��i9/��T��NS�FtK*M\\u0012�5��\\u0015=lv5�h�%��&Gef� �M}\\u0012%��[��Wϳ�9�$le{�i��4�D ��\\u001bV��4�!�rI��t�h�\\u0005\\u0006}��w�V�\\u000b�ZC|R@�A�zW�hu�b��t��U$����h�I��+#\\u000eU�\\u000e,4�k�BN��\\u0000mLE2�+�筬>zP]�T�#��*�7&��Ex�[�������v\\u0001�\\u0015�R�yf}�3�Ӹ�,)�D1<���2,\\u0000n�:�>��c�b���\\u001c���|���#C�\\u0016\\t\\b�\\u0018���kC�\\f��\\u0014,\\u0006��,<�v���\\u001f���\\u0000�J�ΐ;0\\u0015�H�W��P��=1�Z&�搎G�6A�f}-�փ���]��3��:��H\\u0007�S\\u000f��L��\\u0000O�\\u0003�\\u0006\\u0016\\u0005�W�-�u�\\u0000R���Ko\\u001e�]���M�\\u0006p�e�g�\\u001a^!�\\u0011��ޯ���q��2���%nC`\\t7j�\\u001d�/\\u00104x�\\u0016+�!�m(Vs,�Wлrkmz�\\u0019ru\\u0010�\\u0014_Uɥ]�\\u0010\\u0018�@�ܹ0������$�G\\nͪ�ڗw�Sۅ\\u0010�}X�:*�\\u0000��*����]r+�Q��\\u0002�b/^\\u0006\\u0007J�4e\\u0007�=W��\\u0002/X�cz.0\\u0019m�T�di�X���\\u0005yq�>u���2�!���^��G�m�ҪK.���t�^�`\\u0018\\u0015apE��{��o���\\u0012_u#��\\u0000�\\u0000H`�\\u001f��)����\\b|k j�Ԙ\\u0005ǈ&\\u0017mGKP٘�\\u0005ʂc#C�|)�mk�\\u0003Q�Ew�Q��*:��*\\u0015ڲ^F�\\u000e+Q�Z�\\u001aC&Dr��\\u001e\\t\\t\\u001e<x\\u001f�k��n��c�S�w>�n#^p��Hm���X!\\fM.Nv9�EG���66����.q0\\u0019��\\u000b��Δ&\\u0002\\u0007�\\u001e1k�,~B��s�P����\\u0014irM$�H�[�.\\u0019��{�!7WГU�\\u0000�YA!oq�ʡ0G7�&�0�\\u000b�[��Ê�,\\u0014�݅�K�=ȷ�\\u0011O�������Lqr,\\\\\\\"�5��ͥ<Ζ&+\\u0016�~D�\\u0001H\\u00003�,�n��|\\u0006��\\t�\\u0007�`\\u0005���\\u000b0�\\u0014,`��E��ѪH�&\\u001a\\u0011`GCHgYb�1HO%kU1\\u001d�5�Q�\\u001a*��\\u0005jw\\u001e\\\\\\\"�\\b\\u0016\\u0017�´��4�R/@*䱹��Z��O¨opA#�kp\\t7�\\u0000\\u001a`Q�\\u001b�\\rP��{V�H��\\u0015��^��@�ʑ��m�o{Zՙ\\u0000��75�F&����>\\u0015@���:\\u0006g\\u0016<I�(S��ʒ�TX�x(��#���\\u001cF����q>l���r\\u0007�t���A=��*C\\r����갻�Y��d\\\\\\\"<��ԛ\\u0003�e�wه�ƴ#\\u0015�B�������N� ׺w\\u0004�7�EY\\u0001^�E>4���,�rI(>����f\\u0018\\u0019�$R@�?¼l%�G�2�\\u001eZ\\n|[o\\u0004�\\u000eܨq��\\u0001O�`<I\\u0002�r�;��$��&��,@\\u000f���yr��aj�#��k����\\u001e\\u0014�\\u0019i���\\u0011?%���Ĕn�����\\u0010��7\\u0016����\\u0010q\\u0004�\\u001b���\\u0015�M����Tqe\\u0004��,A\\u0007�\\u0005OK�R\\u0018KFn\\u0001_\\u001e����e�]��G�\\f�\\u0018��T/%�O�[T�\\u001a\\u0017x�F�ok\\n\\u001d�\\\\���\\\\{|��\\u0011cK�B�M\\u0007�m)\\\\\\\"u\\u001d�7A\\u001c�v�?\\nj31��>���s�/(�^77'�;^�5�cǍ\\\\\\\"��1�.��l\\t��<M���\\u0019ԍ\\b4\\u001c�\\u0015K4\\u0011=�<}'�\\u0004XΡ�2��,G�V�!��ETЇ\\u001do���c�*�\\u001eB�3��?ƫ��1�\\u0017j#\\u000e0�\\u0010�Z�\\u0007�_̍���V�\\u0000�Ȉ\\u0012т\\u0006�M\\r��Jc�hf�6\\u0012\\u0003�ݛp�\\u0004�\\u000b҆�\\u0003�`6\\u001aP\\u000b�����Po�։�`��H'�R�ΣmƁ\\u0005y)PlH��⩋��'\\u000eE�'�o�E�o�\\u0013\\u001b)�>\\u0015M\\u0013%xW�-ַ�<k���\\u0014����\\u001e>��S���\\u001d���\\u0014Cu\\f��@�\\u0015=�c/��@qzaiM���<Me\\u001eD�=��\\u0015L��HT�\\u001eu�6#��-{t�fuQ᷾��\\u0005AkX���\\b*��AT�5\\u0007ꬲ_�B׳���Ԧ\\u00039po8?\\u0015\\u0015\\\\x�@]O�c�t��\\u0007\\u000e9/�n�����x0���-\\u000ew�d�'\\\\\\\"���x�\\\\\\u0001}?�o\\u0016\\\\��ecb�\\u0006�j���B���xr�ֵ����UX\\u000b�yiT�2|��ӟ ��W\\u001c\\u0000��؆������c�P��z��\\\\\\\"1r��Q#aX�\\u001e䓡Ҧ�'OS\\\\|��8'�����CU㑢nK�\\u001e4�2.����Mj#�R}[��X�� \\u0013N���\\\\\\\")��k�m��J�\\u0012���,��4H@h}}&˭��z�H\\u001a\\\\���\\r��\\\\\\\",ֹ��\\rl�job4\\u0003��!\\u0019�-!\\u0016:\\u0016\\u0016��u,���,Q<.M\\tI�\\u0005�v��`8�}\\\\�oj�#On5�E�Qe\\u0003�����걩$\\u0001b<zї \\u0017���*@��_?/\\u001a�v�����W��V7\\u0002�\\u001c��\\u0006z��\\u0013�Wi\\u0014i��u��\\nE�6�>�\\u000e,�jN���t\\u0001Ya�R\\tEb<E�\\u0000\\u001a�Ga�\\u001a��Kj6�\\u0015��c�f?��*�1\\u0018Q]�-p��g^I�a��(Z�\\u0000�\\u001e�2eH�qJ8��\\u0007�s��>YSb��uk|��Q*�\\u0011}E\\u0017�,S*C\\\\\\\"��O#\\u0015=\\r93�c~ܜ�tD[�\\u0012P�\\u001dEk\\f~�7^\\u000e�<�_�kX��hO���\\\\3'%\\u0017Ћ�7\\u0002��[�U�����A6ֈ��b��g#�G$��9\\u0005~\\u0002�\\u0002\\u0001*\\u0001���/\\\\�ӯjȊu^Hī(��ʺ|,���\\\\�[�8��y\\u001f:\\u0011�\\\\�jǈ,v\\u001dj�p�\\u0013s��ִ}@]\\rη�\\u001a�\\u001eʥ΀jM1��\\u0006v �>��\\\\�GW�\\u0001�DEo���k�3�q\\u0017���\\u0005���S\\\\\\u001e~KO�$��\\u0000����_O����z���\\u0017v6\\u0017��\\u000e%��\\rI򭡝d\\u0006)=2&�\\u0006�:\\u0000/'�d��J\\u0005���_��\\\\\\\"L��@\\r�:QswI�\\fb��)������#\\u0004�i�\\f�\\u001d�=�?\\u000bS^�Fx����6\\u0003��\\u0005\\u001e�:ؚ6\\\\v%%� J�\\u000b\\u0005w��|)a��Ȳ��z��|�Ȱ��)�\\u0018��]t�\\t�i�7d�H�<�_\\u001f\\u001f�\\u000e`K\\u001b\\u0012OJ`��͋)�6R��[�v��\\u0011�[��b@\\u0002��Ck��؄�\\r���GeO�g��eӖ��:\\u0006��\\u001c��\\u0018#�V8�-��E��\\u000b0\\u0004y�j\\u0015W��<�,����X�h�Њ�;Z��ӑ�5�g\\u0005\\u001b\\\\\\\"D22�����a�5�a�m\\u0010*@\\u0002���\\u001f����rE�{\\u0011]/�)�Ĩ\\u001f�J�_�7\\u001d*����(�\\u001e׎\\u001d��\\u0005��\\u0000Q$Su�K\\u0015\\u0006�w�}�9�\\u0015�\\u0005\\u00025\\u001c�A�mG��\\u0011�n\\u0005���񮝑����\\u000e?7\\u0016\\u000f!�\\u0012o�/��Ko6s�\\u0007�(�5�+�נ\\u0016o��V���B�}�9^Y�&@5\\u0001o��ƕ�N���o\\u0011����c��\\u0000\\u001aP3H�bQ\\fK�\\u0018��\\u000b\\u000f?�\\n:\\\\\\\"\\u0015EŁ�S�ż(hx��pXh\\u0000�/�5s����$��\\u001a��I�\\u0001!��rs��_�^��t�G�b��\\u0001��w\\n?�\\\\��\\u0018��z\\n�+���#�؆Ӊ���w��\\f\\u0018�\\u0013c����\\u0019�\\u000b���X�U������v~ْ\\u0018qb\\u0017�\\u0000\\u0012�*�o�\\\\����R�\\u0013JN��d�\\u001a�EJ\\t�C%�{��+\\u0003��4�\\u000e\\u0006X�G+淚m<\\fU\\tnJ���>\\\\\\\"��.\\u000f�U=|)�<h�\\u001a���i`�\\u0018�Gƶ\\u0018>�d��\\r�ҋX�%�\\u001d�\\u00007�t\\u0006Gq~d�n\\u0003NCZJv\\u0000\\t`\\\\\\\"c\\u001f��g�a\\u0010�YA\\u0000��m�m^\\ty�4�lZ䚦Fh��\\u001a��W{��\\u0015��{\\t\\u000e;[$һƞԊ\\u0004k\\u0018\\u0017UU����]\\u001cn^%\\u0012(\\u000e7Q��k��9��D�,?�uv�ט��\\u0000*o�e(]�&\\\\\\\"�\\u001a˲v.��2�\\u0007���Rm���H\\u0007Q��;�z�H�ښx\\u0013�\\u0003�E�`H@�2\\u001c|��q�b�9�\\u0012D�Υ~�j�\\b*J�Ƈ�+J<2,J�*U�Y\\u0011�uE՘�>&�� �aH��P\\u0000\\u0007��\\u000ff�2d�O�\\u0010��\\u0000Q�WB�u5u&ǡ��[x�5F����׮~�^�E���TI����cb5{\\u0016�Q�(.Eԝ�R���\\u0004 �\\t��Q\\u001f�\\u001f�D��B'�x�#�e�Sc���\\\\\\\"�;�\\u0018�\\u0000�[|�\\u0000�s�*9��\\u000f�Xߪ�\\u0000�Hɑ���~��b�&���� d��1�\\u0000��&*WM�k7��(@�㑸�^�}D\\u0005\\u001a\\u000b�j�H�-��\\u0002���%u��ύ (� *A\\u0017�A��zH\\u000f�7b=C��W��K�/cf\\u0003Z�%f\\u0017#s�\\u000b��z`X�,H`4��-^�RM���+[�U\\u001aN�B�@��k\\f�����[��|(\\u0002��*<H������?\\n�\\u0019�ػ\\u001b�\\u001b�WȞL�ZY\\r���\\u0007@+:�IR�J\\u0000�*T�\\t]\\u0016\\u000b��\\t�\\u0000(\\u001ff���~�8x}��G��I�����Z��^�Qk\\u001b�ɡ�[_��:��Q%v\\u00006��T �8pQp5�Z�V\\u0011��x���T\\u0012\\u0010��t�+<�2bJ�x��cZ\\u0000�s$�!��O�j�*T\\u0014J�*P\\u0006�+�.!�o�kO��k�\\u000f��v�FR����N\\u001a�\\u0006Mƺt�l��jI\\\\\\\"�m��\\u0000½��ב�Q�d\\u0015���\\u0000�m�5�\\u0000�fA�m\\u0000y+hT���ƿ�s�3��?H�G���0\\u000b��;xW7:p�D�@�^�\\u0013\\n��9\\u0019M\\u00137�\\u001eC��\\u0004���\\u0011{(#Q�@\\u0015~\\u0003J]قɃ\\u000e�*���\\u0013D�\\u000e�D�8�\\u001f�6\\u001a0�k\\u001bY�\\u001e\\r*�R\\\\c²>@@%����]A`N���\\f\\u001e�\\u0006K{Rjm����\\u0000�=h�#+�K+\\u0006\\u001cM�\\rW��o:Ԯ��kkW��;\\u0000m����&\\nC\\u0005%F�u��r55�+\\u0006��íU�V�\\u001b�\\u0003T\\\\\\\"�~�����\\u001bt)a�&�09mr\\b��7�(��9F��~L?>�+h[\\u000b\\u001a4�H��\\u0011ɛ��\\u0012�\\u0015��tn\\u001ca��(\\u001b��������nl��=$�P���\\u000f�\\u000e���(*&\\u0013L�\\b�dO\\\\���ߕt��i���U�,E�:\\u000b�jG\\u0007;\\u0018�<Rŉc�g;��R~�\\u001f�Ğ&�\\\\\\\"��5\\r�\\\\�}jmd�\\u0015Z��}\\u0004�b[\\u001fU�C��^⑳Ǔ�\\u0000�\\u001e7#�\\t\\f�G�\\u0005��#Ί��equ��Г���u)�Ee\\u0011�2\\u0011#�Qco�c� giy\\u000b��\\u001dG\\u000bt�P��\\f8�P�=.�\\u001d~4�\\u0016D�B��ܯ�@��\\u001dC\\u000f�c�0�0�7\\u001cM���\\u001b�\\\\\\u0013�\\u0004R*�;�S�(\\u001a\\u0010A�\\rs�Є�R�J\\u00007��Y\\\\���4�R9��\\u0007��=H?� �h�3�\\u0004�u�Ɲ$2�<@�9�\\u0005���ǗJ���]\\u0001^%R����f�Y��\\u0016��d��+{q\\u00176\\u0017,v��}Ƿ\\u0019S�_�&��Cᅄu�\\t�J�v���Vtwm�Y\\u000bJ��\\u0000<zց�^WK�)�/x� '\\u0016f:zUF�����\\u0004\\u0010�\\u000bI��Y��x�\\u001fJ�7�K�03�gW8�ǡ�AR<lk\\u0014��X\\u000f$���#��ci4Q����K[���)j�\\u0015f��\\u0000\\u0017�[B�\\u0012gM��;Z\\b�w\\u0007�}=����xڴ���رv��i$>��crno��ѝ�N\\u0018�}�$q�ع\\u0003�&�\\u000f��ͮcd�3�)�f �\\u000b�?eS��쵆���=���\\u0012�x���(��\\r�\\u001av�\\u0014`�-��\\u001b�?��\\u0016<�\\u001a5�\\u0000�����\\u0000:빌hZIH⠒Mq~�ov�\\f`C$�9�\\u000f��\\u0002�:?c���wk�TLe�O�6�T�����5�D\\u0016�\\u001e��c�П\\u0013\\u001aW�'ܔ)e�46�\\u0017�Φ�\\u0000\\n\\u0007\\u0007\\u001f��\\n�꾧\\u001f\\u000e��U\\u000e�fL��\\u000e\\u000e���\\u000b1\\u0000��ĵ�cܱx���d�4�\\u0011����k�\\u0017�͓4x��\\u0004\\u0016���wx\\u0012V�����%[�񩫛��\\u0001ؿ�ǜ�v�\\u0012wȝ\\u0007��v�\\u0016$z���klh]{���\\u0017|�p�~!I\\u0007�\\f�����d��Uh�\\u0012t�_����y������ZG$�o%�Ҵ���O봬�\\u0015�\\u0000�\\u0006\\u001c\\u0017\\u00124@yƇg6��N#]�\\f�\\u0011�8n2B\\u000f��,:�+\\\\\\\"Lek{�2\\u0000�\\u0002u\\u0000���wRcȐ��Mε)?\\u0006�\\u0003<���%�\\u0018�<�:�*�%J��f\\n7$\\u0001�\\u000e�\\u001b\\u001f\\u001e\\u000e\\u0012d/��\\u0001cۓ\\u001d��pr��\\u000e2��\\u001d�*\\u0000\\n��@���4N�K\\u0014D\\\\�P>F�[\\tg�h�4�>\\u001c�BR\\r�/y�lq \\u0017\\n=W\\u001biI�2<�\\b\\u0006�a�Mt�S/\\u0012C2��N�v�W7�01�gW�J�\\u0007K�\\u000f�(�H=Z/�S�C��r�\\u001b\\u001d�LVp�������5�b�Ig�8-�Wb�>�1\\\\�=ۑh�����W���,<Mvݩ\\u0012,H�[q�6�ܙ�Q�[�i\\u0016�Uv�����%~�\\u0010��F\\u001a\\u0016$\\u001eR#\\u0012G���U\\u0013\\u001a.1�Kh\\u0001$��>u&���_i��\\u0011\\u0012D�nC��#CL��_��\\u001a�?\\u0011_<��\\u0000�O�\\u0000�\\u001f�\\u0000\\u0011������\\u0001���c=\\b��\\u00173�&�A��0���`�Q\\u0018N\\u0013 _b\\b���H ���\\u0016�*��PRp��4yL�l�����a����`\\u0002��ףUt\\u0017ޱU��[\\u001aL��QG�P0���M�{��U,\\u0006�I\\u0001�K\\u0005Fo/ƅ��NP\\r�\\u0013k�Y,\\f\\u000fo\\nX�Q�\\r\\b�(E�\\u001f/sK��\\u0006\\\\�\\u0006��@�����\\u001c����Ȕ{h\\u001e���tA}oEI�1;,\\u0011/�� �B�cև��\\u0018�]�'�d\\u001e&2\\u0004(�]I\\u0016��\\u000b[a&މN��'�o�\\u001cb����7�鐑�_��\\u000b�h\\\\8�\\u0000�\\u00171Vй \\u0006�Ck�C9\\u000b\\u0004��P����P?�P\\n��\\u0007{�;Ԯ몷;�����N#����\\nb2p$���Њ\\b���\\u001f,Up>�\\u001fa\\u0016�\\u0015\\u0015r�Ѩ:h;N+F$�\\u0019]�jI��-8�V�6K��$�\\u001b\\u0001�:Ùr1#�n����q��\\u0014>o\\u0011\\u0013\\u0003�Њ�ZfК9��B�y\\u001a��\\u0003��\\u001f}\\r$R\\tC\\rc�����y\\u001c\\\\\\r���f`X��Rٛ�gDcI�\\u0013�\\u0014=z�ŃxV�J!\\f\\u001c\\u0002+\\u0016\\u0015� �f֨E��U5sT4�V�5�x�J`y�9\\n򼰢\\u0005!X�m\\u0004��Q�S��$sv�%N�n?�\\n�Vi$e\\b�J��}\\u0005K떟��\\u0001�@����N��\\u0000�}��\\u0000�L��ѩNV\\u001eJ3M��OMH�S\\\\3n݂\\u001b��5���ƴ��#��\\r\\\\\\\"�\\u0002�L`p�\\u00124�;�|��%\\n�e \\u001d��z'\\u001eo�v�Ȕ�J����l+�n�<�<�p\\u0014�n:��\\u0014\\u00145�\\u001eA����\\u0006����\\u0007�\\u001a�d�¥��>z|>�H;��%�bA�T�0:�|n��0\\b�7\\u001c\\u0007&Fv{���\\u001b���[a����,\\u0005�.��(�\\u0010\\u0018���b:��\\u0002�O��UIf��\\u0012B����=�\\u0002%D�\\u001b����U�S\\u0014��d��\\u0002�˗�2\\u0004�Vt\\u0006�I����$uq\\u000f�ր\\u001e�줽��\\u0006�YFͲ���\\u0000�FE�Ziș�0/�� x|j�ln���W�Z��U\\u0014��&��J�`���\\u0000mx��6�aWP\\b�\\u001b\\n�\\u0001Ө��@\\u0019��x\\u0011�\\u001bW�b/�h�\\u0006���-bW����\\u0000l�\\u0011��\\u0013�o�+�\\u000eCrܝ�t˼e��!�M�>~\\u001f*YQg�lRX/��s�jѣ��\\u001cc�����M.O�q^\\f�8\\u001b�Z�%J�A��\\u0000ở���W��d\\u0010H\\\\\\\"�hA�_�\\u001b�j�\\u001b4{\\u001a���\\u000b5�T�G'�P��S�z7�'Ԡ�\\u0000��+l\\\\����ܔ�E)c\\u001e��hÉ#��鱥y�U\\u0001\\u001b�a\\u001a�N�\\u0013�=���\\u0014�i�g�t\\u001d\\u0017�U�w\\u0016c��V�J@J�<��V��UN�\\u001bV5�ب\\u0007j&\\u0006��=�7c3}�ʪ��Jn�����T�\\u0000�$V��z�<Q�\\u0016q{\\u001a��k�L�B��w\\u001c��R~ *��L+y\\u001c\\u0010|V�\\u0000�Vy0�K�\\u0003�\\u001a\\u0005$����ǝ��\\u001c�\\u0016�P4SmU��)jD�9��V��?�b����#�&���h��,,H�}\\u0005s��\\u001f��m����\\u0019<����|\\u0007Z����Ӝ�up|���}�\\u0014 �n<)4`�(�529�S]i�/nA0�Q�e0���f+�i\\u001be�����W�|=��\\u000b�\\\\\\\"4^��kt�j��D����x�F\\u0019��*\\u001a\\u0018����\\u0014�z�L\\u0018�\\\\ƗC����7֏�o\\\\\\\"�_\\u0006rw����/\\u001a�@�\\u001fx��{�Jr�S���\\u0002��sLծ����\\u0000��؃\\u0011v�ڗ+yc�_\\bI�f�Qƭ��8����\\u0003]����1\\u0007���`=�������f��Ս$�\\u000b�#�$\\u0002��[���\\u001a\\\\\\tSpl|��o�G��T�\\t��\\u0016��~�c�S��(���%�`�\\f8JlF��@&\\u0017����}�$��\\u000b�\\\\\\\",r�\\u0007>����e�M�\\u001fC\\u000e�n>8Ap���7�_�J\\u0006c���h���8֗>,��\\u0002�\\u0007�\\u000f?��\\u0014�\\u0003f��e\\u0010�@_���M*ӌ\\u0018v�K俀\\u0007�Ğ�\\u001b�\\u000b��\\u0000�Mb\\u0000\\u0017�Z�3?�om���M�Z��E#n�t�X렬��\\u001eTM���ڤ��H\\n���\\rxs\\u0000\\u001c&�f\\u001aܭ��zВu\\u001b��VeG1��m��LEq\\u001aF$�<:�ܐ�\\u001bs����|+0m�����C�V�\\u0005Ʒ\\u0003_\\nk\\u0000��e\\fw_�TĀ�2�\\u000f�\\r��|h��Ppu?�z��:�M�Px��'�!�1����ډ$���Ɓ����j�R�<�ܜ�k\\u0015�t{q_����\\u001b>\\u00017��\\t�����kQ1�J����\\\\�2��0�D$�\\u000bu\\u0004��JP1�\\u0016�X�*�`��\\u000f��\\u0015ԁ���\\u0015��\\u001d��\\u0013p\\b'�Ҁ,t�!{��>:��x��\\u0019�ߗ� j\\rl\\t\\u0017\\u0000�.-�o�_\\u001f��K�ɱ#Ru��@\\u001c���\\\\\\\"\\u001d@�\\u0017�w�(]�5�ʨ\\u0018��\\u001b�yoo:Kܿ�_�E\\u0012\\u0010\\t^�A\\u0007¼�LMI�yo\\u0014�X�a��\\u0014��\\u001e�u�\\u0000+i��OD��\\u000eF����\\u0004Z���\\r{�q\\\\�@�S�'R\\r�O?f���\\u001d9��#J3J~��\\u0000\\u001b��tG�昙-�-�<�,���_��Z��k�\\u0007fV�<���\\u0000ҳ�\\u0000DT��mc�֑�����Tˍd�SǇ�����\\u0019�~��(����n?�>�~uΐ\\t\\u0017��Wq�l̹'?I<S�+���X��F2ɔ%x�TR\\u0000��\\t��;�m\\u000b���*��\\f\\u0013s�ϯ�چ��F�\\u0003�n[ƌđ���}��I��MF��*v)�y�\\b<\\u000e��'gXTz�綵�Gu����\\u000e��\\t>\\\\�\\u001fS\\u0011�d�8cD�\\u0001o\\u0013��f4�D��)31٘����␨\\u001a_Ƈ\\\\\\u0000�����]���Cw\\u000e���W�\\u000b��\\t�b7\\u001f\\n\\b1\\u001b\\u001b\\u0003z�L��V�n\\b=A�\\u00003\\u0001w�\\u001c�\\u0006�\\u0000m��\\u0015�aA�슼w5�|�uYnV�E\\n\\u00114�qQA30�\\u0013����T��K܆y������`����\\u001e�k(�O��Ӡ\\u001a��\\u0012�mYY�H/��4\\\\\\\"�@\\r�=k��-�؀~\\u0014�\\u001dx��X����+Y\\u001b�W��;\\u0015�>6�\\b\\u000f+\\u001as�2Xd\\u0000�4�������3��\\u0019+7o�E���#���4�?��i\\u001b�?�\\\\og�\\u0003���T/\\u0013�É�N�C]\\u000e7x��c��\\u0003��\\u0017���[�ɥ���\\u001b�m�\\u001a\\u0012��빉\\u0005�7��U\\t[q��\\u0006�G��V�n�U�v:��Qb�\\u0013ȃ�o��\\u0012ٸ�*�\\u000e�X\\u001d\\t��W��=\\u000b��񡃪\\u0012���]\\b�c7`F�\\u0016���t�A�$�\\u00039��GC��d*)��O�;�����n1\\u001f~a�\\u001f�ցȚK�'{�R�@\\u0007�r�wֿj��\\u0000��:-l�⿨��@��\\u0018����[��_�w�ֱ�\\r1���w#�P���\\\\��\\u0010��\\u0007n��j����C�Oσ�`�X�\\u0005\\n�Ġܓ�\\u0004��U�򡈄�]/j��c�\\u0019����H\\u0003Sz�ţ\\u0016��/�\\u000fQ�jaG��s�\\u001f\\u000e\\u0012]K\\u0000t���L|$g�C|���\\u0003�>\\u0017m�ix��1�\\u001b�\\u0011�]\\u0000X1Q��ȶ�ޯ<��0\\u0007��챍��\\u0016,9�[�9��{�\\u0017Q�y΅D\\u0002M����X#\\u0006<�\\u001a\\u0012<h�ۢ�\\u000fmn�f��\\u00168nS�����h��\\u0002~�'d\\u0010s�\\u0015Fkl\\r�\\b��5\\u0012H.nx��7�+i�ӏRE{\\u000e\\u001bM�5�G`�\\u0014\\u000b���l�#41�ӗȂYPF�_�Q�+e\\u0017�޺lRe\\u0000�Yo��>5��\\u0018L���L|S�)��}e|�^���A\\u0000)���c�-`ҍn8�\\u0017�^6\\u001b��A�5�G C\\u0019\\u001eW�)|��M:�@h�\\u0000\\u0017޹\\f�\\u0006d�h\\u0004�o��� �奵$�'<���K�lX|�i׹6إJ'\\u0003\\u000f��\\u0018�p\\u0001Kr��v(�Df���\\u000b/\\u001b\\\\\\u000e�ְȐ�ӊa�^B�'��{}�w\\u001b�\\u001dOZ��\\u001a\\r*�{}��Րx��a�C^rP��U�-{�F��\\u000e'��\\u000e�֘��X�\\u0004�)�\\u0015%��Sҹ�ff,��u$��� \\u0018�ۻ\\u0005�\\u0000�!���U%J�*J\\u001av\\u0002FL�u��\\\\\\\"�\\u0000�\\u0000z�\\\\b�)����\\u001bS\\f.�4,\\u0017 �b's�/���:@̣�Ѝk\\t�N.����c�Z9��Dk�\\u000b��\\rx��7\\rk��\\r\\u0005!��Jد\\u001e�_J���6nH\\u000f[r��UU^-��G�i��\\u00005��qn7\\u0003Sc��@\\u001eK�\\u0002\\r�>?m)�(։�����Ә� �\\u0000i�as�[\\u0011�+�j�\\u0012)���ƚ\\u0013\\u0013T�R��R�J\\u0000�*T�\\tZA3A �w\\u001b�\\u0011�YԠ\\u0006q�8�\\u0001����Q���5#`+��8R��+n��~\\\\\\\"�1\\u0004�=��R?��Q�]lM��E�ֽ?a�y�6\\n\\r�&�\\u001c�\\u0005IS�6�+�aܱ��\\u0000P��\\u001c~\\u0006��1��J�\\u0001�,�)�ƽ>�)���C���կH��6Q�0����n��󆊯��o�[��h�\\\\�.<Eb�0�\\u001do��֪�^�-��\\u00102���|�􏸯\\u001c��\\u00005��\\u0014�\\u001e \\u0001���Ѓ�loe\\u0000�j��o`����1��\\u0000qG�F\\u0014���\\u0013��ɨa���N)^\\u0019\\u0016X͙M�6^�\\u001c�\\u0015�d�c���(۔]m�\\u001d�۱r VA��k_���)�����\\u0000�bt�\\u0000�Q�zՌ���\\u00127\\u001b��<kl\\u0019��\\u0018&�\\u00004;|�Fi�>6Z{���~e::�1ZX��\\u001d|�<��A\\\\�s���c��\\u0004�\\u0011�y�O����{.B\\u000e�,(�\\t\\u001a\\u001d���^z\\u0003\\u0002��n<k��s��\\u0014�$m���T\\r��J \\r\\fq������ږw�\\u0011�t�ot\\u0001��\\u0000I�\\rz�\\\\\\\"�\\f�z�\\u0003�\\u0014UDfA��?p�ƌ�\\u0014���R\\u0001\\u001f+�rO4��y|��cҴ��\\u001bXۭ�v��#��fp�x��ϕ\\u001eW%���S� \\u001e�8�\\u0000\\nďi�c��א�\\u001fwm\\u000f�yQ3\\u000e\\u0016\\u0005��Q�H}��\\u001eS�Ht�����։!��\\u0003�p�[r>\\u0006��W����W���W�\\u0018�7\\t���~`x�\\u0000p�����WG��uY�$�/\\u001a��Uc#]�\\u0010���_K�0Q\\u001ef�Q�\\u0010YC뾛ڄwnl�\\u0010�\\u001d�7��է�Lp�\\f}M�\\\\\\\"/��jtIU#g��������n�<�'\\u0016X�#���\\\\�R\\u0013%J�)�g�d\\bf�\\u000b�Ό��\\u0000�R'�\\u0015�jm��N�R�� \\\\ԍ�\\u0000ې٭娮�䴃�\\u001fn\\u0015\\u001e����u����!���\\f�),�5���F\\u0017 q�I\\u0003�J�\\u000f�1ly-{��\\u000e��rp�\\u0018r��;�#!I���A[��d49���T�lO�]\\u0007�U����c ��z��ԏ>\\u0007�^Dh�|Ea\\u0014�� �\\u00171Ȼ2�\\u001aүFC��\\u000e�'\\u000f����S���oT��Y��\\bJE5�\\b��\\u0006��{|��\\u0019\\u000b����7ˡ���\\u000b&\\u001bO#�\\n��\\u000e�\\u001az�\\b�7�9>�����Y��!1��h�\\u0002�\\u0000\\u0001���n݆�33�@�\\u0000m��V���&s��S\\u001b�S\\u001b�.$-\\u0019�=�U�b��<�r����W�\\u001e|��\\u001a3�ܞ^A\\u000f\\u001f��?�$�;�*Z��p���J9�����G�_�p�H�\\\\�أ�n�7\\r�+\\u001a�V�uZY��l��?\\b��E\\u001d̄\\u000ev޸\\u000e�BI3�,I�\\u0002��ɬ[�wgR��)V\\u00040-�;���\\u0003\\u000e6\\u0016�3\\u0002\\u0000�j+\\b���,a�'�gk(7$��(�b�-����y!\\u0007�Z�\\u0012\\u0019�XYy\\u0001\\u001e���ۯJ67�\\u0018UN�k�X�Rԯ�͛�\\u001a]��T\\\\\\\"���Uo\\u0001��AwLܔ�\\u0018��\\\\\\u00129D����,�\\t\\u0003�E��\\f��nL7\\u0007qZ4�\\u0003Ӌ\\u0012������3jڽ��Z�3u�\\t��\\u0006%�e�\\u0018��=j\\u0013�?��}�\\u0016gj�!��L\\u0004zI\\u00167#��1\\u00111X�C\\t�C�\\u0015\\u0004'+�Ҡ�m�5�CE!x��g,\\r�\\u0016��x�\\b��>�*���B`��'�\\u0013k��Ή�%Nl�\\r�6�\\u0005�\\rVA+\\\\tf�H\\u001a)\\u0004��+7�\\t�Q�G�\\u0001����\\u0001�\\u001c�]�\\u0018z`R˦�tQ�֑�|uS�\\u001e���h2ʬ�!�\\u0016�'O_�����r�\\u001a7�j��\\u0016�I\\u0018��\\u0005�#�[xR��\\u0017�9\\u0000\\\\\\\"ĩ\\u001f\\u001d�6��\\u0000\\u0003���\\u000fx��$V\\u0016 ��@\\b+,�L��\\r��\\rn����$h��Z��qcO\\u0007$�\\u0006S�\\u001a��'v\\t���N�'�I�Ior2\\u0007\\u001d\\u001a���*2�_P7�3���\\u0012b�\\u0015\\u0004�H���<v4�v�\\u0001o�!�\\u0000��&�|�\\u001b+\\u0013ċ\\u0010|�\\u0000oM140����\\u0001\\u0004A��$��\\n\\u0002�J\\u0000��\\u0017 x�^W���>#�\\u0007)p�[E\\u0016\\u001f*�2�F���\\u001dOJ��k\\u0003R���Vr�G\\\\\\\"t����k\\f�D-�}�-`L\\nY�M6_\\nʥJ�\\f�\\u001d�9\\u0006I{\\u0012�\\u0002\\u000e�yS�؜FT��\\u0010�x���\\u0013YU�����Ad��\\u0001�Ɯ�\\u0000����p�Q{�\\t�@�\\u0002O�P�3���\\u0018\\u0000�%-\\u0010\\u001dcmn|�Id��\\u0007(A���47벹�W��Z�-�Da���\\u0000�\\u0000{t�����s\\u0014D����c�Vdm�ڇ�U\\b\\u001b��.呈B��\\r�Hu���dN���\\u0004\\u001dF���a{�=����k\\\\������\\u0004y�;\\u001b\\n�V��eV�/ S�\\u0013rG�K�挃\\u0005$2]�\\b�\\u0005����0V3\\u001b),��86؛S�U�VrW�v��+G\\u0001Q�rvbl\\u00016�\\r4?��Ԩ3�g:\\u0011��\\u0000�5�,\\u0011_����\\u0000(\\u0003o�jq��ĕd�\\u0013����\\u0004���k��͊��T�n\\nO�R+ȿkO*3��!t�\\u000e�\\u0000�Wf�؂Ǘ\\rU@��\\u000e�J\\\\\\\"`\\u0001%���lF�%���\\u001fS�\\u001f�s�`\\\\\\\"�B��g\\f��Z��O�y\\u0000��\\u0000\\rϷ�\\u0000��S,�\\u0019\\n\\b\\r��x�O�\\u0000��u'�\\u0016F��\\u000f����8,�ɗ��#e�A��C�\\u0000KQ����nM�)�2O�!�l+��\\u0000�&r\\u001e�T\\u0002P\\u001e��FF\\u001e�mf[XP\\u0012(���j��$%�ܻ5��(\\u000e���t/\\u001cp���\\u0016,\\u0019��oQ5�:�\\u001bt�����\\u001c����*�oѷ�e�u>/��kГ�\\\\���˅ap\\u0012�H���1�,|\\u001dN��o��Q��vꫳ���\\u0007uU{,�\\u0010�'�\\u0014<���L�X\\u001e(%\\u0011�+�_ɭ\\\\�XH�q\\u000e@�\\u0004ڷ�&Pt\\u0019Y>�<�Ma\\u0019\\u001aXmj�u[��/C^�f��?\\u0013z�I��\\u001am(��(\\u0015�T��5�\\u0006�HA�\\u001fP�Jc�*��׳j\\u0000���*V�}��\\u0016gCpu�0��uV\\u0018�=XR�&|��D�x�\\r��J\\u001a�\\u0004J?\\u0003�ωh���\\u000f�w_��\\u0011q�ap����$v�o��&\\u0010u\\u0010fA�=ț��6#�+e<�t�s\\\\�\\u000b��$���fڛ��I\\u00162'���B,~D�+-�u{\\u000e\\u0005�5�\\u00166\\u0007�)I��#z��\\u001f0?�O��B5I\\u0007�:�^E\\fl@���\\u001d�%q`.>��1��\\u0015�w�6\\u0000q��M��\\u0019���?=Dk�jz\\u000f��\\u0003H\\u001c�I$ܝI>5�k\\u00164�(Ӓ�׸ޫ,2�@�x���(�:���K6c�\\u0016�\\u0017��\\u001f�Jq�|��\\u0014���yx���H!X�\\u0016D\\u0016\\u0015�u�B��\\u0017E��X�ajC�;qRs#\\u001a\\u001f������O[Ү�3�\\t\\n�Q�E�D����\\bG\\u001e�}�F�V4m96�:����T��H\\u0016\\f��V�*�\\u0003�\\u0000^ԃט�#^IA0B�DA�U��DfrrVͶ��.5��(e��ƥ���ѣ���\\u0016�T��\\u0013DB\\u000b\\u0014X,����\\u0011�\\u0014� �@9�\\n��\\\\3j~�!-J9��\\tq�7 ���\\u0011�4-tk�\\u0012Wy���$)�/\\u0005�o[���t��P�Y\\t]>�R��jWE��{v&:�,l\\u0019�\\u000bň\\u001a�n*��xen9��y�\\u001e�s�+\\\\�O�$7��ۖ׬�\\u0002\\u0016 \\u001b�a��\\u0014�JP�\\u0019�\\\\�mҶ*�M��\\u001a\\u00151����%\\u0017��<<���~:�\\t�d�ފ\\u0014\\u000b\\u001asV���㾔:��\\u000b\\u0011{�Rj�س�\\u0018�1u<��$��\\u0014x�)�9w\\u0019\\u001626�\\u001eR\\u001f���h�r�\\u0000��0-�h%��ҎJ,Z׬̘%@&Y�T_B����Er$�\\u001c+\\u001c\\u0000�l9\\u001b����\\r�+e\\u0017$�o:\\u001b�A���Hˏ\\u0003.\\u0014GG1\\u000b�\\u001dn�~l�A��ݧ�0��K���\\u001d\\u0019�{yPX0I\\u0001.����xQ=I��\\b�y\\u0018\\u001e\\u0000�^�ёo�º\\u000e�b���Һg�A�S��\\t���J\\u0004?\\u0002�\\u001bmVQ��>ګ�ǒ��zN�� 1�UliQ��m�J���\\fYY�\\u0016!|y6��Z�\\u0012�J�\\u0001*W���\\u0011Eٍ���\\u0003��_/��7@HU�[zÿ�z�Rwyz%�U�z\\u001c�H�d6\\\\\\\"���\\u0005�̶�\\u00002�\\u0000*u7e�|\\n��\\u0013�+\\u001b����q���!�i�#�W?�\\u0000���ƶ~�-u�ȊL�K�cq筏΄̔?\\u0000\\r�&���\\u001a0�$ku\\u0004\\u001e \\\\\\u001a�\\\\�8\\u001dWF���zO�\\u0000�J��z��[�_C��]\\u001c�@[@\\u0018�\\u0005&��X�܌Z6:�\\u0003Z�~�{m�׃zfE����yk�\\u0019M�\\u001f\\u0010<u�ڗ�p�t��\\u0015�bjO\\u001d,9\\u001d��\\u0007�4�ׁ��S���WV[�����=P�\\u0000M���z�TZ��#^{D����OAZzN���NDC�P8\\\\|/�֗H\\u0006<���\\rb\\u0007�7#��ߐ�\\u0007�\\u0006�OP\\u000040/\\u0014�\\u000e@�}�W6c'\\u0001{��е\\u0000��7#%Y$x۔lU�ET�J@3��i�-��R4�l�i\\u0017R�\\u0007Q�%g�b7���Ȗ��H驥\\u0003��\\\\�\\u0018&.*ۛ�f��Z\\u0015��\\u0000Ÿ�7\\\\\\\"�k�&�\\\\�A+X�\\u0013^1r���\\u0005\\u0010\\u00121���\\u001ca\\u0017=]�����#rrY�SY\\u0019\\u0014jj��LD�R����#Q�m���\\u0000m\\u0000V���$<N�\\u0015�d���G���EƗ\\u0007�^A<s�h�`m���\\u0006�4�,�H;��6 �kG�E���/��u\\u001ef�@;M�\\\\\\\"F\\u0004_�'o����\\u0016��r�ɂ<��q�C\\ru\\u001e_*\\u0003�/r�>���A��eU\\u0007^7�\\u001d+�ȇ\\u001e%��~�\\u0001\\\\\\\"�mK��\\u0003�ڛ�\\u0001g'�)��!D\\u0004Ķ��oC�a\\\\�%E��GA�ʥ�H�\\u0012�ʪ\\u0015H��J�>��,�\\u0012)����\\t�5�aJr�\\u001b\\u001d�pP�\\u0016��VLm\\u001e>B�$\\u0003�T8;�U)�\\u00069+�q�HJ���o��P�0V\\u0004� \\u0012@\\u0002��\\u00053���h$�W;\\r��i+:�o���Y��X�\\u0014��\\u001b�iY��F��mM\\u0004�\\u00066_Z�\\u0003KR��/�軳\\u0000>&�4a8\\u0012�#�z�ٌ�\\u0006�^��]�B�B��� \\n\\r�\\u0005#� \\t� \\u0000J�l-֚{\\bI옥��mu�1�\\u000e\\u0002\\u001d�e�����F\\u000b��I\\u0002�>>U|KD֔\\u001fp�q��\\u0016�I��E*/L��\\u0005��@c*p�ҏ�\\u00061�Ρ\\u0014����(t��\\u0015DhA\\u001b�Z���9F�����V@\\u0016ղІJ�*S\\u0010F?p���\\u0000fV\\u000b�'Կa����]H�L\\\\�Z3c�\\u0000I�t��5f�buOc����\\u0019>��y7�I�\\u0000�;���\\b��\\r����s\\\\�(\\r �\\u000e�kQ)�g��Y�؂M+ߝx��:W��j\\u001f/s��K\\u000fSt�z||)NVt�G�l�\\u0010m�5\\u0002B��*�\\t�$\\u00156޲�����Y����\\u0015�j]���R�ce$n\\u00015�O\\u001b�b�\\u001f�b���\\u001b��䖠\\u0006\\u001cx�e\\u001e�<����x�<n��7�\\u0018\\u001c�\\u0012�O @\\u001a\\u001d(Luxe\\u0017\\u001a\\r�����\\t\\u0006��m��^G\\\\�A�\\u0011BX\\u0017��y�#�uƆ�eˠQ�י9\\u000f\\u000e;4d\\tXۑ�+�<Lh����ͫJڟ�fX&>\\u0014��/4�u]l���,A\\u0013H�!zx��FK]�\\u0003�JUܲa0�U�;\\u0011���\\u001f\\u001aiK\\u0007�\\u001d\\u0006\\\\yQ����)�\\u001a�8�\\u001aS�S��4��<�b����Y���W��\\u001d�&��pG#\\u0007\\u0004��.Na��\\u001d�#*#�)\\u0000�?�����/���� �n7�S3&5eG*\\u001cY�m��m�2ݽY�\\fC��^�c�#�\\f��km�+�\\u001f��\\u0007�\\u000f�)�:�\\u0016ҳ�\\u001c\\u0017]$m\\u001b�\\u001b���,�+��Vh�\\u0012\\u0005�/�.���D\\u0011�\\u000e�܏����K�#n\\u0014��Y��9\\u001a��\\u001c\\u0007��?\\n�\\\\��J޵�fܝD\\n�F\\u0002 U6�Qmkn\\r��\\u0005N��J�\\u0015��b\\u0015\\u0007�j\\\\\\\"�\\rO�Z\\u0010X���yW��\\u0000�\\u0002@��j�����\\u0000\\n��� q\\u0014�z.7�קΡ\\u0017�\\u001e �\\u0019�A\\u001e5\\u001c�hl�0\\u0012�ֳE\\u0017ŏ�Jh��!�5���/�?�\\u0005Y�JZ\\u0012�J��J�*P\\u0007Mڜ>\\fZ�\\n���\\u0011%�-��s��7��{n�&������F��ﮚR\\u00189?H�����u��8ɧ28�с��ּ(��%�\\u001b\\u001d�\\u0000�P����#�A��i\\u0001�K,`�0��H��oJ��P�H�hQIo��\\u0000�L�O\\u0000~�\\u0002�6޹̉}��N���\\u001a\\nh\\u0019�J�)��*T�\\tR�J\\u0000�*T�\\tG��,�\\u0019:\\u0011�|��+|'ᒇ����\\b\\u0007��\\u0003M�\\u0002�\\t\\\\\\\"�Z��Ψ��ֵ^$�͡�\\u001eW�\\u0010\\u0017q$c���\\u0004~4��wi\\b�\\u000f����Rڗ�\\\\\\\"T�R��[b�Y��G��5�,\\u0018t �\\u0003�*�S�\\u001d+B\\u0005���M>�\\r��hĬmc�QE\\u0005�)���@\\u0001��N�4�Ƣ6�Hb7�TӸ�h\\rň`E+�Z\\u0012�G\\u0000Hҁ�FD��Gr��>�!�\\u0003En�\\u0003M��Y\\u0010M,e\\u000b\\r\\u0001�\\u0010z�8�\\\\�;��q\\\\\\u001cX-��]�\\u0015���]X�\\u0013(<j��Qo+\\n��ad\\u0006G_K\\u0002\\n����\\\\\\\"�,\\\\YDY\\u000f�9\\u0006 �׷J..��\\u00192c�\\u0001�ڡ&P�+�g�����M��Iс�:\\u001a!��G\\u001aK��\\u0000�f���?U�M��c�р n>\\\\\\\"�Ɋ\\u001c�\\u001a)�\\u001e�\\\\X�A\\u001dE?q\\u0001��ۀ'�\\u0006�\\u0000$�\\u0014�+�\\fD2A\\u0011{�9?�k�)gp��\\u0006m�$mc\\u0011��Z�UjK�4�\\u001fu�^�^�LY1ܮ��\\n��1:}����\\u0011L\\u0018�'C�3��`��y\\u0017�\\u0016�\\n���\\u001b����\\u001a�\\u0007\\u0002yrq�D>����G+��\\u001aŧ�T�� ��Lr;���#��ҏ�0�!�\\u000fK�X^\\u0005)j��*\\u001e�\\u000b�\\t)%M�)�\\u0007Η82)�N�w;[�W\\u0002P�2B�����\\u0013�%�!fP9[���/8\\u0012\\u0005�3\\u0007\\u000eVp�r]�7\\u0014�\\u0004\\u0001�\\u0001 �I\\u0016��Iq��\\u001c\\u0006ań�io�\\u001b���G$D�k`w�)��̧��o������m>U�WK \\u001e�\\u0015��#�hU!2T�R��q����u��k,����MM�g�J�!a}\\u0005��o��8�\\u0000l\\u0016\\u001a�\\u0006��\\u0002Œ�c���ӊ�y\\u001d��u�J�k�-rn/z�L\\u0015׈\\u0011\\u0006%�m�Y�,�$\\u0017&ڏ���\\u0003��1<��mGC��J)�C�#\\u000e\\\\�G�J�\\u0004Jܷ�V��%�6{�7��\\u001cֿ����\\u0003q]4�q�e�<i\\tc�EֹZc��-+NF��_��\\u0000\\n��p������q���ٮÝ�#\\u001d\\u0005�\\u0000��\\u0019Ҕ��о�.�ٕ\\f�\\u001c}@���>�/)�op���)�&����+b\\u001a�=F�ᢐ�ڳ\\u001b�$^\\b\\u0017�z\\u000b�Au����\\u0007��T\\f�k��ܛ}$]�(\\nc��\\u0004M*\\u001d\\u000b\\u0000T����Ҷ��7�-�\\u001d��\\u0002���D\\u0019\\n����7J\\u0003=`���\\u000e{o�\\u0015��@�\\u0013��:�ĖH\\u0004X�\\u000f�!�\\u001b�3�'�\\u0001�\\u001aR��8��K��$\\u0007���ҫ�r!��K\\u0004�#�\\u0006��$_a{T��Y%�\\u001b\\u0019c^H,d\\u001b0=|�\\u001c�����1r��\\u001d\\u0014�M,�,��/�\\u0003��f�Y۔��\\u0005>��Zk܊^�-A�$�N��MJ�+Q�nD�Ö�\\u000b�)�5\\r\\\\\\\"{S�\\u0014}\\t���@c�db�8\\u001c��m��u��%S�=�~V�J��#H��%\\n�����q�\\b�Jf��Ӗ��t�\\f�,쮚��\\u001e\\u0014�=�m�\\u001aP�5S�^�XY�Н�Ka�;�\\u0000>Z֩7\\u0019\\u0018�T�t�K{�@�T�vA��[�(Bb�%��#�(޼+\\\\\\\"��E\\u0003���\\u0000uj�(��\\r�}��\\u001c�$���>��0-\\u000f\\u0019A$��m��W�\\nl�R-\\u0012\\u0016\\u000bͅ�\\u0013�j&(���؍K\\u0011����$ȚX \\\\\\\"\\u0014 r�I\\u001dz�S�HC�x���\\u00017�\\u001dW�m(���۵�f45\\u0000J�+x1\\u001et.�\\u0000\\u0006�4%:\\u0001�J%��2���0�>\\u0014��\\u0014��{�aU\\u001dH�ŷ\\u0015�pnF��\\u0006�|)\\u0010\\\\����\\u000b:�\\u0000\\n@ؒj-��E+��Imt�2�B�0n�{t�șR\\u000e+�G[\\u0013Cɇ<K͖�7#[R�U�X�ֈ¥J;��\\u0014��L9\\\\\\\"�n=\\t�~5d�\\u0005c�\\u0004�끖�\\u0019c�;\\u001b��M3��X(7\\r�\\u001f�J�\\u0015�^�+ho��R��T\\u0000���b��1Y�27\\u0017\\u0016aҝ̬���@eb>DfD�E�\\u000f\\u0001Lp\\u0005ĕ�5D�����S�����Er�œ��-���\\u0013\\u001d�\\u00152d�\\u0001љ\\u0015t<G\\u001dA�m@`�\\u0005iAh�p4\\u0003�WI���\\u0014q䪇\\u0003P��\\u0000\\u0002|�t+\\u0014VDP\\u0014t\\u001b�{Q�\\u0002��|�h�\\u0013%Y����x�q+\\u001f�:����N(��O�B�\\u001c[;$��R�4\\u0015N�1���\\u0019\\u001a�\\\\��r^�a\\u001f�kQA~�\\b?�3���������\\u00003�?����UV\\tz�T��g�����W��=��\\u0000]~�b/:7�u\\u0004�z�.�\\u001b\\u0003�Ҫ%%,~�e\\bGQc^�v��u��\\u0000�x{�kac2��?ʘ\\u001aK��\\u0000��o��������\\u0015�w.��̷\\u001a\\u0003�g't��\\u0011�O\\u001e�*\\u0003\\u0006�7��O�A�D\\f���Z�\\u0014n_ƶ�/\\u001f!��@�\\u001a��j�ׅ�~;����஗\\u0017G?�#�|iT0�#\\u001c�7\\u0004k\\\\�\\u001f�\\u001a!��ӆ'F�n>�\\t>���ƣ��(���%�ە���ϵa\\u0012�&E\\u0005[Ҁ��[Z6Lx��c[u�Q+([�ica��\\u0019�_h�@bm��C�nJI$*�ŏ��\\n\\u0016�0\\u001dic�\\t\\u0001E��D�F���7�š����\\u000eM���6ڴ��A-)�\\b�BK\\u0004�\\r�}-TĴ�n�E~ �9h��Κ��8��Ң�\\u001e8U�i�٘܋�\\r9��?JSP�T\\u001b�#9��ً� �\\u001c\\u0010A<z�_�J��Xm֒l �!N�\\u0015+b\\u0007\\u001aƮ�VC��\\n͍�,y�[�7O\\u0003ҷ�/J rk�W��bZ�*\\u0000�م���\\u0005Q�\\u0002���T�{�RHԩ�\\u0000�j�ׇQj\\u0000;�/(\\u000fA����W�'\\u0018�;���*\\u001f\\n|�U� �os�����rl�cL�B��o�\\u001et��S�)92�A\\u001ei2�Y\\u0002mO[�o�=�\\u0000��NbY�>\\u001b� }Ԯ^�\\u001eM�OE�R4?m.�qŋ�r�x��H\\u000b#���\\u0000Us�.���\\u0007�\\u0000�BC�\\u0000�ƛ'��8/����3�Z.^�d\\u0017\\u0000��;�+\\u0013�p�a�a{\\u000e\\nX\\\\�\\u0016�$�(UR&���!��ԯa�\\u000e[;*l\\\\��\\u0018�\\u0016\\f@cr�/���h�\\u000e׉�����7��$�>\\n(\\f�2d��ɓ\\u001b�!\\u001c!\\u0000rP:z��9��N+�~7i\\u001c)�}��\\u000f�c�ɇǛz7���I4�?\\u0017+�\\u0017�QO'��\\r+��\\u0004���\\u0014\\u001fh�f�|Im��s�e�H}����. �a�^�Uh� g�:�Έ\\u001a5,mn�};���U�A��M���D�)&�A\\u001b���ji�.^LV���\\u000b��S�\\u0000\\u0015c��-)i�c�І&�V�*�y�a/�ו�!��Ǧ�\\u0016�*���dN�bx}�� �.\\b\\u001b�֖�dK\\f��w\\u0018-��u�<E��6VT}�VEk�!{��5ۈ�\\u0000sV\\u0015h����\\u000e��Np6\\r�*M�4���5���I�\\u0011FX�>ڽZ3\\bq�/%�\\u0003���D�A�q��N��\\u000f�B4>F����s\\u001b1}P[K�j�rh2UyD���\\u0006@\\u0001'����v\\u001e�7\\u001b-��T~_�$�Щ,2g�k��,8���<4�S��v^@�4YX\\u001e �>$\\r/��j��\\u00132h����ױ��yn�\\u0000�kJ��J�*P\\u0004�=�Z\\u0019\\u001b���\\u0005&���\\u000f��~��\\u0005\\u00006P>�|k�K)6<����jo��o��1\\u0017|��E\\r�6.~;\\nSO;�+�G?�V�|���P]�\\u0018%�\\u001f�P��v$\\u0011�\\r\\u0000T���&/v0�|\\u0000\\u0014\\u0007�\\u0013�r���\\u0016��\\u0017��qv~�㳭����W��)�0{vDVȚ2���\\u0007}zۥ4L�\\n\\u0014:�8��h�a$`ے\\u001f\\u001a͢�\\u001b��|��y�ݷ��v��\\u0007O_\\u001a׌H\\u0004��I���\\u0015[e��#��[񣋀4`�\\u000f�G0U\\u0002G��r5�:u٩KB�\\u0000\\\\\\\"Z$\\bqs\\u001f{\\u000e����z��\\u000b�.�\\u000fJ��ƍ�&8�\\u0007\\u0012C�Sұ�(�+�[�zڽ6�z\\u000b��\\u0002\\u0014k�9#�\\u000f±�1B�a�\\u0016<�[��\\u00175R3�7\\u0010�M(��9R\\u000b\\\\D�J����\\u001f�g�[�\\\\ɗogŦ��\\u000bVW*t�U�^��\\u0015���/�u�h��ȝ��΂Ve7Sc�^��Q�\\u0006��+�!\\\\\\\"�\\u001b��1��\\b����:W��?ܹ$�E�����uS�\\u0003ҥ�)Vp�\\r\\u0001/b�-�oHs�\\\\�@���\\u0014�\\\\\\\"\\\\d 3�\\u0002.���W7�2@��\\u001e�Me�\\u0003K�\\\\\\\"O)�&\\u001f���ʤ��b\\u0010o�MIJ.TA�b�c��O�k~5���\\u0018���ht�݅��!�3q$��e��N\\u000e\\u001b��X\\\\nF�jJ8��e�5y\\u0016T��Z�(\\u0001�&RI\\t�ʄ��J��\\u0018\\u001f\\u001dmU�\\u0010�\\u0014I�ky\\u0007\\\\\\\"~W��Ó�\\u000eLѐ�\\u001dU��V�\\\\\\\"¯\\u000fkϐ��}���������/�\\u0017)d$�\\u0015\\u0004��\\u0007\\u0010<����\\u0014\\u0011\\\\\\\"�\\u0000]~{����*�NN�\\r�!V�ۮ��#\\u000f�+�v6�C~��˴pHM�\\u0017�uگ\\u0014O!\\b���\\u000e��i�[sM�\\u0016,��!Q�\\u0000)c�NԪ�6�a�\\u0001�ȎW7���\\u0005\\u0013�����,j�I\\u001f�'=\\u0018u\\u001dkN⟣�#\\u000eh���o1B�3�{�\\u0015O�����qTJ�%���d\\u0014�pJƄ.�,m�\\u000b�#D�\\u0016$ �\\u0011��u���O�\\u0012JF���!�\\u001a \\u0002D�m���Zg\\rG�ڍ�P��')��9e��S����Q�a�g1����q6,\\u0007�����Xo���$�D����@��;[�fn�ۚ\\u000f#\\f�D�=\\u0000���]�K�4�4>p\\u001f���:�\\u0001��QɊ��&�X�#]/j���<�f��f*>�hl���f�\\u0018���Q\\u0018�P��}Rl��\\\\�\\u000f�\\u0000��\\u0000MFZh�!�1�ChK�`\\u0016� Q2&\\u001a�\\f�K��S}��X\\u0004�̲ �MK\\u001e��\\u0013#\\u0015ó��\\r.<ȸ�u)1\\\\����\\u0010(�\\u0001֩\\u0004\\n���U:����:s��K�/~��\\\\x�(^��BG�W.\\tܴ}�\\b�܀�o�mkXߏ!+p\\u0002־��u7���\\u0018B��A��\\u0003\\u0011~>?eUa�\\u0014Q�{I�r���],|*\\u0017��D�\\u0004ȇ,\\u0005�+��\\u000f꿍c�\\u0007���3�Y������Ӻ�\\u001f)\\r�F�\\u0006�6\\t�N�\\f�\\u000f..\\u0018\\u0011�\\u000b�%}q�:��D.=��Iؚ���B�f9����/��������\\n�ː���S�Ϡ\\u001fmp�]m[1\\u001b\\u0012�`���jt�\\n�q���B�H���?m`�P��h1�V%�\\u001bk�U�\\u0004\\nq�1\\u001dL9\\r4gts��\\u0003���\\u0010��~�\\u001a�\\u0012q$Í��6�F��@��\\r���Ips\\u0019\\u001c�͐��w�\\fL\\u0018�};���Vy%��o��\\u001a�)ZK��WRX�\\u001f��DQ�&\\u0003�P��{_�ZG�~&$\\u001c�H6����:K���B�\\u000e&#�^ځ#��K[o�\\t��,a���\\u000en�W \\\\�z�գX\\u0016\\u00079ݾ,V\\n�\\u0017�r\\u0000�)\\\\�2��P�-�\\u0002/���\\u0000]�$��ޭ����D��#�\\u0000t�vC�}��N��\\u001cd�q?q�&\\u0018v��7\\u001b����\\u0000�\\r*���?rW�\\u001d\\u0006$�(ř�ں�Զ'f6 �\\u0006�kx1$\\\\�4`\\\\��'�\\nS�8\\u0004��yY:\\u000b�WԚi\\u0007��1���뽵�\\u00103<J�-[�2*\\u001dl���Ի�cU\\u0012���\\u0000\\u0013C�iYЛ�޺i\\u0019��p��M\\u0005$�\\u0000��;z$u#��Z���6A\\u0018��� �\\u0011\\u001bɬz���U콹#��4L�܅cp,�\\u0013z�\\\\\\\"`J��\\u000b\\u0001J�\\u0000uK�\\u001f\\u001f���N����3�����Ȟ\\u0010���\\\\�\\u0004��v\\u001a�h2�\\u0002�\\u0012�_\\u0000mL1�\\\\\\\"�\\u0016T\\n�eP\\u0000�j�\\u0018�\\td\\u0000\\r����N +6S�\\u0011M����9\\u0000�\\t�ֵ�Tȋ݊@�{\\u001bt��YhD2\\u000fe��}C�GBMNՎ��^�\\u0000/T�\\u0016^�j\\u0005\\r�\\u0003K95t�����j�0�����\\u000eu\\\\\\\"��,�!O%\\u0006��C�����\\t���%u� W��\\bnB�j穦\\u0006_�Dr\\u001f�\\r��\\u000f�Qu�U{\\u000f�HȻ\\u0012��ۏ� ��j�7\\u00021o��Ŀ����t��?�X��z\\\\\\\"�\\u0000\\u001a˥͟�/�a}\\u0000*T�]\\u0006C��8|a\\u001f�C�:�LE�rI#��1Rz�#�X\\u001d��=��J�Y7#��&&����\\u001d+7'��׭`��n4�5�6?}G��P�ʥ@��\\u0003��Q \\u001d�:h'�bkq\\u001c�t7�k��浽��\\u0000W�R��i�i[v7���*�\\u0012ʄ^iLҼ���m�T�Hd�^\\\\x״\\u0001*T�@\\u0012�����$��^\\u0007�\\u001f\\u0003@Ԡ\\u000e�\\u001c��C$-.��+e�\\u0014\\u001c�\\u0013�\\u0007�Y\\u001d�`�J��(���*�ȬG潩@�;�M��\\u001d\\f�������|���P��\\u001a�z���J�*\\\\P\\u0004�R�\\u0000J�*P\\u0004�R�\\u0000J��A\\u001a\\u0011�5*P\\u0003<l�0\\u001c�u�\\u001a��cn��Y��)�\\u001b\\u001a���7�*�\\u0014\\u0013&_vv~�\\u000f���W�>\\u0007�\\u0019�J�#z�\\u0001*T�@\\u000e!o�B��\\u0005��iZ⽋/.J\\u0005�o�R�|ց8q䷸�ֽz�jM�#Z�Q�Ɵ������H����FG�\\u0014\\u000b�ozƴZ\\u0003%J�)���\\u000f��hDF>|I���:�j_R�I�\\t�Nv_��Y8��m{��\\rR�4�&F\\u001d����\\u0010����1��'�;��`�\\u0018uc�Tr\\u0015�r�):�4�Ӿ�\\f�Bb�d\\u0001Z�M��+�R��\\t��ǰ�I���w\\u0015dn,\\u0018kj`6KH�\\u0000\\u001f\\u0011J\\u001c\\u000edt\\u0004�[&QG�\\u0005bO&'����]@�r&\\b�ǻ\\u001d\\u000fƫ^�*����Q\\u0000t��A��Đ��q�2�b\\u001c�|��D�\\fQ!�Ŭװa`Y�x�z�)k�i%D\\u0012��\\u0005�\\u0003k��k\\u0017q��\\u0018�#�o��(oՍ�=\\u0006\\fT@��B��W46�sfc4l\\u0004�r���$��J�*S\\u0003\\\\yLR��j���\\u0018�F*#׈א>5�����#\\u001a#\\tQ*\\u001d�\\u0012\\b��hi����S�����ü�\\u000el���r�dЍ�K0&0\\u0007����Cr\\u0000�I\\t�L����\\u001b�W?3����\\t��ҷ�>Y\\u0007\\u0014<\\u0017���h�$Js��A���\\u0002M�ΓQxy�\\u001c�qx��n+\\u001e�;�\\u0012��tp�]�+�}��\\u0007�����_�+�*�J�5,m]Gz���\\u0018ʑ�\\u0012Fn�\\u0016\\u001aҌl_d�k\\u0017:i�T~�\\u001dh�&��U�;���P��Qa�jT��2V��Yy\\u0013�����ic��~�[Q{|)=\\u0006���l|c+��\\u0012�@�\\u0011���7���VU�_V\\u0007V-K�II��0�P�Ƒ�D\\u001cTl(m�C)݅�f�\\\\�>���O�|�j�)�J�*P\\u0004�R�\\u0000J\\\\\\\"\\u0019\\u0013�+)���_\\u0013CׄRjPӌ��$�4,}E��?��6f%���f#Ҥo�u$t7]+٥2�{qe�*x���^��z�i\\u0019���r�ka��}#��#>�>b��9\\u0013`�۲˖ѯԚ�7l�w,�z\\r����#\\\\\\\"P�kn�4Hg��.���\\\\Z��+T�d�ͼ�ɍ�\\u00127��)\\u001a�\\u000f�ij��)��C�t���+�˖\\u0006Ő\\u0007R�x�N��><�؈�Ğ�u+#\\u0019��@d�\\u0003��Ҍ\\u0005�ҩ�\\nD��$\\u0003p~4C��:�V���,\\u0014��\\n^��X\\u0006\\u0018rX���\\u001a#�cK\\u0013K�2p�7���p7�viܻw\\u0005�\\u0000�C��\\u0000�_\\u000f�q=ϸ4}�2\\\\WW�G\\u001e��M�\\r\\b���n�%\\b�,`=������\\u0011�+ц\\u0006��\\u0000��\\u0014�>���ȯ�T�\\u0000\\u0003D/z�\\\\\\\"��O�\\u0017�+�Z�MX��\\u0016M\\u0018\\u001by0�\\u0000�kAֳۖ[�C�Pýa��7�&���v����*i�<��x,�(���ի\\u0018cQ����?�T����\\u0000��o�CO�p�x�H|\\u0015H�h��B�x\\u0000������/\\u001fr���Kl(|\\f��1��;�[^�ڭ��r��\\u0000lƩ{\\u0013��BV7��hkY��\\u001f��1�W�aq~�)�\\u0012\\u001b��(Id��\\u001c�����8�v7ޢ\\u0006\\u001d.I*x5�Qn#�ք�y=���\\rk\\\\\\u001b\\u0012<�\\u0017�\\u0016\\f\\u0001�ҳ���F��N�\\u001d�N�\\u0013��4eK\\u000bG)�N��4S����n����lF�o�\\r�\\u00005��ƷdeP\\n�t [z�#�cJU�b�X�TK\\fP��\\u0012N��\\u0012\\u0006\\f�FS��\\u0015���&��\\u00191��:��d2򁸕���h�HiۖI��,l\\\\�$�1\\u0014Wv����o�;\\u0000\\u000f��'��\\u0012aN�\\u0005�\\u0019ŏ\\\\\\\"F���3;ܹp4\\u0006%@��\\u0004���CNKMA�w���\\u001e<��b\\u0001y~V\\n,>\\u0014ϴa���@fNS\\u0003��n~��*m��OH$��;N\\u0017�}�(�f�t�L\\\\e�\\u000f\\u0018����c��^��M�G�5�Um\\u00119̊՟LA�r�&\\u000f�A#q'U���S;!�\\r̓~k�ZԢ֗)q�\\u0015k\\n\\u001b��y��,�:I#�%��z�ʜ]U���ߧ�U\\b���\\u0000�\\\\\\\"��x�V�}O�|<(��K�w,�F,��m\\t�T���$\\u0015�!�N�\\u000f\\u0015�\\u0016�3�\\fx��J�╜�PJ���n6�R��Gq�\\u0004\\u0013'+t Xղ�\\u0016t\\u0016��Q��%{c�j]+�j��4�Ipl+g�i����5@H7\\u0015�N�ok�u�\\u0006���I��h�\\u001bq�+ac�o��ݙePYW��EP� X�\\u0002����vQX�^���Z��p\\u0012�bٲ�>�q���\\u001b�7���\\u0011\\u0015�$�F�m[�6#b���q��@��da\\u001bzA��*I\\r��.�����I7&漪J\\tnK'�+^U�X9���&mʥ� �׼��)@������9�!��^��b\\\\���\\u001a!��0�X9?��*�,X�\\u0011�螫�^��K\\\\\\\"�,T\\u001e�׌���ň���~&�-�!���\\u0012D*\\u0019���A�8���O$�\\u0019�x���PU�,��H>#J�CIć,��eG\\u0019�ؓ\\u0013�\\u0014;\\u0002��\\nb�,m�W\\u0014�H�S3[k�j\\u0007q�\\u0011�&��%~OC��+\\u0003q{\\roI��k/s�^h\\u0016}\\u0018\\u001dYB�\\u0000Oƅ������\\f�\\u0019Yn9�#��5��뜂D��\\u001b]��)�^�����H�/�a�.�wMT�ҥX\\u000b�v%��\\\\��ȓ�g��3r�B��g�&����\\u001aۮ�J-�1�뭚u|=�\\u001eb�\\u0006�$G4��\\f-w!���o[K��0�$l��s�\\u000f�'��;WIdO���ԭ\\r�@�Q3�t\\u001d�6L�\\u0002@\\u0010.�S@G�W<�\\u0017b6$ڴ|��R���XV55�\\u0016�ooŎ~O&�H\\n�\\t�r�q�b�8�Gԝo�B,�\\\\\\\"�B@&���AW �4��]|N懨!fq�Io�\\u001b�A\\u001by��\\u001b��c�$\\n2\\u0002�\\\\\\u0015�>��\\u001e:F\\bC`M�π��#�<k��W����4���J��J�*P\\u0004�=�fY^>^�[��\\u00000�\\u0000\\n]c�VGh�]te7\\u001f\\u0011@\\u001dj��\\t�js\\u0016�R���M\\u0018YQ����\\u0015���'����!��̭��~����\\u0001��J�g\\u0010d\\u0006\\\\\\\"�\\u0013�~�3r�&nD�\\u0016�-�}�z6\\u0011�v��e|f~\\roI}\\u0003�\\u0001�F~�(�\\u0016ڒI'Ƹ�\\u000f+��^�����`g\\u001c�\\u001fͮ����Qv4���֝�q\\u0013']�q@\\u0011�\\u0014�mE\\u0007�4��f�mO�eCu0�⧐Q�N$V99�舍���R��7屾���0�\\u001b��՛� ���\\u0000\\u001aXK1%�'s^V���\\u0000�C�l>\\\\�\\fd{������C6^K�!�i�V5+EJ��\\u0013�g���I�ו*U\\u0012l���\\\\�\\u001dj��\\u001e\\u001cS,kg��rlMm\\f��\\u0001��cZ���$�R�9W��o\\u0003�5��\\u000f\\u001b6h��9G�o�L0��e\\u0006X��s���\\u0015�l�|%lw$Ĥ�#P~TF\\u0016|p�J\\u0015�����\\u0014��E$���}�\\u0015��\\u0019Lj��Ո�~��\\f�\\u001e3\\u0011\\u0004��6�?ʴl�Y\\u001d�\\u0017V\\u0003C}�ƃ�̼�\\rI��T�R�OG\\u00018ѮLBYX�:o�|k,�Q$U]E���#��\\u00028�\\u0010xx�����\\u001epIF\\u001au \\u001b��C\\u0011�\\u0015,2�\\u0004R�\\u0017\\u0018�k\\tF�\\u0003b+.\\\\��bK\\u001fR��:\\nw��{f^2ƗS\\u0013\\u0006Tu���zO��V�K�@\\r� \\u0004\\u0001��\\n@�Q���,zӾ�ڰ$_ze$l<\\u0005�\\u0007ZSE����A\\u001a2�Q`8���t�v�\\b�2D�\\n\\u001f�\\t܎;\\u0002ZE\\u0012!�������&��f�\\u001f��Y:�\\u001co�\\tW�\\u001a\\u0010��,g6j�f?t�mJ�H�Z\\u0002I\\u0003\\u000b\\nΥKrRPJ;��*H\\u0001 \\u0012/o�\\u0003^�]/�tr��ǈ>�\\t&�6�-��g\\u0017��p7\\u0011�}G�[P���\\u0006��S����\\fܚ��QU\\\\\\\"rj��u 3\\u0011����epo��5E�\\u001a8�\\u0012\\u0000#ԣ�\\u000b$��K�mI�\\u000e\\u0016}@7�^�ײȼop\\u0000�\\u001a\\u001f��l|U\\u001c�r?Q\\u0002��9���\\u0010\\u0006�\\u0010Mũ\\u0000�dEo�~�Js�?P��\\u001f�\\u0003�\\u0000Q��P\\u0003U�8r\\u001d\\u0014��ց��\\\\Y���H��\\\\gJ�\\u000b2\\u001b\\u0015�:��s�9\\u000f�/��\\r<oY�S�\\u0005Z#\\u0006ᱛ\\u0010�\\u0016EQs��>4\\u0007�X!�\\u0018�Bx_p���k(^Uk0$\\u001f\\u001a��Cr���\\nF��228I`ڂO[ӜH�R\\u0018\\u000b�uc{�|+���C2�$���7Yܤ��i�.rq�\\u0010[�\\u000f�Ɣ�ݱ\\u001c]$`�6 �H�1�����yK�v��9���ū\\u0016~�\\u0007�Щ3�H��\\u0018�A>�:�kij\\u0002�Ý �H��b4�z|RX\\u001c��l�3���u�F�bG��(�x���|�we`װ�Ɓ���H�l\\r*̉�gVi�1�\\u000elE��U�V��H�\\u0007h�:\\n�1�C��\\u001a��6�z���H�O�ҳ}kb��٠\\u0005_�bI��\\u001a�6�Z��;�7�U�\\u0002l\\u001f'\\r2\\b`x8���\\u00146 �\\tZHH�\\u001f!��ᱦ5���$\\\\\\u0013����`E1qX9,.�R\\u0006�ч(�,�n=z޲��f���Tp\\u001c�t�G\\u0006�\\u001c�a��y���$Ӝ<N(]��\\u0001�_*M��\\u0003�> \\u001f�\\u001a���,��=\\u0001��j�����Sc�A�L�\\u0003\\u001b\\u0002ǯ���в�-p6�K*yr&\\u0012�,�e׈�i�}�\\u0014�\\u0002\\u0018�\\u0001��YZ����-YD�\\u0006ɐ�9�W�7'zW�1l�\\u001c�\\u00157��y\\u001fpH˅RQ�iz\\u0012iL�X�?(�\\u0015�*�ɛc���L+$�³�\\u001e�'���O�\\n��3�4��fM��v\\n\\u0006� �BG��8�\\u0011UI�\\u0003\\u0005ٍ��[ES�\\\\�\\u0003�0��P�ߨ�cbд��,O\\u001d�KfL���G·��<h\\u0010F,\\u0005�5��j� ��{Y�I \\u0003\\u001b-\\u0015\\u0016�\\u0015G��\\u0012\\u0010��n,\\u000e�b���)�m�|+:|EȬ��\\u0002)����4�ʀ���\\u0012mq}�Aں�~㈰ƭ<bȠ�CB\\u0000��k�&�n\\u0004R�l��h\\\\\\\"�'\\u0000��= r��³���E\\u001bH�8��Y��S����Ӱ�8��\\u0003qcnW��י�\\u0018�0IP��`\\u0018xP�\\\\\\u0002�\\\\����(`\\u0010\\u0006\\u0017\\u0017o\\u001f�\\u000b>\\u001eN&@��%\\u00002�:y\\u001b�H��\\u001c⩆x�q\\u0016�\\u000b�<\\r!�Y?��\\u0012\\\\\\u0012\\u0010-��&�\\u0005!úJ�\\u0001,\\u0004�\\u001e�V\\u0000i�Է5�\\\\\\\"o{�@�8�o�����̤��G��\\u0019�luR��(�6��UsT[nڱq\\u00166�^\\u0000A7�j\\\\xխ\\tz��sHc\\nGS��(L�a�����S\\u0011�������6a�>%�؍Vڲ\\u001f�U�q�v��D����\\u0002̫�����ΐ�Γ�y�\\u0018�2����$\\u001a7�q�dF�z'�I���E��c���M|�%m�P~��Eˁ�c`�*�\\u0006�\\u0006�ƶ_\\\\��}6�\\u0014\\u001ftʛ\\u0016P�E��m���C2V���D�g�\\u0019�j��\\u0018\\u0000b�.\\u0005���\\u0000\\u001a?��m�&/�\\tnY\\\\�H@�u���z�ZȺ\\u0000��4\\u0006惠�~�bu\\u0018�\\tb@�x-�����w���R�\\u0017�\\\\�\\u0001u��\\u000e\\u0003=��W�q\\u001e6sƹO�\\u0004\\u000e�,`Yb\\u0001G�r�4��P���jT����\\u0012F�\\\\(ap\\u001a���Ԅ\\bt\\u0015C!\\u001d(�ڲ=����\\u0006����8\\bT���a�\\u0003ď�\\u001ap\\u0002�/���\\n�h�^�&6\\u001d\\u001a���P�\\u0000���8^aw㭨�\\u0006\\u001c��{�\\u000b\\u0013�\\u0005�5�\\\\R��yQa�ȕE����\\u0011�\\u001a��?o����\\u0017�7��<�ʥ�7���\\\\<�2�\\\\\\\"��t�W\\u00000b\\u0018\\u0001c�҆\\u0005�\\u0000p��$���\\u001a�\\b�e�\\u0002��q]*�D �\\u0005��Vvi5bY�Rk;\\u0002-�n)\\f\\u000b�vزI�+G/��o���\\u000f(��\\b��=?���u\\u000e���-ac��^Ƥ8\\u001fե\\u0013\\u0001\\u0002�.�\\u000e?�$\\te�:��\\u0000:4��� BO�\\u0007�Z�=m�z�H-�\\u0011s䦔�\\t��4lKc�m����J��h\\u001b��T�=\\u000f��R�,.n\\u000e�T����t l�\\u0000�4�\\tk�Vv\\b����\\u000e�ה����\\fk� �+���\\u0000J��UZ�%�\\n�����#���Q�s�����U�\\u0011�\\u001eu���Q�:�ȵλ��A[��������\\u000bsR���iUt=�\\u001elBmv��\\\\\\u000e�\\u001a�\\u001b���t \\u0004�\\u0006��\\u0005\\u0011�\\u0000\\u001f��\\u0000��\\u0000e:����A�>��bC�G���Tkb<|*�1�;�\\u0007\\u001cA\\u0006�q�J�u�<���>�γ,�*T�\\tV\\b�y��U��\\b�<u6���j��}\\u000e��}|\\u0015T���\\u0010�q�\\u001e�Ek&:�\\\\�\\u0016e\\u001a��[\\u0016lu��\\u0016\\u0012\\u000b���\\u0001��ެ��h|i����n��\\u0013gWU*�\\u001cs\\u0003u;���э��y�\\u0001:�hhya15�\\u0007cI�?Շ�)�\\u001e\\u0019�J��\\u0010��jm}��\\u0007SRz\\u0007���4\\u000f$^��\\u0007��/�\\u001f�%\\u0019<�Ʉ$��\\u0012\\u000e\\\\\\\"��\\u0011�Ʌ�\\u00027\\u0011�c]]�é4�\\\\L���&���ęP_�e�FO�\\u001e�7�-nS��D�3�#�\\u0005�\\u0003�҂l,iew\\\\\\\"��h\\u0000�Ua��2�>Cλ�r\\r�ʶP��\\u00028�����k9i�l��P\\u000eT\\u0003\\u0018�F8��\\u0016����r�H��\\t\\u001c�����U&\\u001f�Y��\\n������/�\\u001e\\u0014��\\u001ay\\u0001V�D�o\\u001a\\bcIUK�uA�[�b�e\\fT\\u001e*m~��T�� ��w�PFUH��P*�\\u001ef�V�\\u0010�\\tbB�u���`-�z\\u000f\\u0018�\\u0013�\\u001aצ\\u0004*\\bmN����\\u0011z�\\u0006ն6\\u001eNQ\\\\\\\"\\b�\\u0005��򏉭Vt ƴ�\\t�~\\u0010�c��\\u0001�M9�݂&<���F~��9\\u00180c�#�\\u0004aH\\u0007����=MZ��\\u0004�-�u�)�\\u000fzKߪm��\\u0011�\\\\`J�̛r�\\r>B�h��9\\u0000v��ެ�,oq���y�U�91r�<\\u0003k�\\u000b����^���I\\u000bvS�*׷�z8�\\u0003���/�\\u001bW����\\u001a�\\u001b��mG\\u0015�%�2����O�+�&��%�[�Z^��B�q@�>�`\\u0016�:V`�\\u001c��\\u001a\\u001bu\\u0006��9\\u0016��\\u0001p��� �\\u000b����yO\\u00186��\\u0000I�\\u0000��\\u0007g�w '\\u0014\\u0002�?`֚�\\u0000��-����^\\u0013��.A\\u0017\\u0003�Q\\u000b�K\\u0016I���\\u001fo���'���^�I\\u001b��\\u001c����\\u000f:��%m\\u0019\\u001an\\u000e���\\t�T�ւ�[����-U\\u0012����%J�xbi�\\b�w>\\u0003Ƴ,�6���\\u0003D�\\u0012=��\\u0010��\\u001c!\\u0000��b7bzՓ\\u0015�&\\u001c�HA\\nH�]7�h\\u0003\\u0011��{t�P�8�\\u000f�ރ�cc\\u0018a\\u0005�����t��aAd��x2\\u0006W�ڏ�1\\t�S�p1�\\u0000#���α��̼M\\u000b\\u0013� �co\\u001aC\\u0016ֱ��񙂓\\u0012\\u0011̍��Ĵ��\\u0002\\b�\\u001d\\r6����\\u0014`ka����\\r#X��2�o��ά�2��\\u0016 \\u0001�ݻ\\u0014H�aM�g�c\\u0003`�H�s�\\u000eyE:�k�S]Z\\u001b���y]c#�+���PICa�cM1]����\\b\\u0000��M��\\u0002*5;F\\\\�'*\\u0012.uD݈\\u001b���W���\\\\\\\"lOʶ\\u001d��!\\u0004\\u0013\\bJ�\\u00146S����J�\\u0006����P��\\u0016��Mf\\u0015�[�֝�\\u0007F��.ޡ#n��ׯ!�hj�D�A,�iȟ#�m\\u001eZ�$\\u0016>#j��u�\\r�Ł\\u000b��'\\n�$ɰ!����\\u0015�\\t<�\\u001eA�0\\u0014��'��n\\f�\\u0005�Rz\\u001a��\\u0005%*M*T�@�aR��\\u0017���i{�����\\u0012�l\\u0007���|�@\\u001e�\\fr�v ���\\u0018\\u0018�\\u0004g%�Bc���p�D�#\\u0019P�ܳ0�����\\u0019n�\\u0018rk�$~[��s/8\\u001c\\u0007a�EU�UA��\\n��\\u001a�۶\\u001f�&��FB�\\u0016�\\u0000\\u0002����&(q��\\u0017a�\\u000fƒY)�'Ág�#�&���t\\u001d�\\u0012\\u001cC#D��\\u000eLM�\\u001e\\u0014�\\f���ҷn����\\u00032(�\\u0000r:|)s���2{���v*G\\u0012Q@-azE'����Ҳ�����sj�/�\\\\\\r焣6����\\u001e���ӷ�:O�:\\u000b�\\f�zK��}��k\\u001e��l\\u001e�\\u0018�Ư�,m��КQ�c\\\\|�\\u0014\\r�x�cbA���\\u0011�A�$&\\u0004�\\u0000n�\\u000b��n��\\u0019b\\u0017np\\u000e\\b<\\t:��q�QkG�>���ǡXذ7�V���\\u0011\\u0001fceP.I�\\u0015�\\u001c�y|����F�%�y4q�O&$-��T�\\r+�\\u0017�\\u0000���\\u0000����\\u0000m��b��2)F�`A���Sk��*�\\u001cy\\ty\\u00140:\\u0015`\\u000f�D��ғ�������\\u0016BO\\u001a��\\u0018)\\rqz�G���uf�*��7��EvK\\nƼQB��\\u0005\\u0002�\\u000f!XI�\\u0016B\\u0015�F�\\u0015�\\u0012Pp-���}<i~x�H1��.\\b_\\u001f�u��\\u0012\\u001c)^V[ƶ�v�`t޹�Uǹ�\\u0000�,\\u000b]�\\u001b\\u0015_\\u001d=_;T���\\u000bPHs��!\\nW@X��\\u0000\\u001acJ$���1e\\u0007����M#�%\\u0017S�\\u0007qW\\f�^�J��\\u0012�\\u0016pG��\\b��m\\u0018�b��M2~ώ����v\\u0000ru���*]��:��*��Q��>T�8W��N�>&��Θl���u?P\\u0017\\u0000}�ԛ\\\\\\\"<X����d�\\u0014\\r�\\u001d��'pI��;H�H���f���#w��&Օ�>�CE�\\u001d���b�\\\\�I�\\u001dG��<\\u0018�1]�\\u0000ᦠoA{��0�j}�&�����Ο��a��������[Ʀ|q�Ig\\u001f�a\\u0010f�\\u0010�5��\\u001c��i���f2�A\\u0005�:kZw��\\u0000Z��O�\\\\\\\"������ƵZ#\\u0017��!ǁ�G\\u001a�\\u001d\\r��R�\\\\)�C9�ꑹ;Q,l�K\\u0013e\\u001f\\u00166��\\t�\\u0017�#x��7��\\u0003�����[���Z�GE�\\u000f��UG\\u0001~;iB`Ѝ;+\\u001f�[\\u0011�G�ݪ0mɏ����)'O��y��4\\u0016���� C?n�.�����\\n\\u000e���Qk\\u0003��]�#\\u001eQ=$\\u001c�{\\u001ad�Q\\u0011`e�n)`u\\u0005�\\u0011�ָ��\\b�MΩ�#�L�R�����)\\u001c\\u0001�ep/,�� ��h�~ق�%=�7:}�V��\\t����x�U����\\u0005�֓cH�م@�\\u0014\\u0005��\\u0001j�\\b#\\u0000��\\u001f\\u0003��\\u0019�G\\u001f�F����Q����}=i\\f�^݉)��A=Tq��Kr�Tz�Ry\\u000f����\\r3ʜ��m��\\u0016��U��q�\\u001a�\\u001a�jM9a\\u0007,���\\\\\\u0015a�;ה۹(x��l�k\\u001e�Қ�KD���\\u001d����oP^�x\\u001a_���9)\\u0012|I�\\u0003Z}/m�H\\u001ah��f]@:��aG�\\u0005����\\t����b7���ɔ�RX��<y&���\\u0011���\\u0018�\\u0011V����ͭ�,�\\u0001[a�6^TX�x�X/-��i�x^� �n��\\u000b�=�5��#\\u001e!d���O�V��`lߴ��\\\\��\\u0007�QX��b�2{֘3i��(�\\u001e4���*�T3D�H�ے��\\u001a�1�\\u0017�L��;\\u0001\\n_�\\u0014P<4ծi�\\u0004�\\u0014\\u000f$h�\\fL\\u0001\\u0016\\u0002��@�Y��S\\n���|:�1�'p�ʞ9�~�{Q(\\u0003� \\u0000��O��Ҝ�v���\\u0017��\\u0010\\u0015J����k�x�O�D�\\u0001�W�,H\\u001d\\ryLD�R�\\u0000J�*ʗր,6���Z�ҽ\\n-z\\u00007\\u000b�b͌�JHv���\\u001bڤp�\\u0016[E\\u0004?��6\\f�\\u0007(��²��\\u000b\\u001a� 8��~4�\\u0017��vȦ�>.���c�����m�`i<L]�t\\\\x�EOO6>v�bA��:\\u0016�\\u001b�F��M����9�\\u0019qbc~1�\\\\\\u001e��7���99\\t�l�e��\\u0016\\\\\\\"Ǧ���q`�$3\\u0015f\\u0018�\\u000b�`\\u0002�:\\u0000��hw�\\u0015[I��'�m�u֔��N&��đc�&�M4�#�+-�!�7�h�a\\u0010�c�3�����6N ��ȣ��u�1�JI�}J>�~\\u0014l�\\\\\\\"Ge\\u0003]/��~�\\\\�\\u000ea������\\u001a�<{X�M)f\\u0016\\u0006Fl�a_H��?Jիa� ��\\u0003W���\\u0015E��\\u0000��.υ\\f!}�#\\rY�\\u0002I�\\u0015��\\u0005=\\u0011�+0�\\u0010-S�VȮ\\u001eX���C�3�,�'�٢�������{|\\u0011��!r,doS}����c\\\\\\\"���͔��\\u000f\\u0017�5\\u000e\\u0017�&L.�\\u001c\\u0010���\\n�:X�¥ۖU��uXp�g��+�bҧN$1\\u001eF���ī��2��m��{ws\\u0012�<��\\u0001M��\\u0015f��I\\u0017�����\\u0017��\\u0010ie��oQ'ŋVߙa8����Rvt�\\u0019�p/ǃ�K\\u001f�2���\\u00176��W]�v�.�%�H���{~��@�Q���1��琗�\\\\����>\\u0004�\\u0007�É{�\\u0001�\\u001f*�Z���]9�\\u0000���\\u0006qb$�Ѣ70\\tN��H��������X\\u0003rm�#ƀ���xjd�X��>\\\\\\\"�l��F��\\u0001R�m�\\u001crd\\\\\\\"��b�ݏ���\\u001b`��\\u001b\\u0019$�>r��o{\\u0000v��Cg�~��\\u0016џ-��]϶\\u001b�O\\u0018#�ƕye�ȉ�ݍ�\\u000b[���u:����\\u0014�G��U�\\fv�r��/�rO�A�y��e��Bm\\u001e�tw�'J�ѭ׳�\\u0006aa}u\\u0015C{mE\\u000b\\u000b�|o�Y9�\\u0012Ǉ�\\u001b�<T�m�;0���։UZ|�PFM���WlI@��\\n��0�\\u0011o\\u0011j w\\u001c5{��:\\u0000\\b6\\u0004�کY����\\u0000M�i��j���A\\u001e)#�5\\\\\\\"�U)������u:�\\u0013\\\\\\\"\\u0015�/\\u0012M��R������WI�\\u001f*/:�ԩR��%Q�6Uv\\n[o�U�t�X���+CC���8�\\u0015/+k���P\\u0007C\\u0016\\u0014\\u001e�x�6��\\u001a�\\u0005��.?-����\\u00188��\\u001b\\u0019_�\\u00001�\\u0000��\\u0017�U2�W\\u0006;(\\r��䂵XY&\\u001bp�s��\\u000bDx��.A� ���u�Aw\\u001e잩\\u001bVc����Qg%�{R�J�\\u0012�J�\\u0001+l\\\\vȔF4\\u001b�x/ZƘ���\\u000bL�#\\u000e+��I�4:��\\u001a��\\n\\u0014h\\u0014\\n\\u000b���`%��\\u0000J6��\\u001f\\n*\\u0016�ŀ�Bk\\u001c�[I\\u0018;�\\u0005��5(���R�jA(�\\u001cQ�'�H��|(e\\u001c�\\u000f\\u0013jg�\\u0005�&�E�Zc\\u0003Z�1�`�3,���\\u000f\\u0010�A�~���%aǞяC\\u0000�m��U�vzG��>h�Dq�Q�#�?M������\\u001f ��G�Y}M��\\u0018�RRtf���\\u0016\\fe�\\u001cH�=W�kXZ����\\u0001��\\u0000U�O��I�=�X�Qd]\\u000b[�ZKܬ�\\u001b3\\u001d~\\u0002�����9��\\u0015�c��#\\u0000\\u000f�zyW6v��\\u001e�\\b�N\\u000b�Qm����\\u0014�\\u001c\\u001e\\u00109-�\\u0007M)lx\\u0019rHb\\tŀ'զ�\\u001e5�1E\\u0017b\\u0014\\u0012\\u0005Κ�\\u0000�exf/��\\u0004Ɉ\\u0016G �����܋��f8\\u0017C�`���fp4�G��o1���p�ǂ4xI<��&�Z��L��\\f����\\fs{vh�C�plA\\u0004\\u0011㵯[��[.���@o�-O�iM79\\b�s�)�w��&B�d1�x�����5Y-A*T$\\rN���Ju\\b��\\u001a\\u0000�z\\u0001&�\\\\���6�{�\\u00002?��h\\u0003\\\\~�+٦>��~o�Pc�\\u0007�5\\u0002�\\u0000�r~&����X����F�\\u001a`x���o҇�\\u0007\\u001aMZ1s�t�(�\\u000bh75矇J\\u0000['i����S�u\\u001f����\\u0003�#��iט�$�\\u000f��ğ\\u001a\\u0000�\\b*J�\\bЊ�?����\\u001a� %\\u0015��2.�\\u00057�\\n���K\\u0015\\u00176޼�� ʬ\\u000b\\\\\\\"��>\\u001di8��\\u001b�\\b��~w\\n\\b��O8���\\u0007�޴|(��C�ϥ��ɷ��(���\\u0001��om�P�\\u0001?�nw��}�· �*E�6#�WXc�T8!Ǉ_�s��9��e�\\\\\\\"��ī�\\r��U@�<ł9\\u0015����QK\\u0004*A\\u0011��\\\\\\\"��)�W>&��ӏZh\\r��t�>�@g\\u0000%[i���処��6��'_��� z��V]�ʑ�/�n�\\u001c�{�P\\f��\\u0004{�Tۛ|\\u000eº\\\\� \\u0018s�\\u001a\\u0003���#�M/��\\u001cvLp�s*�o��5�Af�L�\\\\L��7���'Ž4�(�%R���_\\r�\\u000eJ��n1)��_���\\u0005�/տ\\u0001H���.Oy�d����6\\u0006�\\u0000u6�f|��c�\\u0019و\\u001f�\\u0000��S\\\\\\\"��g�y\\u0013`O�;Z�<�����x��98�]v�P��]�l��8�\\u0017$��;�S�`\\u0017�\\\\\\\"�!J�\\u0002�;ܞ�����P��I��t�U5�\\u001e��u�\\u0000�F��\\u0005�(���\\u001b���l�x\\u0010���M��_��j!�{~ڐ������otƃ!1���?\\u0012�\\u000b�M��#�\\u0017��{98̄��k\\u0011���r��#\\\\\\\"I�<��ɮ�Nۍ�*�� �5��Z�;�\\u0002��{\\u0011�JȬ�2G�\\u0000�p{�\\u0000G�u��κ\\u0006�FB\\u0019,�X0\\u0017��c��\\bUZ��j����V�L#V\\b/}\\r���#\\u0016YY\\u0014��?J�aCD\\f9$3\\u0016,}D�\\u0001ދ�4��V5iX\\u0015Fm��@��/\\u000b�K�f\\u0006�[��遤�Hʅ��\\u001c��VO\\u000b; >�?����+�r�`$�-�����P�G\\u001c��4\\u0004\\u0010u�h�\\u000017\\\\\\\"\\u0002\\\\m�J.\\b\\u0004q\\u0015(�����kH�?Q��o�\\u0000kV�\\u0001\\u0018<A?�ֵ��\\u0000\\\\�u8����7�ڽ�͎x�y\\u000fx\\u0001�N�u��՗\\u000eG\\u0004\\u0011��<�s��!�؍A\\u0014�#�%��\\u000b��O\\u0013U�G�Ԛ\\u0013\\u0003���&G��~a���F�$o���U�7�\\r��I[I�6��´��z�\\u0005�Ʀ܀�+D���z�\\u0005�\\u0001\\u001f��dK\\u0002m��O���jN�Zª��$\\u001b_QҀ+nD\\u000b�n<>t��\\u0012 \\nE�b�\\u000b\\u001afĂH$[@i'y��%XG�X���\\u0000�\\u0000\\r۠\\\\���mV��y(�u\\f��i�\\\\\\\"��ЮsW��Z� �\\u0016�F�\\u0000Umס��,.��\\u001f\\n�\\u0006\\u00167����RC������U�\\u0005؍\\\\��\\u0005Y'���NW��(\\u001cn�\\u0002e�F�\\r��\\u001b��S\\u0012İ\\f\\u000f\\u0015\\u001a�@<j���6\\u0006���cL՘��]O�T\\u0012�m\\u0007�|�5$�K�+���mW\\f಩�ԁ���b9L�+�8?�~�hz3�\\u0003�\\u0000!5ŉ �\\u0000��\\u000e�z�U�%J�)\\f�\\u000e5�p\\u0018]@$�\\\\\\\"Ls�\\u0015RO\\u0011��V8G�f�\\n:U(��\\u0017e��چ6\\u0001�_o��j���-��V~��I4�\\u001ef�T\\u0004]-e\\u001b~5�Ƽt$�u\\u0005m��\\\\\\u000b���h�cY\\u0019\\u001b�(��\\u000f�c2!N��]z�Q�\\u0010*O\\t\\u0012�7\\u001c��^\\u0012�v,F��v�\\n�r�}��;U���z���k0`E�xP�D\\u0018�Ơ�Q\\u0004����\\u0014x\\u0001�\\u0014.K\\u000e<z��\\u000fFOJO�q��\\u001e��\\\\�7:\\n�{~\\u001e4\\u0011��r��f�|�'\\\\f\\u000br�@�̽E1�ҫb\\td��E��\\b>��m�?�k��Xg��\\u0006��q��X�Uu]\\u0018(�'�\\u0017��|�`\\b�\\n*٧��M��x�\\u0015�fG\\u0014T�2�$�\\u0000�����m�<�0�I��#�#�}\\u0017N��c\\u0006��j\\u000fu�CrA\\u0003��\\u0019�^\\t�\\u000e�4��fa�H͊.��ۑ�\\u0011�;� Ɨ6@n-�����{\\u001d��\\u0015[΢�\\n\\fS\\\\\\\"x�\\u0006<\\u001cC��/��\\u0018�_\\u001f:p�{��k�mȵ'� ��$��~F�9\\u0004�3\\u0016#�'zW�mB\\u0004�x�d����\\bs�\\u001d\\u000e�C31�\\u001b�\\u001a�kVK�\\u0004�\\u0013=�+~�j~��#�\\u0001v7����\\u0003�a&�\\u0016�\\u0000\\n|E!]�\\nL�\\u00125�@�#�/�=+��(`�C\\n�T\\u001a(�4��\\u0004�\\u000f���F%��]\\u00056!�\\u0016$*�\\u0007�&��a\\u0019Y�*Ѫ^E��!�񨧞��O^���V\\u0005mo;����,c[\\u0010\\u000fR:�^����Y�}'A}��S�Τ\\u0011p8�E��ǈ\\u0000��P?�P�\\n���\\n�.\\u000fƀ,\\u00025�n �\\u0017��\\u0013j��>\\u0017����^]�\\u0010�x�\\u0002߈�92\\u001eEA;(\\u001f\\u000f\\u001d)\\u0001IP\\u0016\\u0001\\u0019��k��^h�\\u001b9\\u001aq7�{u#�t6�t\\u0004�j�r:��t\\u0017�^����\\u0006Ж]\\u0002�b?���z\\u000b\\u0004�����\\u001e\\u0002�]T�0�#�77:T�\\u0014p;\\u0016ԑ��P\\u0005��\\u0001K[@m�t��_\\u001a����\\u0002\\u000e��«(�a2+pu7\\u0004����4��\\u0000Ef~R\\rl���\\u0000\\u001d��\\b\\u0010f�,Y�\\u0004[\\u00128�\\u000eB��Q�1E\\u0018������\\u0000Ue\\u001b.nt�\\n\\bP\\u0005��kQ�\\u0005�7�*�����q,���\\u0004a��\\u0003���j�/���V/�\\n�(�\\t?o�5q�����6'�@\\u001a3?\\u001e\\u001f��8�O\\u000e��X��m���\\u001b_Z���o��\\u0000\\u001f�\\u0012Ɔ~銶\\u0011!-Ԁ\\u0017�\\u0006\\t\\u0010p,\\u001dy\\u0001u&�`/��\\u001f\\u0013�1�\\u0014�m]�r+����H�\\u001a�4\\f�r\\u0007��\\u001fuV\\u001e�\\u001c���?�\\u0000\\u0006�\\n\\u0000�͹���-�\\u0005\\u0019�/��&�?w$\\u0002#S�4\\u0004��'#!��[\\u0016��0�d\\n\\u0010��h-�e��.�c�1�\\u001b\\u001cE��\\u0017n���'��=�*w99\\u0012\\u001a��~�5�A f���\\u000b��ݿ����PG��\\rO[eX/�+:Iv�\\u000b\\u001b\\u001a\\\\\\\"E�ҁ���*�B��<������ʵ U��b\\u001d5���X�P����n/�\\r>��6\\u0003�{0Uψ���y\\u000f i�r�o���2���`Qܑ|\\t��*N%H)�\\t�v:@�6g�G�2\\u0016�d ������}�*a��&�\\t[��ƺH{��\\u0000Ă!\\u001e<\\n���gc�\\u000b�湬��M�$;(7O�6��\\u001cϠ9�\\f1\\u001cI\\u0011�ֺ}���\\\\\\u0010\\u000f\\u0016��O�\\u0000J\\u0007\\u0016R��:\\u0011�\\u0010ӯ��\\u0007[�\\u001d�]�z��9�\\u0019*\\u000f\\u0011��n>��Vƚn\\u00067^P�Am8�l�EV]����;M�1�����M�(�~$\\u001a�$�Oaմ�nl2\\\\\\\"-ǖ�=+JZǘ\\f���4�G�E��3L�������%L\\u0015\\u0003ldiJ�^�h���+`\\u0005��\\u0000WJ%1��u���Zq�l\\u0006�\\u0006�_�M�HZ;TSI�QRN#��L�cq�����\\u0012H�v��6sĶ�\\u0000��:/\\u001e5($m\\u0018뷅i\\\\\\\"� \\rG�(����\\t���]��O�d{��\\u0010}\\u0011�m~\\u000b��O���>\\u0010@�?I-o����Җ��\\bK\\u0000�k�8��vUq�\\u0006%\\u001b����>4,���1����+� ��Z��\\\\�=CI�Ga'��o�\\u001d��\\\\\\\"Q��4!H�\\u000b��lI\\u001by�\\u0012��퓛{~�ٹ*���\\u0018�!�@�U_AcoO�kZ�9M�9\\u0005��Ү���|[.\\fݔ8��0�+�/d���Nq͘ذ\\u0004�\\u0000P]T��A�GxP��\\u0005��N�i��\\t�\\u0013\\u001f��I+a?\\rH<�؟�c�����\\\\��n>�\\u0001r�\\u0001��Gf_�,j\\u0014I��\\u001a��\\u0000[\\u0007\\\\\\\"7,��~R���\\u0019�����䠘�x1\\u001b��7�ʛaO�.,���\\u0016\\u001a1��?�a1]\\t]\\u0018�\\u001a�钔�v��C,fh]dB~�=|+(�ȑ��(�x��k�˥r���O��4\\u0001��ݔ����!Yd��\\b��\\u0006�&{�\\u0012'�N\\r�I�/skY㿍����,@v��뮔�\\u0015\\u0019�a+ol�v\\u000e:�Ne��^O\\u001eZ��ʑ�C\\u001e\\f�o�\\u000bj\\u0003�h�g���ܑxe\\u0005�>��O�e؃�K�l1)W�r!��D��\\u001f�_B>\\u0016?\\n�4��1\\b}Ju`}V�Ɣ�efce���T�Y��O���ބڪ9y.{.4�\\u0002����6�\\u001b��'N�QF��1�Z0�H�\\u0000����\\u001e�\\bh�\\u0004�N�Ύ=�XЖ��\\u0010�k���ؕ\\u0000Y���flgWE\\u0004����]�үnim\\u001e8�#\\u001b\\u0001]\\u0012w~ݗ�I\\u001c�p��m\\u0014��T�����5�\\u000b\\u0001�\\u001a����<J�\\u000e���C�Ŕ�Ӑ�\\u0019�\\u001ak��\\\\\\\"`6\\u001e\\\\&\\u0019�Y\\b�\\u001f�����T��&\\\\u\\u000f7$U\\u0004\\u0016\\u001e�\\u0000�+���\\u001f\\u0016n���.C���#]H�����e3�\\u0006�|n��dɢ��:��\\u001b\\u00160=Μ�sj\\u001a\\tr{cE�p�e�UC�q]��U�/����D�\\u0018�D�>�6\\u0012\\u001f:*\\u001cI��\\u0019�\\\\\\\"3�x�(���\\u0000H^��\\u0000���r�(��<\\u0006C,��\\u001b\\\\\\\"3��擱\\u001c\\u0012�(\\u001e5�d�#�=���|EL\\\\<&^\\\\�\\u0000RP�$�%\\f7\\u0016\\u001aT�\\u001f\\u001f\\u000f\\u000b*QɃ]�:��\\u0002��\\u0002n�ۼǄ�}�\\u0015�C���\\u000b\\u0000㨷ZOsҺ�\\\\\\\"�~�%1��d$��\\u000e�ɍ�Z9Q�ú�V���!]���Es��\\u0006�8��(\\u0007Q\\u001f��\\u0000���v��\\u0002���5�,^��־�L�\\u0014$�<��\\u0013��?\\u001aс������6\\u0014�Ew\\u0007���^\\u001b\\u00104���\\u0015��S�x�\\u0016\\u000b��\\u0000Jb1e#a��yy���\\u0019e���ˈ�\\u0000�M�~]I�Z���7\\u001a7PI.�\\b�D:�!T`���}<G�n�L�6h첯(�~C�)���\\u0007��y\\u0003������$A\\u0013�_�{�A\\u0017����6ڡ�ZBd.�!�Ǉ𣱲ce��\\u001cq��r�_���ğ\\u0019��.9zYo{�d��Y\\u0015=�\\u001a܉��o�9\\u0010{H��ͥ��n�\\u0014𷈱c�zX${�\\u0015�\\u0006��\\u0013ǭneXR&\\rϚ�c�\\u0018\\u001f?\\u001d遬�N@ro\\u0015� ��Q��\\fq{��W�&���#�'��\\u0016Pt��\\u0019�yO\\\\\\\"đ�&�|(\\u0003L����8��wc��\\n\\u0002� �c�yTC\\bÖH�c\\u001f�V�}\\u0019����\\b��F��-�M/ǐG(c��h���e�xŁ?Sma�G�=Ύ�u*|�/�Z\\f�s%P�iU.-�@���)\\\\<q�婡�\\u0005���㱰\\u0000/�Z���}\\b�xVvi�x'㘝M�H��Qp4&���\\u0017s�m�rH�\\u0016����\\u0006�\\\\��\\u0004\\f�\\u0003t�v֗vܕ���X\\\\qaa�Etl�v�j���;LQ\\u001cP$Kr��PX��x�� ��e��F�y{��!�6h�0$!�y�\\u0011M���\\u0003\\u001b�αʂ׶�m����\\u0005�u߭���&�8y>굓���\\u0011r>�S6\\u001f������F\\u0002,��,X����?q�\\u001c�\\n��y���\\u0000�M_�dK�\\u001c�r�\\u0011X\\u0016�0���M&��N\\u0011��4<d��<I�F'a��̤\\u0001\\u0019\\nA76't\\u001f:v�c��!P�U�\\u0017Sb\\u0014�\\u0000\\u001aE�\\u000ec0h�H�\\u00109\\u001d\\u0011���<mjI��\\u0007��k�/ҩXc8�\\u0000\\tI��h�\\u001a�飣�Ȑ������I�\\u0019\\r\\u0018T�E���\\u0002��y�\\b���H��n��j+H�\\u0011�F�p\\u000b\\u000b���{S\\u0003>5V \\nԋ\\u000bг\\u001dmI�C�4\\u0016R2�{z[O���� \\u000f���\\\\5�_���p\\u0002'1� \\u0002���3��\\u001b�kV�4��u\\u0017Z6\\u0013\\u001c0�mo`);x\\u001aG����c\\u001au�4�\\u001b��[��XX��H#�|���h��5�����m�{\\u001bJ\\u0005��ּsqo\\n���ŉ��އ��\\u0011�\\u0014>���SK`0���x�>��||����S\\u0003\\u001f�\\u0000\\u0018ԛx���B�cw��x�G�����\\u0016 \\u000f1N�n�������y����p\\u001fR�\\u0003V2�\\u0014�\\u0002^0:\\u0002)\\\\���nF>'���\\u0000�{\\u0016TC���+?����D���q\\u0003\\u001b�\\u0003��\\\\�C�h��m:\\u0005�ҽl�V��\\u001e���J\\r��\\rEkf妾��fY�qƠ�����A\\u001f��h�\\u0003�d\\u000e������\\u001e���U!�\\u0004���cVēۍ�>�\\\\\\\"�q�\\u0011Њv{<��\\u0000��f��W�բ붞GƉ�9g\\u0016����\\b���\\\\��&���\\\\\\\"�@�h���L�\\u0013\\u0000�\\u0005����BP��u���\\u0005�\\u0003\\\\\\\"�y\\u0001���sU�Ȃ\\u0005����_�K�Ȗ\\u0014(�u&�N���S�X\\u001b�}�I����Q�\\\\\\\"��2�\\u000bF��?��yVx��w'1��D�5��J-�5�q2�o����\\u001b�ڷ��F�BVM�\\u001f\\u0017��ԧ�M\\\\\\\"I��D/e�\\u001d����\\u001f��\\u0000h҆�\\u0000�ƞU`x����\\u001a\\u001f\\u0013�*���\\u001aNw*V�MڻT�\\u0017\\\\\\\"7Ő�\\u0018�\\u001f�\\r(|��.8\\r��T;�Qr�ƫ��V]��\\u0006\\u001fa�y��`�%R9��}㾊|��\\u0006�톧�\\u001fADݻ:%���\\u001b�u��Ěu@���N�W�Wg�#.9x��K\\u0012.\\u0000'_���\\u000f\\u0016À��\\u001aR��n�3��\\u0000������l��Y���\\u001e,�]��C�y�ا��Oq\\u0001�Νd�d�<_��)!���r/ĝX\\u001f*\\u001f�Nf��|WnI\\u0014��BG0\\n\\u000e6\\u001b��SXNV|\\u0019/��Yڼ����\\u0019���eU�Ss�\\\\\\u0001A�d��sh�i\\u000e��͖%�2FT� y�4�\\u0019\\b-�Y���P�\\u0014��#�[ǎ�\\\\\\\"\\\\\\u000b#\\u0017kYA�jK\\u0019'��^c�K�J\\t\\u0000�6��Y��P��:�X�\\u001cb\\u0002�\\bE�-{RvTm\\u001e�򫭥I��\\u000e\\t1��\\u0011$N���e��Bܯ��o��'i��G�2M��<��>\\u0014Wi�ظؑ�{`dJ\\u000f��5D���o:��\\r\\u0003�m��G��j�S�.^\\f��8�U<�\\bպF?�)�<�Y��ܓ����\\u0000�Z���N��pz�|*[�EX,\\\\\\\"\\u0002\\u000b��`\\u0011l\\u001b�π��rS��\\u001d<�eS�A@�/R�JD\\u0012����\\u001eZ���5:'\\u001b\\\\��@G\\u001b��c\\u001c����L��p$\\u0000F��Qa\\u000e�\\u000buf贛\\u001c\\u000b31��3�F�]��\\u0018l�vm����M\\u0005���I{y�#�˗92J���XxyyS��V\\u0007K1�u�ی\\u0017L<�G\\u0013�:\\\\0�\\u001fƅ�$\\u0015+��o���%��8��z\\u00076~\\u0010���\\u001d\\u0007�4'0��%o��MyO����v�r\\u0011o3''�I�>\\u0014��p��Q��\\fx��bĐ��*��^��x�(�\\u0000�_��\\u0018x��&V\\u00115�\\u0011��\\u001a�d���;|h�f\\n\\u0015ZA�\\fF��j�d�A��C\\\\\\\"\\u001b\\u000ef&�\\u000b��)L�J����TA$���_\\u0016_���\\u0012Y��q�W����\\u0012�<���\\u0005�����w�\\u0014���K�Y\\\\\\u0016SbT��k���\\u0004�\\u0002�\\u0005����E\\u0012h�z��*,�h2\\u000f\\\\{�\\r/�r�7\\t\\u0010Y���oZI:{~ؐ-ŕ� �\\u001d6\\u0002�0i\\u000b���x�3֒�L-\\u0013��ܭ8�ysL=�K�j?�:\\r�4�\\u0011��\\u0014]��\\u0007���\\u0007\\u00111q�CV:��-N�\\u0005P4лgB7�h��Pu_IW]<w�\\u0013��L�#�+(S����&�$Xz���\\u0017l�}\\u0015\\u0011L\\u0004\\u0012�N��\\u0000U��X���9\\r9\\u0003龞�})\\u0017\\u0005�ڈ1@9;\\\\�����k�=�\\u0015���\\u001e$�f$\\u0013�H�\\u001as\\tp��\\u0004ƤzTlB�M�Mn�\\u0019\\u000f�\\u001bz��3�����P\\u0000�c\\f���{4��\\u0007�o1Kc���\\u000ba�\\u0010��@~��Y̤�?u>\\u001d���9�\\nQ�7ffmO���}�#3���h��#�m���?��\\u0014�B�_\\u001b\\u0016h��C7��#*J�;\\u0010\\u001a�[7cfRd�m`m���o�^��gv�\\u0016��6E˫}A���ӗ\\u000e_n\\u001f�H�\\u0012I��3\\u000b��(��;U\\u0002\\u0012{�12Fn�I�G#F�\\\\\\\"h�n)�t\\u0018o\\u000b�Q{r-�#MGJOM9%�:(eY�Y\\u0017�q�x֞7��P\\u001d�$X\\u000b\\u0013�su\\u001fq?:6�ӯZ�\\u0016\\u0006�ªM����k˛\\u0003�\\u000fon�*�+��_����kn���>\\u0014\\u0001�T���?�7%�d����BR\\u0000��\\u0001���?\\u001ar�а��\\u001b���s�N�?5\\u0000�X�]\\u000fn�O�����<\\b�Xv���\\u0003A��/\\u001b0\\u001a�C�bq[Bm�]�\\u001f\\u0011F���t:���YΗ[5�'�Vi&\\f\\u0003�H�5aȌ�apX���\\u0014o|�i;vAW\\u0015�x���YQ��F�m֗��g|9�B[�.�\\u0010G�tVҐ�D)+ ��|+le|��\\u0018T���Q��������w�.�A䠓avR\\u00050\\u000b�\\u0012G\\u0017\\u000e\\u0000H\\u0001���\\u0017�QC\\u0018A^ \\u0000<o���}1�ѕ��C\\u0001�!�\\u001f��\\u0011�\\b_R�;�+?�g<���� )�\\u001b�Ю�[ʏ˙]��\\u0000\\u001f�[�7��n�|+U��H�gy�\\u001f\\u0007\\u001e\\u001f}Pƶ+�ru�qw(�gE�^4\\u0017w\\u001b3��U��\\u0015򤘏������\\n{��ǔt�߁�%a�$�����\\b\\b.M\\u000b��>D^�\\u0016\\u0010��m����\\u001e#~���2\\u0015I$\\u0005{0\\u001fS�E��ښR�l_�my��h�\\u0015Y\\u001f�,7\\u0001�Z�3q�\\u001f�ʈ���!\\u0005�Е��\\u001bW!��\\u0000���\\u0000.\\u0000�[_ßZ�;�\\u0011�Lw?�\\u0012��\\u0000��\\u0000Ɯd��5\\u0005���m��<���0Pn�t렭U����\\u0013���L��n\\u0005=Ny��\\u001bv��\\fW?B\\u0000��#ZE�3[3(�\\u0007\\u0010\\u0000X�l6&��!���\\u0016+\\u001bh�����\\u000e��'���l�6\\\\\\\"e^�2��[q����\\u0002OݒG:E\\b*?�Y�~T�\\u000b�e���B�R�@�s�\\u0014v\\u000efGrɒI@�\\u0015V�,,\\u000b\\u001e��Ӝ\\u0004d.�\\u001a�q�w�d,L\\u0011��X9�\\u0000��\\u0016\\u0005GSkU�+\\u001b�v�\\u0014���[w,X3\\u0016\\u0016\\u0013�M\\u001a\\u000e\\\\���E0\\u0014�X�p�e��\\u0005չmj���8��,l>�?'�\\u001c1F\\u000f�� }�t��^\\u0000c$\\u0015\\u0006BM��\\u001axR\\u0018\\u0011`��Sv=\\u0007��Z8���\\u0001t\\u001f+\\u000f:�W�c&���CZ�\\u0002�7qf��\\u000f*\\u0000�Aq�\\u0006�\\u0000M�\\u0015���/!\\r\\u001e�\\u0006�����2/��\\u0015��\\fA7\\n/���i�\\u0018�7Q�7\\r\\u0010��\\u000e��\\\\�=�3��R\\u0004`�A��R*L\\u0011)�h�\\u0012JdrV5\\u0016\\u0004h\\u000b\\u001f\\u001a_M{d�1X��\\u001d>B���q���\\u001b��k�\\u0007q�|�\\u001d\\u0019\\u000e\\u0005�6���(&9�l�V�m��\\t�3r\\u001b%�9>��\\u000f�7�Hc��wǓ��r�5�[�\\u0000�f���\\n�Wbܙ�\\u00125,o^�؎ �\\u0004[ʀ=c��Z��RTɓ�����B\\u000e֮��`\\u0006���\\u0014'p�\\\\��\\u0004{�r��\\u0014\\u0000/e��<���\\u0000u�M:�T&�oszY��6;\\u0013����\\nk!����EoO�\\u0018�VR�@筿(�SW\\u0012\\u0006`�\\u0002��ϟ�Yb�% ��\\u001a���V�2�P�\\u0003���\\u000f�P�n�\\u0005�˽��j�\\u0000�Q��z^�װ\\u0017\\u0000_[jm�^Z�\\u001b�\\u0017 ���\\u0000Z_DJX���\\u0003�N��7b\\u0018�����*�\\u0002�B�H�^�s�\\\\\\\\\\\"د\\u0010N�{R\\u0019���+�M��\\u0014���\\u0014\\u00051�v9Hê~\\u0004���ڳE�%J��V=\\u000f�Hc�؉\\u00160v[�]��N��fCM1f:�i�Մy2�.��\\u000bk�4\\u0015��(Sݜ�9\\u0001`G&$�\\u0014y^�U9?e��]sn��\\u0011�d)���7%x����ۍ�u�{��y�u*=��y�ڿ\\\\\\\"��\\u0000�ήa�\\u001d_���\\u001fQV'�\\u0016��\\u0017��V\\u0007O:�����㲄��\\u000b\\u0017\\u0000yP���Uۓ\\u0005\\u001f3^��\\u0000�|� H �b5\\u0007΢�c��:�כ��{\\u000e$���xZq����\\u0012.\\u0003Z�l>\\u0016�;X�ݞQ\\u0010���XȱU\\n\\u0017�sҖ��L����Aco\\u0013�\\u0015�\\u0015�\\\\o\\b!K\\u000e|���-8;7Q�y�\\u0012HdN\\u0001�\\u0002x�A#Q�����\\\\\\\"�\\u0018�N\\u001a�k\\u0002ҁ��\\u00050�ӱ�6$�mQI\\u001c���4�k9��6�B��\\u00165�M\\u0011��a2�#��ᢱ���x��d���ƽ�j�\\u0019�IR�Jb%J�(\\u0002T�R�:~ķ���ڟ�\\u001a6i��X�ꗰVb\\u0006�:�1[�����)\\u001d͔5��Uɏ>[4��\\u0011���U�j�n��m���9�\\u0015`O^$|zW�A��.F������uo�����G�L�xr$}�_�x\\u0017\\u000fS�\\u0007�����t�_][{��}�\\\\�}�&���\\u001f��R~��܀\\u0013ԫ\\u0011�ޟ4.,zo�j/�\\u001e>u�7-o��\\u0012o����\\u0016��7�\\u00007_�����9>�\\u0018��\\u0017?kQΡŝ!\\n��7Q��\\u0007Z]��1�qi�q7\\n����A.D��#?��\\\\\\\"��w���:��ѽ���$jX�_�/A��3�N\\u0001�(�(��:�5);7����$�\\u001b��ϋ\\u0012\\u001a�\\u0011�\\u0019�\\u0000���\\u000e�\\u0018�n�ƦdcN�\\u001b�Yx�4\\u0000����̼�b\\u0004c��f\\u0017��+\\u0001��Hs��Q�\\\\_����zp&s�M���f\\u001e@\\u0005�\\u0000�\\u001b\\u001b!�w7����uG���P��\\u0001a=|5�#�Vg\\f�H6E;\\u0016�耑$}�I\\b\\u0001��Qso�����Bz0;2���\\u000b \\u001cz��Z[� `\\u0016�:ڈ\\u0001z�z��kЍ���R\\u0018N4�\\u0012�M؝M1BJ� ���JU\\u0002�p��N F�\\u0001�Ұ���+�V*�>C�\\b\\u0000\\u001e�RN�\\u0019L���$\\u001c��Y�t\\u0018ѷ;\\u0002\\u0007\\u001dM\\\\\\\"���d�H$z�����38M�J\\u001dF��rY�Fsw\\\\\\\"��h�ѥ�azq\\u0007#\\u0002\\u0017\\u001e�}�+R\\u0005���\\\\\\\"9\\u0006�_�ނ�&L̢�̀h8}C��\\u001f�WX��R�nCsDn\\u0012ZiL\\u000e��\\f���\\\\\\u0014#M<�P}��x1�%��I�kI�Mg6\\f�ˋ\\u000e-�I;�]�&)>4�H�\\u0015t#ǭ\\u0015�A�M\\u0016E��\\u0011�P\\u0007M�\\\\�iq2\\u001e\\tT������\\u001f����UH�`&��騭sVEx򐐓Y���q����z�N��ƎL���\\u001b��t \\u0013G,@qܺ#LI���%�:}Z���b\\b\\u0012x\\u001f��E���\\u0017�R\\u0017�\\u000f��Ù�c�\\u0001rh�\\u0019:y;�\\u0018�İc��j.i#�\\u0011�҇�uRPX٭qb\\r\\t\\u000fl�X�\\u0018��\\rZ�\\u0000Q�{7d탏\\u0000�E\\u0017��o�k�*1+\\\\k�R���\\u0017v\\u000b\\u0010�\\u001dI�i� \\u0011Bre\\\\\\\"ۀ|i\\u0016:+�E\\u000b0B�\\r�Q�L3fi�`�O��G��\\\\�>;ӵ�k:\\t-�\\u0007X�i\\u000e6$3l\\u001b\\u001e\\\\\\\"�\\u0000?Q�4�������F�mz?-rR8�\\u0003\\u0006\\u000e\\u001a2���~u\\u0017��{�ܖ&\\u0013rw\\u0017\\u0007Ʋ��.��mե\\n0\\u0006�������\\t�&#�+�\\u0007�zG�\\\\�v}�o�q�\\\\\\\"ыX��u�uK�����Hl��؜r�\\\\\\\">��-���q͗\\u001b\\u001b�ONL�D*O\\u0012H܍:\\ru�W\\\\\\\"Y%�6p�m�\\u0001��\\u0000�\\t�]22��%�4s�\\u0002A\\u0016��\\u0015`w4�5�]�$�$r��\\u0010�\\u0010v���<�׳0<�nw�g��7r�$*��\\u001f�,G\\u001d��\\u000e�:_�;�8�G�����c)���K��v�{�����97i]��\\u0000T�T��\\u0000\\u0015�sJ��\\u0015�ݨ�Z�DU�oc�OJ�u\\r�#�Y�f?U���fE�#��X��ڝ&!�)\\b��\\u001b&�r\\n��,��E�\\u001d\\\\\\\",tV66�]�E�݈$�\\u0000\\u0002��-�s�`$�\\u0001\\u0018oP\\u0004k֛y:?_�_�sƕvq�\\u000e�\\u0018\\u001d�ϡ#O�S.'�\\u0019\\u001a܊)k\\u001e�\\u0017�����ŎQ8I6�\\u001e#_\\u0011�j��91fL�՜�\\u0001r.n\\r��C��^�p�{��O2HeG*��#Kޏ�_�>Cz��\\u0001�\\nZ6�\\u001d�\\u0015?H�\\u0012��\\u0000']�=j�2�S���\\u001cN�L��d8�$Qq��Zfd�ehap\\u0017ƆN��]\\u001eL��\\u0004�\\u001b��­%�=Œ���\\b�$�9�b�\\r\\r���Ja�\\u0014�w\\u0018%m\\u0016G��\\r\\u0011�}q\\u0006\\u0011\\u000b\\tL�Z_ul���\\u001e��\\u0019nQ�$ث���Q�ymAU���w�>\\u001bF�+r\\u0001�!N��͜��������\\u001cq�I�\\u0001\\\\��4�\\\\j#\\u0004�������I�9�$�[�\\u0000�Er+K���<iɼ����\\bf\\u0019\\b��gp=�G\\u001dX�>'��g��\\u000e\\u0006ND��˘��!\\u001e��n!t\\u000bY�fv\\\\�����\\u0018b \\\\Li.��.\\u0001��1��Ȱ�{*\\u0003M�\\u001d�٢\\u0004������_\\u0001Z��S��e3���2�Hc�h{\\\\M\\u001f0�\\u001dRʮ���Z�|x2��D�{�\\u0003��HGV���\\u000fs�T��$M\\f�.\\u0001�$��{�:�T�rI�Tz�Reg��}\\u001cԪ�\\u000b�W\\u0017��6+�s/\\u0013�\\u0013Ѐmq]��\\u0004E�\\u001aŴ\\u0017��\\u0015���\\u0000�a�\\u0000K~5]m�\\u001eL��O�v.A�ɏ \\u000eF6��GZ�!2\\u0011%��7\\u0017S�댦���̘ſ����5�D!�<��뷅f4\\u0017�W$X\\u0005�F�Pz�/Ҥ��#���C�:���\\u0014y�\\n!�s���\\u0000B��M\\t���pП�\\u0006?�֕��%9�*\\u0013Ħ�qӭǝ\\tR�����\\u0011e�)-\\u001c�\\u001f������B�H��\\u0000�7'M+����wF�_bsy�_KR�\\u001f1Qu�.�`�1�e�*�6����\\u001b\\u001b$��x\\u0016T�v؟\\u0003W|�P�O&'Җ�6>�&�[Ή\\u0013�\\\\\\\"Q�ň��eJ\\u0018�\\u0018�\\u00069�*��R�2nx���A�\\u0011�X����\\u0002\\u0001,d�>��I5�kS&�+k�-/�z\\u0013~���\\u001f\\u0012fz�����̭o\\u0011��K��\\u0013jcq\\u001fvě\\u0016K�!V�B���W��Ƃ�?���I\\u0019�h�e��G�#^@�~���\\u0004�\\u000f�/&��(\\u001a\\u000f�����#�w\\\\\\\"�ҭav��V2��z��J�\\u0004��וXՑx���y\\n�h�mN\\u000fF��]RƊ�\\u001b�)L0;����+r��s�_\\u000b\\u001a���6\\u001dZLa�&�\\b�D��fTE;]�\\u0018�@:\\u001e��W����-�'�K��H�����k\\\\\\\"�Y��x�t\\u0007`5\\u0014,\\n\\u001a@\\u000e�NvB�\\u000b\\u001bo�\\u0011AG�hm�Z�H+��{�mb�0�ViR�Bٔ�Ԣ\\t\\u0004�,�Bd7.�m|\\u0007�\\u001b643\\u000b\\u0015%����(|L\\u0005\\u0012\\u0019,P��\\u001f:U;k�ٵj���o�:3j�]���*˨a��]x�\\u001d굡���ɑ(_u�d��\\u001f��\\u0016b(h\\\\D�>\\\\�\\u0012��0;0>\\u0016օ���E����׽���{�ȱFx�X\\u0013����i���{j��#c\\u001b\\ry/CL;Ope�H�\\u0000�ћ�\\u001b�U�V>\\\\WI�`t����G*\\u001fV�\\u0002��3V�ϙ?�z\\u0011���%΀\\u000e�\\u0010]��d�_u���b\\u0004/��\\u0001M�h\\u0016�]\\u0000;�\\u0001\\u0003�VT<�c���j�\\u0011�y\\\\\\\"&�oǡ�����9\\u0010\\u0006�֬�<��/�X݉�-����)s\\u000e,W�چ\\u0005���\\u0016�s�>Y`��г(�j�ۈ\\u00151�I0U\\u001a��}^65\\u000fR��F6�\\t$2�}+\\u00197n��\\u0003�O;ok�LE�-���M��J\\u0000���`�!�I$��\\u0011��\\u0000-ͮi��l.}1����YZ�n\\u0012ǒ�IK\\u0004�{.�0\\u0005z\\u000f:��>�}G�RI\\u0015�$\\u000b\\u0001��5\\t��M\\b��\\u0010\\u0016c��M*�F�˶��\\u0014Flܛ�\\u001b/��kJ�ɳ%J�*�%J�(\\u0002T�R�=\\u0004�pl|��<�{6��Z��9��צ\\u0019\\u0014\\u0012F�zM'�L\\b&�T�:6���|w�R�\\u0000\\u0011XT�\\u0014D\\u0004�\\u0004�k\\u001e8xH+m\\b�Id�y\\u001eĐ\\u000f�\\u0017��Wuρ�\\r9­Ůʾ�\\u0003�\\u001f:�7��\\u0000u�Ozx\\n�VR\\u001c\\u000f�\\u0002mY�6�K�`�1�*N�I֩+\\u0006 �\\n\\u0019�f;�ZF�\\u0016�ޝjӐnQj�\\u0015*\\\\xք\\u0012�J�\\u0001�\\u0019�x�R�N�M��4�\\u0000�������8JF�\\u000f����c\\\\�Z)\\u001e)\\u0016D6d7\\u0006�I�6���#\\u0007%S\\u0018L��c�Ȏ���Mo����6\\u000fȑ�fd?\\u001c�d\\u0004�|���v��q�\\u0017�g����0\\u0001\\u0019-�\\u0017?\\u001a\\u0013�G.\\u000eCI�^�f`P�6qb\\u000e�1���oܿM6\\u0011\\u001d��\\u00124�/\\u0016^)\\t\\u0017}C\\u000e�҅�U�\\u0004&-�7��\\u001d�\\u000b\\\\\\\"\\u001b�\\u0017�kL\\\\֛\\u0006?Ԃ2!\\u001e�ȱt��casa`M�*���\\u001bdw(�;H%����=n\\b�LL\\\\i$HT������>f�\\u0005,B��\\u001d\\u0000��\\u0007p�U�b-\\u0013��ԛ+\\u0006�ㅒ[�N�\\\\\\\"3>C:�'��UF�\\u0004\\u001cmj]&$�ܵ����q+��\\b\\r��0G���)i��u\\u001aT��\\u001bu�4,�\\u0016k�!6��VQA{7\\u001d[�[}�3�6Q�~\\u00149Q\\u0018]5������0\\u00017%\\u0005X�[O\\n\\u0012�̔3�\\u001b\\rϝ\\rZ\\u001c�ԕ*\\u0001z�U\\u0002��7�D\\u0015�8/5���V�R�>!W�\\\\���:�ra�(v\\t}\\u0014x�VU��ߑ���K�gm�涋�#�lRg\\u000f��\\u000fCN{6*�\\b\\u0004��\\u0005����R��C�ʭ�A \\u0013k߮Փe/\\u0007��Aak\\u001d�QK{���O��\\u0014l�g�(ڒ�+���ܟ�\\n}JͶ�A�\\t$��\\t&~�\\n@�9Z \\u0011�r\\n|x�����'\\\\\\\"�\\u000e����M��(b���`\\u0000��S,\\f�=�\\u001a8��e(��-�\\u001c��\\u000e%�0ݙ!Q&�bL�W�-s�\\u0000m�j\\tL\\f'�YgT�1��\\u0015D{��\\u0001�\\u001e�\\u001d>�Bd�6\\u0014�d㩾��t6�\\u0016ҋ��\\\\g�&8�1���A!�\\u000e��Gʼ-��\\u0019D\\u0012�\\n.a����\\u0017R߅)5J���tC\\u001cC\\u0005�d �\\u0015V������\\u0004���<�\\u0001���\\u0000�n��\\u000e*�E/\\u001cF*�\\u0006�\\u0014�R���÷�ˆ�\\u001b��1b�k��\\\\\\\"x��\\u001b�\\u0000��e�X�D��,\\u001a>W��q�\\u0018�\\u0018fb��d6\\u0016'[q��L��7�\\u0019�\\u0016��ZL��7��~4��0�r��[\\u0018�.+Z����L���$�q[^�;ۯ�r�nXݍ°'�\\r��̇3\\t�9�?K\\u0011b��ۡ\\u0014�G]\\r������(G'+\\u0016���jޒ@����c{� ��'I\\u0000\\u0005x�^�{P�v��\\u0014A�\\u0014�G\\u0017y�P���|�L3���#\\u0012B^\\u0006'�[\\u001e!�Z=�&�\\u0013b�\\u000f�\\u0019y���\\u000f�5�\\u0000ɐ�\\u0000�G�\\u0014WCڦ\\u000e�:X����\\u0007Qj�d���l5Ryh\\u0019�-\\t\\u000evf8�\\u0004�\\u0018�SN\\u001b\\u0014��r-*�$\\u0002�x���\\u001e5�w��9R\\u0018�\\u0015�\\u000f�X�m[O������'�\\u0012G�C�.<�1�(�!���`hU�6\\u001f\\f��K\\u0014\\u0019R�Ճ#0\\u0017�\\u0000I��~�������?�%d�+���������%W�#8�e���0�\\u000fܲ2H�0��1'�^�ScZ��1�d~m'�3�\\u0018��K�<q�f6<{\\u0007*\\u000f�GZ3'+��Y�3�n����\\t|���&�C�*�60ET@�4\\u0002�yW��/�yq��{�\\t�h�&��O\\u001a�����Or�î��,-��J���6�\\u0001#AT/�z$�\\\\\\u000f�ƀ\\u0004�x�����E.�\\u0019e6�\\u000b�!Ls�����*��̼Z+\\u0005Q�:[Φց�%0{|@��\\u001c�l�a��\\u0003\\u0001@��\\u0000ӂ�[�)k#��B�}�o�y\\u0016!G�A7Sr|k;9�e,\\u0007�!��x��G\\u0003P��G�\\u0015\\u000b�D_�e7�u\\u0014!x^���i��\\u0007�C\\u000f����=6��*���\\u000f!���J��\\u001d�ۭ$��1˃�}��/�I#�u\\u0001\\u0006��zSܳ\\\\\\\"t8�Z�OAn�����-;U��T/�\\nE�V�<8FGoU�qA\\u001d���5��T���\\u0017\\u0014<�.y\\u001d�\\u001d�<M\\u0010��J�\\u001b�>�o�ʅ�%orAҊ\\u001a5�,\\u0006�0�\\rdrŭk�Cm\\u000fM~4�^J\\n\\u0013{\\\\SY�2A\\u0000\\u0005���岔#�.��\\u0000�Q[Ci�oj�\\u001cLnE�2\\u001b�&�h(���w����]�3���\\\\�(a\\\\\\\"�#:\\r�$W�\\u001ccb#\\u0005U�X�ƪ}\\u0007�\\u0001���\\u0000�*beeb�tE%\\u0001$5ۮ�i��=J�\\u0015e\\u00029c��%��oN֡8�6�\\u0013\\u000f\\\\\\\"\\u0005����s,�P�\\u001e7��º��r�ʇ-�\\u0010��[�|���\\u0016���C\\u001d{�6=�H��\\u001d\\tP\\ru��\\u00033�v��X���=tCo�\\n�Ȳ�Ϧ�љ�,�����:�����\\u0016T�@..4#o�o,Ɏ96�M��Z_�f�.0�O57\\rm�x2UvjT�&\\u00130y]��n*���U\\u0016P/{u��X�>\\u001a\\u0002���\\\\�~�������0kۥ5�\\\\��\\u00056�������a�a�\\u0000I/ȝM�hL\\f_���,<��\\u0010�ȵ�^\\u0014U��\\u0018�\\u001e-��\\u001fM�hG�ۘ�Aw�-����\\u0014�$��A�I��P���<l�\\u0000���\\u0010J�h���6\\u001c��鵫R���\\u001fY\\u001e�\\u001f���BO��\\u0011�a�q �\\u000b��P�*��PB/KyP3�mYX��oV��m+ŋ�y\\u0000�6���$!S�\\u001e1�\\u000f�^,� �����6�\\u0000!@\\u001e�}���\\u0006�\\u0000ko!K�\\u0013,���O\\u0013�cG*;]�f\\u001a\\u0017'_��=�`A7a�S\\u0010��$c\\u001f��5�\\u001aMN�ݖ\\u0005[�Xhw�\\u0006�Rc\\r흧+�<���{@3�6��X\\u001f\\n1�.v\\\\\\\"02���A-���\\u0019ؘys�L�/yUc-�`N��[�d���8\\u001b\\\\\\\"�\\u0001�J��iH�I�\\u0001�&��@lk%fF\\f��\\r�޴�\\u0016��}+;\\u001b_�4�\\u001f���y,�d\\u001b�w\\u0014t\\u0012\\u0016;�RoP�����z��A���h��J͡\\u0000\\u0002|�\\u0000˵�77�]*�I\\u0007mEc��]Mʹ�֧&k��\\u001f�w�\\u0000M\\u0006VF7!\\u000b���lv���=�N~�[rV:=���JV�Q���Bi3���mu�o�[֮Ȅ\\u0003{��\\u001d)Wa��\\u001b���2-�4��t[][]���\\u0015�r�ͨpx\\b�WF���\\u0005�7<\\u0018+\\u001b�W$�,<k[�UU�\\u001e���ˋ2\\u0012\\u0005��;�oҘ��&7`\\u000f\\u001d5>�����2�\\rŴ�\\u001dm�G`#\\u0000\\u000b�:�_Q����E�E���ڟ+�Hb��\\u0003\\u0004�S�\\u0012T���5���Ƒ\\u0005�\\u0002�\\u001f\\u0015ֹ���%���\\r\\u0003�\\u000b\\u000b��o��5�1Ɇfa�S�\\b�Շm�q\\u000f���:\\u0003�:��n��\\u0014,AHl�)<y\\u001f��ʚM&߃��˳������t�@f\\f�G� \\u0013�\\u0015Bp��q�a$؇��͌lą1��v\\u0000�jzU������\\u001f\\u0001�n�\\u000b�D\\\\\\\"�k!&�,y\\\\���A�\\u0006k�:�}�,�>4�\\u0006q��\\u0019F�@!Z\\u0019A<�0#�[Xm�O\\u001bVR7\\u0015'��z��[(-a��K��T�1զ*�H��M�\\t/���_�����\\u0015*T��D�+�\\u000b\\u0010�\\\\�`\\u0007���\\u0007���Ys��:�\\u000bm\\u0007�7��Z�)\\u0001�\\f��F�2p\\u001a\\u0000G���RY���Q�����b+�^�����JJ\\\\^27_:O��\\u0016\\\\��\\u0006\\u0012Y�H��O8)�l�$M��_���\\u0017�&F<s��s\\u001fM���޼�}�#)�NP���\\u000fZ�&\\u000f��� }�nV&�\\u001d��\\n\\u0011x�,sH�ǔ��5�r/��gvgÀ��+�@*G\\u0013�����v�q����qf{\\u0000l:W;�{���\\u001cv*�O#���Q�\\u0002�qN�Gn\\u0011��ң\\u0019\\u0014\\b��\\u0003{�zj�H.\\u001d\\u0014���\\u001b\\u0007\\u000fS��]\\u000fq���'�a�p�M|�s�X�����%�\\u0019`2�8��Rn>4b�4�9\\u001e'\\u000e��}��\\u0013!&NK��\\u001e\\u0006��N|�W*\\r[\\u00169\\u0005�C|E\\u000f'h����>\\u001b�b�\\\\\\\"�\\u0000T+5�)��}�NZ�HW\\u001eFߍ\\u000b,2��eB����T\\u0000\\u001b����L�$P�z\\u001a���RK�9Z��N�\\u0003��\\u0010�\\u0001\\u0017\\\\\\\"�n�\\u001a\\u001b1c}�ժ�z\\u0011ŋ�S\\u0007�N@��\\r��P�\\u0018��\\u0011ن�Ӕ\\u0010�k|H\\u0016Y\\u000f3e_ư��\\u0018찆;��_\\u000e�=\\tn\\r$�a\\u0000Ⱥ\\u001d\\u0001\\u0006��\\u001533)�cz{6,G\\u0015�_O+[����)!d&�������!]�k(#}\\u0012��\\u0000{��J�\\u0019J����5�\\u0002A�ЍA����L\\t(>�����j�f�\\u0018��\\u0011qv�a*^>j/��>\\u001dkY'Rx0�\\rC||hp�\\u0015�@]H\\u001f\\u001e��\\t����\\u0005\\u0004���\\u0006�$�\\u0014Wr~y�v�\\u0000��\\u000bR2T�R�4�S\\u0013�\\u0002�[Z?\\u000f?��\\u0013�\\u001eZ\\u0003~����Z�\\u0000�~56�cM����m)?�t�G;݇�\\u0001��7\\u0017\\u001d<�o(GG\\u0017��VTԶ.�t\\u00066e\\f�]u�\\u0014��\\u001a\\u0003�s�L\\u0001@��7\\u0003s]\\u0003�ϧE��n��%\\u000b���H|\\u001b�R�m�E�\\u0007�4О��4�\\u001b�\\u00122)��\\u001b\\u001d|��V@��|h\\u0010\\u0017y?����?�0L�����ZX�Z�ec��\\u0018�yz�iA�P\\u0012$^,?)��D\\u0010�bh�\\f�q�2\\u0011~*@>l-@���}¶�\\u000b&MH���o�EW�Y�\\u001acbC,rd��\\u000e�_[x�Hb��\\u001a�\\u0004����1��C�[����bnnj�\\u0011\\u0004�S2�8홊�\\u0004�\\u0014�-��ζ�ʊ%i\\u0003+0�\\u0002\\rɥ����|�9p�\\u0005��{\\u001e���쉉\\u0010��^�\\u0016�m���cr��\\u000b\\u0016|�l��:���\\u0000���\\n1$9\\u0010��4F6�\\u001f1���\\u0011*B��\\u0011a��_`�\\u0002�c̜\\u001de\\u0011�1V�T\\u000b(��F�\\u0000e`ݮ�a)MB2�WT#�}\\u0004�q�\\u000f�Ɩ�%���n)��\\u0012��\\tQ@��\\u0010.m��\\u001a|yd���\\r�\\u0004V���lQ]�a-/o�\\u0017�Q�O\\\\\\\"Eq��vi���R.�\\u0003o�j�o���0<Lb�)\\u00056m=6�I��<��:��!\\r\\u0011\\u0016U\\u001c[���n>D'�\\u000eD�8��^���s\\u001aifI��X����밹#c\\\\��I�Rܕ��l��(� =�=_\\u0011��S�\\u0014T!��ն��\\u0000mcK\\u001c��\\u0007�\\\\܎=\\u0014\\r��\\u000e[�)\\u0003G+\\u00029�\\u00008���\\u001a۴�a�h2��Y�\\u0001�Y�6�5Uu�5\\r'��'�r���Q����\\u0019�S�\\u0007]Χo:�%`򻍙�\\u001f\\u0002oM{�3�\\u0019��D\\u0001�A67�\\u0007�(�RZ��\\\\��9�Hf1\\u0012@�겿�'�k\\u001f*�J!\\u0017^���q�*T�L�W���\\u000eG��o��^T�\\u0000:'��U�:��5��ȶWPT\\u001bi�҆��\\u0001��汽�\\u0000\\u0001E�\\\\\\\"�\\u000e�G�ayⰐ�n]N�R\\u0002�G���؟:�7\\u0015*x��P��L�!�?�W�5�/c�t�s..\\u0000H\\u0000\\u0013J\\u0002A\\u0019ܱ\\u001fís\\u0018�i�\\u0001v\\u001b\\n��񣁄�?����G7�\\u000f�A�W:\\\\[���ػ+GL�l(�\\u0018\\u0011�,#)�r�Je�]�YG�\\u001cf�\\\\�|��g��\\u001f\\u001c͒Cfd\\u001fry\\u0005���V�\\u0005Y3cl�\\u000f\\u0012m�r}7�Z&G�E�Q�u�W��\\u001dbTN@�\\u001de��ɹ��ۋ�\\u0000��J��\\u0000�����Sw��~�G�\\u0017�:���ňPt\\f��qp/z�\\u0016B�eȋkJK�\\u0007�\\u001fO�S�9D{�g\\u0017�e\\u0005�,M�-mk��s4�<N�\\u0018\\n\\u0007�S]\\u0001��f�4;W9��ْ�7[�\\u001f��W^�țh\\u000fEv챉�$o��\\u0017�\\u0007�ʅ�Z�vQ�)q��\\u0004kR��\\u000e���w\\u0000�ř�\\u0007�L��\\u0000*s�=�RQ�o��\\\\�t��d�ӑ\\u0003�WI�'�\\u0013�N�����M�;�Bd�R�1\\u0012�\\u0014�\\u0014�$f̦��j\\u0012\\u0006��\\u0000�2���&�۠\\u0006�L�+�j<<���\\\\\\\"%$\\u0017����ػ�2'\\u0016m��>/d�|��w\\u0006`g\\u001e~;�F9���U;��Z��!&t��{-�\\u000f��\\u0000m\\u000fȝ/\\u001dj���.H�3{�4d��'[h��z��\\u001e^vNc\\u0006��\\u0017�A���(z��HM�*T��|S���1\\u0007�H\\u0000��邫s\\n`\\u0004\\u0002v\\u0004�*�0�א7�\\r�5�\\u0012�v��&\\u001eK�1��\\u0000�\\u0007��to�(�̌)�+7��DF�?�Mk��A\\u0005�ݠ�#Ò?�\\u001fƱ��<�ܒ�\\u0000\\\\��O�\\u000f\\u001a\\u0010`L�\\u0003\\u0011\\u0001�5$ܟ����? q��ߓ�#O\\nͤ��Դ_65���\\r�W����\\u000f*�������A.\\u0007���б\\u0005��^gҺ��\\u0014&�����G1\\u0017��5�����\\u001a��q[��l.hla-ǹ~l-s��o\\n'2_p\\u0019\\\\\\\"��hm��T\\u001c\\u0019-Ȓ.E\\tx;�ee��Tjm<`\\u0002�ְ�d��\\\\\\\"ֽeVy�i�D�{|�Ð\\u001aM\\u0005�\\u001b���)5*\\u0004�\\u001d\\u001c�E?���\\u0007�u�]�%��ǭ�\\u0000�k\\u0007vH�HLd�[\\u0013q�\\t�����^!omnu�:�o�j��D�˳�\\u001c<�C\\u0013�\\f��<v�\\u001d1w:4�|\\u000f���.\\n��B�\\r�?:�p�v��\\u0001�\\u001e�\\u001d+�\\\\\\\"v@=�\\u0011�\\u0004�\\u0010�\\u0006��׎���R�l�����|k�Ȋ<�^\\u0006俖� �UɘZ\\f���\\u0011���\\u0006�\\b�j\\u0001�Krӄč�_�L��A\\u0017�ڀ�\\u0017K؂���)\\b\\u0007�\\u0018�kHl��<�ǅb\\u001e�\\u0000G��\\u0014Ƿw\\u001fd{R�S�\\u0017#ʲ�y_��֌e$,�H����X��#?#�=B\\u0012\\t�\\u000ev;��\\u000b\\u000e_�o�A{��`\\r����ST�E6X)7'J���q����Y>h\\u001b!�������+\\u00006\\u0002�Ud6fI&�Rw�R�Y$�R�\\u0000J�G�\\u0010َ�\\u0012T��N�\\u0001z�5B.՝\\u001d���('c{ڀ3E@l�)𾵺��h7�޽��U&�\\u0012\\u0015��.���(�\\\\\\\"\\u0001O&\\u0011���\\u0016�¤`\\u00198k\\fe�7\\u0004zzkBS\\u001c�&\\u00124&��\\u0011K��v��X�N:��\\u001f\\u0015Z}(WVG\\u001c��V\\u0007b\\u000e�W/�\\\\\\\"Q�\\u0000����A�����ż�\\u0000\\u0011C��\\u001f>�=�N� !��+0���\\u0001�\\r�cKk��� ��H\\u001c\\\\��S�o��5ʀX�QrM��5�Oc�%�\\u000e�\\u001c\\u001d\\u001f`�\\u001a<U�H��V:��6�\\u0010\\u0005������\\u001f���*���B\\u0018��\\u0000'ᩦ�����WM��=�`���K^91����\\u00168�\\u001f�\\u0001�Z�w.���q^q\\u0000\\r��m�Λ����&��1N�c��\\u001f�ƛm�F�/�N?/<\\u000f�(\\u0017\\u0007��U��̓�\\\\\\\"�S��\\u0004��nN>:��n\\neU@\\u0018n\\t��E��\\u0019\\t��\\u0017�Mh�>���ܴ\\\\\\\"�­Z�`˒��R�uc�^ό���7���.\\u0013�\\u0004�jT�@�{a�w\\fs/�b@[�].Gv��2\\f$��7 \\u0005$�W$�U�\\r\\bڼ$��}w�4�\\u0007i�3�\\u0001\\\\\\\"8E\\u0004#]yr\\u0003��W�)�VG7*N�^���$�(��ʏ�o�+���\\u0007�Ҳ�7�y<\\u000fj�7 �^�����N~\\u00146RO#\\u0000��\\u000b�S����/��\\\\\\u0002T�A\\u0006�B7�[���C�S��Ո�l��1J}� r�]��P�C��M���S)o�������\\u000f�G�50�\\u001c�/ɒ$fŁy1#ݝ�-��\\u0006��\\u001e�j�2`_S\\u0011�0G_*\\u001b\\u001a\\u0015�2A'SMB�\\n\\u0000G>V7�X�Z�$8n�\\u001cX�\\\\\\\"$��Q�\\u0004\\u000f��b\\u001b���Cd��$[\\u000b�@��/�-�\\fE�(�+\\u0001�\\u001eF=��\\u0001\\u001f�@�4������ŀ�\\u001a�W]\\u001dk\\rȯeg(y�d�U5��\\u001f\\u0001aU��\\u001d�\\u0006_�\\fg�!�\\r#��\\b\\u001f����+R�|��4d\\u0000uk��Cdwس�\\u001c���\\u0004\\\\\\\"�W#VQ\\u0007`���H�\\u001c�\\u0013\\u001d񉵑��uӕ\\t\\u0017xX��\\\\��\\u001f�~�����\\u0012�O��)�}�)P<r��caI��f��|mUT�v\\u0012{ꈛ\\u001da�\\u0011�\\u0012�b>V4\\u001eGsʞ\\u0011�˄\\u0003�\\u000e��=hybx���\\u0011��\\u0000$�\\u000b��U��[z\\u0012�X� �MxA\\u0006�CD�\\\\\\\"���Y�D$_�;ה׳�\\u0007%��6��\\u000bnh��#JY0��$R�2H�^8�\\u0011�u�\\u000e\\u0006:��0\\u0014jI��L2Hh�e��t=9���Ǹ7�ی��\\f\\u0012�tb+'fޱ&�$)�ǆ���\\u001a�����w<����BU��k�\\u0016ԕ*W����Y'�N,1��\\u001b��҅\\u0004\\u001d��5�s����\\u0003�\\u001f�҈���cF\\u0005�b�5�,�$*��H'C�pɌ\\u0004͌qo��P~4\\r$�\\u00061��\\u001cP�&�7A^`d�S\\u0013�H�I��K���\\u001c:�)�؆��¼2}�\\u0012�!��_��YQ������9�Kؓ���\\u001a\\u001b&b���_ʅ�,g9\\u0019(/d\\u0007O�L�@A��\\u000bk\\u0017�\\u0003�(�\\u001c�#\\u0016��֮�,i8r�n#E��+��\\u0015Ov\\u0010\\u00073��A'j�r$$�7�6���Z���7�E�^~T�l�$��%T�\\u0000�J�<��\\f�e�ʵ����Yŝ\\u001a�Y\\u001fm���J�'}~5*��!Y9�)�wU\\u001fi�jT�J\\u0005!���%�$�T\\u0007\\u0000�bw�XQ�G�'o���!�\\u0016�w]hd�D��3���l�w%t P��>$��\\u001cOk��\\r���J�ހ��!�\\u0019�y\\bQ�j�Cc�\\u0010$\\f\\u0000\\u0007z��I��F�\\u0015��{�n�\\u001e��.�}���9U\\t�lA������\\u001d��\\u0013�Z\\u000b�T�`m��t�\\u0019\\u0013�%nq\\u0010��\\u000e>�/k�y%�7:�-4�\\u0000\\nO�9$ŀf\\u000e9\\u0013�t��*!~FD��\\u0018�*b�#o��\\\\�\\u000e5\\u0000�\\r������j<5\\u0015��[2��*Ꮢ�\\u000713!�x��ߡ���\\u0000�\\u0005H\\f��y\\u001d\\u0003\\u000e��Or{��\\u001bf��1�{i����j\\u0011 Rċ���6���g-X^düF�g��P�k��\\u0002�֞�ܐ�f�V?�d���.\\n�M�\\u0014HRU\\u0006�\\u00030&�:��Tg�����\\u000f��B���\\u0006_��ޤ�\\u000f�l=�\\u001dKi�\\u0014��͒6��O�D���\\u001f�\\u000fI�c�\\u001a�%;ď)`E�\\u0000�\\u000fQ>:�R�o���k�ƝeŌ��\\u0002�n�T[CD0�I�<��\\u001b�@�Yj���G\\u0014�\\b��W�Rn�l\\u0019&\\\\\\\"y\\u001b\\r�&퓃�d�m'�@�\\u0000Q�O\\\\�e�uC�B{��\\u000b��\\u001b\\u001aV�(�^���5�z�\\u0013\\\\\\\"��\\u0010��]M��TZ��C��R�!�SW�&���\\u0000\\u0003����ʵ \\b4�V8�@>��\\u000f��ʬ���0�\\u0013�\\b.x��5\\\\4%�(X7&\\u0017ԇQ��C%�ѧ�I.�\\u0005������qE�uc�mN�\\u001bբ�TC\\u001b\\u001b�F���E/%�n$�<�'�\\u0011\\u001aZ�� S�0a�4@\\u0015�\\u0017�\\u00030�\\u001e\\u0015W�\\u0006\\u0006w��\\u0000p\\u0010\\b�k\\u001c��\\u0019#\\u001e��q�\\u0003�i\\u0016r��\\u0003�<\\\\\\\"�\\u001a�\\r�E\\u0000\\t�\\u001cbfh�i��\\u0000S�F��_�z�\\u0002H\\u0000\\\\�\\u0000�4��+o$�I>dQ?��\\u0014a�\\u0007�����\\u0000o\\u001a��$����_��\\u000f¥�\\u0002�;5���+dx�)\\r�M�\\u0002�xZFS{\\\\����X�����\\u000bl�\\u0004.C��'��\\u001a\\\\�\\by\\u0002�\\u0014BI\\u001bz�e�%�\\u0000��!#$xoD+\\t#x�\\f�ǯ�>��F_\\u0013Њ\\u0001Q�{hX\\u0017��s��Ɖ�[/\\u0015�r5��_��T��t\\u0013����\\u0000\\u000e���j�BA`6��t�ۍ�\\rl7�M���Qp�?\\u0003LB��>u�z��G�����T]��\\nC\\u0019�4q4�^х��'_���g�$��6�N��\\u0005�\\u0012C\\u001a�k�\\u001a���ѱ��\\u0018Sq��zڪ\\u0014\\u00197,� ��6\\u0000\\\\_�6��QC)�6�*��*@n\\\\\\\"��ԛ\\u001d\\u0005I\\u001d\\r�\\u001b0:\\\\iL\\f�r\\rbA�\\u000f[�z�1V\\u000eN�\\u0004\\u0001���J�V{�-c�'��YC-ٹ\\u0005خžt\\u0001b���\\u0003��ιl�����X���]1Б��^�})ʅ$��+},\\u00035��򩺘�\\u001f%Uk=\\u0012o�\\rƄ�\\u001a��Lkr:h))s���v��x��]�nP\\b#\\u001cL���R�`h�\\u001b�U��[a��J����L��i�ݵW�e�G�mY�FX��q\\u0000�um�|\\u0005\\u0011�<��RY��� ���\\u0014�'\\u0018��\\u001f����m���tbG0U�\\u001d\\u001d����]�N\\u0015iͰ��\\u0000Z\\u001e�e)�K�:�����5��\\u0000�:���\\u0016��+؁�׌�,���V�\\u001f���\\u0000i��Dto\\u0011Ұ���e��^��ܕ\\t\\u0000\\\\�R�/�O���T��;\\u0006&\\u001eL/;Zb�K)�1��1�ˁ\\u001aǒ�X��dٸ��p=�0�N���~�B������c堖I\\u001eP@�Ε��rZ�5;�m�F�*�\\u0011C\\u0019;Bn\\u0003\\u001f����X\\u0010�,\\\\\\\"�&�ʓ\\u0007\\u0018qX��?L`\\u000b�S�#\\u0014g��\\u0000cb��i�N�\\u0016{#K\\u0002�U6k�Dֽ�\\f�w)r2UK �(�R��\\u001cH��{�!���K�\\u0014�h!\\u000fs�A\\u001b{����Ž\\\\\\\"�~4�D�d*�{�ƺ\\u000f��\\u0017�\\u0016wr\\u0015��'v\\u000f������\\u0016;2M4�����\\u0015'�ۈ�i�\\u0001d#\\u0011U`a�+Xy�\\u0003�kE��\\u0004\\u0012���0���ʽ�\\u0016H�Y@\\u000f)�\\\\\\\"���(�Z�M�\\u00149\\u0004/���V��T�-�0{�qL�\\u000f�\\u001c�w�_շA�J�2�\\r�\\r���@�\\u00163�sA3\\u0017b�s����ԋ4�<����9,�dC���K�\\u0014\\rt8v8��_@�)v�ָ�\\u0001E,�C\\u000f:�Z�Z��P�W25.XU\\f�V2Km�\\u00135iZ�-��\\u0004��8�\\u0007\\\\\\\"�>�*\\u00167�h�xY�N�[*�&�.g��Vyxp6<�T\\u000eUX��\\u001b\\u001dE\\u001a\\u0014 ��(\\\\�\\u0018a�F�6��G\\u0018\\u0014�wJ� �0\\u0016�\\u0002����ݛ��=˗�؛o�EւE���\\u0015c�\\u001e��E�\\\\\\\"x���ʪ\\u0018�l�(\\u001b�M����v��2[�\\u001bZ�\\u0000��\\u0000\\u001aS�q��dBQȺXz\\u001b�}�j\\u0017�T�Q�\\u0016޶�ʗ\\u0016Q$gɗ�\\u000f\\u0003BD� V��=I�Ֆx]����v\\u0000�VA���\\u001eC,���%=\\u000f��$�凒X\\u0015c���\\u0015��<�H$C�QЏ\\u0003L���[�'���\\u0014�]�Ų$'~D}�VTR�d�\\u001b /\\u0018ܓ�������\\u000b�[|�\\u0005�Vt(�N�H\\tP\\u001b\\u001b��J�\\u0001���!a�Pz���./�x��*n>ul\\u0012����\\u00015^��\\u0017��\\u0017�ΰ_q��E��A{Z�{�������M�\\u0006\\u0018�\\u0005o��O%_o��u>\\u0002� �0��\\u0010>�\\u0014�IØ`��\\u000b�U%�2ʧ�)\\u0016\\u001fƋ�s&��\\u0003��ڮ��3!ۋE�#�'e���C� ��i\\u0006�y\\u001b�+��VޥKm��\\u0000\\n�v̆�e2 �oŔ\\u0012u7�\\u0017� \\u000e�\\u001c\\u0018L�r$}}��<I�A��~N�vk\\u001avnϑ!���]�ٽ�I?:�~��t�R^;��A�с�q�1r\\u0010\\u0005#K�\\u0005��\\u0000��\\u0000�sfЂloL����A*\\u0017��A{ݭ��m&2��\\u0011���\\u0016m\\u0007Ʀ��S����[Y��؊T�\\u0001��\\u0004���`\\u0014�\\u0000\\u001a�a�4�/\\u0006\\b\\u0019\\\\\\\"E\\u0001���`�UrB/�m\\u00148��:�ku5�e߮�qe\\f�n\\\\lD�\\u0002��;\\u000e�w��� �ʸ�1��\\u0007�/��\\u0003s��\\u0016�7�\\u0019\\u000e�R>3�f��\\u0010O\\u001e�~U�O�b{ \\u001c\\u001c\\u0002\\u001aޫ�}���\\to��OU-�3�b\\u0003\\u0010�\\u0013`\\u0006��¤���y��\\be\\u001fH�kj+6���,���mH���\\u001f\\u0019IR\\u0012#\\t�8��\\u001f\\u001a+X���$�8}�\\u0002�a`\\u000e�uֵ�+���`X5���h�\\r�+q���\\u000e|\\u0012d\\u0005X�<\\t:�8\\u0013b�m������4d�<yj)\\\\��NQŘn+�kQt�Z@�\\u001f�s�D9�W�ā�\\u0002����\\u0004$���\\u0001�~�뙑\\u0007�Ɇ����.\\u0014\\\\I����\\u0016�\\u001f!\\\\�\\u0000��o^_ɧ淠^gx�|ئO�\\r�ck\\u0011��Մ\\u0019\\u0011E�қ$a�����k�W��=J�A�kkxk^ʑF�\\u0000\\n�\\u0003r\\u0005�5�?\\u001a�*�\\u00066�v�?��e��\\u000418^n��v��=�\\u001cC��Z�/&��\\u0006ע;T�1?\\u0012\\u0016iU}��EnE~t'w�3K\\u0019krD ��ZQ�Y\\u0004g\\u0007n˜\\u0012�����7��\\u0015\\u001f���\\u00142�_\\u000eG�\\u0000ͣ#�D\\\\\\\"Dq��\\u0011�J\\u0006^�\\u001ce��#��8�/���)f�\\u0000�\\u0018��\\u0000Ջ�o�\\u00006�e�ψ�ĭ�\\f����\\u000f�\\u001e�Ï�\\u001bKX���'��� �r�r�)��E�/��A�����;\\u0011�y�ݪ6weo�Ǥ�\\u0016ޖ\\u0006{4�\\u000e3\\u0006\\u0016<loYc\\b��`E�\\u0011��g\\u0011�R�\\u001bY�/p�\\n\\u0018G$\\u001aX\\u000f�ҫß#�����7(ou��^����J�X�ܿV���U�*\\u0007��\\u0001LA8�\\u0018'IF�M���M�NR$ů�\\u0004��|(H�I\\u0000\\b�\\u001f\\u001dk<�I`^`\\u0014]��oUv�\\u0007GOk�r����p\\u001cC\\r��f�A�\\u0005�Y�YGA�c\\\\��H�s�����g*9\\u001a�'&:\\\\�+�\\u000f,}����s��4�7)]����UY��RT��C^T��b�i� ��\\u001d�&�R��\\u001d�$)\\u0002ۓ@\\u0015X�qtFa�\\u0014�£C*\\u000b�l�ĩ\\u0015�cL�� \\u0006�\\n\\u0005e�y6yd\\b\\u0013�Ǩ��RI�K�[\\u001c�0���Ğ�Q,W�p.m�j��DuT\\u0000��\\u000e��P\\u0007�J�\\u001aQ�\\tna{�ll~�QhN\\u0019I΃<�󍓎��[��j-���K�llLT<�m\\u0017P\\ry�$\\f��禔&3*�+L~\\u001e���F��LA8�q\\u0019\\u0017�\\fB��M|\\t�;�m��,\\u0007\\u001e\\u0000��o��\\u0016�0\\u000e>S�h��\\b�\\u0006�P��r��H�RF�,\\u0019���X��3��sH��q��}տ�}�V�Ɂ�3\\u0019\\u0005Mx��j�\\u001f�i[5�\\u0016�z��?50��o}��mZ�/n�FDfi>�~\\u0014\\f,\\u0003\\u000e�3����\\u001f�\\u0003S�V�ܡ%\\u0001\\u0011eG.��;\\u0003[P��M\\nȺt#��%\\t+��CPQt^N��D\\u000f��d�K���\\tA�UJ\\u000f�R��\\u0019\\u0015�\\b4VNL�\\u000f�@����{��3^��s1�>�\\u001d�h���d�)Q́�f�h�L�l�OӤ7�}�\\u0001e\\u0017�K���B/c�4Ok)\\u001c���\\u0014�N���%\\\\\\\"�TV|\\u001f$2�A\\u000eN\\u0013���2��\\u000fƌ|�c\\u0005���h.�\\u001c(�R�d3?�=V\\u0016\\u0000�q9\\u0012����x��Ĭn5S�Kd�̆7a��VB'�@�l<��nu&��\\u0005f{̀�ͫͪT�\\u0013�����f�B��#R\\u0001�7>U��\\u000f\\u0018\\u0005�[�e\\u001a�Mg��sM/��v֎C��FFL�YF����Q\\u0005gk4�4�d�N�\\\\\\\"@Ō��F��2`H� \\u001bu;�{�8P�\\r��\\u0007B*��J�h:��{\\u0014�/7;\\\\\\\"\\u0019\\u0000B\\u0014\\u0011p�ko�_\\u0007*y��)\\u0004q'@\\u0006�WI\\\\\\\"b����2�\\u0007`.\\u0007ƒ.\\u0014peI$mu:(\\u001bkZ+I\\r@tS\\b�\\u0016կ�i�\\u0017s�\\u0011\\u001b�o~^ t�d\\u001bQx�\\u000fr3�zS��.�7\\f�\\\\\\\"~Cܿ ��mJ��\\u0005�\\u0019\\u0004\\u0001�Y\\u0018��u'�S�d�p�&��/�{�d\\u0013��\\\\\\\"�\\u000eC��=)�Jf�S]4\\u0001�㹡;�\\u0002\\u001e-�\\u0012-���������s�Xn�_��b�<��Y!Y��{�:XiE(��KxQ\\u001d�\\u0013�\\u0011r��l-�5V�F<H5\\r�\\u0012�F�\\u0011{kaV&��o@�\\b\\u001dv�<m���~�\\u0003U6�n)\\u00003aBv\\u0004|\\u000f󬛷����(��(B�q�rkZ��5�\\u001d���-�W���dƙ�8_I�ZVZ&ЁN\\u001c����\\u0000*�a�7\\fcdV\\u001e7��\\u0014�Y\\u0005��\\u001d@��ZN�\\u001e�P~ʶ�\\u0010��\\u0002���2��z/����\\u0019��_\\n�6*\\u0002��m\\r�a�Fo�$\\u0011�\\u0002�XzX�?��Hr���NZnjmgF�\\u0005��Ǐ��l�\\u0017\\u0000��\\u000f�Y�`�I\\u0016��\\u0000�8\\u0000\\u0010d�/\\u001fHbnw��\\n�����?1�Qc\\u0005K����k��C���4�\\u0006߳V(�.B=wE�׍���]I���\\rr?��\\u00033#\\r��\\u0004�φ�}�׶�a\\u0015*e�\\u0019�w�9M�G�E��\\u0003ʹ�ɋ����Kk㰮ø,��7I\\u0016�Զ�[��I�N��\\u0000�~�\\\\�)ܧ�?�[mq����\\u0015\\\\\\\"Nw\\u001bZ�A����ּ��\\u0011P�q��+;��ܮ93\\u000f�O�oJ���\\b��g6�䞆\\u0003��s�L����\\u0000��WA!���\\u0015�~�7�.G��\\u0001\\u001eB�iS7o�o\\t\\n2`�T\\u000f\\u0003�i�P�\\u001b�m�o��&�!�q�������Ʋ����8��Y��Zځo�G�<=�Y��i=��kj��\\n��\\u0000i��\\u001c<���U'P+fom\\u0007�݃\\u0001�f��Ƶ�t|ՒB�8�j@\\u0017=)�aO���T�w\\u0004\\u001a3�!n#��rXF@>V�\\u0015a�\\\\\\\"�vٓ'%\\u0006[�\\u0003�:ߏ�\\u0007\\u001d�կt�\\u001e^\\u0013@�df*�\\u0012\\u0000\\u001a\\u0016ֆ�&�u*�W �UUg`����.O�T\\u00140�k@-�nkl��\\u0012ߓA�4<\\u001d����\\u001ci�\\u001cx�\\u0000�t\\u001d���I���\\\\\\\"�g�B�ǂ��ܚ���� ��%�\\u0000ޢ�e\\u0017�>6�\\t,b�e��P�ӵ`�H�u�.n�ү�\\u0006$��\\u001a��-4�4]�'+W:�K��\\u001f�7�T��\\u0011#@~�C��\\\\\\\"թ���\\u0019\\u0018���Z1��!\\u00135�m���\\ro�F¥�i%�\\u0014��B��o�Գ^�Yj����/2e\\u000foF��7�)� �\\u000f\\u001a��D�H@�\\r��_e��Ŷ\\n75|L&�vQ���T�N'\\u0000e��$�\\u0006��>l\\u0018�2�}'�@���q��\\u001e5I�ѝBmU����ŝ�h\\u0004k,M4m\\u0012\\u001b\\u0017\\u0016��;�R�'o�\\u001ef��r1Gu\\u0001�\\u0011n���E�����qu\\u0004(\\u001e{���gn\\u0010�\\u0006R�X̊�/\\u0011e�ٽ?WZ\\\\�.2R_\\u0019\\u0016.\\u0003\\\\\\\"�;D�f2\\u0018�gR\\u001c*�\\u000b\\\\\\\"��:�K�q�F�\\u0004�\\u0015\\u0019���F�\\u0014\\u001d\\u0001��\\\\x�0�p�3J��h��\\t4�~k�W_��.\\u0002�o �G%�C\\u001e#`ǋ[�jn��\\u0000A�\\u00023���G�\\u001d���N��)dM��\\u0018P�p9�>��ۋ\\u001az��9du\\u0001I\\u000b�c%F���|���X��'�����\\u0012\\u0000,\\u000f�Q��[�Դ�o\\u001b\\u0015mS\\n�1�\\u001c\\u0000�%�\\u000e�MGQW�,(�\\u0012�w;\\u0000u��<��\\f��\\u001f�\\u00129!$�4�\\u001cD�F\\u0011.5���Zx�Snf\\u0001\\u001f�#�E�\\r9�<1�Q��?=i<��Į��.0�{���>A\\u0014\\\\�\\u000bڵ��S���\\u001a\\u0014�Y�T�E\\t���\\fs�8�1��\\u0004�܅oW\\u0006\\u001f�;W;6_r�́c��C�B\\r��\\u000e܀�z}\\b�G,؎����k6�t^�\\u000b2Q������O�QUC\\u0013�f� �k�T����d��,ߨ��^%_˚���Rw\\u0003��\\u0014!�[\\u000f\\u001d���ބ��\\u0015�BG��z\\u000b/�\\u0013(RY_a���ܬ�\\u00128%��2Y\\\\-��\\u000b��\\n�\\u0007��s�F�c���o�V��1&1�$LD�����\\u0013$�4Q�a�\\u0005���8e<�\\u001d��\\n�\\u001c�#m\\u0007JҮr&��>R2��ѿ����t�\\u0000tp���I�Q\\u0014��D�R�|�c��T~a��\\u0000EJ\\u001e)'v��5m6\\u0014L2��\\u0017\\u001at�ץ \\u001d��\\u0002��\\\\��\\u000f�y�1�ґ�7�oqx�Cs�Ru'�^�\\u0013\\u000b��Ŏ�h���\\u0005Q֥�R����ʮ���\\u001a4w���>���\\u0007�F���;5�~b�����)h�|����^��F��\\u0000���\\u0005ͼi�i�Uq\\\\$�H\\u0017�\\u0011�T�Ж�V2їS~?P�\\u0007�¨�\\u001aQ\\u000f \\u001d��\\u001e�[,R�.��\\f�%d\\u00065�\\u0018�O\\\\\\\"�\\u0017�V0�Dd\\u0005���sWʛHI����(���*�\\u001cjT��cN\\u0004#M\\r��\\u001aV9@\\b^�\\u0015%\\nq{�^\\bu�\\u0006G:�\\u0002E�\\u0000�[�\\u0019�\\u00007��\\fS\\u0005��X�[\\u001f��\\u0001��\\u0012|��)�\\b�a���O\\u0014m\\u001cR�\\u000f\\t!�[��\\u0011�\\u0017��w�ȡ\\u0005��v\\u0000<��q��S��J1Zd`Z'��Ri��Xʠ�%#�\\u0018\\n��mnIK��<�f�+q\\n��ca����5�6�;Ѳ�#s\\\\p\\\\\\u001d���\\t\\u0016c�t |,))��f4�\\\\��z�9\\u0017\\u00152\\u0016���i;�#�B\\\\\\\"��-�\\u0014\\u0004{\\u001e@\\u0010A:t\\u0014t<�E�\\u0000\\nu:��\\u0000�/�2ӷ�)\\bHf�i�j7�\\u0012Յ�4\\u0019Qr�\\u0011��t�#E�\\u0002.«\\u0018p̮,E�\\u001b\\u001aҮ[Y\\u001aPJ{�<)�p\\r�k_ⴊ������͋'�!\\u0005K\\u0000\\u000e���\\u001f\\nOA�D�\\u0000C(�po��\\u0013��XH\\u0006�\\u001b_�V3w��2\\u0018��n-��U$|T\\u0003Ybw\\u001c�H�q\\u0005�Ǒ�\\t���\\u001c��f�\\u001e1�<\\\\\\u0010�`Z��� �e �.\\b\\u001e\\u0006���6[+K`TXq\\u0016ް�J\\u0010��v���Lmq�lE�E\\u001f�\\u001b;���`@\\u001a\\u001b�ָ�ZE�4LQ��Sb(��^Vr�@ĚhP=È�\\u0011����[�6\\u0000�k\\u001e�'�8������Z�\\u001e�İr��AE���%��Ik��֘@�?�~�4�\\\\\\\"\\u0005E�V\\u0011����.��J�\\u0017�\\u0014\\t\\u000e�D\\u0004���Mx\\u0011y\\\\�OZ��N����'��?!Y�\\u0003]��e^��*����\\u0001�Ε|Y\\u0004S,���P\\re^�����hg���D�\\u001aޟU����Ԑ�!IRE���]/b:�R-�q6\\u0002�,\\r��\\u0019Ԫ�'B/㡭_!r\\u0007�����\\u0016�@Qݥ[�%�\\\\����)�$9l���5Я�:֪ct\\u0002;����)���\\u0017 KĲ-�����\\u000f��;wo�x����w�GST�;�S� p�q�\\u001b�V�G$��jT\\\\�ΰ�d���X\\\\� /s�\\u000fZ��3\\u0007!ah�p��1�/a����\\u0003:����A�Qݣ\\u0013�-;l����4\\u000eD�,�#\\u000e,��S����f[�A�#��)��\\u0015�\\u0018,e\\u0005�ԛ\\\\\\u001e�j��`I\\u0000�bzW�I{��㽺޼\\u00040���O��V�\\u0016*\\u0016F\\u0004���R7ҫ�3\\r\\u0016����ʽi8��ma�k ��\\u001d9m��Z\\u0000��\\u0017�..-�x\\\\�w 0\\u0004�\\u0006��_�^�\\u0017���`Z�h4�y��8� \\u0002t7��ր �݂5���Z�P�ifT�;��GҚ|u\\u0014��Bh�r�\\u001dV�d\\\\\\\"I�K�\\u0002��m'��ޮյV9(�H�Ӱ�߈����Y\\u0017�r\\t�\\u0016\\u0004�h�\\\\�����\\u0004?۹+}�\\u001b���i��y\\u0012\\u0015�^L,�x(\\u0016T�[Op\\u0006��ԭ��9WEoo�-u��a���^C\\u0004�E<\\u001f�ײ��rF�E��~�L9�_�D\\u000b��V\\u0003�\\u0000v>5V*��Gn1e���i@fd4�\\u0013�\\u0013Cp�����\\u0017K��\\u0018�w�\\b�y�y�W����\\nΥJ��IR�J\\u0000��\\u001f�V�<�,�:�\\u0000�\\u000fƩR�:O�y��K�,����0���/��i�-�\\u0002�Y5f��0\\u0012\\rƄli�/�<�#\\t\\\\\\\"��~�bC[���:��R~N�\\u0013\\n\\f0�\\u0013]�݉���\\u0000��]���\\u0000�\\\\�\\u0000���\\u001f�X��L�9�p=��h�~o�o���mF�\\t�ʧ-b��p�1g�i`�A�1r3\\u0004��\\f9\\u0006\\u00028��a\\u001c`\\u0001k�@\\\\��,($�\\u0011efOc,�*�~�]}>\\u001a�Vx��4�M.S� B���c{�6\\u0000_JoH\\u0012\\u001bw\\u001c��fw\\u001cgQ������Q�� �\\b�=M�(\\n�(^ⶤ�R�P�M{6F�\\u001d�ԟ�R��R4R,��!���yU��Ó��\\\\\\\"��A^�dǓ\\b�6:0�>\\u0015\\\\�\\n�Z�I�\\f��\\u00014��j��C��H��\\u0001���\\u0019��\\u0017,\\b��\\u0014ݛمm�7�A��\\u0010��\\u0006���{�q�\\u001a\\u0015U@Y�\\u0000�KyU��-\\u0005M�!�A��6\\u001dO�)\\u0017q�r幍\\u0018�pn��'O�A�4���Sɏ��Q\\u0002=Ug`�.M?�xӄ(.\\u0000�Ṯo\\u0012|�f�9�\\u0000�!ؠի��1�ӧ�oMd��Ŭ)\\\\\\\"�vj0/�-�c��~цB�\\t�jK���Pӕ\\t흇��ڲ�Y-\\u000el�Bxs<Z�m�T\\u000e�\\u0003��`\\t5�K�D�B\\u0005�\\\\\\\"��o\\u0015�jv��܅\\u0006�i��4�\\u0013�ɜ�b�0lܵ�ڝC����(\\u001c\\u0005��`-�\\u0012�[9�T,��aE`\\u0004����>T�\\u0016\\u0003$%\\u0019\\u0000(x�[�Z��G\\u001b\\u0016���@:\\n�\\\\�.ǘ\\u0011�+���xx�s0%[<Wh\\\\��S�[�\\u000b�\\u00029�\\u0000馶󧘰�%�\\\\8�t���r-�^Qf\\u0004\\u001e��cɏ!�M�\\u0004u\\u0015�e�\\u0018\\u001bOR\\u001d�W�\\\\�z��\\u0000\\u001f�/������}J�8y���x��Y�\\u0014a����/G\\u0017\\u0013\\u0000\\u0013٦a� '���\\u001f�\\u001a�\\u001e���8�\\u0000!�O��H�8\\f�B���_+>hJ�\\u0019@\\u001a�X�Փ��E'�b�G�k�>|�$\\u0001\\u0007�w>U�7my��l\\u0004�y�Gw_��+ȱ䑊(�\\u001a\\u001b��YR,��Y�W\\u001e\\t l̃vW(��@\\r���'�x\\b\\fn\\u000e�Q\\u0018}�;\\n\\u0013\\u000e;*�b�\\u0015\\u0007S�_�14w�\\\\+�1(�\\u0000�+h�V��`�=-�p\\u0007�\\u0007t?��<�-x?pwpn�\\u0005~\\n�ʆ\\u0007�C\\u0011\\u0019�j\\t�xUeo��\\u000e�ڸ�_ݝ�\\u0011�p�)԰��\\u0000�/򮋴w�{�����Enh�?W�\\u001d4�\\u0003\\u001a��x\\u0013ao����L\\u001ay\\r�\\u0000�?���\\u0000�4\\u0007�\\u000eD\\u0007 �K�H;��c�\\\\�\\nY�-�k�V?�Wjq[���J��9��$�I~D�\\u0016U�����R�dk��¶��\\u0013\\u001b ���sY�A�������`��������U*0�\\u000f����9�ɕK�e��G����I3���/�\\u0000n�}\\u001f�\\u0000\\u000b\\u0004\\t��@���\\u001b�Kk[�I��)�\\u0016f0�\\u0004�\\u0003�b�\\u0013�Zy;A�'\\u0016(�\\u0019U��r�\\u001d\\u0004?��g����Յ�\\u000eO��r`e�-�hoj�s1P�y\\u0010|��\\u001b��Q��\\u0019S��\\u0015\\u0017WK5�\\u00176�\\u0003���\\t#�)�6\\f��#m�N��&�R:Dʁ\\u0017�;m��\\u001aP.\\u0003/\\u0016\\u0017\\u0007B\\rg��e����HȬl��[����8�NN�~���\\u001d����\\u0000\\b�m|���\\u000f���~��K�̮�?��\\u0002��r��g���\\u001b(��\\u0005$\\u0015U\\u0006�\\u00006�O\\u001b�B�\\u0007\\u0003���-�\\u001f�\\u0000�^7��_�f���\\r\\u0007�T��\\u0000���V� ߢ�\\u001f�k����\\f��7�3�a��_���{R�(r�\\u0013��(\\u00053$\\u001f�\\u0017��^��S����e�C\\u0012X\\u0000AR<>4D\\u0012~䀲e�1��#�~[�=߸>J²�3\\u001f O]m��*Z�1\\u0000��\\n7N%Y�z�\\bO��?\\n��8�,\\u0007�x�+\\u000b���Q�Ȩ�B\\u000f�mEy�\\u0017��P-�u�,1��v�ҲyY\\u0018&�06\\u0016�܂\\u0000�E\\u001fڂ��6\\u001b�KO�\\u001a����\\u0017�\\u0015���Y�Ku\\u0014\\biݢ�L�\\b�\\u0005��ƃ�\\tR2ċ\\u000e��~L�4h�\\u0019�պ�+\\u0017ύ���u\\u001a�I�%J\\u0006�8�Kك��PT��\\u001d�\\u0014^��qf?`�cs\\u001b\\u00126�{~B&rI'�H+�$S������tL�\\u0014�q\\u0016���\\u0001H��c��F�nn�N\\\\\\\"�\\ng.L�)B�C\\u000bX�\\u001dmI^w�\\u0000�g\\u0000�í���q�im�L\\u001d+5��q p�\\u001et\\u0005%u\\u0013F�/�M�PvآԱw\\u001e#O��ā�\\u0013d�\\u0014\\u0005<c\\u001b_����h��EeC{��a[5i���3MFQ�xD��\\u0016�U��\\u0010ma�Q��9\\u0010@\\\\\\\"�\\u0015�o\\u0014�\\u0003zX\\u000b���9d�\\u0002�H[���[a\\u0010��`[��r�iA\\bE�O\\u001a\\u00059/�`iշ�<d�0�Y���$\\u001e��\\u000f\\u001a��:_l�+�(�cne@�W�x��|f�\\t\\u0017�:\\u001f��a�\\fy�\\u0015ո���\\u0018|\\riNK\\\\��͏�U�ۊ��.#Wr�\\u0001XѴ�\\t�@��L���i?X\\u000b\\u0010}\\u0013%��<�\\u0000�|h+/�\\\\\\\"$3��O�a��|���ǔJ�\\u0005&=��+\\u0011��~���X�Z��Aώ\\u0013sp7\\u0003Z��R�\\u001dc\\u0003A{��G�J�k�����\\u0016�\\u0018�i%\\f{\\u0019��.\\u001c�dr��\\u0001\\u001e\\u0014�\\f�Ş�\\u0000�\\u0005�<�Z���\\rIJ�d�&C���\\u0005�\\u0002ՍJ��n\\\\�\\u0015S�\\u0006��.G���\\u0000M1�s��#�ac��0��#��xI�\\u001e�\\u0014q�H��\\u0016�⇊Pq=���A(������<����}:�1�-r\\u0017W�κ\\u0006e>\\u0000�X!a\\u0011��\\u000e�ok�2�K\\u0003�e*B�)\\u000b��Ъ���\\u0019\\u001cl��N?�\\u0018d�M��E<�=�#\\u001f\\u0014���1�An\\\\�Q�\\u0016\\u0003Z�\\u0010�3�X[Sr,j�R�I�\\u0016���\\u000eF�\\u0002�b�i\\\\\\\"�\\u0002q\\t!'O���o��2%���\\u0002���j�\\u001a\\u0014\\u000eX��ʼ�ck\\u001d\\u0007K�\\u0015�n�\\\\�YI�W��bA\\u001a\\u001f*XH\\u0001kTǑ��z\\u0011�c]<9P�\\u0007�a\\u001e/I�@��\\u0005��\\r��L�Fu�8�\\\\렰\\u001dj9�\\u0005*�A\\u0004!\\u0004N� \\u0004�z�\\u001640ĈJ�Q�\\u000f ���\\u0004]�.h��\\u0019\\u001e%b�-\\r�\\u001a��?1�2Rx1�X\\u0019�#�x��\\tN�n6\\r�WV(\\u000fө\\u0007[�(^���CbH�ߧ�{\\bf�{�i\\u0000\\u001a���J�$�M�Riֹ\\u0006�Y�M\\u0019�<:U*T� �6�T�@\\u0004G��\\u0018�=�@�_/%ۓH��������V5(��ov<�X�:�k�\\u000b�x�\\u0000�a*rF\\u0007b\\r\\u000b����\\u001d��鿁��ʇ��\\u0003��\\u0006#�48>�6t�S�u��wtL��/\\u0015�?���/1I�NhTo��K�\\u0000U$.\\u00156\\u0006�\\u000f�J�\\\\�3�(\\u001dy!����:ް&�n�\\u000ff�A�X��I4ӣxSL�R��@w\\u001b��:1������V\\u0013e�Z}O�#��\\u0003vp��\\u001b\\u0001����&�\\u0016���\\u000f,�Ln�N�l+:�_$�x!$ܝI�O!��d$zB��H��%��=8\\u000fµ����!lM��\\f`�NۛV�A5-��SD�6��z��ʩ�\\\\�4(\\u001a�S�\\u0007R/��J\\n� ��~Uq\\u001f��oo1\\r�k¼M�*<<�\\u0001��>���y�Ɨ\\u0006������=�ۊX�nom(c(r��\\u0011�ѕ>D[�\\u000f�\\u0015�e �a���E|��ۛ����;L�#����\\u001a�⾓�T��+�\\\\\\\"��\\u0001�\\u001bW'����L2�>󕍎�\\f�\\u0013�z�;�BC�4̷�\\u0014�\\u001e>U��\\u001c���B�X��oX׭ײ����ܤ�\\u001fE\\u0004\\u0011���h�{�X����{�s�B�C\\u0015\\u001a\\u0000��W���7q\\u0002�#���\\u001a�\\u0013\\u0003�\\u000676�=�l�@H\\u0017i\\u001c���P��;�H�ވ\\u0001��\\u001a\\u000b��\\u0006YW�� Z�[�*(o�v�\\u0014�T�R��T���Z��_\\n��\\faQ��N\\u000b��*�dK�4�C��\\\\\\\"��`1\\u0004r�{$L��\\u0013`\\u0016����#�\\t�\\u0000Kqumzu&�� -rHa���\\u0012�e7nW����C��J�>�\\u001av\\b�\\u0019{i̛�\\u0014\\r�t�$%�\\\\\\\"B\\u0007�U�'q����\\u000b\\u0012��5���\\b�=�y\\u0019�w$��Z\\u0018W\\u0016�M`���C\\u000b5��X�onF׮�\\u000f��v����\\u000f��ڻ����W\\u0003�0�&\\u0019��\\\\\\\"ur��\\u0013{Wg\\u0007�\\u000e�/���\\u0007���}�z�ޅ��\\u000b �aI�V�\\\\\\\"�$�\\u0007Z\\n.�۲\\u0007��&&�\\u0000(`\\u000f�m^�4�$n.�aq��pi!��>z����#�D�\\u0018~e7�\\\\vOo�\\u0016,\\u0007����u��,X�Up�\\u0019=E\\u0018]E���P�C\\u0019cmU��arn��\\u001f\\n\\niO�Yǫ�q���q\\u001f=�I\\u000f��Os�c\\u0010^+\\u0000ޤ=\\u0018RY�#�\\u0016�T�\\u001a�E�\\u001f)q�^L\\u0014��|蜼�L��V�\\u0018�[�7K�\\u000b$1\\u000eR�����w\\u0014\\u001c=�S*ɐ�E��m�\\u0015,�}�^_��=�Ìz���w'ji\\u000b�q�xN��ࣟKx�\\u0011 \\u0016��oI�\\u0007Eb<A���*;}.5F�>\\u001f\\n�f\\u0001=\\\\\\\"�\\u0000Uс�x�Ё��B�\\\\�A�Sb<�p�\\t]>4�� 01�E��}�ڹ�'���|)�\\u0012����f\\f%�;\\u0005\\u0004\\u0017\\u0017\\u0017�:П��\\f�\\u0017�q�wU�ķ>�`پ�^\\u001a\\u0013j7�wL(p���\\u0001�\\u0000ac��>\\u0006F>+r2� Z�\\u001dt�S�cr�DN�7\\u0014\\u000f\\u0013G�\\u001a\\u0011\\u001f+��\\n/E�\\r7�+���\\u0006<O#��E\\u000f�\\u0003�;������'\\u0016y1��4F0�a�ɿ?J�'Zsڛ*II�3D�F��\\u0001��Sm[�/�mqGfW�Q��'�\\f�\\u0015\\u001a,��pG�Y\\u0004�O�jH\\u001f:_�#�1o�͐�34�\\u0000!\\u0017<@g#KyS�0p�\\u0007A\\u0012�\\u0007�aɯ��֕ce�\\n1�{\\u0018I\\b�����\\tL\\u0014���G��\\u001c9\\n���JuNE�w6�ڽa�\\u0014�\\u0002��omtш�CM�|_�\\f�*\\\\Z�{�sr��\\u0013\\b�\\\\�R6V�V��\\f����\\u0018\\u0006\\b�%�J�)\\u001b\\u000b�\\nm�*�\\u0014|�\\b\\u0000n�AboJ\\u000e[J�#�\\tk�SXqS,\\u0018[�a�ԀGʇ1�)D�%��\\u001c��r�vǗ\\u001c\\\\\\\"���_ﾔc*���=\\u0000���\\u0010J�6��$|��8\\u001ct�c���h��.K\\u0004�O�1��;K\\u001e���\\u0010��\\u001crpG���$kH���\\u0011$��Ȗ ǣZ�\\u0000P\\u0007BG�t\\u0013a��\\u0004�g.��T�E�\\u0002��4��c�ߧ\\u0007Fв��S����3�?�\\u0015L���\\u0003�P�)\\u001a5�J?�{ט����[1$8������ߡ�x\\u0000\\u000f(�\\u0010\\u000e�pE*2H�y!(N�k}�%�?�\\t�r��`��5\\u0003j��\\u001d[�Z���o�[�\\n\\u00113$WU$����yyR�\\u0013�K�Ԓ.>\\u0015k��75�\\u0006�\\u0004\\\\X^����\\u0000�r�#2!d Y�\\u0010G��B�#\\u0000�q\\u0007r��4��6^8`�>&�n\\re�\\u0002b2����\\u0006����ԓ\\b=�i\\\\\\\"\\u000e�J\\be(�7\\u0007�U��o���@M�))��\\b�1{\\r���+�q�/��Q�P\\u0013�\\u000b;������TES�7��?\\u001a�)\\u0004J\\u0000�[Z\\u0013'(��Qd��%6c�\\u0003���Q�q�Ȭ$�@u\\u0006�����ם�UǴ�0\\f\\t\\u001a\\u001b�aj��$�K\\u0003�@B�$!:ރ�\\u0006E�\\u000e@��nH&䓦�\\u0015�e$��د��Z��\\u0000P�\\u0016��ƭ\\\\\\\"d\\u0016#��2E�:\\u0000���6���\\u001f�[�mk\\u0019;ig\\u0019� S�oh\\u000b��tlRB f\\n]��\\u001e�U6z\\r\\u0017Ǵ��\\u0004:�-}(~�a{�t�k\\u0013�\\\\\\\"��\\u0007\\u0004'K5���U{�`�4�\\u001b�ɿ��c\\u001cN�\\u001cX�\\u0013��՛��Eg<\\u001d�\\u0003u�iG�H#��K�\\u000e:�iE�\\u0011kkҫ�\\u001fu���k�I&��G�2sC�~��8�D/nZ��\\u00001^7rƘ��S�\\u001a�WY\\u0017h\\u001e��e�\\u001c�H\\u0016�-A����\\u0012cE'[����\\u001c���\\r6\\u0013��e�\\t\\\\\\\"���k\\u0002<��X�n�a�H�P�\\u0017��w\\u0015X�\\u0013�OR9(��\\u0018�\\u001c��\\u0017-X��К��!�1��2;b��\\u001a��v4��e�w\\\\oVMʝ���\\r��i5\\u0003�@��)>�mz\\r�n[r>�ލ��e@%y\\u00199\\u0013�\\u0001}\\u0007Z��W�ޢp�.��/�ڴ���P�NP��\\u0007Զ�\\u001ezP\\u0015Ui�\\r9%J�+\\u001d�?\\n�Xn\\b����T�R�%J�(\\u0003HH\\u0004�µ�\\u0011qj\\u001a�\\u0000\\u0010r\\u0007\\u001b\\u001dMd% �iW�\\u000fqy^�*��\\u0004ٹP\\u0007�Y\\u000f_��I;�ԦQv�h՞B�Eʀ4�\\u0005�(�����$V�\\u001e��A�1�|��\\u0014 3_S���\\u000f\\u0019`eR�Oٲ ��gB�.@��\\u0000\\n_IY=\\u001c�MjJ�*S\\u0002V�H��)�-걡��\\r�1������T����@\\u00119>��6�K�S,guu�J�#\\u000e.c<M��,�V\\u0017\\\\\\\"'��\\u001a�\\f��kxiUʮ�j(r��1��Li\\u0012Xy]Z���C�֣;�F\\u001ed\\u000b0�\\u0004ɭ�9_�� ieafva�I5Z�)��OX�bOZ�\\u001d�`�V\\u001b\\u0011�V�PX�\\u001b�\\u0005\\u00004����Ǒ�\\u001d�l~\\\\\\\"�E1H\\u0003.�|,i\\\\=�9E��\\u001f����\\u0017#\\u0004��Rbm�?\\n�ٳȝ7\\u001d\\u0007k\\u0012�z�����r�l>�B;�X\\u0016��U%�ɞ�#�\\u001d\\u0014h>�O�'�\\u001ae�\\fuk���B���\\u001e>�\\u0013x���=�����i[$F�u�W�\\u0001�u\\u001fu_�~ُ\\u0002\\u0003;�\\u0012�\\u00167K\\r?�T����Cݣ�����Vy�b��\\u0001\\u0007�\\u0014�9��@\\u0004\\r��\\u0015�\\u001c��p�|[Z�������-Z]�7)\\t$\\\\\\u000e��Iø�1\\u001f:�M0�����\\u001c\\u000b�/.{%?p��\\u0011.�Y�R��ݯs��&�\\u001e�Z�¢֖u~�뮚�ͭ�/R�\\u0006�`\\t�\\u0013H��zA\\u001b�+�\\u0000�*�DWTcn[\\u001a��\\u001e4@��cR�*T�D�U�/aҽ�@�b�I1�1\\b�ԋjHҗ���ҡ�\\u0018߈�U�R�\\u0012�I,nM��^V�\\u001ae�&t+\\u0014���f��������\\u0019J�(�\\\\a8b[�\\u001bt��\\b\\u001e�\\u001a{z�\\u0000Y�ª��R.YG�K��8g�\\u0019��7-Lm����Q��,Y\\u0006�~�A�o�\\u000b�S�`�Ȣ�i�u���F����&�Ĩ��{s\\u0003�\\u001f#������`��bM���<i��\\u0002�N~<Ʈ\\u0014@���)���)\\u000e��ʹ\\u001e�\\u001c�{Qk\\u001cD��N��T�*V�y\\u0014�!\\u0018��#cj\\u0011;�%��8\\u000e�z�V\\u001b̍�\\f�R�hHGlƼ���w?\\u001aw�\\u0011\\u0014]/HaȖ\\u0010Dfܷ���q�^;�(BwU\\u001a��\\u001c<h*�U�wpH���\\u0001 Y�5�\\u0000\\u0000\\u0006�j9�pT/��\\u00124�\\b�2\\u000b�\\u001bxU�\\bs#n���J��r\\u0006�mj:YZ�\\u0003��Pi�m�+~�) \\u00128�.6��^f4��\\u000f\\u0003�\\\\vm�\\u0003����\\u0013��)s��,\\u0012[\\u0003��?�\\t.tҀ�!\\u0007�\\u0000m�P5)�\\u000e'_�\\u001e\\u001c���\\tM\\u0018��Ӗ�\\\\\\\"�P\\u0006��}������Ҵ\\\\�ˍ��������DKN_�2�?m��\\u000e'[4��\\u0016=nk�͑e˚E7Vs��mY��?)\\n��\\u0007FP\\u0000��\\u0005^\\u001cY�� (:�z��Y\\rU�� t�<o}E[\\u001evĘ\\u001b�dn\\\\�Ԏ�����n5�DX�v�����ؒ��\\u001aLm��0^E�\\u001bX�oֱ\\u00191��\\n\\u0015m���\\u0012\\u000e\\u0001�CǦ�\\u0004�Rc� \\u0016��\\u0018\\u001b^�V�cr5��\\fv\\\\\\\"�J�6*|A\\u0014G�\\u001c9\\u0005�f�����˱����I �v\\u0016�Kj\\u0001�\\u0014A��\\\\\\\"���YӮ�o2����価}��ȷ�\\u000f�K�<��\\u0000S\\u0016\\u001ef���7\\u001d�n��%�%�T�@�]?��a�F��_����\\u0011��3pC�YLbKr�\\u0006���\\u0007ƒh\\u001agk�ŏ6n&+���m��͛;%�&7'E\\u001d\\u0015F�V�wn咦)g,��\\u0016\\u0002��\\u0000H�F)\\u0006���UD�C\\n3�[�S\\u0016�{��F�Uݏ�W\\\\l�FL�⬇�܋���\\f%\\u001d��\\u00187\\u0011�x�\\u001f�U�Z��\\u000f���?�C�@��>'���m�����U��\\u000f�zY\\u0014x:�&�u�\\u0001\\u00046��\\u0000@?}\\t��\\u001f�b\\u0019`�I,\\u0007\\u0003p��ҹv���?~�7\\u0001T\\n�6fmեfU��&עA/#v��~�\\\\\\\"\\u001f�\\u001f�@�����\\f\\u0013\\b�d�x�\\u0006�Q�&��\\u0004��3�`mkxV�a��.�X���K�Ю �S\\u001a6�\\u000f�T�A\\u001a\\u0017;\\n��g�G�L\\u0002Ď�1\\u001f\\u0002j�\\u0002y\\u001dI���\\u000fs<�\\b\\b\\u001do[��\\u0019A,�@؍A� ݑXY�5�v��$\\u0010�\\u001b�sD�pm6����R�\\t����\\u0000�\\u001c�1��Q\\u001a0}\\u000e��o=lk��\\u0005�\\u0014\\u001f��>5�6\\u0015S%��kN\\u0002��|��mr��i\\f����(�\\\\\\\"p\\u0019�e�\\\\\\\"��?�=��\\u0013Ǔx�r\\u000e\\u0011mj�\\b�9C9�nN�+P\\u000b��)#����Ǒ²�\\u001a�\\u0007�k��c\\u0016DR7\\u0005��\\u0016�R]�\\\\\\\"q:xV�2Ʉ���XZƫR�\\u001b��S���*-�a^��\\u0001�m[K�#�����Cy��aR�\\u0002��<jΡ\\u0017�:P\\u0001Q�'X�n���+�j\\u001a)�d�\\u001b�\\u0002��\\u001a�Hau։|\\f��\\u0013I\\u0019T:��o\\u001bVvꭽ\\u000b�c^��|�(���\\u0001�lm��j�eWrU��\\u0018�\\u0010A�R�Bv��%@�7\\u001dj�\\u0003d������\\\\u5J�\\u001d'�T�\\u001d]̀����\\u0005 ع\\u0006\\\\\\\"\\u0010�A�\\u001eu��v,w5���ɂE�\\u001f0�mID\\u0016��W/�b�\\u00190e�l�(\\u0000���Iq�\\u001bo\\u0007/R���F㋩�\\u000f\\u0002(�^�%�I#\\u0015-��m��\\u000e��\\u0001x��?ͯ�EC*�$R��;Xy֍�G\\u0002RC��\\u0006\\u0003ZVARA\\u0016#B<�\\u0003�\\u0012�n[���4\\u001f�Ag�\\fIf6?�\\u0006��\\u000e\\u0007ɝa�}�wbO�)���\\u001e��\\u001b̕\\u001fΦ#R��J�X��«Ee`�;��� ٶ��uGauRG�\\u0017��'ЭJ����\\u0004|E��\\u0000�*Ȝ��koz���\\u0010z�\\u0006\\u0015+�,H�(\\u0002XxV0��JM�/Jmۻb���\\u0017*Q��\\u0000k������A#\\u0017�,(\\u0001c�!�؊߶4x���C�`�\\u000e���W�\\u0002hc2\\u0012\\n����4g�qC��(N\\u0001���\\u0012E�K2)���5�\\\\y\\u001a�^?mʨ��\\r�Gy\\u001a�؞;\\u0003Ҋ�ݸ糁 _l\\\\��#�S�Е@��\\u0019�Dǃ\\u0015'K�f��%�gk�!K��c�7>��7��e[��\\u0013-��,ŧ2�Z�L;D��A�吁��K�Ee��[�Ydk�������\\u001c�F�3��܎D1\\u0006��X��ڒ&��ԖNZ�_�_�+\\\\�\\u001cD���l\\u001a�\\u00012�\\nC ���\\\\�>\\u001f:�F\\u0015p=l���ËF\\t7�jP%��f�9HMе�\\u0000mqz\\u001as�\\u0014�\\f���fS��\\u0017�\\u0000f\\u0017�\\n�\\r�\\u0007e4\\u0011Ƭ$<��nZ�])MF���\\u001b��I@��T�q��p�\\u000b���mr:k֪к�\\u001d\\b�S��Th5;�Q)�]IR4�ֆ��͕K\\u0011�\\u0002��c*1p�\\r���\\\\�0��\\u001e���\\u001bU6+��AY=��-Ѵ�5��\\u0006\\u0004SݚB\\u0018�@\\u0002�f��\\u00027$?��Y5,d8c%\\u0015\\u0016����\\b{h�\\u0007R\\u000b��@x�C��ȗ��)\\u0018�5�o\\ni&\\u001c�\\u001b/�\\n)\\u001e�\\u0014\\r>����%Y��׭˱�P9�lI�\\u0011v?Z��Sw��X�*�6;}�S�0\\u0017�O:�W���,�C=�_\\u0010t�����ʲjў?.���AgP�\\u0017�ba�v��\\u001dI:}��Y\\u001a��[\\\\�3�'Ƴ=�I�\\n��\\u0000v�\\u0000eg���t��U\\u0000�\\u0011R�À��cE�\\n1�rOʜ�\\u0007N0s��\\u0011c�@�\\u000b�����21\\u0004K�[���hj��2�ԏ��m��\\u0015���\\u0013�f��Aq�Rj�t\\u0015N���5~�\\b�\\u0015/���W�@~�e�\\rc��%��\\u0000}��G�\\u0011s�\\u001d*�}���4�)r���m:���\\n64n�F���Os��F�E.�G&8\\u0018�&�\\u001b��r�P\\u0014q���{Ю�V��PN\\t\\u0000�\\u000f\\u001aN�F�]vjR��4d\\u0019��\\u0016\\u0001���\\u001an��B��Pd^�D��O�z��.S����L�ǸN�\\u0014�2:8�+6�P�\\u0000ƶxJn�xړ�w��\\u0016+�mrl~�Q[KԫDa\\r\\u000f\\u001bl*�߈\\b\\u0001s�c\\u001ed2\\u0005�\\u0000[�\\u000f�vI��g���\\u000e�F��\\u0001Uf��?�X�6{�R�T!`����J��;~\\u0002bNˏ\\u0018e��!E�\\nu�p�7�&3c���x�UXX���N�\\u0012�\\\\İ8�8�\\u0006��\\u0011��VLp\\t��\\u0007�\\u001b4jŔ\\u0016$\\\\ޭ&>9�5�׍��\\u0005�kxP�>|Q�~�\\u0005Qatj���\\u0012�d�\\u0001`�H\\u001a�\\\\\\\",�N\\fs��4�RJ>���DB�cK��\\u001bڽ\\\\\\\"L���Z25],O�j�\\u0000�x�\\u001a��@EGrvIWS?�x�������R��N�ғϑ�\\u0019P\\u001d����;�V��S�T�B�oǐ\\u0000T�m�����O,ژ�=B\\u0006¥Ycb�Qp>�͜(�ڴ�)^OH��&��b��m\\u001cK�\\u000f��\\n��ˎI=�\\r�S���E�W[)L���;�fB��`�p\\t\\u001a\\u001f��b���\\u0010�QO�\\rǖ����B�.�t\\u001egª#�6�rW\\u001e\\u0017\\u0007M)��_��\\u000b��3���P��HУ��[�i\\\\��h��X�d\\u0007,IK���ڔ���69\\u0012馬k\\u0007w�������nMh�o\\\\\\\"���AF\\u0017R<E�a�a��\\u0015�EG��\\u000b��E��\\u0001\\u0016�W\\u0016B�h\\u0012���l���Ɖ� ��\\u001dE\\u0003R���H�)��OV\\u001cEs������d�D�I���_��#n�\\u0012͈��\\u001e���^���wf#�O�L�r$���\\u0010����L\\\\gɗ�B\\u0001�7;XSQ\\u0001��\\u0015ۥǇ#�H�\\u0000m��TD��ڷ9\\t\\u0007f\\u0002��\\u0000:\\u001alh�\\u001c�͇�A\\fvs��J\\u001cw�񛄱\\u001b�ֵY�@�0r@*ֶ��Z�1\\u0006N����_�;�֬��r\\u000b<����\\u0005g�t�m�\\u0019w.�#c\\u001e3p��?/��+�@�U�j��\\t��jPߪ?�>��6恭k��\\\\\\\"�׳�\\u0005�Ojc`E�s��\\u0000I�T|]�<j��X��\\u0006�6��:��s�\\n0� ���X_�\\u000e\\\\\\\"�όN\\u001a9}J\\u0014�~G�\\u000f1Bɛ���8�\\f\\u0000ٔ_����ʘ���K��+5F�Ph�h7\\u000f%�ƴ��\\u0000q\\u000b\\u001ed�aX���٬\\u001fr\\r����q�$�Uw;�\\u001a��{�����\\u001fR9� �9`Q�#K��6\\u001dE�\\u001d�0�\\u001aF���\\u0000��n�W�:l)�v�}���\\u0004\\u0002T\\u000b[�S���:9\\u001a��\\u0005U��ˉ\\u001b�\\u0019qc�h痁�\\u001d\\u0001;��\\u0015��+\\u0006&%R�oq[�B\\n\\u0016n��Jш��K�mhR�\\rt\\u0019�T��@\\u0016��Q!���B��\\b�~\\u000e\\u0004g���h�!\\u0003�QT��\\u0015�rX�*Ru\\t\\by��u:P��4\\r�2Ĥ-�'��?�kk���\\u0000��4�\\t�\\nA �n(\\u001c��iG98Ā\\u0015�\\u0000U0x�O�\\n�A\\u0015��G/����L�1i�$�R\\u00162��N\\u001a[�J�b�V�,��kZ��\\u0014p�I6'��\\u001b\\u001e<r(*�Ҽ6�F� �;��\\u0007\\u0012\\u0007��\\u0000\\u001a��L��a*�{dқC���B�\\f�Hc�Y�p\\b?�\\u0000xe��%�𪝍@\\t�Z?\\u0013�~�9<��\\u001dB���u&�\\b;l\\u0006���k��5>;��bD\\u0017,nzl\\u0000�\\u000f#�K\\n\\u0006�̬N�\\u0007\\u001d<w����b\\u0000��M\\t��\\u001a>��޻f +>Lj��ɾŽ/����瘣�����\\u000fK\\u000f���_=�5\\u0014�1�M�\\u0015�<��\\u001bF��*%h\\u0010}m%Y\\u00102\\u0010��B5\\u0004|E-�Sba�ZwX��\\u0016;��Q�p'މl\\u001d�x+\\u0010>ʧ�%p.]΋rI�鉩\\u001d��p�\\u001aH\\u001b���;��3H�ܓ�L\\u0007k[\\u000eR\\u001e]@\\u001dhl�_ӕ�r\\r}Ŷ���)\\u001f\\u00180U,�F��S�!�\\u0001\\u001a7\\u0010��Z��b\\u0019��\\u001a�\\u001a�m��4Tj\\u0019�9�\\u001d<�m\\rǀ�~ǀ���ďH\\u001a��Yφ\\u0014{�,\\u000e�\\u001a-��\\u000f\\u0010S�\\u001e��e+�H��e����\\u0015\\u0007�\\u0004h-`�t��\\u001fta�<�y�^N�D\\u0006�4�L����h\\n\\u000b�s]v�7\\u0003\\u0002�>U�ڴ�&\\\\\\\"���oz�5�>4�\\u0013D��pR�ڭUu�v�P�}�c{�ʠ%��Z���>�\\u001b��\\u0019L��h\\u0001�Q?�\\u000f��l\\u001cx�\\u001f�1 �Z���Z��5�<\\u0015o \\u0005���\\u0014�{�d�I�O�����]�r\\u00101�ȿ��\\\\\\\"\\u0011�\\rM�t���_�V��\\u0016�����\\u0018��f\\u0017���z߶��\\tc~,T\\u001f\\u001bT�2*��j\\\\\\\"^6�?�[��f\\b�\\u000f�u��ɦ�a�;�h0��e4��\\u0001\\u001b\\u0019��}+��L;��\\u001c9\\u0014�'�|���9[(�J�̨�:�8yD�ċ��\\u001e��6��l\\t�i�H��\\bv\\u0007pM�:�H�yR�U.�WRh�н��m�I\\u0019��8F�`e����|�p�,ec��3\\r�x�Ƅ�\\\\\\\"haXC\\u0004T\\u0016.(G�ɓ\\u001cK�Ճ-�\\u0000\\u001b^�J��;�8��u���`\\u000eT\\u001fIm���V��\\u0002�@;^�2�\\\\�-�\\rD�%�k��ď�W&�@��\\u0015֋\\u0004��������f<rH��x�$��լbLm�\\u0016�1�A��p�F���\\u0001E���kK\\u0013\\u001dͮ-�]�/���!؎������:v>PѬ�.\\u001e\\f�G����,��)XW~7�ƹ��O�4m`m���)�@f\\nϩ\\u000bd'[\\u0002y�}��&X�gP��Ԏ��֬�e�C��{�֑I�I�\\u0017\\u0007K�Snǋ$ar�\\u0006~Jx�r��o:�n߄�<�I�\\u0014���o�9\\u0001�\\u0000k���ʭ� �\\u0019��b��\\u00075݀��c\\u001b�Z\\\\�ߠ�S�d\\u001c�J�}�\\u0000\\u000b0-ˋ\\u000f�6\\u0007j\\u0007/�0\\u0007\\u001a&�~{X\\u0004��E�5��\\u001aP�C\\u001a\\u0005S�K��4�\\u0016dqB5\\u0017��)\\\\\\\"�P�ZW�#+�%X����\\u0000��UgH��ڋ��}\\f��ݪD�T:Vߥ�F%e!N�\\u001d���\\u001c~�Yt �A6ޘ�Z^'o1�h��Y}�\\u000ed�>B���\\u00118V�\\u0002ܭ�ƊŌK#��e`.~��H`�\\u001c���q\\\\\\\"\\u0006+�+��\\u0000����2T�Z0\\u0002���`�m\\u001cm\\u0014ki\\u000b\\u001b���R���4�\\u001b-�X\\u001e��/̋��b>����\\\\\\\"8�œ�\\u0000t\\u0019��������^6�V\\u0012���>\\u0007¦�\\u0013��m���r�~:�WJq\\u001a�24�:[�F����BI\\u0004Be�\\u0015\\u0011�\\u0016mI��\\u001f�Q\\b�q����W;�j~:�mk6��\\u000fT\\u0006`\\t�'S�^K�cd\\u0005�CB�\\u0000�ȻU��Q���f�\\tg�\\u0001!���u7 [�JL�I��p{&3r,�\\u0001��_\\u001f\\u000eL�\\n?�T\\\\�*�<���<\\u000f\\\\\\\"A��jI��h�i��5\\\\\\\"K�>�t#�՝�҅��z`\\u0016X�E*���4Olxa\\u001e�\\tm��(G�e��7�\\u0010�N��\\u0016A\\u0002\\u0012T�j.m��Y�^��1�w��\\\\\\\"�\\u0013E�����2H�ʖ7\\r�+�nA\\u000b\\u000fR��#�Ƥ��O9iO${\\u0000we\\u0002��0�1����\\u0007\\u0017Ŕh�\\u001f�\\u001f}8���\\u0001��Z�\\u0013�\\u001d�u*�8\\u0004\\u001f�c��� |�h�X�\\u0000v\\u0006>�ϗ�-a�tSđc�Rs�\\u001a��[64�@A�\\u0017��+і�x|il�\\\\�?R�(v�:d���\\u0006�<(�\\u001c����\\u0006��&�iO\\u0018�b��G�n��w^��S*��ۈ���&<�q\\u0003H4m�Ό\\r��x?��*I�rʂ�3B(FmG \\b#�(\\b�\\\\���7+3z�lm�؝�\\u0007��\\fL�\\r��2�zT�#�$�K�U\\u0014�ɊY?�\\t?c���\\\\\\\"��i\\u001c(.�Ó\\u001f�Ʊ��h\\u0001��E\\u001f�����\\u0011o�$�Aǐe�hc\\u000b{��ck�m�X{�|y0$\\u001e�6�S�\\f�OИd<�$��A>\\u0015�rM�a(�'\\u001ed�&�Sp\\u000e�쮯\\u001a|<�\\u0004� ������v�R�\\u000f�s��,\\u0012K\\u0018!�\\u0001�����2f�\\u000b\\u000f\\u0002}\\u000e��ǐ\\n��UA,w�\\u001c�K*I%�ku�����kPr[�:X�~ڍ�y*�V7\\u001a�t�䙤7k|�HAӧqFb�\\u0012\\u0007Q҆Ϛ\\u0019�F�\\u001c���o���c\\u0003\\u001f#�a�o'n����F�\\u0013Xqox\\u001f\\u000b[��G��\\\\\\\"NK}\\u000e��i�b9 \\u0016�N׬��U�iT�\\\\\\\"�H�@��z<����Y��lN¤�\\u0012���މ���މP��\\u001b��+[2RX�F\\u0016\\u0004�1\\b��E�]*c�0��t��\\u0002E\\ba�74S8\\u000b�\\u0000֢�liA;4�i\\u00154Ub.|�Y�:;Y@�Ɔ�sm#�[�3\\u001b��4<�Me[���VV�\\u0012�\\\\\\\"cK3�Y�c�9z�!��~\\u000bU�0E4PK\\u001a�G��\\r��\\u0007�_�\\u001d�c�a����sf-�����I��\\u001f�\\u0011�|�\\u0003�-�j���'�\\u0006�:\\u001c�e�ڙO�w��K�3���\\u0011�\\\\1�TD�D�,c��ޡ��ɏ\\u001ed�)ׄ�m\\\\\\\"�`��-�t�\\u0013�!��Y�B\\u0003�����\\u0011DI2�q�/̚�\\u0013\\u000e\\t%\\u0006\\\\\\\"DD\\u0002nn��\\u000bө;6\\u0010��Y�kk��h�k �\\u0012�75�\\u0002\\u000f�Z�je\\u000fdI��L\\u001fR\\u0002�\\u000f\\u001f:R\\u000b��U-����e�JKɲ��PЋ���!X��$\\u000f�\\u0017o���\\u000e$�F�K{��&��X�\\u0016�\\u0006�<�\\u0014Ғ�\\u0014��1>@\\u001d*�X��e�ٗí\\u0004\\u0018��j�Q�Ax�\\u001f���7�%k��X�H_��<��\\u0000�fL\\u0012�ڹU_!�a\\u0019��Y�Ԧ��\\u0006�L���ې�T�\\u0005\\u0001L�\\u0006��M/�1���\\u001bh��\\u0016��\\u0014>M��b4�z�\\u0016\\u001cw� H�ap[�(���W���p\\u0004s����_�'����y\\tu�msC�6\\u001crq��\\u000f����\\u0000�QP��\\u001b%���e೹]\\u0018\\u0013���Q�Q{��Pw�2\\u0006!d@J��~j�F�\\u001b�\\u0006�V�Yc�\\\\A���KY3\\u0007������h�FU��I'j�aD�\\u0019�;\\u001d��Xǝ���� \\u0003\\u0013\\n;\\t$�\\u0014�Lt\\u001f\\u000f:&@Z�\\u0012\\u0015Bt\\u001b}��S\\u00191��)�'ݓ�҉u_\\u000b\\\\�\\u0002�[�v�O/\\u0003�1\\u001b�\\u0004�Xk^Q\\u0012H�\\u0019\\u001bV\\u0001oT�2KF\\u0012�����\\u000b4��S�Έ\\u0018�\\\\\\\"\\u0015o�n�|�.,1��P�RAA�ni62�>䥣Qv$X|iϲ�����`ޠ\\u0003\\u001e\\u001c��{R�NX�\\u001d���\\u0014��Ior�m��R�&��LL��\\u0011N\\u0015y\\u0002E�ۦ�|n���� Y\\u0005� �Ky�L{l�M8i��!t\\u001d\\r5��b��\\u001c�\\t��O²��x.��\\nb��1\\\\\\\"2�nH�PY\\u0018��Nq�\\u001e�m�����fGkF,\\u000e�\\u001aKߖ3\\u001a�\\u0005\\u0002nAyx�\\u001d��p�\\u001d��\\u0015Ȃ\\u0017\\u0016\\u001c�lz��\\\\낂�v� \\u000f�S!�b\\u0012��b�[�loC�8��\\u0007{�\\u0000\\u0007�����kJ��rCh��Ρ�,v�;\\\\��`t\\u0004�ָ�\\u00162/pn\\u0001��\\u0000J�,�`\\r�\\u001b�\\u0010ch�f��\\u0001�P\\u0017��Z�!�\\u0002\\\\\\\"_z\\u001f�D��*���W7\\u0012����`��4���\\u0000�qMy\\u0018bǄ�8T�A�[C�V\\u00198�2\\u001fo�\\u001a��G�\\u0000�e-\\u001e]��\\u0003\\u001c�����O�\\u001e\\u0006��\\u001f&5-\\u0011\\u0013��u#�*g>\\u0000WM{DL��B7\\u0019\\t�v�7��ğ��V��\\u000fěQ<sqPG\\f��.U�Վ�֕�\\u0005�|���\\u0002���\\u0017�/\\r��@e�n�Ì��S�U�C&tk!y��\\u001e��O��B˔���#�n2\\u0003-����΢\\u0012�\\n�5hr\\u001b��yr��MG�A$�\\u0016\\u001eB��>O��1�\\u0000m�\\u0015�b�v\\u0000��:�W�!pd,���.�������c\\u0005��1�K����?:{6:qR=\\u0016;�\\t��%�nŕ�Q���\\u0010�\\u0018����\\u001aS\\t��ȓ\\u001f\\u0010��[�a�����gƔ�ڃ��\\u0011T�B����\\u0019\\r�#aW3^){\\u000bG#U�\\u001d�I\\u001bԱ�\\u0010�}\\u0000\\r-~��0Ǆ���D�n�����X��,\\\\��f�FrLh�-���4r��S`�\\u0012�7,���ڢݓ���)R2��(�\\u00132A�r(����\\u0000��f��x��c�]+�Ǎ\\u0010T$�\\u0013�4��;)��F�\\u000b�����\\u001b�)\\u0000`��{n}(\\u0001����G�\\u000e�����\\u0012\\u000f�:}��U��%�\\u001b\\u001f\\u0000*ˊD�y��{+\\u0003�Ʈ�h�%�ɇ\\u0019Xx\\u001a���S#ۢ)`}_վ�n���Y�Bm\\u0019�@�M�\\u0016A �H\\\\\\bبm\\b�MR�o{���\\u0000eL��\\u001b��\\u0007\\u0006M�\\b�1��F�U��}�/(4d��\\u0012_\\u001e&��X�ל��X�\\u0001ɉ�\\u0015�w5\\u0011����E���\\u001a��\\u001eY��\\rZ��<)G��t\\u001bE$3\\u0010�xѼ\\u001c2���Gb�V&Bɏ�9n�*�#��R,~��-�F6�#(�e�x\\u001aq\\u0004�Έ�\\t�m̱\\u001eHO�V���\\u0014�\\u0017ܣ�\\u001923C\\u0018\\u000e�Ȫ:�A�oK=��Oc �$\\u001dz�ի�:��X{��e\\u0004��ª٥�\\u001c���y��\\u0015!�v�2N�}h\\\\��\\u0007]����X�̜1�8-Ȍ\\u0004Ћ�z�{|H蓑r���)�\\\\\\\"\\u0014�@\\u0000�\\u0015.�a\\u0017�vr���J�,OQ{S��4=�\\u001c���;HS�5���z �(ڗ8�\\u0000�8\\u0002��a�뻳�M꒔S�I�\\f�\\u001aK��W�eDq��e\\u0017e�zZZ)1��?S\\u0012�\\n��\\u0019\\u0017V!M�@k��]ҠLS\\u0012*��\\u0016�\\u0001F\\u0002�\\u001f*�{\\u001f\\u0014�\\u001e�Y1G/{��_m��G��Z\\u0010sx�\\u0002@�Ǔ\\u000f�F��5oԨ��7 ln\\b��˸ca��\\t�\\b\\u001f�-x�\\u0016\\u0000\\u0011��\\u001aZ��\\u0010.,\\t\\u000f�,�\\\\��7q�*4�i,aUݍ��\\b\\t ���J�PT\\\\\\\"\\u000b����M$�\\u0019�!�!I�5����\\u000b��ަ�)ol�]\\u0001�\\r��8+�<H�2���\\u0016\\u0017@�y��y%'�\\u001b\\u0018\\u000fR�\\u0004Jx�7��@�rt\\n��^,\\t��\\u0012oS[V�Z�\\\\���4F \\u0003`\\t\\u001aг\\u001er�5�\\u0004��\\u0004;�*�\\t\\u0001��S�\\u0014��\\u0017��!Ń�\\u0017v7~���,���~T\\u001f�\\t�8�\\u0006�\\u0016;t4@�Z���K=`+\\u0019dDBX�l*�\\u0019k\\u0019��?��Ɨ��#rssT�$�,��)\\u001a(�\\u0012�\\u0016'�ʄ\\u0019\\u00199N#r\\\\��\\u0001��\\n��3��K�.om��8��F\\u0000�[����\\u001a�Ā\\u001b\\u0012H�\\u0011�\\u000e�wKڈ\\u0018�\\u0011֏h\\u0013ܸ�[�;�@\\u0014��% 8�Lx�-�U����;���S\\\\\\\"�y(\\u001b�m��QXX��d{Rj�,~T�,l\\f(&�\\u001da*�\\u0004�\\u0006�W��9&2pøw\\u0015>�ͮ��5��E\\u000e�C�|h.�ݲ�2��7���\\u001fB\\b\\u001f��\\r�L|��=Ǭ7��>{��\\u000e�Y�\\u0015\\u0004��S�~�\\u001aD\\u001d\\u001a�)�$��01D8�\\u0000�8���z�\\n��\\u0013e\\u0000X5����'rl�9fw���E.����)D��-Ǽή\\u000f ���!&�@d\\u001a�\\rw�Z]��8[kkބ��?qV���J��'���i���U%l��Q��fh=l^@I���6m)F�R�o�V&ܔ�+։\\rϴ�꺍\\u0005{\\u0013<�[��\\u000e��F#��\\u001bf��\\u0000�7с\\u0016�ȍ\\u0017F��{<FF\\n����\\\\O\\u0019\\u0000�^���JL�\\u001b�VWq�s��HQ�!ֳNI\\u001f;\\u0002�����)1��MnF��\\u0016\\u0006�\\u000b�,@#Qn�_BZ�\\\\��\\u0016:Z��ۧ\\u000b�q�\\u000b�i>�W\\u0000b����\\u0004���𮷶f��\\b\\u000e�D-o\\u0015\\u001b\\u001a-��\\r��1��6���W�����lYn8�R<k\\u00181_*�X\\u0006Ӎ�\\u000b�S�<E�N(A;��\\u0002��\\r�V��6\\u0018\\u0004q���ob\\u0006��ߺԶ\\fAw�����7�\\u0017��G��r?�{�l�q�`ˍv�\\r����!Z\\u0012*�\\r�\\u0005��a�u\\u001c�4\\u000e\\u0016^|n�u�O�8X�t޶�q ;�h�\\\\\\\"\\n���\\u0015�$�,��@\\u0003|-^&���3�%H��W��l��\\\\\\\"�Bςe�y.\\u0002�_\\\\\\\"��t��\\u0000u�\\u0013\\u001b��P\\u0017�!&�\\f\\u001c}���Ö�t�Z3D�ߧ�RO�\\u001fv�M�$�\\u0005�\\u0019bd�4+#�#C�$�Ε�:s�8� �e\\r�Mε�wn�q�#Ǝ\\u0000�Z�ண��Qq�\\u000eD��k0<G�7�e�C\\u001e�!����O�\\u0003��.2\\u0011M��\\u0006b��_�\\u00007jJ�.\\\\�/�_\\u001e\\\\\\\"�\\u0000�1�\\u001cy\\\\\\\"\\u0000��\\f��\\u0001�~C~�\\u000f\\b�Y�ge�S��l������\\u0011�%ɂLY^\\u0019�\\u0016M�>\\\\\\\"��3'n��4�P��]m���س\\u00023d�I���ҥ�yи�\\u0004�k*�p\\\\��'J�#̀N���\\u0015�ï4\\u0004���h�<\\u0011\\\\\\\"\\u0018��:�%��%�\\u0019\\u0005�U��\\u0015�n\\u0004��LI\\u0004r�d\\u0012�`�r��Z��đ�\\\\\\\"D,�\\u0019\\u0014\\u0005���|�Ncŉ!\\u0018ჰ�9:���\\u000f\\u0006m��\\u0004$�\\u0016x��n �pu\\r}�RXԧ�\\u000e�\\u0013��2�`J�:\\u0003m.E[3\\r��\\u001b\\r�/'b�o�\\b��4Ge�Yc0��X�@��&�\\u001f\\u000b�pfE�H����\\u0015�e�U\\u0017*\\u0006�X�R.+;j8�,��x\\u0002�<��z�k�G�\\u0018�u`\\u0000�=�r��-�1FQ��c.\\u001f�s�370I\\u0005@�iI[\\u001c^���u\\u001b�����)��\\u0000m\\n\\u0002LD�C%��4�6�WcWg�TS{�\\u001f�\\u001e$Ԗ<��)\\u0006�V��m�����u29\\u0010�$F i��kR�\\u0017�qD��4I���Ccqz�\\u0013��\\u0017�g\\u0000q�\\u0014�r\\u0003[|��JrK�\\u0002\\n\\u0001\\u001c�\\u0015��¦V\\u001f�^3�����[G\\u0011�=bO�db�N�\\u0006Ǝ��b���0��\\u0017P��\\u0016�Jm�%\\\\\\\"\\\\��\\b\\u0010�tilW�y\\u0003ү�\\u0019n>�B����3d��\\u0000��Zᕊd������\\u0014N'�\\u0000R(�z����&A\\u001d����\\u0013zY������\\u0003��2������G�\\u0017�\\\\\\\"�\\u0012�1~\\u0000k�ē����or���(I*I�m�\\n��`\\u0015��[oj+\\\\\\\"/l�\\r��W\\u0007\\u001c\\u0015id�P\\r�kJ�C\\b\\\\W\\u000ft`\\u0000��\\u000f\\u0019*\\u000bHY�\\u0000-X�:h���{�捄\\u0006\\u00174�[\\t\\u0000I�\\\\\\\"��K�o�1�%TYɷ���W���_�,�^k��a��h\\u001a6�\\t=K���\\u0000\\n\\\\~���\\u001b\\u001f�\\u0017$�Q�\\u0002UA$\\n��˓\\u0018\\t�����]mmO�\\\\��\\u0019�H�J�r5��(gi$\\\\\\\"�I=)�C\\u001cR�5\\u0017��R�$f*��\\t����\\u000fc�i^�\\t\\u0004�7KStǞ3�d\\f�Gnw�|�t/61\\f�RA{\\u001b\\u0011k���TZ���\\u001c����riUY\\\\��Q��R�\\u000f��Qk��{����1�\\u0018й�~^4?h�\\u0012�Ș�7���\\u0018���a�w|\\u0015T*��=!F�|���a���T3�8HUPZ\\u0019�Es�c����}�/�d&;\\r5���\\u0015o���=$Os 7\\u0011\\u001d��\\u0001�Xh}^\\u0014�f&������\\u0012t;-;�0���Bsx͌�E�9-�\\u0016�W0�\\u000e�B�\\b6ko��i\\u0012F�\\u001b�no��\\u0003 Aa�\\u0015<�I�KF��f\\u0004\\u0003�-֤LѰ�pZ\\u001e~�)\\u0006$@��J\\u000fޚSp.|)J)\\u001d����K�i=���7\\u001f�u�X\\u0003�\\u001273�\\rO��.|��d�\\u0012_S�L?o=�W?�\\u0000��F�72\\t\\u0007��T�6,n�!T����z�?�rO�\\u0005��Lqr��\\u0016F�\\u0006��\\u001d(|���F�)Vs`����j\\u001c��\\t{�f8>�1D&�K�[�^�w\\f�u\\u001aF\\u0000\\u001b�H�{��'̐�\\u0000 �Tl\\u000f�\\t��q\\u0019��*m�z���\\u001bJ��_Ct\\u001bި�>;���:nF��\\u00000�\\u0002����\\u0000M�u������i�1�m�خ�\\u0000�����au'��\\u001f�c�0�\\rt7\\u001euʠr�c\\u001c���Zy�1�\\u0013�09\\u001biz-�\\u0014d�v�\\u0018����-ȡ3��ɹ�\\u0012\\b�+lq�ǽݵcҩ�9���\\rd�?�oBv���\\u0000O��´ll��2\\u0018�ů�S�d\\b1,\\u0005ؒ�h��%\\r�r�\\\\\\\"�,��K�d������*)\\bF�\\u0004�n-U���c#\\u0000X\\u0005���&�\\u0012�\\u0010N ^đ�Y.<r$��9\\u0015\\u001a\\\\��N���\\f�1�\\f�\\u001c�\\u001c�f\\u0005\\\\�u�4wwu1�\\u000br�^�ɋ\\u000f飓�Wf�!��_'\\u001eh\\u0019\\u001d�3�-e?R_�\\u0001Oq���\\u0014ъ�֬T\\u0010�\\u000e�\\u0014Ǹ��^{�\\u0003�\\u0014\\u0005�VI�`�<�bvּb@�zm�29\\u0006��\\u0001�Ř\\u000br���4��2V\\f�1\\u0007^I#h\\r\\r�\\u001b�P�0�\\\\�q����,\\u001cL�Yr\\u0014:�����i\\u0006.\\u001cq��h\\u0014\\\\�I�,L�IN�ّ���.I�n\\t��\\u001e8��\\u0016$��\\u0015�\\u0003A�J0�\\u0002U;(��~[�\\u000f\\u0000o���)�\\u001b\\u0007�\\u0000���\\u0011\\u001dy\\u001frO�7\\u0003���\\u0010�o�SAv�\\r���v��\\u0000�k|���]�g<E4�&ş���\\u0002\\u0003u�7�A@Fu\\u0006�Αݐ1�\\u0010mR=��J�A�n��6\\\\\\\"�\\u0016�������:Z���$���u>\\u0006�a��v�\\u0011��2�2h\\u0007�ky�&.?�(f���_��ǝ�\\u0015Pt\\u0002Ʊ\\u0019�JL\\u0017TE��\\u001c���Sd������\\u0000��d-\\u000etц��9�T\\u001b\\u001dt\\u001f1@&7�Ƿ$�MIVS��{V��\\u0003)���C#\\r�\\r�g��gg��$<ʏ��z(�A_\\u001f��\\u0004+$s�6\\u0006�\\u0000m09����b-�\\tR�uOQσY\\\\\\\"Ry%ԁ�\\u001b\\u001a+\\u001b\\u001f'�\\u000e�����\\u001a\\u0017�\\u0004ג8d��C\\u000f�[x�̩��&1�\\u0006���[O�\\u000e��I\\u0010\\u001fh�\\u000e?H=hH���\\u0005Ƶ���*\\u0010]y/��\\u0017�yM\\u0017O��KC)�&�$���X��U��N��&<��&A���nG�09�\\u001a\\u000bY��kҁ$�I��SU\\u0012tZ�H{�D\\u0018q�HcX��\\u0013B[�\\u0011��x�\\t��J�J���s�S�%l\\u000f\\u001b�o�Z\\\\^��gC\\u0014\\u0001\\u0019�0'���|kNK�\\f��Řұ\\u001e���`\\u0018��\\u001c���\\\\�Yc�\\u001a�r�׎�\\f�$��[n�I\\u001c?M�5��pZ��\\u00170����\\n\\u000f%\\n\\u0002�w�V�+dB� <�7�k�\\u0000\\u0000\\r���P�:Y�<$\\b��\\b�O�\\nU��`\\u0005��_^�½����X�>E@\\u001c���t��wC�\\u0019On�ܓ�I� I�Β$jMΗRu4DQ���\\\\���e:_�ƶ�#\\u0019P\\u0007 ��I\\u0007J\\u0011���Fn:\\u001a*�=�_ �S7M�S\\u000b#\\u001d2^i�]=\\u0004�\\bI;�T`|\\r\\u0016ʀZ���r&�,ff7U\\u0000�~�����\\u0017s�\\\\\\\"�\\u0017$��\\n�htN�\\u0013�\\b����\\u000fI�//\\u0015�fQ4d��\\u0000\\u0018\\\\�\\u001f:�K�s�\\u00071�\\u0000\\u001d�'\\u0019V\\t\\u000e�X)�\\u0015Y��O�2�a�\\u0016\\u00165���\\u0000Ā\\u0019P\\u0011\\u001a\\\\r\\u001f�<�\\u0007{t~��\\u0018q]A��ʩ1?2\\u0001`M��:\\u0013�G�\\bq{{\\fUR^�{\\u0006$|h\\n����¦��Ә���Z��\\u0006���Ǜ�\\u0000k#�����C�\\u0015�Z,��Ge-�\\r�k�\\u0014l\\u0000�W���J�����oD�E��_*¥>(%�8\\u000b�l,��k(h�\\u0010y)�H���\\u0000�SJ\\\\G&��7\\u0017k�-ů�yвM\\u0004\\u0006��yj\\u0006��isFf���,v\\u0017�U-\\u0001ٽB�+\\u001aBB�6\\u0004���oZ�ጶ��\\u0000���J1c��k�\\u000fC��QX43�\\u0004o�\\u0000I�$rq��i\\u0001���\\u001bW��\\u0007>F�GBkD��G^ }�H\\u0003�Ł\\u0017���H�5\\n\\u0017@-^��Q֥Jb\\u000b�b�{m�7o?\\u000bג\\u0001223\\u001f�4�A#cj���҄\\u0001x�Q�=�Gѥ�{�Ƹ��\\u0010/�oR��\\u0010��ɭ�(�\\n�+\\u001b\\u000eHVD���*\\u000e��J|�\\u0007�\\u0005\\u0000\\u0001`6\\u0015�J��t]�q.0\\u0004����å\\u001f+(B\\u0006�J�F��N.tؼ���ߕ��ƥ��j�3����k\\u000f֫�V\\u0016aq�w|�[*�\\u001f�\\u001a�4+d�ımN�\\u0000)*���@�iz�&�e�~��\\u0004�������\\u001f�`L�Xj\\u0007O�N垢6�?�m\\u001b�PP��\\b��#������4��1��*��S�0R�\\u000b\\u0005�I�\\n�JЃ\\\\�U��\\u0000���\\u0007��)b��U^7Ekߦ��־�-R��9*�$R����x�\\u001dP\\u001d�4ux讥\\\\]N�@}�<&y2��/\\u0014�O�\\u0014�l�1���N�d��R���\\u00180�\\\\lu��Fd\\u000fq&��i\\u0016\\tx��x�t�\\u0015�X����CT�J�F�\\n�!�v6�\\u00123\\u0003�\\r�\\u001f1[��e�I\\u0018\\u0005\\u0014_�E�\\u000e�^�6$��%�^������`\\t0�/�z��=G�\\n�;�)rA��j���ҭM(\\u0013<fU\\u0017ca^,�X\\u0000n|*��R�_Z�\\u0014q %H\\u001a�9\\u0010�g�k)\\u0016�V3K�ƀl*���U\\u000506�\\\\\\\"X��\\u0011c}\\u000f���\\u0004��\\u0006�@\\t~C�SJ���\\u0011q�@\\u0001\\u001e� ��\\u0014\\u0012w�V���I��=Z�\\r��\\u000e<\\u0004�Ƥ�\\u0005i`4\\u0014�\\u000eOy\\u0011r\\u0006�j���{�\\u0005��*Q\\u0001 G0�z-��ю��\\u0012B�T�\\rW�=*�\\bN�eh\\tT�4A����$��\\u0013�K�Q9�e\\nǠ�\\u0004\\\\\\u0011�-@ǘ�X\\u0013'���\\be���2c\\\\�\\n���4��2?�F��2�\\u0019$պ��,�\\u0004~\\\\W�\\u0007�ZY=���Ju\\u001e�\\u0011\\t���Y\\u0019~�*А$\\u0004�\\u000b\\u001d��mA\\u0017\\u001euS�\\u0010*wX1&a��=,\\n�[&T}�Rq��@,\\u000e��i\\u0016f<�&B#b\\u000b\\\\\\u0010\\t\\u0016�\\u001f��A,�((\\n�9is:n�Q�-'��e�B�\\u0002)#rO�3s�ʈ��@\\u001a�����y\\u0019r��̞U�����)�׺����u\\u0014��\\\\7��x[J#\\u001e\\u0019�\\u0011 (:rގ�T�F\\u0005Q\\u0002/\\u0011V�R� 6֎��H\\u0013�S�j\\u0006�\\u00007�*\\u0006�?%�������H�\\u0006�\\u000f�����sUu�U\\u0016W`\\u0006�\\u0012\\u0005&�8\\u001cw���\\u0019����eQ�oz�S��{�O\\u0010\\u0019G��vfsw%�ܝj�$RJ�_Cm���\\u0002cXؠ����}�#��\\u001b$V@�-o�G�釱\\u001f[��=�?��� �,\\u000fw�&E*I���\\u0016���)㔩7��_��v�'5up\\u000e�\\u001d���a�t�\\u0000y\\u0001�\\u0012/��z�\\\\��\\u000fS\\u0004#�6����ᨰ�\\u000f-iorˏ!���)�=\\u0018Ҍ\\r8ryܘ4�f\\re�\\u001b���y\\u000b^½�M`O,/�f�N`/�}\\u000e� S\\u001cn�$��\\u0010�]�'��\\u0003��\\\\��I9\\u0000w���\\\\\\\"(��<�0�5-ɛ@.�R❳�s\\u0015��H{�\\u0006��\\t��A�\\u0001�=�e$�,�!�rUCp\\u0003y�W?w�l�eFm�k��90�� ni�W���_ƩҵЎM�W\\u0014��@ܛ5\\u0017\\u001cv�\\u001f\\u001did\\u0012\\b�\\u0016�O�(�ʉ�pp-�j����Hc�\\u0000\\u0015'j3\\u0007/\\u0010bD�*\\u0006��X\\u0002\\u000f#J��\\u0010܍\\u0006���Cl콧�Y#B�����,�/\\u001fTMb6������Ç\\u00168�Y\\f�ZF\\u0000\\u001eDu�P\\u0019��\\u001eR�\\u0004mO!�����4#\\f��^5��+~G�M�\\tpr���\\u0011\\\\\\\"ߍzı,u'zs\\u001cЈ�\\u0019\\u0017�\\u001dG�a�=��U�^\\\\����b\\u000evL\\u0019�\\u001d=�6č�Fa�a�H�R\\u001dn\\u0005������)�,\\\\��g+)t�\\u0006��ZU�yF����z�\\u0012�]��iC\\u0013ss։��\\u0006�mCS��6�\\u0012�\\rp�fle�7\\u0000�[��*c���$��V���k�/�s\\u0018e�Z������\\\\\\\"����j�Y:6�P\\u000b�\\u001e�\\u0017���\\\\\\\"�\\\\�8���P�\\u0003��l>�\\u0016IY�[�\\u000b���xY@76֪��ɵ�\\u0003��φ\\u001fX�\\u0007o���n/uLo~1\\u0019h&��\\u0000���)t���)�^�\\u001b�U���H�|�\\nc�{jnF�̚��N�\\u001a4�\\u0010\\b��\\u001eK����;\\u001c�G4�GT\\u0005V܈\\u0017�Λe����e3!%\\u0019@\\f\\t$�\\r��Q��ӄq�!�o�X�(�ﲺ�uP�6�\\u0000\\u001a\\u0003*7,\\u0019Eŭ�\\u000fg;�?#P�ɪ��k6g�\\u0012@�e�\\u000by�´�f��\\u0017�Ε���!M�5��\\u0014%���\\r��B�k\\u0010��z�G�3%�dE\\u001cX\\\\]��ա�X\\f��lJ\\u0011Ȯ�\\\\xѸٱ�\\u0011)�G\\u0015\\u0000�G�[\\u0017'\\u001c˔�\\\\\\\"\\u0005v[\\\\�\\u000f��j��\\n��\\u0005�X\\u0001��\\r���J\\u000b��'z�1�\\nꎭs�\\u0007K���E4G�\\u0002�k\\u001d��U-��\\f�$�\\r�W(�\\\\�\\n\\u00165u�t!�&��K�c�u�\\u0011�����E�p��㒽���ުݻ+\\u001aoӴ&9�\\r�K�;u�˶ga'n�VȉYb@�]A\\u0006�u�}�+\\u001eN��G*2{H9�\\u0002.\\t����M���L��\\r�ͺ�Y�\\u000eU�\\u0000� |���qI\\u0000\\u001c�nK}|\\u0018kWȞ&\\u0003��G[\\u0011R�\\fW��\\u001eBN�b\\u000fΫ�Cb:hCz��>5��\\u0019X�E�6@�T��\\u000b\\u001ad�\\u0019BEp}Lm�\\u0000v�Qr\\u0000�\\u0013v���[\\u0014\\u001fI&�V�]���I�$[�\\u0006��4����~� �\\u0014[��\\u000b4��\\u0019�\\b\\u0016�M#��M8\\u0014\\u0005\\u001c�\\u0004�Z��XK+J�����U*Rn\\\\�(7��Ot͈eD\\u0002�޴��\\r����>O�~��Lse:*�J�\\u0012\\u001a�|\\rwݯ����n,o�\\u0012�D���� li'�,�<� �\\u0016Q3��_��\\u0000��j\\u0007'<\\\\\\\"m�#G<�ƽ�)��ک�#����lMm\\u001c�WCQ\\u00132��ֆse����\\u0017��\\u0001�a/�e�U��\\u0000��}��vV�4\\u0000\\u0016�\\\\�ס���FG\\u0005\\u0019_� ��T�W�2��4A�m\\u000e�U�\\u001a7!\\u0005�\\u001e��\\u0005�\\u001e\\u0000\\n�\\u0004,�[@\\u000e���m�I\\u0007l �~\\\\u\\u0002�^&\\u001ec2�\\u000f\\u0015:ر\\u001a�4LrCĂ�\\u001b���ȁa[ȢŮ\\t\\u0003�\\u001a�$�\\bN^O}���\\u0017�!,B�\\u0000\\u0013s�x]׻�\\u0017\\f�u�@t�H�lz\\u0010\\u0001\\u0014\\u001cٸ�H\\u0007���\\u0006:�\\u0000\\u0007z����z�T6�G���O\\u0014�cB1�\\u0007��ϑ\\u0002���\\u000f\\u001d랟\\u0012h\\u0014<��\\u001b\\\\\\u001b�1Y�y'upCHJ���\\u000f\\u001aøβ\\u0010[��|*��\\u0017Ud�H�\\u00146\\u0007sV��\\u0000\\u0014#0F\\u001e9ZD�\\\\�;i�\\fI&漹����J\\u0003\\u001e\\tVG(��#k�jP\\u0007K��O\\u0004rH��.�� \\u001f-)Gs��\\\\\\\"�]M�\\u0016�Ɲ���^ݎ�\\\\\\\")\\u000b�,\\u0001���N����VR\\u0019H]A��E.R�\\u0002\\u0001#���N�GJm���Y��p�\\n��\\u0006�ƓT���\\b:X� I�\\u0017P�z0��S��cM���W��X-� nt�v���IV\\u001c�\\u0003=��\\u001b\\u0015�CDc$���c����ɉJ\\u0006][�y\\f�G\\u0010P,i�i\\u001c#ya|�\\\\\\\"�'�\\u001d���ԓ`)��\\u0000�{Հ�*�m���\\u0000�\\f\\t��\\u001ci%<QeFf;\\u0000\\u0018\\u0012k��=��\\u0000�a�\\u0000����#� ͇�,йV\\u0017��lF�DL��I�Z��\\u0010>\\u0015�|�.vL��H�+x�ăX�u\\u0016V ySQ2�ij\\u0013�\\u001f~�ƕ�2�$\\u0018�-�P�'A^~��H��g6�\\n\\u0007����\\b�8�\\u001f�r,��ֶ�U;�t��&32����K�^��Q��\\u0015�\\u0011�lIU!��=ʨ�\\u0000+a�O����H�V\\u0019�W�ܞ�_���\\u0011H�\\u0017\\\\\\\"����De�QN\\u0016Lr��g�}\\b6#��-�\\u0015U\\u000b��\\u0000�¨��K1,�rMɡ'Fb�R|4�����E*Y\\u000f\\\\\\\"�਽��Zy��\\u001b\\u0010F�Z�v�S��8�k�F��R����C˟ ���UIb8�=��%�\\n~��[8\\u0017A�[\\u001d@��?����ު�����\\u0001\\u0011���nM\\u001d�$q�ۇ�<�JM\\u000eL�\\u0002#��\\\\\\\"��2�\\u0000��\\r@\\u001aV|\\u001c�B�(+$�!�|�AZ�B��d\\u001dE���V�AL~Q1\\u00166\\u0007C�L��DMO�P\\u0017\\u0015)@I�FC��:(�V�V+�yR�\\u001a\\t/���^���\\u0002& ���޲�J\\u0007$s̓\\u001d\\u000e�yв�\\u0004��G\\u001a�E\\u0015R�\\\\AT�\\u001b+D����d��\\r�7ڤx���\\u001e��R��IV\\u000b����{\\u0013\\u0018]^;)B\\u0019t��ޟ'�eh��\\u0013�\\r�\\u0011�����Q�I�6��#&>\\u0011#F\\u001b�&�#�Z���\\u001bz�/-u6�\\r�\\u000e�ΜA:\\u001d��Ċ�S\\u001a\\u0005�RBJ�c���2�����\\u0002�L�Q�>�Z��=�X{�\\u0004\\\\\\u000b\\\\[ƾ��\\u00003�'��?R��aHk���\\u00000\\u0014��w���ˁ�\\b,����\\u0000:��r\\u0006�\\u001d��qM�8�K��\\u0007PA��c��*�P�v\\u0012�nGnEϘ\\u0000QP�����\\u0013k�3{\\u0006�H\\u0007}(9�*,/�Mꫡ�\\u001b��3^�\\u0011���Ȋ5��efi��7[#{m��5Ϡ\\u001cF�\\u0010k駹v�\\u0000mG��i�/�ƳI=K��\\u0010���ة���=�\\u001b�n8�#^�jdd�e\\\\\\\"�\\u0001��\\u0000u�7{�HO�\\u0019�gOR�H�(\\f$ug�h7\\u0016�a�K\\u0004�&2��'�7b@�M�\\u0015\\u0004����cc���/U\\u0001 =�\\f�=�>�\\u001a\\u000f\\u0000|i�+���mq�cR�R�C\\u000fx\\u0016�j����^��\\u000e\\u0007QQ�b�F�Bk5V\\\\�@�aU\\u0003q�ƴ#O�Z\\u001c�\\u0006��X|�\\u001f���\\u0004UH\\u0002�\\u0001�6[���u\\u0000U\\b\\u0016\\u0016�D�8�@�U���\\u00031\\u0019\\b�\\u0018�n0Fn�z\\nc$x�qx�\\u0002�#[�}�fL\\\\\\\"|\\rG���s�{\\n�*�$�x��}�6O^\\\\`�U�q1�=�X�9\\u0011��I\\u0012��\\u0003�ԟ'%1����kni�Y�{\\u0013{B��&�m:W?�p�Ia�w�S(,TYW�NW&� J�Xp�FV\\f�g\\fc'ѫ\\\\[J;\\u000b��\\u0002�B\\u001aBojK��T�*75+��k��\\u000f�qֵi<��Q\\u001fql�\\u0016꡶\\u0006�Z\\u001d�35�#\\rm��\\u0000*X\\u001ag�\\u0002�\\u00105�գ�]�,��_��J���獫�\\u0000�9u�ю�&�HIӁ�G���\\u000f4Mh��}��\\u001fS~��\\u001e;J��.@՘�ML\\b\\u0002��n�\\u001b<�\\u0001�<\\u001a��4�B~���~#��ۍQt\\n-��+��cBt�d����S�ݖ&\\\\\\\"�\\u000bh/o\\u0013�=�\\u00199RN�����Һ\\n�\\nJ��D�|����-�Ҥ��y\\b6��&4\\u001d\\u0001�_z0ۍ\\u0001\\t�Q�U�Ҥ�lx9\\u0012)�X*�6�7�ʽ�\\u0000�dnN�����ј���\\u0014\\\\\\\"刱�\\u001f\\u001a�hE�z�/��\\u001fe����\\u0003����L#��|/��\\u0005\\u0015�\\u0000\\u000f�\\t\\u0005X\\u0001��j��2 \\u0017 ��\\u0002���Ҟ*۝\\u0017�\\u001c�+,P�����\\u0018�<g�M����tۼ80���o��5Ц3�IT�ȑ�Q��YeK\\\\\\\"�H��so\\\\�e����\\u0004X���\\\\x�\\n~ḳ\\\\\\\"YTr\\u000e��f����c'+\\u0006\\f�����yq\\u0003��N���Pݷ��L��Ovt��Sɔ�[�G�S����ر�n޼����жQ�A�����ҥcq>g�\\u000e�;\\tQ���Bx�~\\u0014\\u0013`Ɇx�6=|���\\u0000p���r7\\u0002n\\u0002�E��^���0�ܕM�;�S9a�)Tf�k�^�cg�k��SpE����ֽ�5�)Sc�{\\u0006pBRCa�U�\\\\\\\"\\u0016���\\u0016�j)�\\f��ˋЕ�\\u0010��Ik���<�d\\u00186�ގ�_l{�[A�)7\\b�#i�P�z�s��\\u000fh\\u0010l�^��x�Y#�<�S��}�&|d��!�K\\u0003���~G\\b\\u0005#fO��h\\u000f�\\u0015%��k\\u0005^G}(�ӗD�\\t\\nI,\\u000e�M�j/\\u0017�de���{�\\u001dE��k�� 瓚1apSs�h��2/��v#�N֢$T�+!N�X7�B��v�e��F\\b$oZ��I��!���E�<Lpp�r[�)w]X�v�s{v:�\\u0017\\u001c����s�m�\\u0000�g����8�kI\\f\\u000brw'{�KXc|,晫R\\\\\\\"t�̧u64h�N\\u0000�%�\\u0001C�\\u0000'b\\r�j(�|��\\u000e-b\\u0005�:\\u001a��3x\\u0002�\\u0014\\u001e�ۊs&N\\u0012�+F��E�5]o���EX�n/gB4�Q�\\u0015I%�\\u001er\\u0005�[�8�,|ň��Q���\\u0013���8��B�A �\\u0011��P�b\\u0015��;���\\u0000���\\\\��cvQϥ�?:\\u0012id\\u001c\\u000b�W�X�Uㅤ\\u0017��1\\u001a`q�\\\\E��\\u0012u�\\u0006�<�\\u0010B �b�����dXX�ז��\\u0000*�*f��z-u�q��\\u0013(G\\u001b�&�\\u000f��ޡ��{��Ʒ�\\u0019B+(���z�\\u000b�8\\u001de@\\u001c\\rՅ��0�\\u0003I\\u0011[\\u00157S�)�ƂI�\\u0005n�zkW�@?�\\u0019J��\\u0018\\u0016_6_\\n\\u001e�'�h\\f�\\u001b�\\u0004\\u001d�9匛)���:�\\u0005fV\\f.\\t��\\\\���2�DguD\\u0017f6Q�Me\\u0013�\\u0002\\u001cY�0�J?X�6т�=�9Ē^\\u001e�,/�e�\\u0014]B�oo�5�Ƀ%KD��w\\u0015l��\\u001eD^~��_\\u0015��\\u0014:�\\u0006�.dR�\\u001c��X�r���\\u0017\\u0005~F�n^KZ\\n��H�r�\\n�M��o҅����-�D�\\u000b\\u000b�Ҭ�)�\\u0018,�<�*n4�+i���½Uf6Qz�z/\\u0015\\u001eR\\u0000�u��!${�e��R(h�Uq��r��J��Ja\\u0016!�`y/��lݭ^�C}�4ܕ\\u0007=bt\\u001b֋�3E+�����yS\\f|Q��\\u001e\\\\\\\"=�E�\\u001f3Zw�ʅ\\f��S\\\\\\\"\\b�U\\u001a��Q�V��4�Q�ͣ���I�\\u0000\\u0007^B��=��>��z\\u0015\\u00164$�;D�2\\u000b�O\\u0007���׉�\\u0015X���.��P��\\u0011��:��\\u0017\\u001f:/#\\u0016\\t1U��*��\\u0000ե��X�\\n��\\r\\u0015�$t��:�\\u0017ס\\u001f\\n�(ц���x\\\\\\\"e�y\\\\.��F�|�\\u0000PN��P�\\f��ɉ�,��6�\\u0013/��dȅ�%\\u0001�$[��ڷ-e\\u0002O�^\\f���.4���茌�|�ѡ\\u0005M�$=(z��OS��\\u001b�T�!O���m�[�\\u0012��[kW���\\t\\u001d�y\\u0019H��.x�\\u00156Rȱ��\\u001c�\\u0017��\\u0015b�7\\u0004Q��d]q�>��!w\\u0000��(À�\\u001f+��K:iǨ�/L��T;֐A.L�\\u0004+�Y\\u000f\\u0015\\u001euC\\u000b����\\f�\\rq\\u0004~�H���]�qƑ�\\b\\u0015\\u0014\\u0005P\\u0000�l+>������\\u0002���'�7��\\u001e����\\\\���o\\u000b\\u0015E&�9\\u001f�ʀb��\\u0004��\\u0000\\u000b�5�So�Y�+4�\\u001f�8Ġ>-���jQ�|k����I��L�'�%�&�(�Rt\\\\\\\"�\\u001a\\u0000�u�%�+\\u001b*��\\u0014 \\fPX\\\\\\u0000/Yœn�e�ҭ=6\\u001d��ۓ���P�\\u0019S!$\\r\\t��u\\u001f�=�7))���U��\\u0003�T���N,�W\\u0016\\n.HU\\u001fΞ~�\\u0013.;dB.��qg\\u0015Ж\\u0014R+j&��5�\\u0000N�5ݗ��8\\u0017��y\\u0013f�\\u0000P��\\u001apl\\u0011�x�$Wa7�5liJ\\u000f�P�\\u001d�op�l(�\\u0011��*\\u0006\\u0004t񨻽T����\\u0000���r�u9�\\n��\\b#pj�\\\\\\u000f@����V��M���i�\\u0019R�B�\\u0016�\\\\\\\"�YV's\\u001a��X�݀��ڤ�2�j~�J�g�H��l��\\u0007\\\\\\\"�z���\\u0015�e�\\u0012\\\\\\\"\\u000f���7�i��xZ��\\u001bGM�c^�\\u001eNbǍ\\u0019U�X\\ryt\\u001f\\nOބ\\u000f�^\\u00028�\\u0001�,\\t������L\\u0004�J\\u0000@\\u0018�R�h\\u0007��\\\\�Be��][�-N�74�;��F�Φé���\\u0004�\\u001b�ؚ�\\u0012\\u0006��u��D��|n\\\\\\\"C+���\\u001f\\u0001�k\\n\\t\\n�\\u001d�܉K��\\u0000��K扢��\\u000b\\u0011�>\\u0006��$\\u001d��D���L=���;(�w�圹#vP���o�'XR$�$��D��R�is��\\u0017pidTX�X���6�10��^L?�\\u001b��k�$Ê\\u0013�n����签� ��\\u0018�\\u001b!]��j��G�v\\u000b�FSqf�/�J�\\u001eQh]�rP���\\u00000��\\\\\\\"�c>\\u001aC\\u001c�p�<��z\\u0006,��Kȭ�.�UBB��\\u0013�qf@n\\u0006��i���1\\u0016X�^H\\u0002ȅEՀ�R�݅�>d�\\u000f��\\u0010�?��\\u0000\\n�5e��߬�\\u0007�Ϥ����c�a|��\\u0017]'�vWg�˗�d1����<�\\\\\\\"Ձ����o���\\u0014|\\u0019QʢDnI \\u0005[�\\u001a�ޒo�P�2D)#!�IS�6�{Lq��̡����/zϺG���:1�?�\\u000b���\\u001b����/�j��VB\\bА/~��O\\u0005Ϣ�xW@S� �\\u0014�X�\\u0018�\\u000fPޘ�B1~\\u0003S{S\\b\\u0015\\u0011D`|��cB���\\u0000L�����J��bQ\\u001b�$�H\\u0017�;T���Y����c��s�Cc��i� $���\\r�\\u0015��������B\\u0006/�UY�*����\\r�5����4���Pȋ��4\\u001ai^�,R;q��\\u000e�/U�\\\\\\\"9f�h]��6B��\\b��R@7\\u0014��OqF�\\u0013�`����7�h��f�i1��6fK̼�\\r\\u000f����}vO�M�h��k@�\\u0000��c�\\f�\\u001a���\\f��\\u0000\\r�]\\u0012L�n+���v褃��.Jkc���P�\\u001d߹��H# �\\u0013@/Z��\\u000e���ߓ!E����xň�\\u0000WCI2021�;���a��W��w$\\u0017wG=IQz�w��Z)\\u0007�\\n�j�\\rD@\\u0012)\\u0003H�@7S�\\f�M\\u0013��\\u0014C'%D�\\u001bc��i���\\u0000qz�\\u0003l�LlԊ+�U\\u0012:\\u0011�)؟\\n�t\\u000e�\\u0004j\\rH�P^y�<�\\\\4�v�;\\u000f!ү4�������\\f_R�v��'p���=�\\r�.��x�\\u001bU�;\\u0010ı�J���'\\u0012��i�\\u0004�2\\u0010㓐\\u0001i\\t\\u0000���Z�����\\u001cX[���t_#𦙒A�\\u0001�Q����k����<��C���}���՛���]��$��^,�O+nOZ\\\\\\\"��\\u00144d�N��c=M]f2f��\\u000e���T@����iI`�����WV'��L�'�fYl\\\\\\u0001�F�I\\u0017�ʣ��T�%QK�\\u0000�!\\nN��º#�p�c�Kp\\u0005���Q�2O}5n��3�C�Y���\\u000bT͚�����A�6\\u0005F�B�wX�eY\\u0011l\\u001cz�ص\\u0015<�\\u0018��$�T\\u0003��Pk��\\u000e[B���h��7Q�O*u�!e2'�q���'۰T�ݍ�G����fƓ���_�n]?.�z�hMu\\u0017�ڋ\\u000e^򺑣&���{\\u001fR���k��\\u001e8�@�\\u0019��\\u0003�~�F����\\u0018\\u001b\\u0016Kh�_bA6�iY�9�\\\\-@\\u001e\\u001c�IT$\\u0001s�^�ί�g\\u0017����B<ى'8�С���X�TV\\u001eL�\\u0017i��\\u0003k�\\u0001�S$8��:CˉE �nG��e4 �d\\u0001V�+��\\u0015�p\\u001d\\u0005�\\u0000v\\u001e\\u0006�\\u0014\\u0007t��k���U\\b͢\\u001ct �\\u001e���J\\u001b��ڇ�\\u001e�4�$\\f��\\u0011B�qP�\\u000e6����Q\\\\\\\"\\rW�Q]\\u0017o���oVc����\\u0000��#��3� ��*��D���2�Yl\\u0005��r�\\f�ɱQ�� &6Rֽ�������3��W\\u0017&0M��^�ᕿ��Z�\\r�\\u0014\\u0007yǎ8\\u000b*�+ [���5uXlL[�\\u0004�(�[�5�4��ޙ�tJ�\\f����o��%\\u000e�\\u0011L;^,\\u0013�$��\\b���Kp\\u0001��оN4\\r\\u0006��.5\\u001e5t���l��\\u001a�<mK��&h�.\\u0010����Q{Ӽl�h\\u0014)'�}L\\u0005�\\u001c-�A�\\u001cE&Q�DlI��0W��KXZ�<h\\\\\\\"qѝ\\\\\\\"����q\\u0017k\\u001d\\u0007�.iI��7Qp\\t�k+Vud:7�\\u000eΎ\\u0002L��o�^�\\u001a\\n�x� r�U���EeW]\\\\\\\"d��Ax��\\u0014?�Wce@�#T>�v.�n(�����$V�\\u0000żh�&�\\u0012�#S��П\\u0013�C)A�t��C$k�\\u0004Y\\u0001\\u0016ځ�ݱ{�K�#\\u0015�%����`\\u0001��K�)��|���\\u001b�]l2�n]V�B��з\\u0006[;�@��Ӡ��\\u0004�76��\\u0011J���\\u0005�G�v�L\\n\\u001dt6[��ָh%C�:3�1�O\\u0011���\\u0002�TЏ$\\u0016o\\u000b�kl�E7W\\f+^݌'�K�\\u0000���26\\u0014�i��h��2pf�k�\\u001d��ʇ�L����\\u000b**�ڛ{����\\u001a\\u0006\\u0012$�\\u0012�\\\\\\\"�\\u000f���Ԕa\\u0007bWB���o`\\u0016�}�N倘M\\u001f\\u0007.�\\r�[B>\\u0015�v�\\\\\\\"�����t4��n2�\\u001e9]��}��\\u000b��0\\u0012LB&�/�o�jc$&%\\u0005�\\u0003������-ؐ4\\u001a�J��Y\\b+�㡡9\\u000e�piyR�y\\u0018��vqf�]\\r-Ȁ��^�v4�1^X�F��ԚW�E�\\u0007��BgZ3�\\u0011\\u0002�Ȫ�\\u0000�s%�ɞL��B�n\\u0005�\\u000fܻ��\\u0014���\\u0010����\\b�C�mY�݊N��D�\\u001b���\\u0014\\u0000\\r�\\u0016�}m)�M&L2@Y�\\u0000\\u0001���VTGr�X�\\u0005L��ܬ\\t\\f<����<93%1!\\n�Kk�Ҫ�\\u0002x\\u0000l�ub�MƇC^��\\b�'�o�d�fg\\u0002@@e\\u0003��;Q������t~M#�D�n?�^Wc�|)���5�g��\\u001f�K%��%�?\\u001b[_�\\u001e�$\\u0000I\\u0017\\u001eb�J�04���?,�!\\u0016�\\u0001�\\u000f����ΘIܱ�\\u001f\\u0007 ���\\u0006�U�O�;i�\\u0015K\\u000b��%1�\\u0005�\\u0016���\\u001a&_��ʽV,E��\\u001a$r\\r�<7\\\\\\\"�\\u000eY\\u001bbC�qbg�\\u0018�Ԑ\\t&�ώ\\u0001\\u00178�T�\\u0003�-�e��&*�_R����}�S#+�\\u0016�\\u0016��2=��(�>ח�9�\\u0019\\u0010)�JtQ��42/'U� }����\\u000ev<㐶4���|��R��u�����\\u0002&����5V�Qo\\u000bmFd��\\u0014l��d\\u001d\\u0000�:��\\\\���y�)\\b��\\u001aj��z\\u001f:��=�<-��R�fM\\u001dc\\r\\bs�H�]#\\u001cTZ�y�\\u0011�X�\\u000b�d'�\\u0006�S8�<��\\u0019ה`\\u001bom,\\u0005m�1 d@�bȷ�8�\\\\t�\\u001bV��\\b�7\\u0003h��$�\\u001b���\\u000e�\\u000b�\\u0006LI/�\\\\\\\"�\\t#�5өҙ�u�<�ɏ��y�}U\\u001d�`�U�`���P������?����N\\u0019O5���\\u0010(ᨶ�kz�RO\\u0010.N�y�\\u0019��91E�~e6\\u0004\\u001e�iDve�Y�v\\u0017(\\u0007\\u0011�N���I\\u001ca�$}�sc+,c�z�\\u0017\\u0017i�MZ�\\u001f�\\u001b\\u000f�S\\u000b\\\\^�\\u001b�n̨E\\\\\\\"�(ţEQ�\\u0000�w\\b��S(\\u0002�y\\u000f�����\\u0010\\b�v:\\u001f�)̌�9�7\\u0015�\\f�eSc^2*�U���\\b�\\u001bV�=�\\u0003\\u001f\\u0019cXl���$�_������\\u0004��;)Sc�yA/sL�X�����ҷ\\u0004�\\u0010��\\u001b��0mY��k�ץz�}\\t\\u0017�&/�x3�-��člOJ$@2���@gu�YI�\\u0014n#���tz��$��1�h���\\u0019\\u0015\\u000e�I\\u0004\\rk�U�P�6O\\u000ep��A[�D\\\\\\u0003�h���*S<<\\b�\\u0003�T�\\u001b1�\\u001a��P��Rb>�����h�\\u0003S�\\u0000�x\\u0011:>\\\\�\\u001e�\\\\��o������@'Ή\\u0018]\\u0014�`Eŗ]k��V8�\\u0015\\u0001�T\\u0000\\u0007]�P\\u0001w|x\\u0013��2ƀ�Ѕ\\u0000�G�r\\u0017\\u0017�u��p��Kk�\\u0015O���W1��\\f�f�Q\\u0014cK�\\u0006�:\\u0001\\u001ec4I'�E�;\\n%{�\\f%�^kl��=z��\\u001f}\\\\\\\"�Ύ9�\\u0010D�\\u000f\\u0013\\\\\\\"�I\\u001di�l���>��Ƞ\\u0003\\u0016*��)7=\\r��j\\u0016p\\f�=�<��P�!:� .\\u0000:mqC�,��������)�\\u0011����k�t�\\t���%�\\bzu��$�bb�D�:F>��\\u0002�\\b�6@\\u0007\\u000f�^@Qc\\n�(\\u001fM��ZB\\u0018�� i�WZ���\\u000fq�\\u001bJ�m\\u001b�Ҁ�2��\\u0015��-I����T�f|���*W�.j\\u0006z\\u0014�~�Zٽ+j�\\b�IŶ�:P��\\u001a�\\u001e&�f��\\u0012�\\u001a�Ǒ��\\\\rV=\\u0007-�\\u0005�c�Q�!\\u000b\\u0014���do��G��&�r�c\\\\���\\u001bE#\\u00129\\u001f��j�\\ty\\u0017wD�#��܊�<\\\\��\\r�k�\\u0019:�f��$\\t���Қ��&B\\u0006d\\n�or�9[�z�)eQ���C\\u001bǢ�B\\t\\fG�J\\u0004w���?�\\u001bW['g�T��E/{3�X\\u000e���:\\u0003'�`X,�|\\u0018\\u0012Sڈ���9\\u0011S\\u0011�M���h�*\\u0019��l\\u0000޼�'�\\u0000̅n���c]\\u0001��D�S�i�/��U}2?\\u0013��\\u0013�QU�Ղ�\\u0015f����q���B\\u0014\\u001c���^Q(#��\\u0011��m'�}��ƌ��b\\u0000�ީ$��%t]���\\u0010g\\u000b�Ҫ<�\\u0010�\\u000b\\u001d�x�#3/\\u0019\\u0000�\\u0012���\\u00007��Pl��-�\\u0015�\\u0018�ꠟ��\\\\\\\"���7T\\r�\\r��nJ\\u001bn@\\u001f��x�d�B�Z���\\\\\\\"Ф�/(�����o��!��\\u0011c\\u0006u:\\u0013�O3�U{|��N��\\u0003ʺ\\t{f\\u0003F���_�u\\u001f\\nT{:�JJIɐ�o\\n�\\u000fAe\\u000f��\\bP���_��\\u0010m��/�r��}\\u000e�}�@j\\\\\\\"\\u000b�Qlq��\\u001f\\u0011DH�+8E'C���y��^��c�S�(�%�\\fp\\u000e\\u0016ݺ�S2��\\r��\\u0015�\\u0000��+\\u000e3��ɬ\\r�\\u0016��Ǜ\\u001e)\\u0016)UͬV�\\u001a�l��\\n�\\u000fqI\\u0002�\\u001bu��M��\\u0019#mI&�zV��\\b��\\u001e\\f��[\\u0015�\\u0006r�㭫Y��l\\u0018 �\\u0007H�L�u[܏��\\u0018᥹ȓ�-`\\n��[�����\\u0018�y\\u0010��c}\\u000f�KNW\\u0018��0�P�\\u0005Y]�\\u001b\\u0006_w\\u0019�\\u001c��:���\\u0000\\u001a\\nh�Q�y\\u001d�(����u{q;x��c�oRؙ\\f\\u0018FdXThX����֐$\\u000b/��\\u0015]v7\\u0007�CC\\u001bO0�;s����\\u0007�2�D�C\\u0010�7\\u0010?)�Z�ؖ�\\u0018��q\\u0018�\\u0012\\u0016i\\u0018�da`<�h�c�������å\\u0011�!U��a�;\\u001a7\\u001a3�H`:\\r��Z�������=�&���^W����B��\\u0001���?�3���\\u00162�F*��9��R�\\bU��\\u00031����c\\u001e�Cnh�Ɣ��=+Vɍ\\u0013�@6���\\u001d�\\\\\\\"�?!A3\\u0016b�sD\\u000eC�U�F\\u0007�Qq�4�x{d���\\u000fƹ0H�\\u001b|+X�r\\\\\\\"�\\u0000nF_+��VV��p\\t�G��\\u0000��/���\\u001b\\u001dA��b��������#�Ņ��3�H\\u001etkM\\u0013���ǘ�����\\u0007-?�E�\\\\\\\"Ybek\\t\\u0012�|E$�{�(��ʤ�UX�j-�(\\u0014$�}�Z�8%3��ȞBQ�K\\u001fH]��\\u0014X}� �\\n'�\\u0005A\\u0010�X��Hz_�sD�M\\u0017e��A\\u0001��ю��\\f;|+��9\\u00133K��}�N���LML7�\\u0005G��˿d�x�3r=B�\\u001f�\\u0004�|N��S2y}�\\u0019�����i�8�nn._R�aDm�ښCml\\t\\u0016\\b\\u001a����v\\u001f:;\\u0012$YQ@\\u001cA�\\u0007Z�xd1�K��hHvkD�8�\\u0005���+i\\t'MOJ�L�E���\\u0000\\u001a\\u0016E��x��¡�`Y���\\u001fB؛x��E�S��=�H��\\u0003�xײ����}]H𫁬\\u001e��$*�B7�N���\\b���_N�yR�\\b�Tȃ�\\u001fK���E\\u000e.\\u0014\\u000b\\u001b\\u0006�ɸ�\\u001e���R��@���\\u0018\\n����Տ�Ӂ\\u0003�{�d<\\u0018�c��0\\u0017��ƴ�:B�2y_[�\\u001f³z\\r/!�\\\\ ����r<t\\u001f\\n�Ĩ�@ѭ+\\u000b[Ζ���\\u0012�����\\u0001�O����8Q���H7T\\u0017����s�_uӸ�.�*��$�%�l<fȆC$pk�\\t�Z?���e�Εff�NH�\\u000bÅ����qz�����%�B���z�w]\\u0014|�n�T���\\u001c���puV�c�5���\\u000b\\u0000F����\\u001b\\u001a'��a�\\\\��\\u0014V\\u0012sSf�m6����c0�[�A�ۦ��o�\\u0013�\\u0019�\\u0007_�aZ�!A\\u000fS�b�2�\\u0011�\\u0015�F`�Y���ޮ�ڥg\\u0004a\\u0019��eo���\\u0015��3�QЍ��+|GVc\\u0011mZ�A\\\\\\\"܈<G�U�#\\u0013\\u0003\\u001d�\\u0006�[}G\\u001b\\u0003L��x\\u0013�1���P��Fa�\\u000fD!�ʠik\\u001b�Ѱ�\\u0003�c7��{n?�\\r��M{\\u001b�ׯ�E�\\u000ee�[�y\\u001b\\\\h|\\r\\u000f�2Yb�\\u0016Ԓ[K_p*�! _�m��%�?�*���!+{5o;����� \\u0016�j��Lep%\\u0001����z���O h�B�\\u000e_S^ږ\\u001e~U�������U�\\u001e�ğ�'W2��1hM���\\u0000c�N\\u000f�Ǖ4ŉe\\u0016at\\u001b�����rR>\\u000bvBt�;LөP�\\u001ct �Sd�F�����B=�:��-��.\\u001e~\\u001fm\\u0013\\u001c�S�\\u0001@Ԑ(��Y��!\\u0005E��>448�͐��\\u0019��\\u0007��)�6���\\u0000uv���p?���L\\u0006|\\fAI9\\u0002/ǥs���\\u0002rd\\b\\u0011��t��a\\u0001�b�𑶷\\u0014E|�\\u0019:���h�F�\\u001eu��^�\\u0017 �ݒ�\\u0000}\\u000eq��\\u0006�(�v�\\u001bR��~''!\\u0014\\u0017�׍�^��7\\u0013gE�!�#\\fKaw&��\\u0018�I��:�\\u0017\\u0007�ۊ\\u001b�2��c�rqro`\\u0007�Uʓ�f\\u0016\\u0010�\\u0014w���\\u0003���̈*|�lRķ�t\\u001f\\u000e�\\u0003�<�\\u0015q��\\u001a�_Q�ֵV>�\\u0004\\u000fyO�'����׍k#�\\u0010\\f�@:\\np�$�ʖ>�L��R�����s����w�\\u0016�PlG�Aϒdp�8��OZ+��E���(\\f�\\u0000u'�Q\\u0019A\\\\\\\"\\u0013ۤ�Fx\\u0017��J�zC[��օ~ۙ\\u0007\\u0006�'�H.�ԯ!�z�0r\\u0006\\u0014q��d\\b�`V`�nn4򬻏s�\\u001d�/�5��ax�V:imu��\\u0002��t�\\u000b����b\\u0015'��N������H��\\u0012/mm��M�S��\\u0000�)�\\u001dac��V�C��mM����B\\u001dA6�k\\u0003j\\u0003\\r}*�[SFfHW\\u0019��\\u001bhEb�v��\\u000b�˳�hs=˶��nAl��Q׏�\\u0000Z\\u001a$��ḩ�!\\u0015%k��\\u0013�Z\\u001e\\u0018�e\\u001bk}kGo��p��7\\u0001\\\\\\\"�ax�ͪK��\\u0000�|�y$\\u000b��\\u0016��\\u000b2�\\u0000\\u0010�@(�Ƕ�\\\\\\\"\\u0016g\\u0006����\\u001d�\\u000b��O֣��\\\\\\\"E,я*�M�΂�i��jg�\\u001a&T\\u000f\\u0013;qM\\u0007\\\\\\\"m�\\u001d��vGthܦ?\\u0017S�\\u001dE��\\u0019]�����YWD�/\\u0004U4۝I�λ\\u001f۝�0c�NE�W(�O�Z\\u001e�\\u0013֐v4�9��X\\u000e\\u001aħb�\\n�V(3�F7M�\\u000e�@�'�wY]u�k�6�\\u0014rc(�/_����@w��\\u001fm�2hg{�)��'�Q��pa��7\\b�\\u001a��\\u000f3_;�]�n��2�}\\u0011:\\\\\\\"��uR�k\\u001b�g�6�ڛ�\\u001dO���\\u0000,a�\\u0012�m���\\u001c�U�4�<d\\u001e�R�=~���;85�N�r�@��\\\\\\\"�\\f.z���'�s\\u0019�\\u0003��Zm8H�+\\u001a�]=4�W29c�j}v���\\u0012U�j����\\nȽ�&�@�qr�t\\u0005�5����\\u0003���Z\\u0002Ë\\u001b\\u0012�\\u001f-��\\u000b�K6_m�\\f1�\\u0018�\\u0007u���\\u0003��F~l9\\u0003��(̈́�UIE����wm ���گ���ݯ\\u001b%���\\u000f�X��i0fG\\u0000i��Qo\\u001bz�sR圬�s����\\u0000 ���TnT\\u0011����\\\\\\\"\\u0018ap�@/~E�v\\u001f\\n_�Ћ��2;\\u0012\\u001c\\u001dk\\u001e�5U���U]�|�K]s�\\u0001��\\u000e<H21���^\\u0007ph�\\u001e�\\u001c\\u0016�U\\u0018�\\u00186�諾�C�\\u0000�Pr?\\u0016�\\u0000\\n_M/�Z��z�������(�\\u0002C\\f��{�\\u0006�\\u0003J�\\u0016\\u001c���n�}� �qߌJAse����<(,$�洦�\\u0007+\\r�\\u001d)�\\f���C\\u0014єfb�ѹB\\u0005����?�����5���ǟ��\\u0000���\\u0001�\\u0004\\u0001��[��ƫ\\t�1�\\u0015\\u001f�?����t�\\u000eR'�3�I\\u0002\\u001b\\\\Z��H�UQv\\u0000\\u0001�MJ�OS�?\\u0000��N�\\bV��}�y���I�.N������1�\\u001dUcSt6��kJ�أ33*y��/e6���\\u000e��J�@��&�F�\\u001ak��\\u001c�&B\\u001d_�7ڗ�G\\u0007�(��K��64�\\u0002��\\u0014Ɓ���1�㠹����(�Hֱ(��^��qH��\\\\\\\"z��\\u0005�T��́$R�￘�EX�WYb� ��<����s�U1�lxdǐ\\u0017������ְ�ʓ\\u0015$��U�\\tm{}A��r$����\\u0000l\\rU��$\\u0019�{-W�:\\u001d\\u0016T��5�/N��)���\\u0000�\\u0016\\u001d-�~U�C+�*�\\u0019�����92�\\u0012Flt�T�VVY���\\u0002�\\f���\\u000e,��Jކ���������\\u0000I\\t�X���j˶g3��J�ߋ���ѿ�\\u00033��\\u0000��O�[\\u001f���h��\\u0007�A�c���e��\\u0000\\u001c�6�ju\\u0014Gl��\\u0019U�Srlt6&����k9aI\\r�{k�*�ͥ1\\n��2[\\u00191\\u001cO�\\u0015|��\\u001d�\\u001d}�U��\\rGȟ�SM\\u0019���~\\u0014L]����S+�7!u��o:��n���;]k\\u000bR�2�y@\\u00006�]�ҩ�8��4�y�\\f(�gbi��l�u��ꦼ�{�a��U#6-�F�Ë�M|�M��)ord!�J��}Kn���_�6=j$�X-$�r{!�.\\u0019&�������u�{2\\u001d2�BЂU\\u0018��ۭY!Y\\u0000���?(<~�p��K\\u0014J�4^(�B��EM+hn۹\\u001d�\\\\G�\\u0013�\\u0017\\u000b+�z��\\u001fe\\f\\\\\\u0010����ݏJ��%\\\\\\\"�e\\u000bb=5�\\u0010Y�\\u0019CGr\\u000f��4A��[[\\u0012kRH^Ku5X���X\\u001e�.(\\t\\u000bh\\u000b\\u0000\\u0017�q0D^�%�ر��B�=�\\b�h�e��Ҥ\\f�?K[��\\u0000f�l�50�\\u001a0�?\\n���A롬s3\\u0002B���8���4!��D�A�c�O�\\u0015���m)~7���yͽۂ<_��j\\u0002,��i\\r�*\\b?i5�Frb�đ̈́J}�?�F:_�g��\\u0000r���:�\\u0000��]J-��o\\\\\\\"N��\\u0016{c��\\u0014-�pO��U�VF\\u000e>�Ç$2I��ؓ�FơcU\\u0002�\\u0001�]\\u0013�.ZY~ImK�\\u0006�\\t:U�\\u0010\\u0000\\u0017,t\\u0003}O�Q\\u001b����v\\u001cX�_�k3�B�\\u0000��}���\\u000eۏ����%�f��������+���ȚI\\u001d��u�����Fo���u62�1\\u001e\\u0000���o��\\u0015\\u0016R��*�{�b��E\\u001f�L %d��qS�|�����N>-y%���Ǹ��Ukd�\\\\\\\"�iSnC�j�?q��G���\\n�$\\u0006���\\u001e����2<I��C2�l\\u0016��޺C�d�\\u000e`���\\fU��VO�1\\u0018/\\f��.Y�x�7\\nz\\n�\\u001c܉�ǍZH�Q\\u0018�H�\\u00007�餧\\u0001�p��\\u0007`M���^PÚcnnW�\\u0001ԃִNQ1\\fh�.2E��B?n\\u0010���&��΃͏\\u001b+\\u0016He$-�I\\u0004\\u0011o�/�AO3��y�^s��h�P(��5�I!\\rrx��&�~t�7+��|��Oe�J��d\\u001a1\\u001f�\\u0006��np��?�g7oi\\u001a���Q0B�F#K�jI�5d6\\u0015�/:���\\u001f\\n03{�\\u001c�6����A�2���l��'�EeK\\u0013�1�b�P<�]��U��ܥT��9[\\u0019e���I[�~\\u0014\\u0004-v\\t�GJ>I.�\\u000b`\\b\\u001dl)w\\u000e\\u0013\\u0006�>�Ւ};\\u001b\\u001a\\u001cHV\\b\\u0017�i�����Hq`�'ꓭ��:\\u001a~�����0dp\\u0019H؃S\\\\\\\"\\u0018�\\\\\\\"h�\\u0017V\\u0004\\u001f\\u0011z�8Q?\\u0000o���;d\\u0016����Ɖ��\\u0010d�s�\\u001a3k��n\\u000f�P\\fV�Sq��!3x1�\\u000e\\tp|M�'�y\\u0002LE\\n-y\\\\�;WE\\u0006f2�,Ll�lt;�1�^?L#�\\u001bq�SO��j�k�h&�\\u0017���)�n��\\u0011��\\tQ�Ruї�\\u0002<\\b��&����ǒ�GoUů��&���E���e�4����Jk\\u0011,J�m��^**\\u000b(\\u0000T#�z��JE�c��pE����@+0�\\u0002A�܆��\\n�$�\\u001e:Z�\\u0010{n$��X��\\u0007�yr$8�8��kZ�\\u000e�\\u001eB�� �ɇ��]+,�\\u0002Op7%{�^?\\u001a�9�K*��m�<<�x\\u0000Ɖd��\\u001cX-Џ�<*��ڳl�1��y�\\u0014\\u001a\\u0010�!��$�\\r\\u0002%~\\u0000������\\u0011��s������H�+�gf���]�g[��o�\\u0000F(�@�n�aNۓ)\\u001c\\u0002�l|�[�k�ÑK��J�]�}\\u0006�iֻ/���K��\\u0000�\\u000b*:4�7d\\u0017\\u001f��2\\u0016�\\u001a�&\\f�+*�Rx�,��Mi�\\u0004\\u0005$�31$����A�㑱�5��\\u001aM\\\\\\\"��\\u0014�bt\\u001f*i����,\\\\C*�\\u000e��zr�\\fb�\\u0000�B#��lZ_�\\u00004u5L\\\\�\\u001e�\\u0012�����6As$��ڔd�~�\\u0001\\u0013%��$k�\\u000f�[�6\\\\\\u0011��\\n�n��HƱ�V���6(��U6 \\r�\\u0015�z��\\u0000��\\u0017\\u0011�����:�\\u0016�\\u0014\\u0007�f:\\u0000�/~d�'�z�\\u0012)e�\\f�r~=>T�0�;��y(R5'e��M�|��_g'\\u001a��p/JsዷK�&Z����q��$�ni�V64�$�G��\\u000756\\n���Ɛ�{.ʩ�k@x������\\u0018�\\n?\\n���j�O�{Im\\u0016��Ƌ��g����\\u000b�Co:Rb2�\\u0001�SU-��A��G��P�V��k�򤫝\\\\\\\"e������R9\\u0015��@��y�M,8�\\\\\\\"\\u001b�����qb~��C��h�\\u0002L���\\u000f/���,�\\u0014\\u0015���x��2\\u001cK&�����u�\\u001d��9�ܭ�*P\\u001f\\u0016�?����\\u0018ƎC�ϡ\\u001b[\\u0016;��E�|mًH�\\u0012|ƴ'���γ.N1�$.�T�j�Ğ��\\u0010��9�U����'�\\u000b�\\u001f\\n��dʍ16\\u001a-�\\u0002�\\u001d�%_�g>�n@t'�\\u001a|�R\\u00137�����\\u000b(g\\u0004\\t4��^�Ѳ��\\u000fY\\u001a���kei�Zs$\\u0006�K�k\\u0012����,?\\n�4\\u000e�I��I��>ݮ\\u0018}^UI��K �\\t\\u0005�\\u001eg���Ok��uy�Y�\\u0019Yx�����`��\\u0011�<K,�؞B�T�\\u0000ڽ���\\\\#\\u001b��:�'R\\u0000>4;)E�;q�I\\u0007�?����\\u0018gK�g�[�x\\u0011M�;�b��,�9\\u0001\\u0002X��^��\\\\�20&���>c��(�\\u0001I\\u0010��\\u001b�H��R\\u0014�\\b�),I�r9X\\u001fR��'\\u00192�\\u0019�����w\\u0002��A\\u001a�\\u0013F\\u001a7���'SEj��c^��@�z��\\n�?�D��8\\u0005�q��\\u000f�P\\u0018�2B�U9!7=\\u000e�Dɍ^@�K����u\\u001dR�Uۄ�:�9QK\\u0002�\\u000b\\r΃��{�\\u001cW�*�_ʺ�zi\\\\�.\\u0005�&!\\u001bq�V��[�:�>�������s�D��8��\\u0015��D��:\\u0017\\u0003�˥+|�cn.�0�V�U\\\\M{\\u001d\\u0018t\\\\\\\"�(�7fܳ��Q^��\\u0005���\\u001b��d]\\u001c\\u0012\\u0005��k���\\u0012\\u0017g\\rm�H$��\\u0019RlҢ/'!G�6\\u0015�w<$�U6�5�)\\u000eV\\\\�O��Q���V\\u0015j�E���\\u000f9?��$-v{�O��\\f���bM���Q\\u0001K\\u001b($����\\u001eI\\u0016���4q\\u000eBq�vb���G_�f���\\u0014\\u0012\\u0014�\\t��>B1���j�8�K:�g��Ԅ�\\b�dB\\r�诤�W�\\u001e\\u0002�*>�\\u0005�i��3\\u001f$:ZQ�&��2��<��\\u0018#�x��\\u000b��\\\\��F��a��&F\\nO\\u0002<�oDG�,b�\\u0003�ZP�B\\u001ey;|�\\u0018}q5��د�|kÓ'q1�\\u000bs�ŏO�x�0�&M\\t\\u0016#z�n\\u0011���d>�]v\\u0017\\u0006��#���Xݽ�evv+Ė���-LKh\\u0000\\u0000x�(\\u0013�ȅR\\b\\u001a�����\\u0014�v��SkAl&���a�\\u0006���_��\\u00073-�d�ѯҿƺ������\\no\\u001cWD�?����.$�\\u0015hZ�\\r�\\u001a$x�\\u0018D�H��\\u0018��Q=�f�+�\\u000br\\u0016c�Z�,�\\u001e)P�G���(�X�\\u001cP\\u0005�\\u0002��.8��z��{�G&\\u0007��\\u0000e\\u000fpv�T�A\\u0014�̆����k-Л�:V��RH7��ƋOn4\\n���zH'\\n�#����.:�\\u0013�aj\\u0006b\\u001aV#��l줕��A0\\u0001Ȭ��uU=���%\\u0005k\\u001a�,\\u0005j�\\n�g��)�/k�\\u0014YK�y\\u0007&\\u0007�����\\u001d+������od��ijM�\\u0006�K�\\u0017\\t��.�e_�'�^$\\u0003b|u�\\u0006�\\n�ȌP�\\u000e_�>��4��9��t\\u0010�a��d��\\u000e���\\u001f�%�U\\rca}l>u�ģ\\u001c����\\u0011��\\b�Ho���\\u0013w��W��2�\\u0014��O�¹�\\r6@�09H�Tl.h����V\\u0012\\u0012�ik�~��X\\r�pTC;\\u0016�X�m���Kb%ݠc�o��A�y<�\\u0000�h����\\u001fm\\u0006\\u001b�����-I\\\\���O��`�\\tPu\\u001a\\u0015mw�K�7\\\\\\\"H?K3�U`�[S���Y\\t$���5�\\u00183N��\\u0005�9_[Q\\u0011��\\\\\\\"̉\\r�{(�ġ�ݭn��N�*\\u0002IV�Aք\\u0011ƻ(\\u0014�l<�P\\f�ck^��^�u�e \\u001dF�w\\u0005��/�^�q\\u0014��,�i]\\u0007mw�`P} \\u000b�/�$y\\u00157��Ea�7�pH��_�*�L_ ݣ��qƆe�$����q�r�\\f��`nP�I>\\u0014�~�;�\\u001e،���M\\u0003GZ�\\u001d�|�g��\\u000b9�(�\\u001c^x���������9YQw\\u0003{R\\b��\\\\\\\"���A\\u001f*}\\f��A�B�\\u0017 j\\u0005Od�\\u0005-hhf<Ɩ\\u001b*�\\n�#%���pH\\u0007�}\\nɲ�YJ�K#\\u001b\\u0010E�\\u0002�Ы�$����O\\u001b\\u0001�BX�\\u001c��-���ƶr\\u000f.GCa��m\\f1��\\\\\\\"Y@�{\\u001b\\u001b�DC�\\u0012�\\u0012�\\u00158u�&�pȂL~1�c�\\u001b\\u0003U/@\\b�7\\u0019V�@����\\u0005�rRW\\u000b\\u0011\\u0005\\u000f���*\\n�\\n�9\\u0011-���]��)a���+�`�X�*Ӏ\\u0006l��3\\\\\\\"F\\t6\\f��jq؈�ϸ\\u0006�\\u001fƑ��\\u0019̮��\\u0000����\\u0019e�2�#�o}M&�Pس']\\u0010T�����\\u0010�q�;訤���*�9\\r\\u001bMG�\\u000b��Z\\u001e����yH\\u0004\\rI�P\\u00070d��f���#�����\\u000f\\u001f�Z%���՞�\\b�S\\u0018\\u001d\\u0014�-�\\u0004� hR,H�ߨ�\\u001dS�~\\n�\\u0000\\u0001rI�\\u0002�\\u0012-����!F�\\u0015�=i�x�\\u0000]^�[}?�\\u001d)FD\\r\\u001b�\\u0014�d�O�𡦅&5(yr�rp�O�����o�H�kJJ�����\\u000f\\u0011\\u0003�Y��\\u0001�뾔\\\\�\\fs\\u0019�/#�唀/�f\\u0015�&r��\\\\\\\"�\\u0019H`t�SE�H�\\b�\\u001f�����\\u0013vK\\u0006]�$Ϟgx�5d\\n9X��_I4\\\\\\\"\\\\k��m�?ꅝ@�VT�\\t ���٢\\u0013\\\\\\\"�H���'�P\\u0005X�;\\u0003V�\\\\\\\"4�\\u0011\\u0005��*_��z\\u0015�DK�scP��e#R���^\\u0015�bD�\\\\h�Rv��\\u0004\\u0013�x\\u001a�(7��Ѝi��\\b���\\u0014$�$��:\\u001a\\u0013�\\u0003B�\\fc���c�UA{\\u001e��\\u0004\\u0011\\u0001`4����U􋞂�Q\\u001e��q5,mfև|�E,�XV��\\u000b>3NH^\\u0006�A��V��B��Ǔ\\u001b�'���\\\\��\\npɕ:�\\u0012\\tX\\u001d�\\u0000~&�~��\\u0012�T��\\u00146����X�]���$\\b.Y��R��Yg;\\u0015]\\u00043���\\brbxم� m���˳�Z�\\u0013O;�8���0'��]M�\\u000e��^�Ď\\u0012\\u000b\\u0013k6�R��\\u0019\\u0005|������Ҳ��q�\\u001d�F�ѫ\\u0005`�©5��g�Oo�\\t2��^\\\\.ѯ��:�CW�̌\\u0019M�j\\b�ć��7?v'�\\u001f�\\u001fc�=+\\u0017���Y�<,� a;�`G\\u0012l/V�h�rV^C]\\b�{L�����\\u0001'Y\\u00147 mm����bY���o�\\\\\\u001f���y�VT\\b\\u0017�t,v�=�c�c\\u0010����\\u000f�\\nҲ�w!�g0#fn*.k�\\n�\\u001d\\b��,ltVh�\\u0003��:�����<0\\u0014>�� u��N�4\\u0018�ƌ�\\u0000�n\\u0001J\\\\���2�tz�\\u0007��\\u000e�#K�Y\\u000f\\u0016О�I�#h�'1g�~\\\\�[;'\\u0014\\u0006�q�3\\u001dn�/ǈ�t5t_��N\\u0016^\\u001c�fE�\\u0016r��&�\\u0003���g\\nX$ۄsq��\\u001e\\u001fGA��V��N�ۂ�\\u0012\\u0014@�����Mi$��{d�\\u0000�>4��\\u001b�B�����S�.�i�\\n:�0�Q0J�\\u0012l\\u0005π�\\\\\\\"<�\\u00125,͠Q��`G��V�4m5\\u0006�R\\u0000����\\u0000ѓ���UlI\\u00129o'���]�\\u0013�XQː�b/~��\\\\�f\\\\\\\"���6���;�M�p\\t�ɝ��۞���\\u0000*V�K�/����gR��Hn͌`����h��5��P]iR��\\u0015>���,���\\u0015V$��\\u0005'L�j��ʈ g!~4�,A3�9(7\\u0017\\u00142d\\u0019\\b;��\\u0011��ڨe�'�����t���A�9��t�F�f:�i���bv:�� �c\\u0013\\u0002u[�)�\\u001d�\\f%�U\\u001c��Њ�$ϸ�\\u001a��)��5��H�'Rni�t�Y�E\\u0013r�uf\\u001b1�\\u0000\\n_@\\u0012��*wU��F�N�:��\\u0019\\r\\r�.\\u001bqI�cPQ��y\\u0004�HQ��[�\\n�Zs��\\tbt�ƍǘ�]Q���\\u000b�DN���bpm�\\u000f�T�\\u0005c#8F\\u0004�>�:U6ڵ��O\\u0012�O�ҽ��|�=�!M�v�Rp�#�ӝ\\u001c����\\u0003n�\\u000e���<��*F;^\\\\\\u0004L���<���>\\\\\\\"�=�%��?��J�!k\\u001f����#K�3#U\\u001c�q�/y\\n���z+$w\\u0019��pQ�\\nG�䞿}5_ ���ֆh\\u0016�{~^�ֹ\\u001d�\\tY�q|Ol��(��\\\\l���I�Dyo��\\u0014�(.������Ɵ�;��%��O��\\u0000��XOPK�绎\\u0016.#�Đ�\\f���nV�j\\u000e���̈\\u00184�\\u0014;\\u0015\\u0006��Z\\u0005ӎ��5J��A�l|I��\\\\\\\"\\u0003\\u0011qzs��\\u0006\\u001c|Y�X�b��Iq�%��P\\r��g��L�\\u0006@9jx��E�[(\\u001a�\\u0004g�l��eɗ�hIE�Q��\\u001a\\u000e�\\u0019*w\\u0004\\u000f\\u001a�\\u0010EƠ�\\u0012o���cQ��SwEB��f��t\\u001fm$��H\\u0019w\\u0017�1�\\nJ��<\\u0001�\\u000e�[ƹc�ִ����U�P�a=�\\u001aH 9R2�\\u0016\\u0005u'�kI�䕉]�����?mp�����W5����kT����uN\\n��\\u0004�2��\\u0015> �𦝋�ō�$�rce#�]�����U+�痳:��\\u001dϵ�\\f5Hro$m�V�/Ө�q��Z7>`V���c��#�\\r���<\\u0018��tdi�}���b\\u0000\\fvE�o.����A\\\\h%��I\\u0019��'[�+l���\\\\\\u001b�E\\u0011��2�ў2���/q��`i�\\u0018@�\\u001a;F��نƘƹ\\u0013 r����p4�j��\\\\�O\\u0002��t\\u0001o��*ݹ�q#\\u0007/��O�3z���[���\\u0010&��˸~�G\\nd\\u0002\\u0011o�܃���\\u0006�P��/�d͙\\u00180rH�'��ܛ��)\\u001foȚY�dr�-�|n)�B���Rt�yJ\\u0011E��(��Z8�'ұ��?��z�j�(�c���N<�񬻌����~���WU\\b�qY˓\\u001d\\nDl\\u001c܃��\\u0014!$��s��׮�ܶ�;Ui7,��xď\\\\\\\"$jYɲ���S�����\\u0000�Kq��ď�Q���\\u00112J�y�%Τ-�\\u000b�3n VN��Q����9��f���7d;_���<\\u001f�O�k��e*�l���:�\\u0005��ҩY�\\u0010s�\\u0011����H\\\\<f�o�|�2=�L��E�� gp/o\\u000f����$���v�V�o�\\u0010XwX&�}����\\u000e��C#@3˥�*B���hkх���ǋUN$E��p|oK���T$6Dwс&�`\\u001a>�1|<�����Y�4�7\\u001aD\\u000e$\\u000b}Ո\\u0004U\\\\\\\"^��V\\u0019��i\\u000f�\\u000f�[�\\f.\\r�؊�=��J�o�Jb9�;\\u0005�8��\\f��s��@�8���\\u001d\\t����\\f+\\u001aD>�\\u0012�C9�`��M\\t��<\\u0006�ܒ�\\u001d��A`\\u001bk�?Ƽɑ�\\u0015\\t�\\u0006�W�����\\u0007�$0\\\\\\\"��ױFP]�cZT�\\r`f\\u000e\\u0014\\u0002nv\\u0002�����n-���ʰǟ�\\u0000����o\\u001a�0\\u001eI�a�Ss*܏\\u0010i�>}X���Q���\\u0019s¿Lr2��\\u001d(I\\u0014��\\u0005�\\u0000�\\u001bE*\\b\\u0016\\u00177��*�\\u001e�kZ�;���\\nM�����j\\u0004\\u001d�(��t=(�\\u001c\\u0005\\u001cN��\\u0014\\u0016ng� �h\\b�0�ZQ ���\\\\})���Pd�$�rw&�㤙\\u000ex3\\u0014]���\\nh���X���qR����\\u001e��^�C��{��'\\u001e8�\\\\�����,^ܳF�3�7�\\u0003]��\\u0018��\\u001d�Ip\\u0007��TB�2s�'�W���ս�Lg�LUe-�67S�\\u001a�<[�7�\\u001d��B�\\u0018-z\\u001d��b>\\u0004��,H�6�)��3�\\u0019<.܂\\u000b\\u000eGZ����V\\u0004b��Pm�����%\\u0019\\t���UG(ѷ,v$yWN5\\u001a�҈\\t>{&<�� �\\fn�]XX�k��Ë\\u0016F\\u001bL\\b���A�W�-rt\\u0001)�/wc��(\\b\\u0014*8����V\\u0005ͩ�������A�uf'��Ǻ�.<�b�֛��4\\u0005W���kR������?e\\u0011�����\\u001b��\\u001c�\\u0007q�Z�\\u001f�\\u0012)�R�\\u001d\\u000f\\u0013b<�������4ݶ��\\u001e��x\\u0019\\u0001\\u0016�\\u0012V��� %����T�)�*��\\u001b�\\u0007�R:P�9S?4\\th�#�QO�t6�Rk�&�SʥhbJ�\\u001cY�R����Sj�\\u0010<��z\\u000b��\\u001f�Z6\\\\b�3z\\\\�5��(��5\\u001b�O\\fЀd\\u0002�K�z\\u0018�&�`v�\\u001a;��Xq\\u0005�\\u001b�*'?��\\u001c8��\\u001b:�h\\\\\\u000b����EGOk�?�����%H΢��߲;��{���w�_�\\u001f�]6\\u000f}�̌�1\\u0003)�IHS�\\u001a�\\\\v\\u000e;�)�>���\\u001e�-��;\\u0011��_���m\\u0002A�\\u0000�d��!,sF�.��\\u0006$xi\\\\��\\u0016���;�~�\\u00031#� \\u00106֗SBx%\\r/oƕ˷+���e���=<��ԒCk�����\\n�N\\u0000\\\\\\\"�\\u0018\\u001f���z�$�\\\\\\\"<��\\u0011���\\u001e�L�q��T<�5�\\n|iw�\\u0000\\u001dy[��U\\\\�\\u001d�8\\u0018T�����vڭTI\\u0005�\\u0006��Q�@�0\\fXzo��^.\\u0014���\\n�\\u000f��?\\ndq1�n��}��'Y\\u0013\\u0016梣\\u00004��*c�,z\\u001b��V�qD�9T\\u0001�[k�\\u0003�FS�\\\\�\\u0003z\\u001a[��[\\\\\\\"E��#A��T\\\\\\\"K3��A\\u0007�\\\\\\\"��$\\u001a6�5o\\u0005��ӈS�ng]\\u0007f�pŎ12��PZ9?)\\u001e\\u0007¹�-R�@{&t�ȃ#�ܔ�\\\\x�A��س\\u000eN\\r�\\r��E{��Ҋ�\\u0019���#SIV\\u001bs��\\u001b�\\u0002B�@pH]��ZђE\\u0010\\u0004X\\u0012\\u0005\\u0007Le���n\\u000b���|�H��R����Z�\\u0015\\u001de�T�\\u0001���^B�\\u001c\\u0001f&�t��Ѣ�7ۀ�M[\\u000f�ɉ�r�\\u0003\\u0016\\u001cY\\u000f��\\u001f�/\\u0011Hڶ�Ue\\u0016\\u0016=)&��\\rc#���1��2<gPG8�u>t*gʰ\\bD�bR\\u0018-�����R��7�B��hma�TL\\u0007ee���԰�\\u001e��\\u0004���DnvRm��?���~�̋\\\\\\\"\\u0014rU�����+V\\\\\\\"��29e�m��m\\u001d��=��Qd>��𮗼A�\\nca�E��]�@�n��e\\u0006;��l�P���G-?��|^caqGy��ܸ!�����&l����O�-n�w��R�VR��\\u000f��ҕ�I\\u0000jN�Q\\u001b�v$X�3��\\u0005��\\u0014�?o�`Zp\\u001b�\\nO�z�*�\\u001a���f\\u00172o��)�9\\u0012�.N�\\\\\\\"\\u0000��J���ڒ\\u0018\\n\\u0018*�7qŗ\\u0012EV!ՅՀ��Pu��LO�b�\\bg_\\\\du���横KD&�Ф�B�Dl�4<pd+z�����1��~\\u0011��\\\\�M)�/i���\\u0000�y\\\\�{�>\\u0000R��]F��V\\u0002�Ō�\\u0018X�]ݲa�Ob=I#�#`GJ#- �}��$\\\\\\\"�+���zJޙI$�\\u001b��SX����\\u0017��Ѻ\\u0000R��Δ��:�}E�Я��y��7�\\u0017�ؠ_����/�#2DJ\\u0007\\u001c�\\u0004)\\u0017\\u0003S�h�k�!�.Z�Ӌ�Է�η����F/�\\u0004f� ��Y�d\\u0007�ec�zp)Z\\u0003��\\u0004f�j�\\u0011b��\\u0018J\\u001abHu��Sm>\\u0014\\u001etF��@��\\u001f�f�\\u0018�\\u0013B�ӆ� ���Mee�D�1ȇٓ���*�eI(�r\\\\\\t�x����\\u0011V\\u000en:�֭z�ō\\u001cһ�RI$ѽ�\\u0011\\u0001\\u0004X�?����8�j�ka`74��Dy#�[�s�S,N�bT�\\u0015d\\u001a\\u0005\\n\\t5#���3\\u000b�]v�\\u0013\\u001b\\u001a(��0�b\\u0003[{��Vv~�\\u000b��B�������\\u0017ێ՝c6\\u001f�(T����zڮ�\\u0012��\\\\\\\"H�%X��Kt�ݻ>>�\\u001d�\\u0010d��������\\\\���Ƣ1Cpli0\\u001fO\\u000bB�9��SfV�XX�[E��X�\\u0019�9c\\u001f����|�f�Z\\u0010\\u0016��<�#1\\u0017[�y\\neB/\\u0013u�\\u0011�{�Ɂ�\\u0000\\u00177�/s�\\bI.��Z\\u001b8�A\\u0017�\\u001e_!�A\\u0003mi�\\u0000�\\u0007�ib�\\u001ew�Լ�^�m�D�T�\\u000e0\\u000b���j-k�H�\\u0000hw\\b��\\u0012�\\u001d�!�>��Jc�{��c����Y\\u0003\\u0006�\\f,\\u000f[R~\\nK\\r����\\u0017��0��3[�}��咸��I\\u0001�U��m\\u0007�J��pbG��?1-��-�G[߭\\r�3�|q&29�\\u0012�Yms���<���\\u0003�\\t�ȏ#��K;h\\u0014\\u000b�Q�;sR�����Ž��mB-�Ě��\\\\\\\"K0k�;\\u0011��F]�A�ø\\u001em�^�~����Ǵr�e��u8bA\\u0004\\u001b\\u000b�OKԐ�>��\\u0006�:��CrZG7\\u000f��\\u0016+<�?��ң�#»\\t'U%xڹ<�TȕSE\\u000e@\\u001eW��&�2gDbÑ)�lP\\rC\\u001b���$�nt\\u0015�,*��@zUB��*��\\u0013I����\\u0012����:��Kٹ\\u001b�T!��#qsb\\u000bx޹I=\\u0005�׉ }�H��z���k��ҷ\\u00174A��\\u001b�~���Y�W�Y\\u0018�В(��s\\u001fuS\\bW�!OI�\\r\\u000f�#�Koa�\\u0013\\u0006\\u0004�Ѝ\\b�p{���0�В���hI]$��\\r���L��BI���%�\\u001c�\\u001f��I�D�U�\\u0014��dU/�ǐ\\u0006��*���p,A&�v�3q��$\\u0007��ˉ\\u001a�a��\\u0001�<h��\\u0011�\\u0011U\\u0003����)~L�\\n�&���\\fk��M~u�fÇ�4Җ\\u000b\\b��.�I��W\\u001e�6\\u000eJ܏v2\\u001dH�yS�^���\\u000b̂Wa�\\u001b\\\\��xR�o\\u0011��\\u0007+\\u00137\\u000e,\\\\?�\\u0019���m�E6W]�5��%�V��#��7�\\u0000�Qٝ��\\u001an�ۑr#\\f͙1\\u0001��O��=J��c*f���RUE�\\rW�?(�QM'��\\u0018\\\\\\\"�\\u00147\\u0013�����\\u0013�\\u001a�q!T\\u0000zۍ�hL^�?K\\u001e4��\\u00164\\u0011�\\u0006��Z�\\u0014c7��,��+~H\\r�\\u0001�^T߮î�3�f�\\u0019Ȃ&8��i��_ȝ�;V��\\t^1���\\\\\\\"Et�\\u001e3�>+(XJp(�XyR<�\\u001c,Lw�]� Y\\u0010��vڒh�ˏA3\\u0011ȅ\\u001aT��`Ɓ0?Q<����\\u001eZ\\u000br iB�\\u0014\\u001b+\\\\x�Ȏ\\\\\\\"����-p\\t��(�Ix7�\\u000e=F����]�}#^Z\\u0003�\\u001e�\\u001d����\\u00152�_쵹�:_�/�~�c\\u000f��*oq�~�\\\\\\\"����چ��Y\\u0015`��v;\\u000e�\\u001a�8�A)b�і�\\u0014���Q4�\\r�R�-�\\u001b���\\u00179!f\\u000edQm\\u0002[S�ڕ�0YnE�5����Un@�Q�T�ĵ4�yɑ |u(�-f��o�j\\u001cd�n�k�<k\\u0002Z�0�z��@��1bI�^T�LD�R�\\u0000J����z�\\u0000>4\\u000b+\\u0002�k]?o��p_IQ\\\\�F�Q�\\u001bkN0�ȉ\\u0004�T��yx�� ��f=�|��+��\\u0019l��\\\\\\\"&�\\n����Z}\\u0014��\\t��\\u0005W_��5-,�F7�I�^�к��K��U�>+�\\t*@�H�k\\f\\u000b\\\\\\\"�x�ڈ���*�yT2�X\\u001f\\u0011LB\\\\�s\\u0004�\\u001d�\\\\P\\\\\\\"\\\\��\\u0000,�\\u000fH-� ~Q��xf�#\\u0013�\\u0000\\u001bۦ�.>,��P\\u0001�\\u0017��\\u0000��\\u0001��\\u0013�(�PE��\\u0001p�&��\\u0019Y\\u0001�\\u0015Djm}��}GJ.\\\\\\\"=+˝���O����8rE?�!7YH���UN\\u0010FDY\\u0004\\tX\\u0011{�cZ\\tah�%\\n�X�i��\\u000f\\u001co�('kв+A�\\u001a����<\\u0018�\\r�m���#*��u�\\\\\\\"�����4\\u0012�����4����\\u0001�4\\u000e\\u0006�#`�|WF��\\u001b�hT`\\r�\\u0007{�+T<�\\u001f\\u001a\\u0019d\\u0004����Z���\\u0015Ur�hq�\\u0006\\u001a�\\u0012�\\u0018����S\\u0012<Վ8\\u0016�n\\\\\\r5\\u0017\\u00164�$I\\n�\\u0002\\t\\u0006�@�'�D\\u0016Y,$A�Ɨ\\u001e\\u0015.JA�3�a)\\u0002\\u0007i\\r�8%x�j�{�r�I`I��d��\\u0000M��1]�r�\\u001c\\u0007�\\u0005\\\\�Lp٥?\\u0017}�H��$��x�y\\u0001��!��EP6s��|�ڕ�4\\u0007\\\\\\\"Q\\u0010<I\\u0004��U�Kf\\u0012\\u001e1�\\u001b�O�CG�\\u0013/\\u00194koҺ��\\b���{F�CpN��q}k���0dq�+�\\u0012F�ײ�����������,�\\u001c̃�=�b\\u001a��ѡ��c�\\t}�(�\\n,\\u0005{�\\u0018IC�{`��\\u0000���k�$�IKcD�\\u000e܏�\\u0015�\\u001bL@�F��Fh$3-с\\u001cO]+�̚\\f��f\\u0005��s�M»��:��z7恭k��1�\\u001f�\\u0001�M�z�X���ۗ\\u0018��8&\\u0012s��o���2b\\\\�Ѹ�7\\u0007���8���b�Ц�;7ʭ\\u0019�\\u0002�H�ڑ������Y�^��L\\u001d0\\u001f*S.d��X*(��Z�\\u0011��M�Q���ŉ\\u001aB$<C\\u001dz\\u001d\\u0005h���a��\\u001ck�-�����練�/\\u000bc�͍���@o}\\u0007����\\u00193��\\r�M����Bs;��&\\n�RH��\\u001dhQ\\u00176$\\u0010�4\\f:��d���FI\\u0011}Tik�\\nkG\\u0005�\\u000b\\u0001�6���\\n��3\\u001b�~dQ!\\u0000�\\u001f1Le�L#S��\\\\\\\"�A\\\\\\\"�k����/EJŰ\\u001e \\u0003rR,ڋ�z\\u0006��n�`UIQ�\\u0002�U���J�+6\\\\\\\"�Af;��AۦE�D\\b\\u0001��#r�ޯ.@\\f\\b\\u0017#`j@d�#6�I\\u001a\\u001f\\nQ1U��ĵ�&�cd� �\\b\\r�\\u001aY��1�s���^��[��S��=\\rb^r\\\\\\\"�b\\u0007�O�ɛ\\u0014�\\u0018�>�\\u0011�\\u00196\\u001c������\\u0018t��\\u0012rV4�\\u0007����A�)_\\nw\\n����?o�\\u0014�\\u000f\\u001b���/\\u0016\\u0004��B�>D�r���Jo\\u0014�A�b\\u0005e�W �\\u001734�\\u0000�D>�\\u001cy�\\u0007A�EE���S\\u001dPK\\n�\\u0001\\u001fK\\u001d��ޡ(^���\\u001bI�\\u0003&h�U�K>[!%�җڸ���N�#���7�\\u001do�+��pZL�\\u000f>C\\u0016i\\t,�t\\u001eT\\u0014�(�1�d�\\u001a��4bu\\\\[�����Ɨ\\f,��p\\u000b���\\u0019��s\\u0002���Ո�\\u0014:�r����L��\\u0014\\t��[���ռ#\\t0�n��B�IM��3�\\u0002�f�M)x[�M���C*\\u0014��>b�\\f\\nH�R\\u0003P�@�ѯ�%��Z]�\\u001a�]@7\\\\\\\"��4y\\u0003�%�z�\\u0003���\\u001f\\u0011�\\u0015�\\u0013\\u0015{{A0\\u000b4��\\u0017}�����\\u0006�\\u001a\\u0017�a\\u0019�)^OmK�`o�ڛ��J˿\\u001c�ՙgN\\u0000�\\u0000�\\u0005�8~^$_KS�S�\\u0018϶�\\u0005�\\u000b�\\u0000\\u001a�+��Z`u�\\u0018�\\u0011�\\u00002\\u0001\\u00008��nK�Q�f�c㪼\\u001e葍徃�E\\u00150[a��E���\\u001a�\\u0012\\u0019nF��C0�n&%�X\\u0011��&V3In*��I�x����\\u0019U��1�h��\\u0000\\u001aR��1�_hJ\\u000b�\\u0000H���\\u0013>^l�'�+\\u0011��zE�Ttx\\u0018p�\\u001f\\u001e�����k5^:��t2v]\\bڼFV6:\\u001e�x��e\\u0011���'�V]�|li\\u00165[���\\u0012*��U�թ%�����׶̘��)\\n�\\u001d\\t�F���Ï\\u0019����6b�\\u0013z�[*W`�O\\u0013􃵫Y'�h�L�8�Cv�n�h�\\u0019�Y�T��<������H\\u0016X�xP�\\u0007��ʹ��\\u0001AGW\\u001e[���S���\\\\\\\"�����V]��,���<.��|��[\\u0014Q�V=�\\bM$S�=�\\u0007��x\\u001e�vDQ�*�?��is�\\u0004\\u001f³�*L��\\u001b��\\u0012@v��\\u001a�2�\\u001c��\\u000f��\\u0012@�$�(�����\\u0005��Y��s\\u000b�ȑ��#\\u0016H%u3�\\u001c\\u001b��*�\\u0000�u�{?'�\\u0005�`��̝?�h獟��(u�7�\\u0003H��h��fޖ�마�Dv�s1�&1k�P�h0r�\\u0017\\f��\\u001a3}-�v�,Ɂ�̷�5����W2OR�s�(n����5�e*��/\\u001dv��l�Iy��sArH���)�?�38�/�\\u001eU�Zm頜\\u0018��-\\u0018!��a��+#���?/J�����'MEo$���?��\\\\\\\"��yy\\n�6l��R9�况\\u001f\\n�0��f)�\\u000b��یjX\\u000f��O���\\u0007)�\\u0011��P����A�֪ՠH�6\\f\\u0003t\\\\\\\"��Z�Dh\\t\\u001f\\u0003^`D�Q%\\u001a*�6�\\n<z\\u001b�7S���k#H\\u0000�0\\u001cK0_�\\u0002�\\n΋�\\u0017`zڀy\\u001b�\\t��i�6P\\r?&���*�I�\\rM9흍�\\u0013�\\u000b(�\\\\\\\"�\\u0016�U�b\\t\\u001eCdI`��V�'{|����\\u0006<�p�P�\\u0019�?�\\u0018� �\\u00003|�\\r�\\u0005\\u0004�y��D�dTQ�B9\\u0004��B�g#e��\\n層y�!w\\u0018�34j�����R+̷�2a$��b�(E���\\u000b�ORu5���\\u0015t\\u0003�Rb�i\\u0014)��k���x��;qt[\\u0017]?�j�nz�t2!౨\\u0005X-��kZ���k}c&Y=�f�b�c�A�H�\\u0016Q��[ƹ�����E����7\\u0010rl\\tQ~\\\\}@�i��1\\\\�9��*��\\\\�����\\u0015�K�����r\\u0016�(����n��>�I@\\u0006{G$ +\\u0000WU\\u0003��|lOfW����GADת.�\\r�\\u0014�� 1ğ-\\\\\\\"\\u0011\\t�\\\\\\\"�\\u0003o�\\u0015���Μ��ۆ����\\u0005h��\\u001cBG���`��T�\\u001aW<�q\\u0006�è��\\u0002��b��8\\u0018�0\\fo�\\u001a7��$\\u0019\\u0019r\\f�\\u0012\\bӐS�+چ�\\u0015�L�\\u0012/�j;��_2`w1�\\f*m�)jt|\\u0000\\u0016\\u0002�l\\u0005Q��SZ\\u0013Tv��\\u0018\\u0014�\\u0005`Y\\u0000 �\\u0007�ͫ|�V(^W�\\u0001?\\u001a��摤�ݛSV����w\\bѲ��ȳ(Q�י�\\u0000���\\u0018�\\u0018䫭�׵(���d��C��E8��\\u000b �(\\u000f\\u0016\\u001c\\u0005�~?\\u000f�1�\\u0001g��Y�^U�m�e�*�\\r��\\u0002���\\u0012+~��\\u001at\\u0005�\\u000b-��N�:\\u001f��\\u0006,�?2�\\fQ�$\\u000b��\\rmL[\\u0016�\\u001aƤ0a�B>\\u0014\\u0014j\\u0019�;u��U��&�7��\\u0002�|)�\\u0000�����Z��\\u001c\\u000br�>9\\u0012@�ij�L��\\u0014��YN�ڷ\\\\Y��d��\\u0013v4\\u0014ѴnA ���)\\u0019*u�_\\n#\\u0019^���nM\\u0013�\\u0016\\u00160L��\\u0007-�Q�Y��\\u0003�h���\\u0017���YY�\\u0006�/�>\\u0006���\\u0011�����5�+�I2\\u0003�q\\u001b�\\u0014��s��u�ً6�\\u0013�jf�\\f �\\u001f\\u001f�v \\u0016���H���Ӄ��<\\r\\u0018�J?�So�.�\\u0015I1�F}T�$yրx�Ĩ\\u000f;�\\u0014������/\\fX�]\\fh�>B��ly��Ɔ_O�P\\u0010~5�)��Q�K�}#R@�?�|�\\fG\\u0005�r#N�ȝe{i�Ea\\u0004��HCr7��VX\\u0016yD�?\\u0011���nkXb��\\u0018G\\u0010\\r��aR�I\\u001b�@���ե�E���A+W�\\u0000Xl4��c�\\u00157\\u001e��Ҙ\\b\\u0017�s\\u0014�ylU\\r���EQ�O\\u0016;�c�5�Q\\u0018$\\u0000�z�Q��~\\\\��t�;?��pǍ\\u0010��W��5�����}=ki`�K�mN�(\\u0015}�6?i��[Y6SuX�\\u0000�:o����\\u001dM�\\b͘���iN�ŉUb��\\u00000�M��ڹ��٫��\\u0004��\\u001dA\\u001a\\u0013�\\u001f�Q\\u0019��,�!�G\\u001b�X���\\u0015�8�\\u0018�\\u000f�:�\\u001a90&���*H�5�K�\\u0018�n���8�+��v���+���t�\\u0012Ņ$��\\u000b+���مǏ]*��z�&\\n�;~4~F$F\\\\\\\"р�\\u0018�#�x�P,M���*�O�j'$��b���`�.�[3�����U�C���db�ӛ����t�2v�,>��ƅ�E�\\u0015\\u0003e\\u0016\\u001f*�\\u0013�������hlc�J/mȽ����'A\\\\m3���L��\\u0005\\u000b\\u001cnO ~�:\\nS#�n\\u0004q'bv����h���a\\\\%��\\u000b��=nu��k�Ve-�\\u000bn�^W�P\\u0011�\\u001c�W���0��|\\u00058ÌF��hI�@7��+�V�m�f�BkV�_��c����I\\u001c����嵼�T\\n�:Ƃ�N��6f���K\\u000e:�iGkRry[@�_�oI�&�JRA�E��1ot��[\\u000b\\r���\\u001f��\\u000b�\\u001bzI���M�q*oT&��L��̔��)Q����S.Ӈ\\u0016[H�\\u0017�\\u0000G\\u0013mI��P��U�.�\\u0001:۲�L�#m�.\\u0007�\\u0013�5�\\u001bl�ѓ��\\u0013\\u0006�b��GV7����ף�\\u0012\\u0016uQ\\b\\n����ܬ���˺¥\\u0016E\\u0003��@\\u001b�oo����&>@Y\\u0014�}\\u001ejc����V�LՃ�)T$Z�$um-��o։�YI��*1���8�Sq�)v._�4�H@�٥F�ŵ?e+�Yϛ9r���C���\\\\��N��4㛺~�\\u001bv�eKzG�2�x�{-(_�O��\\u0005���(�ʻ n:�����\\\\\\\"�ly#\\u0011�\\u001a�\\u0000�\\u0000\\u001a\\u0001�RG�<��\\u0001\\u0019\\u0019�È�V?��[�i\\u000b���ThT��y0𱤳Bb����L\\\\q�rI!���L�WH㵿7��\\u0015�@�#:� �V��.\\u0007nCE\\u0007O�J\\u0016�Se�\\u0018������ړ<�e�e��ҍ\\n\\u0011e?mgn��q�$֫U争\\u0012wi\\u0014�:\\u0013{\\u0002\\rQ�x�;l|��/7�\\u001b��ײ�\\u001fK\\rEoG�M�c�����7\\u0011\\u0011�����\\u001d�C(�\\u0000\\u000f�4���6���^�\\u0004��x�\\u0006�.�\\u001b�ء$���\\u0006�~\\u0002����\\u000b/ ��u\\u0003kU��\\u001eZ��\\u0015�\\u001f%\\u000eA����\\u0006\\u001c���\\u0017�5�JQ�%����w\\\\�D\\\\\\\"\\u001b�n~\\u0002�c�Ҫ�Ҵ\\u000e�\\u001e��dd���ى-�\\u0018�$�����4\\u001fxͅ{�y=):�\\u0012�ʒ\\u0013��\\u0007�<�U�1,s�Τ!Ǳ�+�\\u0018�-K�{Rg�bIrq\\u001e�2�ꅀ$+�ޛ�\\u000fʲ�ո�I��\\u0004Y\\u0006{�\\u0000\\u0015��T2���`:։��\\u0012���\\u0001ߕ`��m�kZ$�\\u0011mB����I\\u0015��.\\u0000ו\\u001f\\u0010ӗT��%T���\\u000b��p`�\\tY�ۉ�=l>��؜\\u0017\\u001c*����\\u001a�[P�\\u0017�4rG�%ԝ\\n\\u001d��\\u001a\\u0005�c�D\\f.I���\\u0013��ӹO�����Ҍ��\\u0000�bN�~\\u0015\\fh|2�@��\\rw;�U���[�\\u0006�\\u0013�\\\\\\\"ŊV���h��S � \\n�S�Ƴh�Y��\\u0001�U�x����\\u001a#\\u0013\\u0019�e���l[��N�qY�\\u0001��,����\\bO\\u000eCK����K:�R*�}V�z���|(�l\\u0000�q�\\u0001�^�D����\\u0017(��\\u0018\\r�*��]��OQ�+N.$�H\\u001f\\\\\\\"8`.��0�\\u0001[R�m�x�]�a\\u000eo�\\u0019*J0�h�I��V�\\u001a/o\\u000e\\u0014�J��Yβ9����0f\\u0004b\\u0005�\\u0016����C��\\u0006�\\u0012\\u0017�,���;\\n]��\\u001d�^�S{�\\u0000��KN�5�\\u0015,��[~a�~[�d<R\\u0016�;�\\u0018\\u000b��:ڗ\\u001c�`�\\u0018�����m<|�\\t�ǖx�A\\u001fq�3\\u0000����\\u0000m�\\u0002��O{!\\u0015�c��Q�\\rb\\u0006��21�Y\\u001b�\\\\\\\"�,/�� �y\\u0001Z��\\tU�\\u0019J<|�������1`�=av�ƂAc{�!�\\r\\u0015\\u000fo��y�i��\\u0019\\u0001#\\u0007ǂ\\u0000\\u000f΄�vP�a��8*֌\\u0016�T\\u001dx\\u0002x���ĩe!\\u00021'��?:��B��Aۧʹ���gT\\u001b��|M\\u0004�<P}�Jx��ՇCFdw3\\u0013q�^Oo\\\\�(4���H$\\u0001��C���\\\\\\\"�<\\u0005C�e�iʍ\\r%���3��bu�<z\\u0013֨���CnA��\\u0015�\\u0017k/\\u000e\\u0007{\\u0011��m�\\u0001̍Xh\\u000f���\\u0003X\\u0004�\\u0006lM4���\\u000bh.kN�.T�\\u0010��p�9r�=\\u0001a��R�S~�Tī\\u0018�M���kJ�\\u0019p�cȈ�r0x����H\\u001f:��$��l�\\u001a6\\nd��K\\u0012�\\u0007�U �hĊ�Y�\\u0002\\t����\\u0014,\\u001dܼM��^A��Ռ��y\\b�}�<7�hm2R3�Pr]H���\\t4��oǐ6B�\\u0017S�\\u00153ZF��\\u0012]�׮������@p/�CԵ��h��=��Ԓo�jf�eE �$\\u0000-�ҫ�T�\\u0011�\\u0007�oL�J�Y\\u00142o\\u0014���\\u0003�JI�\\u001ae�8�(�M��7>T\\u0004*\\u0010�!�ډ�e���ސ\\u0007BF���Je ��D�cK�Y�ږw�M�E�ѯ�Ƞ��)�C���N�x\\u0011^\\u0019#`W[�\\u0003�G��R�n�7�\\u0011�\\u0014L8�`F�45W�#�V\\u0015H�\\u00038\\u0003!��?udN�y���\\u001f\\u0003C����M��1��!G\\f��6�R�L��\\u0019�`<z�G\\u0012Ck�𣰥y\\u0001���(�\\u0005P\\u0001��\\u0000\\u0003G�n\\u0007��Dձ\\u0001�O�\\u0013��\\u0000�j\\fu�4�\\u000eV<J/��\\u001a8?�ޢ?��\\f�2eJ@\\u001a��\\u0014ik�\\u0000(\\u0003���\\u0013\\u001c\\\\\\\"\\u0014\\\\�_���q\\u000f\\u0019\\u0010�\\u0006\\u0016�Oڲō\\u0003E;�l\\u0002\\u001fQ\\u0003�����\\\\l�c�9\\u0015��/Ă@\\u0000�6\\u0016�s�q�yy���F�e�\\u000baԚ]6)�\\u0019V�1ՈS���!i�{+�\\u0000Im@\\u0007��k6一���ȏ�R\\t�[�Ѹ\\u0010d��7 =��@�\\u000e����!r\\u0015e^*Z���t����\\u0013*H\\u0003\\u0015�\\u0010��\\u001a���\\nr\\u001232a@e*���E�]w\\u001f1W�v\\u0002�4`I\\u001f\\u001f\\nG��U0�\\u000eq�\\u0012�[�'j��dE\\n�\\r�M.#�:�x�FF6U\\u0017��\\\\̯�H�kr$��Ddg͐��\\u0001T��/�\\u0019�{t\\u0019�$�ݖ\\u001e6��\\u0013}��iB�\\u0016��@}�\\u000e|�ё\\t�\\u0018\\u0017~�\\u0003}�\\u000bq����T\\u0005P\\u0015F�\\u000b\\u0001U�\\u0001�dF\\f\\b�H ���u��\\u0002k���m\\t�>\\u0015ή`���'ff+�\\u0006����M��{��\\u0004�14ȡx�u\\u0000\\u000e.���\\u001e�K�\\u0006Tr3�\\u0002�I!PZ��G�K��M'#\\u0019\\u0016k\\u0002V��\\u001b[�g��\\u0006+%ʂB�����m\\u0000cdHe� >��[Q]V\\u000eG��>-r���\\u0003ֹ��pỦ�h�\\u0001����Z�x¹*_��\\u0003m�]Mq�\\n�y\\u001fc̘䭚�߅�f�2q�ǁ��oSt\\n:��Gox�_�͑i���\\u001dF��\\u001d�D�b��a����ʕz�Ks��ُ@\\\\�y\\u000f���\\u0000>U�&p�*I���çƱ�U��A�:^����\\u0005�\\u001e5|SP�e����U�y\\u0012���k�ڰ�ݶ|x��DoP\\fF�ܽ�\\nc�21\\u001c�\\u0015\\\\0�\\u0004���[g<�q�(@\\u0005lǕ�\\u0000\\u0010*���(9��Q\\u0010\\u000b\\u0010\\u0000k�\\u0000U;����;��I`\\u0000e\\u0002�t��\\u0000�f/\\u0003�O��\\\\\\\"\\u000fa\\n�\\u001dʋ\\u0000.I�M�k�K�cy{�3��ċ\\u0010A\\u0006��ˆh�w�w\\u0004t�����I2���a��( ;1��~��O'�1�y\\u001b�O�E%\\u0003m�9,#\\u0004_�����-�nM��!��Ȍ4ccGɁ\\nF[�#BA�𩵪�S�){\\n^0��Н��Xb\\u001d4\\u001f:6�*�nB� ���#rd:(;n,j�?��\\u000b[V�z\\u0016R��6�*���U{i�艒\\u000fk�v\\r���҆�d���d�҈���[�O�W\\u000f\\u0018d�P�\\u0015\\u0002䏺�ɂlg*�\\u000e�6\\\\\\\"��>\\u0013�C�Q��+\\u00125�hy'px����\\u0002��>�\\u0010ނM��ZhG�)��c��\\u000b)�N��^fcA\\u001c\\u0005�,�\\u00167;\\u001a$B��\\t�'��^ӛ�\\u001c��V \\u0007k�!�\\b���e]F���WE��1Ld��ċ�$�>F��}ё�\\u001bFSc�V�\\u001a���\\u0007*\\u000fn(���\\u0000A��:KR�G[�d�L#\\u001c\\u0012���)\\u0004����\\u001c)��Zb���J�v�[�_aT�ǎ$W�q\\u0017�\\u000b��$84������\\u0000�#쥤�I&��M\\u001f��22q[$\\u001e �F:����\\u000eX��ג���\\u001c�s�q�z\\\\\\\"<�!T�Ӡ5��?��:�:�L����\\t��\\u0013Mj�x�\\r�Dk��N뒦%�\\u001eE�k��)\\u001a�/.-��[�\\u0002W����.+x!\\u0012���k\\n�\\u0013\\u0000��c�U~��\\u0000��_�m�+�3r\\u0007ïZ#?\\u0014b��nP�ŏ_\\u001d�jP�G!3M\\u0004��ԋ��0\\u001a��*��\\u0001��!�Yn��ڽ���%��l[�\\u0000�\\n�d2\\u000fZ���L���\\u0018}�ִ��H��\\u0018�p,h9\\u001c�����t��21�YUW�ٔ\\u000fWͨ\\u000e���\\u0000[1X�XE�%�J?Q9���\\u001f\\u0013Z�H$�WntL�g!E���QC\\u0001r\\u0007�\\u00101�}+z\\u001d�iH�$Œʬ��\\u0000�M)�1�w�΁��?h���R>t�ԣ�hF�ƫ4Ā�38\\u001e>��9�Ƚ\\u0003�#�T�\\u0000\\u0003�,uc�\\u0015w�.\\r��atqr\\u0018x��+�/p,Im�SM6��+\\u001a�@�qZ�'�*��c�xѕb��ޱ�i#\\u0000��t&�i<��\\t��\\u0004n\\n�R,hh\\u001d�\\\\;9n-r͵��\\u0013�6b>\\u0014BK�\\u000b\\u0012o�V�ԾC~��⑈ƹ�,�t\\u001a�R�\\u001a6��Ɠ*u�;rk�v\\u0000\\u000bӘ;&2�e-):\\u001f�ż�֛TXhi^�G?+N�H�7\\u0012��\\u000e������?\\\\\\\"�\\u0015�\\u001f\\n�_��Fm�\\u0001{�O�J��<QH��pV\\u001a����VM�.�\\u001b� ��2��/�\\u00143�\\u0004m\\u001b�T�(PH���o������\\\\t$���>\\\\\\\"���\\u0000߭{G��\\u0016\\f�\\f��3\\r\\u0006߅{��\\u001cV+\\u001d�����Il&��\\u0003j����!`���L\\u00049S &ѓ�?\\u000e��\\u0003=�Fn@R\\u000f�CZz�\\u0015�\\u001e�������iį[��\\n��$\\u0002�åx�ʱ�vC�0\\t\\u001b޴�g� �kk�?\\nm�R\\u0011&L�\\u0002�@&?��ֽ��~�\\u001a��.\\u0004�c���\\u001d���!䤩�\\u001aR��09��x��#��mz\\u0002w\\u0014=`��\\\\�w�գ����zК�O!\\t4�ۋ\\u0011m�J%;�bn����V�,\\u0001\\u001c�zۧ�08\\u00114A໎���\\\\�(\\u0007\\u0019�X�\\u0002ͭ��\\u000e�]ٜz���\\u0015��㈰�U\\u0003\\r��ܨ�Z�U�\\u0007C�yV<GMj��v�R�#e�a\\u0018e\\u001b\\u0015+o�\\\\\\\"Y�\\u0019@�C��RQu��)ݏ����e�J���'[�S�\\u001e����\\f^��!vX�>R�G�}\\u000e|���q��X�\\ne<#$��\\u0000I�)�\\\\\\\"����\\u0007]�UQ��\\u0001 oMZV\\u0014\\u0002Ey\\b��XXVR�\\u0000�1�n�߉�A�k�PĀG!��j#r�`L|Y#\\u0007�\\u000fP��J#\\u0018>:4a��m6����P\\u0014�屿�m��\\fp�\\u0010\\u000eK�Po�Z>/`�\\u0017\\u0002o~�5\\\\ر�<���\\u0011n@�?u{Uv��=\\u0001��%���\\u0011�К��xC\\u0014�#�+h\\u0001ֈ�\\u001c�e�.�f��\\u0014V;C*X\\u0000�/ԧJ�\\\\�K�l-�;֊ĺ��\\\\\\u0010T[ď\\n�\\u001eB&#�\\u0018\\ty�\\u0014�maҸ�23'q\\u001a�.�\\u0001azc�qr�2�R?\\u0000A6o�O�\\u0014�>K8\\u0015p�<�:Y%\\u0010�X�$\\u0002\\u0005�\\\\�*\\u001b.WƘ\\u0018��ˣ��^gv��Nb`��)�������D����\\u0018���D\\u0002��E���S�dC��d��'\\u0002/���ǅ�'�\\u0014��`���B݋�ĦG\\u000eQ\\u0005��aa�\\u0014��=�\\u000e���2��\\u0010K���I8�\\u0003�#��g�\\u0011BQ�ߘ$[u\\u0014�f\\f��͋\\u001f8\\u001c\\\\\\u000b���J��nD*��o�%����e9��z\\u001a��q�~�PYr��+~Gb|�Z%��Sb��\\u0011{\\u0011BJ�\\u000b\\u0014v\\u0017\\u001d+��vfV����*�r7\\u0006�G�J�ڛZ�\\u000b䷹�>�oj��q#��u�\\u0018�\\u0005\\f{��$x2\\bߋ�4�\\u0001J�wiL���G$�^�bl�$�\\u001b�K��G5����MiZ��>_�e��a�S�fe�\\u0002�b\\u0007>Fǥ\\u0015<!@d\\u0016\\u001b\\u0011XU�\\u001a\\u0005LC e7\\u0014\\u0019[�c�jت\\u0001s^\\b�����_���KE���#0S�M�ܨ�;G\\u0018�k����:�f��*���I���Г�BȫЍ+�P�V�\\bav6���C{\\u0019^�^v�ubma}���Q(piMq;��\\nE21)`\\u001du�m�*�ˣj|j�\\u0004μ�6e;\\u0010��b���L�60���r�b��o\\\\�uUYž�.���j�]�3$���\\u0010uf�?�V����c��\\u0002F��:ҕ:�p�\\u0014��n2����~�U�h��ܫj\\u0000�;ka�jE����>��C�@�\\u001e>{�E$R8�lUn-�\\u0007\\u001c�cg\\u000b���\\u001b��xx��{��u\\u001aܟ�. \\u0003��t+ i�岙9+\\u0002N��ՙ\\u00182\\u0012�6 ��r�#\\u0003K���blI\\u0014\\u001b�'�6��J�p�O��nC���<��/���\\u001e?½�Ȇ\\u0005�+�cō��!��:jmY���3\\u0016��'��7K-�<\\f��r�\\\\\\\"1\\u0006;r\\u001c��b\\u0006�Z��sJ!Nd_[[�C~�c�m>\\u0002��6\\u001c\\r�#�8���*�\\u000b���\\u0016��H��H��a�Vʎ�७�����0��\\u0015�Hb��\\u0014��D������*a�]H�\\u0005X/U?\\n\\u0000�\\r��V�\\u001fv2co_�_\\u001f�G\\f�L��\\u0006\\\\{�\\u0001\\u000b}����r\\u0004�4��\\u0012,��\\\\G�o�\\u0000�8$r��Z�R��\\u0000�oD�vT�Ƞ5�t�\\u0007Ƅc�\\u0000zQ�\\u001f\\u0015P\\u0017������)\\nI�!�B�[�]�)&�\\u0019F�0'�\\u0005��Po��K\\u0019{\\u0014A�A����\\u001e���ZH��䊐�\\u0002l\\u0014� u��E&���8���N6�\\u000b\\u0012o�QE�$\\u001e��\\\\\\\"0��\\u0010nE��ַ�8P�\\u001b4i��\\u001dI�o\\u001a8�@\\r2�\\u0007[X�hi�\\u001b��ێ�j��4\\u0000,�4�H�Sp�i���ό�5�tg\\u001e$mU��YX;\\u000e1��O��\\n���\\u0000�i��\\t]9u�g\\u001a�LA��hɠ1��{����X�^ \\\\�-P�cq�\\u0013�\\u0010X�I>=+\\\\�\\u0007\\u0006�u:\\n\\r�M/Ǧ�k�T/����_�6ƻR�j\\u0011\\f(\\bg�\\u001f\\u000e��L�\\u0014����N�\\u0004Y2��쪷\\u0016'{ۥ\\u001b/m�U�\\u0002\\t��4MV\\r]�l�?�ֵR���D�c�\\u000e�.U�_\\u001a\\u001e�F�M��#puo� �V+4D\\rU�B($ŎLw\\f���ԭ�K��YB�\\u001b\\u0013cm�LPt]�!�&F;jXp���Js\\u001d�I�-z�;\\r����G���4h=O\\u0011���\\u001a/\\u0015�dD�ߎ�\\u001d��!\\u001a\\u001e��k�4Beɋ�\\u000eK�[��f��*�G8�s�\\u001f�}iwp��Й \\u0017y@6㪆#��\\\\\\\"�e��b��\\u0011��J��\\u0007Z�#\\u0010n2��f�\\\\\\\"YJ�B�r��b���̨�e҇\\f�厀���y8�9,��=�\\u001e��-�я�1P\\u0013��m�\\u0006���DE&+c��8��w�4�U5*Z\\u001a��&fv,�\\u001d���x\\u0006�O��q�&wi]}�6E;�<+g\\u0006#�c��)���M?\\u001d깵����6<\\u000b\\\\\\\"'3��I�VS�)}��&�9�\\u001e�������\\u001e\\u0007Q^XZ��å5A>���ޙ\\u0003�\\u0004\\\\\\u0016�U\\\\|�\\u0016\\\\3�Ȍ�m�i�\\u0017d�Ǔ2��(䱂} ��W/\\u0013\\t\\\\\\\"�UUfE���)�Qz�F�e�<\\fq�\\u0012v/#+\\u0006��i�T�\\u0018Vy��vko�g�\\\\\\\"�҉�\\t�C����~\\u0015\\\\�\\u0005��3�đ\\\\\\\"pӓm�\\u0005)�3�̉\\b�2\\u0019\\u0003u���c��1�\\f�ZNVo\\n��7�Z�K�7\\u000f�����!%\\u0002��\\u0018:&?l�\\\\jB�[\\u001b�<�k�gU\\u0017m���af�S\\u0013\\rI\\u0007C�EU��i+(;+u����\\u001a3�\\u001f_��Tf�Wɔ��e��lu\\u0004�W��\\u0017�Q�x�\\u000eƊ�l�rS\\u001e'�ݐۗ��_5��\\u0000M�܂��\\u0017(��[{\\u001f\\n1q\\u0016@LQ�\\u0000\\\\ڱ�\\u001b\\u0012G\\u001e\\u0007��r\\u0016�\\u0000�I \\u0007�렢$��k�q^�\\\\g\\u00116��\\u000fΎ���\\u001a\\u0004$u]M\\u0002�|�/�~4��mz�K�o�}Q,\\u0007���:�q���#��hlz�VB��\\u0001���m+9e�#�\\u000f���\\u0000�@�\\u0003�$L䁠&��8�R�\\u0001�l�:�PI\\u0016rG\\u001b�j|�ŋg����v\\u001e\\u0002�;�s#��\\u000e�ޟ�ݑ��\\u0000\\u001a�\\u0007{�\\u0000����k(�n�'-n����}~t�&�'\\u001d����C\\u001c��.\\u000f�א��,2�\\u0013$)�\\u0013�+�y_�A:<n�ȥ\\u001dM�XX��E]1�\\u0019\\u001a\\u0016���<~\\u0015-\\u000eFY\\u001f�8��W\\nH\\u0006���R�\\u0007%b5ZU>^|Rp���u\\u0014^\\u001e\\\\��,�\\u0014���ZM)\\u0013cO~#bN��W��@\\\\\\\"3�\\u000b\\u0013CUL���cb�\\n\\u001b�Aj�|X���_���l�*$e�\\bt�!�\\u0019[\\u001e\\u0017�M�{�\\u0015H{��H�\\u0005[\\u0012HQcs��N&�\\u0002��Q�:�1DZ@��\\u0017;�\\u000b��\\u000bT.F�K�q�\\u0011��\\u001c��\\u001e*A[��j�c*\\u001d\\u001b�\\u0004\\\\Q_�;R��VH\\u001f�\\u0013_�d����\\\\\\\"��ULH�\\u0018\\u0019��Q�\\u000f\\u0018�\\u0006�_Ț�v��L�Ȅܨۖ�y�=��ş�&�gG,B��U\\u001a__:ϼv���\\u001b#��=��pæ�Uj�U�Rq x�-�#\\u0015\\u001c��ګ<�yZR-˧�U�\\f�,k����m]\\u0001��\\u0002�B�\\u001f�R�\\u0016�b�\\f����H@�ܛ\\u0003j'3'\\u001d��\\\\\\\"�m��\\u0000�eܻW��ބ\\u0012��7�<oK)���=f,u�h>\\u0014ñB�w\\u0000��\\u0006?e�u�6\\u001b�QG>9�\\u0011�=�u$\\u0010\\u000fkr��x���\\u001cU�.P�q��CA�w\\u0012!��@\\u0019\\t�b6�\\bs�xHɕ�٣.���-hĎ�\\u0005�n\\u0007�E;U����\\u001b�\\u0007jYe�c���\\u0010��\\u0005����)\\u0006D�i�P,\\u001c�\\u0003Z�\\u0000\\u0002G�\\u0000J���9b��W��3\\u001b\\u0005\\u001e$�rB��ٮ�zu\\u0015n\\u0003\\n��]\\u000e�}��sp񣇔'ԛ�pנ��\\r�\\u0006�;SM[\\\\\\\"i�\\u0017i\\u0011f<B�L�\\u0000\\r��\\f��r�\\u0010���\\u0019F\\nD\\u0018�\\u0005��\\u000bޗ�_M�J���.�;�9��\\u000e:\\u0013{�ZԪ\\u0011T@���5j_&\\\\�F�^�\\r�t�\\u0019�\\f}H7\\u0016\\u001a�\\u0000n��HڕfÐ%��]m�\\u0001qL�ٗ�z�\\u0000P�+\\u0007�U?Y�T�!�\\u0007�S�\\u0010\\u0010��M�\\u0017��)\\u0011I��\\u001b��樹\\u0013\\u0003������$\\u0004���P�\\u0006\\u000e��b׵�\\u001c��*�\\u0016\\u0002���0�+\\u0014a���מ��ƃ�P�\\u0011�*9K�F\\u0016��\\u0017��s\\u001c�9q7��ѥH޼�\\u0000g\\u0011� W\\u001bV��^\\u0012�����>��D@6\\b��ݛ��\\u001b��\\u0017\\rA�r~�~���h��_��+v�r�<gB93\\u001f�),�M{\\u0013p�\\u0016�XXY�!�kEUQ�@P:\\r)�\\u00188�H\\u0016X}�:]���G�;;%�\\t�ɹ�t�H����\\u0011��c�d����\\u00062��&�c눛�\\u001e*|)2�h��@������d6����Y���5\\u0000�%؟!N�8���O�\\u0000�WU$���\\u0016� g�.�<�y��\\u0014��\\r��|q�*��\\u001d؋�\\u0014�N���\\u0017��\\u0016�G���ԕ97��BX9ܬ�`\\u001aO]���\\u0007°�W~>���*���Ef�\\u0012�S�d\\u001a�<mB�`�j�]���\\\\�CM+��=,~�;\\u0013�S\\u001f$���\\u0010���;���JF�*�7�\\u0001ר�\\u0000\\u0011�\\u00005�K�3!\\u001c��E�@^�v\\u001cR�\\u0007X���܎�\\u0006�����\\u0010��-�Һ���9d����!qW���F�<bV����^�\\u0006\\n��0��R��Ɠj \\u0007\\u0012:��b\\u0015F��)cwLF�\\u0005�H\\u0006�]>�I�\\u0002��'fK�I�¯�ۖD\\u0012�{7҃M<M:�t\\u0006��g�\\u0004-�!���\\u000b�\\\\�����ksb��8�\\u0000��\\u0003����\\u0000:��1�\\u0010�P� ��W�\\u0005!_����\\u0001�����\\u0018P4-0EV[��\\u0003JB��C9�\\u001c��YI\\u001e��\\u0012��^G�u\\u000eď���b�'g���gue$��+y\\u0015{g��x��#:�\\u0017\\u000bE4K{\\u0005�����\\u001axU+'����;���5���u\\u000f��\\t��;%�\\u0007Z\\u001b���\\u0004��;\\u0000�uK��ޅ�\\u001a���,x�f�\\u001fh+lw�h䒍`���˸���U��\\rŅ���2�W��\\u0014���f�[B?7Kxӯel�j7V�\\u0018\\u0019��k����|kV�6�T\\u0011��]M.��\\r\\t\\u00119F������\\u0014�!�t,Y�U�\\u0007�G!�T��aqkh\\u0005d�\\u001c��S��\\u0001�t��f\\u000b��/�*G<>��\\u0003K��gt�)3^�\\u000e4�\\u00012��%��m>��h^\\b�\\u0006�\\u0012yh4�_���\\r\\u0013\\u001e-��\\u000b���rK\\u000e��5;���\\u001f��f�\\\\\\\"�R��\\u001bS�r�ٓ���t�R\\u0018���@~[��2[R��M�U�s���J�+b\\tR��9�X��l~5���z��JP��Jbg#r\\u0005m$�8dx�)\\u001a����Q��J�\\u0017cҘad�q�B1?H],<��\\u0013M�VZ�ҭB�bF\\u001e��+jC\\u0005�\\u0001W��7\\u001aܚ�ߔ�Χ��Xx\\u0012h�\\u0014,c�Ē+jK��+BI\\u001d\\u0017l�6�\\u0019�G�\\u0018��(���\\u0000*}�/qˏ'\\u00142\\u000b1a�\\u000e�kZvw�Fp���\\n����_�o܌x�r��\\\\\\\"�\\u0016\\u000f'[�[կ>�5��mT��֝�\\t{b\\tߔ�O�leb\\u0015�\\u001f����\\u0018�\\u0014�t=@�Z�r]\\u0000�\\u0010WPG�>\\u0006��\\u001a�\\u001fO�\\u0006v<\\u000e��sq�F[�\\b%u\\u0014�62��y\\u0003cʘ\\b�'È�D�e�=�2�\\f��\\u001e?U�\\\\\\\"�3cC\\u0012�U\\b��\\u000e�q�\\u0004T�C\\u0006.�#4��7�����cv>�S��D�zdb[Q�t�w����x��%���u]�C,�!��Iҩ�H\\u0000�&,��\\u0016F���gQ����1`����\\u0015���-Lr���\\u0012��-w\\u0004�����\\nR�X�������V+Wo��K*<��q�h��Ȁ*�!H�1a���`\\u0015$�����\\u001eF�\\u0000\\u001aw��EļE�\\n\\u000f�I{�<3\\u0013&[��T��,Yχ�g[9�y���D��\\u0012O�^gRn��[\\u001d-җ\\u0019\\u0001cv:��\\u001d,J̾�\\u0005N�@G�\\u0001\\u001cN��\\u0001�Q\\u001f\\u001aސ�0g�n\\\\S�\\u0000\\u0015��\\u0011aa:�\\u001f\\\\\\\"�F�\\u001d\\u0014�\\u0000\\n�N���*G���!�֒e\\u0003�\\u0004,\\u001e�ڍi�1c� \\u0005!��\\u0000r���)>\\u0017\\u0010���\\u001d��HT� YM�5�� ���*{� �0�T�BiGuƆ<��\\u0002+(�\\u001e7:�yyP����KE22H��\\u0007�\\r�A\\u0014\\u000e\\\\�\\\\ˣrTP\\u0015�:�\\u0000\\u001a\\u0010�p�4�\\u0011Spz\\u0000v5\\u0013\\u000f\\u0017%�䴈�R�\\u0002x�_CaR �9\\u00167������X��3{gB�@�7\\u0015I�����:�@�b�\\u0018��C�w�A�/�-����J7�d�.P�\\u0011\\u0002\\u0010\\u001e�4��W_W��:�i٩�\\t4�j��\\u0000\\u001b�T\\u001es�&2�p\\toQA����/o�q�\\u0011��pE��Ғ\\u0018ͥT`7�J7\\u0016/��N�.�:�\\u001bޒK @Z�m��1��e\\u0002H\\tDQn~'��l�4�i<o\\u0014�\\u001c�GS�I{�Ҍ�\\u0015�#�\\u000f��:�!�\\u001c3��Z��\\u0019yۑ��6��H<�;D\\r�4y���\\\\\\\"\\u000fu��rבK\\u001b����׫�\\u00143�h;F=<���W\\u000b�fbL\\u001dm\\\\\\\"���5Y?���:\\u001d+\\u0002�.A�1ev��}\\u0014��\\n0\\u0003\\\\\\\"}�K\\u0001����{<H����j\\u0011\\u001c��\\u001e���q\\u0007^��R%��\\u0001X�\\u0012��<�tb\\u0018��[z�b�[�`�\\u0007��X��ju��BX:{�G�I���*'\\u0012��a{\\u0011}j�\\u0000g�ѓ�G�iua�t�#�f�#��u ��a\\\\�p�\\u001f��l��-�����C:3�ܘ\\u001fSu\\u0004�ֱ�Y7�U�ؙ\\u0018�E�\\u001aV��\\u001fmCr!���AҕwW�^(E�u�:^���?�e�o{ۥ\\u0005�1�\\fIed���>?:�'2\\r�>��\\u0005y\\u00109\\u0005\\u0004�x\\n�l|�1\\\\w\\u001e�X\\u00124\\u001e4״�\\u0006xQb�\\u001b�\\u000e�i�U�v6,�Y\\u0018#���A��7b>=+U|`˒����\\u0005�\\u0014عq�!I�剹�N����\\n9��Ȅ���N��m��21�u_t8v\\u0001����6-��2���Mץ\\u001c���ގqſ��α\\u000bp��`u�;o\\u0005e+�]O\\u0012?1��\\\\\\\"��ȍh�B�R\\t��}#�F�jK\\n�\\u001c\\u000br\\u0016S��yR�\\t�\\u000b�\\ns���6e\\u0016`\\u0007�qJ\\n����0�O�'����\\u001d��\\u0012�O����^\\u0014d�!*��cU\\u0000/��\\u0005.NTm��C(;��U�s�\\u000e�\\u0010�X6��\\u001b��\\u0007�-XJ\\u000b\\u0000���ֱG}j��\\u0004�/����Q�h�\\u0000P���\\\\\\\"�nM�\\\\�J�a�a�\\u001e�H\\u001f*���\\n\\u0002r1��Y[{/\\u001b\\u000b�\\u001b\\\\Ҩ��\\u001eW�9\\u000b\\u0002.\\u0001m\\u0003[��<)�fN|\\b���`@\\u0014�\\u0002���k�5�=�\\u0016�V1,����Q\\u001ci�\\u000f��aҴbB�qȸG=Y�\\u0017=/Z��\\u0019�X�\\u0019��ap<ϕ\\u0012�k�\\u0005lO��S�PӸ�9h\\t�߭�J��8�x��Mou�\\tAbC(#����\\u0006���F�#�����\\u0006��dbV7(\\n��~k��\\u0007i\\u0018\\u000b\\u0002�\\u0007��ɪK\\u0001#U�2\\u001b7Mkǘ-�n5\\u001e^t'mr�K�\\u0002�:'�\\u0017�U��&b��7/K\\u0017���\\u001eߑ\\u000e\\u00142e\\u0014�y�$���������m�\\u0017\\u001e7̋\\u001d$�@=���ٛ�Aw'�Q�grG�FnQ�\\t\\u0017?O&\\u001azj���v�\\u001eY=�\\fib��˥S���\\u0019�b�wo\\n?��`�\\u000b+\\u0007oM��Z�yD�\\u0011��I�\\u001d��5:�\\u001e�Ap䓏'dd?C^׶�y]����O\\u0003[bf�G\\u0004�c�\\u0007m\\u0012YT\\u0001k��/�\\u0007Άʜq\\n\\u0000����\\u0012\\b�\\u001a������\\u0003cjϸ�\\u001c\\u0012,�I�� �\\u0000@p<\\b��]��m�������#(�e6\\b��c�_�D\\u0014l�\\u0016Ap\\u0002�z�\\u001em��D&7�*ʞ�ƿ\\u001f!X`㙥���\\u001e��Ǡ��h*�\\u0010�.I1�5OC��-�6��r�{�r�dtL�7\\u000eIE`������/��\\\\\\\"0\\f��=u�?C�\\u0003\\t��)����S�\\u0007�\\u0000��)�N��\\u0016ꐰ���y0��\\u001a\\u0017+*$���G^C��H\\u0000v�\\u0000*�&�BA1\\u000f\\r�\\u0002\\\\\\\"x\\u0011�\\u0001��[�)3p��K�ԃ֩q�\\t������*��\\u001clA>d\\n�rc3cI\\u0012�K�(���\\u0002+�쓌>�\\u001d��q���c�v\\f����k��E�i\\u0006�o�\\u001cY_\\u001f��C�\\u0002bE\\u0006�\\\\��\\u0014\\u001e`\\u00066���~U|��\\u0012�U\\f�p\\u0001�\\u001f\\u001aZ��\\\\\\\"F1ʈ\\u0002��;|o\\\\���v���t�V�&�[\\u0016�$qX�\\u0003���A�\\u001d�U��\\u000fR�xQR�y\\u0019��'AXH��\\u0016\\u001dk����^�hs���h�Xq#�+G'\\u0013pG;|=F��7�-\\u000b�WRCr�\\u0011ҷBU�u`A\\u0004\\u0003}\\u0018X��X庫��B\\u0000���Qk�Z\\u0010\\u0011��f����ni�Et\\u000el\\u001b�y�;�$��������c�+��B\\u0015��jl��I�\\u000bH��\\u001dAҗȅ\\u001c��Ylt�2㺇\\u0003Q��QV&�\\u0004�\\u0016�����\\u0000\\\\Ӄ\\u001f\\u001e\\u0007a\\\\\\\"}D\\u000e��^\\u0010\\b�ڷ��H���6m\\u0017��p�2ǅ��+�(��\\u0000\\u001bդP\\u001bM�m��&1���\\u001d�'O�\\u0007a~��v\\u0017\\u0017��ք����s�&0���\\u0000*����\\u0000(���{M��͒\\u0018\\u000b\\u0016\\u0001M���J�..V<M&\\u0013��}n�\\u0012ʢ����'�Ȏ��_�\\u0000\\u001b��\\u0014���ȏ2(�\\u0001\\n�\\u0015� �|��uQ�\\u0004\\t\\u001d�TX(�+���e\\n�UF\\u0007�\\r���=�\\f��u�\\u001a�r��\\u0014������GS����ZM\\u0002d�Ā�}y[~��\\u0013\\t\\\\\\\"�㊶�jMhR�)F�5��E��︋\\u0006Lq�\\u0001\\u0004��K�����V��\\u0010�9�R���n\\\\\\\"\\u0001/�5?�s��\\u0019�tU��ac�\\u001e�|g,���w/|\\u0018r�J\\u0006�:�\\\\\\\"���\\u001e[<S��7]Ѝ\\u0001��I\\u001c��%\\u0017(E���\\u001a ��K\\u000b�҅�o�FDxщ�\\u0003*�`;�av��\\u0000[A�c�9-���zi[��ɘ\\u001b\\u0016\\u0004\\u001bx\\u001a�b\\f�roۛ��F<Ɩ\\u0017c���\\u0006D\\u001d9/սa���\\u000b\\u0012�r ?D�\\u0010���\\u001f\\u0003Xs\\u0001j�yȬR�7�).��I�X�d��>�6�:q#�\\u0007�\\u001a6zBm$e�b6��z�e��\\u001b!\\u0017\\u0003j�z3�����\\u0010(1��\\u000f��\\u0011q&\\u0011ŭ��o�E��F�[�\\u000b�D�P���>\\u0018�䴨\\u0019�K�v��Gf��kKi�w\\\\LyԌX�0\\tg�e oe\\u0017�qp'EI1��\\u0012��Fp����rb>TVgq�Y��H�H�Z�m��R�������4V<cS�\\u0005&�G²���_i�cl��#ߋF����R��U�F�\\u0005���\\u001e�@ȓ�1��_ʲ*[E��T��\\u001bR+�ƒIJB�*�\\u0000&�T��+����v剧\\u0017��\\u0001��\\u0015\\u001dhx\\u0016.Ӎ&t�ݕ�\\u0004iͺ�ݶ|���\\u0019df\\u001b\\u001f�a�\\u001bx\\n-��*�ۄ�c3��\\u001aJ���O\\u001b\\u00125E�\\u000f��\\\\\\\"�B4n+�D��\\u0017�̋eP�K�(�(Qk��:�\\\\�\\u0016J\\u0013Z=��!�.\\u0016,H�\\u0005��F�®\\u001eT��OS)k�?�\\u0007\\u00049k��\\u0001�\\u0006���\\t_\\u001d�����4��j�\\u0004�.\\u000e�F.?�y\\u0018]\\u0017a�F�X�2\\n��z3\\u001c?5�l�^��GQB\\u0013\\t�+\\u001aG��E\\f�����5�j\\u0016�џP�\\u0011Cw1�1�Y�Y\\u0018\\u000b-Ơ�֖v���\\u001b�߈���h��\\u0002Uܴ��{�}��Sl\\b�ēJ���O_*VǑ$�֊�>D\\u001c\\u001a�\\u0000����[j�:U\\u0015��\\feLF��\\u0014��\\u0016�\\u001ay�G�J2{d@���Q�^K�\\u0000䨫�1�Db\\f�)=mT�\\u001a(�!I},����I��o�:-N�YQ�7\\t�!�D$\\u000ek�\\u001e$\\u001a~�,���\\u00007�\\\\�k\\u001f��\\u0001�{�J�\\u001d8�ԟ!�Qu\\u0011\\u0006Kp\\f� ��\\u0017P�\\u0016�6��5�de�hc�1���9pEc4~�N�{���%,��\\f\\u001aH�\\u001a'\\u0017\\u001b��4�%�\\u001d�������m\\u0018�N���ȯ\\u0010��&\\\\\\\"�ŀ'���M�Ρ�+ŗ\\\\\\\"E��\\u0002�\\u0000P���D�M��Ʋ\\u0001~�\\u0002\\b�u�`��ށ\\u0004G���2J�RD�����د�\\u0016\\u001e\\u001b҆�8͋\\u000b�\\ri�g�\\u001eBY[����c���\\u0006/�\\u0019��\\u001b\\u0013���l{�ŧ-,�K\\u001d�·�\\u0011�j�\\u0011�r�\\u000e��ƍ|E�\\u001b�I���H�>W�R�\\rN�Y���fYB�\\u0000u���\\u001bm�\\u0014X�\\u0007@�X�v�h�Q ���\\nz\\u0011}i*H��\\\\\\\"�1 �F�i�Ndh28d��ļ�\\n\\u000f>9����ԭ��ݿ!�\\u0015�\\u000ea��{t���CJ�U\\u001ct!��3;\\u001aֽn�����&|��#\\u001caf<c�����ǧ+oYG.LӘ�,�)��\\u000bi�~��*�p�\\u001bS,I�\\\\1\\f�Y1�0Hw\\u0000n�=\\r6��BNΰ���\\u0000�d�.\\t~6���!�U�/k��d\\u0007N=N��C��}�]�x\\n\\u0013�g\\u0007b;�\\u0010vȒ\\u0015%��Q�܎#��m�Tvk�v�%�7���FF-\\u000bE!:3\\u00029\\u000f+֙d\\u0006\\u0000oZ+nDl\\u000e�X�\\u0003ʚ`đ�#\\u000eG��e�\\u0014�e��g\\u0000\\u0012>�~5�\\u0007qE㏒Asn\\u0012�o&�5�n\\u001c\\u001b(��\\u0019\\u0003@��v��'|El`�z˨�ƃ�5ո� \\u0003�;|�\\u0017�\\u0013I �F<y\\r\\u000e�\\u001a���e;a����,�8������єq��CFG�\\u0007��\\u000f�l�t�3�/k�Ȟ쯢��\\u000f��t���4���O��$\\u000fQ���Z!����%h$g\\u0013\\u0002\\u00033�\\\\�R�\\u000b{�\\u0001�&��ѳ`�̓L�mr<\\u0007�[K�\\f�̂��_�T�&�#\\u0012(T�i�\\\\\\\"0\\u001c\\u001eA��>�\\u0003^ƍO{EE�\\ro�\\u0018�@�&ָ>Tk~�7\\u000b���~�{U!\\u001b�\\u0012����D*�|\\bқ��\\u001b��\\\\\\\"\\u0019N��|i~v@�\\u0019���@\\n=��J\\u0003\\u0013,�J��m���ƕ���o�\\u001a�2-�Ƣ�g�\\\\\\\"d�\\\\\\\"Z\\\\\\\"Af\\u0016 \\\\��Q\\u0013�de!\\u0010�*��87a�F�\\u0007�!�T\\u0012X��k��f׌Ii�B��#p�\\u0000E�q���#i\\u0011����YM�\\u0014�\\u0017�>@\\u001d\\u001bCW\\u0013L,\\u0003������\\u001f�'e'ӱ��ٍCi`�X�H\\u001fy�΢�T�L���opK\\u001d�k���߱� �\\nWa��bd7�8�Cu5�ЃN��q{�,����ѥ\\u0002������+����}�җ\\u00040\\f\\u001d.\\u0001\\u0007A�ھ�06ڸO�*%�Q�7�\\u0018\\rƭ�)\\r�o��|�V]W�\\u0016,���j�\\u000f�L�@\\u0015���k���\\u0016�\\u001691�L���\\rl-Ǒ\\u0015�v�rY�꛽�\\u0003��k�SP.0пS�އ1�W�\\u000f�f\\u001b�Lr\\u0011Q�ێ��VY\\u0000u,\\u0010j�F��\\u001c�pW\\u0007���̠i}��\\u0003*���Q�����I+`\\u000e�m-��Ƥ����d��ڰ�9��U����q�|�5\\u0017`<M0�_n.1hWK����\\b�T��$v�� ��dP�˸K��e�@l���\\u001a�[M;:2��\\u001fa�8��e��5��*.���ju?��}��I98�\\u0019��6\\u0003�އ���\\u0013&\\u0019�ϦX����!��D~������\\u0000I�[�OO�s��?���%����|�\\u001fµR���\\u001b�\\tV\\u0016�\\t\\u0001��\\u0013Ҍ����,H��[��q�QA�c����6�O�{�i�\\\\XߤX\\u0019\\u0015��\\u0000\\u00167��eg�j�\\n\\u0007s�ˈ�cf��I:t�J];���b��h�Ǐ3�\\u001fR\\\\�����V+\\u001aM\\\\\\\"��B�O:uz��a�ZWR�\\u0010��OU\\u0003\\u0011~�\\\\�X\\u001e\\b�\\u001e�\\u0011'�zI�O�.��\\u0012+#����q�N�I^�\\n�0]��\\u0000i޳��\\u0019H6'�{'�\\u001c�:6��^ڭ)Bo#��$��&�ή\\u0000�\\u001bb�qC�v��*|ՙ�1X�P\\u0012��\\n9oC�f�\\u0005I\\u0001\\u0000~aL\\u0001Vc���YJ\\u0003��F�N��<�\\u001a�t��'��Y-�3���\\u0010�;���bG�r�\\u0017����Z�|�ko��&p\\\\|��z\\u0015�?e]I�~�y0�\\n��t���\\u0011\\u0003i֯$���E[\\u001e6 ��FƓY.�\\u0005}�\\u0005\\u0005�?�\\u0011@}o��u4��fcb\\f�^Qk���<�r}�v9l�UK\\u0005�/M\\n�U\\t$k�޷d1��(�\\u0005\\u000f\\u0003�/V�~,bB��\\u000bk\\u000f:[��ft,C� ��M(y�3�\\u0015ω���M4x�fk�dc�\\u000b,\\u0006S�$!���U�\\u0012\\u000f\\u001c�#\\u0002\\u000f�li�\\u0006Q�1{obE\\u0001\\u001e\\beoq���x\\u001f:+\\u000e\\u0006�\\\\\\\"\\u0018��nm�P�\\u001c���e\\u001c��\\u001e6��{L!��'��\\u0000�O� �\\u0012.l½�,���J'f\\u0006n\\u0014�(v\\u0005G\\\\\\\"\\u000f\\u001b��/DEx�\\u0014�$l�\\\\\\\"���a�9\\bՎ��:k\\u0002�� -Į��4go��f\\u0010��\\u0018�χ�\\t���Ŋs��m�u��E\\n��\\u0006�U�s��\\u0015�\\b`�ډ\\bQ��SS\\u0003\\b�f�oʑ���{!������n�c�Vh\\r~(�~�!nV�\\u0000��h.��}\\u000f31�\\u0019����^�cR/�\\r�?p\\u001cܩ�^*�@�t���O��޹ݤ�i��6�\\u001aK��nQ8p\\u0018\\u0015�G����ߡ����\\u001e^\\u001d).\\u0017q���$���q=\\r1�6I���\\u0006��\\u0011i&ʫL�m+'�#\\u0004������$R\\u0018�+Z�0��*I�\\u0018�-���5�YP���^����\\u0011�Y\\r��7kt�/\\u000b{\\u001e�\\u0007[\\r�\\u0011�\\u000f�\\u0001�ů^6\\\\\\\"�Eյ���2�\\u000b}h%ɕ&!M�hE�\\\\\\\"��$�\\u000f\\u0016\\u0016:�X��Ԭh���6QF�\\u0019`\\r�\\u0018ıɏ\\u000e*o{yS��\\\\?�\\f?�?\\u001a�<te�uڊ�ʰK�\\u001fR\\u0015�B��##i\\u001a�$��\\\\\\\"��\\u0016&�*�\\r�\\u0018\\u001cѣ#/B-E��\\u000f\\n\\u0016v\\b��`/E�C\\u0000F�\\\\|�^�ȱ�\\u001a�;ּmSjБ^bp�OR�Ʊ,mj۸ȢuQ�[�����5�����]W�)�������W�\\u0010A�P�CJ̏c�m�a�l�b�V�͖L�X���e\\u0002֥��꾦��i�>�\\u0001�^�<.C(UJ��#ʹ��\\f�68�%K�r��\\u0011oƺl9\\u0015H�s���\\t���+t�t�+N�%d��jг\\u000eY�J������0�Uf\\u0017�@E��C\\ts�rQ�´9>��ڷ�����\\u0000��\\\\O~7�X�>\\u0014��.\\u0015��\\\\�ƽ��Y\\u00109^\\\\��Z�*�9d\\u0005U���f��^���-\\u0001�\\u0000�ª\\\\\\\"S��C%���\\u0004��Rr���]�B��i��\\\\\\\"���m}:�h�h�\\u000e����� u\\u000e�\\u001a#\\t�SH5�\\u0017\\u001d�>ڟ;X��4ݺ\\u0005Fu��\\t��A�E���\\u001c���&�0!W��Uch�\\u000b�V+D�ed:;�x�ap�(l��\\u0006\\u001a̰J� ,\\u001b��l|���P�X��12K\\u001ckvmlmzI��\\u0014E��(m�\\u000e\\u0007�\\u001b�?m���Jٵ�\\u0000�Uxs��}�\\tԁ~����XZ�zԇ\\u001f�?#o\\n���U�\\u0001��ۭt;U���z�Ba)��ɵan�$���\\u0013E\\u0007J��yN�\\u0019Q�W���\\u0007c��a�}�:B�\\u0000[\\u001e1�����,=ť�$��9.�Sr��)����\\\\�F�J���\\u001e\\u0014:�Yģk܊|Y)���H�A�\\r��)h��u\\u0017���\\n:\\\\�%���\\u0005��\\b�Z+0�\\u000e�*\\u0018�<� �\\u0001�\\u0016�\\u0006@.\\u0002�\\u001fbyo�Xc��J��$���R����y��+]H�Ҷ9x�\\u0002\\u001aǮ��j@�\\u0003�\\r+E`.\\u0001>\\u001aS��$��\\u0016m<�ֹ�,��.�l\\u0018�\\rқc�<$�)@\\u001dw�\\u0002�����g���#��<���?v��Xf��u�X������\\u0018g\\u0012,��,�A?ʔ�^�r\\u0005�\\u0011\\n�@��-QZCkg�s�G�?4o�? 4T�k@K(�}�?X��\\u0004��>?sIb+)\\t ߠ>b�ʞ7\\u0017�\\u0018����\\u0017\\u001b+E��O���V�Yq���f�G[��\\u0018��&�Y�ʁwgnM�0������5�j7D�Y9U�'�\\u000b;�\\u0019�Ȱ�7�\\u000f��P�U�Վ�H6\\u0015�w!�����}��!���a��y\\u001bF�t6����PY):N�#�?t�\\u0007Ɗ\\f�#(P���\\u000e�t\\u0007i��o�ak�Z*K]��5�FM��\\u000e>�;,�T�(�\\r��-���FG\\\\\\\"���m�ZI�2rW\\\\\\\"�)\\u0006�Xߋ\\\\�}�!�xyH�\\u0000\\u0011�ܕ6\\u001f:��HX\\u0010M�\\u00008�Z,�U8�c{�k\\f��-��\\u000e��hi@+Y?`Y��$\\u0003B���@p��zsJ���Y\\u0018���n?�\\u0000Q�fR��\\u000f�\\u001b|�%a��_�h03=ˈ�\\u000f�\\u0016�1�z����v\\u001fH\\u001b\\u0003�@\\u001a?nY�@X��w^��h��2�\\u0012G\\u0018�\\u0013���\\u0015�$\\u001b��|�y^2��\\u000e�ϥ&�i�D\\u0017\\u000ff\\u0016�1�1�V���\\u0000��sֱ݅�zm`I�4�a�ΟR1��/�\\u0013\\u000eB�7\\u0000���m\\u0001#�z�D�PI���\\\\\\\" �\\u0014x\\nH\\u0018D\\u0018�?.,\\u0007\\u001bo�Z.\\u000b�G\\u0000���cHP0\\u0006�ډǝ���Ά��mu�.X\\u0018��1�r>U�M���xߨ�$�6��hw\\u0015lOm��\\ru\\u0004t\\rMZA�\\u0014�0I��<�{|��'!�Kg;q$\\u001f��e�9!U��_�������1�\\u0014�L5�ŕI��G�R�1g\\u0001��\\u00134{�rK~c{�ѳ�P��e#�z[\\\\\\\"\\u0018�87��a����\\\\5���O\\u0011�Sj��9\\u001aA�$Y\\u0004��\\u0001[�E�}�Z���\\r�ط�TZ���\\u000bB�\\u0000��\\u0002��1�<����¯�'\\u000e��\\nYAn>\\u0015|� �Rh�gՔP�\\u0018��@I�W\\u0000\\r\\u0006��B�&k4��\\\\\\\"ݮ@=>tV\\u0014�\\u0012RB\\u000f�Հ�\\u0010\\u0006�ׁM�i�a���\\u0011�\\rɵ��±8�\\f\\u0003XX��hzk\\u0014�:*�\\u0002l.:�O]CAl�rq�*�GPj�M�\\u001amDO�/��\\u0010\\u0002\\u001b��4�r\\u001d]���w��]U��\\u0002\\u000e�\\u001a�,���\\u000e��έ\\u000b���/꿩|*��Y��U\\u0006�xTr���p\\u001d�Ui'2��,@�\\u000b\\u000f�ǭ\\u0017��\\u0015#K�Ee�\\u0017$����#�(���t�\\u0011E\\n@�nL�0�齯����$�Ce���9I\\u0018�Խ����\\u0003\\u001f1^���(�\\u001d\\u0005X\\u001a�3O+J�\\u0016�:\\n\\u0007?���\\u0000W��\\u0003\\u000b0�;�@\\n9��'A�\\u0013��(�n`�57%O]h����\\u0000��`���� \\u000f��\\u0000g��bR�]�܁�ʶ��\\u001bk��\\\\O�����\\u0018e��i\\\\\\\"�G_3R�Vԯ \\u0012M:b�\\u001a�=N�xR�%�8�LȾ`��G�Euǘ\\u001dVƹ�֩9D�\\f�0�x�e�nl�u�\\u001f\\u0010i��Q�<\\u0013<fɫ��O\\u0013�\\u0014���2c3)�\\u000fO�\\u0018d�U?�&�RX\\u0014w'�i�dp���\\u001f���H\\n�@��a�op[����\\\\\\u000b�\\\\\\\"�\\u0013����5�vI&sC}\\u0000�\\u0015�<n�\\u0012�@�i�(E!zZ�I\\u0002�Ͼ\\fؤDS�?I\\u001a��2($�\\u0007�;��\\u0000�Go��\\u0006��HB/qjR\\r@��U���e6`\\u0006з3�Ҥ�:H\\u001a�O\\u001f�W�#�\\u000e�ڵ�V��\\u0018�\\u001c3�Vf�6X��P\\u000bݯ��G��X���x��\\rX0\\u001a�����ۙ\\t\\thƗk�:}��\\u001e�;��\\u0005�7\\u0015���e����b��6$�\\r\\u0002��d�\\u0000�,GJ+?��z\\u0006\\u0017��c\\u0010�\\u0001\\u0003�ԽMV�Y�\\f\\u0019�k6'&�\\u0014\\u0019�cv��/�\\u0001��X$j\\u00036��|o��i!�ѭ`P���J��<��\\u0005�nOS�I�\\f�>V!���T��\\u0007�~5h�q�\\u000b\\u001f:c�\\u001co\\t,��#�\\u0015uR�z��]A�\\u001bQ� �٭�\\u001d)�\\u0018�횊�!R�H*-qj۹b�G��\\u001cH�\\nت�w\\u0014�\\u0018j�z\\u0000ܚ�A�ζ�R��q%,81�\\r�\\u0014fK��{�O\\u0013�ʓ\\u0002A�6>\\\\\\\"�d��\\u0017$\\u001e�5.��R�\\u000fV\\u0019�]cv\\u001e!I\\u0015ei� 8eS�F\\u0004_����.D��g��\\r\\u0001�h���\\u0000����\\n�bu����\\\\\\\")�\\u0004�\\u0017\\u001a\\u0003m)v|ʊ�u��<�P�\\u0010��҉c�M$P�\\u001b�j+�\\u001b\\u00079,����\\u0015:��\\u0016�\\u0014Ok�3�G��\\u000f\\u001a��;\\u0013�TXaQe@\\u0001�W��O��H_r�\\u0016\\u0019�ư\\u000e92�@��i\\u0014�16�zT�\\u00034`���\\b��_\\u0014P��\\u001a%�\\u0005\\u0002�I����N�av\\u0016K�\\u0002��bW��\\u001b0�@�2s��Ƒ����eg���t\\u0017&�c�9rRl���rK\\u001f�d�X\\u0006b�T�s�\\u001d*Z�h�B��Y9\\b�v\\\\\\\"$iXj�Ac�6�����<j��Pu\\u0001�+|��l7\\u0019�\\r��_�Ӭ��\\u001cr{gY\\u000f������\\u0002���\\ntS\\u0004�\\u0002��]��DB\\u001f펟Ɯ�4`�훀���GK҆$�'zt@ʖ�\\n{�\\t\\f|\\t��\\u0011L��!f \\u0016�kJ���r�z6�T�bF������Tp\\u0016���\\u001b\\u00164�\\u0011��\\u001b\\u0004Qr|�\\u0005�A ��$kjf���\\b�\\u000fڋ��\\u000f�\\u0000�\\u0019�ٝE��e\\u001eGQU9�\\u0005\\u0000yW\\u0012��4�ҭ\\u0012�\\u001c��`V5>�\\u001d-ɹ\\u001b�޷dG� \\r��xbCam�֔9%�GPL�5=\\u0018^��˖\\f�15��\\f7\\u0006�I��\\u0002)�U�Bĳ�M�\\u0011���i\\n\\\\�@I@��[P�9\\u000b#���N�uX�1�7��<���p�.�����F��\\u0011��a���ǖA�-��hX\\u0015�\\u0015\\f,F��G��\\u0016+\\u0003f�Ҩ\\u0012�\\u0007��D�4\\u0012q��\\u001f*�<2cGÒ�_�\\u0019�~��דƕ��#X��:\\n��PS\\\\\\u001a�<�lM��\\n��\\u001f�TK�\\u0017��h�I1Ո�\\u000e�hxXD��)Y\\u0004\\u0011M*7\\u0014.�r\\u0005�k\\u0013$��\\u0000!�&%�ju\\u0016���\\u0004�b�`�\\u0001#�_\\u001a�\\t��$�C\\u0018�\\u000f\\\\\\\":��\\u0014'#�mH�_�)�PV5ܐk1�p��+�n�M\\u001b��}�@���\\n�\\f* �WQNJH蟹C�\\u0019X�\\u001f����$i\\f7�\\r�s�.�Zf(��\\u001b�\\u001d)���f��OO\\u0003J�4%�\\u0006��� (\\\\\\\"����w\\b�\\u001cM#)\\u0017�8��I;c�W\\u0004�M�B�9�AA�\\u000e�?mM�\\u0016�]#uȦ^\\u000e>;^\\u0019X�:\\u0006\\u0000���e\\u001e4�\\\\�j8\\u0011���Uِ\\\\�\\u0000kL\\u0019QL�0\\u0000�k�t�����Z\\u001bx���\\u0012|yp�\\u0018?�ꬷ\\u0004\\u0011Lp{�5\\u0010�ɥ\\u0000�ɿ.�'sp�;\\u0010m}��(\\u001a�Ue�\\u0013i��ff��i{���\\u001b���s�R��\\u0006䕻�<?��\\u000f��XT�ЂX;@�_��\\r�5�G�{��\\t!�fI\\u0005Յ�\\u0007�B܁`M�+��8́�\\u0018�\\f��Y9\\u000eA�-\\\\�\\u0000��~��Ԫ��\\u001c�]*�rq�v\\u001e�\\u0011\\u00126+�^�����!\\\\�I9\\u001b��`A\\u0007ﯦ\\u000bZ�j�\\u001crܸ\\r��_�^���ֲ��Y���5r|�9��P�Bn\\u000f^[�9����\\u0000�\\u0019\\u000e\\u0005��-z׿�����\\\\\\\"\\u0001\\u00196\\u0016\\u001bo�,�7Ud7\\u001dH�^�UoUf�1z�6Í���\\u0012M���1�Bǘn����x\\u0011�\\u0000�oz���^n/�_\\u001a\\u0015R��\\u00107�]�>�\\u001c�;0�+\\u000e+�\\u0012��נ�\\u0017?d�Vr�y0�4_\\u0013��&\\u000fp8�$i'��\\u0010����.og�7\\u0014�(ه�\\u0003�;�z��v�BTv���V��`L���b\\u0011��.ŗ�\\u001euW�2F�V`����\\\\\\\"�\\u0000\\u0010h�39w\\u0007\\u0006^xҵ�.\\n�L�eh�\\u001aw.\\u0001Ѽ�\\u0006�4�]��N�v�)��\\u0011W���̄�cT�\\u001e#�1h�\\u0000);�*��ƶVMI�P�9�\\u0011d@�;\\u0000�\\u0001��k\\nL�Xܛ��\\u0000{\\\\\\\"2�Ϗ!����UD҃\\u0018`G�S(d�\\u0005����4^+c��F��\\u0015\\u0015P��\\r\\\\\\\"�\\u0000��7��ʎW#Z۸w?k B��6\\u0017�~��﯎�<RХf�3�Y�R��M��(|\\u001bƥ�z�u;��R�MʋҀy6��Ǯ��\\u0016)\\u0018\\\\\\r<j�\\u0000,4\\u0014\\\\\\f=���U%\\\\\\\"�\\u0000� ���7;\\u0011��\\b�珤6��t��q#\\u000eB��ֿ�\\f�\\u0015\\u0019��\\u0011��\\u0011�\\t�\\u0016��T���r��D�E��\\t���h\\u0000:��BG*�\\u0019F�6��\\\\,R�\\r�\\u0017\\u001a�08�3�\\u0002Y��Ћ~Gʏ=���\\u0007�]/⥇/��V\\u000eF0�2]\\u000b�mp~tW~��l\\u001fz\\u0007�@�\\u0003kyR\\u0005'8��J��\\r\\b4NF\\f�D�ߒ0Ն�|\\r.��;\\\\�m���ʒ�\\u0014F\\u0005\\\\*�\\u001e\\u0000��uÙ\\u0010�\\t����um�«��\\u0013\\u0006�RQ�\\u000e��M��8\\u0012J\\u0014�\\u0007-�/��v\\\\h\\u0019O'x��$�(��È\\u0012'r�C�VA���ݭ\\u0013\\u001c��Y\\u001e�sv'RoU��H����pM��\\u0000\\u001eT�5��4�J�\\u0000\\r�TS�ژ�&����h�E�)\\u0015ȫ�ҁ�9\\u0003��\\u0011��9�%���:ƺ��:;\\u0017\\u0013/+\\f<�b�œ����@�\\\\\\\"$���\\u001fi�\\u000b�1R. 1*4P-�Ժ�EN���rJBqo�M�mI��4�i^R,\\\\�a��{\\u0011\\\\\\\"�V��`�2�\\u001d��[�Jq��Q�mn57�bEqrjτ�{��}I���\\nY\\u0003��j�h�U�M���D�\\u0010�A�+�Ȓ��X�\\u001a�1��Z���\\u0000of�,^ܾ�\\u0003CbA��\\u001e̦D��+1e:�δ>\\u0010�;�p\\u0018��A\\u001a�\\u001a�YY��~��尸�Lc�c^\\u000b�0�Ύ8�O{�G-ū<EVV�\\u0001�n*�\\u0011����YF���k%'\\u0002�yB�[rbA��־�A�5�\\u0004X��a��p�,�G�Eq��\\u0000҅\\u0016\\u0002B\\u0000\\u001d\\u0005�EZo�m4��t��\\nr�\\u00007�YR\\\\�̀��v�.Ue@��\\u0000ݭ�ə��W;�\\u0007�\\r-z�[!K���a{j\\u0007Z���5,�l\\u0000�\\u0016`b�\\u000b5������di�\\u0000�5�\\u0000�ErM�\\u0015\\\\\\\"�nJ�y�\\u0011��G/��Z��a�\\f���\\u0015\\u0007o�tRA\\u0018Ћ�o��3qR\\tRh��,Y/p�:ޛKBkfԋ�����ɑ\\u001eV��`\\u0002\\u0001��\\f\\u001e�'t��e��g �nO\\u001bju\\u0014Gqɍq�H\\u00075 %�zZ���]p��n#�r��ڕ��]3�,��\\u0011�$ܘl8����\\u0016���ikxT�\\u001c���n�|yoZv\\\\��$Y=N�V:�t��dl�{�~\\u0002�4l�\\u001b������\\\\ԝ�'39�. \\u001bY��l)�p�)29Dy(\\u0000\\\\mz�\\u0019LO�\\u000b�j'$��I&\\u001c��ې\\u0002��˪����F\\\\\\\"�Pl?\\u001a�B\\u001d�\\u0010\\u0006��yJ23�\\u0012\\u0015�� �\\u0000�XƳ� ��:\\u001b\\u0013j�VWNڜ\\u0005��^?��I��\\u001e�4�)�B9_��?e;J�)�\\u0000$��\\u0005T���\\u0010�\\u0012�m\\u000fPw��\\u0016�\\\\\\\",��\\u001e)��\\u0013�z\\u0001]��9\\u000eב��<\\u0005���\\u0018�\\\\A6c�\\u0018\\t���29�ߌ�\\u0006\\u0007CX��G�'̚\\fw\\\\�\\\\|�.���\\u001a��m��m�*\\u001b{�\\b`sL�����{�n�\\u0017n�$�x�\\u001cZ0I\\u000b�̃� �9�=&�\\u001a��LgU��\\rA�]\\u0004�?��o�c��c�Z��\\nY��m�jzҜ\\u001c�ZS\\u0014��kY���ɭқbG\\u000eL>��H�\\u0015xX\\u0015Pܭ�N+EɞA\\\\\\\"%�\\u001e\\n�đR�a�U�\\u000f���%��\\u0010�\\u0003F%�\\u0017�r��s\\u0014\\u001e`\\u001eVۉ�\\u001f�\\u0019))�xG�����~��cdE�,�ϭ\\u000f\\u001e>\\u001dj\\u0014�OB��@?���\\u001d��$7���R|\\f�/h�^�4�&\\u001cĭf2\\u0000l\\u0005��.�A�9:��H��OQK��w5_�ت��hr����ovU!�E$X\\u000f�k�g�K�\\ts�\\u0002�wr\\u000e2��C�4���WIE�yD�c���5���\\u001b\\u0018��e�X�d��-��^��\\\\\\\"�V��x�r��$f\\u00151��˞_ʳ2,�2�iq�\\u0014�{\\u001b�74�o�4��|v�h�\\f��i��А9_±,�� Y~���4�FZb����\\u0017��)\\fڰ�\\u001a��S{�V5� <��d�.�T�O-\\u0007�ED��\\u000f�WA�\\u0004\\u001ae�3*/�nBē��QBK1h�@\\u0001\\u0007A\\u000f:�Kq��Z���(�\\u0017=/T��\\u001e_r\\u001b�\\u0006���Ua��\\u0019�\\u0017�J/�o���kU�D��#�<ldB\\u001c}V������% ��e\\u0017mT[�4��8\\u0004�����?�x�D܏\\u001f@����X�\\u001b.2��E��ɡ)\\u0010��\\u000f�j�\\u0017qx\\u0000G^q���Q��9�.�x:/U���!���NC\\u001b�5�\\u001dj�ۏ\\u0004�#��\\u0000���ͯ��Й\\u001d�\\b�$jK�=Z\\u0001@�0\\u0000��\\u001b\\u001f*\\u0002VCX�N�>�)�ק���Y�!�\\f�fw�1ԝ*��\\u0018\\u0007B\\u0019|F�\\f����\\n۴�\\u001b�)�T�8�6'ƚJ���e�l�W��a�\\f\\u000e��T\\u0012N½�\\u001b ݊X\\rw\\u0015���3{�>�,<��~����U�X\\u0010�\\u001b�N����%���.9k\\u00010�f\\u0010\\u0018G�:��?�\\u0012�d��c:\\rlA�5���\\\\h��\\u0015��!���A��\\u0000�1\\u0001�QGE��mi\\b�X�3�%�B���\\n[��d3~���j�����_�i\\t��]\\u0007�Uܼ\\u0017\\u0012\\f;Wp�XZ\\u0014\\u001f����n>\\u0015�t���b��A\\u001fP�\\u0003��1�<&��;�lO�\\u0012}J\\u0018�\\u001ev��e���\\u0003�K\\u0002<|\\u0019 [�\\f��a^H\\u0015�!�\\u0014I�.H\\\\\\\"����$`,�0\\u0005�z\\u0001�f�%� �9w҉���)8ʐ�\\u0006\\u0017\\u0007MG΀2�;�v�V�\\u0006�Wu��b���i�\\n����9i���ond(��c��_\\u0016c\\u0011���Ώ��[:�_����/�Q�rO\\u00106A���j��!�P\\u001b�oj\\nI���ΧDr\\u0000��FŁ\\u0006��I nO�D\\u0000��6\\u00017���tLN\\fQ�\\u00184���M\\u000b����D��'��\\u0002�($����.�\\u000eLQ�\\u0011'�\\u00167\\u0016�j�S}�v�\\u0014�0T�/'�ࡀ6�N76:VPa�Kq�|X�>4�7�!\\u0012��X�$�l4�J�:\\u001c�l��a-�ɱ�%6�˥�6�Wz��W�r��m�\\u0014:�vC��\\u000fʷ��l�*\\r�,[��U�� r�/\\u0012䟶��\\\\\\\"���\\u0007�ǈ'm<k797Y0�\\u000b�m�^��^ג��\\u0000�P�CG�9�\\u0000]>Z���\\u001b�x\\\\���S���x�����ݚpUi�g\\u0007<�+-�Z�~��$�g \\u001e�Ƌ�\\u001c\\\\\\\"�3�UbB�u�a\\u0006I�5\\u0003Rmu��Zm�#tr��'�Ӟ��`��_$\\u0013\\u001aYVį��v�\\u0015e�/`��ï�<��tŔ\\u001d?��\\u0000�J�)�\\r���ne!\\u0003����o���ϵI��O/r'�\\u0017��GC]o&a�7�X��.D\\r\\f�C\\u000f�=\\b�SV\\u0006�w�v�|ĕ��t \\u000e&ۊ�7�aE\\u001f��1��1�\\r\\u0013�q[\\u0012\\\\�w!�Q�\\u000e��j2H����$\\\\\\\"�n2\\u000fS9�����I&�99\\\\\\\"�#gR/��~\\u0015J}�;�\\u001b$�rF�K��:�\\u001a�x�O�\\u0001��íR�\\u0016P-�ʕ%(�\\u0001���i�4�\\u0012$\\u001b�j'�b�E\\u0016B�y.\\u0001\\u001b0\\u0016��J��te��\\u0003k�Si�S��q�+�q�'ceQ��y�<0�\\u001bR@����j���\\u001cyy���E\\u001dсٜ�\\u0011�\\u001b߇��\\u0015�F��\\u0019�NcYx�\\bQ�ɽ��F�7��?/R:Ӄ�q�\\u0000�9H��\\bd��Q�\\u0003��FZ��(&��\\u001f\\u0013��\\u0005͍��L*K7�;R�����M\\u0007���1��c\\u0004\\u0007�\\u001b�mbM�zC�e%a[�\\u0002��-R���<���l��)�\\u0014�7>h��\\u0013X\\r�\\u0006�ŕ�\\u001b\\u001a11��\\u0019���\\u0018�/��\\f�\\\\\\\"�qs���\\u001f*��\\u001f\\\\\\\"\\u001f}ۊ��z���'\\u0006 ��x���b�C��u\\nJ��|�+[\\u0018�*��\\u00065��d:�ֳ�\\u0007\\u001eĭ����\\u0000�\\u0017�4��ԝ�D�.�\\u0013�Y�i\\n4B��!q�z���-�NS�b\\\\\\\"��H�I6\\u0007�\\u0005yۢ>����\\u0014(�\\u0013LX�Z�z��7���f����/�3�\\u0000Q�t\\u0006wn\\u0010)�\\u0012Y\\u0007ԧu�,Ռ�J2�� ��SHI�,8�כ�\\u0003�\\u0014J�c�˯��F\\u0001@�\\u0016�yڰm�$V\\\\(\\u0002�u=5��Kr\\u001dq��O������G'�\\t>2䲇\\u0005��E[\\u0006�\\u001e\\u0017s��?Q\\u001f(N�A!��M��*�8�\\u0000\\u001d�,.A�ƨ�0��5�F��q؃�V�I63�L�\\u0001�%\\\\lA��\\u0000Q��\\u0000T���R\\\\����ш�UN�=�Mn\\u001dMY����:�oY�q�¨\\u0017޵�y�����Y�\\u001a�)\\u0014B�8�\\u000eF�\\u000f\\u0013G��m��\\u0005y�!\\u000f;9�\\u0000�\\u001a|M5d\\u0016��uiI�:�b������\\n�'\\u0014�\\u0003\\u0003�N��\\u001al�X�\\u0018x�[b(M�\\u0002b�\\u0019��\\\\�OңsV�\\u0016\\u0014\\u001fN�\\u0013Y�,������<ņ���oRҪZ\\u0001��c��\\u0006�7�_\\u0014~���~��\\u0016��;a�<����\\u001a�\\u0015[��\\u0011\\u001fs��O®Hh&\\\\S\\u001b\\u0014c��\\u001f�P&\\\\\\\"\\\\�F��S%Ȗe\\u0002Q��Pc��U&�\\rh�#EK�x�í5���� �c�#�����\\n\\u000elI�\\u0016*x�\\u0000U����!E�\\u0014E�\\u0014\\u0001�\\u0015I-���\\u0004��\\u0010>���\\u001a\\u001a~�\\u0003���2<n�����\\u00166�\\u0004��I\\u0014�'���o\\u001á\\u0006�ϸI\\u0004R,��]m��\\u0000\\u001a\\u0016G�P\\u0019\\u0005���ơ���&\\n�#5�\\u0003sWe�^ߍQ�R\\u0003H�\\r�\\u001bxPY?��^!��U6\\u0014�LL(a%���\\u0016AIr�\\u0012i|��\\u0006\\u000b�4f����\\n;\\u001aig �����xޓ��oM?o���n�~��\\u0000*=�bت���g=o�/�\\u0003\\u00063a\\b�~?ΚH֠��\\u001a� h�\\b�\\u0017�x\\n%\\u0017+#\\u001eC\\u0014܊�&2O�Y\\u001cI8{���xyS�G(�S���)���c�2��rp\\u0012\\u001bm�E�\\u001d+d�(��<��-�V�=��ڱԚ�,a&�چ�\\u0002~I\\u0014�@(�Q\\u0011�-�R8��\\u0012-�P싊}gC�X8quڳ�s\\u0005����ph\\\\\\\"\\u0001ݤs��b@�p������s����rp�A�U�f�\\b���Uו�.(VKQ4�I'��\\u0003���&\\u0018��\\u0001�F�j�Y��\\\\\\u0014:\\u0016j����\\u0016\\u001e\\u0015�\\u0011'�\\u0015@��O��1��W\\u0011\\u0018�c���\\u0000�Ƭ�)\\u0016�z?���M<�zX*�>D�\\n�a65�\\u0003�Oڝ�\\u0010.Hl����\\u0015[�*֭�#�ɿ��S�#�\\u0000��ll���S8f�f��)�\\u0007\\u001d�jGۢ�^\\b2c���ަ����\\u001f�\\u0016?l�\\b���,y[R/�\\u0015�dƲ��\\u001b}2#)�\\u0010E.9�!�5G�m�Z�\\b�;�fH!��C\\u0015O�\\u0014��P�i,�,�Toa]^l�9�$`�^�U�g�f�\\u000bF����(V�\\u0003M\\u0019.NB�u���`��Ƥ��2��IY��\\t�J\\u001aI����`k�_rI\\u0002�%z�lF��(��vRH\\n\\u0017O�\\u000f\\\\\\\"\\u0011'\\u0011�;\\u0001�I\\u0001@\\t6\\u0002��S\\u001cn�\\f�+����t�\\t\\f�b�_ �#@\\u000f�e��Z$_�r�)��3\\u0003�\\u0000lx�\\u001b��\\u0005�D1$Oe�\\u0012\\t�:�X>VL�\\u0019�v#bX�H��yYy1����\\u0001F�_��k�\\u0010s\\u0000(�zM�Ґ)��g����\\u0000�rkĔ8���Z�Gh�bH����{\\u001e\\\\\\\"�rUb�\\u0011�����yx)T���\\u0005���yUk\\u0019�$�A:\\u00005�,̺ ש4��%V�#V��g\\u001fP7\\u0016�8\\u0019��\\u0002�<��׏-\\b�\\u0014�2c\\f\\u0004�a�\\r�U�f��ǆ]\\u0004�5�\\u000byzu���Z��=�\\u0015\\t��\\u0018�w\\tT���BA�\\u001ef�\\r(^E�Lnǩ�����\\u001bS����i`�ApΊ��@42j<�\\u001d�\\u001e�\\u0003e�pW(�����\\\\�������[�\\u001d\\u0001�\\r��<\\\\\\\"A\\u0017�\\u0002�\\\\\\\"�U\\u0000�\\u0003�(.�1\\u0005fS�(�춦��i#���\\\\�3�di8� �66�B��%�\\\\\\\"��y�\\u001cL�8f�*v��1P(&���scb�~��6<dV�\\u0004��||+7d�\\u000bH\\u0018`�\\u0016�J_a}ifF$<�ȡ��ƚ@���y]���\\u001d���ծzPY\\u0010I\\u0013qa��U��\\u0006��}�\\b�\\u0000�'�Z:�b�YTX|�021��y\\u0000Bt��<|lj�d�$d:ߦ�ތ�\\u001b�B����X�X�\\u001dX�\\u0001B\\u0019a1�\\u0010\\u0015�����\\ng����B�Y�Qj���6i)\\r^ۂ+y��(�\\u0017��ȅEͮ7\\u0014�\\u001b,��0����-~*��\\u0017�0������J�(\\u0001G�\\r���?���u��W��\\u0014\\u0011�ʨt\\u0004�j�(�=�\\u0002��>5U&�!��zo��2dɒQ\\u0013}c��o�F�k�\\u0012��P�Pl�\\u000f��Z\\u0016��]z�I2F\\\\b�߈��)�)Y1c\\u0001�!\\u00006���i�2\\u0019Ci�q\\u0007B\\t�u\\\\��0X��{�x����μ�\\u000f����\\u0018�_r\\u0004�GpT9R\\u0005�p�����C,��\\f�*��v\\u0007CD�d0�\\u001f6\\u0003��m�R/a�/��u�m}|���q��<��\\u0000�h����\\u0004�<�,RKxX����\\u0017�\\u001e\\u000b\\u0012~�\\bֺܰ�ԃk~_\\u001a\\u001d�W*6���\\u001bx\\u001aJ�M�r��9�e�4pLi���K�bʶ�'}u��G��B�#k��\\u001e���\\u001f\\u001e^N�%Hکڻ\\u0004\\t?J��t�\\u0002��(���V\\u001c���[yQ��1+\\u001d�����I�#�2��\\u0006f�\\u0002�}l}*?�\\u0002hnqT4~�\\u0017IM�#C\\u0003�Z�:�\\u0015~J�B/G�\\f|~�,n�̱�bc����Id�ԗ+.L������q�ak\\n�/B�\\\\\\\"�\\u001b\\\\\\\"Cq\\u001b��������ڲ`c��0�ߔ�j��$�vL@���v՛z�u��0Vx���c\\u001bX[FP�V�5�=L�ȕ���\\u001dkXV3s'�[V\\t0�p\\b\\u0002�\\u001a�j��y\\u001d�#n�TeW.}GP���\\u001b�jKT18NL-�և��PE,��V1�ƶa�H���e\\u000b�I\\u0018�r~�~tKJJ�\\u0005Veh�;��ۭ^h�Z����\\u0014��Ӊ[�Z�[\\n7\\u0004���\\u0006<�\\u001d\\u0017~�5�q(���\\rA\\u0007j�\\u0010G��*��\\\\ҖT 9��r�\\u0005�*k��\\u001c����n���Zp2'v��!l\\n��K���&�K]N�:\\u000b\\u001c����4�S\\u000f��N|���/���]�c�\\\\\\\"nM�y�d�y\\u001d��P��4B���\\u0013�$ӈ\\r��\\u0016��ڮ|\\n\\u0002�ƌ٦\\u001e��iZO��\\n\\u0017\\u000b�4��4?�\\u0005�+j\\u0015�m:P�#u�z���T�t�Z��\\r���`fOI\\u000bn��`Q#v�m{\\u000fW�\\t��H*ǯ�O*��I\\u0011���k�5q�͵\\u001d\\r\\u001d���.\\u000b���IȎ�p��5�F]�\\u001a\\u0003ץt��\\u000f\\u001b�>R��E�-�+�Y\\u0015\\u0000���4�8{�E�\\tѹ3|mZ�\\f\\u0002>t49�\\u000fDj\\\\��\\u000f��3L,��_龔�h\\t�\\\\\\\"S\\u001a��n#Ώ�\\u0002\\u0015Q����\\u001bk^aB\\u0019�%�1<\\u0007���B��$)��E��y���������/\\u0001�)�p\\u0016�o��k�T.\\u0019��\\u0001�\\u0002��\\u0012�#!|��Ճ1�V\\u0018ǒ[��>TT\\u0000��m��e��<\\u0014�\\u001eߎ��+_�\\\\\\\"���`�c�\\u001a\\u0011{��\\u0002�vg\\u001cG��Fu�.\\u0013�U��\\n׭ʖE���ۑԐ�\\u0013��mAπ�\\u0006<�(\\u0004ۭ�ɻ�\\u001c���G��PC�� �|\\u0019H�A�5i���p�4�4�$���O�I�[u�JOȡa��)��\\u000bȭcҎ���\\r����V\\r}�\\u0011YIfnl�F�\\u0013C�VSz\\u0010�w\\u0002����\\u0018y\\u001a�\\u0016dS����/bjm8�,�7\\u0016Qr\\u0000�z�\\u0003��>�,�ܭ�rOݵ\\u0012�\\u001a\\u0001�\\n\\u00126��d�V�C�l\\r4fW����|(��\\u0016H�>D�����-A���xa��k\\u001eD��cL�\\u000b7�z��\\u001e��+b�波�\\u0010\\u000b��t=\\ra\\u0003dJޛ\\u00107Ҝ�\\u001ceʖ$?H�O��4���\\u0006|R�\\u0019\\u001c\\\\!�S��5-��bJZH\\u001c�G\\u001b�݀v�U�����w?��\\u001a6\\u000f�>5\\u001e)�r�m�MHZ'\\u0000\\u0019\\u0019�\\f�B�\\u0014ٛ��\\u0002�l���b�M� 7S֏s\\fQ��V.\\u000f.b��JS\\u001e3�\\\\q�6�\\\\\\\"��\\rՕ�%!��EQ�\\u0012)U\\u001c\\u001b\\u001dM�+,L)1��\\\\\\\"X�W��|yf�UA�\\u0016�҆�\\u0002�X�5��t���\\u0000����\\u0010ۛq�|j��o��b�}������\\u0013f\\u0019\\u0017R-�<jU��[cvWX����\\u0016wܖ��fT|s>:��6�[ԃ�[���1�1\\t\\u0001��r\\u001b�\\u001a]��i��p`r\\b��U�ht�*�ޘk_�!�\\b�\\\\�\\u0002�I�M�S*\\u0017!�s\\u001b��ZO���ؒc��\\u000b!M���A���\\u0005\\u0000��6V\\f�؞�\\u001a�Ǹ�l\\u001e��\\u000fCX\\u001dt�\\f�daȖ\\u0000�\\n��M�\\u0017)<4_\\n�\\u001a \\u001cr:�V]�W\\u0012]r�?�y`]r\\\\\\u001f�PLD�,yr7c�j�D�rr=@���4f��;���\\u001bC\\u001e���{0[G\\u0012[��}OAZ?o0M�iP���οԵ�`A��;g9\\t�f���so`�\\u000eYR�e'9&\\u0016)��\\u0019�U?�֩�\\u0002JE�0��T\\u0002\\t�h��{�\\u0011�)�Jڲ����j�d���q��P\\u0011f�'�QY\\u000f ��1*�\\u0006\\u0016��\\u0016�7�Y7�S��'ĺ;���!��v ֱ�\\f���,[\\u0003{yP��R�[�R=\\u0003��\\u000f�[\\u0014Dq�����u���\\u0000�]i;BM��O\\u000bC�cT�\\u0002m~��\\u0002wSx�_0m[dI�\\u001e'q�Pʷ�q��-$���[�V)^���=F����D{�*�`\\u0007ʦ`pf���+�\\u001b\\u000f\\u001a$b�$\\\\\\\"XIq�_B�����X��۠So���5���s- \\u0002h�R��t䮚V����a��<����\\u0005��Z)\\u0004�\\u001b�QUY��Vc\\u0013\\t:�\\u000e��^@��\\u0016��ԛ��Ǭ���2��������~��\\u000b&y����P\\u0007�yҥ���*5gb\\u0000��C\\u0006\\u0004x\\u0011�#�[���%>?�5����\\u0017\\t S�\\fd\\u0018�\\u0006cEA�d\\u001c���\\rMf\\u0018\\u0019\\u0016�.h�\\u001dV7����\\u0003��zׯ5�d���j�*�\\\\r�B�v�Bj\\u000b���a��\\b\\\\\\\"0\\b��-�\\\\\\\"FC(:YI�V�k\\n�����۷ss�F�[nG�B��E~��y\\u001b�\\u0011\\u0005ޢ�:�U�5nm��l;\\u0012\\u0019�7\\tJH5U��\\u0000:\\u0016\\\\����=�:�c��\\u001c7�[�b\\b�s��)4q�՜��O��\\u0000\\\\�v֠$mR>R\\u0002@�z�\\\\\\\"iE����<FM\\u0015��+��«,�\\n����+h���b��ʎ���\\u001b\\u0001�Q��V�@&L��\\u0019�\\u001c�S]nTy�؇\\\\\\\"\\u001d#PF��]\\u0016,YPH\\\\\\\"\\n^\\u0017\\u0004����|�~�RE&:��p�\\r��-</U1��\\u0011\\fҧ9A$nMo��&K�K(��\\u001d\\u0000��K��$z�7\\u0015�\\u0003ҭ�\\u0013*\\u0010��\\u0013ck�˂�I��X�xH[��װ5�w��״��'�.Fh��T\\u001e��T�y��\\u001c�\\u0012M���͡����p�u�\\u0000�G1���WֲK{�G�Z��Sɍ���\\\\\\\"`Ć�V��v�$���\\u001b��\\u0003\\u0016��\\u001b[�B��\\u000f��-iG9H����]l���\\u0015�Q�s�;T9\\u0018\\u0011˔\\u0019�K��0�l�\\nY��\\u0000E\\u001b�XjW۸v,O#�c]Ft���e�-�Ihץ��\\u0002���xˇ��.��MOck�[��fB�l}�1B0+�\\u0006����*�0acI�ݖk\\\\\\u000eF�t4'a\\u0011c���\\u000bq\\b<G[����W�\\u0018r�eN�e;���\\u0006;\\\\\\\"�(Ҋ��1Y���gw�z�/�{\\u0018�1��u\\bm�t\\\\\\\"��\\u0013�����,\\u0003��r~\\u0014�Q�\\u0004l��R�3�:\\u0010X�1c��Y�[k�V�\\u0003\\u001f -}@�;Q\\u001d�8ݜ�@-o:Ɩ�&�Q���`�H#E�\\u00041�\\u0007�ʰ�\\u001e\\r�Q{oN�0��&P=G�o�/jY�\\\\\\\"�(�\\u0005,GK]��h�䇌�\\u000f�\\u0019P\\u0012\\u0014X\\\\ډ�,P\\u0000�\\u001f�]*>\\u000eD\\u0010{��J��ְ����\\u0012}��N��U�\\t���7��a��K�!�\\u001doC�\\u001cP��kpt`(Đ���\\u001a��%̋��w����l��p\\u0006�\\\\\\\"L�l\\u0002��\\u0014y���\\u001e���hY�\\u0011J[�#����A�M2�;Xxmj�;n\\u0018��\\u001a�$\\u0005��m�\\r�keQeۥ)I�\\u0004A\\u0004�LUZ�ubmZ��%�y;)\\u001bi{��N\\u0016\\bK\\u0010\\u0016���'̋�٧�u�T�..7�y7�\\n�\\u0016�29Kj?\\n��/Ҷ�\\u00192l!`�\\u000fT�=Zt\\u0014\\u0012�Ll�+r[h��T�4YZ2��/�m��egD�c��[\\u0000\\t�ʰ���\\\\JA\\nW���$PZ<�����Y�c��\\r:��Ē/w�w�����)K4l��㶇SZc�͍?�\\u0013�et���\\u000eၸ4�u��x�vN\\f>��2]n\\u0000ԞCʀx\\u001e\\u0012\\u0004����\\u0006\\u0016����!w�h\\b��g]A'�W/���Gň��OPj��k�99�\\u0000ȼ��j�Ġ\\u001d��@��E���W�\\n�'kP��\\u001cY�9��pH[\\u001d�iĬ�\\u0000I�\\u001a\\u0000)$?�G�����7�����2,��\\u0004ꮥ\\u000f��\\u001a\\u000e9�Dh�bM��Q�:\\u001d\\b��\\u0007܅eW+˗>�\\u0013�M�\\u0004�ԟ��1�s2\\u0006L��R\\\\\\\"��\\u0006>���q��a\\u0003ލ̑q,\\u0018u\\u0000W)\\u0013\\u001cFYЏ�c�%\\u0007i#?P�\\u000f��\\u0018rM\\u0000\\u0011�\\u0015�\\u000bݔ������&���'t�f�)gPU$�\\u0000w��F�v��5at>*m�\\u0007��\\u000fKS<l��\\u0000$\\u0005_�ԭ�\\ry\\tǎ!�\\u0003��w�S\\u0017+���c��Զ��\\u0001��ZI`���M/X�Q���[�O��Qe�\\u0003���~I� ���\\u0018x�#�)\\u0005\\u000f���}�\\bG)���NG�S\\u001c��\\u0010�z�\\t\\u00114�������0@Ϳ\\u000b_��\\u0014�E���l��\\t\\u001c�>\\u001fN��!jC�\\u0000$ ���=P��_��K�t�\\u0006�Icmf\\u0016Y\\u0017~6�ƛ\\u001d^\\n���d\\u0015�\\u0015\\u001e�\\u0001M�U�\\u0018��1_���?;W_\\u00167\\u0018\\u0015��) ]������0`ϕ:��>\\r�\\n�s�]�\\u0001]�qd���MyqJ�ПCzH�ۛ�2�A<���\\u001a{��<2$��.8�����Q>\\u0002��\\r�MH��'�'��(>��\\u0010\\\\\\\"a�.��\\\\\\\"i�*��5��\\ty�o\\u0013r(��m���$\\u001e$��� څ�W+�$M���<���(��6\\u0006���62��z����\\u0014���sbm{m��߾bǋ4k\\u0017���xkJ\\u0015[�\\f~��#Ɠ\\u001a)\\u0004�\\t�\\u0012x�\\r�4\\u001fv��\\u0013[@X}�� �`�n<\\b�^O\\u0014R����u�\\u0011֖�b=E���\\u0000w'SL�@��\\u000b\\u0013�\\t#�V\\u001e;Q) �]\\ba�END5C�.9\\u0016� $�\\u0011Y���<l\\u0000\\u0014\\\\\\\"�\\u0000�u޴�9�Ψ̈u h*mLIU��\\u00156\\u0017�X)\\u001c��ږE���\\u0012\\n�aj�w\\u0015ĕ�\\u00030;\\u0002\\b\\u0007�jR�\\nm\\r[ۋ0�>���W�VI.Ms��dK�r�Z[�m����\\u001e��\\u0019Ah��z�b/��O[J��,�r�Y�y�X�gm�O\\u0013X7p��_�\\u001f΃��i�\\u000b\\u0015A�\\u0007BO�S�قL�\\u001d\\u0001�\\u000bVx�젤c�\\u001d�E����h���\\u0003�±f��j�\\\\\\\"F\\u0016\\u000b�J��|�gm\\u0001c�5�\\\\9\\u0013�Z�P#��1z�h\\rZS,��ӫ-�\\u0016\\u0015D2ħ�B\\u0007��T���\\u0006�G\\f���A\\u000bs{mJ�X�Sd�\\u0007\\u0015�\\u001d�SBM�8��<R�y\\u0010m\\n��P\\u0014�rh���6\\u0014\\nfc��U4@��G�X�~\\ry/#.��%�IՀ#�M���sqH�H�'Ԧ�N�G�����ּa$�ݥ�����u�\\u0019�m���\\r���\\u001b�(\\\\������\\u0000o���Ъ�A(����\\u0007�.��d�}�\\u0003k�ָ�9�J�\\u001e;2\\u0011�\\u0016R<�XS�s��\\\\q���}����\\u0006�Y\\u0003\\u0000�i��\\u000f\\u0003V����U�f��\\u000b�1 �>\\u0000Ԏ5�\\u0002.ï[��k�\\t�\\n�(e1).R܏�<���@�����<R��I���)��x�\\\\\\\"@J�Ų�7 |)d���\\\\\\\"\\u0004�\\u0006\\u000f�,O�u��e1$��(#�)wu\\u0019Ɖ\\n'�c7�m��\\u0005\\u000f��2 �Df�}$\\rW��U\\\\jM�zl;[���R\\u0005�(��<z? �k\\f���T�Gc�`*���+��Q�\\u0001�)`\\u000f��\\u001f#�b�\\u000bs��VsLһH����P��b�8��v\\u0006�o*�NB�L�NQ��\\u001b\\ni\\u0016L\\u0012�X�k� oA.\\\\\\\",��j�a�i=`k@Gɗ�%��\\\\\\u001a�ds�z3'�I7�a\\u0016f�\\u001d�\\u0004��:\\u0019\\u00034bǡ#���F2�*X\\u000b���]��$�\\u0007�T\\u000f��\\u0000�\\r\\u001fo��ײ�����0F��\\u001e�~�\\u0000�\\u0010\\u00120pU\\u0001cz\\u000eI(�ɓ\\u0019H���r`\\u0005�\\u0007Z\\u0002X�O�q�BM\\u000b�l���\\u0004��\\u0016��)ҏ�<l,5UU\\u0005�d�\\u000b~&��\\u001d�����U�Ig�����ޚpKRf$S�ژa{\\u0012�%6F��xҸ��?�)w;.��0�D�X�Bu\\u0004��q�E��/�\\\\\\\"�\\u001eJ/��h�<'�\\u0016F�В\\u0013)�����PgB��5ԩ\\u0006�\\\\\\u001a���).��g��������\\u0013�+o�,K������22}˪\\\\/�ޡU��\\\\��F���ڴ�\\b�΃b\\u000b\\u00107��-��9����+%vIċ�޺$�#Wr��j�JX��g���\\u0017N���Y�\\u00157\\u001d)Z\\u001a��\\u001c�/i\\u000f�\\u001e��\\u0000\\u001d������\\u0004|fc\\u001d�Б�S8�\\u0000rv�7\\u0013\\u0013o\\u0005o�Xft4��#$��#K�\\\\\\\"3_�\\u000b�!�{����\\u0012���o\\u0011��;�ν�_�\\u000et?��R���F��x[����\\u001d\\\\\\u001b\\u0015!��\\u001bֵPC;<�i2\\u0014K\\u0016��vU#�\\u0016�.)\\u0016yY�,�Ġ,5���3\\u00180h����\\u0016:yR��\\u001c>ԓ���!�;��u=�Jˊ�7���K;4�7W���-+\\u000f3La\\u0004'\\u0011aaBq��Z�d�ҩ� �*G%&�\\u0000\\u001d-��\\u0019��2��\\u001f��g$[�a&\\u001f�Z�����\\u0011�w<i\\u0011�&1(ۊ��\\u0000\\u0012�/�Js�d�TX#\\u0011bǪ¶ю忨��\\u0000��4v\\u0012-���\\u0000�Y�kx\\t�( �Q��C\\u0003���W3H���<\\u000b�?�W\\b�M\\u001bj\\u0015\\u0014\\\\\\\"\\u0005\\u001b(��\\u0000X�\\u0002��\\u0005\\rH'\\u0003����cr/{�В��S�yq�\\u00198�\\u0000M�?*��H���\\u0019��jt�d��9F��\\u000f���\\u0002EȡYo!\\r�:���;�\\\\\\\"8��1�혓C\\u0011h�;($�z֕��'���\\u0000Ԡ�&�\\f\\u0015�>L\\u000e�Ń�b�A}��?��\\u0018\\u0011��\\t=����u��XC�:x�X�>\\u000e\\u0003),u\\u0007c�Zfn\\u0018\\u0003�+jiڻ\\u0006ndq���\\u0007����\\u0003��ҙP�#���T�k�j�m\\u001f�\\u0000��c��\\u0000�\\u001a\\u001b�\\tA����)�i\\u000e<�u���;x�~��(�\\\\wkJ�\\u0001e��\\u0006�w�\\u0004�R��,�����d�;��o�\\u0002��֧���X�T(L;\\u0011#hG��\\u001b�\\u00143ϐm\\u001cg�[�����G\\bH�0�� �\\u0002~?�~����T�|w���ǒ����\\u0010��B\\u0011�؀o�gn�Xk�}�[Ff\\u0001�{��8g#�;\\u0005\\u0016\\u0003�g�\\u0000+�ޕ\\u0016\\u001e:׭۲\\u0019���mYπ�:22z�����\\u001a��@잀��\\u001c�&�\\u0003�|�(C\\u001f5_V�5�xQ�u[ۨ&�hJ�_B44��%`\\u0005i�@P\\u0016C�\\u001d\\u00057��s�$�\\u0001��\\u0011�ބe#μ�˪�\\u001f\\u001a+Xb�V_�:|\\u00163�+�\\u001e༨\\r�-���\\u001f}W/1gƔ�ȋY���V$\\u0002BY]u�\\u0001�\\u001e�����\\u0014Y?��Eݔ\\u0002zkj-Ii�-\\u0005S�U:։+}_�#ƅK��d�~5��ϑ��d7�U�\\u0012\\u0015}�\\\\\\\"��q��r��?7������'`H��ȇ�wV\\u0004�CI�ȶ\\u0015�QK\\u000f�\\tPI�\\u0001��+��Q��l.\\u0001\\u0004\\u0011�R�D�zC\\u001e�Z�\\\\tY=�M�:kM\\u0003s��U��m�[c�*U\\u000f\\u0002w�\\r6d0�\\u0016\\fO�ҳ\\u001d�\\bΈ��C�Ҳ��^��\\nB\\u0003�u\\u0004�Y5��Ja���a�G=�O��~,<�v7�,v�l�OB��\\t��O\\ft�\\u0011s��<I�J�U�\\u0006�a�Gx��9,���zN�[P+ݣL�u\\u0015��\\u001a:e��o\\u0012 \\u000eC\\u0019ߨ�\\u0014���\\u0017���/\\f(��\\u000b��������/��H҆lYU:0\\u0017�Eo��0�'�) \\u001b2�6?\\u0011V��o��N�o<�?�K�ie@�\\u0002�����\\u0016B���\\u001e��u���F&Acb�vF>=\\b��6pH�U�YE�i��rk$�6d�9,d��\\u0013�Y�\\u0014�1�;�\\u0011dc{i��\\u0011bO-�k�\\r��礪'U�}����7�u�z���\\u0000s(l\\u0019�\\f\\u0007�<L\\r�\\u0000���\\u0000ɯm�G\\u001e$��\\\\\\\"�$���\\u0007P<~\\u0014��P\\n\\u001d�����\\u0003� \\u001d~����\\u001b�\\\\\\\"E`���l>ZV�ln(|9Q$d��MGR\\r\\u0014H\\u001a��ju*�,�vCI\\u0014q�@u?\\r�|>(/㡥�f�%P\\u0007Q��֯��+/\\\\\\\"�T����\\\\B)1��*� �Z�{ȼ\\u0002 \\u0016\\\\\\\"����w\\u001cK\\u0011�D�M)\\u001eңI��E�\\u0015\\u000e�\\u0007�#�\\r��W��e�������I��\\u0015i\\\\\\\"ɍK{d�\\u0017;h>�|q��\\\\\\\"n�����\\u0002���\\b�_s���ƹ\\nVN���ү�M\\f�����\\u001ap)��Ǒ��\\u00176ڂ�RL��\\u000e2#���oN1rm�؀\\u0018\\u000f\\u0011X\\fx�!�Q�m��H$�L�$�\\b�\\u001e�BMcc�\\u0002\\u0011\\u0012t\\u001dz����\\u0019\\u000e�\\u0014q\\t:Nۛ����[��r�5L�(��\\n��F�\\\\\\u000f=mI�R\\u0007���ʞ\\u0019��<��@��x\\u001a8����;z*�\\u0003�ҶH\\u0002�\\u0010��ǰ\\u000f\\u0014��?�V�ޱDfN\\u0012����5-?\\u0000����<\\u0019���\\u0001�cj�Dq�\\nړ�\\u0011����`\\u0018\\u0004�M�\\u0007��4\\u0010�Y�\\u0016\\u0004�\\nq\\b$%yB@��Ir\\u0003)\\u000b��^\\tS��E��*��)\\u001bv�?J�D����\\\\\\\"�v�@��\\u001e\\\\\\\"�C\\\\\\\"H���[QI��da���\\u0000�O٭!�@�*\\r\\u0014�����\\u0003����zuM�pk۱���2�Ic��\\u0016\\u0003�\\nbݱ\\u0002�Ɣ��\\\\\\\\\\u001f��$lɢ�F�\\u001a\\\\\\\".���\\u0017��h\\u000e����\\u001c�dr͏���P\\u0006Ǧ�������rv��\\nNْN�B\\u0000�v\\u0003ƙI���$p�\\u0004k�����\\u00142m�(\\b�lL��ƛ\\u001b�:��������\\u0004���bGZ�+\\u0005�H\\u0003\\u0000\\r����z\\u001b�$�\\u0018�����+ɸ�@��\\u000b��\\\\\\\"��#���\\u0000�?�X�u��4<���|ED\\u0016^Q�:\\u001d��\\u0005������\\u001e'®����b[��u��C\\u0007M-БC\\\\\\\"�o(���uSd\\f�~�4\\u001f:y�,sc��\\u0015��\\u000bj�:Hc�,XZ�_��X����-���uvXԞ\\r<\\u0013)R<�\\u00154@�\\n}\\u001f���\\u0004\\u001b\\u001d����l�M���\\u0006碎:h�zָPX?us\\u000b�\\\\\\\"'\\u0006\\u0005�]ƶ�0s��T��w>�Ͷح�\\u000bސ���r6��ۥ/�\\u0016yT�/�nԭT�I��e\\f\\\\9� �d+���+7��p\\f|Hm�\\u001f�ґ&K'���t�rGΧ�<V����E�\\u0007)�w\\u0018�Ċ4P�[��\\u0014m�I#���\\u0016\\u0004۠\\u001b�\\t\\u0017��iss@�K\\u001c��\\r�;�(bAY�/��\\u0007�V\\u001a��d��0���c�Y�\\u0017� Zճ\\u0000�Ƅ�#~\\u0001��Ǥ�\\\\\\\"���j\\u0014c\\u0018n���\\u0018�ɇ+mz�ƒ_�Q`\\u0006�jtc�\\u0002�\\t�@�q��)2�S��\\u001a�\\u0013��}\\u0007Z!�\\n��s\\u0005ziZr�J�n\\u0016M2?M&<h��IT\\u001bz����R\\u0018�\\u000e/\\u001e\\n���\\u0018�H�cqY�cbtRv���ۦ�y���\\u0003Z\\u001dڏ�\\u001c5�¬��&?�k��\\u0000e.?�c�6�y^�����\\n��H,4�h���\\u0012��4Ѐ�=2h\\u000fK�U䍭pt�\\u001ehe��:�<6#j\\u0019\\u0019�qmj-] �γ�Ɋ�)�3��@�x�b�\\u0005�ޭ\\u00006�\\u0013�\\t�Ǌ�&[���8J:�~�\\u0014\\u0017o��o��+\\u001a�@7�q\\u001b�\\u0010wfH�p\\\\��uܯ��[�`n���0\\fsL�,�\\u001a�]�kȎU���!�Qz\\u000f�w�3qV8��\\u001f��\\u0001���>4�\\u0015�{0߮�\\u0011�Q0\\u000b��+b��\\u0004O�L-!D77#�#���.>PU'�ח��/\\u0012KfbK[F$�}�\\u0014��fTor�hN��n%�e\\f�MT����,-1�\\u0014�<�fA\\u0004��QD��\\u0004��T����P\\u0000�\\u001fn�<�έ\\u0013z_u=\\r\\u0014��/1H�\\u0000>\\u000eB���nŝ��iP0]�\\u001eV�53Y�R8z��j�:l+���\\u001a�qd7\\u0004n\\b�^�\\u0005�\\n��\\u0014�c�7BET�:\\u0000�\\f���\\u0001e�\\u0000Y�[\\u0002GPԮhO$�}W��?� e{\\u001e�׹n�+�uk�ږ�\\u000f\\fs1(\\u001921�k{���0�\\u0000�X\\\\)?��4f9�0(�/_sW��/�UN�\\f 6Y\\u001c�/e'P��x�-;�`ޢz��a\\u0004�\\f�R�E�\\fы�7\\f5\\u001f\\n\\u001e�Z�u�\\u0012a�Ud_�F�k��yqPao׭�?#vN8��b�]x�+3�P�\\fs\\u000e\\u0017�M�\\n={xU���jN�S��]+���U�^RkUe(�[B7�\\u0014��(C\\u0015р43D2h�5\\f>���\\\\\\\"�ނLY\\r��y�\\u0015��4~ٌ�oB��l����F6a�H��^D�ƌ�(�\\u0006t��M�m������^�\\u0014,ag�O�]�ti�Y��z��p��v/7#r\\u0016A���ՖCI\\u0003�}V ��cz\\u001e>��\\u001d|v�ʩ&w�ܷ m���,�;%V�_$\\u001e���k]���)�~\\n6 l��\\u0019��\\rlN�E��'�#b�f-m-�\\u0019���04\\u000f�`u\\u0007��G�ں�3;=?���k\\b�1`V���e�'#����hO·�3$�Bx��\\u0007��`�DR\\u0010�M�\\u0015\\u001c^K�2� �Hʾ�oJ07!/g?��.�o$�F\\u0015c������\\u0000_����'�{�]u+��\\u001a�\\rp̡�cbFƈa&8�9\\u0011G$(�bqf_\\u0011�]\\u0017bŚ\\fs0\\u0016y�omB���s�mm_C�%\\\\x�ت\\\\\\r4��IK\\u0014�wd4x��\\\\����\\u000f����rђO�u��b\\u0012Hd�h�KM�� \\u0003a�J�nM��,#F3��\\u0014�~�T\\u0006�\\u000b\\u000f\\u001ah�v�'h��4��I MU���\\u000f�~\\t�5�\\\\\\u001b���\\u00139I�ԇY#(�|H�\\u001a��4�\\u0016b$|�D\\u0010X����C�Θ�\\u0017È��k\\\\�� @�\\u0007�\\f|���pcĉ\\u0014�#0u�nJ��X��8��OcJה��T�-�4�0r\\u0012\\t\\u000f=���\\u0015�5�����\\u001e��[N�\\u0012X�S]>ʶ8�62}:Ym���n6ށ�T�����\\u0000ּ�\\u0000�����\\u0004�m���\\rf�\\u0012b4L}W\\u001b���\\u0004�uH�[�ڢH\\u001dA\\u0006��J��=/UU\\b�i��N�\\u0000�+q���}���Q�\\u0006�\\r�\\u001c�C����T0���1��.Y}$t4\\u0001!�a��\\u0003f\\u001b�}�\\u000b�}��\\u001b\\b�0��(\\u0000'*mq��R7-�܎���;؛T �b,h�\\u001c�cΎ|UBB��,��Z�\\u0017}c,�\\u0003��aY(.l��Wh�'\\n��B�ۃK�C�RO�{ny�\\u0017�����[\\u000bX�q\\u0016\\u001cS'5f�϶��\\n\\u0017+\\u001e(��%�� ڒ�\\r�H�,F�o�*�\\f�o���[2\\u0011��hȰ��A8�\\r��u\\u0006��\\u000e\\\\\\n@V��ƴd�n7��icb쌫�����SBy\\b�\\u0019�Ɯu:\\u000bk{��dv(b^\\u000e8͹��yQ��p��c`#R\\r���]��˺C�\\b�I'w�|�Y�@��r�k\\n�\\fc�Q�P���D����b�Dc\\n�\\u0010�\\u0002�@�©��\\u0003��\\u001dX�4\\u0004\\u001d�@�c<dS�A��\\u001a-sW�6��c�_r���\\u0002ⴥ���\\u0016O`N�J�\\u0004�`m*g،SD�1\\n�\\u0010\\u0000&ܹ\\\\��\\u0019��,�*�\\u0003]6���Μ���9��M)GY�;V$�Y\\u0007��^���J��4��\\\\\\\"[��ڵ�器�\\u001c���q\\u000e��\\u001d/��\\u000en\\\\s�\\\\\\\"�\\u0005����\\u0015\\t=\\u0019N6\\u0002\\\\\\\"������yq��ny\\u0012\\u0000�iH�N����?�Vh��\\u001b\\u0003���\\n�[����cb�����7[ҟuqs�,\\t\\u0002�O;W�w\\u0019\\f�Ol#u\\u00174,�Y\\u001d��f74����:n՟\\u001c�:��3~'q~��d��?�\\b��v�W\\u001f%�܁��u$k�4D��6Dh�@U�\\f8��ʜ\\nA(�ߜb\\\\\\\"\\t\\u000f�����I�\\u0014\\u001aE#�\\nM_��\\u001dc?u\\r�Ĝ\\u001ds�,\\u0011�\\u0001�t�[�2͜e�l\\n-�5\\u000e~Z����\\u0005���Ճ���Ȼ\\u0011k\\u0001K���(Ǜ�%CX\\u0012I��\\u0011K���\\u0004��o�\\u0014ɢ\\u001a�\\u000bx�Ͱ�>���sES^�m\\u001d/홄}�.nU����Б�{Y�k��~4�\\u001f\\\\\\\"\\\\d1��B,T�\\r��ir.р�ܭ���;�_���\\u000f�\\u0000U�O�A\\u0001sn�z��\\u0000g��GƦ�i��)0\\u000b��*0#Զ\\u0017�JW��P\\u0000l\\u000bX�HLf�c��6Zp�\\u0016�}AGZ\\u001e�Z��c���l\\t*o�\\u0003����i�W��\\u0002<E�\\u0018�gu�u���&��m���\\u0002��[\\u0013�\\u0014�\\u0000�ZF_K\\u000b���v\\u0016L���\\u0011��/\\u001a\\\\\\u0011���+T�����]rQ��_<����pM�4��TL-\\u000b�2\\u000e<����\\u0004�\\\\\\\"���\\u0016�A,N�\\u000b�\\u0019\\u0013�ħ\\\\\\\"\\u0018\\u001bq:\\u001b�q\\u000fL�c�\\u000b�uH�\\u0002�\\n\\n���!���\\u001a�\\u0018�\\u0015u��^�$��$��-��D��\\bDg��4<z����\\u0006ba�\\u0001�ȹ\\b>�\\u001b\\u0003�o?*\\u000b'\\u0003*_��5�\\u000e��`�\\u000e�d��\\u0019�h�`I\\r�q�\\u00132X�dD%^�'�4C�0?�\\u0016��?�^�<R\\t#6u:\\u001f�O�ˁ\\u0015'�$\\u0002vQ}\\bЪ��eT�(�Ʉ�/��\\r6>\\\\\\\"�p�3R���۳0]�U�\\u0015IYFဿ��\\u001d�\\u000fvF��(�� �|q4k�[��ֶ��2��\\fM1qk �N�\\u0016�&�i�1�K�\\u001b\\\\�Ɩ��ɸ�\\u0007J8�e�\\u001ci���#\\u0013�\\u001d|t����)�a �P��!L��Ţ{�����\\u0000f��\\u0006>T��H]��ʤ�(Y�l���^>GNCK֭JI�918��!�\\u001a:3h=Ƹ\\u00176����P�*��@x\\u0016\\u0004\\\\\\u0010����b��x�%6��f?�ch�s릶�\\rz�\\f�Q\\u0019yq>�\\u0017\\u0003Ƃ�3\\u0016�į\\u0013~>6�M\\u001e��\\f�)U�NՎND\\u0012�ep\\b7Ԋ�EG\\\\\\\"\\u0006��\\t\\u0017ؖ�O���d�ѽ�`\\u000e�,�&V&9\\u0016��ڛQ\\u0018��\\u0002�f\\fX�-C��ơ(���v�Չ\\u0012�4��H@oW�/��NZT�k��R\\b��\\u001aF�K�T\\u0003��\\u001f\\u001a���@\\\\\\\"\\b�\\u001e��\\u000f�T�\\\\\\\"\\u0018�7_���6�\\u0011��sX����G.�\\u001f\\n�\\\\���\\u0000r�1�QF�ࢽ�I\\u0004̒!\\f-�H�\\u000f\\r\\r8�\\u0007LdX}�ӕ�h��mC�M�Y� }�\\r���G�\\\\\\\"�9jP�\\u001c�5�ޕ�>�(��N�kI�+\\u0006�G��mk�\\u0000*;eB>�\\u0001�ҖI(.y�\\u001f�ڊ��+J��U�T�a���uiU���N��R�cdk\\u001f��\\u001e���1`-�ֿΕH��1!t��jn\\u0004V5V�.\\b�20��$.\\u0018��t4QI\\u0017pV�W�'\\u0017\\u0001N�\\u001aI�+\\u001b���4Q�B6���\\u001b��������A�\\u0015��u\\f�V�DcB�rniFd'\\u0007C�\\u0000\\u001f�\\u0016/7��*���rifsc\\u0019�`\\f�G~\\fN�?���\\t����}%x�SưWh�{�mn;_JRǀb��e\\u0016��!�1#�\\u0004[αo�1�\\u0003ҷ��Lwb���\\r<��a(́:�d��/\\u001b\\u000f?#Xwd�d�B�\\rǑE�I>\\u001a�U�ͅ��\\u0018_ʃ�)%�\\u0012���Ե#��\\fs�����S\\u001a��f�a��&�\\u0011�c�R:ڬd:x�\\u001ap�*YX1���'�X�=R�I�\\u0010Sm:��:��\\u0019�J�#dsoP��6�\\b΍\\f�Z��+�\\u001a\\u001e\\u0018�w�o�I&'\\u0006��@�P�#9\\u001bX^��\\u0011�'陉RCu\\u001e\\u0015�x&\\u0005Oˑ\\u000e�0Ԃ6��$Ĥ�j�0,Җ[��}ꪡT(�PܠH{$���'>%��\\u000basp\\u0005\\u0005��\\u001c\\u0019O\\fM��\\u0000��\\u0012/a@��n }CkyQ2M���T\\u0016/𬸴Q���h���\\u001a/�ƒ4����h#�F\\u0017�1�x��\\f�\\u0018�j�N�h~5N��@�NY�Wff�'��CK�o�\\u0012�T1�����*m\\u000fuN\\u001f�\\u00048�C^M�`a�\\fO��\\u000b��\\u0016��\\u0017:�b�\\u001aV�\\u001a2\\u001b\\\\8\\u0017\\u0007�Qۛ������:��չ�7�f�9qz v]vR@�\\u0010],7�Ve�\\u0006&�VPJ��d��B\\u0005o��\\u001c�\\u0014��b-Iς���&�.q3F��6\\u001aVS�*�L���\\u0000�[�$�\\u0000�2��[�։�L��\\u0003��t�M�![O!�)\\u001b��\\r4ǚT\\u0011έo@,:7��k�ܟp�q\\u0000��Hp��\\u0001\\u001a)b�\\u0003\\u0011�4��0���b�bC�\\u000b���ʰ�\\\\\\\"YЀJ[[���у��\\u0004�]b�\\u0010���u�&�ԫu[ZƉ\\u0003��i�񩑍�\\u0002.v�8����ة��\\f!�3)��\\u0005���+P�5�N�m�h��=�[3�e��J@cbM���\\u001d�.E�e`�}D\\u001b_�%���.�H�Mkx�4\\b�,<E�\\t$���\\u0001���29\\u0004e�dm8�m]�\\u001c��q���[\\u001f���\\u0000\\\\\\\"�\\u0002��+X��5��>\\u001b�1jgާ2ɏ\\u001b>�#4�\\u0001#����}t�i�b���ӷ��+����\\u0017�,\\u0005�T��H� �v�>�k\\u001d+<\\bdƒ�\\u0005d��_Ɵ�\\u000fC��\\u0018�D�c\\b�I=\\\\�\\rF�\\u0014�\\u0013��v�f�PK\\u0001bDdۉ�\\u0000)��Β\\u0010�ږF�)\\u0006נ&.�3��1�\\u001boF�\\u000ed��$�cLp�����k�ڕ��_\\u0011���A+IuR���*\\u000b2�\\u0003s���\\u0015����6N$�{�ǔn�7 >���+L����_ubH�l\\u0005��\\u0000\\nFݺl���vbo�)?�5�\\\\�hɚ\\u0007��Sq�|M5n.S�\\u0011!8=ձ�ղ\\u0014L�q�=<I�����vȏ+>'�@a\\u0002�|�&�Ev��\\u000f:�'(��5g+�6�\\u001eT�gkKr\\t$�!��\\u0015�\\f@`\\u0014���&\\u0003A@ٕ�$6N^�t�>~tDs\\u0001\\t�]mC͐e%�\\u0000N��Q8\\bG��j�T|\\t�k)&���[ί\\u001b+/$nC�T�q��IR�x�hŷ�W�\\u0013��1@|9��\\\\\\\")���\\u00003Y\\f�9\\u0010��\\u0007�l~�\\u0005\\nK\\u0001a�Ƈh��Yơ���i@��Ȇy��\\u0002\\u0007лiX��\\u001bZ��\\u0012Y[�����D\\\\\\\"�\\u001a�#kS�\\f���\\u0006\\u001d\\u0005�j��؆^ܹpg��\\r�\\u0000�ą#�\\u0012�Z�SqVef[.��B���\\u0012~h\\u0001��׮�+4�:����j\\u0010\\nbF\\u0001�܏���~�\\u0000aJ<8\\u000b�\\u0000�5�7ku$��7�����3�9\\u0000\\u0010�\\u0019R��~f�lH\\u0015jg\\\\\\\"mF\\u000e�\\\\�Yd��\\u001b;�\\\\\\\"��=)|���JbL��5��A4���|�0ʢ\\u0018��@\\rͼIޫ\\u0004���2H̸�,{+\\u0011�>~T����bX���ו�eQv \\u000f:@\\u0011\\r��V�h�9�CqqA��\\u0017�We<�����9\\b����}�L1��|h�D7�r\\u0005�\\u0000ky\\u0018B��C�\\u0007�K[���ph�\\u0003@�5�e�2�2\\u001e>\\u001aS\\u0016\\u0006\\u0018=����\\r/\\u0004��(\\u0017k��L���?e˺/�c��ڻ�.\\u001e/�*�nL�P\\b��Z��1$C�d$\\u001b��\\u001fƯ\\u0010K�\\u0017\\u000eэ\\fm �H\\u0014�/=o@��\\u0014�?ΘO�'��2\\t\\u0016:ҹq%w,�|)'��\\bS\\u001d�伵є�:)cuu\\u0016\\u0016*5\\u0004��oY�\\u0011�ɟO*)!��H�v\\u001b\\u0000\\t?u\\r��@U9\\u0000\\b�\\u0015�b��\\u0004*��\\u0012\\u0001f���iBv����\\u0018�\\u0010G��\\u0003�1��ԁ�D����\\u0011�ޥ�n�\\u0007ʭ���Ix���\\n[?r\\u000e?��X����|�\\u0019r��=�\\u001d���_즚@�;|1��d\\u001c�\\u0016�ǭS?�<H%\\u0003�nx��_�T��\\\\vnJHkm�դ�j�\\u0000C\\u0010/r<�;�j���\\u0010��p\\u001c�'%B�6'ʴ�B��6\\u0015h�u\\u001cm�\\r��͘�\\u000b^�4ȭ\\u001b\\u0018�{�������nO�D�˛*�>\\u0000\\\\��\\u001b���\\u0017\\u001d���\\ri$��.I(v\\u0003J;\\u0015u/�mX���h^�Z��7\\u001b��,\\u0006B��p�#�o��g�uT*�ّE�\\u0006\\u0007�@�!cpu\\u001fƽY�\\t����F����{\\u0004J��=��\\ru4Bv��Pɏ!S��d�M�:��Ѹ�qm\\r�;)��`�\\u0013\\u0017+&f\\u0004���3�u�}U���e�\\u001dEZ,�S H�/{�\\u001dw��i�.^\\u0018\\u0018���ۯΒO�n\\u0001(�L��H �\\u001dl:\\u001f*�\\\\i�$K\\u0019K\\u001b\\u001b��u�\\u0003\\t���\\u0013F\\u0010���6��\\u0018�ȗ���h�%A$PH�veRF�lёe\\u0019\\u0011<Nu\\u001cůo\\u000b�X�7�\\u001fj��3���\\u0015�Cڔ\\u001bFom\\u000e�Ƅ\\u0013[}\\u000e��bl�+\\u0004m#Z�(��K��\\rx+\\u00062K2ĆܮI>B��\\u001e4ǐpQ\\u001c��q��иx��d$�c�\\u0010^��}E����O[+�\\u001a\\u0012T�=ܛ�1\\u001b\\u0017H������\\u001d\\u001e�`|F���*\\u0014\\u0012�\\u0002B�,\\u0006�C�x�s�ܣ��\\u001du\\u0004PYy��2��M��k\\u001f;�uѫJ���A���K�n=h�eD\\u0005[cC���e�ki��\\u000b\\u0010��\\u0000u \\r\\b�ROr^#`.�\\u0017�u�\\u0012)��\\u0010���\\u0014�<�\\n��k��f\\u0011�\\u0014�k�u��Q�\\u001aV�)�?f@A�\\u000f\\n˓8�\\u0001'��i�R�\\u0006u�b�\\u0014\\\\\\u000bq���<k�(�ف\\u0007����`�\\u0011�����V��߾�F\\u0018Z\\\\\\\"E��\\t��\\u00147i�~�#��F~��\\u0005c��2YHR�F�ކ^a�[z{\\u0001�߱��+0\\u0004ۙ�\\u0002���ƂXX�:�Mr��c(�OJ7�=���($�u�ڏ\\u000b�RN\\u001eA��*{W�$����Q�߆�o�V\\u0011e<+�\\u0015\\u0004\\u000b�\\u001a\\u001b�\\u00113�X\\\\�\\u0005�8��/���$�CŔ\\\\�\\nQ���dp�T��M�\\u00193�\\u0012�\\u0011��9���W[\\u001b\\u0000\\u000fʚM\\t��1b�w\\u0000\\u001e �\\u0000V�ͻ~ �\\u0007&@=D7�\\\\\\\"\\u001c�eS\\u0001k���\\u0018ﶂ������\\u0012\\u001cYC\\r�&�r�x��R�?\\f?\\u0012\\u0018Pd+ꅸ뽗��@w,��>ʿ%���z\\u001b\\n&\\u001c�@�bŉ=,v���#\\r�/�l�n/҉�5��J�S��\\u001d3f��F��\\u000f\\u0019\\u0003�.�\\u0016�[M�����2pA�<Z�.6�W�����v\\u0012)��oc�z���\\u0007zx\\u0006޻�E<�\\u00113�o $_�QXX���a�?p\\r��\\u0002����\\u0013\\u0012}$+\\u001b�������\\u001cI\\u0011��\\u0005�R\\u0005��JP�~�2{.go�G����1G��`\\u0014'�X!v�K��]�\\u001ayVTVB7\\f\\u0007�4<�1ʯ�I�N����6d�#FG(�P6��䛝���\\b\\u0002���V�C�Y\\u0014�\\u0015\\u001a\\u0013R8\\u0016\\u001fP<�ޭ^3��F����h�y�Q`\\r�x�zV\\u0011Lب@\\u0017\\r��D�0}.\\r�U�U ���W)s$\\u0012K$��Z��B:K\\u0013�\\\\\\\"@f'T>~\\\\\\\"���\\u0003�\\u001am�9�U�^&��Uui���#�|�Ed~l�\\u000b�#o*5��\\t\\u0002)\\u0000�\\u0001}����1�\\u0010�7��\\u001bx�g=x\\u0014Y\\u0002��]mX�&�NP�<V\\n���\\u00144��\\u0019x��9F�]@>\\u0015����\\u001ahdg,� �SNd��zq�\\u001fL��w��\\r\\u0015�\\f�\\u0013G��sv\\n\\u001b��4\\u001cXyR2ƫ�ɲ(7&�)�l���\\u000f.<�����`��n@\\u001b�Ma�\\u0002z\\u001d\\f\\u001f�qD\\u001c���M��\\b�c��\\u000fk�]\\f ���\\u0000:\\\\\\\"\\u001f���&:�n�������03�ǅ�;s!~�z���r�!�\\u0017w�h`�1\\n�\\u000e� m{ڂ1�\\u001b\\u0018�`\\u0015HU�\\u0003]H\\u0014VnT���:\\u0004\\n,\\u0000�׿Z������6Y�]^2[\\u0002b�C��*�\\\\\\\"���\\u0014�H\\\\\\\"i�.V\\b\\u0006��jY\\u0001e���\\u000f]\\r\\u001a28�uV\\f�\\u001e&����=l�J�c�\\u0007ʓca̹\\u0012N$\\t�'����������\\u0011\\u0010�~M�W�\\u0002c+�[U��'r��T�ҳ\\t�r^\\\\\\\"�׵�\\u0004�6�\\u001f��V����/M+\\\\\\\"�ȐVǧ!M$�YL��HX�,o��*䥴\\u0007I\\u001bәqVxB9�\\u001a��t\\u0004��X��DH�$�h\\u0011��D�g�н�nm���oo�\\u0011e���E \\u0003��\\u0016\\u0014\\u0018��2\\u0010\\u0018\\u0004^���\\u0014t-�\\u0002\\bĠ۩:��\\f�S��؟��IQa\\u001a�A\\u001e\\u001aй�v����')\\t\\u0000H�(\\\\\\\"׸\\u0017�\\u0018�X8\\u000e�4m��*�#\\u0004*�롭[�3K�\\u001f#/��{X�F֭$��`\\r\\t�UL#4�\\\\\\\"�'d\\u0002�~ٜ�Aǒ�\\n��'����\\u0002�e\\u0004�b��b��#jv�W���.'\\u001e�\\n)�\\u0005>\\u0006�0DY\\u000b+�\\u000e��\\\\\\\"�m\\u0018�͓q\\u0014l�\\u0000\\u0001z�\\u001e`V�t,��,|�\\\\\\u000e鈊f̔\\u0016\\u0003ҌJ�\\u000b��#�f��x\\u001c*�M�\\u0015�7�.��\\u0015����6?¸�\\u0000k��������.*}��Ne�\\u0007�\\u00174\\br%�S{�gБ��˶E����~\\u0012�2���__�7��\\u001fl��\\u00176�����Z��~�\\u001fq�\\u001d������[[�z|*zo�k�jڵz�\\u001bI-e�Oo�u� ;\\u0011j�b�\\\\\\\"�0FV�\\u0007��\\\\\\\"��2�h���r�*I�1\\u0002\\u0010����k~5�AN��\\u0004X�:\\\\\\\"��\\u0002頱\\u0007��vEr�\\u0012:S,��6\\\\b\\u0016\\n�)�\\u0006��Ω\\u001fm�\\u0012��\\u001e;�0��\\u0017\\u0004Ru�\\r8\\u0002Nd�,(�TW-ˠ��o\\f��+�V]\\u0018\\u001e�#��$����*��\\u0003r��L\\b�fߢ�ԥ�\\\\31�_\\\\zD�ND�~\\u001di�y��\\u0010@�k\\fȿ^���I\\u0017[[aK3�����X���<i\\\\\\\"�\\u0018�Ajk��t\\u001f�k[�Z��vSȓ<D2j�O\\n\\u001cC*d,�߉ץiL,�\\\\\\\"��&S���#:����������)F$�u�\\u0019\\u0012$��p\\\\��ւl|Y\\u001c4�\\r:.�}1\\u0006vL���#\\u0005�Y�\\u0007����A7�U\\u0011J=G_K\\r\\u000e�\\n[\\u0012�\\u0010,V�Xޤ��P�\\u0003R�4μP\\t�\\u0017V\\u0017Klz�?�Ld\\fH �\\u0011N�dm��5��\\u0000ҹ�\\u0011\\\\\\\"� Ȩ��A:��T�\\u0012�@�\\u001b\\u0003!�HYcBu,w�o<ث\\u0018F�9\\u0006�\\u000f�C\\u000f\\u001bz�&i^yA\\u0013+0>���\\u0014K�@M��D��\\u0017�S\\u0017z���˔BQM���@�ʷ팯� �l�K}�ir22�2\\u0019OPn+ly}�D��k�⫎��8����a\\u0004K{��B\\u0007�/Ev�˳�r�\\u000e]ȁ\\u001c�K�\\u0000�\\u001b�y\\u0019�:p)o\\u0003z�\\f�\\u0002.\\bܢ7\\u0000\\u000eU\\u001c\\\\Dn\\\\V�6�������\\u001dX\\u0015`E��\\u001b�ˎʼ�zn\\u0001c�h��2�}����\\u0000p�m�6�T\\u0003��[k��&)\\u0014�\\r[\\u001d�RgF ���\\u000f\\u001a�8�LOA�*K_MkI\\f�2$�+���\\u001bZ��k\\u0019q�ӛ{L#mH�\\u0000�B,U�$kȱ��x��$+`�b�\\u00001ҫ>,�#2�`Mƣ��!$p�ň߭Q\\u0010l\\u0013�Φ��<�\\u001fm͜\\u000b��t��J�O\\\\\\\"\\u000fKV@��\\u0001\\u0007����k�f_�����͠5%�\\\\\\\">��ݵ�8�\\u0004�+L8�ל�}$�m�\\u0012g�S\\u0012�X���c��Z둦o\\u0014�\\\\\\\"�t+�xQx��eEm���U��\\u0010a��)P��D�&;�\\u0000Sl\\t�\\u001d�\\u0001[\\u0018M#\\u001ft\\u0012�F��hO�l3\\u0015$���`�x�����L�W�]n|(^��'��4���)\\u0006Fl����c*\\u001bH\\u0000���V�&��d�G�iP�z�9\\u0019��B�f\\r���\\u000f:\\u0014�(��\\u0001P\\u001f�\\u0007~$\\u0001z/�c���,�G��rb>B��\\u001b�\\f�Q\\tS�;�=Eͪ�X�KfR\\u0005Ɨ�F\\u0018\\u0004,�7��s�\\u001e�XX\\u0011a҉.Y@�hup[����0[�\\u000f�ͽ�儺\\u0010G��P0E�Sּ|�F�ҳ�aO��+�uߔ�\\u001bJcv\\u0004��Ϋ.D*-p��P��@���\\u0006�� 1�;V��jm�s\\u0004%\\u0016-U�[��Y`�6<�X\\t���C�^A\\u001bw9�\\u0011'��m��GKێ9�mq�R\\u0010���M4ŉ����{�2�nb���A\\\\\\\"�\\u0000��h��\\u000f�\\u0015���4^q}AH��Q\\u001b�|&<�ojA����1�\\u0013��N-m\\u000e�h>˄Q��%��(�Xӥ��\\u00116\\u001dz\\u000e�V\\u0016m�\\u001a\\u001a$�5��dd-� �ᨤdN�M�V6�\\u0007a�0�Ƚ΀P��\\t��\\u0002�\\u0007�UZ�V\\u0006�%�Y4S���L]��\\u0003��\\u0018��ȋ��W�G��\\u0015\\fx��\\u0017\\u0000��\\u000f�i��x��.4(�WÏ\\\\\\\"O�4�8��\\u0018���,\\n�}CkX����_���Z�X��&�s��B9ak�z\\u0011MqԷ6p\\u000b7V֋UrW��\\u000bH=Ș�y2�\\u0017��4W��<n�q����n}'�\\u0004Z���x�ݜ�@�\\r�mۥl\\f��\\u001a�FB��{\\\\��O�\\u0017�\\u0005��{�o~۟>\\u0011�{V)*���r\\u001f�:ѐ�\\t�Y&,�p�q���\\u0001�x�\\u0019i\\\\\\\"�M<���sɜ�ok�^�y x��T\\u0015؋��\\f�L�%I\\u001a3`E���\\u0004\\u001d�5�<�T����J�i\\u0006G�nܽ'�6���E\\u0004���H��/�Sg��1�k���#%�t\\u001b�\\u0001����E9��Ć\\u0010y*\\u0015�-e\\u0003�\\\\��h�a�D�ݑJ�R.\\u0018�N�JA6H��H��՜�޹�mg-��G[\\u0017�<YdT��\\u001b���Jp#�l��@d\\u001c��k�JJq�{:�c�֞��R�e$�}#�֫�\\n��\\u0013r��\\u0012\\u0019\\u0014�D��\\u001b��� _J�;�y�y�H\\u0011!��i�sL\\f\\tbH�1�=�\\u0017&���g\\u0003vs��\\u0015�Df\\u0016_��ag�\\u0000HԜ��Y�=�����t�w>�\\u0004��\\\\\\\"�@W#�o�KmVǅ!�L���\\r��]?q0�`�<���7\\u001a�����u�^ģ���eDa+v:�l�G�ކ�\\u001eH�\\r\\r�q�xV��$�tC��\\u001bUp��W\\u0015h�Ec\\u0001\\u0016*u�\\u0014{\\u000b;�v�>�_KS5���!�\\u0001s�_U\\u001e~T�2`\\u001e�v?ư�Y9����m𨶣C���=��\\u0016��\\u0016\\u001bX�K�\\u0000\\n�w67�{7y�\\u001c\\u001c9S�8Ri�����o���>8*K}\\u0004��U&&�\\u00181C\\u0012�\\u0000dz��ۓD�aŘ��H���8�W�\\u0000-sm����P� \\\\*�\\u0018�\\u0000C\\n�7�Oܕa�_l\\u0011�\\u0003׫3tQZ�X���ͫN?��yx�\\u0001HJ\\u000b\\u0002�|[k�w\\u0014\\u001fm�4o��\\u0014\\u0016:H7\\u0004y��i���\\f�n_��w'������B��ө��*����\\u000b��\\u0007�W\\u0003#\\u001c�d#�0\\u0007�u���\\u001f+�Ed�OA�yxP��1��*mkPq_��:�V��:�db&�\\\\\\\"�^KmV�F�q�\\\\\\\"/Lq�G���Ҍt�Ϸ\\u001d|��3,�X��`e��h�qU�!����o�\\u0005�\\u0019ܿ\\u0001k\\u001eCJ��<w{\\u0002ʾ5Y�\\u0016e,���z�C)Rť$��ڴ���\\u0015�ML\\u0010�\\u000e\\u001e�vc��U���މ�\\\\\\\"{;�\\u001bn]-�(�\\b��|\\u000e�B\\u000f�\\u0000��;��>\\\\v���\\u0018��E\\u0004���Ok��[�x��9*I\\\\\\\"�|+7�Ʋ\\u0002�d�q*�<kD�w\\u0017S�թ���yՒwBl���k��QɎ\\u0010\\u001eT\\u0012�͍�\\u0004x� �ȉ\\u0004oǉ�]�֭;������R�B�*r:�!��:ۭ4�RKP�e\\u001eXdh$Wt\\u001a�\\u0005V�\\u0000��A¬4�}���\\u001b�^�4�傳ɉ\\u0005�(�)\\u001f\\u001d\\u00051����!�,z\\r��A)e��\\u0014�8�\\u0017����c~��y\\u0004YQ\\u0001����[�\\u00117��\\u001d�\\u0014|\\u001d�H�OI\\u001f\\u0003ZV��Cy�\\\\?�1�R%&Y��(?��t\\u0013�ǚiV\\u001b\\u0003\\b��`\\u0007B+I?p�)\\u000e��E\\u0003��i\\u001c�*�����$yVT���e�kMc��\\u001a7KֵJ-\\\\\\\"��\\u0014�\\u0013 �!m|oKK\\u001b\\u0012)�v\\\\\\u001e�\\u001eC�\\u0005K(�7�*�C��\\u0014^/��>;Z�ە\\u0004֮=�\\u0016<�\\u000b'\\tE��65�b���VR�'Ԧ�A���� \\u0004sCs\\u000b�\\u001c�\\u001b���*3��d,e�nR��Z����\\u001e2mU����\\u001b(\\\\i��\\u0016%�QA\\bd\\u0017Pw?eg����ߢ�ƛv�R(�%T�\\u0017��\\u0005� Ԫ\\u000f\\u0013�mXtL������\\u001e^\\u001cę\\u0011\\u000b\\u0000\\tr\\u0006��h\\u0012@\\u0017;WI�{��U��Sť{r\\u0002�6�ccK{�\\u000f�1�b-f���Re�\\bG�K��_�6\\nh�9(V����҇�F�j�د��o��(ꁑ�R/mN�\\u001c���p:\\u0010E\\u0019�}Y��o�\\u0003B��2�B����gj[�G�\\u0018��OF3�'J_��!��\\u0017����?.�x\\u0017\\u0015�\\u0002�M�\\n9ւLy@�~\\u001dA�V�1\\u0012���<?�҉�^HTof���z�,�׿�6�i\\u000e��\\u0019m�=k,�5c\\u001c�r7]|T�kC�?\\u001bk[gd,�3\\u0000l�����\\u0000�\\u0005]�G�9Ee��u�G��1ρ+E:\\u0000�.t�R6\\u001a�kWyd+\\u0019��x�h�$2�>�/�\\u0019Y��5���գ�Ɠ�䬾Z��\\tˆ\\u001f�\\u0019\\\\\\\"p�M�A&�I�Ŋ�{ni�E�(uD%w��[{RvPykcsBЖ]�\\u0000�C\\u0003s�D�I���J��P0<k�0%�)'m~�'��k\\np\\u0012\\u0016e,= \\u0001�׸�,�rqx�V\\u001f���2�^���\\u0003%�\\u0007�,��Lbt2\\u0000T�</JdˎG1�\\u0018\\u001bk�N�\\u0004F.\\u0005�\\u0004x\\u0003�K�<\\\\\\\"\\u001f�����%\\u0003{nMS�\\u0002Z\\u0018���HAv6�4i�F�\\u0014\\u0006#Y\\r��$���5��\\u001d6�5�\\u0017�y�yipzVm�थ\\u0013���I]Ar$C����S\\r\\n2�XX�\\r-��H{��M�+��~��5�N^�.w���.p�:\\\\YS%��K0>�:���)�\\u0012�.;��T��\\u0007�+l�&t�\\u0006�(�[Z��\\u0013��\\u0014�ݻ[���j���\\u0017\\u0018Ra��\\u0016D|\\u0018Y��|\\r*�X�u-\\u0015�AE���L�\\u0011Ǖ����B�ҏ�\\\\���]Z��K�\\u001c˅�\\u0016E#��\\u001f�m�\\u0003��33��o�||k�s�\\u000b4��4�]�Ñ#���;�dd\\u001cx��kr鮶�S�{\\u001f��f���!�S{�騶2�z��[F@�&��xc2:���ҙ&cf[\\u0014;�5nJb\\u0004�0���̏{\\u0001}4�\\\\E�\\r���bu\\u0011\\u0001ˑ:�\\u001b^��fU\\n��4�<=LX�OfSus��6��4t]��,�v;�4P\\u0007\\\\\\\"O�RL�i�\\u0003\\u001c\\u0010ȥ��Kx(���M\\f�>�9�$�\\u0000�E��Rr�)�5�=\\u0001�\\u00064q���Sc�oY\\t\\\\������_��Ǧ����\\bJ\\t\\\\\\u0016*@��?\\u001a��\\u0010�\\\\���2\\u001fQ\\u0017h�0\\u001br�U{k����\\r�ή�U���\\u0000-�\\u0016S��M|\\n\\u001f�ds�x�\\u001f�<~5B:*�_J�\\u001aq4!�\\u00000ч�l��\\u0000��h��\\u0014\\u0006�5\\u0002�cJ�g�=�nX�u]\\u0016���zm���7f�|?���Qd'�\\u0000m\\u0015���Szy��K9L�)���:�dn,\\u0006��'\\u0002�\\u0019����]�\\u001c�3���\\bЍ��a\\u0002/\\u0014\\u0016\\u0003�\\u000eZ�\\u0013�\\u001al3\\u0013c�\\u0010F\\u00006�\\u0003J\\u000b#\\n@}\\ru���pM�\\\\���߭��\\u001d�޲���[�L\\u00194A\\u0016�n|*D���j\\u001b2Y��K}\\f.-�����M�k\\u0001Z�L=dO\\u0003L|LN1��bi\\u0005�#oꬲr�F$��S����V�q�?G�,J����\\u0004�Z�[\\u0013B�ڻ$�onLIO�|It��+�>5��R�\\nS\\u0006i�ț�\\u0003�ߔx�Oږ<HV%�ή�}D�\\u0000*��0�\\u000e�\\u0000Q�b>�]7�bp�@�y\\u001a�\\u0017Q�6q~@\\u0003�I�\\u0000wA�\\u001fkl�Uy��}����n(�ɉ.�N/�j\\u0000�*��$r�{*֒v�\\u0003oO�4�\\u000b��\\f|�d\\u0017\\u0017=\\b�\\ro8\\u0011�i\\u000328�0�|<�@bb42��\\n\\u00129\\u0000)�c͒�\\u0012f�\\u0018κ\\u000f�=*\\u001e���\\u0005�?\\u0010-�V�\\u001b�9\\u0018O�u\\u001e���'\\u000f\\nl�Օ�\\u0016������3�n���X!�Hm\\u001b\\u000f\\u0013��Ȑ���\\u001fܸ\\f<*��ό�<���\\u001fq�\\u0003�j\\r�i�=�7w~M�&��D����Mm)��������tf\\u0000��rk\\\\��x�\\r*�1��E�*��s�dv��$xr�z����v���L�����(��B����7�U����\\u001eA\\u00114�P��w\\\\\\\"��@�K^��񦸙�ˎ��\\u0006N!fCц����<q�<F�c�8fmʐ,<\\u0019r���}N���\\u0012q`\\u001dF�|*��K�DM�\\u000f\\u001aa�g�l5v \\u0013b�r�SrJ\\u000b�I�\\u001f�=�\\u000bmm�oI��Dsd�^�\\n\\u0010|��\\u000f�\\u0019\\u0002\\u0010����ɸ�-I��f�$%��O�>�|ԅ��p[\\u0007�O\\u0016ZdqI�F��bW�����h�I���tW\\u0000��H;2�\\u0000�\\r�~\\\\\\\"��Sv\\fI��𬻮J&lyP\\u001b\\u0013���o�\\u000f�����\\u0000{^7\\n���=̞.\\f���BM\\u0001\\u001e.D��\\u001e'�#\\u0017r�[��L�\\u0012�\\u0014���\\r>��2bbe����<\\u00005\\u0016n�m)~\\u0000\\u001b�w�\\u0012,\\u001c��\\u0017�\\u0014�ic���\\u001d�FFf\\u0014R�J]�\\u001d\\u000e��ebaO�2�U9\\u0006�J�^�>w��O43ce�\\u0004�Z��s���ߒ�\\u001f��ߠ�\\u000f\\u000e\\u0004C\\u001f��T\\u0002ႋְF�IE\\n��\\u0005\\u0014�\\u000b��e\\u0007�\\u001a��o\\u0016��4�)��\\u0019�q\\t6\\u001dj�\\\\\\\"`\\u0017#)\\u0004�\\u001a�̺\\u001bt�9�Z0��,��޽�\\faS:�S\\u001b|�ZJ�M؛��ʏ�+'�[�&=\\u001903q\\r��s���\\u001d������2(ٍ�S\\t�dQ���\\u0010\\u0001�TW���L�ZVJb�K�;@�+�,y^�|>4q�loF�-n�*\\u001f�e\\u0018���\\u001e��W��\\u001f�EdO,�*8��\\u001c��^����\\u0004֪\\u0001r�\\u0018�<ʏ{�\\u001a��z�\\u001e�\\u00063{\\\\�F\\u0016�\\u001dx�\\u0007�\\u0017ze��0b&Io�)ה�M�x�\\u0000:\\u000b��&e\\n��Qŭ�6�K�\\u001c�\\u0006�dTg2�����5�U\\u0014t].�~4�<x�]ω�bth�\\u0007��UIB\\u0005dܞOwPֽ������\\\\\\\"!�V\\u0016�h�g��0���IJ��u$S%�Ă\\\\�hד\\r�9\\u0004���!~Q�\\u0018�����Fv9��2�3\\u0005�b�vӥ\\u0017���K!�Q��M�L\\u0012P(Lit�}7���łH�<\\u0001d\\u001a�/Y�\\u0017N�ב�I�J�\\u0007㵩|��j�S\\t�gn^�cn^t_m읫�<��\\u0014�$'\\u001b�4����B�$�6��Qk\\u000ekF��%\\u000b(�\\u0010�[Z�����FLnݗ�,!�7�$芼K3\\u001b\\u000b������0��`\\u000b\\u001b\\u0001U��\\u0019�M\\u001a�1;�µ�\\u0001۸C�\\u0013�G%��\\u0000�(����\\u0012YFݚ_�e�\\b����ֻ\\u0002|>5�,d(/�xxP\\u001d��È�nm$����/�Dw\\\\����\\u0013���\\u001b\\u0015>}+:��\\u0013��h}̜�M��/�#C�\\u001eߑ.\\u0002~�D\\u0012%�R����lzP��/\\u0014�\\u0016%\\u0018������\\u001c\\u001cL#\\u000bdd$\\u0019�\\u0002���\\u0000����>>5��N=˫�\\u001c\\\\x\\u0012c1�\\\\\\\"��H5�kE@��0���u��W��\\u0000��]�\\u0018�S�\\u0000Ѷ̾\\u0014\\u000e2/���]۫��t�yi�\\\\i���O�zX�4�.���OK!�/��\\r\\u0015t\\u0014\\u001f}�YB�k�\\u0000kx���G;\\u0000��W�F�v<I*����v�$��\\u0006˩'�m�(\\u001e�,\\u0010#(\\u0001U�nu7\\u001et�\\u001c�\\u001fe��N))���kj9o�=�\\u0015(�޾��S\\u0016.^dbH�c\\u0013j�v#�P�\\u0011�4�̤\\u0007\\u001d\\u0001�tPJq{\\u0002\\u0004n\\u0006<{ߨ<o��\\u000b\\u0006l�̾��5�֬�\\u0019J\\u001e�\\u0000�\\u001f���9\\\\\\\"��bJX\\u001b\\u001dH�8��1]�H��+w\\u0006\\\\����>B��e��\\u0005�\\\\��q`\\u000f�Zix�\\u0015�\\u0001Cc��u����jS@l7��5g(,,,X�,\\u0007��;)��4�\\u000f'�3�1'Ф�|���$�\\u000b0`S��\\u0007rEi\\u0019�S��l�W�;��m[�b��swk�}E���\\n�r\\u0003�fgH�b\\u0019�o��Ao�>[�<\\\\\\\\\\\"��I\\u0007���Ƒ�WE'�\\u0012Toco�Aŕ2\\u0005��(����]ntڦ�F��|�y\\t\\n�\\u0001��D\\f�T\\u000b�|�Zp��4P��`/�S�`B�mk}��\\u0006��`��&����]\\u0004\\u001d�\\u000b&DOq��9\\u0003�޹~��\\u001d\\u0002�t�rH�\\u0014���\\u001aVw�\\u0004�\\u0019ݱ���|���T2�ċ�Z\\u000b�v�\\u001dRy����\\u000e�[\\u0003F/r��\\bCmŕ���/\\\\�\\n��:+\\u0010\\u0007�#U�9O`��n��B���\\u0006����PX�3\\\\�8�\\n��\\u001doN��TS�\\b���\\u0001ώ���<+����Y�x�4<��v~#�\\u001e���ȏ\\u0003\\\\\\u0015Hr�����i�\\u0000\\n�wH�9��n\\u0011�\\u0004��p2��Y�aa�j\\u0007�̸��<��2�r�#Y�'g\\u0005��\\f��旓zR�W���&ʓ�M\\u0004���@�8�\\b�\\u0005e`��$���(\\u001c�T�Ju`w�Ob��\\u000b&Oo\\u001d�h@��zR���:WG\\u000e.\\u001edg\\u0015��q�\\u0003����H�\\f�I\\u001bjP�?#j�\\u0014I��\\u0018�qb�ˏ¶�Pa���Υܟv$�)�\\u001f\\u001f\\n\\u000b���\\u001d�6\\u0015�f\\u0007\\u0002?l��\\u0018���'\\u0005D��\\u0003\\u0010����\\u0001╵\\u0004y��,��c:�\\u0010������L�ɊG���\\u0019�q��Y��ggG\\f�\\u0000t��7�C�*E\\u0001\\u0005�6[鯝*|L�p��l#o�ȸ�\\u0000�\\\\\\u001ag�\\u0014�ݠ�l��z^�QV�<���\\u0004\\\\\\\")d�ɏ1N��K��O�5g�T��)��^��W��\\u0006I�\\\\��^6\\u001a�6��^c\\b'�f>�5;{����o���Z�9�,1_t\\u0007�\\u0007{6��A�f͈����a��ړ`E\\u0015�4��N�\\\\[zU��4B$[�6ҕ�����i��V)%\\u001cM�u�\\u001f#�֔w\\u000e)|w�\\r}���&�aw|�KcK$�\\u0012o����\\u0000/-Et*��a��߸�a���j�5z�WS�*EՁ\\u0004hAЊŔ��P��ʟ��\\u001d�\\u001cK�\\u001e!�Q�y�Jc3���pZ��#���MW�h�5�*Ea���n�k�c#rrH��W�D$\\u000b~V:��x}�[ǥ�\\u0014��Z6\\u0006���y\\u000b9\\u000b\\u0011oS9�\\u0011�]>\\u0017r�\\u000f\\tb�΁�]E�SHL���\\u0015�r����\\u0007jҮ\\f�$����U7 yy�z�ªd\\u0004܏�X�e���\\r\\u000e6Xd�\\u001d\\u001a`�\\u0006�\\u000b���bgK���#��\\u000f8͏!�i��K\\u0016,H\\u0011d�E\\u0001�\\u000b�Z�f��r�\\u001d�F�V$\\u0004\\u000f&�R���h)S\\f3��\\u001b\\u0018��;G�\\u0016#ŭ�\\bs J�\\u0000�%��^�w\\\\��ce��d��\\u000fh�X���y\\u001f���\\u001etI9��\\b��;\\u0014��$n��\\u0014\\\\���n�Y\\n�1���kE&*Œ2\\\\\\\"��^>~\\\\\\\"�ϟ$�+\\u0000\\u0003��1ԋ�R�\\fC\\u0016\\u001eeđ(]l5�h��x v\\u001fX\\u001a[]i���\\u0002E�!�x�\\u000b!� ����O�\\u001dc�\\u000f�&̝&iG(��b,K\\u001f�<j��\\u0018K��\\r��R�q'�'��˜U�`Y:�?'��BxYK\\rTT�e\\u0004�\\u0004\\u0010��\\u0011_����YdG�w\\u0007����#֛E�\\u001cB��|MY�B�'\\u0010]vn���V^D�&\\u000e>\\u001c�\\\\\\\"�����E��\\u0014X8\\u000eJ����D�|�.Wk�J�8���>u�I�Ÿk,fK�\\u0016��w\\u0004�\\u0007��v\\u0000�h\\u0004c��U��0\\u0002��kX��Rz\\u001d\\u0010�v\\u001e��E�\\u0004\\u0012h\\f�\\u0010�+h?\\u001a�\\u0012C\\u001a�mI��\\u0000\\n�p|fF(��l��z�ri�k�U���~��0Dѭ�\\u001eU�\\u00146*A�1e�D�[@��\\u001e\\\\\\\"�Y�L��\\n�A[�A��\\u0011\\u0003L��,���\\u0003��jW*{r4{�6�9�ʁ\\u0015P��vE�ԚW�#8�����w&�b�Llu�W�C�\\u001b�cᨸ��,\\b'�+\\u000b�C�\\u0017��X�SM�\\b��BW�֋�\\t��͝����\\u00117@�S\\u0012t���T�\\u0003�5|���2�o\\u001a�]\\u0012Х�����\\n2\\u0013�Y6�\\\\\\\"��K�ڵ��8�F�\\u0014ݼ�ZX���r\\u0016\\u0007[^��?yn\\u000f��\\rB�j�-�㜏�c�D.HU\\u0017\\u0012FΧ���\\u0003\\u001b��,u�G����%��\\u001b�\\u0000F�\\u0000ej;[`[Ě�\\u001bR�ICs����\\u001e�1��ȱY���L�l=�>x����\\u0003��\\u0014�/q\\\\<cֆ�Ȋu������}�Q~˚�nH�#)fa\\\\\\\"�\\u0014\\u0002̖�x^�B�����#\\u000b1�\\u001d�<۸�[���R.\\u0005��+�7�q��E���])j�\\u0006��[\\t;�$�m\\b����vB��S�\\\\c�Fܶu��\\u001f\\naۻ��_a�u�}'��|5�\\\\R�F���f�4Y,��T-�\\u001f$1H�����\\r�_�d�\\u0002c���E\\u0004��\\u001duI8\\\\\\\"�J�\\u0019�NC���k�[�\\u001b\\u0019@K�/�\\r��\\u0001��\\u0017\\u0015\\\\\\\"�⬨���\\u001f\\n�̗8���\\u001e\\u001d�k+H5cП�z�x��}��d\\u000bP���\\u000bqu�\\u0007Sҍ�=\\u0003�4\\u0011$��a�����6m��>�l\\u0018��\\u0001�_\\u0015�Y�nl\\r��֎[\\u0007\\u001d�\\u001d�E�#�ip4�\\u001d}\\u0005�ot��@�\\u001e@ѓb�Ł�p#ɞ\\u0010�������\\u0015��\\u0013\\u0006��·��f��~-�C�B�,�F���6�Q\\u0004���\\u001d�q\\\\\\\"�a�M�ovL�s��\\u001b��Z��a��\\u0017\\r�r]u �k�����D�V�\\u000b}���h\\u0011\\u0000�8�$�FB��k��\\u0014�\\rK�\\u0001�ր�&�\\u0002\\u001b�m\\u0000�ޛbcfĮ�\\u0007�lE��Ɔ�@h£�V!��;]Pu>t\\u000eU����\\u001c���7\\u0004�\\u0012e��\\u001c�*\\u0018�Pz\\u0001\\u001b��5�f\\u0002L�\\f��P�G{�5�Z�@�\\n��\\u000b�\\u000bX�V>̱��E*GC�u���\\u0013���iCfC���X\\b�մ#�V�0s�G]yh,75�{|���ӡڂ�.�bSe���z\\u0014�I66�fQo\\u0000O�^)�cɧ\\u0007��\\u001b\\u0006D^r�P��̞��X�FE\\u0007F?;u4`���o\\u0013��\\u0000\\u0000\\u0003a�tݼ�Ä�}\\u0003z�8�>\\u0014^7s�\\u0018�!C��I���Қd4�\\u0016���LҖ@x_D�4&62 �\\u0006N���S\\t��\\u001a�\\u0005'��dв�\\u0006�$�~M];\\u001aK�����q��U#�y��\\u0018q��\\u000b^µ�!+�sh�\\u00007��Reɔ\\u000b\\u000b���s���js���F�$�\\u0000sp5\\u001aU:ߩ޲&K�Ï@\\u0001����В���*��4O�[~�^�\\u0017\\u0014S���z�Smh�q�R}�\\u0019�mmM+U�(\\u0013�L\\u0011L8��`n5��V`\\u0001�EI�\\fk�3_�Ҁ�oӣ�k�o?\\nj�d\\u001bl�UY� ��v���4\\u000eKe,�\\u0000,�u*�r��\\u0014/�'y93\\u0012zxQ�\\\\\\\"��\\u001bxӜ\\u0007\\u0012A\\f�yH\\n������R����U\\u0017*����\\u001dr5�����*�з�a��c+I8��\\u0003V�\\n�(C3ݔ�?06��⤪q\\u0007�\\u001dI��䍀�\\r\\u0006�R\\u0019\\u0019��H�Iɺ}=(:&4\\n9\\u001dY�\\u0007�F�6Z\\r\\u0000��ؐz\\\\�֧kU\\u0017\\u001fٕ�7S�� �$Wt�\\u001a�G�:�\\u0003ԩp\\u0011Tj\\u0006�\\u0000\\u001a�3t!�q�\\u001e�С�k\\u0010\\u0014�.=#�'�\\n2�\\u000b`��\\u0002�@rLћ(\\u0017\\u0003Bk\\u0001�s\\u0013@W�\\u0017\\u0019\\u001eC$����\\u0016\\u000b��+\\u000e!�\\u0017>\\u0006���m�\\u0007W�=�+h�á�9\\t��~a�j��lM\\u0003\\u0014f\\u0006%\\u001a��|+h�f~$�zj��\\b�E�vp�m��-�k�\\u001dKr_I:\\u001bmZ�rH�x~b*�\\r�wv�\\u0005$�{ʌu\\u0003Mv�Qs����(\\u0007N��*�5��h�F����5)�m`a�\\f�\\u000e�\\u001a�\\u000b�&�4\\u0012��7�{cqy-���GʬP�\\u0000|�Sn�+Be*&�L�#�}j�f!|\\u0001�U��\\u000b\\u0006���hwp�Τ��?䷐��Z��M�Y\\u0000��P�F��Ӷ`H�\\rp��zKt�z���x�\\u0012>��Y\\u0016H�`����_������dK\\u000bF\\u000e�t#�Ě�\\f�t6$��Ť\\b'M�4�&.l�\\u0019݉bu��\\u0000��\\u001c��.\\rd1�\\u0016]�mk��\\u0018�Ø=�*J������Թ��w�\\\\\\\"8rdLb}\\u0001\\t\\u0001I�\\u0014�M�N�+���IT��X\\u0007Sf\\u0007�Ƒw|���Nߑ�&���\\u0000 R9;�s$��r\\u001b��ֳ9��Ɛ�$\\u0016��\\tސ\\u0019�To�\\u0012����q�20\\f�\\u001d� ��\\\\&��= �_��4��2b�O3[��Pu�SR�c��v'R64_n�8���`�\\u0003\\u0002O���\\u00022\\u0001�x\\t\\f\\b\\u0017�J��\\u0002:\\u0016�xAI\\u0012�n�\\u0012inGv�m����R_��\\u0012�\\u0012\\b��H������]�I�\\\\\\\"�G���Z\\u0007f��V�Y�b�Q:��I�bO½��li\\u0002�����qq%'��B���7�֦�jUYh�<mcg\\u0015��$��u;�(��\\u000b�*��(\\t���O��)V$v�1e�o*7\\u0012U�\\u0010,t���s(��$����W���!Z�~���jE\\f�0;�/r\\t���*�K�R��b�WmXޤK$��\\u000b�����gr�9�\\u001b,\\u0004���8�������j\\u0010�\\u0001�\\u001c�ܒ0H�BkLs<��=#�\\u001di����Z7(��a�\\u0004_�j�IZ䎽\\u0005�9yci\\n�H%�eW�\\rǕIФ�\\u001e���[\\u001b\\u000bڴOrG�X僐<��sH\\u0012&��xN�\\u001dѼ�4$\\u0019r%±\\nw\\u001bԖF,m��4; ���8��$\\u0011��@F�oX�\\f��\\u0000����6\\u001b_ƞ�vq��$�yXjF�|�&�\\r&\\u0003>fN\\u001b�x�O���\\u001f*\\u001f'��e��3D\\u0000\\u0003���ƚ��,���9\\u0003cf\\u0007���A�\\u0003�<8���z�\\u000f#rj�\\u00068��M�����\\u001c�I�r��[�T\\u0007aYc�˔�(ד\\u0011�@\\u0007�5�ݾ|k��\\u0007\\u001e��u���Z#�\\\\\\\"|Ȋ�ܵ����\\u001c\\u001b07�ҡ��)���������l��ы.�\\rkE�1r�Vb*�YͶ\\u0004֝�[\\u0018���_�\\u0014cX�6��ESm���Ɍț��G.4��O\\u0017\\u0017�Zԣ\\u001e\\\\x�r1��ebB��A�\\u0017����6�\\u000f����w�GX�\\u0005ݘ��Jڦ�IAM�\\u0012���\\u000b-�E\\u0016�Y�0�����B�G�c�C���e��\\fJxۯƛ\\u0010D-\\u00163�c�o���\\u0014bg㺄\\r��֡�\\u0000�\\u0000���H� hkH�t�[�*�rf}\\u0006�*\\\\\\\"�R�����\\u0013[3\\\\\\\"�Z%��.|<j���J��mqFE�\\u0013\\u000b\\u0017c�����\\u000eBÏ�v�\\u0004�\\u001a�s\\u0003��E\\u001d���\\u0000�\\u000br;\\u000b�\\u0015�uԍ(VLpͰ���\\n~���zSPmHbx��\\u001a̟P�(ךd����mh����\\ns\\u0012��_�:�/\\u0003��R\\u000b\\u0005<P�\\u001a�\\t<�n��>>���\\b�eO�\\u0007���\\u0014�\\u001f��}�\\u0017\\u0010�ZB\\u0015?\\u0013�W9D�e>yW�O���\\u000e�f�:oҜ�\\u0001�ʍ\\\\�RH��V���\\u0003\\u0001a�^E��{�\\u001b\\u001b\\u0002���\\n�>,�IF���O��QJv�i$[�*\\u001b�׭q�7�\\u0006�֥�W\\u0019,���^�)�b��QnZƆ���QYO\\u0006��\\u001aq�fMr2Y�B\\u0012\\u0010\\r������X�z�g���'\\u0016\\u0000%�Kn���\\\\���$���\\u0007KV��d���\\r��Ysb�����ڻ.߀�X�Y�ķ$�Z���\\u001c�\\u001b����WI��;��)��8�鲓�i�jZ�HӸ`�'��\\u0001b�s=ܡ�80 )����\\u001f��\\u0000�b?ߒE��#`\\u0018|\\u0014\\u000b�\\u00124�\\u0010$\\u001c���2�\\u0018��.5Q��йX���\\u0005�\\f�}��i]R�XVXq�,�\\u0005y\\u0007�6�\\u0014/rY�q`$��U��������Ѳ�h�#�$I\\u0017\\u0007[��7�D\\u001e!\\u001a���\\u0011�+,�D�7�\\u0001Ӡ��{�&\\u0001�d\\u0012\\u000bح���M��v}i�x\\u001a�湴c�ı��9��B��/�K1��.v\\u001a\\u000f�6��÷�\\u0015hX��j-AF\\u0002�\\u0003@\\b�k^���uwN��rgt��9Rm\\u0006^F9�/��\\u000f�G�͗$LY\\u0014�<�\\u0013���\\u0001�W�7as�\\u0001TP\\u0003�h\\u000e�|�is��\\u001eX\\u0014��c;d�\\u0016;�o�]�a>l�\\u001c}�,��\\u0000�L3^��\\u000f/�I�cT�y{\\u0013\\u0011���r�8�\\u0004|+\\u0012�nO�^\\u0018�ﭺ\\n��8N6>&��!\\u0014�]\\u0013�qڼe���W�ە7�\\u000b#\\u0018321�\\u0011�\\u0010��.\\u000f�2'�!�:���W��*]@\\u0017�޳(�\\u0002�6�D�\\u0006~^\\u0014÷E�$N���\\u001d���Ծ�n,h�\\u001c��Z\\u001b\\\\9��j�֤5�n6FL\\u0005�%��0����r\\f��I�µL����� ��O�o#@��I\\n ӕJ���\\u001a\\u001cB�=ß\\\\\\\"6)�@/�������b��pw���)d\\u0011�b�n�h�5���.\\b�}��7+\\u000f��6\\u0006yٳM W���F���!ԃ�C[�*�r�ݺ��&�4^�,È�*\\u0014h��\\\\\\\"F�u\\u0004�t=)�E�@�k*�۩���N�m�\\u0016_qU�����\\nX�iUb��7�h��zم��5n�\\u0015��6�\\u0002\\u0013��� ƕ����\\u0011f\\u0000\\u0002:��Vp��f�Q$�tY\\u001f�Q��4�����\\u0011���ab��\\u0000v<�\\u001f�.ʊly�&]\\u0011��\\b ��UR�\\u0002e*��v�U�����Fn\\u0013W\\u0000���j3Q��7��\\u0015�����:���R�3DT�\\tWkm��\\u0014�`n\\\\\\\"Bw��/\\u0005VZ&��z��9^&ֵ�\\u0006u[r�\\u0013��\\\\\\\"�����\\u0014Z#I\\u0012�vʗ\\u0019x��bMR)�[�R<��]�S��\\u0012,�\\u001b\\u001e ��5^)���l !I\\u0004�k���u\\u0004�>$��.]���\\u0003c�iܝ׵�\\n\\u0010�v!\\b����%^\\u0007�X�\\u0013�lځ�h��\\u0004H�ٔ۟�4���߻G�G�H�\\f�\\u000e�u�L�FT��*9�B�\\u0001R/cŅ�>\\u0014�\\u001fE��\\u0018\\u001dz�3��9���Ceq�K�ce_����\\u0000�;8����5����;�ce\\u0004e�����]\\u0007_��\\u0002����L�\\u000bK��x�\\u0003m/��;lyH\\u001eY\\fjĨ���k���\\u0001��0M\\u001d�S�\\u0017�ƈ\\u0004�;\\u001fx�\\u0006C�@\\b�v�\\u00146�nzU\\u0010JH\\u000b{��ƱX�\\r����\\u0000\\u0015�`�\\u001c]�\\u001b�X��.)N5\\u001c�q�]�6\\u0012U\\u0007\\u0016O��\\u0017�*��w��\\u001c�\\u0007S��]r`v�-$�+���\\u0017��U[/\\u0015*>�\\u0005��TB^\\n��yW]\\u001dx�QGBLة���%_�Iֳ�3���\\u0004\\u0000\\u0001��\\u001a�\\u0010�$-x��^�hF������|����\\\\\\\";n\\u0000\\u0015�������\\u001a�~l��\\t�\\n��^\\\\\\\"�OƓ�ى\\u0003\\tbR\\u001dv�=h�]\\u0007��I\\u0017����\\\\\\\"���\\u0012\\u0000#饱f��K�N��o\\n,�F\\u000f\\u0016�=.7���G����وf:\\u0002:\\n���-ap�h\\\\5�ҎLdx\\u0003��C���\\u0002)7�\\\\\\\"@!�����J��0��\\u0010�k�M1���r\\r\\u0012�ta����X���>�\\u0007�ɰ�8�idT]����0�KJ��$��P)+�ܐ]���n��\\u000bC!)+\\u001b3��T�Q�I��Py>.4I��`\\r�{���k*)�M(��\\u00161,O�6�؝�\\u0013�<Гm\\u0018�X�\\n� !���@\\u0002\\u000fJe\\u0006B�2/Ԛ�\\\\\\\"���a���i�^���^a�>FBc�9d6\\u0003��!C���\\u0013�ZL�\\u000ey��I:\\rA>u��g\\u001e��I����fd��q��\\r��tq\\u0018yc���fFa���\\u0017\\u0014�u�%=\\n�w\\u0003�,Rʇ�u6��5�x�\\u0018y�h��Zǐ\\u0000i�ZU���s\\u0013\\r���D�G\\u001b��S�\\b�\\u000f\\u001a�\\u0001F�kx�yxYS���\\u001577\\u0006�ĉ}�����GK\\u0000x\\u000b#��Jm�@xI��\\u0017� \\f�,�V9rH�V^<A�����\\b\\u001cG3���P�\\u0016k\\u0016nW�\\boC\\f\\u0013\\nsi\\u0010�#\\u0005X�J�Ņ�\\u001f�\\nѺ��5���kEp��c{QP�\\u0014��M���:&�3'�\\u0006��\\u0014��\\n�aM�\\u0013\\u0019�'͙^V�\\b�W#�24EQ�~�O�S\\u0013��bB#t<��\\\\\\\"ڊ\\u001e<�#�P��R7 �\\u0004Թ5Z\\u0018e\\u0017ɎDm\\u001d��\\u001a[�\\u0014�d�pq X\\u0011�\\u001eF�1\\u0005�\\u001b\\u001d���SR�Ȧ\\f�i!, fEmx����\\u001a�\\u001fX�G\\u0006\\u001a��\\u00025��bW�*\\u0006V:\\u0012.E0�(I��(�_Ak�\\u0013P��d�yܤժ�zlt\\u0018�զ�A.,���,X�V>\\\\\\\"��?\\nO�03��i���@*\\u001f�'��Q��Š0L9��\\u0018�+a*�\\rj��W\\\\\\\"<�d)?%3{��א���\\u000b���V�i\\b�FC)��\\u001aM\\u001c\\u0013p��\\u001b�϶�R�ɯU9<�\\u0001gÒW\\u000e�\\u0014�\\u001a�<��xD\\u000b%�xZ�/ro�ާ\\b����e�)\\u001a>��`����o+���\\u0017S@w^\\\\�u\\u001a�y���$�*���ٿ\\u0006<q#\\u0003\\u001b?����b>,M��I�\\u0005;W�Ҵ��t�\\b\\u001a��\\f c\\u0012��w)��������L i�ݿ�/Ǜ!�id��E�\\u0000v��F\\bR#�qܓ\\n�<5#��;g�iKqE6\\u0000\\r[J��69�Q�\\u0004\\r.\\u0005\\u0003��\\u000e:�h\\u0000'�֎��eXO6\\\\\\\"�x0Ӧ�Ƈ�S����_J�\\u0011H\\u001a9\\u0010:���Բh�\\fJ��h/I�\\u001bS����R���\\u0014\\u0000��(�����1�\\u001c>\\\\g��#\\u0004�U>6�C�>����\\\\\\\"Ax m���\\u0003�)�r�\\u0001�\\u0010\\u001b<���\\u000b��^YT����\\u0000�\\u0001��^\\u0004x~�\\\\\\\"u�\\u0015[�#�m�ڑgc���a�x6� �#L�&�\\u001a8�Z3\\\\\\\"9\\u001d\\u0000V\\u0004���?q�&h�`*�.K\\rM�K�VV���U~6O��\\u0015~�ג�1\\u0011�\\u0013A�0b\\u0003\\u0010-Ҏ�Ďx���\\\\�($�(��=��p��\\u0001\\u0005���δpg����\\u0018�xܚ�V2F\\u0003DI\\u001dA�O3!�Ǎ���#��؝\\u000f�\\u0003�Ɣ\\b�k �Ām˙ Үt`�\\u0017��P���D�\\\\_o�3��y\\u0011�Q��\\u0013�+�\\u000e�L�X8�nY�\\\\\\\"�\\u0014ia��]R��ب���\\u0003�k)�\\u001dC�����^��4,\\u0001U(�$��ȭ\\f��\\u000e��>56p5�o����[\\u0004𶵼yVqͬ<v�U��b\\\\\\\"��q�޽�\\u0006$\\u001c��o��J\\ty\\\\' ��z#\\u0003\\u000e\\\\��\\\\\\\"\\u0010m��\\f|\\u0001�0Db2\\u001dC-�4�̡V\\u0004�#�\\u0001�`*���O��Fg��#\\u001a3^��\\u001eU�ǐ���\\u000b�7��\\u00183�\\u0012���\\u001d�@_c�K2!�\\u0001\\u0002G if7Ҥc�{gl�#+�\\b\\u0000\\\\ݷ?:G��\\n��Q�\\u001d~�����|X^b\\u0002̠2�w����Y��\\u001b�w��\\u0010�ٍ�ש|�At}\\\\Z��ќ���Qy3o𡲚���W�\\u001ai��Y9;l�֪w^�b\\\\\\\"X�����\\t��6���x\\u0005�\\u001eEP���ڶ\\b\\u0002�u6��5\\u0006�ŔB�Z�[�DÒ\\u001b�D\\n�\\u0005�L��\\u000e⵪\\u001b\\u0014e@�y�\\u0006\\u0004k��_��]���\\\\\\\"�joݻf\\u000bc>D\\n\\u0011B�R\\u000e��Z]��,\\u001f\\u0006>�\\u0013O�(j��+!P���\\r�6Ǝ&�\\\\�h9�BZVVB/�\\u0016���a��H���,?�X5�\\u001aϓ\\u000e��<��:\\u000eR�؝\\u0005���n�\\u0004���)\\f����'Q��a�s��ɍ�'�U�ċu�}�Lv�O����Z�I��G8��F6 �@�/�\\u0011�g��)⬬�|��|knߐLV����w�\\t�ߒB/r\\u0019�\\n $Uޤ�\\\\�8�M��Z�>6\\u0014\\u0014\\u0004D��4Fr�c��\\u0012��EɵL�d`L[���\\u0003±�\\fs��P}�7]�ge���)��\\b�B�#\\u000fɗN@�մ�3F���7�P�\\u0001,���+�\\n%�:�=j�W\\u000eL�\\u0013�؎D�4��/����Mj��� 2*�u��\\u001f:6\\u0016\\u0011�\\u0015\\r���k\\u001c\\\\��\\f��-�\\u0006��F1�x�oq��4\\u001eB�\\u0017�Π�~��{�ӳ�@nG����}�\\u0002K�}�_Ɓ�f�u�B�$H�+p.9y�WÑߛ��]\\u000f�\\u000e0���`�\\u001f�4�4�\\u0002 ����l\\r\\u0018K(F:�Zg��c\\u0001�8h����\\u0007_/�`�E�\\u001a�[�l\\u001aG\\u0002@۫\\rT�̄X�P��'�i�F\\u00047���\\u00022\\u0004S��V\\u0005�H�ڶ�$H8��ǆư�\\u001f����~�:��-S\\u0015�Lu�43L�(\\u0005\\n\\u001e$\\u000f�0���K���f\\u0012,��\\u0012�<�X��@\\u0017֎��cE�\\u000f\\u0014B�\\u0005;\\u000f��~�\\u0010γB��,�\\u001e��P��\\u000b�/\\u0017��/-�^M0���+?\\u0014H�A{0ev��\\u0016��\\\\�(吊X cb�@/O�\\u001b\\u001d1� ,���\\u0003�Ur\\u000f��e8I�9\\u0006�UΙ�\\u0000\\u0000�\\u0015�nN�<�\\u0018\\u0006.j�E�H۟� ���.V�(\\u0004����ˑ\\u0003���DK�^I\\\\\\\"�(,�U����\\u0000�1�e�\\u0019\\n�q��_���~��\\u0019j�0r\\u0001\\u000f\\u001b*���=Lu\\u001eT׷̓\\u0003(؍�:���'�\\u0006v?r�E%P�^\\u0000�8��lE0b\\u001cX��$��hA\\u001eb�lv�a���箔ۺ�6@�-\\u0014,�h�t\\u0004[{PPH��ɅŨ��*Ԧ�\\u0006lg��X%q\\u0006:�C\\u0001{\\u0003���_:��{v����h�&)-Z尚u�;�Z�~�W���V�\\u0005�*�\\u0005ݧ\\u0016N_�\\u0016r�r\\n\\u0015�\\u00005���q�\\u0015k���aFBB�\\r�R�\\u0011��\\u0000�U_�9?��\\n��\\\\\\\"��d_��E�ٯC�4�܀��w?m1�7�2��Z��?��G�m�T��A������Yn�q�-�ʂF���M�ː@� e��m(��\\\\d��ܫu�Zѩ<i�H\\u0014(gf\\\\\\\"���\\u0000o�l�R:UV\\u000b\\u000br'�WT\\u000b�'�I'(s�꥘(ܛS�c�X�\\u0019V \\u0005���Jq�\\u0000��\\u001a�\\u0013]�(сa}mW\\u0018#-�Ciq��E�y��*5���Ҕw|p`\\u001c\\u001a�\\u0004�����l��x��!T[�)w��\\\\p�{��Q�\\\\\\\"\\u0000:ڦ1���\\u001cw�\\u0002[�x�@�\\u0014�ߖ�=�a�Cf�+qf���a�2A\\u001a�)K��U]P���\\u0014�\\u0019���zUԋ\\u0003ca�o$�*�?\\n\\\\\\\"d�B�[�RW\\u000e\\u0018�\\u001a���J��H����J\\b\\u0012�q�Um5���ǥx�b\\b�\\\\\\\"�x��RG9'�\\u0012~�V|;\\u001bm�\\u0014����4�W\\u0005kB�s��^��k�j$T^jn�\\u001e>T3DU�5Џ����\\u001d�(�&��\\u0015|Z�ɍ�[9K���\\u0006Llx�S���<�\\rM�\\u0001�(�\\\\#�~��A\\u001a\\u0012\\b�#\\u000e$�a),I\\u0016c�\\u001e_\\u001a�G�99���n�Ɣ���6E�icAaɆ�\\u0017�A�d$�w��4�fQ3�m\\t$��Y�u=MO�r�N���~*WKU%��\\u0017��\\u0017�|*��^��t\\u001f\\u001a�b�v_�֭T�\\u00199�;ݓ�Z��\\u001d�\\u0017�l(3y\\u001d�,\\u0015F�u���@��7,+)ax`�����m�M�$�\\f�\\u001c�\\u0007��(�X�'#�?�B�a\\u0012K��/�_\\u001acM!6\\u0011������!��:Q��G4wF����)X\\u0004�\\n�1��X�\\u0005���Sr5f����ͨ�$������\\u0014ϷC\\u0003b�^5$��@'s^��\\\\xpգE\\r�\\u000e@\\u0000mcQW6u��k\\u0012$�P��\\u0013a��(���\\u0000�g\\nHk\\u0012�\\u001b\\u0010F��U$,���6��\\u000b\\u0006O\\\\\\\"�iN�\\\\\\\"RN癭Y��q<����\\\\\\\"�T$��}�\\u001bV�W�}��\\u000b%q_;-UI,ˢ��5�D\\u0012��r��[bNЗ\\u000b�8�>\\u0015&`a�V:D\\u0001=I��%�'�\\u0000ԍ�,A\\u001c�:&�]G��4\\u0004�6��Ee�\\u0005�\\u001e`,-��M'�AjΜ\\u0012����RW�\\u001di�d{�7�yY�r>t\\u0005Mmn�qS���V�Y\\u0003X�4��\\u001aa��,����qt-Ԏ��Ik��:�*�<�%���&�3z%�X��\\u0010�^����h�\\rж�:_,�+^��!i�s�h�\\u0005M�^�#6Ԍ�a�|�\\u0019h9·C��M�N\\u001c\\u0002�a�֑.W�~K��*��[[�i?xi�(���F7�ǀ�{\\u0013�;\\u001aQ�\\u0002�M6l�\\t1��1(>B���x�9nk�Z`?\\b\\u0018\\u0000�X�M�\\u001f��)�\\u001d��d\\u0007n�RI�S\\b\\u001f���1�t'@>5\\u000fl�I\\u0015���\\u001dQ\\u0014�ȶ���\\tp5�&��r\\fy)��>\\u0015�P�����~LQ��l�\\u0005�JI4z�au`O�D�ҘPJu\\u001d<*�]��#\\t����,�\\u0016�H\\u0005��.4�Ɲ��ˈV7<�%�IR%G.�\\u0004�ۥ\\u0016��\\u000f\\u0018��\\u0001�o\\\\��wn�ZP�Ul��AQ�q��ƕ�J��]v�kLlt�&0�\\rm[lA�x�O\\u0011�\\u0018�`9\\u001e�\\u0003�\\u001ew\\u001bP~�*�eg�\\u001b�b�N��ڻx�f\\u0013��\\u0012$��&�\\u001c�����r=�I��L�Ju\\u0003`z�(;��N/}W��Ő'���\\u0015�ceM���m}�\\u0017\\u0006�=�4�_�h�$��6h�7w\\u000b���~�M��\\f�P\\u0002�gJ\\u001aI\\u001eW2HŜ�MV��66��\\fP�1�3[��\\r(���hp��ֲ����q�V��\\u0017�7�e�����M�WU�,A+*\\u001e6�c��\\u0001�\\u0002�[��k��+/��R�E>��\\n����\\u001ck\\u001aj�4���zP�[��?\\u001cw�װ\\u001f3PP�a�\\u0007\\u001b\\u0017��Xc\\u000fm�e׋�op/�z\\\\\\\"�^>�\\u0007��\\u0010��#����[�R7�1�r�'���[�\\u000eK(��U����ɏ�H���\\u0000�\\n�fÂS̯\\u0019?�o��He�b�\\u000e�\\f��\\u0007_�0FN��ϛ��\\u001eG,\\b�(���ssG����PX\\u001e�lv�(DNC[o�R�\\\\K�\\u0015��\\u0013��<�\\u0011�q<��w�M{ �)\\u0002�@��4��I�ɒ9RM����F\\f���\\u0000��z���`ӫ\\n,��\\u001c�~�!��FN�\\u0001c�+l�V�:\\u0010�H ��|DĬ��n�(Lk�\\nt^_OJK0�\\u001bs�KV>�\\u0019ŧ�^<Yu,:�����WS\\u0016��\\u0012�ɵ�ʤ���\\u0018c�������m�T��1�؍\\u000b\\\\\\\"zZV�\\u0000q۫\\u001e�x\\nv��1X)���Y���cĕ�,�O�z�Q\\u0000dPt\\u0006�\\u0004S��UF\\u0005 2O,\\u0011*F\\u0002��\\u001b\\r�N�FL��\\u000b�k��T��d�\\u0016']@��s=�I���k\\\\���� O&}�!��H#6Ek��6�mq�ƴ�s\\u001d\\u0019u=H�R�`\\u0019u7�G�9ƌE\\u0004h\\u0005�\\u0002���M ���O�A~��j\\u001e�{b\\u0014�A�S���\\u0000Z��Xy�{\\\\�?a�r\\u000ecP�6J\\u00036�F���'e%E\\f������_�9��$�ԣ�_Cx54�(���:4s���?�q\\u0004��JU��\\u0007O�/�PE\\u001ead����ҳL�\\f\\u000b��ms�6��q�Ş\\u0011$AX�\\u0018�B+��ݯ��c2\\u001b{\\u0012?�:����5;vz�A$�T����M\\u0001�Q\\u001d�29�r�\\u001b\\u000b�\\u0010�\\u001d�}�cQȾBB�A'ʉ��\\u0018�c>\\u001eC�\\u0000h�x��Ɓ�(Ip}-�z�\\\\\\\"\\fs\\u001f4�:�ֲ��/�3��\\u0013�\\u0001,\\u000e�'ZY2\\u0007�͠\\u0016�n(��cI����\\u0006���\\n�.+\\u0004Ko#,_���c��$�s�ѕ�r\\u00001\\u000b�)�i#�h����\\u001dM���n;b\\u001e\\u0011�(���������Y��!�dk�k\\u0012n�\\u000e�jTβ���3\\u0012\\u0017\\u0003��\\u0000ޭ���w>4.#^\\u0014����A�\\u001b�֤�l�oe�\\u0016&�O�,+���F�e�*���}�iA\\u0002A����/P�q¡���\\u0015\\u0006\\u001c\\u0002�޶o�v\\u001f;�#\\\\\\\"@,-Z\\f�Ë-ύ꫁<�*�1�i�n\\b�+���n�K�_M�\\u0015��qc��h�t\\u0005�l\\u001c�\\r�[kj��!cn\\f\\u000b��x^�H�G�\\b#j��@v\\u0016����T���Qr,F�V\\u000e1Ț��\\u0017^v��(j�\\f�ŉ��&cp6��\\u0012�f_o��i�\\r��Q��ZH�啯j/�w\\u001c)V(�L�U\\u00058� \\u0006���z\\u001a<uL�O�&�H����8\\u001ar�&��\\\\yUĢ���A���;yT�\\u000b�0\\ro\\u001a.�SlV�\\u0015,2,���a��]�!'��0o���J&U��b�\\u0001���\\u0003\\u000eJG�OU��i<y\\u0015o�\\u0001\\fV\\n\\u0018�/cj�\\u0005A���*��\\u0012�Z�\\u001dQ�˥Yh�&A���},�ʋ9��=$_J\\u0005�%��a��*�G4�����p�'gۥ\\u00101�E\\u000e�\\\\�\\u000e���W;�\\u0010Ŝ�4��&Ȁ�`>5��\\u0000��(���\\u001du�i�\\u0016L���.T�+܎L|\\rs�8|��X=��2F��w\\u0012)��\\u0011\\\\\\\"�\\u001a\\n�'X��S����ȯ�(@9���(�BK�T��]o~4xfD\\u0000���iz\\u0007$�dؓү\\u0004� �����e��\\u001c��@ h7�x�6/nia\\b�����b-���\\\\\\\"+\\fx�N\\\\��j�a��\\u0004d�&�\\u0002mj\\u001d[RRp\\u0011>\\u001a�v���\\u001cs\\u0002�0��\\u0011�ۡ��,f\\u0015䀓r���U�Ȟ\\u0015�\\u0014��wPt�\\u0014M���p�\\u001f,�G#Ao3^\\u0010\\t�y�5/p�coI�6$���:0�U��|�\\r �!��kL\\\\��R]?�b�\\u0000n\\u001a_ZO@Z����6P��\\u0012�v��\\u001c����{�yD�$1��E�\\u0003�`lTҴ<F��Ƶ3�doR[�}H�m�q�i.Y�7\\u000b��$q�\\u0010�Toq�/�\\\\\\\">�+��lN�[\\t�H#\\r3�\\u0013!Q�\\n�խ�t2\\\\\\\"�UO\\u0016�\\u0016���\\u0001\\u0003�E\\u000b����\\u0000\\u001a���\\u0000\\u0016C��FS����]/dE�\\u0019}�P�����\\u0000�sr�5����Gbw\\u001c�5e���܆\\u0017�P�&u\\u0013����\\u0002�4�;?��u&�*�����K$�9�-�W�T\\u001b�L��Y�f;��Lg#��a�\\u0011#W���S֗�ߨ�\\b^��d����o��\\u0011T�Q`6\\u001eT'���{��m$�P\\r�q�Ej�5\\u0002��#C�9$\\u001b�m�\\u0014D��\\n��T\\\\\\\"�\\u000b���Z0���Z�V\\u0014$���V�l��Q1}�^��mGa\\u0010�\\u0003X�i�ƆL�\\u0014�j\\rR\\u0019\\fR\\u0007\\u001d7�RI���40X\\u001a6�\\u0010I7(�\\t�2�dx������c�>�mq�T���\\u0006&��P�m\\u0001\\u00119`�nw>\\u0015丳��ܕ\\u001aG\\u001a\\u0007\\u001c���\\u0011�\\\\\\\"�X���\\t�4��؋�[/��}(\\u000f�Q�Z\\u0010�$m<v��퓪���\\u0018�샥s,O��}\\u0019����Y�T-�:�vY(�\\r#���>B\\\\\\\"\\u0002�\\u0010\\u0015TjI'@+��=�;d\\u001c�\\u0001�%\\u001f�o�\\u001b�_�J;\\n#~☕\\u0007�LV�\\u000f�\\\\}��^յ\\u0016\\u00133��\\u0019�;D�\\n�\\u000e��\\\\v#�VnE���v\\u001ej�H�\\u001d��$*���id7W�t[�x�\\u0000Q�c\\u001b\\\\\\\"LYD��F�t#���&���!�0�?���HNN\\u001a/��Pmt�\\u0000/�%���\\u0002,ș\\\\h\\\\m��]\\u0003�\\u0018$unc�\\u0016e>{�\\\\�t��r�\\u0001\\u0005IՆ�V=I�^gȺ���g�q�4o+��A��Θ\\u0010�\\u0019sw j�a�H�8�{`]�1o3M\\\\\\\"�Ѣ\\u0014h؃��\\u001aK\\u0005ˎEq-�\\u0002,m��[���4�\\u0001�/p��(\\t<u�\\u0002V�\\u0000�t���4R\\u0015,X��\\\\ڛH�\\b�o�m\\u000f�\\u0004a�\\u001b%���\\u0014��k��d*fa%�)\\u0000�Gm/ZE���d\\u0001�\\u0002\\r��*�+\\u000bXY\\u0000\\u001f*g���姧q�I�L��=��\\u000b��\\u0002���ʀ$���=j7_�(֗�����\\u0005���^2?0�\\u001a?+�c�\\\\\\\"uVNEB(L#\\\\\\\"!g�\\u0000�N��Zc��$q���\\u0000\\n���\\u001d\\u000e⪬U�.�\\u001b�[�YY�܊��~�\\\\\\\"\\u0002N���vQ��׹D� *�{j+92�a�7\\u001eU\\u0005\\u0019K�����s$RlON����f\\n\\u000e�5��Uۑ�j�׶�Z�՘�.���39��z:\\t�C�l�te�H�\\u0003'�+��Ό|u`�5�5��x\\u001b��W8^Ua���׫\\u0015��v]�gEu��T���\\u00117\\u001b�M�J`ܗ����P9������o�}��U\\n\\u0002��4��0��\\u0015+�z�qa_g�\\u0006�W\\\\\\\"��n��\\\\}߸D�R[\\u000f\\u000e*�\\u0016M��#��&,xZW6D\\u0017>~T�\\u0015�F��]A��R\\u001c����=�\\u000b�`v\\u001f!^\\f��\\u0000,�\\u0000�\\u0000M:|A�\\u001edM��6�>۱��&\\n��U�������k�k�}\\u0005d�;ۓ\\u0013m�G\\u0001��~ފ8{j1#�����x��\\nϾ��3�{\\u0014��\\u0015�l�ݷ\\u0017\\u0002,yC���Z�q��z[�{��e�\\u001b�t��,Y��\\u0015�\\\\\\\"\\u0005Kږ�]��J�9w:��VI\\u001a��\\u001a�ժ\\u0003j@�n^筠��˛\\u001cZ;X\\u001b���z\\u0003.y#�\\u001cI�a�JO\\bC��RN\\b���\\u001d~5�k�����\\u001d�B\\b&�ޖ����ە���EfV\\u0003�֢�UR��n+9\\u001a���\\u0006J�q���k�A\\u001ai��0ݦ�\\u0012ͯ E����+\\f�B@\\u001fBI\\u001by�ǙBX\\u001b0\\u0016�K��dUr� lbOl���i\\f�}Ƕ���˛K\\u001b��\\f[�,z�<�)`�L��#�Ʃ͹�:ߥl�F�R�V\\n��>\\u0014�F�|v�W�^D�@ֈ��\\f\\u001b�k�:��Q]�\\u000bG%��\\u000b��\\u0014P��{[KS䓁\\u0004>|9X��\\u000fy\\u0000\\u0017�\\u0003�\\u001d�`)vf.k\\u000fN4�N��m>�u�pp���\\u0000�I�\\u0000���$>�\\u0000���v�\\tII`��S:\\u0014�D<\\u0014�,n\\u0001>\\u0014�#��\\u0014�;�O\\u001b\\u0015 m[wk/qVؘ5>6z[�4n��.,H��.yX\\\\\\\"�pV\\f_j;����'A���X�n\\u0004o(+�\\u0005\\\\\\\"�|mX�敆?m��k���\\u001d.A�1�!_�\\u0015\\\\�\\u001b#Zܿ�P�v�\\u0015��*RW-Ň\\u000eu\\u0004�\\u001f��\\u00030p�����Wuf�Fu���\\u0000\\u001a\\u0001�`�H�I���]W����.��8�ԯ)�\\u001c ��h\\u0010m��5��\\u0005#\\u0005�!��\\u0014\\u0002\\u0007�Gv�,|h�\\u0016wq���x\\nؠV��­�*Ϗ2\\u001cr#��\\r��\\u0004\\u000f\\u001b���#�BDh\\\\�\\n��Y�k\\u0001�B�c\\fl�B}.�����\\u00027�d\\u0017x�F�*Eo\\u0004\\u0004�~EI��M��\\u0015&\\u0011�Y@�yizU>n*J,��������\\u0011c,�\\u001f�JA;�(�\\u000e����9�d@���\\r�\\u001b�('ut�H��\\u001f���11\\\\\\\"�-\\u00161c�=I�B\\u0015�0\\u00037ox�E�\\\\\\\"6f[��\\u0000:\\u001d�V[��ƜO��\\b��F\\u001e�E��-ƥA�X\\u001e���I$3��K\\u001f����Ǖ�Ɯ\\tY�\\u001c_d\\u0007�\\u0017��oU�����\\u000e}\\u0007��\\u0013~�/\\b�b��x�\\r�RH��I{�\\u000b\\u0003,�v\\u0003������\\u0000\\u001a\\u0015\\\\6�1�8)0\\u001c\\u001d�;�:\\u001b�����NN�\\u0000�ޡ�X��,�\\\\\\\"nG�p\\u001eݭk�׽-��g\\u001e�\\u0019\\u0019��^��ƓE!�\\u000e4Y�*C'��\\\\\\\"H�\\\\\\\"��\\r�\\u001e�xQx_��p�d9(M�0\\u001b�Mk�\\u000f�\\u000e���I;&f�c*X\\u000fN��N���+�`L��\\u0006Oe&�ώ���a�����ҥ^�����p��S�S�\\u0017�����N��y\\u0011,\\u0018؝��a�|�O<�rI�y\\u000f�����P�syI��[�M\\b��'�@�d\\u001b\\u0006��Vg:]U�[����2�$Y� \\ro�ൾDVI\\u0014s�W����\\u001a�n\\u0006�q�#�VfR�ک��|(�qa�9\\u0017>[S\\u001c\\f�5���\\u0013'��\\u001b�r7�{�\\u0000�{&�\\b��*�ǰ/�NƪT��ޫ�$�+\\u0016!Л�w_�Y�7�4\\u0016��ְ�\\u001e\\u0003GoB/�\\u001f�V\\u000f�<w�Y�lV�\\u0000�[\\u001f.4(�s\\u001b�-{Z�[iM_7\\r\\u00106:��BO���V�%H�V#\\\\\\\"�����6�Qy\\u0018+\\u000f\\u0016F�\\u000b}\\f+.��\\\\\\\"pa\\u0016.Eﶛ�g��(�\\u0011�(ͮH�ⱷ)ÄkX��\\u0002�\\\\��|v+}ﱡ捲&�����WB� �Ē7\\u0016\\u0017��\\nY�af��>�T�X�Z��&\\\\��q@�\\t\\u0002�9�6�e\\u0006'(�6>\\\\\\\"�����\\u0004m3r�ʃ��\\u0005ܰ�b畐��n<\\u0019��3kꫵG:ʫ�M�9*\\u000fREr@:�\\\\\\\"\\fv��O\\u0014'V?�P��W'3�qpF�izvزC'������M7���Z�� \\u00077\\n\\\\b��܉�\\u0003\\r�zW�gH�+\\u00007\\u001e\\u0015������Dj��~`\\u0010����\\u0017���}\\u0007��Xu�\\u001d-�K7K�cbB�/�6��\\n7\\u0007�cg�g�d�\\u0012J�\\u0016#�kJ��2��\\u0011\\u0002�carC\\u000bkXǝ\\u0014���Q1BA�ε9C�vn�rޭ�;�j�\\f\\u000fc$L2\\u0010\\u0003|�@\\bIN@��N1�t��ns[�X\\u0010O,24d�A�񦤋c@PI�z\\r��P���\\n�Eu�Lj\\u000b&pd���C32\\u000bي�~W���1Z\\u0016ȋ!��YM����W!���gӫ���ƈ����\\u0005\\u0001h�]�M�_�Ɵ\\u0016�p4�\\u0018&FB\\u0000\\u0012W@6\\n�~\\u0014BA��\\u0015�$v/k���[�녕\\u0014<�,��+\\u001fUt�\\u0018��\\u00127�i\\\\\\\"���[\\u0013C��E��Lp\\u000f�O2=7\\u0003�R�1�.cu�\\u000f�^�����&\\u001cT\\u0002�m\\u0007��6W��\\u0011�D6��?�jVv)�\\u001c�\\u0000m�z�F$\\u0001�Pt�:W�G���{Qs���X7\\u000b���\\u0000:s��s\\u0019\\u0012\\u0014^E��j��V�,Y\\u0015b\\u000b��~N�@\\u0006�\\u0007ƶ�c�b\\u0018\\u0002���i�;YW�7��]�\\u001a��T�\\f=�\\u0004jG�ڳyx\\n9�l���y8�.H�U�j\\u0010��A��ӈE?2\\r�G�2敠����\\u00061������V��j�Ţ\\u0016�u�;%5��#��LY��,��\\u0004�L�wd�|6�ɝ�e�2\\u0002\\u0017�tbZ�̌��\\u000eM�v?\\u001e����\\u0015e/dacn��{���W[U����\\rSZ��tLI^v�ؐT\\u0003�\\u0004\\n\\u001c\\u0012�\\u0003����\\u0016D\\fd.��[B����OzX�\\u0001�g�Tx�ZR�j��5�L\\u001b���˿#Yȁ\\u0007\\\\\\\"t��\\\\\\\"A\\fe��{\\u001e:�Nf�����\\u001d��p��2F����\\u001e&��>U6\\u0011�#sV�\\u0016\\\\��\\u0007�&���|�L�y\\u0002K�S`�Ω\\\\\\\"\\u001e���M<�1\\ba��N�ƌ�H㈻�\\u0003���R؛!cq��P\\u001d|X�Q\\u0018�O���v\\u000en|�G�σ\\u0006��\\u0013�E\\u000b��&��\\\\\\\"r��ʪ�a��\\u0016��\\u0017\\u0012!#/���?J�\\u0016�o�HA\\u0017\\n-z\\\\�C��8��\\u001c�[��J`��%F��\\u001d\\b\\u0004�6�~ތ\\ff\\u001b^K\\u0012|�0u�q\\\\\\\"�mR߂�\\u0004�\\u001eh�\\b�����\\u0006fFd�ٙˢ��X\\u0000m�ҩ�{�o��O��I}@���\\u0000w³y��\\u0015���$��d\\u001e���\\u000b}f�\\rk�aX����RI\\n��\\u001e&�y9�Q]:-VE�\\n�I㉐Hx�6���`E��\\u001a\\u0001{U{�4-\\u0017�u\\u001fM�\\u001eU\\u0016�I��ȥH\\u0006N^N<�\\u0019\\u0016�TmHa�\\rU���\\u0000<\\u0015����{X\\u0001��Ѽ��\\u0013�c\\u001c\\u0010\\u000f\\n�`�!�4-Ȗ�\\u0000/+\\u000f�N�����প�\\f�����v^�'jo\\u001d�!\\\\\\\"\\u0002\\u0010�H�F�ݲ0�jX��w\\u0005�s�`5\\u001f*�t�h��X��E\\u0007 ��\\u001d�tѭ��T��Ph�X�oZ{>'Z\\u0003���38�^\\u0000X�֋ɘ�WC��\\rPU��ך���d�A7�^#\\t\\u0005��d�M;]��\\u001a\\u0001�|<j�]X��KQ�\\u0014��m�\\u001cj��!ƿ*^��Ma\\u001d��11�E3�n3~@���`��\\u0016՚�\\u000bh~u���`��$桝��lǨ�R)d��\\u0019��PO�Zˁ\\u001a�D\\u0013Ғ0_�-+��\\u0011bƱļ\\u0011t����I��r�Y��o�!���FԢ\\u0001e��P}۴Ń\\u001crG#9����x^�WI$��\\r\\u000fZC���G\\u0002�R#\\u0016{t��>t�RR\\u0013,TaN$�ӭ\\n���\\u0011\\u001aݗ[�\\u0000\\u001a�U���;�q\\u0013k�ϕ\\u0011\\u0002�Ŋ$�K{�K�G��\\u00120`\\t \\rIژ���� �!\\u000ewQm)y�k�h���3\\u0006ZG�\\b�bl�����)J�a�\\u0015���0FB]Z��6?*\\f�\\u0005�u�$r��eV\\u0007��\\u0012\\u000f�s\\u0010�\\u0004�\\u0013\\u0000�X�\\u001al\\u0001�� \\rI�S\\b�\\u0007\\u0015�HU�\\u000e�cY�X��\\n\\u0018\\u0010\\u001bB�[\\u0013N;n\\u00149���b��FA�_\\u0011N�nQ-��3�D�\\u0018r\\u001d�\\u001c�\\u0000/a�$ț,�ȕ����M�\\u0010��O\\u001eU��\\u0001�7��La��ꯔ��\\\\�\\f���\\u0012�\\u0000�M��\\u0014�9\\u0017��M�Z�wɰ��\\u0011\\fJ�0%��=>:m@c���E�-ه�\\u001d)&8\\u0005 �\\u000e�ΰ�/\\u001a&��\\u0003xj\\n�_\\u000f\\u001b%զ\\u0000����\\\\�?k�69��\\u0005A��5]=+���B��Bq��$W���\\u001a0؃E6ndlnV���\\u001a\\u0012\\b\\u0013\\u001c�)��ڲ��&D��H��ӿ�\\u0000SWYjQ\\u000f�D�2M~di���%b\\u001a�u�\\u0003\\u0013\\u0017\\u0015\\u001fސ�\\t�\\u0007_��09��\\u001b��g\\t�\\u0005UKK��,�VܛӳXkS!ef�#\\u0016\\u001b��������rM\\u001aư�\\u0005�\\u00003\\u001f\\u001aƎ��0���\\u0014(�\\u0005 �*!6\\fm~�Cv�o��\\\\���F`��mQ�#m�W�.eC\\u001f�\\u0014��Qj\\u001b앖��WK�4+?l�\\u0018��\\u0019G�٭A\\u0013azc\\u0006Z��͐�����\\u000e��;�\\u0011�\\u000b\\\\\\\"X�`9\\u000f\\u000bV��!q�r\\u0000�_K��W�\\u0004�\\u0003��A6\\u0017��\\u0004Ы�\\u0011���.��֍�����^\\\\y\\u0006\\\\\\\"�<z��*NL�����\\n�M9��E\\u001c�`5�8̗\\r�'\\u0012�Gu�\\u0005��[\\u001e\\u0011#��\\u0000�@\\u0004\\u0012\\u0007#}-�R��l\\u0015�P�K'��ڰ�7�E�5%��\\u0000.i��{�\\u0015-�\\u0017\\u001e;\\n����\\u0000�洦0�V\\u0000z��\\u0000!�i4��i��!��WY�\\u001f��[\\u0016Y�`��ߛk�]ngl�π\\u001ce\\u000b�:\\u0019�Vf@�-s�nZ؊�b�\\\\bмdK����,���o\\u0011R�J\\\\\\u0001�of \\\\�N�Q\\u0018���=^���^����\\u0017mH��h[q��9\\u001d\\\\~o%�>t�\\t�\\u0000��\\t\\u001a\\b\\u0018X�X���BLny�9�nI�_�k\\\\\\\"ǿ\\u0000\\u000e�\\u001e>t\\u001et�UQ\\r��ژ1�n�9�{��ȦΡTq�'�\\u0016v�\\u0006/\\u001a�ͺ��j\\u0013\\u001f�dc\\u0011x\\u0011��#Q�Q��l�cx\\u000f\\u000fpِ�ǭ\\u000e\\u0010�(\\u0011��\\u0001�{r��m\\u000e<nl�T��4�5E\\u0018η����\\u0015?�dǘL\\u001d'�\\u0017�\\u001b)�b4�M7����i��)�Ŏ\\\\\\\"��\\f\\r�\\u0005`�G�zH��Q}�,\\u001eُPװ=)SJ���n�M�\\u001eX���\\u00169R\\u0002AQ~��Q���E�\\u0017�UQ��X\\u0013��5��\\u0006-��:�)rcu$8d���#[�\\u0000X}�g�\\u001e�\\u0013#qK�4��,޲\\u0007�*�NB5�ŏ�NI����hRS1\\u0005�1\\u0016\\u0016\\u0017\\u0017��㨑�&拠b-z�n�\\u0014\\u0018�ɽ̎\\u0016�z.��dr��4�2�\\u0005R\\u0007\\u000b��\\u0013���82e+�x��l\\u0019\\r���_�܅\\u0006څ����\\f�E�M�mg)-�/!�l��-!P���\\u0016��S@�f\\u00037���G�o�?�h��܍nv�\\\\\\\"\\u0011&��d��1��`.�<6�\\u00120\\\\�\\u001d�>̧��]�X ��ZI5-�<>TFLBIf�\\u001b�\\u0002\\b^�,5_�ާ�YQ�\\u001eGo�bi\\u0003ߎ�\\u0011Y�\\u001c�\\u0001\\u0000X��E0�\\u0010��v\\r�H��\\u0000\\u001a�_���\\u0000(�(��(\\u0014ɏ4_Z�x�E[\\u0017\\u0019����6$��Z�X[M��x�#2�\\f�\\\\��\\u0016mU�4�\\bݏ \\u0002D�OA��fǚ\\u0006�*\\u0014=/��\\u001a�}5���\\n:\\u0010�2��ֱ]�O9)�lsE\\u001b�!��\\u0016�\\u0010v�la38\\u0003�`�lh7�P�\\u0002�uUs\\u000e\\bukP\\\\\\\"�)c�\\u00148�\\u0006N\\u000e�\\u0003���N��89(��\\u0005�\\\\d�u\\u0004��[`��T�\\u0016A��\\u001b\\u001b\\u0010)�\\u001ce�$��\\u000b�_[�l�\\t�\\u0019B�\\u0006�S~�[�\\u0010����\\u001aS��Kfd2�������rJ�*7\\u0007���\\u00030f\\u0017�S#0��M�#�?� ��ц��\\u0007T�\\u0005�*u[(\\u0005zއL�[R��:1�\\u0005k1�͢\\u0001:iB�HJ�hTȌ����Ύ��Ò\\u0016�]��zԑ��K�\\u001eR�\\b��\\u001d\\u0006+\\u0005+㡡��id\\u0016Y�/�X�t�@���qF7c��,�U�\\u000e���\\u0002��\\u001b\\u001a�Y�I�����'���?��-�\\u0000Q��1�qǇE'���h��\\r�k\\u0011\\\\y��/�\\u0002��ų\\u000e�ؿ�lݹ3�۔���\\u001a��V\\u000f��!\\u0018���ND��\\u0010J\\u0000�on:X��T��\\u001e\\b,�-\\u0018.�,u����Iږ��0\\fn˛�\\u0011�>\\u0001\\u0015�\\u001b��\\u001b�+O�\\u001c�~n�\\u000b�I$�v��S\\u000b#\\u001c7��;�M�k\\u0000Ez���\\f�d{�\\u00002\\u000b\\u001d|x�ir���^�\\u0015�2c<\\\\��}�#��ٙ�V⑇�u\\u001a���,��c\\u0011�B�k�n�ƹ\\u0006�$�\\u0014�\\u0016>�9nw�:�\\u0012�@�NXOq��:�Z�\\u001b1�q\\u0019^.~��ȣ�_meddԑ���p\\u0015?@!�I�\\u0000 `,>\\\\\\\"�6\\u0011���Q\\u001b���\\rv\\u0016��\\u0000��\\u0001�O�\\u00174�\\u0001o\\u001b\\u0010<�\\u0010\\t�j�\\u0016�@�X�����g\\u0002~��\\u0011\\f|\\t�_�\\u0002Ѣ�Im�\\u0004I�ϻ\\u0013(u��Pj[\\u0018�pT\\\\I�q�xU�\\u0001�81�RJl\\u0001�\\u0003̟\\nZ��9��\\\\\\\"�Uߎ��\\u001ao��c�h�\\u001c��*~Hn o�\\u0000��0g������>mK����ZF \\u001d\\u001bJ-�s�81c��u+sj\\u0018��J�Y��Y�ċ/\\u000f\\u001d�m�@�+\\u0019a�!nB��t�jG\\u001a�\\u0015cż(��L��1�IQ��զ����，�;�Xr��\\u0005�j��\\\\\\\"�ˀL�\\u001e8Qȴ��\\u001f\\u0001�kX���&$_`+)�\\u001c��xX� \\u0011��Eb�P\\u0007b*m�\\u0007W&m��E&��B܂0��xS��ǐ6�[P\\r�>4�^H�svS��NJh�+\\u001d���0\\u001d\\u0006�5�2I#q��#�ƏŞ,�\\u001e9�\\u001c\\u0015n��=�/�\\u001f\\u0011[I\\f)��Ɔ\\u00125��\\u0017 r�Ҝ�\\u0000<|i�g\\\\xW��l\\u0007�&��~��f\\u0007&UH��#<��qj\\u001b�H����\\u001d=��|EtX�ѧ\\u001f�lW���$\\u0005�5�e�W��Bٿj�$L˒��h\\\\\\u000e?;k\\\\�h8R�r���˰\\u0015�f\\u000e鐎\\u001b�\\u00023�CS2k��x���W\\bˣߥ�>�y�9\\u000b%�X�������)�k��\\u0018#��T7�^6X�\\u0000����[\\\\\\\"=H ��%\\u001e�K\\u001aca�ޣ�\\r�O�Q\\u0007��,fA+�ߦ��9)\\fQ��h?\\n�ّJ���\\u0012�e\\u0000�\\\\\\\"F����Z���X\\u0000\\t\\t��A��ܗ\\u001e�\\u001e4&�zu=h��R~��o\\u0007r�Ɲ� ��+�\\u0019��\\u001dN�X���:6��]�m\\u001ch\\u0005��\\u0005.T�m��X, 2����Ɯ��\\nL\\n:��0�~[lG�j�Ω˯�\\u0014��:�<��QZ�<�A֮\\u0015#�[#���o%���P�\\u0010,��(\\u001e\\u0006��\\u000e�Ri��\\u000b� L�E\\u0017\\u0017�ՌsX���\\u00177�G�J\\\\�!\\u0010�7�����b�F\\\\�����\\u0004�lA������1�\\\\\\\"�ƍ ['\\u0010H�I\\u001b�\\u001a�\\\\\\\"psiٙG����?���v�b��VnJ.\\u0001��LD(Ko�\\nCܭ\\fr�mƀ�i9����|�2{N\\bQ��$�ŕG+Ux��\\u0007\\u001b�ֈ\\u0018�\\u0014(�ܭ�T4��\\u0014����3�\\rE��Qq!�^&6�P��23�4����h�Vԭ8�S&Vv�\\u000b\\u0010c,ǘ�\\u0013c����9r��9rv�\\u0004���ml�n�v�U}�[]6��!5\\b���\\u0012<Ŕ��A\\u001a�[#\\u0017`�jv���,\\u0016�:t�Z6\\u0011�$�.�\\u000eڕ\\u0001�v�HD����\\u000e�\\n\\u0006W\\u0011�Վ�|�M\\u001b�\\u0000\\\\\\\"=�\\u0002�v�����F\\f�CrU��A¥]��5������U!uk�|��J�_`\\u0006���~b&[�<��J�3�$A��`�]*�\\u0018���ү�\\u000fl�\\u0001 \\u000b�֩۽���\\u00031ؓr)�\\u0006:����� }�U͠\\u001e\\u0014�#c*�P\\u0001'�\\n�9$\\u000boS!M�S\\f\\u0014����u(} \\u0015�[\\u001bUԫXq�w�ƪ5\\u0017�h�f�2�\\u0001\\u0003���+8#yd(È]X�lX�X)oI���}��|/\\f2eD���O\\u0013rGZ�)jG&�\\u0005��1G��O�\\r\\u0004��V�\\u0007��D��l�{\\u0000\\b�6\\u0003C1G���\\u001dYo���Ʋ�J�#J�)-\\u000eZJB\\u0011��N��p��v6'^#{Rx�)*�\\u001e��,uҺ�\\u001c�\\u0000YA\\u0000s;��&�Ácc\\u0010F�\\r���\\u000f\\u0001{��S%���\\u0003H\\u001c��8�o�qz3+�&>,� \\u000f BA:�aҕ��'q�6+~�c�\\u0018��Q��*7i���\\u0002�~S��Gv���B\\\\�Qb\\u0007K�<d�cb\\u0010��k�\\u001f\\nV�Z\\u0002G+$RD�%R�7\\u0006��!�>�\\u0004t'�t��)\\u001b\\u001eF�r\\u000fʔG�\\f�1��F�A��x\\u000bЯ*t\\u001a��r�`\\u000f\\u0000.l7�4\\u0011���_P\\u001b�F��^ɟ��&|o�!\\u0004�X؃}\\u0014���W��\\u001f�S3\\u001dx\\\\�R�^�Y5��զ*Y��\\u0018kmrk�5��5�{&{ʱ\\u0000��刹�-U�Db��\\n7��\\u001b�i=P�S�!X�-�ˌ��5�ʏ\\u001d�\\u001e\\u0005�7\\u0011�ҕ�#I}��魶��ʝ$3��#Qn=$'�)Њ+\\ti\\u0004�8G��̈�W�5[��^�C;ʀ�\\u001aG)��E�>B����y\\u001b/��L�\\b\\u0010�W�#jɸ���Ƽ�E�4E��EVd��\\u0010�\\u0007�KQ\\u00198�\\u001d��\\u000eF�\\u001b������\\r0$�Q��x���\\u0002\\u000f����dƤ��'p@�T\\u001cqE\\u001a;,�\\u001a��A�>Gβ�fTB\\u000b<���\\u000bs��S�\\bAPw\\u001e�\\f�X%e��$�\\u001a���Z���'yK\\u0006�k��T�5~�!�9b>���{�4n��fB�_\\u0011aҪk9H#�_/s��q,�se\\u001cA�\\u001a^��U\\u001b\\\\\\\"V���*�x�\\u0000V�sv\\u0017e\\\\\\\"׵QI*\\t���EuPK\\u0007�Gu@��sp*���/z\\tU�3�\\u0004��]Ej�³�X�\\u000efǥ\\u001b�=��\\u0005cq@\\fí���B�Q�\\u0006䟅\\u0001\\u000eBH�T�J�\\u001c�\\u0000nrm�\\u000f����IUB\\u001bm��0��p��=�q��D��\\u0010h\\u000b1�\\u0000(�v�R�4��H\\u0004�ֹ�W���Q\\u001b}��9\\u0013P:\\u001d�\\u001c\\u001f���\\\\\\\"���#�&��\\n\\u0012�7�ڒw|i A\\\\\\\"��t\\f\\u0006��m(<YħS��n��\\u0019wY%|��&�\\u0001��Z\\u001aX\\f�\\u001d}\\u0000�G��Q~�\\\\\\\")s�\\\\\\\"��E�w���j5��4���\\u0000�\\u0001{ڥ��&��\\u001a�5�cU9�p\\b��\\r�O\\u001ad�G��V��\\u0016\\u0016ޗ̒��ʺ_ʺD�\\f��Lw\\u0002.V\\u0004��@�\\u0019ݟ\\u0019��(���9F�rá>uUM�lK�\\u001e�\\u001f�&�Ḿ:-\\u0015/\\tqe���Ɵ#{W��,�B�ҽH\\u0018�\\u0017��z�\\\\\\\"���R��p�~U�@\\u0003\\u0006cr�Q2��Q��cNn\\u0017��)�\\r��y�y\\u000e��*_@<-Yd�dJ�#�d�`�H�+��\\u0000i�@d��w���XT.-�\\u0003��2�K\\\\\\\"ʍc`>\\u0014�\\u000e.�\\u0016\\u001c��_*Tk\\u0016�\\t�-���\\b6\\\\\\\"ƨ�n\\u001b�&�B�@ԋ\\u001a�T\\n�&������U\\u0003[z������\\u0005�}\\u0005n\\u001b�\\u0006܎��B\\rq�2K}^>Uy�IP��=*�\\u0010��},\\u0000<N�\\u0000\\n\\u0018\\u0013ȃ@\\u001e����ޖ�?�\\u0007$\\u0018I��t��\\u0016\\u0006�u� 5\\u00156�\\u001d��{��D�q7\\u000b�j��\\u0010t\\u0007���dv�f\\\\\\\"\\u0016\\u0011G-�3�\\\\\\\"�6\\u0002�8�\\u0014�},v$���i�D��!�\\u0003g-c�\\u0015�>QF\\u001e�%G^��&D�vE���\\u000fs�m�\\u001d�NC�c�f\\u000b���ih)z�b��[\\u001fuF�4/u�ǐ#B��\\u001b[xZ��=�8�\\r\\u000e�F��|k���p��n�\\u0006��j�����\\u0007?�0@\\u000e,�Xص���5��\\t\\\\\\\"8��\\u001e�����8F�N��5�X�<wx��5\\u0017��Q�R��.gpW7��&\\u0004�*' ���n-�\\u001fܻ�>b�@��n9\\u0001�\\rs��<�6��Uk\\u000eJ�\\u0015\\u0001�m5�tO ��\\u00194��va�\\u0003B\\u0005`4 Ю�#�I�M��Xݛ)��@��f6\\u001f}N\\u0011Q'�\\u00191�\\u0010Qu#��dP:I%�\\u0015��ipzQ�Dq\\u001c4�\\u0015\\u001a�j(��2d#LT�����R��\\u0012�d\\u0012K\\u0015��+X�E�`~5�c��.�7��BUU���ę���\\u001f*�)�GŴ��;\\\\�e]��\\u0001��;��)�ݦ<h���]�k\\u0012k.��Vʭ�Z8����\\u0004r�#{��G���B\\u0005��\\n;?�F�l�6'�C���\\u001a��\\u0015�m)1q`y\\u0002SǇ. \\u0001�^���\\u0000\\u000b�*�4��\\u001e��t�\\\\\\\"�x}�i&py#�(\\u001f����`\\u0018�k[�M�\\u000e0�u��`�\\u001bڎcc`�.\\u0003\\u0001��؝�1С\\u0004��R��x߈\\u0016*}W�+�2q؂����\\u00109n4ڊ�\\u0018aj�?��rnŶ��[ޗ�Nf�K^�\\u000b�)c\\u0002�46���i�\\u001c\\r4\\u001e�D\\\\7�m��\\u0006�֪�i{�\\u0018\\r� ��f%��m��n�\\u0010�Cc$�9r\\\\\\\"ʫ��h(2��\\u0019\\u0005��\\r�t��k|�l����qnd�;s\\\\nQ\\u0019\\n�V�k�h���4R3���jl\\r�4�5�\\u0002d�:�>�8���\\u001c�(�;�e.N\\\\�Ep�`/��Z���lv�����f1�S\\u0007\\u001b����(�^���5��;\\u001a�XQ\\\\\\\"V��\\u0014)�\\u001c��:\\u0003�n�5��kE��4��uYP\\u000b�\\b��2�\\u0004\\u0004��,k�5\\u000eт�9�C�H\\u0017����������=�3\\u0010<h�U�\\b�z7�����͓\\u0019hV�3{\\u0006k��ӕ�r��l��d���\\u000fF��|\\u0005W�\\u0005�\\u0012{MϞ���\\u0000\\u0011]�X��\\u0005��D���E�ε#ƭY�\\u0010C�۔�/ǃ&�Y8�7�#zo۸c���\\u0001&��?q\\u0015�Ξ8}\\u0017a`:\\\\\\u0002m�4�I:?�r�cspEKʂ�\\u001c�\\u001c�F��\\u0003j\\f��V����\\u0011�0���>5�G\\u000e^J���\\u0002�s�$m\\u001f\\u000ejǖ�7��v���a�\\u001aJ䇦\\u0010\\\\\\\"~�dQ�ߧ�i�\\u0013ɚ����DS�_���t� \\u0011�\\u0015;���QK\\u000f2ߔ��m�*�d\\t\\u001d\\u0003�ޒXj��\\u0000\\u0003�I(\\u001bl\\u0011A�\\u0015��o�U���\\u0003�9�ΰe�\\u0000��H��JW\\bG�\\u0006�z���(�쪰��}O`~\\u0004���$�*�{\\u001blzי\\r���:��B�x���\\u001eG\\u0016V\\u001a��*�r�ӷ��׫���fi\\u0012�$\\\\�j����\\u001b�p\\u000e��1\\u0012l�\\f�T�ɯ@?�i�-\\fP|��\\\\�[U��\\b���Ol�\\u0000�qTPK*\\\\\\\"�m�\\u0003k\\n�8��ɹ�\\u0007JR8\\u0000��8�C���`:Z��Z\\u0001�c��RH�(\\u001c�\\n��M�އ7�F�d(�Y�M�m\\u001d� �\\t&�\\u0006�Q��\\b�^%>:�\\\\�%6����\\u0000a��{U�l�B\\\\\\u0010�\\u0012.k\\u0016\\u0004\\u001b~\\u0015B�\\u001b� 7���]���4�#�-�\\u0014�6��I�\\u0000��E&~\\u001b\\u0001�t��\\u0000P��\\u0000n��+�P��ap\\u000fAMf́ RP����/�a\\u0019\\u001f\\u001b����9ԏȔ��E�;�)\\u0011b�&ީ7���rI%��&䞦�J��d�}�&2c&�\\u000e>&�w,D�*��׸��T[X�֒`��\\u0000� t5�d!Ar4�\\n�a�ܮ�\\u001c�N�fG�\\u0019\\u001a�5�k�\\u001d(H���Ye�ӸG\\r��\\u0005�b��޶����1r,H\\u001b�kj�\\u001a��\\u0004\\u0010\\u0001 �N�Ǖ�\\u0012��U�+W:\\u0011����_�;�.B�#v�\\u00028�@�7��fIK�u>5n�<�9C��\\u001e\\u0014^\\u001f��h��\\u0004��j\\u0015�z-�u�w�\\u0001�g���\\u0006�@�1�}�<i\\u001b�Y[[롫\\bC\\\\�ż\\u0000�\\u0003�\\b�_�V���+C%�C������dg���\\u0011⿚ƽ���I�C����\\u001b�O�\\u0001-�^#�ʝ�lsbH�d��\\f�oR�oܥ\\\\j\\r��\\u0014�\\u001dop,n+<)���2���F�u�\\u0017���3(\\u0005���\\\\\\u0011mT��H�5|�\\u0019\\u001e�e��f\\u0004\\u001a\\u001e\\u0019��d���ذ�����\\u001a\\u0019�Q�\\t�3~j\\u0006���-}�I�d�ld\\n#��\\u001b\\u001f�Q\\b������\\r�\\t��X7+\\u0011�֋�ś\\u0015�L\\u0000$\\\\\\u0010n\\b����C\\u000b��\\u001f\\u001a�(��\\u0003�.��(�ԡ&���j��0���#nl\\u0014�w�gP6�R�v�TI�y\\u001e�/}|kOh�\\u0001\\u0000�~R@������|Y\\u001ex�\\t�.@7\\u0007�ʒ�%�>o\\t�\\u0016d���HԆ?]��[�\\u0016_��w#��y�\\u000e\\u0012u Y[�)�n��A\\u001f�[��?��?5�b9�YW�V�;�\\b���o�)�VID�\\u0019�����IrB�2Z�u>t�H�`I\\u0014\\t$r\\u0002C���t��\\u0007!�\\\\\\\"x�pױ\\u0014N&Q\\u000e\\u0019O\\u0019\\u0007����=ǸJ#\\u0003\\u0019��\\u0012(���\\u0001���F�\\u001dω�D�\\u000e���\\u0016+N&���[c�L��0�L\\u0003(�Ƈv�ĕ�֯hv����Db(����&��s�G;\\u0019�-�U�m:P��V�z�p:�LV����9J�N�\\\\L�L��\\b�(l�2���e�`z�)\\u0007|�\\u00177#�05�p=�\\b�u���c��\\b��\\u0000H�C��I��*2\\u0015B��m�*MŪ+d��V�\\n4\\u0015IL�HQrW�ʍ��I#,���ʅȋ�b���\\u0011V�\\u0010��2�� �\\u001b^�<<�Y\\u0000���f]��\\u000e�j+:����Nԓ\\u0006�&��YPѝ�$Õ\\u001d�&�r>\\u001d(�\\u0007\\u0001���k�ǐ���\\u001f\\u0011C���\\f�p�e�q�\\u0007�T~�\\u001cp�{�k\\u000b��N?o�آ���ơ��\\u0016v`\\t\\u001a�a�2��ƥf�\\u0001\\u0007������i\\u0015͟:�/�K;z���PE\\u001dM��i�\\u00141��\\u0000�b�r��m�X�/\\u0007�\\u001amM�D�\\u0007���\\u0011��p�\\u0018��������H�\\u0013��\\u0000:\\u001a\\u0019J8Є:\\u001f�.($g�\\u0005�ުr$ ��zQ\\t���\\u001a\\u0017*6[\\u0013�U ��\\u0019.�\\u0012�藰�8(\\u001f��T��\\u0011ABJ�ss�[���A܍j�Ǌ��&F\\u00057\\u0007�J�\\u001c1�\\u000f*��~J�$�Ƭ���)���C�?'/��\\u0002�բ�Ȧ0\\u0002��O�\\u0013�\\u001f�\\u0002�t��\\u0006�\\u001c��\\u0000\\u0011��q/�\\u0014�\\u001aK�\\u001bXڷTT\\u0016Qa[�\\u0010\\u00193E\\u0016�\\u001c�u\\u0002�V���/\\u0019I\\u0012�\\u0007����v��*�s[[�\\\\v�i��\\fq\\u0005f��[c[�ݡN/\\u0017��A��ޕ�\\u0013���²$\\n8��e�\\u0013��6I �#�\\u0000�]��saX�3Y�\\u0000�zR�\\u000b�\\f:�\\\\\\\"�ԓn?}j���\\\\q#���4\\r22n�\\u0000���\\u001fΆ��J^�zVֱ����\\u001a�>ߔ\\u001a2�T�ZD�@�~O�\\u0001�\\u0015���\\\\\\\"���Q�\\u0014�\\u0007�@�(\\u0013YE����U�\\u0000�\\u0007>Fi�\\u001c��D��U\\u0000:����Խg`��Pn\\r_\\u001e\\u0014�\\u0002\\u0005][�U>7�Kb�`�I\\u0017\\u001b\\u001bT��֜��\\u0000��\\tٳ.��-��\\\\1�$V�%\\u0015\\n�\\u0001��U��\\u0005�\\u0005u:\\u0006�ۡ�b�rE�X�\\u001bմ\\t��J�\\u0011u\\b��i{�R�Yc��]-{|��$B\\u000eՙ oIU$7`�\\u0000Cb\\u0006R=����\\u0014;��/m�V7BzUc��Nw\\u0001j�B�<q�x�\\u0000~\\u0014�\\t3�^)\\u0000��ǭ7ɂ5��.�=*<��W��,���f2(nC��Ū�$K����\\r2Ò\\u0011\\u001c|����.��|<�\\u0003��\\u0000A\\u001dAګ\\u0012l�������\\u0017K�s\\u001c�\\u0019�0¤�\\u0006�Р�҈��x���I�\\u0012]\\u0018X�]4�k��Āv�q\\u0012*\\u0013\\u001a1 Z�I4&걖�;��ڒo�<\\u001cą\\u001e+�o��\\u0003�y(\\u0007@u��v�w���,�t*�\\u0011\\\\_|�L\\u000e�$1��I\\u0010�V��5U�v�5�v2��J���;F���:\\u0005�-ֵ���\\u0017\\u001d5q��\\u000f\\u0001KW�F���}_H`\\u0006�+c\\u000f�=���:yR��\\t��1g�H��#��[I�\\u0018�\\nn|M\\u0002̪.��f*D@���s��F���f[\\u001e6 Z��^0�GƋ˂HIV\\u0002��F��\\rc\\u001c�,�Ԛ'\\u0012\\u0011�ݹ�\\u0019?�\\u0007\\u001b�_QFw\\u001c�\\u0019Tc0!��:Z֠�q���ؑ,�Kj\\u0017�����M\\u001b���v3�������\\u001f\\\\\\\"y�\\u001d��h��^�\\u0003�V:��Ɍ�2\\u001cI%�a��\\u001a;�9oT�N$ 6��5��%N_��K��: r{�&/�H-�J-\\u0014\\\\\\\"�]\\u0000\\u0016� �\\u000br[�\\u0015�Nat\\b���,�\\u000f\\u0001��\\u001ae�8cnb�\\u0015�+]z\\u001aK$Sh\\u0016ޥ�{���o�c�\\u001af�?H�\\u0007�K�YY��ex��\\u000b�-V�x�\\u001e�7<�7�\\u0001�j�Ȗ�\\u0002Wm5��>�JL\\u00168��\\\\FM�\\n�)Z6\\f5\\u0003�;��ƪPG���/����\\u00128W\\rk��Q[�j\\u0002T\\u0003\\u0006RA\\u0015�D�g�k\\n�6w�\\\\\\\"��X��\\r�\\u0002��-�\\fI:Z�ӄ\\u0012\\u001d��\\u0014����mZ�d\\t$\\u000e�H�:R��$P�ŏ�+NՔ�u\\u000e�\\u0001\\u0007�\\u0004�����qð�Ls4o�k���oܰ���)cvF7���\\u0014\\f�߃E�au&��ndy�4�X*�\\u001d/v���\\f�\\u0001\\u001a\\u001b_�i\\u0002��\\u0002��3<�S1k���4glp��:~S[wH\\\\\\\"G��E$�#�kR��D\\u0015\\u0018�\\\\g�Y}�,���r20��\\t�\\u0007K�\\u0016:ޤ��\\u0006%�\\u000b\\u001f\\u0000����\\u0019��\\b�\\u000e��j�oh\\u0013Px�abv\\u0016\\u0015�j�\\u0006�2�X�@��H<E��2q�'� \\u0007��~���$ȅ�2َ��d�$r\\u0006����\\u0018��R�����\\r\\u0019\\u00048�+ \\u0002E\\u001a��4��Z\\u0017E��'�fY\\\\\\\"ۨڴ,I�Z\\\\\\\"R���:R����/m\\r\\u0015�\\u0016Ma���H�1�7=Eg�0�/\\u0012n:\\u001d�F/�e�C��<�kQo-�� �z8-Eɗ�����y2��\\u0015���k�ߐ�qNe��b����\\u0017�`7�\\u0004 �\\t\\u0001�\\u0010\\u0017}5��?tȱ�\\u001c`J�.\\u001c��O��b�5�x�\\u0006�m�W�O2\\f�!AR�ԯZ\\u0013[\\r����\\u0000qfN�!\\u0003\\u001dN�O&?3�*fgb�K1ܓsO�`�h�+\\u0018���\\u0003b?�-���ώ�=t6��휅W*�\\u0003��\\u001c��]A֘���.��\\u001dMկk�_\\\\\\\"\\u0014kn:W�(,9mZ_��M�&���ݞ�'#���cH\\u0015X\\u001d\\u001a�\\u0004֬���V����d�x8�\\nX�6\\u0000\\u000f���{6-�r���,*��r�*<GZ\\u0002�E��5�\\u0006\\f\\\\�o590:\\u0013����N\\f\\u0004\\u0002@�_��(vL\\u001d\\u001dbw9\\u0016�?\\n� �\\u001d�ȉ\\u001aH��y\\u0007]z�(~��,�\\u001bjEE���Uh��\\b\\u0014K\\u001c�ʷ\\boz�\\u0013�X��������%nl\\u0001�p�Vy�^�\\u0017RG_+�TO�ӯ���դ\\bC\\u0018�FT2�lGZ�,og#ތ�m��mt���\\u001a�0��\\\\oL x�(UP�\\u0000\\u0000ҩ�%�<N9bUvq����L�n\\\\P�$r0^D\\u001b��ֵ\\u0015��C�\\u0016��3��R�b\\u0016�\\u0000��R�%nN�ή\\u001e��p�g\\u0018���1}<��-��˚�\\u0015��{�\\u001bk�\\f�\\u0013M���ltQ^N�FD}mrE\\u0014MK�Ghc�S��:M\\\\\\\"�a铑R����g1QZ&\\u001e�Τ\\u001d>44RH�\\u0015a�\\u001a\\u0003PĊ-�=M_6J��\\u0014[�\\u0016\\u0004���K\\u001ew�kQ�\\r��2�E\\u0010���#\\u000b�)Џ�M���YȁY1�y{\\r���o�R�X�kA|���\\r<h��u�#(ki{�J�!�Ž�*�\\u000b\\n\\\\\\\"\\u0005�\\u0010�Rً�Y;��U(ܫ7�\\u000es�ԅ\\u0000���+|����\\u0007�x���V�a�sI31\\u0011g#�0-�=MV\\f�\\u0012,`\\u0010�l\\u0001�O�{\\u000b��0�y`nQ7\\u0013�\\u001f\\u0017ytP�\\u0010\\\\\\\"ڐlI�ڂ��5�Z4a�o����yCI�\\b����\\u000f\\u0010��1k��\\u0000��\\u001c�(:���pb�\\u0000�x\\n�12\\\\1X͗S}\\u000fʫ�c�R�p�\\u0000���\\u001aH\\u001e\\u0006ncbE�\\\\� d)��m�[�\\u0005F�PO�ש'��_Q'Ku�\\t%��m�8\\u000bB�A�7�e&Qb-M!��(�`\\b\\u0017cZ�ˎ%-.�\\r\\u0007�T\\\\\\\"S��K\\u0018E*>w��yĀ�!6�j{,\\u0002^��\\u0002��X�Q-\\u0003��.�C�K�b$|dR���<O05&�GUb��\\u001e��ј�x��6�t����\\u0016*v�$\\u0011��q�F`\\t&�u�S�uZ�\\u0013.\\u0001\\u001f=�Jf,��?u\\u0010\\u001d�\\u0005c�����Wi���aP��we\\u0000\\u000eH~������\\u001a�!����Ν\\\\�Z��Ǚ�\\u000e�/&�\\u0018Z�\\u0000�j��`\\tѭb:VM\\u0016|\\u0013�C� �R8��D�dl��f����Q\\b2k����\\u000f�7e�2;�N�}�\\b�\\u001b��\\\\��P��\\\\\\\"�iW��C�3\\u0000����Jv56�[L\\u001but����}\\r�ȡH�cY׼o���\\u0015�]ZjQ�e]l��q�Ы�-�/�&K\\u00042*�V�m6�\\u001e\\u0013���\\u0006��u�\\u0019P�/��Cqq�\\u0012H'nƑ2�'N$\\\\}��H\\\\\\\"�\\u0001�C\\u001d��{r����M�󣲢Yb7$\\u0011��7�л�<�\\\\\\\"�v�\\u0014x��Z��e\\u001fq,�/n��:����\\u001dey\\u0000�ȷ�!\\u001a)���\\n\\u000f=�l��5A�x�<��0�rbu�#�#�:�4�7\\u000e#��\\u001aq�uP��6�\\u0000e\\u0011^���;�/LD�C�cq��_�<�D�?rS�\\\\\\\"�*�>;R�Z\\u0017�Ks\\u0003Jb�H��\\u0013{��|(C�Y\\u0019��H�@E�>\\u0014<�4$�J�\\u0005I\\u001e\\u0007za�,G$J�U{�@�؍�`O%\\u0007m*�\\u0004�C���\\\\\\\"\\u0010\\u0005%�}�6�G���K�#\\u000b�\\u001b\\u001a\\u0005��<G�\\u000b^�6\\\\\\\"����\\u001aS�\\f?\\u0001ˏm~��\\u001di�s�ќ%�\\u0010\\u0019������\\\\�\\u0014�\\u0000��GmUM��&��(�R�{r\\u0007PG�(L�����/\\u0012,M2�\\u001cX\\u001b����<�m�{T\\u0000ˑ\\u000f��X����\\u0004�\\u0002�\\u0011YY8�^5\\u001c��2\\u0004/\\u0012�GNJz��VTQ�\\u0012�,:��\\\\�F6,u\\u001e\\u0015�dN�\\u0011�b�e��\\u000b��\\\\\\r�\\u0017��!���Be�F�{eY�7��Q��\\u0005>7��ْ4�d`=��n���֫\\u0018#��'V\\u001e;SAp����K�O@\\u001e\\u001fm3Mƶ�\\u0012\\u0010l�����\\u001fu)��V1�y�mnu#�]�*�C鰱]�T��\\u0000��n��\\u001bH�R��ٚlr\\u0002��?R?(>tf\\u0014�g�+F�\\u0010y�~�i@I���Qe`��1\\u000f��1ִ�y\\u0003���~�\\u001b\\u000bVQ�R�\\nΗ��\\u0007Ѐ�³�%'����;E'�C�Wʀȝ���;\\u000b\\u000f�gs{��Ɲz��\\u0007و�=^�7鳤1\\u0010Reh�\\u0003K\\u001fK���1��\\u0019���0�z5{��Uو\\u000bĎ�kB���WM8\\u001b��Z��.\\u0006�3�g�2����Iڂt孨4b��I67��g\\u0007\\t1��Q��V��\\u0000$@��$I\\u001fԤ[�\\\\\\\"\\u0011H�\\\\\\u0006R6���\\u001eU�\\u001b8ѭ֨�U�\\r�\\r��دx�,U���F]J�k���@Q�iu��kl󑑓�q,�X[aX�$� f\\u001c\\u0000\\\\\\\"�ޜ����&|b\\n)��q���J��\\u0013\\u001e\\u001ci\\u0004q#����]P-�(U8I\\u0004hщ��\\u0017��ʰ�,���=J~�~��\\u001a�ji�;T0c�\\u001b�\\u0004�<�ε�$.4J4\\u000b��ư�����V�p�XW��\\u0005eY\\u000f�}��[Y\\u0012�F�K�\\u0018��%��x0U��(i�8_(\\u0003\\u0012ے���U��Ȑ���Qf]m�\\u0015s�/���\\t��\\u0018��.-?��)�\\u0019c�h�\\u0018\\u0012\\u0011r������ƚh\\u0014��5�3{�kj�\\n3�M!�ć��a�\\u0004Vy�32��\\u001b\\u001e��\\\\�-��\\u0000wulk\\u0006\\u0004�\\u001bPXҼ!B���U^�m\\u0006���d\\\\\\\"ת)x�9#\\u00044mq]5�WS5`��D3��˩��Ӱ��0���ŵ\\t$f':�\\r��_7�L���\\t��5S���\\u0006���\\u0015V���.&^4��e�-�V�*���r`���e/\\t\\\\\\\"��$\\u000fn��\\u0012(\\u0014*��k�\\u00165�JW\\u0018�䷺�\\n�$��I71�y\\u0018�|T\\u0011cH/탢�\\n_��8s�8��oebU\\u0000=t���&�\\u0010�Tl*�\\u0001nW�W\\u00152f� Ǻ<\\u0013�\\u000ev2�FE��~VQYg�8�\\u001aD�4��n�БࢊX�\\u0006\\u0016�cr\\rc>,�4sF�Ld\\u0011*��Г\\u001c,��\\u0019\\u0003\\u000bȄq�����L��k��\\u0010\\u0006��0�W�H\\u0004���a:\\u0000bd\\u0016\\u0005�\\u001b\\u001bܑI��z��\\u0000f�l��'�f�OK2�OWN%���q�2Q�\\r�[N\\u0003A`�ɋ\\u001b���[P���\\u001b/���l�܁��{�\\u0000A�\\u0012\\u0018�w\\b �/#X�\\u00113[�R����\\u0005�ӸR}#�׹F9g2\\u0000\\u00184|\\u0001��mt�fY���V6��!�]/�)�Z��ra�󣐛���l-_HƉ � Ad�x��\\\\(\\u00000kj\\r��\\u0000�4?���\\u0000�\\u000f�[u�ZŌ{�K^z�T�\\u0003\\u0001A��\\\\,e-$��6�Іb~\\u0002����ɞ3\\u001c(!\\r�`Ik|t�)�o��\\u0003����3��G9\\u0005�\\u001b\\r��)Dϑ#s��O�R�\\u00138y5��v�.\\n�)��\\u0000\\u001d\\u0000���P�f\\rz�[8n\\u001e�>����<V'V[��O��I\\u0004��6րx\\nM\\u001dƅ��|i�\\u0017\\u0016��Z��4���r\\u000b�ȿ�b�*\\u0002�U�|\\rN>&�C~\\u0004��T��E�mI��#HAQ�\\u001a�<�J�k\\u0004�6�Ґ�D^���u\\u0003�\\u0000�O�y�=�\\u0006�:�­�\\u0001{Ƿ�e�\\u0013K\\u0018PlG�'��MYj�C.Lq����\\u0016%4#�w�qr��RR\\u0019�R\\u0006��42��\\u0012\\n6�^�X�[��G�%����W��i,ju\\u0006��~t\\u0013��C�\\u0011�4eJd��c?�#e\\u0001�#~���@�p�a+\\u0016m���K\\u0001��h�\\u0014���J�xCL\\u000b \\u0001,�|M�f�\\u0003o\\n�2\\u0019��\\u001a�S�҅�.Y��?u /.B�\\u0016�n�\\u00051ē�<g�RӁ��\\u0002\\u0000��\\ne\\f~�I\\u001e�E�N\\u0002`%��D�\\u0001PlmֹɚVv'�w,5�9�Y\\u001e.\\bw:�\\u0011AK�+���'F=-I(\\u001br8�yYc\\u000e?h�&����Z/##.9�\\r\\u0012��W�\\u0017g �����]�o�F\\\\\\\"oZ�n47���ȅx16�����\\u0015K�\\f?\\u001cٿY\\u0015�Vwo�F��e�ʭro�����󕉛�\\f��\\u0007'�u\\u001aP2�\\u0000w��m+/kی�w&�ֱf���8\\u001b�� �}/��U��7� ���XExJq�\\u001dI�b�DQ}[��(\\u001c�@�\\f���\\u000f�W]�:~�#�U�o\\u000b� \\u0000\\u001bWK�Z\\u0014���{����敬�W\\u001b��V�����$��^�\\u0013�΅\\u000e�\\u0011\\u0012\\b\\u001a��G�\\u0011�tc��S\\u0019�\\t,lN՟Z�?sN��Q���t���\\u00191�ŸH\\u0007���ܣɏ�~D�V���e`��u\\u0014�\\\\E|��zYM؎��Y!��\\\\xո-��\\u0015a�\\\\M�V>,\\u000e�����7�4[��E�U?U��eb\\b`lT�R�ք���*5\\u0016t�\\u001e�R��ƕ�Su\\u0016:��/�m�\\u0005h�#�r�\\u0000\\n\\u0003\\\\\\\"o~f��y[M�\\u0014��Cq���\\u0016@�_D�\\u0004ɯ�ޚ\\u001c��ʊ\\u001ah\\u0016C�7\\u0012\\u000f�k7ι<y�\\u0006$},,��V�.�s7:[�U�q\\f���;�Ɍ\\u000b�V\\fU�Q\\\\�\\n,���\\u0000�_��N3�_<���$C�jz\\u000f�d���\\u000bt=\\b��*��9����Mi�O�\\u0018�\\u0017z��I\\u0000��0�V�@�>7K\\u0006 2�b\\u0001��Fɛ�\\u0007j�\\u0013!Y'>��\\u0012\\u0011|<�I�B���j��{T�IBR*�;6�b\\u0011��)BW�J�\\u0000�k�k ��ʥV�ޙ`O\\nBP�V�:V=��\\u0013���۩V�j̹c�ް��H�2oq�ǥVY�yAԆ��\\u0006��2�F`c7;�Ҫ��\\u001cJ��\\u0005d����\\u001a8\\u0011nÛl*�\\\\\\\"�oҲȑ�HnG�E���Y\\b\\u0000�G���\\\\\\\"@\\u0018K\\u000e@IǤ�������նC���S�KZ\\u0019��İ�F�u�Ȧ\\u001e\\u0003�^��\\n�p�\\u0016oqn\\u000f�Z�}x�H+\\\\\\\"��\\\\W�\\t\\u0003���`(\\t�wRw\\fh�\\n����H'JC<뙐͑ B4D�o\\u0001CP���p@e��Ў�S�\\\\\\\"���QT��)��`��KqV:�PS�\\u0017��l��a�5?�u��&�,�q�j�����P�\\u0004���$\\r�\\u0000:�QH�\\u001c�\\f����0���%b�\\u0010l�\\u0001�@�Bʞ\\u001cF·�(����\\u001a\\fʇ^��f�}���T��f˓�3\\u001c \\u0001@a��5\\t��##%q��8���bm�[*�yڹ�\\u001e㑅*�1hƍ\\u0011'�\\u001e^\\u0014�n��4n\\u0015g\\u0016�M�V�I�6!\\u0004M��g�i\\u0011J]I\\u0017`�[�Z����G�\\u001a�s�\\u001b�a��\\u0004(�� @�t\\u001d(\\f\\tW\\u001f-%q���N�\\u001e\\u0019��̬\\u0012Dd7�y\\u000b\\u0001z�7�O�\\u0014�{�\\u001b[�\\u0003M3��'���\\u000f[k�\\u000f��U��v\\u0016'�\\u0014���\\u0013.3)�\\u0017Ӓ\\u001b\\u0015��Ze�����T���͸\\u0002΀�\\u0000����vR\\b;t�2�8�PsGU�q�\\b5rH��\\u0011�-��E���\\u0001L\\u001d$Hy�֓N5��f�\\u0015�/\\u0019������oy�p:�cQtރAX93�J�o�Z�~�3\\u001b�\\b\\u001fm\\u0007\\u0016A���\\u0007�U�尵J��\\u0003�0v'�4܊�mH�CM�d\\u000b��%��\\u0000\\u0016�e�J�)nDk����e\\u0012\\r����\\u0004��L��JW��\\u000b\\u0013o\\u001d�i�\\u001f#5 �[���ATi\\tnCC{բɖ<��\\u0006�\\u0011}��Q\\u0001#I?n..I�\\u0007a\\u0010@@��ݨ2��\\u0019o\\u0010\\u001e�w_{�\\u001f!N۸��`�F\\n�<d���5�v�ɻs�:�\\u0018o�1�\\u001f\\n�O&�x��c\\u001cu�\\u001a�����&�6\\u0014�<�����kx\\u0012j��\\u0010\\u0016�����\\u0012o>B�5պ-)ʙ�@KX�[\\u0012I�7'sBe�I;)B\\u0000\\u0002�\\u001ap)\\u000f��h!eI˼�\\u0010,B\\u000f\\u000e]M]\\u001c���\\u0014�\\u0004<J\\u0015Ԃ\\tދ/�RX\\u0013=La<��\\u001f@6�:�+\\nL|I�1S�u�G�y�^�\\u001a\\u0011$d$����\\u0006�Im�&0�ٝ�CoUΕh;.D�K�C0\\u0004)��QB�8�@���I\\u00142a!�\\u000bp[\\u0010|��;r��O����cI��9��!<�3c���\\u001d(h$\\t<on\\\\X\\u001bQ}�\\u0011%կ'C�#΀CgS�N���\\u0013�h'�\\u0007ˑ\\u0011+�������\\u001ed��\\n��\\u0005�i��\\nO$��p��\\u0016Ҽ�����\\u0016\\u0003άAy�\\u0016F[���U]���+��G\\u001aΠ�+7\\u0015�=K�klhW�5�[���^�\\u000b6\\u0012�L)\\u0014)�\\u0002�>d�rhk\\b\\u0016��c\\u0005G�]��ٿSڱ���7�=?�p\\\\\\\"Fd�u\\u0003c�]G켿�F\\u001bt���\\u0000���\\u000b�\\u0003:�\\u0010\\u0018��h~����\\u0017\\f�Y�+0\\f8���H<O�]���u�\\u0000\\u001a�?v\\u0004��5�� �\\u0000�Qe�M\\u000e�\\u0007\\u0017��N�x�\\u00111\\u0001�MLRo���ֺ<4���풤��!�\\u001b��-zY�Rl\\u0002�\\u0010eY\\u0000�:\\u0002\\u0010\\u000fR��\\u0017��O\\u0004SD���\\u001f+�j2����\\u0004rBT��\\u001c�\\u001a�a�S\\u0013\\u0005��,&�}B� u�֑J9\\u0003{Z��o�N\\\\\\\"Mq�^;�c��I��\\u0015�c\\u0018�Pp\\\\\\\"�۽��\\u0005��%��\\u0007\\u0004]ݴ\\u0002��eyԏ�N�5�t���P\\u0013���\\u0014�񦓁N�'��\\u000f�\\\\\\\"$\\u0003B�j/��\\u001f�a���\\ffi�\\u0011h��~T�\\u0019�\\u0006 \\u000b+n\\u00054��{�Y\\u0018����;T��;0�K4eA\\u0004\\u00126�1\\u0001�C\\u0004,�O�\\u0002�|jC\\u000f0\\b\\u0016\\u0007���#|�W\\u0007U?O���\\u0000\\u0012Xxކ�%��ŴlT\\u0003�\\b�%�Ô��\\u0018\\u001c\\u0000�o��<|��rQ�\\u000e�PlŘ�ܛІ�\\t\\u000e<qb�[��RC\\\\��\\u000f��ƙ'\\u0007x�oQ���'�xP\\u001f�_�W*\\u0014�h�Y�ܭ����G>\\r�:�kѸ�9�cd}\\u000f��ʁSc�i�\\u0000o֢��\\u0010��d�e�\\f�\\t%�A'[��W9o�_q{\\u000bڙJ�G�k\\u001a����Yu;ӭa\\n�6\\u0017�g:$Y�tVU���\\u000b�����3r�ȓ�\\n�F���Q��=O�\\u000f\\f\\u0011@\\u0018F-�X�v޽(H���ؒ�27��o���ӥ_�?\\u0019̥\\u0003/\\u0002�H���~\\u0015W�H$\\u000f]�\\r\\u000e��P\\u0010F�\\u001e��m����f��2�и\\u0000\\u0017<���\\u0003X*���:�\\u001de\\u0003���\\u0002��@rO�E��\\u0002�����\\u0015��~�D��ě\\u001f�\\u000f-�V#i\\u0014����ʣ���\\u000eJ�\\\\i���h���Q9(\\u0003�(\\b����G\\u0003B��s\\u0016���tO\\u0014N�\\u001c\\u0011}�X�S��T�:X\\u000f��\\u001d�v��t�)�\\u0007�~��G�8�S����;iRS̤�!V��\\u0016�o�L�\\u0006<\\u0013B�OfVf\\u0005|55�y��\\u0014�(\\u001b�7`N�xV��D6%͒Y�����\\u000b0���9!�$�ȸ���ΰo�H\\t�\\u001dE\\u001e���J��Ƨ�᥹�R���3�\\u001a�Rn�$���\\u0017\\u0003Pt޺\\t�q�=L/�5?u+ȕe���\\u000b[Z˭4�{�c\\\\���*\\u0007��\\u0015؃q�\\u0013\\u000e\\\\\\u0010���1A�����h�\\u001d�af-v\\u0017�\\u000e��c\\u0006\\u0003��\\u0004�״׊Cp�BE�EwL܅�\\u0010H��\\u0000dВW[XҜ'\\u0018���4�������yk\\u0019�ݣ7\\nE�\\u0016Ύ\\u0007XM6�\\u0005��f�٦Y�-�\\b\\u0002����Z�ܙ!f��I$�yV\\u0001�F:7[U��\\u0007\\u0012)�\\u000f\\nεi�%��kH(�_��Y����L�k�v�{н�c\\u001aM�!�\\u0007\\rc�\\n�����ϕ����$H��9�n��\\u001eI��\\n��\\u001d�\\u001ek���Vx��ĩ\\u001b���e oX<\\u00120 [��d�\\u0004�w�.�FF�\\u0001ů���a�ǃ=�ȐE\\u0019���}�SҐŊ\\u0012��\\\\\\\":t�\\u0011B�\\u0007c��O����7�\\\\\\\"\\b*�6> R\\\\��3/\\u0004&ë1b��\\u0000�T�u\\u00165\\t�\\n�\\u000eͤ�\\u0007�q,�\\u000e��o�dd39��4%]\\\\��\\r�aQ�_�}M:�\\u0019�^Q����Ǡ��\\u0001�N�4'V��on9x����y����\\u001a\\u0004[Xxֶ��o!K���5�����V\\\\ӌ��7�zr�\\u001agf��33\\u001b��.>E!i<�R4�\\u000f~ k�\\u0003ʇl��Ȍ�A�fKq`�נ�)�0�u7\\u0004S�\\u001bc�i\\u0010�j�F�bw�R�ZU�H�\\u001a\\u001a%&!�m�\\u0019���P�Ð\\u001aW��(��u?�t��308K\\u000eK\\u0000�-���'ʖ�\\u0016\\\\\\\"觚_�F�\\f}�\\u0014K��\\u000f�\\u000f\\u0010>'z�ƥ�K�;��\\u001f�.�\\t*å�\\u001a�<�p�\\u001aAf�\\u001dh*\\u0014\\f�\\t^#����GJG\\u0006\\u0019�\\u001aKh��ѳ��\\\\n\\\\\\\"Zkq\\u000f�\\u000f\\u001a\\u0012\\u001c��\\u0000J�?��k�4��B@\\u0019|T٫!�g\\u000b��몸��{�<�,�z�P\\u0019\\u0006�\\\\\\\"�ĂU�K����Np3y&1���mD�ή\\u0015Z�ae\\u001et�hf��X\\u0011�ץ^4�Q\\u0001��mzVN��5\\u0011�ȉ�����[I&G%|{hm��'΀|�h�l�o�]�\\u0015��&\\u0006������a�mpa�;K!.�2I,��E�ݥ�yA�UK�yڰTc���j�\\u0016X�\\u0013��Si\\u0013���G��.O(�\\u0000�j�\\u001f*\\u00176\\u0015�&�}\\f\\u0007��Cbf�.n�\\u0003�N��Vp�C�\\u001fS��\\n\\u0016\\u0006�K\\u0006��y�#:\\\\~\\u0014�\\u0006c\\u0018Cbk���\\u0011��$6V��b���d-\\u001b\\u0006\\u0007�ޡb���mE5�Ri�1q��e\\u0004\\t\\u0014r�\\u0000��mz�{�ؘ�Q\\u0002F�\\u0015N�\\u0002��$\\fi9��G�-@�H��\\u000fcafZ]�V��\\u0000�W���'W������s��2���6�D^ڊ�;�0�QL)/��\\u001e���)��QF��\\u001e��\\u000e���,L�����*��\\r�$8�\\u0002x�@�\\tk���<�[r4Ҷi\\\\\\\"�}\\\\\\\"�sUxM���\\u0003Z4h�X�0�\\n��\\t�v�X��]��Z��\\u0000�ܣ�\\u0004,�*�\\u0002t-��֪̟I+�Ҷ�e\\u0012����\\u0002��[_z!�z�~Tꫤ\\f�!�ѿ\\u0013:)\\u00122�\\u000b\\u0001����� \\u0015!\\t�h~\\u0014=.�:�6���&ws\\u001e��##�#�4K\\u0003�\\u0007�VD,��t:�.�$Q�K(\\f�@~B��w��\\u0013\\u001a;�xd����^�\\u0003�\\u001fM���\\u0010 \\u0000h4\\u0003j��3\\u0004]Y���\\u0011\\u001aWTQrM��Ʉ��\\u001d��׿\\u001b��}\\\\\\\"�\\u0010 );flh���T]�Ca�[���FAo�6ɐ~�E7��m~�R\\u0019CN}�ج\\u0011\\r5#�yP������\\f�7�y\\u000f:�\\u0019d\\u0000�y\\u0003��.\\b�r�Q\\u0001!�\\u0011���z\\u000f�\\u001d�\\u001b�\\u001e�7\\fi\\u0000X�kj�\\u001f\\n����Ё��;��1��;L���/ �\\u001cZ��\\u0014�$s(\\u0014�\\\\�\\u0015:\\u001bЧPƆ�\\u0018r�#�$\\u0011�<~��K�է�y\\b��q1\\u0017,�����~$G\\u001a!\\u001cc���]\\u0014��XL\\b\\u0000��c�Ʋ}�KUM\\u001c\\u0016\\u001e\\u001c���!�\\\\\\\"\\t�h\\u0000\\u001e4{�.ጦ^Q�l�����S?۝�Hq�c��d\\u0001�z�{�������$i+�v\\u0017U����(Z\\u000e�Q,�#A>I�W\\u0011�����)��ȅ\\u0015\\u0004��\\u000fI*v�\\u0000��I\\u0000|�7:1���6Fd�r;�է�#_@L���\\u001f���@7QnK�ha��Cr\\u0002���\\u0015,?��DmG\\u001b��\\u0005��W\\u0002Bn,���*mh\\u0004��@Qy^��{\\u001bZ�g�bFe`�:�)\\u000f��\\u0000�PTo��9A\\u001eFP$�1XQ���X͈�J}�^�Ђv�Jq�O�\\u000e2c��9V\\\\\\\"�1dXz�U1�U�\\u000f�����7��X:����\\u001f\\u001aJϔ4\\rbP�p�C�� �SZޝ7���\\u0017�.\\u001aP\\u000bI\\u0017UM�J�1m45�Pf���\\u000b�j�\\u001e;�\\r����\\u0005\\u001cT�߭�is!ol���oS0�GíCocH�l��hEW#$B����|k�e�ay�q\\\\\\\"\\u0000@a�K\\u000b��9�cO`\\b�\\u0000�\\u001f�_���M0�g˄N�D$j�\\u0007�ƹ���pAv&�W��\\u0000m$q�X��R\\u000b\\u0006\\u0003[��[�>:��er�Dp����\\u0019ԣ\\u0015=)�u�h�GA���\\u0000}^�zF�2eT[�:j+\\u000e��;��\\u001bvuUW�}�q�=����nkI{sF�������5�¸��g�qoA\\u001ax�V�\\u001e\\\\�w\\u0012\\\\\\\"*�*��,|@;�ד�pg�\\n��b��e���4^f\\f�8����>\\u00164&Gn�1#!\\u0012E\\b\\u0006R\\b���MUl�>��D�$\\u0017C{o^�*mj\\u0013\\u0011�)]�6>Ti�\\u0010�Zo\\u0002���U�@+ŕe&�Q^��\\r�z\\r�k\\u001c{$ޣ`\\u0006�H=\\u0003\\u0013\\u001d�^���\\u0011��7�]�p���vv�-� ��sk��(�&L3��;��Z��uu9�d����4Ó7\\u0000v���㵎�\\u001f�ƵCkx\\n*'�[ob�\\u000b�?\\u0015�{�^�\\u0000ް|����,����?\\ngܐ~����\\u001fm\\\\\\\"�k>�̧j\\u0014FR�6���\\u0012\\u0018�g��q�M���\\rh0׽�Q��\\u0018��G\\u0001f��\\u000f%�����|�j>�o*i�\\\\\\\"KK/�/ĵ��R<�r�Ca��Y\\u001e@�Trm��\\u001cN0��z��\\u0000\\u001a\\u001b�N)�\\u00062L#��E�mj����>�׸,h�I\\n\\u0018�P�l�\\u0014\\u00027��δ�\\u0018�2�m8[\\u0005C���4o�5��f\\n7;R�I\\u001c�3p>DS�ΦX��ڥ�=oқ��1VҲ\\u00100�����H�ly\\n5�{3\\tG�j\\u0005��P�G\\\\\\\"}V�P(⃓0��v��\\u0000J��>�M��6K\\u0000I�n>Zt�\\u0017/,�\\u0019\\u001c�\\u0011�.�:^ůY�\\u0005�z\\u0005��~\\u0004�N�Sho��\\u000bN\\u0015�r�o�ޕ�kX�J�\\u0017*A�M�]\\b��:4�ro�\\u0017ĝ��S�L,�\\u0014w\\u001e�&\\u0001K����\\u0001k\\u0011҂�\\u001f��=�dP���\\u0000��>U\\\\�޲<0㢤�1\\u0004��\\u00177�kW���^��ȡ��;\\\\��\\u0000B��>�hq��\\fWa\\\\\\\"h\\u0006�i�Y��j\\u0013S��\\u0000²�ˁ<��b�[\\u001bP���Mţ>F�Ә�N�\\u00124��X/\\u0015;k�CwO��\\b��/wU�I\\u001b.擻�\\u0010Cy\\u0004N3ƲX؊\\u000f%��b\\u0019\\u0018���\\u001a���8�\\n4H�q��{y�.ʯ!\\u0005A�N��~S�\\u0006�c�J+\\u0014\\\\\\\"ڭ��pA\\u0017\\u001bP^�,\\\\\\\"\\u001a�6QD�E2̱�,��|*�yo&ʌ��6ޮb�]\\u000fZr���\\r��M\\u0018ЯQ�Ի*h��V.ֹa��ҕl����/\\u0006-e\\u0005�\\u0002��a�\\\\\\\"�t*�[�3�H&y��z@#�Zdw\\flY$�!�5�ț�U\\u0014Է\\bN\\u0012�+)`M�����=W��ީ�;��\\u0013�Ł`�x\\\\�\\u001d95S�ȱ�\\\\\\\"��i�dA�!ј+\\rԊ�x\\f$\\u0002oq�\\u001b\\u001eH�ll�A:��:\\u0000j�J�rD�%���l6֛���$P�nokU��(��^�-F~��,�m�]����g�L��UR\\u0002\\u000b�;i�K�\\u0018�l�\\u0016�̍���$�\\n�\\u0003!\\u0000�{ވx�Ս�V6��\\u000ejm҆�K#\\n7\\u000f�K�\\u0019�0�\\u0001�$^�4\\u001e43M\\u0011eR����O�r�\\u0017\\f\\u0004��(�\\nE�\\u001e?\\u001aV�0UW�fon|4Wi\\u0003�<l\\u0001\\u001d/C�\\\\�﯅\\u001b���P\\u0001�1R\\n�\\b�hU^�j���&�x* 'cY�bF��rL��ڱ[�P���V\\u0005�\\u000bu����\\t0S%��*����^\\u0011~]j�����V�@�gȾ%\\u0012\\u0019d��E,�ۛ\\r��C\\u0013M*ě��]��\\u0007\\u0019�y�rH�\\u0004\\n�X�G9�%�sp</V��)�O��3$m�X\\\\��~T��DX\\u001d\\u0005�����ڹ��\\u0011��(�'�H_[Ǜ<h\\u0011me�J&\\\\X#Qu�\\u001e��(Y\\\\\\\"ERF�)Be&օ\\u001eW��Dk��\\u0014�o\\u0001����5���8^@Z�N�:��&T2�,�>:�\\u0005\\u001b�fֆ��i�\\u0013:���yn\\u0018p m{�\\u000b\\u000f-��CB�;\\u0011�M;b\\u0007�@|je���ŕ\\u0010����>\\u0014Wn�':\\u0016�J#��m��\\u0001�\\u0015�/jş\\u001c)Q���|i\\u0006B�\\u0000�eM۰� ���\\u001b�\\u0019F�u�Y�\\u0015�h\\u00077�̄\\u0017�Ts�\\rt�񾴶Li��e�\\u001b��+�̕W�\\u0019\\u000b�\\u0002�����۶���b�\\u00191K�\\u000b\\u0015'M��V�Q�&s�\\u000b�I���%��\\u0001'z7�����㙀����\\u0002H\\u001aoEd�G\\u0007\\u0011��ܯ�r\\u0007o��i�H\\u0012W�H�[ҭ��\\u001a\\u001a*X��!\\u0016=\\u0015�U�y�i[e~�\\u0007�yn\\u001a\\t\\u0001\\u0010���t��Ɖ\\u0013�\\u0007P���Ve�<z�Ⱅ=�͋\\u0006bJ��v����Ƒ�n�X\\u001f��\\u0011s��{^���1�\\u0019\\u0012�@q:\\\\�5��Xd�9�EW<\\u0015�J��\\u001b�m��ƌ��\\u001c\\tV_s�$\\u0003��C�\\u001c\\u001b��zH/�O�� �w\\u001b�{��ޙ�$c�\\u000el��)s\\u0018?R�=Qr\\u0005ﵯ�*����f�]�\\u0006��\\u0002�\\u000b����\\u000b\\u0014}\\u0018Q�����y\\u001a$�珊�vY\\u0005�k\\u000f�\\u001a�/��d��Y�Z��.���$\\u0015Xː\\u0010]W���^�E\\\\\\\"�,��:\\u0011�j�\\\\8�E\\u001bB�by)\\u001b\\u000bS�\\u0004�8\\u0007L�f\\n��\\u001e�ڊ�2\\u000fUw=���*͖�Y%\\u0001�5�Ҧ���_�\\u001dSz\\n�{>NLK2��5�����kU�;D���A�HK\\u001b\\u000b�Sj�\\u001c��\\bYH\\u0004h˰�CK�qI\\f8�����\\u0014��M5i��)*�OS�V�Ԃ��Z���oz�\\u0007:9Ղ!i�����<��V\\u0019\\t%�!�E�Dcr\\r\\u001a1Bh�V:ڼ �\\r4���Lq#5���+\\u0017�W�7PH��ޫ\\u000fFFL1�&�\\u0016Qd\\u001b�j{y\\u001f����\\u0000\\u001aa�ג0\\u001f�\\u0001Dw<d�)S���b�ڲ\\u0002,�TF�\\u0016�S�6��q�o�����\\u0019\\r|U^�K�*�l\\u0016�$Z�Ut�z�fւy�>D(�\\u0007WT\\u0005�p@\\u0014\\u0000\\u0017ںL�8�L��(lF���\\u0015�J�-\\u0007Yz��gƼ ��k\\u001d�KֱBZP�{\\u001dk9e4��\\u0007��BT!��GJ���\\u0014ɰ���\\u001a�ہ�\\u00076)��֦�lD�\\u001a��\\u001aL蕸���v\\u00146��\\\\\\\"\\u0006#��马U\\u0018�\\u001b\\\\�)�R\\u000f\\u0019�H��xގƀ�J#\\f\\u0014\\u001d���\\u0010�0�Q\\u0003S�N�\\u0018�q���\\u0005\\u0017k\\\\[sz�kQ�7�\\u0000�_�s�\\u0000O��̈���+��m}�N��\\u001cB��\\u0006ܾ��(�|h\\u000e��\\u0019\\u0000q\\u0012�\\u001b�m�I79\\u001b^\\u0005�l\\u0005^5\\u0012\\u0003cb7�\\u001e\\u001c�fB\\u001c�`G�Q��\\u0004�\\u0007iV�\\u001b���K\\u000e[u�X� y8���Y�\\n(�co���?�D�F���\\rǤ��4H�\\u001ayS�\\u001c�<NRAf\\u0014�\\u0017�O���<�h��\\b$�4�\\u0017��\\u0016Dd\\u001d\\u001dA��\\u0014�'�a�v(�\\u0003��K&�%@]���ށ)jr\\u0013�{,W�r\\r�҇$\\u0001rl<M\\u0007\\u000fs\\r��c�l\\u0000�\\u0017#:�c�lMȩ\\u0002O��\\u001e\\u0004�{�Y/rR�h�^�\\r���|��\\u001f��򭊓�\\n|\\u0018P\\u0011:�Q�7����.\\u0007\\u0003)s\\u0015\\u0018\\u0000��\\u0000�\\u000f�U3�f��W�qC\\u0018��?�\\\\\\\"��\\u001b\\u001cXq�.\\u001eֿ\\u0012�ʞ\\u0004mW�\\u0019f$F��\\u00176�*�ly��=\\t \\u0002E�7ǋ���\\u001d?����dVp'�|�C\\u000bK'\\u0005 x��\\u0014�vW^\\u0012���8\\u00005�~1e�#R�ȸ\\u001e}iv.+\\u0001G/&ó9�e�\\r+��J�����9\\u0019\\u0019���\\u0004x� �ߐ\\u0000�W4�2�'`\\u000bz�a�m�.�b\\f�.�\\u0007\\u000br6��B�\\u0014u�AO����Z.+k�:\\u0011�ZI���<\\tP[�j�������Y�^w$�đ��՞&[��ܧ�g<����q�GcM\\u0000�I�۝\\u000f\\u0002\\u0018m��L<��,��\\u0019��E�5�Ѵ:\\u001a\\u000b\\u0017%��s�\\u0002���2��}�d���^�z;$���=�O\\u000b�6E�q`\\u0011T��\\u0002��c�Y\\u0016%����/��h�\\u0001��w h��k�\\u0019\\u00153���\\u0014��񱤛����~��W��R�&��~�8�\\u0000g<�\\u001b#,)����\\u000f+�*��a�2 ��ۀ�`~`�\\\\\\\">��q{\\n�'��#��\\\\\\\"9��Rm�\\u000f:\\u000ey��9�\\t\\u0017��x���U�NG���L܉2rL�/\\t\\b\\u0001�#K�G�,hv~ǥ������ɵ��(�\\u0003�\\u0014:�:\\u001a\\u001aL�V*��\\r�\\nd�5�G\\u001c�K[O\\u001e�us�����^��\\u000eiyix���D\\u001b{�Q\\u0018�1Τ��_�N�M\\u001b��z�n�\\u0013!��.���\\u0015N\\\\\\\"`�̍2�Lx�tQ,\\u000f��G\\u0016��\\u0016�W��+<v_\\u0010nh����L�R�4�L\\u0007g�\\u0012ܝmR��u�\\u0011�#�#�\\u001c�\\u001d�v�0�Oun'\\u0000�\\u001cƗvB��q{��E�����N����G\\u0002��͑�\\u0011�\\u0011$K�\\u0010,E��\\u000bW�2 Yp�\\f\\u0001V��\\u001f*��\\u0011�\\u0007c��$����6Qz�A$$\\u0007\\u0016���\\u001cI\\u0004\\u00040\\u0000��)����\\u0019\\u001a��\\u0007�\\r))�\\u0018\\u0006n�2ēr\\u0005\\\\\\u0003�:_Ʊ|i\\u0015y\\u000fP\\u001bڋ~�$\\u000b\\u00164~�0\\n�5'�������928e*��\\n�(�JI�.(>\\fV�Kr\\u000bm�\\u001b���h\\u0000bC\\u0003����F�7�V\\n�H���s�u�b�@\\u0001\\u0014���\\u0002�����K��D�\\b������Ή��2�bˉ���U��k�c�x��֭�R7d+�Na���\\nI$�Y�b�ok�kޗˎ����*M�m��\\u0017���H�\\u001d]���6��R�\\u0001\\u0005r;'��\\u0012p�7[X���E��h�\\u0002T���Y���u�)�@�\\\\Y\\u001c�ob��ub��̢LV,n\\u0001V����\\u000f\\\\\\\"��\\t\\rkxԖ\\u0003\\u0010\\u0004�ެ\\f�]\\u0002z�[�]�e����\\ri\\n=L���hV>r�\\u0015�]���rV�j|hx\\t\\u0012\\u0006\\fU���ގ$K��{�\\u0005�94z\\u0013\\u0003\\u001d�2��G�̄�Gaa~�\\nvm�zsF�\\u000b0\\u0017�ioh)\\u001ft�bB��s�WO��##��<7��-t�\\u001f\\u0005R\\u001a��e�����$\\u0010�\\t�\\u001f��XW]�\\u0006>\\\\\\u001c$\\u0017S��U>\\\\\\\"�ev��C*�\\u001e5��,w�W_g%�\\f-X� �\\u0018��X�\\u0016��x1]��s\\\\\\\"߈��VSXjw���\\u0018\\\\D$\\u001a�ҳ[��aG�1-�\\u0000X�YX�\\u0019bn ��\\u001f�S$\\u0014|+&ʁ\\u0018�mF�\\u001a\\\\\\\"I\\\\��\\u001c\\u000f��I�E\\u00041Op\\u000e��\\u0007�Җ<\\f�\\t\\u001c/;\\\\��\\u001a4�X_�\\u001a��#�]�ץ�Tg�&�1<t\\u001aґ�T1��\\u0018˄>b��r��=�nD���^2�0�]�\\\\\\\"��Vi6fD��7x�\\u001c\\u001br�t�Wy�)Q6���@bw\\u0016�p��͔�\\u0015�\\u0011ɘ�\\u0005\\b�0��k0хt\\u001d�\\u001b*\\u0018\\\\\\\"ȅC���\\u0001���\\n�\\u0015I��zq�Ol1T��\\u0013�sf\\u001b�V\\u0004\\u0010H;��;�6,��&8�F!U�����-o�W+�\\br\\b����$ϒߍ��Kפ[z_;��\\b�{���\\u001f(T������&�\\\\Q�����ڵX�a���\\u0017�\\u0002�[!�rߔ}\\\\N�i�hÛ���D&X�čn�5�*\\u001d�����\\u0003F\\\\\\\"$�<�\\u0005��\\n�$�\\u001f;�w�,��eT�\\u0002�$�\\u0000M�իJ�=`)\\u001c:�]�x�6��c������)�o퉗!g�v'X\\u001f\\u001c��@�ֱ�W�-ڄ\\f�\\u001a�\\u000b��4�4<�\\u0017\\u001f@�P�\\u000e��\\f����/�Y�fr�lF��p9<\\n\\t��z\\u001e|��8EP�J���\\u0000J���\\u001f���@�8i�@mW½y�7\\u001b^���+�\\u001e%�qF�\\u001e;+\\u0012�����oJրH�%\\u000emb\\rh���j\\\\\\\"\\bc�V�\\u0005\\n�ԥ��=\\rg�\\u001bb�[�mjJٍ���\\u0019Q{޳�Pe9<\\u0002ߞ��\\rk\\u0010@�6��z\\u000f�T�\\u0011[�\\\\�D��+C\\u0018ao��[\\u001e��뵪�\\u0003��p��z5{{��\\\\\\u0002F��R�^ �4 h~u�y����I��x�i-�#g쳤\\r?��UK�[�\\u0005�T��@\\u0012/ʮ�9�BaWs\\u001e��\\u000b�\\u001e\\u00144�J/�o�J�R��\\f�N\\tڵ\\u0004\\u0011q�c\\u0012��v>4Jƪ��X�H�\\\\\\\"�l�\\u0018��k�3xQ���^^�#������܏\\u001aa\\u000b�*/��\\u0013�kD�IB�q��]����\\u0013���\\u001fy��;\\u000b\\\\��E�Ư\\u001a���\\u001b�\\u0000�QBh��5�n�����t���E�v�\\u0010��{P��;_j�7%�Y\\u0004& \\u0019��ﵭjjd��[\\u0013�����v׋��\\f�1%\\u001dQn���W(MC����;�۸5���[�\\u0000\\u0015-�_�F\\u001c\\u000f2d�\\u0019\\u0001fF^&�V&�K�\\u001e[�\\u0007ۏ`z�Y�2?���m\\\\q\\u0017ܓI��\\u000f\\u0002\\u0013b�>H~\\f���O�o\\u0010+��e6�>ʲ�x�2\\f�&B8F5f�ۥI;�E�,��Y�PQI!U���VDa$/\\u0015�\\r\\u000e�Ƽ\\u0011�+2\\u000e\\\\\\u0005�\\u001b�\\u0019]�\\u001e�0��x��F��֯#~\\u001e�ڥ�\\nU�\\u0003�a{U��N@[[Z���S\\tc�\\u0000n@\\t\\u001f��Yb�\\\\\\\"�MM4�M@R��Yv��\\u0006�$Q=�1_:f�GiC\\u0005pÊ�\\u0003P��rnj�)\\u001crE�\\t\\u001d�9�Ç�~�\\u000er�\\u0012�,���\\\\�rM 6����\\u0000o�� S\\b`�h�D�yYX\\u0006'���](\\u001e�:�ʮ�����_�\\u0013>Hl�\\\\\\\"�a���!��r��ꧥ�\\u001e\\\\sdL���c����]h� �\\u0015�\\u001e�>Ip���I�;�O�@y�\\f�\\u001aF�\\n�\\u0018XՎ���y�L;SH����?��2�9�F���'��o\\u001c\\u0000��\\u0000\\u0017�LG��\\u0012\\u0006X�V\\rn2(:م�}׬�j�)A>�����V`2�{z�6��0�F\\u0016�\\u0011\\u0016\\u0000+�-ӑ\\u001aQg�~��G}�'�:;\\u00161\\u000fS��I\\u001bZ�����;T�\\u001b4��_\\u001fV�\\u0000u�\\\\Q\\u001a5���+��ӝ\\u001c�ŋ\\u0013�\\u0011]�����\\u000f��U6�^\\u0011��Y�v���\\u001b\\u0001\\n\\u0013�\\u0000H�o�I�����x���>�߱�c67�r]\\u0014c�\\bI�u�Csұ�\\u0019\\u0014�\\u000b�g��R\\u000e�:Uq|���\\u0012\\t�>>:�#�f���M+ؤ%�̀\\u001f��$���*\\fh����ʋ<)><�����{j��V�a#\\u0006�~C%�`ȎV �.\\u0001]o�\\u000f���*��e}�\\u001b\\u0000\\u0007V;\\n�sLx�&��F�\\u001b�)l�a���\\u0004�mυ�-Y��_k�f�|���fy����S�j�^>�$I�����T��-�p6�J�5U\\u0004�v��\\u0016\\u0014A\\u0011*\\n� ��\\u0011L��;$�=Kb|�^ԧ\\u0019^�N\\u000e��3�����\\\\\\\"��\\u0006CoƸ��r1���R��=����Q}��N���e\\u000bhIӏ�򡲔��Y\\u000b\\u0006Ձ7��nre\\u0010�B��\\u0000�Ll@,־�\\u0003���c��\\u0018����1\\u001a�Q�\\fl�B,㨨\\\\\\\"@���S\\b�\\u0016\\u001c\\u0011��\\u0002�Áqklh�I�Et*9\\u0011dk\\u000fI6Ԛ�\\\\\\u0011�Y,.\\u0005�\\u000f���5��tXÙ���Bc0P\\u001c�\\u00126�WO�{�`Ì��H\\u0016v��R\\u000f��[Z��\\u0016\\u0000on��$\\u001b�\\b�\\u001aiB�;-���\\u0013�;,�o!�\\u001bزX\\u0013���\\\\|���d�m$w�LW�\\r\\u0019Ջ�Ȃ7���\\u000eNCLn/`\\u0001�\\u0002���[��޼|3n�UR���@��X��+q��%�Z��p��^.,�v7\\u0006�39^$�T��Y�$o&{')^�B\\u0005\\u0007��~5�\\u001b��̷}�q�:mT�\\u0004�P�_�{�xbxI��k\\u001a8Ú�qL���\\u0011�k\\\\�ck���7��^�e^7��Eō[�&+���N�\\u000f�Y��r�\\u0013o���E�?�iJ\\u0001�\\u001c��\\u0016�\\\\\\\"\\u00132����-��1�\\u0007A�Y��{4�1'~�S\\u0013+\\u0012���YQ̓ijͫN��\\f�kE�u�J߶N'B�؎���־��H��$�x��_\\u0013I\\u001bw\\u0019B�\\u0014'W \\u0001�$��\\u0016��kgw��;\\u0016>&�@;���M�$q\\u001cvO͹?�Xć�\\u001e�o�m�\\u0011b4�iV���Cq\\u0016�PH���ٺ�k�\\u0016\\u0007z�1\\u0002��<(u)X_�M��z��\\u0014\\t2��\\u000b��@�ò�c��{Ѭ�B��/kދ�xX��H�B�୙E��UNI�9���\\t��G�\\u001e�L�#\\b������-\\u001f�d\\u0019��I\\u001f\\nu�D�\\u000b\\u00033\\nH�/k�\\u0001җ;0b��J���󟶩T�%Qvhu���s\\u0017'å\\u0011��\\u001191�\\u0014�A؀ocm�v�77u\\f|H�B\\\\\\\"�*\\u0007¡�-8\\f�\\\\\\\">\\u0004)�!kxU�0�A\\u001a��J�;�AW��n44Uq\\u0013��\\u0003\\u001c+2F��T1\\u0004�m�kL\\\\�$X,e�\\u001dočib�L�\\u001d\\\\�\\u001b\\u0011T������u��]��D�C�����\\u0016b�\\u0007\\u0016\\u0001N�\\u0006����T\\u0004i\\u001d����ZLr�\\u000f�!?\\u001dj�4�\\u0000\\u001d�\\u0001�;VJ�\\u0017#\\fl\\u0019;��{\\u0012p�l\\u0019�T�l_��Ȅ�\\u001b�Xu���[A���q\\u0004�\\u0018m��T�i's$��6���):�[M@��]�,�\\u0001.�9�Xx�4��c1㳝���[\\u0001m�S�\\u0015T\\u0000Dr����`Bt��\\u001aF=J�Z�wT+%�%�\\u0004����6\\u0015��CV\\u0003,\\f�\\\\�\\u001d%BY\\u0007(�V\\u0004�\\u0011j_�\\f��rN��UX�\\u0000������*�,�\\u001b��(\\u001c��$��Z&��\\u001dE\\bm<��vw?��k�������:�D�*�\\n�\\u0001�<���.����3K\\u00064Q�)gT\\u0000��\\u001b�9$�\\u0005\\u0007\\u0005��\\u0014\\u0017e���Y�Y�@,mԓZH\\b�\\u001f�z/�\\u001d�0\\r���\\u0000zG�|\\u0014XQ]�����)��RdiQ�\\u0001�z*\\u0019�\\u0019\\u000b���\\b��r�X\\u001a�\\u0019�Έ�ǎ��j��\\u0012\\u0007���Z�y�^�n��\\u0000��;���\\u001a Rn�\\u0014q-�)\\u001a��R�Y\\u0012g��jmD��\\u000bn:P��\\u0019%��Ƌ)BX\\u001evy��9y�İ⣮��ǂ|�1��/r�b�~��+Ŝ�-����n{��\\f�\\u0003\\u000f:�8+��f3cd�o�\\u0013p<<��(\\u0016H�G��\\u000e���ʛ!�J~\\u0000\\u000b\\n�9�\\u0011\\u001b�\\u0007p*����Y�b�\\u00116���\\u0018x�W��]����Ƥ�� ��+��J\\u001a�\\u0000�9\\rʲb�@�^�O�>,��\\u0013�\\u0000i����4W�!^\\u0005�Sҳ���q\\u0016\\u0006�y�U��t�0;�Y)��I\\u0000�\\u0014\\u0002\\u0017�[z�I��b)\\u0012�#\\u0006RU��hkC�;j�MR����[\\u0016A(k���\\u000eԵ2� �<K\\u0012l~4\\u001b�4�+�e\\u001b\\u0003�R�%\\u0001�\\u001915��π���l@�_�Ԡ`�M��C�\\u000b/��㙢p\\u0002����\\u0016�cN]�5�\\r��Z��\\u0000iv�\\f��,�p,�,�C5���\\u001a��T���\\n\\u0014�:�Nڪ��}��\\u000fݝ�\\u0007\\u0005qN$+\\t��>7��m�ƹ�w_���\\u001bR��+\\u0000�3���\\u0011�`I\\\\\\\"���@��4�-�W��*����<>5μ�Ioq��nF��kإ�\\u0013�'1�,J�iN���,��\\u0000\\u0018�2\\u001e�B��b����=\\u001ed���\\u001b\\u001b0 \\u001f�g&ND��YY�{1$Vu��\\n�\\u001e��&X�W\\u0000�Ф�k\\u0019q�i�\\n�rfd\\u001a�I����\\u0013���Ņ�\\u001d\\u000b4jI#RH\\u001a�^�\\u00040�\\t#�\\u0002 T!F�#Z�v4���9\\bx�\\\\\\\"�6�\\u0014���#I1.�ю�J�\\u0016�Xޅ�\\b�\\u00042�w#C��\\u0012�`S��\\\\rg&SmF�@�(�\\u0014���)�\\u0012�0\\f�{\\u0013�O�m�&�I�\\u0000�h�ݢ\\u0016��\\u0016��M\\u00056�\\ta�������Ѡv�\\u0016\\u0017�U��if\\u0006D�B�%\\u0014^�P\\bڬ�\\u0011�\\u0016.Ķ��u���!N\\b4ܞ��U�l7.D�d��\\u0001Ql�%�\\u001f?�S$�١7��\\u0001\\u0016;V��\\u0004�o{!��!�\\u0010��\\u000b�\\u0003C��p�I*��Կ���u&�V\\n�7�8P��,o'$k0ԋ8�0\\u001f\\u0003[��\\u0016����ή�G\\u0019�\\u000b\\u001f��h��M0��)\\u0012�o�W��\\u000b���\\u000b\\n�3\\r��^7�F�y�\\u0002`��^F��]\\u0007λ�بp1�/x�\\u001f�����H\\u0003�]_j��~�\\u0003�JY��u���vS�^��8�8;��eϋ�@��;\\u0005�#���wK�axG\\u0001��1����fF\\u00120\\u0014�r5��\\u0005�\\u0014\\\\\\\"\\u0006eP\\u000e�?:��U��s���쫼*��O\\\\\\\"n����y��1�\\f\\u000e���Gdbq��qw\\u001a\\u0012\\r��Z9\\u0002��=(u\\f\\r�/Z�2\\u0013��Ĕ.4@�8\\u000f��\\b\\f��L�Y���(8r%���%F�I6�µl�F��ГNP��\\f�3\\u001a&\\u0017�\\t\\u001eL�wwgfF:��0�K\\u0004��'��c`w�ֲ�,ɗ��\\\\|\\u0000�\\u0014�>l��ƿ��\\u0007�ދ��n*/��}����R��\\u000fƜ,�Hk���´�&�{��1��s`\\b�kImE����_H�.�d�iw'-nU6�*��-XB���ǜ�G#`A\\u0017�Щ~:�Ev��l�b�rFk0���i����cǗ;E#q\\u0016��:_�\\u001f\\u001f)�qn$���5\\\\8q�\\u0018���R��5�dO4ұ�F�܋�$�U^�քpkp>�\\u0002���cT��(\\u001e\\u0003�+���J�M���K\\n(S�lOAP�J@\\u0018�^5w�\\u000f�Np��q��-�|\\u0005/�\\u0000E���#�6(v��dz\\u001d4��\\u0014*�YV��5'�h>�<M\\f \\u0011ȷ.>\\u0002�R����)�\\u0013��\\u000f!6&�������=W��/óK�\\\\\\\"���\\u0012w\\bE��ʄQ\\u0011Af*\\u0000\\u0005M�\\u0004\\u000f�x_�s�����F�zr5�~�\\u001f�ǐ��\\u0012�?�_Ʃ[�\\t���\\u0013 �c)7䶸�WZb\\u0018�S�\\u0015χ!�'���ҭ����\\u0000��i�\\\\\\\"\\u001dd�A\\u0012��ď�j~��;�u�|x0�%\\u001c��v\\u0002��\\u0015�$��I�U�4�\\n8��✸in(X�\\u0011E'\\u0017\\u0016��\\u0000W�º/�]�c�3˳ P�^�\\u0010��`߇�\\u0000q�tB\\\\\\\" �\\u0014x\\r)\\fǼ��4ܤr�\\u0013mt�t\\u0014�\\u0002�*\\u0016�N���ª�P\\u0007�/QQ\\u0017�P>\\u0000\\n\\u001606��\\t��%�?�T\\u0003q�R8c�6,=G�ZK���\\u001eK�HUE�\\u0005�(��<���G,CX}��$\\\\\\\"(�S\\u0007&�O�\\u0019Xr\\u0006�\\u0007ʐ�\\u0018�m\\u0000*G$:��j���)\\u0019d��\\\\�fU65L(�cG&�@6���\\u0012�P!\\u0017�z?\\u0016T\\u0018�\\u0005�\\u001c�c�\\u0002�\\u000f2�\\u000b\\u0013�#cCύ��\\b�\\u0017X�\\u0003g&�m�>\\u0015n��P ���\\u0000!K#�fv3�@\\u0016E��YÅ\\u0018�n7�B�<�\\u0012�q@���֬�\\u0011�g�]b��;h\\u0006�uIy�z/}>v�a�\\u0004<\\u001fr\\b\\\\\\\"�5Uy\\u0010� q�e��*욉WR9[�Ph�x��\\u0010T\\u001b�|il��G �\\u001c��\\u0006�\\u0000\\n8B=�f�k\\u0013T&\\b�Ln\\u0000:�\\u0007\\u001boq^���L���\\u000b���\\u001b�p�q�1��\\u0017亳nMg�|�B�ߧ��SNmμ��\\n��\\f�Ah���\\u0000�����\\\\\\\"\\u0007YP��ƞu_t�ջtq͟\\u0012H��������U�#��ު���']'�1\\u001373s�\\u0007��^����`ݻ\\u0004\\u0003���¹{\\u000b߭i�7<N^�U�1�!�u�V�L\\u0004�[c�c30����\\u0004�\\\\j��'Pv�ғ~�ص8��!r�8��(TA\\u0016+��\\u001d��㈜��\\u0010�����\\u0003��xՉ�\\\\�~\\u0006�\\fk���w۶ɵ\\n�\\u0012\\u0011�ֳ\\r�ld.Lֶ��ә��L�\\u0002\\u0014�8��xU�p�b\\u0001\\u0017��ż�����q''?�\\u0003�G\\u0014��н�\\u001f�{�����l���\\t\\u0019\\u0010+\\u0001�\\u0002�zR��}LO��eŗW��\\t\\\\(\\u000f�-OƵ�-��X�Kr��B�Sk�mY`I#��ص�bo֓I�`�'����{Q��\\u001dl/��-sH��O�\\u001f\\u0003e��C��vؽ���\\u0004%�c%�K\\u0012�����]j�,\\u0016d�U��S�S���\\u0016\\\\�\\u001d>���z\\u0001����\\u0013\\u0017\\u001f�<PD���\\u000f\\u0015\\u0016\\u00177�.́aDd\\u0000\\u0012w_�iUʪ�T��8+ =���\\u0016�\\u0007\\u000f+\\u001b��-�@(l�\\u0019.�(\\f�5�]�̖��7�\\u0000\\u0015K��Q�$���\\u000eqr\\u0015���P8��ZI�-�ʸ�\\u001dG�-Ɯ*\\u0018�����Q�\\u0018Z0C\\u0000@�\\u0015��6j��&�\\u0006\\f��2\\u0013�.-Ћ�M`�E�񱈩�a,�ik�N����|��y��0�֭=�6�y�q\\t[�\\u000e�z�\\u001a��\\u0000<b �\\t�j���\\u0000�Vc�r~\\u0014�,��\\u001cZ�4\\u0007ʲ��Z�J\\\\\\\"dҔVR���rp2D����j(�\\u0004�%B�\\\\\\u001e�ֹ���&�l+(��\\u0018hAҮ��b�U�\\\\\\r%B��l�\\b�\\u00162�r�Z@Hb\\u0005�\\\\\\\"���\\u0003�%�Q^>]�\\n�\\u001d�[�G2��.1�=ƪ|+nlOZh���~�r�[P�`\\u0007[\\u000biҳh��SL\\u0017�f�\\u0000N�H�@��Ɓ���X�\\rnsx��@��\\u0012�}��+e�6փ\\u0005�Â!��ź��k\\u001c�퍕���Ȗ�\\u0006��\\u001b��,�\\u0019X���[\\u0001j�\\u000f�\\u001f��'�U�8\\u0005f1����ܕS�\\\\\\\"�ˊX�RA~�'�Ʒ�,ļx�\\r�W��{�ĥ��7��%�0I\\u001e3�6�\\u001d+c0{\\u0013am�hq��\\u0011������hPG �msbh��\\u001cJ���S�����$=���ibU(\\u000e���\\u001alȂ\\u0012˽�l9�I\\u0002FVϸ{����\\u0016&ͭ\\u0005�ػ� ����O�[\\u001eۗ\\u0012�hX*��6�S��;7\\b\\u0018\\u000f\\u0007a��\\f��ôSD\\u0010�\\r�!�\\n�\\u0015D�\\u0011$\\u00124ѣ:���\\u0004��ڃ\\u000e�3� ���\\u0015�\\u001f�q#�$\\f\\u0005�供�����چ\\u0006{�+�\\u0019=J:_�G\\u0015\\u000f�R�9^�\\t�\\u0014�b� \\u0017�F���ې�lt\\u0007�q!\\u0006�:�\\u0003�I�~�=���n�d�D�X�6��\\u0011J1��K�2��\\u0018�g��f\\\\�d\\u0003\\u00197��\\u001a�����H��eƍ��U�\\r�����fW.\\u0010%��\\r�+�\\u000b3���MadE\\\\\\\"�Ď\\u000fq!V�S��I��\\u0000N��}�z�}�]Q�6��B,�r\\u0003��Q\\u0000�4�&�C\\u000b\\u0001k\\u0011�Tɞ@dX�(�ط\\u0013k�ִ��0,��Dj����\\u000b��U�uH�$\\b�*�\\u001a(���\\u001c\\u0012����i\\u001dO�����*�͓\\u000b'��\\u0011\\r�\\u0017\\u000bc��oZHl��\\u0014�\\u0004zT��4q�\\nG�0�!Y�:\\u001f�_��i�s}�\\\\\\\"�;�<������J!$Ą�J��;\\u000b��v\\u001d$o�Q�a�d��E�B\\u0019l|T\\u000f��>�\\u0013{��6Em�\\u000b\\u000b��]\\u0013��\\u0005}7���ڳ�>��\\u0010mo\\u0011�O�\\u000eL��f�\\\\\\\"���Ria��\\u001ed�K�c���|z�Y\\u000e\\u0006$�S$@�F\\u0003{XyR�僉\\u0003�\\\\\\\"�T0<��ZJ���\\u0012#�2ˑ�R�叙�`�\\u0004\\u000e�֘j��\\u0000P\\u0000�\\u0017@<�u��ą��o�JѸ�NB)\\nH[���d�'�\\u001b�\\u0007�\\u0011ݝNa`�]A6\\u0016փ\\r�\\n�\\u0016!���\\u001b�W*A mEF�ЀE�~����\\u0014,�̍f��ʛRRp\\u001f\\u001b\\u0001�Z%����aK࿴/���l$q֘�2�J���\\u0017��\\u0007���:x�>�Kw\\b�jI?�Mt���+;_]4\\u001bU�6M�G\\u001b�&����;\\u001fI�׬\\u0007\\\\\\\"-k�5�$��!�3+\\u000e�i�ޗ��w\\u001c�\\\\\\\"�\\u0004 :kb�(�idUr�+�>���Z�LL�\\u0017\\u00111�(ɔc�U\\td?I>\\u001e\\u0015�?u\\u0011\\u0015Y\\u0010p\\u001a\\u0016\\u001b�:���\\u0000\\u001c�W�)`�;#��4 �(�2Ŭ\\u000e��Yw\\u0007Y3fu7Vk�>\\u0002�Id��6�+��b�\\u0002g�r�I؃�\\u001aɲ$�&1\\u0011v\\u001du�[\\r���,�ei\\u0017� X�]W�\\r��?�\\u0017�R�[�.���\\u0007\\u0013���d\\u0003�;���l\\u00073�w$�\\u0007�\\n\\u0016x�Y�\\u0001\\u0000\\u0001�\\u0000\\u0007�\\u001aa�1`�\\u0019K��0\\u0000릕J��\\u0005�%XTI{\\u0005��4�#\\\\\\\"L�9��}#�E3�8�&+��2�c�'��\\nd\\u000f��������Z���p\\u0018�FЎ�\\u001c�!<����h���ѿ\\\\\\\"O���J�\\u001c\\u001b�\\nB�/]ɫ\\u0007�n\\u0018\\u0000wֲ�n1\\u0003�(&�X[j8��+45.d\\u001a�5\\u001ew\\u0015�a�:E�y\\u000e\\\\���[{e�d��j\\u0000�W�F�ˑ�]��$�5�\\u0001��k��Xg���^2N\\u0001II��6�U�]/j�\\u000e<.@`Qm�W�.1���\\u0017x\\u0018?�ߤ�5#9�ۄ��4n�\\u0002�+��\\u0002���;y�J$\\u0012\\u000e��\\u001b�iB��\\u0011��W��\\u0016=O�aj�Zn�((\\b���o#K\\u0007\\u0019�����\\u0004\\u0000�KZ���޳�8�\\u00041!�ٗkSl�qb�ȁ�\\u001c��@M��^���`�f\\u0007y\\u0011Z]D�n�\\u001b�4��\\u0010�&H�Dk�����N�n�ڨ��O{�6��ՙ+.��\\u001d(�\\u000e2Wg��/}t���2ʱ���#�\\u001dk\\u0015�\\u0014&���~�3#F�̩���Ć�\\u0014�c�\\u0015rn،��$��P����\\u0005��ʋ�:|���]G���\\\\\\\"�\\\\���V��4�\\u0017Ў �v�Wf\\u001ce��.\\u0004\\u000f'����<mo�������\\u0017w[\\u001bhG\\u001e�AYd����c:^���''\\u001a\\\\\\u001c�\\n\\u0015����v���7X8�Qe�!��_�.�t��YD�\\t�\\u0007M���+I\\\\\\\"�ȉbv��]c�^���ʅy��V�C(�\\u0015-c���K�\\t%\\u0006�!\\t{r;[�T�8��\\u0000\\u001b׈�/\\u001e#\\u001a�<g�On\\rX�\\u0007E�hX�P�0{\\u001cK�\\u0011`�[�D\\u001ce\\u001a���YI�.\\u001c�y=����[_��_6c\\u001c\\u0005�N&�@/M\\u0012˶*��\\u001e_p���J��`r�@\\u0004�+���Z\\u000b2y^S� X\\u001b^�)�)\\n�U�(�cm|kdf&�\\u0005\\u0003\\u001e6DqǕ,l�Im�\\u0001ku\\u0003{y�X�y�skkS3���\\u0019�e�\\u0014�ځk\\r�MZ\\f�y88\\u001a�-�*���R,��$�ȷ�\\u0003��\\u00176\\u0019\\u0012\\u0019=�i��㪐z�G,�P�M�ŉ�\\u0016b\\u001b�\\u0016�'�E'\\u0010n-qz�I� A���\\fd��0�jb=��\\u0019Y\\u000b\\tn*nX�l7�>_�ݸ�.r[�C�\\u0000ͥ}��Gܰ,\\t\\u001c��L\\u0006[�\\\\\\\"Ǐk��t�+;�N\\u001c\\u0015T�:�;�\\u001f�Z%%ЎQ��\\u001e�*'��v��V���h��9\\u0001�\\u001aT�Bci\\u0000�.����Ъq�S \\u0001�zd\\u000b���O��\\u001cs��ĺ�I\\u0003�޳U���\\u001b\\u001c$���D�kqcW\\u0010H\\b�����p\\u000e��+o\\u001a�\\u001eH[#ٙM�����ֲ��|4��LX�,�t��i���M� �{4R�X�\\u0001���b��9����Cĭ7��O�9�{��\\u001f_W��\\u0003�+&\\\\�ug�o�Z37%\\\\\\\"�IG�\\u0013m\\u000e�V���E��\\u001f\\u0017 �E��� \\u0013��>4Om�o�I$%\\u0011#\\u0000�`H,�\\r�o�)��B]A2���~\\u001c�\\u0000�6�2\\t�\\rd����\\u000b\\u0006�����\\u0000ͥ\\u001d۶Ä�4,��%Hb\\u000e�!]0t;\\u001aK��\\u0010�:L��\\u000b���ޚ�7:�\\u0002L\\\\8�Bd$5�\\u0007�[#\\u0000$e�+��t�cV\\u00042�\\u001f*-�n\\u0003����6�p��v�L�T�Vp�s�\\u0000hH�;�kLEYq�h�~D\\u0012\\u000fC�J!r�Lp\\u0010z\\u0011\\u0001~+r\\u0010}G�RwU~J\\u0005��q�N��&�P�F���n�G��֗>c���r-�\\u0015��,�{��hTl>\\u0014�����P\\u001c��c��K\\f\\u0016\\fޣ�\\u0015�\\u001a\\f����=?��\\u001a�F\\u0016#�nŧ�Lj6�ܶ®I�l<ٱ�P�\\u0015�܈\\u0000�\\u000f\\u000b�C�\\u001e?r�1M#�:�\\u0010��>K����\\u001e\\u0016�<t\\u0006�\\u001eʦ\\u0017(N������N$����?s�ظ�4%�\\f\\u0000\\fo���a\\u001fm���f�@$\\u000bo�S\\u000e�\\u0010�<F\\u0017���N�\\u0003�x�\\u0018�,�\\u0013q\\u0006�|\\u000fQK�֬qOIm\\u0015�Z�y5��\\u0018�9\\u0018!�bw��{T\\u00198�3��k�\\u000b[Cn���]��:)��צ����B�\\u000bk��}\\u001d���x�wR��QWr�L6��b���V������,��F�������\\\\�P�\\u000e�(:���!K�\\tPIk�_Z\\u0017&1\\u000b�\\\\�\\u0017\\u0014\\\\�Qy\\u0006���\\u001b�\\u001b���*\\u0017��HN�u7\\u0017���n[+mZ@\\u0003J��`�\\u0005�.mP�4t�\\u001f��\\u0016<��\\u0018��\\u001dQ,\\u0002�\\u0017\\u0017$\\u001djd����7\\u0011��`\\u000f\\u0010�-{i})�?v�~�a�(�dA��W=�1[\\u001b�M�����l�W�Imf�\\u001b^��e\\u001aU�Ɗޢ�le�\\u000b9#[\\u000bV�\\u00023�\\u0011�\\u001a�8�!a}.~&��@�[�&�\\n� \\u0018�եev��@�6�Ɋ��T�XI\\u0010s#�qrJ��\\u001e\\u0014�5�cAˏ&\\u001ecZ���-u��I�U\\u001d�/\\\\\\\"t�r��)\\u001f�:j\\t��\\u001e0�Ty\\b�@v�����#7ȓ�H��֦R��\\u0011����$�B�n�[�T\\u0012;����|��\\u0010%�\\u0019���T\\n��\\u0006A\\u001c\\\\.�\\u0017�q�\\u0011/x�Q4\\u0019y\\f�\\u0012��\\u001bk�V��\\u0007\\u001f#\\u0014;%�O��U>7\\u001b|it�)fU\\u0003��H��\\u000e���K`�9�\\bTP��\\u0013�ʲ=��\\u000b���.+�^K�\\fhA��T�jD��O%V�\\u0000��XM�����o��\\u0000*�\\u00067��k\\u001bH���j��9Wf�\\u001c�\\u0004��\\u0002�f���\\u001f\\u0007\\t�\\u0019�+<���?��^6���\\u000b\\u000e��\\fy�t��Z0\\u0013ُ�)����h\\u000e߀�)��<\\u0016*E�o�)r���\\u001a�\\u0014��\\u0015�@\\u000b�>&��Hd�8��E�w �<�E�b�2�H?W \\u000e�\\\\\\\"��A#phA`��qN�X�nty8nU�\\u0001ms���e=U�\\u001f��\\nw\\u0006�\\u0000��5�~4~>|���q\\u0013+)���b�^>^�~5��=�Y\\n\\u0003\\\\\\\"9\\u0017\\u0002Aq��`��U�Bs������zP�K4d�����bX��G�\\u0012�>F�\\u0014���hȚ�\\u0000R��mҥ��\\u0006x�\\u000b ���\\u0012�^��j�G���'!��]\\b�\\rV��\\f�\\u0002�z�5��\\r\\u001c�E\\u000b��]c\\u0017����U�%�C)E\\f�\\u001e5hc�dU\\u0007C�#f�+,e��\\u0014r�\\u0000WS`(�\\u0000���sz�\\u0003\\u0000>b��\\u001a��?�Z���/�Bdb�H�y+\\u001b/�6E��PI+��5h�\\u000ev0`\\n�7\\u0007�-Y�ٴ�ԫ%\\u0012\\u0001\\u000fn���Qh��\\r-j�#\\u0012\\u0014Bѹ$kccq�]��o\\u0014aC��\\u0000,.\\u0000;�=�\\b.<��\\u0002�m����I\\u0019�\\u0005\\u0007mǒ\\u0004��\\u0002�\\t�\\u0016�(\\\\�X�<�nI�\\u0007ph�t�ˎ<X�*[�;h�u,|(\\u0019q���k��\\u0017�?\\nP�%�|\\u001eˍ4fr����M���\\\\I�;n;..C�\\u0011b̠)�[��i~$�\\u0005\\u0004Q�������\\u0013\\u0001RX��p\\r�\\\\\\\"��%����N\\u0000;�q���2�2���\\bQk���K$����í88�\\b��O=�:)r@\\u0017���\\u0005Uɑʔ\\u001e�eX樋�\\u001e�ۏ�e�\\u0019A{\\u001f�\\u0006H+u7\\u0017�#����|\\u0007ʴ�.R�H����KP���Z4�X\\u0011�\\u0012\\u00106\\u001f�{�Z(��Ge\\u0002˰��J�~ᛑ1���#\\u0001v�A�ԧ\\u001e'�ck����ӼX��D9�n\\u0012\\u0005��h`�\\\\\\\"��`�\\t����G������\\\\\\\"�<�o���Ef\\u001c��^� �~�;8\\u0012�(t,\\u0005�E��1\\u000bb\\u0005o�ah�L�\\u001bhm�΃i��\\u001aD\\u000f���~�ڔ��`�ru<����Z4�@ï�Qp����\\bG�P���c\\u0005}\\u001f\\u0011D�K�A����X�^{�H\\u0004\\u000f:��\\u0011_�c��┱�\\u001a�O��C��Z\\fdL\\u001c\\u0006\\u0002ױҝ�c�\\\\�uҗ�\\u0000��\\fo�4�\\u0006��`�y}�$��\\u001e�>��~�'x�3��h��/p.=jF��Z*ɓ2�C�\\u001e�$�ke󭻦\\\\�=�\\u001b\\u001d\\b��T1$n�\\u001a�\\u0014\\u0002b6L�{�����\\b>U�v�:c�G �]\\u0015UV��vRk��!��\\u001b��w��\\u0015�TQ���7\\u001d+>�lF��,��\\fa)\\u000e󿺣��\\u0016ֽ�\\u0000R�� :�)�llXmF\\u001cؘ�;j\\u0000Pj�m�0�9Y��:�tv���-Zk��uo���\\u0003\\u0015��\\u000f�W3��F��jIN:��x�qg6I�5�Ԋ�XYՐ�piR�\\u0000���V�\\u0013�j�|�j���|��*�m�4<_��\\u001f�\\u0006V&�X\\ro��INYf�3\\u000e\\u001a1\\u0003�>\\u0016���o�^\\u001e25�\\u0015�B��\\u0000m�3���K\\u0018`�Hѵ\\u0002ǯJ\\u0007��$�\\u001c�\\u0000ܹ%N�ښ\\u00066.�;h\\u0015N���+������./\\u0010tR�TVp�n*�\\u0018C\\u0015�F�\\u0013}$�\\u000f���\\fv�ϫ��}���C�\\u0000\\\\W?\\\\\\\"\\u000e �<��룮c�cx�5�\\u001bH��4;oz'���1�\\\\�\\u0015����N��\\u0006K��`\\u001a0,#V��n<)�c�?}��\\u0006^��֋hĵ�F�Re,,����.\\u0005��\\u0000ͤ&���M8�ʚBx�HǤ\\u0000,~�[,.\\t��5�_J��Q�/\\u001b�d2\\u0019\\u0019�Q{����بl�f\\u001b�i�$:{�Bm�N5��v�d<\\u0001@?X���JRSIh ɈG Q{Z�בA�\\\\��:�]�A�9b�� `~7��b�\\f�$������HЭ5(�\\u000f�3\\u000b��ƄqbP�A�\\u001f\\nwȪ\\u000b|�,�)�faY\\u0000t��U�4\\u0006b��t\\f)�6FQ��W\\\\\\\"5\\u0016\\n\\u0000�T<��Y\\u0012�\\u001a�Tn<-oN��S\\u001e���c#\\u0000\\ts��\\u0014Z\\u0012����\\u0006�A:\\u001b�f6,\\u0015A$�:�^�y�r!�h��m���\\u001dE\\u0005��d�*��X���,H��X�$w� (,u5s��ln\\r0�ǚ\\u0005V\\u00047S\\\\�fGs�w�ٹ_�;q\\u001biR��q\\u000f�)Q\\u0003���|<k\\u0011#r\\u0000���$k>\\fJە��M/��\\u0018���:\\u0011�m�k�-.nZ+��Wn+}�J\\u0017'*hc禺\\r:�&X�\\u000fO\\u0013��hݿ\\u0016u�.�*ث؍u�Ҫ[bI$$Y�l�rc\\r̀H�#��:�1�+F\\t�$�J�\\u0016e�\\n#<C\\rm��=\\u0018��\\u0018 �t����\\u0001\\u0019=lOm�=�Њ�dX�n��ɓ2\\u0002Ǔ�\\u0018��\\b.:�]Oΰ�ZpW��=$�\\u0000\\u001aI�\\\\\\\"i\\u001b�:2\\u0007�{�mT�#�n\\u0018��*�{X�٘s�%Ὦ/�+.�A�܉\\u0002�Đ����a��?eƛ\\u001e)ZG\\f�\\u0018�E�\\u001f\\n\\u0013�v�ż�\\u0013$=I���M�d�\\u0000_�\\u0003�ҽ�\\u0006Hd�������\\u0006rr#$���,��7��nDk[Z\\u0011��@��=\\u00041�oLr�?#hՒ�%�W�Ʋ*�tG�H6\\r���4\\u0005�#��=&�,\\u0013\\u001cwW[�h�ƴ����vC�r�\\\\w\\blo��E\\u0010���w�|+\\t�Y\\u0002�6U��V��6����\\u001c�\\u000e\\\\\\u0018\\u0018\\\\\\u0016��*�X��+<.y)66\\u001a\\\\V?��Qu<�\\u0000ni�fc�{!�r�\\u0013���IhT�ۺ��H@#~ \\n\\u0019][cr7\\u0015��`G��_\\u0016+�<b�q�~\\u0006������1̥]\\u0018��D�P8���4a�~W�x�\\u0015����¶^�\\fG�L� �I7��Z��֊F��ׇ\\u001f�7�Z���\\u0004\\\\\\\")$/6\\u0017�A6\\u001a�ք�6Z񌅪ҫ�\\u0000�\\u0014SdM/��\\u001e&�\\u0006��^M�\\u0014\\u0005J\\u0012\\u001c�s�X��6.G8�,�\\t\\b:^�w<��f\\u001e��D\\u000fH\\u0000�����p�a�丗��Hm�5���|��#2Ɨ��omk���6*����_�M_/&\\u001c\\u0006ā��܏p����gl9��ӯ�[J��1��no\\u0010��\\u0015�\\u001e�\\f(,��\\u001c�0\\u0007+\\\\ް��H�uR@\\u0002�ˁ��\\fO:�ȣֺ\\u001b[�K7�d}ԭc��\\\\\\\"��I���/oM\\u0019����qƌs#V�\\u0001�jǵ<q#�W�.J��\\u001ag�CG\\u001c����\\u000f\\r�Wm�W�W7)B2��\\r��]�\\u0011���\\u0017\\u001fV�k�KT�9�Ϸ��\\u001c����C\\u0005$q���\\u0015>�p�l\\u0005�T����\\u0001u`X��\\t�$��{\\u0001d��I8�-�i\\u0014\\u0001%���h*��I\\u0018\\f��v��Y�C\\u001c��J\\b&�s�\\u0004.\\u0015\\\\�\\u0003�\\u0004[j�j螛\\n\\f3�.\\u0005�\\u000f\\u0012�{���\\u0017#�O�T\\f�\\u000b^�|�gs���4v\\\\\\\"�HV�\\u001e��{����\\u0012\\b�`g�&�\\r�M�ᰘ\\u0002��-�_�B\\\\\\\"�1=<)�,�\\u001dU�E\\u001b^�IA\\r�s�;@\\u0016H���+\\u0006�~�1�1���y\\u0016;06\\u0006�\\u001e�\\u000eOob�\\u0006�؏���P�k�j\\u001a@���pجE�A��\\u0000���9P�\\u0001��J��u�\\u0003#\\u001e\\u0011'\\u0002b���W=�.8�Gk�v<@�R��ʑ��Á>D�����*c?��-b56�\\\\\\u000b�S��|�F���(��h^�N�W>�#��\\u0005I#�Q�\\u0000i�38��^M�U9[CO�u��Q%*��0���\\u001aLE�&G\\u0005��% YN�:�3;^\\n\\u000fQ��B[o��E��\\u0004\\u001b\\u0000�/�e�djv�\\f�xG3�\\u000f��\\u0006�uSAJΦ���N;�)\\u0003!s��\\u0014�V\\r�\\u0016\\u001d\\u0005ggi��Ҏj�<L��\\u0012@\\u001a�\\u000f���\\u001b�c�C�,d��O\\u0015\\u001eB�D*&Ak\\u0010�λ�ĥ=ǲ�6Q��U4��x�@�~ӄ�B\\u0017V���R|�\\u0018�VV\\u0000\\r��\\r���E\\u000e�&Ɛw�D�Q\\u001b\\u001b\\u0010��xoM�\\\\\\\"A��H� Y\\b\\u001b) q'�\\u001a�H�\\u00005�i|��\\\\|c�҃\\u001a��\\u0017���|x���D$2\\u0011qo\\n\\u001aK`��a�%Γ3\\u001a0��[վ�>\\u0007t�i�l\\u0002�]J���2�\\u0010�,%�d��o�=Ni^,ؒe��?l�����L\\u001a:�>R(�Y�-Ђ\\u0000�ZՏq���d�٤]Ո<�-��4\\f4�\\u001ev����k�B\\u001b\\\\[Pk9�̲��@\\f9ٱ��\\u001b\\\\\\\"H�r��dR�\\u001a\\u001a_7vΘ��b�\\u0011#3q?��^L|�\\u0003ʌ\\u0003�U:��(i���҄�\\u001c�X�����=7��\\u0006y�|\\\\���+�H\\u001b\\u0011G`\\u001c9�h2\\u0019�c���\\u001f�.LW�B̠\\u0002����V�\\u0017(�\\u0011�J��iຩ\\u001afb�@�\\u0011�$\\\\܃@���PhX�(7ޭ+\\u0015���5*�\\\\��K\\u0005S!�� \\u001a�6�*sD�� ���k�\\u001a6JJ�^5�+Q�Qc�3\\u0002\\u0019��}-bM�=E\\u000e�3�\\u0011`$��pգ�\\u0019d\\u0002F�Z��\\u0000\\n�B\\t�E�ڵǎ\\u0004�\\tT�;_Q[����Y�\\u0007�t�S�b:\\u0019\\u001dO\\u001b�\\u001a�w�X2����{Z���h#�����ov��T�\\rd\\u001elX�P#m\\u0006�M\\b��|g)\\u000b�\\u0006ܬH��Q�߸O&��aj�\\u001b\\u0016)s\\u0002:�\\u0004���\\u0014L\\u0000N\\u0019�\\u0010��b��PI:x�y\\u0019��\\u0006)$����]7h�\\u000e��J�$��K���\\u0003ME�/��\\u0000���\\u0019\\n�\\u001a�1�\\r�7��\\u0016�-���\\u0004e��bK�\\u0001���\\u001f7;$��9��\\\\-�;Qx�8�y\\u0014��U�2@\\u0017���VD�\\u0018�\\u0000N�ҷ*��\\u0018��T��T\\u0002\\u0019,l��5\\u0015I��t�\\u0002\\tI\\u0003Mu��z�$�ߋ\\u000b�o\\n\\t�HPr\\\\\\\"\\u000b\\u001b�r ��+WRU���A�r��%�'q\\u001c���ʟ�������\\u0006_V�\\\\\\\"��k��i�\\u0000\\u001f�!���\\bb\\u0006�ֻ�?r��\\\\\\\"�I\\u001bM��T��_�\\u001a��\\u0007���`\\u0004\\u0005�\\u0004��\\u001d�H#�Ȑ��ok�\\u0011]�q��|9g�u�#\\u001b2�7�k�\\u0011�Vb˥ɡ\\br1�=&����X�Ru���ޗ�J�\\u0002��d�sɮ�\\u000fKt�8Z�sՍNP֥�\\u0002%!��!�\\u0003j����PE3\\u0015cŹY�'n��#j�!��X�\\n��\\\\\\\"�f�)���c����%\\u0014�ˍ\\u0015�\\u001b;;M!��ͽ:�ˍ`rRP\\u001e#u�\\u0000���\\u00072�k\\\\�\\u0000��]��c�U�\\u0010w/z,�\\u000f6e�){__��{B�A��{��\\u0010m�y��r�\\u0019�\\u0002F_R�\\nߡ�E�i�\\u0010� \\u000f�q\\b��S�p\\u0011K�|�\\u001c�V%b����6���\\u0012\\u0000�i\\u00124-��C\\u0016a�v4�8\\bEf��a?�d`�f�PF��m��V\\f��L����4�Ҧ�o�mK�\\u00100P\\t���v\\\\\\\"��\\u0000\\u001a�\\u001f�~�\\u0011\\n'�39 \\u001d��+6�tK��[*\\t\\\\\\\"�E��K��d�z�\\u001c��PV7���h\\u000e�u����WOR�\\u0014n.v��\\u0000\\n\\u0013\\u000b\\u00112˙_�\\u000b|��Q�ֻ�u�v�>��¢��R^ާ�Yr�\\u0004rHHqˉ\\u0000i��\\u0014\\u001b2\\r��;Q��M Հb\\u0018\\u0012�5\\u001cW�ʂ�\\u0019\\u0015�E{k`���T��&1P�]O���\\u001a�'�\\u0016���\\u000e�Q\\u0011\\u0004�\\u0013+��?B���\\u000e�\\u000fƅ�ZX��\\u0018��'�8��\\u0000w�c0V����׺@�#��H��i�⽓��\\f2\\u0015ebG^Z\\u001a+�d4x�,z0@\\u000f��h�2��ف\\u0015i�G)��\\u001d��Q�I\\u0000\\u001f\\u000f�c\\u001eT��\\u0000\\nN��=�E9�TX\\u0000\\u000f�\\u0005.��*/�\\u0015\\r���IF�y� �\\u0000V�\\u0000�b���\\u000fƛHѼf9\\u0000*��\\u000fPt5��L�a���.����\\u0014�\\u001dɌ#5����֩I;H�\\u0005�3ȑ��fS�B�\\u0005\\u0016�\\u0007k\\u001d<�\\n���\\u0006޷�\\u0000�j{�lF�ֳ��i����\\u0000�\\u001c��\\u0003_�\\u000b\\u0004�����$��N +6c3\\u0000�܀E��c�B�F��;\\u0001�M\\\\\\\"[\\u0011M�qd�nB��\\u0011���X*�\\u001a\\u001b�|\\u0005��\\u0001\\u0016\\\\\\\"��\\rR8#��\\u0001\\u0001�\\u0017҆�3�^2���>�)f(����\\rd\\u0005��j\\\\'s>���\\u0012���\\u000b�l�X-���x�[�c��<v����Ұ{^��h��\\u0016P�\\u0002�\\u0017��D<�K�J�\\u0012LV��O;\\u000bǢ.�����V�dV\\u0004���ín��{p_�R6���MMUvP[lo+`�A\\u001c!X\\\\r��\\u001d\\r(� �]>���(r���^+�\\t�\\u0015���<��E\\u001e�]�\\u0019۲�+�9��X���]\\u0017��a�\\f�,i!\\u000e�,���>4ӻ``Ʌ9lx�G\\u001b�2�R\\b\\u0004�\\u0015�i\\u0004�NV[�9;'A��s����6\\u0015�\\u001fI=mK�Y���k�I�\\u0011hy��jm��\\u0015�R�\\u001eP�#�\\u0000�\\u0000�%���vx�bX�:�k���ȒE�y\\u0000�\\u001eF�j��\\u001c��D��Nd��w\\\\\\\"� �n�t\\u0015�:dG\\f� (x���e�64�\\t��ʰQv\\u0000�H�V�\\u0012�.Ӈ39\\u0000�ϓ\\u0019�H\\u0002��\\u0000iYC�\\u001f��(̷Ȗg�emH!/��6\\u001f\\u001a`ؘ�x��נl(�&J�� ^�f,pdb�Y��'��\\u0011��\\u0000�z\\u0010�E��hɈ�\\u000f\\u0013U�\\u0001x�Jq�Sq�i�Z<k\\u000b����\\u0000.\\u000fƹ���\\u0012�W!�����\\u0019�r9G��m�cj�F�L\\r{���>Z�I�ʖ4��s��\\n�z���S�]�h�9<ǐ���\\r�蟓\\u0012��_�\\u0003�G\\u001b\\u0005>uX\\u0003K'\\u001eDX_}�m�D�\\u00112�ɾ�h���\\u001bW�l/���ՙI�m�X\\t�����\\u0007Ժ�+4w�A���e\\u001euF��FbkLeRǐ��\\u001f\\n�gY�q��&�O�[\\u0016#�\\u001bR\\f��\\u000e|m\\t�ǓW\\u001a�ѭ�%Ȕ\\u0012�#����\\u000fNq\\u0002J\\u001c��Yp�\\u0018�\\u0006�H\\u0007���̃�6b?��\\u0000�W3\\u000en^:p�R�M�-�V|�����Y��\\u000e�uG\\u001c�!�L�5�����Q�&4���P5�\\u0004g�\\u0003q3\\u000f��8ƒI1�gbŔ\\u0012I�D\\u000eN��d�C\\u0006 H�k\\u001d.>t�+\\u001e\\u0018�u�,X�m��++��\\u0015RoBY\\u0013��H\\u0002�Q�@�ʳU��դ�L���׿�\\u0015Xˌ��&$y\\nq�\\t\\u000e�PBcu'����\\\\\\\"���\\u00076H\\u0003%��rT���c�F�A$x�����\\u0013l#\\f�&>dok�ڟ\\u0006�&�\\u0003\\rA��n��>�_)\\u001f8����4��]�\\u001c���1^5�]� \\u0010\\u000fƷ�\\\\?�1\\f�\\u0014\\u000fr\\u000e�@k�˒9�N*\\u0002\\u0012y\\u001b\\u000b�k~458\\u0004�'\\u00013���\\u0018\\u001eF�\\u0003�F�l�iO!�ؔ?\\r�0��\\u0014i�\\u0011UP}��\\u0000�&��U�Tn2;]�$�\\u0019��\\r+��⹓*�z���\\u0000���G:�����X<�#�\\u001d�9ݪ�\\u000b�p�X\\u000b)\\u001aPrqf�.N��\\u0000�����Cx\\u0000L�\\u001c��=#{\\rkd)#F[�v^],/�\\u001d!��\\u0005�4:oK�\\u0000�\\u0006שH|�{�d��g��H�\\u000f!\\u001e�R}V�U$�c��b1��6\\u0001��ȷʗ\\u000e�#���\\u0016�b�o��\\u00193\\bL\\u0001��w[\\n\\u001a�r܎TB��\\u0013�\\u000b�Z�����ӥ\\r�5xY�sT)4���(X\\rȭ�]��H,̃PX\\u0003o�o��\\u0000��\\u0000�h�N�\\t�9���!\\u0001W���\\u001fd��4!6�\\u0011�\\f�3#\\n�\\u0016�\\u001b-�?�y\\u001cs,B�8��\\u0014Wuv+\\u001a>�\\u001f_���P+\\u0000I��v��+j��Kil\\u00054^�\\u0001�\\u001bx�\\u001d�UR�8�7��\\u0011��\\u0012y[Z\\u000e63!����Jo�\\tDz��<�v�g\\u001aN%������Z\\u0003\\u001c3*1R,,A�\\u0000\\u001a\\u0012xr\\\\\\\"vNd�]X�z/\\u00118\\u0015\\u0001��/rI��\\u001c��g�pLq2�\\u0011��X��ܣ�hM�E��]��S~��*�����\\u0000iC�|D\\u001d�^.jc,o��m:|��E�7�ܒ4\\u001fSo֖���M��\\u0013Xϒr'`ޕM\\u0015\\u0013]j����ۏ\\f@!UVn\\u0000��\\u0016\\nzQ]�-�g�6��q����w޼�\\u0005h�\\r�N�D\\u0011U,�)�f`�ea���&�\\u001aː�G3���c\\b��|kw���E�jkT��\\u001c\\u0015�\\\\\\\"\\br\\u0006@\\u0007�ލ|�|\\tcB\\u0003z��_\\u001a\\u0007�a��\\u001a�\\u0010\\u0017M<I�D�\\u0018�{z!��\\u0014�yU7\\u0001T�\\r�\\u001a3+{�\\u0000u����c��4en\\r�\\u001b^ԲiP=��^B��m�\\u0003֓d��S�\\u0013�$�c�J�p\\u0012W�\\u0006Q{����������a�y�'�\\u0018\\u00131�'f�\\u0014L�\\u0000��Q�\\u0018t�^\\u0007k)���!��#\\u001c� a{�#ʈl�*�q��h�s\\b����좿o�c�w\\f��_{ۍYMʐn\\u0005�$t����&�\\u001e���T�ζ~?O!��t�|�1\\u001e0\\u001bٹ�ر\\u0016��������&01���~Lt!���\\n�b�d-��^�u����W1��d��ܗ0�+��\\u001f�׸?\\n�'4~�P�VR��$XP\\u0013G\\u00130\\b�l.t��\\u0000�t�kϒ����Bb�\\\\\\\"�Z�@\\f�Њ�PK��\\n4\\u0016�^%Au\\u0003��\\u000b=�4�QC�\\u0006*�Þ�6�\\u0007�8�\\u0014x�ǭ��3rq~��E�q&�&e �\\\\\\\"�a���\\\\\\\"�\\tN沩\\u0011\\u0011��a�㩊^V����\\u0011â\\u001b��\\\\H\\u0017qqI�Q�\\u001eg*J�����\\u0000ǟi�G�O!��/as�����\\u001f�\\u0011\\u0001\\\\\\\"�q�B��1�\\u0002�a�;02!T\\u001b�O\\\\\\\"\\\\\\\"�\\u0013���a����r'�E�+�׉;\\\\\\\\yQ��\\u00131\\n��[\\u0003K���[1���G���)�n\\\\j/�V�m�L{�G*!cf��o֖\\br\\u0016E<\\t\\u0003B.)Į#��\\u0017��\\u0004�P����\\u000b�I�K\\u0007��8S\\u001c�B�����1$l�$1����E���ٙ���.�\\u0016\\u0012D�\\u0019ʨV���f�p��Y5���Ȍ/�_�ܛ:P�Gp�\\u0013c~���O�\\\\\\\"l@�#��}mpG\\u001bm\\\\�^\\u0012F�a�iV�jZC�)/2$��.���z��H�\\u0006��PzUB\\u0018�2\\u0011�\\u001d��y��s��\\u0004\\u0002��x�>�u����J\\tq��\\tQ򠻦\\u0019�!�h���<>�>\\u0018e�+\\u00067�_C�r���@\\t\\u0011\\u0001\\u001dE�\\u0000�W\\u0017-�%p�ؕ��0C\\u001fS��/\\u001f�9)�l���w�����D,.-���\\\\\\\"��$�\\u001dE��T��\\r��]y8g\\u001e����$\\u0016P.N��ʔ�}��P~��We��~�³��\\u0015\\\\�\\u000f7)�r[\\u001f\\\\\\\"\\u0017ISpl/�<�lN�r%�H*���\\u000b��ς\\u0019f<��^\\f�\\u0000��؟?\\u001a�\\u0012����\\u0015��Z�֯�l���\\u001e�0�\\u00130��b@*A+�>W�\\t��ίpF����ð��$��a@�irHd�*�\\u0000�F�\\\\\\\"*�\\u001b\\u001d�\\u000e��t��Y��tL9\\u0019�\\b\\u0019*�n�����_�q�l\\u0006՟l�\\u0018�\\u0010M\\nM\\u0014�+\\u0007\\u0000��\\t����*�B%\\fB��\\u0005��Qt���)FK/�/��\\u0001�`Ei7q�v\\u0007��\\u0016 ГC�6�=�\\u001f^�«���y�����*\\u0018չ\\u0013Ҽ^͑����\\u0014?���\\u0000*\\u000e\\u001b\\u0019E�\\r4�!�^6�����\\u0016P<��;�<o#pd��!$��Ն,g\\u0014z[�{�jx��\\u0019#�'\\r.�G���R~�$P����tޒ%�Ly���@ �qV�ʊnv~E����ō�\\u0018��\\u001e5p�YG��%l>\\u0019\\u0013\\u0015S�H\\u0018\\u0001���\\u0006f 0���X�_y#��r\\r�t���/\\\\\\\"L�\\u000b=�\\u001a\\u0005\\u001d\\u0005&�\\u001c��\\u0003M�ٺj\\b7��|k|LY�1�\\u000e���i�l_�[���\\f�؛5�*-v�\\u001a%�\\u00079�((W���M\\r��<\\r��:���nQ����I����g���\\\\�5T�)�\\u0003�d;\\u0003\\u0016\\u0001��\\u0014�\\u001d�����,�\\u0007�\\u001a�'��1C,����\\u0001�\\rm\\u0000\\u000e���bw;�=\\u000594\\u0019\\b�7��^t67�\\u001eQ�\\u0014\\u0011+^�X��z1\\u001aǃ��O�e�m�O��k\\u0019@�ZM� �b�\\\\\\\"�\\u0000Q���\\u001frl|�X\\u0010��[O�2��R\\u0001��^~�\\u001c�X��Ru�\\u001c+��\\u001al\\u0003�d42�Ş6�����E��L�8s%�N\\f\\u000f�X\\u0003��\\u0016)�\\n�}l\\u001dN�1N]N%�n䀯o��*�)�rz\\u001c�A$,���soI҉��D�{�`�\\u0000���3�μ�-\\u000e�:\\u0014����c�\\n���\\thE�\\u001d[X+$��R\\rΔR�l\\r�6��q�\\u0000\\u001a��8��\\u0012��ç�Z�!���\\u0000�d�yx\\u000f�>�m��[\\u001aH�r�4#��81�-��@\\u0001g\\u0004\\\\\\u0011�hi$ʙe2��BX\\u0012\\u0006��IQ�\\u0001�o�S1U'\\u0011��\\u000b�֌�<`i�\\\\\\\"�\\u001d���A��3����\\fGۭ1v\\u0016\\u0002��g\\u001b2|P�+Y�M�����f��%\\u001f\\u0005�u���\\u001a\\u0003�If\\u0002����Y�\\t�o�.���\\b܌pߛS�\\u000b,,�;�&p\\u0018�ǧʲy~!�%�J�ޠ���@\\u0000�Jb\\u001a~\\u001cZ#�� W���,�\\u0017�\\u001f�FH�)�Ԁ�\\u000e�Q�C�k\\u000e\\u0011��V�bgĝn�,7��g\\u0012\\t\\u001b�`�$�����8:5��jF��v[�65,ҩh0���Gi�d\\u0000\\r\\b�\\u0016�(Xܣ�F�!Џ\\u0011WBe�FȞF���\\r�k��\\u0017�b\\u0004\\u0003qmi'.\\u000bu�\\u0016֨{��!\\u0011�$�\\\\\\\"��,,�ʜ�'��ݺL��5����\\u0012�i\\\\Q��\\\\�\\u001bU��96��\\u0003\\u0003f1\\u0013g \\u0012>4�?\\\\\\\" \\u0002��G�)\\u0016a�\\u0006��U`�Ɗ\\u000e�a�ʤӆK��t�u?:�[.\\u0011oE,^�\\f\\u001b�:���X��.j�F\\r�\\u000e*ڶ�CU�\\u000b��XW��o\\u0011N\\u0005&1�cđ\\u000b�\\n��\\f8��0b�眇�4��`��ǎY�K�H&�\\u0000\\u000bR�O\\rIUv�j�X��`䝴\\u0004Z�L�U8}J<|(� ���΋ρe\\u0000�.�4�\\u000e�^�\\u0006��a\\u0003�9l.|��\\u0005���`+nՑ�9�C�G �\\u001b\\n׶�\\u0012��Y\\b���Ɛg����\\u0015նӭ\\u0015��4\\u0015�nv��\\u001a���\\u0005Qv>B�|ܗʜ�IU�@�jU3ʊ�d6#S~�off���<��-|*�\\u000e�lD\\u0004J\\u0007 n��׹�C*\\u0010���㠪�>���\\u0000�s�U>U�k\\u0015�e��\\u001a�|*gh\\t�_�\\u0019���\\u001c�Aԑ{\\u001f\\u0011L\\u001f�᩿�\\u0005�X�\\f~RG#�؀w*w։��L�n\\\\\\r��K�z䭆��Lh_��\\u0002��H���M\\u000f�\\u000e�6?�Ӏְ���K#\\u001c��\\u0017�F�\\u0000\\u0012j�\\u0012�w����\\u001cV�J���c�ԗ\\r��S\\\\.��Lw��Ru�^�^���V���ۥ\\u001f�4\\u0007/\\u0017�>�2��\\u0000��C|�Rs�b\\u000e��ݵ1Xz�b,#�@'̶���+M#5�+�Tt�5�Ō㼑�p\\u0001$Zֵs��rۉ��𡶲\\u0010�\\u0019����\\u001f\\u0015[���x\\u001a�l��t�y~�8��S�ko�\\u0004��A�u�$��\\u0011b,A\\u0002��ԯ�\\nF��g_r�\\u001e\\u0006�~�\\u000bc�\\u000f������?\\fq�\\u001eGa�l�\\u0002\\u0002�\\n���A\\u0011�7��\\u0007�\\u0011K�:�r\\u0000��mF��0� ��0����$(OE\\u0014\\u001c�k\\\\\\\"�\\u0005�\\\\��:\\u0012���׺d��\\u0001Q�SD\\u0007s\\u001a_&\\u001eY]\\u0010�\\u001b�(��ix��{֙3�:\\u0018�]ŽV�i��aj4��x\\u0002\\u0018�ҫ�8��<H��pb���m�\\u001cu\\u0017Rm�\\u0016�0�\\u001d��\\u001bէ��q�\\u001c�_^V�բX~��ջ�my-\\u0014��>�\\u0001��h,��yL�Xh\\u0007�\\u0014��C\\u0017\\u0019\\u0012^l�\\t\\u0016���M5��#��¡�\\f�eE>1����\\n�\\u0019'�\\u001f���\\u0000�w\\u0015�0��\\u0016�Dk��{8b��c#e$��z\\\\�\\u000e1�\\\\\\\"�\\u0012[':sylb�N��ŏ�\\u000b�\\u0018���Ck\\\\\\u001b��0�\\u001fs�Z���\\u0013!$-Ȃ\\u0000\\u0016�\\u001c��4'�P�c�z�m��\\u0014�f�\\b�C\\u00186�XR�$Y\\u001f��\\u0001��4�V�-�����\\u0000s\\u001d�0��}��䀬�IV�Ԣm2$�\\u0000[~4f\\u001c��,nm�+�\\u0015\\u000fG\\r\\u001d��Cz:NӖ�\\u0012x�Q{��K\\u000f�/��;��İH��P���h>\\u0014�bF�\\\\\\\"� �Y��֩��\\fP�8�X��bg�<�c\\f�r�:���ʷI�1�=77\\u001eT�h\\r8��/�&,�\\u0013��t�\\u0015Fȏ��C�EeeE3F\\u001a��\\u000f����&��j\\u0014@���rM�\\n�һ�\\u001e�.`w!�I#ʱ�\\u001b%O\\\\\\\"�E���-�F\\u000f��⃹\\f�SY~W:hi�y\\u0015A���\\t�7���\\u0015\\u0005��#��9DF�\\u0013�-�򧝉��|�\\u0000\\u0007�죩�V]ѕ2����\\\\\\\"���|���\\nN˕\\u0014m)�\\u000f���\\rͅ�~$�\\u001c��ۗ_�t\\u0019y!1f\\u000et(@a�,(>ڈ1�n+�������Ӓl�\\u000e���\\u0017���\\u0003V\\u001aW#ݻ��^FL�ds�F�趮�@/rt�3�p�x����i��KK/�<YE����^\\r��Eo'�ٚ����\\u001c�ѱG\\u001b0�Z\\\\�@���S���Yq�ѿ*q��/#�>ߕ��\\u0000�x�\\u0000l�tP|�5o�9\\u0013��L�Ru )<O�J{��Ǉ\\bU\\n\\u0004jl�ہz���\\u001b�TnO�5�Frr\\u0019���[$\\r(�2�\\f\\u0001\\u001dmX+x�gݳ1���h�:F\\n����?:\\u001d揃\\b���³�y��%!�h�t\\u0004�@��^^4�<i���]�6�M��bHg\\u001ev\\u0015�@�\\b\\u0016\\u0000�#\\u0018�p\\u0016\\u0004|\\u0005.P���[>{\\u001e+�\\u0004H\\u0019F�\\u0000A�U��\\u0003\\u0012N:܋�k��2�$��u\\u000b�\\u0013��|�-\\u0014�0�;}�r�\\u001a�C�����S�v�f�\\u0013 T\\u0016S�7��E\\u000f#\\u0006�)�\\u001eTf �/\\u0015>�\\u001d:P�\\u001bA�ؑ�8y9�¢��\\u001a3\\u0012\\r��Rt7 \\u001d�ƘG(�\\u0003����[մ�'C���� ����8\\u0011rv7�q'�ɋ�\\\\\\\"5����\\u0000\\u001aO����Q`���p�����k_��F\\u0002|�s�2`��*���e'�~��P�\\u0013�\\u001a\\u0013e�a�}�k<�H\\u001eğI���+����4�y\\u0013�`\\r(�\\u0000�\\u0014��\\u0006�uc���R�\\\\h���C� �V\\u0019r:I�b��\\r�:.1�u��#��\\u000e.O���\\u0012��m�\\u001f�\\u0007��\\u0016�\\u001a�m5ڐ��\\\\\\\"�ҷ�i� '�\\u001b�Tּ>c���\\u001a�6Sec�\\u0014)\\u000e�\\u0015T�c`�oL��\\u0015�h\\b���\\u001f�&\\u0002��H.N�k��S\\u0014�������\\\\�\\u000bmYˋ�\\u0019[�q�\\\\\\u0010ma]c��\\u0017k�xVI�\\f��6&׸\\\\\\\"ƭ�'�\\\\��.\\u0016A\\u0012,l@M��_&�C\\u0011�mj��r\\u0018+\\u00104�\\u0013�^�K#MŘ��Л�\\u0003/ܤi2���\\u000b|+<al��\\u0000�ү���O��\\u0000\\u001a�I�S'D\\u001fy��̿�\\u000e�Ѱa�\\u001a��x�R\\u000f��\\u0000�?�\\u0011����q��(�K��tU]�e���\\u0003��4�*�RI`\\u0018�(�T\\u00199�\\u0013�0\\u000el\\u0013�dq_U\\u0006ܮ9\\u0013�;�1�\\u0014�9\\u0004�܎��9�\\u0015�\\u001eEU��\\u000e�32��1rJ\\u001f��YŹz\\u0014k۱}���2p�ӹ�\\u001a{ A�B\\u000e���A��m\\f����_�\\u0017\\u001e\\\\w{H�\\u0001QŴSq~V��^���lڔMK�L��\\u001cIxܖ�m�����fcr/�x2�f����\\ro{������ːbAx��q����Zus���̑uT�\\u001ep�J�Fn�r{��Y��:��\\u001b|�il���H\\u000eB�.��(\\u000f�\\u001b\\u000f��M�\\u0006^(uA\\u001c���t_��h�%�?��O�4�%opF��}�ع�F�!�O�\\u001f���^,#$� ��aC���[Aq��\\u0014�J\\u0016\\u0006��d\\u0012�ɿ\\u0013f \\u000f����\\u0004�#\\u0015}A��\\u000f\\u0002����\\u001aۭ<�̄a/�tQ�|\\r�/a�4�\\u0018c����c@.Y��3N͆�B�z��U�\\n��!:\\u000e76�4uA���I�~�'Yj@�|�֒7n��+\\u0017�¸n?\\u0011K�v��c�%x�8*�Ar\\b��7�\\u0015�ن�?�qfU\\u0002��Ɯ��Q<�K\\f�΅T���V�qYT�#���VQ��S�σ�<\\u0012dN\\u0007\\u0004b\\r��\\u001au͠϶��_$�0-f|u\\u000b\\u0018\\u001cN��oDv��:JU\\bGqk����ճ�\\u0018�\\u000b/A@@Bd+\\u000e��*�0`����}�\\u001b6\\u0014�Y�bGԼP|-j���1x�\\u0000fGI\\u0006�Z�/砥}�2Ub.B�ں|9RA>�^���]Y�i��FIr���sfBU��4��h��8�\\f��#Pnh�\\u0010{�\\t�P��\\u001b�=\\u0005m>\\u0018����vj�\\u001eFG%t$Z���i\\u0007\\u0006n|hm�\\u0018\\u0005�\\b�����1�R\\u0014\\u0012�([����W1D����E�i���M�\\u0001\\u000bqT���]\\u001b��64/\\u0016��ޫ��t�iXzV˽�SI�����\\fA��<�ӓÁZ\\u0016Pd�j��v���\\u0014\\u0012\\\\\\\"+�]\\b�Z��\\u0013\\u001c\\u0019]ۗ>\\u0001A���\\n�6Edf\\u0005Jذ?mMg��-8*�p�R{��\\u0010\\u0015WB��!�n\\u000f�\\u000f���\\u0014nox�&\\u0003��� �do��jV��8Q֩\\u0013��4q��KY�Ҿ?\\n�&X�E�$�ߗM��{�2�DM�:?Qo\\n�\\u0005v<��1ܓ�\\u001c�`�`�74�_�5�=-T�!&R�\\u0010�Vo�F!�rG\\u0007����]�\\u0004�dK��%6�5�'\\u0003�ކ�\\u0000�Ch�r\\u000bX�X��p�I\\u001f\\u001fݑ��.#\\u001b���AdaF�1\\u0019�)\\u0000_��tP͌�쫂�6\\u0006��JvzB��3���݋\\u0012&\\u0000�X꧑�U N*=(,\\u0005>��#RHRnmo*BX4�0\\u000b;l�.jSr�l4��\\u0011�M���_j�3��Aǀ���*�8��\\u0018���1��,��V\\u0017 ڴ�زA�4R���}_o�Rԧ�VD\\u0018�zT�o�����/��cV��6\\ft\\u0011���5�\\\\\\u0010¯\\u0012��\\\\\\u0017m�\\u0015D�@\\u0016w�4���񦃳�m��7؋X�)/l�'��b$��װ\\\\\\\"�@D���0�.Am\\u0001�\\u0000(\\u0015.J@�\\u0015\\u0016WFc`�U�\\u001f�AfO\\u000e)���^��񢲥��Y�\\t>u�dE\\\\\\\"e8�Z��'{�&�Q`u����D>�\\\\\\\"7\\u0017�Zw��{���fU>\\u0001\\u0017o\\u001a�{ionPw�\\u0007�L�X� s��R\\u0001�s�˞$\\u0013��\\\\\\\"��e]m��R���(���.(1��XP�XW~R8�\\u0005�x|i64�-Y�-Fα�J\\u001d�h\\u001ch_#8G��\\u000f�V;\\u0005\\u0003�g~N8��]x��\\u0015����\\u0019�(�Pmr@\\u0007�z�4R\\u0007oQ���G���{gq��bs\\u000f\\u0012i\\u001b�k��xP\\u0013H�\\u0000��\\u0012��Ce\\u001b�zU�J�%q��\\u001a8���y�چ\\nX��Lf�\\u0010\\u0017��\\u0011'���\\u0006�kz\\u0019a���k��N�RM��H]4���l\\t�W�F`9����ė����\\rx�lE�X�&�\\u0001�����Ș*,k˭�+�؉\\u000b�I*�\\u001fl��H\\u001e\\u0014��\\u0007�k\\u001b�wڪ���#�É����y��Ɖ\\u001e�k陖�\\u0001�\\t\\u000e\\u001b�a����\\u0001V�z1���&+��b�q7;�6��L�*�%��\\u0001���a4��A!��7��\\u000bH\\u000e�\\u0010�\\r�������*4bu�3\\u0012h2`��c�$���\\u001b��+T�\\rk\\u0000_�3N�\\u0019lU��հP�Ӡ�r��|���,�7 �T�֋�\\r^�w\\u0011��u4;`���&\\u0015��R�Q�����O�p�����\\u0001zׄp\\u0016�F���Gv�#Ld�����:�\\u0013\\u001bG���8&T�\\u0006�؊�����Y%nhlM�/ᥫ�X˩p,\\u0007O\\n��;K�3\\u0002�}�\\u001b\\n\\u0017]~�5��\\r�\\u00182dRH뿝k\\u001f9��\\u0016n�ށ� 0�ro�;�l$\\u0011�x�\\n�yI���~��Y\\r�>;U\\u0012\\fǌ��Dkq{u\\u001b�\\u0013�I\\u0007��F3\\u0016�\\u0001�\\u000f�ˍ��cEe�6�`\\u0018vlP.\\u0019�~\\u001fʁ��lV\\u001a�F�\\u0013��\\r8��Y\\\\\\\"2�������\\u0010���,��E�&�\\u0003��\\rE}����=�+��V\\u0001V�����´�\\u001d���iZW�a�\\u0010OĎ;Q�d.\\u0016VL0�Y%X�\\u0000,�܁4rG\\u001cy��ޢ�{e��gnL~���j�ഔ\\u001c\\\\����戃\\u0002%P�\\n��kҙwXq���8�Z�8�k��ߒaⓧ�\\u0007��\\\\|/M�\\u001e'r^\\u001f�k��bvW���qa��C'�\\u0014���u����\\f\\u0019�\\u0014\\\\J�A\\u0000\\u001f���,fI��f�\\u0017���E\\u001c�-XM-L���$�\\u000e\\u001f���\\u000b\\u001bu\\\\\\\"�����w�\\u001aN\\u000f �Ā�\\u0000��\\nm7rlD�d�P-}l��5.�Xb\\u0014���)\\u0005ч�\\u001biZ�\\f2o��進e�\\u001f\\u001c�pF�\\u0015��\\r��q����Y���\\u0000em�k��\\u0016����($9\\u0004���G�M�L�\\u001c\\u001f�I!1��\\u001aP�!L�ܙ2,�^�I\\u0015�L��ɭ&+��4\\u0004\\u0017o����{��\\r��],7�Z\\fw�U�퇈\\u0003j�����w$��jR�M�9��\\u0002����\\u001b\\r�A�*72N�F�5\\u0016v����\\u0007I\\u0000[�&á�d�hܪ\\r\\u0006��L�77\\u0005L���ҷ�\\u0016�~�f\\u0016��m��\\\\\\\"5��q���\\u000e<�\\u001d����/�\\u0015\\u001c/3Y\\u0014��\\u0012\\u0001 |kׁ�P�\\u0006�\\u0003�i�>v>>4J�߈�Q֚�*H,�*��\\u0012�\\rQ1CJ��W�\\u0005��z�^�\\u001c��*\\u0015Mn\\u0018�;\\u0011j�&�<�YϤ:�|�NJj��g�X�r��D\\u001a�ƾcM�\\u0019\\u000b[�ď:y�d���@XԂֹ�t\\u0006�N��5�ˏM���r��3�1�\\u0014�=cR4\\u001f:��\\b�Q�Z\\u001b\\u001c5�\\u000e����kh%(�}\\u0003`�,�{�e:��\\u0011\\u0017e�Y=�\\fO]o�\\u000f�\\u0003H�.@\\u001fΟv���D�:���5\\r6�\\u0012��)�nU̎\\u0005<RPY�:�\\u000b�����nbc��,���o�L;�x=�\\u0016WK�%@�}�\\u0000�.��Kݐ�\\u0014-� mUX�����u�\\u000f��s\\u001eÑ�Z\\f6�\\u0018��w���a��}���S��o��D\\u0000�;\\u000b\\u000e#A�h��P��7�+ۉ+n��|h���QU��\\u001bu��HmI��6K�\\u000b�k��)�\\f��s�nj��_[ڣ��\\u0000�@uVm>�^��d�a\\u0011@�6Қ�\\u0014\\u0016\\u0019\\u000f��+�;\\u0002\\t\\u001bxQs�\\u001aF�\\u0001}�il����\\u0013�4�Y\\u0000�:����1�����t\\u001b�AL�f\\u001e<�13F\\u0019�\\u0001$��Qq��D,��>\\u001aP�3\\u0013��3\\u0005�\\b��\\u000b�\\u0015�=����L�J.���!\\u001aRZ־���\\\\\\\"\\u0012B��a���,��\\u0000�;�E��ز�\\u0016\\u0004X�/J�\\u001f\\u0017��if��i[\\u0005W*Lc�s�\\u0002�\\n�5���y�\\u001c)\\u0011Y#\\f�v����\\f�Ut@�\\u000f�C�K@��I\\\\\\\"(u���ƶ\\\\��H\\u0012�H6�\\u0016҅�Vu�H�ҽ���;jA�1��U:r5�a��\\u0007C���u\\u0010����\\\\\\\"Ǡ��\\u0019\\u0018h5��\\r-@�I!~\\u0005F�I\\u001b\\u0011�G�j�A��,��#�\\u001f\\u001a\\u00162\\u001b&9ebR'\\r��E�j##,�;�M��cm���L�G\\u0014ʂDq��\\u001bVF'�k?۵�M�1�hbi\\u000f���i{yי]�x\\u0016�^\\\\nYX\\u000b�:\\u00024��>OB��Ek�\\u0019~\\b䭮O¤��D.ď\\n�\\t9d\\u0015�\\u0000)�Emܰ�S\\u000b#��\\u001b���z����>/��E�c�\\b\\u0018�u�Dݾ%\\u0005�v\\u0017�a��G&(�\\u0016�\\bVD\\u0016�\\u0003Dwh���\\u0002�VE���\\u001ahG�V�{\\u0011c�aň\\u0006��W�܂����\\u001b7n\\u0011����H��\\u0004��C����p���&�p�^\\r�W4r\\u0010\\u0000Sҙ�L!ܚC1)\\u001c{�ܱ�{Ҭ�^S�B��j�}����̘�%�.���4u����=�^����\\u001b��li\\u0007�Y\\u0017�ǉ��)Gqß��A-\\u0011�I\\n��\\u001fκ�9$��Wnj��\\u001aq\\u001a\\u000fH�T��\\u001c��)��\\u0004$\\\\lGZ�I�dC \\u0001��\\u0007���Vo���d*G\\u001dO�l�BQaua�\\u0000k��{\\\\�&\\u0016�@��a�\\u0000\\t�SX;:�L��\\\\��ӝ��3�\\u001c��\\u0016��q�p\\u0006����\\u0000�\\u0012(�\\u001d�\\u0000g.\\u0019��6��\\u0006>nHEԲ^ױ'O:�n�M`҉=JeD�n�\\u001e�E�ZՋw<����\\u0016\\u001a\\u000f�U��C\\\\\\\"\\u0016\\u0003P�u��@����\\u001dM���MiK��rY�77�+'�����Z��1���6��^'o9O�9P��\\rN�Z�$��Ld\\u0016\\u0016慂�\\u0003k����&�Dc�\\u000e��<=�(��\\u001bӽ��\\u0007�� ǉ���F��޴�R�\\n�\\u0010\\f�yEx�hw�\\u0003�׌�\\u001bV�H��u\\u0016�\\u0003k�m\\u0018rA!]t�n\\u001bM�&�vf�!�7j�:\\u00014�ܮ@�a��2{|8�\\u0016\\u0019\\u001b���\\u001d�yW\\u001a8�\\u000bqp]͔\\\\��nج��i+-��a�m�\\u0011�\\n�\\u0011��9>O:1\\u0014�\\\\\\\"��R�\\u0005�(\\u0006Δ[��'���ʈ��\\u0005\\u0001}@�i&nDq�&�,r��\\u0003���J��ph��\\u001a��'ɗ\\u001e9�\\u0010�7\\u0000����_�X�,�R\\u0000\\u0006�\\u000bH;gs���ȓ�\\u0000*E2[�5Ҝ����`r��\\u0003m�ޢ�ۚ$�{�����l\\u0010j�\\u0010A\\u0003��\\u0001?{�Řkh�X�`u��,��ƞ(�/,h��f\\u0000��O<\\u0011�\\u0006F\\u001a\\u0018\\\\\\u0012\\f�yh7\\b�֕�z�d�\\u0005�\\u0000�yd\\b�\\bm\\r�\\u0015��C�ZU<�4��'\\u0018��z�zd��\\u001f�6�#@�Oo�g#�n#�e��Bd\\u0006��\\u000b�Z��!e��\\u000fg\\u0019P\\t�$\\u0016�x��]�'\\u0010�Au\\u001f�M�δ��dba�I\\b�B\\r��Qz\\u0001���FC�/�ޥ:��i�E\\u0000pHκHt�W�,��N�t��d�ߝ�o�[�\\u0013�̭�_S�R�1�\\u0017�4�i�ȳ��d\\u0016\\u0016\\u001eU�n�_���+\\u0010Ӑ�7�c��:(ۂ�|�tsev�l)\\nF��\\u0016��\\u0000\\n�^B\\u0001��\\u0007�~Y�V.�C+\\u001d\\r�Y�D)Kn\\u000e�Gtϗ:T�ŝW�#�O�\\u001d@[����v�/�\\\\\\\"\\u00192dC�\\u001bz,n4ڼH\\u0015��\\u0016���V���\\u001c��9zl\\u0000�oGg��/u�\\u0011s[�\\u001e\\u0007ƶMq�#J}�'5C��؛\\rh���$\\u0003޻\\u001f\\u0011Җ�(�9#c~`��z�b��9\\u0016��t���\\u0003����.��bp�y\\u000f\\u0001{����Ve�p#C��\\u0000mu0c�,mԎ��w\\\\��Ϛ\\u0010�*���)�L\\n��Ip�\\u0017�K.�a�a\\u001a\\f�(\\u001b��[맅-�q*�;xS/�X���:\\u0000����R]+[YV55��b\\u0006�G�:h\\u0005�\\u0000\\n�݋�q��ԯ\\u001dX\\u0013�5�IۿJ���\\r.�S?��5'�w�����N���)�9�I�U[̋�7���b�lH�4R\\u0019\\u0018\\u000egF�W�\\u0018�Ĝ�\\u0002�|h��#^��0�<��w\\u001f�\\u0000��W=h��8�h��)��X�����#M\\fIȒ@U\\u001eZ�W�5�I�ǩ5b\\u0015�~�\\u0004�\\u0001�� ��5#m|�Y�H��]υ��|��Ђt����W\\u0007\\u0015\\u0014��e]�i=\\u0006�#���ʞߩ̀��\\u001a��H�C*�k��I\\u001e\\u0018�L���V��sk���)!ɒ�=Z\\u0005#}�\\u0000�\\u0015��Y�\\\\\\\"#�\\u0012�Q�\\b���\\u0005�<�b��3\\u000b}7\\u0014_�[4Nb �hA�����9�K\\u0012E~2\\\\\\\"���l-��fݦc\\t�\\u0010�,|yU,���)\\u001f�\\u0002cPH��qO��ňf�U�\\u0001�\\fzyy�X�NL�h��UW;\\u00033\\\\�i�\\u001d-�5yH���^\\u0004P����Ă|,)�g��\\u001b���O\\u0011\\u0003V��%�H*��b\\u0010X�j�@\\b;\\u0013֌��u�\\u0007oY\\u001a��ZS;\\u001cuU�{��Nɥ���#�\\u0019c�͇�\\r4?e\\u000f,j�en@�Kp�'/6(\\u0003�Bn@�/�4ȁ�\\u0018s<���jf&Ki\\u0014����t�9�x\\u0003{��<����H��\\u0004n*�z\\f�0�e�1�\\u0016K\\u0004�-`�\\rph��ر�1$ȊI\\f�k\\u0006���\\u001d\\u0000�*��\\u0007��FT�\\u001f\\u001f*;��\\b�\\u0018�\\u001eN�O�U�\\u0012~�ʖ�y̲���3�\\u0000�j�����\\u001d���!@\\u001f\\u000b�k��]�\\u000f\\u00199���(6nV;�\\u0016�uݳ��\\u0000�g6:D}����tЍ8�ιn��|��\\u0014p���Ë\\u001b�[e`��͇\\u001c�gK�nA#A�j�2�\\u001c���:\\u0002I;�^�\\t�3\\u0000TF\\u00072\\u0001:m}+\\b���\\u0000M\\u001b���1k�ZpO��\\f��\\u000bq\\u0016��^�I��y�R(#��B�1�T��(y\\u001e\\u0007nx�H�\\u0000*��m7���\\u0006'�i@ ���\\u0019\\u0015}7�KSY\\u0002� \\u001c�,�����ֹ6�a%�}~GZ\\u0017�\\u0006����\\u0000��tR�=����Xe�.:\\u0007���ѯҜ&B\\b\\u0013��E\\u0016�\\u0004P�0��������\\u001c�\\u0013$,�v�\\u0019rT���B4[jI���O�]c!2��\\u001arU#�a@G��\\u001e\\u0014_�\\u0015@�^V�S\\u0007W�5��+k�`\\u0001?*��S�\\u0000��N\\u0004͑���ǘ��\\u0002@\\u0005X\\r�<�뗒-+)��P\\r{�¤�e:\\u0015���+y��V�&܅��Z-\\u00133z���d�@��$\\u00006\\u001f:k�E�\\u0003?�\\u001dbM)�4�j9\\u001d\\u001c�:�H���J\\u0018\\u0007%�؝\\r���O\\u0012����{�c�\\\\\\\"HB�[�����2\\\\�KIi[�n~��e\\u001a�\\n29�apE��*��!)r���J�\\u001bIh���O�\\u0014#�\\u000bov��\\u0016mʀ�-�ڛߠ�\\u001e\\u000f|rCf\\u0003ֻk]Gc@��.Z\\u0011ˑ�1� \\u0010�����r\\u0014\\u0005\\u001e��i�4��,�\\u001a3N�DM�\\u0010\\u0006���\\u0005霓(6\\u0014��H��/�q��,p$iH\\u0017Ar<k!� 6 [��C:\\u000b$I�ݎ�\\u0000*�ŎHos���\\u001a�0�)��@,�s�Mq��y�\\u0006iUT�>��|*�ݺ\\u0019,��\\u001b>��I�\\u0002�\\\\(1r,����$�����'��\\u001f/�w\\u0012�f��u[(?�Б��!o�h̳\\u0004����\\u0001$\\u001f\\u001d*���Jɍ\\u001bpAw`6�Ё�K���L�Y������\\\\(~�~W�։����Jc���Ǝ\\u0014�Qɏ��0By�E!D�+�UѲ\\u001d=:��0�%���rw�A�)���$\\u000e�\\nr\\r\\u0019�U��=�ظ�$�C\\u0010�\\\\��i#�-)�\\u0014\\u0013e\\u0002܎�+^��d�}G\\u0000G�N�(���h��|d[�_�X�6^\\u001a�\\u0015ǶnWA��1�\\f}��B�nV���4�:Wx�mpt47��\\u0015nRy�U1�v����T����CjZ�o��C�t_���T���o���G ���\\u0012�f�$\\u0004�\\u0018����mu&��\\\\\\\"�B�\\u0017�\\u001e\\u00152�\\u0013\\u00029�\\u0000XYn�����X{vDr���\\u0007��ߥ\\n�>L��4\\u001cE�`=�Hn�\\n�x\\u001d�\\u0001�[~_�D�\\f>�\\u001a+�\\u00041�[t���\\u0003\\u0015%\\\\\\u001b�\\u001d�$�>+��\\u0016c��,���( \\u001d|.jf�b!\\\\\\\"^%� �/@�\\u0015��\\t彍��W���Ð��\\u0011oq�&\\u0017�S��\\u0005U�\\u000e#Ǟ�T1��^7n�\\u0001 \\u001cX�o\\u000f�*�$���mⶦx��<\\t�\\b&6\\u001c�\\u000f�z|��猦(ɦ^9�\\u0006�]�\\u000b��qk�c\\u0000\\u0013��<�Sd�4�JA��l>\\u0014�ُ�\\u001b�\\u001a���G\\u0007Kڦ��\\u001a�\\u000bb�k\\u001f��Ȇ8��6@N���*�\\u001b.�r��\\u0012،cvP\\u0019\\u0001e$yS��� Vo�r4Tr��S���� ƚqxа\\u001e\\u001e5�`� <Ӊ\\u001d\\u000e��ǒQ�R�A�\\u0007��\\u001a�\\\\��^��VW�4f��\\r�xf��䞠����B)Z�\\t�\\fdY\\f�H$��+c�#Ƌ�NQ\\\\\\u000b���&d��@W�Zi�r�KΥ{t��+��i �Ft\\u0015B���\\u0007\\u001ef��81�c�b����h\\u0005�Me�\\u0019P��Z&\\u0017GR\\u000f!�>2�nÖ O4S�Ċ�\\u0000q鱪&\\u001c��@U\\u0004\\u001dO�x�v\\u0016a��Î���Y�Ū[I�h+h\\u0014�`m}���)�^ᨬxC�U�]��F�\\u0014e9*�+�\\u0003B*]�cI��'o�8��#�0��oo*h��\\r����\\u0000�k��$�\\u0014�H%�$i�J�9+<drsq�֩$Ԕ�-U�Tu��4�Lqݙ���\\u0000�56\\u0004�Ɏ̧Qsb<��n#n��V��2d\\u0013$�1D�B��@���\\u001c�g-��pr�{\\u0001�خq��\\t����\\u0000��ʒ\\t\\r�:�/��\\u0017�\\n�\\u0017��N��ƎQ�\\u0013�|g\\u0002|�y�<f�\\\\\\\"����`��6�\\u0014�*8��<E�ЁU�G\\u0018�G \\u001e�}%�kx\\u000b���s�\\u000e�}@�\\u0018�b\\u0014�L\\u000fr�\\f�<\\u0004���]F�:�\\\\\\\"l)�����\\u0018(�����fGj� \\f(\\n\\r\\bmM�&��Y\\u0012�m\\u0002)gy�y�7i\\u0018�|MfĚa��\\f\\n��\\u001a���I�\\u001aD�Ĕ\\u0004\\\\xZ���\\t�mTNho�z\\u001a\\f�S$A���.�/]�xqāc�\\u0005\\u001b�/��\\u001bH\\u0011�����V�^O��}�Ӹ�\\u001d#*\\u0000\\n�M\\u000e���p��\\u0015�4 1#�l\\u0000\\u00153\\u001a\\\\\\\"�g}\\u0004�$��1?:�h�a�>��𣲥Ƙ#BA��m\\r��\\u0013���c\\u001b��\\u0011��֔M�X�-�\\u001a�UXB\\\\\\\"&��׮\\u000b�ž�\\b\\u0007�Ff�\\u001c��g\\u0000���M�V\\u0016'�qY��^@\\u001e?\\u0000zTZ\\u0013li6�8A8�\\r\\u0011�\\u0004����B8����G��\\u001e�:�l��@67�o�b\\u0000)�����\\u0005�ir����|p��c׹\\u001e41ǚ��\\u0010��\\u001e���\\u0003���S~ϋ\\u001c�+�\\u001e�l81�\\r<)�Q\\\\\\\"�\\u0019��'&�\\u0001��޴T\\\\\\\"0��c�O���\\u001fjD\\u001c�y\\u001b�,:P=Ӷ`Ë&L\\r��A�7]M��)OT<�\\u0018��w^$��Ɓ�\\u001c��Y�\\u000b���<�\\\\Q\\u0018���s֮�\\u001f���)�@�L2���EC\\u0018\\u001c5��1�(��agan^U�b�O��\\u0002�\\u0000mq�\\u0001�&�Ó��� 6�\\r/�<h��\\u0011\\u0019\\r�g��{�˚\\u001e��\\u0019\\u0019rN��\\nTq�r<�^&l��YS����^�N\\u0016k����\\u0019e6F\\u0003POO�+YWՍ'o`�I��y\\u001d\\u000e�yV�\\u00191�\\u001bRK_:�-\\u0000�ʣ�Ŭ(c��T0����j�njEjÀ!�,NL'C���o��0H�Zņ��\\u000eٳ\\u00178��Fl���]�������&LH�nL�\\t��M�\\td�2b�W$j\\b��RLV�\\u0014H,�Ð:�cܻv,�\\u001a�*\\u0002P��s�m�r9\\u00130�q�t'���#j\\u000bG��-�������])q�X���ͨ�4�\\u001d�FR.G])��\\u0006�R\\u0017s�U�W]?/QB\\\\\\\"�\\u001b\\\\�\\u0000w񭓒�I���\\u0012��H[A^{�!h\\u0017E��p�\\u0018�����f6��u�\\u0019\\u0018:��\\u001a�5*\\u0001���<�h��X�\\u0016\\u001aQ]����d#��X��h�ދ\\u0004J�����k�zW�X� �2Z�\\u0002\\u0007�j�i��\\n�g����\\\\�e\\u000b�k{\\u001bܟ�(�U�\\u0013�޵\\u0018�9�s��k�Q�^͌ѿ(�4�6�\\u0003SB��K��m\\u0006\\u0005�b�\\\\\\\"��:Z�uau\\u0016\\u0007�Z��\\u0011�\\u0004����J�HlK4\\u00134�೯@N��Z��e2�!Q\\u001b{��B��ev�\\\\\\\"dI\\u0013�:2���N���p� x��\\\\\\\"���\\u001b���䊦�E���e�\\u001c)\\u001b�\\u0013\\u0018��[mD�w<x\\f�ߒ=ɵ�&����ۤ��9W��Dx{d*ho�\\u0003ZO\\u00141,(8���H\\u00175���s�Ef�c\\u0002��-��*�1�|�kU�#�\\u001a��tWp�\\u0018âX����y�!��#��X�\\\\\\\" rI�.\\u0005·J�����\\u0016�t=oE$��r��t\\u0007�2l�w��P�1\\u0016$���@A��N/�ld���T�O2f������Fv��\\u0010r�E\\u001c@$i�2�\\u000b\\u001d��\\n\\u0010\\u0006��\\u001d\\u0007�s�q��Oq\\u00020$Y@\\u0000[���\\u0000\\u0012U�dį/C����c�ZGP-��\\u0004��+��V�ɒu {�X��w��xp�F�F\\u0011�5PM���y�{_oȌF�6��>�M(IN��f\\\\\\\"O�ǈ\\u0003s�܍�E#�e`~��+\\u0016L<��]x�ї�\\u0015�걢�Rcb��\\u0005���ʅ\\u0019�\\u0003\\u000b\\u001d�0-ŭ��\\u0000U\\\\\\\",�BJ�'Ԧ���ג%���\\u001e4\\u0004�=����Ғ�\\u00002���;�kf\\u0016����\\t\\u0011�R|�\\u0005&Ø6T+~A�A\\u0007^����,?�\\u0000w����U6�b&A\\u001f8�̓#'�\\u001fC\\u0000\\u0002�;[Ι��J�h\\u000e�\\u0018o�WC��\\u0000k���f�A����\\u000b!?�]����0������ܣ\\u0003����m�\\u001b��Jd�%�&�FG-.N�\\u0000�jd��n8\\u000bmp(|l�8�uP,\\u000f�Z|k�J܁C\\u0015~`�k|l�1�3\\u0000\\u001d�����\\u0019t\\u001f�\\u0017���z�\\u0015n�ڽ�iZEQ4k}:[R4�U-\\u0010�)��|�gE\\u0017�/X���\\u0001�\\\\�A�_:a��\\u0019�W\\u001a��\\u0013�C�\\u0019\\u0000��|�T\\\\\\\"�2Ŏw�ŉ�\\f�a�q�1�q\\u001f*�>�\\t��Xkm-XO\\u0012F�\\u0000|)6\\n�\\u0003 \\u001d�\\u0001��Z�l�2�O\\u001eZ��\\u000f��\\u0000�Q�}\\u00055�\\u000f��ks� ,\\u000fZZY���x����L\\f��\\f��6� �\\u0000�^�fᢎQ�\\u0007�E�SHh��q��+mK1qˢ�QG:cا+���d�`pWԍ�|hUO\\u001a\\u0004�L��c��m����G\\b����R̂�3 6\\u000bҩ�Uy\\u0012�o�r��M�*ē���*i�\\u0012\\u0015%��t�qfȒ#\\u001c���;ڌ\\r��\\t� \\u0012\\u0010J跠dKK����9��\\u001d\\t�M\\u0013�$y�W\\u001aRZ&\\u0004��\\u0000�^���v�>\\u0010J���)\\u0004_J�\\u0014�*H�7��ی\\u000b\\u0005\\u0000|\\u0005\\u000b��Ȥ\\u0015\\u0000��\\u001a���73��}�8«�P,\\\\�\\u0002�d]z\\u0011�\\u0017��\\u0017\\u001as���(5\\bS�\\u000b[f���\\n��2i�B��xT�\\u001a}7ܓ��\\u001d�s�dYG(�\\u0016<u5���4Ƿ�$�L�\\u0014\\r���O��\\u0017\\u0018F�\\u001d��\\u0013b\\\\\\\"\\u0012Xq��\\u0017�Ζ���\\u0000\\u0012���\\\\�,�݌���\\u0015�Mv7ޖ�,�!U��6\\f6��M��q{\\u0016��\\u000e_ЫM3}R1��U�z�C��\\t\\bsp�q�q�%���m�=�)�λ�V$W�\\u0000��oL�饉��'B4\\u0016\\\\\\\"��\\\\\\\"?�v�P�ͪ-uX)U�nC\\u0019B�B�\\u001bc;=�\\u0000u�m��~kiGv�t\\u0018�]W�\\u000e��\\u0007Cj�v+�Z��խ@�t�\\u001e\\u0015�Px��2링�x��p�F�N|N�_�2�.\\u0012BѕЋ�\\u0000_�\\u001aGĈ��DQrh�Q��눰fgty���o\\u001a���܎��\\u000e��VR\\u001b���2�����4\\u000b$�k,�\\u000eW��\\r)4���\\u0016�M���C�\\u0004��4�\\u0011n\\u0017v�Z\\u001e\\u0019\\u001a9�M��������#>��}�~�{z~u|ܜ\\\\|�Å�̇��t/��\\u000f\\n\\u001a������\\u0018Ջ�$���aK���csI���y�db�� \\u0000m��F~ܑ��)\\f�ȌA*��\\u001f:\\u0001\\r��\\u0019��� t҇��`�KӼ�\\u0014\\u0012��\\u0014{��M�Rz�+\\u001c�\\fx]�a�D$;���F\\n\\u0014JY��߭K�\\u0002�����n�\\\\\\\"$q6$\\u001b]���}ܸې���n\\u000f�MU,�\\u0013r9�G�Mh��ce`\\tcr�H9(�o\\n\\n\\u000eߒC\\u0019X�\\u0006�I7ҟ/P��񻤘�\\\\\\u0003��&�5a��K\\u0015�\\u000e}\\t���0�\\u0005S��RER\\u0007���\\u001a[�QsD-G�$5'q+I{\\u0016\\u0004\\u001byՓ%�\\u001eLJ��S�B�����n\\u0014�G�S\\u0018����\\\\\\\"�y5��/MhHٲe�\\u0019X���/��\\u0015�����Ǌ�\\u0018�\\u001az�PE��\\u0000���sc�\\u001cD8�M�Z\\u000e5�B\\u0000c���\\n�\\u0003�gI��D��\\u0014�g�-��\\u0014���\\u000e,M���f\\u0014��;91��n�\\u001f\\u001a����oW\\u0002E�\\u0014��,*Ժ�P4q�^,o��li\\u001f\\u0014�\\u0003����k�\\u0019A�\\u001a�s��a#X�mqS^*aAV�܎��ő\\u001a�aV=M���\\u001c����\\u0013@\\u0002�\\u0013�J��<.zR�R�I\\\\\\\"׵�/�j�7\\u001b\\r\\u0001\\\\\\\"�\\\\���Y��\\u001b�؝�+\\u000f�����!�o��\\u001eLe1��#]��;�<� �Z���j��B��q��\\\\\\\"1*�\\u0011\\u0013`���>U�2�\\u0016\\\\\\\"�I�57\\\\\\\"�½��)�2�\\u0006�\\u0011�\\u0010�b\\ni�\\n\\u0019GUb�uk�|j�E�0em�\\u0015�nFL�R\\u00141D��n�:U�%\\u000eo ��z������»��kDc�<\\bQT\\u0010M�oX\\b^C�6\\u0000\\u0012ĝ\\u0000\\u001a�j�A`�o\\u001a\\u0013���:�j{�W\\u0000�\\u0010\\u0015\\u0016\\fnO�AO����!#�F��\\u0014߶�\\u0012BQ�\\u000e׻;(c�\\u0000ҩ�p�6X�.��\\u0014�k\\u000f�ʽ\\u0015��m�\\u0000�֭&%$�\\u0005�j�\\\\\\\"34��<X�^gƺ^�����,\\u0014{��s\\\\\\\"�l/@ʱݗ����\\u0005��4c-8\\u0003�$�\\u0007�~DQx��C\\u0017��Z�N�P�&>FLiq����M\\u0000�i�p��U�\\u0007�K#\\u001b�M�4�\\u0011T���Y�\\tf�$�6�R���$�*�\\b�i3\\u0005c��\\u001d5�\\u0002�j6���jZ��\\fB\\u0018�1�F���4߷w\\u0018a�� �3��\\u0017��jT���ކ��ُ?����9���?up�e1���v1\\u001b�x�Pqϐ�m,��\\u0005\\u001fM8��\\u0001U��lfe,X\\u00107��B�\\u0007����ߋ^�D\\u0006�˅\\\\\\\"�\\u0002��k�����>�\\\\\\u001a^\\u001d�ˎ\\u0016$�E�����v혐A��\\u001f�$��X\\u0003wn��m�p\\u00199#-�\\u001f*�w\\u001f���^�/��0d�\\u0005\\u0000��\\u001a\\u0011\\\\x<\\u0005�\\u0016\\u001b�nh��\\u0013��?�Ikio�U�r�KhzQ.�\\u0014ԂH��9���\\u0018����\\u0003�r\\u0001,N��Y\\u0014��j�qm�p�Í��)�Gospc\\u0000l\\b\\u0003�Җ\\b�\\b@�~?;ڋ8\\u001aRj��E�#�b�\\u0003{h*��_�[�X�2%�����aDv��S#0\\rk\\u0000\\b��\\u0018{\\u0015�\\n���֯9Z��u�s`,��T\\bN�\\u0000����#\\t\\u000e���4:�\\u001bA,�\\u0019\\u0016\\u0019��.:�i�ݱ21�L�.-��t�\\\\�`�\\u0014L�n�Ҝ��\\u000f�D̂�f ^«��#M�(�:\\u001d���wDh�Ȥ5������\\f��Gd\\u001a7�\\u0003z�{����@�:۩��-\\u0006��:���Dy��kZ�\\u0003Hs�.w��=�\\r�\\u001d��B���)�ؐ�\\\\�\\u0015��C\\u001a�\\u001cA$\\u0002I\\u0017���C�\\u001d��\\f\\u001c��~����f��\\\\��\\u001e�-$\\u001b\\\\y|)��\\u00196(��\\nE<�Hэ\\u0017k��\\u0014���\\u000bU�\\u001c�v_�<\\f�B�0�T�ԗ79'��\\u001a���\\u0016��&)���C}��d\\b�8�9��o���S���o�р<2rFB=\\u0006��l�\\tc\\n��֋lh�D��\\u001b\\r?\\u001a\\u00030{\\u001c�m�\\u001f\\u001d*W\\u0016���I�0\\b��J�k\\u0015���\\u000f��Q*��k�X�#�K�v\\u0004��?\\nq�G8XIg*@\\fu�\\u0005\\u0005�r_!�m\\u0002�*<�_�����\\u0002\\u001bK\\u0010<+�V7R\\u0015lG�\\u0003�e\\f\\u0001�rц�SZ�aY��f��\\tf�`�E�7Sm��w\\u0012�2\\u0002�4�A�x���-�\\u001dM`�\\u000b*\\u0007N��|�7\\u0019\\n�\\u001d\\u000e�ц�P�ak���uC�.M���\\u000b�`��\\u0006:�^��ldc+��|ljU�*\\u0002$ʚTT��\\u0004��k\\u0007�Sǯ�Y��8ZA��|j���\\u0012U�6 m�)Ka�;�c:����nHڈ�E��+h���{l\\r9\\u000fnAG�h�\\u0011�Z0.<��V��&��vI����F�Fֵ�<��\\u000e@������S�� \\u0003Pu\\u0015@����U�(�����ƕ^�[{\\u0011L�2NHQkq��YK\\u0014�\\u000b�ݭU\\u0014��J�/%�`\\\\\\\"x�X�\\b?\\n�P�'�&Ě(Z^:*���^�E�#�����T�5BY��1�\\u00164B�\\u0014�4�Z�|���\\u0011K1\\u0002%(�w��4��\\f`\\u0000I6ޟ`G\\u0012�\\u001b�\\f]C\\u0012Eε\\u0015�M��w�\\u0012:���{\\\\\\\"�[\\u001exS�݈F�\\u0000?��!hG�\\\\\\\"M7+\\u0006V\\r�ץVF�U���ځA�8q������\\u000e��S\\u0013Ǔ��rnE\\u0018\\u0015u����EZ51�E>�n\\u0007��2�b�1�n]v�\\u0007\\\\\\\"O�`��t�B��\\u0012˂��4��h9k귀��`@��z�\\nl&�X�q��B-BeK���\\r�iN\\rm^?�'���pZ$���\\u0003��ҙ��l�Ƨ��F�\\n<>U�s\\u0019���1��V�!ck\\u0002t�ȃ���#\\u0001\\u001b\\u0010�\\u0006��\\\\yV��h�\\u0002и��� �~�;a(�Lz�\\\\޳�\\u001c�\\r��\\u001b�T�Iȓ\\u0003f,�N�J&>�\\u0014B$#M\\u0003\\u0011sD������\\u0017[�\\u0013��Z��\\u0007\\u000f�q\\u001cKω�k�m:�;Q8����2U��)\\\\��\\u001b�G!c�\\u0011���:��B+o�Is鲁}k]�_\\f\\u001eع<�k��\\u001e\\u0013rc����o(���\\u0012mz\\nL�\\u000f\\u0006�@��]J�\\u001d��9\\u001c3U�~@�\\u0000\\u0003z�c)'5o���<y9\\u0011ć�6���$��\\u0014h�$\\u0005P\\u0006�J\\u001d� �F�\\\\hN�f?u�Ǉ�N%\\u0005�\\f6�λ3�pZ.\\u00191�����>Dj+��\\u0016u\\u001a�L����qI9\\u0003F���\\u0000:�'*\\\\��%�oa�Q�Q\\u001d��m�\\u0003j#��� \\u0004F.\\u0001��\\nMcp�\\u0000um\\u0018d\\u0016�z�\\u001ccF��dT\\u0016\\u0006�\\u0013v6\\u0002��J��\\nD�x�\\\\\\\"b\\u0007\\u000b[S֔�ȼ3\\u0006\\f\\u000e��m6d�\\u0011ɬ\\u0006�i^��)�!\\\\\\\"ă�G\\u0003���6fPTmbj�\\f�'sZcO&3�Mn,Aں|��v*�8�6\\u0005�W/�>+��1}Q}W\\u0002�~�|�ƢD�V�˵�=\\u0006��G��w���YO\\u0010�q>\\u001eT�\\u0016&[�\\u0007��Xd\\u0015Tf��@m�G$�\\u0015\\r\\u0007dgGv0\\u0012Ku\\\\\\\"�:\\t$(n5���c{�p7�G��\\u0000-\\u0013\\u0014��'�\\u0014;l,/a��(\\u0013�s+\\u0011khk�wF\\u000e��\\rA\\u0015��I)-\\u0015�\\t�h-@���J�b4�֗$\\u00109|�G��u#�\\u000f,��\\u0003�@�dxԱ�7����8�bC\\u001b\\u000f3OԘI�$�\\u001b\\u0007Cf\\u001a�:V�\\u0013��^֐�\\u001a\\u0013\\u0016G��ar�}\\u0016!b\\u000f%*<�(RT�;)=j�̢׽@.�WZk���\\u0019\\rŝ��m��o�)jGT�\\u0011�\\u00190,J\\u001d�v��Z�˚9\\n�7:�;SL�FH\\u001c�_���J��E��lYG�����C4�[�jV\\u0004�9-�j����z�-2D��\\u0013\\u001a|-��y\\u0014�b��\\u00055�#ε���gi���\\\\�t�N.H �H�jc��Fc��N�Z��\\u0012�`<:�R���\\u0012@\\u0004���\\tY\\u0019���,m���YXxR�2d��%��>4�\\u001ao~\\u0005��\\u0013��\\u001aRJ\\u0006BƠ���_\\u0012E���<\\u000bb�-r�\\u00175Kj\\u000fQ^�q��I� ���I���\\u0012��b9\\u0013��י9P���� �)�q;�f\\u0018\\t\\u0004�\\u0000�5W\\u0005X��x�\\u001d�%da\\u001cNZ%���'��qs%Yu�D�������e�2�F$�O����~l\\fV\\u0019}6\\u0016Cҳ���2�<�\\u0007\\u00167\\u00175D�\\u0013\\u001f�\\u001c!��Z�&Gi�b��\\u00125����Cd�,���S\\u0010��ڴ��d\\u0011���ҽ���]����\\u0000�Y�\\u0016\\u0010�\\b�!7o!�-��]\\u0012\\u001b\\u0012\\u0016� A�ԅ���\\u0019���n� �_�\\u0015�$|h���\\u0001�Z�R\\u000fΩ?R_�'lc�\\u0010�\\u0010�O���\\u001eQ\\u0010���\\u001eT�\\u0013���{Ѱ�$`ho�Y�9�U�%�����ٿ�\\t\\u0003�Z68��\\u0014��\\u001b�re����eP�\\u0012G��t͍\\u001f����e��Yݢp�\\u001bu`I����$`����\\u001b�љr��\\u0019�X6�x\\n�$�Κ�:�JI\\u0011���p�!X�&:\\u0001�L�p�\\u0000�{\\\\\\\"�1\\r���Ө;G\\u001dۇ�I�2�\\u0016\\u0006à\\u0015�~Dٲ,�=�@[��CYL$\\u0016,��t���\\u001b\\u000f\\u001a�6ڐ�\\r�c���X\\u0013jrr\\\\\\\"�ֶ��9�J\\nf?\\u0018H��\\u001a\\u0006\\u0000\\u001d�����_\\\\\\\"x�\\u000b(�Ƈ�����b)��NBb�1�\\u0004�t�\\u0012�E����f�(\\u0015��~�\\u000bW*%{��\\\\\\\"�o�:�3w\\u00192\\\\\\\"\\u000b7ֿ�u����\\u001a�\\u0002���s���O��\\u0004�c&���mh�Ͷ#��\\b_\\rhBX!\\n5�و\\u001dq&?��g�h͂��\\u000f�uI��\\u0004\\u0005�\\u001b���y\\n��YD��B��\\u0007?\\u0006<H�ʈ�@e'cSe�I�g�\\u00101m����-�r{|�G 8\\u0015SԆ\\u0006��X��V)\\u0015ذ�kI�L�B���]�֔i�>Q(_\\u0001>� ci\\u0014�N�u�Xݾ\\u0018�ym�V\\u0000\\\\�hH`�I\\u0010ȶ\\u0003��Q͐��Up\\u0018o�j�f0_�Q�kSl����!dT�m\\u001a��*���\\u000bҴ?�\\u0012\\u001d\\b �F˗\\f��\\u001b���Se#���ȍe�\\u0005RG>:)�S\\u001c|.ז\\u0014�+2�\\u0019M���~t��/z��7�d\\u001b�\\u0003�p�\\u0017H��\\u001d�ҳ�ϛ\\u0010�\\u0000\\u0019\\u001fVS��C\\u001e]o�(U\\u0006Γ�M\\u001eIy-�_l���+>��\\u0000�\\u0000O���6\\u001f\\u0013{�\\u0000]u[����Y�BI��h㐐l\\u0006|�\\by,���L��Ӡ�� USp\\u0000>6��\\u0012N��:���\\\\\\\"d\\u0012��\\u001d��}�C�����ҟ{\\u0001�$\\u0001�y�:�X�A�6>\\\\\\\"��\\u0000p��Gŵ�h�%�\\u0006wh���ĳ\\u001fPS�Δ�\\u0011$\\u0012]�\\u001bp6��\\u0015`E�k\\u0013���ڢ�m��]n��\\u0017\\u001ec��G�o\\u001a%��8̋��\\u000fZ]\\u001cK\\u0012p[�ίZQqP���%qUb�UN�8�=m֟�)��\\u001f�\\u001b����\\u0000�\\\\\\\"��FDpN��\\u0005\\u000e�\\u0004�.\\r\\u0016�\\u0005��\\u000b\\u0011_=ϔE�0\\u0003i\\u001bO\\u0001��l�����#�B���)%w(��\\u0013r\\u0001���j;0\\fvY\\t&�z\\u001d�Z\\u0015+\\f�Wk\\u0011�\\u0011\\u0005�\\u0005\\u001eB��\\u0017\\u0016\\\\\\\"�ե�\\u0014�\\u0001�ͮ\\\\ݜ��Gdċ\\u0011�|+\\u000fm\\u0001�[\\u0011�h]��&��W�D\\u0011\\u0019)�����\\u0018�\\u0004A��9������d\\u001e\\bt\\r��\\u0010�O\\n���Q�\\u0000Vr���H�\\u0000SjM�P[c(��`�\\u00028��xy\\u001f����҃b�N�^��XI\\\\\\\"�.��H����k\\u0000܌{�)�\\u0003�x\\u0013T�<@o��\\u0000��nı�&�\\u0000�y\\u0003T���\\u001d3$�ĨF\\u0003N\\\\\\\"�Am�~�3�\\u001e(mȍO�+\\u001b���ޭ8\\u0013R)[\\u0014\\u0000\\u000fV�w�߱aO:��L0*]\\u001e��t\\u001f\\n棂(ز�[ru�\\u0010g2�\\u001ced\\u00060\\u0002�$�<-E��\\r-d軼ю�<1\\u001e\\u0012I\\u0019\\f��,7�ЋČ���[�j\\u001a^��������7����\\u000fq�\\u001a\\u0011\\u001c��\\t:[o���ơ\\u0005f�\\u0011�\\u001b�Mc���Aa'%6��@�Y��\\u0018�P, �{�6�4�@'`O�S���Z\\u0018Y�}b�[U\\u001bU�-#��p-z\\u0004�7\\u0004|Eybv�M'-O���\\u001d*�Ɏ�#�-���>DR��\\u0010\\u0010O۽\\u0003�\\u001e\\\\\\\"���>��o���fP�ky:�N��:\\\\\\\"��̪���-ǃQYS���D��\\u0015 ��.*T��\\u0007w�AȌ�����\\u0001�12�&C����Qf@�\\u0004+0�^�<\\u0012Iǈ\\\\\\\"� ׸��$�H\\u0003�.���S\\u000eF�\\r{|RB�\\u0014Ǔ�c�\\u001b\\u000b\\u0019AuSw\\u00040;k�B�\\u0000���^�o\\u0013�֕�J\\u001a�6��\\n1�2���T7��������\\u0011J�\\u000fpA\\u0013\\u001b\\u0001:�\\u0004�\\u0000�\\u001f����\\r&R>����ІV�2��<��C�\\f�{��mx�O��s铔�\\u00129�T\\u001b*�\\u0000>\\u0000\\u001a�ߛ�vb�w.K\\u001d<�J�9���7����k�°y�\\\\�[Z�-���T�\\u0000��'gv,��T\\t(:\\u000f}�(�ֱ\\u001d>\\u0015N�\\\\\\\"�w~\\\\K�$W/�HĲ�`�\\u0000�s^\\u0017v7f-o\\u0013zc\\u001bb�v\\f��\\u0016[yx�\\u0019\\u00191ύ+\\u0010\\u0005����-����d���zT�\\u0001ާ;���L̬�@�\\u0006�<��jv�μ�x�׉?#G\\u001c��_�C�G�\\u0002A?\\u001a�\\u0015�.\\u0005�\\u0004�o\\n=�X\\u0014u��\\rPaFG�6#��h\\u0010�\\tQ;�L���\\n~\\\\\\\"���i�t\\u0006K.��k�\\u0011D\\u001e��Ť��\\u0002���m9\\u001c��\\u0013�\\u0013{؏�\\u0018�^�\\u0000�+\\u0016%ۓj�5�i\\\\j&\\u0017\\u000ecEņ����R��\\r�#���>��\\u000b\\u000e#m�UtG�����@W\\u0005qB�N>�ȸ�c�W�L�΢��o\\u001a�D��d\\u0016$X�VeV\\u001cH��ȶoP��{\\u0005�v���V��XQ'\\u0016\\u0003���\\u001cqC�`/[��i�2^S^N���\\u000f8^\\u0005�\\u0001�.\\u0019y\\u001f���y�qv$xV��½6Z�g+���҄��Ydh�\\u0016=\\t��\\u0006\\u0016;V+���{�=\\u0013Y:����:���a�*�DD�!h�+��J\\f1]��\\u0006`܁֧�Z1�OSF\\\\��q�rPu��,l�\\u0013@�\\u0000w��ߗ;�^5��䮡��\\u0014�[=\\u001a���D�$��\\u0006�R�����<l�\\u0004#�^$\\u000b\\u0011�[�L��=W�V\\u001f�ǽ�k�5�I�-���)Zz�\\u0012\\u0003i�pE\\u0019���\\u0016�;3Z�;\\u001f#@Ծ�t;���|�΃V�\\u0015'tȞ\\u0018�KEՂm\\u0003z?\\u00074�\\u001f��Yf?\\u0012i*����\\u000f\\n�&��\\u001fO�:QWD\\u000eӨ�W�_L�\\u0003nE�\\u001d�\\u001c|Q�H�\\u0003���o_Y��AT\\\\�N�(%�@ֽ��\\u000eZEܲ�ߨ֚L%\\rfe3G�AXlc��\\u0012F�\\u0017�;��ĢX��k�\\u001ef°,�rO�ה�M�v��ot�sԩ���m^I\\frȲ�a]Hg\\u0003Aq��+~@\\u000b��Z�\\u00166��@H�\\u0012I�(�i\\u0018(�����f\\u001fm�30^�\\u0013pe:��C��E�\\u0016V6l34%�'\\rmƆ�\\u000e���'���K�t\\u001d\\r6\\u0001�Op^d�V\\u001fe���P�\\u000b�{��$�7�q��\\u0002�&NDj\\u00169\\u0019Tl\\u0001�N^QVS+�}\\u0018_qS\\u0001\\\\\\\"\\u0018Al��~\\u001a���Z:/k�C*\\u0002I�{�ۥ��\\u000bI�Q���c*�1YH<\\\\����\\u0000*�\\f�g)�\\u001a!�@\\u001f}k��N�t�\\u001266�y�\\u0016�H���R����W�\\n�\\u0000���\\u0011�Ą\\\\\\\"��\\u0000OO�\\u0012T\\u001d��\\\\\\\"�\\u0001\\u0014�\\u0000\\u000f�N1\\u0004��=���{o��\\u0007��\\u000b�;�2�(�Q�>��j���[�o��i�\\t�C�#����\\u0014L\\u0004G0�D\\u001b�x�\\u0011㹑y3\\u001d.F�ԁ�.O�\\u0001Cm\\u0002���6&��3��\\u0017�\\u001b��V\\n�`O�Vo\\u00023rpC|�\\tb\\u0003y�w\\u0012�K\\u0007$\\u0013��j���!���: �\\u000b\\u0018܏�U}���\\u000bq�\\u001e��g���,�`.��\\u0000|\\r\\r$K$�bx�j#�����Ƅ\\u0000w\\u001dEB����\\\\j{�۠�\\u001dՏ���}�֩+�T�6\\u001a޶NH=7���'P�{\\u0003}*�W-�&��Q�d@���76;Q���ŗ ʜ�(\\u0001H�\\u0005\\u0016:�,���\\u0010n\\r�S\\u0007/Rw\\\\�ٞ<h�Ǎ\\u0014q�=L���4���;r��\\u001dI��\\u00077mN��ƈ\\bU\\n\\u000e��PYy�\\u0012�62\\u0000>@�՜\\n�՛MkA�Z���^JO)�\\u0018\\u0005�\\r��\\u001a�J�Yx��кԮn����V�D\\u001d\\u001d���b�_��'{�\\u0012\\u000fa#F[�rM�Z��ٹ�,�h�Sb�5\\u0006���]0�9�����t�/��\\u0007Ə�Np<v\\u001c���m�O�-�l|\\rM�-9\\u0006��\\u001bA#��aԝ��Ȇ8�17���jPY0L\\\\�^@�6��l�0\\u0019US�ؚ�\\\\\\\"nAc��0޹\\u00181�\\u0013�΅B��N�Ζ\\u0000\\u0000\\u0001��z8���{V,\\u001d�|����\\bo��m\\\\�^G��\\u0002�\\u0017�<��\\u000f\\ni���g�lb���ċ�׽-x��X��jp\\u001b�i��\\u0005������-��5�h�3�d�nc�_S���\\u000f�x��\\b�^�4�\\u0017/\\u001b\\u001a%�\\u0001P�\\u0016ޝR�\\u001b�7�r�G��\\u0013���Y\\u00002X�\\u0001\\u0016��H���rN�O��Df�\\u000f�F\\\\\\\"K����|( H�J\\u001aD��b��\\rU�WA?pU�5�\\u000bY\\u0001{�:O�XJ�\\u0005\\r��P�\\u0010t����Y4#f�zi��#�\\u001f\\u001a��Y\\u001c\\f~����x�ʔ\\u0015 �)���j��\\u000f\\u0001�N?n�w�N��\\u0001�\\u001b��+�5�J�2�$Y#�*t�\\u0001��|�k�c���֮c��:e�\\u000bz\\u000e�so�]�W�\\u000eŬnin~#�L%G�\\u0016o/�\\u0010\\\\\\\"���\\u000b�\\u0011��\\u0017\\u001e�z(\\u001f\\u0001��Ӝ\\\\��\\u0012�ߐ����(�\\rПq�.�\\u0017ޏ�f��\\u0000\\t>4,dz�͕!���Rw[X�ܘ��\\u0016\\u0000^�S�1�c;�*\\u0003x�\\u0016Tos�Rt���(���_l1�n�S�˃\\u0016\\u0004i.��YW�ۚQ\\u0011�\\\\\\u0011a�Z9�,��jϋz�����#1{�y_�\\u001et�\\u000bHd��ܚ����,*�U�Hk��JI�\\u0000�\\u0007=�M8\\u0000�\\u0014X��vy�Y�\\u001d\\u000b�\\u0007�!@�M���\\u0005Y[�\\u0005H\\u0004\\u001b���\\u0019<������\\u0000��H.n��Կ%��:\\u0002-f\\u0007o��\\u001e�1^%V�?�C�n���Q��ڢ��,��\\\\\\\"��\\u0014@1�D\\t�$D)\\u001a�NG�?2-S\\r�\\u0018�^�ʶyݠ8�-ԛ��V$iW8�w7�*E^\\u0001� ��ş\\u001d\\u0012i�#�c��J[��ՙ\\u0003�B.\\u000e��,��0\\f�\\u001b>Vɘݍ®�W�\\u0002��@\\\\\\\"�NG�Q#\\n%\\u001a\\u0006\\u0003�֨��\\u0015\\u0005��QŹ�M��`�؁�N�:.RrTD}<�&�o*�\\u001diֱ�2{/k�EW\\u0004�\\u0001��K�(\\u001c|iT4M�a���\\u0019q�+�8ι\\u001c�`\\u0019V?n7��o�\\u001d:���\\\\�sI��MԐ|�_�d�=�|���s\\u0002r�\\u001ed�򪃶��4K\\u001c*�blmҰ�^�7��c,��\\t���<Ϩ,A�+�e\\u0014��\\u0010\\u0005��zV�\\u0019EJ�\\u001a�|��\\u0015@-�x�\\u001fF\\u0017��\\r�\\n\\u0019��$�w(�|ū���j�t&��*�\\\\\\\"Փ�c;sh�#�\\\\\\\"��lǠ�>���[X�]F\\u001c�p�\\u001dx*��k\\u001aR �\\u0010B����l�H���\\u000f\\nI\\r�a�Z'\\u001f�|h!\\u001a͐/��\\u0000��Q�'�x�r\\u0003m\\u0005f��n�Ɔ�A.�\\u0015\\f��PzH�\\u001b�TΑe\\u0011�f\\u0004�.yr��ƽ,Xܛ��u>|�AR�d�`��e\\u001a\\u0001�e�#>,�0�����5��[�5�j�\\u001b^�z(\\u0017`¦2��}�\\\\�@B�z�҉Xc[�[_{U��қ��1\\u0007O�\\u0014m�\\u001c����|+�l�\\f�2��W9\\u001e^L+�9�\\u0017�Aҡ��}�c�9&\\u0007��n�\\u0018���\\u0001o#Y˷\\u0015$\\u0001�֑�<�\\u0018ݕw�5\\u001ay�ꑍ��'Ir\\u0010o��f \\u001bh+Ɣ����]�oB��}j\\\\֋H\\u001a&W��x�5�4�BZC\\u0014�@}TªbB܈�Ɣ\\u000eJ`D��\\u0014�@Xά|\\rux�@\\\\I\\u0013)�}|�W0�\\u0006½�\\rHI�.|\\u0010r�iBs;�nk���W�$�o�܆�\\fI���(�IX�\\u0003��\\u0007z3\\rYY�X�m{P�W�����\\u0000�4E�o����7��5L���ۿ8��\\\\\\\"�6�@rc����U!̎N��\\u0012\\u0006`=<x��\\r�|�(Q*���\\u0007�7��\\u0000_��G�\\u0015\\u0002��^Ճ;6�lE{�wl�j\\nĚ�z��PX�ZF�E�5�F$�3:Z�۟*�\\u0013\\u001d�\\f^ܛ��T�%b\\u0002\\u0015�\\u0018�;n}1��x�!CĠ�\\b��$u�]�����TDD�\\u001aJ�\\t7\\f��?*\\r\\u0007�)��\\u0019ط&��N�ƥǍQ&ؗh�7�6\\u001c�ހ�Q\\u001c�[�����\\f�n�ƪ�9�\\u000eGΣ�J�\\u00059�����\\u0013�֑Mt\\nm�\\u0012UXX�#����!�\\u0001��\\ta\\u001d��d����<o�(���c\\u0010\\u0005���饱?��p:V��[�\\u0015-9\\u00008ɱ>zQعE\\u0018k�*R�'q�@�\\u00007:!�x0,�Po��~�\\b�lH��ߟ�W;[\\u001c�\\\\\\u000b�Du�Iu�Z�j`��h�1+���\\n����z�\\u0007\\u001a5b�y1R���k�wo�XW�]M��3�%�P���\\rC\\n\\u0006q˒����Gaf5ZO#N\\u0005hy��z����\\fx�q\\u0004m\\b��f���@��r\\\\�\\r\\u0005Z\\u0013�#ʳm\\u001c�ƴ�IWΧq�C��74R������PeM\\u0012�*�׳xT�ߨ�/q{�w�p��q�^�r�a�\\u0013֜�Ѭ��/p\\t��(\\u001e�\\u00034e=D����Fn0�؎�\\u0013Ep.��\\u0000�P��DHu�\\u0001�j[i7\\u0013\\u0005D�V�C07\\u0004\\u0013z\\\\\\\")�F���>ʦBM�)+\\u001f��;\\u0012G�A̲ı��\\u0000P������-hk��\\u001b�c�9\\u0001(om+a\\u001a\\u0018��6��v8\\u000b\\n\\r��~t�>-\\tRw[\\u000f�Rė��o��+*��*)�\\u0015@=Gs�h��\\u0016<�2�=�F\\u0015R�\\u0002A�|i8�N8FѓAn����\\u001c\\u0012*�9[j��X����y+�<lv\\u0012�D\\u0016�o��\\\\�v8��I!P���\\r����{4�όd�u6��#�ԣ�K;Ȗ\\u001e����\\u0000�Z\\u0015a��e�'p�� C%��\\u0004\\u001f�j+�*��}8*�zkj�Y�\\u0015Q�\\u001a����ς�_��\\t��j��c��\\u0013��\\u0003��\\u0003k\\u001b�#���؟���\\u0014�g�\\u0019x�sKzH�JV���0\\u001a\\u0010I��}Ʀ�U \\u0013\\u0015HȈ؋��t�.A�n;׃�(�\\u0001+֊\\u0006(�\\u0010���Eͷ��Bx��M�c\\u0005KY��)�4jO\\u0007�\\u0014�\\f4�hk)��\\u0000M\\u0000���^\\u001b�Ɔ,��v:UVɩD�`7\\\\\\\"2V�q֝�_�X�8�#;�iu�\\u0014�x�:�10�\\u0010����\\u0007PM����Tq\\u001a��nZX\\nN�<���\\u0000���a�\\f��\\u0006WenM�@/���03�)�\\u0011�\\n߿w4ɓ\\u00165�;��6�}�\\\\r�2Ŋ�!�\\u0006�b?�+=\\u001e��\\u000e\\\\\\f�;(��Y��4�H\\\\\\\"�`�n���$+���zS��\\u0016tXƜ�\\u0012\\u000f���¦\\u0007��)�\\u0000\\u000e����]_�H��e���c�^Z�\\u0006���b6\\u0000\\\\�S���2��\\u0001\\u0007���Ƃ��\\u0015�@1�p{����8\\u0007�H<�1��'z\\\\\\\"\\\\\\u000eg0$���s\\u001e�.\\u0014�1\\\\����Nb2To�]G�\\f�\\u001cH�boȃӥs�4��!\\u0000\\u000fH]\\u000056Á��b<r��C\\u000b\\u0003�r�C/�:�B.�t5�\\u0004��Y�\\nu'����\\u0017!\\u0014\\\\8[�<�s\\u0001�l��%�\\u0010���������h�V\\u001a�Q��)�i\\u00162�\\u0003a��P+���F{d\\u0017\\u001f���E۪�ՏP|���^3� @4�\\tR6\\u00139�\\u000f�xyӼ�#�K�x����\\nG\\u000b\\u0000��{\\r\\u0007�WS�&7����h��\\u001e���2��<\\u000b�\\u0001\\u0001T�\\b���M�\\u0000T�)�\\u001b!C�Q2��\\u0003���[�󭖤�\\t������'ϔ\\u001c�\\u000b�ƪ�$<���\\u001dIچ�\\\\d\\b�������\\u000b\\u0013�\\u0000��$��ȍ��%�\\u001cm��A��(�K�\\u0015[z����Y\\u0012�\\u000b��J�ј��چ�#�\\u0004�p\\u000fS��o��ѱ$i��m��02�E\\u0004��c����zE���x���Q\\t/�0}ר�W����#\\u0012O��2x��S�_ƹ�\\f�\\u0014jN���M&@�\\n�=�\\u000e�\\u0014�\\u00165N�mˍ*��%\\u000fpp!ŀ\\b�L�i\\u0019�I6�\\u0015�w\\u0011��)�<lA��QE�\\fd2�7#�%���)bh <�}m�N��꛴��G<%���^׸\\u001eT�\\u0007'�\\u001c\\u0015�V�m\\u000f�\\r\\u0014%G'bGU�����q�F���`oj�ȇG\\u0017\\u0018\\u001e+\\u0012�\\u000b�7҇6��ǧ�\\u00103!1����<lil�(m\\u001a�\\u0016�S%<\\n{�ZC����}�Hf2�H�q}�N�\\u001c��_�0 j\\u0001=+LS*���y\\u001a�$uٹ>l`����ƺ\\t\\\\&���ZO�\\u0011�I�\\u0016%W�Ҫ\\u0012\\u0011���N�ڥꑭau�}Nw8$Y\\u0012F�\\u0013u\\u001eGZ��7\\u001eM�;\\n���F\\u0000z\\r~U�\\u0002�T1 \\u001d/�U\\u0006<�3\\u0019�U@~��\\u0011\\u0000&>L=F��\\u0007�\\u000ev\\\\\\\"ק���n�\\u0016V9�����4\\u0000�\\u001b\\u001aL�AH\\u001c-{﯅\\u0007��*LK�Gm\\u001bR\\u0007�\\u001f�+!q{\\u0016�\\u001ev���\\u0015�V\\u0003s���\\u0017����(Y��q�y=����\\rA����\\u001cM\\u001b��=\\u001a�9�x�oӵ��ç��8͖6�������+e��w\\u001cǞ6i\\u0014�\\u0005Ս#��\\u000b�o\\u001a5s\\u001b'\\t�z�)\\u000b�i1r�����I�B�#�.���tx\\u0019���<���\\u0018\\u001a�v��W[�O\\n3\\u001eR��\\u001fҠ؏*\\u0000�'\\u0019\\u000e��E�\\u001b�Ⰴ*�\\u0000[Ɲ�$1+#^\\\\\\\".I��H�UvgM�$}���-K�P�\\u0005\\f���w�֥�[B�\\u0018$�\\u0005��\\u0000�j4.���W$,�Q��߷�Q1)�E!T�\\u0002/Ce�\\u0000dG(�\\u0002}D���Ӕ��ѡ�=�\\u000f�\\\\\\\"��e\\nB�\\u0014�M�t�yl�2�\\u001e�E2W�\\u0018���j[�DR\\u0005܂n(��\\t�\\u0016M\\u0005ȿQ��Y�\\u0005D�%w��f\\u001d�f��#e\\u0015�p���}\\u0004�N4*Eh\\\\����-ZC��\\u001c,\\u0001\\f�Kuީ�\\u0019VA\\u001e:p�E�\\u001b�X���{��Ê)\\r���ʩ\\u0012ϡ�v\\u000el\\u001b\\u0004*-�c&�y�\\u0016.Ǒ\\u0000-�\\u00039:[Qj'\\u0007�\\u0018�\\u0013�\\\\\\\"ǐ��I\\u0001\\r����X��\\u0014�\\u0006�h��k��~��~�%�54��8�99�v��̷$HU�_̷�V�㽴��c\\u0000��$�\\u0016\\nE��Ɗs���&p\\u0015��r��+��Փ��7����]�\\u0002�OC�T�Ū���\\u0000\\u0004z��[ό�!.��\\u000b\\u001b�j�*U�m\\u001ca��#a�T�)����\\u0015v�WΉ�\\u0017��\\u0006��բ%����]l\\n�EY�^���=z}����L�7��DDSc��\\u0001J@�l�y5�y4Dz?����`w�}��@(��Z�ӡ\\u0006�\\u0007J�\\u001ev\\u001e<����\\u0017����K��o���)X8x���:Y�����,��\\u0012��\\u000f�C\\u0007''\\u000f$\\u0005��dkj�x�V��\\\\����\\\\\\\"$�,R\\u0002x\\u0013`��Z\\u001a|��!av� ��ܵ�������y\\u0004Hr�_m\\u001e����R�Ҙ\\u0017\\tq =�H�RN��M�B��L�[\\u001a\\\\��Xl\\u001bϖ�\\u0014\\u0012���z\\u001a��\\u0016�\\nA\\u0018\\u001cg�\\u001e��,~�*�lI�ea��*'�r^+\\u0001�\\n���\\u001c^��F=7��/Ms��\\u0000NT��oO�k@n@\\u001bװcǗ��>�c\\u0015^?�#t��fK\\\\\\\"�\\u0016�\\u001aٕ�| FܣmdS��<�\\u001b��W�\\u0016�4�!�&5s�==�\\u0006�A�E��Ɏ�\\u0018\\f\\u0014\\u0001ꏗ�� ��ҧ�<}�śc�}�`��q&�K̫\\u001f�\\u000b\\r<�颒Y�B�\\u001b\\u0017�\\u0000)4�h�.X���_\\u001ak�\\u000bƓ\\u00025A`z�X`\\u0018ܴr�����\\u00000�Ά�%UI�n�T�(��YX\\u000e=,z�I�ۖ\\u0011x��\\u000b0=G�Ɠ�<���\\u0001�ԓ�\\u0002��dK��2���o�:������̤\\u0010A�Ӽ)1�'�\\t���in|���P]�����\\u0000�����.\\u0012��\\u0000�ښ�ʶ���&��I��,bq��\\u0017BE�'ƈ-��D�>\\u0017��+�Ǎ�,�\\u0002�\\u0018$\\u000f\\u001f\\u0001\\\\2Ϊ��\\r�V��J��9�\\u0013��^[{l-�\\u0014Ġ��\\u0001=+��\\u0000����)��1��y�z锆A��o�Z)X{��\\u001fq��*&�F\\f=��\\u0002w��X@�\\u0016E\\u001d\\u0007�J\\u0017)\\u0007\\u001b\\u0013ub?\\u001a�q��F�������\\t\\u0007�B\\t%��jA\\r����l���\\u0017��Ρt�$�\\u000b���:P��$���@\\r}&����{\\u001b��*�^3�\\u000f�4sJ�.�\\u001d>t�\\u001bǩ���H���pP/;܎�Z��1!�\\fS��7\\u0004\\u0015\\\\\\\"�\\u001d\\u000f��΄�͈\\u0018\\t�́|U��|�oplq\\u001a*�\\u001b�'�+G\\u001c��N\\u00033�dK�40\\u001b�\\u0013�!n�6ր\\\\l�9ȝ\\n�u&�8dG�y\\u0014Z�#�o@w��3\\u0002�F�e\\u0002�?)�\\u0000\\u001a�Y4�N�Ѯ\\u0004Lmb\\rͼ�m<<� :�v\\nH�ع�\\fc\\u001eMUtS��T��iE����۠��̊p\\u0019���*��\\u0000�t�Px�ύ�\\u0002z�ݕdc�z)���eU\\u0012��O���2J�����\\u0016\\u0003OM�\\u001a\\u001f�����l<qOy\\rʊ\\u000eq�5s\\u001c�I\\u001bu��^\\b��P�\\\\\\\"�7�_A��R�3A+F[�)����2'%ԭ�\\u001a�E��F\\u0006\\u0012���̷����ʺ\\u0013\\u001c�6h�L��o�$�ʁ�|�B\\u0016DV������\\u001b4;�4-u;��j��d�f�\\u0019�����żmm��\\u001e\\f�\\b+\\u001d�\\u000eL~�#���YQ�C����L\\u0015ȁ\\u0014h8���\\u001d�0U<��г(7#\\n�[��\\u001f��\\u001b�+�I�\\u0000�OA\\u001c��[RIa�1u\\u001a>�x������$�/��:�<|k����Wۄ�\\u0019X�-奫�)#=�I�u݃�ōچ\\u0004�\\bfB�6���F���u�\\u000b5>��^d\\u0002_e\\f�\\r�(�\\u0005%\\\\I�w\\u0007GQ{\\u001d\\t�Pw��d\\u0018�7,rĵ�I���V�d�����\\tT\\u001c�z��5��\\u0004�ዓ-1#P��\\u0012�K�Г�qLq1q�W<�ci\\u0014��%+k�W;�1��yX��\\u0000��e�F\\u0014���Ccg*�\\u000e,����(���RY��|Z:��,>�\\u0005��\\u0007j�s\\\\\\\"W�3�mݝH�\\t��5ѱ���.�Ȧ�\\u0016�⹼�A*\\u0013� �«؟r�\\u0004M\\u001f\\u0002\\u00027�m�}�\\u0012��Ϊí5/�.3#\\u0014'��������K��%�cI�\\u0017�+,0�\\u0000�bv��f�ǘ�\\u0004�󦽾,i� ٜ\\u001b�\\u000e���1�8\\u0016?�i\\u0010\\u0012|�c��zœ�S\\nVɧ�Qo��B��i�\\u0015�x�I��G��)]��\\u0011�1���#^$\\u000fͭ�@.|���\\u0017��V����+�My��n0������n'u&֠��r��IH�ߊ�zk\\u001fq�h�;\\u0004�fRm��\\u000f��\\u0010F����\\u0000kT���KQ�g�ؐ�\\u001f%\\u0003�\\\\\\\"�ɵ\\t~�\\u001a�p�\\\\\\\"Y�\\r�)�ňҍ�Ǟ\\\\_uX!U\\u001c\\u0001^\\\\���wt�\\u001f�s%����K�YVr�Ad�A�F�\\u001c5�٘�\\u0001;�*!f\\u000e�m���o��\\u0004x�ef�\\bB��ܻ\\u0011e\\n>4\\u0006<��4�.��T�G���z��N�.�4�d\\u0005�\\\\�mT��h��CbX��_J�2�Ж6\\rkiY)���\\u0018|Z7��{j����^��¦n<�n#�\\\\0�є�?�%����\\u0000��� ]OƘw�p�o�쥣��\\u0001\\u0004�v\\u0015Q��c�*ڲ�\\u0006�k\\u0012���V#�\\u000b\\u001e����\\u0004\\\\\\\"�\\u000b��0��\\u0019bXy1�@�j\\u00052��B�u\\u001d\\tؚ豻\\\\9\\u00187��dPT)\\u001f}c���T��ULx�x�A �X���z|��\\f\\\\\\\"���\\u001c�}��\\u0000f\\u001bo�������\\\\�P\\u001d����\\u0012���z��p��,\\r&�6��\\u0016�\\u0000\\n�Q\\b���w\\u0019m�2\\u0001?L�\\u0000���\\u0015UW\\u0006���+Y�O�<�\\u00162j[}N�\\n�$���\\u001ah)�f���§�>�2\\u000e�,�\\u001e,8����\\u0017��B�H���$���X�q&9EeK���Z���\\u0003�\\u0013.\\bq��U`y_ZY6;8>Ʒ�5��pt����\\u001do�Z�&D�}=-~�6�R�O\\u001f�\\u0014E\\u0018q!���\\u0003 ��\\\\\\\"����q�DK��\\u001b\\u0010*싐\\n�$\\u0000\\u0002y[¦�I\\u0005��6Wd@:����(�;ZK��-+|ؚ%^�X��huP�4��e��IL\\u0004�{AW���\\u0001�2h�Щ\\u001e�\\u0016?:I�$P\\u0019v�H\\u001f\\u0011j|�J\\u001e��c��GD׋Z�TJ��\\u0002mȋ�­�\\\\\\\"r��{9\\u001fp��VQ!�tF�u�JHo!aV\\u001eܹ2\\u000e1(\\u001a�%���T�V\\u0000�ғ�A\\u0017\\u001f�\\u001b�\\u000el�eÏ\\u0011�+\\u0019�>Caj߷�\\u001e�.x̦��؏���\\u0001\\u0005��X��\\u001c^�\\u0016>z�9x�\\u0013���v\\u0014kg)�v�ܵ�1��Z��Eg\\f,�\\u001aɶ��f8�\\u0015��\\\\U�\\u0016,\\u0000�Sb\\r\\u0011�ت�4\\u0016\\u000e�R\\u000e�\\u0012�H\\u001fC}�B?�Z\\u0019�SY,\\u000e����i�Y�THm\\u0017����l|�\\u0005\\u0006�\\u000b[�u�0cЊ����\\u001e�������a�]:�ŕ\\u000e�x\\n\\u0016~�b\\\\\\\"�z�\\u000bx�W����\\\\\\\"���QY*;/�J�\\u001d�\\\\\\\"91���\\u0004��\\\\\\\"��=�\\u0012n\\r3�p\\u0004\\u000f�B��x�:�0b6�J�)(&[r4\\u0005I\\u00006�ݜH\\\\\\\"�\\u0011Ɓ\\u0004b�@���B�� [�pt�\\u0006��&\\\\y\\u0018�Lv\\r\\u001b\\r��k���k[�U���uq\\\\\\\"܅Ich�\\u0017V�Ѓ\\u0001[\\u0014\\\\\\\"����\\u0000��'�YO<��K�OZd�k'j\\r�An 0܂:\\u001a��\\\\V\\tyy\\u0015\\b�G�\\u000b?_\\nЯe8\\u0007\\u001b �F,\\u001c\\u000b����S)AE�MԏU�iD�gw\\u001b��i-�qPb�e\\t��6>4V\\u0013\\u0004���؀+|9W�͉ف�p�\\u0018�JE��\\u0011}�֮���9���~b�J���4ש�1�scx�\\u001d�8ؑ��i�w��s�ʈ*d[�T���\\u0014�\\u0015d�&�,�O\\u001b���'G\\u0007|i�Wlw^�5�[�X��\\nA���\\u0015г[R4��\\t�s!����-�%��m��\\u0018�\\u001e\\\\\\u0019\\u0011��p��M�� \\u0013\\u0012�c{�$���r\\u001c�5|4d�{�X)<�\\u001fU���8cNh���ع�\\u0006�첼l\\u0015Z��J�(>9\\u0015\\u0002�`��R\\u000bj<\\u001b���1K(�� I�k\\u0010��\\u001d��a����v^�_sN�A2!h�?\\u0006<\\u001a�z��S^�iVC��\\u0017:�\\u001a,E\\u0006R2Π�ٺڰ�\\u0018c\\u0003\\u001d�.H�\\u001a�9p\\f3#!\\u0011H\\u0004\\t�x�i�Է\\u0012w��2���މ�_r8�>���F��?f\\u0012��b9\\u001a��I��]�ܶ�GV>_Ʀ;z���hv\\n��~=-�D�\\f�m�ý�K�=\\u001c\\u0015H�^ZJ���Xr:�a^�r\\u0019(�&�\\u001a�\\t�\\u0000)��i[cFܖf��:/�^�I|T\\u000ecC\\u001b�����\\u000bڴ�C *\\u0007 ��;�\\u000b:�\\rO��9d\\u0011�(oˠ��g�ds���g2\\rT\\u000b[�^@�\\u001f\\u0019�ч��)�v>3�p�� ��s��.\\u0007�^�ёě\\u0012?��~UId��\\u001b�\\u001bOn;\\u001doFł�.�Xx[Z�\\u0007\\\\\\\",{�\\r\\t���\\u0015��c�%�8��IҨ�����\\u001f\\u000e\\u000f�\\u0014e���׶�\\\\��\\u0019J.�H�򄹄�ހ��kܚ�b��\\u0018�\\u0000t]���=��\\u001d�\\u0000��.V\\u001bl\\u000f\\u0001-p?3iVɁ81\\u0013$����Kx^�l�l�aˊ�\\u0017��.�\\f�'a ag+�� \\u001bV�D��\\\\�k-�@�,Q��\\u0016*4\\n7��I*�\\b�A��CT�\\\\\\\"D�>�����3!�>��Z����\\rW\\u001d�,�^B��\\u0004V��W�����Z\\t�`�1᥋\\u001d����rc��VXǡ�6\\u001d)�%\\b2t�u����q�y\\u0015d�2#}�u\\u001e4n4P{O$�\\u0019΄���\\u0001\\u0018��\\u0007�O�!�\\u001f��V�)ReHf,Ab\\u0004($�Q�xɩ�V\\u001c���Vn6�U\\u001b-\\u0010�>�|+(y(\\u00136�z��i\\u0017�f���\\u0019|Ƚ��a,�ȵ�\\u0014\\u0006t2.Yd\\u0005�M~�5�+E�����\\u0011Y\\u0018�Q����U�%P\\u001e@J��\\u000f��\\u0000��u>\\u0015��Jӣ�6��m��az��+��Z��#�*A�J��}*A=lE�\\u0017�\\\\\\\"4\\\\\\\"H�'\\u0011J�\\u0002�\\u001f\\n�V\\\\�+%�t-�\\n\\u0016����ZC�\\u0018��\\u0003�P�v�\\u001a���h�$8jq�g&��#\\u001c@����aV\\u0018�\\u0003Ҡ\\u000byR��&����[��S\\u001d\\\\�O`�y�*l�\\\\\\\"��\\u0015ܢ�+�ޟV�U����G��2gd��\\u001c�q&�V>\\u0014�sݏ�\\fQ�cvqv6�'\\u0003�\\u0019Ñ�fd�&2G+)�=\\b\\u0014����\\u000f�ʹ~ѝ��\\u0019$M\\u0014k��J�Ѣ�0��C�\\\\\\\"��^\\u0004�\\u0012͈�f���\\u000e��\\u001a_���1�P`�\\u0004�j��Tn[E��\\u0013���q���SI�\\u0012\\u001d�����W�\\f\\u0018�\\u0002-�����\\\\_�\\\\\\\"\\u0018��a��1��`+��x��t��WC9��\\u0000���\\n��9t#�T!ɕ�dab��m\\u0017qT�Ze6'���$x���\\u000b�oj\\u000ep�\\n�\\u0017*I��Z�\\u0001���$�b�H�Ƥ=�v�,�V\\u0002�\\u0016>z��\\f��� \\u000bj|)��� %�ʠ\\u0000�aaC�\\u0016����_�)\\u001a�#��ޱ��+k��\\u000bN�c9\\\\\\\"��\\u001fUz\\u0015��ڍ\\u0010\\t�T\\u000fU�\\u0015��Ɲ}�`\\u000e�P���\\u000f<���F*��[M��XѲr,�'jd��\\u0018�\\r\\\\���T�T��R��O\\\\\\\"?�?�\\u0016���\\u0013�k^�5\\u0012\\u000b\\u0018��0���V�!y��'�jo\\u001bWK.8Xؔ_��\\u001e\\u0015ʓk\\u00156o\\u000f\\u001aƷ���i�o����n�U�\\u001bgσ4Jи\\u0012F,�\\u0002/�\\\\\\\"�ǚwI\\u0011K�B\\u0014^�y��T�k���\\u0017�����=M\\u0014�Zq.|�����\\u00073\\u0014\\u0019\\\\���\\u0000�SZ� �A\\u0004n\\u000e��E\\fΜ΃�u�S�1N�I��ޮ��6�T\\u0018ԯ&���Qva{�����\\u0014miO\\u001b��t����)��Z&(\\u000fAY�Zp���\\\\\\u0010I�Z�i\\u001f/���\\b��n�\\n'\\u0006�2H��|�xR%�\\n�d�\\u0000�\\u001fa�\\u0018�\\fxD(�Uڵd��:mR\\u0003ĵ���\\u0015r��\\u0014�W�É\\u0000|�4��e<����%����}8��V��\\u0016L��*�Ա�OK�M��I��D��|���y�\\u001f�t���ۧO��J\\t���\\u0001o����pq/\\u0013\\u001cr��\\u001dƗ����\\u00131k_qּ�\\u001a\\u0007\\u0017�\\u001dk\\u0002�6�M,%����UG��Z��\\u001bTb���\\u0007�Z���q�Hyq\\u0000\\u0005\\u0006ǈ;\\u0001�\\u000f�V9�\\u0005������ŀ��2s�%mx1�[\\u001a�O4 �6\\u0007ua��Y\\u0011���߅)���\\u0001�S���\\u001f�I��7U\\u0004���By9\\u0006���iZ~�#�\\u0000�ڨ�\\u0002��q\\u0003��\\u0004�P��з]��S�\\u0014�h؉\\u0007��zݻ�so'�\\u0000h�T�\\u001eI��w�ck���鱉l?��N�O!��G'�\\b0���2��5����Z\\u0007�Hߡ_\\u001a!p�h��}'a�y\\u001a�\\u0010:�P\\u0015E��\\n���j?�\\u001f 9^׭D�(^@�a�?��Ի\\u0015�\\u0014+\\u001d@'�(�~�\\u0002���\\u0012�,����ֽ����H��\\u0016)\\r��0ω�B�퐮.Y��\\u000b\\u001av�k*D�Yy��:���\\u0000�\\n�r�{Q�\\u0018\\t?�f?۾�:����\\u0014 �,�@<(P��rf�j\\\\x�=����}�������\\u0007��R= ��.��*X��lh\\u000e\\\\�\\u0004\\u0016��;\\u00007&�8�bć�\\u001b(ՙ�'Ɲr�A��q��\\u0016>5\\u0019y\\u0002\\u000eƛwP�,\\\\H:��!K�\\u001f��6\\u0005�y\\n100u����W�����u���k��\\u001f�\\f����yU���\\u0017$\\u0012mjXZ\\u000fR�\\\\�j|��eR\\u0018\\u0006R6 \\u0010j�2��E\\u0007c})�FE�T��}=I4H@\\u0001�f\\u001621\\u0007pX����i+A�qG\\u0006@}@l\\rj��!NړI�6\\u0004�\\u001a�,|+y1�#I����U�a�����H�h�|L��RƲ��Q#{CV\\u0007��_��B�@����\\u0013\\u0003��(�[�J_`Ef�\\u0016f*/��b��\\u0014��̓\\u000eB꼃\\u000b0>\\u0003��/�\\f�腋\\u001d�7?p��\\u001eBx\\r�Ȧ}�\\u0015LB@�!v,�n6���\\u0015�i�a\\u001eDy3;K$.?\\u0003�X�f6@X�\\u0001z�a�Y\\u00077�}���ڲ�\\u0000�%���0\\bk췰$iҜ\\u000bC�1H\\u0007�\\u0018\\u000f55\\u0004�*�\\u000eʽT\\u0012\\u0007�]F|�䐤�����~��wLY�XH��\\f|/z\\u001a�\\\\\\\"�gq�+۟\\u001a�,'siO\\u000f\\u001a�'\\u001aP�\\u0014D��Z��`�5���:�S�\\u0015��0^$\\u0001&ƈ�*Xʲ\\rV�|�M7�\\u000f\\u0002��(\\u0000x\\u0001j�Ƅܨ'�\\n;�P����l<h.�Â2][��ӥ1\\\\\\\"�\\u000b(��@>\\nG�+k\\u0015�\\u000e�kO�{��`bK�\\u0011���`�1E�\\u0017e>?��>9�C\\u001b��o��\\u0003cJG���\\u0000\\t����\\u0001���K��1̑���ؓ{ߠ�u�؜�#���R�N\\\\\\u001e�dir<�jY��}��\\u0017\\r�%i\\u0003�\\u0006\\u001aǿ���\\u001d$\\u0011��'�%Bڅ\\\\\\\"�ċ\\u0012H�5�6�in��c �Ƚ�F!�\\u001cJl:\\u001e����\\t���\\u0000�~�^jOR~ډ��d\\u0012\\u0006\\u0007[[ca��ײb�G$\\tϑ+��u��ʇdZ��X�W�=\\u0005\\u0017�\\u0004���:ڃ�+FF�� ����a�؍�Jىe�\\u0004\\u0003��^F����ڕ{\\u0015�x\\u0013�\\u0019TҰ��I�\\u001f�ѷ\\u0012�\\u0016�e�C�\\u001fP6\\u0003�aZI!�+\\u0000�\\u0016U*��\\u001d>T\\u0006k�3r��[��񤬞�5����#F\\b\\u0007C�H�C&LL:�\\u001f#�tx��eI�I�4Qv��t�k�Ґz�\\u001dM\\u0013�\\\\\\\"U�h���&.X�mI��\\u0013\\u0003�\\u0018\\\\o}+ˏ\\u0011@3eP�\\u0019��\\u0015�L8�[!]Ԃmp>W�NP��a�\\u0017;W���C\\u000b\\u001e��\\u001af�U�!їU?K\\u0003Ҽ8k4M65ʩ��\\u000b\\u0014o�&��0H \\u0000>�>\\u0015g/\\\\\\\"p{��������\\u001dũ�h��v��,\\u0006��&&�c�8�#P���{��Q\\u001b\\u001b&�\\r�7�֨а���\\u0015ޕ�\\u001a�����\\u0010`\\t\\u0006�C^�����\\u001e\\u0004װ/�:�~%���{7ouY\\f��Gm��>\\u0014)m&��\\u001f\\u0015~)�{�0\\u0014\\u000b(\\u0016�\\u0005q�#�k<\\u0012\\u0015؋�Z�\\u001a1�d��R���T[��ڻ��\\u0000���D/��`���n\\u0013�\\u0005z���7\\u0015B�<i�g�sb�b�\\u0017�\\u001a�ꤝ@����\\u0007�a����\\u001aZ���om�\\u0000����dd��w5�\\u0006��*A\\u0016�n(՗�\\u000ef�[u��S0g{�q\\u00074A\\u0006�X�\\u001a��,c�J�7��Q�\\u001as�\\u0012/�<���؆\\u001b�\\\\��\\u0012S�Fv>�{jk>��ƥ��A����C!\\u001brb��j\\u0017b�I�mAE����\\u001e�nO�^F\\n��\\u001e����\\f�\\u0000O\\u001f�%:��ʘ'q�U\\n\\u00141Qk�z�nߓ\\u0007���\\u000f\\u0017^�v����c�A\\u0018\\u0002��n���)\\u0011K�<���ʆ�E��_�A@�\\u000f�)��'\\r���\\u0000�_����-%��J��B\\u00062I�H��ҫ�-�?P*��\\u001b\\\\iO���\\u0000Wd���z��\\u000f�1\\u0003D�$\\r��*�I\\u0003\\r\\u0003}�����C�\\u0019g\\u0016*���n5\\u0014���r�P�\\u000e\\u000ev9��a4,c�MՆ⊗�w)\\u0014\\tf\\u0004\\r�U��j�~�ī0��!Z�#[ҙ�D�s\\u000beO���&��h��1\\\\����G*�\\u0011��mW�\\u0000���\\u0000�?`�T�LW\\u001a�lU��[��%S��\\u0000-��Tԇ&\\u0012I$��:��\\u0015���\\u0006�6E���\\u0002x���T��Y\\r��qր�.^A~$��\\u001d5�E�_�\\u0017�~Z\\u0016ʎ�Ī7_�|��@��J�\\u0006!\\u0014�_`4��Y=�-b�ij�g1\\u001fQ�\\u0012G$����߈&�e[������ح:�8�x.��\\u0013��n�\\u0000\\n\\u0013�\\u001c��-����\\b��\\u00056��G,�\\u0000>NC�\\u0007��?����\\u001a�ߛa#�Ñ�u�ȼ�����J����\\u001b�C�;\\u001a�\\u0010�ܛ��w5��\\u001e\\\\\\\\�|l\\u0017^.@\\u0002^�ǩ��\\f�42<M�!���\\u0015���\\\\q�z��)�\\u0000����b7\\u0004Qر�@UI-��1�\\n\\u0018Ǹn\\\\m�V��\\u0019�\\b@'`Oʠ���~�]/k�q��+rа�RM\\u0001�%3��\\u0000b��^>\\u0017��1\\u0004�\\u0004�f<��F��~����@�1U$(�n��\\u0004�>d1���؏*��\\u0012���d��Q ]�9\\u0001Y�r}d�<w����H�V7\\u0016��6�y��$ܗ}��\\u0000j���\\\\\\\"�ƶ;\\u001d��A��4��1C 7��=J��W��\\u0011�.W���粒2��b��р\\u0000\\n�V$l\\u0005&��Fq�W�\\u001d�։\\u001f\\u0012�&r,d6��v��M\\u0005)�9�Ə�.$̅N�_o��\\u0010����=����\\rxA\\u001a\\u0010A�5�J<7?�)�HZ'2��G��ƴ��Qb�f(��\\u0000�\\u0000���Y����BY�V�?}6V�c\\n?(��P�d�(�4ua���:\\u0007\\u001fP\\t�3\\\\\\\"���-����H�H�+{�\\u001a:n|AU%o�p\\u000b\\u0005\\u001e&զ^\\fpc\\t#os�\\u001f��'t�Mj>8p�\\u0001�BHY_�nI��,#PM�#�U'�6\\u0019{�Z���\\u0005mqkx�<n\\u0016�i�EŐ!ÍN��܇[iL\\u0006�(Sup\\u000f�\\u0015���bQ\\u0003�z���|�`���\\u0018hr\\u0011&#���ǉ�¾��R\\u0001\\u000fc��\\t�1�������Rn\\u0014�Ķ.R)g�EQ�(�~\\u0015�}/\\\\\\\"g�A��\\\\\\u0017uX ��]#�\\\\��/��\\u000b�6�\\u000f��Yِ�#�VT\\u001b(�Z��dd�ҳHW@w��@�p��\\u0002G�\\u0011jw\\u000ef:D��\\u001b\\u000f\\u001bQk�S\\u0005V���.*�pE@\\t�^��.2�\\u0016�a]\\u0004}�\\u0005�p��e-\\u001a���k����q\\u0010.ĩ\\u001b���n�׀\\u0013�\\u0017�Q2\\u0012�7�!Aԑ�R\\u0004oɽ��h�\\u000f���?eys�L�L?\\u001aM�\\u0018&Q]�\\u0000��S#�j�\\u0016���V1*q�����\\u0013݁�SyT�\\u000bЋ\\u0003���)\\u0004��\\u0018ܰ:�qT\\u0011�6P>B��2ʑ\\u0000\\u0005�n����T��)���95Ƚ�.X�\\u0011�\\u0005K%�\\u000e67\\u0016�Z+�J`5\\n>��D\\u001c,s�#�i?p��&hАc�\\u0006�6�\\u001c�\\u000e, d\\u0010�Հ,I\\\\\\\"�k�Z\\u001c��\\u0014��\\u0003�\\rhl\\u001e�.@>�e\\u001bx���'���,ĺ[m��SV�\\u0003���ڗ�\\u001b�5_�1\\u001d�\\u001e u���,ʚ33i�ar?\\u001a\\\\�\\u0002\\u000fy/��k�[�{��֠kj*.dF��\\u0000\\u0010z�h�\\u0010ou�\\u0015a\\u0011mB\\u0013�\\u0005�nB�\\u001b�\\u0003q{\\u000f�t\\u001d���F&���u|��j\\u0000He6`A�Ҽ\\u0003O,,8���zV��\\u00144n�E��s�*��x&D�5ꖿ���4�t!�a{\\u001b}�k\\u001c\\u0003\\u001c\\u0019\\u0006F����^���T\\t�\\u0004VC�+|H5^\\u001c��;^�4΋^@�\\u0003�\\b��\\u0013J\\u0014�\\u000e���f�%-\\u000f\\u0013\\t������Z�\\u0004��\\u0014�5\\u0017�����֥�obB�r\\u0007u�\\u0014' Mk�X}$��j�0���޺!�{S\\f.\\u001e�F^e�}\\u0006�jh��N����ֱ&��i�xK�ۊ�\\u0000�\\u000f+xZ���HՆ�;Э*G\\u0001~ԣ�5��j�X؋\\u0011��^����_��s�H\\u0010J��C\\u001f�\\t�r�L�VW����j�|�jU�\\u0010>8��Tg�\\u0014�����Q���R�����\\b��ن|uy��\\tV\\u001b��}W�ֵ�y�u�e�f�@�Xt��AB�r\\t\\u001b:\\u000b-ȯ\\n��\\u0007�|�\\u00189\\b�.X�(8�\\t^5\\u001e��(!��U*Ӵ\\u0003�H\\u0002��k�\\u0007Q��C��t3�5\\u0004\\u0002��:^����5_I���|*�\\b���t�R��\\u001c���_P��*�\\u0000�j\\u0006�\\u0000\\u001a\\\\���6�\\u001f��7뿝5�B����-\\t��J\\u0018�H����j[ƉD.@\\u001arگ�uY�\\u0013)([�\\u0001� kk�\\u0000\\u0010�z(�+�\\u001a�\\u0011\\u001a\\\\\\\"0��\\u0015��\\u0010 K\\u000b����\\u001aU7n��ɉ���\\u0003�$\\u0010�5�\\u0014�q�\\u0007�/�7�k¬��\\b>b��K���k%�}V\\u0006��2S\\u0017&\\u0006P���R�\\u0012\\b�Ds��\\u0016���\\u001a5p��FO��&�oD\\u0015ʆ\\u0005�Ƥ�\\u001b�\\u001d/N@Uc�kύtXr\\u0001���s��\\u0002䞦��Ev\\u0005�{��h<��#�\\u0015J�\\\\\\\"��!���\\u0013����\\u0016_�;�n\\u0004�e\\u0014�\\r�X_{�U�:VR��\\r�����I\\u001eV�\\u001a*\\u001d�次��\\u0018�їkԸ�Zv��\\u001e\\u000e��w\\u0018�p\\u0012�\\u0000.��#�Z|�YD�ny\\\\�n��\\u0004/!\\u0000\\\\�T��ʣP\\u000e�\\u001a\\u001b٣5l�ԣ�cSq����yV�Ie\\nG�\\u0017��\\u001c2��2.��\\u0007����7��8�jM� \\u001f+�ZbDc�Q6ો�!R�'a��m\\\\\\\"�a\\\\\\\"+�D�_O\\ng��\\u000f9\\u0010��\\u0013�mK1�x���@�j��0\\u0016�J����)#�ȭ\\u0010��Px����X�\\u001e,H�D�P��~���Q����1�}�\\u0004iM�#�7�\\u001e���\\u0015jF`�'x�\\u0003鰧8�0�,�΂���!\\u0005�V�5R��OZ$ �ǈ��\\u0018�\\u0018�\\u0001�rq^57�����=�)��C�\\u001b�j64H4\\u001a\\u0013��o��Jf�U=�}<��\\u0010u�4=�rTk��' �,|+ �E8'C��YR�1N��Θ��\\u0017�n\\u000fQ�\\u0006;m��!�½�2�\\u0019�շ�Js\\u0006\\u000et���\\u0000.Z�\\u0000|M,o��Y\\u000e?��K\\\\��Z�I�AdvQँ�W��J��ač��d\\u000b\\fa\\u000f��5\\u0016�_\\u0015������y(�H�.ŭ�\\\\\\\"O�U��*��OH�\\u001d�\\u000e\\f�f|�c�\\u000fO�\\\\\\\"@&�\\n�4��2m�\\u00005�견\\u0001��6��LfƊ,�R\\u0005\\n��k�\\u000fZ\\u001b'��^��R���6bǓ\\u001b��ךP�M\\u001b6�e\\u0015p�\\u000f% �\\u001f,�F\\r�'`O¡V\\u001a�G�Qݧ&6�\\u0000G6\\u000fs�����\\u000b�8R\\b_P �\\u0010��w�\\u0010R��\\u000fA\\u0015J�&W\\u001e�KU���U�$��\\u0004�4�<\\\\\\\"Qj3fkmsҲ�(K�ꄀ\\u0005��r�:S̓Ov�9 |�\\u001b�boӳ?�f��5[\\b�\\u000eNX\\rZ�|��\\u0000턳��5Aa�\\u0000x�\\u0000� �4.o�\\r)��옓�i�R�m����E���L4ǙR��[�U\\u001b_�q� \\u000b3j�o!]\\u0017x΁�����)�A��oI\\u0006£���;�{\\u0017�eh���\\u0017\\u0016\\u001bt����\\u0002v����K\\u0011qq��s��yZ5(�\\u0019׌�Q}ǕUTX�E��edM\\u0019���n���IV\\u0004-��\\u001c�`�:-���\\u0018x�$���\\u000e@�\\u0015j��i��B0�a\\u001br��[�c \\\\\\r.ojΥ\\u0011�\\t̍b)�\\u0006���ӽ���7��mYԡ(\\u0006��r_�����i�����̖YRI\\u0016D\\n̊\\\\���������Ր:�t�j�X�пt�{�2r�%&\\u0017�$X�Z�{�d9o\\u001cXܥubmă��8�����o�\\u0011�\\u0000\\\\\\\"\\r���\\u0006���~�u�K���3\\r�\\u0000���R�Ur\\b���C]\\u000eVs����?��'�ns�x��z�k8��lk�Z��m�q�\\u0010�\\u0015\\u000e\\b\\u0004\\u0003� |�賌sH�9��x�qj�M2��#\\u00006\\u0000�*����K\\u001f\\u0012o[��N<�\\\\HG._�g�f�\\u0018n��+ۂ�:�W6%�\\u000b\\u0007`\\u0006�\\u0013^33\\u001b�,|I��n*�<.UX��U\\u0003��ѱЋ_�W�;x�\\u0000��i�\\u0000�\\u001f�!I\\\\\\\"�\\u0004Nۚ#��y\\r��:��90Y'C\\u001bZ�X\\u0010m�}\\u0019��K�\\u0000|ץ����\\u0000�5�\\u0000�K��?�\\u0012ؿ/(Ih����v\\u0017]��Nb`q�\\r}5�\\u0015�&��m�zr\\u0001J��<K\\u000eDV2�t\\u0000���\\u000f�>튧\\u000e\\u000eCKk���q����,97�+���ݎ��kSGX��^ݟ\\bǎ\\u0012�\\u001e!�A�CW���.4���V�\\u0017\\u00166$��\\\\\\\"\\u001bU\\u0001�WD����#H\\u0014\\u0017\\nA:\\u0013�D��R\\u0014��\\u00129�z|�\\fA�����q�\\u0004f?����4q���C�#L�Id\\u0002FԖ��)\\u001c�'46��:׽�\\u001fA���?e\\u0000H5K�5$=N����\\u001e�\\u001aR\\u0000��k�O�2\\u0015���-��r�a^�Q\\u0018��[�F�\\u001a\\\\\\\"��z�y#Y\\u0003!\\u0005XqaC�����\\u001dl6�q�d�{�\\bF�N��)^B7\\u001b\\u0015��5��S\\u0010.\\n�Y\\u0002ES�����+�ȨC.��ִ�������2׉\\u000e�������s��V�9r����__$��\\u001cLp�r���m~]\\u0001���\\u0014-���k\\t�\\u0000ޓ�G�WTr�zng0�vS+G���8�3�I�ȓr\\u0012/��\\u0000P��\\u0014K\\u0013Mi67�ƅXEO/��8#`�T2��`A�11\\n7�j\\u0007\\u0010\\u0001�\\r��\\u0010���Q}E=\\t��y\\u0014��\\f\\u0014#�\\u001b\\u001bu�A(i\\n\\u000fͱ�r2�9f\\u0017\\u001e��[¥:ي�p?ǒ(�.��\\u001a�Qn��>lm\\u000b�k?6#���\\b�R�M�~��mjjt�%�#܉T\\\\\\\"K\\u001b�>�qDbw��\\u000e\\\\ep�r&�ز�6�i��f��x\\u001e��:��\\t\\u001ecj\\u001a\\t�|����\\u0003��6��F1�.�\\u001fB|M>X%�\\u000e�Ue�b�i����A�;�ؑi6\\u0006��s���:s_ƺ|\\u001br{�\\u000fơT�\\u0014e\\u0019\\b\\f/�E��u\\f\\\\q�`/�D��O\\ng�f$�|��y)�\\\\ު���2�h�m\\u0006�\\u00000~�32{�#re\\u001a��ùB��G�\\u0000�>\\\\\\\"��Hk�\\b�V�\\u000e��{�Û/�\\u001f�\\u0014\\n4 ���t�\\u000e)b����\\u000b\\u0003�zn$\\r\\u0019����\\u001d4��檱�Ḍ�\\u0019\\u0011���0G z�Vi\\u001ab�\\u000e�A \\u0011���5J\\\\\\u0011�P�lf&��\\u0007o*\\u0016c�T�w:�u�$\\u0010A�\\u001b\\u001a\\u0015JnT\\u0004�Acpװ��ǥ\\u0002�B.u�j!�%m��Y2�\\u0016aqDd��\\r���:\\u0018�\\u0000�o�\\u0010����:\\u0002�|M*EX��q>\\\\\\\"��:�\\u0014�\\u001d�'I4W���B\\t�קZT�pk���4M\\r0䮿�^'·T�ٷ�\\u0016'\\u0012)�\\u0004�\\u0000�Մ�\\u0012� e6��@\\u000e�t��@#޸�Ƙ\\u0015\\u0007p\\u000fƕz�U\\u000bp�c����)�'���b�L@\\u0012\\u0001��ʯ\\u0018oR�B^��\\u001b��QUWE\\u0001G���[ӵ[Dɐ\\u000e�RAvM��\\u000b�Ɯh�A�F�s\\u001fP��N�I@IH0ݦ\\u0012?�T�\\u000f\\u0013M\\\\\\\"��q���՟�P���/����~�E�(�d\\u0015����\\u0005�7��\\u0011���@S9�L�\\u001d�\\u001d\\u000f�\\r�!�uK�إe���Ҿ24c�\\u0002I^�>\\u001fe\\u0003\\u0004\\u0001ˉ=$l:ޟ\\u0001`\\u0000�i^q[���\\u0000\\n��\\u0013 p,qC\\u0017&\\u0001�#S�kX�T�4L���E\\u0004z�S,\\u000e@\\u0011���\\u000b\\u0010\\u0003!\\u0000��):�G8\\u001bC\\u000b4�aB�HtU\\u0017'�\\u0005\\u001c���\\\\sÛC{{f����G���~+]��aw�\\r��U���٧\\u0007̂\\u0001��\\u000fH�9\\u0003��֜Kţe�_�J& �!\\u001a��A���KGW����Mq�-=B�h`Ίg�\\u0015���J+C �\\u0016̅G\\u00126�����y�^)#*�\\u0002@�N\\\\\\\"v1������; ��a��\\u000e�� �\\u001e\\u00165�y\\n�\\tT��[t=(\\u001c�$�;�ŭ�����Bi��-?�*�^TA;�\\u0016�[\\n�<�$�+�*��\\u0007Ʒ[�k��׶\\u001b�Z�v�\\r0[\\u000eP�\\t#h��g��O��v�}�o\\u001b\\u001f�\\\\��\\r�\\u000b�<j�w]\\u0005�[Q�fyȆH\\u0010\\u0003\\u0013\\\\\\u0003�ҧ�L\\u001cB\\u0000�C)��y�\\u0011\\u0002#�M�V�q�'6r��K\\b&\\u001em\\u001a��?QL�L��;��T�6�>�I ��X�����\\u0015�\\u001c\\u000b��U:h=r4��C!��v�25\\u0006�{�\\u001f�X`�\\u0000��\\u001aN�Uy��0�Zo9\\u0005�����pu\\u0011��-��Vѱ\\u0005J�u���6\\u001bR��f�Ԅ�Rc��\\u00108����Qx�ܰ�\\u0006���hn��\\u0000��\\u0000�h�\\u001c/���>4�ui���i�\\u0017���*\\t[�`\\u0011��\\u001ab3�d�\\u0012\\u0003\\u0013-����?iEn���\\u0014�O���w�Q���h����KZ�T(OC���4\\u0011��f\\r���KyR�v�=�ۨ#zҥC떜�9\\u0001H�\\\\\\\"9#�\\u0014:Y�mu��* \\u0015T�����1m�DⰗQy\\u0006��V�(�(��A�x��5�\\\\\\\\\\u0002�\\u000f�\\r�\\u000e��RH�޽��^G��\\u0004Q,�I�\\f>�ҵ�X�9r\\u0015@e^7\\u001dEgP뾴ӊ�&3!\\u00107��\\u001e\\u0015�l\\u000b<@���c���\\u001a;!��j�\\u0000�����\\u0019H\\u0006��V\\u001dN���\\f�l<V�K�#/$S�\\rm@�����Iܓm�R�%r�\\u0006L2K+]\\u0018�7\\u0016\\u0006�5c����e+acК��\\u0000��|?�\\u0003��\\u0000�_��\\u0000\\u0013Q^�W��\\\\\\\"s�\\u000e��A���\\u0004im�F��\\u0016���κ,\\u0015S�\\u0007!�\\u0005��C~�P ��޳�Qn�g:\\u0014�]W\\u001dJae@1\\u0015C�u\\u0016`M��\\u0003�4s�g.�%Z����D�������2@�żj�\\u0000\\u0012�I��A�\\u000eBK\\u0010U�1�\\u001a�>U�t\\u001c��_�\\u0016\\u001fm,�\\\\\\\"X/�5�o�;|j���J�\\u001d��q`(���LL�B��\\u0001�[M(�y\\u001d�Y���o��]�Q'����GA�\\\\�n�\\u0019\\u001eN�\\u0000��9�C��\\u0002g\\u0011�3;\\rB�@d�$s0u*I��X������4j�+zA?�x��l��!�݀��5g#k\\u0000|]%&׷�m}��bs\\\\\\\"z��c�U�\\r[�E���yl�$o\\\\\\\"\\u0005\\u00014ӏ���\\u000f \\u001fTeQw��]�Q\\u0006�Ml�1��Ɨ\\u0017SۦV��\\u0001\\u000e<��q\\u0013�\\u0003vz\\br������ڳ첮?t�Y\\t(�-mzU���_�;ikZ�|,U�!\\u001f�#p\\u0007KkN\\b���@�,>(�ʆ�9��b��^F\\u0000\\u0001b/����l����_©�%25�� �$V\\u0001�o\\u0011XL\\u0014H��P��Tq/�\\u0002\\u0006l�H�\\u0003\\u0015��\\u0006�\\u000e�Z-�1�1�?�cɓ�Co��T�\\u0010�Jw9\\u0003d\\u0016U\\n@��\\u0003a@e��\\u0018��bm�jbU[�\\u0000�kݴ\\u001bS�%��\\u0013�9���[x�\\u0001�DfcĦ%\\u000b�U \\u000e�¥(�!p�\\u0006,짛�H6���}\\u0003��y���E�����\\r�\\u00120^A�`���\\\\\\u0015���R����\\u0016\\u001a|�ׯ�ŸC�P�Y�'���ݨ���M�\\u001c\\u001f¸\\u000e�9��r�o�3^0v��eL��{�L�ߡu�\\u000f�%$���D1T����_����0Dq�p\\u0018մ�y\\u0006�\\u0012���9(�4����6ti\\u001e˩��\\u001e�\\f��,VWV�\\u0002\\u0013k�q\\u0016���7����i�\\u001f�]xh.��Q\\u0000�+%:\\u0013�V�dX$\\u001c�HA�I��{�ī\\u0003I��e\\u0017��T�C�\\\\�?N�\\\\\\u0007Qf�ԑJ{�\\u0013dd4�!�l\\u0001\\n\\t:u�1?�1��u}��7��L`�\\u0010E\\u0016J%�\\u0017_2�~4�\\u0007)���*X\\u0016�H�N��8s����\\u0001�@v��*mh��!�\\u00012�i\\u0018�{\\u0013{y֘3�jbr\\u0014n\\u0018��P\\u0019�8�b7�\\u0000n��xZ��a�QNG\\u0007&\\u0000/�)�@nit�d��\\nlN��BE��e�HM<M\\n�\\u000f�,\\n{a��\\u001dv���9��9\\u0001K�\\u0000\\\\\\u000b�S��x�ʭ��7���Uk,N�\\\\Yr#mQ�؂\\rk�\\u001c�yČ��zE�i�q��e��C�5�g6���\\u0000\\u0001M�1\\\\\\\"V9\\b#͉�Q8�%H�\\u0012{�\\u0007\\u0010y\\u0011�#𮏺�pI��o��TvC�w\\u001f�+T��\\u0016\\u001c����\\u0015n�X\\u0001�4�\\u001aV�@�n��S��7t|\\\\\\\"Sb����$ۊ4�5�\\u0019\\t�\\\\\\\"䋰�ʶ��Ǌ&�����N�4�/��M� �oG<H��\\u0006\\u0013e�\\u0017$J�o�HdF����<t�\\u0013(\\r�v_�I\\\\WeсK\\u001f���7�\\u0015xD4�,\\u0004ʪ5&�\\u0003S\\u001b.\\b�y�v�N$\\r�w�H\\u001d\\u0014�}���w\\u001f�C���\\u001a���ז;��\\u0010�c�\\u0019\\u0015����쥋\\u0012I:��\\u0006��6��?�(���~\\u0015�q���'2�!�\\u0001���U\\u001ai��Z�\\u0018D\\u0000\\u0004��\\u001a\\u0007\\u0013�o�<Ð& �n�|����q%\\fE>>A&��t'�k\\\\x��\\u0012A�·Zg����.��+�b��ojUr�����ĭ�}5�f�i��\\u001c����k\\u0015���\\u001a��5N�|�+7��,�H%ƚ�9\\tao�p-��E`�\\u0012d{�Һ��Tg<,\\r��\\u000f;[\\u001c���jS����\\u0019K���\\u0017\\u0016a�P�M�T�\\u0010�\\u0018\\u001d\\u000e����ɔ7�}G�1ķ\\u0002F���SUBm���Ǒ�X\\u001b��8�7�{���&RC)�\\u000b�\\u0017�h\\u001b�\\u0013^o�U��Bj�ɿr�Ï�E\\u0002Ĥ����Q{\\u001a�\\t�\\bʵκXU\\t'}k|_��Uٲ��\\u000f_!\\u000e׬��\\fC=�\\u0002��B(<�����\\u0000m~4�!H\\\\y���z�\\\\�9��,WRG^���`i��N���#��(�>JGPlt��ǿ\\f�\\u0001�P�C�;\\u001d\\u0000�\\u0006�Ě[#�(r��\\u0011��Y\\t\\u0017\\u0005��e [Z�N\\u0005ʟ��xVh�\\\\��Z���H������F��c8P\\u0007\\u0012\\u0006�|\\t�ssUaov'\\u0017\\u0016\\u0001���kzg�(�&;�C-ӓ\\u000b7����k��r�Ю��H(*u)��Q�\\u0006L�@�\\u0003\\r\\u0018\\u0012<h���+���\\\\\\\"����$:\\u0006�:��eb\\u0018�s^`�\\u001e�\\u0014<��\\f\\u0006�ҳ�ǅ�\\f��֥�k\\u00041��҄�&��\\u001b\\u0016)&\\u0013:�:x�ޥ8\\u0014�cD�Fr>5\\u001dS�\\u0016\\u0017+�;�zԢ2KH�8\\u0016 �+C�$�#&��\\u001c���\\tR��ڡ�\\u001d\\u0004o�ӈ�\\u001e̱�\\\\Z�:��\\u0011K2}��TF\\\\\\\"E&�M�\\u0005Zc�\\u0000�>�Ez�k:\\u0014�%�\\u0013/!ø\\u0005��+�\\u0004�Tv[\\u0000�}�h�ʀo�a��#e���U�\\u0011�v�d��*�F\\u00167��R_�x���\\fD�\\u0011�(��-җ��'�#-�\\u0018�g�%�\\\\�ZGgn\\u0000]�&��\\u0010\\u001a�I�b�Ö^j�\\u001bg\\u0000ڋ�P�\\u0012o�]S\\u0012T�\\rq��>4���\\u001a�5\\u0016;U�@\\u001c7\\u001b�R�oP\\u0003ƙb�\\u0000��?��\\u001e �Nr\\u0000�\\r��,B����탨���EKxȱ�5�<\\r\\u0005'�I$��5�)���.\\\\qa[F�\\r�j`�\\u0016I\\u0014���|��I#�n�T�U�Q8$�\\u0018\\u0013���j��A/#.�\\u0007��C�\\\\�E��/�'Jb��%��-m�oT(��('�S\\u0000H\\u0019�h�ׁ\\u0016�\\u0003]\\u0006V~R��\\u0000�XZ�HT\\\\��t�J���\\u0000�\\n�FY\\u0003r՛[��.\\t��`|�^���4�I,\\u001f�S���Kgȉ��u\\u0012\\r5;yU�\\u0007\\u0015@u���2�n6oc^�\\n�cz2\\u0010\\u001b�[��\\u001a�5Vm%/\\u0012T��)��\\u001a0}��b\\u0018���Nq�wBJ��\\u0006?�7\\u0017����\\u0000��\\u0001Fե\\u0010Cˑ�ȹ\\u000f#_�N㭀���\\u0000��2�\\u0006�<sI\\u0015�\\u001d\\u000e�׏#9���Q\\u0019\\r���r\\u000f����q����4�\\u0007[Q\\u0015d���)*��\\u0019�3D,��{�Q�,~��{�*@�׳Y�]�ƅ���\\u001a�T��\\u0004����n-�bV�~���S\\u0005H\\u001f��Ib\\u0014X�q��4�\\u0016\\u0018�q�B�\\u0015I*t؍\\r\\u0000ذ\\f)\\u0016;{�\\u000b�6�\\b<�<+~��$�\\u0016�(7�k��\\u0001r�\\u0000��5�1\\u0000xZ�G�\\u001a��\\u001b��H\\u001d(2m+ʺ;�o�z{\\u001e~\\u0003b���Y@��\\u000b��mQ�i�\\u0017\\u00151#���V!��\\\\ڃ�9x~��OX��q\\u0016�\\u001eh��p?�-t���2/�#\\u001a��mjZs2�*\\\\\\\"\\r�Ϻ���n?�\\u001a!��uK��𥐙c�\\u000b\\u0010I&��ܠ��L�G+��j���L,�6���p��G����*<H���F66*�\\u0018�|�\\f����\\u001c�����\\u0000���V�ZH\\u0016U \\u001d\\r�\\u0017\\u0004Vv��Z�^�\\u0002Ë�F��\\u0002\\u0006���%�v6\\u000e��WI��b��X��;0$\\u0003��4�1�s\\u0003�FN�6�5u�VԾ#�?\\t.u\\u0016'律x\\u0011�33�\\b�\\u0000�Z���J\\u000ec\\u000e�\\u0018PA\\u0004\\u0005қ��\\u00048��d\\f�.\\t\\u0017�U�7\\\\\\\"�w�Շ��dǌ\\t\\u0003(-s��ƹ�y\\u0003\\u0015>�:WA��\\u0014��\\u0018�1b���b\\r)���[[o�Qٮ\\n�� �I\\u0014\\u0013���,p�\\u0016�X��Nz�\\u000b\\u0015\\u0016���\\u0012��\\u000buZ�Ed��\\u0005��O�=)SL�����c'�dg\\u001f�$ј\\u0012cH�^\\u0010�8\\u0017\\\\\\\"�\\u0000�oƱ�,ψ!a����+\\b\\u001b�\\u0016\\u0017RE�4�èfdJӠ����m���c��m\\u0018n%��bIޕ��܌��Mɦ�Yp�!>��׸��iJB�{\\u0001gv�N>��Z��Qp.\\r_��ʊH��U�\\u001a�!*\\u0002��#��eA�5\\u0012\\u0006�I$k�\\u0016�U\\\\���s\\u001c[]�ն��t\\u0005�,%Lj\\u0011��tҗ/���'Mǅ\\u0017ܥ�dES͓����&d\\b�y\\r�i�f��&�U�sT�����mA�U�\\u0019���H7��\\u0015��!�P\\u0000��Z\\u0019Y�Y4�F�gf�$�<��zl���p�͘��\\u001d��Ē~�G�L\\u0010�\\tck�T:\\r\\u0005���l�\\u0016���Qԫ�[~\\\\\\\"��,�F��R\\u0001nW���h���'���\\u000f���\\u0011��n\\b�Z֖J�O�\\u0016Sm�#\\u0003\\u0018�7��2�R�\\u001f\\u000bQ'\\u0014G'�*s\\u001b�\\u001b�\\u0017��\\u0018����B���J:L��z�\\u0015���ȰV8�e�,!�e\\u0001��n~�󩛊ܖ<8C+��&Q�/��sf�ef�kXU�\\u0016I��\\u001c�\\u000fI]G���M�\\\\\\\"�\\u000e\\u0011�\\u0014|Q����czm��\\u000eD\\u0002G\\u0001�o�_K���l�B�+q7\\u001bl\\u0001��:\\u0015��\\u0014��\\u001e\\u001f*\\u0014������]I�۱�$o�~l�ǧ\\u0013a�bݬ\\\\�EO\\r�o\\u0011D`e��2d�\\u0007��V��7�[#;\\u000f�D��-{�mT�B`a��/(V@~�`\\t޵���*��*�h�,G�CE���TH��/��]\\u0001��{�\\u0013���(,.c\\u001a�m�g6��T(��ǻ$�RV��&\\u0004i\\u001b�$�\\\\\\\"��}��B\\\\\\u0005�ӭX���ok\\u001f1]?\\u00180̙\\\\ص��d��p�\\u0002mV��\\u001a0#\\u0006�±�I��d\\u0004\\u0001��Z��\\u0017#���.\\\\u��$ ���@w'��\\\\�A\\u0006�x\\u0011Y�eF�\\u0011�[z�3��J�\\u0002��s�\\u0016BeT\\u0007B@�k�F��.\\rV8�d��eR\\u000b\\u0013�S\\r=ʕ\\u001b\\u001d&.\\u0006\\u001a\\u001e2��O�o�j�t�1�\\u0006�\\u0004I\\u0019�\\u0006\\u0003Ʃ6l\\\\��\\\\\\\"��\\u0001�&�2\\b��t\\u000e\\u0019���,�L�q^Dy8�\\u0017`L\\u001b5���J����F�M<L�W\\u001f\\nN`a�\\u0000l��\\u001f;�U��vIh{�\\u001b���Wf\\u001d|��E��<�՛�'�\\u0002\\u0000\\u001cx\\u0011�5c\\u0014�6�٬,+BMV@�*���u6�$�4,tڦ\\n*F]��J7$��E�V�̌d-�Z�\\u0012>\\u001bԦݠn�U9Y*�p:��\\t\\u000e�_z?�³f,s�%*���V����\\u0014(���8�vЊ�gę\\t>0�-�\\\\X\\u0010EW\\u001c̈�>\\f(HD�\\u0002F����F� ���1&�l>5Ц^.FJI5��,U��iG�b\\u0013�q\\u000f��[�\\u0003���mF�\\u0012H��\\u00152zK\\u000eHJ���\\u001bWA�#l�O�\\u0012W���0ޔ��&��\\u0019X�\\u0003�#`:kN�$���!����\\u001e'β�v���ƽJ��-\\u0000�vI\\u0019\\u000bݐٵ���\\u0019c\\u0018�)Бv`H��I����\\\\331<�7��\\u001ei�\\u0018�F�\\u0003m�֪\\u001b�Ϲ2�<\\f=�%�I�����\\u001d�\\u0017��@\\\\\\\"<��\\u0007k�\\u001d-�C��\\u000e6R�G\\u0011�q�Q��A\\u0014��QcI��X�=D��_�bu���X�D/�Xo@M\\n4���/z(�\\u0016\\u0003��t�Z\\u0013g�\\u001d�Bޑj�\\u001eDN�t\\u0004\\u001e��B��\\u0013lJ���c�,ovC�~\\u0015j\\t�\\f�16��u��Q���<�\\u001e�4��R�&��:Q\\u0011���\\u0017\\u0016���*�\\u0019.�#�\\u00122�]�M�\\t�����\\u0000\\u0019q�#߄�\\t���iXˌI\\u0013����l:\\n?�����F��\\u0017��%MՆ��T������+�\\u000ea&?j&'�Z�\\u000e�Tp+�6\\u0016^�7���1�o�\\u001d�X�\\n�\\u001a��\\n\\u001a{\\r9�A\\\\��\\u0010��[z\\u0010Ζ�ݛ�\\u0002�VK���\\u001a\\u0013�Խ��\\u0001\\u0011�q�҅1�pi\\u001c�n\\u001dmmE\\u0012���yG���6\\u0007��P0C0c�x�-�Za�)������\\u001a\\u001c��Yg1B�k��\\u0017��2B֑�}��\\u001fܣ��)\\u0005�\\u0012<��C��\\u0016\\u0017�\\u001e7���\\u0016\\u0003�f\\n���oX�;.��k��ճc�PY.��'��T\\u00102\\u0017!��v��Ȉa�i/�\\u000b���5�����\\u001b+\\u0015\\u0000�V=��0��X����\\n�r�#�7�#o�h�\\u0011!\\u0011{L\\u001a)}%��\\u0006�|��ln��Gpu (?}\\t3\\u0012ŀޱI�W\\f��\\u001a\\u001a��JPk*��I\\u0005k%iU�\\\\\\\"H�z�ٸ�n\\u001a�)��V�U�(!n:֭���ITd��\\u0016&��\\u0002\\u000b�\\u0003�+\\u0018�A��yV�WxO�\\u000f#cj�9z\\u0016�\\u0016\\\\��[���K���+\\u0019s\\u001ae<dn$�\\u000b\\u0013K�e7\\u0005[�5�42,$�}F�u�U�+A\\u0016-(����q�b\\u0016\\u0013\\u000b�hưts�O�^\\u0018�x�\\tҦ��-�3v�\\u000fJ�zڗI+��\\u00016\\u0006Ĕ�F9E��E\\u00032�'c��&�N�VE����87Fb�\\t�b\\u0001\\u001f\\u0013]\\t��A�l<@&���\\u0019\\u0013�l\\b'N��W��\\u001e+��\\u0007Q��о�oa~f<^�$P�\\b\\u0017\\u001anmX��V�E�o�4B><�$���47���@�JӃ���\\u0000\\u001a���r�r�0\\u0011��4��{u���\\u001c�t�򋳛\\\\���S�����n1\\u001e��ŏ�42K2\\t\\u00187\\u0011�P\\u0005���M��H�\\u001e;�R~�,q����\\u001b� \\u0018�B\\u0000��\\u0007+\\u001e�Ȁ\\u000f�\\n\\bZ\\b\\u001a\\u0015�6DHđ����Q���d**1\\u001a2�A�\\u001b&\\u0017�WV\\u0000\\u0017&�K�֟��DC0�\\u001b\\u0001�h��\\u001e�y\\u0015��N��x�rɍ\\u001bԬ�\\u0010kpE�ڇ�Y2Q�uF�z0,��LUYd`H��J\\u001f1bM#\\u0003M\\u000e�֝�Q:)��A�^��Y=^�4��\\u0011�\\u00052[��}�_m��K!sb�)�:�C6�A[�\\u001ayU�y`FT6�o�VWO��JG%!��'`\\u0007\\tc6fM7\\u001d\\b�Y��4�\\\\\\\"yL{q��\\u001b뮵PrDŬǖ�0���dRT�GQ{Z��Sz���xXY\\u000e���Bi\\u001c�[-�\\u0000\\u001a��\\u0005E��i�&F3`/\\\\\\\"#�1g�V�P��\\u0019p_c��Q���Z���N��%:��GwU\\\\\\\"� }�{�) ���B+Ñ\\b�\\t\\b&28�k�h��BTZE#����j�y�]I���<X8K2\\u0019�����鱤=�\\u0018��0rL��s���馝�e|2�0iI\\u0007���7�|�\\u0018\\u0007��s�C}ke�OP��#�$\\u0012z�Z��\\u000f\\u0016�����\\u0000�\\u0002��\\u000e|}�Zm{��$E\\u000b\\u0006^`��E\\u0000W����V�$)vb\\u0001~�x^�����$ko\\u0010-@K*����\\u000e�/Z���ȷ�Sk�\\u0012�j�ɤX�\\u000fHo3�Vha(@P\\r�#J��\\u0011�qq{X�E�\\u0016���CM\\b\\u0016v\\u0010\\u001b���6�O�b3K��!,���|����6#��\\\\��\\u0014�\\r$�e��\\u0000)�Ʃ�\\u000e �281\\u0000=#AXK\\u0010vPI\\u0017�]6�S�����Y2c2/\\u001dlM�ʲS&�\\u000f \\n�a�nz5�Zh#gP�Qc{y|hg��G���\\u0016��m��\\\\\\u001f\\u0000~�Z?�ԕ�)�\\u000b$�y�l�V\\u001c�ۧ��{v1̓�~(�sm�\\u001eB��A�\\u0005���n��xV���\\u0015\\u001f�\\r��|z�T)\\u001b��ҿm�4R��,,�؟ƹ��\\f��7�Tz\\u0018\\u0013\\u0019א\\\\\\\"����i�q#��s���\\u0001�d����,�\\u001b��R�dx\\u0004�&\\t#�\\u001a�0��®�\\u001f\\rt������\\u0001`[��Ʈ��S��qT��Ia[Ɓ�\\u001bjj��/\\u00125�󭡕\\u00120��)Zc\\u0007_�~/�o�Ǐ\\u0007\\u001c�������\\u000by��\\u0016\\u0004\\\\���\\u000f�j�2n\\r���F�\\u0010\\u000fq�1�����͠�ڧEmU�em^2Rlx�Z�/m\\rR(b<P�\\\\�\\t����b\\u0003r'M5�\\u0016Lf���\\u001bpN��Rc'\\u001d�I62'\\u0000\\t[�\\u0006��֘'n��On\\u0005\\u0002mӑ$���y\\u001e�ғ���U>���\\u0000ejr����H ��\\b�i�\\u0012�~O&�RER�M�ao\\u0001Cd�\\u0014c�������w�\\u001d?�\\ny�ܘН�Y\\\\\\\"g\\u0013i���*���,��\\u000e'%N��aX�������I��Ew@8��\\u0017;�Z]�$�H��ăI�L\\r8yR�p\\u0002�)o�ړ�Q�\\u00066\\\\\\\"����T^B;u�\\u0004�ڸ��\\u00000=ifr<A�v���۶cO�\\u0002s�0Y��b~t\\u0016wn���\\u0012#\\u0000Q`T�1�\\u0006���BGǂ\\u0017k,\\u000b�@��G����j\\u001eK0\\u0016:\\u001f�V��)9���\\\\\\\"� \\u0016Q�x���-��\\u0010���\\u0017��f\\u0000�\\u001eu�Ec�\\u0013q\\u0004��s���;�C4%\\\\\\\"��Y��_zs\\u0005\\n!�O\\u001d\\u0010u i�SI{q�\\r�}`\\\\\\u000f\\n_\\u0007\\u0014\\f�4ak��0�|bģ�k�Z���\\r�\\t��Ȋ\\u0006��m�����ۦ�\\b\\u0011C�P\\u001b�\\u0006��ꥱ��\\t\\u0014<v!��,E��c�D*�v�\\b*N�\\u000e��Õ�J�\\u001a��9p�#��k{�T��<mY��*X��\\\\�_�B�@b���7��2�eW?\\u0002֧�pE�ܟ\\u0001�й�Rʦź�����\\u0014a���i����+�%#p\\u0005\\u000e'sr]9\\u0015\\u001f�K|�y2\\fn��ш�\\u0011�ֱ�\\u0011@\\u0017S{�Ce�4�\\t\\u0002��\\\\�\\u001f,�\\u0006�i\\u0017v���DX���\\u0002cNX\\u0002�W�Һ\\f|�h��\\u0006\\u000b&��5Ҫ��\\bOx\\u00172��fF[��@������]�{�o�W@+��=�\\u000f+\\u0003�7��n)���I5�\\f<�{��\\u001bU�؄\\u001f�.W\\u001bͪ��K}T�5��`��R�\\u001a\\u000b\\u001d2\\u001a\\u0001�\\f\\u0005��h\\u001aH\\u001a����J\\u001e��\\u0013�q�\\u0011�9�\\u0016\\u001c��\\u00136L�\\u0011�;\\u0001��7���\\u0016;�*���2Z�1���\\u0019\\u0011\\\\�E���mk?o%\\u001c�\\\\\\\"�`l[e?:7\\nh`�y\\u0018\\u0015\\u000e�$\\u0003��g��\\u001a)\\t[j������~\\f�+�\\u0012ױ;tQ��'_q@\\u001a\\u001b���\\u0003\\u0012K�q�#BE��0�<LH#�,jɓ\\\\\\\"1eb/��ݽ\\u0007Z��t5�A\\bt��<��t�ұ�_obP[��[�@f\\f�rZD\\u0017\\u0004��oB�\\u001eS� [̑�.3�*G\\u0011��l\\u000e�h١��\\u001d�5�Scj\\\\\\u000f�ա����K�N\\u0002N��v�@�\\u0016\\u001b�~A��\\u001fr�ǉ$�\\u001c4Z�*�\\u000b���W��\\u001b\\\\\\\"���w��4����K):XX\\u001b������uk`\\u000frh�������k|(th�&\\b�u6�w,)a\\n�a�2\\u000f�\\u0000J@�$9�t7�\\u001b�Rl�\\u0007�(��J�\\n�OB�Ԧ��H�2�n9-���U;�\\u001c�Ok^\\u0006�O_��2>4�vPM�k�4e�Pć���Wa\\u0014|�\\u000b��o҇ˆLX�\\u0013���J;�^\\u001e|���������hQ\\u0016�\\r�u���,�\\r�\\u000f\\u001aK;��[\\u0003��j�q�\\u000f\\u0014��ח²�+��@C�|�R1��)�\\u0013c`\\u000e��I6�\\u001ei\\u0001b�-�m�mĨ�}Cz�!\\u0003B�1f\\u001b�:���j\\b-�]iV�W�i�Z\\u000e�N�%\\u000f�O�\\u0010�\\u0002*�fv+�A\\f����5�o�8�&QrN��U�6&�\\r$�\\u001cn�\\u000b�$\\\\\\r�rϘ��G�́O��:8`�\\u001c\\u001e \\u001f��#k\\u001b\\\\y\\u001a��ꆿ��|�Ӌ���ĵ��\\u0002<�t���\\u0015�i\\u0001�n\\u000f���L���qb�66;ڻ\\f~�ڄvy�_]A��D�VO�\\u001e\\u000e+��/o�\\\\hغ�\\u000eM�O\\\\\\\"�\\u000b�J\\u0005�0���hr���\\u001f�\\u0012��aԎ�}*ts��Թ4�FM������{�\\u0000@��Y\\\\\\\"�O�O�\\u001a�pǐҀT�{�E�\\u0014�N\\u0003�!�/[�*�ʭ��\\u001f\\n\\b�����{�/E�9I��\\u0005T^�\\u0011C�p4gܠ�\\u001d�D��/��''!Rŵ\\u0007}5\\u0016���۞\\u0000\\u0011���\\u0010i\\u0007�%\\u00111���\\u0015�n�4��dw�N\\u0002��yb2Cɂ�e.B�:���\\u000b�mh|y3q�\\u000f\\u0012�[Y��\\u0011�[�\\u0017f�\\u0016ܵ��N��ɳ�a,���\\u0003��81��\\u0015弌�\\u0011rt��$\\u001e������>D+\\u0012\\u0002��@#�N�\\u0018\\nz���\\u00148sM\\u001a��R˿JQ�3���|�\\u0019�Y\\u000e�\\u0000\\u0003M���ˉ,\\u0011�O\\\\\\\"\\u0015\\u0016�W9�\\u0004�HܢekzZ�\\u0011N��BѰ�=\\fq���\\u0013o�(��P�sk\\u001d�M3\\u0012�$`0\\\\\\\"��5��e5\\u0003��;<�:8^L�9\\u0019\\u0010�M�dn ��釳\\u000f�\\n\\u0002\\u0015X�\\u0005�1�\\u0019�G`\\u000b\\u0001o:C�<�\\u0007\\f�H`M���cq˕���ƺ\\u001e�>/��)^7<�\\u001biYwX��v1:�ln�H6�ҁ3�|�32#��!GƚVm�+܃�J\\u001d�\\u0019y�\\u0019.Đ��kn�%���B�w$Z�Ғ�m$�9����v�zFX��^���E\\u001bL-��I\\u0015y�&�\\u0005a�c��\\u001b����\\u0015��\\u0019�fBfD�\\u0014Q{\\\\�\\n\\u0001�H�*��mO�\\u0013$�˒�ރtg�IX]n9\\u000f�BR�hj�8\\u0006#�@[����ѽ��Z����c!��\\u0010����\\u000e}�^-b-b\\r&�X��n.��O&_\\u0003+{z�I�\\u000bײ��%�c�M\\u0005y\\u001e\\f���\\u0012\\nٸ���W���lP؋R\\u0003L\\u000erJ�+i���jl1P\\u001bX����\\n2�9m\\u0014�\\u000bђ8�\\u0002�����@R^)#-͇��\\u0003��b�\\u0000mnN��\\n\\\\\\\"rNL5f\\u00164\\u0000��ۈ��\\u0016��7���\\u001b\\u0017\\u0012L\\u0018�w\\u000b<���l?�B�i���*\\u001e��W~ \\u000f��Y=6\\\\\\\"��\\\\\\\"�\\\\�1+6�6\\u0002�\\u0011I\\u0012]ۑ\\u0002�*\\u0019��@�ְr8�c�7\\u000b�*�\\u00021�c�'���\\u001c��\\u0002��\\u0002\\r/��=hLXfǓ��\\u001dmLf�Ia�A�k^��'�\\u000b2m����OnH�L���\\u0007QZ��F�\\\\\\\"���:i@v��\\u001c7-\\u0019�j&~�]�_�\\u0010�-�ڭL��=C!��M=�a�u�3��*#EFg\\u0003��m�\\u000e;�Ceo���o��L��\\u0010�\\r��i��b|�qc��\\u0002M\\u0012\\u0015��\\u0001?:[��E�1�\\u0000H\\u0004\\\\�r�\\u000bڏl�\\u001fk��/�ւ\\u0013bM:���(��a�Ru�Z=�{o[i^1�Nes�r,<\\u0018hk�툙8�VK����J�~�\\\\�H\\u0011�e�@\\u0000[[հ2\\\\\\\"Ŵl��\\u0007��Bmʃ\\u0016��iicf\\u000b�\\u0004�\\u001e])\\u0019\\u00129��x\\u000bںo�\\u0000\\u0010�\\u000f\\u001a���B�\\u0000.E�k���m̐H7\\u0000���\\u0003b{��\\u0012HIG`\\b�C]\\u0013��N\\r�\\b667;��\\u0004���43_���I���7\\u001e�����\\u001f�W�ڏ�֪K1'W�۩+s�m>`�cI�$p��.�[izoڣ�%�\\u001e}A`\\u001a�[|i~\\f\\f�2�<WԀ�\\u001834yj�R�6>U�ɫ���˅_[o��׹������ov6\\u0005��0\\u001e\\f<jc�񲫵��<(���ȕd�\\u0017���ֱ$�v5���F$a��i��$R\\u0001\\u0016ִĔ!e}\\u0003\\r\\t��x\\u0003�R�K@9�X�\\u0012ǔ�M�l$�\\\\\\\"d)�M�/·̒�\\u000b�A1j-��z���!�G� ×���y\\u0006\\u0012�EŚ0�T\\u0012\\u0000BF�Ɨ�?���m�?���;\\u00160�G2��p��Jw\\u0004Ry�%�i1���xk���H��q�C\\u0013(\\u0016����F��\\u0016\\u0003[��1�����G�ǔ�R�[X�\\u0019iuuC�Z��u�)�6d\\u0005�\\u001dټ\\u0000ҳy�V X�o�XC�:����I#O:q\\u0000Y�X�N\\fnV�@Ѭmj�&�6R4��\\u000f�\\u001c��\\u001c!n;Q\\u0011\\u0019Y?�,m`N��Bb��f�\\u001e�Ւd�T2}7��Vj�N�:��d�T\\\\\\u0003�\\u000bQ\\u000e��q� ʜ$b�\\u0006��ߥW\\u001a\\b�I\\u0005�F]A�-I\\u00199�\\u0017�\\u0013Y�\\u0006��[��C4�\\u001d�\\b�\\u001eTvf�-v\\n�~��l<y,�}W(�kaB��H�n�X�͔�/$I�0\\nn��Q�Z�4�b\\u0005����jS��Np6�`\\u0015��x؟\\u0003Ev��Uv�P,\\u0000��M�7�Z���*ؘ젉G\\u001fP\\\\\\\"��U��\\u001e,ٽQ���uRۑ�Z`��v��u@�ZD���\\u000fCGK0��W\\u0003�\\u0000k�B!��9�E�\\u001a\\u001d��r[{��;�FT\\u000b\\u001fo��8���\\u0004\\u000f\\u000bRh��\\u0018�d\\u0001\\f��\\u001fʅ�&xrD���\\u001f˵\\u0001���ʙeD<J\\u0005b��(jP�:A�&B�\\u0016ͧ���%�ĖY�2�\\u0016�\\u001d/Y~�ϗ\\u001av�p�7\\u001e�`t#΍�Y^��a��r\\u001eC�\\u0015�2[�TX$_��\\u001d+�$�e\\bu\\u0000\\u0001j#�h@>uI\\u0011��-�\\u001ayS��EY\\u001aܬm]��lsڿTcS;��HE�\\u0015�����\\u001cy{x��e��iz}�O���\\u0004�\\u0013:�\\u0015���\\u0010����s�Vj�m�Ǔ[V�\\u0015��q\\u0007O643F�I\\u001a�n,�@�\\u0006�l�\\u001cH$�\\u0014}\\u0011��K}Z\\u001d5��#�v�!i[&6\\n/�\\u00183\\u001f �k���\\u0019��dۂ���\\u0013{\\u0003U��ES�\\u0007 \\u001d\\u0006ƷP]\\u0014�M���ī=�\\u0016V�\\u0005�W2$H��/jh56\\\\Y�K��\\u0014ӳ*F�,�Q�\\u000f�����@�[E�Z?�ev�㑲]U�F!Z�\\u0000I��R˔Ua4��ϊ�a�n���Ƅ�\\u0006f��hLk�?*�p���}�\\u0012\\u000e�v�η~�$�QE\\u000b�dP����<h�C����dhE�c\\u000b\\u0014m\\u0006���aɎH\\u0019f 2�\\u001b�\\u0000ϡ#�UE3$YƁ�y\\u0017�|)zcd9,�J�z�9��X�eOK�Μ��\\u0003b\\u0000���\\u0006R@ ֝v��5\\\\\\\"�P��V��w=�\\u0007\\u0019{N'8cwh�\\u0016dR}G��y�/��\\u0018��A\\u001e\\u0004k]/g��h�Lk$Q*�;\\u0005 �c�Z�����&����>ٕ\\u000b�D\\\\\\\"�\\u0014�� \\u0010�/�\\u001a\\u001a�`Ŋ.э�\\u0015���b@?Y��U��z��\\u0012I\\u0004�+\\u0015*�����\\u000bt�A���ڠ���ɐ\\u0016H�Eu��\\u0010,-dhk�p�r�ߜad�Y��\\u0005\\\\\\\"���q_:YY�/vf�H��\\u0000�v���\\u0016\\u0019Y#�\\r1u+��]E��\\\\J��\\u0016@�\\u000eAO��ғ)@�pL*\\u0018�ȀM�45���\\u000e��\\\\\\\"x��S\\u001c�o+\\u001d4�R\\u0018s\\t�0�\\te�\\u0000l��3\\\\\\\"�#+q+��E\\u0015\\u000bk��\\\\�M��\\u001a\\\\\\\"\\t\\u0011Y~�\\r�%�\\u001c\\bVU�\\u0005�\\u0013�4\\u0013��\\u0007\\u001f�#�����#�m�n\\\\�\\u000f\\u0012����@�z��\\u000ev1\\u0012�t_m�^\\\\9�Z\\u001e,yģ�U\\u0014���·VU\\u0016��,jl�uRo\\u001a\\u0011��ַŒL8_ߑ\\u001a4\\u0005�e�&���C�\\r��\\u0000�\\u001c�Q�2i1d������\\u0010�P<GPk;�PԦk�T��4a�<]�-a\\u0000���F�Et�\\u001b\\u001a\\u0000\\u0000�\\u0002��z��c~ߛ$��\\u0015*\\u000fĊe��'�}�$y�W'��v�\\u001d\\u001f«��BRy\\b�Q��0� �v\\u0000k*\\u0005\\u001a�\\tG\\u001b�\\u000f�z�D��k��\\u000e�xUg*���\\u0000m�*5��\\u001e\\u0015���j���m\\u0019�\\\\��T2jt\\u0002�\\u0019\\u0011\\r\\u0018��\\u001a}�\\u0014~u\\\\�\\u001fȍ�'�cz��c\\\\\\\"�\\u001b\\u0010dk}��/r�(�\\u0001\\b<Sfmu4�\\u000b1�\\u00118䗹=E\\u001f��`�~lޓ}H:_�ZF\\t\\u0005�X�re�G�[�<�\\u000fZ\\u001eY\\u0016E\\u0016R<.+\\\\�W#6G��Y\\b\\nv��u��\\u0013��3`�V-�bI��y\\u0001P�<���<�NE���\\u0004�A\\nx��\\u0005�r\\u001f:c\\u000e\\\\A8��b\\u0001\\u0012\\u0005:՝�\\u0003������Y��Rk؋�\\u0014}���� L���Qv!8�mB�����}z�Y�M�\\u0003F�p-��h\\u0015�٪n\\u0012����\\u0007=��\\u000bsԫX_�z-B�Z0@���@�\\tq�+%�csmh�\\u001c\\u001e,�2�l\\u0001�\\u0018�6Qi@eE�\\u0007bI���8q{׊�\\r�\\u0000>���t>\\u0016bG#4�\\\\\\u0000\\b\\u0017��\\u0013gc3rV�X�k+'%� \\u000765@\\n�}�\\u0002����\\u0001}��i<�V�zFC�$<�l\\u0001\\n���Ic#VI4�\\f�\\u0017�^�SG\\u001dR�\\u0014�\\u0019�2\\u0016:��\\n`�\\u0010��!�cD}Ef�v��@\\u001f��&�u�+,\\u0005�h\\u00035�\\n��\\u0001�\\u001aD�\\u0001\\f-c�+\\\\G�L����\\u0003G\\u0006�\\u001d�jֆoQw{�󲒂OU�ր�Śe%�\\u0010�_Ɯ���y�10�(7#�ШHN6�gf�-\\u0004v�\\u0013<�)\\u0018���|H�\\u0015��\\u0014AB�(U\\u0016\\u0002�aH;VL8�;L�C-��:�ʛ\\u000e�\\u0006����T�L0\\u000f�����\\u00120�\\u0000X�Gz����Xxu��|y\\u0019O%� P��BlI�5%�%\\u0017\\f,5\\u0000\\u001a�L�\\u0006v�Ȕ�!�\\u000b�\\u0005��i4����A40�S)�����̊x��=��+��\\t?\\u0001�\\u0019�J� �>\\u0014/�U�wk\\fp��|ۀ���oV�UG�d\\u001c��xȿx�e�l\\u0013�r��yB�G\\u001fY��P�Q�30Sp�B|:Q\\u001e�\\fV�\\u001b�h��\\u0006'Ϙ�W�.I\\u0002ʻ�^�.l�Jn0l��~tcD�0���\\u0001|�WV{��}�'�\\u000785H�\\u0012.4ܝ���\\u0000���6\\u0002�W���A0������\\u001bVvV���\\u0001d�J\\u0017mt�Κ��Q3)�,\\t\\u001a�Y$\\u001c��\\u0004&�m�j�=F\\u0014\\u001c�\\u0002(N�!s\\n\\u001e*-r7&�*y\\u0006\\u001d(\\\\�9&���/��!�r��\\b+�<R�\\u0019/k�+\\u001d�\\u000e����\\b\\u00002I\\u0018���u��\\u000fj0�܁}�ք̂w*���� l��Z�\\u0006mK\\u0018d�\\f��n�Qm��Z\\t\\u00164���9\\u000bR�h$Xb\\u0012}K~C��Sx���9�j��̣J%0�\\f;,���,���Ca��F��w\\t\\u001ep�\\u0003ю�\\u0005���QBJ�2�F�U�Ȭ�\\u001d�����J\\\\\\\\�\\r����\\bԛ��x�\\u000b�-�4(�q\\u001a���$��4\\u0012�]�^���cZ\\u00064����ҩ�8�5y\\u0014�ɪ_��7G1�\\r�oGa<\\r��Yq\\t#bY\\u0018�\\u001b\\u0010\\u0007��֪��\\u0013��\\u000b�,\\u001e�(7'}v����:X�\\\\i���4\\u0014�\\fS&4'�6��^bHq��\\u0013��A��4�)\\u0006Gsp\\u0005���^��+p����e����d6\\u0017���.�cɉ\\u001a\\u0006�ѓkipjaɯ$�}�\\u0019��K[�A;|+8�\\\\\\\"G<G\\u0015]\\r�kϏ\\u0010F%\\u00042�N5�decIp\\u001a��\\u0013c{oj��L_��wx��\\u0002:Wa� �=�.�ܞ2O����r�B��\\u001d����9\\u0013\\u0016\\u0015\\u00107(N�\\u0016�#\\u001d�|\\r6\\u0002�W�:�{\\n�j����[�D�%>v58IkiQ\\u000eJL׏%\\r���Xլ\\u001e�[���D\\u0007P+xg�#\\u001e�\\\\\\\"rK�*\\u0017�}��\\u001d�P���X�x�X�\\u0013 x�mĕ�R<+d'(�n\\u000f��1����J�\\u001fP���H�y\\u0001,��5hrS��9b���½83\\u0005d\\u0004\\u0010z�՜\\u001d�h���h\\r�jI\\\\\\\"Ԫ��l�\\\\��\\u0004�4õ\\u0016\\u0005�\\u0003u��X��us{�`44Ϸ4X�\\u0012~���\\u001cI�zoAA�d�aG\\u0012��Ǡ�\\u001euLLi&$����nzT�|\\u001f%����ԅ:\\u0003�;\\\\�Dd�\\u0018' -~��\\u0014Y\\u0010n:<���e�m(\\f�\\t�x�@\\u0007n��>�\\f�����\\ri~NTY9f[qK\\u0000\\u0001�j�70\\rc\\u0018f�\\u001bM\\u0011,�\\u0001\\u0016��u-�_nC\\u0017-A�m)�Y0��\\u0017Qcq��'�>�K:\\u0002�mcj���\\u0014\\u001d�|,h�Fn\\u0003�fF��P\\n�\\u001d�\\u001f���\\u00072\\u0018\\\\\\\"\\u0011��\\u001f�׽'1�R�<�'۰h�=om+8�G\\u0005�ܛ\\u000f\\u0001X��_!�\\u001b�6��ն3\\u0000�_c�(�$ٙ̅N�QR��\\u0002�\\u000b2��ΰ�\\\\\\\"��i��-\\u0018�X\\u0011��T�!\\u001c��ۍ���P�ҦC\\u0015F�]���\\u0002�$1�v_��M�����ȥ��,\\b�7�42�\\n+\\u0010z\\u001a�0�r}q��\\u0003��\\u001aq\\u001f��\\u0004�9��Q�L �*�Շ\\u0000T��)$��T�c��\\u000e /��~�\\r7�F���\\u001d\\u000f�\\u0014�TV67\\f\\u0005�\\u0014\\r{T3g�G�G\\u0012ֻme\\u001fQ�+�\\u0011��\\\\\\\"*$H\\u0015@U\\u001cF¾o�sf\\\\��PQ�\\u0011ͅ�pGZ����Y�8�����\\u0014���(��iJ�\\u001f�41�te\\u0000(���E�|+��x���O-u\\u0003ƟegO�4��o$�x(��H߷���\\u0005�\\u001b�'Z{�\\u0007�f�����\\u001b�|)�\\u000e�ɗ��@�R��\\u000bbBccr��m�3�24\\u001cMȵ��Rj P\\u0007�\\u0014�2�C}�^b��F&U,*��EbM\\u001a��̓}$��_\\\\\\\"\\u0002��\\u0016�\\u0000\\u001a!j\\u0012�\\u0001\\u0011\\u0016b\\u0015Ho\\n���\\u0012�\\u0010j\\u0005۩�\\u001b-90C�����\\u0005,��e7��l�\\u000e��/��ƈ��HX�m��S\\\\\\\"��5\\u0006�Ǚ\\f��$!E��t�\\u000f��@+*�5\\u0000�2�1�\\n�k�\\u001d>5��\\u0001m(��\\u0004o^v��\\u0015��\\u0004L\\u001c�^�\\u0004�ja��{;DYrc�\\u0017���Z�L�q\\u00067l���C�*/Aň�Ʈؐ��\\u001a�\\\\\\n�\\u001e�\\u0014q�1�%��\\\\\\\"ަ-Y��C}\\u0011����V\\rv;?|\\u001b'T��H���V�d\\u0005X�\\n�\\u0006Y\\t���Rs��m���*\\f#!r\\u0004T�-��Y�8��\\u0015c!w,�t�����\\\\���t�ZI�NPh�P�l\\u0001��\\u0015�\\n�>lJ�pZ�x�\\u0013�\\u000b\\tB��\\u000f�X\\u001f\\n���1�)>�1�\\u001a�A\\u0015��՝�i=@\\u0001�k(q��:\\u0019gPZ>L�\\u0002�M/B���,�\\u0014\\\\\\\\�.��T��}�!�%�c틂��\\\\\\\"�Tw���UN]\\u001c@���:�d\\b���\\u0002�����D�\\u000f>CQzm?r��\\u001d�&/��*���$�\\u0011�zH2\\u000f�\\u001d-\\\\��\\u0011f����]���n\\u001cŘ��خ���+��\\fQϏ쀾�1n:\\\\�\\u0000~5�\\u001d�H{�w~q>��\\u0002��Ő�r�`<�JC\\u0011���W�m\\f�\\b��\\u001d��\\u0007�[�M\\u0016`<��Q�]�Ak*R��\\u001cT�<(�9*\\u000e{�j��s�\\u000bS\\u0005�>�uoq\\u0006�A\\r�V�sr�\\u0017�ӑ �������\\u001ew�>^t.n\\u0017�B�n\\u0005I:��z���̆�\\u001e��6>5�[\\u001cr\\u0015�'�R�L,�iD����'�Q��f1\\u0017׈\\\\\\\"�d$�;�\\u0002��_�\\u0003O�:혱�\\u000f�~�bx�\\u0001\\\\��\\u001c�!]\\u0006�4��\\u0019�b�.9V���XԺ���\\f�A~�/�֖�\\\\\\\"�J�\\u000b��<+I��\\f�Enck�\\u0003A�N�\\\\jĶ�t�d�L\\f�x��f������-�G�\\u0019\\u0016��1\\u0017�ʄ|�$0��cF�ف�F�[���\\nid[\\r�>\\u0013�d�=��\\u0015����\\u001cX�K\\u001b�ي��׾��Wp8��#y$\\u0004\\u000bj\\u0007�\\u0000��uH�[��\\u0002í�joV��׉�\\u001e閷DBP1'�\\u0016$\\r��\\u0006�\\fB��\\u0012�}#�5�ea�<��b\\u0005�a�S�l�q\\u001a�~%T\\u0002\\u001bN�\\u0017��K�w,eu��gK\\u0003淭;����X�\\u0014H��,\\nlSK��\\u0000MW3/\\u001aLY\\u0015dR�h\\u0006�ZN��1srߚ��\\nf\\u0013\\u0004�/\\u0000#*'v�sR�n֣{�|�\\u0013~��+�\\u0001u��qK��\\u0006����Ε�y�\\u0018����Q��[�-�F\\u000b��uO\\ngq�^�L�\\u001cX�Vӥa��\\u001eO\\u0003\\u0016\\u0011��^��C���͇\\u0013j���(ӔMq\\\\\\\"t`E��:�¼fc�\\u001d��nP��\\u001c9�Ep/ac[��$�\\\\�P��:�t��\\u0004���Z�[�\\u001fU�z7��\\u0004֖3���܆����IO\\u0001��dv�<)�<\\b�K�X�ڗc~�\\u001f)����hz_|�\\u000e�\\n�U�.�q\\u0016�E��q�T؀:^��ⓥ\\u0017<��3.��/��\\\\\\\"�!�\\u0006�2e\\f�FDQa3H5.oa�¶��c�(S��-p|�)�`�����/�[��\\\\\\u001d���|*m\\\\����\\u00127�akYہ𮣴v�֘�9Yf�G�$�Q�\\u0007�qI+�ܔ��\\u001am�\\u00001�Bh�\\u0001��u��ͩ3�^���r�f�YYTnB��g���<E\\u0010\\u0016R.�G\\u001dEs��!��S�/g!�;�(�9�x.��t���Z�ru�d��<(�HČ�97\\u0000�'�ڔw9��5�\\u0000��?H\\u000bҚ�6<�H�q+ecc��I��%�(\\u0003^�oBV��1�\\u0012?rċ������C�]��I\\u0018��]x��5�\\u0012,S=�X�\\u0001;Vu)��\\f%\\u0019\\r6Fы*�\\u0000��ם��I�c�o��Jы\\u0014a�c�liv_r�\\u0019��f \\u001eM��S�;>'��9Xھ��q\\\\\\\"����U\\\\�Ԗ*5-��5�E���\\u0001(W�ak7»^�<9\\u00180�M�\\u0002*�:2�\\b5*ͅ����~��X����*ȼ\\u001a�]��|\\rs�����Ie{#1\\u0001A����#��#\\u000b�w��+��+\\u0002��˵\\u000ec\\u0004�l�Q\\u00001�Ё@H=�\\u0019t��\\u001dt�f�\\\\\\u000e7�7�y�+�\\bXi���!�ex��!�ePM���Ds�\\u0000�'9\\u000f�\\u0000\\u0003�7'�\\\\�e��$g�J�ac����\\\\�e��$ �Z�6�Q�ԗ3�S-���̡\\t]G���9+!u7��\\u0001�Ɔ��\\\\\\\"d�'\\u0011��\\u001b�\\u001d>\\u001bځ�m>,�$_쿘6�i4m>���&��\\\\\\u0011\\u001b\\u0018ٵ�<it\\u000e�Z)4�=�\\u0000�jl�N@zFס%�I2D���P\\u001dM&�LKDZ;�J6�\\u0000�V�\\u0000\\t�Z��w\\u0015$ �6�\\u0018�I�\\u001b�^\\u000b��l\\u0004|M��ֳ�&�Vm�\\u00055\\ndɑ�\\u0017�5�;\\u001fs��(��@\\u0003�fP{����QJ�%��y�e쫐�\\u0015I��\\u0005�<h��\\u0011�mk܃�������\\u0000�I#m/�h�0���3c��A�^rc\\u0003\\u0007T�@)�z\\u0000)Gsd�Dh���\\r�\\u001c�:K #po�+WTb@��7��jw�5M]x\\u0005y\\\\\\\"��\\n��\\u0005��\\u0002�5�8DI�\\u001c\\r�ރ�'!C�\\u0002@8�\\\\\\\"�\\u0003c[aJaD��ǩ𦥦l¤��$��/9\\u0000�\\u0010]�i�������\\u001bRs\\r��븪��K4��9\\u0011<� �\\u001b\\u0014�񩋙\\u0013�~��\\u000fQf�u5Lu�\\u0007��\\u0011cn������v��MM͈��R�Z�-�U�u�u\\u001bG�\\u001c��N�c�c�p�G�\\rY@������a�R\\f�\\u0016�����\\u0013A<\\u00062�P��B*:��\\u001b|tl��s��\\u0019���\\u0000M�\\u0019�dk\\u0017;�]���L\\u000b�T3�\\n\\u0011re�=�����+>L_�\\u001b�z�d(\\n�\\u001b�:3�.h�\\u0006ān���P������sJo�����R��՚��(�\\u0016T0\\u0000�l�\\u0015\\\\\\\"��%V��)��s�\\f�(�T\\u0000>\\u0014$Y�ޖ>@yxSz�\\u001f\\u001e4L\\u0003��:�^��=��ŝͮ|\\u000e�DK�\\u0007�U\\u001eN2-����!k\\u0001>����\\u001d=ƿ���\\u0006!��2x�\\u001bx�:}�y�&\\u0001R �C���\\u001a�\\u001ab�̣��u�Q]r\\u000fI#b��\\u001b��\\u0013���ҙ���\\u0018\\u0005��,%no�:U<\\t\\u001e{�\\u001b�\\u0005�!,�l��\\u000bQ\\u001f�/8�h\\u001bc�\\u0019/i0c4�?6�\\u000f\\u001b\\r�ߋ\\r�Z�Ôy���˕�!tU����S\\u0019�N\\u0017\\u0006X�tnD�|�(�\\u0019_���ڣ�M�\\u0003�\\u0000�;��\\u0003\\u0012�\\u0014��;\\u0012iK�(\\u0014c◝��\\u0010\\u0012��4D�P���\\u0004\\u0002F��\\t�4�ަ-�\\u0005g.R� \\u0005�\\u0006�UHGE��\\u0000h�I��w\\u000eO4�8Tb�\\u0014�\\u0006������\\f8M>\\u0011h��ܘ�e؍z�C�dI01�6\\u000e��\\u000b���@4\\u001f�L�q�FG��^D)\\u0012���\\u0000�\\u000eI�n\\u001a��t�j\\u00073\\u001e\\u0018b2��\\u001d��\\u0005�ɋ�X���x�$�ȬY\\\\j\\t��fu�����\\u001fJ�y�F�u\\u0019�F)��W���Z��'\\u0004\\u0010�\\u001b�)�jx�,1\\u0001ed ۩�Ӫ�)4z\\fGi�?�g���u��>/�/��m~\\u0017�\\u001f\\naz�Ȣn\\u0017\\u001c�ߏ[_zײ�U�\\u0019�h��Ok������t��G\\u001e\\u0016G�\\t��\\f��aN���S�gԶ6�\\u001dk��ҶDѸ\\u0004�ll<�\\u0004�\\u001dyL���\\u0000S �>���?�\\u0000Bc����&�\\u0011��)�)�n�\\u0013\\u0014�(gU �:�[\\u0004\\bl\\u001b�Z\\u0016|�W�7ӭ\\u0015����e\\u001c[c�P9B�\\u0012\\u0010=$�\\u001f*��`tԴyO�\\u0007�\\u001d4Ҽl��\\u001e&��Պܰ\\u0003rEl\\u0015@7��j�M\\\\\\\"�<���K�C�fS=��}�\\u0000ֈ��']�\\u0019\\u0006(�\\b��yX��P)�J\\f���2�1���j1�(�#�C��NJr�u4|�\\u0016&�XzkN�����j�7\\\\l\\u0006�����D���J#2np�\\u0005�7����X\\u001b��Z���5�[Z�I�Ye��PG�4��\\u001aS\\u0005�\\u0017\\u0017Qp|\\r,���#c�ֳ�$1�D��#V;���\\tüĐ\\u000f\\u0015Pm���/�pW��F����g�r��\\u001f�֝G'\\u001e�\\u0007CM,��\\u001f���K�\\r�\\u000e����P$#�RG��N����b��|�\\u000bm�\\u0000���&\\u0011 U�\\u0018Vn�Z[\\u001aۯ�if��'3��&�!�[\\u0005]\\u0006�ֵ�#'��X���҅�\\u000b�\\u0000%1:/;��\\u0011G{�`�kҶ�\\u0019\\u001d\\u0004Xx�\\u0007!ɺ��^6\\u0004Nʑ���\\u0017�jmZ�����+ՙQ���U���0O��\\u0003߱��oAq�E���j\\u0007�v�h`��\\u0005J�\\b��\\u0007N��Y�:}&��,��\\u000el\\u0018�c�%�4z1T1C �\\u001fP�SD�v�e͊9\\u0014�G�5�褍EL'��*@U\\u0003�<i�n��qKX\\u0012�m�aZ5�4�'�=�CF���YO\\\\\\\"J����4\\u0018������\\u001b�cj�31��X���\\u0004\\u000e��I,\\u0015�Wev\\u001fy��Z38p\\u0011���sA�$�Bm}���!jQ͚FA#\\\\\\\"�;\\u001f:U��.�e��=n7\\n��Ҟav\\b�\\u001f��b�\\u001d�\\r�\\u000f?\\u001aDR�Ia�`G�]�7\\u0006�hGZ,��NB�\\\\:�9\\u001d�\\u000e<�#^|d\\u000f��� [�z��\\u0017�\\t�=�$�/�U��pD�1\\u0006[$jy\\u001f9:�\\u0005\\u001c�x���Y�&g7�\\u0000iZ9A\\u0005F�k\\u0010kY1`\\u0000�\\u0004\\u001f\\u001bѳ�93��]G�E/��5�I�%$�k��pd�L���d�Ǘ\\u0010\\u0007�H��\\u0003!\\u0010߁>�uҎ�>L�\\b�PpE^2��\\u0001ҽ�\\u0013\\u0015qA�Y�Qf�4��Q&�W��Zja\\u000f�g�\\u0004:�\\u0013��UDq�-�\\u0015M�M�\\rc+\\u0004\\r�����G�/�\\u001b�cf��\\u0007�\\t\\\\8H�R>f�=�7��,C�`\\u0016�\\u001cE\\u0005���6T[�\\u0017R~d��^L��\\u0001:���S�F@.\\u0005���)~Fs��\\u0010\\u000b/�\\u000e��%��Z)=Kk+R�;z�cL���+�?�X�e5��\\n`䜆ep.�鵩�\\u0018�PHR@�ݓY�6��\\u0007�z�lȡ��r4�/g�\\u0015Sk\\u00047�&H0�c���Y�^��m�{޽Ȅ\\u0016��\\n\\u0001�m�֊J3Ye{�\\u0017��T�!��\\u001d9\\u0013cz\\u001a\\u000eL�X�v?\\u001a�Z�A}H\\u000f�ʘ!�\\u0003\\\\\\\"XĶ\\u0005\\u000fP4�&��p�� �\\u001d��\\b��ͪ1�\\u0019�����\\u001d�#e�I\\\\\\\"�AS.a��fꁣ\\u0012\\u0001�apw�2�\\\\\\\"\\u000b:Y�kX�P|\\r\\u0007�'\\u000ep b�Jt\\u001egƚ˗\\u0010Q\\n�p@�[�\\n�G.���\\u0017.T�X\\u001br�ԏ*��d\\u0001����|�\\u001c�z@\\f\\u0005�½�^\\u0003�\\rv�\\u000b\\u001e���w5\\\\=\\u0010\\u001aeHтE��5j�)\\u001c�-�+��Q\\\\\\\"��7�Z\\u0017W^;[o�R�6�\\u001el�\\u0011�\\u0002\\u0002�*�R��{�x���\\u0011��\\u001b�e\\u0001�,�\\u000e��֧)�<r�\\t<�?�|+9r\\\\\\r��xb!�\\u0016p.Ē/�\\u0007��\\fj�\\u001dH%���7�������m.���}�^�\\u0004_��ev��Ʈ�ܵ��梷s\\f�����!������ �|\\u000f�\\r���A]\\u0001\\u001a\\\\���aD�<c�\\u000b0b��\\u001a��Ix�[r\\u0004��V�F\\u000b�1i��Ec�fBA�\\u0000\\b�ֱ���?G��l=\\u0012���oZ\\t�d��c\\u001b\\u001b\\u0000\\u0001\\u001e\\\\\\\"՚o%ǀ��%��[�y8�F\\u001c5V�J������o��˘*�\\n\\b��N�jV\\u001ed^���\\u000b�7����f`�ɨ���ZÎ�;�y9ԚM����L�\\u001cb@.�طA�\\u0010���N5�3-�\\u0016��v\\u0007PG�\\u000f\\u001f��4GUԂ6\\u0002�D\\u00125l\\u0014D\\u0005�7\\u0000�\\u0006�ȉQ\\u000b��t4�d�4\\\\\\u0010�-ptڱ͉N;\\u0014�oƓ\\u0018����_Q�\\u0002��Q��d\\u00042�\\u0010��q���}=K���V\\t$�\\u0007\\u000f�\\u001e�ʲ��u�(��+\\u001e]z�&Ɵ��\\\\\\\"\\u0013����è�G2�\\n�\\r�Ku��]\\u0007j�\\u0018vְ\\u000f 䬽}W��UK=�;Q7�\\u001c�#!�7\\u0003�M7�\\f�)�2�\\u0011���,��6U!�֘1rZ\\u0016�\\u001b�o[�j\\u0001:и�,���3�/ֳGτq��\\rݿ��r�-Dd\\u0016\\u0005��/�\\u001ev�eŉQ���k�z�\\u000f\\u001c\\t�9wC~'�\\u0011,�$���\\u0006�7��jݒZI\\u0010��\\t��8sC\\u0011r��$\\u0006��ՆgjH�#X��d��~D0\\u0004�\\u001cd�{r{d\\u001c��W:�k}����;��!a�A\\u001b#\\\\���\\u001a�X�Φ�v���#���\\\\\\\"��Qv\\u001e5�Ȫ��pn�\\u0013�Hr�!��Qk/��KYeBx\\u0006\\u000f��i��Ku���Po`Em(�H�Ɯ\\r�\\u0016����\\u001dJ��io\\u001a\\u001bn6\\u001c,�\\u0018R#%��m��kh�%�Hcg�\\u0000�(~͎��\\u000b���}\\u000b�<Q��\\u0000�+p@\\u0000noY�Ϛ\\\\�p\\u0018�$�p{7�\\\\�Q\\u001b\\u0014(��\\u0005���Svl$��y�U$z��\\n;�8�\\u0000�Y�+�~�!|G\\u0015\\u001a|�y�O\\u0017\\u0003��©�N��\\f=�\\r����GPnX���=hy;Z���#\\fY\\bRA�c��T\\u0016Vsd�a\\u0018��0�C/�M��4�'���\\u0013��t�K[a�?�kj����\\u0012��콽U�\\u0019��\\u001e7k��K�K&;A\\\\\\\"&G��~\\u001a�\\t\\u001d+�\\b�\\u0017;r'^^7��\\fa�\\u000b�9\\u0013�Vj�vH\\u0010���\\\\\\\"�z�\\u001cdt���KP9�1�\\t\\b+\\u0019U+�:���t��aLĈ����>�\\u0005.�YU5�HU�\\u0014ɈJ\\u0016�Kqպ�^ń�\\u001a�)<�%��w\\u001d�a�\\u0016_J$M\\u001b\\u0005�/��ҹ�1�]m�\\u001a\\r��K7)�\\u0000�\\u0006�\\u0012e��Ep\\u000e��Z\\u0019�#^C��O�\\u001b��H�����L�Q�\\u0015\\bFCu��S�U���Q֭յ\\u0003���0��\\u0006D���e����y�{\\u0012�(�\\u000e��\\u0016�1�\\u0004�r�Q_���\\u0000�\\u0011�֒7/����݇kɱ��a�\\u001a[\\u0010 l<\\u0005�\\u000fv��ڟ�g6\\u0002r�#��5�&�Z��\\u001a',ecb<w&��+������\\\\\\\"�y%�xPx�q��\\u001e��\\u0000K_C�4om��\\u0012�#�\\u000b���؋\\u0000\\u0007�ƕ�w\\t^R41.�v?\\u001ak�Qg���\\u0001���\\nu��� \\u001c��\\f�\\u0014� �$\\u0012v���{\\u0017խ�4��I���8 ����Ǹ�O��\\u001eђ��\\n��ԩ�/`GK�}ϊ���:�Y����ES�\\u0005OZ�F�<hǐ�])�\\b�Ĥ���~�\\n\\r�qD\\u0016Đ4������Ee�/\\u0015y\\\\�b≃�6�`\\u0007��\\u000e(�C��\\u0006�Gougt\\u0007��\\u0010<�\\u001f�\\u0010�zu����(����8\\u0011\\bʲ�\\u0001P�I:^��\\u001a7�(��]�mu�����!\\u0014�I\\u0002�n\\u000fB(\\u000erA8V$�g~�U�z\\u0004\\u000fS�v�\\u000b1`�����)/s�\\u0018s\\u0004�NhÒ\\u0013����\\u0018�;p��\\fK\\u0012@k�`\\b5�~*��F\\u001fШ�u\\u001dnk*��\\r���'9��@Y��}��,�\\u0004��ϕo�\\u001b;\\u0012x�J_\\u0018-�2�\\u0000��@��� \\f���+�����Zˁ8)�\\\\\\\"�0��\\u001b�L\\u00064\\u0007���c�,\\u0019�㿴��\\u000e�_�7@8��ټdi\\u0018a��'&��\\u0002T(�n����c�.�\\u0018)+��U�\\u0017,:s4�!�n�!k\\u000e1�\\u0004魴��:�\\u0014\\u001c�ɉ\\u0012�M��^�E�$\\n��||(�-\\u0003N�Y���\\u0001��jdY&R@\\rŹ[�է4�\\u0011��I�c�(�ߠ�@��Œbqh�\\u0016k�M\\u00139������[��^Z�\\u0000z�n\\u0000��mV�z\\u0012���|��a\\u001cB�{3��G���<��Tw\\u000el�\\t\\u0016>\\u0006Ԯ&�D\\n�9\\u000e����@#\\u0001PX�\\u0005ڳ��KTW�a��,K�,��jN�?*��bE,]��;\\tdD���7�ҽ�\\u0011�>a�7PM:}�\\u001fb\\\\�h_\\u0017\\u0006\\taV~\\\\�#Ca��i7k�\\u0014\\u0010Xz�\\u0011~�ڭ��\\u001cac�,\\u000f�z�.`��M�\\u0016�$\\u001b�̋\\u0001x���Ȁ2z��ss�-�]�\\\\\\\"�e�\\u0016�*�\\u001b�E�\\u000e�\\u0000\\n�\\u001ac\\u0004�Ϩ\\u001f�x��pώ9˧��\\u001e\\u0007]\\r\\u0012\\u0010\\u0000a����\\u0017�\\u0013\\u000e6\\u0002��mlh)�gYB�\\fo����S<onA��\\u0000�\\r&��2cFf\\u0003R���\\u0014O���~w5��#trl\\t\\\\\\\"��Q\\u0010ة�]�mg�i L^�\\u001c�^bor�F�U���Z4���u@X�\\u000eF�϶\\b���S\\u001c�q� \\u001b����b�ta4\\u000b�V��C�\\r����B*�\\u001d��-̎G�¹^�\\u0017\\u0007�ˍ�-\\u0012q�\\u001b�u\\u0000�]��Eً�MΟ*�;�\\u0000'�SL���\\u0000�,*rRJA��M=�5���Ĥ�c\\u001b����V��Q�\\u0018+!cː$\\u0003m\\u000e�)\\u0007\\u0005�\\u001b�\\u0016�8%��Tx�\\u0017\\f��;\\u0003��iec��!\\u0001B�`z��\\u001e�|�gU�Ǻ���mYC�\\u0006���'\\u0004��\\r�FM�������q���FT����,/�\\u001e5���dt$�\\n\\u0018xXZ���սZF�sT�\\r�]���\\u001e3���G�sk��&��b\\bP<��*��'c�\\u000bܝ\\u0005ȣq�Ge��\\u001e�'��il�\\u0011G�,B�1b��ټ��I\\u0013\\u000b3��Rܙ��9�8�V��K��ж0^�\\u000b-���k[`��$�ݘ�bH\\n\\r�����h��b����'p�LuC WR׿�\\u0013YٸėXܬ��\\u0014#�\\u000e2\\u0001��65�\\tfi�i�t�ANW*$���$�o{�\\u0002\\b�b\\u001b�\\u0006$\\u0011�EyFYO�k\\t�\\\\\\\"�!I��q�\\u0013#]O5܂loK�Y\\n3����η��y(�2�\\u0001�\\u001c���iM�\\u0013d�֥�Ol�v4<��B��;\\n����\\u0003j��\\u000b�'\\u0017��ԛj%�72\\u000b&K�x\\u001b\\\\_�&NI<�*7��{>$��\\u001e�E��f�0[po��d���\\u000f\\u0016)����u\\u0000\\u001e��Gk\\b�V�vU7�F6��'hZ'��\\\\Sl��w\\f�\\u0010\\u001b��F�04��2~ل�p\\u0018��\\u0004�V6\\u0015^���1���\\u001fp:�\\u001b�k���yq\\u0004`d�\\u0013}͏ʩ���!DV\\u001c\\u0005�mnH���\\u0015�̎4zq�马�HP7\\u000f�t?*����c^d0��\\u001fS\\u000fWƲ�J�Sx�L��Vy\\u0012�(�nG��0�KD����4�z��a\\\\\\\"\\u0002���O\\u0003T��\\\\\\u0000~�+},<��!d�dؑ{V\\u0013�\\u001b��k�wh�T�\\u0016��b6n �PϐX�h�uҤv`���'�\\n�e)6B)\\biÌwcw\\u0003[P��\\\\��\\u001d��^c$�Hq�t\\u0007�y\\u001aH����f\\u0007��|��ˎ6N0�mr,m�N[\\u000b\\u0018\\ro���U��v\\u0001��\\u001b+�\\u0000'ΖC\\u0000ҧ��o\\u0003T��Mȓm�r�\\u0014Z��|�i�\\u0002�`I��\\u0013a��x�EvT%�t6�\\u0003[�ɡ�\\\\\\\"%`��c�EM��C���t�*[r8P �nB�����r��\\t\\u000b\\u001d\\u0018���#F�\\u0012;\\u000eQ���E�L$�,��PT.�5қlI!��v1������>\\u001c�\\u0012\\u00107���:WU\\u001b\\u0002�\\u0006��\\u000f�s��\\u0000\\r�2\\u000bG��\\u0003�� V}V�m78.�%(_��%.DÒ[�q]/i {�\\u0003�\\r�MH�hu�ƹ���\\u0011\\u0005��E��o󮯴�c��\\u0018�!�.��+c0��ׁ\\u001e,�\\n\\u0015�E��O_:Q�\\u0000x�I���A��r����1�B�7!zk\\u001e���ia\\b��\\u0015�����{��ϥ\\f�w�\\u001b\\n�0FS�х�mkL\\\\i3O.\\n�7b/aY�C{\\u0000v?�\\u0019۲�(�b\\u0013��F\\u0017��q��\\\\\\u0010ĐB�\\r\\r���p�\\u0007\\u001aC�,Ѳ�D+����Bc���I�ٍ�.oZd��\\u0019ԷԶ\\u0000�C1N9`\\t��t\\u001asrt�c��\\u0010\\u0017��\\u0006��\\u0000\\n\\u001c��I�M�td�Q>9R}v���.��9�[��t7���U4��*���\\u000f0O5�ԟ�k\\u001fm\\u001e@���\\u0003\\u0000\\u000e�׊�pEiK]���*6��X�:\\u000e\\\\��UB=$^�\\u0000:�5�����\\u0000U.�]�\\u001e$�zy�BN55�l��\\u0015�87\\u0007j�$�J��o:�\\u0015��\\u0017�[o��̭\\u001bs]N��4lI�\\u001b\\u0002|+?q�ҵ�\\u0003���x?�5�@�&�M�B\\u0017�S\\u001eђ�/��Ϋ.Yv�\\u0000-�\\u001e\\u0015��˖,�4F=�uz�܃eު�1~-S��\\u0006mt���J�5��r\\r�5�o\\u0012l�Edɝd*\\u0000\\u0003���\\u0012g���H\\u0017<t5^7�e�ů^�\\t ���Ņ�\\u0001��b\\u001f\\u0013�ʲ8\\b�B8�1��F�M-C{ť\\r&�~tf\\u0016tPd�\\u0019�8q\\u0006��piRy)�v�\\u0003h�oe8�Y d�,\\u0018\\u0017}I�֑w$Ƌ$$#ۍ�\\u0011�k\\u001b��\\f��%D+8b�Է�t�i>s4��3�\\u0016��m\\u000bH\\\\\\\"���\\u0017\\u0017;*VH��>�\\u0002��V\\u0019Z9��ߥ�CvI��w��0���\\u0000*Ӹ��\\u0019FE�)\\u0002��\\u0015��:(5uJ3&ySD��\\u0011\\u0013����,@&� �]��?\\u0011U0�>�\\u0007�\\u0018s\\u000e>:�)�^�E�\\u0014��M�+���iB�.�� Z�ӡ��[��\\u0010�}X���c4�/\\u0010��,�X\\u0003���\\u001e���T%���k�+\\u0002\\u0012d�\\b�8��cc������6�k�m|(�ܨ��-Ƅ�\\u0011�\\u001a\\u0011҂ɑ}�t7\\u001d@�K c��\\t\\u0011hm����L�sb:Z�FQۓ����cH2�Cv\\u0012\\u0010<@�#��b�c<\\u0011�ߛ\\u0000ăm��'���b6a\\u001b�W<�\\\\\\\"�}k\\fi���o�\\u0000o�\\u001b6D\\u0000+\\u0006\\u0007�) \\u0011{\\u0002)C�C\\u0010lݫ����m�\\u001diFf643�`\\u000fo���\\u001dȟ����\\n�\\u0017ҁ�������b��\\u0018��T�M\\r�E��\\fe]8�\\u0010t��\\u0003��竑�\\u0013��=Ō\\u0016b\\u0000��\\u001b�\\r$�X�p\\b�L�[��|�I9b�L�(�9#\\u000b\\u0011�mmB�gȓ4i�S�ʨO�nR_o�?I�SX�\\u0004�+ڭ���\\\\k\\f�ҡ]�\\\\\\\"�fTH@7 �ȩ���6\\b\\u0018�ݗb7��{�Ai\\u000f\\u00126�J��B�H7\\u0016=kh{�*����i���\\u000e\\u00192�\\\\?���zu�Z�\\u000e�:�\\u0013�\\t�\\r@�񭲞<��\\u001c��\\u0000Gè=\\b�+�S�$j�$�/\\u0010���^��\\n\\u001e\\u0005\\u0000�<Ù#]n�SU�\\tq�2HG\\u0001�\\u001d(���hF�\\u0002�\\u0000ʽ��\\u001b�dq\\u0016�\\u001a�N`|T\\n\\u0017�,7H�\\u0016�!e\\u001fq\\u0015t�\\u00035�2���\\t\\t&�W�+)�YX�=6�����,\\u0006�\\u0011~�֎6%\\u0007�4-`j�x�\\n/'\\u0012A�\\u001e77\\u0017%|hl\\t\\u0004�\\u0011�6apj\\u0013\\u001bH�߇��\\u001a�M��|�\\u0014gq��\\u0005i�НYF��)\\\\�C\\u00124��\\\\\\\"�|)������F�S\\f�NG���\\u0000�h�ڳ\\u0018,�E\\f���I�iV>Bd\\u0005uП�|+�Ia�P�r*\\u0003xSm��\\u0011ϋ�\\u000b�g-�\\\\\\u0010��o�\\u000ebq�9� \\u0014\\u0007Cs�ʂ(�$��&8@K\\u001b0�ڭ�D\\u0004�o\\u001b\\u001a!#�kh\\u0001�����qj�%�������դv�\\u001e:�qXX�������\\u0011=�X\\u0013�\\r\\rd�f��7��\\u0007���1����kL�4%\\u0015} �ϛ^��+��</�)���-��x��Z�@\\u0015���\\u0000�\\u001d�a*�\\u0000��e\\u0002�\\u0010H���ќ�PO\\u0011{�UH�gŗ\\u001e#+��jm��Ǻ�4!���\\u0000\\u001ao�U�\\u0016B[�*u�]��mku���OU#o��Q]}J�[��I�f\\n\\u0016��\\u0014\\u001e,nq�E\\u001c�v\\u0002�v�r!00��p\\u0006�\\n\\u0000��!F�)�VR�Q�2[�\\u00174�\\ff�\\u00167�\\u0014��i\\u000em�R��4`p�,��(��\\u000e�k���#D���!\\r����U��\\u0000:K��<ʳ�\\u0000�}i�`�\\u000b�/�Mm�'\\tI\\u000b�̻x�0���+�t\\u0004���\\u0001.u6�\\u0019�\\u0006�mBR܇)G��\\u0014\\u0017n'ʭ\\u001e\\u0019�C�_�>�H�\\u000frD�s���q�ǈLXُ\\u001b\\u001aVq�Iy=xf��\\u001bC�$ڳ��\\u001e�q�Gȑ������ȕ�BC0\\u0017�\\u0014�8��ӔN<��f�z\\u001d��2\\u0005Y��`Y���I?�W�K�\\u0012xܗ��B�Kh�<�\\u001d5��\\u0013�M��\\\\l�~%�\\u0007�N\\u001eb�\\u0013�2\\u0002\\n�:�-kӼ�}�GA��<~U���C�7\\u0007b\\u000e��Pf��K��ܱ8����\\u0000dg���\\u000b�#\\u0016�j�׊�sm�K��te\\u000b�\\u001dj\\u001b��\\u0018�\\u0000�+h��|u�4������&\\u0007�#\\r�\\u0017��\\u0000\\u001b� ��(��`�_ʾ��5@���@�<��<�\\u0015`�\\u001c�p��ܰ`�٣�A\\n�2n9\\u001b\\u0003�\\u0003Kֿ���#\\r��\\u000bk�Y:�]g}`��s��ֹ�;��\\u0017\\u0006\\u0017�����i�\\u001dRb.��q�1��&��y^�5�\\u000f\\u0017~� $m%�X\\r6\\u0014��\\u0017��\\u00061\\u0006�͍�U�=���ý\\u0011�>�:�\\u0014��@ғ�\\u0017+0����ܙ�\\u0017>\\u001aU���D.�=�\\u0000�k~�/(\\u000b(�,t�(�J�$h\\n�«\\u0004��Z!��ʮ�~����Ѕ\\u0007�X�V�\\u0001�\\u0015F��R��\\\\D����Q�#'�n>�X\\u0019Y\\u0019��-��\\u001b)'�k^�\\u0000u\\u0013�\\u001a�\\r�7ޘv+\\u001f�P\\u001d�\\u0014��\\rS�d�ɋ����\\u000b^\\u0016��\\u0010�s�.��\\b� �\\u0018\\u0018��S�\\u001aW�+�}e���\\u00006_�mI$Ǡ�*\\\\�KK\\u0011E\\u001a�c�h5��n��z��;��\\u0000\\n�\\u001a�&�\\n�\\u001dz��8A#\\f_nI=����v'A�Sjt;\\u0006p^C\\\\\\\"0�_�-k}��a�2������i;�lX���\\u001e#]?\\n|V�dX5~ْ]�Z�lZ��]+3�*�W\\u0006�\\u0005\\u0013��$��\\u0018�I\\u0004�*�w\\u0018^f�Ӌ�����P�1���:��\\u0005\\fo�[�\\u0015���\\\\h�0\\u0019\\t����n*ؽ��q\\u0018\\u0016��7����\\t\\u0006ຐk���V�]U+[\\u001e�C��un��Y�\\u0011��n�m\\\\\\\"v�/�6P\\u001a��T��Ӫ�2hD�܋���\\u001a�&&Qh�&�t��q\\u001f���arYm�\\u0000B�E�tn�\\u001f���RV�i�\\u000f'e�$�^=6\\u00177�i@G\\u001aL�\\u00029.��\\u001ad�\\u0006g\\u0002V!�8��I�\\b�2_�\\u0018����\\u001ft?��ޫ��N��+�~���\\u001d�\\u0017�ՙ%M��z2^F\\u0000��q0F`nMǎ�5��ɔ-�x�\\u00016�j�\\b6[S\\b0�J��Aj�+\\u0011c$�]j\\u001fc��@<P���\\u0001}�֬��*�$\\u001b}�Tn\\u0000_�\\u0017��*r�pG���\\u0000�Ox]\\u0018|:ײ�$@\\u0016��\\u0014\\u001e\\u001eG�2��\\u0000Jk<��/���\\u001a�\\u0005�^@^>��F�y5��x��ɿ��n�D\\u0018�9q~$X��\\u001a�\\u000f\\u00164�d��V�x�ԧ.\\u00184/�\\u0005���o��z#\\u0017��_uW�ǃ�\\n�\\u0018�\\t�\\u0000�H�k���8�?S*r��+}�o�\\u0000|)�톉Op�V\\u001c� �=x�P\\u000f�j�l\\u0019G!?������&3\\b�R�D�G�\\u0012mK\\fў�\\u0015�|�\\u0000�\\u000eO�\\u0000��&�A�\\u001b�7�\\r�\\b*'Y\\u001b�\\u000fW�h.65�\\u001f��\\u001d\\u0001��H�b�Bu6���A�_\\u0017\\u0012\\\\�\\nGa�\\\\��Q-�r�$21���vɖ\\u00017[��i�S���|(\\u0003�Xd7��M��7��Ȃ�����H#ݛ�\\u0000�7�T��\\u0000e�\\u00153�\\u001c`�\\u001c��\\u001e\\u000f�Ђ,k�\\u0003ܓ�k^±Ɗ?pI������z�2V�\\u0002�\\u0012m�S�����?]\\u0015����a[��@*N�H\\u0002\\u0013��\\u0001i\\u0006�>C�d{i����S[K��F�\\f�\\u0017�B˹\\u001bPm#\\u0013[ط�Z�Ƌ8Д�\\u0012Hؐ���^G���d�i�\\t8d�]lB�G�V}�%Cqe\\u0017=M4�\\r\\f���\\\\����O�\\u0012�$���r�\\t���Vh��E�<A$�5.�\\u000f���D\\u0010�\\u0014���\\u000f\\u001a�$J�{�\\u0005\\f��IZ\\u0005�\\u001b��Y\\u0012I�Kx\\u0000\\u0005.Vv�B4U�\\u0015:��\\u0017��r\\u000f\\u001e9\\u0012\\b�.[���jk>�ٻ�,/������\\u0015`N�\\r\\u0005v]���v�UE\\nZ%g�ՙ��4\\u0017�d\\u0012v���\\u000eP\\u000f�\\n|��&�jD3�\\u0013����ੱ��F�v�#0Y�{\\\\Ib7��kF�P.Q�9h�C߯���u:�08�\\u0016�\\u001b\\u0014m�)�+��2�\\u0014�Aq걷��z���xm�aѵ�'q�R(\\u0001\\n�B���jvKXA,�+\\u0007*\\u00059\\u00138b[V\\u0004�,z�^&&\\\\�\\u001b��щ\\u0006��$R\\u0018#k\\u0012�4�\\u0000\\u001a��<QrG�\\u0007�5�\\u0007��RX�H�x^\\u0006!�$\\u0000}:�X~�<��[���\\u0000(\\u001e�\\fx쌠�q��j��jЍkT�,��L��Y\\u0018'@\\t�*��\\u00120\\u0005��Ö�#�@D�����Q%C(\\nu\\u0006�I����o�^�_Z��lu��\\u000e��W�f����V��'`�{\\u0003{\\nR�\\u001aD�t�\\u001e��I\\u0014kgb�}�ײ�\\taQ�W��X���X�\\b�~�Ћ�V ��\\u0010o@儛��}:��\\n�6�и͎G\\u001fQ,w#��~�;��JɑRUE\\u0000X���֯.0D�/v\\rr<�R�\\u001a\\u0005�wi�\\u0016O�HbR98�7��c���娏\\\\\\\"vt\\u0006�\\u0015�������ܜw�߅.�\\f�\\u000f�\\\\n\\u0006�ӑ��\\u001d<�\\u001a\\u0019\\u0018�\\u0000�4'��/����׋\\u000f,4�RN��\\u000e���e��5k�y�#�n>��T�}A�b�#Hٖ�\\u0004�¶C�\\u0005P�\\u0000\\u0004oj_\\f���,6&����ۅxO�w�ҞM�=\\u000bjjH^\\u0015�I���z�d�$\\u0001p5?*��GR�@P.j��2K(\\u001d��nn��v�֊\\u0002F\\u0017��ƓJQ�f�qRtZv�\\u0004c�T���vI\\u0019�ca�\\u0016�c�\\u001e��>h�\\u0019\\u0007\\u0016\\u001fK9��L��A&�\\\\\\\"�d�HcVbě\\\\\\r\\u0005Y'6��&9\\u0004e�^���F�\\u0016�u'��\\u001f��\\u000bH�NZ_�\\u001a�\\t�U��Pw�i�T�\\u0017\\u0018�G��\\r�����V{�%�\\u0006���t����G�k)m���Ƅ��\\u0003�Rȡ�\\\\t�I��\\u001dEΧJ!d+\\u0010\\u001eT)����\\\\\\\"�\\\\\\\"����/\\u001c\\u0016��q�s��\\u0011��A9��\\u001e�S��ܱrb�an`�f\\u001b\\u001b\\r��r�4J�G{\\\\�'}�lڥ��'\\u0005V\\u001d�z7�c\\u000e@�\\u0007�sbE�\\u000f$�@\\u001230�\\t'�\\u001b6V�ܬ���Y�}<��e����xs�\\u0006����g�J�T(@bA5�ʑ�;�AM��ߺ�����WRpb�\\u00067qwHԧ�]\\t�\\u0017�*��2����\\u0005\\u001b�N���O���/��\\u0000�\\u0005���\\u0018�\\u0013�L����\\n�\\r\\r�\\u001c\\u001f8l)��|c\\u001d������~\\u0015�dy}���\\u0014E�º7\\u0002�!,7݅\\t\\u001c�(=\\u001c\\u001d|\\u000f�\\u0012\\u0002�v��.�*��L#<�ӱ��Z�c,�-'����./z\\u000f-dEx�j�ס֩�-�&j����k�Rl�Sgf{|��Ђ0V�֚���W�9\\u0013\\u0002�ˢ�k\\u0011�J���\\r�\\u0003N��\\u0018v^Z\\u000b�G.\\u0016D�\\u0000����\\f��BǓ\\f��Au#�ޛE;-��JҴ5�뭛�0�\\u0002M�,\\n\\u000b��ac{P2w8!6\\u0005����\\u0000�L�gy\\u0010�xҾ㊞�M\\u0018��a�<~4+y\\u000e�V��7\\u0011��Y��+7&\\n��??����\\u0006�@�4���~�dBx�%$�/����W�\\b`f�\\u0016��z�xiTb\\u001b���\\u0005�\\u0007�?�����%�9�\\u0000��\\nC�H�M��,\\u0004�(\\u000e�az�F\\u0004���%���`��ׇ-�K7�ٍǹ�\\u0011�\\bw\\u001cw\\u000e嘕ծ576���YI&�:U\\u0015M�\\u0000^��\\u0000�-Zd44\\u001d�\\u0014�=Z�V��E�\\u0001bO+ێ�R��x�\\u0012�_��Vs\\u001bF�\\u0016�\\u0014�0\\u0010��\\u0000� :\\u0015���\\u001d�6�\\u0015�\\u001d��f0onʦ��u���M)!�A�M�(>\\u0017\\u001aW�\\u000f�/`\\u0007�x[����v��I4!\\u0014�+{3\\u000b���j\\u0006�T\\u0017\\u0005�\\u0012\\u0006���LW�粆_l�\\u0017\\u0004?C��~Cc$�*z�\\u0000�CE�w\\u0019�/\\u001cL\\u0004\\u0000�\\\\\\\"mJ�p\\u001b¦ܣ�\\u001fR��~S�\\u0007^Ր�\\\\\\\"7\\u00141�\\u0013~�}-^K�'�6��`��\\u000b��e5�S)�C�g�\\u0002�A�ğ�ox�4�\\u0002_�L\\u0000$\\u0001}E�Q�x�a���y�c�\\u0017\\u0014�v�\\u0002�f��B\\u0006\\u0002��Uo�\\u0017�\\u0012��T�c�u\\u001d(Fp��+i�E��\\u0001��fő\\u0005؀<oT�l��\\u0017\\u0004�����\\u0015�Y�p\\u0001�jS{����EE�N�iY��<\\rF�Ë�5q���\\b�\\u001d�X}H��Sv\\b\\t�,�\\u0004�\\u0006\\u0017\\u0015I\\\\\\\"x��o\\u0011F�@HЕ\\f,/�P�N%��\\u001b�S�ɧ\\u0005\\u0000�����I\\u0003�y�PL=�\\b��@�!zq�Rm��\\u0004oI��סKmҍlh~�\\u000f+[z�$\\u001e�^�։kPiF\\f�\\u0015\\u00174Jv̦Er\\u0002�\\u0017\\u0001��=k��E\\u0018\\u0001b\\u0007ʺ8�Y�<h�U�}7:�GK�t|Ӎ�x��c�̎_m\\u001c!\\\\\\\"����¬ݧ&䳡'Ru�T���2�9t*��\\u0000i��*4F\\u0012\\u0012\\fw��$Vw���E$�����LY�.\\u000b2�J���k�\\u000b\\u001dC\\u0000z�*gp�5�#�ǐ�\\u000f�C�{\\u00057�mT�ʭ\\u0013�1�#RA\\u0007M4\\u0015h�Y\\bU�΃J\\u0006Y?��|M2�0<(���@o���� ���\\u001d\\u000fQT��F�xS\\t�I̩�\\u0005 y�Bv�FE��i�\\tg\\u0001Qv\\\\�cYP'\\u0017\\u0017\\u0017k\\u001f��\\u0016`|)LS�8��mzy�;E#D\\u001aѝ@���k���\\\\\\\"eA\\u001a�&m�\\u001eU5r�j��\\nS!$`\\u0005�v��YJ�\\u0011cDf���2؆QoZ����[<Hц:��U[\\u0004�\\u0012\\n�#��?W\\u000f�?*#�\\u001f��|)B\\u0010\\r�ZR�F\\u001d,��!,���\\u0007[��ܰВ���?Ƶ�\\t2�9�*\\u0016��\\u0005���\\u0019G�wG6_\\u001b�\\u001a\\u0013S�\\u0010;T��`HS��G\\u0005Af7����\\u0011B��Z֠L��I}E�\\u0000C�\\n�\\u001b�\\u001fε�*7R��pifHn!�u\\u0002��V�N�]Ů<��$#!�`ޞG^�����m[\\u001c(\\u00165%O\\\\\\\"5k��U�u\\u00174�|A�2\\u000b]H����ٻ~B�x���Q\\n\\u0014�� G¨�y2�#e\\u0000tj�Y��U�\\u001fb_s۵ڭ�I|G�WǒG���̢�}\\u001aѬ��\\u001b?�i��\\u0011g\\r�D��\\\\0�\\u001d\\u0005\\u000e;�\\u0007�i��5\\\\����\\u0018\\\\i�W�A\\u0013rt��\\u001fe4���C8�2eA \\u0001P�\\u000b\\u001b^��\\u0013ƍ!�B��\\u001e��\\tT�c� $xZ��\\u001e�1<l@�_v�K�L�W[�m��dM\\u001e$�4\\u0003���i\\u0017mʚ_iB���S��j:Ep���>��Y��\\u001b)���T �n\\rJ���\\f�\\u0012F3�|�\\\\\\\"i�)T\\u0017n&�Ԗ^�\\fR4l�J�\\u0012-oƻH�l�a\\u0011��GV���<��ʟ�9\\n���a�ִL����E'u�8qld��\\fmn ���K�S��\\u0013��\\u001b\\u0004\\u0004��rm�,���E� ���.5ܒ�W{<99Q\\u0002$��p�^��/\\u0007��rS\\u001a�Ek^�\\u000b��pg�;�K�\\u0005�`\\u0000��W�R�\\u0016NF4��dd?#K1��I-�P�r��@��\\u001cw�\\u0004��*|�6$��X\\u000b�{ИrɊܕ��Nƛ��6@T�⾯�����\\u0015�,�M�e�&�m*c8U,\\u0016�㑰��@�\\u0015�\\u0016�|�Y�Ғ�\\u0004�\\u0011��A���W��\\\\\\u000e�j2l��\\u001c%��B�\\u001eTi�\\b#VU\\u000e�_p�o5�K�JY�W]m�v\\u0015M�,\\t�ȶ�\\u001b�E�`�.��Qy\\u000bٚ�_�J I\\u0013��FHbeRW}�i�5��c��j�UK*r.\\u0015m�^L\\u000f�3A-�����Qz�\\u0010M��/��_s��q\\f`�,E�@\\u0000t��p\\u001f\\t�3��k�z7��t�5�z��^�\\npj�ƙ���k��>H�M\\u001a���k��Z;���$�\\u0019W[y��׊�\\u0015r���\\t\\u0004\\u0010F�\\u0011[�\\u0003J�Ԁ\\u000eצo��7)\\u0019n�_��<1\\u0005\\\\\\\" tR@�k:>N\\n���gƑT��\\u0003Sj\\u001c2�E6�*\\\\\\\"�2,Ȭ\\u000fٽ!V��j�V4\\\\\\\"��B�\\u001e�\\u0014MƦ��\\u0019�\\rk,y=�g]n-�Ǝ�0e��#F������\\u0000m*-�u=*,�M���>�\\b�-�\\u001a�\\u0002��z�\\u0019\\u0015�Y��\\u0000*C\\u000b�;�l\\u000f�U�u#����$��(�Q��w���d�еǕ5���0�{\\u0015e ��e,O\\u000b�qf\\u0014�dÇ;D��n�t'pp�\\u001c��n'\\u00029Ƀ��\\f������cPs\\u0017��\\u001b\\u0015Vv�\\u0000N��@\\u000e\\\\\\\"D\\u0014\\u0005����\\u00191��u\\u001a\\u001d\\u0005�%|�[�\\u0007����l6�I\\u000f 9\\u0007楉\\u0003���ɋ�5��6ۡ���,d\\u000fB��\\u0014\\u0006\\\\g�U�j��\\u000f\\u001a�S�<A�Ǉ\\u001d�B�\\u0018�קƷi�afk��\\u000eܖ��\\u0011ҏU��\\u0000T9\\u0003C��P�F\\b�0�\\u000b���}��QyH�\\u0003���E\\u0005�L�f6�Zk�%�4�\\u0002�\\r���yj�\\u0003\\u000e X\\\\\\r���V��#k�LQct�E\\u0017�XRn\\u001c\\u0015\\\\�LP\\u001d�bEX�#/\\u0012䯅5�\\u001cQ\\u0017\\u001e 5ζ���O\\u0014lB��./ӭ8�R)\\u0011D\\r�(> \\n�4�8G�0-�m�mڰ��g��\\u0018~*,�\\u000b��Br)\\u0013��[�#o\\u000b�W�Ll\\u001d=,\\r�\\u001e5�O���`�\\fa�KV���`d�+\\u001cd���T�H��\\u000f\\u0003Y9���e*�\\u0012\\u000e�\\u000f�C2�}@5�E����\\n.�<���<k�Y47\\u0015�.#�~\\u0002�5<�\\u0006�\\u0002���\\u0002�\\u0005���2-bT���o\\u0006*6G\\u001e7!I\\u0003��\\u001c\\\\\\\"]U�P�qaG$ԄdO>\\\\�\\u0005L��}6Ҽ�D��\\u001a�eH�\\u0015\\u0001SoM���V�8���^�\\u0016�\\u0019\\u0006Y�\\u0017���j����޹�&�ر���S�)��8�\\u0000Y�F,�^\\\\\\\"��:��i�9\\u001351�nV֭]\\u0006Go�\\u001c�Щ\\u001d\\bZ\\u0000��=��N_\\r�'� \\u0005���鶵GD��\\u0001�:�e�/\\u001f\\\\\\\"\\u0005�A@����\\u001aR`\\u0015Ux���V�d�\\u0001��yx�q]�Uu� ���\\u0018r;�6��x\\b��d4�ŀ\\u0002�4\\u0007�~=͋\\u000b�\\u0004*�k��y\\u001b\\\\\\\"\\\\��Y\\\\\\\"*��\\u001c�\\u0006\\u0006���=�\\u000b�2�_\\u001a%.\\b6E\\u0004_M\\b\\u0014&�\\u0003�8�1�\\u0011�bN��W���\\u000b�G�c�\\u0019\\u00128V>�*5�\\r�+�w�\\u001d��N}\\u0007��a\\u0016^DB��m��a\\\\\\\"����<�\\u000f��\\u001bNDw$�iM{\\u0016\\u0004��,����\\u0000�\\u001f�~��(v�XlZ;n\\\\\\\"��`�h�\\u0000\\u0000t\\u001b^��\\u001d��a�r\\n7�{o�\\u001f\\u0011�Y�(\\u0016\\r�\\r�\\u0014Ӓ\\u001e=M�ǵ�U��H@��oH\\u0017���+��\\u0015OK\\ns���A�$׭#�{m��\\u0019Y\\u000e�\\u0016�I~\\\\t:mj\\u0010�/q!b�bN�\\u0010i?i4U��\\r�\\u0015v�\\u001e4�^�l�\\u0019Q���C\\u0010<�&D��O w\\u0006�kBa�0ƛ��F��\\u0015��ϑ\\u001f��\\u0000������X�ƁDHY�I%F������[�9�c19R�\\u000b�\\u001f*1:\\u0004�\\u000e嘪\\u0014I�\\u0016�\\u0003B���\\u001d�z,Ī.�P\\u001e��Î\\u0016�K8*oq�:S�\\u001cE�\\u0014�\\u001d�9q`�B��\\u0010lu���q�]�B�+\\u001f���`�wU�,\\b孯zJ�|^�\\u0014�\\u000e:�\\u0001��&��w��\\n����D���\\u00177;���%� \\t�V��\\u0015T�NN�o�'SG$;R�qm|x3��9مNT�/\\u000f�\\u0013��\\u000b\\n��u��\\u0011�H�\\t].+���`�١�HR�\\u0018�E�\\tb�k�[��T�n\\u000eA��\\u0000��m[E��\\fM\\n0��p@52\\u001cJ��*\\u000b�\\u0002�iGD�G\\u00192\\\\\\\"�]y\\u0011�&�B�,��#ca�P�w7�ely\\u0019\\fJ\\u0006���+F�\\u001eڀ��rT\\u0003�[ۓ\\u001a\\u0013č�Y�\\u001a�\\u001bԊ$�� �xם�)!�c�\\u0006�=+\\u0005k\\u000b�<��\\u0012(\\u0018\\f�����[\\u001f;+\\u001b eA'\\t� =���t7\\u0015H�6�\\u00166f�Y�V`������2��\\u0017z�6�L����`�l|�\\u0003Ař�\\np�B�{�C�Ɖ���Vf\\u0000�E��@O�\\u001f �\\u0000\\u0007qI_1\\u0003uĚ͕<��W,�\\u001a\\u0001�Pm��ۃ��:&�T涷Q֭\\u0011�(\\u0004\\u0002N�\\u0014Ӓ`\\u0006<X#R���I7:U�$ab\\t\\u0014�3\\u001e5đ����\\u0011����\\u0006}���-�����S��x\\u0019��%�/�Q�G�H��+�²4�.E�۱^Z�Zu��G\\u0002*�T!�\\u0016\\u001d<hx\\u001a� ��� ,|�����\\u0002�W�!��#j�@d���obm�h�\\u000e�ʹ7\\u0000(�sj��jR��Ij\\u0018��;�l����W�;�d>L�2Hnx�6��|}�W��\\u0001��o�V\\u0019�Ɋ�p\\u0000`o�6���d�`�؀\\t�mY4H��V�,B>`r��T�������Q�C���F�n�����\\u0001�M��/^�)\\u0017��VLor\\\\\\\"��\\u0006\\\\\\\"�B�������S�9��[�t:\\u000b[�Q��qf ��hb�8�\\u0016V�đ}E)�����kJV�B\\u0003\\u000e�և\\\\\\\"S\\u001f���B�3����-}i�c�\\t\\n\\u0000\\u0000^�K����\\u0000�n�;�֜_\\u001c�qƈ������\\u0005���k~�U[r\\u0007S�\\u0015��&\\u0017R\\r�\\u001c��t��ښ��ew_���\\u001bW�Y\\u0003�9\\u001ek�'Z_<�3�\\u0016 \\u0003`\\u0001�{03f���P\\u000bX���$@�w��\\u0005��\\u000f��\\u0000*�\\u001b�f�N�8�2L��}\\u000f+���4�(\\u0015o쮿�\\u0014�-\\u0010J�}*\\u000e������r;�\\u0000xɅ��%�)\\u0005�B��x]T\\u001aX��\\u001b��:�t]9z��\\u0000\\u001a;\\u00030cJy��3��\\u0000�:�ӑ@0U\\u0004���ל\\u0016���L�こ\\u0013�\\u0014aZޒT)�ʏ΃\\u000e\\u001c`�\\u0014\\u0004�\\\\(���\\t#���\\u001a�f�@{_M�h�C4�\\u0016\\u0004�V�\\u0000�1�.:�aQo*Vq�Y\\u0012��_��z�#��:U32�'ra����En��|\\ri$���X_��\\b$[~�\\u0011JW���3\\u0000\\u0003q�y\\\\\\\",��MEx���\\n\\u0013blTQݕ\\u0003�(�C�\\rp��E>5\\u000b��\\u0004+e\\u0000�Q����5��HC0�ipm]���l��\\u0011�À�T\\u000f�p�̙\\u0012%�U\\u001a�\\\\\\u0002y^��j��l���z�9EƄ\\u001b�I\\u001e&�ⷽ����'\\t��8T[�\\u0014��K�`0��\\u0012Mmsk�UJ&\\f�4k�Po��Z�a⩸�\\u0003��N�\\tԁ�]4X�cjhԦ�1Qc~�}�)��@�*�`4�l.\\u000fQ��=�!\\u0012��\\u0005\\u0000��P-���hg.��J}@U���[�\\u00190\\fnښ��\\u0012�%@\\u001bǭ\\u000b���e�G��\\r�\\u0004�X�NLa�^B��T�\\u0015��?���\\u0010�1��F�V�sa��\\u000f��s��2$�)���*\\u000f��y��a�\\u0012�񩙴��zA�Kp�|�H��\\\\}�*���T�󤆮D˱�j˙:��\\\\r�\\u001dF��?�3�Y�*6 ܚ3\\n \\\\\\\"��\\u001c��<nE��\\u000fBm�A�\\u0000�r|W�yk���7n�hD!X\\u0019#\\u001a\\u00009)`\\bҺo�� \\u0000C\\u0018Q�\\u001c\\u0017�UD�N dM�\\u001c?�?���Cw\\\\�\\u001cK-��)��\\u001cX�X�J�7\\u0002n�\\u0000H=mH�Z���:\\u0003�'Ѕ٘�:���������:�\\u001b.W[*\\u001b\\\\^�z\\u001a)f��Y؂���.'CZu�^IǠd���A$���\\u0016��4��'&%M������]V�\\u001a�XN8�m�ԓS\\u00044���\\u001d\\r��\\u0005v&�5�2�\\u0010�y��Z�wI�\\u0004ȱ��\\u0004��kz��\\u0012c\\u0017&@\\u0004��\\u001b\\u0003�fЩ��<v�*\\u0019\\u0013FB���BA&����̬���\\t\\u0002�W��C���=��_�B��c�ɐħ\\u0012O#֞��He�$�t\\u0006�qWU:\\t��5tdې\\\\\\\"�΅��,l\\u0018Ht�XkNgŌdH��\\u0002,\\u0007��\\u000f4j��{�D\\u0002f!\\u0014\\u000b\\u0001��\\u0004Q��\\u0011CU��r[{��.�\\r��'� o^qPoa\\u001bk[����\\u0010\\u0018n�K��t�\\u001d6�q������\\u000fe9\\u0016���I�\\u001a&D:��>TJ2\\u0019T\\u001d��\\u001d\\u001f�����zZ�ex�y�*[���\\u0010�\\u0004�Ի)Pn@�\\u001dF�\\u001cRIx\\u0014X��Ճ\\u0001�\\u0000i�5\\t�S�\\u001b_�\\u0012;�xP����\\u0016\\u0002�\\u0005s�)��eFm�E��Evq/�9Ie�M��Pj�\\u00041�\\\\\\\"yE���obj�#���QeW�}�|lh�iJ���\\u0003�ԓ��\\u0005�KrK\\u0012OS�x�;\\u000b\\u0013qL��q&t�U�3\\u0003k\\u0010@�r\\u0011�3\\u001ddkx��\\u0010��W�[߭N���7�y�\\u0003�-mr|i��'\\u0005�+/��\\u000b �*\\f�cj��v\\u001cY�\\u0003�\\u0019�pA�\\u0013U\\u0011 e/b�ֳ}���Z�-u�[�2\\u0003�?�W�\\u001b[J2H�v/\\u0013�\\u001f��\\u001a�\\u001d`�p� �\\u0005�;U����{��$X�W\\\\��^++�������fo��\\u000e�{q\\u0003q�\\\\{�r@s��\\u001a�׈\\u001bO�7�\\u001a�7\\u0007�S��\\u0000\\u0017w\\u000e�B~M�\\u0000�W9ۋI���e*M���1v�$*.���QU$���\\f����;�KXXX\\u0005����+<�n�ƘÎ����\\u000b\\u0006���@kܥ���\\u0004\\u000b�\\u000b\\u001b�N���u7^S��\\u0003�U����:�k�*6�ꀕ\\u0017��@�<{��6�U'.\\f�2b1O���B;F�U�\\u0007q�Kۘ:9��ƻ�ˍ�{V3�H]ӓ�PI7��\\u001c�99q#بc��+�O�k���\\u001e<]�i�$\\u000f\\u0015�H\\u0000\\u001d���g' ������!�Z3�$���è��xPݵ�\\u0014HO&V#^�QG;\\u0017��\\u001c\\\\�E��)\\f�ʠ\\u0011� \\b<\\u0017O¬Y��$�o\\f\\bUQP\\u0013a�kYw,F�\\u0015�0��\\u001ay�+\\n~�+q��bM-�\\u0015�K�YR��v�V\\\\¹\\u001b���,ĲkV�L#3\\fDܠ��J�\\fHID\\n[Cn�����<Τ��+�\\\\~@�A\\u001f\\n��'�����\\u000b�ȸ�\\u001b\\u000e%A\\u001e\\u0015V��d\\bт�a�L��4q�V\\u001c9\\u0003��j��yG(_p��H$^�YRd�`(`a�\\b�\\\\y��T�\\b�\\u0016�k��M��i�\\\\\\\"p���$�rk&�t�\\u0004�\\u0014Rt\\u0004X\\u0011OAj\\r\\u0012\\u0014P\\t�z��3\\r\\u00014D�l\\u000f!�\\u001f��w\\u0004k�JH���CzXyNA��I,u$׀�n\\r��$h�\\\\\\\"<�7��jk�lt8�裐Pl:�I�\\u001aR\\u0005\\u001eL�\\u0002#��:��ν|��\\u0014��YN⼉��μm���2e��\\u001c`���XP��ܛ8p`2r\\u0000���U=�-���֨\\u001a��MYE�T��\\u000f��),Ic4�v��\\u0003kֺ��f\\u001cK�D\\u001fŜ\\u00064��o\\u001cLx?L�&��3 ��\\u0002��\\u0002 \\u001c3\\u0000\\u0006��\\u000eK���k�y_���\\u0000Q��a��D�xy�\\u0014��#M�r���^�\\nNi�sv�#E��.9o�?�\\u0011�\\u001c\\u0007x�\\u0003]u\\n\\u0001\\u001e�Ca\\u0004q��Jm��\\u000b���V12\\u000b9\\u0016r6���4�\\u0019�\\fN��[��\\u001f\\no�\\u0013\\u0017'\\u0018�)\\u0000b\\u0012�9�n\\u001a�J9@��9��\\u0012\\r�7�{�\\f��Llp#\\fT*�J���\\u0003��9d\\r'U\\u0006���rA\\f�ݓ���^+2�%:�N��\\f?O�\\u001a�\\u0013�r����j��\\u0004��-\\u001ck\\u001c�ۨ\\u001e\\u0006�\\u0010��f��ё�|��I\\u0015T2j\\u000e�Γ.Ih�\\u0010K\\r����3\\u0007\\f6��\\u001a���P6��;�VfI�s�B\\u0002�\\u0000n�\\u0002��;H��1k���Sc�F�+���u���\\u001c�\\bv^o�O*m�A&\\bUN�\\u001f�N\\b\\r�ژI\\u0002\\b��\\u001b\\u001a��YL����\\u0001:\\\\��8kp�\\u001cdܠ$���B��\\u0001�CD�+]��W�⍏\\\\\\\"\\u001fl�\\u0000\\u0012��-�y���(<��\\u0018���f\\u0007�$\\u001f\\u001e���8�N��UaÖUgY4\\u001b\\u000b��|�C\\n������oE`�Ip����2Z剿�����E�\\u001d<�\\u0015�NG]\\b?�5�\\t��s;��Q��a\\u00017$\\u0012M\\u0004\\u001d��co\\u000bҐg+��a���֋�ix��\\u0016�k^��\\b��\\u0001�\\r�\\u0007pk/�c�\\u0000@�⅜rca�ֺ>ɍ��A��\\u001d��ٔ1��oL$��,���*\\u001dH'R6����b�o��\\u0014F^$2�\\u0007�\\u001dEr32��I��E�\\u0004щ\\fĚ�V�^�\\b�\\u0010\\u0000��V�\\u0016urޫ\\u001e�\\\\��7)kxiI�\\u0003�I��\\u0013�E�\\u0005\\\\\\u001b\\u0010GM����\\u0013�\\u00011�%\\u0001$�&�~��H�\\\\��\\fނ\\u0000��PjU��\\u0004\\u0000����ž\\u0015�\\\\\\\":ک�\\u0015�n�\\u001b\\u0000z�y�\\u0012\\u001f�H��vԀz\\nm��i6�JI;�תJ��3�lY1ߊ����zV\\u0010����C\\u000f�.I�\\u0002\\u001a�\\u0010H��\\u001b\\u001f*��a���wa�\\b�zK\\u0013{yP�A�!\\f\\t\\u000b�$��LMy6dG<�C1�@&�\\n�@\\u0000\\u001eT�\\u001f\\u001d\\f!��ě��ד�2-�\\u0000\\u0006ڋx�ײ�m-j���L\\fK(\\u0016\\u000e�\\r�&��;1��I�&�d�\\u0010K��#���\\\\mz��,�{��Z���/zN~���(�%��x�o\\nC�gl���EP\\u0000ԍ��P����{��Y�P1x��\\u0011bl)|�8���=��%��k���o�n�\\u000e<�\\u0000�Wqpǖ�+�̇\\u000b\\u001a\\u001em\\u0004Z��.��ҪTǒa�\\u0000\\u0007\\u001d�\\fxs��ߚ\\u0010A'�޺��\\u0000\\u0018��\\u0000�\\u001f�\\u0000��\\u0000��)ߙ �?`�F\\u0004�OZ\\u0017\\u0013���\\t\\u0018���O���\\\\\\\"B�q��˛)�)�����#\\n�B�'����ֶ�\\u0006@^��qv�\\f,�y8\\u0017!M�mzN�\\u0007\\u0016)�\\u0003�\\\\\\\"��nq�\\u001d��������r֡��\\u0000��\\u0016�y���S�!\\u0004i�eJ�l�9\\u0007k^��zqٸ̦I�r��\\u001d��RlFu.|i���q�bK\\u001f!I\\u001dW��\\u001e����8�-\\u0004�\\u0004�2X�g���\\u0014{w��R-\\u0018�P���I\\u0014�$l���|-O�6?H��\\u000b\\n\\u001d+|�'\\u001eA�_���7$ܓrO��%ɖh�'7D�:e\\u00164\\u0011f\\u000b���ĩ�\\u0002\\b���P�D�º��)�F\\u0001Vrs�\\u0018� .�qV�F5��E����|\\u00180�s4�r.@6�\\u0010\\u0007AXN1���\\u0016�6e\\u001b�(wo\\u000eC�8��\\u001bH~�Y��'��o�D��C�2z\\u0014\\\\��K�����(8�\\u000b\\u0015Ө����&I��7�t�a�G�4���y{�����=�fώty?�\\u0018\\u001e�\\u00107�B\\r\\u0004h\\u0001\\u0000o^�\\b��B+�\\u001dIY\\u0017��b<ǅ\\u001b�#\\\\6��\\u001e<��])H@\\u001b1bY���ו���=�-�\\u0003a�Z49l\\u001aEF1��l\\u0005\\u00128)�L~\\\\���\\u0012+XT@�����u�cv<�OJ3\\u0019T�v��\\u0007�B\\n�+�n���j�$�^J\\u000f��t\\u0002�G~`\\u001d���\\u0010\\\\�1{L���\\n�\\u0013�ʪ��;Yu;R\\\\��\\u0013Ƞ\\u0003Đ/�Mk\\u0019r�#[�\\u0016�\\n�T��.����7�\\u00134�)\\u0013]O����d�S$�{:�Xu\\u0006�����\\u0010y�y�nk�h%��d�\\u0001.\\u001dـ�\\u0016\\u0007[ގ����EU���Zh�3�#ـ\\u000e:i^��,����SԊ���2���qA�cY}�������d�\\u001cw<�GNA´��iJ�<��8.~�\\u000e�I��v�&�5�Ʊ�V\\u001d�\\u0015\\\\\\\"�=�J \\u001eG���\\tu#�(��B,.m�YM'\\u001fB��OAY�v\\\\\\\"��r\\u0013\\b&)ŵ\\u0004\\u001b�-:��)$`�,�t���q�'\\u001dl}U� �:Z���\\u0005��4f/oP��ƈ�9닐�ՙd[]A$\\u0011��\\u000f�\\u0000���>ԑD\\u0018�\\u001e�lǠ����)RT��ɏ9��W��R\\u0002�ڏ���v�C\\u0016v<��+4eT\\u0010y\\u0001��5ҹD�2�d\\u0017�z��z\\u0011�M�v���\\u0005G\\u0017BK/���l��v��\\u0016V,����\\u001fu\\n�{/\\u0013\\u0001������\\u0016`G�\\u0003�a��\\u001cs\\b�z��=+\\\\x�\\\\c2�d\\u0004���\\u0003Sm$u�6�=b��Y\\u0018)R���$t�c�8�g�'x��0��%�@���1]��5��\\u0000��7�Í�Ŷ�\\u0000�Ek�\\u00106እ��s�̆7R.�}\\u0005S'&\\t$g���qkkX����\\u000e�,H[��\\u0015LHѧ��\\u001d\\u0019�0�$\\\\\\u001a&\\u001c\\n7\\u0004\\u001f����_\\u001b\\u0012I#mVERCyވ��\\u0006Gc��~�\\u0013Ee*c?X\\u000f��_E�\\u0000�Ċu��%�1�,���W\\u0017��b;�\\u00157\\u0005\\u0012��詭���\\u000e\\u001a\\u001cO߻\\\\�S�\\u0010E��\\\\��,�>�\\u0004%�\\u0007�Ɩ��_R��\\u0005��\\u0000ƛ��{��uA�0�|�ۜ�%�5��;\\u0000�\\\\�[2\\u0000FԬ��R���\\u0004�rK�8ߑ�5u�A\\n��ĸ�5��k�iSg%֢ї\\u00042�qНu�1{�-%�p�}V��c�$�\\\\�X���N+G4�\\u000f ֱ\\u001eT�\\nY����\\u0000��<�:��@\\b�\\u000b����oG�ް�Ծ\\\\\\\"�3��!POAs\\\\���\\u001c�\\u001fn[\\u0006T$\\u001eJz�?\\ni�HLHŭ��74��&\\\\\\\"����W�Yy5ƣs����\\u00071������2U(��.��a�I��;\\u0014���v����i�ok߭;��'�\\u0019q�\\u001b��\\u0001�@Ѝv�\\u0003��F\\u001ei���\\u0019¸�![͓;�a�@*I\\f6#jm`�\\u0016J^B�;�����.��8ʎ,\\b\\u001eT���wf[X�юI\\u0006����d=�V�\\\\�O�5�\\u0014��^�L�E�9�\\u0013\\b\\u001c��\\u0000|�1�3��1o���\\u0018\\\\\\\"\\u0013�\\u0006[�to�mM�0�f�����{��U7\\u0002IA���,�hLq7\\u0010\\t\\f\\u0005�\\u0007��s�'\\f���Zᔃj�\\u001fj����\\u001b�-�\\u001aS��\\u0018ϓ��`x7&>\\u0000�\\u0000�?PM�ls\\u001f��Ƒ��\\\\\\\"�\\u0007��UA\\u0014jlf]\\u000e��G\\u001b\\u00126�]��1\\u0016_�'ufv\\n.ni$���huݟ�\\fX��L�/\\u001d\\u0011��OA��N홍��r�FFk\\u0016�m���K�I� c`\\bߥ1xl�����p�A�VR:�#����a��)�\\t$:\\u0014\\u001f���P\\r�ތ��qܣ=\\u0000?�-X����1�ؒ\\u0000\\u0005��R��\\\\\\\"\\u0012rc��X\\u0013�L���\\u0011���|�ܐ\\u001d\\u0015��w:D�!�QeR�����A[�4֨e\\u0017s���\\u000f&�E�t�d-x����פx�/�\\u000b\\u0003�u��]\\u001bz�\\u001fm\\n��-g2�`3���J�Ɲ���\\u0014x��X$k\\u0019<�<G\\u001bۍ,̀\\u0006@\\r���eg\\u0014HC\\u000e���6�t�\\u0015���\\\\\\u0018�*���qK�)7��ђw8����\\u001b\\u001d\\u0000��\\u001e'yJ �\\u0013�E\\u001c�eG�\\u0001nCj�\\u000f,��`*,\\\\��7��\\u000e�mDdg�a�Dce\\u0016 ��J�lE�)ou����֕\\\\���>\\\\�eH\\u001f�\\u0012\\u0005�Z�`�ڋ����D�Ŷ����T\\u001e�Hҭ�R\\u0017���f'ٍ�F\\u0017�K_k�kS��\\u001d�X�+���E�FP$z�4=@�z\\u000f��� �\\u0002�\\u001e��z��*\\u001c&iZ�\\u0014\\f��f�H�\\rhg\\t�9BC*�zU�cC\\u001b�\\\\�r\\u0000ҌC\\u0017��F�\\u0017��S{xЫ�'��2�ʨ\\u0001\\u001blF�Vr0M]���_Mh�b�]�\\u0005ܬ�\\u0012.�j��O'!G-�^� ���D����0�RO�H�\\u0017��;ۥ\\u0016�IG��*��\\u0014��t\\b�C1[�g$�B�S5�I�\\b���\\u0000���FTS�\\r�\\u00007�\\u0011��6>�b\\u000fFڊ��F�1\\u0006�0�sFѴ���>b�\\u0013d60��\\u0016\\u0004Y��k\\u0007˖F>���1rČb}\\b\\u0017S��I�'+p����JM˃\\u0016܎��׽��9J��1�^�ro[;Zsc�Q�����\\u0003\\u0013*j��\\u0016��0�L$*���\\u0004x��]\\\\\\\"�\\u0014]Ѝw>t�\\n�(��$Xx_γ��\\u0018�\\u0006�\\u001c��#Q�/\\u00055\\ndZ��n\\u0016׫�<��N\\u001c��6�漍�)��)�&\\u001a�b�:JXټ~4U��>lK<\\f�\\\\\\\"qt��\\u001e�F����A�\\u001a?�be�+\\t��{\\u0006]�XE��8����mV�\\u001ag�x9fC$hd\\t�kt>\\u001a����\\u0010��:���FvY/�)��'�\\u0000�(����+��߅Ci8��۫�����\\u001aJ�Ĝ�{~�ՖÈ����!\\u0014=�\\u001e�\\u0011O\\u0002����u�L�B�\\u001b�zkRokY�Y�呢ff�T�$�i�h홸�Q��\\u001dH\\u001c,E�]�^<�ΪM������2|L)a�����v�|x\\u000f\\u0013V�̙��\\u0001yRO,�q�C,Z<v;y���q3\\u000f9���w$�\\u0005\\u0011�bw�\\u0019�C�\\f���4Ӹ98s\\u000e�\\u000e��\\u0012)ݴ��\\u001c����BƮ쑂��GZ4�*�aK;�\\u0002T#M\\r\\bEFV!�7�/�5�F��;\\u0013��eQ�������!4q�2�N��迶p\\u0019�F\\u001c��\\u0003\\u0018;^���wj��K�I=E\\u0010cf`�2��-\\u0014@�\\u0001���k��#�\\u0002�\\u0015`,\\tao�S����`d\\u0015<�����ä�}-���\\u0014��i�\\r%��N3�L]M�n�+��Y��*,<\\rm� �ngP\\u0001�Θ��,Ć\\u001cHڛ\\u0000\\u0002���e�\\r�5l\\u0019�6dy\\u0004\\u0012�O 7�E�g��r$>µ�ۓ\\u0014:�U�/�*�Qe-E\\t}\\u0006���j[�]�M(F��>A�$^\\u000e��.I��[��\\\\�\\u0011�8̶\\u0017&�N��8���\\u0001�\\u0010��*[R\\u0013�*�����\\r\\t,>�ߘ��mz��&Kh\\u0005\\u0011�c\\u0000����j�I2�\\u0012\\u001c@�)2\\u0002\\u0014�\\u0000-]7��3��с\\\\\\\"�\\u0000\\u0004W8�\\u000fs�\\u0016\\u0017��i�v\\naķr�6�\\u000f�\\nw�P\\n�\\u0017-�E(�S��I�z\\u000f\\u001b\\u0003'\\u001d�\\u0007]</^I\\u001c�\\u000b�\\u0005����8!�(B���~a�S;\\u000f\\\\�d��̩�*\\u0014�o���E\\u001cl�䍤B�v�sM��G�\\u001c����u��߭�C���C^�#P�ۈܨP\\u0006�9������W��\\u0004�ζfїo�5�D\\u0007�.)?y��;\\u0014_�N�@!���b8�bzmZa��Xc!Ԇ,�mc�\\u001b���ƌ>5e�F(B���)T\\u0018k�L���\\u001e(\\u001b��\\u0003F��ڝ��wu��\\u0017�\\u000f���尓�2\\u000b�Q�i�c�oW���\\u0013\\u0004�]�\\\\���D��\\\\�nu�a\\u0001�����\\u0006�iQl��$�\\n�k���ȸ#� �\\r&�J�i��f�y\\b>�\\n-���C�� i�\\u001c�Pt�Ӝ�$\\n\\u0015M��H��ĳ�&È�9\\u001f�W\\u000fQ�\\u001d�\\u0010B++1�\\u0000w�2�\\u0013\\\\\\\"2��ǭ� �$�n�~4DR�ʨ�T&�ф�Pǵ����\\u0000�����s\\\\\\\"Y�\\u0016u[q\\u0016���\\\\\\\"���\\u0000.�4\\u00144�\\u0018�t\\u001e\\u0014Y�\\\\\\\"K�\\u000et\\t4�ܕH�?�\\n�@�\\u000f�����\\u0006ƨ�u$���D~�p�\\u0013v\\u0007��\\u0007\\b�.��\\u0013�2z���\\u001fΛv��\\u0014&1\\u0003�Sf*?7�Ӂۤ�=���*�� !�?G?��Ӳۥ\\u001a�7Ts�G%f�g��\\u00127�\\u0000-��K�̉���қw\\u0016������F�M\\u0002D�Ēǥh��\\\\O\\u0016\\tf\\u001f��[´�\\u001exՍ�F�����a���\\u0000\\u001a�v\\u0005�Q`zRvlQ�\\b;'xb'�;�j\\t`.>\\u0006�|\\f�Y\\u0004�\\u0010\\\\�v ��?�on(�U\\u001fug�'\\t\\u0012�����[ڶ�d�UYC\\u0012�g�A�쒣Q��\\u0000:'\\u0017�wy��\\u000e32\\u0002Pܨ�hE���/�&\\u0001��k�;\\u000f*��\\u0006Re�\\u0019���q�\\u001d*��ܱU:�c����.�\\u001b���\\u001c$���E��*M)2q��5�с�}\\u000b�K\\u0001�'>q�\\u0000�\\u0015�d�G��7S�J\\u0017/r���\\u0016��\\u0013��p�)��a��a�B��H\\u001b�Y����b:?YP�7*u\\u0007��UsN=ѣ�#q���J)2B�F��\\b?\\n]�\\u001f,*\\u001d=W�U,�e��&TмB+\\u0007R���\\u0011jE\\u001f`�r-�@T\\u001b^��|i�q�\\u0014\\u00068ߙ��Ϳ\\u0013�|)�&Z�\\u001c|Ԗ7����R+ۊ\\u0010c���\\u0014f�m�YE��+K\\u0014\\\\\\\"9\\u0010�v���\\u0015�!hυ��\\u0015�'��[��\\u0014|��4�X�Y\\u0015�������nJ񡲾�ҷ���f6\\u0000:��r����[ҭd\\u0003`/Iu�C��ͩ_A�?rÆ\\u0013\\u0004���\\u0002u���\\u0014��G���R9�\\u0018's}���99��6���\\u0000��\\u001a�'������ymBA�{��^\\\\xy�r\\u0003\\u0012\\u0016���Z�M\\fxO`9��\\u001e��\\u0000��ݺ#��#���청SY�V^�\\u001b��;�l�ef�V/��Cj�^Ǝ�D��2#V\\u0002�\\\\\\u001bm�����{NKx\\u0005�\\u0000ĵ���\\u000f���p|�(�%�0\\u0016�6�\\\\\\\"l���x�;\\\\\\u0012\\u0010r��Q����ʎ'���D:\\u0016e�\\u0017�?�����\\u0000��\\u0000�S��\\u000e$�\\u0000���\\u0000�ó�m^�֪��\\u001aV���|�\\u0000�\\u0007cz�x̪\\u0002�����.���¶؛Wj�Y2vz\\u0002ˎ�(\\u0017\\u0001�Z�{o|����\\u0016r��^7\\u0002��\\u001d�!Qk��^B)[D$=�=�\\u001b?\\u0006LLk��X�\\u000bq\\u0002�O��:ʿa�\\u0011��\\u0004\\u001b�[�~�CS�S#J\\f1��6?���I$��SXψӺ�@�SM�\\u0015\\u001f\\u0015���c�(&`��\\u001b\\u0006\\u0003�m&wW�?�W�_ʲ:���ʳF�\\u0002�[�j��1���\\u0016\\b��<�`\\u0006�[�·�d�\\u0006\\\\\\\"�5�oe�cm=?�Tu֪�-��{��.��g}^���:\\ne���\\u0007ƺ�\\u0000i\\u001bBM�W'��2&\\u0007��>���\\u0013[6i�4��\\u0017��@/��LuɆ։�<\\n�\\u0000:S���+�\\u0010l~U�`d�\\u0017�aϢ�\\n�Ϊ����\\u001e��\\u0016IUe\\u001eю�͹'�I�Y�\\u00127S �i�z�<��)\\u0006�U����H���\\\\�S�¶Q\\t\\u0019�t��χ�\\f/�)1([�\\u001aۮ��wrL�0,\\u0012{�A!�^#�z`m}|h\\u000e��%C��\\u001a��Ǯ�Y�W�R\\u000f�^\\u0006��mu\\u0016\\u0000�>t� ��\\u0015;icL_=P�Hx��z����h�:\\u0011c���\\\\�}��\\\\�I�\\u0006֪�j�Ra�'\\u0005e �\\u0001m�$�\\u0015�'m��\\u0015N\\u0014�\\u0000\\u0003���\\u0000�[aƃ��Xi�\\r?�u��K+)2������;�l��ؒ\\u001fi�HZ�f\\u001b�Q\\u001a��3��LX\\u001b\\\\\\\"|vHS�k��><X�w�x���\\u0000�o�ho�,\\u000fa�6�\\u0000�i�\\u001a�䖤���b��\\u0000uE�5�2�����H:k�&�!3\\\\\\\";\\u0004.x��t������3Y\\u0014�����iKe-�Ï�\\u0000\\u0011c\\u0013�>�\\nO߲\\u001b�pX�E��\\u0003��{ڏn�\\u0012�ō�\\u0017�me�'d]n�X��*�%�W\\u001c[~d�=�fS\\u0011������\\u001e�W�c��\\u001b�\\\\\\\"�\\\\\\\"�.�������0��\\u0005'�\\\\\\\"�M�b�K�;�UY��\\u0010�>N`�J(+r9\\u0003�U�/�)\\u0000�UD\\\\\\\"I\\t&����㋋#\\u0013�\\u001b����ڔ_\\u000f��eC���Ȑ\\u0010�\\r��䟝g�&on�`���1�`|�+���7n�'\\u001fW~���Z÷fK�T��Z2\\u0014���권\\u0019��D�l�Κ6.}Lt�*K�c9e��m�\\tV\\u0007��+�iL(�㑵���L�1򂫋H\\r��A�i�D\\u0014�e\\u0016dO�l\\u000f\\u001dN���{���#��P,\\u0000\\u001fy�\\u001b\\u0005q_���\\u0016��\\u0005��̖$~^�*��5�\\u0003�n\\u0010<X\\u000euF,\\u000f���\\u0011b�2�cc�6���� :\\u0011���${F����w7uXYpe�\\u001f.>�\\fq�\\u001ęlv6��3��C\\b�\\u0013{��\\u001d�,\\\\�\\u0013\\u0004&�C�O�e��\\u001cs9my\\u001e����_�i�$��� m��\\u000f�s�;��\\u0011Pڀm}~u�S#́z����@H>>4N4\\u001f���\\u0006N\\u001b��=$������\\u0019��\\u0006\\u0000�*w�Ų��\\u0000���ʤ�&\\u000e�T)mW��k\\u0003\\u0014[\\u0006\\ro\\nǈ<����\\u0018vS�\\u001a\\u001f�'D�@��[bNǐF�ʃa\\u0014R�#؋��=i�'t�H�Ag�㩥�\\u0010�r�bt�ꫫ\\u0013�X�3����\\r�6�^(D`ً\\u0013mO�g\\f%$\\f\\u000f��F\\\\\\\"!��>57�5\\u0003��\\u00196Lp��p���i�l�رc��Y\\u0019Ik�\\u0007F��;�\\u0010��7���a�\\f�d��\\u0002E��j��\\\\\\\"�ge���f\\u0014��� g\\u0000\\u0002ma�>4�<Y��;-�\\u000b�\\u001b�h�r%�C\\u0005\\f�1:�i�T0�ˏ��0q���ME��e&�m\\b��\\\\e�A\\u0005���!i\\u0017�\\u001c@В(�A�{��\\u001f�Gv�UʊNfі��\\u0005\\\\nɝ��;�\\u0010�\\u0012�,�)P\\r��{�z��Q�\\u0001ʲ1,\\u0018[��������L��1�M�\\u0006|I+FM����yy��)9\\u001c���L��pʽE0�ɖ\\u0018�\\u0013s\\u001bjG�\\u0007�1�&�\\u0018�t �Qrp\\fUn\\u0000��l�\\u001al\\\\\\\"N�\\u0013�\\u0018Y\\u000f0,���\\u0012,��H�gm�o^\\u0010��\\u001b\\u000e��e,{����\\u0003BH\\u001bl�\\u001d���F��k���P���b�2��~t�]�5����z�G�\\u0014���r�1�x�Bu\\u001eu��HLj�r�k\\u00167��\\u001f�{%�Ez��^u\\u001f'\\u001185F��\\f\\u0012 �[�����\\u001b\\u001b&&\\u0012K\\u0011\\tԋ\\u001d>T_i`\\f�:�M���%�*YlV�N����V\\u0000&�)\\\\\\\"\\n�A\\u001biJ2p�%��0=VЛyS\\u0012T ��*��<�����E�\\u001d����go�89��q\\u001f�$�o�º\\f���\\u00114R�N�c�\\u0011^�����\\u001b\\u0013K�^L�676?:}�\\u0018aL�\\u0004ˆ\\u001c�Q%�]�>5�7l�%&2Y\\u001bk����0�P����<\\u0019x�G>��Ɖ�,4�ɏ��2\\u001e6��V'�\\u0012XX��C�oS�:�?\\n�8q�ESs!\\u0017c�Q�j�)S>\\u0007J�N`k\\f�+��\\fnI�\\u000b�\\u0002�����Y���+�\\u0003���v�x�J�-G\\u0011�W�ȯ\\b���,?�>lQ��N�2\\u0002��\\u000e�\\r��7\\u0003\\u001f\\\\\\\"(�G\\u0019�\\u0013��Z6VU \\u000e����XUok�k�\\u0000x��(V��9�r�c���)�ͨ�g/\\u001c�\\u0000�m��Jv��\\u0011��)\\u0012���~^�MUb%\\u000b�c�dw�{g�\\u001d�^�2\\u0000$@��W��V,�\\u001cH�����U�Y\\u0019�\\u0013����J�,\\t����Vp�eh�R�����\\u00176|�Kc��A�0n\\u0001���ɑr\\u0015y�J�\\u0019?�[@�κ�kn���Z�\\u0000`��\\u0007&�T��D�HM��c��Zt��\\u0000zS���\\u0004�Z��\\u0001�W<ʄ�~u0��\\u0018\\f��\\u0014�\\u0019\\u0002و��R�ج\\n;����\\u0011�2c�s�ڕd���DP�O�\\r��q��ؤ�I��K�x��\\u001b�1���\\u0010�Lm����G���x��\\u00128\\u000b��Pe{�F�,C�iy\\u001c\\u0019�\\u000eL���+�y\\u00049��V\\b^H��uBV�}T�WH�\\u0007W?`�_���\\u0000�?\\u001d��4\\u001d/j�n&\\u0002\\u000eN\\u001c\\u000e�\\u0004E\\u000e3�jM�m\\u000fp�q�%��q�M��ںL�1�C\\u000e*\\u0015�|�\\\\�ohT\\r�(�*R\\u001a�\\u001e�ߧ>�\\n�\\u0016׏�h\\u0012t�(B��µ�B%&�6��kid�N\\b�lt�Y�K�U&D%�.\\u0003_Q�EP�\\u001806�2cǍ\\u0004�k\\\\\\\"�+�_\\u001a�.B��É\\u0003QOG\\u0005�'Go\\u0001��.i��i�=�Y]t��ډ�\\u0011\\u001f�y�*���0:�{�ۥN��r#�G\\u0013pR\\u0000b7�\\nO��&1#7�� \\u001aΟ�&�s�\\u0007��\\u0014�|�\\u0000�fh�.*+\\u0011�%�\\u0000�8��a�+\\u0004�\\\\\\\"�-!%�Ԛ\\u001e\\u001c��\\u0015����\\u0011M�\\u001bk�%{)\\u000bUB��Q3\\u000b�\\u0018�N�\\u000fJ��\\u001e�\\u0004xP����7\\u000f���쫮LÊ�y���g�h�z�\\u0005ˠm\\u000e�M+N��\\u001f30�\\u0001� �-���ң<�w\\u0000\\u001du�u\\u001f�d\\u0012�C�\\u000f\\u001f�O>\\u0000�n˕\\u0014O+:\\u0010��\\u0002���@��(w�}�;\\\\\\\"<���,y=*\\u000f@E���~޹�G�\\u0011�\\u000b��\\u001fe$Ӓ�:�8����cY�\\u0018�`�����Û\\u001e\\u0016���Q{\\u000b�Y�o��\\u0019:�z)r\\u0015���kp>:�\\u001bFh�q2�\\t\\u0018�$}$�>�\\u001f'*H\\u001d�`9[q�)���\\u001d�6xW�vcdP.~\\u0002��g-\\u0017-a0?n9\\u0019��_R)�'eɄ\\t!t<��r&��\\u0005\\u000f��\\u00048�&\\u0003qa�Ƽ�Y}�\\bėWƾ��q̵r�f6Ƞ���setfUh�\\u0017��G��Z�f�Ĭ���@�K���3\\u0007�>R\\u001c���W,�@������>'\\u000ev��0��\\u001d�V��s����� �^��\\u0015�}�D^>ȷ�/�e�CĒHxH/��6�qK�3�̌�\\u0007aժU��\\u001ft�)�l��۹\\u0003OWM�\\fL�\\u0012T\\u0011JY�\\u0005AR5\\u001a�}�xD�W�096\\\\]ln~�p�\\u0014��9\\u0013����J$\\u0006��{�\\u001d���[!ɕ�$�{޵\\u0019C\\u0012\\u0012�\\u0002[R\\u000e�G�o��\\u000fr?�shΚ�T�7{FÄ��\\b��O\\u001du\\u0016�0��\\u0017���oT��.$�/��|*�D�\\u0001S���w��\\u0005\\u001eFM����N}���s��k\\u001c켘/�8[��[�\\u000fƞ�-�a\\u001b/\\u0005�)\\u0017� [\\u0018\\u001b�\\u0003�5\\u001c�+�,LTɝUIWc��4��y8��9\\u0010��s�(<8�y��/O-o]\\u00074����\\u001d�$���d�K�R��`�}��\\u0000\\n?\\u000f\\u00179`\\n�6\\u000b~%�\\u0002z���h_=�0>�<���(�'dU*�Q�@\\u00057-\\rF⌱����ꨀ�\\u0000'�\\u0006��\\u0000eD�-�H�\\u000eNl\\t���\\u0019\\u000eDG\\u000e�9�ܗ��N�&;\\u0011�\\bc�=>�ZB�%��~�ʑ�v�A���/\\r(W�\\u0000,Mv1�yx�\\\\\\\\mk�\\u0016�ɐ6��~4�n9ax�^���R[���@߭|(�^\\u0014>҅\\f\\u001fM6Ӎ&��\\u0000N��R��\\u0000��S<K\\u0018�4\\u0003S\\ni%�KmᜎGx0�p�y�u:�\\u001b��]�##!1�Q\\u001c�\\u001e\\nN�Z������\\u0018���rz\\u0002w\\u001e\\u0006��\\u0018�;�\\\\\\\"���\\r|��Ư/QK:\\u001cL\\u001e�\\u0017�\\f��oPcbw�J3;�d�[ )x�G�\\u0016��]nk�N�\\u001e�\\u000fWƸ���D�7���\\u0000��z\\u0015U,�RL�R\\u0015_[�U\\u001ed�#�C0�\\\\\\\"X�;ۗ�\\u0000�CvY\\u0015��;\\u001d�'�\\u0000��b��\\u0006�[[�\\n\\u0012\\u0015��8c��!+\\u000b$���[�J�\\u0012P�\\u0010A�'�>2�;J���T�NۚE�+>B#o�����J�\\u0014~�B�*�\\u0001sW�\\u0006uE�0#\\u0007U ��t�C\\u000e6��}@k�Yc\\u00148�\\u0003b8��X\\u0013��\\\\\\u0007���.f�3�{�\\u0000\\u001a�\\u0000B�\\u0000\\u0005ﰦ\\u0019��$aN�p>F�P�-\\nJ�S\\u0002N�@樠\\u0003`�cJ�G�\\n��k�\\u000e��\\u0005\\u0015�}<�}��ZG\\u000b�^Ö�#Z�Ʉ\\r.>A\\u0000����('��b\\t!���,t �K�\\u0017��cK\\u000f-\\u0003H�,��x��޵u���\\u0017�\\u0014d��p�āH\\u0000�x�@�!\\\\\\\"��K��7X)>[@��sk���ho�c�:�b[�ūYq�'��O\\u001576�?�=��\\u001d�IS�U�Eǁ\\u0015H�@��S��q�G\\f����6�\\u0011\\n��I�J�\\u0000Qmhm�#e�d�J����\\u001d(���\\u00124���\\u001d��X���ގǙ�\\u0013��xԶ�\\u0015۬C�0̃��,�8o\\n�9UG��U=:QYvɑ\\u00016�֕J�\\u001eW��9\\u0000�6�Uf%�<!�`N��\\u0000��7�\\u000f�\\u0011��=���mjt\\u0018\\u0004\\u001a_��)^q\\u001e�ߢ�\\u0000\\u001aa�\\u0007��I�%�ʶ\\u0010�\\u0000\\u0005\\u0016\\u0002�[�bX�@����!\\u001a)\\u0000��z˲�N���=\\u0014벻��Ɔ2�\\u001cL\\u0003-����S,��\\u0004\\u0011�Xf\\u0012Y\\u0018饾��&��o�5i�S��7K��'\\u001e�\\u000fh�Q]���g�8�W۵ى\\u001a���ջ~2e+�\\u001c�\\u001fH\\u0014�)�\\u001c��)1\\u0007������\\u0004�ݧ7�D2fd*X)e$�O��\\u000f��[�\\u0016�\\nw��b;T��\\u0000Z�\\\\dY�}$�t\\u0014H�1O��8�\\u0000mq�y���*/��U:\\u0000-��A.[+��n\\r_\\\\\\\"^P��^�}\\u0011[\\u0016-��\\u001d��4��\\u0004\\u001c��e9\\u001b\\t/pz�Kpq�\\u0000S�,��\\u0000ݏQ\\u001fB�i�i�& ��9���WV�\\u0003�x���\\nwI;��\\u0005�X��a�K��zT�c��i�w�_\\u0005��\\u0013�mo�'0�q\\u000b\\u0016��on��m�\\\\\\\"a��\\u0013�a�F\\\\r�ڃ���g��\\u0018\\u001d^e1��\\u0000\\u0000H�+�ͺ�FnT��F��i��=�\\u000e4��(�m�\\nVO\\u000e$\\u0017\\u001c�oo�#���\\\\\\\"�(,�@���$�\\u0018c���𠳠�U\\u0001�\\u0006��\\u001d=��ᤱ��_e�h�@$Q����ص�\\u0016��\\u001c\\u0018)җ\\\\\\\":�,v��k�G9\\u001e6�\\u001b�k\\u000eq�\\u0007ڲ�\\u000e���*�wY�OnF�\\u001d�\\u0000_�jY��U5��«\\u0014�����-Mh'�t�����\\u0013����\\u001b�_Q��@r��׍��'m)�gq�#\\n8c[�U��MT[���g\\u001fԒ�ރ��VrʄQ�!\\b�Dd(&���V��\\u001d�1�1�Z(PY\\u00105�\\u001eB��R\\u0004/���(<y\\\\\\\"!\\u0010�=#Q�j���M\\u0000�>�\\u0010\\u001f�Ȓ@�[�a�i�K�/\\u000eg\\b\\u0001��������E�\\u0005�ċ���f\\u001f\\u00034`\\u000fPk�V���d�ɦD<@&�F\\u0012I���YE�ʹ�V1�\\u001b�\\u001a�J/���!�\\u001bs\\u001cS��%;mfїU�k��-7l�P��`��}~�+\\u000f��s��I�TH�\\u0017P�đ�kQ���I�ů�S�\\\\�\\u0017\\u0012\\u001b\\u0000@�4;�\\\\\\\"�N�C�+��e��q�\\f9*�T\\u0000�z�a}\\r�#�y*X\\u001ed(�\\u001d�U��J��(\\b�\\u0000�A���vߐ��i�T��0g�\\u0000\\r 7��\\fȯ�����`輘�\\\\~Ze���F){�+F�B\\u0013l3ۈ�\\\\\\\"=[��#���\\u0004���\\u0006\\u0000\\\\а���u`z�Z�\\u0010�4�mQf�˪L+\\u001f&\\\\\\\"�P\\u0010F��ջ��\\u0012��\\u0000\\u0001AG\\f�#�\\u0016��\\u001dw�p\\f$�*�&�I�_���\\u0004\\u0004�I;�x����Z�he�����Ky�Ѫ'%��A6��eL�y\\t�\\u0014��h�\\u000f`Ny>+Ad�$��r�K�\\nk�\\u001d9\\f�e)r}��������ߓ^�kښj�`JO#�.b�ߥ�ZFX\\u001c�)\\u0004��j�P:��cU�nl\\u000f��Mx��F�J�k�\\u0013\\u000f�W�cBB��6��f#�M�H���yWQ�\\u000e>.<n\\u0014(����0�\\u0010����cr���G�\\u0000ͤ\\u0013dE��\\u001d\\fm��x���|k����d�b�C�\\t���������e-\\u001bJH#b>\\\\\\\"��F�w3��2�\\u0003h\\t\\u0002�un�a�&��ք�;N�E�u�\\nq����2�\\u001d/I�\\u0000\\u0017�R��Tr\\u001e�rMC��u\\b��\\ng�%�%\\u001e�\\u0006%N�\\u001e�\\u001c\\u0013r��7pz�Trz�\\b\\u000eIU\\u000f\\u0016���\\u0001F6�y�.��k%Y\\u0002���\\u0003j�RB\\u001b\\u00127\\u0017��{U���s�`6�~�:���\\u0001\\\\+���뱢%�\\u001bCqm)ڰ������p��� j��Pg�Lv�{�K7'\\f\\u0001�n�ʀ�[I\\u001bt\\u0004\\u001f��s�,�\\u0001,j�t��\\u001f:TI�`�iಌ������В-�Ee7l���T۠��\\u0016X��\\u0019������\\u000e\\\\��\\u0013I�\\u0005�$\\u0014v���M\\u0014��ި�(n$�E�+���@�R�:�[\\u001a�2�#��i�\\u0015pKԺ�f*\\u0004��Qaq��\\u0005��^`\\u0012K�S��\\u001a�x�����\\u0006\\u001a��I�Dg!�j*ۙZ\\r�3�m�^E��c\\u0017b�\\rv���\\u000f���ܮ0�R ��[��Ԧ���\\\\\\\"\\t���W��4�e;j�\\u001e5��X\\f���\\u0000�c�yY\\n�\\u0013�F�\\u000e��\\u000bI��c~ީ$�\\u0015s`Q���\\n��\\u001b�1�:q\\u0004\\u0011�߸�݂\\u0004-bd'�\\u0005 9��\\u0019�V\\u0007C�Z��\\u0011\\u001e�Y��҉�$�ʍA\\u001a\\u001a�\\u001b\\u000b\\u001d�<ޫ��Κ\\u0006�pd�6dŉ��\\u001b\\u000e[\\u0001��\\u001d�S�K\\u0015�ڷ�\\u0000�X����\\u0016F0P�H�\\u000fB\\r4��ͧ泐\\u0018j:\\u0000*�E��0sC1.��J���ڱȋ'\\u0016;�\\u0015���mz�+9�L�\\u0016\\u001c91V\\u001aޔ�\\u0000�dL^\\t�k��\\u0000\\n�Y�G��\\u000eUm줳�'#�\\u0013��\\u0007J2\\u0003��\\b�\\n�:\\u000b�t��\\u001a�'�t���O��^�����f�z�\\u0005�U1�<��JB�\\r̅�6�?�\\u0012'\\u0012YI\\u0006��H�-W\\u0013M\\u001c�sr��\\u0000ej��4mw7]B�\\n\\u001b�K(J\\u0018�7\\u001f\\u0012\\u0017���1�T���jɇ\\u0017%H\\u0019%����A�5�x-2�\\t��\\u0000\\u0013U�[eD�HT`X�aV�BgK?�����=<.(e�ş�\\u0015q\\u0001R��\\f��s�\\u001a&i�h��z�>�\\u0015�T�E�5]�i-\\u0002�\\\\\\u0007����τ��e���*\\u0005��AE\\u0014/iP���ڳB�\\tP=@\\u001bPQJ�{1\\u0017\\u0015�RR�\\u000b������y���<�>V�kkm�V�f�)�).K2u[��\\u0000e�lr����\\u001a���Ъ�\\u001d\\r�\\u001a�ht���Y�\\u0019%i\\u0012/\\u00106�\\u000e�(�^�<�WH�/v��\\u0013ۢG~O�Ə��;(:�\\u0006�W5R�\\u0002��y\\n���l.\\u0006���?���\\u0012�h�\\u000e.��C\\u0010v6Pi�7���k]F\\u0011\\r��˨1%��\\u0000H�]@�G���\\u001c�\\u001b4`:��\\u0006,\\u0007\\u001bi�:޶�\\u0000��u�2\\\\\\\">\\u0002����ȑ\\u0004���{�]�u�\\n�j��\\u001aVW�V�R�������\\u001a\\u0002C\\r����P\\u0001�?\\u0014���A�yܳXO��b����9\\u001a�cpٷ'@�ST��\\n]ݼxs�\\u000f\\u00120�\\u001b)���5X?U�ic<y\\u000bk��\\u001afZ\\u000b��Z��j\\u001e�6�)��ښ�BZ[�I�sc^E��J)L��#\\u0016pŘܛ�h���d\\u001f\\u0011X*�~,/q��%�\\u0012�m��&N^2�c��\\\\��M�7�Q\\u0019]���F%-\\u001b�Al����on��l�ۻ\\u001f�\\u0018�?7�����\\t\\u000f�\\t�b�rx�\\t\\u0010�\\u001a\\u0000\\u0015���)��8Ф�R�b�\\u001d����Gsq��s\\u0003�!řNƟfJ�+�����M$��bz�~�ã���,��b\\r{z�E5ngp��]��@�N�]G�RHs&s$�+\\u0012-k\\u001b\\u0001�(\\u0018�>򃥍\\u0015\\u001ey\\u0019\\u001e�\\u0016B4>u�l�y�0H�\\\\y�c`\\u001a��y՗+\\\\\\\"\\u0002��\\u0001b\\u0015\\u0003[��Q\\u000f*�[Q}4�R9\\f����I\\u001e��/S±\\u0010�\\u001c�xgF��\\u0000�*Ψ�  ��Xe��v���knX���+A�R�M-˚h�Xcn<�%��h�0�7��=Ǽ���4�%V%��\\u000b���ε\\\\�����\\u001ag�b�q�\\\\\\\"ؕ;��)T�S;���b+\\f��\\u0006�b\\u0007�6�c�\\u0000\\u0015��Ö��h�$�\\u001a�6\\u001a�\\u0010u��xr=���TJ�<F�\\u0006\\u001b���Ha�w\\u0017@�H���\\u001b��9�����Y\\t$��3�\\u001f+�@��,\\f���6\\u0000W5�9\\u0018R�\\u001f_��\\u0012�\\u0019Uٷɞcw\\f<y��#������mv0��󕈒+��L��\\u0012of\\u0017\\u001d+�@\\u0012@\\u001a����vܥn͌a7e�P�2�$}��}�EW]�d֩3�n�����\\u001b�аpn����Z�L<��L4��S�g/���s��\\u000e�U��L��tm\\t�\\b����n$�Ips�)$��k[ʩ�\\u001ba�1�P��nh�H\\n��Sc�`�̥d7����m�db$�]���l6Is\\u0019\\u000f'R<��H�'�5�J��s��*�H�\\u0003�\\u001d��\\nc���\\b��>u�X��\\u001bY��\\u000ef4�F\\u001ak\\u0014��z�i�D\\u0017U\\f>64ӻ�\\u0014��Q�\\u001e@�\\u001b�He\\n����M�Y�M\\u0002�����k�K(\\u0005���g�\\u0000\\\\\\\"�\\\\=�\\u0001~�>\\u0014Om�Y�U���t�4�H\\u0019rLv6 �xiK�fx��\\u000e+XϓCݱ��G����\\u0011eF�\\u0001pv���88�!6���i�^\\b\\u00161��_3E�K\\u0000Ѣ�#��\\u0010�cL��C�mov�\\u0000�W�R�#j\\u0007�k�W���se �|��7&nN\\u0006�@\\u0000�U��1F�1R\\u0014\\\\�M�\\u0000\\n�7\\u0017��.?�1Ș\\u001cw\\fE�\\\\\\\"�Z!1x�\\u0012�\\fJ\\u0002E�7��B��\\fv1��!�o�tr{~����R\\u000e���\\u0002��\\u000b\\u0012<i�0-�V8U�PA�nh���U\\u0012\\u0005\\u00046���\\u0004*\\n�i�9\\u00011�Uԁ�$��\\u001f�\\u001d%\\u0011���A;}��L\\r�b�\\r��k�/'R�\\u0001�����R}\\\\\\\"�o�y\\u00044���\\u0000q��\\t���`�75S�1���\\u000eWn�\\u0018�ɬ~�a��������a���-2�(��`4��ן�;�&Vf\\u001c�J��JL�\\r�v\\u0006�B�����\\u0017O�S'\\u001b)Lk<���\\u0010�HZ5�an\\u000f\\u001b�\\u0006�\\u0007C�\\u001a��ly�\\u0013\\u0013):�\\nom\\u0005\\f\\u0000۵�X�u:_s��YE�2�\\u0014�z+�Z�u�%�0�\\\\\\\"\\u0007�J,���4�<(d�}�P \\u001b|�/f�Ժ%i�\\u0001��ff�����@\\u0002�\\u0000\\u001a\\u0011�F��\\u001bx�2lh�f��+���I��V��G'\\u0000��\\u0018����\\u001b\\\\iZ\\fl�dH�r�C�E�5�?\\u001e\\u0006�\\\\ډÑ\\u0013�b��U\\u000frI�\\u0003�����\\u001c\\u0007\\u0015\\u0005���o\\u0011�H�\\u0017o�\\u00006���fG����\\u0017\\u0012d\\u0004����^�Y3����\\u0011���\\u0003��\\u0004�YRD��v���i�D�!|����3����6\\f�6�R��k�k�tY3�\\u001e�\\u0002�=|�6'���E�a�)-d��\\u000275��j!��`��ֽʰu���X$���6\\u0004��+ZR�S+���5���XW2\\u0019Q\\u0016K�ro`m��¼���X�5�ee���\\u0003�飻vs�m�5�/\\u001eW\\u0017\\u0017Չ���O�\\u001c<�\\u001bH\\t���5\\u0006��G�C>TW�\\\\\\\"\\u0007F\\u0017V\\u0005�G�4\\u000bv��\\\\��i\\u00126K\\u000fv��.:Q���ͅ���,�2���|(̲�9�\\u000e�0�\\r5\\u0017\\b*^�i�UkC�U�ڳ��.Y��-p�����INM�u�S]\\u000e~_�۟\\u000e_O\\\\\\\"�<�k�\\u0000\\n�sc�W�\\u0003�]��\\u0000U:|�s��QRб��+Y�\\u0017=z׵HI����U�W\\u001f\\u001apss�(��3�%X\\u001d7\\u0015uOp\\u0007񢧆9\\u0001$z�k�H\\u0013ڻl.*kUw�l��j`f�\\u0015�\\u0000t��\\u0000�«��wRf�\\u0019M�\\u0016�S��#�\\u0005M�aJqA�Dzu�\\u0014[\\u0016�\\u0012r�\\u001d�\\u0017����1�)^(�T\\u000f{���\\u0006��v8#�I��G*�;�\\u001br��+��S���\\rZD\\u0004D�\\u0005�4����K��\\u0014R+�%,UX1\\u0000/[|i5�=u9Y���\\u0001'b뵍��q��!Q\\u0011��\\u0004���a\\u0000���\\u001c���KsQ�In$�\\u0002��E^�\\r%�D\\u000f\\u000eT�\\n�\\u001be���\\u001f�\\u0000\\u000f\\\\\\\"�ԃ��-�P2р�:l�[\\u0003�O*�b�\\u001co�\\u000f�\\u0010�\\u0004E$��ͭ��Q1���)b`�P�8��qܶ��\\u0010��#��\\u0000o&�2\\r��6ׄ��R��T(���\\u001e\\r$���\\u0012u7 |�/���붕\\u0015�\\u001fR#�\\u001eV��^E���)Y�\\u00105Z�^\\u0003bD�oh\\u0001}�5��4c�k�{ah�/-�m�\\u0014�ݎ�Z�����\\u001f\\u001a��\\u001b\\u0007\\\\\\\"X��\\u0004PJ�7��'n�GK2�;X\\u0011���~\\u0014˶ƒⶺ�k\\u0011��zǹ����}\\\\Z��\\\\\\\"�Y�\\u0013\\u0000R6g\\\\\\\"���qo�Q�T�I\\u00199\\u001fW\\u0016+r>\\u0015�\\u0006cg�0���\\u0001���^�և\\u0014\\u0005gy8jB��[��I\\u0013 Y9sF\\u0000�G~ZX�?����2�Ġ�:(ұ�AԠ}��\\u001f*Ƿ���\\u0016��k�����o�O\\u0013\\u0012l\\u001bb\\u000fJ�G6C{`�����L;��r�qʅ�6;�ǵ�͐�\\u001d\\u0002k��Q\\u0000�������\\u0014^�mB�QGr�\\u0016�ڍ�Y�\\u0018��c�\\u001e�i\\u001f�H�\\u000b@K�O\\u001f\\u00129�d'�Ƃ�0�cĨ�&�㾟\\u001al�O*Q���\\n�܃H�\\u0001��eHė�r\\\\\\\"�|)��U��\\u001dmI��eY �H(X^ہ�]\\f��F�QWZ���K\\u0003ʎ<xא�/�\\u001b޲F���[�kZg�x��\\u000e�$R\\u000eJ�K�XLL�$:�5���\\u0014����d��\\u0005X�B�pH��\\u0001kjk��2�\\u0002\\b7���\\\\�&\\u0016H��9H,\\u0018���΢����]j��:9�\\fҲ�M�R?��1r��|��A���?}\\u001fަ�X�uwq�x�oo\\u001bP&h-~k�\\u001dm�,wM�oE����g�I\\n�X\\u001b(��e4,���\\u001e@[­\\u0016\\\\qI!ߒ�6���R���fn`�f�\\u0000j���Q�(��yu^;}�&Wl�H\\u0015��ޢ��Qx�0�\\\\\\\"�a��^��p��y\\u0010� ab\\r�������\\u001a��U���\\u0010�4>ɐ4~b��r0H�}$������,�А[�u\\u001b�\\u0006�\\\\\\\"y\\u001c�nLJ饉�]��Ԕ�\\u001b`��Ί\\u0013\\u0002\\u0005\\b��\\\\\\\"�S*���&vF�T�d�\\u0000��[Z\\u0006@UK��6��i=�\\u0011pt\\u0016\\u0014ր�\\u001f�sȚ3\\u0013\\u0005\\u0001�A��Z�\\u0011�ȑq�\\u0005\\u0000\\u001fU���\\n�h���i�j��V�44���@c���\\u0000\\u001b��y3\\u0000Y%>�q�m�h\\u001c^�\\u0014\\u0013;\\u0007<���\\u001e~\\u0015�&d\\u000bq��B�L��L��ꑊ�zS\\u0010\\u0011�)<�E#]dp�����N1{\\u000bcE�C�\\u0004`�X���\\u000e\\\\�Ojb\\u0003�r+q\\u0006׵[/���\\f,bE׏[�Ӭ%)@�3�Gv͓\\u001f1��{�\\u0012T\\u0015��5���E$�\\\\\\\"�\\u000b\\u001b\\u0003����H���y��_}lo��`e��G`�������i7,h�a���H�\\\\\\\"\\n�\\u0000\\u0006��\\u001div\\\\yS�,�Y�d+\\u0015�i�����*\\u0010ͪu\\u0014;f:�/�}.׽����N�_��.��&[ݘA�&D��\\u001e�+\\u0005\\u001f>�*|߲�\\u0000��Ǡ���-�\\u0011ݱ�b\\u000bm������#w-�U%��\\u0003qW\\u000bc��lpo\\u001f\\u0015�{װBf�/Ǐ���8���6��o1[�������\\u000e�:ԩ���0c.3D����\\u001bPC.�\\u0019ou7\\u0007�QR��\\u0018\\u0013{��\\u0014��o�K�y���sy�r\\u0001��n\\u0007_\\r*���c�A�s���W�K\\u001e1��<9�k�Q%��Ѹ,w7�>T\\\\\\\"m;\\n�Ɖ���\\u001f�\\u001b\\u001f���y���[��v$}���x���^�Yy�\\u0017\\u001aZ���ڳĳ���T�����e���\\u0010\\u0005ņ�D}�lwI}�\\u0012�\\f�E� �Y\\f��'B�6Q�[؏�Z`��\\u0018m*���]89���/�I F�\\u0004\\u0010O.\\u000bAM��Q�2r\\\\\\\"�E���ZwL�Y�lK\\u0016 ���^�*��ЕrI\\\\\\\"����N4*�\\u0019�..�$L%�~\\u000e5\\f\\u0006��\\u0000:�+'��J���ƫ��\\u001f�{\\u001d*w\\f�.(\\u0018�\\u0015n�4'ʩ�r%��iTߍ�?\\u001a��\\t�[\\u001e|n�\\u0018r6\\u001e\\u001f�\\u0017�\\u001eN\\bI%��mC\\u00024>u�n�.��(�����F_o�\\u001d�yU�-�o��Q��%��\\u0013O'\\u0006��S�\\\\\\\"č|h��\\u0018\\\\{����\\u0000\\u001a[\\u001c\\t\\u001b�T��f.d��$�L?����\\u001eT��\\n72T��\\u0013��z�K�xZVb�zVs�3���$�*�\\u001c��d*I6��i�\\u0018��@�\\u000eG�X��.$���\\\\\\\\\\u0006�O��+c�[{G�VIR8�ׂ�\\u0005~\\u001bީ�\\u0002A��DC �����~TQ�G�+8m.\\u0007\\u001d�:��&6�؛\\u000b��Q\\u0011fE\\u0019��\\r��\\u0015\\u0019)AL\\u000e�s!24���@[r�C�U;�l\\u00181��\\f�ۍ�ki\\u001a'\\u00036\\u0018�x\\u0017\\n���m����u�Y�\\u0015��ě\\u001b��\\\\�\\u0006\\u0018�_��\\u001fN��s۲��`>�ǡ]������{vg�ܫ�F�ѱg�\\u001eS\\u0013�\\f��t:(\\u001d~\\u0015<�����N\\t�\\u0012\\u000e��T��QGw,|w��B�;ܺ\\u0003Q�($�6K8�x�K�p��E��;�:^�L)\\u001eD�\\u001b�#*\\u000b�.��L\\u0012�\\u0000yqe:\\u001b؊4e*�\\u001c� %dV$��EV��%�\\u0000l���#_\\u0010�|�h\\f��$S�ф��0ֱ��kS��\\u0018�i$�@�o��@˙�&G4�q\\tk�5���M�d�\\u0015�`,\\u001d�\\u001e�:V�v�H�瓐�ɵk�<\\u0005I\\f��\\u000e�ey�����a\\fA*\\u0001R\\r5�K\\u0017a���\\u0012���1�J>^�4q��ո�x�nm^�3e�\\\\\\\"����\\u0000Xj\\r<���c�a}(`�A�lV�\\n���@#�\\u0011&$?�.�\\f�\\u0011���V}����oH\\u0016����8<�)���QpŔ\\u0010\\u0018�d\\u000f�!K\\rO��r�\\u0006�6\\u0007�Q\\u0018sĢ2�\\u0007\\u0011b\\u000e��M��L�#\\u0013!�\\\\�\\f�F��o��;v�rUR�Q���Zm�`M���m�\\u001c.��#Œ���\\u0019-bG��[7T�W(\\r�\\u0015nx���b�IU�]\\u0014ڰˊf��\\u0014��l*�X�$-�\\b%���AZ \\r\\\\�\\u000e��½\\u0019@;*�\\n�\\u0013{V!\\u001bA���Y�\\u0013����\\u0012N�cN\\u0010\\f����!.@ �I#O*%�s\\\\\\\"\\u0016\\u0012\\u0002GKZ�\\u001fk�\\u001eR�\\u0005�\\u0005F�Mv\\u0011vl|�\\u0011/22,Kk��\\u0016��˖\\u001c\\\\\\\"�\\u0018Χ\\u001d`H\\u0007r./[�b6VTX���3\\u0004\\fF��6�����F�\\u001ac�i��x�\\u0016տ�5%k6H��\\u0000d�3\\f���$-�^�+�����㽍��\\u0000\\n�\\u0003�h؞�o�W�!ň��`\\u001b�?!�Z$ۄM��I�n\\u000f�\\\\\\\"�H׏��[ܟ�]��$����8Bd��.A\\u0007��y�\\u0010�M���D\\u0014��(0�ƤiЋ�3D��6�l@�\\u0013葉\\r�L��\\u0013���ڡ�C����M�$^J�u�j�\\\\\\\"�}h�O���&,��u`lz��iT�l)u�g���7���Ffb\\u001c�ܛU�ƒ\\u0015�e\\u001al-X6R���r��V�Җ��4��7�l\\u0010l<�kN���MZ�*���\\u0015ʩe6Ɵ�3�r0b��/R>޾�*�R�Au\\u001a^��h�(-b\\u0006��#��� 7�\\u001f�&�;Ll\\u000e �v�\\u0002�PO@G���pG<�'��c�5�\\t��Z�L�QcV[\\u0000��5�#q�?����T�\\\\\\\"���3�͌��P\\\\3qa���f�\\u0019}�\\u0010*�0U\\u0016\\u0002�a�&�ŋ/+�j�9moo\\u0001Q-\\u0014�z\\u001e6D�+J�ZF����o���Oe~\\\\\\\"?Q{\\u0003o\\r)c9\\u0012\\u001b�/O?lqi��o�R>�mA�T\\u00191�J�#�U$�\\u0000/�g\\u0017_������)�`P�y�\\\\�<\\u0011-�=hM���^,v�\\u0013�\\u000b\\u001bT�\\u0019���pB�Em�$*\\u001b�\\u0001�ƽ̚\\u0017��\\u0018\\u0012�@*[�%�KJ���_�_�?m\\u0017\\u0004^�~�\\u0003������\\u000f�M�kE\\u0014\\u0001f!H'�kU\\u001b��)Q�����n\\u0006�:f30\\u000b���v�y�b�\\u0017��=D\\r:\\n\\u0016h��5\\u0018�\\u0002>�\\u001dM+Bx\\u001a�\\n�\\nl�\\u0004�1�������j�\\u001d��@��\\u000b؋Z���¸���\\u0018\\u0013pH\\u0007z��xZ\\u0000��X��\\u001b��\\u0002�g��u\\u000b.@��Z�t&�CJ�鷅.��2\\u0019�\\u0012��A{�I���g���H���\\u0002�Q\\u001c�����J\\u0018��2�\\u00128�����\\u000e��&<\\u0013�\\u0017>4Gv0��&;�mfQ��dB�;��͐�\\u001br\\u0006�W�f��R�m���ou�F*I�\\u00125�pa�\\u0004���H\\u0002���\\u0002�R\\u001a%\\u0017ڰ|�Ve�M��\\nЫ\\u0016\\u0016\\u001aP�\\u0012e~Hu&�Ɣ������$�(\\u0001��G���.$\\u0004Z�M��W�����\\u0017\\\\\\\"���:\\bx�k\\u0002-U�d\\u000bD��*�y�҄P�\\u000e�7�&İ��Z���h\\\\\\\"\\u0004�\\u0001����{������B+q �\\u0007���\\u0004s���\\u0016\\u001a��;1�\\u0015>X@=\\u0017'ν���D��\\u0017���\\u0006���\\u0019�pT�$\\u000b�5�pQ�>\\u0017*U\\u0015�$�\\u0000)ȡ\\u000f�fa���/����8Ӵ,y�^���E�\\u0010\\u00043��)Fa�L�\\u001e�A~��j�3\\f/{7*\\u001cEr�f\\b��@��=������ho�C��d\\u000f�����\\u0017\\u0015h�\\u001e7�)���C���\\u000f��>ʛ7�Г#\\u000eLy\\u001e6 �mŊ�񬣈H�t\\u0017�j'3%d�Y#7\\u000e�\\u0007�R\\t!2��e\\u0017�t�Mh\\u0018���I <s�����\\u001b\\u0016PY\\u001ablH;���L1��WFd\\u0011�\\u001cN�Z�y�y\\u001dՇ\\u0012���KԶ��\\u0019Ë3H�G;*�� \\u000b\\u000b�\\rn��F7|�G� O�4K���\\u000b�^�TqȊ�ֶ��j`ǲ�V��I.\\u000eDP��\\u0006�1V*oăoWƂ�!aNL/s`)�Y�����7 ��P��3ܣdS�򏟤���g&�i\\t�(K�B\\u0005�{�ž�\\u0017�N�\\u0001��̷*~4J\\u001b\\u001dEJo3�)��Y'\\u0011��7�\\u001c��.6�Z�89\\bcRu7��{�,�Dr�\\u0016ؑj�$�;����?���(�3Ɯ2�P<k�#��\\u000e5#C�i����Xe��{�͕�\\u001e�\\u0006��m�J���8�\\u0000c \\u001f�{փ(\\u001d�ﮏ,v����\\u0012�\\ba\\u000b%�bO�j��\\u0015#�m�JlC�׀��]��V�WNW?h�3� �Da72��U��&��\\n'��q����I\\r��\\u0005_��\\u0003\\u0014Jl\\u000f�N��52�x9�y��\\u001cX�=\\b�\\u0015�b���H���^�3\\u0016�������o\\u0004���k�����K�\\u0002�\\u000b���\\u001b[i��\\u001f�b�\\b���V��]��w!���J[\\u0002MģF�'BA��x\\u001a�:X;xh���\\f/`6�i\\u0017m�y���N%��嶛��ǑD1�0\\u0000(\\u0004_ʼ�7���T�`�\\u0014\\u000f\\u0012E6�$�xݶH�\\u0006K\\u0011��\\u001a�1�k0{1����\\u0017�f�34ś���QQ�\\u001a��X��7MD\\rC\\u0007�� �f,\\u001b��\\u0013�� \\u0011����\\u0000W`\\u0007�\\u001a�C\\u001c����׎�q \\u0000>\\u001e5UX�Ky��\\u001c�a)���h嘰\\u001e\\u0017�\\u000f����ei�p��m��Ժ\\u0018��\\u0011��vTr�\\u0012��\\u0017��\\t��)$�c�Ab\\u0000>f�\\u001e�\\u0000�Kx��4�\\u001e\\t�xٖʬ\\t'�\\u001a茈F�\\b���7�I\\u0001�;�\\u0001�\\u001b\\u001bTx\\u001e4$>�q����LEi=�@��r#kyջ���\\u0000�?����\\u0004 �I�6\\u0018\\u0011\\u001f3ZË�Fd\\u0004X\\u001bZ��-��F`�\\u0013\\u0019� 5ɱ��-֪��d�H��$5�҇2*�j��,���x�\\u000e���j64�dB=IQ�\\u0011��^�ǈ'eu#C��9��\\u0004\\u001b�T�%\\u0013�4�\\u0006����~�^�\\u001e[d�F[�@��\\u0001����r�����\\u001a�\\u001f�|�4��$���\\u00182�\\u0000T�'bje��}����|I*�{�����H�$[S}�o��\\u0000��WI��+\\u001c��\\u0012̎�@@V\\r�\\r��\\u001a_\\u000bc\\b-�o��SO\\u0019\\u0013)��'�\\u0004��p�.\\u0014\\u0002m��(>��\\u001b��r4�𐑵�#�i�\\u001ev*���d\\u0004\\u000bX�\\u0004k�i_�l��!�!q#+\\u0016!M�\\b�JJd��\\b�@\\u001a�W,���)Rf �������2D�cv\\u001a\\u0011T�\\u0005\\u0005_2$��G.\\u0004\\u0002\\u0007�b��2�\\u0018�\\u0002m{�XG�<x���n̶\\u0003S`O�`qf3'\\b��\\u001d\\r\\u0002\\u001f���G�Y1����\\u0005���w1�\\u001c-\\u001e��ox՜����;u�|U�\\u0015�\\u0005�\\u0015`��,x�l\\u00004\\u000f��l�\\u001f�ْ\\t1�\\u0016\\u0001�t\\u001b\\u001f�!�\\u0018(��t5�m��A��3(�.\\u000f�:�y��K<�,\\\\��l\\u000b1#Z\\u0017\\f\\u0015�y\\u000bnl~4�\\u0019#�ace\\n�s�/NX���#$\\u000f�\\u0012�\\u0013��\\u0019c1Hѵ�)��>|�c��>�Je0I�$�\\f\\u0018��RM�\\u0006�(�ڮb��aj�&ʌ�\\u000b�\\u0006�xڒ��9\\u001a�y\\u000b\\u001bS�\\u0016\\u0006m8V+kڴ�S�/��\\u0003X�v҅EqoqO>\\\\\\\"�\\u0000\\u001bQ}��f\\u0007�ҼH��\\\\�O �\\u0002_\\nxW�e\\u001e\\u0000\\u0013z\\u0006L���0<���L�Q��`G���1Jeb�X1�\\\\\\\"�\\u0011�s�%�\\u0003qЋW�A�v�q�uf%J�U�X�4\\r@�>��\\u0015���\\u0003��й�����p�X[je��\\u0012��0��\\b'��?�\\u0012E?��r\\u001c����ףan/\\u0019\\\\\\\"�q�Ψ٠1\\u0001.\\u0001���Yy(\\nw\\u001d(w\\\\���6�'�Y\\u001e\\u0007��\\u0011���c!\\f6�:��\\u0015���Ec�U\\u0004��ڱ��;��?#�\\u0019\\nۖ���4�l��\\u001c�\\u0004�u��J\\u0004+X�mZǊ]��q\\u0003��Xc9F<�}���n���N�\\u0016\\u0018U�%��̫q '�֢��q́�F��p���\\\\\\\"��g:\\u0002>�Ӟߗ�\\u001b\\u0012� -԰��F�Z%F\\u000e_��{^_�m��C��to-|(\\\\~��J�4|yh\\b7֊���~�C�Ƚ�Rɨ�&���@�\\t\\u0019Q�S�\\u001b��\\u000bSM�B\\u0014\\u000e?J�}�V\\u001fi�Bsixj@\\u0000_o���(qk��)�\\u0006J\\b�g\\u000bf&�ڮ�\\u0018!\\u0018�\\u001eԸx͓�{�;]J��m�����\\u0012��\\n�n��+��xdC\\u001f�\\nHE������b@��؜X���ms�h�5��\\f�auGnM�A\\u00177��,��lE��(��8�K��\\u0007���\\u0002�H[\\u001bZԷ4�WF�1$\\u0019�E���4J��\\u0015�\\u0013q��qI\\u000f�?e\\u001ced�@�X\\u0002�\\u0000*��FkԒ �_z�Ȣ��đ�\\u0005��P�\\u0018�4K\\u001c ��IV�ڍ\\b�մX\\u0013N��\\u0016f\\u0002�玔����\\u0018�\\u0011�4���i9\\u000erO���\\u0019� ��ִ�z��,{>r��\\u0000P��\\u0002�\\u001b��]\\u0014�x�\\u0013�%����,w�*�#N���\\u0013$�{r�rڱ\\u0019 �8�������\\u0018�~�^�րH�澓�\\u001d)Hǩەח�o\\u0011m��\\u000f2V����y���h���u�bF�\\u001bR̥�P�\\u0016+qE~䞂�q�J�u3H��śr���\\u000f�r���Rh�r\\u0004��,\\u0014�N�)�jɛ\\u00130M0�\\u001b\\u000e.7��Uߊ� ��9�\\f�7����vֶ����e���Ӏ\\u0002���җ�e.\\u0003\\u0003n�ڢM�J:6��!�Y_�P�<'��/���\\u0010\\u0016˧��i�V`T\\u0013��c���)�!\\\\��W��Xb�IɁ\\u0003]��\\n�!Ƈ�\\r��x�D�p\\u0001���-��ڶ�DHHR76��\\u0013�\\u0010��N^��-Q6�T#!�\\u000f���2�\\u0012/�?�\\u0000�w�UZ0�<��%����Mӑ�\\u001e\\u0014�f�\\u0006�2�S�����Z�o��ŻD��\\u0000x1�\\b4.8�\\f��\\r��o��\\u0014�ec����\\u0000�U�[�2�{c%�PH\\b��\\u001b�ִ�\\u001f420�v��\\\\\\\"�N����R\\t񕟛����M\\u0013?qő�P�pY�(\\u0000\\u001d�O�~��\\u0012Nْc*ٲ26����\\u0000�R,��l��z�\\u001br��^�˗�\\be�O��\\\\�{����\\\\#�A\\u001b�֭:Է��6�\\u0007�#�3\\u0015�E��d3А\\n\\u0010<oZH�O\\u0013�\\u001fX\\u001fU�{\\u001a�\\u001cx���'��[�T'�\\u0012�^�\\u0015ƙ\\\\\\\"IUʬ��#��Q�w`��\\u0017�\\\\�4dy1~�#�\\u0001P\\u0001\\u0007ʄ�ט �n����ƻ\\u001a�U�:nx��\\u000f$![�\\u000b\\u001ac��3'ō��\\u0011�� ���\\f�c�V$\\u0006\\u001b��\\u001cN�\\u0016$Q��:�\\f,�GU�f����\\u0017�^�\\u001c���b\\b��2\\b��\\u0004\\u0015��PJ�AyQM�u4˺�\\u0016Na�3t�\\u0000��P/\\u0019ud^�C[I�!�i؄��no���\\u0003��VN,y+� �G �kۥ�4�\\u0003c�\\u0012\\u0016�܏�&��ҥ�f+\\u0002A1!\\u0016����\\u001cg|�N�M �g^Jڋ\\u000b����K�#�\\u0005+k��:��\\\\�@\\u001cj��o�5\\\\\\\"��E�o\\u001aOQK����=_uD��w0�i\\n�L8�oqRY�\\u0010\\u0000@c[��d1�#б\\u0017o\\r*^\\u000b�\\u001b#�G�cS\\u001b��\\u001do��������ۙ���\\tޅ�A�\\u0004\\u000f��콓I=M)D�o`�;jM\\n�\\\\�b��5��c�1p�5��\\n�\\u0013%W\\u001e0\\u001c\\u000b\\rE�[C�\\u0013f+3�\\u00026\\u0017�\\u0002��6f�3��\\b�y=��R���/�\\\\�g��\\u0011b�>�]nNT\\u001f��{�IV\\u0000\\u0002\\t�\\u0015��\\\\\\\"D�\\u0000��-u\\u0017���@��u�7#��\\u0003�zʩ�O��y���ڎ���Ƭ�C\\u0011r\\u0005������P��d$��7��kkm�U}DǑvՓ%��\\n�(bms�\\u0014{\\n{l�f�\\u0004�H����1#K=ך�4���͗�\\u0016T�\\u0004���I�&���i&��K)��\\u0007\\u000f}��݄����c\\n@\\u0016\\u0017����ܴ��\\u0010#�\\u0013�7���F�\\u000f���A\\u00132�w\\u0002�X\\u0001{|)z�H\\u0006��n�h�݉$[[�BB-c�X�����76�NC���/{Q�8f��\\r4E�V\\u001d7�RZ�`�\\b6�S^�\\u00140\\u0005�5���8�\\rR#\\\\\\\"�Hn:T.R$\\u0010�F�F$���o���x��I�P�.��\\r���ғ,f06u��)�'y�Ŋ��*/\\u0013e;ܝ�g��x��2���\\u0017N9�\\u0006\\u001dϰE�\\u0000�'2\\u0012�Y@���h\\u001f�.����5�q\\u0013c\\u0018bf&�:\\u000b��+���\\u0007��07؊��ȩ�|��4��v���B�\\u001eQ\\u0019�O ��:�u�S�0Q��\\u0016LQ���\\t.oz\\u001eW��\\u0019H�䎔խ-F�/�ĖH\\u001e6\\u0012$�Yva�\\u0014D\\u001f�ɉĹRؒ�y\\\\\\u0011�����j�&\\n���$�~4���Ji-\\u000b�b.8R�X\\u0013b\\u000e��n�\\u0005��Uùщ#}k+��\\u0012G$ab\\u000f�VE��=�ɋ\\u001eIc�Ml��t�\\u000f����Hby\\u001bkE�w\\u0011\\f1G̏l[��a�ra�\\b!\\u0006�I&�\\u001a��Z���\\u0019#u�\\u0012�׫*��`\\u0016O\\r+`J���IO��.S�\\u0016×/\\u001d+\\b�0\\f�\\u0007K��:7�T��S�Ƅ\\\\y��B,F�\\u0001֯��=���\\u0019C(c�\\u001dE��\\u0004��,�\\u0012�p\\u00142�7�\\\\\\\"Ƙ�ް�\\b�BQ�\\u0000�A:�k�Bdgb�W8��(\\u0005�F��Oq\\nd\\u0012D�9\\u0016�7����H��N%��\\u0017���'�#�\\u0003rM�SL\\\\�x�98�\\u0010\\u0018\\u001f�M��\\r!n\\\\)�:c�\\u00079T��\\u000b\\u0002��7�z\\b�ȳ\\b]8������p�͞#�C*)\\fN��҇�e���R=�\\u00001ߕ��ZgQ=Mت�f6\\u0002��N֝�\\u0019&2��\\u001b�\\u0000\\\\�k���($B& �a�F�|�pq��Ǔ�\\u001b�kt�u��\\u0019\\nf\\u0003rmG\\f\\u000f\\\\\\\"d1e�̢�ۡ�?���\\u0000�o�G��x���<��6\\u0003C�<�!��/���k5�2��s��h�2�\\u0019�1]C\\u0001�;u�{\\u001c)޳?I\\u0013�mŚ�?�_�\\u000b�b�'�4��\\t\\u0003Q��\\u001d�~|N��W1��|Y\\u0018.����W��gv�ڐ0�n\\u000f��)��0Jc\\t��\\u0012I����E���X�3�^\\u001cX\\u0015\\u0001w������@��Qk4�)/�����U^Y�9���ӊ�$\\u0011���\\r�\\u00002����B�H��� \\u0001�E\\u0001��\\u0014��4d?BA\\u0014��R�\\u000b�����W�4F\\u000e��f\\u0000��\\u0019۰Fl�\\u0017?o���\\n\\u00065��D]x�\\u0007ʙv\\\\�q���x��\\u001b�@n\\u000e�D\\u001bO�����nL��\\u0015���qp�n\\r��S~��o3��W���GM-\\\\�-�\\u001b\\u001fA��V��\\r��k\\u0006\\u0017�\\u0018����k��fc��)-�7��Ol��Ŵ\\u0017\\u0017_�{�\\\\\\\"��\\u001fA'BhoQ�y\\u0007o�ȄM\\u0014�T�\\u000b�:\\u001a\\u0014B\\b�*a��\\u0004Q��U]����^��g[[26�\\u001b�\\u0012@;U\\u001a���z�\\u0006?x��@��M��\\u0005�faE���� xN�b\\r���\\n\\n�\\u0014�\\u0017�G><s4̭\\\\\\\"�*\\u0014\\u0010/I�\\u001a�G,\\u0018,���&���ă%��I\\n\\u0014�Z�Z�h��z'vk�k��:+>D\\u0019ή�!R��e�\\u0006�U��/_:�܆\\fC�q�R�g)+F��BG�N=��\\u0000�}�����3��\\u0001!v&�t\\u0017�Y�\\u0005�d���-b6�z)\\u0010;��F _�hN��'o�z��\\\\\\\"��k�U����Ѥ�l\\u0018\\u001eV��ީ6KL��c���)kcZY\\u00106��PH�����n�|/�)i�ߕ��9 ���\\u0006���%Ȏ\\u0012�\\u000eH$\\rE�?\\u001f�������?�\\r����PH[�V��{\\u0000A\\u0017�#�v�Οm$�dj\\u000eO4O�\\u0003\\u0014�\\u0019$r\\u0007b\\r�+<L���x�\\u0017�����x��2x3\\u0012\\u0006�\\u0017�\\u000b��\\u0019٥^\\nV��\\u001b��b�\\u001b�/p�-U�\\u001e�\\u0004�����mA\\u001f*���P���ߑ��ؐ�C�\\u0016�a{�h�pDjJ�y\\rF��qL����m\\u0005h�Ib\\u0018�j�N\\u00030\\u0016�-�Y�k���Mj���dH���\\u0001�^�'�xV���#U/�P\\u000e�¨��BҘEق���Bn~�ɻC��Rc�{y���pK�u�\\u0013��I�?��U\\u0016����͑�,d�w\\u001dN�����yFl|��V���\\u0015��\\fĄ�`7\\u0000گ\\u0007�d\\bt�XN\\u0015UT�\\u001bx������v��FC\\u0001�\\u0012\\u0010.\\\\��gl��?q��YV(Ѹ)`O\\\\\\\"7ڗ�B�C]g�yb^׫��u�$\\u0003�ƪ��V�\\u0007=�;$��b/*��r\\u0000\\u0005\\\\\\\"�m��`\\u000b��\\u0000\\n�xO\\u0013�X��2�că`x��¹��+p~�E�h\\u0015�)V�y:��sk�N�x�\\u0012�;\\u0002)Zx��\\u0006�^�\\u0007\\u0013O�\\ra\\u001cj�\\u0016�𦁣 ���ԕ�\\u0012m�^��.nb\\r;��qD�DBx\\u001e\\\\w5E���\\u001d>5S\\u0013�o\\u0013k\\u000f�DI\\u0002�+jݙ!�=�$�I���.l\\u0006�\\u000fp\\t�\\u000bM\\t/��\\u001d7>T�\\u001b�cG��H\\u001a�,E�\\u000e���q��xa����M�f������.\\u0018�\\\\���e�\\u00004`���L!�K\\u0012�\\u0005���ҟ�̿�_��3ƍ�ǎ7��X����mT2X\\\\��$�8�X��^�c&g\\u0006U��\\u000b��uu�Ȼ-�Mh|�i]��y\\u0001�\\u0017�\\u0010��W��\\r�\\u001br�\\n\\u000f?R��\\u0018�~�BP�A�k�Ӫ��c\\u0003��u�]�LT\\u0007�7�7�80�\\b\\u0012���\\u0000(k��j�����e\\u0017�����\\u0007�DH\\u0004\\u001ev�ץ��h���\\u0007}zS\\u0011o���NB�U��.\\u000fƇUp,T��i��p�\\u0000�lA6�4+L`$I��П��n�G�X�´�\\tտ�n6\\\\\\\"���1��7��xޘ&�'Eڰ\\u0013�b\\f�!�䀠\\u0003�S�`��\\n̮d\\fx؋kF~�����\\u0010e8I\\u0011�����[������� �d!����\\u000f\\u001a�m���)�y9��,.\\u0014y����5��B�xVy\\u000b\\u001c�\\u0004`)\\u001amj�x\\u0000<*���\\u0003�k%�$�H�G!��·���JF�%F�\\t�\\u0001��AXE����V\\u0006��ki{�J>��H��)\\f\\u0001�\\u001f$\\r��\\u0017���^�29�^<\\b\\u0003�{�_ƃ��~�\\b���ϳdı�&�+r\\u0004r6����!\\u0000�}��4v��9 �Z�}�X�\\u0018U-�a}����\\u0017�Q��W`���H��Rhg���O-\\u0018\\u001f�D��:��\\u001a��z�:U��\\u0002�e�A=0X]��\\u0001`4\\u0007Az^{��(�HB�s��\\u001c9 ,\\u0006�<М�Fa�R\\u000f+t\\u001aӶ\\u001e4\\u001a�`�\\u0015��Fv�ɓܖF��\\u0016\\\\\\\"\\u0014󾤋�`k9\\u001e3\\u0010\\u0001���]\\u0017�?�\\u0014���+M\\\\\\\"[\\u0011��,�\\u0013\\u0018�D>�.<.~�op<hW�⥹��U�~�p$�[��!��\\u0014�f\\u001e�֪\\u0014\\rhS�<�}��X�cǗ+��\\u0014\\\\\\rCk�x�e5�D��G�ȱ��V>V�}m�/E�\\u0000���\\u0000�~�CaΑd$��+{����t��\\u0018�HI6�\\u001cmBy��6���^B{3<@�)��\\\\\\\"�\\u0004����W�s4� \\u0016�oj�\\u0015t�z�b(�B�;����B�\\r�=���';\\u00152P�+�\\u0018��I\\u0012�\\u0019���M+��٘���8e�#��&���\\u0007\\u0002�\\tq\\u0019\\u0004�����~�\\u001a� ,/{\\n;����K\\u000f���\\u0006�F�ڇ�h� V\\u001e�kP�\\fq#�&F��YT���\\u000e��q�8aJ���\\u0017�QBƯ\\u001eY�\\u000b�I\\u0007�[f;M\\u001a�%��ک�\\u001fRs � ِy�zu\\u0017mV�3�\\fu����IZ\\u0006e�5�<�q\\u001a�qA\\u0000_쨖V\\u0001e�D��sk\\u0003�޲�\\u0018\\\\\\\"�Z��y��i�\\u0013q`9t���ʅH\\u0006�r<\\u0006��1�.e`Gՠ����i�Jy\\u000b\\u0002\\t�Z:L�v���07\\u0006Ɨe1�Nc]-z��$��В6\\u0017�+\\u0006� \\\\��Ʒ`̄[[\\u0011�P\\u000f��vO�Rs��\\u0005�HeRV܅��V� ckZ�\\u0010J���Q�\\u001a��^\\u0005�ܻ�\\u0005����M�'lY��gf^d�`mA��\\u0016ͩ=i�l�����3J��[�oq�6�I7�G\\bQ��W\\u0005\\u0011ԗ\\flAҁ�c,�\\u0010[\\u00176\\u0006�M4�c�$i\\u000b��ı\\u0017ڗ�\\u0002$�:\\u0013u`u�$d;,�i\\u0013�4��+!Kll<���H��n:�I\\u001c`d\\u0019\\u001c]oqSV��\\u0015�0��3�*V>#�3\\\\�1���,\\u0010I9�XF��\\u0014�a\\u001a˴dbb�;��GB\\u00017�7\\u0006���l)0�'VgFUQ{܋xT��Z\\u0016��Q�ާ/���<Bk��\\f\\u0011��GX�s:�qZ�62K���\\u0002��\\u001f���\\u001a�\\u0000Q�*ϑ\\u0019[_���V����P�إ\\u0000�G�ʃ{UT]�z��\\u001aFm����%�u�T�3��6=e\\u000bց�=���\\b\\u000f\\u0013k�L�TajS>$�<�\\u0013�c��𠠼\\u0019[,��\\u0014��7�\\fCs҆�q�9v���a�\\u001eP��o�@�\\u0005sq�ñ*\\u001a6\\u0003�<k\\u0018ۚ܋S>�\\u001eF'\\b�\\u0004�m�jL��\\u0000\\u001b���)��0��\\\\���f�\\u0018\\u001fP\\u0017\\\\\\\"���_ۑ$lːŀ$\\u0002��|�'e�8��<��j\\u001bO2\\b�\\u000fzΛ*F�ꍢ\\u0001�_\\n�\\u0002��T�#���������\\u0007�A�G�]}�$\\u0001�\\u001f\\u001avX�$�h�K��k[��z'%��j@�k�ώL�e/\\u0015#N]H֝gc�<Aӂ�z�6��\\n��$�Zy�\\u001b�\\u0000?�\\u001f��V\\f8�_\\n1�\\u0003AcBI���5kԦ{\\u001a�p���\\u0011�E�����RA�Ey\\u0015�>���E�N\\u0001F��㫨b�\\u0013T�0�`n<h�y1�\\u0010\\u001d�\\\\\\\"5�J\\u001agS'��\\u000e�U�f6�\\u0019��\\u0000�r\\u0007�E\\u001c\\u0015\\u001f���(��\\u0002����Yʄ�?eU�a(2�/��-��ƳȄ�\\u0019{�M�q�\\u001f6:����\\u0015�L�,ET�id0\\u0002�l���k����.スr���$*�\\u0007A��jLi؋\\u0001��q�q�>Ϗ\\u001b��^@���4�/P�F\\u0005\\u001d۵E��\\b�g\\u0012\\u0006'�\\u001aq��Ɨ\\u0014�Zu��x�x\\u0011Hb�Đo�\\u0011o�қ�KC�V�c<�\\u00108�y1\\u001e�\\u0011��\\u0013�Ev��8m,A\\\\\\\"����e֩��rq�\\u0019\\u00039\\r}\\u0005�h1�r\\u0007\\u001dͷ���\\u0000ӌ��^{oҐ���\\u0000A&���R��L/T�\\u0006K+��\\u0011��M�U.W�{[ʷub,>5��\\u001d\\u000b-��V�q`�f\\u0019eX�@��L\\u0004\\u0000�iD1ȹhx���{\\u001bQ�����T�gB�kE�\\u0010\\t!�/i\\\\�D�R\\t$\\u0005\\u0003�ڱ���\\u001a>k!s{\\u0010@����<x��1I.ċ\\u0013��J\\u0017?&)��Z���Q�`\\u001db\\f.\\u001a��Q�=�2�24�Hb�\\u0000\\u001d�\\b�� �u�8\\u0019���$NY\\u001d�� _qS򂚬��\\\\?��FV�\\u0003�X�X��/\\u0019\\rǑ[\\u000e�Nl��Ʊ��\\u0010�KoK�\\u001b$�ŭ�S�.\\r�'��\\u001b�\\u000e�5|y\\f�{alN�ԅ\\fy\\u0011��8N7\\u0007k�*g�?oy#�\\u0015�%�\\u0000�e���m�/ �\\u0011��Q\\u0018��ߌ��������:�d�z�Ƙv�a�/��Ig�$\\u0003��V��IV@����c�n\\u0019K_��\\u0003�γ���Q4�NEzZ�l�Ĺ\\u000bw\\u0006���[qXd΍\\u000b�@��|鷐�I��F(#���nFo�3D\\u0013�\\u0013k����_�\\u0014�+\\u001ay2$�\\u0016��CqEgrl������2\\f\\u0007�V\\u0017��*nݒ�H�a�?�J;*�.Q�\\\\\\\"ȥH��\\u0000�<=�\\u001c)����\\u0003U\\u0004���\\u001f��K�\\u001c�9Vu\\fT( _^����\\u0002\\u0019Dq��\\u0014,.,n\\r�^G�B�i\\b\\n�m�J���\\u0002usw\\u00018��M�с�\\\\�\\u0004�;��o�Zq\\r�\\u000e�lhl��S$`�[��Z6U�g��%��rb��+��Z��YL�8�@o�^ճN�ē�Yd2�.�ܰ \\nkA�\\u0016�qa�c��#��\\u001a�\\u001br\\u0017��I�d\\u0001P�yV�E\\\\\\\"G�.�¥�4l��n6ֈ\\u0011�\\u0017\\rAD��,Waa�R&�Y� Lm�\\n2\\u0005����~�k޼�-&,\\u0000�ms�Z\\u00132\\u001c�$`�J\\u0013{�kV�ƞ%s\\\\\\\"��k\\u000e�^�j�q��Ao��\\u0010ι#�\\u0004yӜ,�\\u0013\\u001c�(\\u0000o���u�rC\\u001b!��-Y6�P2�q8$�lm��I��\\u0006Ԑ\\u0007΂���F�Aēp\\u000fYl�I�\\u0010~�T�ȷ\\u00187f�\\u0005�r\\u0007�R��\\u0011Jц�\\u0014�|h��՜\\u0001̛\\u001b���<Y \\u0012�\\u0003��K#\\u0005�V��l�/kYN���-=����\\u0000��\\u0014�\\u0000�ˍ���<b\\u001aV+�F�\\u001b��]ps61�ԑ��Q1����Ł��^�����>�z\\u0005��5ڇ0��\\u0003�\\u001b�\\u000bQ\\u001d�F.Y�Jq#MO�Qgh�k\\u0018\\u001a�\\r[��\\u0014�1���\\u0014\\\\\\\"�3\\\\\\\"�1f\\u0017�����\\b�����SC���A3\\u0000\\u0000�\\u0006�����I��\\u000e� m�Q��n.-X=�Q\\u0018:�\\u0007�FgM\\u0011�{-�\\u0001����F9\\t \\u0007�\\u0005���DT��\\t��\\u0010\\u001f��#�ձ�m��H\\u001ar��\\u001e$(�'�Z�^�M�e�ƶ��8\\u0010\\u0019D���lB�\\u0006��T\\f\\u000f�~ߏ\\u0007\\t�v��\\u0017VP.\\t���\\u000f{[\\u0005$���y����\\u001e\\u0007g�K[�@\\u0016 �M�����Ř�i�\\u0011�p���V�\\u0014�*Č\\u0001k�v�_�i�,*,�hN���#\\u001a<���\\n/r\\u0006�\\u0006�m�h�A���\\u0000�!�\\u001aO6A�g��%\\t[�����\\u0000���\\u0000����\\u0000*�Di%p��Ăw���-ȭ�m��=��O����z��ly�\\u001c\\u0013\\\\\\\"E\\u000b��@�\\u0001��\\f���3�\\u001e\\n�\\u0002��\\u0006�)�Nv\\u0014�*��<\\u000f�|��֙\\u0014f���4�Ȭ\\u0007\\u0019\\t'�oYE!u�\\u0016��;l�\\tp�.�vQ�\\u0006�ڒ�p�7\\u0017��S c4�ꤏ\\u001b���Y$WX��lO+��\\u0016�n�\\u001c��ȿ��~\\u0014ϲq������\\u000b\\u0006���\\u001ai'���\\u00032�yb���� �B��\\b���?*h}���b4\\u0000�\\u0001�n��R�k�AK[2�69V)px�Z�<W�D�H�#\\u0005\\u0017��J�\\u0015�b�;\\u000b�X\\u0013k�L%��j��#*�\\u001c�YS_J�Q��Iq���|�\\f\\u001b��z�yE�\\u0000Q�\\u0000�h#�*�#����\\r�\\u0015ӿu���\\u0000�1�kI%��l��8*�1S�<jW�v�\\u0000c\\nC\\\\\\\"�!꾿\\n���� ?#Z��\\f��ŵצ��������o���i�*����%cvB��m�m�߫�#ѐ^ǭ�(�g2'%f'_3Zb��I!�@���ޒ-�n\\r���V�ύjd�=�[���8�@6�\\u001fU�����\\u0002X\\u0019�7ڼh��sE<�#�V\\u0007m���\\u000fr���\\b��O�\\u000f��\\\\rI\\u001c���h&Pw��p\\u000e9����,n\\u001a�|逷'\\u001d��3���h7ց�t��u?��Ѿ\\u0003�,\\u001f�^\\n�'Cs�rAr\\u0003q�؃�SC\\u001aG]��k3;\\u0012,���c�y(nW\\u0003��T��\\u0019��\\\\\\\"�����ԓ��,@=k�����\\u001feĊY�7�8:;\\u0005 �z\\u0013X���)&�D�\\u0018�2�X\\u0010\\u0001�k��sӷ���5�vs��J��`B;D�K\\t\\u0017O#B�+:\\u0006\\f\\u0005�S���1\\u001e2� \\u001b�B��\\\\\\\",ir4\\u001a�k���\\u000f�=?&�\\u001e���rdd\\u000e�\\u0014\\u0003Ȃw;V��)���\\u0012�q��\\\\\\\"���X�M!�EPUms�����XM�\\\\\\\"�*���\\u0001��5sTޥ[\\u0016i\\b��x\\t\\u000e~\\u0007���nm{V�LrZD�-b/\\u0011�\\u0018:�J��I����\\u0011��E-{څ9V6)�ƛf�v�&><�\\u0000\\u0003�&�\\u001c�e? je� ��4\\u000e4\\u0006���|��\\u0014!K\\u0002y\\u001d�\\u0017�1n� `n7\\u0014v>J�:�p�\\u0004k�)r�(*\\u0014Iy;,��*\\u0013�\\b���\\u000f /G7p\\f�N@�XF����o\\u001am�QX;{�/�\\u001c.��\\u0011��\\u0000ַ���\\u001cl��PO\\u001b\\u0011{U\\u0013#ڒ��\\u0012�_�(������A�)\\u0006�S�&�8@���\\u0000��_#Y6\\u0019W*\\\\h\\u0001��i�ea��r(\\u0004lM�4\\u0014�\\u0017��\\\\0��\\u001f�Z�\\u0004�0\\f��\\u0014�+ۥ���X\\\\0�$r���t�b��mc�\\u0017Ɓ_S\\t�X$1�X����뙐�/����F�\\n�.9^b�\\u0018�\\u0003[U�J<9�$���EΛ�Z\\bw\\u001f����\\u0013(\\u0003�\\u0013I�q\\u001c�@uhة�;|�P=�@�o`t7�o0�r&�\\u0003ɘ�6�7�Ơ�̠\\\\���W�M`�Ic'�\\u0004Z�֯,�Z��8Cx�ZDW�\\u0007!{Z���3g4�fTX���&����K�2e*����ۭt���1��,��3p*\\u0018��\\u001c��ƛ���\\u000b��Vx �a����n<H����?�?�>��;�f ��>�z��\\u0000���m��Hʊ\\u0014�\\u0004u�V��b�3�~\\u0000\\u0010\\r�{W�\\u001898��(�؃�\\u001f��\\u0002��꾭��AV�\\u0019X��I\\u001cN��k*��\\r�z�:��fۘ9��<M�Z��A$k �0��\\u0003,e�U7\\u001b\\u001bQ���:+h�lh��&�����B��Z�F\\u001b#L=ͬ~f�� �{���n*4����UR��̠�Ƌ����L�#\\u0004⼉a.�\\u0000F��oo\\u000e�ϰI�dH��X_N���`\\u0016�����y#�\\u001e�X�\\u0005ojN���Z�\\\\�C'p\\u001e��+�\\n�\\u0013�\\u001bW0C\\\\�iVw\\u0007\\u001b\\u0005�@r\\u0003\\u0015`�M����\\u001b� My�!�6\\u0017�&�\\\\\\u0016�=nkHQ$�T㑻\\n\\u000el�� �G���a�J*Y�J,=\\u0014V\\u000e/l��FW\\u0006��*�h\\u0006�Vi�˄/�̌\\u0001R��jg\\u001e>O\\u0001��N�\\u0016\\u0000}�úM���R�؝\\u0019U}�j���K��\\\\\\\"�J�\\u0002��V�d�\\u001e��4�&�k�^��CmM�|�3�\\u0014�\\u000e\\u001a�kmM�`�\\u0016�/]\\t\\u0003��{ԱH�\\b�1\\u0004��ߧ�K�%(\\u0015{�n(��I��\\u001d�$�\\u0002\\u0018m���\\bA=5��\\u0019x��\\b���AV��j\\u001b�Ä$iB[M���^DXP��A@�+����o\\u0000��UQ�\\u001a_�5I�&\\u000b\\t���L{oh��h����ɂ�u�JDr��\\u001b)> ��?gw\\u001c<\\u001c|���X\\u001d�Y\\u0003�\\b\\u0000��\\r\\t&\\u001f'��q\\u0012\\u0003cc�\\u000f���\\u0000��\\u0000��w����;�:�%B儃[�kC0ې\\u001eW���z��ǃ+٧�\\u0006�����M���i_�j��m[/��ٜ�I:^��1G�\\u001a�-��MkT�\\u0019�\\r\\u0016bI�\\f�\\u0001���<Vu��\\rž\\u0014�ދ���\\u0014>,�,`�\\u000b��O�%fSI\\u0018.\\u0013���\\u0006��k�\\u0000\\u0015/��s\\u0016PM�u�h����0��[��#d�pA\\u0000|E.NrW\\u0014놕�AW\\u0004�\\u000f;_�����%�iḆ���A7�\\u000f�\\u000f\\u0014�pu+�����\\u0003d�dX�\\u0004+̅��mz�ɝ�YZ�e~֟\\u001a\\u0006��\\b�m�\\nF�/��\\bݖd�T�\\r?�\\u001d�\\u0010⺙ы\\u0015\\u0000+\\u0003����3dp#x�5\\u0004�\\u0000\\u0013ph&���\\f^�>@rdX�7\\u0011�k�z˹v����\\u0000�y\\u0004�p�\\u0000A��L1�\\\\4�\\u000f2x�c��{�f6^\\\\\\\"\\u0006b��<\\u0005��ء\\u0018�\\r��E�)x�K�0�ҽh���}�\\u0003~q}I�8m��%�';\\u0010C\\u0011�\\u0007γ���\\u000bI\\u000b\\u000e?\\u0012\\u0001\\\\\\\"ǭ�E�w\\u0004��\\u001dm�\\u0010�Ē�,\\u0000ԛ\\u0011M#|8�,��\\u0014\\u001eC��j]��V�p�\\u001c���/;��@\\u0006�Ly+\\u0015�\\u0016�ژa�9s�]/[vb��L�2�en&��\\u001f\\u001a�2/���\\u0011�b9\\u0000oZ��\\u0000#]u\\u001eU\\u0014�jXn�\\n�ڼ��\\u0017��\\u0019�*�~\\u0006׵G�&Hd7�����A~\\u0007Ƽ�V�����˭{\\u0011 \\u0002��qQ�k6�&o�P���kո�^�\\u001d���\\b\\tbn\\r�-�K�)�M,/Z9���W�UȺ��#�_ *r�I�צ\\u001e�\\\\xƍ��\\u000f�\\t��\\u0010�!��\\u0002���\\u0003^��\\u0018�\\\\�{���c��͞\\b�\\\\��ʊ�\\u0010�\\u0001�돓\\u0019Y��\\b`E����m�}�v�P�P�\\bc\\u0005ZE\\u0004\\u0010�X�i�\\\\\\\"j\\u000e\\u0003��M�r\\u0004\\u0013�RT8d:q7\\u0017��P\\u0010�\\u000en#P���4���L\\u0019}�[\\u0015�eH�1C�r�\\u001b\\\\|k��\\u0019FJ�B\\u0014\\u001b�k\\u000bR�!�ŋ\\u001dX��7��0R����6\\u0002׽�g��T\\u000b��\\u001e4oou�\\u0004Y\\u0018+\\u0002n\\t�ދ7\\u0018\\u0002ǳH]\\u0011%\\u0004��$\\u0011m/~�\\u0015����\\u0005������+\\u0019r\\\\\\\"c*��z�����S\\u0017G�`T~U ���K\\u001e\\u0004r��#��섩��+^�\\u001f��0����\\\\\\\"N�mJ�_)�$*�C\\u001b�\\u0003֘~�v�2F��ژ�\\u0019�\\u0017��]W�'��|U��\\r��0RD��.\\u0007\\u001f��/\\rԑ�][e�?�M\\u0001�¹\\t\\u0004��)\\\\\\\"�\\u0014�R�q#�ִ�ؿ�\\u0007\\u001eAo��T\\\\�.�V܈\\u001b��\\nH���\\u001a�\\u0000\\n\\u0019\\u0012C�\\u0019�q椛\\u001d\\u0000:ԭ2h�\\u001e�;����U\\\\I]�Gf�k��z/68�\\u0011�N\\u0004�PA����!Q\\u001f�n,mk�\\nUr�6�\\r:4\\n���.@4(�\\u0007�}��q\\u0014ҕ-�\\u001c�E\\u0019\\u00066\\u0002!\\u001c\\u0010\\u0012,Xڋc@B�h�BrV\\n��Z~�ˢ\\u0006\\u0004��/�\\u000b��̎���I\\n½��{�r��3r�|�\\f@�v\\u0019��'�i\\u0014��\\u0004�\\u0011B�\\r�\\u0006�e�\\u0018cNF��5��G#��ꅕ��\\u0002�*w\\rĝr�`S��}w�[\\f�,\\u001c\\u0011k�)ol�Hąԯ+Z�\\u0019\\b\\u0016\\u0007KmHc\\u0003�c�\\u0001ȼ@Z����\\u001e\\u0015�8��A�b\\u0000�>ې�}/��n�\\u001a(�M*��9�\\\\\\\"�\\u0011֕.L^��\\u0002�\\u0003�K�\\u0000:��9\\u001bJ\\f��6@$ɘ��@Y�\\u0010\\t�?����\\u001a��j>ڴ�!\\u0001��O�k\\u0006Dj����Qzwmh\\u0015KpS�/\\t\\u001dl�2\\u0003\\u0001����db�]��|i�6L\\bҖ�\\u000b�#�JW\\u001a,}�\\\\01��˥�V�⟝Io-\\u000f����<K*eCf\\u0017����VX�\\u0000�3'3\\u0001<k�J�\\u0012Cz���[�F�����1\\u000f:�Xj\\t�\\u001f\\u001a�w�C&I\\\\��$��RCZƜf\\u0004ہ_p����\\u001aI$���\\u0013�\\r� ��\\n\\u0006Lomy3�!m�u�qό���R�\\u0006�S`\\b��I2\\u001b�`T�Z���7\\u00193��q\\tx�BlH��NZ�f*l��lR���[�Pz�\\u0006lq�8Mb`m��76U�\\u0006�\\u0000�<�f#\\u000eAM�5��<+1\\f!8�\\u0003M����J�6��*�ld�`t��)�E�\\u001f�ڲ2\\u0011��@Ib4$kaJ�r<R3H�A\\u0016\\u0004�S\\u0007vƋ\\u0010@%\\u0016\\bW�\\u0007r>\\u0014��B\\u0003`o�c;\\bH\\u0007�z1A(�\\u0004�\\r@&��NR-��F��A&q�$n X�j;,�\\u0003� �֔�\\u0019\\u0013\\u0006��WF;� �\\u0000�����\\u001c�'��3��\\u0012�č���6\\u0015l�}ܩ%�\\u0012�n4��-�]�\\u0003�Rے�\\u001e��3�(G�Tr�I+��%>�Ǧ��ly��ʄ�n\\b�XB\\tL�uf�G\\u000b\\\\|j.J�\\u0005�E������ *Ak[�V\\\\i�԰�\\u0006��s8\\u000f\\\\We\\rp/��|�\\u0018|y�\\\\�����,AT\\u0016\\u001b\\u000e�����c\\u0011��>�P\\u0019)\\u0016Z�b\\u0010�z�S���#�\\u0011��$,���EnW��Z��IR6!U\\u0010�m��$i�^x���\\u000f����)IP���\\u000b��{\\u0006N~�ܶ��.|(3��hg��\\u0002L�s*�7*n@�\\u0000�W\\r\\u000bcـ\\u0012.�&��+�@6�j�.E��\\u0003=\\u0006�\\u0017bM���\\u0018o �\\r\\u0000\\b�\\u0015�������@�q}>t�\\tH<=�Iy���m�7������^\\\\�\\u001b�k[}(�|�x̀���\\u001bi��O�\\u0013��\\u001fP6�\\u001aC\\u000212���\\u001b��q,5\\u0003z/\\\\\\\"H$K��\\r��\\u000e��\\u0011֋z\\u000e��)����\\b<y�/����\\t�\\u0000�\\u001f��\\u0000�-�u�*9\\\\\\u0010���\\n{�\\u0000'���Q�L��\\u00114,��H��\\u000f�ڲ���_[�20i$e�\\f�A\\u0000�4&B��zI �V�=IZ�\\\\�H\\u0016\\\\\\\"�?P�\\u0006�X��\\u000b)\\u0000\\u001a�ېi��vvQ\\u0005B-.\\\\Q\\u0005-s�`<��\\\\�ʘC\\u001a��k��6T2���\\u000bX\\u001b�y֝�'�5d�J ܟ�4�}\\u00045\\u001d�(�0\\u000bd\\u0017:�T�\\u0001�e\\u000e\\u0000m����ܡH�@��R-c���Y��\\u001ab�1!�=\\u000f�§��A��\\u00032\\u0003�����\\u001bXiB\\f��\\u0007\\u0012.mE��=�Ub�0k�\\u0001�)�)�T�\\u001d��LdN$h#�?��z�8�Po\\u001b��\\u0000��\\u0000*�\\u0014��\\r3\\u0000�����\\u0010`.E���br�t4�1��}�\\u0005N�t�&\\to��)��\\u001b��\\u0000lM��Ԙ;\\u0005\\u0000��F9\\u0007\\u0011��\\u0016?mh\\u0017����u\\u0006�aIy\\u001cF.E��\\u0003�\\u0001��S \\u001cu�m\\u0003\\u0004�+hE-�z�Lg��5\\\\\\\"�l/D\\u001e�8����\\u0000*�\\u001c��1���\\t�k�i���V�Aq���\\u0000�\\t��\\n�\\u0006G\\u0004�\\u0002ĩ\\u001a�\\r�\\u001c�[\\n\\u00033���iGA�\\u0002ߓ[������=������`X�Ʀ\\\\��@�wu�\\u0000�6�c�\\u0015�cv���\\u001c�^\\\\\\\"Aˏ\\u001b��P�C픹:�;޺^��1`Ɗ)9\\u0006�q#���*�\\u0010\\u0016Wm|y\\u00119�\\u000e\\t\\u0006ֵ�3��\\t�>�3����I\\u0013��\\f\\u001a���@��n\\u0018�¥�4�\\u0018��sr��Ic\\t(䡋\\\\ko\\n\\u000b���ڙ\\u0004�\\\\I~%\\u000e�o�t\\u001d����{d0I7�,jU�����RܙPg\\b?J��N\\\\�\\u0016����M(�*dL2��\\u0015\\\\\\\"�i��r\\u0001�\\u0005����\\u001f �<M�:����� \\u0003��75\\u0012�I\\u0001���G�:�\\u000bz���{��%�@����-���8�\\u0010,�\\u0016u\\u0017�m|\\u0005W���$*��v\\f\\r��Q,!\\u000b�A\\ffI\\u0018*��\\u001b\\u0005�`Y�«�\\u0001\\u001a����ʊ�%��E9��\\u000e\\fQ��]E�\\u0013֋6�\\u0002�6\\u000f6\\u000bBT\\u0017\\r��\\u000f\\n�׉����r fR\\u001c\\u0010/�(9$V�.\\r�\\\\\\\"������!@7�<\\r\\u000f��\\u0017\\u001d�xr�/��ڊ�(��'�:��Sb<��켑G�|\\r�����\\u0017=r\\u000b\\u000e\\u0005x��~��̠t�\\u001a\\u0018�g�\\u0002�\\u000b\\u00104�zȤ��mC�F������w�L�T3�\\u0004�Z�\\u000e���P ��r��U(���\\u0001L��E�I\\u0002��?T/���#�@\\u0017�\\u0015��֒�\\u0011�\\u001d�7�Z\\u001e\\n��,_�^A�x\\u0003�Zla\\u000f\\u000er\\u0000��K\\u0010l��k\\b]�E\\u0017�F�|�Zh��Q\\u0006�2�0;�\\u0000�INk�\\u0013)\\u001c�\\u0001�#})|]�I#Y=�9\\u000b�bw��\\u0017{�\\n\\u0007����\\u0000L]J��G�i�����H\\u0003\\u0005\\u0000�}�\\r�@��2$��\\u001b)�ٍ�\\u0000�\\u000f\\u001a�'��cB�;�U����6�X=�\\u0006\\u001c�^I@F�T\\u001b\\u0012\\t\\fI\\u001a\\n�v�\\u00183�x�sv+e\\u0000�7�)M�\\u000e\\u0014\\u001c��ܣ#\\u0006Scz�\\u0005��0<Cmz�tI2rQy\\u0017cc�W\\u0018p�\\b�57(��y/<F\\u0018˱\\u0004\\u000e��9H5 ֲ<�Fcm|\\t��\\t���(�q��C4�f\\nI��rK�\\u0015t�y$�6��h���G\\u0013q���pj�d\\u0004rY����Л��\\u0004��I\\u001as.�\\u0002.\\u0005��W���S&�\\n�L�t��\\r�}|��R�<`#�a�Oe�U�Rc���\\u0015��:�mP�A\\u0002��VI\\u0014r�sP��S}��Ӵ)�i_�7�\\u001e~��E\\u000ee\\u0000�m��xJذ\\r�zW,r\\u0012x���ݶ*\\u0011�\\u0010����\\u0002�i\\u0006�ڮ�-q�9x\\u0014 ��\\f�Ă�t�%LB\\u0003]�lW�hĒ.\\f\\t�\\u001d�.�Q�8Ohr*u։��ny\\u001e|.�@a�:۠�d{�?�?���(12\\u0016@Y,,��\\u001dA\\u0015��쒠,`\\u0011�)�8���2�\\u0012��\\u001b`E΢�y��@\\u0010�@\\\\\\\"�޲ÐÎ���P/o (�rbe\\u001e�n\\t�\\u001aϕ��8�\\u0006|��#qfT�/�$g�X\\u001d\\u0018yV��v1 �0��N���0�,9\\u0003t��טr$P�,\\u000b(����\\u001e�\\u0018\\u0000I޳�{v\\u001b�DI�����\\u001d�Vg��}Q����6���Oj��\\u0010��\\n�g8-\\u000b\\u0005\\u0017=\\u0000��\\u0002��N�kpAږ�2ɱ��vҊ��\\u0003�`�x\\n������\\b����AS\\na��\\u0016*\\u000e\\u000f3q\\fN��CJ�2*�\\r�^�����<rA�q��\\fqF໰�\\n�j�)ht_�\\u0018��\\u0000�S�������\\u0016\\\\��9�,T�6\\u0004�\\n��u���\\u0011��\\\\/t���S���G,�6#Ɛ\\u0016��Y�\\u0012�xۭ���t,\\u0017PX�Px�H�B\\u0012׵��Z�\\f�Uf\\u001a\\u0002\\t7\\u0014��\\u0010����B� �A�[���ɾ�\\r�{��hz�\\u0012u\\u0018�?O\\u0002^Ģ���]���b�e_�BǙ��c��\\u001a(�&���t�}�$v[�鶝*!�\\n�9a/(}�R���\\\\\\\"B����y\\u000b\\u001b�[u�ȟ�?��*��BnY�K_-�ā�Q\\u0018h���?�Ru��.�y\\r�k^��\\\\\\\"\\u0018T6�����D7�\\u0013��B�S]�QƑ�*���\\u0001o*�\\u0006Z�H\\u0000�\\u0002u�\\u0007�OqQ�z��ht��\\u0014�/�\\u001f���\\u000f���\\u0015�V\\f��DG�8\\u0000\\u0011�^dM���D���$�*ɖYx�q\\u001e�iC��D\\u000b��9���\\u0006�:�cz�1\\u0018~�%#��_�@c�\\u001c���oq�I�܈\\u001fƻE����\\u0000ʒ�m\\u0017�S��';�L�p\\u0007�\\\\��\\t&DR#F\\u0001\\f\\r�z�@�n�?o�Y8aD��s\\u0019}�q;�Ƽ�s��#\\u0011��v7\\u001a��\\u0000e\\u0011�\\u0001�D�\\u0007�\\\\{����ө4n\\u001c(p��9݉>:�S�'.|�\\u0003koZ�&T1��׈����N�\\u000b̉U�p�2cP5�\\n�2\\u0003\\u0014/sI��##��8W\\u0017\\u0002�u��232�\\u0018�~Jw�\\u000f³z�Z�\\u00152}��\\\\t\\u0002��5�Q��A�\\u0017?:R�$Ҫ6����\\fyq\\u0011�4�\\u0018:�:��ZZ�z\\u0013ZX#�!�\\u000b7G\\u001a��\\\\\\\"y�t�i���r�C���p\\u001a�\\u0002\\u0001\\\\\\\"��\\u001c\\b�r\\f7.,\\u00186�ҿ]���\\n��\\b���KwM\\u0000�H�\\\\\\\"��v=h��^�E�\\u0002�$j�\\u0000WSҥ�i:�.��ƅ\\u0010H\\n3FU\\u001fUck\\u0011�zQ+��\\u0012!\\u000f��z\\\\\\u0013G�~�9��9��Ie*\\u0012�\\u0000K\\u0015�����VTQv�յ7m\\u0007�\\u001a\\u000f�ȒM\\u0003�׋\\u0003�\\u0004V}�\\f�Ï\\u0013$�:H�@e�A��SH��3���\\\\\\\"�t\\u0016��v\\u0006�\\rb8�+��u���(\\u0014�;Tl���r\\u0005�\\u0007Z�y�q&���\\u0000A ^�@���\\u0004�6�������]�F��\\u0016�\\u0005&\\\\��!�)\\u0006F�\\u0011m���l�\\bi&,T\\u0010.<jW[��Jv�\\u001b���2q�)\\u0004|�`����IÑ6\\u000fq��X�8[]�.\\\\w&\\u001cI�\\u000b��H\\u0014� �8�R+P�~F�������ڍ\\b}��NƜך�[�ƙ�\\r�.:�{7�����2�{>˅�^Wӕ��DwNߑ�0��3��\\u0015�!\\n����cԒ��94�\\r\\u0002⭣e]\\u0000f��Xd�c�X�B�Ƃ��LT� \\u0002I\\\\\\\"�\\u0013@gw�=�\\u001c���`\\r����i��z@��D��F�S�+U���Y�!\\u001a����/}\\rnc���I�\\u0001E\\t���~;�>�CwlpG�����}s^0U\\u0005�4�\\b�\\u001eT3\\u0018�� ������S��O6�_Щ���40�\\n�\\n6�\\u001e\\u0006�0�j������#��t&6�vV\\u001a�.\\u000fʓ'jĚP�H.z\\u0013j���}I�4ݣOA7%;4~�<���\\r\\u0005_\\u001eO����bF�@������8�r�)>�*\\t\\r�%�\\u001e:�ʅ��\\u0013�+�\\u0000U���ߋm��\\u0016�5+�P\\u000f]-X�98Bl\\u000fZ90̒p2�8���G�?kXay�BJ\\u000b�@֒�Xd�΅q���E�}$��QY$~�M?)�+5���|�Z�\\r��z\\u0002Yf\\f�\\u0019�\\u0012��ե\\\\V\\u0019���ֿb��IG�\\rņ7#��\\u0001���;�@�8[*�-o�\\u000f��'��Pܵ��\\u0015�w\\u00192'Q*��ܯ��M�y;h���\\u001b�Xxg�pQ��9��\\u0019z[_����@�H���k�\\u001d\\u000fƈ�VT�v�{�\\u0014R����6�?�?\\ne�@3e\\u001b\\u000b�\\u001e���\\f\\u0017�'#��b\\u0015T�\\\\A�zkF�\\u0006^\\u0014\\u0012�A�\\\\\\\"��`\\u0000P�|>4��d�NF߹�;S���?\\u001a���Q���������&�Xɿ\\u0016m.+$�9P=���ڒ�\\u0016f������Y�=�ˍ\\u0014�\\u0005������H���[�aU�1��X22\\rȰ��\\u001e^�<q\\tY��u�(����?�A�o:�'/-\\u000f��rR/�P��qj7�e;tl�27�\\u001a��^*���\\u0000I�V<Z܎�U�y$\\u0000;^�h*�[�\\\\�\\u0018+q�]�r��p#h�\\u0012�Ql�\\u0006�S@À�²\\u0019\\b�.E�\\u000bݘ�\\u001a��y\\u000f�\\u0003�҈\\u0012�;vD��^g�6{1�V��\\u001d�m\\u0017qJ�s��!�\\u0002+\\u001f\\u001b��0�&l��R����Z�\\u0014��YG5z�gd$v�?8T��\\u0015�K\\u0006,nSڽ��4�\\u0000��\\\\�\\u0011qVA\\u0014P�U��Ӡ���(f߽\\t\\u0011�\\u0010u����+��f���\\u0013w[���O��\\u001f*\\u000fs&c'��(P��C��UÅ\\u0018:�R�\\u000e��M5��鄠\\u001e&����s�\\u0007��eux��I��S��Ȋ�\\u0004SnB����\\u000egrh��r\\u0004BFp�1%���ҥ`�el#���JI��Ǝ\\u000e�\\rt\\u001d��n\\u0017n��.\\u0019�w@�V�mX/A�JS������iW� XF\\b}#�K���\\u000eLn��n:\\u001di��̾�\\u001cI\\u0003�@wXa��d\\u0006Bn\\u0001�\\u001bR�PN3)h�\\u0006��H�\\u0002uv*��C����h�F��}�o�:=�٫\\u000e�r�r�\\\\\\\"������&81b\\r�^�|N���,�う���HRI\\\\\\\"W2\\u0011~�\\u0007�Rx�i��ɔ\\u0004?K��\\u0013�V�{@�p�\\u0016��\\u0007�b�{����_ZY���65�ٻ\\u001a��RA�2�l�7��޺���A\\r�\\u0000 ܼ}��8kS����,����\\u0000�\\nW���*��\\u001ak�1��9�\\u0000R�yA\\u0000�t$X\\u0011��J\\u000e(�&�\\u0018��ޥ��\\u000edա(\\u0005�ɥ�2���N�Ȼ0�49�+���4蚙\\u001d�l\\u001fL-ˣUd���\\\\\\\"�\\u0003a�]���dr\\u0010�ڡ\\u0002ֹ$�׹��,\\\\y29\\u0016d\\u001fI\\u0016�Jl\\u0010����_����\\u0000\\t\\u001b�\\u001c�ߑ������y?���i�\\u0017t�8��\\u00166K�\\u0016�\\u0016�\\u0017ר���wyE�v5�k\\u0014�\\u0007�GA�b'�&��HBmm�\\\\�}�q2N�b���\\u0007Sm-҃o�]�Q�gs�R\\u0015� hM�-&�4t�+�}-H{�����o\\u0003a�Jml�_�F�}\\u0002����{I,��ոߎ�\\u0003�<iZՌ���e۝NR:\\u001e����h�ɏɭr\\b\\\\\\\"�~��\\u0000\\f\\\\\\\"�\\u0017�\\\\�4��������gX\\u0003q\\u000ex�\\u0001��TQ����\\n���h|�`�C\\u0011�lm�]W�\\u0000���:��\\u0004��\\tW��Ԭ�@\\u0017\\u0017RWO����h%���3Ȱc�&���\\u0002M�_�E\\u0000��\\b������\\u00105��EE��,�D�,\\f��\\u0018�@�xަ�n!�g���؀�cf��TSW=��\\u001e0 EE^E�\\u0000\\u0000���/�y\\u0010��;��\\u0004�cC��z�{��O��N���l\\u0017ck�UC�o\\\\\\\"\\u0018����_�\\u000b\\u001f�2\\u0016&�ڴ�\\u0006\\t�I�d:u�r�Lh�ۑ&�ږ��ѧ\\u0013��~�Ӷ�9\\u001a�\\u0000uy��\\u0003�\\u0011�����s\\u0007�f@\\u0017\\u001e\\u0002\\u00126k���O�Q�9yyJ�<��M�\\n\\u0006�t��\\u0000\\u0015����(2X/\\u0019bu�\\u0017ݐBO\\u0011k�Ga�F�ŎԔ�\\u0005ʅ\\u0006��{����ن\\u0014~e\\u0000*����V�\\u0016�$�rX0�\\b`�To龔���<��$:/#�0��2NS��\\u000b\\u0003��*�1a�A,ki\\u0006�Wk(i\\t&�GV\\u001e\\u0002��L0Dyt-�\\u001ef��o�C�\\n���{��oz�\\\\\\\"�&lA�u\\u0011i�z��z\\u0012E1d\\bɽ�\\u000b��[@_\\u001d��ָׯ�U����Xk��=ǘ:�̅�K�\\u0002��i\\\\��$�G�\\u0005��x\\n���l��%��G�10�t��0��&\\u0016[k�M�\\u0002X�%��4ˌ�\\u001b6���E��\\u0004kzX�M\\u000eaH��\\u0000mC\\u0002T\\u001f�B+̗�E\\u0005�\\r���@ަ$g?\\u001e3�Ɂ\\u0000\\u0002w�T�6X��\\u0001M�\\u0011\\u0000��\\u0000����RbÑ+�YG WK\\u0013�ӑA���e��V�+C\\u000b\\u0005�q�g�@�\\n���B�ͩ\\u001a�J�#�G\\u0014\\u000f/�[�����t�\\n\\u0018l[��<xR?�\\u0004������G�ڼ]�*\\u0018�8�Ⱥ\\u0001`l>�%q�\\\\\\\"Yrߗ\\u0012B�P@��cPu���{S��PX�c�5�d\\u0014\\u000e\\u0002��R:U3�n?o�f�\\u0002���@��A��v\\u001c��zR�BZ��\\u001a1$V�s�a�\\u001bD���X��s�\\u0018�O�X��R�\\u001d\\u0007��ۄ\\u000b,�e\\r�k�բĖTyF��i�W�����&��k�mM״�F�W!mm��̬\\r(��gЁ�����\\u0006�0��,.k\\\\~�\\u0014���`:_�h��\\t�e�r��Y���_�b�.�\\u0012E\\u001b\\u000fh\\u000b\\\\\\\"�\\u0014�20Sq���E��~8͞f�<F�}G%W�W\\u0016�(Z[�:�\\\\\\\"+4z�r\\u001f�W-\\u001f\\u0010����\\u0018�;\\u001d:���93-�\\u0000��]�C˔�-\\u0011�ǉ��\\u0012Xt�?�!�Rc�dd([\\u00057T@\\u0007�\\u0014\\f_���%Ur/�ʯ�g�Y�ig���j��&��Y6�\\u0002A��0#C� �(c{�ٺ\\u000e�'�\\u0007r��M^\\u0010Y���\\u0018.��Q��L�ӌ^V����G�\\u0007��\\t�j�Rb_Ũ$i a$og]��\\u0017�\\u0014�R��LL�B�(\\u0002R��%���1����&�d=�gVg���W@:V-��!!�BC\\u001b\\u0016 iaskRH�=��aR��2��\\u001ai�\\u0003\\u000e\\u0000}�#v��O�HPH\\u001c|>tN&\\f�\\u000fr\\u001c�Fu\\u001c�\\u0005#ǭMjդnˌ\\u0005w\\u0018\\nb�mAF#�w\\u001f\\b��;q���iċ���cI���\\n4E\\u0004�\\u0017�@��>\\u0014Be���\\u0016ֶ�\\u0000:�\\u0004#\\\\E��d?��V\\u001dɁ�m�_=�h\\u0001[�s}u:�k\\u001b�D���\\u0000),�S�\\u0011R\\u0013��}C\\u000b\\u001e\\u0003��LHI�?(��_1�\\u0007\\rT}a�\\u001d+|o�]����.�\\u0007\\u0015���\\u001an�I\\u0012w\\f�Aܲ�h�\\n�HP\\u0006�\\n˺\\u00158ѝ�*\\u0011�sM/s�F��$25�0���kR���\\u0014�$�I=���\\u0012�\\u001eF��Q����y���\\u0000V��\\u001a��iC��$=\\u000b��#S�&o~Ȓ8�XL+̳-�6��\\u0015ݻ\\u000egj�9O����x���u�&�պᔟ\\u000b5da��rM�>���k��)\\u0010(\\u0000)7��c\\\\\\\"u`��0\\u0016��5�>D������y\\u001a��Y�YYb\\u0006�\\u0016q��\\u0004�.�\\u0000�������j\\u0018\\u000b�ƒAڡ#�%M����[I����cǘ�k�=/��E�%�<�Qqr�?v\\u0005U��\\u0000M�#�\\u0004RllC�\\u0013:8����\\\\\\\"n�\\u001e>[�[�\\u001e����\\u001f�G\\u001b\\u0013\\u0004���N�US⒰��(\\u001d~��\\u0014mP�-�W_����$h�ꄭ�����\\u0003�$�(���\\u0016k�~���0T�n�'�%B-m��i\\b\\u001a\\n��0�P�YI��q\\u0003o�#�4\\u001dW�4Й�N�����\\n�\\u0013�\\u0000\\u001c��\\u0001��/�ޚC�ݻ�x�\\u00043��!�\\u0014�������=�<��y�·U\\u001cB��¡V-��\\u000b�B1ܛ[��VX����I�uȔ{L}/��V��\\u001a�:y\\n��d�0@$�/�&�y\\n\\u0007�Γb)QoP��Գ3��\\u0004�ݹ�\\u001c�:o�_�J��q�%�,Z�]�ʤ���,밻\\\\\\\"W��\\u001a_�5�ceF\\u0002F��a���\\u001b��@�\\u000b�#��V�K�H�[\\u0003�V�\\u0018�9\\u001f@�\\\\�,W�N��z�\\u0019QO�\\u0002\\u0004\\u0002ҩ[�}+�i�P���z+X\\u000f�k�Ω\\u0006fo�$IH�2\\u001dM���˟:\\u0015�\\u0010}\\b�\\u001dk����4�r��\\u0004�\\u0015\\u001e6cC��~�&D����/^��\\u001b�\\u0013��K0�v7=*��?��We��c�#\\r�\\\\\\\"ȡ��\\u0002\\u0001��t~v4\\u000b�3\\bӐF �\\u001a\\u001bV=���f1�9/\\u001c��\\u0019\\u0000)\\u0016\\u0016?�V��\\u000f&91��V�\\u0016[��ꠎ�q�S�n\\u0001U�s\\u0010�e��\\u0002����\\u0019YvR\\u0015U@��W^�\\u0000�b�'�2\\u001e襭�t\\u0017񡱻@�\\u0018���\\u0019\\u00141\\u001cA��$]��\\t�\\u000f�=�N�[�!�ia2+\\u0002�دZd��\\u001ai#yX��c`\\t��RL\\u0005�K�+\\u000eD\\u00024�ӔA@x�\\u001b�\\r(\\u001c����Q��q��\\u001bm��;b�\\u001a���\\u000b�6�z��~M�̫�eip\\u0003��T\\u0006����κ���\\u000f��\\u001e�Ƕ2<c�� �k\\u001d~>\\u0015�n�ٹ��3\\u0014\\u0012\\u001f�X��ƟwU�\\u001d]Z^�OOeh�����a\\u0006\\u000f�4yl-�v�}��6;F\\u0002��Q�\\u0015�pfE\\u001f�\\u0016c\\u0005� \\u0014S�\\u001b���\\\\<��I�ɻX�q�\\u001a�Z���is��u��|T�\\r�x+%�]~��ӥj-�|\\u0005\\u0001�^\\\\i�9a \\u0000z�m��`ddedǌX snV���Jk�i\\u0012e�V�hѻ')X\\r5�\\u0015�*\\u0015����Lװ�%�Kx��W9.l�B�W\\u0013aY&�m3Z藄0(�2O�Ҫ\\u0012ч;XP��9)~&�ވh�\\u0011\\u0000.�t\\u001bx�T�YJF��\\f�½��x��\\\\\\\"��B�έ�\\u0000\\u001c\\u001fS/��4�N���J�ѹ\\u0017��N�Q��lt����\\u001c�\\u0000�I����x\\u00192�c\\t���#��O�_'���\\u001397f\\u0000�?���7�j�WS\\u0002L��\\n�nC�4&4�ʈ\\u000f�\\u0014�\\u0000#�BG\\t\\u00075���3��\\f�H�%��!�,�L\\u0014msZ�ܣ\\r�U�\\b�fXXq�m{�3�\\u0016(�\\u0019tPH\\u0016��Ʃ�Ĕ\\u0013�\\u001e]�!���\\u0000��O\\\\\\\"!F\\u0005A\\u0004\\u001b�\\u0005r8�H�'��H5\\u0004\\u0001��5��N�\\tC�lG���U��-a\\u001d>\\n�ÃA��t�\\u0000(���\\t��\\u0004��\\u0007\\u0005�ֵλڔ�x�8��#��\\u001a�AU:\\u000f2(C���4�!{�\\u0000\\u000e��m��*u��ٵ\\u0019\\u000b9P���f<)�7 \\u001a�)�Ws�ȼR��p4��\\u0015n�ڡˑ�U1p\\u0000�I�Z�Vbr\\u001c\\u001aS\\u0018\\u0004�\\f�nm{jh�!h]�7\\u0004\\u000b\\u001ag/��\\u0016L�v\\u000b\\u001a�\\u0002,\\r�c;��N���-^�g\\u001crsW����՛��d�\\u001a_b\\u0005�\\u0015Ɉ�5�8�g�,4��m|�ѲE�a��q�z��z\\n�N.>>N\\u0010�5\\u0004H}@\\u000b�#R\\u0003�&2�� \\u001cm`\\u0007�]󳝑���\\u0000\\u000b\\u0012-��a�%7�:�pQ���+����h_����ʝv�<��1�.|��,\\u0002���\\u001e:�)t쩀b�39���\\u0005�����^ɯa��U�ܲ��so\\n�-��\\b\\u001f�h2f@H�߯ʵ0��r����YbS����꺝\\u000e���\\\\\\\"?]?����\\u0017���\\u001aR��\\u0000\\u00006\\u001a^�����.I�]��f7\\u00177��5��!�Rs�\\u00122#�0�\\r0L��ֹ\\u0014�?�pF�\\u000f0\\u0016V7 \\u001b��4X����\\u0018;�j6�my\\u001de�\\u0019��\\u0016�\\u001a�Sʫ3�^��\\u0003����ǐ�,� ��T\\u001b\\u000b�*�\\u0018)���p�_J�&\\u0016:���\\u000ejL`�L��\\u0000��W�tbx�*��\\u0014fe�8oo�>�_azm/�Ŏ'��\\u0004�R�ὅ�\\u0000��\\u001c���\\te\\n\\u001aʺ|�6\\\\�䁶�ֺ\\u0011ڲF,L�LQ�IP�aq{kI{�\\\\\\\"b�#�^�\\u001a�M��D1'\\u0000^Cr\\rg4O\\u001a�;5h���P5:^�d�R\\u0011���񭺻�Ԛ��H�]����\\u0005F\\u00069 \\u001f@����D@\\u0000��\\n��0��\\b��\\u0000@�Q\\u0018�I�\\u0019��p�������\\n��n�Bӈ\\u0002h�@m��6��^�����J��\\u000f�i�7�ʯ?c�8^A;\\u0012�X\\u0002�[\\u000b�F��Òg'�\\u000b͛�m�N����#cwk��Ll/M�\\u0000�/\\u0014�ey�r\\u0005��B�#c�H\\\\\\\"����\\u0003[R*Wenګ�kz���\\u000f�\\b�8*\\b�n\\b\\u001e\\u0015��l��4�7/3\\u001e\\u0012�vpt#AI��� \\u0006=X���hJ0�z�\\u0015��3FIk\\u0000N��\\u0010���I\\u0004_�Pm�6\\t(��\\r�7:�1N�6�E���ɔ:�\\u0013 <H���@0�\\u0015:\\u0010O�S\\u001f+%�UW\\nO^ ֒⺫He�յ\\u001b��]JH\\\\[X<�\\u0019�Ӹ�DM\\t\\u0010>�����K�Ȗ3�\\r�\\u0016ڼ�?$�RE�C���ZHkH0Lv\\tv?*\\u001em$��C�\\u0000-.~�na���\\u0000\\n��Q\\u0003N�\\u0003f�\\\\\\\"�h~\\u0014�1�AEE\\u0017\\u001a�\\n�\\u0013��4ܡ�\\u0006\\u001b\\u0012��(�n�>j;8\\nT���)�(;������\\u0000���\\u0015�������5��hq���\\\\\\\"�%\\u001cP\\u0005[��a��Xdd͓'�;s{Z�h>\\u0014N\\u0001\\u0018�+�71���hN��<�̊ZÉP\\t�B��r6\\u001b�Y�i�����=�\\u0012��`Z�-�D��nY�B�?��2\\u0018�\\u0000�Q�zq� \\u0001\\u001b_���\\f�a�c�\\u0000E��?��O��VH���F�]*��I\\u000e|\\t�\\u001b��\\u0018�\\u001a\\u000b�b�{�F`\\t'�����l��\\u0015���ƺ���#�H�j���u��-2S��p��YO����\\u0017am�)D��#\\u00006��c���r�K\\u0005X�\\u001eC�P9=˷O\\f�CoqG����xUZ��B\\u0018\\u001e&69�C0\\u0005�E�\\u001bXڲ\\u0018������{Z��\\u0000\\u000b\\u0002/�=i�(�$6\\u001fH�Qe��I�\\u00001�c̊{q��I�\\u0006�&���'��I�ǘ�r,f�W\\b�q��\\u0003J#\\n\\u0012��\\u001d\\u0005���\\u0007©8S\\u0004��\\u0015�\\u0013\\u001c�Y3 \\fgvb���5�d�bM1�Ў\\u0007\\u0012|���q �\\u0017���P��\\u0014���\\bS��C�\\u0016��FD\\r\\u0011\\n���\\u0007��}���\\u000f���\\u0013�OH�GA�J�\\u001c&S���I�\\u0013\\u001c�I��\\u001d}�Opߐn�г\\u001c\\u0015�f\\u00044v\\u001cm��Z\\u001f���2(kX\\u000b�я\\u001e8t�([��n�$���m&2ϊdI\\u0013�\\u0004^��U[9Ð,�\\u0011k\\u001a!�\\u0010�1*��E���\\u001f�\\n�R�<E��UZO#��X<�?\\u000fٌ\\u0019�\\u0010�\\u0010M� R^�\\\\\\\"˕�@}��\\u000b����;�\\u0000�'Ƅ��\\u0000�M���Wn�e��Uq|�/��nb�iz \\u000b��pu�8�e\\f��_�;�r��;X^��Ե�hhi��62-\\u001f�;�n��X����sn,tf,\\u000e�Ε��\\u000e]��7�)��}�4\\u0017�߅Uz�(��1\\u0002�ݽ�\\u0017�A�\\u0016\\u001b\\u00171�w$\\u0015\\u0016\\\\\\\"��Z�ı��E\\\\\\\"\\u0000Wk:c\\u001a�i4\\u001b\\u000f½�\\u0003��X[���t;qM�Ԟ��\\b\\u0000]�\\u0000mA��&��^�\\u0003]6�=�Tch\\u0005�.��Y���u�i�\\u0004�\\u0010\\u0004\\u0004H\\u0018�\\r����kLq͈:\\u0002u>\\u0002�F�&FSu��mzR�n��Z�\\u0000�&$�T���·�a)\\u0005\\u0001�ʝ�\\u0018��Һ���j\\r�齳\\fl�f\\n���R�9���܅��\\u000b\\u0011�^z���\\u0001�\\u0017����\\nu\\u00022E+uײ&L�:յ�x:/���\\u0003�b�\\u0016\\\\�7y\\u0003-���\\u001b~Pj��\\u0000�����q\\\\��\\u0011�q*\\u0005�-KZ��4��һ>�ȝ�\\u001dJ��\\u001b��j�\\u0015\\u0012�b��-�¤\\u0019\\nt\\u0016����3\\u0003\\\\\\\"Ȋ����\\u0006�[�u���\\u001d�C�XƇn��Ω�]@�tڒq�q(C۱g�I\\u0011n�_·h��C ��\\t��\\u000e\\u0017Ȉ� \\u0011��i64��ly\\r���7��I�r\\bX�Ӗ$\\u0001bOZ9'x�!q�z��;�>��(7\\f���X��P{�\\\\\\\"�����\\u0011źSv❣E!�l�\\\\�Mȯ`a\\u001c���:�m$\\u0018�O�\\u001e��\\u0017�W$fX��-�\\u000e�\\u0001�SYu���j�G�ڍ ��ܑ�O[\\r�fD�Y��jd,E�\\u0000�YwIG8�v��\\u0002'\\f�E�ַV�%�;\\u0004��;�p��B�\\u001c���W��˸��p� �\\u00198�\\n\\u0003\\u000b��+�d*/�Fĥ�\\u000b��j~\\u0014����\\u001fL���r\\u001eR;ov'�;lE%�Z�Ac�;����l�Ʋ}�~\\u0011:R�q2%ʅ�(Vǁ7\\u0004�z�q%\\u0019)-�P�:�1��&ǥ9��\\u0015\\u000e�\\n��\\u0004�<�65d�UloY�C���޼b\\u001a\\u0016u;\\u0003*\\\\�!�vɢ���\\\\�B�.|M\\u001f���.$���f\\u0016\\u0003_\\u001a乿�\\u001f�ёF��\\u0017&�l�5\\u0000���N����䐢0�\\u0001�_\\u0016>\\u0012�u\\u0016�e ]E\\u0012\\\\\\\"����Ͱމ9qo��S(�\\u001fi?���?(�=գ\\\\�E�kX\\u000f��j\\u0005�Ty\\b�\\u0005�FⱞA#�\\u001bZ�\\u0004/˕��A���\\u0004!\\u0001Զ�\\u0017�r�V\\u000b�0��aJ\\u0016&a{گ��\\u001e��XC�3�\\\\u��\\f��kz\\u001f$��P0%WR\\b�J��\\u001bX�oƲ���]N㯝TH��ǎ�Y\\u0014\\u0006]�-�P��\\u0006�L��Olhz\\u001e�۷\\u0018�-�A<�\\u0001�(�RS3�R�b\\u000e^xey\\u000b*�\\u001bu\\u0014Wk��I��C\\u0001n�|)�uD\\u0002\\u0012�5c�\\u0003n4\\u0003�\\u000b��Vp��i6tm��\\u0006� \\u00005�<k\\u0004�؛y�\\u001d�\\u0010\\\\\\\"\\u0003ſ�W\\u0014�\\n��\\u000e�\\u000b�\\u000e\\fx�+�F�\\u0015Yx��\\u0016�\\n�?tv�s�{��Є�/�\\fͳ\\u0015�b�\\u000e����_1E_K�Z\\u0012A�''}��\\u0000uv��\\u0017Ł%�![�P\\u0000\\u0001�\\u0013�\\u001f\\nFs`\\u0000q$\\u001f�\\\\\\\"by�z�w�~H�\\u0019L��E�/��S�\\u0014�-cb�^VKC\\u001fyI$\\u001b\\u0012I�M\\u000b�\\u0001�'\\u0011ύ5�RF�,Ƞ\\u0010E�\\u0000\\u001a�^V\\u001a\\u0002G���k���3\\u0003�\\\\\\u001ck�\\u000b�d�\\u000e�\\u000b�ҵ�1\\\\\\\"�\\\\\\\"�S8#f�M��?\\n\\u0007�zd\\u0016�Jn���APeE\\u001cJ�{�����N��4\\u0002��\\u0012����?C~\\u0014���5nͨ\\u0015T9:����#\\f�Z3m\\t��޺��\\u0000\\u0012��j�?�\\u001a�#oB��?\\n}�d#6Qp\\u0018\\u0000������nlԋ;�LY]�l�\\t1�\\u0005I\\u0016:(\\u001bP�A7�ֺ^��6\\u0004�cPT�\\u0013`\\u000f�+�-J�YJ\\u0015Ӯ\\u001f�ۊ�\\u001e\\u000f�B\\u000e��J9d�&�m�l�6�x��!��ک7$�5�}�\\u0017\\fJ�\\u0006\\u0001�+�_a^�^南��B\\u0018��j,4�Xx�;�\\\\O8��վ�Eu�\\u001e\\u0002��g��\\u000bK�.Ju�n��ț����&����[�\\u0007Qjj��������\\u0007�� ��\\\\\\\"x�e�ؐ´��vx�/2M�\\u000b_��trdF���7�ڄL\\u0019���]H7��h<.Bx�6�\\u0004|�\\u0018\\\\�Z�����2�1%[K_AM{op�ǊE�ʳ=Ƅ�`:P��=�\\u0018j�./�^v�yd�\\u0006���Y�ό\\u0015����&\\f�`b�\\u0018�Ѝ�4�Ci�p�\\nA�ʞ�ah[�\\u0017�[�&hL�֜���UK\\u0002�\\u000e\\u001d������\\u0000C*E��\\\\�*7�H̻�X��@e�,9�)�Kj\\u0005VyVD\\u0005i8�liKK��/>\\u0019%G��8\\u0010�\\u0004k{ڼ��0C����ێTf�EV\\u0004�$s� ����]�8� ,U@�֊[���޼q29�\\u0000�Gb�\\u0000���\\u0000K�\\u0000���̣�d�*�2H̷��I���\\u0016!��\\u0005h٭a��\\u0001�%S�n-e7�k\\u0010��W\\u0006Q��k��ՖR��p]u\\u0004\\nw4���\\u001a\\u0010h&�\\u0004,\\u0005��J�YB� �&Fe�\\u0006��SOv.6��y�f\\u0005�;�B�de>\\u001b|�s�8��0;��s�����\\u001bŽ��\\u0004���&�i�<Ǔ�\\u0002|�Փ�:qk�u�\\u0012#$^���%����\\u001bɀ䀵�m�`�c ,\\u001a���j�K�p\\u000f�f�\\u000b1�\\u0007���ZH��\\u0018�x�}��2%͏S@�ն��\\t#�\\u001c\\u001e��\\u0017���eL�#�d��v�ǯ�x�!\\u0016��]�G��*�\\u0001E�i҅���\\u0000t\\u0015�JT։r�?I%�\\u001f\\u001f��1�φ%\\u001cչ\\u0001m5���\\u001c[T;\\u001f�M�Kƶ��~\\u0014�\\u001a���urds�9/-��*���Urs��\\u0014\\u0005 �\\u0004�n�\\u0017r\\u0016�\\u0000i�\\u001b�UCw�EoR�͎��\\u001a�\\u0013��\\u0003���2\\u0013��\\u0000�Op�\\u0000qv��cƙ$%S�YA\\u0007����\\u0019\\u0004\\u0015\\u0016�\\n�1�LQ�\\u0001�\\u001d<���6�Ǻb�Qq�b\\u000b�I\\u001a���+̾�&4��%�Xim�47}\\u001cs\\u0014\\u000f�\\u001b|MNƊ{�\\u0015��e[�K\\u0012\\u0002�>b�`�C�\\u0000���\\u0012t\\u0017���\\\\b\\b0�\\u0007pT*�6S\\u0004Ș\\u0001�v\\u0000\\u000f\\u0000ƇZ�>Nڇ�<��T�\\u0012C\\\\�Z�4.\\\\0\\u0000\\u0001k�Zc�%$��ɫ�ƄР�i\\u0013��=kIX �F��$\\u001e�\\u001d\\u0015EϏ�Q�5�D\\u0003\\t\\u0017��\\u0004�`�\\u000f#zn��\\u001a��r\\u000b����^��$�bP4Q繣2´\\u00040\\u0007U��𦒀�r\\\\�kt�q�R2���\\u0005�T�C�\\u0003`oI\\u001eTB�l�a�2\\u0010�D9�$��Ÿ�\\u00066\\u001d\\u0001�3���*q��j\\u000f\\u001f�{'��I�\\u0000\\u0010\\u0017S����D1�#���\\u00000��\\u0013ˑ�b)�\\u00124�)��lGCKS\\r�K�\\u001e�e\\u001eW�w\\u0017\\u0017�Z\\u001b��Ï�*K\\u0012I\\f��+����\\\\QF�����\\u001eEu$���CO\\u000en/\\u000e:����\\u0000�&<O��F�\\u0018>��\\\\z|)Vh\\u001f���j���T��С�Yن��T\\rbO�\\u0004��\\u0012X�y��8\\u0011(:�oS��Ნ���8~�P\\u0005r\\b�4�fP܈�Y�K\\u0002�Am*��$Z��\\u000b�b��\\u0013ı`>5�yp\\f�v<Uoso\\u0011jCs�]����\\u001d�9��d*d7*\\u0019���ҳ�\\u0000/ܱLl\\u0003�H \\u000b\\u001a�}�\\u0011QCs\\f\\u0000\\u0004Z�ڱ|��2Ь+\\u0011^C��\\u001a[��Y�\\u001e����t�SK\\u0001%ci�b�?\\u001e:H�Jǹ�c���$� u\\u0004h\\u0001��K�\\u0018,�~�U\\\\�h;|T�*\\u000e\\f���[��qr�\\u0005@A�\\u001e�\\u0016\\u0003\\u0016���;Q�\\u0004�҆�\\\\\\u0002|���)��^6\\nl��\\u000e�4\\u0013B��Y#\\u0001Pko\\u000f�}C�\\u001b��\\u0000��\\u001f�\\u0000m�|��Ƒ�<��P��:��\\u0000\\u0000�)ȣ&��\\\\\\\"Qk6�T�t\\u0012�<�%X�Vy��Y,m��(,|we\\u0012s7���}U�J�j�Y9�:�ٙ���/%�d�RD\\n��nA��\\u0006�~��}�;��1g\\u0012�dV*\\u0015���>�+��y�:��9\\u001fƘ�\\u001c \\u0013{\\u0013[׭G\\u00192�ݬ�֦��F�Z��\\\\p,H�kz�l*�т\\u0001\\u0016m\\u000f�M\\u001f�f\\th�k���a��ҧ����\\n,�#\\u0004\\u0016�m�\\r�$r�\\u0014�\\u0000\\r�.$��\\u0006�ΎI=�O�\\\\���2)�\\f�Ô���w\\u0002�c��b&��[q��W\\u000f\\u001aHf�n@���h�\\u001c�\\u0005+F�\\\\\\\"PTҬ�I ӛ\\u0016\\u0000�.o[�e�6H�@Yx����vh�敆���jk@��f���fp?���Ir�܈��\\u0002����צպ\\u001bʾ\\u0000��*�-�\\n��I�4��C�1;V\\u001dўlp����\\u000e�\\u001f:u��q\\u0011��B��\\u001a�^� �X�\\u0007\\u001b��\\u001au��27hB�HsRU�T�\\u0006�)�H\\b��t%��\\\\�\\n(%���Q\\u0012%i\\u0004�Úy��k\\u0005\\u0003SmkN�\\u0004����@$Xq7��*\\f4b��Q�P�T�Ā\\u0005��SG6�\\u0005�\\u0015�\\tS�{�9\\u0017��4�2!\\b\\u000704\\u0017\\u0014.K򉈰\\u00166���j7��S\\u0012BgE�����g\\u0001���V�Pl�G11�HGN�L�WK�P���:oN!&\\u0013���b�3�\\u0010��֥��:���Τ\\u0007����ԕ6\\u001e\\u0015.\\u001e�&�\\u001fv\\u001e��۰\\u0006.J��;5�\\u0002\\bo�\\u0015~�߱reĖ\\u0004rq�22�\\u000bqkhnk�����O��^\\u0012}�_�\\u000f��\\u001c�N�_��$O\\u001f��o�k�M[\\u0013?\\u00150�C*�*\\u0005`N��+���U׭B����I �������8ɑ+r.\\u001b�\\f��Aj�#>\\t\\u0014*� MŶ�s)���~��FvBL�sOZ�\\u0000���Q����^�\\b�c�\\u0006P\\u0007��J\\u0007��t?�--��$��\\u001c�w1�¥\\u0007�o�O\\u001a˷������n(u��Af�9$_����yH\\t�+EhB���\\u0000���\\u0000�?���Y��\\u001c4�\\u0015��\\u0001����R\\u000b��q\\u0014J���O\\nϹ�ԕ���_Tѷ\\\\ϑte��i\\\\\\\" ��\\u0013��\\u0005c�^\\u0019�]��\\u001b�X���U h�\\u001eB��\\u0006��8�zUV�UE�PM�-��\\u000e��\\u0003\\u0018�0ί���+D�S\\\\\\\"�.n(P皁�+k�N���_QV��\\u0014$t%��:V��#'\\u00197\\u0004\\u001b��x�i\\u0014k㩭;{\\u0005˳��\\u001di��`i�\\u0002���ڶ��&\\u0018����D\\f$bA6؛�C$�<l\\u0002��A]�x�b\\b�\\u0004W(��|\\u0007�Ki\\u0003��ݾh� ����\\u0016�Z3'��<\\\\\\\"0��2��~Szs�\\u00062g䅉\\u0015}\\u0006�@\\u0017+�+�)\\u001a₊�y\\r@\\u0003���\\u0012�%��\\u0012��$�\\u000e-���\\b�rڳ���f�t����'Z֏��\\u0002��\\u001e�X��!%c�Ssjl��\\u0011�d�\\\\�\\u0007��W,�dU$��4W��Wy�[U�hv�M'����|sƨ��@�U�K�mjꤊ/m����¾f�����.ǩ�\\u0003\\u001f���)ԋ\\u0003B~����{\\u001e\\\\x���\\fI�a}M�;�G&,s!\\f��F�^�p\\b�⍣�I����M12Q%g`T2��\\u0013���b��+���W\\u0007\\u001c\\u0000\\u0000\\u0011%��\\n�q�P��ѻq�89̎���\\\\b��)�AS�޹��\\u000bWC��\\u000f��l.b7?��$��|ke�⾆O\\u0012d+lYR)\\u000b=�ki^�����Ϻ��.mZv��K3\\\\\\\"��N�7�.'�����<�\\u00012\\u000f�\\u000b\\t�7�dcŭ�m�Vp��:N����S\\u001eU���$�\\u0004z���;�z��x}�p���`\\u0001�[�υqɏ#-ɷ��v]�a\\u001d�\\u001f�E/�Đ\\t��4��g�\\n�\\u001c��֋n�c�\\u0011��:o�ջ�F�G�B�M�\\u0000��@N-\\u0013�\\u0000���\\n\\n���#\\u001c\\\\�X@�\\u0013V6']MIs�ݺ8�@&�f��q�y\\u0016#�_zq�\\b�@u SURKx���%���\\u0000���}T��[���#��ΕJ��\\u001bt�䔉Dv�����\\rJX\\u001fcwxcǊ6v\\r\\u0018\\u0002�\\u001d)v�\\u0019�~�\\u001b�\\n�:mAƜ�/j��2/�z�PHfԀz��Gj�i�\\t�^J��D��� ���\\u0004S��\\u0000qb�\\f��I�Ք_��E�k\\u001e�c/\\u0011T\\nl��\\u0001�@;)F�\\u0012�\\u000e\\u0007+���~�8�$/\\u001a\\u0005�\\u0011�\\u0000\\u001bz�\\u0017t�\\\\�đ\\u0002��(幷��>ʬ@\\u0002�\\u001f��\\n���,W\\u001cL�+�,\\r3l�OS�P]��\\u0006\\u001az������h��WPE��vQ7\\u000ep\\t�̙fR��\\u0017�^�����W�T�{h�6���8�g��]4�{t�]�,9�)�\\u0000�\\u0007�\\u0014�5\\f .N�\\u000b�\\u000bpkD���X�5�O�!�7P�\\u000b�]m�[ƀ�l\\u001f9\\u0005�\\u001d>F�\\u0019q�b��\\\\+]m�N�%\\bN\\u0011Q�{o\\u0000�὆�[�RIs#i�A��Y~\\u0014ՙ\\u0011\\u0006�\\u0006��4��r4\\u0006߅g��Z�\\u0013���֩��2Η�0�j,������Y\\u0015�\\u0016\\u0004\\u0013F�(�\\u0018�@�\\u0004�q�J\\u000eM�\\u0005$j5�\\u001aR\\\\��R�4\\u00061�\\rT��!B�*nTXں�#��\\u001d�~��<(x�ݳ&���\\u0018_��G�6Ɂ&;\\u0004�\\u0019�\\u0010:��\\u0017<�섣�� �\\u001fݡ������~�L|)k���\\u00065Y\\u0010���ւ&`M�[b\\u000bs\\u0007ʎB�\\u001fi�k��,8\\u0019<l\\\\\\\"��?�u���&�O�h�T\\u00110 \\u0012A��MX\\\\\\\"N%�T�ܹ(��7��QxX�������t�j\\u001eBy��M8�r��K�D��eO9mA�/��b\\u0001Ld�޴��'\\u0014$)&�\\t\\u001d6&��S�}\\u0006ǧ�>Q�X�\\nQ�l*Ǻ>:�\\u0007T�p�\\u0001:\\n6?���)NdJ�NXڮ��Ճ�2��kDB\\b��7\\u0003է�{��4Q�\\u001c�\\u0017���e���I��\\u0001\\u0002ě^��\\u0012Fq�\\f\\t$X\\u0003z\\u0015T\\u0004�\\u0012~�nHb9\\u001b�դ=�\\u001cd\\u0010���N���W�r_�d�\\u0000Q�i\\u0001اo��\\u0018�\\u001c��\\u0002B�u�\\r?c�\\u0013&'��ά-}m���4���?�[M^�\\u0000�\\u001a�t^s�/oK���'f8[�?M6[ǎ�C;qS}\\u0007�L\\u0007e�1Gc�\\u0010������W\\r\\u0016>�����k�5�O*�n8�V��.M�5T�8��)��~d\\u001d��EA�)t� !C-���\\u0000*X\\u0000+��(�$�\\u0018��^�����vR�'_�C[.|��$J�@nE���\\u001f\\nՠϘ\\bYa\\u0001�Pn�_�C㬢vX�\\u000b��\\u001f\\u000bѱ>D9��9\\u0012#H�%\\u0002׿B(r��\\bQ����#28�\\u0000܈�_\\u0006�+���cM+H��>\\u0016��_Mȏ�;�;#\\u0013�W�;l�X���\\f�Gcn6�iR�̕�l\\u001f�(�>q�K \\r�O��i$�\\u001cl\\u0017��֗9le\\u0010!�\\u0001nTV\\u0004��4�\\u0003~�i)�_�҆Ǎ�-e]M�Ҳ�\\u0000���̲\\u0010|�\\u0000Ƶ�e�\\u001aDCɘh\\u0005'H2F��Xӳ~��\\u0019�\\u0018��|Mi\\u00169�0P,7\\u0007·���\\u001aQ���K��-���)n�xk\\u0019�Ɨ��Y>9���Վ�#Ar\\u0005��E(\\u001fR�>4NLв\\u0000��Ժ\\u0003�k\\u0019�B\\u0001W\\u0017\\u001e\\u0006�rn�$8Y�D�0^CB\\u001a��F?o�N���\\u0001nNlC\\\\t\\u001eUl|��\\u00164.\\u0003\\u0001��Vn$sM�L�u[\\u0012@\\u0006Ũ�(@R�N�\\n\\u0002dN7\\u000b�\\u001d.m�^�e��d(o\\u001fU��_p�0��\\u0011�,�\\u0006\\u0004�B��6>@,��Ʌ$�e\\r$\\n���M\\u0018f�,ߕ����X���b�D�)��&��c�,/� 9\\b�b\\b,\\u0001\\u0006�t\\u001c���?��h�{��xռVQ�[�ݦ���T�d�\\u001ejm��~��K���u\\u001e\\u001aQ��B��$\\fXj\\u0001�a\\u000bc�#����+J�7�H��4D{��Щ'[W�\\u0019\\u0019��U�b�@\\u0001��װJ�lZ�\\t�k>���8\\u001eV���Lۖt&m����\\u0012K �Ŝ�A4S`��Ŗ�:\\u0005\\u0005�F�� �����[\\u001b���VS\\u0013�\\u0016'(�U66�!�Pı'\\u001e\\b\\u0002��[}�\\u001eQ�<���\\u001b�Yqn&��KW������3\\u0019_� \\r\\u0005��ds\\\\i���J#\\u001eH\\u000e\\u0013G*��A�m�xPa|V�}\\u0006�����0\\u0001����\\r\\f��9}y�ȟ3Y�0�\\u001d��b�*Aҵt�\\tZ�\\t�6�\\u001f��f%�\\u000b/K\\n\\u0013\\u001f*\\fi�\\\\\\\"\\u0000�,f��\\u0006��\\u001aY\\u00043\\u0002��o+��=\\n:�\\u0019��p�\\u00191e\\u0005BH\\u0001�\\u0007M�Z_��6?�F\\u000fɈ$_}��?۹\\u0018�v�\\u0014�,o��,@64\\u0007qd>��H��\\b7��R�I{!���G\\u001c�\\u000e/m�V��X�u\\\\\\\"�d�}\\u001cl\\u0006���\\u000e,};\\u0011I�l Y�c��mrF�\\u0006�\\u0012�`��\\u0003O�L�//=�\\u0015\\\\2�{���S�]f\\u0014�b\\u001c��dp\\r�W�<��)#�W\\u0016\\\\\\\"���*���QM1��E\\u001c�\\u000bXnE\\u001ck2ҟ �I9ɰ!�N\\f\\r�{�k|~lV\\u0018�\\u0011��Osh[)�\\\\\\\"\\u001dx�\\b�^��r��#�\\u0000��o:\\u0013/�\\u001a\\u001cV\\u0017�\\u0017�[���)�]@qr\\t=~U���c�Ũ�2��Q\\u0014��\\u0002����4��T��8$1�\\u0004�{�m�^(�2Ė\\u0004�<+I��_�76\\u0003�1�S!\\u001d��\\u001dM\\u0010�\\u0007���d ��~���<�\\u0001,5�gɍ�*�N�����}Cj-��0�'&\\u0002\\u0011�m���B���!i.�ۓ~��w�E)�\\u0000t�aV\\u0012\\u0002E�5�D]q�/�Z��Z.-�aj�!j��\\n5\\u0015�e�T�Wp�\\u0002M\\u0004pn��]\\rd��#\\u0005�A��D�\\u0012�J�o\\n��\\\\\\\"\\u0015�x�\\u001a�;US5O}ě�τ\\u0016#��޴L\\u0018�p�b��|\\u001f��j�\\\\\\\"��kVQ��^Z\\u000b\\u0011��D,�1�$�G�5@�5�ҡpz�~\\u0000ѥ�~<�,\\u0017U\\u0004��^s0Յ��Ǎz��oHh�>\\u000b��\\u0014��/rM[/��E�LU�z�\\u0012\\u000e��\\u0014�#�v\\n\\b\\u0016�ƍ���|WA\\\\\\\"�+`\\u0006�B�@��\\u0014�\\u0014\\u0000��7&��\\u0011�m��\\n'�O\\u001a�\\u001dx�7?�L��\\u0004�\\u001e47a�x\\u001a�\\t\\u001a+G\\t�ȁ����[oj�W\\f�������\\rJ\\r4c)�_qt)3!N����(�\\u001e\\b�1�z���qO��VK\\b�\\u001cG@w�9<�fu\\u0004��)��*�؝r�0�|��0c�����¯��r�4�!\\u0005͉��*\\u001b���,�!��@\\u0004�{\\u001ak���bʍ\\\\\\\"�2�j.ifJ�\\b���G\\u001b�,A�5T��r@�.:Z�ּ\\u0017Y�X�xP�\\u0014 �0d�U�2��$\\\\�zE\\u001f\\u001e\\u000ft��$�Ȋ\\n��7�]2�=�\\\\\\\"4�G��(\\rv;j)�V~\\u001bA(Y���\\u0000\\u0006��W'wom{+Z�jҟ��ZJ&��~ᗑ\\u0019�W�\\u001dH\\u0000\\r�\\u0015|^�>T>�2��@\\fM��\\n^Y��So�t\\u001d�/\\u001e.ީ$��\\u0006k�\\u001b\\u001dN��V�\\n=�y�r(���\\u0007��d$zI�\\u000b�b��S�\\u0003���]�\\\\\\\"\\u0017X�ȬC\\u0012lo҂i\\u0014��Ji�\\u0018,v�J�=�\\u000f�k'qˍ����g�!G�}��_�^H.-ғ�m�V��*J�]\\u001b^�/�����X\\u001c\\t\\u00183z�\\u001aju���?h�4e�\\u0010�\\u0012�nF�}\\u0005\\r�jT��.A����ɴ\\u0017#K�Y?t��̟�����\\f\\t��S��I\\u0013�8t����QT��֩�hO���m4��\\u0015oak�\\u0012�uމb\\b��خ4L\\u0014X�\\u0004t\\u001a��\\u000et,��1�k�e��h�B���mE1ʚ+���[[\\u0011�L���Zd\\u000b������]��X�݀u���h�r����v\\u0002Ʊ�\\\\\\\"\\u00133�pA\\u000bcZ���܋�#4�fc� ��#�\\\\\\u0015�I\\u0014VT��\\u0010�sq�����L[\\u0012\\u0016@Ibw5���%��\\u0005�\\b��\\u0006�΍\\u001d�=t\\u0013\\u001f��\\u0001/�C\\u0005\\u0006�e�TX\\u001do��Q\\u000b\\u0018\\u0014�ˑ��\\t�##�-vb@7���Hܺ\\u0002\\u0018�t��7\\u0016*v�J��\\nX)�\\t�\\bR6h��)f\\u0000:�\\u001at\\\\\\\"���G� �t���\\u000f�\\u0012�^J�5\\\\\\\"��cI�.�=V\\u0006�kI7#�2�T��V+4\\b��\\u0010�s^���E���\\\\\\\")@ �֜N�_Q�]�#\\\\\\\"\\u0004��P�\\u0003\\u0000A��h��-���\\u0002�\\u000f-~�Q�98�\\u0002��\\n��\\u000b\\u0000A\\u0002�DY��FS2\\u0003�\\u001f�x����x�>�i[�ϸ��vY1��˕�E�y0\\u0000��W�{�K\\u0012�{&�}����\\u0018�v�D�L��\\u0005`I��W#�b>\\u001d�\\u001cgC����ji�\\u0014x\\t�\\u0005%�&E\\u0001\\\\\\u0006\\u0017'�\\u0015?t�\\u00181(��\\u0014X\\u0005\\nl\\u0007�W�.��®@eP\\b>U�t�]���7\\u0003Z��T�{��s\\\\ܐ҆2=�m-�\\u0015\\u0018h�2hí-�\\u0019\\u0006B1B\\u0000k�k\\nd\\u001f�٥\\t`�(kyɖNXc��v��\\u0015�9�H�B@[n\\u0005\\u0001:JrL�������\\u001c�~�8�j*�q�\\u0001Y���˫l+LY$��L�f�4w�����CC���\\u0003\\u000b���[�\\u0016R\\u000e�j^�B\\u001dG���\\u0004��\\u0019*\\u0001��\\u0000m/�\\u0000���Wq�*\\u0007R\\u0000��t�;Ka�5�u\\u000fseco�g�,>��p�\\u0003�7�mF�\\u0012@�?��s4�b\\u0005�4�\\u0015�\\u000b6<�4-�H�27�\\u001bV�4F\\u0016PE�~u��1�\\u0015\\u0012�\\u000f�3\\u001f��p:��ʎ�B����\\u0019d�\\u0010Y�I$﹢#�8�P��3$d5�@6\\u0002�m��l\\u0003>0���\\u0005�\\u000b��\\nQf\\f��ZS�3%�\\u0013\\u0000Hb/�\\u0000�2J\\n�?�j�x\\u0012�iy�(��xV��d�\\u0011��I��~\\u0015���5�#*d+1��S�\\n4\\u0000�=�\\u001f��\\\\\\\"�=@�ʰ����g��:(\\u001bkDˑ\\tF�����V�\\u0017��\\u0000\\u0017�\\u0000!��s!�|��\\u0002��mٵ����(�U��|+Q�.H(�&��\\u000bP��\\nؾ)����2�!�\\u0007[��C���^��\\\\��\\u0003cz6i1�]\\u001c^ڋ�B��\\u0013�U�3��f�9\\t>�\\u001fʳ��9\\u001f�\\u001eLI?\\u0013C㒱؋\\u001b���\\u0000�\\u0006Cd�SS��R�)�3ߏ9��\\u0016Pڀ\\u000f�\\t'x���bJ\\u001b�,5��|R��\\u0001�M\\u0004Ř�:�E��-;\\u0004Fa)�A���\\n�\\u001bI\\\\\\\"º\\u0016�_j\\t�Dq(T$ܓa{m^���.r���\\rK6��ƃM���逿%��\\u0000�{\\u001fkʖ%u����ۥn�\\u0011��>�#\\u001f7\\u0019p�OuUA�P�\\u001d32(~�Q�l�\\u0018\\u0000~�k\\u001a2\\f�偎1��,7�l\\u001aſ�+I2\\\\\\\"yك�8���5��G�z��\\u000e��s\\u0004��F�\\u0016�\\u0012�A\\u0002C�\\u0016�XIܥ�#;x\\u001d\\u0005\\u0018��.\\u0018�\\u001e��X���) �A�:��VQ\\u0010\\u00163ۈnF�l+&�)��\\\\��VB9=��7�M�U�1Ȳ\\u0006e k�)j�@�k!\\u0011(��Ab~u��\\u0002�T��\\u0002�\\b�\\u0005$m��H'M(��)��\\u0018�\\u0017�w���<�G\\u001d\\rڇȊvs4���k�\\u001d�\\u001e���������� ���2�S�I\\b�;)`��[�NI�S��B�b�qFb��i I��\\u0015� ��҄i\\u0018�.����Q�\\u0002��\\u0018 \\u0004\\u0016\\u0000�>4�����1� /�̗nJH׮���\\u0015�!�͇Μw��\\u0019�\\u0011��P��ok�m�\\u001a�\\u0006jHnS�$��Rl�?���p�A$sD��\\u001fW�\\u0000�@�>c3C3�(�H\\u0000n\\r�\\u0014��b\\u0013&��O��k2r���\\u0019,�!am�&��\\u0013Gm�bf)\\u001d�\\u0002���2;\\\\�Dd�\\u0002���ͭ��=�\\\\\\\"$���PWK�kl��|Y�dVfF\\n\\u0001Ԓ*\\u001brQ�\\f�d�#k��t�\\u0013�\\u001c�t�K\\u0004}T17��\\u000b��TZ&��5��<�L~ݏ\\u001eC��G�\\u001a�kO\\u0013��h\\u0005'f\\\\\\\"K7\\u0012^���i�\\u0000֢���6)�(ԀM��M�s0d�\\f2-�n[��\\u001bV3ec�%VE��k����\\u0000�r����\\u000f��\\u0004�\\u001fR4$mL�Ɋ6Ձ\\u0007C�\\u0003��$�0�#\\u001d*,�X+�+6����VH�f�\\u0000XP��\\u0006C��X�l\\u000f��^d��\\u000f\\u0005'Q��\\u0012\\t=��F\\u0000\\u0011}<\\r\\t�\\u001d��\\u0006�q!�]h�l)2T�V�676�����]�&\\u0018!e���7\\u0002��ʝ[��\\b�\\u001f9^<~`s�^�\\u0005\\u0017�J����Vq\\r�$\\u000b�m|+TʊL�O1�yܝ7\\u001etd�X�̃�O���xP�O\\u0003�dL��:}B�5\\u001a��G�}�dP���M��l���\\u001c�`+Li�<�\\\\\\u000b�k�t��\\u0013��Q���P:��\\r�\\u000b�Ue�s\\u0015,�\\u001f��kF~�\\u001f܌��(&�kҽ���a��\\u0006�[Z\\u0013`�QRa�\\u001dB����~\\\\YG\\u000b\\u0003{�֬��#\\u0000��aZ�e�\\u0013J\\u001d�Ȃ\\r����RS9-��\\u0000�{8KK'\\u0016,B�\\u0013�d{t|m����\\\\��Y�A\\u0013���\\\\\\\"�ic�B\\u0019\\u0012��)�����E�Ƣ��$Ê7��/�OZa�$*��\\u000b����,�1*n4\\u0017�<��\\u0006\\u000b�\\u0014�*q\\u0005��\\u0012Mnq\\u001b�z׊��MI�k�wX�Go�X\\u0013S�����ߗ\\u0011b�~4�3�\\b����Am\\u000e�\\n�\\u0017n�9�`�t\\u0000�#m�q��������J�&�I-\\u0001j+�\\u001d�L`�e*�g�*��/�\\u000b\\u001e<1_�ۖ��]O�+��o�\\u0000���W5B�\\u0006V�Z��#��Ǧ���汝\\u001c��&çƈ�\\tc\\f6�; �\\u0014�;\\u0002�[A�ʌ��y~˼�#\\\\\\\"\\u0002�\\u0002zk�K�$���e��\\b�����~��H�!%��\\u001cN�|(�\\u0010�\\u0005�n\\\\\\\"��Mh�����\\u0003~��\\u0007J�O\\u001a�ĵ��\\u001f:�l����uֶ����<n�4���ʶ\\u0005���6�5���#\\u0015}�H�H[-�K\\u001b\\r�k��\\u0004y\\u0005�\\u0004\\\\��Qy\\u0019��{Q� w3G`/х<�����{�SxX\\u000b\\u001b���L����bN9\\tǈ�p\\t������\\u0017�\\\\�^-�ʒ���� �@�A�A�e�\\\\\\\"Y�\\u0013'3�Ǔ!�@ҵ�\\u001b\\u00026��xP�ϑ�\\u0004R�ԛ��~\\u0015l�\\\\�t<��\\u0001\\u001eB��� -�\\u0015k��9c������\\u0006\\u0017�\\u000b�i�j�ۋ}AM��l�FP�u�]�K\\u000e.*j���\\fn���`�TFx�N�^�c�ߴ�\\u001eLeD���.��_���6X9,m`�ȑַ�΋%!�O%$��Tn5\\u0007����)S(�\\u00166\\u0000\\u001f¹������Fy����i�4�\\u0015��A3e��6e'B\\u0001#j\\u0007d�\\f�;W��/��\\u0015bV+f%M����x���8⑇�ĕ\\nn.<n(���!�N�B?�ǋhv\\u001d\\r[�\\u0004�X�\\u0017\\u0006�oc~��̋?[)ӗ�(�tw\\u0018�X��Ѐ*�\\u0014�\\u000f2)kn@\\u001aX�\\u00142��@�_*P�!��=ɗ�w\\u0006I�\\u001c9\\u000be�l7�\\n\\u000eA$|�.Sp(�$A\\n\\u0002�\\u00105\\u0017��u�\\\\�{�o��u�\\u0006��T�]mW-��v\\u0005L�q��s^�d'�\\u001a�3T1Z~k�ּ��Wr�����M\\u0002]E�:Ӝ\\u000e���1\\u0017*'�c��\\u0006&�\\u001at\\u0006��@Y�:��5��ڒ5��Π�Z\\u0012\\u0001��8\\u0006r�Ƕ\\u000e�:�7\\u0016fP�6�$u��y\\u0017q�\\u0002�\\u001bX\\u0001�\\u0016\\u001a\\r�����i�\\u001eAbP�\\u0011�ɤ��̲�q`\\u0001��5/PZ\\f%ɚV\\r#\\\\�aS����cҲ��D\\u0011�}@����Oi-��\\u001b!�\\u0011�\\u0015\\u0000�߮��f\\u0016F\\u0006?�ҫ  qPo�ƶ�3Ĳ�]��E�\\u001b__:�|�){{�n�Ŗʤ\\u0013�T��$\\r(b?�!67��j8v���'\\u0005:]O!֒\\u0018��V��n:y�F;��\\u0014)\\u001cT\\u0000G�V�^\\t�{�h�vK\\\\��I*}Cq�L����\\u001a�$�4rJ�\\u0001��GceE��:�gf�>&���\\\\\\\"c�<����o��/\\u0003��=��\\t�%����y\\u000b\\u000f:-��UX�[\\u0001sc�\\u0014��!���쬨\\u0001� ���\\u0012�\\u0004�r\\u000fQ�N\\u0017�m�H��\\u0013W�V�I���[��5x�-�F�\\b�*#�\\u001f\\t�I}���\\n��\\u00167\\u000e��SqrN�kȬ�\\u001b�w\\u0016�ۑ����\\u0000�x� L���Aִ\\n��\\u0000��ne�3\\u0013sjX���#qbX�\\b��\\u0012,8��p��Z�\\t<�ƊXgS\\t\\u000b&�1ק�\\u001f$��D�μ\\n�V\\u0000\\u001b[^�&3�rS�Ynu:t�y\\u000f��g\\t\\\\\\\"��t\\f\\t&�-�\\u0013�Ns�\\b����(�;vNZ\\tċ����M:\\nW�}i�.RǄ��\\u0005p\\u000f�kM�@��L�;NL��iY]\\u0000\\r�\\u0003{xP���H\\u0014Hʤ\\u0002\\u0006��Ri�\\u0019��3L�\\u0010�\\u0003㩫f��I\\bT�I�\\u000f#Rے�N\\u0001FWpP\\u0014M`\\u0005���ʃ=�&\\t\\u001dD�ț����[�\\u0016�BWF\\u0017\\u0014�|y�gu[�:\\u001b�*ۙE�ֵ�/���?3��v��S�\\u00005�\\u0000�*�\\u0014�[�sjϵ�\\u0000f\\u0016Y}\\u0004���SI\\t�U���ڴ%�\\u00172�\\u0001�e<M�\\u0015��e&ď\\u001a� ��\\u0015\\\\\\\"⃑\\u001c��zCJ�.XLyRߚ����33%u�I����u��\\u001dP�\\u00167�!�5�'m82�|��'\\u0019���nBnLW����\\\\�\\u0019h\\fh��lN�O\\u0012v�'��\\u0013�����y�ܰ����\\u0015��X�fbGJ����S�>��(�g\\u0001Z�|\\u000b;���\\u0003�>L��gP��K�t\\u0014\\u0018�2����\\u0014G�)�˞6�oqUlH��p��@J�5ֵ�v�]-u\\u0016k* M)a�\\u001b}G��0�`ȋ���\\u0016#C�@�Q8���G��\\r� ���}v�m̙��.C��Xg-beb�\\u0019���J�����F\\u0014\\u0018r�\\u0012��\\u000b�Ȟ�t\\u001a��\\\\��bS�YJ�u�c�*�]�L�w�ª$\\u0016�\\u0018�WMtΥ�p+\\u0006��\\u001d�\\nh̒F\\u000b�z\\r~��%������\\u0000\\u0002�7�2k3��lFI�*��\\n�0�O\\u0010\\rǅ\\u0011ܰ�8�33��=%��kK��o\\u001c�n\\nHR�_{��\\u0000\\n�����1��\\u0016$\\u0012m�KNK�8\\u001eӫ�\\u0015e7V\\u0007PE2�9Y0��*_UŁ\\u0016���J$�8��:+\\u001f�\\u0018!X��V�����\\u0014��PT\\u001d�\\u0014��\\u000fɐG�{k��(��ׇ\\u00063�A�-��=H\\u0014\\f]գ�3�W�p��ϕ���w��\\u0016�B\\u0017���}��\\u000516\\u001a;V2�դ\\u0007k�4���C�\\u001c�7\\u001e�pAЊ'�r�$�M\\u0005��ǉ]���^\\u001a\\\\D�M\\\\\\\"�ʛ���\\\\\\\"�\\u0017mA�ִ\\u0018�{-&�\\u0000�_\\n\\r$(I\\u0003z�e�\\u0011�\\u0001f\\u0016�k&���\\u0005,�ގ����+�nx�\\u0005��.\\u0003Ƌ��Lee`O\\\\\\\"\\u000e�y\\u001ah�sǋ\\u001a\\u0015x�\\fZ����9]�)����+�\\u001aƠ�\\u001b�hD��RM��\\u0013��� \\u0014L1b���`�ԛkz\\u0019������[S�\\u0002���h��b1n@�����x#\\u0012�\\u001cd�;\\u0005$yԒw�QX߀��בK�J�\\u000b\\u0012�5�\\u0014l&\\u001b>\\u0002B�`u��z�aC$A��$�|\\r����N�1(��\\u0013^C��ĨP�/��Sz_!�'\\u001b��I;��*��\\u000b�b�i�����y\\u0011O%\\u0002�bz�\\u0011;��+�q�\\u001c\\u0001f�\\u0000-�>5'���\\u0011���mȹ>5KL�genXУC�4��\\u00175��H$t'�畬|�\\tX\\u000b[΂��Lx!eއY�,\\u0001#S�DH=�*t�d1� �:\\u001b�I���q\\u0010.u��X�\\u0011M\\u0010r�\\t$X[��\\u0001E����#\\b\\u0018\\u000b�s�Z\\u0000ջ|+:�Ɋ�,v��\\n���]@f�2��\\u0019��?�o0���R�\\u0007�߭i�\\u0000&�И͕Վ�e ё���\\u0000��Y���\\u0000��+��\\u0010\\u001256$}��~��\\u0007�����F�j�[� ���4dj7\\b��8�\\u001e�\\u0013���6�^���xQ��V�`\\u000f��h\\u0018{�c��(�Y\\b6n�\\u0016�W~�$�U�P��\\u001e7��\\u001a����`ݻ\\\\>ѐ#\\u0001ccsҒI!Q{�v�g��ŕU�\\u0004\\u0000mm�4��Û�5h�,�T\\u001e�������f�\\u0015M��V6\\u0017����X\\u0003� SS��?/�iX\\f\\b�7�\\u000fp'�}�\\u0000�B�0I�\\t]W�\\u0004�XK3'\\u001b[[��\\u0002�3���Փ��b\\b\\u0016��=\\u0002{B.n`�o��c�C�9��\\u0018QBΜ�\\u000bZ��@�\\u001d����\\u0013�n� �\\u0017:�w�޻|�̑\\u0007�4�u�Ѓ�Cy�֙1=�\\u0013�/���\\u0002\\u0007�X�\\u0000�\\u001a'�o\\u001a�}����а�5�\\u0002{d�Z�\\u0014\\u0001\\u0013\\n\\u0002\\\\\\u0010O\\u0016 k҆ϊ<r���k���Z��\\u00039\\t�7!�׬3&�W\\u001d8q�����5\\u0006P�I����\\u0001��4�n͏\\u0013��#��� b�$��\\u0010�|)���iE�$\\u001f3\\\\�Oڵ��\\\\,��G��U���S�\\u0006ؽ�\\u0012H\\u0015�\\tbX^�\\u0011Aw\\\\hq^?h\\u0015\\u000e\\r�7�|j��Y�� E`\\t7ש�\\u000f��&o\\u0012�\\u0014��_�t�]<�{�7X��VyU\\u000e���I\\u0015���@B\\u001a9\\u0003�Q_�{[���܉F�\\u0002C�\\u0016k\\u0013�mW�(��\\\\\\\"l-mil��J幀\\u000e��J�\\u0005x������ӌ0�A�bBҪkb\\t:�U�0a�\\u0017p\\u00182���\\u001b\\u0017(��\\u001c�`\\u0002\\u0000���2{�ȅ����\\u0016�{�B��K���խY�\\u0001ۗ\\\\\\\"*�/Q�e��3��6M��V'�����i�t���qpd�\\u001fs�^<Ik�X.��=��K���(�GE+f��!n�vo�\\\\��g�xcE{]��ňn�\\nBɏ��\\u000f�H�ʑ&�\\u0014\\u000e*�\\u000b�\\u0003La�hر�_zS�\\u000e\\\\�9D�\\u0016&��oK\\\\\\\"�y��\\f\\t����p����S\\u001c\\u001eՉ9�J[���6��T��L �H�<\\\\^���X��ɹZ�G��S9:���\\u0002UK�%��[�v�\\\\v�E��˕����\\u001a\\u000e\\\\dD$\\\\\\u001d7��Y\\u001d�\\u001eI#eV!\\u0003^�u���c��\\u0014ѕ\\nCibm��g:\\u00070(Rnt��\\u0006\\u0006Ec��\\u0002lhS1`@S[��UQ�\\u0004\\u00006��=�|v\\u0017�\\u0019!��B�k��A)u%��������f7ֆ�\\u001d��d\\u0000MȪS9.�8��5w℮�V\\u001f����E\\u0003�er8�m*ߦO\\u0013Td;����@�7\\\\\\\"̠�\\r����\\u0001��c���S��pw��\\u0004��O\\u0015\\nMƶ����s�lP\\u001d�ʐ3\\u001cgiI\\r�·x���P����7�ZB�ƌ�Х\\u0017\\u00164N�H7\\\\\\\"�Z\\u0012�L�E\\n\\u0000 h)Y8�6Oa�h��Y\\u0019\\u0013&B\\u0016UEe�\\u0011bI\\u0007j��v�l\\u0007�\\r�\\u001b\\u0000}D�k����rc��R�T\\bx�E��\\u001ć�\\u0003D�W�RoMLgQ�\\u0014�׸r6��.\\u0005���.ςbFebYA'�܋�,0�X\\u0016\\u0016\\u0006�i����\\u0015\\u0004Ie\\u0000\\rOAjNK������*q%\\u0013��c���S7\\u000f\\u0012,f�%�\\u000bXܝ�`��V��࠽�5��՜��M\\u0019��\\nu6�J�\\u0011�Hz��W����C\\u0005�ɖ)x��`u\\u0014���q��%y\\u0004\\u0003���|�\\t�Vg�X�-kQݚt�H�\\u0019\\u0016Ab\\u0005��Od�|u�kQ�nŇ\\u001d�4*�k\\u001b���iW\\u0001�\\u001aS,��\\u0016L\\u000f\\u0012���k\\u0013khoK\\u0003�S�ˋ��\\u0016�\\u0003<.ُ����~LN�[Co\\n\\u0003�E\\u001e\\f��\\\\�\\u0000ImN��TN7v|xD\\\\\\\"0�o�$noBw\\u0019�=ð\\u0011�\\u0000��k�\\u0000:i_��\\u0007��\\u001e)yȫpA66�?���ƕō��$�{kkQ���$\\\\\\\",h�\\u0001�ro���\\u0018}�\\u001eidGRx��\\u0001#RO�c�h�\\u000b\\u0003m��Dbw�Ƒ�cW.\\u0000�;Z�\\u0000Ϊ�:�u#�YvM�܄���|e��2��T�N����ǵ���׹��\\\\ؒ6�S�p�$�zV\\u0007��\\u0016�>�QY��٩�\\u0015=�=�\\u000b;\\u001aIr\\u0015����1Qk\\u0003��H��i�c�@�}�o���\\u0002�\\u001f\\nd��vN�\\f�h�]\\\\�؟���\\u001a\\u001b/��ō,��\\u0019T�<�֩����%�H�\\t�\\u00041�~v�\\u0003��M4/\\u0013F�8� ��NF\\r\\u001e8u/�T�u\\u0017��q0��Bd\\u0004�D\\rm�\\u0000\\u0018�qDC��\\u0010��I��Z\\u001c�\\u0003\\u00012��s,q�)�1'}��^�k�e�3�VuR�h|�e\\u0016p�uil����Φռٱ���yH��\\u0014�m\\rK�ť�2ү\\u0016٦v\\u000fn�P�\\u001b���l\\u0007�\\u000b\\u000fmIbY\\f�\\u0016\\u0017�\\u0002���R�\\r\\u0012�lE�8��\\\\\\\"��\\n�Z�������\\\\�h�?\\u0007�b�%�K1G�\\b<t�\\u000f���n6<�,|��b�7�moƫ��N0�\\b��nW-n�x\\u001f\\n�3��S��0��ak�����\\\\�(<8��,E�F�$\\nq�\\u0000\\u0003ۯ��\\u0000��\\u0000\\nC�ƺ�\\u000b\\u0002\\t���2?�\\u00017�\\u000f�_�J,<\\u001c�FL��$in(�\\u000b���\\u0018�\\u0019\\\\\\\"\\f��\\r�\\t����\\u0016v-��m��\\u001cA[{��S\\\\\\\"z\\u001ee���]-�\\u00105�z\\u001f\\u0007*l��`��$`�accD�\\u0012�\\u0019��� �yVx�i��\\u001c�Ś6\\f\\u0001�ڞAD\\u001da����e�W�\\u0000ͮp�\\u0012<\\r8�\\u0000�6O��kRbnI�֘84�\\u0011�ϵ�y1�Xٔ\\u001b�HֆG(n\\u0005�U�!���\\u0000Դ�\\u0000�\\u0007�}��K�\\f�+\\u0017�\\u00031�F�^�������\\u0012\\u0006TP�G+�B潃�\\u0004�A\\u001c\\\\\\\"\\u0005a\\u001a�\\u0004���,��Y�y�(/a�_@��C\\u001b�>4\\u0000�Bu6:�\\u001aG���\\nm�\\f��7\\u0011����s\\ra��X�*�\\u000e8�7\\u0004U-2C�Ɔ�\\u000f;\\u0005\\u00175�W(X\\u000055�NR��T���\\u0018�G�,�c\\u0014��C[AZ�\\u00120�Z�&�M\\b|��\\b����\\u0002}^#�X'i�pO7\\u001a���\\u0002G�];�\\n�=��\\u0001��B�/��ԑ��I�\\\\�-q���@��\\u001f&!x��u\\u0017�31�)BO\\\\\\\"A��6hi\\u001dʟU��j�&c2\\u0005]-�խT�h�\\u0019\\u0016\\u0016�z�6��\\u001dչ\\u0016\\u0007}+N-N�N\\u0005_Q���b����w\\u001fʼ�\\u0003\\u0015�\\u0016\\fN��΢�,`�\\u001eZ\\u0001ұN䈡x\\u0013k�:ʜ��v㈂큏�0P�\\u0000X^�\\\\\\b\\f�Fyqby\\u000b�\\u000bԏ�\\\\\\\"�1��kX����4��\\u001cvd$��7\\u0016�U��P\\u001aݫ\\u0004#0V�\\u0004�G¹y2eWe[X\\u001bmNۼ��G�����iKb��X��{Q�\\u001b���\\n�\\u0010y\\r��Ҏ��Ǟq\\u001b\\\\�Rt>\\u0014�E�\\u0002) \\u000f\\u001a#\\u000f!�d�\\u0016͡[\\u001d7�،Ϡ�3��C\\u0003�`�[[�N�\\nU��\\t\\u0005M��}�\\u0017?ri�h�\\u0001����ކ�C*�`>T��m�{V&f\\u0012�7.l�=&��ڍ��\\u001d��]\\u00189UE`9u%�O�/��\\f<EǑ\\u001c�bn����֧�\\u0019�c&4\\\\� V\\u0012i�'N'ΰ���[���q�㋘�9*�97���\\u0003\\u0013\\b�\\u0002���\\u0014\\u0012����C@�\\u0000�.��k\\u000e�\\u00153��Fl\\u001e�Ĉ���[��7�^�\\u0000�Ƿ��\\u0015\\u001f�OاTw9�&����pS\\u0017���\\u0002���\\u001b���\\u001bR���\\u0000��R\\u0000\\b?կKѱw\\u0019�F�x���]M�h\\u001e�\\u001b�\\u0006Wv\\b��4��5ҦImANɐ���1�Q�I\\u000bpt\\u001f\\u001a��j��>������1�q߷�\\f�p저�i�Μ\\u001e��A\\u001c\\u0013_��l\\n\\u0000�C�o\\u0011�f�\\u0003aW��\\u0010�\\u001a\\u000bU\\t��\\ng#n��LH�l�a{��EF#{1\\u0003J�_��kSo����\\\\�\\u0012�'�e\\u0000��\\\\\\u0003�*oO\\u001b��c��_k:Ү�����\\u000b�`γ\\u0017�t�H��oJ\\u001b\\u000e�����ۧ�<{�u�y\\u001eZ܊�\\u001f��c��H��v��\\u000e�nz�}�.N�\\\\\\\"�0\\bPq\\u001c/�O[��=�P\\u0002��Z��zyUѥu%u\\u0003z���osW�\\fd�o}�\\u0019\\u001c�ɦp�E�Hزݷ�Q�ù~D_[Z�Dල��z��MP;�m��]�żj( q��\\u0000{R�J\\u0000��(�7\\u0000��W��\\u000eJW�\\u0011��\\u0002���5�>�]���˃�{bed�2�\\u0010x�\\u0011�\\u001d-\\\\��@�\\u0000��\\u0000��\\u0000�t���I���\\u00128\\u0016ERHfb\\u000e��\\u001eU.FW�\\u0007o���qō˃���<��G������\\u0013�.�5�\\t�{�r~�:L�\\\\\\\"(�8��Ro�Ƅ���RUԡ\\f\\u0001�JQi\\u001e �?�/���F�\\b�,Tor-\\n/�z�$�M.�yr�{��6�\\u000b�ņYdW\\u0006�\\u0001\\u0002�4G�v1x��\\u0003��7�N�\\fY�D��\\u0001.\\u00007�Gs��7\\u0015�0kk��5nZ���:��\\u0000�?��\\u0000W�R�{|\\u000f\\u0012�\\u0016�\\u00176#�V��!��\\n}����p�P�~\\\\\\\"׽Z%��Sc�s2)<@\\u0004_·�\\u00064��N����{�\\u0019\\u0002��\\u000b_±���\\u0014�j�3�\\n\\u0001RyL��E�\\u0000�E�e�I\\u0007�ڰ\\u0018�\\u001c?\\\\\\\"m�mESS9\\u001d�q\\u0007I�{Wn���>{1a)PL�E�[i:]��\\u0006\\u000e�4\\t�8�\\u0010�s%�A�Z�\\u000f*\\u0018�1��܋\\u0005�#[kYwI�kD9�X������[Є��(�˞I��-k\\u0012t��W��TLDI=�ě\\u0011o�[��\\u00005!�6C�u\\u0000\\u0003N�>\\u001c\\u0019������WCm\\u0005'l^D�{��L0sf���@�.Z����!�\\u000b�X\\u0010∽�G2C\\\\�aA4h\\u0014�{�J�+�͖\\u0010H�\\u0004d���E���%ŭRեF���R�v~Ӊ��'���;\\u0000U��kt�tϷ��p1���8�[�$o�s���z��Y\\t\\u0014\\u0012�������r)|\\b\\u001ehѾ�e\\u0007�Mo�{�w\\t�VA\\u0019U�`oԞ�\\u001a\\u001a7�\\\\\\\"��H6�\\u001a3\\u001e��\\u001e�j����\\u0013���\\u0003�4{�@���\\u001f��5\\u001dj�yOԾ�W\\u001c`��(��\\u0002e�(1g��#Y��mbw��mk~ߒ0���*\\\\D�*\\r����\\u001e�{�NO�~�\\u001e<�'�\\u001d\\u0011�I{��H��ˬ(E�v֟M��\\t!�1�າ��i�[¹՗��z��n<\\u0004C�\\u001b��$��|\\r\\u000f��\\u0019\\u0002�����\\u0010�,iĩ&��[���$�C�Q������\\u000ed \\u0013`H��ěX\\r��ք\\u0016޼\\u0010[P�\\b�E<�Ĕ�C�qD\\u000eGj\\f`�7�\\u0007�h��\\b-jI=��P\\u0001\\u001a�ӥx��A�PiM�4�\\u0015�Um��\\u0000e\\u0011&,*�V���ֆ�N\\u000e\\u001f´l�A\\u001674)���\\u001d@\\u0006�Z�&4S\\u0007�\\t*l-Y��[j��I\\u0007.\\u0016�\\u001b��t����\\u001fdG�$�@%E\\u0000؆$_����@�H^��M\\u000f��K��\\u000f\\u001b�|j͞�x\\u0001pF�5pο���z�����%��}�:��\\u001d�#\\n\\t��9ȁ��as���p^|�n|bp�9t�nm�Ac~���Ǐ\\u001d#��J\\u0014\\u0013��\\u001e:ָ߸}��懓���\\u0003`,�z�ni���q�\\\\�g�;n.\\u0017�����.\\\\����\\u001aT�*�7\\u0002�wN�;����PG��<�Z�\\u001f\\n^� ���*�\\n_�N\\u0001=�|~�c�\\nI\\n�ߑ\\u001d(/ӯ�QqM��\\u0012��֮���lS*2��&��\\u0017���o2de�%<A��5\\u0016��B����� u�)rxݔ\\u0010F׽6 ��lq��\\u0007bT\\\\\\u0003j@s�\\u0004�+��wOv&�۷!k�o����ē�k�i)�x:��ٰ3{d9Y\\n�Y.Z�@��@(��\\u000e�3����\\b��\\u000e~��oz_�{�v�\\b�\\u001e\\u0016��{:�\\u0017\\u0007]�^oܬr}� \\u0000{b2�o�\\u0016����-C{�a�x���1Մ��R\\\\�f`\\u000e���h�C��Y��r��3D���H�>�˭\\u0002r��Q��5q�����hՈ7;�YM�\\u001a��\\u0001��ު��EP�\\u0014��Ul�f,T^��Ӌ\\u000e���\\t\\fP�:G�� ��Qrv�eF#��$k�K�ڜL\\u0005��~4Kw\\u0012����\\b��~UJw\\u000b����0�\\u0014�n@'Z��\\u0003^�ш\\u001a�\\u000b�@\\u0003���׫��\\b�5$��P��d��3 �\\u0002�/f��o�b�\\u000b%�� |��r&3����y�\\u0010�#�\\u0006�IZ2?�\\u000e�p|\\u000f�F��%ʨ��\\u001fe\\u0015�\\u0000 ׿\\u000f��(P�[�����rKƊo�qX�2$|���x֍!bM�z��8\\\\\\\"���\\u0006�\\u000b<ܖ�\\u0013�^~�m�|+ob��m�U�1��i𥑸7��\\u0012�܍i�e���y��,\\u0010/\\u0011r7����@�ۭ\\u001d�;��\\u001aC���@:�ֿ��2!�u�XXݾi⌬�\\u0001SȞ�u5���x���g����&7���\\u0000r-{X�k\\nI�/�U\\tɱ \\u000b��\\u0010E�F\\u001c��*�\\u0016��\\u0000\\u0004򙔛ju�2���T�x�\\u0000\\u0013U�2A+�\\u0013F;����\\f<L�H�ȍZF\\u001a�R��\\u0014��[p��)�\\u001a[yS\\t�\\u0012W�{��\\u0000��\\u0012਌H\\t{\\u000b܃�{٦��\\u0019�\\u0017)�\\u0004\\u0013p,E�W�\\u0016Z1��4�AV���\\\\\\\"�\\u001a]A7mH\\u001e&�����\\u0004���J)`\\b\\u00166���\\u001c�ѹT\\u001e\\u0003MiޏAR�R�\\u0000��~�\\u0015\\u0000\\u0001흴�՗�\\u0015\\u0007�&\\u001a0\\u0005K0 �\\u000f���xX��E>X2�b.I\\u001a_ʀ�(�wp\\u0012�\\u000fjH�dpn���R�JvPϥdc���_�'�ߔx\\u001f*���\\u0010{�i[A߻�ţ�-�\\u0015 �\\u0006�\\u0000\\u0001TU\\f��ɸ�\\u00056=+Z�)2jMp%�������^�b���mGʈl\\bc��3�\\u0002���\\u000f�s����a+r\\u000b��mYD�JJ ���?p\\u001b�\\u001b�PG�\\u0017��FB��\\u000f�n\\u0006՞B�ip�����i`\\\\ӷ\\u001c�\\rhyc$���\\u0004�\\u001d)NC�\\u0015'}kt�ɰN^�,\\u0005��S<�92���r8�|\\u000f�G���\\u0016���C�\\u001a�\\u00025\\u0001��F���\\u0017\\u0012\\u0013qkkm�^lRp���׷\\u0001�Q�����\\u0012(�ؓ{\\u001dkğ&(�\\u001c�����;x\\u0012\\t�Qa6��?\\n]���C�\\u0017]>tT�����\\u0017k���R\\b�� ��}$\\u001d�R�5�eN8�?���xU��5�a[a�#��J)<�x�\\u0018�W!�caq��­6N^>1\\u0011��\\u0010zF�z���r�*8z����)��\\u0000��[�&���)�C\\r�˙<ב�b�꿕g+���ǒ�\\u001a��M��]d�8:��L�S\\u00137����\\u000e�tw�(�l\\u001cG\\u0005�j�B\\rZ|X\\u0010\\u000e+��檵h���v�F�J^\\u0005?\\u001a\\u001b��>�΢�$@\\\\\\\"1U\\u001b\\u0001Y��[\\u0019=V��P̤\\u001e�RA�O�B��\\u0018\\u001a�|����\\u000e|dwB]�4$u�c�;^\\u001c2\\\\\\\",v\\u0004\\u0012A$�\\r:�\\t2���쏪���i3+9a�(gX���B�2H7�YwUޜS�gj;&�\\u001avS˸j\\u0007��\\u001fe8�!A���\\u0000i�yW&�y\\u0018򗅸0���5i��pu��rRE�\\u0002\\u0006��j:��^-�T��a����+��\\r<�@�H\\t�(��XH�\\n\\u0016��\\u0011k\\u001e#��&[�Qu���U��0lj����2�@�Q���Rې\\t�\\u0000������Q8/�l:\\u000f\\n�;�ώ���v&�\\u0017ڽ�}�;'68&����\\u0000�aP��Q�F���A��X|6���[_\\ns����yn�\\u0011�cz�0�u\\u0003��\\u0013�5d�\\u001alV�}�bk6b\\u0005t���v����F��X�K\\u0003�k\\u001e��0p�&�\\b.�7#}�ꝑ1\\u0002\\u0006c�S�~\\u0014V\\u0012\\u0019\\u0003\\u0000t\\u0007z�(1�4e\\u0004;��x\\u0012\\u0005u��w�Gq\\u001cl��l��J��q�1e/-F��\\u0015#��\\u0003�*�ʟ\\u001f:xc>��eBÉ�\\u001d���YNA$�\\u0000[M�z�`�\\u0017\\u0016Ҩ4�ƙC��&L0��]���[X�)ov�\\u001b�2�\\nH<��𢯋Ț9�վUY�#!EG�\\u0011Emy\\u0010/��-Α㝢S���Z�0x@�\\u000fp\\u001dlGO\\u001a�$Q�шY\\u0014�\\u001a�\\u0001;��0Q%v\\f�A���0f�B��\\u0014�\\u0002��-�-���ᆨ\\u000b��\\u0005��\\u000b\\n��W6����\\b:d�\\u0012n\\u0014��\\u0015�<�υ�(�+ܕ��\\u0019��æ��M�\\fY\\u0012�@\\bf[��`iD�\\n`�I��\\u0014�TQ��ʆ���ҫ4�r\\u001a�܋Q]�=�c\\\\\\\"�0#S���}v�JȬeV'b/b\\u0001Ks�YU\\n�6&�2��>��(�Ҥ�r�\\u001b޴��K�\\u0012s\\\\\\\"�����?��[���v\\u000b)��ά@7#KV���U\\u0014\\u001e%I:�\\u0016���-�\\u0016�\\rq�\\u0018\\u0013�\\\\\\\"�ʑ#��^�iZ�r�\\u0019�6`Pzu�\\r�,��7#�k��.Ӭ��O!Ҳ�`�SY�gQ���p\\u0000�ڬ�.o{�o��f~&o���\\u0007Ԅq�`���W\\r�\\u001d��X\\u0000\\u0001�=c\\u001f|�\\u0005�?Y%���\\u001f鬥2�yZW.�1#V=v�z�\\u0015��hU_%(\\u000b��\\u0003F��:�\\u0012�4Q\\u0019\\u0015�zM��]$ݶ)\\u0014<��\\u0006��i\\u001e_���\\u0005�\\u0000mM�:�C�K��\\u0016����k�]<���K\\u000fQU\\u001fu/�x��/\\\\\\\"�\\u0018!@\\\\\\\"�u��8�!Q�\\u0000\\u0015P\\t�M�\\r4�'�0�4��\\u0000�?��C~�b�)ac�\\u000b}��\\u001c�Ь,ȬnF���\\u0006gt̞����\\u0018�\\u0010\\u0006�N�FE&K\\u0013�-��\\\\\\\"���\\u0016�&�6j�\\rRh=�\\u0000\\u001b���Vs,q�$Q��҆�c\\u000e\\f8��֭�n�O���O#:!#� XxS_�ƚ�a:�ѹ!�#��\\u0011��\\\\\\\"�3!\\u0004Z��\\u0012)���k���CCfcE\\f��\\b\\u0004\\\\�o��meD��,⼞�h����}+�R��\\u0007&N�~\\u0002����\\u0001D�\\u0000Ӧ՛�;\\u0016f%���λ���!��\\u001a����\\u001fƇ�\\u0007�0���.>t�c�2�e�w\\\\\\\"�v��۲\\u0011�t`񽔫Z�\\u0003]N��Yi��\\u0017���+��@b\\u00073ֻN톘�\\u0013\\u0014��,\\u001b�\\u0007`\\u000f�&�\\u0003\\u0016Fid�3�����#hðL#Ɛ���ӯJ;6U�\\u001fAmEx�xЯ\\u0018�\\u0005����pR\\bk�s�΅t�H+i�\\u0003\\u0017�ތ��f�w����j�\\r*���hGZ���\\b�n2��?��\\u001a�e,�O�\\u001a�װ��V<��'�ԏ�_\\u0006��d�q���*\\u001b�\\t{u�]�\\u001a9�%\\u0004��\\u0017> R��,HJ�\\u001a\\u001b�\\t5*˗\\u001d��ę^�\\u001a�\\u0019\\u0002\\\\�k���X�W�\\u0015���WN)C�LiF��ܬ����7J\\u001a\\\\�\\u0012\\b���~4�\\u001b\\u000f\\u001aLui\\u0001�o}mօ���I�E�\\u0000E�ֳ�hh�]$F<kH�c�4;@��$m\\t\\\\\\\"¨%�\\r\\u0018�O�ȞV\\u0001p\\u001bE\\u000f���K{t�΀�\\r�u���<�Q8g\\u0003P\\u000bZď*\\u0001{^\\u00042�\\\\\\\"q1�\\nI;|�nY5�x�\\u0017\\u0014��H؍���Ʈ@6\\u001axP` k�?mi\\u0011�4q�av\\nlu���\\u000eT�\\\\H\\u0012YV���\\u0015�X\\u0016����\\r\\u0014;r�XK.��C�R�dv�vb\\t��W$�\\u000e\\r$_C|\\r'2}��\\u001e\\u001f{��m,,\\u000f�R>߈�\\\\\\\"qщ��\\u0000��dR�\\u0005\\\\{\\u0015\\u0019t�)���v5�,���\\u0006�^�|��\\u0002\\u0015PW���V\\u0018x��l���\\u0010w��S\\u001bC\\u0004Ɗ6�@�Hu:\\u0001G\\u0019�¹9��#��I��5�n�G�9�3[[^���J� ���\\u001a\\u000e#�=ϊ���V�yR�.��\\t�\\u0018\\u0016\\u0016\\u0003a�j�\\\\\\\"Ey\\u000bK!i\\b��ڗ\\u00167d��\\u0014�h��W��ʴ3E\\\\\\\"7\\u0015\\u0003C�W6��9��\\\\)6�ja�+I��H�c{�a����s\\b��D?\\\\\\\"������\\u0015\\u0007�����ƃ��\\u0019s���<x��]���\\u0019\\u0014���X\\u0013��ͯO:,�\\n�N�m4d\\r��5\\\\\\u0018��bk�\\u0006�\\u001f#L����02�r4\\u0017o�!�F\\u0011�\\u001e\\fB��JCgP�qɏ#�I\\u0000�l<+�f���1sr�\\u001f��c�\\u0000�B+\\f�R\\u0018��mF�uQ(S��h �r#�5\\u0015\\u001c��J;\\u0001n.6�\\u0000Ms��yI\\u0017�$\\\\\\\"+�-k��VI\\\\�\\u001d�(��� [��e�^�;*��:XW4��Vy��69\\u001e\\u0005��l\\u0005ԍ�X�H҆.\\u0005�\\u0003J�\\u000e�΋���cFt\\u0000��F��\\u0012IA\\u0002��m����&x�*H�\\u0006�\\u0013aVN�\\u0011%f7k^�m�7�29����1A\\u0000}k�i9a��)�Qə�\\u001bL��\\u0001͍��B�w\\u0004\\\\|�\\u001a\\u0012\\u0017�:�\\u001a\\u0000e\\u001a�U\\u0004\\r�A�Wƃ�2��s��\\u0000*�)3�Q=\\u0012\\u001d-m�\\u0004�Y����ra{i~�)V�Y\\t\\u0018���,W\\u001dN�\\nQ\\u0004��\\u0011|����\\u0007��Km�ޜ�~�ڲ0�ɒ3�\\u0012چ#b@҇d��p��\\u0003CZ�E��5�p��\\n��\\u0001Ԗ\\u0004��\\u001aV\\u0000,/��Br�Ŧe8�\\u0002�|\\u0016�J���l�Bw��Y��z�X������o\\\\\\\"��\\u0016w�02�����\\u0012FB�\\u000bt�E��H�ag��nDhm���m.2D�,\\u0003\\u0012\\u0018^�\\u000b�쫘�\\u0015���H�ܩ���oی��NX_�`\\r?�+\\u0019��H����Z��X���h�Н\\tV��ez��U,�V�K�2H��\\u0000��v�Z�r��RcU\\u0004Xݬ+��37�1���>�ru\\u001a�\\u001f'��\\u0005��k�����\\u0000^�t��O?ȟj��=\\u0003=�\\u0010�k�6���Vyb*J�\\u0011�ֶ�2g�F�\\n��o\\u0001W�8���������\\u00132���\\u001eiWnK���❸\\u001e�\\u001f#K#\\u000b\\u0019�c�����X�q}ɋ\\u0016,F�@��VM�2��Ʉ\\u0018��/�)>P\\u0002y\\u0000�r6�2�O`G���ăv�1��-rX��|Mb��hndڶW�$\\u000f\\u0019*�\\u0007QG\\u0003r�n)��\\u0000��`:#�i\\u0004Ѫ�$JO\\u0014vU\\u0017�\\t\\u0002�y\\u001e�rr�<\\u0010\\u0002�Z�\\f(�8X䢒bO�?�W\\t���(V�H��\\u001f���\\u0011G��%\\u0016P-�\\u0003N�wR�I�\\u0010*���\\u0002�wI\\u0002(Q�\\r���\\u001eT�oFd\\u0006��y]���X�\\u0001E�ً`}_�RJ*��\\u0003�N�\\u001bT�����\\\\\\\"_�M����l)����\\u0001\\u0016ӭT�ն-\\\\\\u000b���3ka�\\u0015�\\\\\\\"\\u0014�\\u000f��\\u000f��D��[�\\\\\\\"+kэ�2�\\u0000���.#q~��'�[S\\u0012\\n�D1����E�\\u00151[h��{�M#,W<\\t�l\\u0001�1�YP�\\u0019�^�TM(\\u0013;�EA�\\u0000�?�N��Er?��\\u001d�{\\u000bh�i�Eg\\u000efqa\\u0018ʘ*�\\u0000s���\\u0010��4��9ݘܚ\\\\�m\\f�.Ք\\u0000v��\\u0010\\u0019�k���q�Z\\u001cA�������?�L�.��kj\\u000e������\\u00053��\\u000b�>��f\\u0011�Oa{;X|����2��A�;�as����\\u0000\\nT�4ғ%���\\u001bjME��({���ܣ)&�B��q�V9a�\\u0017��\\rG�Q��\\u001c`\\u0002�_QҡH\\u001dJ:�6��U\\u001dRD;�6�i#�_Q�u5�\\ff�ڌ0����W\\u001f���\\u0019y���������N�\\u0011fn ib:mғ@�~��s�\\u001c}:�\\u0014���dKi�40\\t�\\u0006Gfge\\fI�\\u0003���'��r\\u0001���I)��8\\b���yэ \\u00152���˙#[,R2��6\\u0004�V�T�\\u0012�caI�L6\\u0010=�6\\u001a��&�ŇJ�2W�\\u001eQ1\\u0004\\u00107��\\u001ae仧2\\bb\\u0006�)�Ș벀{�W\\u0017����U18�-ů��^!츖6d�v`u��vk�\\u0006�{\\u001b����\\u0012�\\\\\\\"\\u001d��\\u0016��<��L�+��Z3*�q���Z�\\u001a�dƎ4r\\u0001#Cj���+�R�\\u0002�)\\u0004�\\u001f�^\\u0006\\\\\\\"PI�Z|ݫ\\nک�]�\\u0018{v!En$1\\u001a��䛑�\\\\\\\"̭�-}fq�i�L1E)T\\u0016\\u0000\\u0003�c\\u000e><����ԐMU�\\tl\\n�)a]�_\\u001d���\\u0000�m�W�c�_²ULu)\\u000b\\u0015�`zэ�&\\u0016r�\\u0006��qs#�\\t��\\u0019\\u0007{�M��0�0Τ��^�ؑY�h����<x�nG{��� 8���|���i'{��u���Ć\\b?�\\n؀\\u0005���\\\\\\\"%.�!:\\u0012\\r\\u0012�U̍gEP=\\\\\\\"ᗠ�� ц�6�k&T�\\u0001+�k�Q�\\\\�rmY�K��Kjx#%\\u0019����Xȱ&�~����͒,��\\u001aFX(b��\\u000e�\\u001asܻ\\u0007j��eM\\fL�G\\u0013:�6:��К\\u001bشs��������G孱e>1��k��>x��n\\u0015��65���=�Fe�0�\\u0016\\u001b\\u0011�J O.E �o]whDn�\\u0001e\\u0004��\\u0000��?n���G2 ��\\u0005���g�ƴ\\u000eȫ�[�+J�&&���\\u0004Wh\\u0004@-�^�xxU;.3Gܠb�Ԇ�x�\\u001a�L��*e<���K�1gd�(0���؎��M��iA��B\\r��\\u0016�W�:�l/��\\u001fv�\\f�i�\\u0013�j�\\u0018��drH\\u0002��\\u001a��$̸(����\\u001a�@$�#Z�� ��2��\\\\\\\"��\\u0016�y\\u000b��/�'dӁ����\\n2�҆\\u0011\\u0012.M��o\\u001cbLt���(c���\\u0013\\u0012�\\u0002�-Ej��)=ػ \\u001fy��_\\u0011�\\u0000���\\u001b�V�\\u0004���\\u0016��V))�@�\\u0014�p\\u00057�\\u0005-M�r\\u0004��\\u0002�\\u0003LwB~:R�!�� U:��FG,��o�\\rmYYnRc��}��}#��)�\\u0012,yn-��\\u000f�z2gP\\u0007��\\r\\u0000�EE�t�}\\\\�\\u0002�{\\u0013j��N�\\u0005Ů*�H\\f��qzp������\\u0017�r�rI�'uK\\u000e,B��h�$:��o��G\\u0013d�p\\u0002���V$���\\u0014w`���\\u0018�.X- ���+���Ƌ���\\u001b\\u0012(�+/&�Ak�bzջ'\\u0010\\u001c][Oc���A\\u001aW���Uԝ��ƈ)�7\\u0002�BA��GQP�ql��\\u0012,|�\\u000b�x��E\\u0016��\\f�\\u001d9\\u001b\\u001a3��E��,��P,\\u0001�����\\\\\\\\G�;:��\\u001e���_k\\r\\u0018�sq�ܤ��l\\u0018pmǚ�y�E���\\u001d�J\\u0011�&���zT�� �YH [Klj�\\u001a�D�%����}#�N���Yb\\f/�¸��\\u0000p�_q��n�����+��\\u00199\\u0019�m<�70�='��\\u0000�\\u0000\\u001a��\\u000f\\\\\\\"|��4��5\\u0015��~?�:�����*��O+��K���\\n ��G�(�KQz\\u0012o^�֣�Wb?m��?�o?Y�g/\\u001e(s&�1�r2��6\\u0007J�d�uhl�\\u0014mDv�?�ca���5�efeG��\\u001b����\\u000fr�3,\\u001e�\\u0011�I\\u0002ۚ���-�m����1]>��?k{�����O�\\\\�\\u000eM�����^c��$U�#��\\u001e�m�\\u0012�A�@Dad\\u0007�\\u001d(�\\n1\\u0015��B�O*�XHд��\\u0015$\\u001fWK\\n�\\f\\u0011dLb/!EBx�#b\\u0005\\u001d�Kh\\u0015\\u001f\\u0016�\\t�\\\\�\\u000e�>]�B�4�?����4��\\u0012\\\\\\\"�\\u0012��\\u0014����\\\\�3I2�d\\u000e�\\u0002�;8\\u0017�~�]N.&\\u001c�{�y���\\u000f��0\\u0012b�\\u0010�`w'ST�Z��\\u0012R2O�_·��OƊ|H�/��@>\\u0015h�*,�ƒi�f\\u0017�\\u0003{ג�\\u0010�m\\u000fZn0p\\u0000\\u0017��\\u0000�h\\u0019�b��4\\u0004�@Q{�\\u0014�\\u000f\\\\\\\"�����t���Z�[��o�FK�\\u001co��w��I\\n\\u0005�Wa���\\u0017��\\ry\\u001f��ƋWF`\\u0006���ί�\\u0006$����S�؝�d�ȓ8S��\\u0000��Դ�M5\\u0007O�\\u001b���d�<�oQ��L;VD�1��#]Z���Z����\\u001c\\\\\\u0002Y��o{�\\u0013Y�`������b>�ߴ\\u0015\\\\�sP�\\tn@\\u001f���\\u000b\\u0004f\\u0019\\fj8��E���[\\u001d�\\t]�$h�\\u000fW\\u0013��޲���2������.7�*�L��2�tp\\u0012ޓ�xW\\u00146�c�ɑ\\ty���p4�dUR8��0*n����\\u0003\\u0012mc֞`G$X��\\u0000`�ܯk�q��=��\\u0013!\\u0017\\u0016څ��\\u0013\\u0012�d$_�Z����Ig!�kr{`\\u000b���O\\u0013;\\u0004h��:��~� �-r\\u0005�d\\u0006�\\u001bn<k>��I\\u0015��j�\\u0010!��h(�P�� v�r:��!��F��e �W��T�w\\u001cp�8�|-V��\\u0017\\u0000jF�\\u0002�� ����K9�K\\u001a\\u001d&(�\\\\x�p�%������\\u000etY\\u0012d3ȁ\\b\\u0000\\u0010\\r���\\u001b+\\u001dqbS*�\\b��F�P��@f��R\\r�\\u001bT@صQ��kh\\u001d��$\\\\\\\"�\\u001a׬�b/��]*�#�f\\u001f:\\u001bz\\u0002KQ��;#(����K\\u000e��~�����M��pO���ƻ\\u001b�J'%s\\u001d��/#b6\\\\\\\"�뵛i�.�-\\u0019h��\\u0014on����\\u0013�$�Z\\u0016G ��¡�\\u0019:\\u001d���ύg��G��\\u001b��\\u0017�H�\\b}\\b������Q��\\u0010�G0\\b\\u0002�6�E{�.<��H>���Q4�B�\\u0001.<m�Pʞ��H��V�r���.�T\\u0006�&�j�'r%�lR\\\\i�K�[\\rM�A��b=:��\\u0000�\\u001b�6)���\\u0014�\\r\\u0001�QY~�\\u001f�\\u0000PT�v.�\\u0012e{Lce�iq�� v���\\u0006���Y��Gr5\\u0004�*��ѳ���iz8�� �ެ!\\u0004�7. ���&��f�&��\\u0017��'�T�X�\\u000f!�):�cV9X�\\u0000��\\u001a\\u0015S�Y%�2+T(M�U��oʴ;Ԧ�M��\\u001bm�{\\u0017ǐ��@�s{���d�����\\r\\b>t�C3�sI���O�S\\u000fjF���%M�����_��\\u000f���r���SI\\b,��\\u000f\\u0002i����^T�/j\\b��Zܷ\\u001d�_�>T�&�%� �r�:Н�U�K��\\u0011�kr�F�\\u001c�y1��\\\\\\\"�r\\u0006��P�O\\u0005/QW�yr��\\r��Z�[\\u0011X����۞KB���f��<��!О�����K8\\u001a[Mi�,�ǌP�\\u0017����9Y�X�V:\\u001ay�^�/\\b�/i���\\u000f\\n*?�yj����ے�\\b\\u001b�$WT�۷�/0��\\u001b�S`�E�B�Fsu$\\u001d:�.\\u0015b�W^\\u0000jkɈi�e�31\\u0007Ț�<���\\u001b_j�^���{\\u0012��z\\u0002w\\u001c?~ ��\\u0016;�a}��\\u000f\\t ��Yó��q��\\u0000:k��H\\u001dSVa��_���\\rh�\\n��fimu��\\u001a�\\u001dgrB\\u00008Z��H�\\u0016�r\\u0002��ȁ\\u001aC3\\u0005�k\\u000f\\u001bQz�\\\\\\u0002y�V>fF\\u000423F����b\\b�/�\\u0005�;��)\\u001a\\u0018��l�{�ż\\u0005m������\\\\\\\"�|im*�\\u000fФ1��IA�\\u0006\\ro\\u001b\\u001b��\\u0000�\\u0000\\u0014��\\u0000���\\u0000Q�T��8A&9P~�\\\\\\\"\\\\��L�\\\\�\\u001b\\u0013���\\u0006Z`�A�.E�\\b��Մ�\\u0016p�5�C�\\u0001\\r!�M\\u0016Ls�`�mˍ�}\\bޙ7�i$��q@�\\nߟ����\\n�~(m�\\f\\r�[\\\\\\\"�)���\\u0014\\u001eB\\t�2\\u0013��\\u0006�U��մ5)յ�3�u�\\u0018���\\u0016ִ\\u0019�4\\u0017V\\u0006���J�F91*M�֓˖48��k!\\u001c�@H�\\u001e��9ɋ!��M��`\\u0006ō�Й�LΞ�\\u0016\\u0001m��հ�c�:\\u0015$���BnD�8��\\u0002�\\bX\\u0013{�L������\\fj�؆�\\r#\\t&��]\\\\s�cB$]Tu\\u001e\\u0014�#�\\u001d�Tb\\u0019�T؏1G>SD�Y\\u0005��\\u001f�2f�dK�\\u0006��Q�\\u0007���8�ڣ}\\n���]�-{��Z\\f��\\u001c��\\b��h%\\u0007��iU����a�4�02�G��r\\u0006���\\u0019\\u0019FE��\\u0018��9�ն��Q�sD���\\b������&\\u0004�%�TP�݉`/`v�go�_\\u0014R�R�$�\\u0019��5%\\t��[1����T~ߘ��BX\\u000b�6�S^ᛍ�c7��\\u0015��\\u001eV����y��\\u001a7\\u0002PIR\\u0000�¦�u�f�����t��E�$���\\u00027��E\\u0016��O\\u00191ƥnV��1�\\b�Aa{\\n;\\u0003/\\u001d!`Ҫ�d؛t\\u0015�R���\\u0014�������7\\u0019V<�cP�\\u0000M���\\u0014�F��,���%$��m�h��\\u0000,S4>Ӈ\\u0000\\u001b�7�a�l��\\u0013�V�N��\\tvs\\u0001������$��8��\\r\\u0000ץ^l�ٗ�D�\\\\\\u001d\\u001b�ޚ�K\\u0019Ę\\u0006_��\\u0014�܏���)1�\\f����}��#\\u0015\\u0004���$��_zj\\u001dm�\\n\\u0007)Y�%\\u0005Ǎ\\u001fB�`��cDy\\u0012N���L��!׉�:�h^�\\u001a\\u001c���Tu��?�Ʒ��\\u001aǶ��k�g\\u001e$����+��8+ a��\\u0003�\\u0000҉�I9\\u0010T\\\\x\\u001a\\u001e^��HJ.�H:�+A2�wۖ�;�Z�ח:\\nիH?�\\u001c��?K�\\u001a�\\u0001��~\\\\\\\"��\\u001f\\u001aӹ���\\u001cM�2F��\\u0000n/��m�<k>ɝ���f�~1���\\u0002ڒ\\u000fJg�;�m����\\u0004��p8�\\u0016\\u001b0;�Zp���o��ݧ�Mps^���YRF\\u0017\\u0016�j���Ox�\\n�s��\\u001fO_�P�\\u0000\\u001d<\\u0004��eI!�T\\u0012�\\u0013v���\\u0012|�\\u0000clus;�O�mx���hNё\\u001a4�i\\u0015.\\u0016ō��\\u001b6N;ˏ�TkHI�\\r\\u0007\\u0016��V��=-�.�.vDk#���\\u0017cg�M�򤭛k�Z�,'\\u000e`���:\\u0006\\u0015�Ȍ�AY�\\u001a\\\\\\\"��FKH\\u0003\\u0005��D��ۗ��xq�+\\\\\\\"�nd�bm�\\u001aU�X�UGMz�A�S�bae�.k�*�RA:���\\u0006��R��\\u000b\\u000f\\u00053�\\u0000lw,H\\u001b&f��X\\u0010�I�\\u001e=Tx�Ӂ=��������ڲ�e�\\f��9N+ņΤ�<��i�Ă\\u0000�/Ik��6�\\r�v�o��\\u0001���\\u0005�8�\\u0001��ݤ�\\u001e5)ȃ'�\\r4�)@���\\u0007k\\u000bP�r\\u001c�U>�:�z�J�\\u0015�Q��q\\u0013�(�(o�����\\u001f��dB�F\\u0017���k\\u001d\\r�*�;opÇ\\u0006(�U�\\u001b����*l\\u0010\\u0017���h\\u001d\\u0014�^W\\rГ�Y>6ND�T4��\\u001c�\\u0001:�/77\\u0015�y����\\u0017\\u0000�v5�\\u0019�˕\\u0003�\\u0000UbX�l\\u0007\\u0012(XR�\\u0013H������\\t�1Ȑ��E�+1�{�\\u0000�]E��Mr��\\u000b�J�:�20\\u0000^�o\\n�{�o\\n\\u0007�\\u0017a����v�Bx�T%�\\u0017Oi/\\u0019(}]WC҅l\\\\��e��`\\\\륯j �c���=\\u001aGa��\\u0013�x����\\u0017��+p\\u000e��\\u0012�|j��A���\\u001e6���\\u0016����*\\u001e71̲��Hkxژf��ˎȍv$XX��-��(�h;�.�ȷ��ǃ' \\u0019\\\\\\\"P@676�z\\bޚv��x d���k�bt��q�%-L�n߬�?����\\u0000Ma\\u001fsQ:ȩ���_��G�!�;s+~V\\u0007K�i\\\\K'�\\u000b\\u0002\\u0005��*�-)C��o?x\\u0013)\\u0006;\\u0012-{��S8�Wv�Ǐ\\\\\\\"8���P�y\\b6>V�g��Wm���j���A,�%�0��[B>\\u0002�+D?���\\u001eݓ���dq\\u0012X7��\\u0016m��g��P+1[\\u001b�O;�n._p3c��2���\\u001a��zV�\\u001bZ�hF����\\u001eP�寠\\u0007A�2��dHA%A\\u001eg�P��\\u0003�E7�f5�\\u0000�\\u001f}Z3쵔qRsN#�I\\\\\\\"g7\\u0004�\\u0002��h�H��{Fn�����֟��i%�OSHI\\u0017�z�\\bE\\u00022rӕ��R�\\r&Q\\\\\\\"I0��Y�\\u000b\\u0001�h�č\\u0012ڃ���Lɒ@�H$^��N�<�\\t?�\\\\\\\"&����\\u0011�3s���Bc��]��M%�&O�����������x��RD[2��74�\\u001e�x�0KC*�͘�F�m�U�g���Xq�\\u00046�Q��\\\\\\\"\\u0019s\\u000b��ӂ�Ck��R2��oMh(\\u0007�'�x��>\\u0016�\\u00179\\u0011�7\\u0015(S\\u0013k�7�ƣp�p�-�\\u0000P\\u000f\\u0010�\\u0005i��f%���k\\u00067 i�i\\u0004��*�b\\u0006���ɂ)ݤn*P\\u0000lN��:\\u001d\\u0017��]*��7\\u0018�:�\\u001a^ٕ\\u0012�p\\u0000$.�\\u001dN��v龢@�8��Œ\\u0010�%�56��\\u001f�\\n�\\u0010� 6�\\u001e��gS��?z�\\u001e\\u0004�cB��A7����922=ɽ\\r�\\u000e*\\t\\u0016�\\\\PY��$��K\\u000e \\\\S�\\u0004b���K\\u000b^��JջD��F`B��Ƽ��f���\\f\\u0005��\\u0014�|�\\u001a2��7\\u001aX�\\\\\\\"�V\\u0010\\u0002�������/p�\\u000e$Hcu�`�N'�o�\\u0013K�S\\u0007��b��\\u0015p�U�U�uӥgd�E�\\u0010����6J�<k\\u001bD�\\u0001[��k{�K��Q]�a>SH�\\u0018\\u0010���P˽]R��[�8�����P�cX�Z��_�\\u0005*R�\\u0000~�dw�_\\u001e5�H�\\u0018��1\\u0007ç®�<���x�V\\r���ֱ�ˎ,h��\\u0015��\\u000b�\\u0010��eviTzT\\u0002O�j��m�ȅ���?p�ʆ\\u0002g�U\\u001b��[�.\\u001d�2@�u�{��>(H�]�\\u0003`A�k\\f����M%\\u0002�qP�t�\\r�7�c��;\\u000b�%w����c\\\\\\\"�r@'Jv��\\u001aJd�\\u001fn/!xߑQ�\\\\\\\"��DɅ$C��{x֝��fOp�}(��#h�V\\u0004�\\u001a\\u0003BJ\\u0001���D�ޟv�2��Ux����ȃf��M%��\\f�E�5i�\\u0010�\\b�P)%\\u0019B�U�4/�y\\u000f�,.�Z=M���>\\u0002��ݘq\\u0002���5�r�9r��`�e\\u0017\\u001bh+\\u0018X+��-CI�`�\\u001a�GG�\\u001e@�8����Oܢy\\u001eB\\b.ň\\u001bjoW��^�z[���\\u0006���tm̆͆s8�\\t\\u0000�*�ݶX�(�ȅ�����4�\\u001cq�6*\\u0000\\\\\\\"��x��܀\\u001cms���/@~L�\\f�Ђ\\u0016�B���F~�$\\u000f��A�G�ʱȞ\\\\\\\"��\\r�N��\\u001a�ʀ�9t�5\\u0016�`��d\\u0002{�3�}%��(�ϋ�\\u0004�c�8>�͸؍|�\\no�3����&~\\f^�X�,<\\u0005_\\u0015e\\u000fFL��{����м�&�\\u001dB�7�A�Ҵ�\\u0013����G�P��/\\u001f$E�><�hF�񥤊��J�,\\u0014�ږ�q�x$.\\u0005Â\\u0019v�5�qO)i!�q��\\u001b�\\n�a�\\u001d��\\fp�w\\nK\\u0013c�aI���$�\\u0018\\u001c�\\u000b�L�.\\r�7�+6�������5n��9��}�<��[R���8�u _JiOɬ����\\u0012s�-��\\u001f�tpC�N\\u001cq�Q�\\u0015\\u00041r\\r��[θ�O�������\\ncD�:�TP�]\\b\\u001f\\n#�܉�A\\u0007q�Q?�8\\b�6S�X�a\\u0006=�\\u0005O\\\\\\\":\\u001d(��2O�d���\\u0015\\u001c���p����\\u0016ޝVRZ\\u0003�I���%\\u0016X�$jmK�F+8\\u0002Cv6\\u001e�֛w ��2�y1[\\u0005\\u001a��;\\u0016>@�\\t��\\f.l|j�J�\\u0018��1!S\\u0019bH&�Ɗ�)c\\\\\\\"E�\\f4\\u0007��\\\\���7��=\\u000f�6Ea\\u001ah~��\\u0005$�ԩ\\u001a\\u000e��C�\\u0004\\u0002\\u000f^���~��c�<~;��yy�\\u0001jF�\\t'£)���]�#��i�Q4�1����6\\u0005��\\\\x�%�\\\\\\u001dF�������0�\\u000bj\\u0005\\u000b:�Y�@.iW_m�k�\\u000b\\u001cQ�\\u00049<u��(��d{����\\fwU�Z�UB��\\u0012l3� Z�\\u000e�\\u0011a����c{���zaqK�Z\\n�Y>H�pf��μƅ�e�O\\\\\\\"�\\u001b\\u001d*�\\u0016�Z6\\nI���O;��6\\f���/&�[�W�\\u0014*w\\u001e!T.�^��ni`nha\\u001b�iS�\\\\\\\"�f�9y`L\\u0015B�\\u0016�\\r��\\u001d��H�4(�퐮\\u000b�ԎTN.v\\\\\\\"cF�%�T\\u0002,w�)�cʅ�T��Ť[\\u0012m�\\u0001֒�A��Ns�b����f(F�\\u0012�X5��W�wb�\\u0004�\\u0007#В(�ގ%�\\u0014�\\u000fe{�7�<)\\u0006\\u0010+����\\u001b�V�%\\u000e�2x� Ħ�cf�7�{�E��elT\\u000bs�a$�\\u0018�\\u0007\\u001c�zף)E�B՟6օ��\\u0019�,��edX�X�sI#�|�\\f�L�\\u0002�7\\u0013�\\u0002G\\u0012N�u\\u0002����\\u000e\\u001aG,�\\u001dK\\\\X�؞�΁�y��sB`�:��cb-r<mMKp�%�\\u0001b��2�\\u0010\\u0005�Asa[O�sIyX \\u0016,@n�Uq\\u001a\\u0018��r�T\\u0013rN�\\u001ak6f)���\\t*�\\u000eCµ]t�%ي�7s�\\u0000��y��t:\\u0014+~=A��|)�w���ğ\\u0014c\\u00143#GȽ��Z��\\\\�ڄȒq!\\u0011����z��70T����s#�sli\\u0007��\\u001b���\\u0000J'+��t\\u001c\\u001aB��a\\u001a�`M��o\\n7��r�ć#���3��\\u0004\\u001dm\\u0001�L��w���\\u0004S�)0fх�+\\u000b�<���0v��\\b�r���İ�\\u000f���;�R�D�k�\\u0000���7�bI�*$���@\\u001a�k�|Y�\\u0012\\u0017BI�Q\\u000b��\\\\\\u0018�T\\u0012F�[��j�\\u001b��d�R\\u0003w\\u0000�\\u0004�-{oS\\u000b�8�\\u001bF\\u0004�M�&DQ�;��\\u001a��\\u0005���\\n\\u001e\\u0016\\u0003PF���#\\b�\\u0014rn �\\u0007Ss҉��Yݻ��eGUC�r�5�Jq����\\u0010���H\\r�\\r��S;\\\\\\\"&ÝD�I��\\u0001��)m\\u0004$��;�6L/\\u0011\\u001cy\\u0002��6��,o���:\\u0004ʅ��(��@6�bi)����m�\\u001a�'b\\u001f��A<�\\u001c��tk�\\u001b��Cƀ��#�\\u001f/\\u0003�$衕\\u0016�7��\\u000e�\\n\\u0018�6D��\\u00076�\\u000b�k֚w��\\\\��$\\u0012\\t#\\u0011�,<Am5�1f�<��f\\n�Mφ��_\\u0011FL&���\\u000b���\\u000b��6\\u001fm\\u0002��0<�7ںl��91eD�Y�H\\u0000_SHjSoQ�#H{\\u0006fLbh���E�\\u001djO�6\\u0011X��n7\\u0016 �*y�;�\\u001481G,ʮ��M���R���\\u0006FJ<\\u000e\\u001dBX��sKW\\u0010\\u001a\\u000b��6�W�^&W\\u001a�!�>UU 0&�g[\\u001djւaSf�-�\\u001a�<�<�!�g.AbM��L\\f��X����Q���0\\u001b��&Á��\\u0004��2�x��n�\\n7�w<��\\u0017�4�Ă\\u0018�H\\u0006��K\\u001ca��^֭�L\\u001e�g��M�>\\u0014�\\u0006�/R�\\u0016HF%V�k�b;~H�\\u000f�Qr�c�n��H \\u000b\\u001a��1���4��\\u0014���@�[�3���rHB\\t9\\u0000\\u000e���hq\\\\\\\"����5h�Ef$�\\u001bZ��R�\\u001c�5�ܡwx�)�+\\u001eG�\\u0014�,�^E�9򑂮�v6\\u001dh���lVH�Mq��x�L�P;!UY\\u0011���0&��\\u0003H}'�\\u0000���3�r$ە��V]�G�\\u0011I�\\u0014HVF,��Q�#O�w�\\\\\\\"엿�\\u0013�\\u0000��W\\u0005���3:��H��\\u0016$V}W�����4�2��\\r\\u0019�0,I\\u0000\\\\�KV�9�ݲ\\u0006\\u000e2\\u000fy�#�����mJ3b�B�\\u0014��{Q���p;�Y9څU�s��l6�k���&~�\\u0004�\\u0012����95�����\\\\�Ҽ�\\u0012O`�F.@�sz�{�|�Y\\u001d�&\\u0018�\\u0003I$eQx���Er\\u001c��8�\\u0011N��\\u001a��7�A\\u001eB2\\\\\\\"5�ܛ�m��A���;FT~�\\u0007b��M�{WK�{�o���\\fӪH��)�Ǩ�\\nM��x�2�|f\\u0012*Gİ�^�����\\u001fg\\u0016�\\u0019��բ��,n\\u000e��=¯�Z.s*\\u0004�,\\u0000\\u001b�P\\u0010��İ��k[B2�\\u001b\\u001fy�\\u0013Dc�$���|\\u001e��JfH�\\u0006R�K[r\\u000f�)(�ڈ��Q}\\b�d�\\u0006\\u0014��|�}\\u0006]˿��h$�/�8�\\r��|\\u0005+�!g�E\\u0018<�k�+\\u001e�N�틕:��j��9�ʎI��ospzyVm=��]\\u0006�9�^\\\\WӮ�WY�B�@6\\u0003\\n�L�\\u001a6Pڐ@�צhH��\\u0013f�Hi)�\\u0015�f\\u001c\\b\\u001e��W�;(\\\\\\\"�\\u001a͵b|�yV�����H�y\\u0018*����o��lҕ\\u001aju�1�Vef6Q��Qs�\\u0003F�\\u0018\\\\�\\u0016�#y�O\\u0006�\\u0000������9\\u0013{e��\\u0010��=u\\u001b�Q\\u001fs��\\u0010\\u0019��\\u0000w��W1�ig���Yة��\\r)ci\\u001av��DeA�/�:kX�\\u0004�ͣ\\u0000�1��:טC�V\\u0012znt�\\u001d\\u001c�,���\\u0014����$�1��p�{�u���m�Y�Q\\\\\\\"�\\b\\u0000���ʵ�΁�tF�%\\\\\\\"�5H�!\\u0011�.\\u0001\\u0000\\u0003�TgV��h�8$x��#pE�ʛ�Z\\u00073\\u0002x�}�\\u0001au��\\nq���\\u001cn\\u001eP�� \\u001b��\\tݲ!��18p���f�/Be��qP�ڽ&�*U\\bj��.\\u0012�Z��\\u0019D%�\\u0011��i�X��cP�\\r�\\u001a\\u0016o�JQ/��Ȭ���\\u001a�K�J\\u0018�\\u000b��Y질��S\\u000e�\\fy\\u0006a2��m��������f�0B�\\u0004\\u001a+\\u0012);G&�_wM�n?*\\u0013S\\u0002i�n�@���������Z��C�\\u0002\\u0013'%��\\r��ԝ��\\u0004aX5�ΗoO�\\u0017��2�ahZX�qnC���T�T$�\\u001c|rO�%�$\\u0016\\u0000�����\\u001e\\u0014n/�i�\\\\\\\"�\\\\�\\u001c�p�\\u001f��V��r�y!�#&>7>�\\u001eC��M���4��dM\\u0014�#r��;5�I�r��9�,\\tО���{\\u0013\\b�# #���1���9%��\\u0010�~��\\u0000����.��Ž\\u0012\\u000eC�c������\\u0017l�H�bGP�YP\\u0002=k�W��fzv�����%\\u0017\\u001e��j\\b؟:k��ø�A&4�88�\\u0015K\\u001d\\r�<�<���8XW?�x��_�\\\\K}G�i�\\u0004��>\\u00134Y��\\u0018�����\\u0014>Ol�\\u001c�6V�/k\\u0013�^��FX��\\u0007@u�U�^ ic~�nxQ�0\\u0000jk\\u0017v����\\u001c_)��\\u0010g\\u001e�(�H����۴�\\u0000���\\u0000���W��:\\u0018�+Ź!�ŷ\\u001f:{����dD$L�\\u0006ڪ_O���V�`��&z�gd�\\u0000���P6\\u00001ҫ\\u0001\\u0000�@#Ϋ3;H�Hy;��|I75@�m֛��r\\n�X���\\u0013'�\\u0000o�cY%����_��-[E�+�Ȅ\\u000b�5�Jq\\u0002\\u001f\\u001c,RM�O�EsӀ�ȠX\\u0006`\\u0007Ό�Or\\f��j����ʲ�\\u000e|̟h2�\\u001f�\\u0016m���*�\\b׷F�\\u001b�PǗQ~��TQ\\u0003\\u001d�E�^��*�v��݋.G�\\u001f�\\u0018��.I���&~�$�-}6�u���c�6x�c%T\\u0003��-\\u001c�9�\\u0010��R�\\u0000�\\u0013���\\u0015\\\\\\\"�\\u0019R���/\\u0011\\u0001�O�\\u0017�J�Kp��7\\u001f\\f�:8E#�:�s�i����s,J�$��\\r\\u0007\\u0015�\\u001cwlU�32\\u0005 ��\\u0003����\\u0017+?\\u0019$��#ɉ\\u0006��^���.��\\u0001��\\u0016���B�p�P\\u0010װ��E/�'�u\\u0003[W�y�e�2�\\u001c\\u0001�\\u0011m�?�̬�x�Y�\\u000b*�\\nC\\\\_Z�IdN�v�&��\\u0001����큔ز\\u0010�<�cq~�H\\u0001�~\\u000b���h�=\\u0006X���V\\b\\u000e��+lh�\\u0002?�\\u001a\\\\9\\u001a�~�:>lH�+GaeQc�ڷ�\\u000euؖ��7?UeŦ�n�i#�\\\\\\\"�\\u0012\\u0012cN<E�\\u001f\\u001a�x�'��\\u0001\\u0006�\\u001f\\n\\u0014�)7��u�Z���K�(ᦠ�ַK�\\\\�l�J��pG��\\u0019\\u0005��\\\\\\\"ۊa�����2�1\\u0004(�6��\\f��\\u000f5�~J@:\\u0015��j�fg{l�M�XY�����l�4ցTꡁ���\\f\\r�\\u0019x՘��'s\\\\��A�5��v~��p�\\f�$R(tV\\u0006�6��M+�\\u001e\\u000b�^�0p���\\u0012¬\\u0010G�l\\u0005��֡{�\\u001e60����\\u0016�k�kxՊw\\\\<��\\u0013��p\\u00120[����αɏ?6H��Us�(m�\\r5�RI�#m@�0=�\\u001b܏Ɯ<0�o��Ǡ���Y\\u0010!��z,t���Tc�cyE�\\u001f�W)jL1�8��\\u001e&1!b�I��JO���R��\\u00141\\u0000\\r�d{���\\u0000h1�~��^�UD�&�\\u001dܒo��\\r�@\\u0001&��L��\\u0016b�\\u0010��+\\u0019�H��'��ao�Z�{�er�������\\u0001�I��\\\\SdsBdk\\u0016\\u001f����\\\\\\\"��e[ė��<+�\\u0010क़F�ڏQ���\\u0013�wY��L��eEuR��\\u0011q})�KQD�m���\\u0012@С>�n��x���\\u001c1�D\\\\\\\"E@P�(\\u0003��Lܾ�ڧlWx�c�����j[��6S�&\\\\\\\"�8����\\u0015O�/�-�q㹜�Fm�\\u0006��\\u0016c��q~T�c#\\u0005\\u0004���3o�R\\u0001s$��V��+\\u0002�C�k\\u0010V[�}hg�Q�J�T�~U�.Y.�\\u000f\\u0003N\\u0018Ii@\\u0004XZ�a��W�\\u0013��<���J�3#w\\b\\u0014ݴ��\\b��`,\\t�\\\\\\\"\\u001c�.w\\u0002�`��v\\\\��I�d\\b��\\t7��\\u0014��I��C\\u001b4��5����5�dQ,7TPy.�\\u0001փ��Ol�03��C\\u001e:�\\u001d�\\u0015��&�\\u0014f$\\u000b\\u001b\\u001bUm\\u00035`�:\\u000f���?\\u000b�o\\u0012�4�\\n��V\\b���mM�\\u0000�#�v�\\u000f�M�\\u0000��V��R�~ɉ�/m��\\u001eC���\\t:�\\u000b�c@�̑F��Vʢ���Y��L�(L�\\u001b\\b�\\u000b��}v4.gu��}�\\u0011y�\\u0003�{i�4w+[�(���\\u001fSJ�m3�S\\\\\\\"0�\\u0000-��nБɟ\\u001aJ�І����M\\u0005?p�\\u0017���駝y��x䡄ZBl��ƢԺ՗RW%3��\\u001d۪�\\u000e��ca&\\u0004�\\u0014Q��,ʠ\\u0011�\\u0015�S)�3g��vN-��\\u0007{Ҳ�\\u0012<4���V�Y8\\u0015�e���\\u00146cȡ=�A$�գ�\\\\\\\"Z���Uo\\u0016N�\\u0011�_\\r�B\\u000bv�y3�&<���ڊw�\\f\\u000b\\u0003�Ơ�j\\u0000�\\u0018ЈfV��!�uޙ���L\\f~�m���KNJ�bd��\\u0000/o\\n��{j�\\u000b�^�%� �65�%���t�죴C�3�]�\\u001c\\u0012]\\u001e�AD������\\u001c�\\u001e6'�����\\nY8�M�ڽ��x�\\u0011�%%\\u0006��\\u001b_J���Nî!3��\\u0018\\u0010���\\u0004I\\u0015n�\\u0006�Q\\\\��<i��w9�h��\\f�,È�|�!w�\\u001c�\\ru6�Ғ�f���I�\\u00120\\u000el\\t��ttD���I\\u0002�H��\\u001c�nN��a��\\u0011��\\u000f�U$�l'�cő�Ra�B�k��ǅ3nۄ�\\u0019\\u0011��\\u0001\\u0004�\\b>F��'�s,eI#��=H����8\\u0003�jA\\f\\u0019A����0Z\\u0005���,����[�\\u0006���<[�k�QQ��󗌮rc��Px�����int�x9-�+�:�IQ���iU�&J��Fi\\u001ce\\u0001+�`�Rr�ҟm�.K\\u0001a���Ò�5�T�*�XFW��a`����Ƶ�U|�\\u0015�e2( �E�/��:\\u001a�s}�\\u0003%á����Q�^5I�\\nUְ��c�����\\u0000��p�r\\u0015˝A�\\u00120\\u0000|M5��\\u001d�*2��/k\\u001b_�\\u0014\\f�����v��~?1ZZ��\\u0017Z���{�f�3jnu4ӳ�\\u0004�2,���@@`\\u000e��dq<j\\u0011N��h�!��b�ʪ�,N�|�G�\\u001bA?�q���F�5���\\u0012�\\u0003k\\u001f\\n�\\u0003�Ǩ�F��)�\\u0001�%̊�{X\\u0001q�KT��\\\\�2%�\\u0003moL\\u0013\\u0015��ɬ����u��\\\\LI{^<�쾦e\\u0004�OZ�'�K\\u0015�5����ј��?\\u001a\\u0014�\\u0019\\u0002ƚ( \\u001f��i�i<���E��J�\\u000fi\\fjx��__\\n[�#ىbv��ƚf�.t�l�\\u000f \\u001cn=:\\u000f�m\\u000f���aЧ\\u0019\\u0000mX�˥&��{��BT����w2(,H'ƚ��')\\u0012�\\n1F��\\u0003��^���α�@��\\u001b�kP�\\u0014�\\u0001(��\\u001e\\u000bu\\u0017��W���\\f|̈ڪ�/�\\u001e5a�3�\\u00004zi��T�B�4�������\\u0013#\\u000b�����S�c�\\fȕbES\\u001b\\u0012\\u0002�/�xP8��b��J��KX�u;�I_�K7)f_q\\u0007\\u0010@\\u0016��xT���y�\\u0013�|q$V�u�A�mz>LL_m�\\u0000�\\u001f�(��R\\t�̇�4�!��\\u0003B>U\\u0017��\\t\\b��>�N��O\\nh@1�\\u001b���\\u0012�\\t�w\\u0015��d�ֿ}\\u0011\\u0007k���$�����ShZ\\u000b���\\u0011��^��.���T�\\\\\\\"ǯ�\\u001f�/�0�$��\\u000b��k�P��\\t\\\\�if\\u0003R|\\rN��\\u0004��\\t'��\\u000b;\\u0015$u5��cc�<lѩb��E&8��]A��ѫ6R(U�ʢ�X*M�/�\\u001dZ�\\u001abcc�Q�)\\u0001�.\\u0001���AwX�I�\\b�ABH\\u0000\\u000e�T\\u001f범�\\u0019X\\\\��Mv� ���S3Mr���r|j�3\\b�}���\\n.DOm�#c�ʱ�\\nx\\u001d\\u0007����E�\\\\\\\"�S$�\\u0019.\\u000e�n�\\u0014�!A���\\u0019.Z�ڏ�\\u0000���.�\\u001a\\u001f���rw���\\r\\f�\\u0000h����:dƳ*�p�9\\u0000y.��_�8\\u00188��&X1�U���B���Њ��\\u0019\\u001d�rخRF[3\\u0000\\rǇ���\\u0013+�~�Y�y�4|CȒYA\\u0001��E���\\u0004`儒�}mbGSNl<(ܯ�9\\u0018p6L�.\\u0011؞,��@؏:\\u0017��\\u001fe\\r�\\t3\\u0013��;�0�8�=]4�O��\\u0019y\\u0010��$ad\\u001c�7��J��0ß�� H�\\u0006\\u0005I���BjJ��\\u000f���2%rY_qrEuIڡ\\u0018���AX������{\\u0001Q�\\u0003�x�@�i���\\u0015���u\\\\\\\"�,5\\u0007O\\nV��6�������p3b�I�\\t&5$��ʸn�\\u001fv�H�\\\\\\\",�*��\\u0003�\\n�q��Qb\\\\�\\n�*�(l\\u0006��в��26D��IO'cԟ�G],�s$�(�$ެ�XiֽH��\\u001ai^���R�]�Ur�\\u0007���\\u000f\\b\\u0016ڙ�\\u001c>��5�F�\\u001e\\u0014��(�µ唢��\\u0000h4�\\u0000\\n!�K��\\u001c�\\u0006L�\\u0000\\u0000:\\u0001��XT\\u0012n/�k�I���0%�$׃\\u001aeb\\u0015�#ƚ\\\\\\\"�o��F��\\u0010\\b$V�\\u0014|\\u001b�6=(vIі���|�;N\\u0014��\\u001dE+&�h\\u0016\\u0003�\\u0013\\u001a�\\u001a�a�ʩ��\\f�^H��\\u0010.6\\u0014\\u0007�'Q��\\u0000|)�'hϒ\\u0005�<�A0\\u0012X�O��J\\u00167\\b`y�\\\\\\\"J�\\u001a\\u0001poo�\\u0007!��\\b�\\u0014�|,՝��Wh�<�m�o\\u000f:\\u00039_\\u0018�LC\\u0016ۍ&������Κ,Q�\\u001e��t\\u0014�)�Y\\u00160\\b.l\\t���^�aC����N\\u001e<\\u000e�\\u0016�X�\\b\\u0017\\u0003k\\n��\\u0000�*#^>�6���PqG��x�\\n\\u001fտS򬤟2\\u0019�)o'\\u0010/��\\nvN\\u0001?��3q�T�Ѩ��\\r�\\u001a\\u0013��\\u001f\\u000f\\u0010+\\u0011\\n�\\u000fO*\\u0007\\u0010gw)�2�\\u0003\\u000f�\\u0002����\\u0014vWm�\\u0018�<�d�ȣ�\\u0006�&���SU\\u000bQ��A\\rc+0m\\t\\u001aQ�\\u0000��\\u001f}o\\u0007d�LbOuA \\u0012�I\\\\\\\"��Z���/�%�r��[�\\u0000M\\u0007Z��d��k\\\\\\\"�cp\\b����vD�\\b��r\\u000bk{i�\\u0000֥�r�\\u000e\\u0000jQ��|�\\\\\\\"iYЪ��^��xPߦo\\u0011T���%w\\u00120\\u0004�Z�I�\\u0012nni�?��Ʌ2=�Ǻ��y__�Pv\\u0019�I!\\u0012 ��\\u0017�[��Ɨ:�#�&�fLge%XZ�o����\\u0013��\\u0006F �\\u0004\\u0012k�o��L�\\u001c�l\\u001c\\u0012op=6��k�([)��\\\\\\\"������\\u0003Q\\fV\\u001e��t�A\\u001aqH��J\\u0003�\\u0013[�5_�J���.nm�Y�Qڰ�d��z\\u0004g�$K\\u00004�Z\\u0010�GaaOܕ�\\u0012�퐾����S3�M�\\u0013����\\u0002�\\u001b|j��&�&�X���4\\u0011��#�\\u0014\\u0017�Xk��[['�\\u0000P}�U�I�lY��\\u000e��\\u0000t\\u0002�v\\u0000��4�$\\\\\\\"��/��p~�l�S(ʀ�9X�'_�`�S���ǆP8ۑQ`n9u�Ҕ\\\\8X\\u000b����|��T�]@\\u0000�Ԗ�Xs2�@�\\u0002\\b-�ޟ�Ƥ��h\\\\\\\"2\\u0019\\u0015����M���T�\\u001a\\u0016Sbv�.32�\\f5����m�o\\u001a\\f����YJ���\\u0003k����v�$Ɏ���Q�\\\\�?z��H�Ƌ!�)$ߥ��Q\\u000b��?��X��x���� �moI?���\\u001d\\u0017s��\\\\\\tȉ\\u0001\\t�\\n\\u0001�yP�\\u0006/Xc����R�����RL���\\f�ks���\\u001f�q�\\u000f�Nϖ���$�y@\\u0000\\u0000�`>&��U-%�6\\u0003q\\u001a[&m�p���y\\u001d57֋�2d#I\\u0013���\\u0007�&�$�\\u0015�\\u0013���\\u001a�@��d�N@V��:��\\u0015����\\n+�6\\u001e���z\\u0017a҂(��A�\\u001fƵ����w�A�Χ[��$ތm��L�U����*�\\u0017v \\\\�h+<��\\u0015��\\u0018��-���=�x䕟\\u001dlPX���Q\\fRZhg�\\tu*\\n�\\u000fʔ{�����5���+��\\u0013�\\u001a���'�67�\\u001f��\\fRvx�8M�\\u000b4\\u0011�1�$�$�\\u0005\\u0000�Xm<�\\u001e�\\b\\u0000\\\\\\u0000,:\\n\\u001a.�ܖ$T�B*����\\u0001�Jɻ�J;s��Ǔ5�r~\\u0016�J5\\u0006��<̆\\u0018��\\u0012�^ ��Z\\u000b,�@WC~��Vc3\\t\\u001c\\u0001���5�deK\\u001c\\u0016�F\\n��s�J��9�P̱\\u001d�!\\u0015� �A�r���(5\\u001b�Q+�W.6�D\\u0018ln�ʕ��\\u001b1���M-L�5a�c6BD�J�H���\\t�l�\\u001c~������H5.����Z�|eP�o#� ��eP����\\u000b�NF��O���/��\\b�\\u0010\\u001a���\\r,\\u000bYc�}\\\\\\\"�=\\u0005\\u0002(����T21\\u000b*�CЃA��&�u��S��I��m�i�%P1�nH\\u0014��\\u0007(d�/�F�\\u001au��y�\\u001e#\\f(�\\u0002X����\\u001aǸ���\\u0012�\\\\\\\"�\\u0001�[�|kJ8i�M�(\\u0017����h����Zs����{��\\u0011t<���I���\\u0002_\\u001a>.AS}E�Ι�w���FŘ��%��l�\\u001b�J��J�\\n�P\\r\\u001c��H��\\u0012X\\u000b|�=����\\u0000�\\u001f�\\\\\\\\x���+\\u001b�\\u0004m��������u����V�2\\u000f�\\u0010O�2�\\\\\\\"� \\u0006 \\u000f+�<!��\\u0019 3�rh1��4���!�7��E�4*\\u0011\\u0019@]\\u0005�k>�8U\\u001c�о�,���b�T�����\\u0015��^Q���\\u0013}<�+�;��\\u0018\\u001b�bE�V��/�\\u0019�{�i*�\\u001bM�\\\\\\\"�?Q\\u0012��\\u0005�\\u0016\\u0016>�F��c�\\u001e� :j\\u0014x�Fs�!d���M�#K��w�2)B�\\u0003u\\u0000�|j�K�pؘ�?�N��W?�\\u0010{�Q\\u0007�����^���\\u0015�(\\f\\u0001\\u0017�_�Kƣ\\u001a��Lipcy\\\\\\\"GbZ��\\u0013�\\u001a���1L�@,�\\u001cG�\\u0001\\u0004��\\u001d\\u000e<r X�U����u�f^b0�WV-��m�np�,\\u001a�d�Q\\u0011�\\u0015/��E�(\\u001cp\\f񃨸���2]#mɲ�մ�\\u0003��\\u0002� a���Q)(l!�\\u0011��\\u0019\\u001fJ�,+ȡ�ƷE�{\\n\\\\r2\\u0014�dk�m�*�ɐ�鐀4��z\\u0002a~�~샂��<(.�\\u0004p���KX��J�?SȀ���']��d�,�\\u0004�\\u0018\\u0003�\\u001ajt�\\u001e�*E؎퐪�X\\u001b�N�̢X�6�S\\u0000F������L\\u001c�#\\r�(\\f/kxӫId\\u001a�\\u0006���g\\u0006\\u00160�r�v*.M��α��(@\\u0014>�\\u0001���Ǹ!1.A\\u000b\\u001d�\\u0000M�k�Be���ܑ��:���t[*\\u0010�i�5��u�\\u0003}�cj�2�Ψos�6�\\f'�T:�Y-e8C��\\u001e+���~QA�Q\\u001eWA�7O3C\\trm��o����_H?���\\u001ak-\\u0015�\\u0001f��\\u000b\\r\\u0005\\u0017�V7�a*�^\\u0007F\\u0017\\u0017��B6D��z��\\u0013�\\f���u\\u0012=�\\\\\\\\z��)j��\\u001f>6\\u0013�\\u000b��f� G\\u0010.\\u000b�E8����\\f�bB\\bV �_\\u000f� ^���b\\u0002�\\n�!�\\r\\b*n\\u000f�X��pK\\u001d�w��\\u0004}�\\u0016���i��%�AcTs.�/�\\\\\\\"�HDjX�oFd�{\\u0012���0\\u0000�^��\\u0013\\u0015e!\\u0005��=k�b9Vbre\\u001b򾷵o\\b\\u0006h��\\u0016PGά�\\f�I\\u001e�\\u0006穵\\u001e��1\\\\\\u0015�>Jn7�|�L\\u000f]\\u0006���\\u0001��l(�U΅^#Jg�w\\u0017\\u0017/\\u0010��\\u001cO¦\\u001f���\\u001bI\\u0004�pF��$\\u001b�\\u000f��\\u001a��Rij�\\r`�T\\u0016�2��\\u0019�s�9\\u000f\\u001f)\\u0014�*K\\u000b)\\u0003�x�\\u0012v�\\u0019��m�Ʃ'\\u0004;Vcɂ*�A`Aaq�M\\u0006>�����\\u0010:�C��F�\\u0015�~��8�G-v�i�4k�ܵ\\u00151<��MVWu�f\\\\\\\"���H;K�d�(�@$�RE�=���͕�p-qkU$C�E��1-��m�I\\u0018q<w���\\bM�\\u0017�;������i�U��g\\t�s���Z��;~\\u0013���\\u0002\\u0016dRI\\u001b�(\\u0018ld�\\nH'�\\t\\u00147\\u0012\\u0018������q�|E�\\u000f������\\b�T��\\u0014 ���!Dh\\u0011\\\\XX\\u001bz\\u0014��\\u001e,w�?��qo�<V��^r�3H99�\\u001b\\r���Q�s\\u0001\\u000f�؀F�\\r\\u000f�ʡ�Τ��;\\r�1��-�A�Q�\\u001a����[�I��\\u0014���S\\u0001�V \\u0010zn*��\\u0019��_!���\\\\jS\\u001a�\\u001e8�2ѩ<V��v&<�c�!��*6ⴊ<��@���\\u0000@�T^\\u0004���0Ð\\\\\\\"�w7\\u0000��\\u000f\\n�e�J�莃\\u000f�`��DSc��!v��Z��_O�{�����n�4����*���,E�A�G�k\\u001et�s�L�\\u0000�\\u001e���\\u0017Я��3��8�G���CnL�@�\\u001fWE\\u001e\\u0015:�O\\u0003i�5\\u0003�h`x\\u0014�\\u0017*,n<+��<3�V�\\t\\\\}���\\u0017\\u0015�\\r�Jm�p���g�\\u0004v�\\\\]�\\u0013ak\\n�>*u\\\\\\\"�\\\\\\\"l\\u001c�`\\u000e$'�A\\u0016\\u0017�W���L\\u0013�'�M�-�7�Xi,A E\\u0005Z�T\\u000b�<)gpņ,`�\\ta����~\\u0000��Vh��\\u0015���4�\\u001e���}�n����W7@�<�#��\\u0000M�uLi������<XcyHu@\\u0018pm\\u000f�BI�{{e�\\\\\\\"�x?\\u000e'�׊����&<\\u0013���X�I\\t{�\\u0000I����$1�bQ\\u0019$߈�4!���\\b�\\u001b\\u0007$\\u0000��'���VY��\\u0012l9����Qb5�v\\t\\u001d�PX��F\\u001e6ړ�M��\\t�f�\\u001fm{&<���X��A\\u0006.;B�тJ�N��v\\u001e��_\\r�lh�\\\\\\\"V\\u001c�C\\u001b\\u0000�4+!�G9�����0�7\\u0017�Z�\\u0013�\\u001eU�pŝ��؞\\u0005�\\u001b\\u0011��<�=�����xѠ*��8��m��iN~\\u0006$Xm,q*��Q~����\\\\!�qq\\\\\\\"٧��eSrF�\\u001a\\u0015Z�\\u001d\\rjQm�9L|Q\\n3B��\\u001a�\\u001e\\u0015b8��\\u001eWe\\u0002�čE\\u001f��\\u00060��`N��kn�U3$T\\u001cSK\\u0001�ڱ��{�)J�~��n4��ޮ�$x\\u001aт���u�$�m��k��Hƍ�ʅ!Tbn7�΁�+�Q:U�+`��T�6D~�&�ki�+~ۛ����LH�C\\u0003a}Ņ\\u000f�Q$�Ċ\\u001a˥��Fd�\\n�\\bE\\u0007��*��I�_v�\\u0018\\u0019]�\\\\\\\"\\b\\u000b\\u0019$B�\\n�/�5���\\\\\\\"����|�F\\u0014�#cҍ\\\\\\\\^\\nLKr\\u0007O*��QII�'rŇ\\u001e(ݏ$EV\\u001cI�\\u000bV���\\u000e9r\\u001dܨ��OI׊��Ir�L�\\u0015G\\u0015\\r�\\u001d*�oz0��X�;�bJ�\\u0018ܷ\\u001e\\\\�$n\\u0007�\\u0007>\\\\2BȤ܍4�[E'�P�`v:֝v|ai�ge�aMĭ���`���\\u000e\\u0014\\u0011I)\\u000e������\\u000f�%Ha�Ԕ\\u0004�?\\n����E����4��A�֢�[R�hk��\\u0019���1Ih�P\\t���\\u001a�\\t�)\\u000b����5���|�gI���T�-msM;�,p�m\\u001a�\\u00025\\u0003΅\\u0012�.�\\u0006\\u00191�������:\\u0003L�x����\\u0000��U@A>\\u0015P\\u0005�����Oy�\\u0013��\\f*��� �\\u000b��p���%�X�:�zø$j���PA����<�\\\\\\\"I'��\\u0019p��V�Poq�j\\u0012f\\u000eO\\u001e����%�ƎA�\\u001eTVS�\\u0016\\u0000����d\\b�a��>?Υa@�O�42���+����\\u0000�A��\\f�\\u0011$q\\\\\\\"����\\u000b\\u001e���X�R�)b\\u0007A�I�d#%�~���m�B��������y��grÛ;\\\\\\\"drcr�IR/�B��s�\\\\\\\"'�x�+�\\u000fQaH}����ߖ�\\u0000*����\\u001d�^ĝ&WsĒ\\u0007Df,ַ�����:9\\u001cIғ��\\u001a\\u00075�.<\\u001e�1Ar\\u0005�ʒs�\\u00010s���һ*�đ�����Q�a{��L�\\u0016VU\\u0016\\u0003a�\\u0015\\u001aV\\u000e��\\u001d��Zid'\\u0002��dȍU@�\\u001a���(x0��^l\\u0014\\u000e$h|E;�M\\u0002�M� GQ�\\u0001c�s�\\u0000��O[}��\\u0005K�#\\u0001�v�\\u0015�v��� �ƆYH�8�\\u001cpcb��a\\\\ڢ�\\u0006�j�\\u0018�*K(&�\\u001cU�9�~�ʏ7?��nQ�j� ���4�#q~~TfpH�p\\u0001A��X@��E:�u\\u0006�E�j��Ih\\b�&)H���5�\\u0001��wl7 �\\r�N'�P\\u0006\\u0018�~\\u0003��#\\u0006:��\\u001a\\b���J�\\u0005�bG���jʖ��C��\\u001b\\u0000�؁L�_�,��\\u0007\\u0001E��Z�vqMƀ��\\u0000ˊIb⺛��\\u000f\\u00066BJ��ʦ��m]<�c�0#[\\u0019\\u0010\\u001d:\\u0013F\\u001c\\u001c+\\u001f�'�J�]��F�uk\\u0007;~��\\u0000��l\\u00180��I\\bt[0�OS�+�2N�8Y\\u001bBz��c�_�����.T+,��y5�`\\u0007���Z\\u0013�Mߤ�n��yG�V�Ө���1�D�ϭ�c]vgn��2\\u0005�\\u0004Ux�,-pH)m��A�\\\\lx�٣�Q�.�\\u0000w���z\\np�X���Cd�Df;�\\t���\\u0000�ݖ����\\u000f���;WC\\u001e./���S�\\n��8�Ո�@dvS�1#�M�y���\\u0001})��q̒\\u000fm~�4�AX��� \\u0017\\u0006�Y�\\u0005��@J�q� ��Q �\\u001c�,�Ao�\\u001d(K�T\\u000bVf��y m�\\u00122#���{�嘍�&��\\u0005���\\r.M\\u000f��)\\u001dW@�}��_](�rϓ~�~)ۏ��\\u0012X$n6\\u0003A��uh\\\\\\\"tf,\\u0000��S\\u001aby�\\r���L{P�#��F�<rL��v �A��F\\u0000�Y\\u0015���~F�bwl(�\\u0007&�׉&��;\\u0007f\\u0011�\\u0018q\\u0003��_*�\\u0013���ā�\\u0012\\u0012�4$�\\u0017$��{�ĩ�JO�9\\u0005؍�$|�@mY~�v����\\u0006)�aP�cM\\u0014]A:P��ieI\\f�\\\\�-z����\\u0004�\\u001b2�xש\\u001f\\u0019c{X)\\u0017�Q\\u0018�4�\\u0017\\u0005���M\\f\\u0000\\u001f���\\u0002�q���d���x���͏3��Y����t��\\u0010��pQ�\\u0004����V�LJx�������z�I2�{��QH��:\\u0011~�N#{R\\u0016��kx���\\u0018��1\\u001a*���\\u0016�C�4�T�����b\\f-t���gȉ����O\\u0003z����'죛\\u0013\\u000b�\\u0011\\u0012\\\\\\u0003�ʹ�.�nV�왪M\\u001d~\\u0017{��bC\\u0014��芬8��\\u0003�\\\\�\\u0000y�<��$�\\u001eQ�P\\t\\u0016�\\u0001��\\u0019\\u0012̳pW XWE�6\\b�rrW)\\u0016p��C��\\u0012|鮵_��\\\\���\\r{ŵ�W_��\\u0007\\n\\u001e��C�\\u001cn\\u001d\\u0000eP\\u000e�]���5ebu#�\\u0012\\u0010/�<�\\u0003���JX�4>b�\\b���(�\\u0018�0٣RK\\u001dH\\u0007�( Y��X �!�r'Ƶ�\\\\\\\"9\\u0019H;^�x֝�\\u00123\\t�B_���xxR�v\\nlM�K\\u00139/.��\\r2/�Q��\\u000b���ă�k�|�\\u0014�9�u\\u0010bc41�F\\u000b\\u0015\\u0004�|)����\\b���F`4$�L;nDx�2�\\u000f\\\\\\\"�\\u0016\\u0017�f�%��(\\n-a�\\u0015��\\u0017�F��%�l��f���\\u0012Mŷ�=ŭ2QV\\\\\\\"@\\u0000騠�\\u001f\\u001a\\\\���ː��E�~�s��;zA\\u001a4�2��8��|)BF�\\u0007�l*�\\u0014f����JkԶ�\\u000b\\u001d�\\u0013ݝ��<����,\\u0007���1#�Y\\u000b��5�\\u0004�^a�@�0xՀ[؎��3�q�\\u0010�\\u0012���x��)��ŋew\\\\9b\\n���F�N�����[\\u0007�\\u0000P�\\u0000��.����\\u001fed�FbV㭅�Z�^�[���@d9��\\u0012�9\\u0004n,|k'��2;\\u0006���\\u001e��䒳\\u0015Saa�\\u0019ٕe�E�\\u0007\\u0001t\\f/֗\\u0005\\u0012Km7_\\u000e\\n�J��\\boc�a\\u0017�Ec� �u������� �@�Z\\r��)�J\\u0013A��\\u0000��\\u001d\\u001fN�Z�;�8�\\u0010�\\u0004\\rE�\\\\\\\"\\u0005�6;S�͋�6\\u0019y�W~d]�̀\\u0014�⤝p'����!�(P.t�k\\u001c8�\\u0016b���\\u000bk],�x�)\\u0010B�LlH��\\f5���\\u001e<X�\\\\\\\"F��\\u0016#�Ը�[{��q\\u0014�Z� ;\\u001a�E�L��2тJ�N��Q��\\u001cO�J�p��5�\\u0014Ƿe�\\u0006;�#qb�\\u001f\\u000byV9B\\u0018r$K\\u0000\\u0001\\u0016\\u001f![����wR��]\\u0001\\u0017�Z�)\\u0005�\\u0007�\\u0019P�!V�k���\\u0015��b�}������\\u000e(qK,j�u�@�i1ږ\\u001eJx����X�~�\\u000f�Ol-��tQ���x��K�[�#llv�@��\\u0001�4\\u0016\\u001a\\n\\u0012H����7y\\u0003\\u0000\\b\\u0003�:����۳f�)���. �[��\\u001f�Z6,)��ƶ�N�oBw$�q$h�+(р�މRT8\\u001fw���r�l�c�Zi8�\\u001c\\u0018l��G�r���O-A��in=g\\u001a����XC\\b��\\u001d(�n\\nPV\\u000fx����\\u0014���0��_����L��69�\\u001f\\u0010�:j\\u0007�\\u0010��vP�}>��21\\u0019[\\u0000/{ږ$�l�?o_bFit\\u0004[Mi��P4ET릖4��\\nO�4)��1�]T�n\\u0018l�=���\\u0004�\\u0014\\u000f\\u0001Mc��1�1)%A&�Tgn��x�/\\u00021\\u00120\\u0004�:\\u0000*kd���V�D\\t*\\u000b���L��[�����\\u0010C\\u0004�\\bcX�+_���if8\\r:+j��)���\\u0000P��#@��\\u0019��ң�\\u0019��M����\\u0000mocҔ��z]w�1��M�\\u0011�yp*(-�\\u0016:\\u001a�ʇ�\\u001b�\\u001b[O*�\\u0004-0\\n�\\u0018��Ϳ\\u001a���̊�\\u0014��֛y���$�&d �\\u000b�O\\u001a�Ybd!t6��!�E:�E�3�<\\u0016'��vH\\\\\\\"D��m]>\\u001f|��\\u0012\\u0018_�8�U��\\u0017\\u0002�4�*�i^���\\u0014�7\\u0000�dg?tœ\\\\\\\"I\\u0017�\\u0017 ��\\u0005\\u0003�R��\\\\\\\"�\\u0010�]�iR�[AW��e�\\u0005�\\u0016q�*琿\\u001e\\t#�\\u001d��H&��\\\\C�_�h,�c���\\u0007#�SEǇ�>��:Q\\\\��Fi�\\u0000�T��\\u001a�h\\u001c�\\u0004�\\u0017��X\\u000b�M����'>ږ\\u00120\\u0017\\u001d\\u0005���\\u001e0�\\t$+ǃ\\u001b[K��������v<������\\u001f\\u0006[�N��\\u0014����>\\u0014�G)gp\\u0002�,:��P���i\\u0001h�U ��\\u000f:Z}�\\u0010\\u0014_�Y۱V\\u00146]W%%�S\\u001d����0gA\\u001ck��,\\u0014\\r�\\u0005�8�azq�11e�/$H�\\u001d��\\u0004�[J�4Em.\\u0010\\f�м�ů���AZb�\\fh�\\u0004�Ǐ\\u0016\\u001a\\u0002u6���pFa�\\u0010G~\\\\��^�ޔ�k\\u001dzUU&��އC��p��x�f.ַ���4�d�./��-��&�����q�'\\u001e\\\\\\\"}�$�_�\\u001eUU^\\u0004�0��m�\\u0012\\u0018�R\\u001d\\u0011U�\\u0016:����<�狲�<H��/�}�V\\u001e�<q\\u0001\\u001a\\u0002,�,\\u0005�t��;��;�|RoQ�Ο\\u0017��&J��\\u001e\\u0001X_�:�?ʴ��\\u0003#\\u0002Xa���`��\\u001b\\u0010z���xfͅd<��U:��&)S����S�8g=Td$�(�N_*�S���\\u0015P)\\u001bvL�l8�\\\\��Y�]\\t�\\u000f*ӹ�\\u001cL�k�rx�-�\\u001b��Ick��T2)\\u0007�enԭ�\\u001f���^ 1���\\u000f�S�\\u0011���\\u0001c�^\\u0017nG^�t~\\rUe�\\u001dF\\u0017��Æ\\u0007Y9ƁZ�-q�\\u0000z��w\\b22�\\u0003\\u0005~6\\u0004k����ꀝ��I\\u0000[ƌL\\u0003��g���\\u0014�ܐ�H���?�\\u0011���%��Fbĭ�$lA�8\\bNt\\u000b �Ò�A\\u001eu�K��\\u0001\\u0002\\u0004���);q�\\u0000��7\\\\\\\")��T�*�)\\u0000\\u000b�J�YC7��O_:��J\\n���>f�d�׎�Y��4��\\\\\\u0001m�l0b���\\u001b�iW�!r$�O���\\u0011˦��p�}�G��4�\\b�PN�8�+:�Zu;�u\\u0007�U\\u000f��)�ݷ\\u0001Q��@B�4�D\\u0012zҵ�\\u0012�3�dCh\\u001aly�Ge[�bF��v�\\u0006,\\u0005%\\u0007�7�Z�mN�m�c�M�'�e\\n��0��|���S��$uS\\rn\\u000f\\u001ef3H\\u000b�(\\u0007q�O\\n�L����a�6\\u0000���w\\f\\f(�\\u0002��i�M�\\u000b�{��l\\\\\\u0000\\u0019D\\u0011��爥K�VV\\u000bi�$�L?��\\u001a\\u000b�A\\u0007Z*\\u0018VN�AsY:*�\\u000blj�\\u0004�)�iCGn [Sn���\\u0010�!�ް嵵�\\\\\\\"�_P\\b�L����\\u0000\\u0004\\r\\b���м�F�ԋ\\n\\u0004#��7�'�\\u001f���l<6ǉ� Y�\\u0012u�ڝ\\\\��W�\\u0004j\\u0001�\\u0000^�f,nh���L�\\u0015\\u0014*�,>B�������\\u000491�b�ݸ����ڇm�V2\\\\\\\"�Fx������C�\\u0004��G\\u001c��w�\\u001b�q���v�Nɗ�����\\u001a��/pK(�\\t�����H�������\\u0000�\\u001a�\\t�'�Ќ�����u߶�0�{Rˑ\\u0002K'7\\u001c�\\\\�Z�7�UR�q��˂Y\\\\\\u0018�\\\\\\\"�76�{-�\\u001eIŕ��㮷���Om9ѧ�!�ب�\\u0017\\f�\\u001d\\u000f�W7��ء\\u000f\\u001e:+sA}v,\\u0001��~z�P�CUhL��\\u0014O\\u001b�AU՛N��i�����\\u0000��\\u0000�5��`�G��������\\u001e�����l���4���A�O������B�]5\\u0016���\\u0016P\\r��p����kZ�mbHZ��4m\\u0019b�v�_Ԍ\\u0006�\\u0010(��\\u0000\\u0016Q��j�\\u001c=\\u0014T�\\u0003uȏ�3����x\\u0004\\u0000<�[�]��D\\u0010��\\u001bс�Y1\\u0015��Π.�ީ�%xaV��%�q�ؙ�2L\\u0015�%lt�U��MlE����\\u001e)\\u0012dg�\\u0015:�M�d\\u001f��\\u001a@�:�c��H���\\u0014���\\u000b��K��ӷ�\\u0002���s��+H�\\u0005�\\u0012F��\\u0011�\\fq\\u0005qcrh���fuQ`\\u000e��U�\\u0014�\\u0004t��MB�|�R \\u0011�{�P��8pXi�ޏ�UXX��\\u001dE/�%����L\\td��jo\\u000ev:B���T\\u0003��EŇ�bBaRJ�M��/p�.T�\\u001f�)�\\r��e��k��̄��\\u0013f\\\\\\\"��@Pٲ,Ȣ=H7=(\\u0007g\\u000b�ދ��%���\\u0006S�#��6�|\\u0015��L�VY�v�U���\\rt���\\u001f��?ʛ�l��[�\\u0000k\\u0016��\\u000f\\n����%p\\u001c�\\u0018�*+j�l�\\u0010M�M�Nn�Fē���\\u0019\\u0015\\u0014�:ޏ�����ۄ�\\u0011�$�Ñ��-X��x1��\\u0002\\b������ճ��H_t\\u0019,����^<���:y�Đ���Z��q�4��\\\\\\\"�G[g]F�x�����b�H���\\u0000�k����Y�U��\\u0018�4�����$�OS\\u001bܝ�5-$�I��d\\u0006I\\u0018\\u0013f\\\\\\\"�x\\u0000(>��\\u0012�Z�no�c�'\\u0014R��m�\\u000b\\u0014��bċ\\u001f�\\u000bTmL��A\\\\\\\"L��X\\u001du��T;^��\\u001fƏXԍ��ݑQn�J�9-�J���z#�����\\u001d�F�4(Jݵ�R��+vY�&�\\u0002�\\u0018��d�\\u0011aFE�\\u0012�\\u001b3zUԝ\\u000e��I{\\\\�.t)#\\u0017F:�7\\u0006���ñ��m�E�X{��c,�}�;�����7�PwL\\u0005�+�\\r��'Mo\\\\��ް�FW\\u0000\\u0012\\u0005�V��� �lm���.KH�� \\u0000H�\\u0015�\\u0012$r�?M�\\u0014\\u0004r1\\u0006�E\\u0019ۂ˟\\u0004R\\u000eH�\\u0003)�*�lC�M�SeBH �\\u0019N�\\u0004\\u001au\\u001f{��{�u�ſ�R~݀�,\\n4'��*�m��\\u0012?�\\u0003\\b{�\\\\\\\"5ؒ./�4ߵ~��XP�\\u001c���B�\\\\X��\\u001f*W�!�lw2Ƭ��\\u0004��XU���\\u0012�H�\\u000e&�\\u0001�+'u��\\u0019P�\\b�\\u001d�\\u0003?.\\u0019`,\\u00128�X��RT�\\u001f\\nY>dl�\\u0015�\\u0003�Z�t���\\u00007\\u001a��T1%��V�r�E��)e\\u000eJ\\u001e���*%�T�p,t��\\u0013\\u0012\\u0012�O\\u0011���/rv�2DC�E�\\u0006ڊJɚ^l��0��,>�6#�\\u0002�\\u0004�\\u0005�e�\\fY�|\\t<y^���J�=�y\\u0004��\\u0006��9�i\\u000e+H\\u0010+ib:\\\\�V���5�wȌ�\\u000e�t��rCF��J�M���&���d*$u���;dx�����\\u0015Z�N�XҜ��&nD�X���\\r���N�j��ߗ�D�8�,��l.l-aS�v�ߍ�\\u0000�\\u001d#\\u000e��\\u0001��[~5���/'/<���}�BZR��\\u0000I�}�a�\\u0003!�@��u`,F�j�/'�����h�<��\\u001c{r�ֶ4R��\\u001a\\u000b�¼\\b��\\u0006�N\\u0010e���\\u0003sj/\\u000b2('21Ӊ\\u0003C��`���\\u0002\\u0005�kܘ�!fU\\u0000����f\\\\�.���r\\u0011\\u001eX|�v��%��\\u0017�\\u0013�c�$\\u001e�\\u001b�i�xW#ɼkZ}vVN\\u0013Q�ʽߒ\\\\D\\f\\u00166�-+m�����\\u001c�0�� �ȷ�A7;�ߨ:\\u0010�y����ꜽK�ìY�{��dK��K�\\n�r<���\\u000b���̮�,�H[on�x�����Ƒ�d.��t�::~��\\u0016lxc*�\\u0001�ȶ���'�\\u001e\\\\\\\"X��\\u0001[�㿭�]�:�ק�N\\b\\u0005�^����\\u001eJ(VbB���N��\\u0016��/(\\u001e\\f��S��\\u0015�Лr\\u0017:�hlܩ2B��!N�i��\\u0019=���rwD\\n��z��F�\\u001b���@\\u000e��Z�s�P��\\n\\u0000��>74a�x�^�A��D��Q�\\u0019lwڎ\\\\��C&�v5y%�BdΨ��,�\\u0001����ːp\\u0019��\\u0003#\\u00128�\\u001b\\n�e͊\\u000b\\u0007����ji�?qcŌ��\\u0013HC\\u0016&�E���J\\u0006\\u0019���fcˏ�@��n��xR�l���\\u0016\\u0014�\\u0004R�\\r�@5�q����\\b���\\b\\u0001��}�S\\u001b\\u000e|\\u0019�1�t��e\\u0007R\\u0005\\u001ck3\\n|�~�����\\u0014�vM���\\u0000���r�8*��\\u00006\\u001d(���\\u0001R\\u00063܃k���T\\u001b\\u000bXu���6��\\u0017a��D�s��!r�P-e�g��\\u001f\\u0016t�%r\\u001d\\u000b��^�ڎ���Ň�,a*�c��\\u000b��b(N�ݤ�2?�c�a\\u001d��\\rp�{��U)|������\\u000b'��4&U��\\u0004\\u000b\\u0011�A�c֌l��\\u0014��\\u001f\\u0016ѮǠ�V\\u0012��\\ns{q\\u001aho�U�g\\u0001[](M����Mɂ�6$u�N;~,yX�3���\\u0004.�|hA\\u0018\\nTX\\u0003�\\u0017����\\bJ\\u0016�&��z��(\\u000fq�\\u0017n�fp�:�|�_1W�X��#�%f*T�B�!Y�g\\u0010}�\\u001d�-���\\u0000\\n�VT���\\u0004q��n����(M�XG�*\\u0012������U=�0\\u001e!���AҴ�)q�$��k\\u001b�B�3K U`\\u000b\\u001d/I�C-��}�՛S[b�%����{�V�\\f�FI*B��\\u001a�<�̅���ֽ��\\u0016�\\b������\\u0018�\\\\\\\"�\\u0018ڬ{\\u0016 \\u0004�m+B�K\\u001a�\\u0018\\u0000�av�7�$�%\\u0019���h}_�B����,�@\\r�\\u001e\\u0002������i�_k�6�V�r�\\u0014P4\\u001a���I\\b�\\u0000�:X�|*��gW�4Lݠ�ð2�7/V��W\\u001d�+:Tǜ�,u�\\u0000:kR|y2Z4\\u0016B[�$��6�a����'�ZX�b\\u0005��W6\\u0007ʒLR�\\u000e*��\\u0019��\\u0017��Eoq�\\u0000�:���َ�\\\\\\\"ن��\\u001f�^6��_@�q������I��JJ\\u0000�Ɏ�\\u0012?�\\u001b�\\u0007QBf��1�v\\u001d?\\n�.R�\\u000e\\u0019u�c~��cɜ\\n�e�bo�U;H:8���&T��\\u0013���\\u0006S�����з�n�T��lE��ZB��li\\u0011؃�����Ab�\\u000f:\\u0005��\\\\\\\"V\\u0001I�M�+\\\\n�\\u001eb���0<t\\u001eT\\u001dǍ\\u0013��\\\\\\\"ƈ�Fk��Xt�HLv��_���;G#�\\u00109\\u000e6\\u0006��[��_����fʍ�g�t\\fE��\\u001d\\u0007�\\u0011��\\u001a72�IW@\\u0005�_{ջ�d��\\u0012�E����\\u000eYl,u��NSm'$�'$\\u0004g�\\u000f��\\u0000:0�<�\\u001cG\\u001e+���\\u000fj�F��\\u0004X��\\u0000c^�\\u0000��N�\\u0003*�[_��JiL�\\u001b���\\u000f��{�}Lu��Ug����\\u001d[Cz+\\u001f�e@���vc`nF��\\u000f*�?�f4&G�\\u0010,l�ҕ[v��$E��^�/�'�(\\u001cd�kiZ��}Zy�\\u0018�Y\\u000b^�-Ln�h��ӿ)PZ1��\\u000b\\u001d+��M\\u001f�H����`��\\u0011k||*\\f\\td$�\\u0005�:�^�˄\\u001e�\\u0012\\u0010sX���\\r-�Zǁ\\u0012M\\u001f\\u00167.���d9v�����\\r,|+H���S�j�\\u001fS�:�j��\\tv�'��v�\\u0000�\\u0000q��_�\\\\ى\\t&�\\u001d���@\\b0����\\u0000��\\u0002�N\\u0005����\\u0000�[��I��Y�\\u0016n<\\u0001􎦙�߻��?�T\\rG��\\u0000�T���vc{�\\u0015\\t��z��i�\\u0004��Y\\u0012{;��\\u0014�*\\\\4־���즒$\\u000e�rd`� Z��X��\\u001d9.��\\u0015�Vr�d\\u0014#��\\f\\u001c\\u0018̚�\\u001a����BP7/ �(���[����l̜l �8D,O\\u001e!��sH=�Y�\\t��x�\\u001c|�b!\\u0017\\u001eV$��ވ`�\\u0019e�fK4n���X)\\n�BE�yP��M8\\u0010�1ef\\u0000�/���'�h�X��\\u001d\\u000f�k��|�Zhl��\\u0005��?*����Cv�B�ɴ\\u0007��Q1�@�?��Q�G�{$\\u0019@�dGyI@n�\\u001b\\u0013��V�\\u001el|r�ĬKsbnm򩴍��問��\\r��GZ+���l��!��BA@\\u0001�x�ܸ�D�(<o�z'�d��;M�JYx���8�BX�?���\\u000f��9bʺ�\\u0001K��EF`��\\u0013ӥ7�#'�ⷷ\\u001aD� ՜�uע�Й��X���1�Z�X�m:��Z�9p\\u0019�`I\\u0011[0r\\r�\\u0005\\u000b�\\u000bJ��#��E�x�����CA�sr�^���ߒ�L?N�X&�u��Y�dˋ��E�\\u0013�I�̺��԰�6�q{\\u0006^Lk::qp@\\u0004�w��\\r��\\u000b!�4���2Gf��\\u0000lu������\\\\\\\"S\\u0011TP�魀��I�l�S\\b�`Z��:�_�+\\\\\\\\Yr�\\u0010Cnd\\u00129\\u001b\\r*���xhF\\u001d�W��nZ��Kr+u\\u001a\\u000b\\u000b\\u0000k\\u0014�<QhV����;Sl�͛�\\u000bO/\\u000e\\tkٮu6�Μ���F�\\u0003�yX�\\bЍA��*`��\\u001a\\u0003҃�=��{֌����qj\\u0012�9\\u0006��g�b�E����;�i\\u001c�\\u000b���#r\\u0005(�\\u0000��\\u001fa�����%���\\u0013�%U�!��\\u0017�I�g��_H�\\u0000[z�P`ddk�o��V뇑\\flO\\u0012\\u0005�؞��A�';ikP�oDKKV�\\u0015\\u000efT�$%X!!E�������[��K���\\u001fn�Y\\u0012�s\\u0011��p�I �\\u001b�|)�o{lIL\\u0012Av+{�����&����)�0�&��7PM���و�M;���^�\\u0010\\u0015��\\u0006���{d�9r&\\u001e<i�P�N�\\u000b/�\\u001a:|>���əbd�͸����au�٬OЊ�-�\\u001ebX&�ibsr��5]��)l\\u0000�U/`�\\u0002~5�^A��x��~�އ���\\u0015�~$\\u001b|(���\\u001c�+�O\\u0017#\\u0006�\\u000b�6���PI��\\u0018�Z��Q\\r�y���\\u0000�X�����u���\\u0002܍����E^[�c�/s�Y�]�+2��\\u0003�{�\\u0004\\u0018����]ny\\u001f?*d\\u0006gh�U�4tg6*�܋�o*]����W+È��~����G��$�\\u0018\\u001dO��\\u001c�;,��4\\u0016\\u001d(H��VY\\u0005�[^�&I�FW]A7�\\nd�.�1,�'A�X\\u0019]X����a�`\\u0007\\u001d��\\\\\\\"nI��c\\u001eۈ;��9���\\u0007�\\u0006�>u�s��X�d���\\u000bf��\\u0007��X���Õ��Ćn)f$[_*m�\\u0007q̈́B�\\u0012\\u0000��\\u001d��\\u001f��N+\\u001e��D\\u0002iE���jb1��\\u0000�6���T\\u001a`�0\\f8��5�\\u0015����=&���|�-W�%�y\\u0016?r�ǝ�l\\u0005�7 \\u001d(�l���M&��EP(<�F�NS\\u001b\\u0017�\\u0005ַ����\\u0014\\u00004�����\\u0005����Ҵ\\u0013�ɦQ�\\u0004\\u0005\\\\��\\u00142d��M-���\\u0000�����a\\t\\u0002���ؒ\\u0014\\\\��(\\b�\\u0000oe�\\\\I\\u001d�����R~�U�?�k���cv��I��C쯻\\u0013\\u0015f\\u0016;\\u001d/�Fǁ�*�DB�e�{}$���-�ȓ�H1gP\\\\\\u000b�MŎ�U\\u001d�����g���\\u001f�ri���\\u0018�^��_�\\u00149�]�~\\u0015��)���\\u0016\\u0004U㍥�c_���ꪾ+�����:��[޼��f⡊\\u0012��&�__�\\u001eݯ)T��e\\u0004�W�\\u0003�\\u0000\\u0018[��o���[ԭ\\u00060�eN���s�\\u001a\\u0001k\\u0013\\n���7�%��ȹ\\u0016\\u0003P~\\u0014Go���a�Bc��T\\u0016b\\u000f��`����6<����q��f6���<���\\u0018Q\\\\\\\"S�^�rĨ��7��vJ(U{\\u0005\\u0016\\u001a\\n'#\\u000b)B�\\u0004�����\\u001c�(y0��\\f�Ǌ�cSZ�������\\u0007#&Ifvp\\u0019���|(�,̌e2�B��\\u001b��\\u000f�\\u000e`\\u0005�r\\\\\\\"��/\\u0005�5�������fR\\u0018�`SC`�mCՒ\\u0007>�k\\u001a��\\r��\\r��+\\u001e���'$?����l2qOH�\\u000b�h+D�9l=��3�����,=��3�Ѭ�M���1n͕\\u0004%�!X��S{\\u000f�<\\u000f����K\\u0007g��\\u001d���$�I��!���՛/*\\u001eL����r$x\\r5�҂�A�����Ӹ�Y!NR\\u001dTt\\u001fʓE*́��7\\u001a�Q�eHxĈ\\t\\u0002���S��v��%fv� �3cc}75�k���<��?�i�\\u0014�LΡ@\\u0002�7�弑�'O\\u001a��)Z\\u0016����\\u0013�\\fǉ\\u0002߭͡v����M\\u001a9�k��>��/�4�?ڙ�� �,�0�;\\u001d|+�_�\\u001d�;��X��}�}�\\u0017*-�4[���\\u0005\\u001b��=�\\\\��c���`�H[���a���q�)�\\u000eK\\u0011e���\\f��2Y�EV����i��\\b�\\u0017���*��=�mG�|����S��B�ˠ\\u0016\\u0007�ZG�����]A��.�\\r؀)����6M\\u0006���Ww�FMY�i\\fm,e�F\\u001a��.��@fcG� D$�/�Ǝ���1�\\u0010��\\u000b���Z\\u000b9�i�*�t\\u001cHSq��k:&��\\u000b���\\u0015:��ȕ%�\\u0004 +Ƞ�\\\\��\\u0006�<��8\\u0019�=�%<.\\u0017�Q����\\\\\\\"��*J\\u0005�l�\\u0001��޺\\u001f�\\u0000\\u001bf��\\u0000���o�Z�\\\\\\\"Y��Ƹys,{A#����I\\u0002�Gi�n��$��(�*\\u0007��\\r�!ɚY�q2�9\\u0003a�ޯۥ=���{�ŬM�\\nQ�\\u0012\\u001b���\\u0017\\u001f�I\\u0019�!l@�K�\\u001a3/��T>�F\\u0014\\\\\\u001b�N�\\u00154\\u0007��7\\u0014\\\\\\b�'\\\\\\\"�\\u0010l,\\u0007J\\u0015\\u0010��Ҋ��P\\b�C\\u0016$�m��J��h�v�r�)Y�*�q`t�\\u001d��q�%bc\\u0017\\u0000����\\u000f\\u0011ʆu��S`S�/�#ʈ�|�q��\\u0019unw�\\u001a�\\u0000ML�\\u0019��\\\\\\\"�Yp�TabK\\u001b�:����a�HJ�\\u0000���$\\u001f�B�oY\\u0019\\u0014\\u0012\\u000e�\\u0004��w}�,��'\\u001d\\u000e���֝�h�\\u001c��\\u0007��Ky�z�v\\u0019���p�����]p��\\u0003ژ�2z�\\u001e\\u001b\\nQV�\\u0001���?\\u000e\\u001c|a,L��\\u0001r\\b��P���/\\u0016#\\u0014Ex\\u0012[Է��G=�b\\\\N=A\\f|��\\u001eE\\u0004�Xy�|}\\u0001(��+*\\\\��kzok\\u000bo[��m�\\u0016j\\u0012�����u��B�M�)�>t�\\u0005q��tU)Ƚ���\\u001a���'=�h\\n�\\u0017���5�߹��� .���Y\\u0005�:\\r�);.Ns\\u0016N*#Ћ��Y\\u001e�/h�e���\\u0001U\\u0000�s��\\u001aj\\u0014�\\u0015�\\u0017꥓&f-+jH�\\u001a\\u000bl+���-��';�(\\u0017q[�\\u001f�?��*rV\\f��H�\\u0012FHdc�ﱵ{����`���7*+�+N��M�L���\\u001f��x�S!���I��Z�KO:+����<�e\\\\\\\"���I��W����#�{�\\u0004\\u0003��r�ܗ;\\u001d��\\u0000�0��ȗ�Z����k��u\\u0007�e��\\u0000�\\u001f�\\u0000�?�e&��ʟ\\u001d%C\\u0018V��\\u0016������z�\\tU�\\u0001L\\bX��zZ¼�\\u0004&p��\\u0015-�[�Rœ�3DB16{�m�Ө� �i�T^\\\\H�--qX�v����\\u0000��5n�!}�m�\\u0014k`H�\\u000f��\\u0017���ti$���b1sf�\\\\\\\"\\u000b\\u001820\\u0000�6��xyS\\\\��\\n4�D�@X�!����[��!z��\\u0007\\u001b$�GX\\\\�'_�ډ^�%�8��E\\u0014݇.w3\\t#\\u001e��k������.Օ��\\u0007���:�.\\u0005�5p��Ob��9�\\tY�pg��\\u0011�����\\u001e߅�&RK#�|@S`5kt�А�w�}��D%�!R/��X��\\u0000*b;�g�\\u001c9��H�\\u0015���Ƽ���5�L���4�89�Fl2͎-�����\\u001am\\u0014�:�'�f\\u00048�\\u001b��\\t��2�UL�m!!x��^&YDU�{\\u000b^�\\u001d��8�Sm�\\u0006��s�:\\u0019�6�W��Pؽ�)�(Y�\\u0000N��\\u0015��%�q�α��\\u0006>\\u001eC����T���Iպ�R�iU�%#,��\\f\\u0011\\u0007Y\\u0019�J�6���lf�\\u0007�|i\\n3\\u000b5�Q��;x��È�a�Ƒ���b\\rƻ*�\\n�v��#\\u001aN\\\\\\\"��`�X�q\\u0002���\\u001aKN6�b��t\\u0006���\\f�Ork�`�ʣ�6�P��|���0t��W�\\t!��q!\\u0005ͯɓ\\f�[�>C���R�!ds�\\\\\\\"�|�\\u001c�P\\\\\\\"r\\u0005-}��ze�ر��%��%\\u0006�m��@(.�\\u001eF\\u000b\\u001c�A*̖\\u0000�\\u0012.A�>\\u0014n_w�dh?N\\u0015��#��\\u0000M��ifp\\u0018�{`,Hή�U'P:kB��d*I �@\\u0014�\\u001el��\\\\\\\"(b�ܶ����l|�\\b���PYX\\u0006:��M��R'lX��������r�\\u0015\\u0015�\\u0015\\u0016\\u001e���%orFp-���\\u001a��?#��mR�\\u0013�1�i%r�}M���p����\\u0004���[\\u0015�`tm�4\\u0013N��H7\\u0006բ0!\\\\m�\\u0018\\u0003��Y���\\u0013'!�\\u0019@\\u000e�\\\\\\\"�^���G�/\\u00101ѽ,@��ڙK��(H\\u000f����0��qw%��D#RM�\\u0000�I���\\u0004c��|��\\u0016e�b-�kӾы<.�0e<p��}(ǐ��CΓb�\\u0015���e��c�z/\\u001f��2\\u0016d��\\n�Ś�U�\\u0007�g�[:�UKؤ��>\\u001c�H�1r�Ib^*\\u0019\\u0012�f[�\\u0005-���̜$�q�m\\u0015F�n:T���A$G\\u001dS���o�>T(L�\\u0001�����\\u001e�*��YW��\\\\�\\u001ai�\\u0015�C\\u0007n�n\\u000b/�\\\\\\\"��]�\\u001c�c4�2\\u0010�l�[@\\u000f_�\\u0002�S�.<},T��Q�}�N�\\u0011�hD���.V�O\\u000f*�ƋQ/!���0�3\\u000e<�K���.8�p�|\\rS�����C'\\u0016Y\\u0019�EF\\u000fċ\\u0010Ǣ�\\n�\\u0013�<��{ˌ\\u0018��|K��r��ջ�y��PG�1�&iT�{���@�G�S�C\\r�s�Y\\u000e�Χ�'��L���s�\\u001aF���,l�\\u0000��*�\\fMƸ%z\\u0019��5a\\u001b\\u0011qmj��M�%j��jV�WM��\\u001aǃ\\u000fpF\\\\��B\\b\\u0000�Ơ�X\\u0010ȅ\\u0003]�\\u0003����b,�y\\u0016���V�<�<ac\\u0001�av�Qj_.~��\\r7i�H��+��հȝ@P�\\r\\u0006���<�\\u0013�T\\u000bk�\\u0018��Z\\u0007��y�%`�L�\\u001aF-�'Z+\\u0012?v?p�\\u0006���\\u0019���L;rJѲ _I�,H��\\u000f�:�9\\u001d����9\\b�\\u0012�\\t;t�\\u000e\\f\\u0002־�\\r�hܨfFGn:�\\u0000\\u0004���ʰp\\u000eD\\u000b)\\u0004��R���K\\u000b!c#%V�M\\u0014XzGJY#���9�6���,\\u0010G\\r��j\\u0014�7\\u001b\\u0019:)Ѝ7�;r,3�B\\u0012�DC!�\\u0003�5�㴃� U�6>��ʛ�4%]�e��;�rD�U7��_\\nA�8\\u001d��ݎ���2K�\\u0001kZ�\\u0018-\\\\\\\"(ܰ\\u0002�$�֩,$�la�eÇ�ǐ�`�b\\u0001��E\\u000f���\\u00049\\u000fˍ��\\u0001k�)��9�����o�\\\\�wX\\\\\\\"c\\u001b\\u0006���D�\\u0012;��\\u0000�02�y�i9�(\\u0002�\\u0005�<��\\u0016�\\u0000�{g�\\u00120Ҁ��O MԨ\\u001d<�k�����b�:;\\u0017\\u0005�\\u0007���S\\f^�.VO#\\u0002�m\\u0018X1��|G�,��!�ɩ���\\u0001�?jv�\\\\W�F���.\\u0019��G]����\\u0000b!\\u0014z �\\u001dw���O6v8�H�<�8�{�M��|�Lݗ:\\b^g��1ɬ�6\\u001f*i���\\u0013��|��\\u000b8�ޱ��F�������\\u0018�oz���9�̈́�aC��^�\\u0016���я��$h\\u001d��t����`�XY�Uus������<�f�\\u0004V�\\\\�Fǟ�ʗ�٥\\u001e��ޮ@2Ubr�ĝ��G?c��E\\u0012�6�궿!B�\\b&���\\u0014r�q$��\\u0015���h=���ӄ�1qÃ\\u000f-�\\u0000CD�!&�\\u001a3�O4�\\u0000�\\u000f�G�$ƚI\\u001aC�\\u0017$�\\t�C\\u0011bG��5:�~\\u000b�²�\\u0011�\\u0001\\u0004�Z�v�~\\r!,J�5�b�����\\u0017\\u0016>t@ț 4j�.574��\\\\\\\"�B���\\u0000m\\b���e��/(�*Mζ�RE,Kɀ��\\u001a_6\\u0012�!��\\u0004��7\\u000fA)�5?pw\\u0019���ܮ�6�e\\u0004�$���$\\u0003j�,e�?o�:���H#�\\\\jT�Ƨ�8�ޖ���_/a�q�T�n�\\\\��_��&FE��$��\\u0016�_\\n�ϕ��cT\\u0001t<�\\u001b׭\\u000eRp��\\\\��\\u0004�\\u001e\\u001et���/�/���\\u0015\\u001a� �433�1��\\\\\\\"�T�\\\\\\\"�@s��\\u0007A^��\\u0019^_C\\u0003k���P�f<�IP8�k��+�\\u0007-�dش��use\\u001a\\u000b\\u000e��uY�2ɫ��m�Y���(�\\u000f��m��/r����U6!͍�W��g�>���y�_�`φr��I\\u001d�}$q����׿��\\u0017\\u0011�ŎFh�Fg�bn�-b\\u0000�{t�õ��K\\fR�.ዑ��YwF�\\u0019�A$�G\\u0017\\u001f�-���w:yV)[���o�Nq�mbu }���\\u001f�{\\u001dA��9{fZF�3Gh�2\\u0001o˯�.�!�\\u0002�\\nv��%�V\\u000f{�]�\\u000f��J\\u0012.E��V��\\n*\\u001e��%'.k���eQ�\\u001dv\\u001eT67d�Ɂ2\\\\\\\"����v���«�\\u0000��3�R*���lt�J���&����1;�I\\u0018#\\r\\u0006��($���ڪ��^U����\\u0002�\\u0005�6�\\u0015�6t�(�5^O�M�֕��\\u0000\\u0011�\\\\�r���,�µ�gd\\r�&����`\\u001efu��\\u0010\\u000f�P�\\u0014(7\\u0002��d'\\u0018�ΪM�pm�љ\\u0018�`{�6\\u0004����Hb�H\\u0005��4|m��\\u000b\\u0014D\\nn��A��:\\u0006^\\u0001�\\u0000���ݨf\\u0016b\\u0007BE\\u001d1Ʌ�H�r.,I�j\\u000eDk�6���-\\u0012R\\n�h���\\r$r\\u0017b\\u0016��x�x.�a�ʹ,��\\\\�\\u0000���\\u0013Br6�\\u0016%*�0�Q�3,\\\\\\\"RM��\\u001b��\\tT��\\u001biL{\\u0010���8�\\u0000\\u001a|�ρĨ.���\\u001c���\\u0011��\\u001f�`�\\u001dB�\\u0010�'@\\u0003\\rMg�-��aoW����\\u0000q\\u001f]h$��_ؖ�\\\\#����M�:Ǖ\\u0011���\\u0000��%N��yg���:�r���A���U�\\u001ev'��Mg��Oh\\u0015;9lm��;���\\u0019egb\\b؋�P\\t\\u0012\\bԂ\\b]GΞb��4W\\u0000�GJ'\\u001e\\u0018�\\\\�)<Τ\\u000f\\u0001V���9l�f�!E�kߧ��iۡ�\\u0016s\\\\\\\"�\\u0016���$�\\u0015B�.�\\u0001�VK{��[�Z&\\\\\\n���)�DY���\\u0003��Qy9P><��\\u0002J�\\u0005\\u0011�@�\\u001bh>��i%>!N�e1\\u0000�\\u001a�I�4I�\\b���\\u0002�!ڻH�\\u001e<x9\\\\\\\"ܢ�Q�#zk\\u0003l_ڻ�\\f8�%�Q������ғ��,�ԓ\\u0019��#\\nXx���Y�[��E�\\u001a�m�.�kH>\\u00156p���s|f\\u0003;k\\b'/)�H���2`�\\u0002��&��Ƽ��\\u0015�E�kq�_Ǝ�j���j�\\u000bt\\u0014딘�^-�X\\u0011T�3?��KW�\\u001f\\u0011N\\u0004��\\\\\\\"�\\u00165\\u0005�@ڷ�ʁ9�{\\\\�h|)uJ�($3>X�)�\\u001e|o{\\u0003�Մ\\u0004G23�T\\u001dI\\u0014Oo>���a�c�\\u001fQ��\\u0000\\u0001F�\\u000fP)r�h�Cܐ@\\u00164����\\u001f�m?2t�\\u0000:ՙE��=(�q\\\\\\\"X��X�K؀\\u0001\\u00164\\u001eC+���N���M(Ȥ#\\u0012D������[/!Z1�\\u001eL\\u000e�-J '\\u0010[\\u0016y�Df]\\u0010:�O@\\rt3w\\u001c6�E\\u0019\\bIV\\u0000_�W8v��UTG�vq�a�@fK�/��\\u0007\\u0016^:���\\u001b����\\t�/�~\\u0015�L\\u0017&���d��y)\\u0003Q�{|���{��+Z��K�-��<a\\u0007��C!N\\r{^���2��\\u0003s�X����G����UuX�6�'\\u0019f�=�@�M0��\\u0000�M�\\u0000�\\u001b�5�G\\u0018\\u001f!�SD\\\\\\\"@\\\\\\u0002\\u0014\\u0002/�Ecd�V2�<�BG�-���i��)��8m���\\u0000\\u0010��U_�&����M\\u000bN�:�e�\\u001a�Y0�7&oO\\u00124�[�\\n�\\u001d\\u0007\\u0016�J�\\u001dG�\\u0016��^�B�T�~J��\\u0013�~!�#�X+]�\\u0004Xqa[��bK�2G(gd!@������#�\\u0000�#o_𦟷?���\\u0000�O�)���J�'.\\u0005<\\u0018~[Q�X�5�G�o�!�7���\\u0014+rI�H�$�9�T\\u0000�������8�\\\\��N�����*��ț�\\u0006��H�x�D0\\u0000��(|S��Ɇ��s��\\u0000�+l\\u001f���_rG\\u001c�|��^��Q�7\\u001e۟��Ԧ�\\r��\\u0006f*c\\u0000�&6:\\u001dX�[�e�\\\\�q0u��k�ˑ�*x$��Fs�H�.��B\\u001c�\\u0018��X�j�{ \\u0007\\u0011����\\u0002�vES�d\\u0004\\u000f�8��z7\\tp|�1g\\f���u\\u0014}��wߺ\\u0011F\\f$(\\u0007�]@�\\u0000#�0������;�YW�ϩ��!�\\u001c�D2���� u\\u0014ϰ�\\u001e\\u0012�2n���a�o�/\\u001bV�aZ̗\\u0010;���<���\\\\\\\"7,ޓ�\\u0016\\u001fƦgt×\\u0016X����\\u000bu#Z�e�\\u0000b_���Ͷ?���F�\\u0005R��>��\\u001a3\\u0013�\\u0000�\\u000f���cJG}���bcI\\u001eC\\u0014f~@qc���*w.煑,M\\u0013�\\b�\\u0018�#RVۏ*2p}��߁��q���z\\u000f\\u0001X_�5���N����d�E$EP��t4\\u001dk��\\u0000ɛ�\\u0000�?�#YVԪ���f��\\b���,81#�G*�{�$�'�$�E�����\\u0006�\\\\��rD��J\\u0010\\u000b؍n|k�ӓ\\u000e.j�1!\\u0002�$\\u000b�E\\u0007R�P��&΃�wl<�\\u0019a��w\\u0003�Ё�\\u0007z����]�l��v6��I�R\\\\�?[�p\\u000f�\\u000e��i�.\\u0007e\\nDj��\\u0000B���A?�FGO�J�n@�ƻ\\u001fۀ���[X��5\\u0001������'�\\u0000�I�pKq^G7Zc��tv�\\u00157:V\\u0015���ŷ��IJ\\u0015m*F��\\ff��1�)\\u0003C�R�\\u001f\\u0003H�:�]�m���巶��j\\u0016\\u000be;gs��\\u0019�����;�z\\n_ݲ\\\\\\\"���`%���؍Gƭ޿���\\u000b�j���\\u0000���o�\\u001387���\\u0006\\u001fp��[ۏ�e�A:�[aN;�y�=�h �<��*�a�\\u0003�R��_��ҔT�Vr\\u000fH�[��ҷ>�ש�i�_���G�E(�1��:�&7-L�.n>\\u001c�4��\\u0002�\\u0005�>T���\\u001f�����*�a����c�p\\u0016,���H��u��[�O�k����\\u0000�H�\\u0000�?�\\u001f\\u000f�O(*$��& �\\u001b�\\u00006��`�3\\r���\\u001b�o��k)>�4�)\\u001aT�mhi~��4o���\\u0000[��\\u0000{�\\u0000\\t�ZHo\\u0004��*;\\u0002\\u0015YI6;\\u0003z�x��\\u0000�����Tgp�\\u0000�d�6�)H�R�� ���j���c��Û�\\u0003��ɉ\\u0017\\u0007m)d��?���]��uS��H\\u0007��q�QLG)�\\u001drY=�ψ�z��E���y\\u0017Xbb\\\\�s���v��@�ư\\u0003�R�?�\\u001d\\\\\\\"��\\u001f���i�z\\u0004\\r{��ѓ��q�w2K\\u0013�\\u0002�\\u0005�XkKc�]�QAv�\\u0000\\u001fI�+��T�i�>'v�H\\u0002��[��\\u0010�31\\u001d<���W7?��!��\\u0007-�\\u0003β\\u001b\\n�F]��\\u0016ޭ�ڪ�DJ�93Ņ��ϭ�cz3\\u0011�2bv�U�'ʰD)pi�d�\\u0000��_\\u0006�\\u0000�jca��s1�N\\u0004��H\\u001a\\u001f\\u000f�*YT\\u0001�u\\u0019�\\u0000�,��\\u0000F߅r�A�QS\\u000b2\\u001c�\\u000f�Wy���He����#�\\u001d؞�����I�,��$`\\u001e-��O:�������\\u0000g#�k�\\u001a�$�cY�>N~3�%X�Y�zH�H�2���\\u001d�\\u0018�6��\\u001di�z�\\u0000\\u0013�'�(\\u0019��?\\u0015�\\u0000�*���\\u0002k\\\\\\\"�-�~�����uc�n��\\u001eKB\\u0005���#R�\\u0003�+��@5��&�5��\\u0001��ӌsw��\\u0000��\\u0000�Z'\\u0017�\\u0000�\\t�\\u0000��Jʰ�\\u001b�E���ND82,\\u0019Q�-�)76=A\\u0014�'�aɏ,jX��\\u0003�w\\\\\\\"����o���\\\\���*�xk\\u001a�k�iD�=\\u0001��4���\\u001cM�r\\u0007J����\\u001a����?�֩�\\u0001\\u0018��P\\u0004�\\u0013���f+�L\\u0019�\\u0016>t�/���C�\\u001d��\\u0000�\\t�oy����Q�eRI>G��@�kl~���R[n'�H\\r��)+z\\u0004\\u0001��{rC\\u001a3�eU\\u0004p;�j^��\\u0018�3��^Fe���+����\\u0000Q�kX~���\\u0013kqR[:d�Ud���Qn�5i6⳦�\\n�RZ&\\u000b\\\\\\\"1�\\u0006\\u0004��3l�b�\\u0007ԃ�Ҫ�5#��>~4q�f�(\\u0004X�R��\\u0012\\\\��\\rՈ�ۥ\\u0013���~�k\\u0010���?\\nǳ�u�h��4�]�S\\u0002��Sa�=\\u0005i�t��u�c�\\u0000��/�\\u0000�_�V�O�u��;\\u0011u�κ�s\\u0014�?�o�Mb=ߕ}\\u000f(��ͯ�[�\\u0000�5�\\r�V��J��kW�ԧ.\\u000bu�&���<���O\\u0018�X����ʁ��y\\u0016��Js\\u0004�F`��\\u0017\\u0006>B��\\u0003F˙�bp%RJ�\\u0005��V\\u0007�\\u00006\\u000f���2�~�m?#t�j��Uќ�u���o�{�Q\\tK�a�����\\u000e\\fZt=<�8�&\\u0001�3 ����܅�� �~\\u0015�x�2�F�>�U��>&�ʣ�\\u0012�\\u0006��\\u0000\\b���g�\\u0000�?��7X\\\\�9p$�)#�]�U\\u001b�E��T�Cje�m�#o�[����.Y\\u001b�\\r�բ`ȅb\\u0001�\\u0003s���\\u0015*�%�y���\\u001f��P��\\\\\\\"���DY+\\b�p�b�o��@Q���\\u0000�x���\\u0006�q\\u0002J\\u0005�G*��H\\u0016�խv���\\u0000���\\u0000���9<�^��\\f�C��\\u0015�jMg\\u0017�I���*�%\\u0003�,��D\\u0001mpo�g�\\u0004�L���]h��/�\\u0000��\\u0000/ƈS!;\\u000f?�1<[��\\u0000\\u001a۷�\\\\(1#�V`�{���I�J\\u0019n�\\u000e�\\u0003����_\\u001e�۝D�\\u001d�fv4�&H���WPF���YÕ\\u0002L\\u001d��ċ�N�Բ/���#�R���.�\\u001c�JX�F�\\u0000�����������\\f���:2���\\\\\\\"ís�)qAɏӼ@�\\u0007�\\u0007\\u0010\\u0001\\u0016=\\u0007½��\\u0018B\\u0015\\u000f(\\r�ƾ&��\\u0016��i�m�e�#����\\u0012K\\u0007�2\\u0005�y\\u000f:a�g*\\u001c\\u0005�\\u0019lc2\\u0015�k��\\u0000�z#\\u0014��G��\\u0014�+�\\u0000�'��V�|b6\\b�\\f��~.\\\\p�;�(�[B7\\u001et��JmːJ\\tK2;vL���\\u001e,ču�tOn�\\u0000�C���i\\u0003p��\\u001f�C��vl)`�\\u000e\\u001d�0༅��\\u0014W{�x9�c4\\u001e��9�K}Amo���\\u001f�y�߅\\u000e/�E���!����,�ʆLy#Ry2�.-IS\\u0016u����'�\\u0000~O�\\u001fƌ��\\u0000d|M_\\u0005\\u0005+9\\u001abgcG�\\u0014n�:(\\f8��\\r&T^�.U��ۥ�R?��?�\\u0011\\u0000�\\u0000����𚘇\\u0000�0����2�.%8�.opkN�ܱ�q\\u001a\\u0018�s$\\u0011qa���\\u0014~�]?)�H��\\nVI4ªrf9\\\\_jk��m����ѵ*Ϸ�ʹ\\u001f�Zb��B�&fb\\u0005�I\\u0006��`�\\u0000w\\u0002���R��\\n3#�_�W\\fL�n\\\\\\u0012J�P\\u0003`osj�\\u0012\\u0019\\\\\\\"\\u000f�Z������\\u0000q�?\\u001a`�X��Լ\\u0017W(W^����ֽ\\u0019\\u0017�I�\\u0014ڀ��,d\\u001b\\u001f��I�1�\\u0015O+�\\u0001��P��C|jd�_�L\\t��\\\\\\\"\\u001c�\\u0014?&#��\\u0001c���%Ie\\f��\\u0017��\\u0018��Z$�R��-hc\\u0001� f\\u0004\\u000b\\u001e���ʂ<�df!REf6;\\u0002\\t��\\u0003q�r��~'�4j\\u001a\\u000f�?pv��TY�fFP86�\\u0010:W\\u001e6�\\u001auw���P}�d�\\u0015\\\\\\\"�gg����$P�\\u001d������\\u0000䏁�\\u0013\\u000f�7²�]kwe2�\\u0000�+֓vZ�Bʯv6\\u0016�\\u0012hĈ��\\u0018\\u0013�ڱ;Sȇ���+�S�|!�&�̠)s�Z'P�� \\u000b\\u001dȥU�o�\\u0000.o��ƈ�ڇ�S�H�p\\u000e\\r��\\f�q��r��Z��^���5�\\u0000W�A�����@�+?\\u001eP�9zZ�㥈��6F\\u0000����5\\u0018\\u00057�R�:��\\u0010`iտ\\u001a_�?�?�G񣗠��SF�f67��\\\\\\\"9\\u001cM�J����c�5�n�\\u0000�/��\\u0015\\\\�PB��Cj�\\u0013�h݁����@oT\\u001b����[�RRb����}m��\\u0000!�\\u001a|\\f�&��AVbA�u�\\u000f�����\\u0000\\u0011�1\\u0007�����H���1�x�H�\\u0016a{��0��\\u0011c��) 2�X_�t8����/���\\u0000.��Ҡv�mo�O#J�4��\\u001de\\u0003�s���b�*=��;qa�h���6\\u001c�F仡\\n8���S\\u0014�\\u0000��\\u0000Z�5�kz��U\\b+HP�Z�폅#�'�\\u0012���񮳱��/�ig�N��\\u001bv��xqDr?\\u0017\\u0004�,N��U��q�ȑ�b��\\u0001\\n-ｼh�A��ҟ�P�ه�G�\\u0015\\u0014K��\\u0000�\\u0015\\u0014r\\u0005�Y��b+�I&�ۊ\\u0002��P�\\u0018��/�:�A߫����\\u000bjč�4H�Q�����4]W,Q[bȑ�.l\\b��w\\u001f�G��A����+@쉣�>*�7\\u001aP��?��E��~\\u0015u�5\\\\\\\"׆�a^��\\u001a\\u001a�\\f\\u0011�\\u0000���\\u0000ѯ�Jˌn:�S���eÌ�,Ă�\\u0011`N¶�?\\u001eI�б\\n�\\u000f��\\\\\\\"߅g�m�8�\\u0000?�\\u0014���'2o�\\u0000D?�\\n���� J�\\u0000>0+�ʊHYG+��u#�\\u0001]g��S�\\u0000ү���7�~\\u0006����Agƕ�fP,v�ʝv\\f�p1�$�f`E�->U�_Λ+h>\\u0014,�x��\\t��Ð��\\t*wn6�+ɻ�\\u0013{|\\\\�2+\\u001fI�\\u001dk��?�?*3�k\\u001c�\\u0011�T�\\u0016AK\\u001eO��d�DVnL���w\\\\\\\"�Q9�ҿ\\u0013B7�~\\u0006�^$n��I�{�\\u00067o�\\u001eVa\\\\\\\"\\u0003�\\u0005$j��J��T9y��\\u0004��r-��'\\u001b�*�\\u0013�xE�\\\\9\\u0016,���U���Jmۀ�\\u001aiտ\\u001a\\u0007�Xd��yj\\u00020\\u0013?p�xdEcɔ���Ҫ+��9�\\u0000I�E3�\\u000f~\\u001d?8�4r�\\u0010\\u0011\\\\\\\"*c��q�����,N��XS��\\u001f�����<���ND�\\u001d��\\fҫ!6\\u000bcqmoCH��`u��Q\\u0001#����͐\\u000b\\u000b\\r���2�e�*X͜��X��]�L���{Xt_�\\u0000:���c|����g'������\\u0000#o�w�\\n\\u0003�f,y�\\u0019e�`m���2\\\\\\\"�\\u0001_ӻ/�~[t��;~Qń�\\u0010\\u0012-�I�ֽ��3q2\\u0000�n\\u0005�ֵ�\\u0019�fv<2ːBJ�j\\u0001�\\b\\u0002�������9\\u000e$\\u0013�[~��k\\u000bS�@n08�A\\u0006G���\\u001fʩ\\u000f���$H�\\u0010X\\u0002@�_�c�\\u0000$�\\u0000�c�4L=�(D�`\\f�X\\u001e[�7M{k<��&��X���\\b�X�yF$p��E�`\\u0007�e:�\\f�c��a��7��*���$i\\fXܮ�k\\u001d�\\u001boYΝ��\\u001c��7\\u001d\\u0005�\\u0003��x�H���\\fM���I,�07 ��\\u0017\\u001d(��ܘ��d�4�H���A\\u001fg\\u001a_�{�\\u0019Q:c��1(�q�,\\r0Γ��\\u001c�7n1�P���SO)�%�{\\u001c���R�I\\u001f��k\\u000e������1�\\t.ʬ}]H��r�\\u0007�t0��Յ\\u0011qT��\\u0000����9�\\tUh���&>l�G�F�V��QxyYs�\\u000f;�;\\u0005\\u0002�}��F>^fD�\\u001eՌ�I\\u0000�\\u0003�{\\u0012eb�}���S��4>^G��\\u0018�ˑ,Y�,I�A�\\u0004\\u0004�90�Z*i�<K�\\u0017{kC\\u0010�׶��M되�\\u0004��\\u001c\\u0011\\u0003\\u0018�}\\\\I\\u0017�^7�\\u000frY\\u001e�\\\\��'�����Q���\\u0002 �\\\\\\\"��*�=\\u00053��\\u0016��'cmk&k\\u001d\\u0000��\\u0000�e��,A'kn\\u000e�k�ڳ]�DG�[��\\u0016���+�G�P�S�,U\\u00131\\r����F$|�\\\\؛\\u001f��8�\\u0018\\u00044�nz\\u000b���z�e;��@Z�\\u000b�\\u0015�s�Z3\\u0006�bE\\u001c.�Zꤍ|\\u0005 ^锧����\\\\\\u001a�el��ա�e ��-KG��\\u0001\\b�\\u001dF���O�\\u0015S:\\u001c~�\\f��I$�\\u0013\\\\\\\"+0�ȿQJsT���\\n;\\u0014Caro�\\u001b\\u0017z�\\u001a5�0-�\\u0001\\r���-��\\u0013�<�\\u0002\\u0019\\r��mҦ���U\\\\\\\"~FcZ�l/Z�c̸͔��2���X|�g�Y㊴D\\u0017<WU���>T�<T�+G,h\\u0004\\u001c�j�\\u0012ݣ>0]�!Wsu�u����G�\\u001fΚ���ŗ\\u0012\\\\\\\"���\\u0001ްh�\\f��ڮ3\\u001c\\u00008�4�^.6VO)b����\\u001b_�Efr��Ӱ�L^���zGOg�\\u001e\\u0016ח-�\\u000f�\\u0011�?na�\\u0018}�$ot�<��P<\\u0007�\\u0005�{�Wb�\\u0011��\\u0019�����[��\\u001a�p����ْ\\u0005�E�f&��:�*�@���\\u000b��\\u001413�1\\\\\\\"�\\u001b[SA\\u0000/[���!\\fA@,G[���c��ϒ�7\\u001d�\\u0019�b�o��T�r��񫵑���������\\u0011���?ʁu�%�!S�#\\u0016\\u0016>&�ڻ4gY�&���Ό�\\u0013{�CU�ǎ\\u0016P��\\u0002M�ا�\\u0014\\u0018�w$��ק�\\u0019�\\u0005�;��l\\u000fO�Fyz\\u001ab\\u0000g����O�v�hh��CȪv$\\r��\\u001d�9���\\\\\\\"��Pn�_���\\u0000��d\\u001f�u`���Ӱ��\\u0012{����W�\\u0000���h2�\\u0000M \\u0003@9\\u001f�Xp\\u001e5\\f�\\r��R�\\u001b�\\u0018���2�3�ɤf ��o��d��B�#,\\u0014�-���\\u0015�\\u0016t�C�8í��{oR~�'0�\\u0018],\\u0005��CN\\u0003\\u001fPn�?G�g����f7\\u001aҨ���H\\u0011�lo��_ƚe1�1~�zK\\u0010A\\u001a�5�B/b�\\u0013�\\u0016k(7�x[ƅ�u\\r̆l�}5��,�vP\\u0016��4=\\u000fƈ�\\u0000�[ߙ�\\u0005U�dLŹ����h^���'fEb\\u0005�A?1L�v4YQ��H*�\\u001ct�@�)�nB�\\u0001�Q�FxU��0�<�ͼ�E�\\u0014ny���\\u0010!�����\\u000f��\\u0000�̊\\t4G6$hv�o�=�\\u0011L���6\\u0004k���A�\\u001c��n�҇K�-O1�C\\u0013�\\u0007��1\\u0002�\\u001aK�H�*\\u0003�P�v�h��y�H8�\\u000b\\u001dyV\\u0002.��0�$\\u0010\\b7\\u001b\\u001a���l�\\u0011qfRUX�\\t�ښv|A�\\u001c������A���k҉�X�x�<$RC)�h��ܥ�'\\\\tYU��E���ơ�0��S*���\\\\\\\"\\u0015/g���ۯƂ���\\u001e\\u000fq\\u000br�\\u001a�5�$�yRL��-\\u0000\\u0013�z�3.i`+$A\\u0014\\u0010K^�P�\\fH\\u0007\\u0001�]+���#\\u000e<��g��\\u0006��*��o@�Є\\u0005]���\\r�~~\\\\�O�ߘ\\u0000\\u0011��u���y����\\u000f8�zZ�\\\\|�\\u0001�ڧ9\\u0005�\\u0006'�\\u0005t=>4}E�$ː����m��\\u00173�U�\\u0000\\u0017\\u0005t5��HV��\\u0002w�k�c�B���\\u0016�Գ3�S^>�\\u0003\\u0016Û�@:��SOne\\u001aeN\\u0000\\u001az�)7�I��^��4̷v?�\\u0000)�����l�!a�7��%�$��Ʌ�\\u001e\\u0015\\u000eJ��H\\u0005t#�U�)&\\u001e�-���I3�3'lx}�\\u0000��c�[�=�\\u0004��v�\\u0000��.\\u001bwS�<k���\\u0000���V�\\u0000q���J#eP\\b&��\\u0005�h�|�\\u0001�������\\u000eT��4\\u001e�x���я�`q�`܎��K]\\u0007��>B��+�4\\u00001\\u0000}�_~mO��&���h��]��]1ث\\u0000T�?:\\u0006y\\u0013\\u001eg�c�X͝\\u000e���)Z���~/�\\\\\\\"�{�)��,E���C\\u0002��y7�ص�\\u0017� �\\u0011Ğ�0'C�ڮfl�\\u000b\\u001aݔ\\u0012@���cQ\\u001av�x�sb�[�rom\\u000e��u��p\\\\\\\"��N|�iv�\\u001eT�\\u001f�8\\u0013&W�\\u000f�t\\ft�[�\\u00177�\\u001c�bh�(\\u0003nA>7�s�\\u001a�c�����\\u0000��\\u0000����C\\u001a��i�6\\u0014o��Y���_�\\u001aX2�=\\u0005E�J'�x\\u001e��ǃ��f��_�-�[@\\u0007�.�����r!Ln\\\\dB����\\u001byT�����\\u001fcی�b�b����s3���+G\\u001a��,V;�M�yS�[�@L�pc�\\u0011�d�5�]�6)\\u0014�X��\\u001ajm�\\u001f\\u001f�\\\\\\\"�lb�5$����\\u00182nݍbx����mB�}���wsq�m����\\u0000�K��\\u000f\\u0012�+�\\u001eb��1��\\u0014��2m\\t\\u0015\\u00014L]�;%L��Η\\\\\\\"�ָ��%�ʁ�M\\u0019F#�\\u0006�mB\\u0007\\u0000�\\u0013�1�S���׽�.|��1ev\\u0011��X�5�o3W�\\u0011�N\\f\\b����^�aI��\\u000eD`��\\u000e(l\\u0001'K}�9�%o��M�p�'p�]U�\\\\����)\\\\8�\\u0006�k��2��v����\\n�O1�#�\\\\���2�K\\u000b�����Y݃���\\u0019\\u0019\\u0000\\u0004)��\\u0017�\\u0004sGͮ�r=:Vq�df Ɇ6x�V\\u0016��h�\\u001e�ݜ<X���vg�PG-�a�Vڌj%�L�$fB���o��L��J�d}M�o*�|]õ\\u0005�:\\u0001\\n��BHk���&�=�e2Ā\\u0016��\\u000b망DZgb�A� \\u0000�o�R<���\\u0011J�\\b�o�\\u001a٢��n�|Eg�9������$f��3�̮�.\\u0001.������y�\\u001e���bI\\u001f}dجĝkH���\\u0015\\u0004�Ҙ������%��\\u0017\\u001e�P�\\b\\u001fU��>\\u0015��>ϋ��#\\u0019��H\\u0010� �\\u0010O@<*��?3�\\u0019V,a1�� �[���{�p��8�\\u000eF0�Ep��r��\\u0016�\\u000ega��#ŕ�Ɋ\\u0016�Y\\u0018)#{\\u001a�\\u000fc�\\u0000�o���R\\fx�\\u0013�0<�l\\u0018\\u0003�����H?�]�h��\\u0015�\\u0015\\u001b\\rM\\u0003��,\\u0013\\u0014@�\\u0000\\r����e��B�\\u0018]H����\\f���;{�����a��ƪ�ND��\\u0000�0c�PO&K�\\u0018�UDgB\\b;�i���Aڠ�H\\u001d���O;Z�_�\\u0015Oےfv��\\u0016\\u000f�{�Y�<x�\\u0006�Wt\\u001d׽{\\u0018�\\u000f�p��f\\u0007���Q\\u001d+;s����\\u001a��9ԝ٬mZ��p\\u0001��Ja�\\u0000�N�\\u0017����\\u000f�7c�~o:��\\u0000���}G\\u0015���I���<���;���d���\\u0004�}�O�/��X�]�*\\u0005�\\u001f\\u0015�����\\u00166:�i�V��\\u0005!�\\u0010${\\r�F���`��x\\\\֙1��LbɈ�!\\u0001�6�;mX��k*�)=J(�ڒI=M�1#sQ}�\\u0017���\\u0016c�\\u001d��UC:�eO�^�*�-��h��}�%�~c�\\u0001C��އ\\u000fAU=�}���d���\\u0016\\rȍ\\b\\u0002��^�v�H�\\u000b\\u0019b�o�\\u001e?\\n���[\\u0014�|u9\\u001b� �饍S2|�y\\u0014O\\u0007�̺\\u0002׸��C�j\\u0001��b�\\u0001K��\\u001bڄs�Y��\\u0002h�sf�A\\u0014wrn�\\u001d�<�ٻ7qX��%P\\u0003��M��N��u\\u0006ԊY)�>����<Q��{��\\u001bIԋ�W3�\\u0000\\u0001��\\u0007�_�L��DѢ��G�\\u00017�\\u0016���k�\\u0000\\u000f��A��\\u0017e\\u0006�`~\\u0015���u���X\\u0000F������R�'\\u0011)���\\u0013���=�\\t9ʡ9\\u0000\\u0000�;���.'�3�K�cݕp�I!7,lyj?�/�̖Y�6\\u000bc}����r!�\\b\\\\\\\"�n>�?Ʋ��T�\\flYɲ����Z�\\u001c0��Y�y��\\u0000$��΂�\\u0010u�2��\\u0003\\u0010</^\\u0019d�����V6u䠕;\\u001a����Bm��iG��\\u0015Rd������$k�t�\\u0015��&0�*�\\r�&�I��\\u000bbz\\n\\u0017���ΦΖBy6�Ɨ~��\\u00050c#)\\u0005t4/�s����BI�&\\u000f��L�8r\\u001eI\\u0003J��\\u000e6��ґ�h�\\u000et��\\u0012Ȗ�m�\\u0000�����f�Ə\\u0018@�!P��\\u0010M�T�-f�Re,d\\u0016��u\\u0002��~\\u0015:<�\\u00127.\\t6���(w�v�F\\f�hP�뭫�\\u001c��l�mNTa�\\u00149�\\u0006Ɏ��X��\\u0001plu6�O��\\nA�]���R�e!E�\\u0007\\u0003z5��[x\\u0007�T����\\u00001(@�:ׂI\\u0014Y]�\\u001b\\u0000H�D\\u0019o\\u0018+\\u0011*F����gJ\\tH��lu\\u0002�~�ΕyK�\\b�.O���Yo���f�ȞE@�����҉�\\u0013&\\u0006\\u000b*\\u0015b.\\u0005��n����*��k��|��\\f��|�����v�����V*�y>�j?�'�\\u0011�fL�O�yX��{wv �5��Ҵ�\\u0001i��\\u0002\\u000f\\u0016�1�\\u0011�i��ܙC,\\u000bb\\u0001\\u001e���ҹa�$uqfRC\\r��Z�P\\u0003M;F@\\u0016�_Z�\\u0019��M���W|\\u0017��/�ӥk�ڲ��P�wa��\\r\\u0007�Ή��+\\u001b��RM��դƁQ���\\u0002v\\u001d>TCv��=�!!A\\u0002�]΃cU�,��\\fv\\u0004\\u001b���>���qp�ɝ��\\\\t�D;���\\u0013��u�a����Ăw�@Ң�\\u0000V�����������\\u001fκlܓ�cŎ1Մ*\\u0012��\\u0011o\\n;9��͔n���b�.h\\u0015��O�I��`u�hY�T \\rA�&˛'\\\\\\\"\\\\�\\u0018\\u001e�r \\u001b��\\u001f±�K!\\u0017[\\u0010+T�\\u0014��FIz���qe��O�^%����Ə��\\u00181 qswE �٘)��t\\u000e\\u001c���&D\\flV����eI\\u001d�\\u0015\\n��H'�\\u001e_�\\u0018cv\\u001c\\u0005Sf�A�����S\\u0016��\\b?�]|��V)ڳ�Eu�\\u0015`\\u0019O!���Um��\\u0014\\u000b�3��\\u0010\\u0014\\u0003q֊�\\u0019`��\\\\\\\"��q{�J�\\\\s1\\u0007Qo\\nMXx09/����\\u000f���3{�\\u0004*� �(�{T�.1�Vy_UQk� ������s�Fʞ\\u0007H�\\u0004�\\u001e6\\u0003�i�Pe\\u0004Ҩ\\n��\\r\\u0000\\u0006�q�k\\u0001����$�\\u001f�mr^��]*w��UJ�[\\u0002\\rΣ���Wc���\\u001akq\\u001c��J�/efQ�\\u0004�Ʌ��3������\\u0011b�Wf7�[��[Ʋ���Q3D���(\\f�\\n�\\u0006���U�g �0-��(#ƨ�\\u000e\\rƄj\\b�r{VlAD�|��{km���\\u0006E\\u0017 �JoQb\\n\\f錋\\u0013HǙ\\u0000���Λ~����\\u0000U)�\\u0000�u�e7�\\u0010�Ӧ����g_���a��j\\n\\u0005\\u0005E΀�\\u001ah4\\u001eU���k�\\u0019:��plk\\u0019A��J8��>t�<H���e�\\u0007z�\\u0007�F@����7S������ko\\n�\\u000exR~���\\u00025�_�=�a.\\n�'ݐ�,[MM��퐀O&�\\u0013��V\\u0007����Prb\\u0000\\u0017;�Z��\\u001e�A\\u001f�����?�LXx\\u0010W�\\u0011��A>$\\n�$�hT؏1^�$\\\\U\\b�\\u001e$!�����Wx��\\\\�������\\u001cc��q�-@��޵l\\u001e�\\u001dP�ٚ�G!���Y[���I>^�\\u000f��\\u0010��\\u0003kVG�����\\t`�c\\u0018C&=���܅�N�zŻgqUfh\\bP\\t&��������q�;k�\\u000e\\t�#쬚VV*\\u0000�ڍ\\u0018Y$\\u0002\\u0013C�����c\\u0010�\\u001a��U�4\\t6t�0\\n\\u0006��kl\\\\��\\u0019�É��Vl8فg+��V�ФA�\\u0018����)�p\\u001f�qS/51�%U�\\u0012W}\\u00014�7��c��:K!hа\\u0004�\\\\x�I�_\\u000b%rB\\u0007)qě\\rE����2��K�`U\\u0012)R����>���q�q#�\\u0018b\\u001f�L��F�\\u0000���6�\\u00167�9\\u0019�\\u0016P�ǩ\\u0014����\\u0000�?et�x\\u001d�|He��� e\\u001e��Q�\\r/bզE�d���Ȥ�x�v�搨\\u001do�Lr;or�D�&9Y\\u0016��\\u0010mqq����>\\\\\\\"t1��omj�\\u0002\\u0003�S�,�\\u0002:��{\\u000e\\\\�J�����z�\\u001f�K�(Ƃ�,�*�6�u�Q���v��\\u0000�<\\r�/Q�:|\\u001a�\\u0010�'�5\\u0012�Q\\u0014V.��~�*�����\\u0000�/���^C\\u000fu�$x�ˡ\\u0003�\\u00025\\u001bxг�F�M��,��j\\u0014�\\u0013��\\u001f&D\\u000b����ʊ�ǐeH'S\\u0014��'��\\u000eت�\\u000eG���\\\\\\\"���C���.-D<j�q�\\u000f\\fc\\u0014����kZ��vXSWr\\u0015@ܓ���\\u0003ʗ>4��\\u0000ý��\\u0000���_�\\u0000:�\\u001d�,����P\\u0002���FE6U:o���ˑ�]�,o��\\u001a�Go\\u0006g��Z��-�\\u0017��{;:\\\\\\\"p�iR#Ś�5>��E!�����U��Z�Ċ92\\u00162�A�ʀ\\u000e�T����\\u001d�h\\u0019}ϧU?N�1�q�n|s���Y��HԶ�4��kM\\rd��,l�����*��?����QS������ᅍT��5�@�?U.�\\u0000��1��O���W&T�# :+\\u0011����\\rr�\\u0004�#�\\u0012A\\ntҔI\\n3�\\u0017�bI\\u0016�;�`�1�bM� ��$2LU�~+,��7�A��|(|�h���ճ�a�\\u001a�~�\\u001c��*,\\u0013��5H��|��\\u0005�Cv\\n4�k�R�%J���Z��\\u0003�+_zo�F�\\u0000�֯��bC#�B�����^~�/�\\u0000H���\\\\\\\"�㲆*.u:\\u000f�O;o��l�(�3J���B\\u0002�\\u0012<<�*��E�����~7�Yp`\\\\V�I��� �Kt\\u001eu�o6��2R���ooLL��9�*\\u0015\\u001a��_lewUwv\\u0016'����2���d6@�V�T�$ۏ�\\u0000Z���\\u00181Q��^�UV�X\\u0013����P�\\u001b\\u0013�\\u0001ө��o�Q�3\\\\\\u0002zt\\u001f\\n���~#�с����|����\\u001c�\\u001b���+\\u0011���\\u0000���\\u001fg�Ӭe2��#\\u0012\\u0019�1����i���(�ʏ\\u0019\\u0017\\u001d��`.��\\bk��!ɍ�GpCq\\u0016#k\\u0003�P\\u001d�\\u0015��\\u0010���\\u0001'��|-F��̹\\\\\\\"�³ k�^�$m����9Y>����\\u0001p�H7��jF&�t�1��\\u000b��U��L�$d-��;�~u���+]�\\u00025:x�i�����V%H [\\f\\u0005��\\u0015�y-�\\u0010>&��g�4T}�>DWHIF\\u0017\\u0006��INፆ\\u001d�������e�\\\\�)\\nE���4T_��T�\\t�P���0\\u0006��-��k\\u001eۑ��lh�\\u0004�\\u001c�%�� \\u001bW����L�$؊�\\\\\\\"*���K\\u001b���������\\u001dџy�1aE\\u0013$���9R$k�a})CF\\u00004�#�fw��\\u0012\\u001ca�gUV��o�XmT��w��i$�!\\u0014]�d:|\\u0003UurT��¶��S�?�}����J�2�[) o��O?����\\u0000�?���Sv�v/ɽD��Z�\\b+\\u001a5ȅ$e����1���)Ĝ���F�a��R��\\\\\\\"�Gxŵ�������8���H��6��\\u001a��X��\\u0012|ĂY%(�︽Ԩ\\u001d?�Zwoۘ\\u0018X/�\\u0013H]J�\\u0019�\\u001e�\\n(����\\u0018�\\u000b�q�Ҭ�,u���\\u0000�5l�ܓ�\\u0018\\u000e\\u0018�E22؆$�\\u0010z�i_\\u0019\\u001b��G\\u001a0\\t��S��{\\u0000�KI�\\u001f������\\nI��\\u0003sq���N�UH�R,,y��z��#;K�\\\\\\\"\\f�x2%�7`��*�v\\u0007ʩ�3z����kL��|�]�\\u0017g%���{V|-��ݎMq�9k�-�^U1\\u0000��{�z�)\\fD�/\\u001a��\\u0017[\\u0010\\u0000\\u001aљ\\u0019\\u0004�9\\b�9\\f@#��F�\\u0000�C�M�*Z��`A��4o���\\u0000鏴��\\u00043��Xs��3���P��Z�\\u0000e)�\\u0018鋙,\\u0011�Q\\b�-N�\\u001ai���\\u0013\\u0016$�\\u0015\\u001e5P\\u0015�X��*ϒis$�t\\u0011��rA�\\u001a\\n���.��4s�LB���D#P\\u001c^���Rl�M�#(�΄V�����?\\n��\\\\\\\"y\\u0018�\\u0002#<���ܠLb�5~��\\u0000����U���1�\\u0000��R�a�\\u001c@�V\\u0012\\u0002G�\\u0015@b[�\\u0016�4}1\\u001e�\\u0006��\\u001d�@��)]u]��\\u0000����Qg&��s:����x��$�\\te�?�efb��VU +\\u0002o�(|��T�\\u0000�\\u001f�V�w/�>\\u0015k\\t\\u0019��.^0��v�\\u0002��cq`8���wN��߶�\\\\\\\"d���8U\\f\\t$��q\\u001d��\\u0000�p����Mt]��\\u0000����5\\u0016��O�'\\u0007/q�Lb�5E�����W��\\u001avR=\\u000e�\\u001f&\\u0000��E\\u0007�:�!T�Ȁ��E:x҈M�\\u0015�_���\\u0018�H�yceP�\\r�O�d����G�A���\\n.O��N0\\u00119\\u000b2�A�����&\\u0001\\u001a\\u000fqE�_Q�H�^�_�~\\u0002�^D�\\u0003ll�$�+Ί�����5\\\\\\\"���NC��Ÿq<���Z���/��\\u0013��©9\\u0011����a��Y\\b-~$\\u001bm�K�H\\\\���\\u0003�-��\\u0000�?��;�\\u001f����\\u0000�\\u001a\\n�X�n\\u0003\\u000f��\\u0014�<�q\\u001a\\u0003 �Q���\\u0003�yt���TRt�£��t�I��2�T�\\u0010Av ��\\u000b($�\\u0005��@�\\u001f�vG�\\u0000�oƋ��\\u0000�\\u000f��j��3�\\u001b~ݑ!�c+\\u0004\\u0005\\u0005�i}i��x��>��d�7�qaT���\\u0000�9�\\u0000�\\u0001�\\u0000ƴ��W�\\u0000�\\u001b�\\u0000�'�*\\u0016\\u0004�ę9��\\u0003��\\t6�\\u0004\\u0013���x�?�\\u001d|�(_�Կ���[�nB\\u000e2�vy�\\u0014����ɱ6�)c�m�?�;���\\u0000g�\\u0000}��&�p/�\\u001f���8��\\u0015\\u000f.\\u0000���j]�\\u0004�\\u0015�n��\\u0017R?\\u001a�0ͳ&������=\\u0007���ł��\\u0000�=�T�Y\\tk\\u0007#\\n8�IR\\u0000:�7����\\u000fQe�D���́�xrĘ��\\u0011{���P��s$�C���#2r\\f8�\\u000bމ�B�����\\u00105\\u001a��)\\u001fr\\u0017�\\u001f�\\u001f��l�w�S���\\u0000��n\\r\\u0012��v��\\u001f��-\\u0015ԝ\\u000e�_Z�/+\\u001eLI�\\u001c320P\\u0001���G�O�&���\\n�\\u0014��C��Z�\\u0015�g{�O�Ϩ�Y8c��Ѝ���)dv1�8��\\t�+n��\\u0000�\\\\��\\u0000Hߍ4���\\u0000ƛ�c�\\u001b���\\u0014�,ex���P�m�\\u0011��2�Ax�������\\nQW[�\\\\\\\"\\bJ_\\\\\\\"az2Q�Ң�'�L�%�n �T������[������\\u0000i:�T���s'\\u0004Q��R\\b�A�\\u001b��zo�t��߹d�o��Z�t\\u000b�����*�Hx��]\\n�\\f\\u000b\\u0013�\\u0006所𑙁Q�jA�����\\u0003�bX[V��&���O�~N��O�Q0�Tr��h��B:��\\r��1b�ߍ�7\\u0010���K-�]�a`;L\\u0002�����.�\\n�\\u0017�,aXr\\u0017���La��X\\\\\\\"\\r2\\u0002\\u0011A\\u0005��\\u0001Bw\\\\\\\"\\u000e{��\\u0013�����P�%,)\\u0017wDy{�D��h�J��\\u0011[�����'���\\u0007N��J8/$��\\f�c槐���M��q\\u0010/}\\u0007\\u0010O�BWk�I��\\u0000\\u0016\\u0003�����T�*\\u0004�p\\u001e���l����\\u001f�\\f���>������\\u0003�a���G[�f�\\u0014�Jl��6v\\u001c\\u001d�\\u001e)�D�V̬u\\u001a�\\u001f�O�4�\\u0014p��lF�\\nIL\\u0001�Z�!�\\f�&�\\u0017ۍ�_uR\\n\\u0016\\u0018'YO(�l5��]�n`0�ס��j���gתu�\\u0000-R�\\u0004���\\u000e\\u0019y\\u00025\\u001b�WX3��?�\\u001f�B�w�s\\u000e�ѿ�+�}i�\\n�\\r29�B\\u0014�]�?:e�<1�*H�\\t��cCR����N�j�v\\u0018wFYZ3\\u0011�\\u0000�u�k�c�e�v\\u0011F#q�ͅ��4\\u0004?�'��֋֛�\\u00013��Y�Sv��\\\\\\\"7v\\u000b�U�'�:W%R�J��\\r�n'p�LHU�#\\f�� �� \\n�;�<��.X�x�BU�PE�ƈ�V�e\\u000e�`\\u0011�(�G\\u0013p[K|)�h��C���V���kƯ(_l\\u0003�c�4M\\u0001\\n�ƀ����>ڔ\\u0014����4D\\u0002\\u001f,��\\u001e��u���+��$��p����ZRTA Y��̜T�\\rl<���\\u0018��ӟh2\\u0000\\u000b�s:ʥ>!'Fs1}؏��\\u000fs�\\u001a\\u000e-[���.,�)\\u0016CkY=Z�xW+O�\\u0000n�1��ޱ�\\u0000��Q������}s\\\\\\\"_nD\\u000fƹie����\\u0004\\u0016b,|��D\\u0013\\u0005��'�\\u0014�\\u001f�\\u0016�\\\\HI��L�H��K2#{�x�\\u0000lmB���ys\\u0015��]D`\\u0012�\\u0011~MI*���!�sI\\u001d��:���$~�g��t'�\\u0006\\u00174�mG���Q�\\u0000A�EV�Y�����������¾g&<�F!\\t\\u0005�������\\u0000���\\u000fƹ\\u0015\\u001e��QR�\\u0002�����YX���\\u001e\\u0019�X�Py#\\u001b\\u0011��������2�L��Yb\\nY�������\\u0015R�\\u0017'G��&\\f�<ErY$b�#���^7�[\\u000e&�\\\\\\\"\\u0017�\\u001a0\\u000e��\\u0003o:�n0\\u0018�ko�\\u000e��t\\u001bǏ��>��,�H3�\\u000f\\u0013�]�Q^~�\\u0003���h���\\u001f�b��/�~4\\u001aS��]� mq���5x]\\u0007+�\\u0017#��\\u0003�7S����5Ğ\\u0015���@�k��*w)c�\\u001c,L$`����X�R�i؍��[zW�<k\\u0005��E�Yue y�+�N��4z���\\r$��JJ�:|,�4ÁZtVTPAapmK3a��&t��\\u0019��\\u0011�\\\\\\\"�m)Q���`u�b�\\u000f�z�\\n�Y3�����\\\\\\\"y��K�\\u0003�#PZ��\\u000e�\\u000fq�ygDT�9\\u0012mk���\\u0011�\\u0000ۋ\\u001f�'�\\u0000�j�r�\\u0000����\\u0014�a\\u0005m.\\u000e�#��v�\\u0005̈�i�o\\u0007S[�y�%\\u0018~�\\u001d��b�\\u0000:��JI\\u0014bU�t5�~��\\u0018\\u0010vh\\\\\\\"�&8�R�F`\\b�\\u001e��ڔ<����>D\\u0019\\u001d��\\u0004�,~�\\u000eHn./��/�6��Ac�aL����u��jZ�2��r\\u0017a�\\u0015w�\\u001fm�!r\\r�ʄ�\\u0000}��Ƈ�>���uq�Z�d�{\\u0001��\\u0015�G%���񱢻W�\\u0000�q�\\u0000��\\rt����#�\\u0000ѷ�I|YB�ř����<�\\u001b�\\t����\\u0014?~�<��|s�B\\tPH��Mt����`��\\u000e�ی�BN�\\\\\\\"A�ay���O\\\\\\\"�Z�k���\\u0018R�J�ή�H\\u0001M�5�wS~�7]G�\\u0011E�\\u001d��/�8\\u0014\\f\\u000eV2�R���W!*�f��I��]\\u0017~�\\u0000j\\u001f�7�)+}&��X=�!aP�\\u001dt?\\u001a\\u001b�+I��\\u001c�{ڮ:U-K�\\u0015əaE2J�Ш+`OƘ�\\u0010�13\\u001b(u$��\\u001a�l>\\u0015�\\u0010&Π����\\u0000}:�a\\\\k\\ty\\u001b)��J*�5�\\u001bb�\\\\uV \\u001e��x�Ĭ��\\u000b��ƗT�e�@���_ve�(�g�\\fI\\u000b�J]�\\u001b�U��<li��O�X?����\\u0000�5\\u0014P�\\u001d��̗]E���:\\u0003z�y�\\u0000���\\u0000\\u0011�\\u0000�Q=����\\u0000ҿ�\\\\`9\\n����M\\u001d�%�4�;��\\u0016��J7��\\u0000���\\u0000Y�)\\u001dK���\\u001a�\\r�'��m\\\\\\\"�\\u0003��P�R#F\\u0002�&�\\u0003BT�u��;�\\u0004\\u001b�<:\\u001d�4\\u00051��\\u0000�\\u001f�\\u001f�E� ��F>N:A\\u001a���\\u0006��8y�h%�2/)..w\\u001cTR~����\\u0000���\\u0016�\\u00126�8�dF�H��,H=oA\\u0007NC�:�\\u00145J s�\\u000b�H�L\\u0003\\u0002��\\riBN?�~_�4�l���\\u0010�=�U\\u0007�<)6T��2��*\\\\�Fƀ��\\u0000o�kZ���*X���\\u0000k�\\u001a�\\u000eٓ�\\u000ehydTOm�\\\\\\\"t�+IW�\\u001f\\u001a&�\\\\c� �{�\\f��#�\\u0019�!�:��4&7\\u0001��O_*Xw5*����o�\\u001d��}�+��m�j�)q\\u001f �wUV�\\u0003^��� lmo\\u0003AS�u⾡��<*�ԛ�\\\\\\\"�kmEm\\\\\\\"\\\\\\u000eB��T�E(�\\u0011�5��\\u0000�����j��rRx\\u0000�&:\\u0004c��\\u0017\\\\\\\"\\u0005ń4�\\bE\\u0004\\u0012\\u0005��\\u000b�\\u0000�>\\u0007����;��\\u001a�y\\u0005P~�\\\\\\\"�p��`�e�M��+(yjYH��\\u001a��],G�1�\\u0000�\\n�Xi\\u0001v)����$�,h��3� ]\\b\\u0017�t\\u001d���Oٳ\\\\\\\"�&9ex쨌\\u0019���\\n����\\u00006o�\\u0001[v��O��hU���!J��O$`z\\u0012\\b��\\f�a\\u0004`ʠ�PA#�?�'����\\r���kp�k#��C��\\u001dߵÄ#�*4p�\\u0012���bEU��m~�4��\\u0011C\\u001c@7 \\u0001 �q��\\u0011R��ȞT\\u001d7|�ĘA�L�q/ˉ\\u0006�\\u0003K4E@\\f7\\u001f�\\t\\u001fZ�O�>4�X��\\u0005<�T��cֺ\\u0005�²�\\u0000�#���q˹�\\u001a�>�N�\\u0002�G�fa��g�\\u001eO�a�F�w\\\\\\\"%�/\\u0011\\u000e�V̺��e\\u0007�}?1�i�\\u001f�\\u0000\\u0016/��+;N�v�\\u0001\\u0018\\u0004F���q��l�Y1��y5ƃSC�\\u0018?�\\u001f���Z�\\t���#�L,�UVD$�`\\u0000a_R�\\u0000��?��\\u000f�\\u0000�_�\\\\\\u001ea��ר�c�\\u0000q?�?\\u001a�8-:H���\\u0018��A�ؓR5~#�~�]�qs�\\u001fm\\r�O�!�\\u0000@��A�]�2����<�\\u0019n6\\r�ܯGK�p\\u000eL\\f2\\u0010��9\\u001b�p-H;��\\u0000>��\\u0011����VFv\\u001c��\\u001c��I\\u001b\\u0010��\\u0018\\u0012j�\\u0019��ă�]Q��� �\\u001e����\\u0000���3���\\n��q�=�#\\u001c\\\\\\\"�\\\\\\\"�:�R̆V�F\\u0004\\u0010X؊ƥW\\u0011II�\\\\\\\"�׸��� ؍�X��Ɯ�\\u001f��Z�ZKPjT\\u0000�\\u0016�Z�\\tR\\u0002�|������~\\u0014ð�\\f��E�4ڜ�~*\\u000em��o\\u001b\\u000f���'a\\u001f�a�>Lq�\\u001cvtcb\\r�����1E��g��}&�ڤ4�:���&~D��\\u001b#{|[���XҎ�<\\u00134&\\u0017W�k�7��JjU�/#\\u001e�4Pwlyfq\\u001cj[���\\u0017V\\u001a��s��m|I�r�f*@\\u0001�&�\\u001a�@,\\u001fG=ߵ\\\\�\\u0000�!�\\u0000�i?o,\\u0018\\u0012L���l�M�7�B���\\u001f\\u001a\\u0017�Z�<������O,\\u000e$F#�)�6P(8�\\u0001�X����zK9\\u0003<�^��.n4\\u0015�mi\\u0017�⼊U\\u0016T,�X\\u0000\\u0018\\\\�&�Zp�\\u001eY���{M����\\u0000���u�\\t�����\\r� ڜvr\\u0006;�o_�\\u0015\\rK��\\u0015e_�\\u0012\\u001e��\\u0007ƺٹ�xع\\u0011�N�;H\\n��\\u0004�#k�^�o$:��\\u001aõ�����&�@���v\\u001c�\\u000fjt~<�Y����K���S*\\u0007i�UdBİ�\\u0000ם��\\u0000�?�\\rs\\u0015\\u001ce�|�A�>���[�d�e����\\u0015C�$� \\u0001�|�mR�RPA��\\u0016$\\n\\u001b\\\\\\\")\\u0019�\\nN�\\u0005\\u001dR�\\u001c�L2�V���{[ʎ��|~�\\u001c��n0�\\u000b6�QZT����7;\\u000eLY\\u0011&Fb\\u0005�>b����U�i\\u0005\\u0015\\u001fп\\n\\\\Fټr�#P\\\\\\u0002\\u0006ץ��l�d�\\u0003�\\u001aֲ�\\u0000�j��\\u0012l9\\u0019�\\u0002�܅��W{�m^Ԫ\\u0011�+\\u0006\\u0004���R�\\u000bUb��H��\\u001aO�\\u0014�*B\\u0011�ӡ����qu�\\u0000�\\u0015�w��\\u0000Z�|W�\\u0000\\n�\\u001fG�����p��s>\\u001c\\u0017j�L��y#�\\u0016e��l\\\\\\u0010\\u001c�6��o�&�H�\\u0011��\\f��A��I�W\\\\fI�\\u0015�\\u0013\\u001b\\u0001���?!�;�Qu)�,:Xz��N���\\u0012$y�YV�\\u0013��j�\\u000f �t���\\t'&t\\u0001���⢗ww\\\\��8��\\n�7�\\u000b[^��u�~����\\t�\\u0000�P�.\\u0006�o��]�\\t�?�����((�(�j�W[��{D�s\\\\\\\"f���@Q\\\\\\\"�O��3���\\u0000�\\u0015n�W�5���\\u0000�S�\\u0003M�\\tNO�����\\u0000��/��r�,aE�R���*>�H*Jeݧf]A����<\\u0003�����ʔ�\\u0001&��d\\u0001M�꘤&LL�(`I=\\u0005V�\\u0010\\u0012<�3\\u0014��J�� \\u000b�U���\\u0010�2�!T\\u0011�xR\\n�q\\u0014��6L�\\b*X�GZ��'J�Jb��ꣷҥ���?�y\\\\\\\":��\\\\ipG�]\\u001f�V\\u0002\\u001c�m�^��j���\\u0015ű����\\u0000�AG.\\u0011�45�J�\\b������̪ʠ\\u0010N�Ҟ�\\\\\\\"I�+����f\\u001bl(j��rJ�\\u0015*S\\u0011\\u0001#m>\\u0014&{�\\tf\\\\\\\"��E�\\u001e(�5\\rm�@\\u001a~�U���9��=�<_Qq]7z�ċ�K$P\\\\\\\"8+fU\\u0000�¹x\\u0018࿿���mǘ��}�g��%L3��\\u001bn��5\\u001d*^�O\\u0006U�ω�*U\\b�{^\\u0006\\u0014��\\u001aI1�wh�f*\\t'��5��H��Dq�TW��\\u0016\\u0003A�y\\u0017v�PƱE��\\u001a\\u000b*�X\\u000f����D�;���ٴץU��J\\tIț�I$m\\u0011��\\u001duRG��W\\u0007#!���\\u000b\\r\\u000b\\u0013�ӡ��rX�An\\u0000q��\\u0000��ݫ\\u000e\\u0006\\u00025 87���βwK]��H?o\\u0002L���e'Pvڜec�<���!M�\\u0002��\\u001aa�r!\\u0004H�����<}�.y\\u0016\\u0017c�Cŵ�~T���U�S9A\\u0016_\\u0001VX�*.��LOj�_���*R%p-}��-\\n��y۱q_\\u0011Y�FbX\\u0012T_F4^&.)�!L(@d�*\\r���ǝ�\\u0012��R�.@\\u0016�Y{�z\\u0016+;\\u0002��t��å%G-�6�7�\\u0004QE,\\u0002$T\\u0005Z�@\\u0017�xR��\\u001a�|����y\\f�tRm��\\u0015l8\\u0017#!brB��F�\\u000bֈ�(�2-��E���\\b87��@m�����`��G~H./k^�\\u0000\\n^r'\\\\\\\"�͍\\u0000d\\u0000\\u001b\\u0000+����lHdh��PKu�%�\\u0013δN�\\n\\b��\\u0004OJ� �>T�3!\\u0014dL��CX-ͭ�y�\\u0019C��-��B|j�������cv6\\u001e\\u0016��G����ҒNfG8(UI�\\u0000�ڽ\\u0000\\r���\\u00175�4\\t6DQ1!]��7֨F ��#�B�wb~f��رc��\\u0012HJ�`\\r�\\u000f�W�\\u001f\\u0017�����mu]w\\u0013q���ƽ�$���MT�i�\\u001e\\u0006<��#��o{\\u001blj�\\u0018>\\u001ch���5���f�iSۺ\\\\��$W�k�I�p1U \\u0013}u�a�3dd���\\u0017[XjM�)o \\r��̨Ğ�N���M���\\bm\\u001a���C��C��4,��X\\u0012A�|��4�O\\u001c-3�6��\\u0013�N\\u0018�������+��iC�\\u000e۞�u�O�$p� ʔ�V`\\u000f\\u001bh/�5ʜh\\r�As���j?�8��v�y$�]�nX�I��O�$���\\u000f��\\u0000x����av�����%E(�\\\\\\\"񰸾�Z�NÃ�}ܦ�I\\u0005ב h�����*�l��B\\u0004���\\u0006~^Zf��T�J\\t\\u0005�K[Jw���v�Nޒ�c�R\\u0019Uy ��\\r�sǟe͙;l�\\u0007 ��X�-�[��Wu�Yq��r\\u001aX��\\u0015��렧�P�&\\u001a����9+H���\\u0010Mt�`�\\bd\\\\\\\"\\u0004\\u0004+X�\\u001ai\\\\p�H�dF�)��\\u0002(�����V�b\\b �:�����s�\\u001d�\\u0007K���\\u0000H��pp�:1�2M�x�\\u0013\\\\�}Ǹ3���\\u0000$\\r�w.4!2e\\u0001A \\\\[�\\u001a:�\\u000e����\\\\X݄�\\u0001+�Z��ߐŁ�a�\\rF<m\\u0000b��AnL/W��wxW�yN�M���~\\\\\\\"�ΖN�*͜����U�p����4�ș���9\\u0019r��\\u0000�Q\\u001d�}E��],X��x��\\b-��<\\rs�ʸ�_\\u0018{L�Ď��D���`�V\\u0005u\\u0007O�C�\\u0004ty�Xi�;$\\b���\\u0004(\\u0004\\u001bW)D��;����#\\u000b06�\\u001f�N�\\u0004y}�\\fi����n&��'z4\\u0003 \\u0005��XJ�\\u001c�F�\\u00175��������,fP��̷{����\\\\�Ä�nI����4\\r\\u0006�o��õ�\\f�\\f��u\\bH\\u0007�Ⰻ\\u001a>\\u0000�E�65A4��7��N��j�&�o@��\\u0007��lx0\\f�Ʊ�5\\u001c�CcI�y/����V�\\u0003)�\\u0010Nƶ��ə=��2!7�|G±��q\\\\\\\"\\u000e.�2��E\\u0016i�\\thv�v��\\\\\\\"��h�\\n�<\\u0007�g\\u0016\\u0006\\t�2q�$���\\u001e\\u0014�\\u000f�w\\f��Ǔ%�Ip��{X�Q��+\\u0017\\ni�˔�1�E<m�\\u001a~Zb���fL�C�VF\\n�@\\u00005�D��&时|��^EVw7f��$�ֻx�m��\\u0000m=R\\u000b�ta�����Ծ-�0�\\u001d��\\r`-}kL��U^*\\u0005�A�Ux���H؀����R@�=��ŝ�d�I\\tW*\\u0000 \\r���iZ��-��\\u00024|�\\u0011�2���E�\\u0015���a.,̸�\\u0011�\\u0004(� \\u001a\\u0011;64y�RIT�\\t\\u0015�\\u000b��G��}�O���2fa+\\u0014p�\\b+o���8`��\\r4ǆ\\u0016�2QI*.H��`\\\\��qܕY\\\\)#p\\u000f�ts�8q�d�<����ʧ��\\\\\\\"�\\u0000�NR\\u0013M��\\u001e\\u0003���\\u0011�\\u0005��\\u001c�P\\u0005\\u001cA��\\f����]OƍL4ȍ%�ػ(��ʒ��\\u001b�IH\\u00168Vf�/aַ1�u��+\\u0019���FM������t��������7\\u001d<�n݁f�\\u0000�E�����~_�4I�\\u001d����?�Rbh��q\\u001e��,˒D�uV!F�|(�o�F�x�v,�v;�R�2�)���]�&�Za�Q$�è`\\u0014Z����0���\\u0003{Q���5�dI]\\u000b�{\\u0011���\\u000eB�pI1���\\u0000mu>\\u001eF��\\u0010�\\u001e\\u0014Ί\\u0015���q�\\u001a���r�Cň\\u001a��*\\u0003��I\\u001b\\u001f�<l�����\\u0000\\nVsiX\\u0012!Y�侶�u��0�\\n��M@��¹q�\\u00007\\b.(��s@\\u0000L�\\u001bm���\\n\\u0003�\\u0018�nc_�xЯ\\u001c~〠\\u0000t\\u0016�\\u0015n�%�χ\\u0016Y]RBnV��\\u0016�)�s�\\u0018��3�򴑯 \\u0018���\\u001a�jl4\\\\\\\"�ӑ�J'\\u0006\\u0018^b\\u001d\\u0015�\\u0012lG�����4�<%B\\u0019%�I\\u0016$\\u0011��J�@$�N�ˉ���=���\\u00028�F�F~\\u000e\\u0012a��\\u0004j�t!@#Z�f�\\u0019�Nʲ\\u001f�9�N��`k�n�<6�v*�Ժ[�U���88���\\u0000i>�U�\\u0017\\u0018Ƥė��<)G�?�[�\\u000e~b�\\u000b)��mU\\u0002:L\\\\\\u001c6�\\u0016�2nڕ\\u001f�i\\u001f}�8s�D�5৊�\\u000b�C������\\rM��֩,��H\\u001eg29���ځ\\u001e@\\u0001&��0\\\\\\\"\\u0019T\\u0010\\b��(�fa�R��N�J��$\\nV��M�:��ؚ���<\\u0010�]G\\u0000Ae��F>&(F\\\\\\\"\\u0014��Q�@b��c�3J�\\u0006�ֿ�X����+�&b�Mm�|)j��t@���ư��\\u0013bEmj�p�#\\u001eB�\\u001b�\\u0015����Ӳ�\\u0004�!�]��������\\b�D`��]/�A,��\\u0004�FD��-mhy�$�;\\u0019\\n�/҇V�E[�)A\\u001f�Q2;��:�S��/��\\u001e\\u0006�\\u000e���\\u000fl�H��\\u001c\\u0015�*�E�W/�,������H\\u0001\\u001c��;�DO���DF)�g��u6���\\u0014ւz���\\u000b��\\u0000��U_j?�\\u0014\\u0014�a��Xp���̊I��y��?�#�^3+\\\\\\\"�\\u0004\\u0005�S�(\\u0010\\u0007w��HX�\\u000b�\\u001b.���-6D�(�n\\u0003k֍�\\u0011\\\\\\\",��#���m�OKP\\u0010�ش\\u001e�\\\\\\\"ď\\nuy�5�\\u0019�\\baL~H����\\u000bR�\\u00003�\\u000e���<�+�2g�x��{\\u001a\\u001cL��]\\n���)٦�\\u0005T,��aa�6�\\u0005���W.\\u0015H\\u0004��\\u0013V\\u001d۹2��6�]��\\u000f�?�K\\u001a\\u001b���qњ5&ڒ\\u0007�)�G�h�\\u0005�\\r�AQ��ETO��be|�\\u000bMf`7ړ{\\fĻ��������z~4G��Z�1FE��i�\\u0018�6Lj�J��4٣���J^�F�\\u001d\\u0005�lkozR,X�y�\\u0010X�==#�b�\\u0013\\u001a��M�)�/���dN\\u0005��\\u0005K��6{�\\u0002��G\\u0010-`4�YݼO�Q���1�;��h#�ڋ�Ȓ�(#�C�\\u0016����OJ\\u0016�he�\\t\\u0016X[�����t�\\u0019�� 곰�S\\u0016b��\\u0004$0P\\b4�A\\b:F��@?s�\\u0012)G��XX�mG�Y��'�\\u0000P�ԯV�\\u001c\\u0013\\u0006M~Dy��5R��\\t�w�C�\\u0016\\u0007Jm8)1�i�ǒ9L����\\u000b�m�[?\\u001b\\u001d$�$J��\\\\\\u0000\\u0007QI�;+\\u001d\\u000f�![�Hҩ�\\u0000%�3��!k\\\\\\u0003IQ�$[��ʯV\\u0017�\\u001ck\\u0010*�\\u001b�@���4�,�H��J��XUh)�fI]\\u0007\\u001b)���`���]�;��@\\u0019H�\\u001d�&צ]�\\u0011�:�nGS�W\\u0013\\n\\f�f@n-��k�\\u0017��A\\u00032�&�J[�l�\\u0016\\r�Qr>�k\\u000e�\\u001a\\u001b���$��OU�$��U��'ߙ���(\\u000b!�\\u0006�\\u001a\\u0012̒����\\u001d��@�η7�21��\\u0015\\u001cM��P\\n��\\u0019E��ֆiH�#�\\u0016��,\\u0015,�nLOēId�P�9��z�\\u001al�A���.3]�0I:�@���>,L��$��b���\\u0003���\\u0002�QB!���\\u001e\\u0002��̺+�T� ��k����@[�{U�Z��Ǝ9!�u;lhg�� ��m�^�,���&*�f\\u001et�ǽ�\\u001b\\u001d0�u�C\\u000bY��j)\\u0019\\u0002�U��̕\\frJ̇pmX�>5\\\\��]_����\\u0015Rb]@�\\\\�t�&\\\\ʌUU�\\u0000\\u001d\\u0000�˕�o�N�\\n\\u0016X!w.�\\u0019�݉�j\\u001b�\\u0014�\\u0019�\\u0011$�G�C�-vas�y����E\\n\\n�>5�RI\\n\\b�n\\b6Q�Q�y\\r��#K�\\u0012r37$.��m\\u0002L�Q�%-��A��\\b\\u0007z�618�3��UaҘ��'\\u0013\\u0015`��(\\bRA\\n+\\u000f���\\u0000��)cg�2�i��Ѝ?�W��_����\\u001ah\\u0019��u�j�aR��j��0�4FF,����W���\\u0013��{�ՂK\\\\\\\"\\u000b#\\u0010\\u000e�\\u001eI\\u001e���ڂc2V�\\u0018\\u0006D\\u0004\\\\\\u0016\\u0017\\u001f:�z\\t\\u0004\\u0011�\\u001a�@ǯ��\\u0015�\\u0012h\\r�\\u001e\\u0014\\u0002�\\u0011Q�\\u001b\\n\\u001c��A���O~a�3\\\\��]�K��ǫ6��g�f}\\u00059��\\u001ed��UU�\\u0000�P�����[o\\u001f:q&4\\u00129�D\\f��'�P�b��\\u001f}oT�O�;4�@�2��1w,CZ��Q����\\u0012H�ת�<1�(�A�®�!��i4�A4��p\\u0004.F�\\r�zK'5\\u001cΤu���\\u0005[Pw\\u0015�� n\\u0014\\\\U,\\u0005�nR�s$��~�`�LjH�°����W\\f@�:\\n�խX6����a����7r�92�l\\r)��\\f8�ꐢƞҒ�,/v�J\\u0012.�\\u0002{p��$�SasYdO6K��\\u000eep,\\u0019�ͼ(��d\\u001d�D\\u0017����� \\f�oc�3`�1�\\\\\\\"\\u0005k�GƗ��\\u000b\\u0016��c�\\\\\\\"��3ȼ]�/���K�ΥJ���p\\u0005��J�4\\f��i�l�R̛z\\u001f)�x�$^�S8q#��b�[c^M��ˢ��A:�\\u000bRe%5V�_���`琶�Ze\\u0014q�Pq\\u001fP�XM�\\u001e,M,7\\f,>�\\u00192�.��k���[�i�A_���ha\\u0010�B(!M���&��?mjr�\\b ��\\u001d\\b�\\u0006fpH�JմeJ�̹7��D1�*\\t񬢉^5c{�s[G\\u001e�r`\\u0001�����p5d�#\\t�Y\\b]\\u0005���z�}~5�������1\\u0006�R�\\u0006���\\u0014�F�1���+�e$�\\u0011���g�q1S\\u0006gHQYVႀF��{\\u001e�������t맅y.NL�2I3�0�Sm~����NJZ1eύoaE\\f\\b4�������1f�\\u001e#�U�8���S��]��M�qe�\\u0016'���쀒nw&�o�QE��d�\\u001d\\u0004Q�B\\u0011\\u0007\\u0011r5�QعY���C�*E\\u0013\\u0015E\\u001cl\\u0006�WΕ�nre\\t&v�FQw{_M\\u0006֬�[Ks�0\\u0018� �ޯZ�9S����gƎ8˩7\\u0004oW)a�71�\\u0001�@���A�\\u0012�\\b��E\\u0004)���+\\u000e���؍�h�r� �H#j��i�JZ�\\u0004_\\u0001P\\\\\\\"�h(����X��\\u0001�u\\u001f\\nO��,3�H}(l/�O\\u000b-XrOc����lEw�\\u0019�ڐ\\t޹��Nq�\\\\s�!�\\u0012��\\u0017��J+\\u000f?0�a)P\\t�\\u0016�o\\u000e\\f\\u001d�!�m�dAůck�MQ��g\\\\\\\"\\u000e�4�{�ݚ�ms\\u001au�Ud�0G \\u000e�ګj\\u000e�����]�\\u001f��R��\\u0001����x��΍\\u0019���ˡ\\u001f\\nMd������L,�H#VXث\\u0005\\u0000�\\u0005r\\u0001��6�'-�u|�\\u0019J�T��xP\\u001e�xP���B6����۞����g�vܮÇ>F4r��K���Ǒ\\u001a��c��\\u000e��\\u001e�.u���G9�xcʚ\\u0018���\\u0014hV�l\\u001b����ʶ�8\\u0012bo�\\u0010C��\\u001e\\u001cd\\u0011D\\u0011\\bE�\\\\�iO6\\u0002��޺.�\\u0000�\\u0018ɎY$�i$_S�E�&��\\u0002�e�\\u001c(\\n\\u000b��ZU�&�\\u0003\\u0015w7�\\u0013�nlu�j�7'�\\u0003n��\\u0011�U�Ph\\f\\u001d�=F�q_\\n\\u001fۏ�E1�\\u0015\\u001e%r�v\\u00176#�S���M67���|(]�Ff@I*\\t&�wdH���\\u0018\\b��*�\\u0007�S|$��TdJ�\\u001b\\u0014UR�\\u0000[�����\\u0013/VgfP��k��@<*V\\\\ j\\u0014��5�\\u001b��S�(\\u0019@76ֳ��i$�T\\u0001bt��\\u0001h\\u0001p\\r\\u0015\\u0002!�%*\\b.��\\\\\\\"±ÌM�\\u0004LHY$T$of \\u001bW^j������]T�]\\b�~J@\\u0018ݯ�\\\\��C�\\u0000@����@�5������M�\\u000f�L{j��\\\\\\\"V~r\\u0002Z�\\u0001{�*˪���s%��\\u0018a�\\u0013@\\u0019�X��E6�\\u0018X��G�\\u0002?\\u0012�y(6�5�w|��fa��r\\\\\\\"\\n�9jn�����f�g��Gn7�a}��5�D�G��\\u000b\\u000e9\\\\\\\"\\t\\u0002(*��@�)\\u0017yH���\\u0012�n`]E�7�)r�\\u0011'ȕ����\\u001f��Nю0��I\\u001f�R\\u0015���\\u0007E\\u001e4�\\u0010�'%\\u0004�\\u0019\\u000025���¯�HN�M0\\u001d�\\u001dAu[\\u0011և����SF��Y@o���)\\\\��3��\\u0000t\\u0014�4�\\u001a�f�\\u001eU�\\u001d�\\u0016u2Iȷ\\\\\\\"\\t��U�����&\\n��q���u����\\u000e\\u001eD�\\\\\\\"x#�*�P�\\u001a�-{^����ǚ\\u0007�Ul@R:��<���?fT|\\f�#i�\\u0019.T�(���u:�\\u0003���{|_����NLḠ\\u0017���=�\\u001e\\b�t�G\\u001a��6e\\u0000\\u0011�\\u0015�\\u001d˸���\\u000eNK��6>�E��J??��aM�i]U\\u000bqb,J�/e�#��I\\f�\\u000b\\u0012.:р��#�T\\u0011F5\\n.6��.ɂ�#7;��>��_\\u0001�C�halh�ƬJ\\u0002I\\u0000��a�d8\\u0011�\\u0017�\\u0000�@w\\u001c��,ٱ ��0��\\t�\\u0002��+��\\\\\\\"�w�5�~\\u0015I�Zg]�w\\u0007\\nx'3c�!W\\u0000\\u0016Pl8ם�\\u0007\\n\\u0017��`�>A�qP/n\\u0016�]�'.C<k�$J8����mn\\ro��!1�VȒVV�ʐ\\u0003o��\\n�e�\\u0006\\u0003�\\u0014i\\r�B��@���E\\u0007PX~5hf�&x���GuS�6���p�Y����G�n5�JS\\u0013�\\u001c�c����\\u0005r\\u0012dL\\u001d�vН/�NW�E�Ƶ\\u000b�\\\\s��\\\\�w��\\u001dur>I�2����P��fe�$\\\\�.( <�\\u001a�\\u001f\\u0001�+~��!��fy$A\\u001b�UB\\u0000���\\u000f�N傸s�p�-�y\\u001b����\\u0007�\\u0011��c\\u000fb\\u000f|\\u000fmm��Xoz�H VO���7��ձ1�쵍�̌I\\u0004_�o*߹�>#N��΄q�A\\u001a�=\\u0016���4�J\\u001c�'�\\u0001�\\u0000�l]A��Q�bb���P\\u0010�A�<)\\u0010Ȝ\\u0010C��p|�-o�}ԆS  �\\u0011n����U\\r�A�\\u0017sm�]\\u0002�EZ\\u0018Q�G;��m�)�i�8Y؞�� `�R\\u0000�����z�\\u0011\\u001aj \\u0016\\\\\\\"��oO3;&&>I�6��UmH�ۗ��.�\\u0018���\\u0012y^�7�՜���\\u000e�LY\\u001dC�,v�{\\u0013�\\u0000��'�QP�D�*1!�B,iY��9)/\\\\\\\"��\\u001eS\\f�,����Z#\\u0006\\u0007΍����x�Zk�\\u0003�a�|��!t X��\\u000f:e��\\u000b\\u001eH�.��p\\u0000���m\\u0003�S/\\u000eH\\u0002��z�n:�X�\\u0001g��|���\\u000eA��$��-��h\\u001dRNM����ȏ'����{qAsm�5�\\u00103\\u0005\\u0001�t�:?6D�\\u0016H�7v\\u0016\\u0003jO\\u001e\\u000eB��\\u0002�먣#I\\u0006~�/\\u0003�Qq�4k�\\u0000iw�e��h�n\\t\\t�9�,x\\u0003��|+,��\\u0004�\\u0019,T\\u001d���\\u0000�gCdc�$��ְ\\u001a��U=��\\u001e����$v@\\b\\u0004��5�vY��72+X�\\u000b\\u001e��i�p�E�w �:�(��ar�yzo}<iUC��\\u0002I,\\u0005���e@���\\u0011�=~T\\u001c��\\\\\\\"8�B�B\\u0002H\\u0017��\\u0016lK,n��V�ҋ��bI\\u0004���2�.�?:���&u\\u0015~�O\\u0011T�h��E��V\\u001c�V\\u0004���Hܡ\\u0004��D`�q�\\u001aߍś�[�\\u0007>;�)u���m��(�����6�Ƣ��\\u0007\\u000b����c�D��I>5��>G%^iw<F�\\u0004�yU02�Ǒ�Kٖ���h��q=���ek�OK\\u0011��S7���Υ2;nN<\\u000f3�\\u0015�\\\\�M�<)I77���\\u000e|Ia��7\\u0016[���\\u0000\\u001aGN�\\u0019\\u001b%Q�U6 �W��6f$[Z�\\u0010�\\\\\\\"\\u001d��;|�����\\u0006ͥ��\\\\��1���Fv�\\u0018��M؋[Z���\\u0003��\\u0019S+B\\\\\\\"�\\u0019\\u0015��6�|+9��q�2�q�[^ů��,Y�$�Ǖ�7�ƽ�΂|g�>\\\\�ָ����J\\u0014Jȳ�\\u0004��\\u0017\\u0007uh\\\\\\\"\\u0011*\\u0006\\u000b}M���\\\\\\\"6\\u0004\\u001a��j;'\\u001crR����ȓ�e\\nl\\u0005��\\u0015۽�o2�`��$����\\u00164f>Lq�\\u0011�q}��\\u000ec\\u0002f�ٮ�D�\\u0001\\u00045����c��<�7\\u001eE\\u0018\\u0010/��̙\\u0016Y9-�kkCȥ��R�P�X����%\\u001e\\u0011\\u0002�5+~GK�R�\\u0000e���`S\\u001c��o*$̞t��ऐ�.�\\f)\\u0018�2#P����\\u0016��=��V\\t\\r��.���_��H�TD\\u001d��k\\u0017|�H�\\u000f;��>��[Ƨ���s\\u001a1'r�':a\\\\\\\"��x�Squ�K׸�ϗ\\u0019�\\bP\\u000f\\u001b\\u001d�|���M4D�Yo����vLx�\\u0018�\\\\\\\"��/�+�U�,�9y1��h\\n��y\\\\�yVq�&�:��\\u0019�ǐ�c��\\u0010n-XDx?&ڪ��W-@�#FD�ǉ\\u0006իf��p�[z��FB\\u0005�k\\u001ap)\\u000e\\u001d� �֟�?I'���S\\u0011�1E���h1�\\u0017�秝D��QSȻtҩee\\u0000\\u001bk�V\\u001d�r�9��\\u0007�[�yV�w\\u0018\\\\\\\"B�\\u0018���?Ƭ;�\\u001e�8,��5\\u001e\\u0017���Vg:\\t�<�\\u00191�K���ޛ�1r[\\u0003\\\\\\\"<�\\u0001�'�S���k|̨�E\\bI ��yPR�q���j�+�\\u0013i\\u001cK��|��\\u0003��J�\\t�i�[Ɨ���\\u0000�R�Ǒ]X���z*�թI����h<Mb����\\u00175a*�oU�\\u0016�l8Ax]�#����\\\\\\\"*�q!�{�\\u001e��3�D���J���$q�����L;7x��ƒ)��g�8���\\u001e4?w�8��\\u0011��\\b\\u0018\\u001eB���Q��\\u000e<��2N�1M��Qj++�M��.;F���B���h\\u0016`F�Z��\\t�\\u0018��\\u0002\\u000f6��M��\\u0010\\u0005�*�\\\\\\\"۞�:\\u0012�\\u001eِo����T�Uꆛ�:l�#��@2\\u0012�xr<��.�&\\u001cF%�\\\\\\u0016-rH�\\u0001�)b�(\\u001e\\u0000\\n��6�\\u0013Σc��o{�\\u0010�%\\u0002X�v<�C��Ys�H�P#r\\u0005o�n�\\rJO.Xz\\u001ba�q��\\u000b��`�okڜd~�i`�/�\\u0001�)K�&܅��� lo^�\\u0004Z��ehȻ�G\\u001a�#\\u0004(��h:�ӂZ��Jf��\\\\\\\"źU*T�d�R�\\u0000J�*P\\u0001#1�\\u0003��ζN��\\u001a��\\u000f\\u0011k��(\\n�@�oP��/.1��-�=hl��ȗ�`\\u0014�\\u000b\\u000f*ʥ(B%J�(\\u0000�ߘps#�\\t�{d�\\u0017��\\n﯍4���٘r�`��������q�U)�\\u0012�\\u000e�0���O3K�Ri0�\\u0019q��^B�.ŭo\\u0013z�\\u0017�\\u0005��׫T�\\u0002MS\\u001aGP��\\u001f\\u001a�X��\\u0006�xQP�D���7\\u001b�XN��]����(\\u0006�`lA�R�����\\u0000�}�\\u0001�RI�uֶ�M��\\\\\\\"�t��\\\\gP�3�\\bR\\u0010��\\u000b\\u0002N��ҙdi\\b�n�J�0�%��\\u001b�$���ԧ�-&��<�ŭn���E�u�U$R�a��m������<I��\\u0010\\b�+\\u0018�d~F֭�)ܫ�*T�L�Q\\u0018y���ʁ��56ڇ�@\\u0005��\\u0006ʌ!@�O+�~��*T�\\tT1\\u0002oz�J\\u0000�X\\u0001�R�J\\u0000��{_�x��7\\u0006�R�@J�*P\\u0004�R�\\u0000J�*P\\u0004�R�\\u0000J�*P\\u0004�R�\\u0000J�*P\\u0007����UbU �t�ԢIu�r�Q�x�\\\\\\\"\\u0006\\u0004\\u0000k9#1�\\u0012o�J�,�Hn<+9�\\u0012?!�����K�\\u0001�\\u0014n��5���մq�� �\\u000f\\u001a�Jb6�%���\\u0003�׿�I�^p��\\u001cu\\u0016�jP\\u0004�R�\\u0000J�*P\\u0005J�o^�aj��\\u0010\\u0004�R�\\u0000J�*P\\u0004�R�\\u0000z\\r�\\u0013z�\\u0010\\u0004�R�\\u0000J�*P\\u0004�R�\\u0000J�*P\\u0004�R�\\u0000J�*P\\u0004�R�\\u0000J�*P\\u0004�R�\\u0000J�*P\\u0004�R�\\u0000J�*P\\u0004�R�\\u0000J�*P\\u0004���V�\\u0003T�@�O\\f\\\\\\\"<ǌ\\u0010\\u0014\\u001b�޽l�f\\fTzA\\u001dz��(\\u001a���\\r4f2\\u0000\\u0006ڏ*\\u0019a\\u0000�s�iR��Vf\\u0005&�5�J\\u0000�JQ\\u0002\\u0001p�׫�K-�#Szƥ$�r��NQ��]�@��\\u0012fG\\u000e\\u0000$_O�gR��_9�J�\\u0002�\\u0000\\u001a���Z³�J\\u0010\\u0004���\\u0000�}�u�R*�\\b�|h:�4��\\u001c���2/+\\\\\\\"��n�k\\u001c���p�\\u0002�-aYT�\\\\\\\"�J�1e\\u0000�-�^\\\\��\\n\\u0010\\u0000>\\u0015�JP�O8�L`��Ԧ��\\u0006/r�T/\\u0005�:���B�Jұ ��\\u0003jҥ6�� �%����^��8����ꡋ\\u000e67�\\u000fR�q\\u0001\\u001b���\\u00192�\\u0011:*�C\\\\^�|hE��a�ޥJ@lrX�8�t����JP�\\u0004�k�\\u0005\\n\\b\\u001au�p��N\\u001aȱƌ$ng���\\u001d\\u000f�-�L\\u0003�{�Fk+J��\\u0001\\u0003���Ԛ\\u0006v��)�\\u0003}+ʔ�\\u0004��A\\u001b�$֕*S�%\\u0012����\\u0014\\u0010��ֆ�J\\u0010H|=�XT��Mض������*Q#(R\\u0000[\\u000b���\\u0015(J\\u001c���D&P�mc}*�c,O�1&�ֶ�U,\\u000b�+A<s(\\u0005�ep\\u000eĩ�>?��\\b#��k����\\\\�J@dqԛ��\\\\N�6.4x�\\u001a��,\\u0018�s��R��\\u0001;��\\u0000�2NL��*\\u0017����հ\\u001b�<��_;_��«R�\\u0018C�&�Q �I\\u0000�\\u0012z֙=�|�\\u001a\\u0016�\\u00145�\\u0004�CzWR�&9fߩ{\\u0011a�cR�\\n�h�\\u001boST�tP�\\u000b\\n�\\u001e�,K�\\\\\\\"���ރ�CI�)\\u0019��g��\\u0011!�m���X��9s�\\u0016DT\\u0011�G\\u001b��\\u0005R�!�4Ɲ��I�\\u0006h��;Q�w���1 \\u0012)RA7\\u0017��(\\u0011)�}�T�S�S�\\u0005�#�Z�Ԡ\\n��ʓ%�\\r)�Q�\\u001aZ��*�PN��J\\u0000�\\u0003-�Y�5\\u000f�\\u0000\\u000f.��V���L�}�EQp�\\u0017��\\u001a\\u0012�.*f\\u0000��\\u0000fd�jc`�\\u001d���~��e+짨\\u0011��JjU&րAp-ҥJ��I%�˶���t-\\fq$�ۙ,M�`:|+���6d�#ĊUx�\\u0013�~���\\u0003\\f���\\u0004�2��������r���x�\\u0003Ċ�mA7�߭.�D\\u0001(#ڠ?����FԠ\\u000b�+F��\\u000b(\\u0000_ʙ`~�����HQ�\\\\\\\"�bo���J�Q\\u0000�3���Lfh�IP�\\u0004���Bef>W\\u001eJ\\u0017��k���R�2\\u0007]\\u001b\\u000e+�\\u001b\\u000e��O����o��*R�cq�$�R�P�R�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\tR�J\\u0000�*T�\\u000f��\"","status":200,"headers":{"content-type":"","content-length":"672084"}},"type":2,"external":true,"timestamp":1723918851293}],"browser":{"name":"chromium","version":"119.0.6045.9"},"viewport":{"width":2000,"height":2000},"screenshot":"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","consoleMessages":[{"text":"Unrecognized Content-Security-Policy directive 'prefetch-src'.","level":"error","timestamp":1723918834873},{"text":"[.WebGL-0x247400b3dc00]GL Driver Message (OpenGL, Performance, GL_CLOSE_PATH_NV, High): GPU stall due to ReadPixels","level":"warning","timestamp":1723918851293},{"text":"[.WebGL-0x247400b3dc00]GL Driver Message (OpenGL, Performance, GL_CLOSE_PATH_NV, High): GPU stall due to ReadPixels","level":"warning","timestamp":1723918851293},{"text":"[.WebGL-0x247400b3dc00]GL Driver Message (OpenGL, Performance, GL_CLOSE_PATH_NV, High): GPU stall due to ReadPixels","level":"warning","timestamp":1723918851293},{"text":"[.WebGL-0x247400b3dc00]GL Driver Message (OpenGL, Performance, GL_CLOSE_PATH_NV, High): GPU stall due to ReadPixels (this message will no longer repeat)","level":"warning","timestamp":1723918854088}],"screenshotDelay":10000},"timestamp":1723918834374},"created_at":"2024-08-17T18:21:08.724+00:00","updated_at":"2024-08-17T18:21:08.724+00:00"}