{"version":3,"file":"ThreeJS_Runtime.Dtd-igs4.mjs","names":["an","Ea","sc","N","Z","Bt","mt","V","Ze","W","ge","Ai","Et","Ln","qn","Xn","tr","Oe","ed","St","fe","Zi","od","M","pe","C","ur","fd","De","pr","ji","oc","os","zi","Qe","Yi","hc","lc","Ft","He","cc","Bn","Bi","Be","ke","Oc","Vc","Dc","Ec","Ki","Lc","Uc","Wc","qc","Jc","Xc","Zc","Gc","Hc","Yc","$c","Qc","Kc","jc","Tc","Cc","Ic","Fc","Bc","kc","Vn","zc","Ti","Pc","Rc","Sr","gc","sn","Fa","xc","Nn","jt","Tr","kt","vc","Sc","Gt","Ac","bf","Nc","nn","Dn","vi","rn","Sf","Oi","ei","on","te","xt","Da","ee","Wn","ii","me","Jn","dt","Nt","hn","cn","q","si","Ct","we","Wt","ie","ni","ae","ri","Gn","Y","Xe","td","U","qt","he","Hn","le","oi","ai","Zn","Yn","$n","jn","Qn","Kn","pt","hi","li","ci","_e","ve","Re","ce","ht","id","j","k","sd","ut","nd","Ot","ir","ui","zt","Li","G","es","Ci","rd","ft","pi","fi","sr","ue","nr","Se","rr","or","Ye","Ee","ar","Vt","ad","hr","lr","pn","Xt","$e","ld","Gi","cr","cd","Ie","Ne","dd","is","Zt","vt","Ve","dr","gt","qr","bt","Hi","xe","Ht","Zr","$r","xn","bn","je","Qr","fr","Kr","Dt","ns","mr","gr","eo","wn","Mn","so","_n","vn","Sn","Ce","Kt","ho","Tn","uo","po","fo","In","go","wo","Cn","Mo","zn","vo","Ao","To","Io","Co","Ke","Fn","Po","Pt","ye","kn","_t","de","Eo","se","gi","Ri","be","No","xr","$t","Ae","At","Pn","nl","bi","Ue","We","qe","Je","Ge","Mr","Te","_r","tn","Qe","Lt","ti","Dt","zn","Bt","it","$e","Rr","pn","Cr","Ye","aa","Oe","An","_n","Tt","Xt","Cn","Ht","Be","Mn","Dr","la","ca","ut","Ur","It","pt","yt","pi","fa","Pr","jt","at","ot","Yn","kn","qn","Kn","$n","Gr","hn","an","Zn","De","Sa","Qn","Rn","_a","Zt","ae","Hr","Ea","xa","ln","mt","Sn","Jt","Vt","Ta","kt","nn","Wn","Qa","co","to","Xn","eo","no","un","wn","qt","Kt","Ei","Ze","Gt","St","xo","dt","Ar","tn","Bn","Gn","Hn","bt","mn","oa","Lr","sa","ua","da","Jn","jn","Yr","ei","vo","So","On","xt","Eo","Mo","Xr","zr","Wr","En","cn","Vr","kr","To","ji","na","Ro","ra","er","K","Xi","ke","ne","D","He","We","Ft","J","ie","L","z","O","k","re","se","ce","F","at","Vt","$","le","ue","fe","zt","Ut","C","j","he","me","xe","ge","Bt","be","Ae","Gt","Te","Do","Z","$o","Se","_e","Q","X","$i","ct","Ji","Qi","to","H","no","G","io","oo","yt","nt","Vn","Un","ro","On","kt","wt","Ht","de","xo","yo","bo","ye","Bo","_o","So","we","Yt","Be","xi","Fo","Lo","Oo","fn","Ho","Zo","Si","Ko","_i","Jo","Qt","gn","An","z","y","Ge","M","Je","C","k","Nt","Ne","mt","F","Fe","v","tt","wt","Lt","D","I","S","Xe","K","je","it","Pt","H","z","ct","ze","$","xt","pt","Rt","Ke","et","At","ee","Z","Ue","ut","Ot","rt","W","ot","at","Ce","_t","Y","ft","Mt","$e","It","Tt","ht","lt","dt","Et","q","yt","gt","bt","St","Ze","Qe","Ve","Le","Oe","ve","C","S","O","R","P","N","U","E","G","M","x","B","z","et","j","F","u","_","R","O","L","p","w","E","P","c","computeBoundsTree","disposeBoundsTree","acceleratedRaycast","THREE.LoopOnce","THREE.LoopPingPong","THREE.LoopRepeat","THREE.ImageBitmapLoader","THREE.TextureLoader","THREE.Texture","THREE.Vector3","THREE.Quaternion","THREE.Euler","THREE.Box3","THREE.Vector2","THREE.Frustum","THREE.Matrix4","THREE.Color","React.useLayoutEffect","React.useEffect","THREE.Vector2","THREE.ShaderMaterial","THREE.PlaneGeometry","THREE.Mesh","THREE.Scene","THREE.OrthographicCamera","THREE.Color","THREE.PropertyBinding","THREE.AnimationClip","THREE.Box3","DRACOLoader","GLTFLoader","MeshoptDecoder","THREE.LoadingManager","SkeletonUtils.clone","THREE.CanvasTexture","THREE.BufferGeometry","THREE.BufferAttribute","THREE.ShaderMaterial","THREE.Points","THREE.DataTexture","THREE.RedFormat","THREE.NearestFilter","THREE.RepeatWrapping","THREE.SRGBColorSpace","THREE.MeshPhysicalMaterial","THREE.MeshToonMaterial","THREE.Color","THREE.Vector2","THREE.MeshBasicMaterial","THREE.Vector3","THREE.SkinnedMesh","THREE.Mesh","THREE.PlaneGeometry","THREE.MeshStandardMaterial","THREE.Group","THREE.SpotLight","THREE.PointLight","THREE.PMREMGenerator","THREE.Scene","THREE.ShaderMaterial","THREE.Vector3","THREE.Mesh","THREE.SphereGeometry","THREE.MeshBasicMaterial","THREE.Color","THREE.PlaneGeometry","THREE.Vector3","THREE.Euler","useRef","useState","useId","THREE.WebGLRenderer","THREE.SRGBColorSpace","THREE.Scene","THREE.OrthographicCamera","THREE.PerspectiveCamera","THREE.StereoCamera","OrbitControls","THREE.AmbientLight","THREE.DirectionalLight","THREE.HemisphereLight","THREE.BufferGeometry","THREE.BufferAttribute","THREE.PointsMaterial","THREE.Points","THREE.Mesh","THREE.PlaneGeometry","THREE.ShadowMaterial","THREE.WebGLRenderTarget","THREE.HalfFloatType","THREE.RGBAFormat","THREE.LinearFilter","THREE.Vector2","THREE.Color","THREE.Raycaster","THREE.Vector3","THREE.LoopRepeat","THREE.LoopPingPong","THREE.LoopOnce","THREE.Plane","THREE.Group","THREE.AxesHelper","THREE.AnimationMixer","THREE.GridHelper","createPortal","DRACOLoader","GLTFLoader","MeshoptDecoder","THREE.SRGBColorSpace","THREE.PlaneGeometry","THREE.MeshBasicMaterial","THREE.Mesh","THREE.Vector3","THREE.Matrix4","THREE.InstancedMesh","BufferGeometryUtils.mergeGeometries","THREE.Color","THREE.BufferGeometry","THREE.BufferAttribute","THREE.PointsMaterial","THREE.Points","THREE.ShadowMaterial","THREE.WebGLRenderTarget","THREE.HalfFloatType","THREE.RGBAFormat","THREE.LinearFilter","THREE.Vector2","THREE.GridHelper","THREE.AxesHelper","THREE.OrthographicCamera","THREE.PerspectiveCamera","THREE.StereoCamera","THREE.Scene","THREE.AmbientLight","THREE.DirectionalLight","THREE.HemisphereLight","THREE.Timer","THREE.LoopOnce","THREE.LoopPingPong","THREE.LoopRepeat","THREE.Raycaster","THREE.Spherical","THREE.Plane","THREE.Box3","SkeletonUtils.clone","THREE.AnimationMixer","React.useRef","React.useState","THREE.WebGLRenderer","_Fragment","React.memo"],"sources":["https:/esm.sh/three@0.183.2/es2022/build/three.core.mjs","https:/esm.sh/three@0.183.2/es2022/three.mjs","https:/esm.sh/three@0.183.2","https:/esm.sh/three-mesh-bvh@0.8.2/X-ZHRocmVlQDAuMTgzLjI/es2022/three-mesh-bvh.mjs","https:/esm.sh/three-mesh-bvh@0.8.2?deps=three@0.183.2","https:/esm.sh/three@0.183.2/es2022/examples/jsm/libs/meshopt_decoder.module.mjs","https:/esm.sh/three@0.183.2/examples/jsm/libs/meshopt_decoder.module.js?deps=three@0.183.2","https:/esm.sh/three@0.183.2/es2022/examples/jsm/loaders/GLTFLoader.mjs","https:/esm.sh/three@0.183.2/examples/jsm/loaders/GLTFLoader.js?deps=three@0.183.2","https:/esm.sh/three@0.183.2/es2022/examples/jsm/loaders/DRACOLoader.mjs","https:/esm.sh/three@0.183.2/examples/jsm/loaders/DRACOLoader.js?deps=three@0.183.2","https:/esm.sh/three@0.183.2/es2022/examples/jsm/utils/SkeletonUtils.mjs","https:/esm.sh/three@0.183.2/examples/jsm/utils/SkeletonUtils.js?deps=three@0.183.2","https:/esm.sh/three@0.183.2/es2022/examples/jsm/utils/BufferGeometryUtils.mjs","https:/esm.sh/three@0.183.2/examples/jsm/utils/BufferGeometryUtils.js?deps=three@0.183.2","https:/esm.sh/three@0.183.2/es2022/examples/jsm/controls/OrbitControls.mjs","https:/esm.sh/three@0.183.2/examples/jsm/controls/OrbitControls.js?deps=three@0.183.2","https:/framerusercontent.com/modules/YeYAFpMfJfcs2D9mfKFW/DDv12VyHhTY27qyXtQ6t/deps.js","https:/framerusercontent.com/modules/urxcwcToMwyEWH05dzo6/cUcLUwBj9Qei2vxq7YKV/constants.js","https:/framerusercontent.com/modules/skuA7xWTM73AnSOFKd3r/grwUaKbGSWUnvDWJx4xe/propertyControls.js","https:/framerusercontent.com/modules/rQr0QSqhMAFMOLIQZWpx/FeqTSuxAxSKs6XpNd793/hashes.js","https:/framerusercontent.com/modules/ZMoE0e8TTc5hP09MepLT/EF6CGI7iUmZM5FG6LLYY/animationUtils.js","https:/framerusercontent.com/modules/NDTJ5ADDpfKTGmrlCCF2/Sku50RC96WdXH0Q17gRv/state.js","https:/framerusercontent.com/modules/KDgXKUZDtOlVMTgk4xzC/l9KsabZZFC3I7R1x10GN/postprocessing.js","https:/framerusercontent.com/modules/vGvxKBAQuEl5qBVTPruS/STnvRXy146qx84LkzO8J/formatAndColor.js","https:/framerusercontent.com/modules/EXMWoXo4BL9Mi3BANYjN/dfPpXZHxlbT43jn2Ry5l/coordinator.js","https:/framerusercontent.com/modules/OcrnvbBWJ00imtCNulvV/ECeJBxCrq22P47xccZti/renderMetrics.js","https:/framerusercontent.com/modules/zmx71qwu2TbY9YO9I2f5/5N7CD3udL4rE1txQaU17/object3DUtils.js","https:/framerusercontent.com/modules/jz5beOl0SxBa2FLaAvkX/GRqx0bNbnn5oQtMBqM55/modelLoading.js","https:/framerusercontent.com/modules/TeSbfetwTP8U0VZWwTlf/TweTf7k9xt4eaTedtgHr/materialSystem.js","https:/framerusercontent.com/modules/UATfUROvEvWK8jHDY9bj/Q1SBg2DsVIYCYR1cvaYG/lighting.js","https:/framerusercontent.com/modules/zwopdMIjvlpx1ZSF2U25/4sJz6JchqGmISWzqGeGT/environment.js","https:/framerusercontent.com/modules/D0qFzYPgVWq5uzUVdTNq/6cvZ9EORoJ20sh3iSQXN/runtimeGlue.js","https:/framerusercontent.com/modules/p9UElCqUo2EhVe2TH3ba/IJdmEZdowZxtu0vC2vAr/bridge.js","https:/framerusercontent.com/modules/D31ZVnHevwcx09NbgNlK/gAH5hQZ6zgGecf46mlbw/diagnostics.js","https:/framerusercontent.com/modules/EIWij9Oh1iXGinLQwMna/EIjbhJPKJTRs6ZavV2WL/statsMonitor.js","https:/framerusercontent.com/modules/32Efoe7eFeuyoLuzx9ZW/ungKBsUvu95nwLDbDMw7/sceneTransforms.js","https:/framerusercontent.com/modules/eBQiBPIUI8umJseUYpvB/UbPSA4sy4TxWfG3kVyfR/configResolution.js","https:/framerusercontent.com/modules/A88Jq1D176bZgp9Jdto1/TXHIfc3fJ7pTbveWbn9q/slotRuntime.js","https:/framerusercontent.com/modules/TQqgo7f4M8CfLELulofs/slbcdA7zLhV9v7VroZbp/rootRuntime.js","https:/framerusercontent.com/modules/hJE1Ek1JQQwQMuCfL00L/oIewp0fTNUB1WQ0kykJC/ThreeJS_Runtime.js"],"sourcesContent":["/* esm.sh - three@0.183.2/build/three.core */\nvar vp=\"183\",Sp={LEFT:0,MIDDLE:1,RIGHT:2,ROTATE:0,DOLLY:1,PAN:2},Ap={ROTATE:0,PAN:1,DOLLY_PAN:2,DOLLY_ROTATE:3},Tp=0,Ip=1,Cp=2,zp=3,Fp=0,Bp=1,kp=2,Pp=3,Sr=0,gc=1,Rp=2,Op=0,ba=1,Ep=2,Np=3,Vp=4,Dp=5,Lp=6,wa=100,Up=101,Wp=102,qp=103,Jp=104,Gp=200,Xp=201,Hp=202,Zp=203,Ma=204,_a=205,Yp=206,$p=207,jp=208,Qp=209,Kp=210,tf=211,ef=212,sf=213,nf=214,va=0,Sa=1,Aa=2,sn=3,Ta=4,Ia=5,Ca=6,za=7,ia=0,rf=1,of=2,af=0,hf=1,lf=2,cf=3,uf=4,df=5,pf=6,ff=7,Fa=\"attached\",xc=\"detached\",sa=300,Nn=301,bc=302,wc=303,Mc=304,_c=306,Ar=1e3,jt=1001,Tr=1002,kt=1003,vc=1004,mf=1004,Sc=1005,yf=1005,Gt=1006,Ac=1007,gf=1007,na=1008,xf=1008,ra=1009,Tc=1010,Ic=1011,Cc=1012,zc=1013,Vn=1014,Ti=1015,Fc=1016,Bc=1017,kc=1018,bf=1020,Pc=35902,Rc=35899,Oc=1021,Ec=1022,Ki=1023,Ir=1026,Nc=1027,Ql=1028,Kl=1029,Vc=1030,Dc=1031,wf=1032,Lc=1033,Uc=33776,Wc=33777,qc=33778,Jc=33779,Gc=35840,Xc=35841,Hc=35842,Zc=35843,Yc=36196,$c=37492,jc=37496,Qc=37488,Kc=37489,tu=37490,eu=37491,iu=37808,su=37809,nu=37810,ru=37811,ou=37812,au=37813,hu=37814,lu=37815,cu=37816,uu=37817,du=37818,pu=37819,fu=37820,mu=37821,yu=36492,gu=36494,xu=36495,bu=36283,wu=36284,Mu=36285,_u=36286,vu=2200,Su=2201,Au=2202,nn=2300,Cr=2301,Dn=2302,Ba=2303,_i=2400,vi=2401,rn=2402,oa=2500,tc=2501,Mf=0,_f=1,vf=2,Tu=3200,Sf=3201,Af=3202,Tf=3203,Oi=0,If=1,ec=\"\",Et=\"srgb\",ka=\"srgb-linear\",Pa=\"linear\",Ln=\"srgb\",Cf=\"\",zf=\"rg\",Ff=\"ga\",Bf=0,ei=7680,kf=7681,Pf=7682,Rf=7683,Of=34055,Ef=34056,Nf=5386,Vf=512,Df=513,Lf=514,Uf=515,Wf=516,qf=517,Jf=518,Ra=519,Gf=512,Xf=513,Hf=514,Zf=515,Yf=516,$f=517,jf=518,Qf=519,on=35044,Kf=35048,tm=35040,em=35045,im=35049,sm=35041,nm=35046,rm=35050,om=35042,am=\"100\",hm=\"300 es\",Qt=2e3,Ii=2001,lm={COMPUTE:\"compute\",RENDER:\"render\"},cm={PERSPECTIVE:\"perspective\",LINEAR:\"linear\",FLAT:\"flat\"},um={NORMAL:\"normal\",CENTROID:\"centroid\",SAMPLE:\"sample\",FIRST:\"first\",EITHER:\"either\"},dm={TEXTURE_COMPARE:\"depthTextureCompare\"};function Iu(h){for(let t=h.length-1;t>=0;--t)if(h[t]>=65535)return!0;return!1}var Cu={Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array};function Si(h,t){return new Cu[h](t)}function ic(h){return ArrayBuffer.isView(h)&&!(h instanceof DataView)}function an(h){return document.createElementNS(\"http://www.w3.org/1999/xhtml\",h)}function pm(){let h=an(\"canvas\");return h.style.display=\"block\",h}var Oa={},ze=null;function fm(h){ze=h}function mm(){return ze}function Ea(...h){let t=\"THREE.\"+h.shift();ze?ze(\"log\",t,...h):console.log(t,...h)}function sc(h){let t=h[0];if(typeof t==\"string\"&&t.startsWith(\"TSL:\")){let e=h[1];e&&e.isStackTrace?h[0]+=\" \"+e.getLocation():h[1]='Stack trace not available. Enable \"THREE.Node.captureStackTrace\" to capture stack traces.'}return h}function N(...h){h=sc(h);let t=\"THREE.\"+h.shift();if(ze)ze(\"warn\",t,...h);else{let e=h[0];e&&e.isStackTrace?console.warn(e.getError(t)):console.warn(t,...h)}}function Z(...h){h=sc(h);let t=\"THREE.\"+h.shift();if(ze)ze(\"error\",t,...h);else{let e=h[0];e&&e.isStackTrace?console.error(e.getError(t)):console.error(t,...h)}}function Na(...h){let t=h.join(\" \");t in Oa||(Oa[t]=!0,N(...h))}function ym(h,t,e){return new Promise(function(i,s){function n(){switch(h.clientWaitSync(t,h.SYNC_FLUSH_COMMANDS_BIT,0)){case h.WAIT_FAILED:s();break;case h.TIMEOUT_EXPIRED:setTimeout(n,e);break;default:i()}}setTimeout(n,e)})}var gm={[va]:Sa,[Aa]:Ca,[Ta]:za,[sn]:Ia,[Sa]:va,[Ca]:Aa,[za]:Ta,[Ia]:sn},te=class{addEventListener(t,e){this._listeners===void 0&&(this._listeners={});let i=this._listeners;i[t]===void 0&&(i[t]=[]),i[t].indexOf(e)===-1&&i[t].push(e)}hasEventListener(t,e){let i=this._listeners;return i===void 0?!1:i[t]!==void 0&&i[t].indexOf(e)!==-1}removeEventListener(t,e){let i=this._listeners;if(i===void 0)return;let s=i[t];if(s!==void 0){let n=s.indexOf(e);n!==-1&&s.splice(n,1)}}dispatchEvent(t){let e=this._listeners;if(e===void 0)return;let i=e[t.type];if(i!==void 0){t.target=this;let s=i.slice(0);for(let n=0,r=s.length;n<r;n++)s[n].call(this,t);t.target=null}}},mt=[\"00\",\"01\",\"02\",\"03\",\"04\",\"05\",\"06\",\"07\",\"08\",\"09\",\"0a\",\"0b\",\"0c\",\"0d\",\"0e\",\"0f\",\"10\",\"11\",\"12\",\"13\",\"14\",\"15\",\"16\",\"17\",\"18\",\"19\",\"1a\",\"1b\",\"1c\",\"1d\",\"1e\",\"1f\",\"20\",\"21\",\"22\",\"23\",\"24\",\"25\",\"26\",\"27\",\"28\",\"29\",\"2a\",\"2b\",\"2c\",\"2d\",\"2e\",\"2f\",\"30\",\"31\",\"32\",\"33\",\"34\",\"35\",\"36\",\"37\",\"38\",\"39\",\"3a\",\"3b\",\"3c\",\"3d\",\"3e\",\"3f\",\"40\",\"41\",\"42\",\"43\",\"44\",\"45\",\"46\",\"47\",\"48\",\"49\",\"4a\",\"4b\",\"4c\",\"4d\",\"4e\",\"4f\",\"50\",\"51\",\"52\",\"53\",\"54\",\"55\",\"56\",\"57\",\"58\",\"59\",\"5a\",\"5b\",\"5c\",\"5d\",\"5e\",\"5f\",\"60\",\"61\",\"62\",\"63\",\"64\",\"65\",\"66\",\"67\",\"68\",\"69\",\"6a\",\"6b\",\"6c\",\"6d\",\"6e\",\"6f\",\"70\",\"71\",\"72\",\"73\",\"74\",\"75\",\"76\",\"77\",\"78\",\"79\",\"7a\",\"7b\",\"7c\",\"7d\",\"7e\",\"7f\",\"80\",\"81\",\"82\",\"83\",\"84\",\"85\",\"86\",\"87\",\"88\",\"89\",\"8a\",\"8b\",\"8c\",\"8d\",\"8e\",\"8f\",\"90\",\"91\",\"92\",\"93\",\"94\",\"95\",\"96\",\"97\",\"98\",\"99\",\"9a\",\"9b\",\"9c\",\"9d\",\"9e\",\"9f\",\"a0\",\"a1\",\"a2\",\"a3\",\"a4\",\"a5\",\"a6\",\"a7\",\"a8\",\"a9\",\"aa\",\"ab\",\"ac\",\"ad\",\"ae\",\"af\",\"b0\",\"b1\",\"b2\",\"b3\",\"b4\",\"b5\",\"b6\",\"b7\",\"b8\",\"b9\",\"ba\",\"bb\",\"bc\",\"bd\",\"be\",\"bf\",\"c0\",\"c1\",\"c2\",\"c3\",\"c4\",\"c5\",\"c6\",\"c7\",\"c8\",\"c9\",\"ca\",\"cb\",\"cc\",\"cd\",\"ce\",\"cf\",\"d0\",\"d1\",\"d2\",\"d3\",\"d4\",\"d5\",\"d6\",\"d7\",\"d8\",\"d9\",\"da\",\"db\",\"dc\",\"dd\",\"de\",\"df\",\"e0\",\"e1\",\"e2\",\"e3\",\"e4\",\"e5\",\"e6\",\"e7\",\"e8\",\"e9\",\"ea\",\"eb\",\"ec\",\"ed\",\"ee\",\"ef\",\"f0\",\"f1\",\"f2\",\"f3\",\"f4\",\"f5\",\"f6\",\"f7\",\"f8\",\"f9\",\"fa\",\"fb\",\"fc\",\"fd\",\"fe\",\"ff\"],Va=1234567,Ze=Math.PI/180,ts=180/Math.PI;function Bt(){let h=Math.random()*4294967295|0,t=Math.random()*4294967295|0,e=Math.random()*4294967295|0,i=Math.random()*4294967295|0;return(mt[h&255]+mt[h>>8&255]+mt[h>>16&255]+mt[h>>24&255]+\"-\"+mt[t&255]+mt[t>>8&255]+\"-\"+mt[t>>16&15|64]+mt[t>>24&255]+\"-\"+mt[e&63|128]+mt[e>>8&255]+\"-\"+mt[e>>16&255]+mt[e>>24&255]+mt[i&255]+mt[i>>8&255]+mt[i>>16&255]+mt[i>>24&255]).toLowerCase()}function V(h,t,e){return Math.max(t,Math.min(e,h))}function aa(h,t){return(h%t+t)%t}function zu(h,t,e,i,s){return i+(h-t)*(s-i)/(e-t)}function Fu(h,t,e){return h!==t?(e-h)/(t-h):0}function $i(h,t,e){return(1-e)*h+e*t}function Bu(h,t,e,i){return $i(h,t,1-Math.exp(-e*i))}function ku(h,t=1){return t-Math.abs(aa(h,t*2)-t)}function Pu(h,t,e){return h<=t?0:h>=e?1:(h=(h-t)/(e-t),h*h*(3-2*h))}function Ru(h,t,e){return h<=t?0:h>=e?1:(h=(h-t)/(e-t),h*h*h*(h*(h*6-15)+10))}function Ou(h,t){return h+Math.floor(Math.random()*(t-h+1))}function Eu(h,t){return h+Math.random()*(t-h)}function Nu(h){return h*(.5-Math.random())}function Vu(h){h!==void 0&&(Va=h);let t=Va+=1831565813;return t=Math.imul(t^t>>>15,t|1),t^=t+Math.imul(t^t>>>7,t|61),((t^t>>>14)>>>0)/4294967296}function Du(h){return h*Ze}function Lu(h){return h*ts}function Uu(h){return(h&h-1)===0&&h!==0}function Wu(h){return Math.pow(2,Math.ceil(Math.log(h)/Math.LN2))}function qu(h){return Math.pow(2,Math.floor(Math.log(h)/Math.LN2))}function Ju(h,t,e,i,s){let n=Math.cos,r=Math.sin,o=n(e/2),a=r(e/2),l=n((t+i)/2),c=r((t+i)/2),u=n((t-i)/2),d=r((t-i)/2),p=n((i-t)/2),f=r((i-t)/2);switch(s){case\"XYX\":h.set(o*c,a*u,a*d,o*l);break;case\"YZY\":h.set(a*d,o*c,a*u,o*l);break;case\"ZXZ\":h.set(a*u,a*d,o*c,o*l);break;case\"XZX\":h.set(o*c,a*f,a*p,o*l);break;case\"YXY\":h.set(a*p,o*c,a*f,o*l);break;case\"ZYZ\":h.set(a*f,a*p,o*c,o*l);break;default:N(\"MathUtils: .setQuaternionFromProperEuler() encountered an unknown order: \"+s)}}function Mt(h,t){switch(t.constructor){case Float32Array:return h;case Uint32Array:return h/4294967295;case Uint16Array:return h/65535;case Uint8Array:return h/255;case Int32Array:return Math.max(h/2147483647,-1);case Int16Array:return Math.max(h/32767,-1);case Int8Array:return Math.max(h/127,-1);default:throw new Error(\"Invalid component type.\")}}function W(h,t){switch(t.constructor){case Float32Array:return h;case Uint32Array:return Math.round(h*4294967295);case Uint16Array:return Math.round(h*65535);case Uint8Array:return Math.round(h*255);case Int32Array:return Math.round(h*2147483647);case Int16Array:return Math.round(h*32767);case Int8Array:return Math.round(h*127);default:throw new Error(\"Invalid component type.\")}}var xm={DEG2RAD:Ze,RAD2DEG:ts,generateUUID:Bt,clamp:V,euclideanModulo:aa,mapLinear:zu,inverseLerp:Fu,lerp:$i,damp:Bu,pingpong:ku,smoothstep:Pu,smootherstep:Ru,randInt:Ou,randFloat:Eu,randFloatSpread:Nu,seededRandom:Vu,degToRad:Du,radToDeg:Lu,isPowerOfTwo:Uu,ceilPowerOfTwo:Wu,floorPowerOfTwo:qu,setQuaternionFromProperEuler:Ju,normalize:W,denormalize:Mt},C=class h{constructor(t=0,e=0){h.prototype.isVector2=!0,this.x=t,this.y=e}get width(){return this.x}set width(t){this.x=t}get height(){return this.y}set height(t){this.y=t}set(t,e){return this.x=t,this.y=e,this}setScalar(t){return this.x=t,this.y=t,this}setX(t){return this.x=t,this}setY(t){return this.y=t,this}setComponent(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;default:throw new Error(\"index is out of range: \"+t)}return this}getComponent(t){switch(t){case 0:return this.x;case 1:return this.y;default:throw new Error(\"index is out of range: \"+t)}}clone(){return new this.constructor(this.x,this.y)}copy(t){return this.x=t.x,this.y=t.y,this}add(t){return this.x+=t.x,this.y+=t.y,this}addScalar(t){return this.x+=t,this.y+=t,this}addVectors(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this}addScaledVector(t,e){return this.x+=t.x*e,this.y+=t.y*e,this}sub(t){return this.x-=t.x,this.y-=t.y,this}subScalar(t){return this.x-=t,this.y-=t,this}subVectors(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this}multiply(t){return this.x*=t.x,this.y*=t.y,this}multiplyScalar(t){return this.x*=t,this.y*=t,this}divide(t){return this.x/=t.x,this.y/=t.y,this}divideScalar(t){return this.multiplyScalar(1/t)}applyMatrix3(t){let e=this.x,i=this.y,s=t.elements;return this.x=s[0]*e+s[3]*i+s[6],this.y=s[1]*e+s[4]*i+s[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=V(this.x,t.x,e.x),this.y=V(this.y,t.y,e.y),this}clampScalar(t,e){return this.x=V(this.x,t,e),this.y=V(this.y,t,e),this}clampLength(t,e){let i=this.length();return this.divideScalar(i||1).multiplyScalar(V(i,t,e))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this}negate(){return this.x=-this.x,this.y=-this.y,this}dot(t){return this.x*t.x+this.y*t.y}cross(t){return this.x*t.y-this.y*t.x}lengthSq(){return this.x*this.x+this.y*this.y}length(){return Math.sqrt(this.x*this.x+this.y*this.y)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)}normalize(){return this.divideScalar(this.length()||1)}angle(){return Math.atan2(-this.y,-this.x)+Math.PI}angleTo(t){let e=Math.sqrt(this.lengthSq()*t.lengthSq());if(e===0)return Math.PI/2;let i=this.dot(t)/e;return Math.acos(V(i,-1,1))}distanceTo(t){return Math.sqrt(this.distanceToSquared(t))}distanceToSquared(t){let e=this.x-t.x,i=this.y-t.y;return e*e+i*i}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,i){return this.x=t.x+(e.x-t.x)*i,this.y=t.y+(e.y-t.y)*i,this}equals(t){return t.x===this.x&&t.y===this.y}fromArray(t,e=0){return this.x=t[e],this.y=t[e+1],this}toArray(t=[],e=0){return t[e]=this.x,t[e+1]=this.y,t}fromBufferAttribute(t,e){return this.x=t.getX(e),this.y=t.getY(e),this}rotateAround(t,e){let i=Math.cos(e),s=Math.sin(e),n=this.x-t.x,r=this.y-t.y;return this.x=n*i-r*s+t.x,this.y=n*s+r*i+t.y,this}random(){return this.x=Math.random(),this.y=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y}},xt=class{constructor(t=0,e=0,i=0,s=1){this.isQuaternion=!0,this._x=t,this._y=e,this._z=i,this._w=s}static slerpFlat(t,e,i,s,n,r,o){let a=i[s+0],l=i[s+1],c=i[s+2],u=i[s+3],d=n[r+0],p=n[r+1],f=n[r+2],m=n[r+3];if(u!==m||a!==d||l!==p||c!==f){let g=a*d+l*p+c*f+u*m;g<0&&(d=-d,p=-p,f=-f,m=-m,g=-g);let y=1-o;if(g<.9995){let x=Math.acos(g),b=Math.sin(x);y=Math.sin(y*x)/b,o=Math.sin(o*x)/b,a=a*y+d*o,l=l*y+p*o,c=c*y+f*o,u=u*y+m*o}else{a=a*y+d*o,l=l*y+p*o,c=c*y+f*o,u=u*y+m*o;let x=1/Math.sqrt(a*a+l*l+c*c+u*u);a*=x,l*=x,c*=x,u*=x}}t[e]=a,t[e+1]=l,t[e+2]=c,t[e+3]=u}static multiplyQuaternionsFlat(t,e,i,s,n,r){let o=i[s],a=i[s+1],l=i[s+2],c=i[s+3],u=n[r],d=n[r+1],p=n[r+2],f=n[r+3];return t[e]=o*f+c*u+a*p-l*d,t[e+1]=a*f+c*d+l*u-o*p,t[e+2]=l*f+c*p+o*d-a*u,t[e+3]=c*f-o*u-a*d-l*p,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,i,s){return this._x=t,this._y=e,this._z=i,this._w=s,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._w)}copy(t){return this._x=t.x,this._y=t.y,this._z=t.z,this._w=t.w,this._onChangeCallback(),this}setFromEuler(t,e=!0){let i=t._x,s=t._y,n=t._z,r=t._order,o=Math.cos,a=Math.sin,l=o(i/2),c=o(s/2),u=o(n/2),d=a(i/2),p=a(s/2),f=a(n/2);switch(r){case\"XYZ\":this._x=d*c*u+l*p*f,this._y=l*p*u-d*c*f,this._z=l*c*f+d*p*u,this._w=l*c*u-d*p*f;break;case\"YXZ\":this._x=d*c*u+l*p*f,this._y=l*p*u-d*c*f,this._z=l*c*f-d*p*u,this._w=l*c*u+d*p*f;break;case\"ZXY\":this._x=d*c*u-l*p*f,this._y=l*p*u+d*c*f,this._z=l*c*f+d*p*u,this._w=l*c*u-d*p*f;break;case\"ZYX\":this._x=d*c*u-l*p*f,this._y=l*p*u+d*c*f,this._z=l*c*f-d*p*u,this._w=l*c*u+d*p*f;break;case\"YZX\":this._x=d*c*u+l*p*f,this._y=l*p*u+d*c*f,this._z=l*c*f-d*p*u,this._w=l*c*u-d*p*f;break;case\"XZY\":this._x=d*c*u-l*p*f,this._y=l*p*u-d*c*f,this._z=l*c*f+d*p*u,this._w=l*c*u+d*p*f;break;default:N(\"Quaternion: .setFromEuler() encountered an unknown order: \"+r)}return e===!0&&this._onChangeCallback(),this}setFromAxisAngle(t,e){let i=e/2,s=Math.sin(i);return this._x=t.x*s,this._y=t.y*s,this._z=t.z*s,this._w=Math.cos(i),this._onChangeCallback(),this}setFromRotationMatrix(t){let e=t.elements,i=e[0],s=e[4],n=e[8],r=e[1],o=e[5],a=e[9],l=e[2],c=e[6],u=e[10],d=i+o+u;if(d>0){let p=.5/Math.sqrt(d+1);this._w=.25/p,this._x=(c-a)*p,this._y=(n-l)*p,this._z=(r-s)*p}else if(i>o&&i>u){let p=2*Math.sqrt(1+i-o-u);this._w=(c-a)/p,this._x=.25*p,this._y=(s+r)/p,this._z=(n+l)/p}else if(o>u){let p=2*Math.sqrt(1+o-i-u);this._w=(n-l)/p,this._x=(s+r)/p,this._y=.25*p,this._z=(a+c)/p}else{let p=2*Math.sqrt(1+u-i-o);this._w=(r-s)/p,this._x=(n+l)/p,this._y=(a+c)/p,this._z=.25*p}return this._onChangeCallback(),this}setFromUnitVectors(t,e){let i=t.dot(e)+1;return i<1e-8?(i=0,Math.abs(t.x)>Math.abs(t.z)?(this._x=-t.y,this._y=t.x,this._z=0,this._w=i):(this._x=0,this._y=-t.z,this._z=t.y,this._w=i)):(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=i),this.normalize()}angleTo(t){return 2*Math.acos(Math.abs(V(this.dot(t),-1,1)))}rotateTowards(t,e){let i=this.angleTo(t);if(i===0)return this;let s=Math.min(1,e/i);return this.slerp(t,s),this}identity(){return this.set(0,0,0,1)}invert(){return this.conjugate()}conjugate(){return this._x*=-1,this._y*=-1,this._z*=-1,this._onChangeCallback(),this}dot(t){return this._x*t._x+this._y*t._y+this._z*t._z+this._w*t._w}lengthSq(){return this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w}length(){return Math.sqrt(this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w)}normalize(){let t=this.length();return t===0?(this._x=0,this._y=0,this._z=0,this._w=1):(t=1/t,this._x=this._x*t,this._y=this._y*t,this._z=this._z*t,this._w=this._w*t),this._onChangeCallback(),this}multiply(t){return this.multiplyQuaternions(this,t)}premultiply(t){return this.multiplyQuaternions(t,this)}multiplyQuaternions(t,e){let i=t._x,s=t._y,n=t._z,r=t._w,o=e._x,a=e._y,l=e._z,c=e._w;return this._x=i*c+r*o+s*l-n*a,this._y=s*c+r*a+n*o-i*l,this._z=n*c+r*l+i*a-s*o,this._w=r*c-i*o-s*a-n*l,this._onChangeCallback(),this}slerp(t,e){let i=t._x,s=t._y,n=t._z,r=t._w,o=this.dot(t);o<0&&(i=-i,s=-s,n=-n,r=-r,o=-o);let a=1-e;if(o<.9995){let l=Math.acos(o),c=Math.sin(l);a=Math.sin(a*l)/c,e=Math.sin(e*l)/c,this._x=this._x*a+i*e,this._y=this._y*a+s*e,this._z=this._z*a+n*e,this._w=this._w*a+r*e,this._onChangeCallback()}else this._x=this._x*a+i*e,this._y=this._y*a+s*e,this._z=this._z*a+n*e,this._w=this._w*a+r*e,this.normalize();return this}slerpQuaternions(t,e,i){return this.copy(t).slerp(e,i)}random(){let t=2*Math.PI*Math.random(),e=2*Math.PI*Math.random(),i=Math.random(),s=Math.sqrt(1-i),n=Math.sqrt(i);return this.set(s*Math.sin(t),s*Math.cos(t),n*Math.sin(e),n*Math.cos(e))}equals(t){return t._x===this._x&&t._y===this._y&&t._z===this._z&&t._w===this._w}fromArray(t,e=0){return this._x=t[e],this._y=t[e+1],this._z=t[e+2],this._w=t[e+3],this._onChangeCallback(),this}toArray(t=[],e=0){return t[e]=this._x,t[e+1]=this._y,t[e+2]=this._z,t[e+3]=this._w,t}fromBufferAttribute(t,e){return this._x=t.getX(e),this._y=t.getY(e),this._z=t.getZ(e),this._w=t.getW(e),this._onChangeCallback(),this}toJSON(){return this.toArray()}_onChange(t){return this._onChangeCallback=t,this}_onChangeCallback(){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._w}},M=class h{constructor(t=0,e=0,i=0){h.prototype.isVector3=!0,this.x=t,this.y=e,this.z=i}set(t,e,i){return i===void 0&&(i=this.z),this.x=t,this.y=e,this.z=i,this}setScalar(t){return this.x=t,this.y=t,this.z=t,this}setX(t){return this.x=t,this}setY(t){return this.y=t,this}setZ(t){return this.z=t,this}setComponent(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;case 2:this.z=e;break;default:throw new Error(\"index is out of range: \"+t)}return this}getComponent(t){switch(t){case 0:return this.x;case 1:return this.y;case 2:return this.z;default:throw new Error(\"index is out of range: \"+t)}}clone(){return new this.constructor(this.x,this.y,this.z)}copy(t){return this.x=t.x,this.y=t.y,this.z=t.z,this}add(t){return this.x+=t.x,this.y+=t.y,this.z+=t.z,this}addScalar(t){return this.x+=t,this.y+=t,this.z+=t,this}addVectors(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this.z=t.z+e.z,this}addScaledVector(t,e){return this.x+=t.x*e,this.y+=t.y*e,this.z+=t.z*e,this}sub(t){return this.x-=t.x,this.y-=t.y,this.z-=t.z,this}subScalar(t){return this.x-=t,this.y-=t,this.z-=t,this}subVectors(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this.z=t.z-e.z,this}multiply(t){return this.x*=t.x,this.y*=t.y,this.z*=t.z,this}multiplyScalar(t){return this.x*=t,this.y*=t,this.z*=t,this}multiplyVectors(t,e){return this.x=t.x*e.x,this.y=t.y*e.y,this.z=t.z*e.z,this}applyEuler(t){return this.applyQuaternion(Da.setFromEuler(t))}applyAxisAngle(t,e){return this.applyQuaternion(Da.setFromAxisAngle(t,e))}applyMatrix3(t){let e=this.x,i=this.y,s=this.z,n=t.elements;return this.x=n[0]*e+n[3]*i+n[6]*s,this.y=n[1]*e+n[4]*i+n[7]*s,this.z=n[2]*e+n[5]*i+n[8]*s,this}applyNormalMatrix(t){return this.applyMatrix3(t).normalize()}applyMatrix4(t){let e=this.x,i=this.y,s=this.z,n=t.elements,r=1/(n[3]*e+n[7]*i+n[11]*s+n[15]);return this.x=(n[0]*e+n[4]*i+n[8]*s+n[12])*r,this.y=(n[1]*e+n[5]*i+n[9]*s+n[13])*r,this.z=(n[2]*e+n[6]*i+n[10]*s+n[14])*r,this}applyQuaternion(t){let e=this.x,i=this.y,s=this.z,n=t.x,r=t.y,o=t.z,a=t.w,l=2*(r*s-o*i),c=2*(o*e-n*s),u=2*(n*i-r*e);return this.x=e+a*l+r*u-o*c,this.y=i+a*c+o*l-n*u,this.z=s+a*u+n*c-r*l,this}project(t){return this.applyMatrix4(t.matrixWorldInverse).applyMatrix4(t.projectionMatrix)}unproject(t){return this.applyMatrix4(t.projectionMatrixInverse).applyMatrix4(t.matrixWorld)}transformDirection(t){let e=this.x,i=this.y,s=this.z,n=t.elements;return this.x=n[0]*e+n[4]*i+n[8]*s,this.y=n[1]*e+n[5]*i+n[9]*s,this.z=n[2]*e+n[6]*i+n[10]*s,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=V(this.x,t.x,e.x),this.y=V(this.y,t.y,e.y),this.z=V(this.z,t.z,e.z),this}clampScalar(t,e){return this.x=V(this.x,t,e),this.y=V(this.y,t,e),this.z=V(this.z,t,e),this}clampLength(t,e){let i=this.length();return this.divideScalar(i||1).multiplyScalar(V(i,t,e))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this.z=Math.trunc(this.z),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this}dot(t){return this.x*t.x+this.y*t.y+this.z*t.z}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)}normalize(){return this.divideScalar(this.length()||1)}setLength(t){return this.normalize().multiplyScalar(t)}lerp(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this.z+=(t.z-this.z)*e,this}lerpVectors(t,e,i){return this.x=t.x+(e.x-t.x)*i,this.y=t.y+(e.y-t.y)*i,this.z=t.z+(e.z-t.z)*i,this}cross(t){return this.crossVectors(this,t)}crossVectors(t,e){let i=t.x,s=t.y,n=t.z,r=e.x,o=e.y,a=e.z;return this.x=s*a-n*o,this.y=n*r-i*a,this.z=i*o-s*r,this}projectOnVector(t){let e=t.lengthSq();if(e===0)return this.set(0,0,0);let i=t.dot(this)/e;return this.copy(t).multiplyScalar(i)}projectOnPlane(t){return Un.copy(this).projectOnVector(t),this.sub(Un)}reflect(t){return this.sub(Un.copy(t).multiplyScalar(2*this.dot(t)))}angleTo(t){let e=Math.sqrt(this.lengthSq()*t.lengthSq());if(e===0)return Math.PI/2;let i=this.dot(t)/e;return Math.acos(V(i,-1,1))}distanceTo(t){return Math.sqrt(this.distanceToSquared(t))}distanceToSquared(t){let e=this.x-t.x,i=this.y-t.y,s=this.z-t.z;return e*e+i*i+s*s}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,i){let s=Math.sin(e)*t;return this.x=s*Math.sin(i),this.y=Math.cos(e)*t,this.z=s*Math.cos(i),this}setFromCylindrical(t){return this.setFromCylindricalCoords(t.radius,t.theta,t.y)}setFromCylindricalCoords(t,e,i){return this.x=t*Math.sin(e),this.y=i,this.z=t*Math.cos(e),this}setFromMatrixPosition(t){let e=t.elements;return this.x=e[12],this.y=e[13],this.z=e[14],this}setFromMatrixScale(t){let e=this.setFromMatrixColumn(t,0).length(),i=this.setFromMatrixColumn(t,1).length(),s=this.setFromMatrixColumn(t,2).length();return this.x=e,this.y=i,this.z=s,this}setFromMatrixColumn(t,e){return this.fromArray(t.elements,e*4)}setFromMatrix3Column(t,e){return this.fromArray(t.elements,e*3)}setFromEuler(t){return this.x=t._x,this.y=t._y,this.z=t._z,this}setFromColor(t){return this.x=t.r,this.y=t.g,this.z=t.b,this}equals(t){return t.x===this.x&&t.y===this.y&&t.z===this.z}fromArray(t,e=0){return this.x=t[e],this.y=t[e+1],this.z=t[e+2],this}toArray(t=[],e=0){return t[e]=this.x,t[e+1]=this.y,t[e+2]=this.z,t}fromBufferAttribute(t,e){return this.x=t.getX(e),this.y=t.getY(e),this.z=t.getZ(e),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this}randomDirection(){let t=Math.random()*Math.PI*2,e=Math.random()*2-1,i=Math.sqrt(1-e*e);return this.x=i*Math.cos(t),this.y=e,this.z=i*Math.sin(t),this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z}},Un=new M,Da=new xt,ee=class h{constructor(t,e,i,s,n,r,o,a,l){h.prototype.isMatrix3=!0,this.elements=[1,0,0,0,1,0,0,0,1],t!==void 0&&this.set(t,e,i,s,n,r,o,a,l)}set(t,e,i,s,n,r,o,a,l){let c=this.elements;return c[0]=t,c[1]=s,c[2]=o,c[3]=e,c[4]=n,c[5]=a,c[6]=i,c[7]=r,c[8]=l,this}identity(){return this.set(1,0,0,0,1,0,0,0,1),this}copy(t){let e=this.elements,i=t.elements;return e[0]=i[0],e[1]=i[1],e[2]=i[2],e[3]=i[3],e[4]=i[4],e[5]=i[5],e[6]=i[6],e[7]=i[7],e[8]=i[8],this}extractBasis(t,e,i){return t.setFromMatrix3Column(this,0),e.setFromMatrix3Column(this,1),i.setFromMatrix3Column(this,2),this}setFromMatrix4(t){let e=t.elements;return this.set(e[0],e[4],e[8],e[1],e[5],e[9],e[2],e[6],e[10]),this}multiply(t){return this.multiplyMatrices(this,t)}premultiply(t){return this.multiplyMatrices(t,this)}multiplyMatrices(t,e){let i=t.elements,s=e.elements,n=this.elements,r=i[0],o=i[3],a=i[6],l=i[1],c=i[4],u=i[7],d=i[2],p=i[5],f=i[8],m=s[0],g=s[3],y=s[6],x=s[1],b=s[4],w=s[7],_=s[2],v=s[5],A=s[8];return n[0]=r*m+o*x+a*_,n[3]=r*g+o*b+a*v,n[6]=r*y+o*w+a*A,n[1]=l*m+c*x+u*_,n[4]=l*g+c*b+u*v,n[7]=l*y+c*w+u*A,n[2]=d*m+p*x+f*_,n[5]=d*g+p*b+f*v,n[8]=d*y+p*w+f*A,this}multiplyScalar(t){let e=this.elements;return e[0]*=t,e[3]*=t,e[6]*=t,e[1]*=t,e[4]*=t,e[7]*=t,e[2]*=t,e[5]*=t,e[8]*=t,this}determinant(){let t=this.elements,e=t[0],i=t[1],s=t[2],n=t[3],r=t[4],o=t[5],a=t[6],l=t[7],c=t[8];return e*r*c-e*o*l-i*n*c+i*o*a+s*n*l-s*r*a}invert(){let t=this.elements,e=t[0],i=t[1],s=t[2],n=t[3],r=t[4],o=t[5],a=t[6],l=t[7],c=t[8],u=c*r-o*l,d=o*a-c*n,p=l*n-r*a,f=e*u+i*d+s*p;if(f===0)return this.set(0,0,0,0,0,0,0,0,0);let m=1/f;return t[0]=u*m,t[1]=(s*l-c*i)*m,t[2]=(o*i-s*r)*m,t[3]=d*m,t[4]=(c*e-s*a)*m,t[5]=(s*n-o*e)*m,t[6]=p*m,t[7]=(i*a-l*e)*m,t[8]=(r*e-i*n)*m,this}transpose(){let t,e=this.elements;return t=e[1],e[1]=e[3],e[3]=t,t=e[2],e[2]=e[6],e[6]=t,t=e[5],e[5]=e[7],e[7]=t,this}getNormalMatrix(t){return this.setFromMatrix4(t).invert().transpose()}transposeIntoArray(t){let e=this.elements;return t[0]=e[0],t[1]=e[3],t[2]=e[6],t[3]=e[1],t[4]=e[4],t[5]=e[7],t[6]=e[2],t[7]=e[5],t[8]=e[8],this}setUvTransform(t,e,i,s,n,r,o){let a=Math.cos(n),l=Math.sin(n);return this.set(i*a,i*l,-i*(a*r+l*o)+r+t,-s*l,s*a,-s*(-l*r+a*o)+o+e,0,0,1),this}scale(t,e){return this.premultiply(Wn.makeScale(t,e)),this}rotate(t){return this.premultiply(Wn.makeRotation(-t)),this}translate(t,e){return this.premultiply(Wn.makeTranslation(t,e)),this}makeTranslation(t,e){return t.isVector2?this.set(1,0,t.x,0,1,t.y,0,0,1):this.set(1,0,t,0,1,e,0,0,1),this}makeRotation(t){let e=Math.cos(t),i=Math.sin(t);return this.set(e,-i,0,i,e,0,0,0,1),this}makeScale(t,e){return this.set(t,0,0,0,e,0,0,0,1),this}equals(t){let e=this.elements,i=t.elements;for(let s=0;s<9;s++)if(e[s]!==i[s])return!1;return!0}fromArray(t,e=0){for(let i=0;i<9;i++)this.elements[i]=t[i+e];return this}toArray(t=[],e=0){let i=this.elements;return t[e]=i[0],t[e+1]=i[1],t[e+2]=i[2],t[e+3]=i[3],t[e+4]=i[4],t[e+5]=i[5],t[e+6]=i[6],t[e+7]=i[7],t[e+8]=i[8],t}clone(){return new this.constructor().fromArray(this.elements)}},Wn=new ee,La=new ee().set(.4123908,.3575843,.1804808,.212639,.7151687,.0721923,.0193308,.1191948,.9505322),Ua=new ee().set(3.2409699,-1.5373832,-.4986108,-.9692436,1.8759675,.0415551,.0556301,-.203977,1.0569715);function Gu(){let h={enabled:!0,workingColorSpace:ka,spaces:{},convert:function(s,n,r){return this.enabled===!1||n===r||!n||!r||(this.spaces[n].transfer===Ln&&(s.r=ge(s.r),s.g=ge(s.g),s.b=ge(s.b)),this.spaces[n].primaries!==this.spaces[r].primaries&&(s.applyMatrix3(this.spaces[n].toXYZ),s.applyMatrix3(this.spaces[r].fromXYZ)),this.spaces[r].transfer===Ln&&(s.r=Ai(s.r),s.g=Ai(s.g),s.b=Ai(s.b))),s},workingToColorSpace:function(s,n){return this.convert(s,this.workingColorSpace,n)},colorSpaceToWorking:function(s,n){return this.convert(s,n,this.workingColorSpace)},getPrimaries:function(s){return this.spaces[s].primaries},getTransfer:function(s){return s===ec?Pa:this.spaces[s].transfer},getToneMappingMode:function(s){return this.spaces[s].outputColorSpaceConfig.toneMappingMode||\"standard\"},getLuminanceCoefficients:function(s,n=this.workingColorSpace){return s.fromArray(this.spaces[n].luminanceCoefficients)},define:function(s){Object.assign(this.spaces,s)},_getMatrix:function(s,n,r){return s.copy(this.spaces[n].toXYZ).multiply(this.spaces[r].fromXYZ)},_getDrawingBufferColorSpace:function(s){return this.spaces[s].outputColorSpaceConfig.drawingBufferColorSpace},_getUnpackColorSpace:function(s=this.workingColorSpace){return this.spaces[s].workingColorSpaceConfig.unpackColorSpace},fromWorkingColorSpace:function(s,n){return Na(\"ColorManagement: .fromWorkingColorSpace() has been renamed to .workingToColorSpace().\"),h.workingToColorSpace(s,n)},toWorkingColorSpace:function(s,n){return Na(\"ColorManagement: .toWorkingColorSpace() has been renamed to .colorSpaceToWorking().\"),h.colorSpaceToWorking(s,n)}},t=[.64,.33,.3,.6,.15,.06],e=[.2126,.7152,.0722],i=[.3127,.329];return h.define({[ka]:{primaries:t,whitePoint:i,transfer:Pa,toXYZ:La,fromXYZ:Ua,luminanceCoefficients:e,workingColorSpaceConfig:{unpackColorSpace:Et},outputColorSpaceConfig:{drawingBufferColorSpace:Et}},[Et]:{primaries:t,whitePoint:i,transfer:Ln,toXYZ:La,fromXYZ:Ua,luminanceCoefficients:e,outputColorSpaceConfig:{drawingBufferColorSpace:Et}}}),h}var Ft=Gu();function ge(h){return h<.04045?h*.0773993808:Math.pow(h*.9478672986+.0521327014,2.4)}function Ai(h){return h<.0031308?h*12.92:1.055*Math.pow(h,.41666)-.055}var ii,zr=class{static getDataURL(t,e=\"image/png\"){if(/^data:/i.test(t.src)||typeof HTMLCanvasElement>\"u\")return t.src;let i;if(t instanceof HTMLCanvasElement)i=t;else{ii===void 0&&(ii=an(\"canvas\")),ii.width=t.width,ii.height=t.height;let s=ii.getContext(\"2d\");t instanceof ImageData?s.putImageData(t,0,0):s.drawImage(t,0,0,t.width,t.height),i=ii}return i.toDataURL(e)}static sRGBToLinear(t){if(typeof HTMLImageElement<\"u\"&&t instanceof HTMLImageElement||typeof HTMLCanvasElement<\"u\"&&t instanceof HTMLCanvasElement||typeof ImageBitmap<\"u\"&&t instanceof ImageBitmap){let e=an(\"canvas\");e.width=t.width,e.height=t.height;let i=e.getContext(\"2d\");i.drawImage(t,0,0,t.width,t.height);let s=i.getImageData(0,0,t.width,t.height),n=s.data;for(let r=0;r<n.length;r++)n[r]=ge(n[r]/255)*255;return i.putImageData(s,0,0),e}else if(t.data){let e=t.data.slice(0);for(let i=0;i<e.length;i++)e instanceof Uint8Array||e instanceof Uint8ClampedArray?e[i]=Math.floor(ge(e[i]/255)*255):e[i]=ge(e[i]);return{data:e,width:t.width,height:t.height}}else return N(\"ImageUtils.sRGBToLinear(): Unsupported image type. No color space conversion applied.\"),t}},Xu=0,me=class{constructor(t=null){this.isSource=!0,Object.defineProperty(this,\"id\",{value:Xu++}),this.uuid=Bt(),this.data=t,this.dataReady=!0,this.version=0}getSize(t){let e=this.data;return typeof HTMLVideoElement<\"u\"&&e instanceof HTMLVideoElement?t.set(e.videoWidth,e.videoHeight,0):typeof VideoFrame<\"u\"&&e instanceof VideoFrame?t.set(e.displayHeight,e.displayWidth,0):e!==null?t.set(e.width,e.height,e.depth||0):t.set(0,0,0),t}set needsUpdate(t){t===!0&&this.version++}toJSON(t){let e=t===void 0||typeof t==\"string\";if(!e&&t.images[this.uuid]!==void 0)return t.images[this.uuid];let i={uuid:this.uuid,url:\"\"},s=this.data;if(s!==null){let n;if(Array.isArray(s)){n=[];for(let r=0,o=s.length;r<o;r++)s[r].isDataTexture?n.push(qn(s[r].image)):n.push(qn(s[r]))}else n=qn(s);i.url=n}return e||(t.images[this.uuid]=i),i}};function qn(h){return typeof HTMLImageElement<\"u\"&&h instanceof HTMLImageElement||typeof HTMLCanvasElement<\"u\"&&h instanceof HTMLCanvasElement||typeof ImageBitmap<\"u\"&&h instanceof ImageBitmap?zr.getDataURL(h):h.data?{data:Array.from(h.data),width:h.width,height:h.height,type:h.data.constructor.name}:(N(\"Texture: Unable to serialize Texture.\"),{})}var Hu=0,Jn=new M,dt=class h extends te{constructor(t=h.DEFAULT_IMAGE,e=h.DEFAULT_MAPPING,i=jt,s=jt,n=Gt,r=na,o=Ki,a=ra,l=h.DEFAULT_ANISOTROPY,c=ec){super(),this.isTexture=!0,Object.defineProperty(this,\"id\",{value:Hu++}),this.uuid=Bt(),this.name=\"\",this.source=new me(t),this.mipmaps=[],this.mapping=e,this.channel=0,this.wrapS=i,this.wrapT=s,this.magFilter=n,this.minFilter=r,this.anisotropy=l,this.format=o,this.internalFormat=null,this.type=a,this.offset=new C(0,0),this.repeat=new C(1,1),this.center=new C(0,0),this.rotation=0,this.matrixAutoUpdate=!0,this.matrix=new ee,this.generateMipmaps=!0,this.premultiplyAlpha=!1,this.flipY=!0,this.unpackAlignment=4,this.colorSpace=c,this.userData={},this.updateRanges=[],this.version=0,this.onUpdate=null,this.renderTarget=null,this.isRenderTargetTexture=!1,this.isArrayTexture=!!(t&&t.depth&&t.depth>1),this.pmremVersion=0}get width(){return this.source.getSize(Jn).x}get height(){return this.source.getSize(Jn).y}get depth(){return this.source.getSize(Jn).z}get image(){return this.source.data}set image(t=null){this.source.data=t}updateMatrix(){this.matrix.setUvTransform(this.offset.x,this.offset.y,this.repeat.x,this.repeat.y,this.rotation,this.center.x,this.center.y)}addUpdateRange(t,e){this.updateRanges.push({start:t,count:e})}clearUpdateRanges(){this.updateRanges.length=0}clone(){return new this.constructor().copy(this)}copy(t){return this.name=t.name,this.source=t.source,this.mipmaps=t.mipmaps.slice(0),this.mapping=t.mapping,this.channel=t.channel,this.wrapS=t.wrapS,this.wrapT=t.wrapT,this.magFilter=t.magFilter,this.minFilter=t.minFilter,this.anisotropy=t.anisotropy,this.format=t.format,this.internalFormat=t.internalFormat,this.type=t.type,this.offset.copy(t.offset),this.repeat.copy(t.repeat),this.center.copy(t.center),this.rotation=t.rotation,this.matrixAutoUpdate=t.matrixAutoUpdate,this.matrix.copy(t.matrix),this.generateMipmaps=t.generateMipmaps,this.premultiplyAlpha=t.premultiplyAlpha,this.flipY=t.flipY,this.unpackAlignment=t.unpackAlignment,this.colorSpace=t.colorSpace,this.renderTarget=t.renderTarget,this.isRenderTargetTexture=t.isRenderTargetTexture,this.isArrayTexture=t.isArrayTexture,this.userData=JSON.parse(JSON.stringify(t.userData)),this.needsUpdate=!0,this}setValues(t){for(let e in t){let i=t[e];if(i===void 0){N(`Texture.setValues(): parameter '${e}' has value of undefined.`);continue}let s=this[e];if(s===void 0){N(`Texture.setValues(): property '${e}' does not exist.`);continue}s&&i&&s.isVector2&&i.isVector2||s&&i&&s.isVector3&&i.isVector3||s&&i&&s.isMatrix3&&i.isMatrix3?s.copy(i):this[e]=i}}toJSON(t){let e=t===void 0||typeof t==\"string\";if(!e&&t.textures[this.uuid]!==void 0)return t.textures[this.uuid];let i={metadata:{version:4.7,type:\"Texture\",generator:\"Texture.toJSON\"},uuid:this.uuid,name:this.name,image:this.source.toJSON(t).uuid,mapping:this.mapping,channel:this.channel,repeat:[this.repeat.x,this.repeat.y],offset:[this.offset.x,this.offset.y],center:[this.center.x,this.center.y],rotation:this.rotation,wrap:[this.wrapS,this.wrapT],format:this.format,internalFormat:this.internalFormat,type:this.type,colorSpace:this.colorSpace,minFilter:this.minFilter,magFilter:this.magFilter,anisotropy:this.anisotropy,flipY:this.flipY,generateMipmaps:this.generateMipmaps,premultiplyAlpha:this.premultiplyAlpha,unpackAlignment:this.unpackAlignment};return Object.keys(this.userData).length>0&&(i.userData=this.userData),e||(t.textures[this.uuid]=i),i}dispose(){this.dispatchEvent({type:\"dispose\"})}transformUv(t){if(this.mapping!==sa)return t;if(t.applyMatrix3(this.matrix),t.x<0||t.x>1)switch(this.wrapS){case Ar:t.x=t.x-Math.floor(t.x);break;case jt:t.x=t.x<0?0:1;break;case Tr:Math.abs(Math.floor(t.x)%2)===1?t.x=Math.ceil(t.x)-t.x:t.x=t.x-Math.floor(t.x);break}if(t.y<0||t.y>1)switch(this.wrapT){case Ar:t.y=t.y-Math.floor(t.y);break;case jt:t.y=t.y<0?0:1;break;case Tr:Math.abs(Math.floor(t.y)%2)===1?t.y=Math.ceil(t.y)-t.y:t.y=t.y-Math.floor(t.y);break}return this.flipY&&(t.y=1-t.y),t}set needsUpdate(t){t===!0&&(this.version++,this.source.needsUpdate=!0)}set needsPMREMUpdate(t){t===!0&&this.pmremVersion++}};dt.DEFAULT_IMAGE=null;dt.DEFAULT_MAPPING=sa;dt.DEFAULT_ANISOTROPY=1;var Nt=class h{constructor(t=0,e=0,i=0,s=1){h.prototype.isVector4=!0,this.x=t,this.y=e,this.z=i,this.w=s}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,i,s){return this.x=t,this.y=e,this.z=i,this.w=s,this}setScalar(t){return this.x=t,this.y=t,this.z=t,this.w=t,this}setX(t){return this.x=t,this}setY(t){return this.y=t,this}setZ(t){return this.z=t,this}setW(t){return this.w=t,this}setComponent(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;case 2:this.z=e;break;case 3:this.w=e;break;default:throw new Error(\"index is out of range: \"+t)}return this}getComponent(t){switch(t){case 0:return this.x;case 1:return this.y;case 2:return this.z;case 3:return this.w;default:throw new Error(\"index is out of range: \"+t)}}clone(){return new this.constructor(this.x,this.y,this.z,this.w)}copy(t){return this.x=t.x,this.y=t.y,this.z=t.z,this.w=t.w!==void 0?t.w:1,this}add(t){return this.x+=t.x,this.y+=t.y,this.z+=t.z,this.w+=t.w,this}addScalar(t){return this.x+=t,this.y+=t,this.z+=t,this.w+=t,this}addVectors(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this.z=t.z+e.z,this.w=t.w+e.w,this}addScaledVector(t,e){return this.x+=t.x*e,this.y+=t.y*e,this.z+=t.z*e,this.w+=t.w*e,this}sub(t){return this.x-=t.x,this.y-=t.y,this.z-=t.z,this.w-=t.w,this}subScalar(t){return this.x-=t,this.y-=t,this.z-=t,this.w-=t,this}subVectors(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this.z=t.z-e.z,this.w=t.w-e.w,this}multiply(t){return this.x*=t.x,this.y*=t.y,this.z*=t.z,this.w*=t.w,this}multiplyScalar(t){return this.x*=t,this.y*=t,this.z*=t,this.w*=t,this}applyMatrix4(t){let e=this.x,i=this.y,s=this.z,n=this.w,r=t.elements;return this.x=r[0]*e+r[4]*i+r[8]*s+r[12]*n,this.y=r[1]*e+r[5]*i+r[9]*s+r[13]*n,this.z=r[2]*e+r[6]*i+r[10]*s+r[14]*n,this.w=r[3]*e+r[7]*i+r[11]*s+r[15]*n,this}divide(t){return this.x/=t.x,this.y/=t.y,this.z/=t.z,this.w/=t.w,this}divideScalar(t){return this.multiplyScalar(1/t)}setAxisAngleFromQuaternion(t){this.w=2*Math.acos(t.w);let e=Math.sqrt(1-t.w*t.w);return e<1e-4?(this.x=1,this.y=0,this.z=0):(this.x=t.x/e,this.y=t.y/e,this.z=t.z/e),this}setAxisAngleFromRotationMatrix(t){let e,i,s,n,a=t.elements,l=a[0],c=a[4],u=a[8],d=a[1],p=a[5],f=a[9],m=a[2],g=a[6],y=a[10];if(Math.abs(c-d)<.01&&Math.abs(u-m)<.01&&Math.abs(f-g)<.01){if(Math.abs(c+d)<.1&&Math.abs(u+m)<.1&&Math.abs(f+g)<.1&&Math.abs(l+p+y-3)<.1)return this.set(1,0,0,0),this;e=Math.PI;let b=(l+1)/2,w=(p+1)/2,_=(y+1)/2,v=(c+d)/4,A=(u+m)/4,S=(f+g)/4;return b>w&&b>_?b<.01?(i=0,s=.707106781,n=.707106781):(i=Math.sqrt(b),s=v/i,n=A/i):w>_?w<.01?(i=.707106781,s=0,n=.707106781):(s=Math.sqrt(w),i=v/s,n=S/s):_<.01?(i=.707106781,s=.707106781,n=0):(n=Math.sqrt(_),i=A/n,s=S/n),this.set(i,s,n,e),this}let x=Math.sqrt((g-f)*(g-f)+(u-m)*(u-m)+(d-c)*(d-c));return Math.abs(x)<.001&&(x=1),this.x=(g-f)/x,this.y=(u-m)/x,this.z=(d-c)/x,this.w=Math.acos((l+p+y-1)/2),this}setFromMatrixPosition(t){let e=t.elements;return this.x=e[12],this.y=e[13],this.z=e[14],this.w=e[15],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=V(this.x,t.x,e.x),this.y=V(this.y,t.y,e.y),this.z=V(this.z,t.z,e.z),this.w=V(this.w,t.w,e.w),this}clampScalar(t,e){return this.x=V(this.x,t,e),this.y=V(this.y,t,e),this.z=V(this.z,t,e),this.w=V(this.w,t,e),this}clampLength(t,e){let i=this.length();return this.divideScalar(i||1).multiplyScalar(V(i,t,e))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this.w=Math.floor(this.w),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this.w=Math.ceil(this.w),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this.w=Math.round(this.w),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this.z=Math.trunc(this.z),this.w=Math.trunc(this.w),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this.w=-this.w,this}dot(t){return this.x*t.x+this.y*t.y+this.z*t.z+this.w*t.w}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)+Math.abs(this.w)}normalize(){return this.divideScalar(this.length()||1)}setLength(t){return this.normalize().multiplyScalar(t)}lerp(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this.z+=(t.z-this.z)*e,this.w+=(t.w-this.w)*e,this}lerpVectors(t,e,i){return this.x=t.x+(e.x-t.x)*i,this.y=t.y+(e.y-t.y)*i,this.z=t.z+(e.z-t.z)*i,this.w=t.w+(e.w-t.w)*i,this}equals(t){return t.x===this.x&&t.y===this.y&&t.z===this.z&&t.w===this.w}fromArray(t,e=0){return this.x=t[e],this.y=t[e+1],this.z=t[e+2],this.w=t[e+3],this}toArray(t=[],e=0){return t[e]=this.x,t[e+1]=this.y,t[e+2]=this.z,t[e+3]=this.w,t}fromBufferAttribute(t,e){return this.x=t.getX(e),this.y=t.getY(e),this.z=t.getZ(e),this.w=t.getW(e),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this.w=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z,yield this.w}},hn=class extends te{constructor(t=1,e=1,i={}){super(),i=Object.assign({generateMipmaps:!1,internalFormat:null,minFilter:Gt,depthBuffer:!0,stencilBuffer:!1,resolveDepthBuffer:!0,resolveStencilBuffer:!0,depthTexture:null,samples:0,count:1,depth:1,multiview:!1},i),this.isRenderTarget=!0,this.width=t,this.height=e,this.depth=i.depth,this.scissor=new Nt(0,0,t,e),this.scissorTest=!1,this.viewport=new Nt(0,0,t,e),this.textures=[];let s={width:t,height:e,depth:i.depth},n=new dt(s),r=i.count;for(let o=0;o<r;o++)this.textures[o]=n.clone(),this.textures[o].isRenderTargetTexture=!0,this.textures[o].renderTarget=this;this._setTextureOptions(i),this.depthBuffer=i.depthBuffer,this.stencilBuffer=i.stencilBuffer,this.resolveDepthBuffer=i.resolveDepthBuffer,this.resolveStencilBuffer=i.resolveStencilBuffer,this._depthTexture=null,this.depthTexture=i.depthTexture,this.samples=i.samples,this.multiview=i.multiview}_setTextureOptions(t={}){let e={minFilter:Gt,generateMipmaps:!1,flipY:!1,internalFormat:null};t.mapping!==void 0&&(e.mapping=t.mapping),t.wrapS!==void 0&&(e.wrapS=t.wrapS),t.wrapT!==void 0&&(e.wrapT=t.wrapT),t.wrapR!==void 0&&(e.wrapR=t.wrapR),t.magFilter!==void 0&&(e.magFilter=t.magFilter),t.minFilter!==void 0&&(e.minFilter=t.minFilter),t.format!==void 0&&(e.format=t.format),t.type!==void 0&&(e.type=t.type),t.anisotropy!==void 0&&(e.anisotropy=t.anisotropy),t.colorSpace!==void 0&&(e.colorSpace=t.colorSpace),t.flipY!==void 0&&(e.flipY=t.flipY),t.generateMipmaps!==void 0&&(e.generateMipmaps=t.generateMipmaps),t.internalFormat!==void 0&&(e.internalFormat=t.internalFormat);for(let i=0;i<this.textures.length;i++)this.textures[i].setValues(e)}get texture(){return this.textures[0]}set texture(t){this.textures[0]=t}set depthTexture(t){this._depthTexture!==null&&(this._depthTexture.renderTarget=null),t!==null&&(t.renderTarget=this),this._depthTexture=t}get depthTexture(){return this._depthTexture}setSize(t,e,i=1){if(this.width!==t||this.height!==e||this.depth!==i){this.width=t,this.height=e,this.depth=i;for(let s=0,n=this.textures.length;s<n;s++)this.textures[s].image.width=t,this.textures[s].image.height=e,this.textures[s].image.depth=i,this.textures[s].isData3DTexture!==!0&&(this.textures[s].isArrayTexture=this.textures[s].image.depth>1);this.dispose()}this.viewport.set(0,0,t,e),this.scissor.set(0,0,t,e)}clone(){return new this.constructor().copy(this)}copy(t){this.width=t.width,this.height=t.height,this.depth=t.depth,this.scissor.copy(t.scissor),this.scissorTest=t.scissorTest,this.viewport.copy(t.viewport),this.textures.length=0;for(let e=0,i=t.textures.length;e<i;e++){this.textures[e]=t.textures[e].clone(),this.textures[e].isRenderTargetTexture=!0,this.textures[e].renderTarget=this;let s=Object.assign({},t.textures[e].image);this.textures[e].source=new me(s)}return this.depthBuffer=t.depthBuffer,this.stencilBuffer=t.stencilBuffer,this.resolveDepthBuffer=t.resolveDepthBuffer,this.resolveStencilBuffer=t.resolveStencilBuffer,t.depthTexture!==null&&(this.depthTexture=t.depthTexture.clone()),this.samples=t.samples,this}dispose(){this.dispatchEvent({type:\"dispose\"})}},ln=class extends hn{constructor(t=1,e=1,i={}){super(t,e,i),this.isWebGLRenderTarget=!0}},Fr=class extends dt{constructor(t=null,e=1,i=1,s=1){super(null),this.isDataArrayTexture=!0,this.image={data:t,width:e,height:i,depth:s},this.magFilter=kt,this.minFilter=kt,this.wrapR=jt,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1,this.layerUpdates=new Set}addLayerUpdate(t){this.layerUpdates.add(t)}clearLayerUpdates(){this.layerUpdates.clear()}},Wa=class extends ln{constructor(t=1,e=1,i=1,s={}){super(t,e,s),this.isWebGLArrayRenderTarget=!0,this.depth=i,this.texture=new Fr(null,t,e,i),this._setTextureOptions(s),this.texture.isRenderTargetTexture=!0}},cn=class extends dt{constructor(t=null,e=1,i=1,s=1){super(null),this.isData3DTexture=!0,this.image={data:t,width:e,height:i,depth:s},this.magFilter=kt,this.minFilter=kt,this.wrapR=jt,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1}},qa=class extends ln{constructor(t=1,e=1,i=1,s={}){super(t,e,s),this.isWebGL3DRenderTarget=!0,this.depth=i,this.texture=new cn(null,t,e,i),this._setTextureOptions(s),this.texture.isRenderTargetTexture=!0}},q=class h{constructor(t,e,i,s,n,r,o,a,l,c,u,d,p,f,m,g){h.prototype.isMatrix4=!0,this.elements=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],t!==void 0&&this.set(t,e,i,s,n,r,o,a,l,c,u,d,p,f,m,g)}set(t,e,i,s,n,r,o,a,l,c,u,d,p,f,m,g){let y=this.elements;return y[0]=t,y[4]=e,y[8]=i,y[12]=s,y[1]=n,y[5]=r,y[9]=o,y[13]=a,y[2]=l,y[6]=c,y[10]=u,y[14]=d,y[3]=p,y[7]=f,y[11]=m,y[15]=g,this}identity(){return this.set(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1),this}clone(){return new h().fromArray(this.elements)}copy(t){let e=this.elements,i=t.elements;return e[0]=i[0],e[1]=i[1],e[2]=i[2],e[3]=i[3],e[4]=i[4],e[5]=i[5],e[6]=i[6],e[7]=i[7],e[8]=i[8],e[9]=i[9],e[10]=i[10],e[11]=i[11],e[12]=i[12],e[13]=i[13],e[14]=i[14],e[15]=i[15],this}copyPosition(t){let e=this.elements,i=t.elements;return e[12]=i[12],e[13]=i[13],e[14]=i[14],this}setFromMatrix3(t){let e=t.elements;return this.set(e[0],e[3],e[6],0,e[1],e[4],e[7],0,e[2],e[5],e[8],0,0,0,0,1),this}extractBasis(t,e,i){return this.determinant()===0?(t.set(1,0,0),e.set(0,1,0),i.set(0,0,1),this):(t.setFromMatrixColumn(this,0),e.setFromMatrixColumn(this,1),i.setFromMatrixColumn(this,2),this)}makeBasis(t,e,i){return this.set(t.x,e.x,i.x,0,t.y,e.y,i.y,0,t.z,e.z,i.z,0,0,0,0,1),this}extractRotation(t){if(t.determinant()===0)return this.identity();let e=this.elements,i=t.elements,s=1/si.setFromMatrixColumn(t,0).length(),n=1/si.setFromMatrixColumn(t,1).length(),r=1/si.setFromMatrixColumn(t,2).length();return e[0]=i[0]*s,e[1]=i[1]*s,e[2]=i[2]*s,e[3]=0,e[4]=i[4]*n,e[5]=i[5]*n,e[6]=i[6]*n,e[7]=0,e[8]=i[8]*r,e[9]=i[9]*r,e[10]=i[10]*r,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,this}makeRotationFromEuler(t){let e=this.elements,i=t.x,s=t.y,n=t.z,r=Math.cos(i),o=Math.sin(i),a=Math.cos(s),l=Math.sin(s),c=Math.cos(n),u=Math.sin(n);if(t.order===\"XYZ\"){let d=r*c,p=r*u,f=o*c,m=o*u;e[0]=a*c,e[4]=-a*u,e[8]=l,e[1]=p+f*l,e[5]=d-m*l,e[9]=-o*a,e[2]=m-d*l,e[6]=f+p*l,e[10]=r*a}else if(t.order===\"YXZ\"){let d=a*c,p=a*u,f=l*c,m=l*u;e[0]=d+m*o,e[4]=f*o-p,e[8]=r*l,e[1]=r*u,e[5]=r*c,e[9]=-o,e[2]=p*o-f,e[6]=m+d*o,e[10]=r*a}else if(t.order===\"ZXY\"){let d=a*c,p=a*u,f=l*c,m=l*u;e[0]=d-m*o,e[4]=-r*u,e[8]=f+p*o,e[1]=p+f*o,e[5]=r*c,e[9]=m-d*o,e[2]=-r*l,e[6]=o,e[10]=r*a}else if(t.order===\"ZYX\"){let d=r*c,p=r*u,f=o*c,m=o*u;e[0]=a*c,e[4]=f*l-p,e[8]=d*l+m,e[1]=a*u,e[5]=m*l+d,e[9]=p*l-f,e[2]=-l,e[6]=o*a,e[10]=r*a}else if(t.order===\"YZX\"){let d=r*a,p=r*l,f=o*a,m=o*l;e[0]=a*c,e[4]=m-d*u,e[8]=f*u+p,e[1]=u,e[5]=r*c,e[9]=-o*c,e[2]=-l*c,e[6]=p*u+f,e[10]=d-m*u}else if(t.order===\"XZY\"){let d=r*a,p=r*l,f=o*a,m=o*l;e[0]=a*c,e[4]=-u,e[8]=l*c,e[1]=d*u+m,e[5]=r*c,e[9]=p*u-f,e[2]=f*u-p,e[6]=o*c,e[10]=m*u+d}return e[3]=0,e[7]=0,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,this}makeRotationFromQuaternion(t){return this.compose(Zu,t,Yu)}lookAt(t,e,i){let s=this.elements;return Ct.subVectors(t,e),Ct.lengthSq()===0&&(Ct.z=1),Ct.normalize(),we.crossVectors(i,Ct),we.lengthSq()===0&&(Math.abs(i.z)===1?Ct.x+=1e-4:Ct.z+=1e-4,Ct.normalize(),we.crossVectors(i,Ct)),we.normalize(),ds.crossVectors(Ct,we),s[0]=we.x,s[4]=ds.x,s[8]=Ct.x,s[1]=we.y,s[5]=ds.y,s[9]=Ct.y,s[2]=we.z,s[6]=ds.z,s[10]=Ct.z,this}multiply(t){return this.multiplyMatrices(this,t)}premultiply(t){return this.multiplyMatrices(t,this)}multiplyMatrices(t,e){let i=t.elements,s=e.elements,n=this.elements,r=i[0],o=i[4],a=i[8],l=i[12],c=i[1],u=i[5],d=i[9],p=i[13],f=i[2],m=i[6],g=i[10],y=i[14],x=i[3],b=i[7],w=i[11],_=i[15],v=s[0],A=s[4],S=s[8],T=s[12],I=s[1],F=s[5],O=s[9],D=s[13],X=s[2],L=s[6],et=s[10],ot=s[14],Lt=s[3],it=s[7],at=s[11],st=s[15];return n[0]=r*v+o*I+a*X+l*Lt,n[4]=r*A+o*F+a*L+l*it,n[8]=r*S+o*O+a*et+l*at,n[12]=r*T+o*D+a*ot+l*st,n[1]=c*v+u*I+d*X+p*Lt,n[5]=c*A+u*F+d*L+p*it,n[9]=c*S+u*O+d*et+p*at,n[13]=c*T+u*D+d*ot+p*st,n[2]=f*v+m*I+g*X+y*Lt,n[6]=f*A+m*F+g*L+y*it,n[10]=f*S+m*O+g*et+y*at,n[14]=f*T+m*D+g*ot+y*st,n[3]=x*v+b*I+w*X+_*Lt,n[7]=x*A+b*F+w*L+_*it,n[11]=x*S+b*O+w*et+_*at,n[15]=x*T+b*D+w*ot+_*st,this}multiplyScalar(t){let e=this.elements;return e[0]*=t,e[4]*=t,e[8]*=t,e[12]*=t,e[1]*=t,e[5]*=t,e[9]*=t,e[13]*=t,e[2]*=t,e[6]*=t,e[10]*=t,e[14]*=t,e[3]*=t,e[7]*=t,e[11]*=t,e[15]*=t,this}determinant(){let t=this.elements,e=t[0],i=t[4],s=t[8],n=t[12],r=t[1],o=t[5],a=t[9],l=t[13],c=t[2],u=t[6],d=t[10],p=t[14],f=t[3],m=t[7],g=t[11],y=t[15],x=a*p-l*d,b=o*p-l*u,w=o*d-a*u,_=r*p-l*c,v=r*d-a*c,A=r*u-o*c;return e*(m*x-g*b+y*w)-i*(f*x-g*_+y*v)+s*(f*b-m*_+y*A)-n*(f*w-m*v+g*A)}transpose(){let t=this.elements,e;return e=t[1],t[1]=t[4],t[4]=e,e=t[2],t[2]=t[8],t[8]=e,e=t[6],t[6]=t[9],t[9]=e,e=t[3],t[3]=t[12],t[12]=e,e=t[7],t[7]=t[13],t[13]=e,e=t[11],t[11]=t[14],t[14]=e,this}setPosition(t,e,i){let s=this.elements;return t.isVector3?(s[12]=t.x,s[13]=t.y,s[14]=t.z):(s[12]=t,s[13]=e,s[14]=i),this}invert(){let t=this.elements,e=t[0],i=t[1],s=t[2],n=t[3],r=t[4],o=t[5],a=t[6],l=t[7],c=t[8],u=t[9],d=t[10],p=t[11],f=t[12],m=t[13],g=t[14],y=t[15],x=e*o-i*r,b=e*a-s*r,w=e*l-n*r,_=i*a-s*o,v=i*l-n*o,A=s*l-n*a,S=c*m-u*f,T=c*g-d*f,I=c*y-p*f,F=u*g-d*m,O=u*y-p*m,D=d*y-p*g,X=x*D-b*O+w*F+_*I-v*T+A*S;if(X===0)return this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);let L=1/X;return t[0]=(o*D-a*O+l*F)*L,t[1]=(s*O-i*D-n*F)*L,t[2]=(m*A-g*v+y*_)*L,t[3]=(d*v-u*A-p*_)*L,t[4]=(a*I-r*D-l*T)*L,t[5]=(e*D-s*I+n*T)*L,t[6]=(g*w-f*A-y*b)*L,t[7]=(c*A-d*w+p*b)*L,t[8]=(r*O-o*I+l*S)*L,t[9]=(i*I-e*O-n*S)*L,t[10]=(f*v-m*w+y*x)*L,t[11]=(u*w-c*v-p*x)*L,t[12]=(o*T-r*F-a*S)*L,t[13]=(e*F-i*T+s*S)*L,t[14]=(m*b-f*_-g*x)*L,t[15]=(c*_-u*b+d*x)*L,this}scale(t){let e=this.elements,i=t.x,s=t.y,n=t.z;return e[0]*=i,e[4]*=s,e[8]*=n,e[1]*=i,e[5]*=s,e[9]*=n,e[2]*=i,e[6]*=s,e[10]*=n,e[3]*=i,e[7]*=s,e[11]*=n,this}getMaxScaleOnAxis(){let t=this.elements,e=t[0]*t[0]+t[1]*t[1]+t[2]*t[2],i=t[4]*t[4]+t[5]*t[5]+t[6]*t[6],s=t[8]*t[8]+t[9]*t[9]+t[10]*t[10];return Math.sqrt(Math.max(e,i,s))}makeTranslation(t,e,i){return t.isVector3?this.set(1,0,0,t.x,0,1,0,t.y,0,0,1,t.z,0,0,0,1):this.set(1,0,0,t,0,1,0,e,0,0,1,i,0,0,0,1),this}makeRotationX(t){let e=Math.cos(t),i=Math.sin(t);return this.set(1,0,0,0,0,e,-i,0,0,i,e,0,0,0,0,1),this}makeRotationY(t){let e=Math.cos(t),i=Math.sin(t);return this.set(e,0,i,0,0,1,0,0,-i,0,e,0,0,0,0,1),this}makeRotationZ(t){let e=Math.cos(t),i=Math.sin(t);return this.set(e,-i,0,0,i,e,0,0,0,0,1,0,0,0,0,1),this}makeRotationAxis(t,e){let i=Math.cos(e),s=Math.sin(e),n=1-i,r=t.x,o=t.y,a=t.z,l=n*r,c=n*o;return this.set(l*r+i,l*o-s*a,l*a+s*o,0,l*o+s*a,c*o+i,c*a-s*r,0,l*a-s*o,c*a+s*r,n*a*a+i,0,0,0,0,1),this}makeScale(t,e,i){return this.set(t,0,0,0,0,e,0,0,0,0,i,0,0,0,0,1),this}makeShear(t,e,i,s,n,r){return this.set(1,i,n,0,t,1,r,0,e,s,1,0,0,0,0,1),this}compose(t,e,i){let s=this.elements,n=e._x,r=e._y,o=e._z,a=e._w,l=n+n,c=r+r,u=o+o,d=n*l,p=n*c,f=n*u,m=r*c,g=r*u,y=o*u,x=a*l,b=a*c,w=a*u,_=i.x,v=i.y,A=i.z;return s[0]=(1-(m+y))*_,s[1]=(p+w)*_,s[2]=(f-b)*_,s[3]=0,s[4]=(p-w)*v,s[5]=(1-(d+y))*v,s[6]=(g+x)*v,s[7]=0,s[8]=(f+b)*A,s[9]=(g-x)*A,s[10]=(1-(d+m))*A,s[11]=0,s[12]=t.x,s[13]=t.y,s[14]=t.z,s[15]=1,this}decompose(t,e,i){let s=this.elements;t.x=s[12],t.y=s[13],t.z=s[14];let n=this.determinant();if(n===0)return i.set(1,1,1),e.identity(),this;let r=si.set(s[0],s[1],s[2]).length(),o=si.set(s[4],s[5],s[6]).length(),a=si.set(s[8],s[9],s[10]).length();n<0&&(r=-r),Wt.copy(this);let l=1/r,c=1/o,u=1/a;return Wt.elements[0]*=l,Wt.elements[1]*=l,Wt.elements[2]*=l,Wt.elements[4]*=c,Wt.elements[5]*=c,Wt.elements[6]*=c,Wt.elements[8]*=u,Wt.elements[9]*=u,Wt.elements[10]*=u,e.setFromRotationMatrix(Wt),i.x=r,i.y=o,i.z=a,this}makePerspective(t,e,i,s,n,r,o=Qt,a=!1){let l=this.elements,c=2*n/(e-t),u=2*n/(i-s),d=(e+t)/(e-t),p=(i+s)/(i-s),f,m;if(a)f=n/(r-n),m=r*n/(r-n);else if(o===Qt)f=-(r+n)/(r-n),m=-2*r*n/(r-n);else if(o===Ii)f=-r/(r-n),m=-r*n/(r-n);else throw new Error(\"THREE.Matrix4.makePerspective(): Invalid coordinate system: \"+o);return l[0]=c,l[4]=0,l[8]=d,l[12]=0,l[1]=0,l[5]=u,l[9]=p,l[13]=0,l[2]=0,l[6]=0,l[10]=f,l[14]=m,l[3]=0,l[7]=0,l[11]=-1,l[15]=0,this}makeOrthographic(t,e,i,s,n,r,o=Qt,a=!1){let l=this.elements,c=2/(e-t),u=2/(i-s),d=-(e+t)/(e-t),p=-(i+s)/(i-s),f,m;if(a)f=1/(r-n),m=r/(r-n);else if(o===Qt)f=-2/(r-n),m=-(r+n)/(r-n);else if(o===Ii)f=-1/(r-n),m=-n/(r-n);else throw new Error(\"THREE.Matrix4.makeOrthographic(): Invalid coordinate system: \"+o);return l[0]=c,l[4]=0,l[8]=0,l[12]=d,l[1]=0,l[5]=u,l[9]=0,l[13]=p,l[2]=0,l[6]=0,l[10]=f,l[14]=m,l[3]=0,l[7]=0,l[11]=0,l[15]=1,this}equals(t){let e=this.elements,i=t.elements;for(let s=0;s<16;s++)if(e[s]!==i[s])return!1;return!0}fromArray(t,e=0){for(let i=0;i<16;i++)this.elements[i]=t[i+e];return this}toArray(t=[],e=0){let i=this.elements;return t[e]=i[0],t[e+1]=i[1],t[e+2]=i[2],t[e+3]=i[3],t[e+4]=i[4],t[e+5]=i[5],t[e+6]=i[6],t[e+7]=i[7],t[e+8]=i[8],t[e+9]=i[9],t[e+10]=i[10],t[e+11]=i[11],t[e+12]=i[12],t[e+13]=i[13],t[e+14]=i[14],t[e+15]=i[15],t}},si=new M,Wt=new q,Zu=new M(0,0,0),Yu=new M(1,1,1),we=new M,ds=new M,Ct=new M,Ja=new q,Ga=new xt,ie=class h{constructor(t=0,e=0,i=0,s=h.DEFAULT_ORDER){this.isEuler=!0,this._x=t,this._y=e,this._z=i,this._order=s}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,i,s=this._order){return this._x=t,this._y=e,this._z=i,this._order=s,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,i=!0){let s=t.elements,n=s[0],r=s[4],o=s[8],a=s[1],l=s[5],c=s[9],u=s[2],d=s[6],p=s[10];switch(e){case\"XYZ\":this._y=Math.asin(V(o,-1,1)),Math.abs(o)<.9999999?(this._x=Math.atan2(-c,p),this._z=Math.atan2(-r,n)):(this._x=Math.atan2(d,l),this._z=0);break;case\"YXZ\":this._x=Math.asin(-V(c,-1,1)),Math.abs(c)<.9999999?(this._y=Math.atan2(o,p),this._z=Math.atan2(a,l)):(this._y=Math.atan2(-u,n),this._z=0);break;case\"ZXY\":this._x=Math.asin(V(d,-1,1)),Math.abs(d)<.9999999?(this._y=Math.atan2(-u,p),this._z=Math.atan2(-r,l)):(this._y=0,this._z=Math.atan2(a,n));break;case\"ZYX\":this._y=Math.asin(-V(u,-1,1)),Math.abs(u)<.9999999?(this._x=Math.atan2(d,p),this._z=Math.atan2(a,n)):(this._x=0,this._z=Math.atan2(-r,l));break;case\"YZX\":this._z=Math.asin(V(a,-1,1)),Math.abs(a)<.9999999?(this._x=Math.atan2(-c,l),this._y=Math.atan2(-u,n)):(this._x=0,this._y=Math.atan2(o,p));break;case\"XZY\":this._z=Math.asin(-V(r,-1,1)),Math.abs(r)<.9999999?(this._x=Math.atan2(d,l),this._y=Math.atan2(o,n)):(this._x=Math.atan2(-c,p),this._y=0);break;default:N(\"Euler: .setFromRotationMatrix() encountered an unknown order: \"+e)}return this._order=e,i===!0&&this._onChangeCallback(),this}setFromQuaternion(t,e,i){return Ja.makeRotationFromQuaternion(t),this.setFromRotationMatrix(Ja,e,i)}setFromVector3(t,e=this._order){return this.set(t.x,t.y,t.z,e)}reorder(t){return Ga.setFromEuler(this),this.setFromQuaternion(Ga,t)}equals(t){return t._x===this._x&&t._y===this._y&&t._z===this._z&&t._order===this._order}fromArray(t){return this._x=t[0],this._y=t[1],this._z=t[2],t[3]!==void 0&&(this._order=t[3]),this._onChangeCallback(),this}toArray(t=[],e=0){return t[e]=this._x,t[e+1]=this._y,t[e+2]=this._z,t[e+3]=this._order,t}_onChange(t){return this._onChangeCallback=t,this}_onChangeCallback(){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._order}};ie.DEFAULT_ORDER=\"XYZ\";var un=class{constructor(){this.mask=1}set(t){this.mask=(1<<t|0)>>>0}enable(t){this.mask|=1<<t|0}enableAll(){this.mask=-1}toggle(t){this.mask^=1<<t|0}disable(t){this.mask&=~(1<<t|0)}disableAll(){this.mask=0}test(t){return(this.mask&t.mask)!==0}isEnabled(t){return(this.mask&(1<<t|0))!==0}},$u=0,Xa=new M,ni=new xt,ae=new q,ps=new M,Ni=new M,ju=new M,Qu=new xt,Ha=new M(1,0,0),Za=new M(0,1,0),Ya=new M(0,0,1),$a={type:\"added\"},Ku={type:\"removed\"},ri={type:\"childadded\",child:null},Gn={type:\"childremoved\",child:null},Y=class h extends te{constructor(){super(),this.isObject3D=!0,Object.defineProperty(this,\"id\",{value:$u++}),this.uuid=Bt(),this.name=\"\",this.type=\"Object3D\",this.parent=null,this.children=[],this.up=h.DEFAULT_UP.clone();let t=new M,e=new ie,i=new xt,s=new M(1,1,1);function n(){i.setFromEuler(e,!1)}function r(){e.setFromQuaternion(i,void 0,!1)}e._onChange(n),i._onChange(r),Object.defineProperties(this,{position:{configurable:!0,enumerable:!0,value:t},rotation:{configurable:!0,enumerable:!0,value:e},quaternion:{configurable:!0,enumerable:!0,value:i},scale:{configurable:!0,enumerable:!0,value:s},modelViewMatrix:{value:new q},normalMatrix:{value:new ee}}),this.matrix=new q,this.matrixWorld=new q,this.matrixAutoUpdate=h.DEFAULT_MATRIX_AUTO_UPDATE,this.matrixWorldAutoUpdate=h.DEFAULT_MATRIX_WORLD_AUTO_UPDATE,this.matrixWorldNeedsUpdate=!1,this.layers=new un,this.visible=!0,this.castShadow=!1,this.receiveShadow=!1,this.frustumCulled=!0,this.renderOrder=0,this.animations=[],this.customDepthMaterial=void 0,this.customDistanceMaterial=void 0,this.static=!1,this.userData={},this.pivot=null}onBeforeShadow(){}onAfterShadow(){}onBeforeRender(){}onAfterRender(){}applyMatrix4(t){this.matrixAutoUpdate&&this.updateMatrix(),this.matrix.premultiply(t),this.matrix.decompose(this.position,this.quaternion,this.scale)}applyQuaternion(t){return this.quaternion.premultiply(t),this}setRotationFromAxisAngle(t,e){this.quaternion.setFromAxisAngle(t,e)}setRotationFromEuler(t){this.quaternion.setFromEuler(t,!0)}setRotationFromMatrix(t){this.quaternion.setFromRotationMatrix(t)}setRotationFromQuaternion(t){this.quaternion.copy(t)}rotateOnAxis(t,e){return ni.setFromAxisAngle(t,e),this.quaternion.multiply(ni),this}rotateOnWorldAxis(t,e){return ni.setFromAxisAngle(t,e),this.quaternion.premultiply(ni),this}rotateX(t){return this.rotateOnAxis(Ha,t)}rotateY(t){return this.rotateOnAxis(Za,t)}rotateZ(t){return this.rotateOnAxis(Ya,t)}translateOnAxis(t,e){return Xa.copy(t).applyQuaternion(this.quaternion),this.position.add(Xa.multiplyScalar(e)),this}translateX(t){return this.translateOnAxis(Ha,t)}translateY(t){return this.translateOnAxis(Za,t)}translateZ(t){return this.translateOnAxis(Ya,t)}localToWorld(t){return this.updateWorldMatrix(!0,!1),t.applyMatrix4(this.matrixWorld)}worldToLocal(t){return this.updateWorldMatrix(!0,!1),t.applyMatrix4(ae.copy(this.matrixWorld).invert())}lookAt(t,e,i){t.isVector3?ps.copy(t):ps.set(t,e,i);let s=this.parent;this.updateWorldMatrix(!0,!1),Ni.setFromMatrixPosition(this.matrixWorld),this.isCamera||this.isLight?ae.lookAt(Ni,ps,this.up):ae.lookAt(ps,Ni,this.up),this.quaternion.setFromRotationMatrix(ae),s&&(ae.extractRotation(s.matrixWorld),ni.setFromRotationMatrix(ae),this.quaternion.premultiply(ni.invert()))}add(t){if(arguments.length>1){for(let e=0;e<arguments.length;e++)this.add(arguments[e]);return this}return t===this?(Z(\"Object3D.add: object can't be added as a child of itself.\",t),this):(t&&t.isObject3D?(t.removeFromParent(),t.parent=this,this.children.push(t),t.dispatchEvent($a),ri.child=t,this.dispatchEvent(ri),ri.child=null):Z(\"Object3D.add: object not an instance of THREE.Object3D.\",t),this)}remove(t){if(arguments.length>1){for(let i=0;i<arguments.length;i++)this.remove(arguments[i]);return this}let e=this.children.indexOf(t);return e!==-1&&(t.parent=null,this.children.splice(e,1),t.dispatchEvent(Ku),Gn.child=t,this.dispatchEvent(Gn),Gn.child=null),this}removeFromParent(){let t=this.parent;return t!==null&&t.remove(this),this}clear(){return this.remove(...this.children)}attach(t){return this.updateWorldMatrix(!0,!1),ae.copy(this.matrixWorld).invert(),t.parent!==null&&(t.parent.updateWorldMatrix(!0,!1),ae.multiply(t.parent.matrixWorld)),t.applyMatrix4(ae),t.removeFromParent(),t.parent=this,this.children.push(t),t.updateWorldMatrix(!1,!0),t.dispatchEvent($a),ri.child=t,this.dispatchEvent(ri),ri.child=null,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 i=0,s=this.children.length;i<s;i++){let r=this.children[i].getObjectByProperty(t,e);if(r!==void 0)return r}}getObjectsByProperty(t,e,i=[]){this[t]===e&&i.push(this);let s=this.children;for(let n=0,r=s.length;n<r;n++)s[n].getObjectsByProperty(t,e,i);return i}getWorldPosition(t){return this.updateWorldMatrix(!0,!1),t.setFromMatrixPosition(this.matrixWorld)}getWorldQuaternion(t){return this.updateWorldMatrix(!0,!1),this.matrixWorld.decompose(Ni,t,ju),t}getWorldScale(t){return this.updateWorldMatrix(!0,!1),this.matrixWorld.decompose(Ni,Qu,t),t}getWorldDirection(t){this.updateWorldMatrix(!0,!1);let e=this.matrixWorld.elements;return t.set(e[8],e[9],e[10]).normalize()}raycast(){}traverse(t){t(this);let e=this.children;for(let i=0,s=e.length;i<s;i++)e[i].traverse(t)}traverseVisible(t){if(this.visible===!1)return;t(this);let e=this.children;for(let i=0,s=e.length;i<s;i++)e[i].traverseVisible(t)}traverseAncestors(t){let e=this.parent;e!==null&&(t(e),e.traverseAncestors(t))}updateMatrix(){this.matrix.compose(this.position,this.quaternion,this.scale);let t=this.pivot;if(t!==null){let e=t.x,i=t.y,s=t.z,n=this.matrix.elements;n[12]+=e-n[0]*e-n[4]*i-n[8]*s,n[13]+=i-n[1]*e-n[5]*i-n[9]*s,n[14]+=s-n[2]*e-n[6]*i-n[10]*s}this.matrixWorldNeedsUpdate=!0}updateMatrixWorld(t){this.matrixAutoUpdate&&this.updateMatrix(),(this.matrixWorldNeedsUpdate||t)&&(this.matrixWorldAutoUpdate===!0&&(this.parent===null?this.matrixWorld.copy(this.matrix):this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.matrix)),this.matrixWorldNeedsUpdate=!1,t=!0);let e=this.children;for(let i=0,s=e.length;i<s;i++)e[i].updateMatrixWorld(t)}updateWorldMatrix(t,e){let i=this.parent;if(t===!0&&i!==null&&i.updateWorldMatrix(!0,!1),this.matrixAutoUpdate&&this.updateMatrix(),this.matrixWorldAutoUpdate===!0&&(this.parent===null?this.matrixWorld.copy(this.matrix):this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.matrix)),e===!0){let s=this.children;for(let n=0,r=s.length;n<r;n++)s[n].updateWorldMatrix(!1,!0)}}toJSON(t){let e=t===void 0||typeof t==\"string\",i={};e&&(t={geometries:{},materials:{},textures:{},images:{},shapes:{},skeletons:{},animations:{},nodes:{}},i.metadata={version:4.7,type:\"Object\",generator:\"Object3D.toJSON\"});let s={};s.uuid=this.uuid,s.type=this.type,this.name!==\"\"&&(s.name=this.name),this.castShadow===!0&&(s.castShadow=!0),this.receiveShadow===!0&&(s.receiveShadow=!0),this.visible===!1&&(s.visible=!1),this.frustumCulled===!1&&(s.frustumCulled=!1),this.renderOrder!==0&&(s.renderOrder=this.renderOrder),this.static!==!1&&(s.static=this.static),Object.keys(this.userData).length>0&&(s.userData=this.userData),s.layers=this.layers.mask,s.matrix=this.matrix.toArray(),s.up=this.up.toArray(),this.pivot!==null&&(s.pivot=this.pivot.toArray()),this.matrixAutoUpdate===!1&&(s.matrixAutoUpdate=!1),this.morphTargetDictionary!==void 0&&(s.morphTargetDictionary=Object.assign({},this.morphTargetDictionary)),this.morphTargetInfluences!==void 0&&(s.morphTargetInfluences=this.morphTargetInfluences.slice()),this.isInstancedMesh&&(s.type=\"InstancedMesh\",s.count=this.count,s.instanceMatrix=this.instanceMatrix.toJSON(),this.instanceColor!==null&&(s.instanceColor=this.instanceColor.toJSON())),this.isBatchedMesh&&(s.type=\"BatchedMesh\",s.perObjectFrustumCulled=this.perObjectFrustumCulled,s.sortObjects=this.sortObjects,s.drawRanges=this._drawRanges,s.reservedRanges=this._reservedRanges,s.geometryInfo=this._geometryInfo.map(o=>({...o,boundingBox:o.boundingBox?o.boundingBox.toJSON():void 0,boundingSphere:o.boundingSphere?o.boundingSphere.toJSON():void 0})),s.instanceInfo=this._instanceInfo.map(o=>({...o})),s.availableInstanceIds=this._availableInstanceIds.slice(),s.availableGeometryIds=this._availableGeometryIds.slice(),s.nextIndexStart=this._nextIndexStart,s.nextVertexStart=this._nextVertexStart,s.geometryCount=this._geometryCount,s.maxInstanceCount=this._maxInstanceCount,s.maxVertexCount=this._maxVertexCount,s.maxIndexCount=this._maxIndexCount,s.geometryInitialized=this._geometryInitialized,s.matricesTexture=this._matricesTexture.toJSON(t),s.indirectTexture=this._indirectTexture.toJSON(t),this._colorsTexture!==null&&(s.colorsTexture=this._colorsTexture.toJSON(t)),this.boundingSphere!==null&&(s.boundingSphere=this.boundingSphere.toJSON()),this.boundingBox!==null&&(s.boundingBox=this.boundingBox.toJSON()));function n(o,a){return o[a.uuid]===void 0&&(o[a.uuid]=a.toJSON(t)),a.uuid}if(this.isScene)this.background&&(this.background.isColor?s.background=this.background.toJSON():this.background.isTexture&&(s.background=this.background.toJSON(t).uuid)),this.environment&&this.environment.isTexture&&this.environment.isRenderTargetTexture!==!0&&(s.environment=this.environment.toJSON(t).uuid);else if(this.isMesh||this.isLine||this.isPoints){s.geometry=n(t.geometries,this.geometry);let o=this.geometry.parameters;if(o!==void 0&&o.shapes!==void 0){let a=o.shapes;if(Array.isArray(a))for(let l=0,c=a.length;l<c;l++){let u=a[l];n(t.shapes,u)}else n(t.shapes,a)}}if(this.isSkinnedMesh&&(s.bindMode=this.bindMode,s.bindMatrix=this.bindMatrix.toArray(),this.skeleton!==void 0&&(n(t.skeletons,this.skeleton),s.skeleton=this.skeleton.uuid)),this.material!==void 0)if(Array.isArray(this.material)){let o=[];for(let a=0,l=this.material.length;a<l;a++)o.push(n(t.materials,this.material[a]));s.material=o}else s.material=n(t.materials,this.material);if(this.children.length>0){s.children=[];for(let o=0;o<this.children.length;o++)s.children.push(this.children[o].toJSON(t).object)}if(this.animations.length>0){s.animations=[];for(let o=0;o<this.animations.length;o++){let a=this.animations[o];s.animations.push(n(t.animations,a))}}if(e){let o=r(t.geometries),a=r(t.materials),l=r(t.textures),c=r(t.images),u=r(t.shapes),d=r(t.skeletons),p=r(t.animations),f=r(t.nodes);o.length>0&&(i.geometries=o),a.length>0&&(i.materials=a),l.length>0&&(i.textures=l),c.length>0&&(i.images=c),u.length>0&&(i.shapes=u),d.length>0&&(i.skeletons=d),p.length>0&&(i.animations=p),f.length>0&&(i.nodes=f)}return i.object=s,i;function r(o){let a=[];for(let l in o){let c=o[l];delete c.metadata,a.push(c)}return a}}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),t.pivot!==null&&(this.pivot=t.pivot.clone()),this.matrix.copy(t.matrix),this.matrixWorld.copy(t.matrixWorld),this.matrixAutoUpdate=t.matrixAutoUpdate,this.matrixWorldAutoUpdate=t.matrixWorldAutoUpdate,this.matrixWorldNeedsUpdate=t.matrixWorldNeedsUpdate,this.layers.mask=t.layers.mask,this.visible=t.visible,this.castShadow=t.castShadow,this.receiveShadow=t.receiveShadow,this.frustumCulled=t.frustumCulled,this.renderOrder=t.renderOrder,this.static=t.static,this.animations=t.animations.slice(),this.userData=JSON.parse(JSON.stringify(t.userData)),e===!0)for(let i=0;i<t.children.length;i++){let s=t.children[i];this.add(s.clone())}return this}};Y.DEFAULT_UP=new M(0,1,0);Y.DEFAULT_MATRIX_AUTO_UPDATE=!0;Y.DEFAULT_MATRIX_WORLD_AUTO_UPDATE=!0;var Xe=class extends Y{constructor(){super(),this.isGroup=!0,this.type=\"Group\"}},td={type:\"move\"},ja=class{constructor(){this._targetRay=null,this._grip=null,this._hand=null}getHandSpace(){return this._hand===null&&(this._hand=new Xe,this._hand.matrixAutoUpdate=!1,this._hand.visible=!1,this._hand.joints={},this._hand.inputState={pinching:!1}),this._hand}getTargetRaySpace(){return this._targetRay===null&&(this._targetRay=new Xe,this._targetRay.matrixAutoUpdate=!1,this._targetRay.visible=!1,this._targetRay.hasLinearVelocity=!1,this._targetRay.linearVelocity=new M,this._targetRay.hasAngularVelocity=!1,this._targetRay.angularVelocity=new M),this._targetRay}getGripSpace(){return this._grip===null&&(this._grip=new Xe,this._grip.matrixAutoUpdate=!1,this._grip.visible=!1,this._grip.hasLinearVelocity=!1,this._grip.linearVelocity=new M,this._grip.hasAngularVelocity=!1,this._grip.angularVelocity=new M),this._grip}dispatchEvent(t){return this._targetRay!==null&&this._targetRay.dispatchEvent(t),this._grip!==null&&this._grip.dispatchEvent(t),this._hand!==null&&this._hand.dispatchEvent(t),this}connect(t){if(t&&t.hand){let e=this._hand;if(e)for(let i of t.hand.values())this._getHandJoint(e,i)}return this.dispatchEvent({type:\"connected\",data:t}),this}disconnect(t){return this.dispatchEvent({type:\"disconnected\",data:t}),this._targetRay!==null&&(this._targetRay.visible=!1),this._grip!==null&&(this._grip.visible=!1),this._hand!==null&&(this._hand.visible=!1),this}update(t,e,i){let s=null,n=null,r=null,o=this._targetRay,a=this._grip,l=this._hand;if(t&&e.session.visibilityState!==\"visible-blurred\"){if(l&&t.hand){r=!0;for(let m of t.hand.values()){let g=e.getJointPose(m,i),y=this._getHandJoint(l,m);g!==null&&(y.matrix.fromArray(g.transform.matrix),y.matrix.decompose(y.position,y.rotation,y.scale),y.matrixWorldNeedsUpdate=!0,y.jointRadius=g.radius),y.visible=g!==null}let c=l.joints[\"index-finger-tip\"],u=l.joints[\"thumb-tip\"],d=c.position.distanceTo(u.position),p=.02,f=.005;l.inputState.pinching&&d>p+f?(l.inputState.pinching=!1,this.dispatchEvent({type:\"pinchend\",handedness:t.handedness,target:this})):!l.inputState.pinching&&d<=p-f&&(l.inputState.pinching=!0,this.dispatchEvent({type:\"pinchstart\",handedness:t.handedness,target:this}))}else a!==null&&t.gripSpace&&(n=e.getPose(t.gripSpace,i),n!==null&&(a.matrix.fromArray(n.transform.matrix),a.matrix.decompose(a.position,a.rotation,a.scale),a.matrixWorldNeedsUpdate=!0,n.linearVelocity?(a.hasLinearVelocity=!0,a.linearVelocity.copy(n.linearVelocity)):a.hasLinearVelocity=!1,n.angularVelocity?(a.hasAngularVelocity=!0,a.angularVelocity.copy(n.angularVelocity)):a.hasAngularVelocity=!1));o!==null&&(s=e.getPose(t.targetRaySpace,i),s===null&&n!==null&&(s=n),s!==null&&(o.matrix.fromArray(s.transform.matrix),o.matrix.decompose(o.position,o.rotation,o.scale),o.matrixWorldNeedsUpdate=!0,s.linearVelocity?(o.hasLinearVelocity=!0,o.linearVelocity.copy(s.linearVelocity)):o.hasLinearVelocity=!1,s.angularVelocity?(o.hasAngularVelocity=!0,o.angularVelocity.copy(s.angularVelocity)):o.hasAngularVelocity=!1,this.dispatchEvent(td)))}return o!==null&&(o.visible=s!==null),a!==null&&(a.visible=n!==null),l!==null&&(l.visible=r!==null),this}_getHandJoint(t,e){if(t.joints[e.jointName]===void 0){let i=new Xe;i.matrixAutoUpdate=!1,i.visible=!1,t.joints[e.jointName]=i,t.add(i)}return t.joints[e.jointName]}},nc={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},Me={h:0,s:0,l:0},fs={h:0,s:0,l:0};function Xn(h,t,e){return e<0&&(e+=1),e>1&&(e-=1),e<1/6?h+(t-h)*6*e:e<1/2?t:e<2/3?h+(t-h)*6*(2/3-e):h}var U=class{constructor(t,e,i){return this.isColor=!0,this.r=1,this.g=1,this.b=1,this.set(t,e,i)}set(t,e,i){if(e===void 0&&i===void 0){let s=t;s&&s.isColor?this.copy(s):typeof s==\"number\"?this.setHex(s):typeof s==\"string\"&&this.setStyle(s)}else this.setRGB(t,e,i);return this}setScalar(t){return this.r=t,this.g=t,this.b=t,this}setHex(t,e=Et){return t=Math.floor(t),this.r=(t>>16&255)/255,this.g=(t>>8&255)/255,this.b=(t&255)/255,Ft.colorSpaceToWorking(this,e),this}setRGB(t,e,i,s=Ft.workingColorSpace){return this.r=t,this.g=e,this.b=i,Ft.colorSpaceToWorking(this,s),this}setHSL(t,e,i,s=Ft.workingColorSpace){if(t=aa(t,1),e=V(e,0,1),i=V(i,0,1),e===0)this.r=this.g=this.b=i;else{let n=i<=.5?i*(1+e):i+e-i*e,r=2*i-n;this.r=Xn(r,n,t+1/3),this.g=Xn(r,n,t),this.b=Xn(r,n,t-1/3)}return Ft.colorSpaceToWorking(this,s),this}setStyle(t,e=Et){function i(n){n!==void 0&&parseFloat(n)<1&&N(\"Color: Alpha component of \"+t+\" will be ignored.\")}let s;if(s=/^(\\w+)\\(([^\\)]*)\\)/.exec(t)){let n,r=s[1],o=s[2];switch(r){case\"rgb\":case\"rgba\":if(n=/^\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)\\s*(?:,\\s*(\\d*\\.?\\d+)\\s*)?$/.exec(o))return i(n[4]),this.setRGB(Math.min(255,parseInt(n[1],10))/255,Math.min(255,parseInt(n[2],10))/255,Math.min(255,parseInt(n[3],10))/255,e);if(n=/^\\s*(\\d+)\\%\\s*,\\s*(\\d+)\\%\\s*,\\s*(\\d+)\\%\\s*(?:,\\s*(\\d*\\.?\\d+)\\s*)?$/.exec(o))return i(n[4]),this.setRGB(Math.min(100,parseInt(n[1],10))/100,Math.min(100,parseInt(n[2],10))/100,Math.min(100,parseInt(n[3],10))/100,e);break;case\"hsl\":case\"hsla\":if(n=/^\\s*(\\d*\\.?\\d+)\\s*,\\s*(\\d*\\.?\\d+)\\%\\s*,\\s*(\\d*\\.?\\d+)\\%\\s*(?:,\\s*(\\d*\\.?\\d+)\\s*)?$/.exec(o))return i(n[4]),this.setHSL(parseFloat(n[1])/360,parseFloat(n[2])/100,parseFloat(n[3])/100,e);break;default:N(\"Color: Unknown color model \"+t)}}else if(s=/^\\#([A-Fa-f\\d]+)$/.exec(t)){let n=s[1],r=n.length;if(r===3)return this.setRGB(parseInt(n.charAt(0),16)/15,parseInt(n.charAt(1),16)/15,parseInt(n.charAt(2),16)/15,e);if(r===6)return this.setHex(parseInt(n,16),e);N(\"Color: Invalid hex color \"+t)}else if(t&&t.length>0)return this.setColorName(t,e);return this}setColorName(t,e=Et){let i=nc[t.toLowerCase()];return i!==void 0?this.setHex(i,e):N(\"Color: Unknown color \"+t),this}clone(){return new this.constructor(this.r,this.g,this.b)}copy(t){return this.r=t.r,this.g=t.g,this.b=t.b,this}copySRGBToLinear(t){return this.r=ge(t.r),this.g=ge(t.g),this.b=ge(t.b),this}copyLinearToSRGB(t){return this.r=Ai(t.r),this.g=Ai(t.g),this.b=Ai(t.b),this}convertSRGBToLinear(){return this.copySRGBToLinear(this),this}convertLinearToSRGB(){return this.copyLinearToSRGB(this),this}getHex(t=Et){return Ft.workingToColorSpace(yt.copy(this),t),Math.round(V(yt.r*255,0,255))*65536+Math.round(V(yt.g*255,0,255))*256+Math.round(V(yt.b*255,0,255))}getHexString(t=Et){return(\"000000\"+this.getHex(t).toString(16)).slice(-6)}getHSL(t,e=Ft.workingColorSpace){Ft.workingToColorSpace(yt.copy(this),e);let i=yt.r,s=yt.g,n=yt.b,r=Math.max(i,s,n),o=Math.min(i,s,n),a,l,c=(o+r)/2;if(o===r)a=0,l=0;else{let u=r-o;switch(l=c<=.5?u/(r+o):u/(2-r-o),r){case i:a=(s-n)/u+(s<n?6:0);break;case s:a=(n-i)/u+2;break;case n:a=(i-s)/u+4;break}a/=6}return t.h=a,t.s=l,t.l=c,t}getRGB(t,e=Ft.workingColorSpace){return Ft.workingToColorSpace(yt.copy(this),e),t.r=yt.r,t.g=yt.g,t.b=yt.b,t}getStyle(t=Et){Ft.workingToColorSpace(yt.copy(this),t);let e=yt.r,i=yt.g,s=yt.b;return t!==Et?`color(${t} ${e.toFixed(3)} ${i.toFixed(3)} ${s.toFixed(3)})`:`rgb(${Math.round(e*255)},${Math.round(i*255)},${Math.round(s*255)})`}offsetHSL(t,e,i){return this.getHSL(Me),this.setHSL(Me.h+t,Me.s+e,Me.l+i)}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,i){return this.r=t.r+(e.r-t.r)*i,this.g=t.g+(e.g-t.g)*i,this.b=t.b+(e.b-t.b)*i,this}lerpHSL(t,e){this.getHSL(Me),t.getHSL(fs);let i=$i(Me.h,fs.h,e),s=$i(Me.s,fs.s,e),n=$i(Me.l,fs.l,e);return this.setHSL(i,s,n),this}setFromVector3(t){return this.r=t.x,this.g=t.y,this.b=t.z,this}applyMatrix3(t){let e=this.r,i=this.g,s=this.b,n=t.elements;return this.r=n[0]*e+n[3]*i+n[6]*s,this.g=n[1]*e+n[4]*i+n[7]*s,this.b=n[2]*e+n[5]*i+n[8]*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),this}toJSON(){return this.getHex()}*[Symbol.iterator](){yield this.r,yield this.g,yield this.b}},yt=new U;U.NAMES=nc;var Br=class h{constructor(t,e=25e-5){this.isFogExp2=!0,this.name=\"\",this.color=new U(t),this.density=e}clone(){return new h(this.color,this.density)}toJSON(){return{type:\"FogExp2\",name:this.name,color:this.color.getHex(),density:this.density}}},kr=class h{constructor(t,e=1,i=1e3){this.isFog=!0,this.name=\"\",this.color=new U(t),this.near=e,this.far=i}clone(){return new h(this.color,this.near,this.far)}toJSON(){return{type:\"Fog\",name:this.name,color:this.color.getHex(),near:this.near,far:this.far}}},Pr=class extends Y{constructor(){super(),this.isScene=!0,this.type=\"Scene\",this.background=null,this.environment=null,this.fog=null,this.backgroundBlurriness=0,this.backgroundIntensity=1,this.backgroundRotation=new ie,this.environmentIntensity=1,this.environmentRotation=new ie,this.overrideMaterial=null,typeof __THREE_DEVTOOLS__<\"u\"&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent(\"observe\",{detail:this}))}copy(t,e){return super.copy(t,e),t.background!==null&&(this.background=t.background.clone()),t.environment!==null&&(this.environment=t.environment.clone()),t.fog!==null&&(this.fog=t.fog.clone()),this.backgroundBlurriness=t.backgroundBlurriness,this.backgroundIntensity=t.backgroundIntensity,this.backgroundRotation.copy(t.backgroundRotation),this.environmentIntensity=t.environmentIntensity,this.environmentRotation.copy(t.environmentRotation),t.overrideMaterial!==null&&(this.overrideMaterial=t.overrideMaterial.clone()),this.matrixAutoUpdate=t.matrixAutoUpdate,this}toJSON(t){let e=super.toJSON(t);return this.fog!==null&&(e.object.fog=this.fog.toJSON()),this.backgroundBlurriness>0&&(e.object.backgroundBlurriness=this.backgroundBlurriness),this.backgroundIntensity!==1&&(e.object.backgroundIntensity=this.backgroundIntensity),e.object.backgroundRotation=this.backgroundRotation.toArray(),this.environmentIntensity!==1&&(e.object.environmentIntensity=this.environmentIntensity),e.object.environmentRotation=this.environmentRotation.toArray(),e}},qt=new M,he=new M,Hn=new M,le=new M,oi=new M,ai=new M,Qa=new M,Zn=new M,Yn=new M,$n=new M,jn=new Nt,Qn=new Nt,Kn=new Nt,pe=class h{constructor(t=new M,e=new M,i=new M){this.a=t,this.b=e,this.c=i}static getNormal(t,e,i,s){s.subVectors(i,e),qt.subVectors(t,e),s.cross(qt);let n=s.lengthSq();return n>0?s.multiplyScalar(1/Math.sqrt(n)):s.set(0,0,0)}static getBarycoord(t,e,i,s,n){qt.subVectors(s,e),he.subVectors(i,e),Hn.subVectors(t,e);let r=qt.dot(qt),o=qt.dot(he),a=qt.dot(Hn),l=he.dot(he),c=he.dot(Hn),u=r*l-o*o;if(u===0)return n.set(0,0,0),null;let d=1/u,p=(l*a-o*c)*d,f=(r*c-o*a)*d;return n.set(1-p-f,f,p)}static containsPoint(t,e,i,s){return this.getBarycoord(t,e,i,s,le)===null?!1:le.x>=0&&le.y>=0&&le.x+le.y<=1}static getInterpolation(t,e,i,s,n,r,o,a){return this.getBarycoord(t,e,i,s,le)===null?(a.x=0,a.y=0,\"z\"in a&&(a.z=0),\"w\"in a&&(a.w=0),null):(a.setScalar(0),a.addScaledVector(n,le.x),a.addScaledVector(r,le.y),a.addScaledVector(o,le.z),a)}static getInterpolatedAttribute(t,e,i,s,n,r){return jn.setScalar(0),Qn.setScalar(0),Kn.setScalar(0),jn.fromBufferAttribute(t,e),Qn.fromBufferAttribute(t,i),Kn.fromBufferAttribute(t,s),r.setScalar(0),r.addScaledVector(jn,n.x),r.addScaledVector(Qn,n.y),r.addScaledVector(Kn,n.z),r}static isFrontFacing(t,e,i,s){return qt.subVectors(i,e),he.subVectors(t,e),qt.cross(he).dot(s)<0}set(t,e,i){return this.a.copy(t),this.b.copy(e),this.c.copy(i),this}setFromPointsAndIndices(t,e,i,s){return this.a.copy(t[e]),this.b.copy(t[i]),this.c.copy(t[s]),this}setFromAttributeAndIndices(t,e,i,s){return this.a.fromBufferAttribute(t,e),this.b.fromBufferAttribute(t,i),this.c.fromBufferAttribute(t,s),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 qt.subVectors(this.c,this.b),he.subVectors(this.a,this.b),qt.cross(he).length()*.5}getMidpoint(t){return t.addVectors(this.a,this.b).add(this.c).multiplyScalar(1/3)}getNormal(t){return h.getNormal(this.a,this.b,this.c,t)}getPlane(t){return t.setFromCoplanarPoints(this.a,this.b,this.c)}getBarycoord(t,e){return h.getBarycoord(t,this.a,this.b,this.c,e)}getInterpolation(t,e,i,s,n){return h.getInterpolation(t,this.a,this.b,this.c,e,i,s,n)}containsPoint(t){return h.containsPoint(t,this.a,this.b,this.c)}isFrontFacing(t){return h.isFrontFacing(this.a,this.b,this.c,t)}intersectsBox(t){return t.intersectsTriangle(this)}closestPointToPoint(t,e){let i=this.a,s=this.b,n=this.c,r,o;oi.subVectors(s,i),ai.subVectors(n,i),Zn.subVectors(t,i);let a=oi.dot(Zn),l=ai.dot(Zn);if(a<=0&&l<=0)return e.copy(i);Yn.subVectors(t,s);let c=oi.dot(Yn),u=ai.dot(Yn);if(c>=0&&u<=c)return e.copy(s);let d=a*u-c*l;if(d<=0&&a>=0&&c<=0)return r=a/(a-c),e.copy(i).addScaledVector(oi,r);$n.subVectors(t,n);let p=oi.dot($n),f=ai.dot($n);if(f>=0&&p<=f)return e.copy(n);let m=p*l-a*f;if(m<=0&&l>=0&&f<=0)return o=l/(l-f),e.copy(i).addScaledVector(ai,o);let g=c*f-p*u;if(g<=0&&u-c>=0&&p-f>=0)return Qa.subVectors(n,s),o=(u-c)/(u-c+(p-f)),e.copy(s).addScaledVector(Qa,o);let y=1/(g+m+d);return r=m*y,o=d*y,e.copy(i).addScaledVector(oi,r).addScaledVector(ai,o)}equals(t){return t.a.equals(this.a)&&t.b.equals(this.b)&&t.c.equals(this.c)}},pt=class{constructor(t=new M(1/0,1/0,1/0),e=new M(-1/0,-1/0,-1/0)){this.isBox3=!0,this.min=t,this.max=e}set(t,e){return this.min.copy(t),this.max.copy(e),this}setFromArray(t){this.makeEmpty();for(let e=0,i=t.length;e<i;e+=3)this.expandByPoint(Jt.fromArray(t,e));return this}setFromBufferAttribute(t){this.makeEmpty();for(let e=0,i=t.count;e<i;e++)this.expandByPoint(Jt.fromBufferAttribute(t,e));return this}setFromPoints(t){this.makeEmpty();for(let e=0,i=t.length;e<i;e++)this.expandByPoint(t[e]);return this}setFromCenterAndSize(t,e){let i=Jt.copy(e).multiplyScalar(.5);return this.min.copy(t).sub(i),this.max.copy(t).add(i),this}setFromObject(t,e=!1){return this.makeEmpty(),this.expandByObject(t,e)}clone(){return new this.constructor().copy(this)}copy(t){return this.min.copy(t.min),this.max.copy(t.max),this}makeEmpty(){return this.min.x=this.min.y=this.min.z=1/0,this.max.x=this.max.y=this.max.z=-1/0,this}isEmpty(){return this.max.x<this.min.x||this.max.y<this.min.y||this.max.z<this.min.z}getCenter(t){return this.isEmpty()?t.set(0,0,0):t.addVectors(this.min,this.max).multiplyScalar(.5)}getSize(t){return this.isEmpty()?t.set(0,0,0):t.subVectors(this.max,this.min)}expandByPoint(t){return this.min.min(t),this.max.max(t),this}expandByVector(t){return this.min.sub(t),this.max.add(t),this}expandByScalar(t){return this.min.addScalar(-t),this.max.addScalar(t),this}expandByObject(t,e=!1){t.updateWorldMatrix(!1,!1);let i=t.geometry;if(i!==void 0){let n=i.getAttribute(\"position\");if(e===!0&&n!==void 0&&t.isInstancedMesh!==!0)for(let r=0,o=n.count;r<o;r++)t.isMesh===!0?t.getVertexPosition(r,Jt):Jt.fromBufferAttribute(n,r),Jt.applyMatrix4(t.matrixWorld),this.expandByPoint(Jt);else t.boundingBox!==void 0?(t.boundingBox===null&&t.computeBoundingBox(),ms.copy(t.boundingBox)):(i.boundingBox===null&&i.computeBoundingBox(),ms.copy(i.boundingBox)),ms.applyMatrix4(t.matrixWorld),this.union(ms)}let s=t.children;for(let n=0,r=s.length;n<r;n++)this.expandByObject(s[n],e);return this}containsPoint(t){return t.x>=this.min.x&&t.x<=this.max.x&&t.y>=this.min.y&&t.y<=this.max.y&&t.z>=this.min.z&&t.z<=this.max.z}containsBox(t){return this.min.x<=t.min.x&&t.max.x<=this.max.x&&this.min.y<=t.min.y&&t.max.y<=this.max.y&&this.min.z<=t.min.z&&t.max.z<=this.max.z}getParameter(t,e){return e.set((t.x-this.min.x)/(this.max.x-this.min.x),(t.y-this.min.y)/(this.max.y-this.min.y),(t.z-this.min.z)/(this.max.z-this.min.z))}intersectsBox(t){return t.max.x>=this.min.x&&t.min.x<=this.max.x&&t.max.y>=this.min.y&&t.min.y<=this.max.y&&t.max.z>=this.min.z&&t.min.z<=this.max.z}intersectsSphere(t){return this.clampPoint(t.center,Jt),Jt.distanceToSquared(t.center)<=t.radius*t.radius}intersectsPlane(t){let e,i;return t.normal.x>0?(e=t.normal.x*this.min.x,i=t.normal.x*this.max.x):(e=t.normal.x*this.max.x,i=t.normal.x*this.min.x),t.normal.y>0?(e+=t.normal.y*this.min.y,i+=t.normal.y*this.max.y):(e+=t.normal.y*this.max.y,i+=t.normal.y*this.min.y),t.normal.z>0?(e+=t.normal.z*this.min.z,i+=t.normal.z*this.max.z):(e+=t.normal.z*this.max.z,i+=t.normal.z*this.min.z),e<=-t.constant&&i>=-t.constant}intersectsTriangle(t){if(this.isEmpty())return!1;this.getCenter(Vi),ys.subVectors(this.max,Vi),hi.subVectors(t.a,Vi),li.subVectors(t.b,Vi),ci.subVectors(t.c,Vi),_e.subVectors(li,hi),ve.subVectors(ci,li),Re.subVectors(hi,ci);let e=[0,-_e.z,_e.y,0,-ve.z,ve.y,0,-Re.z,Re.y,_e.z,0,-_e.x,ve.z,0,-ve.x,Re.z,0,-Re.x,-_e.y,_e.x,0,-ve.y,ve.x,0,-Re.y,Re.x,0];return!tr(e,hi,li,ci,ys)||(e=[1,0,0,0,1,0,0,0,1],!tr(e,hi,li,ci,ys))?!1:(gs.crossVectors(_e,ve),e=[gs.x,gs.y,gs.z],tr(e,hi,li,ci,ys))}clampPoint(t,e){return e.copy(t).clamp(this.min,this.max)}distanceToPoint(t){return this.clampPoint(t,Jt).distanceTo(t)}getBoundingSphere(t){return this.isEmpty()?t.makeEmpty():(this.getCenter(t.center),t.radius=this.getSize(Jt).length()*.5),t}intersect(t){return this.min.max(t.min),this.max.min(t.max),this.isEmpty()&&this.makeEmpty(),this}union(t){return this.min.min(t.min),this.max.max(t.max),this}applyMatrix4(t){return this.isEmpty()?this:(ce[0].set(this.min.x,this.min.y,this.min.z).applyMatrix4(t),ce[1].set(this.min.x,this.min.y,this.max.z).applyMatrix4(t),ce[2].set(this.min.x,this.max.y,this.min.z).applyMatrix4(t),ce[3].set(this.min.x,this.max.y,this.max.z).applyMatrix4(t),ce[4].set(this.max.x,this.min.y,this.min.z).applyMatrix4(t),ce[5].set(this.max.x,this.min.y,this.max.z).applyMatrix4(t),ce[6].set(this.max.x,this.max.y,this.min.z).applyMatrix4(t),ce[7].set(this.max.x,this.max.y,this.max.z).applyMatrix4(t),this.setFromPoints(ce),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)}toJSON(){return{min:this.min.toArray(),max:this.max.toArray()}}fromJSON(t){return this.min.fromArray(t.min),this.max.fromArray(t.max),this}},ce=[new M,new M,new M,new M,new M,new M,new M,new M],Jt=new M,ms=new pt,hi=new M,li=new M,ci=new M,_e=new M,ve=new M,Re=new M,Vi=new M,ys=new M,gs=new M,Oe=new M;function tr(h,t,e,i,s){for(let n=0,r=h.length-3;n<=r;n+=3){Oe.fromArray(h,n);let o=s.x*Math.abs(Oe.x)+s.y*Math.abs(Oe.y)+s.z*Math.abs(Oe.z),a=t.dot(Oe),l=e.dot(Oe),c=i.dot(Oe);if(Math.max(-Math.max(a,l,c),Math.min(a,l,c))>o)return!1}return!0}var fe=ed();function ed(){let h=new ArrayBuffer(4),t=new Float32Array(h),e=new Uint32Array(h),i=new Uint32Array(512),s=new Uint32Array(512);for(let a=0;a<256;++a){let l=a-127;l<-27?(i[a]=0,i[a|256]=32768,s[a]=24,s[a|256]=24):l<-14?(i[a]=1024>>-l-14,i[a|256]=1024>>-l-14|32768,s[a]=-l-1,s[a|256]=-l-1):l<=15?(i[a]=l+15<<10,i[a|256]=l+15<<10|32768,s[a]=13,s[a|256]=13):l<128?(i[a]=31744,i[a|256]=64512,s[a]=24,s[a|256]=24):(i[a]=31744,i[a|256]=64512,s[a]=13,s[a|256]=13)}let n=new Uint32Array(2048),r=new Uint32Array(64),o=new Uint32Array(64);for(let a=1;a<1024;++a){let l=a<<13,c=0;for(;(l&8388608)===0;)l<<=1,c-=8388608;l&=-8388609,c+=947912704,n[a]=l|c}for(let a=1024;a<2048;++a)n[a]=939524096+(a-1024<<13);for(let a=1;a<31;++a)r[a]=a<<23;r[31]=1199570944,r[32]=2147483648;for(let a=33;a<63;++a)r[a]=2147483648+(a-32<<23);r[63]=3347054592;for(let a=1;a<64;++a)a!==32&&(o[a]=1024);return{floatView:t,uint32View:e,baseTable:i,shiftTable:s,mantissaTable:n,exponentTable:r,offsetTable:o}}function St(h){Math.abs(h)>65504&&N(\"DataUtils.toHalfFloat(): Value out of range.\"),h=V(h,-65504,65504),fe.floatView[0]=h;let t=fe.uint32View[0],e=t>>23&511;return fe.baseTable[e]+((t&8388607)>>fe.shiftTable[e])}function Zi(h){let t=h>>10;return fe.uint32View[0]=fe.mantissaTable[fe.offsetTable[t]+(h&1023)]+fe.exponentTable[t],fe.floatView[0]}var Ka=class{static toHalfFloat(t){return St(t)}static fromHalfFloat(t){return Zi(t)}},ht=new M,xs=new C,id=0,j=class{constructor(t,e,i=!1){if(Array.isArray(t))throw new TypeError(\"THREE.BufferAttribute: array should be a Typed Array.\");this.isBufferAttribute=!0,Object.defineProperty(this,\"id\",{value:id++}),this.name=\"\",this.array=t,this.itemSize=e,this.count=t!==void 0?t.length/e:0,this.normalized=i,this.usage=on,this.updateRanges=[],this.gpuType=Ti,this.version=0}onUploadCallback(){}set needsUpdate(t){t===!0&&this.version++}setUsage(t){return this.usage=t,this}addUpdateRange(t,e){this.updateRanges.push({start:t,count:e})}clearUpdateRanges(){this.updateRanges.length=0}copy(t){return this.name=t.name,this.array=new t.array.constructor(t.array),this.itemSize=t.itemSize,this.count=t.count,this.normalized=t.normalized,this.usage=t.usage,this.gpuType=t.gpuType,this}copyAt(t,e,i){t*=this.itemSize,i*=e.itemSize;for(let s=0,n=this.itemSize;s<n;s++)this.array[t+s]=e.array[i+s];return this}copyArray(t){return this.array.set(t),this}applyMatrix3(t){if(this.itemSize===2)for(let e=0,i=this.count;e<i;e++)xs.fromBufferAttribute(this,e),xs.applyMatrix3(t),this.setXY(e,xs.x,xs.y);else if(this.itemSize===3)for(let e=0,i=this.count;e<i;e++)ht.fromBufferAttribute(this,e),ht.applyMatrix3(t),this.setXYZ(e,ht.x,ht.y,ht.z);return this}applyMatrix4(t){for(let e=0,i=this.count;e<i;e++)ht.fromBufferAttribute(this,e),ht.applyMatrix4(t),this.setXYZ(e,ht.x,ht.y,ht.z);return this}applyNormalMatrix(t){for(let e=0,i=this.count;e<i;e++)ht.fromBufferAttribute(this,e),ht.applyNormalMatrix(t),this.setXYZ(e,ht.x,ht.y,ht.z);return this}transformDirection(t){for(let e=0,i=this.count;e<i;e++)ht.fromBufferAttribute(this,e),ht.transformDirection(t),this.setXYZ(e,ht.x,ht.y,ht.z);return this}set(t,e=0){return this.array.set(t,e),this}getComponent(t,e){let i=this.array[t*this.itemSize+e];return this.normalized&&(i=Mt(i,this.array)),i}setComponent(t,e,i){return this.normalized&&(i=W(i,this.array)),this.array[t*this.itemSize+e]=i,this}getX(t){let e=this.array[t*this.itemSize];return this.normalized&&(e=Mt(e,this.array)),e}setX(t,e){return this.normalized&&(e=W(e,this.array)),this.array[t*this.itemSize]=e,this}getY(t){let e=this.array[t*this.itemSize+1];return this.normalized&&(e=Mt(e,this.array)),e}setY(t,e){return this.normalized&&(e=W(e,this.array)),this.array[t*this.itemSize+1]=e,this}getZ(t){let e=this.array[t*this.itemSize+2];return this.normalized&&(e=Mt(e,this.array)),e}setZ(t,e){return this.normalized&&(e=W(e,this.array)),this.array[t*this.itemSize+2]=e,this}getW(t){let e=this.array[t*this.itemSize+3];return this.normalized&&(e=Mt(e,this.array)),e}setW(t,e){return this.normalized&&(e=W(e,this.array)),this.array[t*this.itemSize+3]=e,this}setXY(t,e,i){return t*=this.itemSize,this.normalized&&(e=W(e,this.array),i=W(i,this.array)),this.array[t+0]=e,this.array[t+1]=i,this}setXYZ(t,e,i,s){return t*=this.itemSize,this.normalized&&(e=W(e,this.array),i=W(i,this.array),s=W(s,this.array)),this.array[t+0]=e,this.array[t+1]=i,this.array[t+2]=s,this}setXYZW(t,e,i,s,n){return t*=this.itemSize,this.normalized&&(e=W(e,this.array),i=W(i,this.array),s=W(s,this.array),n=W(n,this.array)),this.array[t+0]=e,this.array[t+1]=i,this.array[t+2]=s,this.array[t+3]=n,this}onUpload(t){return this.onUploadCallback=t,this}clone(){return new this.constructor(this.array,this.itemSize).copy(this)}toJSON(){let t={itemSize:this.itemSize,type:this.array.constructor.name,array:Array.from(this.array),normalized:this.normalized};return this.name!==\"\"&&(t.name=this.name),this.usage!==on&&(t.usage=this.usage),t}},th=class extends j{constructor(t,e,i){super(new Int8Array(t),e,i)}},eh=class extends j{constructor(t,e,i){super(new Uint8Array(t),e,i)}},ih=class extends j{constructor(t,e,i){super(new Uint8ClampedArray(t),e,i)}},sh=class extends j{constructor(t,e,i){super(new Int16Array(t),e,i)}},Rr=class extends j{constructor(t,e,i){super(new Uint16Array(t),e,i)}},nh=class extends j{constructor(t,e,i){super(new Int32Array(t),e,i)}},Or=class extends j{constructor(t,e,i){super(new Uint32Array(t),e,i)}},rh=class extends j{constructor(t,e,i){super(new Uint16Array(t),e,i),this.isFloat16BufferAttribute=!0}getX(t){let e=Zi(this.array[t*this.itemSize]);return this.normalized&&(e=Mt(e,this.array)),e}setX(t,e){return this.normalized&&(e=W(e,this.array)),this.array[t*this.itemSize]=St(e),this}getY(t){let e=Zi(this.array[t*this.itemSize+1]);return this.normalized&&(e=Mt(e,this.array)),e}setY(t,e){return this.normalized&&(e=W(e,this.array)),this.array[t*this.itemSize+1]=St(e),this}getZ(t){let e=Zi(this.array[t*this.itemSize+2]);return this.normalized&&(e=Mt(e,this.array)),e}setZ(t,e){return this.normalized&&(e=W(e,this.array)),this.array[t*this.itemSize+2]=St(e),this}getW(t){let e=Zi(this.array[t*this.itemSize+3]);return this.normalized&&(e=Mt(e,this.array)),e}setW(t,e){return this.normalized&&(e=W(e,this.array)),this.array[t*this.itemSize+3]=St(e),this}setXY(t,e,i){return t*=this.itemSize,this.normalized&&(e=W(e,this.array),i=W(i,this.array)),this.array[t+0]=St(e),this.array[t+1]=St(i),this}setXYZ(t,e,i,s){return t*=this.itemSize,this.normalized&&(e=W(e,this.array),i=W(i,this.array),s=W(s,this.array)),this.array[t+0]=St(e),this.array[t+1]=St(i),this.array[t+2]=St(s),this}setXYZW(t,e,i,s,n){return t*=this.itemSize,this.normalized&&(e=W(e,this.array),i=W(i,this.array),s=W(s,this.array),n=W(n,this.array)),this.array[t+0]=St(e),this.array[t+1]=St(i),this.array[t+2]=St(s),this.array[t+3]=St(n),this}},k=class extends j{constructor(t,e,i){super(new Float32Array(t),e,i)}},sd=new pt,Di=new M,er=new M,ut=class{constructor(t=new M,e=-1){this.isSphere=!0,this.center=t,this.radius=e}set(t,e){return this.center.copy(t),this.radius=e,this}setFromPoints(t,e){let i=this.center;e!==void 0?i.copy(e):sd.setFromPoints(t).getCenter(i);let s=0;for(let n=0,r=t.length;n<r;n++)s=Math.max(s,i.distanceToSquared(t[n]));return this.radius=Math.sqrt(s),this}copy(t){return this.center.copy(t.center),this.radius=t.radius,this}isEmpty(){return this.radius<0}makeEmpty(){return this.center.set(0,0,0),this.radius=-1,this}containsPoint(t){return t.distanceToSquared(this.center)<=this.radius*this.radius}distanceToPoint(t){return t.distanceTo(this.center)-this.radius}intersectsSphere(t){let e=this.radius+t.radius;return t.center.distanceToSquared(this.center)<=e*e}intersectsBox(t){return t.intersectsSphere(this)}intersectsPlane(t){return Math.abs(t.distanceToPoint(this.center))<=this.radius}clampPoint(t,e){let i=this.center.distanceToSquared(t);return e.copy(t),i>this.radius*this.radius&&(e.sub(this.center).normalize(),e.multiplyScalar(this.radius).add(this.center)),e}getBoundingBox(t){return this.isEmpty()?(t.makeEmpty(),t):(t.set(this.center,this.center),t.expandByScalar(this.radius),t)}applyMatrix4(t){return this.center.applyMatrix4(t),this.radius=this.radius*t.getMaxScaleOnAxis(),this}translate(t){return this.center.add(t),this}expandByPoint(t){if(this.isEmpty())return this.center.copy(t),this.radius=0,this;Di.subVectors(t,this.center);let e=Di.lengthSq();if(e>this.radius*this.radius){let i=Math.sqrt(e),s=(i-this.radius)*.5;this.center.addScaledVector(Di,s/i),this.radius+=s}return this}union(t){return t.isEmpty()?this:this.isEmpty()?(this.copy(t),this):(this.center.equals(t.center)===!0?this.radius=Math.max(this.radius,t.radius):(er.subVectors(t.center,this.center).setLength(t.radius),this.expandByPoint(Di.copy(t.center).add(er)),this.expandByPoint(Di.copy(t.center).sub(er))),this)}equals(t){return t.center.equals(this.center)&&t.radius===this.radius}clone(){return new this.constructor().copy(this)}toJSON(){return{radius:this.radius,center:this.center.toArray()}}fromJSON(t){return this.radius=t.radius,this.center.fromArray(t.center),this}},nd=0,Ot=new q,ir=new Y,ui=new M,zt=new pt,Li=new pt,ct=new M,G=class h extends te{constructor(){super(),this.isBufferGeometry=!0,Object.defineProperty(this,\"id\",{value:nd++}),this.uuid=Bt(),this.name=\"\",this.type=\"BufferGeometry\",this.index=null,this.indirect=null,this.indirectOffset=0,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(Iu(t)?Or:Rr)(t,1):this.index=t,this}setIndirect(t,e=0){return this.indirect=t,this.indirectOffset=e,this}getIndirect(){return this.indirect}getAttribute(t){return this.attributes[t]}setAttribute(t,e){return this.attributes[t]=e,this}deleteAttribute(t){return delete this.attributes[t],this}hasAttribute(t){return this.attributes[t]!==void 0}addGroup(t,e,i=0){this.groups.push({start:t,count:e,materialIndex:i})}clearGroups(){this.groups=[]}setDrawRange(t,e){this.drawRange.start=t,this.drawRange.count=e}applyMatrix4(t){let e=this.attributes.position;e!==void 0&&(e.applyMatrix4(t),e.needsUpdate=!0);let i=this.attributes.normal;if(i!==void 0){let n=new ee().getNormalMatrix(t);i.applyNormalMatrix(n),i.needsUpdate=!0}let s=this.attributes.tangent;return s!==void 0&&(s.transformDirection(t),s.needsUpdate=!0),this.boundingBox!==null&&this.computeBoundingBox(),this.boundingSphere!==null&&this.computeBoundingSphere(),this}applyQuaternion(t){return Ot.makeRotationFromQuaternion(t),this.applyMatrix4(Ot),this}rotateX(t){return Ot.makeRotationX(t),this.applyMatrix4(Ot),this}rotateY(t){return Ot.makeRotationY(t),this.applyMatrix4(Ot),this}rotateZ(t){return Ot.makeRotationZ(t),this.applyMatrix4(Ot),this}translate(t,e,i){return Ot.makeTranslation(t,e,i),this.applyMatrix4(Ot),this}scale(t,e,i){return Ot.makeScale(t,e,i),this.applyMatrix4(Ot),this}lookAt(t){return ir.lookAt(t),ir.updateMatrix(),this.applyMatrix4(ir.matrix),this}center(){return this.computeBoundingBox(),this.boundingBox.getCenter(ui).negate(),this.translate(ui.x,ui.y,ui.z),this}setFromPoints(t){let e=this.getAttribute(\"position\");if(e===void 0){let i=[];for(let s=0,n=t.length;s<n;s++){let r=t[s];i.push(r.x,r.y,r.z||0)}this.setAttribute(\"position\",new k(i,3))}else{let i=Math.min(t.length,e.count);for(let s=0;s<i;s++){let n=t[s];e.setXYZ(s,n.x,n.y,n.z||0)}t.length>e.count&&N(\"BufferGeometry: Buffer size too small for points data. Use .dispose() and create a new geometry.\"),e.needsUpdate=!0}return this}computeBoundingBox(){this.boundingBox===null&&(this.boundingBox=new pt);let t=this.attributes.position,e=this.morphAttributes.position;if(t&&t.isGLBufferAttribute){Z(\"BufferGeometry.computeBoundingBox(): GLBufferAttribute requires a manual bounding box.\",this),this.boundingBox.set(new M(-1/0,-1/0,-1/0),new M(1/0,1/0,1/0));return}if(t!==void 0){if(this.boundingBox.setFromBufferAttribute(t),e)for(let i=0,s=e.length;i<s;i++){let n=e[i];zt.setFromBufferAttribute(n),this.morphTargetsRelative?(ct.addVectors(this.boundingBox.min,zt.min),this.boundingBox.expandByPoint(ct),ct.addVectors(this.boundingBox.max,zt.max),this.boundingBox.expandByPoint(ct)):(this.boundingBox.expandByPoint(zt.min),this.boundingBox.expandByPoint(zt.max))}}else this.boundingBox.makeEmpty();(isNaN(this.boundingBox.min.x)||isNaN(this.boundingBox.min.y)||isNaN(this.boundingBox.min.z))&&Z('BufferGeometry.computeBoundingBox(): Computed min/max have NaN values. The \"position\" attribute is likely to have NaN values.',this)}computeBoundingSphere(){this.boundingSphere===null&&(this.boundingSphere=new ut);let t=this.attributes.position,e=this.morphAttributes.position;if(t&&t.isGLBufferAttribute){Z(\"BufferGeometry.computeBoundingSphere(): GLBufferAttribute requires a manual bounding sphere.\",this),this.boundingSphere.set(new M,1/0);return}if(t){let i=this.boundingSphere.center;if(zt.setFromBufferAttribute(t),e)for(let n=0,r=e.length;n<r;n++){let o=e[n];Li.setFromBufferAttribute(o),this.morphTargetsRelative?(ct.addVectors(zt.min,Li.min),zt.expandByPoint(ct),ct.addVectors(zt.max,Li.max),zt.expandByPoint(ct)):(zt.expandByPoint(Li.min),zt.expandByPoint(Li.max))}zt.getCenter(i);let s=0;for(let n=0,r=t.count;n<r;n++)ct.fromBufferAttribute(t,n),s=Math.max(s,i.distanceToSquared(ct));if(e)for(let n=0,r=e.length;n<r;n++){let o=e[n],a=this.morphTargetsRelative;for(let l=0,c=o.count;l<c;l++)ct.fromBufferAttribute(o,l),a&&(ui.fromBufferAttribute(t,l),ct.add(ui)),s=Math.max(s,i.distanceToSquared(ct))}this.boundingSphere.radius=Math.sqrt(s),isNaN(this.boundingSphere.radius)&&Z('BufferGeometry.computeBoundingSphere(): Computed radius is NaN. The \"position\" attribute is likely to have NaN values.',this)}}computeTangents(){let t=this.index,e=this.attributes;if(t===null||e.position===void 0||e.normal===void 0||e.uv===void 0){Z(\"BufferGeometry: .computeTangents() failed. Missing required attributes (index, position, normal or uv)\");return}let i=e.position,s=e.normal,n=e.uv;this.hasAttribute(\"tangent\")===!1&&this.setAttribute(\"tangent\",new j(new Float32Array(4*i.count),4));let r=this.getAttribute(\"tangent\"),o=[],a=[];for(let S=0;S<i.count;S++)o[S]=new M,a[S]=new M;let l=new M,c=new M,u=new M,d=new C,p=new C,f=new C,m=new M,g=new M;function y(S,T,I){l.fromBufferAttribute(i,S),c.fromBufferAttribute(i,T),u.fromBufferAttribute(i,I),d.fromBufferAttribute(n,S),p.fromBufferAttribute(n,T),f.fromBufferAttribute(n,I),c.sub(l),u.sub(l),p.sub(d),f.sub(d);let F=1/(p.x*f.y-f.x*p.y);isFinite(F)&&(m.copy(c).multiplyScalar(f.y).addScaledVector(u,-p.y).multiplyScalar(F),g.copy(u).multiplyScalar(p.x).addScaledVector(c,-f.x).multiplyScalar(F),o[S].add(m),o[T].add(m),o[I].add(m),a[S].add(g),a[T].add(g),a[I].add(g))}let x=this.groups;x.length===0&&(x=[{start:0,count:t.count}]);for(let S=0,T=x.length;S<T;++S){let I=x[S],F=I.start,O=I.count;for(let D=F,X=F+O;D<X;D+=3)y(t.getX(D+0),t.getX(D+1),t.getX(D+2))}let b=new M,w=new M,_=new M,v=new M;function A(S){_.fromBufferAttribute(s,S),v.copy(_);let T=o[S];b.copy(T),b.sub(_.multiplyScalar(_.dot(T))).normalize(),w.crossVectors(v,T);let F=w.dot(a[S])<0?-1:1;r.setXYZW(S,b.x,b.y,b.z,F)}for(let S=0,T=x.length;S<T;++S){let I=x[S],F=I.start,O=I.count;for(let D=F,X=F+O;D<X;D+=3)A(t.getX(D+0)),A(t.getX(D+1)),A(t.getX(D+2))}}computeVertexNormals(){let t=this.index,e=this.getAttribute(\"position\");if(e!==void 0){let i=this.getAttribute(\"normal\");if(i===void 0)i=new j(new Float32Array(e.count*3),3),this.setAttribute(\"normal\",i);else for(let d=0,p=i.count;d<p;d++)i.setXYZ(d,0,0,0);let s=new M,n=new M,r=new M,o=new M,a=new M,l=new M,c=new M,u=new M;if(t)for(let d=0,p=t.count;d<p;d+=3){let f=t.getX(d+0),m=t.getX(d+1),g=t.getX(d+2);s.fromBufferAttribute(e,f),n.fromBufferAttribute(e,m),r.fromBufferAttribute(e,g),c.subVectors(r,n),u.subVectors(s,n),c.cross(u),o.fromBufferAttribute(i,f),a.fromBufferAttribute(i,m),l.fromBufferAttribute(i,g),o.add(c),a.add(c),l.add(c),i.setXYZ(f,o.x,o.y,o.z),i.setXYZ(m,a.x,a.y,a.z),i.setXYZ(g,l.x,l.y,l.z)}else for(let d=0,p=e.count;d<p;d+=3)s.fromBufferAttribute(e,d+0),n.fromBufferAttribute(e,d+1),r.fromBufferAttribute(e,d+2),c.subVectors(r,n),u.subVectors(s,n),c.cross(u),i.setXYZ(d+0,c.x,c.y,c.z),i.setXYZ(d+1,c.x,c.y,c.z),i.setXYZ(d+2,c.x,c.y,c.z);this.normalizeNormals(),i.needsUpdate=!0}}normalizeNormals(){let t=this.attributes.normal;for(let e=0,i=t.count;e<i;e++)ct.fromBufferAttribute(t,e),ct.normalize(),t.setXYZ(e,ct.x,ct.y,ct.z)}toNonIndexed(){function t(o,a){let l=o.array,c=o.itemSize,u=o.normalized,d=new l.constructor(a.length*c),p=0,f=0;for(let m=0,g=a.length;m<g;m++){o.isInterleavedBufferAttribute?p=a[m]*o.data.stride+o.offset:p=a[m]*c;for(let y=0;y<c;y++)d[f++]=l[p++]}return new j(d,c,u)}if(this.index===null)return N(\"BufferGeometry.toNonIndexed(): BufferGeometry is already non-indexed.\"),this;let e=new h,i=this.index.array,s=this.attributes;for(let o in s){let a=s[o],l=t(a,i);e.setAttribute(o,l)}let n=this.morphAttributes;for(let o in n){let a=[],l=n[o];for(let c=0,u=l.length;c<u;c++){let d=l[c],p=t(d,i);a.push(p)}e.morphAttributes[o]=a}e.morphTargetsRelative=this.morphTargetsRelative;let r=this.groups;for(let o=0,a=r.length;o<a;o++){let l=r[o];e.addGroup(l.start,l.count,l.materialIndex)}return e}toJSON(){let t={metadata:{version:4.7,type:\"BufferGeometry\",generator:\"BufferGeometry.toJSON\"}};if(t.uuid=this.uuid,t.type=this.type,this.name!==\"\"&&(t.name=this.name),Object.keys(this.userData).length>0&&(t.userData=this.userData),this.parameters!==void 0){let a=this.parameters;for(let l in a)a[l]!==void 0&&(t[l]=a[l]);return t}t.data={attributes:{}};let e=this.index;e!==null&&(t.data.index={type:e.array.constructor.name,array:Array.prototype.slice.call(e.array)});let i=this.attributes;for(let a in i){let l=i[a];t.data.attributes[a]=l.toJSON(t.data)}let s={},n=!1;for(let a in this.morphAttributes){let l=this.morphAttributes[a],c=[];for(let u=0,d=l.length;u<d;u++){let p=l[u];c.push(p.toJSON(t.data))}c.length>0&&(s[a]=c,n=!0)}n&&(t.data.morphAttributes=s,t.data.morphTargetsRelative=this.morphTargetsRelative);let r=this.groups;r.length>0&&(t.data.groups=JSON.parse(JSON.stringify(r)));let o=this.boundingSphere;return o!==null&&(t.data.boundingSphere=o.toJSON()),t}clone(){return new this.constructor().copy(this)}copy(t){this.index=null,this.attributes={},this.morphAttributes={},this.groups=[],this.boundingBox=null,this.boundingSphere=null;let e={};this.name=t.name;let i=t.index;i!==null&&this.setIndex(i.clone());let s=t.attributes;for(let l in s){let c=s[l];this.setAttribute(l,c.clone(e))}let n=t.morphAttributes;for(let l in n){let c=[],u=n[l];for(let d=0,p=u.length;d<p;d++)c.push(u[d].clone(e));this.morphAttributes[l]=c}this.morphTargetsRelative=t.morphTargetsRelative;let r=t.groups;for(let l=0,c=r.length;l<c;l++){let u=r[l];this.addGroup(u.start,u.count,u.materialIndex)}let o=t.boundingBox;o!==null&&(this.boundingBox=o.clone());let a=t.boundingSphere;return a!==null&&(this.boundingSphere=a.clone()),this.drawRange.start=t.drawRange.start,this.drawRange.count=t.drawRange.count,this.userData=t.userData,this}dispose(){this.dispatchEvent({type:\"dispose\"})}},es=class{constructor(t,e){this.isInterleavedBuffer=!0,this.array=t,this.stride=e,this.count=t!==void 0?t.length/e:0,this.usage=on,this.updateRanges=[],this.version=0,this.uuid=Bt()}onUploadCallback(){}set needsUpdate(t){t===!0&&this.version++}setUsage(t){return this.usage=t,this}addUpdateRange(t,e){this.updateRanges.push({start:t,count:e})}clearUpdateRanges(){this.updateRanges.length=0}copy(t){return this.array=new t.array.constructor(t.array),this.count=t.count,this.stride=t.stride,this.usage=t.usage,this}copyAt(t,e,i){t*=this.stride,i*=e.stride;for(let s=0,n=this.stride;s<n;s++)this.array[t+s]=e.array[i+s];return this}set(t,e=0){return this.array.set(t,e),this}clone(t){t.arrayBuffers===void 0&&(t.arrayBuffers={}),this.array.buffer._uuid===void 0&&(this.array.buffer._uuid=Bt()),t.arrayBuffers[this.array.buffer._uuid]===void 0&&(t.arrayBuffers[this.array.buffer._uuid]=this.array.slice(0).buffer);let e=new this.array.constructor(t.arrayBuffers[this.array.buffer._uuid]),i=new this.constructor(e,this.stride);return i.setUsage(this.usage),i}onUpload(t){return this.onUploadCallback=t,this}toJSON(t){return t.arrayBuffers===void 0&&(t.arrayBuffers={}),this.array.buffer._uuid===void 0&&(this.array.buffer._uuid=Bt()),t.arrayBuffers[this.array.buffer._uuid]===void 0&&(t.arrayBuffers[this.array.buffer._uuid]=Array.from(new Uint32Array(this.array.buffer))),{uuid:this.uuid,buffer:this.array.buffer._uuid,type:this.array.constructor.name,stride:this.stride}}},wt=new M,Ci=class h{constructor(t,e,i,s=!1){this.isInterleavedBufferAttribute=!0,this.name=\"\",this.data=t,this.itemSize=e,this.offset=i,this.normalized=s}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,i=this.data.count;e<i;e++)wt.fromBufferAttribute(this,e),wt.applyMatrix4(t),this.setXYZ(e,wt.x,wt.y,wt.z);return this}applyNormalMatrix(t){for(let e=0,i=this.count;e<i;e++)wt.fromBufferAttribute(this,e),wt.applyNormalMatrix(t),this.setXYZ(e,wt.x,wt.y,wt.z);return this}transformDirection(t){for(let e=0,i=this.count;e<i;e++)wt.fromBufferAttribute(this,e),wt.transformDirection(t),this.setXYZ(e,wt.x,wt.y,wt.z);return this}getComponent(t,e){let i=this.array[t*this.data.stride+this.offset+e];return this.normalized&&(i=Mt(i,this.array)),i}setComponent(t,e,i){return this.normalized&&(i=W(i,this.array)),this.data.array[t*this.data.stride+this.offset+e]=i,this}setX(t,e){return this.normalized&&(e=W(e,this.array)),this.data.array[t*this.data.stride+this.offset]=e,this}setY(t,e){return this.normalized&&(e=W(e,this.array)),this.data.array[t*this.data.stride+this.offset+1]=e,this}setZ(t,e){return this.normalized&&(e=W(e,this.array)),this.data.array[t*this.data.stride+this.offset+2]=e,this}setW(t,e){return this.normalized&&(e=W(e,this.array)),this.data.array[t*this.data.stride+this.offset+3]=e,this}getX(t){let e=this.data.array[t*this.data.stride+this.offset];return this.normalized&&(e=Mt(e,this.array)),e}getY(t){let e=this.data.array[t*this.data.stride+this.offset+1];return this.normalized&&(e=Mt(e,this.array)),e}getZ(t){let e=this.data.array[t*this.data.stride+this.offset+2];return this.normalized&&(e=Mt(e,this.array)),e}getW(t){let e=this.data.array[t*this.data.stride+this.offset+3];return this.normalized&&(e=Mt(e,this.array)),e}setXY(t,e,i){return t=t*this.data.stride+this.offset,this.normalized&&(e=W(e,this.array),i=W(i,this.array)),this.data.array[t+0]=e,this.data.array[t+1]=i,this}setXYZ(t,e,i,s){return t=t*this.data.stride+this.offset,this.normalized&&(e=W(e,this.array),i=W(i,this.array),s=W(s,this.array)),this.data.array[t+0]=e,this.data.array[t+1]=i,this.data.array[t+2]=s,this}setXYZW(t,e,i,s,n){return t=t*this.data.stride+this.offset,this.normalized&&(e=W(e,this.array),i=W(i,this.array),s=W(s,this.array),n=W(n,this.array)),this.data.array[t+0]=e,this.data.array[t+1]=i,this.data.array[t+2]=s,this.data.array[t+3]=n,this}clone(t){if(t===void 0){Ea(\"InterleavedBufferAttribute.clone(): Cloning an interleaved buffer attribute will de-interleave buffer data.\");let e=[];for(let i=0;i<this.count;i++){let s=i*this.data.stride+this.offset;for(let n=0;n<this.itemSize;n++)e.push(this.data.array[s+n])}return new j(new this.array.constructor(e),this.itemSize,this.normalized)}else return t.interleavedBuffers===void 0&&(t.interleavedBuffers={}),t.interleavedBuffers[this.data.uuid]===void 0&&(t.interleavedBuffers[this.data.uuid]=this.data.clone(t)),new h(t.interleavedBuffers[this.data.uuid],this.itemSize,this.offset,this.normalized)}toJSON(t){if(t===void 0){Ea(\"InterleavedBufferAttribute.toJSON(): Serializing an interleaved buffer attribute will de-interleave buffer data.\");let e=[];for(let i=0;i<this.count;i++){let s=i*this.data.stride+this.offset;for(let n=0;n<this.itemSize;n++)e.push(this.data.array[s+n])}return{itemSize:this.itemSize,type:this.array.constructor.name,array:e,normalized:this.normalized}}else return t.interleavedBuffers===void 0&&(t.interleavedBuffers={}),t.interleavedBuffers[this.data.uuid]===void 0&&(t.interleavedBuffers[this.data.uuid]=this.data.toJSON(t)),{isInterleavedBufferAttribute:!0,itemSize:this.itemSize,data:this.data.uuid,offset:this.offset,normalized:this.normalized}}},rd=0,ft=class extends te{constructor(){super(),this.isMaterial=!0,Object.defineProperty(this,\"id\",{value:rd++}),this.uuid=Bt(),this.name=\"\",this.type=\"Material\",this.blending=ba,this.side=Sr,this.vertexColors=!1,this.opacity=1,this.transparent=!1,this.alphaHash=!1,this.blendSrc=Ma,this.blendDst=_a,this.blendEquation=wa,this.blendSrcAlpha=null,this.blendDstAlpha=null,this.blendEquationAlpha=null,this.blendColor=new U(0,0,0),this.blendAlpha=0,this.depthFunc=sn,this.depthTest=!0,this.depthWrite=!0,this.stencilWriteMask=255,this.stencilFunc=Ra,this.stencilRef=0,this.stencilFuncMask=255,this.stencilFail=ei,this.stencilZFail=ei,this.stencilZPass=ei,this.stencilWrite=!1,this.clippingPlanes=null,this.clipIntersection=!1,this.clipShadows=!1,this.shadowSide=null,this.colorWrite=!0,this.precision=null,this.polygonOffset=!1,this.polygonOffsetFactor=0,this.polygonOffsetUnits=0,this.dithering=!1,this.alphaToCoverage=!1,this.premultipliedAlpha=!1,this.forceSinglePass=!1,this.allowOverride=!0,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}onBeforeRender(){}onBeforeCompile(){}customProgramCacheKey(){return this.onBeforeCompile.toString()}setValues(t){if(t!==void 0)for(let e in t){let i=t[e];if(i===void 0){N(`Material: parameter '${e}' has value of undefined.`);continue}let s=this[e];if(s===void 0){N(`Material: '${e}' is not a property of THREE.${this.type}.`);continue}s&&s.isColor?s.set(i):s&&s.isVector3&&i&&i.isVector3?s.copy(i):this[e]=i}}toJSON(t){let e=t===void 0||typeof t==\"string\";e&&(t={textures:{},images:{}});let i={metadata:{version:4.7,type:\"Material\",generator:\"Material.toJSON\"}};i.uuid=this.uuid,i.type=this.type,this.name!==\"\"&&(i.name=this.name),this.color&&this.color.isColor&&(i.color=this.color.getHex()),this.roughness!==void 0&&(i.roughness=this.roughness),this.metalness!==void 0&&(i.metalness=this.metalness),this.sheen!==void 0&&(i.sheen=this.sheen),this.sheenColor&&this.sheenColor.isColor&&(i.sheenColor=this.sheenColor.getHex()),this.sheenRoughness!==void 0&&(i.sheenRoughness=this.sheenRoughness),this.emissive&&this.emissive.isColor&&(i.emissive=this.emissive.getHex()),this.emissiveIntensity!==void 0&&this.emissiveIntensity!==1&&(i.emissiveIntensity=this.emissiveIntensity),this.specular&&this.specular.isColor&&(i.specular=this.specular.getHex()),this.specularIntensity!==void 0&&(i.specularIntensity=this.specularIntensity),this.specularColor&&this.specularColor.isColor&&(i.specularColor=this.specularColor.getHex()),this.shininess!==void 0&&(i.shininess=this.shininess),this.clearcoat!==void 0&&(i.clearcoat=this.clearcoat),this.clearcoatRoughness!==void 0&&(i.clearcoatRoughness=this.clearcoatRoughness),this.clearcoatMap&&this.clearcoatMap.isTexture&&(i.clearcoatMap=this.clearcoatMap.toJSON(t).uuid),this.clearcoatRoughnessMap&&this.clearcoatRoughnessMap.isTexture&&(i.clearcoatRoughnessMap=this.clearcoatRoughnessMap.toJSON(t).uuid),this.clearcoatNormalMap&&this.clearcoatNormalMap.isTexture&&(i.clearcoatNormalMap=this.clearcoatNormalMap.toJSON(t).uuid,i.clearcoatNormalScale=this.clearcoatNormalScale.toArray()),this.sheenColorMap&&this.sheenColorMap.isTexture&&(i.sheenColorMap=this.sheenColorMap.toJSON(t).uuid),this.sheenRoughnessMap&&this.sheenRoughnessMap.isTexture&&(i.sheenRoughnessMap=this.sheenRoughnessMap.toJSON(t).uuid),this.dispersion!==void 0&&(i.dispersion=this.dispersion),this.iridescence!==void 0&&(i.iridescence=this.iridescence),this.iridescenceIOR!==void 0&&(i.iridescenceIOR=this.iridescenceIOR),this.iridescenceThicknessRange!==void 0&&(i.iridescenceThicknessRange=this.iridescenceThicknessRange),this.iridescenceMap&&this.iridescenceMap.isTexture&&(i.iridescenceMap=this.iridescenceMap.toJSON(t).uuid),this.iridescenceThicknessMap&&this.iridescenceThicknessMap.isTexture&&(i.iridescenceThicknessMap=this.iridescenceThicknessMap.toJSON(t).uuid),this.anisotropy!==void 0&&(i.anisotropy=this.anisotropy),this.anisotropyRotation!==void 0&&(i.anisotropyRotation=this.anisotropyRotation),this.anisotropyMap&&this.anisotropyMap.isTexture&&(i.anisotropyMap=this.anisotropyMap.toJSON(t).uuid),this.map&&this.map.isTexture&&(i.map=this.map.toJSON(t).uuid),this.matcap&&this.matcap.isTexture&&(i.matcap=this.matcap.toJSON(t).uuid),this.alphaMap&&this.alphaMap.isTexture&&(i.alphaMap=this.alphaMap.toJSON(t).uuid),this.lightMap&&this.lightMap.isTexture&&(i.lightMap=this.lightMap.toJSON(t).uuid,i.lightMapIntensity=this.lightMapIntensity),this.aoMap&&this.aoMap.isTexture&&(i.aoMap=this.aoMap.toJSON(t).uuid,i.aoMapIntensity=this.aoMapIntensity),this.bumpMap&&this.bumpMap.isTexture&&(i.bumpMap=this.bumpMap.toJSON(t).uuid,i.bumpScale=this.bumpScale),this.normalMap&&this.normalMap.isTexture&&(i.normalMap=this.normalMap.toJSON(t).uuid,i.normalMapType=this.normalMapType,i.normalScale=this.normalScale.toArray()),this.displacementMap&&this.displacementMap.isTexture&&(i.displacementMap=this.displacementMap.toJSON(t).uuid,i.displacementScale=this.displacementScale,i.displacementBias=this.displacementBias),this.roughnessMap&&this.roughnessMap.isTexture&&(i.roughnessMap=this.roughnessMap.toJSON(t).uuid),this.metalnessMap&&this.metalnessMap.isTexture&&(i.metalnessMap=this.metalnessMap.toJSON(t).uuid),this.emissiveMap&&this.emissiveMap.isTexture&&(i.emissiveMap=this.emissiveMap.toJSON(t).uuid),this.specularMap&&this.specularMap.isTexture&&(i.specularMap=this.specularMap.toJSON(t).uuid),this.specularIntensityMap&&this.specularIntensityMap.isTexture&&(i.specularIntensityMap=this.specularIntensityMap.toJSON(t).uuid),this.specularColorMap&&this.specularColorMap.isTexture&&(i.specularColorMap=this.specularColorMap.toJSON(t).uuid),this.envMap&&this.envMap.isTexture&&(i.envMap=this.envMap.toJSON(t).uuid,this.combine!==void 0&&(i.combine=this.combine)),this.envMapRotation!==void 0&&(i.envMapRotation=this.envMapRotation.toArray()),this.envMapIntensity!==void 0&&(i.envMapIntensity=this.envMapIntensity),this.reflectivity!==void 0&&(i.reflectivity=this.reflectivity),this.refractionRatio!==void 0&&(i.refractionRatio=this.refractionRatio),this.gradientMap&&this.gradientMap.isTexture&&(i.gradientMap=this.gradientMap.toJSON(t).uuid),this.transmission!==void 0&&(i.transmission=this.transmission),this.transmissionMap&&this.transmissionMap.isTexture&&(i.transmissionMap=this.transmissionMap.toJSON(t).uuid),this.thickness!==void 0&&(i.thickness=this.thickness),this.thicknessMap&&this.thicknessMap.isTexture&&(i.thicknessMap=this.thicknessMap.toJSON(t).uuid),this.attenuationDistance!==void 0&&this.attenuationDistance!==1/0&&(i.attenuationDistance=this.attenuationDistance),this.attenuationColor!==void 0&&(i.attenuationColor=this.attenuationColor.getHex()),this.size!==void 0&&(i.size=this.size),this.shadowSide!==null&&(i.shadowSide=this.shadowSide),this.sizeAttenuation!==void 0&&(i.sizeAttenuation=this.sizeAttenuation),this.blending!==ba&&(i.blending=this.blending),this.side!==Sr&&(i.side=this.side),this.vertexColors===!0&&(i.vertexColors=!0),this.opacity<1&&(i.opacity=this.opacity),this.transparent===!0&&(i.transparent=!0),this.blendSrc!==Ma&&(i.blendSrc=this.blendSrc),this.blendDst!==_a&&(i.blendDst=this.blendDst),this.blendEquation!==wa&&(i.blendEquation=this.blendEquation),this.blendSrcAlpha!==null&&(i.blendSrcAlpha=this.blendSrcAlpha),this.blendDstAlpha!==null&&(i.blendDstAlpha=this.blendDstAlpha),this.blendEquationAlpha!==null&&(i.blendEquationAlpha=this.blendEquationAlpha),this.blendColor&&this.blendColor.isColor&&(i.blendColor=this.blendColor.getHex()),this.blendAlpha!==0&&(i.blendAlpha=this.blendAlpha),this.depthFunc!==sn&&(i.depthFunc=this.depthFunc),this.depthTest===!1&&(i.depthTest=this.depthTest),this.depthWrite===!1&&(i.depthWrite=this.depthWrite),this.colorWrite===!1&&(i.colorWrite=this.colorWrite),this.stencilWriteMask!==255&&(i.stencilWriteMask=this.stencilWriteMask),this.stencilFunc!==Ra&&(i.stencilFunc=this.stencilFunc),this.stencilRef!==0&&(i.stencilRef=this.stencilRef),this.stencilFuncMask!==255&&(i.stencilFuncMask=this.stencilFuncMask),this.stencilFail!==ei&&(i.stencilFail=this.stencilFail),this.stencilZFail!==ei&&(i.stencilZFail=this.stencilZFail),this.stencilZPass!==ei&&(i.stencilZPass=this.stencilZPass),this.stencilWrite===!0&&(i.stencilWrite=this.stencilWrite),this.rotation!==void 0&&this.rotation!==0&&(i.rotation=this.rotation),this.polygonOffset===!0&&(i.polygonOffset=!0),this.polygonOffsetFactor!==0&&(i.polygonOffsetFactor=this.polygonOffsetFactor),this.polygonOffsetUnits!==0&&(i.polygonOffsetUnits=this.polygonOffsetUnits),this.linewidth!==void 0&&this.linewidth!==1&&(i.linewidth=this.linewidth),this.dashSize!==void 0&&(i.dashSize=this.dashSize),this.gapSize!==void 0&&(i.gapSize=this.gapSize),this.scale!==void 0&&(i.scale=this.scale),this.dithering===!0&&(i.dithering=!0),this.alphaTest>0&&(i.alphaTest=this.alphaTest),this.alphaHash===!0&&(i.alphaHash=!0),this.alphaToCoverage===!0&&(i.alphaToCoverage=!0),this.premultipliedAlpha===!0&&(i.premultipliedAlpha=!0),this.forceSinglePass===!0&&(i.forceSinglePass=!0),this.allowOverride===!1&&(i.allowOverride=!1),this.wireframe===!0&&(i.wireframe=!0),this.wireframeLinewidth>1&&(i.wireframeLinewidth=this.wireframeLinewidth),this.wireframeLinecap!==\"round\"&&(i.wireframeLinecap=this.wireframeLinecap),this.wireframeLinejoin!==\"round\"&&(i.wireframeLinejoin=this.wireframeLinejoin),this.flatShading===!0&&(i.flatShading=!0),this.visible===!1&&(i.visible=!1),this.toneMapped===!1&&(i.toneMapped=!1),this.fog===!1&&(i.fog=!1),Object.keys(this.userData).length>0&&(i.userData=this.userData);function s(n){let r=[];for(let o in n){let a=n[o];delete a.metadata,r.push(a)}return r}if(e){let n=s(t.textures),r=s(t.images);n.length>0&&(i.textures=n),r.length>0&&(i.images=r)}return i}clone(){return new this.constructor().copy(this)}copy(t){this.name=t.name,this.blending=t.blending,this.side=t.side,this.vertexColors=t.vertexColors,this.opacity=t.opacity,this.transparent=t.transparent,this.blendSrc=t.blendSrc,this.blendDst=t.blendDst,this.blendEquation=t.blendEquation,this.blendSrcAlpha=t.blendSrcAlpha,this.blendDstAlpha=t.blendDstAlpha,this.blendEquationAlpha=t.blendEquationAlpha,this.blendColor.copy(t.blendColor),this.blendAlpha=t.blendAlpha,this.depthFunc=t.depthFunc,this.depthTest=t.depthTest,this.depthWrite=t.depthWrite,this.stencilWriteMask=t.stencilWriteMask,this.stencilFunc=t.stencilFunc,this.stencilRef=t.stencilRef,this.stencilFuncMask=t.stencilFuncMask,this.stencilFail=t.stencilFail,this.stencilZFail=t.stencilZFail,this.stencilZPass=t.stencilZPass,this.stencilWrite=t.stencilWrite;let e=t.clippingPlanes,i=null;if(e!==null){let s=e.length;i=new Array(s);for(let n=0;n!==s;++n)i[n]=e[n].clone()}return this.clippingPlanes=i,this.clipIntersection=t.clipIntersection,this.clipShadows=t.clipShadows,this.shadowSide=t.shadowSide,this.colorWrite=t.colorWrite,this.precision=t.precision,this.polygonOffset=t.polygonOffset,this.polygonOffsetFactor=t.polygonOffsetFactor,this.polygonOffsetUnits=t.polygonOffsetUnits,this.dithering=t.dithering,this.alphaTest=t.alphaTest,this.alphaHash=t.alphaHash,this.alphaToCoverage=t.alphaToCoverage,this.premultipliedAlpha=t.premultipliedAlpha,this.forceSinglePass=t.forceSinglePass,this.allowOverride=t.allowOverride,this.visible=t.visible,this.toneMapped=t.toneMapped,this.userData=JSON.parse(JSON.stringify(t.userData)),this}dispose(){this.dispatchEvent({type:\"dispose\"})}set needsUpdate(t){t===!0&&this.version++}},dn=class extends ft{constructor(t){super(),this.isSpriteMaterial=!0,this.type=\"SpriteMaterial\",this.color=new U(16777215),this.map=null,this.alphaMap=null,this.rotation=0,this.sizeAttenuation=!0,this.transparent=!0,this.fog=!0,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.map=t.map,this.alphaMap=t.alphaMap,this.rotation=t.rotation,this.sizeAttenuation=t.sizeAttenuation,this.fog=t.fog,this}},di,Ui=new M,pi=new M,fi=new M,mi=new C,Wi=new C,rc=new q,bs=new M,qi=new M,ws=new M,oh=new C,sr=new C,ah=new C,Er=class extends Y{constructor(t=new dn){if(super(),this.isSprite=!0,this.type=\"Sprite\",di===void 0){di=new G;let e=new Float32Array([-.5,-.5,0,0,0,.5,-.5,0,1,0,.5,.5,0,1,1,-.5,.5,0,0,1]),i=new es(e,5);di.setIndex([0,1,2,0,2,3]),di.setAttribute(\"position\",new Ci(i,3,0,!1)),di.setAttribute(\"uv\",new Ci(i,2,3,!1))}this.geometry=di,this.material=t,this.center=new C(.5,.5),this.count=1}raycast(t,e){t.camera===null&&Z('Sprite: \"Raycaster.camera\" needs to be set in order to raycast against sprites.'),pi.setFromMatrixScale(this.matrixWorld),rc.copy(t.camera.matrixWorld),this.modelViewMatrix.multiplyMatrices(t.camera.matrixWorldInverse,this.matrixWorld),fi.setFromMatrixPosition(this.modelViewMatrix),t.camera.isPerspectiveCamera&&this.material.sizeAttenuation===!1&&pi.multiplyScalar(-fi.z);let i=this.material.rotation,s,n;i!==0&&(n=Math.cos(i),s=Math.sin(i));let r=this.center;Ms(bs.set(-.5,-.5,0),fi,r,pi,s,n),Ms(qi.set(.5,-.5,0),fi,r,pi,s,n),Ms(ws.set(.5,.5,0),fi,r,pi,s,n),oh.set(0,0),sr.set(1,0),ah.set(1,1);let o=t.ray.intersectTriangle(bs,qi,ws,!1,Ui);if(o===null&&(Ms(qi.set(-.5,.5,0),fi,r,pi,s,n),sr.set(0,1),o=t.ray.intersectTriangle(bs,ws,qi,!1,Ui),o===null))return;let a=t.ray.origin.distanceTo(Ui);a<t.near||a>t.far||e.push({distance:a,point:Ui.clone(),uv:pe.getInterpolation(Ui,bs,qi,ws,oh,sr,ah,new C),face:null,object:this})}copy(t,e){return super.copy(t,e),t.center!==void 0&&this.center.copy(t.center),this.material=t.material,this}};function Ms(h,t,e,i,s,n){mi.subVectors(h,e).addScalar(.5).multiply(i),s!==void 0?(Wi.x=n*mi.x-s*mi.y,Wi.y=s*mi.x+n*mi.y):Wi.copy(mi),h.copy(t),h.x+=Wi.x,h.y+=Wi.y,h.applyMatrix4(rc)}var _s=new M,hh=new M,Nr=class extends Y{constructor(){super(),this.isLOD=!0,this._currentLevel=0,this.type=\"LOD\",Object.defineProperties(this,{levels:{enumerable:!0,value:[]}}),this.autoUpdate=!0}copy(t){super.copy(t,!1);let e=t.levels;for(let i=0,s=e.length;i<s;i++){let n=e[i];this.addLevel(n.object.clone(),n.distance,n.hysteresis)}return this.autoUpdate=t.autoUpdate,this}addLevel(t,e=0,i=0){e=Math.abs(e);let s=this.levels,n;for(n=0;n<s.length&&!(e<s[n].distance);n++);return s.splice(n,0,{distance:e,hysteresis:i,object:t}),this.add(t),this}removeLevel(t){let e=this.levels;for(let i=0;i<e.length;i++)if(e[i].distance===t){let s=e.splice(i,1);return this.remove(s[0].object),!0}return!1}getCurrentLevel(){return this._currentLevel}getObjectForDistance(t){let e=this.levels;if(e.length>0){let i,s;for(i=1,s=e.length;i<s;i++){let n=e[i].distance;if(e[i].object.visible&&(n-=n*e[i].hysteresis),t<n)break}return e[i-1].object}return null}raycast(t,e){if(this.levels.length>0){_s.setFromMatrixPosition(this.matrixWorld);let s=t.ray.origin.distanceTo(_s);this.getObjectForDistance(s).raycast(t,e)}}update(t){let e=this.levels;if(e.length>1){_s.setFromMatrixPosition(t.matrixWorld),hh.setFromMatrixPosition(this.matrixWorld);let i=_s.distanceTo(hh)/t.zoom;e[0].object.visible=!0;let s,n;for(s=1,n=e.length;s<n;s++){let r=e[s].distance;if(e[s].object.visible&&(r-=r*e[s].hysteresis),i>=r)e[s-1].object.visible=!1,e[s].object.visible=!0;else break}for(this._currentLevel=s-1;s<n;s++)e[s].object.visible=!1}}toJSON(t){let e=super.toJSON(t);this.autoUpdate===!1&&(e.object.autoUpdate=!1),e.object.levels=[];let i=this.levels;for(let s=0,n=i.length;s<n;s++){let r=i[s];e.object.levels.push({object:r.object.uuid,distance:r.distance,hysteresis:r.hysteresis})}return e}},ue=new M,nr=new M,vs=new M,Se=new M,rr=new M,Ss=new M,or=new M,Ye=class{constructor(t=new M,e=new M(0,0,-1)){this.origin=t,this.direction=e}set(t,e){return this.origin.copy(t),this.direction.copy(e),this}copy(t){return this.origin.copy(t.origin),this.direction.copy(t.direction),this}at(t,e){return e.copy(this.origin).addScaledVector(this.direction,t)}lookAt(t){return this.direction.copy(t).sub(this.origin).normalize(),this}recast(t){return this.origin.copy(this.at(t,ue)),this}closestPointToPoint(t,e){e.subVectors(t,this.origin);let i=e.dot(this.direction);return i<0?e.copy(this.origin):e.copy(this.origin).addScaledVector(this.direction,i)}distanceToPoint(t){return Math.sqrt(this.distanceSqToPoint(t))}distanceSqToPoint(t){let e=ue.subVectors(t,this.origin).dot(this.direction);return e<0?this.origin.distanceToSquared(t):(ue.copy(this.origin).addScaledVector(this.direction,e),ue.distanceToSquared(t))}distanceSqToSegment(t,e,i,s){nr.copy(t).add(e).multiplyScalar(.5),vs.copy(e).sub(t).normalize(),Se.copy(this.origin).sub(nr);let n=t.distanceTo(e)*.5,r=-this.direction.dot(vs),o=Se.dot(this.direction),a=-Se.dot(vs),l=Se.lengthSq(),c=Math.abs(1-r*r),u,d,p,f;if(c>0)if(u=r*a-o,d=r*o-a,f=n*c,u>=0)if(d>=-f)if(d<=f){let m=1/c;u*=m,d*=m,p=u*(u+r*d+2*o)+d*(r*u+d+2*a)+l}else d=n,u=Math.max(0,-(r*d+o)),p=-u*u+d*(d+2*a)+l;else d=-n,u=Math.max(0,-(r*d+o)),p=-u*u+d*(d+2*a)+l;else d<=-f?(u=Math.max(0,-(-r*n+o)),d=u>0?-n:Math.min(Math.max(-n,-a),n),p=-u*u+d*(d+2*a)+l):d<=f?(u=0,d=Math.min(Math.max(-n,-a),n),p=d*(d+2*a)+l):(u=Math.max(0,-(r*n+o)),d=u>0?n:Math.min(Math.max(-n,-a),n),p=-u*u+d*(d+2*a)+l);else d=r>0?-n:n,u=Math.max(0,-(r*d+o)),p=-u*u+d*(d+2*a)+l;return i&&i.copy(this.origin).addScaledVector(this.direction,u),s&&s.copy(nr).addScaledVector(vs,d),p}intersectSphere(t,e){ue.subVectors(t.center,this.origin);let i=ue.dot(this.direction),s=ue.dot(ue)-i*i,n=t.radius*t.radius;if(s>n)return null;let r=Math.sqrt(n-s),o=i-r,a=i+r;return a<0?null:o<0?this.at(a,e):this.at(o,e)}intersectsSphere(t){return t.radius<0?!1:this.distanceSqToPoint(t.center)<=t.radius*t.radius}distanceToPlane(t){let e=t.normal.dot(this.direction);if(e===0)return t.distanceToPoint(this.origin)===0?0:null;let i=-(this.origin.dot(t.normal)+t.constant)/e;return i>=0?i:null}intersectPlane(t,e){let i=this.distanceToPlane(t);return i===null?null:this.at(i,e)}intersectsPlane(t){let e=t.distanceToPoint(this.origin);return e===0||t.normal.dot(this.direction)*e<0}intersectBox(t,e){let i,s,n,r,o,a,l=1/this.direction.x,c=1/this.direction.y,u=1/this.direction.z,d=this.origin;return l>=0?(i=(t.min.x-d.x)*l,s=(t.max.x-d.x)*l):(i=(t.max.x-d.x)*l,s=(t.min.x-d.x)*l),c>=0?(n=(t.min.y-d.y)*c,r=(t.max.y-d.y)*c):(n=(t.max.y-d.y)*c,r=(t.min.y-d.y)*c),i>r||n>s||((n>i||isNaN(i))&&(i=n),(r<s||isNaN(s))&&(s=r),u>=0?(o=(t.min.z-d.z)*u,a=(t.max.z-d.z)*u):(o=(t.max.z-d.z)*u,a=(t.min.z-d.z)*u),i>a||o>s)||((o>i||i!==i)&&(i=o),(a<s||s!==s)&&(s=a),s<0)?null:this.at(i>=0?i:s,e)}intersectsBox(t){return this.intersectBox(t,ue)!==null}intersectTriangle(t,e,i,s,n){rr.subVectors(e,t),Ss.subVectors(i,t),or.crossVectors(rr,Ss);let r=this.direction.dot(or),o;if(r>0){if(s)return null;o=1}else if(r<0)o=-1,r=-r;else return null;Se.subVectors(this.origin,t);let a=o*this.direction.dot(Ss.crossVectors(Se,Ss));if(a<0)return null;let l=o*this.direction.dot(rr.cross(Se));if(l<0||a+l>r)return null;let c=-o*Se.dot(or);return c<0?null:this.at(c/r,n)}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)}},Fe=class extends ft{constructor(t){super(),this.isMeshBasicMaterial=!0,this.type=\"MeshBasicMaterial\",this.color=new U(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.envMapRotation=new ie,this.combine=ia,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap=\"round\",this.wireframeLinejoin=\"round\",this.fog=!0,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.map=t.map,this.lightMap=t.lightMap,this.lightMapIntensity=t.lightMapIntensity,this.aoMap=t.aoMap,this.aoMapIntensity=t.aoMapIntensity,this.specularMap=t.specularMap,this.alphaMap=t.alphaMap,this.envMap=t.envMap,this.envMapRotation.copy(t.envMapRotation),this.combine=t.combine,this.reflectivity=t.reflectivity,this.refractionRatio=t.refractionRatio,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.wireframeLinecap=t.wireframeLinecap,this.wireframeLinejoin=t.wireframeLinejoin,this.fog=t.fog,this}},lh=new q,Ee=new Ye,As=new ut,ch=new M,Ts=new M,Is=new M,Cs=new M,ar=new M,zs=new M,uh=new M,Fs=new M,Vt=class extends Y{constructor(t=new G,e=new Fe){super(),this.isMesh=!0,this.type=\"Mesh\",this.geometry=t,this.material=e,this.morphTargetDictionary=void 0,this.morphTargetInfluences=void 0,this.count=1,this.updateMorphTargets()}copy(t,e){return super.copy(t,e),t.morphTargetInfluences!==void 0&&(this.morphTargetInfluences=t.morphTargetInfluences.slice()),t.morphTargetDictionary!==void 0&&(this.morphTargetDictionary=Object.assign({},t.morphTargetDictionary)),this.material=Array.isArray(t.material)?t.material.slice():t.material,this.geometry=t.geometry,this}updateMorphTargets(){let e=this.geometry.morphAttributes,i=Object.keys(e);if(i.length>0){let s=e[i[0]];if(s!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let n=0,r=s.length;n<r;n++){let o=s[n].name||String(n);this.morphTargetInfluences.push(0),this.morphTargetDictionary[o]=n}}}}getVertexPosition(t,e){let i=this.geometry,s=i.attributes.position,n=i.morphAttributes.position,r=i.morphTargetsRelative;e.fromBufferAttribute(s,t);let o=this.morphTargetInfluences;if(n&&o){zs.set(0,0,0);for(let a=0,l=n.length;a<l;a++){let c=o[a],u=n[a];c!==0&&(ar.fromBufferAttribute(u,t),r?zs.addScaledVector(ar,c):zs.addScaledVector(ar.sub(e),c))}e.add(zs)}return e}raycast(t,e){let i=this.geometry,s=this.material,n=this.matrixWorld;s!==void 0&&(i.boundingSphere===null&&i.computeBoundingSphere(),As.copy(i.boundingSphere),As.applyMatrix4(n),Ee.copy(t.ray).recast(t.near),!(As.containsPoint(Ee.origin)===!1&&(Ee.intersectSphere(As,ch)===null||Ee.origin.distanceToSquared(ch)>(t.far-t.near)**2))&&(lh.copy(n).invert(),Ee.copy(t.ray).applyMatrix4(lh),!(i.boundingBox!==null&&Ee.intersectsBox(i.boundingBox)===!1)&&this._computeIntersections(t,e,Ee)))}_computeIntersections(t,e,i){let s,n=this.geometry,r=this.material,o=n.index,a=n.attributes.position,l=n.attributes.uv,c=n.attributes.uv1,u=n.attributes.normal,d=n.groups,p=n.drawRange;if(o!==null)if(Array.isArray(r))for(let f=0,m=d.length;f<m;f++){let g=d[f],y=r[g.materialIndex],x=Math.max(g.start,p.start),b=Math.min(o.count,Math.min(g.start+g.count,p.start+p.count));for(let w=x,_=b;w<_;w+=3){let v=o.getX(w),A=o.getX(w+1),S=o.getX(w+2);s=Bs(this,y,t,i,l,c,u,v,A,S),s&&(s.faceIndex=Math.floor(w/3),s.face.materialIndex=g.materialIndex,e.push(s))}}else{let f=Math.max(0,p.start),m=Math.min(o.count,p.start+p.count);for(let g=f,y=m;g<y;g+=3){let x=o.getX(g),b=o.getX(g+1),w=o.getX(g+2);s=Bs(this,r,t,i,l,c,u,x,b,w),s&&(s.faceIndex=Math.floor(g/3),e.push(s))}}else if(a!==void 0)if(Array.isArray(r))for(let f=0,m=d.length;f<m;f++){let g=d[f],y=r[g.materialIndex],x=Math.max(g.start,p.start),b=Math.min(a.count,Math.min(g.start+g.count,p.start+p.count));for(let w=x,_=b;w<_;w+=3){let v=w,A=w+1,S=w+2;s=Bs(this,y,t,i,l,c,u,v,A,S),s&&(s.faceIndex=Math.floor(w/3),s.face.materialIndex=g.materialIndex,e.push(s))}}else{let f=Math.max(0,p.start),m=Math.min(a.count,p.start+p.count);for(let g=f,y=m;g<y;g+=3){let x=g,b=g+1,w=g+2;s=Bs(this,r,t,i,l,c,u,x,b,w),s&&(s.faceIndex=Math.floor(g/3),e.push(s))}}}};function od(h,t,e,i,s,n,r,o){let a;if(t.side===gc?a=i.intersectTriangle(r,n,s,!0,o):a=i.intersectTriangle(s,n,r,t.side===Sr,o),a===null)return null;Fs.copy(o),Fs.applyMatrix4(h.matrixWorld);let l=e.ray.origin.distanceTo(Fs);return l<e.near||l>e.far?null:{distance:l,point:Fs.clone(),object:h}}function Bs(h,t,e,i,s,n,r,o,a,l){h.getVertexPosition(o,Ts),h.getVertexPosition(a,Is),h.getVertexPosition(l,Cs);let c=od(h,t,e,i,Ts,Is,Cs,uh);if(c){let u=new M;pe.getBarycoord(uh,Ts,Is,Cs,u),s&&(c.uv=pe.getInterpolatedAttribute(s,o,a,l,u,new C)),n&&(c.uv1=pe.getInterpolatedAttribute(n,o,a,l,u,new C)),r&&(c.normal=pe.getInterpolatedAttribute(r,o,a,l,u,new M),c.normal.dot(i.direction)>0&&c.normal.multiplyScalar(-1));let d={a:o,b:a,c:l,normal:new M,materialIndex:0};pe.getNormal(Ts,Is,Cs,d.normal),c.face=d,c.barycoord=u}return c}var dh=new M,ph=new Nt,fh=new Nt,ad=new M,mh=new q,ks=new M,hr=new ut,yh=new q,lr=new Ye,Vr=class extends Vt{constructor(t,e){super(t,e),this.isSkinnedMesh=!0,this.type=\"SkinnedMesh\",this.bindMode=Fa,this.bindMatrix=new q,this.bindMatrixInverse=new q,this.boundingBox=null,this.boundingSphere=null}computeBoundingBox(){let t=this.geometry;this.boundingBox===null&&(this.boundingBox=new pt),this.boundingBox.makeEmpty();let e=t.getAttribute(\"position\");for(let i=0;i<e.count;i++)this.getVertexPosition(i,ks),this.boundingBox.expandByPoint(ks)}computeBoundingSphere(){let t=this.geometry;this.boundingSphere===null&&(this.boundingSphere=new ut),this.boundingSphere.makeEmpty();let e=t.getAttribute(\"position\");for(let i=0;i<e.count;i++)this.getVertexPosition(i,ks),this.boundingSphere.expandByPoint(ks)}copy(t,e){return super.copy(t,e),this.bindMode=t.bindMode,this.bindMatrix.copy(t.bindMatrix),this.bindMatrixInverse.copy(t.bindMatrixInverse),this.skeleton=t.skeleton,t.boundingBox!==null&&(this.boundingBox=t.boundingBox.clone()),t.boundingSphere!==null&&(this.boundingSphere=t.boundingSphere.clone()),this}raycast(t,e){let i=this.material,s=this.matrixWorld;i!==void 0&&(this.boundingSphere===null&&this.computeBoundingSphere(),hr.copy(this.boundingSphere),hr.applyMatrix4(s),t.ray.intersectsSphere(hr)!==!1&&(yh.copy(s).invert(),lr.copy(t.ray).applyMatrix4(yh),!(this.boundingBox!==null&&lr.intersectsBox(this.boundingBox)===!1)&&this._computeIntersections(t,e,lr)))}getVertexPosition(t,e){return super.getVertexPosition(t,e),this.applyBoneTransform(t,e),e}bind(t,e){this.skeleton=t,e===void 0&&(this.updateMatrixWorld(!0),this.skeleton.calculateInverses(),e=this.matrixWorld),this.bindMatrix.copy(e),this.bindMatrixInverse.copy(e).invert()}pose(){this.skeleton.pose()}normalizeSkinWeights(){let t=new Nt,e=this.geometry.attributes.skinWeight;for(let i=0,s=e.count;i<s;i++){t.fromBufferAttribute(e,i);let n=1/t.manhattanLength();n!==1/0?t.multiplyScalar(n):t.set(1,0,0,0),e.setXYZW(i,t.x,t.y,t.z,t.w)}}updateMatrixWorld(t){super.updateMatrixWorld(t),this.bindMode===Fa?this.bindMatrixInverse.copy(this.matrixWorld).invert():this.bindMode===xc?this.bindMatrixInverse.copy(this.bindMatrix).invert():N(\"SkinnedMesh: Unrecognized bindMode: \"+this.bindMode)}applyBoneTransform(t,e){let i=this.skeleton,s=this.geometry;ph.fromBufferAttribute(s.attributes.skinIndex,t),fh.fromBufferAttribute(s.attributes.skinWeight,t),dh.copy(e).applyMatrix4(this.bindMatrix),e.set(0,0,0);for(let n=0;n<4;n++){let r=fh.getComponent(n);if(r!==0){let o=ph.getComponent(n);mh.multiplyMatrices(i.bones[o].matrixWorld,i.boneInverses[o]),e.addScaledVector(ad.copy(dh).applyMatrix4(mh),r)}}return e.applyMatrix4(this.bindMatrixInverse)}},pn=class extends Y{constructor(){super(),this.isBone=!0,this.type=\"Bone\"}},Xt=class extends dt{constructor(t=null,e=1,i=1,s,n,r,o,a,l=kt,c=kt,u,d){super(null,r,o,a,l,c,s,n,u,d),this.isDataTexture=!0,this.image={data:t,width:e,height:i},this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1}},gh=new q,hd=new q,Dr=class h{constructor(t=[],e=[]){this.uuid=Bt(),this.bones=t.slice(0),this.boneInverses=e,this.boneMatrices=null,this.previousBoneMatrices=null,this.boneTexture=null,this.init()}init(){let t=this.bones,e=this.boneInverses;if(this.boneMatrices=new Float32Array(t.length*16),e.length===0)this.calculateInverses();else if(t.length!==e.length){N(\"Skeleton: Number of inverse bone matrices does not match amount of bones.\"),this.boneInverses=[];for(let i=0,s=this.bones.length;i<s;i++)this.boneInverses.push(new q)}}calculateInverses(){this.boneInverses.length=0;for(let t=0,e=this.bones.length;t<e;t++){let i=new q;this.bones[t]&&i.copy(this.bones[t].matrixWorld).invert(),this.boneInverses.push(i)}}pose(){for(let t=0,e=this.bones.length;t<e;t++){let i=this.bones[t];i&&i.matrixWorld.copy(this.boneInverses[t]).invert()}for(let t=0,e=this.bones.length;t<e;t++){let i=this.bones[t];i&&(i.parent&&i.parent.isBone?(i.matrix.copy(i.parent.matrixWorld).invert(),i.matrix.multiply(i.matrixWorld)):i.matrix.copy(i.matrixWorld),i.matrix.decompose(i.position,i.quaternion,i.scale))}}update(){let t=this.bones,e=this.boneInverses,i=this.boneMatrices,s=this.boneTexture;for(let n=0,r=t.length;n<r;n++){let o=t[n]?t[n].matrixWorld:hd;gh.multiplyMatrices(o,e[n]),gh.toArray(i,n*16)}s!==null&&(s.needsUpdate=!0)}clone(){return new h(this.bones,this.boneInverses)}computeBoneTexture(){let t=Math.sqrt(this.bones.length*4);t=Math.ceil(t/4)*4,t=Math.max(t,4);let e=new Float32Array(t*t*4);e.set(this.boneMatrices);let i=new Xt(e,t,t,Ki,Ti);return i.needsUpdate=!0,this.boneMatrices=e,this.boneTexture=i,this}getBoneByName(t){for(let e=0,i=this.bones.length;e<i;e++){let s=this.bones[e];if(s.name===t)return s}}dispose(){this.boneTexture!==null&&(this.boneTexture.dispose(),this.boneTexture=null)}fromJSON(t,e){this.uuid=t.uuid;for(let i=0,s=t.bones.length;i<s;i++){let n=t.bones[i],r=e[n];r===void 0&&(N(\"Skeleton: No bone found with UUID:\",n),r=new pn),this.bones.push(r),this.boneInverses.push(new q().fromArray(t.boneInverses[i]))}return this.init(),this}toJSON(){let t={metadata:{version:4.7,type:\"Skeleton\",generator:\"Skeleton.toJSON\"},bones:[],boneInverses:[]};t.uuid=this.uuid;let e=this.bones,i=this.boneInverses;for(let s=0,n=e.length;s<n;s++){let r=e[s];t.bones.push(r.uuid);let o=i[s];t.boneInverses.push(o.toArray())}return t}},$e=class extends j{constructor(t,e,i,s=1){super(t,e,i),this.isInstancedBufferAttribute=!0,this.meshPerAttribute=s}copy(t){return super.copy(t),this.meshPerAttribute=t.meshPerAttribute,this}toJSON(){let t=super.toJSON();return t.meshPerAttribute=this.meshPerAttribute,t.isInstancedBufferAttribute=!0,t}},yi=new q,xh=new q,Ps=[],bh=new pt,ld=new q,Ji=new Vt,Gi=new ut,Lr=class extends Vt{constructor(t,e,i){super(t,e),this.isInstancedMesh=!0,this.instanceMatrix=new $e(new Float32Array(i*16),16),this.previousInstanceMatrix=null,this.instanceColor=null,this.morphTexture=null,this.count=i,this.boundingBox=null,this.boundingSphere=null;for(let s=0;s<i;s++)this.setMatrixAt(s,ld)}computeBoundingBox(){let t=this.geometry,e=this.count;this.boundingBox===null&&(this.boundingBox=new pt),t.boundingBox===null&&t.computeBoundingBox(),this.boundingBox.makeEmpty();for(let i=0;i<e;i++)this.getMatrixAt(i,yi),bh.copy(t.boundingBox).applyMatrix4(yi),this.boundingBox.union(bh)}computeBoundingSphere(){let t=this.geometry,e=this.count;this.boundingSphere===null&&(this.boundingSphere=new ut),t.boundingSphere===null&&t.computeBoundingSphere(),this.boundingSphere.makeEmpty();for(let i=0;i<e;i++)this.getMatrixAt(i,yi),Gi.copy(t.boundingSphere).applyMatrix4(yi),this.boundingSphere.union(Gi)}copy(t,e){return super.copy(t,e),this.instanceMatrix.copy(t.instanceMatrix),t.previousInstanceMatrix!==null&&(this.previousInstanceMatrix=t.previousInstanceMatrix.clone()),t.morphTexture!==null&&(this.morphTexture=t.morphTexture.clone()),t.instanceColor!==null&&(this.instanceColor=t.instanceColor.clone()),this.count=t.count,t.boundingBox!==null&&(this.boundingBox=t.boundingBox.clone()),t.boundingSphere!==null&&(this.boundingSphere=t.boundingSphere.clone()),this}getColorAt(t,e){e.fromArray(this.instanceColor.array,t*3)}getMatrixAt(t,e){e.fromArray(this.instanceMatrix.array,t*16)}getMorphAt(t,e){let i=e.morphTargetInfluences,s=this.morphTexture.source.data.data,n=i.length+1,r=t*n+1;for(let o=0;o<i.length;o++)i[o]=s[r+o]}raycast(t,e){let i=this.matrixWorld,s=this.count;if(Ji.geometry=this.geometry,Ji.material=this.material,Ji.material!==void 0&&(this.boundingSphere===null&&this.computeBoundingSphere(),Gi.copy(this.boundingSphere),Gi.applyMatrix4(i),t.ray.intersectsSphere(Gi)!==!1))for(let n=0;n<s;n++){this.getMatrixAt(n,yi),xh.multiplyMatrices(i,yi),Ji.matrixWorld=xh,Ji.raycast(t,Ps);for(let r=0,o=Ps.length;r<o;r++){let a=Ps[r];a.instanceId=n,a.object=this,e.push(a)}Ps.length=0}}setColorAt(t,e){this.instanceColor===null&&(this.instanceColor=new $e(new Float32Array(this.instanceMatrix.count*3).fill(1),3)),e.toArray(this.instanceColor.array,t*3)}setMatrixAt(t,e){e.toArray(this.instanceMatrix.array,t*16)}setMorphAt(t,e){let i=e.morphTargetInfluences,s=i.length+1;this.morphTexture===null&&(this.morphTexture=new Xt(new Float32Array(s*this.count),s,this.count,Ql,Ti));let n=this.morphTexture.source.data.data,r=0;for(let l=0;l<i.length;l++)r+=i[l];let o=this.geometry.morphTargetsRelative?1:1-r,a=s*t;n[a]=o,n.set(i,a+1)}updateMorphTargets(){}dispose(){this.dispatchEvent({type:\"dispose\"}),this.morphTexture!==null&&(this.morphTexture.dispose(),this.morphTexture=null)}},cr=new M,cd=new M,ud=new ee,Ie=class{constructor(t=new M(1,0,0),e=0){this.isPlane=!0,this.normal=t,this.constant=e}set(t,e){return this.normal.copy(t),this.constant=e,this}setComponents(t,e,i,s){return this.normal.set(t,e,i),this.constant=s,this}setFromNormalAndCoplanarPoint(t,e){return this.normal.copy(t),this.constant=-e.dot(this.normal),this}setFromCoplanarPoints(t,e,i){let s=cr.subVectors(i,e).cross(cd.subVectors(t,e)).normalize();return this.setFromNormalAndCoplanarPoint(s,t),this}copy(t){return this.normal.copy(t.normal),this.constant=t.constant,this}normalize(){let t=1/this.normal.length();return this.normal.multiplyScalar(t),this.constant*=t,this}negate(){return this.constant*=-1,this.normal.negate(),this}distanceToPoint(t){return this.normal.dot(t)+this.constant}distanceToSphere(t){return this.distanceToPoint(t.center)-t.radius}projectPoint(t,e){return e.copy(t).addScaledVector(this.normal,-this.distanceToPoint(t))}intersectLine(t,e){let i=t.delta(cr),s=this.normal.dot(i);if(s===0)return this.distanceToPoint(t.start)===0?e.copy(t.start):null;let n=-(t.start.dot(this.normal)+this.constant)/s;return n<0||n>1?null:e.copy(t.start).addScaledVector(i,n)}intersectsLine(t){let e=this.distanceToPoint(t.start),i=this.distanceToPoint(t.end);return e<0&&i>0||i<0&&e>0}intersectsBox(t){return t.intersectsPlane(this)}intersectsSphere(t){return t.intersectsPlane(this)}coplanarPoint(t){return t.copy(this.normal).multiplyScalar(-this.constant)}applyMatrix4(t,e){let i=e||ud.getNormalMatrix(t),s=this.coplanarPoint(cr).applyMatrix4(t),n=this.normal.applyMatrix3(i).normalize();return this.constant=-s.dot(n),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)}},Ne=new ut,dd=new C(.5,.5),Rs=new M,is=class{constructor(t=new Ie,e=new Ie,i=new Ie,s=new Ie,n=new Ie,r=new Ie){this.planes=[t,e,i,s,n,r]}set(t,e,i,s,n,r){let o=this.planes;return o[0].copy(t),o[1].copy(e),o[2].copy(i),o[3].copy(s),o[4].copy(n),o[5].copy(r),this}copy(t){let e=this.planes;for(let i=0;i<6;i++)e[i].copy(t.planes[i]);return this}setFromProjectionMatrix(t,e=Qt,i=!1){let s=this.planes,n=t.elements,r=n[0],o=n[1],a=n[2],l=n[3],c=n[4],u=n[5],d=n[6],p=n[7],f=n[8],m=n[9],g=n[10],y=n[11],x=n[12],b=n[13],w=n[14],_=n[15];if(s[0].setComponents(l-r,p-c,y-f,_-x).normalize(),s[1].setComponents(l+r,p+c,y+f,_+x).normalize(),s[2].setComponents(l+o,p+u,y+m,_+b).normalize(),s[3].setComponents(l-o,p-u,y-m,_-b).normalize(),i)s[4].setComponents(a,d,g,w).normalize(),s[5].setComponents(l-a,p-d,y-g,_-w).normalize();else if(s[4].setComponents(l-a,p-d,y-g,_-w).normalize(),e===Qt)s[5].setComponents(l+a,p+d,y+g,_+w).normalize();else if(e===Ii)s[5].setComponents(a,d,g,w).normalize();else throw new Error(\"THREE.Frustum.setFromProjectionMatrix(): Invalid coordinate system: \"+e);return this}intersectsObject(t){if(t.boundingSphere!==void 0)t.boundingSphere===null&&t.computeBoundingSphere(),Ne.copy(t.boundingSphere).applyMatrix4(t.matrixWorld);else{let e=t.geometry;e.boundingSphere===null&&e.computeBoundingSphere(),Ne.copy(e.boundingSphere).applyMatrix4(t.matrixWorld)}return this.intersectsSphere(Ne)}intersectsSprite(t){Ne.center.set(0,0,0);let e=dd.distanceTo(t.center);return Ne.radius=.7071067811865476+e,Ne.applyMatrix4(t.matrixWorld),this.intersectsSphere(Ne)}intersectsSphere(t){let e=this.planes,i=t.center,s=-t.radius;for(let n=0;n<6;n++)if(e[n].distanceToPoint(i)<s)return!1;return!0}intersectsBox(t){let e=this.planes;for(let i=0;i<6;i++){let s=e[i];if(Rs.x=s.normal.x>0?t.max.x:t.min.x,Rs.y=s.normal.y>0?t.max.y:t.min.y,Rs.z=s.normal.z>0?t.max.z:t.min.z,s.distanceToPoint(Rs)<0)return!1}return!0}containsPoint(t){let e=this.planes;for(let i=0;i<6;i++)if(e[i].distanceToPoint(t)<0)return!1;return!0}clone(){return new this.constructor().copy(this)}},Zt=new q,Yt=new is,Ur=class h{constructor(){this.coordinateSystem=Qt}intersectsObject(t,e){if(!e.isArrayCamera||e.cameras.length===0)return!1;for(let i=0;i<e.cameras.length;i++){let s=e.cameras[i];if(Zt.multiplyMatrices(s.projectionMatrix,s.matrixWorldInverse),Yt.setFromProjectionMatrix(Zt,s.coordinateSystem,s.reversedDepth),Yt.intersectsObject(t))return!0}return!1}intersectsSprite(t,e){if(!e||!e.cameras||e.cameras.length===0)return!1;for(let i=0;i<e.cameras.length;i++){let s=e.cameras[i];if(Zt.multiplyMatrices(s.projectionMatrix,s.matrixWorldInverse),Yt.setFromProjectionMatrix(Zt,s.coordinateSystem,s.reversedDepth),Yt.intersectsSprite(t))return!0}return!1}intersectsSphere(t,e){if(!e||!e.cameras||e.cameras.length===0)return!1;for(let i=0;i<e.cameras.length;i++){let s=e.cameras[i];if(Zt.multiplyMatrices(s.projectionMatrix,s.matrixWorldInverse),Yt.setFromProjectionMatrix(Zt,s.coordinateSystem,s.reversedDepth),Yt.intersectsSphere(t))return!0}return!1}intersectsBox(t,e){if(!e||!e.cameras||e.cameras.length===0)return!1;for(let i=0;i<e.cameras.length;i++){let s=e.cameras[i];if(Zt.multiplyMatrices(s.projectionMatrix,s.matrixWorldInverse),Yt.setFromProjectionMatrix(Zt,s.coordinateSystem,s.reversedDepth),Yt.intersectsBox(t))return!0}return!1}containsPoint(t,e){if(!e||!e.cameras||e.cameras.length===0)return!1;for(let i=0;i<e.cameras.length;i++){let s=e.cameras[i];if(Zt.multiplyMatrices(s.projectionMatrix,s.matrixWorldInverse),Yt.setFromProjectionMatrix(Zt,s.coordinateSystem,s.reversedDepth),Yt.containsPoint(t))return!0}return!1}clone(){return new h}};function ur(h,t){return h-t}function pd(h,t){return h.z-t.z}function fd(h,t){return t.z-h.z}var Wr=class{constructor(){this.index=0,this.pool=[],this.list=[]}push(t,e,i,s){let n=this.pool,r=this.list;this.index>=n.length&&n.push({start:-1,count:-1,z:-1,index:-1});let o=n[this.index];r.push(o),this.index++,o.start=t,o.count=e,o.z=i,o.index=s}reset(){this.list.length=0,this.index=0}},vt=new q,md=new U(1,1,1),wh=new is,yd=new Ur,Os=new pt,Ve=new ut,Xi=new M,Mh=new M,gd=new M,dr=new Wr,gt=new Vt,Es=[];function xd(h,t,e=0){let i=t.itemSize;if(h.isInterleavedBufferAttribute||h.array.constructor!==t.array.constructor){let s=h.count;for(let n=0;n<s;n++)for(let r=0;r<i;r++)t.setComponent(n+e,r,h.getComponent(n,r))}else t.array.set(h.array,e*i);t.needsUpdate=!0}function De(h,t){if(h.constructor!==t.constructor){let e=Math.min(h.length,t.length);for(let i=0;i<e;i++)t[i]=h[i]}else{let e=Math.min(h.length,t.length);t.set(new h.constructor(h.buffer,0,e))}}var qr=class extends Vt{constructor(t,e,i=e*2,s){super(new G,s),this.isBatchedMesh=!0,this.perObjectFrustumCulled=!0,this.sortObjects=!0,this.boundingBox=null,this.boundingSphere=null,this.customSort=null,this._instanceInfo=[],this._geometryInfo=[],this._availableInstanceIds=[],this._availableGeometryIds=[],this._nextIndexStart=0,this._nextVertexStart=0,this._geometryCount=0,this._visibilityChanged=!0,this._geometryInitialized=!1,this._maxInstanceCount=t,this._maxVertexCount=e,this._maxIndexCount=i,this._multiDrawCounts=new Int32Array(t),this._multiDrawStarts=new Int32Array(t),this._multiDrawCount=0,this._multiDrawInstances=null,this._matricesTexture=null,this._indirectTexture=null,this._colorsTexture=null,this._initMatricesTexture(),this._initIndirectTexture()}get maxInstanceCount(){return this._maxInstanceCount}get instanceCount(){return this._instanceInfo.length-this._availableInstanceIds.length}get unusedVertexCount(){return this._maxVertexCount-this._nextVertexStart}get unusedIndexCount(){return this._maxIndexCount-this._nextIndexStart}_initMatricesTexture(){let t=Math.sqrt(this._maxInstanceCount*4);t=Math.ceil(t/4)*4,t=Math.max(t,4);let e=new Float32Array(t*t*4),i=new Xt(e,t,t,Ki,Ti);this._matricesTexture=i}_initIndirectTexture(){let t=Math.sqrt(this._maxInstanceCount);t=Math.ceil(t);let e=new Uint32Array(t*t),i=new Xt(e,t,t,Kl,Vn);this._indirectTexture=i}_initColorsTexture(){let t=Math.sqrt(this._maxInstanceCount);t=Math.ceil(t);let e=new Float32Array(t*t*4).fill(1),i=new Xt(e,t,t,Ki,Ti);i.colorSpace=Ft.workingColorSpace,this._colorsTexture=i}_initializeGeometry(t){let e=this.geometry,i=this._maxVertexCount,s=this._maxIndexCount;if(this._geometryInitialized===!1){for(let n in t.attributes){let r=t.getAttribute(n),{array:o,itemSize:a,normalized:l}=r,c=new o.constructor(i*a),u=new j(c,a,l);e.setAttribute(n,u)}if(t.getIndex()!==null){let n=i>65535?new Uint32Array(s):new Uint16Array(s);e.setIndex(new j(n,1))}this._geometryInitialized=!0}}_validateGeometry(t){let e=this.geometry;if(!!t.getIndex()!=!!e.getIndex())throw new Error('THREE.BatchedMesh: All geometries must consistently have \"index\".');for(let i in e.attributes){if(!t.hasAttribute(i))throw new Error(`THREE.BatchedMesh: Added geometry missing \"${i}\". All geometries must have consistent attributes.`);let s=t.getAttribute(i),n=e.getAttribute(i);if(s.itemSize!==n.itemSize||s.normalized!==n.normalized)throw new Error(\"THREE.BatchedMesh: All attributes must have a consistent itemSize and normalized value.\")}}validateInstanceId(t){let e=this._instanceInfo;if(t<0||t>=e.length||e[t].active===!1)throw new Error(`THREE.BatchedMesh: Invalid instanceId ${t}. Instance is either out of range or has been deleted.`)}validateGeometryId(t){let e=this._geometryInfo;if(t<0||t>=e.length||e[t].active===!1)throw new Error(`THREE.BatchedMesh: Invalid geometryId ${t}. Geometry is either out of range or has been deleted.`)}setCustomSort(t){return this.customSort=t,this}computeBoundingBox(){this.boundingBox===null&&(this.boundingBox=new pt);let t=this.boundingBox,e=this._instanceInfo;t.makeEmpty();for(let i=0,s=e.length;i<s;i++){if(e[i].active===!1)continue;let n=e[i].geometryIndex;this.getMatrixAt(i,vt),this.getBoundingBoxAt(n,Os).applyMatrix4(vt),t.union(Os)}}computeBoundingSphere(){this.boundingSphere===null&&(this.boundingSphere=new ut);let t=this.boundingSphere,e=this._instanceInfo;t.makeEmpty();for(let i=0,s=e.length;i<s;i++){if(e[i].active===!1)continue;let n=e[i].geometryIndex;this.getMatrixAt(i,vt),this.getBoundingSphereAt(n,Ve).applyMatrix4(vt),t.union(Ve)}}addInstance(t){if(this._instanceInfo.length>=this.maxInstanceCount&&this._availableInstanceIds.length===0)throw new Error(\"THREE.BatchedMesh: Maximum item count reached.\");let i={visible:!0,active:!0,geometryIndex:t},s=null;this._availableInstanceIds.length>0?(this._availableInstanceIds.sort(ur),s=this._availableInstanceIds.shift(),this._instanceInfo[s]=i):(s=this._instanceInfo.length,this._instanceInfo.push(i));let n=this._matricesTexture;vt.identity().toArray(n.image.data,s*16),n.needsUpdate=!0;let r=this._colorsTexture;return r&&(md.toArray(r.image.data,s*4),r.needsUpdate=!0),this._visibilityChanged=!0,s}addGeometry(t,e=-1,i=-1){this._initializeGeometry(t),this._validateGeometry(t);let s={vertexStart:-1,vertexCount:-1,reservedVertexCount:-1,indexStart:-1,indexCount:-1,reservedIndexCount:-1,start:-1,count:-1,boundingBox:null,boundingSphere:null,active:!0},n=this._geometryInfo;s.vertexStart=this._nextVertexStart,s.reservedVertexCount=e===-1?t.getAttribute(\"position\").count:e;let r=t.getIndex();if(r!==null&&(s.indexStart=this._nextIndexStart,s.reservedIndexCount=i===-1?r.count:i),s.indexStart!==-1&&s.indexStart+s.reservedIndexCount>this._maxIndexCount||s.vertexStart+s.reservedVertexCount>this._maxVertexCount)throw new Error(\"THREE.BatchedMesh: Reserved space request exceeds the maximum buffer size.\");let a;return this._availableGeometryIds.length>0?(this._availableGeometryIds.sort(ur),a=this._availableGeometryIds.shift(),n[a]=s):(a=this._geometryCount,this._geometryCount++,n.push(s)),this.setGeometryAt(a,t),this._nextIndexStart=s.indexStart+s.reservedIndexCount,this._nextVertexStart=s.vertexStart+s.reservedVertexCount,a}setGeometryAt(t,e){if(t>=this._geometryCount)throw new Error(\"THREE.BatchedMesh: Maximum geometry count reached.\");this._validateGeometry(e);let i=this.geometry,s=i.getIndex()!==null,n=i.getIndex(),r=e.getIndex(),o=this._geometryInfo[t];if(s&&r.count>o.reservedIndexCount||e.attributes.position.count>o.reservedVertexCount)throw new Error(\"THREE.BatchedMesh: Reserved space not large enough for provided geometry.\");let a=o.vertexStart,l=o.reservedVertexCount;o.vertexCount=e.getAttribute(\"position\").count;for(let c in i.attributes){let u=e.getAttribute(c),d=i.getAttribute(c);xd(u,d,a);let p=u.itemSize;for(let f=u.count,m=l;f<m;f++){let g=a+f;for(let y=0;y<p;y++)d.setComponent(g,y,0)}d.needsUpdate=!0,d.addUpdateRange(a*p,l*p)}if(s){let c=o.indexStart,u=o.reservedIndexCount;o.indexCount=e.getIndex().count;for(let d=0;d<r.count;d++)n.setX(c+d,a+r.getX(d));for(let d=r.count,p=u;d<p;d++)n.setX(c+d,a);n.needsUpdate=!0,n.addUpdateRange(c,o.reservedIndexCount)}return o.start=s?o.indexStart:o.vertexStart,o.count=s?o.indexCount:o.vertexCount,o.boundingBox=null,e.boundingBox!==null&&(o.boundingBox=e.boundingBox.clone()),o.boundingSphere=null,e.boundingSphere!==null&&(o.boundingSphere=e.boundingSphere.clone()),this._visibilityChanged=!0,t}deleteGeometry(t){let e=this._geometryInfo;if(t>=e.length||e[t].active===!1)return this;let i=this._instanceInfo;for(let s=0,n=i.length;s<n;s++)i[s].active&&i[s].geometryIndex===t&&this.deleteInstance(s);return e[t].active=!1,this._availableGeometryIds.push(t),this._visibilityChanged=!0,this}deleteInstance(t){return this.validateInstanceId(t),this._instanceInfo[t].active=!1,this._availableInstanceIds.push(t),this._visibilityChanged=!0,this}optimize(){let t=0,e=0,i=this._geometryInfo,s=i.map((r,o)=>o).sort((r,o)=>i[r].vertexStart-i[o].vertexStart),n=this.geometry;for(let r=0,o=i.length;r<o;r++){let a=s[r],l=i[a];if(l.active!==!1){if(n.index!==null){if(l.indexStart!==e){let{indexStart:c,vertexStart:u,reservedIndexCount:d}=l,p=n.index,f=p.array,m=t-u;for(let g=c;g<c+d;g++)f[g]=f[g]+m;p.array.copyWithin(e,c,c+d),p.addUpdateRange(e,d),p.needsUpdate=!0,l.indexStart=e}e+=l.reservedIndexCount}if(l.vertexStart!==t){let{vertexStart:c,reservedVertexCount:u}=l,d=n.attributes;for(let p in d){let f=d[p],{array:m,itemSize:g}=f;m.copyWithin(t*g,c*g,(c+u)*g),f.addUpdateRange(t*g,u*g),f.needsUpdate=!0}l.vertexStart=t}t+=l.reservedVertexCount,l.start=n.index?l.indexStart:l.vertexStart}}return this._nextIndexStart=e,this._nextVertexStart=t,this._visibilityChanged=!0,this}getBoundingBoxAt(t,e){if(t>=this._geometryCount)return null;let i=this.geometry,s=this._geometryInfo[t];if(s.boundingBox===null){let n=new pt,r=i.index,o=i.attributes.position;for(let a=s.start,l=s.start+s.count;a<l;a++){let c=a;r&&(c=r.getX(c)),n.expandByPoint(Xi.fromBufferAttribute(o,c))}s.boundingBox=n}return e.copy(s.boundingBox),e}getBoundingSphereAt(t,e){if(t>=this._geometryCount)return null;let i=this.geometry,s=this._geometryInfo[t];if(s.boundingSphere===null){let n=new ut;this.getBoundingBoxAt(t,Os),Os.getCenter(n.center);let r=i.index,o=i.attributes.position,a=0;for(let l=s.start,c=s.start+s.count;l<c;l++){let u=l;r&&(u=r.getX(u)),Xi.fromBufferAttribute(o,u),a=Math.max(a,n.center.distanceToSquared(Xi))}n.radius=Math.sqrt(a),s.boundingSphere=n}return e.copy(s.boundingSphere),e}setMatrixAt(t,e){this.validateInstanceId(t);let i=this._matricesTexture,s=this._matricesTexture.image.data;return e.toArray(s,t*16),i.needsUpdate=!0,this}getMatrixAt(t,e){return this.validateInstanceId(t),e.fromArray(this._matricesTexture.image.data,t*16)}setColorAt(t,e){return this.validateInstanceId(t),this._colorsTexture===null&&this._initColorsTexture(),e.toArray(this._colorsTexture.image.data,t*4),this._colorsTexture.needsUpdate=!0,this}getColorAt(t,e){return this.validateInstanceId(t),e.fromArray(this._colorsTexture.image.data,t*4)}setVisibleAt(t,e){return this.validateInstanceId(t),this._instanceInfo[t].visible===e?this:(this._instanceInfo[t].visible=e,this._visibilityChanged=!0,this)}getVisibleAt(t){return this.validateInstanceId(t),this._instanceInfo[t].visible}setGeometryIdAt(t,e){return this.validateInstanceId(t),this.validateGeometryId(e),this._instanceInfo[t].geometryIndex=e,this}getGeometryIdAt(t){return this.validateInstanceId(t),this._instanceInfo[t].geometryIndex}getGeometryRangeAt(t,e={}){this.validateGeometryId(t);let i=this._geometryInfo[t];return e.vertexStart=i.vertexStart,e.vertexCount=i.vertexCount,e.reservedVertexCount=i.reservedVertexCount,e.indexStart=i.indexStart,e.indexCount=i.indexCount,e.reservedIndexCount=i.reservedIndexCount,e.start=i.start,e.count=i.count,e}setInstanceCount(t){let e=this._availableInstanceIds,i=this._instanceInfo;for(e.sort(ur);e[e.length-1]===i.length-1;)i.pop(),e.pop();if(t<i.length)throw new Error(`BatchedMesh: Instance ids outside the range ${t} are being used. Cannot shrink instance count.`);let s=new Int32Array(t),n=new Int32Array(t);De(this._multiDrawCounts,s),De(this._multiDrawStarts,n),this._multiDrawCounts=s,this._multiDrawStarts=n,this._maxInstanceCount=t;let r=this._indirectTexture,o=this._matricesTexture,a=this._colorsTexture;r.dispose(),this._initIndirectTexture(),De(r.image.data,this._indirectTexture.image.data),o.dispose(),this._initMatricesTexture(),De(o.image.data,this._matricesTexture.image.data),a&&(a.dispose(),this._initColorsTexture(),De(a.image.data,this._colorsTexture.image.data))}setGeometrySize(t,e){let i=[...this._geometryInfo].filter(o=>o.active);if(Math.max(...i.map(o=>o.vertexStart+o.reservedVertexCount))>t)throw new Error(`BatchedMesh: Geometry vertex values are being used outside the range ${e}. Cannot shrink further.`);if(this.geometry.index&&Math.max(...i.map(a=>a.indexStart+a.reservedIndexCount))>e)throw new Error(`BatchedMesh: Geometry index values are being used outside the range ${e}. Cannot shrink further.`);let n=this.geometry;n.dispose(),this._maxVertexCount=t,this._maxIndexCount=e,this._geometryInitialized&&(this._geometryInitialized=!1,this.geometry=new G,this._initializeGeometry(n));let r=this.geometry;n.index&&De(n.index.array,r.index.array);for(let o in n.attributes)De(n.attributes[o].array,r.attributes[o].array)}raycast(t,e){let i=this._instanceInfo,s=this._geometryInfo,n=this.matrixWorld,r=this.geometry;gt.material=this.material,gt.geometry.index=r.index,gt.geometry.attributes=r.attributes,gt.geometry.boundingBox===null&&(gt.geometry.boundingBox=new pt),gt.geometry.boundingSphere===null&&(gt.geometry.boundingSphere=new ut);for(let o=0,a=i.length;o<a;o++){if(!i[o].visible||!i[o].active)continue;let l=i[o].geometryIndex,c=s[l];gt.geometry.setDrawRange(c.start,c.count),this.getMatrixAt(o,gt.matrixWorld).premultiply(n),this.getBoundingBoxAt(l,gt.geometry.boundingBox),this.getBoundingSphereAt(l,gt.geometry.boundingSphere),gt.raycast(t,Es);for(let u=0,d=Es.length;u<d;u++){let p=Es[u];p.object=this,p.batchId=o,e.push(p)}Es.length=0}gt.material=null,gt.geometry.index=null,gt.geometry.attributes={},gt.geometry.setDrawRange(0,1/0)}copy(t){return super.copy(t),this.geometry=t.geometry.clone(),this.perObjectFrustumCulled=t.perObjectFrustumCulled,this.sortObjects=t.sortObjects,this.boundingBox=t.boundingBox!==null?t.boundingBox.clone():null,this.boundingSphere=t.boundingSphere!==null?t.boundingSphere.clone():null,this._geometryInfo=t._geometryInfo.map(e=>({...e,boundingBox:e.boundingBox!==null?e.boundingBox.clone():null,boundingSphere:e.boundingSphere!==null?e.boundingSphere.clone():null})),this._instanceInfo=t._instanceInfo.map(e=>({...e})),this._availableInstanceIds=t._availableInstanceIds.slice(),this._availableGeometryIds=t._availableGeometryIds.slice(),this._nextIndexStart=t._nextIndexStart,this._nextVertexStart=t._nextVertexStart,this._geometryCount=t._geometryCount,this._maxInstanceCount=t._maxInstanceCount,this._maxVertexCount=t._maxVertexCount,this._maxIndexCount=t._maxIndexCount,this._geometryInitialized=t._geometryInitialized,this._multiDrawCounts=t._multiDrawCounts.slice(),this._multiDrawStarts=t._multiDrawStarts.slice(),this._indirectTexture=t._indirectTexture.clone(),this._indirectTexture.image.data=this._indirectTexture.image.data.slice(),this._matricesTexture=t._matricesTexture.clone(),this._matricesTexture.image.data=this._matricesTexture.image.data.slice(),this._colorsTexture!==null&&(this._colorsTexture=t._colorsTexture.clone(),this._colorsTexture.image.data=this._colorsTexture.image.data.slice()),this}dispose(){this.geometry.dispose(),this._matricesTexture.dispose(),this._matricesTexture=null,this._indirectTexture.dispose(),this._indirectTexture=null,this._colorsTexture!==null&&(this._colorsTexture.dispose(),this._colorsTexture=null)}onBeforeRender(t,e,i,s,n){if(!this._visibilityChanged&&!this.perObjectFrustumCulled&&!this.sortObjects)return;let r=s.getIndex(),o=r===null?1:r.array.BYTES_PER_ELEMENT,a=1;n.wireframe&&(a=2,o=s.attributes.position.count>65535?4:2);let l=this._instanceInfo,c=this._multiDrawStarts,u=this._multiDrawCounts,d=this._geometryInfo,p=this.perObjectFrustumCulled,f=this._indirectTexture,m=f.image.data,g=i.isArrayCamera?yd:wh;p&&!i.isArrayCamera&&(vt.multiplyMatrices(i.projectionMatrix,i.matrixWorldInverse).multiply(this.matrixWorld),wh.setFromProjectionMatrix(vt,i.coordinateSystem,i.reversedDepth));let y=0;if(this.sortObjects){vt.copy(this.matrixWorld).invert(),Xi.setFromMatrixPosition(i.matrixWorld).applyMatrix4(vt),Mh.set(0,0,-1).transformDirection(i.matrixWorld).transformDirection(vt);for(let w=0,_=l.length;w<_;w++)if(l[w].visible&&l[w].active){let v=l[w].geometryIndex;this.getMatrixAt(w,vt),this.getBoundingSphereAt(v,Ve).applyMatrix4(vt);let A=!1;if(p&&(A=!g.intersectsSphere(Ve,i)),!A){let S=d[v],T=gd.subVectors(Ve.center,Xi).dot(Mh);dr.push(S.start,S.count,T,w)}}let x=dr.list,b=this.customSort;b===null?x.sort(n.transparent?fd:pd):b.call(this,x,i);for(let w=0,_=x.length;w<_;w++){let v=x[w];c[y]=v.start*o*a,u[y]=v.count*a,m[y]=v.index,y++}dr.reset()}else for(let x=0,b=l.length;x<b;x++)if(l[x].visible&&l[x].active){let w=l[x].geometryIndex,_=!1;if(p&&(this.getMatrixAt(x,vt),this.getBoundingSphereAt(w,Ve).applyMatrix4(vt),_=!g.intersectsSphere(Ve,i)),!_){let v=d[w];c[y]=v.start*o*a,u[y]=v.count*a,m[y]=x,y++}}f.needsUpdate=!0,this._multiDrawCount=y,this._visibilityChanged=!1}onBeforeShadow(t,e,i,s,n,r){this.onBeforeRender(t,null,s,n,r)}},bt=class extends ft{constructor(t){super(),this.isLineBasicMaterial=!0,this.type=\"LineBasicMaterial\",this.color=new U(16777215),this.map=null,this.linewidth=1,this.linecap=\"round\",this.linejoin=\"round\",this.fog=!0,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.map=t.map,this.linewidth=t.linewidth,this.linecap=t.linecap,this.linejoin=t.linejoin,this.fog=t.fog,this}},fn=new M,mn=new M,_h=new q,Hi=new Ye,Ns=new ut,pr=new M,vh=new M,xe=class extends Y{constructor(t=new G,e=new bt){super(),this.isLine=!0,this.type=\"Line\",this.geometry=t,this.material=e,this.morphTargetDictionary=void 0,this.morphTargetInfluences=void 0,this.updateMorphTargets()}copy(t,e){return super.copy(t,e),this.material=Array.isArray(t.material)?t.material.slice():t.material,this.geometry=t.geometry,this}computeLineDistances(){let t=this.geometry;if(t.index===null){let e=t.attributes.position,i=[0];for(let s=1,n=e.count;s<n;s++)fn.fromBufferAttribute(e,s-1),mn.fromBufferAttribute(e,s),i[s]=i[s-1],i[s]+=fn.distanceTo(mn);t.setAttribute(\"lineDistance\",new k(i,1))}else N(\"Line.computeLineDistances(): Computation only possible with non-indexed BufferGeometry.\");return this}raycast(t,e){let i=this.geometry,s=this.matrixWorld,n=t.params.Line.threshold,r=i.drawRange;if(i.boundingSphere===null&&i.computeBoundingSphere(),Ns.copy(i.boundingSphere),Ns.applyMatrix4(s),Ns.radius+=n,t.ray.intersectsSphere(Ns)===!1)return;_h.copy(s).invert(),Hi.copy(t.ray).applyMatrix4(_h);let o=n/((this.scale.x+this.scale.y+this.scale.z)/3),a=o*o,l=this.isLineSegments?2:1,c=i.index,d=i.attributes.position;if(c!==null){let p=Math.max(0,r.start),f=Math.min(c.count,r.start+r.count);for(let m=p,g=f-1;m<g;m+=l){let y=c.getX(m),x=c.getX(m+1),b=Vs(this,t,Hi,a,y,x,m);b&&e.push(b)}if(this.isLineLoop){let m=c.getX(f-1),g=c.getX(p),y=Vs(this,t,Hi,a,m,g,f-1);y&&e.push(y)}}else{let p=Math.max(0,r.start),f=Math.min(d.count,r.start+r.count);for(let m=p,g=f-1;m<g;m+=l){let y=Vs(this,t,Hi,a,m,m+1,m);y&&e.push(y)}if(this.isLineLoop){let m=Vs(this,t,Hi,a,f-1,p,f-1);m&&e.push(m)}}}updateMorphTargets(){let e=this.geometry.morphAttributes,i=Object.keys(e);if(i.length>0){let s=e[i[0]];if(s!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let n=0,r=s.length;n<r;n++){let o=s[n].name||String(n);this.morphTargetInfluences.push(0),this.morphTargetDictionary[o]=n}}}}};function Vs(h,t,e,i,s,n,r){let o=h.geometry.attributes.position;if(fn.fromBufferAttribute(o,s),mn.fromBufferAttribute(o,n),e.distanceSqToSegment(fn,mn,pr,vh)>i)return;pr.applyMatrix4(h.matrixWorld);let l=t.ray.origin.distanceTo(pr);if(!(l<t.near||l>t.far))return{distance:l,point:vh.clone().applyMatrix4(h.matrixWorld),index:r,face:null,faceIndex:null,barycoord:null,object:h}}var Sh=new M,Ah=new M,Ht=class extends xe{constructor(t,e){super(t,e),this.isLineSegments=!0,this.type=\"LineSegments\"}computeLineDistances(){let t=this.geometry;if(t.index===null){let e=t.attributes.position,i=[];for(let s=0,n=e.count;s<n;s+=2)Sh.fromBufferAttribute(e,s),Ah.fromBufferAttribute(e,s+1),i[s]=s===0?0:i[s-1],i[s+1]=i[s]+Sh.distanceTo(Ah);t.setAttribute(\"lineDistance\",new k(i,1))}else N(\"LineSegments.computeLineDistances(): Computation only possible with non-indexed BufferGeometry.\");return this}},Jr=class extends xe{constructor(t,e){super(t,e),this.isLineLoop=!0,this.type=\"LineLoop\"}},yn=class extends ft{constructor(t){super(),this.isPointsMaterial=!0,this.type=\"PointsMaterial\",this.color=new U(16777215),this.map=null,this.alphaMap=null,this.size=1,this.sizeAttenuation=!0,this.fog=!0,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.map=t.map,this.alphaMap=t.alphaMap,this.size=t.size,this.sizeAttenuation=t.sizeAttenuation,this.fog=t.fog,this}},Th=new q,Gr=new Ye,Ds=new ut,Ls=new M,Xr=class extends Y{constructor(t=new G,e=new yn){super(),this.isPoints=!0,this.type=\"Points\",this.geometry=t,this.material=e,this.morphTargetDictionary=void 0,this.morphTargetInfluences=void 0,this.updateMorphTargets()}copy(t,e){return super.copy(t,e),this.material=Array.isArray(t.material)?t.material.slice():t.material,this.geometry=t.geometry,this}raycast(t,e){let i=this.geometry,s=this.matrixWorld,n=t.params.Points.threshold,r=i.drawRange;if(i.boundingSphere===null&&i.computeBoundingSphere(),Ds.copy(i.boundingSphere),Ds.applyMatrix4(s),Ds.radius+=n,t.ray.intersectsSphere(Ds)===!1)return;Th.copy(s).invert(),Gr.copy(t.ray).applyMatrix4(Th);let o=n/((this.scale.x+this.scale.y+this.scale.z)/3),a=o*o,l=i.index,u=i.attributes.position;if(l!==null){let d=Math.max(0,r.start),p=Math.min(l.count,r.start+r.count);for(let f=d,m=p;f<m;f++){let g=l.getX(f);Ls.fromBufferAttribute(u,g),Ih(Ls,g,a,s,t,e,this)}}else{let d=Math.max(0,r.start),p=Math.min(u.count,r.start+r.count);for(let f=d,m=p;f<m;f++)Ls.fromBufferAttribute(u,f),Ih(Ls,f,a,s,t,e,this)}}updateMorphTargets(){let e=this.geometry.morphAttributes,i=Object.keys(e);if(i.length>0){let s=e[i[0]];if(s!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let n=0,r=s.length;n<r;n++){let o=s[n].name||String(n);this.morphTargetInfluences.push(0),this.morphTargetDictionary[o]=n}}}}};function Ih(h,t,e,i,s,n,r){let o=Gr.distanceSqToPoint(h);if(o<e){let a=new M;Gr.closestPointToPoint(h,a),a.applyMatrix4(i);let l=s.ray.origin.distanceTo(a);if(l<s.near||l>s.far)return;n.push({distance:l,distanceToRay:Math.sqrt(o),point:a,index:t,face:null,faceIndex:null,barycoord:null,object:r})}}var Hr=class extends dt{constructor(t,e,i,s,n=Gt,r=Gt,o,a,l){super(t,e,i,s,n,r,o,a,l),this.isVideoTexture=!0,this.generateMipmaps=!1,this._requestVideoFrameCallbackId=0;let c=this;function u(){c.needsUpdate=!0,c._requestVideoFrameCallbackId=t.requestVideoFrameCallback(u)}\"requestVideoFrameCallback\"in t&&(this._requestVideoFrameCallbackId=t.requestVideoFrameCallback(u))}clone(){return new this.constructor(this.image).copy(this)}update(){let t=this.image;\"requestVideoFrameCallback\"in t===!1&&t.readyState>=t.HAVE_CURRENT_DATA&&(this.needsUpdate=!0)}dispose(){this._requestVideoFrameCallbackId!==0&&(this.source.data.cancelVideoFrameCallback(this._requestVideoFrameCallbackId),this._requestVideoFrameCallbackId=0),super.dispose()}},Ch=class extends Hr{constructor(t,e,i,s,n,r,o,a){super({},t,e,i,s,n,r,o,a),this.isVideoFrameTexture=!0}update(){}clone(){return new this.constructor().copy(this)}setFrame(t){this.image=t,this.needsUpdate=!0}},zh=class extends dt{constructor(t,e){super({width:t,height:e}),this.isFramebufferTexture=!0,this.magFilter=kt,this.minFilter=kt,this.generateMipmaps=!1,this.needsUpdate=!0}},ss=class extends dt{constructor(t,e,i,s,n,r,o,a,l,c,u,d){super(null,r,o,a,l,c,s,n,u,d),this.isCompressedTexture=!0,this.image={width:e,height:i},this.mipmaps=t,this.flipY=!1,this.generateMipmaps=!1}},Fh=class extends ss{constructor(t,e,i,s,n,r){super(t,e,i,n,r),this.isCompressedArrayTexture=!0,this.image.depth=s,this.wrapR=jt,this.layerUpdates=new Set}addLayerUpdate(t){this.layerUpdates.add(t)}clearLayerUpdates(){this.layerUpdates.clear()}},Bh=class extends ss{constructor(t,e,i){super(void 0,t[0].width,t[0].height,e,i,Nn),this.isCompressedCubeTexture=!0,this.isCubeTexture=!0,this.image=t}},gn=class extends dt{constructor(t=[],e=Nn,i,s,n,r,o,a,l,c){super(t,e,i,s,n,r,o,a,l,c),this.isCubeTexture=!0,this.flipY=!1}get images(){return this.image}set images(t){this.image=t}},kh=class extends dt{constructor(t,e,i,s,n,r,o,a,l){super(t,e,i,s,n,r,o,a,l),this.isCanvasTexture=!0,this.needsUpdate=!0}},Zr=class extends dt{constructor(t,e,i=Vn,s,n,r,o=kt,a=kt,l,c=Ir,u=1){if(c!==Ir&&c!==Nc)throw new Error(\"DepthTexture format must be either THREE.DepthFormat or THREE.DepthStencilFormat\");let d={width:t,height:e,depth:u};super(d,s,n,r,o,a,c,i,l),this.isDepthTexture=!0,this.flipY=!1,this.generateMipmaps=!1,this.compareFunction=null}copy(t){return super.copy(t),this.source=new me(Object.assign({},t.image)),this.compareFunction=t.compareFunction,this}toJSON(t){let e=super.toJSON(t);return this.compareFunction!==null&&(e.compareFunction=this.compareFunction),e}},Ph=class extends Zr{constructor(t,e=Vn,i=Nn,s,n,r=kt,o=kt,a,l=Ir){let c={width:t,height:t,depth:1},u=[c,c,c,c,c,c];super(t,t,e,i,s,n,r,o,a,l),this.image=u,this.isCubeDepthTexture=!0,this.isCubeTexture=!0}get images(){return this.image}set images(t){this.image=t}},Rh=class extends dt{constructor(t=null){super(),this.sourceTexture=t,this.isExternalTexture=!0}copy(t){return super.copy(t),this.sourceTexture=t.sourceTexture,this}},Yr=class h extends G{constructor(t=1,e=1,i=1,s=1,n=1,r=1){super(),this.type=\"BoxGeometry\",this.parameters={width:t,height:e,depth:i,widthSegments:s,heightSegments:n,depthSegments:r};let o=this;s=Math.floor(s),n=Math.floor(n),r=Math.floor(r);let a=[],l=[],c=[],u=[],d=0,p=0;f(\"z\",\"y\",\"x\",-1,-1,i,e,t,r,n,0),f(\"z\",\"y\",\"x\",1,-1,i,e,-t,r,n,1),f(\"x\",\"z\",\"y\",1,1,t,i,e,s,r,2),f(\"x\",\"z\",\"y\",1,-1,t,i,-e,s,r,3),f(\"x\",\"y\",\"z\",1,-1,t,e,i,s,n,4),f(\"x\",\"y\",\"z\",-1,-1,t,e,-i,s,n,5),this.setIndex(a),this.setAttribute(\"position\",new k(l,3)),this.setAttribute(\"normal\",new k(c,3)),this.setAttribute(\"uv\",new k(u,2));function f(m,g,y,x,b,w,_,v,A,S,T){let I=w/A,F=_/S,O=w/2,D=_/2,X=v/2,L=A+1,et=S+1,ot=0,Lt=0,it=new M;for(let at=0;at<et;at++){let st=at*F-D;for(let Ut=0;Ut<L;Ut++){let Rt=Ut*I-O;it[m]=Rt*x,it[g]=st*b,it[y]=X,l.push(it.x,it.y,it.z),it[m]=0,it[g]=0,it[y]=v>0?1:-1,c.push(it.x,it.y,it.z),u.push(Ut/A),u.push(1-at/S),ot+=1}}for(let at=0;at<S;at++)for(let st=0;st<A;st++){let Ut=d+st+L*at,Rt=d+st+L*(at+1),ti=d+(st+1)+L*(at+1),Ei=d+(st+1)+L*at;a.push(Ut,Rt,Ei),a.push(Rt,ti,Ei),Lt+=6}o.addGroup(p,Lt,T),p+=Lt,d+=ot}}copy(t){return super.copy(t),this.parameters=Object.assign({},t.parameters),this}static fromJSON(t){return new h(t.width,t.height,t.depth,t.widthSegments,t.heightSegments,t.depthSegments)}},$r=class h extends G{constructor(t=1,e=1,i=4,s=8,n=1){super(),this.type=\"CapsuleGeometry\",this.parameters={radius:t,height:e,capSegments:i,radialSegments:s,heightSegments:n},e=Math.max(0,e),i=Math.max(1,Math.floor(i)),s=Math.max(3,Math.floor(s)),n=Math.max(1,Math.floor(n));let r=[],o=[],a=[],l=[],c=e/2,u=Math.PI/2*t,d=e,p=2*u+d,f=i*2+n,m=s+1,g=new M,y=new M;for(let x=0;x<=f;x++){let b=0,w=0,_=0,v=0;if(x<=i){let T=x/i,I=T*Math.PI/2;w=-c-t*Math.cos(I),_=t*Math.sin(I),v=-t*Math.cos(I),b=T*u}else if(x<=i+n){let T=(x-i)/n;w=-c+T*e,_=t,v=0,b=u+T*d}else{let T=(x-i-n)/i,I=T*Math.PI/2;w=c+t*Math.sin(I),_=t*Math.cos(I),v=t*Math.sin(I),b=u+d+T*u}let A=Math.max(0,Math.min(1,b/p)),S=0;x===0?S=.5/s:x===f&&(S=-.5/s);for(let T=0;T<=s;T++){let I=T/s,F=I*Math.PI*2,O=Math.sin(F),D=Math.cos(F);y.x=-_*D,y.y=w,y.z=_*O,o.push(y.x,y.y,y.z),g.set(-_*D,v,_*O),g.normalize(),a.push(g.x,g.y,g.z),l.push(I+S,A)}if(x>0){let T=(x-1)*m;for(let I=0;I<s;I++){let F=T+I,O=T+I+1,D=x*m+I,X=x*m+I+1;r.push(F,O,D),r.push(O,X,D)}}}this.setIndex(r),this.setAttribute(\"position\",new k(o,3)),this.setAttribute(\"normal\",new k(a,3)),this.setAttribute(\"uv\",new k(l,2))}copy(t){return super.copy(t),this.parameters=Object.assign({},t.parameters),this}static fromJSON(t){return new h(t.radius,t.height,t.capSegments,t.radialSegments,t.heightSegments)}},jr=class h extends G{constructor(t=1,e=32,i=0,s=Math.PI*2){super(),this.type=\"CircleGeometry\",this.parameters={radius:t,segments:e,thetaStart:i,thetaLength:s},e=Math.max(3,e);let n=[],r=[],o=[],a=[],l=new M,c=new C;r.push(0,0,0),o.push(0,0,1),a.push(.5,.5);for(let u=0,d=3;u<=e;u++,d+=3){let p=i+u/e*s;l.x=t*Math.cos(p),l.y=t*Math.sin(p),r.push(l.x,l.y,l.z),o.push(0,0,1),c.x=(r[d]/t+1)/2,c.y=(r[d+1]/t+1)/2,a.push(c.x,c.y)}for(let u=1;u<=e;u++)n.push(u,u+1,0);this.setIndex(n),this.setAttribute(\"position\",new k(r,3)),this.setAttribute(\"normal\",new k(o,3)),this.setAttribute(\"uv\",new k(a,2))}copy(t){return super.copy(t),this.parameters=Object.assign({},t.parameters),this}static fromJSON(t){return new h(t.radius,t.segments,t.thetaStart,t.thetaLength)}},xn=class h extends G{constructor(t=1,e=1,i=1,s=32,n=1,r=!1,o=0,a=Math.PI*2){super(),this.type=\"CylinderGeometry\",this.parameters={radiusTop:t,radiusBottom:e,height:i,radialSegments:s,heightSegments:n,openEnded:r,thetaStart:o,thetaLength:a};let l=this;s=Math.floor(s),n=Math.floor(n);let c=[],u=[],d=[],p=[],f=0,m=[],g=i/2,y=0;x(),r===!1&&(t>0&&b(!0),e>0&&b(!1)),this.setIndex(c),this.setAttribute(\"position\",new k(u,3)),this.setAttribute(\"normal\",new k(d,3)),this.setAttribute(\"uv\",new k(p,2));function x(){let w=new M,_=new M,v=0,A=(e-t)/i;for(let S=0;S<=n;S++){let T=[],I=S/n,F=I*(e-t)+t;for(let O=0;O<=s;O++){let D=O/s,X=D*a+o,L=Math.sin(X),et=Math.cos(X);_.x=F*L,_.y=-I*i+g,_.z=F*et,u.push(_.x,_.y,_.z),w.set(L,A,et).normalize(),d.push(w.x,w.y,w.z),p.push(D,1-I),T.push(f++)}m.push(T)}for(let S=0;S<s;S++)for(let T=0;T<n;T++){let I=m[T][S],F=m[T+1][S],O=m[T+1][S+1],D=m[T][S+1];(t>0||T!==0)&&(c.push(I,F,D),v+=3),(e>0||T!==n-1)&&(c.push(F,O,D),v+=3)}l.addGroup(y,v,0),y+=v}function b(w){let _=f,v=new C,A=new M,S=0,T=w===!0?t:e,I=w===!0?1:-1;for(let O=1;O<=s;O++)u.push(0,g*I,0),d.push(0,I,0),p.push(.5,.5),f++;let F=f;for(let O=0;O<=s;O++){let X=O/s*a+o,L=Math.cos(X),et=Math.sin(X);A.x=T*et,A.y=g*I,A.z=T*L,u.push(A.x,A.y,A.z),d.push(0,I,0),v.x=L*.5+.5,v.y=et*.5*I+.5,p.push(v.x,v.y),f++}for(let O=0;O<s;O++){let D=_+O,X=F+O;w===!0?c.push(X,X+1,D):c.push(X+1,X,D),S+=3}l.addGroup(y,S,w===!0?1:2),y+=S}}copy(t){return super.copy(t),this.parameters=Object.assign({},t.parameters),this}static fromJSON(t){return new h(t.radiusTop,t.radiusBottom,t.height,t.radialSegments,t.heightSegments,t.openEnded,t.thetaStart,t.thetaLength)}},bn=class h extends xn{constructor(t=1,e=1,i=32,s=1,n=!1,r=0,o=Math.PI*2){super(0,t,e,i,s,n,r,o),this.type=\"ConeGeometry\",this.parameters={radius:t,height:e,radialSegments:i,heightSegments:s,openEnded:n,thetaStart:r,thetaLength:o}}static fromJSON(t){return new h(t.radius,t.height,t.radialSegments,t.heightSegments,t.openEnded,t.thetaStart,t.thetaLength)}},je=class h extends G{constructor(t=[],e=[],i=1,s=0){super(),this.type=\"PolyhedronGeometry\",this.parameters={vertices:t,indices:e,radius:i,detail:s};let n=[],r=[];o(s),l(i),c(),this.setAttribute(\"position\",new k(n,3)),this.setAttribute(\"normal\",new k(n.slice(),3)),this.setAttribute(\"uv\",new k(r,2)),s===0?this.computeVertexNormals():this.normalizeNormals();function o(x){let b=new M,w=new M,_=new M;for(let v=0;v<e.length;v+=3)p(e[v+0],b),p(e[v+1],w),p(e[v+2],_),a(b,w,_,x)}function a(x,b,w,_){let v=_+1,A=[];for(let S=0;S<=v;S++){A[S]=[];let T=x.clone().lerp(w,S/v),I=b.clone().lerp(w,S/v),F=v-S;for(let O=0;O<=F;O++)O===0&&S===v?A[S][O]=T:A[S][O]=T.clone().lerp(I,O/F)}for(let S=0;S<v;S++)for(let T=0;T<2*(v-S)-1;T++){let I=Math.floor(T/2);T%2===0?(d(A[S][I+1]),d(A[S+1][I]),d(A[S][I])):(d(A[S][I+1]),d(A[S+1][I+1]),d(A[S+1][I]))}}function l(x){let b=new M;for(let w=0;w<n.length;w+=3)b.x=n[w+0],b.y=n[w+1],b.z=n[w+2],b.normalize().multiplyScalar(x),n[w+0]=b.x,n[w+1]=b.y,n[w+2]=b.z}function c(){let x=new M;for(let b=0;b<n.length;b+=3){x.x=n[b+0],x.y=n[b+1],x.z=n[b+2];let w=g(x)/2/Math.PI+.5,_=y(x)/Math.PI+.5;r.push(w,1-_)}f(),u()}function u(){for(let x=0;x<r.length;x+=6){let b=r[x+0],w=r[x+2],_=r[x+4],v=Math.max(b,w,_),A=Math.min(b,w,_);v>.9&&A<.1&&(b<.2&&(r[x+0]+=1),w<.2&&(r[x+2]+=1),_<.2&&(r[x+4]+=1))}}function d(x){n.push(x.x,x.y,x.z)}function p(x,b){let w=x*3;b.x=t[w+0],b.y=t[w+1],b.z=t[w+2]}function f(){let x=new M,b=new M,w=new M,_=new M,v=new C,A=new C,S=new C;for(let T=0,I=0;T<n.length;T+=9,I+=6){x.set(n[T+0],n[T+1],n[T+2]),b.set(n[T+3],n[T+4],n[T+5]),w.set(n[T+6],n[T+7],n[T+8]),v.set(r[I+0],r[I+1]),A.set(r[I+2],r[I+3]),S.set(r[I+4],r[I+5]),_.copy(x).add(b).add(w).divideScalar(3);let F=g(_);m(v,I+0,x,F),m(A,I+2,b,F),m(S,I+4,w,F)}}function m(x,b,w,_){_<0&&x.x===1&&(r[b]=x.x-1),w.x===0&&w.z===0&&(r[b]=_/2/Math.PI+.5)}function g(x){return Math.atan2(x.z,-x.x)}function y(x){return Math.atan2(-x.y,Math.sqrt(x.x*x.x+x.z*x.z))}}copy(t){return super.copy(t),this.parameters=Object.assign({},t.parameters),this}static fromJSON(t){return new h(t.vertices,t.indices,t.radius,t.detail)}},Qr=class h extends je{constructor(t=1,e=0){let i=(1+Math.sqrt(5))/2,s=1/i,n=[-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,-s,-i,0,-s,i,0,s,-i,0,s,i,-s,-i,0,-s,i,0,s,-i,0,s,i,0,-i,0,-s,i,0,-s,-i,0,s,i,0,s],r=[3,11,7,3,7,15,3,15,13,7,19,17,7,17,6,7,6,15,17,4,8,17,8,10,17,10,6,8,0,16,8,16,2,8,2,10,0,12,1,0,1,18,0,18,16,6,10,2,6,2,13,6,13,15,2,16,18,2,18,3,2,3,13,18,1,9,18,9,11,18,11,3,4,14,12,4,12,0,4,0,8,11,9,5,11,5,19,11,19,7,19,5,14,19,14,4,19,4,17,1,12,14,1,14,5,1,5,9];super(n,r,t,e),this.type=\"DodecahedronGeometry\",this.parameters={radius:t,detail:e}}static fromJSON(t){return new h(t.radius,t.detail)}},Us=new M,Ws=new M,fr=new M,qs=new pe,Kr=class extends G{constructor(t=null,e=1){if(super(),this.type=\"EdgesGeometry\",this.parameters={geometry:t,thresholdAngle:e},t!==null){let s=Math.pow(10,4),n=Math.cos(Ze*e),r=t.getIndex(),o=t.getAttribute(\"position\"),a=r?r.count:o.count,l=[0,0,0],c=[\"a\",\"b\",\"c\"],u=new Array(3),d={},p=[];for(let f=0;f<a;f+=3){r?(l[0]=r.getX(f),l[1]=r.getX(f+1),l[2]=r.getX(f+2)):(l[0]=f,l[1]=f+1,l[2]=f+2);let{a:m,b:g,c:y}=qs;if(m.fromBufferAttribute(o,l[0]),g.fromBufferAttribute(o,l[1]),y.fromBufferAttribute(o,l[2]),qs.getNormal(fr),u[0]=`${Math.round(m.x*s)},${Math.round(m.y*s)},${Math.round(m.z*s)}`,u[1]=`${Math.round(g.x*s)},${Math.round(g.y*s)},${Math.round(g.z*s)}`,u[2]=`${Math.round(y.x*s)},${Math.round(y.y*s)},${Math.round(y.z*s)}`,!(u[0]===u[1]||u[1]===u[2]||u[2]===u[0]))for(let x=0;x<3;x++){let b=(x+1)%3,w=u[x],_=u[b],v=qs[c[x]],A=qs[c[b]],S=`${w}_${_}`,T=`${_}_${w}`;T in d&&d[T]?(fr.dot(d[T].normal)<=n&&(p.push(v.x,v.y,v.z),p.push(A.x,A.y,A.z)),d[T]=null):S in d||(d[S]={index0:l[x],index1:l[b],normal:fr.clone()})}}for(let f in d)if(d[f]){let{index0:m,index1:g}=d[f];Us.fromBufferAttribute(o,m),Ws.fromBufferAttribute(o,g),p.push(Us.x,Us.y,Us.z),p.push(Ws.x,Ws.y,Ws.z)}this.setAttribute(\"position\",new k(p,3))}}copy(t){return super.copy(t),this.parameters=Object.assign({},t.parameters),this}},Dt=class{constructor(){this.type=\"Curve\",this.arcLengthDivisions=200,this.needsUpdate=!1,this.cacheArcLengths=null}getPoint(){N(\"Curve: .getPoint() not implemented.\")}getPointAt(t,e){let i=this.getUtoTmapping(t);return this.getPoint(i,e)}getPoints(t=5){let e=[];for(let i=0;i<=t;i++)e.push(this.getPoint(i/t));return e}getSpacedPoints(t=5){let e=[];for(let i=0;i<=t;i++)e.push(this.getPointAt(i/t));return e}getLength(){let t=this.getLengths();return t[t.length-1]}getLengths(t=this.arcLengthDivisions){if(this.cacheArcLengths&&this.cacheArcLengths.length===t+1&&!this.needsUpdate)return this.cacheArcLengths;this.needsUpdate=!1;let e=[],i,s=this.getPoint(0),n=0;e.push(0);for(let r=1;r<=t;r++)i=this.getPoint(r/t),n+=i.distanceTo(s),e.push(n),s=i;return this.cacheArcLengths=e,e}updateArcLengths(){this.needsUpdate=!0,this.getLengths()}getUtoTmapping(t,e=null){let i=this.getLengths(),s=0,n=i.length,r;e?r=e:r=t*i[n-1];let o=0,a=n-1,l;for(;o<=a;)if(s=Math.floor(o+(a-o)/2),l=i[s]-r,l<0)o=s+1;else if(l>0)a=s-1;else{a=s;break}if(s=a,i[s]===r)return s/(n-1);let c=i[s],d=i[s+1]-c,p=(r-c)/d;return(s+p)/(n-1)}getTangent(t,e){let s=t-1e-4,n=t+1e-4;s<0&&(s=0),n>1&&(n=1);let r=this.getPoint(s),o=this.getPoint(n),a=e||(r.isVector2?new C:new M);return a.copy(o).sub(r).normalize(),a}getTangentAt(t,e){let i=this.getUtoTmapping(t);return this.getTangent(i,e)}computeFrenetFrames(t,e=!1){let i=new M,s=[],n=[],r=[],o=new M,a=new q;for(let p=0;p<=t;p++){let f=p/t;s[p]=this.getTangentAt(f,new M)}n[0]=new M,r[0]=new M;let l=Number.MAX_VALUE,c=Math.abs(s[0].x),u=Math.abs(s[0].y),d=Math.abs(s[0].z);c<=l&&(l=c,i.set(1,0,0)),u<=l&&(l=u,i.set(0,1,0)),d<=l&&i.set(0,0,1),o.crossVectors(s[0],i).normalize(),n[0].crossVectors(s[0],o),r[0].crossVectors(s[0],n[0]);for(let p=1;p<=t;p++){if(n[p]=n[p-1].clone(),r[p]=r[p-1].clone(),o.crossVectors(s[p-1],s[p]),o.length()>Number.EPSILON){o.normalize();let f=Math.acos(V(s[p-1].dot(s[p]),-1,1));n[p].applyMatrix4(a.makeRotationAxis(o,f))}r[p].crossVectors(s[p],n[p])}if(e===!0){let p=Math.acos(V(n[0].dot(n[t]),-1,1));p/=t,s[0].dot(o.crossVectors(n[0],n[t]))>0&&(p=-p);for(let f=1;f<=t;f++)n[f].applyMatrix4(a.makeRotationAxis(s[f],p*f)),r[f].crossVectors(s[f],n[f])}return{tangents:s,normals:n,binormals:r}}clone(){return new this.constructor().copy(this)}copy(t){return this.arcLengthDivisions=t.arcLengthDivisions,this}toJSON(){let t={metadata:{version:4.7,type:\"Curve\",generator:\"Curve.toJSON\"}};return t.arcLengthDivisions=this.arcLengthDivisions,t.type=this.type,t}fromJSON(t){return this.arcLengthDivisions=t.arcLengthDivisions,this}},ns=class extends Dt{constructor(t=0,e=0,i=1,s=1,n=0,r=Math.PI*2,o=!1,a=0){super(),this.isEllipseCurve=!0,this.type=\"EllipseCurve\",this.aX=t,this.aY=e,this.xRadius=i,this.yRadius=s,this.aStartAngle=n,this.aEndAngle=r,this.aClockwise=o,this.aRotation=a}getPoint(t,e=new C){let i=e,s=Math.PI*2,n=this.aEndAngle-this.aStartAngle,r=Math.abs(n)<Number.EPSILON;for(;n<0;)n+=s;for(;n>s;)n-=s;n<Number.EPSILON&&(r?n=0:n=s),this.aClockwise===!0&&!r&&(n===s?n=-s:n=n-s);let o=this.aStartAngle+t*n,a=this.aX+this.xRadius*Math.cos(o),l=this.aY+this.yRadius*Math.sin(o);if(this.aRotation!==0){let c=Math.cos(this.aRotation),u=Math.sin(this.aRotation),d=a-this.aX,p=l-this.aY;a=d*c-p*u+this.aX,l=d*u+p*c+this.aY}return i.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(){let t=super.toJSON();return t.aX=this.aX,t.aY=this.aY,t.xRadius=this.xRadius,t.yRadius=this.yRadius,t.aStartAngle=this.aStartAngle,t.aEndAngle=this.aEndAngle,t.aClockwise=this.aClockwise,t.aRotation=this.aRotation,t}fromJSON(t){return super.fromJSON(t),this.aX=t.aX,this.aY=t.aY,this.xRadius=t.xRadius,this.yRadius=t.yRadius,this.aStartAngle=t.aStartAngle,this.aEndAngle=t.aEndAngle,this.aClockwise=t.aClockwise,this.aRotation=t.aRotation,this}},to=class extends ns{constructor(t,e,i,s,n,r){super(t,e,i,i,s,n,r),this.isArcCurve=!0,this.type=\"ArcCurve\"}};function ha(){let h=0,t=0,e=0,i=0;function s(n,r,o,a){h=n,t=o,e=-3*n+3*r-2*o-a,i=2*n-2*r+o+a}return{initCatmullRom:function(n,r,o,a,l){s(r,o,l*(o-n),l*(a-r))},initNonuniformCatmullRom:function(n,r,o,a,l,c,u){let d=(r-n)/l-(o-n)/(l+c)+(o-r)/c,p=(o-r)/c-(a-r)/(c+u)+(a-o)/u;d*=c,p*=c,s(r,o,d,p)},calc:function(n){let r=n*n,o=r*n;return h+t*n+e*r+i*o}}}var Js=new M,mr=new ha,yr=new ha,gr=new ha,eo=class extends Dt{constructor(t=[],e=!1,i=\"centripetal\",s=.5){super(),this.isCatmullRomCurve3=!0,this.type=\"CatmullRomCurve3\",this.points=t,this.closed=e,this.curveType=i,this.tension=s}getPoint(t,e=new M){let i=e,s=this.points,n=s.length,r=(n-(this.closed?0:1))*t,o=Math.floor(r),a=r-o;this.closed?o+=o>0?0:(Math.floor(Math.abs(o)/n)+1)*n:a===0&&o===n-1&&(o=n-2,a=1);let l,c;this.closed||o>0?l=s[(o-1)%n]:(Js.subVectors(s[0],s[1]).add(s[0]),l=Js);let u=s[o%n],d=s[(o+1)%n];if(this.closed||o+2<n?c=s[(o+2)%n]:(Js.subVectors(s[n-1],s[n-2]).add(s[n-1]),c=Js),this.curveType===\"centripetal\"||this.curveType===\"chordal\"){let p=this.curveType===\"chordal\"?.5:.25,f=Math.pow(l.distanceToSquared(u),p),m=Math.pow(u.distanceToSquared(d),p),g=Math.pow(d.distanceToSquared(c),p);m<1e-4&&(m=1),f<1e-4&&(f=m),g<1e-4&&(g=m),mr.initNonuniformCatmullRom(l.x,u.x,d.x,c.x,f,m,g),yr.initNonuniformCatmullRom(l.y,u.y,d.y,c.y,f,m,g),gr.initNonuniformCatmullRom(l.z,u.z,d.z,c.z,f,m,g)}else this.curveType===\"catmullrom\"&&(mr.initCatmullRom(l.x,u.x,d.x,c.x,this.tension),yr.initCatmullRom(l.y,u.y,d.y,c.y,this.tension),gr.initCatmullRom(l.z,u.z,d.z,c.z,this.tension));return i.set(mr.calc(a),yr.calc(a),gr.calc(a)),i}copy(t){super.copy(t),this.points=[];for(let e=0,i=t.points.length;e<i;e++){let s=t.points[e];this.points.push(s.clone())}return this.closed=t.closed,this.curveType=t.curveType,this.tension=t.tension,this}toJSON(){let t=super.toJSON();t.points=[];for(let e=0,i=this.points.length;e<i;e++){let s=this.points[e];t.points.push(s.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,i=t.points.length;e<i;e++){let s=t.points[e];this.points.push(new M().fromArray(s))}return this.closed=t.closed,this.curveType=t.curveType,this.tension=t.tension,this}};function Oh(h,t,e,i,s){let n=(i-t)*.5,r=(s-e)*.5,o=h*h,a=h*o;return(2*e-2*i+n+r)*a+(-3*e+3*i-2*n-r)*o+n*h+e}function bd(h,t){let e=1-h;return e*e*t}function wd(h,t){return 2*(1-h)*h*t}function Md(h,t){return h*h*t}function ji(h,t,e,i){return bd(h,t)+wd(h,e)+Md(h,i)}function _d(h,t){let e=1-h;return e*e*e*t}function vd(h,t){let e=1-h;return 3*e*e*h*t}function Sd(h,t){return 3*(1-h)*h*h*t}function Ad(h,t){return h*h*h*t}function Qi(h,t,e,i,s){return _d(h,t)+vd(h,e)+Sd(h,i)+Ad(h,s)}var wn=class extends Dt{constructor(t=new C,e=new C,i=new C,s=new C){super(),this.isCubicBezierCurve=!0,this.type=\"CubicBezierCurve\",this.v0=t,this.v1=e,this.v2=i,this.v3=s}getPoint(t,e=new C){let i=e,s=this.v0,n=this.v1,r=this.v2,o=this.v3;return i.set(Qi(t,s.x,n.x,r.x,o.x),Qi(t,s.y,n.y,r.y,o.y)),i}copy(t){return super.copy(t),this.v0.copy(t.v0),this.v1.copy(t.v1),this.v2.copy(t.v2),this.v3.copy(t.v3),this}toJSON(){let t=super.toJSON();return t.v0=this.v0.toArray(),t.v1=this.v1.toArray(),t.v2=this.v2.toArray(),t.v3=this.v3.toArray(),t}fromJSON(t){return super.fromJSON(t),this.v0.fromArray(t.v0),this.v1.fromArray(t.v1),this.v2.fromArray(t.v2),this.v3.fromArray(t.v3),this}},io=class extends Dt{constructor(t=new M,e=new M,i=new M,s=new M){super(),this.isCubicBezierCurve3=!0,this.type=\"CubicBezierCurve3\",this.v0=t,this.v1=e,this.v2=i,this.v3=s}getPoint(t,e=new M){let i=e,s=this.v0,n=this.v1,r=this.v2,o=this.v3;return i.set(Qi(t,s.x,n.x,r.x,o.x),Qi(t,s.y,n.y,r.y,o.y),Qi(t,s.z,n.z,r.z,o.z)),i}copy(t){return super.copy(t),this.v0.copy(t.v0),this.v1.copy(t.v1),this.v2.copy(t.v2),this.v3.copy(t.v3),this}toJSON(){let t=super.toJSON();return t.v0=this.v0.toArray(),t.v1=this.v1.toArray(),t.v2=this.v2.toArray(),t.v3=this.v3.toArray(),t}fromJSON(t){return super.fromJSON(t),this.v0.fromArray(t.v0),this.v1.fromArray(t.v1),this.v2.fromArray(t.v2),this.v3.fromArray(t.v3),this}},Mn=class extends Dt{constructor(t=new C,e=new C){super(),this.isLineCurve=!0,this.type=\"LineCurve\",this.v1=t,this.v2=e}getPoint(t,e=new C){let i=e;return t===1?i.copy(this.v2):(i.copy(this.v2).sub(this.v1),i.multiplyScalar(t).add(this.v1)),i}getPointAt(t,e){return this.getPoint(t,e)}getTangent(t,e=new C){return e.subVectors(this.v2,this.v1).normalize()}getTangentAt(t,e){return this.getTangent(t,e)}copy(t){return super.copy(t),this.v1.copy(t.v1),this.v2.copy(t.v2),this}toJSON(){let t=super.toJSON();return t.v1=this.v1.toArray(),t.v2=this.v2.toArray(),t}fromJSON(t){return super.fromJSON(t),this.v1.fromArray(t.v1),this.v2.fromArray(t.v2),this}},so=class extends Dt{constructor(t=new M,e=new M){super(),this.isLineCurve3=!0,this.type=\"LineCurve3\",this.v1=t,this.v2=e}getPoint(t,e=new M){let i=e;return t===1?i.copy(this.v2):(i.copy(this.v2).sub(this.v1),i.multiplyScalar(t).add(this.v1)),i}getPointAt(t,e){return this.getPoint(t,e)}getTangent(t,e=new M){return e.subVectors(this.v2,this.v1).normalize()}getTangentAt(t,e){return this.getTangent(t,e)}copy(t){return super.copy(t),this.v1.copy(t.v1),this.v2.copy(t.v2),this}toJSON(){let t=super.toJSON();return t.v1=this.v1.toArray(),t.v2=this.v2.toArray(),t}fromJSON(t){return super.fromJSON(t),this.v1.fromArray(t.v1),this.v2.fromArray(t.v2),this}},_n=class extends Dt{constructor(t=new C,e=new C,i=new C){super(),this.isQuadraticBezierCurve=!0,this.type=\"QuadraticBezierCurve\",this.v0=t,this.v1=e,this.v2=i}getPoint(t,e=new C){let i=e,s=this.v0,n=this.v1,r=this.v2;return i.set(ji(t,s.x,n.x,r.x),ji(t,s.y,n.y,r.y)),i}copy(t){return super.copy(t),this.v0.copy(t.v0),this.v1.copy(t.v1),this.v2.copy(t.v2),this}toJSON(){let t=super.toJSON();return t.v0=this.v0.toArray(),t.v1=this.v1.toArray(),t.v2=this.v2.toArray(),t}fromJSON(t){return super.fromJSON(t),this.v0.fromArray(t.v0),this.v1.fromArray(t.v1),this.v2.fromArray(t.v2),this}},vn=class extends Dt{constructor(t=new M,e=new M,i=new M){super(),this.isQuadraticBezierCurve3=!0,this.type=\"QuadraticBezierCurve3\",this.v0=t,this.v1=e,this.v2=i}getPoint(t,e=new M){let i=e,s=this.v0,n=this.v1,r=this.v2;return i.set(ji(t,s.x,n.x,r.x),ji(t,s.y,n.y,r.y),ji(t,s.z,n.z,r.z)),i}copy(t){return super.copy(t),this.v0.copy(t.v0),this.v1.copy(t.v1),this.v2.copy(t.v2),this}toJSON(){let t=super.toJSON();return t.v0=this.v0.toArray(),t.v1=this.v1.toArray(),t.v2=this.v2.toArray(),t}fromJSON(t){return super.fromJSON(t),this.v0.fromArray(t.v0),this.v1.fromArray(t.v1),this.v2.fromArray(t.v2),this}},Sn=class extends Dt{constructor(t=[]){super(),this.isSplineCurve=!0,this.type=\"SplineCurve\",this.points=t}getPoint(t,e=new C){let i=e,s=this.points,n=(s.length-1)*t,r=Math.floor(n),o=n-r,a=s[r===0?r:r-1],l=s[r],c=s[r>s.length-2?s.length-1:r+1],u=s[r>s.length-3?s.length-1:r+2];return i.set(Oh(o,a.x,l.x,c.x,u.x),Oh(o,a.y,l.y,c.y,u.y)),i}copy(t){super.copy(t),this.points=[];for(let e=0,i=t.points.length;e<i;e++){let s=t.points[e];this.points.push(s.clone())}return this}toJSON(){let t=super.toJSON();t.points=[];for(let e=0,i=this.points.length;e<i;e++){let s=this.points[e];t.points.push(s.toArray())}return t}fromJSON(t){super.fromJSON(t),this.points=[];for(let e=0,i=t.points.length;e<i;e++){let s=t.points[e];this.points.push(new C().fromArray(s))}return this}},An=Object.freeze({__proto__:null,ArcCurve:to,CatmullRomCurve3:eo,CubicBezierCurve:wn,CubicBezierCurve3:io,EllipseCurve:ns,LineCurve:Mn,LineCurve3:so,QuadraticBezierCurve:_n,QuadraticBezierCurve3:vn,SplineCurve:Sn}),no=class extends Dt{constructor(){super(),this.type=\"CurvePath\",this.curves=[],this.autoClose=!1}add(t){this.curves.push(t)}closePath(){let t=this.curves[0].getPoint(0),e=this.curves[this.curves.length-1].getPoint(1);if(!t.equals(e)){let i=t.isVector2===!0?\"LineCurve\":\"LineCurve3\";this.curves.push(new An[i](e,t))}return this}getPoint(t,e){let i=t*this.getLength(),s=this.getCurveLengths(),n=0;for(;n<s.length;){if(s[n]>=i){let r=s[n]-i,o=this.curves[n],a=o.getLength(),l=a===0?0:1-r/a;return o.getPointAt(l,e)}n++}return null}getLength(){let t=this.getCurveLengths();return t[t.length-1]}updateArcLengths(){this.needsUpdate=!0,this.cacheLengths=null,this.getCurveLengths()}getCurveLengths(){if(this.cacheLengths&&this.cacheLengths.length===this.curves.length)return this.cacheLengths;let t=[],e=0;for(let i=0,s=this.curves.length;i<s;i++)e+=this.curves[i].getLength(),t.push(e);return this.cacheLengths=t,t}getSpacedPoints(t=40){let e=[];for(let i=0;i<=t;i++)e.push(this.getPoint(i/t));return this.autoClose&&e.push(e[0]),e}getPoints(t=12){let e=[],i;for(let s=0,n=this.curves;s<n.length;s++){let r=n[s],o=r.isEllipseCurve?t*2:r.isLineCurve||r.isLineCurve3?1:r.isSplineCurve?t*r.points.length:t,a=r.getPoints(o);for(let l=0;l<a.length;l++){let c=a[l];i&&i.equals(c)||(e.push(c),i=c)}}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,i=t.curves.length;e<i;e++){let s=t.curves[e];this.curves.push(s.clone())}return this.autoClose=t.autoClose,this}toJSON(){let t=super.toJSON();t.autoClose=this.autoClose,t.curves=[];for(let e=0,i=this.curves.length;e<i;e++){let s=this.curves[e];t.curves.push(s.toJSON())}return t}fromJSON(t){super.fromJSON(t),this.autoClose=t.autoClose,this.curves=[];for(let e=0,i=t.curves.length;e<i;e++){let s=t.curves[e];this.curves.push(new An[s.type]().fromJSON(s))}return this}},rs=class extends no{constructor(t){super(),this.type=\"Path\",this.currentPoint=new C,t&&this.setFromPoints(t)}setFromPoints(t){this.moveTo(t[0].x,t[0].y);for(let e=1,i=t.length;e<i;e++)this.lineTo(t[e].x,t[e].y);return this}moveTo(t,e){return this.currentPoint.set(t,e),this}lineTo(t,e){let i=new Mn(this.currentPoint.clone(),new C(t,e));return this.curves.push(i),this.currentPoint.set(t,e),this}quadraticCurveTo(t,e,i,s){let n=new _n(this.currentPoint.clone(),new C(t,e),new C(i,s));return this.curves.push(n),this.currentPoint.set(i,s),this}bezierCurveTo(t,e,i,s,n,r){let o=new wn(this.currentPoint.clone(),new C(t,e),new C(i,s),new C(n,r));return this.curves.push(o),this.currentPoint.set(n,r),this}splineThru(t){let e=[this.currentPoint.clone()].concat(t),i=new Sn(e);return this.curves.push(i),this.currentPoint.copy(t[t.length-1]),this}arc(t,e,i,s,n,r){let o=this.currentPoint.x,a=this.currentPoint.y;return this.absarc(t+o,e+a,i,s,n,r),this}absarc(t,e,i,s,n,r){return this.absellipse(t,e,i,i,s,n,r),this}ellipse(t,e,i,s,n,r,o,a){let l=this.currentPoint.x,c=this.currentPoint.y;return this.absellipse(t+l,e+c,i,s,n,r,o,a),this}absellipse(t,e,i,s,n,r,o,a){let l=new ns(t,e,i,s,n,r,o,a);if(this.curves.length>0){let u=l.getPoint(0);u.equals(this.currentPoint)||this.lineTo(u.x,u.y)}this.curves.push(l);let c=l.getPoint(1);return this.currentPoint.copy(c),this}copy(t){return super.copy(t),this.currentPoint.copy(t.currentPoint),this}toJSON(){let t=super.toJSON();return t.currentPoint=this.currentPoint.toArray(),t}fromJSON(t){return super.fromJSON(t),this.currentPoint.fromArray(t.currentPoint),this}},Ce=class extends rs{constructor(t){super(t),this.uuid=Bt(),this.type=\"Shape\",this.holes=[]}getPointsHoles(t){let e=[];for(let i=0,s=this.holes.length;i<s;i++)e[i]=this.holes[i].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,i=t.holes.length;e<i;e++){let s=t.holes[e];this.holes.push(s.clone())}return this}toJSON(){let t=super.toJSON();t.uuid=this.uuid,t.holes=[];for(let e=0,i=this.holes.length;e<i;e++){let s=this.holes[e];t.holes.push(s.toJSON())}return t}fromJSON(t){super.fromJSON(t),this.uuid=t.uuid,this.holes=[];for(let e=0,i=t.holes.length;e<i;e++){let s=t.holes[e];this.holes.push(new rs().fromJSON(s))}return this}};function Td(h,t,e=2){let i=t&&t.length,s=i?t[0]*e:h.length,n=oc(h,0,s,e,!0),r=[];if(!n||n.next===n.prev)return r;let o,a,l;if(i&&(n=Bd(h,t,n,e)),h.length>80*e){o=h[0],a=h[1];let c=o,u=a;for(let d=e;d<s;d+=e){let p=h[d],f=h[d+1];p<o&&(o=p),f<a&&(a=f),p>c&&(c=p),f>u&&(u=f)}l=Math.max(c-o,u-a),l=l!==0?32767/l:0}return os(n,r,e,o,a,l,0),r}function oc(h,t,e,i,s){let n;if(s===Wd(h,t,e,i)>0)for(let r=t;r<e;r+=i)n=Eh(r/i|0,h[r],h[r+1],n);else for(let r=e-i;r>=t;r-=i)n=Eh(r/i|0,h[r],h[r+1],n);return n&&zi(n,n.next)&&(hs(n),n=n.next),n}function Qe(h,t){if(!h)return h;t||(t=h);let e=h,i;do if(i=!1,!e.steiner&&(zi(e,e.next)||tt(e.prev,e,e.next)===0)){if(hs(e),e=t=e.prev,e===e.next)break;i=!0}else e=e.next;while(i||e!==t);return t}function os(h,t,e,i,s,n,r){if(!h)return;!r&&n&&Ed(h,i,s,n);let o=h;for(;h.prev!==h.next;){let a=h.prev,l=h.next;if(n?Cd(h,i,s,n):Id(h)){t.push(a.i,h.i,l.i),hs(h),h=l.next,o=l.next;continue}if(h=l,h===o){r?r===1?(h=zd(Qe(h),t),os(h,t,e,i,s,n,2)):r===2&&Fd(h,t,e,i,s,n):os(Qe(h),t,e,i,s,n,1);break}}}function Id(h){let t=h.prev,e=h,i=h.next;if(tt(t,e,i)>=0)return!1;let s=t.x,n=e.x,r=i.x,o=t.y,a=e.y,l=i.y,c=Math.min(s,n,r),u=Math.min(o,a,l),d=Math.max(s,n,r),p=Math.max(o,a,l),f=i.next;for(;f!==t;){if(f.x>=c&&f.x<=d&&f.y>=u&&f.y<=p&&Yi(s,o,n,a,r,l,f.x,f.y)&&tt(f.prev,f,f.next)>=0)return!1;f=f.next}return!0}function Cd(h,t,e,i){let s=h.prev,n=h,r=h.next;if(tt(s,n,r)>=0)return!1;let o=s.x,a=n.x,l=r.x,c=s.y,u=n.y,d=r.y,p=Math.min(o,a,l),f=Math.min(c,u,d),m=Math.max(o,a,l),g=Math.max(c,u,d),y=ro(p,f,t,e,i),x=ro(m,g,t,e,i),b=h.prevZ,w=h.nextZ;for(;b&&b.z>=y&&w&&w.z<=x;){if(b.x>=p&&b.x<=m&&b.y>=f&&b.y<=g&&b!==s&&b!==r&&Yi(o,c,a,u,l,d,b.x,b.y)&&tt(b.prev,b,b.next)>=0||(b=b.prevZ,w.x>=p&&w.x<=m&&w.y>=f&&w.y<=g&&w!==s&&w!==r&&Yi(o,c,a,u,l,d,w.x,w.y)&&tt(w.prev,w,w.next)>=0))return!1;w=w.nextZ}for(;b&&b.z>=y;){if(b.x>=p&&b.x<=m&&b.y>=f&&b.y<=g&&b!==s&&b!==r&&Yi(o,c,a,u,l,d,b.x,b.y)&&tt(b.prev,b,b.next)>=0)return!1;b=b.prevZ}for(;w&&w.z<=x;){if(w.x>=p&&w.x<=m&&w.y>=f&&w.y<=g&&w!==s&&w!==r&&Yi(o,c,a,u,l,d,w.x,w.y)&&tt(w.prev,w,w.next)>=0)return!1;w=w.nextZ}return!0}function zd(h,t){let e=h;do{let i=e.prev,s=e.next.next;!zi(i,s)&&hc(i,e,e.next,s)&&as(i,s)&&as(s,i)&&(t.push(i.i,e.i,s.i),hs(e),hs(e.next),e=h=s),e=e.next}while(e!==h);return Qe(e)}function Fd(h,t,e,i,s,n){let r=h;do{let o=r.next.next;for(;o!==r.prev;){if(r.i!==o.i&&Dd(r,o)){let a=lc(r,o);r=Qe(r,r.next),a=Qe(a,a.next),os(r,t,e,i,s,n,0),os(a,t,e,i,s,n,0);return}o=o.next}r=r.next}while(r!==h)}function Bd(h,t,e,i){let s=[];for(let n=0,r=t.length;n<r;n++){let o=t[n]*i,a=n<r-1?t[n+1]*i:h.length,l=oc(h,o,a,i,!1);l===l.next&&(l.steiner=!0),s.push(Vd(l))}s.sort(kd);for(let n=0;n<s.length;n++)e=Pd(s[n],e);return e}function kd(h,t){let e=h.x-t.x;if(e===0&&(e=h.y-t.y,e===0)){let i=(h.next.y-h.y)/(h.next.x-h.x),s=(t.next.y-t.y)/(t.next.x-t.x);e=i-s}return e}function Pd(h,t){let e=Rd(h,t);if(!e)return t;let i=lc(e,h);return Qe(i,i.next),Qe(e,e.next)}function Rd(h,t){let e=t,i=h.x,s=h.y,n=-1/0,r;if(zi(h,e))return e;do{if(zi(h,e.next))return e.next;if(s<=e.y&&s>=e.next.y&&e.next.y!==e.y){let u=e.x+(s-e.y)*(e.next.x-e.x)/(e.next.y-e.y);if(u<=i&&u>n&&(n=u,r=e.x<e.next.x?e:e.next,u===i))return r}e=e.next}while(e!==t);if(!r)return null;let o=r,a=r.x,l=r.y,c=1/0;e=r;do{if(i>=e.x&&e.x>=a&&i!==e.x&&ac(s<l?i:n,s,a,l,s<l?n:i,s,e.x,e.y)){let u=Math.abs(s-e.y)/(i-e.x);as(e,h)&&(u<c||u===c&&(e.x>r.x||e.x===r.x&&Od(r,e)))&&(r=e,c=u)}e=e.next}while(e!==o);return r}function Od(h,t){return tt(h.prev,h,t.prev)<0&&tt(t.next,h,h.next)<0}function Ed(h,t,e,i){let s=h;do s.z===0&&(s.z=ro(s.x,s.y,t,e,i)),s.prevZ=s.prev,s.nextZ=s.next,s=s.next;while(s!==h);s.prevZ.nextZ=null,s.prevZ=null,Nd(s)}function Nd(h){let t,e=1;do{let i=h,s;h=null;let n=null;for(t=0;i;){t++;let r=i,o=0;for(let l=0;l<e&&(o++,r=r.nextZ,!!r);l++);let a=e;for(;o>0||a>0&&r;)o!==0&&(a===0||!r||i.z<=r.z)?(s=i,i=i.nextZ,o--):(s=r,r=r.nextZ,a--),n?n.nextZ=s:h=s,s.prevZ=n,n=s;i=r}n.nextZ=null,e*=2}while(t>1);return h}function ro(h,t,e,i,s){return h=(h-e)*s|0,t=(t-i)*s|0,h=(h|h<<8)&16711935,h=(h|h<<4)&252645135,h=(h|h<<2)&858993459,h=(h|h<<1)&1431655765,t=(t|t<<8)&16711935,t=(t|t<<4)&252645135,t=(t|t<<2)&858993459,t=(t|t<<1)&1431655765,h|t<<1}function Vd(h){let t=h,e=h;do(t.x<e.x||t.x===e.x&&t.y<e.y)&&(e=t),t=t.next;while(t!==h);return e}function ac(h,t,e,i,s,n,r,o){return(s-r)*(t-o)>=(h-r)*(n-o)&&(h-r)*(i-o)>=(e-r)*(t-o)&&(e-r)*(n-o)>=(s-r)*(i-o)}function Yi(h,t,e,i,s,n,r,o){return!(h===r&&t===o)&&ac(h,t,e,i,s,n,r,o)}function Dd(h,t){return h.next.i!==t.i&&h.prev.i!==t.i&&!Ld(h,t)&&(as(h,t)&&as(t,h)&&Ud(h,t)&&(tt(h.prev,h,t.prev)||tt(h,t.prev,t))||zi(h,t)&&tt(h.prev,h,h.next)>0&&tt(t.prev,t,t.next)>0)}function tt(h,t,e){return(t.y-h.y)*(e.x-t.x)-(t.x-h.x)*(e.y-t.y)}function zi(h,t){return h.x===t.x&&h.y===t.y}function hc(h,t,e,i){let s=Xs(tt(h,t,e)),n=Xs(tt(h,t,i)),r=Xs(tt(e,i,h)),o=Xs(tt(e,i,t));return!!(s!==n&&r!==o||s===0&&Gs(h,e,t)||n===0&&Gs(h,i,t)||r===0&&Gs(e,h,i)||o===0&&Gs(e,t,i))}function Gs(h,t,e){return t.x<=Math.max(h.x,e.x)&&t.x>=Math.min(h.x,e.x)&&t.y<=Math.max(h.y,e.y)&&t.y>=Math.min(h.y,e.y)}function Xs(h){return h>0?1:h<0?-1:0}function Ld(h,t){let e=h;do{if(e.i!==h.i&&e.next.i!==h.i&&e.i!==t.i&&e.next.i!==t.i&&hc(e,e.next,h,t))return!0;e=e.next}while(e!==h);return!1}function as(h,t){return tt(h.prev,h,h.next)<0?tt(h,t,h.next)>=0&&tt(h,h.prev,t)>=0:tt(h,t,h.prev)<0||tt(h,h.next,t)<0}function Ud(h,t){let e=h,i=!1,s=(h.x+t.x)/2,n=(h.y+t.y)/2;do e.y>n!=e.next.y>n&&e.next.y!==e.y&&s<(e.next.x-e.x)*(n-e.y)/(e.next.y-e.y)+e.x&&(i=!i),e=e.next;while(e!==h);return i}function lc(h,t){let e=oo(h.i,h.x,h.y),i=oo(t.i,t.x,t.y),s=h.next,n=t.prev;return h.next=t,t.prev=h,e.next=s,s.prev=e,i.next=e,e.prev=i,n.next=i,i.prev=n,i}function Eh(h,t,e,i){let s=oo(h,t,e);return i?(s.next=i.next,s.prev=i,i.next.prev=s,i.next=s):(s.prev=s,s.next=s),s}function hs(h){h.next.prev=h.prev,h.prev.next=h.next,h.prevZ&&(h.prevZ.nextZ=h.nextZ),h.nextZ&&(h.nextZ.prevZ=h.prevZ)}function oo(h,t,e){return{i:h,x:t,y:e,prev:null,next:null,z:0,prevZ:null,nextZ:null,steiner:!1}}function Wd(h,t,e,i){let s=0;for(let n=t,r=e-i;n<e;n+=i)s+=(h[r]-h[n])*(h[n+1]+h[r+1]),r=n;return s}var ao=class{static triangulate(t,e,i=2){return Td(t,e,i)}},Kt=class h{static area(t){let e=t.length,i=0;for(let s=e-1,n=0;n<e;s=n++)i+=t[s].x*t[n].y-t[n].x*t[s].y;return i*.5}static isClockWise(t){return h.area(t)<0}static triangulateShape(t,e){let i=[],s=[],n=[];Nh(t),Vh(i,t);let r=t.length;e.forEach(Nh);for(let a=0;a<e.length;a++)s.push(r),r+=e[a].length,Vh(i,e[a]);let o=ao.triangulate(i,s);for(let a=0;a<o.length;a+=3)n.push(o.slice(a,a+3));return n}};function Nh(h){let t=h.length;t>2&&h[t-1].equals(h[0])&&h.pop()}function Vh(h,t){for(let e=0;e<t.length;e++)h.push(t[e].x),h.push(t[e].y)}var ho=class h extends G{constructor(t=new Ce([new C(.5,.5),new C(-.5,.5),new C(-.5,-.5),new C(.5,-.5)]),e={}){super(),this.type=\"ExtrudeGeometry\",this.parameters={shapes:t,options:e},t=Array.isArray(t)?t:[t];let i=this,s=[],n=[];for(let o=0,a=t.length;o<a;o++){let l=t[o];r(l)}this.setAttribute(\"position\",new k(s,3)),this.setAttribute(\"uv\",new k(n,2)),this.computeVertexNormals();function r(o){let a=[],l=e.curveSegments!==void 0?e.curveSegments:12,c=e.steps!==void 0?e.steps:1,u=e.depth!==void 0?e.depth:1,d=e.bevelEnabled!==void 0?e.bevelEnabled:!0,p=e.bevelThickness!==void 0?e.bevelThickness:.2,f=e.bevelSize!==void 0?e.bevelSize:p-.1,m=e.bevelOffset!==void 0?e.bevelOffset:0,g=e.bevelSegments!==void 0?e.bevelSegments:3,y=e.extrudePath,x=e.UVGenerator!==void 0?e.UVGenerator:qd,b,w=!1,_,v,A,S;if(y){b=y.getSpacedPoints(c),w=!0,d=!1;let z=y.isCatmullRomCurve3?y.closed:!1;_=y.computeFrenetFrames(c,z),v=new M,A=new M,S=new M}d||(g=0,p=0,f=0,m=0);let T=o.extractPoints(l),I=T.shape,F=T.holes;if(!Kt.isClockWise(I)){I=I.reverse();for(let z=0,B=F.length;z<B;z++){let P=F[z];Kt.isClockWise(P)&&(F[z]=P.reverse())}}function D(z){let P=10000000000000001e-36,E=z[0];for(let R=1;R<=z.length;R++){let H=R%z.length,J=z[H],Q=J.x-E.x,K=J.y-E.y,lt=Q*Q+K*K,Tt=Math.max(Math.abs(J.x),Math.abs(J.y),Math.abs(E.x),Math.abs(E.y)),Pe=P*Tt*Tt;if(lt<=Pe){z.splice(H,1),R--;continue}E=J}}D(I),F.forEach(D);let X=F.length,L=I;for(let z=0;z<X;z++){let B=F[z];I=I.concat(B)}function et(z,B,P){return B||Z(\"ExtrudeGeometry: vec does not exist\"),z.clone().addScaledVector(B,P)}let ot=I.length;function Lt(z,B,P){let E,R,H,J=z.x-B.x,Q=z.y-B.y,K=P.x-z.x,lt=P.y-z.y,Tt=J*J+Q*Q,Pe=J*lt-Q*K;if(Math.abs(Pe)>Number.EPSILON){let It=Math.sqrt(Tt),fa=Math.sqrt(K*K+lt*lt),ma=B.x-Q/It,ya=B.y+J/It,mc=P.x-lt/fa,yc=P.y+K/fa,ga=((mc-ma)*lt-(yc-ya)*K)/(J*lt-Q*K);E=ma+J*ga-z.x,R=ya+Q*ga-z.y;let xa=E*E+R*R;if(xa<=2)return new C(E,R);H=Math.sqrt(xa/2)}else{let It=!1;J>Number.EPSILON?K>Number.EPSILON&&(It=!0):J<-Number.EPSILON?K<-Number.EPSILON&&(It=!0):Math.sign(Q)===Math.sign(lt)&&(It=!0),It?(E=-Q,R=J,H=Math.sqrt(Tt)):(E=J,R=Q,H=Math.sqrt(Tt/2))}return new C(E/H,R/H)}let it=[];for(let z=0,B=L.length,P=B-1,E=z+1;z<B;z++,P++,E++)P===B&&(P=0),E===B&&(E=0),it[z]=Lt(L[z],L[P],L[E]);let at=[],st,Ut=it.concat();for(let z=0,B=X;z<B;z++){let P=F[z];st=[];for(let E=0,R=P.length,H=R-1,J=E+1;E<R;E++,H++,J++)H===R&&(H=0),J===R&&(J=0),st[E]=Lt(P[E],P[H],P[J]);at.push(st),Ut=Ut.concat(st)}let Rt;if(g===0)Rt=Kt.triangulateShape(L,F);else{let z=[],B=[];for(let P=0;P<g;P++){let E=P/g,R=p*Math.cos(E*Math.PI/2),H=f*Math.sin(E*Math.PI/2)+m;for(let J=0,Q=L.length;J<Q;J++){let K=et(L[J],it[J],H);ne(K.x,K.y,-R),E===0&&z.push(K)}for(let J=0,Q=X;J<Q;J++){let K=F[J];st=at[J];let lt=[];for(let Tt=0,Pe=K.length;Tt<Pe;Tt++){let It=et(K[Tt],st[Tt],H);ne(It.x,It.y,-R),E===0&&lt.push(It)}E===0&&B.push(lt)}}Rt=Kt.triangulateShape(z,B)}let ti=Rt.length,Ei=f+m;for(let z=0;z<ot;z++){let B=d?et(I[z],Ut[z],Ei):I[z];w?(A.copy(_.normals[0]).multiplyScalar(B.x),v.copy(_.binormals[0]).multiplyScalar(B.y),S.copy(b[0]).add(A).add(v),ne(S.x,S.y,S.z)):ne(B.x,B.y,0)}for(let z=1;z<=c;z++)for(let B=0;B<ot;B++){let P=d?et(I[B],Ut[B],Ei):I[B];w?(A.copy(_.normals[z]).multiplyScalar(P.x),v.copy(_.binormals[z]).multiplyScalar(P.y),S.copy(b[z]).add(A).add(v),ne(S.x,S.y,S.z)):ne(P.x,P.y,u/c*z)}for(let z=g-1;z>=0;z--){let B=z/g,P=p*Math.cos(B*Math.PI/2),E=f*Math.sin(B*Math.PI/2)+m;for(let R=0,H=L.length;R<H;R++){let J=et(L[R],it[R],E);ne(J.x,J.y,u+P)}for(let R=0,H=F.length;R<H;R++){let J=F[R];st=at[R];for(let Q=0,K=J.length;Q<K;Q++){let lt=et(J[Q],st[Q],E);w?ne(lt.x,lt.y+b[c-1].y,b[c-1].x+P):ne(lt.x,lt.y,u+P)}}}dc(),pc();function dc(){let z=s.length/3;if(d){let B=0,P=ot*B;for(let E=0;E<ti;E++){let R=Rt[E];us(R[2]+P,R[1]+P,R[0]+P)}B=c+g*2,P=ot*B;for(let E=0;E<ti;E++){let R=Rt[E];us(R[0]+P,R[1]+P,R[2]+P)}}else{for(let B=0;B<ti;B++){let P=Rt[B];us(P[2],P[1],P[0])}for(let B=0;B<ti;B++){let P=Rt[B];us(P[0]+ot*c,P[1]+ot*c,P[2]+ot*c)}}i.addGroup(z,s.length/3-z,0)}function pc(){let z=s.length/3,B=0;pa(L,B),B+=L.length;for(let P=0,E=F.length;P<E;P++){let R=F[P];pa(R,B),B+=R.length}i.addGroup(z,s.length/3-z,1)}function pa(z,B){let P=z.length;for(;--P>=0;){let E=P,R=P-1;R<0&&(R=z.length-1);for(let H=0,J=c+g*2;H<J;H++){let Q=ot*H,K=ot*(H+1),lt=B+E+Q,Tt=B+R+Q,Pe=B+R+K,It=B+E+K;fc(lt,Tt,Pe,It)}}}function ne(z,B,P){a.push(z),a.push(B),a.push(P)}function us(z,B,P){re(z),re(B),re(P);let E=s.length/3,R=x.generateTopUV(i,s,E-3,E-2,E-1);oe(R[0]),oe(R[1]),oe(R[2])}function fc(z,B,P,E){re(z),re(B),re(E),re(B),re(P),re(E);let R=s.length/3,H=x.generateSideWallUV(i,s,R-6,R-3,R-2,R-1);oe(H[0]),oe(H[1]),oe(H[3]),oe(H[1]),oe(H[2]),oe(H[3])}function re(z){s.push(a[z*3+0]),s.push(a[z*3+1]),s.push(a[z*3+2])}function oe(z){n.push(z.x),n.push(z.y)}}}copy(t){return super.copy(t),this.parameters=Object.assign({},t.parameters),this}toJSON(){let t=super.toJSON(),e=this.parameters.shapes,i=this.parameters.options;return Jd(e,i,t)}static fromJSON(t,e){let i=[];for(let n=0,r=t.shapes.length;n<r;n++){let o=e[t.shapes[n]];i.push(o)}let s=t.options.extrudePath;return s!==void 0&&(t.options.extrudePath=new An[s.type]().fromJSON(s)),new h(i,t.options)}},qd={generateTopUV:function(h,t,e,i,s){let n=t[e*3],r=t[e*3+1],o=t[i*3],a=t[i*3+1],l=t[s*3],c=t[s*3+1];return[new C(n,r),new C(o,a),new C(l,c)]},generateSideWallUV:function(h,t,e,i,s,n){let r=t[e*3],o=t[e*3+1],a=t[e*3+2],l=t[i*3],c=t[i*3+1],u=t[i*3+2],d=t[s*3],p=t[s*3+1],f=t[s*3+2],m=t[n*3],g=t[n*3+1],y=t[n*3+2];return Math.abs(o-c)<Math.abs(r-l)?[new C(r,1-a),new C(l,1-u),new C(d,1-f),new C(m,1-y)]:[new C(o,1-a),new C(c,1-u),new C(p,1-f),new C(g,1-y)]}};function Jd(h,t,e){if(e.shapes=[],Array.isArray(h))for(let i=0,s=h.length;i<s;i++){let n=h[i];e.shapes.push(n.uuid)}else e.shapes.push(h.uuid);return e.options=Object.assign({},t),t.extrudePath!==void 0&&(e.options.extrudePath=t.extrudePath.toJSON()),e}var lo=class h extends je{constructor(t=1,e=0){let i=(1+Math.sqrt(5))/2,s=[-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],n=[0,11,5,0,5,1,0,1,7,0,7,10,0,10,11,1,5,9,5,11,4,11,10,2,10,7,6,7,1,8,3,9,4,3,4,2,3,2,6,3,6,8,3,8,9,4,9,5,2,4,11,6,2,10,8,6,7,9,8,1];super(s,n,t,e),this.type=\"IcosahedronGeometry\",this.parameters={radius:t,detail:e}}static fromJSON(t){return new h(t.radius,t.detail)}},co=class h extends G{constructor(t=[new C(0,-.5),new C(.5,0),new C(0,.5)],e=12,i=0,s=Math.PI*2){super(),this.type=\"LatheGeometry\",this.parameters={points:t,segments:e,phiStart:i,phiLength:s},e=Math.floor(e),s=V(s,0,Math.PI*2);let n=[],r=[],o=[],a=[],l=[],c=1/e,u=new M,d=new C,p=new M,f=new M,m=new M,g=0,y=0;for(let x=0;x<=t.length-1;x++)switch(x){case 0:g=t[x+1].x-t[x].x,y=t[x+1].y-t[x].y,p.x=y*1,p.y=-g,p.z=y*0,m.copy(p),p.normalize(),a.push(p.x,p.y,p.z);break;case t.length-1:a.push(m.x,m.y,m.z);break;default:g=t[x+1].x-t[x].x,y=t[x+1].y-t[x].y,p.x=y*1,p.y=-g,p.z=y*0,f.copy(p),p.x+=m.x,p.y+=m.y,p.z+=m.z,p.normalize(),a.push(p.x,p.y,p.z),m.copy(f)}for(let x=0;x<=e;x++){let b=i+x*c*s,w=Math.sin(b),_=Math.cos(b);for(let v=0;v<=t.length-1;v++){u.x=t[v].x*w,u.y=t[v].y,u.z=t[v].x*_,r.push(u.x,u.y,u.z),d.x=x/e,d.y=v/(t.length-1),o.push(d.x,d.y);let A=a[3*v+0]*w,S=a[3*v+1],T=a[3*v+0]*_;l.push(A,S,T)}}for(let x=0;x<e;x++)for(let b=0;b<t.length-1;b++){let w=b+x*t.length,_=w,v=w+t.length,A=w+t.length+1,S=w+1;n.push(_,v,S),n.push(A,S,v)}this.setIndex(n),this.setAttribute(\"position\",new k(r,3)),this.setAttribute(\"uv\",new k(o,2)),this.setAttribute(\"normal\",new k(l,3))}copy(t){return super.copy(t),this.parameters=Object.assign({},t.parameters),this}static fromJSON(t){return new h(t.points,t.segments,t.phiStart,t.phiLength)}},Tn=class h extends je{constructor(t=1,e=0){let i=[1,0,0,-1,0,0,0,1,0,0,-1,0,0,0,1,0,0,-1],s=[0,2,4,0,4,3,0,3,5,0,5,2,1,2,5,1,5,3,1,3,4,1,4,2];super(i,s,t,e),this.type=\"OctahedronGeometry\",this.parameters={radius:t,detail:e}}static fromJSON(t){return new h(t.radius,t.detail)}},uo=class h extends G{constructor(t=1,e=1,i=1,s=1){super(),this.type=\"PlaneGeometry\",this.parameters={width:t,height:e,widthSegments:i,heightSegments:s};let n=t/2,r=e/2,o=Math.floor(i),a=Math.floor(s),l=o+1,c=a+1,u=t/o,d=e/a,p=[],f=[],m=[],g=[];for(let y=0;y<c;y++){let x=y*d-r;for(let b=0;b<l;b++){let w=b*u-n;f.push(w,-x,0),m.push(0,0,1),g.push(b/o),g.push(1-y/a)}}for(let y=0;y<a;y++)for(let x=0;x<o;x++){let b=x+l*y,w=x+l*(y+1),_=x+1+l*(y+1),v=x+1+l*y;p.push(b,w,v),p.push(w,_,v)}this.setIndex(p),this.setAttribute(\"position\",new k(f,3)),this.setAttribute(\"normal\",new k(m,3)),this.setAttribute(\"uv\",new k(g,2))}copy(t){return super.copy(t),this.parameters=Object.assign({},t.parameters),this}static fromJSON(t){return new h(t.width,t.height,t.widthSegments,t.heightSegments)}},po=class h extends G{constructor(t=.5,e=1,i=32,s=1,n=0,r=Math.PI*2){super(),this.type=\"RingGeometry\",this.parameters={innerRadius:t,outerRadius:e,thetaSegments:i,phiSegments:s,thetaStart:n,thetaLength:r},i=Math.max(3,i),s=Math.max(1,s);let o=[],a=[],l=[],c=[],u=t,d=(e-t)/s,p=new M,f=new C;for(let m=0;m<=s;m++){for(let g=0;g<=i;g++){let y=n+g/i*r;p.x=u*Math.cos(y),p.y=u*Math.sin(y),a.push(p.x,p.y,p.z),l.push(0,0,1),f.x=(p.x/e+1)/2,f.y=(p.y/e+1)/2,c.push(f.x,f.y)}u+=d}for(let m=0;m<s;m++){let g=m*(i+1);for(let y=0;y<i;y++){let x=y+g,b=x,w=x+i+1,_=x+i+2,v=x+1;o.push(b,w,v),o.push(w,_,v)}}this.setIndex(o),this.setAttribute(\"position\",new k(a,3)),this.setAttribute(\"normal\",new k(l,3)),this.setAttribute(\"uv\",new k(c,2))}copy(t){return super.copy(t),this.parameters=Object.assign({},t.parameters),this}static fromJSON(t){return new h(t.innerRadius,t.outerRadius,t.thetaSegments,t.phiSegments,t.thetaStart,t.thetaLength)}},fo=class h extends G{constructor(t=new Ce([new C(0,.5),new C(-.5,-.5),new C(.5,-.5)]),e=12){super(),this.type=\"ShapeGeometry\",this.parameters={shapes:t,curveSegments:e};let i=[],s=[],n=[],r=[],o=0,a=0;if(Array.isArray(t)===!1)l(t);else for(let c=0;c<t.length;c++)l(t[c]),this.addGroup(o,a,c),o+=a,a=0;this.setIndex(i),this.setAttribute(\"position\",new k(s,3)),this.setAttribute(\"normal\",new k(n,3)),this.setAttribute(\"uv\",new k(r,2));function l(c){let u=s.length/3,d=c.extractPoints(e),p=d.shape,f=d.holes;Kt.isClockWise(p)===!1&&(p=p.reverse());for(let g=0,y=f.length;g<y;g++){let x=f[g];Kt.isClockWise(x)===!0&&(f[g]=x.reverse())}let m=Kt.triangulateShape(p,f);for(let g=0,y=f.length;g<y;g++){let x=f[g];p=p.concat(x)}for(let g=0,y=p.length;g<y;g++){let x=p[g];s.push(x.x,x.y,0),n.push(0,0,1),r.push(x.x,x.y)}for(let g=0,y=m.length;g<y;g++){let x=m[g],b=x[0]+u,w=x[1]+u,_=x[2]+u;i.push(b,w,_),a+=3}}}copy(t){return super.copy(t),this.parameters=Object.assign({},t.parameters),this}toJSON(){let t=super.toJSON(),e=this.parameters.shapes;return Gd(e,t)}static fromJSON(t,e){let i=[];for(let s=0,n=t.shapes.length;s<n;s++){let r=e[t.shapes[s]];i.push(r)}return new h(i,t.curveSegments)}};function Gd(h,t){if(t.shapes=[],Array.isArray(h))for(let e=0,i=h.length;e<i;e++){let s=h[e];t.shapes.push(s.uuid)}else t.shapes.push(h.uuid);return t}var In=class h extends G{constructor(t=1,e=32,i=16,s=0,n=Math.PI*2,r=0,o=Math.PI){super(),this.type=\"SphereGeometry\",this.parameters={radius:t,widthSegments:e,heightSegments:i,phiStart:s,phiLength:n,thetaStart:r,thetaLength:o},e=Math.max(3,Math.floor(e)),i=Math.max(2,Math.floor(i));let a=Math.min(r+o,Math.PI),l=0,c=[],u=new M,d=new M,p=[],f=[],m=[],g=[];for(let y=0;y<=i;y++){let x=[],b=y/i,w=0;y===0&&r===0?w=.5/e:y===i&&a===Math.PI&&(w=-.5/e);for(let _=0;_<=e;_++){let v=_/e;u.x=-t*Math.cos(s+v*n)*Math.sin(r+b*o),u.y=t*Math.cos(r+b*o),u.z=t*Math.sin(s+v*n)*Math.sin(r+b*o),f.push(u.x,u.y,u.z),d.copy(u).normalize(),m.push(d.x,d.y,d.z),g.push(v+w,1-b),x.push(l++)}c.push(x)}for(let y=0;y<i;y++)for(let x=0;x<e;x++){let b=c[y][x+1],w=c[y][x],_=c[y+1][x],v=c[y+1][x+1];(y!==0||r>0)&&p.push(b,w,v),(y!==i-1||a<Math.PI)&&p.push(w,_,v)}this.setIndex(p),this.setAttribute(\"position\",new k(f,3)),this.setAttribute(\"normal\",new k(m,3)),this.setAttribute(\"uv\",new k(g,2))}copy(t){return super.copy(t),this.parameters=Object.assign({},t.parameters),this}static fromJSON(t){return new h(t.radius,t.widthSegments,t.heightSegments,t.phiStart,t.phiLength,t.thetaStart,t.thetaLength)}},mo=class h extends je{constructor(t=1,e=0){let i=[1,1,1,-1,-1,1,-1,1,-1,1,-1,-1],s=[2,1,0,0,3,2,1,3,0,2,3,1];super(i,s,t,e),this.type=\"TetrahedronGeometry\",this.parameters={radius:t,detail:e}}static fromJSON(t){return new h(t.radius,t.detail)}},yo=class h extends G{constructor(t=1,e=.4,i=12,s=48,n=Math.PI*2,r=0,o=Math.PI*2){super(),this.type=\"TorusGeometry\",this.parameters={radius:t,tube:e,radialSegments:i,tubularSegments:s,arc:n,thetaStart:r,thetaLength:o},i=Math.floor(i),s=Math.floor(s);let a=[],l=[],c=[],u=[],d=new M,p=new M,f=new M;for(let m=0;m<=i;m++){let g=r+m/i*o;for(let y=0;y<=s;y++){let x=y/s*n;p.x=(t+e*Math.cos(g))*Math.cos(x),p.y=(t+e*Math.cos(g))*Math.sin(x),p.z=e*Math.sin(g),l.push(p.x,p.y,p.z),d.x=t*Math.cos(x),d.y=t*Math.sin(x),f.subVectors(p,d).normalize(),c.push(f.x,f.y,f.z),u.push(y/s),u.push(m/i)}}for(let m=1;m<=i;m++)for(let g=1;g<=s;g++){let y=(s+1)*m+g-1,x=(s+1)*(m-1)+g-1,b=(s+1)*(m-1)+g,w=(s+1)*m+g;a.push(y,x,w),a.push(x,b,w)}this.setIndex(a),this.setAttribute(\"position\",new k(l,3)),this.setAttribute(\"normal\",new k(c,3)),this.setAttribute(\"uv\",new k(u,2))}copy(t){return super.copy(t),this.parameters=Object.assign({},t.parameters),this}static fromJSON(t){return new h(t.radius,t.tube,t.radialSegments,t.tubularSegments,t.arc)}},go=class h extends G{constructor(t=1,e=.4,i=64,s=8,n=2,r=3){super(),this.type=\"TorusKnotGeometry\",this.parameters={radius:t,tube:e,tubularSegments:i,radialSegments:s,p:n,q:r},i=Math.floor(i),s=Math.floor(s);let o=[],a=[],l=[],c=[],u=new M,d=new M,p=new M,f=new M,m=new M,g=new M,y=new M;for(let b=0;b<=i;++b){let w=b/i*n*Math.PI*2;x(w,n,r,t,p),x(w+.01,n,r,t,f),g.subVectors(f,p),y.addVectors(f,p),m.crossVectors(g,y),y.crossVectors(m,g),m.normalize(),y.normalize();for(let _=0;_<=s;++_){let v=_/s*Math.PI*2,A=-e*Math.cos(v),S=e*Math.sin(v);u.x=p.x+(A*y.x+S*m.x),u.y=p.y+(A*y.y+S*m.y),u.z=p.z+(A*y.z+S*m.z),a.push(u.x,u.y,u.z),d.subVectors(u,p).normalize(),l.push(d.x,d.y,d.z),c.push(b/i),c.push(_/s)}}for(let b=1;b<=i;b++)for(let w=1;w<=s;w++){let _=(s+1)*(b-1)+(w-1),v=(s+1)*b+(w-1),A=(s+1)*b+w,S=(s+1)*(b-1)+w;o.push(_,v,S),o.push(v,A,S)}this.setIndex(o),this.setAttribute(\"position\",new k(a,3)),this.setAttribute(\"normal\",new k(l,3)),this.setAttribute(\"uv\",new k(c,2));function x(b,w,_,v,A){let S=Math.cos(b),T=Math.sin(b),I=_/w*b,F=Math.cos(I);A.x=v*(2+F)*.5*S,A.y=v*(2+F)*T*.5,A.z=v*Math.sin(I)*.5}}copy(t){return super.copy(t),this.parameters=Object.assign({},t.parameters),this}static fromJSON(t){return new h(t.radius,t.tube,t.tubularSegments,t.radialSegments,t.p,t.q)}},xo=class h extends G{constructor(t=new vn(new M(-1,-1,0),new M(-1,1,0),new M(1,1,0)),e=64,i=1,s=8,n=!1){super(),this.type=\"TubeGeometry\",this.parameters={path:t,tubularSegments:e,radius:i,radialSegments:s,closed:n};let r=t.computeFrenetFrames(e,n);this.tangents=r.tangents,this.normals=r.normals,this.binormals=r.binormals;let o=new M,a=new M,l=new C,c=new M,u=[],d=[],p=[],f=[];m(),this.setIndex(f),this.setAttribute(\"position\",new k(u,3)),this.setAttribute(\"normal\",new k(d,3)),this.setAttribute(\"uv\",new k(p,2));function m(){for(let b=0;b<e;b++)g(b);g(n===!1?e:0),x(),y()}function g(b){c=t.getPointAt(b/e,c);let w=r.normals[b],_=r.binormals[b];for(let v=0;v<=s;v++){let A=v/s*Math.PI*2,S=Math.sin(A),T=-Math.cos(A);a.x=T*w.x+S*_.x,a.y=T*w.y+S*_.y,a.z=T*w.z+S*_.z,a.normalize(),d.push(a.x,a.y,a.z),o.x=c.x+i*a.x,o.y=c.y+i*a.y,o.z=c.z+i*a.z,u.push(o.x,o.y,o.z)}}function y(){for(let b=1;b<=e;b++)for(let w=1;w<=s;w++){let _=(s+1)*(b-1)+(w-1),v=(s+1)*b+(w-1),A=(s+1)*b+w,S=(s+1)*(b-1)+w;f.push(_,v,S),f.push(v,A,S)}}function x(){for(let b=0;b<=e;b++)for(let w=0;w<=s;w++)l.x=b/e,l.y=w/s,p.push(l.x,l.y)}}copy(t){return super.copy(t),this.parameters=Object.assign({},t.parameters),this}toJSON(){let t=super.toJSON();return t.path=this.parameters.path.toJSON(),t}static fromJSON(t){return new h(new An[t.path.type]().fromJSON(t.path),t.tubularSegments,t.radius,t.radialSegments,t.closed)}},bo=class extends G{constructor(t=null){if(super(),this.type=\"WireframeGeometry\",this.parameters={geometry:t},t!==null){let e=[],i=new Set,s=new M,n=new M;if(t.index!==null){let r=t.attributes.position,o=t.index,a=t.groups;a.length===0&&(a=[{start:0,count:o.count,materialIndex:0}]);for(let l=0,c=a.length;l<c;++l){let u=a[l],d=u.start,p=u.count;for(let f=d,m=d+p;f<m;f+=3)for(let g=0;g<3;g++){let y=o.getX(f+g),x=o.getX(f+(g+1)%3);s.fromBufferAttribute(r,y),n.fromBufferAttribute(r,x),Dh(s,n,i)===!0&&(e.push(s.x,s.y,s.z),e.push(n.x,n.y,n.z))}}}else{let r=t.attributes.position;for(let o=0,a=r.count/3;o<a;o++)for(let l=0;l<3;l++){let c=3*o+l,u=3*o+(l+1)%3;s.fromBufferAttribute(r,c),n.fromBufferAttribute(r,u),Dh(s,n,i)===!0&&(e.push(s.x,s.y,s.z),e.push(n.x,n.y,n.z))}}this.setAttribute(\"position\",new k(e,3))}}copy(t){return super.copy(t),this.parameters=Object.assign({},t.parameters),this}};function Dh(h,t,e){let i=`${h.x},${h.y},${h.z}-${t.x},${t.y},${t.z}`,s=`${t.x},${t.y},${t.z}-${h.x},${h.y},${h.z}`;return e.has(i)===!0||e.has(s)===!0?!1:(e.add(i),e.add(s),!0)}var Lh=Object.freeze({__proto__:null,BoxGeometry:Yr,CapsuleGeometry:$r,CircleGeometry:jr,ConeGeometry:bn,CylinderGeometry:xn,DodecahedronGeometry:Qr,EdgesGeometry:Kr,ExtrudeGeometry:ho,IcosahedronGeometry:lo,LatheGeometry:co,OctahedronGeometry:Tn,PlaneGeometry:uo,PolyhedronGeometry:je,RingGeometry:po,ShapeGeometry:fo,SphereGeometry:In,TetrahedronGeometry:mo,TorusGeometry:yo,TorusKnotGeometry:go,TubeGeometry:xo,WireframeGeometry:bo}),wo=class extends ft{constructor(t){super(),this.isShadowMaterial=!0,this.type=\"ShadowMaterial\",this.color=new U(0),this.transparent=!0,this.fog=!0,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.fog=t.fog,this}};function la(h){let t={};for(let e in h){t[e]={};for(let i in h[e]){let s=h[e][i];s&&(s.isColor||s.isMatrix3||s.isMatrix4||s.isVector2||s.isVector3||s.isVector4||s.isTexture||s.isQuaternion)?s.isRenderTargetTexture?(N(\"UniformsUtils: Textures of render targets cannot be cloned via cloneUniforms() or mergeUniforms().\"),t[e][i]=null):t[e][i]=s.clone():Array.isArray(s)?t[e][i]=s.slice():t[e][i]=s}}return t}function Xd(h){let t={};for(let e=0;e<h.length;e++){let i=la(h[e]);for(let s in i)t[s]=i[s]}return t}function Hd(h){let t=[];for(let e=0;e<h.length;e++)t.push(h[e].clone());return t}function bm(h){let t=h.getRenderTarget();return t===null?h.outputColorSpace:t.isXRRenderTarget===!0?t.texture.colorSpace:Ft.workingColorSpace}var wm={clone:la,merge:Xd},Zd=`void main() {\n\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\n}`,Yd=`void main() {\n\tgl_FragColor = vec4( 1.0, 0.0, 0.0, 1.0 );\n}`,Cn=class extends ft{constructor(t){super(),this.isShaderMaterial=!0,this.type=\"ShaderMaterial\",this.defines={},this.uniforms={},this.uniformsGroups=[],this.vertexShader=Zd,this.fragmentShader=Yd,this.linewidth=1,this.wireframe=!1,this.wireframeLinewidth=1,this.fog=!1,this.lights=!1,this.clipping=!1,this.forceSinglePass=!0,this.extensions={clipCullDistance:!1,multiDraw:!1},this.defaultAttributeValues={color:[1,1,1],uv:[0,0],uv1:[0,0]},this.index0AttributeName=void 0,this.uniformsNeedUpdate=!1,this.glslVersion=null,t!==void 0&&this.setValues(t)}copy(t){return super.copy(t),this.fragmentShader=t.fragmentShader,this.vertexShader=t.vertexShader,this.uniforms=la(t.uniforms),this.uniformsGroups=Hd(t.uniformsGroups),this.defines=Object.assign({},t.defines),this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.fog=t.fog,this.lights=t.lights,this.clipping=t.clipping,this.extensions=Object.assign({},t.extensions),this.glslVersion=t.glslVersion,this.defaultAttributeValues=Object.assign({},t.defaultAttributeValues),this.index0AttributeName=t.index0AttributeName,this.uniformsNeedUpdate=t.uniformsNeedUpdate,this}toJSON(t){let e=super.toJSON(t);e.glslVersion=this.glslVersion,e.uniforms={};for(let s in this.uniforms){let r=this.uniforms[s].value;r&&r.isTexture?e.uniforms[s]={type:\"t\",value:r.toJSON(t).uuid}:r&&r.isColor?e.uniforms[s]={type:\"c\",value:r.getHex()}:r&&r.isVector2?e.uniforms[s]={type:\"v2\",value:r.toArray()}:r&&r.isVector3?e.uniforms[s]={type:\"v3\",value:r.toArray()}:r&&r.isVector4?e.uniforms[s]={type:\"v4\",value:r.toArray()}:r&&r.isMatrix3?e.uniforms[s]={type:\"m3\",value:r.toArray()}:r&&r.isMatrix4?e.uniforms[s]={type:\"m4\",value:r.toArray()}:e.uniforms[s]={value:r}}Object.keys(this.defines).length>0&&(e.defines=this.defines),e.vertexShader=this.vertexShader,e.fragmentShader=this.fragmentShader,e.lights=this.lights,e.clipping=this.clipping;let i={};for(let s in this.extensions)this.extensions[s]===!0&&(i[s]=!0);return Object.keys(i).length>0&&(e.extensions=i),e}},Mo=class extends Cn{constructor(t){super(t),this.isRawShaderMaterial=!0,this.type=\"RawShaderMaterial\"}},zn=class extends ft{constructor(t){super(),this.isMeshStandardMaterial=!0,this.type=\"MeshStandardMaterial\",this.defines={STANDARD:\"\"},this.color=new U(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 U(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=Oi,this.normalScale=new C(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.roughnessMap=null,this.metalnessMap=null,this.alphaMap=null,this.envMap=null,this.envMapRotation=new ie,this.envMapIntensity=1,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap=\"round\",this.wireframeLinejoin=\"round\",this.flatShading=!1,this.fog=!0,this.setValues(t)}copy(t){return super.copy(t),this.defines={STANDARD:\"\"},this.color.copy(t.color),this.roughness=t.roughness,this.metalness=t.metalness,this.map=t.map,this.lightMap=t.lightMap,this.lightMapIntensity=t.lightMapIntensity,this.aoMap=t.aoMap,this.aoMapIntensity=t.aoMapIntensity,this.emissive.copy(t.emissive),this.emissiveMap=t.emissiveMap,this.emissiveIntensity=t.emissiveIntensity,this.bumpMap=t.bumpMap,this.bumpScale=t.bumpScale,this.normalMap=t.normalMap,this.normalMapType=t.normalMapType,this.normalScale.copy(t.normalScale),this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.roughnessMap=t.roughnessMap,this.metalnessMap=t.metalnessMap,this.alphaMap=t.alphaMap,this.envMap=t.envMap,this.envMapRotation.copy(t.envMapRotation),this.envMapIntensity=t.envMapIntensity,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.wireframeLinecap=t.wireframeLinecap,this.wireframeLinejoin=t.wireframeLinejoin,this.flatShading=t.flatShading,this.fog=t.fog,this}},_o=class extends zn{constructor(t){super(),this.isMeshPhysicalMaterial=!0,this.defines={STANDARD:\"\",PHYSICAL:\"\"},this.type=\"MeshPhysicalMaterial\",this.anisotropyRotation=0,this.anisotropyMap=null,this.clearcoatMap=null,this.clearcoatRoughness=0,this.clearcoatRoughnessMap=null,this.clearcoatNormalScale=new C(1,1),this.clearcoatNormalMap=null,this.ior=1.5,Object.defineProperty(this,\"reflectivity\",{get:function(){return V(2.5*(this.ior-1)/(this.ior+1),0,1)},set:function(e){this.ior=(1+.4*e)/(1-.4*e)}}),this.iridescenceMap=null,this.iridescenceIOR=1.3,this.iridescenceThicknessRange=[100,400],this.iridescenceThicknessMap=null,this.sheenColor=new U(0),this.sheenColorMap=null,this.sheenRoughness=1,this.sheenRoughnessMap=null,this.transmissionMap=null,this.thickness=0,this.thicknessMap=null,this.attenuationDistance=1/0,this.attenuationColor=new U(1,1,1),this.specularIntensity=1,this.specularIntensityMap=null,this.specularColor=new U(1,1,1),this.specularColorMap=null,this._anisotropy=0,this._clearcoat=0,this._dispersion=0,this._iridescence=0,this._sheen=0,this._transmission=0,this.setValues(t)}get anisotropy(){return this._anisotropy}set anisotropy(t){this._anisotropy>0!=t>0&&this.version++,this._anisotropy=t}get clearcoat(){return this._clearcoat}set clearcoat(t){this._clearcoat>0!=t>0&&this.version++,this._clearcoat=t}get iridescence(){return this._iridescence}set iridescence(t){this._iridescence>0!=t>0&&this.version++,this._iridescence=t}get dispersion(){return this._dispersion}set dispersion(t){this._dispersion>0!=t>0&&this.version++,this._dispersion=t}get sheen(){return this._sheen}set sheen(t){this._sheen>0!=t>0&&this.version++,this._sheen=t}get transmission(){return this._transmission}set transmission(t){this._transmission>0!=t>0&&this.version++,this._transmission=t}copy(t){return super.copy(t),this.defines={STANDARD:\"\",PHYSICAL:\"\"},this.anisotropy=t.anisotropy,this.anisotropyRotation=t.anisotropyRotation,this.anisotropyMap=t.anisotropyMap,this.clearcoat=t.clearcoat,this.clearcoatMap=t.clearcoatMap,this.clearcoatRoughness=t.clearcoatRoughness,this.clearcoatRoughnessMap=t.clearcoatRoughnessMap,this.clearcoatNormalMap=t.clearcoatNormalMap,this.clearcoatNormalScale.copy(t.clearcoatNormalScale),this.dispersion=t.dispersion,this.ior=t.ior,this.iridescence=t.iridescence,this.iridescenceMap=t.iridescenceMap,this.iridescenceIOR=t.iridescenceIOR,this.iridescenceThicknessRange=[...t.iridescenceThicknessRange],this.iridescenceThicknessMap=t.iridescenceThicknessMap,this.sheen=t.sheen,this.sheenColor.copy(t.sheenColor),this.sheenColorMap=t.sheenColorMap,this.sheenRoughness=t.sheenRoughness,this.sheenRoughnessMap=t.sheenRoughnessMap,this.transmission=t.transmission,this.transmissionMap=t.transmissionMap,this.thickness=t.thickness,this.thicknessMap=t.thicknessMap,this.attenuationDistance=t.attenuationDistance,this.attenuationColor.copy(t.attenuationColor),this.specularIntensity=t.specularIntensity,this.specularIntensityMap=t.specularIntensityMap,this.specularColor.copy(t.specularColor),this.specularColorMap=t.specularColorMap,this}},vo=class extends ft{constructor(t){super(),this.isMeshPhongMaterial=!0,this.type=\"MeshPhongMaterial\",this.color=new U(16777215),this.specular=new U(1118481),this.shininess=30,this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new U(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=Oi,this.normalScale=new C(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.envMapRotation=new ie,this.combine=ia,this.reflectivity=1,this.envMapIntensity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap=\"round\",this.wireframeLinejoin=\"round\",this.flatShading=!1,this.fog=!0,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.specular.copy(t.specular),this.shininess=t.shininess,this.map=t.map,this.lightMap=t.lightMap,this.lightMapIntensity=t.lightMapIntensity,this.aoMap=t.aoMap,this.aoMapIntensity=t.aoMapIntensity,this.emissive.copy(t.emissive),this.emissiveMap=t.emissiveMap,this.emissiveIntensity=t.emissiveIntensity,this.bumpMap=t.bumpMap,this.bumpScale=t.bumpScale,this.normalMap=t.normalMap,this.normalMapType=t.normalMapType,this.normalScale.copy(t.normalScale),this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.specularMap=t.specularMap,this.alphaMap=t.alphaMap,this.envMap=t.envMap,this.envMapRotation.copy(t.envMapRotation),this.combine=t.combine,this.reflectivity=t.reflectivity,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.fog=t.fog,this}},So=class extends ft{constructor(t){super(),this.isMeshToonMaterial=!0,this.defines={TOON:\"\"},this.type=\"MeshToonMaterial\",this.color=new U(16777215),this.map=null,this.gradientMap=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new U(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=Oi,this.normalScale=new C(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.alphaMap=null,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap=\"round\",this.wireframeLinejoin=\"round\",this.fog=!0,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.map=t.map,this.gradientMap=t.gradientMap,this.lightMap=t.lightMap,this.lightMapIntensity=t.lightMapIntensity,this.aoMap=t.aoMap,this.aoMapIntensity=t.aoMapIntensity,this.emissive.copy(t.emissive),this.emissiveMap=t.emissiveMap,this.emissiveIntensity=t.emissiveIntensity,this.bumpMap=t.bumpMap,this.bumpScale=t.bumpScale,this.normalMap=t.normalMap,this.normalMapType=t.normalMapType,this.normalScale.copy(t.normalScale),this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.alphaMap=t.alphaMap,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.wireframeLinecap=t.wireframeLinecap,this.wireframeLinejoin=t.wireframeLinejoin,this.fog=t.fog,this}},Ao=class extends ft{constructor(t){super(),this.isMeshNormalMaterial=!0,this.type=\"MeshNormalMaterial\",this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=Oi,this.normalScale=new C(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.wireframe=!1,this.wireframeLinewidth=1,this.flatShading=!1,this.setValues(t)}copy(t){return super.copy(t),this.bumpMap=t.bumpMap,this.bumpScale=t.bumpScale,this.normalMap=t.normalMap,this.normalMapType=t.normalMapType,this.normalScale.copy(t.normalScale),this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.flatShading=t.flatShading,this}},To=class extends ft{constructor(t){super(),this.isMeshLambertMaterial=!0,this.type=\"MeshLambertMaterial\",this.color=new U(16777215),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new U(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=Oi,this.normalScale=new C(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.envMapRotation=new ie,this.combine=ia,this.reflectivity=1,this.envMapIntensity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap=\"round\",this.wireframeLinejoin=\"round\",this.flatShading=!1,this.fog=!0,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.map=t.map,this.lightMap=t.lightMap,this.lightMapIntensity=t.lightMapIntensity,this.aoMap=t.aoMap,this.aoMapIntensity=t.aoMapIntensity,this.emissive.copy(t.emissive),this.emissiveMap=t.emissiveMap,this.emissiveIntensity=t.emissiveIntensity,this.bumpMap=t.bumpMap,this.bumpScale=t.bumpScale,this.normalMap=t.normalMap,this.normalMapType=t.normalMapType,this.normalScale.copy(t.normalScale),this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.specularMap=t.specularMap,this.alphaMap=t.alphaMap,this.envMap=t.envMap,this.envMapRotation.copy(t.envMapRotation),this.combine=t.combine,this.reflectivity=t.reflectivity,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.fog=t.fog,this}},Io=class extends ft{constructor(t){super(),this.isMeshDepthMaterial=!0,this.type=\"MeshDepthMaterial\",this.depthPacking=Tu,this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.wireframe=!1,this.wireframeLinewidth=1,this.setValues(t)}copy(t){return super.copy(t),this.depthPacking=t.depthPacking,this.map=t.map,this.alphaMap=t.alphaMap,this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this}},Co=class extends ft{constructor(t){super(),this.isMeshDistanceMaterial=!0,this.type=\"MeshDistanceMaterial\",this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.setValues(t)}copy(t){return super.copy(t),this.map=t.map,this.alphaMap=t.alphaMap,this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this}},zo=class extends ft{constructor(t){super(),this.isMeshMatcapMaterial=!0,this.defines={MATCAP:\"\"},this.type=\"MeshMatcapMaterial\",this.color=new U(16777215),this.matcap=null,this.map=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=Oi,this.normalScale=new C(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.alphaMap=null,this.wireframe=!1,this.wireframeLinewidth=1,this.flatShading=!1,this.fog=!0,this.setValues(t)}copy(t){return super.copy(t),this.defines={MATCAP:\"\"},this.color.copy(t.color),this.matcap=t.matcap,this.map=t.map,this.bumpMap=t.bumpMap,this.bumpScale=t.bumpScale,this.normalMap=t.normalMap,this.normalMapType=t.normalMapType,this.normalScale.copy(t.normalScale),this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.alphaMap=t.alphaMap,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.flatShading=t.flatShading,this.fog=t.fog,this}},Fo=class extends bt{constructor(t){super(),this.isLineDashedMaterial=!0,this.type=\"LineDashedMaterial\",this.scale=1,this.dashSize=3,this.gapSize=1,this.setValues(t)}copy(t){return super.copy(t),this.scale=t.scale,this.dashSize=t.dashSize,this.gapSize=t.gapSize,this}};function He(h,t){return!h||h.constructor===t?h:typeof t.BYTES_PER_ELEMENT==\"number\"?new t(h):Array.prototype.slice.call(h)}function cc(h){function t(s,n){return h[s]-h[n]}let e=h.length,i=new Array(e);for(let s=0;s!==e;++s)i[s]=s;return i.sort(t),i}function Bo(h,t,e){let i=h.length,s=new h.constructor(i);for(let n=0,r=0;r!==i;++n){let o=e[n]*t;for(let a=0;a!==t;++a)s[r++]=h[o+a]}return s}function ca(h,t,e,i){let s=1,n=h[0];for(;n!==void 0&&n[i]===void 0;)n=h[s++];if(n===void 0)return;let r=n[i];if(r!==void 0)if(Array.isArray(r))do r=n[i],r!==void 0&&(t.push(n.time),e.push(...r)),n=h[s++];while(n!==void 0);else if(r.toArray!==void 0)do r=n[i],r!==void 0&&(t.push(n.time),r.toArray(e,e.length)),n=h[s++];while(n!==void 0);else do r=n[i],r!==void 0&&(t.push(n.time),e.push(r)),n=h[s++];while(n!==void 0)}function $d(h,t,e,i,s=30){let n=h.clone();n.name=t;let r=[];for(let a=0;a<n.tracks.length;++a){let l=n.tracks[a],c=l.getValueSize(),u=[],d=[];for(let p=0;p<l.times.length;++p){let f=l.times[p]*s;if(!(f<e||f>=i)){u.push(l.times[p]);for(let m=0;m<c;++m)d.push(l.values[p*c+m])}}u.length!==0&&(l.times=He(u,l.times.constructor),l.values=He(d,l.values.constructor),r.push(l))}n.tracks=r;let o=1/0;for(let a=0;a<n.tracks.length;++a)o>n.tracks[a].times[0]&&(o=n.tracks[a].times[0]);for(let a=0;a<n.tracks.length;++a)n.tracks[a].shift(-1*o);return n.resetDuration(),n}function jd(h,t=0,e=h,i=30){i<=0&&(i=30);let s=e.tracks.length,n=t/i;for(let r=0;r<s;++r){let o=e.tracks[r],a=o.ValueTypeName;if(a===\"bool\"||a===\"string\")continue;let l=h.tracks.find(function(y){return y.name===o.name&&y.ValueTypeName===a});if(l===void 0)continue;let c=0,u=o.getValueSize();o.createInterpolant.isInterpolantFactoryMethodGLTFCubicSpline&&(c=u/3);let d=0,p=l.getValueSize();l.createInterpolant.isInterpolantFactoryMethodGLTFCubicSpline&&(d=p/3);let f=o.times.length-1,m;if(n<=o.times[0]){let y=c,x=u-c;m=o.values.slice(y,x)}else if(n>=o.times[f]){let y=f*u+c,x=y+u-c;m=o.values.slice(y,x)}else{let y=o.createInterpolant(),x=c,b=u-c;y.evaluate(n),m=y.resultBuffer.slice(x,b)}a===\"quaternion\"&&new xt().fromArray(m).normalize().conjugate().toArray(m);let g=l.times.length;for(let y=0;y<g;++y){let x=y*p+d;if(a===\"quaternion\")xt.multiplyQuaternionsFlat(l.values,x,m,0,l.values,x);else{let b=p-d*2;for(let w=0;w<b;++w)l.values[x+w]-=m[w]}}}return h.blendMode=tc,h}var Uh=class{static convertArray(t,e){return He(t,e)}static isTypedArray(t){return ic(t)}static getKeyframeOrder(t){return cc(t)}static sortedArray(t,e,i){return Bo(t,e,i)}static flattenJSON(t,e,i,s){ca(t,e,i,s)}static subclip(t,e,i,s,n=30){return $d(t,e,i,s,n)}static makeClipAdditive(t,e=0,i=t,s=30){return jd(t,e,i,s)}},Ke=class{constructor(t,e,i,s){this.parameterPositions=t,this._cachedIndex=0,this.resultBuffer=s!==void 0?s:new e.constructor(i),this.sampleValues=e,this.valueSize=i,this.settings=null,this.DefaultSettings_={}}evaluate(t){let e=this.parameterPositions,i=this._cachedIndex,s=e[i],n=e[i-1];t:{e:{let r;i:{s:if(!(t<s)){for(let o=i+2;;){if(s===void 0){if(t<n)break s;return i=e.length,this._cachedIndex=i,this.copySampleValue_(i-1)}if(i===o)break;if(n=s,s=e[++i],t<s)break e}r=e.length;break i}if(!(t>=n)){let o=e[1];t<o&&(i=2,n=o);for(let a=i-2;;){if(n===void 0)return this._cachedIndex=0,this.copySampleValue_(0);if(i===a)break;if(s=n,n=e[--i-1],t>=n)break e}r=i,i=0;break i}break t}for(;i<r;){let o=i+r>>>1;t<e[o]?r=o:i=o+1}if(s=e[i],n=e[i-1],n===void 0)return this._cachedIndex=0,this.copySampleValue_(0);if(s===void 0)return i=e.length,this._cachedIndex=i,this.copySampleValue_(i-1)}this._cachedIndex=i,this.intervalChanged_(i,n,s)}return this.interpolate_(i,n,t,s)}getSettings_(){return this.settings||this.DefaultSettings_}copySampleValue_(t){let e=this.resultBuffer,i=this.sampleValues,s=this.valueSize,n=t*s;for(let r=0;r!==s;++r)e[r]=i[n+r];return e}interpolate_(){throw new Error(\"call to abstract method\")}intervalChanged_(){}},ko=class extends Ke{constructor(t,e,i,s){super(t,e,i,s),this._weightPrev=-0,this._offsetPrev=-0,this._weightNext=-0,this._offsetNext=-0,this.DefaultSettings_={endingStart:_i,endingEnd:_i}}intervalChanged_(t,e,i){let s=this.parameterPositions,n=t-2,r=t+1,o=s[n],a=s[r];if(o===void 0)switch(this.getSettings_().endingStart){case vi:n=t,o=2*e-i;break;case rn:n=s.length-2,o=e+s[n]-s[n+1];break;default:n=t,o=i}if(a===void 0)switch(this.getSettings_().endingEnd){case vi:r=t,a=2*i-e;break;case rn:r=1,a=i+s[1]-s[0];break;default:r=t-1,a=e}let l=(i-e)*.5,c=this.valueSize;this._weightPrev=l/(e-o),this._weightNext=l/(a-i),this._offsetPrev=n*c,this._offsetNext=r*c}interpolate_(t,e,i,s){let n=this.resultBuffer,r=this.sampleValues,o=this.valueSize,a=t*o,l=a-o,c=this._offsetPrev,u=this._offsetNext,d=this._weightPrev,p=this._weightNext,f=(i-e)/(s-e),m=f*f,g=m*f,y=-d*g+2*d*m-d*f,x=(1+d)*g+(-1.5-2*d)*m+(-.5+d)*f+1,b=(-1-p)*g+(1.5+p)*m+.5*f,w=p*g-p*m;for(let _=0;_!==o;++_)n[_]=y*r[c+_]+x*r[l+_]+b*r[a+_]+w*r[u+_];return n}},Fn=class extends Ke{constructor(t,e,i,s){super(t,e,i,s)}interpolate_(t,e,i,s){let n=this.resultBuffer,r=this.sampleValues,o=this.valueSize,a=t*o,l=a-o,c=(i-e)/(s-e),u=1-c;for(let d=0;d!==o;++d)n[d]=r[l+d]*u+r[a+d]*c;return n}},Po=class extends Ke{constructor(t,e,i,s){super(t,e,i,s)}interpolate_(t){return this.copySampleValue_(t-1)}},Ro=class extends Ke{interpolate_(t,e,i,s){let n=this.resultBuffer,r=this.sampleValues,o=this.valueSize,a=t*o,l=a-o,c=this.settings||this.DefaultSettings_,u=c.inTangents,d=c.outTangents;if(!u||!d){let m=(i-e)/(s-e),g=1-m;for(let y=0;y!==o;++y)n[y]=r[l+y]*g+r[a+y]*m;return n}let p=o*2,f=t-1;for(let m=0;m!==o;++m){let g=r[l+m],y=r[a+m],x=f*p+m*2,b=d[x],w=d[x+1],_=t*p+m*2,v=u[_],A=u[_+1],S=(i-e)/(s-e),T,I,F,O,D;for(let X=0;X<8;X++){T=S*S,I=T*S,F=1-S,O=F*F,D=O*F;let et=D*e+3*O*S*b+3*F*T*v+I*s-i;if(Math.abs(et)<1e-10)break;let ot=3*O*(b-e)+6*F*S*(v-b)+3*T*(s-v);if(Math.abs(ot)<1e-10)break;S=S-et/ot,S=Math.max(0,Math.min(1,S))}n[m]=D*g+3*O*S*w+3*F*T*A+I*y}return n}},Pt=class{constructor(t,e,i,s){if(t===void 0)throw new Error(\"THREE.KeyframeTrack: track name is undefined\");if(e===void 0||e.length===0)throw new Error(\"THREE.KeyframeTrack: no keyframes in track named \"+t);this.name=t,this.times=He(e,this.TimeBufferType),this.values=He(i,this.ValueBufferType),this.setInterpolation(s||this.DefaultInterpolation)}static toJSON(t){let e=t.constructor,i;if(e.toJSON!==this.toJSON)i=e.toJSON(t);else{i={name:t.name,times:He(t.times,Array),values:He(t.values,Array)};let s=t.getInterpolation();s!==t.DefaultInterpolation&&(i.interpolation=s)}return i.type=t.ValueTypeName,i}InterpolantFactoryMethodDiscrete(t){return new Po(this.times,this.values,this.getValueSize(),t)}InterpolantFactoryMethodLinear(t){return new Fn(this.times,this.values,this.getValueSize(),t)}InterpolantFactoryMethodSmooth(t){return new ko(this.times,this.values,this.getValueSize(),t)}InterpolantFactoryMethodBezier(t){let e=new Ro(this.times,this.values,this.getValueSize(),t);return this.settings&&(e.settings=this.settings),e}setInterpolation(t){let e;switch(t){case nn:e=this.InterpolantFactoryMethodDiscrete;break;case Cr:e=this.InterpolantFactoryMethodLinear;break;case Dn:e=this.InterpolantFactoryMethodSmooth;break;case Ba:e=this.InterpolantFactoryMethodBezier;break}if(e===void 0){let i=\"unsupported interpolation for \"+this.ValueTypeName+\" keyframe track named \"+this.name;if(this.createInterpolant===void 0)if(t!==this.DefaultInterpolation)this.setInterpolation(this.DefaultInterpolation);else throw new Error(i);return N(\"KeyframeTrack:\",i),this}return this.createInterpolant=e,this}getInterpolation(){switch(this.createInterpolant){case this.InterpolantFactoryMethodDiscrete:return nn;case this.InterpolantFactoryMethodLinear:return Cr;case this.InterpolantFactoryMethodSmooth:return Dn;case this.InterpolantFactoryMethodBezier:return Ba}}getValueSize(){return this.values.length/this.times.length}shift(t){if(t!==0){let e=this.times;for(let i=0,s=e.length;i!==s;++i)e[i]+=t}return this}scale(t){if(t!==1){let e=this.times;for(let i=0,s=e.length;i!==s;++i)e[i]*=t}return this}trim(t,e){let i=this.times,s=i.length,n=0,r=s-1;for(;n!==s&&i[n]<t;)++n;for(;r!==-1&&i[r]>e;)--r;if(++r,n!==0||r!==s){n>=r&&(r=Math.max(r,1),n=r-1);let o=this.getValueSize();this.times=i.slice(n,r),this.values=this.values.slice(n*o,r*o)}return this}validate(){let t=!0,e=this.getValueSize();e-Math.floor(e)!==0&&(Z(\"KeyframeTrack: Invalid value size in track.\",this),t=!1);let i=this.times,s=this.values,n=i.length;n===0&&(Z(\"KeyframeTrack: Track is empty.\",this),t=!1);let r=null;for(let o=0;o!==n;o++){let a=i[o];if(typeof a==\"number\"&&isNaN(a)){Z(\"KeyframeTrack: Time is not a valid number.\",this,o,a),t=!1;break}if(r!==null&&r>a){Z(\"KeyframeTrack: Out of order keys.\",this,o,a,r),t=!1;break}r=a}if(s!==void 0&&ic(s))for(let o=0,a=s.length;o!==a;++o){let l=s[o];if(isNaN(l)){Z(\"KeyframeTrack: Value is not a valid number.\",this,o,l),t=!1;break}}return t}optimize(){let t=this.times.slice(),e=this.values.slice(),i=this.getValueSize(),s=this.getInterpolation()===Dn,n=t.length-1,r=1;for(let o=1;o<n;++o){let a=!1,l=t[o],c=t[o+1];if(l!==c&&(o!==1||l!==t[0]))if(s)a=!0;else{let u=o*i,d=u-i,p=u+i;for(let f=0;f!==i;++f){let m=e[u+f];if(m!==e[d+f]||m!==e[p+f]){a=!0;break}}}if(a){if(o!==r){t[r]=t[o];let u=o*i,d=r*i;for(let p=0;p!==i;++p)e[d+p]=e[u+p]}++r}}if(n>0){t[r]=t[n];for(let o=n*i,a=r*i,l=0;l!==i;++l)e[a+l]=e[o+l];++r}return r!==t.length?(this.times=t.slice(0,r),this.values=e.slice(0,r*i)):(this.times=t,this.values=e),this}clone(){let t=this.times.slice(),e=this.values.slice(),i=this.constructor,s=new i(this.name,t,e);return s.createInterpolant=this.createInterpolant,s}};Pt.prototype.ValueTypeName=\"\";Pt.prototype.TimeBufferType=Float32Array;Pt.prototype.ValueBufferType=Float32Array;Pt.prototype.DefaultInterpolation=Cr;var Be=class extends Pt{constructor(t,e,i){super(t,e,i)}};Be.prototype.ValueTypeName=\"bool\";Be.prototype.ValueBufferType=Array;Be.prototype.DefaultInterpolation=nn;Be.prototype.InterpolantFactoryMethodLinear=void 0;Be.prototype.InterpolantFactoryMethodSmooth=void 0;var Bn=class extends Pt{constructor(t,e,i,s){super(t,e,i,s)}};Bn.prototype.ValueTypeName=\"color\";var Fi=class extends Pt{constructor(t,e,i,s){super(t,e,i,s)}};Fi.prototype.ValueTypeName=\"number\";var Oo=class extends Ke{constructor(t,e,i,s){super(t,e,i,s)}interpolate_(t,e,i,s){let n=this.resultBuffer,r=this.sampleValues,o=this.valueSize,a=(i-e)/(s-e),l=t*o;for(let c=l+o;l!==c;l+=4)xt.slerpFlat(n,0,r,l-o,r,l,a);return n}},Bi=class extends Pt{constructor(t,e,i,s){super(t,e,i,s)}InterpolantFactoryMethodLinear(t){return new Oo(this.times,this.values,this.getValueSize(),t)}};Bi.prototype.ValueTypeName=\"quaternion\";Bi.prototype.InterpolantFactoryMethodSmooth=void 0;var ke=class extends Pt{constructor(t,e,i){super(t,e,i)}};ke.prototype.ValueTypeName=\"string\";ke.prototype.ValueBufferType=Array;ke.prototype.DefaultInterpolation=nn;ke.prototype.InterpolantFactoryMethodLinear=void 0;ke.prototype.InterpolantFactoryMethodSmooth=void 0;var ki=class extends Pt{constructor(t,e,i,s){super(t,e,i,s)}};ki.prototype.ValueTypeName=\"vector\";var Pi=class{constructor(t=\"\",e=-1,i=[],s=oa){this.name=t,this.tracks=i,this.duration=e,this.blendMode=s,this.uuid=Bt(),this.userData={},this.duration<0&&this.resetDuration()}static parse(t){let e=[],i=t.tracks,s=1/(t.fps||1);for(let r=0,o=i.length;r!==o;++r)e.push(Kd(i[r]).scale(s));let n=new this(t.name,t.duration,e,t.blendMode);return n.uuid=t.uuid,n.userData=JSON.parse(t.userData||\"{}\"),n}static toJSON(t){let e=[],i=t.tracks,s={name:t.name,duration:t.duration,tracks:e,uuid:t.uuid,blendMode:t.blendMode,userData:JSON.stringify(t.userData)};for(let n=0,r=i.length;n!==r;++n)e.push(Pt.toJSON(i[n]));return s}static CreateFromMorphTargetSequence(t,e,i,s){let n=e.length,r=[];for(let o=0;o<n;o++){let a=[],l=[];a.push((o+n-1)%n,o,(o+1)%n),l.push(0,1,0);let c=cc(a);a=Bo(a,1,c),l=Bo(l,1,c),!s&&a[0]===0&&(a.push(n),l.push(l[0])),r.push(new Fi(\".morphTargetInfluences[\"+e[o].name+\"]\",a,l).scale(1/i))}return new this(t,-1,r)}static findByName(t,e){let i=t;if(!Array.isArray(t)){let s=t;i=s.geometry&&s.geometry.animations||s.animations}for(let s=0;s<i.length;s++)if(i[s].name===e)return i[s];return null}static CreateClipsFromMorphTargetSequences(t,e,i){let s={},n=/^([\\w-]*?)([\\d]+)$/;for(let o=0,a=t.length;o<a;o++){let l=t[o],c=l.name.match(n);if(c&&c.length>1){let u=c[1],d=s[u];d||(s[u]=d=[]),d.push(l)}}let r=[];for(let o in s)r.push(this.CreateFromMorphTargetSequence(o,s[o],e,i));return r}static parseAnimation(t,e){if(N(\"AnimationClip: parseAnimation() is deprecated and will be removed with r185\"),!t)return Z(\"AnimationClip: No animation in JSONLoader data.\"),null;let i=function(u,d,p,f,m){if(p.length!==0){let g=[],y=[];ca(p,g,y,f),g.length!==0&&m.push(new u(d,g,y))}},s=[],n=t.name||\"default\",r=t.fps||30,o=t.blendMode,a=t.length||-1,l=t.hierarchy||[];for(let u=0;u<l.length;u++){let d=l[u].keys;if(!(!d||d.length===0))if(d[0].morphTargets){let p={},f;for(f=0;f<d.length;f++)if(d[f].morphTargets)for(let m=0;m<d[f].morphTargets.length;m++)p[d[f].morphTargets[m]]=-1;for(let m in p){let g=[],y=[];for(let x=0;x!==d[f].morphTargets.length;++x){let b=d[f];g.push(b.time),y.push(b.morphTarget===m?1:0)}s.push(new Fi(\".morphTargetInfluence[\"+m+\"]\",g,y))}a=p.length*r}else{let p=\".bones[\"+e[u].name+\"]\";i(ki,p+\".position\",d,\"pos\",s),i(Bi,p+\".quaternion\",d,\"rot\",s),i(ki,p+\".scale\",d,\"scl\",s)}}return s.length===0?null:new this(n,a,s,o)}resetDuration(){let t=this.tracks,e=0;for(let i=0,s=t.length;i!==s;++i){let n=this.tracks[i];e=Math.max(e,n.times[n.times.length-1])}return this.duration=e,this}trim(){for(let t=0;t<this.tracks.length;t++)this.tracks[t].trim(0,this.duration);return this}validate(){let t=!0;for(let e=0;e<this.tracks.length;e++)t=t&&this.tracks[e].validate();return t}optimize(){for(let t=0;t<this.tracks.length;t++)this.tracks[t].optimize();return this}clone(){let t=[];for(let i=0;i<this.tracks.length;i++)t.push(this.tracks[i].clone());let e=new this.constructor(this.name,this.duration,t,this.blendMode);return e.userData=JSON.parse(JSON.stringify(this.userData)),e}toJSON(){return this.constructor.toJSON(this)}};function Qd(h){switch(h.toLowerCase()){case\"scalar\":case\"double\":case\"float\":case\"number\":case\"integer\":return Fi;case\"vector\":case\"vector2\":case\"vector3\":case\"vector4\":return ki;case\"color\":return Bn;case\"quaternion\":return Bi;case\"bool\":case\"boolean\":return Be;case\"string\":return ke}throw new Error(\"THREE.KeyframeTrack: Unsupported typeName: \"+h)}function Kd(h){if(h.type===void 0)throw new Error(\"THREE.KeyframeTrack: track type undefined, can not parse\");let t=Qd(h.type);if(h.times===void 0){let e=[],i=[];ca(h.keys,e,i,\"value\"),h.times=e,h.values=i}return t.parse!==void 0?t.parse(h):new t(h.name,h.times,h.values,h.interpolation)}var ye={enabled:!1,files:{},add:function(h,t){this.enabled!==!1&&(Wh(h)||(this.files[h]=t))},get:function(h){if(this.enabled!==!1&&!Wh(h))return this.files[h]},remove:function(h){delete this.files[h]},clear:function(){this.files={}}};function Wh(h){try{let t=h.slice(h.indexOf(\":\")+1);return new URL(t).protocol===\"blob:\"}catch{return!1}}var kn=class{constructor(t,e,i){let s=this,n=!1,r=0,o=0,a,l=[];this.onStart=void 0,this.onLoad=t,this.onProgress=e,this.onError=i,this._abortController=null,this.itemStart=function(c){o++,n===!1&&s.onStart!==void 0&&s.onStart(c,r,o),n=!0},this.itemEnd=function(c){r++,s.onProgress!==void 0&&s.onProgress(c,r,o),r===o&&(n=!1,s.onLoad!==void 0&&s.onLoad())},this.itemError=function(c){s.onError!==void 0&&s.onError(c)},this.resolveURL=function(c){return a?a(c):c},this.setURLModifier=function(c){return a=c,this},this.addHandler=function(c,u){return l.push(c,u),this},this.removeHandler=function(c){let u=l.indexOf(c);return u!==-1&&l.splice(u,2),this},this.getHandler=function(c){for(let u=0,d=l.length;u<d;u+=2){let p=l[u],f=l[u+1];if(p.global&&(p.lastIndex=0),p.test(c))return f}return null},this.abort=function(){return this.abortController.abort(),this._abortController=null,this}}get abortController(){return this._abortController||(this._abortController=new AbortController),this._abortController}},tp=new kn,_t=class{constructor(t){this.manager=t!==void 0?t:tp,this.crossOrigin=\"anonymous\",this.withCredentials=!1,this.path=\"\",this.resourcePath=\"\",this.requestHeader={},typeof __THREE_DEVTOOLS__<\"u\"&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent(\"observe\",{detail:this}))}load(){}loadAsync(t,e){let i=this;return new Promise(function(s,n){i.load(t,s,e,n)})}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}abort(){return this}};_t.DEFAULT_MATERIAL_NAME=\"__DEFAULT\";var de={},Eo=class extends Error{constructor(t,e){super(t),this.response=e}},se=class extends _t{constructor(t){super(t),this.mimeType=\"\",this.responseType=\"\",this._abortController=new AbortController}load(t,e,i,s){t===void 0&&(t=\"\"),this.path!==void 0&&(t=this.path+t),t=this.manager.resolveURL(t);let n=ye.get(`file:${t}`);if(n!==void 0)return this.manager.itemStart(t),setTimeout(()=>{e&&e(n),this.manager.itemEnd(t)},0),n;if(de[t]!==void 0){de[t].push({onLoad:e,onProgress:i,onError:s});return}de[t]=[],de[t].push({onLoad:e,onProgress:i,onError:s});let r=new Request(t,{headers:new Headers(this.requestHeader),credentials:this.withCredentials?\"include\":\"same-origin\",signal:typeof AbortSignal.any==\"function\"?AbortSignal.any([this._abortController.signal,this.manager.abortController.signal]):this._abortController.signal}),o=this.mimeType,a=this.responseType;fetch(r).then(l=>{if(l.status===200||l.status===0){if(l.status===0&&N(\"FileLoader: HTTP Status 0 received.\"),typeof ReadableStream>\"u\"||l.body===void 0||l.body.getReader===void 0)return l;let c=de[t],u=l.body.getReader(),d=l.headers.get(\"X-File-Size\")||l.headers.get(\"Content-Length\"),p=d?parseInt(d):0,f=p!==0,m=0,g=new ReadableStream({start(y){x();function x(){u.read().then(({done:b,value:w})=>{if(b)y.close();else{m+=w.byteLength;let _=new ProgressEvent(\"progress\",{lengthComputable:f,loaded:m,total:p});for(let v=0,A=c.length;v<A;v++){let S=c[v];S.onProgress&&S.onProgress(_)}y.enqueue(w),x()}},b=>{y.error(b)})}}});return new Response(g)}else throw new Eo(`fetch for \"${l.url}\" responded with ${l.status}: ${l.statusText}`,l)}).then(l=>{switch(a){case\"arraybuffer\":return l.arrayBuffer();case\"blob\":return l.blob();case\"document\":return l.text().then(c=>new DOMParser().parseFromString(c,o));case\"json\":return l.json();default:if(o===\"\")return l.text();{let u=/charset=\"?([^;\"\\s]*)\"?/i.exec(o),d=u&&u[1]?u[1].toLowerCase():void 0,p=new TextDecoder(d);return l.arrayBuffer().then(f=>p.decode(f))}}}).then(l=>{ye.add(`file:${t}`,l);let c=de[t];delete de[t];for(let u=0,d=c.length;u<d;u++){let p=c[u];p.onLoad&&p.onLoad(l)}}).catch(l=>{let c=de[t];if(c===void 0)throw this.manager.itemError(t),l;delete de[t];for(let u=0,d=c.length;u<d;u++){let p=c[u];p.onError&&p.onError(l)}this.manager.itemError(t)}).finally(()=>{this.manager.itemEnd(t)}),this.manager.itemStart(t)}setResponseType(t){return this.responseType=t,this}setMimeType(t){return this.mimeType=t,this}abort(){return this._abortController.abort(),this._abortController=new AbortController,this}},qh=class extends _t{constructor(t){super(t)}load(t,e,i,s){let n=this,r=new se(this.manager);r.setPath(this.path),r.setRequestHeader(this.requestHeader),r.setWithCredentials(this.withCredentials),r.load(t,function(o){try{e(n.parse(JSON.parse(o)))}catch(a){s?s(a):Z(a),n.manager.itemError(t)}},i,s)}parse(t){let e=[];for(let i=0;i<t.length;i++){let s=Pi.parse(t[i]);e.push(s)}return e}},Jh=class extends _t{constructor(t){super(t)}load(t,e,i,s){let n=this,r=[],o=new ss,a=new se(this.manager);a.setPath(this.path),a.setResponseType(\"arraybuffer\"),a.setRequestHeader(this.requestHeader),a.setWithCredentials(n.withCredentials);let l=0;function c(u){a.load(t[u],function(d){let p=n.parse(d,!0);r[u]={width:p.width,height:p.height,format:p.format,mipmaps:p.mipmaps},l+=1,l===6&&(p.mipmapCount===1&&(o.minFilter=Gt),o.image=r,o.format=p.format,o.needsUpdate=!0,e&&e(o))},i,s)}if(Array.isArray(t))for(let u=0,d=t.length;u<d;++u)c(u);else a.load(t,function(u){let d=n.parse(u,!0);if(d.isCubemap){let p=d.mipmaps.length/d.mipmapCount;for(let f=0;f<p;f++){r[f]={mipmaps:[]};for(let m=0;m<d.mipmapCount;m++)r[f].mipmaps.push(d.mipmaps[f*d.mipmapCount+m]),r[f].format=d.format,r[f].width=d.width,r[f].height=d.height}o.image=r}else o.image.width=d.width,o.image.height=d.height,o.mipmaps=d.mipmaps;d.mipmapCount===1&&(o.minFilter=Gt),o.format=d.format,o.needsUpdate=!0,e&&e(o)},i,s);return o}},gi=new WeakMap,Ri=class extends _t{constructor(t){super(t)}load(t,e,i,s){this.path!==void 0&&(t=this.path+t),t=this.manager.resolveURL(t);let n=this,r=ye.get(`image:${t}`);if(r!==void 0){if(r.complete===!0)n.manager.itemStart(t),setTimeout(function(){e&&e(r),n.manager.itemEnd(t)},0);else{let u=gi.get(r);u===void 0&&(u=[],gi.set(r,u)),u.push({onLoad:e,onError:s})}return r}let o=an(\"img\");function a(){c(),e&&e(this);let u=gi.get(this)||[];for(let d=0;d<u.length;d++){let p=u[d];p.onLoad&&p.onLoad(this)}gi.delete(this),n.manager.itemEnd(t)}function l(u){c(),s&&s(u),ye.remove(`image:${t}`);let d=gi.get(this)||[];for(let p=0;p<d.length;p++){let f=d[p];f.onError&&f.onError(u)}gi.delete(this),n.manager.itemError(t),n.manager.itemEnd(t)}function c(){o.removeEventListener(\"load\",a,!1),o.removeEventListener(\"error\",l,!1)}return o.addEventListener(\"load\",a,!1),o.addEventListener(\"error\",l,!1),t.slice(0,5)!==\"data:\"&&this.crossOrigin!==void 0&&(o.crossOrigin=this.crossOrigin),ye.add(`image:${t}`,o),n.manager.itemStart(t),o.src=t,o}},Gh=class extends _t{constructor(t){super(t)}load(t,e,i,s){let n=new gn;n.colorSpace=Et;let r=new Ri(this.manager);r.setCrossOrigin(this.crossOrigin),r.setPath(this.path);let o=0;function a(l){r.load(t[l],function(c){n.images[l]=c,o++,o===6&&(n.needsUpdate=!0,e&&e(n))},void 0,s)}for(let l=0;l<t.length;++l)a(l);return n}},Xh=class extends _t{constructor(t){super(t)}load(t,e,i,s){let n=this,r=new Xt,o=new se(this.manager);return o.setResponseType(\"arraybuffer\"),o.setRequestHeader(this.requestHeader),o.setPath(this.path),o.setWithCredentials(n.withCredentials),o.load(t,function(a){let l;try{l=n.parse(a)}catch(c){if(s!==void 0)s(c);else{c(c);return}}l.image!==void 0?r.image=l.image:l.data!==void 0&&(r.image.width=l.width,r.image.height=l.height,r.image.data=l.data),r.wrapS=l.wrapS!==void 0?l.wrapS:jt,r.wrapT=l.wrapT!==void 0?l.wrapT:jt,r.magFilter=l.magFilter!==void 0?l.magFilter:Gt,r.minFilter=l.minFilter!==void 0?l.minFilter:Gt,r.anisotropy=l.anisotropy!==void 0?l.anisotropy:1,l.colorSpace!==void 0&&(r.colorSpace=l.colorSpace),l.flipY!==void 0&&(r.flipY=l.flipY),l.format!==void 0&&(r.format=l.format),l.type!==void 0&&(r.type=l.type),l.mipmaps!==void 0&&(r.mipmaps=l.mipmaps,r.minFilter=na),l.mipmapCount===1&&(r.minFilter=Gt),l.generateMipmaps!==void 0&&(r.generateMipmaps=l.generateMipmaps),r.needsUpdate=!0,e&&e(r,l)},i,s),r}},Hh=class extends _t{constructor(t){super(t)}load(t,e,i,s){let n=new dt,r=new Ri(this.manager);return r.setCrossOrigin(this.crossOrigin),r.setPath(this.path),r.load(t,function(o){n.image=o,n.needsUpdate=!0,e!==void 0&&e(n)},i,s),n}},be=class extends Y{constructor(t,e=1){super(),this.isLight=!0,this.type=\"Light\",this.color=new U(t),this.intensity=e}dispose(){this.dispatchEvent({type:\"dispose\"})}copy(t,e){return super.copy(t,e),this.color.copy(t.color),this.intensity=t.intensity,this}toJSON(t){let e=super.toJSON(t);return e.object.color=this.color.getHex(),e.object.intensity=this.intensity,e}},No=class extends be{constructor(t,e,i){super(t,i),this.isHemisphereLight=!0,this.type=\"HemisphereLight\",this.position.copy(Y.DEFAULT_UP),this.updateMatrix(),this.groundColor=new U(e)}copy(t,e){return super.copy(t,e),this.groundColor.copy(t.groundColor),this}toJSON(t){let e=super.toJSON(t);return e.object.groundColor=this.groundColor.getHex(),e}},xr=new q,Zh=new M,Yh=new M,ls=class{constructor(t){this.camera=t,this.intensity=1,this.bias=0,this.biasNode=null,this.normalBias=0,this.radius=1,this.blurSamples=8,this.mapSize=new C(512,512),this.mapType=ra,this.map=null,this.mapPass=null,this.matrix=new q,this.autoUpdate=!0,this.needsUpdate=!1,this._frustum=new is,this._frameExtents=new C(1,1),this._viewportCount=1,this._viewports=[new Nt(0,0,1,1)]}getViewportCount(){return this._viewportCount}getFrustum(){return this._frustum}updateMatrices(t){let e=this.camera,i=this.matrix;Zh.setFromMatrixPosition(t.matrixWorld),e.position.copy(Zh),Yh.setFromMatrixPosition(t.target.matrixWorld),e.lookAt(Yh),e.updateMatrixWorld(),xr.multiplyMatrices(e.projectionMatrix,e.matrixWorldInverse),this._frustum.setFromProjectionMatrix(xr,e.coordinateSystem,e.reversedDepth),e.coordinateSystem===Ii||e.reversedDepth?i.set(.5,0,0,.5,0,.5,0,.5,0,0,1,0,0,0,0,1):i.set(.5,0,0,.5,0,.5,0,.5,0,0,.5,.5,0,0,0,1),i.multiply(xr)}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.intensity=t.intensity,this.bias=t.bias,this.radius=t.radius,this.autoUpdate=t.autoUpdate,this.needsUpdate=t.needsUpdate,this.normalBias=t.normalBias,this.blurSamples=t.blurSamples,this.mapSize.copy(t.mapSize),this.biasNode=t.biasNode,this}clone(){return new this.constructor().copy(this)}toJSON(){let t={};return this.intensity!==1&&(t.intensity=this.intensity),this.bias!==0&&(t.bias=this.bias),this.normalBias!==0&&(t.normalBias=this.normalBias),this.radius!==1&&(t.radius=this.radius),(this.mapSize.x!==512||this.mapSize.y!==512)&&(t.mapSize=this.mapSize.toArray()),t.camera=this.camera.toJSON(!1).object,delete t.camera.matrix,t}},Hs=new M,Zs=new xt,$t=new M,cs=class extends Y{constructor(){super(),this.isCamera=!0,this.type=\"Camera\",this.matrixWorldInverse=new q,this.projectionMatrix=new q,this.projectionMatrixInverse=new q,this.coordinateSystem=Qt,this._reversedDepth=!1}get reversedDepth(){return this._reversedDepth}copy(t,e){return super.copy(t,e),this.matrixWorldInverse.copy(t.matrixWorldInverse),this.projectionMatrix.copy(t.projectionMatrix),this.projectionMatrixInverse.copy(t.projectionMatrixInverse),this.coordinateSystem=t.coordinateSystem,this}getWorldDirection(t){return super.getWorldDirection(t).negate()}updateMatrixWorld(t){super.updateMatrixWorld(t),this.matrixWorld.decompose(Hs,Zs,$t),$t.x===1&&$t.y===1&&$t.z===1?this.matrixWorldInverse.copy(this.matrixWorld).invert():this.matrixWorldInverse.compose(Hs,Zs,$t.set(1,1,1)).invert()}updateWorldMatrix(t,e){super.updateWorldMatrix(t,e),this.matrixWorld.decompose(Hs,Zs,$t),$t.x===1&&$t.y===1&&$t.z===1?this.matrixWorldInverse.copy(this.matrixWorld).invert():this.matrixWorldInverse.compose(Hs,Zs,$t.set(1,1,1)).invert()}clone(){return new this.constructor().copy(this)}},Ae=new M,$h=new C,jh=new C,At=class extends cs{constructor(t=50,e=1,i=.1,s=2e3){super(),this.isPerspectiveCamera=!0,this.type=\"PerspectiveCamera\",this.fov=t,this.zoom=1,this.near=i,this.far=s,this.focus=10,this.aspect=e,this.view=null,this.filmGauge=35,this.filmOffset=0,this.updateProjectionMatrix()}copy(t,e){return super.copy(t,e),this.fov=t.fov,this.zoom=t.zoom,this.near=t.near,this.far=t.far,this.focus=t.focus,this.aspect=t.aspect,this.view=t.view===null?null:Object.assign({},t.view),this.filmGauge=t.filmGauge,this.filmOffset=t.filmOffset,this}setFocalLength(t){let e=.5*this.getFilmHeight()/t;this.fov=ts*2*Math.atan(e),this.updateProjectionMatrix()}getFocalLength(){let t=Math.tan(Ze*.5*this.fov);return .5*this.getFilmHeight()/t}getEffectiveFOV(){return ts*2*Math.atan(Math.tan(Ze*.5*this.fov)/this.zoom)}getFilmWidth(){return this.filmGauge*Math.min(this.aspect,1)}getFilmHeight(){return this.filmGauge/Math.max(this.aspect,1)}getViewBounds(t,e,i){Ae.set(-1,-1,.5).applyMatrix4(this.projectionMatrixInverse),e.set(Ae.x,Ae.y).multiplyScalar(-t/Ae.z),Ae.set(1,1,.5).applyMatrix4(this.projectionMatrixInverse),i.set(Ae.x,Ae.y).multiplyScalar(-t/Ae.z)}getViewSize(t,e){return this.getViewBounds(t,$h,jh),e.subVectors(jh,$h)}setViewOffset(t,e,i,s,n,r){this.aspect=t/e,this.view===null&&(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=t,this.view.fullHeight=e,this.view.offsetX=i,this.view.offsetY=s,this.view.width=n,this.view.height=r,this.updateProjectionMatrix()}clearViewOffset(){this.view!==null&&(this.view.enabled=!1),this.updateProjectionMatrix()}updateProjectionMatrix(){let t=this.near,e=t*Math.tan(Ze*.5*this.fov)/this.zoom,i=2*e,s=this.aspect*i,n=-.5*s,r=this.view;if(this.view!==null&&this.view.enabled){let a=r.fullWidth,l=r.fullHeight;n+=r.offsetX*s/a,e-=r.offsetY*i/l,s*=r.width/a,i*=r.height/l}let o=this.filmOffset;o!==0&&(n+=t*o/this.getFilmWidth()),this.projectionMatrix.makePerspective(n,n+s,e,e-i,t,this.far,this.coordinateSystem,this.reversedDepth),this.projectionMatrixInverse.copy(this.projectionMatrix).invert()}toJSON(t){let e=super.toJSON(t);return e.object.fov=this.fov,e.object.zoom=this.zoom,e.object.near=this.near,e.object.far=this.far,e.object.focus=this.focus,e.object.aspect=this.aspect,this.view!==null&&(e.object.view=Object.assign({},this.view)),e.object.filmGauge=this.filmGauge,e.object.filmOffset=this.filmOffset,e}},Vo=class extends ls{constructor(){super(new At(50,1,.5,500)),this.isSpotLightShadow=!0,this.focus=1,this.aspect=1}updateMatrices(t){let e=this.camera,i=ts*2*t.angle*this.focus,s=this.mapSize.width/this.mapSize.height*this.aspect,n=t.distance||e.far;(i!==e.fov||s!==e.aspect||n!==e.far)&&(e.fov=i,e.aspect=s,e.far=n,e.updateProjectionMatrix()),super.updateMatrices(t)}copy(t){return super.copy(t),this.focus=t.focus,this}},Do=class extends be{constructor(t,e,i=0,s=Math.PI/3,n=0,r=2){super(t,e),this.isSpotLight=!0,this.type=\"SpotLight\",this.position.copy(Y.DEFAULT_UP),this.updateMatrix(),this.target=new Y,this.distance=i,this.angle=s,this.penumbra=n,this.decay=r,this.map=null,this.shadow=new Vo}get power(){return this.intensity*Math.PI}set power(t){this.intensity=t/Math.PI}dispose(){super.dispose(),this.shadow.dispose()}copy(t,e){return super.copy(t,e),this.distance=t.distance,this.angle=t.angle,this.penumbra=t.penumbra,this.decay=t.decay,this.target=t.target.clone(),this.map=t.map,this.shadow=t.shadow.clone(),this}toJSON(t){let e=super.toJSON(t);return e.object.distance=this.distance,e.object.angle=this.angle,e.object.decay=this.decay,e.object.penumbra=this.penumbra,e.object.target=this.target.uuid,this.map&&this.map.isTexture&&(e.object.map=this.map.toJSON(t).uuid),e.object.shadow=this.shadow.toJSON(),e}},Lo=class extends ls{constructor(){super(new At(90,1,.5,500)),this.isPointLightShadow=!0}},Uo=class extends be{constructor(t,e,i=0,s=2){super(t,e),this.isPointLight=!0,this.type=\"PointLight\",this.distance=i,this.decay=s,this.shadow=new Lo}get power(){return this.intensity*4*Math.PI}set power(t){this.intensity=t/(4*Math.PI)}dispose(){super.dispose(),this.shadow.dispose()}copy(t,e){return super.copy(t,e),this.distance=t.distance,this.decay=t.decay,this.shadow=t.shadow.clone(),this}toJSON(t){let e=super.toJSON(t);return e.object.distance=this.distance,e.object.decay=this.decay,e.object.shadow=this.shadow.toJSON(),e}},Pn=class extends cs{constructor(t=-1,e=1,i=1,s=-1,n=.1,r=2e3){super(),this.isOrthographicCamera=!0,this.type=\"OrthographicCamera\",this.zoom=1,this.view=null,this.left=t,this.right=e,this.top=i,this.bottom=s,this.near=n,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=t.view===null?null:Object.assign({},t.view),this}setViewOffset(t,e,i,s,n,r){this.view===null&&(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=t,this.view.fullHeight=e,this.view.offsetX=i,this.view.offsetY=s,this.view.width=n,this.view.height=r,this.updateProjectionMatrix()}clearViewOffset(){this.view!==null&&(this.view.enabled=!1),this.updateProjectionMatrix()}updateProjectionMatrix(){let t=(this.right-this.left)/(2*this.zoom),e=(this.top-this.bottom)/(2*this.zoom),i=(this.right+this.left)/2,s=(this.top+this.bottom)/2,n=i-t,r=i+t,o=s+e,a=s-e;if(this.view!==null&&this.view.enabled){let l=(this.right-this.left)/this.view.fullWidth/this.zoom,c=(this.top-this.bottom)/this.view.fullHeight/this.zoom;n+=l*this.view.offsetX,r=n+l*this.view.width,o-=c*this.view.offsetY,a=o-c*this.view.height}this.projectionMatrix.makeOrthographic(n,r,o,a,this.near,this.far,this.coordinateSystem,this.reversedDepth),this.projectionMatrixInverse.copy(this.projectionMatrix).invert()}toJSON(t){let e=super.toJSON(t);return e.object.zoom=this.zoom,e.object.left=this.left,e.object.right=this.right,e.object.top=this.top,e.object.bottom=this.bottom,e.object.near=this.near,e.object.far=this.far,this.view!==null&&(e.object.view=Object.assign({},this.view)),e}},Wo=class extends ls{constructor(){super(new Pn(-5,5,5,-5,.5,500)),this.isDirectionalLightShadow=!0}},qo=class extends be{constructor(t,e){super(t,e),this.isDirectionalLight=!0,this.type=\"DirectionalLight\",this.position.copy(Y.DEFAULT_UP),this.updateMatrix(),this.target=new Y,this.shadow=new Wo}dispose(){super.dispose(),this.shadow.dispose()}copy(t){return super.copy(t),this.target=t.target.clone(),this.shadow=t.shadow.clone(),this}toJSON(t){let e=super.toJSON(t);return e.object.shadow=this.shadow.toJSON(),e.object.target=this.target.uuid,e}},Jo=class extends be{constructor(t,e){super(t,e),this.isAmbientLight=!0,this.type=\"AmbientLight\"}},Go=class extends be{constructor(t,e,i=10,s=10){super(t,e),this.isRectAreaLight=!0,this.type=\"RectAreaLight\",this.width=i,this.height=s}get power(){return this.intensity*this.width*this.height*Math.PI}set power(t){this.intensity=t/(this.width*this.height*Math.PI)}copy(t){return super.copy(t),this.width=t.width,this.height=t.height,this}toJSON(t){let e=super.toJSON(t);return e.object.width=this.width,e.object.height=this.height,e}},Rn=class{constructor(){this.isSphericalHarmonics3=!0,this.coefficients=[];for(let t=0;t<9;t++)this.coefficients.push(new M)}set(t){for(let e=0;e<9;e++)this.coefficients[e].copy(t[e]);return this}zero(){for(let t=0;t<9;t++)this.coefficients[t].set(0,0,0);return this}getAt(t,e){let i=t.x,s=t.y,n=t.z,r=this.coefficients;return e.copy(r[0]).multiplyScalar(.282095),e.addScaledVector(r[1],.488603*s),e.addScaledVector(r[2],.488603*n),e.addScaledVector(r[3],.488603*i),e.addScaledVector(r[4],1.092548*(i*s)),e.addScaledVector(r[5],1.092548*(s*n)),e.addScaledVector(r[6],.315392*(3*n*n-1)),e.addScaledVector(r[7],1.092548*(i*n)),e.addScaledVector(r[8],.546274*(i*i-s*s)),e}getIrradianceAt(t,e){let i=t.x,s=t.y,n=t.z,r=this.coefficients;return e.copy(r[0]).multiplyScalar(.886227),e.addScaledVector(r[1],2*.511664*s),e.addScaledVector(r[2],2*.511664*n),e.addScaledVector(r[3],2*.511664*i),e.addScaledVector(r[4],2*.429043*i*s),e.addScaledVector(r[5],2*.429043*s*n),e.addScaledVector(r[6],.743125*n*n-.247708),e.addScaledVector(r[7],2*.429043*i*n),e.addScaledVector(r[8],.429043*(i*i-s*s)),e}add(t){for(let e=0;e<9;e++)this.coefficients[e].add(t.coefficients[e]);return this}addScaledSH(t,e){for(let i=0;i<9;i++)this.coefficients[i].addScaledVector(t.coefficients[i],e);return this}scale(t){for(let e=0;e<9;e++)this.coefficients[e].multiplyScalar(t);return this}lerp(t,e){for(let i=0;i<9;i++)this.coefficients[i].lerp(t.coefficients[i],e);return this}equals(t){for(let e=0;e<9;e++)if(!this.coefficients[e].equals(t.coefficients[e]))return!1;return!0}copy(t){return this.set(t.coefficients)}clone(){return new this.constructor().copy(this)}fromArray(t,e=0){let i=this.coefficients;for(let s=0;s<9;s++)i[s].fromArray(t,e+s*3);return this}toArray(t=[],e=0){let i=this.coefficients;for(let s=0;s<9;s++)i[s].toArray(t,e+s*3);return t}static getBasisAt(t,e){let i=t.x,s=t.y,n=t.z;e[0]=.282095,e[1]=.488603*s,e[2]=.488603*n,e[3]=.488603*i,e[4]=1.092548*i*s,e[5]=1.092548*s*n,e[6]=.315392*(3*n*n-1),e[7]=1.092548*i*n,e[8]=.546274*(i*i-s*s)}},Xo=class extends be{constructor(t=new Rn,e=1){super(void 0,e),this.isLightProbe=!0,this.sh=t}copy(t){return super.copy(t),this.sh.copy(t.sh),this}toJSON(t){let e=super.toJSON(t);return e.object.sh=this.sh.toArray(),e}},Ho=class h extends _t{constructor(t){super(t),this.textures={}}load(t,e,i,s){let n=this,r=new se(n.manager);r.setPath(n.path),r.setRequestHeader(n.requestHeader),r.setWithCredentials(n.withCredentials),r.load(t,function(o){try{e(n.parse(JSON.parse(o)))}catch(a){s?s(a):Z(a),n.manager.itemError(t)}},i,s)}parse(t){let e=this.textures;function i(n){return e[n]===void 0&&N(\"MaterialLoader: Undefined texture\",n),e[n]}let s=this.createMaterialFromType(t.type);if(t.uuid!==void 0&&(s.uuid=t.uuid),t.name!==void 0&&(s.name=t.name),t.color!==void 0&&s.color!==void 0&&s.color.setHex(t.color),t.roughness!==void 0&&(s.roughness=t.roughness),t.metalness!==void 0&&(s.metalness=t.metalness),t.sheen!==void 0&&(s.sheen=t.sheen),t.sheenColor!==void 0&&(s.sheenColor=new U().setHex(t.sheenColor)),t.sheenRoughness!==void 0&&(s.sheenRoughness=t.sheenRoughness),t.emissive!==void 0&&s.emissive!==void 0&&s.emissive.setHex(t.emissive),t.specular!==void 0&&s.specular!==void 0&&s.specular.setHex(t.specular),t.specularIntensity!==void 0&&(s.specularIntensity=t.specularIntensity),t.specularColor!==void 0&&s.specularColor!==void 0&&s.specularColor.setHex(t.specularColor),t.shininess!==void 0&&(s.shininess=t.shininess),t.clearcoat!==void 0&&(s.clearcoat=t.clearcoat),t.clearcoatRoughness!==void 0&&(s.clearcoatRoughness=t.clearcoatRoughness),t.dispersion!==void 0&&(s.dispersion=t.dispersion),t.iridescence!==void 0&&(s.iridescence=t.iridescence),t.iridescenceIOR!==void 0&&(s.iridescenceIOR=t.iridescenceIOR),t.iridescenceThicknessRange!==void 0&&(s.iridescenceThicknessRange=t.iridescenceThicknessRange),t.transmission!==void 0&&(s.transmission=t.transmission),t.thickness!==void 0&&(s.thickness=t.thickness),t.attenuationDistance!==void 0&&(s.attenuationDistance=t.attenuationDistance),t.attenuationColor!==void 0&&s.attenuationColor!==void 0&&s.attenuationColor.setHex(t.attenuationColor),t.anisotropy!==void 0&&(s.anisotropy=t.anisotropy),t.anisotropyRotation!==void 0&&(s.anisotropyRotation=t.anisotropyRotation),t.fog!==void 0&&(s.fog=t.fog),t.flatShading!==void 0&&(s.flatShading=t.flatShading),t.blending!==void 0&&(s.blending=t.blending),t.combine!==void 0&&(s.combine=t.combine),t.side!==void 0&&(s.side=t.side),t.shadowSide!==void 0&&(s.shadowSide=t.shadowSide),t.opacity!==void 0&&(s.opacity=t.opacity),t.transparent!==void 0&&(s.transparent=t.transparent),t.alphaTest!==void 0&&(s.alphaTest=t.alphaTest),t.alphaHash!==void 0&&(s.alphaHash=t.alphaHash),t.depthFunc!==void 0&&(s.depthFunc=t.depthFunc),t.depthTest!==void 0&&(s.depthTest=t.depthTest),t.depthWrite!==void 0&&(s.depthWrite=t.depthWrite),t.colorWrite!==void 0&&(s.colorWrite=t.colorWrite),t.blendSrc!==void 0&&(s.blendSrc=t.blendSrc),t.blendDst!==void 0&&(s.blendDst=t.blendDst),t.blendEquation!==void 0&&(s.blendEquation=t.blendEquation),t.blendSrcAlpha!==void 0&&(s.blendSrcAlpha=t.blendSrcAlpha),t.blendDstAlpha!==void 0&&(s.blendDstAlpha=t.blendDstAlpha),t.blendEquationAlpha!==void 0&&(s.blendEquationAlpha=t.blendEquationAlpha),t.blendColor!==void 0&&s.blendColor!==void 0&&s.blendColor.setHex(t.blendColor),t.blendAlpha!==void 0&&(s.blendAlpha=t.blendAlpha),t.stencilWriteMask!==void 0&&(s.stencilWriteMask=t.stencilWriteMask),t.stencilFunc!==void 0&&(s.stencilFunc=t.stencilFunc),t.stencilRef!==void 0&&(s.stencilRef=t.stencilRef),t.stencilFuncMask!==void 0&&(s.stencilFuncMask=t.stencilFuncMask),t.stencilFail!==void 0&&(s.stencilFail=t.stencilFail),t.stencilZFail!==void 0&&(s.stencilZFail=t.stencilZFail),t.stencilZPass!==void 0&&(s.stencilZPass=t.stencilZPass),t.stencilWrite!==void 0&&(s.stencilWrite=t.stencilWrite),t.wireframe!==void 0&&(s.wireframe=t.wireframe),t.wireframeLinewidth!==void 0&&(s.wireframeLinewidth=t.wireframeLinewidth),t.wireframeLinecap!==void 0&&(s.wireframeLinecap=t.wireframeLinecap),t.wireframeLinejoin!==void 0&&(s.wireframeLinejoin=t.wireframeLinejoin),t.rotation!==void 0&&(s.rotation=t.rotation),t.linewidth!==void 0&&(s.linewidth=t.linewidth),t.dashSize!==void 0&&(s.dashSize=t.dashSize),t.gapSize!==void 0&&(s.gapSize=t.gapSize),t.scale!==void 0&&(s.scale=t.scale),t.polygonOffset!==void 0&&(s.polygonOffset=t.polygonOffset),t.polygonOffsetFactor!==void 0&&(s.polygonOffsetFactor=t.polygonOffsetFactor),t.polygonOffsetUnits!==void 0&&(s.polygonOffsetUnits=t.polygonOffsetUnits),t.dithering!==void 0&&(s.dithering=t.dithering),t.alphaToCoverage!==void 0&&(s.alphaToCoverage=t.alphaToCoverage),t.premultipliedAlpha!==void 0&&(s.premultipliedAlpha=t.premultipliedAlpha),t.forceSinglePass!==void 0&&(s.forceSinglePass=t.forceSinglePass),t.allowOverride!==void 0&&(s.allowOverride=t.allowOverride),t.visible!==void 0&&(s.visible=t.visible),t.toneMapped!==void 0&&(s.toneMapped=t.toneMapped),t.userData!==void 0&&(s.userData=t.userData),t.vertexColors!==void 0&&(typeof t.vertexColors==\"number\"?s.vertexColors=t.vertexColors>0:s.vertexColors=t.vertexColors),t.uniforms!==void 0)for(let n in t.uniforms){let r=t.uniforms[n];switch(s.uniforms[n]={},r.type){case\"t\":s.uniforms[n].value=i(r.value);break;case\"c\":s.uniforms[n].value=new U().setHex(r.value);break;case\"v2\":s.uniforms[n].value=new C().fromArray(r.value);break;case\"v3\":s.uniforms[n].value=new M().fromArray(r.value);break;case\"v4\":s.uniforms[n].value=new Nt().fromArray(r.value);break;case\"m3\":s.uniforms[n].value=new ee().fromArray(r.value);break;case\"m4\":s.uniforms[n].value=new q().fromArray(r.value);break;default:s.uniforms[n].value=r.value}}if(t.defines!==void 0&&(s.defines=t.defines),t.vertexShader!==void 0&&(s.vertexShader=t.vertexShader),t.fragmentShader!==void 0&&(s.fragmentShader=t.fragmentShader),t.glslVersion!==void 0&&(s.glslVersion=t.glslVersion),t.extensions!==void 0)for(let n in t.extensions)s.extensions[n]=t.extensions[n];if(t.lights!==void 0&&(s.lights=t.lights),t.clipping!==void 0&&(s.clipping=t.clipping),t.size!==void 0&&(s.size=t.size),t.sizeAttenuation!==void 0&&(s.sizeAttenuation=t.sizeAttenuation),t.map!==void 0&&(s.map=i(t.map)),t.matcap!==void 0&&(s.matcap=i(t.matcap)),t.alphaMap!==void 0&&(s.alphaMap=i(t.alphaMap)),t.bumpMap!==void 0&&(s.bumpMap=i(t.bumpMap)),t.bumpScale!==void 0&&(s.bumpScale=t.bumpScale),t.normalMap!==void 0&&(s.normalMap=i(t.normalMap)),t.normalMapType!==void 0&&(s.normalMapType=t.normalMapType),t.normalScale!==void 0){let n=t.normalScale;Array.isArray(n)===!1&&(n=[n,n]),s.normalScale=new C().fromArray(n)}return t.displacementMap!==void 0&&(s.displacementMap=i(t.displacementMap)),t.displacementScale!==void 0&&(s.displacementScale=t.displacementScale),t.displacementBias!==void 0&&(s.displacementBias=t.displacementBias),t.roughnessMap!==void 0&&(s.roughnessMap=i(t.roughnessMap)),t.metalnessMap!==void 0&&(s.metalnessMap=i(t.metalnessMap)),t.emissiveMap!==void 0&&(s.emissiveMap=i(t.emissiveMap)),t.emissiveIntensity!==void 0&&(s.emissiveIntensity=t.emissiveIntensity),t.specularMap!==void 0&&(s.specularMap=i(t.specularMap)),t.specularIntensityMap!==void 0&&(s.specularIntensityMap=i(t.specularIntensityMap)),t.specularColorMap!==void 0&&(s.specularColorMap=i(t.specularColorMap)),t.envMap!==void 0&&(s.envMap=i(t.envMap)),t.envMapRotation!==void 0&&s.envMapRotation.fromArray(t.envMapRotation),t.envMapIntensity!==void 0&&(s.envMapIntensity=t.envMapIntensity),t.reflectivity!==void 0&&(s.reflectivity=t.reflectivity),t.refractionRatio!==void 0&&(s.refractionRatio=t.refractionRatio),t.lightMap!==void 0&&(s.lightMap=i(t.lightMap)),t.lightMapIntensity!==void 0&&(s.lightMapIntensity=t.lightMapIntensity),t.aoMap!==void 0&&(s.aoMap=i(t.aoMap)),t.aoMapIntensity!==void 0&&(s.aoMapIntensity=t.aoMapIntensity),t.gradientMap!==void 0&&(s.gradientMap=i(t.gradientMap)),t.clearcoatMap!==void 0&&(s.clearcoatMap=i(t.clearcoatMap)),t.clearcoatRoughnessMap!==void 0&&(s.clearcoatRoughnessMap=i(t.clearcoatRoughnessMap)),t.clearcoatNormalMap!==void 0&&(s.clearcoatNormalMap=i(t.clearcoatNormalMap)),t.clearcoatNormalScale!==void 0&&(s.clearcoatNormalScale=new C().fromArray(t.clearcoatNormalScale)),t.iridescenceMap!==void 0&&(s.iridescenceMap=i(t.iridescenceMap)),t.iridescenceThicknessMap!==void 0&&(s.iridescenceThicknessMap=i(t.iridescenceThicknessMap)),t.transmissionMap!==void 0&&(s.transmissionMap=i(t.transmissionMap)),t.thicknessMap!==void 0&&(s.thicknessMap=i(t.thicknessMap)),t.anisotropyMap!==void 0&&(s.anisotropyMap=i(t.anisotropyMap)),t.sheenColorMap!==void 0&&(s.sheenColorMap=i(t.sheenColorMap)),t.sheenRoughnessMap!==void 0&&(s.sheenRoughnessMap=i(t.sheenRoughnessMap)),s}setTextures(t){return this.textures=t,this}createMaterialFromType(t){return h.createMaterialFromType(t)}static createMaterialFromType(t){let e={ShadowMaterial:wo,SpriteMaterial:dn,RawShaderMaterial:Mo,ShaderMaterial:Cn,PointsMaterial:yn,MeshPhysicalMaterial:_o,MeshStandardMaterial:zn,MeshPhongMaterial:vo,MeshToonMaterial:So,MeshNormalMaterial:Ao,MeshLambertMaterial:To,MeshDepthMaterial:Io,MeshDistanceMaterial:Co,MeshBasicMaterial:Fe,MeshMatcapMaterial:zo,LineDashedMaterial:Fo,LineBasicMaterial:bt,Material:ft};return new e[t]}},On=class{static extractUrlBase(t){let e=t.lastIndexOf(\"/\");return e===-1?\"./\":t.slice(0,e+1)}static resolveURL(t,e){return typeof t!=\"string\"||t===\"\"?\"\":(/^https?:\\/\\//i.test(e)&&/^\\//.test(t)&&(e=e.replace(/(^https?:\\/\\/[^\\/]+).*/i,\"$1\")),/^(https?:)?\\/\\//i.test(t)||/^data:.*,.*$/i.test(t)||/^blob:.*$/i.test(t)?t:e+t)}},Zo=class extends G{constructor(){super(),this.isInstancedBufferGeometry=!0,this.type=\"InstancedBufferGeometry\",this.instanceCount=1/0}copy(t){return super.copy(t),this.instanceCount=t.instanceCount,this}toJSON(){let t=super.toJSON();return t.instanceCount=this.instanceCount,t.isInstancedBufferGeometry=!0,t}},Yo=class extends _t{constructor(t){super(t)}load(t,e,i,s){let n=this,r=new se(n.manager);r.setPath(n.path),r.setRequestHeader(n.requestHeader),r.setWithCredentials(n.withCredentials),r.load(t,function(o){try{e(n.parse(JSON.parse(o)))}catch(a){s?s(a):Z(a),n.manager.itemError(t)}},i,s)}parse(t){let e={},i={};function s(p,f){if(e[f]!==void 0)return e[f];let g=p.interleavedBuffers[f],y=n(p,g.buffer),x=Si(g.type,y),b=new es(x,g.stride);return b.uuid=g.uuid,e[f]=b,b}function n(p,f){if(i[f]!==void 0)return i[f];let g=p.arrayBuffers[f],y=new Uint32Array(g).buffer;return i[f]=y,y}let r=t.isInstancedBufferGeometry?new Zo:new G,o=t.data.index;if(o!==void 0){let p=Si(o.type,o.array);r.setIndex(new j(p,1))}let a=t.data.attributes;for(let p in a){let f=a[p],m;if(f.isInterleavedBufferAttribute){let g=s(t.data,f.data);m=new Ci(g,f.itemSize,f.offset,f.normalized)}else{let g=Si(f.type,f.array),y=f.isInstancedBufferAttribute?$e:j;m=new y(g,f.itemSize,f.normalized)}f.name!==void 0&&(m.name=f.name),f.usage!==void 0&&m.setUsage(f.usage),r.setAttribute(p,m)}let l=t.data.morphAttributes;if(l)for(let p in l){let f=l[p],m=[];for(let g=0,y=f.length;g<y;g++){let x=f[g],b;if(x.isInterleavedBufferAttribute){let w=s(t.data,x.data);b=new Ci(w,x.itemSize,x.offset,x.normalized)}else{let w=Si(x.type,x.array);b=new j(w,x.itemSize,x.normalized)}x.name!==void 0&&(b.name=x.name),m.push(b)}r.morphAttributes[p]=m}t.data.morphTargetsRelative&&(r.morphTargetsRelative=!0);let u=t.data.groups||t.data.drawcalls||t.data.offsets;if(u!==void 0)for(let p=0,f=u.length;p!==f;++p){let m=u[p];r.addGroup(m.start,m.count,m.materialIndex)}let d=t.data.boundingSphere;return d!==void 0&&(r.boundingSphere=new ut().fromJSON(d)),t.name&&(r.name=t.name),t.userData&&(r.userData=t.userData),r}},Qh=class extends _t{constructor(t){super(t)}load(t,e,i,s){let n=this,r=this.path===\"\"?On.extractUrlBase(t):this.path;this.resourcePath=this.resourcePath||r;let o=new se(this.manager);o.setPath(this.path),o.setRequestHeader(this.requestHeader),o.setWithCredentials(this.withCredentials),o.load(t,function(a){let l=null;try{l=JSON.parse(a)}catch(u){s!==void 0&&s(u),u(\"ObjectLoader: Can't parse \"+t+\".\",u.message);return}let c=l.metadata;if(c===void 0||c.type===void 0||c.type.toLowerCase()===\"geometry\"){s!==void 0&&s(new Error(\"THREE.ObjectLoader: Can't load \"+t)),Z(\"ObjectLoader: Can't load \"+t);return}n.parse(l,e)},i,s)}async loadAsync(t,e){let i=this,s=this.path===\"\"?On.extractUrlBase(t):this.path;this.resourcePath=this.resourcePath||s;let n=new se(this.manager);n.setPath(this.path),n.setRequestHeader(this.requestHeader),n.setWithCredentials(this.withCredentials);let r=await n.loadAsync(t,e),o;try{o=JSON.parse(r)}catch(l){throw new Error(\"ObjectLoader: Can't parse \"+t+\". \"+l.message)}let a=o.metadata;if(a===void 0||a.type===void 0||a.type.toLowerCase()===\"geometry\")throw new Error(\"THREE.ObjectLoader: Can't load \"+t);return await i.parseAsync(o)}parse(t,e){let i=this.parseAnimations(t.animations),s=this.parseShapes(t.shapes),n=this.parseGeometries(t.geometries,s),r=this.parseImages(t.images,function(){e!==void 0&&e(l)}),o=this.parseTextures(t.textures,r),a=this.parseMaterials(t.materials,o),l=this.parseObject(t.object,n,a,o,i),c=this.parseSkeletons(t.skeletons,l);if(this.bindSkeletons(l,c),this.bindLightTargets(l),e!==void 0){let u=!1;for(let d in r)if(r[d].data instanceof HTMLImageElement){u=!0;break}u===!1&&e(l)}return l}async parseAsync(t){let e=this.parseAnimations(t.animations),i=this.parseShapes(t.shapes),s=this.parseGeometries(t.geometries,i),n=await this.parseImagesAsync(t.images),r=this.parseTextures(t.textures,n),o=this.parseMaterials(t.materials,r),a=this.parseObject(t.object,s,o,r,e),l=this.parseSkeletons(t.skeletons,a);return this.bindSkeletons(a,l),this.bindLightTargets(a),a}parseShapes(t){let e={};if(t!==void 0)for(let i=0,s=t.length;i<s;i++){let n=new Ce().fromJSON(t[i]);e[n.uuid]=n}return e}parseSkeletons(t,e){let i={},s={};if(e.traverse(function(n){n.isBone&&(s[n.uuid]=n)}),t!==void 0)for(let n=0,r=t.length;n<r;n++){let o=new Dr().fromJSON(t[n],s);i[o.uuid]=o}return i}parseGeometries(t,e){let i={};if(t!==void 0){let s=new Yo;for(let n=0,r=t.length;n<r;n++){let o,a=t[n];switch(a.type){case\"BufferGeometry\":case\"InstancedBufferGeometry\":o=s.parse(a);break;default:a.type in Lh?o=Lh[a.type].fromJSON(a,e):N(`ObjectLoader: Unsupported geometry type \"${a.type}\"`)}o.uuid=a.uuid,a.name!==void 0&&(o.name=a.name),a.userData!==void 0&&(o.userData=a.userData),i[a.uuid]=o}}return i}parseMaterials(t,e){let i={},s={};if(t!==void 0){let n=new Ho;n.setTextures(e);for(let r=0,o=t.length;r<o;r++){let a=t[r];i[a.uuid]===void 0&&(i[a.uuid]=n.parse(a)),s[a.uuid]=i[a.uuid]}}return s}parseAnimations(t){let e={};if(t!==void 0)for(let i=0;i<t.length;i++){let s=t[i],n=Pi.parse(s);e[n.uuid]=n}return e}parseImages(t,e){let i=this,s={},n;function r(a){return i.manager.itemStart(a),n.load(a,function(){i.manager.itemEnd(a)},void 0,function(){i.manager.itemError(a),i.manager.itemEnd(a)})}function o(a){if(typeof a==\"string\"){let l=a,c=/^(\\/\\/)|([a-z]+:(\\/\\/)?)/i.test(l)?l:i.resourcePath+l;return r(c)}else return a.data?{data:Si(a.type,a.data),width:a.width,height:a.height}:null}if(t!==void 0&&t.length>0){let a=new kn(e);n=new Ri(a),n.setCrossOrigin(this.crossOrigin);for(let l=0,c=t.length;l<c;l++){let u=t[l],d=u.url;if(Array.isArray(d)){let p=[];for(let f=0,m=d.length;f<m;f++){let g=d[f],y=o(g);y!==null&&(y instanceof HTMLImageElement?p.push(y):p.push(new Xt(y.data,y.width,y.height)))}s[u.uuid]=new me(p)}else{let p=o(u.url);s[u.uuid]=new me(p)}}}return s}async parseImagesAsync(t){let e=this,i={},s;async function n(r){if(typeof r==\"string\"){let o=r,a=/^(\\/\\/)|([a-z]+:(\\/\\/)?)/i.test(o)?o:e.resourcePath+o;return await s.loadAsync(a)}else return r.data?{data:Si(r.type,r.data),width:r.width,height:r.height}:null}if(t!==void 0&&t.length>0){s=new Ri(this.manager),s.setCrossOrigin(this.crossOrigin);for(let r=0,o=t.length;r<o;r++){let a=t[r],l=a.url;if(Array.isArray(l)){let c=[];for(let u=0,d=l.length;u<d;u++){let p=l[u],f=await n(p);f!==null&&(f instanceof HTMLImageElement?c.push(f):c.push(new Xt(f.data,f.width,f.height)))}i[a.uuid]=new me(c)}else{let c=await n(a.url);i[a.uuid]=new me(c)}}}return i}parseTextures(t,e){function i(n,r){return typeof n==\"number\"?n:(N(\"ObjectLoader.parseTexture: Constant should be in numeric form.\",n),r[n])}let s={};if(t!==void 0)for(let n=0,r=t.length;n<r;n++){let o=t[n];o.image===void 0&&N('ObjectLoader: No \"image\" specified for',o.uuid),e[o.image]===void 0&&N(\"ObjectLoader: Undefined image\",o.image);let a=e[o.image],l=a.data,c;Array.isArray(l)?(c=new gn,l.length===6&&(c.needsUpdate=!0)):(l&&l.data?c=new Xt:c=new dt,l&&(c.needsUpdate=!0)),c.source=a,c.uuid=o.uuid,o.name!==void 0&&(c.name=o.name),o.mapping!==void 0&&(c.mapping=i(o.mapping,ep)),o.channel!==void 0&&(c.channel=o.channel),o.offset!==void 0&&c.offset.fromArray(o.offset),o.repeat!==void 0&&c.repeat.fromArray(o.repeat),o.center!==void 0&&c.center.fromArray(o.center),o.rotation!==void 0&&(c.rotation=o.rotation),o.wrap!==void 0&&(c.wrapS=i(o.wrap[0],Kh),c.wrapT=i(o.wrap[1],Kh)),o.format!==void 0&&(c.format=o.format),o.internalFormat!==void 0&&(c.internalFormat=o.internalFormat),o.type!==void 0&&(c.type=o.type),o.colorSpace!==void 0&&(c.colorSpace=o.colorSpace),o.minFilter!==void 0&&(c.minFilter=i(o.minFilter,tl)),o.magFilter!==void 0&&(c.magFilter=i(o.magFilter,tl)),o.anisotropy!==void 0&&(c.anisotropy=o.anisotropy),o.flipY!==void 0&&(c.flipY=o.flipY),o.generateMipmaps!==void 0&&(c.generateMipmaps=o.generateMipmaps),o.premultiplyAlpha!==void 0&&(c.premultiplyAlpha=o.premultiplyAlpha),o.unpackAlignment!==void 0&&(c.unpackAlignment=o.unpackAlignment),o.compareFunction!==void 0&&(c.compareFunction=o.compareFunction),o.userData!==void 0&&(c.userData=o.userData),s[o.uuid]=c}return s}parseObject(t,e,i,s,n){let r;function o(d){return e[d]===void 0&&N(\"ObjectLoader: Undefined geometry\",d),e[d]}function a(d){if(d!==void 0){if(Array.isArray(d)){let p=[];for(let f=0,m=d.length;f<m;f++){let g=d[f];i[g]===void 0&&N(\"ObjectLoader: Undefined material\",g),p.push(i[g])}return p}return i[d]===void 0&&N(\"ObjectLoader: Undefined material\",d),i[d]}}function l(d){return s[d]===void 0&&N(\"ObjectLoader: Undefined texture\",d),s[d]}let c,u;switch(t.type){case\"Scene\":r=new Pr,t.background!==void 0&&(Number.isInteger(t.background)?r.background=new U(t.background):r.background=l(t.background)),t.environment!==void 0&&(r.environment=l(t.environment)),t.fog!==void 0&&(t.fog.type===\"Fog\"?r.fog=new kr(t.fog.color,t.fog.near,t.fog.far):t.fog.type===\"FogExp2\"&&(r.fog=new Br(t.fog.color,t.fog.density)),t.fog.name!==\"\"&&(r.fog.name=t.fog.name)),t.backgroundBlurriness!==void 0&&(r.backgroundBlurriness=t.backgroundBlurriness),t.backgroundIntensity!==void 0&&(r.backgroundIntensity=t.backgroundIntensity),t.backgroundRotation!==void 0&&r.backgroundRotation.fromArray(t.backgroundRotation),t.environmentIntensity!==void 0&&(r.environmentIntensity=t.environmentIntensity),t.environmentRotation!==void 0&&r.environmentRotation.fromArray(t.environmentRotation);break;case\"PerspectiveCamera\":r=new At(t.fov,t.aspect,t.near,t.far),t.focus!==void 0&&(r.focus=t.focus),t.zoom!==void 0&&(r.zoom=t.zoom),t.filmGauge!==void 0&&(r.filmGauge=t.filmGauge),t.filmOffset!==void 0&&(r.filmOffset=t.filmOffset),t.view!==void 0&&(r.view=Object.assign({},t.view));break;case\"OrthographicCamera\":r=new Pn(t.left,t.right,t.top,t.bottom,t.near,t.far),t.zoom!==void 0&&(r.zoom=t.zoom),t.view!==void 0&&(r.view=Object.assign({},t.view));break;case\"AmbientLight\":r=new Jo(t.color,t.intensity);break;case\"DirectionalLight\":r=new qo(t.color,t.intensity),r.target=t.target||\"\";break;case\"PointLight\":r=new Uo(t.color,t.intensity,t.distance,t.decay);break;case\"RectAreaLight\":r=new Go(t.color,t.intensity,t.width,t.height);break;case\"SpotLight\":r=new Do(t.color,t.intensity,t.distance,t.angle,t.penumbra,t.decay),r.target=t.target||\"\";break;case\"HemisphereLight\":r=new No(t.color,t.groundColor,t.intensity);break;case\"LightProbe\":let d=new Rn().fromArray(t.sh);r=new Xo(d,t.intensity);break;case\"SkinnedMesh\":c=o(t.geometry),u=a(t.material),r=new Vr(c,u),t.bindMode!==void 0&&(r.bindMode=t.bindMode),t.bindMatrix!==void 0&&r.bindMatrix.fromArray(t.bindMatrix),t.skeleton!==void 0&&(r.skeleton=t.skeleton);break;case\"Mesh\":c=o(t.geometry),u=a(t.material),r=new Vt(c,u);break;case\"InstancedMesh\":c=o(t.geometry),u=a(t.material);let p=t.count,f=t.instanceMatrix,m=t.instanceColor;r=new Lr(c,u,p),r.instanceMatrix=new $e(new Float32Array(f.array),16),m!==void 0&&(r.instanceColor=new $e(new Float32Array(m.array),m.itemSize));break;case\"BatchedMesh\":c=o(t.geometry),u=a(t.material),r=new qr(t.maxInstanceCount,t.maxVertexCount,t.maxIndexCount,u),r.geometry=c,r.perObjectFrustumCulled=t.perObjectFrustumCulled,r.sortObjects=t.sortObjects,r._drawRanges=t.drawRanges,r._reservedRanges=t.reservedRanges,r._geometryInfo=t.geometryInfo.map(g=>{let y=null,x=null;return g.boundingBox!==void 0&&(y=new pt().fromJSON(g.boundingBox)),g.boundingSphere!==void 0&&(x=new ut().fromJSON(g.boundingSphere)),{...g,boundingBox:y,boundingSphere:x}}),r._instanceInfo=t.instanceInfo,r._availableInstanceIds=t._availableInstanceIds,r._availableGeometryIds=t._availableGeometryIds,r._nextIndexStart=t.nextIndexStart,r._nextVertexStart=t.nextVertexStart,r._geometryCount=t.geometryCount,r._maxInstanceCount=t.maxInstanceCount,r._maxVertexCount=t.maxVertexCount,r._maxIndexCount=t.maxIndexCount,r._geometryInitialized=t.geometryInitialized,r._matricesTexture=l(t.matricesTexture.uuid),r._indirectTexture=l(t.indirectTexture.uuid),t.colorsTexture!==void 0&&(r._colorsTexture=l(t.colorsTexture.uuid)),t.boundingSphere!==void 0&&(r.boundingSphere=new ut().fromJSON(t.boundingSphere)),t.boundingBox!==void 0&&(r.boundingBox=new pt().fromJSON(t.boundingBox));break;case\"LOD\":r=new Nr;break;case\"Line\":r=new xe(o(t.geometry),a(t.material));break;case\"LineLoop\":r=new Jr(o(t.geometry),a(t.material));break;case\"LineSegments\":r=new Ht(o(t.geometry),a(t.material));break;case\"PointCloud\":case\"Points\":r=new Xr(o(t.geometry),a(t.material));break;case\"Sprite\":r=new Er(a(t.material));break;case\"Group\":r=new Xe;break;case\"Bone\":r=new pn;break;default:r=new Y}if(r.uuid=t.uuid,t.name!==void 0&&(r.name=t.name),t.matrix!==void 0?(r.matrix.fromArray(t.matrix),t.matrixAutoUpdate!==void 0&&(r.matrixAutoUpdate=t.matrixAutoUpdate),r.matrixAutoUpdate&&r.matrix.decompose(r.position,r.quaternion,r.scale)):(t.position!==void 0&&r.position.fromArray(t.position),t.rotation!==void 0&&r.rotation.fromArray(t.rotation),t.quaternion!==void 0&&r.quaternion.fromArray(t.quaternion),t.scale!==void 0&&r.scale.fromArray(t.scale)),t.up!==void 0&&r.up.fromArray(t.up),t.pivot!==void 0&&(r.pivot=new M().fromArray(t.pivot)),t.morphTargetDictionary!==void 0&&(r.morphTargetDictionary=Object.assign({},t.morphTargetDictionary)),t.morphTargetInfluences!==void 0&&(r.morphTargetInfluences=t.morphTargetInfluences.slice()),t.castShadow!==void 0&&(r.castShadow=t.castShadow),t.receiveShadow!==void 0&&(r.receiveShadow=t.receiveShadow),t.shadow&&(t.shadow.intensity!==void 0&&(r.shadow.intensity=t.shadow.intensity),t.shadow.bias!==void 0&&(r.shadow.bias=t.shadow.bias),t.shadow.normalBias!==void 0&&(r.shadow.normalBias=t.shadow.normalBias),t.shadow.radius!==void 0&&(r.shadow.radius=t.shadow.radius),t.shadow.mapSize!==void 0&&r.shadow.mapSize.fromArray(t.shadow.mapSize),t.shadow.camera!==void 0&&(r.shadow.camera=this.parseObject(t.shadow.camera))),t.visible!==void 0&&(r.visible=t.visible),t.frustumCulled!==void 0&&(r.frustumCulled=t.frustumCulled),t.renderOrder!==void 0&&(r.renderOrder=t.renderOrder),t.static!==void 0&&(r.static=t.static),t.userData!==void 0&&(r.userData=t.userData),t.layers!==void 0&&(r.layers.mask=t.layers),t.children!==void 0){let d=t.children;for(let p=0;p<d.length;p++)r.add(this.parseObject(d[p],e,i,s,n))}if(t.animations!==void 0){let d=t.animations;for(let p=0;p<d.length;p++){let f=d[p];r.animations.push(n[f])}}if(t.type===\"LOD\"){t.autoUpdate!==void 0&&(r.autoUpdate=t.autoUpdate);let d=t.levels;for(let p=0;p<d.length;p++){let f=d[p],m=r.getObjectByProperty(\"uuid\",f.object);m!==void 0&&r.addLevel(m,f.distance,f.hysteresis)}}return r}bindSkeletons(t,e){Object.keys(e).length!==0&&t.traverse(function(i){if(i.isSkinnedMesh===!0&&i.skeleton!==void 0){let s=e[i.skeleton];s===void 0?N(\"ObjectLoader: No skeleton found with UUID:\",i.skeleton):i.bind(s,i.bindMatrix)}})}bindLightTargets(t){t.traverse(function(e){if(e.isDirectionalLight||e.isSpotLight){let i=e.target,s=t.getObjectByProperty(\"uuid\",i);s!==void 0?e.target=s:e.target=new Y}})}},ep={UVMapping:sa,CubeReflectionMapping:Nn,CubeRefractionMapping:bc,EquirectangularReflectionMapping:wc,EquirectangularRefractionMapping:Mc,CubeUVReflectionMapping:_c},Kh={RepeatWrapping:Ar,ClampToEdgeWrapping:jt,MirroredRepeatWrapping:Tr},tl={NearestFilter:kt,NearestMipmapNearestFilter:vc,NearestMipmapLinearFilter:Sc,LinearFilter:Gt,LinearMipmapNearestFilter:Ac,LinearMipmapLinearFilter:na},br=new WeakMap,el=class extends _t{constructor(t){super(t),this.isImageBitmapLoader=!0,typeof createImageBitmap>\"u\"&&N(\"ImageBitmapLoader: createImageBitmap() not supported.\"),typeof fetch>\"u\"&&N(\"ImageBitmapLoader: fetch() not supported.\"),this.options={premultiplyAlpha:\"none\"},this._abortController=new AbortController}setOptions(t){return this.options=t,this}load(t,e,i,s){t===void 0&&(t=\"\"),this.path!==void 0&&(t=this.path+t),t=this.manager.resolveURL(t);let n=this,r=ye.get(`image-bitmap:${t}`);if(r!==void 0){if(n.manager.itemStart(t),r.then){r.then(l=>{if(br.has(r)===!0)s&&s(br.get(r)),n.manager.itemError(t),n.manager.itemEnd(t);else return e&&e(l),n.manager.itemEnd(t),l});return}return setTimeout(function(){e&&e(r),n.manager.itemEnd(t)},0),r}let o={};o.credentials=this.crossOrigin===\"anonymous\"?\"same-origin\":\"include\",o.headers=this.requestHeader,o.signal=typeof AbortSignal.any==\"function\"?AbortSignal.any([this._abortController.signal,this.manager.abortController.signal]):this._abortController.signal;let a=fetch(t,o).then(function(l){return l.blob()}).then(function(l){return createImageBitmap(l,Object.assign(n.options,{colorSpaceConversion:\"none\"}))}).then(function(l){return ye.add(`image-bitmap:${t}`,l),e&&e(l),n.manager.itemEnd(t),l}).catch(function(l){s&&s(l),br.set(a,l),ye.remove(`image-bitmap:${t}`),n.manager.itemError(t),n.manager.itemEnd(t)});ye.add(`image-bitmap:${t}`,a),n.manager.itemStart(t)}abort(){return this._abortController.abort(),this._abortController=new AbortController,this}},Ys,En=class{static getContext(){return Ys===void 0&&(Ys=new(window.AudioContext||window.webkitAudioContext)),Ys}static setContext(t){Ys=t}},il=class extends _t{constructor(t){super(t)}load(t,e,i,s){let n=this,r=new se(this.manager);r.setResponseType(\"arraybuffer\"),r.setPath(this.path),r.setRequestHeader(this.requestHeader),r.setWithCredentials(this.withCredentials),r.load(t,function(a){try{let l=a.slice(0);En.getContext().decodeAudioData(l,function(u){e(u)}).catch(o)}catch(l){o(l)}},i,s);function o(a){s?s(a):Z(a),n.manager.itemError(t)}}},sl=new q,nl=new q,Le=new q,rl=class{constructor(){this.type=\"StereoCamera\",this.aspect=1,this.eyeSep=.064,this.cameraL=new At,this.cameraL.layers.enable(1),this.cameraL.matrixAutoUpdate=!1,this.cameraR=new At,this.cameraR.layers.enable(2),this.cameraR.matrixAutoUpdate=!1,this._cache={focus:null,fov:null,aspect:null,near:null,far:null,zoom:null,eyeSep:null}}update(t){let e=this._cache;if(e.focus!==t.focus||e.fov!==t.fov||e.aspect!==t.aspect*this.aspect||e.near!==t.near||e.far!==t.far||e.zoom!==t.zoom||e.eyeSep!==this.eyeSep){e.focus=t.focus,e.fov=t.fov,e.aspect=t.aspect*this.aspect,e.near=t.near,e.far=t.far,e.zoom=t.zoom,e.eyeSep=this.eyeSep,Le.copy(t.projectionMatrix);let s=e.eyeSep/2,n=s*e.near/e.focus,r=e.near*Math.tan(Ze*e.fov*.5)/e.zoom,o,a;nl.elements[12]=-s,sl.elements[12]=s,o=-r*e.aspect+n,a=r*e.aspect+n,Le.elements[0]=2*e.near/(a-o),Le.elements[8]=(a+o)/(a-o),this.cameraL.projectionMatrix.copy(Le),o=-r*e.aspect-n,a=r*e.aspect-n,Le.elements[0]=2*e.near/(a-o),Le.elements[8]=(a+o)/(a-o),this.cameraR.projectionMatrix.copy(Le)}this.cameraL.matrixWorld.copy(t.matrixWorld).multiply(nl),this.cameraR.matrixWorld.copy(t.matrixWorld).multiply(sl)}},xi=-90,bi=1,ol=class extends Y{constructor(t,e,i){super(),this.type=\"CubeCamera\",this.renderTarget=i,this.coordinateSystem=null,this.activeMipmapLevel=0;let s=new At(xi,bi,t,e);s.layers=this.layers,this.add(s);let n=new At(xi,bi,t,e);n.layers=this.layers,this.add(n);let r=new At(xi,bi,t,e);r.layers=this.layers,this.add(r);let o=new At(xi,bi,t,e);o.layers=this.layers,this.add(o);let a=new At(xi,bi,t,e);a.layers=this.layers,this.add(a);let l=new At(xi,bi,t,e);l.layers=this.layers,this.add(l)}updateCoordinateSystem(){let t=this.coordinateSystem,e=this.children.concat(),[i,s,n,r,o,a]=e;for(let l of e)this.remove(l);if(t===Qt)i.up.set(0,1,0),i.lookAt(1,0,0),s.up.set(0,1,0),s.lookAt(-1,0,0),n.up.set(0,0,-1),n.lookAt(0,1,0),r.up.set(0,0,1),r.lookAt(0,-1,0),o.up.set(0,1,0),o.lookAt(0,0,1),a.up.set(0,1,0),a.lookAt(0,0,-1);else if(t===Ii)i.up.set(0,-1,0),i.lookAt(-1,0,0),s.up.set(0,-1,0),s.lookAt(1,0,0),n.up.set(0,0,1),n.lookAt(0,1,0),r.up.set(0,0,-1),r.lookAt(0,-1,0),o.up.set(0,-1,0),o.lookAt(0,0,1),a.up.set(0,-1,0),a.lookAt(0,0,-1);else throw new Error(\"THREE.CubeCamera.updateCoordinateSystem(): Invalid coordinate system: \"+t);for(let l of e)this.add(l),l.updateMatrixWorld()}update(t,e){this.parent===null&&this.updateMatrixWorld();let{renderTarget:i,activeMipmapLevel:s}=this;this.coordinateSystem!==t.coordinateSystem&&(this.coordinateSystem=t.coordinateSystem,this.updateCoordinateSystem());let[n,r,o,a,l,c]=this.children,u=t.getRenderTarget(),d=t.getActiveCubeFace(),p=t.getActiveMipmapLevel(),f=t.xr.enabled;t.xr.enabled=!1;let m=i.texture.generateMipmaps;i.texture.generateMipmaps=!1;let g=!1;t.isWebGLRenderer===!0?g=t.state.buffers.depth.getReversed():g=t.reversedDepthBuffer,t.setRenderTarget(i,0,s),g&&t.autoClear===!1&&t.clearDepth(),t.render(e,n),t.setRenderTarget(i,1,s),g&&t.autoClear===!1&&t.clearDepth(),t.render(e,r),t.setRenderTarget(i,2,s),g&&t.autoClear===!1&&t.clearDepth(),t.render(e,o),t.setRenderTarget(i,3,s),g&&t.autoClear===!1&&t.clearDepth(),t.render(e,a),t.setRenderTarget(i,4,s),g&&t.autoClear===!1&&t.clearDepth(),t.render(e,l),i.texture.generateMipmaps=m,t.setRenderTarget(i,5,s),g&&t.autoClear===!1&&t.clearDepth(),t.render(e,c),t.setRenderTarget(u,d,p),t.xr.enabled=f,i.texture.needsPMREMUpdate=!0}},al=class extends At{constructor(t=[]){super(),this.isArrayCamera=!0,this.isMultiViewCamera=!1,this.cameras=t}},$o=class{constructor(){this._previousTime=0,this._currentTime=0,this._startTime=performance.now(),this._delta=0,this._elapsed=0,this._timescale=1,this._document=null,this._pageVisibilityHandler=null}connect(t){this._document=t,t.hidden!==void 0&&(this._pageVisibilityHandler=ip.bind(this),t.addEventListener(\"visibilitychange\",this._pageVisibilityHandler,!1))}disconnect(){this._pageVisibilityHandler!==null&&(this._document.removeEventListener(\"visibilitychange\",this._pageVisibilityHandler),this._pageVisibilityHandler=null),this._document=null}getDelta(){return this._delta/1e3}getElapsed(){return this._elapsed/1e3}getTimescale(){return this._timescale}setTimescale(t){return this._timescale=t,this}reset(){return this._currentTime=performance.now()-this._startTime,this}dispose(){this.disconnect()}update(t){return this._pageVisibilityHandler!==null&&this._document.hidden===!0?this._delta=0:(this._previousTime=this._currentTime,this._currentTime=(t!==void 0?t:performance.now())-this._startTime,this._delta=(this._currentTime-this._previousTime)*this._timescale,this._elapsed+=this._delta),this}};function ip(){this._document.hidden===!1&&this.reset()}var Ue=new M,wr=new xt,sp=new M,We=new M,qe=new M,hl=class extends Y{constructor(){super(),this.type=\"AudioListener\",this.context=En.getContext(),this.gain=this.context.createGain(),this.gain.connect(this.context.destination),this.filter=null,this.timeDelta=0,this._timer=new $o}getInput(){return this.gain}removeFilter(){return this.filter!==null&&(this.gain.disconnect(this.filter),this.filter.disconnect(this.context.destination),this.gain.connect(this.context.destination),this.filter=null),this}getFilter(){return this.filter}setFilter(t){return this.filter!==null?(this.gain.disconnect(this.filter),this.filter.disconnect(this.context.destination)):this.gain.disconnect(this.context.destination),this.filter=t,this.gain.connect(this.filter),this.filter.connect(this.context.destination),this}getMasterVolume(){return this.gain.gain.value}setMasterVolume(t){return this.gain.gain.setTargetAtTime(t,this.context.currentTime,.01),this}updateMatrixWorld(t){super.updateMatrixWorld(t),this._timer.update();let e=this.context.listener;if(this.timeDelta=this._timer.getDelta(),this.matrixWorld.decompose(Ue,wr,sp),We.set(0,0,-1).applyQuaternion(wr),qe.set(0,1,0).applyQuaternion(wr),e.positionX){let i=this.context.currentTime+this.timeDelta;e.positionX.linearRampToValueAtTime(Ue.x,i),e.positionY.linearRampToValueAtTime(Ue.y,i),e.positionZ.linearRampToValueAtTime(Ue.z,i),e.forwardX.linearRampToValueAtTime(We.x,i),e.forwardY.linearRampToValueAtTime(We.y,i),e.forwardZ.linearRampToValueAtTime(We.z,i),e.upX.linearRampToValueAtTime(qe.x,i),e.upY.linearRampToValueAtTime(qe.y,i),e.upZ.linearRampToValueAtTime(qe.z,i)}else e.setPosition(Ue.x,Ue.y,Ue.z),e.setOrientation(We.x,We.y,We.z,qe.x,qe.y,qe.z)}},jo=class extends Y{constructor(t){super(),this.type=\"Audio\",this.listener=t,this.context=t.context,this.gain=this.context.createGain(),this.gain.connect(t.getInput()),this.autoplay=!1,this.buffer=null,this.detune=0,this.loop=!1,this.loopStart=0,this.loopEnd=0,this.offset=0,this.duration=void 0,this.playbackRate=1,this.isPlaying=!1,this.hasPlaybackControl=!0,this.source=null,this.sourceType=\"empty\",this._startedAt=0,this._progress=0,this._connected=!1,this.filters=[]}getOutput(){return this.gain}setNodeSource(t){return this.hasPlaybackControl=!1,this.sourceType=\"audioNode\",this.source=t,this.connect(),this}setMediaElementSource(t){return this.hasPlaybackControl=!1,this.sourceType=\"mediaNode\",this.source=this.context.createMediaElementSource(t),this.connect(),this}setMediaStreamSource(t){return this.hasPlaybackControl=!1,this.sourceType=\"mediaStreamNode\",this.source=this.context.createMediaStreamSource(t),this.connect(),this}setBuffer(t){return this.buffer=t,this.sourceType=\"buffer\",this.autoplay&&this.play(),this}play(t=0){if(this.isPlaying===!0){N(\"Audio: Audio is already playing.\");return}if(this.hasPlaybackControl===!1){N(\"Audio: this Audio has no playback control.\");return}this._startedAt=this.context.currentTime+t;let e=this.context.createBufferSource();return e.buffer=this.buffer,e.loop=this.loop,e.loopStart=this.loopStart,e.loopEnd=this.loopEnd,e.onended=this.onEnded.bind(this),e.start(this._startedAt,this._progress+this.offset,this.duration),this.isPlaying=!0,this.source=e,this.setDetune(this.detune),this.setPlaybackRate(this.playbackRate),this.connect()}pause(){if(this.hasPlaybackControl===!1){N(\"Audio: this Audio has no playback control.\");return}return this.isPlaying===!0&&(this._progress+=Math.max(this.context.currentTime-this._startedAt,0)*this.playbackRate,this.loop===!0&&(this._progress=this._progress%(this.duration||this.buffer.duration)),this.source.stop(),this.source.onended=null,this.isPlaying=!1),this}stop(t=0){if(this.hasPlaybackControl===!1){N(\"Audio: this Audio has no playback control.\");return}return this._progress=0,this.source!==null&&(this.source.stop(this.context.currentTime+t),this.source.onended=null),this.isPlaying=!1,this}connect(){if(this.filters.length>0){this.source.connect(this.filters[0]);for(let t=1,e=this.filters.length;t<e;t++)this.filters[t-1].connect(this.filters[t]);this.filters[this.filters.length-1].connect(this.getOutput())}else this.source.connect(this.getOutput());return this._connected=!0,this}disconnect(){if(this._connected!==!1){if(this.filters.length>0){this.source.disconnect(this.filters[0]);for(let t=1,e=this.filters.length;t<e;t++)this.filters[t-1].disconnect(this.filters[t]);this.filters[this.filters.length-1].disconnect(this.getOutput())}else this.source.disconnect(this.getOutput());return this._connected=!1,this}}getFilters(){return this.filters}setFilters(t){return t||(t=[]),this._connected===!0?(this.disconnect(),this.filters=t.slice(),this.connect()):this.filters=t.slice(),this}setDetune(t){return this.detune=t,this.isPlaying===!0&&this.source.detune!==void 0&&this.source.detune.setTargetAtTime(this.detune,this.context.currentTime,.01),this}getDetune(){return this.detune}getFilter(){return this.getFilters()[0]}setFilter(t){return this.setFilters(t?[t]:[])}setPlaybackRate(t){if(this.hasPlaybackControl===!1){N(\"Audio: this Audio has no playback control.\");return}return this.playbackRate=t,this.isPlaying===!0&&this.source.playbackRate.setTargetAtTime(this.playbackRate,this.context.currentTime,.01),this}getPlaybackRate(){return this.playbackRate}onEnded(){this.isPlaying=!1,this._progress=0}getLoop(){return this.hasPlaybackControl===!1?(N(\"Audio: this Audio has no playback control.\"),!1):this.loop}setLoop(t){if(this.hasPlaybackControl===!1){N(\"Audio: this Audio has no playback control.\");return}return this.loop=t,this.isPlaying===!0&&(this.source.loop=this.loop),this}setLoopStart(t){return this.loopStart=t,this}setLoopEnd(t){return this.loopEnd=t,this}getVolume(){return this.gain.gain.value}setVolume(t){return this.gain.gain.setTargetAtTime(t,this.context.currentTime,.01),this}copy(t,e){return super.copy(t,e),t.sourceType!==\"buffer\"?(N(\"Audio: Audio source type cannot be copied.\"),this):(this.autoplay=t.autoplay,this.buffer=t.buffer,this.detune=t.detune,this.loop=t.loop,this.loopStart=t.loopStart,this.loopEnd=t.loopEnd,this.offset=t.offset,this.duration=t.duration,this.playbackRate=t.playbackRate,this.hasPlaybackControl=t.hasPlaybackControl,this.sourceType=t.sourceType,this.filters=t.filters.slice(),this)}clone(t){return new this.constructor(this.listener).copy(this,t)}},Je=new M,ll=new xt,np=new M,Ge=new M,cl=class extends jo{constructor(t){super(t),this.panner=this.context.createPanner(),this.panner.panningModel=\"HRTF\",this.panner.connect(this.gain)}connect(){return super.connect(),this.panner.connect(this.gain),this}disconnect(){return super.disconnect(),this.panner.disconnect(this.gain),this}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,i){return this.panner.coneInnerAngle=t,this.panner.coneOuterAngle=e,this.panner.coneOuterGain=i,this}updateMatrixWorld(t){if(super.updateMatrixWorld(t),this.hasPlaybackControl===!0&&this.isPlaying===!1)return;this.matrixWorld.decompose(Je,ll,np),Ge.set(0,0,1).applyQuaternion(ll);let e=this.panner;if(e.positionX){let i=this.context.currentTime+this.listener.timeDelta;e.positionX.linearRampToValueAtTime(Je.x,i),e.positionY.linearRampToValueAtTime(Je.y,i),e.positionZ.linearRampToValueAtTime(Je.z,i),e.orientationX.linearRampToValueAtTime(Ge.x,i),e.orientationY.linearRampToValueAtTime(Ge.y,i),e.orientationZ.linearRampToValueAtTime(Ge.z,i)}else e.setPosition(Je.x,Je.y,Je.z),e.setOrientation(Ge.x,Ge.y,Ge.z)}},ul=class{constructor(t,e=2048){this.analyser=t.context.createAnalyser(),this.analyser.fftSize=e,this.data=new Uint8Array(this.analyser.frequencyBinCount),t.getOutput().connect(this.analyser)}getFrequencyData(){return this.analyser.getByteFrequencyData(this.data),this.data}getAverageFrequency(){let t=0,e=this.getFrequencyData();for(let i=0;i<e.length;i++)t+=e[i];return t/e.length}},Qo=class{constructor(t,e,i){this.binding=t,this.valueSize=i;let s,n,r;switch(e){case\"quaternion\":s=this._slerp,n=this._slerpAdditive,r=this._setAdditiveIdentityQuaternion,this.buffer=new Float64Array(i*6),this._workIndex=5;break;case\"string\":case\"bool\":s=this._select,n=this._select,r=this._setAdditiveIdentityOther,this.buffer=new Array(i*5);break;default:s=this._lerp,n=this._lerpAdditive,r=this._setAdditiveIdentityNumeric,this.buffer=new Float64Array(i*5)}this._mixBufferRegion=s,this._mixBufferRegionAdditive=n,this._setIdentity=r,this._origIndex=3,this._addIndex=4,this.cumulativeWeight=0,this.cumulativeWeightAdditive=0,this.useCount=0,this.referenceCount=0}accumulate(t,e){let i=this.buffer,s=this.valueSize,n=t*s+s,r=this.cumulativeWeight;if(r===0){for(let o=0;o!==s;++o)i[n+o]=i[o];r=e}else{r+=e;let o=e/r;this._mixBufferRegion(i,n,0,o,s)}this.cumulativeWeight=r}accumulateAdditive(t){let e=this.buffer,i=this.valueSize,s=i*this._addIndex;this.cumulativeWeightAdditive===0&&this._setIdentity(),this._mixBufferRegionAdditive(e,s,0,t,i),this.cumulativeWeightAdditive+=t}apply(t){let e=this.valueSize,i=this.buffer,s=t*e+e,n=this.cumulativeWeight,r=this.cumulativeWeightAdditive,o=this.binding;if(this.cumulativeWeight=0,this.cumulativeWeightAdditive=0,n<1){let a=e*this._origIndex;this._mixBufferRegion(i,s,a,1-n,e)}r>0&&this._mixBufferRegionAdditive(i,s,this._addIndex*e,1,e);for(let a=e,l=e+e;a!==l;++a)if(i[a]!==i[a+e]){o.setValue(i,s);break}}saveOriginalState(){let t=this.binding,e=this.buffer,i=this.valueSize,s=i*this._origIndex;t.getValue(e,s);for(let n=i,r=s;n!==r;++n)e[n]=e[s+n%i];this._setIdentity(),this.cumulativeWeight=0,this.cumulativeWeightAdditive=0}restoreOriginalState(){let t=this.valueSize*3;this.binding.setValue(this.buffer,t)}_setAdditiveIdentityNumeric(){let t=this._addIndex*this.valueSize,e=t+this.valueSize;for(let i=t;i<e;i++)this.buffer[i]=0}_setAdditiveIdentityQuaternion(){this._setAdditiveIdentityNumeric(),this.buffer[this._addIndex*this.valueSize+3]=1}_setAdditiveIdentityOther(){let t=this._origIndex*this.valueSize,e=this._addIndex*this.valueSize;for(let i=0;i<this.valueSize;i++)this.buffer[e+i]=this.buffer[t+i]}_select(t,e,i,s,n){if(s>=.5)for(let r=0;r!==n;++r)t[e+r]=t[i+r]}_slerp(t,e,i,s){xt.slerpFlat(t,e,t,e,t,i,s)}_slerpAdditive(t,e,i,s,n){let r=this._workIndex*n;xt.multiplyQuaternionsFlat(t,r,t,e,t,i),xt.slerpFlat(t,e,t,e,t,r,s)}_lerp(t,e,i,s,n){let r=1-s;for(let o=0;o!==n;++o){let a=e+o;t[a]=t[a]*r+t[i+o]*s}}_lerpAdditive(t,e,i,s,n){for(let r=0;r!==n;++r){let o=e+r;t[o]=t[o]+t[i+r]*s}}},ua=\"\\\\[\\\\]\\\\.:\\\\/\",rp=new RegExp(\"[\"+ua+\"]\",\"g\"),da=\"[^\"+ua+\"]\",op=\"[^\"+ua.replace(\"\\\\.\",\"\")+\"]\",ap=/((?:WC+[\\/:])*)/.source.replace(\"WC\",da),hp=/(WCOD+)?/.source.replace(\"WCOD\",op),lp=/(?:\\.(WC+)(?:\\[(.+)\\])?)?/.source.replace(\"WC\",da),cp=/\\.(WC+)(?:\\[(.+)\\])?/.source.replace(\"WC\",da),up=new RegExp(\"^\"+ap+hp+lp+cp+\"$\"),dp=[\"material\",\"materials\",\"bones\",\"map\"],Ko=class{constructor(t,e,i){let s=i||$.parseTrackName(e);this._targetGroup=t,this._bindings=t.subscribe_(e,s)}getValue(t,e){this.bind();let i=this._targetGroup.nCachedObjects_,s=this._bindings[i];s!==void 0&&s.getValue(t,e)}setValue(t,e){let i=this._bindings;for(let s=this._targetGroup.nCachedObjects_,n=i.length;s!==n;++s)i[s].setValue(t,e)}bind(){let t=this._bindings;for(let e=this._targetGroup.nCachedObjects_,i=t.length;e!==i;++e)t[e].bind()}unbind(){let t=this._bindings;for(let e=this._targetGroup.nCachedObjects_,i=t.length;e!==i;++e)t[e].unbind()}},$=class h{constructor(t,e,i){this.path=e,this.parsedPath=i||h.parseTrackName(e),this.node=h.findNode(t,this.parsedPath.nodeName),this.rootNode=t,this.getValue=this._getValue_unbound,this.setValue=this._setValue_unbound}static create(t,e,i){return t&&t.isAnimationObjectGroup?new h.Composite(t,e,i):new h(t,e,i)}static sanitizeNodeName(t){return t.replace(/\\s/g,\"_\").replace(rp,\"\")}static parseTrackName(t){let e=up.exec(t);if(e===null)throw new Error(\"PropertyBinding: Cannot parse trackName: \"+t);let i={nodeName:e[2],objectName:e[3],objectIndex:e[4],propertyName:e[5],propertyIndex:e[6]},s=i.nodeName&&i.nodeName.lastIndexOf(\".\");if(s!==void 0&&s!==-1){let n=i.nodeName.substring(s+1);dp.indexOf(n)!==-1&&(i.nodeName=i.nodeName.substring(0,s),i.objectName=n)}if(i.propertyName===null||i.propertyName.length===0)throw new Error(\"PropertyBinding: can not parse propertyName from trackName: \"+t);return i}static findNode(t,e){if(e===void 0||e===\"\"||e===\".\"||e===-1||e===t.name||e===t.uuid)return t;if(t.skeleton){let i=t.skeleton.getBoneByName(e);if(i!==void 0)return i}if(t.children){let i=function(n){for(let r=0;r<n.length;r++){let o=n[r];if(o.name===e||o.uuid===e)return o;let a=i(o.children);if(a)return a}return null},s=i(t.children);if(s)return s}return null}_getValue_unavailable(){}_setValue_unavailable(){}_getValue_direct(t,e){t[e]=this.targetObject[this.propertyName]}_getValue_array(t,e){let i=this.resolvedProperty;for(let s=0,n=i.length;s!==n;++s)t[e++]=i[s]}_getValue_arrayElement(t,e){t[e]=this.resolvedProperty[this.propertyIndex]}_getValue_toArray(t,e){this.resolvedProperty.toArray(t,e)}_setValue_direct(t,e){this.targetObject[this.propertyName]=t[e]}_setValue_direct_setNeedsUpdate(t,e){this.targetObject[this.propertyName]=t[e],this.targetObject.needsUpdate=!0}_setValue_direct_setMatrixWorldNeedsUpdate(t,e){this.targetObject[this.propertyName]=t[e],this.targetObject.matrixWorldNeedsUpdate=!0}_setValue_array(t,e){let i=this.resolvedProperty;for(let s=0,n=i.length;s!==n;++s)i[s]=t[e++]}_setValue_array_setNeedsUpdate(t,e){let i=this.resolvedProperty;for(let s=0,n=i.length;s!==n;++s)i[s]=t[e++];this.targetObject.needsUpdate=!0}_setValue_array_setMatrixWorldNeedsUpdate(t,e){let i=this.resolvedProperty;for(let s=0,n=i.length;s!==n;++s)i[s]=t[e++];this.targetObject.matrixWorldNeedsUpdate=!0}_setValue_arrayElement(t,e){this.resolvedProperty[this.propertyIndex]=t[e]}_setValue_arrayElement_setNeedsUpdate(t,e){this.resolvedProperty[this.propertyIndex]=t[e],this.targetObject.needsUpdate=!0}_setValue_arrayElement_setMatrixWorldNeedsUpdate(t,e){this.resolvedProperty[this.propertyIndex]=t[e],this.targetObject.matrixWorldNeedsUpdate=!0}_setValue_fromArray(t,e){this.resolvedProperty.fromArray(t,e)}_setValue_fromArray_setNeedsUpdate(t,e){this.resolvedProperty.fromArray(t,e),this.targetObject.needsUpdate=!0}_setValue_fromArray_setMatrixWorldNeedsUpdate(t,e){this.resolvedProperty.fromArray(t,e),this.targetObject.matrixWorldNeedsUpdate=!0}_getValue_unbound(t,e){this.bind(),this.getValue(t,e)}_setValue_unbound(t,e){this.bind(),this.setValue(t,e)}bind(){let t=this.node,e=this.parsedPath,i=e.objectName,s=e.propertyName,n=e.propertyIndex;if(t||(t=h.findNode(this.rootNode,e.nodeName),this.node=t),this.getValue=this._getValue_unavailable,this.setValue=this._setValue_unavailable,!t){N(\"PropertyBinding: No target node found for track: \"+this.path+\".\");return}if(i){let l=e.objectIndex;switch(i){case\"materials\":if(!t.material){Z(\"PropertyBinding: Can not bind to material as node does not have a material.\",this);return}if(!t.material.materials){Z(\"PropertyBinding: Can not bind to material.materials as node.material does not have a materials array.\",this);return}t=t.material.materials;break;case\"bones\":if(!t.skeleton){Z(\"PropertyBinding: Can not bind to bones as node does not have a skeleton.\",this);return}t=t.skeleton.bones;for(let c=0;c<t.length;c++)if(t[c].name===l){l=c;break}break;case\"map\":if(\"map\"in t){t=t.map;break}if(!t.material){Z(\"PropertyBinding: Can not bind to material as node does not have a material.\",this);return}if(!t.material.map){Z(\"PropertyBinding: Can not bind to material.map as node.material does not have a map.\",this);return}t=t.material.map;break;default:if(t[i]===void 0){Z(\"PropertyBinding: Can not bind to objectName of node undefined.\",this);return}t=t[i]}if(l!==void 0){if(t[l]===void 0){Z(\"PropertyBinding: Trying to bind to objectIndex of objectName, but is undefined.\",this,t);return}t=t[l]}}let r=t[s];if(r===void 0){let l=e.nodeName;Z(\"PropertyBinding: Trying to update property for track: \"+l+\".\"+s+\" but it wasn't found.\",t);return}let o=this.Versioning.None;this.targetObject=t,t.isMaterial===!0?o=this.Versioning.NeedsUpdate:t.isObject3D===!0&&(o=this.Versioning.MatrixWorldNeedsUpdate);let a=this.BindingType.Direct;if(n!==void 0){if(s===\"morphTargetInfluences\"){if(!t.geometry){Z(\"PropertyBinding: Can not bind to morphTargetInfluences because node does not have a geometry.\",this);return}if(!t.geometry.morphAttributes){Z(\"PropertyBinding: Can not bind to morphTargetInfluences because node does not have a geometry.morphAttributes.\",this);return}t.morphTargetDictionary[n]!==void 0&&(n=t.morphTargetDictionary[n])}a=this.BindingType.ArrayElement,this.resolvedProperty=r,this.propertyIndex=n}else r.fromArray!==void 0&&r.toArray!==void 0?(a=this.BindingType.HasFromToArray,this.resolvedProperty=r):Array.isArray(r)?(a=this.BindingType.EntireArray,this.resolvedProperty=r):this.propertyName=s;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}};$.Composite=Ko;$.prototype.BindingType={Direct:0,EntireArray:1,ArrayElement:2,HasFromToArray:3};$.prototype.Versioning={None:0,NeedsUpdate:1,MatrixWorldNeedsUpdate:2};$.prototype.GetterByBindingType=[$.prototype._getValue_direct,$.prototype._getValue_array,$.prototype._getValue_arrayElement,$.prototype._getValue_toArray];$.prototype.SetterByBindingTypeAndVersioning=[[$.prototype._setValue_direct,$.prototype._setValue_direct_setNeedsUpdate,$.prototype._setValue_direct_setMatrixWorldNeedsUpdate],[$.prototype._setValue_array,$.prototype._setValue_array_setNeedsUpdate,$.prototype._setValue_array_setMatrixWorldNeedsUpdate],[$.prototype._setValue_arrayElement,$.prototype._setValue_arrayElement_setNeedsUpdate,$.prototype._setValue_arrayElement_setMatrixWorldNeedsUpdate],[$.prototype._setValue_fromArray,$.prototype._setValue_fromArray_setNeedsUpdate,$.prototype._setValue_fromArray_setMatrixWorldNeedsUpdate]];var dl=class{constructor(){this.isAnimationObjectGroup=!0,this.uuid=Bt(),this._objects=Array.prototype.slice.call(arguments),this.nCachedObjects_=0;let t={};this._indicesByUUID=t;for(let i=0,s=arguments.length;i!==s;++i)t[arguments[i].uuid]=i;this._paths=[],this._parsedPaths=[],this._bindings=[],this._bindingsIndicesByPath={};let e=this;this.stats={objects:{get total(){return e._objects.length},get inUse(){return this.total-e.nCachedObjects_}},get bindingsPerObject(){return e._bindings.length}}}add(){let t=this._objects,e=this._indicesByUUID,i=this._paths,s=this._parsedPaths,n=this._bindings,r=n.length,o,a=t.length,l=this.nCachedObjects_;for(let c=0,u=arguments.length;c!==u;++c){let d=arguments[c],p=d.uuid,f=e[p];if(f===void 0){f=a++,e[p]=f,t.push(d);for(let m=0,g=r;m!==g;++m)n[m].push(new $(d,i[m],s[m]))}else if(f<l){o=t[f];let m=--l,g=t[m];e[g.uuid]=f,t[f]=g,e[p]=m,t[m]=d;for(let y=0,x=r;y!==x;++y){let b=n[y],w=b[m],_=b[f];b[f]=w,_===void 0&&(_=new $(d,i[y],s[y])),b[m]=_}}else t[f]!==o&&Z(\"AnimationObjectGroup: Different objects with the same UUID detected. Clean the caches or recreate your infrastructure when reloading scenes.\")}this.nCachedObjects_=l}remove(){let t=this._objects,e=this._indicesByUUID,i=this._bindings,s=i.length,n=this.nCachedObjects_;for(let r=0,o=arguments.length;r!==o;++r){let a=arguments[r],l=a.uuid,c=e[l];if(c!==void 0&&c>=n){let u=n++,d=t[u];e[d.uuid]=c,t[c]=d,e[l]=u,t[u]=a;for(let p=0,f=s;p!==f;++p){let m=i[p],g=m[u],y=m[c];m[c]=g,m[u]=y}}}this.nCachedObjects_=n}uncache(){let t=this._objects,e=this._indicesByUUID,i=this._bindings,s=i.length,n=this.nCachedObjects_,r=t.length;for(let o=0,a=arguments.length;o!==a;++o){let l=arguments[o],c=l.uuid,u=e[c];if(u!==void 0)if(delete e[c],u<n){let d=--n,p=t[d],f=--r,m=t[f];e[p.uuid]=u,t[u]=p,e[m.uuid]=d,t[d]=m,t.pop();for(let g=0,y=s;g!==y;++g){let x=i[g],b=x[d],w=x[f];x[u]=b,x[d]=w,x.pop()}}else{let d=--r,p=t[d];d>0&&(e[p.uuid]=u),t[u]=p,t.pop();for(let f=0,m=s;f!==m;++f){let g=i[f];g[u]=g[d],g.pop()}}}this.nCachedObjects_=n}subscribe_(t,e){let i=this._bindingsIndicesByPath,s=i[t],n=this._bindings;if(s!==void 0)return n[s];let r=this._paths,o=this._parsedPaths,a=this._objects,l=a.length,c=this.nCachedObjects_,u=new Array(l);s=n.length,i[t]=s,r.push(t),o.push(e),n.push(u);for(let d=c,p=a.length;d!==p;++d){let f=a[d];u[d]=new $(f,t,e)}return u}unsubscribe_(t){let e=this._bindingsIndicesByPath,i=e[t];if(i!==void 0){let s=this._paths,n=this._parsedPaths,r=this._bindings,o=r.length-1,a=r[o],l=t[o];e[l]=i,r[i]=a,r.pop(),n[i]=n[o],n.pop(),s[i]=s[o],s.pop()}}},ta=class{constructor(t,e,i=null,s=e.blendMode){this._mixer=t,this._clip=e,this._localRoot=i,this.blendMode=s;let n=e.tracks,r=n.length,o=new Array(r),a={endingStart:_i,endingEnd:_i};for(let l=0;l!==r;++l){let c=n[l].createInterpolant(null);o[l]=c,c.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=Su,this._loopCount=-1,this._startTime=null,this.time=0,this.timeScale=1,this._effectiveTimeScale=1,this.weight=1,this._effectiveWeight=1,this.repetitions=1/0,this.paused=!1,this.enabled=!0,this.clampWhenFinished=!1,this.zeroSlopeAtStart=!0,this.zeroSlopeAtEnd=!0}play(){return this._mixer._activateAction(this),this}stop(){return this._mixer._deactivateAction(this),this.reset()}reset(){return this.paused=!1,this.enabled=!0,this.time=0,this._loopCount=-1,this._startTime=null,this.stopFading().stopWarping()}isRunning(){return this.enabled&&!this.paused&&this.timeScale!==0&&this._startTime===null&&this._mixer._isActiveAction(this)}isScheduled(){return this._mixer._isActiveAction(this)}startAt(t){return this._startTime=t,this}setLoop(t,e){return this.loop=t,this.repetitions=e,this}setEffectiveWeight(t){return this.weight=t,this._effectiveWeight=this.enabled?t:0,this.stopFading()}getEffectiveWeight(){return this._effectiveWeight}fadeIn(t){return this._scheduleFading(t,0,1)}fadeOut(t){return this._scheduleFading(t,1,0)}crossFadeFrom(t,e,i=!1){if(t.fadeOut(e),this.fadeIn(e),i===!0){let s=this._clip.duration,n=t._clip.duration,r=n/s,o=s/n;t.warp(1,r,e),this.warp(o,1,e)}return this}crossFadeTo(t,e,i=!1){return t.crossFadeFrom(this,e,i)}stopFading(){let t=this._weightInterpolant;return t!==null&&(this._weightInterpolant=null,this._mixer._takeBackControlInterpolant(t)),this}setEffectiveTimeScale(t){return this.timeScale=t,this._effectiveTimeScale=this.paused?0:t,this.stopWarping()}getEffectiveTimeScale(){return this._effectiveTimeScale}setDuration(t){return this.timeScale=this._clip.duration/t,this.stopWarping()}syncWith(t){return this.time=t.time,this.timeScale=t.timeScale,this.stopWarping()}halt(t){return this.warp(this._effectiveTimeScale,0,t)}warp(t,e,i){let s=this._mixer,n=s.time,r=this.timeScale,o=this._timeScaleInterpolant;o===null&&(o=s._lendControlInterpolant(),this._timeScaleInterpolant=o);let a=o.parameterPositions,l=o.sampleValues;return a[0]=n,a[1]=n+i,l[0]=t/r,l[1]=e/r,this}stopWarping(){let t=this._timeScaleInterpolant;return t!==null&&(this._timeScaleInterpolant=null,this._mixer._takeBackControlInterpolant(t)),this}getMixer(){return this._mixer}getClip(){return this._clip}getRoot(){return this._localRoot||this._mixer._root}_update(t,e,i,s){if(!this.enabled){this._updateWeight(t);return}let n=this._startTime;if(n!==null){let a=(t-n)*i;a<0||i===0?e=0:(this._startTime=null,e=i*a)}e*=this._updateTimeScale(t);let r=this._updateTime(e),o=this._updateWeight(t);if(o>0){let a=this._interpolants,l=this._propertyBindings;switch(this.blendMode){case tc:for(let c=0,u=a.length;c!==u;++c)a[c].evaluate(r),l[c].accumulateAdditive(o);break;case oa:default:for(let c=0,u=a.length;c!==u;++c)a[c].evaluate(r),l[c].accumulate(s,o)}}}_updateWeight(t){let e=0;if(this.enabled){e=this.weight;let i=this._weightInterpolant;if(i!==null){let s=i.evaluate(t)[0];e*=s,t>i.parameterPositions[1]&&(this.stopFading(),s===0&&(this.enabled=!1))}}return this._effectiveWeight=e,e}_updateTimeScale(t){let e=0;if(!this.paused){e=this.timeScale;let i=this._timeScaleInterpolant;if(i!==null){let s=i.evaluate(t)[0];e*=s,t>i.parameterPositions[1]&&(this.stopWarping(),e===0?this.paused=!0:this.timeScale=e)}}return this._effectiveTimeScale=e,e}_updateTime(t){let e=this._clip.duration,i=this.loop,s=this.time+t,n=this._loopCount,r=i===Au;if(t===0)return n===-1?s:r&&(n&1)===1?e-s:s;if(i===vu){n===-1&&(this._loopCount=0,this._setEndings(!0,!0,!1));t:{if(s>=e)s=e;else if(s<0)s=0;else{this.time=s;break t}this.clampWhenFinished?this.paused=!0:this.enabled=!1,this.time=s,this._mixer.dispatchEvent({type:\"finished\",action:this,direction:t<0?-1:1})}}else{if(n===-1&&(t>=0?(n=0,this._setEndings(!0,this.repetitions===0,r)):this._setEndings(this.repetitions===0,!0,r)),s>=e||s<0){let o=Math.floor(s/e);s-=e*o,n+=Math.abs(o);let a=this.repetitions-n;if(a<=0)this.clampWhenFinished?this.paused=!0:this.enabled=!1,s=t>0?e:0,this.time=s,this._mixer.dispatchEvent({type:\"finished\",action:this,direction:t>0?1:-1});else{if(a===1){let l=t<0;this._setEndings(l,!l,r)}else this._setEndings(!1,!1,r);this._loopCount=n,this.time=s,this._mixer.dispatchEvent({type:\"loop\",action:this,loopDelta:o})}}else this.time=s;if(r&&(n&1)===1)return e-s}return s}_setEndings(t,e,i){let s=this._interpolantSettings;i?(s.endingStart=vi,s.endingEnd=vi):(t?s.endingStart=this.zeroSlopeAtStart?vi:_i:s.endingStart=rn,e?s.endingEnd=this.zeroSlopeAtEnd?vi:_i:s.endingEnd=rn)}_scheduleFading(t,e,i){let s=this._mixer,n=s.time,r=this._weightInterpolant;r===null&&(r=s._lendControlInterpolant(),this._weightInterpolant=r);let o=r.parameterPositions,a=r.sampleValues;return o[0]=n,a[0]=e,o[1]=n+t,a[1]=i,this}},pp=new Float32Array(1),pl=class extends te{constructor(t){super(),this._root=t,this._initMemoryManager(),this._accuIndex=0,this.time=0,this.timeScale=1,typeof __THREE_DEVTOOLS__<\"u\"&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent(\"observe\",{detail:this}))}_bindAction(t,e){let i=t._localRoot||this._root,s=t._clip.tracks,n=s.length,r=t._propertyBindings,o=t._interpolants,a=i.uuid,l=this._bindingsByRootAndName,c=l[a];c===void 0&&(c={},l[a]=c);for(let u=0;u!==n;++u){let d=s[u],p=d.name,f=c[p];if(f!==void 0)++f.referenceCount,r[u]=f;else{if(f=r[u],f!==void 0){f._cacheIndex===null&&(++f.referenceCount,this._addInactiveBinding(f,a,p));continue}let m=e&&e._propertyBindings[u].binding.parsedPath;f=new Qo($.create(i,p,m),d.ValueTypeName,d.getValueSize()),++f.referenceCount,this._addInactiveBinding(f,a,p),r[u]=f}o[u].resultBuffer=f.buffer}}_activateAction(t){if(!this._isActiveAction(t)){if(t._cacheIndex===null){let i=(t._localRoot||this._root).uuid,s=t._clip.uuid,n=this._actionsByClip[s];this._bindAction(t,n&&n.knownActions[0]),this._addInactiveAction(t,s,i)}let e=t._propertyBindings;for(let i=0,s=e.length;i!==s;++i){let n=e[i];n.useCount++===0&&(this._lendBinding(n),n.saveOriginalState())}this._lendAction(t)}}_deactivateAction(t){if(this._isActiveAction(t)){let e=t._propertyBindings;for(let i=0,s=e.length;i!==s;++i){let n=e[i];--n.useCount===0&&(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;let t=this;this.stats={actions:{get total(){return t._actions.length},get inUse(){return t._nActiveActions}},bindings:{get total(){return t._bindings.length},get inUse(){return t._nActiveBindings}},controlInterpolants:{get total(){return t._controlInterpolants.length},get inUse(){return t._nActiveControlInterpolants}}}}_isActiveAction(t){let e=t._cacheIndex;return e!==null&&e<this._nActiveActions}_addInactiveAction(t,e,i){let s=this._actions,n=this._actionsByClip,r=n[e];if(r===void 0)r={knownActions:[t],actionByRoot:{}},t._byClipCacheIndex=0,n[e]=r;else{let o=r.knownActions;t._byClipCacheIndex=o.length,o.push(t)}t._cacheIndex=s.length,s.push(t),r.actionByRoot[i]=t}_removeInactiveAction(t){let e=this._actions,i=e[e.length-1],s=t._cacheIndex;i._cacheIndex=s,e[s]=i,e.pop(),t._cacheIndex=null;let n=t._clip.uuid,r=this._actionsByClip,o=r[n],a=o.knownActions,l=a[a.length-1],c=t._byClipCacheIndex;l._byClipCacheIndex=c,a[c]=l,a.pop(),t._byClipCacheIndex=null;let u=o.actionByRoot,d=(t._localRoot||this._root).uuid;delete u[d],a.length===0&&delete r[n],this._removeInactiveBindingsForAction(t)}_removeInactiveBindingsForAction(t){let e=t._propertyBindings;for(let i=0,s=e.length;i!==s;++i){let n=e[i];--n.referenceCount===0&&this._removeInactiveBinding(n)}}_lendAction(t){let e=this._actions,i=t._cacheIndex,s=this._nActiveActions++,n=e[s];t._cacheIndex=s,e[s]=t,n._cacheIndex=i,e[i]=n}_takeBackAction(t){let e=this._actions,i=t._cacheIndex,s=--this._nActiveActions,n=e[s];t._cacheIndex=s,e[s]=t,n._cacheIndex=i,e[i]=n}_addInactiveBinding(t,e,i){let s=this._bindingsByRootAndName,n=this._bindings,r=s[e];r===void 0&&(r={},s[e]=r),r[i]=t,t._cacheIndex=n.length,n.push(t)}_removeInactiveBinding(t){let e=this._bindings,i=t.binding,s=i.rootNode.uuid,n=i.path,r=this._bindingsByRootAndName,o=r[s],a=e[e.length-1],l=t._cacheIndex;a._cacheIndex=l,e[l]=a,e.pop(),delete o[n],Object.keys(o).length===0&&delete r[s]}_lendBinding(t){let e=this._bindings,i=t._cacheIndex,s=this._nActiveBindings++,n=e[s];t._cacheIndex=s,e[s]=t,n._cacheIndex=i,e[i]=n}_takeBackBinding(t){let e=this._bindings,i=t._cacheIndex,s=--this._nActiveBindings,n=e[s];t._cacheIndex=s,e[s]=t,n._cacheIndex=i,e[i]=n}_lendControlInterpolant(){let t=this._controlInterpolants,e=this._nActiveControlInterpolants++,i=t[e];return i===void 0&&(i=new Fn(new Float32Array(2),new Float32Array(2),1,pp),i.__cacheIndex=e,t[e]=i),i}_takeBackControlInterpolant(t){let e=this._controlInterpolants,i=t.__cacheIndex,s=--this._nActiveControlInterpolants,n=e[s];t.__cacheIndex=s,e[s]=t,n.__cacheIndex=i,e[i]=n}clipAction(t,e,i){let s=e||this._root,n=s.uuid,r=typeof t==\"string\"?Pi.findByName(s,t):t,o=r!==null?r.uuid:t,a=this._actionsByClip[o],l=null;if(i===void 0&&(r!==null?i=r.blendMode:i=oa),a!==void 0){let u=a.actionByRoot[n];if(u!==void 0&&u.blendMode===i)return u;l=a.knownActions[0],r===null&&(r=l._clip)}if(r===null)return null;let c=new ta(this,r,e,i);return this._bindAction(c,l),this._addInactiveAction(c,o,n),c}existingAction(t,e){let i=e||this._root,s=i.uuid,n=typeof t==\"string\"?Pi.findByName(i,t):t,r=n?n.uuid:t,o=this._actionsByClip[r];return o!==void 0&&o.actionByRoot[s]||null}stopAllAction(){let t=this._actions,e=this._nActiveActions;for(let i=e-1;i>=0;--i)t[i].stop();return this}update(t){t*=this.timeScale;let e=this._actions,i=this._nActiveActions,s=this.time+=t,n=Math.sign(t),r=this._accuIndex^=1;for(let l=0;l!==i;++l)e[l]._update(s,t,n,r);let o=this._bindings,a=this._nActiveBindings;for(let l=0;l!==a;++l)o[l].apply(r);return this}setTime(t){this.time=0;for(let e=0;e<this._actions.length;e++)this._actions[e].time=0;return this.update(t)}getRoot(){return this._root}uncacheClip(t){let e=this._actions,i=t.uuid,s=this._actionsByClip,n=s[i];if(n!==void 0){let r=n.knownActions;for(let o=0,a=r.length;o!==a;++o){let l=r[o];this._deactivateAction(l);let c=l._cacheIndex,u=e[e.length-1];l._cacheIndex=null,l._byClipCacheIndex=null,u._cacheIndex=c,e[c]=u,e.pop(),this._removeInactiveBindingsForAction(l)}delete s[i]}}uncacheRoot(t){let e=t.uuid,i=this._actionsByClip;for(let r in i){let o=i[r].actionByRoot,a=o[e];a!==void 0&&(this._deactivateAction(a),this._removeInactiveAction(a))}let s=this._bindingsByRootAndName,n=s[e];if(n!==void 0)for(let r in n){let o=n[r];o.restoreOriginalState(),this._removeInactiveBinding(o)}}uncacheAction(t,e){let i=this.existingAction(t,e);i!==null&&(this._deactivateAction(i),this._removeInactiveAction(i))}},fl=class extends hn{constructor(t=1,e=1,i=1,s={}){super(t,e,s),this.isRenderTarget3D=!0,this.depth=i,this.texture=new cn(null,t,e,i),this._setTextureOptions(s),this.texture.isRenderTargetTexture=!0}},ml=class h{constructor(t){this.value=t}clone(){return new h(this.value.clone===void 0?this.value:this.value.clone())}},fp=0,yl=class extends te{constructor(){super(),this.isUniformsGroup=!0,Object.defineProperty(this,\"id\",{value:fp++}),this.name=\"\",this.usage=on,this.uniforms=[]}add(t){return this.uniforms.push(t),this}remove(t){let e=this.uniforms.indexOf(t);return e!==-1&&this.uniforms.splice(e,1),this}setName(t){return this.name=t,this}setUsage(t){return this.usage=t,this}dispose(){this.dispatchEvent({type:\"dispose\"})}copy(t){this.name=t.name,this.usage=t.usage;let e=t.uniforms;this.uniforms.length=0;for(let i=0,s=e.length;i<s;i++){let n=Array.isArray(e[i])?e[i]:[e[i]];for(let r=0;r<n.length;r++)this.uniforms.push(n[r].clone())}return this}clone(){return new this.constructor().copy(this)}},gl=class extends es{constructor(t,e,i=1){super(t,e),this.isInstancedInterleavedBuffer=!0,this.meshPerAttribute=i}copy(t){return super.copy(t),this.meshPerAttribute=t.meshPerAttribute,this}clone(t){let e=super.clone(t);return e.meshPerAttribute=this.meshPerAttribute,e}toJSON(t){let e=super.toJSON(t);return e.isInstancedInterleavedBuffer=!0,e.meshPerAttribute=this.meshPerAttribute,e}},xl=class{constructor(t,e,i,s,n,r=!1){this.isGLBufferAttribute=!0,this.name=\"\",this.buffer=t,this.type=e,this.itemSize=i,this.elementSize=s,this.count=n,this.normalized=r,this.version=0}set needsUpdate(t){t===!0&&this.version++}setBuffer(t){return this.buffer=t,this}setType(t,e){return this.type=t,this.elementSize=e,this}setItemSize(t){return this.itemSize=t,this}setCount(t){return this.count=t,this}},bl=new q,wl=class{constructor(t,e,i=0,s=1/0){this.ray=new Ye(t,e),this.near=i,this.far=s,this.camera=null,this.layers=new un,this.params={Mesh:{},Line:{threshold:1},LOD:{},Points:{threshold:1},Sprite:{}}}set(t,e){this.ray.set(t,e)}setFromCamera(t,e){e.isPerspectiveCamera?(this.ray.origin.setFromMatrixPosition(e.matrixWorld),this.ray.direction.set(t.x,t.y,.5).unproject(e).sub(this.ray.origin).normalize(),this.camera=e):e.isOrthographicCamera?(this.ray.origin.set(t.x,t.y,(e.near+e.far)/(e.near-e.far)).unproject(e),this.ray.direction.set(0,0,-1).transformDirection(e.matrixWorld),this.camera=e):Z(\"Raycaster: Unsupported camera type: \"+e.type)}setFromXRController(t){return bl.identity().extractRotation(t.matrixWorld),this.ray.origin.setFromMatrixPosition(t.matrixWorld),this.ray.direction.set(0,0,-1).applyMatrix4(bl),this}intersectObject(t,e=!0,i=[]){return ea(t,this,i,e),i.sort(Ml),i}intersectObjects(t,e=!0,i=[]){for(let s=0,n=t.length;s<n;s++)ea(t[s],this,i,e);return i.sort(Ml),i}};function Ml(h,t){return h.distance-t.distance}function ea(h,t,e,i){let s=!0;if(h.layers.test(t.layers)&&h.raycast(t,e)===!1&&(s=!1),s===!0&&i===!0){let n=h.children;for(let r=0,o=n.length;r<o;r++)ea(n[r],t,e,!0)}}var _l=class{constructor(t=!0){this.autoStart=t,this.startTime=0,this.oldTime=0,this.elapsedTime=0,this.running=!1,N(\"THREE.Clock: This module has been deprecated. Please use THREE.Timer instead.\")}start(){this.startTime=performance.now(),this.oldTime=this.startTime,this.elapsedTime=0,this.running=!0}stop(){this.getElapsedTime(),this.running=!1,this.autoStart=!1}getElapsedTime(){return this.getDelta(),this.elapsedTime}getDelta(){let t=0;if(this.autoStart&&!this.running)return this.start(),0;if(this.running){let e=performance.now();t=(e-this.oldTime)/1e3,this.oldTime=e,this.elapsedTime+=t}return t}},vl=class{constructor(t=1,e=0,i=0){this.radius=t,this.phi=e,this.theta=i}set(t,e,i){return this.radius=t,this.phi=e,this.theta=i,this}copy(t){return this.radius=t.radius,this.phi=t.phi,this.theta=t.theta,this}makeSafe(){return this.phi=V(this.phi,1e-6,Math.PI-1e-6),this}setFromVector3(t){return this.setFromCartesianCoords(t.x,t.y,t.z)}setFromCartesianCoords(t,e,i){return this.radius=Math.sqrt(t*t+e*e+i*i),this.radius===0?(this.theta=0,this.phi=0):(this.theta=Math.atan2(t,i),this.phi=Math.acos(V(e/this.radius,-1,1))),this}clone(){return new this.constructor().copy(this)}},Sl=class{constructor(t=1,e=0,i=0){this.radius=t,this.theta=e,this.y=i}set(t,e,i){return this.radius=t,this.theta=e,this.y=i,this}copy(t){return this.radius=t.radius,this.theta=t.theta,this.y=t.y,this}setFromVector3(t){return this.setFromCartesianCoords(t.x,t.y,t.z)}setFromCartesianCoords(t,e,i){return this.radius=Math.sqrt(t*t+i*i),this.theta=Math.atan2(t,i),this.y=e,this}clone(){return new this.constructor().copy(this)}},Al=class h{constructor(t,e,i,s){h.prototype.isMatrix2=!0,this.elements=[1,0,0,1],t!==void 0&&this.set(t,e,i,s)}identity(){return this.set(1,0,0,1),this}fromArray(t,e=0){for(let i=0;i<4;i++)this.elements[i]=t[i+e];return this}set(t,e,i,s){let n=this.elements;return n[0]=t,n[2]=e,n[1]=i,n[3]=s,this}},Tl=new C,Il=class{constructor(t=new C(1/0,1/0),e=new C(-1/0,-1/0)){this.isBox2=!0,this.min=t,this.max=e}set(t,e){return this.min.copy(t),this.max.copy(e),this}setFromPoints(t){this.makeEmpty();for(let e=0,i=t.length;e<i;e++)this.expandByPoint(t[e]);return this}setFromCenterAndSize(t,e){let i=Tl.copy(e).multiplyScalar(.5);return this.min.copy(t).sub(i),this.max.copy(t).add(i),this}clone(){return new this.constructor().copy(this)}copy(t){return this.min.copy(t.min),this.max.copy(t.max),this}makeEmpty(){return this.min.x=this.min.y=1/0,this.max.x=this.max.y=-1/0,this}isEmpty(){return this.max.x<this.min.x||this.max.y<this.min.y}getCenter(t){return this.isEmpty()?t.set(0,0):t.addVectors(this.min,this.max).multiplyScalar(.5)}getSize(t){return this.isEmpty()?t.set(0,0):t.subVectors(this.max,this.min)}expandByPoint(t){return this.min.min(t),this.max.max(t),this}expandByVector(t){return this.min.sub(t),this.max.add(t),this}expandByScalar(t){return this.min.addScalar(-t),this.max.addScalar(t),this}containsPoint(t){return t.x>=this.min.x&&t.x<=this.max.x&&t.y>=this.min.y&&t.y<=this.max.y}containsBox(t){return this.min.x<=t.min.x&&t.max.x<=this.max.x&&this.min.y<=t.min.y&&t.max.y<=this.max.y}getParameter(t,e){return e.set((t.x-this.min.x)/(this.max.x-this.min.x),(t.y-this.min.y)/(this.max.y-this.min.y))}intersectsBox(t){return t.max.x>=this.min.x&&t.min.x<=this.max.x&&t.max.y>=this.min.y&&t.min.y<=this.max.y}clampPoint(t,e){return e.copy(t).clamp(this.min,this.max)}distanceToPoint(t){return this.clampPoint(t,Tl).distanceTo(t)}intersect(t){return this.min.max(t.min),this.max.min(t.max),this.isEmpty()&&this.makeEmpty(),this}union(t){return this.min.min(t.min),this.max.max(t.max),this}translate(t){return this.min.add(t),this.max.add(t),this}equals(t){return t.min.equals(this.min)&&t.max.equals(this.max)}},Cl=new M,$s=new M,wi=new M,Mi=new M,Mr=new M,mp=new M,yp=new M,zl=class{constructor(t=new M,e=new M){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){Cl.subVectors(t,this.start),$s.subVectors(this.end,this.start);let i=$s.dot($s),n=$s.dot(Cl)/i;return e&&(n=V(n,0,1)),n}closestPointToPoint(t,e,i){let s=this.closestPointToPointParameter(t,e);return this.delta(i).multiplyScalar(s).add(this.start)}distanceSqToLine3(t,e=mp,i=yp){let s=10000000000000001e-32,n,r,o=this.start,a=t.start,l=this.end,c=t.end;wi.subVectors(l,o),Mi.subVectors(c,a),Mr.subVectors(o,a);let u=wi.dot(wi),d=Mi.dot(Mi),p=Mi.dot(Mr);if(u<=s&&d<=s)return e.copy(o),i.copy(a),e.sub(i),e.dot(e);if(u<=s)n=0,r=p/d,r=V(r,0,1);else{let f=wi.dot(Mr);if(d<=s)r=0,n=V(-f/u,0,1);else{let m=wi.dot(Mi),g=u*d-m*m;g!==0?n=V((m*p-f*d)/g,0,1):n=0,r=(m*n+p)/d,r<0?(r=0,n=V(-f/u,0,1)):r>1&&(r=1,n=V((m-f)/u,0,1))}}return e.copy(o).addScaledVector(wi,n),i.copy(a).addScaledVector(Mi,r),e.distanceToSquared(i)}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)}},Fl=new M,Bl=class extends Y{constructor(t,e){super(),this.light=t,this.matrixAutoUpdate=!1,this.color=e,this.type=\"SpotLightHelper\";let i=new G,s=[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 r=0,o=1,a=32;r<a;r++,o++){let l=r/a*Math.PI*2,c=o/a*Math.PI*2;s.push(Math.cos(l),Math.sin(l),1,Math.cos(c),Math.sin(c),1)}i.setAttribute(\"position\",new k(s,3));let n=new bt({fog:!1,toneMapped:!1});this.cone=new Ht(i,n),this.add(this.cone),this.update()}dispose(){this.cone.geometry.dispose(),this.cone.material.dispose()}update(){this.light.updateWorldMatrix(!0,!1),this.light.target.updateWorldMatrix(!0,!1),this.parent?(this.parent.updateWorldMatrix(!0),this.matrix.copy(this.parent.matrixWorld).invert().multiply(this.light.matrixWorld)):this.matrix.copy(this.light.matrixWorld),this.matrixWorld.copy(this.light.matrixWorld);let t=this.light.distance?this.light.distance:1e3,e=t*Math.tan(this.light.angle);this.cone.scale.set(e,e,t),Fl.setFromMatrixPosition(this.light.target.matrixWorld),this.cone.lookAt(Fl),this.color!==void 0?this.cone.material.color.set(this.color):this.cone.material.color.copy(this.light.color)}},Te=new M,js=new q,_r=new q,kl=class extends Ht{constructor(t){let e=uc(t),i=new G,s=[],n=[];for(let l=0;l<e.length;l++){let c=e[l];c.parent&&c.parent.isBone&&(s.push(0,0,0),s.push(0,0,0),n.push(0,0,0),n.push(0,0,0))}i.setAttribute(\"position\",new k(s,3)),i.setAttribute(\"color\",new k(n,3));let r=new bt({vertexColors:!0,depthTest:!1,depthWrite:!1,toneMapped:!1,transparent:!0});super(i,r),this.isSkeletonHelper=!0,this.type=\"SkeletonHelper\",this.root=t,this.bones=e,this.matrix=t.matrixWorld,this.matrixAutoUpdate=!1;let o=new U(255),a=new U(65280);this.setColors(o,a)}updateMatrixWorld(t){let e=this.bones,i=this.geometry,s=i.getAttribute(\"position\");_r.copy(this.root.matrixWorld).invert();for(let n=0,r=0;n<e.length;n++){let o=e[n];o.parent&&o.parent.isBone&&(js.multiplyMatrices(_r,o.matrixWorld),Te.setFromMatrixPosition(js),s.setXYZ(r,Te.x,Te.y,Te.z),js.multiplyMatrices(_r,o.parent.matrixWorld),Te.setFromMatrixPosition(js),s.setXYZ(r+1,Te.x,Te.y,Te.z),r+=2)}i.getAttribute(\"position\").needsUpdate=!0,super.updateMatrixWorld(t)}setColors(t,e){let s=this.geometry.getAttribute(\"color\");for(let n=0;n<s.count;n+=2)s.setXYZ(n,t.r,t.g,t.b),s.setXYZ(n+1,e.r,e.g,e.b);return s.needsUpdate=!0,this}dispose(){this.geometry.dispose(),this.material.dispose()}};function uc(h){let t=[];h.isBone===!0&&t.push(h);for(let e=0;e<h.children.length;e++)t.push(...uc(h.children[e]));return t}var Pl=class extends Vt{constructor(t,e,i){let s=new In(e,4,2),n=new Fe({wireframe:!0,fog:!1,toneMapped:!1});super(s,n),this.light=t,this.color=i,this.type=\"PointLightHelper\",this.matrix=this.light.matrixWorld,this.matrixAutoUpdate=!1,this.update()}dispose(){this.geometry.dispose(),this.material.dispose()}update(){this.light.updateWorldMatrix(!0,!1),this.color!==void 0?this.material.color.set(this.color):this.material.color.copy(this.light.color)}},gp=new M,Rl=new U,Ol=new U,El=class extends Y{constructor(t,e,i){super(),this.light=t,this.matrix=t.matrixWorld,this.matrixAutoUpdate=!1,this.color=i,this.type=\"HemisphereLightHelper\";let s=new Tn(e);s.rotateY(Math.PI*.5),this.material=new Fe({wireframe:!0,fog:!1,toneMapped:!1}),this.color===void 0&&(this.material.vertexColors=!0);let n=s.getAttribute(\"position\"),r=new Float32Array(n.count*3);s.setAttribute(\"color\",new j(r,3)),this.add(new Vt(s,this.material)),this.update()}dispose(){this.children[0].geometry.dispose(),this.children[0].material.dispose()}update(){let t=this.children[0];if(this.color!==void 0)this.material.color.set(this.color);else{let e=t.geometry.getAttribute(\"color\");Rl.copy(this.light.color),Ol.copy(this.light.groundColor);for(let i=0,s=e.count;i<s;i++){let n=i<s/2?Rl:Ol;e.setXYZ(i,n.r,n.g,n.b)}e.needsUpdate=!0}this.light.updateWorldMatrix(!0,!1),t.lookAt(gp.setFromMatrixPosition(this.light.matrixWorld).negate())}},Nl=class extends Ht{constructor(t=10,e=10,i=4473924,s=8947848){i=new U(i),s=new U(s);let n=e/2,r=t/e,o=t/2,a=[],l=[];for(let d=0,p=0,f=-o;d<=e;d++,f+=r){a.push(-o,0,f,o,0,f),a.push(f,0,-o,f,0,o);let m=d===n?i:s;m.toArray(l,p),p+=3,m.toArray(l,p),p+=3,m.toArray(l,p),p+=3,m.toArray(l,p),p+=3}let c=new G;c.setAttribute(\"position\",new k(a,3)),c.setAttribute(\"color\",new k(l,3));let u=new bt({vertexColors:!0,toneMapped:!1});super(c,u),this.type=\"GridHelper\"}dispose(){this.geometry.dispose(),this.material.dispose()}},Vl=class extends Ht{constructor(t=10,e=16,i=8,s=64,n=4473924,r=8947848){n=new U(n),r=new U(r);let o=[],a=[];if(e>1)for(let u=0;u<e;u++){let d=u/e*(Math.PI*2),p=Math.sin(d)*t,f=Math.cos(d)*t;o.push(0,0,0),o.push(p,0,f);let m=u&1?n:r;a.push(m.r,m.g,m.b),a.push(m.r,m.g,m.b)}for(let u=0;u<i;u++){let d=u&1?n:r,p=t-t/i*u;for(let f=0;f<s;f++){let m=f/s*(Math.PI*2),g=Math.sin(m)*p,y=Math.cos(m)*p;o.push(g,0,y),a.push(d.r,d.g,d.b),m=(f+1)/s*(Math.PI*2),g=Math.sin(m)*p,y=Math.cos(m)*p,o.push(g,0,y),a.push(d.r,d.g,d.b)}}let l=new G;l.setAttribute(\"position\",new k(o,3)),l.setAttribute(\"color\",new k(a,3));let c=new bt({vertexColors:!0,toneMapped:!1});super(l,c),this.type=\"PolarGridHelper\"}dispose(){this.geometry.dispose(),this.material.dispose()}},Dl=new M,Qs=new M,Ll=new M,Ul=class extends Y{constructor(t,e,i){super(),this.light=t,this.matrix=t.matrixWorld,this.matrixAutoUpdate=!1,this.color=i,this.type=\"DirectionalLightHelper\",e===void 0&&(e=1);let s=new G;s.setAttribute(\"position\",new k([-e,e,0,e,e,0,e,-e,0,-e,-e,0,-e,e,0],3));let n=new bt({fog:!1,toneMapped:!1});this.lightPlane=new xe(s,n),this.add(this.lightPlane),s=new G,s.setAttribute(\"position\",new k([0,0,0,0,0,1],3)),this.targetLine=new xe(s,n),this.add(this.targetLine),this.update()}dispose(){this.lightPlane.geometry.dispose(),this.lightPlane.material.dispose(),this.targetLine.geometry.dispose(),this.targetLine.material.dispose()}update(){this.light.updateWorldMatrix(!0,!1),this.light.target.updateWorldMatrix(!0,!1),Dl.setFromMatrixPosition(this.light.matrixWorld),Qs.setFromMatrixPosition(this.light.target.matrixWorld),Ll.subVectors(Qs,Dl),this.lightPlane.lookAt(Qs),this.color!==void 0?(this.lightPlane.material.color.set(this.color),this.targetLine.material.color.set(this.color)):(this.lightPlane.material.color.copy(this.light.color),this.targetLine.material.color.copy(this.light.color)),this.targetLine.lookAt(Qs),this.targetLine.scale.z=Ll.length()}},Ks=new M,nt=new cs,Wl=class extends Ht{constructor(t){let e=new G,i=new bt({color:16777215,vertexColors:!0,toneMapped:!1}),s=[],n=[],r={};o(\"n1\",\"n2\"),o(\"n2\",\"n4\"),o(\"n4\",\"n3\"),o(\"n3\",\"n1\"),o(\"f1\",\"f2\"),o(\"f2\",\"f4\"),o(\"f4\",\"f3\"),o(\"f3\",\"f1\"),o(\"n1\",\"f1\"),o(\"n2\",\"f2\"),o(\"n3\",\"f3\"),o(\"n4\",\"f4\"),o(\"p\",\"n1\"),o(\"p\",\"n2\"),o(\"p\",\"n3\"),o(\"p\",\"n4\"),o(\"u1\",\"u2\"),o(\"u2\",\"u3\"),o(\"u3\",\"u1\"),o(\"c\",\"t\"),o(\"p\",\"c\"),o(\"cn1\",\"cn2\"),o(\"cn3\",\"cn4\"),o(\"cf1\",\"cf2\"),o(\"cf3\",\"cf4\");function o(f,m){a(f),a(m)}function a(f){s.push(0,0,0),n.push(0,0,0),r[f]===void 0&&(r[f]=[]),r[f].push(s.length/3-1)}e.setAttribute(\"position\",new k(s,3)),e.setAttribute(\"color\",new k(n,3)),super(e,i),this.type=\"CameraHelper\",this.camera=t,this.camera.updateProjectionMatrix&&this.camera.updateProjectionMatrix(),this.matrix=t.matrixWorld,this.matrixAutoUpdate=!1,this.pointMap=r,this.update();let l=new U(16755200),c=new U(16711680),u=new U(43775),d=new U(16777215),p=new U(3355443);this.setColors(l,c,u,d,p)}setColors(t,e,i,s,n){let o=this.geometry.getAttribute(\"color\");return o.setXYZ(0,t.r,t.g,t.b),o.setXYZ(1,t.r,t.g,t.b),o.setXYZ(2,t.r,t.g,t.b),o.setXYZ(3,t.r,t.g,t.b),o.setXYZ(4,t.r,t.g,t.b),o.setXYZ(5,t.r,t.g,t.b),o.setXYZ(6,t.r,t.g,t.b),o.setXYZ(7,t.r,t.g,t.b),o.setXYZ(8,t.r,t.g,t.b),o.setXYZ(9,t.r,t.g,t.b),o.setXYZ(10,t.r,t.g,t.b),o.setXYZ(11,t.r,t.g,t.b),o.setXYZ(12,t.r,t.g,t.b),o.setXYZ(13,t.r,t.g,t.b),o.setXYZ(14,t.r,t.g,t.b),o.setXYZ(15,t.r,t.g,t.b),o.setXYZ(16,t.r,t.g,t.b),o.setXYZ(17,t.r,t.g,t.b),o.setXYZ(18,t.r,t.g,t.b),o.setXYZ(19,t.r,t.g,t.b),o.setXYZ(20,t.r,t.g,t.b),o.setXYZ(21,t.r,t.g,t.b),o.setXYZ(22,t.r,t.g,t.b),o.setXYZ(23,t.r,t.g,t.b),o.setXYZ(24,e.r,e.g,e.b),o.setXYZ(25,e.r,e.g,e.b),o.setXYZ(26,e.r,e.g,e.b),o.setXYZ(27,e.r,e.g,e.b),o.setXYZ(28,e.r,e.g,e.b),o.setXYZ(29,e.r,e.g,e.b),o.setXYZ(30,e.r,e.g,e.b),o.setXYZ(31,e.r,e.g,e.b),o.setXYZ(32,i.r,i.g,i.b),o.setXYZ(33,i.r,i.g,i.b),o.setXYZ(34,i.r,i.g,i.b),o.setXYZ(35,i.r,i.g,i.b),o.setXYZ(36,i.r,i.g,i.b),o.setXYZ(37,i.r,i.g,i.b),o.setXYZ(38,s.r,s.g,s.b),o.setXYZ(39,s.r,s.g,s.b),o.setXYZ(40,n.r,n.g,n.b),o.setXYZ(41,n.r,n.g,n.b),o.setXYZ(42,n.r,n.g,n.b),o.setXYZ(43,n.r,n.g,n.b),o.setXYZ(44,n.r,n.g,n.b),o.setXYZ(45,n.r,n.g,n.b),o.setXYZ(46,n.r,n.g,n.b),o.setXYZ(47,n.r,n.g,n.b),o.setXYZ(48,n.r,n.g,n.b),o.setXYZ(49,n.r,n.g,n.b),o.needsUpdate=!0,this}update(){let t=this.geometry,e=this.pointMap,i=1,s=1,n,r;if(nt.projectionMatrixInverse.copy(this.camera.projectionMatrixInverse),this.camera.reversedDepth===!0)n=1,r=0;else if(this.camera.coordinateSystem===Qt)n=-1,r=1;else if(this.camera.coordinateSystem===Ii)n=0,r=1;else throw new Error(\"THREE.CameraHelper.update(): Invalid coordinate system: \"+this.camera.coordinateSystem);rt(\"c\",e,t,nt,0,0,n),rt(\"t\",e,t,nt,0,0,r),rt(\"n1\",e,t,nt,-i,-s,n),rt(\"n2\",e,t,nt,i,-s,n),rt(\"n3\",e,t,nt,-i,s,n),rt(\"n4\",e,t,nt,i,s,n),rt(\"f1\",e,t,nt,-i,-s,r),rt(\"f2\",e,t,nt,i,-s,r),rt(\"f3\",e,t,nt,-i,s,r),rt(\"f4\",e,t,nt,i,s,r),rt(\"u1\",e,t,nt,i*.7,s*1.1,n),rt(\"u2\",e,t,nt,-i*.7,s*1.1,n),rt(\"u3\",e,t,nt,0,s*2,n),rt(\"cf1\",e,t,nt,-i,0,r),rt(\"cf2\",e,t,nt,i,0,r),rt(\"cf3\",e,t,nt,0,-s,r),rt(\"cf4\",e,t,nt,0,s,r),rt(\"cn1\",e,t,nt,-i,0,n),rt(\"cn2\",e,t,nt,i,0,n),rt(\"cn3\",e,t,nt,0,-s,n),rt(\"cn4\",e,t,nt,0,s,n),t.getAttribute(\"position\").needsUpdate=!0}dispose(){this.geometry.dispose(),this.material.dispose()}};function rt(h,t,e,i,s,n,r){Ks.set(s,n,r).unproject(i);let o=t[h];if(o!==void 0){let a=e.getAttribute(\"position\");for(let l=0,c=o.length;l<c;l++)a.setXYZ(o[l],Ks.x,Ks.y,Ks.z)}}var tn=new pt,ql=class extends Ht{constructor(t,e=16776960){let i=new Uint16Array([0,1,1,2,2,3,3,0,4,5,5,6,6,7,7,4,0,4,1,5,2,6,3,7]),s=new Float32Array(24),n=new G;n.setIndex(new j(i,1)),n.setAttribute(\"position\",new j(s,3)),super(n,new bt({color:e,toneMapped:!1})),this.object=t,this.type=\"BoxHelper\",this.matrixAutoUpdate=!1,this.update()}update(){if(this.object!==void 0&&tn.setFromObject(this.object),tn.isEmpty())return;let t=tn.min,e=tn.max,i=this.geometry.attributes.position,s=i.array;s[0]=e.x,s[1]=e.y,s[2]=e.z,s[3]=t.x,s[4]=e.y,s[5]=e.z,s[6]=t.x,s[7]=t.y,s[8]=e.z,s[9]=e.x,s[10]=t.y,s[11]=e.z,s[12]=e.x,s[13]=e.y,s[14]=t.z,s[15]=t.x,s[16]=e.y,s[17]=t.z,s[18]=t.x,s[19]=t.y,s[20]=t.z,s[21]=e.x,s[22]=t.y,s[23]=t.z,i.needsUpdate=!0,this.geometry.computeBoundingSphere()}setFromObject(t){return this.object=t,this.update(),this}copy(t,e){return super.copy(t,e),this.object=t.object,this}dispose(){this.geometry.dispose(),this.material.dispose()}},Jl=class extends Ht{constructor(t,e=16776960){let i=new Uint16Array([0,1,1,2,2,3,3,0,4,5,5,6,6,7,7,4,0,4,1,5,2,6,3,7]),s=[1,1,1,-1,1,1,-1,-1,1,1,-1,1,1,1,-1,-1,1,-1,-1,-1,-1,1,-1,-1],n=new G;n.setIndex(new j(i,1)),n.setAttribute(\"position\",new k(s,3)),super(n,new bt({color:e,toneMapped:!1})),this.box=t,this.type=\"Box3Helper\",this.geometry.computeBoundingSphere()}updateMatrixWorld(t){let e=this.box;e.isEmpty()||(e.getCenter(this.position),e.getSize(this.scale),this.scale.multiplyScalar(.5),super.updateMatrixWorld(t))}dispose(){this.geometry.dispose(),this.material.dispose()}},Gl=class extends xe{constructor(t,e=1,i=16776960){let s=i,n=[1,-1,0,-1,1,0,-1,-1,0,1,1,0,-1,1,0,-1,-1,0,1,-1,0,1,1,0],r=new G;r.setAttribute(\"position\",new k(n,3)),r.computeBoundingSphere(),super(r,new bt({color:s,toneMapped:!1})),this.type=\"PlaneHelper\",this.plane=t,this.size=e;let o=[1,1,0,-1,1,0,-1,-1,0,1,1,0,-1,-1,0,1,-1,0],a=new G;a.setAttribute(\"position\",new k(o,3)),a.computeBoundingSphere(),this.add(new Vt(a,new Fe({color:s,opacity:.2,transparent:!0,depthWrite:!1,toneMapped:!1})))}updateMatrixWorld(t){this.position.set(0,0,0),this.scale.set(.5*this.size,.5*this.size,1),this.lookAt(this.plane.normal),this.translateZ(-this.plane.constant),super.updateMatrixWorld(t)}dispose(){this.geometry.dispose(),this.material.dispose(),this.children[0].geometry.dispose(),this.children[0].material.dispose()}},Xl=new M,en,vr,Hl=class extends Y{constructor(t=new M(0,0,1),e=new M(0,0,0),i=1,s=16776960,n=i*.2,r=n*.2){super(),this.type=\"ArrowHelper\",en===void 0&&(en=new G,en.setAttribute(\"position\",new k([0,0,0,0,1,0],3)),vr=new bn(.5,1,5,1),vr.translate(0,-.5,0)),this.position.copy(e),this.line=new xe(en,new bt({color:s,toneMapped:!1})),this.line.matrixAutoUpdate=!1,this.add(this.line),this.cone=new Vt(vr,new Fe({color:s,toneMapped:!1})),this.cone.matrixAutoUpdate=!1,this.add(this.cone),this.setDirection(t),this.setLength(i,n,r)}setDirection(t){if(t.y>.99999)this.quaternion.set(0,0,0,1);else if(t.y<-.99999)this.quaternion.set(1,0,0,0);else{Xl.set(t.z,0,-t.x).normalize();let e=Math.acos(t.y);this.quaternion.setFromAxisAngle(Xl,e)}}setLength(t,e=t*.2,i=e*.2){this.line.scale.set(1,Math.max(1e-4,t-e),1),this.line.updateMatrix(),this.cone.scale.set(i,e,i),this.cone.position.y=t,this.cone.updateMatrix()}setColor(t){this.line.material.color.set(t),this.cone.material.color.set(t)}copy(t){return super.copy(t,!1),this.line.copy(t.line),this.cone.copy(t.cone),this}dispose(){this.line.geometry.dispose(),this.line.material.dispose(),this.cone.geometry.dispose(),this.cone.material.dispose()}},Zl=class extends Ht{constructor(t=1){let e=[0,0,0,t,0,0,0,0,0,0,t,0,0,0,0,0,0,t],i=[1,0,0,1,.6,0,0,1,0,.6,1,0,0,0,1,0,.6,1],s=new G;s.setAttribute(\"position\",new k(e,3)),s.setAttribute(\"color\",new k(i,3));let n=new bt({vertexColors:!0,toneMapped:!1});super(s,n),this.type=\"AxesHelper\"}setColors(t,e,i){let s=new U,n=this.geometry.attributes.color.array;return s.set(t),s.toArray(n,0),s.toArray(n,3),s.set(e),s.toArray(n,6),s.toArray(n,9),s.set(i),s.toArray(n,12),s.toArray(n,15),this.geometry.attributes.color.needsUpdate=!0,this}dispose(){this.geometry.dispose(),this.material.dispose()}},Yl=class{constructor(){this.type=\"ShapePath\",this.color=new U,this.subPaths=[],this.currentPath=null}moveTo(t,e){return this.currentPath=new rs,this.subPaths.push(this.currentPath),this.currentPath.moveTo(t,e),this}lineTo(t,e){return this.currentPath.lineTo(t,e),this}quadraticCurveTo(t,e,i,s){return this.currentPath.quadraticCurveTo(t,e,i,s),this}bezierCurveTo(t,e,i,s,n,r){return this.currentPath.bezierCurveTo(t,e,i,s,n,r),this}splineThru(t){return this.currentPath.splineThru(t),this}toShapes(t){function e(y){let x=[];for(let b=0,w=y.length;b<w;b++){let _=y[b],v=new Ce;v.curves=_.curves,x.push(v)}return x}function i(y,x){let b=x.length,w=!1;for(let _=b-1,v=0;v<b;_=v++){let A=x[_],S=x[v],T=S.x-A.x,I=S.y-A.y;if(Math.abs(I)>Number.EPSILON){if(I<0&&(A=x[v],T=-T,S=x[_],I=-I),y.y<A.y||y.y>S.y)continue;if(y.y===A.y){if(y.x===A.x)return!0}else{let F=I*(y.x-A.x)-T*(y.y-A.y);if(F===0)return!0;if(F<0)continue;w=!w}}else{if(y.y!==A.y)continue;if(S.x<=y.x&&y.x<=A.x||A.x<=y.x&&y.x<=S.x)return!0}}return w}let s=Kt.isClockWise,n=this.subPaths;if(n.length===0)return[];let r,o,a,l=[];if(n.length===1)return o=n[0],a=new Ce,a.curves=o.curves,l.push(a),l;let c=!s(n[0].getPoints());c=t?!c:c;let u=[],d=[],p=[],f=0,m;d[f]=void 0,p[f]=[];for(let y=0,x=n.length;y<x;y++)o=n[y],m=o.getPoints(),r=s(m),r=t?!r:r,r?(!c&&d[f]&&f++,d[f]={s:new Ce,p:m},d[f].s.curves=o.curves,c&&f++,p[f]=[]):p[f].push({h:o,p:m[0]});if(!d[0])return e(n);if(d.length>1){let y=!1,x=0;for(let b=0,w=d.length;b<w;b++)u[b]=[];for(let b=0,w=d.length;b<w;b++){let _=p[b];for(let v=0;v<_.length;v++){let A=_[v],S=!0;for(let T=0;T<d.length;T++)i(A.p,d[T].p)&&(b!==T&&x++,S?(S=!1,u[T].push(A)):y=!0);S&&u[b].push(A)}}x>0&&y===!1&&(p=u)}let g;for(let y=0,x=d.length;y<x;y++){a=d[y].s,l.push(a),g=p[y];for(let b=0,w=g.length;b<w;b++)a.holes.push(g[b].h)}return l}},$l=class extends te{constructor(t,e=null){super(),this.object=t,this.domElement=e,this.enabled=!0,this.state=-1,this.keys={},this.mouseButtons={LEFT:null,MIDDLE:null,RIGHT:null},this.touches={ONE:null,TWO:null}}connect(t){if(t===void 0){N(\"Controls: connect() now requires an element.\");return}this.domElement!==null&&this.disconnect(),this.domElement=t}disconnect(){}dispose(){}update(){}};function xp(h,t){let e=h.image&&h.image.width?h.image.width/h.image.height:1;return e>t?(h.repeat.x=1,h.repeat.y=e/t,h.offset.x=0,h.offset.y=(1-h.repeat.y)/2):(h.repeat.x=t/e,h.repeat.y=1,h.offset.x=(1-h.repeat.x)/2,h.offset.y=0),h}function bp(h,t){let e=h.image&&h.image.width?h.image.width/h.image.height:1;return e>t?(h.repeat.x=t/e,h.repeat.y=1,h.offset.x=(1-h.repeat.x)/2,h.offset.y=0):(h.repeat.x=1,h.repeat.y=e/t,h.offset.x=0,h.offset.y=(1-h.repeat.y)/2),h}function wp(h){return h.repeat.x=1,h.repeat.y=1,h.offset.x=0,h.offset.y=0,h}function Mp(h,t,e,i){let s=_p(i);switch(e){case Oc:return h*t;case Ql:return h*t/s.components*s.byteLength;case Kl:return h*t/s.components*s.byteLength;case Vc:return h*t*2/s.components*s.byteLength;case Dc:return h*t*2/s.components*s.byteLength;case Ec:return h*t*3/s.components*s.byteLength;case Ki:return h*t*4/s.components*s.byteLength;case Lc:return h*t*4/s.components*s.byteLength;case Uc:case Wc:return Math.floor((h+3)/4)*Math.floor((t+3)/4)*8;case qc:case Jc:return Math.floor((h+3)/4)*Math.floor((t+3)/4)*16;case Xc:case Zc:return Math.max(h,16)*Math.max(t,8)/4;case Gc:case Hc:return Math.max(h,8)*Math.max(t,8)/2;case Yc:case $c:case Qc:case Kc:return Math.floor((h+3)/4)*Math.floor((t+3)/4)*8;case jc:case tu:case eu:return Math.floor((h+3)/4)*Math.floor((t+3)/4)*16;case iu:return Math.floor((h+3)/4)*Math.floor((t+3)/4)*16;case su:return Math.floor((h+4)/5)*Math.floor((t+3)/4)*16;case nu:return Math.floor((h+4)/5)*Math.floor((t+4)/5)*16;case ru:return Math.floor((h+5)/6)*Math.floor((t+4)/5)*16;case ou:return Math.floor((h+5)/6)*Math.floor((t+5)/6)*16;case au:return Math.floor((h+7)/8)*Math.floor((t+4)/5)*16;case hu:return Math.floor((h+7)/8)*Math.floor((t+5)/6)*16;case lu:return Math.floor((h+7)/8)*Math.floor((t+7)/8)*16;case cu:return Math.floor((h+9)/10)*Math.floor((t+4)/5)*16;case uu:return Math.floor((h+9)/10)*Math.floor((t+5)/6)*16;case du:return Math.floor((h+9)/10)*Math.floor((t+7)/8)*16;case pu:return Math.floor((h+9)/10)*Math.floor((t+9)/10)*16;case fu:return Math.floor((h+11)/12)*Math.floor((t+9)/10)*16;case mu:return Math.floor((h+11)/12)*Math.floor((t+11)/12)*16;case yu:case gu:case xu:return Math.ceil(h/4)*Math.ceil(t/4)*16;case bu:case wu:return Math.ceil(h/4)*Math.ceil(t/4)*8;case Mu:case _u:return Math.ceil(h/4)*Math.ceil(t/4)*16}throw new Error(`Unable to determine texture byte length for ${e} format.`)}function _p(h){switch(h){case ra:case Tc:return{byteLength:1,components:1};case Cc:case Ic:case Fc:return{byteLength:2,components:1};case Bc:case kc:return{byteLength:2,components:4};case Vn:case zc:case Ti:return{byteLength:4,components:1};case Pc:case Rc:return{byteLength:4,components:3}}throw new Error(`Unknown texture type ${h}.`)}var jl=class{static contain(t,e){return xp(t,e)}static cover(t,e){return bp(t,e)}static fill(t){return wp(t)}static getByteLength(t,e,i,s){return Mp(t,e,i,s)}};typeof __THREE_DEVTOOLS__<\"u\"&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent(\"register\",{detail:{revision:\"183\"}}));typeof window<\"u\"&&(window.__THREE__?N(\"WARNING: Multiple instances of Three.js being imported.\"):window.__THREE__=\"183\");export{uf as ACESFilmicToneMapping,wa as AddEquation,of as AddOperation,tc as AdditiveAnimationBlendMode,Ep as AdditiveBlending,pf as AgXToneMapping,Oc as AlphaFormat,Qf as AlwaysCompare,Sa as AlwaysDepth,Ra as AlwaysStencilFunc,Jo as AmbientLight,ta as AnimationAction,Pi as AnimationClip,qh as AnimationLoader,pl as AnimationMixer,dl as AnimationObjectGroup,Uh as AnimationUtils,to as ArcCurve,al as ArrayCamera,Hl as ArrowHelper,Fa as AttachedBindMode,jo as Audio,ul as AudioAnalyser,En as AudioContext,hl as AudioListener,il as AudioLoader,Zl as AxesHelper,gc as BackSide,Tu as BasicDepthPacking,Fp as BasicShadowMap,qr as BatchedMesh,Ro as BezierInterpolant,pn as Bone,Be as BooleanKeyframeTrack,Il as Box2,pt as Box3,Jl as Box3Helper,Yr as BoxGeometry,ql as BoxHelper,j as BufferAttribute,G as BufferGeometry,Yo as BufferGeometryLoader,Tc as ByteType,ye as Cache,cs as Camera,Wl as CameraHelper,kh as CanvasTexture,$r as CapsuleGeometry,eo as CatmullRomCurve3,cf as CineonToneMapping,jr as CircleGeometry,jt as ClampToEdgeWrapping,_l as Clock,U as Color,Bn as ColorKeyframeTrack,Ft as ColorManagement,dm as Compatibility,Fh as CompressedArrayTexture,Bh as CompressedCubeTexture,ss as CompressedTexture,Jh as CompressedTextureLoader,bn as ConeGeometry,sf as ConstantAlphaFactor,tf as ConstantColorFactor,$l as Controls,ol as CubeCamera,Ph as CubeDepthTexture,Nn as CubeReflectionMapping,bc as CubeRefractionMapping,gn as CubeTexture,Gh as CubeTextureLoader,_c as CubeUVReflectionMapping,wn as CubicBezierCurve,io as CubicBezierCurve3,ko as CubicInterpolant,Ip as CullFaceBack,Cp as CullFaceFront,zp as CullFaceFrontBack,Tp as CullFaceNone,Dt as Curve,no as CurvePath,Dp as CustomBlending,df as CustomToneMapping,xn as CylinderGeometry,Sl as Cylindrical,cn as Data3DTexture,Fr as DataArrayTexture,Xt as DataTexture,Xh as DataTextureLoader,Ka as DataUtils,Rf as DecrementStencilOp,Ef as DecrementWrapStencilOp,tp as DefaultLoadingManager,Ir as DepthFormat,Nc as DepthStencilFormat,Zr as DepthTexture,xc as DetachedBindMode,qo as DirectionalLight,Ul as DirectionalLightHelper,Po as DiscreteInterpolant,Qr as DodecahedronGeometry,Rp as DoubleSide,Yp as DstAlphaFactor,jp as DstColorFactor,rm as DynamicCopyUsage,Kf as DynamicDrawUsage,im as DynamicReadUsage,Kr as EdgesGeometry,ns as EllipseCurve,Hf as EqualCompare,Ta as EqualDepth,Lf as EqualStencilFunc,wc as EquirectangularReflectionMapping,Mc as EquirectangularRefractionMapping,ie as Euler,te as EventDispatcher,Rh as ExternalTexture,ho as ExtrudeGeometry,se as FileLoader,rh as Float16BufferAttribute,k as Float32BufferAttribute,Ti as FloatType,kr as Fog,Br as FogExp2,zh as FramebufferTexture,Sr as FrontSide,is as Frustum,Ur as FrustumArray,xl as GLBufferAttribute,am as GLSL1,hm as GLSL3,Yf as GreaterCompare,Ca as GreaterDepth,jf as GreaterEqualCompare,Ia as GreaterEqualDepth,Jf as GreaterEqualStencilFunc,Wf as GreaterStencilFunc,Nl as GridHelper,Xe as Group,Fc as HalfFloatType,No as HemisphereLight,El as HemisphereLightHelper,lo as IcosahedronGeometry,el as ImageBitmapLoader,Ri as ImageLoader,zr as ImageUtils,Pf as IncrementStencilOp,Of as IncrementWrapStencilOp,$e as InstancedBufferAttribute,Zo as InstancedBufferGeometry,gl as InstancedInterleavedBuffer,Lr as InstancedMesh,sh as Int16BufferAttribute,nh as Int32BufferAttribute,th as Int8BufferAttribute,zc as IntType,es as InterleavedBuffer,Ci as InterleavedBufferAttribute,Ke as Interpolant,Ba as InterpolateBezier,nn as InterpolateDiscrete,Cr as InterpolateLinear,Dn as InterpolateSmooth,um as InterpolationSamplingMode,cm as InterpolationSamplingType,Nf as InvertStencilOp,ei as KeepStencilOp,Pt as KeyframeTrack,Nr as LOD,co as LatheGeometry,un as Layers,Xf as LessCompare,Aa as LessDepth,Zf as LessEqualCompare,sn as LessEqualDepth,Uf as LessEqualStencilFunc,Df as LessStencilFunc,be as Light,Xo as LightProbe,xe as Line,zl as Line3,bt as LineBasicMaterial,Mn as LineCurve,so as LineCurve3,Fo as LineDashedMaterial,Jr as LineLoop,Ht as LineSegments,Gt as LinearFilter,Fn as LinearInterpolant,xf as LinearMipMapLinearFilter,gf as LinearMipMapNearestFilter,na as LinearMipmapLinearFilter,Ac as LinearMipmapNearestFilter,ka as LinearSRGBColorSpace,hf as LinearToneMapping,Pa as LinearTransfer,_t as Loader,On as LoaderUtils,kn as LoadingManager,vu as LoopOnce,Au as LoopPingPong,Su as LoopRepeat,Sp as MOUSE,ft as Material,Lp as MaterialBlending,Ho as MaterialLoader,xm as MathUtils,Al as Matrix2,ee as Matrix3,q as Matrix4,Jp as MaxEquation,Vt as Mesh,Fe as MeshBasicMaterial,Io as MeshDepthMaterial,Co as MeshDistanceMaterial,To as MeshLambertMaterial,zo as MeshMatcapMaterial,Ao as MeshNormalMaterial,vo as MeshPhongMaterial,_o as MeshPhysicalMaterial,zn as MeshStandardMaterial,So as MeshToonMaterial,qp as MinEquation,Tr as MirroredRepeatWrapping,rf as MixOperation,Vp as MultiplyBlending,ia as MultiplyOperation,kt as NearestFilter,yf as NearestMipMapLinearFilter,mf as NearestMipMapNearestFilter,Sc as NearestMipmapLinearFilter,vc as NearestMipmapNearestFilter,ff as NeutralToneMapping,Gf as NeverCompare,va as NeverDepth,Vf as NeverStencilFunc,Op as NoBlending,ec as NoColorSpace,Cf as NoNormalPacking,af as NoToneMapping,oa as NormalAnimationBlendMode,ba as NormalBlending,Ff as NormalGAPacking,zf as NormalRGPacking,$f as NotEqualCompare,za as NotEqualDepth,qf as NotEqualStencilFunc,Fi as NumberKeyframeTrack,Y as Object3D,Qh as ObjectLoader,If as ObjectSpaceNormalMap,Tn as OctahedronGeometry,Xp as OneFactor,nf as OneMinusConstantAlphaFactor,ef as OneMinusConstantColorFactor,$p as OneMinusDstAlphaFactor,Qp as OneMinusDstColorFactor,_a as OneMinusSrcAlphaFactor,Zp as OneMinusSrcColorFactor,Pn as OrthographicCamera,Bp as PCFShadowMap,kp as PCFSoftShadowMap,rs as Path,At as PerspectiveCamera,Ie as Plane,uo as PlaneGeometry,Gl as PlaneHelper,Uo as PointLight,Pl as PointLightHelper,Xr as Points,yn as PointsMaterial,Vl as PolarGridHelper,je as PolyhedronGeometry,cl as PositionalAudio,$ as PropertyBinding,Qo as PropertyMixer,_n as QuadraticBezierCurve,vn as QuadraticBezierCurve3,xt as Quaternion,Bi as QuaternionKeyframeTrack,Oo as QuaternionLinearInterpolant,Qc as R11_EAC_Format,ts as RAD2DEG,Mu as RED_GREEN_RGTC2_Format,bu as RED_RGTC1_Format,vp as REVISION,tu as RG11_EAC_Format,Sf as RGBADepthPacking,Ki as RGBAFormat,Lc as RGBAIntegerFormat,pu as RGBA_ASTC_10x10_Format,cu as RGBA_ASTC_10x5_Format,uu as RGBA_ASTC_10x6_Format,du as RGBA_ASTC_10x8_Format,fu as RGBA_ASTC_12x10_Format,mu as RGBA_ASTC_12x12_Format,iu as RGBA_ASTC_4x4_Format,su as RGBA_ASTC_5x4_Format,nu as RGBA_ASTC_5x5_Format,ru as RGBA_ASTC_6x5_Format,ou as RGBA_ASTC_6x6_Format,au as RGBA_ASTC_8x5_Format,hu as RGBA_ASTC_8x6_Format,lu as RGBA_ASTC_8x8_Format,yu as RGBA_BPTC_Format,jc as RGBA_ETC2_EAC_Format,Zc as RGBA_PVRTC_2BPPV1_Format,Hc as RGBA_PVRTC_4BPPV1_Format,Wc as RGBA_S3TC_DXT1_Format,qc as RGBA_S3TC_DXT3_Format,Jc as RGBA_S3TC_DXT5_Format,Af as RGBDepthPacking,Ec as RGBFormat,wf as RGBIntegerFormat,gu as RGB_BPTC_SIGNED_Format,xu as RGB_BPTC_UNSIGNED_Format,Yc as RGB_ETC1_Format,$c as RGB_ETC2_Format,Xc as RGB_PVRTC_2BPPV1_Format,Gc as RGB_PVRTC_4BPPV1_Format,Uc as RGB_S3TC_DXT1_Format,Tf as RGDepthPacking,Vc as RGFormat,Dc as RGIntegerFormat,Mo as RawShaderMaterial,Ye as Ray,wl as Raycaster,Go as RectAreaLight,Ql as RedFormat,Kl as RedIntegerFormat,lf as ReinhardToneMapping,hn as RenderTarget,fl as RenderTarget3D,Ar as RepeatWrapping,kf as ReplaceStencilOp,Wp as ReverseSubtractEquation,gm as ReversedDepthFuncs,po as RingGeometry,Kc as SIGNED_R11_EAC_Format,_u as SIGNED_RED_GREEN_RGTC2_Format,wu as SIGNED_RED_RGTC1_Format,eu as SIGNED_RG11_EAC_Format,Et as SRGBColorSpace,Ln as SRGBTransfer,Pr as Scene,Cn as ShaderMaterial,wo as ShadowMaterial,Ce as Shape,fo as ShapeGeometry,Yl as ShapePath,Kt as ShapeUtils,Ic as ShortType,Dr as Skeleton,kl as SkeletonHelper,Vr as SkinnedMesh,me as Source,ut as Sphere,In as SphereGeometry,vl as Spherical,Rn as SphericalHarmonics3,Sn as SplineCurve,Do as SpotLight,Bl as SpotLightHelper,Er as Sprite,dn as SpriteMaterial,Ma as SrcAlphaFactor,Kp as SrcAlphaSaturateFactor,Hp as SrcColorFactor,nm as StaticCopyUsage,on as StaticDrawUsage,em as StaticReadUsage,rl as StereoCamera,om as StreamCopyUsage,tm as StreamDrawUsage,sm as StreamReadUsage,ke as StringKeyframeTrack,Up as SubtractEquation,Np as SubtractiveBlending,Ap as TOUCH,Oi as TangentSpaceNormalMap,mo as TetrahedronGeometry,dt as Texture,Hh as TextureLoader,jl as TextureUtils,$o as Timer,lm as TimestampQuery,yo as TorusGeometry,go as TorusKnotGeometry,pe as Triangle,vf as TriangleFanDrawMode,_f as TriangleStripDrawMode,Mf as TrianglesDrawMode,xo as TubeGeometry,sa as UVMapping,Rr as Uint16BufferAttribute,Or as Uint32BufferAttribute,eh as Uint8BufferAttribute,ih as Uint8ClampedBufferAttribute,ml as Uniform,yl as UniformsGroup,wm as UniformsUtils,ra as UnsignedByteType,Rc as UnsignedInt101111Type,bf as UnsignedInt248Type,Pc as UnsignedInt5999Type,Vn as UnsignedIntType,Bc as UnsignedShort4444Type,kc as UnsignedShort5551Type,Cc as UnsignedShortType,Pp as VSMShadowMap,C as Vector2,M as Vector3,Nt as Vector4,ki as VectorKeyframeTrack,Ch as VideoFrameTexture,Hr as VideoTexture,qa as WebGL3DRenderTarget,Wa as WebGLArrayRenderTarget,Qt as WebGLCoordinateSystem,ln as WebGLRenderTarget,Ii as WebGPUCoordinateSystem,ja as WebXRController,bo as WireframeGeometry,rn as WrapAroundEnding,_i as ZeroCurvatureEnding,Gp as ZeroFactor,vi as ZeroSlopeEnding,Bf as ZeroStencilOp,la as cloneUniforms,pm as createCanvasElement,an as createElementNS,Z as error,Mp as getByteLength,mm as getConsoleFunction,bm as getUnlitUniformColorSpace,ic as isTypedArray,Ea as log,Xd as mergeUniforms,ym as probeAsync,fm as setConsoleFunction,N as warn,Na as warnOnce};\n/*! Bundled license information:\n\nthree/build/three.core.js:\n  (**\n   * @license\n   * Copyright 2010-2026 Three.js Authors\n   * SPDX-License-Identifier: MIT\n   *)\n*/\n//# sourceMappingURL=three.core.mjs.map","/* esm.sh - three@0.183.2 */\nimport{Matrix3 as Oe,Vector2 as pt,Color as Qe,mergeUniforms as dt,Vector3 as Be,CubeUVReflectionMapping as Tn,Mesh as Lt,BoxGeometry as ti,ShaderMaterial as Dt,BackSide as _t,cloneUniforms as zn,Euler as Ar,Matrix4 as Zt,ColorManagement as it,SRGBTransfer as $e,PlaneGeometry as Rr,FrontSide as on,getUnlitUniformColorSpace as Cr,IntType as br,warn as Ye,HalfFloatType as yt,UnsignedByteType as xt,FloatType as It,RGBAFormat as bt,Plane as aa,CubeReflectionMapping as sn,CubeRefractionMapping as Qt,BufferGeometry as An,OrthographicCamera as Pr,PerspectiveCamera as mn,NoToneMapping as Mt,MeshBasicMaterial as oa,error as Ze,NoBlending as Pt,WebGLRenderTarget as Tt,BufferAttribute as _n,LinearSRGBColorSpace as Rn,LinearFilter as mt,CubeTexture as Lr,LinearMipmapLinearFilter as qt,CubeCamera as sa,EquirectangularReflectionMapping as Dn,EquirectangularRefractionMapping as Un,warnOnce as Dr,Uint32BufferAttribute as la,Uint16BufferAttribute as ca,Vector4 as ut,DataArrayTexture as Ur,Float32BufferAttribute as pi,RawShaderMaterial as fa,CustomToneMapping as wr,NeutralToneMapping as Ir,AgXToneMapping as Nr,ACESFilmicToneMapping as yr,CineonToneMapping as Fr,ReinhardToneMapping as Or,LinearToneMapping as Br,Data3DTexture as da,GreaterEqualCompare as ni,LessEqualCompare as ii,DepthTexture as Sn,Texture as ua,GLSL3 as hi,VSMShadowMap as rn,PCFShadowMap as gn,AddOperation as pa,MixOperation as ha,MultiplyOperation as ma,LinearTransfer as Gr,UniformsUtils as _a,DoubleSide as Ct,NormalBlending as vn,TangentSpaceNormalMap as ga,ObjectSpaceNormalMap as va,Layers as Sa,RGFormat as ln,Frustum as Hr,MeshDepthMaterial as Ea,MeshDistanceMaterial as xa,PCFSoftShadowMap as Ma,DepthFormat as Jt,NearestFilter as Vt,CubeDepthTexture as Ta,UnsignedIntType as kt,LessEqualDepth as mi,ReverseSubtractEquation as Aa,SubtractEquation as Ra,AddEquation as en,OneMinusConstantAlphaFactor as Ca,ConstantAlphaFactor as ba,OneMinusConstantColorFactor as Pa,ConstantColorFactor as La,OneMinusDstAlphaFactor as Da,OneMinusDstColorFactor as Ua,OneMinusSrcAlphaFactor as wa,OneMinusSrcColorFactor as Ia,DstAlphaFactor as Na,DstColorFactor as ya,SrcAlphaSaturateFactor as Fa,SrcAlphaFactor as Oa,SrcColorFactor as Ba,OneFactor as Ga,ZeroFactor as Ha,NotEqualDepth as Va,GreaterDepth as ka,GreaterEqualDepth as Wa,EqualDepth as za,LessDepth as Xa,AlwaysDepth as Ya,NeverDepth as qa,CullFaceNone as Ka,CullFaceBack as _i,CullFaceFront as $a,CustomBlending as Za,MultiplyBlending as gi,SubtractiveBlending as vi,AdditiveBlending as Si,ReversedDepthFuncs as Qa,MinEquation as Ja,MaxEquation as ja,MirroredRepeatWrapping as eo,ClampToEdgeWrapping as Xn,RepeatWrapping as to,LinearMipmapNearestFilter as wn,NearestMipmapLinearFilter as un,NearestMipmapNearestFilter as no,NotEqualCompare as io,GreaterCompare as ro,EqualCompare as ao,LessCompare as oo,AlwaysCompare as so,NeverCompare as lo,NoColorSpace as Yt,DepthStencilFormat as Kt,getByteLength as Ei,UnsignedInt248Type as cn,UnsignedShortType as En,createElementNS as co,UnsignedShort4444Type as Vr,UnsignedShort5551Type as kr,UnsignedInt5999Type as fo,UnsignedInt101111Type as uo,ByteType as po,ShortType as ho,AlphaFormat as mo,RGBFormat as _o,RedFormat as go,RedIntegerFormat as Wr,RGIntegerFormat as zr,RGBAIntegerFormat as Xr,RGB_S3TC_DXT1_Format as In,RGBA_S3TC_DXT1_Format as Nn,RGBA_S3TC_DXT3_Format as yn,RGBA_S3TC_DXT5_Format as Fn,RGB_PVRTC_4BPPV1_Format as xi,RGB_PVRTC_2BPPV1_Format as Mi,RGBA_PVRTC_4BPPV1_Format as Ti,RGBA_PVRTC_2BPPV1_Format as Ai,RGB_ETC1_Format as Ri,RGB_ETC2_Format as Ci,RGBA_ETC2_EAC_Format as bi,R11_EAC_Format as Pi,SIGNED_R11_EAC_Format as Li,RG11_EAC_Format as Di,SIGNED_RG11_EAC_Format as Ui,RGBA_ASTC_4x4_Format as wi,RGBA_ASTC_5x4_Format as Ii,RGBA_ASTC_5x5_Format as Ni,RGBA_ASTC_6x5_Format as yi,RGBA_ASTC_6x6_Format as Fi,RGBA_ASTC_8x5_Format as Oi,RGBA_ASTC_8x6_Format as Bi,RGBA_ASTC_8x8_Format as Gi,RGBA_ASTC_10x5_Format as Hi,RGBA_ASTC_10x6_Format as Vi,RGBA_ASTC_10x8_Format as ki,RGBA_ASTC_10x10_Format as Wi,RGBA_ASTC_12x10_Format as zi,RGBA_ASTC_12x12_Format as Xi,RGBA_BPTC_Format as Yi,RGB_BPTC_SIGNED_Format as qi,RGB_BPTC_UNSIGNED_Format as Ki,RED_RGTC1_Format as $i,SIGNED_RED_RGTC1_Format as Zi,RED_GREEN_RGTC2_Format as Qi,SIGNED_RED_GREEN_RGTC2_Format as Ji,ExternalTexture as Yr,EventDispatcher as vo,ArrayCamera as So,WebXRController as On,RAD2DEG as Eo,DataTexture as xo,createCanvasElement as Mo,SRGBColorSpace as To,REVISION as Ao,log as ji,WebGLCoordinateSystem as er,probeAsync as Ro}from\"./build/three.core.mjs\";import{AdditiveAnimationBlendMode as md,AlwaysStencilFunc as _d,AmbientLight as gd,AnimationAction as vd,AnimationClip as Sd,AnimationLoader as Ed,AnimationMixer as xd,AnimationObjectGroup as Md,AnimationUtils as Td,ArcCurve as Ad,ArrowHelper as Rd,AttachedBindMode as Cd,Audio as bd,AudioAnalyser as Pd,AudioContext as Ld,AudioListener as Dd,AudioLoader as Ud,AxesHelper as wd,BasicDepthPacking as Id,BasicShadowMap as Nd,BatchedMesh as yd,BezierInterpolant as Fd,Bone as Od,BooleanKeyframeTrack as Bd,Box2 as Gd,Box3 as Hd,Box3Helper as Vd,BoxHelper as kd,BufferGeometryLoader as Wd,Cache as zd,Camera as Xd,CameraHelper as Yd,CanvasTexture as qd,CapsuleGeometry as Kd,CatmullRomCurve3 as $d,CircleGeometry as Zd,Clock as Qd,ColorKeyframeTrack as Jd,Compatibility as jd,CompressedArrayTexture as eu,CompressedCubeTexture as tu,CompressedTexture as nu,CompressedTextureLoader as iu,ConeGeometry as ru,Controls as au,CubeTextureLoader as ou,CubicBezierCurve as su,CubicBezierCurve3 as lu,CubicInterpolant as cu,CullFaceFrontBack as fu,Curve as du,CurvePath as uu,CylinderGeometry as pu,Cylindrical as hu,DataTextureLoader as mu,DataUtils as _u,DecrementStencilOp as gu,DecrementWrapStencilOp as vu,DefaultLoadingManager as Su,DetachedBindMode as Eu,DirectionalLight as xu,DirectionalLightHelper as Mu,DiscreteInterpolant as Tu,DodecahedronGeometry as Au,DynamicCopyUsage as Ru,DynamicDrawUsage as Cu,DynamicReadUsage as bu,EdgesGeometry as Pu,EllipseCurve as Lu,EqualStencilFunc as Du,ExtrudeGeometry as Uu,FileLoader as wu,Float16BufferAttribute as Iu,Fog as Nu,FogExp2 as yu,FramebufferTexture as Fu,FrustumArray as Ou,GLBufferAttribute as Bu,GLSL1 as Gu,GreaterEqualStencilFunc as Hu,GreaterStencilFunc as Vu,GridHelper as ku,Group as Wu,HemisphereLight as zu,HemisphereLightHelper as Xu,IcosahedronGeometry as Yu,ImageBitmapLoader as qu,ImageLoader as Ku,ImageUtils as $u,IncrementStencilOp as Zu,IncrementWrapStencilOp as Qu,InstancedBufferAttribute as Ju,InstancedBufferGeometry as ju,InstancedInterleavedBuffer as ep,InstancedMesh as tp,Int16BufferAttribute as np,Int32BufferAttribute as ip,Int8BufferAttribute as rp,InterleavedBuffer as ap,InterleavedBufferAttribute as op,Interpolant as sp,InterpolateBezier as lp,InterpolateDiscrete as cp,InterpolateLinear as fp,InterpolateSmooth as dp,InterpolationSamplingMode as up,InterpolationSamplingType as pp,InvertStencilOp as hp,KeepStencilOp as mp,KeyframeTrack as _p,LOD as gp,LatheGeometry as vp,LessEqualStencilFunc as Sp,LessStencilFunc as Ep,Light as xp,LightProbe as Mp,Line as Tp,Line3 as Ap,LineBasicMaterial as Rp,LineCurve as Cp,LineCurve3 as bp,LineDashedMaterial as Pp,LineLoop as Lp,LineSegments as Dp,LinearInterpolant as Up,LinearMipMapLinearFilter as wp,LinearMipMapNearestFilter as Ip,Loader as Np,LoaderUtils as yp,LoadingManager as Fp,LoopOnce as Op,LoopPingPong as Bp,LoopRepeat as Gp,MOUSE as Hp,Material as Vp,MaterialBlending as kp,MaterialLoader as Wp,MathUtils as zp,Matrix2 as Xp,MeshLambertMaterial as Yp,MeshMatcapMaterial as qp,MeshNormalMaterial as Kp,MeshPhongMaterial as $p,MeshPhysicalMaterial as Zp,MeshStandardMaterial as Qp,MeshToonMaterial as Jp,NearestMipMapLinearFilter as jp,NearestMipMapNearestFilter as eh,NeverStencilFunc as th,NoNormalPacking as nh,NormalAnimationBlendMode as ih,NormalGAPacking as rh,NormalRGPacking as ah,NotEqualStencilFunc as oh,NumberKeyframeTrack as sh,Object3D as lh,ObjectLoader as ch,OctahedronGeometry as fh,Path as dh,PlaneHelper as uh,PointLight as ph,PointLightHelper as hh,Points as mh,PointsMaterial as _h,PolarGridHelper as gh,PolyhedronGeometry as vh,PositionalAudio as Sh,PropertyBinding as Eh,PropertyMixer as xh,QuadraticBezierCurve as Mh,QuadraticBezierCurve3 as Th,Quaternion as Ah,QuaternionKeyframeTrack as Rh,QuaternionLinearInterpolant as Ch,RGBADepthPacking as bh,RGBDepthPacking as Ph,RGBIntegerFormat as Lh,RGDepthPacking as Dh,Ray as Uh,Raycaster as wh,RectAreaLight as Ih,RenderTarget as Nh,RenderTarget3D as yh,ReplaceStencilOp as Fh,RingGeometry as Oh,Scene as Bh,ShadowMaterial as Gh,Shape as Hh,ShapeGeometry as Vh,ShapePath as kh,ShapeUtils as Wh,Skeleton as zh,SkeletonHelper as Xh,SkinnedMesh as Yh,Source as qh,Sphere as Kh,SphereGeometry as $h,Spherical as Zh,SphericalHarmonics3 as Qh,SplineCurve as Jh,SpotLight as jh,SpotLightHelper as em,Sprite as tm,SpriteMaterial as nm,StaticCopyUsage as im,StaticDrawUsage as rm,StaticReadUsage as am,StereoCamera as om,StreamCopyUsage as sm,StreamDrawUsage as lm,StreamReadUsage as cm,StringKeyframeTrack as fm,TOUCH as dm,TetrahedronGeometry as um,TextureLoader as pm,TextureUtils as hm,Timer as mm,TimestampQuery as _m,TorusGeometry as gm,TorusKnotGeometry as vm,Triangle as Sm,TriangleFanDrawMode as Em,TriangleStripDrawMode as xm,TrianglesDrawMode as Mm,TubeGeometry as Tm,UVMapping as Am,Uint8BufferAttribute as Rm,Uint8ClampedBufferAttribute as Cm,Uniform as bm,UniformsGroup as Pm,VectorKeyframeTrack as Lm,VideoFrameTexture as Dm,VideoTexture as Um,WebGL3DRenderTarget as wm,WebGLArrayRenderTarget as Im,WebGPUCoordinateSystem as Nm,WireframeGeometry as ym,WrapAroundEnding as Fm,ZeroCurvatureEnding as Om,ZeroSlopeEnding as Bm,ZeroStencilOp as Gm,getConsoleFunction as Hm,setConsoleFunction as Vm}from\"./build/three.core.mjs\";function qr(){let e=null,n=!1,t=null,i=null;function c(a,d){t(a,d),i=e.requestAnimationFrame(c)}return{start:function(){n!==!0&&t!==null&&(i=e.requestAnimationFrame(c),n=!0)},stop:function(){e.cancelAnimationFrame(i),n=!1},setAnimationLoop:function(a){t=a},setContext:function(a){e=a}}}function Co(e){let n=new WeakMap;function t(_,L){let C=_.array,B=_.usage,D=C.byteLength,p=e.createBuffer();e.bindBuffer(L,p),e.bufferData(L,C,B),_.onUploadCallback();let S;if(C instanceof Float32Array)S=e.FLOAT;else if(typeof Float16Array<\"u\"&&C instanceof Float16Array)S=e.HALF_FLOAT;else if(C instanceof Uint16Array)_.isFloat16BufferAttribute?S=e.HALF_FLOAT:S=e.UNSIGNED_SHORT;else if(C instanceof Int16Array)S=e.SHORT;else if(C instanceof Uint32Array)S=e.UNSIGNED_INT;else if(C instanceof Int32Array)S=e.INT;else if(C instanceof Int8Array)S=e.BYTE;else if(C instanceof Uint8Array)S=e.UNSIGNED_BYTE;else if(C instanceof Uint8ClampedArray)S=e.UNSIGNED_BYTE;else throw new Error(\"THREE.WebGLAttributes: Unsupported buffer data format: \"+C);return{buffer:p,type:S,bytesPerElement:C.BYTES_PER_ELEMENT,version:_.version,size:D}}function i(_,L,C){let B=L.array,D=L.updateRanges;if(e.bindBuffer(C,_),D.length===0)e.bufferSubData(C,0,B);else{D.sort((S,M)=>S.start-M.start);let p=0;for(let S=1;S<D.length;S++){let M=D[p],y=D[S];y.start<=M.start+M.count+1?M.count=Math.max(M.count,y.start+y.count-M.start):(++p,D[p]=y)}D.length=p+1;for(let S=0,M=D.length;S<M;S++){let y=D[S];e.bufferSubData(C,y.start*B.BYTES_PER_ELEMENT,B,y.start,y.count)}L.clearUpdateRanges()}L.onUploadCallback()}function c(_){return _.isInterleavedBufferAttribute&&(_=_.data),n.get(_)}function a(_){_.isInterleavedBufferAttribute&&(_=_.data);let L=n.get(_);L&&(e.deleteBuffer(L.buffer),n.delete(_))}function d(_,L){if(_.isInterleavedBufferAttribute&&(_=_.data),_.isGLBufferAttribute){let B=n.get(_);(!B||B.version<_.version)&&n.set(_,{buffer:_.buffer,type:_.type,bytesPerElement:_.elementSize,version:_.version});return}let C=n.get(_);if(C===void 0)n.set(_,t(_,L));else if(C.version<_.version){if(C.size!==_.array.byteLength)throw new Error(\"THREE.WebGLAttributes: The size of the buffer attribute's array buffer does not match the original size. Resizing buffer attributes is not supported.\");i(C.buffer,_,L),C.version=_.version}}return{get:c,remove:a,update:d}}var bo=`#ifdef USE_ALPHAHASH\n\tif ( diffuseColor.a < getAlphaHashThreshold( vPosition ) ) discard;\n#endif`,Po=`#ifdef USE_ALPHAHASH\n\tconst float ALPHA_HASH_SCALE = 0.05;\n\tfloat hash2D( vec2 value ) {\n\t\treturn fract( 1.0e4 * sin( 17.0 * value.x + 0.1 * value.y ) * ( 0.1 + abs( sin( 13.0 * value.y + value.x ) ) ) );\n\t}\n\tfloat hash3D( vec3 value ) {\n\t\treturn hash2D( vec2( hash2D( value.xy ), value.z ) );\n\t}\n\tfloat getAlphaHashThreshold( vec3 position ) {\n\t\tfloat maxDeriv = max(\n\t\t\tlength( dFdx( position.xyz ) ),\n\t\t\tlength( dFdy( position.xyz ) )\n\t\t);\n\t\tfloat pixScale = 1.0 / ( ALPHA_HASH_SCALE * maxDeriv );\n\t\tvec2 pixScales = vec2(\n\t\t\texp2( floor( log2( pixScale ) ) ),\n\t\t\texp2( ceil( log2( pixScale ) ) )\n\t\t);\n\t\tvec2 alpha = vec2(\n\t\t\thash3D( floor( pixScales.x * position.xyz ) ),\n\t\t\thash3D( floor( pixScales.y * position.xyz ) )\n\t\t);\n\t\tfloat lerpFactor = fract( log2( pixScale ) );\n\t\tfloat x = ( 1.0 - lerpFactor ) * alpha.x + lerpFactor * alpha.y;\n\t\tfloat a = min( lerpFactor, 1.0 - lerpFactor );\n\t\tvec3 cases = vec3(\n\t\t\tx * x / ( 2.0 * a * ( 1.0 - a ) ),\n\t\t\t( x - 0.5 * a ) / ( 1.0 - a ),\n\t\t\t1.0 - ( ( 1.0 - x ) * ( 1.0 - x ) / ( 2.0 * a * ( 1.0 - a ) ) )\n\t\t);\n\t\tfloat threshold = ( x < ( 1.0 - a ) )\n\t\t\t? ( ( x < a ) ? cases.x : cases.y )\n\t\t\t: cases.z;\n\t\treturn clamp( threshold , 1.0e-6, 1.0 );\n\t}\n#endif`,Lo=`#ifdef USE_ALPHAMAP\n\tdiffuseColor.a *= texture2D( alphaMap, vAlphaMapUv ).g;\n#endif`,Do=`#ifdef USE_ALPHAMAP\n\tuniform sampler2D alphaMap;\n#endif`,Uo=`#ifdef USE_ALPHATEST\n\t#ifdef ALPHA_TO_COVERAGE\n\tdiffuseColor.a = smoothstep( alphaTest, alphaTest + fwidth( diffuseColor.a ), diffuseColor.a );\n\tif ( diffuseColor.a == 0.0 ) discard;\n\t#else\n\tif ( diffuseColor.a < alphaTest ) discard;\n\t#endif\n#endif`,wo=`#ifdef USE_ALPHATEST\n\tuniform float alphaTest;\n#endif`,Io=`#ifdef USE_AOMAP\n\tfloat ambientOcclusion = ( texture2D( aoMap, vAoMapUv ).r - 1.0 ) * aoMapIntensity + 1.0;\n\treflectedLight.indirectDiffuse *= ambientOcclusion;\n\t#if defined( USE_CLEARCOAT ) \n\t\tclearcoatSpecularIndirect *= ambientOcclusion;\n\t#endif\n\t#if defined( USE_SHEEN ) \n\t\tsheenSpecularIndirect *= ambientOcclusion;\n\t#endif\n\t#if defined( USE_ENVMAP ) && defined( STANDARD )\n\t\tfloat dotNV = saturate( dot( geometryNormal, geometryViewDir ) );\n\t\treflectedLight.indirectSpecular *= computeSpecularOcclusion( dotNV, ambientOcclusion, material.roughness );\n\t#endif\n#endif`,No=`#ifdef USE_AOMAP\n\tuniform sampler2D aoMap;\n\tuniform float aoMapIntensity;\n#endif`,yo=`#ifdef USE_BATCHING\n\t#if ! defined( GL_ANGLE_multi_draw )\n\t#define gl_DrawID _gl_DrawID\n\tuniform int _gl_DrawID;\n\t#endif\n\tuniform highp sampler2D batchingTexture;\n\tuniform highp usampler2D batchingIdTexture;\n\tmat4 getBatchingMatrix( const in float i ) {\n\t\tint size = textureSize( batchingTexture, 0 ).x;\n\t\tint j = int( i ) * 4;\n\t\tint x = j % size;\n\t\tint y = j / size;\n\t\tvec4 v1 = texelFetch( batchingTexture, ivec2( x, y ), 0 );\n\t\tvec4 v2 = texelFetch( batchingTexture, ivec2( x + 1, y ), 0 );\n\t\tvec4 v3 = texelFetch( batchingTexture, ivec2( x + 2, y ), 0 );\n\t\tvec4 v4 = texelFetch( batchingTexture, ivec2( x + 3, y ), 0 );\n\t\treturn mat4( v1, v2, v3, v4 );\n\t}\n\tfloat getIndirectIndex( const in int i ) {\n\t\tint size = textureSize( batchingIdTexture, 0 ).x;\n\t\tint x = i % size;\n\t\tint y = i / size;\n\t\treturn float( texelFetch( batchingIdTexture, ivec2( x, y ), 0 ).r );\n\t}\n#endif\n#ifdef USE_BATCHING_COLOR\n\tuniform sampler2D batchingColorTexture;\n\tvec4 getBatchingColor( const in float i ) {\n\t\tint size = textureSize( batchingColorTexture, 0 ).x;\n\t\tint j = int( i );\n\t\tint x = j % size;\n\t\tint y = j / size;\n\t\treturn texelFetch( batchingColorTexture, ivec2( x, y ), 0 );\n\t}\n#endif`,Fo=`#ifdef USE_BATCHING\n\tmat4 batchingMatrix = getBatchingMatrix( getIndirectIndex( gl_DrawID ) );\n#endif`,Oo=`vec3 transformed = vec3( position );\n#ifdef USE_ALPHAHASH\n\tvPosition = vec3( position );\n#endif`,Bo=`vec3 objectNormal = vec3( normal );\n#ifdef USE_TANGENT\n\tvec3 objectTangent = vec3( tangent.xyz );\n#endif`,Go=`float G_BlinnPhong_Implicit( ) {\n\treturn 0.25;\n}\nfloat D_BlinnPhong( const in float shininess, const in float dotNH ) {\n\treturn RECIPROCAL_PI * ( shininess * 0.5 + 1.0 ) * pow( dotNH, shininess );\n}\nvec3 BRDF_BlinnPhong( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, const in vec3 specularColor, const in float shininess ) {\n\tvec3 halfDir = normalize( lightDir + viewDir );\n\tfloat dotNH = saturate( dot( normal, halfDir ) );\n\tfloat dotVH = saturate( dot( viewDir, halfDir ) );\n\tvec3 F = F_Schlick( specularColor, 1.0, dotVH );\n\tfloat G = G_BlinnPhong_Implicit( );\n\tfloat D = D_BlinnPhong( shininess, dotNH );\n\treturn F * ( G * D );\n} // validated`,Ho=`#ifdef USE_IRIDESCENCE\n\tconst mat3 XYZ_TO_REC709 = mat3(\n\t\t 3.2404542, -0.9692660,  0.0556434,\n\t\t-1.5371385,  1.8760108, -0.2040259,\n\t\t-0.4985314,  0.0415560,  1.0572252\n\t);\n\tvec3 Fresnel0ToIor( vec3 fresnel0 ) {\n\t\tvec3 sqrtF0 = sqrt( fresnel0 );\n\t\treturn ( vec3( 1.0 ) + sqrtF0 ) / ( vec3( 1.0 ) - sqrtF0 );\n\t}\n\tvec3 IorToFresnel0( vec3 transmittedIor, float incidentIor ) {\n\t\treturn pow2( ( transmittedIor - vec3( incidentIor ) ) / ( transmittedIor + vec3( incidentIor ) ) );\n\t}\n\tfloat IorToFresnel0( float transmittedIor, float incidentIor ) {\n\t\treturn pow2( ( transmittedIor - incidentIor ) / ( transmittedIor + incidentIor ));\n\t}\n\tvec3 evalSensitivity( float OPD, vec3 shift ) {\n\t\tfloat phase = 2.0 * PI * OPD * 1.0e-9;\n\t\tvec3 val = vec3( 5.4856e-13, 4.4201e-13, 5.2481e-13 );\n\t\tvec3 pos = vec3( 1.6810e+06, 1.7953e+06, 2.2084e+06 );\n\t\tvec3 var = vec3( 4.3278e+09, 9.3046e+09, 6.6121e+09 );\n\t\tvec3 xyz = val * sqrt( 2.0 * PI * var ) * cos( pos * phase + shift ) * exp( - pow2( phase ) * var );\n\t\txyz.x += 9.7470e-14 * sqrt( 2.0 * PI * 4.5282e+09 ) * cos( 2.2399e+06 * phase + shift[ 0 ] ) * exp( - 4.5282e+09 * pow2( phase ) );\n\t\txyz /= 1.0685e-7;\n\t\tvec3 rgb = XYZ_TO_REC709 * xyz;\n\t\treturn rgb;\n\t}\n\tvec3 evalIridescence( float outsideIOR, float eta2, float cosTheta1, float thinFilmThickness, vec3 baseF0 ) {\n\t\tvec3 I;\n\t\tfloat iridescenceIOR = mix( outsideIOR, eta2, smoothstep( 0.0, 0.03, thinFilmThickness ) );\n\t\tfloat sinTheta2Sq = pow2( outsideIOR / iridescenceIOR ) * ( 1.0 - pow2( cosTheta1 ) );\n\t\tfloat cosTheta2Sq = 1.0 - sinTheta2Sq;\n\t\tif ( cosTheta2Sq < 0.0 ) {\n\t\t\treturn vec3( 1.0 );\n\t\t}\n\t\tfloat cosTheta2 = sqrt( cosTheta2Sq );\n\t\tfloat R0 = IorToFresnel0( iridescenceIOR, outsideIOR );\n\t\tfloat R12 = F_Schlick( R0, 1.0, cosTheta1 );\n\t\tfloat T121 = 1.0 - R12;\n\t\tfloat phi12 = 0.0;\n\t\tif ( iridescenceIOR < outsideIOR ) phi12 = PI;\n\t\tfloat phi21 = PI - phi12;\n\t\tvec3 baseIOR = Fresnel0ToIor( clamp( baseF0, 0.0, 0.9999 ) );\t\tvec3 R1 = IorToFresnel0( baseIOR, iridescenceIOR );\n\t\tvec3 R23 = F_Schlick( R1, 1.0, cosTheta2 );\n\t\tvec3 phi23 = vec3( 0.0 );\n\t\tif ( baseIOR[ 0 ] < iridescenceIOR ) phi23[ 0 ] = PI;\n\t\tif ( baseIOR[ 1 ] < iridescenceIOR ) phi23[ 1 ] = PI;\n\t\tif ( baseIOR[ 2 ] < iridescenceIOR ) phi23[ 2 ] = PI;\n\t\tfloat OPD = 2.0 * iridescenceIOR * thinFilmThickness * cosTheta2;\n\t\tvec3 phi = vec3( phi21 ) + phi23;\n\t\tvec3 R123 = clamp( R12 * R23, 1e-5, 0.9999 );\n\t\tvec3 r123 = sqrt( R123 );\n\t\tvec3 Rs = pow2( T121 ) * R23 / ( vec3( 1.0 ) - R123 );\n\t\tvec3 C0 = R12 + Rs;\n\t\tI = C0;\n\t\tvec3 Cm = Rs - T121;\n\t\tfor ( int m = 1; m <= 2; ++ m ) {\n\t\t\tCm *= r123;\n\t\t\tvec3 Sm = 2.0 * evalSensitivity( float( m ) * OPD, float( m ) * phi );\n\t\t\tI += Cm * Sm;\n\t\t}\n\t\treturn max( I, vec3( 0.0 ) );\n\t}\n#endif`,Vo=`#ifdef USE_BUMPMAP\n\tuniform sampler2D bumpMap;\n\tuniform float bumpScale;\n\tvec2 dHdxy_fwd() {\n\t\tvec2 dSTdx = dFdx( vBumpMapUv );\n\t\tvec2 dSTdy = dFdy( vBumpMapUv );\n\t\tfloat Hll = bumpScale * texture2D( bumpMap, vBumpMapUv ).x;\n\t\tfloat dBx = bumpScale * texture2D( bumpMap, vBumpMapUv + dSTdx ).x - Hll;\n\t\tfloat dBy = bumpScale * texture2D( bumpMap, vBumpMapUv + dSTdy ).x - Hll;\n\t\treturn vec2( dBx, dBy );\n\t}\n\tvec3 perturbNormalArb( vec3 surf_pos, vec3 surf_norm, vec2 dHdxy, float faceDirection ) {\n\t\tvec3 vSigmaX = normalize( dFdx( surf_pos.xyz ) );\n\t\tvec3 vSigmaY = normalize( dFdy( surf_pos.xyz ) );\n\t\tvec3 vN = surf_norm;\n\t\tvec3 R1 = cross( vSigmaY, vN );\n\t\tvec3 R2 = cross( vN, vSigmaX );\n\t\tfloat fDet = dot( vSigmaX, R1 ) * faceDirection;\n\t\tvec3 vGrad = sign( fDet ) * ( dHdxy.x * R1 + dHdxy.y * R2 );\n\t\treturn normalize( abs( fDet ) * surf_norm - vGrad );\n\t}\n#endif`,ko=`#if NUM_CLIPPING_PLANES > 0\n\tvec4 plane;\n\t#ifdef ALPHA_TO_COVERAGE\n\t\tfloat distanceToPlane, distanceGradient;\n\t\tfloat clipOpacity = 1.0;\n\t\t#pragma unroll_loop_start\n\t\tfor ( int i = 0; i < UNION_CLIPPING_PLANES; i ++ ) {\n\t\t\tplane = clippingPlanes[ i ];\n\t\t\tdistanceToPlane = - dot( vClipPosition, plane.xyz ) + plane.w;\n\t\t\tdistanceGradient = fwidth( distanceToPlane ) / 2.0;\n\t\t\tclipOpacity *= smoothstep( - distanceGradient, distanceGradient, distanceToPlane );\n\t\t\tif ( clipOpacity == 0.0 ) discard;\n\t\t}\n\t\t#pragma unroll_loop_end\n\t\t#if UNION_CLIPPING_PLANES < NUM_CLIPPING_PLANES\n\t\t\tfloat unionClipOpacity = 1.0;\n\t\t\t#pragma unroll_loop_start\n\t\t\tfor ( int i = UNION_CLIPPING_PLANES; i < NUM_CLIPPING_PLANES; i ++ ) {\n\t\t\t\tplane = clippingPlanes[ i ];\n\t\t\t\tdistanceToPlane = - dot( vClipPosition, plane.xyz ) + plane.w;\n\t\t\t\tdistanceGradient = fwidth( distanceToPlane ) / 2.0;\n\t\t\t\tunionClipOpacity *= 1.0 - smoothstep( - distanceGradient, distanceGradient, distanceToPlane );\n\t\t\t}\n\t\t\t#pragma unroll_loop_end\n\t\t\tclipOpacity *= 1.0 - unionClipOpacity;\n\t\t#endif\n\t\tdiffuseColor.a *= clipOpacity;\n\t\tif ( diffuseColor.a == 0.0 ) discard;\n\t#else\n\t\t#pragma unroll_loop_start\n\t\tfor ( int i = 0; i < UNION_CLIPPING_PLANES; i ++ ) {\n\t\t\tplane = clippingPlanes[ i ];\n\t\t\tif ( dot( vClipPosition, plane.xyz ) > plane.w ) discard;\n\t\t}\n\t\t#pragma unroll_loop_end\n\t\t#if UNION_CLIPPING_PLANES < NUM_CLIPPING_PLANES\n\t\t\tbool clipped = true;\n\t\t\t#pragma unroll_loop_start\n\t\t\tfor ( int i = UNION_CLIPPING_PLANES; i < NUM_CLIPPING_PLANES; i ++ ) {\n\t\t\t\tplane = clippingPlanes[ i ];\n\t\t\t\tclipped = ( dot( vClipPosition, plane.xyz ) > plane.w ) && clipped;\n\t\t\t}\n\t\t\t#pragma unroll_loop_end\n\t\t\tif ( clipped ) discard;\n\t\t#endif\n\t#endif\n#endif`,Wo=`#if NUM_CLIPPING_PLANES > 0\n\tvarying vec3 vClipPosition;\n\tuniform vec4 clippingPlanes[ NUM_CLIPPING_PLANES ];\n#endif`,zo=`#if NUM_CLIPPING_PLANES > 0\n\tvarying vec3 vClipPosition;\n#endif`,Xo=`#if NUM_CLIPPING_PLANES > 0\n\tvClipPosition = - mvPosition.xyz;\n#endif`,Yo=`#if defined( USE_COLOR ) || defined( USE_COLOR_ALPHA )\n\tdiffuseColor *= vColor;\n#endif`,qo=`#if defined( USE_COLOR ) || defined( USE_COLOR_ALPHA )\n\tvarying vec4 vColor;\n#endif`,Ko=`#if defined( USE_COLOR ) || defined( USE_COLOR_ALPHA ) || defined( USE_INSTANCING_COLOR ) || defined( USE_BATCHING_COLOR )\n\tvarying vec4 vColor;\n#endif`,$o=`#if defined( USE_COLOR ) || defined( USE_COLOR_ALPHA ) || defined( USE_INSTANCING_COLOR ) || defined( USE_BATCHING_COLOR )\n\tvColor = vec4( 1.0 );\n#endif\n#ifdef USE_COLOR_ALPHA\n\tvColor *= color;\n#elif defined( USE_COLOR )\n\tvColor.rgb *= color;\n#endif\n#ifdef USE_INSTANCING_COLOR\n\tvColor.rgb *= instanceColor.rgb;\n#endif\n#ifdef USE_BATCHING_COLOR\n\tvColor *= getBatchingColor( getIndirectIndex( gl_DrawID ) );\n#endif`,Zo=`#define PI 3.141592653589793\n#define PI2 6.283185307179586\n#define PI_HALF 1.5707963267948966\n#define RECIPROCAL_PI 0.3183098861837907\n#define RECIPROCAL_PI2 0.15915494309189535\n#define EPSILON 1e-6\n#ifndef saturate\n#define saturate( a ) clamp( a, 0.0, 1.0 )\n#endif\n#define whiteComplement( a ) ( 1.0 - saturate( a ) )\nfloat pow2( const in float x ) { return x*x; }\nvec3 pow2( const in vec3 x ) { return x*x; }\nfloat pow3( const in float x ) { return x*x*x; }\nfloat pow4( const in float x ) { float x2 = x*x; return x2*x2; }\nfloat max3( const in vec3 v ) { return max( max( v.x, v.y ), v.z ); }\nfloat average( const in vec3 v ) { return dot( v, vec3( 0.3333333 ) ); }\nhighp float rand( const in vec2 uv ) {\n\tconst highp float a = 12.9898, b = 78.233, c = 43758.5453;\n\thighp float dt = dot( uv.xy, vec2( a,b ) ), sn = mod( dt, PI );\n\treturn fract( sin( sn ) * c );\n}\n#ifdef HIGH_PRECISION\n\tfloat precisionSafeLength( vec3 v ) { return length( v ); }\n#else\n\tfloat precisionSafeLength( vec3 v ) {\n\t\tfloat maxComponent = max3( abs( v ) );\n\t\treturn length( v / maxComponent ) * maxComponent;\n\t}\n#endif\nstruct IncidentLight {\n\tvec3 color;\n\tvec3 direction;\n\tbool visible;\n};\nstruct ReflectedLight {\n\tvec3 directDiffuse;\n\tvec3 directSpecular;\n\tvec3 indirectDiffuse;\n\tvec3 indirectSpecular;\n};\n#ifdef USE_ALPHAHASH\n\tvarying vec3 vPosition;\n#endif\nvec3 transformDirection( in vec3 dir, in mat4 matrix ) {\n\treturn normalize( ( matrix * vec4( dir, 0.0 ) ).xyz );\n}\nvec3 inverseTransformDirection( in vec3 dir, in mat4 matrix ) {\n\treturn normalize( ( vec4( dir, 0.0 ) * matrix ).xyz );\n}\nbool isPerspectiveMatrix( mat4 m ) {\n\treturn m[ 2 ][ 3 ] == - 1.0;\n}\nvec2 equirectUv( in vec3 dir ) {\n\tfloat u = atan( dir.z, dir.x ) * RECIPROCAL_PI2 + 0.5;\n\tfloat v = asin( clamp( dir.y, - 1.0, 1.0 ) ) * RECIPROCAL_PI + 0.5;\n\treturn vec2( u, v );\n}\nvec3 BRDF_Lambert( const in vec3 diffuseColor ) {\n\treturn RECIPROCAL_PI * diffuseColor;\n}\nvec3 F_Schlick( const in vec3 f0, const in float f90, const in float dotVH ) {\n\tfloat fresnel = exp2( ( - 5.55473 * dotVH - 6.98316 ) * dotVH );\n\treturn f0 * ( 1.0 - fresnel ) + ( f90 * fresnel );\n}\nfloat F_Schlick( const in float f0, const in float f90, const in float dotVH ) {\n\tfloat fresnel = exp2( ( - 5.55473 * dotVH - 6.98316 ) * dotVH );\n\treturn f0 * ( 1.0 - fresnel ) + ( f90 * fresnel );\n} // validated`,Qo=`#ifdef ENVMAP_TYPE_CUBE_UV\n\t#define cubeUV_minMipLevel 4.0\n\t#define cubeUV_minTileSize 16.0\n\tfloat getFace( vec3 direction ) {\n\t\tvec3 absDirection = abs( direction );\n\t\tfloat face = - 1.0;\n\t\tif ( absDirection.x > absDirection.z ) {\n\t\t\tif ( absDirection.x > absDirection.y )\n\t\t\t\tface = direction.x > 0.0 ? 0.0 : 3.0;\n\t\t\telse\n\t\t\t\tface = direction.y > 0.0 ? 1.0 : 4.0;\n\t\t} else {\n\t\t\tif ( absDirection.z > absDirection.y )\n\t\t\t\tface = direction.z > 0.0 ? 2.0 : 5.0;\n\t\t\telse\n\t\t\t\tface = direction.y > 0.0 ? 1.0 : 4.0;\n\t\t}\n\t\treturn face;\n\t}\n\tvec2 getUV( vec3 direction, float face ) {\n\t\tvec2 uv;\n\t\tif ( face == 0.0 ) {\n\t\t\tuv = vec2( direction.z, direction.y ) / abs( direction.x );\n\t\t} else if ( face == 1.0 ) {\n\t\t\tuv = vec2( - direction.x, - direction.z ) / abs( direction.y );\n\t\t} else if ( face == 2.0 ) {\n\t\t\tuv = vec2( - direction.x, direction.y ) / abs( direction.z );\n\t\t} else if ( face == 3.0 ) {\n\t\t\tuv = vec2( - direction.z, direction.y ) / abs( direction.x );\n\t\t} else if ( face == 4.0 ) {\n\t\t\tuv = vec2( - direction.x, direction.z ) / abs( direction.y );\n\t\t} else {\n\t\t\tuv = vec2( direction.x, direction.y ) / abs( direction.z );\n\t\t}\n\t\treturn 0.5 * ( uv + 1.0 );\n\t}\n\tvec3 bilinearCubeUV( sampler2D envMap, vec3 direction, float mipInt ) {\n\t\tfloat face = getFace( direction );\n\t\tfloat filterInt = max( cubeUV_minMipLevel - mipInt, 0.0 );\n\t\tmipInt = max( mipInt, cubeUV_minMipLevel );\n\t\tfloat faceSize = exp2( mipInt );\n\t\thighp vec2 uv = getUV( direction, face ) * ( faceSize - 2.0 ) + 1.0;\n\t\tif ( face > 2.0 ) {\n\t\t\tuv.y += faceSize;\n\t\t\tface -= 3.0;\n\t\t}\n\t\tuv.x += face * faceSize;\n\t\tuv.x += filterInt * 3.0 * cubeUV_minTileSize;\n\t\tuv.y += 4.0 * ( exp2( CUBEUV_MAX_MIP ) - faceSize );\n\t\tuv.x *= CUBEUV_TEXEL_WIDTH;\n\t\tuv.y *= CUBEUV_TEXEL_HEIGHT;\n\t\t#ifdef texture2DGradEXT\n\t\t\treturn texture2DGradEXT( envMap, uv, vec2( 0.0 ), vec2( 0.0 ) ).rgb;\n\t\t#else\n\t\t\treturn texture2D( envMap, uv ).rgb;\n\t\t#endif\n\t}\n\t#define cubeUV_r0 1.0\n\t#define cubeUV_m0 - 2.0\n\t#define cubeUV_r1 0.8\n\t#define cubeUV_m1 - 1.0\n\t#define cubeUV_r4 0.4\n\t#define cubeUV_m4 2.0\n\t#define cubeUV_r5 0.305\n\t#define cubeUV_m5 3.0\n\t#define cubeUV_r6 0.21\n\t#define cubeUV_m6 4.0\n\tfloat roughnessToMip( float roughness ) {\n\t\tfloat mip = 0.0;\n\t\tif ( roughness >= cubeUV_r1 ) {\n\t\t\tmip = ( cubeUV_r0 - roughness ) * ( cubeUV_m1 - cubeUV_m0 ) / ( cubeUV_r0 - cubeUV_r1 ) + cubeUV_m0;\n\t\t} else if ( roughness >= cubeUV_r4 ) {\n\t\t\tmip = ( cubeUV_r1 - roughness ) * ( cubeUV_m4 - cubeUV_m1 ) / ( cubeUV_r1 - cubeUV_r4 ) + cubeUV_m1;\n\t\t} else if ( roughness >= cubeUV_r5 ) {\n\t\t\tmip = ( cubeUV_r4 - roughness ) * ( cubeUV_m5 - cubeUV_m4 ) / ( cubeUV_r4 - cubeUV_r5 ) + cubeUV_m4;\n\t\t} else if ( roughness >= cubeUV_r6 ) {\n\t\t\tmip = ( cubeUV_r5 - roughness ) * ( cubeUV_m6 - cubeUV_m5 ) / ( cubeUV_r5 - cubeUV_r6 ) + cubeUV_m5;\n\t\t} else {\n\t\t\tmip = - 2.0 * log2( 1.16 * roughness );\t\t}\n\t\treturn mip;\n\t}\n\tvec4 textureCubeUV( sampler2D envMap, vec3 sampleDir, float roughness ) {\n\t\tfloat mip = clamp( roughnessToMip( roughness ), cubeUV_m0, CUBEUV_MAX_MIP );\n\t\tfloat mipF = fract( mip );\n\t\tfloat mipInt = floor( mip );\n\t\tvec3 color0 = bilinearCubeUV( envMap, sampleDir, mipInt );\n\t\tif ( mipF == 0.0 ) {\n\t\t\treturn vec4( color0, 1.0 );\n\t\t} else {\n\t\t\tvec3 color1 = bilinearCubeUV( envMap, sampleDir, mipInt + 1.0 );\n\t\t\treturn vec4( mix( color0, color1, mipF ), 1.0 );\n\t\t}\n\t}\n#endif`,Jo=`vec3 transformedNormal = objectNormal;\n#ifdef USE_TANGENT\n\tvec3 transformedTangent = objectTangent;\n#endif\n#ifdef USE_BATCHING\n\tmat3 bm = mat3( batchingMatrix );\n\ttransformedNormal /= vec3( dot( bm[ 0 ], bm[ 0 ] ), dot( bm[ 1 ], bm[ 1 ] ), dot( bm[ 2 ], bm[ 2 ] ) );\n\ttransformedNormal = bm * transformedNormal;\n\t#ifdef USE_TANGENT\n\t\ttransformedTangent = bm * transformedTangent;\n\t#endif\n#endif\n#ifdef USE_INSTANCING\n\tmat3 im = mat3( instanceMatrix );\n\ttransformedNormal /= vec3( dot( im[ 0 ], im[ 0 ] ), dot( im[ 1 ], im[ 1 ] ), dot( im[ 2 ], im[ 2 ] ) );\n\ttransformedNormal = im * transformedNormal;\n\t#ifdef USE_TANGENT\n\t\ttransformedTangent = im * transformedTangent;\n\t#endif\n#endif\ntransformedNormal = normalMatrix * transformedNormal;\n#ifdef FLIP_SIDED\n\ttransformedNormal = - transformedNormal;\n#endif\n#ifdef USE_TANGENT\n\ttransformedTangent = ( modelViewMatrix * vec4( transformedTangent, 0.0 ) ).xyz;\n\t#ifdef FLIP_SIDED\n\t\ttransformedTangent = - transformedTangent;\n\t#endif\n#endif`,jo=`#ifdef USE_DISPLACEMENTMAP\n\tuniform sampler2D displacementMap;\n\tuniform float displacementScale;\n\tuniform float displacementBias;\n#endif`,es=`#ifdef USE_DISPLACEMENTMAP\n\ttransformed += normalize( objectNormal ) * ( texture2D( displacementMap, vDisplacementMapUv ).x * displacementScale + displacementBias );\n#endif`,ts=`#ifdef USE_EMISSIVEMAP\n\tvec4 emissiveColor = texture2D( emissiveMap, vEmissiveMapUv );\n\t#ifdef DECODE_VIDEO_TEXTURE_EMISSIVE\n\t\temissiveColor = sRGBTransferEOTF( emissiveColor );\n\t#endif\n\ttotalEmissiveRadiance *= emissiveColor.rgb;\n#endif`,ns=`#ifdef USE_EMISSIVEMAP\n\tuniform sampler2D emissiveMap;\n#endif`,is=\"gl_FragColor = linearToOutputTexel( gl_FragColor );\",rs=`vec4 LinearTransferOETF( in vec4 value ) {\n\treturn value;\n}\nvec4 sRGBTransferEOTF( 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 sRGBTransferOETF( in vec4 value ) {\n\treturn vec4( mix( pow( value.rgb, vec3( 0.41666 ) ) * 1.055 - vec3( 0.055 ), value.rgb * 12.92, vec3( lessThanEqual( value.rgb, vec3( 0.0031308 ) ) ) ), value.a );\n}`,as=`#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, envMapRotation * vec3( flipEnvMap * reflectVec.x, reflectVec.yz ) );\n\t\t#ifdef ENVMAP_BLENDING_MULTIPLY\n\t\t\toutgoingLight = mix( outgoingLight, outgoingLight * envColor.xyz, specularStrength * reflectivity );\n\t\t#elif defined( ENVMAP_BLENDING_MIX )\n\t\t\toutgoingLight = mix( outgoingLight, envColor.xyz, specularStrength * reflectivity );\n\t\t#elif defined( ENVMAP_BLENDING_ADD )\n\t\t\toutgoingLight += envColor.xyz * specularStrength * reflectivity;\n\t\t#endif\n\t#endif\n#endif`,os=`#ifdef USE_ENVMAP\n\tuniform float envMapIntensity;\n\tuniform float flipEnvMap;\n\tuniform mat3 envMapRotation;\n\t#ifdef ENVMAP_TYPE_CUBE\n\t\tuniform samplerCube envMap;\n\t#else\n\t\tuniform sampler2D envMap;\n\t#endif\n#endif`,ss=`#ifdef USE_ENVMAP\n\tuniform float reflectivity;\n\t#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG ) || defined( LAMBERT )\n\t\t#define ENV_WORLDPOS\n\t#endif\n\t#ifdef ENV_WORLDPOS\n\t\tvarying vec3 vWorldPosition;\n\t\tuniform float refractionRatio;\n\t#else\n\t\tvarying vec3 vReflect;\n\t#endif\n#endif`,ls=`#ifdef USE_ENVMAP\n\t#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG ) || defined( LAMBERT )\n\t\t#define ENV_WORLDPOS\n\t#endif\n\t#ifdef ENV_WORLDPOS\n\t\t\n\t\tvarying vec3 vWorldPosition;\n\t#else\n\t\tvarying vec3 vReflect;\n\t\tuniform float refractionRatio;\n\t#endif\n#endif`,cs=`#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`,fs=`#ifdef USE_FOG\n\tvFogDepth = - mvPosition.z;\n#endif`,ds=`#ifdef USE_FOG\n\tvarying float vFogDepth;\n#endif`,us=`#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`,ps=`#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`,hs=`#ifdef USE_GRADIENTMAP\n\tuniform sampler2D gradientMap;\n#endif\nvec3 getGradientIrradiance( vec3 normal, vec3 lightDirection ) {\n\tfloat dotNL = dot( normal, lightDirection );\n\tvec2 coord = vec2( dotNL * 0.5 + 0.5, 0.0 );\n\t#ifdef USE_GRADIENTMAP\n\t\treturn vec3( texture2D( gradientMap, coord ).r );\n\t#else\n\t\tvec2 fw = fwidth( coord ) * 0.5;\n\t\treturn mix( vec3( 0.7 ), vec3( 1.0 ), smoothstep( 0.7 - fw.x, 0.7 + fw.x, coord.x ) );\n\t#endif\n}`,ms=`#ifdef USE_LIGHTMAP\n\tuniform sampler2D lightMap;\n\tuniform float lightMapIntensity;\n#endif`,_s=`LambertMaterial material;\nmaterial.diffuseColor = diffuseColor.rgb;\nmaterial.specularStrength = specularStrength;`,gs=`varying vec3 vViewPosition;\nstruct LambertMaterial {\n\tvec3 diffuseColor;\n\tfloat specularStrength;\n};\nvoid RE_Direct_Lambert( const in IncidentLight directLight, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in LambertMaterial material, inout ReflectedLight reflectedLight ) {\n\tfloat dotNL = saturate( dot( geometryNormal, directLight.direction ) );\n\tvec3 irradiance = dotNL * directLight.color;\n\treflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\nvoid RE_IndirectDiffuse_Lambert( const in vec3 irradiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in LambertMaterial material, inout ReflectedLight reflectedLight ) {\n\treflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\n#define RE_Direct\t\t\t\tRE_Direct_Lambert\n#define RE_IndirectDiffuse\t\tRE_IndirectDiffuse_Lambert`,vs=`uniform bool receiveShadow;\nuniform vec3 ambientLightColor;\n#if defined( USE_LIGHT_PROBES )\n\tuniform vec3 lightProbe[ 9 ];\n#endif\nvec3 shGetIrradianceAt( in vec3 normal, in vec3 shCoefficients[ 9 ] ) {\n\tfloat x = normal.x, y = normal.y, z = normal.z;\n\tvec3 result = shCoefficients[ 0 ] * 0.886227;\n\tresult += shCoefficients[ 1 ] * 2.0 * 0.511664 * y;\n\tresult += shCoefficients[ 2 ] * 2.0 * 0.511664 * z;\n\tresult += shCoefficients[ 3 ] * 2.0 * 0.511664 * x;\n\tresult += shCoefficients[ 4 ] * 2.0 * 0.429043 * x * y;\n\tresult += shCoefficients[ 5 ] * 2.0 * 0.429043 * y * z;\n\tresult += shCoefficients[ 6 ] * ( 0.743125 * z * z - 0.247708 );\n\tresult += shCoefficients[ 7 ] * 2.0 * 0.429043 * x * z;\n\tresult += shCoefficients[ 8 ] * 0.429043 * ( x * x - y * y );\n\treturn result;\n}\nvec3 getLightProbeIrradiance( const in vec3 lightProbe[ 9 ], const in vec3 normal ) {\n\tvec3 worldNormal = inverseTransformDirection( normal, viewMatrix );\n\tvec3 irradiance = shGetIrradianceAt( worldNormal, lightProbe );\n\treturn irradiance;\n}\nvec3 getAmbientLightIrradiance( const in vec3 ambientLightColor ) {\n\tvec3 irradiance = ambientLightColor;\n\treturn irradiance;\n}\nfloat getDistanceAttenuation( const in float lightDistance, const in float cutoffDistance, const in float decayExponent ) {\n\tfloat distanceFalloff = 1.0 / max( pow( lightDistance, decayExponent ), 0.01 );\n\tif ( cutoffDistance > 0.0 ) {\n\t\tdistanceFalloff *= pow2( saturate( 1.0 - pow4( lightDistance / cutoffDistance ) ) );\n\t}\n\treturn distanceFalloff;\n}\nfloat getSpotAttenuation( const in float coneCosine, const in float penumbraCosine, const in float angleCosine ) {\n\treturn smoothstep( coneCosine, penumbraCosine, angleCosine );\n}\n#if NUM_DIR_LIGHTS > 0\n\tstruct DirectionalLight {\n\t\tvec3 direction;\n\t\tvec3 color;\n\t};\n\tuniform DirectionalLight directionalLights[ NUM_DIR_LIGHTS ];\n\tvoid getDirectionalLightInfo( const in DirectionalLight directionalLight, out IncidentLight light ) {\n\t\tlight.color = directionalLight.color;\n\t\tlight.direction = directionalLight.direction;\n\t\tlight.visible = true;\n\t}\n#endif\n#if NUM_POINT_LIGHTS > 0\n\tstruct PointLight {\n\t\tvec3 position;\n\t\tvec3 color;\n\t\tfloat distance;\n\t\tfloat decay;\n\t};\n\tuniform PointLight pointLights[ NUM_POINT_LIGHTS ];\n\tvoid getPointLightInfo( const in PointLight pointLight, const in vec3 geometryPosition, out IncidentLight light ) {\n\t\tvec3 lVector = pointLight.position - geometryPosition;\n\t\tlight.direction = normalize( lVector );\n\t\tfloat lightDistance = length( lVector );\n\t\tlight.color = pointLight.color;\n\t\tlight.color *= getDistanceAttenuation( lightDistance, pointLight.distance, pointLight.decay );\n\t\tlight.visible = ( light.color != vec3( 0.0 ) );\n\t}\n#endif\n#if NUM_SPOT_LIGHTS > 0\n\tstruct SpotLight {\n\t\tvec3 position;\n\t\tvec3 direction;\n\t\tvec3 color;\n\t\tfloat distance;\n\t\tfloat decay;\n\t\tfloat coneCos;\n\t\tfloat penumbraCos;\n\t};\n\tuniform SpotLight spotLights[ NUM_SPOT_LIGHTS ];\n\tvoid getSpotLightInfo( const in SpotLight spotLight, const in vec3 geometryPosition, out IncidentLight light ) {\n\t\tvec3 lVector = spotLight.position - geometryPosition;\n\t\tlight.direction = normalize( lVector );\n\t\tfloat angleCos = dot( light.direction, spotLight.direction );\n\t\tfloat spotAttenuation = getSpotAttenuation( spotLight.coneCos, spotLight.penumbraCos, angleCos );\n\t\tif ( spotAttenuation > 0.0 ) {\n\t\t\tfloat lightDistance = length( lVector );\n\t\t\tlight.color = spotLight.color * spotAttenuation;\n\t\t\tlight.color *= getDistanceAttenuation( lightDistance, spotLight.distance, spotLight.decay );\n\t\t\tlight.visible = ( light.color != vec3( 0.0 ) );\n\t\t} else {\n\t\t\tlight.color = vec3( 0.0 );\n\t\t\tlight.visible = false;\n\t\t}\n\t}\n#endif\n#if NUM_RECT_AREA_LIGHTS > 0\n\tstruct RectAreaLight {\n\t\tvec3 color;\n\t\tvec3 position;\n\t\tvec3 halfWidth;\n\t\tvec3 halfHeight;\n\t};\n\tuniform sampler2D ltc_1;\tuniform sampler2D ltc_2;\n\tuniform RectAreaLight rectAreaLights[ NUM_RECT_AREA_LIGHTS ];\n#endif\n#if NUM_HEMI_LIGHTS > 0\n\tstruct HemisphereLight {\n\t\tvec3 direction;\n\t\tvec3 skyColor;\n\t\tvec3 groundColor;\n\t};\n\tuniform HemisphereLight hemisphereLights[ NUM_HEMI_LIGHTS ];\n\tvec3 getHemisphereLightIrradiance( const in HemisphereLight hemiLight, const in vec3 normal ) {\n\t\tfloat dotNL = dot( normal, hemiLight.direction );\n\t\tfloat hemiDiffuseWeight = 0.5 * dotNL + 0.5;\n\t\tvec3 irradiance = mix( hemiLight.groundColor, hemiLight.skyColor, hemiDiffuseWeight );\n\t\treturn irradiance;\n\t}\n#endif`,Ss=`#ifdef USE_ENVMAP\n\tvec3 getIBLIrradiance( const in vec3 normal ) {\n\t\t#ifdef ENVMAP_TYPE_CUBE_UV\n\t\t\tvec3 worldNormal = inverseTransformDirection( normal, viewMatrix );\n\t\t\tvec4 envMapColor = textureCubeUV( envMap, envMapRotation * worldNormal, 1.0 );\n\t\t\treturn PI * envMapColor.rgb * envMapIntensity;\n\t\t#else\n\t\t\treturn vec3( 0.0 );\n\t\t#endif\n\t}\n\tvec3 getIBLRadiance( const in vec3 viewDir, const in vec3 normal, const in float roughness ) {\n\t\t#ifdef ENVMAP_TYPE_CUBE_UV\n\t\t\tvec3 reflectVec = reflect( - viewDir, normal );\n\t\t\treflectVec = normalize( mix( reflectVec, normal, pow4( roughness ) ) );\n\t\t\treflectVec = inverseTransformDirection( reflectVec, viewMatrix );\n\t\t\tvec4 envMapColor = textureCubeUV( envMap, envMapRotation * reflectVec, roughness );\n\t\t\treturn envMapColor.rgb * envMapIntensity;\n\t\t#else\n\t\t\treturn vec3( 0.0 );\n\t\t#endif\n\t}\n\t#ifdef USE_ANISOTROPY\n\t\tvec3 getIBLAnisotropyRadiance( const in vec3 viewDir, const in vec3 normal, const in float roughness, const in vec3 bitangent, const in float anisotropy ) {\n\t\t\t#ifdef ENVMAP_TYPE_CUBE_UV\n\t\t\t\tvec3 bentNormal = cross( bitangent, viewDir );\n\t\t\t\tbentNormal = normalize( cross( bentNormal, bitangent ) );\n\t\t\t\tbentNormal = normalize( mix( bentNormal, normal, pow2( pow2( 1.0 - anisotropy * ( 1.0 - roughness ) ) ) ) );\n\t\t\t\treturn getIBLRadiance( viewDir, bentNormal, roughness );\n\t\t\t#else\n\t\t\t\treturn vec3( 0.0 );\n\t\t\t#endif\n\t\t}\n\t#endif\n#endif`,Es=`ToonMaterial material;\nmaterial.diffuseColor = diffuseColor.rgb;`,xs=`varying vec3 vViewPosition;\nstruct ToonMaterial {\n\tvec3 diffuseColor;\n};\nvoid RE_Direct_Toon( const in IncidentLight directLight, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in ToonMaterial material, inout ReflectedLight reflectedLight ) {\n\tvec3 irradiance = getGradientIrradiance( geometryNormal, directLight.direction ) * directLight.color;\n\treflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\nvoid RE_IndirectDiffuse_Toon( const in vec3 irradiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in ToonMaterial material, inout ReflectedLight reflectedLight ) {\n\treflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\n#define RE_Direct\t\t\t\tRE_Direct_Toon\n#define RE_IndirectDiffuse\t\tRE_IndirectDiffuse_Toon`,Ms=`BlinnPhongMaterial material;\nmaterial.diffuseColor = diffuseColor.rgb;\nmaterial.specularColor = specular;\nmaterial.specularShininess = shininess;\nmaterial.specularStrength = specularStrength;`,Ts=`varying vec3 vViewPosition;\nstruct BlinnPhongMaterial {\n\tvec3 diffuseColor;\n\tvec3 specularColor;\n\tfloat specularShininess;\n\tfloat specularStrength;\n};\nvoid RE_Direct_BlinnPhong( const in IncidentLight directLight, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) {\n\tfloat dotNL = saturate( dot( geometryNormal, directLight.direction ) );\n\tvec3 irradiance = dotNL * directLight.color;\n\treflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n\treflectedLight.directSpecular += irradiance * BRDF_BlinnPhong( directLight.direction, geometryViewDir, geometryNormal, material.specularColor, material.specularShininess ) * material.specularStrength;\n}\nvoid RE_IndirectDiffuse_BlinnPhong( const in vec3 irradiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) {\n\treflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\n#define RE_Direct\t\t\t\tRE_Direct_BlinnPhong\n#define RE_IndirectDiffuse\t\tRE_IndirectDiffuse_BlinnPhong`,As=`PhysicalMaterial material;\nmaterial.diffuseColor = diffuseColor.rgb;\nmaterial.diffuseContribution = diffuseColor.rgb * ( 1.0 - metalnessFactor );\nmaterial.metalness = metalnessFactor;\nvec3 dxy = max( abs( dFdx( nonPerturbedNormal ) ), abs( dFdy( nonPerturbedNormal ) ) );\nfloat geometryRoughness = max( max( dxy.x, dxy.y ), dxy.z );\nmaterial.roughness = max( roughnessFactor, 0.0525 );material.roughness += geometryRoughness;\nmaterial.roughness = min( material.roughness, 1.0 );\n#ifdef IOR\n\tmaterial.ior = ior;\n\t#ifdef USE_SPECULAR\n\t\tfloat specularIntensityFactor = specularIntensity;\n\t\tvec3 specularColorFactor = specularColor;\n\t\t#ifdef USE_SPECULAR_COLORMAP\n\t\t\tspecularColorFactor *= texture2D( specularColorMap, vSpecularColorMapUv ).rgb;\n\t\t#endif\n\t\t#ifdef USE_SPECULAR_INTENSITYMAP\n\t\t\tspecularIntensityFactor *= texture2D( specularIntensityMap, vSpecularIntensityMapUv ).a;\n\t\t#endif\n\t\tmaterial.specularF90 = mix( specularIntensityFactor, 1.0, metalnessFactor );\n\t#else\n\t\tfloat specularIntensityFactor = 1.0;\n\t\tvec3 specularColorFactor = vec3( 1.0 );\n\t\tmaterial.specularF90 = 1.0;\n\t#endif\n\tmaterial.specularColor = min( pow2( ( material.ior - 1.0 ) / ( material.ior + 1.0 ) ) * specularColorFactor, vec3( 1.0 ) ) * specularIntensityFactor;\n\tmaterial.specularColorBlended = mix( material.specularColor, diffuseColor.rgb, metalnessFactor );\n#else\n\tmaterial.specularColor = vec3( 0.04 );\n\tmaterial.specularColorBlended = mix( material.specularColor, diffuseColor.rgb, metalnessFactor );\n\tmaterial.specularF90 = 1.0;\n#endif\n#ifdef USE_CLEARCOAT\n\tmaterial.clearcoat = clearcoat;\n\tmaterial.clearcoatRoughness = clearcoatRoughness;\n\tmaterial.clearcoatF0 = vec3( 0.04 );\n\tmaterial.clearcoatF90 = 1.0;\n\t#ifdef USE_CLEARCOATMAP\n\t\tmaterial.clearcoat *= texture2D( clearcoatMap, vClearcoatMapUv ).x;\n\t#endif\n\t#ifdef USE_CLEARCOAT_ROUGHNESSMAP\n\t\tmaterial.clearcoatRoughness *= texture2D( clearcoatRoughnessMap, vClearcoatRoughnessMapUv ).y;\n\t#endif\n\tmaterial.clearcoat = saturate( material.clearcoat );\tmaterial.clearcoatRoughness = max( material.clearcoatRoughness, 0.0525 );\n\tmaterial.clearcoatRoughness += geometryRoughness;\n\tmaterial.clearcoatRoughness = min( material.clearcoatRoughness, 1.0 );\n#endif\n#ifdef USE_DISPERSION\n\tmaterial.dispersion = dispersion;\n#endif\n#ifdef USE_IRIDESCENCE\n\tmaterial.iridescence = iridescence;\n\tmaterial.iridescenceIOR = iridescenceIOR;\n\t#ifdef USE_IRIDESCENCEMAP\n\t\tmaterial.iridescence *= texture2D( iridescenceMap, vIridescenceMapUv ).r;\n\t#endif\n\t#ifdef USE_IRIDESCENCE_THICKNESSMAP\n\t\tmaterial.iridescenceThickness = (iridescenceThicknessMaximum - iridescenceThicknessMinimum) * texture2D( iridescenceThicknessMap, vIridescenceThicknessMapUv ).g + iridescenceThicknessMinimum;\n\t#else\n\t\tmaterial.iridescenceThickness = iridescenceThicknessMaximum;\n\t#endif\n#endif\n#ifdef USE_SHEEN\n\tmaterial.sheenColor = sheenColor;\n\t#ifdef USE_SHEEN_COLORMAP\n\t\tmaterial.sheenColor *= texture2D( sheenColorMap, vSheenColorMapUv ).rgb;\n\t#endif\n\tmaterial.sheenRoughness = clamp( sheenRoughness, 0.0001, 1.0 );\n\t#ifdef USE_SHEEN_ROUGHNESSMAP\n\t\tmaterial.sheenRoughness *= texture2D( sheenRoughnessMap, vSheenRoughnessMapUv ).a;\n\t#endif\n#endif\n#ifdef USE_ANISOTROPY\n\t#ifdef USE_ANISOTROPYMAP\n\t\tmat2 anisotropyMat = mat2( anisotropyVector.x, anisotropyVector.y, - anisotropyVector.y, anisotropyVector.x );\n\t\tvec3 anisotropyPolar = texture2D( anisotropyMap, vAnisotropyMapUv ).rgb;\n\t\tvec2 anisotropyV = anisotropyMat * normalize( 2.0 * anisotropyPolar.rg - vec2( 1.0 ) ) * anisotropyPolar.b;\n\t#else\n\t\tvec2 anisotropyV = anisotropyVector;\n\t#endif\n\tmaterial.anisotropy = length( anisotropyV );\n\tif( material.anisotropy == 0.0 ) {\n\t\tanisotropyV = vec2( 1.0, 0.0 );\n\t} else {\n\t\tanisotropyV /= material.anisotropy;\n\t\tmaterial.anisotropy = saturate( material.anisotropy );\n\t}\n\tmaterial.alphaT = mix( pow2( material.roughness ), 1.0, pow2( material.anisotropy ) );\n\tmaterial.anisotropyT = tbn[ 0 ] * anisotropyV.x + tbn[ 1 ] * anisotropyV.y;\n\tmaterial.anisotropyB = tbn[ 1 ] * anisotropyV.x - tbn[ 0 ] * anisotropyV.y;\n#endif`,Rs=`uniform sampler2D dfgLUT;\nstruct PhysicalMaterial {\n\tvec3 diffuseColor;\n\tvec3 diffuseContribution;\n\tvec3 specularColor;\n\tvec3 specularColorBlended;\n\tfloat roughness;\n\tfloat metalness;\n\tfloat specularF90;\n\tfloat dispersion;\n\t#ifdef USE_CLEARCOAT\n\t\tfloat clearcoat;\n\t\tfloat clearcoatRoughness;\n\t\tvec3 clearcoatF0;\n\t\tfloat clearcoatF90;\n\t#endif\n\t#ifdef USE_IRIDESCENCE\n\t\tfloat iridescence;\n\t\tfloat iridescenceIOR;\n\t\tfloat iridescenceThickness;\n\t\tvec3 iridescenceFresnel;\n\t\tvec3 iridescenceF0;\n\t\tvec3 iridescenceFresnelDielectric;\n\t\tvec3 iridescenceFresnelMetallic;\n\t#endif\n\t#ifdef USE_SHEEN\n\t\tvec3 sheenColor;\n\t\tfloat sheenRoughness;\n\t#endif\n\t#ifdef IOR\n\t\tfloat ior;\n\t#endif\n\t#ifdef USE_TRANSMISSION\n\t\tfloat transmission;\n\t\tfloat transmissionAlpha;\n\t\tfloat thickness;\n\t\tfloat attenuationDistance;\n\t\tvec3 attenuationColor;\n\t#endif\n\t#ifdef USE_ANISOTROPY\n\t\tfloat anisotropy;\n\t\tfloat alphaT;\n\t\tvec3 anisotropyT;\n\t\tvec3 anisotropyB;\n\t#endif\n};\nvec3 clearcoatSpecularDirect = vec3( 0.0 );\nvec3 clearcoatSpecularIndirect = vec3( 0.0 );\nvec3 sheenSpecularDirect = vec3( 0.0 );\nvec3 sheenSpecularIndirect = vec3(0.0 );\nvec3 Schlick_to_F0( const in vec3 f, const in float f90, const in float dotVH ) {\n    float x = clamp( 1.0 - dotVH, 0.0, 1.0 );\n    float x2 = x * x;\n    float x5 = clamp( x * x2 * x2, 0.0, 0.9999 );\n    return ( f - vec3( f90 ) * x5 ) / ( 1.0 - x5 );\n}\nfloat V_GGX_SmithCorrelated( const in float alpha, const in float dotNL, const in float dotNV ) {\n\tfloat a2 = pow2( alpha );\n\tfloat gv = dotNL * sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNV ) );\n\tfloat gl = dotNV * sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNL ) );\n\treturn 0.5 / max( gv + gl, EPSILON );\n}\nfloat D_GGX( const in float alpha, const in float dotNH ) {\n\tfloat a2 = pow2( alpha );\n\tfloat denom = pow2( dotNH ) * ( a2 - 1.0 ) + 1.0;\n\treturn RECIPROCAL_PI * a2 / pow2( denom );\n}\n#ifdef USE_ANISOTROPY\n\tfloat V_GGX_SmithCorrelated_Anisotropic( const in float alphaT, const in float alphaB, const in float dotTV, const in float dotBV, const in float dotTL, const in float dotBL, const in float dotNV, const in float dotNL ) {\n\t\tfloat gv = dotNL * length( vec3( alphaT * dotTV, alphaB * dotBV, dotNV ) );\n\t\tfloat gl = dotNV * length( vec3( alphaT * dotTL, alphaB * dotBL, dotNL ) );\n\t\tfloat v = 0.5 / ( gv + gl );\n\t\treturn v;\n\t}\n\tfloat D_GGX_Anisotropic( const in float alphaT, const in float alphaB, const in float dotNH, const in float dotTH, const in float dotBH ) {\n\t\tfloat a2 = alphaT * alphaB;\n\t\thighp vec3 v = vec3( alphaB * dotTH, alphaT * dotBH, a2 * dotNH );\n\t\thighp float v2 = dot( v, v );\n\t\tfloat w2 = a2 / v2;\n\t\treturn RECIPROCAL_PI * a2 * pow2 ( w2 );\n\t}\n#endif\n#ifdef USE_CLEARCOAT\n\tvec3 BRDF_GGX_Clearcoat( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, const in PhysicalMaterial material) {\n\t\tvec3 f0 = material.clearcoatF0;\n\t\tfloat f90 = material.clearcoatF90;\n\t\tfloat roughness = material.clearcoatRoughness;\n\t\tfloat alpha = pow2( roughness );\n\t\tvec3 halfDir = normalize( lightDir + viewDir );\n\t\tfloat dotNL = saturate( dot( normal, lightDir ) );\n\t\tfloat dotNV = saturate( dot( normal, viewDir ) );\n\t\tfloat dotNH = saturate( dot( normal, halfDir ) );\n\t\tfloat dotVH = saturate( dot( viewDir, halfDir ) );\n\t\tvec3 F = F_Schlick( f0, f90, dotVH );\n\t\tfloat V = V_GGX_SmithCorrelated( alpha, dotNL, dotNV );\n\t\tfloat D = D_GGX( alpha, dotNH );\n\t\treturn F * ( V * D );\n\t}\n#endif\nvec3 BRDF_GGX( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, const in PhysicalMaterial material ) {\n\tvec3 f0 = material.specularColorBlended;\n\tfloat f90 = material.specularF90;\n\tfloat roughness = material.roughness;\n\tfloat alpha = pow2( roughness );\n\tvec3 halfDir = normalize( lightDir + viewDir );\n\tfloat dotNL = saturate( dot( normal, lightDir ) );\n\tfloat dotNV = saturate( dot( normal, viewDir ) );\n\tfloat dotNH = saturate( dot( normal, halfDir ) );\n\tfloat dotVH = saturate( dot( viewDir, halfDir ) );\n\tvec3 F = F_Schlick( f0, f90, dotVH );\n\t#ifdef USE_IRIDESCENCE\n\t\tF = mix( F, material.iridescenceFresnel, material.iridescence );\n\t#endif\n\t#ifdef USE_ANISOTROPY\n\t\tfloat dotTL = dot( material.anisotropyT, lightDir );\n\t\tfloat dotTV = dot( material.anisotropyT, viewDir );\n\t\tfloat dotTH = dot( material.anisotropyT, halfDir );\n\t\tfloat dotBL = dot( material.anisotropyB, lightDir );\n\t\tfloat dotBV = dot( material.anisotropyB, viewDir );\n\t\tfloat dotBH = dot( material.anisotropyB, halfDir );\n\t\tfloat V = V_GGX_SmithCorrelated_Anisotropic( material.alphaT, alpha, dotTV, dotBV, dotTL, dotBL, dotNV, dotNL );\n\t\tfloat D = D_GGX_Anisotropic( material.alphaT, alpha, dotNH, dotTH, dotBH );\n\t#else\n\t\tfloat V = V_GGX_SmithCorrelated( alpha, dotNL, dotNV );\n\t\tfloat D = D_GGX( alpha, dotNH );\n\t#endif\n\treturn F * ( V * D );\n}\nvec2 LTC_Uv( const in vec3 N, const in vec3 V, const in float roughness ) {\n\tconst float LUT_SIZE = 64.0;\n\tconst float LUT_SCALE = ( LUT_SIZE - 1.0 ) / LUT_SIZE;\n\tconst float LUT_BIAS = 0.5 / LUT_SIZE;\n\tfloat dotNV = saturate( dot( N, V ) );\n\tvec2 uv = vec2( roughness, sqrt( 1.0 - dotNV ) );\n\tuv = uv * LUT_SCALE + LUT_BIAS;\n\treturn uv;\n}\nfloat LTC_ClippedSphereFormFactor( const in vec3 f ) {\n\tfloat l = length( f );\n\treturn max( ( l * l + f.z ) / ( l + 1.0 ), 0.0 );\n}\nvec3 LTC_EdgeVectorFormFactor( const in vec3 v1, const in vec3 v2 ) {\n\tfloat x = dot( v1, v2 );\n\tfloat y = abs( x );\n\tfloat a = 0.8543985 + ( 0.4965155 + 0.0145206 * y ) * y;\n\tfloat b = 3.4175940 + ( 4.1616724 + y ) * y;\n\tfloat v = a / b;\n\tfloat theta_sintheta = ( x > 0.0 ) ? v : 0.5 * inversesqrt( max( 1.0 - x * x, 1e-7 ) ) - v;\n\treturn cross( v1, v2 ) * theta_sintheta;\n}\nvec3 LTC_Evaluate( const in vec3 N, const in vec3 V, const in vec3 P, const in mat3 mInv, const in vec3 rectCoords[ 4 ] ) {\n\tvec3 v1 = rectCoords[ 1 ] - rectCoords[ 0 ];\n\tvec3 v2 = rectCoords[ 3 ] - rectCoords[ 0 ];\n\tvec3 lightNormal = cross( v1, v2 );\n\tif( dot( lightNormal, P - rectCoords[ 0 ] ) < 0.0 ) return vec3( 0.0 );\n\tvec3 T1, T2;\n\tT1 = normalize( V - N * dot( V, N ) );\n\tT2 = - cross( N, T1 );\n\tmat3 mat = mInv * transpose( mat3( T1, T2, N ) );\n\tvec3 coords[ 4 ];\n\tcoords[ 0 ] = mat * ( rectCoords[ 0 ] - P );\n\tcoords[ 1 ] = mat * ( rectCoords[ 1 ] - P );\n\tcoords[ 2 ] = mat * ( rectCoords[ 2 ] - P );\n\tcoords[ 3 ] = mat * ( rectCoords[ 3 ] - P );\n\tcoords[ 0 ] = normalize( coords[ 0 ] );\n\tcoords[ 1 ] = normalize( coords[ 1 ] );\n\tcoords[ 2 ] = normalize( coords[ 2 ] );\n\tcoords[ 3 ] = normalize( coords[ 3 ] );\n\tvec3 vectorFormFactor = vec3( 0.0 );\n\tvectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 0 ], coords[ 1 ] );\n\tvectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 1 ], coords[ 2 ] );\n\tvectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 2 ], coords[ 3 ] );\n\tvectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 3 ], coords[ 0 ] );\n\tfloat result = LTC_ClippedSphereFormFactor( vectorFormFactor );\n\treturn vec3( result );\n}\n#if defined( USE_SHEEN )\nfloat D_Charlie( float roughness, float dotNH ) {\n\tfloat alpha = pow2( roughness );\n\tfloat invAlpha = 1.0 / alpha;\n\tfloat cos2h = dotNH * dotNH;\n\tfloat sin2h = max( 1.0 - cos2h, 0.0078125 );\n\treturn ( 2.0 + invAlpha ) * pow( sin2h, invAlpha * 0.5 ) / ( 2.0 * PI );\n}\nfloat V_Neubelt( float dotNV, float dotNL ) {\n\treturn saturate( 1.0 / ( 4.0 * ( dotNL + dotNV - dotNL * dotNV ) ) );\n}\nvec3 BRDF_Sheen( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, vec3 sheenColor, const in float sheenRoughness ) {\n\tvec3 halfDir = normalize( lightDir + viewDir );\n\tfloat dotNL = saturate( dot( normal, lightDir ) );\n\tfloat dotNV = saturate( dot( normal, viewDir ) );\n\tfloat dotNH = saturate( dot( normal, halfDir ) );\n\tfloat D = D_Charlie( sheenRoughness, dotNH );\n\tfloat V = V_Neubelt( dotNV, dotNL );\n\treturn sheenColor * ( D * V );\n}\n#endif\nfloat IBLSheenBRDF( const in vec3 normal, const in vec3 viewDir, const in float roughness ) {\n\tfloat dotNV = saturate( dot( normal, viewDir ) );\n\tfloat r2 = roughness * roughness;\n\tfloat rInv = 1.0 / ( roughness + 0.1 );\n\tfloat a = -1.9362 + 1.0678 * roughness + 0.4573 * r2 - 0.8469 * rInv;\n\tfloat b = -0.6014 + 0.5538 * roughness - 0.4670 * r2 - 0.1255 * rInv;\n\tfloat DG = exp( a * dotNV + b );\n\treturn saturate( DG );\n}\nvec3 EnvironmentBRDF( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float roughness ) {\n\tfloat dotNV = saturate( dot( normal, viewDir ) );\n\tvec2 fab = texture2D( dfgLUT, vec2( roughness, dotNV ) ).rg;\n\treturn specularColor * fab.x + specularF90 * fab.y;\n}\n#ifdef USE_IRIDESCENCE\nvoid computeMultiscatteringIridescence( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float iridescence, const in vec3 iridescenceF0, const in float roughness, inout vec3 singleScatter, inout vec3 multiScatter ) {\n#else\nvoid computeMultiscattering( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float roughness, inout vec3 singleScatter, inout vec3 multiScatter ) {\n#endif\n\tfloat dotNV = saturate( dot( normal, viewDir ) );\n\tvec2 fab = texture2D( dfgLUT, vec2( roughness, dotNV ) ).rg;\n\t#ifdef USE_IRIDESCENCE\n\t\tvec3 Fr = mix( specularColor, iridescenceF0, iridescence );\n\t#else\n\t\tvec3 Fr = specularColor;\n\t#endif\n\tvec3 FssEss = Fr * fab.x + specularF90 * fab.y;\n\tfloat Ess = fab.x + fab.y;\n\tfloat Ems = 1.0 - Ess;\n\tvec3 Favg = Fr + ( 1.0 - Fr ) * 0.047619;\tvec3 Fms = FssEss * Favg / ( 1.0 - Ems * Favg );\n\tsingleScatter += FssEss;\n\tmultiScatter += Fms * Ems;\n}\nvec3 BRDF_GGX_Multiscatter( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, const in PhysicalMaterial material ) {\n\tvec3 singleScatter = BRDF_GGX( lightDir, viewDir, normal, material );\n\tfloat dotNL = saturate( dot( normal, lightDir ) );\n\tfloat dotNV = saturate( dot( normal, viewDir ) );\n\tvec2 dfgV = texture2D( dfgLUT, vec2( material.roughness, dotNV ) ).rg;\n\tvec2 dfgL = texture2D( dfgLUT, vec2( material.roughness, dotNL ) ).rg;\n\tvec3 FssEss_V = material.specularColorBlended * dfgV.x + material.specularF90 * dfgV.y;\n\tvec3 FssEss_L = material.specularColorBlended * dfgL.x + material.specularF90 * dfgL.y;\n\tfloat Ess_V = dfgV.x + dfgV.y;\n\tfloat Ess_L = dfgL.x + dfgL.y;\n\tfloat Ems_V = 1.0 - Ess_V;\n\tfloat Ems_L = 1.0 - Ess_L;\n\tvec3 Favg = material.specularColorBlended + ( 1.0 - material.specularColorBlended ) * 0.047619;\n\tvec3 Fms = FssEss_V * FssEss_L * Favg / ( 1.0 - Ems_V * Ems_L * Favg + EPSILON );\n\tfloat compensationFactor = Ems_V * Ems_L;\n\tvec3 multiScatter = Fms * compensationFactor;\n\treturn singleScatter + multiScatter;\n}\n#if NUM_RECT_AREA_LIGHTS > 0\n\tvoid RE_Direct_RectArea_Physical( const in RectAreaLight rectAreaLight, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\n\t\tvec3 normal = geometryNormal;\n\t\tvec3 viewDir = geometryViewDir;\n\t\tvec3 position = geometryPosition;\n\t\tvec3 lightPos = rectAreaLight.position;\n\t\tvec3 halfWidth = rectAreaLight.halfWidth;\n\t\tvec3 halfHeight = rectAreaLight.halfHeight;\n\t\tvec3 lightColor = rectAreaLight.color;\n\t\tfloat roughness = material.roughness;\n\t\tvec3 rectCoords[ 4 ];\n\t\trectCoords[ 0 ] = lightPos + halfWidth - halfHeight;\t\trectCoords[ 1 ] = lightPos - halfWidth - halfHeight;\n\t\trectCoords[ 2 ] = lightPos - halfWidth + halfHeight;\n\t\trectCoords[ 3 ] = lightPos + halfWidth + halfHeight;\n\t\tvec2 uv = LTC_Uv( normal, viewDir, roughness );\n\t\tvec4 t1 = texture2D( ltc_1, uv );\n\t\tvec4 t2 = texture2D( ltc_2, uv );\n\t\tmat3 mInv = mat3(\n\t\t\tvec3( t1.x, 0, t1.y ),\n\t\t\tvec3(    0, 1,    0 ),\n\t\t\tvec3( t1.z, 0, t1.w )\n\t\t);\n\t\tvec3 fresnel = ( material.specularColorBlended * t2.x + ( material.specularF90 - material.specularColorBlended ) * t2.y );\n\t\treflectedLight.directSpecular += lightColor * fresnel * LTC_Evaluate( normal, viewDir, position, mInv, rectCoords );\n\t\treflectedLight.directDiffuse += lightColor * material.diffuseContribution * LTC_Evaluate( normal, viewDir, position, mat3( 1.0 ), rectCoords );\n\t\t#ifdef USE_CLEARCOAT\n\t\t\tvec3 Ncc = geometryClearcoatNormal;\n\t\t\tvec2 uvClearcoat = LTC_Uv( Ncc, viewDir, material.clearcoatRoughness );\n\t\t\tvec4 t1Clearcoat = texture2D( ltc_1, uvClearcoat );\n\t\t\tvec4 t2Clearcoat = texture2D( ltc_2, uvClearcoat );\n\t\t\tmat3 mInvClearcoat = mat3(\n\t\t\t\tvec3( t1Clearcoat.x, 0, t1Clearcoat.y ),\n\t\t\t\tvec3(             0, 1,             0 ),\n\t\t\t\tvec3( t1Clearcoat.z, 0, t1Clearcoat.w )\n\t\t\t);\n\t\t\tvec3 fresnelClearcoat = material.clearcoatF0 * t2Clearcoat.x + ( material.clearcoatF90 - material.clearcoatF0 ) * t2Clearcoat.y;\n\t\t\tclearcoatSpecularDirect += lightColor * fresnelClearcoat * LTC_Evaluate( Ncc, viewDir, position, mInvClearcoat, rectCoords );\n\t\t#endif\n\t}\n#endif\nvoid RE_Direct_Physical( const in IncidentLight directLight, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\n\tfloat dotNL = saturate( dot( geometryNormal, directLight.direction ) );\n\tvec3 irradiance = dotNL * directLight.color;\n\t#ifdef USE_CLEARCOAT\n\t\tfloat dotNLcc = saturate( dot( geometryClearcoatNormal, directLight.direction ) );\n\t\tvec3 ccIrradiance = dotNLcc * directLight.color;\n\t\tclearcoatSpecularDirect += ccIrradiance * BRDF_GGX_Clearcoat( directLight.direction, geometryViewDir, geometryClearcoatNormal, material );\n\t#endif\n\t#ifdef USE_SHEEN\n \n \t\tsheenSpecularDirect += irradiance * BRDF_Sheen( directLight.direction, geometryViewDir, geometryNormal, material.sheenColor, material.sheenRoughness );\n \n \t\tfloat sheenAlbedoV = IBLSheenBRDF( geometryNormal, geometryViewDir, material.sheenRoughness );\n \t\tfloat sheenAlbedoL = IBLSheenBRDF( geometryNormal, directLight.direction, material.sheenRoughness );\n \n \t\tfloat sheenEnergyComp = 1.0 - max3( material.sheenColor ) * max( sheenAlbedoV, sheenAlbedoL );\n \n \t\tirradiance *= sheenEnergyComp;\n \n \t#endif\n\treflectedLight.directSpecular += irradiance * BRDF_GGX_Multiscatter( directLight.direction, geometryViewDir, geometryNormal, material );\n\treflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseContribution );\n}\nvoid RE_IndirectDiffuse_Physical( const in vec3 irradiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\n\tvec3 diffuse = irradiance * BRDF_Lambert( material.diffuseContribution );\n\t#ifdef USE_SHEEN\n\t\tfloat sheenAlbedo = IBLSheenBRDF( geometryNormal, geometryViewDir, material.sheenRoughness );\n\t\tfloat sheenEnergyComp = 1.0 - max3( material.sheenColor ) * sheenAlbedo;\n\t\tdiffuse *= sheenEnergyComp;\n\t#endif\n\treflectedLight.indirectDiffuse += diffuse;\n}\nvoid RE_IndirectSpecular_Physical( const in vec3 radiance, const in vec3 irradiance, const in vec3 clearcoatRadiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in PhysicalMaterial material, inout ReflectedLight reflectedLight) {\n\t#ifdef USE_CLEARCOAT\n\t\tclearcoatSpecularIndirect += clearcoatRadiance * EnvironmentBRDF( geometryClearcoatNormal, geometryViewDir, material.clearcoatF0, material.clearcoatF90, material.clearcoatRoughness );\n\t#endif\n\t#ifdef USE_SHEEN\n\t\tsheenSpecularIndirect += irradiance * material.sheenColor * IBLSheenBRDF( geometryNormal, geometryViewDir, material.sheenRoughness ) * RECIPROCAL_PI;\n \t#endif\n\tvec3 singleScatteringDielectric = vec3( 0.0 );\n\tvec3 multiScatteringDielectric = vec3( 0.0 );\n\tvec3 singleScatteringMetallic = vec3( 0.0 );\n\tvec3 multiScatteringMetallic = vec3( 0.0 );\n\t#ifdef USE_IRIDESCENCE\n\t\tcomputeMultiscatteringIridescence( geometryNormal, geometryViewDir, material.specularColor, material.specularF90, material.iridescence, material.iridescenceFresnelDielectric, material.roughness, singleScatteringDielectric, multiScatteringDielectric );\n\t\tcomputeMultiscatteringIridescence( geometryNormal, geometryViewDir, material.diffuseColor, material.specularF90, material.iridescence, material.iridescenceFresnelMetallic, material.roughness, singleScatteringMetallic, multiScatteringMetallic );\n\t#else\n\t\tcomputeMultiscattering( geometryNormal, geometryViewDir, material.specularColor, material.specularF90, material.roughness, singleScatteringDielectric, multiScatteringDielectric );\n\t\tcomputeMultiscattering( geometryNormal, geometryViewDir, material.diffuseColor, material.specularF90, material.roughness, singleScatteringMetallic, multiScatteringMetallic );\n\t#endif\n\tvec3 singleScattering = mix( singleScatteringDielectric, singleScatteringMetallic, material.metalness );\n\tvec3 multiScattering = mix( multiScatteringDielectric, multiScatteringMetallic, material.metalness );\n\tvec3 totalScatteringDielectric = singleScatteringDielectric + multiScatteringDielectric;\n\tvec3 diffuse = material.diffuseContribution * ( 1.0 - totalScatteringDielectric );\n\tvec3 cosineWeightedIrradiance = irradiance * RECIPROCAL_PI;\n\tvec3 indirectSpecular = radiance * singleScattering;\n\tindirectSpecular += multiScattering * cosineWeightedIrradiance;\n\tvec3 indirectDiffuse = diffuse * cosineWeightedIrradiance;\n\t#ifdef USE_SHEEN\n\t\tfloat sheenAlbedo = IBLSheenBRDF( geometryNormal, geometryViewDir, material.sheenRoughness );\n\t\tfloat sheenEnergyComp = 1.0 - max3( material.sheenColor ) * sheenAlbedo;\n\t\tindirectSpecular *= sheenEnergyComp;\n\t\tindirectDiffuse *= sheenEnergyComp;\n\t#endif\n\treflectedLight.indirectSpecular += indirectSpecular;\n\treflectedLight.indirectDiffuse += indirectDiffuse;\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}`,Cs=`\nvec3 geometryPosition = - vViewPosition;\nvec3 geometryNormal = normal;\nvec3 geometryViewDir = ( isOrthographic ) ? vec3( 0, 0, 1 ) : normalize( vViewPosition );\nvec3 geometryClearcoatNormal = vec3( 0.0 );\n#ifdef USE_CLEARCOAT\n\tgeometryClearcoatNormal = clearcoatNormal;\n#endif\n#ifdef USE_IRIDESCENCE\n\tfloat dotNVi = saturate( dot( normal, geometryViewDir ) );\n\tif ( material.iridescenceThickness == 0.0 ) {\n\t\tmaterial.iridescence = 0.0;\n\t} else {\n\t\tmaterial.iridescence = saturate( material.iridescence );\n\t}\n\tif ( material.iridescence > 0.0 ) {\n\t\tmaterial.iridescenceFresnelDielectric = evalIridescence( 1.0, material.iridescenceIOR, dotNVi, material.iridescenceThickness, material.specularColor );\n\t\tmaterial.iridescenceFresnelMetallic = evalIridescence( 1.0, material.iridescenceIOR, dotNVi, material.iridescenceThickness, material.diffuseColor );\n\t\tmaterial.iridescenceFresnel = mix( material.iridescenceFresnelDielectric, material.iridescenceFresnelMetallic, material.metalness );\n\t\tmaterial.iridescenceF0 = Schlick_to_F0( material.iridescenceFresnel, 1.0, dotNVi );\n\t}\n#endif\nIncidentLight directLight;\n#if ( NUM_POINT_LIGHTS > 0 ) && defined( RE_Direct )\n\tPointLight pointLight;\n\t#if defined( USE_SHADOWMAP ) && NUM_POINT_LIGHT_SHADOWS > 0\n\tPointLightShadow pointLightShadow;\n\t#endif\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) {\n\t\tpointLight = pointLights[ i ];\n\t\tgetPointLightInfo( pointLight, geometryPosition, directLight );\n\t\t#if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_POINT_LIGHT_SHADOWS ) && ( defined( SHADOWMAP_TYPE_PCF ) || defined( SHADOWMAP_TYPE_BASIC ) )\n\t\tpointLightShadow = pointLightShadows[ i ];\n\t\tdirectLight.color *= ( directLight.visible && receiveShadow ) ? getPointShadow( pointShadowMap[ i ], pointLightShadow.shadowMapSize, pointLightShadow.shadowIntensity, pointLightShadow.shadowBias, pointLightShadow.shadowRadius, vPointShadowCoord[ i ], pointLightShadow.shadowCameraNear, pointLightShadow.shadowCameraFar ) : 1.0;\n\t\t#endif\n\t\tRE_Direct( directLight, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );\n\t}\n\t#pragma unroll_loop_end\n#endif\n#if ( NUM_SPOT_LIGHTS > 0 ) && defined( RE_Direct )\n\tSpotLight spotLight;\n\tvec4 spotColor;\n\tvec3 spotLightCoord;\n\tbool inSpotLightMap;\n\t#if defined( USE_SHADOWMAP ) && NUM_SPOT_LIGHT_SHADOWS > 0\n\tSpotLightShadow spotLightShadow;\n\t#endif\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) {\n\t\tspotLight = spotLights[ i ];\n\t\tgetSpotLightInfo( spotLight, geometryPosition, directLight );\n\t\t#if ( UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS_WITH_MAPS )\n\t\t#define SPOT_LIGHT_MAP_INDEX UNROLLED_LOOP_INDEX\n\t\t#elif ( UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS )\n\t\t#define SPOT_LIGHT_MAP_INDEX NUM_SPOT_LIGHT_MAPS\n\t\t#else\n\t\t#define SPOT_LIGHT_MAP_INDEX ( UNROLLED_LOOP_INDEX - NUM_SPOT_LIGHT_SHADOWS + NUM_SPOT_LIGHT_SHADOWS_WITH_MAPS )\n\t\t#endif\n\t\t#if ( SPOT_LIGHT_MAP_INDEX < NUM_SPOT_LIGHT_MAPS )\n\t\t\tspotLightCoord = vSpotLightCoord[ i ].xyz / vSpotLightCoord[ i ].w;\n\t\t\tinSpotLightMap = all( lessThan( abs( spotLightCoord * 2. - 1. ), vec3( 1.0 ) ) );\n\t\t\tspotColor = texture2D( spotLightMap[ SPOT_LIGHT_MAP_INDEX ], spotLightCoord.xy );\n\t\t\tdirectLight.color = inSpotLightMap ? directLight.color * spotColor.rgb : directLight.color;\n\t\t#endif\n\t\t#undef SPOT_LIGHT_MAP_INDEX\n\t\t#if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS )\n\t\tspotLightShadow = spotLightShadows[ i ];\n\t\tdirectLight.color *= ( directLight.visible && receiveShadow ) ? getShadow( spotShadowMap[ i ], spotLightShadow.shadowMapSize, spotLightShadow.shadowIntensity, spotLightShadow.shadowBias, spotLightShadow.shadowRadius, vSpotLightCoord[ i ] ) : 1.0;\n\t\t#endif\n\t\tRE_Direct( directLight, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );\n\t}\n\t#pragma unroll_loop_end\n#endif\n#if ( NUM_DIR_LIGHTS > 0 ) && defined( RE_Direct )\n\tDirectionalLight directionalLight;\n\t#if defined( USE_SHADOWMAP ) && NUM_DIR_LIGHT_SHADOWS > 0\n\tDirectionalLightShadow directionalLightShadow;\n\t#endif\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) {\n\t\tdirectionalLight = directionalLights[ i ];\n\t\tgetDirectionalLightInfo( directionalLight, directLight );\n\t\t#if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_DIR_LIGHT_SHADOWS )\n\t\tdirectionalLightShadow = directionalLightShadows[ i ];\n\t\tdirectLight.color *= ( directLight.visible && receiveShadow ) ? getShadow( directionalShadowMap[ i ], directionalLightShadow.shadowMapSize, directionalLightShadow.shadowIntensity, directionalLightShadow.shadowBias, directionalLightShadow.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0;\n\t\t#endif\n\t\tRE_Direct( directLight, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );\n\t}\n\t#pragma unroll_loop_end\n#endif\n#if ( NUM_RECT_AREA_LIGHTS > 0 ) && defined( RE_Direct_RectArea )\n\tRectAreaLight rectAreaLight;\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_RECT_AREA_LIGHTS; i ++ ) {\n\t\trectAreaLight = rectAreaLights[ i ];\n\t\tRE_Direct_RectArea( rectAreaLight, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );\n\t}\n\t#pragma unroll_loop_end\n#endif\n#if defined( RE_IndirectDiffuse )\n\tvec3 iblIrradiance = vec3( 0.0 );\n\tvec3 irradiance = getAmbientLightIrradiance( ambientLightColor );\n\t#if defined( USE_LIGHT_PROBES )\n\t\tirradiance += getLightProbeIrradiance( lightProbe, geometryNormal );\n\t#endif\n\t#if ( NUM_HEMI_LIGHTS > 0 )\n\t\t#pragma unroll_loop_start\n\t\tfor ( int i = 0; i < NUM_HEMI_LIGHTS; i ++ ) {\n\t\t\tirradiance += getHemisphereLightIrradiance( hemisphereLights[ i ], geometryNormal );\n\t\t}\n\t\t#pragma unroll_loop_end\n\t#endif\n#endif\n#if defined( RE_IndirectSpecular )\n\tvec3 radiance = vec3( 0.0 );\n\tvec3 clearcoatRadiance = vec3( 0.0 );\n#endif`,bs=`#if defined( RE_IndirectDiffuse )\n\t#ifdef USE_LIGHTMAP\n\t\tvec4 lightMapTexel = texture2D( lightMap, vLightMapUv );\n\t\tvec3 lightMapIrradiance = lightMapTexel.rgb * lightMapIntensity;\n\t\tirradiance += lightMapIrradiance;\n\t#endif\n\t#if defined( USE_ENVMAP ) && defined( ENVMAP_TYPE_CUBE_UV )\n\t\t#if defined( STANDARD ) || defined( LAMBERT ) || defined( PHONG )\n\t\t\tiblIrradiance += getIBLIrradiance( geometryNormal );\n\t\t#endif\n\t#endif\n#endif\n#if defined( USE_ENVMAP ) && defined( RE_IndirectSpecular )\n\t#ifdef USE_ANISOTROPY\n\t\tradiance += getIBLAnisotropyRadiance( geometryViewDir, geometryNormal, material.roughness, material.anisotropyB, material.anisotropy );\n\t#else\n\t\tradiance += getIBLRadiance( geometryViewDir, geometryNormal, material.roughness );\n\t#endif\n\t#ifdef USE_CLEARCOAT\n\t\tclearcoatRadiance += getIBLRadiance( geometryViewDir, geometryClearcoatNormal, material.clearcoatRoughness );\n\t#endif\n#endif`,Ps=`#if defined( RE_IndirectDiffuse )\n\t#if defined( LAMBERT ) || defined( PHONG )\n\t\tirradiance += iblIrradiance;\n\t#endif\n\tRE_IndirectDiffuse( irradiance, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );\n#endif\n#if defined( RE_IndirectSpecular )\n\tRE_IndirectSpecular( radiance, iblIrradiance, clearcoatRadiance, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );\n#endif`,Ls=`#if defined( USE_LOGARITHMIC_DEPTH_BUFFER )\n\tgl_FragDepth = vIsPerspective == 0.0 ? gl_FragCoord.z : log2( vFragDepth ) * logDepthBufFC * 0.5;\n#endif`,Ds=`#if defined( USE_LOGARITHMIC_DEPTH_BUFFER )\n\tuniform float logDepthBufFC;\n\tvarying float vFragDepth;\n\tvarying float vIsPerspective;\n#endif`,Us=`#ifdef USE_LOGARITHMIC_DEPTH_BUFFER\n\tvarying float vFragDepth;\n\tvarying float vIsPerspective;\n#endif`,ws=`#ifdef USE_LOGARITHMIC_DEPTH_BUFFER\n\tvFragDepth = 1.0 + gl_Position.w;\n\tvIsPerspective = float( isPerspectiveMatrix( projectionMatrix ) );\n#endif`,Is=`#ifdef USE_MAP\n\tvec4 sampledDiffuseColor = texture2D( map, vMapUv );\n\t#ifdef DECODE_VIDEO_TEXTURE\n\t\tsampledDiffuseColor = sRGBTransferEOTF( sampledDiffuseColor );\n\t#endif\n\tdiffuseColor *= sampledDiffuseColor;\n#endif`,Ns=`#ifdef USE_MAP\n\tuniform sampler2D map;\n#endif`,ys=`#if defined( USE_MAP ) || defined( USE_ALPHAMAP )\n\t#if defined( USE_POINTS_UV )\n\t\tvec2 uv = vUv;\n\t#else\n\t\tvec2 uv = ( uvTransform * vec3( gl_PointCoord.x, 1.0 - gl_PointCoord.y, 1 ) ).xy;\n\t#endif\n#endif\n#ifdef USE_MAP\n\tdiffuseColor *= texture2D( map, uv );\n#endif\n#ifdef USE_ALPHAMAP\n\tdiffuseColor.a *= texture2D( alphaMap, uv ).g;\n#endif`,Fs=`#if defined( USE_POINTS_UV )\n\tvarying vec2 vUv;\n#else\n\t#if defined( USE_MAP ) || defined( USE_ALPHAMAP )\n\t\tuniform mat3 uvTransform;\n\t#endif\n#endif\n#ifdef USE_MAP\n\tuniform sampler2D map;\n#endif\n#ifdef USE_ALPHAMAP\n\tuniform sampler2D alphaMap;\n#endif`,Os=`float metalnessFactor = metalness;\n#ifdef USE_METALNESSMAP\n\tvec4 texelMetalness = texture2D( metalnessMap, vMetalnessMapUv );\n\tmetalnessFactor *= texelMetalness.b;\n#endif`,Bs=`#ifdef USE_METALNESSMAP\n\tuniform sampler2D metalnessMap;\n#endif`,Gs=`#ifdef USE_INSTANCING_MORPH\n\tfloat morphTargetInfluences[ MORPHTARGETS_COUNT ];\n\tfloat morphTargetBaseInfluence = texelFetch( morphTexture, ivec2( 0, gl_InstanceID ), 0 ).r;\n\tfor ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {\n\t\tmorphTargetInfluences[i] =  texelFetch( morphTexture, ivec2( i + 1, gl_InstanceID ), 0 ).r;\n\t}\n#endif`,Hs=`#if defined( USE_MORPHCOLORS )\n\tvColor *= morphTargetBaseInfluence;\n\tfor ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {\n\t\t#if defined( USE_COLOR_ALPHA )\n\t\t\tif ( morphTargetInfluences[ i ] != 0.0 ) vColor += getMorph( gl_VertexID, i, 2 ) * morphTargetInfluences[ i ];\n\t\t#elif defined( USE_COLOR )\n\t\t\tif ( morphTargetInfluences[ i ] != 0.0 ) vColor += getMorph( gl_VertexID, i, 2 ).rgb * morphTargetInfluences[ i ];\n\t\t#endif\n\t}\n#endif`,Vs=`#ifdef USE_MORPHNORMALS\n\tobjectNormal *= morphTargetBaseInfluence;\n\tfor ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {\n\t\tif ( morphTargetInfluences[ i ] != 0.0 ) objectNormal += getMorph( gl_VertexID, i, 1 ).xyz * morphTargetInfluences[ i ];\n\t}\n#endif`,ks=`#ifdef USE_MORPHTARGETS\n\t#ifndef USE_INSTANCING_MORPH\n\t\tuniform float morphTargetBaseInfluence;\n\t\tuniform float morphTargetInfluences[ MORPHTARGETS_COUNT ];\n\t#endif\n\tuniform sampler2DArray morphTargetsTexture;\n\tuniform ivec2 morphTargetsTextureSize;\n\tvec4 getMorph( const in int vertexIndex, const in int morphTargetIndex, const in int offset ) {\n\t\tint texelIndex = vertexIndex * MORPHTARGETS_TEXTURE_STRIDE + offset;\n\t\tint y = texelIndex / morphTargetsTextureSize.x;\n\t\tint x = texelIndex - y * morphTargetsTextureSize.x;\n\t\tivec3 morphUV = ivec3( x, y, morphTargetIndex );\n\t\treturn texelFetch( morphTargetsTexture, morphUV, 0 );\n\t}\n#endif`,Ws=`#ifdef USE_MORPHTARGETS\n\ttransformed *= morphTargetBaseInfluence;\n\tfor ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {\n\t\tif ( morphTargetInfluences[ i ] != 0.0 ) transformed += getMorph( gl_VertexID, i, 0 ).xyz * morphTargetInfluences[ i ];\n\t}\n#endif`,zs=`float faceDirection = gl_FrontFacing ? 1.0 : - 1.0;\n#ifdef FLAT_SHADED\n\tvec3 fdx = dFdx( vViewPosition );\n\tvec3 fdy = dFdy( vViewPosition );\n\tvec3 normal = normalize( cross( fdx, fdy ) );\n#else\n\tvec3 normal = normalize( vNormal );\n\t#ifdef DOUBLE_SIDED\n\t\tnormal *= faceDirection;\n\t#endif\n#endif\n#if defined( USE_NORMALMAP_TANGENTSPACE ) || defined( USE_CLEARCOAT_NORMALMAP ) || defined( USE_ANISOTROPY )\n\t#ifdef USE_TANGENT\n\t\tmat3 tbn = mat3( normalize( vTangent ), normalize( vBitangent ), normal );\n\t#else\n\t\tmat3 tbn = getTangentFrame( - vViewPosition, normal,\n\t\t#if defined( USE_NORMALMAP )\n\t\t\tvNormalMapUv\n\t\t#elif defined( USE_CLEARCOAT_NORMALMAP )\n\t\t\tvClearcoatNormalMapUv\n\t\t#else\n\t\t\tvUv\n\t\t#endif\n\t\t);\n\t#endif\n\t#if defined( DOUBLE_SIDED ) && ! defined( FLAT_SHADED )\n\t\ttbn[0] *= faceDirection;\n\t\ttbn[1] *= faceDirection;\n\t#endif\n#endif\n#ifdef USE_CLEARCOAT_NORMALMAP\n\t#ifdef USE_TANGENT\n\t\tmat3 tbn2 = mat3( normalize( vTangent ), normalize( vBitangent ), normal );\n\t#else\n\t\tmat3 tbn2 = getTangentFrame( - vViewPosition, normal, vClearcoatNormalMapUv );\n\t#endif\n\t#if defined( DOUBLE_SIDED ) && ! defined( FLAT_SHADED )\n\t\ttbn2[0] *= faceDirection;\n\t\ttbn2[1] *= faceDirection;\n\t#endif\n#endif\nvec3 nonPerturbedNormal = normal;`,Xs=`#ifdef USE_NORMALMAP_OBJECTSPACE\n\tnormal = texture2D( normalMap, vNormalMapUv ).xyz * 2.0 - 1.0;\n\t#ifdef FLIP_SIDED\n\t\tnormal = - normal;\n\t#endif\n\t#ifdef DOUBLE_SIDED\n\t\tnormal = normal * faceDirection;\n\t#endif\n\tnormal = normalize( normalMatrix * normal );\n#elif defined( USE_NORMALMAP_TANGENTSPACE )\n\tvec3 mapN = texture2D( normalMap, vNormalMapUv ).xyz * 2.0 - 1.0;\n\tmapN.xy *= normalScale;\n\tnormal = normalize( tbn * mapN );\n#elif defined( USE_BUMPMAP )\n\tnormal = perturbNormalArb( - vViewPosition, normal, dHdxy_fwd(), faceDirection );\n#endif`,Ys=`#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`,qs=`#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`,Ks=`#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`,$s=`#ifdef USE_NORMALMAP\n\tuniform sampler2D normalMap;\n\tuniform vec2 normalScale;\n#endif\n#ifdef USE_NORMALMAP_OBJECTSPACE\n\tuniform mat3 normalMatrix;\n#endif\n#if ! defined ( USE_TANGENT ) && ( defined ( USE_NORMALMAP_TANGENTSPACE ) || defined ( USE_CLEARCOAT_NORMALMAP ) || defined( USE_ANISOTROPY ) )\n\tmat3 getTangentFrame( vec3 eye_pos, vec3 surf_norm, vec2 uv ) {\n\t\tvec3 q0 = dFdx( eye_pos.xyz );\n\t\tvec3 q1 = dFdy( eye_pos.xyz );\n\t\tvec2 st0 = dFdx( uv.st );\n\t\tvec2 st1 = dFdy( uv.st );\n\t\tvec3 N = surf_norm;\n\t\tvec3 q1perp = cross( q1, N );\n\t\tvec3 q0perp = cross( N, q0 );\n\t\tvec3 T = q1perp * st0.x + q0perp * st1.x;\n\t\tvec3 B = q1perp * st0.y + q0perp * st1.y;\n\t\tfloat det = max( dot( T, T ), dot( B, B ) );\n\t\tfloat scale = ( det == 0.0 ) ? 0.0 : inversesqrt( det );\n\t\treturn mat3( T * scale, B * scale, N );\n\t}\n#endif`,Zs=`#ifdef USE_CLEARCOAT\n\tvec3 clearcoatNormal = nonPerturbedNormal;\n#endif`,Qs=`#ifdef USE_CLEARCOAT_NORMALMAP\n\tvec3 clearcoatMapN = texture2D( clearcoatNormalMap, vClearcoatNormalMapUv ).xyz * 2.0 - 1.0;\n\tclearcoatMapN.xy *= clearcoatNormalScale;\n\tclearcoatNormal = normalize( tbn2 * clearcoatMapN );\n#endif`,Js=`#ifdef USE_CLEARCOATMAP\n\tuniform sampler2D clearcoatMap;\n#endif\n#ifdef USE_CLEARCOAT_NORMALMAP\n\tuniform sampler2D clearcoatNormalMap;\n\tuniform vec2 clearcoatNormalScale;\n#endif\n#ifdef USE_CLEARCOAT_ROUGHNESSMAP\n\tuniform sampler2D clearcoatRoughnessMap;\n#endif`,js=`#ifdef USE_IRIDESCENCEMAP\n\tuniform sampler2D iridescenceMap;\n#endif\n#ifdef USE_IRIDESCENCE_THICKNESSMAP\n\tuniform sampler2D iridescenceThicknessMap;\n#endif`,el=`#ifdef OPAQUE\ndiffuseColor.a = 1.0;\n#endif\n#ifdef USE_TRANSMISSION\ndiffuseColor.a *= material.transmissionAlpha;\n#endif\ngl_FragColor = vec4( outgoingLight, diffuseColor.a );`,tl=`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.;const float ShiftRight8 = 1. / 256.;\nconst float Inv255 = 1. / 255.;\nconst vec4 PackFactors = vec4( 1.0, 256.0, 256.0 * 256.0, 256.0 * 256.0 * 256.0 );\nconst vec2 UnpackFactors2 = vec2( UnpackDownscale, 1.0 / PackFactors.g );\nconst vec3 UnpackFactors3 = vec3( UnpackDownscale / PackFactors.rg, 1.0 / PackFactors.b );\nconst vec4 UnpackFactors4 = vec4( UnpackDownscale / PackFactors.rgb, 1.0 / PackFactors.a );\nvec4 packDepthToRGBA( const in float v ) {\n\tif( v <= 0.0 )\n\t\treturn vec4( 0., 0., 0., 0. );\n\tif( v >= 1.0 )\n\t\treturn vec4( 1., 1., 1., 1. );\n\tfloat vuf;\n\tfloat af = modf( v * PackFactors.a, vuf );\n\tfloat bf = modf( vuf * ShiftRight8, vuf );\n\tfloat gf = modf( vuf * ShiftRight8, vuf );\n\treturn vec4( vuf * Inv255, gf * PackUpscale, bf * PackUpscale, af );\n}\nvec3 packDepthToRGB( const in float v ) {\n\tif( v <= 0.0 )\n\t\treturn vec3( 0., 0., 0. );\n\tif( v >= 1.0 )\n\t\treturn vec3( 1., 1., 1. );\n\tfloat vuf;\n\tfloat bf = modf( v * PackFactors.b, vuf );\n\tfloat gf = modf( vuf * ShiftRight8, vuf );\n\treturn vec3( vuf * Inv255, gf * PackUpscale, bf );\n}\nvec2 packDepthToRG( const in float v ) {\n\tif( v <= 0.0 )\n\t\treturn vec2( 0., 0. );\n\tif( v >= 1.0 )\n\t\treturn vec2( 1., 1. );\n\tfloat vuf;\n\tfloat gf = modf( v * 256., vuf );\n\treturn vec2( vuf * Inv255, gf );\n}\nfloat unpackRGBAToDepth( const in vec4 v ) {\n\treturn dot( v, UnpackFactors4 );\n}\nfloat unpackRGBToDepth( const in vec3 v ) {\n\treturn dot( v, UnpackFactors3 );\n}\nfloat unpackRGToDepth( const in vec2 v ) {\n\treturn v.r * UnpackFactors2.r + v.g * UnpackFactors2.g;\n}\nvec4 pack2HalfToRGBA( const in 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( const in vec4 v ) {\n\treturn vec2( v.x + ( v.y / 255.0 ), v.z + ( v.w / 255.0 ) );\n}\nfloat viewZToOrthographicDepth( const in float viewZ, const in float near, const in float far ) {\n\treturn ( viewZ + near ) / ( near - far );\n}\nfloat orthographicDepthToViewZ( const in float depth, const in float near, const in float far ) {\n\t#ifdef USE_REVERSED_DEPTH_BUFFER\n\t\n\t\treturn depth * ( far - near ) - far;\n\t#else\n\t\treturn depth * ( near - far ) - near;\n\t#endif\n}\nfloat viewZToPerspectiveDepth( const in float viewZ, const in float near, const in float far ) {\n\treturn ( ( near + viewZ ) * far ) / ( ( far - near ) * viewZ );\n}\nfloat perspectiveDepthToViewZ( const in float depth, const in float near, const in float far ) {\n\t\n\t#ifdef USE_REVERSED_DEPTH_BUFFER\n\t\treturn ( near * far ) / ( ( near - far ) * depth - near );\n\t#else\n\t\treturn ( near * far ) / ( ( far - near ) * depth - far );\n\t#endif\n}`,nl=`#ifdef PREMULTIPLIED_ALPHA\n\tgl_FragColor.rgb *= gl_FragColor.a;\n#endif`,il=`vec4 mvPosition = vec4( transformed, 1.0 );\n#ifdef USE_BATCHING\n\tmvPosition = batchingMatrix * mvPosition;\n#endif\n#ifdef USE_INSTANCING\n\tmvPosition = instanceMatrix * mvPosition;\n#endif\nmvPosition = modelViewMatrix * mvPosition;\ngl_Position = projectionMatrix * mvPosition;`,rl=`#ifdef DITHERING\n\tgl_FragColor.rgb = dithering( gl_FragColor.rgb );\n#endif`,al=`#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`,ol=`float roughnessFactor = roughness;\n#ifdef USE_ROUGHNESSMAP\n\tvec4 texelRoughness = texture2D( roughnessMap, vRoughnessMapUv );\n\troughnessFactor *= texelRoughness.g;\n#endif`,sl=`#ifdef USE_ROUGHNESSMAP\n\tuniform sampler2D roughnessMap;\n#endif`,ll=`#if NUM_SPOT_LIGHT_COORDS > 0\n\tvarying vec4 vSpotLightCoord[ NUM_SPOT_LIGHT_COORDS ];\n#endif\n#if NUM_SPOT_LIGHT_MAPS > 0\n\tuniform sampler2D spotLightMap[ NUM_SPOT_LIGHT_MAPS ];\n#endif\n#ifdef USE_SHADOWMAP\n\t#if NUM_DIR_LIGHT_SHADOWS > 0\n\t\t#if defined( SHADOWMAP_TYPE_PCF )\n\t\t\tuniform sampler2DShadow directionalShadowMap[ NUM_DIR_LIGHT_SHADOWS ];\n\t\t#else\n\t\t\tuniform sampler2D directionalShadowMap[ NUM_DIR_LIGHT_SHADOWS ];\n\t\t#endif\n\t\tvarying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHT_SHADOWS ];\n\t\tstruct DirectionalLightShadow {\n\t\t\tfloat shadowIntensity;\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\t#if defined( SHADOWMAP_TYPE_PCF )\n\t\t\tuniform sampler2DShadow spotShadowMap[ NUM_SPOT_LIGHT_SHADOWS ];\n\t\t#else\n\t\t\tuniform sampler2D spotShadowMap[ NUM_SPOT_LIGHT_SHADOWS ];\n\t\t#endif\n\t\tstruct SpotLightShadow {\n\t\t\tfloat shadowIntensity;\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\t#if defined( SHADOWMAP_TYPE_PCF )\n\t\t\tuniform samplerCubeShadow pointShadowMap[ NUM_POINT_LIGHT_SHADOWS ];\n\t\t#elif defined( SHADOWMAP_TYPE_BASIC )\n\t\t\tuniform samplerCube pointShadowMap[ NUM_POINT_LIGHT_SHADOWS ];\n\t\t#endif\n\t\tvarying vec4 vPointShadowCoord[ NUM_POINT_LIGHT_SHADOWS ];\n\t\tstruct PointLightShadow {\n\t\t\tfloat shadowIntensity;\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\t#if defined( SHADOWMAP_TYPE_PCF )\n\t\tfloat interleavedGradientNoise( vec2 position ) {\n\t\t\treturn fract( 52.9829189 * fract( dot( position, vec2( 0.06711056, 0.00583715 ) ) ) );\n\t\t}\n\t\tvec2 vogelDiskSample( int sampleIndex, int samplesCount, float phi ) {\n\t\t\tconst float goldenAngle = 2.399963229728653;\n\t\t\tfloat r = sqrt( ( float( sampleIndex ) + 0.5 ) / float( samplesCount ) );\n\t\t\tfloat theta = float( sampleIndex ) * goldenAngle + phi;\n\t\t\treturn vec2( cos( theta ), sin( theta ) ) * r;\n\t\t}\n\t#endif\n\t#if defined( SHADOWMAP_TYPE_PCF )\n\t\tfloat getShadow( sampler2DShadow shadowMap, vec2 shadowMapSize, float shadowIntensity, float shadowBias, float shadowRadius, vec4 shadowCoord ) {\n\t\t\tfloat shadow = 1.0;\n\t\t\tshadowCoord.xyz /= shadowCoord.w;\n\t\t\tshadowCoord.z += shadowBias;\n\t\t\tbool inFrustum = shadowCoord.x >= 0.0 && shadowCoord.x <= 1.0 && shadowCoord.y >= 0.0 && shadowCoord.y <= 1.0;\n\t\t\tbool frustumTest = inFrustum && shadowCoord.z <= 1.0;\n\t\t\tif ( frustumTest ) {\n\t\t\t\tvec2 texelSize = vec2( 1.0 ) / shadowMapSize;\n\t\t\t\tfloat radius = shadowRadius * texelSize.x;\n\t\t\t\tfloat phi = interleavedGradientNoise( gl_FragCoord.xy ) * PI2;\n\t\t\t\tshadow = (\n\t\t\t\t\ttexture( shadowMap, vec3( shadowCoord.xy + vogelDiskSample( 0, 5, phi ) * radius, shadowCoord.z ) ) +\n\t\t\t\t\ttexture( shadowMap, vec3( shadowCoord.xy + vogelDiskSample( 1, 5, phi ) * radius, shadowCoord.z ) ) +\n\t\t\t\t\ttexture( shadowMap, vec3( shadowCoord.xy + vogelDiskSample( 2, 5, phi ) * radius, shadowCoord.z ) ) +\n\t\t\t\t\ttexture( shadowMap, vec3( shadowCoord.xy + vogelDiskSample( 3, 5, phi ) * radius, shadowCoord.z ) ) +\n\t\t\t\t\ttexture( shadowMap, vec3( shadowCoord.xy + vogelDiskSample( 4, 5, phi ) * radius, shadowCoord.z ) )\n\t\t\t\t) * 0.2;\n\t\t\t}\n\t\t\treturn mix( 1.0, shadow, shadowIntensity );\n\t\t}\n\t#elif defined( SHADOWMAP_TYPE_VSM )\n\t\tfloat getShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowIntensity, float shadowBias, float shadowRadius, vec4 shadowCoord ) {\n\t\t\tfloat shadow = 1.0;\n\t\t\tshadowCoord.xyz /= shadowCoord.w;\n\t\t\t#ifdef USE_REVERSED_DEPTH_BUFFER\n\t\t\t\tshadowCoord.z -= shadowBias;\n\t\t\t#else\n\t\t\t\tshadowCoord.z += shadowBias;\n\t\t\t#endif\n\t\t\tbool inFrustum = shadowCoord.x >= 0.0 && shadowCoord.x <= 1.0 && shadowCoord.y >= 0.0 && shadowCoord.y <= 1.0;\n\t\t\tbool frustumTest = inFrustum && shadowCoord.z <= 1.0;\n\t\t\tif ( frustumTest ) {\n\t\t\t\tvec2 distribution = texture2D( shadowMap, shadowCoord.xy ).rg;\n\t\t\t\tfloat mean = distribution.x;\n\t\t\t\tfloat variance = distribution.y * distribution.y;\n\t\t\t\t#ifdef USE_REVERSED_DEPTH_BUFFER\n\t\t\t\t\tfloat hard_shadow = step( mean, shadowCoord.z );\n\t\t\t\t#else\n\t\t\t\t\tfloat hard_shadow = step( shadowCoord.z, mean );\n\t\t\t\t#endif\n\t\t\t\t\n\t\t\t\tif ( hard_shadow == 1.0 ) {\n\t\t\t\t\tshadow = 1.0;\n\t\t\t\t} else {\n\t\t\t\t\tvariance = max( variance, 0.0000001 );\n\t\t\t\t\tfloat d = shadowCoord.z - mean;\n\t\t\t\t\tfloat p_max = variance / ( variance + d * d );\n\t\t\t\t\tp_max = clamp( ( p_max - 0.3 ) / 0.65, 0.0, 1.0 );\n\t\t\t\t\tshadow = max( hard_shadow, p_max );\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn mix( 1.0, shadow, shadowIntensity );\n\t\t}\n\t#else\n\t\tfloat getShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowIntensity, float shadowBias, float shadowRadius, vec4 shadowCoord ) {\n\t\t\tfloat shadow = 1.0;\n\t\t\tshadowCoord.xyz /= shadowCoord.w;\n\t\t\t#ifdef USE_REVERSED_DEPTH_BUFFER\n\t\t\t\tshadowCoord.z -= shadowBias;\n\t\t\t#else\n\t\t\t\tshadowCoord.z += shadowBias;\n\t\t\t#endif\n\t\t\tbool inFrustum = shadowCoord.x >= 0.0 && shadowCoord.x <= 1.0 && shadowCoord.y >= 0.0 && shadowCoord.y <= 1.0;\n\t\t\tbool frustumTest = inFrustum && shadowCoord.z <= 1.0;\n\t\t\tif ( frustumTest ) {\n\t\t\t\tfloat depth = texture2D( shadowMap, shadowCoord.xy ).r;\n\t\t\t\t#ifdef USE_REVERSED_DEPTH_BUFFER\n\t\t\t\t\tshadow = step( depth, shadowCoord.z );\n\t\t\t\t#else\n\t\t\t\t\tshadow = step( shadowCoord.z, depth );\n\t\t\t\t#endif\n\t\t\t}\n\t\t\treturn mix( 1.0, shadow, shadowIntensity );\n\t\t}\n\t#endif\n\t#if NUM_POINT_LIGHT_SHADOWS > 0\n\t#if defined( SHADOWMAP_TYPE_PCF )\n\tfloat getPointShadow( samplerCubeShadow shadowMap, vec2 shadowMapSize, float shadowIntensity, float shadowBias, float shadowRadius, vec4 shadowCoord, float shadowCameraNear, float shadowCameraFar ) {\n\t\tfloat shadow = 1.0;\n\t\tvec3 lightToPosition = shadowCoord.xyz;\n\t\tvec3 bd3D = normalize( lightToPosition );\n\t\tvec3 absVec = abs( lightToPosition );\n\t\tfloat viewSpaceZ = max( max( absVec.x, absVec.y ), absVec.z );\n\t\tif ( viewSpaceZ - shadowCameraFar <= 0.0 && viewSpaceZ - shadowCameraNear >= 0.0 ) {\n\t\t\t#ifdef USE_REVERSED_DEPTH_BUFFER\n\t\t\t\tfloat dp = ( shadowCameraNear * ( shadowCameraFar - viewSpaceZ ) ) / ( viewSpaceZ * ( shadowCameraFar - shadowCameraNear ) );\n\t\t\t\tdp -= shadowBias;\n\t\t\t#else\n\t\t\t\tfloat dp = ( shadowCameraFar * ( viewSpaceZ - shadowCameraNear ) ) / ( viewSpaceZ * ( shadowCameraFar - shadowCameraNear ) );\n\t\t\t\tdp += shadowBias;\n\t\t\t#endif\n\t\t\tfloat texelSize = shadowRadius / shadowMapSize.x;\n\t\t\tvec3 absDir = abs( bd3D );\n\t\t\tvec3 tangent = absDir.x > absDir.z ? vec3( 0.0, 1.0, 0.0 ) : vec3( 1.0, 0.0, 0.0 );\n\t\t\ttangent = normalize( cross( bd3D, tangent ) );\n\t\t\tvec3 bitangent = cross( bd3D, tangent );\n\t\t\tfloat phi = interleavedGradientNoise( gl_FragCoord.xy ) * PI2;\n\t\t\tvec2 sample0 = vogelDiskSample( 0, 5, phi );\n\t\t\tvec2 sample1 = vogelDiskSample( 1, 5, phi );\n\t\t\tvec2 sample2 = vogelDiskSample( 2, 5, phi );\n\t\t\tvec2 sample3 = vogelDiskSample( 3, 5, phi );\n\t\t\tvec2 sample4 = vogelDiskSample( 4, 5, phi );\n\t\t\tshadow = (\n\t\t\t\ttexture( shadowMap, vec4( bd3D + ( tangent * sample0.x + bitangent * sample0.y ) * texelSize, dp ) ) +\n\t\t\t\ttexture( shadowMap, vec4( bd3D + ( tangent * sample1.x + bitangent * sample1.y ) * texelSize, dp ) ) +\n\t\t\t\ttexture( shadowMap, vec4( bd3D + ( tangent * sample2.x + bitangent * sample2.y ) * texelSize, dp ) ) +\n\t\t\t\ttexture( shadowMap, vec4( bd3D + ( tangent * sample3.x + bitangent * sample3.y ) * texelSize, dp ) ) +\n\t\t\t\ttexture( shadowMap, vec4( bd3D + ( tangent * sample4.x + bitangent * sample4.y ) * texelSize, dp ) )\n\t\t\t) * 0.2;\n\t\t}\n\t\treturn mix( 1.0, shadow, shadowIntensity );\n\t}\n\t#elif defined( SHADOWMAP_TYPE_BASIC )\n\tfloat getPointShadow( samplerCube shadowMap, vec2 shadowMapSize, float shadowIntensity, float shadowBias, float shadowRadius, vec4 shadowCoord, float shadowCameraNear, float shadowCameraFar ) {\n\t\tfloat shadow = 1.0;\n\t\tvec3 lightToPosition = shadowCoord.xyz;\n\t\tvec3 absVec = abs( lightToPosition );\n\t\tfloat viewSpaceZ = max( max( absVec.x, absVec.y ), absVec.z );\n\t\tif ( viewSpaceZ - shadowCameraFar <= 0.0 && viewSpaceZ - shadowCameraNear >= 0.0 ) {\n\t\t\tfloat dp = ( shadowCameraFar * ( viewSpaceZ - shadowCameraNear ) ) / ( viewSpaceZ * ( shadowCameraFar - shadowCameraNear ) );\n\t\t\tdp += shadowBias;\n\t\t\tvec3 bd3D = normalize( lightToPosition );\n\t\t\tfloat depth = textureCube( shadowMap, bd3D ).r;\n\t\t\t#ifdef USE_REVERSED_DEPTH_BUFFER\n\t\t\t\tdepth = 1.0 - depth;\n\t\t\t#endif\n\t\t\tshadow = step( dp, depth );\n\t\t}\n\t\treturn mix( 1.0, shadow, shadowIntensity );\n\t}\n\t#endif\n\t#endif\n#endif`,cl=`#if NUM_SPOT_LIGHT_COORDS > 0\n\tuniform mat4 spotLightMatrix[ NUM_SPOT_LIGHT_COORDS ];\n\tvarying vec4 vSpotLightCoord[ NUM_SPOT_LIGHT_COORDS ];\n#endif\n#ifdef USE_SHADOWMAP\n\t#if NUM_DIR_LIGHT_SHADOWS > 0\n\t\tuniform mat4 directionalShadowMatrix[ NUM_DIR_LIGHT_SHADOWS ];\n\t\tvarying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHT_SHADOWS ];\n\t\tstruct DirectionalLightShadow {\n\t\t\tfloat shadowIntensity;\n\t\t\tfloat shadowBias;\n\t\t\tfloat shadowNormalBias;\n\t\t\tfloat shadowRadius;\n\t\t\tvec2 shadowMapSize;\n\t\t};\n\t\tuniform DirectionalLightShadow directionalLightShadows[ NUM_DIR_LIGHT_SHADOWS ];\n\t#endif\n\t#if NUM_SPOT_LIGHT_SHADOWS > 0\n\t\tstruct SpotLightShadow {\n\t\t\tfloat shadowIntensity;\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 shadowIntensity;\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`,fl=`#if ( defined( USE_SHADOWMAP ) && ( NUM_DIR_LIGHT_SHADOWS > 0 || NUM_POINT_LIGHT_SHADOWS > 0 ) ) || ( NUM_SPOT_LIGHT_COORDS > 0 )\n\tvec3 shadowWorldNormal = inverseTransformDirection( transformedNormal, viewMatrix );\n\tvec4 shadowWorldPosition;\n#endif\n#if defined( USE_SHADOWMAP )\n\t#if NUM_DIR_LIGHT_SHADOWS > 0\n\t\t#pragma unroll_loop_start\n\t\tfor ( int i = 0; i < NUM_DIR_LIGHT_SHADOWS; i ++ ) {\n\t\t\tshadowWorldPosition = worldPosition + vec4( shadowWorldNormal * directionalLightShadows[ i ].shadowNormalBias, 0 );\n\t\t\tvDirectionalShadowCoord[ i ] = directionalShadowMatrix[ i ] * shadowWorldPosition;\n\t\t}\n\t\t#pragma unroll_loop_end\n\t#endif\n\t#if NUM_POINT_LIGHT_SHADOWS > 0\n\t\t#pragma unroll_loop_start\n\t\tfor ( int i = 0; i < NUM_POINT_LIGHT_SHADOWS; i ++ ) {\n\t\t\tshadowWorldPosition = worldPosition + vec4( shadowWorldNormal * pointLightShadows[ i ].shadowNormalBias, 0 );\n\t\t\tvPointShadowCoord[ i ] = pointShadowMatrix[ i ] * shadowWorldPosition;\n\t\t}\n\t\t#pragma unroll_loop_end\n\t#endif\n#endif\n#if NUM_SPOT_LIGHT_COORDS > 0\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_SPOT_LIGHT_COORDS; i ++ ) {\n\t\tshadowWorldPosition = worldPosition;\n\t\t#if ( defined( USE_SHADOWMAP ) && UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS )\n\t\t\tshadowWorldPosition.xyz += shadowWorldNormal * spotLightShadows[ i ].shadowNormalBias;\n\t\t#endif\n\t\tvSpotLightCoord[ i ] = spotLightMatrix[ i ] * shadowWorldPosition;\n\t}\n\t#pragma unroll_loop_end\n#endif`,dl=`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.shadowIntensity, 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.shadowIntensity, spotLight.shadowBias, spotLight.shadowRadius, vSpotLightCoord[ i ] ) : 1.0;\n\t}\n\t#pragma unroll_loop_end\n\t#endif\n\t#if NUM_POINT_LIGHT_SHADOWS > 0 && ( defined( SHADOWMAP_TYPE_PCF ) || defined( SHADOWMAP_TYPE_BASIC ) )\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.shadowIntensity, 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}`,ul=`#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`,pl=`#ifdef USE_SKINNING\n\tuniform mat4 bindMatrix;\n\tuniform mat4 bindMatrixInverse;\n\tuniform highp sampler2D boneTexture;\n\tmat4 getBoneMatrix( const in float i ) {\n\t\tint size = textureSize( boneTexture, 0 ).x;\n\t\tint j = int( i ) * 4;\n\t\tint x = j % size;\n\t\tint y = j / size;\n\t\tvec4 v1 = texelFetch( boneTexture, ivec2( x, y ), 0 );\n\t\tvec4 v2 = texelFetch( boneTexture, ivec2( x + 1, y ), 0 );\n\t\tvec4 v3 = texelFetch( boneTexture, ivec2( x + 2, y ), 0 );\n\t\tvec4 v4 = texelFetch( boneTexture, ivec2( x + 3, y ), 0 );\n\t\treturn mat4( v1, v2, v3, v4 );\n\t}\n#endif`,hl=`#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`,ml=`#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`,_l=`float specularStrength;\n#ifdef USE_SPECULARMAP\n\tvec4 texelSpecular = texture2D( specularMap, vSpecularMapUv );\n\tspecularStrength = texelSpecular.r;\n#else\n\tspecularStrength = 1.0;\n#endif`,gl=`#ifdef USE_SPECULARMAP\n\tuniform sampler2D specularMap;\n#endif`,vl=`#if defined( TONE_MAPPING )\n\tgl_FragColor.rgb = toneMapping( gl_FragColor.rgb );\n#endif`,Sl=`#ifndef saturate\n#define saturate( a ) clamp( a, 0.0, 1.0 )\n#endif\nuniform float toneMappingExposure;\nvec3 LinearToneMapping( vec3 color ) {\n\treturn saturate( toneMappingExposure * color );\n}\nvec3 ReinhardToneMapping( vec3 color ) {\n\tcolor *= toneMappingExposure;\n\treturn saturate( color / ( vec3( 1.0 ) + color ) );\n}\nvec3 CineonToneMapping( vec3 color ) {\n\tcolor *= toneMappingExposure;\n\tcolor = max( vec3( 0.0 ), color - 0.004 );\n\treturn pow( ( color * ( 6.2 * color + 0.5 ) ) / ( color * ( 6.2 * color + 1.7 ) + 0.06 ), vec3( 2.2 ) );\n}\nvec3 RRTAndODTFit( vec3 v ) {\n\tvec3 a = v * ( v + 0.0245786 ) - 0.000090537;\n\tvec3 b = v * ( 0.983729 * v + 0.4329510 ) + 0.238081;\n\treturn a / b;\n}\nvec3 ACESFilmicToneMapping( vec3 color ) {\n\tconst mat3 ACESInputMat = mat3(\n\t\tvec3( 0.59719, 0.07600, 0.02840 ),\t\tvec3( 0.35458, 0.90834, 0.13383 ),\n\t\tvec3( 0.04823, 0.01566, 0.83777 )\n\t);\n\tconst mat3 ACESOutputMat = mat3(\n\t\tvec3(  1.60475, -0.10208, -0.00327 ),\t\tvec3( -0.53108,  1.10813, -0.07276 ),\n\t\tvec3( -0.07367, -0.00605,  1.07602 )\n\t);\n\tcolor *= toneMappingExposure / 0.6;\n\tcolor = ACESInputMat * color;\n\tcolor = RRTAndODTFit( color );\n\tcolor = ACESOutputMat * color;\n\treturn saturate( color );\n}\nconst mat3 LINEAR_REC2020_TO_LINEAR_SRGB = mat3(\n\tvec3( 1.6605, - 0.1246, - 0.0182 ),\n\tvec3( - 0.5876, 1.1329, - 0.1006 ),\n\tvec3( - 0.0728, - 0.0083, 1.1187 )\n);\nconst mat3 LINEAR_SRGB_TO_LINEAR_REC2020 = mat3(\n\tvec3( 0.6274, 0.0691, 0.0164 ),\n\tvec3( 0.3293, 0.9195, 0.0880 ),\n\tvec3( 0.0433, 0.0113, 0.8956 )\n);\nvec3 agxDefaultContrastApprox( vec3 x ) {\n\tvec3 x2 = x * x;\n\tvec3 x4 = x2 * x2;\n\treturn + 15.5 * x4 * x2\n\t\t- 40.14 * x4 * x\n\t\t+ 31.96 * x4\n\t\t- 6.868 * x2 * x\n\t\t+ 0.4298 * x2\n\t\t+ 0.1191 * x\n\t\t- 0.00232;\n}\nvec3 AgXToneMapping( vec3 color ) {\n\tconst mat3 AgXInsetMatrix = mat3(\n\t\tvec3( 0.856627153315983, 0.137318972929847, 0.11189821299995 ),\n\t\tvec3( 0.0951212405381588, 0.761241990602591, 0.0767994186031903 ),\n\t\tvec3( 0.0482516061458583, 0.101439036467562, 0.811302368396859 )\n\t);\n\tconst mat3 AgXOutsetMatrix = mat3(\n\t\tvec3( 1.1271005818144368, - 0.1413297634984383, - 0.14132976349843826 ),\n\t\tvec3( - 0.11060664309660323, 1.157823702216272, - 0.11060664309660294 ),\n\t\tvec3( - 0.016493938717834573, - 0.016493938717834257, 1.2519364065950405 )\n\t);\n\tconst float AgxMinEv = - 12.47393;\tconst float AgxMaxEv = 4.026069;\n\tcolor *= toneMappingExposure;\n\tcolor = LINEAR_SRGB_TO_LINEAR_REC2020 * color;\n\tcolor = AgXInsetMatrix * color;\n\tcolor = max( color, 1e-10 );\tcolor = log2( color );\n\tcolor = ( color - AgxMinEv ) / ( AgxMaxEv - AgxMinEv );\n\tcolor = clamp( color, 0.0, 1.0 );\n\tcolor = agxDefaultContrastApprox( color );\n\tcolor = AgXOutsetMatrix * color;\n\tcolor = pow( max( vec3( 0.0 ), color ), vec3( 2.2 ) );\n\tcolor = LINEAR_REC2020_TO_LINEAR_SRGB * color;\n\tcolor = clamp( color, 0.0, 1.0 );\n\treturn color;\n}\nvec3 NeutralToneMapping( vec3 color ) {\n\tconst float StartCompression = 0.8 - 0.04;\n\tconst float Desaturation = 0.15;\n\tcolor *= toneMappingExposure;\n\tfloat x = min( color.r, min( color.g, color.b ) );\n\tfloat offset = x < 0.08 ? x - 6.25 * x * x : 0.04;\n\tcolor -= offset;\n\tfloat peak = max( color.r, max( color.g, color.b ) );\n\tif ( peak < StartCompression ) return color;\n\tfloat d = 1. - StartCompression;\n\tfloat newPeak = 1. - d * d / ( peak + d - StartCompression );\n\tcolor *= newPeak / peak;\n\tfloat g = 1. - 1. / ( Desaturation * ( peak - newPeak ) + 1. );\n\treturn mix( color, vec3( newPeak ), g );\n}\nvec3 CustomToneMapping( vec3 color ) { return color; }`,El=`#ifdef USE_TRANSMISSION\n\tmaterial.transmission = transmission;\n\tmaterial.transmissionAlpha = 1.0;\n\tmaterial.thickness = thickness;\n\tmaterial.attenuationDistance = attenuationDistance;\n\tmaterial.attenuationColor = attenuationColor;\n\t#ifdef USE_TRANSMISSIONMAP\n\t\tmaterial.transmission *= texture2D( transmissionMap, vTransmissionMapUv ).r;\n\t#endif\n\t#ifdef USE_THICKNESSMAP\n\t\tmaterial.thickness *= texture2D( thicknessMap, vThicknessMapUv ).g;\n\t#endif\n\tvec3 pos = vWorldPosition;\n\tvec3 v = normalize( cameraPosition - pos );\n\tvec3 n = inverseTransformDirection( normal, viewMatrix );\n\tvec4 transmitted = getIBLVolumeRefraction(\n\t\tn, v, material.roughness, material.diffuseContribution, material.specularColorBlended, material.specularF90,\n\t\tpos, modelMatrix, viewMatrix, projectionMatrix, material.dispersion, material.ior, material.thickness,\n\t\tmaterial.attenuationColor, material.attenuationDistance );\n\tmaterial.transmissionAlpha = mix( material.transmissionAlpha, transmitted.a, material.transmission );\n\ttotalDiffuse = mix( totalDiffuse, transmitted.rgb, material.transmission );\n#endif`,xl=`#ifdef USE_TRANSMISSION\n\tuniform float transmission;\n\tuniform float thickness;\n\tuniform float attenuationDistance;\n\tuniform vec3 attenuationColor;\n\t#ifdef USE_TRANSMISSIONMAP\n\t\tuniform sampler2D transmissionMap;\n\t#endif\n\t#ifdef USE_THICKNESSMAP\n\t\tuniform sampler2D thicknessMap;\n\t#endif\n\tuniform vec2 transmissionSamplerSize;\n\tuniform sampler2D transmissionSamplerMap;\n\tuniform mat4 modelMatrix;\n\tuniform mat4 projectionMatrix;\n\tvarying vec3 vWorldPosition;\n\tfloat w0( float a ) {\n\t\treturn ( 1.0 / 6.0 ) * ( a * ( a * ( - a + 3.0 ) - 3.0 ) + 1.0 );\n\t}\n\tfloat w1( float a ) {\n\t\treturn ( 1.0 / 6.0 ) * ( a *  a * ( 3.0 * a - 6.0 ) + 4.0 );\n\t}\n\tfloat w2( float a ){\n\t\treturn ( 1.0 / 6.0 ) * ( a * ( a * ( - 3.0 * a + 3.0 ) + 3.0 ) + 1.0 );\n\t}\n\tfloat w3( float a ) {\n\t\treturn ( 1.0 / 6.0 ) * ( a * a * a );\n\t}\n\tfloat g0( float a ) {\n\t\treturn w0( a ) + w1( a );\n\t}\n\tfloat g1( float a ) {\n\t\treturn w2( a ) + w3( a );\n\t}\n\tfloat h0( float a ) {\n\t\treturn - 1.0 + w1( a ) / ( w0( a ) + w1( a ) );\n\t}\n\tfloat h1( float a ) {\n\t\treturn 1.0 + w3( a ) / ( w2( a ) + w3( a ) );\n\t}\n\tvec4 bicubic( sampler2D tex, vec2 uv, vec4 texelSize, float lod ) {\n\t\tuv = uv * texelSize.zw + 0.5;\n\t\tvec2 iuv = floor( uv );\n\t\tvec2 fuv = fract( uv );\n\t\tfloat g0x = g0( fuv.x );\n\t\tfloat g1x = g1( fuv.x );\n\t\tfloat h0x = h0( fuv.x );\n\t\tfloat h1x = h1( fuv.x );\n\t\tfloat h0y = h0( fuv.y );\n\t\tfloat h1y = h1( fuv.y );\n\t\tvec2 p0 = ( vec2( iuv.x + h0x, iuv.y + h0y ) - 0.5 ) * texelSize.xy;\n\t\tvec2 p1 = ( vec2( iuv.x + h1x, iuv.y + h0y ) - 0.5 ) * texelSize.xy;\n\t\tvec2 p2 = ( vec2( iuv.x + h0x, iuv.y + h1y ) - 0.5 ) * texelSize.xy;\n\t\tvec2 p3 = ( vec2( iuv.x + h1x, iuv.y + h1y ) - 0.5 ) * texelSize.xy;\n\t\treturn g0( fuv.y ) * ( g0x * textureLod( tex, p0, lod ) + g1x * textureLod( tex, p1, lod ) ) +\n\t\t\tg1( fuv.y ) * ( g0x * textureLod( tex, p2, lod ) + g1x * textureLod( tex, p3, lod ) );\n\t}\n\tvec4 textureBicubic( sampler2D sampler, vec2 uv, float lod ) {\n\t\tvec2 fLodSize = vec2( textureSize( sampler, int( lod ) ) );\n\t\tvec2 cLodSize = vec2( textureSize( sampler, int( lod + 1.0 ) ) );\n\t\tvec2 fLodSizeInv = 1.0 / fLodSize;\n\t\tvec2 cLodSizeInv = 1.0 / cLodSize;\n\t\tvec4 fSample = bicubic( sampler, uv, vec4( fLodSizeInv, fLodSize ), floor( lod ) );\n\t\tvec4 cSample = bicubic( sampler, uv, vec4( cLodSizeInv, cLodSize ), ceil( lod ) );\n\t\treturn mix( fSample, cSample, fract( lod ) );\n\t}\n\tvec3 getVolumeTransmissionRay( const in vec3 n, const in vec3 v, const in float thickness, const in float ior, const in mat4 modelMatrix ) {\n\t\tvec3 refractionVector = refract( - v, normalize( n ), 1.0 / ior );\n\t\tvec3 modelScale;\n\t\tmodelScale.x = length( vec3( modelMatrix[ 0 ].xyz ) );\n\t\tmodelScale.y = length( vec3( modelMatrix[ 1 ].xyz ) );\n\t\tmodelScale.z = length( vec3( modelMatrix[ 2 ].xyz ) );\n\t\treturn normalize( refractionVector ) * thickness * modelScale;\n\t}\n\tfloat applyIorToRoughness( const in float roughness, const in float ior ) {\n\t\treturn roughness * clamp( ior * 2.0 - 2.0, 0.0, 1.0 );\n\t}\n\tvec4 getTransmissionSample( const in vec2 fragCoord, const in float roughness, const in float ior ) {\n\t\tfloat lod = log2( transmissionSamplerSize.x ) * applyIorToRoughness( roughness, ior );\n\t\treturn textureBicubic( transmissionSamplerMap, fragCoord.xy, lod );\n\t}\n\tvec3 volumeAttenuation( const in float transmissionDistance, const in vec3 attenuationColor, const in float attenuationDistance ) {\n\t\tif ( isinf( attenuationDistance ) ) {\n\t\t\treturn vec3( 1.0 );\n\t\t} else {\n\t\t\tvec3 attenuationCoefficient = -log( attenuationColor ) / attenuationDistance;\n\t\t\tvec3 transmittance = exp( - attenuationCoefficient * transmissionDistance );\t\t\treturn transmittance;\n\t\t}\n\t}\n\tvec4 getIBLVolumeRefraction( const in vec3 n, const in vec3 v, const in float roughness, const in vec3 diffuseColor,\n\t\tconst in vec3 specularColor, const in float specularF90, const in vec3 position, const in mat4 modelMatrix,\n\t\tconst in mat4 viewMatrix, const in mat4 projMatrix, const in float dispersion, const in float ior, const in float thickness,\n\t\tconst in vec3 attenuationColor, const in float attenuationDistance ) {\n\t\tvec4 transmittedLight;\n\t\tvec3 transmittance;\n\t\t#ifdef USE_DISPERSION\n\t\t\tfloat halfSpread = ( ior - 1.0 ) * 0.025 * dispersion;\n\t\t\tvec3 iors = vec3( ior - halfSpread, ior, ior + halfSpread );\n\t\t\tfor ( int i = 0; i < 3; i ++ ) {\n\t\t\t\tvec3 transmissionRay = getVolumeTransmissionRay( n, v, thickness, iors[ i ], modelMatrix );\n\t\t\t\tvec3 refractedRayExit = position + transmissionRay;\n\t\t\t\tvec4 ndcPos = projMatrix * viewMatrix * vec4( refractedRayExit, 1.0 );\n\t\t\t\tvec2 refractionCoords = ndcPos.xy / ndcPos.w;\n\t\t\t\trefractionCoords += 1.0;\n\t\t\t\trefractionCoords /= 2.0;\n\t\t\t\tvec4 transmissionSample = getTransmissionSample( refractionCoords, roughness, iors[ i ] );\n\t\t\t\ttransmittedLight[ i ] = transmissionSample[ i ];\n\t\t\t\ttransmittedLight.a += transmissionSample.a;\n\t\t\t\ttransmittance[ i ] = diffuseColor[ i ] * volumeAttenuation( length( transmissionRay ), attenuationColor, attenuationDistance )[ i ];\n\t\t\t}\n\t\t\ttransmittedLight.a /= 3.0;\n\t\t#else\n\t\t\tvec3 transmissionRay = getVolumeTransmissionRay( n, v, thickness, ior, modelMatrix );\n\t\t\tvec3 refractedRayExit = position + transmissionRay;\n\t\t\tvec4 ndcPos = projMatrix * viewMatrix * vec4( refractedRayExit, 1.0 );\n\t\t\tvec2 refractionCoords = ndcPos.xy / ndcPos.w;\n\t\t\trefractionCoords += 1.0;\n\t\t\trefractionCoords /= 2.0;\n\t\t\ttransmittedLight = getTransmissionSample( refractionCoords, roughness, ior );\n\t\t\ttransmittance = diffuseColor * volumeAttenuation( length( transmissionRay ), attenuationColor, attenuationDistance );\n\t\t#endif\n\t\tvec3 attenuatedColor = transmittance * transmittedLight.rgb;\n\t\tvec3 F = EnvironmentBRDF( n, v, specularColor, specularF90, roughness );\n\t\tfloat transmittanceFactor = ( transmittance.r + transmittance.g + transmittance.b ) / 3.0;\n\t\treturn vec4( ( 1.0 - F ) * attenuatedColor, 1.0 - ( 1.0 - transmittedLight.a ) * transmittanceFactor );\n\t}\n#endif`,Ml=`#if defined( USE_UV ) || defined( USE_ANISOTROPY )\n\tvarying vec2 vUv;\n#endif\n#ifdef USE_MAP\n\tvarying vec2 vMapUv;\n#endif\n#ifdef USE_ALPHAMAP\n\tvarying vec2 vAlphaMapUv;\n#endif\n#ifdef USE_LIGHTMAP\n\tvarying vec2 vLightMapUv;\n#endif\n#ifdef USE_AOMAP\n\tvarying vec2 vAoMapUv;\n#endif\n#ifdef USE_BUMPMAP\n\tvarying vec2 vBumpMapUv;\n#endif\n#ifdef USE_NORMALMAP\n\tvarying vec2 vNormalMapUv;\n#endif\n#ifdef USE_EMISSIVEMAP\n\tvarying vec2 vEmissiveMapUv;\n#endif\n#ifdef USE_METALNESSMAP\n\tvarying vec2 vMetalnessMapUv;\n#endif\n#ifdef USE_ROUGHNESSMAP\n\tvarying vec2 vRoughnessMapUv;\n#endif\n#ifdef USE_ANISOTROPYMAP\n\tvarying vec2 vAnisotropyMapUv;\n#endif\n#ifdef USE_CLEARCOATMAP\n\tvarying vec2 vClearcoatMapUv;\n#endif\n#ifdef USE_CLEARCOAT_NORMALMAP\n\tvarying vec2 vClearcoatNormalMapUv;\n#endif\n#ifdef USE_CLEARCOAT_ROUGHNESSMAP\n\tvarying vec2 vClearcoatRoughnessMapUv;\n#endif\n#ifdef USE_IRIDESCENCEMAP\n\tvarying vec2 vIridescenceMapUv;\n#endif\n#ifdef USE_IRIDESCENCE_THICKNESSMAP\n\tvarying vec2 vIridescenceThicknessMapUv;\n#endif\n#ifdef USE_SHEEN_COLORMAP\n\tvarying vec2 vSheenColorMapUv;\n#endif\n#ifdef USE_SHEEN_ROUGHNESSMAP\n\tvarying vec2 vSheenRoughnessMapUv;\n#endif\n#ifdef USE_SPECULARMAP\n\tvarying vec2 vSpecularMapUv;\n#endif\n#ifdef USE_SPECULAR_COLORMAP\n\tvarying vec2 vSpecularColorMapUv;\n#endif\n#ifdef USE_SPECULAR_INTENSITYMAP\n\tvarying vec2 vSpecularIntensityMapUv;\n#endif\n#ifdef USE_TRANSMISSIONMAP\n\tuniform mat3 transmissionMapTransform;\n\tvarying vec2 vTransmissionMapUv;\n#endif\n#ifdef USE_THICKNESSMAP\n\tuniform mat3 thicknessMapTransform;\n\tvarying vec2 vThicknessMapUv;\n#endif`,Tl=`#if defined( USE_UV ) || defined( USE_ANISOTROPY )\n\tvarying vec2 vUv;\n#endif\n#ifdef USE_MAP\n\tuniform mat3 mapTransform;\n\tvarying vec2 vMapUv;\n#endif\n#ifdef USE_ALPHAMAP\n\tuniform mat3 alphaMapTransform;\n\tvarying vec2 vAlphaMapUv;\n#endif\n#ifdef USE_LIGHTMAP\n\tuniform mat3 lightMapTransform;\n\tvarying vec2 vLightMapUv;\n#endif\n#ifdef USE_AOMAP\n\tuniform mat3 aoMapTransform;\n\tvarying vec2 vAoMapUv;\n#endif\n#ifdef USE_BUMPMAP\n\tuniform mat3 bumpMapTransform;\n\tvarying vec2 vBumpMapUv;\n#endif\n#ifdef USE_NORMALMAP\n\tuniform mat3 normalMapTransform;\n\tvarying vec2 vNormalMapUv;\n#endif\n#ifdef USE_DISPLACEMENTMAP\n\tuniform mat3 displacementMapTransform;\n\tvarying vec2 vDisplacementMapUv;\n#endif\n#ifdef USE_EMISSIVEMAP\n\tuniform mat3 emissiveMapTransform;\n\tvarying vec2 vEmissiveMapUv;\n#endif\n#ifdef USE_METALNESSMAP\n\tuniform mat3 metalnessMapTransform;\n\tvarying vec2 vMetalnessMapUv;\n#endif\n#ifdef USE_ROUGHNESSMAP\n\tuniform mat3 roughnessMapTransform;\n\tvarying vec2 vRoughnessMapUv;\n#endif\n#ifdef USE_ANISOTROPYMAP\n\tuniform mat3 anisotropyMapTransform;\n\tvarying vec2 vAnisotropyMapUv;\n#endif\n#ifdef USE_CLEARCOATMAP\n\tuniform mat3 clearcoatMapTransform;\n\tvarying vec2 vClearcoatMapUv;\n#endif\n#ifdef USE_CLEARCOAT_NORMALMAP\n\tuniform mat3 clearcoatNormalMapTransform;\n\tvarying vec2 vClearcoatNormalMapUv;\n#endif\n#ifdef USE_CLEARCOAT_ROUGHNESSMAP\n\tuniform mat3 clearcoatRoughnessMapTransform;\n\tvarying vec2 vClearcoatRoughnessMapUv;\n#endif\n#ifdef USE_SHEEN_COLORMAP\n\tuniform mat3 sheenColorMapTransform;\n\tvarying vec2 vSheenColorMapUv;\n#endif\n#ifdef USE_SHEEN_ROUGHNESSMAP\n\tuniform mat3 sheenRoughnessMapTransform;\n\tvarying vec2 vSheenRoughnessMapUv;\n#endif\n#ifdef USE_IRIDESCENCEMAP\n\tuniform mat3 iridescenceMapTransform;\n\tvarying vec2 vIridescenceMapUv;\n#endif\n#ifdef USE_IRIDESCENCE_THICKNESSMAP\n\tuniform mat3 iridescenceThicknessMapTransform;\n\tvarying vec2 vIridescenceThicknessMapUv;\n#endif\n#ifdef USE_SPECULARMAP\n\tuniform mat3 specularMapTransform;\n\tvarying vec2 vSpecularMapUv;\n#endif\n#ifdef USE_SPECULAR_COLORMAP\n\tuniform mat3 specularColorMapTransform;\n\tvarying vec2 vSpecularColorMapUv;\n#endif\n#ifdef USE_SPECULAR_INTENSITYMAP\n\tuniform mat3 specularIntensityMapTransform;\n\tvarying vec2 vSpecularIntensityMapUv;\n#endif\n#ifdef USE_TRANSMISSIONMAP\n\tuniform mat3 transmissionMapTransform;\n\tvarying vec2 vTransmissionMapUv;\n#endif\n#ifdef USE_THICKNESSMAP\n\tuniform mat3 thicknessMapTransform;\n\tvarying vec2 vThicknessMapUv;\n#endif`,Al=`#if defined( USE_UV ) || defined( USE_ANISOTROPY )\n\tvUv = vec3( uv, 1 ).xy;\n#endif\n#ifdef USE_MAP\n\tvMapUv = ( mapTransform * vec3( MAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_ALPHAMAP\n\tvAlphaMapUv = ( alphaMapTransform * vec3( ALPHAMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_LIGHTMAP\n\tvLightMapUv = ( lightMapTransform * vec3( LIGHTMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_AOMAP\n\tvAoMapUv = ( aoMapTransform * vec3( AOMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_BUMPMAP\n\tvBumpMapUv = ( bumpMapTransform * vec3( BUMPMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_NORMALMAP\n\tvNormalMapUv = ( normalMapTransform * vec3( NORMALMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_DISPLACEMENTMAP\n\tvDisplacementMapUv = ( displacementMapTransform * vec3( DISPLACEMENTMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_EMISSIVEMAP\n\tvEmissiveMapUv = ( emissiveMapTransform * vec3( EMISSIVEMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_METALNESSMAP\n\tvMetalnessMapUv = ( metalnessMapTransform * vec3( METALNESSMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_ROUGHNESSMAP\n\tvRoughnessMapUv = ( roughnessMapTransform * vec3( ROUGHNESSMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_ANISOTROPYMAP\n\tvAnisotropyMapUv = ( anisotropyMapTransform * vec3( ANISOTROPYMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_CLEARCOATMAP\n\tvClearcoatMapUv = ( clearcoatMapTransform * vec3( CLEARCOATMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_CLEARCOAT_NORMALMAP\n\tvClearcoatNormalMapUv = ( clearcoatNormalMapTransform * vec3( CLEARCOAT_NORMALMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_CLEARCOAT_ROUGHNESSMAP\n\tvClearcoatRoughnessMapUv = ( clearcoatRoughnessMapTransform * vec3( CLEARCOAT_ROUGHNESSMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_IRIDESCENCEMAP\n\tvIridescenceMapUv = ( iridescenceMapTransform * vec3( IRIDESCENCEMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_IRIDESCENCE_THICKNESSMAP\n\tvIridescenceThicknessMapUv = ( iridescenceThicknessMapTransform * vec3( IRIDESCENCE_THICKNESSMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_SHEEN_COLORMAP\n\tvSheenColorMapUv = ( sheenColorMapTransform * vec3( SHEEN_COLORMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_SHEEN_ROUGHNESSMAP\n\tvSheenRoughnessMapUv = ( sheenRoughnessMapTransform * vec3( SHEEN_ROUGHNESSMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_SPECULARMAP\n\tvSpecularMapUv = ( specularMapTransform * vec3( SPECULARMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_SPECULAR_COLORMAP\n\tvSpecularColorMapUv = ( specularColorMapTransform * vec3( SPECULAR_COLORMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_SPECULAR_INTENSITYMAP\n\tvSpecularIntensityMapUv = ( specularIntensityMapTransform * vec3( SPECULAR_INTENSITYMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_TRANSMISSIONMAP\n\tvTransmissionMapUv = ( transmissionMapTransform * vec3( TRANSMISSIONMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_THICKNESSMAP\n\tvThicknessMapUv = ( thicknessMapTransform * vec3( THICKNESSMAP_UV, 1 ) ).xy;\n#endif`,Rl=`#if defined( USE_ENVMAP ) || defined( DISTANCE ) || defined ( USE_SHADOWMAP ) || defined ( USE_TRANSMISSION ) || NUM_SPOT_LIGHT_COORDS > 0\n\tvec4 worldPosition = vec4( transformed, 1.0 );\n\t#ifdef USE_BATCHING\n\t\tworldPosition = batchingMatrix * worldPosition;\n\t#endif\n\t#ifdef USE_INSTANCING\n\t\tworldPosition = instanceMatrix * worldPosition;\n\t#endif\n\tworldPosition = modelMatrix * worldPosition;\n#endif`,Cl=`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}`,bl=`uniform sampler2D t2D;\nuniform float backgroundIntensity;\nvarying vec2 vUv;\nvoid main() {\n\tvec4 texColor = texture2D( t2D, vUv );\n\t#ifdef DECODE_VIDEO_TEXTURE\n\t\ttexColor = vec4( mix( pow( texColor.rgb * 0.9478672986 + vec3( 0.0521327014 ), vec3( 2.4 ) ), texColor.rgb * 0.0773993808, vec3( lessThanEqual( texColor.rgb, vec3( 0.04045 ) ) ) ), texColor.w );\n\t#endif\n\ttexColor.rgb *= backgroundIntensity;\n\tgl_FragColor = texColor;\n\t#include <tonemapping_fragment>\n\t#include <colorspace_fragment>\n}`,Pl=`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}`,Ll=`#ifdef ENVMAP_TYPE_CUBE\n\tuniform samplerCube envMap;\n#elif defined( ENVMAP_TYPE_CUBE_UV )\n\tuniform sampler2D envMap;\n#endif\nuniform float flipEnvMap;\nuniform float backgroundBlurriness;\nuniform float backgroundIntensity;\nuniform mat3 backgroundRotation;\nvarying vec3 vWorldDirection;\n#include <cube_uv_reflection_fragment>\nvoid main() {\n\t#ifdef ENVMAP_TYPE_CUBE\n\t\tvec4 texColor = textureCube( envMap, backgroundRotation * vec3( flipEnvMap * vWorldDirection.x, vWorldDirection.yz ) );\n\t#elif defined( ENVMAP_TYPE_CUBE_UV )\n\t\tvec4 texColor = textureCubeUV( envMap, backgroundRotation * vWorldDirection, backgroundBlurriness );\n\t#else\n\t\tvec4 texColor = vec4( 0.0, 0.0, 0.0, 1.0 );\n\t#endif\n\ttexColor.rgb *= backgroundIntensity;\n\tgl_FragColor = texColor;\n\t#include <tonemapping_fragment>\n\t#include <colorspace_fragment>\n}`,Dl=`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}`,Ul=`uniform samplerCube tCube;\nuniform float tFlip;\nuniform float opacity;\nvarying vec3 vWorldDirection;\nvoid main() {\n\tvec4 texColor = textureCube( tCube, vec3( tFlip * vWorldDirection.x, vWorldDirection.yz ) );\n\tgl_FragColor = texColor;\n\tgl_FragColor.a *= opacity;\n\t#include <tonemapping_fragment>\n\t#include <colorspace_fragment>\n}`,wl=`#include <common>\n#include <batching_pars_vertex>\n#include <uv_pars_vertex>\n#include <displacementmap_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <skinning_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvarying vec2 vHighPrecisionZW;\nvoid main() {\n\t#include <uv_vertex>\n\t#include <batching_vertex>\n\t#include <skinbase_vertex>\n\t#include <morphinstance_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}`,Il=`#if DEPTH_PACKING == 3200\n\tuniform float opacity;\n#endif\n#include <common>\n#include <packing>\n#include <uv_pars_fragment>\n#include <map_pars_fragment>\n#include <alphamap_pars_fragment>\n#include <alphatest_pars_fragment>\n#include <alphahash_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvarying vec2 vHighPrecisionZW;\nvoid main() {\n\tvec4 diffuseColor = vec4( 1.0 );\n\t#include <clipping_planes_fragment>\n\t#if DEPTH_PACKING == 3200\n\t\tdiffuseColor.a = opacity;\n\t#endif\n\t#include <map_fragment>\n\t#include <alphamap_fragment>\n\t#include <alphatest_fragment>\n\t#include <alphahash_fragment>\n\t#include <logdepthbuf_fragment>\n\t#ifdef USE_REVERSED_DEPTH_BUFFER\n\t\tfloat fragCoordZ = vHighPrecisionZW[ 0 ] / vHighPrecisionZW[ 1 ];\n\t#else\n\t\tfloat fragCoordZ = 0.5 * vHighPrecisionZW[ 0 ] / vHighPrecisionZW[ 1 ] + 0.5;\n\t#endif\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#elif DEPTH_PACKING == 3202\n\t\tgl_FragColor = vec4( packDepthToRGB( fragCoordZ ), 1.0 );\n\t#elif DEPTH_PACKING == 3203\n\t\tgl_FragColor = vec4( packDepthToRG( fragCoordZ ), 0.0, 1.0 );\n\t#endif\n}`,Nl=`#define DISTANCE\nvarying vec3 vWorldPosition;\n#include <common>\n#include <batching_pars_vertex>\n#include <uv_pars_vertex>\n#include <displacementmap_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <skinning_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvoid main() {\n\t#include <uv_vertex>\n\t#include <batching_vertex>\n\t#include <skinbase_vertex>\n\t#include <morphinstance_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}`,yl=`#define DISTANCE\nuniform vec3 referencePosition;\nuniform float nearDistance;\nuniform float farDistance;\nvarying vec3 vWorldPosition;\n#include <common>\n#include <uv_pars_fragment>\n#include <map_pars_fragment>\n#include <alphamap_pars_fragment>\n#include <alphatest_pars_fragment>\n#include <alphahash_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvoid main () {\n\tvec4 diffuseColor = vec4( 1.0 );\n\t#include <clipping_planes_fragment>\n\t#include <map_fragment>\n\t#include <alphamap_fragment>\n\t#include <alphatest_fragment>\n\t#include <alphahash_fragment>\n\tfloat dist = length( vWorldPosition - referencePosition );\n\tdist = ( dist - nearDistance ) / ( farDistance - nearDistance );\n\tdist = saturate( dist );\n\tgl_FragColor = vec4( dist, 0.0, 0.0, 1.0 );\n}`,Fl=`varying vec3 vWorldDirection;\n#include <common>\nvoid main() {\n\tvWorldDirection = transformDirection( position, modelMatrix );\n\t#include <begin_vertex>\n\t#include <project_vertex>\n}`,Ol=`uniform sampler2D tEquirect;\nvarying vec3 vWorldDirection;\n#include <common>\nvoid main() {\n\tvec3 direction = normalize( vWorldDirection );\n\tvec2 sampleUV = equirectUv( direction );\n\tgl_FragColor = texture2D( tEquirect, sampleUV );\n\t#include <tonemapping_fragment>\n\t#include <colorspace_fragment>\n}`,Bl=`uniform float scale;\nattribute float lineDistance;\nvarying float vLineDistance;\n#include <common>\n#include <uv_pars_vertex>\n#include <color_pars_vertex>\n#include <fog_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvoid main() {\n\tvLineDistance = scale * lineDistance;\n\t#include <uv_vertex>\n\t#include <color_vertex>\n\t#include <morphinstance_vertex>\n\t#include <morphcolor_vertex>\n\t#include <begin_vertex>\n\t#include <morphtarget_vertex>\n\t#include <project_vertex>\n\t#include <logdepthbuf_vertex>\n\t#include <clipping_planes_vertex>\n\t#include <fog_vertex>\n}`,Gl=`uniform vec3 diffuse;\nuniform float opacity;\nuniform float dashSize;\nuniform float totalSize;\nvarying float vLineDistance;\n#include <common>\n#include <color_pars_fragment>\n#include <uv_pars_fragment>\n#include <map_pars_fragment>\n#include <fog_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvoid main() {\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include <clipping_planes_fragment>\n\tif ( mod( vLineDistance, totalSize ) > dashSize ) {\n\t\tdiscard;\n\t}\n\tvec3 outgoingLight = vec3( 0.0 );\n\t#include <logdepthbuf_fragment>\n\t#include <map_fragment>\n\t#include <color_fragment>\n\toutgoingLight = diffuseColor.rgb;\n\t#include <opaque_fragment>\n\t#include <tonemapping_fragment>\n\t#include <colorspace_fragment>\n\t#include <fog_fragment>\n\t#include <premultiplied_alpha_fragment>\n}`,Hl=`#include <common>\n#include <batching_pars_vertex>\n#include <uv_pars_vertex>\n#include <envmap_pars_vertex>\n#include <color_pars_vertex>\n#include <fog_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <skinning_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvoid main() {\n\t#include <uv_vertex>\n\t#include <color_vertex>\n\t#include <morphinstance_vertex>\n\t#include <morphcolor_vertex>\n\t#include <batching_vertex>\n\t#if defined ( USE_ENVMAP ) || defined ( USE_SKINNING )\n\t\t#include <beginnormal_vertex>\n\t\t#include <morphnormal_vertex>\n\t\t#include <skinbase_vertex>\n\t\t#include <skinnormal_vertex>\n\t\t#include <defaultnormal_vertex>\n\t#endif\n\t#include <begin_vertex>\n\t#include <morphtarget_vertex>\n\t#include <skinning_vertex>\n\t#include <project_vertex>\n\t#include <logdepthbuf_vertex>\n\t#include <clipping_planes_vertex>\n\t#include <worldpos_vertex>\n\t#include <envmap_vertex>\n\t#include <fog_vertex>\n}`,Vl=`uniform vec3 diffuse;\nuniform float opacity;\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n#endif\n#include <common>\n#include <dithering_pars_fragment>\n#include <color_pars_fragment>\n#include <uv_pars_fragment>\n#include <map_pars_fragment>\n#include <alphamap_pars_fragment>\n#include <alphatest_pars_fragment>\n#include <alphahash_pars_fragment>\n#include <aomap_pars_fragment>\n#include <lightmap_pars_fragment>\n#include <envmap_common_pars_fragment>\n#include <envmap_pars_fragment>\n#include <fog_pars_fragment>\n#include <specularmap_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvoid main() {\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include <clipping_planes_fragment>\n\t#include <logdepthbuf_fragment>\n\t#include <map_fragment>\n\t#include <color_fragment>\n\t#include <alphamap_fragment>\n\t#include <alphatest_fragment>\n\t#include <alphahash_fragment>\n\t#include <specularmap_fragment>\n\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n\t#ifdef USE_LIGHTMAP\n\t\tvec4 lightMapTexel = texture2D( lightMap, vLightMapUv );\n\t\treflectedLight.indirectDiffuse += lightMapTexel.rgb * lightMapIntensity * RECIPROCAL_PI;\n\t#else\n\t\treflectedLight.indirectDiffuse += vec3( 1.0 );\n\t#endif\n\t#include <aomap_fragment>\n\treflectedLight.indirectDiffuse *= diffuseColor.rgb;\n\tvec3 outgoingLight = reflectedLight.indirectDiffuse;\n\t#include <envmap_fragment>\n\t#include <opaque_fragment>\n\t#include <tonemapping_fragment>\n\t#include <colorspace_fragment>\n\t#include <fog_fragment>\n\t#include <premultiplied_alpha_fragment>\n\t#include <dithering_fragment>\n}`,kl=`#define LAMBERT\nvarying vec3 vViewPosition;\n#include <common>\n#include <batching_pars_vertex>\n#include <uv_pars_vertex>\n#include <displacementmap_pars_vertex>\n#include <envmap_pars_vertex>\n#include <color_pars_vertex>\n#include <fog_pars_vertex>\n#include <normal_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <skinning_pars_vertex>\n#include <shadowmap_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvoid main() {\n\t#include <uv_vertex>\n\t#include <color_vertex>\n\t#include <morphinstance_vertex>\n\t#include <morphcolor_vertex>\n\t#include <batching_vertex>\n\t#include <beginnormal_vertex>\n\t#include <morphnormal_vertex>\n\t#include <skinbase_vertex>\n\t#include <skinnormal_vertex>\n\t#include <defaultnormal_vertex>\n\t#include <normal_vertex>\n\t#include <begin_vertex>\n\t#include <morphtarget_vertex>\n\t#include <skinning_vertex>\n\t#include <displacementmap_vertex>\n\t#include <project_vertex>\n\t#include <logdepthbuf_vertex>\n\t#include <clipping_planes_vertex>\n\tvViewPosition = - mvPosition.xyz;\n\t#include <worldpos_vertex>\n\t#include <envmap_vertex>\n\t#include <shadowmap_vertex>\n\t#include <fog_vertex>\n}`,Wl=`#define LAMBERT\nuniform vec3 diffuse;\nuniform vec3 emissive;\nuniform float opacity;\n#include <common>\n#include <dithering_pars_fragment>\n#include <color_pars_fragment>\n#include <uv_pars_fragment>\n#include <map_pars_fragment>\n#include <alphamap_pars_fragment>\n#include <alphatest_pars_fragment>\n#include <alphahash_pars_fragment>\n#include <aomap_pars_fragment>\n#include <lightmap_pars_fragment>\n#include <emissivemap_pars_fragment>\n#include <cube_uv_reflection_fragment>\n#include <envmap_common_pars_fragment>\n#include <envmap_pars_fragment>\n#include <envmap_physical_pars_fragment>\n#include <fog_pars_fragment>\n#include <bsdfs>\n#include <lights_pars_begin>\n#include <normal_pars_fragment>\n#include <lights_lambert_pars_fragment>\n#include <shadowmap_pars_fragment>\n#include <bumpmap_pars_fragment>\n#include <normalmap_pars_fragment>\n#include <specularmap_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvoid main() {\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include <clipping_planes_fragment>\n\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n\tvec3 totalEmissiveRadiance = emissive;\n\t#include <logdepthbuf_fragment>\n\t#include <map_fragment>\n\t#include <color_fragment>\n\t#include <alphamap_fragment>\n\t#include <alphatest_fragment>\n\t#include <alphahash_fragment>\n\t#include <specularmap_fragment>\n\t#include <normal_fragment_begin>\n\t#include <normal_fragment_maps>\n\t#include <emissivemap_fragment>\n\t#include <lights_lambert_fragment>\n\t#include <lights_fragment_begin>\n\t#include <lights_fragment_maps>\n\t#include <lights_fragment_end>\n\t#include <aomap_fragment>\n\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + totalEmissiveRadiance;\n\t#include <envmap_fragment>\n\t#include <opaque_fragment>\n\t#include <tonemapping_fragment>\n\t#include <colorspace_fragment>\n\t#include <fog_fragment>\n\t#include <premultiplied_alpha_fragment>\n\t#include <dithering_fragment>\n}`,zl=`#define MATCAP\nvarying vec3 vViewPosition;\n#include <common>\n#include <batching_pars_vertex>\n#include <uv_pars_vertex>\n#include <color_pars_vertex>\n#include <displacementmap_pars_vertex>\n#include <fog_pars_vertex>\n#include <normal_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <skinning_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvoid main() {\n\t#include <uv_vertex>\n\t#include <color_vertex>\n\t#include <morphinstance_vertex>\n\t#include <morphcolor_vertex>\n\t#include <batching_vertex>\n\t#include <beginnormal_vertex>\n\t#include <morphnormal_vertex>\n\t#include <skinbase_vertex>\n\t#include <skinnormal_vertex>\n\t#include <defaultnormal_vertex>\n\t#include <normal_vertex>\n\t#include <begin_vertex>\n\t#include <morphtarget_vertex>\n\t#include <skinning_vertex>\n\t#include <displacementmap_vertex>\n\t#include <project_vertex>\n\t#include <logdepthbuf_vertex>\n\t#include <clipping_planes_vertex>\n\t#include <fog_vertex>\n\tvViewPosition = - mvPosition.xyz;\n}`,Xl=`#define MATCAP\nuniform vec3 diffuse;\nuniform float opacity;\nuniform sampler2D matcap;\nvarying vec3 vViewPosition;\n#include <common>\n#include <dithering_pars_fragment>\n#include <color_pars_fragment>\n#include <uv_pars_fragment>\n#include <map_pars_fragment>\n#include <alphamap_pars_fragment>\n#include <alphatest_pars_fragment>\n#include <alphahash_pars_fragment>\n#include <fog_pars_fragment>\n#include <normal_pars_fragment>\n#include <bumpmap_pars_fragment>\n#include <normalmap_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvoid main() {\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include <clipping_planes_fragment>\n\t#include <logdepthbuf_fragment>\n\t#include <map_fragment>\n\t#include <color_fragment>\n\t#include <alphamap_fragment>\n\t#include <alphatest_fragment>\n\t#include <alphahash_fragment>\n\t#include <normal_fragment_begin>\n\t#include <normal_fragment_maps>\n\tvec3 viewDir = normalize( vViewPosition );\n\tvec3 x = normalize( vec3( viewDir.z, 0.0, - viewDir.x ) );\n\tvec3 y = cross( viewDir, x );\n\tvec2 uv = vec2( dot( x, normal ), dot( y, normal ) ) * 0.495 + 0.5;\n\t#ifdef USE_MATCAP\n\t\tvec4 matcapColor = texture2D( matcap, uv );\n\t#else\n\t\tvec4 matcapColor = vec4( vec3( mix( 0.2, 0.8, uv.y ) ), 1.0 );\n\t#endif\n\tvec3 outgoingLight = diffuseColor.rgb * matcapColor.rgb;\n\t#include <opaque_fragment>\n\t#include <tonemapping_fragment>\n\t#include <colorspace_fragment>\n\t#include <fog_fragment>\n\t#include <premultiplied_alpha_fragment>\n\t#include <dithering_fragment>\n}`,Yl=`#define NORMAL\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP_TANGENTSPACE )\n\tvarying vec3 vViewPosition;\n#endif\n#include <common>\n#include <batching_pars_vertex>\n#include <uv_pars_vertex>\n#include <displacementmap_pars_vertex>\n#include <normal_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <skinning_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvoid main() {\n\t#include <uv_vertex>\n\t#include <batching_vertex>\n\t#include <beginnormal_vertex>\n\t#include <morphinstance_vertex>\n\t#include <morphnormal_vertex>\n\t#include <skinbase_vertex>\n\t#include <skinnormal_vertex>\n\t#include <defaultnormal_vertex>\n\t#include <normal_vertex>\n\t#include <begin_vertex>\n\t#include <morphtarget_vertex>\n\t#include <skinning_vertex>\n\t#include <displacementmap_vertex>\n\t#include <project_vertex>\n\t#include <logdepthbuf_vertex>\n\t#include <clipping_planes_vertex>\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP_TANGENTSPACE )\n\tvViewPosition = - mvPosition.xyz;\n#endif\n}`,ql=`#define NORMAL\nuniform float opacity;\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP_TANGENTSPACE )\n\tvarying vec3 vViewPosition;\n#endif\n#include <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\tvec4 diffuseColor = vec4( 0.0, 0.0, 0.0, opacity );\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( normalize( normal ) * 0.5 + 0.5, diffuseColor.a );\n\t#ifdef OPAQUE\n\t\tgl_FragColor.a = 1.0;\n\t#endif\n}`,Kl=`#define PHONG\nvarying vec3 vViewPosition;\n#include <common>\n#include <batching_pars_vertex>\n#include <uv_pars_vertex>\n#include <displacementmap_pars_vertex>\n#include <envmap_pars_vertex>\n#include <color_pars_vertex>\n#include <fog_pars_vertex>\n#include <normal_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <skinning_pars_vertex>\n#include <shadowmap_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvoid main() {\n\t#include <uv_vertex>\n\t#include <color_vertex>\n\t#include <morphcolor_vertex>\n\t#include <batching_vertex>\n\t#include <beginnormal_vertex>\n\t#include <morphinstance_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}`,$l=`#define PHONG\nuniform vec3 diffuse;\nuniform vec3 emissive;\nuniform vec3 specular;\nuniform float shininess;\nuniform float opacity;\n#include <common>\n#include <dithering_pars_fragment>\n#include <color_pars_fragment>\n#include <uv_pars_fragment>\n#include <map_pars_fragment>\n#include <alphamap_pars_fragment>\n#include <alphatest_pars_fragment>\n#include <alphahash_pars_fragment>\n#include <aomap_pars_fragment>\n#include <lightmap_pars_fragment>\n#include <emissivemap_pars_fragment>\n#include <cube_uv_reflection_fragment>\n#include <envmap_common_pars_fragment>\n#include <envmap_pars_fragment>\n#include <envmap_physical_pars_fragment>\n#include <fog_pars_fragment>\n#include <bsdfs>\n#include <lights_pars_begin>\n#include <normal_pars_fragment>\n#include <lights_phong_pars_fragment>\n#include <shadowmap_pars_fragment>\n#include <bumpmap_pars_fragment>\n#include <normalmap_pars_fragment>\n#include <specularmap_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvoid main() {\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include <clipping_planes_fragment>\n\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n\tvec3 totalEmissiveRadiance = emissive;\n\t#include <logdepthbuf_fragment>\n\t#include <map_fragment>\n\t#include <color_fragment>\n\t#include <alphamap_fragment>\n\t#include <alphatest_fragment>\n\t#include <alphahash_fragment>\n\t#include <specularmap_fragment>\n\t#include <normal_fragment_begin>\n\t#include <normal_fragment_maps>\n\t#include <emissivemap_fragment>\n\t#include <lights_phong_fragment>\n\t#include <lights_fragment_begin>\n\t#include <lights_fragment_maps>\n\t#include <lights_fragment_end>\n\t#include <aomap_fragment>\n\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + reflectedLight.directSpecular + reflectedLight.indirectSpecular + totalEmissiveRadiance;\n\t#include <envmap_fragment>\n\t#include <opaque_fragment>\n\t#include <tonemapping_fragment>\n\t#include <colorspace_fragment>\n\t#include <fog_fragment>\n\t#include <premultiplied_alpha_fragment>\n\t#include <dithering_fragment>\n}`,Zl=`#define STANDARD\nvarying vec3 vViewPosition;\n#ifdef USE_TRANSMISSION\n\tvarying vec3 vWorldPosition;\n#endif\n#include <common>\n#include <batching_pars_vertex>\n#include <uv_pars_vertex>\n#include <displacementmap_pars_vertex>\n#include <color_pars_vertex>\n#include <fog_pars_vertex>\n#include <normal_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <skinning_pars_vertex>\n#include <shadowmap_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvoid main() {\n\t#include <uv_vertex>\n\t#include <color_vertex>\n\t#include <morphinstance_vertex>\n\t#include <morphcolor_vertex>\n\t#include <batching_vertex>\n\t#include <beginnormal_vertex>\n\t#include <morphnormal_vertex>\n\t#include <skinbase_vertex>\n\t#include <skinnormal_vertex>\n\t#include <defaultnormal_vertex>\n\t#include <normal_vertex>\n\t#include <begin_vertex>\n\t#include <morphtarget_vertex>\n\t#include <skinning_vertex>\n\t#include <displacementmap_vertex>\n\t#include <project_vertex>\n\t#include <logdepthbuf_vertex>\n\t#include <clipping_planes_vertex>\n\tvViewPosition = - mvPosition.xyz;\n\t#include <worldpos_vertex>\n\t#include <shadowmap_vertex>\n\t#include <fog_vertex>\n#ifdef USE_TRANSMISSION\n\tvWorldPosition = worldPosition.xyz;\n#endif\n}`,Ql=`#define STANDARD\n#ifdef PHYSICAL\n\t#define IOR\n\t#define USE_SPECULAR\n#endif\nuniform vec3 diffuse;\nuniform vec3 emissive;\nuniform float roughness;\nuniform float metalness;\nuniform float opacity;\n#ifdef IOR\n\tuniform float ior;\n#endif\n#ifdef USE_SPECULAR\n\tuniform float specularIntensity;\n\tuniform vec3 specularColor;\n\t#ifdef USE_SPECULAR_COLORMAP\n\t\tuniform sampler2D specularColorMap;\n\t#endif\n\t#ifdef USE_SPECULAR_INTENSITYMAP\n\t\tuniform sampler2D specularIntensityMap;\n\t#endif\n#endif\n#ifdef USE_CLEARCOAT\n\tuniform float clearcoat;\n\tuniform float clearcoatRoughness;\n#endif\n#ifdef USE_DISPERSION\n\tuniform float dispersion;\n#endif\n#ifdef USE_IRIDESCENCE\n\tuniform float iridescence;\n\tuniform float iridescenceIOR;\n\tuniform float iridescenceThicknessMinimum;\n\tuniform float iridescenceThicknessMaximum;\n#endif\n#ifdef USE_SHEEN\n\tuniform vec3 sheenColor;\n\tuniform float sheenRoughness;\n\t#ifdef USE_SHEEN_COLORMAP\n\t\tuniform sampler2D sheenColorMap;\n\t#endif\n\t#ifdef USE_SHEEN_ROUGHNESSMAP\n\t\tuniform sampler2D sheenRoughnessMap;\n\t#endif\n#endif\n#ifdef USE_ANISOTROPY\n\tuniform vec2 anisotropyVector;\n\t#ifdef USE_ANISOTROPYMAP\n\t\tuniform sampler2D anisotropyMap;\n\t#endif\n#endif\nvarying vec3 vViewPosition;\n#include <common>\n#include <dithering_pars_fragment>\n#include <color_pars_fragment>\n#include <uv_pars_fragment>\n#include <map_pars_fragment>\n#include <alphamap_pars_fragment>\n#include <alphatest_pars_fragment>\n#include <alphahash_pars_fragment>\n#include <aomap_pars_fragment>\n#include <lightmap_pars_fragment>\n#include <emissivemap_pars_fragment>\n#include <iridescence_fragment>\n#include <cube_uv_reflection_fragment>\n#include <envmap_common_pars_fragment>\n#include <envmap_physical_pars_fragment>\n#include <fog_pars_fragment>\n#include <lights_pars_begin>\n#include <normal_pars_fragment>\n#include <lights_physical_pars_fragment>\n#include <transmission_pars_fragment>\n#include <shadowmap_pars_fragment>\n#include <bumpmap_pars_fragment>\n#include <normalmap_pars_fragment>\n#include <clearcoat_pars_fragment>\n#include <iridescence_pars_fragment>\n#include <roughnessmap_pars_fragment>\n#include <metalnessmap_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvoid main() {\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include <clipping_planes_fragment>\n\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n\tvec3 totalEmissiveRadiance = emissive;\n\t#include <logdepthbuf_fragment>\n\t#include <map_fragment>\n\t#include <color_fragment>\n\t#include <alphamap_fragment>\n\t#include <alphatest_fragment>\n\t#include <alphahash_fragment>\n\t#include <roughnessmap_fragment>\n\t#include <metalnessmap_fragment>\n\t#include <normal_fragment_begin>\n\t#include <normal_fragment_maps>\n\t#include <clearcoat_normal_fragment_begin>\n\t#include <clearcoat_normal_fragment_maps>\n\t#include <emissivemap_fragment>\n\t#include <lights_physical_fragment>\n\t#include <lights_fragment_begin>\n\t#include <lights_fragment_maps>\n\t#include <lights_fragment_end>\n\t#include <aomap_fragment>\n\tvec3 totalDiffuse = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse;\n\tvec3 totalSpecular = reflectedLight.directSpecular + reflectedLight.indirectSpecular;\n\t#include <transmission_fragment>\n\tvec3 outgoingLight = totalDiffuse + totalSpecular + totalEmissiveRadiance;\n\t#ifdef USE_SHEEN\n \n\t\toutgoingLight = outgoingLight + sheenSpecularDirect + sheenSpecularIndirect;\n \n \t#endif\n\t#ifdef USE_CLEARCOAT\n\t\tfloat dotNVcc = saturate( dot( geometryClearcoatNormal, geometryViewDir ) );\n\t\tvec3 Fcc = F_Schlick( material.clearcoatF0, material.clearcoatF90, dotNVcc );\n\t\toutgoingLight = outgoingLight * ( 1.0 - material.clearcoat * Fcc ) + ( clearcoatSpecularDirect + clearcoatSpecularIndirect ) * material.clearcoat;\n\t#endif\n\t#include <opaque_fragment>\n\t#include <tonemapping_fragment>\n\t#include <colorspace_fragment>\n\t#include <fog_fragment>\n\t#include <premultiplied_alpha_fragment>\n\t#include <dithering_fragment>\n}`,Jl=`#define TOON\nvarying vec3 vViewPosition;\n#include <common>\n#include <batching_pars_vertex>\n#include <uv_pars_vertex>\n#include <displacementmap_pars_vertex>\n#include <color_pars_vertex>\n#include <fog_pars_vertex>\n#include <normal_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <skinning_pars_vertex>\n#include <shadowmap_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvoid main() {\n\t#include <uv_vertex>\n\t#include <color_vertex>\n\t#include <morphinstance_vertex>\n\t#include <morphcolor_vertex>\n\t#include <batching_vertex>\n\t#include <beginnormal_vertex>\n\t#include <morphnormal_vertex>\n\t#include <skinbase_vertex>\n\t#include <skinnormal_vertex>\n\t#include <defaultnormal_vertex>\n\t#include <normal_vertex>\n\t#include <begin_vertex>\n\t#include <morphtarget_vertex>\n\t#include <skinning_vertex>\n\t#include <displacementmap_vertex>\n\t#include <project_vertex>\n\t#include <logdepthbuf_vertex>\n\t#include <clipping_planes_vertex>\n\tvViewPosition = - mvPosition.xyz;\n\t#include <worldpos_vertex>\n\t#include <shadowmap_vertex>\n\t#include <fog_vertex>\n}`,jl=`#define TOON\nuniform vec3 diffuse;\nuniform vec3 emissive;\nuniform float opacity;\n#include <common>\n#include <dithering_pars_fragment>\n#include <color_pars_fragment>\n#include <uv_pars_fragment>\n#include <map_pars_fragment>\n#include <alphamap_pars_fragment>\n#include <alphatest_pars_fragment>\n#include <alphahash_pars_fragment>\n#include <aomap_pars_fragment>\n#include <lightmap_pars_fragment>\n#include <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\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include <clipping_planes_fragment>\n\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n\tvec3 totalEmissiveRadiance = emissive;\n\t#include <logdepthbuf_fragment>\n\t#include <map_fragment>\n\t#include <color_fragment>\n\t#include <alphamap_fragment>\n\t#include <alphatest_fragment>\n\t#include <alphahash_fragment>\n\t#include <normal_fragment_begin>\n\t#include <normal_fragment_maps>\n\t#include <emissivemap_fragment>\n\t#include <lights_toon_fragment>\n\t#include <lights_fragment_begin>\n\t#include <lights_fragment_maps>\n\t#include <lights_fragment_end>\n\t#include <aomap_fragment>\n\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + totalEmissiveRadiance;\n\t#include <opaque_fragment>\n\t#include <tonemapping_fragment>\n\t#include <colorspace_fragment>\n\t#include <fog_fragment>\n\t#include <premultiplied_alpha_fragment>\n\t#include <dithering_fragment>\n}`,ec=`uniform float size;\nuniform float scale;\n#include <common>\n#include <color_pars_vertex>\n#include <fog_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\n#ifdef USE_POINTS_UV\n\tvarying vec2 vUv;\n\tuniform mat3 uvTransform;\n#endif\nvoid main() {\n\t#ifdef USE_POINTS_UV\n\t\tvUv = ( uvTransform * vec3( uv, 1 ) ).xy;\n\t#endif\n\t#include <color_vertex>\n\t#include <morphinstance_vertex>\n\t#include <morphcolor_vertex>\n\t#include <begin_vertex>\n\t#include <morphtarget_vertex>\n\t#include <project_vertex>\n\tgl_PointSize = size;\n\t#ifdef USE_SIZEATTENUATION\n\t\tbool isPerspective = isPerspectiveMatrix( projectionMatrix );\n\t\tif ( isPerspective ) gl_PointSize *= ( scale / - mvPosition.z );\n\t#endif\n\t#include <logdepthbuf_vertex>\n\t#include <clipping_planes_vertex>\n\t#include <worldpos_vertex>\n\t#include <fog_vertex>\n}`,tc=`uniform vec3 diffuse;\nuniform float opacity;\n#include <common>\n#include <color_pars_fragment>\n#include <map_particle_pars_fragment>\n#include <alphatest_pars_fragment>\n#include <alphahash_pars_fragment>\n#include <fog_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvoid main() {\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include <clipping_planes_fragment>\n\tvec3 outgoingLight = vec3( 0.0 );\n\t#include <logdepthbuf_fragment>\n\t#include <map_particle_fragment>\n\t#include <color_fragment>\n\t#include <alphatest_fragment>\n\t#include <alphahash_fragment>\n\toutgoingLight = diffuseColor.rgb;\n\t#include <opaque_fragment>\n\t#include <tonemapping_fragment>\n\t#include <colorspace_fragment>\n\t#include <fog_fragment>\n\t#include <premultiplied_alpha_fragment>\n}`,nc=`#include <common>\n#include <batching_pars_vertex>\n#include <fog_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <skinning_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <shadowmap_pars_vertex>\nvoid main() {\n\t#include <batching_vertex>\n\t#include <beginnormal_vertex>\n\t#include <morphinstance_vertex>\n\t#include <morphnormal_vertex>\n\t#include <skinbase_vertex>\n\t#include <skinnormal_vertex>\n\t#include <defaultnormal_vertex>\n\t#include <begin_vertex>\n\t#include <morphtarget_vertex>\n\t#include <skinning_vertex>\n\t#include <project_vertex>\n\t#include <logdepthbuf_vertex>\n\t#include <worldpos_vertex>\n\t#include <shadowmap_vertex>\n\t#include <fog_vertex>\n}`,ic=`uniform vec3 color;\nuniform float opacity;\n#include <common>\n#include <fog_pars_fragment>\n#include <bsdfs>\n#include <lights_pars_begin>\n#include <logdepthbuf_pars_fragment>\n#include <shadowmap_pars_fragment>\n#include <shadowmask_pars_fragment>\nvoid main() {\n\t#include <logdepthbuf_fragment>\n\tgl_FragColor = vec4( color, opacity * ( 1.0 - getShadowMask() ) );\n\t#include <tonemapping_fragment>\n\t#include <colorspace_fragment>\n\t#include <fog_fragment>\n\t#include <premultiplied_alpha_fragment>\n}`,rc=`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[ 3 ];\n\tvec2 scale = vec2( length( modelMatrix[ 0 ].xyz ), length( modelMatrix[ 1 ].xyz ) );\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}`,ac=`uniform vec3 diffuse;\nuniform float opacity;\n#include <common>\n#include <uv_pars_fragment>\n#include <map_pars_fragment>\n#include <alphamap_pars_fragment>\n#include <alphatest_pars_fragment>\n#include <alphahash_pars_fragment>\n#include <fog_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvoid main() {\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include <clipping_planes_fragment>\n\tvec3 outgoingLight = vec3( 0.0 );\n\t#include <logdepthbuf_fragment>\n\t#include <map_fragment>\n\t#include <alphamap_fragment>\n\t#include <alphatest_fragment>\n\t#include <alphahash_fragment>\n\toutgoingLight = diffuseColor.rgb;\n\t#include <opaque_fragment>\n\t#include <tonemapping_fragment>\n\t#include <colorspace_fragment>\n\t#include <fog_fragment>\n}`,De={alphahash_fragment:bo,alphahash_pars_fragment:Po,alphamap_fragment:Lo,alphamap_pars_fragment:Do,alphatest_fragment:Uo,alphatest_pars_fragment:wo,aomap_fragment:Io,aomap_pars_fragment:No,batching_pars_vertex:yo,batching_vertex:Fo,begin_vertex:Oo,beginnormal_vertex:Bo,bsdfs:Go,iridescence_fragment:Ho,bumpmap_pars_fragment:Vo,clipping_planes_fragment:ko,clipping_planes_pars_fragment:Wo,clipping_planes_pars_vertex:zo,clipping_planes_vertex:Xo,color_fragment:Yo,color_pars_fragment:qo,color_pars_vertex:Ko,color_vertex:$o,common:Zo,cube_uv_reflection_fragment:Qo,defaultnormal_vertex:Jo,displacementmap_pars_vertex:jo,displacementmap_vertex:es,emissivemap_fragment:ts,emissivemap_pars_fragment:ns,colorspace_fragment:is,colorspace_pars_fragment:rs,envmap_fragment:as,envmap_common_pars_fragment:os,envmap_pars_fragment:ss,envmap_pars_vertex:ls,envmap_physical_pars_fragment:Ss,envmap_vertex:cs,fog_vertex:fs,fog_pars_vertex:ds,fog_fragment:us,fog_pars_fragment:ps,gradientmap_pars_fragment:hs,lightmap_pars_fragment:ms,lights_lambert_fragment:_s,lights_lambert_pars_fragment:gs,lights_pars_begin:vs,lights_toon_fragment:Es,lights_toon_pars_fragment:xs,lights_phong_fragment:Ms,lights_phong_pars_fragment:Ts,lights_physical_fragment:As,lights_physical_pars_fragment:Rs,lights_fragment_begin:Cs,lights_fragment_maps:bs,lights_fragment_end:Ps,logdepthbuf_fragment:Ls,logdepthbuf_pars_fragment:Ds,logdepthbuf_pars_vertex:Us,logdepthbuf_vertex:ws,map_fragment:Is,map_pars_fragment:Ns,map_particle_fragment:ys,map_particle_pars_fragment:Fs,metalnessmap_fragment:Os,metalnessmap_pars_fragment:Bs,morphinstance_vertex:Gs,morphcolor_vertex:Hs,morphnormal_vertex:Vs,morphtarget_pars_vertex:ks,morphtarget_vertex:Ws,normal_fragment_begin:zs,normal_fragment_maps:Xs,normal_pars_fragment:Ys,normal_pars_vertex:qs,normal_vertex:Ks,normalmap_pars_fragment:$s,clearcoat_normal_fragment_begin:Zs,clearcoat_normal_fragment_maps:Qs,clearcoat_pars_fragment:Js,iridescence_pars_fragment:js,opaque_fragment:el,packing:tl,premultiplied_alpha_fragment:nl,project_vertex:il,dithering_fragment:rl,dithering_pars_fragment:al,roughnessmap_fragment:ol,roughnessmap_pars_fragment:sl,shadowmap_pars_fragment:ll,shadowmap_pars_vertex:cl,shadowmap_vertex:fl,shadowmask_pars_fragment:dl,skinbase_vertex:ul,skinning_pars_vertex:pl,skinning_vertex:hl,skinnormal_vertex:ml,specularmap_fragment:_l,specularmap_pars_fragment:gl,tonemapping_fragment:vl,tonemapping_pars_fragment:Sl,transmission_fragment:El,transmission_pars_fragment:xl,uv_pars_fragment:Ml,uv_pars_vertex:Tl,uv_vertex:Al,worldpos_vertex:Rl,background_vert:Cl,background_frag:bl,backgroundCube_vert:Pl,backgroundCube_frag:Ll,cube_vert:Dl,cube_frag:Ul,depth_vert:wl,depth_frag:Il,distance_vert:Nl,distance_frag:yl,equirect_vert:Fl,equirect_frag:Ol,linedashed_vert:Bl,linedashed_frag:Gl,meshbasic_vert:Hl,meshbasic_frag:Vl,meshlambert_vert:kl,meshlambert_frag:Wl,meshmatcap_vert:zl,meshmatcap_frag:Xl,meshnormal_vert:Yl,meshnormal_frag:ql,meshphong_vert:Kl,meshphong_frag:$l,meshphysical_vert:Zl,meshphysical_frag:Ql,meshtoon_vert:Jl,meshtoon_frag:jl,points_vert:ec,points_frag:tc,shadow_vert:nc,shadow_frag:ic,sprite_vert:rc,sprite_frag:ac},ae={common:{diffuse:{value:new Qe(16777215)},opacity:{value:1},map:{value:null},mapTransform:{value:new Oe},alphaMap:{value:null},alphaMapTransform:{value:new Oe},alphaTest:{value:0}},specularmap:{specularMap:{value:null},specularMapTransform:{value:new Oe}},envmap:{envMap:{value:null},envMapRotation:{value:new Oe},flipEnvMap:{value:-1},reflectivity:{value:1},ior:{value:1.5},refractionRatio:{value:.98},dfgLUT:{value:null}},aomap:{aoMap:{value:null},aoMapIntensity:{value:1},aoMapTransform:{value:new Oe}},lightmap:{lightMap:{value:null},lightMapIntensity:{value:1},lightMapTransform:{value:new Oe}},bumpmap:{bumpMap:{value:null},bumpMapTransform:{value:new Oe},bumpScale:{value:1}},normalmap:{normalMap:{value:null},normalMapTransform:{value:new Oe},normalScale:{value:new pt(1,1)}},displacementmap:{displacementMap:{value:null},displacementMapTransform:{value:new Oe},displacementScale:{value:1},displacementBias:{value:0}},emissivemap:{emissiveMap:{value:null},emissiveMapTransform:{value:new Oe}},metalnessmap:{metalnessMap:{value:null},metalnessMapTransform:{value:new Oe}},roughnessmap:{roughnessMap:{value:null},roughnessMapTransform:{value:new Oe}},gradientmap:{gradientMap:{value:null}},fog:{fogDensity:{value:25e-5},fogNear:{value:1},fogFar:{value:2e3},fogColor:{value:new Qe(16777215)}},lights:{ambientLightColor:{value:[]},lightProbe:{value:[]},directionalLights:{value:[],properties:{direction:{},color:{}}},directionalLightShadows:{value:[],properties:{shadowIntensity:1,shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{}}},directionalShadowMatrix:{value:[]},spotLights:{value:[],properties:{color:{},position:{},direction:{},distance:{},coneCos:{},penumbraCos:{},decay:{}}},spotLightShadows:{value:[],properties:{shadowIntensity:1,shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{}}},spotLightMap:{value:[]},spotLightMatrix:{value:[]},pointLights:{value:[],properties:{color:{},position:{},decay:{},distance:{}}},pointLightShadows:{value:[],properties:{shadowIntensity:1,shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{},shadowCameraNear:{},shadowCameraFar:{}}},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 Qe(16777215)},opacity:{value:1},size:{value:1},scale:{value:1},map:{value:null},alphaMap:{value:null},alphaMapTransform:{value:new Oe},alphaTest:{value:0},uvTransform:{value:new Oe}},sprite:{diffuse:{value:new Qe(16777215)},opacity:{value:1},center:{value:new pt(.5,.5)},rotation:{value:0},map:{value:null},mapTransform:{value:new Oe},alphaMap:{value:null},alphaMapTransform:{value:new Oe},alphaTest:{value:0}}},Et={basic:{uniforms:dt([ae.common,ae.specularmap,ae.envmap,ae.aomap,ae.lightmap,ae.fog]),vertexShader:De.meshbasic_vert,fragmentShader:De.meshbasic_frag},lambert:{uniforms:dt([ae.common,ae.specularmap,ae.envmap,ae.aomap,ae.lightmap,ae.emissivemap,ae.bumpmap,ae.normalmap,ae.displacementmap,ae.fog,ae.lights,{emissive:{value:new Qe(0)},envMapIntensity:{value:1}}]),vertexShader:De.meshlambert_vert,fragmentShader:De.meshlambert_frag},phong:{uniforms:dt([ae.common,ae.specularmap,ae.envmap,ae.aomap,ae.lightmap,ae.emissivemap,ae.bumpmap,ae.normalmap,ae.displacementmap,ae.fog,ae.lights,{emissive:{value:new Qe(0)},specular:{value:new Qe(1118481)},shininess:{value:30},envMapIntensity:{value:1}}]),vertexShader:De.meshphong_vert,fragmentShader:De.meshphong_frag},standard:{uniforms:dt([ae.common,ae.envmap,ae.aomap,ae.lightmap,ae.emissivemap,ae.bumpmap,ae.normalmap,ae.displacementmap,ae.roughnessmap,ae.metalnessmap,ae.fog,ae.lights,{emissive:{value:new Qe(0)},roughness:{value:1},metalness:{value:0},envMapIntensity:{value:1}}]),vertexShader:De.meshphysical_vert,fragmentShader:De.meshphysical_frag},toon:{uniforms:dt([ae.common,ae.aomap,ae.lightmap,ae.emissivemap,ae.bumpmap,ae.normalmap,ae.displacementmap,ae.gradientmap,ae.fog,ae.lights,{emissive:{value:new Qe(0)}}]),vertexShader:De.meshtoon_vert,fragmentShader:De.meshtoon_frag},matcap:{uniforms:dt([ae.common,ae.bumpmap,ae.normalmap,ae.displacementmap,ae.fog,{matcap:{value:null}}]),vertexShader:De.meshmatcap_vert,fragmentShader:De.meshmatcap_frag},points:{uniforms:dt([ae.points,ae.fog]),vertexShader:De.points_vert,fragmentShader:De.points_frag},dashed:{uniforms:dt([ae.common,ae.fog,{scale:{value:1},dashSize:{value:1},totalSize:{value:2}}]),vertexShader:De.linedashed_vert,fragmentShader:De.linedashed_frag},depth:{uniforms:dt([ae.common,ae.displacementmap]),vertexShader:De.depth_vert,fragmentShader:De.depth_frag},normal:{uniforms:dt([ae.common,ae.bumpmap,ae.normalmap,ae.displacementmap,{opacity:{value:1}}]),vertexShader:De.meshnormal_vert,fragmentShader:De.meshnormal_frag},sprite:{uniforms:dt([ae.sprite,ae.fog]),vertexShader:De.sprite_vert,fragmentShader:De.sprite_frag},background:{uniforms:{uvTransform:{value:new Oe},t2D:{value:null},backgroundIntensity:{value:1}},vertexShader:De.background_vert,fragmentShader:De.background_frag},backgroundCube:{uniforms:{envMap:{value:null},flipEnvMap:{value:-1},backgroundBlurriness:{value:0},backgroundIntensity:{value:1},backgroundRotation:{value:new Oe}},vertexShader:De.backgroundCube_vert,fragmentShader:De.backgroundCube_frag},cube:{uniforms:{tCube:{value:null},tFlip:{value:-1},opacity:{value:1}},vertexShader:De.cube_vert,fragmentShader:De.cube_frag},equirect:{uniforms:{tEquirect:{value:null}},vertexShader:De.equirect_vert,fragmentShader:De.equirect_frag},distance:{uniforms:dt([ae.common,ae.displacementmap,{referencePosition:{value:new Be},nearDistance:{value:1},farDistance:{value:1e3}}]),vertexShader:De.distance_vert,fragmentShader:De.distance_frag},shadow:{uniforms:dt([ae.lights,ae.fog,{color:{value:new Qe(0)},opacity:{value:1}}]),vertexShader:De.shadow_vert,fragmentShader:De.shadow_frag}};Et.physical={uniforms:dt([Et.standard.uniforms,{clearcoat:{value:0},clearcoatMap:{value:null},clearcoatMapTransform:{value:new Oe},clearcoatNormalMap:{value:null},clearcoatNormalMapTransform:{value:new Oe},clearcoatNormalScale:{value:new pt(1,1)},clearcoatRoughness:{value:0},clearcoatRoughnessMap:{value:null},clearcoatRoughnessMapTransform:{value:new Oe},dispersion:{value:0},iridescence:{value:0},iridescenceMap:{value:null},iridescenceMapTransform:{value:new Oe},iridescenceIOR:{value:1.3},iridescenceThicknessMinimum:{value:100},iridescenceThicknessMaximum:{value:400},iridescenceThicknessMap:{value:null},iridescenceThicknessMapTransform:{value:new Oe},sheen:{value:0},sheenColor:{value:new Qe(0)},sheenColorMap:{value:null},sheenColorMapTransform:{value:new Oe},sheenRoughness:{value:1},sheenRoughnessMap:{value:null},sheenRoughnessMapTransform:{value:new Oe},transmission:{value:0},transmissionMap:{value:null},transmissionMapTransform:{value:new Oe},transmissionSamplerSize:{value:new pt},transmissionSamplerMap:{value:null},thickness:{value:0},thicknessMap:{value:null},thicknessMapTransform:{value:new Oe},attenuationDistance:{value:0},attenuationColor:{value:new Qe(0)},specularColor:{value:new Qe(1,1,1)},specularColorMap:{value:null},specularColorMapTransform:{value:new Oe},specularIntensity:{value:1},specularIntensityMap:{value:null},specularIntensityMapTransform:{value:new Oe},anisotropyVector:{value:new pt},anisotropyMap:{value:null},anisotropyMapTransform:{value:new Oe}}]),vertexShader:De.meshphysical_vert,fragmentShader:De.meshphysical_frag};var pn={r:0,b:0,g:0},Bt=new Ar,oc=new Zt;function sc(e,n,t,i,c,a){let d=new Qe(0),_=c===!0?0:1,L,C,B=null,D=0,p=null;function S(g){let T=g.isScene===!0?g.background:null;if(T&&T.isTexture){let E=g.backgroundBlurriness>0;T=n.get(T,E)}return T}function M(g){let T=!1,E=S(g);E===null?l(d,_):E&&E.isColor&&(l(E,1),T=!0);let N=e.xr.getEnvironmentBlendMode();N===\"additive\"?t.buffers.color.setClear(0,0,0,1,a):N===\"alpha-blend\"&&t.buffers.color.setClear(0,0,0,0,a),(e.autoClear||T)&&(t.buffers.depth.setTest(!0),t.buffers.depth.setMask(!0),t.buffers.color.setMask(!0),e.clear(e.autoClearColor,e.autoClearDepth,e.autoClearStencil))}function y(g,T){let E=S(T);E&&(E.isCubeTexture||E.mapping===Tn)?(C===void 0&&(C=new Lt(new ti(1,1,1),new Dt({name:\"BackgroundCubeMaterial\",uniforms:zn(Et.backgroundCube.uniforms),vertexShader:Et.backgroundCube.vertexShader,fragmentShader:Et.backgroundCube.fragmentShader,side:_t,depthTest:!1,depthWrite:!1,fog:!1,allowOverride:!1})),C.geometry.deleteAttribute(\"normal\"),C.geometry.deleteAttribute(\"uv\"),C.onBeforeRender=function(N,b,w){this.matrixWorld.copyPosition(w.matrixWorld)},Object.defineProperty(C.material,\"envMap\",{get:function(){return this.uniforms.envMap.value}}),i.update(C)),Bt.copy(T.backgroundRotation),Bt.x*=-1,Bt.y*=-1,Bt.z*=-1,E.isCubeTexture&&E.isRenderTargetTexture===!1&&(Bt.y*=-1,Bt.z*=-1),C.material.uniforms.envMap.value=E,C.material.uniforms.flipEnvMap.value=E.isCubeTexture&&E.isRenderTargetTexture===!1?-1:1,C.material.uniforms.backgroundBlurriness.value=T.backgroundBlurriness,C.material.uniforms.backgroundIntensity.value=T.backgroundIntensity,C.material.uniforms.backgroundRotation.value.setFromMatrix4(oc.makeRotationFromEuler(Bt)),C.material.toneMapped=it.getTransfer(E.colorSpace)!==$e,(B!==E||D!==E.version||p!==e.toneMapping)&&(C.material.needsUpdate=!0,B=E,D=E.version,p=e.toneMapping),C.layers.enableAll(),g.unshift(C,C.geometry,C.material,0,0,null)):E&&E.isTexture&&(L===void 0&&(L=new Lt(new Rr(2,2),new Dt({name:\"BackgroundMaterial\",uniforms:zn(Et.background.uniforms),vertexShader:Et.background.vertexShader,fragmentShader:Et.background.fragmentShader,side:on,depthTest:!1,depthWrite:!1,fog:!1,allowOverride:!1})),L.geometry.deleteAttribute(\"normal\"),Object.defineProperty(L.material,\"map\",{get:function(){return this.uniforms.t2D.value}}),i.update(L)),L.material.uniforms.t2D.value=E,L.material.uniforms.backgroundIntensity.value=T.backgroundIntensity,L.material.toneMapped=it.getTransfer(E.colorSpace)!==$e,E.matrixAutoUpdate===!0&&E.updateMatrix(),L.material.uniforms.uvTransform.value.copy(E.matrix),(B!==E||D!==E.version||p!==e.toneMapping)&&(L.material.needsUpdate=!0,B=E,D=E.version,p=e.toneMapping),L.layers.enableAll(),g.unshift(L,L.geometry,L.material,0,0,null))}function l(g,T){g.getRGB(pn,Cr(e)),t.buffers.color.setClear(pn.r,pn.g,pn.b,T,a)}function s(){C!==void 0&&(C.geometry.dispose(),C.material.dispose(),C=void 0),L!==void 0&&(L.geometry.dispose(),L.material.dispose(),L=void 0)}return{getClearColor:function(){return d},setClearColor:function(g,T=1){d.set(g),_=T,l(d,_)},getClearAlpha:function(){return _},setClearAlpha:function(g){_=g,l(d,_)},render:M,addToRenderList:y,dispose:s}}function lc(e,n){let t=e.getParameter(e.MAX_VERTEX_ATTRIBS),i={},c=p(null),a=c,d=!1;function _(R,V,z,W,Y){let O=!1,F=D(R,W,z,V);a!==F&&(a=F,C(a.object)),O=S(R,W,z,Y),O&&M(R,W,z,Y),Y!==null&&n.update(Y,e.ELEMENT_ARRAY_BUFFER),(O||d)&&(d=!1,E(R,V,z,W),Y!==null&&e.bindBuffer(e.ELEMENT_ARRAY_BUFFER,n.get(Y).buffer))}function L(){return e.createVertexArray()}function C(R){return e.bindVertexArray(R)}function B(R){return e.deleteVertexArray(R)}function D(R,V,z,W){let Y=W.wireframe===!0,O=i[V.id];O===void 0&&(O={},i[V.id]=O);let F=R.isInstancedMesh===!0?R.id:0,ie=O[F];ie===void 0&&(ie={},O[F]=ie);let re=ie[z.id];re===void 0&&(re={},ie[z.id]=re);let Me=re[Y];return Me===void 0&&(Me=p(L()),re[Y]=Me),Me}function p(R){let V=[],z=[],W=[];for(let Y=0;Y<t;Y++)V[Y]=0,z[Y]=0,W[Y]=0;return{geometry:null,program:null,wireframe:!1,newAttributes:V,enabledAttributes:z,attributeDivisors:W,object:R,attributes:{},index:null}}function S(R,V,z,W){let Y=a.attributes,O=V.attributes,F=0,ie=z.getAttributes();for(let re in ie)if(ie[re].location>=0){let Ae=Y[re],he=O[re];if(he===void 0&&(re===\"instanceMatrix\"&&R.instanceMatrix&&(he=R.instanceMatrix),re===\"instanceColor\"&&R.instanceColor&&(he=R.instanceColor)),Ae===void 0||Ae.attribute!==he||he&&Ae.data!==he.data)return!0;F++}return a.attributesNum!==F||a.index!==W}function M(R,V,z,W){let Y={},O=V.attributes,F=0,ie=z.getAttributes();for(let re in ie)if(ie[re].location>=0){let Ae=O[re];Ae===void 0&&(re===\"instanceMatrix\"&&R.instanceMatrix&&(Ae=R.instanceMatrix),re===\"instanceColor\"&&R.instanceColor&&(Ae=R.instanceColor));let he={};he.attribute=Ae,Ae&&Ae.data&&(he.data=Ae.data),Y[re]=he,F++}a.attributes=Y,a.attributesNum=F,a.index=W}function y(){let R=a.newAttributes;for(let V=0,z=R.length;V<z;V++)R[V]=0}function l(R){s(R,0)}function s(R,V){let z=a.newAttributes,W=a.enabledAttributes,Y=a.attributeDivisors;z[R]=1,W[R]===0&&(e.enableVertexAttribArray(R),W[R]=1),Y[R]!==V&&(e.vertexAttribDivisor(R,V),Y[R]=V)}function g(){let R=a.newAttributes,V=a.enabledAttributes;for(let z=0,W=V.length;z<W;z++)V[z]!==R[z]&&(e.disableVertexAttribArray(z),V[z]=0)}function T(R,V,z,W,Y,O,F){F===!0?e.vertexAttribIPointer(R,V,z,Y,O):e.vertexAttribPointer(R,V,z,W,Y,O)}function E(R,V,z,W){y();let Y=W.attributes,O=z.getAttributes(),F=V.defaultAttributeValues;for(let ie in O){let re=O[ie];if(re.location>=0){let Me=Y[ie];if(Me===void 0&&(ie===\"instanceMatrix\"&&R.instanceMatrix&&(Me=R.instanceMatrix),ie===\"instanceColor\"&&R.instanceColor&&(Me=R.instanceColor)),Me!==void 0){let Ae=Me.normalized,he=Me.itemSize,Ne=n.get(Me);if(Ne===void 0)continue;let Je=Ne.buffer,je=Ne.type,X=Ne.bytesPerElement,j=je===e.INT||je===e.UNSIGNED_INT||Me.gpuType===br;if(Me.isInterleavedBufferAttribute){let ne=Me.data,Le=ne.stride,Te=Me.offset;if(ne.isInstancedInterleavedBuffer){for(let Ce=0;Ce<re.locationSize;Ce++)s(re.location+Ce,ne.meshPerAttribute);R.isInstancedMesh!==!0&&W._maxInstanceCount===void 0&&(W._maxInstanceCount=ne.meshPerAttribute*ne.count)}else for(let Ce=0;Ce<re.locationSize;Ce++)l(re.location+Ce);e.bindBuffer(e.ARRAY_BUFFER,Je);for(let Ce=0;Ce<re.locationSize;Ce++)T(re.location+Ce,he/re.locationSize,je,Ae,Le*X,(Te+he/re.locationSize*Ce)*X,j)}else{if(Me.isInstancedBufferAttribute){for(let ne=0;ne<re.locationSize;ne++)s(re.location+ne,Me.meshPerAttribute);R.isInstancedMesh!==!0&&W._maxInstanceCount===void 0&&(W._maxInstanceCount=Me.meshPerAttribute*Me.count)}else for(let ne=0;ne<re.locationSize;ne++)l(re.location+ne);e.bindBuffer(e.ARRAY_BUFFER,Je);for(let ne=0;ne<re.locationSize;ne++)T(re.location+ne,he/re.locationSize,je,Ae,he*X,he/re.locationSize*ne*X,j)}}else if(F!==void 0){let Ae=F[ie];if(Ae!==void 0)switch(Ae.length){case 2:e.vertexAttrib2fv(re.location,Ae);break;case 3:e.vertexAttrib3fv(re.location,Ae);break;case 4:e.vertexAttrib4fv(re.location,Ae);break;default:e.vertexAttrib1fv(re.location,Ae)}}}}g()}function N(){h();for(let R in i){let V=i[R];for(let z in V){let W=V[z];for(let Y in W){let O=W[Y];for(let F in O)B(O[F].object),delete O[F];delete W[Y]}}delete i[R]}}function b(R){if(i[R.id]===void 0)return;let V=i[R.id];for(let z in V){let W=V[z];for(let Y in W){let O=W[Y];for(let F in O)B(O[F].object),delete O[F];delete W[Y]}}delete i[R.id]}function w(R){for(let V in i){let z=i[V];for(let W in z){let Y=z[W];if(Y[R.id]===void 0)continue;let O=Y[R.id];for(let F in O)B(O[F].object),delete O[F];delete Y[R.id]}}}function f(R){for(let V in i){let z=i[V],W=R.isInstancedMesh===!0?R.id:0,Y=z[W];if(Y!==void 0){for(let O in Y){let F=Y[O];for(let ie in F)B(F[ie].object),delete F[ie];delete Y[O]}delete z[W],Object.keys(z).length===0&&delete i[V]}}}function h(){$(),d=!0,a!==c&&(a=c,C(a.object))}function $(){c.geometry=null,c.program=null,c.wireframe=!1}return{setup:_,reset:h,resetDefaultState:$,dispose:N,releaseStatesOfGeometry:b,releaseStatesOfObject:f,releaseStatesOfProgram:w,initAttributes:y,enableAttribute:l,disableUnusedAttributes:g}}function cc(e,n,t){let i;function c(C){i=C}function a(C,B){e.drawArrays(i,C,B),t.update(B,i,1)}function d(C,B,D){D!==0&&(e.drawArraysInstanced(i,C,B,D),t.update(B,i,D))}function _(C,B,D){if(D===0)return;n.get(\"WEBGL_multi_draw\").multiDrawArraysWEBGL(i,C,0,B,0,D);let S=0;for(let M=0;M<D;M++)S+=B[M];t.update(S,i,1)}function L(C,B,D,p){if(D===0)return;let S=n.get(\"WEBGL_multi_draw\");if(S===null)for(let M=0;M<C.length;M++)d(C[M],B[M],p[M]);else{S.multiDrawArraysInstancedWEBGL(i,C,0,B,0,p,0,D);let M=0;for(let y=0;y<D;y++)M+=B[y]*p[y];t.update(M,i,1)}}this.setMode=c,this.render=a,this.renderInstances=d,this.renderMultiDraw=_,this.renderMultiDrawInstances=L}function fc(e,n,t,i){let c;function a(){if(c!==void 0)return c;if(n.has(\"EXT_texture_filter_anisotropic\")===!0){let w=n.get(\"EXT_texture_filter_anisotropic\");c=e.getParameter(w.MAX_TEXTURE_MAX_ANISOTROPY_EXT)}else c=0;return c}function d(w){return!(w!==bt&&i.convert(w)!==e.getParameter(e.IMPLEMENTATION_COLOR_READ_FORMAT))}function _(w){let f=w===yt&&(n.has(\"EXT_color_buffer_half_float\")||n.has(\"EXT_color_buffer_float\"));return!(w!==xt&&i.convert(w)!==e.getParameter(e.IMPLEMENTATION_COLOR_READ_TYPE)&&w!==It&&!f)}function L(w){if(w===\"highp\"){if(e.getShaderPrecisionFormat(e.VERTEX_SHADER,e.HIGH_FLOAT).precision>0&&e.getShaderPrecisionFormat(e.FRAGMENT_SHADER,e.HIGH_FLOAT).precision>0)return\"highp\";w=\"mediump\"}return w===\"mediump\"&&e.getShaderPrecisionFormat(e.VERTEX_SHADER,e.MEDIUM_FLOAT).precision>0&&e.getShaderPrecisionFormat(e.FRAGMENT_SHADER,e.MEDIUM_FLOAT).precision>0?\"mediump\":\"lowp\"}let C=t.precision!==void 0?t.precision:\"highp\",B=L(C);B!==C&&(Ye(\"WebGLRenderer:\",C,\"not supported, using\",B,\"instead.\"),C=B);let D=t.logarithmicDepthBuffer===!0,p=t.reversedDepthBuffer===!0&&n.has(\"EXT_clip_control\"),S=e.getParameter(e.MAX_TEXTURE_IMAGE_UNITS),M=e.getParameter(e.MAX_VERTEX_TEXTURE_IMAGE_UNITS),y=e.getParameter(e.MAX_TEXTURE_SIZE),l=e.getParameter(e.MAX_CUBE_MAP_TEXTURE_SIZE),s=e.getParameter(e.MAX_VERTEX_ATTRIBS),g=e.getParameter(e.MAX_VERTEX_UNIFORM_VECTORS),T=e.getParameter(e.MAX_VARYING_VECTORS),E=e.getParameter(e.MAX_FRAGMENT_UNIFORM_VECTORS),N=e.getParameter(e.MAX_SAMPLES),b=e.getParameter(e.SAMPLES);return{isWebGL2:!0,getMaxAnisotropy:a,getMaxPrecision:L,textureFormatReadable:d,textureTypeReadable:_,precision:C,logarithmicDepthBuffer:D,reversedDepthBuffer:p,maxTextures:S,maxVertexTextures:M,maxTextureSize:y,maxCubemapSize:l,maxAttributes:s,maxVertexUniforms:g,maxVaryings:T,maxFragmentUniforms:E,maxSamples:N,samples:b}}function dc(e){let n=this,t=null,i=0,c=!1,a=!1,d=new aa,_=new Oe,L={value:null,needsUpdate:!1};this.uniform=L,this.numPlanes=0,this.numIntersection=0,this.init=function(D,p){let S=D.length!==0||p||i!==0||c;return c=p,i=D.length,S},this.beginShadows=function(){a=!0,B(null)},this.endShadows=function(){a=!1},this.setGlobalState=function(D,p){t=B(D,p,0)},this.setState=function(D,p,S){let M=D.clippingPlanes,y=D.clipIntersection,l=D.clipShadows,s=e.get(D);if(!c||M===null||M.length===0||a&&!l)a?B(null):C();else{let g=a?0:i,T=g*4,E=s.clippingState||null;L.value=E,E=B(M,p,T,S);for(let N=0;N!==T;++N)E[N]=t[N];s.clippingState=E,this.numIntersection=y?this.numPlanes:0,this.numPlanes+=g}};function C(){L.value!==t&&(L.value=t,L.needsUpdate=i>0),n.numPlanes=i,n.numIntersection=0}function B(D,p,S,M){let y=D!==null?D.length:0,l=null;if(y!==0){if(l=L.value,M!==!0||l===null){let s=S+y*4,g=p.matrixWorldInverse;_.getNormalMatrix(g),(l===null||l.length<s)&&(l=new Float32Array(s));for(let T=0,E=S;T!==y;++T,E+=4)d.copy(D[T]).applyMatrix4(g,_),d.normal.toArray(l,E),l[E+3]=d.constant}L.value=l,L.needsUpdate=!0}return n.numPlanes=y,n.numIntersection=0,l}}var Nt=4,tr=[.125,.215,.35,.446,.526,.582],Ht=20,uc=256,tn=new Pr,nr=new Qe,Bn=null,Gn=0,Hn=0,Vn=!1,pc=new Be,xn=class{constructor(n){this._renderer=n,this._pingPongRenderTarget=null,this._lodMax=0,this._cubeSize=0,this._sizeLods=[],this._sigmas=[],this._lodMeshes=[],this._backgroundBox=null,this._cubemapMaterial=null,this._equirectMaterial=null,this._blurMaterial=null,this._ggxMaterial=null}fromScene(n,t=0,i=.1,c=100,a={}){let{size:d=256,position:_=pc}=a;Bn=this._renderer.getRenderTarget(),Gn=this._renderer.getActiveCubeFace(),Hn=this._renderer.getActiveMipmapLevel(),Vn=this._renderer.xr.enabled,this._renderer.xr.enabled=!1,this._setSize(d);let L=this._allocateTargets();return L.depthBuffer=!0,this._sceneToCubeUV(n,i,c,L,_),t>0&&this._blur(L,0,0,t),this._applyPMREM(L),this._cleanup(L),L}fromEquirectangular(n,t=null){return this._fromTexture(n,t)}fromCubemap(n,t=null){return this._fromTexture(n,t)}compileCubemapShader(){this._cubemapMaterial===null&&(this._cubemapMaterial=ar(),this._compileMaterial(this._cubemapMaterial))}compileEquirectangularShader(){this._equirectMaterial===null&&(this._equirectMaterial=rr(),this._compileMaterial(this._equirectMaterial))}dispose(){this._dispose(),this._cubemapMaterial!==null&&this._cubemapMaterial.dispose(),this._equirectMaterial!==null&&this._equirectMaterial.dispose(),this._backgroundBox!==null&&(this._backgroundBox.geometry.dispose(),this._backgroundBox.material.dispose())}_setSize(n){this._lodMax=Math.floor(Math.log2(n)),this._cubeSize=Math.pow(2,this._lodMax)}_dispose(){this._blurMaterial!==null&&this._blurMaterial.dispose(),this._ggxMaterial!==null&&this._ggxMaterial.dispose(),this._pingPongRenderTarget!==null&&this._pingPongRenderTarget.dispose();for(let n=0;n<this._lodMeshes.length;n++)this._lodMeshes[n].geometry.dispose()}_cleanup(n){this._renderer.setRenderTarget(Bn,Gn,Hn),this._renderer.xr.enabled=Vn,n.scissorTest=!1,Xt(n,0,0,n.width,n.height)}_fromTexture(n,t){n.mapping===sn||n.mapping===Qt?this._setSize(n.image.length===0?16:n.image[0].width||n.image[0].image.width):this._setSize(n.image.width/4),Bn=this._renderer.getRenderTarget(),Gn=this._renderer.getActiveCubeFace(),Hn=this._renderer.getActiveMipmapLevel(),Vn=this._renderer.xr.enabled,this._renderer.xr.enabled=!1;let i=t||this._allocateTargets();return this._textureToCubeUV(n,i),this._applyPMREM(i),this._cleanup(i),i}_allocateTargets(){let n=3*Math.max(this._cubeSize,112),t=4*this._cubeSize,i={magFilter:mt,minFilter:mt,generateMipmaps:!1,type:yt,format:bt,colorSpace:Rn,depthBuffer:!1},c=ir(n,t,i);if(this._pingPongRenderTarget===null||this._pingPongRenderTarget.width!==n||this._pingPongRenderTarget.height!==t){this._pingPongRenderTarget!==null&&this._dispose(),this._pingPongRenderTarget=ir(n,t,i);let{_lodMax:a}=this;({lodMeshes:this._lodMeshes,sizeLods:this._sizeLods,sigmas:this._sigmas}=hc(a)),this._blurMaterial=_c(a,n,t),this._ggxMaterial=mc(a,n,t)}return c}_compileMaterial(n){let t=new Lt(new An,n);this._renderer.compile(t,tn)}_sceneToCubeUV(n,t,i,c,a){let L=new mn(90,1,t,i),C=[1,-1,1,1,1,1],B=[1,1,1,-1,-1,-1],D=this._renderer,p=D.autoClear,S=D.toneMapping;D.getClearColor(nr),D.toneMapping=Mt,D.autoClear=!1,D.state.buffers.depth.getReversed()&&(D.setRenderTarget(c),D.clearDepth(),D.setRenderTarget(null)),this._backgroundBox===null&&(this._backgroundBox=new Lt(new ti,new oa({name:\"PMREM.Background\",side:_t,depthWrite:!1,depthTest:!1})));let y=this._backgroundBox,l=y.material,s=!1,g=n.background;g?g.isColor&&(l.color.copy(g),n.background=null,s=!0):(l.color.copy(nr),s=!0);for(let T=0;T<6;T++){let E=T%3;E===0?(L.up.set(0,C[T],0),L.position.set(a.x,a.y,a.z),L.lookAt(a.x+B[T],a.y,a.z)):E===1?(L.up.set(0,0,C[T]),L.position.set(a.x,a.y,a.z),L.lookAt(a.x,a.y+B[T],a.z)):(L.up.set(0,C[T],0),L.position.set(a.x,a.y,a.z),L.lookAt(a.x,a.y,a.z+B[T]));let N=this._cubeSize;Xt(c,E*N,T>2?N:0,N,N),D.setRenderTarget(c),s&&D.render(y,L),D.render(n,L)}D.toneMapping=S,D.autoClear=p,n.background=g}_textureToCubeUV(n,t){let i=this._renderer,c=n.mapping===sn||n.mapping===Qt;c?(this._cubemapMaterial===null&&(this._cubemapMaterial=ar()),this._cubemapMaterial.uniforms.flipEnvMap.value=n.isRenderTargetTexture===!1?-1:1):this._equirectMaterial===null&&(this._equirectMaterial=rr());let a=c?this._cubemapMaterial:this._equirectMaterial,d=this._lodMeshes[0];d.material=a;let _=a.uniforms;_.envMap.value=n;let L=this._cubeSize;Xt(t,0,0,3*L,2*L),i.setRenderTarget(t),i.render(d,tn)}_applyPMREM(n){let t=this._renderer,i=t.autoClear;t.autoClear=!1;let c=this._lodMeshes.length;for(let a=1;a<c;a++)this._applyGGXFilter(n,a-1,a);t.autoClear=i}_applyGGXFilter(n,t,i){let c=this._renderer,a=this._pingPongRenderTarget,d=this._ggxMaterial,_=this._lodMeshes[i];_.material=d;let L=d.uniforms,C=i/(this._lodMeshes.length-1),B=t/(this._lodMeshes.length-1),D=Math.sqrt(C*C-B*B),p=0+C*1.25,S=D*p,{_lodMax:M}=this,y=this._sizeLods[i],l=3*y*(i>M-Nt?i-M+Nt:0),s=4*(this._cubeSize-y);L.envMap.value=n.texture,L.roughness.value=S,L.mipInt.value=M-t,Xt(a,l,s,3*y,2*y),c.setRenderTarget(a),c.render(_,tn),L.envMap.value=a.texture,L.roughness.value=0,L.mipInt.value=M-i,Xt(n,l,s,3*y,2*y),c.setRenderTarget(n),c.render(_,tn)}_blur(n,t,i,c,a){let d=this._pingPongRenderTarget;this._halfBlur(n,d,t,i,c,\"latitudinal\",a),this._halfBlur(d,n,i,i,c,\"longitudinal\",a)}_halfBlur(n,t,i,c,a,d,_){let L=this._renderer,C=this._blurMaterial;d!==\"latitudinal\"&&d!==\"longitudinal\"&&Ze(\"blur direction must be either latitudinal or longitudinal!\");let B=3,D=this._lodMeshes[c];D.material=C;let p=C.uniforms,S=this._sizeLods[i]-1,M=isFinite(a)?Math.PI/(2*S):2*Math.PI/(2*Ht-1),y=a/M,l=isFinite(a)?1+Math.floor(B*y):Ht;l>Ht&&Ye(`sigmaRadians, ${a}, is too large and will clip, as it requested ${l} samples when the maximum is set to ${Ht}`);let s=[],g=0;for(let w=0;w<Ht;++w){let f=w/y,h=Math.exp(-f*f/2);s.push(h),w===0?g+=h:w<l&&(g+=2*h)}for(let w=0;w<s.length;w++)s[w]=s[w]/g;p.envMap.value=n.texture,p.samples.value=l,p.weights.value=s,p.latitudinal.value=d===\"latitudinal\",_&&(p.poleAxis.value=_);let{_lodMax:T}=this;p.dTheta.value=M,p.mipInt.value=T-i;let E=this._sizeLods[c],N=3*E*(c>T-Nt?c-T+Nt:0),b=4*(this._cubeSize-E);Xt(t,N,b,3*E,2*E),L.setRenderTarget(t),L.render(D,tn)}};function hc(e){let n=[],t=[],i=[],c=e,a=e-Nt+1+tr.length;for(let d=0;d<a;d++){let _=Math.pow(2,c);n.push(_);let L=1/_;d>e-Nt?L=tr[d-e+Nt-1]:d===0&&(L=0),t.push(L);let C=1/(_-2),B=-C,D=1+C,p=[B,B,D,B,D,D,B,B,D,D,B,D],S=6,M=6,y=3,l=2,s=1,g=new Float32Array(y*M*S),T=new Float32Array(l*M*S),E=new Float32Array(s*M*S);for(let b=0;b<S;b++){let w=b%3*2/3-1,f=b>2?0:-1,h=[w,f,0,w+2/3,f,0,w+2/3,f+1,0,w,f,0,w+2/3,f+1,0,w,f+1,0];g.set(h,y*M*b),T.set(p,l*M*b);let $=[b,b,b,b,b,b];E.set($,s*M*b)}let N=new An;N.setAttribute(\"position\",new _n(g,y)),N.setAttribute(\"uv\",new _n(T,l)),N.setAttribute(\"faceIndex\",new _n(E,s)),i.push(new Lt(N,null)),c>Nt&&c--}return{lodMeshes:i,sizeLods:n,sigmas:t}}function ir(e,n,t){let i=new Tt(e,n,t);return i.texture.mapping=Tn,i.texture.name=\"PMREM.cubeUv\",i.scissorTest=!0,i}function Xt(e,n,t,i,c){e.viewport.set(n,t,i,c),e.scissor.set(n,t,i,c)}function mc(e,n,t){return new Dt({name:\"PMREMGGXConvolution\",defines:{GGX_SAMPLES:uc,CUBEUV_TEXEL_WIDTH:1/n,CUBEUV_TEXEL_HEIGHT:1/t,CUBEUV_MAX_MIP:`${e}.0`},uniforms:{envMap:{value:null},roughness:{value:0},mipInt:{value:0}},vertexShader:Cn(),fragmentShader:`\n\n\t\t\tprecision highp float;\n\t\t\tprecision highp int;\n\n\t\t\tvarying vec3 vOutputDirection;\n\n\t\t\tuniform sampler2D envMap;\n\t\t\tuniform float roughness;\n\t\t\tuniform float mipInt;\n\n\t\t\t#define ENVMAP_TYPE_CUBE_UV\n\t\t\t#include <cube_uv_reflection_fragment>\n\n\t\t\t#define PI 3.14159265359\n\n\t\t\t// Van der Corput radical inverse\n\t\t\tfloat radicalInverse_VdC(uint bits) {\n\t\t\t\tbits = (bits << 16u) | (bits >> 16u);\n\t\t\t\tbits = ((bits & 0x55555555u) << 1u) | ((bits & 0xAAAAAAAAu) >> 1u);\n\t\t\t\tbits = ((bits & 0x33333333u) << 2u) | ((bits & 0xCCCCCCCCu) >> 2u);\n\t\t\t\tbits = ((bits & 0x0F0F0F0Fu) << 4u) | ((bits & 0xF0F0F0F0u) >> 4u);\n\t\t\t\tbits = ((bits & 0x00FF00FFu) << 8u) | ((bits & 0xFF00FF00u) >> 8u);\n\t\t\t\treturn float(bits) * 2.3283064365386963e-10; // / 0x100000000\n\t\t\t}\n\n\t\t\t// Hammersley sequence\n\t\t\tvec2 hammersley(uint i, uint N) {\n\t\t\t\treturn vec2(float(i) / float(N), radicalInverse_VdC(i));\n\t\t\t}\n\n\t\t\t// GGX VNDF importance sampling (Eric Heitz 2018)\n\t\t\t// \"Sampling the GGX Distribution of Visible Normals\"\n\t\t\t// https://jcgt.org/published/0007/04/01/\n\t\t\tvec3 importanceSampleGGX_VNDF(vec2 Xi, vec3 V, float roughness) {\n\t\t\t\tfloat alpha = roughness * roughness;\n\n\t\t\t\t// Section 4.1: Orthonormal basis\n\t\t\t\tvec3 T1 = vec3(1.0, 0.0, 0.0);\n\t\t\t\tvec3 T2 = cross(V, T1);\n\n\t\t\t\t// Section 4.2: Parameterization of projected area\n\t\t\t\tfloat r = sqrt(Xi.x);\n\t\t\t\tfloat phi = 2.0 * PI * Xi.y;\n\t\t\t\tfloat t1 = r * cos(phi);\n\t\t\t\tfloat t2 = r * sin(phi);\n\t\t\t\tfloat s = 0.5 * (1.0 + V.z);\n\t\t\t\tt2 = (1.0 - s) * sqrt(1.0 - t1 * t1) + s * t2;\n\n\t\t\t\t// Section 4.3: Reprojection onto hemisphere\n\t\t\t\tvec3 Nh = t1 * T1 + t2 * T2 + sqrt(max(0.0, 1.0 - t1 * t1 - t2 * t2)) * V;\n\n\t\t\t\t// Section 3.4: Transform back to ellipsoid configuration\n\t\t\t\treturn normalize(vec3(alpha * Nh.x, alpha * Nh.y, max(0.0, Nh.z)));\n\t\t\t}\n\n\t\t\tvoid main() {\n\t\t\t\tvec3 N = normalize(vOutputDirection);\n\t\t\t\tvec3 V = N; // Assume view direction equals normal for pre-filtering\n\n\t\t\t\tvec3 prefilteredColor = vec3(0.0);\n\t\t\t\tfloat totalWeight = 0.0;\n\n\t\t\t\t// For very low roughness, just sample the environment directly\n\t\t\t\tif (roughness < 0.001) {\n\t\t\t\t\tgl_FragColor = vec4(bilinearCubeUV(envMap, N, mipInt), 1.0);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// Tangent space basis for VNDF sampling\n\t\t\t\tvec3 up = abs(N.z) < 0.999 ? vec3(0.0, 0.0, 1.0) : vec3(1.0, 0.0, 0.0);\n\t\t\t\tvec3 tangent = normalize(cross(up, N));\n\t\t\t\tvec3 bitangent = cross(N, tangent);\n\n\t\t\t\tfor(uint i = 0u; i < uint(GGX_SAMPLES); i++) {\n\t\t\t\t\tvec2 Xi = hammersley(i, uint(GGX_SAMPLES));\n\n\t\t\t\t\t// For PMREM, V = N, so in tangent space V is always (0, 0, 1)\n\t\t\t\t\tvec3 H_tangent = importanceSampleGGX_VNDF(Xi, vec3(0.0, 0.0, 1.0), roughness);\n\n\t\t\t\t\t// Transform H back to world space\n\t\t\t\t\tvec3 H = normalize(tangent * H_tangent.x + bitangent * H_tangent.y + N * H_tangent.z);\n\t\t\t\t\tvec3 L = normalize(2.0 * dot(V, H) * H - V);\n\n\t\t\t\t\tfloat NdotL = max(dot(N, L), 0.0);\n\n\t\t\t\t\tif(NdotL > 0.0) {\n\t\t\t\t\t\t// Sample environment at fixed mip level\n\t\t\t\t\t\t// VNDF importance sampling handles the distribution filtering\n\t\t\t\t\t\tvec3 sampleColor = bilinearCubeUV(envMap, L, mipInt);\n\n\t\t\t\t\t\t// Weight by NdotL for the split-sum approximation\n\t\t\t\t\t\t// VNDF PDF naturally accounts for the visible microfacet distribution\n\t\t\t\t\t\tprefilteredColor += sampleColor * NdotL;\n\t\t\t\t\t\ttotalWeight += NdotL;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif (totalWeight > 0.0) {\n\t\t\t\t\tprefilteredColor = prefilteredColor / totalWeight;\n\t\t\t\t}\n\n\t\t\t\tgl_FragColor = vec4(prefilteredColor, 1.0);\n\t\t\t}\n\t\t`,blending:Pt,depthTest:!1,depthWrite:!1})}function _c(e,n,t){let i=new Float32Array(Ht),c=new Be(0,1,0);return new Dt({name:\"SphericalGaussianBlur\",defines:{n:Ht,CUBEUV_TEXEL_WIDTH:1/n,CUBEUV_TEXEL_HEIGHT:1/t,CUBEUV_MAX_MIP:`${e}.0`},uniforms:{envMap:{value:null},samples:{value:1},weights:{value:i},latitudinal:{value:!1},dTheta:{value:0},mipInt:{value:0},poleAxis:{value:c}},vertexShader:Cn(),fragmentShader:`\n\n\t\t\tprecision mediump float;\n\t\t\tprecision mediump int;\n\n\t\t\tvarying vec3 vOutputDirection;\n\n\t\t\tuniform sampler2D envMap;\n\t\t\tuniform int samples;\n\t\t\tuniform float weights[ n ];\n\t\t\tuniform bool latitudinal;\n\t\t\tuniform float dTheta;\n\t\t\tuniform float mipInt;\n\t\t\tuniform vec3 poleAxis;\n\n\t\t\t#define ENVMAP_TYPE_CUBE_UV\n\t\t\t#include <cube_uv_reflection_fragment>\n\n\t\t\tvec3 getSample( float theta, vec3 axis ) {\n\n\t\t\t\tfloat cosTheta = cos( theta );\n\t\t\t\t// Rodrigues' axis-angle rotation\n\t\t\t\tvec3 sampleDirection = vOutputDirection * cosTheta\n\t\t\t\t\t+ cross( axis, vOutputDirection ) * sin( theta )\n\t\t\t\t\t+ axis * dot( axis, vOutputDirection ) * ( 1.0 - cosTheta );\n\n\t\t\t\treturn bilinearCubeUV( envMap, sampleDirection, mipInt );\n\n\t\t\t}\n\n\t\t\tvoid main() {\n\n\t\t\t\tvec3 axis = latitudinal ? poleAxis : cross( poleAxis, vOutputDirection );\n\n\t\t\t\tif ( all( equal( axis, vec3( 0.0 ) ) ) ) {\n\n\t\t\t\t\taxis = vec3( vOutputDirection.z, 0.0, - vOutputDirection.x );\n\n\t\t\t\t}\n\n\t\t\t\taxis = normalize( axis );\n\n\t\t\t\tgl_FragColor = vec4( 0.0, 0.0, 0.0, 1.0 );\n\t\t\t\tgl_FragColor.rgb += weights[ 0 ] * getSample( 0.0, axis );\n\n\t\t\t\tfor ( int i = 1; i < n; i++ ) {\n\n\t\t\t\t\tif ( i >= samples ) {\n\n\t\t\t\t\t\tbreak;\n\n\t\t\t\t\t}\n\n\t\t\t\t\tfloat theta = dTheta * float( i );\n\t\t\t\t\tgl_FragColor.rgb += weights[ i ] * getSample( -1.0 * theta, axis );\n\t\t\t\t\tgl_FragColor.rgb += weights[ i ] * getSample( theta, axis );\n\n\t\t\t\t}\n\n\t\t\t}\n\t\t`,blending:Pt,depthTest:!1,depthWrite:!1})}function rr(){return new Dt({name:\"EquirectangularToCubeUV\",uniforms:{envMap:{value:null}},vertexShader:Cn(),fragmentShader:`\n\n\t\t\tprecision mediump float;\n\t\t\tprecision mediump int;\n\n\t\t\tvarying vec3 vOutputDirection;\n\n\t\t\tuniform sampler2D envMap;\n\n\t\t\t#include <common>\n\n\t\t\tvoid main() {\n\n\t\t\t\tvec3 outputDirection = normalize( vOutputDirection );\n\t\t\t\tvec2 uv = equirectUv( outputDirection );\n\n\t\t\t\tgl_FragColor = vec4( texture2D ( envMap, uv ).rgb, 1.0 );\n\n\t\t\t}\n\t\t`,blending:Pt,depthTest:!1,depthWrite:!1})}function ar(){return new Dt({name:\"CubemapToCubeUV\",uniforms:{envMap:{value:null},flipEnvMap:{value:-1}},vertexShader:Cn(),fragmentShader:`\n\n\t\t\tprecision mediump float;\n\t\t\tprecision mediump int;\n\n\t\t\tuniform float flipEnvMap;\n\n\t\t\tvarying vec3 vOutputDirection;\n\n\t\t\tuniform samplerCube envMap;\n\n\t\t\tvoid main() {\n\n\t\t\t\tgl_FragColor = textureCube( envMap, vec3( flipEnvMap * vOutputDirection.x, vOutputDirection.yz ) );\n\n\t\t\t}\n\t\t`,blending:Pt,depthTest:!1,depthWrite:!1})}function Cn(){return`\n\n\t\tprecision mediump float;\n\t\tprecision mediump int;\n\n\t\tattribute float faceIndex;\n\n\t\tvarying vec3 vOutputDirection;\n\n\t\t// RH coordinate system; PMREM face-indexing convention\n\t\tvec3 getDirection( vec2 uv, float face ) {\n\n\t\t\tuv = 2.0 * uv - 1.0;\n\n\t\t\tvec3 direction = vec3( uv, 1.0 );\n\n\t\t\tif ( face == 0.0 ) {\n\n\t\t\t\tdirection = direction.zyx; // ( 1, v, u ) pos x\n\n\t\t\t} else if ( face == 1.0 ) {\n\n\t\t\t\tdirection = direction.xzy;\n\t\t\t\tdirection.xz *= -1.0; // ( -u, 1, -v ) pos y\n\n\t\t\t} else if ( face == 2.0 ) {\n\n\t\t\t\tdirection.x *= -1.0; // ( -u, v, 1 ) pos z\n\n\t\t\t} else if ( face == 3.0 ) {\n\n\t\t\t\tdirection = direction.zyx;\n\t\t\t\tdirection.xz *= -1.0; // ( -1, v, -u ) neg x\n\n\t\t\t} else if ( face == 4.0 ) {\n\n\t\t\t\tdirection = direction.xzy;\n\t\t\t\tdirection.xy *= -1.0; // ( -u, -1, v ) neg y\n\n\t\t\t} else if ( face == 5.0 ) {\n\n\t\t\t\tdirection.z *= -1.0; // ( u, v, -1 ) neg z\n\n\t\t\t}\n\n\t\t\treturn direction;\n\n\t\t}\n\n\t\tvoid main() {\n\n\t\t\tvOutputDirection = getDirection( uv, faceIndex );\n\t\t\tgl_Position = vec4( position, 1.0 );\n\n\t\t}\n\t`}var Mn=class extends Tt{constructor(n=1,t={}){super(n,n,t),this.isWebGLCubeRenderTarget=!0;let i={width:n,height:n,depth:1},c=[i,i,i,i,i,i];this.texture=new Lr(c),this._setTextureOptions(t),this.texture.isRenderTargetTexture=!0}fromEquirectangularTexture(n,t){this.texture.type=t.type,this.texture.colorSpace=t.colorSpace,this.texture.generateMipmaps=t.generateMipmaps,this.texture.minFilter=t.minFilter,this.texture.magFilter=t.magFilter;let i={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`},c=new ti(5,5,5),a=new Dt({name:\"CubemapFromEquirect\",uniforms:zn(i.uniforms),vertexShader:i.vertexShader,fragmentShader:i.fragmentShader,side:_t,blending:Pt});a.uniforms.tEquirect.value=t;let d=new Lt(c,a),_=t.minFilter;return t.minFilter===qt&&(t.minFilter=mt),new sa(1,10,this).update(n,d),t.minFilter=_,d.geometry.dispose(),d.material.dispose(),this}clear(n,t=!0,i=!0,c=!0){let a=n.getRenderTarget();for(let d=0;d<6;d++)n.setRenderTarget(this,d),n.clear(t,i,c);n.setRenderTarget(a)}};function gc(e){let n=new WeakMap,t=new WeakMap,i=null;function c(p,S=!1){return p==null?null:S?d(p):a(p)}function a(p){if(p&&p.isTexture){let S=p.mapping;if(S===Dn||S===Un)if(n.has(p)){let M=n.get(p).texture;return _(M,p.mapping)}else{let M=p.image;if(M&&M.height>0){let y=new Mn(M.height);return y.fromEquirectangularTexture(e,p),n.set(p,y),p.addEventListener(\"dispose\",C),_(y.texture,p.mapping)}else return null}}return p}function d(p){if(p&&p.isTexture){let S=p.mapping,M=S===Dn||S===Un,y=S===sn||S===Qt;if(M||y){let l=t.get(p),s=l!==void 0?l.texture.pmremVersion:0;if(p.isRenderTargetTexture&&p.pmremVersion!==s)return i===null&&(i=new xn(e)),l=M?i.fromEquirectangular(p,l):i.fromCubemap(p,l),l.texture.pmremVersion=p.pmremVersion,t.set(p,l),l.texture;if(l!==void 0)return l.texture;{let g=p.image;return M&&g&&g.height>0||y&&g&&L(g)?(i===null&&(i=new xn(e)),l=M?i.fromEquirectangular(p):i.fromCubemap(p),l.texture.pmremVersion=p.pmremVersion,t.set(p,l),p.addEventListener(\"dispose\",B),l.texture):null}}}return p}function _(p,S){return S===Dn?p.mapping=sn:S===Un&&(p.mapping=Qt),p}function L(p){let S=0,M=6;for(let y=0;y<M;y++)p[y]!==void 0&&S++;return S===M}function C(p){let S=p.target;S.removeEventListener(\"dispose\",C);let M=n.get(S);M!==void 0&&(n.delete(S),M.dispose())}function B(p){let S=p.target;S.removeEventListener(\"dispose\",B);let M=t.get(S);M!==void 0&&(t.delete(S),M.dispose())}function D(){n=new WeakMap,t=new WeakMap,i!==null&&(i.dispose(),i=null)}return{get:c,dispose:D}}function vc(e){let n={};function t(i){if(n[i]!==void 0)return n[i];let c=e.getExtension(i);return n[i]=c,c}return{has:function(i){return t(i)!==null},init:function(){t(\"EXT_color_buffer_float\"),t(\"WEBGL_clip_cull_distance\"),t(\"OES_texture_float_linear\"),t(\"EXT_color_buffer_half_float\"),t(\"WEBGL_multisampled_render_to_texture\"),t(\"WEBGL_render_shared_exponent\")},get:function(i){let c=t(i);return c===null&&Dr(\"WebGLRenderer: \"+i+\" extension not supported.\"),c}}}function Sc(e,n,t,i){let c={},a=new WeakMap;function d(D){let p=D.target;p.index!==null&&n.remove(p.index);for(let M in p.attributes)n.remove(p.attributes[M]);p.removeEventListener(\"dispose\",d),delete c[p.id];let S=a.get(p);S&&(n.remove(S),a.delete(p)),i.releaseStatesOfGeometry(p),p.isInstancedBufferGeometry===!0&&delete p._maxInstanceCount,t.memory.geometries--}function _(D,p){return c[p.id]===!0||(p.addEventListener(\"dispose\",d),c[p.id]=!0,t.memory.geometries++),p}function L(D){let p=D.attributes;for(let S in p)n.update(p[S],e.ARRAY_BUFFER)}function C(D){let p=[],S=D.index,M=D.attributes.position,y=0;if(M===void 0)return;if(S!==null){let g=S.array;y=S.version;for(let T=0,E=g.length;T<E;T+=3){let N=g[T+0],b=g[T+1],w=g[T+2];p.push(N,b,b,w,w,N)}}else{let g=M.array;y=M.version;for(let T=0,E=g.length/3-1;T<E;T+=3){let N=T+0,b=T+1,w=T+2;p.push(N,b,b,w,w,N)}}let l=new(M.count>=65535?la:ca)(p,1);l.version=y;let s=a.get(D);s&&n.remove(s),a.set(D,l)}function B(D){let p=a.get(D);if(p){let S=D.index;S!==null&&p.version<S.version&&C(D)}else C(D);return a.get(D)}return{get:_,update:L,getWireframeAttribute:B}}function Ec(e,n,t){let i;function c(p){i=p}let a,d;function _(p){a=p.type,d=p.bytesPerElement}function L(p,S){e.drawElements(i,S,a,p*d),t.update(S,i,1)}function C(p,S,M){M!==0&&(e.drawElementsInstanced(i,S,a,p*d,M),t.update(S,i,M))}function B(p,S,M){if(M===0)return;n.get(\"WEBGL_multi_draw\").multiDrawElementsWEBGL(i,S,0,a,p,0,M);let l=0;for(let s=0;s<M;s++)l+=S[s];t.update(l,i,1)}function D(p,S,M,y){if(M===0)return;let l=n.get(\"WEBGL_multi_draw\");if(l===null)for(let s=0;s<p.length;s++)C(p[s]/d,S[s],y[s]);else{l.multiDrawElementsInstancedWEBGL(i,S,0,a,p,0,y,0,M);let s=0;for(let g=0;g<M;g++)s+=S[g]*y[g];t.update(s,i,1)}}this.setMode=c,this.setIndex=_,this.render=L,this.renderInstances=C,this.renderMultiDraw=B,this.renderMultiDrawInstances=D}function xc(e){let n={geometries:0,textures:0},t={frame:0,calls:0,triangles:0,points:0,lines:0};function i(a,d,_){switch(t.calls++,d){case e.TRIANGLES:t.triangles+=_*(a/3);break;case e.LINES:t.lines+=_*(a/2);break;case e.LINE_STRIP:t.lines+=_*(a-1);break;case e.LINE_LOOP:t.lines+=_*a;break;case e.POINTS:t.points+=_*a;break;default:Ze(\"WebGLInfo: Unknown draw mode:\",d);break}}function c(){t.calls=0,t.triangles=0,t.points=0,t.lines=0}return{memory:n,render:t,programs:null,autoReset:!0,reset:c,update:i}}function Mc(e,n,t){let i=new WeakMap,c=new ut;function a(d,_,L){let C=d.morphTargetInfluences,B=_.morphAttributes.position||_.morphAttributes.normal||_.morphAttributes.color,D=B!==void 0?B.length:0,p=i.get(_);if(p===void 0||p.count!==D){let h=function(){w.dispose(),i.delete(_),_.removeEventListener(\"dispose\",h)};p!==void 0&&p.texture.dispose();let S=_.morphAttributes.position!==void 0,M=_.morphAttributes.normal!==void 0,y=_.morphAttributes.color!==void 0,l=_.morphAttributes.position||[],s=_.morphAttributes.normal||[],g=_.morphAttributes.color||[],T=0;S===!0&&(T=1),M===!0&&(T=2),y===!0&&(T=3);let E=_.attributes.position.count*T,N=1;E>n.maxTextureSize&&(N=Math.ceil(E/n.maxTextureSize),E=n.maxTextureSize);let b=new Float32Array(E*N*4*D),w=new Ur(b,E,N,D);w.type=It,w.needsUpdate=!0;let f=T*4;for(let $=0;$<D;$++){let R=l[$],V=s[$],z=g[$],W=E*N*4*$;for(let Y=0;Y<R.count;Y++){let O=Y*f;S===!0&&(c.fromBufferAttribute(R,Y),b[W+O+0]=c.x,b[W+O+1]=c.y,b[W+O+2]=c.z,b[W+O+3]=0),M===!0&&(c.fromBufferAttribute(V,Y),b[W+O+4]=c.x,b[W+O+5]=c.y,b[W+O+6]=c.z,b[W+O+7]=0),y===!0&&(c.fromBufferAttribute(z,Y),b[W+O+8]=c.x,b[W+O+9]=c.y,b[W+O+10]=c.z,b[W+O+11]=z.itemSize===4?c.w:1)}}p={count:D,texture:w,size:new pt(E,N)},i.set(_,p),_.addEventListener(\"dispose\",h)}if(d.isInstancedMesh===!0&&d.morphTexture!==null)L.getUniforms().setValue(e,\"morphTexture\",d.morphTexture,t);else{let S=0;for(let y=0;y<C.length;y++)S+=C[y];let M=_.morphTargetsRelative?1:1-S;L.getUniforms().setValue(e,\"morphTargetBaseInfluence\",M),L.getUniforms().setValue(e,\"morphTargetInfluences\",C)}L.getUniforms().setValue(e,\"morphTargetsTexture\",p.texture,t),L.getUniforms().setValue(e,\"morphTargetsTextureSize\",p.size)}return{update:a}}function Tc(e,n,t,i,c){let a=new WeakMap;function d(C){let B=c.render.frame,D=C.geometry,p=n.get(C,D);if(a.get(p)!==B&&(n.update(p),a.set(p,B)),C.isInstancedMesh&&(C.hasEventListener(\"dispose\",L)===!1&&C.addEventListener(\"dispose\",L),a.get(C)!==B&&(t.update(C.instanceMatrix,e.ARRAY_BUFFER),C.instanceColor!==null&&t.update(C.instanceColor,e.ARRAY_BUFFER),a.set(C,B))),C.isSkinnedMesh){let S=C.skeleton;a.get(S)!==B&&(S.update(),a.set(S,B))}return p}function _(){a=new WeakMap}function L(C){let B=C.target;B.removeEventListener(\"dispose\",L),i.releaseStatesOfObject(B),t.remove(B.instanceMatrix),B.instanceColor!==null&&t.remove(B.instanceColor)}return{update:d,dispose:_}}var Ac={[Br]:\"LINEAR_TONE_MAPPING\",[Or]:\"REINHARD_TONE_MAPPING\",[Fr]:\"CINEON_TONE_MAPPING\",[yr]:\"ACES_FILMIC_TONE_MAPPING\",[Nr]:\"AGX_TONE_MAPPING\",[Ir]:\"NEUTRAL_TONE_MAPPING\",[wr]:\"CUSTOM_TONE_MAPPING\"};function Rc(e,n,t,i,c){let a=new Tt(n,t,{type:e,depthBuffer:i,stencilBuffer:c}),d=new Tt(n,t,{type:yt,depthBuffer:!1,stencilBuffer:!1}),_=new An;_.setAttribute(\"position\",new pi([-1,3,0,-1,-1,0,3,-1,0],3)),_.setAttribute(\"uv\",new pi([0,2,0,0,2,0],2));let L=new fa({uniforms:{tDiffuse:{value:null}},vertexShader:`\n\t\t\tprecision highp float;\n\n\t\t\tuniform mat4 modelViewMatrix;\n\t\t\tuniform mat4 projectionMatrix;\n\n\t\t\tattribute vec3 position;\n\t\t\tattribute vec2 uv;\n\n\t\t\tvarying vec2 vUv;\n\n\t\t\tvoid main() {\n\t\t\t\tvUv = uv;\n\t\t\t\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\n\t\t\t}`,fragmentShader:`\n\t\t\tprecision highp float;\n\n\t\t\tuniform sampler2D tDiffuse;\n\n\t\t\tvarying vec2 vUv;\n\n\t\t\t#include <tonemapping_pars_fragment>\n\t\t\t#include <colorspace_pars_fragment>\n\n\t\t\tvoid main() {\n\t\t\t\tgl_FragColor = texture2D( tDiffuse, vUv );\n\n\t\t\t\t#ifdef LINEAR_TONE_MAPPING\n\t\t\t\t\tgl_FragColor.rgb = LinearToneMapping( gl_FragColor.rgb );\n\t\t\t\t#elif defined( REINHARD_TONE_MAPPING )\n\t\t\t\t\tgl_FragColor.rgb = ReinhardToneMapping( gl_FragColor.rgb );\n\t\t\t\t#elif defined( CINEON_TONE_MAPPING )\n\t\t\t\t\tgl_FragColor.rgb = CineonToneMapping( gl_FragColor.rgb );\n\t\t\t\t#elif defined( ACES_FILMIC_TONE_MAPPING )\n\t\t\t\t\tgl_FragColor.rgb = ACESFilmicToneMapping( gl_FragColor.rgb );\n\t\t\t\t#elif defined( AGX_TONE_MAPPING )\n\t\t\t\t\tgl_FragColor.rgb = AgXToneMapping( gl_FragColor.rgb );\n\t\t\t\t#elif defined( NEUTRAL_TONE_MAPPING )\n\t\t\t\t\tgl_FragColor.rgb = NeutralToneMapping( gl_FragColor.rgb );\n\t\t\t\t#elif defined( CUSTOM_TONE_MAPPING )\n\t\t\t\t\tgl_FragColor.rgb = CustomToneMapping( gl_FragColor.rgb );\n\t\t\t\t#endif\n\n\t\t\t\t#ifdef SRGB_TRANSFER\n\t\t\t\t\tgl_FragColor = sRGBTransferOETF( gl_FragColor );\n\t\t\t\t#endif\n\t\t\t}`,depthTest:!1,depthWrite:!1}),C=new Lt(_,L),B=new Pr(-1,1,1,-1,0,1),D=null,p=null,S=!1,M,y=null,l=[],s=!1;this.setSize=function(g,T){a.setSize(g,T),d.setSize(g,T);for(let E=0;E<l.length;E++){let N=l[E];N.setSize&&N.setSize(g,T)}},this.setEffects=function(g){l=g,s=l.length>0&&l[0].isRenderPass===!0;let T=a.width,E=a.height;for(let N=0;N<l.length;N++){let b=l[N];b.setSize&&b.setSize(T,E)}},this.begin=function(g,T){if(S||g.toneMapping===Mt&&l.length===0)return!1;if(y=T,T!==null){let E=T.width,N=T.height;(a.width!==E||a.height!==N)&&this.setSize(E,N)}return s===!1&&g.setRenderTarget(a),M=g.toneMapping,g.toneMapping=Mt,!0},this.hasRenderPass=function(){return s},this.end=function(g,T){g.toneMapping=M,S=!0;let E=a,N=d;for(let b=0;b<l.length;b++){let w=l[b];if(w.enabled!==!1&&(w.render(g,N,E,T),w.needsSwap!==!1)){let f=E;E=N,N=f}}if(D!==g.outputColorSpace||p!==g.toneMapping){D=g.outputColorSpace,p=g.toneMapping,L.defines={},it.getTransfer(D)===$e&&(L.defines.SRGB_TRANSFER=\"\");let b=Ac[p];b&&(L.defines[b]=\"\"),L.needsUpdate=!0}L.uniforms.tDiffuse.value=E.texture,g.setRenderTarget(y),g.render(C,B),y=null,S=!1},this.isCompositing=function(){return S},this.dispose=function(){a.dispose(),d.dispose(),_.dispose(),L.dispose()}}var Kr=new ua,Yn=new Sn(1,1),$r=new Ur,Zr=new da,Qr=new Lr,or=[],sr=[],lr=new Float32Array(16),cr=new Float32Array(9),fr=new Float32Array(4);function jt(e,n,t){let i=e[0];if(i<=0||i>0)return e;let c=n*t,a=or[c];if(a===void 0&&(a=new Float32Array(c),or[c]=a),n!==0){i.toArray(a,0);for(let d=1,_=0;d!==n;++d)_+=t,e[d].toArray(a,_)}return a}function at(e,n){if(e.length!==n.length)return!1;for(let t=0,i=e.length;t<i;t++)if(e[t]!==n[t])return!1;return!0}function ot(e,n){for(let t=0,i=n.length;t<i;t++)e[t]=n[t]}function bn(e,n){let t=sr[n];t===void 0&&(t=new Int32Array(n),sr[n]=t);for(let i=0;i!==n;++i)t[i]=e.allocateTextureUnit();return t}function Cc(e,n){let t=this.cache;t[0]!==n&&(e.uniform1f(this.addr,n),t[0]=n)}function bc(e,n){let t=this.cache;if(n.x!==void 0)(t[0]!==n.x||t[1]!==n.y)&&(e.uniform2f(this.addr,n.x,n.y),t[0]=n.x,t[1]=n.y);else{if(at(t,n))return;e.uniform2fv(this.addr,n),ot(t,n)}}function Pc(e,n){let t=this.cache;if(n.x!==void 0)(t[0]!==n.x||t[1]!==n.y||t[2]!==n.z)&&(e.uniform3f(this.addr,n.x,n.y,n.z),t[0]=n.x,t[1]=n.y,t[2]=n.z);else if(n.r!==void 0)(t[0]!==n.r||t[1]!==n.g||t[2]!==n.b)&&(e.uniform3f(this.addr,n.r,n.g,n.b),t[0]=n.r,t[1]=n.g,t[2]=n.b);else{if(at(t,n))return;e.uniform3fv(this.addr,n),ot(t,n)}}function Lc(e,n){let t=this.cache;if(n.x!==void 0)(t[0]!==n.x||t[1]!==n.y||t[2]!==n.z||t[3]!==n.w)&&(e.uniform4f(this.addr,n.x,n.y,n.z,n.w),t[0]=n.x,t[1]=n.y,t[2]=n.z,t[3]=n.w);else{if(at(t,n))return;e.uniform4fv(this.addr,n),ot(t,n)}}function Dc(e,n){let t=this.cache,i=n.elements;if(i===void 0){if(at(t,n))return;e.uniformMatrix2fv(this.addr,!1,n),ot(t,n)}else{if(at(t,i))return;fr.set(i),e.uniformMatrix2fv(this.addr,!1,fr),ot(t,i)}}function Uc(e,n){let t=this.cache,i=n.elements;if(i===void 0){if(at(t,n))return;e.uniformMatrix3fv(this.addr,!1,n),ot(t,n)}else{if(at(t,i))return;cr.set(i),e.uniformMatrix3fv(this.addr,!1,cr),ot(t,i)}}function wc(e,n){let t=this.cache,i=n.elements;if(i===void 0){if(at(t,n))return;e.uniformMatrix4fv(this.addr,!1,n),ot(t,n)}else{if(at(t,i))return;lr.set(i),e.uniformMatrix4fv(this.addr,!1,lr),ot(t,i)}}function Ic(e,n){let t=this.cache;t[0]!==n&&(e.uniform1i(this.addr,n),t[0]=n)}function Nc(e,n){let t=this.cache;if(n.x!==void 0)(t[0]!==n.x||t[1]!==n.y)&&(e.uniform2i(this.addr,n.x,n.y),t[0]=n.x,t[1]=n.y);else{if(at(t,n))return;e.uniform2iv(this.addr,n),ot(t,n)}}function yc(e,n){let t=this.cache;if(n.x!==void 0)(t[0]!==n.x||t[1]!==n.y||t[2]!==n.z)&&(e.uniform3i(this.addr,n.x,n.y,n.z),t[0]=n.x,t[1]=n.y,t[2]=n.z);else{if(at(t,n))return;e.uniform3iv(this.addr,n),ot(t,n)}}function Fc(e,n){let t=this.cache;if(n.x!==void 0)(t[0]!==n.x||t[1]!==n.y||t[2]!==n.z||t[3]!==n.w)&&(e.uniform4i(this.addr,n.x,n.y,n.z,n.w),t[0]=n.x,t[1]=n.y,t[2]=n.z,t[3]=n.w);else{if(at(t,n))return;e.uniform4iv(this.addr,n),ot(t,n)}}function Oc(e,n){let t=this.cache;t[0]!==n&&(e.uniform1ui(this.addr,n),t[0]=n)}function Bc(e,n){let t=this.cache;if(n.x!==void 0)(t[0]!==n.x||t[1]!==n.y)&&(e.uniform2ui(this.addr,n.x,n.y),t[0]=n.x,t[1]=n.y);else{if(at(t,n))return;e.uniform2uiv(this.addr,n),ot(t,n)}}function Gc(e,n){let t=this.cache;if(n.x!==void 0)(t[0]!==n.x||t[1]!==n.y||t[2]!==n.z)&&(e.uniform3ui(this.addr,n.x,n.y,n.z),t[0]=n.x,t[1]=n.y,t[2]=n.z);else{if(at(t,n))return;e.uniform3uiv(this.addr,n),ot(t,n)}}function Hc(e,n){let t=this.cache;if(n.x!==void 0)(t[0]!==n.x||t[1]!==n.y||t[2]!==n.z||t[3]!==n.w)&&(e.uniform4ui(this.addr,n.x,n.y,n.z,n.w),t[0]=n.x,t[1]=n.y,t[2]=n.z,t[3]=n.w);else{if(at(t,n))return;e.uniform4uiv(this.addr,n),ot(t,n)}}function Vc(e,n,t){let i=this.cache,c=t.allocateTextureUnit();i[0]!==c&&(e.uniform1i(this.addr,c),i[0]=c);let a;this.type===e.SAMPLER_2D_SHADOW?(Yn.compareFunction=t.isReversedDepthBuffer()?ni:ii,a=Yn):a=Kr,t.setTexture2D(n||a,c)}function kc(e,n,t){let i=this.cache,c=t.allocateTextureUnit();i[0]!==c&&(e.uniform1i(this.addr,c),i[0]=c),t.setTexture3D(n||Zr,c)}function Wc(e,n,t){let i=this.cache,c=t.allocateTextureUnit();i[0]!==c&&(e.uniform1i(this.addr,c),i[0]=c),t.setTextureCube(n||Qr,c)}function zc(e,n,t){let i=this.cache,c=t.allocateTextureUnit();i[0]!==c&&(e.uniform1i(this.addr,c),i[0]=c),t.setTexture2DArray(n||$r,c)}function Xc(e){switch(e){case 5126:return Cc;case 35664:return bc;case 35665:return Pc;case 35666:return Lc;case 35674:return Dc;case 35675:return Uc;case 35676:return wc;case 5124:case 35670:return Ic;case 35667:case 35671:return Nc;case 35668:case 35672:return yc;case 35669:case 35673:return Fc;case 5125:return Oc;case 36294:return Bc;case 36295:return Gc;case 36296:return Hc;case 35678:case 36198:case 36298:case 36306:case 35682:return Vc;case 35679:case 36299:case 36307:return kc;case 35680:case 36300:case 36308:case 36293:return Wc;case 36289:case 36303:case 36311:case 36292:return zc}}function Yc(e,n){e.uniform1fv(this.addr,n)}function qc(e,n){let t=jt(n,this.size,2);e.uniform2fv(this.addr,t)}function Kc(e,n){let t=jt(n,this.size,3);e.uniform3fv(this.addr,t)}function $c(e,n){let t=jt(n,this.size,4);e.uniform4fv(this.addr,t)}function Zc(e,n){let t=jt(n,this.size,4);e.uniformMatrix2fv(this.addr,!1,t)}function Qc(e,n){let t=jt(n,this.size,9);e.uniformMatrix3fv(this.addr,!1,t)}function Jc(e,n){let t=jt(n,this.size,16);e.uniformMatrix4fv(this.addr,!1,t)}function jc(e,n){e.uniform1iv(this.addr,n)}function ef(e,n){e.uniform2iv(this.addr,n)}function tf(e,n){e.uniform3iv(this.addr,n)}function nf(e,n){e.uniform4iv(this.addr,n)}function rf(e,n){e.uniform1uiv(this.addr,n)}function af(e,n){e.uniform2uiv(this.addr,n)}function of(e,n){e.uniform3uiv(this.addr,n)}function sf(e,n){e.uniform4uiv(this.addr,n)}function lf(e,n,t){let i=this.cache,c=n.length,a=bn(t,c);at(i,a)||(e.uniform1iv(this.addr,a),ot(i,a));let d;this.type===e.SAMPLER_2D_SHADOW?d=Yn:d=Kr;for(let _=0;_!==c;++_)t.setTexture2D(n[_]||d,a[_])}function cf(e,n,t){let i=this.cache,c=n.length,a=bn(t,c);at(i,a)||(e.uniform1iv(this.addr,a),ot(i,a));for(let d=0;d!==c;++d)t.setTexture3D(n[d]||Zr,a[d])}function ff(e,n,t){let i=this.cache,c=n.length,a=bn(t,c);at(i,a)||(e.uniform1iv(this.addr,a),ot(i,a));for(let d=0;d!==c;++d)t.setTextureCube(n[d]||Qr,a[d])}function df(e,n,t){let i=this.cache,c=n.length,a=bn(t,c);at(i,a)||(e.uniform1iv(this.addr,a),ot(i,a));for(let d=0;d!==c;++d)t.setTexture2DArray(n[d]||$r,a[d])}function uf(e){switch(e){case 5126:return Yc;case 35664:return qc;case 35665:return Kc;case 35666:return $c;case 35674:return Zc;case 35675:return Qc;case 35676:return Jc;case 5124:case 35670:return jc;case 35667:case 35671:return ef;case 35668:case 35672:return tf;case 35669:case 35673:return nf;case 5125:return rf;case 36294:return af;case 36295:return of;case 36296:return sf;case 35678:case 36198:case 36298:case 36306:case 35682:return lf;case 35679:case 36299:case 36307:return cf;case 35680:case 36300:case 36308:case 36293:return ff;case 36289:case 36303:case 36311:case 36292:return df}}var qn=class{constructor(n,t,i){this.id=n,this.addr=i,this.cache=[],this.type=t.type,this.setValue=Xc(t.type)}},Kn=class{constructor(n,t,i){this.id=n,this.addr=i,this.cache=[],this.type=t.type,this.size=t.size,this.setValue=uf(t.type)}},$n=class{constructor(n){this.id=n,this.seq=[],this.map={}}setValue(n,t,i){let c=this.seq;for(let a=0,d=c.length;a!==d;++a){let _=c[a];_.setValue(n,t[_.id],i)}}},kn=/(\\w+)(\\])?(\\[|\\.)?/g;function dr(e,n){e.seq.push(n),e.map[n.id]=n}function pf(e,n,t){let i=e.name,c=i.length;for(kn.lastIndex=0;;){let a=kn.exec(i),d=kn.lastIndex,_=a[1],L=a[2]===\"]\",C=a[3];if(L&&(_=_|0),C===void 0||C===\"[\"&&d+2===c){dr(t,C===void 0?new qn(_,e,n):new Kn(_,e,n));break}else{let D=t.map[_];D===void 0&&(D=new $n(_),dr(t,D)),t=D}}}var $t=class{constructor(n,t){this.seq=[],this.map={};let i=n.getProgramParameter(t,n.ACTIVE_UNIFORMS);for(let d=0;d<i;++d){let _=n.getActiveUniform(t,d),L=n.getUniformLocation(t,_.name);pf(_,L,this)}let c=[],a=[];for(let d of this.seq)d.type===n.SAMPLER_2D_SHADOW||d.type===n.SAMPLER_CUBE_SHADOW||d.type===n.SAMPLER_2D_ARRAY_SHADOW?c.push(d):a.push(d);c.length>0&&(this.seq=c.concat(a))}setValue(n,t,i,c){let a=this.map[t];a!==void 0&&a.setValue(n,i,c)}setOptional(n,t,i){let c=t[i];c!==void 0&&this.setValue(n,i,c)}static upload(n,t,i,c){for(let a=0,d=t.length;a!==d;++a){let _=t[a],L=i[_.id];L.needsUpdate!==!1&&_.setValue(n,L.value,c)}}static seqWithValue(n,t){let i=[];for(let c=0,a=n.length;c!==a;++c){let d=n[c];d.id in t&&i.push(d)}return i}};function ur(e,n,t){let i=e.createShader(n);return e.shaderSource(i,t),e.compileShader(i),i}var hf=37297,mf=0;function _f(e,n){let t=e.split(`\n`),i=[],c=Math.max(n-6,0),a=Math.min(n+6,t.length);for(let d=c;d<a;d++){let _=d+1;i.push(`${_===n?\">\":\" \"} ${_}: ${t[d]}`)}return i.join(`\n`)}var pr=new Oe;function gf(e){it._getMatrix(pr,it.workingColorSpace,e);let n=`mat3( ${pr.elements.map(t=>t.toFixed(4))} )`;switch(it.getTransfer(e)){case Gr:return[n,\"LinearTransferOETF\"];case $e:return[n,\"sRGBTransferOETF\"];default:return Ye(\"WebGLProgram: Unsupported color space: \",e),[n,\"LinearTransferOETF\"]}}function hr(e,n,t){let i=e.getShaderParameter(n,e.COMPILE_STATUS),a=(e.getShaderInfoLog(n)||\"\").trim();if(i&&a===\"\")return\"\";let d=/ERROR: 0:(\\d+)/.exec(a);if(d){let _=parseInt(d[1]);return t.toUpperCase()+`\n\n`+a+`\n\n`+_f(e.getShaderSource(n),_)}else return a}function vf(e,n){let t=gf(n);return[`vec4 ${e}( vec4 value ) {`,`\treturn ${t[1]}( vec4( value.rgb * ${t[0]}, value.a ) );`,\"}\"].join(`\n`)}var Sf={[Br]:\"Linear\",[Or]:\"Reinhard\",[Fr]:\"Cineon\",[yr]:\"ACESFilmic\",[Nr]:\"AgX\",[Ir]:\"Neutral\",[wr]:\"Custom\"};function Ef(e,n){let t=Sf[n];return t===void 0?(Ye(\"WebGLProgram: Unsupported toneMapping:\",n),\"vec3 \"+e+\"( vec3 color ) { return LinearToneMapping( color ); }\"):\"vec3 \"+e+\"( vec3 color ) { return \"+t+\"ToneMapping( color ); }\"}var hn=new Be;function xf(){it.getLuminanceCoefficients(hn);let e=hn.x.toFixed(4),n=hn.y.toFixed(4),t=hn.z.toFixed(4);return[\"float luminance( const in vec3 rgb ) {\",`\tconst vec3 weights = vec3( ${e}, ${n}, ${t} );`,\"\treturn dot( weights, rgb );\",\"}\"].join(`\n`)}function Mf(e){return[e.extensionClipCullDistance?\"#extension GL_ANGLE_clip_cull_distance : require\":\"\",e.extensionMultiDraw?\"#extension GL_ANGLE_multi_draw : require\":\"\"].filter(an).join(`\n`)}function Tf(e){let n=[];for(let t in e){let i=e[t];i!==!1&&n.push(\"#define \"+t+\" \"+i)}return n.join(`\n`)}function Af(e,n){let t={},i=e.getProgramParameter(n,e.ACTIVE_ATTRIBUTES);for(let c=0;c<i;c++){let a=e.getActiveAttrib(n,c),d=a.name,_=1;a.type===e.FLOAT_MAT2&&(_=2),a.type===e.FLOAT_MAT3&&(_=3),a.type===e.FLOAT_MAT4&&(_=4),t[d]={type:a.type,location:e.getAttribLocation(n,d),locationSize:_}}return t}function an(e){return e!==\"\"}function mr(e,n){let t=n.numSpotLightShadows+n.numSpotLightMaps-n.numSpotLightShadowsWithMaps;return e.replace(/NUM_DIR_LIGHTS/g,n.numDirLights).replace(/NUM_SPOT_LIGHTS/g,n.numSpotLights).replace(/NUM_SPOT_LIGHT_MAPS/g,n.numSpotLightMaps).replace(/NUM_SPOT_LIGHT_COORDS/g,t).replace(/NUM_RECT_AREA_LIGHTS/g,n.numRectAreaLights).replace(/NUM_POINT_LIGHTS/g,n.numPointLights).replace(/NUM_HEMI_LIGHTS/g,n.numHemiLights).replace(/NUM_DIR_LIGHT_SHADOWS/g,n.numDirLightShadows).replace(/NUM_SPOT_LIGHT_SHADOWS_WITH_MAPS/g,n.numSpotLightShadowsWithMaps).replace(/NUM_SPOT_LIGHT_SHADOWS/g,n.numSpotLightShadows).replace(/NUM_POINT_LIGHT_SHADOWS/g,n.numPointLightShadows)}function _r(e,n){return e.replace(/NUM_CLIPPING_PLANES/g,n.numClippingPlanes).replace(/UNION_CLIPPING_PLANES/g,n.numClippingPlanes-n.numClipIntersection)}var Rf=/^[ \\t]*#include +<([\\w\\d./]+)>/gm;function Zn(e){return e.replace(Rf,bf)}var Cf=new Map;function bf(e,n){let t=De[n];if(t===void 0){let i=Cf.get(n);if(i!==void 0)t=De[i],Ye('WebGLRenderer: Shader chunk \"%s\" has been deprecated. Use \"%s\" instead.',n,i);else throw new Error(\"Can not resolve #include <\"+n+\">\")}return Zn(t)}var Pf=/#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 gr(e){return e.replace(Pf,Lf)}function Lf(e,n,t,i){let c=\"\";for(let a=parseInt(n);a<parseInt(t);a++)c+=i.replace(/\\[\\s*i\\s*\\]/g,\"[ \"+a+\" ]\").replace(/UNROLLED_LOOP_INDEX/g,a);return c}function vr(e){let n=`precision ${e.precision} float;\n\tprecision ${e.precision} int;\n\tprecision ${e.precision} sampler2D;\n\tprecision ${e.precision} samplerCube;\n\tprecision ${e.precision} sampler3D;\n\tprecision ${e.precision} sampler2DArray;\n\tprecision ${e.precision} sampler2DShadow;\n\tprecision ${e.precision} samplerCubeShadow;\n\tprecision ${e.precision} sampler2DArrayShadow;\n\tprecision ${e.precision} isampler2D;\n\tprecision ${e.precision} isampler3D;\n\tprecision ${e.precision} isamplerCube;\n\tprecision ${e.precision} isampler2DArray;\n\tprecision ${e.precision} usampler2D;\n\tprecision ${e.precision} usampler3D;\n\tprecision ${e.precision} usamplerCube;\n\tprecision ${e.precision} usampler2DArray;\n\t`;return e.precision===\"highp\"?n+=`\n#define HIGH_PRECISION`:e.precision===\"mediump\"?n+=`\n#define MEDIUM_PRECISION`:e.precision===\"lowp\"&&(n+=`\n#define LOW_PRECISION`),n}var Df={[gn]:\"SHADOWMAP_TYPE_PCF\",[rn]:\"SHADOWMAP_TYPE_VSM\"};function Uf(e){return Df[e.shadowMapType]||\"SHADOWMAP_TYPE_BASIC\"}var wf={[sn]:\"ENVMAP_TYPE_CUBE\",[Qt]:\"ENVMAP_TYPE_CUBE\",[Tn]:\"ENVMAP_TYPE_CUBE_UV\"};function If(e){return e.envMap===!1?\"ENVMAP_TYPE_CUBE\":wf[e.envMapMode]||\"ENVMAP_TYPE_CUBE\"}var Nf={[Qt]:\"ENVMAP_MODE_REFRACTION\"};function yf(e){return e.envMap===!1?\"ENVMAP_MODE_REFLECTION\":Nf[e.envMapMode]||\"ENVMAP_MODE_REFLECTION\"}var Ff={[ma]:\"ENVMAP_BLENDING_MULTIPLY\",[ha]:\"ENVMAP_BLENDING_MIX\",[pa]:\"ENVMAP_BLENDING_ADD\"};function Of(e){return e.envMap===!1?\"ENVMAP_BLENDING_NONE\":Ff[e.combine]||\"ENVMAP_BLENDING_NONE\"}function Bf(e){let n=e.envMapCubeUVHeight;if(n===null)return null;let t=Math.log2(n)-2,i=1/n;return{texelWidth:1/(3*Math.max(Math.pow(2,t),112)),texelHeight:i,maxMip:t}}function Gf(e,n,t,i){let c=e.getContext(),a=t.defines,d=t.vertexShader,_=t.fragmentShader,L=Uf(t),C=If(t),B=yf(t),D=Of(t),p=Bf(t),S=Mf(t),M=Tf(a),y=c.createProgram(),l,s,g=t.glslVersion?\"#version \"+t.glslVersion+`\n`:\"\";t.isRawShaderMaterial?(l=[\"#define SHADER_TYPE \"+t.shaderType,\"#define SHADER_NAME \"+t.shaderName,M].filter(an).join(`\n`),l.length>0&&(l+=`\n`),s=[\"#define SHADER_TYPE \"+t.shaderType,\"#define SHADER_NAME \"+t.shaderName,M].filter(an).join(`\n`),s.length>0&&(s+=`\n`)):(l=[vr(t),\"#define SHADER_TYPE \"+t.shaderType,\"#define SHADER_NAME \"+t.shaderName,M,t.extensionClipCullDistance?\"#define USE_CLIP_DISTANCE\":\"\",t.batching?\"#define USE_BATCHING\":\"\",t.batchingColor?\"#define USE_BATCHING_COLOR\":\"\",t.instancing?\"#define USE_INSTANCING\":\"\",t.instancingColor?\"#define USE_INSTANCING_COLOR\":\"\",t.instancingMorph?\"#define USE_INSTANCING_MORPH\":\"\",t.useFog&&t.fog?\"#define USE_FOG\":\"\",t.useFog&&t.fogExp2?\"#define FOG_EXP2\":\"\",t.map?\"#define USE_MAP\":\"\",t.envMap?\"#define USE_ENVMAP\":\"\",t.envMap?\"#define \"+B:\"\",t.lightMap?\"#define USE_LIGHTMAP\":\"\",t.aoMap?\"#define USE_AOMAP\":\"\",t.bumpMap?\"#define USE_BUMPMAP\":\"\",t.normalMap?\"#define USE_NORMALMAP\":\"\",t.normalMapObjectSpace?\"#define USE_NORMALMAP_OBJECTSPACE\":\"\",t.normalMapTangentSpace?\"#define USE_NORMALMAP_TANGENTSPACE\":\"\",t.displacementMap?\"#define USE_DISPLACEMENTMAP\":\"\",t.emissiveMap?\"#define USE_EMISSIVEMAP\":\"\",t.anisotropy?\"#define USE_ANISOTROPY\":\"\",t.anisotropyMap?\"#define USE_ANISOTROPYMAP\":\"\",t.clearcoatMap?\"#define USE_CLEARCOATMAP\":\"\",t.clearcoatRoughnessMap?\"#define USE_CLEARCOAT_ROUGHNESSMAP\":\"\",t.clearcoatNormalMap?\"#define USE_CLEARCOAT_NORMALMAP\":\"\",t.iridescenceMap?\"#define USE_IRIDESCENCEMAP\":\"\",t.iridescenceThicknessMap?\"#define USE_IRIDESCENCE_THICKNESSMAP\":\"\",t.specularMap?\"#define USE_SPECULARMAP\":\"\",t.specularColorMap?\"#define USE_SPECULAR_COLORMAP\":\"\",t.specularIntensityMap?\"#define USE_SPECULAR_INTENSITYMAP\":\"\",t.roughnessMap?\"#define USE_ROUGHNESSMAP\":\"\",t.metalnessMap?\"#define USE_METALNESSMAP\":\"\",t.alphaMap?\"#define USE_ALPHAMAP\":\"\",t.alphaHash?\"#define USE_ALPHAHASH\":\"\",t.transmission?\"#define USE_TRANSMISSION\":\"\",t.transmissionMap?\"#define USE_TRANSMISSIONMAP\":\"\",t.thicknessMap?\"#define USE_THICKNESSMAP\":\"\",t.sheenColorMap?\"#define USE_SHEEN_COLORMAP\":\"\",t.sheenRoughnessMap?\"#define USE_SHEEN_ROUGHNESSMAP\":\"\",t.mapUv?\"#define MAP_UV \"+t.mapUv:\"\",t.alphaMapUv?\"#define ALPHAMAP_UV \"+t.alphaMapUv:\"\",t.lightMapUv?\"#define LIGHTMAP_UV \"+t.lightMapUv:\"\",t.aoMapUv?\"#define AOMAP_UV \"+t.aoMapUv:\"\",t.emissiveMapUv?\"#define EMISSIVEMAP_UV \"+t.emissiveMapUv:\"\",t.bumpMapUv?\"#define BUMPMAP_UV \"+t.bumpMapUv:\"\",t.normalMapUv?\"#define NORMALMAP_UV \"+t.normalMapUv:\"\",t.displacementMapUv?\"#define DISPLACEMENTMAP_UV \"+t.displacementMapUv:\"\",t.metalnessMapUv?\"#define METALNESSMAP_UV \"+t.metalnessMapUv:\"\",t.roughnessMapUv?\"#define ROUGHNESSMAP_UV \"+t.roughnessMapUv:\"\",t.anisotropyMapUv?\"#define ANISOTROPYMAP_UV \"+t.anisotropyMapUv:\"\",t.clearcoatMapUv?\"#define CLEARCOATMAP_UV \"+t.clearcoatMapUv:\"\",t.clearcoatNormalMapUv?\"#define CLEARCOAT_NORMALMAP_UV \"+t.clearcoatNormalMapUv:\"\",t.clearcoatRoughnessMapUv?\"#define CLEARCOAT_ROUGHNESSMAP_UV \"+t.clearcoatRoughnessMapUv:\"\",t.iridescenceMapUv?\"#define IRIDESCENCEMAP_UV \"+t.iridescenceMapUv:\"\",t.iridescenceThicknessMapUv?\"#define IRIDESCENCE_THICKNESSMAP_UV \"+t.iridescenceThicknessMapUv:\"\",t.sheenColorMapUv?\"#define SHEEN_COLORMAP_UV \"+t.sheenColorMapUv:\"\",t.sheenRoughnessMapUv?\"#define SHEEN_ROUGHNESSMAP_UV \"+t.sheenRoughnessMapUv:\"\",t.specularMapUv?\"#define SPECULARMAP_UV \"+t.specularMapUv:\"\",t.specularColorMapUv?\"#define SPECULAR_COLORMAP_UV \"+t.specularColorMapUv:\"\",t.specularIntensityMapUv?\"#define SPECULAR_INTENSITYMAP_UV \"+t.specularIntensityMapUv:\"\",t.transmissionMapUv?\"#define TRANSMISSIONMAP_UV \"+t.transmissionMapUv:\"\",t.thicknessMapUv?\"#define THICKNESSMAP_UV \"+t.thicknessMapUv:\"\",t.vertexTangents&&t.flatShading===!1?\"#define USE_TANGENT\":\"\",t.vertexColors?\"#define USE_COLOR\":\"\",t.vertexAlphas?\"#define USE_COLOR_ALPHA\":\"\",t.vertexUv1s?\"#define USE_UV1\":\"\",t.vertexUv2s?\"#define USE_UV2\":\"\",t.vertexUv3s?\"#define USE_UV3\":\"\",t.pointsUvs?\"#define USE_POINTS_UV\":\"\",t.flatShading?\"#define FLAT_SHADED\":\"\",t.skinning?\"#define USE_SKINNING\":\"\",t.morphTargets?\"#define USE_MORPHTARGETS\":\"\",t.morphNormals&&t.flatShading===!1?\"#define USE_MORPHNORMALS\":\"\",t.morphColors?\"#define USE_MORPHCOLORS\":\"\",t.morphTargetsCount>0?\"#define MORPHTARGETS_TEXTURE_STRIDE \"+t.morphTextureStride:\"\",t.morphTargetsCount>0?\"#define MORPHTARGETS_COUNT \"+t.morphTargetsCount:\"\",t.doubleSided?\"#define DOUBLE_SIDED\":\"\",t.flipSided?\"#define FLIP_SIDED\":\"\",t.shadowMapEnabled?\"#define USE_SHADOWMAP\":\"\",t.shadowMapEnabled?\"#define \"+L:\"\",t.sizeAttenuation?\"#define USE_SIZEATTENUATION\":\"\",t.numLightProbes>0?\"#define USE_LIGHT_PROBES\":\"\",t.logarithmicDepthBuffer?\"#define USE_LOGARITHMIC_DEPTH_BUFFER\":\"\",t.reversedDepthBuffer?\"#define USE_REVERSED_DEPTH_BUFFER\":\"\",\"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\",\"#ifdef USE_INSTANCING_MORPH\",\"\tuniform sampler2D morphTexture;\",\"#endif\",\"attribute vec3 position;\",\"attribute vec3 normal;\",\"attribute vec2 uv;\",\"#ifdef USE_UV1\",\"\tattribute vec2 uv1;\",\"#endif\",\"#ifdef USE_UV2\",\"\tattribute vec2 uv2;\",\"#endif\",\"#ifdef USE_UV3\",\"\tattribute vec2 uv3;\",\"#endif\",\"#ifdef USE_TANGENT\",\"\tattribute vec4 tangent;\",\"#endif\",\"#if defined( USE_COLOR_ALPHA )\",\"\tattribute vec4 color;\",\"#elif defined( USE_COLOR )\",\"\tattribute vec3 color;\",\"#endif\",\"#ifdef USE_SKINNING\",\"\tattribute vec4 skinIndex;\",\"\tattribute vec4 skinWeight;\",\"#endif\",`\n`].filter(an).join(`\n`),s=[vr(t),\"#define SHADER_TYPE \"+t.shaderType,\"#define SHADER_NAME \"+t.shaderName,M,t.useFog&&t.fog?\"#define USE_FOG\":\"\",t.useFog&&t.fogExp2?\"#define FOG_EXP2\":\"\",t.alphaToCoverage?\"#define ALPHA_TO_COVERAGE\":\"\",t.map?\"#define USE_MAP\":\"\",t.matcap?\"#define USE_MATCAP\":\"\",t.envMap?\"#define USE_ENVMAP\":\"\",t.envMap?\"#define \"+C:\"\",t.envMap?\"#define \"+B:\"\",t.envMap?\"#define \"+D:\"\",p?\"#define CUBEUV_TEXEL_WIDTH \"+p.texelWidth:\"\",p?\"#define CUBEUV_TEXEL_HEIGHT \"+p.texelHeight:\"\",p?\"#define CUBEUV_MAX_MIP \"+p.maxMip+\".0\":\"\",t.lightMap?\"#define USE_LIGHTMAP\":\"\",t.aoMap?\"#define USE_AOMAP\":\"\",t.bumpMap?\"#define USE_BUMPMAP\":\"\",t.normalMap?\"#define USE_NORMALMAP\":\"\",t.normalMapObjectSpace?\"#define USE_NORMALMAP_OBJECTSPACE\":\"\",t.normalMapTangentSpace?\"#define USE_NORMALMAP_TANGENTSPACE\":\"\",t.emissiveMap?\"#define USE_EMISSIVEMAP\":\"\",t.anisotropy?\"#define USE_ANISOTROPY\":\"\",t.anisotropyMap?\"#define USE_ANISOTROPYMAP\":\"\",t.clearcoat?\"#define USE_CLEARCOAT\":\"\",t.clearcoatMap?\"#define USE_CLEARCOATMAP\":\"\",t.clearcoatRoughnessMap?\"#define USE_CLEARCOAT_ROUGHNESSMAP\":\"\",t.clearcoatNormalMap?\"#define USE_CLEARCOAT_NORMALMAP\":\"\",t.dispersion?\"#define USE_DISPERSION\":\"\",t.iridescence?\"#define USE_IRIDESCENCE\":\"\",t.iridescenceMap?\"#define USE_IRIDESCENCEMAP\":\"\",t.iridescenceThicknessMap?\"#define USE_IRIDESCENCE_THICKNESSMAP\":\"\",t.specularMap?\"#define USE_SPECULARMAP\":\"\",t.specularColorMap?\"#define USE_SPECULAR_COLORMAP\":\"\",t.specularIntensityMap?\"#define USE_SPECULAR_INTENSITYMAP\":\"\",t.roughnessMap?\"#define USE_ROUGHNESSMAP\":\"\",t.metalnessMap?\"#define USE_METALNESSMAP\":\"\",t.alphaMap?\"#define USE_ALPHAMAP\":\"\",t.alphaTest?\"#define USE_ALPHATEST\":\"\",t.alphaHash?\"#define USE_ALPHAHASH\":\"\",t.sheen?\"#define USE_SHEEN\":\"\",t.sheenColorMap?\"#define USE_SHEEN_COLORMAP\":\"\",t.sheenRoughnessMap?\"#define USE_SHEEN_ROUGHNESSMAP\":\"\",t.transmission?\"#define USE_TRANSMISSION\":\"\",t.transmissionMap?\"#define USE_TRANSMISSIONMAP\":\"\",t.thicknessMap?\"#define USE_THICKNESSMAP\":\"\",t.vertexTangents&&t.flatShading===!1?\"#define USE_TANGENT\":\"\",t.vertexColors||t.instancingColor?\"#define USE_COLOR\":\"\",t.vertexAlphas||t.batchingColor?\"#define USE_COLOR_ALPHA\":\"\",t.vertexUv1s?\"#define USE_UV1\":\"\",t.vertexUv2s?\"#define USE_UV2\":\"\",t.vertexUv3s?\"#define USE_UV3\":\"\",t.pointsUvs?\"#define USE_POINTS_UV\":\"\",t.gradientMap?\"#define USE_GRADIENTMAP\":\"\",t.flatShading?\"#define FLAT_SHADED\":\"\",t.doubleSided?\"#define DOUBLE_SIDED\":\"\",t.flipSided?\"#define FLIP_SIDED\":\"\",t.shadowMapEnabled?\"#define USE_SHADOWMAP\":\"\",t.shadowMapEnabled?\"#define \"+L:\"\",t.premultipliedAlpha?\"#define PREMULTIPLIED_ALPHA\":\"\",t.numLightProbes>0?\"#define USE_LIGHT_PROBES\":\"\",t.decodeVideoTexture?\"#define DECODE_VIDEO_TEXTURE\":\"\",t.decodeVideoTextureEmissive?\"#define DECODE_VIDEO_TEXTURE_EMISSIVE\":\"\",t.logarithmicDepthBuffer?\"#define USE_LOGARITHMIC_DEPTH_BUFFER\":\"\",t.reversedDepthBuffer?\"#define USE_REVERSED_DEPTH_BUFFER\":\"\",\"uniform mat4 viewMatrix;\",\"uniform vec3 cameraPosition;\",\"uniform bool isOrthographic;\",t.toneMapping!==Mt?\"#define TONE_MAPPING\":\"\",t.toneMapping!==Mt?De.tonemapping_pars_fragment:\"\",t.toneMapping!==Mt?Ef(\"toneMapping\",t.toneMapping):\"\",t.dithering?\"#define DITHERING\":\"\",t.opaque?\"#define OPAQUE\":\"\",De.colorspace_pars_fragment,vf(\"linearToOutputTexel\",t.outputColorSpace),xf(),t.useDepthPacking?\"#define DEPTH_PACKING \"+t.depthPacking:\"\",`\n`].filter(an).join(`\n`)),d=Zn(d),d=mr(d,t),d=_r(d,t),_=Zn(_),_=mr(_,t),_=_r(_,t),d=gr(d),_=gr(_),t.isRawShaderMaterial!==!0&&(g=`#version 300 es\n`,l=[S,\"#define attribute in\",\"#define varying out\",\"#define texture2D texture\"].join(`\n`)+`\n`+l,s=[\"#define varying in\",t.glslVersion===hi?\"\":\"layout(location = 0) out highp vec4 pc_fragColor;\",t.glslVersion===hi?\"\":\"#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`+s);let T=g+l+d,E=g+s+_,N=ur(c,c.VERTEX_SHADER,T),b=ur(c,c.FRAGMENT_SHADER,E);c.attachShader(y,N),c.attachShader(y,b),t.index0AttributeName!==void 0?c.bindAttribLocation(y,0,t.index0AttributeName):t.morphTargets===!0&&c.bindAttribLocation(y,0,\"position\"),c.linkProgram(y);function w(R){if(e.debug.checkShaderErrors){let V=c.getProgramInfoLog(y)||\"\",z=c.getShaderInfoLog(N)||\"\",W=c.getShaderInfoLog(b)||\"\",Y=V.trim(),O=z.trim(),F=W.trim(),ie=!0,re=!0;if(c.getProgramParameter(y,c.LINK_STATUS)===!1)if(ie=!1,typeof e.debug.onShaderError==\"function\")e.debug.onShaderError(c,y,N,b);else{let Me=hr(c,N,\"vertex\"),Ae=hr(c,b,\"fragment\");Ze(\"THREE.WebGLProgram: Shader Error \"+c.getError()+\" - VALIDATE_STATUS \"+c.getProgramParameter(y,c.VALIDATE_STATUS)+`\n\nMaterial Name: `+R.name+`\nMaterial Type: `+R.type+`\n\nProgram Info Log: `+Y+`\n`+Me+`\n`+Ae)}else Y!==\"\"?Ye(\"WebGLProgram: Program Info Log:\",Y):(O===\"\"||F===\"\")&&(re=!1);re&&(R.diagnostics={runnable:ie,programLog:Y,vertexShader:{log:O,prefix:l},fragmentShader:{log:F,prefix:s}})}c.deleteShader(N),c.deleteShader(b),f=new $t(c,y),h=Af(c,y)}let f;this.getUniforms=function(){return f===void 0&&w(this),f};let h;this.getAttributes=function(){return h===void 0&&w(this),h};let $=t.rendererExtensionParallelShaderCompile===!1;return this.isReady=function(){return $===!1&&($=c.getProgramParameter(y,hf)),$},this.destroy=function(){i.releaseStatesOfProgram(this),c.deleteProgram(y),this.program=void 0},this.type=t.shaderType,this.name=t.shaderName,this.id=mf++,this.cacheKey=n,this.usedTimes=1,this.program=y,this.vertexShader=N,this.fragmentShader=b,this}var Hf=0,Qn=class{constructor(){this.shaderCache=new Map,this.materialCache=new Map}update(n){let t=n.vertexShader,i=n.fragmentShader,c=this._getShaderStage(t),a=this._getShaderStage(i),d=this._getShaderCacheForMaterial(n);return d.has(c)===!1&&(d.add(c),c.usedTimes++),d.has(a)===!1&&(d.add(a),a.usedTimes++),this}remove(n){let t=this.materialCache.get(n);for(let i of t)i.usedTimes--,i.usedTimes===0&&this.shaderCache.delete(i.code);return this.materialCache.delete(n),this}getVertexShaderID(n){return this._getShaderStage(n.vertexShader).id}getFragmentShaderID(n){return this._getShaderStage(n.fragmentShader).id}dispose(){this.shaderCache.clear(),this.materialCache.clear()}_getShaderCacheForMaterial(n){let t=this.materialCache,i=t.get(n);return i===void 0&&(i=new Set,t.set(n,i)),i}_getShaderStage(n){let t=this.shaderCache,i=t.get(n);return i===void 0&&(i=new Jn(n),t.set(n,i)),i}},Jn=class{constructor(n){this.id=Hf++,this.code=n,this.usedTimes=0}};function Vf(e,n,t,i,c,a){let d=new Sa,_=new Qn,L=new Set,C=[],B=new Map,D=i.logarithmicDepthBuffer,p=i.precision,S={MeshDepthMaterial:\"depth\",MeshDistanceMaterial:\"distance\",MeshNormalMaterial:\"normal\",MeshBasicMaterial:\"basic\",MeshLambertMaterial:\"lambert\",MeshPhongMaterial:\"phong\",MeshToonMaterial:\"toon\",MeshStandardMaterial:\"physical\",MeshPhysicalMaterial:\"physical\",MeshMatcapMaterial:\"matcap\",LineBasicMaterial:\"basic\",LineDashedMaterial:\"dashed\",PointsMaterial:\"points\",ShadowMaterial:\"shadow\",SpriteMaterial:\"sprite\"};function M(f){return L.add(f),f===0?\"uv\":`uv${f}`}function y(f,h,$,R,V){let z=R.fog,W=V.geometry,Y=f.isMeshStandardMaterial||f.isMeshLambertMaterial||f.isMeshPhongMaterial?R.environment:null,O=f.isMeshStandardMaterial||f.isMeshLambertMaterial&&!f.envMap||f.isMeshPhongMaterial&&!f.envMap,F=n.get(f.envMap||Y,O),ie=F&&F.mapping===Tn?F.image.height:null,re=S[f.type];f.precision!==null&&(p=i.getMaxPrecision(f.precision),p!==f.precision&&Ye(\"WebGLProgram.getParameters:\",f.precision,\"not supported, using\",p,\"instead.\"));let Me=W.morphAttributes.position||W.morphAttributes.normal||W.morphAttributes.color,Ae=Me!==void 0?Me.length:0,he=0;W.morphAttributes.position!==void 0&&(he=1),W.morphAttributes.normal!==void 0&&(he=2),W.morphAttributes.color!==void 0&&(he=3);let Ne,Je,je,X;if(re){let Ve=Et[re];Ne=Ve.vertexShader,Je=Ve.fragmentShader}else Ne=f.vertexShader,Je=f.fragmentShader,_.update(f),je=_.getVertexShaderID(f),X=_.getFragmentShaderID(f);let j=e.getRenderTarget(),ne=e.state.buffers.depth.getReversed(),Le=V.isInstancedMesh===!0,Te=V.isBatchedMesh===!0,Ce=!!f.map,st=!!f.matcap,ye=!!F,He=!!f.aoMap,ze=!!f.lightMap,Ue=!!f.bumpMap,tt=!!f.normalMap,m=!!f.displacementMap,rt=!!f.emissiveMap,Ge=!!f.metalnessMap,qe=!!f.roughnessMap,ge=f.anisotropy>0,u=f.clearcoat>0,r=f.dispersion>0,x=f.iridescence>0,k=f.sheen>0,q=f.transmission>0,H=ge&&!!f.anisotropyMap,de=u&&!!f.clearcoatMap,ee=u&&!!f.clearcoatNormalMap,xe=u&&!!f.clearcoatRoughnessMap,Re=x&&!!f.iridescenceMap,K=x&&!!f.iridescenceThicknessMap,Q=k&&!!f.sheenColorMap,ue=k&&!!f.sheenRoughnessMap,me=!!f.specularMap,le=!!f.specularColorMap,we=!!f.specularIntensityMap,v=q&&!!f.transmissionMap,te=q&&!!f.thicknessMap,J=!!f.gradientMap,fe=!!f.alphaMap,Z=f.alphaTest>0,G=!!f.alphaHash,pe=!!f.extensions,be=Mt;f.toneMapped&&(j===null||j.isXRRenderTarget===!0)&&(be=e.toneMapping);let Ke={shaderID:re,shaderType:f.type,shaderName:f.name,vertexShader:Ne,fragmentShader:Je,defines:f.defines,customVertexShaderID:je,customFragmentShaderID:X,isRawShaderMaterial:f.isRawShaderMaterial===!0,glslVersion:f.glslVersion,precision:p,batching:Te,batchingColor:Te&&V._colorsTexture!==null,instancing:Le,instancingColor:Le&&V.instanceColor!==null,instancingMorph:Le&&V.morphTexture!==null,outputColorSpace:j===null?e.outputColorSpace:j.isXRRenderTarget===!0?j.texture.colorSpace:Rn,alphaToCoverage:!!f.alphaToCoverage,map:Ce,matcap:st,envMap:ye,envMapMode:ye&&F.mapping,envMapCubeUVHeight:ie,aoMap:He,lightMap:ze,bumpMap:Ue,normalMap:tt,displacementMap:m,emissiveMap:rt,normalMapObjectSpace:tt&&f.normalMapType===va,normalMapTangentSpace:tt&&f.normalMapType===ga,metalnessMap:Ge,roughnessMap:qe,anisotropy:ge,anisotropyMap:H,clearcoat:u,clearcoatMap:de,clearcoatNormalMap:ee,clearcoatRoughnessMap:xe,dispersion:r,iridescence:x,iridescenceMap:Re,iridescenceThicknessMap:K,sheen:k,sheenColorMap:Q,sheenRoughnessMap:ue,specularMap:me,specularColorMap:le,specularIntensityMap:we,transmission:q,transmissionMap:v,thicknessMap:te,gradientMap:J,opaque:f.transparent===!1&&f.blending===vn&&f.alphaToCoverage===!1,alphaMap:fe,alphaTest:Z,alphaHash:G,combine:f.combine,mapUv:Ce&&M(f.map.channel),aoMapUv:He&&M(f.aoMap.channel),lightMapUv:ze&&M(f.lightMap.channel),bumpMapUv:Ue&&M(f.bumpMap.channel),normalMapUv:tt&&M(f.normalMap.channel),displacementMapUv:m&&M(f.displacementMap.channel),emissiveMapUv:rt&&M(f.emissiveMap.channel),metalnessMapUv:Ge&&M(f.metalnessMap.channel),roughnessMapUv:qe&&M(f.roughnessMap.channel),anisotropyMapUv:H&&M(f.anisotropyMap.channel),clearcoatMapUv:de&&M(f.clearcoatMap.channel),clearcoatNormalMapUv:ee&&M(f.clearcoatNormalMap.channel),clearcoatRoughnessMapUv:xe&&M(f.clearcoatRoughnessMap.channel),iridescenceMapUv:Re&&M(f.iridescenceMap.channel),iridescenceThicknessMapUv:K&&M(f.iridescenceThicknessMap.channel),sheenColorMapUv:Q&&M(f.sheenColorMap.channel),sheenRoughnessMapUv:ue&&M(f.sheenRoughnessMap.channel),specularMapUv:me&&M(f.specularMap.channel),specularColorMapUv:le&&M(f.specularColorMap.channel),specularIntensityMapUv:we&&M(f.specularIntensityMap.channel),transmissionMapUv:v&&M(f.transmissionMap.channel),thicknessMapUv:te&&M(f.thicknessMap.channel),alphaMapUv:fe&&M(f.alphaMap.channel),vertexTangents:!!W.attributes.tangent&&(tt||ge),vertexColors:f.vertexColors,vertexAlphas:f.vertexColors===!0&&!!W.attributes.color&&W.attributes.color.itemSize===4,pointsUvs:V.isPoints===!0&&!!W.attributes.uv&&(Ce||fe),fog:!!z,useFog:f.fog===!0,fogExp2:!!z&&z.isFogExp2,flatShading:f.wireframe===!1&&(f.flatShading===!0||W.attributes.normal===void 0&&tt===!1&&(f.isMeshLambertMaterial||f.isMeshPhongMaterial||f.isMeshStandardMaterial||f.isMeshPhysicalMaterial)),sizeAttenuation:f.sizeAttenuation===!0,logarithmicDepthBuffer:D,reversedDepthBuffer:ne,skinning:V.isSkinnedMesh===!0,morphTargets:W.morphAttributes.position!==void 0,morphNormals:W.morphAttributes.normal!==void 0,morphColors:W.morphAttributes.color!==void 0,morphTargetsCount:Ae,morphTextureStride:he,numDirLights:h.directional.length,numPointLights:h.point.length,numSpotLights:h.spot.length,numSpotLightMaps:h.spotLightMap.length,numRectAreaLights:h.rectArea.length,numHemiLights:h.hemi.length,numDirLightShadows:h.directionalShadowMap.length,numPointLightShadows:h.pointShadowMap.length,numSpotLightShadows:h.spotShadowMap.length,numSpotLightShadowsWithMaps:h.numSpotLightShadowsWithMaps,numLightProbes:h.numLightProbes,numClippingPlanes:a.numPlanes,numClipIntersection:a.numIntersection,dithering:f.dithering,shadowMapEnabled:e.shadowMap.enabled&&$.length>0,shadowMapType:e.shadowMap.type,toneMapping:be,decodeVideoTexture:Ce&&f.map.isVideoTexture===!0&&it.getTransfer(f.map.colorSpace)===$e,decodeVideoTextureEmissive:rt&&f.emissiveMap.isVideoTexture===!0&&it.getTransfer(f.emissiveMap.colorSpace)===$e,premultipliedAlpha:f.premultipliedAlpha,doubleSided:f.side===Ct,flipSided:f.side===_t,useDepthPacking:f.depthPacking>=0,depthPacking:f.depthPacking||0,index0AttributeName:f.index0AttributeName,extensionClipCullDistance:pe&&f.extensions.clipCullDistance===!0&&t.has(\"WEBGL_clip_cull_distance\"),extensionMultiDraw:(pe&&f.extensions.multiDraw===!0||Te)&&t.has(\"WEBGL_multi_draw\"),rendererExtensionParallelShaderCompile:t.has(\"KHR_parallel_shader_compile\"),customProgramCacheKey:f.customProgramCacheKey()};return Ke.vertexUv1s=L.has(1),Ke.vertexUv2s=L.has(2),Ke.vertexUv3s=L.has(3),L.clear(),Ke}function l(f){let h=[];if(f.shaderID?h.push(f.shaderID):(h.push(f.customVertexShaderID),h.push(f.customFragmentShaderID)),f.defines!==void 0)for(let $ in f.defines)h.push($),h.push(f.defines[$]);return f.isRawShaderMaterial===!1&&(s(h,f),g(h,f),h.push(e.outputColorSpace)),h.push(f.customProgramCacheKey),h.join()}function s(f,h){f.push(h.precision),f.push(h.outputColorSpace),f.push(h.envMapMode),f.push(h.envMapCubeUVHeight),f.push(h.mapUv),f.push(h.alphaMapUv),f.push(h.lightMapUv),f.push(h.aoMapUv),f.push(h.bumpMapUv),f.push(h.normalMapUv),f.push(h.displacementMapUv),f.push(h.emissiveMapUv),f.push(h.metalnessMapUv),f.push(h.roughnessMapUv),f.push(h.anisotropyMapUv),f.push(h.clearcoatMapUv),f.push(h.clearcoatNormalMapUv),f.push(h.clearcoatRoughnessMapUv),f.push(h.iridescenceMapUv),f.push(h.iridescenceThicknessMapUv),f.push(h.sheenColorMapUv),f.push(h.sheenRoughnessMapUv),f.push(h.specularMapUv),f.push(h.specularColorMapUv),f.push(h.specularIntensityMapUv),f.push(h.transmissionMapUv),f.push(h.thicknessMapUv),f.push(h.combine),f.push(h.fogExp2),f.push(h.sizeAttenuation),f.push(h.morphTargetsCount),f.push(h.morphAttributeCount),f.push(h.numDirLights),f.push(h.numPointLights),f.push(h.numSpotLights),f.push(h.numSpotLightMaps),f.push(h.numHemiLights),f.push(h.numRectAreaLights),f.push(h.numDirLightShadows),f.push(h.numPointLightShadows),f.push(h.numSpotLightShadows),f.push(h.numSpotLightShadowsWithMaps),f.push(h.numLightProbes),f.push(h.shadowMapType),f.push(h.toneMapping),f.push(h.numClippingPlanes),f.push(h.numClipIntersection),f.push(h.depthPacking)}function g(f,h){d.disableAll(),h.instancing&&d.enable(0),h.instancingColor&&d.enable(1),h.instancingMorph&&d.enable(2),h.matcap&&d.enable(3),h.envMap&&d.enable(4),h.normalMapObjectSpace&&d.enable(5),h.normalMapTangentSpace&&d.enable(6),h.clearcoat&&d.enable(7),h.iridescence&&d.enable(8),h.alphaTest&&d.enable(9),h.vertexColors&&d.enable(10),h.vertexAlphas&&d.enable(11),h.vertexUv1s&&d.enable(12),h.vertexUv2s&&d.enable(13),h.vertexUv3s&&d.enable(14),h.vertexTangents&&d.enable(15),h.anisotropy&&d.enable(16),h.alphaHash&&d.enable(17),h.batching&&d.enable(18),h.dispersion&&d.enable(19),h.batchingColor&&d.enable(20),h.gradientMap&&d.enable(21),f.push(d.mask),d.disableAll(),h.fog&&d.enable(0),h.useFog&&d.enable(1),h.flatShading&&d.enable(2),h.logarithmicDepthBuffer&&d.enable(3),h.reversedDepthBuffer&&d.enable(4),h.skinning&&d.enable(5),h.morphTargets&&d.enable(6),h.morphNormals&&d.enable(7),h.morphColors&&d.enable(8),h.premultipliedAlpha&&d.enable(9),h.shadowMapEnabled&&d.enable(10),h.doubleSided&&d.enable(11),h.flipSided&&d.enable(12),h.useDepthPacking&&d.enable(13),h.dithering&&d.enable(14),h.transmission&&d.enable(15),h.sheen&&d.enable(16),h.opaque&&d.enable(17),h.pointsUvs&&d.enable(18),h.decodeVideoTexture&&d.enable(19),h.decodeVideoTextureEmissive&&d.enable(20),h.alphaToCoverage&&d.enable(21),f.push(d.mask)}function T(f){let h=S[f.type],$;if(h){let R=Et[h];$=_a.clone(R.uniforms)}else $=f.uniforms;return $}function E(f,h){let $=B.get(h);return $!==void 0?++$.usedTimes:($=new Gf(e,h,f,c),C.push($),B.set(h,$)),$}function N(f){if(--f.usedTimes===0){let h=C.indexOf(f);C[h]=C[C.length-1],C.pop(),B.delete(f.cacheKey),f.destroy()}}function b(f){_.remove(f)}function w(){_.dispose()}return{getParameters:y,getProgramCacheKey:l,getUniforms:T,acquireProgram:E,releaseProgram:N,releaseShaderCache:b,programs:C,dispose:w}}function kf(){let e=new WeakMap;function n(d){return e.has(d)}function t(d){let _=e.get(d);return _===void 0&&(_={},e.set(d,_)),_}function i(d){e.delete(d)}function c(d,_,L){e.get(d)[_]=L}function a(){e=new WeakMap}return{has:n,get:t,remove:i,update:c,dispose:a}}function Wf(e,n){return e.groupOrder!==n.groupOrder?e.groupOrder-n.groupOrder:e.renderOrder!==n.renderOrder?e.renderOrder-n.renderOrder:e.material.id!==n.material.id?e.material.id-n.material.id:e.materialVariant!==n.materialVariant?e.materialVariant-n.materialVariant:e.z!==n.z?e.z-n.z:e.id-n.id}function Sr(e,n){return e.groupOrder!==n.groupOrder?e.groupOrder-n.groupOrder:e.renderOrder!==n.renderOrder?e.renderOrder-n.renderOrder:e.z!==n.z?n.z-e.z:e.id-n.id}function Er(){let e=[],n=0,t=[],i=[],c=[];function a(){n=0,t.length=0,i.length=0,c.length=0}function d(p){let S=0;return p.isInstancedMesh&&(S+=2),p.isSkinnedMesh&&(S+=1),S}function _(p,S,M,y,l,s){let g=e[n];return g===void 0?(g={id:p.id,object:p,geometry:S,material:M,materialVariant:d(p),groupOrder:y,renderOrder:p.renderOrder,z:l,group:s},e[n]=g):(g.id=p.id,g.object=p,g.geometry=S,g.material=M,g.materialVariant=d(p),g.groupOrder=y,g.renderOrder=p.renderOrder,g.z=l,g.group=s),n++,g}function L(p,S,M,y,l,s){let g=_(p,S,M,y,l,s);M.transmission>0?i.push(g):M.transparent===!0?c.push(g):t.push(g)}function C(p,S,M,y,l,s){let g=_(p,S,M,y,l,s);M.transmission>0?i.unshift(g):M.transparent===!0?c.unshift(g):t.unshift(g)}function B(p,S){t.length>1&&t.sort(p||Wf),i.length>1&&i.sort(S||Sr),c.length>1&&c.sort(S||Sr)}function D(){for(let p=n,S=e.length;p<S;p++){let M=e[p];if(M.id===null)break;M.id=null,M.object=null,M.geometry=null,M.material=null,M.group=null}}return{opaque:t,transmissive:i,transparent:c,init:a,push:L,unshift:C,finish:D,sort:B}}function zf(){let e=new WeakMap;function n(i,c){let a=e.get(i),d;return a===void 0?(d=new Er,e.set(i,[d])):c>=a.length?(d=new Er,a.push(d)):d=a[c],d}function t(){e=new WeakMap}return{get:n,dispose:t}}function Xf(){let e={};return{get:function(n){if(e[n.id]!==void 0)return e[n.id];let t;switch(n.type){case\"DirectionalLight\":t={direction:new Be,color:new Qe};break;case\"SpotLight\":t={position:new Be,direction:new Be,color:new Qe,distance:0,coneCos:0,penumbraCos:0,decay:0};break;case\"PointLight\":t={position:new Be,color:new Qe,distance:0,decay:0};break;case\"HemisphereLight\":t={direction:new Be,skyColor:new Qe,groundColor:new Qe};break;case\"RectAreaLight\":t={color:new Qe,position:new Be,halfWidth:new Be,halfHeight:new Be};break}return e[n.id]=t,t}}}function Yf(){let e={};return{get:function(n){if(e[n.id]!==void 0)return e[n.id];let t;switch(n.type){case\"DirectionalLight\":t={shadowIntensity:1,shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new pt};break;case\"SpotLight\":t={shadowIntensity:1,shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new pt};break;case\"PointLight\":t={shadowIntensity:1,shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new pt,shadowCameraNear:1,shadowCameraFar:1e3};break}return e[n.id]=t,t}}}var qf=0;function Kf(e,n){return(n.castShadow?2:0)-(e.castShadow?2:0)+(n.map?1:0)-(e.map?1:0)}function $f(e){let n=new Xf,t=Yf(),i={version:0,hash:{directionalLength:-1,pointLength:-1,spotLength:-1,rectAreaLength:-1,hemiLength:-1,numDirectionalShadows:-1,numPointShadows:-1,numSpotShadows:-1,numSpotMaps:-1,numLightProbes:-1},ambient:[0,0,0],probe:[],directional:[],directionalShadow:[],directionalShadowMap:[],directionalShadowMatrix:[],spot:[],spotLightMap:[],spotShadow:[],spotShadowMap:[],spotLightMatrix:[],rectArea:[],rectAreaLTC1:null,rectAreaLTC2:null,point:[],pointShadow:[],pointShadowMap:[],pointShadowMatrix:[],hemi:[],numSpotLightShadowsWithMaps:0,numLightProbes:0};for(let C=0;C<9;C++)i.probe.push(new Be);let c=new Be,a=new Zt,d=new Zt;function _(C){let B=0,D=0,p=0;for(let h=0;h<9;h++)i.probe[h].set(0,0,0);let S=0,M=0,y=0,l=0,s=0,g=0,T=0,E=0,N=0,b=0,w=0;C.sort(Kf);for(let h=0,$=C.length;h<$;h++){let R=C[h],V=R.color,z=R.intensity,W=R.distance,Y=null;if(R.shadow&&R.shadow.map&&(R.shadow.map.texture.format===ln?Y=R.shadow.map.texture:Y=R.shadow.map.depthTexture||R.shadow.map.texture),R.isAmbientLight)B+=V.r*z,D+=V.g*z,p+=V.b*z;else if(R.isLightProbe){for(let O=0;O<9;O++)i.probe[O].addScaledVector(R.sh.coefficients[O],z);w++}else if(R.isDirectionalLight){let O=n.get(R);if(O.color.copy(R.color).multiplyScalar(R.intensity),R.castShadow){let F=R.shadow,ie=t.get(R);ie.shadowIntensity=F.intensity,ie.shadowBias=F.bias,ie.shadowNormalBias=F.normalBias,ie.shadowRadius=F.radius,ie.shadowMapSize=F.mapSize,i.directionalShadow[S]=ie,i.directionalShadowMap[S]=Y,i.directionalShadowMatrix[S]=R.shadow.matrix,g++}i.directional[S]=O,S++}else if(R.isSpotLight){let O=n.get(R);O.position.setFromMatrixPosition(R.matrixWorld),O.color.copy(V).multiplyScalar(z),O.distance=W,O.coneCos=Math.cos(R.angle),O.penumbraCos=Math.cos(R.angle*(1-R.penumbra)),O.decay=R.decay,i.spot[y]=O;let F=R.shadow;if(R.map&&(i.spotLightMap[N]=R.map,N++,F.updateMatrices(R),R.castShadow&&b++),i.spotLightMatrix[y]=F.matrix,R.castShadow){let ie=t.get(R);ie.shadowIntensity=F.intensity,ie.shadowBias=F.bias,ie.shadowNormalBias=F.normalBias,ie.shadowRadius=F.radius,ie.shadowMapSize=F.mapSize,i.spotShadow[y]=ie,i.spotShadowMap[y]=Y,E++}y++}else if(R.isRectAreaLight){let O=n.get(R);O.color.copy(V).multiplyScalar(z),O.halfWidth.set(R.width*.5,0,0),O.halfHeight.set(0,R.height*.5,0),i.rectArea[l]=O,l++}else if(R.isPointLight){let O=n.get(R);if(O.color.copy(R.color).multiplyScalar(R.intensity),O.distance=R.distance,O.decay=R.decay,R.castShadow){let F=R.shadow,ie=t.get(R);ie.shadowIntensity=F.intensity,ie.shadowBias=F.bias,ie.shadowNormalBias=F.normalBias,ie.shadowRadius=F.radius,ie.shadowMapSize=F.mapSize,ie.shadowCameraNear=F.camera.near,ie.shadowCameraFar=F.camera.far,i.pointShadow[M]=ie,i.pointShadowMap[M]=Y,i.pointShadowMatrix[M]=R.shadow.matrix,T++}i.point[M]=O,M++}else if(R.isHemisphereLight){let O=n.get(R);O.skyColor.copy(R.color).multiplyScalar(z),O.groundColor.copy(R.groundColor).multiplyScalar(z),i.hemi[s]=O,s++}}l>0&&(e.has(\"OES_texture_float_linear\")===!0?(i.rectAreaLTC1=ae.LTC_FLOAT_1,i.rectAreaLTC2=ae.LTC_FLOAT_2):(i.rectAreaLTC1=ae.LTC_HALF_1,i.rectAreaLTC2=ae.LTC_HALF_2)),i.ambient[0]=B,i.ambient[1]=D,i.ambient[2]=p;let f=i.hash;(f.directionalLength!==S||f.pointLength!==M||f.spotLength!==y||f.rectAreaLength!==l||f.hemiLength!==s||f.numDirectionalShadows!==g||f.numPointShadows!==T||f.numSpotShadows!==E||f.numSpotMaps!==N||f.numLightProbes!==w)&&(i.directional.length=S,i.spot.length=y,i.rectArea.length=l,i.point.length=M,i.hemi.length=s,i.directionalShadow.length=g,i.directionalShadowMap.length=g,i.pointShadow.length=T,i.pointShadowMap.length=T,i.spotShadow.length=E,i.spotShadowMap.length=E,i.directionalShadowMatrix.length=g,i.pointShadowMatrix.length=T,i.spotLightMatrix.length=E+N-b,i.spotLightMap.length=N,i.numSpotLightShadowsWithMaps=b,i.numLightProbes=w,f.directionalLength=S,f.pointLength=M,f.spotLength=y,f.rectAreaLength=l,f.hemiLength=s,f.numDirectionalShadows=g,f.numPointShadows=T,f.numSpotShadows=E,f.numSpotMaps=N,f.numLightProbes=w,i.version=qf++)}function L(C,B){let D=0,p=0,S=0,M=0,y=0,l=B.matrixWorldInverse;for(let s=0,g=C.length;s<g;s++){let T=C[s];if(T.isDirectionalLight){let E=i.directional[D];E.direction.setFromMatrixPosition(T.matrixWorld),c.setFromMatrixPosition(T.target.matrixWorld),E.direction.sub(c),E.direction.transformDirection(l),D++}else if(T.isSpotLight){let E=i.spot[S];E.position.setFromMatrixPosition(T.matrixWorld),E.position.applyMatrix4(l),E.direction.setFromMatrixPosition(T.matrixWorld),c.setFromMatrixPosition(T.target.matrixWorld),E.direction.sub(c),E.direction.transformDirection(l),S++}else if(T.isRectAreaLight){let E=i.rectArea[M];E.position.setFromMatrixPosition(T.matrixWorld),E.position.applyMatrix4(l),d.identity(),a.copy(T.matrixWorld),a.premultiply(l),d.extractRotation(a),E.halfWidth.set(T.width*.5,0,0),E.halfHeight.set(0,T.height*.5,0),E.halfWidth.applyMatrix4(d),E.halfHeight.applyMatrix4(d),M++}else if(T.isPointLight){let E=i.point[p];E.position.setFromMatrixPosition(T.matrixWorld),E.position.applyMatrix4(l),p++}else if(T.isHemisphereLight){let E=i.hemi[y];E.direction.setFromMatrixPosition(T.matrixWorld),E.direction.transformDirection(l),y++}}}return{setup:_,setupView:L,state:i}}function xr(e){let n=new $f(e),t=[],i=[];function c(B){C.camera=B,t.length=0,i.length=0}function a(B){t.push(B)}function d(B){i.push(B)}function _(){n.setup(t)}function L(B){n.setupView(t,B)}let C={lightsArray:t,shadowsArray:i,camera:null,lights:n,transmissionRenderTarget:{}};return{init:c,state:C,setupLights:_,setupLightsView:L,pushLight:a,pushShadow:d}}function Zf(e){let n=new WeakMap;function t(c,a=0){let d=n.get(c),_;return d===void 0?(_=new xr(e),n.set(c,[_])):a>=d.length?(_=new xr(e),d.push(_)):_=d[a],_}function i(){n=new WeakMap}return{get:t,dispose:i}}var Qf=`void main() {\n\tgl_Position = vec4( position, 1.0 );\n}`,Jf=`uniform sampler2D shadow_pass;\nuniform vec2 resolution;\nuniform float radius;\nvoid main() {\n\tconst float samples = float( VSM_SAMPLES );\n\tfloat mean = 0.0;\n\tfloat squared_mean = 0.0;\n\tfloat uvStride = samples <= 1.0 ? 0.0 : 2.0 / ( samples - 1.0 );\n\tfloat uvStart = samples <= 1.0 ? 0.0 : - 1.0;\n\tfor ( float i = 0.0; i < samples; i ++ ) {\n\t\tfloat uvOffset = uvStart + i * uvStride;\n\t\t#ifdef HORIZONTAL_PASS\n\t\t\tvec2 distribution = texture2D( shadow_pass, ( gl_FragCoord.xy + vec2( uvOffset, 0.0 ) * radius ) / resolution ).rg;\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 = texture2D( shadow_pass, ( gl_FragCoord.xy + vec2( 0.0, uvOffset ) * radius ) / resolution ).r;\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( max( 0.0, squared_mean - mean * mean ) );\n\tgl_FragColor = vec4( mean, std_dev, 0.0, 1.0 );\n}`,jf=[new Be(1,0,0),new Be(-1,0,0),new Be(0,1,0),new Be(0,-1,0),new Be(0,0,1),new Be(0,0,-1)],ed=[new Be(0,-1,0),new Be(0,-1,0),new Be(0,0,1),new Be(0,0,-1),new Be(0,-1,0),new Be(0,-1,0)],Mr=new Zt,nn=new Be,Wn=new Be;function td(e,n,t){let i=new Hr,c=new pt,a=new pt,d=new ut,_=new Ea,L=new xa,C={},B=t.maxTextureSize,D={[on]:_t,[_t]:on,[Ct]:Ct},p=new Dt({defines:{VSM_SAMPLES:8},uniforms:{shadow_pass:{value:null},resolution:{value:new pt},radius:{value:4}},vertexShader:Qf,fragmentShader:Jf}),S=p.clone();S.defines.HORIZONTAL_PASS=1;let M=new An;M.setAttribute(\"position\",new _n(new Float32Array([-1,-1,.5,3,-1,.5,-1,3,.5]),3));let y=new Lt(M,p),l=this;this.enabled=!1,this.autoUpdate=!0,this.needsUpdate=!1,this.type=gn;let s=this.type;this.render=function(b,w,f){if(l.enabled===!1||l.autoUpdate===!1&&l.needsUpdate===!1||b.length===0)return;this.type===Ma&&(Ye(\"WebGLShadowMap: PCFSoftShadowMap has been deprecated. Using PCFShadowMap instead.\"),this.type=gn);let h=e.getRenderTarget(),$=e.getActiveCubeFace(),R=e.getActiveMipmapLevel(),V=e.state;V.setBlending(Pt),V.buffers.depth.getReversed()===!0?V.buffers.color.setClear(0,0,0,0):V.buffers.color.setClear(1,1,1,1),V.buffers.depth.setTest(!0),V.setScissorTest(!1);let z=s!==this.type;z&&w.traverse(function(W){W.material&&(Array.isArray(W.material)?W.material.forEach(Y=>Y.needsUpdate=!0):W.material.needsUpdate=!0)});for(let W=0,Y=b.length;W<Y;W++){let O=b[W],F=O.shadow;if(F===void 0){Ye(\"WebGLShadowMap:\",O,\"has no shadow.\");continue}if(F.autoUpdate===!1&&F.needsUpdate===!1)continue;c.copy(F.mapSize);let ie=F.getFrameExtents();c.multiply(ie),a.copy(F.mapSize),(c.x>B||c.y>B)&&(c.x>B&&(a.x=Math.floor(B/ie.x),c.x=a.x*ie.x,F.mapSize.x=a.x),c.y>B&&(a.y=Math.floor(B/ie.y),c.y=a.y*ie.y,F.mapSize.y=a.y));let re=e.state.buffers.depth.getReversed();if(F.camera._reversedDepth=re,F.map===null||z===!0){if(F.map!==null&&(F.map.depthTexture!==null&&(F.map.depthTexture.dispose(),F.map.depthTexture=null),F.map.dispose()),this.type===rn){if(O.isPointLight){Ye(\"WebGLShadowMap: VSM shadow maps are not supported for PointLights. Use PCF or BasicShadowMap instead.\");continue}F.map=new Tt(c.x,c.y,{format:ln,type:yt,minFilter:mt,magFilter:mt,generateMipmaps:!1}),F.map.texture.name=O.name+\".shadowMap\",F.map.depthTexture=new Sn(c.x,c.y,It),F.map.depthTexture.name=O.name+\".shadowMapDepth\",F.map.depthTexture.format=Jt,F.map.depthTexture.compareFunction=null,F.map.depthTexture.minFilter=Vt,F.map.depthTexture.magFilter=Vt}else O.isPointLight?(F.map=new Mn(c.x),F.map.depthTexture=new Ta(c.x,kt)):(F.map=new Tt(c.x,c.y),F.map.depthTexture=new Sn(c.x,c.y,kt)),F.map.depthTexture.name=O.name+\".shadowMap\",F.map.depthTexture.format=Jt,this.type===gn?(F.map.depthTexture.compareFunction=re?ni:ii,F.map.depthTexture.minFilter=mt,F.map.depthTexture.magFilter=mt):(F.map.depthTexture.compareFunction=null,F.map.depthTexture.minFilter=Vt,F.map.depthTexture.magFilter=Vt);F.camera.updateProjectionMatrix()}let Me=F.map.isWebGLCubeRenderTarget?6:1;for(let Ae=0;Ae<Me;Ae++){if(F.map.isWebGLCubeRenderTarget)e.setRenderTarget(F.map,Ae),e.clear();else{Ae===0&&(e.setRenderTarget(F.map),e.clear());let he=F.getViewport(Ae);d.set(a.x*he.x,a.y*he.y,a.x*he.z,a.y*he.w),V.viewport(d)}if(O.isPointLight){let he=F.camera,Ne=F.matrix,Je=O.distance||he.far;Je!==he.far&&(he.far=Je,he.updateProjectionMatrix()),nn.setFromMatrixPosition(O.matrixWorld),he.position.copy(nn),Wn.copy(he.position),Wn.add(jf[Ae]),he.up.copy(ed[Ae]),he.lookAt(Wn),he.updateMatrixWorld(),Ne.makeTranslation(-nn.x,-nn.y,-nn.z),Mr.multiplyMatrices(he.projectionMatrix,he.matrixWorldInverse),F._frustum.setFromProjectionMatrix(Mr,he.coordinateSystem,he.reversedDepth)}else F.updateMatrices(O);i=F.getFrustum(),E(w,f,F.camera,O,this.type)}F.isPointLightShadow!==!0&&this.type===rn&&g(F,f),F.needsUpdate=!1}s=this.type,l.needsUpdate=!1,e.setRenderTarget(h,$,R)};function g(b,w){let f=n.update(y);p.defines.VSM_SAMPLES!==b.blurSamples&&(p.defines.VSM_SAMPLES=b.blurSamples,S.defines.VSM_SAMPLES=b.blurSamples,p.needsUpdate=!0,S.needsUpdate=!0),b.mapPass===null&&(b.mapPass=new Tt(c.x,c.y,{format:ln,type:yt})),p.uniforms.shadow_pass.value=b.map.depthTexture,p.uniforms.resolution.value=b.mapSize,p.uniforms.radius.value=b.radius,e.setRenderTarget(b.mapPass),e.clear(),e.renderBufferDirect(w,null,f,p,y,null),S.uniforms.shadow_pass.value=b.mapPass.texture,S.uniforms.resolution.value=b.mapSize,S.uniforms.radius.value=b.radius,e.setRenderTarget(b.map),e.clear(),e.renderBufferDirect(w,null,f,S,y,null)}function T(b,w,f,h){let $=null,R=f.isPointLight===!0?b.customDistanceMaterial:b.customDepthMaterial;if(R!==void 0)$=R;else if($=f.isPointLight===!0?L:_,e.localClippingEnabled&&w.clipShadows===!0&&Array.isArray(w.clippingPlanes)&&w.clippingPlanes.length!==0||w.displacementMap&&w.displacementScale!==0||w.alphaMap&&w.alphaTest>0||w.map&&w.alphaTest>0||w.alphaToCoverage===!0){let V=$.uuid,z=w.uuid,W=C[V];W===void 0&&(W={},C[V]=W);let Y=W[z];Y===void 0&&(Y=$.clone(),W[z]=Y,w.addEventListener(\"dispose\",N)),$=Y}if($.visible=w.visible,$.wireframe=w.wireframe,h===rn?$.side=w.shadowSide!==null?w.shadowSide:w.side:$.side=w.shadowSide!==null?w.shadowSide:D[w.side],$.alphaMap=w.alphaMap,$.alphaTest=w.alphaToCoverage===!0?.5:w.alphaTest,$.map=w.map,$.clipShadows=w.clipShadows,$.clippingPlanes=w.clippingPlanes,$.clipIntersection=w.clipIntersection,$.displacementMap=w.displacementMap,$.displacementScale=w.displacementScale,$.displacementBias=w.displacementBias,$.wireframeLinewidth=w.wireframeLinewidth,$.linewidth=w.linewidth,f.isPointLight===!0&&$.isMeshDistanceMaterial===!0){let V=e.properties.get($);V.light=f}return $}function E(b,w,f,h,$){if(b.visible===!1)return;if(b.layers.test(w.layers)&&(b.isMesh||b.isLine||b.isPoints)&&(b.castShadow||b.receiveShadow&&$===rn)&&(!b.frustumCulled||i.intersectsObject(b))){b.modelViewMatrix.multiplyMatrices(f.matrixWorldInverse,b.matrixWorld);let z=n.update(b),W=b.material;if(Array.isArray(W)){let Y=z.groups;for(let O=0,F=Y.length;O<F;O++){let ie=Y[O],re=W[ie.materialIndex];if(re&&re.visible){let Me=T(b,re,h,$);b.onBeforeShadow(e,b,w,f,z,Me,ie),e.renderBufferDirect(f,null,z,Me,b,ie),b.onAfterShadow(e,b,w,f,z,Me,ie)}}}else if(W.visible){let Y=T(b,W,h,$);b.onBeforeShadow(e,b,w,f,z,Y,null),e.renderBufferDirect(f,null,z,Y,b,null),b.onAfterShadow(e,b,w,f,z,Y,null)}}let V=b.children;for(let z=0,W=V.length;z<W;z++)E(V[z],w,f,h,$)}function N(b){b.target.removeEventListener(\"dispose\",N);for(let f in C){let h=C[f],$=b.target.uuid;$ in h&&(h[$].dispose(),delete h[$])}}}function nd(e,n){function t(){let v=!1,te=new ut,J=null,fe=new ut(0,0,0,0);return{setMask:function(Z){J!==Z&&!v&&(e.colorMask(Z,Z,Z,Z),J=Z)},setLocked:function(Z){v=Z},setClear:function(Z,G,pe,be,Ke){Ke===!0&&(Z*=be,G*=be,pe*=be),te.set(Z,G,pe,be),fe.equals(te)===!1&&(e.clearColor(Z,G,pe,be),fe.copy(te))},reset:function(){v=!1,J=null,fe.set(-1,0,0,0)}}}function i(){let v=!1,te=!1,J=null,fe=null,Z=null;return{setReversed:function(G){if(te!==G){let pe=n.get(\"EXT_clip_control\");G?pe.clipControlEXT(pe.LOWER_LEFT_EXT,pe.ZERO_TO_ONE_EXT):pe.clipControlEXT(pe.LOWER_LEFT_EXT,pe.NEGATIVE_ONE_TO_ONE_EXT),te=G;let be=Z;Z=null,this.setClear(be)}},getReversed:function(){return te},setTest:function(G){G?j(e.DEPTH_TEST):ne(e.DEPTH_TEST)},setMask:function(G){J!==G&&!v&&(e.depthMask(G),J=G)},setFunc:function(G){if(te&&(G=Qa[G]),fe!==G){switch(G){case qa:e.depthFunc(e.NEVER);break;case Ya:e.depthFunc(e.ALWAYS);break;case Xa:e.depthFunc(e.LESS);break;case mi:e.depthFunc(e.LEQUAL);break;case za:e.depthFunc(e.EQUAL);break;case Wa:e.depthFunc(e.GEQUAL);break;case ka:e.depthFunc(e.GREATER);break;case Va:e.depthFunc(e.NOTEQUAL);break;default:e.depthFunc(e.LEQUAL)}fe=G}},setLocked:function(G){v=G},setClear:function(G){Z!==G&&(Z=G,te&&(G=1-G),e.clearDepth(G))},reset:function(){v=!1,J=null,fe=null,Z=null,te=!1}}}function c(){let v=!1,te=null,J=null,fe=null,Z=null,G=null,pe=null,be=null,Ke=null;return{setTest:function(Ve){v||(Ve?j(e.STENCIL_TEST):ne(e.STENCIL_TEST))},setMask:function(Ve){te!==Ve&&!v&&(e.stencilMask(Ve),te=Ve)},setFunc:function(Ve,At,Rt){(J!==Ve||fe!==At||Z!==Rt)&&(e.stencilFunc(Ve,At,Rt),J=Ve,fe=At,Z=Rt)},setOp:function(Ve,At,Rt){(G!==Ve||pe!==At||be!==Rt)&&(e.stencilOp(Ve,At,Rt),G=Ve,pe=At,be=Rt)},setLocked:function(Ve){v=Ve},setClear:function(Ve){Ke!==Ve&&(e.clearStencil(Ve),Ke=Ve)},reset:function(){v=!1,te=null,J=null,fe=null,Z=null,G=null,pe=null,be=null,Ke=null}}}let a=new t,d=new i,_=new c,L=new WeakMap,C=new WeakMap,B={},D={},p=new WeakMap,S=[],M=null,y=!1,l=null,s=null,g=null,T=null,E=null,N=null,b=null,w=new Qe(0,0,0),f=0,h=!1,$=null,R=null,V=null,z=null,W=null,Y=e.getParameter(e.MAX_COMBINED_TEXTURE_IMAGE_UNITS),O=!1,F=0,ie=e.getParameter(e.VERSION);ie.indexOf(\"WebGL\")!==-1?(F=parseFloat(/^WebGL (\\d)/.exec(ie)[1]),O=F>=1):ie.indexOf(\"OpenGL ES\")!==-1&&(F=parseFloat(/^OpenGL ES (\\d)/.exec(ie)[1]),O=F>=2);let re=null,Me={},Ae=e.getParameter(e.SCISSOR_BOX),he=e.getParameter(e.VIEWPORT),Ne=new ut().fromArray(Ae),Je=new ut().fromArray(he);function je(v,te,J,fe){let Z=new Uint8Array(4),G=e.createTexture();e.bindTexture(v,G),e.texParameteri(v,e.TEXTURE_MIN_FILTER,e.NEAREST),e.texParameteri(v,e.TEXTURE_MAG_FILTER,e.NEAREST);for(let pe=0;pe<J;pe++)v===e.TEXTURE_3D||v===e.TEXTURE_2D_ARRAY?e.texImage3D(te,0,e.RGBA,1,1,fe,0,e.RGBA,e.UNSIGNED_BYTE,Z):e.texImage2D(te+pe,0,e.RGBA,1,1,0,e.RGBA,e.UNSIGNED_BYTE,Z);return G}let X={};X[e.TEXTURE_2D]=je(e.TEXTURE_2D,e.TEXTURE_2D,1),X[e.TEXTURE_CUBE_MAP]=je(e.TEXTURE_CUBE_MAP,e.TEXTURE_CUBE_MAP_POSITIVE_X,6),X[e.TEXTURE_2D_ARRAY]=je(e.TEXTURE_2D_ARRAY,e.TEXTURE_2D_ARRAY,1,1),X[e.TEXTURE_3D]=je(e.TEXTURE_3D,e.TEXTURE_3D,1,1),a.setClear(0,0,0,1),d.setClear(1),_.setClear(0),j(e.DEPTH_TEST),d.setFunc(mi),Ue(!1),tt(_i),j(e.CULL_FACE),He(Pt);function j(v){B[v]!==!0&&(e.enable(v),B[v]=!0)}function ne(v){B[v]!==!1&&(e.disable(v),B[v]=!1)}function Le(v,te){return D[v]!==te?(e.bindFramebuffer(v,te),D[v]=te,v===e.DRAW_FRAMEBUFFER&&(D[e.FRAMEBUFFER]=te),v===e.FRAMEBUFFER&&(D[e.DRAW_FRAMEBUFFER]=te),!0):!1}function Te(v,te){let J=S,fe=!1;if(v){J=p.get(te),J===void 0&&(J=[],p.set(te,J));let Z=v.textures;if(J.length!==Z.length||J[0]!==e.COLOR_ATTACHMENT0){for(let G=0,pe=Z.length;G<pe;G++)J[G]=e.COLOR_ATTACHMENT0+G;J.length=Z.length,fe=!0}}else J[0]!==e.BACK&&(J[0]=e.BACK,fe=!0);fe&&e.drawBuffers(J)}function Ce(v){return M!==v?(e.useProgram(v),M=v,!0):!1}let st={[en]:e.FUNC_ADD,[Ra]:e.FUNC_SUBTRACT,[Aa]:e.FUNC_REVERSE_SUBTRACT};st[Ja]=e.MIN,st[ja]=e.MAX;let ye={[Ha]:e.ZERO,[Ga]:e.ONE,[Ba]:e.SRC_COLOR,[Oa]:e.SRC_ALPHA,[Fa]:e.SRC_ALPHA_SATURATE,[ya]:e.DST_COLOR,[Na]:e.DST_ALPHA,[Ia]:e.ONE_MINUS_SRC_COLOR,[wa]:e.ONE_MINUS_SRC_ALPHA,[Ua]:e.ONE_MINUS_DST_COLOR,[Da]:e.ONE_MINUS_DST_ALPHA,[La]:e.CONSTANT_COLOR,[Pa]:e.ONE_MINUS_CONSTANT_COLOR,[ba]:e.CONSTANT_ALPHA,[Ca]:e.ONE_MINUS_CONSTANT_ALPHA};function He(v,te,J,fe,Z,G,pe,be,Ke,Ve){if(v===Pt){y===!0&&(ne(e.BLEND),y=!1);return}if(y===!1&&(j(e.BLEND),y=!0),v!==Za){if(v!==l||Ve!==h){if((s!==en||E!==en)&&(e.blendEquation(e.FUNC_ADD),s=en,E=en),Ve)switch(v){case vn:e.blendFuncSeparate(e.ONE,e.ONE_MINUS_SRC_ALPHA,e.ONE,e.ONE_MINUS_SRC_ALPHA);break;case Si:e.blendFunc(e.ONE,e.ONE);break;case vi:e.blendFuncSeparate(e.ZERO,e.ONE_MINUS_SRC_COLOR,e.ZERO,e.ONE);break;case gi:e.blendFuncSeparate(e.DST_COLOR,e.ONE_MINUS_SRC_ALPHA,e.ZERO,e.ONE);break;default:Ze(\"WebGLState: Invalid blending: \",v);break}else switch(v){case vn:e.blendFuncSeparate(e.SRC_ALPHA,e.ONE_MINUS_SRC_ALPHA,e.ONE,e.ONE_MINUS_SRC_ALPHA);break;case Si:e.blendFuncSeparate(e.SRC_ALPHA,e.ONE,e.ONE,e.ONE);break;case vi:Ze(\"WebGLState: SubtractiveBlending requires material.premultipliedAlpha = true\");break;case gi:Ze(\"WebGLState: MultiplyBlending requires material.premultipliedAlpha = true\");break;default:Ze(\"WebGLState: Invalid blending: \",v);break}g=null,T=null,N=null,b=null,w.set(0,0,0),f=0,l=v,h=Ve}return}Z=Z||te,G=G||J,pe=pe||fe,(te!==s||Z!==E)&&(e.blendEquationSeparate(st[te],st[Z]),s=te,E=Z),(J!==g||fe!==T||G!==N||pe!==b)&&(e.blendFuncSeparate(ye[J],ye[fe],ye[G],ye[pe]),g=J,T=fe,N=G,b=pe),(be.equals(w)===!1||Ke!==f)&&(e.blendColor(be.r,be.g,be.b,Ke),w.copy(be),f=Ke),l=v,h=!1}function ze(v,te){v.side===Ct?ne(e.CULL_FACE):j(e.CULL_FACE);let J=v.side===_t;te&&(J=!J),Ue(J),v.blending===vn&&v.transparent===!1?He(Pt):He(v.blending,v.blendEquation,v.blendSrc,v.blendDst,v.blendEquationAlpha,v.blendSrcAlpha,v.blendDstAlpha,v.blendColor,v.blendAlpha,v.premultipliedAlpha),d.setFunc(v.depthFunc),d.setTest(v.depthTest),d.setMask(v.depthWrite),a.setMask(v.colorWrite);let fe=v.stencilWrite;_.setTest(fe),fe&&(_.setMask(v.stencilWriteMask),_.setFunc(v.stencilFunc,v.stencilRef,v.stencilFuncMask),_.setOp(v.stencilFail,v.stencilZFail,v.stencilZPass)),rt(v.polygonOffset,v.polygonOffsetFactor,v.polygonOffsetUnits),v.alphaToCoverage===!0?j(e.SAMPLE_ALPHA_TO_COVERAGE):ne(e.SAMPLE_ALPHA_TO_COVERAGE)}function Ue(v){$!==v&&(v?e.frontFace(e.CW):e.frontFace(e.CCW),$=v)}function tt(v){v!==Ka?(j(e.CULL_FACE),v!==R&&(v===_i?e.cullFace(e.BACK):v===$a?e.cullFace(e.FRONT):e.cullFace(e.FRONT_AND_BACK))):ne(e.CULL_FACE),R=v}function m(v){v!==V&&(O&&e.lineWidth(v),V=v)}function rt(v,te,J){v?(j(e.POLYGON_OFFSET_FILL),(z!==te||W!==J)&&(z=te,W=J,d.getReversed()&&(te=-te),e.polygonOffset(te,J))):ne(e.POLYGON_OFFSET_FILL)}function Ge(v){v?j(e.SCISSOR_TEST):ne(e.SCISSOR_TEST)}function qe(v){v===void 0&&(v=e.TEXTURE0+Y-1),re!==v&&(e.activeTexture(v),re=v)}function ge(v,te,J){J===void 0&&(re===null?J=e.TEXTURE0+Y-1:J=re);let fe=Me[J];fe===void 0&&(fe={type:void 0,texture:void 0},Me[J]=fe),(fe.type!==v||fe.texture!==te)&&(re!==J&&(e.activeTexture(J),re=J),e.bindTexture(v,te||X[v]),fe.type=v,fe.texture=te)}function u(){let v=Me[re];v!==void 0&&v.type!==void 0&&(e.bindTexture(v.type,null),v.type=void 0,v.texture=void 0)}function r(){try{e.compressedTexImage2D(...arguments)}catch(v){Ze(\"WebGLState:\",v)}}function x(){try{e.compressedTexImage3D(...arguments)}catch(v){Ze(\"WebGLState:\",v)}}function k(){try{e.texSubImage2D(...arguments)}catch(v){Ze(\"WebGLState:\",v)}}function q(){try{e.texSubImage3D(...arguments)}catch(v){Ze(\"WebGLState:\",v)}}function H(){try{e.compressedTexSubImage2D(...arguments)}catch(v){Ze(\"WebGLState:\",v)}}function de(){try{e.compressedTexSubImage3D(...arguments)}catch(v){Ze(\"WebGLState:\",v)}}function ee(){try{e.texStorage2D(...arguments)}catch(v){Ze(\"WebGLState:\",v)}}function xe(){try{e.texStorage3D(...arguments)}catch(v){Ze(\"WebGLState:\",v)}}function Re(){try{e.texImage2D(...arguments)}catch(v){Ze(\"WebGLState:\",v)}}function K(){try{e.texImage3D(...arguments)}catch(v){Ze(\"WebGLState:\",v)}}function Q(v){Ne.equals(v)===!1&&(e.scissor(v.x,v.y,v.z,v.w),Ne.copy(v))}function ue(v){Je.equals(v)===!1&&(e.viewport(v.x,v.y,v.z,v.w),Je.copy(v))}function me(v,te){let J=C.get(te);J===void 0&&(J=new WeakMap,C.set(te,J));let fe=J.get(v);fe===void 0&&(fe=e.getUniformBlockIndex(te,v.name),J.set(v,fe))}function le(v,te){let fe=C.get(te).get(v);L.get(te)!==fe&&(e.uniformBlockBinding(te,fe,v.__bindingPointIndex),L.set(te,fe))}function we(){e.disable(e.BLEND),e.disable(e.CULL_FACE),e.disable(e.DEPTH_TEST),e.disable(e.POLYGON_OFFSET_FILL),e.disable(e.SCISSOR_TEST),e.disable(e.STENCIL_TEST),e.disable(e.SAMPLE_ALPHA_TO_COVERAGE),e.blendEquation(e.FUNC_ADD),e.blendFunc(e.ONE,e.ZERO),e.blendFuncSeparate(e.ONE,e.ZERO,e.ONE,e.ZERO),e.blendColor(0,0,0,0),e.colorMask(!0,!0,!0,!0),e.clearColor(0,0,0,0),e.depthMask(!0),e.depthFunc(e.LESS),d.setReversed(!1),e.clearDepth(1),e.stencilMask(4294967295),e.stencilFunc(e.ALWAYS,0,4294967295),e.stencilOp(e.KEEP,e.KEEP,e.KEEP),e.clearStencil(0),e.cullFace(e.BACK),e.frontFace(e.CCW),e.polygonOffset(0,0),e.activeTexture(e.TEXTURE0),e.bindFramebuffer(e.FRAMEBUFFER,null),e.bindFramebuffer(e.DRAW_FRAMEBUFFER,null),e.bindFramebuffer(e.READ_FRAMEBUFFER,null),e.useProgram(null),e.lineWidth(1),e.scissor(0,0,e.canvas.width,e.canvas.height),e.viewport(0,0,e.canvas.width,e.canvas.height),B={},re=null,Me={},D={},p=new WeakMap,S=[],M=null,y=!1,l=null,s=null,g=null,T=null,E=null,N=null,b=null,w=new Qe(0,0,0),f=0,h=!1,$=null,R=null,V=null,z=null,W=null,Ne.set(0,0,e.canvas.width,e.canvas.height),Je.set(0,0,e.canvas.width,e.canvas.height),a.reset(),d.reset(),_.reset()}return{buffers:{color:a,depth:d,stencil:_},enable:j,disable:ne,bindFramebuffer:Le,drawBuffers:Te,useProgram:Ce,setBlending:He,setMaterial:ze,setFlipSided:Ue,setCullFace:tt,setLineWidth:m,setPolygonOffset:rt,setScissorTest:Ge,activeTexture:qe,bindTexture:ge,unbindTexture:u,compressedTexImage2D:r,compressedTexImage3D:x,texImage2D:Re,texImage3D:K,updateUBOMapping:me,uniformBlockBinding:le,texStorage2D:ee,texStorage3D:xe,texSubImage2D:k,texSubImage3D:q,compressedTexSubImage2D:H,compressedTexSubImage3D:de,scissor:Q,viewport:ue,reset:we}}function id(e,n,t,i,c,a,d){let _=n.has(\"WEBGL_multisampled_render_to_texture\")?n.get(\"WEBGL_multisampled_render_to_texture\"):null,L=typeof navigator>\"u\"?!1:/OculusBrowser/g.test(navigator.userAgent),C=new pt,B=new WeakMap,D,p=new WeakMap,S=!1;try{S=typeof OffscreenCanvas<\"u\"&&new OffscreenCanvas(1,1).getContext(\"2d\")!==null}catch{}function M(u,r){return S?new OffscreenCanvas(u,r):co(\"canvas\")}function y(u,r,x){let k=1,q=ge(u);if((q.width>x||q.height>x)&&(k=x/Math.max(q.width,q.height)),k<1)if(typeof HTMLImageElement<\"u\"&&u instanceof HTMLImageElement||typeof HTMLCanvasElement<\"u\"&&u instanceof HTMLCanvasElement||typeof ImageBitmap<\"u\"&&u instanceof ImageBitmap||typeof VideoFrame<\"u\"&&u instanceof VideoFrame){let H=Math.floor(k*q.width),de=Math.floor(k*q.height);D===void 0&&(D=M(H,de));let ee=r?M(H,de):D;return ee.width=H,ee.height=de,ee.getContext(\"2d\").drawImage(u,0,0,H,de),Ye(\"WebGLRenderer: Texture has been resized from (\"+q.width+\"x\"+q.height+\") to (\"+H+\"x\"+de+\").\"),ee}else return\"data\"in u&&Ye(\"WebGLRenderer: Image in DataTexture is too big (\"+q.width+\"x\"+q.height+\").\"),u;return u}function l(u){return u.generateMipmaps}function s(u){e.generateMipmap(u)}function g(u){return u.isWebGLCubeRenderTarget?e.TEXTURE_CUBE_MAP:u.isWebGL3DRenderTarget?e.TEXTURE_3D:u.isWebGLArrayRenderTarget||u.isCompressedArrayTexture?e.TEXTURE_2D_ARRAY:e.TEXTURE_2D}function T(u,r,x,k,q=!1){if(u!==null){if(e[u]!==void 0)return e[u];Ye(\"WebGLRenderer: Attempt to use non-existing WebGL internal format '\"+u+\"'\")}let H=r;if(r===e.RED&&(x===e.FLOAT&&(H=e.R32F),x===e.HALF_FLOAT&&(H=e.R16F),x===e.UNSIGNED_BYTE&&(H=e.R8)),r===e.RED_INTEGER&&(x===e.UNSIGNED_BYTE&&(H=e.R8UI),x===e.UNSIGNED_SHORT&&(H=e.R16UI),x===e.UNSIGNED_INT&&(H=e.R32UI),x===e.BYTE&&(H=e.R8I),x===e.SHORT&&(H=e.R16I),x===e.INT&&(H=e.R32I)),r===e.RG&&(x===e.FLOAT&&(H=e.RG32F),x===e.HALF_FLOAT&&(H=e.RG16F),x===e.UNSIGNED_BYTE&&(H=e.RG8)),r===e.RG_INTEGER&&(x===e.UNSIGNED_BYTE&&(H=e.RG8UI),x===e.UNSIGNED_SHORT&&(H=e.RG16UI),x===e.UNSIGNED_INT&&(H=e.RG32UI),x===e.BYTE&&(H=e.RG8I),x===e.SHORT&&(H=e.RG16I),x===e.INT&&(H=e.RG32I)),r===e.RGB_INTEGER&&(x===e.UNSIGNED_BYTE&&(H=e.RGB8UI),x===e.UNSIGNED_SHORT&&(H=e.RGB16UI),x===e.UNSIGNED_INT&&(H=e.RGB32UI),x===e.BYTE&&(H=e.RGB8I),x===e.SHORT&&(H=e.RGB16I),x===e.INT&&(H=e.RGB32I)),r===e.RGBA_INTEGER&&(x===e.UNSIGNED_BYTE&&(H=e.RGBA8UI),x===e.UNSIGNED_SHORT&&(H=e.RGBA16UI),x===e.UNSIGNED_INT&&(H=e.RGBA32UI),x===e.BYTE&&(H=e.RGBA8I),x===e.SHORT&&(H=e.RGBA16I),x===e.INT&&(H=e.RGBA32I)),r===e.RGB&&(x===e.UNSIGNED_INT_5_9_9_9_REV&&(H=e.RGB9_E5),x===e.UNSIGNED_INT_10F_11F_11F_REV&&(H=e.R11F_G11F_B10F)),r===e.RGBA){let de=q?Gr:it.getTransfer(k);x===e.FLOAT&&(H=e.RGBA32F),x===e.HALF_FLOAT&&(H=e.RGBA16F),x===e.UNSIGNED_BYTE&&(H=de===$e?e.SRGB8_ALPHA8:e.RGBA8),x===e.UNSIGNED_SHORT_4_4_4_4&&(H=e.RGBA4),x===e.UNSIGNED_SHORT_5_5_5_1&&(H=e.RGB5_A1)}return(H===e.R16F||H===e.R32F||H===e.RG16F||H===e.RG32F||H===e.RGBA16F||H===e.RGBA32F)&&n.get(\"EXT_color_buffer_float\"),H}function E(u,r){let x;return u?r===null||r===kt||r===cn?x=e.DEPTH24_STENCIL8:r===It?x=e.DEPTH32F_STENCIL8:r===En&&(x=e.DEPTH24_STENCIL8,Ye(\"DepthTexture: 16 bit depth attachment is not supported with stencil. Using 24-bit attachment.\")):r===null||r===kt||r===cn?x=e.DEPTH_COMPONENT24:r===It?x=e.DEPTH_COMPONENT32F:r===En&&(x=e.DEPTH_COMPONENT16),x}function N(u,r){return l(u)===!0||u.isFramebufferTexture&&u.minFilter!==Vt&&u.minFilter!==mt?Math.log2(Math.max(r.width,r.height))+1:u.mipmaps!==void 0&&u.mipmaps.length>0?u.mipmaps.length:u.isCompressedTexture&&Array.isArray(u.image)?r.mipmaps.length:1}function b(u){let r=u.target;r.removeEventListener(\"dispose\",b),f(r),r.isVideoTexture&&B.delete(r)}function w(u){let r=u.target;r.removeEventListener(\"dispose\",w),$(r)}function f(u){let r=i.get(u);if(r.__webglInit===void 0)return;let x=u.source,k=p.get(x);if(k){let q=k[r.__cacheKey];q.usedTimes--,q.usedTimes===0&&h(u),Object.keys(k).length===0&&p.delete(x)}i.remove(u)}function h(u){let r=i.get(u);e.deleteTexture(r.__webglTexture);let x=u.source,k=p.get(x);delete k[r.__cacheKey],d.memory.textures--}function $(u){let r=i.get(u);if(u.depthTexture&&(u.depthTexture.dispose(),i.remove(u.depthTexture)),u.isWebGLCubeRenderTarget)for(let k=0;k<6;k++){if(Array.isArray(r.__webglFramebuffer[k]))for(let q=0;q<r.__webglFramebuffer[k].length;q++)e.deleteFramebuffer(r.__webglFramebuffer[k][q]);else e.deleteFramebuffer(r.__webglFramebuffer[k]);r.__webglDepthbuffer&&e.deleteRenderbuffer(r.__webglDepthbuffer[k])}else{if(Array.isArray(r.__webglFramebuffer))for(let k=0;k<r.__webglFramebuffer.length;k++)e.deleteFramebuffer(r.__webglFramebuffer[k]);else e.deleteFramebuffer(r.__webglFramebuffer);if(r.__webglDepthbuffer&&e.deleteRenderbuffer(r.__webglDepthbuffer),r.__webglMultisampledFramebuffer&&e.deleteFramebuffer(r.__webglMultisampledFramebuffer),r.__webglColorRenderbuffer)for(let k=0;k<r.__webglColorRenderbuffer.length;k++)r.__webglColorRenderbuffer[k]&&e.deleteRenderbuffer(r.__webglColorRenderbuffer[k]);r.__webglDepthRenderbuffer&&e.deleteRenderbuffer(r.__webglDepthRenderbuffer)}let x=u.textures;for(let k=0,q=x.length;k<q;k++){let H=i.get(x[k]);H.__webglTexture&&(e.deleteTexture(H.__webglTexture),d.memory.textures--),i.remove(x[k])}i.remove(u)}let R=0;function V(){R=0}function z(){let u=R;return u>=c.maxTextures&&Ye(\"WebGLTextures: Trying to use \"+u+\" texture units while this GPU supports only \"+c.maxTextures),R+=1,u}function W(u){let r=[];return r.push(u.wrapS),r.push(u.wrapT),r.push(u.wrapR||0),r.push(u.magFilter),r.push(u.minFilter),r.push(u.anisotropy),r.push(u.internalFormat),r.push(u.format),r.push(u.type),r.push(u.generateMipmaps),r.push(u.premultiplyAlpha),r.push(u.flipY),r.push(u.unpackAlignment),r.push(u.colorSpace),r.join()}function Y(u,r){let x=i.get(u);if(u.isVideoTexture&&Ge(u),u.isRenderTargetTexture===!1&&u.isExternalTexture!==!0&&u.version>0&&x.__version!==u.version){let k=u.image;if(k===null)Ye(\"WebGLRenderer: Texture marked for update but no image data found.\");else if(k.complete===!1)Ye(\"WebGLRenderer: Texture marked for update but image is incomplete\");else{X(x,u,r);return}}else u.isExternalTexture&&(x.__webglTexture=u.sourceTexture?u.sourceTexture:null);t.bindTexture(e.TEXTURE_2D,x.__webglTexture,e.TEXTURE0+r)}function O(u,r){let x=i.get(u);if(u.isRenderTargetTexture===!1&&u.version>0&&x.__version!==u.version){X(x,u,r);return}else u.isExternalTexture&&(x.__webglTexture=u.sourceTexture?u.sourceTexture:null);t.bindTexture(e.TEXTURE_2D_ARRAY,x.__webglTexture,e.TEXTURE0+r)}function F(u,r){let x=i.get(u);if(u.isRenderTargetTexture===!1&&u.version>0&&x.__version!==u.version){X(x,u,r);return}t.bindTexture(e.TEXTURE_3D,x.__webglTexture,e.TEXTURE0+r)}function ie(u,r){let x=i.get(u);if(u.isCubeDepthTexture!==!0&&u.version>0&&x.__version!==u.version){j(x,u,r);return}t.bindTexture(e.TEXTURE_CUBE_MAP,x.__webglTexture,e.TEXTURE0+r)}let re={[to]:e.REPEAT,[Xn]:e.CLAMP_TO_EDGE,[eo]:e.MIRRORED_REPEAT},Me={[Vt]:e.NEAREST,[no]:e.NEAREST_MIPMAP_NEAREST,[un]:e.NEAREST_MIPMAP_LINEAR,[mt]:e.LINEAR,[wn]:e.LINEAR_MIPMAP_NEAREST,[qt]:e.LINEAR_MIPMAP_LINEAR},Ae={[lo]:e.NEVER,[so]:e.ALWAYS,[oo]:e.LESS,[ii]:e.LEQUAL,[ao]:e.EQUAL,[ni]:e.GEQUAL,[ro]:e.GREATER,[io]:e.NOTEQUAL};function he(u,r){if(r.type===It&&n.has(\"OES_texture_float_linear\")===!1&&(r.magFilter===mt||r.magFilter===wn||r.magFilter===un||r.magFilter===qt||r.minFilter===mt||r.minFilter===wn||r.minFilter===un||r.minFilter===qt)&&Ye(\"WebGLRenderer: Unable to use linear filtering with floating point textures. OES_texture_float_linear not supported on this device.\"),e.texParameteri(u,e.TEXTURE_WRAP_S,re[r.wrapS]),e.texParameteri(u,e.TEXTURE_WRAP_T,re[r.wrapT]),(u===e.TEXTURE_3D||u===e.TEXTURE_2D_ARRAY)&&e.texParameteri(u,e.TEXTURE_WRAP_R,re[r.wrapR]),e.texParameteri(u,e.TEXTURE_MAG_FILTER,Me[r.magFilter]),e.texParameteri(u,e.TEXTURE_MIN_FILTER,Me[r.minFilter]),r.compareFunction&&(e.texParameteri(u,e.TEXTURE_COMPARE_MODE,e.COMPARE_REF_TO_TEXTURE),e.texParameteri(u,e.TEXTURE_COMPARE_FUNC,Ae[r.compareFunction])),n.has(\"EXT_texture_filter_anisotropic\")===!0){if(r.magFilter===Vt||r.minFilter!==un&&r.minFilter!==qt||r.type===It&&n.has(\"OES_texture_float_linear\")===!1)return;if(r.anisotropy>1||i.get(r).__currentAnisotropy){let x=n.get(\"EXT_texture_filter_anisotropic\");e.texParameterf(u,x.TEXTURE_MAX_ANISOTROPY_EXT,Math.min(r.anisotropy,c.getMaxAnisotropy())),i.get(r).__currentAnisotropy=r.anisotropy}}}function Ne(u,r){let x=!1;u.__webglInit===void 0&&(u.__webglInit=!0,r.addEventListener(\"dispose\",b));let k=r.source,q=p.get(k);q===void 0&&(q={},p.set(k,q));let H=W(r);if(H!==u.__cacheKey){q[H]===void 0&&(q[H]={texture:e.createTexture(),usedTimes:0},d.memory.textures++,x=!0),q[H].usedTimes++;let de=q[u.__cacheKey];de!==void 0&&(q[u.__cacheKey].usedTimes--,de.usedTimes===0&&h(r)),u.__cacheKey=H,u.__webglTexture=q[H].texture}return x}function Je(u,r,x){return Math.floor(Math.floor(u/x)/r)}function je(u,r,x,k){let H=u.updateRanges;if(H.length===0)t.texSubImage2D(e.TEXTURE_2D,0,0,0,r.width,r.height,x,k,r.data);else{H.sort((K,Q)=>K.start-Q.start);let de=0;for(let K=1;K<H.length;K++){let Q=H[de],ue=H[K],me=Q.start+Q.count,le=Je(ue.start,r.width,4),we=Je(Q.start,r.width,4);ue.start<=me+1&&le===we&&Je(ue.start+ue.count-1,r.width,4)===le?Q.count=Math.max(Q.count,ue.start+ue.count-Q.start):(++de,H[de]=ue)}H.length=de+1;let ee=e.getParameter(e.UNPACK_ROW_LENGTH),xe=e.getParameter(e.UNPACK_SKIP_PIXELS),Re=e.getParameter(e.UNPACK_SKIP_ROWS);e.pixelStorei(e.UNPACK_ROW_LENGTH,r.width);for(let K=0,Q=H.length;K<Q;K++){let ue=H[K],me=Math.floor(ue.start/4),le=Math.ceil(ue.count/4),we=me%r.width,v=Math.floor(me/r.width),te=le,J=1;e.pixelStorei(e.UNPACK_SKIP_PIXELS,we),e.pixelStorei(e.UNPACK_SKIP_ROWS,v),t.texSubImage2D(e.TEXTURE_2D,0,we,v,te,J,x,k,r.data)}u.clearUpdateRanges(),e.pixelStorei(e.UNPACK_ROW_LENGTH,ee),e.pixelStorei(e.UNPACK_SKIP_PIXELS,xe),e.pixelStorei(e.UNPACK_SKIP_ROWS,Re)}}function X(u,r,x){let k=e.TEXTURE_2D;(r.isDataArrayTexture||r.isCompressedArrayTexture)&&(k=e.TEXTURE_2D_ARRAY),r.isData3DTexture&&(k=e.TEXTURE_3D);let q=Ne(u,r),H=r.source;t.bindTexture(k,u.__webglTexture,e.TEXTURE0+x);let de=i.get(H);if(H.version!==de.__version||q===!0){t.activeTexture(e.TEXTURE0+x);let ee=it.getPrimaries(it.workingColorSpace),xe=r.colorSpace===Yt?null:it.getPrimaries(r.colorSpace),Re=r.colorSpace===Yt||ee===xe?e.NONE:e.BROWSER_DEFAULT_WEBGL;e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,r.flipY),e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,r.premultiplyAlpha),e.pixelStorei(e.UNPACK_ALIGNMENT,r.unpackAlignment),e.pixelStorei(e.UNPACK_COLORSPACE_CONVERSION_WEBGL,Re);let K=y(r.image,!1,c.maxTextureSize);K=qe(r,K);let Q=a.convert(r.format,r.colorSpace),ue=a.convert(r.type),me=T(r.internalFormat,Q,ue,r.colorSpace,r.isVideoTexture);he(k,r);let le,we=r.mipmaps,v=r.isVideoTexture!==!0,te=de.__version===void 0||q===!0,J=H.dataReady,fe=N(r,K);if(r.isDepthTexture)me=E(r.format===Kt,r.type),te&&(v?t.texStorage2D(e.TEXTURE_2D,1,me,K.width,K.height):t.texImage2D(e.TEXTURE_2D,0,me,K.width,K.height,0,Q,ue,null));else if(r.isDataTexture)if(we.length>0){v&&te&&t.texStorage2D(e.TEXTURE_2D,fe,me,we[0].width,we[0].height);for(let Z=0,G=we.length;Z<G;Z++)le=we[Z],v?J&&t.texSubImage2D(e.TEXTURE_2D,Z,0,0,le.width,le.height,Q,ue,le.data):t.texImage2D(e.TEXTURE_2D,Z,me,le.width,le.height,0,Q,ue,le.data);r.generateMipmaps=!1}else v?(te&&t.texStorage2D(e.TEXTURE_2D,fe,me,K.width,K.height),J&&je(r,K,Q,ue)):t.texImage2D(e.TEXTURE_2D,0,me,K.width,K.height,0,Q,ue,K.data);else if(r.isCompressedTexture)if(r.isCompressedArrayTexture){v&&te&&t.texStorage3D(e.TEXTURE_2D_ARRAY,fe,me,we[0].width,we[0].height,K.depth);for(let Z=0,G=we.length;Z<G;Z++)if(le=we[Z],r.format!==bt)if(Q!==null)if(v){if(J)if(r.layerUpdates.size>0){let pe=Ei(le.width,le.height,r.format,r.type);for(let be of r.layerUpdates){let Ke=le.data.subarray(be*pe/le.data.BYTES_PER_ELEMENT,(be+1)*pe/le.data.BYTES_PER_ELEMENT);t.compressedTexSubImage3D(e.TEXTURE_2D_ARRAY,Z,0,0,be,le.width,le.height,1,Q,Ke)}r.clearLayerUpdates()}else t.compressedTexSubImage3D(e.TEXTURE_2D_ARRAY,Z,0,0,0,le.width,le.height,K.depth,Q,le.data)}else t.compressedTexImage3D(e.TEXTURE_2D_ARRAY,Z,me,le.width,le.height,K.depth,0,le.data,0,0);else Ye(\"WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()\");else v?J&&t.texSubImage3D(e.TEXTURE_2D_ARRAY,Z,0,0,0,le.width,le.height,K.depth,Q,ue,le.data):t.texImage3D(e.TEXTURE_2D_ARRAY,Z,me,le.width,le.height,K.depth,0,Q,ue,le.data)}else{v&&te&&t.texStorage2D(e.TEXTURE_2D,fe,me,we[0].width,we[0].height);for(let Z=0,G=we.length;Z<G;Z++)le=we[Z],r.format!==bt?Q!==null?v?J&&t.compressedTexSubImage2D(e.TEXTURE_2D,Z,0,0,le.width,le.height,Q,le.data):t.compressedTexImage2D(e.TEXTURE_2D,Z,me,le.width,le.height,0,le.data):Ye(\"WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()\"):v?J&&t.texSubImage2D(e.TEXTURE_2D,Z,0,0,le.width,le.height,Q,ue,le.data):t.texImage2D(e.TEXTURE_2D,Z,me,le.width,le.height,0,Q,ue,le.data)}else if(r.isDataArrayTexture)if(v){if(te&&t.texStorage3D(e.TEXTURE_2D_ARRAY,fe,me,K.width,K.height,K.depth),J)if(r.layerUpdates.size>0){let Z=Ei(K.width,K.height,r.format,r.type);for(let G of r.layerUpdates){let pe=K.data.subarray(G*Z/K.data.BYTES_PER_ELEMENT,(G+1)*Z/K.data.BYTES_PER_ELEMENT);t.texSubImage3D(e.TEXTURE_2D_ARRAY,0,0,0,G,K.width,K.height,1,Q,ue,pe)}r.clearLayerUpdates()}else t.texSubImage3D(e.TEXTURE_2D_ARRAY,0,0,0,0,K.width,K.height,K.depth,Q,ue,K.data)}else t.texImage3D(e.TEXTURE_2D_ARRAY,0,me,K.width,K.height,K.depth,0,Q,ue,K.data);else if(r.isData3DTexture)v?(te&&t.texStorage3D(e.TEXTURE_3D,fe,me,K.width,K.height,K.depth),J&&t.texSubImage3D(e.TEXTURE_3D,0,0,0,0,K.width,K.height,K.depth,Q,ue,K.data)):t.texImage3D(e.TEXTURE_3D,0,me,K.width,K.height,K.depth,0,Q,ue,K.data);else if(r.isFramebufferTexture){if(te)if(v)t.texStorage2D(e.TEXTURE_2D,fe,me,K.width,K.height);else{let Z=K.width,G=K.height;for(let pe=0;pe<fe;pe++)t.texImage2D(e.TEXTURE_2D,pe,me,Z,G,0,Q,ue,null),Z>>=1,G>>=1}}else if(we.length>0){if(v&&te){let Z=ge(we[0]);t.texStorage2D(e.TEXTURE_2D,fe,me,Z.width,Z.height)}for(let Z=0,G=we.length;Z<G;Z++)le=we[Z],v?J&&t.texSubImage2D(e.TEXTURE_2D,Z,0,0,Q,ue,le):t.texImage2D(e.TEXTURE_2D,Z,me,Q,ue,le);r.generateMipmaps=!1}else if(v){if(te){let Z=ge(K);t.texStorage2D(e.TEXTURE_2D,fe,me,Z.width,Z.height)}J&&t.texSubImage2D(e.TEXTURE_2D,0,0,0,Q,ue,K)}else t.texImage2D(e.TEXTURE_2D,0,me,Q,ue,K);l(r)&&s(k),de.__version=H.version,r.onUpdate&&r.onUpdate(r)}u.__version=r.version}function j(u,r,x){if(r.image.length!==6)return;let k=Ne(u,r),q=r.source;t.bindTexture(e.TEXTURE_CUBE_MAP,u.__webglTexture,e.TEXTURE0+x);let H=i.get(q);if(q.version!==H.__version||k===!0){t.activeTexture(e.TEXTURE0+x);let de=it.getPrimaries(it.workingColorSpace),ee=r.colorSpace===Yt?null:it.getPrimaries(r.colorSpace),xe=r.colorSpace===Yt||de===ee?e.NONE:e.BROWSER_DEFAULT_WEBGL;e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,r.flipY),e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,r.premultiplyAlpha),e.pixelStorei(e.UNPACK_ALIGNMENT,r.unpackAlignment),e.pixelStorei(e.UNPACK_COLORSPACE_CONVERSION_WEBGL,xe);let Re=r.isCompressedTexture||r.image[0].isCompressedTexture,K=r.image[0]&&r.image[0].isDataTexture,Q=[];for(let G=0;G<6;G++)!Re&&!K?Q[G]=y(r.image[G],!0,c.maxCubemapSize):Q[G]=K?r.image[G].image:r.image[G],Q[G]=qe(r,Q[G]);let ue=Q[0],me=a.convert(r.format,r.colorSpace),le=a.convert(r.type),we=T(r.internalFormat,me,le,r.colorSpace),v=r.isVideoTexture!==!0,te=H.__version===void 0||k===!0,J=q.dataReady,fe=N(r,ue);he(e.TEXTURE_CUBE_MAP,r);let Z;if(Re){v&&te&&t.texStorage2D(e.TEXTURE_CUBE_MAP,fe,we,ue.width,ue.height);for(let G=0;G<6;G++){Z=Q[G].mipmaps;for(let pe=0;pe<Z.length;pe++){let be=Z[pe];r.format!==bt?me!==null?v?J&&t.compressedTexSubImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+G,pe,0,0,be.width,be.height,me,be.data):t.compressedTexImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+G,pe,we,be.width,be.height,0,be.data):Ye(\"WebGLRenderer: Attempt to load unsupported compressed texture format in .setTextureCube()\"):v?J&&t.texSubImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+G,pe,0,0,be.width,be.height,me,le,be.data):t.texImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+G,pe,we,be.width,be.height,0,me,le,be.data)}}}else{if(Z=r.mipmaps,v&&te){Z.length>0&&fe++;let G=ge(Q[0]);t.texStorage2D(e.TEXTURE_CUBE_MAP,fe,we,G.width,G.height)}for(let G=0;G<6;G++)if(K){v?J&&t.texSubImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+G,0,0,0,Q[G].width,Q[G].height,me,le,Q[G].data):t.texImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+G,0,we,Q[G].width,Q[G].height,0,me,le,Q[G].data);for(let pe=0;pe<Z.length;pe++){let Ke=Z[pe].image[G].image;v?J&&t.texSubImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+G,pe+1,0,0,Ke.width,Ke.height,me,le,Ke.data):t.texImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+G,pe+1,we,Ke.width,Ke.height,0,me,le,Ke.data)}}else{v?J&&t.texSubImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+G,0,0,0,me,le,Q[G]):t.texImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+G,0,we,me,le,Q[G]);for(let pe=0;pe<Z.length;pe++){let be=Z[pe];v?J&&t.texSubImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+G,pe+1,0,0,me,le,be.image[G]):t.texImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+G,pe+1,we,me,le,be.image[G])}}}l(r)&&s(e.TEXTURE_CUBE_MAP),H.__version=q.version,r.onUpdate&&r.onUpdate(r)}u.__version=r.version}function ne(u,r,x,k,q,H){let de=a.convert(x.format,x.colorSpace),ee=a.convert(x.type),xe=T(x.internalFormat,de,ee,x.colorSpace),Re=i.get(r),K=i.get(x);if(K.__renderTarget=r,!Re.__hasExternalTextures){let Q=Math.max(1,r.width>>H),ue=Math.max(1,r.height>>H);q===e.TEXTURE_3D||q===e.TEXTURE_2D_ARRAY?t.texImage3D(q,H,xe,Q,ue,r.depth,0,de,ee,null):t.texImage2D(q,H,xe,Q,ue,0,de,ee,null)}t.bindFramebuffer(e.FRAMEBUFFER,u),rt(r)?_.framebufferTexture2DMultisampleEXT(e.FRAMEBUFFER,k,q,K.__webglTexture,0,m(r)):(q===e.TEXTURE_2D||q>=e.TEXTURE_CUBE_MAP_POSITIVE_X&&q<=e.TEXTURE_CUBE_MAP_NEGATIVE_Z)&&e.framebufferTexture2D(e.FRAMEBUFFER,k,q,K.__webglTexture,H),t.bindFramebuffer(e.FRAMEBUFFER,null)}function Le(u,r,x){if(e.bindRenderbuffer(e.RENDERBUFFER,u),r.depthBuffer){let k=r.depthTexture,q=k&&k.isDepthTexture?k.type:null,H=E(r.stencilBuffer,q),de=r.stencilBuffer?e.DEPTH_STENCIL_ATTACHMENT:e.DEPTH_ATTACHMENT;rt(r)?_.renderbufferStorageMultisampleEXT(e.RENDERBUFFER,m(r),H,r.width,r.height):x?e.renderbufferStorageMultisample(e.RENDERBUFFER,m(r),H,r.width,r.height):e.renderbufferStorage(e.RENDERBUFFER,H,r.width,r.height),e.framebufferRenderbuffer(e.FRAMEBUFFER,de,e.RENDERBUFFER,u)}else{let k=r.textures;for(let q=0;q<k.length;q++){let H=k[q],de=a.convert(H.format,H.colorSpace),ee=a.convert(H.type),xe=T(H.internalFormat,de,ee,H.colorSpace);rt(r)?_.renderbufferStorageMultisampleEXT(e.RENDERBUFFER,m(r),xe,r.width,r.height):x?e.renderbufferStorageMultisample(e.RENDERBUFFER,m(r),xe,r.width,r.height):e.renderbufferStorage(e.RENDERBUFFER,xe,r.width,r.height)}}e.bindRenderbuffer(e.RENDERBUFFER,null)}function Te(u,r,x){let k=r.isWebGLCubeRenderTarget===!0;if(t.bindFramebuffer(e.FRAMEBUFFER,u),!(r.depthTexture&&r.depthTexture.isDepthTexture))throw new Error(\"renderTarget.depthTexture must be an instance of THREE.DepthTexture\");let q=i.get(r.depthTexture);if(q.__renderTarget=r,(!q.__webglTexture||r.depthTexture.image.width!==r.width||r.depthTexture.image.height!==r.height)&&(r.depthTexture.image.width=r.width,r.depthTexture.image.height=r.height,r.depthTexture.needsUpdate=!0),k){if(q.__webglInit===void 0&&(q.__webglInit=!0,r.depthTexture.addEventListener(\"dispose\",b)),q.__webglTexture===void 0){q.__webglTexture=e.createTexture(),t.bindTexture(e.TEXTURE_CUBE_MAP,q.__webglTexture),he(e.TEXTURE_CUBE_MAP,r.depthTexture);let Re=a.convert(r.depthTexture.format),K=a.convert(r.depthTexture.type),Q;r.depthTexture.format===Jt?Q=e.DEPTH_COMPONENT24:r.depthTexture.format===Kt&&(Q=e.DEPTH24_STENCIL8);for(let ue=0;ue<6;ue++)e.texImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+ue,0,Q,r.width,r.height,0,Re,K,null)}}else Y(r.depthTexture,0);let H=q.__webglTexture,de=m(r),ee=k?e.TEXTURE_CUBE_MAP_POSITIVE_X+x:e.TEXTURE_2D,xe=r.depthTexture.format===Kt?e.DEPTH_STENCIL_ATTACHMENT:e.DEPTH_ATTACHMENT;if(r.depthTexture.format===Jt)rt(r)?_.framebufferTexture2DMultisampleEXT(e.FRAMEBUFFER,xe,ee,H,0,de):e.framebufferTexture2D(e.FRAMEBUFFER,xe,ee,H,0);else if(r.depthTexture.format===Kt)rt(r)?_.framebufferTexture2DMultisampleEXT(e.FRAMEBUFFER,xe,ee,H,0,de):e.framebufferTexture2D(e.FRAMEBUFFER,xe,ee,H,0);else throw new Error(\"Unknown depthTexture format\")}function Ce(u){let r=i.get(u),x=u.isWebGLCubeRenderTarget===!0;if(r.__boundDepthTexture!==u.depthTexture){let k=u.depthTexture;if(r.__depthDisposeCallback&&r.__depthDisposeCallback(),k){let q=()=>{delete r.__boundDepthTexture,delete r.__depthDisposeCallback,k.removeEventListener(\"dispose\",q)};k.addEventListener(\"dispose\",q),r.__depthDisposeCallback=q}r.__boundDepthTexture=k}if(u.depthTexture&&!r.__autoAllocateDepthBuffer)if(x)for(let k=0;k<6;k++)Te(r.__webglFramebuffer[k],u,k);else{let k=u.texture.mipmaps;k&&k.length>0?Te(r.__webglFramebuffer[0],u,0):Te(r.__webglFramebuffer,u,0)}else if(x){r.__webglDepthbuffer=[];for(let k=0;k<6;k++)if(t.bindFramebuffer(e.FRAMEBUFFER,r.__webglFramebuffer[k]),r.__webglDepthbuffer[k]===void 0)r.__webglDepthbuffer[k]=e.createRenderbuffer(),Le(r.__webglDepthbuffer[k],u,!1);else{let q=u.stencilBuffer?e.DEPTH_STENCIL_ATTACHMENT:e.DEPTH_ATTACHMENT,H=r.__webglDepthbuffer[k];e.bindRenderbuffer(e.RENDERBUFFER,H),e.framebufferRenderbuffer(e.FRAMEBUFFER,q,e.RENDERBUFFER,H)}}else{let k=u.texture.mipmaps;if(k&&k.length>0?t.bindFramebuffer(e.FRAMEBUFFER,r.__webglFramebuffer[0]):t.bindFramebuffer(e.FRAMEBUFFER,r.__webglFramebuffer),r.__webglDepthbuffer===void 0)r.__webglDepthbuffer=e.createRenderbuffer(),Le(r.__webglDepthbuffer,u,!1);else{let q=u.stencilBuffer?e.DEPTH_STENCIL_ATTACHMENT:e.DEPTH_ATTACHMENT,H=r.__webglDepthbuffer;e.bindRenderbuffer(e.RENDERBUFFER,H),e.framebufferRenderbuffer(e.FRAMEBUFFER,q,e.RENDERBUFFER,H)}}t.bindFramebuffer(e.FRAMEBUFFER,null)}function st(u,r,x){let k=i.get(u);r!==void 0&&ne(k.__webglFramebuffer,u,u.texture,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,0),x!==void 0&&Ce(u)}function ye(u){let r=u.texture,x=i.get(u),k=i.get(r);u.addEventListener(\"dispose\",w);let q=u.textures,H=u.isWebGLCubeRenderTarget===!0,de=q.length>1;if(de||(k.__webglTexture===void 0&&(k.__webglTexture=e.createTexture()),k.__version=r.version,d.memory.textures++),H){x.__webglFramebuffer=[];for(let ee=0;ee<6;ee++)if(r.mipmaps&&r.mipmaps.length>0){x.__webglFramebuffer[ee]=[];for(let xe=0;xe<r.mipmaps.length;xe++)x.__webglFramebuffer[ee][xe]=e.createFramebuffer()}else x.__webglFramebuffer[ee]=e.createFramebuffer()}else{if(r.mipmaps&&r.mipmaps.length>0){x.__webglFramebuffer=[];for(let ee=0;ee<r.mipmaps.length;ee++)x.__webglFramebuffer[ee]=e.createFramebuffer()}else x.__webglFramebuffer=e.createFramebuffer();if(de)for(let ee=0,xe=q.length;ee<xe;ee++){let Re=i.get(q[ee]);Re.__webglTexture===void 0&&(Re.__webglTexture=e.createTexture(),d.memory.textures++)}if(u.samples>0&&rt(u)===!1){x.__webglMultisampledFramebuffer=e.createFramebuffer(),x.__webglColorRenderbuffer=[],t.bindFramebuffer(e.FRAMEBUFFER,x.__webglMultisampledFramebuffer);for(let ee=0;ee<q.length;ee++){let xe=q[ee];x.__webglColorRenderbuffer[ee]=e.createRenderbuffer(),e.bindRenderbuffer(e.RENDERBUFFER,x.__webglColorRenderbuffer[ee]);let Re=a.convert(xe.format,xe.colorSpace),K=a.convert(xe.type),Q=T(xe.internalFormat,Re,K,xe.colorSpace,u.isXRRenderTarget===!0),ue=m(u);e.renderbufferStorageMultisample(e.RENDERBUFFER,ue,Q,u.width,u.height),e.framebufferRenderbuffer(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0+ee,e.RENDERBUFFER,x.__webglColorRenderbuffer[ee])}e.bindRenderbuffer(e.RENDERBUFFER,null),u.depthBuffer&&(x.__webglDepthRenderbuffer=e.createRenderbuffer(),Le(x.__webglDepthRenderbuffer,u,!0)),t.bindFramebuffer(e.FRAMEBUFFER,null)}}if(H){t.bindTexture(e.TEXTURE_CUBE_MAP,k.__webglTexture),he(e.TEXTURE_CUBE_MAP,r);for(let ee=0;ee<6;ee++)if(r.mipmaps&&r.mipmaps.length>0)for(let xe=0;xe<r.mipmaps.length;xe++)ne(x.__webglFramebuffer[ee][xe],u,r,e.COLOR_ATTACHMENT0,e.TEXTURE_CUBE_MAP_POSITIVE_X+ee,xe);else ne(x.__webglFramebuffer[ee],u,r,e.COLOR_ATTACHMENT0,e.TEXTURE_CUBE_MAP_POSITIVE_X+ee,0);l(r)&&s(e.TEXTURE_CUBE_MAP),t.unbindTexture()}else if(de){for(let ee=0,xe=q.length;ee<xe;ee++){let Re=q[ee],K=i.get(Re),Q=e.TEXTURE_2D;(u.isWebGL3DRenderTarget||u.isWebGLArrayRenderTarget)&&(Q=u.isWebGL3DRenderTarget?e.TEXTURE_3D:e.TEXTURE_2D_ARRAY),t.bindTexture(Q,K.__webglTexture),he(Q,Re),ne(x.__webglFramebuffer,u,Re,e.COLOR_ATTACHMENT0+ee,Q,0),l(Re)&&s(Q)}t.unbindTexture()}else{let ee=e.TEXTURE_2D;if((u.isWebGL3DRenderTarget||u.isWebGLArrayRenderTarget)&&(ee=u.isWebGL3DRenderTarget?e.TEXTURE_3D:e.TEXTURE_2D_ARRAY),t.bindTexture(ee,k.__webglTexture),he(ee,r),r.mipmaps&&r.mipmaps.length>0)for(let xe=0;xe<r.mipmaps.length;xe++)ne(x.__webglFramebuffer[xe],u,r,e.COLOR_ATTACHMENT0,ee,xe);else ne(x.__webglFramebuffer,u,r,e.COLOR_ATTACHMENT0,ee,0);l(r)&&s(ee),t.unbindTexture()}u.depthBuffer&&Ce(u)}function He(u){let r=u.textures;for(let x=0,k=r.length;x<k;x++){let q=r[x];if(l(q)){let H=g(u),de=i.get(q).__webglTexture;t.bindTexture(H,de),s(H),t.unbindTexture()}}}let ze=[],Ue=[];function tt(u){if(u.samples>0){if(rt(u)===!1){let r=u.textures,x=u.width,k=u.height,q=e.COLOR_BUFFER_BIT,H=u.stencilBuffer?e.DEPTH_STENCIL_ATTACHMENT:e.DEPTH_ATTACHMENT,de=i.get(u),ee=r.length>1;if(ee)for(let Re=0;Re<r.length;Re++)t.bindFramebuffer(e.FRAMEBUFFER,de.__webglMultisampledFramebuffer),e.framebufferRenderbuffer(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0+Re,e.RENDERBUFFER,null),t.bindFramebuffer(e.FRAMEBUFFER,de.__webglFramebuffer),e.framebufferTexture2D(e.DRAW_FRAMEBUFFER,e.COLOR_ATTACHMENT0+Re,e.TEXTURE_2D,null,0);t.bindFramebuffer(e.READ_FRAMEBUFFER,de.__webglMultisampledFramebuffer);let xe=u.texture.mipmaps;xe&&xe.length>0?t.bindFramebuffer(e.DRAW_FRAMEBUFFER,de.__webglFramebuffer[0]):t.bindFramebuffer(e.DRAW_FRAMEBUFFER,de.__webglFramebuffer);for(let Re=0;Re<r.length;Re++){if(u.resolveDepthBuffer&&(u.depthBuffer&&(q|=e.DEPTH_BUFFER_BIT),u.stencilBuffer&&u.resolveStencilBuffer&&(q|=e.STENCIL_BUFFER_BIT)),ee){e.framebufferRenderbuffer(e.READ_FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.RENDERBUFFER,de.__webglColorRenderbuffer[Re]);let K=i.get(r[Re]).__webglTexture;e.framebufferTexture2D(e.DRAW_FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,K,0)}e.blitFramebuffer(0,0,x,k,0,0,x,k,q,e.NEAREST),L===!0&&(ze.length=0,Ue.length=0,ze.push(e.COLOR_ATTACHMENT0+Re),u.depthBuffer&&u.resolveDepthBuffer===!1&&(ze.push(H),Ue.push(H),e.invalidateFramebuffer(e.DRAW_FRAMEBUFFER,Ue)),e.invalidateFramebuffer(e.READ_FRAMEBUFFER,ze))}if(t.bindFramebuffer(e.READ_FRAMEBUFFER,null),t.bindFramebuffer(e.DRAW_FRAMEBUFFER,null),ee)for(let Re=0;Re<r.length;Re++){t.bindFramebuffer(e.FRAMEBUFFER,de.__webglMultisampledFramebuffer),e.framebufferRenderbuffer(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0+Re,e.RENDERBUFFER,de.__webglColorRenderbuffer[Re]);let K=i.get(r[Re]).__webglTexture;t.bindFramebuffer(e.FRAMEBUFFER,de.__webglFramebuffer),e.framebufferTexture2D(e.DRAW_FRAMEBUFFER,e.COLOR_ATTACHMENT0+Re,e.TEXTURE_2D,K,0)}t.bindFramebuffer(e.DRAW_FRAMEBUFFER,de.__webglMultisampledFramebuffer)}else if(u.depthBuffer&&u.resolveDepthBuffer===!1&&L){let r=u.stencilBuffer?e.DEPTH_STENCIL_ATTACHMENT:e.DEPTH_ATTACHMENT;e.invalidateFramebuffer(e.DRAW_FRAMEBUFFER,[r])}}}function m(u){return Math.min(c.maxSamples,u.samples)}function rt(u){let r=i.get(u);return u.samples>0&&n.has(\"WEBGL_multisampled_render_to_texture\")===!0&&r.__useRenderToTexture!==!1}function Ge(u){let r=d.render.frame;B.get(u)!==r&&(B.set(u,r),u.update())}function qe(u,r){let x=u.colorSpace,k=u.format,q=u.type;return u.isCompressedTexture===!0||u.isVideoTexture===!0||x!==Rn&&x!==Yt&&(it.getTransfer(x)===$e?(k!==bt||q!==xt)&&Ye(\"WebGLTextures: sRGB encoded textures have to use RGBAFormat and UnsignedByteType.\"):Ze(\"WebGLTextures: Unsupported texture color space:\",x)),r}function ge(u){return typeof HTMLImageElement<\"u\"&&u instanceof HTMLImageElement?(C.width=u.naturalWidth||u.width,C.height=u.naturalHeight||u.height):typeof VideoFrame<\"u\"&&u instanceof VideoFrame?(C.width=u.displayWidth,C.height=u.displayHeight):(C.width=u.width,C.height=u.height),C}this.allocateTextureUnit=z,this.resetTextureUnits=V,this.setTexture2D=Y,this.setTexture2DArray=O,this.setTexture3D=F,this.setTextureCube=ie,this.rebindTextures=st,this.setupRenderTarget=ye,this.updateRenderTargetMipmap=He,this.updateMultisampleRenderTarget=tt,this.setupDepthRenderbuffer=Ce,this.setupFrameBufferTexture=ne,this.useMultisampledRTT=rt,this.isReversedDepthBuffer=function(){return t.buffers.depth.getReversed()}}function rd(e,n){function t(i,c=Yt){let a,d=it.getTransfer(c);if(i===xt)return e.UNSIGNED_BYTE;if(i===Vr)return e.UNSIGNED_SHORT_4_4_4_4;if(i===kr)return e.UNSIGNED_SHORT_5_5_5_1;if(i===fo)return e.UNSIGNED_INT_5_9_9_9_REV;if(i===uo)return e.UNSIGNED_INT_10F_11F_11F_REV;if(i===po)return e.BYTE;if(i===ho)return e.SHORT;if(i===En)return e.UNSIGNED_SHORT;if(i===br)return e.INT;if(i===kt)return e.UNSIGNED_INT;if(i===It)return e.FLOAT;if(i===yt)return e.HALF_FLOAT;if(i===mo)return e.ALPHA;if(i===_o)return e.RGB;if(i===bt)return e.RGBA;if(i===Jt)return e.DEPTH_COMPONENT;if(i===Kt)return e.DEPTH_STENCIL;if(i===go)return e.RED;if(i===Wr)return e.RED_INTEGER;if(i===ln)return e.RG;if(i===zr)return e.RG_INTEGER;if(i===Xr)return e.RGBA_INTEGER;if(i===In||i===Nn||i===yn||i===Fn)if(d===$e)if(a=n.get(\"WEBGL_compressed_texture_s3tc_srgb\"),a!==null){if(i===In)return a.COMPRESSED_SRGB_S3TC_DXT1_EXT;if(i===Nn)return a.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT;if(i===yn)return a.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT;if(i===Fn)return a.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT}else return null;else if(a=n.get(\"WEBGL_compressed_texture_s3tc\"),a!==null){if(i===In)return a.COMPRESSED_RGB_S3TC_DXT1_EXT;if(i===Nn)return a.COMPRESSED_RGBA_S3TC_DXT1_EXT;if(i===yn)return a.COMPRESSED_RGBA_S3TC_DXT3_EXT;if(i===Fn)return a.COMPRESSED_RGBA_S3TC_DXT5_EXT}else return null;if(i===xi||i===Mi||i===Ti||i===Ai)if(a=n.get(\"WEBGL_compressed_texture_pvrtc\"),a!==null){if(i===xi)return a.COMPRESSED_RGB_PVRTC_4BPPV1_IMG;if(i===Mi)return a.COMPRESSED_RGB_PVRTC_2BPPV1_IMG;if(i===Ti)return a.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;if(i===Ai)return a.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG}else return null;if(i===Ri||i===Ci||i===bi||i===Pi||i===Li||i===Di||i===Ui)if(a=n.get(\"WEBGL_compressed_texture_etc\"),a!==null){if(i===Ri||i===Ci)return d===$e?a.COMPRESSED_SRGB8_ETC2:a.COMPRESSED_RGB8_ETC2;if(i===bi)return d===$e?a.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC:a.COMPRESSED_RGBA8_ETC2_EAC;if(i===Pi)return a.COMPRESSED_R11_EAC;if(i===Li)return a.COMPRESSED_SIGNED_R11_EAC;if(i===Di)return a.COMPRESSED_RG11_EAC;if(i===Ui)return a.COMPRESSED_SIGNED_RG11_EAC}else return null;if(i===wi||i===Ii||i===Ni||i===yi||i===Fi||i===Oi||i===Bi||i===Gi||i===Hi||i===Vi||i===ki||i===Wi||i===zi||i===Xi)if(a=n.get(\"WEBGL_compressed_texture_astc\"),a!==null){if(i===wi)return d===$e?a.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR:a.COMPRESSED_RGBA_ASTC_4x4_KHR;if(i===Ii)return d===$e?a.COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR:a.COMPRESSED_RGBA_ASTC_5x4_KHR;if(i===Ni)return d===$e?a.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR:a.COMPRESSED_RGBA_ASTC_5x5_KHR;if(i===yi)return d===$e?a.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR:a.COMPRESSED_RGBA_ASTC_6x5_KHR;if(i===Fi)return d===$e?a.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR:a.COMPRESSED_RGBA_ASTC_6x6_KHR;if(i===Oi)return d===$e?a.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR:a.COMPRESSED_RGBA_ASTC_8x5_KHR;if(i===Bi)return d===$e?a.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR:a.COMPRESSED_RGBA_ASTC_8x6_KHR;if(i===Gi)return d===$e?a.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR:a.COMPRESSED_RGBA_ASTC_8x8_KHR;if(i===Hi)return d===$e?a.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR:a.COMPRESSED_RGBA_ASTC_10x5_KHR;if(i===Vi)return d===$e?a.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR:a.COMPRESSED_RGBA_ASTC_10x6_KHR;if(i===ki)return d===$e?a.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR:a.COMPRESSED_RGBA_ASTC_10x8_KHR;if(i===Wi)return d===$e?a.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR:a.COMPRESSED_RGBA_ASTC_10x10_KHR;if(i===zi)return d===$e?a.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR:a.COMPRESSED_RGBA_ASTC_12x10_KHR;if(i===Xi)return d===$e?a.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR:a.COMPRESSED_RGBA_ASTC_12x12_KHR}else return null;if(i===Yi||i===qi||i===Ki)if(a=n.get(\"EXT_texture_compression_bptc\"),a!==null){if(i===Yi)return d===$e?a.COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT:a.COMPRESSED_RGBA_BPTC_UNORM_EXT;if(i===qi)return a.COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT;if(i===Ki)return a.COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT}else return null;if(i===$i||i===Zi||i===Qi||i===Ji)if(a=n.get(\"EXT_texture_compression_rgtc\"),a!==null){if(i===$i)return a.COMPRESSED_RED_RGTC1_EXT;if(i===Zi)return a.COMPRESSED_SIGNED_RED_RGTC1_EXT;if(i===Qi)return a.COMPRESSED_RED_GREEN_RGTC2_EXT;if(i===Ji)return a.COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT}else return null;return i===cn?e.UNSIGNED_INT_24_8:e[i]!==void 0?e[i]:null}return{convert:t}}var ad=`\nvoid main() {\n\n\tgl_Position = vec4( position, 1.0 );\n\n}`,od=`\nuniform sampler2DArray depthColor;\nuniform float depthWidth;\nuniform float depthHeight;\n\nvoid main() {\n\n\tvec2 coord = vec2( gl_FragCoord.x / depthWidth, gl_FragCoord.y / depthHeight );\n\n\tif ( coord.x >= 1.0 ) {\n\n\t\tgl_FragDepth = texture( depthColor, vec3( coord.x - 1.0, coord.y, 1 ) ).r;\n\n\t} else {\n\n\t\tgl_FragDepth = texture( depthColor, vec3( coord.x, coord.y, 0 ) ).r;\n\n\t}\n\n}`,jn=class{constructor(){this.texture=null,this.mesh=null,this.depthNear=0,this.depthFar=0}init(n,t){if(this.texture===null){let i=new Yr(n.texture);(n.depthNear!==t.depthNear||n.depthFar!==t.depthFar)&&(this.depthNear=n.depthNear,this.depthFar=n.depthFar),this.texture=i}}getMesh(n){if(this.texture!==null&&this.mesh===null){let t=n.cameras[0].viewport,i=new Dt({vertexShader:ad,fragmentShader:od,uniforms:{depthColor:{value:this.texture},depthWidth:{value:t.z},depthHeight:{value:t.w}}});this.mesh=new Lt(new Rr(20,20),i)}return this.mesh}reset(){this.texture=null,this.mesh=null}getDepthTexture(){return this.texture}},ei=class extends vo{constructor(n,t){super();let i=this,c=null,a=1,d=null,_=\"local-floor\",L=1,C=null,B=null,D=null,p=null,S=null,M=null,y=typeof XRWebGLBinding<\"u\",l=new jn,s={},g=t.getContextAttributes(),T=null,E=null,N=[],b=[],w=new pt,f=null,h=new mn;h.viewport=new ut;let $=new mn;$.viewport=new ut;let R=[h,$],V=new So,z=null,W=null;this.cameraAutoUpdate=!0,this.enabled=!1,this.isPresenting=!1,this.getController=function(X){let j=N[X];return j===void 0&&(j=new On,N[X]=j),j.getTargetRaySpace()},this.getControllerGrip=function(X){let j=N[X];return j===void 0&&(j=new On,N[X]=j),j.getGripSpace()},this.getHand=function(X){let j=N[X];return j===void 0&&(j=new On,N[X]=j),j.getHandSpace()};function Y(X){let j=b.indexOf(X.inputSource);if(j===-1)return;let ne=N[j];ne!==void 0&&(ne.update(X.inputSource,X.frame,C||d),ne.dispatchEvent({type:X.type,data:X.inputSource}))}function O(){c.removeEventListener(\"select\",Y),c.removeEventListener(\"selectstart\",Y),c.removeEventListener(\"selectend\",Y),c.removeEventListener(\"squeeze\",Y),c.removeEventListener(\"squeezestart\",Y),c.removeEventListener(\"squeezeend\",Y),c.removeEventListener(\"end\",O),c.removeEventListener(\"inputsourceschange\",F);for(let X=0;X<N.length;X++){let j=b[X];j!==null&&(b[X]=null,N[X].disconnect(j))}z=null,W=null,l.reset();for(let X in s)delete s[X];n.setRenderTarget(T),S=null,p=null,D=null,c=null,E=null,je.stop(),i.isPresenting=!1,n.setPixelRatio(f),n.setSize(w.width,w.height,!1),i.dispatchEvent({type:\"sessionend\"})}this.setFramebufferScaleFactor=function(X){a=X,i.isPresenting===!0&&Ye(\"WebXRManager: Cannot change framebuffer scale while presenting.\")},this.setReferenceSpaceType=function(X){_=X,i.isPresenting===!0&&Ye(\"WebXRManager: Cannot change reference space type while presenting.\")},this.getReferenceSpace=function(){return C||d},this.setReferenceSpace=function(X){C=X},this.getBaseLayer=function(){return p!==null?p:S},this.getBinding=function(){return D===null&&y&&(D=new XRWebGLBinding(c,t)),D},this.getFrame=function(){return M},this.getSession=function(){return c},this.setSession=async function(X){if(c=X,c!==null){if(T=n.getRenderTarget(),c.addEventListener(\"select\",Y),c.addEventListener(\"selectstart\",Y),c.addEventListener(\"selectend\",Y),c.addEventListener(\"squeeze\",Y),c.addEventListener(\"squeezestart\",Y),c.addEventListener(\"squeezeend\",Y),c.addEventListener(\"end\",O),c.addEventListener(\"inputsourceschange\",F),g.xrCompatible!==!0&&await t.makeXRCompatible(),f=n.getPixelRatio(),n.getSize(w),y&&\"createProjectionLayer\"in XRWebGLBinding.prototype){let ne=null,Le=null,Te=null;g.depth&&(Te=g.stencil?t.DEPTH24_STENCIL8:t.DEPTH_COMPONENT24,ne=g.stencil?Kt:Jt,Le=g.stencil?cn:kt);let Ce={colorFormat:t.RGBA8,depthFormat:Te,scaleFactor:a};D=this.getBinding(),p=D.createProjectionLayer(Ce),c.updateRenderState({layers:[p]}),n.setPixelRatio(1),n.setSize(p.textureWidth,p.textureHeight,!1),E=new Tt(p.textureWidth,p.textureHeight,{format:bt,type:xt,depthTexture:new Sn(p.textureWidth,p.textureHeight,Le,void 0,void 0,void 0,void 0,void 0,void 0,ne),stencilBuffer:g.stencil,colorSpace:n.outputColorSpace,samples:g.antialias?4:0,resolveDepthBuffer:p.ignoreDepthValues===!1,resolveStencilBuffer:p.ignoreDepthValues===!1})}else{let ne={antialias:g.antialias,alpha:!0,depth:g.depth,stencil:g.stencil,framebufferScaleFactor:a};S=new XRWebGLLayer(c,t,ne),c.updateRenderState({baseLayer:S}),n.setPixelRatio(1),n.setSize(S.framebufferWidth,S.framebufferHeight,!1),E=new Tt(S.framebufferWidth,S.framebufferHeight,{format:bt,type:xt,colorSpace:n.outputColorSpace,stencilBuffer:g.stencil,resolveDepthBuffer:S.ignoreDepthValues===!1,resolveStencilBuffer:S.ignoreDepthValues===!1})}E.isXRRenderTarget=!0,this.setFoveation(L),C=null,d=await c.requestReferenceSpace(_),je.setContext(c),je.start(),i.isPresenting=!0,i.dispatchEvent({type:\"sessionstart\"})}},this.getEnvironmentBlendMode=function(){if(c!==null)return c.environmentBlendMode},this.getDepthTexture=function(){return l.getDepthTexture()};function F(X){for(let j=0;j<X.removed.length;j++){let ne=X.removed[j],Le=b.indexOf(ne);Le>=0&&(b[Le]=null,N[Le].disconnect(ne))}for(let j=0;j<X.added.length;j++){let ne=X.added[j],Le=b.indexOf(ne);if(Le===-1){for(let Ce=0;Ce<N.length;Ce++)if(Ce>=b.length){b.push(ne),Le=Ce;break}else if(b[Ce]===null){b[Ce]=ne,Le=Ce;break}if(Le===-1)break}let Te=N[Le];Te&&Te.connect(ne)}}let ie=new Be,re=new Be;function Me(X,j,ne){ie.setFromMatrixPosition(j.matrixWorld),re.setFromMatrixPosition(ne.matrixWorld);let Le=ie.distanceTo(re),Te=j.projectionMatrix.elements,Ce=ne.projectionMatrix.elements,st=Te[14]/(Te[10]-1),ye=Te[14]/(Te[10]+1),He=(Te[9]+1)/Te[5],ze=(Te[9]-1)/Te[5],Ue=(Te[8]-1)/Te[0],tt=(Ce[8]+1)/Ce[0],m=st*Ue,rt=st*tt,Ge=Le/(-Ue+tt),qe=Ge*-Ue;if(j.matrixWorld.decompose(X.position,X.quaternion,X.scale),X.translateX(qe),X.translateZ(Ge),X.matrixWorld.compose(X.position,X.quaternion,X.scale),X.matrixWorldInverse.copy(X.matrixWorld).invert(),Te[10]===-1)X.projectionMatrix.copy(j.projectionMatrix),X.projectionMatrixInverse.copy(j.projectionMatrixInverse);else{let ge=st+Ge,u=ye+Ge,r=m-qe,x=rt+(Le-qe),k=He*ye/u*ge,q=ze*ye/u*ge;X.projectionMatrix.makePerspective(r,x,k,q,ge,u),X.projectionMatrixInverse.copy(X.projectionMatrix).invert()}}function Ae(X,j){j===null?X.matrixWorld.copy(X.matrix):X.matrixWorld.multiplyMatrices(j.matrixWorld,X.matrix),X.matrixWorldInverse.copy(X.matrixWorld).invert()}this.updateCamera=function(X){if(c===null)return;let j=X.near,ne=X.far;l.texture!==null&&(l.depthNear>0&&(j=l.depthNear),l.depthFar>0&&(ne=l.depthFar)),V.near=$.near=h.near=j,V.far=$.far=h.far=ne,(z!==V.near||W!==V.far)&&(c.updateRenderState({depthNear:V.near,depthFar:V.far}),z=V.near,W=V.far),V.layers.mask=X.layers.mask|6,h.layers.mask=V.layers.mask&-5,$.layers.mask=V.layers.mask&-3;let Le=X.parent,Te=V.cameras;Ae(V,Le);for(let Ce=0;Ce<Te.length;Ce++)Ae(Te[Ce],Le);Te.length===2?Me(V,h,$):V.projectionMatrix.copy(h.projectionMatrix),he(X,V,Le)};function he(X,j,ne){ne===null?X.matrix.copy(j.matrixWorld):(X.matrix.copy(ne.matrixWorld),X.matrix.invert(),X.matrix.multiply(j.matrixWorld)),X.matrix.decompose(X.position,X.quaternion,X.scale),X.updateMatrixWorld(!0),X.projectionMatrix.copy(j.projectionMatrix),X.projectionMatrixInverse.copy(j.projectionMatrixInverse),X.isPerspectiveCamera&&(X.fov=Eo*2*Math.atan(1/X.projectionMatrix.elements[5]),X.zoom=1)}this.getCamera=function(){return V},this.getFoveation=function(){if(!(p===null&&S===null))return L},this.setFoveation=function(X){L=X,p!==null&&(p.fixedFoveation=X),S!==null&&S.fixedFoveation!==void 0&&(S.fixedFoveation=X)},this.hasDepthSensing=function(){return l.texture!==null},this.getDepthSensingMesh=function(){return l.getMesh(V)},this.getCameraTexture=function(X){return s[X]};let Ne=null;function Je(X,j){if(B=j.getViewerPose(C||d),M=j,B!==null){let ne=B.views;S!==null&&(n.setRenderTargetFramebuffer(E,S.framebuffer),n.setRenderTarget(E));let Le=!1;ne.length!==V.cameras.length&&(V.cameras.length=0,Le=!0);for(let ye=0;ye<ne.length;ye++){let He=ne[ye],ze=null;if(S!==null)ze=S.getViewport(He);else{let tt=D.getViewSubImage(p,He);ze=tt.viewport,ye===0&&(n.setRenderTargetTextures(E,tt.colorTexture,tt.depthStencilTexture),n.setRenderTarget(E))}let Ue=R[ye];Ue===void 0&&(Ue=new mn,Ue.layers.enable(ye),Ue.viewport=new ut,R[ye]=Ue),Ue.matrix.fromArray(He.transform.matrix),Ue.matrix.decompose(Ue.position,Ue.quaternion,Ue.scale),Ue.projectionMatrix.fromArray(He.projectionMatrix),Ue.projectionMatrixInverse.copy(Ue.projectionMatrix).invert(),Ue.viewport.set(ze.x,ze.y,ze.width,ze.height),ye===0&&(V.matrix.copy(Ue.matrix),V.matrix.decompose(V.position,V.quaternion,V.scale)),Le===!0&&V.cameras.push(Ue)}let Te=c.enabledFeatures;if(Te&&Te.includes(\"depth-sensing\")&&c.depthUsage==\"gpu-optimized\"&&y){D=i.getBinding();let ye=D.getDepthInformation(ne[0]);ye&&ye.isValid&&ye.texture&&l.init(ye,c.renderState)}if(Te&&Te.includes(\"camera-access\")&&y){n.state.unbindTexture(),D=i.getBinding();for(let ye=0;ye<ne.length;ye++){let He=ne[ye].camera;if(He){let ze=s[He];ze||(ze=new Yr,s[He]=ze);let Ue=D.getCameraImage(He);ze.sourceTexture=Ue}}}}for(let ne=0;ne<N.length;ne++){let Le=b[ne],Te=N[ne];Le!==null&&Te!==void 0&&Te.update(Le,j,C||d)}Ne&&Ne(X,j),j.detectedPlanes&&i.dispatchEvent({type:\"planesdetected\",data:j}),M=null}let je=new qr;je.setAnimationLoop(Je),this.setAnimationLoop=function(X){Ne=X},this.dispose=function(){}}},Gt=new Ar,sd=new Zt;function ld(e,n){function t(l,s){l.matrixAutoUpdate===!0&&l.updateMatrix(),s.value.copy(l.matrix)}function i(l,s){s.color.getRGB(l.fogColor.value,Cr(e)),s.isFog?(l.fogNear.value=s.near,l.fogFar.value=s.far):s.isFogExp2&&(l.fogDensity.value=s.density)}function c(l,s,g,T,E){s.isMeshBasicMaterial?a(l,s):s.isMeshLambertMaterial?(a(l,s),s.envMap&&(l.envMapIntensity.value=s.envMapIntensity)):s.isMeshToonMaterial?(a(l,s),D(l,s)):s.isMeshPhongMaterial?(a(l,s),B(l,s),s.envMap&&(l.envMapIntensity.value=s.envMapIntensity)):s.isMeshStandardMaterial?(a(l,s),p(l,s),s.isMeshPhysicalMaterial&&S(l,s,E)):s.isMeshMatcapMaterial?(a(l,s),M(l,s)):s.isMeshDepthMaterial?a(l,s):s.isMeshDistanceMaterial?(a(l,s),y(l,s)):s.isMeshNormalMaterial?a(l,s):s.isLineBasicMaterial?(d(l,s),s.isLineDashedMaterial&&_(l,s)):s.isPointsMaterial?L(l,s,g,T):s.isSpriteMaterial?C(l,s):s.isShadowMaterial?(l.color.value.copy(s.color),l.opacity.value=s.opacity):s.isShaderMaterial&&(s.uniformsNeedUpdate=!1)}function a(l,s){l.opacity.value=s.opacity,s.color&&l.diffuse.value.copy(s.color),s.emissive&&l.emissive.value.copy(s.emissive).multiplyScalar(s.emissiveIntensity),s.map&&(l.map.value=s.map,t(s.map,l.mapTransform)),s.alphaMap&&(l.alphaMap.value=s.alphaMap,t(s.alphaMap,l.alphaMapTransform)),s.bumpMap&&(l.bumpMap.value=s.bumpMap,t(s.bumpMap,l.bumpMapTransform),l.bumpScale.value=s.bumpScale,s.side===_t&&(l.bumpScale.value*=-1)),s.normalMap&&(l.normalMap.value=s.normalMap,t(s.normalMap,l.normalMapTransform),l.normalScale.value.copy(s.normalScale),s.side===_t&&l.normalScale.value.negate()),s.displacementMap&&(l.displacementMap.value=s.displacementMap,t(s.displacementMap,l.displacementMapTransform),l.displacementScale.value=s.displacementScale,l.displacementBias.value=s.displacementBias),s.emissiveMap&&(l.emissiveMap.value=s.emissiveMap,t(s.emissiveMap,l.emissiveMapTransform)),s.specularMap&&(l.specularMap.value=s.specularMap,t(s.specularMap,l.specularMapTransform)),s.alphaTest>0&&(l.alphaTest.value=s.alphaTest);let g=n.get(s),T=g.envMap,E=g.envMapRotation;T&&(l.envMap.value=T,Gt.copy(E),Gt.x*=-1,Gt.y*=-1,Gt.z*=-1,T.isCubeTexture&&T.isRenderTargetTexture===!1&&(Gt.y*=-1,Gt.z*=-1),l.envMapRotation.value.setFromMatrix4(sd.makeRotationFromEuler(Gt)),l.flipEnvMap.value=T.isCubeTexture&&T.isRenderTargetTexture===!1?-1:1,l.reflectivity.value=s.reflectivity,l.ior.value=s.ior,l.refractionRatio.value=s.refractionRatio),s.lightMap&&(l.lightMap.value=s.lightMap,l.lightMapIntensity.value=s.lightMapIntensity,t(s.lightMap,l.lightMapTransform)),s.aoMap&&(l.aoMap.value=s.aoMap,l.aoMapIntensity.value=s.aoMapIntensity,t(s.aoMap,l.aoMapTransform))}function d(l,s){l.diffuse.value.copy(s.color),l.opacity.value=s.opacity,s.map&&(l.map.value=s.map,t(s.map,l.mapTransform))}function _(l,s){l.dashSize.value=s.dashSize,l.totalSize.value=s.dashSize+s.gapSize,l.scale.value=s.scale}function L(l,s,g,T){l.diffuse.value.copy(s.color),l.opacity.value=s.opacity,l.size.value=s.size*g,l.scale.value=T*.5,s.map&&(l.map.value=s.map,t(s.map,l.uvTransform)),s.alphaMap&&(l.alphaMap.value=s.alphaMap,t(s.alphaMap,l.alphaMapTransform)),s.alphaTest>0&&(l.alphaTest.value=s.alphaTest)}function C(l,s){l.diffuse.value.copy(s.color),l.opacity.value=s.opacity,l.rotation.value=s.rotation,s.map&&(l.map.value=s.map,t(s.map,l.mapTransform)),s.alphaMap&&(l.alphaMap.value=s.alphaMap,t(s.alphaMap,l.alphaMapTransform)),s.alphaTest>0&&(l.alphaTest.value=s.alphaTest)}function B(l,s){l.specular.value.copy(s.specular),l.shininess.value=Math.max(s.shininess,1e-4)}function D(l,s){s.gradientMap&&(l.gradientMap.value=s.gradientMap)}function p(l,s){l.metalness.value=s.metalness,s.metalnessMap&&(l.metalnessMap.value=s.metalnessMap,t(s.metalnessMap,l.metalnessMapTransform)),l.roughness.value=s.roughness,s.roughnessMap&&(l.roughnessMap.value=s.roughnessMap,t(s.roughnessMap,l.roughnessMapTransform)),s.envMap&&(l.envMapIntensity.value=s.envMapIntensity)}function S(l,s,g){l.ior.value=s.ior,s.sheen>0&&(l.sheenColor.value.copy(s.sheenColor).multiplyScalar(s.sheen),l.sheenRoughness.value=s.sheenRoughness,s.sheenColorMap&&(l.sheenColorMap.value=s.sheenColorMap,t(s.sheenColorMap,l.sheenColorMapTransform)),s.sheenRoughnessMap&&(l.sheenRoughnessMap.value=s.sheenRoughnessMap,t(s.sheenRoughnessMap,l.sheenRoughnessMapTransform))),s.clearcoat>0&&(l.clearcoat.value=s.clearcoat,l.clearcoatRoughness.value=s.clearcoatRoughness,s.clearcoatMap&&(l.clearcoatMap.value=s.clearcoatMap,t(s.clearcoatMap,l.clearcoatMapTransform)),s.clearcoatRoughnessMap&&(l.clearcoatRoughnessMap.value=s.clearcoatRoughnessMap,t(s.clearcoatRoughnessMap,l.clearcoatRoughnessMapTransform)),s.clearcoatNormalMap&&(l.clearcoatNormalMap.value=s.clearcoatNormalMap,t(s.clearcoatNormalMap,l.clearcoatNormalMapTransform),l.clearcoatNormalScale.value.copy(s.clearcoatNormalScale),s.side===_t&&l.clearcoatNormalScale.value.negate())),s.dispersion>0&&(l.dispersion.value=s.dispersion),s.iridescence>0&&(l.iridescence.value=s.iridescence,l.iridescenceIOR.value=s.iridescenceIOR,l.iridescenceThicknessMinimum.value=s.iridescenceThicknessRange[0],l.iridescenceThicknessMaximum.value=s.iridescenceThicknessRange[1],s.iridescenceMap&&(l.iridescenceMap.value=s.iridescenceMap,t(s.iridescenceMap,l.iridescenceMapTransform)),s.iridescenceThicknessMap&&(l.iridescenceThicknessMap.value=s.iridescenceThicknessMap,t(s.iridescenceThicknessMap,l.iridescenceThicknessMapTransform))),s.transmission>0&&(l.transmission.value=s.transmission,l.transmissionSamplerMap.value=g.texture,l.transmissionSamplerSize.value.set(g.width,g.height),s.transmissionMap&&(l.transmissionMap.value=s.transmissionMap,t(s.transmissionMap,l.transmissionMapTransform)),l.thickness.value=s.thickness,s.thicknessMap&&(l.thicknessMap.value=s.thicknessMap,t(s.thicknessMap,l.thicknessMapTransform)),l.attenuationDistance.value=s.attenuationDistance,l.attenuationColor.value.copy(s.attenuationColor)),s.anisotropy>0&&(l.anisotropyVector.value.set(s.anisotropy*Math.cos(s.anisotropyRotation),s.anisotropy*Math.sin(s.anisotropyRotation)),s.anisotropyMap&&(l.anisotropyMap.value=s.anisotropyMap,t(s.anisotropyMap,l.anisotropyMapTransform))),l.specularIntensity.value=s.specularIntensity,l.specularColor.value.copy(s.specularColor),s.specularColorMap&&(l.specularColorMap.value=s.specularColorMap,t(s.specularColorMap,l.specularColorMapTransform)),s.specularIntensityMap&&(l.specularIntensityMap.value=s.specularIntensityMap,t(s.specularIntensityMap,l.specularIntensityMapTransform))}function M(l,s){s.matcap&&(l.matcap.value=s.matcap)}function y(l,s){let g=n.get(s).light;l.referencePosition.value.setFromMatrixPosition(g.matrixWorld),l.nearDistance.value=g.shadow.camera.near,l.farDistance.value=g.shadow.camera.far}return{refreshFogUniforms:i,refreshMaterialUniforms:c}}function cd(e,n,t,i){let c={},a={},d=[],_=e.getParameter(e.MAX_UNIFORM_BUFFER_BINDINGS);function L(g,T){let E=T.program;i.uniformBlockBinding(g,E)}function C(g,T){let E=c[g.id];E===void 0&&(M(g),E=B(g),c[g.id]=E,g.addEventListener(\"dispose\",l));let N=T.program;i.updateUBOMapping(g,N);let b=n.render.frame;a[g.id]!==b&&(p(g),a[g.id]=b)}function B(g){let T=D();g.__bindingPointIndex=T;let E=e.createBuffer(),N=g.__size,b=g.usage;return e.bindBuffer(e.UNIFORM_BUFFER,E),e.bufferData(e.UNIFORM_BUFFER,N,b),e.bindBuffer(e.UNIFORM_BUFFER,null),e.bindBufferBase(e.UNIFORM_BUFFER,T,E),E}function D(){for(let g=0;g<_;g++)if(d.indexOf(g)===-1)return d.push(g),g;return Ze(\"WebGLRenderer: Maximum number of simultaneously usable uniforms groups reached.\"),0}function p(g){let T=c[g.id],E=g.uniforms,N=g.__cache;e.bindBuffer(e.UNIFORM_BUFFER,T);for(let b=0,w=E.length;b<w;b++){let f=Array.isArray(E[b])?E[b]:[E[b]];for(let h=0,$=f.length;h<$;h++){let R=f[h];if(S(R,b,h,N)===!0){let V=R.__offset,z=Array.isArray(R.value)?R.value:[R.value],W=0;for(let Y=0;Y<z.length;Y++){let O=z[Y],F=y(O);typeof O==\"number\"||typeof O==\"boolean\"?(R.__data[0]=O,e.bufferSubData(e.UNIFORM_BUFFER,V+W,R.__data)):O.isMatrix3?(R.__data[0]=O.elements[0],R.__data[1]=O.elements[1],R.__data[2]=O.elements[2],R.__data[3]=0,R.__data[4]=O.elements[3],R.__data[5]=O.elements[4],R.__data[6]=O.elements[5],R.__data[7]=0,R.__data[8]=O.elements[6],R.__data[9]=O.elements[7],R.__data[10]=O.elements[8],R.__data[11]=0):(O.toArray(R.__data,W),W+=F.storage/Float32Array.BYTES_PER_ELEMENT)}e.bufferSubData(e.UNIFORM_BUFFER,V,R.__data)}}}e.bindBuffer(e.UNIFORM_BUFFER,null)}function S(g,T,E,N){let b=g.value,w=T+\"_\"+E;if(N[w]===void 0)return typeof b==\"number\"||typeof b==\"boolean\"?N[w]=b:N[w]=b.clone(),!0;{let f=N[w];if(typeof b==\"number\"||typeof b==\"boolean\"){if(f!==b)return N[w]=b,!0}else if(f.equals(b)===!1)return f.copy(b),!0}return!1}function M(g){let T=g.uniforms,E=0,N=16;for(let w=0,f=T.length;w<f;w++){let h=Array.isArray(T[w])?T[w]:[T[w]];for(let $=0,R=h.length;$<R;$++){let V=h[$],z=Array.isArray(V.value)?V.value:[V.value];for(let W=0,Y=z.length;W<Y;W++){let O=z[W],F=y(O),ie=E%N,re=ie%F.boundary,Me=ie+re;E+=re,Me!==0&&N-Me<F.storage&&(E+=N-Me),V.__data=new Float32Array(F.storage/Float32Array.BYTES_PER_ELEMENT),V.__offset=E,E+=F.storage}}}let b=E%N;return b>0&&(E+=N-b),g.__size=E,g.__cache={},this}function y(g){let T={boundary:0,storage:0};return typeof g==\"number\"||typeof g==\"boolean\"?(T.boundary=4,T.storage=4):g.isVector2?(T.boundary=8,T.storage=8):g.isVector3||g.isColor?(T.boundary=16,T.storage=12):g.isVector4?(T.boundary=16,T.storage=16):g.isMatrix3?(T.boundary=48,T.storage=48):g.isMatrix4?(T.boundary=64,T.storage=64):g.isTexture?Ye(\"WebGLRenderer: Texture samplers can not be part of an uniforms group.\"):Ye(\"WebGLRenderer: Unsupported uniform value type.\",g),T}function l(g){let T=g.target;T.removeEventListener(\"dispose\",l);let E=d.indexOf(T.__bindingPointIndex);d.splice(E,1),e.deleteBuffer(c[T.id]),delete c[T.id],delete a[T.id]}function s(){for(let g in c)e.deleteBuffer(c[g]);d=[],c={},a={}}return{bind:L,update:C,dispose:s}}var fd=new Uint16Array([12469,15057,12620,14925,13266,14620,13807,14376,14323,13990,14545,13625,14713,13328,14840,12882,14931,12528,14996,12233,15039,11829,15066,11525,15080,11295,15085,10976,15082,10705,15073,10495,13880,14564,13898,14542,13977,14430,14158,14124,14393,13732,14556,13410,14702,12996,14814,12596,14891,12291,14937,11834,14957,11489,14958,11194,14943,10803,14921,10506,14893,10278,14858,9960,14484,14039,14487,14025,14499,13941,14524,13740,14574,13468,14654,13106,14743,12678,14818,12344,14867,11893,14889,11509,14893,11180,14881,10751,14852,10428,14812,10128,14765,9754,14712,9466,14764,13480,14764,13475,14766,13440,14766,13347,14769,13070,14786,12713,14816,12387,14844,11957,14860,11549,14868,11215,14855,10751,14825,10403,14782,10044,14729,9651,14666,9352,14599,9029,14967,12835,14966,12831,14963,12804,14954,12723,14936,12564,14917,12347,14900,11958,14886,11569,14878,11247,14859,10765,14828,10401,14784,10011,14727,9600,14660,9289,14586,8893,14508,8533,15111,12234,15110,12234,15104,12216,15092,12156,15067,12010,15028,11776,14981,11500,14942,11205,14902,10752,14861,10393,14812,9991,14752,9570,14682,9252,14603,8808,14519,8445,14431,8145,15209,11449,15208,11451,15202,11451,15190,11438,15163,11384,15117,11274,15055,10979,14994,10648,14932,10343,14871,9936,14803,9532,14729,9218,14645,8742,14556,8381,14461,8020,14365,7603,15273,10603,15272,10607,15267,10619,15256,10631,15231,10614,15182,10535,15118,10389,15042,10167,14963,9787,14883,9447,14800,9115,14710,8665,14615,8318,14514,7911,14411,7507,14279,7198,15314,9675,15313,9683,15309,9712,15298,9759,15277,9797,15229,9773,15166,9668,15084,9487,14995,9274,14898,8910,14800,8539,14697,8234,14590,7790,14479,7409,14367,7067,14178,6621,15337,8619,15337,8631,15333,8677,15325,8769,15305,8871,15264,8940,15202,8909,15119,8775,15022,8565,14916,8328,14804,8009,14688,7614,14569,7287,14448,6888,14321,6483,14088,6171,15350,7402,15350,7419,15347,7480,15340,7613,15322,7804,15287,7973,15229,8057,15148,8012,15046,7846,14933,7611,14810,7357,14682,7069,14552,6656,14421,6316,14251,5948,14007,5528,15356,5942,15356,5977,15353,6119,15348,6294,15332,6551,15302,6824,15249,7044,15171,7122,15070,7050,14949,6861,14818,6611,14679,6349,14538,6067,14398,5651,14189,5311,13935,4958,15359,4123,15359,4153,15356,4296,15353,4646,15338,5160,15311,5508,15263,5829,15188,6042,15088,6094,14966,6001,14826,5796,14678,5543,14527,5287,14377,4985,14133,4586,13869,4257,15360,1563,15360,1642,15358,2076,15354,2636,15341,3350,15317,4019,15273,4429,15203,4732,15105,4911,14981,4932,14836,4818,14679,4621,14517,4386,14359,4156,14083,3795,13808,3437,15360,122,15360,137,15358,285,15355,636,15344,1274,15322,2177,15281,2765,15215,3223,15120,3451,14995,3569,14846,3567,14681,3466,14511,3305,14344,3121,14037,2800,13753,2467,15360,0,15360,1,15359,21,15355,89,15346,253,15325,479,15287,796,15225,1148,15133,1492,15008,1749,14856,1882,14685,1886,14506,1783,14324,1608,13996,1398,13702,1183]),St=null;function dd(){return St===null&&(St=new xo(fd,16,16,ln,yt),St.name=\"DFG_LUT\",St.minFilter=mt,St.magFilter=mt,St.wrapS=Xn,St.wrapT=Xn,St.generateMipmaps=!1,St.needsUpdate=!0),St}var Tr=class{constructor(n={}){let{canvas:t=Mo(),context:i=null,depth:c=!0,stencil:a=!1,alpha:d=!1,antialias:_=!1,premultipliedAlpha:L=!0,preserveDrawingBuffer:C=!1,powerPreference:B=\"default\",failIfMajorPerformanceCaveat:D=!1,reversedDepthBuffer:p=!1,outputBufferType:S=xt}=n;this.isWebGLRenderer=!0;let M;if(i!==null){if(typeof WebGLRenderingContext<\"u\"&&i instanceof WebGLRenderingContext)throw new Error(\"THREE.WebGLRenderer: WebGL 1 is not supported since r163.\");M=i.getContextAttributes().alpha}else M=d;let y=S,l=new Set([Xr,zr,Wr]),s=new Set([xt,kt,En,cn,Vr,kr]),g=new Uint32Array(4),T=new Int32Array(4),E=null,N=null,b=[],w=[],f=null;this.domElement=t,this.debug={checkShaderErrors:!0,onShaderError:null},this.autoClear=!0,this.autoClearColor=!0,this.autoClearDepth=!0,this.autoClearStencil=!0,this.sortObjects=!0,this.clippingPlanes=[],this.localClippingEnabled=!1,this.toneMapping=Mt,this.toneMappingExposure=1,this.transmissionResolutionScale=1;let h=this,$=!1;this._outputColorSpace=To;let R=0,V=0,z=null,W=-1,Y=null,O=new ut,F=new ut,ie=null,re=new Qe(0),Me=0,Ae=t.width,he=t.height,Ne=1,Je=null,je=null,X=new ut(0,0,Ae,he),j=new ut(0,0,Ae,he),ne=!1,Le=new Hr,Te=!1,Ce=!1,st=new Zt,ye=new Be,He=new ut,ze={background:null,fog:null,environment:null,overrideMaterial:null,isScene:!0},Ue=!1;function tt(){return z===null?Ne:1}let m=i;function rt(o,A){return t.getContext(o,A)}try{let o={alpha:!0,depth:c,stencil:a,antialias:_,premultipliedAlpha:L,preserveDrawingBuffer:C,powerPreference:B,failIfMajorPerformanceCaveat:D};if(\"setAttribute\"in t&&t.setAttribute(\"data-engine\",`three.js r${Ao}`),t.addEventListener(\"webglcontextlost\",pe,!1),t.addEventListener(\"webglcontextrestored\",be,!1),t.addEventListener(\"webglcontextcreationerror\",Ke,!1),m===null){let A=\"webgl2\";if(m=rt(A,o),m===null)throw rt(A)?new Error(\"Error creating WebGL context with your selected attributes.\"):new Error(\"Error creating WebGL context.\")}}catch(o){throw Ze(\"WebGLRenderer: \"+o.message),o}let Ge,qe,ge,u,r,x,k,q,H,de,ee,xe,Re,K,Q,ue,me,le,we,v,te,J,fe;function Z(){Ge=new vc(m),Ge.init(),te=new rd(m,Ge),qe=new fc(m,Ge,n,te),ge=new nd(m,Ge),qe.reversedDepthBuffer&&p&&ge.buffers.depth.setReversed(!0),u=new xc(m),r=new kf,x=new id(m,Ge,ge,r,qe,te,u),k=new gc(h),q=new Co(m),J=new lc(m,q),H=new Sc(m,q,u,J),de=new Tc(m,H,q,J,u),le=new Mc(m,qe,x),Q=new dc(r),ee=new Vf(h,k,Ge,qe,J,Q),xe=new ld(h,r),Re=new zf,K=new Zf(Ge),me=new sc(h,k,ge,de,M,L),ue=new td(h,de,qe),fe=new cd(m,u,qe,ge),we=new cc(m,Ge,u),v=new Ec(m,Ge,u),u.programs=ee.programs,h.capabilities=qe,h.extensions=Ge,h.properties=r,h.renderLists=Re,h.shadowMap=ue,h.state=ge,h.info=u}Z(),y!==xt&&(f=new Rc(y,t.width,t.height,c,a));let G=new ei(h,m);this.xr=G,this.getContext=function(){return m},this.getContextAttributes=function(){return m.getContextAttributes()},this.forceContextLoss=function(){let o=Ge.get(\"WEBGL_lose_context\");o&&o.loseContext()},this.forceContextRestore=function(){let o=Ge.get(\"WEBGL_lose_context\");o&&o.restoreContext()},this.getPixelRatio=function(){return Ne},this.setPixelRatio=function(o){o!==void 0&&(Ne=o,this.setSize(Ae,he,!1))},this.getSize=function(o){return o.set(Ae,he)},this.setSize=function(o,A,I=!0){if(G.isPresenting){Ye(\"WebGLRenderer: Can't change size while VR device is presenting.\");return}Ae=o,he=A,t.width=Math.floor(o*Ne),t.height=Math.floor(A*Ne),I===!0&&(t.style.width=o+\"px\",t.style.height=A+\"px\"),f!==null&&f.setSize(t.width,t.height),this.setViewport(0,0,o,A)},this.getDrawingBufferSize=function(o){return o.set(Ae*Ne,he*Ne).floor()},this.setDrawingBufferSize=function(o,A,I){Ae=o,he=A,Ne=I,t.width=Math.floor(o*I),t.height=Math.floor(A*I),this.setViewport(0,0,o,A)},this.setEffects=function(o){if(y===xt){console.error(\"THREE.WebGLRenderer: setEffects() requires outputBufferType set to HalfFloatType or FloatType.\");return}if(o){for(let A=0;A<o.length;A++)if(o[A].isOutputPass===!0){console.warn(\"THREE.WebGLRenderer: OutputPass is not needed in setEffects(). Tone mapping and color space conversion are applied automatically.\");break}}f.setEffects(o||[])},this.getCurrentViewport=function(o){return o.copy(O)},this.getViewport=function(o){return o.copy(X)},this.setViewport=function(o,A,I,U){o.isVector4?X.set(o.x,o.y,o.z,o.w):X.set(o,A,I,U),ge.viewport(O.copy(X).multiplyScalar(Ne).round())},this.getScissor=function(o){return o.copy(j)},this.setScissor=function(o,A,I,U){o.isVector4?j.set(o.x,o.y,o.z,o.w):j.set(o,A,I,U),ge.scissor(F.copy(j).multiplyScalar(Ne).round())},this.getScissorTest=function(){return ne},this.setScissorTest=function(o){ge.setScissorTest(ne=o)},this.setOpaqueSort=function(o){Je=o},this.setTransparentSort=function(o){je=o},this.getClearColor=function(o){return o.copy(me.getClearColor())},this.setClearColor=function(){me.setClearColor(...arguments)},this.getClearAlpha=function(){return me.getClearAlpha()},this.setClearAlpha=function(){me.setClearAlpha(...arguments)},this.clear=function(o=!0,A=!0,I=!0){let U=0;if(o){let P=!1;if(z!==null){let oe=z.texture.format;P=l.has(oe)}if(P){let oe=z.texture.type,ce=s.has(oe),se=me.getClearColor(),_e=me.getClearAlpha(),Se=se.r,Pe=se.g,Ie=se.b;ce?(g[0]=Se,g[1]=Pe,g[2]=Ie,g[3]=_e,m.clearBufferuiv(m.COLOR,0,g)):(T[0]=Se,T[1]=Pe,T[2]=Ie,T[3]=_e,m.clearBufferiv(m.COLOR,0,T))}else U|=m.COLOR_BUFFER_BIT}A&&(U|=m.DEPTH_BUFFER_BIT),I&&(U|=m.STENCIL_BUFFER_BIT,this.state.buffers.stencil.setMask(4294967295)),U!==0&&m.clear(U)},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(){t.removeEventListener(\"webglcontextlost\",pe,!1),t.removeEventListener(\"webglcontextrestored\",be,!1),t.removeEventListener(\"webglcontextcreationerror\",Ke,!1),me.dispose(),Re.dispose(),K.dispose(),r.dispose(),k.dispose(),de.dispose(),J.dispose(),fe.dispose(),ee.dispose(),G.dispose(),G.removeEventListener(\"sessionstart\",ai),G.removeEventListener(\"sessionend\",oi),Ft.stop()};function pe(o){o.preventDefault(),ji(\"WebGLRenderer: Context Lost.\"),$=!0}function be(){ji(\"WebGLRenderer: Context Restored.\"),$=!1;let o=u.autoReset,A=ue.enabled,I=ue.autoUpdate,U=ue.needsUpdate,P=ue.type;Z(),u.autoReset=o,ue.enabled=A,ue.autoUpdate=I,ue.needsUpdate=U,ue.type=P}function Ke(o){Ze(\"WebGLRenderer: A WebGL context could not be created. Reason: \",o.statusMessage)}function Ve(o){let A=o.target;A.removeEventListener(\"dispose\",Ve),At(A)}function At(o){Rt(o),r.remove(o)}function Rt(o){let A=r.get(o).programs;A!==void 0&&(A.forEach(function(I){ee.releaseProgram(I)}),o.isShaderMaterial&&ee.releaseShaderCache(o))}this.renderBufferDirect=function(o,A,I,U,P,oe){A===null&&(A=ze);let ce=P.isMesh&&P.matrixWorld.determinant()<0,se=jr(o,A,I,U,P);ge.setMaterial(U,ce);let _e=I.index,Se=1;if(U.wireframe===!0){if(_e=H.getWireframeAttribute(I),_e===void 0)return;Se=2}let Pe=I.drawRange,Ie=I.attributes.position,Ee=Pe.start*Se,ke=(Pe.start+Pe.count)*Se;oe!==null&&(Ee=Math.max(Ee,oe.start*Se),ke=Math.min(ke,(oe.start+oe.count)*Se)),_e!==null?(Ee=Math.max(Ee,0),ke=Math.min(ke,_e.count)):Ie!=null&&(Ee=Math.max(Ee,0),ke=Math.min(ke,Ie.count));let nt=ke-Ee;if(nt<0||nt===1/0)return;J.setup(P,U,se,I,_e);let et,We=we;if(_e!==null&&(et=q.get(_e),We=v,We.setIndex(et)),P.isMesh)U.wireframe===!0?(ge.setLineWidth(U.wireframeLinewidth*tt()),We.setMode(m.LINES)):We.setMode(m.TRIANGLES);else if(P.isLine){let ft=U.linewidth;ft===void 0&&(ft=1),ge.setLineWidth(ft*tt()),P.isLineSegments?We.setMode(m.LINES):P.isLineLoop?We.setMode(m.LINE_LOOP):We.setMode(m.LINE_STRIP)}else P.isPoints?We.setMode(m.POINTS):P.isSprite&&We.setMode(m.TRIANGLES);if(P.isBatchedMesh)if(P._multiDrawInstances!==null)Dr(\"WebGLRenderer: renderMultiDrawInstances has been deprecated and will be removed in r184. Append to renderMultiDraw arguments and use indirection.\"),We.renderMultiDrawInstances(P._multiDrawStarts,P._multiDrawCounts,P._multiDrawCount,P._multiDrawInstances);else if(Ge.get(\"WEBGL_multi_draw\"))We.renderMultiDraw(P._multiDrawStarts,P._multiDrawCounts,P._multiDrawCount);else{let ft=P._multiDrawStarts,ve=P._multiDrawCounts,ht=P._multiDrawCount,Fe=_e?q.get(_e).bytesPerElement:1,gt=r.get(U).currentProgram.getUniforms();for(let vt=0;vt<ht;vt++)gt.setValue(m,\"_gl_DrawID\",vt),We.render(ft[vt]/Fe,ve[vt])}else if(P.isInstancedMesh)We.renderInstances(Ee,nt,P.count);else if(I.isInstancedBufferGeometry){let ft=I._maxInstanceCount!==void 0?I._maxInstanceCount:1/0,ve=Math.min(I.instanceCount,ft);We.renderInstances(Ee,nt,ve)}else We.render(Ee,nt)};function ri(o,A,I){o.transparent===!0&&o.side===Ct&&o.forceSinglePass===!1?(o.side=_t,o.needsUpdate=!0,dn(o,A,I),o.side=on,o.needsUpdate=!0,dn(o,A,I),o.side=Ct):dn(o,A,I)}this.compile=function(o,A,I=null){I===null&&(I=o),N=K.get(I),N.init(A),w.push(N),I.traverseVisible(function(P){P.isLight&&P.layers.test(A.layers)&&(N.pushLight(P),P.castShadow&&N.pushShadow(P))}),o!==I&&o.traverseVisible(function(P){P.isLight&&P.layers.test(A.layers)&&(N.pushLight(P),P.castShadow&&N.pushShadow(P))}),N.setupLights();let U=new Set;return o.traverse(function(P){if(!(P.isMesh||P.isPoints||P.isLine||P.isSprite))return;let oe=P.material;if(oe)if(Array.isArray(oe))for(let ce=0;ce<oe.length;ce++){let se=oe[ce];ri(se,I,P),U.add(se)}else ri(oe,I,P),U.add(oe)}),N=w.pop(),U},this.compileAsync=function(o,A,I=null){let U=this.compile(o,A,I);return new Promise(P=>{function oe(){if(U.forEach(function(ce){r.get(ce).currentProgram.isReady()&&U.delete(ce)}),U.size===0){P(o);return}setTimeout(oe,10)}Ge.get(\"KHR_parallel_shader_compile\")!==null?oe():setTimeout(oe,10)})};let Pn=null;function Jr(o){Pn&&Pn(o)}function ai(){Ft.stop()}function oi(){Ft.start()}let Ft=new qr;Ft.setAnimationLoop(Jr),typeof self<\"u\"&&Ft.setContext(self),this.setAnimationLoop=function(o){Pn=o,G.setAnimationLoop(o),o===null?Ft.stop():Ft.start()},G.addEventListener(\"sessionstart\",ai),G.addEventListener(\"sessionend\",oi),this.render=function(o,A){if(A!==void 0&&A.isCamera!==!0){Ze(\"WebGLRenderer.render: camera is not an instance of THREE.Camera.\");return}if($===!0)return;let I=G.enabled===!0&&G.isPresenting===!0,U=f!==null&&(z===null||I)&&f.begin(h,z);if(o.matrixWorldAutoUpdate===!0&&o.updateMatrixWorld(),A.parent===null&&A.matrixWorldAutoUpdate===!0&&A.updateMatrixWorld(),G.enabled===!0&&G.isPresenting===!0&&(f===null||f.isCompositing()===!1)&&(G.cameraAutoUpdate===!0&&G.updateCamera(A),A=G.getCamera()),o.isScene===!0&&o.onBeforeRender(h,o,A,z),N=K.get(o,w.length),N.init(A),w.push(N),st.multiplyMatrices(A.projectionMatrix,A.matrixWorldInverse),Le.setFromProjectionMatrix(st,er,A.reversedDepth),Ce=this.localClippingEnabled,Te=Q.init(this.clippingPlanes,Ce),E=Re.get(o,b.length),E.init(),b.push(E),G.enabled===!0&&G.isPresenting===!0){let ce=h.xr.getDepthSensingMesh();ce!==null&&Ln(ce,A,-1/0,h.sortObjects)}Ln(o,A,0,h.sortObjects),E.finish(),h.sortObjects===!0&&E.sort(Je,je),Ue=G.enabled===!1||G.isPresenting===!1||G.hasDepthSensing()===!1,Ue&&me.addToRenderList(E,o),this.info.render.frame++,Te===!0&&Q.beginShadows();let P=N.state.shadowsArray;if(ue.render(P,o,A),Te===!0&&Q.endShadows(),this.info.autoReset===!0&&this.info.reset(),(U&&f.hasRenderPass())===!1){let ce=E.opaque,se=E.transmissive;if(N.setupLights(),A.isArrayCamera){let _e=A.cameras;if(se.length>0)for(let Se=0,Pe=_e.length;Se<Pe;Se++){let Ie=_e[Se];li(ce,se,o,Ie)}Ue&&me.render(o);for(let Se=0,Pe=_e.length;Se<Pe;Se++){let Ie=_e[Se];si(E,o,Ie,Ie.viewport)}}else se.length>0&&li(ce,se,o,A),Ue&&me.render(o),si(E,o,A)}z!==null&&V===0&&(x.updateMultisampleRenderTarget(z),x.updateRenderTargetMipmap(z)),U&&f.end(h),o.isScene===!0&&o.onAfterRender(h,o,A),J.resetDefaultState(),W=-1,Y=null,w.pop(),w.length>0?(N=w[w.length-1],Te===!0&&Q.setGlobalState(h.clippingPlanes,N.state.camera)):N=null,b.pop(),b.length>0?E=b[b.length-1]:E=null};function Ln(o,A,I,U){if(o.visible===!1)return;if(o.layers.test(A.layers)){if(o.isGroup)I=o.renderOrder;else if(o.isLOD)o.autoUpdate===!0&&o.update(A);else if(o.isLight)N.pushLight(o),o.castShadow&&N.pushShadow(o);else if(o.isSprite){if(!o.frustumCulled||Le.intersectsSprite(o)){U&&He.setFromMatrixPosition(o.matrixWorld).applyMatrix4(st);let ce=de.update(o),se=o.material;se.visible&&E.push(o,ce,se,I,He.z,null)}}else if((o.isMesh||o.isLine||o.isPoints)&&(!o.frustumCulled||Le.intersectsObject(o))){let ce=de.update(o),se=o.material;if(U&&(o.boundingSphere!==void 0?(o.boundingSphere===null&&o.computeBoundingSphere(),He.copy(o.boundingSphere.center)):(ce.boundingSphere===null&&ce.computeBoundingSphere(),He.copy(ce.boundingSphere.center)),He.applyMatrix4(o.matrixWorld).applyMatrix4(st)),Array.isArray(se)){let _e=ce.groups;for(let Se=0,Pe=_e.length;Se<Pe;Se++){let Ie=_e[Se],Ee=se[Ie.materialIndex];Ee&&Ee.visible&&E.push(o,ce,Ee,I,He.z,Ie)}}else se.visible&&E.push(o,ce,se,I,He.z,null)}}let oe=o.children;for(let ce=0,se=oe.length;ce<se;ce++)Ln(oe[ce],A,I,U)}function si(o,A,I,U){let{opaque:P,transmissive:oe,transparent:ce}=o;N.setupLightsView(I),Te===!0&&Q.setGlobalState(h.clippingPlanes,I),U&&ge.viewport(O.copy(U)),P.length>0&&fn(P,A,I),oe.length>0&&fn(oe,A,I),ce.length>0&&fn(ce,A,I),ge.buffers.depth.setTest(!0),ge.buffers.depth.setMask(!0),ge.buffers.color.setMask(!0),ge.setPolygonOffset(!1)}function li(o,A,I,U){if((I.isScene===!0?I.overrideMaterial:null)!==null)return;if(N.state.transmissionRenderTarget[U.id]===void 0){let Ee=Ge.has(\"EXT_color_buffer_half_float\")||Ge.has(\"EXT_color_buffer_float\");N.state.transmissionRenderTarget[U.id]=new Tt(1,1,{generateMipmaps:!0,type:Ee?yt:xt,minFilter:qt,samples:Math.max(4,qe.samples),stencilBuffer:a,resolveDepthBuffer:!1,resolveStencilBuffer:!1,colorSpace:it.workingColorSpace})}let oe=N.state.transmissionRenderTarget[U.id],ce=U.viewport||O;oe.setSize(ce.z*h.transmissionResolutionScale,ce.w*h.transmissionResolutionScale);let se=h.getRenderTarget(),_e=h.getActiveCubeFace(),Se=h.getActiveMipmapLevel();h.setRenderTarget(oe),h.getClearColor(re),Me=h.getClearAlpha(),Me<1&&h.setClearColor(16777215,.5),h.clear(),Ue&&me.render(I);let Pe=h.toneMapping;h.toneMapping=Mt;let Ie=U.viewport;if(U.viewport!==void 0&&(U.viewport=void 0),N.setupLightsView(U),Te===!0&&Q.setGlobalState(h.clippingPlanes,U),fn(o,I,U),x.updateMultisampleRenderTarget(oe),x.updateRenderTargetMipmap(oe),Ge.has(\"WEBGL_multisampled_render_to_texture\")===!1){let Ee=!1;for(let ke=0,nt=A.length;ke<nt;ke++){let et=A[ke],{object:We,geometry:ft,material:ve,group:ht}=et;if(ve.side===Ct&&We.layers.test(U.layers)){let Fe=ve.side;ve.side=_t,ve.needsUpdate=!0,ci(We,I,U,ft,ve,ht),ve.side=Fe,ve.needsUpdate=!0,Ee=!0}}Ee===!0&&(x.updateMultisampleRenderTarget(oe),x.updateRenderTargetMipmap(oe))}h.setRenderTarget(se,_e,Se),h.setClearColor(re,Me),Ie!==void 0&&(U.viewport=Ie),h.toneMapping=Pe}function fn(o,A,I){let U=A.isScene===!0?A.overrideMaterial:null;for(let P=0,oe=o.length;P<oe;P++){let ce=o[P],{object:se,geometry:_e,group:Se}=ce,Pe=ce.material;Pe.allowOverride===!0&&U!==null&&(Pe=U),se.layers.test(I.layers)&&ci(se,A,I,_e,Pe,Se)}}function ci(o,A,I,U,P,oe){o.onBeforeRender(h,A,I,U,P,oe),o.modelViewMatrix.multiplyMatrices(I.matrixWorldInverse,o.matrixWorld),o.normalMatrix.getNormalMatrix(o.modelViewMatrix),P.onBeforeRender(h,A,I,U,o,oe),P.transparent===!0&&P.side===Ct&&P.forceSinglePass===!1?(P.side=_t,P.needsUpdate=!0,h.renderBufferDirect(I,A,U,P,o,oe),P.side=on,P.needsUpdate=!0,h.renderBufferDirect(I,A,U,P,o,oe),P.side=Ct):h.renderBufferDirect(I,A,U,P,o,oe),o.onAfterRender(h,A,I,U,P,oe)}function dn(o,A,I){A.isScene!==!0&&(A=ze);let U=r.get(o),P=N.state.lights,oe=N.state.shadowsArray,ce=P.state.version,se=ee.getParameters(o,P.state,oe,A,I),_e=ee.getProgramCacheKey(se),Se=U.programs;U.environment=o.isMeshStandardMaterial||o.isMeshLambertMaterial||o.isMeshPhongMaterial?A.environment:null,U.fog=A.fog;let Pe=o.isMeshStandardMaterial||o.isMeshLambertMaterial&&!o.envMap||o.isMeshPhongMaterial&&!o.envMap;U.envMap=k.get(o.envMap||U.environment,Pe),U.envMapRotation=U.environment!==null&&o.envMap===null?A.environmentRotation:o.envMapRotation,Se===void 0&&(o.addEventListener(\"dispose\",Ve),Se=new Map,U.programs=Se);let Ie=Se.get(_e);if(Ie!==void 0){if(U.currentProgram===Ie&&U.lightsStateVersion===ce)return di(o,se),Ie}else se.uniforms=ee.getUniforms(o),o.onBeforeCompile(se,h),Ie=ee.acquireProgram(se,_e),Se.set(_e,Ie),U.uniforms=se.uniforms;let Ee=U.uniforms;return(!o.isShaderMaterial&&!o.isRawShaderMaterial||o.clipping===!0)&&(Ee.clippingPlanes=Q.uniform),di(o,se),U.needsLights=ta(o),U.lightsStateVersion=ce,U.needsLights&&(Ee.ambientLightColor.value=P.state.ambient,Ee.lightProbe.value=P.state.probe,Ee.directionalLights.value=P.state.directional,Ee.directionalLightShadows.value=P.state.directionalShadow,Ee.spotLights.value=P.state.spot,Ee.spotLightShadows.value=P.state.spotShadow,Ee.rectAreaLights.value=P.state.rectArea,Ee.ltc_1.value=P.state.rectAreaLTC1,Ee.ltc_2.value=P.state.rectAreaLTC2,Ee.pointLights.value=P.state.point,Ee.pointLightShadows.value=P.state.pointShadow,Ee.hemisphereLights.value=P.state.hemi,Ee.directionalShadowMatrix.value=P.state.directionalShadowMatrix,Ee.spotLightMatrix.value=P.state.spotLightMatrix,Ee.spotLightMap.value=P.state.spotLightMap,Ee.pointShadowMatrix.value=P.state.pointShadowMatrix),U.currentProgram=Ie,U.uniformsList=null,Ie}function fi(o){if(o.uniformsList===null){let A=o.currentProgram.getUniforms();o.uniformsList=$t.seqWithValue(A.seq,o.uniforms)}return o.uniformsList}function di(o,A){let I=r.get(o);I.outputColorSpace=A.outputColorSpace,I.batching=A.batching,I.batchingColor=A.batchingColor,I.instancing=A.instancing,I.instancingColor=A.instancingColor,I.instancingMorph=A.instancingMorph,I.skinning=A.skinning,I.morphTargets=A.morphTargets,I.morphNormals=A.morphNormals,I.morphColors=A.morphColors,I.morphTargetsCount=A.morphTargetsCount,I.numClippingPlanes=A.numClippingPlanes,I.numIntersection=A.numClipIntersection,I.vertexAlphas=A.vertexAlphas,I.vertexTangents=A.vertexTangents,I.toneMapping=A.toneMapping}function jr(o,A,I,U,P){A.isScene!==!0&&(A=ze),x.resetTextureUnits();let oe=A.fog,ce=U.isMeshStandardMaterial||U.isMeshLambertMaterial||U.isMeshPhongMaterial?A.environment:null,se=z===null?h.outputColorSpace:z.isXRRenderTarget===!0?z.texture.colorSpace:Rn,_e=U.isMeshStandardMaterial||U.isMeshLambertMaterial&&!U.envMap||U.isMeshPhongMaterial&&!U.envMap,Se=k.get(U.envMap||ce,_e),Pe=U.vertexColors===!0&&!!I.attributes.color&&I.attributes.color.itemSize===4,Ie=!!I.attributes.tangent&&(!!U.normalMap||U.anisotropy>0),Ee=!!I.morphAttributes.position,ke=!!I.morphAttributes.normal,nt=!!I.morphAttributes.color,et=Mt;U.toneMapped&&(z===null||z.isXRRenderTarget===!0)&&(et=h.toneMapping);let We=I.morphAttributes.position||I.morphAttributes.normal||I.morphAttributes.color,ft=We!==void 0?We.length:0,ve=r.get(U),ht=N.state.lights;if(Te===!0&&(Ce===!0||o!==Y)){let lt=o===Y&&U.id===W;Q.setState(U,o,lt)}let Fe=!1;U.version===ve.__version?(ve.needsLights&&ve.lightsStateVersion!==ht.state.version||ve.outputColorSpace!==se||P.isBatchedMesh&&ve.batching===!1||!P.isBatchedMesh&&ve.batching===!0||P.isBatchedMesh&&ve.batchingColor===!0&&P.colorTexture===null||P.isBatchedMesh&&ve.batchingColor===!1&&P.colorTexture!==null||P.isInstancedMesh&&ve.instancing===!1||!P.isInstancedMesh&&ve.instancing===!0||P.isSkinnedMesh&&ve.skinning===!1||!P.isSkinnedMesh&&ve.skinning===!0||P.isInstancedMesh&&ve.instancingColor===!0&&P.instanceColor===null||P.isInstancedMesh&&ve.instancingColor===!1&&P.instanceColor!==null||P.isInstancedMesh&&ve.instancingMorph===!0&&P.morphTexture===null||P.isInstancedMesh&&ve.instancingMorph===!1&&P.morphTexture!==null||ve.envMap!==Se||U.fog===!0&&ve.fog!==oe||ve.numClippingPlanes!==void 0&&(ve.numClippingPlanes!==Q.numPlanes||ve.numIntersection!==Q.numIntersection)||ve.vertexAlphas!==Pe||ve.vertexTangents!==Ie||ve.morphTargets!==Ee||ve.morphNormals!==ke||ve.morphColors!==nt||ve.toneMapping!==et||ve.morphTargetsCount!==ft)&&(Fe=!0):(Fe=!0,ve.__version=U.version);let gt=ve.currentProgram;Fe===!0&&(gt=dn(U,A,P));let vt=!1,Ot=!1,Wt=!1,Xe=gt.getUniforms(),ct=ve.uniforms;if(ge.useProgram(gt.program)&&(vt=!0,Ot=!0,Wt=!0),U.id!==W&&(W=U.id,Ot=!0),vt||Y!==o){ge.buffers.depth.getReversed()&&o.reversedDepth!==!0&&(o._reversedDepth=!0,o.updateProjectionMatrix()),Xe.setValue(m,\"projectionMatrix\",o.projectionMatrix),Xe.setValue(m,\"viewMatrix\",o.matrixWorldInverse);let wt=Xe.map.cameraPosition;wt!==void 0&&wt.setValue(m,ye.setFromMatrixPosition(o.matrixWorld)),qe.logarithmicDepthBuffer&&Xe.setValue(m,\"logDepthBufFC\",2/(Math.log(o.far+1)/Math.LN2)),(U.isMeshPhongMaterial||U.isMeshToonMaterial||U.isMeshLambertMaterial||U.isMeshBasicMaterial||U.isMeshStandardMaterial||U.isShaderMaterial)&&Xe.setValue(m,\"isOrthographic\",o.isOrthographicCamera===!0),Y!==o&&(Y=o,Ot=!0,Wt=!0)}if(ve.needsLights&&(ht.state.directionalShadowMap.length>0&&Xe.setValue(m,\"directionalShadowMap\",ht.state.directionalShadowMap,x),ht.state.spotShadowMap.length>0&&Xe.setValue(m,\"spotShadowMap\",ht.state.spotShadowMap,x),ht.state.pointShadowMap.length>0&&Xe.setValue(m,\"pointShadowMap\",ht.state.pointShadowMap,x)),P.isSkinnedMesh){Xe.setOptional(m,P,\"bindMatrix\"),Xe.setOptional(m,P,\"bindMatrixInverse\");let lt=P.skeleton;lt&&(lt.boneTexture===null&&lt.computeBoneTexture(),Xe.setValue(m,\"boneTexture\",lt.boneTexture,x))}P.isBatchedMesh&&(Xe.setOptional(m,P,\"batchingTexture\"),Xe.setValue(m,\"batchingTexture\",P._matricesTexture,x),Xe.setOptional(m,P,\"batchingIdTexture\"),Xe.setValue(m,\"batchingIdTexture\",P._indirectTexture,x),Xe.setOptional(m,P,\"batchingColorTexture\"),P._colorsTexture!==null&&Xe.setValue(m,\"batchingColorTexture\",P._colorsTexture,x));let Ut=I.morphAttributes;if((Ut.position!==void 0||Ut.normal!==void 0||Ut.color!==void 0)&&le.update(P,I,gt),(Ot||ve.receiveShadow!==P.receiveShadow)&&(ve.receiveShadow=P.receiveShadow,Xe.setValue(m,\"receiveShadow\",P.receiveShadow)),(U.isMeshStandardMaterial||U.isMeshLambertMaterial||U.isMeshPhongMaterial)&&U.envMap===null&&A.environment!==null&&(ct.envMapIntensity.value=A.environmentIntensity),ct.dfgLUT!==void 0&&(ct.dfgLUT.value=dd()),Ot&&(Xe.setValue(m,\"toneMappingExposure\",h.toneMappingExposure),ve.needsLights&&ea(ct,Wt),oe&&U.fog===!0&&xe.refreshFogUniforms(ct,oe),xe.refreshMaterialUniforms(ct,U,Ne,he,N.state.transmissionRenderTarget[o.id]),$t.upload(m,fi(ve),ct,x)),U.isShaderMaterial&&U.uniformsNeedUpdate===!0&&($t.upload(m,fi(ve),ct,x),U.uniformsNeedUpdate=!1),U.isSpriteMaterial&&Xe.setValue(m,\"center\",P.center),Xe.setValue(m,\"modelViewMatrix\",P.modelViewMatrix),Xe.setValue(m,\"normalMatrix\",P.normalMatrix),Xe.setValue(m,\"modelMatrix\",P.matrixWorld),U.isShaderMaterial||U.isRawShaderMaterial){let lt=U.uniformsGroups;for(let wt=0,zt=lt.length;wt<zt;wt++){let ui=lt[wt];fe.update(ui,gt),fe.bind(ui,gt)}}return gt}function ea(o,A){o.ambientLightColor.needsUpdate=A,o.lightProbe.needsUpdate=A,o.directionalLights.needsUpdate=A,o.directionalLightShadows.needsUpdate=A,o.pointLights.needsUpdate=A,o.pointLightShadows.needsUpdate=A,o.spotLights.needsUpdate=A,o.spotLightShadows.needsUpdate=A,o.rectAreaLights.needsUpdate=A,o.hemisphereLights.needsUpdate=A}function ta(o){return o.isMeshLambertMaterial||o.isMeshToonMaterial||o.isMeshPhongMaterial||o.isMeshStandardMaterial||o.isShadowMaterial||o.isShaderMaterial&&o.lights===!0}this.getActiveCubeFace=function(){return R},this.getActiveMipmapLevel=function(){return V},this.getRenderTarget=function(){return z},this.setRenderTargetTextures=function(o,A,I){let U=r.get(o);U.__autoAllocateDepthBuffer=o.resolveDepthBuffer===!1,U.__autoAllocateDepthBuffer===!1&&(U.__useRenderToTexture=!1),r.get(o.texture).__webglTexture=A,r.get(o.depthTexture).__webglTexture=U.__autoAllocateDepthBuffer?void 0:I,U.__hasExternalTextures=!0},this.setRenderTargetFramebuffer=function(o,A){let I=r.get(o);I.__webglFramebuffer=A,I.__useDefaultFramebuffer=A===void 0};let na=m.createFramebuffer();this.setRenderTarget=function(o,A=0,I=0){z=o,R=A,V=I;let U=null,P=!1,oe=!1;if(o){let se=r.get(o);if(se.__useDefaultFramebuffer!==void 0){ge.bindFramebuffer(m.FRAMEBUFFER,se.__webglFramebuffer),O.copy(o.viewport),F.copy(o.scissor),ie=o.scissorTest,ge.viewport(O),ge.scissor(F),ge.setScissorTest(ie),W=-1;return}else if(se.__webglFramebuffer===void 0)x.setupRenderTarget(o);else if(se.__hasExternalTextures)x.rebindTextures(o,r.get(o.texture).__webglTexture,r.get(o.depthTexture).__webglTexture);else if(o.depthBuffer){let Pe=o.depthTexture;if(se.__boundDepthTexture!==Pe){if(Pe!==null&&r.has(Pe)&&(o.width!==Pe.image.width||o.height!==Pe.image.height))throw new Error(\"WebGLRenderTarget: Attached DepthTexture is initialized to the incorrect size.\");x.setupDepthRenderbuffer(o)}}let _e=o.texture;(_e.isData3DTexture||_e.isDataArrayTexture||_e.isCompressedArrayTexture)&&(oe=!0);let Se=r.get(o).__webglFramebuffer;o.isWebGLCubeRenderTarget?(Array.isArray(Se[A])?U=Se[A][I]:U=Se[A],P=!0):o.samples>0&&x.useMultisampledRTT(o)===!1?U=r.get(o).__webglMultisampledFramebuffer:Array.isArray(Se)?U=Se[I]:U=Se,O.copy(o.viewport),F.copy(o.scissor),ie=o.scissorTest}else O.copy(X).multiplyScalar(Ne).floor(),F.copy(j).multiplyScalar(Ne).floor(),ie=ne;if(I!==0&&(U=na),ge.bindFramebuffer(m.FRAMEBUFFER,U)&&ge.drawBuffers(o,U),ge.viewport(O),ge.scissor(F),ge.setScissorTest(ie),P){let se=r.get(o.texture);m.framebufferTexture2D(m.FRAMEBUFFER,m.COLOR_ATTACHMENT0,m.TEXTURE_CUBE_MAP_POSITIVE_X+A,se.__webglTexture,I)}else if(oe){let se=A;for(let _e=0;_e<o.textures.length;_e++){let Se=r.get(o.textures[_e]);m.framebufferTextureLayer(m.FRAMEBUFFER,m.COLOR_ATTACHMENT0+_e,Se.__webglTexture,I,se)}}else if(o!==null&&I!==0){let se=r.get(o.texture);m.framebufferTexture2D(m.FRAMEBUFFER,m.COLOR_ATTACHMENT0,m.TEXTURE_2D,se.__webglTexture,I)}W=-1},this.readRenderTargetPixels=function(o,A,I,U,P,oe,ce,se=0){if(!(o&&o.isWebGLRenderTarget)){Ze(\"WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.\");return}let _e=r.get(o).__webglFramebuffer;if(o.isWebGLCubeRenderTarget&&ce!==void 0&&(_e=_e[ce]),_e){ge.bindFramebuffer(m.FRAMEBUFFER,_e);try{let Se=o.textures[se],Pe=Se.format,Ie=Se.type;if(o.textures.length>1&&m.readBuffer(m.COLOR_ATTACHMENT0+se),!qe.textureFormatReadable(Pe)){Ze(\"WebGLRenderer.readRenderTargetPixels: renderTarget is not in RGBA or implementation defined format.\");return}if(!qe.textureTypeReadable(Ie)){Ze(\"WebGLRenderer.readRenderTargetPixels: renderTarget is not in UnsignedByteType or implementation defined type.\");return}A>=0&&A<=o.width-U&&I>=0&&I<=o.height-P&&m.readPixels(A,I,U,P,te.convert(Pe),te.convert(Ie),oe)}finally{let Se=z!==null?r.get(z).__webglFramebuffer:null;ge.bindFramebuffer(m.FRAMEBUFFER,Se)}}},this.readRenderTargetPixelsAsync=async function(o,A,I,U,P,oe,ce,se=0){if(!(o&&o.isWebGLRenderTarget))throw new Error(\"THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.\");let _e=r.get(o).__webglFramebuffer;if(o.isWebGLCubeRenderTarget&&ce!==void 0&&(_e=_e[ce]),_e)if(A>=0&&A<=o.width-U&&I>=0&&I<=o.height-P){ge.bindFramebuffer(m.FRAMEBUFFER,_e);let Se=o.textures[se],Pe=Se.format,Ie=Se.type;if(o.textures.length>1&&m.readBuffer(m.COLOR_ATTACHMENT0+se),!qe.textureFormatReadable(Pe))throw new Error(\"THREE.WebGLRenderer.readRenderTargetPixelsAsync: renderTarget is not in RGBA or implementation defined format.\");if(!qe.textureTypeReadable(Ie))throw new Error(\"THREE.WebGLRenderer.readRenderTargetPixelsAsync: renderTarget is not in UnsignedByteType or implementation defined type.\");let Ee=m.createBuffer();m.bindBuffer(m.PIXEL_PACK_BUFFER,Ee),m.bufferData(m.PIXEL_PACK_BUFFER,oe.byteLength,m.STREAM_READ),m.readPixels(A,I,U,P,te.convert(Pe),te.convert(Ie),0);let ke=z!==null?r.get(z).__webglFramebuffer:null;ge.bindFramebuffer(m.FRAMEBUFFER,ke);let nt=m.fenceSync(m.SYNC_GPU_COMMANDS_COMPLETE,0);return m.flush(),await Ro(m,nt,4),m.bindBuffer(m.PIXEL_PACK_BUFFER,Ee),m.getBufferSubData(m.PIXEL_PACK_BUFFER,0,oe),m.deleteBuffer(Ee),m.deleteSync(nt),oe}else throw new Error(\"THREE.WebGLRenderer.readRenderTargetPixelsAsync: requested read bounds are out of range.\")},this.copyFramebufferToTexture=function(o,A=null,I=0){let U=Math.pow(2,-I),P=Math.floor(o.image.width*U),oe=Math.floor(o.image.height*U),ce=A!==null?A.x:0,se=A!==null?A.y:0;x.setTexture2D(o,0),m.copyTexSubImage2D(m.TEXTURE_2D,I,0,0,ce,se,P,oe),ge.unbindTexture()};let ia=m.createFramebuffer(),ra=m.createFramebuffer();this.copyTextureToTexture=function(o,A,I=null,U=null,P=0,oe=0){let ce,se,_e,Se,Pe,Ie,Ee,ke,nt,et=o.isCompressedTexture?o.mipmaps[oe]:o.image;if(I!==null)ce=I.max.x-I.min.x,se=I.max.y-I.min.y,_e=I.isBox3?I.max.z-I.min.z:1,Se=I.min.x,Pe=I.min.y,Ie=I.isBox3?I.min.z:0;else{let ct=Math.pow(2,-P);ce=Math.floor(et.width*ct),se=Math.floor(et.height*ct),o.isDataArrayTexture?_e=et.depth:o.isData3DTexture?_e=Math.floor(et.depth*ct):_e=1,Se=0,Pe=0,Ie=0}U!==null?(Ee=U.x,ke=U.y,nt=U.z):(Ee=0,ke=0,nt=0);let We=te.convert(A.format),ft=te.convert(A.type),ve;A.isData3DTexture?(x.setTexture3D(A,0),ve=m.TEXTURE_3D):A.isDataArrayTexture||A.isCompressedArrayTexture?(x.setTexture2DArray(A,0),ve=m.TEXTURE_2D_ARRAY):(x.setTexture2D(A,0),ve=m.TEXTURE_2D),m.pixelStorei(m.UNPACK_FLIP_Y_WEBGL,A.flipY),m.pixelStorei(m.UNPACK_PREMULTIPLY_ALPHA_WEBGL,A.premultiplyAlpha),m.pixelStorei(m.UNPACK_ALIGNMENT,A.unpackAlignment);let ht=m.getParameter(m.UNPACK_ROW_LENGTH),Fe=m.getParameter(m.UNPACK_IMAGE_HEIGHT),gt=m.getParameter(m.UNPACK_SKIP_PIXELS),vt=m.getParameter(m.UNPACK_SKIP_ROWS),Ot=m.getParameter(m.UNPACK_SKIP_IMAGES);m.pixelStorei(m.UNPACK_ROW_LENGTH,et.width),m.pixelStorei(m.UNPACK_IMAGE_HEIGHT,et.height),m.pixelStorei(m.UNPACK_SKIP_PIXELS,Se),m.pixelStorei(m.UNPACK_SKIP_ROWS,Pe),m.pixelStorei(m.UNPACK_SKIP_IMAGES,Ie);let Wt=o.isDataArrayTexture||o.isData3DTexture,Xe=A.isDataArrayTexture||A.isData3DTexture;if(o.isDepthTexture){let ct=r.get(o),Ut=r.get(A),lt=r.get(ct.__renderTarget),wt=r.get(Ut.__renderTarget);ge.bindFramebuffer(m.READ_FRAMEBUFFER,lt.__webglFramebuffer),ge.bindFramebuffer(m.DRAW_FRAMEBUFFER,wt.__webglFramebuffer);for(let zt=0;zt<_e;zt++)Wt&&(m.framebufferTextureLayer(m.READ_FRAMEBUFFER,m.COLOR_ATTACHMENT0,r.get(o).__webglTexture,P,Ie+zt),m.framebufferTextureLayer(m.DRAW_FRAMEBUFFER,m.COLOR_ATTACHMENT0,r.get(A).__webglTexture,oe,nt+zt)),m.blitFramebuffer(Se,Pe,ce,se,Ee,ke,ce,se,m.DEPTH_BUFFER_BIT,m.NEAREST);ge.bindFramebuffer(m.READ_FRAMEBUFFER,null),ge.bindFramebuffer(m.DRAW_FRAMEBUFFER,null)}else if(P!==0||o.isRenderTargetTexture||r.has(o)){let ct=r.get(o),Ut=r.get(A);ge.bindFramebuffer(m.READ_FRAMEBUFFER,ia),ge.bindFramebuffer(m.DRAW_FRAMEBUFFER,ra);for(let lt=0;lt<_e;lt++)Wt?m.framebufferTextureLayer(m.READ_FRAMEBUFFER,m.COLOR_ATTACHMENT0,ct.__webglTexture,P,Ie+lt):m.framebufferTexture2D(m.READ_FRAMEBUFFER,m.COLOR_ATTACHMENT0,m.TEXTURE_2D,ct.__webglTexture,P),Xe?m.framebufferTextureLayer(m.DRAW_FRAMEBUFFER,m.COLOR_ATTACHMENT0,Ut.__webglTexture,oe,nt+lt):m.framebufferTexture2D(m.DRAW_FRAMEBUFFER,m.COLOR_ATTACHMENT0,m.TEXTURE_2D,Ut.__webglTexture,oe),P!==0?m.blitFramebuffer(Se,Pe,ce,se,Ee,ke,ce,se,m.COLOR_BUFFER_BIT,m.NEAREST):Xe?m.copyTexSubImage3D(ve,oe,Ee,ke,nt+lt,Se,Pe,ce,se):m.copyTexSubImage2D(ve,oe,Ee,ke,Se,Pe,ce,se);ge.bindFramebuffer(m.READ_FRAMEBUFFER,null),ge.bindFramebuffer(m.DRAW_FRAMEBUFFER,null)}else Xe?o.isDataTexture||o.isData3DTexture?m.texSubImage3D(ve,oe,Ee,ke,nt,ce,se,_e,We,ft,et.data):A.isCompressedArrayTexture?m.compressedTexSubImage3D(ve,oe,Ee,ke,nt,ce,se,_e,We,et.data):m.texSubImage3D(ve,oe,Ee,ke,nt,ce,se,_e,We,ft,et):o.isDataTexture?m.texSubImage2D(m.TEXTURE_2D,oe,Ee,ke,ce,se,We,ft,et.data):o.isCompressedTexture?m.compressedTexSubImage2D(m.TEXTURE_2D,oe,Ee,ke,et.width,et.height,We,et.data):m.texSubImage2D(m.TEXTURE_2D,oe,Ee,ke,ce,se,We,ft,et);m.pixelStorei(m.UNPACK_ROW_LENGTH,ht),m.pixelStorei(m.UNPACK_IMAGE_HEIGHT,Fe),m.pixelStorei(m.UNPACK_SKIP_PIXELS,gt),m.pixelStorei(m.UNPACK_SKIP_ROWS,vt),m.pixelStorei(m.UNPACK_SKIP_IMAGES,Ot),oe===0&&A.generateMipmaps&&m.generateMipmap(ve),ge.unbindTexture()},this.initRenderTarget=function(o){r.get(o).__webglFramebuffer===void 0&&x.setupRenderTarget(o)},this.initTexture=function(o){o.isCubeTexture?x.setTextureCube(o,0):o.isData3DTexture?x.setTexture3D(o,0):o.isDataArrayTexture||o.isCompressedArrayTexture?x.setTexture2DArray(o,0):x.setTexture2D(o,0),ge.unbindTexture()},this.resetState=function(){R=0,V=0,z=null,ge.reset(),J.reset()},typeof __THREE_DEVTOOLS__<\"u\"&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent(\"observe\",{detail:this}))}get coordinateSystem(){return er}get outputColorSpace(){return this._outputColorSpace}set outputColorSpace(n){this._outputColorSpace=n;let t=this.getContext();t.drawingBufferColorSpace=it._getDrawingBufferColorSpace(n),t.unpackColorSpace=it._getUnpackColorSpace()}};export{yr as ACESFilmicToneMapping,en as AddEquation,pa as AddOperation,md as AdditiveAnimationBlendMode,Si as AdditiveBlending,Nr as AgXToneMapping,mo as AlphaFormat,so as AlwaysCompare,Ya as AlwaysDepth,_d as AlwaysStencilFunc,gd as AmbientLight,vd as AnimationAction,Sd as AnimationClip,Ed as AnimationLoader,xd as AnimationMixer,Md as AnimationObjectGroup,Td as AnimationUtils,Ad as ArcCurve,So as ArrayCamera,Rd as ArrowHelper,Cd as AttachedBindMode,bd as Audio,Pd as AudioAnalyser,Ld as AudioContext,Dd as AudioListener,Ud as AudioLoader,wd as AxesHelper,_t as BackSide,Id as BasicDepthPacking,Nd as BasicShadowMap,yd as BatchedMesh,Fd as BezierInterpolant,Od as Bone,Bd as BooleanKeyframeTrack,Gd as Box2,Hd as Box3,Vd as Box3Helper,ti as BoxGeometry,kd as BoxHelper,_n as BufferAttribute,An as BufferGeometry,Wd as BufferGeometryLoader,po as ByteType,zd as Cache,Xd as Camera,Yd as CameraHelper,qd as CanvasTexture,Kd as CapsuleGeometry,$d as CatmullRomCurve3,Fr as CineonToneMapping,Zd as CircleGeometry,Xn as ClampToEdgeWrapping,Qd as Clock,Qe as Color,Jd as ColorKeyframeTrack,it as ColorManagement,jd as Compatibility,eu as CompressedArrayTexture,tu as CompressedCubeTexture,nu as CompressedTexture,iu as CompressedTextureLoader,ru as ConeGeometry,ba as ConstantAlphaFactor,La as ConstantColorFactor,au as Controls,sa as CubeCamera,Ta as CubeDepthTexture,sn as CubeReflectionMapping,Qt as CubeRefractionMapping,Lr as CubeTexture,ou as CubeTextureLoader,Tn as CubeUVReflectionMapping,su as CubicBezierCurve,lu as CubicBezierCurve3,cu as CubicInterpolant,_i as CullFaceBack,$a as CullFaceFront,fu as CullFaceFrontBack,Ka as CullFaceNone,du as Curve,uu as CurvePath,Za as CustomBlending,wr as CustomToneMapping,pu as CylinderGeometry,hu as Cylindrical,da as Data3DTexture,Ur as DataArrayTexture,xo as DataTexture,mu as DataTextureLoader,_u as DataUtils,gu as DecrementStencilOp,vu as DecrementWrapStencilOp,Su as DefaultLoadingManager,Jt as DepthFormat,Kt as DepthStencilFormat,Sn as DepthTexture,Eu as DetachedBindMode,xu as DirectionalLight,Mu as DirectionalLightHelper,Tu as DiscreteInterpolant,Au as DodecahedronGeometry,Ct as DoubleSide,Na as DstAlphaFactor,ya as DstColorFactor,Ru as DynamicCopyUsage,Cu as DynamicDrawUsage,bu as DynamicReadUsage,Pu as EdgesGeometry,Lu as EllipseCurve,ao as EqualCompare,za as EqualDepth,Du as EqualStencilFunc,Dn as EquirectangularReflectionMapping,Un as EquirectangularRefractionMapping,Ar as Euler,vo as EventDispatcher,Yr as ExternalTexture,Uu as ExtrudeGeometry,wu as FileLoader,Iu as Float16BufferAttribute,pi as Float32BufferAttribute,It as FloatType,Nu as Fog,yu as FogExp2,Fu as FramebufferTexture,on as FrontSide,Hr as Frustum,Ou as FrustumArray,Bu as GLBufferAttribute,Gu as GLSL1,hi as GLSL3,ro as GreaterCompare,ka as GreaterDepth,ni as GreaterEqualCompare,Wa as GreaterEqualDepth,Hu as GreaterEqualStencilFunc,Vu as GreaterStencilFunc,ku as GridHelper,Wu as Group,yt as HalfFloatType,zu as HemisphereLight,Xu as HemisphereLightHelper,Yu as IcosahedronGeometry,qu as ImageBitmapLoader,Ku as ImageLoader,$u as ImageUtils,Zu as IncrementStencilOp,Qu as IncrementWrapStencilOp,Ju as InstancedBufferAttribute,ju as InstancedBufferGeometry,ep as InstancedInterleavedBuffer,tp as InstancedMesh,np as Int16BufferAttribute,ip as Int32BufferAttribute,rp as Int8BufferAttribute,br as IntType,ap as InterleavedBuffer,op as InterleavedBufferAttribute,sp as Interpolant,lp as InterpolateBezier,cp as InterpolateDiscrete,fp as InterpolateLinear,dp as InterpolateSmooth,up as InterpolationSamplingMode,pp as InterpolationSamplingType,hp as InvertStencilOp,mp as KeepStencilOp,_p as KeyframeTrack,gp as LOD,vp as LatheGeometry,Sa as Layers,oo as LessCompare,Xa as LessDepth,ii as LessEqualCompare,mi as LessEqualDepth,Sp as LessEqualStencilFunc,Ep as LessStencilFunc,xp as Light,Mp as LightProbe,Tp as Line,Ap as Line3,Rp as LineBasicMaterial,Cp as LineCurve,bp as LineCurve3,Pp as LineDashedMaterial,Lp as LineLoop,Dp as LineSegments,mt as LinearFilter,Up as LinearInterpolant,wp as LinearMipMapLinearFilter,Ip as LinearMipMapNearestFilter,qt as LinearMipmapLinearFilter,wn as LinearMipmapNearestFilter,Rn as LinearSRGBColorSpace,Br as LinearToneMapping,Gr as LinearTransfer,Np as Loader,yp as LoaderUtils,Fp as LoadingManager,Op as LoopOnce,Bp as LoopPingPong,Gp as LoopRepeat,Hp as MOUSE,Vp as Material,kp as MaterialBlending,Wp as MaterialLoader,zp as MathUtils,Xp as Matrix2,Oe as Matrix3,Zt as Matrix4,ja as MaxEquation,Lt as Mesh,oa as MeshBasicMaterial,Ea as MeshDepthMaterial,xa as MeshDistanceMaterial,Yp as MeshLambertMaterial,qp as MeshMatcapMaterial,Kp as MeshNormalMaterial,$p as MeshPhongMaterial,Zp as MeshPhysicalMaterial,Qp as MeshStandardMaterial,Jp as MeshToonMaterial,Ja as MinEquation,eo as MirroredRepeatWrapping,ha as MixOperation,gi as MultiplyBlending,ma as MultiplyOperation,Vt as NearestFilter,jp as NearestMipMapLinearFilter,eh as NearestMipMapNearestFilter,un as NearestMipmapLinearFilter,no as NearestMipmapNearestFilter,Ir as NeutralToneMapping,lo as NeverCompare,qa as NeverDepth,th as NeverStencilFunc,Pt as NoBlending,Yt as NoColorSpace,nh as NoNormalPacking,Mt as NoToneMapping,ih as NormalAnimationBlendMode,vn as NormalBlending,rh as NormalGAPacking,ah as NormalRGPacking,io as NotEqualCompare,Va as NotEqualDepth,oh as NotEqualStencilFunc,sh as NumberKeyframeTrack,lh as Object3D,ch as ObjectLoader,va as ObjectSpaceNormalMap,fh as OctahedronGeometry,Ga as OneFactor,Ca as OneMinusConstantAlphaFactor,Pa as OneMinusConstantColorFactor,Da as OneMinusDstAlphaFactor,Ua as OneMinusDstColorFactor,wa as OneMinusSrcAlphaFactor,Ia as OneMinusSrcColorFactor,Pr as OrthographicCamera,gn as PCFShadowMap,Ma as PCFSoftShadowMap,xn as PMREMGenerator,dh as Path,mn as PerspectiveCamera,aa as Plane,Rr as PlaneGeometry,uh as PlaneHelper,ph as PointLight,hh as PointLightHelper,mh as Points,_h as PointsMaterial,gh as PolarGridHelper,vh as PolyhedronGeometry,Sh as PositionalAudio,Eh as PropertyBinding,xh as PropertyMixer,Mh as QuadraticBezierCurve,Th as QuadraticBezierCurve3,Ah as Quaternion,Rh as QuaternionKeyframeTrack,Ch as QuaternionLinearInterpolant,Pi as R11_EAC_Format,Qi as RED_GREEN_RGTC2_Format,$i as RED_RGTC1_Format,Ao as REVISION,Di as RG11_EAC_Format,bh as RGBADepthPacking,bt as RGBAFormat,Xr as RGBAIntegerFormat,Wi as RGBA_ASTC_10x10_Format,Hi as RGBA_ASTC_10x5_Format,Vi as RGBA_ASTC_10x6_Format,ki as RGBA_ASTC_10x8_Format,zi as RGBA_ASTC_12x10_Format,Xi as RGBA_ASTC_12x12_Format,wi as RGBA_ASTC_4x4_Format,Ii as RGBA_ASTC_5x4_Format,Ni as RGBA_ASTC_5x5_Format,yi as RGBA_ASTC_6x5_Format,Fi as RGBA_ASTC_6x6_Format,Oi as RGBA_ASTC_8x5_Format,Bi as RGBA_ASTC_8x6_Format,Gi as RGBA_ASTC_8x8_Format,Yi as RGBA_BPTC_Format,bi as RGBA_ETC2_EAC_Format,Ai as RGBA_PVRTC_2BPPV1_Format,Ti as RGBA_PVRTC_4BPPV1_Format,Nn as RGBA_S3TC_DXT1_Format,yn as RGBA_S3TC_DXT3_Format,Fn as RGBA_S3TC_DXT5_Format,Ph as RGBDepthPacking,_o as RGBFormat,Lh as RGBIntegerFormat,qi as RGB_BPTC_SIGNED_Format,Ki as RGB_BPTC_UNSIGNED_Format,Ri as RGB_ETC1_Format,Ci as RGB_ETC2_Format,Mi as RGB_PVRTC_2BPPV1_Format,xi as RGB_PVRTC_4BPPV1_Format,In as RGB_S3TC_DXT1_Format,Dh as RGDepthPacking,ln as RGFormat,zr as RGIntegerFormat,fa as RawShaderMaterial,Uh as Ray,wh as Raycaster,Ih as RectAreaLight,go as RedFormat,Wr as RedIntegerFormat,Or as ReinhardToneMapping,Nh as RenderTarget,yh as RenderTarget3D,to as RepeatWrapping,Fh as ReplaceStencilOp,Aa as ReverseSubtractEquation,Oh as RingGeometry,Li as SIGNED_R11_EAC_Format,Ji as SIGNED_RED_GREEN_RGTC2_Format,Zi as SIGNED_RED_RGTC1_Format,Ui as SIGNED_RG11_EAC_Format,To as SRGBColorSpace,$e as SRGBTransfer,Bh as Scene,De as ShaderChunk,Et as ShaderLib,Dt as ShaderMaterial,Gh as ShadowMaterial,Hh as Shape,Vh as ShapeGeometry,kh as ShapePath,Wh as ShapeUtils,ho as ShortType,zh as Skeleton,Xh as SkeletonHelper,Yh as SkinnedMesh,qh as Source,Kh as Sphere,$h as SphereGeometry,Zh as Spherical,Qh as SphericalHarmonics3,Jh as SplineCurve,jh as SpotLight,em as SpotLightHelper,tm as Sprite,nm as SpriteMaterial,Oa as SrcAlphaFactor,Fa as SrcAlphaSaturateFactor,Ba as SrcColorFactor,im as StaticCopyUsage,rm as StaticDrawUsage,am as StaticReadUsage,om as StereoCamera,sm as StreamCopyUsage,lm as StreamDrawUsage,cm as StreamReadUsage,fm as StringKeyframeTrack,Ra as SubtractEquation,vi as SubtractiveBlending,dm as TOUCH,ga as TangentSpaceNormalMap,um as TetrahedronGeometry,ua as Texture,pm as TextureLoader,hm as TextureUtils,mm as Timer,_m as TimestampQuery,gm as TorusGeometry,vm as TorusKnotGeometry,Sm as Triangle,Em as TriangleFanDrawMode,xm as TriangleStripDrawMode,Mm as TrianglesDrawMode,Tm as TubeGeometry,Am as UVMapping,ca as Uint16BufferAttribute,la as Uint32BufferAttribute,Rm as Uint8BufferAttribute,Cm as Uint8ClampedBufferAttribute,bm as Uniform,Pm as UniformsGroup,ae as UniformsLib,_a as UniformsUtils,xt as UnsignedByteType,uo as UnsignedInt101111Type,cn as UnsignedInt248Type,fo as UnsignedInt5999Type,kt as UnsignedIntType,Vr as UnsignedShort4444Type,kr as UnsignedShort5551Type,En as UnsignedShortType,rn as VSMShadowMap,pt as Vector2,Be as Vector3,ut as Vector4,Lm as VectorKeyframeTrack,Dm as VideoFrameTexture,Um as VideoTexture,wm as WebGL3DRenderTarget,Im as WebGLArrayRenderTarget,er as WebGLCoordinateSystem,Mn as WebGLCubeRenderTarget,Tt as WebGLRenderTarget,Tr as WebGLRenderer,rd as WebGLUtils,Nm as WebGPUCoordinateSystem,On as WebXRController,ym as WireframeGeometry,Fm as WrapAroundEnding,Om as ZeroCurvatureEnding,Ha as ZeroFactor,Bm as ZeroSlopeEnding,Gm as ZeroStencilOp,Mo as createCanvasElement,Ze as error,Hm as getConsoleFunction,ji as log,Vm as setConsoleFunction,Ye as warn,Dr as warnOnce};\n/*! Bundled license information:\n\nthree/build/three.module.js:\n  (**\n   * @license\n   * Copyright 2010-2026 Three.js Authors\n   * SPDX-License-Identifier: MIT\n   *)\n*/\n//# sourceMappingURL=three.mjs.map","/* esm.sh - three@0.183.2 */\nimport \"/three@0.183.2/es2022/build/three.core.mjs\";\nexport * from \"/three@0.183.2/es2022/three.mjs\";\n","/* esm.sh - three-mesh-bvh@0.8.2 */\nvar Oi=Object.defineProperty;var Hi=(n,t)=>{for(var e in t)Oi(n,e,{get:t[e],enumerable:!0})};import{BufferAttribute as Fo,Box3 as xi,FrontSide as mi}from\"/three@0.183.2/es2022/three.mjs\";var Dt=0,Re=1,ze=2,qi=0,Wi=1,te=2;var Sn=Math.pow(2,-24),ee=Symbol(\"SKIP_GENERATION\");import{BufferAttribute as Xi}from\"/three@0.183.2/es2022/three.mjs\";function Ve(n){return n.index?n.index.count:n.attributes.position.count}function K(n){return Ve(n)/3}function Ue(n,t=ArrayBuffer){return n>65535?new Uint32Array(new t(4*n)):new Uint16Array(new t(2*n))}function In(n,t){if(!n.index){let e=n.attributes.position.count,i=t.useSharedArrayBuffer?SharedArrayBuffer:ArrayBuffer,o=Ue(e,i);n.setIndex(new Xi(o,1));for(let c=0;c<e;c++)o[c]=c}}function ke(n,t){let e=K(n),i=t||n.drawRange,o=i.start/3,c=(i.start+i.count)/3,s=Math.max(0,o),a=Math.min(e,c)-s;return[{offset:Math.floor(s),count:Math.floor(a)}]}function Oe(n,t){if(!n.groups||!n.groups.length)return ke(n,t);let e=[],i=new Set,o=t||n.drawRange,c=o.start/3,s=(o.start+o.count)/3;for(let r of n.groups){let p=r.start/3,u=(r.start+r.count)/3;i.add(Math.max(c,p)),i.add(Math.min(s,u))}let a=Array.from(i.values()).sort((r,p)=>r-p);for(let r=0;r<a.length-1;r++){let p=a[r],u=a[r+1];e.push({offset:Math.floor(p),count:Math.floor(u-p)})}return e}function Pn(n,t){let e=K(n),i=Oe(n,t).sort((s,a)=>s.offset-a.offset),o=i[i.length-1];o.count=Math.min(e-o.offset,o.count);let c=0;return i.forEach(({count:s})=>c+=s),e!==c}function ne(n,t,e,i,o){let c=1/0,s=1/0,a=1/0,r=-1/0,p=-1/0,u=-1/0,f=1/0,l=1/0,d=1/0,b=-1/0,g=-1/0,y=-1/0;for(let h=t*6,m=(t+e)*6;h<m;h+=6){let x=n[h+0],w=n[h+1],A=x-w,T=x+w;A<c&&(c=A),T>r&&(r=T),x<f&&(f=x),x>b&&(b=x);let v=n[h+2],_=n[h+3],B=v-_,I=v+_;B<s&&(s=B),I>p&&(p=I),v<l&&(l=v),v>g&&(g=v);let P=n[h+4],S=n[h+5],M=P-S,E=P+S;M<a&&(a=M),E>u&&(u=E),P<d&&(d=P),P>y&&(y=P)}i[0]=c,i[1]=s,i[2]=a,i[3]=r,i[4]=p,i[5]=u,o[0]=f,o[1]=l,o[2]=d,o[3]=b,o[4]=g,o[5]=y}function Mn(n,t=null,e=null,i=null){let o=n.attributes.position,c=n.index?n.index.array:null,s=K(n),a=o.normalized,r;t===null?(r=new Float32Array(s*6),e=0,i=s):(r=t,e=e||0,i=i||s);let p=o.array,u=o.offset||0,f=3;o.isInterleavedBufferAttribute&&(f=o.data.stride);let l=[\"getX\",\"getY\",\"getZ\"];for(let d=e;d<e+i;d++){let b=d*3,g=d*6,y=b+0,h=b+1,m=b+2;c&&(y=c[y],h=c[h],m=c[m]),a||(y=y*f+u,h=h*f+u,m=m*f+u);for(let x=0;x<3;x++){let w,A,T;a?(w=o[l[x]](y),A=o[l[x]](h),T=o[l[x]](m)):(w=p[y+x],A=p[h+x],T=p[m+x]);let v=w;A<v&&(v=A),T<v&&(v=T);let _=w;A>_&&(_=A),T>_&&(_=T);let B=(_-v)/2,I=x*2;r[g+I+0]=v+B,r[g+I+1]=B+(Math.abs(v)+B)*Sn}}return r}function D(n,t,e){return e.min.x=t[n],e.min.y=t[n+1],e.min.z=t[n+2],e.max.x=t[n+3],e.max.y=t[n+4],e.max.z=t[n+5],e}function He(n){let t=-1,e=-1/0;for(let i=0;i<3;i++){let o=n[i+3]-n[i];o>e&&(e=o,t=i)}return t}function qe(n,t){t.set(n)}function We(n,t,e){let i,o;for(let c=0;c<3;c++){let s=c+3;i=n[c],o=t[c],e[c]=i<o?i:o,i=n[s],o=t[s],e[s]=i>o?i:o}}function Ft(n,t,e){for(let i=0;i<3;i++){let o=t[n+2*i],c=t[n+2*i+1],s=o-c,a=o+c;s<e[i]&&(e[i]=s),a>e[i+3]&&(e[i+3]=a)}}function mt(n){let t=n[3]-n[0],e=n[4]-n[1],i=n[5]-n[2];return 2*(t*e+e*i+i*t)}var J=32,Gi=(n,t)=>n.candidate-t.candidate,et=new Array(J).fill().map(()=>({count:0,bounds:new Float32Array(6),rightCacheBounds:new Float32Array(6),leftCacheBounds:new Float32Array(6),candidate:0})),ie=new Float32Array(6);function En(n,t,e,i,o,c){let s=-1,a=0;if(c===0)s=He(t),s!==-1&&(a=(t[s]+t[s+3])/2);else if(c===1)s=He(n),s!==-1&&(a=ji(e,i,o,s));else if(c===2){let r=mt(n),p=1.25*o,u=i*6,f=(i+o)*6;for(let l=0;l<3;l++){let d=t[l],y=(t[l+3]-d)/J;if(o<J/4){let h=[...et];h.length=o;let m=0;for(let w=u;w<f;w+=6,m++){let A=h[m];A.candidate=e[w+2*l],A.count=0;let{bounds:T,leftCacheBounds:v,rightCacheBounds:_}=A;for(let B=0;B<3;B++)_[B]=1/0,_[B+3]=-1/0,v[B]=1/0,v[B+3]=-1/0,T[B]=1/0,T[B+3]=-1/0;Ft(w,e,T)}h.sort(Gi);let x=o;for(let w=0;w<x;w++){let A=h[w];for(;w+1<x&&h[w+1].candidate===A.candidate;)h.splice(w+1,1),x--}for(let w=u;w<f;w+=6){let A=e[w+2*l];for(let T=0;T<x;T++){let v=h[T];A>=v.candidate?Ft(w,e,v.rightCacheBounds):(Ft(w,e,v.leftCacheBounds),v.count++)}}for(let w=0;w<x;w++){let A=h[w],T=A.count,v=o-A.count,_=A.leftCacheBounds,B=A.rightCacheBounds,I=0;T!==0&&(I=mt(_)/r);let P=0;v!==0&&(P=mt(B)/r);let S=1+1.25*(I*T+P*v);S<p&&(s=l,p=S,a=A.candidate)}}else{for(let x=0;x<J;x++){let w=et[x];w.count=0,w.candidate=d+y+x*y;let A=w.bounds;for(let T=0;T<3;T++)A[T]=1/0,A[T+3]=-1/0}for(let x=u;x<f;x+=6){let T=~~((e[x+2*l]-d)/y);T>=J&&(T=J-1);let v=et[T];v.count++,Ft(x,e,v.bounds)}let h=et[J-1];qe(h.bounds,h.rightCacheBounds);for(let x=J-2;x>=0;x--){let w=et[x],A=et[x+1];We(w.bounds,A.rightCacheBounds,w.rightCacheBounds)}let m=0;for(let x=0;x<J-1;x++){let w=et[x],A=w.count,T=w.bounds,_=et[x+1].rightCacheBounds;A!==0&&(m===0?qe(T,ie):We(T,ie,ie)),m+=A;let B=0,I=0;m!==0&&(B=mt(ie)/r);let P=o-m;P!==0&&(I=mt(_)/r);let S=1+1.25*(B*m+I*P);S<p&&(s=l,p=S,a=w.candidate)}}}}else console.warn(`MeshBVH: Invalid build strategy value ${c} used.`);return{axis:s,pos:a}}function ji(n,t,e,i){let o=0;for(let c=t,s=t+e;c<s;c++)o+=n[c*6+i*2];return o/e}var ht=class{constructor(){this.boundingData=new Float32Array(6)}};function Dn(n,t,e,i,o,c){let s=i,a=i+o-1,r=c.pos,p=c.axis*2;for(;;){for(;s<=a&&e[s*6+p]<r;)s++;for(;s<=a&&e[a*6+p]>=r;)a--;if(s<a){for(let u=0;u<3;u++){let f=t[s*3+u];t[s*3+u]=t[a*3+u],t[a*3+u]=f}for(let u=0;u<6;u++){let f=e[s*6+u];e[s*6+u]=e[a*6+u],e[a*6+u]=f}s++,a--}else return s}}function Fn(n,t,e,i,o,c){let s=i,a=i+o-1,r=c.pos,p=c.axis*2;for(;;){for(;s<=a&&e[s*6+p]<r;)s++;for(;s<=a&&e[a*6+p]>=r;)a--;if(s<a){let u=n[s];n[s]=n[a],n[a]=u;for(let f=0;f<6;f++){let l=e[s*6+f];e[s*6+f]=e[a*6+f],e[a*6+f]=l}s++,a--}else return s}}function L(n,t){return t[n+15]===65535}function R(n,t){return t[n+6]}function z(n,t){return t[n+14]}function O(n){return n+8}function k(n,t){return t[n+6]}function xt(n,t){return t[n+7]}var Nn,Ct,se,Cn,Yi=Math.pow(2,32);function re(n){return\"count\"in n?1:1+re(n.left)+re(n.right)}function Ln(n,t,e){return Nn=new Float32Array(e),Ct=new Uint32Array(e),se=new Uint16Array(e),Cn=new Uint8Array(e),Xe(n,t)}function Xe(n,t){let e=n/4,i=n/2,o=\"count\"in t,c=t.boundingData;for(let s=0;s<6;s++)Nn[e+s]=c[s];if(o)if(t.buffer){let s=t.buffer;Cn.set(new Uint8Array(s),n);for(let a=n,r=n+s.byteLength;a<r;a+=32){let p=a/2;L(p,se)||(Ct[a/4+6]+=e)}return n+s.byteLength}else{let s=t.offset,a=t.count;return Ct[e+6]=s,se[i+14]=a,se[i+15]=65535,n+32}else{let s=t.left,a=t.right,r=t.splitAxis,p;if(p=Xe(n+32,s),p/4>Yi)throw new Error(\"MeshBVH: Cannot store child pointer greater than 32 bits.\");return Ct[e+6]=p/4,p=Xe(p,a),Ct[e+7]=r,p}}function Zi(n,t){let e=(n.index?n.index.count:n.attributes.position.count)/3,i=e>2**16,o=i?4:2,c=t?new SharedArrayBuffer(e*o):new ArrayBuffer(e*o),s=i?new Uint32Array(c):new Uint16Array(c);for(let a=0,r=s.length;a<r;a++)s[a]=a;return s}function Ki(n,t,e,i,o){let{maxDepth:c,verbose:s,maxLeafTris:a,strategy:r,onProgress:p,indirect:u}=o,f=n._indirectBuffer,l=n.geometry,d=l.index?l.index.array:null,b=u?Fn:Dn,g=K(l),y=new Float32Array(6),h=!1,m=new ht;return ne(t,e,i,m.boundingData,y),w(m,e,i,y),m;function x(A){p&&p(A/g)}function w(A,T,v,_=null,B=0){if(!h&&B>=c&&(h=!0,s&&(console.warn(`MeshBVH: Max depth of ${c} reached when generating BVH. Consider increasing maxDepth.`),console.warn(l))),v<=a||B>=c)return x(T+v),A.offset=T,A.count=v,A;let I=En(A.boundingData,_,t,T,v,r);if(I.axis===-1)return x(T+v),A.offset=T,A.count=v,A;let P=b(f,d,t,T,v,I);if(P===T||P===T+v)x(T+v),A.offset=T,A.count=v;else{A.splitAxis=I.axis;let S=new ht,M=T,E=P-T;A.left=S,ne(t,M,E,S.boundingData,y),w(S,M,E,y,B+1);let N=new ht,U=P,tt=v-E;A.right=N,ne(t,U,tt,N.boundingData,y),w(N,U,tt,y,B+1)}return A}}function Rn(n,t){let e=n.geometry;t.indirect&&(n._indirectBuffer=Zi(e,t.useSharedArrayBuffer),Pn(e,t.range)&&!t.verbose&&console.warn('MeshBVH: Provided geometry contains groups or a range that do not fully span the vertex contents while using the \"indirect\" option. BVH may incorrectly report intersections on unrendered portions of the geometry.')),n._indirectBuffer||In(e,t);let i=t.useSharedArrayBuffer?SharedArrayBuffer:ArrayBuffer,o=Mn(e),c=t.indirect?ke(e,t.range):Oe(e,t.range);n._roots=c.map(s=>{let a=Ki(n,o,s.offset,s.count,t),r=re(a),p=new i(32*r);return Ln(0,a,p),p})}import{Vector3 as nt,Matrix4 as Vn,Line3 as Un}from\"/three@0.183.2/es2022/three.mjs\";import{Vector3 as $i}from\"/three@0.183.2/es2022/three.mjs\";var X=class{constructor(){this.min=1/0,this.max=-1/0}setFromPointsField(t,e){let i=1/0,o=-1/0;for(let c=0,s=t.length;c<s;c++){let r=t[c][e];i=r<i?r:i,o=r>o?r:o}this.min=i,this.max=o}setFromPoints(t,e){let i=1/0,o=-1/0;for(let c=0,s=e.length;c<s;c++){let a=e[c],r=t.dot(a);i=r<i?r:i,o=r>o?r:o}this.min=i,this.max=o}isSeparated(t){return this.min>t.max||t.min>this.max}};X.prototype.setFromBox=(function(){let n=new $i;return function(e,i){let o=i.min,c=i.max,s=1/0,a=-1/0;for(let r=0;r<=1;r++)for(let p=0;p<=1;p++)for(let u=0;u<=1;u++){n.x=o.x*r+c.x*(1-r),n.y=o.y*p+c.y*(1-p),n.z=o.z*u+c.z*(1-u);let f=e.dot(n);s=Math.min(f,s),a=Math.max(f,a)}this.min=s,this.max=a}})();var tr=(function(){let n=new X;return function(e,i){let o=e.points,c=e.satAxes,s=e.satBounds,a=i.points,r=i.satAxes,p=i.satBounds;for(let u=0;u<3;u++){let f=s[u],l=c[u];if(n.setFromPoints(l,a),f.isSeparated(n))return!1}for(let u=0;u<3;u++){let f=p[u],l=r[u];if(n.setFromPoints(l,o),f.isSeparated(n))return!1}}})();import{Triangle as no,Vector3 as G,Line3 as yt,Sphere as io,Plane as oo}from\"/three@0.183.2/es2022/three.mjs\";import{Vector3 as ct,Vector2 as Ji,Plane as Qi,Line3 as to}from\"/three@0.183.2/es2022/three.mjs\";var eo=(function(){let n=new ct,t=new ct,e=new ct;return function(o,c,s){let a=o.start,r=n,p=c.start,u=t;e.subVectors(a,p),n.subVectors(o.end,o.start),t.subVectors(c.end,c.start);let f=e.dot(u),l=u.dot(r),d=u.dot(u),b=e.dot(r),y=r.dot(r)*d-l*l,h,m;y!==0?h=(f*l-b*d)/y:h=0,m=(f+h*l)/d,s.x=h,s.y=m}})(),Lt=(function(){let n=new Ji,t=new ct,e=new ct;return function(o,c,s,a){eo(o,c,n);let r=n.x,p=n.y;if(r>=0&&r<=1&&p>=0&&p<=1){o.at(r,s),c.at(p,a);return}else if(r>=0&&r<=1){p<0?c.at(0,a):c.at(1,a),o.closestPointToPoint(a,!0,s);return}else if(p>=0&&p<=1){r<0?o.at(0,s):o.at(1,s),c.closestPointToPoint(s,!0,a);return}else{let u;r<0?u=o.start:u=o.end;let f;p<0?f=c.start:f=c.end;let l=t,d=e;if(o.closestPointToPoint(f,!0,t),c.closestPointToPoint(u,!0,e),l.distanceToSquared(f)<=d.distanceToSquared(u)){s.copy(l),a.copy(f);return}else{s.copy(u),a.copy(d);return}}}})(),zn=(function(){let n=new ct,t=new ct,e=new Qi,i=new to;return function(c,s){let{radius:a,center:r}=c,{a:p,b:u,c:f}=s;if(i.start=p,i.end=u,i.closestPointToPoint(r,!0,n).distanceTo(r)<=a||(i.start=p,i.end=f,i.closestPointToPoint(r,!0,n).distanceTo(r)<=a)||(i.start=u,i.end=f,i.closestPointToPoint(r,!0,n).distanceTo(r)<=a))return!0;let g=s.getPlane(e);if(Math.abs(g.distanceToPoint(r))<=a){let h=g.projectPoint(r,t);if(s.containsPoint(h))return!0}return!1}})();var so=1e-15;function Ge(n){return Math.abs(n)<so}var H=class extends no{constructor(...t){super(...t),this.isExtendedTriangle=!0,this.satAxes=new Array(4).fill().map(()=>new G),this.satBounds=new Array(4).fill().map(()=>new X),this.points=[this.a,this.b,this.c],this.sphere=new io,this.plane=new oo,this.needsUpdate=!0}intersectsSphere(t){return zn(t,this)}update(){let t=this.a,e=this.b,i=this.c,o=this.points,c=this.satAxes,s=this.satBounds,a=c[0],r=s[0];this.getNormal(a),r.setFromPoints(a,o);let p=c[1],u=s[1];p.subVectors(t,e),u.setFromPoints(p,o);let f=c[2],l=s[2];f.subVectors(e,i),l.setFromPoints(f,o);let d=c[3],b=s[3];d.subVectors(i,t),b.setFromPoints(d,o),this.sphere.setFromPoints(this.points),this.plane.setFromNormalAndCoplanarPoint(a,t),this.needsUpdate=!1}};H.prototype.closestPointToSegment=(function(){let n=new G,t=new G,e=new yt;return function(o,c=null,s=null){let{start:a,end:r}=o,p=this.points,u,f=1/0;for(let l=0;l<3;l++){let d=(l+1)%3;e.start.copy(p[l]),e.end.copy(p[d]),Lt(e,o,n,t),u=n.distanceToSquared(t),u<f&&(f=u,c&&c.copy(n),s&&s.copy(t))}return this.closestPointToPoint(a,n),u=a.distanceToSquared(n),u<f&&(f=u,c&&c.copy(n),s&&s.copy(a)),this.closestPointToPoint(r,n),u=r.distanceToSquared(n),u<f&&(f=u,c&&c.copy(n),s&&s.copy(r)),Math.sqrt(f)}})();H.prototype.intersectsTriangle=(function(){let n=new H,t=new Array(3),e=new Array(3),i=new X,o=new X,c=new G,s=new G,a=new G,r=new G,p=new G,u=new yt,f=new yt,l=new yt,d=new G;function b(g,y,h){let m=g.points,x=0,w=-1;for(let A=0;A<3;A++){let{start:T,end:v}=u;T.copy(m[A]),v.copy(m[(A+1)%3]),u.delta(s);let _=Ge(y.distanceToPoint(T));if(Ge(y.normal.dot(s))&&_){h.copy(u),x=2;break}let B=y.intersectLine(u,d);if(!B&&_&&d.copy(T),(B||_)&&!Ge(d.distanceTo(v))){if(x<=1)(x===1?h.start:h.end).copy(d),_&&(w=x);else if(x>=2){(w===1?h.start:h.end).copy(d),x=2;break}if(x++,x===2&&w===-1)break}}return x}return function(y,h=null,m=!1){this.needsUpdate&&this.update(),y.isExtendedTriangle?y.needsUpdate&&y.update():(n.copy(y),n.update(),y=n);let x=this.plane,w=y.plane;if(Math.abs(x.normal.dot(w.normal))>1-1e-10){let A=this.satBounds,T=this.satAxes;e[0]=y.a,e[1]=y.b,e[2]=y.c;for(let B=0;B<4;B++){let I=A[B],P=T[B];if(i.setFromPoints(P,e),I.isSeparated(i))return!1}let v=y.satBounds,_=y.satAxes;t[0]=this.a,t[1]=this.b,t[2]=this.c;for(let B=0;B<4;B++){let I=v[B],P=_[B];if(i.setFromPoints(P,t),I.isSeparated(i))return!1}for(let B=0;B<4;B++){let I=T[B];for(let P=0;P<4;P++){let S=_[P];if(c.crossVectors(I,S),i.setFromPoints(c,t),o.setFromPoints(c,e),i.isSeparated(o))return!1}}return h&&(m||console.warn(\"ExtendedTriangle.intersectsTriangle: Triangles are coplanar which does not support an output edge. Setting edge to 0, 0, 0.\"),h.start.set(0,0,0),h.end.set(0,0,0)),!0}else{let A=b(this,w,f);if(A===1&&y.containsPoint(f.end))return h&&(h.start.copy(f.end),h.end.copy(f.end)),!0;if(A!==2)return!1;let T=b(y,x,l);if(T===1&&this.containsPoint(l.end))return h&&(h.start.copy(l.end),h.end.copy(l.end)),!0;if(T!==2)return!1;if(f.delta(a),l.delta(r),a.dot(r)<0){let M=l.start;l.start=l.end,l.end=M}let v=f.start.dot(a),_=f.end.dot(a),B=l.start.dot(a),I=l.end.dot(a),P=_<B,S=v<I;return v!==I&&B!==_&&P===S?!1:(h&&(p.subVectors(f.start,l.start),p.dot(a)>0?h.start.copy(f.start):h.start.copy(l.start),p.subVectors(f.end,l.end),p.dot(a)<0?h.end.copy(f.end):h.end.copy(l.end)),!0)}}})();H.prototype.distanceToPoint=(function(){let n=new G;return function(e){return this.closestPointToPoint(e,n),e.distanceTo(n)}})();H.prototype.distanceToTriangle=(function(){let n=new G,t=new G,e=[\"a\",\"b\",\"c\"],i=new yt,o=new yt;return function(s,a=null,r=null){let p=a||r?i:null;if(this.intersectsTriangle(s,p))return(a||r)&&(a&&p.getCenter(a),r&&p.getCenter(r)),0;let u=1/0;for(let f=0;f<3;f++){let l,d=e[f],b=s[d];this.closestPointToPoint(b,n),l=b.distanceToSquared(n),l<u&&(u=l,a&&a.copy(n),r&&r.copy(b));let g=this[d];s.closestPointToPoint(g,n),l=g.distanceToSquared(n),l<u&&(u=l,a&&a.copy(g),r&&r.copy(n))}for(let f=0;f<3;f++){let l=e[f],d=e[(f+1)%3];i.set(this[l],this[d]);for(let b=0;b<3;b++){let g=e[b],y=e[(b+1)%3];o.set(s[g],s[y]),Lt(i,o,n,t);let h=n.distanceToSquared(t);h<u&&(u=h,a&&a.copy(n),r&&r.copy(t))}}return Math.sqrt(u)}})();var V=class{constructor(t,e,i){this.isOrientedBox=!0,this.min=new nt,this.max=new nt,this.matrix=new Vn,this.invMatrix=new Vn,this.points=new Array(8).fill().map(()=>new nt),this.satAxes=new Array(3).fill().map(()=>new nt),this.satBounds=new Array(3).fill().map(()=>new X),this.alignedSatBounds=new Array(3).fill().map(()=>new X),this.needsUpdate=!1,t&&this.min.copy(t),e&&this.max.copy(e),i&&this.matrix.copy(i)}set(t,e,i){this.min.copy(t),this.max.copy(e),this.matrix.copy(i),this.needsUpdate=!0}copy(t){this.min.copy(t.min),this.max.copy(t.max),this.matrix.copy(t.matrix),this.needsUpdate=!0}};V.prototype.update=(function(){return function(){let t=this.matrix,e=this.min,i=this.max,o=this.points;for(let p=0;p<=1;p++)for(let u=0;u<=1;u++)for(let f=0;f<=1;f++){let l=1*p|2*u|4*f,d=o[l];d.x=p?i.x:e.x,d.y=u?i.y:e.y,d.z=f?i.z:e.z,d.applyMatrix4(t)}let c=this.satBounds,s=this.satAxes,a=o[0];for(let p=0;p<3;p++){let u=s[p],f=c[p],l=1<<p,d=o[l];u.subVectors(a,d),f.setFromPoints(u,o)}let r=this.alignedSatBounds;r[0].setFromPointsField(o,\"x\"),r[1].setFromPointsField(o,\"y\"),r[2].setFromPointsField(o,\"z\"),this.invMatrix.copy(this.matrix).invert(),this.needsUpdate=!1}})();V.prototype.intersectsBox=(function(){let n=new X;return function(e){this.needsUpdate&&this.update();let i=e.min,o=e.max,c=this.satBounds,s=this.satAxes,a=this.alignedSatBounds;if(n.min=i.x,n.max=o.x,a[0].isSeparated(n)||(n.min=i.y,n.max=o.y,a[1].isSeparated(n))||(n.min=i.z,n.max=o.z,a[2].isSeparated(n)))return!1;for(let r=0;r<3;r++){let p=s[r],u=c[r];if(n.setFromBox(p,e),u.isSeparated(n))return!1}return!0}})();V.prototype.intersectsTriangle=(function(){let n=new H,t=new Array(3),e=new X,i=new X,o=new nt;return function(s){this.needsUpdate&&this.update(),s.isExtendedTriangle?s.needsUpdate&&s.update():(n.copy(s),n.update(),s=n);let a=this.satBounds,r=this.satAxes;t[0]=s.a,t[1]=s.b,t[2]=s.c;for(let l=0;l<3;l++){let d=a[l],b=r[l];if(e.setFromPoints(b,t),d.isSeparated(e))return!1}let p=s.satBounds,u=s.satAxes,f=this.points;for(let l=0;l<3;l++){let d=p[l],b=u[l];if(e.setFromPoints(b,f),d.isSeparated(e))return!1}for(let l=0;l<3;l++){let d=r[l];for(let b=0;b<4;b++){let g=u[b];if(o.crossVectors(d,g),e.setFromPoints(o,t),i.setFromPoints(o,f),e.isSeparated(i))return!1}}return!0}})();V.prototype.closestPointToPoint=(function(){return function(t,e){return this.needsUpdate&&this.update(),e.copy(t).applyMatrix4(this.invMatrix).clamp(this.min,this.max).applyMatrix4(this.matrix),e}})();V.prototype.distanceToPoint=(function(){let n=new nt;return function(e){return this.closestPointToPoint(e,n),e.distanceTo(n)}})();V.prototype.distanceToBox=(function(){let n=[\"x\",\"y\",\"z\"],t=new Array(12).fill().map(()=>new Un),e=new Array(12).fill().map(()=>new Un),i=new nt,o=new nt;return function(s,a=0,r=null,p=null){if(this.needsUpdate&&this.update(),this.intersectsBox(s))return(r||p)&&(s.getCenter(o),this.closestPointToPoint(o,i),s.closestPointToPoint(i,o),r&&r.copy(i),p&&p.copy(o)),0;let u=a*a,f=s.min,l=s.max,d=this.points,b=1/0;for(let y=0;y<8;y++){let h=d[y];o.copy(h).clamp(f,l);let m=h.distanceToSquared(o);if(m<b&&(b=m,r&&r.copy(h),p&&p.copy(o),m<u))return Math.sqrt(m)}let g=0;for(let y=0;y<3;y++)for(let h=0;h<=1;h++)for(let m=0;m<=1;m++){let x=(y+1)%3,w=(y+2)%3,A=h<<x|m<<w,T=1<<y|h<<x|m<<w,v=d[A],_=d[T];t[g].set(v,_);let I=n[y],P=n[x],S=n[w],M=e[g],E=M.start,N=M.end;E[I]=f[I],E[P]=h?f[P]:l[P],E[S]=m?f[S]:l[P],N[I]=l[I],N[P]=h?f[P]:l[P],N[S]=m?f[S]:l[P],g++}for(let y=0;y<=1;y++)for(let h=0;h<=1;h++)for(let m=0;m<=1;m++){o.x=y?l.x:f.x,o.y=h?l.y:f.y,o.z=m?l.z:f.z,this.closestPointToPoint(o,i);let x=o.distanceToSquared(i);if(x<b&&(b=x,r&&r.copy(i),p&&p.copy(o),x<u))return Math.sqrt(x)}for(let y=0;y<12;y++){let h=t[y];for(let m=0;m<12;m++){let x=e[m];Lt(h,x,i,o);let w=i.distanceToSquared(o);if(w<b&&(b=w,r&&r.copy(i),p&&p.copy(o),w<u))return Math.sqrt(w)}}return Math.sqrt(b)}})();var it=class{constructor(t){this._getNewPrimitive=t,this._primitives=[]}getPrimitive(){let t=this._primitives;return t.length===0?this._getNewPrimitive():t.pop()}releasePrimitive(t){this._primitives.push(t)}};var je=class extends it{constructor(){super(()=>new H)}},W=new je;import{Box3 as ro}from\"/three@0.183.2/es2022/three.mjs\";var Ye=class{constructor(){this.float32Array=null,this.uint16Array=null,this.uint32Array=null;let t=[],e=null;this.setBuffer=i=>{e&&t.push(e),e=i,this.float32Array=new Float32Array(i),this.uint16Array=new Uint16Array(i),this.uint32Array=new Uint32Array(i)},this.clearBuffer=()=>{e=null,this.float32Array=null,this.uint16Array=null,this.uint32Array=null,t.length!==0&&this.setBuffer(t.pop())}}},F=new Ye;var ot,gt,bt=[],ce=new it(()=>new ro);function kn(n,t,e,i,o,c){ot=ce.getPrimitive(),gt=ce.getPrimitive(),bt.push(ot,gt),F.setBuffer(n._roots[t]);let s=Ze(0,n.geometry,e,i,o,c);F.clearBuffer(),ce.releasePrimitive(ot),ce.releasePrimitive(gt),bt.pop(),bt.pop();let a=bt.length;return a>0&&(gt=bt[a-1],ot=bt[a-2]),s}function Ze(n,t,e,i,o=null,c=0,s=0){let{float32Array:a,uint16Array:r,uint32Array:p}=F,u=n*2;if(L(u,r)){let l=R(n,p),d=z(u,r);return D(n,a,ot),i(l,d,!1,s,c+n,ot)}else{let I=function(S){let{uint16Array:M,uint32Array:E}=F,N=S*2;for(;!L(N,M);)S=O(S),N=S*2;return R(S,E)},P=function(S){let{uint16Array:M,uint32Array:E}=F,N=S*2;for(;!L(N,M);)S=k(S,E),N=S*2;return R(S,E)+z(N,M)},l=O(n),d=k(n,p),b=l,g=d,y,h,m,x;if(o&&(m=ot,x=gt,D(b,a,m),D(g,a,x),y=o(m),h=o(x),h<y)){b=d,g=l;let S=y;y=h,h=S,m=x}m||(m=ot,D(b,a,m));let w=L(b*2,r),A=e(m,w,y,s+1,c+b),T;if(A===2){let S=I(b),E=P(b)-S;T=i(S,E,!0,s+1,c+b,m)}else T=A&&Ze(b,t,e,i,o,c,s+1);if(T)return!0;x=gt,D(g,a,x);let v=L(g*2,r),_=e(x,v,h,s+1,c+g),B;if(_===2){let S=I(g),E=P(g)-S;B=i(S,E,!0,s+1,c+g,x)}else B=_&&Ze(g,t,e,i,o,c,s+1);return!!B}}import{Vector3 as On}from\"/three@0.183.2/es2022/three.mjs\";var Rt=new On,Ke=new On;function Hn(n,t,e={},i=0,o=1/0){let c=i*i,s=o*o,a=1/0,r=null;if(n.shapecast({boundsTraverseOrder:u=>(Rt.copy(t).clamp(u.min,u.max),Rt.distanceToSquared(t)),intersectsBounds:(u,f,l)=>l<a&&l<s,intersectsTriangle:(u,f)=>{u.closestPointToPoint(t,Rt);let l=t.distanceToSquared(Rt);return l<a&&(Ke.copy(Rt),a=l,r=f),l<c}}),a===1/0)return null;let p=Math.sqrt(a);return e.point?e.point.copy(Ke):e.point=Ke.clone(),e.distance=p,e.faceIndex=r,e}import{Vector3 as $,Vector2 as Ut,Triangle as zt,DoubleSide as co,BackSide as ao,REVISION as lo}from\"/three@0.183.2/es2022/three.mjs\";var uo=parseInt(lo)>=169,at=new $,lt=new $,ut=new $,le=new Ut,ue=new Ut,fe=new Ut,qn=new $,Wn=new $,Xn=new $,Vt=new $;function fo(n,t,e,i,o,c,s,a){let r;if(c===ao?r=n.intersectTriangle(i,e,t,!0,o):r=n.intersectTriangle(t,e,i,c!==co,o),r===null)return null;let p=n.origin.distanceTo(o);return p<s||p>a?null:{distance:p,point:o.clone()}}function po(n,t,e,i,o,c,s,a,r,p,u){at.fromBufferAttribute(t,c),lt.fromBufferAttribute(t,s),ut.fromBufferAttribute(t,a);let f=fo(n,at,lt,ut,Vt,r,p,u);if(f){let l=new $;zt.getBarycoord(Vt,at,lt,ut,l),i&&(le.fromBufferAttribute(i,c),ue.fromBufferAttribute(i,s),fe.fromBufferAttribute(i,a),f.uv=zt.getInterpolation(Vt,at,lt,ut,le,ue,fe,new Ut)),o&&(le.fromBufferAttribute(o,c),ue.fromBufferAttribute(o,s),fe.fromBufferAttribute(o,a),f.uv1=zt.getInterpolation(Vt,at,lt,ut,le,ue,fe,new Ut)),e&&(qn.fromBufferAttribute(e,c),Wn.fromBufferAttribute(e,s),Xn.fromBufferAttribute(e,a),f.normal=zt.getInterpolation(Vt,at,lt,ut,qn,Wn,Xn,new $),f.normal.dot(n.direction)>0&&f.normal.multiplyScalar(-1));let d={a:c,b:s,c:a,normal:new $,materialIndex:0};zt.getNormal(at,lt,ut,d.normal),f.face=d,f.faceIndex=c,uo&&(f.barycoord=l)}return f}function At(n,t,e,i,o,c,s){let a=i*3,r=a+0,p=a+1,u=a+2,f=n.index;n.index&&(r=f.getX(r),p=f.getX(p),u=f.getX(u));let{position:l,normal:d,uv:b,uv1:g}=n.attributes,y=po(e,l,d,b,g,r,p,u,t,c,s);return y?(y.faceIndex=i,o&&o.push(y),y):null}import{Vector2 as de,Vector3 as wt,Triangle as pe}from\"/three@0.183.2/es2022/three.mjs\";function C(n,t,e,i){let o=n.a,c=n.b,s=n.c,a=t,r=t+1,p=t+2;e&&(a=e.getX(a),r=e.getX(r),p=e.getX(p)),o.x=i.getX(a),o.y=i.getY(a),o.z=i.getZ(a),c.x=i.getX(r),c.y=i.getY(r),c.z=i.getZ(r),s.x=i.getX(p),s.y=i.getY(p),s.z=i.getZ(p)}var kt=new wt,Ot=new wt,Ht=new wt,Gn=new de,jn=new de,Yn=new de;function mo(n,t,e,i){let o=t.getIndex().array,c=t.getAttribute(\"position\"),s=t.getAttribute(\"uv\"),a=o[e*3],r=o[e*3+1],p=o[e*3+2];kt.fromBufferAttribute(c,a),Ot.fromBufferAttribute(c,r),Ht.fromBufferAttribute(c,p);let u=0,f=t.groups,l=e*3;for(let g=0,y=f.length;g<y;g++){let h=f[g],{start:m,count:x}=h;if(l>=m&&l<m+x){u=h.materialIndex;break}}let d=i&&i.barycoord?i.barycoord:new wt;pe.getBarycoord(n,kt,Ot,Ht,d);let b=null;return s&&(Gn.fromBufferAttribute(s,a),jn.fromBufferAttribute(s,r),Yn.fromBufferAttribute(s,p),i&&i.uv?b=i.uv:b=new de,pe.getInterpolation(n,kt,Ot,Ht,Gn,jn,Yn,b)),i?(i.face||(i.face={}),i.face.a=a,i.face.b=r,i.face.c=p,i.face.materialIndex=u,i.face.normal||(i.face.normal=new wt),pe.getNormal(kt,Ot,Ht,i.face.normal),b&&(i.uv=b),i.barycoord=d,i):{face:{a,b:r,c:p,materialIndex:u,normal:pe.getNormal(kt,Ot,Ht,new wt)},uv:b,barycoord:d}}function Zn(n,t,e,i,o,c,s,a){let{geometry:r,_indirectBuffer:p}=n;for(let u=i,f=i+o;u<f;u++)At(r,t,e,u,c,s,a)}function Kn(n,t,e,i,o,c,s){let{geometry:a,_indirectBuffer:r}=n,p=1/0,u=null;for(let f=i,l=i+o;f<l;f++){let d;d=At(a,t,e,f,null,c,s),d&&d.distance<p&&(u=d,p=d.distance)}return u}function $n(n,t,e,i,o,c,s){let{geometry:a}=e,{index:r}=a,p=a.attributes.position;for(let u=n,f=t+n;u<f;u++){let l;if(l=u,C(s,l*3,r,p),s.needsUpdate=!0,i(s,l,o,c))return!0}return!1}function Jn(n,t=null){t&&Array.isArray(t)&&(t=new Set(t));let e=n.geometry,i=e.index?e.index.array:null,o=e.attributes.position,c,s,a,r,p=0,u=n._roots;for(let l=0,d=u.length;l<d;l++)c=u[l],s=new Uint32Array(c),a=new Uint16Array(c),r=new Float32Array(c),f(0,p),p+=c.byteLength;function f(l,d,b=!1){let g=l*2;if(a[g+15]===65535){let h=s[l+6],m=a[g+14],x=1/0,w=1/0,A=1/0,T=-1/0,v=-1/0,_=-1/0;for(let B=3*h,I=3*(h+m);B<I;B++){let P=i[B],S=o.getX(P),M=o.getY(P),E=o.getZ(P);S<x&&(x=S),S>T&&(T=S),M<w&&(w=M),M>v&&(v=M),E<A&&(A=E),E>_&&(_=E)}return r[l+0]!==x||r[l+1]!==w||r[l+2]!==A||r[l+3]!==T||r[l+4]!==v||r[l+5]!==_?(r[l+0]=x,r[l+1]=w,r[l+2]=A,r[l+3]=T,r[l+4]=v,r[l+5]=_,!0):!1}else{let h=l+8,m=s[l+6],x=h+d,w=m+d,A=b,T=!1,v=!1;t?A||(T=t.has(x),v=t.has(w),A=!T&&!v):(T=!0,v=!0);let _=A||T,B=A||v,I=!1;_&&(I=f(h,d,A));let P=!1;B&&(P=f(m,d,A));let S=I||P;if(S)for(let M=0;M<3;M++){let E=h+M,N=m+M,U=r[E],tt=r[E+3],Mt=r[N],Et=r[N+3];r[l+M]=U<Mt?U:Mt,r[l+M+3]=tt>Et?tt:Et}return S}}}function j(n,t,e,i,o){let c,s,a,r,p,u,f=1/e.direction.x,l=1/e.direction.y,d=1/e.direction.z,b=e.origin.x,g=e.origin.y,y=e.origin.z,h=t[n],m=t[n+3],x=t[n+1],w=t[n+3+1],A=t[n+2],T=t[n+3+2];return f>=0?(c=(h-b)*f,s=(m-b)*f):(c=(m-b)*f,s=(h-b)*f),l>=0?(a=(x-g)*l,r=(w-g)*l):(a=(w-g)*l,r=(x-g)*l),c>r||a>s||((a>c||isNaN(c))&&(c=a),(r<s||isNaN(s))&&(s=r),d>=0?(p=(A-y)*d,u=(T-y)*d):(p=(T-y)*d,u=(A-y)*d),c>u||p>s)?!1:((p>c||c!==c)&&(c=p),(u<s||s!==s)&&(s=u),c<=o&&s>=i)}function Qn(n,t,e,i,o,c,s,a){let{geometry:r,_indirectBuffer:p}=n;for(let u=i,f=i+o;u<f;u++){let l=p?p[u]:u;At(r,t,e,l,c,s,a)}}function ti(n,t,e,i,o,c,s){let{geometry:a,_indirectBuffer:r}=n,p=1/0,u=null;for(let f=i,l=i+o;f<l;f++){let d;d=At(a,t,e,r?r[f]:f,null,c,s),d&&d.distance<p&&(u=d,p=d.distance)}return u}function ei(n,t,e,i,o,c,s){let{geometry:a}=e,{index:r}=a,p=a.attributes.position;for(let u=n,f=t+n;u<f;u++){let l;if(l=e.resolveTriangleIndex(u),C(s,l*3,r,p),s.needsUpdate=!0,i(s,l,o,c))return!0}return!1}function ni(n,t,e,i,o,c,s){F.setBuffer(n._roots[t]),$e(0,n,e,i,o,c,s),F.clearBuffer()}function $e(n,t,e,i,o,c,s){let{float32Array:a,uint16Array:r,uint32Array:p}=F,u=n*2;if(L(u,r)){let l=R(n,p),d=z(u,r);Zn(t,e,i,l,d,o,c,s)}else{let l=O(n);j(l,a,i,c,s)&&$e(l,t,e,i,o,c,s);let d=k(n,p);j(d,a,i,c,s)&&$e(d,t,e,i,o,c,s)}}var ho=[\"x\",\"y\",\"z\"];function ii(n,t,e,i,o,c){F.setBuffer(n._roots[t]);let s=Je(0,n,e,i,o,c);return F.clearBuffer(),s}function Je(n,t,e,i,o,c){let{float32Array:s,uint16Array:a,uint32Array:r}=F,p=n*2;if(L(p,a)){let f=R(n,r),l=z(p,a);return Kn(t,e,i,f,l,o,c)}else{let f=xt(n,r),l=ho[f],b=i.direction[l]>=0,g,y;b?(g=O(n),y=k(n,r)):(g=k(n,r),y=O(n));let m=j(g,s,i,o,c)?Je(g,t,e,i,o,c):null;if(m){let A=m.point[l];if(b?A<=s[y+f]:A>=s[y+f+3])return m}let w=j(y,s,i,o,c)?Je(y,t,e,i,o,c):null;return m&&w?m.distance<=w.distance?m:w:m||w||null}}import{Box3 as xo,Matrix4 as yo}from\"/three@0.183.2/es2022/three.mjs\";var me=new xo,Tt=new H,vt=new H,qt=new yo,oi=new V,he=new V;function si(n,t,e,i){F.setBuffer(n._roots[t]);let o=Qe(0,n,e,i);return F.clearBuffer(),o}function Qe(n,t,e,i,o=null){let{float32Array:c,uint16Array:s,uint32Array:a}=F,r=n*2;if(o===null&&(e.boundingBox||e.computeBoundingBox(),oi.set(e.boundingBox.min,e.boundingBox.max,i),o=oi),L(r,s)){let u=t.geometry,f=u.index,l=u.attributes.position,d=e.index,b=e.attributes.position,g=R(n,a),y=z(r,s);if(qt.copy(i).invert(),e.boundsTree)return D(n,c,he),he.matrix.copy(qt),he.needsUpdate=!0,e.boundsTree.shapecast({intersectsBounds:m=>he.intersectsBox(m),intersectsTriangle:m=>{m.a.applyMatrix4(i),m.b.applyMatrix4(i),m.c.applyMatrix4(i),m.needsUpdate=!0;for(let x=g*3,w=(y+g)*3;x<w;x+=3)if(C(vt,x,f,l),vt.needsUpdate=!0,m.intersectsTriangle(vt))return!0;return!1}});for(let h=g*3,m=(y+g)*3;h<m;h+=3){C(Tt,h,f,l),Tt.a.applyMatrix4(qt),Tt.b.applyMatrix4(qt),Tt.c.applyMatrix4(qt),Tt.needsUpdate=!0;for(let x=0,w=d.count;x<w;x+=3)if(C(vt,x,d,b),vt.needsUpdate=!0,Tt.intersectsTriangle(vt))return!0}}else{let u=n+8,f=a[n+6];return D(u,c,me),!!(o.intersectsBox(me)&&Qe(u,t,e,i,o)||(D(f,c,me),o.intersectsBox(me)&&Qe(f,t,e,i,o)))}}import{Matrix4 as bo,Vector3 as ye}from\"/three@0.183.2/es2022/three.mjs\";var xe=new bo,tn=new V,Wt=new V,go=new ye,Ao=new ye,wo=new ye,To=new ye;function ri(n,t,e,i={},o={},c=0,s=1/0){t.boundingBox||t.computeBoundingBox(),tn.set(t.boundingBox.min,t.boundingBox.max,e),tn.needsUpdate=!0;let a=n.geometry,r=a.attributes.position,p=a.index,u=t.attributes.position,f=t.index,l=W.getPrimitive(),d=W.getPrimitive(),b=go,g=Ao,y=null,h=null;o&&(y=wo,h=To);let m=1/0,x=null,w=null;return xe.copy(e).invert(),Wt.matrix.copy(xe),n.shapecast({boundsTraverseOrder:A=>tn.distanceToBox(A),intersectsBounds:(A,T,v)=>v<m&&v<s?(T&&(Wt.min.copy(A.min),Wt.max.copy(A.max),Wt.needsUpdate=!0),!0):!1,intersectsRange:(A,T)=>{if(t.boundsTree)return t.boundsTree.shapecast({boundsTraverseOrder:_=>Wt.distanceToBox(_),intersectsBounds:(_,B,I)=>I<m&&I<s,intersectsRange:(_,B)=>{for(let I=_,P=_+B;I<P;I++){C(d,3*I,f,u),d.a.applyMatrix4(e),d.b.applyMatrix4(e),d.c.applyMatrix4(e),d.needsUpdate=!0;for(let S=A,M=A+T;S<M;S++){C(l,3*S,p,r),l.needsUpdate=!0;let E=l.distanceToTriangle(d,b,y);if(E<m&&(g.copy(b),h&&h.copy(y),m=E,x=S,w=I),E<c)return!0}}}});{let v=K(t);for(let _=0,B=v;_<B;_++){C(d,3*_,f,u),d.a.applyMatrix4(e),d.b.applyMatrix4(e),d.c.applyMatrix4(e),d.needsUpdate=!0;for(let I=A,P=A+T;I<P;I++){C(l,3*I,p,r),l.needsUpdate=!0;let S=l.distanceToTriangle(d,b,y);if(S<m&&(g.copy(b),h&&h.copy(y),m=S,x=I,w=_),S<c)return!0}}}}}),W.releasePrimitive(l),W.releasePrimitive(d),m===1/0?null:(i.point?i.point.copy(g):i.point=g.clone(),i.distance=m,i.faceIndex=x,o&&(o.point?o.point.copy(h):o.point=h.clone(),o.point.applyMatrix4(xe),g.applyMatrix4(xe),o.distance=g.sub(o.point).length(),o.faceIndex=w),i)}function ci(n,t=null){t&&Array.isArray(t)&&(t=new Set(t));let e=n.geometry,i=e.index?e.index.array:null,o=e.attributes.position,c,s,a,r,p=0,u=n._roots;for(let l=0,d=u.length;l<d;l++)c=u[l],s=new Uint32Array(c),a=new Uint16Array(c),r=new Float32Array(c),f(0,p),p+=c.byteLength;function f(l,d,b=!1){let g=l*2;if(a[g+15]===65535){let h=s[l+6],m=a[g+14],x=1/0,w=1/0,A=1/0,T=-1/0,v=-1/0,_=-1/0;for(let B=h,I=h+m;B<I;B++){let P=3*n.resolveTriangleIndex(B);for(let S=0;S<3;S++){let M=P+S;M=i?i[M]:M;let E=o.getX(M),N=o.getY(M),U=o.getZ(M);E<x&&(x=E),E>T&&(T=E),N<w&&(w=N),N>v&&(v=N),U<A&&(A=U),U>_&&(_=U)}}return r[l+0]!==x||r[l+1]!==w||r[l+2]!==A||r[l+3]!==T||r[l+4]!==v||r[l+5]!==_?(r[l+0]=x,r[l+1]=w,r[l+2]=A,r[l+3]=T,r[l+4]=v,r[l+5]=_,!0):!1}else{let h=l+8,m=s[l+6],x=h+d,w=m+d,A=b,T=!1,v=!1;t?A||(T=t.has(x),v=t.has(w),A=!T&&!v):(T=!0,v=!0);let _=A||T,B=A||v,I=!1;_&&(I=f(h,d,A));let P=!1;B&&(P=f(m,d,A));let S=I||P;if(S)for(let M=0;M<3;M++){let E=h+M,N=m+M,U=r[E],tt=r[E+3],Mt=r[N],Et=r[N+3];r[l+M]=U<Mt?U:Mt,r[l+M+3]=tt>Et?tt:Et}return S}}}function ai(n,t,e,i,o,c,s){F.setBuffer(n._roots[t]),en(0,n,e,i,o,c,s),F.clearBuffer()}function en(n,t,e,i,o,c,s){let{float32Array:a,uint16Array:r,uint32Array:p}=F,u=n*2;if(L(u,r)){let l=R(n,p),d=z(u,r);Qn(t,e,i,l,d,o,c,s)}else{let l=O(n);j(l,a,i,c,s)&&en(l,t,e,i,o,c,s);let d=k(n,p);j(d,a,i,c,s)&&en(d,t,e,i,o,c,s)}}var vo=[\"x\",\"y\",\"z\"];function li(n,t,e,i,o,c){F.setBuffer(n._roots[t]);let s=nn(0,n,e,i,o,c);return F.clearBuffer(),s}function nn(n,t,e,i,o,c){let{float32Array:s,uint16Array:a,uint32Array:r}=F,p=n*2;if(L(p,a)){let f=R(n,r),l=z(p,a);return ti(t,e,i,f,l,o,c)}else{let f=xt(n,r),l=vo[f],b=i.direction[l]>=0,g,y;b?(g=O(n),y=k(n,r)):(g=k(n,r),y=O(n));let m=j(g,s,i,o,c)?nn(g,t,e,i,o,c):null;if(m){let A=m.point[l];if(b?A<=s[y+f]:A>=s[y+f+3])return m}let w=j(y,s,i,o,c)?nn(y,t,e,i,o,c):null;return m&&w?m.distance<=w.distance?m:w:m||w||null}}import{Box3 as Bo,Matrix4 as _o}from\"/three@0.183.2/es2022/three.mjs\";var be=new Bo,Bt=new H,_t=new H,Xt=new _o,ui=new V,ge=new V;function fi(n,t,e,i){F.setBuffer(n._roots[t]);let o=on(0,n,e,i);return F.clearBuffer(),o}function on(n,t,e,i,o=null){let{float32Array:c,uint16Array:s,uint32Array:a}=F,r=n*2;if(o===null&&(e.boundingBox||e.computeBoundingBox(),ui.set(e.boundingBox.min,e.boundingBox.max,i),o=ui),L(r,s)){let u=t.geometry,f=u.index,l=u.attributes.position,d=e.index,b=e.attributes.position,g=R(n,a),y=z(r,s);if(Xt.copy(i).invert(),e.boundsTree)return D(n,c,ge),ge.matrix.copy(Xt),ge.needsUpdate=!0,e.boundsTree.shapecast({intersectsBounds:m=>ge.intersectsBox(m),intersectsTriangle:m=>{m.a.applyMatrix4(i),m.b.applyMatrix4(i),m.c.applyMatrix4(i),m.needsUpdate=!0;for(let x=g,w=y+g;x<w;x++)if(C(_t,3*t.resolveTriangleIndex(x),f,l),_t.needsUpdate=!0,m.intersectsTriangle(_t))return!0;return!1}});for(let h=g,m=y+g;h<m;h++){let x=t.resolveTriangleIndex(h);C(Bt,3*x,f,l),Bt.a.applyMatrix4(Xt),Bt.b.applyMatrix4(Xt),Bt.c.applyMatrix4(Xt),Bt.needsUpdate=!0;for(let w=0,A=d.count;w<A;w+=3)if(C(_t,w,d,b),_t.needsUpdate=!0,Bt.intersectsTriangle(_t))return!0}}else{let u=n+8,f=a[n+6];return D(u,c,be),!!(o.intersectsBox(be)&&on(u,t,e,i,o)||(D(f,c,be),o.intersectsBox(be)&&on(f,t,e,i,o)))}}import{Matrix4 as So,Vector3 as we}from\"/three@0.183.2/es2022/three.mjs\";var Ae=new So,sn=new V,Gt=new V,Io=new we,Po=new we,Mo=new we,Eo=new we;function pi(n,t,e,i={},o={},c=0,s=1/0){t.boundingBox||t.computeBoundingBox(),sn.set(t.boundingBox.min,t.boundingBox.max,e),sn.needsUpdate=!0;let a=n.geometry,r=a.attributes.position,p=a.index,u=t.attributes.position,f=t.index,l=W.getPrimitive(),d=W.getPrimitive(),b=Io,g=Po,y=null,h=null;o&&(y=Mo,h=Eo);let m=1/0,x=null,w=null;return Ae.copy(e).invert(),Gt.matrix.copy(Ae),n.shapecast({boundsTraverseOrder:A=>sn.distanceToBox(A),intersectsBounds:(A,T,v)=>v<m&&v<s?(T&&(Gt.min.copy(A.min),Gt.max.copy(A.max),Gt.needsUpdate=!0),!0):!1,intersectsRange:(A,T)=>{if(t.boundsTree){let v=t.boundsTree;return v.shapecast({boundsTraverseOrder:_=>Gt.distanceToBox(_),intersectsBounds:(_,B,I)=>I<m&&I<s,intersectsRange:(_,B)=>{for(let I=_,P=_+B;I<P;I++){let S=v.resolveTriangleIndex(I);C(d,3*S,f,u),d.a.applyMatrix4(e),d.b.applyMatrix4(e),d.c.applyMatrix4(e),d.needsUpdate=!0;for(let M=A,E=A+T;M<E;M++){let N=n.resolveTriangleIndex(M);C(l,3*N,p,r),l.needsUpdate=!0;let U=l.distanceToTriangle(d,b,y);if(U<m&&(g.copy(b),h&&h.copy(y),m=U,x=M,w=I),U<c)return!0}}}})}else{let v=K(t);for(let _=0,B=v;_<B;_++){C(d,3*_,f,u),d.a.applyMatrix4(e),d.b.applyMatrix4(e),d.c.applyMatrix4(e),d.needsUpdate=!0;for(let I=A,P=A+T;I<P;I++){let S=n.resolveTriangleIndex(I);C(l,3*S,p,r),l.needsUpdate=!0;let M=l.distanceToTriangle(d,b,y);if(M<m&&(g.copy(b),h&&h.copy(y),m=M,x=I,w=_),M<c)return!0}}}}}),W.releasePrimitive(l),W.releasePrimitive(d),m===1/0?null:(i.point?i.point.copy(g):i.point=g.clone(),i.distance=m,i.faceIndex=x,o&&(o.point?o.point.copy(h):o.point=h.clone(),o.point.applyMatrix4(Ae),g.applyMatrix4(Ae),o.distance=g.sub(o.point).length(),o.faceIndex=w),i)}function Te(){return typeof SharedArrayBuffer<\"u\"}import{Box3 as Yt,Matrix4 as Do}from\"/three@0.183.2/es2022/three.mjs\";var jt=new F.constructor,ve=new F.constructor,st=new it(()=>new Yt),St=new Yt,It=new Yt,rn=new Yt,cn=new Yt,an=!1;function di(n,t,e,i){if(an)throw new Error(\"MeshBVH: Recursive calls to bvhcast not supported.\");an=!0;let o=n._roots,c=t._roots,s,a=0,r=0,p=new Do().copy(e).invert();for(let u=0,f=o.length;u<f;u++){jt.setBuffer(o[u]),r=0;let l=st.getPrimitive();D(0,jt.float32Array,l),l.applyMatrix4(p);for(let d=0,b=c.length;d<b&&(ve.setBuffer(c[d]),s=Z(0,0,e,p,i,a,r,0,0,l),ve.clearBuffer(),r+=c[d].length,!s);d++);if(st.releasePrimitive(l),jt.clearBuffer(),a+=o[u].length,s)break}return an=!1,s}function Z(n,t,e,i,o,c=0,s=0,a=0,r=0,p=null,u=!1){let f,l;u?(f=ve,l=jt):(f=jt,l=ve);let d=f.float32Array,b=f.uint32Array,g=f.uint16Array,y=l.float32Array,h=l.uint32Array,m=l.uint16Array,x=n*2,w=t*2,A=L(x,g),T=L(w,m),v=!1;if(T&&A)u?v=o(R(t,h),z(t*2,m),R(n,b),z(n*2,g),r,s+t,a,c+n):v=o(R(n,b),z(n*2,g),R(t,h),z(t*2,m),a,c+n,r,s+t);else if(T){let _=st.getPrimitive();D(t,y,_),_.applyMatrix4(e);let B=O(n),I=k(n,b);D(B,d,St),D(I,d,It);let P=_.intersectsBox(St),S=_.intersectsBox(It);v=P&&Z(t,B,i,e,o,s,c,r,a+1,_,!u)||S&&Z(t,I,i,e,o,s,c,r,a+1,_,!u),st.releasePrimitive(_)}else{let _=O(t),B=k(t,h);D(_,y,rn),D(B,y,cn);let I=p.intersectsBox(rn),P=p.intersectsBox(cn);if(I&&P)v=Z(n,_,e,i,o,c,s,a,r+1,p,u)||Z(n,B,e,i,o,c,s,a,r+1,p,u);else if(I)if(A)v=Z(n,_,e,i,o,c,s,a,r+1,p,u);else{let S=st.getPrimitive();S.copy(rn).applyMatrix4(e);let M=O(n),E=k(n,b);D(M,d,St),D(E,d,It);let N=S.intersectsBox(St),U=S.intersectsBox(It);v=N&&Z(_,M,i,e,o,s,c,r,a+1,S,!u)||U&&Z(_,E,i,e,o,s,c,r,a+1,S,!u),st.releasePrimitive(S)}else if(P)if(A)v=Z(n,B,e,i,o,c,s,a,r+1,p,u);else{let S=st.getPrimitive();S.copy(cn).applyMatrix4(e);let M=O(n),E=k(n,b);D(M,d,St),D(E,d,It);let N=S.intersectsBox(St),U=S.intersectsBox(It);v=N&&Z(B,M,i,e,o,s,c,r,a+1,S,!u)||U&&Z(B,E,i,e,o,s,c,r,a+1,S,!u),st.releasePrimitive(S)}}return v}var Be=new V,hi=new xi,No={strategy:0,maxDepth:40,maxLeafTris:10,useSharedArrayBuffer:!1,setBoundingBox:!0,onProgress:null,indirect:!1,verbose:!0,range:null},Q=class n{static serialize(t,e={}){e={cloneBuffers:!0,...e};let i=t.geometry,o=t._roots,c=t._indirectBuffer,s=i.getIndex(),a;return e.cloneBuffers?a={roots:o.map(r=>r.slice()),index:s?s.array.slice():null,indirectBuffer:c?c.slice():null}:a={roots:o,index:s?s.array:null,indirectBuffer:c},a}static deserialize(t,e,i={}){i={setIndex:!0,indirect:!!t.indirectBuffer,...i};let{index:o,roots:c,indirectBuffer:s}=t,a=new n(e,{...i,[ee]:!0});if(a._roots=c,a._indirectBuffer=s||null,i.setIndex){let r=e.getIndex();if(r===null){let p=new Fo(t.index,1,!1);e.setIndex(p)}else r.array!==o&&(r.array.set(o),r.needsUpdate=!0)}return a}get indirect(){return!!this._indirectBuffer}constructor(t,e={}){if(t.isBufferGeometry){if(t.index&&t.index.isInterleavedBufferAttribute)throw new Error(\"MeshBVH: InterleavedBufferAttribute is not supported for the index attribute.\")}else throw new Error(\"MeshBVH: Only BufferGeometries are supported.\");if(e=Object.assign({...No,[ee]:!1},e),e.useSharedArrayBuffer&&!Te())throw new Error(\"MeshBVH: SharedArrayBuffer is not available.\");this.geometry=t,this._roots=null,this._indirectBuffer=null,e[ee]||(Rn(this,e),!t.boundingBox&&e.setBoundingBox&&(t.boundingBox=this.getBoundingBox(new xi))),this.resolveTriangleIndex=e.indirect?i=>this._indirectBuffer[i]:i=>i}refit(t=null){return(this.indirect?ci:Jn)(this,t)}traverse(t,e=0){let i=this._roots[e],o=new Uint32Array(i),c=new Uint16Array(i);s(0);function s(a,r=0){let p=a*2,u=c[p+15]===65535;if(u){let f=o[a+6],l=c[p+14];t(r,u,new Float32Array(i,a*4,6),f,l)}else{let f=a+32/4,l=o[a+6],d=o[a+7];t(r,u,new Float32Array(i,a*4,6),d)||(s(f,r+1),s(l,r+1))}}}raycast(t,e=mi,i=0,o=1/0){let c=this._roots,s=this.geometry,a=[],r=e.isMaterial,p=Array.isArray(e),u=s.groups,f=r?e.side:e,l=this.indirect?ai:ni;for(let d=0,b=c.length;d<b;d++){let g=p?e[u[d].materialIndex].side:f,y=a.length;if(l(this,d,g,t,a,i,o),p){let h=u[d].materialIndex;for(let m=y,x=a.length;m<x;m++)a[m].face.materialIndex=h}}return a}raycastFirst(t,e=mi,i=0,o=1/0){let c=this._roots,s=this.geometry,a=e.isMaterial,r=Array.isArray(e),p=null,u=s.groups,f=a?e.side:e,l=this.indirect?li:ii;for(let d=0,b=c.length;d<b;d++){let g=r?e[u[d].materialIndex].side:f,y=l(this,d,g,t,i,o);y!=null&&(p==null||y.distance<p.distance)&&(p=y,r&&(y.face.materialIndex=u[d].materialIndex))}return p}intersectsGeometry(t,e){let i=!1,o=this._roots,c=this.indirect?fi:si;for(let s=0,a=o.length;s<a&&(i=c(this,s,t,e),!i);s++);return i}shapecast(t){let e=W.getPrimitive(),i=this.indirect?ei:$n,{boundsTraverseOrder:o,intersectsBounds:c,intersectsRange:s,intersectsTriangle:a}=t;if(s&&a){let f=s;s=(l,d,b,g,y)=>f(l,d,b,g,y)?!0:i(l,d,this,a,b,g,e)}else s||(a?s=(f,l,d,b)=>i(f,l,this,a,d,b,e):s=(f,l,d)=>d);let r=!1,p=0,u=this._roots;for(let f=0,l=u.length;f<l;f++){let d=u[f];if(r=kn(this,f,c,s,o,p),r)break;p+=d.byteLength}return W.releasePrimitive(e),r}bvhcast(t,e,i){let{intersectsRanges:o,intersectsTriangles:c}=i,s=W.getPrimitive(),a=this.geometry.index,r=this.geometry.attributes.position,p=this.indirect?b=>{let g=this.resolveTriangleIndex(b);C(s,g*3,a,r)}:b=>{C(s,b*3,a,r)},u=W.getPrimitive(),f=t.geometry.index,l=t.geometry.attributes.position,d=t.indirect?b=>{let g=t.resolveTriangleIndex(b);C(u,g*3,f,l)}:b=>{C(u,b*3,f,l)};if(c){let b=(g,y,h,m,x,w,A,T)=>{for(let v=h,_=h+m;v<_;v++){d(v),u.a.applyMatrix4(e),u.b.applyMatrix4(e),u.c.applyMatrix4(e),u.needsUpdate=!0;for(let B=g,I=g+y;B<I;B++)if(p(B),s.needsUpdate=!0,c(s,u,B,v,x,w,A,T))return!0}return!1};if(o){let g=o;o=function(y,h,m,x,w,A,T,v){return g(y,h,m,x,w,A,T,v)?!0:b(y,h,m,x,w,A,T,v)}}else o=b}return di(this,t,e,o)}intersectsBox(t,e){return Be.set(t.min,t.max,e),Be.needsUpdate=!0,this.shapecast({intersectsBounds:i=>Be.intersectsBox(i),intersectsTriangle:i=>Be.intersectsTriangle(i)})}intersectsSphere(t){return this.shapecast({intersectsBounds:e=>t.intersectsBox(e),intersectsTriangle:e=>e.intersectsSphere(t)})}closestPointToGeometry(t,e,i={},o={},c=0,s=1/0){return(this.indirect?pi:ri)(this,t,e,i,o,c,s)}closestPointToPoint(t,e={},i=0,o=1/0){return Hn(this,t,e,i,o)}getBoundingBox(t){return t.makeEmpty(),this._roots.forEach(i=>{D(0,new Float32Array(i),hi),t.union(hi)}),t}};import{LineBasicMaterial as Co,BufferAttribute as yi,Box3 as Lo,Group as Ro,MeshBasicMaterial as zo,Object3D as Vo,BufferGeometry as Uo,Mesh as ko,Matrix4 as Oo}from\"/three@0.183.2/es2022/three.mjs\";var bi=new Lo,gi=new Oo,ln=class extends Vo{get isMesh(){return!this.displayEdges}get isLineSegments(){return this.displayEdges}get isLine(){return this.displayEdges}getVertexPosition(...t){return ko.prototype.getVertexPosition.call(this,...t)}constructor(t,e,i=10,o=0){super(),this.material=e,this.geometry=new Uo,this.name=\"MeshBVHRootHelper\",this.depth=i,this.displayParents=!1,this.bvh=t,this.displayEdges=!0,this._group=o}raycast(){}update(){let t=this.geometry,e=this.bvh,i=this._group;if(t.dispose(),this.visible=!1,e){let o=this.depth-1,c=this.displayParents,s=0;e.traverse((l,d)=>{if(l>=o||d)return s++,!0;c&&s++},i);let a=0,r=new Float32Array(24*s);e.traverse((l,d,b)=>{let g=l>=o||d;if(g||c){D(0,b,bi);let{min:y,max:h}=bi;for(let m=-1;m<=1;m+=2){let x=m<0?y.x:h.x;for(let w=-1;w<=1;w+=2){let A=w<0?y.y:h.y;for(let T=-1;T<=1;T+=2){let v=T<0?y.z:h.z;r[a+0]=x,r[a+1]=A,r[a+2]=v,a+=3}}}return g}},i);let p,u;this.displayEdges?u=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]):u=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]),r.length>65535?p=new Uint32Array(u.length*s):p=new Uint16Array(u.length*s);let f=u.length;for(let l=0;l<s;l++){let d=l*8,b=l*f;for(let g=0;g<f;g++)p[b+g]=d+u[g]}t.setIndex(new yi(p,1,!1)),t.setAttribute(\"position\",new yi(r,3,!1)),this.visible=!0}}},un=class n extends Ro{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=null,e=null,i=10){t instanceof Q&&(i=e||10,e=t,t=null),typeof e==\"number\"&&(i=e,e=null),super(),this.name=\"MeshBVHHelper\",this.depth=i,this.mesh=t,this.bvh=e,this.displayParents=!1,this.displayEdges=!0,this.objectIndex=0,this._roots=[];let o=new Co({color:65416,transparent:!0,opacity:.3,depthWrite:!1}),c=new zo({color:65416,transparent:!0,opacity:.3,depthWrite:!1});c.color=o.color,this.edgeMaterial=o,this.meshMaterial=c,this.update()}update(){let t=this.mesh,e=this.bvh||t.geometry.boundsTree||null;if(t.isBatchedMesh&&t.boundsTrees&&!e){let o=t._drawInfo[this.objectIndex];o&&(e=t.boundsTrees[o.geometryIndex]||e)}let i=e?e._roots.length:0;for(;this._roots.length>i;){let o=this._roots.pop();o.geometry.dispose(),this.remove(o)}for(let o=0;o<i;o++){let{depth:c,edgeMaterial:s,meshMaterial:a,displayParents:r,displayEdges:p}=this;if(o>=this._roots.length){let f=new ln(e,s,c,o);this.add(f),this._roots.push(f)}let u=this._roots[o];u.bvh=e,u.depth=c,u.displayParents=r,u.displayEdges=p,u.material=p?s:a,u.update()}}updateMatrixWorld(...t){let e=this.mesh,i=this.parent;e!==null&&(e.updateWorldMatrix(!0,!1),i?this.matrix.copy(i.matrixWorld).invert().multiply(e.matrixWorld):this.matrix.copy(e.matrixWorld),(e.isInstancedMesh||e.isBatchedMesh)&&(e.getMatrixAt(this.objectIndex,gi),this.matrix.multiply(gi)),this.matrix.decompose(this.position,this.quaternion,this.scale)),super.updateMatrixWorld(...t)}copy(t){this.depth=t.depth,this.mesh=t.mesh,this.bvh=t.bvh,this.opacity=t.opacity,this.color.copy(t.color)}clone(){return new n(this.mesh,this.bvh,this.depth)}dispose(){this.edgeMaterial.dispose(),this.meshMaterial.dispose();let t=this.children;for(let e=0,i=t.length;e<i;e++)t[e].geometry.dispose()}};import{Box3 as fn,Vector3 as Ho}from\"/three@0.183.2/es2022/three.mjs\";var Zt=new fn,Ai=new fn,Pt=new Ho;function wi(n){switch(typeof n){case\"number\":return 8;case\"string\":return n.length*2;case\"boolean\":return 4;default:return 0}}function qo(n){return/(Uint|Int|Float)(8|16|32)Array/.test(n.constructor.name)}function Wo(n,t){let e={nodeCount:0,leafNodeCount:0,depth:{min:1/0,max:-1/0},tris:{min:1/0,max:-1/0},splits:[0,0,0],surfaceAreaScore:0};return n.traverse((i,o,c,s,a)=>{let r=c[3]-c[0],p=c[4]-c[1],u=c[5]-c[2],f=2*(r*p+p*u+u*r);e.nodeCount++,o?(e.leafNodeCount++,e.depth.min=Math.min(i,e.depth.min),e.depth.max=Math.max(i,e.depth.max),e.tris.min=Math.min(a,e.tris.min),e.tris.max=Math.max(a,e.tris.max),e.surfaceAreaScore+=f*1.25*a):(e.splits[s]++,e.surfaceAreaScore+=f*1)},t),e.tris.min===1/0&&(e.tris.min=0,e.tris.max=0),e.depth.min===1/0&&(e.depth.min=0,e.depth.max=0),e}function Xo(n){return n._roots.map((t,e)=>Wo(n,e))}function Go(n){let t=new Set,e=[n],i=0;for(;e.length;){let o=e.pop();if(!t.has(o)){t.add(o);for(let c in o){if(!Object.hasOwn(o,c))continue;i+=wi(c);let s=o[c];s&&(typeof s==\"object\"||typeof s==\"function\")?qo(s)||Te()&&s instanceof SharedArrayBuffer||s instanceof ArrayBuffer?i+=s.byteLength:e.push(s):i+=wi(s)}}}return i}function jo(n){let t=n.geometry,e=[],i=t.index,o=t.getAttribute(\"position\"),c=!0;return n.traverse((s,a,r,p,u)=>{let f={depth:s,isLeaf:a,boundingData:r,offset:p,count:u};e[s]=f,D(0,r,Zt);let l=e[s-1];if(a)for(let d=p,b=p+u;d<b;d++){let g=n.resolveTriangleIndex(d),y=3*g,h=3*g+1,m=3*g+2;i&&(y=i.getX(y),h=i.getX(h),m=i.getX(m));let x;Pt.fromBufferAttribute(o,y),x=Zt.containsPoint(Pt),Pt.fromBufferAttribute(o,h),x=x&&Zt.containsPoint(Pt),Pt.fromBufferAttribute(o,m),x=x&&Zt.containsPoint(Pt),console.assert(x,\"Leaf bounds does not fully contain triangle.\"),c=c&&x}if(l){D(0,r,Ai);let d=Ai.containsBox(Zt);console.assert(d,\"Parent bounds does not fully contain child.\"),c=c&&d}}),c}function Yo(n){let t=[];return n.traverse((e,i,o,c,s)=>{let a={bounds:D(0,o,new fn)};i?(a.count=s,a.offset=c):(a.left=null,a.right=null),t[e]=a;let r=t[e-1];r&&(r.left===null?r.left=a:r.right=a)}),t[0]}import{Ray as Zo,Matrix4 as Ko,Mesh as _i,Vector3 as Si,Sphere as $o,BatchedMesh as Jo,REVISION as Qo}from\"/three@0.183.2/es2022/three.mjs\";function pn(n,t,e){return n===null?null:(n.point.applyMatrix4(t.matrixWorld),n.distance=n.point.distanceTo(e.ray.origin),n.object=t,n)}var ts=parseInt(Qo)>=166,_e=new Zo,Ti=new Si,vi=new Ko,es=_i.prototype.raycast,ns=Jo.prototype.raycast,Bi=new Si,q=new _i,Se=[];function Ea(n,t){this.isBatchedMesh?is.call(this,n,t):os.call(this,n,t)}function is(n,t){if(this.boundsTrees){let e=this.boundsTrees,i=this._drawInfo,o=this._drawRanges,c=this.matrixWorld;q.material=this.material,q.geometry=this.geometry;let s=q.geometry.boundsTree,a=q.geometry.drawRange;q.geometry.boundingSphere===null&&(q.geometry.boundingSphere=new $o);for(let r=0,p=i.length;r<p;r++){if(!this.getVisibleAt(r))continue;let u=i[r].geometryIndex;if(q.geometry.boundsTree=e[u],this.getMatrixAt(r,q.matrixWorld).premultiply(c),!q.geometry.boundsTree){this.getBoundingBoxAt(u,q.geometry.boundingBox),this.getBoundingSphereAt(u,q.geometry.boundingSphere);let f=o[u];q.geometry.setDrawRange(f.start,f.count)}q.raycast(n,Se);for(let f=0,l=Se.length;f<l;f++){let d=Se[f];d.object=this,d.batchId=r,t.push(d)}Se.length=0}q.geometry.boundsTree=s,q.geometry.drawRange=a,q.material=null,q.geometry=null}else ns.call(this,n,t)}function os(n,t){if(this.geometry.boundsTree){if(this.material===void 0)return;vi.copy(this.matrixWorld).invert(),_e.copy(n.ray).applyMatrix4(vi),Bi.setFromMatrixScale(this.matrixWorld),Ti.copy(_e.direction).multiply(Bi);let e=Ti.length(),i=n.near/e,o=n.far/e,c=this.geometry.boundsTree;if(n.firstHitOnly===!0){let s=pn(c.raycastFirst(_e,this.material,i,o),this,n);s&&t.push(s)}else{let s=c.raycast(_e,this.material,i,o);for(let a=0,r=s.length;a<r;a++){let p=pn(s[a],this,n);p&&t.push(p)}}}else es.call(this,n,t)}function Da(n={}){return this.boundsTree=new Q(this,n),this.boundsTree}function Fa(){this.boundsTree=null}function Na(n=-1,t={}){if(!ts)throw new Error(\"BatchedMesh: Three r166+ is required to compute bounds trees.\");t.indirect&&console.warn('\"Indirect\" is set to false because it is not supported for BatchedMesh.'),t={...t,indirect:!1,range:null};let e=this._drawRanges,i=this._geometryCount;this.boundsTrees||(this.boundsTrees=new Array(i).fill(null));let o=this.boundsTrees;for(;o.length<i;)o.push(null);if(n<0){for(let c=0;c<i;c++)t.range=e[c],o[c]=new Q(this.geometry,t);return o}else return n<e.length&&(t.range=e[n],o[n]=new Q(this.geometry,t)),o[n]||null}function Ca(n=-1){n<0?this.boundsTrees.fill(null):n<this.boundsTree.length&&(this.boundsTrees[n]=null)}import{DataTexture as Fi,FloatType as ms,UnsignedIntType as hs,RGBAFormat as xs,RGIntegerFormat as ys,NearestFilter as Fe,BufferAttribute as bs}from\"/three@0.183.2/es2022/three.mjs\";import{DataTexture as ss,FloatType as Ie,IntType as Pe,UnsignedIntType as Me,ByteType as Ii,UnsignedByteType as Pi,ShortType as rs,UnsignedShortType as cs,RedFormat as as,RGFormat as ls,RGBAFormat as dn,RedIntegerFormat as us,RGIntegerFormat as fs,RGBAIntegerFormat as mn,NearestFilter as Mi}from\"/three@0.183.2/es2022/three.mjs\";function ps(n){switch(n){case 1:return\"R\";case 2:return\"RG\";case 3:return\"RGBA\";case 4:return\"RGBA\"}throw new Error}function ds(n){switch(n){case 1:return as;case 2:return ls;case 3:return dn;case 4:return dn}}function Ei(n){switch(n){case 1:return us;case 2:return fs;case 3:return mn;case 4:return mn}}var Kt=class extends ss{constructor(){super(),this.minFilter=Mi,this.magFilter=Mi,this.generateMipmaps=!1,this.overrideItemSize=null,this._forcedType=null}updateFrom(t){let e=this.overrideItemSize,i=t.itemSize,o=t.count;if(e!==null){if(i*o%e!==0)throw new Error(\"VertexAttributeTexture: overrideItemSize must divide evenly into buffer length.\");t.itemSize=e,t.count=o*i/e}let c=t.itemSize,s=t.count,a=t.normalized,r=t.array.constructor,p=r.BYTES_PER_ELEMENT,u=this._forcedType,f=c;if(u===null)switch(r){case Float32Array:u=Ie;break;case Uint8Array:case Uint16Array:case Uint32Array:u=Me;break;case Int8Array:case Int16Array:case Int32Array:u=Pe;break}let l,d,b,g,y=ps(c);switch(u){case Ie:b=1,d=ds(c),a&&p===1?(g=r,y+=\"8\",r===Uint8Array?l=Pi:(l=Ii,y+=\"_SNORM\")):(g=Float32Array,y+=\"32F\",l=Ie);break;case Pe:y+=p*8+\"I\",b=a?Math.pow(2,r.BYTES_PER_ELEMENT*8-1):1,d=Ei(c),p===1?(g=Int8Array,l=Ii):p===2?(g=Int16Array,l=rs):(g=Int32Array,l=Pe);break;case Me:y+=p*8+\"UI\",b=a?Math.pow(2,r.BYTES_PER_ELEMENT*8-1):1,d=Ei(c),p===1?(g=Uint8Array,l=Pi):p===2?(g=Uint16Array,l=cs):(g=Uint32Array,l=Me);break}f===3&&(d===dn||d===mn)&&(f=4);let h=Math.ceil(Math.sqrt(s))||1,m=f*h*h,x=new g(m),w=t.normalized;t.normalized=!1;for(let A=0;A<s;A++){let T=f*A;x[T]=t.getX(A)/b,c>=2&&(x[T+1]=t.getY(A)/b),c>=3&&(x[T+2]=t.getZ(A)/b,f===4&&(x[T+3]=1)),c>=4&&(x[T+3]=t.getW(A)/b)}t.normalized=w,this.internalFormat=y,this.format=d,this.type=l,this.image.width=h,this.image.height=h,this.image.data=x,this.needsUpdate=!0,this.dispose(),t.itemSize=i,t.count=o}},Ee=class extends Kt{constructor(){super(),this._forcedType=Me}},Di=class extends Kt{constructor(){super(),this._forcedType=Pe}},De=class extends Kt{constructor(){super(),this._forcedType=Ie}};var Ni=class{constructor(){this.index=new Ee,this.position=new De,this.bvhBounds=new Fi,this.bvhContents=new Fi,this._cachedIndexAttr=null,this.index.overrideItemSize=3}updateFrom(t){let{geometry:e}=t;if(As(t,this.bvhBounds,this.bvhContents),this.position.updateFrom(e.attributes.position),t.indirect){let i=t._indirectBuffer;if(this._cachedIndexAttr===null||this._cachedIndexAttr.count!==i.length)if(e.index)this._cachedIndexAttr=e.index.clone();else{let o=Ue(Ve(e));this._cachedIndexAttr=new bs(o,1,!1)}gs(e,i,this._cachedIndexAttr),this.index.updateFrom(this._cachedIndexAttr)}else this.index.updateFrom(e.index)}dispose(){let{index:t,position:e,bvhBounds:i,bvhContents:o}=this;t&&t.dispose(),e&&e.dispose(),i&&i.dispose(),o&&o.dispose()}};function gs(n,t,e){let i=e.array,o=n.index?n.index.array:null;for(let c=0,s=t.length;c<s;c++){let a=3*c,r=3*t[c];for(let p=0;p<3;p++)i[a+p]=o?o[r+p]:r+p}}function As(n,t,e){let i=n._roots;if(i.length!==1)throw new Error(\"MeshBVHUniformStruct: Multi-root BVHs not supported.\");let o=i[0],c=new Uint16Array(o),s=new Uint32Array(o),a=new Float32Array(o),r=o.byteLength/32,p=2*Math.ceil(Math.sqrt(r/2)),u=new Float32Array(4*p*p),f=Math.ceil(Math.sqrt(r)),l=new Uint32Array(2*f*f);for(let d=0;d<r;d++){let b=d*32/4,g=b*2,y=b;for(let h=0;h<3;h++)u[8*d+0+h]=a[y+0+h],u[8*d+4+h]=a[y+3+h];if(L(g,c)){let h=z(g,c),m=R(b,s),x=4294901760|h;l[d*2+0]=x,l[d*2+1]=m}else{let h=4*k(b,s)/32,m=xt(b,s);l[d*2+0]=m,l[d*2+1]=h}}t.image.data=u,t.image.width=p,t.image.height=p,t.format=xs,t.type=ms,t.internalFormat=\"RGBA32F\",t.minFilter=Fe,t.magFilter=Fe,t.generateMipmaps=!1,t.needsUpdate=!0,t.dispose(),e.image.data=l,e.image.width=f,e.image.height=f,e.format=ys,e.type=hs,e.internalFormat=\"RG32UI\",e.minFilter=Fe,e.magFilter=Fe,e.generateMipmaps=!1,e.needsUpdate=!0,e.dispose()}import{BufferAttribute as bn,BufferGeometry as Le,Vector3 as Qt,Vector4 as gn,Matrix4 as An,Matrix3 as ws}from\"/three@0.183.2/es2022/three.mjs\";var ft=new Qt,pt=new Qt,dt=new Qt,Ci=new gn,Ne=new Qt,hn=new Qt,Li=new gn,Ri=new gn,Ce=new An,zi=new An;function $t(n,t){if(!n&&!t)return;let e=n.count===t.count,i=n.normalized===t.normalized,o=n.array.constructor===t.array.constructor,c=n.itemSize===t.itemSize;if(!e||!i||!o||!c)throw new Error}function Jt(n,t=null){let e=n.array.constructor,i=n.normalized,o=n.itemSize,c=t===null?n.count:t;return new bn(new e(o*c),o,i)}function ki(n,t,e=0){if(n.isInterleavedBufferAttribute){let i=n.itemSize;for(let o=0,c=n.count;o<c;o++){let s=o+e;t.setX(s,n.getX(o)),i>=2&&t.setY(s,n.getY(o)),i>=3&&t.setZ(s,n.getZ(o)),i>=4&&t.setW(s,n.getW(o))}}else{let i=t.array,o=i.constructor,c=i.BYTES_PER_ELEMENT*n.itemSize*e;new o(i.buffer,c,n.array.length).set(n.array)}}function Ts(n,t,e){let i=n.elements,o=t.elements;for(let c=0,s=o.length;c<s;c++)i[c]+=o[c]*e}function Vi(n,t,e){let i=n.skeleton,o=n.geometry,c=i.bones,s=i.boneInverses;Li.fromBufferAttribute(o.attributes.skinIndex,t),Ri.fromBufferAttribute(o.attributes.skinWeight,t),Ce.elements.fill(0);for(let a=0;a<4;a++){let r=Ri.getComponent(a);if(r!==0){let p=Li.getComponent(a);zi.multiplyMatrices(c[p].matrixWorld,s[p]),Ts(Ce,zi,r)}}return Ce.multiply(n.bindMatrix).premultiply(n.bindMatrixInverse),e.transformDirection(Ce),e}function xn(n,t,e,i,o){Ne.set(0,0,0);for(let c=0,s=n.length;c<s;c++){let a=t[c],r=n[c];a!==0&&(hn.fromBufferAttribute(r,i),e?Ne.addScaledVector(hn,a):Ne.addScaledVector(hn.sub(o),a))}o.add(Ne)}function vs(n,t={useGroups:!1,updateIndex:!1,skipAttributes:[]},e=new Le){let i=n[0].index!==null,{useGroups:o=!1,updateIndex:c=!1,skipAttributes:s=[]}=t,a=new Set(Object.keys(n[0].attributes)),r={},p=0;e.clearGroups();for(let u=0;u<n.length;++u){let f=n[u],l=0;if(i!==(f.index!==null))throw new Error(\"StaticGeometryGenerator: All geometries must have compatible attributes; make sure index attribute exists among all geometries, or in none of them.\");for(let d in f.attributes){if(!a.has(d))throw new Error('StaticGeometryGenerator: All geometries must have compatible attributes; make sure \"'+d+'\" attribute exists among all geometries, or in none of them.');r[d]===void 0&&(r[d]=[]),r[d].push(f.attributes[d]),l++}if(l!==a.size)throw new Error(\"StaticGeometryGenerator: Make sure all geometries have the same number of attributes.\");if(o){let d;if(i)d=f.index.count;else if(f.attributes.position!==void 0)d=f.attributes.position.count;else throw new Error(\"StaticGeometryGenerator: The geometry must have either an index or a position attribute\");e.addGroup(p,d,u),p+=d}}if(i){let u=!1;if(!e.index){let f=0;for(let l=0;l<n.length;++l)f+=n[l].index.count;e.setIndex(new bn(new Uint32Array(f),1,!1)),u=!0}if(c||u){let f=e.index,l=0,d=0;for(let b=0;b<n.length;++b){let g=n[b],y=g.index;if(s[b]!==!0)for(let h=0;h<y.count;++h)f.setX(l,y.getX(h)+d),l++;d+=g.attributes.position.count}}}for(let u in r){let f=r[u];if(!(u in e.attributes)){let b=0;for(let g in f)b+=f[g].count;e.setAttribute(u,Jt(r[u][0],b))}let l=e.attributes[u],d=0;for(let b=0,g=f.length;b<g;b++){let y=f[b];s[b]!==!0&&ki(y,l,d),d+=y.count}}return e}function Bs(n,t){if(n===null||t===null)return n===t;if(n.length!==t.length)return!1;for(let e=0,i=n.length;e<i;e++)if(n[e]!==t[e])return!1;return!0}function _s(n){let{index:t,attributes:e}=n;if(t)for(let i=0,o=t.count;i<o;i+=3){let c=t.getX(i),s=t.getX(i+2);t.setX(i,s),t.setX(i+2,c)}else for(let i in e){let o=e[i],c=o.itemSize;for(let s=0,a=o.count;s<a;s+=3)for(let r=0;r<c;r++){let p=o.getComponent(s,r),u=o.getComponent(s+2,r);o.setComponent(s,r,u),o.setComponent(s+2,r,p)}}return n}var yn=class{constructor(t){this.matrixWorld=new An,this.geometryHash=null,this.boneMatrices=null,this.primitiveCount=-1,this.mesh=t,this.update()}update(){let t=this.mesh,e=t.geometry,i=t.skeleton,o=(e.index?e.index.count:e.attributes.position.count)/3;if(this.matrixWorld.copy(t.matrixWorld),this.geometryHash=e.attributes.position.version,this.primitiveCount=o,i){i.boneTexture||i.computeBoneTexture(),i.update();let c=i.boneMatrices;!this.boneMatrices||this.boneMatrices.length!==c.length?this.boneMatrices=c.slice():this.boneMatrices.set(c)}else this.boneMatrices=null}didChange(){let t=this.mesh,e=t.geometry,i=(e.index?e.index.count:e.attributes.position.count)/3;return!(this.matrixWorld.equals(t.matrixWorld)&&this.geometryHash===e.attributes.position.version&&Bs(t.skeleton&&t.skeleton.boneMatrices||null,this.boneMatrices)&&this.primitiveCount===i)}},Ui=class{constructor(t){Array.isArray(t)||(t=[t]);let e=[];t.forEach(i=>{i.traverseVisible(o=>{o.isMesh&&e.push(o)})}),this.meshes=e,this.useGroups=!0,this.applyWorldTransforms=!0,this.attributes=[\"position\",\"normal\",\"color\",\"tangent\",\"uv\",\"uv2\"],this._intermediateGeometry=new Array(e.length).fill().map(()=>new Le),this._diffMap=new WeakMap}getMaterials(){let t=[];return this.meshes.forEach(e=>{Array.isArray(e.material)?t.push(...e.material):t.push(e.material)}),t}generate(t=new Le){let e=[],{meshes:i,useGroups:o,_intermediateGeometry:c,_diffMap:s}=this;for(let a=0,r=i.length;a<r;a++){let p=i[a],u=c[a],f=s.get(p);!f||f.didChange(p)?(this._convertToStaticGeometry(p,u),e.push(!1),f?f.update():s.set(p,new yn(p))):e.push(!0)}if(c.length===0){t.setIndex(null);let a=t.attributes;for(let r in a)t.deleteAttribute(r);for(let r in this.attributes)t.setAttribute(this.attributes[r],new bn(new Float32Array(0),4,!1))}else vs(c,{useGroups:o,skipAttributes:e},t);for(let a in t.attributes)t.attributes[a].needsUpdate=!0;return t}_convertToStaticGeometry(t,e=new Le){let i=t.geometry,o=this.applyWorldTransforms,c=this.attributes.includes(\"normal\"),s=this.attributes.includes(\"tangent\"),a=i.attributes,r=e.attributes;!e.index&&i.index&&(e.index=i.index.clone()),r.position||e.setAttribute(\"position\",Jt(a.position)),c&&!r.normal&&a.normal&&e.setAttribute(\"normal\",Jt(a.normal)),s&&!r.tangent&&a.tangent&&e.setAttribute(\"tangent\",Jt(a.tangent)),$t(i.index,e.index),$t(a.position,r.position),c&&$t(a.normal,r.normal),s&&$t(a.tangent,r.tangent);let p=a.position,u=c?a.normal:null,f=s?a.tangent:null,l=i.morphAttributes.position,d=i.morphAttributes.normal,b=i.morphAttributes.tangent,g=i.morphTargetsRelative,y=t.morphTargetInfluences,h=new ws;h.getNormalMatrix(t.matrixWorld),i.index&&e.index.array.set(i.index.array);for(let m=0,x=a.position.count;m<x;m++)ft.fromBufferAttribute(p,m),u&&pt.fromBufferAttribute(u,m),f&&(Ci.fromBufferAttribute(f,m),dt.fromBufferAttribute(f,m)),y&&(l&&xn(l,y,g,m,ft),d&&xn(d,y,g,m,pt),b&&xn(b,y,g,m,dt)),t.isSkinnedMesh&&(t.applyBoneTransform(m,ft),u&&Vi(t,m,pt),f&&Vi(t,m,dt)),o&&ft.applyMatrix4(t.matrixWorld),r.position.setXYZ(m,ft.x,ft.y,ft.z),u&&(o&&pt.applyNormalMatrix(h),r.normal.setXYZ(m,pt.x,pt.y,pt.z)),f&&(o&&dt.transformDirection(t.matrixWorld),r.tangent.setXYZW(m,dt.x,dt.y,dt.z,Ci.w));for(let m in this.attributes){let x=this.attributes[m];x===\"position\"||x===\"tangent\"||x===\"normal\"||!(x in a)||(r[x]||e.setAttribute(x,Jt(a[x])),$t(a[x],r[x]),ki(a[x],r[x]))}return t.matrixWorld.determinant()<0&&_s(e),e}};var _n={};Hi(_n,{bvh_distance_functions:()=>Tn,bvh_ray_functions:()=>vn,bvh_struct_definitions:()=>Bn,common_functions:()=>wn});var wn=`\n\n// A stack of uint32 indices can can store the indices for\n// a perfectly balanced tree with a depth up to 31. Lower stack\n// depth gets higher performance.\n//\n// However not all trees are balanced. Best value to set this to\n// is the trees max depth.\n#ifndef BVH_STACK_DEPTH\n#define BVH_STACK_DEPTH 60\n#endif\n\n#ifndef INFINITY\n#define INFINITY 1e20\n#endif\n\n// Utilities\nuvec4 uTexelFetch1D( usampler2D tex, uint index ) {\n\n\tuint width = uint( textureSize( tex, 0 ).x );\n\tuvec2 uv;\n\tuv.x = index % width;\n\tuv.y = index / width;\n\n\treturn texelFetch( tex, ivec2( uv ), 0 );\n\n}\n\nivec4 iTexelFetch1D( isampler2D tex, uint index ) {\n\n\tuint width = uint( textureSize( tex, 0 ).x );\n\tuvec2 uv;\n\tuv.x = index % width;\n\tuv.y = index / width;\n\n\treturn texelFetch( tex, ivec2( uv ), 0 );\n\n}\n\nvec4 texelFetch1D( sampler2D tex, uint index ) {\n\n\tuint width = uint( textureSize( tex, 0 ).x );\n\tuvec2 uv;\n\tuv.x = index % width;\n\tuv.y = index / width;\n\n\treturn texelFetch( tex, ivec2( uv ), 0 );\n\n}\n\nvec4 textureSampleBarycoord( sampler2D tex, vec3 barycoord, uvec3 faceIndices ) {\n\n\treturn\n\t\tbarycoord.x * texelFetch1D( tex, faceIndices.x ) +\n\t\tbarycoord.y * texelFetch1D( tex, faceIndices.y ) +\n\t\tbarycoord.z * texelFetch1D( tex, faceIndices.z );\n\n}\n\nvoid ndcToCameraRay(\n\tvec2 coord, mat4 cameraWorld, mat4 invProjectionMatrix,\n\tout vec3 rayOrigin, out vec3 rayDirection\n) {\n\n\t// get camera look direction and near plane for camera clipping\n\tvec4 lookDirection = cameraWorld * vec4( 0.0, 0.0, - 1.0, 0.0 );\n\tvec4 nearVector = invProjectionMatrix * vec4( 0.0, 0.0, - 1.0, 1.0 );\n\tfloat near = abs( nearVector.z / nearVector.w );\n\n\t// get the camera direction and position from camera matrices\n\tvec4 origin = cameraWorld * vec4( 0.0, 0.0, 0.0, 1.0 );\n\tvec4 direction = invProjectionMatrix * vec4( coord, 0.5, 1.0 );\n\tdirection /= direction.w;\n\tdirection = cameraWorld * direction - origin;\n\n\t// slide the origin along the ray until it sits at the near clip plane position\n\torigin.xyz += direction.xyz * near / dot( direction, lookDirection );\n\n\trayOrigin = origin.xyz;\n\trayDirection = direction.xyz;\n\n}\n`;var Tn=`\n\nfloat dot2( vec3 v ) {\n\n\treturn dot( v, v );\n\n}\n\n// https://www.shadertoy.com/view/ttfGWl\nvec3 closestPointToTriangle( vec3 p, vec3 v0, vec3 v1, vec3 v2, out vec3 barycoord ) {\n\n    vec3 v10 = v1 - v0;\n    vec3 v21 = v2 - v1;\n    vec3 v02 = v0 - v2;\n\n\tvec3 p0 = p - v0;\n\tvec3 p1 = p - v1;\n\tvec3 p2 = p - v2;\n\n    vec3 nor = cross( v10, v02 );\n\n    // method 2, in barycentric space\n    vec3  q = cross( nor, p0 );\n    float d = 1.0 / dot2( nor );\n    float u = d * dot( q, v02 );\n    float v = d * dot( q, v10 );\n    float w = 1.0 - u - v;\n\n\tif( u < 0.0 ) {\n\n\t\tw = clamp( dot( p2, v02 ) / dot2( v02 ), 0.0, 1.0 );\n\t\tu = 0.0;\n\t\tv = 1.0 - w;\n\n\t} else if( v < 0.0 ) {\n\n\t\tu = clamp( dot( p0, v10 ) / dot2( v10 ), 0.0, 1.0 );\n\t\tv = 0.0;\n\t\tw = 1.0 - u;\n\n\t} else if( w < 0.0 ) {\n\n\t\tv = clamp( dot( p1, v21 ) / dot2( v21 ), 0.0, 1.0 );\n\t\tw = 0.0;\n\t\tu = 1.0-v;\n\n\t}\n\n\tbarycoord = vec3( u, v, w );\n    return u * v1 + v * v2 + w * v0;\n\n}\n\nfloat distanceToTriangles(\n\t// geometry info and triangle range\n\tsampler2D positionAttr, usampler2D indexAttr, uint offset, uint count,\n\n\t// point and cut off range\n\tvec3 point, float closestDistanceSquared,\n\n\t// outputs\n\tinout uvec4 faceIndices, inout vec3 faceNormal, inout vec3 barycoord, inout float side, inout vec3 outPoint\n) {\n\n\tbool found = false;\n\tvec3 localBarycoord;\n\tfor ( uint i = offset, l = offset + count; i < l; i ++ ) {\n\n\t\tuvec3 indices = uTexelFetch1D( indexAttr, i ).xyz;\n\t\tvec3 a = texelFetch1D( positionAttr, indices.x ).rgb;\n\t\tvec3 b = texelFetch1D( positionAttr, indices.y ).rgb;\n\t\tvec3 c = texelFetch1D( positionAttr, indices.z ).rgb;\n\n\t\t// get the closest point and barycoord\n\t\tvec3 closestPoint = closestPointToTriangle( point, a, b, c, localBarycoord );\n\t\tvec3 delta = point - closestPoint;\n\t\tfloat sqDist = dot2( delta );\n\t\tif ( sqDist < closestDistanceSquared ) {\n\n\t\t\t// set the output results\n\t\t\tclosestDistanceSquared = sqDist;\n\t\t\tfaceIndices = uvec4( indices.xyz, i );\n\t\t\tfaceNormal = normalize( cross( a - b, b - c ) );\n\t\t\tbarycoord = localBarycoord;\n\t\t\toutPoint = closestPoint;\n\t\t\tside = sign( dot( faceNormal, delta ) );\n\n\t\t}\n\n\t}\n\n\treturn closestDistanceSquared;\n\n}\n\nfloat distanceSqToBounds( vec3 point, vec3 boundsMin, vec3 boundsMax ) {\n\n\tvec3 clampedPoint = clamp( point, boundsMin, boundsMax );\n\tvec3 delta = point - clampedPoint;\n\treturn dot( delta, delta );\n\n}\n\nfloat distanceSqToBVHNodeBoundsPoint( vec3 point, sampler2D bvhBounds, uint currNodeIndex ) {\n\n\tuint cni2 = currNodeIndex * 2u;\n\tvec3 boundsMin = texelFetch1D( bvhBounds, cni2 ).xyz;\n\tvec3 boundsMax = texelFetch1D( bvhBounds, cni2 + 1u ).xyz;\n\treturn distanceSqToBounds( point, boundsMin, boundsMax );\n\n}\n\n// use a macro to hide the fact that we need to expand the struct into separate fields\n#define\tbvhClosestPointToPoint(\t\tbvh,\t\tpoint, faceIndices, faceNormal, barycoord, side, outPoint\t)\t_bvhClosestPointToPoint(\t\tbvh.position, bvh.index, bvh.bvhBounds, bvh.bvhContents,\t\tpoint, faceIndices, faceNormal, barycoord, side, outPoint\t)\n\nfloat _bvhClosestPointToPoint(\n\t// bvh info\n\tsampler2D bvh_position, usampler2D bvh_index, sampler2D bvh_bvhBounds, usampler2D bvh_bvhContents,\n\n\t// point to check\n\tvec3 point,\n\n\t// output variables\n\tinout uvec4 faceIndices, inout vec3 faceNormal, inout vec3 barycoord,\n\tinout float side, inout vec3 outPoint\n ) {\n\n\t// stack needs to be twice as long as the deepest tree we expect because\n\t// we push both the left and right child onto the stack every traversal\n\tint ptr = 0;\n\tuint stack[ BVH_STACK_DEPTH ];\n\tstack[ 0 ] = 0u;\n\n\tfloat closestDistanceSquared = pow( 100000.0, 2.0 );\n\tbool found = false;\n\twhile ( ptr > - 1 && ptr < BVH_STACK_DEPTH ) {\n\n\t\tuint currNodeIndex = stack[ ptr ];\n\t\tptr --;\n\n\t\t// check if we intersect the current bounds\n\t\tfloat boundsHitDistance = distanceSqToBVHNodeBoundsPoint( point, bvh_bvhBounds, currNodeIndex );\n\t\tif ( boundsHitDistance > closestDistanceSquared ) {\n\n\t\t\tcontinue;\n\n\t\t}\n\n\t\tuvec2 boundsInfo = uTexelFetch1D( bvh_bvhContents, currNodeIndex ).xy;\n\t\tbool isLeaf = bool( boundsInfo.x & 0xffff0000u );\n\t\tif ( isLeaf ) {\n\n\t\t\tuint count = boundsInfo.x & 0x0000ffffu;\n\t\t\tuint offset = boundsInfo.y;\n\t\t\tclosestDistanceSquared = distanceToTriangles(\n\t\t\t\tbvh_position, bvh_index, offset, count, point, closestDistanceSquared,\n\n\t\t\t\t// outputs\n\t\t\t\tfaceIndices, faceNormal, barycoord, side, outPoint\n\t\t\t);\n\n\t\t} else {\n\n\t\t\tuint leftIndex = currNodeIndex + 1u;\n\t\t\tuint splitAxis = boundsInfo.x & 0x0000ffffu;\n\t\t\tuint rightIndex = boundsInfo.y;\n\t\t\tbool leftToRight = distanceSqToBVHNodeBoundsPoint( point, bvh_bvhBounds, leftIndex ) < distanceSqToBVHNodeBoundsPoint( point, bvh_bvhBounds, rightIndex );//rayDirection[ splitAxis ] >= 0.0;\n\t\t\tuint c1 = leftToRight ? leftIndex : rightIndex;\n\t\t\tuint c2 = leftToRight ? rightIndex : leftIndex;\n\n\t\t\t// set c2 in the stack so we traverse it later. We need to keep track of a pointer in\n\t\t\t// the stack while we traverse. The second pointer added is the one that will be\n\t\t\t// traversed first\n\t\t\tptr ++;\n\t\t\tstack[ ptr ] = c2;\n\t\t\tptr ++;\n\t\t\tstack[ ptr ] = c1;\n\n\t\t}\n\n\t}\n\n\treturn sqrt( closestDistanceSquared );\n\n}\n`;var vn=`\n\n#ifndef TRI_INTERSECT_EPSILON\n#define TRI_INTERSECT_EPSILON 1e-5\n#endif\n\n// Raycasting\nbool intersectsBounds( vec3 rayOrigin, vec3 rayDirection, vec3 boundsMin, vec3 boundsMax, out float dist ) {\n\n\t// https://www.reddit.com/r/opengl/comments/8ntzz5/fast_glsl_ray_box_intersection/\n\t// https://tavianator.com/2011/ray_box.html\n\tvec3 invDir = 1.0 / rayDirection;\n\n\t// find intersection distances for each plane\n\tvec3 tMinPlane = invDir * ( boundsMin - rayOrigin );\n\tvec3 tMaxPlane = invDir * ( boundsMax - rayOrigin );\n\n\t// get the min and max distances from each intersection\n\tvec3 tMinHit = min( tMaxPlane, tMinPlane );\n\tvec3 tMaxHit = max( tMaxPlane, tMinPlane );\n\n\t// get the furthest hit distance\n\tvec2 t = max( tMinHit.xx, tMinHit.yz );\n\tfloat t0 = max( t.x, t.y );\n\n\t// get the minimum hit distance\n\tt = min( tMaxHit.xx, tMaxHit.yz );\n\tfloat t1 = min( t.x, t.y );\n\n\t// set distance to 0.0 if the ray starts inside the box\n\tdist = max( t0, 0.0 );\n\n\treturn t1 >= dist;\n\n}\n\nbool intersectsTriangle(\n\tvec3 rayOrigin, vec3 rayDirection, vec3 a, vec3 b, vec3 c,\n\tout vec3 barycoord, out vec3 norm, out float dist, out float side\n) {\n\n\t// https://stackoverflow.com/questions/42740765/intersection-between-line-and-triangle-in-3d\n\tvec3 edge1 = b - a;\n\tvec3 edge2 = c - a;\n\tnorm = cross( edge1, edge2 );\n\n\tfloat det = - dot( rayDirection, norm );\n\tfloat invdet = 1.0 / det;\n\n\tvec3 AO = rayOrigin - a;\n\tvec3 DAO = cross( AO, rayDirection );\n\n\tvec4 uvt;\n\tuvt.x = dot( edge2, DAO ) * invdet;\n\tuvt.y = - dot( edge1, DAO ) * invdet;\n\tuvt.z = dot( AO, norm ) * invdet;\n\tuvt.w = 1.0 - uvt.x - uvt.y;\n\n\t// set the hit information\n\tbarycoord = uvt.wxy; // arranged in A, B, C order\n\tdist = uvt.z;\n\tside = sign( det );\n\tnorm = side * normalize( norm );\n\n\t// add an epsilon to avoid misses between triangles\n\tuvt += vec4( TRI_INTERSECT_EPSILON );\n\n\treturn all( greaterThanEqual( uvt, vec4( 0.0 ) ) );\n\n}\n\nbool intersectTriangles(\n\t// geometry info and triangle range\n\tsampler2D positionAttr, usampler2D indexAttr, uint offset, uint count,\n\n\t// ray\n\tvec3 rayOrigin, vec3 rayDirection,\n\n\t// outputs\n\tinout float minDistance, inout uvec4 faceIndices, inout vec3 faceNormal, inout vec3 barycoord,\n\tinout float side, inout float dist\n) {\n\n\tbool found = false;\n\tvec3 localBarycoord, localNormal;\n\tfloat localDist, localSide;\n\tfor ( uint i = offset, l = offset + count; i < l; i ++ ) {\n\n\t\tuvec3 indices = uTexelFetch1D( indexAttr, i ).xyz;\n\t\tvec3 a = texelFetch1D( positionAttr, indices.x ).rgb;\n\t\tvec3 b = texelFetch1D( positionAttr, indices.y ).rgb;\n\t\tvec3 c = texelFetch1D( positionAttr, indices.z ).rgb;\n\n\t\tif (\n\t\t\tintersectsTriangle( rayOrigin, rayDirection, a, b, c, localBarycoord, localNormal, localDist, localSide )\n\t\t\t&& localDist < minDistance\n\t\t) {\n\n\t\t\tfound = true;\n\t\t\tminDistance = localDist;\n\n\t\t\tfaceIndices = uvec4( indices.xyz, i );\n\t\t\tfaceNormal = localNormal;\n\n\t\t\tside = localSide;\n\t\t\tbarycoord = localBarycoord;\n\t\t\tdist = localDist;\n\n\t\t}\n\n\t}\n\n\treturn found;\n\n}\n\nbool intersectsBVHNodeBounds( vec3 rayOrigin, vec3 rayDirection, sampler2D bvhBounds, uint currNodeIndex, out float dist ) {\n\n\tuint cni2 = currNodeIndex * 2u;\n\tvec3 boundsMin = texelFetch1D( bvhBounds, cni2 ).xyz;\n\tvec3 boundsMax = texelFetch1D( bvhBounds, cni2 + 1u ).xyz;\n\treturn intersectsBounds( rayOrigin, rayDirection, boundsMin, boundsMax, dist );\n\n}\n\n// use a macro to hide the fact that we need to expand the struct into separate fields\n#define\tbvhIntersectFirstHit(\t\tbvh,\t\trayOrigin, rayDirection, faceIndices, faceNormal, barycoord, side, dist\t)\t_bvhIntersectFirstHit(\t\tbvh.position, bvh.index, bvh.bvhBounds, bvh.bvhContents,\t\trayOrigin, rayDirection, faceIndices, faceNormal, barycoord, side, dist\t)\n\nbool _bvhIntersectFirstHit(\n\t// bvh info\n\tsampler2D bvh_position, usampler2D bvh_index, sampler2D bvh_bvhBounds, usampler2D bvh_bvhContents,\n\n\t// ray\n\tvec3 rayOrigin, vec3 rayDirection,\n\n\t// output variables split into separate variables due to output precision\n\tinout uvec4 faceIndices, inout vec3 faceNormal, inout vec3 barycoord,\n\tinout float side, inout float dist\n) {\n\n\t// stack needs to be twice as long as the deepest tree we expect because\n\t// we push both the left and right child onto the stack every traversal\n\tint ptr = 0;\n\tuint stack[ BVH_STACK_DEPTH ];\n\tstack[ 0 ] = 0u;\n\n\tfloat triangleDistance = INFINITY;\n\tbool found = false;\n\twhile ( ptr > - 1 && ptr < BVH_STACK_DEPTH ) {\n\n\t\tuint currNodeIndex = stack[ ptr ];\n\t\tptr --;\n\n\t\t// check if we intersect the current bounds\n\t\tfloat boundsHitDistance;\n\t\tif (\n\t\t\t! intersectsBVHNodeBounds( rayOrigin, rayDirection, bvh_bvhBounds, currNodeIndex, boundsHitDistance )\n\t\t\t|| boundsHitDistance > triangleDistance\n\t\t) {\n\n\t\t\tcontinue;\n\n\t\t}\n\n\t\tuvec2 boundsInfo = uTexelFetch1D( bvh_bvhContents, currNodeIndex ).xy;\n\t\tbool isLeaf = bool( boundsInfo.x & 0xffff0000u );\n\n\t\tif ( isLeaf ) {\n\n\t\t\tuint count = boundsInfo.x & 0x0000ffffu;\n\t\t\tuint offset = boundsInfo.y;\n\n\t\t\tfound = intersectTriangles(\n\t\t\t\tbvh_position, bvh_index, offset, count,\n\t\t\t\trayOrigin, rayDirection, triangleDistance,\n\t\t\t\tfaceIndices, faceNormal, barycoord, side, dist\n\t\t\t) || found;\n\n\t\t} else {\n\n\t\t\tuint leftIndex = currNodeIndex + 1u;\n\t\t\tuint splitAxis = boundsInfo.x & 0x0000ffffu;\n\t\t\tuint rightIndex = boundsInfo.y;\n\n\t\t\tbool leftToRight = rayDirection[ splitAxis ] >= 0.0;\n\t\t\tuint c1 = leftToRight ? leftIndex : rightIndex;\n\t\t\tuint c2 = leftToRight ? rightIndex : leftIndex;\n\n\t\t\t// set c2 in the stack so we traverse it later. We need to keep track of a pointer in\n\t\t\t// the stack while we traverse. The second pointer added is the one that will be\n\t\t\t// traversed first\n\t\t\tptr ++;\n\t\t\tstack[ ptr ] = c2;\n\n\t\t\tptr ++;\n\t\t\tstack[ ptr ] = c1;\n\n\t\t}\n\n\t}\n\n\treturn found;\n\n}\n`;var Bn=`\nstruct BVH {\n\n\tusampler2D index;\n\tsampler2D position;\n\n\tsampler2D bvhBounds;\n\tusampler2D bvhContents;\n\n};\n`;var tl=Bn,el=Tn,nl=`\n\t${wn}\n\t${vn}\n`;export{Re as AVERAGE,_n as BVHShaderGLSL,Dt as CENTER,te as CONTAINED,H as ExtendedTriangle,De as FloatVertexAttributeTexture,Wi as INTERSECTED,Di as IntVertexAttributeTexture,Q as MeshBVH,un as MeshBVHHelper,Ni as MeshBVHUniformStruct,qi as NOT_INTERSECTED,V as OrientedBox,ze as SAH,Ui as StaticGeometryGenerator,Ee as UIntVertexAttributeTexture,Kt as VertexAttributeTexture,Ea as acceleratedRaycast,Na as computeBatchedBoundsTree,Da as computeBoundsTree,Ca as disposeBatchedBoundsTree,Fa as disposeBoundsTree,Go as estimateMemoryInBytes,Xo as getBVHExtremes,Yo as getJSONStructure,mo as getTriangleHitPointInfo,el as shaderDistanceFunction,nl as shaderIntersectFunction,tl as shaderStructs,jo as validateBounds};\n//# sourceMappingURL=three-mesh-bvh.mjs.map","/* esm.sh - three-mesh-bvh@0.8.2 */\nimport \"/three@0.183.2/es2022/three.mjs\";\nexport * from \"/three-mesh-bvh@0.8.2/X-ZHRocmVlQDAuMTgzLjI/es2022/three-mesh-bvh.mjs\";\n","/* esm.sh - three@0.183.2/examples/jsm/libs/meshopt_decoder.module */\nvar z=(function(){var t=\"b9H79Tebbbe8Fv9Gbb9Gvuuuuueu9Giuuub9Geueu9Giuuueuixkbeeeddddillviebeoweuec:W:Odkr;Neqo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9KW9J9V9KW9wWVtW949c919M9MWVbeY9TW79O9V9Wt9F9KW9J9V9KW69U9KW949c919M9MWVbdE9TW79O9V9Wt9F9KW9J9V9KW69U9KW949tWG91W9U9JWbiL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9p9JtblK9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9r919HtbvL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWVT949WboY9TW79O9V9Wt9F9KW9J9V9KWS9P2tWVJ9V29VVbrl79IV9Rbwq;lZkdbk;jYi5ud9:du8Jjjjjbcj;kb9Rgv8Kjjjjbc9:hodnalTmbcuhoaiRbbgrc;WeGc:Ge9hmbarcsGgwce0mbc9:hoalcufadcd4cbawEgDadfgrcKcaawEgqaraq0Egk6mbaicefhxcj;abad9Uc;WFbGcjdadca0EhmaialfgPar9Rgoadfhsavaoadz:jjjjbgzceVhHcbhOdndninaeaO9nmeaPax9RaD6mdamaeaO9RaOamfgoae6EgAcsfglc9WGhCabaOad2fhXaAcethQaxaDfhiaOaeaoaeao6E9RhLalcl4cifcd4hKazcj;cbfaAfhYcbh8AazcjdfhEaHh3incbhodnawTmbaxa8Acd4fRbbhokaocFeGh5cbh8Eazcj;cbfhqinaih8Fdndndndna5a8Ecet4ciGgoc9:fPdebdkaPa8F9RaA6mrazcj;cbfa8EaA2fa8FaAz:jjjjb8Aa8FaAfhixdkazcj;cbfa8EaA2fcbaAz:kjjjb8Aa8FhixekaPa8F9RaK6mva8FaKfhidnaCTmbaPai9RcK6mbaocdtc:q1jjbfcj1jjbawEhaczhrcbhlinargoc9Wfghaqfhrdndndndndndnaaa8Fahco4fRbbalcoG4ciGcdtfydbPDbedvivvvlvkar9cb83bbarcwf9cb83bbxlkarcbaiRbdai8Xbb9c:c:qj:bw9:9c:q;c1:I1e:d9c:b:c:e1z9:gg9cjjjjjz:dg8J9qE86bbaqaofgrcGfag9c8F1:NghcKtc8F91aicdfa8J9c8N1:Nfg8KRbbG86bbarcVfcba8KahcjeGcr4fghRbbag9cjjjjjl:dg8J9qE86bbarc7fcbaha8J9c8L1:NfghRbbag9cjjjjjd:dg8J9qE86bbarctfcbaha8J9c8K1:NfghRbbag9cjjjjje:dg8J9qE86bbarc91fcbaha8J9c8J1:NfghRbbag9cjjjj;ab:dg8J9qE86bbarc4fcbaha8J9cg1:NfghRbbag9cjjjja:dg8J9qE86bbarc93fcbaha8J9ch1:NfghRbbag9cjjjjz:dgg9qE86bbarc94fcbahag9ca1:NfghRbbai8Xbe9c:c:qj:bw9:9c:q;c1:I1e:d9c:b:c:e1z9:gg9cjjjjjz:dg8J9qE86bbarc95fag9c8F1:NgicKtc8F91aha8J9c8N1:NfghRbbG86bbarc96fcbahaicjeGcr4fgiRbbag9cjjjjjl:dg8J9qE86bbarc97fcbaia8J9c8L1:NfgiRbbag9cjjjjjd:dg8J9qE86bbarc98fcbaia8J9c8K1:NfgiRbbag9cjjjjje:dg8J9qE86bbarc99fcbaia8J9c8J1:NfgiRbbag9cjjjj;ab:dg8J9qE86bbarc9:fcbaia8J9cg1:NfgiRbbag9cjjjja:dg8J9qE86bbarcufcbaia8J9ch1:NfgiRbbag9cjjjjz:dgg9qE86bbaiag9ca1:NfhixikaraiRblaiRbbghco4g8Ka8KciSg8KE86bbaqaofgrcGfaiclfa8Kfg8KRbbahcl4ciGg8La8LciSg8LE86bbarcVfa8Ka8Lfg8KRbbahcd4ciGg8La8LciSg8LE86bbarc7fa8Ka8Lfg8KRbbahciGghahciSghE86bbarctfa8Kahfg8KRbbaiRbeghco4g8La8LciSg8LE86bbarc91fa8Ka8Lfg8KRbbahcl4ciGg8La8LciSg8LE86bbarc4fa8Ka8Lfg8KRbbahcd4ciGg8La8LciSg8LE86bbarc93fa8Ka8Lfg8KRbbahciGghahciSghE86bbarc94fa8Kahfg8KRbbaiRbdghco4g8La8LciSg8LE86bbarc95fa8Ka8Lfg8KRbbahcl4ciGg8La8LciSg8LE86bbarc96fa8Ka8Lfg8KRbbahcd4ciGg8La8LciSg8LE86bbarc97fa8Ka8Lfg8KRbbahciGghahciSghE86bbarc98fa8KahfghRbbaiRbigico4g8Ka8KciSg8KE86bbarc99faha8KfghRbbaicl4ciGg8Ka8KciSg8KE86bbarc9:faha8KfghRbbaicd4ciGg8Ka8KciSg8KE86bbarcufaha8KfgrRbbaiciGgiaiciSgiE86bbaraifhixdkaraiRbwaiRbbghcl4g8Ka8KcsSg8KE86bbaqaofgrcGfaicwfa8Kfg8KRbbahcsGghahcsSghE86bbarcVfa8KahfghRbbaiRbeg8Kcl4g8La8LcsSg8LE86bbarc7faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarctfaha8KfghRbbaiRbdg8Kcl4g8La8LcsSg8LE86bbarc91faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarc4faha8KfghRbbaiRbig8Kcl4g8La8LcsSg8LE86bbarc93faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarc94faha8KfghRbbaiRblg8Kcl4g8La8LcsSg8LE86bbarc95faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarc96faha8KfghRbbaiRbvg8Kcl4g8La8LcsSg8LE86bbarc97faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarc98faha8KfghRbbaiRbog8Kcl4g8La8LcsSg8LE86bbarc99faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarc9:faha8KfghRbbaiRbrgicl4g8Ka8KcsSg8KE86bbarcufaha8KfgrRbbaicsGgiaicsSgiE86bbaraifhixekarai8Pbb83bbarcwfaicwf8Pbb83bbaiczfhikdnaoaC9pmbalcdfhlaoczfhraPai9RcL0mekkaoaC6moaimexokaCmva8FTmvkaqaAfhqa8Ecefg8Ecl9hmbkdndndndnawTmbasa8Acd4fRbbgociGPlbedrbkaATmdaza8Afh8Fazcj;cbfhhcbh8EaEhaina8FRbbhraahocbhlinaoahalfRbbgqce4cbaqceG9R7arfgr86bbaoadfhoaAalcefgl9hmbkaacefhaa8Fcefh8FahaAfhha8Ecefg8Ecl9hmbxikkaATmeaza8Afhaazcj;cbfhhcbhoceh8EaYh8FinaEaofhlaa8Vbbhrcbhoinala8FaofRbbcwtahaofRbbgqVc;:FiGce4cbaqceG9R7arfgr87bbaladfhlaLaocefgofmbka8FaQfh8FcdhoaacdfhaahaQfhha8EceGhlcbh8EalmbxdkkaATmbcbaocl49Rh8Eaza8AfRbbhqcwhoa3hlinalRbbaotaqVhqalcefhlaocwfgoca9hmbkcbhhaEh8FaYhainazcj;cbfahfRbbhrcwhoaahlinalRbbaotarVhralaAfhlaocwfgoca9hmbkara8E93aq7hqcbhoa8Fhlinalaqao486bbalcefhlaocwfgoca9hmbka8Fadfh8FaacefhaahcefghaA9hmbkkaEclfhEa3clfh3a8Aclfg8Aad6mbkaXazcjdfaAad2z:jjjjb8AazazcjdfaAcufad2fadz:jjjjb8AaAaOfhOaihxaimbkc9:hoxdkcbc99aPax9RakSEhoxekc9:hokavcj;kbf8Kjjjjbaok:XseHu8Jjjjjbc;ae9Rgv8Kjjjjbc9:hodnaeci9UgrcHfal0mbcuhoaiRbbgwc;WeGc;Ge9hmbawcsGgDce0mbavc;abfcFecjez:kjjjb8AavcUf9cu83ibavc8Wf9cu83ibavcyf9cu83ibavcaf9cu83ibavcKf9cu83ibavczf9cu83ibav9cu83iwav9cu83ibaialfc9WfhqaicefgwarfhldnaeTmbcmcsaDceSEhkcbhxcbhmcbhrcbhicbhoindnalaq9nmbc9:hoxikdndnawRbbgDc;Ve0mbavc;abfaoaDcu7gPcl4fcsGcitfgsydlhzasydbhHdndnaDcsGgsak9pmbavaiaPfcsGcdtfydbaxasEhDaxasTgOfhxxekdndnascsSmbcehOasc987asamffcefhDxekalcefhDal8SbbgscFeGhPdndnascu9mmbaDhlxekalcvfhlaPcFbGhPcrhsdninaD8SbbgOcFbGastaPVhPaOcu9kmeaDcefhDascrfgsc8J9hmbxdkkaDcefhlkcehOaPce4cbaPceG9R7amfhDkaDhmkavc;abfaocitfgsaDBdbasazBdlavaicdtfaDBdbavc;abfaocefcsGcitfgsaHBdbasaDBdlaocdfhoaOaifhidnadcd9hmbabarcetfgsaH87ebasclfaD87ebascdfaz87ebxdkabarcdtfgsaHBdbascwfaDBdbasclfazBdbxekdnaDcpe0mbaxcefgOavaiaqaDcsGfRbbgscl49RcsGcdtfydbascz6gPEhDavaias9RcsGcdtfydbaOaPfgzascsGgOEhsaOThOdndnadcd9hmbabarcetfgHax87ebaHclfas87ebaHcdfaD87ebxekabarcdtfgHaxBdbaHcwfasBdbaHclfaDBdbkavaicdtfaxBdbavc;abfaocitfgHaDBdbaHaxBdlavaicefgicsGcdtfaDBdbavc;abfaocefcsGcitfgHasBdbaHaDBdlavaiaPfgicsGcdtfasBdbavc;abfaocdfcsGcitfgDaxBdbaDasBdlaocifhoaiaOfhiazaOfhxxekaxcbalRbbgHEgAaDc;:eSgDfhzaHcsGhCaHcl4hXdndnaHcs0mbazcefhOxekazhOavaiaX9RcsGcdtfydbhzkdndnaCmbaOcefhxxekaOhxavaiaH9RcsGcdtfydbhOkdndnaDTmbalcefhDxekalcdfhDal8SbegPcFeGhsdnaPcu9kmbalcofhAascFbGhscrhldninaD8SbbgPcFbGaltasVhsaPcu9kmeaDcefhDalcrfglc8J9hmbkaAhDxekaDcefhDkasce4cbasceG9R7amfgmhAkdndnaXcsSmbaDhsxekaDcefhsaD8SbbglcFeGhPdnalcu9kmbaDcvfhzaPcFbGhPcrhldninas8SbbgDcFbGaltaPVhPaDcu9kmeascefhsalcrfglc8J9hmbkazhsxekascefhskaPce4cbaPceG9R7amfgmhzkdndnaCcsSmbashlxekascefhlas8SbbgDcFeGhPdnaDcu9kmbascvfhOaPcFbGhPcrhDdninal8SbbgscFbGaDtaPVhPascu9kmealcefhlaDcrfgDc8J9hmbkaOhlxekalcefhlkaPce4cbaPceG9R7amfgmhOkdndnadcd9hmbabarcetfgDaA87ebaDclfaO87ebaDcdfaz87ebxekabarcdtfgDaABdbaDcwfaOBdbaDclfazBdbkavc;abfaocitfgDazBdbaDaABdlavaicdtfaABdbavc;abfaocefcsGcitfgDaOBdbaDazBdlavaicefgicsGcdtfazBdbavc;abfaocdfcsGcitfgDaABdbaDaOBdlavaiaHcz6aXcsSVfgicsGcdtfaOBdbaiaCTaCcsSVfhiaocifhokawcefhwaocsGhoaicsGhiarcifgrae6mbkkcbc99alaqSEhokavc;aef8Kjjjjbaok:clevu8Jjjjjbcz9Rhvdnaecvfal9nmbc9:skdnaiRbbc;:eGc;qeSmbcuskav9cb83iwaicefhoaialfc98fhrdnaeTmbdnadcdSmbcbhwindnaoar6mbc9:skaocefhlao8SbbgicFeGhddndnaicu9mmbalhoxekaocvfhoadcFbGhdcrhidninal8SbbgDcFbGaitadVhdaDcu9kmealcefhlaicrfgic8J9hmbxdkkalcefhokabawcdtfadc8Etc8F91adcd47avcwfadceGcdtVglydbfgiBdbalaiBdbawcefgwae9hmbxdkkcbhwindnaoar6mbc9:skaocefhlao8SbbgicFeGhddndnaicu9mmbalhoxekaocvfhoadcFbGhdcrhidninal8SbbgDcFbGaitadVhdaDcu9kmealcefhlaicrfgic8J9hmbxdkkalcefhokabawcetfadc8Etc8F91adcd47avcwfadceGcdtVglydbfgi87ebalaiBdbawcefgwae9hmbkkcbc99aoarSEk:Lvoeue99dud99eud99dndnadcl9hmbaeTmeindndnabcdfgd8Sbb:Yab8Sbbgi:Ygl:l:tabcefgv8Sbbgo:Ygr:l:tgwJbb;:9cawawNJbbbbawawJbbbb9GgDEgq:mgkaqaicb9iEalMgwawNakaqaocb9iEarMgqaqNMM:r:vglNJbbbZJbbb:;aDEMgr:lJbbb9p9DTmbar:Ohixekcjjjj94hikadai86bbdndnaqalNJbbbZJbbb:;aqJbbbb9GEMgq:lJbbb9p9DTmbaq:Ohdxekcjjjj94hdkavad86bbdndnawalNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohdxekcjjjj94hdkabad86bbabclfhbaecufgembxdkkaeTmbindndnabclfgd8Ueb:Yab8Uebgi:Ygl:l:tabcdfgv8Uebgo:Ygr:l:tgwJb;:FSawawNJbbbbawawJbbbb9GgDEgq:mgkaqaicb9iEalMgwawNakaqaocb9iEarMgqaqNMM:r:vglNJbbbZJbbb:;aDEMgr:lJbbb9p9DTmbar:Ohixekcjjjj94hikadai87ebdndnaqalNJbbbZJbbb:;aqJbbbb9GEMgq:lJbbb9p9DTmbaq:Ohdxekcjjjj94hdkavad87ebdndnawalNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohdxekcjjjj94hdkabad87ebabcwfhbaecufgembkkk::ioiue99dud99dud99dnaeTmbcbhiabhlindndnal8Uebgv:YgoJ:ji:1Salcof8UebgrciVgw:Y:vgDNJbbbZJbbb:;avcu9kEMgq:lJbbb9p9DTmbaq:Ohkxekcjjjj94hkkalclf8Uebhvalcdf8UebhxabaiarcefciGfcetfak87ebdndnax:YgqaDNJbbbZJbbb:;axcu9kEMgm:lJbbb9p9DTmbam:Ohxxekcjjjj94hxkabaiarciGfgkcd7cetfax87ebdndnav:YgmaDNJbbbZJbbb:;avcu9kEMgP:lJbbb9p9DTmbaP:Ohvxekcjjjj94hvkabaiarcufciGfcetfav87ebdndnawaw2:ZgPaPMaoaoN:taqaqN:tamamN:tgoJbbbbaoJbbbb9GE:raDNJbbbZMgD:lJbbb9p9DTmbaD:Ohrxekcjjjj94hrkabakcetfar87ebalcwfhlaiclfhiaecufgembkkk9mbdnadcd4ae2gdTmbinababydbgecwtcw91:Yaece91cjjj98Gcjjj;8if::NUdbabclfhbadcufgdmbkkk:Tvirud99eudndnadcl9hmbaeTmeindndnabRbbgiabcefgl8Sbbgvabcdfgo8Sbbgrf9R:YJbbuJabcifgwRbbgdce4adVgDcd4aDVgDcl4aDVgD:Z:vgqNJbbbZMgk:lJbbb9p9DTmbak:Ohxxekcjjjj94hxkaoax86bbdndnaraif:YaqNJbbbZMgk:lJbbb9p9DTmbak:Ohoxekcjjjj94hokalao86bbdndnavaifar9R:YaqNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikabai86bbdndnaDadcetGadceGV:ZaqNJbbbZMgq:lJbbb9p9DTmbaq:Ohdxekcjjjj94hdkawad86bbabclfhbaecufgembxdkkaeTmbindndnab8Vebgiabcdfgl8Uebgvabclfgo8Uebgrf9R:YJbFu9habcofgw8Vebgdce4adVgDcd4aDVgDcl4aDVgDcw4aDVgD:Z:vgqNJbbbZMgk:lJbbb9p9DTmbak:Ohxxekcjjjj94hxkaoax87ebdndnaraif:YaqNJbbbZMgk:lJbbb9p9DTmbak:Ohoxekcjjjj94hokalao87ebdndnavaifar9R:YaqNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikabai87ebdndnaDadcetGadceGV:ZaqNJbbbZMgq:lJbbb9p9DTmbaq:Ohdxekcjjjj94hdkawad87ebabcwfhbaecufgembkkk9teiucbcbyd:K1jjbgeabcifc98GfgbBd:K1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;teeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiaeydlBdlaiaeydwBdwaiaeydxBdxaeczfheaiczfhiadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk:3eedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdxaialBdwaialBdlaialBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabkk81dbcjwk8Kbbbbdbbblbbbwbbbbbbbebbbdbbblbbbwbbbbc:Kwkl8WNbb\",D=\"b9H79TebbbeKl9Gbb9Gvuuuuueu9Giuuub9Geueuixkbbebeeddddilve9Weeeviebeoweuec:q:6dkr;Neqo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9KW9J9V9KW9wWVtW949c919M9MWVbdY9TW79O9V9Wt9F9KW9J9V9KW69U9KW949c919M9MWVblE9TW79O9V9Wt9F9KW9J9V9KW69U9KW949tWG91W9U9JWbvL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9p9JtboK9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9r919HtbrL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWVT949WbwY9TW79O9V9Wt9F9KW9J9V9KWS9P2tWVJ9V29VVbDl79IV9Rbqq:Ctklbzik9:evu8Jjjjjbcz9Rhbcbheincbhdcbhiinabcwfadfaicjuaead4ceGglE86bbaialfhiadcefgdcw9hmbkaec:q:yjjbfai86bbaecitc:q1jjbfab8Piw83ibaecefgecjd9hmbkk:183lYud97dur978Jjjjjbcj;kb9Rgv8Kjjjjbc9:hodnalTmbcuhoaiRbbgrc;WeGc:Ge9hmbarcsGgwce0mbc9:hoalcufadcd4cbawEgDadfgrcKcaawEgqaraq0Egk6mbaicefhxavaialfgmar9Rgoad;8qbbcj;abad9Uc;WFbGcjdadca0EhPdndndnadTmbaoadfhscbhzinaeaz9nmdamax9RaD6miabazad2fhHaxaDfhOaPaeaz9RazaPfae6EgAcsfgocl4cifcd4hCavcj;cbfaoc9WGgXcetfhQavcj;cbfaXci2fhLavcj;cbfaXfhKcbhYaoc;ab6h8AincbhodnawTmbaxaYcd4fRbbhokaocFeGhEcbh3avcj;cbfh5indndndndnaEa3cet4ciGgoc9:fPdebdkamaO9RaX6mwavcj;cbfa3aX2faOaX;8qbbaOaAfhOxdkavcj;cbfa3aX2fcbaX;8kbxekamaO9RaC6moaoclVcbawEhraOaCfhocbhidna8Ambamao9Rc;Gb6mbcbhlina5alfhidndndndndndnaOalco4fRbbgqciGarfPDbedibledibkaipxbbbbbbbbbbbbbbbbpklbxlkaiaopbblaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLg8Ecdp:mea8EpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9og8Fpxiiiiiiiiiiiiiiiip8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaoclffahc:q:yjjbfRbbfhoxikaiaopbbwaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9og8Fpxssssssssssssssssp8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaocwffahc:q:yjjbfRbbfhoxdkaiaopbbbpklbaoczfhoxekaiaopbbdaoRbbgacitc:q1jjbfpbibaac:q:yjjbfRbbgapsaoRbeghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPpklbaaaocdffahc:q:yjjbfRbbfhokdndndndndndnaqcd4ciGarfPDbedibledibkaiczfpxbbbbbbbbbbbbbbbbpklbxlkaiczfaopbblaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLg8Ecdp:mea8EpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9og8Fpxiiiiiiiiiiiiiiiip8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaoclffahc:q:yjjbfRbbfhoxikaiczfaopbbwaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9og8Fpxssssssssssssssssp8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaocwffahc:q:yjjbfRbbfhoxdkaiczfaopbbbpklbaoczfhoxekaiczfaopbbdaoRbbgacitc:q1jjbfpbibaac:q:yjjbfRbbgapsaoRbeghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPpklbaaaocdffahc:q:yjjbfRbbfhokdndndndndndnaqcl4ciGarfPDbedibledibkaicafpxbbbbbbbbbbbbbbbbpklbxlkaicafaopbblaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLg8Ecdp:mea8EpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9og8Fpxiiiiiiiiiiiiiiiip8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaoclffahc:q:yjjbfRbbfhoxikaicafaopbbwaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9og8Fpxssssssssssssssssp8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaocwffahc:q:yjjbfRbbfhoxdkaicafaopbbbpklbaoczfhoxekaicafaopbbdaoRbbgacitc:q1jjbfpbibaac:q:yjjbfRbbgapsaoRbeghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPpklbaaaocdffahc:q:yjjbfRbbfhokdndndndndndnaqco4arfPDbedibledibkaic8Wfpxbbbbbbbbbbbbbbbbpklbxlkaic8Wfaopbblaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLg8Ecdp:mea8EpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9og8Fpxiiiiiiiiiiiiiiiip8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngicitc:q1jjbfpbibaic:q:yjjbfRbbgipsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Ngqcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaiaoclffaqc:q:yjjbfRbbfhoxikaic8Wfaopbbwaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9og8Fpxssssssssssssssssp8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngicitc:q1jjbfpbibaic:q:yjjbfRbbgipsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Ngqcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaiaocwffaqc:q:yjjbfRbbfhoxdkaic8Wfaopbbbpklbaoczfhoxekaic8WfaopbbdaoRbbgicitc:q1jjbfpbibaic:q:yjjbfRbbgipsaoRbegqcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPpklbaiaocdffaqc:q:yjjbfRbbfhokalc;abfhialcjefaX0meaihlamao9Rc;Fb0mbkkdnaiaX9pmbaici4hlinamao9RcK6mwa5aifhqdndndndndndnaOaico4fRbbalcoG4ciGarfPDbedibledibkaqpxbbbbbbbbbbbbbbbbpkbbxlkaqaopbblaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLg8Ecdp:mea8EpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9og8Fpxiiiiiiiiiiiiiiiip8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spkbbaaaoclffahc:q:yjjbfRbbfhoxikaqaopbbwaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9og8Fpxssssssssssssssssp8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spkbbaaaocwffahc:q:yjjbfRbbfhoxdkaqaopbbbpkbbaoczfhoxekaqaopbbdaoRbbgacitc:q1jjbfpbibaac:q:yjjbfRbbgapsaoRbeghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPpkbbaaaocdffahc:q:yjjbfRbbfhokalcdfhlaiczfgiaX6mbkkaohOaoTmoka5aXfh5a3cefg3cl9hmbkdndndndnawTmbasaYcd4fRbbglciGPlbedwbkaXTmdavcjdfaYfhlavaYfpbdbhgcbhoinalavcj;cbfaofpblbg8JaKaofpblbg8KpmbzeHdOiAlCvXoQrLg8LaQaofpblbg8MaLaofpblbg8NpmbzeHdOiAlCvXoQrLgypmbezHdiOAlvCXorQLg8Ecep9Ta8Epxeeeeeeeeeeeeeeeeg8Fp9op9Hp9rg8Eagp9Uggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp9Uggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp9Uggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp9Uggp9Abbbaladfglaga8LaypmwDKYqk8AExm35Ps8E8Fg8Ecep9Ta8Ea8Fp9op9Hp9rg8Ep9Uggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp9Uggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp9Uggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp9Uggp9Abbbaladfglaga8Ja8KpmwKDYq8AkEx3m5P8Es8Fg8Ja8Ma8NpmwKDYq8AkEx3m5P8Es8Fg8KpmbezHdiOAlvCXorQLg8Ecep9Ta8Ea8Fp9op9Hp9rg8Ep9Uggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp9Uggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp9Uggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp9Uggp9Abbbaladfglaga8Ja8KpmwDKYqk8AExm35Ps8E8Fg8Ecep9Ta8Ea8Fp9op9Hp9rg8Ep9Ug8Fp9Abbbaladfgla8Fa8Ea8Epmlvorlvorlvorlvorp9Ug8Fp9Abbbaladfgla8Fa8Ea8EpmwDqkwDqkwDqkwDqkp9Ug8Fp9Abbbaladfgla8Fa8Ea8EpmxmPsxmPsxmPsxmPsp9Uggp9AbbbaladfhlaoczfgoaX6mbxikkaXTmeavcjdfaYfhlavaYfpbdbhgcbhoinalavcj;cbfaofpblbg8JaKaofpblbg8KpmbzeHdOiAlCvXoQrLg8LaQaofpblbg8MaLaofpblbg8NpmbzeHdOiAlCvXoQrLgypmbezHdiOAlvCXorQLg8Ecep:nea8Epxebebebebebebebebg8Fp9op:bep9rg8Eagp:oeggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp:oeggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp:oeggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp:oeggp9Abbbaladfglaga8LaypmwDKYqk8AExm35Ps8E8Fg8Ecep:nea8Ea8Fp9op:bep9rg8Ep:oeggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp:oeggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp:oeggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp:oeggp9Abbbaladfglaga8Ja8KpmwKDYq8AkEx3m5P8Es8Fg8Ja8Ma8NpmwKDYq8AkEx3m5P8Es8Fg8KpmbezHdiOAlvCXorQLg8Ecep:nea8Ea8Fp9op:bep9rg8Ep:oeggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp:oeggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp:oeggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp:oeggp9Abbbaladfglaga8Ja8KpmwDKYqk8AExm35Ps8E8Fg8Ecep:nea8Ea8Fp9op:bep9rg8Ep:oeg8Fp9Abbbaladfgla8Fa8Ea8Epmlvorlvorlvorlvorp:oeg8Fp9Abbbaladfgla8Fa8Ea8EpmwDqkwDqkwDqkwDqkp:oeg8Fp9Abbbaladfgla8Fa8Ea8EpmxmPsxmPsxmPsxmPsp:oeggp9AbbbaladfhlaoczfgoaX6mbxdkkaXTmbcbhocbalcl4gl9Rc8FGhiavcjdfaYfhravaYfpbdbh8Finaravcj;cbfaofpblbggaKaofpblbg8JpmbzeHdOiAlCvXoQrLg8KaQaofpblbg8LaLaofpblbg8MpmbzeHdOiAlCvXoQrLg8NpmbezHdiOAlvCXorQLg8Eaip:Rea8Ealp:Sep9qg8Ea8Fp9rg8Fp9Abbbaradfgra8Fa8Ea8Epmlvorlvorlvorlvorp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmwDqkwDqkwDqkwDqkp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmxmPsxmPsxmPsxmPsp9rg8Fp9Abbbaradfgra8Fa8Ka8NpmwDKYqk8AExm35Ps8E8Fg8Eaip:Rea8Ealp:Sep9qg8Ep9rg8Fp9Abbbaradfgra8Fa8Ea8Epmlvorlvorlvorlvorp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmwDqkwDqkwDqkwDqkp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmxmPsxmPsxmPsxmPsp9rg8Fp9Abbbaradfgra8Faga8JpmwKDYq8AkEx3m5P8Es8Fgga8La8MpmwKDYq8AkEx3m5P8Es8Fg8JpmbezHdiOAlvCXorQLg8Eaip:Rea8Ealp:Sep9qg8Ep9rg8Fp9Abbbaradfgra8Fa8Ea8Epmlvorlvorlvorlvorp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmwDqkwDqkwDqkwDqkp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmxmPsxmPsxmPsxmPsp9rg8Fp9Abbbaradfgra8Faga8JpmwDKYqk8AExm35Ps8E8Fg8Eaip:Rea8Ealp:Sep9qg8Ep9rg8Fp9Abbbaradfgra8Fa8Ea8Epmlvorlvorlvorlvorp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmwDqkwDqkwDqkwDqkp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmxmPsxmPsxmPsxmPsp9rg8Fp9AbbbaradfhraoczfgoaX6mbkkaYclfgYad6mbkaHavcjdfaAad2;8qbbavavcjdfaAcufad2fad;8qbbaAazfhzc9:hoaOhxaOmbxlkkaeTmbaDalfhrcbhocuhlinaralaD9RglfaD6mdaPaeao9RaoaPfae6Eaofgoae6mbkaial9Rhxkcbc99amax9RakSEhoxekc9:hokavcj;kbf8Kjjjjbaokwbz:bjjjbk:TseHu8Jjjjjbc;ae9Rgv8Kjjjjbc9:hodnaeci9UgrcHfal0mbcuhoaiRbbgwc;WeGc;Ge9hmbawcsGgDce0mbavc;abfcFecje;8kbavcUf9cu83ibavc8Wf9cu83ibavcyf9cu83ibavcaf9cu83ibavcKf9cu83ibavczf9cu83ibav9cu83iwav9cu83ibaialfc9WfhqaicefgwarfhldnaeTmbcmcsaDceSEhkcbhxcbhmcbhrcbhicbhoindnalaq9nmbc9:hoxikdndnawRbbgDc;Ve0mbavc;abfaoaDcu7gPcl4fcsGcitfgsydlhzasydbhHdndnaDcsGgsak9pmbavaiaPfcsGcdtfydbaxasEhDaxasTgOfhxxekdndnascsSmbcehOasc987asamffcefhDxekalcefhDal8SbbgscFeGhPdndnascu9mmbaDhlxekalcvfhlaPcFbGhPcrhsdninaD8SbbgOcFbGastaPVhPaOcu9kmeaDcefhDascrfgsc8J9hmbxdkkaDcefhlkcehOaPce4cbaPceG9R7amfhDkaDhmkavc;abfaocitfgsaDBdbasazBdlavaicdtfaDBdbavc;abfaocefcsGcitfgsaHBdbasaDBdlaocdfhoaOaifhidnadcd9hmbabarcetfgsaH87ebasclfaD87ebascdfaz87ebxdkabarcdtfgsaHBdbascwfaDBdbasclfazBdbxekdnaDcpe0mbaxcefgOavaiaqaDcsGfRbbgscl49RcsGcdtfydbascz6gPEhDavaias9RcsGcdtfydbaOaPfgzascsGgOEhsaOThOdndnadcd9hmbabarcetfgHax87ebaHclfas87ebaHcdfaD87ebxekabarcdtfgHaxBdbaHcwfasBdbaHclfaDBdbkavaicdtfaxBdbavc;abfaocitfgHaDBdbaHaxBdlavaicefgicsGcdtfaDBdbavc;abfaocefcsGcitfgHasBdbaHaDBdlavaiaPfgicsGcdtfasBdbavc;abfaocdfcsGcitfgDaxBdbaDasBdlaocifhoaiaOfhiazaOfhxxekaxcbalRbbgHEgAaDc;:eSgDfhzaHcsGhCaHcl4hXdndnaHcs0mbazcefhOxekazhOavaiaX9RcsGcdtfydbhzkdndnaCmbaOcefhxxekaOhxavaiaH9RcsGcdtfydbhOkdndnaDTmbalcefhDxekalcdfhDal8SbegPcFeGhsdnaPcu9kmbalcofhAascFbGhscrhldninaD8SbbgPcFbGaltasVhsaPcu9kmeaDcefhDalcrfglc8J9hmbkaAhDxekaDcefhDkasce4cbasceG9R7amfgmhAkdndnaXcsSmbaDhsxekaDcefhsaD8SbbglcFeGhPdnalcu9kmbaDcvfhzaPcFbGhPcrhldninas8SbbgDcFbGaltaPVhPaDcu9kmeascefhsalcrfglc8J9hmbkazhsxekascefhskaPce4cbaPceG9R7amfgmhzkdndnaCcsSmbashlxekascefhlas8SbbgDcFeGhPdnaDcu9kmbascvfhOaPcFbGhPcrhDdninal8SbbgscFbGaDtaPVhPascu9kmealcefhlaDcrfgDc8J9hmbkaOhlxekalcefhlkaPce4cbaPceG9R7amfgmhOkdndnadcd9hmbabarcetfgDaA87ebaDclfaO87ebaDcdfaz87ebxekabarcdtfgDaABdbaDcwfaOBdbaDclfazBdbkavc;abfaocitfgDazBdbaDaABdlavaicdtfaABdbavc;abfaocefcsGcitfgDaOBdbaDazBdlavaicefgicsGcdtfazBdbavc;abfaocdfcsGcitfgDaABdbaDaOBdlavaiaHcz6aXcsSVfgicsGcdtfaOBdbaiaCTaCcsSVfhiaocifhokawcefhwaocsGhoaicsGhiarcifgrae6mbkkcbc99alaqSEhokavc;aef8Kjjjjbaok:clevu8Jjjjjbcz9Rhvdnaecvfal9nmbc9:skdnaiRbbc;:eGc;qeSmbcuskav9cb83iwaicefhoaialfc98fhrdnaeTmbdnadcdSmbcbhwindnaoar6mbc9:skaocefhlao8SbbgicFeGhddndnaicu9mmbalhoxekaocvfhoadcFbGhdcrhidninal8SbbgDcFbGaitadVhdaDcu9kmealcefhlaicrfgic8J9hmbxdkkalcefhokabawcdtfadc8Etc8F91adcd47avcwfadceGcdtVglydbfgiBdbalaiBdbawcefgwae9hmbxdkkcbhwindnaoar6mbc9:skaocefhlao8SbbgicFeGhddndnaicu9mmbalhoxekaocvfhoadcFbGhdcrhidninal8SbbgDcFbGaitadVhdaDcu9kmealcefhlaicrfgic8J9hmbxdkkalcefhokabawcetfadc8Etc8F91adcd47avcwfadceGcdtVglydbfgi87ebalaiBdbawcefgwae9hmbkkcbc99aoarSEk:2Pliur97eue978Jjjjjbc8W9Rhiaec98Ghldndnadcl9hmbdnalTmbcbhvabhdinadadpbbbgocKp:RecKp:Sep;6egraocwp:RecKp:Sep;6earp;Geaoczp:RecKp:Sep;6egwp;Gep;Kep;LegDpxbbbbbbbbbbbbbbbbp:2egqarpxbbbjbbbjbbbjbbbjgkp9op9rp;Kegrpxbb;:9cbb;:9cbb;:9cbb;:9cararp;MeaDaDp;Meawaqawakp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFbbbFbbbFbbbFbbbp9oaopxbbbFbbbFbbbFbbbFp9op9qarawp;Meaqp;Kecwp:RepxbFbbbFbbbFbbbFbbp9op9qaDawp;Meaqp;Keczp:RepxbbFbbbFbbbFbbbFbp9op9qpkbbadczfhdavclfgval6mbkkalaeSmeaipxbbbbbbbbbbbbbbbbgqpklbaiabalcdtfgdaeciGglcdtgv;8qbbdnalTmbaiaipblbgocKp:RecKp:Sep;6egraocwp:RecKp:Sep;6earp;Geaoczp:RecKp:Sep;6egwp;Gep;Kep;LegDaqp:2egqarpxbbbjbbbjbbbjbbbjgkp9op9rp;Kegrpxbb;:9cbb;:9cbb;:9cbb;:9cararp;MeaDaDp;Meawaqawakp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFbbbFbbbFbbbFbbbp9oaopxbbbFbbbFbbbFbbbFp9op9qarawp;Meaqp;Kecwp:RepxbFbbbFbbbFbbbFbbp9op9qaDawp;Meaqp;Keczp:RepxbbFbbbFbbbFbbbFbp9op9qpklbkadaiav;8qbbskaipxFubbFubbFubbFubbgxpklbdnalTmbcbhvabhdinadczfgmampbbbgopxbbbbbbFFbbbbbbFFgkp9oadpbbbgDaopmbediwDqkzHOAKY8AEgwczp:Reczp:Sep;6egraipblbaDaopmlvorxmPsCXQL358E8Fp9op;6eawczp:Sep;6egwp;Gearp;Gep;Kep;Legopxbbbbbbbbbbbbbbbbp:2egqarpxbbbjbbbjbbbjbbbjgPp9op9rp;Kegrpxb;:FSb;:FSb;:FSb;:FSararp;Meaoaop;MeawaqawaPp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFFbbFFbbFFbbFFbbp9oaoawp;Meaqp;Keczp:Rep9qgoarawp;Meaqp;KepxFFbbFFbbFFbbFFbbp9ogrpmwDKYqk8AExm35Ps8E8Fp9qpkbbadaDakp9oaoarpmbezHdiOAlvCXorQLp9qpkbbadcafhdavclfgval6mbkkalaeSmbaiczfpxbbbbbbbbbbbbbbbbgopklbaiaopklbaiabalcitfgdaeciGglcitgv;8qbbaiaxpkladnalTmbaiaipblzgopxbbbbbbFFbbbbbbFFgkp9oaipblbgDaopmbediwDqkzHOAKY8AEgwczp:Reczp:Sep;6egraipblaaDaopmlvorxmPsCXQL358E8Fp9op;6eawczp:Sep;6egwp;Gearp;Gep;Kep;Legopxbbbbbbbbbbbbbbbbp:2egqarpxbbbjbbbjbbbjbbbjgPp9op9rp;Kegrpxb;:FSb;:FSb;:FSb;:FSararp;Meaoaop;MeawaqawaPp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFFbbFFbbFFbbFFbbp9oaoawp;Meaqp;Keczp:Rep9qgoarawp;Meaqp;KepxFFbbFFbbFFbbFFbbp9ogrpmwDKYqk8AExm35Ps8E8Fp9qpklzaiaDakp9oaoarpmbezHdiOAlvCXorQLp9qpklbkadaiav;8qbbkk:Iwllue97euo978Jjjjjbca9Rhidnaec98GglTmbcbhvabhoinaocKfpx:ji:1S:ji:1S:ji:1S:ji:1SaopbbbgraoczfgwpbbbgDpmlvorxmPsCXQL358E8Fgqczp:Segkpxibbbibbbibbbibbbp9qgxp;6ep;Negmaxaxp:1ep;7egxaxp;KearaDpmbediwDqkzHOAKY8AEgxczp:Reczp:Sep;6egrarp;Meaxczp:Sep;6egDaDp;Meaqczp:Reczp:Sep;6egqaqp;Mep;Kep;Kep;Lepxbbbbbbbbbbbbbbbbp:4ep;Jep;Mepxbbn0bbn0bbn0bbn0gxp;KepxFFbbFFbbFFbbFFbbgPp9oamaDp;Meaxp;Keczp:Rep9qgDamarp;Meaxp;KeaPp9oamaqp;Meaxp;Keczp:Rep9qgxpmwDKYqk8AExm35Ps8E8Fgrp5eakclp:RegmpEi:T:j83ibawarp5bampEd:T:j83ibaocwfaDaxpmbezHdiOAlvCXorQLgxp5eampEe:T:j83ibaoaxp5bampEb:T:j83ibaocafhoavclfgval6mbkkdnalaeSmbaiczfpxbbbbbbbbbbbbbbbbgmpklbaiampklbaiabalcitfgoaeciGgvcitgw;8qbbdnavTmbaipx:ji:1S:ji:1S:ji:1S:ji:1SaipblbgraipblzgDpmlvorxmPsCXQL358E8Fgqczp:Segkpxibbbibbbibbbibbbp9qgxp;6ep;Negmaxaxp:1ep;7egxaxp;KearaDpmbediwDqkzHOAKY8AEgxczp:Reczp:Sep;6egrarp;Meaxczp:Sep;6egDaDp;Meaqczp:Reczp:Sep;6egqaqp;Mep;Kep;Kep;Lepxbbbbbbbbbbbbbbbbp:4ep;Jep;Mepxbbn0bbn0bbn0bbn0gxp;KepxFFbbFFbbFFbbFFbbgPp9oamaDp;Meaxp;Keczp:Rep9qgDamarp;Meaxp;KeaPp9oamaqp;Meaxp;Keczp:Rep9qgxpmwDKYqk8AExm35Ps8E8Fgrp5eakclp:RegmpEi:T:j83iKaiarp5bampEd:T:j83izaiaDaxpmbezHdiOAlvCXorQLgxp5eampEe:T:j83iwaiaxp5bampEb:T:j83ibkaoaiaw;8qbbkk;uddiue978Jjjjjbc;ab9Rhidnadcd4ae2glc98GgvTmbcbheabhdinadadpbbbgocwp:Recwp:Sep;6eaocep:SepxbbjFbbjFbbjFbbjFp9opxbbjZbbjZbbjZbbjZp:Uep;Mepkbbadczfhdaeclfgeav6mbkkdnavalSmbaic8WfpxbbbbbbbbbbbbbbbbgopklbaicafaopklbaiczfaopklbaiaopklbaiabavcdtfgdalciGgecdtgv;8qbbdnaeTmbaiaipblbgocwp:Recwp:Sep;6eaocep:SepxbbjFbbjFbbjFbbjFp9opxbbjZbbjZbbjZbbjZp:Uep;Mepklbkadaiav;8qbbkk:CPvdue97euw97eu8Jjjjjbc8W9Rhiaec98Ghldndnadcl9hmbaipxbbbbbbbbbbbbbbbbgvpklbdnalTmbcbhoabhdinadpbbbhradpxbbuJbbuJbbuJbbuJaipblbarcKp:Tep9qgwcep:Seawp9qgDcdp:SeaDp9qgDclp:SeaDp9qgqp;6ep;NegDarcwp:RecKp:SegkarpxFbbbFbbbFbbbFbbbgxp9ogmp:Uep;6ep;Mepxbbn0bbn0bbn0bbn0gPp;Kecwp:RepxbFbbbFbbbFbbbFbbp9oaDamakp:Xearczp:RecKp:Segrp:Uep;6ep;MeaPp;Keaxp9op9qaDamakarp:Uep:Xep;6ep;MeaPp;Keczp:RepxbbFbbbFbbbFbbbFbp9op9qaDaqawcep:Rep9oawpxebbbebbbebbbebbbp9op9qp;6ep;MeaPp;KecKp:Rep9qpkbbadczfhdaoclfgoal6mbkkalaeSmeaiavpklaaicafabalcdtfgdaeciGglcdtgo;8qbbaiavpklbdnalTmbaipblahraipxbbuJbbuJbbuJbbuJaipblbarcKp:Tep9qgwcep:Seawp9qgDcdp:SeaDp9qgDclp:SeaDp9qgqp;6ep;NegDarcwp:RecKp:SegkarpxFbbbFbbbFbbbFbbbgxp9ogmp:Uep;6ep;Mepxbbn0bbn0bbn0bbn0gPp;Kecwp:RepxbFbbbFbbbFbbbFbbp9oaDamakp:Xearczp:RecKp:Segrp:Uep;6ep;MeaPp;Keaxp9op9qaDamakarp:Uep:Xep;6ep;MeaPp;Keczp:RepxbbFbbbFbbbFbbbFbp9op9qaDaqawcep:Rep9oawpxebbbebbbebbbebbbp9op9qp;6ep;MeaPp;KecKp:Rep9qpklakadaicafao;8qbbskaipxbbbbbbbbbbbbbbbbgvpklbdnalTmbcbhoabhdinadczfgspxbFu9hbFu9hbFu9hbFu9hadpbbbgDaspbbbgPpmlvorxmPsCXQL358E8Fgmczp:Teaipblbp9qgrcep:Searp9qgwcdp:Seawp9qgwclp:Seawp9qgwcwp:Seawp9qgqp;6ep;NegwaDaPpmbediwDqkzHOAKY8AEgDpxFFbbFFbbFFbbFFbbgPp9ogkaDczp:Segxp:Ueamczp:Reczp:Segmp:Xep;6ep;Mepxbbn0bbn0bbn0bbn0gDp;KeaPp9oawakaxamp:Uep:Xep;6ep;MeaDp;Keczp:Rep9qgxawaqarcep:Rep9oarpxebbbebbbebbbebbbp9op9qp;6ep;MeaDp;Keczp:Reawamakp:Uep;6ep;MeaDp;KeaPp9op9qgrpmwDKYqk8AExm35Ps8E8FpkbbadaxarpmbezHdiOAlvCXorQLpkbbadcafhdaoclfgoal6mbkkalaeSmbaiczfpxbbbbbbbbbbbbbbbbgrpklbaiarpklbaiabalcitfgdaeciGglcitgo;8qbbaiavpkladnalTmbaipxbFu9hbFu9hbFu9hbFu9haipblbgDaipblzgPpmlvorxmPsCXQL358E8Fgmczp:Teaipblap9qgrcep:Searp9qgwcdp:Seawp9qgwclp:Seawp9qgwcwp:Seawp9qgqp;6ep;NegwaDaPpmbediwDqkzHOAKY8AEgDpxFFbbFFbbFFbbFFbbgPp9ogkaDczp:Segxp:Ueamczp:Reczp:Segmp:Xep;6ep;Mepxbbn0bbn0bbn0bbn0gDp;KeaPp9oawakaxamp:Uep:Xep;6ep;MeaDp;Keczp:Rep9qgxawaqarcep:Rep9oarpxebbbebbbebbbebbbp9op9qp;6ep;MeaDp;Keczp:Reawamakp:Uep;6ep;MeaDp;KeaPp9op9qgrpmwDKYqk8AExm35Ps8E8FpklzaiaxarpmbezHdiOAlvCXorQLpklbkadaiao;8qbbkk9teiucbcbydj1jjbgeabcifc98GfgbBdj1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaikkkebcjwklz:Dbb\",v=new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,3,2,0,0,5,3,1,0,1,12,1,0,10,22,2,12,0,65,0,65,0,65,0,252,10,0,0,11,7,0,65,0,253,15,26,11]),w=new Uint8Array([32,0,65,2,1,106,34,33,3,128,11,4,13,64,6,253,10,7,15,116,127,5,8,12,40,16,19,54,20,9,27,255,113,17,42,67,24,23,146,148,18,14,22,45,70,69,56,114,101,21,25,63,75,136,108,28,118,29,73,115]);if(typeof WebAssembly!=\"object\")return{supported:!1};var n=WebAssembly.validate(v)?F(D):F(t),g,x=WebAssembly.instantiate(n,{}).then(function(c){g=c.instance,g.exports.__wasm_call_ctors()});function F(c){for(var b=new Uint8Array(c.length),e=0;e<c.length;++e){var a=c.charCodeAt(e);b[e]=a>96?a-97:a>64?a-39:a+4}for(var p=0,e=0;e<c.length;++e)b[p++]=b[e]<60?w[b[e]]:(b[e]-60)*64+b[++e];return b.buffer.slice(0,p)}function l(c,b,e,a,p,i,h){var o=c.exports.sbrk,k=a+3&-4,f=o(k*p),r=o(i.length),E=new Uint8Array(c.exports.memory.buffer);E.set(i,r);var j=b(f,a,p,r,i.length);if(j==0&&h&&h(f,k,p),e.set(E.subarray(f,f+a*p)),o(f-o(0)),j!=0)throw new Error(\"Malformed buffer data: \"+j)}var s={NONE:\"\",OCTAHEDRAL:\"meshopt_decodeFilterOct\",QUATERNION:\"meshopt_decodeFilterQuat\",EXPONENTIAL:\"meshopt_decodeFilterExp\",COLOR:\"meshopt_decodeFilterColor\"},m={ATTRIBUTES:\"meshopt_decodeVertexBuffer\",TRIANGLES:\"meshopt_decodeIndexBuffer\",INDICES:\"meshopt_decodeIndexSequence\"},d=[],K=0;function R(c){var b={object:new Worker(c),pending:0,requests:{}};return b.object.onmessage=function(e){var a=e.data;b.pending-=a.count,b.requests[a.id][a.action](a.value),delete b.requests[a.id]},b}function G(c){for(var b=\"self.ready = WebAssembly.instantiate(new Uint8Array([\"+new Uint8Array(n)+\"]), {}).then(function(result) { result.instance.exports.__wasm_call_ctors(); return result.instance; });self.onmessage = \"+q.name+\";\"+l.toString()+q.toString(),e=new Blob([b],{type:\"text/javascript\"}),a=URL.createObjectURL(e),p=d.length;p<c;++p)d[p]=R(a);for(var p=c;p<d.length;++p)d[p].object.postMessage({});d.length=c,URL.revokeObjectURL(a)}function u(c,b,e,a,p){for(var i=d[0],h=1;h<d.length;++h)d[h].pending<i.pending&&(i=d[h]);return new Promise(function(o,k){var f=new Uint8Array(e),r=++K;i.pending+=c,i.requests[r]={resolve:o,reject:k},i.object.postMessage({id:r,count:c,size:b,source:f,mode:a,filter:p},[f.buffer])})}function q(c){var b=c.data;if(!b.id)return self.close();self.ready.then(function(e){try{var a=new Uint8Array(b.count*b.size);l(e,e.exports[b.mode],a,b.count,b.size,b.source,e.exports[b.filter]),self.postMessage({id:b.id,count:b.count,action:\"resolve\",value:a},[a.buffer])}catch(p){self.postMessage({id:b.id,count:b.count,action:\"reject\",value:p})}})}return{ready:x,supported:!0,useWorkers:function(c){G(c)},decodeVertexBuffer:function(c,b,e,a,p){l(g,g.exports.meshopt_decodeVertexBuffer,c,b,e,a,g.exports[s[p]])},decodeIndexBuffer:function(c,b,e,a){l(g,g.exports.meshopt_decodeIndexBuffer,c,b,e,a)},decodeIndexSequence:function(c,b,e,a){l(g,g.exports.meshopt_decodeIndexSequence,c,b,e,a)},decodeGltfBuffer:function(c,b,e,a,p,i){l(g,g.exports[m[p]],c,b,e,a,g.exports[s[i]])},decodeGltfBufferAsync:function(c,b,e,a,p){return d.length>0?u(c,b,e,m[a],s[p]):x.then(function(){var i=new Uint8Array(c*b);return l(g,g.exports[m[a]],i,c,b,e,g.exports[s[p]]),i})}}})();export{z as MeshoptDecoder};\n//# sourceMappingURL=meshopt_decoder.module.mjs.map","/* esm.sh - three@0.183.2/examples/jsm/libs/meshopt_decoder.module */\nexport * from \"/three@0.183.2/es2022/examples/jsm/libs/meshopt_decoder.module.mjs\";\n","/* esm.sh - three@0.183.2/examples/jsm/loaders/GLTFLoader */\nimport{AnimationClip as Ze,Bone as Qe,Box3 as Je,BufferAttribute as W,BufferGeometry as $e,ClampToEdgeWrapping as et,Color as v,ColorManagement as Ne,DirectionalLight as tt,DoubleSide as nt,FileLoader as Fe,FrontSide as st,Group as q,ImageBitmapLoader as rt,InstancedMesh as it,InterleavedBuffer as ot,InterleavedBufferAttribute as at,Interpolant as ct,InterpolateDiscrete as ut,InterpolateLinear as Ue,Line as lt,LineBasicMaterial as ft,LineLoop as dt,LineSegments as ht,LinearFilter as $,LinearMipmapLinearFilter as Ke,LinearMipmapNearestFilter as pt,LinearSRGBColorSpace as I,Loader as mt,LoaderUtils as F,Material as Y,MathUtils as gt,Matrix4 as K,Mesh as Tt,MeshBasicMaterial as D,MeshPhysicalMaterial as S,MeshStandardMaterial as Ge,MirroredRepeatWrapping as At,NearestFilter as ze,NearestMipmapLinearFilter as Rt,NearestMipmapNearestFilter as xt,NumberKeyframeTrack as Le,Object3D as Ve,OrthographicCamera as bt,PerspectiveCamera as yt,PointLight as wt,Points as Et,PointsMaterial as _t,PropertyBinding as Mt,Quaternion as je,QuaternionKeyframeTrack as Oe,RepeatWrapping as ee,Skeleton as St,SkinnedMesh as It,Sphere as Nt,SpotLight as Lt,Texture as Ce,TextureLoader as Ot,TriangleFanDrawMode as Ct,TriangleStripDrawMode as vt,Vector2 as Xe,Vector3 as C,VectorKeyframeTrack as ve,SRGBColorSpace as U,InstancedBufferAttribute as Pt}from\"../../../three.mjs\";import{BufferAttribute as Xt,BufferGeometry as Wt,Float32BufferAttribute as qt,InstancedBufferAttribute as Yt,InterleavedBuffer as Zt,InterleavedBufferAttribute as Qt,TriangleFanDrawMode as Me,TriangleStripDrawMode as qe,TrianglesDrawMode as Ye,Vector3 as Jt}from\"../../../three.mjs\";function X(f,t){if(t===Ye)return console.warn(\"THREE.BufferGeometryUtils.toTrianglesDrawMode(): Geometry already defined as triangles.\"),f;if(t===Me||t===qe){let e=f.getIndex();if(e===null){let i=[],a=f.getAttribute(\"position\");if(a!==void 0){for(let o=0;o<a.count;o++)i.push(o);f.setIndex(i),e=f.getIndex()}else return console.error(\"THREE.BufferGeometryUtils.toTrianglesDrawMode(): Undefined position attribute. Processing not possible.\"),f}let s=e.count-2,n=[];if(t===Me)for(let i=1;i<=s;i++)n.push(e.getX(0)),n.push(e.getX(i)),n.push(e.getX(i+1));else for(let i=0;i<s;i++)i%2===0?(n.push(e.getX(i)),n.push(e.getX(i+1)),n.push(e.getX(i+2))):(n.push(e.getX(i+2)),n.push(e.getX(i+1)),n.push(e.getX(i)));n.length/3!==s&&console.error(\"THREE.BufferGeometryUtils.toTrianglesDrawMode(): Unable to generate correct amount of triangles.\");let r=f.clone();return r.setIndex(n),r.clearGroups(),r}else return console.error(\"THREE.BufferGeometryUtils.toTrianglesDrawMode(): Unknown draw mode:\",t),f}import{AnimationClip as tn,AnimationMixer as nn,Matrix4 as sn,Quaternion as rn,QuaternionKeyframeTrack as on,SkeletonHelper as an,Vector3 as cn,VectorKeyframeTrack as un}from\"../../../three.mjs\";function Se(f){let t=new Map,e=new Map,s=f.clone();return Ie(f,s,function(n,r){t.set(r,n),e.set(n,r)}),s.traverse(function(n){if(!n.isSkinnedMesh)return;let r=n,i=t.get(n),a=i.skeleton.bones;r.skeleton=i.skeleton.clone(),r.bindMatrix.copy(i.bindMatrix),r.skeleton.bones=a.map(function(o){return e.get(o)}),r.bind(r.skeleton,r.bindMatrix)}),s}function Ie(f,t,e){e(f,t);for(let s=0;s<f.children.length;s++)Ie(f.children[s],t.children[s],e)}var Pe=class extends mt{constructor(t){super(t),this.dracoLoader=null,this.ktx2Loader=null,this.meshoptDecoder=null,this.pluginCallbacks=[],this.register(function(e){return new re(e)}),this.register(function(e){return new ie(e)}),this.register(function(e){return new pe(e)}),this.register(function(e){return new me(e)}),this.register(function(e){return new ge(e)}),this.register(function(e){return new ae(e)}),this.register(function(e){return new ce(e)}),this.register(function(e){return new ue(e)}),this.register(function(e){return new le(e)}),this.register(function(e){return new se(e)}),this.register(function(e){return new fe(e)}),this.register(function(e){return new oe(e)}),this.register(function(e){return new he(e)}),this.register(function(e){return new de(e)}),this.register(function(e){return new te(e)}),this.register(function(e){return new G(e,g.EXT_MESHOPT_COMPRESSION)}),this.register(function(e){return new G(e,g.KHR_MESHOPT_COMPRESSION)}),this.register(function(e){return new Te(e)})}load(t,e,s,n){let r=this,i;if(this.resourcePath!==\"\")i=this.resourcePath;else if(this.path!==\"\"){let c=F.extractUrlBase(t);i=F.resolveURL(c,this.path)}else i=F.extractUrlBase(t);this.manager.itemStart(t);let a=function(c){n?n(c):console.error(c),r.manager.itemError(t),r.manager.itemEnd(t)},o=new Fe(this.manager);o.setPath(this.path),o.setResponseType(\"arraybuffer\"),o.setRequestHeader(this.requestHeader),o.setWithCredentials(this.withCredentials),o.load(t,function(c){try{r.parse(c,i,function(l){e(l),r.manager.itemEnd(t)},a)}catch(l){a(l)}},s,a)}setDRACOLoader(t){return this.dracoLoader=t,this}setKTX2Loader(t){return this.ktx2Loader=t,this}setMeshoptDecoder(t){return this.meshoptDecoder=t,this}register(t){return this.pluginCallbacks.indexOf(t)===-1&&this.pluginCallbacks.push(t),this}unregister(t){return this.pluginCallbacks.indexOf(t)!==-1&&this.pluginCallbacks.splice(this.pluginCallbacks.indexOf(t),1),this}parse(t,e,s,n){let r,i={},a={},o=new TextDecoder;if(typeof t==\"string\")r=JSON.parse(t);else if(t instanceof ArrayBuffer)if(o.decode(new Uint8Array(t,0,4))===We){try{i[g.KHR_BINARY_GLTF]=new Ae(t)}catch(u){n&&n(u);return}r=JSON.parse(i[g.KHR_BINARY_GLTF].content)}else r=JSON.parse(o.decode(t));else r=t;if(r.asset===void 0||r.asset.version[0]<2){n&&n(new Error(\"THREE.GLTFLoader: Unsupported asset. glTF versions >=2.0 are supported.\"));return}let c=new _e(r,{path:e||this.resourcePath||\"\",crossOrigin:this.crossOrigin,requestHeader:this.requestHeader,manager:this.manager,ktx2Loader:this.ktx2Loader,meshoptDecoder:this.meshoptDecoder});c.fileLoader.setRequestHeader(this.requestHeader);for(let l=0;l<this.pluginCallbacks.length;l++){let u=this.pluginCallbacks[l](c);u.name||console.error(\"THREE.GLTFLoader: Invalid plugin found: missing name\"),a[u.name]=u,i[u.name]=!0}if(r.extensionsUsed)for(let l=0;l<r.extensionsUsed.length;++l){let u=r.extensionsUsed[l],d=r.extensionsRequired||[];switch(u){case g.KHR_MATERIALS_UNLIT:i[u]=new ne;break;case g.KHR_DRACO_MESH_COMPRESSION:i[u]=new Re(r,this.dracoLoader);break;case g.KHR_TEXTURE_TRANSFORM:i[u]=new xe;break;case g.KHR_MESH_QUANTIZATION:i[u]=new be;break;default:d.indexOf(u)>=0&&a[u]===void 0&&console.warn('THREE.GLTFLoader: Unknown extension \"'+u+'\".')}}c.setExtensions(i),c.setPlugins(a),c.parse(s,n)}parseAsync(t,e){let s=this;return new Promise(function(n,r){s.parse(t,e,n,r)})}};function kt(){let f={};return{get:function(t){return f[t]},add:function(t,e){f[t]=e},remove:function(t){delete f[t]},removeAll:function(){f={}}}}function y(f,t,e){let s=f.json.materials[t];return s.extensions&&s.extensions[e]?s.extensions[e]:null}var g={KHR_BINARY_GLTF:\"KHR_binary_glTF\",KHR_DRACO_MESH_COMPRESSION:\"KHR_draco_mesh_compression\",KHR_LIGHTS_PUNCTUAL:\"KHR_lights_punctual\",KHR_MATERIALS_CLEARCOAT:\"KHR_materials_clearcoat\",KHR_MATERIALS_DISPERSION:\"KHR_materials_dispersion\",KHR_MATERIALS_IOR:\"KHR_materials_ior\",KHR_MATERIALS_SHEEN:\"KHR_materials_sheen\",KHR_MATERIALS_SPECULAR:\"KHR_materials_specular\",KHR_MATERIALS_TRANSMISSION:\"KHR_materials_transmission\",KHR_MATERIALS_IRIDESCENCE:\"KHR_materials_iridescence\",KHR_MATERIALS_ANISOTROPY:\"KHR_materials_anisotropy\",KHR_MATERIALS_UNLIT:\"KHR_materials_unlit\",KHR_MATERIALS_VOLUME:\"KHR_materials_volume\",KHR_TEXTURE_BASISU:\"KHR_texture_basisu\",KHR_TEXTURE_TRANSFORM:\"KHR_texture_transform\",KHR_MESH_QUANTIZATION:\"KHR_mesh_quantization\",KHR_MATERIALS_EMISSIVE_STRENGTH:\"KHR_materials_emissive_strength\",EXT_MATERIALS_BUMP:\"EXT_materials_bump\",EXT_TEXTURE_WEBP:\"EXT_texture_webp\",EXT_TEXTURE_AVIF:\"EXT_texture_avif\",EXT_MESHOPT_COMPRESSION:\"EXT_meshopt_compression\",KHR_MESHOPT_COMPRESSION:\"KHR_meshopt_compression\",EXT_MESH_GPU_INSTANCING:\"EXT_mesh_gpu_instancing\"},te=class{constructor(t){this.parser=t,this.name=g.KHR_LIGHTS_PUNCTUAL,this.cache={refs:{},uses:{}}}_markDefs(){let t=this.parser,e=this.parser.json.nodes||[];for(let s=0,n=e.length;s<n;s++){let r=e[s];r.extensions&&r.extensions[this.name]&&r.extensions[this.name].light!==void 0&&t._addNodeRef(this.cache,r.extensions[this.name].light)}}_loadLight(t){let e=this.parser,s=\"light:\"+t,n=e.cache.get(s);if(n)return n;let r=e.json,o=((r.extensions&&r.extensions[this.name]||{}).lights||[])[t],c,l=new v(16777215);o.color!==void 0&&l.setRGB(o.color[0],o.color[1],o.color[2],I);let u=o.range!==void 0?o.range:0;switch(o.type){case\"directional\":c=new tt(l),c.target.position.set(0,0,-1),c.add(c.target);break;case\"point\":c=new wt(l),c.distance=u;break;case\"spot\":c=new Lt(l),c.distance=u,o.spot=o.spot||{},o.spot.innerConeAngle=o.spot.innerConeAngle!==void 0?o.spot.innerConeAngle:0,o.spot.outerConeAngle=o.spot.outerConeAngle!==void 0?o.spot.outerConeAngle:Math.PI/4,c.angle=o.spot.outerConeAngle,c.penumbra=1-o.spot.innerConeAngle/o.spot.outerConeAngle,c.target.position.set(0,0,-1),c.add(c.target);break;default:throw new Error(\"THREE.GLTFLoader: Unexpected light type: \"+o.type)}return c.position.set(0,0,0),M(c,o),o.intensity!==void 0&&(c.intensity=o.intensity),c.name=e.createUniqueName(o.name||\"light_\"+t),n=Promise.resolve(c),e.cache.add(s,n),n}getDependency(t,e){if(t===\"light\")return this._loadLight(e)}createNodeAttachment(t){let e=this,s=this.parser,r=s.json.nodes[t],a=(r.extensions&&r.extensions[this.name]||{}).light;return a===void 0?null:this._loadLight(a).then(function(o){return s._getNodeRef(e.cache,a,o)})}},ne=class{constructor(){this.name=g.KHR_MATERIALS_UNLIT}getMaterialType(){return D}extendParams(t,e,s){let n=[];t.color=new v(1,1,1),t.opacity=1;let r=e.pbrMetallicRoughness;if(r){if(Array.isArray(r.baseColorFactor)){let i=r.baseColorFactor;t.color.setRGB(i[0],i[1],i[2],I),t.opacity=i[3]}r.baseColorTexture!==void 0&&n.push(s.assignTexture(t,\"map\",r.baseColorTexture,U))}return Promise.all(n)}},se=class{constructor(t){this.parser=t,this.name=g.KHR_MATERIALS_EMISSIVE_STRENGTH}extendMaterialParams(t,e){let s=y(this.parser,t,this.name);return s===null||s.emissiveStrength!==void 0&&(e.emissiveIntensity=s.emissiveStrength),Promise.resolve()}},re=class{constructor(t){this.parser=t,this.name=g.KHR_MATERIALS_CLEARCOAT}getMaterialType(t){return y(this.parser,t,this.name)!==null?S:null}extendMaterialParams(t,e){let s=y(this.parser,t,this.name);if(s===null)return Promise.resolve();let n=[];if(s.clearcoatFactor!==void 0&&(e.clearcoat=s.clearcoatFactor),s.clearcoatTexture!==void 0&&n.push(this.parser.assignTexture(e,\"clearcoatMap\",s.clearcoatTexture)),s.clearcoatRoughnessFactor!==void 0&&(e.clearcoatRoughness=s.clearcoatRoughnessFactor),s.clearcoatRoughnessTexture!==void 0&&n.push(this.parser.assignTexture(e,\"clearcoatRoughnessMap\",s.clearcoatRoughnessTexture)),s.clearcoatNormalTexture!==void 0&&(n.push(this.parser.assignTexture(e,\"clearcoatNormalMap\",s.clearcoatNormalTexture)),s.clearcoatNormalTexture.scale!==void 0)){let r=s.clearcoatNormalTexture.scale;e.clearcoatNormalScale=new Xe(r,r)}return Promise.all(n)}},ie=class{constructor(t){this.parser=t,this.name=g.KHR_MATERIALS_DISPERSION}getMaterialType(t){return y(this.parser,t,this.name)!==null?S:null}extendMaterialParams(t,e){let s=y(this.parser,t,this.name);return s===null||(e.dispersion=s.dispersion!==void 0?s.dispersion:0),Promise.resolve()}},oe=class{constructor(t){this.parser=t,this.name=g.KHR_MATERIALS_IRIDESCENCE}getMaterialType(t){return y(this.parser,t,this.name)!==null?S:null}extendMaterialParams(t,e){let s=y(this.parser,t,this.name);if(s===null)return Promise.resolve();let n=[];return s.iridescenceFactor!==void 0&&(e.iridescence=s.iridescenceFactor),s.iridescenceTexture!==void 0&&n.push(this.parser.assignTexture(e,\"iridescenceMap\",s.iridescenceTexture)),s.iridescenceIor!==void 0&&(e.iridescenceIOR=s.iridescenceIor),e.iridescenceThicknessRange===void 0&&(e.iridescenceThicknessRange=[100,400]),s.iridescenceThicknessMinimum!==void 0&&(e.iridescenceThicknessRange[0]=s.iridescenceThicknessMinimum),s.iridescenceThicknessMaximum!==void 0&&(e.iridescenceThicknessRange[1]=s.iridescenceThicknessMaximum),s.iridescenceThicknessTexture!==void 0&&n.push(this.parser.assignTexture(e,\"iridescenceThicknessMap\",s.iridescenceThicknessTexture)),Promise.all(n)}},ae=class{constructor(t){this.parser=t,this.name=g.KHR_MATERIALS_SHEEN}getMaterialType(t){return y(this.parser,t,this.name)!==null?S:null}extendMaterialParams(t,e){let s=y(this.parser,t,this.name);if(s===null)return Promise.resolve();let n=[];if(e.sheenColor=new v(0,0,0),e.sheenRoughness=0,e.sheen=1,s.sheenColorFactor!==void 0){let r=s.sheenColorFactor;e.sheenColor.setRGB(r[0],r[1],r[2],I)}return s.sheenRoughnessFactor!==void 0&&(e.sheenRoughness=s.sheenRoughnessFactor),s.sheenColorTexture!==void 0&&n.push(this.parser.assignTexture(e,\"sheenColorMap\",s.sheenColorTexture,U)),s.sheenRoughnessTexture!==void 0&&n.push(this.parser.assignTexture(e,\"sheenRoughnessMap\",s.sheenRoughnessTexture)),Promise.all(n)}},ce=class{constructor(t){this.parser=t,this.name=g.KHR_MATERIALS_TRANSMISSION}getMaterialType(t){return y(this.parser,t,this.name)!==null?S:null}extendMaterialParams(t,e){let s=y(this.parser,t,this.name);if(s===null)return Promise.resolve();let n=[];return s.transmissionFactor!==void 0&&(e.transmission=s.transmissionFactor),s.transmissionTexture!==void 0&&n.push(this.parser.assignTexture(e,\"transmissionMap\",s.transmissionTexture)),Promise.all(n)}},ue=class{constructor(t){this.parser=t,this.name=g.KHR_MATERIALS_VOLUME}getMaterialType(t){return y(this.parser,t,this.name)!==null?S:null}extendMaterialParams(t,e){let s=y(this.parser,t,this.name);if(s===null)return Promise.resolve();let n=[];e.thickness=s.thicknessFactor!==void 0?s.thicknessFactor:0,s.thicknessTexture!==void 0&&n.push(this.parser.assignTexture(e,\"thicknessMap\",s.thicknessTexture)),e.attenuationDistance=s.attenuationDistance||1/0;let r=s.attenuationColor||[1,1,1];return e.attenuationColor=new v().setRGB(r[0],r[1],r[2],I),Promise.all(n)}},le=class{constructor(t){this.parser=t,this.name=g.KHR_MATERIALS_IOR}getMaterialType(t){return y(this.parser,t,this.name)!==null?S:null}extendMaterialParams(t,e){let s=y(this.parser,t,this.name);return s===null||(e.ior=s.ior!==void 0?s.ior:1.5),Promise.resolve()}},fe=class{constructor(t){this.parser=t,this.name=g.KHR_MATERIALS_SPECULAR}getMaterialType(t){return y(this.parser,t,this.name)!==null?S:null}extendMaterialParams(t,e){let s=y(this.parser,t,this.name);if(s===null)return Promise.resolve();let n=[];e.specularIntensity=s.specularFactor!==void 0?s.specularFactor:1,s.specularTexture!==void 0&&n.push(this.parser.assignTexture(e,\"specularIntensityMap\",s.specularTexture));let r=s.specularColorFactor||[1,1,1];return e.specularColor=new v().setRGB(r[0],r[1],r[2],I),s.specularColorTexture!==void 0&&n.push(this.parser.assignTexture(e,\"specularColorMap\",s.specularColorTexture,U)),Promise.all(n)}},de=class{constructor(t){this.parser=t,this.name=g.EXT_MATERIALS_BUMP}getMaterialType(t){return y(this.parser,t,this.name)!==null?S:null}extendMaterialParams(t,e){let s=y(this.parser,t,this.name);if(s===null)return Promise.resolve();let n=[];return e.bumpScale=s.bumpFactor!==void 0?s.bumpFactor:1,s.bumpTexture!==void 0&&n.push(this.parser.assignTexture(e,\"bumpMap\",s.bumpTexture)),Promise.all(n)}},he=class{constructor(t){this.parser=t,this.name=g.KHR_MATERIALS_ANISOTROPY}getMaterialType(t){return y(this.parser,t,this.name)!==null?S:null}extendMaterialParams(t,e){let s=y(this.parser,t,this.name);if(s===null)return Promise.resolve();let n=[];return s.anisotropyStrength!==void 0&&(e.anisotropy=s.anisotropyStrength),s.anisotropyRotation!==void 0&&(e.anisotropyRotation=s.anisotropyRotation),s.anisotropyTexture!==void 0&&n.push(this.parser.assignTexture(e,\"anisotropyMap\",s.anisotropyTexture)),Promise.all(n)}},pe=class{constructor(t){this.parser=t,this.name=g.KHR_TEXTURE_BASISU}loadTexture(t){let e=this.parser,s=e.json,n=s.textures[t];if(!n.extensions||!n.extensions[this.name])return null;let r=n.extensions[this.name],i=e.options.ktx2Loader;if(!i){if(s.extensionsRequired&&s.extensionsRequired.indexOf(this.name)>=0)throw new Error(\"THREE.GLTFLoader: setKTX2Loader must be called before loading KTX2 textures\");return null}return e.loadTextureImage(t,r.source,i)}},me=class{constructor(t){this.parser=t,this.name=g.EXT_TEXTURE_WEBP}loadTexture(t){let e=this.name,s=this.parser,n=s.json,r=n.textures[t];if(!r.extensions||!r.extensions[e])return null;let i=r.extensions[e],a=n.images[i.source],o=s.textureLoader;if(a.uri){let c=s.options.manager.getHandler(a.uri);c!==null&&(o=c)}return s.loadTextureImage(t,i.source,o)}},ge=class{constructor(t){this.parser=t,this.name=g.EXT_TEXTURE_AVIF}loadTexture(t){let e=this.name,s=this.parser,n=s.json,r=n.textures[t];if(!r.extensions||!r.extensions[e])return null;let i=r.extensions[e],a=n.images[i.source],o=s.textureLoader;if(a.uri){let c=s.options.manager.getHandler(a.uri);c!==null&&(o=c)}return s.loadTextureImage(t,i.source,o)}},G=class{constructor(t,e){this.name=e,this.parser=t}loadBufferView(t){let e=this.parser.json,s=e.bufferViews[t];if(s.extensions&&s.extensions[this.name]){let n=s.extensions[this.name],r=this.parser.getDependency(\"buffer\",n.buffer),i=this.parser.options.meshoptDecoder;if(!i||!i.supported){if(e.extensionsRequired&&e.extensionsRequired.indexOf(this.name)>=0)throw new Error(\"THREE.GLTFLoader: setMeshoptDecoder must be called before loading compressed files\");return null}return r.then(function(a){let o=n.byteOffset||0,c=n.byteLength||0,l=n.count,u=n.byteStride,d=new Uint8Array(a,o,c);return i.decodeGltfBufferAsync?i.decodeGltfBufferAsync(l,u,d,n.mode,n.filter).then(function(h){return h.buffer}):i.ready.then(function(){let h=new ArrayBuffer(l*u);return i.decodeGltfBuffer(new Uint8Array(h),l,u,d,n.mode,n.filter),h})})}else return null}},Te=class{constructor(t){this.name=g.EXT_MESH_GPU_INSTANCING,this.parser=t}createNodeMesh(t){let e=this.parser.json,s=e.nodes[t];if(!s.extensions||!s.extensions[this.name]||s.mesh===void 0)return null;let n=e.meshes[s.mesh];for(let c of n.primitives)if(c.mode!==E.TRIANGLES&&c.mode!==E.TRIANGLE_STRIP&&c.mode!==E.TRIANGLE_FAN&&c.mode!==void 0)return null;let i=s.extensions[this.name].attributes,a=[],o={};for(let c in i)a.push(this.parser.getDependency(\"accessor\",i[c]).then(l=>(o[c]=l,o[c])));return a.length<1?null:(a.push(this.parser.createNodeMesh(t)),Promise.all(a).then(c=>{let l=c.pop(),u=l.isGroup?l.children:[l],d=c[0].count,h=[];for(let p of u){let A=new K,m=new C,T=new je,b=new C(1,1,1),x=new it(p.geometry,p.material,d);for(let R=0;R<d;R++)o.TRANSLATION&&m.fromBufferAttribute(o.TRANSLATION,R),o.ROTATION&&T.fromBufferAttribute(o.ROTATION,R),o.SCALE&&b.fromBufferAttribute(o.SCALE,R),x.setMatrixAt(R,A.compose(m,T,b));for(let R in o)if(R===\"_COLOR_0\"){let w=o[R];x.instanceColor=new Pt(w.array,w.itemSize,w.normalized)}else R!==\"TRANSLATION\"&&R!==\"ROTATION\"&&R!==\"SCALE\"&&p.geometry.setAttribute(R,o[R]);Ve.prototype.copy.call(x,p),this.parser.assignFinalMaterial(x),h.push(x)}return l.isGroup?(l.clear(),l.add(...h),l):h[0]}))}},We=\"glTF\",H=12,ke={JSON:1313821514,BIN:5130562},Ae=class{constructor(t){this.name=g.KHR_BINARY_GLTF,this.content=null,this.body=null;let e=new DataView(t,0,H),s=new TextDecoder;if(this.header={magic:s.decode(new Uint8Array(t.slice(0,4))),version:e.getUint32(4,!0),length:e.getUint32(8,!0)},this.header.magic!==We)throw new Error(\"THREE.GLTFLoader: Unsupported glTF-Binary header.\");if(this.header.version<2)throw new Error(\"THREE.GLTFLoader: Legacy binary file detected.\");let n=this.header.length-H,r=new DataView(t,H),i=0;for(;i<n;){let a=r.getUint32(i,!0);i+=4;let o=r.getUint32(i,!0);if(i+=4,o===ke.JSON){let c=new Uint8Array(t,H+i,a);this.content=s.decode(c)}else if(o===ke.BIN){let c=H+i;this.body=t.slice(c,c+a)}i+=a}if(this.content===null)throw new Error(\"THREE.GLTFLoader: JSON content not found.\")}},Re=class{constructor(t,e){if(!e)throw new Error(\"THREE.GLTFLoader: No DRACOLoader instance provided.\");this.name=g.KHR_DRACO_MESH_COMPRESSION,this.json=t,this.dracoLoader=e,this.dracoLoader.preload()}decodePrimitive(t,e){let s=this.json,n=this.dracoLoader,r=t.extensions[this.name].bufferView,i=t.extensions[this.name].attributes,a={},o={},c={};for(let l in i){let u=we[l]||l.toLowerCase();a[u]=i[l]}for(let l in t.attributes){let u=we[l]||l.toLowerCase();if(i[l]!==void 0){let d=s.accessors[t.attributes[l]],h=k[d.componentType];c[u]=h.name,o[u]=d.normalized===!0}}return e.getDependency(\"bufferView\",r).then(function(l){return new Promise(function(u,d){n.decodeDracoFile(l,function(h){for(let p in h.attributes){let A=h.attributes[p],m=o[p];m!==void 0&&(A.normalized=m)}u(h)},a,c,I,d)})})}},xe=class{constructor(){this.name=g.KHR_TEXTURE_TRANSFORM}extendTexture(t,e){return(e.texCoord===void 0||e.texCoord===t.channel)&&e.offset===void 0&&e.rotation===void 0&&e.scale===void 0||(t=t.clone(),e.texCoord!==void 0&&(t.channel=e.texCoord),e.offset!==void 0&&t.offset.fromArray(e.offset),e.rotation!==void 0&&(t.rotation=e.rotation),e.scale!==void 0&&t.repeat.fromArray(e.scale),t.needsUpdate=!0),t}},be=class{constructor(){this.name=g.KHR_MESH_QUANTIZATION}},z=class extends ct{constructor(t,e,s,n){super(t,e,s,n)}copySampleValue_(t){let e=this.resultBuffer,s=this.sampleValues,n=this.valueSize,r=t*n*3+n;for(let i=0;i!==n;i++)e[i]=s[r+i];return e}interpolate_(t,e,s,n){let r=this.resultBuffer,i=this.sampleValues,a=this.valueSize,o=a*2,c=a*3,l=n-e,u=(s-e)/l,d=u*u,h=d*u,p=t*c,A=p-c,m=-2*h+3*d,T=h-d,b=1-m,x=T-d+u;for(let R=0;R!==a;R++){let w=i[A+R+a],N=i[A+R+o]*l,_=i[p+R+a],B=i[p+R]*l;r[R]=b*w+x*N+m*_+T*B}return r}},Bt=new je,ye=class extends z{interpolate_(t,e,s,n){let r=super.interpolate_(t,e,s,n);return Bt.fromArray(r).normalize().toArray(r),r}},E={FLOAT:5126,FLOAT_MAT3:35675,FLOAT_MAT4:35676,FLOAT_VEC2:35664,FLOAT_VEC3:35665,FLOAT_VEC4:35666,LINEAR:9729,REPEAT:10497,SAMPLER_2D:35678,POINTS:0,LINES:1,LINE_LOOP:2,LINE_STRIP:3,TRIANGLES:4,TRIANGLE_STRIP:5,TRIANGLE_FAN:6,UNSIGNED_BYTE:5121,UNSIGNED_SHORT:5123},k={5120:Int8Array,5121:Uint8Array,5122:Int16Array,5123:Uint16Array,5125:Uint32Array,5126:Float32Array},Be={9728:ze,9729:$,9984:xt,9985:pt,9986:Rt,9987:Ke},He={33071:et,33648:At,10497:ee},Z={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},we={POSITION:\"position\",NORMAL:\"normal\",TANGENT:\"tangent\",TEXCOORD_0:\"uv\",TEXCOORD_1:\"uv1\",TEXCOORD_2:\"uv2\",TEXCOORD_3:\"uv3\",COLOR_0:\"color\",WEIGHTS_0:\"skinWeight\",JOINTS_0:\"skinIndex\"},L={scale:\"scale\",translation:\"position\",rotation:\"quaternion\",weights:\"morphTargetInfluences\"},Ht={CUBICSPLINE:void 0,LINEAR:Ue,STEP:ut},Q={OPAQUE:\"OPAQUE\",MASK:\"MASK\",BLEND:\"BLEND\"};function Dt(f){return f.DefaultMaterial===void 0&&(f.DefaultMaterial=new Ge({color:16777215,emissive:0,metalness:1,roughness:1,transparent:!1,depthTest:!0,side:st})),f.DefaultMaterial}function O(f,t,e){for(let s in e.extensions)f[s]===void 0&&(t.userData.gltfExtensions=t.userData.gltfExtensions||{},t.userData.gltfExtensions[s]=e.extensions[s])}function M(f,t){t.extras!==void 0&&(typeof t.extras==\"object\"?Object.assign(f.userData,t.extras):console.warn(\"THREE.GLTFLoader: Ignoring primitive type .extras, \"+t.extras))}function Ft(f,t,e){let s=!1,n=!1,r=!1;for(let c=0,l=t.length;c<l;c++){let u=t[c];if(u.POSITION!==void 0&&(s=!0),u.NORMAL!==void 0&&(n=!0),u.COLOR_0!==void 0&&(r=!0),s&&n&&r)break}if(!s&&!n&&!r)return Promise.resolve(f);let i=[],a=[],o=[];for(let c=0,l=t.length;c<l;c++){let u=t[c];if(s){let d=u.POSITION!==void 0?e.getDependency(\"accessor\",u.POSITION):f.attributes.position;i.push(d)}if(n){let d=u.NORMAL!==void 0?e.getDependency(\"accessor\",u.NORMAL):f.attributes.normal;a.push(d)}if(r){let d=u.COLOR_0!==void 0?e.getDependency(\"accessor\",u.COLOR_0):f.attributes.color;o.push(d)}}return Promise.all([Promise.all(i),Promise.all(a),Promise.all(o)]).then(function(c){let l=c[0],u=c[1],d=c[2];return s&&(f.morphAttributes.position=l),n&&(f.morphAttributes.normal=u),r&&(f.morphAttributes.color=d),f.morphTargetsRelative=!0,f})}function Ut(f,t){if(f.updateMorphTargets(),t.weights!==void 0)for(let e=0,s=t.weights.length;e<s;e++)f.morphTargetInfluences[e]=t.weights[e];if(t.extras&&Array.isArray(t.extras.targetNames)){let e=t.extras.targetNames;if(f.morphTargetInfluences.length===e.length){f.morphTargetDictionary={};for(let s=0,n=e.length;s<n;s++)f.morphTargetDictionary[e[s]]=s}else console.warn(\"THREE.GLTFLoader: Invalid extras.targetNames length. Ignoring names.\")}}function Kt(f){let t,e=f.extensions&&f.extensions[g.KHR_DRACO_MESH_COMPRESSION];if(e?t=\"draco:\"+e.bufferView+\":\"+e.indices+\":\"+J(e.attributes):t=f.indices+\":\"+J(f.attributes)+\":\"+f.mode,f.targets!==void 0)for(let s=0,n=f.targets.length;s<n;s++)t+=\":\"+J(f.targets[s]);return t}function J(f){let t=\"\",e=Object.keys(f).sort();for(let s=0,n=e.length;s<n;s++)t+=e[s]+\":\"+f[e[s]]+\";\";return t}function Ee(f){switch(f){case Int8Array:return 1/127;case Uint8Array:return 1/255;case Int16Array:return 1/32767;case Uint16Array:return 1/65535;default:throw new Error(\"THREE.GLTFLoader: Unsupported normalized accessor component type.\")}}function Gt(f){return f.search(/\\.jpe?g($|\\?)/i)>0||f.search(/^data\\:image\\/jpeg/)===0?\"image/jpeg\":f.search(/\\.webp($|\\?)/i)>0||f.search(/^data\\:image\\/webp/)===0?\"image/webp\":f.search(/\\.ktx2($|\\?)/i)>0||f.search(/^data\\:image\\/ktx2/)===0?\"image/ktx2\":\"image/png\"}var zt=new K,_e=class{constructor(t={},e={}){this.json=t,this.extensions={},this.plugins={},this.options=e,this.cache=new kt,this.associations=new Map,this.primitiveCache={},this.nodeCache={},this.meshCache={refs:{},uses:{}},this.cameraCache={refs:{},uses:{}},this.lightCache={refs:{},uses:{}},this.sourceCache={},this.textureCache={},this.nodeNamesUsed={};let s=!1,n=-1,r=!1,i=-1;if(typeof navigator<\"u\"&&typeof navigator.userAgent<\"u\"){let a=navigator.userAgent;s=/^((?!chrome|android).)*safari/i.test(a)===!0;let o=a.match(/Version\\/(\\d+)/);n=s&&o?parseInt(o[1],10):-1,r=a.indexOf(\"Firefox\")>-1,i=r?a.match(/Firefox\\/([0-9]+)\\./)[1]:-1}typeof createImageBitmap>\"u\"||s&&n<17||r&&i<98?this.textureLoader=new Ot(this.options.manager):this.textureLoader=new rt(this.options.manager),this.textureLoader.setCrossOrigin(this.options.crossOrigin),this.textureLoader.setRequestHeader(this.options.requestHeader),this.fileLoader=new Fe(this.options.manager),this.fileLoader.setResponseType(\"arraybuffer\"),this.options.crossOrigin===\"use-credentials\"&&this.fileLoader.setWithCredentials(!0)}setExtensions(t){this.extensions=t}setPlugins(t){this.plugins=t}parse(t,e){let s=this,n=this.json,r=this.extensions;this.cache.removeAll(),this.nodeCache={},this._invokeAll(function(i){return i._markDefs&&i._markDefs()}),Promise.all(this._invokeAll(function(i){return i.beforeRoot&&i.beforeRoot()})).then(function(){return Promise.all([s.getDependencies(\"scene\"),s.getDependencies(\"animation\"),s.getDependencies(\"camera\")])}).then(function(i){let a={scene:i[0][n.scene||0],scenes:i[0],animations:i[1],cameras:i[2],asset:n.asset,parser:s,userData:{}};return O(r,a,n),M(a,n),Promise.all(s._invokeAll(function(o){return o.afterRoot&&o.afterRoot(a)})).then(function(){for(let o of a.scenes)o.updateMatrixWorld();t(a)})}).catch(e)}_markDefs(){let t=this.json.nodes||[],e=this.json.skins||[],s=this.json.meshes||[];for(let n=0,r=e.length;n<r;n++){let i=e[n].joints;for(let a=0,o=i.length;a<o;a++)t[i[a]].isBone=!0}for(let n=0,r=t.length;n<r;n++){let i=t[n];i.mesh!==void 0&&(this._addNodeRef(this.meshCache,i.mesh),i.skin!==void 0&&(s[i.mesh].isSkinnedMesh=!0)),i.camera!==void 0&&this._addNodeRef(this.cameraCache,i.camera)}}_addNodeRef(t,e){e!==void 0&&(t.refs[e]===void 0&&(t.refs[e]=t.uses[e]=0),t.refs[e]++)}_getNodeRef(t,e,s){if(t.refs[e]<=1)return s;let n=s.clone(),r=(i,a)=>{let o=this.associations.get(i);o!=null&&this.associations.set(a,o);for(let[c,l]of i.children.entries())r(l,a.children[c])};return r(s,n),n.name+=\"_instance_\"+t.uses[e]++,n}_invokeOne(t){let e=Object.values(this.plugins);e.push(this);for(let s=0;s<e.length;s++){let n=t(e[s]);if(n)return n}return null}_invokeAll(t){let e=Object.values(this.plugins);e.unshift(this);let s=[];for(let n=0;n<e.length;n++){let r=t(e[n]);r&&s.push(r)}return s}getDependency(t,e){let s=t+\":\"+e,n=this.cache.get(s);if(!n){switch(t){case\"scene\":n=this.loadScene(e);break;case\"node\":n=this._invokeOne(function(r){return r.loadNode&&r.loadNode(e)});break;case\"mesh\":n=this._invokeOne(function(r){return r.loadMesh&&r.loadMesh(e)});break;case\"accessor\":n=this.loadAccessor(e);break;case\"bufferView\":n=this._invokeOne(function(r){return r.loadBufferView&&r.loadBufferView(e)});break;case\"buffer\":n=this.loadBuffer(e);break;case\"material\":n=this._invokeOne(function(r){return r.loadMaterial&&r.loadMaterial(e)});break;case\"texture\":n=this._invokeOne(function(r){return r.loadTexture&&r.loadTexture(e)});break;case\"skin\":n=this.loadSkin(e);break;case\"animation\":n=this._invokeOne(function(r){return r.loadAnimation&&r.loadAnimation(e)});break;case\"camera\":n=this.loadCamera(e);break;default:if(n=this._invokeOne(function(r){return r!=this&&r.getDependency&&r.getDependency(t,e)}),!n)throw new Error(\"Unknown type: \"+t);break}this.cache.add(s,n)}return n}getDependencies(t){let e=this.cache.get(t);if(!e){let s=this,n=this.json[t+(t===\"mesh\"?\"es\":\"s\")]||[];e=Promise.all(n.map(function(r,i){return s.getDependency(t,i)})),this.cache.add(t,e)}return e}loadBuffer(t){let e=this.json.buffers[t],s=this.fileLoader;if(e.type&&e.type!==\"arraybuffer\")throw new Error(\"THREE.GLTFLoader: \"+e.type+\" buffer type is not supported.\");if(e.uri===void 0&&t===0)return Promise.resolve(this.extensions[g.KHR_BINARY_GLTF].body);let n=this.options;return new Promise(function(r,i){s.load(F.resolveURL(e.uri,n.path),r,void 0,function(){i(new Error('THREE.GLTFLoader: Failed to load buffer \"'+e.uri+'\".'))})})}loadBufferView(t){let e=this.json.bufferViews[t];return this.getDependency(\"buffer\",e.buffer).then(function(s){let n=e.byteLength||0,r=e.byteOffset||0;return s.slice(r,r+n)})}loadAccessor(t){let e=this,s=this.json,n=this.json.accessors[t];if(n.bufferView===void 0&&n.sparse===void 0){let i=Z[n.type],a=k[n.componentType],o=n.normalized===!0,c=new a(n.count*i);return Promise.resolve(new W(c,i,o))}let r=[];return n.bufferView!==void 0?r.push(this.getDependency(\"bufferView\",n.bufferView)):r.push(null),n.sparse!==void 0&&(r.push(this.getDependency(\"bufferView\",n.sparse.indices.bufferView)),r.push(this.getDependency(\"bufferView\",n.sparse.values.bufferView))),Promise.all(r).then(function(i){let a=i[0],o=Z[n.type],c=k[n.componentType],l=c.BYTES_PER_ELEMENT,u=l*o,d=n.byteOffset||0,h=n.bufferView!==void 0?s.bufferViews[n.bufferView].byteStride:void 0,p=n.normalized===!0,A,m;if(h&&h!==u){let T=Math.floor(d/h),b=\"InterleavedBuffer:\"+n.bufferView+\":\"+n.componentType+\":\"+T+\":\"+n.count,x=e.cache.get(b);x||(A=new c(a,T*h,n.count*h/l),x=new ot(A,h/l),e.cache.add(b,x)),m=new at(x,o,d%h/l,p)}else a===null?A=new c(n.count*o):A=new c(a,d,n.count*o),m=new W(A,o,p);if(n.sparse!==void 0){let T=Z.SCALAR,b=k[n.sparse.indices.componentType],x=n.sparse.indices.byteOffset||0,R=n.sparse.values.byteOffset||0,w=new b(i[1],x,n.sparse.count*T),N=new c(i[2],R,n.sparse.count*o);a!==null&&(m=new W(m.array.slice(),m.itemSize,m.normalized)),m.normalized=!1;for(let _=0,B=w.length;_<B;_++){let P=w[_];if(m.setX(P,N[_*o]),o>=2&&m.setY(P,N[_*o+1]),o>=3&&m.setZ(P,N[_*o+2]),o>=4&&m.setW(P,N[_*o+3]),o>=5)throw new Error(\"THREE.GLTFLoader: Unsupported itemSize in sparse BufferAttribute.\")}m.normalized=p}return m})}loadTexture(t){let e=this.json,s=this.options,r=e.textures[t].source,i=e.images[r],a=this.textureLoader;if(i.uri){let o=s.manager.getHandler(i.uri);o!==null&&(a=o)}return this.loadTextureImage(t,r,a)}loadTextureImage(t,e,s){let n=this,r=this.json,i=r.textures[t],a=r.images[e],o=(a.uri||a.bufferView)+\":\"+i.sampler;if(this.textureCache[o])return this.textureCache[o];let c=this.loadImageSource(e,s).then(function(l){l.flipY=!1,l.name=i.name||a.name||\"\",l.name===\"\"&&typeof a.uri==\"string\"&&a.uri.startsWith(\"data:image/\")===!1&&(l.name=a.uri);let d=(r.samplers||{})[i.sampler]||{};return l.magFilter=Be[d.magFilter]||$,l.minFilter=Be[d.minFilter]||Ke,l.wrapS=He[d.wrapS]||ee,l.wrapT=He[d.wrapT]||ee,l.generateMipmaps=!l.isCompressedTexture&&l.minFilter!==ze&&l.minFilter!==$,n.associations.set(l,{textures:t}),l}).catch(function(){return null});return this.textureCache[o]=c,c}loadImageSource(t,e){let s=this,n=this.json,r=this.options;if(this.sourceCache[t]!==void 0)return this.sourceCache[t].then(u=>u.clone());let i=n.images[t],a=self.URL||self.webkitURL,o=i.uri||\"\",c=!1;if(i.bufferView!==void 0)o=s.getDependency(\"bufferView\",i.bufferView).then(function(u){c=!0;let d=new Blob([u],{type:i.mimeType});return o=a.createObjectURL(d),o});else if(i.uri===void 0)throw new Error(\"THREE.GLTFLoader: Image \"+t+\" is missing URI and bufferView\");let l=Promise.resolve(o).then(function(u){return new Promise(function(d,h){let p=d;e.isImageBitmapLoader===!0&&(p=function(A){let m=new Ce(A);m.needsUpdate=!0,d(m)}),e.load(F.resolveURL(u,r.path),p,void 0,h)})}).then(function(u){return c===!0&&a.revokeObjectURL(o),M(u,i),u.userData.mimeType=i.mimeType||Gt(i.uri),u}).catch(function(u){throw console.error(\"THREE.GLTFLoader: Couldn't load texture\",o),u});return this.sourceCache[t]=l,l}assignTexture(t,e,s,n){let r=this;return this.getDependency(\"texture\",s.index).then(function(i){if(!i)return null;if(s.texCoord!==void 0&&s.texCoord>0&&(i=i.clone(),i.channel=s.texCoord),r.extensions[g.KHR_TEXTURE_TRANSFORM]){let a=s.extensions!==void 0?s.extensions[g.KHR_TEXTURE_TRANSFORM]:void 0;if(a){let o=r.associations.get(i);i=r.extensions[g.KHR_TEXTURE_TRANSFORM].extendTexture(i,a),r.associations.set(i,o)}}return n!==void 0&&(i.colorSpace=n),t[e]=i,i})}assignFinalMaterial(t){let e=t.geometry,s=t.material,n=e.attributes.tangent===void 0,r=e.attributes.color!==void 0,i=e.attributes.normal===void 0;if(t.isPoints){let a=\"PointsMaterial:\"+s.uuid,o=this.cache.get(a);o||(o=new _t,Y.prototype.copy.call(o,s),o.color.copy(s.color),o.map=s.map,o.sizeAttenuation=!1,this.cache.add(a,o)),s=o}else if(t.isLine){let a=\"LineBasicMaterial:\"+s.uuid,o=this.cache.get(a);o||(o=new ft,Y.prototype.copy.call(o,s),o.color.copy(s.color),o.map=s.map,this.cache.add(a,o)),s=o}if(n||r||i){let a=\"ClonedMaterial:\"+s.uuid+\":\";n&&(a+=\"derivative-tangents:\"),r&&(a+=\"vertex-colors:\"),i&&(a+=\"flat-shading:\");let o=this.cache.get(a);o||(o=s.clone(),r&&(o.vertexColors=!0),i&&(o.flatShading=!0),n&&(o.normalScale&&(o.normalScale.y*=-1),o.clearcoatNormalScale&&(o.clearcoatNormalScale.y*=-1)),this.cache.add(a,o),this.associations.set(o,this.associations.get(s))),s=o}t.material=s}getMaterialType(){return Ge}loadMaterial(t){let e=this,s=this.json,n=this.extensions,r=s.materials[t],i,a={},o=r.extensions||{},c=[];if(o[g.KHR_MATERIALS_UNLIT]){let u=n[g.KHR_MATERIALS_UNLIT];i=u.getMaterialType(),c.push(u.extendParams(a,r,e))}else{let u=r.pbrMetallicRoughness||{};if(a.color=new v(1,1,1),a.opacity=1,Array.isArray(u.baseColorFactor)){let d=u.baseColorFactor;a.color.setRGB(d[0],d[1],d[2],I),a.opacity=d[3]}u.baseColorTexture!==void 0&&c.push(e.assignTexture(a,\"map\",u.baseColorTexture,U)),a.metalness=u.metallicFactor!==void 0?u.metallicFactor:1,a.roughness=u.roughnessFactor!==void 0?u.roughnessFactor:1,u.metallicRoughnessTexture!==void 0&&(c.push(e.assignTexture(a,\"metalnessMap\",u.metallicRoughnessTexture)),c.push(e.assignTexture(a,\"roughnessMap\",u.metallicRoughnessTexture))),i=this._invokeOne(function(d){return d.getMaterialType&&d.getMaterialType(t)}),c.push(Promise.all(this._invokeAll(function(d){return d.extendMaterialParams&&d.extendMaterialParams(t,a)})))}r.doubleSided===!0&&(a.side=nt);let l=r.alphaMode||Q.OPAQUE;if(l===Q.BLEND?(a.transparent=!0,a.depthWrite=!1):(a.transparent=!1,l===Q.MASK&&(a.alphaTest=r.alphaCutoff!==void 0?r.alphaCutoff:.5)),r.normalTexture!==void 0&&i!==D&&(c.push(e.assignTexture(a,\"normalMap\",r.normalTexture)),a.normalScale=new Xe(1,1),r.normalTexture.scale!==void 0)){let u=r.normalTexture.scale;a.normalScale.set(u,u)}if(r.occlusionTexture!==void 0&&i!==D&&(c.push(e.assignTexture(a,\"aoMap\",r.occlusionTexture)),r.occlusionTexture.strength!==void 0&&(a.aoMapIntensity=r.occlusionTexture.strength)),r.emissiveFactor!==void 0&&i!==D){let u=r.emissiveFactor;a.emissive=new v().setRGB(u[0],u[1],u[2],I)}return r.emissiveTexture!==void 0&&i!==D&&c.push(e.assignTexture(a,\"emissiveMap\",r.emissiveTexture,U)),Promise.all(c).then(function(){let u=new i(a);return r.name&&(u.name=r.name),M(u,r),e.associations.set(u,{materials:t}),r.extensions&&O(n,u,r),u})}createUniqueName(t){let e=Mt.sanitizeNodeName(t||\"\");return e in this.nodeNamesUsed?e+\"_\"+ ++this.nodeNamesUsed[e]:(this.nodeNamesUsed[e]=0,e)}loadGeometries(t){let e=this,s=this.extensions,n=this.primitiveCache;function r(a){return s[g.KHR_DRACO_MESH_COMPRESSION].decodePrimitive(a,e).then(function(o){return De(o,a,e)})}let i=[];for(let a=0,o=t.length;a<o;a++){let c=t[a],l=Kt(c),u=n[l];if(u)i.push(u.promise);else{let d;c.extensions&&c.extensions[g.KHR_DRACO_MESH_COMPRESSION]?d=r(c):d=De(new $e,c,e),n[l]={primitive:c,promise:d},i.push(d)}}return Promise.all(i)}loadMesh(t){let e=this,s=this.json,n=this.extensions,r=s.meshes[t],i=r.primitives,a=[];for(let o=0,c=i.length;o<c;o++){let l=i[o].material===void 0?Dt(this.cache):this.getDependency(\"material\",i[o].material);a.push(l)}return a.push(e.loadGeometries(i)),Promise.all(a).then(function(o){let c=o.slice(0,o.length-1),l=o[o.length-1],u=[];for(let h=0,p=l.length;h<p;h++){let A=l[h],m=i[h],T,b=c[h];if(m.mode===E.TRIANGLES||m.mode===E.TRIANGLE_STRIP||m.mode===E.TRIANGLE_FAN||m.mode===void 0)T=r.isSkinnedMesh===!0?new It(A,b):new Tt(A,b),T.isSkinnedMesh===!0&&T.normalizeSkinWeights(),m.mode===E.TRIANGLE_STRIP?T.geometry=X(T.geometry,vt):m.mode===E.TRIANGLE_FAN&&(T.geometry=X(T.geometry,Ct));else if(m.mode===E.LINES)T=new ht(A,b);else if(m.mode===E.LINE_STRIP)T=new lt(A,b);else if(m.mode===E.LINE_LOOP)T=new dt(A,b);else if(m.mode===E.POINTS)T=new Et(A,b);else throw new Error(\"THREE.GLTFLoader: Primitive mode unsupported: \"+m.mode);Object.keys(T.geometry.morphAttributes).length>0&&Ut(T,r),T.name=e.createUniqueName(r.name||\"mesh_\"+t),M(T,r),m.extensions&&O(n,T,m),e.assignFinalMaterial(T),u.push(T)}for(let h=0,p=u.length;h<p;h++)e.associations.set(u[h],{meshes:t,primitives:h});if(u.length===1)return r.extensions&&O(n,u[0],r),u[0];let d=new q;r.extensions&&O(n,d,r),e.associations.set(d,{meshes:t});for(let h=0,p=u.length;h<p;h++)d.add(u[h]);return d})}loadCamera(t){let e,s=this.json.cameras[t],n=s[s.type];if(!n){console.warn(\"THREE.GLTFLoader: Missing camera parameters.\");return}return s.type===\"perspective\"?e=new yt(gt.radToDeg(n.yfov),n.aspectRatio||1,n.znear||1,n.zfar||2e6):s.type===\"orthographic\"&&(e=new bt(-n.xmag,n.xmag,n.ymag,-n.ymag,n.znear,n.zfar)),s.name&&(e.name=this.createUniqueName(s.name)),M(e,s),Promise.resolve(e)}loadSkin(t){let e=this.json.skins[t],s=[];for(let n=0,r=e.joints.length;n<r;n++)s.push(this._loadNodeShallow(e.joints[n]));return e.inverseBindMatrices!==void 0?s.push(this.getDependency(\"accessor\",e.inverseBindMatrices)):s.push(null),Promise.all(s).then(function(n){let r=n.pop(),i=n,a=[],o=[];for(let c=0,l=i.length;c<l;c++){let u=i[c];if(u){a.push(u);let d=new K;r!==null&&d.fromArray(r.array,c*16),o.push(d)}else console.warn('THREE.GLTFLoader: Joint \"%s\" could not be found.',e.joints[c])}return new St(a,o)})}loadAnimation(t){let e=this.json,s=this,n=e.animations[t],r=n.name?n.name:\"animation_\"+t,i=[],a=[],o=[],c=[],l=[];for(let u=0,d=n.channels.length;u<d;u++){let h=n.channels[u],p=n.samplers[h.sampler],A=h.target,m=A.node,T=n.parameters!==void 0?n.parameters[p.input]:p.input,b=n.parameters!==void 0?n.parameters[p.output]:p.output;A.node!==void 0&&(i.push(this.getDependency(\"node\",m)),a.push(this.getDependency(\"accessor\",T)),o.push(this.getDependency(\"accessor\",b)),c.push(p),l.push(A))}return Promise.all([Promise.all(i),Promise.all(a),Promise.all(o),Promise.all(c),Promise.all(l)]).then(function(u){let d=u[0],h=u[1],p=u[2],A=u[3],m=u[4],T=[];for(let x=0,R=d.length;x<R;x++){let w=d[x],N=h[x],_=p[x],B=A[x],P=m[x];if(w===void 0)continue;w.updateMatrix&&w.updateMatrix();let V=s._createAnimationTracks(w,N,_,B,P);if(V)for(let j=0;j<V.length;j++)T.push(V[j])}let b=new Ze(r,void 0,T);return M(b,n),b})}createNodeMesh(t){let e=this.json,s=this,n=e.nodes[t];return n.mesh===void 0?null:s.getDependency(\"mesh\",n.mesh).then(function(r){let i=s._getNodeRef(s.meshCache,n.mesh,r);return n.weights!==void 0&&i.traverse(function(a){if(a.isMesh)for(let o=0,c=n.weights.length;o<c;o++)a.morphTargetInfluences[o]=n.weights[o]}),i})}loadNode(t){let e=this.json,s=this,n=e.nodes[t],r=s._loadNodeShallow(t),i=[],a=n.children||[];for(let c=0,l=a.length;c<l;c++)i.push(s.getDependency(\"node\",a[c]));let o=n.skin===void 0?Promise.resolve(null):s.getDependency(\"skin\",n.skin);return Promise.all([r,Promise.all(i),o]).then(function(c){let l=c[0],u=c[1],d=c[2];d!==null&&l.traverse(function(h){h.isSkinnedMesh&&h.bind(d,zt)});for(let h=0,p=u.length;h<p;h++)l.add(u[h]);if(l.userData.pivot!==void 0&&u.length>0){let h=l.userData.pivot,p=u[0];l.pivot=new C().fromArray(h),l.position.x-=h[0],l.position.y-=h[1],l.position.z-=h[2],p.position.set(0,0,0),delete l.userData.pivot}return l})}_loadNodeShallow(t){let e=this.json,s=this.extensions,n=this;if(this.nodeCache[t]!==void 0)return this.nodeCache[t];let r=e.nodes[t],i=r.name?n.createUniqueName(r.name):\"\",a=[],o=n._invokeOne(function(c){return c.createNodeMesh&&c.createNodeMesh(t)});return o&&a.push(o),r.camera!==void 0&&a.push(n.getDependency(\"camera\",r.camera).then(function(c){return n._getNodeRef(n.cameraCache,r.camera,c)})),n._invokeAll(function(c){return c.createNodeAttachment&&c.createNodeAttachment(t)}).forEach(function(c){a.push(c)}),this.nodeCache[t]=Promise.all(a).then(function(c){let l;if(r.isBone===!0?l=new Qe:c.length>1?l=new q:c.length===1?l=c[0]:l=new Ve,l!==c[0])for(let u=0,d=c.length;u<d;u++)l.add(c[u]);if(r.name&&(l.userData.name=r.name,l.name=i),M(l,r),r.extensions&&O(s,l,r),r.matrix!==void 0){let u=new K;u.fromArray(r.matrix),l.applyMatrix4(u)}else r.translation!==void 0&&l.position.fromArray(r.translation),r.rotation!==void 0&&l.quaternion.fromArray(r.rotation),r.scale!==void 0&&l.scale.fromArray(r.scale);if(!n.associations.has(l))n.associations.set(l,{});else if(r.mesh!==void 0&&n.meshCache.refs[r.mesh]>1){let u=n.associations.get(l);n.associations.set(l,{...u})}return n.associations.get(l).nodes=t,l}),this.nodeCache[t]}loadScene(t){let e=this.extensions,s=this.json.scenes[t],n=this,r=new q;s.name&&(r.name=n.createUniqueName(s.name)),M(r,s),s.extensions&&O(e,r,s);let i=s.nodes||[],a=[];for(let o=0,c=i.length;o<c;o++)a.push(n.getDependency(\"node\",i[o]));return Promise.all(a).then(function(o){for(let l=0,u=o.length;l<u;l++){let d=o[l];d.parent!==null?r.add(Se(d)):r.add(d)}let c=l=>{let u=new Map;for(let[d,h]of n.associations)(d instanceof Y||d instanceof Ce)&&u.set(d,h);return l.traverse(d=>{let h=n.associations.get(d);h!=null&&u.set(d,h)}),u};return n.associations=c(r),r})}_createAnimationTracks(t,e,s,n,r){let i=[],a=t.name?t.name:t.uuid,o=[];L[r.path]===L.weights?t.traverse(function(d){d.morphTargetInfluences&&o.push(d.name?d.name:d.uuid)}):o.push(a);let c;switch(L[r.path]){case L.weights:c=Le;break;case L.rotation:c=Oe;break;case L.translation:case L.scale:c=ve;break;default:s.itemSize===1?c=Le:c=ve;break}let l=n.interpolation!==void 0?Ht[n.interpolation]:Ue,u=this._getArrayFromAccessor(s);for(let d=0,h=o.length;d<h;d++){let p=new c(o[d]+\".\"+L[r.path],e.array,u,l);n.interpolation===\"CUBICSPLINE\"&&this._createCubicSplineTrackInterpolant(p),i.push(p)}return i}_getArrayFromAccessor(t){let e=t.array;if(t.normalized){let s=Ee(e.constructor),n=new Float32Array(e.length);for(let r=0,i=e.length;r<i;r++)n[r]=e[r]*s;e=n}return e}_createCubicSplineTrackInterpolant(t){t.createInterpolant=function(s){let n=this instanceof Oe?ye:z;return new n(this.times,this.values,this.getValueSize()/3,s)},t.createInterpolant.isInterpolantFactoryMethodGLTFCubicSpline=!0}};function Vt(f,t,e){let s=t.attributes,n=new Je;if(s.POSITION!==void 0){let a=e.json.accessors[s.POSITION],o=a.min,c=a.max;if(o!==void 0&&c!==void 0){if(n.set(new C(o[0],o[1],o[2]),new C(c[0],c[1],c[2])),a.normalized){let l=Ee(k[a.componentType]);n.min.multiplyScalar(l),n.max.multiplyScalar(l)}}else{console.warn(\"THREE.GLTFLoader: Missing min/max properties for accessor POSITION.\");return}}else return;let r=t.targets;if(r!==void 0){let a=new C,o=new C;for(let c=0,l=r.length;c<l;c++){let u=r[c];if(u.POSITION!==void 0){let d=e.json.accessors[u.POSITION],h=d.min,p=d.max;if(h!==void 0&&p!==void 0){if(o.setX(Math.max(Math.abs(h[0]),Math.abs(p[0]))),o.setY(Math.max(Math.abs(h[1]),Math.abs(p[1]))),o.setZ(Math.max(Math.abs(h[2]),Math.abs(p[2]))),d.normalized){let A=Ee(k[d.componentType]);o.multiplyScalar(A)}a.max(o)}else console.warn(\"THREE.GLTFLoader: Missing min/max properties for accessor POSITION.\")}}n.expandByVector(a)}f.boundingBox=n;let i=new Nt;n.getCenter(i.center),i.radius=n.min.distanceTo(n.max)/2,f.boundingSphere=i}function De(f,t,e){let s=t.attributes,n=[];function r(i,a){return e.getDependency(\"accessor\",i).then(function(o){f.setAttribute(a,o)})}for(let i in s){let a=we[i]||i.toLowerCase();a in f.attributes||n.push(r(s[i],a))}if(t.indices!==void 0&&!f.index){let i=e.getDependency(\"accessor\",t.indices).then(function(a){f.setIndex(a)});n.push(i)}return Ne.workingColorSpace!==I&&\"COLOR_0\"in s&&console.warn(`THREE.GLTFLoader: Converting vertex colors from \"srgb-linear\" to \"${Ne.workingColorSpace}\" not supported.`),M(f,t),Vt(f,t,e),Promise.all(n).then(function(){return t.targets!==void 0?Ft(f,t.targets,e):f})}export{Pe as GLTFLoader};\n//# sourceMappingURL=GLTFLoader.mjs.map","/* esm.sh - three@0.183.2/examples/jsm/loaders/GLTFLoader */\nimport \"/three@0.183.2/es2022/three.mjs\";\nexport * from \"/three@0.183.2/es2022/examples/jsm/loaders/GLTFLoader.mjs\";\n","/* esm.sh - three@0.183.2/examples/jsm/loaders/DRACOLoader */\nimport{BufferAttribute as E,BufferGeometry as U,Color as x,ColorManagement as B,FileLoader as R,Loader as O,LinearSRGBColorSpace as N,SRGBColorSpace as P,InterleavedBuffer as M,InterleavedBufferAttribute as G}from\"../../../three.mjs\";var C=new WeakMap,S=class extends O{constructor(e){super(e),this.decoderPath=\"\",this.decoderConfig={},this.decoderBinary=null,this.decoderPending=null,this.workerLimit=4,this.workerPool=[],this.workerNextTaskID=1,this.workerSourceURL=\"\",this.defaultAttributeIDs={position:\"POSITION\",normal:\"NORMAL\",color:\"COLOR\",uv:\"TEX_COORD\"},this.defaultAttributeTypes={position:\"Float32Array\",normal:\"Float32Array\",color:\"Float32Array\",uv:\"Float32Array\"}}setDecoderPath(e){return this.decoderPath=e,this}setDecoderConfig(e){return this.decoderConfig=e,this}setWorkerLimit(e){return this.workerLimit=e,this}load(e,n,s,r){let o=new R(this.manager);o.setPath(this.path),o.setResponseType(\"arraybuffer\"),o.setRequestHeader(this.requestHeader),o.setWithCredentials(this.withCredentials),o.load(e,t=>{this.parse(t,n,r)},s,r)}parse(e,n,s=()=>{}){this.decodeDracoFile(e,n,null,null,P,s).catch(s)}decodeDracoFile(e,n,s,r,o=N,t=()=>{}){let i={attributeIDs:s||this.defaultAttributeIDs,attributeTypes:r||this.defaultAttributeTypes,useUniqueIDs:!!s,vertexColorSpace:o};return this.decodeGeometry(e,i).then(n).catch(t)}decodeGeometry(e,n){let s=JSON.stringify(n);if(C.has(e)){let a=C.get(e);if(a.key===s)return a.promise;if(e.byteLength===0)throw new Error(\"THREE.DRACOLoader: Unable to re-decode a buffer with different settings. Buffer has already been transferred.\")}let r,o=this.workerNextTaskID++,t=e.byteLength,i=this._getWorker(o,t).then(a=>(r=a,new Promise((u,c)=>{r._callbacks[o]={resolve:u,reject:c},r.postMessage({type:\"decode\",id:o,taskConfig:n,buffer:e},[e])}))).then(a=>this._createGeometry(a.geometry));return i.catch(()=>!0).then(()=>{r&&o&&this._releaseTask(r,o)}),C.set(e,{key:s,promise:i}),i}_createGeometry(e){let n=new U;e.index&&n.setIndex(new E(e.index.array,1));for(let s=0;s<e.attributes.length;s++){let{name:r,array:o,itemSize:t,stride:i,vertexColorSpace:a}=e.attributes[s],u;if(t===i)u=new E(o,t);else{let c=new M(o,i);u=new G(c,t,0)}r===\"color\"&&(this._assignVertexColorSpace(u,a),u.normalized=!(o instanceof Float32Array)),n.setAttribute(r,u)}return n}_assignVertexColorSpace(e,n){if(n!==P)return;let s=new x;for(let r=0,o=e.count;r<o;r++)s.fromBufferAttribute(e,r),B.colorSpaceToWorking(s,P),e.setXYZ(r,s.r,s.g,s.b)}_loadLibrary(e,n){let s=new R(this.manager);return s.setPath(this.decoderPath),s.setResponseType(n),s.setWithCredentials(this.withCredentials),new Promise((r,o)=>{s.load(e,r,void 0,o)})}preload(){return this._initDecoder(),this}_initDecoder(){if(this.decoderPending)return this.decoderPending;let e=typeof WebAssembly!=\"object\"||this.decoderConfig.type===\"js\",n=[];return e?n.push(this._loadLibrary(\"draco_decoder.js\",\"text\")):(n.push(this._loadLibrary(\"draco_wasm_wrapper.js\",\"text\")),n.push(this._loadLibrary(\"draco_decoder.wasm\",\"arraybuffer\"))),this.decoderPending=Promise.all(n).then(s=>{let r=s[0];e||(this.decoderConfig.wasmBinary=s[1]);let o=F.toString(),t=[\"/* draco decoder */\",r,\"\",\"/* worker */\",o.substring(o.indexOf(\"{\")+1,o.lastIndexOf(\"}\"))].join(`\n`);this.workerSourceURL=URL.createObjectURL(new Blob([t]))}),this.decoderPending}_getWorker(e,n){return this._initDecoder().then(()=>{if(this.workerPool.length<this.workerLimit){let r=new Worker(this.workerSourceURL);r._callbacks={},r._taskCosts={},r._taskLoad=0,r.postMessage({type:\"init\",decoderConfig:this.decoderConfig}),r.onmessage=function(o){let t=o.data;switch(t.type){case\"decode\":r._callbacks[t.id].resolve(t);break;case\"error\":r._callbacks[t.id].reject(t);break;default:console.error('THREE.DRACOLoader: Unexpected message, \"'+t.type+'\"')}},this.workerPool.push(r)}else this.workerPool.sort(function(r,o){return r._taskLoad>o._taskLoad?-1:1});let s=this.workerPool[this.workerPool.length-1];return s._taskCosts[e]=n,s._taskLoad+=n,s})}_releaseTask(e,n){e._taskLoad-=e._taskCosts[n],delete e._callbacks[n],delete e._taskCosts[n]}debug(){console.log(\"Task load: \",this.workerPool.map(e=>e._taskLoad))}dispose(){for(let e=0;e<this.workerPool.length;++e)this.workerPool[e].terminate();return this.workerPool.length=0,this.workerSourceURL!==\"\"&&URL.revokeObjectURL(this.workerSourceURL),this}};function F(){let m,e;onmessage=function(t){let i=t.data;switch(i.type){case\"init\":m=i.decoderConfig,e=new Promise(function(c){m.onModuleLoaded=function(h){c({draco:h})},DracoDecoderModule(m)});break;case\"decode\":let a=i.buffer,u=i.taskConfig;e.then(c=>{let h=c.draco,d=new h.Decoder;try{let l=n(h,d,new Int8Array(a),u),g=l.attributes.map(f=>f.array.buffer);l.index&&g.push(l.index.array.buffer),self.postMessage({type:\"decode\",id:i.id,geometry:l},g)}catch(l){console.error(l),self.postMessage({type:\"error\",id:i.id,error:l.message})}finally{h.destroy(d)}});break}};function n(t,i,a,u){let c=u.attributeIDs,h=u.attributeTypes,d,l,g=i.GetEncodedGeometryType(a);if(g===t.TRIANGULAR_MESH)d=new t.Mesh,l=i.DecodeArrayToMesh(a,a.byteLength,d);else if(g===t.POINT_CLOUD)d=new t.PointCloud,l=i.DecodeArrayToPointCloud(a,a.byteLength,d);else throw new Error(\"THREE.DRACOLoader: Unexpected geometry type.\");if(!l.ok()||d.ptr===0)throw new Error(\"THREE.DRACOLoader: Decoding failed: \"+l.error_msg());let f={index:null,attributes:[]};for(let y in c){let w=self[h[y]],_,b;if(u.useUniqueIDs)b=c[y],_=i.GetAttributeByUniqueId(d,b);else{if(b=i.GetAttributeId(d,t[c[y]]),b===-1)continue;_=i.GetAttribute(d,b)}let p=r(t,i,d,y,w,_);y===\"color\"&&(p.vertexColorSpace=u.vertexColorSpace),f.attributes.push(p)}return g===t.TRIANGULAR_MESH&&(f.index=s(t,i,d)),t.destroy(d),f}function s(t,i,a){let c=a.num_faces()*3,h=c*4,d=t._malloc(h);i.GetTrianglesUInt32Array(a,h,d);let l=new Uint32Array(t.HEAPF32.buffer,d,c).slice();return t._free(d),{array:l,itemSize:1}}function r(t,i,a,u,c,h){let d=a.num_points(),l=h.num_components(),g=o(t,c),f=l*c.BYTES_PER_ELEMENT,y=Math.ceil(f/4)*4,w=y/c.BYTES_PER_ELEMENT,_=d*f,b=d*y,p=t._malloc(_);i.GetAttributeDataArrayForAllPoints(a,h,g,_,p);let T=new c(t.HEAPF32.buffer,p,_/c.BYTES_PER_ELEMENT),k;if(f===y)k=T.slice();else{k=new c(b/c.BYTES_PER_ELEMENT);let D=0;for(let A=0,I=T.length;A<I;A++){for(let L=0;L<l;L++)k[D+L]=T[A*l+L];D+=w}}return t._free(p),{name:u,count:d,itemSize:l,array:k,stride:w}}function o(t,i){switch(i){case Float32Array:return t.DT_FLOAT32;case Int8Array:return t.DT_INT8;case Int16Array:return t.DT_INT16;case Int32Array:return t.DT_INT32;case Uint8Array:return t.DT_UINT8;case Uint16Array:return t.DT_UINT16;case Uint32Array:return t.DT_UINT32}}}export{S as DRACOLoader};\n//# sourceMappingURL=DRACOLoader.mjs.map","/* esm.sh - three@0.183.2/examples/jsm/loaders/DRACOLoader */\nimport \"/three@0.183.2/es2022/three.mjs\";\nexport * from \"/three@0.183.2/es2022/examples/jsm/loaders/DRACOLoader.mjs\";\n","/* esm.sh - three@0.183.2/examples/jsm/utils/SkeletonUtils */\nimport{AnimationClip as g,AnimationMixer as W,Matrix4 as k,Quaternion as A,QuaternionKeyframeTrack as T,SkeletonHelper as q,Vector3 as F,VectorKeyframeTrack as O}from\"../../../three.mjs\";function v(r,a){return a.getBoneName!==void 0?a.getBoneName(r):a.names[r.name]}function D(r,a,e={}){let t=new A,u=new F,l=new k,s=new k;e.preserveBoneMatrix=e.preserveBoneMatrix!==void 0?e.preserveBoneMatrix:!0,e.preserveBonePositions=e.preserveBonePositions!==void 0?e.preserveBonePositions:!0,e.useTargetMatrix=e.useTargetMatrix!==void 0?e.useTargetMatrix:!1,e.hip=e.hip!==void 0?e.hip:\"hip\",e.hipInfluence=e.hipInfluence!==void 0?e.hipInfluence:new F(1,1,1),e.scale=e.scale!==void 0?e.scale:1,e.names=e.names||{};let o=a.isObject3D?a.skeleton.bones:b(a),c=r.isObject3D?r.skeleton.bones:b(r),i,d,m,x;if(r.isObject3D?r.skeleton.pose():(e.useTargetMatrix=!0,e.preserveBoneMatrix=!1),e.preserveBonePositions){x=[];for(let n=0;n<c.length;n++)x.push(c[n].position.clone())}if(e.preserveBoneMatrix){r.updateMatrixWorld(),r.matrixWorld.identity();for(let n=0;n<r.children.length;++n)r.children[n].updateMatrixWorld(!0)}for(let n=0;n<c.length;++n)i=c[n],d=v(i,e),m=w(d,o),s.copy(i.matrixWorld),m&&(m.updateMatrixWorld(),e.useTargetMatrix?l.copy(m.matrixWorld):(l.copy(r.matrixWorld).invert(),l.multiply(m.matrixWorld)),u.setFromMatrixScale(l),l.scale(u.set(1/u.x,1/u.y,1/u.z)),s.makeRotationFromQuaternion(t.setFromRotationMatrix(l)),r.isObject3D&&e.localOffsets&&e.localOffsets[i.name]&&s.multiply(e.localOffsets[i.name]),s.copyPosition(l)),d===e.hip&&(s.elements[12]*=e.scale*e.hipInfluence.x,s.elements[13]*=e.scale*e.hipInfluence.y,s.elements[14]*=e.scale*e.hipInfluence.z,e.hipPosition!==void 0&&(s.elements[12]+=e.hipPosition.x*e.scale,s.elements[13]+=e.hipPosition.y*e.scale,s.elements[14]+=e.hipPosition.z*e.scale)),i.parent?(i.matrix.copy(i.parent.matrixWorld).invert(),i.matrix.multiply(s)):i.matrix.copy(s),i.matrix.decompose(i.position,i.quaternion,i.scale),i.updateMatrixWorld();if(e.preserveBonePositions)for(let n=0;n<c.length;++n)i=c[n],d=v(i,e)||i.name,d!==e.hip&&i.position.copy(x[n]);e.preserveBoneMatrix&&r.updateMatrixWorld(!0)}function S(r,a,e,t={}){t.useFirstFramePosition=t.useFirstFramePosition!==void 0?t.useFirstFramePosition:!1,t.fps=t.fps!==void 0?t.fps:Math.max(...e.tracks.map(f=>f.times.length))/e.duration,t.names=t.names||[],a.isObject3D||(a=j(a));let u=Math.round(e.duration*(t.fps/1e3)*1e3),l=e.duration/(u-1),s=[],o=new W(a),c=b(r.skeleton),i=[],d,m,x,n,y;o.clipAction(e).play();let p=0,h=u;t.trim!==void 0?(p=Math.round(t.trim[0]*t.fps),h=Math.min(Math.round(t.trim[1]*t.fps),u)-p,o.update(t.trim[0])):o.update(0),a.updateMatrixWorld();for(let f=0;f<h;++f){let B=f*l;D(r,a,t);for(let M=0;M<c.length;++M)m=c[M],y=v(m,t)||m.name,x=w(y,a.skeleton),x&&(n=i[M]=i[M]||{bone:m},t.hip===y&&(n.pos||(n.pos={times:new Float32Array(h),values:new Float32Array(h*3)}),t.useFirstFramePosition&&(f===0&&(d=m.position.clone()),m.position.sub(d)),n.pos.times[f]=B,m.position.toArray(n.pos.values,f*3)),n.quat||(n.quat={times:new Float32Array(h),values:new Float32Array(h*4)}),n.quat.times[f]=B,m.quaternion.toArray(n.quat.values,f*4));f===h-2?o.update(l-1e-7):o.update(l),a.updateMatrixWorld()}for(let f=0;f<i.length;++f)n=i[f],n&&(n.pos&&s.push(new O(\".bones[\"+n.bone.name+\"].position\",n.pos.times,n.pos.values)),s.push(new T(\".bones[\"+n.bone.name+\"].quaternion\",n.quat.times,n.quat.values)));return o.uncacheAction(e),new g(e.name,-1,s)}function z(r){let a=new Map,e=new Map,t=r.clone();return P(r,t,function(u,l){a.set(l,u),e.set(u,l)}),t.traverse(function(u){if(!u.isSkinnedMesh)return;let l=u,s=a.get(u),o=s.skeleton.bones;l.skeleton=s.skeleton.clone(),l.bindMatrix.copy(s.bindMatrix),l.skeleton.bones=o.map(function(c){return e.get(c)}),l.bind(l.skeleton,l.bindMatrix)}),t}function w(r,a){for(let e=0,t=b(a);e<t.length;e++)if(r===t[e].name)return t[e]}function b(r){return Array.isArray(r)?r:r.bones}function j(r){let a=new q(r.bones[0]);return a.skeleton=r,a}function P(r,a,e){e(r,a);for(let t=0;t<r.children.length;t++)P(r.children[t],a.children[t],e)}export{z as clone,D as retarget,S as retargetClip};\n//# sourceMappingURL=SkeletonUtils.mjs.map","/* esm.sh - three@0.183.2/examples/jsm/utils/SkeletonUtils */\nimport \"/three@0.183.2/es2022/three.mjs\";\nexport * from \"/three@0.183.2/es2022/examples/jsm/utils/SkeletonUtils.mjs\";\n","/* esm.sh - three@0.183.2/examples/jsm/utils/BufferGeometryUtils */\nimport{BufferAttribute as F,BufferGeometry as et,Float32BufferAttribute as $,InstancedBufferAttribute as J,InterleavedBuffer as rt,InterleavedBufferAttribute as nt,TriangleFanDrawMode as q,TriangleStripDrawMode as ot,TrianglesDrawMode as st,Vector3 as I}from\"../../../three.mjs\";function ut(t,i,o=!0){if(!i||!i.isReady)throw new Error(\"BufferGeometryUtils: Initialized MikkTSpace library required.\");if(!t.hasAttribute(\"position\")||!t.hasAttribute(\"normal\")||!t.hasAttribute(\"uv\"))throw new Error('BufferGeometryUtils: Tangents require \"position\", \"normal\", and \"uv\" attributes.');function u(e){if(e.normalized||e.isInterleavedBufferAttribute){let s=new Float32Array(e.count*e.itemSize);for(let c=0,m=0;c<e.count;c++)s[m++]=e.getX(c),s[m++]=e.getY(c),e.itemSize>2&&(s[m++]=e.getZ(c));return s}return e.array instanceof Float32Array?e.array:new Float32Array(e.array)}let n=t.index?t.toNonIndexed():t,l=i.generateTangents(u(n.attributes.position),u(n.attributes.normal),u(n.attributes.uv));if(o)for(let e=3;e<l.length;e+=4)l[e]*=-1;return n.setAttribute(\"tangent\",new F(l,4)),t!==n&&t.copy(n),t}function at(t,i=!1){let o=t[0].index!==null,u=new Set(Object.keys(t[0].attributes)),n=new Set(Object.keys(t[0].morphAttributes)),l={},e={},s=t[0].morphTargetsRelative,c=new et,m=0;for(let r=0;r<t.length;++r){let a=t[r],b=0;if(o!==(a.index!==null))return console.error(\"THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index \"+r+\". All geometries must have compatible attributes; make sure index attribute exists among all geometries, or in none of them.\"),null;for(let f in a.attributes){if(!u.has(f))return console.error(\"THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index \"+r+'. All geometries must have compatible attributes; make sure \"'+f+'\" attribute exists among all geometries, or in none of them.'),null;l[f]===void 0&&(l[f]=[]),l[f].push(a.attributes[f]),b++}if(b!==u.size)return console.error(\"THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index \"+r+\". Make sure all geometries have the same number of attributes.\"),null;if(s!==a.morphTargetsRelative)return console.error(\"THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index \"+r+\". .morphTargetsRelative must be consistent throughout all geometries.\"),null;for(let f in a.morphAttributes){if(!n.has(f))return console.error(\"THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index \"+r+\".  .morphAttributes must be consistent throughout all geometries.\"),null;e[f]===void 0&&(e[f]=[]),e[f].push(a.morphAttributes[f])}if(i){let f;if(o)f=a.index.count;else if(a.attributes.position!==void 0)f=a.attributes.position.count;else return console.error(\"THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index \"+r+\". The geometry must have either an index or a position attribute\"),null;c.addGroup(m,f,r),m+=f}}if(o){let r=0,a=[];for(let b=0;b<t.length;++b){let f=t[b].index;for(let p=0;p<f.count;++p)a.push(f.getX(p)+r);r+=t[b].attributes.position.count}c.setIndex(a)}for(let r in l){let a=j(l[r]);if(!a)return console.error(\"THREE.BufferGeometryUtils: .mergeGeometries() failed while trying to merge the \"+r+\" attribute.\"),null;c.setAttribute(r,a)}for(let r in e){let a=e[r][0].length;if(a===0)break;c.morphAttributes=c.morphAttributes||{},c.morphAttributes[r]=[];for(let b=0;b<a;++b){let f=[];for(let d=0;d<e[r].length;++d)f.push(e[r][d][b]);let p=j(f);if(!p)return console.error(\"THREE.BufferGeometryUtils: .mergeGeometries() failed while trying to merge the \"+r+\" morphAttribute.\"),null;c.morphAttributes[r].push(p)}}return c}function j(t){let i,o,u,n=-1,l=0;for(let m=0;m<t.length;++m){let r=t[m];if(i===void 0&&(i=r.array.constructor),i!==r.array.constructor)return console.error(\"THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.array must be of consistent array types across matching attributes.\"),null;if(o===void 0&&(o=r.itemSize),o!==r.itemSize)return console.error(\"THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.itemSize must be consistent across matching attributes.\"),null;if(u===void 0&&(u=r.normalized),u!==r.normalized)return console.error(\"THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.normalized must be consistent across matching attributes.\"),null;if(n===-1&&(n=r.gpuType),n!==r.gpuType)return console.error(\"THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.gpuType must be consistent across matching attributes.\"),null;l+=r.count*o}let e=new i(l),s=new F(e,o,u),c=0;for(let m=0;m<t.length;++m){let r=t[m];if(r.isInterleavedBufferAttribute){let a=c/o;for(let b=0,f=r.count;b<f;b++)for(let p=0;p<o;p++){let d=r.getComponent(b,p);s.setComponent(b+a,p,d)}}else e.set(r.array,c);c+=r.count*o}return n!==void 0&&(s.gpuType=n),s}function lt(t){return t.isInstancedInterleavedBufferAttribute||t.isInterleavedBufferAttribute?L(t):t.isInstancedBufferAttribute?new J().copy(t):new F().copy(t)}function ct(t){let i,o=0,u=0;for(let m=0,r=t.length;m<r;++m){let a=t[m];if(i===void 0&&(i=a.array.constructor),i!==a.array.constructor)return console.error(\"AttributeBuffers of different types cannot be interleaved\"),null;o+=a.array.length,u+=a.itemSize}let n=new rt(new i(o),u),l=0,e=[],s=[\"getX\",\"getY\",\"getZ\",\"getW\"],c=[\"setX\",\"setY\",\"setZ\",\"setW\"];for(let m=0,r=t.length;m<r;m++){let a=t[m],b=a.itemSize,f=a.count,p=new nt(n,b,l,a.normalized);e.push(p),l+=b;for(let d=0;d<f;d++)for(let z=0;z<b;z++)p[c[z]](d,a[s[z]](d))}return e}function L(t){let i=t.data.array.constructor,o=t.count,u=t.itemSize,n=t.normalized,l=new i(o*u),e;t.isInstancedInterleavedBufferAttribute?e=new J(l,u,n,t.meshPerAttribute):e=new F(l,u,n);for(let s=0;s<o;s++)e.setX(s,t.getX(s)),u>=2&&e.setY(s,t.getY(s)),u>=3&&e.setZ(s,t.getZ(s)),u>=4&&e.setW(s,t.getW(s));return e}function ft(t){let i=t.attributes,o=t.morphTargets,u=new Map;for(let n in i){let l=i[n];l.isInterleavedBufferAttribute&&(u.has(l)||u.set(l,L(l)),i[n]=u.get(l))}for(let n in o){let l=o[n];l.isInterleavedBufferAttribute&&(u.has(l)||u.set(l,L(l)),o[n]=u.get(l))}}function mt(t){let i=0;for(let u in t.attributes){let n=t.getAttribute(u);i+=n.count*n.itemSize*n.array.BYTES_PER_ELEMENT}let o=t.getIndex();return i+=o?o.count*o.itemSize*o.array.BYTES_PER_ELEMENT:0,i}function dt(t,i=1e-4){i=Math.max(i,Number.EPSILON);let o={},u=t.getIndex(),n=t.getAttribute(\"position\"),l=u?u.count:n.count,e=0,s=Object.keys(t.attributes),c={},m={},r=[],a=[\"getX\",\"getY\",\"getZ\",\"getW\"],b=[\"setX\",\"setY\",\"setZ\",\"setW\"];for(let x=0,y=s.length;x<y;x++){let w=s[x],g=t.attributes[w];c[w]=new g.constructor(new g.array.constructor(g.count*g.itemSize),g.itemSize,g.normalized);let E=t.morphAttributes[w];E&&(m[w]||(m[w]=[]),E.forEach((A,h)=>{let T=new A.array.constructor(A.count*A.itemSize);m[w][h]=new A.constructor(T,A.itemSize,A.normalized)}))}let f=i*.5,p=Math.log10(1/i),d=Math.pow(10,p),z=f*d;for(let x=0;x<l;x++){let y=u?u.getX(x):x,w=\"\";for(let g=0,E=s.length;g<E;g++){let A=s[g],h=t.getAttribute(A),T=h.itemSize;for(let S=0;S<T;S++)w+=`${~~(h[a[S]](y)*d+z)},`}if(w in o)r.push(o[w]);else{for(let g=0,E=s.length;g<E;g++){let A=s[g],h=t.getAttribute(A),T=t.morphAttributes[A],S=h.itemSize,X=c[A],M=m[A];for(let G=0;G<S;G++){let v=a[G],N=b[G];if(X[N](e,h[v](y)),T)for(let R=0,Y=T.length;R<Y;R++)M[R][N](e,T[R][v](y))}}o[w]=e,r.push(e),e++}}let B=t.clone();for(let x in t.attributes){let y=c[x];if(B.setAttribute(x,new y.constructor(y.array.slice(0,e*y.itemSize),y.itemSize,y.normalized)),x in m)for(let w=0;w<m[x].length;w++){let g=m[x][w];B.morphAttributes[x][w]=new g.constructor(g.array.slice(0,e*g.itemSize),g.itemSize,g.normalized)}}return B.setIndex(r),B}function ht(t,i){if(i===st)return console.warn(\"THREE.BufferGeometryUtils.toTrianglesDrawMode(): Geometry already defined as triangles.\"),t;if(i===q||i===ot){let o=t.getIndex();if(o===null){let e=[],s=t.getAttribute(\"position\");if(s!==void 0){for(let c=0;c<s.count;c++)e.push(c);t.setIndex(e),o=t.getIndex()}else return console.error(\"THREE.BufferGeometryUtils.toTrianglesDrawMode(): Undefined position attribute. Processing not possible.\"),t}let u=o.count-2,n=[];if(i===q)for(let e=1;e<=u;e++)n.push(o.getX(0)),n.push(o.getX(e)),n.push(o.getX(e+1));else for(let e=0;e<u;e++)e%2===0?(n.push(o.getX(e)),n.push(o.getX(e+1)),n.push(o.getX(e+2))):(n.push(o.getX(e+2)),n.push(o.getX(e+1)),n.push(o.getX(e)));n.length/3!==u&&console.error(\"THREE.BufferGeometryUtils.toTrianglesDrawMode(): Unable to generate correct amount of triangles.\");let l=t.clone();return l.setIndex(n),l.clearGroups(),l}else return console.error(\"THREE.BufferGeometryUtils.toTrianglesDrawMode(): Unknown draw mode:\",i),t}function pt(t){let i=new I,o=new I,u=new I,n=new I,l=new I,e=new I,s=new I,c=new I,m=new I;function r(D,C,Z,Q,V,k,_,U){i.fromBufferAttribute(C,V),o.fromBufferAttribute(C,k),u.fromBufferAttribute(C,_);let W=D.morphTargetInfluences;if(Z&&W){s.set(0,0,0),c.set(0,0,0),m.set(0,0,0);for(let P=0,tt=Z.length;P<tt;P++){let H=W[P],O=Z[P];H!==0&&(n.fromBufferAttribute(O,V),l.fromBufferAttribute(O,k),e.fromBufferAttribute(O,_),Q?(s.addScaledVector(n,H),c.addScaledVector(l,H),m.addScaledVector(e,H)):(s.addScaledVector(n.sub(i),H),c.addScaledVector(l.sub(o),H),m.addScaledVector(e.sub(u),H)))}i.add(s),o.add(c),u.add(m)}D.isSkinnedMesh&&(D.applyBoneTransform(V,i),D.applyBoneTransform(k,o),D.applyBoneTransform(_,u)),U[V*3+0]=i.x,U[V*3+1]=i.y,U[V*3+2]=i.z,U[k*3+0]=o.x,U[k*3+1]=o.y,U[k*3+2]=o.z,U[_*3+0]=u.x,U[_*3+1]=u.y,U[_*3+2]=u.z}let a=t.geometry,b=t.material,f,p,d,z=a.index,B=a.attributes.position,x=a.morphAttributes.position,y=a.morphTargetsRelative,w=a.attributes.normal,g=a.morphAttributes.position,E=a.groups,A=a.drawRange,h,T,S,X,M,G,v,N=new Float32Array(B.count*B.itemSize),R=new Float32Array(w.count*w.itemSize);if(z!==null)if(Array.isArray(b))for(h=0,S=E.length;h<S;h++)for(M=E[h],G=Math.max(M.start,A.start),v=Math.min(M.start+M.count,A.start+A.count),T=G,X=v;T<X;T+=3)f=z.getX(T),p=z.getX(T+1),d=z.getX(T+2),r(t,B,x,y,f,p,d,N),r(t,w,g,y,f,p,d,R);else for(G=Math.max(0,A.start),v=Math.min(z.count,A.start+A.count),h=G,S=v;h<S;h+=3)f=z.getX(h),p=z.getX(h+1),d=z.getX(h+2),r(t,B,x,y,f,p,d,N),r(t,w,g,y,f,p,d,R);else if(Array.isArray(b))for(h=0,S=E.length;h<S;h++)for(M=E[h],G=Math.max(M.start,A.start),v=Math.min(M.start+M.count,A.start+A.count),T=G,X=v;T<X;T+=3)f=T,p=T+1,d=T+2,r(t,B,x,y,f,p,d,N),r(t,w,g,y,f,p,d,R);else for(G=Math.max(0,A.start),v=Math.min(B.count,A.start+A.count),h=G,S=v;h<S;h+=3)f=h,p=h+1,d=h+2,r(t,B,x,y,f,p,d,N),r(t,w,g,y,f,p,d,R);let Y=new $(N,3),K=new $(R,3);return{positionAttribute:B,normalAttribute:w,morphedPositionAttribute:Y,morphedNormalAttribute:K}}function gt(t){if(t.groups.length===0)return console.warn(\"THREE.BufferGeometryUtils.mergeGroups(): No groups are defined. Nothing to merge.\"),t;let i=t.groups;if(i=i.sort((e,s)=>e.materialIndex!==s.materialIndex?e.materialIndex-s.materialIndex:e.start-s.start),t.getIndex()===null){let e=t.getAttribute(\"position\"),s=[];for(let c=0;c<e.count;c+=3)s.push(c,c+1,c+2);t.setIndex(s)}let o=t.getIndex(),u=[];for(let e=0;e<i.length;e++){let s=i[e],c=s.start,m=c+s.count;for(let r=c;r<m;r++)u.push(o.getX(r))}t.dispose(),t.setIndex(u);let n=0;for(let e=0;e<i.length;e++){let s=i[e];s.start=n,n+=s.count}let l=i[0];t.groups=[l];for(let e=1;e<i.length;e++){let s=i[e];l.materialIndex===s.materialIndex?l.count+=s.count:(l=s,t.groups.push(l))}return t}function bt(t,i=Math.PI/3){let o=Math.cos(i),u=(1+1e-10)*100,n=[new I,new I,new I],l=new I,e=new I,s=new I,c=new I;function m(d){let z=~~(d.x*u),B=~~(d.y*u),x=~~(d.z*u);return`${z},${B},${x}`}let r=t.index?t.toNonIndexed():t,a=r.attributes.position,b={};for(let d=0,z=a.count/3;d<z;d++){let B=3*d,x=n[0].fromBufferAttribute(a,B+0),y=n[1].fromBufferAttribute(a,B+1),w=n[2].fromBufferAttribute(a,B+2);l.subVectors(w,y),e.subVectors(x,y);let g=new I().crossVectors(l,e).normalize();for(let E=0;E<3;E++){let A=n[E],h=m(A);h in b||(b[h]=[]),b[h].push(g)}}let f=new Float32Array(a.count*3),p=new F(f,3,!1);for(let d=0,z=a.count/3;d<z;d++){let B=3*d,x=n[0].fromBufferAttribute(a,B+0),y=n[1].fromBufferAttribute(a,B+1),w=n[2].fromBufferAttribute(a,B+2);l.subVectors(w,y),e.subVectors(x,y),s.crossVectors(l,e).normalize();for(let g=0;g<3;g++){let E=n[g],A=m(E),h=b[A];c.set(0,0,0);for(let T=0,S=h.length;T<S;T++){let X=h[T];s.dot(X)>o&&c.add(X)}c.normalize(),p.setXYZ(B+g,c.x,c.y,c.z)}}return r.setAttribute(\"normal\",p),r}export{ut as computeMikkTSpaceTangents,pt as computeMorphedAttributes,lt as deepCloneAttribute,L as deinterleaveAttribute,ft as deinterleaveGeometry,mt as estimateBytesUsed,ct as interleaveAttributes,j as mergeAttributes,at as mergeGeometries,gt as mergeGroups,dt as mergeVertices,bt as toCreasedNormals,ht as toTrianglesDrawMode};\n//# sourceMappingURL=BufferGeometryUtils.mjs.map","/* esm.sh - three@0.183.2/examples/jsm/utils/BufferGeometryUtils */\nimport \"/three@0.183.2/es2022/three.mjs\";\nexport * from \"/three@0.183.2/es2022/examples/jsm/utils/BufferGeometryUtils.mjs\";\n","/* esm.sh - three@0.183.2/examples/jsm/controls/OrbitControls */\nimport{Controls as w,MOUSE as u,Quaternion as E,Spherical as P,TOUCH as _,Vector2 as c,Vector3 as p,Plane as O,Ray as R,MathUtils as L}from\"../../../three.mjs\";var D={type:\"change\"},b={type:\"start\"},M={type:\"end\"},f=new R,T=new O,j=Math.cos(70*L.DEG2RAD),n=new p,r=2*Math.PI,o={NONE:-1,ROTATE:0,DOLLY:1,PAN:2,TOUCH_ROTATE:3,TOUCH_PAN:4,TOUCH_DOLLY_PAN:5,TOUCH_DOLLY_ROTATE:6},y=1e-6,S=class extends w{constructor(t,e=null){super(t,e),this.state=o.NONE,this.target=new p,this.cursor=new p,this.minDistance=0,this.maxDistance=1/0,this.minZoom=0,this.maxZoom=1/0,this.minTargetRadius=0,this.maxTargetRadius=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.keyRotateSpeed=1,this.enablePan=!0,this.panSpeed=1,this.screenSpacePanning=!0,this.keyPanSpeed=7,this.zoomToCursor=!1,this.autoRotate=!1,this.autoRotateSpeed=2,this.keys={LEFT:\"ArrowLeft\",UP:\"ArrowUp\",RIGHT:\"ArrowRight\",BOTTOM:\"ArrowDown\"},this.mouseButtons={LEFT:u.ROTATE,MIDDLE:u.DOLLY,RIGHT:u.PAN},this.touches={ONE:_.ROTATE,TWO:_.DOLLY_PAN},this.target0=this.target.clone(),this.position0=this.object.position.clone(),this.zoom0=this.object.zoom,this._cursorStyle=\"auto\",this._domElementKeyEvents=null,this._lastPosition=new p,this._lastQuaternion=new E,this._lastTargetPosition=new p,this._quat=new E().setFromUnitVectors(t.up,new p(0,1,0)),this._quatInverse=this._quat.clone().invert(),this._spherical=new P,this._sphericalDelta=new P,this._scale=1,this._panOffset=new p,this._rotateStart=new c,this._rotateEnd=new c,this._rotateDelta=new c,this._panStart=new c,this._panEnd=new c,this._panDelta=new c,this._dollyStart=new c,this._dollyEnd=new c,this._dollyDelta=new c,this._dollyDirection=new p,this._mouse=new c,this._performCursorZoom=!1,this._pointers=[],this._pointerPositions={},this._controlActive=!1,this._onPointerMove=k.bind(this),this._onPointerDown=A.bind(this),this._onPointerUp=x.bind(this),this._onContextMenu=z.bind(this),this._onMouseWheel=I.bind(this),this._onKeyDown=Y.bind(this),this._onTouchStart=U.bind(this),this._onTouchMove=Z.bind(this),this._onMouseDown=C.bind(this),this._onMouseMove=N.bind(this),this._interceptControlDown=K.bind(this),this._interceptControlUp=H.bind(this),this.domElement!==null&&this.connect(this.domElement),this.update()}set cursorStyle(t){this._cursorStyle=t,t===\"grab\"?this.domElement.style.cursor=\"grab\":this.domElement.style.cursor=\"auto\"}get cursorStyle(){return this._cursorStyle}connect(t){super.connect(t),this.domElement.addEventListener(\"pointerdown\",this._onPointerDown),this.domElement.addEventListener(\"pointercancel\",this._onPointerUp),this.domElement.addEventListener(\"contextmenu\",this._onContextMenu),this.domElement.addEventListener(\"wheel\",this._onMouseWheel,{passive:!1}),this.domElement.getRootNode().addEventListener(\"keydown\",this._interceptControlDown,{passive:!0,capture:!0}),this.domElement.style.touchAction=\"none\"}disconnect(){this.domElement.removeEventListener(\"pointerdown\",this._onPointerDown),this.domElement.ownerDocument.removeEventListener(\"pointermove\",this._onPointerMove),this.domElement.ownerDocument.removeEventListener(\"pointerup\",this._onPointerUp),this.domElement.removeEventListener(\"pointercancel\",this._onPointerUp),this.domElement.removeEventListener(\"wheel\",this._onMouseWheel),this.domElement.removeEventListener(\"contextmenu\",this._onContextMenu),this.stopListenToKeyEvents(),this.domElement.getRootNode().removeEventListener(\"keydown\",this._interceptControlDown,{capture:!0}),this.domElement.style.touchAction=\"auto\"}dispose(){this.disconnect()}getPolarAngle(){return this._spherical.phi}getAzimuthalAngle(){return this._spherical.theta}getDistance(){return this.object.position.distanceTo(this.target)}listenToKeyEvents(t){t.addEventListener(\"keydown\",this._onKeyDown),this._domElementKeyEvents=t}stopListenToKeyEvents(){this._domElementKeyEvents!==null&&(this._domElementKeyEvents.removeEventListener(\"keydown\",this._onKeyDown),this._domElementKeyEvents=null)}saveState(){this.target0.copy(this.target),this.position0.copy(this.object.position),this.zoom0=this.object.zoom}reset(){this.target.copy(this.target0),this.object.position.copy(this.position0),this.object.zoom=this.zoom0,this.object.updateProjectionMatrix(),this.dispatchEvent(D),this.update(),this.state=o.NONE}pan(t,e){this._pan(t,e),this.update()}dollyIn(t){this._dollyIn(t),this.update()}dollyOut(t){this._dollyOut(t),this.update()}rotateLeft(t){this._rotateLeft(t),this.update()}rotateUp(t){this._rotateUp(t),this.update()}update(t=null){let e=this.object.position;n.copy(e).sub(this.target),n.applyQuaternion(this._quat),this._spherical.setFromVector3(n),this.autoRotate&&this.state===o.NONE&&this._rotateLeft(this._getAutoRotationAngle(t)),this.enableDamping?(this._spherical.theta+=this._sphericalDelta.theta*this.dampingFactor,this._spherical.phi+=this._sphericalDelta.phi*this.dampingFactor):(this._spherical.theta+=this._sphericalDelta.theta,this._spherical.phi+=this._sphericalDelta.phi);let s=this.minAzimuthAngle,a=this.maxAzimuthAngle;isFinite(s)&&isFinite(a)&&(s<-Math.PI?s+=r:s>Math.PI&&(s-=r),a<-Math.PI?a+=r:a>Math.PI&&(a-=r),s<=a?this._spherical.theta=Math.max(s,Math.min(a,this._spherical.theta)):this._spherical.theta=this._spherical.theta>(s+a)/2?Math.max(s,this._spherical.theta):Math.min(a,this._spherical.theta)),this._spherical.phi=Math.max(this.minPolarAngle,Math.min(this.maxPolarAngle,this._spherical.phi)),this._spherical.makeSafe(),this.enableDamping===!0?this.target.addScaledVector(this._panOffset,this.dampingFactor):this.target.add(this._panOffset),this.target.sub(this.cursor),this.target.clampLength(this.minTargetRadius,this.maxTargetRadius),this.target.add(this.cursor);let h=!1;if(this.zoomToCursor&&this._performCursorZoom||this.object.isOrthographicCamera)this._spherical.radius=this._clampDistance(this._spherical.radius);else{let l=this._spherical.radius;this._spherical.radius=this._clampDistance(this._spherical.radius*this._scale),h=l!=this._spherical.radius}if(n.setFromSpherical(this._spherical),n.applyQuaternion(this._quatInverse),e.copy(this.target).add(n),this.object.lookAt(this.target),this.enableDamping===!0?(this._sphericalDelta.theta*=1-this.dampingFactor,this._sphericalDelta.phi*=1-this.dampingFactor,this._panOffset.multiplyScalar(1-this.dampingFactor)):(this._sphericalDelta.set(0,0,0),this._panOffset.set(0,0,0)),this.zoomToCursor&&this._performCursorZoom){let l=null;if(this.object.isPerspectiveCamera){let d=n.length();l=this._clampDistance(d*this._scale);let m=d-l;this.object.position.addScaledVector(this._dollyDirection,m),this.object.updateMatrixWorld(),h=!!m}else if(this.object.isOrthographicCamera){let d=new p(this._mouse.x,this._mouse.y,0);d.unproject(this.object);let m=this.object.zoom;this.object.zoom=Math.max(this.minZoom,Math.min(this.maxZoom,this.object.zoom/this._scale)),this.object.updateProjectionMatrix(),h=m!==this.object.zoom;let g=new p(this._mouse.x,this._mouse.y,0);g.unproject(this.object),this.object.position.sub(g).add(d),this.object.updateMatrixWorld(),l=n.length()}else console.warn(\"WARNING: OrbitControls.js encountered an unknown camera type - zoom to cursor disabled.\"),this.zoomToCursor=!1;l!==null&&(this.screenSpacePanning?this.target.set(0,0,-1).transformDirection(this.object.matrix).multiplyScalar(l).add(this.object.position):(f.origin.copy(this.object.position),f.direction.set(0,0,-1).transformDirection(this.object.matrix),Math.abs(this.object.up.dot(f.direction))<j?this.object.lookAt(this.target):(T.setFromNormalAndCoplanarPoint(this.object.up,this.target),f.intersectPlane(T,this.target))))}else if(this.object.isOrthographicCamera){let l=this.object.zoom;this.object.zoom=Math.max(this.minZoom,Math.min(this.maxZoom,this.object.zoom/this._scale)),l!==this.object.zoom&&(this.object.updateProjectionMatrix(),h=!0)}return this._scale=1,this._performCursorZoom=!1,h||this._lastPosition.distanceToSquared(this.object.position)>y||8*(1-this._lastQuaternion.dot(this.object.quaternion))>y||this._lastTargetPosition.distanceToSquared(this.target)>y?(this.dispatchEvent(D),this._lastPosition.copy(this.object.position),this._lastQuaternion.copy(this.object.quaternion),this._lastTargetPosition.copy(this.target),!0):!1}_getAutoRotationAngle(t){return t!==null?r/60*this.autoRotateSpeed*t:r/60/60*this.autoRotateSpeed}_getZoomScale(t){let e=Math.abs(t*.01);return Math.pow(.95,this.zoomSpeed*e)}_rotateLeft(t){this._sphericalDelta.theta-=t}_rotateUp(t){this._sphericalDelta.phi-=t}_panLeft(t,e){n.setFromMatrixColumn(e,0),n.multiplyScalar(-t),this._panOffset.add(n)}_panUp(t,e){this.screenSpacePanning===!0?n.setFromMatrixColumn(e,1):(n.setFromMatrixColumn(e,0),n.crossVectors(this.object.up,n)),n.multiplyScalar(t),this._panOffset.add(n)}_pan(t,e){let s=this.domElement;if(this.object.isPerspectiveCamera){let a=this.object.position;n.copy(a).sub(this.target);let h=n.length();h*=Math.tan(this.object.fov/2*Math.PI/180),this._panLeft(2*t*h/s.clientHeight,this.object.matrix),this._panUp(2*e*h/s.clientHeight,this.object.matrix)}else this.object.isOrthographicCamera?(this._panLeft(t*(this.object.right-this.object.left)/this.object.zoom/s.clientWidth,this.object.matrix),this._panUp(e*(this.object.top-this.object.bottom)/this.object.zoom/s.clientHeight,this.object.matrix)):(console.warn(\"WARNING: OrbitControls.js encountered an unknown camera type - pan disabled.\"),this.enablePan=!1)}_dollyOut(t){this.object.isPerspectiveCamera||this.object.isOrthographicCamera?this._scale/=t:(console.warn(\"WARNING: OrbitControls.js encountered an unknown camera type - dolly/zoom disabled.\"),this.enableZoom=!1)}_dollyIn(t){this.object.isPerspectiveCamera||this.object.isOrthographicCamera?this._scale*=t:(console.warn(\"WARNING: OrbitControls.js encountered an unknown camera type - dolly/zoom disabled.\"),this.enableZoom=!1)}_updateZoomParameters(t,e){if(!this.zoomToCursor)return;this._performCursorZoom=!0;let s=this.domElement.getBoundingClientRect(),a=t-s.left,h=e-s.top,l=s.width,d=s.height;this._mouse.x=a/l*2-1,this._mouse.y=-(h/d)*2+1,this._dollyDirection.set(this._mouse.x,this._mouse.y,1).unproject(this.object).sub(this.object.position).normalize()}_clampDistance(t){return Math.max(this.minDistance,Math.min(this.maxDistance,t))}_handleMouseDownRotate(t){this._rotateStart.set(t.clientX,t.clientY)}_handleMouseDownDolly(t){this._updateZoomParameters(t.clientX,t.clientX),this._dollyStart.set(t.clientX,t.clientY)}_handleMouseDownPan(t){this._panStart.set(t.clientX,t.clientY)}_handleMouseMoveRotate(t){this._rotateEnd.set(t.clientX,t.clientY),this._rotateDelta.subVectors(this._rotateEnd,this._rotateStart).multiplyScalar(this.rotateSpeed);let e=this.domElement;this._rotateLeft(r*this._rotateDelta.x/e.clientHeight),this._rotateUp(r*this._rotateDelta.y/e.clientHeight),this._rotateStart.copy(this._rotateEnd),this.update()}_handleMouseMoveDolly(t){this._dollyEnd.set(t.clientX,t.clientY),this._dollyDelta.subVectors(this._dollyEnd,this._dollyStart),this._dollyDelta.y>0?this._dollyOut(this._getZoomScale(this._dollyDelta.y)):this._dollyDelta.y<0&&this._dollyIn(this._getZoomScale(this._dollyDelta.y)),this._dollyStart.copy(this._dollyEnd),this.update()}_handleMouseMovePan(t){this._panEnd.set(t.clientX,t.clientY),this._panDelta.subVectors(this._panEnd,this._panStart).multiplyScalar(this.panSpeed),this._pan(this._panDelta.x,this._panDelta.y),this._panStart.copy(this._panEnd),this.update()}_handleMouseWheel(t){this._updateZoomParameters(t.clientX,t.clientY),t.deltaY<0?this._dollyIn(this._getZoomScale(t.deltaY)):t.deltaY>0&&this._dollyOut(this._getZoomScale(t.deltaY)),this.update()}_handleKeyDown(t){let e=!1;switch(t.code){case this.keys.UP:t.ctrlKey||t.metaKey||t.shiftKey?this.enableRotate&&this._rotateUp(r*this.keyRotateSpeed/this.domElement.clientHeight):this.enablePan&&this._pan(0,this.keyPanSpeed),e=!0;break;case this.keys.BOTTOM:t.ctrlKey||t.metaKey||t.shiftKey?this.enableRotate&&this._rotateUp(-r*this.keyRotateSpeed/this.domElement.clientHeight):this.enablePan&&this._pan(0,-this.keyPanSpeed),e=!0;break;case this.keys.LEFT:t.ctrlKey||t.metaKey||t.shiftKey?this.enableRotate&&this._rotateLeft(r*this.keyRotateSpeed/this.domElement.clientHeight):this.enablePan&&this._pan(this.keyPanSpeed,0),e=!0;break;case this.keys.RIGHT:t.ctrlKey||t.metaKey||t.shiftKey?this.enableRotate&&this._rotateLeft(-r*this.keyRotateSpeed/this.domElement.clientHeight):this.enablePan&&this._pan(-this.keyPanSpeed,0),e=!0;break}e&&(t.preventDefault(),this.update())}_handleTouchStartRotate(t){if(this._pointers.length===1)this._rotateStart.set(t.pageX,t.pageY);else{let e=this._getSecondPointerPosition(t),s=.5*(t.pageX+e.x),a=.5*(t.pageY+e.y);this._rotateStart.set(s,a)}}_handleTouchStartPan(t){if(this._pointers.length===1)this._panStart.set(t.pageX,t.pageY);else{let e=this._getSecondPointerPosition(t),s=.5*(t.pageX+e.x),a=.5*(t.pageY+e.y);this._panStart.set(s,a)}}_handleTouchStartDolly(t){let e=this._getSecondPointerPosition(t),s=t.pageX-e.x,a=t.pageY-e.y,h=Math.sqrt(s*s+a*a);this._dollyStart.set(0,h)}_handleTouchStartDollyPan(t){this.enableZoom&&this._handleTouchStartDolly(t),this.enablePan&&this._handleTouchStartPan(t)}_handleTouchStartDollyRotate(t){this.enableZoom&&this._handleTouchStartDolly(t),this.enableRotate&&this._handleTouchStartRotate(t)}_handleTouchMoveRotate(t){if(this._pointers.length==1)this._rotateEnd.set(t.pageX,t.pageY);else{let s=this._getSecondPointerPosition(t),a=.5*(t.pageX+s.x),h=.5*(t.pageY+s.y);this._rotateEnd.set(a,h)}this._rotateDelta.subVectors(this._rotateEnd,this._rotateStart).multiplyScalar(this.rotateSpeed);let e=this.domElement;this._rotateLeft(r*this._rotateDelta.x/e.clientHeight),this._rotateUp(r*this._rotateDelta.y/e.clientHeight),this._rotateStart.copy(this._rotateEnd)}_handleTouchMovePan(t){if(this._pointers.length===1)this._panEnd.set(t.pageX,t.pageY);else{let e=this._getSecondPointerPosition(t),s=.5*(t.pageX+e.x),a=.5*(t.pageY+e.y);this._panEnd.set(s,a)}this._panDelta.subVectors(this._panEnd,this._panStart).multiplyScalar(this.panSpeed),this._pan(this._panDelta.x,this._panDelta.y),this._panStart.copy(this._panEnd)}_handleTouchMoveDolly(t){let e=this._getSecondPointerPosition(t),s=t.pageX-e.x,a=t.pageY-e.y,h=Math.sqrt(s*s+a*a);this._dollyEnd.set(0,h),this._dollyDelta.set(0,Math.pow(this._dollyEnd.y/this._dollyStart.y,this.zoomSpeed)),this._dollyOut(this._dollyDelta.y),this._dollyStart.copy(this._dollyEnd);let l=(t.pageX+e.x)*.5,d=(t.pageY+e.y)*.5;this._updateZoomParameters(l,d)}_handleTouchMoveDollyPan(t){this.enableZoom&&this._handleTouchMoveDolly(t),this.enablePan&&this._handleTouchMovePan(t)}_handleTouchMoveDollyRotate(t){this.enableZoom&&this._handleTouchMoveDolly(t),this.enableRotate&&this._handleTouchMoveRotate(t)}_addPointer(t){this._pointers.push(t.pointerId)}_removePointer(t){delete this._pointerPositions[t.pointerId];for(let e=0;e<this._pointers.length;e++)if(this._pointers[e]==t.pointerId){this._pointers.splice(e,1);return}}_isTrackingPointer(t){for(let e=0;e<this._pointers.length;e++)if(this._pointers[e]==t.pointerId)return!0;return!1}_trackPointer(t){let e=this._pointerPositions[t.pointerId];e===void 0&&(e=new c,this._pointerPositions[t.pointerId]=e),e.set(t.pageX,t.pageY)}_getSecondPointerPosition(t){let e=t.pointerId===this._pointers[0]?this._pointers[1]:this._pointers[0];return this._pointerPositions[e]}_customWheelEvent(t){let e=t.deltaMode,s={clientX:t.clientX,clientY:t.clientY,deltaY:t.deltaY};switch(e){case 1:s.deltaY*=16;break;case 2:s.deltaY*=100;break}return t.ctrlKey&&!this._controlActive&&(s.deltaY*=10),s}};function A(i){this.enabled!==!1&&(this._pointers.length===0&&(this.domElement.setPointerCapture(i.pointerId),this.domElement.ownerDocument.addEventListener(\"pointermove\",this._onPointerMove),this.domElement.ownerDocument.addEventListener(\"pointerup\",this._onPointerUp)),!this._isTrackingPointer(i)&&(this._addPointer(i),i.pointerType===\"touch\"?this._onTouchStart(i):this._onMouseDown(i),this._cursorStyle===\"grab\"&&(this.domElement.style.cursor=\"grabbing\")))}function k(i){this.enabled!==!1&&(i.pointerType===\"touch\"?this._onTouchMove(i):this._onMouseMove(i))}function x(i){switch(this._removePointer(i),this._pointers.length){case 0:this.domElement.releasePointerCapture(i.pointerId),this.domElement.ownerDocument.removeEventListener(\"pointermove\",this._onPointerMove),this.domElement.ownerDocument.removeEventListener(\"pointerup\",this._onPointerUp),this.dispatchEvent(M),this.state=o.NONE,this._cursorStyle===\"grab\"&&(this.domElement.style.cursor=\"grab\");break;case 1:let t=this._pointers[0],e=this._pointerPositions[t];this._onTouchStart({pointerId:t,pageX:e.x,pageY:e.y});break}}function C(i){let t;switch(i.button){case 0:t=this.mouseButtons.LEFT;break;case 1:t=this.mouseButtons.MIDDLE;break;case 2:t=this.mouseButtons.RIGHT;break;default:t=-1}switch(t){case u.DOLLY:if(this.enableZoom===!1)return;this._handleMouseDownDolly(i),this.state=o.DOLLY;break;case u.ROTATE:if(i.ctrlKey||i.metaKey||i.shiftKey){if(this.enablePan===!1)return;this._handleMouseDownPan(i),this.state=o.PAN}else{if(this.enableRotate===!1)return;this._handleMouseDownRotate(i),this.state=o.ROTATE}break;case u.PAN:if(i.ctrlKey||i.metaKey||i.shiftKey){if(this.enableRotate===!1)return;this._handleMouseDownRotate(i),this.state=o.ROTATE}else{if(this.enablePan===!1)return;this._handleMouseDownPan(i),this.state=o.PAN}break;default:this.state=o.NONE}this.state!==o.NONE&&this.dispatchEvent(b)}function N(i){switch(this.state){case o.ROTATE:if(this.enableRotate===!1)return;this._handleMouseMoveRotate(i);break;case o.DOLLY:if(this.enableZoom===!1)return;this._handleMouseMoveDolly(i);break;case o.PAN:if(this.enablePan===!1)return;this._handleMouseMovePan(i);break}}function I(i){this.enabled===!1||this.enableZoom===!1||this.state!==o.NONE||(i.preventDefault(),this.dispatchEvent(b),this._handleMouseWheel(this._customWheelEvent(i)),this.dispatchEvent(M))}function Y(i){this.enabled!==!1&&this._handleKeyDown(i)}function U(i){switch(this._trackPointer(i),this._pointers.length){case 1:switch(this.touches.ONE){case _.ROTATE:if(this.enableRotate===!1)return;this._handleTouchStartRotate(i),this.state=o.TOUCH_ROTATE;break;case _.PAN:if(this.enablePan===!1)return;this._handleTouchStartPan(i),this.state=o.TOUCH_PAN;break;default:this.state=o.NONE}break;case 2:switch(this.touches.TWO){case _.DOLLY_PAN:if(this.enableZoom===!1&&this.enablePan===!1)return;this._handleTouchStartDollyPan(i),this.state=o.TOUCH_DOLLY_PAN;break;case _.DOLLY_ROTATE:if(this.enableZoom===!1&&this.enableRotate===!1)return;this._handleTouchStartDollyRotate(i),this.state=o.TOUCH_DOLLY_ROTATE;break;default:this.state=o.NONE}break;default:this.state=o.NONE}this.state!==o.NONE&&this.dispatchEvent(b)}function Z(i){switch(this._trackPointer(i),this.state){case o.TOUCH_ROTATE:if(this.enableRotate===!1)return;this._handleTouchMoveRotate(i),this.update();break;case o.TOUCH_PAN:if(this.enablePan===!1)return;this._handleTouchMovePan(i),this.update();break;case o.TOUCH_DOLLY_PAN:if(this.enableZoom===!1&&this.enablePan===!1)return;this._handleTouchMoveDollyPan(i),this.update();break;case o.TOUCH_DOLLY_ROTATE:if(this.enableZoom===!1&&this.enableRotate===!1)return;this._handleTouchMoveDollyRotate(i),this.update();break;default:this.state=o.NONE}}function z(i){this.enabled!==!1&&i.preventDefault()}function K(i){i.key===\"Control\"&&(this._controlActive=!0,this.domElement.getRootNode().addEventListener(\"keyup\",this._interceptControlUp,{passive:!0,capture:!0}))}function H(i){i.key===\"Control\"&&(this._controlActive=!1,this.domElement.getRootNode().removeEventListener(\"keyup\",this._interceptControlUp,{passive:!0,capture:!0}))}export{S as OrbitControls};\n//# sourceMappingURL=OrbitControls.mjs.map","/* esm.sh - three@0.183.2/examples/jsm/controls/OrbitControls */\nimport \"/three@0.183.2/es2022/three.mjs\";\nexport * from \"/three@0.183.2/es2022/examples/jsm/controls/OrbitControls.mjs\";\n","// @ts-nocheck\n// #region 1. IMPORTS & DEPENDENCIES\nimport*as THREE from\"https://esm.sh/three@0.183.2\";import{computeBoundsTree,disposeBoundsTree,acceleratedRaycast}from\"https://esm.sh/three-mesh-bvh@0.8.2?deps=three@0.183.2\";THREE.BufferGeometry.prototype.computeBoundsTree=computeBoundsTree;THREE.BufferGeometry.prototype.disposeBoundsTree=disposeBoundsTree;THREE.Mesh.prototype.raycast=acceleratedRaycast;import{MeshoptDecoder}from\"https://esm.sh/three@0.183.2/examples/jsm/libs/meshopt_decoder.module.js?deps=three@0.183.2\";import{GLTFLoader}from\"https://esm.sh/three@0.183.2/examples/jsm/loaders/GLTFLoader.js?deps=three@0.183.2\";import{DRACOLoader}from\"https://esm.sh/three@0.183.2/examples/jsm/loaders/DRACOLoader.js?deps=three@0.183.2\";import*as SkeletonUtils from\"https://esm.sh/three@0.183.2/examples/jsm/utils/SkeletonUtils.js?deps=three@0.183.2\";import*as BufferGeometryUtils from\"https://esm.sh/three@0.183.2/examples/jsm/utils/BufferGeometryUtils.js?deps=three@0.183.2\";import{OrbitControls}from\"https://esm.sh/three@0.183.2/examples/jsm/controls/OrbitControls.js?deps=three@0.183.2\";import*as React from\"react\";import{startTransition,useEffect,useRef,useState,useId}from\"react\";import{createPortal}from\"react-dom\";import{addPropertyControls,ControlType,RenderTarget,useCurrentRouteId,useIsOnFramerCanvas,useRouter}from\"framer\";export{THREE,MeshoptDecoder,GLTFLoader,DRACOLoader,SkeletonUtils,BufferGeometryUtils,OrbitControls,React,startTransition,useEffect,useRef,useState,useId,createPortal,addPropertyControls,ControlType,RenderTarget,useCurrentRouteId,useIsOnFramerCanvas,useRouter,};// #endregion\n// #region 1b. LAZY-LOADED DEPENDENCIES\n// These are only pulled over the network the first time a feature that\n// actually needs them is used (postprocessing FX, FBX import, ZIP model\n// bundles, the debug Stats overlay, custom HDRIs). Keeping them out of the\n// eager import graph is what the initial Lighthouse \"unused JavaScript\" /\n// bootup-time cost was mostly coming from.\nlet _fbxLoaderModule=null;export function _loadFBXLoader(){if(!_fbxLoaderModule){_fbxLoaderModule=import(\"https://esm.sh/three@0.183.2/examples/jsm/loaders/FBXLoader.js?deps=three@0.183.2\").then(m=>m.FBXLoader);}return _fbxLoaderModule;}let _hdrLoaderModule=null;export function _loadHDRLoader(){if(!_hdrLoaderModule){_hdrLoaderModule=import(\"https://esm.sh/three@0.183.2/examples/jsm/loaders/HDRLoader.js?deps=three@0.183.2\").then(m=>m.HDRLoader);}return _hdrLoaderModule;}let _jsZipModule=null;export function _loadJSZip(){if(!_jsZipModule){_jsZipModule=import(\"https://esm.sh/jszip@3.10.1\").then(m=>m.default||m);}return _jsZipModule;}let _statsModule=null;export function _loadStats(){if(!_statsModule){_statsModule=import(\"https://esm.sh/stats.js@0.17.0\").then(m=>m.default||m);}return _statsModule;}let _postFxModules=null;export function _loadPostFxModules(){if(!_postFxModules){_postFxModules=Promise.all([import(\"https://esm.sh/three@0.183.2/examples/jsm/postprocessing/EffectComposer.js?deps=three@0.183.2\"),import(\"https://esm.sh/three@0.183.2/examples/jsm/postprocessing/RenderPass.js?deps=three@0.183.2\"),import(\"https://esm.sh/three@0.183.2/examples/jsm/postprocessing/UnrealBloomPass.js?deps=three@0.183.2\"),import(\"https://esm.sh/three@0.183.2/examples/jsm/postprocessing/ShaderPass.js?deps=three@0.183.2\"),import(\"https://esm.sh/three@0.183.2/examples/jsm/postprocessing/SSAOPass.js?deps=three@0.183.2\"),import(\"https://esm.sh/three@0.183.2/examples/jsm/postprocessing/BokehPass.js?deps=three@0.183.2\"),import(\"https://esm.sh/three@0.183.2/examples/jsm/postprocessing/OutputPass.js?deps=three@0.183.2\"),import(\"https://esm.sh/three@0.183.2/examples/jsm/shaders/FXAAShader.js?deps=three@0.183.2\")]).then(([effectComposerMod,renderPassMod,bloomMod,shaderPassMod,ssaoMod,bokehMod,outputMod,fxaaMod])=>({EffectComposer:effectComposerMod.EffectComposer,RenderPass:renderPassMod.RenderPass,UnrealBloomPass:bloomMod.UnrealBloomPass,ShaderPass:shaderPassMod.ShaderPass,SSAOPass:ssaoMod.SSAOPass,BokehPass:bokehMod.BokehPass,OutputPass:outputMod.OutputPass,FXAAShader:fxaaMod.FXAAShader}));}return _postFxModules;}// #endregion\n\nexport const __FramerMetadata__ = {\"exports\":{\"GLTFLoader\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"React\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRouter\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_loadStats\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"createPortal\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"RenderTarget\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"ControlType\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_loadHDRLoader\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"startTransition\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"DRACOLoader\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"BufferGeometryUtils\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_loadJSZip\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRef\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"MeshoptDecoder\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"addPropertyControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"OrbitControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useCurrentRouteId\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useEffect\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_loadFBXLoader\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useState\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"THREE\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_loadPostFxModules\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsOnFramerCanvas\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useId\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SkeletonUtils\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./deps.map","// @ts-nocheck\n// #region 3. PRESETS & CONSTANTS\nimport{THREE}from\"https://framerusercontent.com/modules/YeYAFpMfJfcs2D9mfKFW/DDv12VyHhTY27qyXtQ6t/deps.js\";export const _IMPORT_3D_RENDERER_DEBUG_KEY=\"__IMPORT_3D_RENDERER_DEBUG__\";/** Orthographic frustum half-size (world units). Zoom controls magnification. */export const _ORTHO_FRUSTUM=10;/** Desktop auto-fit cap keeps published wide viewports from scaling models larger than the Framer canvas. */export const _AUTO_FIT_MAX_ASPECT=1.42;/** Minimum visible size to prevent division by zero in auto-fit calculations. */export const _AUTO_FIT_MIN_VISIBLE=1e-4;/** Degrees to radians conversion constant (shared across all transforms). */export const _DEG2RAD=Math.PI/180;/** Scroll-variant transform smoothing is always on; no user-facing panel needed. */export const _SCROLL_SMOOTHING_SPEED=.08;export const easeInOutQuad=x=>x<.5?2*x*x:1-Math.pow(-2*x+2,2)/2;/* ═══════════════════════════════════════════════════════════\n   Material Presets\n   ═══════════════════════════════════════════════════════════ */export const MATERIAL_PRESETS={none:null,wireframe:{metalness:0,roughness:.5,clearcoat:0,clearcoatRoughness:0,color:\"#00ffff\",envMapIntensity:.5,reflectivity:.3,transmission:0,ior:1.5,wireframe:true},// ── Special presets (non-PBR, handled separately) ──\ntoonShading:{_type:\"sketch\",steps:3},sketchStyle:{_type:\"sketch\",steps:3},animeLine:{_type:\"outline\",color:\"#e8e0d8\",emissiveColor:\"#ffffff\",emissiveIntensity:.08,outlineColor:\"#050505\",outlineThickness:.06,steps:0}};/* ═══════════════════════════════════════════════════════════\n   Tone Mapping Options\n   ═══════════════════════════════════════════════════════════ */export const TONE_MAPPINGS={aces:THREE.ACESFilmicToneMapping,reinhard:THREE.ReinhardToneMapping,cineon:THREE.CineonToneMapping,linear:THREE.LinearToneMapping,agx:THREE.AgXToneMapping,neutral:THREE.NeutralToneMapping};/* ═══════════════════════════════════════════════════════════\n   HDRI Presets — Poly Haven CDN (free, CC0, CORS-enabled)\n   ═══════════════════════════════════════════════════════════ */const HDRI_BASE=\"https://dl.polyhaven.org/file/ph-assets/HDRIs/hdr/1k/\";export const HDRI_PRESETS={// ── Studio ──\nstudio_small_09:{url:HDRI_BASE+\"studio_small_09_1k.hdr\",label:\"Studio Soft\"},photo_studio_loft_hall:{url:HDRI_BASE+\"photo_studio_loft_hall_1k.hdr\",label:\"Loft Studio\"},studio_small_03:{url:HDRI_BASE+\"studio_small_03_1k.hdr\",label:\"Studio Warm\"},brown_photostudio_07:{url:HDRI_BASE+\"brown_photostudio_07_1k.hdr\",label:\"Photo Studio\"},// ── Outdoor ──\nkloofendal_48d_partly_cloudy_puresky:{url:HDRI_BASE+\"kloofendal_48d_partly_cloudy_puresky_1k.hdr\",label:\"Cloudy Sky\"},meadow_2:{url:HDRI_BASE+\"meadow_2_1k.hdr\",label:\"Meadow\"},autumn_field_puresky:{url:HDRI_BASE+\"autumn_field_puresky_1k.hdr\",label:\"Autumn Field\"},spruit_sunrise:{url:HDRI_BASE+\"spruit_sunrise_1k.hdr\",label:\"Sunrise\"},rosendal_plains_2:{url:HDRI_BASE+\"rosendal_plains_2_1k.hdr\",label:\"Plains\"},// ── Sunset / Golden ──\nvenice_sunset:{url:HDRI_BASE+\"venice_sunset_1k.hdr\",label:\"Venice Sunset\"},industrial_sunset_puresky:{url:HDRI_BASE+\"industrial_sunset_puresky_1k.hdr\",label:\"Industrial Sunset\"},sunflowers_puresky:{url:HDRI_BASE+\"sunflowers_puresky_1k.hdr\",label:\"Sunflowers\"},// ── Night ──\ndikhololo_night:{url:HDRI_BASE+\"dikhololo_night_1k.hdr\",label:\"Night Sky\"},moonlit_golf:{url:HDRI_BASE+\"moonlit_golf_1k.hdr\",label:\"Moonlit\"},// ── Urban / Architecture ──\nmodern_buildings_2:{url:HDRI_BASE+\"modern_buildings_2_1k.hdr\",label:\"Modern City\"},royal_esplanade:{url:HDRI_BASE+\"royal_esplanade_1k.hdr\",label:\"Royal Palace\"},paul_lobe_haus:{url:HDRI_BASE+\"paul_lobe_haus_1k.hdr\",label:\"Architecture\"},// ── Nature ──\nsnowy_forest_path_01:{url:HDRI_BASE+\"snowy_forest_path_01_1k.hdr\",label:\"Snowy Forest\"},misty_pines:{url:HDRI_BASE+\"misty_pines_1k.hdr\",label:\"Misty Pines\"},syferfontein_18d_clear_puresky:{url:HDRI_BASE+\"syferfontein_18d_clear_puresky_1k.hdr\",label:\"Clear Sky\"}};/* ═══════════════════════════════════════════════════════════\n   Environment Presets — procedural PMREM\n   ═══════════════════════════════════════════════════════════ */export const ENV_PRESETS={studio:{sky:{top:[.08,.12,.22],mid:[.15,.18,.28],bot:[.02,.02,.05]},lights:[{color:[4,3.8,3.5],pos:[10,15,10],size:8},{color:[1.5,2,3],pos:[-12,5,-5],size:8},{color:[2.5,2.5,3],pos:[-5,10,-15],size:6}]},sunset:{sky:{top:[.05,.08,.2],mid:[.5,.25,.1],bot:[.03,.02,.03]},lights:[{color:[5,3,1.5],pos:[15,5,10],size:12},{color:[1,.5,.3],pos:[-10,3,-8],size:8},{color:[3,2,1.5],pos:[0,15,-5],size:6}]},dawn:{sky:{top:[.1,.15,.35],mid:[.3,.2,.25],bot:[.05,.04,.06]},lights:[{color:[3,2.5,3.5],pos:[12,8,8],size:10},{color:[1,1.5,2.5],pos:[-8,10,-5],size:8},{color:[2,1.8,2.5],pos:[5,15,-10],size:6}]},night:{sky:{top:[.01,.02,.06],mid:[.03,.04,.08],bot:[.005,.005,.01]},lights:[{color:[.8,1,2],pos:[10,12,8],size:6},{color:[.3,.5,1.2],pos:[-10,8,-5],size:8},{color:[.5,.5,1],pos:[0,15,-10],size:4}]},warehouse:{sky:{top:[.15,.13,.1],mid:[.1,.09,.08],bot:[.04,.03,.03]},lights:[{color:[5,4.5,4],pos:[0,20,0],size:15},{color:[2,1.8,1.5],pos:[10,5,10],size:6},{color:[1.5,1.5,2],pos:[-10,5,-10],size:6}]},outdoor:{sky:{top:[.2,.4,.8],mid:[.5,.6,.7],bot:[.1,.08,.06]},lights:[{color:[6,5.5,4.5],pos:[10,20,5],size:10},{color:[1.5,2,3],pos:[-15,5,-10],size:12},{color:[.5,.8,1.2],pos:[0,-5,0],size:20}]}};export const _IMPORT_3D_BRIDGE_KEY=\"__IMPORT_3D_CANVAS_BRIDGE__\"// #endregion\n;\nexport const __FramerMetadata__ = {\"exports\":{\"TONE_MAPPINGS\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"ENV_PRESETS\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_IMPORT_3D_BRIDGE_KEY\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_AUTO_FIT_MIN_VISIBLE\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_DEG2RAD\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"MATERIAL_PRESETS\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_AUTO_FIT_MAX_ASPECT\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"easeInOutQuad\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_SCROLL_SMOOTHING_SPEED\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_IMPORT_3D_RENDERER_DEBUG_KEY\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"HDRI_PRESETS\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_ORTHO_FRUSTUM\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./constants.map","// @ts-nocheck\n// #region 21. FRAMER PROPERTY CONTROLS\nimport{ControlType}from\"https://framerusercontent.com/modules/YeYAFpMfJfcs2D9mfKFW/DDv12VyHhTY27qyXtQ6t/deps.js\";import{HDRI_PRESETS}from\"https://framerusercontent.com/modules/urxcwcToMwyEWH05dzo6/cUcLUwBj9Qei2vxq7YKV/constants.js\";function _withRuntimeRoleHidden(controls,hiddenByRole){const mapped={};Object.entries(controls||{}).forEach(([key,control])=>{const originalHidden=control?.hidden;mapped[key]={...control,hidden:props=>{if(hiddenByRole(props))return true;if(typeof originalHidden===\"function\")return originalHidden(props);return!!originalHidden;}};});return mapped;}/* ═══════════════════════════════════════════════════════════\n   Framer Property Controls\n   ═══════════════════════════════════════════════════════════ */// @api FramerControls.schema\nexport const IMPORT_3D_PROPERTY_CONTROLS={// ━━━ Model Source ━━━\nmodelSource:{type:ControlType.Enum,title:\"Source\",options:[\"url\",\"file\"],optionTitles:[\"URL\",\"Upload\"],defaultValue:\"url\",displaySegmentedControl:true},modelUrl:{type:ControlType.String,title:\"Model URL\",defaultValue:\"\",placeholder:\"https://example.com/model.glb\",description:\" \",hidden:p=>p.modelSource===\"file\"},modelFile:{type:ControlType.File,title:\"Model File\",allowedFileTypes:[\"glb\",\"gltf\",\"fbx\",\"zip\"],hidden:p=>p.modelSource!==\"file\"},autoMergeMeshes:{type:ControlType.Boolean,title:\"Optimize Meshes\",defaultValue:false,description:\"Optimizes draw calls by merging static geometries with identical materials.\"},// ━━━ Material / PBR ━━━\nmaterial:{type:ControlType.Object,title:\"Material\",controls:{preset:{type:ControlType.Enum,title:\"Preset\",options:[\"none\",\"wireframe\",\"sketchStyle\",\"animeLine\"],optionTitles:[\"None (Original)\",\"Wireframe\",\"Sketch Style\",\"Anime Line\"],defaultValue:\"none\"},animeLineThickness:{type:ControlType.Number,title:\"Line Weight\",defaultValue:.06,min:0,max:1,step:.01,displayStepper:true,hidden:p=>p.preset!==\"animeLine\"},animeLineColor:{type:ControlType.Color,title:\"Line Color\",defaultValue:\"#050505\",hidden:p=>p.preset!==\"animeLine\"},animeLineEmissiveColor:{type:ControlType.Color,title:\"Emissive\",defaultValue:\"#ffffff\",hidden:p=>p.preset!==\"animeLine\"},animeLineEmissiveIntensity:{type:ControlType.Number,title:\"Glow Intensity\",defaultValue:.01,min:0,max:5,step:.01,displayStepper:true,hidden:p=>p.preset!==\"animeLine\"},sketchBaseColor:{type:ControlType.Color,title:\"Sketch Color\",defaultValue:\"#f4f2ec\",hidden:p=>p.preset!==\"sketchStyle\"},sketchLineColor:{type:ControlType.Color,title:\"Sketch Line\",defaultValue:\"#050505\",hidden:p=>p.preset!==\"sketchStyle\"},sketchLineThickness:{type:ControlType.Number,title:\"Line Weight\",defaultValue:.045,min:0,max:1,step:.005,displayStepper:true,hidden:p=>p.preset!==\"sketchStyle\"},sketchSteps:{type:ControlType.Number,title:\"Banding Steps\",defaultValue:3,min:0,max:10,step:.001,displayStepper:true,hidden:p=>p.preset!==\"sketchStyle\"},override:{type:ControlType.Boolean,title:\"Manual PBR\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\",hidden:p=>p.preset!==\"none\"},metalness:{type:ControlType.Number,displayStepper:true,title:\"Metalness\",defaultValue:0,min:0,max:1,step:.01,hidden:p=>p.preset!==\"none\"||!p.override},roughness:{type:ControlType.Number,displayStepper:true,title:\"Roughness\",defaultValue:.5,min:0,max:1,step:.01,hidden:p=>p.preset!==\"none\"||!p.override},clearcoat:{type:ControlType.Number,displayStepper:true,title:\"Clearcoat\",defaultValue:0,min:0,max:1,step:.01,hidden:p=>p.preset!==\"none\"||!p.override},clearcoatRoughness:{type:ControlType.Number,displayStepper:true,title:\"CC Roughness\",defaultValue:0,min:0,max:1,step:.01,hidden:p=>p.preset!==\"none\"||!p.override||p.clearcoat===0},transmission:{type:ControlType.Number,displayStepper:true,title:\"Transmission\",defaultValue:0,min:0,max:1,step:.01,hidden:p=>p.preset!==\"none\"||!p.override,description:\"Glass/liquid transparency\"},thickness:{type:ControlType.Number,displayStepper:true,title:\"Thickness\",defaultValue:0,min:0,max:5,step:.05,hidden:p=>p.preset!==\"none\"||!p.override||p.transmission===0},ior:{type:ControlType.Number,displayStepper:true,title:\"IOR\",defaultValue:1.5,min:1,max:2.5,step:.01,hidden:p=>p.preset!==\"none\"||!p.override||p.transmission===0,description:\"Index of refraction\"},opacity:{type:ControlType.Number,displayStepper:true,title:\"Opacity\",defaultValue:1,min:0,max:1,step:.01,hidden:p=>p.preset!==\"none\"||!p.override},iridescence:{type:ControlType.Number,displayStepper:true,title:\"Iridescence\",defaultValue:0,min:0,max:1,step:.01,hidden:p=>p.preset!==\"none\"||!p.override},iridescenceIOR:{type:ControlType.Number,displayStepper:true,title:\"Irid IOR\",defaultValue:1.3,min:1,max:2.5,step:.01,hidden:p=>p.preset!==\"none\"||!p.override||p.iridescence===0},sheen:{type:ControlType.Number,displayStepper:true,title:\"Sheen\",defaultValue:0,min:0,max:1,step:.01,hidden:p=>p.preset!==\"none\"||!p.override},sheenRoughness:{type:ControlType.Number,displayStepper:true,title:\"Sheen Rough\",defaultValue:.3,min:0,max:1,step:.01,hidden:p=>p.preset!==\"none\"||!p.override||p.sheen===0},sheenColor:{type:ControlType.Color,title:\"Sheen Color\",defaultValue:\"#ffffff\",hidden:p=>p.preset!==\"none\"||!p.override||p.sheen===0},envMapIntensity:{type:ControlType.Number,displayStepper:true,title:\"Env Reflect\",defaultValue:1,min:0,max:5,step:.05,hidden:p=>p.preset!==\"none\"||!p.override},reflectivity:{type:ControlType.Number,displayStepper:true,title:\"Reflectivity\",defaultValue:.5,min:0,max:1,step:.01,hidden:p=>p.preset!==\"none\"||!p.override},emissiveIntensity:{type:ControlType.Number,displayStepper:true,title:\"Emissive Int\",defaultValue:0,min:0,max:5,step:.05,hidden:p=>p.preset!==\"none\"||!p.override},emissiveColor:{type:ControlType.Color,title:\"Emissive Color\",defaultValue:\"#000000\",hidden:p=>p.preset!==\"none\"||!p.override||p.emissiveIntensity===0},wireframe:{type:ControlType.Boolean,title:\"Wireframe\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\",hidden:p=>p.preset!==\"none\"||!p.override},transitionDuration:{type:ControlType.Number,displayStepper:true,title:\"Transition Duration\",defaultValue:.3,min:0,max:2,step:.05,unit:\"s\",description:\"Higher = Slower fade\"}}},// ━━━ Interaction ━━━\ninteraction:{type:ControlType.Object,title:\"Interaction\",controls:{orbit:{type:ControlType.Boolean,title:\"Orbit\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"},zoom:{type:ControlType.Boolean,title:\"Zoom\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\",hidden:p=>!p.orbit,description:\" \"},autoRotate:{type:ControlType.Boolean,title:\"Auto Rotate\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"},rotateSpeed:{type:ControlType.Number,displayStepper:true,title:\"Speed\",defaultValue:.5,min:0,max:20,step:.1,hidden:p=>!p.autoRotate,description:\" \"},float:{type:ControlType.Boolean,title:\"Float\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"},floatAmp:{type:ControlType.Number,displayStepper:true,title:\"Float Amp\",defaultValue:.8,min:0,max:5,step:.05,hidden:p=>!p.float},floatSpeed:{type:ControlType.Number,displayStepper:true,title:\"Float Speed\",defaultValue:.4,min:.01,max:5,step:.01,hidden:p=>!p.float,description:\" \"},mouseRotate:{type:ControlType.Boolean,title:\"Mouse Rotate\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\"},mouseRotateIntensity:{type:ControlType.Number,displayStepper:true,title:\"Mouse Intensity\",defaultValue:.1,min:.01,max:1,step:.01,hidden:p=>!p.mouseRotate,description:\" \"},particles:{type:ControlType.Boolean,title:\"Particles\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\"},particleCount:{type:ControlType.Number,displayStepper:true,title:\"Count\",defaultValue:2e3,min:100,max:1e4,step:100,hidden:p=>!p.particles},particleSize:{type:ControlType.Number,displayStepper:true,title:\"Size\",defaultValue:.05,min:.01,max:1,step:.01,hidden:p=>!p.particles},particleColor:{type:ControlType.Color,title:\"Color\",defaultValue:\"#00ffff\",hidden:p=>!p.particles},particleSpeed:{type:ControlType.Number,displayStepper:true,title:\"Speed\",defaultValue:1,min:0,max:5,step:.1,hidden:p=>!p.particles},particleSpread:{type:ControlType.Number,displayStepper:true,title:\"Spread\",defaultValue:10,min:1,max:30,step:.5,hidden:p=>!p.particles,description:\" \"}}},// ━━━ Object Events (Click / Hover / Drag / Scroll) ━━━\nmeshInteractions:{type:ControlType.Array,title:\"Object Events\",description:\" \",maxCount:20,control:{type:ControlType.Object,controls:{meshName:{type:ControlType.String,title:\"Object Name\",defaultValue:\"\",placeholder:\"e.g. Button, Door_L\"},click:{type:ControlType.Object,title:\"Click\",controls:{enabled:{type:ControlType.Boolean,title:\"Click\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\"},action:{type:ControlType.Enum,title:\"Action\",options:[\"none\",\"openUrl\",\"toggleVisibility\",\"changeColor\",\"playAnimation\"],optionTitles:[\"None\",\"Open URL\",\"Toggle Visibility\",\"Change Color\",\"Play Animation\"],defaultValue:\"none\",hidden:p=>!p.enabled},url:{type:ControlType.Link,title:\"URL\",defaultValue:\"\",hidden:p=>!p.enabled||p.action!==\"openUrl\"},newTab:{type:ControlType.Boolean,title:\"New Tab\",defaultValue:true,enabledTitle:\"Yes\",disabledTitle:\"No\",description:\" \",hidden:p=>!p.enabled||p.action!==\"openUrl\"},targetObject:{type:ControlType.String,title:\"Target Object\",defaultValue:\"\",placeholder:\"Object to toggle (empty = self)\",description:\" \",hidden:p=>!p.enabled||p.action!==\"toggleVisibility\"},color:{type:ControlType.Color,title:\"Color\",defaultValue:\"#ff0000\",description:\" \",hidden:p=>!p.enabled||p.action!==\"changeColor\"},animName:{type:ControlType.String,title:\"Anim Name\",defaultValue:\"\",placeholder:\"Animation clip name\",hidden:p=>!p.enabled||p.action!==\"playAnimation\"},animLoop:{type:ControlType.Enum,title:\"Loop Mode\",options:[\"once\",\"repeat\",\"pingPong\"],optionTitles:[\"Once\",\"Repeat\",\"Ping Pong\"],defaultValue:\"once\",hidden:p=>!p.enabled||p.action!==\"playAnimation\"},animReverse:{type:ControlType.Boolean,title:\"Reverse\",defaultValue:false,enabledTitle:\"Yes\",disabledTitle:\"No\",description:\" \",hidden:p=>!p.enabled||p.action!==\"playAnimation\"},onClick:{type:ControlType.EventHandler,title:\"On Click / Tap\",description:\" \",hidden:p=>!p.enabled},onAnimationComplete:{type:ControlType.EventHandler,title:\"On Anim Complete\",hidden:p=>!p.enabled||p.action!==\"playAnimation\"}}},hover:{type:ControlType.Object,title:\"Hover\",controls:{enabled:{type:ControlType.Boolean,title:\"Hover\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\"},color:{type:ControlType.Color,title:\"Hover Color\",defaultValue:\"#4466ff\",hidden:p=>!p.enabled},transformScale:{type:ControlType.Number,displayStepper:true,title:\"Scale\",defaultValue:1,min:.01,max:5,step:.01,hidden:p=>!p.enabled},transformPosition:{type:ControlType.String,title:\"Position\",defaultValue:\"0,0,0\",placeholder:\"X,Y,Z\",hidden:p=>!p.enabled},transformRotation:{type:ControlType.String,title:\"Rotation\",defaultValue:\"0,0,0\",placeholder:\"X,Y,Z\",hidden:p=>!p.enabled},speed:{type:ControlType.Number,displayStepper:true,title:\"Hover Speed\",defaultValue:10,min:1,max:30,step:.5,hidden:p=>!p.enabled},tooltip:{type:ControlType.String,title:\"Tooltip\",defaultValue:\"\",placeholder:\"Tooltip text on hover\",description:\" \",hidden:p=>!p.enabled},onEnter:{type:ControlType.EventHandler,title:\"On Hover In\",hidden:p=>!p.enabled},onLeave:{type:ControlType.EventHandler,title:\"On Hover Out\",hidden:p=>!p.enabled}}},press:{type:ControlType.Object,title:\"Press\",controls:{enabled:{type:ControlType.Boolean,title:\"Press\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\"},transformScale:{type:ControlType.Number,displayStepper:true,title:\"Scale\",defaultValue:1,min:.01,max:5,step:.01,hidden:p=>!p.enabled},transformPosition:{type:ControlType.String,title:\"Position\",defaultValue:\"0,0,0\",placeholder:\"X,Y,Z\",hidden:p=>!p.enabled},transformRotation:{type:ControlType.String,title:\"Rotation\",defaultValue:\"0,0,0\",placeholder:\"X,Y,Z\",description:\" \",hidden:p=>!p.enabled}}},interaction:{type:ControlType.Object,title:\"Interaction\",controls:{enabled:{type:ControlType.Boolean,title:\"Interaction\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\"},autoRotate:{type:ControlType.Boolean,title:\"Auto Rotate\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\",hidden:p=>!p.enabled},rotateSpeed:{type:ControlType.Number,displayStepper:true,title:\"Rotate Speed\",defaultValue:1,min:.1,max:10,step:.1,hidden:p=>!p.enabled||!p.autoRotate},rotateAxis:{type:ControlType.Enum,title:\"Rotate Axis\",options:[\"y\",\"x\",\"z\"],optionTitles:[\"Y (Up)\",\"X (Right)\",\"Z (Forward)\"],defaultValue:\"y\",hidden:p=>!p.enabled||!p.autoRotate},mouseRotate:{type:ControlType.Boolean,title:\"Mouse Rotate\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\",hidden:p=>!p.enabled},mouseRotateIntensity:{type:ControlType.Number,displayStepper:true,title:\"Intensity\",defaultValue:.1,min:.01,max:1,step:.01,description:\" \",hidden:p=>!p.enabled||!p.mouseRotate}}},drag:{type:ControlType.Object,title:\"Drag\",controls:{enabled:{type:ControlType.Boolean,title:\"Drag\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\"},plane:{type:ControlType.Enum,title:\"Plane\",options:[\"xz\",\"xy\",\"yz\",\"screen\"],optionTitles:[\"XZ (Floor)\",\"XY (Wall)\",\"YZ (Side)\",\"Screen\"],defaultValue:\"xz\",hidden:p=>!p.enabled},snapBack:{type:ControlType.Boolean,title:\"Snap Back\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\",hidden:p=>!p.enabled},constraint:{type:ControlType.Number,displayStepper:true,title:\"Max Distance\",defaultValue:0,min:0,max:50,step:.1,description:\" \",hidden:p=>!p.enabled},onStart:{type:ControlType.EventHandler,title:\"On Drag Start\",hidden:p=>!p.enabled},onEnd:{type:ControlType.EventHandler,title:\"On Drag End\",hidden:p=>!p.enabled}}},scroll:{type:ControlType.Object,title:\"Scroll\",controls:{enabled:{type:ControlType.Boolean,title:\"Scroll\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\"},match:{type:ControlType.String,title:\"Scroll ID\",defaultValue:\"\",placeholder:\"hero\",hidden:p=>!p.enabled},anchor:{type:ControlType.Enum,title:\"Anchor\",options:[\"top\",\"middle\",\"bottom\"],optionTitles:[\"Top\",\"Center\",\"Bottom\"],defaultValue:\"middle\",displaySegmentedControl:true,hidden:p=>!p.enabled},scale:{type:ControlType.Number,title:\"Scale\",defaultValue:1,min:0,max:10,step:.01,displayStepper:true,hidden:p=>!p.enabled},position:{type:ControlType.String,title:\"Position\",defaultValue:\"0,0,0\",placeholder:\"X,Y,Z\",hidden:p=>!p.enabled},rotation:{type:ControlType.String,title:\"Rotation\",defaultValue:\"0,0,0\",placeholder:\"X,Y,Z\",hidden:p=>!p.enabled},opacity:{type:ControlType.Number,displayStepper:true,title:\"Opacity\",defaultValue:1,min:0,max:1,step:.01,description:\" \",hidden:p=>!p.enabled}}}}}},modelScale:{type:ControlType.Number,title:\"Scale\",defaultValue:1,min:.01,max:3,step:.01,displayStepper:true},modelPosition:{type:ControlType.String,title:\"Position\",defaultValue:\"0,0,0\",placeholder:\"X,Y,Z\"},modelRotation:{type:ControlType.String,title:\"Rotation\",defaultValue:\"0,0,0\",placeholder:\"X,Y,Z\"},// ━━━ Sub-Scenes (Multi-Scene Groups) ━━━\nscenes:{type:ControlType.Array,title:\"Sub-Scenes\",description:\" \",maxCount:8,control:{type:ControlType.Object,controls:{modelSource:{type:ControlType.Enum,title:\"Source\",options:[\"url\",\"file\"],optionTitles:[\"URL\",\"Upload\"],defaultValue:\"url\",displaySegmentedControl:true},modelUrl:{type:ControlType.String,title:\"Model URL\",defaultValue:\"\",placeholder:\"https://example.com/model.glb\",description:\"Supports 3D models or images\",hidden:p=>p.modelSource===\"file\"},modelFile:{type:ControlType.File,title:\"Model File\",allowedFileTypes:[\"glb\",\"gltf\",\"fbx\",\"zip\",\"png\",\"jpg\",\"jpeg\",\"webp\"],description:\" \",hidden:p=>p.modelSource!==\"file\"},visible:{type:ControlType.Boolean,title:\"Visible\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},parentToMain:{type:ControlType.Boolean,title:\"Parent\",defaultValue:false,enabledTitle:\"Follow Main\",disabledTitle:\"Own\",description:\"On = Inherit main transform\"},parentPivot:{type:ControlType.Enum,title:\"Pivot\",options:[\"own\",\"main\"],optionTitles:[\"Own Pivot\",\"Main Pivot\"],defaultValue:\"own\",hidden:p=>!p.parentToMain,description:\"Main = Orbit main pivot\"},scale:{type:ControlType.Number,displayStepper:true,title:\"Scale\",defaultValue:1,min:.01,max:10,step:.01},position:{type:ControlType.String,title:\"Position\",defaultValue:\"0,0,0\",placeholder:\"X,Y,Z\"},rotation:{type:ControlType.String,title:\"Rotation\",defaultValue:\"0,0,0\",placeholder:\"X,Y,Z\",description:\" \"},// ── Independent Animation ──\nanimOverride:{type:ControlType.Boolean,title:\"Own Animation\",defaultValue:false,enabledTitle:\"Custom\",disabledTitle:\"Use Primary\",description:\"On = Own animation\"},animClip:{type:ControlType.String,title:\"Anim Name\",defaultValue:\"\",placeholder:\"Animation clip name\",hidden:p=>!p.animOverride},animSpeed:{type:ControlType.Number,displayStepper:true,title:\"Anim Speed\",defaultValue:1,min:0,max:5,step:.1,hidden:p=>!p.animOverride}}}},appearTransformScale:{type:ControlType.Number,title:\"Appear Scale\",defaultValue:1,min:.01,max:10,step:.01,displayStepper:true},appearTransformPosition:{type:ControlType.String,title:\"Appear Position\",defaultValue:\"0,0,0\",placeholder:\"X,Y,Z\"},appearTransformRotation:{type:ControlType.String,title:\"Appear Rotation\",defaultValue:\"0,0,0\",placeholder:\"X,Y,Z\"},appearReplay:{type:ControlType.Boolean,title:\"Replay\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"},// ━━━ Transition ━━━\ndissolveTransition:{type:ControlType.Object,title:\"Transition\",description:\" \",controls:{enabled:{type:ControlType.Boolean,title:\"Dissolve\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"},duration:{type:ControlType.Number,displayStepper:true,title:\"Dissolve Time\",defaultValue:1.5,min:.3,max:5,step:.1,hidden:p=>!p.enabled},// ── Noise Settings ──\nnoise:{type:ControlType.Object,title:\"Dissolve Noise\",hidden:p=>!p.enabled,controls:{// Lower values create larger dissolve chunks.\nnoiseScale:{type:ControlType.Number,displayStepper:true,title:\"Frequency\",defaultValue:.25,min:.001,max:2,step:.001},// Controls the dissolve range.\namplitude:{type:ControlType.Number,displayStepper:true,title:\"Amplitude\",defaultValue:16,min:.1,max:30,step:.1}}},// ── Edge Glow Settings ──\nedge:{type:ControlType.Object,title:\"Dissolve Edge\",hidden:p=>!p.enabled,controls:{// Glow edge thickness.\nedgeWidth:{type:ControlType.Number,displayStepper:true,title:\"Width\",defaultValue:.8,min:.1,max:8,step:.01},emissiveColor:{type:ControlType.Color,title:\"Color\",defaultValue:\"#4d9bff\"},// Edge glow brightness.\nemissiveIntensity:{type:ControlType.Number,displayStepper:true,title:\"Intensity\",defaultValue:3,min:0,max:10,step:.5}}},// ── Particle System Settings ──\nparticles:{type:ControlType.Object,title:\"Dissolve Particles\",hidden:p=>!p.enabled,description:\" \",controls:{// Emit particles at the dissolve edge.\nenabled:{type:ControlType.Boolean,title:\"Emit\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"},baseSize:{type:ControlType.Number,displayStepper:true,title:\"Size\",defaultValue:80,min:10,max:200,step:1,hidden:p=>!p.enabled},color:{type:ControlType.Color,title:\"Color\",defaultValue:\"#4d9bff\",hidden:p=>!p.enabled},speed:{type:ControlType.Number,displayStepper:true,title:\"Speed\",defaultValue:.02,min:.001,max:.1,step:.001,hidden:p=>!p.enabled},// Sine-wave motion on particles.\nwaveAmp:{type:ControlType.Number,displayStepper:true,title:\"Wave Amplitude\",defaultValue:0,min:0,max:5,step:.01,hidden:p=>!p.enabled},velX:{type:ControlType.Number,displayStepper:true,title:\"Velocity X\",defaultValue:2.5,min:0,max:10,step:.1,hidden:p=>!p.enabled},velY:{type:ControlType.Number,displayStepper:true,title:\"Velocity Y\",defaultValue:2,min:0,max:10,step:.1,hidden:p=>!p.enabled},maxCount:{type:ControlType.Number,displayStepper:true,title:\"Max Count\",defaultValue:8e3,min:1e3,max:3e4,step:1e3,hidden:p=>!p.enabled,description:\" \"}}},// Show placeholder material first, then load textures in background.\nprogressive:{type:ControlType.Boolean,title:\"Progressive Load\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\"},progressiveFade:{type:ControlType.Number,displayStepper:true,title:\"Cross Fade\",defaultValue:.8,min:.1,max:3,step:.1,unit:\"s\",hidden:p=>!p.progressive,description:\" \"},blurReveal:{type:ControlType.Boolean,title:\"Blur Reveal\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\"},// Initial blur amount in pixels.\nblurIntensity:{type:ControlType.Number,displayStepper:true,title:\"Blur Intensity\",defaultValue:12,min:2,max:40,step:1,unit:\"px\",hidden:p=>!p.blurReveal},blurDuration:{type:ControlType.Number,displayStepper:true,title:\"Blur Duration\",defaultValue:.8,min:.2,max:3,step:.1,unit:\"s\",hidden:p=>!p.blurReveal,description:\" \"},transform:{type:ControlType.Object,title:\"Transform\",hidden:true,controls:{scale:{type:ControlType.Number,title:\"Scale\",defaultValue:1,min:.01,max:10,step:.01,displayStepper:true},offX:{type:ControlType.Number,displayStepper:true,title:\"Position X\",defaultValue:0,min:-100,max:100,step:1},offY:{type:ControlType.Number,displayStepper:true,title:\"Position Y\",defaultValue:0,min:-100,max:100,step:1},offZ:{type:ControlType.Number,displayStepper:true,title:\"Position Z\",defaultValue:0,min:-100,max:100,step:1,description:\" \"},rotX:{type:ControlType.Number,displayStepper:true,title:\"Rotation X\",defaultValue:0,min:-360,max:360,step:1},rotY:{type:ControlType.Number,displayStepper:true,title:\"Rotation Y\",defaultValue:0,min:-360,max:360,step:1},rotZ:{type:ControlType.Number,displayStepper:true,title:\"Rotation Z\",defaultValue:0,min:-360,max:360,step:1,description:\" \"}}}}},scrollTransformMatch:{type:ControlType.String,title:\"Scroll ID\",defaultValue:\"\",placeholder:\"hero\"},scrollTransformAnchor:{type:ControlType.Enum,title:\"Anchor\",options:[\"top\",\"middle\",\"bottom\"],optionTitles:[\"Top\",\"Center\",\"Bottom\"],defaultValue:\"middle\",displaySegmentedControl:true},scrollTransformScale:{type:ControlType.Number,title:\"Scroll Scale\",defaultValue:1,min:.01,max:10,step:.01,displayStepper:true},scrollTransformPosition:{type:ControlType.String,title:\"Scroll Position\",defaultValue:\"0,0,0\",placeholder:\"X,Y,Z\"},scrollTransformRotation:{type:ControlType.String,title:\"Scroll Rotation\",defaultValue:\"0,0,0\",placeholder:\"X,Y,Z\",description:\" \"},animClip:{type:ControlType.String,title:\"Anim Name\",defaultValue:\"\",placeholder:\"e.g. Idle.1\"},animSpeed:{type:ControlType.Number,title:\"Anim Speed\",defaultValue:1,min:-5,max:5,step:.1,displayStepper:true},animLoopMode:{type:ControlType.Enum,title:\"Anim Loop\",description:\" \",options:[\"repeat\",\"once\",\"pingPong\"],optionTitles:[\"Repeat\",\"Once\",\"Ping Pong\"],defaultValue:\"repeat\"},// ━━━ Environment & Background ━━━\nenvironment:{type:ControlType.Object,title:\"Environment\",controls:{// Background\ntransparent:{type:ControlType.Boolean,title:\"Transparent BG\",defaultValue:true,enabledTitle:\"Yes\",disabledTitle:\"No\",description:\" \"},bgColor:{type:ControlType.Color,title:\"BG Color\",defaultValue:\"rgb(28, 28, 28)\",hidden:p=>p.transparent,description:\" \"},// Lighting\nambient:{type:ControlType.Number,displayStepper:true,title:\"Ambient\",defaultValue:.5,min:0,max:5,step:.05},dirIntensity:{type:ControlType.Number,displayStepper:true,title:\"Directional\",defaultValue:1,min:0,max:10,step:.1},dirColor:{type:ControlType.Color,title:\"Dir Color\",defaultValue:\"rgb(255, 255, 255)\"},dirPosX:{type:ControlType.Number,displayStepper:true,title:\"Dir Pos X\",defaultValue:5,min:-50,max:50,step:.5},dirPosY:{type:ControlType.Number,displayStepper:true,title:\"Dir Pos Y\",defaultValue:10,min:-50,max:50,step:.5},dirPosZ:{type:ControlType.Number,displayStepper:true,title:\"Dir Pos Z\",defaultValue:7,min:-50,max:50,step:.5,description:\" \"},// Environment map\nenabled:{type:ControlType.Boolean,title:\"HDRI\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"},type:{type:ControlType.Enum,title:\"Type\",options:[\"procedural\",\"hdri\"],optionTitles:[\"Procedural\",\"HDRI (Poly Haven)\"],defaultValue:\"procedural\",hidden:p=>!p.enabled},preset:{type:ControlType.Enum,title:\"Preset\",options:[\"studio\",\"sunset\",\"dawn\",\"night\",\"warehouse\",\"outdoor\"],optionTitles:[\"Studio\",\"Sunset\",\"Dawn\",\"Night\",\"Warehouse\",\"Outdoor\"],defaultValue:\"studio\",hidden:p=>!p.enabled||p.type!==\"procedural\"},hdriPreset:{type:ControlType.Enum,title:\"HDRI\",options:Object.keys(HDRI_PRESETS),optionTitles:Object.values(HDRI_PRESETS).map(v=>v.label),defaultValue:\"studio_small_09\",hidden:p=>!p.enabled||p.type!==\"hdri\"},customUrl:{type:ControlType.String,title:\"Custom URL\",defaultValue:\"\",placeholder:\"https://example.com/env.hdr\",hidden:p=>!p.enabled||p.type!==\"hdri\"},showBg:{type:ControlType.Boolean,title:\"HDRI as BG\",defaultValue:false,enabledTitle:\"Yes\",disabledTitle:\"No\",hidden:p=>!p.enabled||p.type!==\"hdri\"},intensity:{type:ControlType.Number,displayStepper:true,title:\"Intensity\",defaultValue:1,min:0,max:5,step:.05,hidden:p=>!p.enabled,description:\" \"},// Shadows\nshadows:{type:ControlType.Boolean,title:\"Shadows\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\"},shadowSize:{type:ControlType.Enum,title:\"Shadow Quality\",options:[\"512\",\"1024\",\"2048\",\"4096\"],optionTitles:[\"Low (512)\",\"Medium (1K)\",\"High (2K)\",\"Ultra (4K)\"],defaultValue:\"1024\",hidden:p=>!p.shadows},shadowBias:{type:ControlType.Number,displayStepper:true,title:\"Shadow Bias\",defaultValue:-1e-4,min:-.01,max:.01,step:1e-4,hidden:p=>!p.shadows},shadowNormalBias:{type:ControlType.Number,displayStepper:true,title:\"Normal Bias\",defaultValue:.02,min:0,max:.2,step:.001,description:\" \",hidden:p=>!p.shadows}}},// ━━━ Effects & Post-Processing ━━━\neffects:{type:ControlType.Object,title:\"Effects\",controls:{// Bloom\nbloom:{type:ControlType.Boolean,title:\"Bloom\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\"},bloomStr:{type:ControlType.Number,displayStepper:true,title:\"Bloom Str\",defaultValue:.5,min:0,max:3,step:.01,hidden:p=>!p.bloom},bloomThresh:{type:ControlType.Number,displayStepper:true,title:\"Bloom Thresh\",defaultValue:.8,min:0,max:1,step:.01,hidden:p=>!p.bloom},bloomRad:{type:ControlType.Number,displayStepper:true,title:\"Radius\",defaultValue:.5,min:0,max:2,step:.01,hidden:p=>!p.bloom,description:\" \"},// Tone mapping & exposure\ntoneMapping:{type:ControlType.Enum,title:\"Tone Map\",options:[\"aces\",\"reinhard\",\"cineon\",\"linear\",\"agx\",\"neutral\"],optionTitles:[\"ACES Filmic\",\"Reinhard\",\"Cineon\",\"Linear\",\"AgX\",\"Neutral\"],defaultValue:\"aces\"},exposure:{type:ControlType.Number,displayStepper:true,title:\"Exposure\",defaultValue:1.2,min:.1,max:5,step:.05,description:\" \"},fxaa:{type:ControlType.Boolean,title:\"FXAA\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"},// Color grading\ncolorGrading:{type:ControlType.Boolean,title:\"Color Grading\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\"},brightness:{type:ControlType.Number,displayStepper:true,title:\"Brightness\",defaultValue:0,min:-.5,max:.5,step:.01,hidden:p=>!p.colorGrading},contrast:{type:ControlType.Number,displayStepper:true,title:\"Contrast\",defaultValue:1,min:.5,max:2,step:.01,hidden:p=>!p.colorGrading},saturation:{type:ControlType.Number,displayStepper:true,title:\"Saturation\",defaultValue:1,min:0,max:3,step:.01,hidden:p=>!p.colorGrading,description:\" \"},// Vignette\nvignette:{type:ControlType.Boolean,title:\"Vignette\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\"},vigOffset:{type:ControlType.Number,displayStepper:true,title:\"Vig Offset\",defaultValue:1,min:.5,max:2,step:.01,hidden:p=>!p.vignette},vigDark:{type:ControlType.Number,displayStepper:true,title:\"Vig Dark\",defaultValue:1.2,min:0,max:3,step:.01,hidden:p=>!p.vignette,description:\" \"},// Chromatic aberration\nchromAberr:{type:ControlType.Boolean,title:\"Chrom Aberr\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\"},chromStr:{type:ControlType.Number,displayStepper:true,title:\"CA Strength\",defaultValue:.005,min:0,max:.05,step:.001,hidden:p=>!p.chromAberr,description:\" \"},// Film grain\nfilmGrain:{type:ControlType.Boolean,title:\"Film Grain\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\"},grainInt:{type:ControlType.Number,displayStepper:true,title:\"Grain Int\",defaultValue:.04,min:0,max:.3,step:.005,hidden:p=>!p.filmGrain,description:\" \"},// Pixelate (Framer/Figma-style shaped tile pixelation)\npixelate:{type:ControlType.Boolean,title:\"Pixelate\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\",description:\"On = Shaped pixel cells with gaps and dissolve\"},pixelShape:{type:ControlType.Enum,title:\"Shape\",options:[\"rectangle\",\"ellipse\",\"hexagon\",\"triangle\"],optionTitles:[\"Rectangle\",\"Ellipse\",\"Hexagon\",\"Triangle\"],defaultValue:\"rectangle\",hidden:p=>!p.pixelate},pixelSize:{type:ControlType.Number,displayStepper:true,title:\"Size\",defaultValue:23,min:2,max:128,step:1,unit:\"px\",hidden:p=>!p.pixelate},pixelStretch:{type:ControlType.Number,displayStepper:true,title:\"Stretch\",defaultValue:0,min:-90,max:300,step:1,unit:\"%\",hidden:p=>!p.pixelate},pixelAverageColor:{type:ControlType.Number,displayStepper:true,title:\"Average Color\",defaultValue:42,min:0,max:100,step:1,unit:\"%\",hidden:p=>!p.pixelate},pixelDissolveMode:{type:ControlType.Enum,title:\"Dissolve Mode\",options:[\"dropout\",\"fade\"],optionTitles:[\"Dropout\",\"Fade\"],defaultValue:\"dropout\",hidden:p=>!p.pixelate},pixelDissolve:{type:ControlType.Number,displayStepper:true,title:\"Dissolve\",defaultValue:0,min:0,max:100,step:1,unit:\"%\",hidden:p=>!p.pixelate},pixelFalloff:{type:ControlType.Number,displayStepper:true,title:\"Falloff\",defaultValue:0,min:0,max:100,step:1,unit:\"%\",hidden:p=>!p.pixelate},pixelKnockout:{type:ControlType.Boolean,title:\"Knockout\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\",hidden:p=>!p.pixelate},// SSAO (Screen Space Ambient Occlusion)\nssao:{type:ControlType.Boolean,title:\"SSAO\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\",description:\"On = More contact depth\"},ssaoRadius:{type:ControlType.Number,displayStepper:true,title:\"AO Radius\",defaultValue:8,min:.1,max:64,step:.5,hidden:p=>!p.ssao},ssaoMinDist:{type:ControlType.Number,displayStepper:true,title:\"AO Min Dist\",defaultValue:.001,min:1e-4,max:.02,step:5e-4,hidden:p=>!p.ssao},ssaoMaxDist:{type:ControlType.Number,displayStepper:true,title:\"AO Max Dist\",defaultValue:.1,min:.01,max:1,step:.01,hidden:p=>!p.ssao}}},// ━━━ Extra Lights (Point / Spot) ━━━\nextraLights:{type:ControlType.Array,title:\"Extra Lights\",description:\" \",maxCount:4,control:{type:ControlType.Object,controls:{enabled:{type:ControlType.Boolean,title:\"Enabled\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"},lightType:{type:ControlType.Enum,title:\"Type\",options:[\"point\",\"spot\"],optionTitles:[\"Point Light\",\"Spot Light\"],defaultValue:\"point\",hidden:p=>!p.enabled},color:{type:ControlType.Color,title:\"Color\",defaultValue:\"#ffffff\",hidden:p=>!p.enabled},intensity:{type:ControlType.Number,displayStepper:true,title:\"Intensity\",defaultValue:1,min:0,max:20,step:.1,hidden:p=>!p.enabled},posX:{type:ControlType.Number,displayStepper:true,title:\"Position X\",defaultValue:0,min:-50,max:50,step:.5,hidden:p=>!p.enabled},posY:{type:ControlType.Number,displayStepper:true,title:\"Position Y\",defaultValue:3,min:-50,max:50,step:.5,hidden:p=>!p.enabled},posZ:{type:ControlType.Number,displayStepper:true,title:\"Position Z\",defaultValue:0,min:-50,max:50,step:.5,hidden:p=>!p.enabled,description:\" \"},distance:{type:ControlType.Number,displayStepper:true,title:\"Distance\",defaultValue:0,min:0,max:100,step:.5,description:\"Higher = Longer light reach\",hidden:p=>!p.enabled},decay:{type:ControlType.Number,displayStepper:true,title:\"Decay\",defaultValue:2,min:0,max:5,step:.1,description:\"Higher = Faster falloff\",hidden:p=>!p.enabled},// ── Spot Light specific ──\nangle:{type:ControlType.Number,displayStepper:true,title:\"Cone Angle\",defaultValue:30,min:1,max:90,step:1,description:\"Higher = Wider cone\",hidden:p=>!p.enabled||p.lightType!==\"spot\"},penumbra:{type:ControlType.Number,displayStepper:true,title:\"Penumbra\",defaultValue:.5,min:0,max:1,step:.05,description:\"Higher = Softer edge\",hidden:p=>!p.enabled||p.lightType!==\"spot\"},targetX:{type:ControlType.Number,displayStepper:true,title:\"Target X\",defaultValue:0,min:-50,max:50,step:.5,hidden:p=>!p.enabled||p.lightType!==\"spot\"},targetY:{type:ControlType.Number,displayStepper:true,title:\"Target Y\",defaultValue:0,min:-50,max:50,step:.5,hidden:p=>!p.enabled||p.lightType!==\"spot\"},targetZ:{type:ControlType.Number,displayStepper:true,title:\"Target Z\",defaultValue:0,min:-50,max:50,step:.5,hidden:p=>!p.enabled||p.lightType!==\"spot\",description:\" \"},castShadow:{type:ControlType.Boolean,title:\"Cast Shadow\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\",hidden:p=>!p.enabled}}}},// ━━━ Camera ━━━\ncamera:{type:ControlType.Object,title:\"Camera\",controls:{cameraType:{type:ControlType.Enum,title:\"Type\",options:[\"perspective\",\"orthographic\",\"stereo\"],optionTitles:[\"Perspective\",\"Orthographic\",\"Stereo\"],defaultValue:\"perspective\",description:\"Perspective = Real depth\"},orthoZoom:{type:ControlType.Number,title:\"Ortho Zoom\",defaultValue:1,min:.1,max:20,step:.1,displayStepper:true,description:\"Higher = More zoom\",hidden:p=>p.cameraType!==\"orthographic\"},stereoEyeSep:{type:ControlType.Number,displayStepper:true,title:\"Eye Separation\",defaultValue:.064,min:0,max:.5,step:.001,description:\"Higher = More stereo depth\",hidden:p=>p.cameraType!==\"stereo\"},x:{type:ControlType.Number,displayStepper:true,title:\"X\",defaultValue:-1,min:-50,max:50,step:.1},y:{type:ControlType.Number,displayStepper:true,title:\"Y\",defaultValue:2,min:-50,max:50,step:.1},z:{type:ControlType.Number,displayStepper:true,title:\"Z\",defaultValue:10,min:-50,max:50,step:.1},// DOF (Depth of Field) — perspective only\ndof:{type:ControlType.Boolean,title:\"Depth of Field\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\",description:\"On = Depth blur\",hidden:p=>p.cameraType===\"orthographic\"},dofFocus:{type:ControlType.Number,displayStepper:true,title:\"DOF Focus\",defaultValue:10,min:.1,max:500,step:.5,description:\"Higher = Farther focus\",hidden:p=>!p.dof||p.cameraType===\"orthographic\"},dofAperture:{type:ControlType.Number,displayStepper:true,title:\"DOF Aperture\",defaultValue:.025,min:0,max:.5,step:.001,description:\"Higher = More blur\",hidden:p=>!p.dof||p.cameraType===\"orthographic\"},dofMaxBlur:{type:ControlType.Number,displayStepper:true,title:\"DOF Max Blur\",defaultValue:.01,min:0,max:.1,step:.001,description:\"Higher = More max blur\",hidden:p=>!p.dof||p.cameraType===\"orthographic\"}}},// ━━━ Performance ━━━\nperformance:{type:ControlType.Object,title:\"Performance\",controls:{mode:{type:ControlType.Boolean,title:\"Enable\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\",description:\"On = Lower GPU cost\"},webglActive:{type:ControlType.Boolean,title:\"WebGL Active\",defaultValue:true,enabledTitle:\"Render\",disabledTitle:\"Off\",description:\"Off = No WebGL canvas\"},dprCap:{type:ControlType.Number,title:\"DPR Cap\",defaultValue:1.5,min:.5,max:3,step:.1,displayStepper:true,hidden:p=>!p.mode,description:\"Higher = More pixels\"},mobileDprCap:{type:ControlType.Number,title:\"Mobile DPR\",defaultValue:1.5,min:.5,max:2,step:.05,displayStepper:true,hidden:p=>!p.mode,description:\"Higher = More Pixels\"},maxPixelCount:{type:ControlType.Number,title:\"Max Pixels\",defaultValue:3e6,min:0,max:12e6,step:1e5,displayStepper:true,hidden:p=>!p.mode,description:\"Higher = More max pixels\"},lazyWebgl:{type:ControlType.Boolean,title:\"Lazy WebGL\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\",hidden:p=>!p.mode,description:\"On = Load near viewport\"},antialias:{type:ControlType.Boolean,title:\"Native AA\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\",hidden:p=>!p.mode,description:\"On = Sharper edges\"},pauseHidden:{type:ControlType.Boolean,title:\"Pause Hidden\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\",hidden:p=>!p.mode,description:\"On = Pause hidden tab\"},pauseOffscreen:{type:ControlType.Boolean,title:\"Pause Offscreen\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\",hidden:p=>!p.mode,description:\"On = Pause offscreen\"},stats:{type:ControlType.Boolean,title:\"Perf Stats\",defaultValue:false,enabledTitle:\"Log\",disabledTitle:\"Off\",hidden:p=>!p.mode,description:\"On = Log render stats\"}}},// ━━━ Helper ━━━\nui:{type:ControlType.Object,title:\"Helper\",controls:{showHints:{type:ControlType.Boolean,title:\"Controls Hint\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},meshHelper:{type:ControlType.Boolean,title:\"Mesh Helper\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\",description:\"On = Show mesh names\"},statsMonitor:{type:ControlType.Boolean,title:\"Stats Monitor\",defaultValue:false,enabledTitle:\"Show\",disabledTitle:\"Hide\",description:\"On = Show stats overlay\"},statsPanel:{type:ControlType.Enum,title:\"Stats Panel\",options:[\"fps\",\"ms\",\"mb\"],optionTitles:[\"FPS\",\"MS\",\"MB\"],defaultValue:\"fps\",hidden:p=>!p.statsMonitor},showGrid:{type:ControlType.Boolean,title:\"Grid\",defaultValue:false,enabledTitle:\"Show\",disabledTitle:\"Hide\",description:\"On = Show grid\"},gridSize:{type:ControlType.Number,displayStepper:true,title:\"Grid Size\",defaultValue:10,min:1,max:100,step:1,hidden:p=>!p.showGrid,description:\"Higher = Larger grid\"},gridDivisions:{type:ControlType.Number,displayStepper:true,title:\"Grid Divisions\",defaultValue:10,min:1,max:100,step:1,hidden:p=>!p.showGrid,description:\"Higher = More grid lines\"},gridColor1:{type:ControlType.Color,title:\"Grid Color 1\",defaultValue:\"rgba(255,255,255,0.25)\",hidden:p=>!p.showGrid,description:\"Center cross color.\"},gridColor2:{type:ControlType.Color,title:\"Grid Color 2\",defaultValue:\"rgba(255,255,255,0.1)\",hidden:p=>!p.showGrid,description:\"Grid line color.\"},showAxes:{type:ControlType.Boolean,title:\"Axes\",defaultValue:false,enabledTitle:\"Show\",disabledTitle:\"Hide\",description:\"On = Show world axes\"},axesSize:{type:ControlType.Number,displayStepper:true,title:\"Axes Size\",defaultValue:3,min:.5,max:50,step:.5,hidden:p=>!p.showAxes,description:\"Higher = Longer axes\"},showModelAxes:{type:ControlType.Boolean,title:\"Model Axes\",defaultValue:false,enabledTitle:\"Show\",disabledTitle:\"Hide\",description:\"On = Show model axes\"},modelAxesSize:{type:ControlType.Number,displayStepper:true,title:\"Model Axes Size\",defaultValue:2,min:.1,max:50,step:.1,hidden:p=>!p.showModelAxes,description:\"Higher = Longer model axes\"},stopInEditor:{type:ControlType.Boolean,title:\"Stop in Editor\",defaultValue:false,description:\"On = Freeze in canvas\"}}},// ━━━ Model Events (actual mesh raycast, not full canvas) ━━━\nonModelHoverStart:{type:ControlType.EventHandler,title:\"Hover / Press Start\"},onModelHoverEnd:{type:ControlType.EventHandler,title:\"Hover / Press End\"},onAnimationOnceComplete:{type:ControlType.EventHandler,title:\"Animation Once Complete\"},onModelClick:{type:ControlType.EventHandler,title:\"Click / Tap\"}};/* ═══════════════════════════════════════════════════════════\n   UI Styles (Centralized to avoid inline duplication)\n   ═══════════════════════════════════════════════════════════ */export const UI_STYLES={canvasContainer:{position:\"absolute\",left:0,top:0,overflow:\"visible\",pointerEvents:\"none\"},debugOverlay:{position:\"fixed\",left:12,top:12,zIndex:9999,background:\"rgba(0,0,0,0.86)\",color:\"#0f0\",border:\"1px solid rgba(0,255,0,0.25)\",borderRadius:8,padding:\"8px 12px\",fontSize:11,fontFamily:\"monospace\",pointerEvents:\"none\",whiteSpace:\"pre-wrap\",minWidth:200},debugTitle:{fontWeight:700,marginBottom:2},debugText:{color:\"#aaa\"},debugHighlight:{color:\"#60a5fa\",fontWeight:700},debugRight:{marginLeft:\"auto\"},debugSmall:{marginLeft:\"auto\",fontSize:9},sceneOverlay:{position:\"fixed\",right:12,top:12,maxHeight:\"70vh\",overflowY:\"auto\",minWidth:190,maxWidth:320,padding:\"6px 0\",color:\"rgba(255,255,255,0.85)\",background:\"rgba(0,0,0,0.68)\",border:\"1px solid rgba(255,255,255,0.08)\",borderRadius:8,backdropFilter:\"blur(10px)\",fontSize:10,fontFamily:\"system-ui, sans-serif\",lineHeight:1.5,pointerEvents:\"none\"},sceneHeader:{padding:\"4px 10px 6px\",fontSize:10,color:\"rgba(255,255,255,0.55)\",borderBottom:\"1px solid rgba(255,255,255,0.1)\",marginBottom:2,display:\"flex\",gap:6},sceneItem:{whiteSpace:\"nowrap\",overflow:\"hidden\",textOverflow:\"ellipsis\",display:\"flex\",alignItems:\"center\",gap:5},sceneDot:{width:5,height:5,flexShrink:0},sceneEllipsis:{overflow:\"hidden\",textOverflow:\"ellipsis\"}}// #endregion\n;\nexport const __FramerMetadata__ = {\"exports\":{\"UI_STYLES\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"IMPORT_3D_PROPERTY_CONTROLS\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// @ts-nocheck\n// #region 5. HASHES & CACHE UTILS\nexport function materialHash(cfg){return`${cfg.materialPreset}|${cfg.sketchBaseColor}|${cfg.sketchLineColor}|${cfg.sketchLineThickness}|${cfg.sketchSteps}|${cfg.overrideMaterial}|${cfg.metalness}|${cfg.roughness}|${cfg.clearcoat}|${cfg.clearcoatRoughness}|${cfg.transmission}|${cfg.thickness}|${cfg.ior}|${cfg.iridescence}|${cfg.iridescenceIOR}|${cfg.sheen}|${cfg.sheenRoughness}|${cfg.sheenColor}|${cfg.envMapIntensity}|${cfg.emissiveIntensity}|${cfg.emissiveColor}|${cfg.reflectivity}|${cfg.opacity}`;}export function lightingHash(cfg){let h=`${cfg.ambientLightIntensity}|${cfg.directionalLightIntensity}|${cfg.directionalLightColor}|${cfg.dirLightPosX}|${cfg.dirLightPosY}|${cfg.dirLightPosZ}|${cfg.enableShadows}|${cfg.shadowMapSize}|${cfg.shadowBias}|${cfg.shadowNormalBias}`;if(cfg.extraLights?.length){for(const el of cfg.extraLights){if(!el)continue;h+=`|EL:${el.enabled}:${el.lightType}:${el.color}:${el.intensity}:${el.posX}:${el.posY}:${el.posZ}:${el.distance}:${el.decay}:${el.angle}:${el.penumbra}:${el.targetX}:${el.targetY}:${el.targetZ}:${el.castShadow}`;}}return h;}export function envHash(cfg){return`${cfg.enableEnvironment}|${cfg.environmentType}|${cfg.environmentPreset}|${cfg.hdriPreset}|${cfg.customHdriUrl}`;}export function effectsHash(cfg){return`${cfg.bloomEnabled}|${cfg.bloomStrength}|${cfg.bloomThreshold}|${cfg.bloomRadius}|${cfg.toneMapping}|${cfg.exposure}|${cfg.enableFXAA}|${cfg.enableColorGrading}|${cfg.brightness}|${cfg.contrast}|${cfg.saturation}|${cfg.enableVignette}|${cfg.vignetteOffset}|${cfg.vignetteDarkness}|${cfg.enableChromaticAberration}|${cfg.chromaticAberrationStrength}|${cfg.enableFilmGrain}|${cfg.filmGrainIntensity}|${cfg.enablePixelate}|${cfg.pixelateShape}|${cfg.pixelateSize}|${cfg.pixelateStretch}|${cfg.pixelateGap}|${cfg.pixelateColorTrim}|${cfg.pixelateAverageColor}|${cfg.pixelateDissolveMode}|${cfg.pixelateDissolve}|${cfg.pixelateFalloff}|${cfg.pixelateKnockout}|${cfg.enableSSAO}|${cfg.ssaoRadius}|${cfg.ssaoMinDistance}|${cfg.ssaoMaxDistance}|${cfg.enableDOF}|${cfg.dofFocus}|${cfg.dofAperture}|${cfg.dofMaxBlur}`;}export function appearReplayHash(cfg){let h=[cfg.appearReplay,cfg.modelScale,cfg.modelOffsetX,cfg.modelOffsetY,cfg.modelOffsetZ,cfg.modelRotationX,cfg.modelRotationY,cfg.modelRotationZ,cfg.dissolveEnabled,cfg.dissolveDuration,cfg.blurReveal,cfg.blurRevealIntensity,cfg.blurRevealDuration,cfg.appearOffsetX,cfg.appearOffsetY,cfg.appearOffsetZ,cfg.appearScale,cfg.appearRotateX,cfg.appearRotateY,cfg.appearRotateZ,cfg.dissolveNoiseScale,cfg.dissolveAmplitude,cfg.dissolveEdgeWidth,cfg.dissolveEmissiveColor,cfg.dissolveEmissiveIntensity,cfg.cameraPositionX,cfg.cameraPositionY,cfg.cameraPositionZ,cfg.orthoZoom,cfg.fov,cfg.enableScrollAnimation,cfg.scrollSmoothing,cfg.scrollAnchorEnabled,cfg.scrollAnchorMatch,cfg.scrollAnchorStrengthX,cfg.scrollAnchorStrengthY,cfg.scrollAnchorSmoothing,cfg.scrollProgressTransformEnabled,cfg.scrollTransformAnchorMatch,cfg.scrollProgressPositionX,cfg.scrollProgressPositionY,cfg.scrollProgressPositionZ,cfg.scrollProgressScale,cfg.scrollAnchorRotationX,cfg.scrollAnchorRotationY,cfg.scrollAnchorRotationZ].join(\"|\");if(cfg.subSceneItems?.length){for(const item of cfg.subSceneItems){if(!item)continue;h+=`|SS:${item.visible}:${item.scale}:${item.offX}:${item.offY}:${item.offZ}:${item.rotX}:${item.rotY}:${item.rotZ}`;}}return h;}export function sceneConfigHash(cfg){return materialHash(cfg)+\"||\"+lightingHash(cfg)+\"||\"+envHash(cfg)+\"||\"+effectsHash(cfg);}// #endregion\n\nexport const __FramerMetadata__ = {\"exports\":{\"lightingHash\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"appearReplayHash\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"materialHash\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"envHash\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"effectsHash\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"sceneConfigHash\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./hashes.map","// @ts-nocheck\n// #region 8. ANIMATION UTILS\nimport{THREE}from\"https://framerusercontent.com/modules/YeYAFpMfJfcs2D9mfKFW/DDv12VyHhTY27qyXtQ6t/deps.js\";export function _findAnimationClip(animations,clipName){const clipNameRaw=String(clipName??\"\").trim();if(!clipNameRaw)return null;const clipLower=clipNameRaw.toLowerCase();return animations.find(c=>c.name===clipNameRaw)||animations.find(c=>c.name.toLowerCase()===clipLower)||animations.find(c=>c.name.toLowerCase().includes(clipLower))||null;}export function _configureAnimationLoop(action,loopMode){if(loopMode===\"once\"){action.setLoop(THREE.LoopOnce,1);action.clampWhenFinished=true;}else if(loopMode===\"pingPong\"){action.setLoop(THREE.LoopPingPong,Infinity);action.clampWhenFinished=false;}else{action.setLoop(THREE.LoopRepeat,Infinity);action.clampWhenFinished=false;}}export function _clearAnimationOnceCompleteListener(holder,mixer){if(!holder){return;}if(holder._animationOnceCompleteTimer){clearTimeout(holder._animationOnceCompleteTimer);}if(holder._animationOnceCompleteListener&&mixer){mixer.removeEventListener(\"finished\",holder._animationOnceCompleteListener);}holder._animationOnceCompleteListener=null;holder._animationOnceCompleteAction=null;holder._animationOnceCompleteActions=null;holder._animationOnceCompleteCallback=null;holder._animationOnceCompleteTimer=null;}export function _isAnimationOnceActionComplete(action){const clipDuration=action?.getClip?.()?.duration??0;if(!Number.isFinite(clipDuration)||clipDuration<=0)return false;const epsilon=Math.max(.001,clipDuration*.001);const timeScale=action.timeScale??1;if(timeScale<0)return(action.time||0)<=epsilon;return(action.time||0)>=clipDuration-epsilon;}export function _getAnimationOnceCompleteCallback(holder,requestSig,callback){if(holder._animationOnceCallbackSig!==requestSig||holder._animationOnceCallbackSource!==callback){holder._animationOnceCallbackSig=requestSig;holder._animationOnceCallbackSource=callback;holder._animationOnceCallback=event=>{holder._animationOnceCompletedSig=requestSig;callback?.(event);};}return holder._animationOnceCallback;}export function _bindAnimationOnceComplete(holder,mixer,action,onComplete){if(!holder||!mixer||!action||!onComplete)return;_clearAnimationOnceCompleteListener(holder,mixer);const complete=evt=>{if(holder._animationOnceCompleteAction!==action)return;_clearAnimationOnceCompleteListener(holder,mixer);onComplete(evt);};const onFinished=evt=>{if(evt?.action!==action)return;complete(evt);};holder._animationOnceCompleteListener=onFinished;holder._animationOnceCompleteAction=action;holder._animationOnceCompleteCallback=onComplete;mixer.addEventListener(\"finished\",onFinished);// Fallback for cases where Three.js does not dispatch \"finished\"\n// because the action was blended/restarted or the render loop paused.\nconst clipDuration=action.getClip?.()?.duration??0;if(Number.isFinite(clipDuration)&&clipDuration>0){if(_isAnimationOnceActionComplete(action)&&!action.isRunning?.()){holder._animationOnceCompleteTimer=setTimeout(()=>{complete({action,type:\"once-already-finished\"});},0);return;}const remaining=Math.max(.05,clipDuration-(action.time||0));const speed=Math.max(.001,Math.abs((action.timeScale||1)*(mixer.timeScale||1)));holder._animationOnceCompleteTimer=setTimeout(()=>{complete({action,type:\"once-timeout-fallback\"});},(remaining/speed+.08)*1e3);}}export function _bindAnimationOnceCompleteActions(holder,mixer,actions,onComplete){const validActions=(actions||[]).filter(Boolean);if(!holder||!mixer||!validActions.length||!onComplete)return;_clearAnimationOnceCompleteListener(holder,mixer);const pending=new Set(validActions);const complete=evt=>{if(holder._animationOnceCompleteActions!==pending)return;_clearAnimationOnceCompleteListener(holder,mixer);onComplete(evt);};const onFinished=evt=>{if(!pending.has(evt?.action))return;pending.delete(evt.action);if(pending.size===0)complete(evt);};holder._animationOnceCompleteListener=onFinished;holder._animationOnceCompleteActions=pending;holder._animationOnceCompleteCallback=onComplete;mixer.addEventListener(\"finished\",onFinished);let maxRemaining=0;let completeCount=0;for(const action of validActions){if(_isAnimationOnceActionComplete(action)&&!action.isRunning?.()){pending.delete(action);completeCount++;continue;}const clipDuration=action.getClip?.()?.duration??0;if(!Number.isFinite(clipDuration)||clipDuration<=0)continue;maxRemaining=Math.max(maxRemaining,Math.max(.05,clipDuration-(action.time||0)));}if(pending.size===0&&completeCount>0){holder._animationOnceCompleteTimer=setTimeout(()=>complete({actions:validActions,type:\"once-all-already-finished\"}),0);return;}if(maxRemaining>0){const speed=Math.max(.001,Math.abs((validActions[0].timeScale||1)*(mixer.timeScale||1)));holder._animationOnceCompleteTimer=setTimeout(()=>complete({actions:validActions,type:\"once-all-timeout-fallback\"}),(maxRemaining/speed+.08)*1e3);}}export function _syncAnimationPhase(prevAction,nextAction){const prevClip=prevAction?.getClip?.();const nextClip=nextAction?.getClip?.();if(!prevClip?.duration||!nextClip?.duration)return;const normalizedTime=(prevAction.time%prevClip.duration+prevClip.duration)%prevClip.duration;nextAction.time=normalizedTime/prevClip.duration*nextClip.duration;}export function _warmAnimationActions(holder,mixer,animations,cfg){if(!holder||!mixer||!animations?.length)return;if(!cfg.animationWarmClips)return;if(holder._animationWarmupDone)return;holder._animationWarmupDone=true;const clips=animations.slice();const loopModes=[\"repeat\",\"once\",\"pingPong\"];let idx=0;const warmNext=()=>{if(!holder._animationWarmupDone||!mixer)return;const clip=clips[idx++];if(!clip)return;// clipAction() creates Three.js animation bindings up front without\n// touching playback state, avoiding the first-switch hitch later.\nmixer.clipAction(clip);for(const loopMode of loopModes){holder._animationActionCache?.add?.(`${clip.name}|${loopMode}`);}requestAnimationFrame(warmNext);};requestAnimationFrame(warmNext);}/**\n * Play animation clips on a mixer based on mode/clip selection.\n * mode: \"all\" = play every clip, \"single\" = play only the named clip\n * clipName: the name of the clip to play when mode is \"single\"\n */export function _playAnimations(mixer,animations,mode,clipName,options={}){if(!mixer||!animations?.length)return;if(mode===\"single\"&&clipName){const clipNameRaw=String(clipName).trim();const clip=_findAnimationClip(animations,clipNameRaw);if(!clip){if(options.holder){_clearAnimationOnceCompleteListener(options.holder,mixer);}console.warn(`[Animation] Clip \"${clipNameRaw}\" not found. Available:`,animations.map(c=>c.name));return;}const blendDuration=Math.max(0,options.blendDuration??0);const holder=options.holder;const loopMode=options.loopMode??\"repeat\";const actionKey=`${clip.name}|${loopMode}`;const replayKey=loopMode===\"once\"?options.replayKey||\"\":\"\";const requestSig=`single|${actionKey}|${blendDuration}|${options.warp?1:0}|${options.syncPhase?1:0}|${options.restartOnSwitch?1:0}|${replayKey}`;if(holder&&holder._lastAnimationRequestSig!==requestSig){holder._animationOnceCompletedSig=\"\";}const onceAlreadyCompleted=loopMode===\"once\"&&holder?._animationOnceCompletedSig===requestSig;if(blendDuration>0&&holder){if(holder._activeAnimationKey===actionKey){const activeAction=holder._activeAnimationAction||mixer.clipAction(clip);const sameRequest=holder._lastAnimationRequestSig===requestSig;_configureAnimationLoop(activeAction,loopMode);activeAction.enabled=true;if(!(loopMode===\"once\"&&_isAnimationOnceActionComplete(activeAction))){activeAction.paused=false;}activeAction.setEffectiveWeight(1);activeAction.setEffectiveTimeScale(1);if(options.restartOnSwitch&&!sameRequest||loopMode===\"once\"&&!sameRequest){activeAction.reset();activeAction.play();}else if(!activeAction.isRunning()&&!(loopMode===\"once\"&&_isAnimationOnceActionComplete(activeAction))){activeAction.play();}if(loopMode===\"once\"&&options.onOnceComplete&&!onceAlreadyCompleted){const onceCallback=_getAnimationOnceCompleteCallback(holder,requestSig,options.onOnceComplete);if(holder._animationOnceCompleteAction!==activeAction||holder._animationOnceCompleteCallback!==onceCallback){_bindAnimationOnceComplete(holder,mixer,activeAction,onceCallback);}}else{_clearAnimationOnceCompleteListener(holder,mixer);}holder._activeAnimationAction=activeAction;holder._activeAnimationClipName=clip.name;holder._lastAnimationRequestSig=requestSig;return;}const nextAction=mixer.clipAction(clip);const prevAction=holder._activeAnimationAction;const shouldBlend=!!prevAction&&prevAction!==nextAction;const hasSeenAction=holder._animationActionCache?.has(actionKey);if(!holder._animationActionCache){holder._animationActionCache=new Set;}_configureAnimationLoop(nextAction,loopMode);nextAction.enabled=true;if(!(loopMode===\"once\"&&_isAnimationOnceActionComplete(nextAction))){nextAction.paused=false;}nextAction.setEffectiveWeight(1);nextAction.setEffectiveTimeScale(1);if(options.restartOnSwitch||loopMode===\"once\"||!hasSeenAction){nextAction.reset();}if(options.syncPhase&&prevAction&&prevAction!==nextAction&&!options.restartOnSwitch){_syncAnimationPhase(prevAction,nextAction);}nextAction.play();if(loopMode===\"once\"&&options.onOnceComplete){const onceCallback=_getAnimationOnceCompleteCallback(holder,requestSig,options.onOnceComplete);_bindAnimationOnceComplete(holder,mixer,nextAction,onceCallback);}else{_clearAnimationOnceCompleteListener(holder,mixer);}if(shouldBlend){prevAction.crossFadeTo(nextAction,blendDuration,!!options.warp);}else{nextAction.fadeIn(blendDuration);}holder._animationActionCache.add(actionKey);holder._activeAnimationAction=nextAction;holder._activeAnimationKey=actionKey;holder._activeAnimationClipName=clip.name;holder._lastAnimationRequestSig=requestSig;return;}const action=mixer.clipAction(clip);if(holder&&holder._activeAnimationKey===actionKey){const sameRequest=holder._lastAnimationRequestSig===requestSig;_configureAnimationLoop(action,loopMode);action.enabled=true;if(!(loopMode===\"once\"&&_isAnimationOnceActionComplete(action))){action.paused=false;}action.setEffectiveWeight(1);action.setEffectiveTimeScale(1);if(options.restartOnSwitch&&!sameRequest||loopMode===\"once\"&&!sameRequest){action.reset();action.play();}else if(!action.isRunning()&&!(loopMode===\"once\"&&_isAnimationOnceActionComplete(action))){action.play();}if(loopMode===\"once\"&&options.onOnceComplete&&!onceAlreadyCompleted){const onceCallback=_getAnimationOnceCompleteCallback(holder,requestSig,options.onOnceComplete);if(holder._animationOnceCompleteAction!==action||holder._animationOnceCompleteCallback!==onceCallback){_bindAnimationOnceComplete(holder,mixer,action,onceCallback);}}else{_clearAnimationOnceCompleteListener(holder,mixer);}holder._activeAnimationAction=action;holder._activeAnimationKey=actionKey;holder._activeAnimationClipName=clip.name;holder._lastAnimationRequestSig=requestSig;return;}if(holder?._activeAnimationAction&&holder._activeAnimationAction!==action){holder._activeAnimationAction.stop();}_configureAnimationLoop(action,loopMode);action.enabled=true;if(!(loopMode===\"once\"&&_isAnimationOnceActionComplete(action))){action.paused=false;}action.setEffectiveWeight(1);action.setEffectiveTimeScale(1);if(options.restartOnSwitch||loopMode===\"once\"||!action.isRunning()){action.reset();}action.play();if(holder){if(loopMode===\"once\"&&options.onOnceComplete){const onceCallback=_getAnimationOnceCompleteCallback(holder,requestSig,options.onOnceComplete);_bindAnimationOnceComplete(holder,mixer,action,onceCallback);}else{_clearAnimationOnceCompleteListener(holder,mixer);}holder._activeAnimationAction=action;holder._activeAnimationKey=`${clip.name}|${loopMode}`;holder._activeAnimationClipName=clip.name;holder._lastAnimationRequestSig=requestSig;}}else{const loopMode=options.loopMode??\"repeat\";const replayKey=loopMode===\"once\"?options.replayKey||\"\":\"\";const requestSig=`all|${loopMode}|${options.onOnceComplete?1:0}|${replayKey}`;if(options.holder&&options.holder._lastAnimationRequestSig!==requestSig){options.holder._animationOnceCompletedSig=\"\";}if(options.holder?._activeAnimationKey===\"all\"&&options.holder?._lastAnimationRequestSig===requestSig){return;}mixer.stopAllAction();const actions=[];// \"all\" mode — play every clip\nfor(const clip of animations){const action=mixer.clipAction(clip);_configureAnimationLoop(action,loopMode);action.enabled=true;action.paused=false;action.reset().play();actions.push(action);}if(options.holder){if(loopMode===\"once\"&&options.onOnceComplete){const onceCallback=_getAnimationOnceCompleteCallback(options.holder,requestSig,options.onOnceComplete);_bindAnimationOnceCompleteActions(options.holder,mixer,actions,onceCallback);}else{_clearAnimationOnceCompleteListener(options.holder,mixer);}options.holder._activeAnimationAction=null;options.holder._activeAnimationKey=\"all\";options.holder._activeAnimationClipName=\"\";options.holder._lastAnimationRequestSig=requestSig;}}}/* Generate environment hash *//* Generate effects hash */export function _getAnimationBlendOptions(holder,cfg,blendDuration){return{holder,blendDuration:blendDuration??cfg.animationBlendDuration,warp:cfg.animationWarp,syncPhase:cfg.animationSyncPhase,restartOnSwitch:cfg.animationRestartOnSwitch,loopMode:cfg.animationLoopMode,replayKey:cfg._animationReplayHash};}export function _canAdvanceAnimationMixer(holder,mixer){if(!mixer)return false;if((mixer.timeScale||0)===0)return false;const activeKey=holder?._activeAnimationKey||\"\";if(!activeKey)return false;if(activeKey===\"all\")return true;const action=holder?._activeAnimationAction;if(!action)return false;return action.enabled!==false&&!action.paused;}// #endregion\n\nexport const __FramerMetadata__ = {\"exports\":{\"_getAnimationOnceCompleteCallback\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_playAnimations\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_clearAnimationOnceCompleteListener\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_getAnimationBlendOptions\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_isAnimationOnceActionComplete\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_bindAnimationOnceComplete\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_canAdvanceAnimationMixer\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_configureAnimationLoop\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_findAnimationClip\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_syncAnimationPhase\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_warmAnimationActions\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_bindAnimationOnceCompleteActions\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// @ts-nocheck\n// #region 4. GLOBAL RUNTIME STATE\nimport{THREE}from\"https://framerusercontent.com/modules/YeYAFpMfJfcs2D9mfKFW/DDv12VyHhTY27qyXtQ6t/deps.js\";// @api RuntimeState.globals\nexport const _tmpVec3A=new THREE.Vector3;export const _tmpVec3B=new THREE.Vector3;export const _tmpVec3C=new THREE.Vector3;export let _rootTooltipHandler=null;export function _setRootTooltipHandler(handler){_rootTooltipHandler=handler;}export const _tmpParticleVecA=new THREE.Vector3;export const _tmpParticleVecB=new THREE.Vector3;export const _tmpQuatA=new THREE.Quaternion;export const _tmpQuatB=new THREE.Quaternion;export const _tmpEulerA=new THREE.Euler;export const _tmpBox3=new THREE.Box3;export const _tmpStereoSize=new THREE.Vector2;export const _tmpFrustum=new THREE.Frustum;export const _tmpProjScreenMatrix=new THREE.Matrix4;export const _tmpSubScenePivotOffset=new THREE.Vector3;export const _tmpSubScenePivotEuler=new THREE.Euler;export const _tmpSubScenePivotQuat=new THREE.Quaternion;export function _createAsyncTextureLoader(){const bitmapLoader=typeof createImageBitmap!==\"undefined\"?new THREE.ImageBitmapLoader:null;if(bitmapLoader)bitmapLoader.setOptions({imageOrientation:\"flipY\"});const fallbackLoader=new THREE.TextureLoader;return{load:function(url,onLoad,onProgress,onError){const isSVG=url.toLowerCase().includes(\".svg\")||url.startsWith(\"data:image/svg+xml\");if(!bitmapLoader||isSVG){return fallbackLoader.load(url,onLoad,onProgress,onError);}const texture=new THREE.Texture;bitmapLoader.load(url,function(imageBitmap){texture.image=imageBitmap;texture.needsUpdate=true;if(onLoad)onLoad(texture);},onProgress,function(err){fallbackLoader.load(url,function(tex){texture.image=tex.image;texture.needsUpdate=true;if(onLoad)onLoad(texture);},onProgress,onError);});return texture;}};}export const _modelCache=new Map;export const _preloadInFlight=new Map;export const _zipBlobCache=new Map;export const hdriCache=new Map;export const hdriInFlight=new Map;export const proceduralEnvCache=new WeakMap;export const _progressivePlaceholderColor=new THREE.Color(.35,.35,.38);export const _origMaterialBackups=new Map// #endregion\n;\nexport const __FramerMetadata__ = {\"exports\":{\"_tmpQuatB\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"proceduralEnvCache\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_tmpVec3B\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_tmpStereoSize\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_zipBlobCache\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_tmpBox3\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_preloadInFlight\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_tmpSubScenePivotEuler\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_rootTooltipHandler\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_tmpParticleVecB\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_tmpVec3C\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"hdriCache\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"hdriInFlight\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_modelCache\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_createAsyncTextureLoader\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_tmpQuatA\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_tmpParticleVecA\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_origMaterialBackups\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_tmpSubScenePivotQuat\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_tmpProjScreenMatrix\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_tmpSubScenePivotOffset\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_tmpEulerA\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_tmpVec3A\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_setRootTooltipHandler\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_tmpFrustum\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_progressivePlaceholderColor\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./state.map","// @ts-nocheck\n// #region 15. SHADER PASSES\nfunction _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}import{THREE,React}from\"https://framerusercontent.com/modules/YeYAFpMfJfcs2D9mfKFW/DDv12VyHhTY27qyXtQ6t/deps.js\";import{TONE_MAPPINGS}from\"https://framerusercontent.com/modules/urxcwcToMwyEWH05dzo6/cUcLUwBj9Qei2vxq7YKV/constants.js\";export const useBrowserLayoutEffect=typeof window!==\"undefined\"?React.useLayoutEffect:React.useEffect;/**\n * Framer/Figma-style tile pixelation. Unlike Three.js RenderPixelatedPass,\n * this operates on the finished image and exposes shaped cells, gaps,\n * posterization, average color, dissolve and knockout behavior.\n */export const FramerTilePixelateShader={uniforms:{tDiffuse:{value:null},resolution:{value:new THREE.Vector2(1,1)},shape:{value:0},cellPx:{value:new THREE.Vector2(23,23)},gap:{value:0},colorTrim:{value:0},averageColor:{value:.42},dissolve:{value:0},falloff:{value:0},dissolveMode:{value:0},knockout:{value:1}},vertexShader:`\n        varying vec2 vUv;\n        void main() {\n            vUv = uv;\n            gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0);\n        }\n    `,fragmentShader:`\n        uniform sampler2D tDiffuse;\n        uniform vec2 resolution;\n        uniform int shape;\n        uniform vec2 cellPx;\n        uniform float gap;\n        uniform float colorTrim;\n        uniform float averageColor;\n        uniform float dissolve;\n        uniform float falloff;\n        uniform int dissolveMode;\n        uniform float knockout;\n        varying vec2 vUv;\n\n        vec4 sampleSrc(vec2 uv) {\n            if (uv.x < 0.0 || uv.x > 1.0 || uv.y < 0.0 || uv.y > 1.0) {\n                return vec4(0.0);\n            }\n            return texture2D(tDiffuse, uv);\n        }\n\n        float hash12(vec2 p) {\n            // Keep this compatible with the GLSL ES 1.00 compiler used by\n            // WebGL1.  The more compact vec3 hash is valid in newer GLSL\n            // versions, but some browsers reject it when this pass is\n            // compiled through ShaderMaterial.\n            return fract(sin(dot(p, vec2(127.1, 311.7))) * 43758.5453);\n        }\n\n        float hexDist(vec2 p) {\n            p = abs(p);\n            return max(dot(p, vec2(0.5, 0.866025)), p.x);\n        }\n\n        vec4 hexCoords(vec2 g) {\n            vec2 r = vec2(1.0, 1.7320508);\n            vec2 h = r * 0.5;\n            vec2 a = mod(g, r) - h;\n            vec2 b = mod(g - h, r) - h;\n            vec2 gv = a;\n            if (dot(b, b) < dot(a, a)) gv = b;\n            return vec4(gv, g - gv);\n        }\n\n        void main() {\n            vec2 px = vUv * resolution;\n            vec2 g = px / cellPx;\n            float gapHalf = gap * 0.5;\n            vec2 centerCell;\n            float mask;\n            float dropped = 0.0;\n\n            if (shape == 0 || shape == 1) {\n                vec2 id = floor(g);\n                centerCell = id + 0.5;\n                vec2 lc = g - centerCell;\n                float th = 0.5 - gapHalf;\n                if (shape == 0) {\n                    // With no gap, every fragment belongs to a rectangle\n                    // cell. The strict edge test would otherwise leave a\n                    // one-pixel knockout line at each tile boundary.\n                    if (gap < 0.0001) mask = 1.0;\n                    else if (max(abs(lc.x), abs(lc.y)) < th) mask = 1.0;\n                    else mask = 0.0;\n                } else {\n                    if (length(lc) < th) mask = 1.0;\n                    else mask = 0.0;\n                }\n            } else if (shape == 2) {\n                vec4 hc = hexCoords(g);\n                centerCell = hc.zw;\n                if (hexDist(hc.xy) < 0.5 * (1.0 - gap)) mask = 1.0;\n                else mask = 0.0;\n            } else {\n                vec2 id = floor(g);\n                vec2 lc = g - (id + 0.5);\n                float diag = mod(id.x + id.y, 2.0);\n                float s;\n                if (diag < 0.5) s = lc.x + lc.y;\n                else s = lc.x - lc.y;\n                float tri = step(0.0, s);\n                vec2 cen;\n                if (diag < 0.5) {\n                    if (tri > 0.5) cen = vec2(1.0 / 6.0);\n                    else cen = vec2(-1.0 / 6.0);\n                } else {\n                    if (tri > 0.5) cen = vec2(1.0, -1.0) / 6.0;\n                    else cen = vec2(-1.0, 1.0) / 6.0;\n                }\n                centerCell = id + 0.5 + cen;\n                float dEdge = 0.5 - max(abs(lc.x), abs(lc.y));\n                float dDiag = abs(s) / 1.4142136;\n                if (min(dEdge, dDiag) > gapHalf) mask = 1.0;\n                else mask = 0.0;\n            }\n\n            vec2 centerUv = centerCell * cellPx / resolution;\n            vec4 centerCol = sampleSrc(centerUv);\n            vec4 avg = vec4(0.0);\n            for (int y = -1; y <= 1; y++) {\n                for (int x = -1; x <= 1; x++) {\n                    vec2 o = vec2(float(x), float(y)) * cellPx * 0.3 / resolution;\n                    avg += sampleSrc(centerUv + o);\n                }\n            }\n            avg /= 9.0;\n            vec4 col = mix(centerCol, avg, averageColor);\n\n            float steps = max(1.0, 256.0 / exp2(colorTrim));\n            col.rgb = floor(col.rgb * steps) / steps;\n\n            float bias = mix(1.0, smoothstep(0.0, 1.0, centerUv.y), falloff);\n            float chance = dissolve * bias;\n            float randomCell = hash12(centerCell);\n            if (dissolveMode == 0) {\n                if (randomCell < chance) dropped = 1.0;\n            } else if (dissolve > 0.0) {\n                col.a *= 1.0 - smoothstep(chance, chance + 0.2, randomCell);\n            }\n\n            if (mask > 0.5 && dropped < 0.5) {\n                gl_FragColor = col;\n            } else if (dropped > 0.5 && knockout > 0.5) {\n                // Only a deliberately dissolved cell may become transparent.\n                // Shape boundaries are not gaps anymore: preserving the\n                // source pixel there prevents the geometric glitch pattern\n                // seen when switching Ellipse/Triangle at small sizes.\n                gl_FragColor = vec4(0.0);\n            } else {\n                gl_FragColor = sampleSrc(vUv);\n            }\n        }\n    `};const TILE_PIXELATE_SHAPES={rectangle:0,ellipse:1,hexagon:2,triangle:3};const _clamp01=value=>Math.max(0,Math.min(1,value));export function createFramerTilePixelatePass(ShaderPass){const pass=new ShaderPass(FramerTilePixelateShader);const uniforms=pass.uniforms||pass.material?.uniforms;pass._pixelRatio=1;pass._tileConfig=null;pass.setSize=(width,height)=>{uniforms.resolution.value.set(Math.max(1,width),Math.max(1,height));};pass.setPixelRatio=pixelRatio=>{pass._pixelRatio=Math.max(.5,pixelRatio||1);if(pass._tileConfig)pass.setTilePixelateConfig(pass._tileConfig);};pass.setTilePixelateConfig=cfg=>{pass._tileConfig=cfg;const size=Math.max(1,Number(cfg.pixelateSize)||23);const stretch=Math.max(-90,Number(cfg.pixelateStretch)||0);const widthFactor=Math.max(.1,1+stretch/100);const shape=TILE_PIXELATE_SHAPES[cfg.pixelateShape]??0;// Work on whole physical pixels. Fractional cell sizes (for example\n// 3 CSS px on a 1.5 DPR display) make the hex lattice phase drift and\n// produce unstable moire/pattern pixels while resizing.\nconst cellWidthPx=Math.max(1,Math.round(size*widthFactor*pass._pixelRatio));const cellHeightPx=Math.max(1,Math.round(size*pass._pixelRatio));uniforms.shape.value=shape;uniforms.cellPx.value.set(cellWidthPx,cellHeightPx);// Gap and color trim are intentionally disabled. Pixelate must not\n// introduce a color or dotted/knockout pattern of its own.\nuniforms.gap.value=0;uniforms.colorTrim.value=0;uniforms.averageColor.value=_clamp01((Number(cfg.pixelateAverageColor)||0)/100);uniforms.dissolve.value=_clamp01((Number(cfg.pixelateDissolve)||0)/100);uniforms.falloff.value=_clamp01((Number(cfg.pixelateFalloff)||0)/100);uniforms.dissolveMode.value=cfg.pixelateDissolveMode===\"fade\"?1:0;uniforms.knockout.value=cfg.pixelateKnockout===false?0:1;};return pass;}// Shared 3D Noise GLSL (Perlin-like)\nexport const NOISE_GLSL=`\n    vec3 mod289(vec3 x) { return x - floor(x * (1.0 / 289.0)) * 289.0; }\n    vec4 mod289(vec4 x) { return x - floor(x * (1.0 / 289.0)) * 289.0; }\n    vec4 permute(vec4 x) { return mod289(((x*34.0)+1.0)*x); }\n    vec4 taylorInvSqrt(vec4 r) { return 1.79284291400159 - 0.85373472095314 * r; }\n\n    float snoise(vec3 v) {\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        vec3 i  = floor(v + dot(v, C.yyy));\n        vec3 x0 = v - i + dot(i, C.xxx);\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        vec3 x1 = x0 - i1 + C.xxx;\n        vec3 x2 = x0 - i2 + C.yyy;\n        vec3 x3 = x0 - D.yyy;\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        float n_ = 0.142857142857;\n        vec3 ns = n_ * D.wyz - D.xzx;\n        vec4 j = p - 49.0 * floor(p * ns.z * ns.z);\n        vec4 x_ = floor(j * ns.z);\n        vec4 y_ = floor(j - 7.0 * x_);\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        vec4 b0 = vec4(x.xy, y.xy);\n        vec4 b1 = vec4(x.zw, y.zw);\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        vec4 a0 = b0.xzyw + s0.xzyw*sh.xxyy;\n        vec4 a1 = b1.xzyw + s1.xzyw*sh.zzww;\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        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        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), dot(p2,x2), dot(p3,x3)));\n    }\n`;/* ═══════════════════════════════════════════════════════════\n   Custom Post-Processing Shaders\n   ═══════════════════════════════════════════════════════════ */export const VignetteShader={uniforms:{tDiffuse:{value:null},offset:{value:1},darkness:{value:1}},vertexShader:`varying vec2 vUv;void main(){vUv=uv;gl_Position=projectionMatrix*modelViewMatrix*vec4(position,1.0);}`,fragmentShader:`\n        uniform sampler2D tDiffuse;\n        uniform float offset;\n        uniform float darkness;\n        varying vec2 vUv;\n        void main(){\n            vec4 texel=texture2D(tDiffuse,vUv);\n            vec2 uv=(vUv-vec2(0.5))*vec2(offset);\n            float vig=clamp(1.0-dot(uv,uv),0.0,1.0);\n            texel.rgb*=mix(1.0,pow(vig,0.5),darkness);\n            gl_FragColor=texel;\n        }`};export const ChromaticAberrationShader={uniforms:{tDiffuse:{value:null},strength:{value:.005},resolution:{value:new THREE.Vector2(1,1)}},vertexShader:`varying vec2 vUv;void main(){vUv=uv;gl_Position=projectionMatrix*modelViewMatrix*vec4(position,1.0);}`,fragmentShader:`\n        uniform sampler2D tDiffuse;\n        uniform float strength;\n        uniform vec2 resolution;\n        varying vec2 vUv;\n        void main(){\n            vec2 dir=vUv-vec2(0.5);\n            float d=length(dir);\n            float s=strength*d*d;\n            vec2 offset=dir*s;\n            float r=texture2D(tDiffuse,vUv+offset).r;\n            float g=texture2D(tDiffuse,vUv).g;\n            float b=texture2D(tDiffuse,vUv-offset).b;\n            float a=texture2D(tDiffuse,vUv).a;\n            gl_FragColor=vec4(r,g,b,a);\n        }`};export const FilmGrainShader={uniforms:{tDiffuse:{value:null},time:{value:0},intensity:{value:.05}},vertexShader:`varying vec2 vUv;void main(){vUv=uv;gl_Position=projectionMatrix*modelViewMatrix*vec4(position,1.0);}`,fragmentShader:`\n        uniform sampler2D tDiffuse;\n        uniform float time;\n        uniform float intensity;\n        varying vec2 vUv;\n        float rand(vec2 co){return fract(sin(dot(co,vec2(12.9898,78.233)))*43758.5453);}\n        void main(){\n            vec4 texel=texture2D(tDiffuse,vUv);\n            float noise=rand(vUv+vec2(time*0.01,time*0.007))*2.0-1.0;\n            texel.rgb+=noise*intensity;\n            gl_FragColor=texel;\n        }`};/**\n * AlphaRestoreShader — restores original alpha from a saved render target.\n * UnrealBloomPass destroys alpha (writes 1.0 everywhere via AdditiveBlending).\n * This pass takes RGB from the post-processed chain but alpha from the pre-bloom render.\n */export const AlphaRestoreShader={uniforms:{tDiffuse:{value:null},tAlpha:{value:null}},vertexShader:`varying vec2 vUv;void main(){vUv=uv;gl_Position=projectionMatrix*modelViewMatrix*vec4(position,1.0);}`,fragmentShader:`\n        uniform sampler2D tDiffuse;\n        uniform sampler2D tAlpha;\n        varying vec2 vUv;\n        void main(){\n            vec4 color=texture2D(tDiffuse,vUv);\n            float alpha=texture2D(tAlpha,vUv).a;\n            gl_FragColor=vec4(color.rgb*alpha, alpha);\n        }`};/**\n * AlphaSavePass — copies current readBuffer to a side render target (alphaRT)\n * to preserve alpha before bloom destroys it. Passes through unchanged.\n */export class AlphaSavePass{setSize(w,h){this.targetRT.setSize(w,h);}render(renderer,writeBuffer,readBuffer){if(!this.enabled)return;this._copyMat.uniforms.tDiffuse.value=readBuffer.texture;const oldRT=renderer.getRenderTarget();renderer.setRenderTarget(this.targetRT);renderer.clear();renderer.render(this._scene,this._cam);renderer.setRenderTarget(oldRT);}dispose(){this._copyMat.dispose();this._fsQuad.geometry.dispose();this.targetRT.dispose();}constructor(targetRT){_define_property(this,\"enabled\",true);_define_property(this,\"needsSwap\",false);_define_property(this,\"renderToScreen\",false);_define_property(this,\"clear\",false);_define_property(this,\"targetRT\",void 0);_define_property(this,\"_copyMat\",void 0);_define_property(this,\"_fsQuad\",void 0);_define_property(this,\"_scene\",void 0);_define_property(this,\"_cam\",void 0);this.targetRT=targetRT;this._copyMat=new THREE.ShaderMaterial({uniforms:{tDiffuse:{value:null}},vertexShader:`varying vec2 vUv;void main(){vUv=uv;gl_Position=projectionMatrix*modelViewMatrix*vec4(position,1.0);}`,fragmentShader:`uniform sampler2D tDiffuse;varying vec2 vUv;void main(){gl_FragColor=texture2D(tDiffuse,vUv);}`,depthTest:false,depthWrite:false});const geo=new THREE.PlaneGeometry(2,2);this._fsQuad=new THREE.Mesh(geo,this._copyMat);this._fsQuad.frustumCulled=false;this._scene=new THREE.Scene;this._scene.add(this._fsQuad);this._cam=new THREE.OrthographicCamera(-1,1,1,-1,0,1);}}export const ColorGradingShader={uniforms:{tDiffuse:{value:null},brightness:{value:0},contrast:{value:1},saturation:{value:1}},vertexShader:`varying vec2 vUv;void main(){vUv=uv;gl_Position=projectionMatrix*modelViewMatrix*vec4(position,1.0);}`,fragmentShader:`\n        uniform sampler2D tDiffuse;\n        uniform float brightness;\n        uniform float contrast;\n        uniform float saturation;\n        varying vec2 vUv;\n        void main(){\n            vec4 texel=texture2D(tDiffuse,vUv);\n            texel.rgb+=brightness;\n            texel.rgb=((texel.rgb-0.5)*contrast)+0.5;\n            float lum=dot(texel.rgb,vec3(0.2126,0.7152,0.0722));\n            texel.rgb=mix(vec3(lum),texel.rgb,saturation);\n            gl_FragColor=vec4(max(texel.rgb,0.0),texel.a);\n        }`};/**\n * Apply effects/post-processing changes.\n */export function applyEffectsChanges(st,cfg){const{_bloom:bloom,_ssao:ssao,_colorGrading:colorGrading,_vignette:vignette,_chromaticAberration:chromaticAberration,_filmGrain:filmGrain,_pixelated:pixelated,_fxaa:fxaa}=st;// Tone mapping\nst._renderer.toneMapping=TONE_MAPPINGS[cfg.toneMapping]||THREE.ACESFilmicToneMapping;st._renderer.toneMappingExposure=cfg.exposure;// Bloom\nif(bloom)bloom.enabled=cfg.bloomEnabled;if(bloom&&cfg.bloomEnabled){bloom.strength=cfg.bloomStrength;bloom.threshold=cfg.bloomThreshold;bloom.radius=cfg.bloomRadius;}// SSAO\nif(ssao){ssao.enabled=cfg.enableSSAO;if(cfg.enableSSAO){ssao.kernelRadius=cfg.ssaoRadius;ssao.minDistance=cfg.ssaoMinDistance;ssao.maxDistance=cfg.ssaoMaxDistance;}}// DOF (Depth of Field) — disabled for orthographic camera\nconst dof=st._dof;if(dof){dof.enabled=cfg.enableDOF&&cfg.cameraType!==\"orthographic\";if(cfg.enableDOF){dof.uniforms[\"focus\"].value=cfg.dofFocus;dof.uniforms[\"aperture\"].value=cfg.dofAperture;dof.uniforms[\"maxblur\"].value=cfg.dofMaxBlur;}}// Alpha save/restore: needed when bloom + transparent background\nconst needAlphaFix=(cfg.bloomEnabled||cfg.enableDOF)&&cfg.transparentBackground;if(st._alphaSave)st._alphaSave.enabled=needAlphaFix;if(st._alphaRestore)st._alphaRestore.enabled=needAlphaFix;// Color grading\nif(colorGrading)colorGrading.enabled=cfg.enableColorGrading;if(colorGrading&&cfg.enableColorGrading){colorGrading.uniforms.brightness.value=cfg.brightness;colorGrading.uniforms.contrast.value=cfg.contrast;colorGrading.uniforms.saturation.value=cfg.saturation;}// Vignette\nif(vignette)vignette.enabled=cfg.enableVignette;if(vignette&&cfg.enableVignette){vignette.uniforms.offset.value=cfg.vignetteOffset;vignette.uniforms.darkness.value=cfg.vignetteDarkness;}// Chromatic aberration\nif(chromaticAberration)chromaticAberration.enabled=cfg.enableChromaticAberration;if(chromaticAberration&&cfg.enableChromaticAberration){chromaticAberration.uniforms.strength.value=cfg.chromaticAberrationStrength;}// Film grain\nif(filmGrain)filmGrain.enabled=cfg.enableFilmGrain;if(filmGrain&&cfg.enableFilmGrain){filmGrain.uniforms.intensity.value=cfg.filmGrainIntensity;}// Framer/Figma-style tile pixelation\nif(pixelated)pixelated.enabled=cfg.enablePixelate;if(pixelated&&cfg.enablePixelate){pixelated.setTilePixelateConfig?.(cfg);}// FXAA\nif(fxaa)fxaa.enabled=cfg.enableFXAA;}// #endregion\n\nexport const __FramerMetadata__ = {\"exports\":{\"FramerTilePixelateShader\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"FilmGrainShader\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"createFramerTilePixelatePass\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"ChromaticAberrationShader\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"NOISE_GLSL\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"AlphaSavePass\":{\"type\":\"class\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useBrowserLayoutEffect\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"applyEffectsChanges\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"AlphaRestoreShader\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"ColorGradingShader\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"VignetteShader\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// @ts-nocheck\n// #region 6. FORMAT & COLOR UTILS\nimport{THREE}from\"https://framerusercontent.com/modules/YeYAFpMfJfcs2D9mfKFW/DDv12VyHhTY27qyXtQ6t/deps.js\";export function detectFormat(url){if(!url)return null;const ext=url.split(\"?\")[0].split(\"#\")[0].toLowerCase().split(\".\").pop();if(ext===\"glb\"||ext===\"gltf\")return ext;if(ext===\"fbx\")return\"fbx\";if(ext===\"zip\")return\"zip\";return null// Only GLB/GLTF/FBX/ZIP supported — other formats should be converted in Blender\n;}export function detectImageFormat(url){if(!url)return null;const ext=url.split(\"?\")[0].split(\"#\")[0].toLowerCase().split(\".\").pop();if(ext===\"png\"||ext===\"jpg\"||ext===\"jpeg\"||ext===\"webp\"||ext===\"avif\"){return ext;}return null;}export function _normalizeLayerMatchValue(value){return String(value??\"\").trim().toLowerCase();}function _normalizeExactLayerMatchValue(value){return String(value??\"\").trim().replace(/^[#.]/,\"\");}export function _getLayerMatchValues(node){if(!node)return[];const values=[node.id,node.getAttribute?.(\"aria-label\"),node.getAttribute?.(\"data-framer-name\"),node.getAttribute?.(\"data-framer-component-name\"),node.getAttribute?.(\"data-section-id\"),node.getAttribute?.(\"data-name\"),node.getAttribute?.(\"title\")];if(node.classList)values.push(...Array.from(node.classList));return values.filter(Boolean).map(value=>_normalizeLayerMatchValue(value));}export function _getLayerMatchScore(node,targets){if(!node||!targets?.length)return 0;const targetSet=new Set(targets);const sectionId=_normalizeLayerMatchValue(node.getAttribute?.(\"data-section-id\"));if(sectionId&&targetSet.has(sectionId)){return 300;}const id=_normalizeLayerMatchValue(node.id);if(id&&targetSet.has(id)){return 200;}return 0;}export function _getLayerMatchArea(node){const rect=node?.getBoundingClientRect?.();if(!rect)return 0;return Math.max(0,rect.width)*Math.max(0,rect.height);}export function _resolveScrollAnchorY(value,fallback=.5){if(typeof value===\"number\"&&Number.isFinite(value)){return Math.max(0,Math.min(1,value));}const key=String(value??\"\").trim().toLowerCase();if(key===\"top\"||key===\"start\")return 0;if(key===\"bottom\"||key===\"end\")return 1;if(key===\"middle\"||key===\"mid\"||key===\"center\")return .5;return fallback;}export function _getObjectEventScrollProgress(selector,wrapNode=null,anchor=.5){if(typeof window===\"undefined\")return 1;const match=String(selector??\"\").trim();if(!match)return 1;const el=_findLayerMatchElement(match,wrapNode);if(!el)return 0;const rect=el.getBoundingClientRect?.();const viewH=window.innerHeight||1;if(!rect||!viewH)return 0;const anchorY=rect.top+rect.height*_resolveScrollAnchorY(anchor);return Math.max(0,Math.min(1,1-anchorY/viewH));}export function _isLayerMatchCandidateUsable(node,wrapNode){if(!node||node.nodeType!==1)return false;if(wrapNode&&wrapNode.contains?.(node))return false;if(node.getAttribute?.(\"data-3d-canvas-id\"))return false;const rect=node.getBoundingClientRect?.();// Framer can scale an ID target to a fractional CSS-pixel size (for\n// example, 0.998px high). It is still a real visible target and must not\n// be rejected, or Scroll ID resolution will vary with browser zoom/scaling.\nif(!rect||rect.width<=0||rect.height<=0)return false;let current=node;while(current&&current!==document.body){if(current.getAttribute?.(\"aria-hidden\")===\"true\"||current.getAttribute?.(\"data-framer-hidden\")===\"true\"){return false;}const style=typeof window!==\"undefined\"?window.getComputedStyle(current):null;if(style&&(style.display===\"none\"||style.visibility===\"hidden\"||Number(style.opacity)===0)){return false;}current=current.parentElement;}return true;}export function _matchesLayerSelector(rootNode,selector){const targets=String(selector??\"\").split(\",\").map(_normalizeLayerMatchValue).flatMap(value=>[value,value.replace(/^[#.]/,\"\")]).filter(Boolean);if(!targets.length)return true;let node=rootNode;while(node&&node!==document.body){const values=_getLayerMatchValues(node);for(const target of targets){if(values.some(value=>value===target))return true;}node=node.parentElement;}return false;}export function _findLayerMatchElement(selector,wrapNode=null){if(typeof document===\"undefined\")return null;const targets=String(selector??\"\").split(\",\").map(_normalizeExactLayerMatchValue).filter(Boolean);if(!targets.length)return null;const exactCandidates=document.querySelectorAll(\"[data-section-id],[id]\");const usableCandidates=Array.from(exactCandidates).filter(node=>_isLayerMatchCandidateUsable(node,wrapNode));// Deterministic resolution for Follow ID:\n// 1. exact HTML id (IDs are case-sensitive)\n// 2. exact Framer section ID\n// 3. a case-insensitive fallback only when it is unambiguous\nfor(const target of targets){const exactId=usableCandidates.find(node=>node.id===target);if(exactId)return exactId;const exactSectionId=usableCandidates.find(node=>node.getAttribute?.(\"data-section-id\")===target);if(exactSectionId)return exactSectionId;// Keep the historical case-insensitive behavior for unique matches,\n// but do not guess between duplicate IDs that differ only by case.\nconst foldedTarget=target.toLowerCase();const foldedMatches=usableCandidates.filter(node=>{return _normalizeLayerMatchValue(node.id)===foldedTarget||_normalizeLayerMatchValue(node.getAttribute?.(\"data-section-id\"))===foldedTarget;});if(foldedMatches.length===1)return foldedMatches[0];}return null;}export function parseColor(c){if(!c)return new THREE.Color(1842204);try{// Framer's ControlType.Color may return rgba() which THREE.Color doesn't support\n// Strip alpha channel: \"rgba(R, G, B, A)\" → \"rgb(R, G, B)\"\nlet s=typeof c===\"string\"?c.trim():c;// Handle CSS variables: \"var(--token-xyz, rgb(219, 38, 37))\"\nif(typeof s===\"string\"&&s.includes(\"var(\")){// Extract fallback value after comma (if exists)\nconst match=s.match(/var\\([^,]+,\\s*([^)]+)\\)/);if(match&&match[1]){s=match[1].trim();}else{// No fallback — use default color\nreturn new THREE.Color(1842204);}}if(typeof s===\"string\"&&s.startsWith(\"rgba(\")){const parts=s.slice(5,-1).split(\",\");s=`rgb(${parts[0]},${parts[1]},${parts[2]})`;}return new THREE.Color(s);}catch{return new THREE.Color(1842204);}}// #endregion\n\nexport const __FramerMetadata__ = {\"exports\":{\"parseColor\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"detectImageFormat\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_resolveScrollAnchorY\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_normalizeLayerMatchValue\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_getLayerMatchScore\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_getObjectEventScrollProgress\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_isLayerMatchCandidateUsable\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"detectFormat\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_matchesLayerSelector\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_getLayerMatchArea\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_findLayerMatchElement\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_getLayerMatchValues\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// @ts-nocheck\n// #region 19. WEBGL COORDINATOR\n// @api WebGLCoordinator.budget\nexport const _webglCoordinator=(()=>{const instances=new Map;const _sortScratch=[];let nextId=1;let scheduled=false;function _detectBudget(){if(typeof navigator===\"undefined\")return 4;const ua=navigator.userAgent||\"\";const isIOS=/iP(hone|ad|od)/.test(ua)||/Mac/.test(ua)&&navigator.maxTouchPoints>1;const isSafari=/^((?!chrome|android|crios|fxios).)*safari/i.test(ua);const mem=navigator.deviceMemory||4;if(isIOS)return mem<=3?2:3;if(isSafari)return mem<=4?3:4;return mem<=4?4:6;}const _deviceBudget=_detectBudget();// Read the Root-coordinator-supplied budget override from the shared bridge.\n// Root sets bridge.contextBudget when mounted. Falls back to device auto-detect.\nfunction _effectiveBudget(){if(typeof window===\"undefined\")return _deviceBudget;const bridge=window[\"__IMPORT_3D_CANVAS_BRIDGE__\"];const override=bridge?.contextBudget;return typeof override===\"number\"&&override>0?override:_deviceBudget;}function _destroyPolicy(){if(typeof window===\"undefined\"){return{enabled:false,ttlMs:_DESTROY_TTL_MS};}const bridge=window[\"__IMPORT_3D_CANVAS_BRIDGE__\"];return{enabled:!!bridge?.destroyOffscreen,ttlMs:Math.max(1e3,Number(bridge?.destroyAfterMs)||_DESTROY_TTL_MS)};}// Hard context limit before we start flagging slots for context destruction.\n// Destroying + recreating is expensive, so we only do it beyond this threshold.\n// Safari hard limit ≈ 16 (spec); we stay well under.\nfunction _contextLimit(){return Math.min((_effectiveBudget()+2)*2,8);}// Seconds a slot must be completely off-screen before its context is destroyed.\n// Destruction frees GPU memory and lowers context count.\n// Re-creation is fast because parsed geometry stays in _modelCache.\nconst _DESTROY_TTL_MS=2e4// 20 s\n;function _cmpRatio(a,b){return(b.ratio||0)-(a.ratio||0);}function _reevaluate(){scheduled=false;_sortScratch.length=0;for(const inst of instances.values())_sortScratch.push(inst);_sortScratch.sort(_cmpRatio);const n=_sortScratch.length;const budget=_effectiveBudget();const limit=_contextLimit();const now=performance.now();const destroyPolicy=_destroyPolicy();for(let i=0;i<n;i++){const inst=_sortScratch[i];const visible=(inst.ratio||0)>0;const shouldPause=i>=budget||!visible;if(inst.st){inst.st._coordinatorPaused=shouldPause;// Track continuous off-screen time for context destruction.\nif(!visible){if(!inst.st._coordOffscreenSince){inst.st._coordOffscreenSince=now;}if(inst.st._hasSubSceneItems){inst.st._coordinatorShouldDestroy=false;continue;}if(!destroyPolicy.enabled){inst.st._coordinatorShouldDestroy=false;}else{// Signal context destruction only when:\n//   1. slot has been off-screen long enough\n//   2. total registered instances exceed the hard limit\nconst offMs=now-inst.st._coordOffscreenSince;inst.st._coordinatorShouldDestroy=n>limit&&offMs>destroyPolicy.ttlMs;}}else{inst.st._coordOffscreenSince=0;inst.st._coordinatorShouldDestroy=false;}}}_sortScratch.length=0;}function _scheduleReeval(){if(scheduled)return;scheduled=true;if(typeof queueMicrotask!==\"undefined\")queueMicrotask(_reevaluate);else Promise.resolve().then(_reevaluate);}return{register(st){const id=nextId++;instances.set(id,{id,ratio:1,st});_scheduleReeval();return id;},unregister(id){if(id<=0)return;instances.delete(id);_scheduleReeval();},notify(id,ratio){const inst=instances.get(id);if(!inst)return;if(inst.ratio===ratio)return;inst.ratio=ratio;_scheduleReeval();},// Force an immediate re-evaluation (called when bridge budget changes).\nforceReeval(){_scheduleReeval();},size(){return instances.size;},getBudget(){return _effectiveBudget();},// DPR multiplier: scales render resolution down as more canvases mount,\n// so total pixel-shaded area stays roughly constant across the page.\ngetDprMultiplier(){const total=instances.size;if(total<=1)return 1;if(total===2)return .92;if(total===3)return .82;return .72;},// Sync helper for performanceLazyWebgl / performancePauseOffscreen:\n// when more than one canvas is mounted, treat per-instance gates as\n// \"force-enabled\" regardless of the user's configuration.\nshouldForcePerfGates(){return instances.size>1;}};})()// #endregion\n;\nexport const __FramerMetadata__ = {\"exports\":{\"_webglCoordinator\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./coordinator.map","// @ts-nocheck\n// #region 16. RENDER METRICS\nimport{RenderTarget}from\"https://framerusercontent.com/modules/YeYAFpMfJfcs2D9mfKFW/DDv12VyHhTY27qyXtQ6t/deps.js\";import{_AUTO_FIT_MAX_ASPECT,_AUTO_FIT_MIN_VISIBLE}from\"https://framerusercontent.com/modules/urxcwcToMwyEWH05dzo6/cUcLUwBj9Qei2vxq7YKV/constants.js\";import{_webglCoordinator}from\"https://framerusercontent.com/modules/EXMWoXo4BL9Mi3BANYjN/dfPpXZHxlbT43jn2Ry5l/coordinator.js\";let _mobileLikeCache=false;let _mobileLikeCacheAt=0;let _mobileLikeCacheWidth=-1;/** Get visible width/height at a given distance from camera (works for both perspective & ortho). */export function _getVisibleSize(camera,distance){if(camera?.isOrthographicCamera){return{width:(camera.right-camera.left)/Math.max(1e-4,camera.zoom),height:(camera.top-camera.bottom)/Math.max(1e-4,camera.zoom)};}const fov=(camera?.fov??35)*Math.PI/180;const height=2*Math.tan(fov/2)*Math.max(1e-4,distance);return{width:height*Math.max(1e-4,camera?.aspect||1),height};}/**\n * Auto-fit should be stable between Framer canvas and published desktop.\n * Published pages are often wider than the editor canvas; without this cap,\n * width-limited models grow larger after publish.\n */export function _getAutoFitVisibleSize(camera,distance){const visible=_getVisibleSize(camera,distance);const cappedWidth=visible.height*Math.min(camera.aspect||_AUTO_FIT_MAX_ASPECT,_AUTO_FIT_MAX_ASPECT);return{width:Math.min(visible.width,cappedWidth),height:visible.height};}export function _getAutoFitRatio(camera,normSize){const distance=camera?.position?.length?.()||1;const visible=_getAutoFitVisibleSize(camera,distance);return Math.min(visible.width/Math.max(_AUTO_FIT_MIN_VISIBLE,normSize.x),visible.height/Math.max(_AUTO_FIT_MIN_VISIBLE,normSize.y))*.85;}/** Cap render DPR to avoid expensive full-resolution rendering on high-DPI displays. */export function _isMobileLike(){if(typeof window===\"undefined\")return false;const now=typeof performance!==\"undefined\"?performance.now():Date.now();const width=window.innerWidth||0;if(_mobileLikeCacheAt&&now-_mobileLikeCacheAt<1e3&&width===_mobileLikeCacheWidth){return _mobileLikeCache;}_mobileLikeCacheAt=now;_mobileLikeCacheWidth=width;_mobileLikeCache=window.matchMedia?.(\"(pointer: coarse)\")?.matches||width<=768;return _mobileLikeCache;}export function _setStyleIfChanged(node,key,value){if(!node?.style)return;if(node.style[key]!==value)node.style[key]=value;}export function _clearStyleIfChanged(node,key){if(!node?.style)return;if(node.style[key])node.style[key]=\"\";}export function _getOptimizedDpr(cfg){if(typeof window===\"undefined\")return 1;const raw=window.devicePixelRatio||1;let cap=cfg.performanceMode?cfg.performanceDprCap??1.5:cfg.performanceDprCap??2;if(_isMobileLike()&&cfg.performanceMobileDprCap!=null){cap=Math.min(cap,cfg.performanceMobileDprCap);}// Multi-canvas: scale DPR cap down so total shaded pixels across the page\n// stay bounded as more canvases come alive.\ncap=cap*_webglCoordinator.getDprMultiplier();return Math.max(.5,Math.min(raw,cap));}export function _getOptimizedRenderMetrics(cssWidth,cssHeight,cfg){const safeWidth=Math.max(1,cssWidth||1);const safeHeight=Math.max(1,cssHeight||1);let dpr=_getOptimizedDpr(cfg);const maxPixelCount=cfg.performanceMaxPixelCount??0;if(maxPixelCount>0){const targetPixels=safeWidth*safeHeight*dpr*dpr;if(targetPixels>maxPixelCount){dpr=Math.max(.1,Math.sqrt(maxPixelCount/(safeWidth*safeHeight)));}}return{dpr,renderWidth:Math.max(1,Math.round(safeWidth*dpr)),renderHeight:Math.max(1,Math.round(safeHeight*dpr))};}export function _getOptimizedAnisotropy(renderer,cfg=null){const maxAniso=renderer?.capabilities?.getMaxAnisotropy?.()??1;const cap=cfg?.performanceMode?4:4;return Math.max(1,Math.min(maxAniso,cap));}export function _runtimeNeedsPostFx(cfg){if(!cfg||cfg.cameraType===\"stereo\")return false;return!!(cfg.bloomEnabled||cfg.enableSSAO||cfg.enableDOF&&cfg.cameraType!==\"orthographic\"||cfg.enableColorGrading||cfg.enableVignette||cfg.enableChromaticAberration||cfg.enableFilmGrain||cfg.enablePixelate||cfg.enableFXAA);}export function _postFxPipelineSignature(cfg){if(!_runtimeNeedsPostFx(cfg))return\"\";const needDof=!!(cfg.enableDOF&&cfg.cameraType!==\"orthographic\");const needAlpha=!!(cfg.transparentBackground&&(cfg.bloomEnabled||needDof));return[cfg.enableSSAO?\"ssao\":\"\",needAlpha?\"alpha\":\"\",needDof?\"dof\":\"\",cfg.bloomEnabled?\"bloom\":\"\",cfg.enableColorGrading?\"color\":\"\",cfg.enableVignette?\"vignette\":\"\",cfg.enableChromaticAberration?\"chromatic\":\"\",cfg.enableFilmGrain?\"grain\":\"\",cfg.enablePixelate?\"pixelate\":\"\",cfg.enableFXAA?\"fxaa\":\"\"].filter(Boolean).join(\"|\");}/**\n * Detect the current Framer runtime mode.\n * @param isOnFramerCanvas - result of useIsOnFramerCanvas() hook (optional,\n *   only available inside React render).  When omitted the function still\n *   detects canvas vs live via RenderTarget alone.\n */export function getFramerRuntimeMode(isOnFramerCanvas){const renderTarget=RenderTarget.current();if(renderTarget===RenderTarget.canvas||isOnFramerCanvas){return\"canvas\";}if(renderTarget===RenderTarget.preview&&typeof window!==\"undefined\"&&window.location.host.includes(\"framercanvas.com\")){return\"preview\";}return\"live\";}// #endregion\n\nexport const __FramerMetadata__ = {\"exports\":{\"_getVisibleSize\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getFramerRuntimeMode\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_getOptimizedAnisotropy\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_getOptimizedDpr\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_getAutoFitRatio\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_getOptimizedRenderMetrics\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_getAutoFitVisibleSize\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_isMobileLike\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_postFxPipelineSignature\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_runtimeNeedsPostFx\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_setStyleIfChanged\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_clearStyleIfChanged\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// @ts-nocheck\n// #region 7. OBJECT3D UTILS\nimport{THREE}from\"https://framerusercontent.com/modules/YeYAFpMfJfcs2D9mfKFW/DDv12VyHhTY27qyXtQ6t/deps.js\";/**\n * Check if an Object3D tree contains any SkinnedMesh (armature/skeleton).\n */export function _hasSkinnedMesh(object){let found=false;object.traverse(child=>{if(child.isSkinnedMesh)found=true;});return found;}export function _collectAnimationTargetNames(object){const names=new Set;const binding=THREE.PropertyBinding;object?.traverse?.(child=>{if(!child)return;if(child.uuid)names.add(String(child.uuid));if(child.name){const raw=String(child.name);names.add(raw);const sanitized=binding?.sanitizeNodeName?.(raw);if(sanitized)names.add(String(sanitized));}});return names;}export function _animationTrackTargetName(trackName){const name=String(trackName||\"\");const binding=THREE.PropertyBinding;try{const parsed=binding?.parseTrackName?.(name);if(parsed?.nodeName)return String(parsed.nodeName);}catch{}const match=name.match(/^(.*)\\.(position|quaternion|rotation|scale)(?:\\[.*\\])?$/);if(!match)return\"\";const target=match[1]||\"\";const boneMatch=target.match(/(?:^|\\.)bones\\[['\"]?([^'\"\\]]+)['\"]?\\]$/);return boneMatch?.[1]||target;}export function _animationTrackTargetsMissingNode(track,targetNames){const trackName=String(track?.name||\"\");if(!/\\.(position|quaternion|rotation|scale)(?:\\[.*\\])?$/.test(trackName)){return false;}const target=_animationTrackTargetName(trackName);if(!target||target===\".\")return false;if(targetNames.has(target))return false;const decoded=(()=>{try{return decodeURIComponent(target);}catch{return target;}})();if(decoded&&targetNames.has(decoded))return false;const tail=decoded.split(/[/.]/).filter(Boolean).pop();return!!tail&&!targetNames.has(tail);}export function _sanitizeAnimationClipsForObject(object,animations=[]){if(!object||!animations?.length)return animations||[];const targetNames=_collectAnimationTargetNames(object);return animations.map(clip=>{const tracks=clip?.tracks||[];if(!tracks.length)return clip;const kept=tracks.filter(track=>!_animationTrackTargetsMissingNode(track,targetNames));if(kept.length===tracks.length)return clip;if(!kept.length)return null;const next=new THREE.AnimationClip(clip.name,clip.duration,kept.map(track=>track.clone?.()||track));next.blendMode=clip.blendMode;return next;}).filter(Boolean);}/**\n * Compute bounding box from mesh geometries only (excludes Bone, Light, Helper objects).\n * For skinned meshes, uses geometry bounding box in world space to avoid bone-inflated bounds.\n */export function _computeMeshOnlyBoundingBox(object){object.updateWorldMatrix(true,true);const box=new THREE.Box3;let hasMesh=false;object.traverse(child=>{if((child.isMesh||child.isSkinnedMesh)&&child.visible){if(child.geometry){if(!child.geometry.boundingBox)child.geometry.computeBoundingBox();if(child.geometry.boundingBox&&!child.geometry.boundingBox.isEmpty()){const geomBox=child.geometry.boundingBox.clone();geomBox.applyMatrix4(child.matrixWorld);box.union(geomBox);hasMesh=true;}}}});if(!hasMesh){box.setFromObject(object);}return box;}// #endregion\n\nexport const __FramerMetadata__ = {\"exports\":{\"_hasSkinnedMesh\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_animationTrackTargetsMissingNode\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_animationTrackTargetName\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_computeMeshOnlyBoundingBox\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_sanitizeAnimationClipsForObject\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_collectAnimationTargetNames\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./object3DUtils.map","// @ts-nocheck\n// #region 10. MODEL LOADING API\nimport{THREE,MeshoptDecoder,GLTFLoader,DRACOLoader,SkeletonUtils,_loadFBXLoader,_loadJSZip}from\"https://framerusercontent.com/modules/YeYAFpMfJfcs2D9mfKFW/DDv12VyHhTY27qyXtQ6t/deps.js\";import{_tmpVec3A,_createAsyncTextureLoader,_modelCache,_zipBlobCache,_origMaterialBackups}from\"https://framerusercontent.com/modules/NDTJ5ADDpfKTGmrlCCF2/Sku50RC96WdXH0Q17gRv/state.js\";import{_hasSkinnedMesh,_sanitizeAnimationClipsForObject}from\"https://framerusercontent.com/modules/zmx71qwu2TbY9YO9I2f5/5N7CD3udL4rE1txQaU17/object3DUtils.js\";import{_clearAnimationOnceCompleteListener}from\"https://framerusercontent.com/modules/ZMoE0e8TTc5hP09MepLT/EF6CGI7iUmZM5FG6LLYY/animationUtils.js\";let _sharedDraco=null;let _sharedGLTF=null;let _sharedFBX=null;let _sharedTextureLoader=null;export function getSharedGLTFLoader(){if(!_sharedGLTF){_sharedDraco=new DRACOLoader;_sharedDraco.setDecoderPath(\"https://www.gstatic.com/draco/versioned/decoders/1.5.7/\");_sharedGLTF=new GLTFLoader;_sharedGLTF.setDRACOLoader(_sharedDraco);_sharedGLTF.setMeshoptDecoder(MeshoptDecoder);}return _sharedGLTF;}export async function getSharedFBXLoader(){if(!_sharedFBX){const FBXLoader=await _loadFBXLoader();if(!_sharedFBX)_sharedFBX=new FBXLoader;}return _sharedFBX;}export function getSharedTextureLoader(){if(!_sharedTextureLoader){_sharedTextureLoader=_createAsyncTextureLoader();}return _sharedTextureLoader;}/**\n * Load a 3D model from a ZIP archive URL.\n *\n * Flow:\n *  1. Fetch ZIP as ArrayBuffer (with progress callback for download phase)\n *  2. Extract all files using JSZip -> create blob URLs\n *  3. Detect main model file inside (priority: .glb > .gltf > .fbx)\n *  4. Create a custom THREE.LoadingManager that redirects resource requests to blob URLs\n *  5. Load via GLTFLoader or FBXLoader -> call onLoaded(object, animations)\n *  7. Cache extracted blob URLs for reuse\n */export async function _loadFromZip(zipUrl,onLoaded,onProgress,onError){try{let blobMap;let mainFile;let mainFormat;// ── Check ZIP blob cache ──\nconst cached=_zipBlobCache.get(zipUrl);if(cached){blobMap=cached.blobMap;mainFile=cached.mainFile;mainFormat=cached.mainFormat;}else{// ── Phase 1: Download ZIP ──\nconst response=await fetch(zipUrl);if(!response.ok)throw new Error(`Failed to fetch ZIP: ${response.status} ${response.statusText}`);const contentLength=parseInt(response.headers.get(\"content-length\")||\"0\",10);const reader=response.body?.getReader();if(!reader)throw new Error(\"ReadableStream not supported\");const chunks=[];let receivedLength=0;while(true){const{done,value}=await reader.read();if(done)break;chunks.push(value);receivedLength+=value.length;if(onProgress&&contentLength>0){// Download phase = 0% – 80% of total progress\nonProgress({loaded:receivedLength*.8,total:contentLength,lengthComputable:true});}}// Concatenate chunks into single ArrayBuffer\nconst zipBuffer=new Uint8Array(receivedLength);let offset=0;for(const chunk of chunks){zipBuffer.set(chunk,offset);offset+=chunk.length;}// ── Phase 2: Extract ZIP ──\nconst JSZip=await _loadJSZip();const zip=await JSZip.loadAsync(zipBuffer.buffer);// Find all files and create blob URLs\nblobMap={};const fileEntries=[];zip.forEach((relativePath,zipEntry)=>{if(!zipEntry.dir){fileEntries.push({path:relativePath,file:zipEntry});}});// Detect main model file (priority: .glb > .gltf > .fbx)\nconst MODEL_EXTENSIONS=[\".glb\",\".gltf\",\".fbx\"];let mainEntry=null;for(const ext of MODEL_EXTENSIONS){const found=fileEntries.find(e=>e.path.toLowerCase().endsWith(ext));if(found){mainEntry={path:found.path,ext:ext.slice(1)}// remove dot\n;break;}}if(!mainEntry){throw new Error(\"ZIP does not contain a supported 3D model file (.glb, .gltf, .fbx).\");}mainFile=mainEntry.path;mainFormat=mainEntry.ext;// Extract all files to blob URLs\nfor(let i=0;i<fileEntries.length;i++){const{path,file}=fileEntries[i];const ext=path.toLowerCase().split(\".\").pop()||\"\";// Determine MIME type for blob\nlet mimeType=\"application/octet-stream\";if(ext===\"gltf\"||ext===\"json\")mimeType=\"application/json\";else if(ext===\"glb\")mimeType=\"model/gltf-binary\";else if(ext===\"bin\")mimeType=\"application/octet-stream\";else if(ext===\"png\")mimeType=\"image/png\";else if(ext===\"jpg\"||ext===\"jpeg\")mimeType=\"image/jpeg\";else if(ext===\"webp\")mimeType=\"image/webp\";else if(ext===\"hdr\")mimeType=\"application/octet-stream\";else if(ext===\"fbx\")mimeType=\"application/octet-stream\";const blob=await file.async(\"blob\");const typedBlob=new Blob([blob],{type:mimeType});const blobUrl=URL.createObjectURL(typedBlob);// Map by full path (as it appears in the ZIP)\nblobMap[path]=blobUrl;// Map by filename only (for resolving relative refs)\nconst filename=path.split(\"/\").pop();blobMap[filename]=blobUrl;// Map by lowercase variants\nblobMap[path.toLowerCase()]=blobUrl;blobMap[filename.toLowerCase()]=blobUrl;if(onProgress&&contentLength>0){// Extraction phase = 80% – 95%\nconst extractPct=.8+i/fileEntries.length*.15;onProgress({loaded:extractPct*contentLength,total:contentLength,lengthComputable:true});}}// Cache the blob map for reuse\n_zipBlobCache.set(zipUrl,{blobMap,mainFile,mainFormat});}// ── Phase 3: Load model from blob URLs ──\nconst mainBlobUrl=blobMap[mainFile]||blobMap[mainFile.toLowerCase()];if(!mainBlobUrl){throw new Error(`Could not find blob URL for main model file: ${mainFile}`);}// Create a custom LoadingManager that redirects resource requests to blob URLs\nconst manager=new THREE.LoadingManager;manager.setURLModifier(url=>{// If it's already a blob URL we created, pass through\nif(url.startsWith(\"blob:\"))return url;const normalized=url.replace(/\\\\/g,\"/\");// Try direct match\nif(blobMap[normalized])return blobMap[normalized];// Try filename only (handles absolute paths from FBX exports, etc.)\nconst filename=normalized.split(\"/\").pop()||\"\";if(blobMap[filename])return blobMap[filename];// Try lowercase\nif(blobMap[normalized.toLowerCase()])return blobMap[normalized.toLowerCase()];if(blobMap[filename.toLowerCase()])return blobMap[filename.toLowerCase()];// Try decoding URI components\ntry{const decoded=decodeURIComponent(filename);if(blobMap[decoded])return blobMap[decoded];if(blobMap[decoded.toLowerCase()])return blobMap[decoded.toLowerCase()];}catch{}return url// fallback to original URL\n;});// Load model with custom manager for resource resolution\nif(mainFormat===\"fbx\"){const FBXLoader=await _loadFBXLoader();const fbxLoader=new FBXLoader(manager);fbxLoader.load(mainBlobUrl,obj=>onLoaded(obj,obj.animations||[]),undefined,err=>{if(onError)onError(err);});}else{const gltfLoader=new GLTFLoader(manager);const draco=new DRACOLoader;draco.setDecoderPath(\"https://www.gstatic.com/draco/versioned/decoders/1.5.7/\");gltfLoader.setDRACOLoader(draco);gltfLoader.load(mainBlobUrl,gltf=>onLoaded(gltf.scene,gltf.animations),undefined,err=>{if(onError)onError(err);});}}catch(err){console.error(\"[ZIP] Failed to load model from ZIP:\",err);if(onError)onError(err);}}export function disposeSubScene(st,ss){if(ss.group){st.scene.remove(ss.group);if(ss._ownsResources){_disposeModelFull(ss.group);}else{// Materials only — geometries shared with _modelCache\n_disposeMaterialsOnly(ss.group);}}ss._animationWarmupDone=false;if(ss.mixer){_clearAnimationOnceCompleteListener(ss,ss.mixer);ss.mixer.stopAllAction();}}export function _cleanupSkinnedScene(object){if(!_hasSkinnedMesh(object))return;const skinnedGeometries=new Set;object.traverse(child=>{if(child.isSkinnedMesh&&child.geometry){skinnedGeometries.add(child.geometry);}});object.traverse(child=>{if(!child.isMesh||child.isSkinnedMesh)return;// Hide regular Mesh that shares geometry with a SkinnedMesh (bind-pose duplicate)\nif(child.geometry&&skinnedGeometries.has(child.geometry)){child.visible=false;return;}// Hide Mesh parented under a Bone (custom bone shape / bone helper)\nlet p=child.parent;while(p){if(p.isBone){child.visible=false;return;}p=p.parent;}// Hide very small helper meshes (bone markers)\nif(child.geometry){if(!child.geometry.boundingBox)child.geometry.computeBoundingBox();const bb=child.geometry.boundingBox;if(bb){const sz=bb.getSize(_tmpVec3A);if(Math.max(sz.x,sz.y,sz.z)<.001){child.visible=false;return;}}}});}export function _cloneSceneWithMaterials(source){const clone=_hasSkinnedMesh(source)?SkeletonUtils.clone(source):source.clone(true);clone.traverse(child=>{if(child.isMesh&&child.material){if(Array.isArray(child.material)){child.material=child.material.map(m=>m.clone());}else{child.material=child.material.clone();}}});return clone;}export function _cloneCachedModel(cached){return{scene:_cloneSceneWithMaterials(cached.scene),animations:cached.animations.map(clip=>clip.clone())};}export const cloneCachedModel=_cloneCachedModel;export function _disposeMaterialsOnly(group){group.traverse(c=>{if(c.isMesh){// Dispose skeleton for SkinnedMesh (bone matrices texture)\nif(c.isSkinnedMesh&&c.skeleton){c.skeleton.dispose();}(Array.isArray(c.material)?c.material:[c.material]).forEach(m=>m.dispose?.());_origMaterialBackups.delete(c.uuid);}});}export function _disposeModelFull(group){if(!group)return;group.traverse(c=>{if(c.geometry){c.geometry.dispose();}if(c.material){const mats=Array.isArray(c.material)?c.material:[c.material];for(const m of mats){if(!m)continue;// Dispose all texture properties\nfor(const key in m){const val=m[key];if(val&&val.isTexture)val.dispose();}// Dispose uniforms if ShaderMaterial\nif(m.uniforms){for(const u in m.uniforms){const uv=m.uniforms[u].value;if(uv&&uv.isTexture)uv.dispose();}}m.dispose();}}if(c.isSkinnedMesh&&c.skeleton){c.skeleton.dispose();}if(c.isLight&&c.shadow?.map){c.shadow.map.dispose();}if(c.uuid)_origMaterialBackups.delete(c.uuid);});}export function _loadModelDirect(url,format,onLoaded,onProgress,onError){if(format===\"zip\"){_loadFromZip(url,(object,animations)=>{_cleanupSkinnedScene(object);const safeAnimations=_sanitizeAnimationClipsForObject(object,animations||[]);if(!_modelCache.has(url)){_modelCache.set(url,{scene:_cloneSceneWithMaterials(object),animations:safeAnimations.map(c=>c.clone())});}onLoaded(object,safeAnimations);},onProgress,onError);return;}if(format===\"fbx\"){getSharedFBXLoader().then(loader=>{loader.load(url,obj=>{const animations=obj.animations||[];_cleanupSkinnedScene(obj);const safeAnimations=_sanitizeAnimationClipsForObject(obj,animations);if(!_modelCache.has(url)){_modelCache.set(url,{scene:_cloneSceneWithMaterials(obj),animations:safeAnimations.map(c=>c.clone())});}onLoaded(obj,safeAnimations);},onProgress,onError);}).catch(err=>{if(onError)onError(err);});return;}getSharedGLTFLoader().load(url,g=>{_cleanupSkinnedScene(g.scene);const safeAnimations=_sanitizeAnimationClipsForObject(g.scene,g.animations||[]);if(!_modelCache.has(url)){_modelCache.set(url,{scene:_cloneSceneWithMaterials(g.scene),animations:safeAnimations.map(c=>c.clone())});}onLoaded(g.scene,safeAnimations);},onProgress,onError);}// #endregion\n\nexport const __FramerMetadata__ = {\"exports\":{\"_cleanupSkinnedScene\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"cloneCachedModel\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_cloneCachedModel\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getSharedFBXLoader\":{\"type\":\"function\",\"isAsync\":true,\"annotations\":{\"framerContractVersion\":\"1\"}},\"getSharedGLTFLoader\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"disposeSubScene\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_disposeMaterialsOnly\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_loadModelDirect\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_disposeModelFull\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_loadFromZip\":{\"type\":\"function\",\"isAsync\":true,\"annotations\":{\"framerContractVersion\":\"1\"}},\"getSharedTextureLoader\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_cloneSceneWithMaterials\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// @ts-nocheck\n// #region 11. MATERIAL SYSTEM\nimport{THREE}from\"https://framerusercontent.com/modules/YeYAFpMfJfcs2D9mfKFW/DDv12VyHhTY27qyXtQ6t/deps.js\";import{MATERIAL_PRESETS}from\"https://framerusercontent.com/modules/urxcwcToMwyEWH05dzo6/cUcLUwBj9Qei2vxq7YKV/constants.js\";import{_progressivePlaceholderColor,_origMaterialBackups}from\"https://framerusercontent.com/modules/NDTJ5ADDpfKTGmrlCCF2/Sku50RC96WdXH0Q17gRv/state.js\";import{NOISE_GLSL}from\"https://framerusercontent.com/modules/KDgXKUZDtOlVMTgk4xzC/l9KsabZZFC3I7R1x10GN/postprocessing.js\";import{parseColor}from\"https://framerusercontent.com/modules/vGvxKBAQuEl5qBVTPruS/STnvRXy146qx84LkzO8J/formatAndColor.js\";import{_getOptimizedAnisotropy}from\"https://framerusercontent.com/modules/OcrnvbBWJ00imtCNulvV/ECeJBxCrq22P47xccZti/renderMetrics.js\";import{getSharedTextureLoader}from\"https://framerusercontent.com/modules/jz5beOl0SxBa2FLaAvkX/GRqx0bNbnn5oQtMBqM55/modelLoading.js\";let _particleTexture=null;let _toonGradientCache=null;let _sketchHatchTexture=null;export const _progressiveOrigMaterials=new Map;export function getParticleTexture(){if(_particleTexture)return _particleTexture;const size=64;const canvas=document.createElement(\"canvas\");canvas.width=size;canvas.height=size;const ctx=canvas.getContext(\"2d\",{willReadFrequently:true});const gradient=ctx.createRadialGradient(size/2,size/2,0,size/2,size/2,size/2);gradient.addColorStop(0,\"rgba(255,255,255,1)\");gradient.addColorStop(.3,\"rgba(255,255,255,0.8)\");gradient.addColorStop(.7,\"rgba(255,255,255,0.3)\");gradient.addColorStop(1,\"rgba(255,255,255,0)\");ctx.fillStyle=gradient;ctx.fillRect(0,0,size,size);_particleTexture=new THREE.CanvasTexture(canvas);return _particleTexture;}export function createDissolveParticles(model,cfg){const maxParticles=cfg.dissolveParticleMaxCount||8e3;const initPositions=sampleModelPositions(model,maxParticles);const count=initPositions.length/3;const currentPos=new Float32Array(initPositions);const velocity=new Float32Array(count*3);const maxOffset=new Float32Array(count);const dist=new Float32Array(count);const angle=new Float32Array(count);for(let i=0;i<count;i++){maxOffset[i]=Math.random()*5.5+1.5;velocity[i*3]=Math.random()*.5+.5;velocity[i*3+1]=Math.random()*.5+.5;velocity[i*3+2]=Math.random()*.1;dist[i]=.001;angle[i]=Math.random()*Math.PI*2;}const geo=new THREE.BufferGeometry;geo.setAttribute(\"position\",new THREE.BufferAttribute(new Float32Array(initPositions),3));geo.setAttribute(\"aCurrentPos\",new THREE.BufferAttribute(currentPos,3));geo.setAttribute(\"aDist\",new THREE.BufferAttribute(dist,1));geo.setAttribute(\"aAngle\",new THREE.BufferAttribute(angle,1));const particleTex=getParticleTexture();const mat=new THREE.ShaderMaterial({transparent:true,blending:THREE.AdditiveBlending,depthWrite:false,uniforms:{uTexture:{value:particleTex},uPixelDensity:{value:typeof window!==\"undefined\"?window.devicePixelRatio:1},uProgress:{value:0},uEdge:{value:cfg.dissolveEdgeWidth||.8},uAmp:{value:cfg.dissolveAmplitude||16},uFreq:{value:cfg.dissolveNoiseScale||.25},uBaseSize:{value:cfg.dissolveParticleBaseSize||80},uColor:{value:parseColor(cfg.dissolveParticleColor||cfg.dissolveEmissiveColor||\"#4d9bff\")}},vertexShader:`\n${NOISE_GLSL}\n\nuniform float uPixelDensity;\nuniform float uBaseSize;\nuniform float uFreq;\nuniform float uAmp;\nuniform float uEdge;\nuniform float uProgress;\n\nvarying float vNoise;\nvarying float vAngle;\n\nattribute vec3 aCurrentPos;\nattribute float aDist;\nattribute float aAngle;\n\nvoid main() {\n    vec3 pos = position;\n    float noise = snoise(pos * uFreq) * uAmp;\n    vNoise = noise;\n    vAngle = aAngle;\n\n    if (vNoise > uProgress - 2.0 && vNoise < uProgress + uEdge + 2.0) {\n        pos = aCurrentPos;\n    }\n\n    vec4 modelPosition = modelMatrix * vec4(pos, 1.0);\n    vec4 viewPosition = viewMatrix * modelPosition;\n    vec4 projectedPosition = projectionMatrix * viewPosition;\n    gl_Position = projectedPosition;\n\n    float size = uBaseSize * uPixelDensity;\n    size = size / (aDist + 1.0);\n    gl_PointSize = size / -viewPosition.z;\n}\n`,fragmentShader:`\nuniform vec3 uColor;\nuniform float uEdge;\nuniform float uProgress;\nuniform sampler2D uTexture;\n\nvarying float vNoise;\nvarying float vAngle;\n\nvoid main() {\n    if (vNoise < uProgress) discard;\n    if (vNoise > uProgress + uEdge) discard;\n\n    vec2 coord = gl_PointCoord - 0.5;\n    coord = coord * mat2(cos(vAngle), sin(vAngle), -sin(vAngle), cos(vAngle));\n    coord = coord + 0.5;\n\n    vec4 tex = texture2D(uTexture, coord);\n    gl_FragColor = vec4(uColor * tex.rgb, tex.a);\n}\n`});const points=new THREE.Points(geo,mat);points.frustumCulled=false;return{points,geo,mat,state:{count,initPositions:new Float32Array(initPositions),currentPos,velocity,maxOffset,dist,angle,speed:cfg.dissolveParticleSpeed||.02,waveAmp:cfg.dissolveParticleWaveAmp||0,velFactor:{x:cfg.dissolveParticleVelX||2.5,y:cfg.dissolveParticleVelY||2}}};}export function updateDissolveParticles(pState){const{count,initPositions,currentPos,velocity,maxOffset,dist,angle,speed,waveAmp,velFactor}=pState;for(let i=0;i<count;i++){const x=i*3,y=i*3+1,z=i*3+2;let vx=velocity[x]*velFactor.x;let vy=velocity[y]*velFactor.y;let vz=velocity[z];if(waveAmp>0){const px=currentPos[x],py=currentPos[y];vx+=(Math.sin(py*2)*.8+Math.sin(py*5)*.2)*waveAmp;vy+=(Math.sin(px*2)*.6+Math.sin(px*1)*.9)*waveAmp;}vx*=Math.abs(speed);vy*=Math.abs(speed);vz*=Math.abs(speed);currentPos[x]+=vx;currentPos[y]+=vy;currentPos[z]+=vz;const dx=currentPos[x]-initPositions[x];const dy=currentPos[y]-initPositions[y];const dz=currentPos[z]-initPositions[z];const dSq=dx*dx+dy*dy+dz*dz;dist[i]=Math.sqrt(dSq);angle[i]+=.01;if(dSq>maxOffset[i]*maxOffset[i]){currentPos[x]=initPositions[x];currentPos[y]=initPositions[y];currentPos[z]=initPositions[z];}}}export function syncParticleAttributes(pGeo,pState){const cpAttr=pGeo.getAttribute(\"aCurrentPos\");if(cpAttr){cpAttr.array=pState.currentPos;cpAttr.needsUpdate=true;}const dAttr=pGeo.getAttribute(\"aDist\");if(dAttr){dAttr.array=pState.dist;dAttr.needsUpdate=true;}const aAttr=pGeo.getAttribute(\"aAngle\");if(aAttr){aAttr.array=pState.angle;aAttr.needsUpdate=true;}}export function disposeDissolveParticles(p){if(!p)return;p.geo?.dispose();p.mat?.dispose();if(p.points?.parent)p.points.parent.remove(p.points);}export function mapDissolveProgress(t,amp,edge){const range=(amp||16)+(edge||.8);return-range+t*2*range;}export function getToonGradientMap(steps){if(_toonGradientCache&&_toonGradientCache._steps===steps)return _toonGradientCache;const size=Math.max(steps,2);const data=new Uint8Array(size);for(let i=0;i<size;i++){data[i]=Math.round(i/(size-1)*255);}const tex=new THREE.DataTexture(data,size,1,THREE.RedFormat);tex.minFilter=THREE.NearestFilter;tex.magFilter=THREE.NearestFilter;tex.needsUpdate=true;tex._steps=steps;_toonGradientCache=tex;return tex;}export function getSketchHatchTexture(){if(_sketchHatchTexture)return _sketchHatchTexture;const size=256;const canvas=document.createElement(\"canvas\");canvas.width=size;canvas.height=size;const ctx=canvas.getContext(\"2d\",{willReadFrequently:false});if(!ctx)return null;ctx.fillStyle=\"#f3f3ef\";ctx.fillRect(0,0,size,size);ctx.strokeStyle=\"rgba(0,0,0,0.42)\";ctx.lineWidth=3;for(let x=-size;x<size*2;x+=12){ctx.beginPath();ctx.moveTo(x,size);ctx.lineTo(x+size,0);ctx.stroke();}const tex=new THREE.CanvasTexture(canvas);tex.wrapS=THREE.RepeatWrapping;tex.wrapT=THREE.RepeatWrapping;tex.repeat.set(2,2);tex.colorSpace=THREE.SRGBColorSpace;tex.needsUpdate=true;_sketchHatchTexture=tex;return tex;}export function _isMeshOwnedByBone(mesh){let p=mesh?.parent;while(p){if(p.isBone||p.type===\"Bone\")return true;p=p.parent;}return false;}export function _cloneAsGlassPhysical(old){if(old.isMeshPhysicalMaterial)return old.clone();const pm=new THREE.MeshPhysicalMaterial;const scalarKeys=[\"color\",\"emissive\",\"metalness\",\"roughness\",\"opacity\",\"alphaTest\",\"side\",\"transmission\",\"thickness\",\"ior\",\"transparent\",\"depthWrite\",\"attenuationColor\",\"attenuationDistance\",\"envMapIntensity\",\"emissiveIntensity\",\"clearcoat\",\"clearcoatRoughness\",\"specularIntensity\",\"specularColor\"];for(const k of scalarKeys){if(old[k]!==undefined)pm[k]=old[k]?.clone?old[k].clone():old[k];}const mapKeys=[\"map\",\"normalMap\",\"aoMap\",\"emissiveMap\",\"alphaMap\",\"transmissionMap\",\"thicknessMap\",\"roughnessMap\",\"metalnessMap\",\"clearcoatMap\",\"clearcoatRoughnessMap\",\"clearcoatNormalMap\",\"envMap\"];for(const k of mapKeys){if(old[k])pm[k]=old[k];}if(old.normalScale)pm.normalScale=old.normalScale.clone();return pm;}export function _stylizeGlassForToon(glassMat){// Cleaner, more stylized glass: lower roughness, boost env reflections\nglassMat.roughness=Math.min(glassMat.roughness,.15);glassMat.metalness=Math.max(glassMat.metalness,0);glassMat.envMapIntensity=Math.max(glassMat.envMapIntensity??1,.8);// Ensure transmission pipeline is correct (no alpha blending conflict)\nif(glassMat.transmission>0){glassMat.transparent=false;glassMat.depthWrite=true;glassMat.opacity=1;}glassMat.needsUpdate=true;}export function applyToonPreset(model,preset){if(!model)return;const gradMap=getToonGradientMap(preset.steps||4);model.traverse(child=>{if(!_isMaterialPresetTarget(child))return;const mats=Array.isArray(child.material)?child.material:[child.material];for(let i=0;i<mats.length;i++){const old=mats[i];// ── Glass: keep as MeshPhysicalMaterial with toon-style tweaks ──\nif(_isGlassMaterial(old)){const glassMat=_cloneAsGlassPhysical(old);_stylizeGlassForToon(glassMat);if(Array.isArray(child.material))child.material[i]=glassMat;else child.material=glassMat;continue;}// ── Standard opaque: convert to MeshToonMaterial ──\nconst toonMat=new THREE.MeshToonMaterial({color:old.color?old.color.clone():new THREE.Color(16777215),gradientMap:gradMap,side:old.side??THREE.FrontSide});// Preserve texture maps from original material\nif(old.map)toonMat.map=old.map;if(old.normalMap){toonMat.normalMap=old.normalMap;toonMat.normalScale=old.normalScale?.clone()??new THREE.Vector2(1,1);}if(old.aoMap){toonMat.aoMap=old.aoMap;toonMat.aoMapIntensity=old.aoMapIntensity??1;}if(old.emissive)toonMat.emissive=old.emissive.clone();if(old.emissiveMap)toonMat.emissiveMap=old.emissiveMap;if(old.emissiveIntensity!=null)toonMat.emissiveIntensity=old.emissiveIntensity;if(old.alphaMap)toonMat.alphaMap=old.alphaMap;if(old.transparent)toonMat.transparent=old.transparent;if(old.opacity!=null)toonMat.opacity=old.opacity;if(old.alphaTest)toonMat.alphaTest=old.alphaTest;toonMat.needsUpdate=true;if(Array.isArray(child.material))child.material[i]=toonMat;else child.material=toonMat;}});}export function applySketchPreset(model,preset){if(!model)return;const gradMap=getToonGradientMap(preset.steps||3);const hatchMap=getSketchHatchTexture();const baseColor=parseColor(preset.color||\"#f4f2ec\");const outlineColor=parseColor(preset.outlineColor||\"#050505\");const thickness=preset.outlineThickness??.045;const outlineMeshesToAdd=[];removeOutlineMeshes(model);model.traverse(child=>{if(!_isMaterialPresetTarget(child))return;const mats=Array.isArray(child.material)?child.material:[child.material];for(let i=0;i<mats.length;i++){const old=mats[i];if(_isGlassMaterial(old)){const glassMat=_cloneAsGlassPhysical(old);glassMat.color=baseColor.clone();_stylizeGlassForToon(glassMat);if(Array.isArray(child.material))child.material[i]=glassMat;else child.material=glassMat;continue;}const sketchMat=new THREE.MeshToonMaterial({color:baseColor,gradientMap:gradMap,map:hatchMap,side:old.side??THREE.FrontSide});if(old.normalMap){sketchMat.normalMap=old.normalMap;sketchMat.normalScale=old.normalScale?.clone()??new THREE.Vector2(1,1);}if(old.aoMap){sketchMat.aoMap=old.aoMap;sketchMat.aoMapIntensity=old.aoMapIntensity??1;}sketchMat.needsUpdate=true;if(Array.isArray(child.material))child.material[i]=sketchMat;else child.material=sketchMat;}const outlineMat=new THREE.MeshBasicMaterial({color:outlineColor,side:THREE.BackSide});const outlineMesh=_createMaterialPresetOutlineMesh(child,outlineMat,thickness);if(outlineMesh){outlineMeshesToAdd.push({parent:child.parent,mesh:outlineMesh});}else{outlineMat.dispose();}});for(const entry of outlineMeshesToAdd){if(entry.parent)entry.parent.add(entry.mesh);}}export function applyOutlinePreset(model,preset){if(!model)return;const baseColor=parseColor(preset.color||\"#e8e0d8\");const emissiveColor=parseColor(preset.emissiveColor||\"#ffffff\");const emissiveIntensity=preset.emissiveIntensity??0;const outlineColor=parseColor(preset.outlineColor||\"#2a2a2a\");const thickness=preset.outlineThickness??.06;// First, remove any existing outline meshes from previous applications\nremoveOutlineMeshes(model);// Apply flat/toon base material (glass preserved) + collect outline targets\nconst outlineMeshesToAdd=[];model.traverse(child=>{if(!_isMaterialPresetTarget(child))return;const mats=Array.isArray(child.material)?child.material:[child.material];for(let i=0;i<mats.length;i++){const old=mats[i];if(_isGlassMaterial(old)){// ── Glass: preserve physical material with stylized glass look ──\nconst glassMat=_cloneAsGlassPhysical(old);_stylizeGlassForToon(glassMat);// Slightly more reflective for anime style\nglassMat.roughness=Math.min(glassMat.roughness,.1);if(Array.isArray(child.material))child.material[i]=glassMat;else child.material=glassMat;}else{// ── Standard opaque: flat toon replacement ──\nconst flatMat=new THREE.MeshToonMaterial({color:baseColor,emissive:emissiveColor,emissiveIntensity,gradientMap:getToonGradientMap(3),side:THREE.FrontSide});if(old.map)flatMat.map=old.map;flatMat.needsUpdate=true;if(Array.isArray(child.material))child.material[i]=flatMat;else child.material=flatMat;}}// Create outline mesh (inverted hull) — always, including around glass meshes\nif(child.geometry){const outlineMat=new THREE.MeshBasicMaterial({color:outlineColor,side:THREE.BackSide});const outlineMesh=_createMaterialPresetOutlineMesh(child,outlineMat,thickness);if(outlineMesh){outlineMeshesToAdd.push({parent:child.parent,mesh:outlineMesh});}else{outlineMat.dispose();}}});// Add outline meshes after traversal to avoid modifying tree during traverse\nfor(const entry of outlineMeshesToAdd){if(entry.parent)entry.parent.add(entry.mesh);}}export function removeOutlineMeshes(model){if(!model)return;const toRemove=[];model.traverse(child=>{if(child.__isOutlineMesh)toRemove.push(child);});for(const m of toRemove){if(m.parent)m.parent.remove(m);if(m.__hasClonedGeometry)m.geometry?.dispose();m.geometry=null// don't dispose — shared with original\n;m.material?.dispose();}}export function isSpecialPreset(presetKey){const p=MATERIAL_PRESETS[presetKey];return p&&p._type;}export function _storeAndReplacePlaceholder(model){_progressiveOrigMaterials.clear();const allTextures=[];model.traverse(child=>{if(!child.isMesh)return;const origMats=Array.isArray(child.material)?child.material:[child.material];const textures=[];// Collect all textures from original materials\nconst texKeys=[\"map\",\"normalMap\",\"roughnessMap\",\"metalnessMap\",\"aoMap\",\"emissiveMap\",\"bumpMap\",\"displacementMap\",\"alphaMap\",\"lightMap\",\"envMap\",\"clearcoatMap\",\"clearcoatNormalMap\",\"clearcoatRoughnessMap\",\"sheenColorMap\",\"sheenRoughnessMap\",\"transmissionMap\",\"thicknessMap\",\"iridescenceMap\",\"iridescenceThicknessMap\",\"specularIntensityMap\",\"specularColorMap\"];for(const mat of origMats){for(const key of texKeys){if(mat[key]&&mat[key].isTexture){textures.push(mat[key]);}}}_progressiveOrigMaterials.set(child.uuid,{original:Array.isArray(child.material)?[...child.material]:child.material,textures});allTextures.push(...textures);// Replace with placeholder\nconst placeholder=_createPlaceholderMaterial();child.material=placeholder;});// Deduplicate textures\nreturn[...new Set(allTextures)];}export async function _preloadTexturesProgressive(renderer,textures,onProgress){if(!textures.length){onProgress?.(1);return;}let loaded=0;const total=textures.length;for(const tex of textures){try{// Force texture upload to GPU\nrenderer.initTexture(tex);// If image not yet decoded, wait for it\nif(tex.image&&tex.image instanceof HTMLImageElement&&!tex.image.complete){await new Promise(resolve=>{tex.image.onload=resolve;tex.image.onerror=resolve;// Fallback timeout\nsetTimeout(resolve,5e3);});renderer.initTexture(tex);}}catch(e){// Silently continue — texture may already be uploaded\n}loaded++;onProgress?.(loaded/total);}}export function clearFadeCache(model){if(!model)return;model.traverse(child=>{if(!child.isMesh)return;if(child.__isOutlineMesh)return;// Skip outline meshes\nconst mats=Array.isArray(child.material)?child.material:[child.material];mats.forEach(mat=>{if(!mat)return;// Restore to full brightness before clearing cache\nif(mat._fadeOrigColor){mat.color.copy(mat._fadeOrigColor);}if(mat._fadeOrigEmissive&&mat.emissive){mat.emissive.copy(mat._fadeOrigEmissive);}if(mat._fadeOrigEnvMapIntensity!==undefined){mat.envMapIntensity=mat._fadeOrigEnvMapIntensity;}// Now safe to delete cache\ndelete mat._fadeOrigColor;delete mat._fadeOrigEmissive;delete mat._fadeOrigEnvMapIntensity;});});}export function createDissolveMaterial(originalMaterial,dissolveConfig){const{progress,noiseScale,edgeWidth,emissiveColor,emissiveIntensity,amplitude}=dissolveConfig;const mat=originalMaterial.clone();// Store dissolve properties (readable before shader compiles)\nmat.userData.dissolveProgress=progress;mat.userData.noiseScale=noiseScale// frequency\n;mat.userData.amplitude=amplitude??16// noise multiplier\n;mat.userData.edgeWidth=edgeWidth;mat.userData.emissiveColor=parseColor(emissiveColor);mat.userData.emissiveIntensity=emissiveIntensity;mat.onBeforeCompile=shader=>{shader.uniforms.uProgress={value:mat.userData.dissolveProgress};shader.uniforms.uFreq={value:mat.userData.noiseScale};shader.uniforms.uAmp={value:mat.userData.amplitude};shader.uniforms.uEdge={value:mat.userData.edgeWidth};shader.uniforms.uEdgeColor={value:mat.userData.emissiveColor};shader.uniforms.uEdgeIntensity={value:mat.userData.emissiveIntensity};mat.userData.shaderUniforms=shader.uniforms;// ── Vertex: pass object-space position to fragment ──\nshader.vertexShader=shader.vertexShader.replace(\"#include <common>\",`#include <common>\nvarying vec3 vPos;`);shader.vertexShader=shader.vertexShader.replace(\"#include <begin_vertex>\",`#include <begin_vertex>\nvPos = position;`);// ── Fragment: inject noise, dissolve discard, edge glow ──\nshader.fragmentShader=shader.fragmentShader.replace(\"#include <common>\",`#include <common>\nvarying vec3 vPos;\n\nuniform float uProgress;\nuniform float uFreq;\nuniform float uAmp;\nuniform float uEdge;\nuniform vec3 uEdgeColor;\nuniform float uEdgeIntensity;\n\n${NOISE_GLSL}\n`);// Dissolve discard + edge coloring (after dithering, overwrite gl_FragColor)\nshader.fragmentShader=shader.fragmentShader.replace(\"#include <dithering_fragment>\",`#include <dithering_fragment>\n\n    float noise = snoise(vPos * uFreq) * uAmp;\n    if (noise < uProgress) discard;\n\n    float edgeEnd = uProgress + uEdge;\n    if (noise > uProgress && noise < edgeEnd) {\n        float edgeMix = 1.0 - smoothstep(uProgress, edgeEnd, noise);\n        vec3 glow = uEdgeColor * uEdgeIntensity * edgeMix;\n        gl_FragColor = vec4(gl_FragColor.rgb + glow, gl_FragColor.a);\n    }\n`);};mat.needsUpdate=true;return mat;}export function sampleModelPositions(model,maxCount){model.updateMatrixWorld(true)// Ensure matrices are current\n;const positions=[];model.traverse(child=>{if(!child.isMesh||child.__isOutlineMesh)return;const posAttr=child.geometry?.getAttribute(\"position\");if(!posAttr)return;const worldMat=child.matrixWorld.clone();const modelInverse=model.matrixWorld.clone().invert();const localMat=modelInverse.multiply(worldMat);const v=new THREE.Vector3;for(let i=0;i<posAttr.count;i++){v.set(posAttr.getX(i),posAttr.getY(i),posAttr.getZ(i));v.applyMatrix4(localMat);positions.push(v.x,v.y,v.z);}});const totalVerts=positions.length/3;if(totalVerts<=maxCount)return new Float32Array(positions);const stride=Math.ceil(totalVerts/maxCount);const sampled=[];for(let i=0;i<totalVerts;i+=stride){sampled.push(positions[i*3],positions[i*3+1],positions[i*3+2]);}return new Float32Array(sampled);}export function _startDissolveInForModel(st,cfg){if(!st?.model)return false;st.model.visible=true;st.dissolveActive=true;st.dissolveDirection=-1;st.dissolveProgress=1;st._dissolvePendingIn=false;st.model.traverse(child=>{if(!child.isMesh)return;st.dissolveOriginalMaterials.set(child.uuid,child.material);const dissolveMat=createDissolveMaterial(child.material,{progress:mapDissolveProgress(1,cfg.dissolveAmplitude,cfg.dissolveEdgeWidth),noiseScale:cfg.dissolveNoiseScale,amplitude:cfg.dissolveAmplitude,edgeWidth:cfg.dissolveEdgeWidth,emissiveColor:cfg.dissolveEmissiveColor,emissiveIntensity:cfg.dissolveEmissiveIntensity});st.dissolveMaterials.set(child.uuid,dissolveMat);child.material=dissolveMat;});if(cfg.dissolveParticlesEnabled){disposeDissolveParticles(st.dissolveParticles);st.dissolveParticles=createDissolveParticles(st.model,cfg);st.dissolveParticles.points.position.copy(st.model.position);st.dissolveParticles.points.rotation.copy(st.model.rotation);st.dissolveParticles.points.scale.copy(st.model.scale);st.scene.add(st.dissolveParticles.points);st.dissolveParticles.mat.uniforms.uProgress.value=mapDissolveProgress(1,cfg.dissolveAmplitude,cfg.dissolveEdgeWidth);}return true;}export function _isMaterialPresetTarget(child){if(!child?.isMesh)return false;if(child.__isOutlineMesh)return false;if(child.visible===false)return false;if(_isMeshOwnedByBone(child))return false;if(!child.geometry)return false;const posAttr=child.geometry.getAttribute?.(\"position\");return!posAttr||posAttr.count>3;}export function _createMaterialPresetOutlineMesh(child,outlineMat,thickness){const outlineGeo=child.geometry.clone();if(!outlineGeo.attributes.normal){outlineGeo.computeVertexNormals();}const posAttr=outlineGeo.attributes.position;const normAttr=outlineGeo.attributes.normal;if(posAttr&&normAttr){outlineGeo.computeBoundingSphere();const radius=outlineGeo.boundingSphere?outlineGeo.boundingSphere.radius:1;const offset=thickness*radius;for(let i=0;i<posAttr.count;i++){let x=posAttr.getX(i);let y=posAttr.getY(i);let z=posAttr.getZ(i);x+=normAttr.getX(i)*offset;y+=normAttr.getY(i)*offset;z+=normAttr.getZ(i)*offset;posAttr.setXYZ(i,x,y,z);}posAttr.needsUpdate=true;}let outlineMesh;if(child.isSkinnedMesh){outlineMesh=new THREE.SkinnedMesh(outlineGeo,outlineMat);outlineMesh.bind(child.skeleton,child.bindMatrix);}else{outlineMesh=new THREE.Mesh(outlineGeo,outlineMat);}outlineMesh.__isOutlineMesh=true;outlineMesh.__hasClonedGeometry=true;outlineMesh.castShadow=false;outlineMesh.receiveShadow=false;outlineMesh.frustumCulled=child.frustumCulled;outlineMesh.scale.copy(child.scale);outlineMesh.position.copy(child.position);outlineMesh.rotation.copy(child.rotation);outlineMesh.quaternion.copy(child.quaternion);if(child.morphTargetInfluences){outlineMesh.morphTargetInfluences=child.morphTargetInfluences;outlineMesh.morphTargetDictionary=child.morphTargetDictionary;}return outlineMesh;}export function _isGlassMaterial(mat){return mat.transmission&&mat.transmission>0||!!mat.transmissionMap;}export function loadImageAsSubScene(url,renderer,onLoaded,onError){getSharedTextureLoader().load(url,texture=>{texture.colorSpace=THREE.SRGBColorSpace;texture.needsUpdate=true;texture.anisotropy=_getOptimizedAnisotropy(renderer);const image=texture.image||{};const width=Math.max(1,image.width||1);const height=Math.max(1,image.height||1);const aspect=width/height;const planeWidth=aspect>=1?aspect:1;const planeHeight=aspect>=1?1:1/aspect;const geometry=new THREE.PlaneGeometry(planeWidth,planeHeight);const material=new THREE.MeshStandardMaterial({map:texture,transparent:true,alphaTest:.001,side:THREE.DoubleSide,roughness:1,metalness:0});const mesh=new THREE.Mesh(geometry,material);mesh.name=\"ImagePlane\";mesh.castShadow=false;mesh.receiveShadow=false;const group=new THREE.Group;group.add(mesh);onLoaded(group,[]);},undefined,onError);}export function _backupMaterial(mesh){if(_origMaterialBackups.has(mesh.uuid))return;const mats=Array.isArray(mesh.material)?mesh.material:[mesh.material];const clones=mats.map(m=>m.clone());_origMaterialBackups.set(mesh.uuid,clones);// FIX: Immediately assign the cloned materials to the mesh.\n// SkeletonUtils.clone() shares materials by default. This breaks the reference\n// so `applyMaterialOverride` only mutates THIS specific slot's material instance,\n// avoiding constant uniform uploads when slots share the same model.\nmesh.material=clones.length===1?clones[0]:clones;}export function _restoreMaterial(mesh){const clones=_origMaterialBackups.get(mesh.uuid);if(!clones)return;// Restore entire material objects (re-clone to avoid reference issues)\nconst restored=clones.map(m=>m.clone());mesh.material=restored.length===1?restored[0]:restored;}export function _createPlaceholderMaterial(){return new THREE.MeshStandardMaterial({color:_progressivePlaceholderColor,metalness:.1,roughness:.7,envMapIntensity:.5});}export function _restoreProgressiveMaterials(model){model.traverse(child=>{if(!child.isMesh)return;const stored=_progressiveOrigMaterials.get(child.uuid);if(!stored)return;// Dispose placeholder\nconst current=Array.isArray(child.material)?child.material:[child.material];for(const m of current){if(m!==stored.original&&!Array.isArray(stored.original))m.dispose?.();}// Restore original\nchild.material=stored.original;});_progressiveOrigMaterials.clear();}export function setModelFade(model,factor){if(!model)return;model.traverse(child=>{if(!child.isMesh)return;// Skip outline meshes — they use BackSide rendering;\n// darkening them separately would look wrong\nif(child.__isOutlineMesh)return;const mats=Array.isArray(child.material)?child.material:[child.material];mats.forEach(mat=>{if(!mat)return;// Cache original values on first call per material\nif(mat._fadeOrigColor===undefined){mat._fadeOrigColor=mat.color?mat.color.clone():new THREE.Color(1,1,1);mat._fadeOrigEmissive=mat.emissive?mat.emissive.clone():null;mat._fadeOrigEnvMapIntensity=mat.envMapIntensity??1;}// Darken color & emissive by factor (0 = fully black, 1 = original)\nmat.color.copy(mat._fadeOrigColor).multiplyScalar(factor);if(mat._fadeOrigEmissive&&mat.emissive){mat.emissive.copy(mat._fadeOrigEmissive).multiplyScalar(factor);}mat.envMapIntensity=mat._fadeOrigEnvMapIntensity*factor;// Cleanup cached originals when fully restored\nif(factor>=1){mat.color.copy(mat._fadeOrigColor);if(mat._fadeOrigEmissive&&mat.emissive){mat.emissive.copy(mat._fadeOrigEmissive);}mat.envMapIntensity=mat._fadeOrigEnvMapIntensity;delete mat._fadeOrigColor;delete mat._fadeOrigEmissive;delete mat._fadeOrigEnvMapIntensity;}});});}export function applyMaterialOverride(model,cfg){if(!model)return;let preset=cfg.materialPreset!==\"none\"?MATERIAL_PRESETS[cfg.materialPreset]:null;if(preset&&cfg.materialPreset===\"animeLine\"){preset={...preset,outlineThickness:cfg.animeLineThickness??.06,outlineColor:cfg.animeLineColor??\"#050505\",emissiveColor:cfg.animeLineEmissiveColor??\"#ffffff\",emissiveIntensity:cfg.animeLineEmissiveIntensity??.08};}else if(preset&&cfg.materialPreset===\"sketchStyle\"){preset={...preset,color:cfg.sketchBaseColor??\"#f4f2ec\",outlineThickness:cfg.sketchLineThickness??.045,outlineColor:cfg.sketchLineColor??\"#050505\",steps:cfg.sketchSteps??3};}// Backup original materials BEFORE any override (anime or PBR)\nconst useOverride=cfg.overrideMaterial||preset;if(useOverride){model.traverse(child=>{if(child.isMesh)_backupMaterial(child);});}// ── Special presets (toon / outline) — handled separately ──\nif(preset&&preset._type){// Clean up outline meshes if switching away from outline\nif(preset._type!==\"outline\")removeOutlineMeshes(model);if(preset._type===\"toon\"){applyToonPreset(model,preset);return;}if(preset._type===\"sketch\"){applySketchPreset(model,preset);return;}if(preset._type===\"outline\"){applyOutlinePreset(model,preset);return;}}// When switching FROM a special preset to normal/none, clean up outline meshes\nremoveOutlineMeshes(model);if(!useOverride){// Restore original materials when no override is active\nmodel.traverse(child=>{if(!child.isMesh)return;_restoreMaterial(child);});return;}model.traverse(child=>{if(!child.isMesh)return;const mats=Array.isArray(child.material)?child.material:[child.material];for(let i=0;i<mats.length;i++){let mat=mats[i];// Convert to MeshPhysicalMaterial — preserve ALL texture maps & properties\nif(!mat.isMeshPhysicalMaterial){const oldMat=mat;mat=new THREE.MeshPhysicalMaterial;// ── Copy ALL PBR texture maps ──\nconst mapKeys=[\"map\",\"normalMap\",\"aoMap\",\"roughnessMap\",\"metalnessMap\",\"emissiveMap\",\"bumpMap\",\"displacementMap\",\"alphaMap\",\"lightMap\",\"envMap\",\"clearcoatMap\",\"clearcoatRoughnessMap\",\"clearcoatNormalMap\",\"transmissionMap\",\"thicknessMap\",\"sheenColorMap\",\"sheenRoughnessMap\",\"iridescenceMap\",\"iridescenceThicknessMap\",\"specularIntensityMap\",\"specularColorMap\"];for(const k of mapKeys){if(oldMat[k])mat[k]=oldMat[k];}// ── Copy ALL scalar/vector properties ──\nconst scalarKeys=[\"color\",\"emissive\",\"metalness\",\"roughness\",\"opacity\",\"alphaTest\",\"transparent\",\"side\",\"flatShading\",\"wireframe\",\"vertexColors\",\"normalScale\",\"bumpScale\",\"displacementScale\",\"displacementBias\",\"aoMapIntensity\",\"lightMapIntensity\",\"envMapIntensity\",\"emissiveIntensity\",\"reflectivity\",// Glass / Physical properties — preserve originals before override\n\"transmission\",\"thickness\",\"ior\",\"clearcoat\",\"clearcoatRoughness\",\"iridescence\",\"iridescenceIOR\",\"sheen\",\"sheenRoughness\",\"sheenColor\",\"specularIntensity\",\"specularColor\",\"attenuationColor\",\"attenuationDistance\",\"depthWrite\"];for(const k of scalarKeys){if(oldMat[k]!==undefined){mat[k]=oldMat[k]?.clone?oldMat[k].clone():oldMat[k];}}if(Array.isArray(child.material))child.material[i]=mat;else child.material=mat;}// ── Apply overrides ──\n// Three.js: final pixel value = textureMap × scalarValue\n// e.g. roughness=1.0 + roughnessMap → use map as-is\n// roughness=0.5 + roughnessMap → halve all map values\nconst p=preset||{};const isManual=cfg.overrideMaterial;mat.metalness=isManual?cfg.metalness:p.metalness??mat.metalness;mat.roughness=isManual?cfg.roughness:p.roughness??mat.roughness;mat.clearcoat=isManual?cfg.clearcoat:p.clearcoat??mat.clearcoat??0;mat.clearcoatRoughness=isManual?cfg.clearcoatRoughness:p.clearcoatRoughness??mat.clearcoatRoughness??0;const trans=isManual?cfg.transmission:p.transmission??0;mat.transmission=trans;mat.thickness=isManual?cfg.thickness:p.thickness??0;mat.ior=isManual?cfg.ior:p.ior??1.5;if(trans>0){// CRITICAL: transmission uses its own render pipeline (transmission buffer).\n// Setting transparent=true enables old-school alpha blending which CONFLICTS\n// with the transmission buffer → glass renders black/incorrect.\n// Three.js docs: \"When using transmission, transparent should be false\"\nmat.transparent=false;mat.depthWrite=true;mat.opacity=1;}else{// Non-transmissive: apply opacity override (alpha blending)\nconst op=isManual?cfg.opacity:p.opacity??mat.opacity??1;mat.opacity=op;if(op<1){mat.transparent=true;mat.depthWrite=false;}}mat.iridescence=isManual?cfg.iridescence:p.iridescence??0;mat.iridescenceIOR=isManual?cfg.iridescenceIOR:p.iridescenceIOR??1.3;const sheenVal=isManual?cfg.sheen:p.sheen??0;mat.sheen=sheenVal;mat.sheenRoughness=isManual?cfg.sheenRoughness:p.sheenRoughness??.3;if(sheenVal>0)mat.sheenColor=parseColor(isManual?cfg.sheenColor:p.sheenColor??\"#ffffff\");mat.envMapIntensity=isManual?cfg.envMapIntensity:p.envMapIntensity??1;// Color: only override if preset has explicit color\nif(preset&&p.color)mat.color=parseColor(p.color);const emInt=isManual?cfg.emissiveIntensity:p.emissiveIntensity??0;mat.emissiveIntensity=emInt;if(emInt>0)mat.emissive=parseColor(isManual?cfg.emissiveColor:p.emissiveColor??\"#000000\");mat.reflectivity=isManual?cfg.reflectivity:p.reflectivity??.5;// Wireframe mode\nmat.wireframe=isManual?cfg.wireframe??false:p.wireframe??false;mat.needsUpdate=true;}});}// #endregion\n\nexport const __FramerMetadata__ = {\"exports\":{\"_restoreMaterial\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"loadImageAsSubScene\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"removeOutlineMeshes\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"updateDissolveParticles\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_createPlaceholderMaterial\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"applyOutlinePreset\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_restoreProgressiveMaterials\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"syncParticleAttributes\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_progressiveOrigMaterials\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_preloadTexturesProgressive\":{\"type\":\"function\",\"isAsync\":true,\"annotations\":{\"framerContractVersion\":\"1\"}},\"_isMeshOwnedByBone\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"disposeDissolveParticles\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"sampleModelPositions\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_startDissolveInForModel\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_cloneAsGlassPhysical\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"setModelFade\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getParticleTexture\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"createDissolveMaterial\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getSketchHatchTexture\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_isMaterialPresetTarget\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"clearFadeCache\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getToonGradientMap\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isSpecialPreset\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"applyMaterialOverride\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"applyToonPreset\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_createMaterialPresetOutlineMesh\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_backupMaterial\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"applySketchPreset\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"mapDissolveProgress\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"createDissolveParticles\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_stylizeGlassForToon\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_isGlassMaterial\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_storeAndReplacePlaceholder\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// @ts-nocheck\n// #region 13. LIGHTING & ENVIRONMENT\nimport{THREE}from\"https://framerusercontent.com/modules/YeYAFpMfJfcs2D9mfKFW/DDv12VyHhTY27qyXtQ6t/deps.js\";import{parseColor}from\"https://framerusercontent.com/modules/vGvxKBAQuEl5qBVTPruS/STnvRXy146qx84LkzO8J/formatAndColor.js\";export function applyLightingChanges(st,cfg){const needsShadowMap=cfg.enableShadows||cfg.extraLights?.some(el=>el?.enabled&&el?.castShadow);st._renderer.shadowMap.enabled=!!needsShadowMap;st.ambientLight.intensity=cfg.ambientLightIntensity;st.dirLight.intensity=cfg.directionalLightIntensity;st.cachedDirColor=parseColor(cfg.directionalLightColor);st.dirLight.color=st.cachedDirColor;st.dirLight.position.set(cfg.dirLightPosX??5,cfg.dirLightPosY??10,cfg.dirLightPosZ??7);st.dirLight.castShadow=cfg.enableShadows;// Shadow map size — only recreate if changed\nconst smSize=cfg.shadowMapSize??1024;if(st.dirLight.shadow.mapSize.x!==smSize){st.dirLight.shadow.mapSize.set(smSize,smSize);if(st.dirLight.shadow.map){st.dirLight.shadow.map.dispose();st.dirLight.shadow.map=null// forces Three.js to recreate\n;}}st.dirLight.shadow.bias=cfg.shadowBias??-1e-4;st.dirLight.shadow.normalBias=cfg.shadowNormalBias??.02;st.ground.visible=cfg.enableShadows;// ── Extra Lights (Point / Spot) ──\n_syncExtraLights(st,cfg);}export function _syncExtraLights(st,cfg){const scene=st.scene;const lights=st.extraLightObjects;const configs=cfg.extraLights??[];// Remove excess lights\nwhile(lights.length>configs.length){const light=lights.pop();scene.remove(light);if(light.target&&light.isSpotLight)scene.remove(light.target);if(light.shadow?.map)light.shadow.map.dispose();light.dispose();}for(let i=0;i<configs.length;i++){const lc=configs[i];if(!lc)continue;const type=lc.lightType??\"point\";const enabled=lc.enabled??true;const color=parseColor(lc.color??\"#ffffff\");const intensity=lc.intensity??1;const posX=lc.posX??0;const posY=lc.posY??3;const posZ=lc.posZ??0;const distance=lc.distance??0;const decay=lc.decay??2;const castShadow=lc.castShadow??false;let light=lights[i];// If type changed, remove old and create new\nconst needsRecreate=light&&(type===\"point\"&&!light.isPointLight||type===\"spot\"&&!light.isSpotLight);if(needsRecreate){scene.remove(light);if(light.target&&light.isSpotLight)scene.remove(light.target);if(light.shadow?.map)light.shadow.map.dispose();light.dispose();light=null;lights[i]=null;}if(!light){// Create new light\nif(type===\"spot\"){light=new THREE.SpotLight(color,intensity);light.angle=(lc.angle??30)*(Math.PI/180);light.penumbra=lc.penumbra??.5;scene.add(light.target);}else{light=new THREE.PointLight(color,intensity,distance,decay);}light.shadow.mapSize.set(1024,1024);light.shadow.bias=-1e-4;light.shadow.normalBias=.02;scene.add(light);lights[i]=light;}// Update properties\nlight.visible=enabled;light.color.copy(color);light.intensity=intensity;light.position.set(posX,posY,posZ);light.castShadow=castShadow&&enabled;if(light.isPointLight){light.distance=distance;light.decay=decay;}if(light.isSpotLight){light.distance=distance;light.decay=decay;light.angle=(lc.angle??30)*(Math.PI/180);light.penumbra=lc.penumbra??.5;const tx=lc.targetX??0;const ty=lc.targetY??0;const tz=lc.targetZ??0;light.target.position.set(tx,ty,tz);}}}// #endregion\n\nexport const __FramerMetadata__ = {\"exports\":{\"_syncExtraLights\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"applyLightingChanges\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// @ts-nocheck\n// #region 14. ENVIRONMENT UTILS\nimport{THREE,_loadHDRLoader}from\"https://framerusercontent.com/modules/YeYAFpMfJfcs2D9mfKFW/DDv12VyHhTY27qyXtQ6t/deps.js\";import{ENV_PRESETS,HDRI_PRESETS}from\"https://framerusercontent.com/modules/urxcwcToMwyEWH05dzo6/cUcLUwBj9Qei2vxq7YKV/constants.js\";import{hdriCache,hdriInFlight,proceduralEnvCache}from\"https://framerusercontent.com/modules/NDTJ5ADDpfKTGmrlCCF2/Sku50RC96WdXH0Q17gRv/state.js\";import{parseColor}from\"https://framerusercontent.com/modules/vGvxKBAQuEl5qBVTPruS/STnvRXy146qx84LkzO8J/formatAndColor.js\";export function _markSharedHDRI(texture,url){if(!texture)return texture;texture.userData=texture.userData||{};texture.userData.__sharedHDRIUrl=url;return texture;}export function _isSharedHDRI(texture){return!!texture?.userData?.__sharedHDRIUrl;}export function loadHDRI(renderer,url,onDone){if(hdriCache.has(url)){const entry=hdriCache.get(url);entry.lastUsed=performance.now();onDone(entry.texture);return;}if(hdriInFlight.has(url)){hdriInFlight.get(url).push(onDone);return;}hdriInFlight.set(url,[onDone]);// OPTIMIZATION (Issue 3): Bypass synchronous PMREMGenerator.\n// Three.js >= r163 automatically processes equirectangular maps for scene.environment internally without freezing.\n_loadHDRLoader().then(HDRLoader=>{new HDRLoader().load(url,texture=>{texture.mapping=THREE.EquirectangularReflectionMapping;const envMap=_markSharedHDRI(texture,url);hdriCache.set(url,{texture:envMap,refs:0,lastUsed:performance.now()});const callbacks=hdriInFlight.get(url)||[];hdriInFlight.delete(url);callbacks.forEach(cb=>cb(envMap));},undefined,err=>{console.warn(\"HDRI load failed:\",url,err);const callbacks=hdriInFlight.get(url)||[];hdriInFlight.delete(url);callbacks.forEach(cb=>cb(null));});}).catch(err=>{console.warn(\"HDRI loader module failed to load:\",err);const callbacks=hdriInFlight.get(url)||[];hdriInFlight.delete(url);callbacks.forEach(cb=>cb(null));});}export function _retainHDRI(url,texture){if(!url||!texture)return;const entry=hdriCache.get(url)||{texture,refs:0,lastUsed:performance.now()};entry.texture=texture;entry.refs=(entry.refs||0)+1;entry.lastUsed=performance.now();hdriCache.set(url,entry);}export function _releaseHDRI(url){const entry=hdriCache.get(url);if(!entry)return;entry.refs=Math.max(0,(entry.refs||0)-1);entry.lastUsed=performance.now();// Keep only one idle HDRI around. This avoids piling up PMREM cube maps\n// while still making the most recent preset switch cheap.\nconst idle=[...hdriCache.entries()].filter(([,item])=>(item.refs||0)===0).sort((a,b)=>(a[1].lastUsed||0)-(b[1].lastUsed||0));while(idle.length>1){const[oldUrl,oldEntry]=idle.shift();oldEntry.texture?.dispose?.();hdriCache.delete(oldUrl);}}export function _getProceduralEnvironmentCache(renderer){if(!renderer)return null;let cache=proceduralEnvCache.get(renderer);if(!cache){cache=new Map;proceduralEnvCache.set(renderer,cache);}return cache;}export function getProceduralEnvironment(renderer,presetName){const key=presetName||\"studio\";const cache=_getProceduralEnvironmentCache(renderer);if(!cache)return generateEnvironment(renderer,key);let entry=cache.get(key);if(!entry){entry={texture:generateEnvironment(renderer,key),refs:0,lastUsed:performance.now()};cache.set(key,entry);}entry.refs=(entry.refs||0)+1;entry.lastUsed=performance.now();return entry.texture;}export function _releaseProceduralEnvironment(renderer,presetName){const cache=renderer?proceduralEnvCache.get(renderer):null;if(!cache)return;const key=presetName||\"studio\";const entry=cache.get(key);if(!entry)return;entry.refs=Math.max(0,(entry.refs||0)-1);entry.lastUsed=performance.now();const idle=[...cache.entries()].filter(([,item])=>(item.refs||0)===0).sort((a,b)=>(a[1].lastUsed||0)-(b[1].lastUsed||0));while(idle.length>1){const[oldKey,oldEntry]=idle.shift();oldEntry.texture?.dispose?.();cache.delete(oldKey);}}export function _releaseEnvironmentMap(st){if(!st)return;const envMap=st.envMap;const envMapKey=st.envMapKey||\"\";const envMapSource=st.envMapSource||\"\";if(envMapSource===\"hdri\"&&envMapKey){_releaseHDRI(envMapKey);}else if(envMapSource===\"procedural\"&&envMap){_releaseProceduralEnvironment(st._renderer||st.renderer,envMapKey.replace(/^procedural:/,\"\")||\"studio\");}st.envMap=null;st.envMapSource=\"\";st.envMapKey=\"\";st.hdriLoadingUrl=\"\";}export function generateEnvironment(renderer,presetName){const preset=ENV_PRESETS[presetName]||ENV_PRESETS.studio;const pmrem=new THREE.PMREMGenerator(renderer);pmrem.compileEquirectangularShader();const envScene=new THREE.Scene;const{top,mid,bot}=preset.sky;const skyMat=new THREE.ShaderMaterial({side:THREE.BackSide,uniforms:{uTop:{value:new THREE.Vector3(...top)},uMid:{value:new THREE.Vector3(...mid)},uBot:{value:new THREE.Vector3(...bot)}},vertexShader:`varying vec3 vWP;void main(){vWP=(modelMatrix*vec4(position,1.0)).xyz;gl_Position=projectionMatrix*modelViewMatrix*vec4(position,1.0);}`,fragmentShader:`uniform vec3 uTop,uMid,uBot;varying vec3 vWP;void main(){float h=normalize(vWP).y;float t=max(0.,h);float b=max(0.,-h);vec3 c=mix(uMid,uTop,t*t);c=mix(c,uBot,b*b);c+=.012*sin(vWP.x*.5+vWP.z*.3);gl_FragColor=vec4(c*2.,1.);}`});envScene.add(new THREE.Mesh(new THREE.SphereGeometry(50,32,32),skyMat));for(const light of preset.lights){const mat=new THREE.MeshBasicMaterial({color:new THREE.Color(...light.color),side:THREE.DoubleSide});const m=new THREE.Mesh(new THREE.PlaneGeometry(light.size,light.size),mat);m.position.set(...light.pos);m.lookAt(0,0,0);envScene.add(m);}const envMap=pmrem.fromScene(envScene,.04).texture;pmrem.dispose();envScene.traverse(o=>{if(o.geometry)o.geometry.dispose();if(o.material)o.material.dispose();});return envMap;}export function applyEnvironmentChanges(st,cfg,renderer,scene){if(!cfg.enableEnvironment){_releaseEnvironmentMap(st);scene.environment=null;scene.background=cfg.transparentBackground?null:parseColor(cfg.backgroundColor);}else if(cfg.environmentType===\"hdri\"){const hdriUrl=cfg.customHdriUrl||HDRI_PRESETS[cfg.hdriPreset]?.url||HDRI_PRESETS.studio_small_09.url;if(st.envMapKey===hdriUrl&&st.envMap){scene.environment=st.envMap;if(cfg.showEnvironmentBackground&&!cfg.transparentBackground){scene.background=st.envMap;}return;}_releaseEnvironmentMap(st);scene.environment=null;st.envMapSource=\"hdri\";st.envMapKey=hdriUrl;st.hdriLoadingUrl=hdriUrl;loadHDRI(renderer,hdriUrl,envMap=>{if(st._disposed||st.envMapKey!==hdriUrl||st.hdriLoadingUrl!==hdriUrl){return;}if(envMap){_retainHDRI(hdriUrl,envMap);st.envMap=envMap;st.envMapSource=\"hdri\";scene.environment=envMap;if(cfg.showEnvironmentBackground&&!cfg.transparentBackground){scene.background=envMap;}}st.hdriLoadingUrl=\"\";});}else{const presetName=cfg.environmentPreset||\"studio\";const envKey=`procedural:${presetName}`;if(st.envMapKey===envKey&&st.envMap){scene.environment=st.envMap;return;}_releaseEnvironmentMap(st);st.envMap=getProceduralEnvironment(renderer,presetName);st.envMapSource=\"procedural\";st.envMapKey=envKey;scene.environment=st.envMap;}}// #endregion\n\nexport const __FramerMetadata__ = {\"exports\":{\"_releaseHDRI\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_markSharedHDRI\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"generateEnvironment\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_releaseEnvironmentMap\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_retainHDRI\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"loadHDRI\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"applyEnvironmentChanges\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getProceduralEnvironment\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_isSharedHDRI\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_getProceduralEnvironmentCache\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_releaseProceduralEnvironment\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// @ts-nocheck\n// #region 22. RUNTIME GLUE & EVENT HANDLERS\nimport{materialHash,lightingHash,envHash,effectsHash,sceneConfigHash}from\"https://framerusercontent.com/modules/rQr0QSqhMAFMOLIQZWpx/FeqTSuxAxSKs6XpNd793/hashes.js\";import{_getAnimationBlendOptions,_playAnimations}from\"https://framerusercontent.com/modules/ZMoE0e8TTc5hP09MepLT/EF6CGI7iUmZM5FG6LLYY/animationUtils.js\";import{applyMaterialOverride,setModelFade,clearFadeCache}from\"https://framerusercontent.com/modules/TeSbfetwTP8U0VZWwTlf/TweTf7k9xt4eaTedtgHr/materialSystem.js\";import{applyLightingChanges}from\"https://framerusercontent.com/modules/UATfUROvEvWK8jHDY9bj/Q1SBg2DsVIYCYR1cvaYG/lighting.js\";import{applyEnvironmentChanges}from\"https://framerusercontent.com/modules/zwopdMIjvlpx1ZSF2U25/4sJz6JchqGmISWzqGeGT/environment.js\";import{applyEffectsChanges}from\"https://framerusercontent.com/modules/KDgXKUZDtOlVMTgk4xzC/l9KsabZZFC3I7R1x10GN/postprocessing.js\";export function _resetModelHoverGateState(holder,clipName=\"\"){if(!holder)return;holder._modelHoverGateInitialized=false;holder._modelHoverBaseAnimationClip=clipName;holder._modelHoverPendingAnimationClip=clipName;}export function _resolveModelHoverGatedClip(holder,cfg,clipName){if(!cfg.animationModelHoverGate||cfg.animationMode!==\"single\"||cfg.enableScrollAnimation){_resetModelHoverGateState(holder,String(clipName??\"\"));return clipName;}const requestedClip=String(clipName??\"\");// The first clip seen before an actual mesh hover becomes the safe/base clip.\nif(!holder._modelHoverGateInitialized){holder._modelHoverGateInitialized=true;holder._modelHoverBaseAnimationClip=requestedClip;}holder._modelHoverPendingAnimationClip=requestedClip;if(holder._modelHoverRaycastActive){return requestedClip;}return holder._modelHoverBaseAnimationClip||holder._activeAnimationClipName||requestedClip;}export function _syncModelHoverGatedAnimations(st,cfg){if(!cfg.animationModelHoverGate||!cfg.enableAnimation||cfg.animationMode!==\"single\"||cfg.enableScrollAnimation){return;}if(st.mixer&&st.animations?.length){_playConfiguredAnimation(st,st.mixer,st.animations,cfg,cfg.animationMode,cfg.animationClip);}if(!st.subScenes)return;const sceneItems=cfg.subSceneItems||[];const subSceneCfg={...cfg,onAnimationOnceComplete:null};for(const[idx,ss]of st.subScenes){if(!ss.mixer||!ss.animations?.length)continue;if(ss.group&&ss.group.visible===false)continue;const item=sceneItems[idx];if(item?.animOverride)continue;ss._modelHoverRaycastActive=st._modelHoverRaycastActive;_playConfiguredAnimation(ss,ss.mixer,ss.animations,subSceneCfg,cfg.animationMode,cfg.animationClip);}}export function _applyMaterialToAllScenes(st,targetCfg){applyMaterialOverride(st.model,targetCfg);for(const[,ss]of st.subScenes){if(ss._loaded&&ss.group){applyMaterialOverride(ss.group,targetCfg);}}}export function _setFadeAllScenes(st,factor,force=false){const normalized=factor>=.999?1:factor;if(!force&&st._lastSceneFadeFactor!=null&&Math.abs(st._lastSceneFadeFactor-normalized)<.02&&normalized!==1){return;}setModelFade(st.model,normalized);for(const[,ss]of st.subScenes){if(ss._loaded&&ss.group){setModelFade(ss.group,normalized);}}st._lastSceneFadeFactor=normalized;st._fadeCacheDirty=normalized<1;}export function _clearFadeCacheAllScenes(st){clearFadeCache(st.model);for(const[,ss]of st.subScenes){if(ss._loaded&&ss.group){clearFadeCache(ss.group);}}st._lastSceneFadeFactor=null;st._fadeCacheDirty=false;}export function _syncSceneHashTrackers(st,cfg,sceneHash=sceneConfigHash(cfg)){st.lastSceneHash=sceneHash;st.lastMaterialHash=cfg._materialHash??materialHash(cfg);st.lastLightingHash=cfg._lightingHash??lightingHash(cfg);st.lastEnvHash=cfg._envHash??envHash(cfg);st.lastEffectsHash=cfg._effectsHash??effectsHash(cfg);}export function _playConfiguredAnimation(holder,mixer,animations,cfg,mode,clipName,blendDuration){const resolvedClipName=_resolveModelHoverGatedClip(holder,cfg,clipName);const options=_getAnimationBlendOptions(holder,cfg,blendDuration);const resolvedClip=String(resolvedClipName??\"\").trim();const loopMode=cfg.animationLoopMode||\"repeat\";const effectiveLoopMode=cfg.hasAnimationOnceCompleteHandler?\"once\":loopMode;const shouldEmitOnceComplete=cfg.hasAnimationOnceCompleteHandler&&String(effectiveLoopMode).toLowerCase()===\"once\"&&(cfg.animationMode!==\"single\"||!!resolvedClip);options.loopMode=effectiveLoopMode;if(shouldEmitOnceComplete){options.restartOnSwitch=true;options.onOnceComplete=event=>{cfg.onAnimationOnceComplete?.(event);};}_playAnimations(mixer,animations,mode,resolvedClipName,options);}export function _applySceneConfigChanges(st,cfg,renderer,scene,sceneHash){const nextMaterialHash=cfg._materialHash??materialHash(cfg);const nextLightingHash=cfg._lightingHash??lightingHash(cfg);const nextEnvHash=cfg._envHash??envHash(cfg);const nextEffectsHash=cfg._effectsHash??effectsHash(cfg);if(nextMaterialHash!==st.lastMaterialHash){_applyMaterialToAllScenes(st,cfg);st.lastMaterialHash=nextMaterialHash;}if(nextLightingHash!==st.lastLightingHash){applyLightingChanges(st,cfg);st.lastLightingHash=nextLightingHash;}if(nextEnvHash!==st.lastEnvHash){applyEnvironmentChanges(st,cfg,renderer,scene);st.lastEnvHash=nextEnvHash;}if(nextEffectsHash!==st.lastEffectsHash){applyEffectsChanges(st,cfg);st.lastEffectsHash=nextEffectsHash;}st.lastSceneHash=sceneHash??cfg._sceneConfigHash??sceneConfigHash(cfg);}export function _withRuntimeRoleHidden(controls,hiddenByRole){const mapped={};Object.entries(controls||{}).forEach(([key,control])=>{const originalHidden=control?.hidden;mapped[key]={...control,hidden:props=>{if(hiddenByRole(props))return true;if(typeof originalHidden===\"function\")return originalHidden(props);return!!originalHidden;}};});return mapped;}export function _computeBVHForModel(model){model.traverse(child=>{if(child.isMesh&&child.geometry&&!child.geometry.boundsTree){child.geometry.computeBoundsTree();}});}// #endregion\n\nexport const __FramerMetadata__ = {\"exports\":{\"_syncSceneHashTrackers\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_applySceneConfigChanges\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_withRuntimeRoleHidden\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_resolveModelHoverGatedClip\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_computeBVHForModel\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_applyMaterialToAllScenes\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_setFadeAllScenes\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_clearFadeCacheAllScenes\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_playConfiguredAnimation\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_resetModelHoverGateState\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_syncModelHoverGatedAnimations\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// @ts-nocheck\n// #region 20. RENDER BRIDGE API\nimport{_IMPORT_3D_BRIDGE_KEY}from\"https://framerusercontent.com/modules/urxcwcToMwyEWH05dzo6/cUcLUwBj9Qei2vxq7YKV/constants.js\";// @api RenderBridge.getState\nexport function _getImport3DBridgeState(){if(typeof window===\"undefined\"){return{rootCount:0,renderMode:\"coordinator\",contextBudget:null,rendererState:null,qualityMode:\"balanced\",dprCapDesktop:null,dprCapMobile:null,pauseHidden:true,pauseOffscreen:true,destroyOffscreen:false,destroyAfterMs:2e4,rendererDebug:false,_rendererModeAnnounced:false,slotRevision:0,slots:new Map,listeners:new Set};}if(!window[_IMPORT_3D_BRIDGE_KEY]){window[_IMPORT_3D_BRIDGE_KEY]={rootCount:0,renderMode:\"coordinator\",contextBudget:null,rendererState:null,qualityMode:\"balanced\",dprCapDesktop:null,dprCapMobile:null,pauseHidden:true,pauseOffscreen:true,destroyOffscreen:false,destroyAfterMs:2e4,rendererDebug:false,_rendererModeAnnounced:false,slotRevision:0,slots:new Map,listeners:new Set};}return window[_IMPORT_3D_BRIDGE_KEY];}export function _emitImport3DBridge(){const state=_getImport3DBridgeState();if(!state?.listeners)return;state.listeners.forEach(listener=>{try{listener();}catch(error){console.warn(\"[Import_3D] bridge listener error\",error);}});}export function _subscribeImport3DBridge(listener){const state=_getImport3DBridgeState();state.listeners.add(listener);return()=>{state.listeners.delete(listener);};}export function _snapshotImport3DBridge(){const state=_getImport3DBridgeState();return{rootCount:state.rootCount||0,renderMode:state.renderMode||\"coordinator\",contextBudget:state.contextBudget??null,rendererState:state.rendererState||null,qualityMode:state.qualityMode||\"balanced\",dprCapDesktop:state.dprCapDesktop??null,dprCapMobile:state.dprCapMobile??null,pauseHidden:state.pauseHidden??true,pauseOffscreen:state.pauseOffscreen??true,destroyOffscreen:state.destroyOffscreen??false,destroyAfterMs:state.destroyAfterMs??2e4,rendererDebug:state.rendererDebug??false,slotRevision:state.slotRevision||0,slots:Array.from(state.slots?.values?.()||[])};}// #endregion\n\nexport const __FramerMetadata__ = {\"exports\":{\"_subscribeImport3DBridge\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_snapshotImport3DBridge\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_getImport3DBridgeState\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_emitImport3DBridge\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// @ts-nocheck\n// #region 17. RENDERER DIAGNOSTICS\nimport{_IMPORT_3D_RENDERER_DEBUG_KEY}from\"https://framerusercontent.com/modules/urxcwcToMwyEWH05dzo6/cUcLUwBj9Qei2vxq7YKV/constants.js\";import{_getImport3DBridgeState}from\"https://framerusercontent.com/modules/p9UElCqUo2EhVe2TH3ba/IJdmEZdowZxtu0vC2vAr/bridge.js\";function _snapshotImport3DCanvasDebug(canvas){if(!canvas)return null;const rect=canvas.getBoundingClientRect?.();return{connected:!!canvas.isConnected,root:canvas.getAttribute?.(\"data-import-3d-root-canvas\")||null,slot:canvas.getAttribute?.(\"data-3d-canvas-id\")||null,owner:canvas.getAttribute?.(\"data-import-3d-renderer-owner\")||null,width:canvas.width||0,height:canvas.height||0,cssWidth:canvas.style?.width||\"\",cssHeight:canvas.style?.height||\"\",display:canvas.style?.display||\"\",parent:canvas.parentElement?.tagName||null,rect:rect?{x:Math.round(rect.x),y:Math.round(rect.y),width:Math.round(rect.width),height:Math.round(rect.height)}:null};}function _getImport3DRendererDebugStore(){if(typeof window===\"undefined\"){return null;}if(!window[_IMPORT_3D_RENDERER_DEBUG_KEY]){window[_IMPORT_3D_RENDERER_DEBUG_KEY]={seq:0,live:{},events:[]};}const store=window[_IMPORT_3D_RENDERER_DEBUG_KEY];if(typeof store.dump!==\"function\"){store.dump=()=>{const canvases=Array.from(document.querySelectorAll(\"canvas\")).map((canvas,index)=>({index,root:canvas.getAttribute?.(\"data-import-3d-root-canvas\")||null,slot:canvas.getAttribute?.(\"data-3d-canvas-id\")||null,owner:canvas.getAttribute?.(\"data-import-3d-renderer-owner\")||null,connected:!!canvas.isConnected,width:canvas.width||0,height:canvas.height||0,cssWidth:canvas.style?.width||\"\",cssHeight:canvas.style?.height||\"\",display:canvas.style?.display||\"\"}));const live=Object.values(store.live||{});console.table(canvases);console.table(live);return{canvases,live,events:store.events||[]};};}return store;}// @api RendererDiagnostics.logEvent\nexport function _debugImport3DRendererEvent(event,payload={}){const store=_getImport3DRendererDebugStore();if(!store)return;const ownerId=payload.ownerId||payload.canvas?.getAttribute?.(\"data-import-3d-renderer-owner\")||`${payload.role||\"renderer\"}:${store.seq+1}`;const entry={seq:++store.seq,event,ownerId,role:payload.role||\"\",reason:payload.reason||\"\",bridgeMode:payload.bridgeMode||\"\",renderTarget:payload.renderTarget||\"\",webglRuntimeActive:payload.webglRuntimeActive,cfgWebglActive:payload.cfgWebglActive,rootCount:payload.rootCount,slotCount:payload.slotCount,canvas:_snapshotImport3DCanvasDebug(payload.canvas),at:Math.round(performance.now())};if(event===\"create\"){store.live[ownerId]=entry;}else if(event===\"dispose\"){delete store.live[ownerId];}store.events.push(entry);if(store.events.length>80)store.events.shift();const shouldLog=payload.forceLog||typeof window!==\"undefined\"&&!!window.__IMPORT_3D_RENDERER_DEBUG_VERBOSE__;if(shouldLog){console.log(`[Import_3D Renderer Debug] ${event}`,entry,\"live:\",Object.keys(store.live));}}export function _isImport3DRendererBridgeActive(){if(typeof window===\"undefined\")return false;const state=_getImport3DBridgeState();return state.renderMode===\"renderer\"&&((state.rootCount||0)>0||!!state._rendererModeAnnounced);}// #endregion\n\nexport const __FramerMetadata__ = {\"exports\":{\"_isImport3DRendererBridgeActive\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_debugImport3DRendererEvent\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// @ts-nocheck\n// #region 18. STATS MONITOR\nimport{_loadStats}from\"https://framerusercontent.com/modules/YeYAFpMfJfcs2D9mfKFW/DDv12VyHhTY27qyXtQ6t/deps.js\";export function _getStatsPanelIndex(panel){if(panel===\"ms\")return 1;if(panel===\"mb\")return 2;return 0;}export function _removeStatsMonitor(st){if(!st)return;const dom=st._statsDom;if(dom?.parentNode)dom.parentNode.removeChild(dom);st._stats=null;st._statsDom=null;st._statsPanel=null;st._statsLoading=false;}// Stats.js is only fetched once a scene actually turns the debug overlay on.\n// While the module is loading, this returns null (no overlay yet); once the\n// dynamic import resolves it builds the panel and later calls pick it up.\nexport function _syncStatsMonitor(st,cfg,host){if(!st)return null;if(!cfg.showStatsMonitor||!host){_removeStatsMonitor(st);return null;}const panel=_getStatsPanelIndex(cfg.statsMonitorPanel);if(!st._stats){if(!st._statsLoading){st._statsLoading=true;_loadStats().then(Stats=>{if(!st._statsLoading||st._stats)return;const stats=new Stats;const dom=stats.dom||stats.domElement;if(!dom){st._statsLoading=false;return;}stats.showPanel(_getStatsPanelIndex(cfg.statsMonitorPanel));dom.style.position=\"absolute\";dom.style.left=\"8px\";dom.style.top=\"8px\";dom.style.zIndex=\"9999\";dom.style.pointerEvents=\"none\";dom.style.opacity=\"0.9\";host.appendChild(dom);st._stats=stats;st._statsDom=dom;st._statsPanel=_getStatsPanelIndex(cfg.statsMonitorPanel);st._statsLoading=false;});}return null;}else if(st._statsPanel!==panel){st._stats.showPanel(panel);st._statsPanel=panel;}return st._stats;}// #endregion\n\nexport const __FramerMetadata__ = {\"exports\":{\"_getStatsPanelIndex\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_removeStatsMonitor\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_syncStatsMonitor\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// @ts-nocheck\n// #region 12. SCENE TRANSFORMS\nimport{_DEG2RAD}from\"https://framerusercontent.com/modules/urxcwcToMwyEWH05dzo6/cUcLUwBj9Qei2vxq7YKV/constants.js\";import{_tmpBox3,_tmpVec3A,_tmpVec3B}from\"https://framerusercontent.com/modules/NDTJ5ADDpfKTGmrlCCF2/Sku50RC96WdXH0Q17gRv/state.js\";import{_isMobileLike,_getVisibleSize,_setStyleIfChanged,_clearStyleIfChanged}from\"https://framerusercontent.com/modules/OcrnvbBWJ00imtCNulvV/ECeJBxCrq22P47xccZti/renderMetrics.js\";import{_findLayerMatchElement,_isLayerMatchCandidateUsable,_matchesLayerSelector,_normalizeLayerMatchValue}from\"https://framerusercontent.com/modules/vGvxKBAQuEl5qBVTPruS/STnvRXy146qx84LkzO8J/formatAndColor.js\";import{_computeMeshOnlyBoundingBox}from\"https://framerusercontent.com/modules/zmx71qwu2TbY9YO9I2f5/5N7CD3udL4rE1txQaU17/object3DUtils.js\";export function _markScrollLayoutDirty(st){if(!st)return;st._scrollLayoutVersion=(st._scrollLayoutVersion||0)+1;}export function _getScrollLayoutViewport(st,wrapNode,now){// On mobile-like devices, inertial scroll positions change every frame\n// and getBoundingClientRect() already reflects the *current* visual scroll\n// position at rAF time. We must NOT cache rects across frames on mobile,\n// otherwise the model lags behind the DOM by one or more frames.\nconst isMobile=_isMobileLike();if(!isMobile){if(st._scrollLayoutCacheVersion===(st._scrollLayoutVersion||0)&&st._scrollLayoutWrapNode===wrapNode&&st._scrollLayoutViewport){return st._scrollLayoutViewport;}}else{// Always clear the rect cache on mobile so _getScrollLayoutRect\n// re-measures each frame. The viewport dimensions are stable so we\n// can still cache those, but element rects must stay fresh.\nif(st._scrollLayoutRectCache?.clear){st._scrollLayoutRectCache.clear();}else{st._scrollLayoutRectCache=new Map;}if(st._scrollLayoutCacheVersion===(st._scrollLayoutVersion||0)&&st._scrollLayoutWrapNode===wrapNode&&st._scrollLayoutViewport){return st._scrollLayoutViewport;}}st._scrollLayoutMeasureAt=now;st._scrollLayoutCacheVersion=st._scrollLayoutVersion||0;st._scrollLayoutWrapNode=wrapNode;if(st._scrollLayoutRectCache?.clear){st._scrollLayoutRectCache.clear();}else{st._scrollLayoutRectCache=new Map;}if(st._framerRuntimeMode===\"canvas\"&&wrapNode?.getBoundingClientRect){const wrapRect=wrapNode.getBoundingClientRect();const logicalW=wrapNode.clientWidth||wrapRect.width;const logicalH=wrapNode.clientHeight||wrapRect.height;if(wrapRect.width>0&&wrapRect.height>0&&logicalW>0&&logicalH>0){st._scrollLayoutViewport={left:0,top:0,width:logicalW,height:logicalH,local:true,wrapRect,scaleX:wrapRect.width/logicalW||1,scaleY:wrapRect.height/logicalH||1};return st._scrollLayoutViewport;}}st._scrollLayoutViewport={left:0,top:0,width:window.innerWidth||wrapNode?.clientWidth||1,height:window.innerHeight||wrapNode?.clientHeight||1,local:false};return st._scrollLayoutViewport;}export function _getScrollLayoutRect(st,node,viewport){if(!node)return null;const rectCache=st._scrollLayoutRectCache;if(rectCache?.has(node))return rectCache.get(node);const rawRect=node.getBoundingClientRect();if(!viewport?.local||!viewport.wrapRect){rectCache?.set(node,rawRect);return rawRect;}// Project DOM into the same logical space as the canvas wrapper. This keeps\n// Framer editor zoom/stage transforms from changing the 3D positioning math.\nconst scaleX=viewport.scaleX||1;const scaleY=viewport.scaleY||1;const left=(rawRect.left-viewport.wrapRect.left)/scaleX;const top=(rawRect.top-viewport.wrapRect.top)/scaleY;const width=rawRect.width/scaleX;const height=rawRect.height/scaleY;const rect={left,top,width,height,right:left+width,bottom:top+height};rectCache?.set(node,rect);return rect;}export function _getScrollAnchorOffset(st,cfg,wrapNode,now){const prevMatch=st._scrollAnchorMatch;if(!cfg.scrollAnchorEnabled||!cfg.scrollAnchorMatch||typeof window===\"undefined\"){st._scrollAnchorOffsetX=0;st._scrollAnchorOffsetY=0;st._scrollAnchorLastVisibleX=undefined;st._scrollAnchorLastVisibleY=undefined;st._scrollAnchorTransitionId=\"\";st._scrollAnchorTransitionStart=0;st._scrollAnchorPendingAppearReplay=\"\";st._scrollAnchorInstantUntil=0;st._scrollAnchorEl=null;st._scrollAnchorMatch=\"\";return{x:0,y:0,active:false,inView:true};}const transitionTargetId=String(cfg.scrollAnchorTransitionTargetId??\"\").trim();const transitionRequested=!!(cfg.scrollAnchorTransitionEnabled??cfg.scrollAnchorTransitionId);const matchChanged=prevMatch!==cfg.scrollAnchorMatch;if(matchChanged||!st._scrollAnchorEl||!st._scrollAnchorEl.isConnected||now>=(st._scrollAnchorLookupAt||0)){const prevResolvedEl=st._scrollAnchorEl;st._scrollAnchorMatch=cfg.scrollAnchorMatch;st._scrollAnchorEl=_findLayerMatchElement(cfg.scrollAnchorMatch,wrapNode);st._scrollAnchorLookupAt=now+500;if(prevResolvedEl&&prevResolvedEl!==st._scrollAnchorEl){st._scrollAnchorTransitionId=\"\";st._scrollAnchorTransitionStart=0;st._scrollAnchorPendingAppearReplay=\"\";st._scrollAnchorInstantUntil=0;}}let el=st._scrollAnchorEl;if(el&&!_isLayerMatchCandidateUsable(el,wrapNode)){st._scrollAnchorEl=_findLayerMatchElement(cfg.scrollAnchorMatch,wrapNode);st._scrollAnchorLookupAt=now+500;el=st._scrollAnchorEl;st._scrollAnchorTransitionId=\"\";st._scrollAnchorTransitionStart=0;st._scrollAnchorPendingAppearReplay=\"\";st._scrollAnchorInstantUntil=0;}const prevEl=prevMatch&&prevMatch!==cfg.scrollAnchorMatch?_findLayerMatchElement(prevMatch,wrapNode):null;const transitionTargetMatches=!transitionTargetId||!!prevEl&&_matchesLayerSelector(prevEl,transitionTargetId)||_normalizeLayerMatchValue(transitionTargetId)===_normalizeLayerMatchValue(prevMatch)||_normalizeLayerMatchValue(transitionTargetId)===_normalizeLayerMatchValue(st._scrollAnchorLastTransitionFromMatch);const transitionEnabled=transitionRequested&&transitionTargetMatches;if(!el){// Missing/renamed Follow ID should not leave the model stranded at a stale\n// section offset. Fall back to the authored transform until the ID exists.\nst._scrollAnchorOffsetX=0;st._scrollAnchorOffsetY=0;st._scrollAnchorLastVisibleX=undefined;st._scrollAnchorLastVisibleY=undefined;st._scrollAnchorTransitionId=\"\";st._scrollAnchorTransitionStart=0;st._scrollAnchorPendingAppearReplay=\"\";st._scrollAnchorInstantUntil=0;return{x:0,y:0,active:false,inView:false};}const viewport=_getScrollLayoutViewport(st,wrapNode,now);const _measureAnchorOffset=node=>{if(!node||typeof window===\"undefined\")return null;const rect=_getScrollLayoutRect(st,node,viewport);if(!rect)return null;const viewW=viewport.width;const viewH=viewport.height;if(!viewW||!viewH)return null;const anchorX=cfg.scrollAnchorX??.5;const anchorY=cfg.scrollAnchorY??.5;const pxX=rect.left+rect.width*anchorX-(viewport.left+viewW/2);const pxY=rect.top+rect.height*anchorY-(viewport.top+viewH/2);const anchorScreenY=rect.top+rect.height*anchorY-viewport.top;const progress=Math.max(0,Math.min(1,1-anchorScreenY/viewH));// Compute pixel-to-world scale correctly per camera type.\n// For orthographic: world size is defined directly by frustum / zoom,\n//   independent of camera distance. Using camDist here was wrong.\n// For perspective: use the standard visible-size-at-distance formula.\nlet pxToWorldX;let pxToWorldY;const cam=st.camera;if(cam?.isOrthographicCamera){// World units per pixel = frustum extent / zoom / viewport pixels\npxToWorldX=(cam.right-cam.left)/(cam.zoom||1)/viewW;pxToWorldY=(cam.top-cam.bottom)/(cam.zoom||1)/viewH;}else{const camDist=cam?.position?.length?.()||1;const visible=_getVisibleSize(cam,camDist);pxToWorldX=visible.width/viewW;pxToWorldY=visible.height/viewH;}return{x:pxX*pxToWorldX*(cfg.scrollAnchorStrengthX??1),y:-pxY*pxToWorldY*(cfg.scrollAnchorStrengthY??1),inView:rect.right>viewport.left&&rect.left<viewport.left+viewW&&rect.bottom>viewport.top&&rect.top<viewport.top+viewH,progress};};const currentMeasure=_measureAnchorOffset(el);if(!currentMeasure){return{x:0,y:0,active:false,inView:true};}const prevMeasure=_measureAnchorOffset(prevEl);const isInViewport=currentMeasure.inView;const targetX=currentMeasure.x;const targetY=currentMeasure.y;const preferDirectMobileFollow=!!cfg.responsiveIsMobile;if(preferDirectMobileFollow){st._scrollAnchorTransitionId=\"\";st._scrollAnchorTransitionStart=0;st._scrollAnchorPendingAppearReplay=\"\";st._scrollAnchorInstantUntil=0;st._scrollAnchorOffsetX=targetX;st._scrollAnchorOffsetY=targetY;st._scrollAnchorLastVisibleX=targetX;st._scrollAnchorLastVisibleY=targetY;return{x:targetX,y:targetY,active:true,inView:isInViewport,progress:currentMeasure.progress};}if(matchChanged&&prevMatch&&!prevMeasure){// Framer variants can keep stale Object-control values. If a Follow ID was\n// renamed and the previous DOM anchor no longer exists, treat the new ID as\n// a fresh anchor instead of replaying appear/transition state from nowhere.\nst._scrollAnchorTransitionId=\"\";st._scrollAnchorTransitionStart=0;st._scrollAnchorPendingAppearReplay=\"\";st._scrollAnchorInstantUntil=0;st._scrollAnchorOffsetX=targetX;st._scrollAnchorOffsetY=targetY;st._scrollAnchorLastVisibleX=targetX;st._scrollAnchorLastVisibleY=targetY;return{x:targetX,y:targetY,active:true,inView:isInViewport,progress:currentMeasure.progress};}const transitionChanged=!!st._scrollAnchorTransitionId!==transitionEnabled;if(transitionEnabled&&(matchChanged||transitionChanged)&&(st._scrollAnchorOffsetX!==undefined&&st._scrollAnchorOffsetY!==undefined||prevMeasure)){st._scrollAnchorLastTransitionFromMatch=prevMatch||\"\";st._scrollAnchorTransitionId=transitionEnabled;st._scrollAnchorTransitionFromX=st._scrollAnchorOffsetX??prevMeasure?.x??targetX;st._scrollAnchorTransitionFromY=st._scrollAnchorOffsetY??prevMeasure?.y??targetY;st._scrollAnchorTransitionToX=targetX;st._scrollAnchorTransitionToY=targetY;st._scrollAnchorTransitionStart=now;st._scrollAnchorTransitionDuration=Math.max(180,560-(cfg.scrollAnchorSmoothing??1)*320);}else if(!transitionEnabled){st._scrollAnchorTransitionId=\"\";st._scrollAnchorTransitionStart=0;}else{st._scrollAnchorTransitionId=true;}if(!transitionEnabled&&matchChanged&&prevMatch){// Follow ID changes are layout-anchor changes, not Framer variant changes.\n// Do not replay Appear here; otherwise scroll variants that override the\n// Position object can repeatedly reset opacity/transform state.\nst._scrollAnchorPendingAppearReplay=\"\";st._scrollAnchorInstantUntil=0;st._scrollAnchorOffsetX=targetX;st._scrollAnchorOffsetY=targetY;st._scrollAnchorLastVisibleX=targetX;st._scrollAnchorLastVisibleY=targetY;return{x:targetX,y:targetY,active:true,inView:isInViewport,progress:currentMeasure.progress};}if(!transitionEnabled&&(st._scrollAnchorInstantUntil||0)>now){st._scrollAnchorOffsetX=targetX;st._scrollAnchorOffsetY=targetY;st._scrollAnchorLastVisibleX=targetX;st._scrollAnchorLastVisibleY=targetY;return{x:targetX,y:targetY,active:true,inView:isInViewport,progress:currentMeasure.progress};}if(transitionEnabled&&st._scrollAnchorTransitionStart>0){st._scrollAnchorTransitionToX=targetX;st._scrollAnchorTransitionToY=targetY;const duration=Math.max(1,st._scrollAnchorTransitionDuration||280);const t=Math.min(1,(now-st._scrollAnchorTransitionStart)/duration);const eased=1-Math.pow(1-t,3);st._scrollAnchorOffsetX=(st._scrollAnchorTransitionFromX??targetX)+((st._scrollAnchorTransitionToX??targetX)-(st._scrollAnchorTransitionFromX??targetX))*eased;st._scrollAnchorOffsetY=(st._scrollAnchorTransitionFromY??targetY)+((st._scrollAnchorTransitionToY??targetY)-(st._scrollAnchorTransitionFromY??targetY))*eased;st._scrollAnchorLastVisibleX=st._scrollAnchorOffsetX;st._scrollAnchorLastVisibleY=st._scrollAnchorOffsetY;if(t>=1){st._scrollAnchorTransitionStart=0;st._scrollAnchorTransitionFromX=st._scrollAnchorOffsetX;st._scrollAnchorTransitionFromY=st._scrollAnchorOffsetY;}return{x:st._scrollAnchorOffsetX,y:st._scrollAnchorOffsetY,active:true,inView:isInViewport,progress:currentMeasure.progress};}const smooth=Math.max(0,Math.min(1,cfg.scrollAnchorSmoothing??1));// On mobile with inertial scroll, lerp causes visible \"chasing\" because the\n// target moves fast each frame. If on mobile and the delta is larger than\n// ~2px worth of world units (meaning scroll is active/fast), snap instantly.\nconst prevX=st._scrollAnchorOffsetX??targetX;const prevY=st._scrollAnchorOffsetY??targetY;const dX=Math.abs(targetX-prevX);const dY=Math.abs(targetY-prevY);const cam=st.camera;let pxThresh=2;if(cam?.isOrthographicCamera){const viewW=1// relative threshold — will use world units\n;pxThresh=(cam.right-cam.left)/(cam.zoom||1)*.005// 0.5% of world width\n;}else{const camDist=cam?.position?.length?.()||1;const vis=_getVisibleSize(cam,camDist);pxThresh=vis.width*.005;}const isMobileFollow=_isMobileLike();const scrollMoving=dX>pxThresh||dY>pxThresh;if(isMobileFollow&&scrollMoving){// Snap directly — match the DOM position this frame, no lag\nst._scrollAnchorOffsetX=targetX;st._scrollAnchorOffsetY=targetY;}else{st._scrollAnchorOffsetX=prevX+(targetX-prevX)*smooth;st._scrollAnchorOffsetY=prevY+(targetY-prevY)*smooth;}st._scrollAnchorLastVisibleX=st._scrollAnchorOffsetX;st._scrollAnchorLastVisibleY=st._scrollAnchorOffsetY;return{x:st._scrollAnchorOffsetX,y:st._scrollAnchorOffsetY,active:true,inView:isInViewport,progress:currentMeasure.progress};}export function _getScrollTransformProgressOffset(st,cfg,wrapNode,now){if(!cfg.scrollProgressTransformEnabled||!cfg.scrollTransformAnchorMatch||typeof window===\"undefined\"){st._scrollTransformAnchorEl=null;st._scrollTransformAnchorMatch=\"\";return{x:0,y:0,active:false,inView:true,progress:0};}const match=cfg.scrollTransformAnchorMatch;if(st._scrollTransformAnchorMatch!==match||!st._scrollTransformAnchorEl||!st._scrollTransformAnchorEl.isConnected||!_isLayerMatchCandidateUsable(st._scrollTransformAnchorEl,wrapNode)||now>=(st._scrollTransformAnchorLookupAt||0)){st._scrollTransformAnchorMatch=match;st._scrollTransformAnchorEl=_findLayerMatchElement(match,wrapNode);st._scrollTransformAnchorLookupAt=now+500;}const el=st._scrollTransformAnchorEl;if(!el){return{x:0,y:0,active:false,inView:false,progress:0};}const viewport=_getScrollLayoutViewport(st,wrapNode,now);const rect=_getScrollLayoutRect(st,el,viewport);if(!rect){return{x:0,y:0,active:false,inView:true,progress:0};}const viewW=viewport.width;const viewH=viewport.height;if(!viewW||!viewH){return{x:0,y:0,active:false,inView:true,progress:0};}const anchorY=cfg.scrollAnchorY??.5;const anchorScreenY=rect.top+rect.height*anchorY-viewport.top;const progress=Math.max(0,Math.min(1,1-anchorScreenY/viewH));const inView=rect.right>viewport.left&&rect.left<viewport.left+viewW&&rect.bottom>viewport.top&&rect.top<viewport.top+viewH;return{x:0,y:0,active:true,inView,progress};}export function _syncScrollAnchorAppear(st,cfg,wrapNode,canvasNode){if(!canvasNode)return;const hasAppearWork=st._appearReplayStart>0||st._blurRevealStart>0;if(!hasAppearWork&&st._appearDomSyncedIdle)return;let visibility=1;if(st._appearReplayStart>0){const appearElapsed=(performance.now()-st._appearReplayStart)/1e3;const appearDuration=Math.max(.001,cfg.dissolveDuration||1.5);if(appearElapsed>=appearDuration){st._appearReplayStart=0;}else{const t=appearElapsed/appearDuration;const eased=1-Math.pow(1-t,3);visibility=Math.min(visibility,eased);}}st._appearVisibility=visibility;_setStyleIfChanged(canvasNode,\"opacity\",visibility>=.999?\"1\":visibility.toFixed(3));if(st._blurRevealStart>0){st._appearDomSyncedIdle=false;_setStyleIfChanged(canvasNode,\"willChange\",\"opacity, filter\");return;}if(cfg.blurReveal){const blurInt=cfg.blurRevealIntensity||12;const blurPx=blurInt*(1-visibility);if(blurPx>.05){st._appearDomSyncedIdle=false;_setStyleIfChanged(canvasNode,\"filter\",`blur(${blurPx.toFixed(1)}px)`);_setStyleIfChanged(canvasNode,\"willChange\",\"opacity, filter\");}else{_clearStyleIfChanged(canvasNode,\"filter\");if(visibility>=.999){_clearStyleIfChanged(canvasNode,\"willChange\");st._appearDomSyncedIdle=true;}else{_setStyleIfChanged(canvasNode,\"willChange\",\"opacity\");st._appearDomSyncedIdle=false;}}return;}_clearStyleIfChanged(canvasNode,\"filter\");if(visibility>=.999){_clearStyleIfChanged(canvasNode,\"willChange\");st._appearDomSyncedIdle=true;}else{_setStyleIfChanged(canvasNode,\"willChange\",\"opacity\");st._appearDomSyncedIdle=false;}}export function _hasAppearTransformMotion(cfg){if(!cfg)return false;return Math.abs(cfg.appearOffsetX??0)>1e-4||Math.abs(cfg.appearOffsetY??0)>1e-4||Math.abs(cfg.appearOffsetZ??0)>1e-4||Math.abs((cfg.appearScale??1)-1)>1e-4||Math.abs(cfg.appearRotateX??0)>1e-4||Math.abs(cfg.appearRotateY??0)>1e-4||Math.abs(cfg.appearRotateZ??0)>1e-4;}export function _shouldReplayAppear(cfg){return cfg?.appearReplay!==false;}export function _restartAppearPlayback(st,cfg,canvasNode,force=false){if(!st||!force&&!cfg?.dissolveEnabled&&!_hasAppearTransformMotion(cfg))return;st._appearReplayStart=performance.now();if(canvasNode){canvasNode.style.opacity=\"0\";}if(cfg.blurReveal&&canvasNode){const intensity=cfg.blurRevealIntensity||12;canvasNode.style.filter=`blur(${intensity}px)`;canvasNode.style.willChange=\"opacity, filter\";st._blurRevealStart=performance.now();}}export function _applyAppearTransformOffset(object,visibility,cfg){if(!object)return;const motionVisibility=visibility??1;const t=1-Math.max(0,Math.min(1,motionVisibility));const targetX=(cfg.appearOffsetX??0)*t;const targetY=(cfg.appearOffsetY??0)*t;const targetZ=(cfg.appearOffsetZ??0)*t;const targetScale=1+((cfg.appearScale??1)-1)*t;const targetRotX=(cfg.appearRotateX??0)*Math.PI*t/180;const targetRotY=(cfg.appearRotateY??0)*Math.PI*t/180;const targetRotZ=(cfg.appearRotateZ??0)*Math.PI*t/180;object.position.x+=targetX-(object._appearAppliedX||0);object.position.y+=targetY-(object._appearAppliedY||0);object.position.z+=targetZ-(object._appearAppliedZ||0);object.rotation.x+=targetRotX-(object._appearAppliedRotX||0);object.rotation.y+=targetRotY-(object._appearAppliedRotY||0);object.rotation.z+=targetRotZ-(object._appearAppliedRotZ||0);const prevScale=object._appearAppliedScale||1;if(prevScale!==0){object.scale.multiplyScalar(targetScale/prevScale);}object._appearAppliedX=targetX;object._appearAppliedY=targetY;object._appearAppliedZ=targetZ;object._appearAppliedRotX=targetRotX;object._appearAppliedRotY=targetRotY;object._appearAppliedRotZ=targetRotZ;object._appearAppliedScale=targetScale;}export function _resetAppearTransformOffset(object){if(!object)return;object._appearAppliedX=0;object._appearAppliedY=0;object._appearAppliedZ=0;object._appearAppliedRotX=0;object._appearAppliedRotY=0;object._appearAppliedRotZ=0;object._appearAppliedScale=1;}export function _applyScrollAnchorOffset(object,offset){if(!object)return;object.position.x+=(offset?.x||0)-(object._scrollAnchorAppliedX||0);object.position.y+=(offset?.y||0)-(object._scrollAnchorAppliedY||0);object._scrollAnchorAppliedX=offset?.x||0;object._scrollAnchorAppliedY=offset?.y||0;}export function _applyScrollAnchorRotation(object,offset,cfg,baseRotX=0,baseRotY=0,baseRotZ=0){if(!object||!offset?.active)return;const progress=Math.max(0,Math.min(1,offset.progress??0));const targetRotX=cfg.scrollAnchorRotationX||0;const targetRotY=cfg.scrollAnchorRotationY||0;const targetRotZ=cfg.scrollAnchorRotationZ||0;object.rotation.x+=targetRotX*progress*_DEG2RAD;object.rotation.y+=targetRotY*progress*_DEG2RAD;object.rotation.z+=targetRotZ*progress*_DEG2RAD;}export function _applyScrollProgressTransform(object,offset,cfg,basePosX=0,basePosY=0,basePosZ=0,baseScale=1){if(!object||!offset?.active||!cfg.scrollProgressTransformEnabled)return;const progress=Math.max(0,Math.min(1,offset.progress??0));const offsetX=cfg.scrollProgressPositionX??0;const offsetY=cfg.scrollProgressPositionY??0;const offsetZ=cfg.scrollProgressPositionZ??0;const scaleMultiplier=cfg.scrollProgressScale??1;object.position.x+=offsetX*progress;object.position.y+=offsetY*progress;object.position.z+=offsetZ*progress;const scaleAtProgress=1+(scaleMultiplier-1)*progress;object.scale.multiplyScalar(scaleAtProgress);}export function _resetScrollAnchorApplied(object){if(!object)return;object._scrollAnchorAppliedX=0;object._scrollAnchorAppliedY=0;}export function _applyCoordinatorAutoRotate(object,cfg,dt,paused=false){if(!object)return;if(paused||!(cfg?.enableAutoRotate??false)||dt<=0){object.userData._coordAutoRotateY=0;return;}const rotateSpeed=cfg.autoRotateSpeed??.5;object.userData._coordAutoRotateY=(object.userData._coordAutoRotateY||0)+dt*rotateSpeed;object.rotation.y+=object.userData._coordAutoRotateY;}export function _isMobileInteraction(e,cfg){return cfg?.responsiveIsMobile||e?.pointerType===\"touch\"||e?.pointerType===\"pen\"||e?.type?.startsWith?.(\"touch\");}export function _findImport3DScrollContainer(node){if(typeof window===\"undefined\")return null;let current=node?.parentElement||null;while(current&&current!==document.body){const style=window.getComputedStyle(current);const overflowY=style.overflowY||style.overflow;const canScroll=(overflowY===\"auto\"||overflowY===\"scroll\"||overflowY===\"overlay\")&&current.scrollHeight>current.clientHeight+4;if(canScroll)return current;current=current.parentElement;}return document.scrollingElement||document.documentElement||document.body||null;}export function applyModelTransform(st,cfg){if(!st.model)return;const wrapper=st.model;// 1. Reset position & rotation to measure clean bounding box\nwrapper.position.set(0,0,0);wrapper.rotation.set(0,0,0);// 2. Compute bounding box center after scaling (mesh-only to exclude bones)\n_tmpBox3.copy(_computeMeshOnlyBoundingBox(wrapper));const boxCenter=_tmpBox3.getCenter(_tmpVec3A);// 3. Center model at origin + apply position offset (no alignment - always center)\nwrapper.position.set(-boxCenter.x+(cfg.modelOffsetX||0),-boxCenter.y+(cfg.modelOffsetY||0),-boxCenter.z+(cfg.modelOffsetZ||0));st.modelBaseX=wrapper.position.x;st.modelBaseY=wrapper.position.y;st.modelBaseZ=wrapper.position.z;// 4. Apply rotation (degrees → radians) around model center\nwrapper.rotation.set((cfg.modelRotationX||0)*_DEG2RAD,(cfg.modelRotationY||0)*_DEG2RAD,(cfg.modelRotationZ||0)*_DEG2RAD);// 5. Orbit target stays at origin → model can move freely in space\nst.controls.target.set(0,0,0);st.controls.update();// 6. Ground + shadow camera based on final model bounds\n_tmpBox3.copy(_computeMeshOnlyBoundingBox(wrapper));st.ground.position.y=_tmpBox3.min.y-.001;st.groundBaseY=st.ground.position.y;st.groundBaseZ=st.ground.position.z;const ss=_tmpBox3.getSize(_tmpVec3B);const maxS=Math.max(ss.x,ss.y,ss.z)*1.5;st.dirLight.shadow.camera.left=-maxS;st.dirLight.shadow.camera.right=maxS;st.dirLight.shadow.camera.top=maxS;st.dirLight.shadow.camera.bottom=-maxS;st.dirLight.shadow.camera.updateProjectionMatrix();st.floatBaseY=wrapper.position.y;st.floatBaseRotX=wrapper.rotation.x;st.floatBaseRotY=wrapper.rotation.y;st.floatBaseRotZ=wrapper.rotation.z;}export function _syncGroundToModel(st,cfg=null,offset=null){if(!st?.model||!st.ground)return;st.ground.position.x=st.model._scrollAnchorAppliedX||0;const hasFollowRotation=!!(offset?.active&&cfg&&(cfg.scrollAnchorRotationX||cfg.scrollAnchorRotationY||cfg.scrollAnchorRotationZ));if(hasFollowRotation){// Follow rotation changes the actual bottom of the model; keep the\n// receiver plane under that bottom instead of blindly adding scroll Y.\n_tmpBox3.copy(_computeMeshOnlyBoundingBox(st.model));st.ground.position.y=_tmpBox3.min.y-.001;}else{st.ground.position.y=(st.groundBaseY??st.ground.position.y)+(st.model._scrollAnchorAppliedY||0);}st.ground.position.z=st.groundBaseZ??0;}// #endregion\n\nexport const __FramerMetadata__ = {\"exports\":{\"_resetAppearTransformOffset\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_applyCoordinatorAutoRotate\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_applyScrollAnchorRotation\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_applyAppearTransformOffset\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_syncGroundToModel\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_isMobileInteraction\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_syncScrollAnchorAppear\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_getScrollTransformProgressOffset\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_restartAppearPlayback\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_shouldReplayAppear\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_applyScrollProgressTransform\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_findImport3DScrollContainer\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_markScrollLayoutDirty\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"applyModelTransform\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_resetScrollAnchorApplied\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_applyScrollAnchorOffset\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_getScrollLayoutRect\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_getScrollAnchorOffset\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_getScrollLayoutViewport\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_hasAppearTransformMotion\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// @ts-nocheck\n// #region 9. CONFIG RESOLUTION API\nimport{THREE}from\"https://framerusercontent.com/modules/YeYAFpMfJfcs2D9mfKFW/DDv12VyHhTY27qyXtQ6t/deps.js\";import{_DEG2RAD,_SCROLL_SMOOTHING_SPEED}from\"https://framerusercontent.com/modules/urxcwcToMwyEWH05dzo6/cUcLUwBj9Qei2vxq7YKV/constants.js\";import{_resolveScrollAnchorY}from\"https://framerusercontent.com/modules/vGvxKBAQuEl5qBVTPruS/STnvRXy146qx84LkzO8J/formatAndColor.js\";import{materialHash,lightingHash,envHash,effectsHash,appearReplayHash,sceneConfigHash}from\"https://framerusercontent.com/modules/rQr0QSqhMAFMOLIQZWpx/FeqTSuxAxSKs6XpNd793/hashes.js\";export function _getMeshAnimationDesired(anim,progress=1){const t=Math.max(0,Math.min(1,Number(progress)||0));const scalarScale=Number.isFinite(Number(anim?.scale))?Number(anim.scale):1;const position=_parseCommaVector3(anim?.position,{x:anim?.posX??0,y:anim?.posY??0,z:anim?.posZ??0});const rotation=_parseCommaVector3(anim?.rotation,{x:anim?.rotX??0,y:anim?.rotY??0,z:anim?.rotZ??0});const scale=_parseCommaVector3(anim?.scale,{x:anim?.scaleX??scalarScale,y:anim?.scaleY??scalarScale,z:anim?.scaleZ??scalarScale});return{posX:position.x*t,posY:position.y*t,posZ:position.z*t,rotX:rotation.x*t,rotY:rotation.y*t,rotZ:rotation.z*t,scaleX:1+(scale.x-1)*t,scaleY:1+(scale.y-1)*t,scaleZ:1+(scale.z-1)*t,opacity:1+((anim?.opacity??1)-1)*t};}export function _getObjectEventTransform(config,prefix){const position=_parseCommaVector3(config?.[`${prefix}Position`],{x:0,y:0,z:0});const rotation=_parseCommaVector3(config?.[`${prefix}Rotation`],{x:0,y:0,z:0});const scaleValue=config?.[`${prefix}Scale`];const scalarScale=Number(scaleValue);const scale=scaleValue!==\"\"&&Number.isFinite(scalarScale)?{x:scalarScale,y:scalarScale,z:scalarScale}:_parseCommaVector3(scaleValue,{x:1,y:1,z:1});return{position,rotation,scale};}export function _getObjectEventHoverBaseTransform(obj){if(!obj)return null;obj.userData=obj.userData||{};if(!obj.userData.__import3DHoverBaseTransform){obj.userData.__import3DHoverBaseTransform={position:obj.position.clone(),rotation:obj.rotation.clone(),scale:obj.scale.clone()};}const base=obj.userData.__import3DHoverBaseTransform;return{position:base.position.clone(),rotation:base.rotation.clone(),scale:base.scale.clone()};}export function _clearObjectEventHoverBaseTransform(obj){if(!obj?.userData)return;delete obj.userData.__import3DHoverBaseTransform;}export function _makeObjectEventTransformTargets(obj,config,prefix){const transform=_getObjectEventTransform(config,prefix);const hoverBase=prefix===\"hoverTransform\"?_getObjectEventHoverBaseTransform(obj):null;const origPosition=hoverBase?.position??obj.position.clone();const origRotation=hoverBase?.rotation??obj.rotation.clone();const origScale=hoverBase?.scale??obj.scale.clone();return{origPosition,origRotation,origScale,targetPosition:origPosition.clone().add(new THREE.Vector3(transform.position.x,transform.position.y,transform.position.z)),targetRotation:new THREE.Euler(origRotation.x+transform.rotation.x*_DEG2RAD,origRotation.y+transform.rotation.y*_DEG2RAD,origRotation.z+transform.rotation.z*_DEG2RAD,origRotation.order),targetScale:new THREE.Vector3(origScale.x*Math.max(.001,transform.scale.x),origScale.y*Math.max(.001,transform.scale.y),origScale.z*Math.max(.001,transform.scale.z))};}export function _resolveResponsiveTransform(transform,useMobile){return resolveThreeJSRuntimeTransform(transform,{useMobile});}export function _resolveResponsivePosition(position,useMobile){return resolveThreeJSRuntimePosition(position,{useMobile});}export function _hasOwnProp(obj,key){return!!obj&&Object.prototype.hasOwnProperty.call(obj,key);}export function _mergeTopLevelTransformControls(props,transform={}){const merged={...transform||{}};if(_hasOwnProp(props,\"modelScale\"))merged.scale=props.modelScale;if(_hasOwnProp(props,\"modelPosition\"))merged.position=props.modelPosition;if(_hasOwnProp(props,\"modelRotation\"))merged.rotation=props.modelRotation;return merged;}export function _mergeTopLevelAppearControls(props){const dissolve={...props?.dissolveTransition||{}};const transform={...dissolve.transform||{}};if(_hasOwnProp(props,\"appearReplay\"))dissolve.replay=props.appearReplay;if(_hasOwnProp(props,\"appearTransformScale\"))transform.scale=props.appearTransformScale;if(_hasOwnProp(props,\"appearTransformPosition\"))transform.position=props.appearTransformPosition;if(_hasOwnProp(props,\"appearTransformRotation\"))transform.rotation=props.appearTransformRotation;return{...dissolve,transform};}export function _mergeTopLevelScrollTransformControls(props){const position=props?.position||{};const scrollTarget={...position.scrollTarget||{}};const mobileScrollTarget={...position.mobileScrollTarget||{}};position.scrollTransform=true;if(_hasOwnProp(props,\"scrollTransformMatch\"))position.scrollTransformMatch=props.scrollTransformMatch;if(_hasOwnProp(props,\"scrollTransformAnchor\"))position.scrollAnchorY=props.scrollTransformAnchor;if(_hasOwnProp(props,\"scrollTransformScale\"))scrollTarget.scale=props.scrollTransformScale;if(_hasOwnProp(props,\"scrollTransformPosition\"))scrollTarget.position=props.scrollTransformPosition;if(_hasOwnProp(props,\"scrollTransformRotation\"))scrollTarget.rotation=props.scrollTransformRotation;return{...position,scrollTarget,mobileScrollTarget};}export function _mergeTopLevelRuntimeControls(props,transform={}){const isRoleGroup=props?.role===\"group\";return{...props,asGroup:isRoleGroup||!!props?.asGroup,transform:_mergeTopLevelTransformControls(props,transform),dissolveTransition:_mergeTopLevelAppearControls(props),position:_mergeTopLevelScrollTransformControls(props)};}export function _parseCommaVector3(value,fallback={x:0,y:0,z:0}){if(Array.isArray(value)){return{x:Number.isFinite(Number(value[0]))?Number(value[0]):fallback.x,y:Number.isFinite(Number(value[1]))?Number(value[1]):fallback.y,z:Number.isFinite(Number(value[2]))?Number(value[2]):fallback.z};}if(value&&typeof value===\"object\"){return{x:Number.isFinite(Number(value.x))?Number(value.x):fallback.x,y:Number.isFinite(Number(value.y))?Number(value.y):fallback.y,z:Number.isFinite(Number(value.z))?Number(value.z):fallback.z};}if(typeof value!==\"string\")return fallback;const parts=value.trim().split(/[\\s,]+/).map(part=>Number(part));return{x:Number.isFinite(parts[0])?parts[0]:fallback.x,y:Number.isFinite(parts[1])?parts[1]:fallback.y,z:Number.isFinite(parts[2])?parts[2]:fallback.z};}export function resolveThreeJSRuntimeTransform(transform,options={}){const width=typeof options===\"number\"?options:Number(options?.width||0);const forcedMobile=typeof options===\"boolean\"?options:options?.useMobile;const desktop=transform?.desktop??transform??{};const breakpoint=transform?.breakpoint??768;const useMobile=forcedMobile!==undefined?!!forcedMobile:!!width&&width<=breakpoint;const desktopPosition=_parseCommaVector3(desktop.position,{x:desktop.offX??0,y:desktop.offY??0,z:desktop.offZ??0});const desktopRotation=_parseCommaVector3(desktop.rotation,{x:desktop.rotX??0,y:desktop.rotY??0,z:desktop.rotZ??0});const desktopResolved={...desktop,offX:desktopPosition.x,offY:desktopPosition.y,offZ:desktopPosition.z,rotX:desktopRotation.x,rotY:desktopRotation.y,rotZ:desktopRotation.z};if(!useMobile)return desktopResolved;const nestedMobile=transform?.mobile??{};const mobilePosition=_parseCommaVector3(transform?.mobilePosition??nestedMobile.position,{x:transform?.mobileOffX??nestedMobile.offX,y:transform?.mobileOffY??nestedMobile.offY,z:transform?.mobileOffZ??nestedMobile.offZ});const mobileRotation=_parseCommaVector3(transform?.mobileRotation??nestedMobile.rotation,{x:transform?.mobileRotX??nestedMobile.rotX,y:transform?.mobileRotY??nestedMobile.rotY,z:transform?.mobileRotZ??nestedMobile.rotZ});const mobile={enabled:transform?.mobileEnabled??nestedMobile.enabled,scale:transform?.mobileScale??nestedMobile.scale,offX:mobilePosition.x,offY:mobilePosition.y,offZ:mobilePosition.z,rotX:mobileRotation.x,rotY:mobileRotation.y,rotZ:mobileRotation.z};if(!mobile.enabled)return desktopResolved;return{...desktopResolved,...mobile,scale:mobile.scale??desktopResolved.scale,offX:mobile.offX??desktopResolved.offX,offY:mobile.offY??desktopResolved.offY,offZ:mobile.offZ??desktopResolved.offZ,rotX:mobile.rotX??desktopResolved.rotX,rotY:mobile.rotY??desktopResolved.rotY,rotZ:mobile.rotZ??desktopResolved.rotZ};}export function resolveThreeJSRuntimeSubSceneItem(item){if(!item)return item;const position=_parseCommaVector3(item.position,{x:item.offX??0,y:item.offY??0,z:item.offZ??0});const rotation=_parseCommaVector3(item.rotation,{x:item.rotX??0,y:item.rotY??0,z:item.rotZ??0});return{...item,offX:position.x,offY:position.y,offZ:position.z,rotX:rotation.x,rotY:rotation.y,rotZ:rotation.z};}export function resolveThreeJSRuntimeMeshAnimationItem(item){if(!item)return item;const desired=_getMeshAnimationDesired(item);return{...item,position:{x:desired.posX,y:desired.posY,z:desired.posZ},rotation:{x:desired.rotX,y:desired.rotY,z:desired.rotZ},scale:{x:desired.scaleX,y:desired.scaleY,z:desired.scaleZ},posX:desired.posX,posY:desired.posY,posZ:desired.posZ,rotX:desired.rotX,rotY:desired.rotY,rotZ:desired.rotZ,scaleX:desired.scaleX,scaleY:desired.scaleY,scaleZ:desired.scaleZ};}export function resolveThreeJSRuntimeObjectEventItem(item){if(!item)return item;const click=item.click||{};const hover=item.hover||{};const press=item.press||{};const interaction=item.interaction||{};const drag=item.drag||{};const scroll=item.scroll||{};const clickEnabled=click.enabled===true;const hoverEnabled=hover.enabled===true;const pressEnabled=press.enabled===true;const interactionEnabled=interaction.enabled===true;const dragEnabled=drag.enabled===true;const scrollEnabled=scroll.enabled===true;let resolvedHoverEffect=\"none\";if(hoverEnabled){resolvedHoverEffect=hover.effect;if(!resolvedHoverEffect||resolvedHoverEffect===\"none\"){const transformScaleVal=hover.transformScale;const transformPositionVal=hover.transformPosition;const transformRotationVal=hover.transformRotation;const hoverScaleVal=hover.scale;const hasTransform=transformScaleVal!==undefined&&Number(transformScaleVal)!==1||transformPositionVal!==undefined&&transformPositionVal!==\"0,0,0\"||transformRotationVal!==undefined&&transformRotationVal!==\"0,0,0\";const hasScale=hoverScaleVal!==undefined&&Number(hoverScaleVal)!==1&&Number(hoverScaleVal)!==0;if(hasTransform){resolvedHoverEffect=\"transform\";}else if(hasScale){resolvedHoverEffect=\"scale\";}else{resolvedHoverEffect=\"highlight\";}}}return{...item,__hasInteractionEvent:clickEnabled||hoverEnabled||pressEnabled||interactionEnabled||dragEnabled||scrollEnabled,clickAction:clickEnabled?click.action??\"none\":\"none\",clickUrl:click.url,clickUrlNewTab:click.newTab,clickTargetMesh:click.targetObject,clickColor:click.color,clickAnimClip:click.animName,clickAnimLoop:click.animLoop,clickAnimReverse:click.animReverse,onMeshClick:click.onClick,onAnimationComplete:click.onAnimationComplete,hoverEffect:resolvedHoverEffect,hoverColor:hover.color,hoverScale:hover.scale,hoverTransformPosition:hover.transformPosition,hoverTransformRotation:hover.transformRotation,hoverTransformScale:hover.transformScale,hoverSpeed:hover.speed,cursorStyle:hover.cursor,hoverTooltip:hover.tooltip,pressEnabled,pressTransformPosition:press.transformPosition,pressTransformRotation:press.transformRotation,pressTransformScale:press.transformScale,autoRotate:interactionEnabled?interaction.autoRotate:false,meshAutoRotateSpeed:interaction.rotateSpeed,meshAutoRotateAxis:interaction.rotateAxis,mouseRotate:interactionEnabled?interaction.mouseRotate:false,meshMouseRotateIntensity:interaction.mouseRotateIntensity,onMeshEnter:hover.onEnter,onMeshLeave:hover.onLeave,draggable:dragEnabled,dragPlane:drag.plane,dragSnapBack:drag.snapBack,dragConstraint:drag.constraint,onDragStart:drag.onStart,onDragEnd:drag.onEnd,scrollEnabled};}export function _objectEventScrollAnimations(items=[]){return(items||[]).filter(item=>item?.meshName).filter(item=>item?.scroll?.enabled).map(item=>({...item.scroll||{},meshName:item.meshName,enabled:item.scroll?.enabled,scrollMatch:item.scroll?.match,scrollAnchorY:_resolveScrollAnchorY(item.scroll?.anchor,.5),scale:item.scroll?.scale,position:item.scroll?.position,rotation:item.scroll?.rotation,opacity:item.scroll?.opacity}));}export function resolveThreeJSRuntimePosition(position,options={}){const width=typeof options===\"number\"?options:Number(options?.width||0);const forcedMobile=typeof options===\"boolean\"?options:options?.useMobile;const desktop=position?.desktop??position??{};const breakpoint=position?.breakpoint??768;const useMobile=forcedMobile!==undefined?!!forcedMobile:!!width&&width<=breakpoint;if(!useMobile)return desktop;const nestedMobile=position?.mobile??{};const mobileEnabled=position?.mobileEnabled??nestedMobile.enabled;if(!mobileEnabled)return desktop;const desktopFollowTarget=desktop.followTarget??{};const desktopScrollTarget=desktop.scrollTarget??{};const mobileFollowTarget=nestedMobile.followTarget??{};const mobileScrollTarget=nestedMobile.scrollTarget??{};return{...desktop,...nestedMobile,followLayer:nestedMobile.followLayer,followMatch:nestedMobile.followMatch,transitionEnabled:nestedMobile.transitionEnabled,transitionTargetId:nestedMobile.transitionTargetId,scrollTransform:true,scrollTransformMatch:nestedMobile.scrollTransformMatch,followTarget:{...desktopFollowTarget,...mobileFollowTarget},scrollTarget:{...desktopScrollTarget,...mobileScrollTarget},mobileEnabled};}export function resolveThreeJSRuntimePositionConfig(props,options={}){const width=typeof options===\"number\"?options:Number(options?.width||0);const forcedMobile=typeof options===\"boolean\"?options:options?.useMobile;const position=props?.position||{};const nestedMobile=position?.mobile||{};const mobileBreakpoint=position?.breakpoint??768;const responsiveIsMobile=forcedMobile!==undefined?!!forcedMobile&&!!(position?.mobileEnabled??nestedMobile.enabled):!!width&&width<=mobileBreakpoint&&!!(position?.mobileEnabled??nestedMobile.enabled);const activePos=options?.activePosition??resolveThreeJSRuntimePosition(position,{width,useMobile:forcedMobile});const ui=props?.ui||{};const followMatch=String(activePos.followMatch??\"\").trim();const transformMatch=String(activePos.scrollTransformMatch??\"\").trim();const rawScrollTarget=activePos.scrollTarget??{};const scrollTargetPosition=_parseCommaVector3(rawScrollTarget.position,{x:rawScrollTarget.offX??0,y:rawScrollTarget.offY??0,z:rawScrollTarget.offZ??0});const scrollTargetRotation=_parseCommaVector3(rawScrollTarget.rotation,{x:rawScrollTarget.rotX??0,y:rawScrollTarget.rotY??0,z:rawScrollTarget.rotZ??0});const scrollTargetScaleRaw=rawScrollTarget.scale;const scrollTarget={offX:scrollTargetPosition.x,offY:scrollTargetPosition.y,offZ:scrollTargetPosition.z,rotX:scrollTargetRotation.x,rotY:scrollTargetRotation.y,rotZ:scrollTargetRotation.z,scale:scrollTargetScaleRaw!==undefined&&scrollTargetScaleRaw!==1?scrollTargetScaleRaw:null};const followEnabled=false;const transformEnabled=true;const transitionEnabled=false;const transitionTargetId=\"\";const anchorX=.5;const anchorY=_resolveScrollAnchorY(activePos.scrollAnchorY,.5);const followX=0;const followY=0;const followSmooth=1;return{activePosition:activePos,layoutPositionMode:activePos.mode??ui.positionMode??\"relative\",layoutLayerMatch:activePos.layerMatch??ui.positionLayerMatch??\"\",layoutTop:activePos.top??ui.positionTop??0,layoutLeft:activePos.left??ui.positionLeft??0,layoutRight:activePos.right??ui.positionRight??null,layoutBottom:activePos.bottom??ui.positionBottom??null,layoutZIndex:activePos.zIndex??ui.positionZIndex??10,followEnabled,followLayerEnabled:followEnabled,scrollAnchorEnabled:followEnabled,followMatch,scrollAnchorMatch:followMatch,transformEnabled,scrollProgressTransformEnabled:transformEnabled,transformMatch,scrollTransformAnchorMatch:transformMatch,transitionEnabled,scrollAnchorTransitionEnabled:transitionEnabled,transitionTargetId,scrollAnchorTransitionTargetId:transitionTargetId,followX,followY,followSmooth,scrollAnchorStrengthX:followX,scrollAnchorStrengthY:followY,scrollAnchorSmoothing:followSmooth,anchorX,anchorY,scrollAnchorX:anchorX,scrollAnchorY:anchorY,scrollTarget,scrollAnchorRotationX:transformEnabled?scrollTarget.rotX:0,scrollAnchorRotationY:transformEnabled?scrollTarget.rotY:0,scrollAnchorRotationZ:transformEnabled?scrollTarget.rotZ:0,scrollProgressPositionX:scrollTarget.offX,scrollProgressPositionY:scrollTarget.offY,scrollProgressPositionZ:scrollTarget.offZ,scrollProgressScale:scrollTarget.scale,responsiveIsMobile};}export function resolveThreeJSRuntimeInteractionConfig(props,options={}){const int=props?.interaction||{};const fx=props?.effects||{};const disableMouseRotation=!!options?.disableMouseRotation;const movedInteractionProp=(key,defaultValue)=>{if(!_hasOwnProp(props,key))return int[key]??defaultValue;return props[key];};const animationClip=movedInteractionProp(\"animClip\",\"\");const animationMode=String(animationClip??\"\").trim()?\"single\":\"all\";return{enableOrbitControls:int.orbit??true,enableZoom:int.zoom??false,enableAutoRotate:int.autoRotate??true,autoRotateSpeed:int.rotateSpeed??.5,enableAnimation:true,animationMode,animationClip,animationSpeed:movedInteractionProp(\"animSpeed\",1),animationBlendDuration:.32,animationLoopMode:movedInteractionProp(\"animLoopMode\",\"repeat\"),animationRestartOnSwitch:false,animationSyncPhase:true,animationWarp:false,animationModelHoverGate:int.modelHoverGate??false,animationWarmClips:true,enableMouseRotation:disableMouseRotation?false:int.mouseRotate??false,mouseRotationIntensity:int.mouseRotateIntensity??.1,enableParticles:int.particles??false,particleCount:int.particleCount??2e3,particleSize:int.particleSize??.05,particleColor:int.particleColor??\"#00ffff\",particleSpeed:int.particleSpeed??1,particleSpread:int.particleSpread??10,enableFloat:int.float??fx.float??true,floatAmplitude:int.floatAmp??fx.floatAmp??.8,floatSpeed:int.floatSpeed??fx.floatSpeed??.4,hasAnimationOnceCompleteHandler:!!props?.onAnimationOnceComplete,onAnimationOnceComplete:props?.onAnimationOnceComplete||null};}export function resolveThreeJSRuntimeConfig(props,rectWidth=0){const tr=resolveThreeJSRuntimeTransform(props?.transform||{},{width:rectWidth});const cam=props?.camera||{};const env=props?.environment||{};const int=resolveThreeJSRuntimeInteractionConfig(props);const mat=props?.material||{};const fx=props?.effects||{};const extraLights=props?.extraLights??[];const scenesRaw=props?.scenes||[];const subSceneItems=scenesRaw.map(item=>{if(!item)return item;const resolved=resolveThreeJSRuntimeSubSceneItem(item);const src=item.modelSource||\"url\";const modelUrl=src===\"file\"?item.modelFile||\"\":item.modelUrl||\"\";return{...resolved,modelUrl};});const cfg={autoMergeMeshes:props?.autoMergeMeshes??false,modelScale:tr.scale??1,modelOffsetX:tr.offX??0,modelOffsetY:tr.offY??0,modelOffsetZ:tr.offZ??0,modelRotationX:tr.rotX??0,modelRotationY:tr.rotY??0,modelRotationZ:tr.rotZ??0,cameraType:cam.cameraType??\"perspective\",cameraPositionX:cam.x??-1,cameraPositionY:cam.y??2,cameraPositionZ:cam.z??10,orthoZoom:cam.orthoZoom??1,stereoEyeSep:cam.stereoEyeSep??.064,fov:cam.fov??35,backgroundColor:env.bgColor??\"#1c1c1c\",transparentBackground:env.transparent??true,enableEnvironment:env.enabled??true,environmentType:env.type??\"procedural\",environmentPreset:env.preset??\"studio\",hdriPreset:env.hdriPreset??\"studio_small_09\",customHdriUrl:env.customUrl??\"\",environmentIntensity:env.intensity??1,showEnvironmentBackground:env.showBg??false,ambientLightIntensity:env.ambient??.5,directionalLightIntensity:env.dirIntensity??1,directionalLightColor:env.dirColor??\"#ffffff\",dirLightPosX:env.dirPosX??5,dirLightPosY:env.dirPosY??10,dirLightPosZ:env.dirPosZ??7,enableShadows:env.shadows??false,shadowMapSize:parseInt(env.shadowSize??\"1024\",10)||1024,shadowBias:env.shadowBias??-1e-4,shadowNormalBias:env.shadowNormalBias??.02,extraLights,...int,materialPreset:mat.preset??\"none\",sketchBaseColor:mat.sketchBaseColor??\"#f4f2ec\",sketchLineColor:mat.sketchLineColor??\"#050505\",sketchLineThickness:mat.sketchLineThickness??.045,sketchSteps:mat.sketchSteps??3,animeLineThickness:mat.animeLineThickness??.06,animeLineColor:mat.animeLineColor??\"#050505\",animeLineEmissiveColor:mat.animeLineEmissiveColor??\"#ffffff\",animeLineEmissiveIntensity:mat.animeLineEmissiveIntensity??.08,overrideMaterial:mat.override??false,metalness:mat.metalness??0,roughness:mat.roughness??.5,clearcoat:mat.clearcoat??0,clearcoatRoughness:mat.clearcoatRoughness??0,transmission:mat.transmission??0,thickness:mat.thickness??0,ior:mat.ior??1.5,iridescence:mat.iridescence??0,iridescenceIOR:mat.iridescenceIOR??1.3,sheen:mat.sheen??0,sheenRoughness:mat.sheenRoughness??.3,sheenColor:mat.sheenColor??\"#ffffff\",envMapIntensity:mat.envMapIntensity??1,reflectivity:mat.reflectivity??.5,emissiveIntensity:mat.emissiveIntensity??0,emissiveColor:mat.emissiveColor??\"#000000\",opacity:mat.opacity??1,wireframe:mat.wireframe??false,materialTransitionDuration:mat.transitionDuration??.3,bloomEnabled:fx.bloom??false,bloomStrength:fx.bloomStr??.5,bloomThreshold:fx.bloomThresh??.8,bloomRadius:fx.bloomRad??.5,toneMapping:fx.toneMapping??\"aces\",exposure:fx.exposure??1.2,enableFXAA:fx.fxaa??true,enableColorGrading:fx.colorGrading??false,brightness:fx.brightness??0,contrast:fx.contrast??1,saturation:fx.saturation??1,enableVignette:fx.vignette??false,vignetteOffset:fx.vigOffset??1,vignetteDarkness:fx.vigDark??1.2,enableChromaticAberration:fx.chromAberr??false,chromaticAberrationStrength:fx.chromStr??.005,enableFilmGrain:fx.filmGrain??false,filmGrainIntensity:fx.grainInt??.04,enablePixelate:fx.pixelate??false,pixelateShape:fx.pixelShape??\"rectangle\",pixelateSize:fx.pixelSize??23,pixelateStretch:fx.pixelStretch??0,// Pixelate keeps the source colors and uses solid cells by default.\n// Keep the fields in the resolved config for compatibility with older\n// saved component data, but do not allow legacy values to re-enable\n// the removed gap/color-trim behavior.\npixelateGap:0,pixelateColorTrim:0,pixelateAverageColor:fx.pixelAverageColor??42,pixelateDissolveMode:fx.pixelDissolveMode??\"dropout\",pixelateDissolve:fx.pixelDissolve??0,pixelateFalloff:fx.pixelFalloff??0,pixelateKnockout:fx.pixelKnockout??true,// Kept as compatibility fields for older saved component data.\npixelateNormalEdgeStrength:fx.pixelNormalEdge??.3,pixelateDepthEdgeStrength:fx.pixelDepthEdge??.4,enableSSAO:fx.ssao??false,ssaoRadius:fx.ssaoRadius??8,ssaoMinDistance:fx.ssaoMinDist??.001,ssaoMaxDistance:fx.ssaoMaxDist??.1,enableDOF:cam.dof??false,dofFocus:cam.dofFocus??10,dofAperture:cam.dofAperture??.025,dofMaxBlur:cam.dofMaxBlur??.01,subSceneItems};cfg._materialHash=[cfg.materialPreset,cfg.overrideMaterial,cfg.metalness,cfg.roughness,cfg.clearcoat,cfg.clearcoatRoughness,cfg.transmission,cfg.thickness,cfg.ior,cfg.iridescence,cfg.iridescenceIOR,cfg.sheen,cfg.sheenRoughness,cfg.sheenColor,cfg.envMapIntensity,cfg.emissiveIntensity,cfg.emissiveColor,cfg.reflectivity,cfg.opacity,cfg.wireframe].join(\"|\");cfg._lightingHash=[cfg.ambientLightIntensity,cfg.directionalLightIntensity,cfg.directionalLightColor,cfg.dirLightPosX,cfg.dirLightPosY,cfg.dirLightPosZ,cfg.enableShadows,cfg.shadowMapSize,cfg.shadowBias,cfg.shadowNormalBias,JSON.stringify((cfg.extraLights||[]).map(light=>({enabled:light?.enabled,type:light?.lightType,color:light?.color,intensity:light?.intensity,posX:light?.posX,posY:light?.posY,posZ:light?.posZ,distance:light?.distance,decay:light?.decay,angle:light?.angle,penumbra:light?.penumbra,targetX:light?.targetX,targetY:light?.targetY,targetZ:light?.targetZ,castShadow:light?.castShadow})))].join(\"|\");cfg._envHash=[cfg.enableEnvironment,cfg.environmentType,cfg.environmentPreset,cfg.hdriPreset,cfg.customHdriUrl,cfg.environmentIntensity,cfg.showEnvironmentBackground,cfg.transparentBackground,cfg.backgroundColor].join(\"|\");cfg._effectsHash=[cfg.bloomEnabled,cfg.bloomStrength,cfg.bloomThreshold,cfg.bloomRadius,cfg.toneMapping,cfg.exposure,cfg.enableFXAA,cfg.enableColorGrading,cfg.brightness,cfg.contrast,cfg.saturation,cfg.enableVignette,cfg.vignetteOffset,cfg.vignetteDarkness,cfg.enableChromaticAberration,cfg.chromaticAberrationStrength,cfg.enableFilmGrain,cfg.filmGrainIntensity,cfg.enablePixelate,cfg.pixelateShape,cfg.pixelateSize,cfg.pixelateStretch,cfg.pixelateGap,cfg.pixelateColorTrim,cfg.pixelateAverageColor,cfg.pixelateDissolveMode,cfg.pixelateDissolve,cfg.pixelateFalloff,cfg.pixelateKnockout,cfg.enableSSAO,cfg.ssaoRadius,cfg.ssaoMinDistance,cfg.ssaoMaxDistance,cfg.enableDOF,cfg.dofFocus,cfg.dofAperture,cfg.dofMaxBlur].join(\"|\");cfg._sceneConfigHash=[cfg._materialHash,cfg._lightingHash,cfg._envHash,cfg._effectsHash].join(\"||\");return cfg;}export function resolveThreeJSRuntimeAppearConfig(props){const{dissolveTransition:dissolve={}}=props;const transform=dissolve.transform??{};const noise=dissolve.noise??{};const edge=dissolve.edge??{};const particles=dissolve.particles??{};const duration=dissolve.duration??1.5;const appearPosition=_parseCommaVector3(transform.position,{x:transform.offX??0,y:transform.offY??0,z:transform.offZ??0});const appearRotation=_parseCommaVector3(transform.rotation,{x:transform.rotX??0,y:transform.rotY??0,z:transform.rotZ??0});const offX=appearPosition.x;const offY=appearPosition.y;const offZ=appearPosition.z;const scale=transform.scale??1;const rotX=appearRotation.x;const rotY=appearRotation.y;const rotZ=appearRotation.z;const blurReveal=dissolve.blurReveal??false;const blurRevealIntensity=dissolve.blurIntensity??12;const blurRevealDuration=dissolve.blurDuration??.8;const noiseScale=noise.noiseScale??.25;const amplitude=noise.amplitude??16;const edgeWidth=edge.edgeWidth??.8;const emissiveColor=edge.emissiveColor??\"#4d9bff\";const emissiveIntensity=edge.emissiveIntensity??3;return{dissolveEnabled:dissolve.enabled??true,appearReplay:props?.appearReplay??dissolve.replay??true,duration,dissolveDuration:duration,offX,offY,offZ,scale,rotX,rotY,rotZ,appearOffsetX:offX,appearOffsetY:offY,appearOffsetZ:offZ,appearScale:scale,appearRotateX:rotX,appearRotateY:rotY,appearRotateZ:rotZ,blurReveal,blurRevealIntensity,blurRevealDuration,noiseScale,amplitude,dissolveNoiseScale:noiseScale,dissolveAmplitude:amplitude,edgeWidth,emissiveColor,emissiveIntensity,dissolveEdgeWidth:edgeWidth,dissolveEmissiveColor:emissiveColor,dissolveEmissiveIntensity:emissiveIntensity,dissolveParticlesEnabled:particles.enabled??true,dissolveParticleBaseSize:particles.baseSize??80,dissolveParticleColor:particles.color??\"#4d9bff\",dissolveParticleSpeed:particles.speed??.02,dissolveParticleWaveAmp:particles.waveAmp??0,dissolveParticleVelX:particles.velX??2.5,dissolveParticleVelY:particles.velY??2,dissolveParticleMaxCount:particles.maxCount??8e3,progressiveLoading:dissolve.progressive??false,progressiveFadeDuration:dissolve.progressiveFade??.8};}export function buildThreeJSRuntimeSettings(props,options={}){const rectWidth=options?.rectWidth??options?.width??options?.clientWidth??0;const runtimeCfg=resolveThreeJSRuntimeConfig(props,rectWidth);const positionCfg=resolveThreeJSRuntimePositionConfig(props,{width:rectWidth,useMobile:options?.useMobile});const appearCfg=resolveThreeJSRuntimeAppearConfig(props);const perf=props?.performance||{};const ui=props?.ui||{};const meshInteractionsRaw=(props?.meshInteractions??[]).map(resolveThreeJSRuntimeObjectEventItem);const meshAnimationsRaw=[...props?.meshAnimations??[],..._objectEventScrollAnimations(props?.meshInteractions??[])].map(resolveThreeJSRuntimeMeshAnimationItem);const meshAnimationItems=(meshAnimationsRaw||[]).filter(anim=>anim?.enabled&&anim?.meshName);const meshAnimationsLookupKey=JSON.stringify(meshAnimationItems.map(anim=>String(anim.meshName).trim().toLowerCase()));const meshInteractionItems=(meshInteractionsRaw||[]).filter(ic=>ic?.meshName&&(ic.__hasInteractionEvent??true));const meshInteractionTargetNames=meshInteractionItems.map(ic=>String(ic.meshName).trim().toLowerCase());const meshInteractionLookupKey=JSON.stringify(meshInteractionTargetNames);const meshInteractionRuntimeKey=JSON.stringify(meshInteractionItems.map(ic=>({meshName:ic?.meshName,clickAction:ic?.clickAction,clickUrl:ic?.clickUrl,clickTargetMesh:ic?.clickTargetMesh,clickColor:ic?.clickColor,clickAnimClip:ic?.clickAnimClip,clickAnimLoop:ic?.clickAnimLoop,clickAnimReverse:ic?.clickAnimReverse,autoRotate:ic?.autoRotate,meshAutoRotateSpeed:ic?.meshAutoRotateSpeed,meshAutoRotateAxis:ic?.meshAutoRotateAxis,mouseRotate:ic?.mouseRotate,meshMouseRotateIntensity:ic?.meshMouseRotateIntensity,hoverEffect:ic?.hoverEffect,hoverColor:ic?.hoverColor,hoverScale:ic?.hoverScale,hoverTransformPosition:ic?.hoverTransformPosition,hoverTransformRotation:ic?.hoverTransformRotation,hoverTransformScale:ic?.hoverTransformScale,hoverSpeed:ic?.hoverSpeed,pressEnabled:ic?.pressEnabled,pressTransformPosition:ic?.pressTransformPosition,pressTransformRotation:ic?.pressTransformRotation,pressTransformScale:ic?.pressTransformScale,draggable:ic?.draggable,dragPlane:ic?.dragPlane,dragSnapBack:ic?.dragSnapBack,dragConstraint:ic?.dragConstraint})));const qualityMode=options?.qualityMode||\"balanced\";const isMobile=!!positionCfg.responsiveIsMobile;const performanceMode=perf.mode??ui.performanceMode??true;const performanceMaxPixelCount=perf.maxPixelCount??ui.performanceMaxPixelCount??3e6;const useMobilePerfProfile=performanceMode&&isMobile;const isPerformance=qualityMode===\"performance\";const isBalanced=qualityMode===\"balanced\";const qualityMaxPixelBudget=isPerformance?isMobile?12e5:18e5:isBalanced?isMobile?18e5:24e5:isMobile?18e5:performanceMaxPixelCount;const effectivePerformanceMaxPixelCount=qualityMaxPixelBudget>0?performanceMaxPixelCount>0?Math.min(performanceMaxPixelCount,qualityMaxPixelBudget):qualityMaxPixelBudget:performanceMaxPixelCount;const effectiveShadowMapSize=isPerformance?Math.min(runtimeCfg.shadowMapSize,256):isBalanced||useMobilePerfProfile?Math.min(runtimeCfg.shadowMapSize,512):runtimeCfg.shadowMapSize;const effectiveBloomEnabled=isPerformance?false:runtimeCfg.bloomEnabled;const effectiveEnableSSAO=isPerformance||isBalanced||useMobilePerfProfile?false:runtimeCfg.enableSSAO;const effectiveEnableDOF=isPerformance||isBalanced||useMobilePerfProfile?false:runtimeCfg.enableDOF;const effectiveEnableChromaticAberration=isPerformance||useMobilePerfProfile?false:runtimeCfg.enableChromaticAberration;const effectiveEnableFilmGrain=isPerformance||useMobilePerfProfile?false:runtimeCfg.enableFilmGrain;const effectiveParticleCount=isPerformance?Math.min(runtimeCfg.particleCount,500):useMobilePerfProfile||isBalanced?Math.min(runtimeCfg.particleCount,1e3):runtimeCfg.particleCount;const effectiveDissolveParticleMaxCount=isPerformance?Math.min(appearCfg.dissolveParticleMaxCount,1200):useMobilePerfProfile||isBalanced?Math.min(appearCfg.dissolveParticleMaxCount,3e3):appearCfg.dissolveParticleMaxCount;const cfg={...runtimeCfg,...positionCfg,...appearCfg,extraLights:runtimeCfg.extraLights??props?.extraLights??[],shadowMapSize:effectiveShadowMapSize,bloomEnabled:effectiveBloomEnabled,enableSSAO:effectiveEnableSSAO,enableDOF:effectiveEnableDOF,enableChromaticAberration:effectiveEnableChromaticAberration,enableFilmGrain:effectiveEnableFilmGrain,particleCount:effectiveParticleCount,dissolveParticleMaxCount:effectiveDissolveParticleMaxCount,performanceMode,webglActive:perf.webglActive??ui.webglActive??true,performanceDprCap:options?.dprCapDesktop??perf.dprCap??ui.performanceDprCap??(performanceMode?1.5:2),performanceMobileDprCap:options?.dprCapMobile??perf.mobileDprCap??ui.performanceMobileDprCap??1.5,performanceMaxPixelCount:effectivePerformanceMaxPixelCount,performanceLazyWebgl:perf.lazyWebgl??ui.performanceLazyWebgl??true,performancePauseHidden:options?.pauseHidden??perf.pauseHidden??ui.performancePauseHidden??true,performancePauseOffscreen:options?.pauseOffscreen??perf.pauseOffscreen??ui.performancePauseOffscreen??true,performanceStats:perf.stats??ui.performanceStats??false,performanceAntialias:isPerformance?false:perf.antialias??ui.performanceAntialias??!performanceMode,showControls:ui.showHints??true,showMeshHelper:ui.meshHelper??false,showStatsMonitor:ui.statsMonitor??false,statsMonitorPanel:ui.statsPanel??\"fps\",showGrid:ui.showGrid??false,showGridSize:ui.gridSize??10,showGridDivisions:ui.gridDivisions??10,showGridColor1:ui.gridColor1??\"rgba(255,255,255,0.25)\",showGridColor2:ui.gridColor2??\"rgba(255,255,255,0.1)\",showAxes:ui.showAxes??false,showAxesSize:ui.axesSize??3,showModelAxes:ui.showModelAxes??false,showModelAxesSize:ui.modelAxesSize??2,stopMotionInEditor:ui.stopInEditor??false,enableScrollAnimation:true,scrollSmoothing:_SCROLL_SMOOTHING_SPEED,responsiveIsMobile:isMobile,meshAnimations:meshAnimationsRaw,meshAnimationItems,hasEnabledMeshAnimations:meshAnimationItems.length>0,meshAnimationLookupKey:meshAnimationsLookupKey,meshInteractions:meshInteractionsRaw,meshInteractionItems,meshInteractionTargetNames,hasEnabledMeshInteractions:meshInteractionItems.length>0,hasDraggableMeshInteractions:meshInteractionItems.some(ic=>!!ic?.draggable),meshInteractionLookupKey,meshInteractionRuntimeKey};cfg._materialHash=materialHash(cfg);cfg._lightingHash=lightingHash(cfg);cfg._envHash=envHash(cfg);cfg._effectsHash=effectsHash(cfg);cfg._sceneConfigHash=sceneConfigHash(cfg);cfg._animationReplayHash=appearReplayHash(cfg);return cfg;}// #endregion\n\nexport const __FramerMetadata__ = {\"exports\":{\"_getObjectEventTransform\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_makeObjectEventTransformTargets\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_mergeTopLevelRuntimeControls\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"resolveThreeJSRuntimeObjectEventItem\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"resolveThreeJSRuntimePositionConfig\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_mergeTopLevelTransformControls\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"resolveThreeJSRuntimePosition\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"resolveThreeJSRuntimeSubSceneItem\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_mergeTopLevelAppearControls\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_clearObjectEventHoverBaseTransform\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_parseCommaVector3\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_mergeTopLevelScrollTransformControls\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"resolveThreeJSRuntimeMeshAnimationItem\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"buildThreeJSRuntimeSettings\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_resolveResponsiveTransform\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_resolveResponsivePosition\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_objectEventScrollAnimations\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_getObjectEventHoverBaseTransform\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_hasOwnProp\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"resolveThreeJSRuntimeConfig\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"resolveThreeJSRuntimeInteractionConfig\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"resolveThreeJSRuntimeAppearConfig\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"resolveThreeJSRuntimeTransform\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_getMeshAnimationDesired\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// @ts-nocheck\n// #region 23. SLOT COMPONENT\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{THREE,startTransition,useEffect,useRef,useState,useId,createPortal,RenderTarget,OrbitControls,_loadPostFxModules}from\"https://framerusercontent.com/modules/YeYAFpMfJfcs2D9mfKFW/DDv12VyHhTY27qyXtQ6t/deps.js\";import{_ORTHO_FRUSTUM,_DEG2RAD,_SCROLL_SMOOTHING_SPEED,TONE_MAPPINGS}from\"https://framerusercontent.com/modules/urxcwcToMwyEWH05dzo6/cUcLUwBj9Qei2vxq7YKV/constants.js\";import{_getImport3DBridgeState,_emitImport3DBridge,_subscribeImport3DBridge,_snapshotImport3DBridge}from\"https://framerusercontent.com/modules/p9UElCqUo2EhVe2TH3ba/IJdmEZdowZxtu0vC2vAr/bridge.js\";import{_webglCoordinator}from\"https://framerusercontent.com/modules/EXMWoXo4BL9Mi3BANYjN/dfPpXZHxlbT43jn2Ry5l/coordinator.js\";import{_debugImport3DRendererEvent,_isImport3DRendererBridgeActive}from\"https://framerusercontent.com/modules/D31ZVnHevwcx09NbgNlK/gAH5hQZ6zgGecf46mlbw/diagnostics.js\";import{VignetteShader,ChromaticAberrationShader,FilmGrainShader,AlphaRestoreShader,AlphaSavePass,ColorGradingShader,createFramerTilePixelatePass,applyEffectsChanges}from\"https://framerusercontent.com/modules/KDgXKUZDtOlVMTgk4xzC/l9KsabZZFC3I7R1x10GN/postprocessing.js\";import{_tmpVec3A,_tmpVec3B,_tmpBox3,_tmpStereoSize,_modelCache,_preloadInFlight,_origMaterialBackups}from\"https://framerusercontent.com/modules/NDTJ5ADDpfKTGmrlCCF2/Sku50RC96WdXH0Q17gRv/state.js\";import{detectFormat,detectImageFormat,parseColor,_matchesLayerSelector}from\"https://framerusercontent.com/modules/vGvxKBAQuEl5qBVTPruS/STnvRXy146qx84LkzO8J/formatAndColor.js\";import{_findAnimationClip,_clearAnimationOnceCompleteListener,_warmAnimationActions,_playAnimations,_canAdvanceAnimationMixer}from\"https://framerusercontent.com/modules/ZMoE0e8TTc5hP09MepLT/EF6CGI7iUmZM5FG6LLYY/animationUtils.js\";import{_releaseEnvironmentMap,applyEnvironmentChanges}from\"https://framerusercontent.com/modules/zwopdMIjvlpx1ZSF2U25/4sJz6JchqGmISWzqGeGT/environment.js\";import{applyLightingChanges}from\"https://framerusercontent.com/modules/UATfUROvEvWK8jHDY9bj/Q1SBg2DsVIYCYR1cvaYG/lighting.js\";import{_getAutoFitRatio,_getOptimizedAnisotropy,_getOptimizedRenderMetrics,_runtimeNeedsPostFx,_postFxPipelineSignature,getFramerRuntimeMode}from\"https://framerusercontent.com/modules/OcrnvbBWJ00imtCNulvV/ECeJBxCrq22P47xccZti/renderMetrics.js\";import{_removeStatsMonitor,_syncStatsMonitor}from\"https://framerusercontent.com/modules/EIWij9Oh1iXGinLQwMna/EIjbhJPKJTRs6ZavV2WL/statsMonitor.js\";import{_sanitizeAnimationClipsForObject,_computeMeshOnlyBoundingBox}from\"https://framerusercontent.com/modules/zmx71qwu2TbY9YO9I2f5/5N7CD3udL4rE1txQaU17/object3DUtils.js\";import{getSharedGLTFLoader,getSharedFBXLoader,_loadFromZip,_cloneCachedModel,_disposeMaterialsOnly,_disposeModelFull,_loadModelDirect,disposeSubScene,_cleanupSkinnedScene}from\"https://framerusercontent.com/modules/jz5beOl0SxBa2FLaAvkX/GRqx0bNbnn5oQtMBqM55/modelLoading.js\";import{createDissolveParticles,updateDissolveParticles,syncParticleAttributes,disposeDissolveParticles,mapDissolveProgress,_storeAndReplacePlaceholder,_preloadTexturesProgressive,createDissolveMaterial,_startDissolveInForModel,loadImageAsSubScene,_backupMaterial,_restoreMaterial,_progressiveOrigMaterials,_restoreProgressiveMaterials,setModelFade,applyMaterialOverride}from\"https://framerusercontent.com/modules/TeSbfetwTP8U0VZWwTlf/TweTf7k9xt4eaTedtgHr/materialSystem.js\";import{_markScrollLayoutDirty,_getScrollAnchorOffset,_getScrollTransformProgressOffset,_syncScrollAnchorAppear,_hasAppearTransformMotion,_shouldReplayAppear,_restartAppearPlayback,_applyAppearTransformOffset,_resetAppearTransformOffset,_applyScrollAnchorOffset,_applyScrollAnchorRotation,_applyScrollProgressTransform,_resetScrollAnchorApplied,_applyCoordinatorAutoRotate,_isMobileInteraction,_findImport3DScrollContainer,applyModelTransform,_syncGroundToModel}from\"https://framerusercontent.com/modules/32Efoe7eFeuyoLuzx9ZW/ungKBsUvu95nwLDbDMw7/sceneTransforms.js\";import{_syncModelHoverGatedAnimations,_setFadeAllScenes,_clearFadeCacheAllScenes,_syncSceneHashTrackers,_playConfiguredAnimation,_applySceneConfigChanges,_computeBVHForModel}from\"https://framerusercontent.com/modules/D0qFzYPgVWq5uzUVdTNq/6cvZ9EORoJ20sh3iSQXN/runtimeGlue.js\";import{_getMeshAnimationDesired,_clearObjectEventHoverBaseTransform,_makeObjectEventTransformTargets,_objectEventScrollAnimations,_resolveResponsivePosition,_resolveResponsiveTransform,_mergeTopLevelRuntimeControls,buildThreeJSRuntimeSettings,resolveThreeJSRuntimeAppearConfig,resolveThreeJSRuntimeConfig,resolveThreeJSRuntimeInteractionConfig,resolveThreeJSRuntimeMeshAnimationItem,resolveThreeJSRuntimeObjectEventItem,resolveThreeJSRuntimePositionConfig,resolveThreeJSRuntimeSubSceneItem}from\"https://framerusercontent.com/modules/eBQiBPIUI8umJseUYpvB/UbPSA4sy4TxWfG3kVyfR/configResolution.js\";import{materialHash,lightingHash,envHash,effectsHash,appearReplayHash}from\"https://framerusercontent.com/modules/rQr0QSqhMAFMOLIQZWpx/FeqTSuxAxSKs6XpNd793/hashes.js\";import{_rootTooltipHandler,_setRootTooltipHandler,_tmpSubScenePivotEuler,_tmpSubScenePivotQuat,_tmpSubScenePivotOffset}from\"https://framerusercontent.com/modules/NDTJ5ADDpfKTGmrlCCF2/Sku50RC96WdXH0Q17gRv/state.js\";import{easeInOutQuad}from\"https://framerusercontent.com/modules/urxcwcToMwyEWH05dzo6/cUcLUwBj9Qei2vxq7YKV/constants.js\";import{_getObjectEventScrollProgress}from\"https://framerusercontent.com/modules/vGvxKBAQuEl5qBVTPruS/STnvRXy146qx84LkzO8J/formatAndColor.js\";import{_getOptimizedDpr}from\"https://framerusercontent.com/modules/OcrnvbBWJ00imtCNulvV/ECeJBxCrq22P47xccZti/renderMetrics.js\";import{sceneConfigHash}from\"https://framerusercontent.com/modules/rQr0QSqhMAFMOLIQZWpx/FeqTSuxAxSKs6XpNd793/hashes.js\";import{_getAnimationBlendOptions}from\"https://framerusercontent.com/modules/ZMoE0e8TTc5hP09MepLT/EF6CGI7iUmZM5FG6LLYY/animationUtils.js\";let _lastLoadedModelUrl=null;/** Track how many preload requests were initiated vs completed in a batch */let _preloadBatchTotal=0;let _preloadBatchDone=0;/**\n * Synthetic progress animation for when Content-Length is missing\n * Uses asymptotic curve: progress approaches 90% but never reaches it.\n * Gives visual feedback on slow networks where real progress events don't fire.\n */let _syntheticProgressTimer=null;let _syntheticProgressStart=0;let _hasRealProgress=false;function _startSyntheticProgress(taskId=\"default\"){_hasRealProgress=false;_syntheticProgressStart=performance.now();if(_syntheticProgressTimer)cancelAnimationFrame(_syntheticProgressTimer);const tick=()=>{if(_hasRealProgress)return;// real progress took over\nconst mls=typeof window!==\"undefined\"?window.__modelLoadingState:null;if(!mls||!mls.isLoading||mls.isComplete)return;// Asymptotic curve: 1 - e^(-t/k), capped at 0.85\n// k=8 means ~63% at 8s, ~78% at 12s, ~85% at 15s — feels natural\nconst elapsed=(performance.now()-_syntheticProgressStart)/1e3;const synthetic=(1-Math.exp(-elapsed/8))*.85;mls.setProgress(taskId,synthetic);_syntheticProgressTimer=requestAnimationFrame(tick);};// Start after 500ms delay — give real progress events a chance to fire first\nsetTimeout(()=>{if(!_hasRealProgress){_syntheticProgressTimer=requestAnimationFrame(tick);}},500);}function _stopSyntheticProgress(){if(_syntheticProgressTimer){cancelAnimationFrame(_syntheticProgressTimer);_syntheticProgressTimer=null;}}export function _clearModelCache(){for(const[,cached]of _modelCache){_disposeModelFull(cached.scene);}_modelCache.clear();_preloadInFlight.clear();_preloadBatchTotal=0;_preloadBatchDone=0;}export function _startModelPreload(url){if(!url)return Promise.resolve();if(_modelCache.has(url))return Promise.resolve();if(_preloadInFlight.has(url))return _preloadInFlight.get(url);const format=detectFormat(url);// Broadcast loading state immediately so splash screen knows to wait\nif(typeof window!==\"undefined\"&&window.__modelLoadingState){const mls=window.__modelLoadingState;if(!mls.isLoading&&!mls.isComplete){mls.setLoading(url);}}// Track batch count\n_preloadBatchTotal++;// Start synthetic progress animation (gives visual feedback when Content-Length is missing)\nif(_preloadBatchTotal===1)_startSyntheticProgress(url);const promise=new Promise(resolve=>{const _checkBatchComplete=()=>{// When ALL in-flight preloads are done, set progress to 95%\n// but do NOT call setComplete() — that's the load-model effect's job\n// after the model is actually added to the Three.js scene and visible.\nif(_preloadInFlight.size===0&&typeof window!==\"undefined\"&&window.__modelLoadingState){const mls=window.__modelLoadingState;if(mls.isLoading&&!mls.isComplete){_stopSyntheticProgress();mls.setProgress(url,.95);}// Reset batch counters\n_preloadBatchTotal=0;_preloadBatchDone=0;}};const onDone=(object,animations)=>{if(!_modelCache.has(url)){// Clean up skinned mesh artifacts before caching so all clones inherit clean state\n_cleanupSkinnedScene(object);const safeAnimations=_sanitizeAnimationClipsForObject(object,animations||[]);_modelCache.set(url,{scene:object,animations:safeAnimations.map(c=>c.clone())});}_preloadInFlight.delete(url);_preloadBatchDone++;_checkBatchComplete();resolve();};const onProgress=event=>{if(!event.lengthComputable)return;// Real progress received — kill synthetic animation\nif(!_hasRealProgress){_hasRealProgress=true;_stopSyntheticProgress();}const pct=event.loaded/event.total;if(typeof window!==\"undefined\"&&window.__modelLoadingState){// Scale progress across batch: each URL gets an equal share\nconst batchTotal=Math.max(_preloadBatchTotal,1);const perUrlShare=1/batchTotal;const overallPct=(_preloadBatchDone+pct)*perUrlShare;window.__modelLoadingState.setProgress(url,Math.min(pct*.95,.95));}};const onErr=err=>{console.warn(\"[Preload] Failed for\",url,err);_preloadInFlight.delete(url);_preloadBatchDone++;_checkBatchComplete();resolve()// resolve anyway — load-model effect will retry or show error\n;};try{if(format===\"zip\")_loadFromZip(url,onDone,onProgress,onErr);else if(format===\"fbx\")getSharedFBXLoader().then(loader=>loader.load(url,obj=>onDone(obj,obj.animations||[]),onProgress,onErr)).catch(onErr);else getSharedGLTFLoader().load(url,g=>onDone(g.scene,g.animations),onProgress,onErr);}catch(err){onErr(err);}});_preloadInFlight.set(url,promise);return promise;}function _upsertImport3DSlot(id,element,props,scrollContainer=null,runtimeSettings=null){if(!id)return;const state=_getImport3DBridgeState();const previous=state.slots.get(id);const shouldNotify=!previous||previous.element!==element||previous.scrollContainer!==scrollContainer;if(shouldNotify){state.slotRevision=(state.slotRevision||0)+1;}const bridgeProps=runtimeSettings?{...props,__import3DRuntimeSettings:runtimeSettings}:props;state.slots.set(id,{id,element,scrollContainer,props:bridgeProps,runtimeSettings,revision:shouldNotify?state.slotRevision:previous?.revision??state.slotRevision,updatedAt:Date.now()});if(shouldNotify){_emitImport3DBridge();}}function _runtimeSlotDomId(id){return`import3d-slot-${String(id||\"slot\").replace(/[^a-zA-Z0-9_-]/g,\"_\")}`;}function _upsertImport3DLazySlot(id,domId,element,modelUrl){if(typeof window===\"undefined\"||!id||!element)return;const win=window;const registry=win.__import3DLazySlots||(win.__import3DLazySlots={slots:new Map,revision:0});if(!element.id)element.id=domId;const previous=registry.slots.get(id);registry.slots.set(id,{id,domId,element,modelUrl:modelUrl||\"\",mountedAt:previous?.mountedAt||Date.now(),updatedAt:Date.now()});registry.revision+=1;}function _removeImport3DLazySlot(id){if(typeof window===\"undefined\"||!id)return;const registry=window.__import3DLazySlots;if(registry?.slots?.delete?.(id)){registry.revision=(registry.revision||0)+1;}}function _removeImport3DSlot(id){if(!id)return;const state=_getImport3DBridgeState();if(state.slots.delete(id)){_emitImport3DBridge();}}/* ═══════════════════════════════════════════════════════════\n   Slot Component\n   ═══════════════════════════════════════════════════════════ *//**\n * _ThreeJSRuntimeSlot\n * This component acts as an individual 3D viewport/container.\n * It registers itself with the shared WebGLCoordinator and communicates its dimensions,\n * scroll position, and visibility to the single ThreeJSRuntimeRoot renderer.\n */// @api Slot.component\nfunction _ThreeJSRuntimeSlot(props){const{modelSource=\"url\",modelUrl:modelUrlProp=\"\",modelFile=\"\",transform:_tr={},position:_pos={},performance:_perf={},ui:_ui={},style={}}=props;const wrapRef=useRef(null);const[bridgeGovernor,setBridgeGovernor]=useState(()=>_snapshotImport3DBridge());const[slotViewportRatio,setSlotViewportRatio]=useState(0);const transformBreakpoint=_tr.breakpoint??768;const positionBreakpoint=_pos.breakpoint??transformBreakpoint;const _runtimeProps=_mergeTopLevelRuntimeControls(props,_tr);const[responsiveCanvasWidth,setResponsiveCanvasWidth]=useState(0);const isMobileCanvas=responsiveCanvasWidth>0&&responsiveCanvasWidth<=transformBreakpoint;const isMobilePositionCanvas=responsiveCanvasWidth>0&&responsiveCanvasWidth<=positionBreakpoint;useEffect(()=>{if(typeof window===\"undefined\")return;const update=()=>{const width=wrapRef.current?.clientWidth||window.innerWidth||0;setResponsiveCanvasWidth(prev=>prev===width?prev:width);};update();let ro=null;if(typeof ResizeObserver!==\"undefined\"&&wrapRef.current){ro=new ResizeObserver(update);ro.observe(wrapRef.current);}window.addEventListener(\"resize\",update);return()=>{ro?.disconnect();window.removeEventListener(\"resize\",update);};},[transformBreakpoint,positionBreakpoint]);// ── Mesh Animations (per-mesh scroll targeting) ──\nconst meshAnimationsRaw=props.meshAnimations??[];// ── Mesh Interactions (click/hover/drag raycasting) ──\nconst meshInteractionsRaw=props.meshInteractions??[];// ── Flatten grouped props for internal use (settingsRef stays flat) ──\nconst _activeTr=_resolveResponsiveTransform(_runtimeProps.transform,isMobileCanvas);const _activePos=_resolveResponsivePosition(_runtimeProps.position,isMobilePositionCanvas);const _runtimeConfig=resolveThreeJSRuntimeConfig(_runtimeProps,responsiveCanvasWidth);const modelScale=_activeTr.scale??1;const modelOffsetX=_activeTr.offX??0;const modelOffsetY=_activeTr.offY??0;const modelOffsetZ=_activeTr.offZ??0;const modelRotationX=_activeTr.rotX??0;const modelRotationY=_activeTr.rotY??0;const modelRotationZ=_activeTr.rotZ??0;const cameraType=_runtimeConfig.cameraType;const cameraPositionX=_runtimeConfig.cameraPositionX;const cameraPositionY=_runtimeConfig.cameraPositionY;const cameraPositionZ=_runtimeConfig.cameraPositionZ;const orthoZoom=_runtimeConfig.orthoZoom;const stereoEyeSep=_runtimeConfig.stereoEyeSep;const backgroundColor=_runtimeConfig.backgroundColor;const transparentBackground=_runtimeConfig.transparentBackground;const enableEnvironment=_runtimeConfig.enableEnvironment;const environmentType=_runtimeConfig.environmentType;const environmentPreset=_runtimeConfig.environmentPreset;const hdriPreset=_runtimeConfig.hdriPreset;const customHdriUrl=_runtimeConfig.customHdriUrl;const environmentIntensity=_runtimeConfig.environmentIntensity;const showEnvironmentBackground=_runtimeConfig.showEnvironmentBackground;const ambientLightIntensity=_runtimeConfig.ambientLightIntensity;const directionalLightIntensity=_runtimeConfig.directionalLightIntensity;const directionalLightColor=_runtimeConfig.directionalLightColor;const dirLightPosX=_runtimeConfig.dirLightPosX;const dirLightPosY=_runtimeConfig.dirLightPosY;const dirLightPosZ=_runtimeConfig.dirLightPosZ;const enableShadows=_runtimeConfig.enableShadows;const shadowMapSize=_runtimeConfig.shadowMapSize;const shadowBias=_runtimeConfig.shadowBias;const shadowNormalBias=_runtimeConfig.shadowNormalBias;// ── Extra Lights (Point / Spot) ──\nconst extraLightsRaw=props.extraLights??[];const _interactionConfig=resolveThreeJSRuntimeInteractionConfig(props,{disableMouseRotation:isMobileCanvas});const enableOrbitControls=_interactionConfig.enableOrbitControls;const enableZoom=_interactionConfig.enableZoom;const enableAutoRotate=_interactionConfig.enableAutoRotate;const autoRotateSpeed=_interactionConfig.autoRotateSpeed;let enableAnimation=_interactionConfig.enableAnimation;let animationMode=_interactionConfig.animationMode;let animationClip=_interactionConfig.animationClip;let animationSpeed=_interactionConfig.animationSpeed;const animationBlendDuration=_interactionConfig.animationBlendDuration;const animationWarp=_interactionConfig.animationWarp;const animationSyncPhase=_interactionConfig.animationSyncPhase;const animationRestartOnSwitch=_interactionConfig.animationRestartOnSwitch;let animationLoopMode=_interactionConfig.animationLoopMode;const animationModelHoverGate=_interactionConfig.animationModelHoverGate;const animationWarmClips=_interactionConfig.animationWarmClips;const hasAnimationOnceCompleteHandler=!!props.onAnimationOnceComplete;const enableMouseRotation=_interactionConfig.enableMouseRotation;const mouseRotationIntensity=_interactionConfig.mouseRotationIntensity;const enableParticles=_interactionConfig.enableParticles;const particleCount=_interactionConfig.particleCount;const particleSize=_interactionConfig.particleSize;const particleColor=_interactionConfig.particleColor;const particleSpeed=_interactionConfig.particleSpeed;const particleSpread=_interactionConfig.particleSpread;const bridgeAnimationSignature=[enableAnimation?1:0,animationMode,animationClip,animationSpeed,animationBlendDuration,animationWarp?1:0,animationSyncPhase?1:0,animationRestartOnSwitch?1:0,animationLoopMode,animationModelHoverGate?1:0,hasAnimationOnceCompleteHandler?1:0].join(\"|\");const _appear=resolveThreeJSRuntimeAppearConfig(_runtimeProps);const dissolveEnabled=_appear.dissolveEnabled;const dissolveDuration=_appear.dissolveDuration;const appearOffsetX=_appear.appearOffsetX;const appearOffsetY=_appear.appearOffsetY;const appearOffsetZ=_appear.appearOffsetZ;const appearScale=_appear.appearScale;const appearRotateX=_appear.appearRotateX;const appearRotateY=_appear.appearRotateY;const appearRotateZ=_appear.appearRotateZ;const dissolveNoiseScale=_appear.dissolveNoiseScale;const dissolveAmplitude=_appear.dissolveAmplitude;const dissolveEdgeWidth=_appear.dissolveEdgeWidth;const dissolveEmissiveColor=_appear.dissolveEmissiveColor;const dissolveEmissiveIntensity=_appear.dissolveEmissiveIntensity;const dissolveParticlesEnabled=_appear.dissolveParticlesEnabled;const dissolveParticleBaseSize=_appear.dissolveParticleBaseSize;const dissolveParticleColor=_appear.dissolveParticleColor;const dissolveParticleSpeed=_appear.dissolveParticleSpeed;const dissolveParticleWaveAmp=_appear.dissolveParticleWaveAmp;const dissolveParticleVelX=_appear.dissolveParticleVelX;const dissolveParticleVelY=_appear.dissolveParticleVelY;const dissolveParticleMaxCount=_appear.dissolveParticleMaxCount;const materialPreset=_runtimeConfig.materialPreset;const sketchBaseColor=_runtimeConfig.sketchBaseColor;const sketchLineColor=_runtimeConfig.sketchLineColor;const sketchLineThickness=_runtimeConfig.sketchLineThickness;const sketchSteps=_runtimeConfig.sketchSteps;const overrideMaterial=_runtimeConfig.overrideMaterial;const metalness=_runtimeConfig.metalness;const roughness=_runtimeConfig.roughness;const clearcoat=_runtimeConfig.clearcoat;const clearcoatRoughness=_runtimeConfig.clearcoatRoughness;const transmission=_runtimeConfig.transmission;const thickness=_runtimeConfig.thickness;const ior=_runtimeConfig.ior;const iridescence=_runtimeConfig.iridescence;const iridescenceIOR=_runtimeConfig.iridescenceIOR;const sheen=_runtimeConfig.sheen;const sheenRoughness=_runtimeConfig.sheenRoughness;const sheenColor=_runtimeConfig.sheenColor;const envMapIntensity=_runtimeConfig.envMapIntensity;const reflectivity=_runtimeConfig.reflectivity;const emissiveIntensity=_runtimeConfig.emissiveIntensity;const emissiveColor=_runtimeConfig.emissiveColor;const opacity=_runtimeConfig.opacity;const wireframe=_runtimeConfig.wireframe;const materialTransitionDuration=_runtimeConfig.materialTransitionDuration;const enableFloat=_runtimeConfig.enableFloat;const floatAmplitude=_runtimeConfig.floatAmplitude;const floatSpeed=_runtimeConfig.floatSpeed;const bloomEnabled=_runtimeConfig.bloomEnabled;const bloomStrength=_runtimeConfig.bloomStrength;const bloomThreshold=_runtimeConfig.bloomThreshold;const bloomRadius=_runtimeConfig.bloomRadius;const toneMapping=_runtimeConfig.toneMapping;const exposure=_runtimeConfig.exposure;const enableFXAA=_runtimeConfig.enableFXAA;const enableColorGrading=_runtimeConfig.enableColorGrading;const brightness=_runtimeConfig.brightness;const contrast=_runtimeConfig.contrast;const saturation=_runtimeConfig.saturation;const enableVignette=_runtimeConfig.enableVignette;const vignetteOffset=_runtimeConfig.vignetteOffset;const vignetteDarkness=_runtimeConfig.vignetteDarkness;const enableChromaticAberration=_runtimeConfig.enableChromaticAberration;const chromaticAberrationStrength=_runtimeConfig.chromaticAberrationStrength;const enableFilmGrain=_runtimeConfig.enableFilmGrain;const filmGrainIntensity=_runtimeConfig.filmGrainIntensity;const enableSSAO=_runtimeConfig.enableSSAO;const ssaoRadius=_runtimeConfig.ssaoRadius;const ssaoMinDistance=_runtimeConfig.ssaoMinDistance;const ssaoMaxDistance=_runtimeConfig.ssaoMaxDistance;const enableDOF=_runtimeConfig.enableDOF;const dofFocus=_runtimeConfig.dofFocus;const dofAperture=_runtimeConfig.dofAperture;const dofMaxBlur=_runtimeConfig.dofMaxBlur;const showControls=_ui.showHints??true;const showMeshHelper=_ui.meshHelper??false;const showStatsMonitor=_ui.statsMonitor??false;const statsMonitorPanel=_ui.statsPanel??\"fps\";const showGrid=_ui.showGrid??false;const showGridSize=_ui.gridSize??10;const showGridDivisions=_ui.gridDivisions??10;const showGridColor1=_ui.gridColor1??\"rgba(255,255,255,0.25)\";const showGridColor2=_ui.gridColor2??\"rgba(255,255,255,0.1)\";const showAxes=_ui.showAxes??false;const showAxesSize=_ui.axesSize??3;const showModelAxes=_ui.showModelAxes??false;const showModelAxesSize=_ui.modelAxesSize??2;const stopMotionInEditor=_ui.stopInEditor??false;const progressiveLoading=_appear.progressiveLoading;const progressiveFadeDuration=_appear.progressiveFadeDuration;const blurReveal=_appear.blurReveal;const blurRevealIntensity=_appear.blurRevealIntensity;const blurRevealDuration=_appear.blurRevealDuration;const _positionConfig=resolveThreeJSRuntimePositionConfig(_runtimeProps,{activePosition:_activePos,useMobile:isMobilePositionCanvas});const layoutPositionMode=_positionConfig.layoutPositionMode;const layoutLayerMatch=_positionConfig.layoutLayerMatch;const layoutTop=_positionConfig.layoutTop;const layoutLeft=_positionConfig.layoutLeft;const layoutRight=_positionConfig.layoutRight;const layoutBottom=_positionConfig.layoutBottom;const layoutZIndex=_positionConfig.layoutZIndex;const scrollAnchorEnabled=_positionConfig.scrollAnchorEnabled;const scrollAnchorMatch=_positionConfig.scrollAnchorMatch;const scrollTransformAnchorMatch=_positionConfig.scrollTransformAnchorMatch;const scrollProgressTransformEnabled=_positionConfig.scrollProgressTransformEnabled;const scrollAnchorTransitionEnabled=_positionConfig.scrollAnchorTransitionEnabled;const scrollAnchorTransitionTargetId=_positionConfig.scrollAnchorTransitionTargetId;const scrollAnchorX=_positionConfig.scrollAnchorX;const scrollAnchorY=_positionConfig.scrollAnchorY;const scrollAnchorStrengthX=_positionConfig.scrollAnchorStrengthX;const scrollAnchorStrengthY=_positionConfig.scrollAnchorStrengthY;const scrollAnchorSmoothing=_positionConfig.scrollAnchorSmoothing;const scrollAnchorRotationX=_positionConfig.scrollAnchorRotationX;const scrollAnchorRotationY=_positionConfig.scrollAnchorRotationY;const scrollAnchorRotationZ=_positionConfig.scrollAnchorRotationZ;const scrollProgressPositionX=_positionConfig.scrollProgressPositionX;const scrollProgressPositionY=_positionConfig.scrollProgressPositionY;const scrollProgressPositionZ=_positionConfig.scrollProgressPositionZ;const scrollProgressScale=_positionConfig.scrollProgressScale;const performanceMode=_perf.mode??_ui.performanceMode??true;const webglActive=_perf.webglActive??_ui.webglActive??true;const governorQualityMode=bridgeGovernor.qualityMode||\"balanced\";const basePerformanceDprCap=_perf.dprCap??_ui.performanceDprCap??(performanceMode?1.5:2);const basePerformanceMobileDprCap=_perf.mobileDprCap??_ui.performanceMobileDprCap??1.5;const performanceDprCap=bridgeGovernor.dprCapDesktop!=null?Math.min(basePerformanceDprCap,bridgeGovernor.dprCapDesktop):basePerformanceDprCap;const performanceMobileDprCap=bridgeGovernor.dprCapMobile!=null?Math.min(basePerformanceMobileDprCap,bridgeGovernor.dprCapMobile):basePerformanceMobileDprCap;const performanceMaxPixelCount=_perf.maxPixelCount??_ui.performanceMaxPixelCount??3e6;const performanceLazyWebgl=_perf.lazyWebgl??_ui.performanceLazyWebgl??true;const performancePauseHidden=bridgeGovernor.pauseHidden??_perf.pauseHidden??_ui.performancePauseHidden??true;const performancePauseOffscreen=bridgeGovernor.pauseOffscreen??_perf.pauseOffscreen??_ui.performancePauseOffscreen??true;const performanceStats=_perf.stats??_ui.performanceStats??false;const performanceAntialias=governorQualityMode===\"performance\"?false:_perf.antialias??_ui.performanceAntialias??!performanceMode;const useMobilePerfProfile=performanceMode&&isMobileCanvas;const isGovernorPerformance=governorQualityMode===\"performance\";const isGovernorBalanced=governorQualityMode===\"balanced\";const qualityMaxPixelBudget=isGovernorPerformance?isMobileCanvas?12e5:18e5:isGovernorBalanced?isMobileCanvas?18e5:24e5:isMobileCanvas?18e5:performanceMaxPixelCount;const effectivePerformanceMaxPixelCount=qualityMaxPixelBudget>0?performanceMaxPixelCount>0?Math.min(performanceMaxPixelCount,qualityMaxPixelBudget):qualityMaxPixelBudget:performanceMaxPixelCount;const effectiveShadowMapSize=isGovernorPerformance?Math.min(shadowMapSize,256):isGovernorBalanced||useMobilePerfProfile?Math.min(shadowMapSize,512):shadowMapSize;const effectiveBloomEnabled=isGovernorPerformance?false:bloomEnabled;const effectiveEnableSSAO=isGovernorPerformance||isGovernorBalanced||useMobilePerfProfile?false:enableSSAO;const effectiveEnableDOF=isGovernorPerformance||isGovernorBalanced||useMobilePerfProfile?false:enableDOF;const effectiveEnableChromaticAberration=isGovernorPerformance||useMobilePerfProfile?false:enableChromaticAberration;const effectiveEnableFilmGrain=isGovernorPerformance||useMobilePerfProfile?false:enableFilmGrain;const effectiveParticleCount=isGovernorPerformance?Math.min(particleCount,500):useMobilePerfProfile||isGovernorBalanced?Math.min(particleCount,1e3):particleCount;const effectiveDissolveParticleMaxCount=isGovernorPerformance?Math.min(dissolveParticleMaxCount,1200):useMobilePerfProfile||isGovernorBalanced?Math.min(dissolveParticleMaxCount,3e3):dissolveParticleMaxCount;const enableScrollAnimation=true;const scrollSmoothing=_SCROLL_SMOOTHING_SPEED;// ── Resolve model source (URL vs File upload) ──\nconst modelUrl=modelSource===\"file\"?modelFile||\"\":modelUrlProp||\"\";// ── Sub-scenes (multi-scene Groups) — resolve modelSource per item ──\nconst subSceneItemsRaw=props.scenes??[];const subSceneItems=subSceneItemsRaw.map(item=>{if(!item)return item;const resolved=resolveThreeJSRuntimeSubSceneItem(item);const src=item.modelSource||\"url\";const effectiveUrl=src===\"file\"?item.modelFile||\"\":item.modelUrl||\"\";return{...resolved,modelUrl:effectiveUrl};});const canvasRef=useRef(null);const rafRef=useRef(0);const[status,setStatus]=useState(\"\");const[preloadProgress,setPreloadProgress]=useState({loaded:0,total:0});const[detectedAnimations,setDetectedAnimations]=useState([]);const stateRef=useRef(null);// Mesh helper tooltip state\nconst[meshTooltip,setMeshTooltip]=useState(null);const meshTooltipRef=useRef(meshTooltip);meshTooltipRef.current=meshTooltip;const updateMeshTooltip=next=>{const prev=meshTooltipRef.current;if(!prev&&!next)return;if(!prev||!next){setMeshTooltip(next);return;}const moved=Math.abs(prev.x-next.x)>=2||Math.abs(prev.y-next.y)>=2;const changed=prev.name!==next.name||prev.type!==next.type||prev.verts!==next.verts||prev.mat!==next.mat||prev.path!==next.path;if(moved||changed){setMeshTooltip(next);}};// Interaction hover tooltip state\nconst[interactTooltip,setInteractTooltip]=useState(null);const interactTooltipRef=useRef(interactTooltip);interactTooltipRef.current=interactTooltip;const updateInteractTooltip=next=>{const prev=interactTooltipRef.current;if(!prev&&!next)return;if(!prev||!next){setInteractTooltip(next);return;}const moved=Math.abs(prev.x-next.x)>=2||Math.abs(prev.y-next.y)>=2;const changed=prev.text!==next.text;if(moved||changed){setInteractTooltip(next);}};const[modelPointerCapture,setModelPointerCapture]=useState(false);const modelHoverStartRef=useRef(props.onModelHoverStart);const modelHoverEndRef=useRef(props.onModelHoverEnd);const modelClickRef=useRef(props.onModelClick);const animationOnceCompleteRef=useRef(null);modelHoverStartRef.current=props.onModelHoverStart;modelHoverEndRef.current=props.onModelHoverEnd;modelClickRef.current=props.onModelClick;animationOnceCompleteRef.current=()=>{props.onAnimationOnceComplete?.();};// Auto-generate unique canvas ID for data attribute\nconst canvasId=useId();const slotId=useId().replace(/:/g,\"_\");const runtimeSlotDomId=_runtimeSlotDomId(slotId);const[isCanvasTarget,setIsCanvasTarget]=useState(false);const[webglRuntimeActive,setWebglRuntimeActive]=useState(false);const[layoutLayerMatched,setLayoutLayerMatched]=useState(!layoutLayerMatch);const rootRendererActive=bridgeGovernor.renderMode===\"renderer\"||_isImport3DRendererBridgeActive();// UX Fix: Force standalone render ONLY on the actual Design Canvas.\n// In Preview/Live, we must defer to the Root renderer (Bridge mode).\nconst isDesignCanvas=RenderTarget.current()===RenderTarget.canvas;const shouldRenderStandalone=!rootRendererActive||isDesignCanvas;const effectiveWebglActive=webglActive&&shouldRenderStandalone;useEffect(()=>{if(rootRendererActive){_setRootTooltipHandler((text,clientX,clientY)=>{if(text&&wrapRef.current){const rect=wrapRef.current.getBoundingClientRect();updateInteractTooltip({x:clientX,y:clientY,text,isFixed:true});}else{updateInteractTooltip(null);}});return()=>{if(_rootTooltipHandler)_setRootTooltipHandler(null);};}},[rootRendererActive]);// RenderTarget.current() is client-only in Framer; keep it out of SSR markup.\nuseEffect(()=>{startTransition(()=>{// Match original file: do not use isOnFramerCanvas hook for Slot detection\nsetIsCanvasTarget(getFramerRuntimeMode()===\"canvas\");});},[]);useEffect(()=>{const sync=()=>{setBridgeGovernor(_snapshotImport3DBridge());};sync();return _subscribeImport3DBridge(sync);},[]);useEffect(()=>{_webglCoordinator.forceReeval();},[bridgeGovernor.renderMode,bridgeGovernor.contextBudget,bridgeGovernor.pauseHidden,bridgeGovernor.pauseOffscreen,bridgeGovernor.destroyOffscreen,bridgeGovernor.destroyAfterMs]);useEffect(()=>{if(isCanvasTarget){setSlotViewportRatio(1);return;}const node=wrapRef.current;if(!node||typeof IntersectionObserver===\"undefined\"){setSlotViewportRatio(1);return;}const observer=new IntersectionObserver(([entry])=>{setSlotViewportRatio(entry?.intersectionRatio??0);},{threshold:[0,.01,.1,.25,.5,.75,1]});observer.observe(node);return()=>observer.disconnect();},[isCanvasTarget]);useEffect(()=>{if(!wrapRef.current)return;_upsertImport3DSlot(slotId,wrapRef.current,_runtimeProps,_findImport3DScrollContainer(wrapRef.current),settingsRef.current);_upsertImport3DLazySlot(slotId,runtimeSlotDomId,wrapRef.current,modelUrl);},[slotId,runtimeSlotDomId,modelUrl,_runtimeProps,isCanvasTarget,bridgeAnimationSignature,props.onModelHoverStart,props.onModelHoverEnd,props.onModelClick]);useEffect(()=>{return()=>{_removeImport3DSlot(slotId);_removeImport3DLazySlot(slotId);};},[slotId]);useEffect(()=>{const isCanvas=getFramerRuntimeMode()===\"canvas\";if(!effectiveWebglActive||_isImport3DRendererBridgeActive()){setWebglRuntimeActive(false);return;}// Sync: when multiple canvases are already mounted, force lazy init\n// even if performanceLazyWebgl/performanceMode is off — spreading\n// context creation avoids hitting Safari's WebGL-context cap at once.\nconst forceLazy=_webglCoordinator.shouldForcePerfGates();const lazyEffective=performanceLazyWebgl||forceLazy;const perfActive=performanceMode||forceLazy;if(!perfActive||!lazyEffective||isCanvas){setWebglRuntimeActive(true);return;}if(slotViewportRatio>0){setWebglRuntimeActive(true);return;}const node=wrapRef.current;if(!node||typeof IntersectionObserver===\"undefined\"){setWebglRuntimeActive(true);return;}const observer=new IntersectionObserver(([entry])=>{if(entry?.isIntersecting){setWebglRuntimeActive(true);observer.disconnect();}},{rootMargin:\"0px\",threshold:0});observer.observe(node);return()=>observer.disconnect();},[effectiveWebglActive,performanceMode,performanceLazyWebgl,shouldRenderStandalone,slotViewportRatio]);useEffect(()=>{if(layoutPositionMode===\"relative\"||!layoutLayerMatch){setLayoutLayerMatched(true);return;}let raf=0;const checkMatch=()=>{const node=wrapRef.current;setLayoutLayerMatched(!!node&&_matchesLayerSelector(node,layoutLayerMatch));};checkMatch();raf=requestAnimationFrame(checkMatch);return()=>cancelAnimationFrame(raf);},[layoutPositionMode,layoutLayerMatch]);const runtimeMeshInteractions=(meshInteractionsRaw||[]).map(resolveThreeJSRuntimeObjectEventItem);const runtimeMeshInteractionItems=runtimeMeshInteractions.filter(ic=>ic?.meshName&&(ic.__hasInteractionEvent??true));const runtimeHasEnabledMeshInteractions=runtimeMeshInteractionItems.length>0;const runtimeHasDraggableMeshInteractions=runtimeMeshInteractionItems.some(ic=>!!ic?.draggable);const runtimeMeshInteractionTargetNames=runtimeMeshInteractionItems.map(ic=>String(ic.meshName).trim().toLowerCase());const runtimeMeshInteractionLookupKey=JSON.stringify(runtimeMeshInteractionTargetNames);const runtimeMeshAnimations=[...meshAnimationsRaw||[],..._objectEventScrollAnimations(meshInteractionsRaw||[])].map(resolveThreeJSRuntimeMeshAnimationItem);const runtimeMeshAnimationItems=runtimeMeshAnimations.filter(anim=>anim?.enabled&&anim?.meshName);const runtimeHasEnabledMeshAnimations=runtimeMeshAnimationItems.length>0;const runtimeMeshAnimationLookupKey=JSON.stringify(runtimeMeshAnimationItems.map(anim=>String(anim.meshName).trim().toLowerCase()));const runtimeMaterialHash=materialHash({materialPreset,sketchBaseColor,sketchLineColor,sketchLineThickness,sketchSteps,overrideMaterial,metalness,roughness,clearcoat,clearcoatRoughness,transmission,thickness,ior,iridescence,iridescenceIOR,sheen,sheenRoughness,sheenColor,envMapIntensity,emissiveIntensity,emissiveColor,reflectivity,opacity});const runtimeLightingHash=lightingHash({ambientLightIntensity,directionalLightIntensity,directionalLightColor,dirLightPosX,dirLightPosY,dirLightPosZ,enableShadows,shadowMapSize:effectiveShadowMapSize,shadowBias,shadowNormalBias,extraLights:extraLightsRaw});const runtimeEnvHash=envHash({enableEnvironment,environmentPreset,environmentType,hdriPreset,customHdriUrl,environmentIntensity,showEnvironmentBackground,transparentBackground});const runtimeEffectsHash=effectsHash({bloomEnabled:effectiveBloomEnabled,bloomStrength,bloomThreshold,bloomRadius,toneMapping,exposure,enableFXAA,enableVignette,vignetteOffset,vignetteDarkness,enableChromaticAberration:effectiveEnableChromaticAberration,chromaticAberrationStrength,enableFilmGrain:effectiveEnableFilmGrain,filmGrainIntensity,enableSSAO:effectiveEnableSSAO,ssaoRadius,ssaoMinDistance,ssaoMaxDistance,enableDOF:effectiveEnableDOF,dofFocus,dofAperture,dofMaxBlur,enableColorGrading,brightness,contrast,saturation});const runtimeSceneConfigHash=runtimeMaterialHash+\"|\"+runtimeLightingHash+\"|\"+runtimeEnvHash+\"|\"+runtimeEffectsHash;const _sharedRuntimeSettings=buildThreeJSRuntimeSettings(_runtimeProps,{rectWidth:responsiveCanvasWidth,qualityMode:governorQualityMode,dprCapDesktop:bridgeGovernor.dprCapDesktop,dprCapMobile:bridgeGovernor.dprCapMobile,pauseHidden:bridgeGovernor.pauseHidden,pauseOffscreen:bridgeGovernor.pauseOffscreen});const settingsRef=useRef({});settingsRef.current={..._sharedRuntimeSettings,modelScale,modelOffsetX,modelOffsetY,modelOffsetZ,modelRotationX,modelRotationY,modelRotationZ,backgroundColor,transparentBackground,cameraType,cameraPositionX,cameraPositionY,cameraPositionZ,orthoZoom,stereoEyeSep,enableEnvironment,environmentPreset,environmentType,hdriPreset,customHdriUrl,environmentIntensity,showEnvironmentBackground,ambientLightIntensity,directionalLightIntensity,directionalLightColor,dirLightPosX,dirLightPosY,dirLightPosZ,enableShadows,shadowMapSize:effectiveShadowMapSize,shadowBias,shadowNormalBias,extraLights:extraLightsRaw,enableOrbitControls,enableZoom,enableAutoRotate,autoRotateSpeed,enableAnimation,animationMode,animationClip,animationSpeed,animationBlendDuration,animationWarp,animationSyncPhase,animationRestartOnSwitch,animationLoopMode,animationModelHoverGate,animationWarmClips,hasAnimationOnceCompleteHandler,onAnimationOnceComplete:animationOnceCompleteRef.current,onModelHoverStart:modelHoverStartRef.current,onModelHoverEnd:modelHoverEndRef.current,onModelClick:modelClickRef.current,enableMouseRotation,mouseRotationIntensity,enableParticles,particleCount:effectiveParticleCount,particleSize,particleColor,particleSpeed,particleSpread,dissolveEnabled,dissolveDuration,appearOffsetX,appearOffsetY,appearOffsetZ,appearScale,appearRotateX,appearRotateY,appearRotateZ,dissolveNoiseScale,dissolveAmplitude,dissolveEdgeWidth,dissolveEmissiveColor,dissolveEmissiveIntensity,dissolveParticlesEnabled,dissolveParticleBaseSize,dissolveParticleColor,dissolveParticleSpeed,dissolveParticleWaveAmp,dissolveParticleVelX,dissolveParticleVelY,dissolveParticleMaxCount:effectiveDissolveParticleMaxCount,materialPreset,overrideMaterial,metalness,roughness,clearcoat,clearcoatRoughness,transmission,thickness,ior,iridescence,iridescenceIOR,sheen,sheenRoughness,sheenColor,envMapIntensity,emissiveIntensity,emissiveColor,reflectivity,opacity,wireframe,materialTransitionDuration,enableFloat,floatAmplitude,floatSpeed,bloomEnabled:effectiveBloomEnabled,bloomStrength,bloomThreshold,bloomRadius,toneMapping,exposure,enableFXAA,enableVignette,vignetteOffset,vignetteDarkness,enableChromaticAberration:effectiveEnableChromaticAberration,chromaticAberrationStrength,enableFilmGrain:effectiveEnableFilmGrain,filmGrainIntensity,enableSSAO:effectiveEnableSSAO,ssaoRadius,ssaoMinDistance,ssaoMaxDistance,enableDOF:effectiveEnableDOF,dofFocus,dofAperture,dofMaxBlur,enableColorGrading,brightness,contrast,saturation,showControls,showMeshHelper,showStatsMonitor,statsMonitorPanel,showGrid,showGridSize,showGridDivisions,showGridColor1,showGridColor2,showAxes,showAxesSize,showModelAxes,showModelAxesSize,stopMotionInEditor,progressiveLoading,progressiveFadeDuration,blurReveal,blurRevealIntensity,blurRevealDuration,layoutPositionMode,layoutLayerMatch,layoutTop,layoutLeft,layoutRight,layoutBottom,layoutZIndex,scrollAnchorEnabled,scrollAnchorMatch,scrollTransformAnchorMatch,scrollProgressTransformEnabled,scrollAnchorTransitionEnabled,scrollAnchorTransitionTargetId,scrollAnchorX,scrollAnchorY,scrollAnchorStrengthX,scrollAnchorStrengthY,scrollAnchorSmoothing,scrollAnchorRotationX,scrollAnchorRotationY,scrollAnchorRotationZ,scrollProgressPositionX,scrollProgressPositionY,scrollProgressPositionZ,scrollProgressScale,performanceMode,webglActive:effectiveWebglActive,performanceDprCap,performanceMobileDprCap,performanceMaxPixelCount:effectivePerformanceMaxPixelCount,performanceLazyWebgl,performancePauseHidden,performancePauseOffscreen,performanceStats,performanceAntialias,enableScrollAnimation,scrollSmoothing,responsiveIsMobile:isMobileCanvas,subSceneItems,meshAnimations:runtimeMeshAnimations,meshAnimationItems:runtimeMeshAnimationItems,hasEnabledMeshAnimations:runtimeHasEnabledMeshAnimations,meshAnimationLookupKey:runtimeMeshAnimationLookupKey,meshInteractions:runtimeMeshInteractions,meshInteractionItems:runtimeMeshInteractionItems,meshInteractionTargetNames:runtimeMeshInteractionTargetNames,hasEnabledMeshInteractions:runtimeHasEnabledMeshInteractions,hasDraggableMeshInteractions:runtimeHasDraggableMeshInteractions,meshInteractionLookupKey:runtimeMeshInteractionLookupKey,_materialHash:runtimeMaterialHash,_lightingHash:runtimeLightingHash,_envHash:runtimeEnvHash,_effectsHash:runtimeEffectsHash,_sceneConfigHash:runtimeSceneConfigHash};settingsRef.current._animationReplayHash=appearReplayHash(settingsRef.current);const runtimeAnimationReplayHash=hasAnimationOnceCompleteHandler?settingsRef.current._animationReplayHash:\"\";const subSceneModelUrlKey=JSON.stringify((subSceneItems||[]).map(item=>item?.modelUrl??\"\"));const subSceneAnimationKey=JSON.stringify((subSceneItems||[]).map(item=>item?{animOverride:!!item.animOverride,animMode:String(item.animClip??\"\").trim()?\"single\":\"all\",animClip:item.animClip??\"\",animSpeed:item.animSpeed??null}:null));// ─────────────── Eager Preload (runs BEFORE init) ───────────────\n// Starts downloading + parsing the model immediately on mount,\n// in parallel with Three.js renderer/scene setup.\n// By the time the load-model effect fires, model is likely already cached.\nuseEffect(()=>{if(!webglRuntimeActive)return;if(!modelUrl)return;_startModelPreload(modelUrl);// Also preload sub-scene URLs\nif(subSceneItems?.length){for(const item of subSceneItems){if(item?.modelUrl&&!detectImageFormat(item.modelUrl)){_startModelPreload(item.modelUrl);}}}},[modelUrl,JSON.stringify(subSceneItems?.map(s=>s?.modelUrl)),webglRuntimeActive]);// ─────────────── Init Three.js ───────────────\nuseEffect(()=>{const canvas=canvasRef.current;if(!canvas)return;const cfg=settingsRef.current;const isCanvas=getFramerRuntimeMode()===\"canvas\";if(!cfg.webglActive||!webglRuntimeActive||_isImport3DRendererBridgeActive()){stateRef.current=null;if(webglRuntimeActive){setWebglRuntimeActive(false);}return;}// Enable HTTP cache for model files — avoids re-downloading same URLs\nTHREE.Cache.enabled=true;const rendererOwnerId=`slot:${slotId}:${canvasId}`;canvas.setAttribute(\"data-import-3d-renderer-owner\",rendererOwnerId);const renderer=new THREE.WebGLRenderer({canvas,antialias:cfg.performanceAntialias,alpha:true,powerPreference:\"high-performance\",premultipliedAlpha:true,stencil:false});renderer.shadowMap.enabled=!!(cfg.enableShadows||cfg.extraLights?.some(el=>el?.enabled&&el?.castShadow));renderer.shadowMap.type=THREE.PCFShadowMap;renderer.toneMapping=TONE_MAPPINGS[cfg.toneMapping]||THREE.ACESFilmicToneMapping;renderer.toneMappingExposure=cfg.exposure;renderer.outputColorSpace=THREE.SRGBColorSpace;renderer.__import3DRendererOwner=rendererOwnerId;_debugImport3DRendererEvent(\"create\",{role:\"slot\",ownerId:rendererOwnerId,canvas,bridgeMode:_getImport3DBridgeState().renderMode,renderTarget:RenderTarget.current(),webglRuntimeActive,cfgWebglActive:cfg.webglActive,rootCount:_getImport3DBridgeState().rootCount||0,slotCount:_getImport3DBridgeState().slots?.size||0,forceLog:!!_getImport3DBridgeState().rendererDebug});const scene=new THREE.Scene;if(!cfg.transparentBackground)scene.background=parseColor(cfg.backgroundColor);else scene.background=null;let envMap=null;// Use clientWidth/Height for aspect (ignores Framer zoom/transforms)\nconst initW=wrapRef.current?.clientWidth||1;const initH=wrapRef.current?.clientHeight||1;const initAspect=initW/initH;let camera;if(cfg.cameraType===\"orthographic\"){camera=new THREE.OrthographicCamera(-_ORTHO_FRUSTUM*initAspect/2,_ORTHO_FRUSTUM*initAspect/2,_ORTHO_FRUSTUM/2,-_ORTHO_FRUSTUM/2,.01,2e3);camera.zoom=cfg.orthoZoom??1;camera.updateProjectionMatrix();}else{// \"perspective\" and \"stereo\" both use PerspectiveCamera\ncamera=new THREE.PerspectiveCamera(35,initAspect,.01,2e3);}camera.position.set(cfg.cameraPositionX,cfg.cameraPositionY,cfg.cameraPositionZ);// Stereo camera (side-by-side split)\nlet stereoCamera=null;if(cfg.cameraType===\"stereo\"){stereoCamera=new THREE.StereoCamera;stereoCamera.eyeSep=cfg.stereoEyeSep??.064;}const controls=new OrbitControls(camera,canvas);controls.enableDamping=true;controls.dampingFactor=.05;controls.enablePan=true;controls.panSpeed=.8;controls.rotateSpeed=.8;controls.enableRotate=cfg.enableOrbitControls;controls.enabled=cfg.enableOrbitControls;controls.enableZoom=cfg.enableZoom;controls.autoRotate=false;controls.autoRotateSpeed=cfg.autoRotateSpeed;const ambientLight=new THREE.AmbientLight(16777215,cfg.ambientLightIntensity);scene.add(ambientLight);const dirLight=new THREE.DirectionalLight(parseColor(cfg.directionalLightColor),cfg.directionalLightIntensity);dirLight.position.set(cfg.dirLightPosX??5,cfg.dirLightPosY??10,cfg.dirLightPosZ??7);dirLight.castShadow=cfg.enableShadows;const smSize=cfg.shadowMapSize??1024;dirLight.shadow.mapSize.set(smSize,smSize);dirLight.shadow.bias=cfg.shadowBias??-1e-4;dirLight.shadow.normalBias=cfg.shadowNormalBias??.02;scene.add(dirLight);const fillLight=new THREE.DirectionalLight(12636415,.4);fillLight.position.set(-5,3,-5);scene.add(fillLight);scene.add(new THREE.HemisphereLight(16777215,4473924,.15));// ── Extra Lights container (Point / Spot) ──\nconst extraLightObjects=[];// ── Particle System ──\nlet particleSystem=null;function createParticleSystem(count,size,color,spread){if(particleSystem){scene.remove(particleSystem);particleSystem.geometry.dispose();particleSystem.material.dispose();}const geometry=new THREE.BufferGeometry;const positions=new Float32Array(count*3);const velocities=new Float32Array(count*3);for(let i=0;i<count;i++){const i3=i*3;// Random position in sphere\nconst r=spread*Math.random();const theta=Math.random()*Math.PI*2;const phi=Math.acos(2*Math.random()-1);positions[i3]=r*Math.sin(phi)*Math.cos(theta);positions[i3+1]=r*Math.sin(phi)*Math.sin(theta);positions[i3+2]=r*Math.cos(phi);// Random velocity\nvelocities[i3]=(Math.random()-.5)*.02;velocities[i3+1]=(Math.random()-.5)*.02;velocities[i3+2]=(Math.random()-.5)*.02;}geometry.setAttribute(\"position\",new THREE.BufferAttribute(positions,3));geometry.setAttribute(\"velocity\",new THREE.BufferAttribute(velocities,3));const material=new THREE.PointsMaterial({size:size,color:parseColor(color),transparent:true,opacity:.6,blending:THREE.AdditiveBlending,depthWrite:false});particleSystem=new THREE.Points(geometry,material);scene.add(particleSystem);}function updateParticles(speed,spread){if(!particleSystem)return;const positions=particleSystem.geometry.attributes.position.array;const velocities=particleSystem.geometry.attributes.velocity.array;const count=positions.length/3;for(let i=0;i<count;i++){const i3=i*3;positions[i3]+=velocities[i3]*speed;positions[i3+1]+=velocities[i3+1]*speed;positions[i3+2]+=velocities[i3+2]*speed;// Wrap around if out of bounds\nconst distSq=positions[i3]*positions[i3]+positions[i3+1]*positions[i3+1]+positions[i3+2]*positions[i3+2];if(distSq>spread*spread){const r=spread*Math.random()*.5;const theta=Math.random()*Math.PI*2;const phi=Math.acos(2*Math.random()-1);positions[i3]=r*Math.sin(phi)*Math.cos(theta);positions[i3+1]=r*Math.sin(phi)*Math.sin(theta);positions[i3+2]=r*Math.cos(phi);}}particleSystem.geometry.attributes.position.needsUpdate=true;}const ground=new THREE.Mesh(new THREE.PlaneGeometry(50,50),new THREE.ShadowMaterial({opacity:.25}));ground.rotation.x=-Math.PI/2;ground.receiveShadow=true;ground.visible=cfg.enableShadows;scene.add(ground);// Post-processing pipeline is created lazily only when an effect is active.\nconst initMetrics=_getOptimizedRenderMetrics(initW,initH,cfg);const initDpr=initMetrics.dpr;renderer.setPixelRatio(initDpr);let composer=null;let hdrRT=null;let renderPass=null;let ssaoPass=null;let bokehPass=null;let alphaRT=null;let alphaSave=null;let alphaRestore=null;let bloom=null;let colorGrading=null;let vignette=null;let chromaticAberration=null;let filmGrain=null;let pixelated=null;let outputPass=null;let fxaa=null;let postFxSignature=\"\";let postFxW=0;let postFxH=0;let postFxDpr=0;// Postprocessing (EffectComposer + all FX passes) is only fetched from\n// the network once a scene actually enables an effect. Until the\n// dynamic import resolves, ensurePostFxPipeline just skips this frame's\n// FX render — the main loop calls it every frame, so it naturally\n// retries and picks the pipeline up as soon as the module is ready.\nlet postFxMods=null;let postFxModsLoading=false;const ensurePostFxModulesLoaded=()=>{if(postFxMods||postFxModsLoading)return;postFxModsLoading=true;_loadPostFxModules().then(mods=>{postFxMods=mods;postFxModsLoading=false;}).catch(err=>{postFxModsLoading=false;console.warn(\"ThreeJS Runtime: post-processing modules failed to load:\",err);});};const syncPostFxRefs=()=>{const target=stateRef.current;if(!target)return;target.composer=composer;target.bloom=bloom;target.ssaoPass=ssaoPass;target.bokehPass=bokehPass;target.alphaRT=alphaRT;target.alphaSave=alphaSave;target.alphaRestore=alphaRestore;target.vignette=vignette;target.chromaticAberration=chromaticAberration;target.filmGrain=filmGrain;target.pixelated=pixelated;target.outputPass=outputPass;target.fxaa=fxaa;target.colorGrading=colorGrading;target._bloom=bloom;target._ssao=ssaoPass;target._dof=bokehPass;target._alphaSave=alphaSave;target._alphaRestore=alphaRestore;target._colorGrading=colorGrading;target._vignette=vignette;target._chromaticAberration=chromaticAberration;target._filmGrain=filmGrain;target._pixelated=pixelated;target._outputPass=outputPass;target._fxaa=fxaa;};const disposePostFxPipeline=()=>{composer?.dispose?.();hdrRT?.dispose?.();if(alphaSave)alphaSave.dispose?.();else alphaRT?.dispose?.();ssaoPass?.dispose?.();bokehPass?.dispose?.();bokehPass?.renderTargetDepth?.dispose?.();bokehPass?.materialDepth?.dispose?.();bokehPass?.materialBokeh?.dispose?.();bloom?.dispose?.();colorGrading?.material?.dispose?.();vignette?.material?.dispose?.();chromaticAberration?.material?.dispose?.();filmGrain?.material?.dispose?.();pixelated?.dispose?.();outputPass?.dispose?.();fxaa?.material?.dispose?.();alphaRestore?.material?.dispose?.();composer=null;hdrRT=null;renderPass=null;ssaoPass=null;bokehPass=null;alphaRT=null;alphaSave=null;alphaRestore=null;bloom=null;colorGrading=null;vignette=null;chromaticAberration=null;filmGrain=null;pixelated=null;outputPass=null;fxaa=null;postFxSignature=\"\";postFxW=0;postFxH=0;postFxDpr=0;syncPostFxRefs();};const ensurePostFxPipeline=(activeCfg,w,h)=>{if(!_runtimeNeedsPostFx(activeCfg)){disposePostFxPipeline();return false;}if(!postFxMods){ensurePostFxModulesLoaded();return false;}const{EffectComposer,RenderPass,UnrealBloomPass,ShaderPass,SSAOPass,BokehPass,OutputPass,FXAAShader}=postFxMods;const metrics=_getOptimizedRenderMetrics(w,h,activeCfg);const dpr=metrics.dpr;const nextSig=_postFxPipelineSignature(activeCfg);if(!composer||postFxSignature!==nextSig){disposePostFxPipeline();hdrRT=new THREE.WebGLRenderTarget(metrics.renderWidth,metrics.renderHeight,{type:THREE.HalfFloatType,format:THREE.RGBAFormat,minFilter:THREE.LinearFilter,magFilter:THREE.LinearFilter,colorSpace:THREE.SRGBColorSpace});composer=new EffectComposer(renderer,hdrRT);composer.setPixelRatio(dpr);// EffectComposer does not automatically blit the last pass\n// to the WebGL canvas. Root sets this flag in its shared\n// renderer path; slots need it as well, otherwise enabling a\n// post-processing-only effect leaves the visible canvas\n// cleared while the result remains in an off-screen target.\ncomposer.renderToScreen=true;renderPass=new RenderPass(scene,camera);renderPass.clear=true;renderPass.clearDepth=true;composer.addPass(renderPass);if(activeCfg.enableSSAO){ssaoPass=new SSAOPass(scene,camera,metrics.renderWidth,metrics.renderHeight);ssaoPass.output=SSAOPass.OUTPUT.Default;composer.addPass(ssaoPass);}const needDof=activeCfg.enableDOF&&activeCfg.cameraType!==\"orthographic\";const needAlphaFix=(activeCfg.bloomEnabled||needDof)&&activeCfg.transparentBackground;if(needAlphaFix){alphaRT=new THREE.WebGLRenderTarget(metrics.renderWidth,metrics.renderHeight,{type:THREE.HalfFloatType,format:THREE.RGBAFormat,minFilter:THREE.LinearFilter,magFilter:THREE.LinearFilter});alphaSave=new AlphaSavePass(alphaRT);composer.addPass(alphaSave);}if(needDof){bokehPass=new BokehPass(scene,camera,{focus:activeCfg.dofFocus,aperture:activeCfg.dofAperture,maxblur:activeCfg.dofMaxBlur});composer.addPass(bokehPass);}if(activeCfg.bloomEnabled){bloom=new UnrealBloomPass(new THREE.Vector2(metrics.renderWidth,metrics.renderHeight),activeCfg.bloomStrength,activeCfg.bloomRadius,activeCfg.bloomThreshold);composer.addPass(bloom);}if(activeCfg.enableColorGrading){colorGrading=new ShaderPass(ColorGradingShader);composer.addPass(colorGrading);}if(activeCfg.enableVignette){vignette=new ShaderPass(VignetteShader);composer.addPass(vignette);}if(activeCfg.enableChromaticAberration){chromaticAberration=new ShaderPass(ChromaticAberrationShader);composer.addPass(chromaticAberration);}if(activeCfg.enableFilmGrain){filmGrain=new ShaderPass(FilmGrainShader);composer.addPass(filmGrain);}if(needAlphaFix){alphaRestore=new ShaderPass(AlphaRestoreShader);alphaRestore.uniforms.tAlpha.value=alphaRT.texture;composer.addPass(alphaRestore);}if(activeCfg.enablePixelate){// Convert the post-processing chain to display-ready RGB\n// before the final screen-space effect(s).\noutputPass=new OutputPass;composer.addPass(outputPass);}if(activeCfg.enableFXAA){fxaa=new ShaderPass(FXAAShader);composer.addPass(fxaa);}if(activeCfg.enablePixelate){pixelated=createFramerTilePixelatePass(ShaderPass);pixelated.setPixelRatio?.(dpr);pixelated.setSize?.(metrics.renderWidth,metrics.renderHeight);pixelated.setTilePixelateConfig?.(activeCfg);composer.addPass(pixelated);}postFxSignature=nextSig;syncPostFxRefs();}const postFxSizeChanged=postFxW!==w||postFxH!==h||Math.abs(postFxDpr-dpr)>.01;if(postFxSizeChanged){composer.setPixelRatio(dpr);composer.setSize(w,h);hdrRT?.setSize?.(metrics.renderWidth,metrics.renderHeight);alphaRT?.setSize?.(metrics.renderWidth,metrics.renderHeight);alphaSave?.setSize?.(metrics.renderWidth,metrics.renderHeight);ssaoPass?.setSize?.(metrics.renderWidth,metrics.renderHeight);bokehPass?.setSize?.(metrics.renderWidth,metrics.renderHeight);pixelated?.setPixelRatio?.(dpr);pixelated?.setSize?.(metrics.renderWidth,metrics.renderHeight);bloom?.resolution?.set?.(metrics.renderWidth,metrics.renderHeight);fxaa?.uniforms?.resolution?.value?.set?.(1/metrics.renderWidth,1/metrics.renderHeight);chromaticAberration?.uniforms?.resolution?.value?.set?.(metrics.renderWidth,metrics.renderHeight);postFxW=w;postFxH=h;postFxDpr=dpr;}if(bokehPass?.uniforms?.[\"aspect\"]){bokehPass.uniforms[\"aspect\"].value=w/h;}if(alphaRestore&&alphaRT){alphaRestore.uniforms.tAlpha.value=alphaRT.texture;}if(stateRef.current){applyEffectsChanges(stateRef.current,activeCfg);}return true;};const clock={elapsedTime:0,_lastTime:performance.now(),getDelta(){const now=performance.now();const delta=Math.max(0,(now-this._lastTime)/1e3);this._lastTime=now;this.elapsedTime+=delta;return delta;},reset(){this._lastTime=performance.now();}};const st={_framesSinceChange:0,renderer,scene,camera,stereoCamera,controls,composer,bloom,ssaoPass,bokehPass,alphaRT,alphaSave,alphaRestore,vignette,chromaticAberration,filmGrain,pixelated,fxaa,colorGrading,envMap,ground,dirLight,fillLight,ambientLight,extraLightObjects,model:null,modelInner:null,mixer:null,animations:[],_activeAnimationAction:null,_activeAnimationKey:\"\",_activeAnimationClipName:\"\",_animationActionCache:new Set,_animationOnceCompleteListener:null,_animationOnceCompleteAction:null,_animationWarmupDone:false,_modelHoverRaycastActive:false,_modelHoverGateInitialized:false,_modelHoverBaseAnimationClip:\"\",_modelHoverPendingAnimationClip:\"\",_pointerCaptureLock:false,clock,particleSystem:null,gridHelper:null,axesHelper:null,modelAxesHelper:null,createParticleSystem,updateParticles,// Dissolve transition state\ndissolveActive:false,_dissolvePendingIn:false,dissolveProgress:0,dissolveDirection:1,dissolveOldModel:null,dissolveOriginalMaterials:new Map,dissolveMaterials:new Map,floatBaseY:0,normalizeScale:1,fitRatio:1,lastModelScale:cfg.modelScale,lastOffsetX:cfg.modelOffsetX,lastOffsetY:cfg.modelOffsetY,lastOffsetZ:cfg.modelOffsetZ,lastRotX:cfg.modelRotationX,lastRotY:cfg.modelRotationY,lastRotZ:cfg.modelRotationZ,hdriLoading:false,hdriLoadingUrl:\"\",envMapSource:\"\",envMapKey:\"\",originalMaterials:new Map,// Cached per-frame values (avoid new THREE.Color every frame)\nlastBgColor:cfg.backgroundColor,cachedBgColor:parseColor(cfg.backgroundColor),cachedDirColor:parseColor(cfg.directionalLightColor),lastDissolveEdgeColorStr:cfg.dissolveEmissiveColor,cachedDissolveEdgeColor:parseColor(cfg.dissolveEmissiveColor),lastDissolveParticleColorStr:\"\",cachedDissolveParticleColor:new THREE.Color,lastParticleColorStr:cfg.particleColor,cachedParticleColor:parseColor(cfg.particleColor),// Variant smoothing state — lerp toward prop targets when scroll smoothing is enabled\nsmoothedScale:cfg.modelScale||1,smoothedOffX:cfg.modelOffsetX||0,smoothedOffY:cfg.modelOffsetY||0,smoothedOffZ:cfg.modelOffsetZ||0,smoothedRotX:cfg.modelRotationX||0,smoothedRotY:cfg.modelRotationY||0,smoothedRotZ:cfg.modelRotationZ||0,smoothedCamX:cfg.cameraPositionX??-1,smoothedCamY:cfg.cameraPositionY??2,smoothedCamZ:cfg.cameraPositionZ??10,// Mouse rotation tracking (normalized -1 to 1)\nmouseX:0,mouseY:0,mouseTargetX:0,mouseTargetY:0,// Sub-scenes (multi-scene Groups)\n// Map<index, { group, modelInner, mixer, animations, normalizeScale, fitRatio, floatBaseY, loadedUrl }>\nsubScenes:new Map,_hasSubSceneItems:(cfg.subSceneItems?.length??0)>0,_resizeCounter:0,// Refs for applyEffectsChanges helper\n_renderer:renderer,_bloom:bloom,_ssao:ssaoPass,_dof:bokehPass,_alphaSave:alphaSave,_alphaRestore:alphaRestore,_colorGrading:colorGrading,_vignette:vignette,_chromaticAberration:chromaticAberration,_filmGrain:filmGrain,_fxaa:fxaa,// Unified scene config hash tracking (material + lighting + env + effects)\nlastSceneHash:\"\",lastMaterialHash:\"\",lastLightingHash:\"\",lastEnvHash:\"\",lastEffectsHash:\"\",// Unified scene transition state (fade-to-black for ALL config changes)\nsceneFadeProgress:0,sceneFadeTargetHash:null,sceneFadeTargetCfg:null,sceneSwapped:false,_lastSceneFadeFactor:null,_fadeCacheDirty:false,// Dissolve particle system (for model URL changes only)\ndissolveParticles:null,_appearReplayStart:0,_lastAppearReplayHash:\"\",// Blur reveal state\n_blurRevealStart:0,// Dissolve smooth transition snapshots (to avoid teleport)\n_dissolveOldSmoothedRotX:0,_dissolveOldSmoothedRotY:0,_dissolveOldSmoothedRotZ:0,_dissolveOldSmoothedOffX:0,_dissolveOldSmoothedOffY:0,_dissolveOldSmoothedOffZ:0,_dissolveOldSmoothedScale:1,_framerRuntimeMode:getFramerRuntimeMode(),_scrollLayoutVersion:1,_scrollLayoutCacheVersion:0,_pageVisible:typeof document===\"undefined\"?true:!document.hidden,_canvasInViewport:true,_lastRenderDpr:initDpr,_lastRenderPixelWidth:initMetrics.renderWidth,_lastRenderPixelHeight:initMetrics.renderHeight,_lastResizeCssW:0,_lastResizeCssH:0,_lastResizeAt:0,_lastPerfLog:0,_lastFrameTime:0,_stats:null,_statsDom:null,_statsPanel:null,_disposed:false,_coordinatorPaused:false,_coordId:0};stateRef.current=st;controls.addEventListener(\"change\",()=>{if(stateRef.current)stateRef.current._framesSinceChange=0;});st.ensurePostFxPipeline=ensurePostFxPipeline;st._coordId=_webglCoordinator.register(st);applyEnvironmentChanges(st,cfg,renderer,scene);// Mouse move listener for rotate-to-mouse\n// Use document-level listener so it works even when wrapper has pointer-events:none\nconst onMouseMove=e=>{if(!wrapRef.current)return;const rect=wrapRef.current.getBoundingClientRect();// Check if mouse is within component bounds\nif(e.clientX>=rect.left&&e.clientX<=rect.right&&e.clientY>=rect.top&&e.clientY<=rect.bottom){// Normalize to -1..1 (center = 0)\nst.mouseTargetX=(e.clientX-rect.left)/rect.width*2-1;st.mouseTargetY=(e.clientY-rect.top)/rect.height*2-1;}else{// Mouse outside bounds — reset\nst.mouseTargetX=0;st.mouseTargetY=0;}};document.addEventListener(\"mousemove\",onMouseMove);// ── Mesh Helper: raycaster hover to show mesh names ──\nconst _meshHelperRaycaster=new THREE.Raycaster;_meshHelperRaycaster.firstHitOnly=true;const _meshHelperMouse=new THREE.Vector2;let _meshHelperHovered=null;let _meshHelperOrigEmissive=null// Map<mesh, Color[]>\n;// Find the logical group root for a hit mesh (walk up until we reach scene/modelInner/modelWrapper)\nconst _findMeshHelperGroup=hitObj=>{// Walk up ONE level: return immediate parent group (the \"collection\")\n// e.g. for Object_4 inside Circle001_8, return Circle001_8\nconst p=hitObj.parent;if(p&&p!==st.scene&&p!==st.modelInner&&p!==st.modelWrapper&&!p.isMesh){return p;}return hitObj;};const onMeshHelperMove=e=>{const cfg=settingsRef.current;if(!cfg.showMeshHelper||!st.modelInner||!wrapRef.current){if(_meshHelperHovered){_unhighlightMeshHelper();}if(meshTooltipRef.current)updateMeshTooltip(null);return;}const rect=wrapRef.current.getBoundingClientRect();if(e.clientX<rect.left||e.clientX>rect.right||e.clientY<rect.top||e.clientY>rect.bottom){if(_meshHelperHovered)_unhighlightMeshHelper();if(meshTooltipRef.current)updateMeshTooltip(null);return;}_meshHelperMouse.x=(e.clientX-rect.left)/rect.width*2-1;_meshHelperMouse.y=-((e.clientY-rect.top)/rect.height)*2+1;_meshHelperRaycaster.setFromCamera(_meshHelperMouse,st.camera);const meshes=_getInteractiveMeshes();if(!meshes.length){if(_meshHelperHovered)_unhighlightMeshHelper();if(meshTooltipRef.current)updateMeshTooltip(null);return;}const hits=_meshHelperRaycaster.intersectObjects(meshes,false);if(hits.length>0){const hitObj=hits[0].object;// Resolve to logical group root (walk up parent chain)\nconst group=_findMeshHelperGroup(hitObj);// Skip emissive highlight if Interactions system is already highlighting this mesh/group\nif(_interactHovered===hitObj||_interactHovered===group){// Still show tooltip but don't touch emissive — Interactions owns it\nif(_meshHelperHovered&&_meshHelperHovered!==group)_unhighlightMeshHelper();_meshHelperHovered=null;_meshHelperOrigEmissive=null;}else if(_meshHelperHovered!==group){_unhighlightMeshHelper();_meshHelperHovered=group;// Save original emissive & highlight ALL meshes in the group\n_meshHelperOrigEmissive=new Map;const childMeshes=[];if(group.isMesh)childMeshes.push(group);else group.traverse(c=>{if(c.isMesh)childMeshes.push(c);});childMeshes.forEach(m=>{if(!m.material)return;const mats=Array.isArray(m.material)?m.material:[m.material];_meshHelperOrigEmissive.set(m,mats.map(mt=>mt.emissive?mt.emissive.clone():null));mats.forEach(mt=>{if(mt.emissive)mt.emissive.setHex(3355494);});});}// Build info — use collection group name (immediate parent of hit mesh)\nconst name=group.name||hitObj.name||\"<unnamed>\";const type=hitObj.isSkinnedMesh?\"SkinnedMesh\":\"Mesh\";// Sum verts across all meshes in collection group\nlet verts=0;const groupMeshes=[];if(group.isMesh)groupMeshes.push(group);else group.traverse(c=>{if(c.isMesh)groupMeshes.push(c);});groupMeshes.forEach(m=>{if(m.geometry){const pa=m.geometry.getAttribute(\"position\");if(pa)verts+=pa.count;}});let mat=\"\";if(hitObj.material){if(Array.isArray(hitObj.material))mat=hitObj.material.map(m=>m.name||m.type).join(\", \");else mat=hitObj.material.name||hitObj.material.type||\"\";}// Build path from group (collection) up to scene\nlet path=name;let p=group.parent;while(p&&p!==st.scene){if(p.name)path=p.name+\" › \"+path;p=p.parent;}updateMeshTooltip({x:e.clientX-rect.left,y:e.clientY-rect.top,name,type,verts,mat,path});}else{if(_meshHelperHovered)_unhighlightMeshHelper();if(meshTooltipRef.current)updateMeshTooltip(null);}};const _unhighlightMeshHelper=()=>{if(_meshHelperHovered&&_meshHelperOrigEmissive){_meshHelperOrigEmissive.forEach((saved,mesh)=>{const mats=Array.isArray(mesh.material)?mesh.material:[mesh.material];mats.forEach((m,i)=>{if(m.emissive&&saved[i])m.emissive.copy(saved[i]);else if(m.emissive)m.emissive.setHex(0);});});}_meshHelperHovered=null;_meshHelperOrigEmissive=null;};document.addEventListener(\"mousemove\",onMeshHelperMove);// ── Mesh Interactions: click / hover / drag raycasting ──\nconst _interactRaycaster=new THREE.Raycaster;_interactRaycaster.firstHitOnly=true;const _interactMouse=new THREE.Vector2;let _interactHovered=null// currently hovered interactive mesh\n;let _interactHoveredConfig=null// config for hovered mesh\n;let _interactOrigEmissive=null// saved emissive for unhighlight\n;let _interactOrigScale=null// saved scale for unhover\n;let _interactHoverEndTimer=null;// ── Smooth hover transition state ──\n// Active channel: mesh being hovered (lerping 0→1)\nconst _hoverLerp={mesh:null,config:null,progress:0,target:0,origEmissive:null,origPosition:null,origRotation:null,origScale:null,targetColor:null,targetPosition:null,targetRotation:null,targetScale:null};// Leaving channel: mesh that was unhovered (lerping 1→0)\nconst _hoverLerpOut={mesh:null,config:null,progress:0,origEmissive:null,origPosition:null,origRotation:null,origScale:null,targetColor:null,targetPosition:null,targetRotation:null,targetScale:null};const _pressLerp={mesh:null,config:null,progress:0,target:0,origEmissive:null,origPosition:null,origRotation:null,origScale:null,targetColor:null,targetPosition:null,targetRotation:null,targetScale:null};const _HOVER_LERP_SPEED=10// ~100ms transition (higher = faster)\n;let _interactDragging=null// mesh being dragged\n;let _interactDragConfig=null// config for dragged mesh\n;let _interactDragPlane=null// THREE.Plane for drag projection\n;let _interactDragOffset=new THREE.Vector3// offset from mesh center to hit point\n;let _interactJustDragged=false// prevent click firing after drag release\n;// ── Drag snap-back lerp state ──\nconst _DRAG_SNAPBACK_SPEED=8// lerp speed (higher = faster)\n;let _dragSnapBack=null// { mesh, targetPos: Vector3 } | null\n;// ── Per-mesh autoRotate/mouseRotate state ──\nconst _meshAutoRotates=new Map// mesh → { speed, axis }\n;const _meshMouseRotates=new Map// mesh → { intensity, baseRotY, baseRotX }\n;// ── Cache for interaction config → matched Object3D mapping ──\n// Avoids re-traversing the entire scene tree every frame.\n// Invalidated when model identity or interaction config names change.\nlet _interactMatchCache=null// meshName → matched Object3D\n;let _interactMatchCacheKey=\"\"// serialized key for invalidation\n;// Reusable Sets to avoid per-frame allocations in render loop\nconst _wantAutoRotate=new Set;const _wantMouseRotate=new Set;// Reusable Map: Object3D → interaction config (avoids redundant _findInteractConfig calls)\nconst _interactConfigByObj=new Map;let _interactResolvedConfigSource=null;const _interactResolvedConfigCache=new Map;// ── Cache for mesh animation name → Object3D mapping ──\n// Same pattern as _interactMatchCache — avoids per-frame tree traversal.\nlet _meshAnimMatchCache=null;let _meshAnimMatchCacheKey=\"\";let _interactiveMeshesCache=[];let _interactiveMeshesCacheKey=\"\";const _interactiveVisibleMeshes=[];let _interactionHoverMeshesCache=[];let _interactionHoverMeshesCacheKey=\"\";const _interactionHoverVisibleMeshes=[];let _lastInteractHoverRaycastAt=0;let _lastModelHoverRaycastAt=0;// Find interactive config for a mesh (by name, partial case-insensitive)\nconst _findInteractConfig=mesh=>{const cfg=settingsRef.current;const interactions=cfg.meshInteractionItems;if(_interactResolvedConfigSource!==interactions){_interactResolvedConfigSource=interactions;_interactResolvedConfigCache.clear();}if(!interactions?.length||!mesh?.name)return null;if(_interactResolvedConfigCache.has(mesh.uuid)){return _interactResolvedConfigCache.get(mesh.uuid);}const meshNameLower=mesh.name.toLowerCase();let matchedConfig=null;for(const ic of interactions){const isEnabled=ic?.enabled??ic?.__hasInteractionEvent??true;if(!ic||!isEnabled||!ic.meshName)continue;const targetName=ic.meshName.trim().toLowerCase();if(targetName&&meshNameLower.includes(targetName)){matchedConfig=ic;break;}}_interactResolvedConfigCache.set(mesh.uuid,matchedConfig);return matchedConfig;};const _clearInteractResolvedConfigCache=()=>{_interactResolvedConfigSource=null;_interactResolvedConfigCache.clear();};const _emitMeshInteractionEvent=(config,eventName,event,obj)=>{const handler=config?.[eventName];if(!handler)return;if(event&&typeof event===\"object\"){try{event.meshName=obj?.name??config?.meshName??\"\";event.meshObject=obj;event.meshInteraction=config;}catch{}}if(event)handler(event);else handler();};// Get all interactive-eligible meshes from scene\nconst _getInteractiveMeshes=()=>{const keyParts=[st.modelInner?.uuid??\"no-primary\",st.model?.visible!==false?\"primary-visible\":\"primary-hidden\"];if(st.subScenes){for(const[idx,ss]of st.subScenes){keyParts.push(`${idx}:${ss._loaded}:${ss.group?.uuid??\"none\"}:${ss.group?.visible!==false}`);}}const key=keyParts.join(\"|\");if(key!==_interactiveMeshesCacheKey){const meshes=[];if(st.modelInner&&st.model?.visible!==false){st.modelInner.traverse(c=>{if(c.isMesh)meshes.push(c);});}if(st.subScenes){for(const[,ss]of st.subScenes){if(ss._loaded&&ss.group&&ss.group.visible){ss.group.traverse(c=>{if(c.isMesh)meshes.push(c);});}}}_interactiveMeshesCache=meshes;_interactiveMeshesCacheKey=key;}_interactiveVisibleMeshes.length=0;for(const mesh of _interactiveMeshesCache){if(mesh.visible)_interactiveVisibleMeshes.push(mesh);}return _interactiveVisibleMeshes;};const _needsWholeModelHoverHit=cfg=>!!(modelHoverStartRef.current||modelHoverEndRef.current||cfg.animationModelHoverGate||cfg.enableOrbitControls);const _getInteractionHoverMeshes=cfg=>{const allMeshes=_getInteractiveMeshes();const targetNames=cfg.meshInteractionTargetNames||[];if(!targetNames.length){return _needsWholeModelHoverHit(cfg)?allMeshes:[];}const cacheKey=_interactiveMeshesCacheKey+\"|targets:\"+targetNames.join(\",\");if(cacheKey!==_interactionHoverMeshesCacheKey){const targeted=[];for(const mesh of allMeshes){let obj=mesh;while(obj&&obj!==st.scene&&obj!==st.model&&obj!==st.modelInner){const name=obj.name?.toLowerCase?.()||\"\";if(name&&targetNames.some(target=>name.includes(target))){targeted.push(mesh);break;}obj=obj.parent;}}_interactionHoverMeshesCache=targeted;_interactionHoverMeshesCacheKey=cacheKey;}_interactionHoverVisibleMeshes.length=0;for(const mesh of _interactionHoverMeshesCache){if(mesh.visible)_interactionHoverVisibleMeshes.push(mesh);}return _interactionHoverVisibleMeshes;};// Compute NDC from event\nconst _interactNDC=e=>{if(!wrapRef.current)return false;const rect=wrapRef.current.getBoundingClientRect();const x=e.clientX??e.touches?.[0]?.clientX;const y=e.clientY??e.touches?.[0]?.clientY;if(x===undefined||y===undefined)return false;if(x<rect.left||x>rect.right||y<rect.top||y>rect.bottom)return false;_interactMouse.x=(x-rect.left)/rect.width*2-1;_interactMouse.y=-((y-rect.top)/rect.height)*2+1;return true;};const _updatePointerCapture=()=>{const cfg=settingsRef.current;const needsCapture=cfg.enableOrbitControls||cfg.hasEnabledMeshInteractions;if(!needsCapture){setModelPointerCapture(false);return;}if((st._interactionPauseUntil||0)>performance.now()){setModelPointerCapture(false);return;}setModelPointerCapture(!!st._pointerCaptureLock||!!st._modelHoverRaycastActive);};const _suspendInteractionDuringScroll=(ms=160,event=null)=>{st._interactionPauseUntil=Math.max(st._interactionPauseUntil||0,performance.now()+ms);st._pointerCaptureLock=false;_emitModelHover(false,event,true);_unhighlightInteract(false);if(interactTooltipRef.current)updateInteractTooltip(null);if(wrapRef.current){wrapRef.current.style.cursor=settingsRef.current.enableOrbitControls?\"grab\":\"default\";}_updatePointerCapture();};// ── Model hover events: raycast actual model pixels/meshes, not the full canvas box ──\nlet _modelHoverActive=false;let _modelHoverEndTimer=null;let _modelHoverPendingEndEvent=null;const _emitModelHover=(active,event,immediate=false)=>{if(active&&_modelHoverEndTimer){clearTimeout(_modelHoverEndTimer);_modelHoverEndTimer=null;_modelHoverPendingEndEvent=null;}if(!active&&immediate&&_modelHoverEndTimer){clearTimeout(_modelHoverEndTimer);_modelHoverEndTimer=null;_modelHoverPendingEndEvent=null;}if(active===_modelHoverActive)return;if(!active&&!immediate){_modelHoverPendingEndEvent=event;if(_modelHoverEndTimer)return;_modelHoverEndTimer=setTimeout(()=>{_modelHoverEndTimer=null;const pendingEvent=_modelHoverPendingEndEvent;_modelHoverPendingEndEvent=null;_emitModelHover(false,pendingEvent,true);},90);return;}_modelHoverActive=active;st._modelHoverRaycastActive=active;_syncModelHoverGatedAnimations(st,settingsRef.current);_updatePointerCapture();const handler=active?modelHoverStartRef.current:modelHoverEndRef.current;if(event)handler?.(event);else handler?.();};const onModelHoverEventMove=e=>{const cfg=settingsRef.current;if((st._interactionPauseUntil||0)>performance.now())return;// When mesh interactions are active, onInteractMove already raycasts\n// the same mesh list and will update model hover. Avoid double raycasts.\nif(cfg.hasEnabledMeshInteractions)return;const needsModelHoverRaycast=modelHoverStartRef.current||modelHoverEndRef.current||cfg.animationModelHoverGate||cfg.enableOrbitControls;if(!needsModelHoverRaycast)return;if(!_interactNDC(e)){_emitModelHover(false,e,true);return;}_interactRaycaster.setFromCamera(_interactMouse,st.camera);const meshes=_getInteractiveMeshes();if(!meshes.length){_emitModelHover(false,e,true);return;}const hits=_interactRaycaster.intersectObjects(meshes,false);_emitModelHover(hits.length>0,e);};// ── Helper: collect child meshes from a group/mesh ──\nconst _collectChildMeshes=obj=>{const out=[];if(obj.isMesh)out.push(obj);else obj.traverse(c=>{if(c.isMesh)out.push(c);});return out;};// ── Helper: save original emissive colors for a set of meshes ──\nconst _saveOrigEmissive=childMeshes=>{const map=new Map;childMeshes.forEach(m=>{if(!m.material)return;const mats=Array.isArray(m.material)?m.material:[m.material];map.set(m,mats.map(mat=>{if(!mat?.emissive)return null;mat.userData=mat.userData||{};if(!mat.userData.__framerBaseEmissive){mat.userData.__framerBaseEmissive=mat.emissive.clone();}return mat.userData.__framerBaseEmissive.clone();}));});return map;};// ── Helper: apply lerped emissive/scale for a hover channel at given progress ──\nconst _hoverTmpColor=new THREE.Color;const _applyHoverLerp=ch=>{const t=ch.progress;// Emissive interpolation\nif(ch.origEmissive&&ch.targetColor){const _tmpColor=_hoverTmpColor;ch.origEmissive.forEach((saved,mesh)=>{if(!mesh.material)return;const mats=Array.isArray(mesh.material)?mesh.material:[mesh.material];mats.forEach((mat,i)=>{if(!mat.emissive)return;const orig=saved?.[i];if(orig){_tmpColor.copy(orig).lerp(ch.targetColor,t);}else{_tmpColor.setHex(0).lerp(ch.targetColor,t);}mat.emissive.copy(_tmpColor);});});}// Scale interpolation\nif(ch.origScale&&ch.targetScale&&ch.mesh){ch.mesh.scale.x+=(ch.targetScale.x-ch.origScale.x)*t;ch.mesh.scale.y+=(ch.targetScale.y-ch.origScale.y)*t;ch.mesh.scale.z+=(ch.targetScale.z-ch.origScale.z)*t;}if(ch.origPosition&&ch.targetPosition&&ch.mesh){ch.mesh.position.x+=(ch.targetPosition.x-ch.origPosition.x)*t;ch.mesh.position.y+=(ch.targetPosition.y-ch.origPosition.y)*t;ch.mesh.position.z+=(ch.targetPosition.z-ch.origPosition.z)*t;}if(ch.origRotation&&ch.targetRotation&&ch.mesh){ch.mesh.rotation.x+=(ch.targetRotation.x-ch.origRotation.x)*t;ch.mesh.rotation.y+=(ch.targetRotation.y-ch.origRotation.y)*t;ch.mesh.rotation.z+=(ch.targetRotation.z-ch.origRotation.z)*t;}};// ── Helper: snap a hover channel back to original (progress=0) & clear ──\nconst _snapHoverChannel=ch=>{if(!ch.mesh)return;ch.progress=0;_applyHoverLerp(ch)// Resets emissive color to orig\n;if(!ch.mesh._meshAnimOrigPos){if(ch.origPosition)ch.mesh.position.copy(ch.origPosition);if(ch.origRotation)ch.mesh.rotation.copy(ch.origRotation);if(ch.origScale)ch.mesh.scale.copy(ch.origScale);}_clearObjectEventHoverBaseTransform(ch.mesh);ch.mesh=null;ch.config=null;ch.origEmissive=null;ch.origPosition=null;ch.origRotation=null;ch.origScale=null;ch.targetColor=null;ch.targetPosition=null;ch.targetRotation=null;ch.targetScale=null;};const _resetPressInteract=()=>{if(!_pressLerp.mesh)return;_pressLerp.progress=0;_applyHoverLerp(_pressLerp);_pressLerp.mesh=null;_pressLerp.config=null;_pressLerp.origPosition=null;_pressLerp.origRotation=null;_pressLerp.origScale=null;_pressLerp.targetPosition=null;_pressLerp.targetRotation=null;_pressLerp.targetScale=null;};const _applyPressInteract=(mesh,config)=>{if(!mesh||!config?.pressEnabled||config?.draggable)return;if(_pressLerp.mesh&&_pressLerp.mesh!==mesh){_resetPressInteract();}const targets=_makeObjectEventTransformTargets(mesh,config,\"pressTransform\");_pressLerp.mesh=mesh;_pressLerp.config=config;_pressLerp.progress=1;_pressLerp.target=1;_pressLerp.origPosition=targets.origPosition;_pressLerp.origRotation=targets.origRotation;_pressLerp.origScale=targets.origScale;_pressLerp.targetPosition=targets.targetPosition;_pressLerp.targetRotation=targets.targetRotation;_pressLerp.targetScale=targets.targetScale;_applyHoverLerp(_pressLerp);};const _unhighlightInteract=(emitEvent=true)=>{if(_interactHoverEndTimer){clearTimeout(_interactHoverEndTimer);_interactHoverEndTimer=null;}if(_interactHovered){if(emitEvent){_emitMeshInteractionEvent(_interactHoveredConfig,\"onMeshLeave\",null,_interactHovered);}// Move active channel → leaving channel for smooth fade-out\nif(_hoverLerpOut.mesh&&_hoverLerpOut.mesh!==_interactHovered){_snapHoverChannel(_hoverLerpOut)// snap old leaving mesh\n;}_hoverLerpOut.mesh=_hoverLerp.mesh;_hoverLerpOut.config=_hoverLerp.config;_hoverLerpOut.progress=_hoverLerp.progress;_hoverLerpOut.origEmissive=_hoverLerp.origEmissive;_hoverLerpOut.origPosition=_hoverLerp.origPosition;_hoverLerpOut.origRotation=_hoverLerp.origRotation;_hoverLerpOut.origScale=_hoverLerp.origScale;_hoverLerpOut.targetColor=_hoverLerp.targetColor;_hoverLerpOut.targetPosition=_hoverLerp.targetPosition;_hoverLerpOut.targetRotation=_hoverLerp.targetRotation;_hoverLerpOut.targetScale=_hoverLerp.targetScale;// Clear active channel\n_hoverLerp.mesh=null;_hoverLerp.config=null;_hoverLerp.progress=0;_hoverLerp.target=0;_hoverLerp.origEmissive=null;_hoverLerp.origPosition=null;_hoverLerp.origRotation=null;_hoverLerp.origScale=null;_hoverLerp.targetColor=null;_hoverLerp.targetPosition=null;_hoverLerp.targetRotation=null;_hoverLerp.targetScale=null;}_interactHovered=null;_interactHoveredConfig=null;_interactOrigEmissive=null;_interactOrigScale=null;};const _scheduleUnhighlightInteract=()=>{if(!_interactHovered||_interactHoverEndTimer)return;_interactHoverEndTimer=setTimeout(()=>{_interactHoverEndTimer=null;_unhighlightInteract();},90);};const _highlightInteract=(mesh,config)=>{if(_interactHoverEndTimer){clearTimeout(_interactHoverEndTimer);_interactHoverEndTimer=null;}if(_interactHovered===mesh)return;// If we're re-hovering the mesh that's currently fading out, reclaim it\nif(_hoverLerpOut.mesh===mesh){_hoverLerp.mesh=_hoverLerpOut.mesh;_hoverLerp.config=_hoverLerpOut.config;_hoverLerp.progress=_hoverLerpOut.progress// continue from current fade-out progress\n;_hoverLerp.target=1;_hoverLerp.origEmissive=_hoverLerpOut.origEmissive;_hoverLerp.origPosition=_hoverLerpOut.origPosition;_hoverLerp.origRotation=_hoverLerpOut.origRotation;_hoverLerp.origScale=_hoverLerpOut.origScale;_hoverLerp.targetColor=_hoverLerpOut.targetColor;_hoverLerp.targetPosition=_hoverLerpOut.targetPosition;_hoverLerp.targetRotation=_hoverLerpOut.targetRotation;_hoverLerp.targetScale=_hoverLerpOut.targetScale;_hoverLerpOut.mesh=null;_hoverLerpOut.config=null;_hoverLerpOut.progress=0;_hoverLerpOut.origEmissive=null;_hoverLerpOut.origPosition=null;_hoverLerpOut.origRotation=null;_hoverLerpOut.origScale=null;_hoverLerpOut.targetColor=null;_hoverLerpOut.targetPosition=null;_hoverLerpOut.targetRotation=null;_hoverLerpOut.targetScale=null;_interactHovered=mesh;_interactHoveredConfig=config;_emitMeshInteractionEvent(config,\"onMeshEnter\",null,mesh);return;}_unhighlightInteract();_interactHovered=mesh;_interactHoveredConfig=config;_emitMeshInteractionEvent(config,\"onMeshEnter\",null,mesh);const hoverEffect=config.hoverEffect??\"highlight\";if(hoverEffect===\"none\")return;const childMeshes=_collectChildMeshes(mesh);// Setup lerp active channel\n_hoverLerp.mesh=mesh;_hoverLerp.config=config;_hoverLerp.progress=0;_hoverLerp.target=1;// Emissive target (always apply to link parameters)\nif(childMeshes.length>0){_hoverLerp.origEmissive=_saveOrigEmissive(childMeshes);_hoverLerp.targetColor=parseColor(config.hoverColor??\"#4466ff\");_interactOrigEmissive=_hoverLerp.origEmissive// keep ref for compat\n;}// Scale target\nif(hoverEffect===\"scale\"){_hoverLerp.origScale=mesh.scale.clone();const factor=config.hoverScale??1.1;_hoverLerp.targetScale=mesh.scale.clone().multiplyScalar(factor);_interactOrigScale=_hoverLerp.origScale// keep ref for compat\n;}else if(hoverEffect===\"transform\"){const targets=_makeObjectEventTransformTargets(mesh,config,\"hoverTransform\");_hoverLerp.origPosition=targets.origPosition;_hoverLerp.origRotation=targets.origRotation;_hoverLerp.origScale=targets.origScale;_hoverLerp.targetPosition=targets.targetPosition;_hoverLerp.targetRotation=targets.targetRotation;_hoverLerp.targetScale=targets.targetScale;_interactOrigScale=_hoverLerp.origScale// keep ref for compat\n;}};// ── Hover handler ──\nconst onInteractMove=e=>{const cfg=settingsRef.current;if((st._interactionPauseUntil||0)>performance.now())return;const isMobileHoverDisabled=cfg.responsiveIsMobile;if(!cfg.hasEnabledMeshInteractions||!st.modelInner||_interactDragging)return;if(!_interactNDC(e)){_emitModelHover(false,e,true);_unhighlightInteract();if(interactTooltipRef.current)updateInteractTooltip(null);if(wrapRef.current)wrapRef.current.style.cursor=cfg.enableOrbitControls?\"grab\":\"default\";return;}_interactRaycaster.setFromCamera(_interactMouse,st.camera);const meshes=_getInteractionHoverMeshes(cfg);if(!meshes.length){_emitModelHover(false,e,true);return;}const hits=_interactRaycaster.intersectObjects(meshes,false);if(_needsWholeModelHoverHit(cfg)){_emitModelHover(hits.length>0,e);}if(isMobileHoverDisabled){_unhighlightInteract();if(interactTooltipRef.current)updateInteractTooltip(null);if(wrapRef.current)wrapRef.current.style.cursor=cfg.enableOrbitControls?\"grab\":\"default\";return;}let foundInteractive=false;for(const hit of hits){// Walk up to find the mesh with a name that matches an interaction config\nlet obj=hit.object;let config=null;while(obj&&obj!==st.scene&&obj!==st.model&&obj!==st.modelInner){config=_interactConfigByObj.get(obj)||_findInteractConfig(obj);if(config){const targetLower=config.meshName?.trim()?.toLowerCase();const matchedObj=_interactMatchCache?.get(targetLower);if(matchedObj){obj=matchedObj;}break;}obj=obj.parent;}if(config&&obj){foundInteractive=true;_highlightInteract(obj,config);// Set cursor\nif(wrapRef.current){if(config.draggable)wrapRef.current.style.cursor=\"grab\";else if(config.clickAction&&config.clickAction!==\"none\")wrapRef.current.style.cursor=config.cursorStyle??\"pointer\";else wrapRef.current.style.cursor=config.cursorStyle??\"pointer\";}// Show interaction tooltip if configured\nconst tooltipText=(config.hoverTooltip??\"\").trim();if(tooltipText&&wrapRef.current){const rect=wrapRef.current.getBoundingClientRect();updateInteractTooltip({x:e.clientX-rect.left,y:e.clientY-rect.top,text:tooltipText});}else if(interactTooltipRef.current){updateInteractTooltip(null);}break;}}if(!foundInteractive){_scheduleUnhighlightInteract();if(interactTooltipRef.current)updateInteractTooltip(null);if(wrapRef.current)wrapRef.current.style.cursor=cfg.enableOrbitControls?\"grab\":\"default\";}};// ── Click handler ──\nconst onInteractClick=e=>{const cfg=settingsRef.current;if(_interactDragging)return;// don't click while dragging\n// Skip click if we just finished dragging\nif(_interactJustDragged){_interactJustDragged=false;return;}if(!_interactNDC(e))return;_interactRaycaster.setFromCamera(_interactMouse,st.camera);const meshes=_getInteractiveMeshes();if(!meshes.length)return;const hits=_interactRaycaster.intersectObjects(meshes,false);if(!hits.length)return;modelClickRef.current?.(e);if(!cfg.hasEnabledMeshInteractions||!st.modelInner)return;for(const hit of hits){let obj=hit.object;let config=null;while(obj&&obj!==st.scene&&obj!==st.model&&obj!==st.modelInner){config=_interactConfigByObj.get(obj)||_findInteractConfig(obj);if(config){const targetLower=config.meshName?.trim()?.toLowerCase();const matchedObj=_interactMatchCache?.get(targetLower);if(matchedObj){obj=matchedObj;}break;}obj=obj.parent;}if(!config||!obj)continue;_emitMeshInteractionEvent(config,\"onMeshClick\",e,obj);// ── Click Action ──\nconst action=config.clickAction??\"none\";if(action===\"openUrl\"){const url=config.clickUrl??\"\";if(url){if(config.clickUrlNewTab)window.open(url,\"_blank\",\"noopener\");else window.location.href=url;}}else if(action===\"toggleVisibility\"){// Toggle self or target mesh\nconst targetName=(config.clickTargetMesh??\"\").trim();if(targetName){const tLower=targetName.toLowerCase();const allModels=[st.modelInner];if(st.subScenes){for(const[,ss]of st.subScenes){if(ss._loaded&&ss.group)allModels.push(ss.group);}}for(const root of allModels){root.traverse(c=>{if(c.name&&c.name.toLowerCase().includes(tLower)){c.visible=!c.visible;}});}}else{obj.visible=!obj.visible;_unhighlightInteract();}}else if(action===\"changeColor\"){// Toggle color — click once to apply, click again to restore original\n// Collect all meshes in the group\nconst colorMeshes=[];if(obj.isMesh)colorMeshes.push(obj);else obj.traverse(c=>{if(c.isMesh&&c.material)colorMeshes.push(c);});if(colorMeshes.length>0){const isApplied=obj._interactColorApplied;if(isApplied){colorMeshes.forEach(m=>{_restoreMaterial(m);});obj._interactColorApplied=false;}else{const newColor=parseColor(config.clickColor??\"#ff0000\");colorMeshes.forEach(m=>{_backupMaterial(m);const mats=Array.isArray(m.material)?m.material:[m.material];mats.forEach(mat=>{if(mat.color)mat.color.copy(newColor);});});obj._interactColorApplied=true;}}}else if(action===\"playAnimation\"){const clipName=(config.clickAnimClip??\"\").trim();if(clipName&&st.mixer&&st.animations?.length){const clip=_findAnimationClip(st.animations,clipName);if(clip){const existingAction=st.mixer.existingAction(clip);if(existingAction?.isRunning()){if(existingAction._meshCompleteListener){st.mixer.removeEventListener(\"finished\",existingAction._meshCompleteListener);existingAction._meshCompleteListener=null;}existingAction.stop();}else{const a=st.mixer.clipAction(clip);if(a._meshCompleteListener){st.mixer.removeEventListener(\"finished\",a._meshCompleteListener);a._meshCompleteListener=null;}// Loop mode\nconst loopMode=config.clickAnimLoop??\"once\";if(loopMode===\"repeat\"){a.setLoop(THREE.LoopRepeat,Infinity);a.clampWhenFinished=false;}else if(loopMode===\"pingPong\"){a.setLoop(THREE.LoopPingPong,Infinity);a.clampWhenFinished=false;}else{a.setLoop(THREE.LoopOnce,1);a.clampWhenFinished=true;}// Reverse playback\nif(config.clickAnimReverse){a.timeScale=-1;}else{a.timeScale=1;}if(loopMode===\"once\"&&config.onAnimationComplete){const onFinished=evt=>{if(evt?.action!==a)return;st.mixer.removeEventListener(\"finished\",onFinished);a._meshCompleteListener=null;_emitMeshInteractionEvent(config,\"onAnimationComplete\",e,obj);};st.mixer.addEventListener(\"finished\",onFinished);a._meshCompleteListener=onFinished;}a.reset();if(config.clickAnimReverse){a.time=clip.duration;}a.play();}}}}break;// only handle first interactive hit\n}};// ── Drag handlers ──\nconst _tmpVec3Drag=new THREE.Vector3;const _tmpVec3DragB=new THREE.Vector3;const onInteractPointerDown=e=>{const cfg=settingsRef.current;const isMobilePress=_isMobileInteraction(e,cfg);const shouldPrioritizeTouchScroll=isMobilePress&&cfg.scrollAnchorEnabled&&!cfg.hasDraggableMeshInteractions;if(!st.modelInner)return;if(shouldPrioritizeTouchScroll){_emitModelHover(false,e,true);return;}if(!_interactNDC(e)){if(isMobilePress)_emitModelHover(false,e,true);return;}_interactRaycaster.setFromCamera(_interactMouse,st.camera);const meshes=_getInteractiveMeshes();const hits=_interactRaycaster.intersectObjects(meshes,false);if(isMobilePress)_emitModelHover(hits.length>0,e);if(!cfg.hasEnabledMeshInteractions)return;for(const hit of hits){let obj=hit.object;let config=null;while(obj&&obj!==st.scene&&obj!==st.model&&obj!==st.modelInner){config=_interactConfigByObj.get(obj)||_findInteractConfig(obj);if(config){const targetLower=config.meshName?.trim()?.toLowerCase();const matchedObj=_interactMatchCache?.get(targetLower);if(matchedObj){obj=matchedObj;}break;}obj=obj.parent;}if(config&&obj){_applyPressInteract(obj,config);break;}}if(isMobilePress){for(const hit of hits){let obj=hit.object;let config=null;while(obj&&obj!==st.scene&&obj!==st.model&&obj!==st.modelInner){config=_interactConfigByObj.get(obj)||_findInteractConfig(obj);if(config){const targetLower=config.meshName?.trim()?.toLowerCase();const matchedObj=_interactMatchCache?.get(targetLower);if(matchedObj){obj=matchedObj;}break;}obj=obj.parent;}if(config&&obj){_highlightInteract(obj,config);break;}}}for(const hit of hits){let obj=hit.object;let config=null;while(obj&&obj!==st.scene&&obj!==st.model&&obj!==st.modelInner){config=_interactConfigByObj.get(obj)||_findInteractConfig(obj);if(config){const targetLower=config.meshName?.trim()?.toLowerCase();const matchedObj=_interactMatchCache?.get(targetLower);if(matchedObj){obj=matchedObj;}break;}obj=obj.parent;}if(!config||!config.draggable||!obj)continue;e.preventDefault?.();e.stopPropagation?.();_interactDragging=obj;_interactDragConfig=config;_emitMeshInteractionEvent(config,\"onDragStart\",e,obj);// Cancel any in-progress snap-back on this mesh\nif(_dragSnapBack&&_dragSnapBack.mesh===obj){_dragSnapBack=null;}// Save original position for snap-back\nif(!obj._interactOrigPos)obj._interactOrigPos=obj.position.clone();// Build drag plane based on config\nconst planeType=config.dragPlane??\"xz\";if(planeType===\"xy\")_tmpVec3A.set(0,0,1);else if(planeType===\"yz\")_tmpVec3A.set(1,0,0);else if(planeType===\"screen\"){// Plane facing camera\nst.camera.getWorldDirection(_tmpVec3A);_tmpVec3A.negate();}else _tmpVec3A.set(0,1,0)// xz\n;_interactDragPlane=new THREE.Plane;_interactDragPlane.setFromNormalAndCoplanarPoint(_tmpVec3A,obj.position);// Compute offset (so dragging doesn't snap object center to cursor)\n_interactRaycaster.ray.intersectPlane(_interactDragPlane,_tmpVec3Drag);_interactDragOffset.copy(_tmpVec3Drag).sub(obj.position);// Disable orbit controls during drag\ncontrols.enabled=false;if(wrapRef.current)wrapRef.current.style.cursor=\"grabbing\";break;}};const onInteractPointerMove=e=>{if(!_interactDragging||!_interactDragPlane)return;if(!_interactNDC(e))return;_interactRaycaster.setFromCamera(_interactMouse,st.camera);if(_interactRaycaster.ray.intersectPlane(_interactDragPlane,_tmpVec3DragB)){_tmpVec3DragB.sub(_interactDragOffset);// Apply constraint if set\nconst constraint=_interactDragConfig?.dragConstraint??0;if(constraint>0&&_interactDragging._interactOrigPos){const dist=_tmpVec3DragB.distanceTo(_interactDragging._interactOrigPos);if(dist>constraint){_tmpVec3DragB.sub(_interactDragging._interactOrigPos).normalize().multiplyScalar(constraint).add(_interactDragging._interactOrigPos);}}_interactDragging.position.copy(_tmpVec3DragB);}};const onInteractPointerUp=e=>{const cfg=settingsRef.current;_resetPressInteract();if(_isMobileInteraction(e,cfg)){_emitModelHover(false,e,true);_unhighlightInteract();}if(!_interactDragging)return;const draggedMesh=_interactDragging;const draggedConfig=_interactDragConfig;// Flag that we just finished a drag — click event fires after pointerUp\n_interactJustDragged=true;// Snap back if configured — smooth lerp instead of instant\nif(_interactDragConfig?.dragSnapBack&&_interactDragging._interactOrigPos){_dragSnapBack={mesh:_interactDragging,targetPos:_interactDragging._interactOrigPos.clone()};}// Re-enable orbit controls\ncontrols.enabled=cfg.enableOrbitControls;if(wrapRef.current)wrapRef.current.style.cursor=cfg.enableOrbitControls?\"grab\":\"default\";_emitMeshInteractionEvent(draggedConfig,\"onDragEnd\",e,draggedMesh);_interactDragging=null;_interactDragConfig=null;_interactDragPlane=null;};const onCanvasPointerCaptureDown=e=>{const cfg=settingsRef.current;if((st._interactionPauseUntil||0)>performance.now())return;if(!cfg.enableOrbitControls&&!cfg.hasEnabledMeshInteractions)return;if(!_interactNDC(e))return;_interactRaycaster.setFromCamera(_interactMouse,st.camera);const meshes=_getInteractiveMeshes();if(!meshes.length)return;const hits=_interactRaycaster.intersectObjects(meshes,false);if(!hits.length)return;st._pointerCaptureLock=true;_updatePointerCapture();};const onCanvasPointerCaptureUp=()=>{st._pointerCaptureLock=false;_updatePointerCapture();};let _modelHoverMoveRaf=0;let _modelHoverMoveEvent=null;const onModelHoverEventMoveRaf=e=>{// Skip entirely during scroll suppression — avoids getBoundingClientRect + raycast\nif((st._interactionPauseUntil||0)>performance.now())return;const now=performance.now();if(now-_lastModelHoverRaycastAt<48)return;_lastModelHoverRaycastAt=now;_modelHoverMoveEvent=e;if(_modelHoverMoveRaf)return;_modelHoverMoveRaf=requestAnimationFrame(()=>{_modelHoverMoveRaf=0;const evt=_modelHoverMoveEvent;_modelHoverMoveEvent=null;if(evt)onModelHoverEventMove(evt);});};let _interactMoveRaf=0;let _interactMoveEvent=null;const onInteractMoveRaf=e=>{// Skip entirely during scroll suppression — avoids getBoundingClientRect + raycast\nif((st._interactionPauseUntil||0)>performance.now())return;const now=performance.now();const interval=_interactHovered?32:56;if(now-_lastInteractHoverRaycastAt<interval)return;_lastInteractHoverRaycastAt=now;_interactMoveEvent=e;if(_interactMoveRaf)return;_interactMoveRaf=requestAnimationFrame(()=>{_interactMoveRaf=0;const evt=_interactMoveEvent;_interactMoveEvent=null;if(evt)onInteractMove(evt);});};let _interactPointerMoveRaf=0;let _interactPointerMoveEvent=null;const onInteractPointerMoveRaf=e=>{if(_isMobileInteraction(e,settingsRef.current)&&!_interactDragging){return;}_interactPointerMoveEvent=e;if(_interactPointerMoveRaf)return;_interactPointerMoveRaf=requestAnimationFrame(()=>{_interactPointerMoveRaf=0;const evt=_interactPointerMoveEvent;_interactPointerMoveEvent=null;if(evt)onInteractPointerMove(evt);});};const onCanvasWheel=e=>{const cfg=settingsRef.current;_suspendInteractionDuringScroll(480,e);if(cfg.enableScrollAnimation||!cfg.enableZoom){// Let page/section scroll continue while the fixed canvas is hovering a mesh.\n// OrbitControls listens on the canvas and may otherwise consume wheel events.\ne.stopImmediatePropagation?.();}};const onWindowScrollInteractionPause=()=>{_suspendInteractionDuringScroll(520,null);};// Attach interaction listeners\ndocument.addEventListener(\"mousemove\",onModelHoverEventMoveRaf);document.addEventListener(\"mousemove\",onInteractMoveRaf);window.addEventListener(\"scroll\",onWindowScrollInteractionPause,{passive:true});canvas.addEventListener(\"wheel\",onCanvasWheel,{capture:true,passive:true});canvas.addEventListener(\"pointerdown\",onCanvasPointerCaptureDown);document.addEventListener(\"click\",onInteractClick);canvas.addEventListener(\"pointerdown\",onInteractPointerDown);document.addEventListener(\"pointermove\",onInteractPointerMoveRaf);document.addEventListener(\"pointerup\",onInteractPointerUp);document.addEventListener(\"pointerup\",onCanvasPointerCaptureUp);document.addEventListener(\"pointercancel\",onInteractPointerUp);document.addEventListener(\"pointercancel\",onCanvasPointerCaptureUp);// Touch support\ncanvas.addEventListener(\"touchstart\",onInteractPointerDown,{passive:false});document.addEventListener(\"touchmove\",onInteractPointerMoveRaf,{passive:true});document.addEventListener(\"touchend\",onInteractPointerUp);document.addEventListener(\"touchend\",onCanvasPointerCaptureUp);let resizeRaf=0;let resizeTimeout=null;const resize=(force=false)=>{if(!wrapRef.current)return;// Use clientWidth/Height (CSS logical size, ignores Framer zoom/transforms)\n// instead of getBoundingClientRect (which returns scaled visual size)\nconst w=wrapRef.current.clientWidth;const h=wrapRef.current.clientHeight;if(!w||!h)return;const cfgForResize=settingsRef.current;const st=stateRef.current;if(!st)return;const metrics=_getOptimizedRenderMetrics(w,h,cfgForResize);const dpr=metrics.dpr;const sizeStable=Math.abs(w-(st._lastResizeCssW||0))<=1&&Math.abs(h-(st._lastResizeCssH||0))<=1;const dprStable=Math.abs(dpr-(st._lastRenderDpr||0))<=.01;if(!force&&sizeStable&&dprStable)return;// false = don't override canvas CSS (keeps width:100%;height:100%)\nrenderer.setSize(w,h,false);renderer.setPixelRatio(dpr);if(_runtimeNeedsPostFx(cfgForResize)){ensurePostFxPipeline(cfgForResize,w,h);}else{disposePostFxPipeline();}if(bokehPass?.uniforms?.[\"aspect\"]){bokehPass.uniforms[\"aspect\"].value=w/h;}if(camera.isOrthographicCamera){const aspect=w/h;camera.left=-_ORTHO_FRUSTUM*aspect/2;camera.right=_ORTHO_FRUSTUM*aspect/2;camera.top=_ORTHO_FRUSTUM/2;camera.bottom=-_ORTHO_FRUSTUM/2;}else{camera.aspect=w/h;}camera.updateProjectionMatrix();fxaa?.uniforms?.resolution?.value?.set?.(1/metrics.renderWidth,1/metrics.renderHeight);// Re-run auto-fit when container resizes\nst._lastRenderDpr=dpr;st._lastRenderPixelWidth=metrics.renderWidth;st._lastRenderPixelHeight=metrics.renderHeight;st._lastResizeCssW=w;st._lastResizeCssH=h;st._lastResizeAt=performance.now();if(st.model){const cfg=settingsRef.current;st.model.scale.setScalar(st.normalizeScale);st.model.position.set(0,0,0);_tmpBox3.copy(_computeMeshOnlyBoundingBox(st.model));controls.target.set(0,0,0);controls.update();const normSize=_tmpBox3.getSize(_tmpVec3A);st.fitRatio=_getAutoFitRatio(camera,normSize);const ms=Math.max(.01,cfg.modelScale||1);st.model.scale.setScalar(st.normalizeScale*st.fitRatio*ms);applyModelTransform(st,cfg);}};const scheduleResize=(force=false)=>{_markScrollLayoutDirty(st);if(resizeRaf){cancelAnimationFrame(resizeRaf);resizeRaf=0;}if(resizeTimeout){clearTimeout(resizeTimeout);resizeTimeout=null;}const run=()=>{resizeRaf=0;resize(force);};const stNow=stateRef.current;const now=performance.now();const sinceLast=now-(stNow?._lastResizeAt||0);// Browser zoom can fire a burst of ResizeObserver/layout updates.\n// Apply one resize quickly, then coalesce the rest into a trailing update.\nif(force||sinceLast>120){resizeRaf=requestAnimationFrame(run);return;}resizeTimeout=setTimeout(()=>{resizeTimeout=null;resizeRaf=requestAnimationFrame(run);},140);};st._scheduleResize=scheduleResize;const ro=new ResizeObserver(()=>{_markScrollLayoutDirty(st);scheduleResize(false);});if(wrapRef.current)ro.observe(wrapRef.current);resize(true);// Delayed resize for Framer layout timing (component may not be laid out yet)\nconst delayedResizeTimers=[setTimeout(()=>scheduleResize(true),100),setTimeout(()=>scheduleResize(true),500)];const onVisibilityChange=()=>{st._pageVisible=!document.hidden;// Drop accumulated delta so animations don't jump after the tab resumes.\nclock.reset();};document.addEventListener(\"visibilitychange\",onVisibilityChange);const onWindowLayoutChange=()=>{_markScrollLayoutDirty(st);};window.addEventListener(\"resize\",onWindowLayoutChange,{passive:true});window.addEventListener(\"scroll\",onWindowLayoutChange,{passive:true});// Element scroll events do not bubble to the window listener above.\n// Framer can scroll an inner page container, so capture scroll events\n// at the document level to invalidate the cached model Scroll ID rect.\ndocument.addEventListener(\"scroll\",onWindowLayoutChange,{passive:true,capture:true});const vv=typeof window!==\"undefined\"?window.visualViewport:null;vv?.addEventListener(\"resize\",onWindowLayoutChange,{passive:true});vv?.addEventListener(\"scroll\",onWindowLayoutChange,{passive:true});// On mobile, inertial scroll continues after touchend and scroll events\n// may fire less frequently than rAF. Force rect cache invalidation on\n// every touchmove so getBoundingClientRect is never stale during a flick.\nconst onTouchMoveLayoutDirty=()=>{if(st._scrollLayoutRectCache?.clear){st._scrollLayoutRectCache.clear();}else{st._scrollLayoutRectCache=new Map;}};window.addEventListener(\"touchmove\",onTouchMoveLayoutDirty,{passive:true,capture:false});let io=null;if(typeof IntersectionObserver!==\"undefined\"&&wrapRef.current){io=new IntersectionObserver(([entry])=>{const ratio=entry?.intersectionRatio??0;st._canvasInViewport=!!entry?.isIntersecting&&ratio>0;_webglCoordinator.notify(st._coordId,ratio);},{threshold:[0,.25,.5,.75,1]});io.observe(wrapRef.current);}// ─── Render loop ───\nconst loop=()=>{rafRef.current=requestAnimationFrame(loop);const cfg=settingsRef.current;const runtimeMode=getFramerRuntimeMode();const stopInEditor=runtimeMode===\"canvas\"&&cfg.stopMotionInEditor;let statsMonitor=null;if(cfg.showStatsMonitor){statsMonitor=_syncStatsMonitor(st,cfg,wrapRef.current);}else if(st._stats||st._statsDom){_removeStatsMonitor(st);}// Coordinator pause takes precedence: a low-priority canvas in a\n// multi-canvas page is paused regardless of per-instance flags.\n// This also implicitly syncs performancePauseOffscreen across the\n// group — if any canvas is offscreen it loses its budget slot.\nconst coordPaused=!!st._coordinatorPaused;// Context destruction: coordinator signals this slot should free its\n// WebGL context because it has been off-screen for too long AND the\n// total registered instance count exceeds the hard context limit.\n// Parsed geometry stays in _modelCache so re-init is fast when the\n// slot scrolls back into view.\nif(st._coordinatorShouldDestroy&&!st._destroyScheduled){st._destroyScheduled=true;cancelAnimationFrame(rafRef.current);rafRef.current=0;// Defer to avoid destroying mid-frame\nsetTimeout(()=>{setWebglRuntimeActive(false);st._destroyScheduled=false;},0);return;}const pauseRender=coordPaused||cfg.performanceMode&&(cfg.performancePauseHidden&&!st._pageVisible||cfg.performancePauseOffscreen&&!st._canvasInViewport);if(pauseRender){// Keep the clock fresh, but skip all scene updates and GPU rendering.\nclock.reset();st._lastFrameTime=0;return;}const frameNow=performance.now();const effectiveCfg=cfg;const scrollCfg=cfg;st._hasSubSceneItems=(cfg.subSceneItems?.length??0)>0;const dt=stopInEditor?0:Math.min(.05,clock.getDelta());statsMonitor?.begin?.();// OPTIMIZATION: Render-On-Demand (Skip WebGL draw calls when idle)\nif(st._lastCfgObj!==cfg){st._lastCfgObj=cfg;st._framesSinceChange=0;}if(st.mixer&&st._activeAnimationAction?.isRunning()||st._blurRevealStart>0||_interactDragging||cfg.enableScrollAnimation||cfg.enableParticles||cfg.enableFloat||cfg.enableFilmGrain||cfg.meshAnimationsRaw?.length>0||cfg.autoRotateSpeed!==0){st._framesSinceChange=0;}st._framesSinceChange++;const shouldRenderGL=st._framesSinceChange<=15;const elapsed=clock.elapsedTime;const scrollAnchorOffset=_getScrollAnchorOffset(st,scrollCfg,wrapRef.current,frameNow);const scrollTransformBaseOffset=_getScrollTransformProgressOffset(st,scrollCfg,wrapRef.current,frameNow);const scrollTransformPreviewEnabled=!!cfg.scrollProgressTransformEnabled;const scrollTransformPreviewChanged=st._scrollTransformPreviewSeen&&(st._scrollTransformPreviewEnabled!==scrollTransformPreviewEnabled||st._scrollTransformPreviewPositionX!==cfg.scrollProgressPositionX||st._scrollTransformPreviewPositionY!==cfg.scrollProgressPositionY||st._scrollTransformPreviewPositionZ!==cfg.scrollProgressPositionZ||st._scrollTransformPreviewScale!==cfg.scrollProgressScale||st._scrollTransformPreviewRotationX!==cfg.scrollAnchorRotationX||st._scrollTransformPreviewRotationY!==cfg.scrollAnchorRotationY||st._scrollTransformPreviewRotationZ!==cfg.scrollAnchorRotationZ);if(isCanvas&&scrollTransformPreviewChanged){st._scrollTransformPreviewUntil=scrollTransformPreviewEnabled?frameNow+700:0;}st._scrollTransformPreviewSeen=true;st._scrollTransformPreviewEnabled=scrollTransformPreviewEnabled;st._scrollTransformPreviewPositionX=cfg.scrollProgressPositionX;st._scrollTransformPreviewPositionY=cfg.scrollProgressPositionY;st._scrollTransformPreviewPositionZ=cfg.scrollProgressPositionZ;st._scrollTransformPreviewScale=cfg.scrollProgressScale;st._scrollTransformPreviewRotationX=cfg.scrollAnchorRotationX;st._scrollTransformPreviewRotationY=cfg.scrollAnchorRotationY;st._scrollTransformPreviewRotationZ=cfg.scrollAnchorRotationZ;let scrollTransformOffset=scrollTransformBaseOffset;if(isCanvas&&scrollTransformPreviewEnabled&&(st._scrollTransformPreviewUntil||0)>frameNow){const previewOffset=st._scrollTransformPreviewOffset||(st._scrollTransformPreviewOffset={x:0,y:0,active:true,inView:true,progress:1});previewOffset.x=scrollTransformBaseOffset.x;previewOffset.y=scrollTransformBaseOffset.y;previewOffset.active=true;previewOffset.inView=scrollTransformBaseOffset.inView;previewOffset.progress=1;scrollTransformOffset=previewOffset;}if(st._scrollAnchorPendingAppearReplay){if(_shouldReplayAppear(effectiveCfg)){_restartAppearPlayback(st,effectiveCfg,canvasRef.current,true);}st._scrollAnchorPendingAppearReplay=\"\";}if(st.model){const nextAppearReplayHash=appearReplayHash(effectiveCfg);const hasPreviousAppearHash=!!st._lastAppearReplayHash;if(nextAppearReplayHash!==st._lastAppearReplayHash){st._lastAppearReplayHash=nextAppearReplayHash;if(hasPreviousAppearHash&&_hasAppearTransformMotion(effectiveCfg)&&_shouldReplayAppear(effectiveCfg)){_restartAppearPlayback(st,effectiveCfg,canvasRef.current,true);}}}_syncScrollAnchorAppear(st,effectiveCfg,wrapRef.current,canvasRef.current);if(cfg.performanceStats&&frameNow-(st._lastPerfLog||0)>2e3){const fps=dt>0?Math.round(1/dt):0;console.log(\"[Import_3D perf]\",{fps,dpr:Number(renderer.getPixelRatio().toFixed(2)),pixels:(st._lastRenderPixelWidth||0)*(st._lastRenderPixelHeight||0),size:`${st._lastRenderPixelWidth||0}x${st._lastRenderPixelHeight||0}`,calls:renderer.info.render.calls,triangles:renderer.info.render.triangles,geometries:renderer.info.memory.geometries,textures:renderer.info.memory.textures});st._lastPerfLog=frameNow;}// Background (cached — avoid new Color every frame)\nif(effectiveCfg.transparentBackground){st.scene.background=null;renderer.setClearColor(0,0);}else{if(effectiveCfg.backgroundColor!==st.lastBgColor){st.cachedBgColor=parseColor(effectiveCfg.backgroundColor);st.lastBgColor=effectiveCfg.backgroundColor;}st.scene.background=st.cachedBgColor;// CRITICAL: also set renderer clear color to match —\n// renderer was created with alpha:true, so after a transparent frame\n// the clear alpha stays 0. EffectComposer's render targets + passes\n// may use renderer.clear() which inherits setClearColor state.\nrenderer.setClearColor(st.cachedBgColor,1);}// Env intensity + background (instant — not part of fade transition)\nif(st.scene.environment){st.scene.environmentIntensity=effectiveCfg.enableEnvironment?effectiveCfg.environmentIntensity:0;if(effectiveCfg.showEnvironmentBackground&&!effectiveCfg.transparentBackground&&effectiveCfg.environmentType===\"hdri\"){st.scene.background=st.envMap;}}// Controls (only write when changed)\nconst controlsPausedByScroll=(st._interactionPauseUntil||0)>frameNow&&!_interactDragging;const controlsShouldBeEnabled=effectiveCfg.enableOrbitControls&&!controlsPausedByScroll;if(controls.enabled!==controlsShouldBeEnabled)controls.enabled=controlsShouldBeEnabled;if(controls.enableRotate!==effectiveCfg.enableOrbitControls)controls.enableRotate=effectiveCfg.enableOrbitControls;if(controls.enableZoom!==effectiveCfg.enableZoom)controls.enableZoom=effectiveCfg.enableZoom;if(controls.autoRotate)controls.autoRotate=false;if(controls.autoRotateSpeed!==effectiveCfg.autoRotateSpeed)controls.autoRotateSpeed=effectiveCfg.autoRotateSpeed;controls.update();// Reactive model scale + position + rotation\nif(st.model){const scaleChanged=effectiveCfg.modelScale!==st.lastModelScale;const offsetChanged=effectiveCfg.modelOffsetX!==st.lastOffsetX||effectiveCfg.modelOffsetY!==st.lastOffsetY||effectiveCfg.modelOffsetZ!==st.lastOffsetZ;const rotChanged=effectiveCfg.modelRotationX!==st.lastRotX||effectiveCfg.modelRotationY!==st.lastRotY||effectiveCfg.modelRotationZ!==st.lastRotZ;if(scaleChanged||offsetChanged||rotChanged){// When scroll animation is ON, skip immediate transform — the scroll block\n// handles lerping to new targets smoothly. Only update tracking values.\nif(!effectiveCfg.enableScrollAnimation){const ms=Math.max(.01,effectiveCfg.modelScale||1);st.model.scale.setScalar(st.normalizeScale*st.fitRatio*ms);applyModelTransform(st,effectiveCfg);}st.lastModelScale=effectiveCfg.modelScale;st.lastOffsetX=effectiveCfg.modelOffsetX;st.lastOffsetY=effectiveCfg.modelOffsetY;st.lastOffsetZ=effectiveCfg.modelOffsetZ;st.lastRotX=effectiveCfg.modelRotationX;st.lastRotY=effectiveCfg.modelRotationY;st.lastRotZ=effectiveCfg.modelRotationZ;}}// ═══ Unified scene config transition (material + lighting + env + effects) ═══\n// Fade-to-black transition: darken → swap ALL configs at swap point → brighten\n// Note: Dissolve effect is ONLY used for model URL changes, not for material/scene changes\nif(st.model){const sh=effectiveCfg._sceneConfigHash;const sceneChanged=sh!==st.lastSceneHash;if(sceneChanged){const needsFadeTransition=effectiveCfg._materialHash!==st.lastMaterialHash||effectiveCfg._envHash!==st.lastEnvHash;const duration=needsFadeTransition?effectiveCfg.materialTransitionDuration||.3:0;if(duration<=.01){// Instant change (no transition)\nif(st._fadeCacheDirty){_clearFadeCacheAllScenes(st);}_applySceneConfigChanges(st,effectiveCfg,renderer,scene,sh);st.sceneFadeProgress=0;st.sceneFadeTargetHash=null;st.sceneFadeTargetCfg=null;st.sceneSwapped=false;}else if(st.sceneFadeProgress===0){// Start new fade-to-black transition\nst.sceneFadeProgress=.01;st.sceneFadeTargetHash=sh;st.sceneFadeTargetCfg={...effectiveCfg};st.sceneSwapped=false;}else if(sh!==st.sceneFadeTargetHash){// Already fading but target changed\nif(st.sceneFadeProgress>.5){// Complete current transition immediately\nif(!st.sceneSwapped&&st.sceneFadeTargetCfg){_clearFadeCacheAllScenes(st);_applySceneConfigChanges(st,st.sceneFadeTargetCfg,renderer,scene,st.sceneFadeTargetHash);}else{_setFadeAllScenes(st,1,true);}st.sceneFadeProgress=.01;st.sceneFadeTargetHash=sh;st.sceneFadeTargetCfg={...effectiveCfg};st.sceneSwapped=false;}else{st.sceneFadeTargetHash=sh;st.sceneFadeTargetCfg={...effectiveCfg};st.sceneSwapped=false;}}}// Handle fade transition\nif(st.sceneFadeProgress>0){const duration=Math.max(.05,effectiveCfg.materialTransitionDuration||.3);const fadeSpeed=1/duration;st.sceneFadeProgress+=dt*fadeSpeed;// Swap at 35% — model darkens quickly, then brightens with new config.\n// Never fully black (floor 0.03) — eliminates visible gap.\nconst SWAP_AT=.35;const MIN_F=.03;if(st.sceneFadeProgress<SWAP_AT){// Phase 1: Darken (1 → MIN_F) with ease-in-out\nconst t=st.sceneFadeProgress/SWAP_AT;const factor=MIN_F+(1-MIN_F)*(1-easeInOutQuad(t));_setFadeAllScenes(st,factor);}else{// Past swap point — apply ALL config changes once (Phase 2)\nif(!st.sceneSwapped){const tc=st.sceneFadeTargetCfg;// CRITICAL: clearFadeCache restores brightness then clears cache\n// This ensures we don't cache darkened colors as \"original\"\n_clearFadeCacheAllScenes(st);// Apply only the scene config slices that actually changed.\n_applySceneConfigChanges(st,tc,renderer,scene,st.sceneFadeTargetHash);st.sceneSwapped=true;// Now rebuild cache at MIN_F with NEW materials (which are at full brightness)\n_setFadeAllScenes(st,MIN_F,true);}if(st.sceneFadeProgress>=1){// Transition complete — restore full brightness & cleanup\n_setFadeAllScenes(st,1,true);st.sceneFadeProgress=0;st.sceneFadeTargetHash=null;st.sceneFadeTargetCfg=null;st.sceneSwapped=false;}else{// Phase 3: Brighten (MIN_F → 1) with ease-out (fast rise from dark)\nconst t=(st.sceneFadeProgress-SWAP_AT)/(1-SWAP_AT);const eased=1-(1-t)*(1-t)// ease-out quadratic\n;const factor=MIN_F+(1-MIN_F)*eased;_setFadeAllScenes(st,factor);}}}}// CRITICAL SAFETY: Ensure model + sub-scenes at full brightness when no transition is active\n// This catches ALL edge cases where transition state might get stuck or interrupted\nif(st.model&&st.sceneFadeProgress===0&&st._fadeCacheDirty){_setFadeAllScenes(st,1,true);}// ── Scroll Animation ──\n// Works with Framer's Scroll Variants. Simple lerp to smooth prop changes.\nif(effectiveCfg.enableScrollAnimation&&(st.model||st.dissolveOldModel)){// Target values from Framer variants\nconst tScale=scrollCfg.modelScale||1;const tOffX=scrollCfg.modelOffsetX||0;const tOffY=scrollCfg.modelOffsetY||0;const tOffZ=scrollCfg.modelOffsetZ||0;const tRotX=scrollCfg.modelRotationX||0;const tRotY=scrollCfg.modelRotationY||0;const tRotZ=scrollCfg.modelRotationZ||0;const tCamX=scrollCfg.cameraPositionX??-1;const tCamY=scrollCfg.cameraPositionY??2;const tCamZ=scrollCfg.cameraPositionZ??10;// Initialize smoothed values on first run\nif(st.smoothedScale===undefined){st.smoothedScale=tScale;st.smoothedOffX=tOffX;st.smoothedOffY=tOffY;st.smoothedOffZ=tOffZ;st.smoothedRotX=tRotX;st.smoothedRotY=tRotY;st.smoothedRotZ=tRotZ;st.smoothedCamX=tCamX;st.smoothedCamY=tCamY;st.smoothedCamZ=tCamZ;}// Smooth lerp with configurable speed from scroll.smoothing property\nconst lerpFactor=effectiveCfg.scrollSmoothing||.05;st.smoothedScale+=(tScale-st.smoothedScale)*lerpFactor;st.smoothedOffX+=(tOffX-st.smoothedOffX)*lerpFactor;st.smoothedOffY+=(tOffY-st.smoothedOffY)*lerpFactor;st.smoothedOffZ+=(tOffZ-st.smoothedOffZ)*lerpFactor;st.smoothedRotX+=(tRotX-st.smoothedRotX)*lerpFactor;st.smoothedRotY+=(tRotY-st.smoothedRotY)*lerpFactor;st.smoothedRotZ+=(tRotZ-st.smoothedRotZ)*lerpFactor;st.smoothedCamX+=(tCamX-st.smoothedCamX)*lerpFactor;st.smoothedCamY+=(tCamY-st.smoothedCamY)*lerpFactor;st.smoothedCamZ+=(tCamZ-st.smoothedCamZ)*lerpFactor;// Apply smoothed values to model & camera\n// Apply to both current model and dissolve-old model (during transition)\nconst modelsToUpdate=[];if(st.model)modelsToUpdate.push(st.model);if(st.dissolveOldModel)modelsToUpdate.push(st.dissolveOldModel);for(const targetModel of modelsToUpdate){// Use per-model scale factors if available (prevents zoom glitch during dissolve)\nconst modelNormScale=targetModel._modelNormalizeScale??st.normalizeScale;const modelFitRatio=targetModel._modelFitRatio??st.fitRatio;const effectiveScale=modelNormScale*modelFitRatio*Math.max(.01,st.smoothedScale);targetModel.scale.setScalar(effectiveScale);// Each model needs its own center cache (old vs new models have different bounds)\nif(!targetModel._smoothCache){targetModel._smoothCache={centerX:0,centerY:0,centerZ:0,lastScale:-1};}const cache=targetModel._smoothCache;// Cache bounding center -- only recompute on scale change\nif(cache.lastScale!==effectiveScale){targetModel.position.set(0,0,0);targetModel.rotation.set(0,0,0);_tmpBox3.copy(_computeMeshOnlyBoundingBox(targetModel));const c=_tmpBox3.getCenter(_tmpVec3A);cache.centerX=c.x;cache.centerY=c.y;cache.centerZ=c.z;cache.lastScale=effectiveScale;// Update ground + shadow camera for current model (scroll skips applyModelTransform)\nif(targetModel===st.model&&st.ground&&st.dirLight){const ss=_tmpBox3.getSize(_tmpVec3B);st.ground.position.y=_tmpBox3.min.y-.001;st.groundBaseY=st.ground.position.y;st.groundBaseZ=st.ground.position.z;const maxS=Math.max(ss.x,ss.y,ss.z)*1.5;st.dirLight.shadow.camera.left=-maxS;st.dirLight.shadow.camera.right=maxS;st.dirLight.shadow.camera.top=maxS;st.dirLight.shadow.camera.bottom=-maxS;st.dirLight.shadow.camera.updateProjectionMatrix();}}targetModel.position.set(-cache.centerX+st.smoothedOffX,-cache.centerY+st.smoothedOffY,-cache.centerZ+st.smoothedOffZ);if(targetModel===st.model){st.floatBaseY=targetModel.position.y;}targetModel.rotation.set(st.smoothedRotX*_DEG2RAD,st.smoothedRotY*_DEG2RAD,st.smoothedRotZ*_DEG2RAD);// Keep float base values in sync (used when switching to non-scroll mode)\nif(targetModel===st.model){st.floatBaseRotX=targetModel.rotation.x;st.floatBaseRotY=targetModel.rotation.y;st.floatBaseRotZ=targetModel.rotation.z;}// Float on top of smoothing — additive (only for main model, not dissolving)\nif(targetModel===st.model&&effectiveCfg.enableFloat&&!stopInEditor){targetModel.position.y=st.floatBaseY+Math.sin(elapsed*effectiveCfg.floatSpeed*Math.PI*2)*effectiveCfg.floatAmplitude*.1;targetModel.rotation.z+=Math.sin(elapsed*effectiveCfg.floatSpeed*Math.PI)*.02;targetModel.rotation.x+=Math.cos(elapsed*effectiveCfg.floatSpeed*Math.PI*.7)*.01;}_resetScrollAnchorApplied(targetModel);_applyScrollAnchorOffset(targetModel,scrollAnchorOffset);_applyScrollProgressTransform(targetModel,scrollTransformOffset,effectiveCfg,st.smoothedOffX,st.smoothedOffY,st.smoothedOffZ,st.smoothedScale);_applyScrollAnchorRotation(targetModel,scrollTransformOffset,effectiveCfg,st.smoothedRotX,st.smoothedRotY,st.smoothedRotZ);_resetAppearTransformOffset(targetModel);_applyAppearTransformOffset(targetModel,st._appearVisibility,effectiveCfg);}// Orbit target stays at origin\nst.controls.target.set(0,0,0);st.camera.position.set(st.smoothedCamX,st.smoothedCamY,st.smoothedCamZ);}else if(st.model&&effectiveCfg.enableFloat&&!stopInEditor){st.model.position.y=st.floatBaseY+Math.sin(elapsed*effectiveCfg.floatSpeed*Math.PI*2)*effectiveCfg.floatAmplitude*.1;st.model.rotation.x=(st.floatBaseRotX||0)+Math.cos(elapsed*effectiveCfg.floatSpeed*Math.PI*.7)*.01;// MUST set rotation.y each frame to prevent mouse rotation accumulation\nst.model.rotation.y=st.floatBaseRotY||0;st.model.rotation.z=(st.floatBaseRotZ||0)+Math.sin(elapsed*effectiveCfg.floatSpeed*Math.PI)*.02;}else if(st.model&&!effectiveCfg.enableFloat&&!effectiveCfg.enableScrollAnimation){st.model.position.y=st.floatBaseY;st.model.rotation.x=st.floatBaseRotX||0;// MUST set rotation.y each frame to prevent mouse rotation accumulation\nst.model.rotation.y=st.floatBaseRotY||0;st.model.rotation.z=st.floatBaseRotZ||0;}if(st.model&&!effectiveCfg.enableScrollAnimation){const ms=Math.max(.01,effectiveCfg.modelScale||1);st.model.scale.setScalar(st.normalizeScale*st.fitRatio*ms);st.model.position.x=st.modelBaseX??st.model.position.x-(st.model._scrollAnchorAppliedX||0);st.model.position.z=st.modelBaseZ??st.model.position.z;_resetScrollAnchorApplied(st.model);_applyScrollAnchorOffset(st.model,scrollAnchorOffset);_applyScrollProgressTransform(st.model,scrollTransformOffset,effectiveCfg,effectiveCfg.modelOffsetX||0,effectiveCfg.modelOffsetY||0,effectiveCfg.modelOffsetZ||0,effectiveCfg.modelScale||1);_applyScrollAnchorRotation(st.model,scrollTransformOffset,effectiveCfg,effectiveCfg.modelRotationX||0,effectiveCfg.modelRotationY||0,effectiveCfg.modelRotationZ||0);_resetAppearTransformOffset(st.model);_applyAppearTransformOffset(st.model,st._appearVisibility,effectiveCfg);}_applyCoordinatorAutoRotate(st.model,effectiveCfg,dt,stopInEditor);if(st.model&&effectiveCfg.enableShadows){_syncGroundToModel(st,effectiveCfg,scrollAnchorOffset);}// Mouse position lerp — always runs so per-mesh mouse rotation can use st.mouseX/Y\nif(st.model&&!stopInEditor){st.mouseX+=(st.mouseTargetX-st.mouseX)*.08;st.mouseY+=(st.mouseTargetY-st.mouseY)*.08;}// Scene-level mouse rotation — additive rotation on whole model\nif(st.model&&effectiveCfg.enableMouseRotation&&!stopInEditor){const intensity=effectiveCfg.mouseRotationIntensity;st.model.rotation.y+=st.mouseX*intensity;st.model.rotation.x+=st.mouseY*intensity*.5;}// ── Sub-scene updates (visibility + transform + smoothing + float + animation) ──\nif(st.subScenes.size>0){const sceneItems=scrollCfg.subSceneItems||[];for(const[idx,ss]of st.subScenes){const item=sceneItems[idx];if(!item)continue;// While new model is loading, keep rendering the old scene seamlessly\nif(!ss._loaded||!ss.group){const old=ss._oldScene;if(old&&old.group&&old._loaded){// Float effect\nif(effectiveCfg.enableFloat&&!stopInEditor){old.group.position.y=(old.floatBaseY||old.group.position.y)+Math.sin(elapsed*effectiveCfg.floatSpeed*Math.PI*2)*effectiveCfg.floatAmplitude*.1;old.group.rotation.z+=Math.sin(elapsed*effectiveCfg.floatSpeed*Math.PI)*.02;old.group.rotation.x+=Math.cos(elapsed*effectiveCfg.floatSpeed*Math.PI*.7)*.01;}// Animation playback\nif(old.mixer&&effectiveCfg.enableAnimation&&!stopInEditor&&_canAdvanceAnimationMixer(old,old.mixer))old.mixer.update(dt);_applyScrollAnchorOffset(old.group,scrollAnchorOffset);_applyAppearTransformOffset(old.group,st._appearVisibility,effectiveCfg);}continue;}// Visibility (manual toggle via Framer variants)\nss.group.visible=item.visible!==false;if(!ss.group.visible)continue;// ── Per-scene transform with optional smoothing ──\nconst parentToMain=!!(item.parentToMain??item.parent);const parentPivot=parentToMain&&(item.parentPivot??item.pivotMode)===\"main\"?\"main\":\"own\";let localScale=item.scale??1;let localOffX=item.offX??0;let localOffY=item.offY??0;let localOffZ=item.offZ??0;let localRotX=item.rotX??0;let localRotY=item.rotY??0;let localRotZ=item.rotZ??0;// Simple lerp when scroll animation enabled (sync with main model)\nif(effectiveCfg.enableScrollAnimation){if(!ss._smoothState){ss._smoothState={scale:localScale,offX:localOffX,offY:localOffY,offZ:localOffZ,rotX:localRotX,rotY:localRotY,rotZ:localRotZ};}const sst=ss._smoothState;const lerpFactor=effectiveCfg.scrollSmoothing||.05;sst.scale+=(localScale-sst.scale)*lerpFactor;sst.offX+=(localOffX-sst.offX)*lerpFactor;sst.offY+=(localOffY-sst.offY)*lerpFactor;sst.offZ+=(localOffZ-sst.offZ)*lerpFactor;sst.rotX+=(localRotX-sst.rotX)*lerpFactor;sst.rotY+=(localRotY-sst.rotY)*lerpFactor;sst.rotZ+=(localRotZ-sst.rotZ)*lerpFactor;localScale=sst.scale;localOffX=sst.offX;localOffY=sst.offY;localOffZ=sst.offZ;localRotX=sst.rotX;localRotY=sst.rotY;localRotZ=sst.rotZ;}const parentScale=parentToMain?effectiveCfg.enableScrollAnimation?st.smoothedScale:effectiveCfg.modelScale||1:1;const parentOffX=parentToMain?effectiveCfg.enableScrollAnimation?st.smoothedOffX:effectiveCfg.modelOffsetX||0:0;const parentOffY=parentToMain?effectiveCfg.enableScrollAnimation?st.smoothedOffY:effectiveCfg.modelOffsetY||0:0;const parentOffZ=parentToMain?effectiveCfg.enableScrollAnimation?st.smoothedOffZ:effectiveCfg.modelOffsetZ||0:0;const parentRotX=parentToMain?effectiveCfg.enableScrollAnimation?st.smoothedRotX:effectiveCfg.modelRotationX||0:0;const parentRotY=parentToMain?effectiveCfg.enableScrollAnimation?st.smoothedRotY:effectiveCfg.modelRotationY||0:0;const parentRotZ=parentToMain?effectiveCfg.enableScrollAnimation?st.smoothedRotZ:effectiveCfg.modelRotationZ||0:0;const useScale=parentScale*localScale;const useOffX=parentOffX+localOffX;const useOffY=parentOffY+localOffY;const useOffZ=parentOffZ+localOffZ;const useRotX=parentRotX+localRotX;const useRotY=parentRotY+localRotY;const useRotZ=parentRotZ+localRotZ;const useMainPivot=parentToMain&&parentPivot===\"main\";// Apply transform — cache bounding center to avoid expensive setFromObject every frame\nconst normalizeScaleForSubScene=parentToMain?st.normalizeScale:ss.normalizeScale;const fitRatioForSubScene=parentToMain?st.fitRatio:ss.fitRatio;const effectiveScale=normalizeScaleForSubScene*fitRatioForSubScene*Math.max(.01,useScale);ss.group.scale.setScalar(effectiveScale);// Recompute only as fallback. Most state switches only change scale,\n// so derive bounds from cached unit-scale values instead.\nif(ss._lastEffectiveScale!==effectiveScale){if(Number.isFinite(ss._baseMinY)){ss._cachedCenterX=(ss._baseCenterX||0)*effectiveScale;ss._cachedCenterY=(ss._baseCenterY||0)*effectiveScale;ss._cachedCenterZ=(ss._baseCenterZ||0)*effectiveScale;ss._cachedMinY=(ss._baseMinY||0)*effectiveScale;}else{ss.group.position.set(0,0,0);ss.group.rotation.set(0,0,0);_tmpBox3.copy(_computeMeshOnlyBoundingBox(ss.group));const c=_tmpBox3.getCenter(_tmpVec3A);ss._cachedCenterX=c.x;ss._cachedCenterY=c.y;ss._cachedCenterZ=c.z;ss._cachedMinY=_tmpBox3.min.y;}ss._lastEffectiveScale=effectiveScale;}// Keep sub-scene controls simple: Position Y = 0 means the\n// sub-scene sits on the main scene ground, even if its real\n// internal origin is somewhere else.\nconst mainGroundY=st.groundBaseY??st.ground?.position?.y??0;if(useMainPivot){_tmpSubScenePivotEuler.set(parentRotX*_DEG2RAD,parentRotY*_DEG2RAD,parentRotZ*_DEG2RAD,\"XYZ\");_tmpSubScenePivotQuat.setFromEuler(_tmpSubScenePivotEuler);_tmpSubScenePivotOffset.set(-ss._cachedCenterX+localOffX,mainGroundY-(ss._cachedMinY??0)+localOffY,-ss._cachedCenterZ+localOffZ).applyQuaternion(_tmpSubScenePivotQuat);ss.group.position.set(parentOffX+_tmpSubScenePivotOffset.x,parentOffY+_tmpSubScenePivotOffset.y,parentOffZ+_tmpSubScenePivotOffset.z);}else{ss.group.position.set(-ss._cachedCenterX+useOffX,mainGroundY-(ss._cachedMinY??0)+useOffY,-ss._cachedCenterZ+useOffZ);}ss.floatBaseY=ss.group.position.y;ss.group.rotation.set(useRotX*_DEG2RAD,useRotY*_DEG2RAD,useRotZ*_DEG2RAD);// Float effect (shared global settings)\nif(effectiveCfg.enableFloat&&!stopInEditor){ss.group.position.y=ss.floatBaseY+Math.sin(elapsed*effectiveCfg.floatSpeed*Math.PI*2)*effectiveCfg.floatAmplitude*.1;ss.group.rotation.z+=Math.sin(elapsed*effectiveCfg.floatSpeed*Math.PI)*.02;ss.group.rotation.x+=Math.cos(elapsed*effectiveCfg.floatSpeed*Math.PI*.7)*.01;}// Mouse rotation (shared)\nif(effectiveCfg.enableMouseRotation&&!stopInEditor){const intensity=effectiveCfg.mouseRotationIntensity;ss.group.rotation.y+=st.mouseX*intensity;ss.group.rotation.x+=st.mouseY*intensity*.5;}_resetScrollAnchorApplied(ss.group);_applyScrollAnchorOffset(ss.group,scrollAnchorOffset);_applyScrollProgressTransform(ss.group,scrollTransformOffset,effectiveCfg,useOffX,useOffY,useOffZ,useScale);_applyScrollAnchorRotation(ss.group,scrollTransformOffset,effectiveCfg,useRotX,useRotY,useRotZ);_resetAppearTransformOffset(ss.group);_applyAppearTransformOffset(ss.group,st._appearVisibility,effectiveCfg);_applyCoordinatorAutoRotate(ss.group,effectiveCfg,dt,stopInEditor);// Animation playback\nif(ss.mixer&&effectiveCfg.enableAnimation&&!stopInEditor&&_canAdvanceAnimationMixer(ss,ss.mixer))ss.mixer.update(dt);}}// Animation\nif(st.mixer&&effectiveCfg.enableAnimation&&!stopInEditor&&_canAdvanceAnimationMixer(st,st.mixer))st.mixer.update(dt);// ── Mesh Interactions: sync & apply per-mesh auto-rotate / mouse-rotate from config ──\nif(cfg.hasEnabledMeshInteractions&&st.modelInner){const cacheKey=(st.modelInner?.uuid??\"\")+\"|\"+(cfg.meshInteractionLookupKey??\"\")+\"|ss:\"+(st.subScenes?.size??0);if(_interactMatchCacheKey!==cacheKey||!_interactMatchCache){// Cache miss — rebuild name → Object3D mapping\n_interactMatchCache=new Map;_interactMatchCacheKey=cacheKey;for(const ic of cfg.meshInteractionItems||[]){const targetLower=ic.meshName.trim().toLowerCase();if(!targetLower||_interactMatchCache.has(targetLower))continue;// Inline search (no inner closure allocation)\nlet matched=null;st.modelInner.traverse(c=>{if(matched)return;if(c===st.modelInner)return;if(c.name&&c.name.toLowerCase().includes(targetLower)){matched=c;}});if(!matched&&st.subScenes){for(const[,ss]of st.subScenes){if(matched)break;if(ss._loaded&&ss.group){ss.group.traverse(c=>{if(matched)return;if(c===ss.group)return;if(c.name&&c.name.toLowerCase().includes(targetLower)){matched=c;}});}}}_interactMatchCache.set(targetLower,matched);}}// Reuse module-level Sets (clear instead of allocating new)\n_wantAutoRotate.clear();_wantMouseRotate.clear();_interactConfigByObj.clear();for(const ic of cfg.meshInteractionItems||[]){const isEnabled=ic?.enabled??ic?.__hasInteractionEvent??true;if(!isEnabled)continue;const targetLower=String(ic?.meshName||\"\").trim().toLowerCase();if(!targetLower)continue;const matched=_interactMatchCache.get(targetLower);if(!matched)continue;// Cache config per object to avoid redundant _findInteractConfig calls below.\n// Click/hover items are valid interaction targets even when they do not use\n// autoRotate/mouseRotate.\n_interactConfigByObj.set(matched,ic);const allowMouseRotate=!effectiveCfg.responsiveIsMobile;if(ic.autoRotate)_wantAutoRotate.add(matched);if(allowMouseRotate&&ic.mouseRotate)_wantMouseRotate.add(matched);}// Sync _meshAutoRotates Map\nfor(const[mesh]of _meshAutoRotates){if(!_wantAutoRotate.has(mesh))_meshAutoRotates.delete(mesh);}for(const m of _wantAutoRotate){const ic=_interactConfigByObj.get(m);if(!_meshAutoRotates.has(m)){_meshAutoRotates.set(m,{speed:ic?.meshAutoRotateSpeed??1,axis:ic?.meshAutoRotateAxis??\"y\"});}else{const data=_meshAutoRotates.get(m);data.speed=ic?.meshAutoRotateSpeed??1;data.axis=ic?.meshAutoRotateAxis??\"y\";}}// Sync _meshMouseRotates Map\nfor(const[mesh]of _meshMouseRotates){if(!_wantMouseRotate.has(mesh)){const data=_meshMouseRotates.get(mesh);mesh.rotation.y=data.baseRotY;mesh.rotation.x=data.baseRotX;_meshMouseRotates.delete(mesh);}}for(const m of _wantMouseRotate){const ic=_interactConfigByObj.get(m);if(!_meshMouseRotates.has(m)){_meshMouseRotates.set(m,{intensity:ic?.meshMouseRotateIntensity??.1,baseRotY:m.rotation.y,baseRotX:m.rotation.x});}else{const data=_meshMouseRotates.get(m);data.intensity=ic?.meshMouseRotateIntensity??.1;}}}else{// No interactions — clear Maps\nif(_meshAutoRotates.size>0)_meshAutoRotates.clear();if(_meshMouseRotates.size>0){for(const[mesh,data]of _meshMouseRotates){mesh.rotation.y=data.baseRotY;mesh.rotation.x=data.baseRotX;}_meshMouseRotates.clear();}}// Apply per-mesh auto-rotate\nif(_meshAutoRotates.size>0&&dt>0){for(const[mesh,data]of _meshAutoRotates){const spd=data.speed*dt;if(data.axis===\"x\")mesh.rotation.x+=spd;else if(data.axis===\"z\")mesh.rotation.z+=spd;else mesh.rotation.y+=spd;}}// Apply per-mesh mouse-rotate\nif(_meshMouseRotates.size>0&&st.mouseTargetX!==undefined){for(const[mesh,data]of _meshMouseRotates){const mx=st.mouseX??0;const my=st.mouseY??0;mesh.rotation.y=data.baseRotY+mx*data.intensity;mesh.rotation.x=data.baseRotX+my*data.intensity*.5;}}// ── Mesh Interactions: smooth hover lerp ──\nif(dt>0){// Active channel: lerp toward target (1 = fully hovered)\nif(_hoverLerp.mesh){const spd=_hoverLerp.config?.hoverSpeed??_HOVER_LERP_SPEED;const lerpDt=Math.min(1,dt*spd);_hoverLerp.progress+=(_hoverLerp.target-_hoverLerp.progress)*lerpDt;// Snap to target when very close\nif(Math.abs(_hoverLerp.target-_hoverLerp.progress)<.001){_hoverLerp.progress=_hoverLerp.target;}}// Leaving channel: lerp back to 0 (fade out)\nif(_hoverLerpOut.mesh){const spd=_hoverLerpOut.config?.hoverSpeed??_HOVER_LERP_SPEED;const lerpDt=Math.min(1,dt*spd);_hoverLerpOut.progress+=(0-_hoverLerpOut.progress)*lerpDt;if(_hoverLerpOut.progress<.001){// Fully faded out — snap to original and clear\n_snapHoverChannel(_hoverLerpOut);}}// ── Drag snap-back lerp ──\nif(_dragSnapBack){const sb=_dragSnapBack;const lerpDt=Math.min(1,dt*_DRAG_SNAPBACK_SPEED);sb.mesh.position.lerp(sb.targetPos,lerpDt);if(sb.mesh.position.distanceTo(sb.targetPos)<5e-4){sb.mesh.position.copy(sb.targetPos);_dragSnapBack=null;}}}// ── Mesh-level Scroll Animations (variant-driven, like main scene) ──\n// Each mesh animation item defines TARGET values for position/rotation/scale/opacity.\n// Values are set per Framer scroll variant. The component smooth-lerps to targets\n// using the same scrollSmoothing factor as the main scene.\nif(cfg.hasEnabledMeshAnimations&&st.modelInner){if(!st._meshSmooth)st._meshSmooth=new Map;// When scroll animation is on, use smooth lerp; otherwise snap instantly\nconst meshLerpFactor=cfg.enableScrollAnimation?cfg.scrollSmoothing||.05:1;const maCacheKey=(st.modelInner?.uuid??\"\")+\"|\"+(cfg.meshAnimationLookupKey??\"\")+\"|ss:\"+(st.subScenes?.size??0);if(_meshAnimMatchCacheKey!==maCacheKey||!_meshAnimMatchCache){_meshAnimMatchCache=new Map;_meshAnimMatchCacheKey=maCacheKey;for(const anim of cfg.meshAnimationItems||[]){const targetLower=anim.meshName.trim().toLowerCase();if(!targetLower||_meshAnimMatchCache.has(targetLower))continue;let matched=null;st.modelInner.traverse(c=>{if(matched)return;if(c===st.modelInner)return;if((c.isMesh||c.isGroup||c.isObject3D)&&c.name&&c.name.toLowerCase().includes(targetLower)){matched=c;}});if(!matched&&st.subScenes){for(const[,ss]of st.subScenes){if(matched)break;if(ss._loaded&&ss.group){ss.group.traverse(c=>{if(matched)return;if(c===ss.group)return;if((c.isMesh||c.isGroup||c.isObject3D)&&c.name&&c.name.toLowerCase().includes(targetLower)){matched=c;}});}}}_meshAnimMatchCache.set(targetLower,matched);}}for(const anim of cfg.meshAnimationItems||[]){const meshName=anim.meshName.trim();if(!meshName)continue;// Lookup from cache (no per-frame traversal)\nconst target=_meshAnimMatchCache.get(meshName.toLowerCase());if(!target)continue;// Target values from Framer variant props (change per scroll section)\nconst desired=_getMeshAnimationDesired(anim,_getObjectEventScrollProgress(anim.scrollMatch,wrapRef.current,anim.scrollAnchorY));// Get or initialize smooth state for this mesh\nconst scrollMatch=String(anim?.scrollMatch??\"\").trim();let sm=st._meshSmooth.get(meshName);if(!sm||sm._scrollMatch!==scrollMatch){// Scroll IDs can be edited without changing the mesh\n// name; reset the eased value when its source changes.\nsm={posX:desired.posX,posY:desired.posY,posZ:desired.posZ,rotX:desired.rotX,rotY:desired.rotY,rotZ:desired.rotZ,scaleX:desired.scaleX,scaleY:desired.scaleY,scaleZ:desired.scaleZ,opacity:desired.opacity,_scrollMatch:scrollMatch};st._meshSmooth.set(meshName,sm);}// Lerp toward target values\nsm.posX+=(desired.posX-sm.posX)*meshLerpFactor;sm.posY+=(desired.posY-sm.posY)*meshLerpFactor;sm.posZ+=(desired.posZ-sm.posZ)*meshLerpFactor;sm.rotX+=(desired.rotX-sm.rotX)*meshLerpFactor;sm.rotY+=(desired.rotY-sm.rotY)*meshLerpFactor;sm.rotZ+=(desired.rotZ-sm.rotZ)*meshLerpFactor;if(sm.scaleX===undefined){const legacyScale=sm.scale??1;sm.scaleX=legacyScale;sm.scaleY=legacyScale;sm.scaleZ=legacyScale;}sm.scaleX+=(desired.scaleX-sm.scaleX)*meshLerpFactor;sm.scaleY+=(desired.scaleY-sm.scaleY)*meshLerpFactor;sm.scaleZ+=(desired.scaleZ-sm.scaleZ)*meshLerpFactor;sm.opacity+=(desired.opacity-sm.opacity)*meshLerpFactor;// Store original transform on first touch so offsets are additive\nif(target._meshAnimOrigPos===undefined){target._meshAnimOrigPos=target.position.clone();target._meshAnimOrigRot=target.rotation.clone();target._meshAnimOrigScale=target.scale.clone();}// Position (additive offset from original)\ntarget.position.x=target._meshAnimOrigPos.x+sm.posX;target.position.y=target._meshAnimOrigPos.y+sm.posY;target.position.z=target._meshAnimOrigPos.z+sm.posZ;// Rotation (additive offset, degrees → radians)\ntarget.rotation.x=target._meshAnimOrigRot.x+sm.rotX*_DEG2RAD;target.rotation.y=target._meshAnimOrigRot.y+sm.rotY*_DEG2RAD;target.rotation.z=target._meshAnimOrigRot.z+sm.rotZ*_DEG2RAD;// Scale (multiplicative with original)\ntarget.scale.x=target._meshAnimOrigScale.x*Math.max(.001,sm.scaleX);target.scale.y=target._meshAnimOrigScale.y*Math.max(.001,sm.scaleY);target.scale.z=target._meshAnimOrigScale.z*Math.max(.001,sm.scaleZ);// Opacity — apply to all child meshes if target is Group/Object3D\nconst op=Math.max(0,Math.min(1,sm.opacity));if(target._meshAnimLastOpacity!==op){let opacityTargets=target._meshAnimOpacityTargets;if(!opacityTargets){opacityTargets=target.isMesh?[target]:[];if(!target.isMesh){target.traverse(node=>{if(node.isMesh&&node.material)opacityTargets.push(node);});}target._meshAnimOpacityTargets=opacityTargets;}for(const node of opacityTargets){const mats=Array.isArray(node.material)?node.material:[node.material];mats.forEach(m=>{m.opacity=op;m.transparent=op<1;});}target._meshAnimLastOpacity=op;}}}// Hover transform is an interaction layer on top of scroll object transforms.\n// Apply after mesh animations so scroll-enabled Object Events are used as the base\n// and hover deltas are additively accumulated without being overwritten.\nconst resetMeshes=new Set;const tryReset=ch=>{if(ch?.mesh&&!resetMeshes.has(ch.mesh)){resetMeshes.add(ch.mesh);if(!ch.mesh._meshAnimOrigPos){if(ch.origPosition)ch.mesh.position.copy(ch.origPosition);if(ch.origRotation)ch.mesh.rotation.copy(ch.origRotation);if(ch.origScale)ch.mesh.scale.copy(ch.origScale);}}};tryReset(_hoverLerp);tryReset(_hoverLerpOut);tryReset(_pressLerp);if(_hoverLerp.mesh)_applyHoverLerp(_hoverLerp);if(_hoverLerpOut.mesh)_applyHoverLerp(_hoverLerpOut);if(_pressLerp.mesh)_applyHoverLerp(_pressLerp);// Film grain time update (animated per-frame, not part of transition)\nif(st.filmGrain?.enabled){st.filmGrain.uniforms.time.value=elapsed;}// ── Dissolve Transition (model URL change) ──\nif(st.dissolveActive){const dissolveSpeed=1/cfg.dissolveDuration;st.dissolveProgress+=dt*dissolveSpeed*st.dissolveDirection;const _mdp=t=>mapDissolveProgress(t,cfg.dissolveAmplitude,cfg.dissolveEdgeWidth);if(st.dissolveDirection===1){// Dissolve out old model\nif(st.dissolveProgress>=1){st.dissolveProgress=1;if(st.dissolveOldModel){st.scene.remove(st.dissolveOldModel);st.dissolveOldModel.traverse(c=>{if(c.isMesh){// Dispose skeleton for SkinnedMesh\nif(c.isSkinnedMesh&&c.skeleton){c.skeleton.dispose();}if(st.dissolveMaterials.has(c.uuid)){st.dissolveMaterials.get(c.uuid).dispose();st.dissolveMaterials.delete(c.uuid);}if(st.dissolveOriginalMaterials.has(c.uuid)){const origMat=st.dissolveOriginalMaterials.get(c.uuid);(Array.isArray(origMat)?origMat:[origMat]).forEach(m=>m.dispose?.());}(Array.isArray(c.material)?c.material:[c.material]).forEach(m=>m.dispose?.());_origMaterialBackups.delete(c.uuid);}});st.dissolveOriginalMaterials.clear();st.dissolveOldModel=null;}if(st.model){_startDissolveInForModel(st,cfg);}else{disposeDissolveParticles(st.dissolveParticles);st.dissolveParticles=null;st._dissolvePendingIn=true;st.dissolveActive=false;}}else{if(st.dissolveOldModel){const mapped=_mdp(st.dissolveProgress);st.dissolveOldModel.traverse(child=>{if(child.isMesh&&st.dissolveOriginalMaterials.has(child.uuid)){if(!st.dissolveMaterials.has(child.uuid)){const originalMat=st.dissolveOriginalMaterials.get(child.uuid);const dissolveMat=createDissolveMaterial(originalMat,{progress:mapped,noiseScale:cfg.dissolveNoiseScale,amplitude:cfg.dissolveAmplitude,edgeWidth:cfg.dissolveEdgeWidth,emissiveColor:cfg.dissolveEmissiveColor,emissiveIntensity:cfg.dissolveEmissiveIntensity});st.dissolveMaterials.set(child.uuid,dissolveMat);child.material=dissolveMat;}else{const dissolveMat=st.dissolveMaterials.get(child.uuid);if(dissolveMat&&dissolveMat.userData.shaderUniforms){const u=dissolveMat.userData.shaderUniforms;u.uProgress.value=mapped;u.uFreq.value=cfg.dissolveNoiseScale;u.uAmp.value=cfg.dissolveAmplitude;u.uEdge.value=cfg.dissolveEdgeWidth;if(st.lastDissolveEdgeColorStr!==cfg.dissolveEmissiveColor){st.lastDissolveEdgeColorStr=cfg.dissolveEmissiveColor;st.cachedDissolveEdgeColor=parseColor(cfg.dissolveEmissiveColor);}u.uEdgeColor.value.copy(st.cachedDissolveEdgeColor);u.uEdgeIntensity.value=cfg.dissolveEmissiveIntensity;}}}});}}}else{// Dissolve in new model\nif(st.dissolveProgress<=0){st.dissolveProgress=0;st.dissolveActive=false;if(st.model){st.model.traverse(child=>{if(child.isMesh){if(st.dissolveMaterials.has(child.uuid)){st.dissolveMaterials.get(child.uuid).dispose();st.dissolveMaterials.delete(child.uuid);}if(st.dissolveOriginalMaterials.has(child.uuid)){child.material=st.dissolveOriginalMaterials.get(child.uuid);}}});}st.dissolveOriginalMaterials.clear();// Cleanup particles\ndisposeDissolveParticles(st.dissolveParticles);st.dissolveParticles=null;}else{if(st.model){const mapped=_mdp(st.dissolveProgress);st.model.traverse(child=>{if(child.isMesh&&st.dissolveOriginalMaterials.has(child.uuid)){if(!st.dissolveMaterials.has(child.uuid)){const originalMat=st.dissolveOriginalMaterials.get(child.uuid);const dissolveMat=createDissolveMaterial(originalMat,{progress:mapped,noiseScale:cfg.dissolveNoiseScale,amplitude:cfg.dissolveAmplitude,edgeWidth:cfg.dissolveEdgeWidth,emissiveColor:cfg.dissolveEmissiveColor,emissiveIntensity:cfg.dissolveEmissiveIntensity});st.dissolveMaterials.set(child.uuid,dissolveMat);child.material=dissolveMat;}else{const dissolveMat=st.dissolveMaterials.get(child.uuid);if(dissolveMat&&dissolveMat.userData.shaderUniforms){const u=dissolveMat.userData.shaderUniforms;u.uProgress.value=mapped;u.uFreq.value=cfg.dissolveNoiseScale;u.uAmp.value=cfg.dissolveAmplitude;u.uEdge.value=cfg.dissolveEdgeWidth;if(st.lastDissolveEdgeColorStr!==cfg.dissolveEmissiveColor){st.lastDissolveEdgeColorStr=cfg.dissolveEmissiveColor;st.cachedDissolveEdgeColor=parseColor(cfg.dissolveEmissiveColor);}u.uEdgeColor.value.copy(st.cachedDissolveEdgeColor);u.uEdgeIntensity.value=cfg.dissolveEmissiveIntensity;}}}});}}}// ── Update dissolve particles for model URL transition ──\nif(st.dissolveParticles){const p=st.dissolveParticles;// Sync with whichever model is currently dissolving\nconst activeModel=st.dissolveOldModel||st.model;if(activeModel){p.points.position.copy(activeModel.position);p.points.rotation.copy(activeModel.rotation);p.points.scale.copy(activeModel.scale);}const mapped=_mdp(st.dissolveProgress);p.mat.uniforms.uProgress.value=mapped;p.mat.uniforms.uFreq.value=cfg.dissolveNoiseScale;p.mat.uniforms.uAmp.value=cfg.dissolveAmplitude;p.mat.uniforms.uEdge.value=cfg.dissolveEdgeWidth;const _dpColorStr=cfg.dissolveParticleColor||cfg.dissolveEmissiveColor;if(st.lastDissolveParticleColorStr!==_dpColorStr){st.lastDissolveParticleColorStr=_dpColorStr;st.cachedDissolveParticleColor=parseColor(_dpColorStr);}p.mat.uniforms.uColor.value.copy(st.cachedDissolveParticleColor);p.mat.uniforms.uBaseSize.value=cfg.dissolveParticleBaseSize||80;p.state.speed=cfg.dissolveParticleSpeed||.02;p.state.waveAmp=cfg.dissolveParticleWaveAmp||0;p.state.velFactor.x=cfg.dissolveParticleVelX||2.5;p.state.velFactor.y=cfg.dissolveParticleVelY||2;updateDissolveParticles(p.state);syncParticleAttributes(p.geo,p.state);}}// ── Particle system ──\nif(cfg.enableParticles){if(!st.particleSystem){st.createParticleSystem(cfg.particleCount,cfg.particleSize,cfg.particleColor,cfg.particleSpread);st.particleSystem=particleSystem;}// Update particle properties if changed\nif(st.particleSystem){const mat=st.particleSystem.material;if(mat.size!==cfg.particleSize)mat.size=cfg.particleSize;if(st.lastParticleColorStr!==cfg.particleColor){st.lastParticleColorStr=cfg.particleColor;st.cachedParticleColor=parseColor(cfg.particleColor);}if(!mat.color.equals(st.cachedParticleColor)){mat.color.copy(st.cachedParticleColor);}// Check if count changed — recreate\nconst currentCount=st.particleSystem.geometry.attributes.position.count;if(currentCount!==cfg.particleCount){st.createParticleSystem(cfg.particleCount,cfg.particleSize,cfg.particleColor,cfg.particleSpread);st.particleSystem=particleSystem;}// Animate\nst.updateParticles(cfg.particleSpeed,cfg.particleSpread);}}else if(st.particleSystem){// Remove particles when disabled\nst.scene.remove(st.particleSystem);st.particleSystem.geometry.dispose();st.particleSystem.material.dispose();st.particleSystem=null;}// Determine if any pass is enabled\nconst anyPostFX=_runtimeNeedsPostFx(cfg);// ── Stereo side-by-side rendering (bypasses post-processing) ──\nif(shouldRenderGL){if(cfg.cameraType===\"stereo\"&&st.stereoCamera){st.stereoCamera.update(camera);renderer.getSize(_tmpStereoSize);const _sz=_tmpStereoSize;const prevShadowAutoUpdate=renderer.shadowMap.autoUpdate;renderer.autoClear=true;renderer.setScissorTest(true);try{// Left eye (shadows update normally here)\nrenderer.setScissor(0,0,_sz.x/2,_sz.y);renderer.setViewport(0,0,_sz.x/2,_sz.y);renderer.render(scene,st.stereoCamera.cameraL);// Freeze shadows for the right eye to avoid drawing shadow maps twice.\nrenderer.shadowMap.autoUpdate=false;renderer.setScissor(_sz.x/2,0,_sz.x/2,_sz.y);renderer.setViewport(_sz.x/2,0,_sz.x/2,_sz.y);renderer.render(scene,st.stereoCamera.cameraR);}finally{renderer.shadowMap.autoUpdate=prevShadowAutoUpdate;renderer.setScissorTest(false);renderer.setViewport(0,0,_sz.x,_sz.y);}}else if(anyPostFX){// When using post-processing with transparency, clear manually\nif(cfg.transparentBackground){renderer.setClearColor(0,0);renderer.autoClear=true;}else{renderer.autoClear=true;}if(ensurePostFxPipeline(cfg,wrapRef.current?.clientWidth||1,wrapRef.current?.clientHeight||1)){if(st.filmGrain?.enabled){st.filmGrain.uniforms.time.value=elapsed;}if(st.composer){st.composer.renderToScreen=true;st.composer.render();}}else{// Postprocessing modules still loading — render without\n// FX for this frame instead of leaving the canvas blank.\nrenderer.render(scene,camera);}}else{disposePostFxPipeline();renderer.autoClear=true;renderer.render(scene,camera);}}// ── Blur Reveal animation ──\nif(st._blurRevealStart>0&&canvasRef.current){const blurElapsed=(performance.now()-st._blurRevealStart)/1e3;const blurDur=cfg.blurRevealDuration||.8;const blurInt=cfg.blurRevealIntensity||12;if(blurElapsed>=blurDur){// Done — remove filter entirely (no compositing overhead)\ncanvasRef.current.style.filter=\"\";canvasRef.current.style.willChange=\"\";st._blurRevealStart=0;}else{// easeOutCubic: 1 - (1-t)^3\nconst t=blurElapsed/blurDur;const ease=1-Math.pow(1-t,3);const currentBlur=blurInt*(1-ease);canvasRef.current.style.filter=`blur(${currentBlur.toFixed(1)}px)`;}}// Throttled resize check — every 30 frames (~0.5s) as fallback for ResizeObserver\nif(++st._resizeCounter>=30&&wrapRef.current){st._resizeCounter=0;const cw=wrapRef.current.clientWidth;const ch=wrapRef.current.clientHeight;if(cw&&ch){const dpr=renderer.getPixelRatio()||1;const rw=renderer.domElement.width/dpr;const rh=renderer.domElement.height/dpr;const resizeCfg=settingsRef.current;const targetDpr=_getOptimizedDpr(resizeCfg);if(Math.abs(cw-rw)>1||Math.abs(ch-rh)>1||Math.abs(targetDpr-(st._lastRenderDpr||dpr))>.01){scheduleResize(false);}}}statsMonitor?.end?.();};loop();return()=>{st._disposed=true;_webglCoordinator.unregister(st._coordId);st._coordId=0;cancelAnimationFrame(rafRef.current);// Clean up per-mesh interaction state\n_meshAutoRotates.clear();_meshMouseRotates.clear();_clearInteractResolvedConfigCache();_interactMatchCache=null;_interactMatchCacheKey=\"\";_interactionHoverMeshesCache=[];_interactionHoverMeshesCacheKey=\"\";_interactionHoverVisibleMeshes.length=0;_meshAnimMatchCache=null;_meshAnimMatchCacheKey=\"\";// Clean up blur filter on unmount\nif(canvasRef.current){canvasRef.current.style.opacity=\"1\";canvasRef.current.style.filter=\"\";canvasRef.current.style.willChange=\"\";}document.removeEventListener(\"visibilitychange\",onVisibilityChange);window.removeEventListener(\"resize\",onWindowLayoutChange);window.removeEventListener(\"scroll\",onWindowLayoutChange);document.removeEventListener(\"scroll\",onWindowLayoutChange,true);vv?.removeEventListener(\"resize\",onWindowLayoutChange);vv?.removeEventListener(\"scroll\",onWindowLayoutChange);window.removeEventListener(\"touchmove\",onTouchMoveLayoutDirty);if(io)io.disconnect();ro.disconnect();if(resizeRaf)cancelAnimationFrame(resizeRaf);if(resizeTimeout)clearTimeout(resizeTimeout);if(st._scheduleResize===scheduleResize){delete st._scheduleResize;}delayedResizeTimers.forEach(timer=>clearTimeout(timer));_removeStatsMonitor(st);controls.dispose();_debugImport3DRendererEvent(\"dispose\",{role:\"slot\",ownerId:rendererOwnerId,canvas,reason:\"slot cleanup\",bridgeMode:_getImport3DBridgeState().renderMode,renderTarget:RenderTarget.current(),rootCount:_getImport3DBridgeState().rootCount||0,slotCount:_getImport3DBridgeState().slots?.size||0,forceLog:!!_getImport3DBridgeState().rendererDebug});disposePostFxPipeline();renderer.dispose();_releaseEnvironmentMap(st);// Dispose particle system\nif(particleSystem){st.scene.remove(particleSystem);particleSystem.geometry.dispose();particleSystem.material.dispose();}if(st.mixer){_clearAnimationOnceCompleteListener(st,st.mixer);st.mixer.stopAllAction();st._lastAnimationRequestSig=\"\";}// Dispose dissolve particles\ndisposeDissolveParticles(st.dissolveParticles);st.dissolveParticles=null;st._dissolvePendingIn=false;// Dispose dissolve old model if still active\nif(st.dissolveOldModel){st.scene.remove(st.dissolveOldModel);// Materials only — geometries shared with _modelCache\n_disposeMaterialsOnly(st.dissolveOldModel);st.dissolveOriginalMaterials.clear();}// Dispose all dissolve materials\nfor(const dissolveMat of st.dissolveMaterials.values()){dissolveMat.dispose();}st.dissolveMaterials.clear();// Dispose sub-scenes (materials only — geometries shared with _modelCache)\nfor(const[,ss]of st.subScenes){if(ss.group){st.scene.remove(ss.group);_disposeMaterialsOnly(ss.group);}if(ss.mixer){_clearAnimationOnceCompleteListener(ss,ss.mixer);ss.mixer.stopAllAction();ss._lastAnimationRequestSig=\"\";}}st.subScenes.clear();document.removeEventListener(\"mousemove\",onMouseMove);document.removeEventListener(\"mousemove\",onMeshHelperMove);_unhighlightMeshHelper();// Cleanup mesh interaction listeners\ndocument.removeEventListener(\"mousemove\",onModelHoverEventMoveRaf);if(_modelHoverMoveRaf)cancelAnimationFrame(_modelHoverMoveRaf);_emitModelHover(false,null,true);window.removeEventListener(\"scroll\",onWindowScrollInteractionPause);canvas.removeEventListener(\"pointerdown\",onCanvasPointerCaptureDown);canvas.removeEventListener(\"wheel\",onCanvasWheel,true);document.removeEventListener(\"mousemove\",onInteractMoveRaf);if(_interactMoveRaf)cancelAnimationFrame(_interactMoveRaf);document.removeEventListener(\"click\",onInteractClick);canvas.removeEventListener(\"pointerdown\",onInteractPointerDown);document.removeEventListener(\"pointermove\",onInteractPointerMoveRaf);if(_interactPointerMoveRaf)cancelAnimationFrame(_interactPointerMoveRaf);document.removeEventListener(\"pointerup\",onInteractPointerUp);document.removeEventListener(\"pointerup\",onCanvasPointerCaptureUp);document.removeEventListener(\"pointercancel\",onInteractPointerUp);document.removeEventListener(\"pointercancel\",onCanvasPointerCaptureUp);canvas.removeEventListener(\"touchstart\",onInteractPointerDown);document.removeEventListener(\"touchmove\",onInteractPointerMoveRaf);document.removeEventListener(\"touchend\",onInteractPointerUp);document.removeEventListener(\"touchend\",onCanvasPointerCaptureUp);st._pointerCaptureLock=false;setModelPointerCapture(false);_unhighlightInteract(false);_dragSnapBack=null;setInteractTooltip(null);// Snap any remaining hover lerp channels on unmount\n_resetPressInteract();_snapHoverChannel(_hoverLerp);_snapHoverChannel(_hoverLerpOut);// Dispose extra lights\nfor(const light of st.extraLightObjects){scene.remove(light);if(light.target&&light.isSpotLight)scene.remove(light.target);if(light.shadow?.map)light.shadow.map.dispose();light.dispose();}st.extraLightObjects.length=0;// ── Final Scene Hierarchy Disposal ──\n// Runtime models share geometry/texture assets with _modelCache.\n// Dispose only per-instance materials/skeletons here so route back can reuse cache.\nif(st.model){scene.remove(st.model);_disposeMaterialsOnly(st.model);}_disposeModelFull(scene);// Clear coordinate references\nst.scene=null;st.camera=null;st.model=null;st.modelInner=null;st.controls=null;st.renderer=null;_lastLoadedModelUrl=null;};},[webglRuntimeActive]);useEffect(()=>{const st=stateRef.current;st?._scheduleResize?.(true);},[performanceDprCap,performanceMobileDprCap,performanceMaxPixelCount]);// ─────────────── Load Model ───────────────\nuseEffect(()=>{let cancelled=false;let fromCache=false// tracks if model came from preload cache (textures already ready)\n;const st=stateRef.current;const cfg=settingsRef.current;if(!st)return;if(!modelUrl){startTransition(()=>{setStatus(\"Set a model URL or upload a file\");});return;}st.lastSceneHash=\"\";st.lastMaterialHash=\"\";st.lastLightingHash=\"\";st.lastEnvHash=\"\";st.lastEffectsHash=\"\";// Skip loading text if: (a) remount with same URL, (b) model in parsed cache,\n// (c) preload already in-flight (splash handles loading UI), or\n// (d) splash/external system already managing loading state\nconst isRemountSameUrl=_lastLoadedModelUrl===modelUrl;const hasCachedModel=_modelCache.has(modelUrl);const isPreloading=_preloadInFlight.has(modelUrl);const splashHandlesLoading=typeof window!==\"undefined\"&&window.__modelLoadingState?.isLoading;if(isRemountSameUrl||hasCachedModel||isPreloading||splashHandlesLoading){// Suppress canvas \"Loading…\" — model coming from cache/preload, or splash UI active\nstartTransition(()=>{setStatus(\"\");});}else{startTransition(()=>{setStatus(\"Loading…\");});if(typeof window!==\"undefined\"&&window.__modelLoadingState){window.__modelLoadingState.setLoading(modelUrl);}}// Reset blur reveal state when model URL changes\nif(st._blurRevealStart>0&&canvasRef.current){canvasRef.current.style.opacity=\"1\";canvasRef.current.style.filter=\"\";canvasRef.current.style.willChange=\"\";st._blurRevealStart=0;}if(!cfg.dissolveEnabled){st._dissolvePendingIn=false;}// Start dissolve transition if enabled and there's an existing model\nif(cfg.dissolveEnabled&&st.model&&!st.dissolveActive){// Clear any previous dissolve materials\nfor(const dissolveMat of st.dissolveMaterials.values()){dissolveMat.dispose();}st.dissolveMaterials.clear();st.dissolveOriginalMaterials.clear();st.dissolveOldModel=st.model;st.dissolveActive=true;st._dissolvePendingIn=false;st.dissolveProgress=0;st.dissolveDirection=1// dissolve out\n;// Snapshot current transform (including smoothed values if scroll animation active)\n// This ensures dissolve happens from the VISIBLE state, not config state\nconst snapshotPos=st.dissolveOldModel.position.clone();const snapshotRot=st.dissolveOldModel.rotation.clone();const snapshotScale=st.dissolveOldModel.scale.clone();// Store original materials and apply initial dissolve shader\nst.dissolveOldModel.traverse(child=>{if(child.isMesh){st.dissolveOriginalMaterials.set(child.uuid,child.material);// Apply dissolve material immediately\nconst dissolveMat=createDissolveMaterial(child.material,{progress:mapDissolveProgress(0,cfg.dissolveAmplitude,cfg.dissolveEdgeWidth),noiseScale:cfg.dissolveNoiseScale,amplitude:cfg.dissolveAmplitude,edgeWidth:cfg.dissolveEdgeWidth,emissiveColor:cfg.dissolveEmissiveColor,emissiveIntensity:cfg.dissolveEmissiveIntensity});st.dissolveMaterials.set(child.uuid,dissolveMat);child.material=dissolveMat;}});// Create particles for dissolve-out using snapshots\nif(cfg.dissolveParticlesEnabled){disposeDissolveParticles(st.dissolveParticles);st.dissolveParticles=createDissolveParticles(st.dissolveOldModel,cfg);st.dissolveParticles.points.position.copy(snapshotPos);st.dissolveParticles.points.rotation.copy(snapshotRot);st.dissolveParticles.points.scale.copy(snapshotScale);st.scene.add(st.dissolveParticles.points);st.dissolveParticles.mat.uniforms.uProgress.value=mapDissolveProgress(0,cfg.dissolveAmplitude,cfg.dissolveEdgeWidth);}// Store snapshot for new model to inherit (smooth transition instead of teleport)\nif(enableScrollAnimation){st._dissolveOldSmoothedRotX=st.smoothedRotX;st._dissolveOldSmoothedRotY=st.smoothedRotY;st._dissolveOldSmoothedRotZ=st.smoothedRotZ;st._dissolveOldSmoothedOffX=st.smoothedOffX;st._dissolveOldSmoothedOffY=st.smoothedOffY;st._dissolveOldSmoothedOffZ=st.smoothedOffZ;st._dissolveOldSmoothedScale=st.smoothedScale;}// Don't remove model yet - will be removed after dissolve\nst.model=null;st.modelInner=null;}else if(st.model){st._dissolvePendingIn=false;// No dissolve - immediate cleanup\n// Use materials-only dispose: geometries are shared with _modelCache\nst.scene.remove(st.model);_disposeMaterialsOnly(st.model);st.model=null;st.modelInner=null;}if(st.mixer){_clearAnimationOnceCompleteListener(st,st.mixer);st.mixer.stopAllAction();st.mixer=null;st._activeAnimationAction=null;st._activeAnimationKey=\"\";st._activeAnimationClipName=\"\";st._lastAnimationRequestSig=\"\";st._animationActionCache=new Set;st._animationOnceCompleteListener=null;st._animationOnceCompleteAction=null;st._animationWarmupDone=false;st._modelHoverGateInitialized=false;st._modelHoverBaseAnimationClip=\"\";st._modelHoverPendingAnimationClip=\"\";}const format=detectFormat(modelUrl);const onLoaded=(object,animations)=>{if(cancelled)return;if(!st?.renderer||!st?.scene)return;// Clean up skinned mesh artifacts: bind-pose duplicates, bone helpers\n_cleanupSkinnedScene(object);const safeAnimations=_sanitizeAnimationClipsForObject(object,animations||[]);const box=_computeMeshOnlyBoundingBox(object);const center=box.getCenter(new THREE.Vector3);const size=box.getSize(new THREE.Vector3);const maxDim=Math.max(size.x,size.y,size.z)||1;const normalizeScale=1/maxDim;const wrapper=new THREE.Group;object.position.sub(center);wrapper.add(object);wrapper.scale.setScalar(normalizeScale);const cfg=settingsRef.current;const maxAniso=_getOptimizedAnisotropy(st.renderer,cfg);wrapper.traverse(child=>{if(child.isMesh){child.castShadow=true;child.receiveShadow=true;// SkinnedMesh vertices are transformed by bones on GPU —\n// static bounding box from bind pose is unreliable for frustum culling\nchild.frustumCulled=!child.isSkinnedMesh;const mats=Array.isArray(child.material)?child.material:[child.material];for(const mat of mats){// Color space\nif(mat.map)mat.map.colorSpace=THREE.SRGBColorSpace;if(mat.emissiveMap)mat.emissiveMap.colorSpace=THREE.SRGBColorSpace;// Anisotropic filtering — sharper textures at glancing angles\nconst texKeys=[\"map\",\"normalMap\",\"roughnessMap\",\"metalnessMap\",\"aoMap\",\"emissiveMap\"];for(const k of texKeys){if(mat[k]){mat[k].anisotropy=maxAniso;}}}}});// OPTIMIZATION: BVH Generation for Fast Raycasting\n_computeBVHForModel(wrapper);st._lastAppearReplayHash=appearReplayHash(cfg);// If the old model is dissolving out, or it already finished before\n// this model loaded, keep the new model hidden until dissolve-in starts.\nif(st.dissolveActive&&st.dissolveDirection===1||st._dissolvePendingIn){wrapper.visible=false;}st.scene.add(wrapper);st.model=wrapper;st.modelInner=object;// ── Model Axes: attach to newly loaded model if enabled ──\nif(st.modelAxesHelper){// Old helper from previous model — already removed with old model tree\nst.modelAxesHelper=null;}if(cfg.showModelAxes){const ma=new THREE.AxesHelper(cfg.showModelAxesSize||2);ma.renderOrder=998;ma.material.depthTest=false;wrapper.add(ma);st.modelAxesHelper=ma;}// ── Mesh Animations: discover and log mesh names for targeting ──\nconst discoveredMeshNames=[];const discoveredMeshTree=[];// Build hierarchy tree — include Groups that have mesh descendants\nfunction _buildMeshTree(node,depth){const isMesh=node.isMesh||node.isSkinnedMesh;const isGroup=node.isGroup||node.isObject3D;const hasName=!!node.name;if(isMesh&&hasName){discoveredMeshNames.push(node.name);let verts=0;if(node.geometry?.attributes?.position){verts=node.geometry.attributes.position.count;}discoveredMeshTree.push({name:node.name,type:node.isSkinnedMesh?\"SkinnedMesh\":\"Mesh\",depth,verts,isGroup:false,childMeshCount:0});}else if(isGroup&&hasName&&node!==object){// Count mesh descendants\nlet meshCount=0;node.traverse(d=>{if(d!==node&&(d.isMesh||d.isSkinnedMesh))meshCount++;});if(meshCount>0){discoveredMeshTree.push({name:node.name,type:\"Group\",depth,verts:0,isGroup:true,childMeshCount:meshCount});}}for(const child of node.children){_buildMeshTree(child,depth+(hasName&&node!==object?1:0));}}_buildMeshTree(object,0);// Store mesh name list & tree for external access\nst._discoveredMeshNames=discoveredMeshNames;st._discoveredMeshTree=discoveredMeshTree;const normalizedBox=_computeMeshOnlyBoundingBox(wrapper);const modelCenter=normalizedBox.getCenter(new THREE.Vector3);st.camera.position.set(cfg.cameraPositionX,cfg.cameraPositionY,cfg.cameraPositionZ);st.camera.near=.01;st.camera.far=2e3;// Ensure camera aspect/frustum matches current container before auto-fit\nif(wrapRef.current){const cw=wrapRef.current.clientWidth;const ch=wrapRef.current.clientHeight;if(cw&&ch){if(st.camera.isOrthographicCamera){const aspect=cw/ch;st.camera.left=-_ORTHO_FRUSTUM*aspect/2;st.camera.right=_ORTHO_FRUSTUM*aspect/2;st.camera.top=_ORTHO_FRUSTUM/2;st.camera.bottom=-_ORTHO_FRUSTUM/2;}else{st.camera.aspect=cw/ch;}}}st.camera.updateProjectionMatrix();st.controls.target.set(0,0,0);st.controls.update();// Auto-fit — camera distance to origin\nconst normSize=normalizedBox.getSize(new THREE.Vector3);const fitRatio=_getAutoFitRatio(st.camera,normSize);// Store for reactive updates\nst.normalizeScale=normalizeScale;st.fitRatio=fitRatio;// Store per-model scale factors for correct scroll smoothing during dissolve\nwrapper._modelNormalizeScale=normalizeScale;wrapper._modelFitRatio=fitRatio;const ms=Math.max(.01,cfg.modelScale||1);wrapper.scale.setScalar(normalizeScale*fitRatio*ms);// Apply position offset\napplyModelTransform(st,cfg);st.lastModelScale=cfg.modelScale;st.lastOffsetX=cfg.modelOffsetX;st.lastOffsetY=cfg.modelOffsetY;st.lastOffsetZ=cfg.modelOffsetZ;st.lastRotX=cfg.modelRotationX;st.lastRotY=cfg.modelRotationY;st.lastRotZ=cfg.modelRotationZ;// If loading during dissolve transition with scroll animation active,\n// init smoothed values from old model's snapshot to enable smooth transition\nif((st.dissolveActive||st._dissolvePendingIn)&&enableScrollAnimation){st.smoothedRotX=st._dissolveOldSmoothedRotX;st.smoothedRotY=st._dissolveOldSmoothedRotY;st.smoothedRotZ=st._dissolveOldSmoothedRotZ;st.smoothedOffX=st._dissolveOldSmoothedOffX;st.smoothedOffY=st._dissolveOldSmoothedOffY;st.smoothedOffZ=st._dissolveOldSmoothedOffZ;st.smoothedScale=st._dissolveOldSmoothedScale;}if(st._dissolvePendingIn){for(const dissolveMat of st.dissolveMaterials.values()){dissolveMat.dispose();}st.dissolveMaterials.clear();st.dissolveOriginalMaterials.clear();_startDissolveInForModel(st,cfg);}if(_hasAppearTransformMotion(cfg)){_restartAppearPlayback(st,cfg,canvasRef.current,true);}if(safeAnimations&&safeAnimations.length>0){st.mixer=new THREE.AnimationMixer(object);st.animations=safeAnimations;_warmAnimationActions(st,st.mixer,safeAnimations,cfg);// Detect and expose animation clip names for UI\nconst clipNames=safeAnimations.map(c=>c.name).filter(Boolean);if(clipNames.length){startTransition(()=>{setDetectedAnimations(clipNames);});}if(cfg.enableAnimation){_playConfiguredAnimation(st,st.mixer,safeAnimations,cfg,cfg.animationMode,cfg.animationClip);st.mixer.timeScale=cfg.animationSpeed;}}else{startTransition(()=>{setDetectedAnimations([]);});}// ── Blur Reveal: start blurred, animate to sharp ──\nif(cfg.blurReveal&&canvasRef.current){const intensity=cfg.blurRevealIntensity||12;canvasRef.current.style.filter=`blur(${intensity}px)`;canvasRef.current.style.willChange=\"filter\";st._blurRevealStart=performance.now();}// ── Progressive Loading: Phase 1 — show placeholder, then swap ──\n// Skip progressive when model came from cache — textures are already parsed & in memory\nif(cfg.progressiveLoading&&!fromCache){// Store originals, replace with placeholder materials\nconst allTextures=_storeAndReplacePlaceholder(wrapper);// Apply lighting & effects (no material override yet — placeholders shown)\napplyLightingChanges(st,cfg);applyEffectsChanges(st,cfg);st.lastSceneHash=sceneConfigHash(cfg);st.lastLightingHash=lightingHash(cfg);st.lastEnvHash=envHash(cfg);st.lastEffectsHash=effectsHash(cfg);st.lastMaterialHash=\"\";// Show placeholder at full brightness\nsetModelFade(wrapper,1);startTransition(()=>{setStatus(\"\");});// Broadcast: geometry loaded (30% progress)\nif(typeof window!==\"undefined\"&&window.__modelLoadingState){window.__modelLoadingState.setProgress(modelUrl,.3);}// Phase 2 — preload textures in background\n_preloadTexturesProgressive(st.renderer,allTextures,progress=>{// Map texture progress 0-1 to overall 30%-90%\nconst overall=.3+progress*.6;if(typeof window!==\"undefined\"&&window.__modelLoadingState){window.__modelLoadingState.setProgress(modelUrl,overall);}}).then(()=>{if(cancelled)return;// Phase 3 — restore original materials with fade\n_restoreProgressiveMaterials(wrapper);// Now apply material override/preset on top of restored originals\napplyMaterialOverride(wrapper,cfg);_syncSceneHashTrackers(st,cfg);// Fade in from placeholder brightness to full material\nconst fadeDur=cfg.progressiveFadeDuration||.8;const fadeStart=performance.now();st._progressiveFadeActive=true;const doFade=()=>{if(cancelled||!st._progressiveFadeActive)return;const elapsed=(performance.now()-fadeStart)/1e3;const t=Math.min(elapsed/fadeDur,1);// Materials already restored — use model fade for smooth transition\nsetModelFade(wrapper,t);if(t<1){requestAnimationFrame(doFade);}else{setModelFade(wrapper,1);st._progressiveFadeActive=false;// Broadcast: fully complete — model is visible with full materials\n_stopSyntheticProgress();_lastLoadedModelUrl=modelUrl;if(typeof window!==\"undefined\"&&window.__modelLoadingState){window.__modelLoadingState.setProgress(modelUrl,1);window.__modelLoadingState.setComplete(modelUrl);}}};requestAnimationFrame(doFade);});}else{// ── Standard (non-progressive) loading path ──\n// Apply all scene config immediately on first load (no transition)\napplyMaterialOverride(wrapper,cfg);applyLightingChanges(st,cfg);applyEffectsChanges(st,cfg);// Environment already set during init — just sync hash\n_syncSceneHashTrackers(st,cfg);// Ensure model starts at full brightness (no fade)\nsetModelFade(wrapper,1);startTransition(()=>{setStatus(\"\");});// Stop synthetic progress — real loading is done\n_stopSyntheticProgress();// Force one render so model pixels are on canvas BEFORE splash hides\ntry{if(_runtimeNeedsPostFx(cfg)&&wrapRef.current&&st.ensurePostFxPipeline&&st.ensurePostFxPipeline(cfg,wrapRef.current.clientWidth||1,wrapRef.current.clientHeight||1)){st.composer?.render();}else if(st.renderer&&st.scene&&st.camera){st.renderer.render(st.scene,st.camera);}}catch(_){}// Delay setComplete by 2 frames: frame 1 = browser composites the rendered pixels,\n// frame 2 = safe to hide splash (model guaranteed visible on screen)\n_lastLoadedModelUrl=modelUrl;if(typeof window!==\"undefined\"&&window.__modelLoadingState){window.__modelLoadingState.setProgress(modelUrl,.98);}requestAnimationFrame(()=>{if(cancelled)return;if(typeof window!==\"undefined\"&&window.__modelLoadingState){window.__modelLoadingState.setProgress(modelUrl,.99);}requestAnimationFrame(()=>{if(cancelled)return;if(typeof window!==\"undefined\"&&window.__modelLoadingState){window.__modelLoadingState.setProgress(modelUrl,1);window.__modelLoadingState.setComplete(modelUrl);}});});}};const onError=err=>{if(!cancelled){console.error(err);startTransition(()=>{setStatus(err?.message||\"Load error\");});_stopSyntheticProgress();// Notify splash screen that loading failed (still count as complete to unblock)\nif(typeof window!==\"undefined\"&&window.__modelLoadingState){window.__modelLoadingState.setComplete(modelUrl);}}};// Download progress callback — broadcasts 0-30% for progressive, 0-100% for standard\nconst onDownloadProgress=event=>{if(!event.lengthComputable)return;// Real progress received — kill synthetic animation\nif(!_hasRealProgress){_hasRealProgress=true;_stopSyntheticProgress();}const pct=event.loaded/event.total;if(typeof window!==\"undefined\"&&window.__modelLoadingState){if(cfg.progressiveLoading){window.__modelLoadingState.setProgress(modelUrl,pct*.3);}else{window.__modelLoadingState.setProgress(modelUrl,pct*.95);}}};try{// ── Check parsed model cache first ──\nconst cached=_modelCache.get(modelUrl);if(cached){fromCache=true;const{scene:clonedScene,animations:clonedAnims}=_cloneCachedModel(cached);onLoaded(clonedScene,clonedAnims);}else if(_preloadInFlight.has(modelUrl)){// Preload is already downloading — wait for it instead of starting a duplicate request\n_preloadInFlight.get(modelUrl).then(()=>{if(cancelled)return;const preloaded=_modelCache.get(modelUrl);if(preloaded){fromCache=true;const{scene:clonedScene,animations:clonedAnims}=_cloneCachedModel(preloaded);onLoaded(clonedScene,clonedAnims);}else{// Preload failed — fall back to direct load\nconsole.warn(\"[LoadModel] Preload finished but no cache entry — loading directly\");if(!window.__modelLoadingState?.isLoading){startTransition(()=>{setStatus(\"Loading…\");});}_loadModelDirect(modelUrl,format,onLoaded,onDownloadProgress,onError);}});}else{// No cache, no preload in flight — direct load\n// Start synthetic progress in case Content-Length is missing\n_startSyntheticProgress(modelUrl);_loadModelDirect(modelUrl,format,onLoaded,onDownloadProgress,onError);}}catch(err){onError(err);}return()=>{cancelled=true;// Cancel any active progressive fade\nif(stateRef.current)stateRef.current._progressiveFadeActive=false;_progressiveOrigMaterials.clear();// Only reset loading state if URL is changing to a DIFFERENT url\n// Don't reset on unmount/remount with same URL (e.g. splash variant transition)\n// The next useEffect run will set the correct state\n};},[modelUrl,cameraType,webglRuntimeActive]);useEffect(()=>{const st=stateRef.current;if(!st?.mixer)return;let raf=0;raf=requestAnimationFrame(()=>{const live=stateRef.current;if(!live?.mixer||live!==st)return;const cfg=settingsRef.current;_warmAnimationActions(live,live.mixer,live.animations,cfg);if(enableAnimation){_playConfiguredAnimation(live,live.mixer,live.animations,cfg,animationMode,animationClip);}else{_clearAnimationOnceCompleteListener(live,live.mixer);live.mixer.stopAllAction();live._activeAnimationAction=null;live._activeAnimationKey=\"\";live._activeAnimationClipName=\"\";live._lastAnimationRequestSig=\"\";}// Also re-sync sub-scene animations (non-overridden follow primary)\nif(live.subScenes){const sceneItems=subSceneItems||[];const subSceneCfg={...cfg,onAnimationOnceComplete:null};for(const[idx,ss]of live.subScenes){if(!ss.mixer||!ss.animations?.length)continue;if(ss.group&&ss.group.visible===false)continue;_warmAnimationActions(ss,ss.mixer,ss.animations,cfg);const item=sceneItems[idx];if(item?.animOverride){const overrideSig=[\"override\",enableAnimation?1:0,item.animMode??\"all\",item.animClip??\"\",cfg.animationBlendDuration??0,cfg.animationWarp?1:0,cfg.animationSyncPhase?1:0,cfg.animationRestartOnSwitch?1:0,cfg.animationLoopMode??\"repeat\",runtimeAnimationReplayHash].join(\"|\");if(enableAnimation){if(ss._lastSubSceneAnimationSyncSig!==overrideSig){ss._lastSubSceneAnimationSyncSig=overrideSig;_playAnimations(ss.mixer,ss.animations,item.animMode??\"all\",item.animClip??\"\",_getAnimationBlendOptions(ss,cfg));}}else{_clearAnimationOnceCompleteListener(ss,ss.mixer);ss.mixer.stopAllAction();ss._activeAnimationAction=null;ss._activeAnimationKey=\"\";ss._activeAnimationClipName=\"\";ss._lastAnimationRequestSig=\"\";ss._lastSubSceneAnimationSyncSig=\"\";}}else{const followSig=[\"follow\",enableAnimation?1:0,animationMode,animationClip??\"\",cfg.animationBlendDuration??0,cfg.animationWarp?1:0,cfg.animationSyncPhase?1:0,cfg.animationRestartOnSwitch?1:0,cfg.animationLoopMode??\"repeat\",cfg.animationModelHoverGate?1:0,hasAnimationOnceCompleteHandler?1:0,runtimeAnimationReplayHash].join(\"|\");if(enableAnimation){ss._modelHoverRaycastActive=live._modelHoverRaycastActive;if(ss._lastSubSceneAnimationSyncSig!==followSig){ss._lastSubSceneAnimationSyncSig=followSig;_playConfiguredAnimation(ss,ss.mixer,ss.animations,subSceneCfg,animationMode,animationClip);}}else{_clearAnimationOnceCompleteListener(ss,ss.mixer);ss.mixer.stopAllAction();ss._activeAnimationAction=null;ss._activeAnimationKey=\"\";ss._activeAnimationClipName=\"\";ss._lastAnimationRequestSig=\"\";ss._lastSubSceneAnimationSyncSig=\"\";}}}}});return()=>cancelAnimationFrame(raf);},[enableAnimation,animationMode,animationClip,animationBlendDuration,animationWarp,animationSyncPhase,animationRestartOnSwitch,animationLoopMode,animationModelHoverGate,animationWarmClips,hasAnimationOnceCompleteHandler,runtimeAnimationReplayHash,subSceneAnimationKey]);// Animation speed (timeScale) — apply to main + all sub-scene mixers\nuseEffect(()=>{const st=stateRef.current;if(!st?.mixer)return;let raf=0;raf=requestAnimationFrame(()=>{const live=stateRef.current;if(!live?.mixer||live!==st)return;if(live.mixer.timeScale!==animationSpeed){live.mixer.timeScale=animationSpeed;}if(live.subScenes){const sceneItems=subSceneItems||[];for(const[idx,ss]of live.subScenes){if(!ss.mixer)continue;if(ss.group&&ss.group.visible===false)continue;const item=sceneItems[idx];if(item?.animOverride&&item.animSpeed!=null){if(ss.mixer.timeScale!==item.animSpeed){ss.mixer.timeScale=item.animSpeed;}}else{if(ss.mixer.timeScale!==animationSpeed){ss.mixer.timeScale=animationSpeed;}}}}});return()=>cancelAnimationFrame(raf);},[animationSpeed,subSceneAnimationKey]);useEffect(()=>{const st=stateRef.current;if(!st)return;st.camera.position.set(cameraPositionX,cameraPositionY,cameraPositionZ);st.controls.update();},[cameraPositionX,cameraPositionY,cameraPositionZ]);// Orthographic zoom — update camera zoom when prop changes\nuseEffect(()=>{const st=stateRef.current;if(!st?.camera?.isOrthographicCamera)return;st.camera.zoom=orthoZoom;st.camera.updateProjectionMatrix();},[orthoZoom]);// Stereo eye separation — update when prop changes\nuseEffect(()=>{const st=stateRef.current;if(!st?.stereoCamera)return;st.stereoCamera.eyeSep=stereoEyeSep;},[stereoEyeSep]);// ── Grid Helper — add/remove/update on toggle or param change ──\nuseEffect(()=>{const st=stateRef.current;if(!st)return;// Remove old grid\nif(st.gridHelper){st.scene.remove(st.gridHelper);st.gridHelper.geometry?.dispose();st.gridHelper.material?.dispose();st.gridHelper=null;}if(showGrid){const g=new THREE.GridHelper(showGridSize,showGridDivisions,parseColor(showGridColor1),parseColor(showGridColor2));g.material.transparent=true;g.material.opacity=.6;g.material.depthWrite=false;g.renderOrder=-1;st.scene.add(g);st.gridHelper=g;}},[showGrid,showGridSize,showGridDivisions,showGridColor1,showGridColor2]);// ── Axes Helper — add/remove/update on toggle or size change ──\nuseEffect(()=>{const st=stateRef.current;if(!st)return;// Remove old axes\nif(st.axesHelper){st.scene.remove(st.axesHelper);st.axesHelper.geometry?.dispose();if(Array.isArray(st.axesHelper.material)){st.axesHelper.material.forEach(m=>m.dispose());}else{st.axesHelper.material?.dispose();}st.axesHelper=null;}if(showAxes){const a=new THREE.AxesHelper(showAxesSize);a.renderOrder=999;a.material.depthTest=false// always visible\n;st.scene.add(a);st.axesHelper=a;}},[showAxes,showAxesSize]);// ── Model Axes Helper — attached to model, follows its transforms ──\nuseEffect(()=>{const st=stateRef.current;if(!st)return;// Remove old model axes\nif(st.modelAxesHelper){st.modelAxesHelper.parent?.remove(st.modelAxesHelper);st.modelAxesHelper.geometry?.dispose();if(Array.isArray(st.modelAxesHelper.material)){st.modelAxesHelper.material.forEach(m=>m.dispose());}else{st.modelAxesHelper.material?.dispose();}st.modelAxesHelper=null;}if(showModelAxes&&st.model){const ma=new THREE.AxesHelper(showModelAxesSize);ma.renderOrder=998;ma.material.depthTest=false;st.model.add(ma);st.modelAxesHelper=ma;}},[showModelAxes,showModelAxesSize]);// ─────────────── Load/Unload Sub-Scenes ───────────────\nuseEffect(()=>{const st=stateRef.current;if(!st)return;let cancelled=false;// Build a map of desired sub-scenes: index → modelUrl\nconst desired=new Map;for(let i=0;i<subSceneItems.length;i++){const item=subSceneItems[i];if(item&&item.modelUrl&&item.modelUrl.trim()){desired.set(i,item.modelUrl.trim());}}const totalToLoad=desired.size;let loadedCount=0;const updatePreloadProgress=()=>{loadedCount++;startTransition(()=>{setPreloadProgress({loaded:loadedCount,total:totalToLoad});});};// Count already-loaded scenes\nfor(const[idx,ss]of st.subScenes){if(ss._loaded&&desired.has(idx)&&desired.get(idx)===ss.loadedUrl){loadedCount++;}}startTransition(()=>{setPreloadProgress({loaded:loadedCount,total:totalToLoad});});// Collect old sub-scenes that need replacement (URL changed) — keep alive until new one loads\nconst pendingReplace=new Map// idx → old sub-scene state (for deferred swap)\n;// Remove sub-scenes no longer desired; mark URL-changed ones for deferred swap\nfor(const[idx,ss]of st.subScenes){const wantUrl=desired.get(idx);if(!wantUrl){// Slot removed entirely — dispose immediately\ndisposeSubScene(st,ss);st.subScenes.delete(idx);}else if(wantUrl!==ss.loadedUrl){// URL changed — keep old scene alive as \"pending replace\" so user sees no gap\npendingReplace.set(idx,ss);st.subScenes.delete(idx);}}// Load new or changed sub-scenes\nfor(const[idx,url]of desired){if(st.subScenes.has(idx))continue;// already loaded & same URL\nconst oldSs=pendingReplace.get(idx)// may be null if brand new\n;// Register placeholder — inherit crossfade opacity & scroll state from old scene\nst.subScenes.set(idx,{group:null,modelInner:null,mixer:null,animations:[],normalizeScale:1,fitRatio:1,floatBaseY:0,loadedUrl:url,_loaded:false,// Keep old scene rendering until new one is ready\n_oldScene:oldSs||null,_lastSubSceneAnimationSyncSig:\"\"});const format=detectFormat(url);const imageFormat=detectImageFormat(url);const onSubLoaded=(object,animations)=>{if(cancelled)return;if(!st?.renderer||!st?.scene||!st?.camera)return;const cfg=settingsRef.current;_cleanupSkinnedScene(object);const safeAnimations=_sanitizeAnimationClipsForObject(object,animations||[]);const box=_computeMeshOnlyBoundingBox(object);const center=box.getCenter(new THREE.Vector3);const size=box.getSize(new THREE.Vector3);const maxDim=Math.max(size.x,size.y,size.z)||1;const normalizeScale=1/maxDim;const group=new THREE.Group;object.position.sub(center);group.add(object);group.scale.setScalar(1);_tmpBox3.copy(_computeMeshOnlyBoundingBox(group));const baseCenter=_tmpBox3.getCenter(new THREE.Vector3);const baseMinY=_tmpBox3.min.y;group.scale.setScalar(normalizeScale);// Texture setup\nconst maxAniso=_getOptimizedAnisotropy(st.renderer,cfg);group.traverse(child=>{if(child.isMesh){child.castShadow=!imageFormat;child.receiveShadow=!imageFormat;child.frustumCulled=!child.isSkinnedMesh;const mats=Array.isArray(child.material)?child.material:[child.material];for(const mat of mats){if(mat.map)mat.map.colorSpace=THREE.SRGBColorSpace;if(mat.emissiveMap)mat.emissiveMap.colorSpace=THREE.SRGBColorSpace;const texKeys=[\"map\",\"normalMap\",\"roughnessMap\",\"metalnessMap\",\"aoMap\",\"emissiveMap\"];for(const k of texKeys){if(mat[k])mat[k].anisotropy=maxAniso;}}}});// Auto-fit (same logic as primary model)\nconst normalizedBox=_computeMeshOnlyBoundingBox(group);const normSize=normalizedBox.getSize(new THREE.Vector3);const fitRatio=_getAutoFitRatio(st.camera,normSize);// Use LIVE settings (not stale closure) for initial transform\nconst liveItems=cfg.subSceneItems||[];const item=liveItems[idx]||subSceneItems[idx];const ssScale=Math.max(.01,item?.scale??1);group.scale.setScalar(normalizeScale*fitRatio*ssScale);// Retrieve the current placeholder to inherit its state\nconst placeholder=st.subScenes.get(idx);group.visible=item?.visible!==false;st.scene.add(group);// Apply material override/preset to sub-scene (sync with primary model)\nif(!imageFormat){applyMaterialOverride(group,cfg);}// Now dispose the old scene that was kept alive during loading\nif(placeholder?._oldScene){disposeSubScene(st,placeholder._oldScene);}let mixer=null;const subSceneAnimState={_activeAnimationAction:null,_activeAnimationKey:\"\",_activeAnimationClipName:\"\",_lastAnimationRequestSig:\"\",_lastSubSceneAnimationSyncSig:\"\",_animationActionCache:new Set,_animationOnceCompleteListener:null,_animationOnceCompleteAction:null,_animationWarmupDone:false,_modelHoverRaycastActive:st._modelHoverRaycastActive,_modelHoverGateInitialized:false,_modelHoverBaseAnimationClip:\"\",_modelHoverPendingAnimationClip:\"\"};if(safeAnimations&&safeAnimations.length>0){mixer=new THREE.AnimationMixer(object);_warmAnimationActions(subSceneAnimState,mixer,safeAnimations,cfg);if(cfg.enableAnimation){// Use per-scene animation settings if overridden\nconst useOverride=item?.animOverride;const overrideClip=item?.animClip??\"\";const playMode=useOverride?String(overrideClip).trim()?\"single\":\"all\":cfg.animationMode;const playClip=useOverride?overrideClip:cfg.animationClip;if(useOverride){_playAnimations(mixer,safeAnimations,playMode,playClip,_getAnimationBlendOptions(subSceneAnimState,cfg));}else{const subSceneCfg={...cfg,onAnimationOnceComplete:null};_playConfiguredAnimation(subSceneAnimState,mixer,safeAnimations,subSceneCfg,playMode,playClip);}// Apply per-scene speed\nif(useOverride&&item.animSpeed!=null){mixer.timeScale=item.animSpeed;}else{mixer.timeScale=cfg.animationSpeed;}}}// Initialize _smoothState with current live values to prevent snap on first frame\nconst initSmooth=cfg.enableScrollAnimation?{scale:item?.scale??1,offX:item?.offX??0,offY:item?.offY??0,offZ:item?.offZ??0,rotX:item?.rotX??0,rotY:item?.rotY??0,rotZ:item?.rotZ??0}:null;st.subScenes.set(idx,{group,modelInner:object,mixer,animations:safeAnimations||[],normalizeScale,fitRatio,floatBaseY:0,loadedUrl:url,_loaded:true,_oldScene:null,_smoothState:initSmooth,_activeAnimationAction:subSceneAnimState._activeAnimationAction,_activeAnimationKey:subSceneAnimState._activeAnimationKey,_activeAnimationClipName:subSceneAnimState._activeAnimationClipName,_lastAnimationRequestSig:subSceneAnimState._lastAnimationRequestSig,_lastSubSceneAnimationSyncSig:subSceneAnimState._lastSubSceneAnimationSyncSig,_animationActionCache:subSceneAnimState._animationActionCache,_animationOnceCompleteListener:subSceneAnimState._animationOnceCompleteListener,_animationOnceCompleteAction:subSceneAnimState._animationOnceCompleteAction,_animationWarmupDone:subSceneAnimState._animationWarmupDone,_modelHoverRaycastActive:subSceneAnimState._modelHoverRaycastActive,_modelHoverGateInitialized:subSceneAnimState._modelHoverGateInitialized,_modelHoverBaseAnimationClip:subSceneAnimState._modelHoverBaseAnimationClip,_modelHoverPendingAnimationClip:subSceneAnimState._modelHoverPendingAnimationClip,_ownsResources:!!imageFormat,_baseCenterX:baseCenter.x,_baseCenterY:baseCenter.y,_baseCenterZ:baseCenter.z,_baseMinY:baseMinY});updatePreloadProgress();};const onSubError=err=>{if(!cancelled){console.warn(`Sub-scene ${idx} load error:`,err);// Dispose old scene that was kept alive during loading attempt\nconst placeholder=st.subScenes.get(idx);if(placeholder?._oldScene){disposeSubScene(st,placeholder._oldScene);placeholder._oldScene=null;}}updatePreloadProgress()// still count toward progress\n;};try{if(imageFormat){loadImageAsSubScene(url,st.renderer,onSubLoaded,onSubError);continue;}// ── Check parsed model cache first ──\nconst cached=_modelCache.get(url);if(cached){const{scene:clonedScene,animations:clonedAnims}=_cloneCachedModel(cached);onSubLoaded(clonedScene,clonedAnims);}else if(_preloadInFlight.has(url)){// Preload already in progress — wait for it\n_preloadInFlight.get(url).then(()=>{if(cancelled)return;const preloaded=_modelCache.get(url);if(preloaded){const{scene:cs,animations:ca}=_cloneCachedModel(preloaded);onSubLoaded(cs,ca);}else{_loadModelDirect(url,format,onSubLoaded,undefined,onSubError);}});}else{_loadModelDirect(url,format,onSubLoaded,undefined,onSubError);}}catch(err){onSubError(err);}}return()=>{cancelled=true;// Dispose any lingering old scenes kept alive for deferred swap\nfor(const[,ss]of st.subScenes){if(ss._oldScene){disposeSubScene(st,ss._oldScene);ss._oldScene=null;}}};},[subSceneModelUrlKey,webglRuntimeActive]);// When orbit controls are OFF, make the entire wrapper transparent to pointer events\n// so the canvas never blocks buttons/links/triggers underneath or on top of it.\n// When orbit controls or mesh interactions are ON, pointer capture is enabled\n// only while the cursor is on the actual model (or while dragging).\n// Mouse rotation uses document-level listeners so it works regardless.\nconst hasInteractions=meshInteractionsRaw.map(resolveThreeJSRuntimeObjectEventItem).some(ic=>ic?.meshName&&(ic.__hasInteractionEvent??true));const needsPointerCapture=enableOrbitControls||hasInteractions;const shouldCapturePointer=needsPointerCapture&&modelPointerCapture;const cursorStyle=shouldCapturePointer?\"grab\":\"default\";const shouldUseLayoutPosition=layoutPositionMode!==\"relative\"&&layoutLayerMatched;const layoutPositionStyle=shouldUseLayoutPosition?{position:layoutPositionMode,zIndex:layoutZIndex,top:layoutTop,left:layoutLeft,...layoutRight!==null&&layoutRight!==\"\"?{right:layoutRight}:{},...layoutBottom!==null&&layoutBottom!==\"\"?{bottom:layoutBottom}:{}}:{};return /*#__PURE__*/_jsxs(\"div\",{ref:wrapRef,id:runtimeSlotDomId,\"data-import-3d-runtime-slot-id\":slotId,style:{width:\"100%\",height:\"100%\",...style,...layoutPositionStyle,cursor:cursorStyle,overflow:\"hidden\",background:transparentBackground?\"transparent\":undefined,pointerEvents:shouldCapturePointer?\"auto\":\"none\",touchAction:enableOrbitControls?\"pan-y\":\"auto\"},children:[effectiveWebglActive&&/*#__PURE__*/_jsx(\"canvas\",{ref:canvasRef,\"data-3d-canvas-id\":canvasId,style:{display:\"block\",width:\"100%\",height:\"100%\",opacity:1,pointerEvents:shouldCapturePointer?\"auto\":\"none\",touchAction:enableOrbitControls?\"pan-y\":\"auto\"}}),rootRendererActive&&isDesignCanvas&&/*#__PURE__*/_jsxs(\"div\",{style:{position:\"absolute\",inset:4,display:\"flex\",flexDirection:\"column\",alignItems:\"center\",justifyContent:\"center\",background:\"rgba(110, 89, 255, 0.05)\",backgroundSize:\"16px 16px\",border:\"1.5px dashed rgba(110, 89, 255, 0.4)\",borderRadius:12,padding:20,textAlign:\"center\",gap:16,color:\"#888\",userSelect:\"none\",overflow:\"hidden\"},children:[/*#__PURE__*/_jsxs(\"svg\",{width:\"32\",height:\"32\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"rgba(110, 89, 255, 0.6)\",strokeWidth:\"1.5\",strokeLinecap:\"round\",strokeLinejoin:\"round\",children:[/*#__PURE__*/_jsx(\"path\",{d:\"M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z\"}),/*#__PURE__*/_jsx(\"polyline\",{points:\"3.27 6.96 12 12.01 20.73 6.96\"}),/*#__PURE__*/_jsx(\"line\",{x1:\"12\",y1:\"22.08\",x2:\"12\",y2:\"12\"})]}),/*#__PURE__*/_jsx(\"div\",{style:{fontSize:12,fontWeight:500,letterSpacing:\"0.02em\",opacity:.8,fontFamily:'Inter, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif'},children:\"Nhấn preview hoặc publish để xem scene\"})]}),rootRendererActive&&!isDesignCanvas&&/*#__PURE__*/_jsx(\"div\",{\"data-import-3d-renderer-slot\":\"true\",style:{width:\"100%\",height:\"100%\",pointerEvents:\"none\",background:\"transparent\"}}),showMeshHelper&&meshTooltip&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",left:Math.min(meshTooltip.x+16,(wrapRef.current?.clientWidth||300)-220),top:Math.max(meshTooltip.y-10,4),pointerEvents:\"none\",zIndex:100},children:/*#__PURE__*/_jsxs(\"div\",{style:{background:\"rgba(0,0,0,0.92)\",border:\"1px solid rgba(255,255,255,0.12)\",borderRadius:8,padding:\"8px 12px\",backdropFilter:\"blur(12px)\",minWidth:140,maxWidth:260},children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:6,marginBottom:4},children:[/*#__PURE__*/_jsx(\"div\",{style:{width:8,height:8,borderRadius:2,background:meshTooltip.type===\"SkinnedMesh\"?\"#a855f7\":\"#3b82f6\"}}),/*#__PURE__*/_jsx(\"span\",{style:{color:\"#fff\",fontWeight:600,fontSize:12,letterSpacing:\"-0.01em\"},children:meshTooltip.name})]}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexWrap:\"wrap\",gap:\"4px 10px\",marginTop:2},children:[/*#__PURE__*/_jsx(\"span\",{style:{display:\"inline-block\",padding:\"1px 5px\",borderRadius:4,fontSize:9,background:meshTooltip.type===\"SkinnedMesh\"?\"rgba(168,85,247,0.15)\":\"rgba(59,130,246,0.15)\",color:meshTooltip.type===\"SkinnedMesh\"?\"#c084fc\":\"#60a5fa\",border:`1px solid ${meshTooltip.type===\"SkinnedMesh\"?\"rgba(168,85,247,0.2)\":\"rgba(59,130,246,0.2)\"}`},children:meshTooltip.type}),/*#__PURE__*/_jsxs(\"span\",{style:{color:\"rgba(255,255,255,0.4)\",fontSize:10},children:[meshTooltip.verts.toLocaleString(),\" verts\"]}),meshTooltip.mat&&/*#__PURE__*/_jsx(\"span\",{style:{color:\"rgba(255,255,255,0.3)\",fontSize:10},children:meshTooltip.mat})]}),/*#__PURE__*/_jsx(\"div\",{style:{marginTop:4,color:\"rgba(255,255,255,0.2)\",fontSize:9,wordBreak:\"break-all\"},children:meshTooltip.path})]})}),interactTooltip?interactTooltip.isFixed&&typeof document!==\"undefined\"?createPortal(/*#__PURE__*/_jsx(\"div\",{style:{position:\"fixed\",left:Math.min(interactTooltip.x+12,typeof window!==\"undefined\"?window.innerWidth-180:800),top:Math.max(interactTooltip.y-32,4),pointerEvents:\"none\",zIndex:2147483647},children:/*#__PURE__*/_jsx(\"div\",{style:{background:\"rgba(0,0,0,0.88)\",color:\"#fff\",padding:\"4px 10px\",borderRadius:6,fontSize:12,fontFamily:\"system-ui, sans-serif\",whiteSpace:\"nowrap\",boxShadow:\"0 2px 8px rgba(0,0,0,0.3)\",border:\"1px solid rgba(255,255,255,0.1)\",maxWidth:220,overflow:\"hidden\",textOverflow:\"ellipsis\"},children:interactTooltip.text})}),document.body):/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",left:Math.min(interactTooltip.x+12,(wrapRef.current?.clientWidth||300)-180),top:Math.max(interactTooltip.y-32,4),pointerEvents:\"none\",zIndex:999999},children:/*#__PURE__*/_jsx(\"div\",{style:{background:\"rgba(0,0,0,0.88)\",color:\"#fff\",padding:\"4px 10px\",borderRadius:6,fontSize:12,fontFamily:\"system-ui, sans-serif\",whiteSpace:\"nowrap\",boxShadow:\"0 2px 8px rgba(0,0,0,0.3)\",border:\"1px solid rgba(255,255,255,0.1)\",maxWidth:220,overflow:\"hidden\",textOverflow:\"ellipsis\"},children:interactTooltip.text})}):null,showMeshHelper&&stateRef.current?._discoveredMeshTree?.length>0&&isCanvasTarget&&/*#__PURE__*/_jsxs(\"div\",{style:{position:\"absolute\",right:10,top:10,maxHeight:\"70%\",overflowY:\"auto\",padding:\"6px 0\",fontSize:10,color:\"rgba(255,255,255,0.85)\",background:\"rgba(0,0,0,0.6)\",borderRadius:8,backdropFilter:\"blur(10px)\",pointerEvents:\"auto\",minWidth:180,maxWidth:300,lineHeight:1.5,zIndex:50,border:\"1px solid rgba(255,255,255,0.08)\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{padding:\"4px 10px 6px\",fontSize:10,color:\"rgba(255,255,255,0.5)\",borderBottom:\"1px solid rgba(255,255,255,0.1)\",marginBottom:2,display:\"flex\",alignItems:\"center\",gap:5},children:[/*#__PURE__*/_jsx(\"span\",{style:{display:\"inline-block\",width:7,height:7,borderRadius:2,background:\"#3b82f6\"}}),/*#__PURE__*/_jsx(\"span\",{style:{fontWeight:600,color:\"rgba(255,255,255,0.7)\"},children:\"Scene Hierarchy\"}),/*#__PURE__*/_jsxs(\"span\",{style:{marginLeft:\"auto\",fontSize:9},children:[stateRef.current._discoveredMeshNames.length,\" \",\"meshes\"]})]}),stateRef.current._discoveredMeshTree.map((item,i)=>{const isHovered=meshTooltip?.name===item.name;const indent=item.depth*12;if(item.isGroup){// ── Group row ──\nreturn /*#__PURE__*/_jsxs(\"div\",{style:{padding:`3px 10px 3px ${10+indent}px`,whiteSpace:\"nowrap\",overflow:\"hidden\",textOverflow:\"ellipsis\",display:\"flex\",alignItems:\"center\",gap:5,borderTop:i>0?\"1px solid rgba(255,255,255,0.04)\":\"none\",marginTop:i>0?1:0},children:[/*#__PURE__*/_jsx(\"span\",{style:{fontSize:8,color:\"#f59e0b\",flexShrink:0},children:\"▾\"}),/*#__PURE__*/_jsx(\"span\",{style:{fontWeight:600,fontSize:11,color:\"#fbbf24\",letterSpacing:\"0.01em\"},children:item.name}),/*#__PURE__*/_jsx(\"span\",{style:{fontSize:8,color:\"rgba(255,255,255,0.25)\",marginLeft:\"auto\",flexShrink:0,padding:\"1px 4px\",borderRadius:3,background:\"rgba(245,158,11,0.1)\",border:\"1px solid rgba(245,158,11,0.15)\"},children:item.childMeshCount})]},`g-${i}`);}// ── Mesh row ──\nconst typeColor=item.type===\"SkinnedMesh\"?{bg:\"rgba(168,85,247,0.12)\",border:\"rgba(168,85,247,0.2)\",text:\"#c084fc\"}:{bg:\"rgba(59,130,246,0.1)\",border:\"rgba(59,130,246,0.15)\",text:\"#60a5fa\"};return /*#__PURE__*/_jsxs(\"div\",{style:{padding:`2px 10px 2px ${10+indent}px`,whiteSpace:\"nowrap\",overflow:\"hidden\",textOverflow:\"ellipsis\",display:\"flex\",alignItems:\"center\",gap:5,color:isHovered?\"#60a5fa\":\"rgba(255,255,255,0.6)\",background:isHovered?\"rgba(59,130,246,0.1)\":\"transparent\",transition:\"background 0.15s, color 0.15s\",fontSize:10},children:[/*#__PURE__*/_jsx(\"span\",{style:{width:4,height:4,borderRadius:\"50%\",background:isHovered?\"#60a5fa\":\"rgba(255,255,255,0.2)\",flexShrink:0}}),/*#__PURE__*/_jsx(\"span\",{style:{overflow:\"hidden\",textOverflow:\"ellipsis\"},children:item.name}),/*#__PURE__*/_jsx(\"span\",{style:{fontSize:8,color:typeColor.text,padding:\"0 3px\",borderRadius:3,background:typeColor.bg,border:`1px solid ${typeColor.border}`,flexShrink:0,marginLeft:\"auto\"},children:item.type===\"SkinnedMesh\"?\"Skin\":\"Mesh\"}),/*#__PURE__*/_jsx(\"span\",{style:{fontSize:8,color:\"rgba(255,255,255,0.2)\",flexShrink:0},children:item.verts>999?`${(item.verts/1e3).toFixed(1)}k`:item.verts})]},`m-${i}`);}),/*#__PURE__*/_jsx(\"div\",{style:{padding:\"4px 10px 2px\",fontSize:8,color:\"rgba(255,255,255,0.2)\",borderTop:\"1px solid rgba(255,255,255,0.08)\",marginTop:2},children:\"Hover model to identify meshes\"})]}),status&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",left:\"50%\",top:\"50%\",transform:\"translate(-50%, -50%)\",padding:\"10px 16px\",fontSize:13,background:\"rgba(0,0,0,0.75)\",color:\"#fff\",borderRadius:10,backdropFilter:\"blur(8px)\",pointerEvents:\"none\"},children:status}),!status&&preloadProgress.total>0&&preloadProgress.loaded<preloadProgress.total&&/*#__PURE__*/_jsxs(\"div\",{style:{position:\"absolute\",left:\"50%\",bottom:12,transform:\"translateX(-50%)\",padding:\"4px 10px\",fontSize:10,background:\"rgba(0,0,0,0.5)\",color:\"rgba(255,255,255,0.7)\",borderRadius:6,backdropFilter:\"blur(6px)\",pointerEvents:\"none\",whiteSpace:\"nowrap\"},children:[\"Preloading \",preloadProgress.loaded,\"/\",preloadProgress.total]}),enableAnimation&&detectedAnimations.length>0&&isCanvasTarget&&/*#__PURE__*/_jsxs(\"div\",{style:{position:\"absolute\",left:10,bottom:10,maxHeight:\"40%\",overflowY:\"auto\",padding:\"6px 0\",fontSize:10,color:\"rgba(255,255,255,0.85)\",background:\"rgba(0,0,0,0.55)\",borderRadius:8,backdropFilter:\"blur(8px)\",pointerEvents:\"auto\",minWidth:120,lineHeight:1.6},children:[/*#__PURE__*/_jsxs(\"div\",{style:{padding:\"2px 10px 4px\",fontSize:9,color:\"rgba(255,255,255,0.45)\",borderBottom:\"1px solid rgba(255,255,255,0.1)\",marginBottom:2},children:[\"Animations (\",detectedAnimations.length,\")\"]}),detectedAnimations.map(name=>/*#__PURE__*/_jsxs(\"div\",{style:{padding:\"2px 10px\",cursor:\"default\",background:animationMode===\"single\"&&animationClip===name?\"rgba(77,155,255,0.3)\":\"transparent\",color:animationMode===\"single\"&&animationClip===name?\"#4d9bff\":\"rgba(255,255,255,0.75)\",whiteSpace:\"nowrap\"},children:[animationMode===\"all\"||animationMode===\"single\"&&animationClip===name?\"▶ \":\"   \",name]},name)),animationMode===\"all\"&&/*#__PURE__*/_jsx(\"div\",{style:{padding:\"2px 10px\",fontSize:9,color:\"rgba(255,255,255,0.35)\",borderTop:\"1px solid rgba(255,255,255,0.1)\",marginTop:2},children:\"Mode: All Clips\"})]}),showControls&&enableOrbitControls&&!status&&/*#__PURE__*/_jsxs(\"div\",{style:{position:\"absolute\",right:10,bottom:10,padding:\"4px 8px\",fontSize:9,color:\"rgba(255,255,255,0.25)\",background:\"rgba(0,0,0,0.3)\",borderRadius:6,pointerEvents:\"none\",lineHeight:1.4,textAlign:\"right\"},children:[\"Drag to orbit\",enableZoom?\" \\xb7 Scroll to zoom\":\"\"]})]});}/* ═══════════════════════════════════════════════════════════\n   Shared Runtime Config\n   ═══════════════════════════════════════════════════════════ *//**\n * Normalizes transformation data (position, rotation, scale) for models.\n * Handles the mapping between Framer's coordinate system and Three.js.\n *//**\n * Resolves camera positioning, model transformation, and responsive layout settings.\n * Handles desktop/mobile overrides and coordinate mapping.\n * @param props Component properties from Framer\n * @param options Resolution options (width, useMobile override)\n *//**\n * Resolves user interaction settings (orbit controls, zoom, auto-rotate)\n * and skeletal animation parameters.\n *//**\n * resolveThreeJSRuntimeConfig\n * Normalizes and deeply merges complex Framer properties into a flat,\n * predictable configuration object used by the WebGL rendering bridge.\n */// @api ConfigResolution.resolveRuntimeConfig\n/**\n * Resolves the appearance and transition configuration (dissolve effects, progressive loading, etc.).\n * Maps current property controls to the flat runtime configuration object.\n *//**\n * Aggregates all sub-configurations into a final runtime settings object.\n * This is the primary entry point for converting Framer props into internal engine state.\n */// @api ConfigResolution.buildRuntimeSettings\nexport const Slot={Component:_ThreeJSRuntimeSlot}// #endregion\n;\nexport const __FramerMetadata__ = {\"exports\":{\"Slot\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_clearModelCache\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"_startModelPreload\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./slotRuntime.map","// @ts-nocheck\n// #region 24. ROOT RENDERER COMPONENT\n/**\n * ThreeJSRuntimeRoot\n * The singleton engine that creates and manages the actual WebGLRenderer and ThreeJS Scene.\n * It reads from the WebGLCoordinator state and renders all registered ThreeJSRuntimeSlots.\n *\n * Consumed by ../../ThreeJS_Runtime.tsx as `Root.Component` / `Root.controls`,\n * mirroring the `Slot` export from ./slotRuntime.tsx.\n */import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{THREE,MeshoptDecoder,GLTFLoader,DRACOLoader,SkeletonUtils,BufferGeometryUtils,_loadFBXLoader,_loadPostFxModules,React,ControlType,RenderTarget,useIsOnFramerCanvas}from\"https://framerusercontent.com/modules/YeYAFpMfJfcs2D9mfKFW/DDv12VyHhTY27qyXtQ6t/deps.js\";import{_ORTHO_FRUSTUM,TONE_MAPPINGS}from\"https://framerusercontent.com/modules/urxcwcToMwyEWH05dzo6/cUcLUwBj9Qei2vxq7YKV/constants.js\";import{_getImport3DBridgeState,_emitImport3DBridge,_subscribeImport3DBridge,_snapshotImport3DBridge}from\"https://framerusercontent.com/modules/p9UElCqUo2EhVe2TH3ba/IJdmEZdowZxtu0vC2vAr/bridge.js\";import{_debugImport3DRendererEvent}from\"https://framerusercontent.com/modules/D31ZVnHevwcx09NbgNlK/gAH5hQZ6zgGecf46mlbw/diagnostics.js\";import{useBrowserLayoutEffect,NOISE_GLSL,VignetteShader,ChromaticAberrationShader,FilmGrainShader,AlphaRestoreShader,AlphaSavePass,ColorGradingShader,createFramerTilePixelatePass,applyEffectsChanges}from\"https://framerusercontent.com/modules/KDgXKUZDtOlVMTgk4xzC/l9KsabZZFC3I7R1x10GN/postprocessing.js\";import{UI_STYLES}from\"https://framerusercontent.com/modules/skuA7xWTM73AnSOFKd3r/grwUaKbGSWUnvDWJx4xe/propertyControls.js\";import{_tmpVec3A,_tmpVec3B,_tmpBox3,_tmpSubScenePivotOffset,_tmpSubScenePivotEuler,_tmpSubScenePivotQuat,_createAsyncTextureLoader,_rootTooltipHandler}from\"https://framerusercontent.com/modules/NDTJ5ADDpfKTGmrlCCF2/Sku50RC96WdXH0Q17gRv/state.js\";import{materialHash,lightingHash,envHash,effectsHash,appearReplayHash,sceneConfigHash}from\"https://framerusercontent.com/modules/rQr0QSqhMAFMOLIQZWpx/FeqTSuxAxSKs6XpNd793/hashes.js\";import{parseColor,_getObjectEventScrollProgress}from\"https://framerusercontent.com/modules/vGvxKBAQuEl5qBVTPruS/STnvRXy146qx84LkzO8J/formatAndColor.js\";import{_findAnimationClip,_clearAnimationOnceCompleteListener,_isAnimationOnceActionComplete,_bindAnimationOnceComplete,_bindAnimationOnceCompleteActions,_warmAnimationActions,_canAdvanceAnimationMixer}from\"https://framerusercontent.com/modules/ZMoE0e8TTc5hP09MepLT/EF6CGI7iUmZM5FG6LLYY/animationUtils.js\";import{_releaseEnvironmentMap,applyEnvironmentChanges}from\"https://framerusercontent.com/modules/zwopdMIjvlpx1ZSF2U25/4sJz6JchqGmISWzqGeGT/environment.js\";import{applyLightingChanges}from\"https://framerusercontent.com/modules/UATfUROvEvWK8jHDY9bj/Q1SBg2DsVIYCYR1cvaYG/lighting.js\";import{_removeStatsMonitor,_syncStatsMonitor}from\"https://framerusercontent.com/modules/EIWij9Oh1iXGinLQwMna/EIjbhJPKJTRs6ZavV2WL/statsMonitor.js\";import{_getVisibleSize,_getAutoFitVisibleSize,_getAutoFitRatio,_runtimeNeedsPostFx,_postFxPipelineSignature,getFramerRuntimeMode}from\"https://framerusercontent.com/modules/OcrnvbBWJ00imtCNulvV/ECeJBxCrq22P47xccZti/renderMetrics.js\";import{_sanitizeAnimationClipsForObject,_computeMeshOnlyBoundingBox}from\"https://framerusercontent.com/modules/zmx71qwu2TbY9YO9I2f5/5N7CD3udL4rE1txQaU17/object3DUtils.js\";import{_loadFromZip,_cleanupSkinnedScene,_disposeMaterialsOnly}from\"https://framerusercontent.com/modules/jz5beOl0SxBa2FLaAvkX/GRqx0bNbnn5oQtMBqM55/modelLoading.js\";import{createDissolveParticles,updateDissolveParticles,disposeDissolveParticles,syncParticleAttributes,_backupMaterial,_restoreMaterial,applyMaterialOverride}from\"https://framerusercontent.com/modules/TeSbfetwTP8U0VZWwTlf/TweTf7k9xt4eaTedtgHr/materialSystem.js\";import{_computeBVHForModel}from\"https://framerusercontent.com/modules/D0qFzYPgVWq5uzUVdTNq/6cvZ9EORoJ20sh3iSQXN/runtimeGlue.js\";import{_shouldReplayAppear,_isMobileInteraction}from\"https://framerusercontent.com/modules/32Efoe7eFeuyoLuzx9ZW/ungKBsUvu95nwLDbDMw7/sceneTransforms.js\";import{_getMeshAnimationDesired,_clearObjectEventHoverBaseTransform,_makeObjectEventTransformTargets,_objectEventScrollAnimations,resolveThreeJSRuntimeTransform,resolveThreeJSRuntimePositionConfig,resolveThreeJSRuntimeAppearConfig,resolveThreeJSRuntimeSubSceneItem,buildThreeJSRuntimeSettings}from\"https://framerusercontent.com/modules/eBQiBPIUI8umJseUYpvB/UbPSA4sy4TxWfG3kVyfR/configResolution.js\";// @api RootRenderer.component\nexport const Root=(()=>{// Root-specific constants (global _IMPORT_3D_BRIDGE_KEY, _ORTHO_FRUSTUM, _AUTO_FIT_MAX_ASPECT are reused)\nconst _ROOT_AUTO_FIT_MIN_VISIBLE=1e-4;const _ROOT_SCROLL_CANVAS_PADDING=.25;const _ROOT_DISSOLVE_EPSILON=1e-4;let _rootDracoLoader=null;let _rootGltfLoader=null;let _rootFbxLoader=null;let _rootTextureLoader=null;// Postprocessing (EffectComposer + FX passes) is fetched lazily, shared\n// with the per-slot pipeline's cached dynamic import in deps.tsx.\nlet _rootPostFxMods=null;let _rootPostFxModsLoading=false;function _ensureRootPostFxModulesLoaded(){if(_rootPostFxMods||_rootPostFxModsLoading)return;_rootPostFxModsLoading=true;_loadPostFxModules().then(mods=>{_rootPostFxMods=mods;_rootPostFxModsLoading=false;}).catch(err=>{_rootPostFxModsLoading=false;console.warn(\"ThreeJS Runtime: post-processing modules failed to load:\",err);});}const _rootModelCache=new Map;const _rootTextureCache=new Map;const _ROOT_DISSOLVE_NOISE_GLSL=NOISE_GLSL;function _getRootGltfLoader(){if(!_rootGltfLoader){_rootDracoLoader=new DRACOLoader;_rootDracoLoader.setDecoderPath(\"https://www.gstatic.com/draco/versioned/decoders/1.5.6/\");_rootGltfLoader=new GLTFLoader;_rootGltfLoader.setDRACOLoader(_rootDracoLoader);_rootGltfLoader.setMeshoptDecoder(MeshoptDecoder);}return _rootGltfLoader;}async function _getRootFbxLoader(){if(!_rootFbxLoader){const FBXLoader=await _loadFBXLoader();if(!_rootFbxLoader)_rootFbxLoader=new FBXLoader;}return _rootFbxLoader;}function _getRootTextureLoader(){if(!_rootTextureLoader)_rootTextureLoader=_createAsyncTextureLoader();return _rootTextureLoader;}function _rootModelUrlFromProps(props){const source=props?.modelSource||\"url\";const fileUrl=props?.modelFile||\"\";const url=props?.modelUrl||props?.modelUrlProp||\"\";return String(source===\"file\"?fileUrl||url:url||fileUrl).trim();}function _isRootSlotWebglEnabled(slot){const props=slot?.props||{};const perf=props.performance||{};const ui=props.ui||{};return perf.webglActive??ui.webglActive??true;}function _rootRecordKeyForSlot(slot){if(!slot?.id)return\"\";if(!_isRootSlotWebglEnabled(slot))return\"\";const url=_rootModelUrlFromProps(slot.props);const hasSubScenes=_rootHasRenderableSubScenes(slot.props,slot.runtimeSettings||slot.props?.__import3DRuntimeSettings);if(!url&&!hasSubScenes)return\"\";return`${slot.id}|${url||\"__subscenes__\"}`;}function _rootModelFormat(url){const clean=String(url||\"\").split(\"?\")[0].split(\"#\")[0].toLowerCase();if(clean.endsWith(\".fbx\"))return\"fbx\";if(clean.endsWith(\".glb\")||clean.endsWith(\".gltf\"))return\"gltf\";if(clean.endsWith(\".png\")||clean.endsWith(\".jpg\")||clean.endsWith(\".jpeg\")||clean.endsWith(\".webp\"))return\"image\";if(clean.endsWith(\".zip\"))return\"zip\";return\"\";}function _rootSubSceneUrlFromItem(item){const source=item?.modelSource||\"url\";const fileUrl=item?.modelFile||\"\";const url=item?.modelUrl||\"\";return String(source===\"file\"?fileUrl||url:url||fileUrl).trim();}function _loadRootTexture(url){if(!url)return Promise.reject(new Error(\"Missing texture URL\"));if(_rootTextureCache.has(url))return _rootTextureCache.get(url);const promise=new Promise((resolve,reject)=>{_getRootTextureLoader().load(url,texture=>{texture.colorSpace=THREE.SRGBColorSpace;texture.needsUpdate=true;resolve(texture);},undefined,reject);});_rootTextureCache.set(url,promise);return promise;}function _createRootImagePlane(texture){const image=texture?.image||{};const aspect=image.width&&image.height?image.width/Math.max(1,image.height):1;const geometry=new THREE.PlaneGeometry(aspect>=1?aspect:1,aspect>=1?1:1/aspect);const material=new THREE.MeshBasicMaterial({map:texture,transparent:true,alphaTest:.001,depthWrite:false,side:THREE.DoubleSide});return new THREE.Mesh(geometry,material);}function _loadRootModel(url){if(!url)return Promise.reject(new Error(\"Missing model URL\"));if(_rootModelCache.has(url))return _rootModelCache.get(url);const promise=new Promise((resolve,reject)=>{const format=_rootModelFormat(url);if(format===\"zip\"){_loadFromZip(url,(object,animations=[])=>{_cleanupSkinnedScene(object);const safeAnimations=_sanitizeAnimationClipsForObject(object,animations);resolve({object,animations:safeAnimations,format:\"zip\"});},undefined,reject);return;}if(format===\"image\"){_loadRootTexture(url).then(texture=>resolve({object:_createRootImagePlane(texture),animations:[],format:\"image\"})).catch(reject);return;}if(format===\"fbx\"){_getRootFbxLoader().then(loader=>{loader.load(url,object=>resolve({object,animations:_sanitizeAnimationClipsForObject(object,object.animations||[]),format:\"fbx\"}),undefined,reject);}).catch(reject);return;}_getRootGltfLoader().load(url,gltf=>resolve({object:gltf.scene,animations:_sanitizeAnimationClipsForObject(gltf.scene,gltf.animations||[]),format:\"gltf\"}),undefined,reject);});_rootModelCache.set(url,promise);promise.catch(()=>{if(_rootModelCache.get(url)===promise){_rootModelCache.delete(url);}});return promise;}function _applyRootCanonicalMaterial(object,cfg){if(!object||object.userData?._rootFormat===\"image\")return;applyMaterialOverride(object,cfg);}function _notifyRootModelLoadingStart(){if(typeof window===\"undefined\")return;const state=window.__modelLoadingState;if(!state||state.isLoading||state.isComplete)return;state.setLoading?.();}function _notifyRootModelLoadingComplete(){if(typeof window===\"undefined\")return;const state=window.__modelLoadingState;if(!state||state.isComplete)return;state.setProgress?.(1);state.setComplete?.();}function _preloadRootModel3D(url){const cleanUrl=String(url||\"\").trim();if(!cleanUrl)return Promise.resolve();if(_rootModelCache.has(cleanUrl))return Promise.resolve();_notifyRootModelLoadingStart();return _loadRootModel(cleanUrl).then(()=>{if(typeof window===\"undefined\")return;const state=window.__modelLoadingState;if(state?.isLoading&&!state?.isComplete){state.setProgress?.(.95);}}).catch(error=>{console.warn(\"[Import_3D_Canvas_Root] preload failed\",error);});}function _installRootPreloadBridge(){if(typeof window===\"undefined\")return;const win=window;const previousPreload=win.__preloadModel3D;if(previousPreload?._rootCanvasPreload)return;const preload=url=>{const pending=[_preloadRootModel3D(url)];if(typeof previousPreload===\"function\"){try{pending.push(Promise.resolve(previousPreload(url)));}catch(error){console.warn(\"[Import_3D_Canvas_Root] previous preload failed\",error);}}return Promise.allSettled(pending).then(()=>undefined);};preload._rootCanvasPreload=true;preload._previousPreload=previousPreload;win.__preloadModel3D=preload;}_installRootPreloadBridge();function _centerAndNormalizeRootModel(model){const box=_computeMeshOnlyBoundingBox(model);const size=box.getSize(new THREE.Vector3);const center=box.getCenter(new THREE.Vector3);model.position.sub(center);const maxSize=Math.max(size.x,size.y,size.z,1e-4);const normalizeScale=1/maxSize;model.scale.setScalar(normalizeScale);return normalizeScale;}function _optimizeStaticGeometries(model){model.updateMatrixWorld(true);const byMaterial=new Map;const byGeomMat=new Map;model.traverse(child=>{if(!child.isMesh||child.isSkinnedMesh)return;if(!child.geometry||!child.geometry.attributes.position)return;let matKey=\"\";if(Array.isArray(child.material)){matKey=child.material.map(m=>m.uuid).join(\"|\");}else if(child.material){matKey=child.material.uuid;}else{return;}const geomKey=child.geometry.uuid;const instKey=matKey+\"___\"+geomKey;if(!byGeomMat.has(instKey)){byGeomMat.set(instKey,{meshes:[],material:child.material,geometry:child.geometry});}byGeomMat.get(instKey).meshes.push(child);});const toRemove=[];const invMatrix=new THREE.Matrix4().copy(model.matrixWorld).invert();// 1. Process Instancing\nfor(const[instKey,group]of byGeomMat.entries()){if(group.meshes.length>2){const count=group.meshes.length;const instancedMesh=new THREE.InstancedMesh(group.geometry,group.material,count);instancedMesh.name=\"Instanced_\"+instKey.substring(0,12);const _matrix=new THREE.Matrix4;for(let i=0;i<count;i++){const mesh=group.meshes[i];_matrix.copy(mesh.matrixWorld);_matrix.premultiply(invMatrix);instancedMesh.setMatrixAt(i,_matrix);toRemove.push(mesh);mesh.userData._instanced=true;}model.add(instancedMesh);}}// 2. Process Merging for remaining static meshes\nmodel.traverse(child=>{if(!child.isMesh||child.isSkinnedMesh||child.userData._instanced||toRemove.includes(child))return;if(!child.geometry||!child.geometry.attributes.position)return;let matKey=\"\";if(Array.isArray(child.material)){matKey=child.material.map(m=>m.uuid).join(\"|\");}else if(child.material){matKey=child.material.uuid;}else{return;}const attrKeys=Object.keys(child.geometry.attributes).sort().join(\"-\");const mergeKey=matKey+\"___\"+attrKeys;if(!byMaterial.has(mergeKey)){byMaterial.set(mergeKey,{meshes:[],material:child.material});}byMaterial.get(mergeKey).meshes.push(child);});for(const[mergeKey,group]of byMaterial.entries()){if(group.meshes.length>1){const geometriesToMerge=[];for(const mesh of group.meshes){const clonedGeom=mesh.geometry.clone();clonedGeom.applyMatrix4(mesh.matrixWorld);clonedGeom.applyMatrix4(invMatrix);geometriesToMerge.push(clonedGeom);toRemove.push(mesh);}try{const mergedGeometry=BufferGeometryUtils.mergeGeometries(geometriesToMerge,false);if(mergedGeometry){const mergedMesh=new THREE.Mesh(mergedGeometry,group.material);mergedMesh.name=\"Merged_\"+mergeKey.substring(0,12);model.add(mergedMesh);}}catch(e){console.warn(\"ThreeJS Runtime: Could not merge geometries for key:\",mergeKey,e);for(const mesh of group.meshes){const idx=toRemove.indexOf(mesh);if(idx>-1)toRemove.splice(idx,1);}}finally{for(const geom of geometriesToMerge){geom.dispose();}}}}for(const mesh of toRemove){if(mesh.parent){mesh.parent.remove(mesh);}if(!mesh.userData._instanced){mesh.geometry?.dispose?.();}}return model;}// Camera helper functions now use global _getVisibleSize, _getAutoFitVisibleSize, _getAutoFitRatio\nfunction _prepareRootModel(model){model.traverse(child=>{if(!child?.isMesh)return;child.frustumCulled=false;child.castShadow=false;child.receiveShadow=false;if(child.material){child.material=Array.isArray(child.material)?child.material.map(mat=>mat?.clone?.()||mat):child.material.clone?.()||child.material;}const materials=Array.isArray(child.material)?child.material:[child.material];materials.forEach(mat=>{if(!mat)return;mat.userData=mat.userData||{};if(!mat.userData._rootOriginal){mat.userData._rootOriginal={color:mat.color?.clone?.(),emissive:mat.emissive?.clone?.(),metalness:mat.metalness,roughness:mat.roughness,opacity:mat.opacity,transparent:mat.transparent,wireframe:mat.wireframe,envMapIntensity:mat.envMapIntensity};}mat.needsUpdate=true;if(mat.transparent&&mat.opacity==null)mat.opacity=1;if(mat.userData._rootBaseOpacity===undefined){mat.userData._rootBaseOpacity=mat.opacity??1;}if(mat.userData._rootBaseTransparent===undefined){mat.userData._rootBaseTransparent=mat.transparent??false;}});});}function _rootMapDissolveProgress(t,amp,edge){const range=(amp||16)+(edge||.8);return-range+t*2*range;}function _rootCreateDissolveMaterial(originalMaterial,appear){const mat=originalMaterial.clone();const edgeColor=new THREE.Color(appear.dissolveEmissiveColor||\"#4d9bff\");mat.userData=mat.userData||{};mat.userData._rootDissolveProgress=_rootMapDissolveProgress(1,appear.dissolveAmplitude,appear.dissolveEdgeWidth);mat.userData._rootDissolveFreq=appear.dissolveNoiseScale??.25;mat.userData._rootDissolveAmp=appear.dissolveAmplitude??16;mat.userData._rootDissolveEdge=appear.dissolveEdgeWidth??.8;mat.userData._rootDissolveEdgeColor=edgeColor;mat.userData._rootDissolveEdgeIntensity=appear.dissolveEmissiveIntensity??3;mat.userData._rootBaseOpacity=originalMaterial?.userData?._rootBaseOpacity??originalMaterial?.opacity??1;mat.userData._rootBaseTransparent=originalMaterial?.userData?._rootBaseTransparent??originalMaterial?.transparent??false;mat.transparent=true;mat.onBeforeCompile=shader=>{shader.uniforms.uProgress={value:mat.userData._rootDissolveProgress};shader.uniforms.uFreq={value:mat.userData._rootDissolveFreq};shader.uniforms.uAmp={value:mat.userData._rootDissolveAmp};shader.uniforms.uEdge={value:mat.userData._rootDissolveEdge};shader.uniforms.uEdgeColor={value:mat.userData._rootDissolveEdgeColor};shader.uniforms.uEdgeIntensity={value:mat.userData._rootDissolveEdgeIntensity};mat.userData._rootDissolveUniforms=shader.uniforms;shader.vertexShader=shader.vertexShader.replace(\"#include <common>\",`#include <common>\nvarying vec3 vRootDissolvePos;`);shader.vertexShader=shader.vertexShader.replace(\"#include <begin_vertex>\",`#include <begin_vertex>\nvRootDissolvePos = position;`);shader.fragmentShader=shader.fragmentShader.replace(\"#include <common>\",`#include <common>\nvarying vec3 vRootDissolvePos;\nuniform float uProgress;\nuniform float uFreq;\nuniform float uAmp;\nuniform float uEdge;\nuniform vec3 uEdgeColor;\nuniform float uEdgeIntensity;\n${_ROOT_DISSOLVE_NOISE_GLSL}\n`);shader.fragmentShader=shader.fragmentShader.replace(\"#include <dithering_fragment>\",`#include <dithering_fragment>\nfloat rootNoise = snoise(vRootDissolvePos * uFreq) * uAmp;\nif (rootNoise < uProgress) discard;\nfloat rootEdgeEnd = uProgress + uEdge;\nif (rootNoise > uProgress && rootNoise < rootEdgeEnd) {\n    float rootEdgeMix = 1.0 - smoothstep(uProgress, rootEdgeEnd, rootNoise);\n    vec3 rootGlow = uEdgeColor * uEdgeIntensity * rootEdgeMix;\n    gl_FragColor = vec4(gl_FragColor.rgb + rootGlow, gl_FragColor.a);\n}\n`);};mat.needsUpdate=true;return mat;}function _rootRestoreAppearDissolve(object){if(!object)return;const state=object.userData?._rootAppearDissolve;if(!state?.active)return;object.traverse(child=>{if(!child?.isMesh)return;const original=state.originalMaterials.get(child.uuid);if(original)child.material=original;const dissolve=state.dissolveMaterials.get(child.uuid);(Array.isArray(dissolve)?dissolve:[dissolve]).forEach(mat=>mat?.dispose?.());});state.originalMaterials.clear();state.dissolveMaterials.clear();if(state.particles){disposeDissolveParticles(state.particles);if(state.particles.parent)state.particles.parent.remove(state.particles);state.particles=null;}state.active=false;state.hash=\"\";}function _syncRootAppearDissolve(object,visibility,appear){if(!object)return;const clampedVisibility=Math.max(0,Math.min(1,visibility??1));const t=1-clampedVisibility;const enabled=!!appear?.dissolveEnabled;const shouldBeActive=enabled&&t>_ROOT_DISSOLVE_EPSILON;const dissolveHash=[appear.dissolveNoiseScale,appear.dissolveAmplitude,appear.dissolveEdgeWidth,appear.dissolveEmissiveColor,appear.dissolveEmissiveIntensity,appear.dissolveParticleEnabled].join(\"|\");const state=object.userData._rootAppearDissolve||(object.userData._rootAppearDissolve={active:false,hash:\"\",originalMaterials:new Map,dissolveMaterials:new Map,particles:null});if(!shouldBeActive){_rootRestoreAppearDissolve(object);return;}if(!state.active||state.hash!==dissolveHash){_rootRestoreAppearDissolve(object);object.traverse(child=>{if(!child?.isMesh||!child.material)return;const original=child.material;state.originalMaterials.set(child.uuid,original);const nextMaterial=Array.isArray(original)?original.map(mat=>_rootCreateDissolveMaterial(mat,appear)):_rootCreateDissolveMaterial(original,appear);state.dissolveMaterials.set(child.uuid,nextMaterial);child.material=nextMaterial;});if(appear.dissolveParticleEnabled){state.particles=createDissolveParticles(object,appear);if(object.parent){object.parent.add(state.particles.points);}}state.active=true;state.hash=dissolveHash;}const mappedProgress=_rootMapDissolveProgress(t,appear.dissolveAmplitude,appear.dissolveEdgeWidth);object.traverse(child=>{if(!child?.isMesh||!child.material)return;const materials=Array.isArray(child.material)?child.material:[child.material];materials.forEach(mat=>{if(!mat?.userData)return;mat.userData._rootDissolveProgress=mappedProgress;const uniforms=mat.userData._rootDissolveUniforms;if(!uniforms)return;uniforms.uProgress.value=mappedProgress;uniforms.uFreq.value=appear.dissolveNoiseScale??.25;uniforms.uAmp.value=appear.dissolveAmplitude??16;uniforms.uEdge.value=appear.dissolveEdgeWidth??.8;uniforms.uEdgeColor.value.set(appear.dissolveEmissiveColor||\"#4d9bff\");uniforms.uEdgeIntensity.value=appear.dissolveEmissiveIntensity??3;});});if(state.particles){// Mirrors Slot's per-frame dissolve particle sync (slotRuntime.tsx):\n// advance the CPU-side particle state, then push it to the GPU\n// attributes — updateDissolveParticles alone only mutates typed\n// arrays, it never marks the BufferAttributes dirty.\nstate.particles.mat.uniforms.uProgress.value=mappedProgress;state.particles.mat.uniforms.uFreq.value=appear.dissolveNoiseScale??.25;state.particles.mat.uniforms.uAmp.value=appear.dissolveAmplitude??16;state.particles.mat.uniforms.uEdge.value=appear.dissolveEdgeWidth??.8;state.particles.mat.uniforms.uBaseSize.value=appear.dissolveParticleBaseSize||80;state.particles.mat.uniforms.uColor.value.copy(parseColor(appear.dissolveParticleColor||appear.dissolveEmissiveColor||\"#4d9bff\"));state.particles.state.speed=appear.dissolveParticleSpeed||.02;state.particles.state.waveAmp=appear.dissolveParticleWaveAmp||0;state.particles.state.velFactor.x=appear.dissolveParticleVelX||2.5;state.particles.state.velFactor.y=appear.dissolveParticleVelY||2;updateDissolveParticles(state.particles.state);syncParticleAttributes(state.particles.geo,state.particles.state);}}function _isRootDocumentScrollContainer(node){if(typeof window===\"undefined\")return true;return!node||node===window||node===document.body||node===document.documentElement||node===document.scrollingElement;}function _getRootScrollMetrics(scrollContainer){if(typeof window===\"undefined\"){return{scrollContainer:null,isDocument:true,scrollLeft:0,scrollTop:0,viewportWidth:1,viewportHeight:1,viewportLeft:0,viewportTop:0,viewportRight:1,viewportBottom:1,containerRect:{left:0,top:0,right:1,bottom:1,width:1,height:1}};}const isDocument=_isRootDocumentScrollContainer(scrollContainer);const scrollEl=isDocument?document.scrollingElement||document.documentElement||document.body:scrollContainer;const viewportWidth=Math.max(1,isDocument?window.innerWidth||1:scrollEl?.clientWidth||1);const viewportHeight=Math.max(1,isDocument?window.innerHeight||1:scrollEl?.clientHeight||1);const containerRect=isDocument?{left:0,top:0,right:viewportWidth,bottom:viewportHeight,width:viewportWidth,height:viewportHeight}:scrollEl.getBoundingClientRect();return{scrollContainer:scrollEl,isDocument,scrollLeft:scrollEl?.scrollLeft||window.scrollX||0,scrollTop:scrollEl?.scrollTop||window.scrollY||0,viewportWidth,viewportHeight,viewportLeft:containerRect.left,viewportTop:containerRect.top,viewportRight:containerRect.left+viewportWidth,viewportBottom:containerRect.top+viewportHeight,containerRect};}function _getRootEffectiveDomOpacity(node){if(typeof window===\"undefined\"||!node)return 1;let current=node;let opacity=1;while(current&&current!==document.body&&current!==document.documentElement){if(!(current instanceof HTMLElement)){current=current.parentElement;continue;}const style=window.getComputedStyle(current);if(style.display===\"none\"||style.visibility===\"hidden\"){return 0;}const ownOpacity=Number.parseFloat(style.opacity||\"1\");if(Number.isFinite(ownOpacity))opacity*=ownOpacity;current=current.parentElement;}return Math.max(0,Math.min(1,opacity));}function _rootRectsNearlyEqual(a,b,tolerance=1){if(!a||!b)return false;return Math.abs((a.left||0)-(b.left||0))<=tolerance&&Math.abs((a.top||0)-(b.top||0))<=tolerance&&Math.abs((a.width||0)-(b.width||0))<=tolerance&&Math.abs((a.height||0)-(b.height||0))<=tolerance;}function _compareRootVariantPriority(a,b){const pointerDelta=Number(!!b?.pointerHit)-Number(!!a?.pointerHit);if(pointerDelta!==0)return pointerDelta;const opacityDelta=(b?.domOpacity||0)-(a?.domOpacity||0);if(Math.abs(opacityDelta)>.001)return opacityDelta;const updatedDelta=(b?.updatedAt||0)-(a?.updatedAt||0);if(Math.abs(updatedDelta)>.5)return updatedDelta;const visibilityDelta=(b?.visibility||0)-(a?.visibility||0);if(Math.abs(visibilityDelta)>.001)return visibilityDelta;return(a?.distance||0)-(b?.distance||0);}function _compareRootRenderOrder(a,b){const sameRect=_rootRectsNearlyEqual(a?.rect,b?.rect);if(sameRect){const opacityDelta=(a?.domOpacity||0)-(b?.domOpacity||0);if(Math.abs(opacityDelta)>.001)return opacityDelta;const updatedDelta=(a?.updatedAt||0)-(b?.updatedAt||0);if(Math.abs(updatedDelta)>.5)return updatedDelta;}return(a?.distance||0)-(b?.distance||0);}function _compareRootPreloadOrder(a,b){const visibilityDelta=(b?.visibility||0)-(a?.visibility||0);if(Math.abs(visibilityDelta)>.001)return visibilityDelta;return(a?.distance||0)-(b?.distance||0);}function _resolveRootResponsiveTransform(transform,width){return resolveThreeJSRuntimeTransform(transform,{width});}function _normalizeRootLayerMatchValue(value){return String(value??\"\").trim().toLowerCase();}function _isRootLayerMatchCandidateUsable(node,slotNode){if(!node||node.nodeType!==1)return false;if(slotNode&&slotNode.contains?.(node))return false;if(node.getAttribute?.(\"data-3d-canvas-id\"))return false;const rect=node.getBoundingClientRect?.();if(!rect||rect.width<1||rect.height<1)return false;let current=node;while(current&&current!==document.body){if(current.getAttribute?.(\"aria-hidden\")===\"true\"||current.getAttribute?.(\"data-framer-hidden\")===\"true\"){return false;}const style=typeof window!==\"undefined\"?window.getComputedStyle(current):null;if(style&&(style.display===\"none\"||style.visibility===\"hidden\"||Number(style.opacity)===0)){return false;}current=current.parentElement;}return true;}function _matchesRootLayerSelector(rootNode,selector){const targets=String(selector??\"\").split(\",\").map(_normalizeRootLayerMatchValue).flatMap(value=>[value,value.replace(/^[#.]/,\"\")]).filter(Boolean);if(!targets.length)return true;let node=rootNode;while(node&&node!==document.body){const values=[node.id,node.getAttribute?.(\"aria-label\"),node.getAttribute?.(\"data-framer-name\"),node.getAttribute?.(\"data-framer-component-name\"),node.getAttribute?.(\"data-section-id\"),node.getAttribute?.(\"data-name\"),node.getAttribute?.(\"title\")];if(node.classList)values.push(...Array.from(node.classList));if(values.filter(Boolean).map(_normalizeRootLayerMatchValue).some(value=>targets.includes(value))){return true;}node=node.parentElement;}return false;}function _findRootLayerMatchElement(selector,slotNode=null){if(typeof document===\"undefined\")return null;const targets=String(selector??\"\").split(\",\").map(_normalizeRootLayerMatchValue).map(value=>value.replace(/^[#.]/,\"\")).filter(Boolean);if(!targets.length)return null;const exactCandidates=document.querySelectorAll(\"[data-section-id],[id]\");for(const target of targets){for(const node of exactCandidates){if(!_isRootLayerMatchCandidateUsable(node,slotNode))continue;const sectionId=_normalizeRootLayerMatchValue(node.getAttribute?.(\"data-section-id\"));if(sectionId&&sectionId===target)return node;}for(const node of exactCandidates){if(!_isRootLayerMatchCandidateUsable(node,slotNode))continue;const id=_normalizeRootLayerMatchValue(node.id);if(id&&id===target)return node;}}return null;}function _getRootScrollLayoutViewport(record,wrapNode,scrollContainer,now){if(record._rootScrollLayoutMeasureAt&&now-record._rootScrollLayoutMeasureAt<16){if(record._rootScrollLayoutWrapNode===wrapNode&&record._rootScrollLayoutScrollContainer===scrollContainer&&record._rootScrollLayoutViewport){return record._rootScrollLayoutViewport;}}record._rootScrollLayoutMeasureAt=now;record._rootScrollLayoutWrapNode=wrapNode;record._rootScrollLayoutScrollContainer=scrollContainer;if(record._rootScrollLayoutRectCache?.clear){record._rootScrollLayoutRectCache.clear();}else{record._rootScrollLayoutRectCache=new Map;}const metrics=_getRootScrollMetrics(scrollContainer);record._rootScrollLayoutViewport=metrics.isDocument?{left:0,top:0,width:metrics.viewportWidth,height:metrics.viewportHeight,local:false}:{left:0,top:0,width:metrics.viewportWidth,height:metrics.viewportHeight,local:true,wrapRect:metrics.containerRect,scaleX:1,scaleY:1};return record._rootScrollLayoutViewport;}function _getRootScrollLayoutRect(record,node,viewport){if(!node)return null;const rectCache=record._rootScrollLayoutRectCache;if(rectCache?.has(node))return rectCache.get(node);const rawRect=node.getBoundingClientRect();if(!viewport?.local||!viewport.wrapRect){rectCache?.set(node,rawRect);return rawRect;}const scaleX=viewport.scaleX||1;const scaleY=viewport.scaleY||1;const left=(rawRect.left-viewport.wrapRect.left)/scaleX;const top=(rawRect.top-viewport.wrapRect.top)/scaleY;const width=rawRect.width/scaleX;const height=rawRect.height/scaleY;const rect={left,top,width,height,right:left+width,bottom:top+height};rectCache?.set(node,rect);return rect;}function _rootPositionConfig(props,rectWidth=0){return resolveThreeJSRuntimePositionConfig(props,{width:rectWidth});}function _applyRootPositionToObject(object,positionState){if(!object||!positionState)return;const scrollTarget=positionState.scrollTarget||{};const progress=positionState.transformActive?Math.max(0,Math.min(1,positionState.progress??0)):0;object.position.x+=positionState.followX||0;object.position.y+=positionState.followY||0;if(positionState.transformActive){object.position.x+=(scrollTarget.offX??0)*progress;object.position.y+=(scrollTarget.offY??0)*progress;object.position.z+=(scrollTarget.offZ??0)*progress;const scaleMultiplier=scrollTarget.scale!=null?1+(scrollTarget.scale-1)*progress:1;object.scale.multiplyScalar(scaleMultiplier);object.rotation.x+=(scrollTarget.rotX??0)*progress*Math.PI/180;object.rotation.y+=(scrollTarget.rotY??0)*progress*Math.PI/180;object.rotation.z+=(scrollTarget.rotZ??0)*progress*Math.PI/180;}}function _measureRootAnchorProgress(el,slotRect,anchorY=.5){const rect=el?.getBoundingClientRect?.();if(!rect||!slotRect)return{progress:0,inView:false};const anchorScreenY=rect.top+rect.height*anchorY-slotRect.top;const progress=Math.max(0,Math.min(1,1-anchorScreenY/slotRect.height));const inView=rect.right>slotRect.left&&rect.left<slotRect.right&&rect.bottom>slotRect.top&&rect.top<slotRect.bottom;return{progress,inView};}function _getRootFollowOffset(record,cfg,wrapNode,scrollContainer,camera,now){const prevMatch=record._rootFollowMatch;if(!cfg.followEnabled||!cfg.followMatch||typeof window===\"undefined\"){record._rootFollowOffsetX=0;record._rootFollowOffsetY=0;record._rootFollowLastVisibleX=undefined;record._rootFollowLastVisibleY=undefined;record._rootFollowTransitionId=\"\";record._rootFollowTransitionStart=0;record._rootFollowEl=null;record._rootFollowMatch=\"\";return{x:0,y:0,active:false,inView:true,progress:0};}const transitionTargetId=String(cfg.transitionTargetId??\"\").trim();const transitionRequested=!!cfg.transitionEnabled;const matchChanged=prevMatch!==cfg.followMatch;if(matchChanged||!record._rootFollowEl||!record._rootFollowEl.isConnected||!_isRootLayerMatchCandidateUsable(record._rootFollowEl,wrapNode)||now>=(record._rootFollowLookupAt||0)){const prevResolvedEl=record._rootFollowEl;record._rootFollowMatch=cfg.followMatch;record._rootFollowEl=_findRootLayerMatchElement(cfg.followMatch,wrapNode);record._rootFollowLookupAt=now+500;if(prevResolvedEl&&prevResolvedEl!==record._rootFollowEl){record._rootFollowTransitionId=\"\";record._rootFollowTransitionStart=0;}}let el=record._rootFollowEl;if(el&&!_isRootLayerMatchCandidateUsable(el,wrapNode)){record._rootFollowEl=_findRootLayerMatchElement(cfg.followMatch,wrapNode);record._rootFollowLookupAt=now+500;el=record._rootFollowEl;record._rootFollowTransitionId=\"\";record._rootFollowTransitionStart=0;}const prevEl=prevMatch&&prevMatch!==cfg.followMatch?_findRootLayerMatchElement(prevMatch,wrapNode):null;const transitionTargetMatches=!transitionTargetId||!!prevEl&&_matchesRootLayerSelector(prevEl,transitionTargetId)||_normalizeRootLayerMatchValue(transitionTargetId)===_normalizeRootLayerMatchValue(prevMatch)||_normalizeRootLayerMatchValue(transitionTargetId)===_normalizeRootLayerMatchValue(record._rootFollowLastTransitionFromMatch);const transitionEnabled=transitionRequested&&transitionTargetMatches;if(!el){record._rootFollowOffsetX=0;record._rootFollowOffsetY=0;record._rootFollowLastVisibleX=undefined;record._rootFollowLastVisibleY=undefined;record._rootFollowTransitionId=\"\";record._rootFollowTransitionStart=0;return{x:0,y:0,active:false,inView:false,progress:0};}const viewport=_getRootScrollLayoutViewport(record,wrapNode,scrollContainer,now);const measureAnchorOffset=node=>{if(!node||typeof window===\"undefined\")return null;const rect=_getRootScrollLayoutRect(record,node,viewport);if(!rect)return null;const viewW=viewport.width;const viewH=viewport.height;if(!viewW||!viewH)return null;const anchorX=cfg.anchorX??.5;const anchorY=cfg.anchorY??.5;const pxX=rect.left+rect.width*anchorX-(viewport.left+viewW/2);const pxY=rect.top+rect.height*anchorY-(viewport.top+viewH/2);const anchorScreenY=rect.top+rect.height*anchorY-viewport.top;const progress=Math.max(0,Math.min(1,1-anchorScreenY/viewH));let pxToWorldX;let pxToWorldY;if(camera?.isOrthographicCamera){pxToWorldX=(camera.right-camera.left)/(camera.zoom||1)/viewW;pxToWorldY=(camera.top-camera.bottom)/(camera.zoom||1)/viewH;}else{const camDist=camera?.position?.length?.()||1;const visible=_getVisibleSize(camera,camDist);pxToWorldX=visible.width/viewW;pxToWorldY=visible.height/viewH;}return{x:pxX*pxToWorldX*(cfg.followX??1),y:-pxY*pxToWorldY*(cfg.followY??1),inView:rect.right>viewport.left&&rect.left<viewport.left+viewW&&rect.bottom>viewport.top&&rect.top<viewport.top+viewH,progress};};const currentMeasure=measureAnchorOffset(el);if(!currentMeasure){return{x:0,y:0,active:false,inView:true,progress:0};}const prevMeasure=measureAnchorOffset(prevEl);const isInViewport=currentMeasure.inView;const targetX=currentMeasure.x;const targetY=currentMeasure.y;if(cfg.responsiveIsMobile){record._rootFollowTransitionId=\"\";record._rootFollowTransitionStart=0;record._rootFollowOffsetX=targetX;record._rootFollowOffsetY=targetY;record._rootFollowLastVisibleX=targetX;record._rootFollowLastVisibleY=targetY;return{x:targetX,y:targetY,active:true,inView:isInViewport,progress:currentMeasure.progress};}if(matchChanged&&prevMatch&&!prevMeasure){record._rootFollowTransitionId=\"\";record._rootFollowTransitionStart=0;record._rootFollowOffsetX=targetX;record._rootFollowOffsetY=targetY;record._rootFollowLastVisibleX=targetX;record._rootFollowLastVisibleY=targetY;return{x:targetX,y:targetY,active:true,inView:isInViewport,progress:currentMeasure.progress};}const transitionChanged=!!record._rootFollowTransitionId!==transitionEnabled;if(transitionEnabled&&(matchChanged||transitionChanged)&&(record._rootFollowOffsetX!==undefined&&record._rootFollowOffsetY!==undefined||prevMeasure)){record._rootFollowLastTransitionFromMatch=prevMatch||\"\";record._rootFollowTransitionId=transitionEnabled;record._rootFollowTransitionFromX=record._rootFollowOffsetX??prevMeasure?.x??targetX;record._rootFollowTransitionFromY=record._rootFollowOffsetY??prevMeasure?.y??targetY;record._rootFollowTransitionToX=targetX;record._rootFollowTransitionToY=targetY;record._rootFollowTransitionStart=now;record._rootFollowTransitionDuration=Math.max(180,560-(cfg.followSmooth??1)*320);}else if(!transitionEnabled){record._rootFollowTransitionId=\"\";record._rootFollowTransitionStart=0;}else{record._rootFollowTransitionId=true;}if(!transitionEnabled&&matchChanged&&prevMatch){record._rootFollowOffsetX=targetX;record._rootFollowOffsetY=targetY;record._rootFollowLastVisibleX=targetX;record._rootFollowLastVisibleY=targetY;return{x:targetX,y:targetY,active:true,inView:isInViewport,progress:currentMeasure.progress};}if(transitionEnabled&&record._rootFollowTransitionStart>0){record._rootFollowTransitionToX=targetX;record._rootFollowTransitionToY=targetY;const duration=Math.max(1,record._rootFollowTransitionDuration||280);const t=Math.min(1,(now-record._rootFollowTransitionStart)/duration);const eased=1-Math.pow(1-t,3);record._rootFollowOffsetX=(record._rootFollowTransitionFromX??targetX)+((record._rootFollowTransitionToX??targetX)-(record._rootFollowTransitionFromX??targetX))*eased;record._rootFollowOffsetY=(record._rootFollowTransitionFromY??targetY)+((record._rootFollowTransitionToY??targetY)-(record._rootFollowTransitionFromY??targetY))*eased;record._rootFollowLastVisibleX=record._rootFollowOffsetX;record._rootFollowLastVisibleY=record._rootFollowOffsetY;if(t>=1){record._rootFollowTransitionStart=0;record._rootFollowTransitionFromX=record._rootFollowOffsetX;record._rootFollowTransitionFromY=record._rootFollowOffsetY;}return{x:record._rootFollowOffsetX,y:record._rootFollowOffsetY,active:true,inView:isInViewport,progress:currentMeasure.progress};}const smooth=Math.max(0,Math.min(1,cfg.followSmooth??1));const prevX=record._rootFollowOffsetX??targetX;const prevY=record._rootFollowOffsetY??targetY;record._rootFollowOffsetX=prevX+(targetX-prevX)*smooth;record._rootFollowOffsetY=prevY+(targetY-prevY)*smooth;record._rootFollowLastVisibleX=record._rootFollowOffsetX;record._rootFollowLastVisibleY=record._rootFollowOffsetY;return{x:record._rootFollowOffsetX,y:record._rootFollowOffsetY,active:true,inView:isInViewport,progress:currentMeasure.progress};}function _getRootTransformOffset(record,cfg,wrapNode,scrollContainer,now){if(!cfg.transformEnabled||!cfg.transformMatch||typeof window===\"undefined\"){record._rootTransformEl=null;record._rootTransformMatch=\"\";return{active:false,inView:true,progress:0};}const match=cfg.transformMatch;if(record._rootTransformMatch!==match||!record._rootTransformEl||!record._rootTransformEl.isConnected||!_isRootLayerMatchCandidateUsable(record._rootTransformEl,wrapNode)||now>=(record._rootTransformLookupAt||0)){record._rootTransformMatch=match;record._rootTransformEl=_findRootLayerMatchElement(match,wrapNode);record._rootTransformLookupAt=now+500;}const el=record._rootTransformEl;if(!el){return{active:false,inView:false,progress:0};}const viewport=_getRootScrollLayoutViewport(record,wrapNode,scrollContainer,now);const rect=_getRootScrollLayoutRect(record,el,viewport);if(!rect){return{active:false,inView:true,progress:0};}const viewW=viewport.width;const viewH=viewport.height;if(!viewW||!viewH){return{active:false,inView:true,progress:0};}const anchorY=cfg.anchorY??.5;const anchorScreenY=rect.top+rect.height*anchorY-viewport.top;const progress=Math.max(0,Math.min(1,1-anchorScreenY/viewH));const inView=rect.right>viewport.left&&rect.left<viewport.left+viewW&&rect.bottom>viewport.top&&rect.top<viewport.top+viewH;return{active:true,inView,progress};}function _getRootPositionState(record,props,slot,rect,camera,runtimeCfg=null){const cfg=runtimeCfg||_rootPositionConfig(props,rect?.width||0);const now=typeof performance!==\"undefined\"?performance.now():Date.now();const slotNode=slot?.element||null;const scrollContainer=slot?.scrollContainer||null;const followOffset=_getRootFollowOffset(record,cfg,slotNode,scrollContainer,camera,now);const transformOffset=_getRootTransformOffset(record,cfg,slotNode,scrollContainer,now);return{followX:followOffset.x,followY:followOffset.y,followActive:followOffset.active,followInView:followOffset.inView,followProgress:followOffset.progress,progress:transformOffset.progress,transformActive:transformOffset.active,transformInView:transformOffset.inView,scrollTarget:cfg.scrollTarget};}function _rootAppearConfig(props){return resolveThreeJSRuntimeAppearConfig(props);}function _resolveRootRuntimeConfig(props,rectWidth=0){const cfg=buildThreeJSRuntimeSettings(props,{rectWidth,host:\"root\"});const slotRuntime=props?.__import3DRuntimeSettings;if(slotRuntime){return{...cfg,...slotRuntime};}return cfg;}function _normalizeRootRuntimeSceneItems(items=[]){return(items||[]).map(item=>{if(!item)return item;return resolveThreeJSRuntimeSubSceneItem(item);});}function _getRootRuntimeSceneItems(props,runtimeCfg=null){const rawItems=props?.scenes||[];const hasRootGeneratedItems=rawItems.some(item=>item?.__groupRuntimeCfg||item?.__groupSlotProps||item?.__fromGroupedSlot);if(hasRootGeneratedItems){return _normalizeRootRuntimeSceneItems(rawItems);}const runtimeItems=runtimeCfg?.subSceneItems||props?.__import3DRuntimeSettings?.subSceneItems;if(Array.isArray(runtimeItems)){return _normalizeRootRuntimeSceneItems(runtimeItems);}return _normalizeRootRuntimeSceneItems(rawItems);}function _cacheRootObjectBaseBounds(object){if(!object||object.userData?._rootBaseBoundsReady)return;const prevPosition=object.position?.clone?.();const prevRotation=object.rotation?.clone?.();const prevScale=object.scale?.clone?.();object.position?.set?.(0,0,0);object.rotation?.set?.(0,0,0);object.scale?.setScalar?.(1);object.updateMatrixWorld?.(true);_tmpBox3.copy(_computeMeshOnlyBoundingBox(object));const center=_tmpBox3.getCenter(_tmpVec3A);const size=_tmpBox3.getSize(_tmpVec3B);object.userData=object.userData||{};object.userData._rootBaseCenterX=center.x;object.userData._rootBaseCenterY=center.y;object.userData._rootBaseCenterZ=center.z;object.userData._rootBaseMinY=_tmpBox3.min.y;object.userData._rootBaseSizeX=size.x;object.userData._rootBaseSizeY=size.y;object.userData._rootBaseSizeZ=size.z;object.userData._rootBaseBoundsReady=true;if(prevPosition)object.position.copy(prevPosition);if(prevRotation)object.rotation.copy(prevRotation);if(prevScale)object.scale.copy(prevScale);object.updateMatrixWorld?.(true);}function _rootCreateParticleSystem(record,count,size,color,spread){if(!record||!record.scene)return;if(record.particleSystem){record.scene.remove(record.particleSystem);record.particleSystem.geometry.dispose();record.particleSystem.material.dispose();}const geometry=new THREE.BufferGeometry;const positions=new Float32Array(count*3);const velocities=new Float32Array(count*3);for(let i=0;i<count;i++){const i3=i*3;const r=spread*Math.random();const theta=Math.random()*Math.PI*2;const phi=Math.acos(2*Math.random()-1);positions[i3]=r*Math.sin(phi)*Math.cos(theta);positions[i3+1]=r*Math.sin(phi)*Math.sin(theta);positions[i3+2]=r*Math.cos(phi);velocities[i3]=(Math.random()-.5)*.02;velocities[i3+1]=(Math.random()-.5)*.02;velocities[i3+2]=(Math.random()-.5)*.02;}geometry.setAttribute(\"position\",new THREE.BufferAttribute(positions,3));geometry.setAttribute(\"velocity\",new THREE.BufferAttribute(velocities,3));const material=new THREE.PointsMaterial({size:size,color:new THREE.Color(color),transparent:true,opacity:.6,blending:THREE.AdditiveBlending,depthWrite:false});record.particleSystem=new THREE.Points(geometry,material);record.scene.add(record.particleSystem);}function _rootUpdateParticles(record,speed,spread){if(!record?.particleSystem)return;const positions=record.particleSystem.geometry.attributes.position.array;const velocities=record.particleSystem.geometry.attributes.velocity.array;const count=positions.length/3;for(let i=0;i<count;i++){const i3=i*3;positions[i3]+=velocities[i3]*speed;positions[i3+1]+=velocities[i3+1]*speed;positions[i3+2]+=velocities[i3+2]*speed;const distSq=positions[i3]*positions[i3]+positions[i3+1]*positions[i3+1]+positions[i3+2]*positions[i3+2];if(distSq>spread*spread){const r=spread*Math.random()*.5;const theta=Math.random()*Math.PI*2;const phi=Math.acos(2*Math.random()-1);positions[i3]=r*Math.sin(phi)*Math.cos(theta);positions[i3+1]=r*Math.sin(phi)*Math.sin(theta);positions[i3+2]=r*Math.cos(phi);}}record.particleSystem.geometry.attributes.position.needsUpdate=true;}function _ensureRootRuntimeAdapter(record,renderer){if(!record||record._rootRuntimeAdapterReady)return;record._renderer=renderer;record.ambientLight=record.ambientLight||record.ambient;record.extraLightObjects=record.extraLightObjects||[];if(!record.ground){const ground=new THREE.Mesh(new THREE.PlaneGeometry(50,50),new THREE.ShadowMaterial({opacity:.25}));ground.rotation.x=-Math.PI/2;ground.receiveShadow=true;ground.visible=false;record.ground=ground;record.scene?.add?.(ground);}record._rootRuntimeAdapterReady=true;}function _rootNeedsPostFx(cfg){return _runtimeNeedsPostFx(cfg);}function _disposeRootPostFxPipeline(record){if(!record)return;record._rootComposer?.dispose?.();record._rootHdrRT?.dispose?.();if(record._rootAlphaSave)record._rootAlphaSave.dispose?.();else record._rootAlphaRT?.dispose?.();record._rootSsaoPass?.dispose?.();record._rootDofPass?.dispose?.();record._rootBloomPass?.dispose?.();record._rootColorGradingPass?.material?.dispose?.();record._rootVignettePass?.material?.dispose?.();record._rootChromaticPass?.material?.dispose?.();record._rootFilmGrainPass?.material?.dispose?.();record._rootPixelatedPass?.dispose?.();record._rootOutputPass?.dispose?.();record._rootFxaaPass?.material?.dispose?.();record._rootAlphaRestorePass?.material?.dispose?.();record._rootComposer=null;record._rootHdrRT=null;record._rootAlphaRT=null;record._rootRenderPass=null;record._rootSsaoPass=null;record._rootDofPass=null;record._rootBloomPass=null;record._rootColorGradingPass=null;record._rootVignettePass=null;record._rootChromaticPass=null;record._rootFilmGrainPass=null;record._rootPixelatedPass=null;record._rootOutputPass=null;record._rootFxaaPass=null;record._rootAlphaSave=null;record._rootAlphaRestorePass=null;record._bloom=null;record._ssao=null;record._dof=null;record._colorGrading=null;record._vignette=null;record._chromaticAberration=null;record._filmGrain=null;record._pixelated=null;record._fxaa=null;record._alphaSave=null;record._alphaRestore=null;record._rootComposerWidth=0;record._rootComposerHeight=0;record._rootComposerDpr=0;record._rootPostFxSignature=\"\";record.lastEffectsHash=\"\";}function _ensureRootPostFxPipeline(record,renderer,width,height,cfg){if(!record||!renderer||!cfg||!_rootNeedsPostFx(cfg)){_disposeRootPostFxPipeline(record);return false;}if(!_rootPostFxMods){_ensureRootPostFxModulesLoaded();return false;}const{EffectComposer,RenderPass,UnrealBloomPass,ShaderPass,SSAOPass,BokehPass,OutputPass,FXAAShader}=_rootPostFxMods;const w=Math.max(1,Math.round(width||1));const h=Math.max(1,Math.round(height||1));const dpr=Math.max(.5,renderer.getPixelRatio?.()||1);const renderW=Math.max(1,Math.round(w*dpr));const renderH=Math.max(1,Math.round(h*dpr));const pipelineSig=_postFxPipelineSignature(cfg);if(!record._rootComposer||record._rootComposerRenderer!==renderer||record._rootPostFxSignature!==pipelineSig){_disposeRootPostFxPipeline(record);const hdrRT=new THREE.WebGLRenderTarget(renderW,renderH,{type:THREE.HalfFloatType,format:THREE.RGBAFormat,minFilter:THREE.LinearFilter,magFilter:THREE.LinearFilter,colorSpace:THREE.SRGBColorSpace});const composer=new EffectComposer(renderer,hdrRT);composer.setPixelRatio(dpr);composer.setSize(w,h);let renderPass=new RenderPass(record.scene,record.camera);renderPass.clear=true;renderPass.clearDepth=true;composer.addPass(renderPass);let pixelatedPass=null;let ssaoPass=null;if(cfg.enableSSAO){ssaoPass=new SSAOPass(record.scene,record.camera,renderW,renderH);ssaoPass.output=SSAOPass.OUTPUT.Default;composer.addPass(ssaoPass);}const needDof=cfg.enableDOF&&cfg.cameraType!==\"orthographic\";const needAlphaFix=(cfg.bloomEnabled||needDof)&&cfg.transparentBackground;let alphaRT=null;let alphaSave=null;if(needAlphaFix){alphaRT=new THREE.WebGLRenderTarget(renderW,renderH,{type:THREE.HalfFloatType,format:THREE.RGBAFormat,minFilter:THREE.LinearFilter,magFilter:THREE.LinearFilter});alphaSave=new AlphaSavePass(alphaRT);composer.addPass(alphaSave);}let dofPass=null;if(needDof){dofPass=new BokehPass(record.scene,record.camera,{focus:cfg.dofFocus,aperture:cfg.dofAperture,maxblur:cfg.dofMaxBlur});composer.addPass(dofPass);}let bloomPass=null;if(cfg.bloomEnabled){bloomPass=new UnrealBloomPass(new THREE.Vector2(renderW,renderH),cfg.bloomStrength,cfg.bloomRadius,cfg.bloomThreshold);composer.addPass(bloomPass);}let colorGradingPass=null;if(cfg.enableColorGrading){colorGradingPass=new ShaderPass(ColorGradingShader);composer.addPass(colorGradingPass);}let vignettePass=null;if(cfg.enableVignette){vignettePass=new ShaderPass(VignetteShader);composer.addPass(vignettePass);}let chromaticPass=null;if(cfg.enableChromaticAberration){chromaticPass=new ShaderPass(ChromaticAberrationShader);composer.addPass(chromaticPass);}let filmGrainPass=null;if(cfg.enableFilmGrain){filmGrainPass=new ShaderPass(FilmGrainShader);composer.addPass(filmGrainPass);}let alphaRestorePass=null;if(needAlphaFix){alphaRestorePass=new ShaderPass(AlphaRestoreShader);alphaRestorePass.uniforms.tAlpha.value=alphaRT.texture;composer.addPass(alphaRestorePass);}let outputPass=null;if(cfg.enablePixelate){// Convert the post-processing chain to display-ready RGB\n// before the final screen-space effect(s).\noutputPass=new OutputPass;composer.addPass(outputPass);}let fxaaPass=null;if(cfg.enableFXAA){fxaaPass=new ShaderPass(FXAAShader);composer.addPass(fxaaPass);}if(cfg.enablePixelate){pixelatedPass=createFramerTilePixelatePass(ShaderPass);pixelatedPass.setPixelRatio?.(dpr);pixelatedPass.setSize?.(renderW,renderH);pixelatedPass.setTilePixelateConfig?.(cfg);composer.addPass(pixelatedPass);}record._rootComposer=composer;record._rootComposerRenderer=renderer;record._rootPostFxSignature=pipelineSig;record._rootHdrRT=hdrRT;record._rootAlphaRT=alphaRT;record._rootRenderPass=renderPass;record._rootPixelatedPass=pixelatedPass;record._rootSsaoPass=ssaoPass;record._rootAlphaSave=alphaSave;record._rootDofPass=dofPass;record._rootBloomPass=bloomPass;record._rootColorGradingPass=colorGradingPass;record._rootVignettePass=vignettePass;record._rootChromaticPass=chromaticPass;record._rootFilmGrainPass=filmGrainPass;record._rootOutputPass=outputPass;record._rootFxaaPass=fxaaPass;record._rootAlphaRestorePass=alphaRestorePass;record._bloom=bloomPass;record._ssao=ssaoPass;record._dof=dofPass;record._colorGrading=colorGradingPass;record._vignette=vignettePass;record._chromaticAberration=chromaticPass;record._filmGrain=filmGrainPass;record._pixelated=pixelatedPass;record._outputPass=outputPass;record._fxaa=fxaaPass;record._alphaSave=alphaSave;record._alphaRestore=alphaRestorePass;record.lastEffectsHash=\"\";}if(record._rootRenderPass){record._rootRenderPass.scene=record.scene;record._rootRenderPass.camera=record.camera;}if(record._rootPixelatedPass){record._rootPixelatedPass.scene=record.scene;record._rootPixelatedPass.camera=record.camera;}if(record._rootSsaoPass){record._rootSsaoPass.scene=record.scene;record._rootSsaoPass.camera=record.camera;}if(record._rootDofPass){record._rootDofPass.scene=record.scene;record._rootDofPass.camera=record.camera;}if(record._rootComposerWidth!==w||record._rootComposerHeight!==h||Math.abs((record._rootComposerDpr||0)-dpr)>.01){record._rootComposerWidth=w;record._rootComposerHeight=h;record._rootComposerDpr=dpr;record._rootComposer?.setPixelRatio?.(dpr);record._rootComposer?.setSize?.(w,h);record._rootHdrRT?.setSize?.(renderW,renderH);record._rootAlphaRT?.setSize?.(renderW,renderH);record._rootAlphaSave?.setSize?.(renderW,renderH);record._rootSsaoPass?.setSize?.(renderW,renderH);record._rootBloomPass?.resolution?.set?.(renderW,renderH);record._rootPixelatedPass?.setPixelRatio?.(dpr);record._rootPixelatedPass?.setSize?.(renderW,renderH);record._rootFxaaPass?.uniforms?.resolution?.value?.set?.(1/renderW,1/renderH);record._rootChromaticPass?.uniforms?.resolution?.value?.set?.(renderW,renderH);}if(record._rootAlphaRestorePass&&record._rootAlphaRT){record._rootAlphaRestorePass.uniforms.tAlpha.value=record._rootAlphaRT.texture;}applyEffectsChanges(record,cfg);record.lastEffectsHash=cfg._effectsHash??effectsHash(cfg);return true;}function _lerpRootSceneOpacity(record,factor){const clamped=Math.max(0,Math.min(1,factor));const applyObj=obj=>{if(!obj)return;obj.traverse?.(child=>{if(!child.isMesh)return;const mats=Array.isArray(child.material)?child.material:[child.material];for(const mat of mats){if(!mat)continue;if(mat._rootFadeOrig===undefined){mat._rootFadeOrig=mat.opacity??1;mat._rootFadeWasTransp=mat.transparent??false;}mat.opacity=(mat._rootFadeOrig??1)*clamped;mat.transparent=mat.opacity<.999;mat.needsUpdate=true;}});};applyObj(record.model);for(const[,entry]of record.subScenes||[]){applyObj(entry?.group);}}function _clearRootSceneOpacity(record){const restoreObj=obj=>{if(!obj)return;obj.traverse?.(child=>{if(!child.isMesh)return;const mats=Array.isArray(child.material)?child.material:[child.material];for(const mat of mats){if(!mat||mat._rootFadeOrig===undefined)continue;mat.opacity=mat._rootFadeOrig;mat.transparent=mat._rootFadeWasTransp??mat.opacity<.999;mat.needsUpdate=true;delete mat._rootFadeOrig;delete mat._rootFadeWasTransp;}});};restoreObj(record.model);for(const[,entry]of record.subScenes||[]){restoreObj(entry?.group);}}function _syncRootVisualRuntimePipeline(record,cfg,renderer,dt=0){if(!record||!cfg||!renderer)return;_ensureRootRuntimeAdapter(record,renderer);const sceneHash=cfg._sceneConfigHash??sceneConfigHash(cfg);const nextMaterialHash=cfg._materialHash??materialHash(cfg);const nextLightingHash=cfg._lightingHash??lightingHash(cfg);const nextEnvHash=cfg._envHash??envHash(cfg);const nextEffectsHash=cfg._effectsHash??effectsHash(cfg);const materialChanged=nextMaterialHash!==record.lastMaterialHash;const envChanged=nextEnvHash!==record.lastEnvHash;const lightingChanged=nextLightingHash!==record.lastLightingHash;const effectsChanged=nextEffectsHash!==record.lastEffectsHash;if(materialChanged||envChanged){const duration=cfg.materialTransitionDuration||.3;if(duration<=.01){// Instant\nif((record._rootFadeProgress||0)>0){_clearRootSceneOpacity(record);}record._rootFadeProgress=0;record._rootFadeTargetHash=null;record._rootFadeTargetCfg=null;record._rootSceneSwapped=false;}else if((record._rootFadeProgress||0)===0){// Start fade\nrecord._rootFadeProgress=.01;record._rootFadeTargetHash=sceneHash;record._rootFadeTargetCfg={...cfg};record._rootSceneSwapped=false;}else if(sceneHash!==record._rootFadeTargetHash){// Target changed while fading\nif(record._rootFadeProgress>.5){if(!record._rootSceneSwapped&&record._rootFadeTargetCfg){_clearRootSceneOpacity(record);const tc=record._rootFadeTargetCfg;_applyRootCanonicalMaterial(record.model,tc);for(const[,entry]of record.subScenes||[]){if(entry?._rootOwnRuntimeCfg)continue;if(entry?.group)_applyRootCanonicalMaterial(entry.group,tc);}record.lastMaterialHash=tc._materialHash??materialHash(tc);applyEnvironmentChanges(record,tc,renderer,record.scene);record.lastEnvHash=tc._envHash??envHash(tc);applyLightingChanges(record,tc);record.lastLightingHash=tc._lightingHash??lightingHash(tc);if(record._rootComposer)applyEffectsChanges(record,tc);record.lastEffectsHash=tc._effectsHash??effectsHash(tc);}else{_lerpRootSceneOpacity(record,1);}record._rootFadeProgress=.01;record._rootFadeTargetHash=sceneHash;record._rootFadeTargetCfg={...cfg};record._rootSceneSwapped=false;}else{record._rootFadeTargetHash=sceneHash;record._rootFadeTargetCfg={...cfg};record._rootSceneSwapped=false;}}}if((record._rootFadeProgress||0)===0){// Apply immediately if not fading\nif(materialChanged){_applyRootCanonicalMaterial(record.model,cfg);for(const[,entry]of record.subScenes||[]){if(entry?._rootOwnRuntimeCfg)continue;if(entry?.group)_applyRootCanonicalMaterial(entry.group,cfg);}record.lastMaterialHash=nextMaterialHash;}if(lightingChanged){applyLightingChanges(record,cfg);record.lastLightingHash=nextLightingHash;}if(envChanged){applyEnvironmentChanges(record,cfg,renderer,record.scene);record.lastEnvHash=nextEnvHash;}if(effectsChanged){if(record._rootComposer){applyEffectsChanges(record,cfg);}record.lastEffectsHash=nextEffectsHash;}}else{// Handle fade transition\nconst duration=Math.max(.05,cfg.materialTransitionDuration||.3);const fadeSpeed=1/duration;record._rootFadeProgress+=dt*fadeSpeed;const SWAP_AT=.35;const MIN_F=.03;const easeInOutQuad=x=>x<.5?2*x*x:1-Math.pow(-2*x+2,2)/2;if(record._rootFadeProgress<SWAP_AT){const t=record._rootFadeProgress/SWAP_AT;const factor=MIN_F+(1-MIN_F)*(1-easeInOutQuad(t));_lerpRootSceneOpacity(record,factor);}else{if(!record._rootSceneSwapped){const tc=record._rootFadeTargetCfg||cfg;_clearRootSceneOpacity(record);_applyRootCanonicalMaterial(record.model,tc);for(const[,entry]of record.subScenes||[]){if(entry?._rootOwnRuntimeCfg)continue;if(entry?.group)_applyRootCanonicalMaterial(entry.group,tc);}record.lastMaterialHash=tc._materialHash??materialHash(tc);applyEnvironmentChanges(record,tc,renderer,record.scene);record.lastEnvHash=tc._envHash??envHash(tc);applyLightingChanges(record,tc);record.lastLightingHash=tc._lightingHash??lightingHash(tc);if(record._rootComposer)applyEffectsChanges(record,tc);record.lastEffectsHash=tc._effectsHash??effectsHash(tc);record._rootSceneSwapped=true;_lerpRootSceneOpacity(record,MIN_F);}if(record._rootFadeProgress>=1){_clearRootSceneOpacity(record);record._rootFadeProgress=0;record._rootFadeTargetHash=null;record._rootFadeTargetCfg=null;record._rootSceneSwapped=false;}else{const t=(record._rootFadeProgress-SWAP_AT)/(1-SWAP_AT);const factor=MIN_F+(1-MIN_F)*easeInOutQuad(t);_lerpRootSceneOpacity(record,factor);}}}record.scene.environmentIntensity=cfg.enableEnvironment?cfg.environmentIntensity:1;if(record.scene.environment&&cfg.showEnvironmentBackground&&!cfg.transparentBackground&&cfg.environmentType!==\"hdri\"){record.scene.background=record.scene.environment;}const particleKey=`${cfg.enableParticles}|${cfg.particleCount}|${cfg.particleSize}|${cfg.particleColor}|${cfg.particleSpread}`;if(record._rootParticleKey!==particleKey){record._rootParticleKey=particleKey;if(cfg.enableParticles){_rootCreateParticleSystem(record,cfg.particleCount||100,cfg.particleSize||.1,cfg.particleColor||\"#ffffff\",cfg.particleSpread||10);}else if(record.particleSystem){record.scene.remove(record.particleSystem);record.particleSystem.geometry?.dispose?.();record.particleSystem.material?.dispose?.();record.particleSystem=null;}}record.lastSceneHash=sceneHash;}function _disposeRootHelperObject(helper){if(!helper)return;helper.parent?.remove?.(helper);helper.geometry?.dispose?.();const material=helper.material;if(Array.isArray(material)){material.forEach(mat=>mat?.dispose?.());}else{material?.dispose?.();}}function _syncRootHelperRuntime(record,cfg){if(!record?.scene||!cfg)return;const gridKey=[!!cfg.showGrid,cfg.showGridSize??10,cfg.showGridDivisions??10,cfg.showGridColor1??\"rgba(255,255,255,0.25)\",cfg.showGridColor2??\"rgba(255,255,255,0.1)\"].join(\"|\");if(record._rootGridHelperKey!==gridKey){_disposeRootHelperObject(record.gridHelper);record.gridHelper=null;record._rootGridHelperKey=gridKey;if(cfg.showGrid){const grid=new THREE.GridHelper(cfg.showGridSize??10,cfg.showGridDivisions??10,parseColor(cfg.showGridColor1??\"rgba(255,255,255,0.25)\"),parseColor(cfg.showGridColor2??\"rgba(255,255,255,0.1)\"));const material=grid.material;material.transparent=true;material.opacity=.6;material.depthWrite=false;grid.renderOrder=-1;record.scene.add(grid);record.gridHelper=grid;}}const axesKey=[!!cfg.showAxes,cfg.showAxesSize??3].join(\"|\");if(record._rootAxesHelperKey!==axesKey){_disposeRootHelperObject(record.axesHelper);record.axesHelper=null;record._rootAxesHelperKey=axesKey;if(cfg.showAxes){const axes=new THREE.AxesHelper(cfg.showAxesSize??3);axes.renderOrder=999;const material=axes.material;if(Array.isArray(material)){material.forEach(mat=>{mat.depthTest=false;});}else if(material){material.depthTest=false;}record.scene.add(axes);record.axesHelper=axes;}}const modelAxesKey=[!!cfg.showModelAxes,cfg.showModelAxesSize??2,record.model?.uuid||\"no-model\"].join(\"|\");if(record._rootModelAxesHelperKey!==modelAxesKey){_disposeRootHelperObject(record.modelAxesHelper);record.modelAxesHelper=null;record._rootModelAxesHelperKey=modelAxesKey;if(cfg.showModelAxes&&record.model){const modelAxes=new THREE.AxesHelper(cfg.showModelAxesSize??2);modelAxes.renderOrder=998;const material=modelAxes.material;if(Array.isArray(material)){material.forEach(mat=>{mat.depthTest=false;});}else if(material){material.depthTest=false;}record.model.add(modelAxes);record.modelAxesHelper=modelAxes;}}}function _getRootSmoothedTransform(record,props,rectWidth=0,cfg=null){const tr=cfg?{scale:cfg.modelScale,offX:cfg.modelOffsetX,offY:cfg.modelOffsetY,offZ:cfg.modelOffsetZ,rotX:cfg.modelRotationX,rotY:cfg.modelRotationY,rotZ:cfg.modelRotationZ}:_resolveRootResponsiveTransform(props?.transform||{},rectWidth);const target={scale:tr.scale??1,offX:tr.offX??0,offY:tr.offY??0,offZ:tr.offZ??0,rotX:tr.rotX??0,rotY:tr.rotY??0,rotZ:tr.rotZ??0,camX:cfg?.cameraPositionX??-1,camY:cfg?.cameraPositionY??2,camZ:cfg?.cameraPositionZ??10};if(!cfg?.enableScrollAnimation){record._rootScrollSmoothingActive=false;return target;}const smooth=Math.max(0,Math.min(1,cfg.scrollSmoothing??.05));if(record._rootSmoothFrameId===record._rootFrameId&&record._rootSmoothTransform){return record._rootSmoothTransform;}if(!record._rootSmoothTransform){record._rootSmoothTransform={...target};record._rootSmoothFrameId=record._rootFrameId;return record._rootSmoothTransform;}const live=record._rootSmoothTransform;if(smooth>=1){record._rootSmoothTransform={...target};record._rootSmoothFrameId=record._rootFrameId;record._rootScrollSmoothingActive=false;return record._rootSmoothTransform;}let hasSmoothingDelta=false;for(const key of Object.keys(target)){if(Math.abs(target[key]-live[key])>.001){hasSmoothingDelta=true;}live[key]+=(target[key]-live[key])*smooth;}record._rootScrollSmoothingActive=hasSmoothingDelta;record._rootSmoothFrameId=record._rootFrameId;return live;}function _applyRootCameraSmoothing(record,cfg,rectWidth=0){if(!record?.camera||!cfg?.enableScrollAnimation)return;const smoothed=_getRootSmoothedTransform(record,record._rootLatestSlotProps||{},rectWidth,cfg);record.camera.position.set(smoothed.camX,smoothed.camY,smoothed.camZ);record.camera.updateProjectionMatrix?.();}function _rootHasAppearTransformMotion(appear){if(!appear)return false;return Math.abs(appear.offX??0)>1e-4||Math.abs(appear.offY??0)>1e-4||Math.abs(appear.offZ??0)>1e-4||Math.abs((appear.scale??1)-1)>1e-4||Math.abs(appear.rotX??0)>1e-4||Math.abs(appear.rotY??0)>1e-4||Math.abs(appear.rotZ??0)>1e-4;}function _rootShouldAnimateAppear(appear){return!!appear?.dissolveEnabled||_rootHasAppearTransformMotion(appear);}function _restartRootAppearPlayback(record,cfg,force=false){if(!record||!force&&!cfg?.dissolveEnabled&&!_rootHasAppearTransformMotion(cfg)){return;}record._rootAppearStart=performance.now();record._rootAppearVisibility=0;}function _syncRootAppear(record,cfg){const nextHash=appearReplayHash(cfg||{});const shouldAnimate=_rootShouldAnimateAppear(cfg);const shouldReplay=_shouldReplayAppear(cfg);if(!record._rootAppearInit){record._rootAppearInit=true;record._rootAppearHash=nextHash;record._rootAppearVisibility=shouldAnimate?0:1;record._rootAppearStart=shouldAnimate?performance.now():0;record._rootAppearPendingReplay=false;}else{if(record._rootAppearPendingReplay){if(shouldReplay){_restartRootAppearPlayback(record,cfg,true);}record._rootAppearPendingReplay=false;}const hasPreviousAppearHash=!!record._rootAppearHash;if(nextHash!==record._rootAppearHash){record._rootAppearHash=nextHash;if(hasPreviousAppearHash&&shouldAnimate&&shouldReplay){_restartRootAppearPlayback(record,cfg,true);}}}let visibility=1;if(record._rootAppearStart>0){const elapsed=(performance.now()-record._rootAppearStart)/1e3;const duration=Math.max(.001,cfg?.dissolveDuration||1.5);if(elapsed>=duration){record._rootAppearStart=0;}else{const t=elapsed/duration;visibility=1-Math.pow(1-t,3);}}record._rootAppearVisibility=visibility;record._rootAppearBlurPx=cfg?.blurReveal?Math.max(0,(cfg?.blurRevealIntensity||12)*(1-visibility)):0;return visibility;}function _resetRootAppearTransformOffset(object){if(!object)return;object._rootAppearAppliedX=0;object._rootAppearAppliedY=0;object._rootAppearAppliedZ=0;object._rootAppearAppliedRotX=0;object._rootAppearAppliedRotY=0;object._rootAppearAppliedRotZ=0;object._rootAppearAppliedScale=1;}function _applyRootAppearTransformOffset(object,visibility,appear){if(!object)return;const motionVisibility=Math.max(0,Math.min(1,visibility??1));const t=1-motionVisibility;const targetX=(appear.offX??0)*t;const targetY=(appear.offY??0)*t;const targetZ=(appear.offZ??0)*t;const targetScale=1+((appear.scale??1)-1)*t;const targetRotX=(appear.rotX??0)*Math.PI/180*t;const targetRotY=(appear.rotY??0)*Math.PI/180*t;const targetRotZ=(appear.rotZ??0)*Math.PI/180*t;const anyObject=object;object.position.x+=targetX-(anyObject._rootAppearAppliedX||0);object.position.y+=targetY-(anyObject._rootAppearAppliedY||0);object.position.z+=targetZ-(anyObject._rootAppearAppliedZ||0);object.rotation.x+=targetRotX-(anyObject._rootAppearAppliedRotX||0);object.rotation.y+=targetRotY-(anyObject._rootAppearAppliedRotY||0);object.rotation.z+=targetRotZ-(anyObject._rootAppearAppliedRotZ||0);const prevScale=anyObject._rootAppearAppliedScale||1;if(prevScale!==0){object.scale.multiplyScalar(targetScale/prevScale);}anyObject._rootAppearAppliedX=targetX;anyObject._rootAppearAppliedY=targetY;anyObject._rootAppearAppliedZ=targetZ;anyObject._rootAppearAppliedRotX=targetRotX;anyObject._rootAppearAppliedRotY=targetRotY;anyObject._rootAppearAppliedRotZ=targetRotZ;anyObject._rootAppearAppliedScale=targetScale;}function _applyRootAppearOpacity(object,visibility){if(!object)return;const motionVisibility=Math.max(0,Math.min(1,visibility??1));object.traverse(child=>{if(!child?.isMesh||!child.material)return;const materials=Array.isArray(child.material)?child.material:[child.material];materials.forEach(mat=>{if(!mat)return;mat.userData=mat.userData||{};if(mat.userData._rootBaseOpacity===undefined){mat.userData._rootBaseOpacity=mat.userData?._rootOriginal?.opacity??mat.opacity??1;}if(mat.userData._rootBaseTransparent===undefined){mat.userData._rootBaseTransparent=mat.userData?._rootOriginal?.transparent??mat.transparent??false;}const baseOpacity=mat.userData?._rootBaseOpacity??mat.opacity??1;const baseTransparent=mat.userData?._rootBaseTransparent??mat.transparent??false;const nextOpacity=baseOpacity*motionVisibility;mat.opacity=nextOpacity;mat.transparent=baseTransparent||nextOpacity<.999;mat.depthWrite=nextOpacity>=.999;mat.needsUpdate=true;});});}function _syncRootCanvasAppearStyle(canvas,record,enabled){if(!canvas)return;if(!enabled||!record){canvas.style.opacity=\"1\";canvas.style.filter=\"\";canvas.style.willChange=\"transform\";return;}const visibility=Math.max(0,Math.min(1,(record._rootAppearVisibility??1)*(record._rootDomOpacity??1)));const blurPx=Math.max(0,record._rootAppearBlurPx??0);canvas.style.opacity=visibility>=.999?\"1\":visibility.toFixed(3);canvas.style.filter=blurPx>.05?`blur(${blurPx.toFixed(1)}px)`:\"\";canvas.style.willChange=blurPx>.05||visibility<.999?\"transform, opacity, filter\":\"transform\";}function _applyRootSlotTransform(model,props,rectWidth=0,positionState=null,record=null,runtimeCfg=null){const tr=record?_getRootSmoothedTransform(record,props,rectWidth,runtimeCfg):_resolveRootResponsiveTransform(props?.transform||{},rectWidth);const scale=tr.scale??1;const offX=tr.offX??0;const offY=tr.offY??0;const offZ=tr.offZ??0;const rotX=tr.rotX??0;const rotY=tr.rotY??0;const rotZ=tr.rotZ??0;const baseScale=(model.userData?._rootNormalizeScale||1)*(model.userData?._rootFitRatio||1);const effectiveUserScale=scale;const effectiveScale=baseScale*Math.max(.001,effectiveUserScale);_cacheRootObjectBaseBounds(model);const center={x:(model.userData?._rootBaseCenterX||0)*effectiveScale,y:(model.userData?._rootBaseCenterY||0)*effectiveScale,z:(model.userData?._rootBaseCenterZ||0)*effectiveScale};const baseGroundY=(model.userData?._rootBaseMinY||0)*effectiveScale;model.scale.setScalar(effectiveScale);model.position.set(-center.x+offX,-center.y+offY,-center.z+offZ);model.rotation.set(rotX*Math.PI/180,rotY*Math.PI/180,rotZ*Math.PI/180);model.userData._rootBaseGroundY=baseGroundY;model.userData._rootBaseTransform={scale:effectiveUserScale,offX,offY,offZ,rotX,rotY,rotZ};model.userData._rootBaseGroundWorldY=model.position.y+baseGroundY-.001;_applyRootPositionToObject(model,positionState);model.userData._rootCurrentTransform={scale:model.scale.x/Math.max(1e-4,baseScale),offX:model.position.x+center.x,offY:model.position.y+center.y,offZ:model.position.z+center.z,rotX:model.rotation.x*180/Math.PI,rotY:model.rotation.y*180/Math.PI,rotZ:model.rotation.z*180/Math.PI};}function _makeRootCamera(cfg,aspect){const type=cfg?.cameraType||\"perspective\";if(type===\"orthographic\"){const halfH=_ORTHO_FRUSTUM/2;const camera=new THREE.OrthographicCamera(-halfH*aspect,halfH*aspect,halfH,-halfH,.01,1e3);camera.zoom=cfg?.orthoZoom??1;camera.position.set(cfg?.cameraPositionX??-1,cfg?.cameraPositionY??2,cfg?.cameraPositionZ??10);camera.lookAt(0,0,0);camera.updateProjectionMatrix();return camera;}const camera=new THREE.PerspectiveCamera(cfg?.fov??35,aspect,.01,1e3);camera.position.set(cfg?.cameraPositionX??-1,cfg?.cameraPositionY??2,cfg?.cameraPositionZ??10);camera.lookAt(0,0,0);camera.updateProjectionMatrix();return camera;}function _rootCameraHash(cfg,aspect){return[cfg?.cameraType||\"perspective\",Number(aspect||1).toFixed(4),cfg?.cameraPositionX??-1,cfg?.cameraPositionY??2,cfg?.cameraPositionZ??10,cfg?.orthoZoom??1,cfg?.fov??35,cfg?.stereoEyeSep??.064].join(\"|\");}function _getRootCamera(record,cfg,aspect){const hash=_rootCameraHash(cfg,aspect);if(!record.camera||record._rootCameraHash!==hash){record.camera=_makeRootCamera(cfg,aspect);record._rootCameraHash=hash;}if(cfg?.cameraType===\"stereo\"){if(!record.stereoCamera)record.stereoCamera=new THREE.StereoCamera;record.stereoCamera.eyeSep=cfg?.stereoEyeSep??.064;}return record.camera;}function _makeRootScene(cfg,aspect){const scene=new THREE.Scene;const ambient=new THREE.AmbientLight(16777215,cfg?.ambientLightIntensity??.8);const dir=new THREE.DirectionalLight(16777215,cfg?.directionalLightIntensity??1.5);dir.color.set(cfg?.directionalLightColor||\"#ffffff\");dir.position.set(cfg?.dirLightPosX??5,cfg?.dirLightPosY??10,cfg?.dirLightPosZ??7);// Mirrors the Slot's always-on fill + hemisphere lights (slotRuntime.tsx)\n// so Root-bridged scenes match Standalone lighting instead of looking flatter.\nconst fillLight=new THREE.DirectionalLight(12636415,.4);fillLight.position.set(-5,3,-5);const hemisphereLight=new THREE.HemisphereLight(16777215,4473924,.15);scene.add(ambient,dir,fillLight,hemisphereLight);return{scene,ambient,dirLight:dir,fillLight,hemisphereLight,camera:_makeRootCamera(cfg,aspect),model:null,loadedUrl:\"\",loadingUrl:\"\",mixer:null,animations:[],subScenes:new Map,timer:new THREE.Timer,_animationActionCache:new Set,_activeAnimationAction:null,_activeAnimationKey:\"\",_activeAnimationClipName:\"\",_lastAnimationRequestSig:\"\",_rootCameraHash:\"\"};}function _getRootTimerDelta(record){const timer=record?.timer;if(!timer)return 0;timer.update?.();return Math.min(.05,timer.getDelta?.()||0);}function _findRootClip(animations,clipName){if(!animations?.length)return null;if(!clipName)return animations[0];const needle=String(clipName).toLowerCase();return animations.find(clip=>String(clip.name).toLowerCase()===needle)||animations.find(clip=>String(clip.name).toLowerCase().includes(needle))||null;}function _configureRootAnimationLoop(action,loopMode){const mode=String(loopMode||\"repeat\").toLowerCase();if(mode===\"once\"){action.setLoop(THREE.LoopOnce,1);action.clampWhenFinished=true;}else if(mode===\"pingpong\"){action.setLoop(THREE.LoopPingPong,Infinity);action.clampWhenFinished=false;}else{action.setLoop(THREE.LoopRepeat,Infinity);action.clampWhenFinished=false;}}function _syncRootAnimationPhase(prevAction,nextAction){const prevClip=prevAction?.getClip?.();const nextClip=nextAction?.getClip?.();if(!prevClip?.duration||!nextClip?.duration)return;const normalizedTime=(prevAction.time%prevClip.duration+prevClip.duration)%prevClip.duration;nextAction.time=normalizedTime/prevClip.duration*nextClip.duration;}const _rootHoverRaycaster=new THREE.Raycaster;_rootHoverRaycaster.firstHitOnly=true;const _rootHoverMouse=new THREE.Vector2;const _rootBaseCameraPosition=new THREE.Vector3;const _rootOrbitOffset=new THREE.Vector3;const _rootOrbitSpherical=new THREE.Spherical;const _rootInteractionPlane=new THREE.Plane;const _rootInteractionVecA=new THREE.Vector3;const _rootInteractionVecB=new THREE.Vector3;const _rootInteractionColor=new THREE.Color;const _rootInteractionBox=new THREE.Box3;function _markRootHoverMeshesDirty(record){if(!record)return;record._rootHoverMeshVersion=(record._rootHoverMeshVersion||0)+1;}function _syncRootMouseRotationState(record,rect,state){if(!record||!rect)return;const x=state?.pointerX;const y=state?.pointerY;const inside=!!state?.pointerActive&&Number.isFinite(x)&&Number.isFinite(y)&&x>=rect.left&&x<=rect.right&&y>=rect.top&&y<=rect.bottom;if(inside){record._rootMouseTargetX=(x-rect.left)/Math.max(1,rect.width)*2-1;record._rootMouseTargetY=(y-rect.top)/Math.max(1,rect.height)*2-1;}else{record._rootMouseTargetX=0;record._rootMouseTargetY=0;}record._rootMouseX=(record._rootMouseX||0)+((record._rootMouseTargetX||0)-(record._rootMouseX||0))*.08;record._rootMouseY=(record._rootMouseY||0)+((record._rootMouseTargetY||0)-(record._rootMouseY||0))*.08;}function _applyRootMouseRotation(object,record,cfg,multiplier=1){if(!object||!record||!(cfg?.enableMouseRotation??false))return;const intensity=(cfg?.mouseRotationIntensity??.1)*multiplier;object.rotation.y+=(record._rootMouseX||0)*intensity;object.rotation.x+=(record._rootMouseY||0)*intensity*.5;}function _applyRootOrbitCamera(record,cfg){const camera=record?.camera;if(!record||!camera)return;const target=_rootInteractionVecA.set(0,0,0);_rootBaseCameraPosition.set(cfg?.cameraPositionX??-1,cfg?.cameraPositionY??2,cfg?.cameraPositionZ??10);// Mirrors Slot's OrbitControls.enableZoom (slotRuntime.tsx). Root has no\n// OrbitControls instance, so scroll-to-zoom is a hand-rolled distance\n// multiplier driven by onRootCanvasWheel, clamped to a sane range.\nconst zoomFactor=cfg?.enableZoom?Math.max(.2,Math.min(4,record._rootOrbitZoom??1)):1;record._rootOrbitZoom=zoomFactor;if(cfg?.enableOrbitControls){_rootOrbitOffset.copy(_rootBaseCameraPosition);_rootOrbitSpherical.setFromVector3(_rootOrbitOffset);_rootOrbitSpherical.theta+=record._rootOrbitTheta||0;_rootOrbitSpherical.phi=Math.max(.05,Math.min(Math.PI-.05,_rootOrbitSpherical.phi+(record._rootOrbitPhi||0)));_rootOrbitSpherical.radius*=zoomFactor;_rootOrbitOffset.setFromSpherical(_rootOrbitSpherical);camera.position.copy(target).add(_rootOrbitOffset);}else{camera.position.copy(_rootBaseCameraPosition).multiplyScalar(zoomFactor).add(target);record._rootOrbitTheta=0;record._rootOrbitPhi=0;}if(camera.isOrthographicCamera){camera.zoom=(cfg?.orthoZoom??1)/zoomFactor;}camera.lookAt(target);camera.updateMatrixWorld?.(true);camera.updateProjectionMatrix?.();}function _emitRootMeshInteractionEvent(config,eventName,event,obj){const handler=config?.[eventName];if(!handler)return;if(event&&typeof event===\"object\"){try{event.meshName=obj?.name??config?.meshName??\"\";event.meshObject=obj;event.meshInteraction=config;}catch{}}try{if(event)handler(event);else handler();}catch(error){console.warn(\"[Import_3D_Canvas_Root] mesh interaction failed\",error);}}function _rootInteractionCacheKey(record,cfg){const parts=[record?.model?.uuid||\"no-main\",record?.model?.visible!==false?\"main-visible\":\"main-hidden\",cfg?.meshInteractionRuntimeKey||cfg?.meshInteractionLookupKey||\"\"];if(record?.subScenes){for(const[key,entry]of record.subScenes){const subCfg=entry?._rootOwnRuntimeCfg;parts.push(`${key}:${entry?.group?.uuid||\"none\"}:${entry?.group?.visible!==false}:${subCfg?.meshInteractionRuntimeKey||subCfg?.meshInteractionLookupKey||\"\"}`);}}return parts.join(\"|\");}function _collectRootInteractiveMeshes(record,cfg){if(!record)return[];const key=_rootInteractionCacheKey(record,cfg);if(record._rootInteractiveMeshesKey!==key){const meshes=[];if(record.model?.visible!==false){record.model?.traverse?.(child=>{if(child?.isMesh)meshes.push(child);});}if(record.subScenes){for(const[,entry]of record.subScenes){if(!entry?.group||entry.group.visible===false)continue;entry.group.traverse?.(child=>{if(child?.isMesh)meshes.push(child);});}}record._rootInteractiveMeshes=meshes;record._rootInteractiveMeshesKey=key;record._rootInteractConfigCache=new Map;}return(record._rootInteractiveMeshes||[]).filter(mesh=>mesh?.visible!==false);}function _findRootInteractConfig(record,obj,cfg){const items=cfg?.meshInteractionItems||[];if(!items.length||!obj)return null;if(!record._rootInteractConfigCache){record._rootInteractConfigCache=new Map;}const cfgKey=cfg?.meshInteractionRuntimeKey||cfg?.meshInteractionLookupKey||\"\";const cacheKey=`${obj.uuid||\"\"}|${cfgKey}`;if(record._rootInteractConfigCache.has(cacheKey)){return record._rootInteractConfigCache.get(cacheKey);}const name=String(obj.name||\"\").toLowerCase();let matched=null;if(name){for(const item of items){const target=String(item?.meshName||\"\").trim().toLowerCase();if(target&&name.includes(target)){matched=item;break;}}}record._rootInteractConfigCache.set(cacheKey,matched);return matched;}function _findRootInteractiveObject(record,hitObject,cfg){let obj=hitObject;while(obj&&obj!==record?.scene&&obj!==record?.model&&obj!==record?.modelInner){const config=_findRootInteractConfig(record,obj,cfg);if(config){const name=String(config.meshName||\"\").trim().toLowerCase();const matchedObj=record._rootMeshInteractionTargets?.get?.(name);if(matchedObj){obj=matchedObj;}return{obj,config};}obj=obj.parent;}return null;}function _findRootGroupSlotInfo(record,hitObject){let obj=hitObject;while(obj&&obj!==record?.scene){if(obj.userData?._rootGroupSlotProps){return{id:obj.userData?._rootGroupSlotId||\"\",props:obj.userData._rootGroupSlotProps,runtimeSettings:obj.userData?._rootGroupRuntimeSettings||null};}obj=obj.parent;}return{id:\"\",props:record?._rootLatestSlotProps||null,runtimeSettings:record?._rootLatestSlotRuntimeSettings||null};}function _resolveRootHitInteractionConfig(record,rect,hitObject,fallbackCfg){const slotInfo=_findRootGroupSlotInfo(record,hitObject);const slotProps=slotInfo?.props||null;if(!slotProps||slotProps===record?._rootLatestSlotProps){return fallbackCfg;}const ownerProps=slotInfo?.runtimeSettings?{...slotProps,__import3DRuntimeSettings:slotInfo.runtimeSettings}:slotProps;const ownerCfg=_resolveRootRuntimeConfig(ownerProps,rect?.width||0);return ownerCfg?.hasEnabledMeshInteractions?ownerCfg:fallbackCfg;}function _findRootInteractiveHit(record,rect,hitObject,fallbackCfg){const ownerCfg=_resolveRootHitInteractionConfig(record,rect,hitObject,fallbackCfg);const ownerMatch=_findRootInteractiveObject(record,hitObject,ownerCfg);if(ownerMatch||ownerCfg===fallbackCfg)return ownerMatch;return _findRootInteractiveObject(record,hitObject,fallbackCfg);}function _rootSlotHasEnabledMeshInteractions(slot,cfg){if(cfg?.hasEnabledMeshInteractions)return true;return _getRootRuntimeSceneItems(slot?.props,cfg).some(item=>item?.__groupRuntimeCfg?.hasEnabledMeshInteractions);}function _rootPropsHasModelHoverHandlers(props,runtimeSettings=null){const runtime=runtimeSettings||props?.__import3DRuntimeSettings;return!!(props?.onModelHoverStart||props?.onModelHoverEnd||runtime?.onModelHoverStart||runtime?.onModelHoverEnd);}function _getRootModelHoverHandler(slot,active){if(slot?.hoverHandlers){return active?slot.hoverHandlers.start:slot.hoverHandlers.end;}const props=slot?.props||{};const runtime=slot?.runtimeSettings||props.__import3DRuntimeSettings||{};return active?props.onModelHoverStart||runtime.onModelHoverStart:props.onModelHoverEnd||runtime.onModelHoverEnd;}function _makeRootGroupedModelHoverSlot(slot){let start=null;let end=null;for(const item of _getRootRuntimeSceneItems(slot?.props,slot?.runtimeSettings)){const props=item?.__groupSlotProps||{};const runtime=item?.__groupRuntimeSettings||props.__import3DRuntimeSettings||{};start=start||props.onModelHoverStart||runtime.onModelHoverStart;end=end||props.onModelHoverEnd||runtime.onModelHoverEnd;if(start&&end)break;}if(!start&&!end)return null;return{id:`${slot?.id||\"group\"}:model-hover`,props:{onModelHoverStart:start||undefined,onModelHoverEnd:end||undefined},runtimeSettings:null,hoverHandlers:{start,end},element:slot?.element,scrollContainer:slot?.scrollContainer};}function _rootSlotNeedsModelHover(slot,cfg){if(_rootPropsHasModelHoverHandlers(slot?.props,slot?.runtimeSettings)||cfg?.animationModelHoverGate){return true;}return _getRootRuntimeSceneItems(slot?.props,cfg).some(item=>{const props=item?.__groupSlotProps;return _rootPropsHasModelHoverHandlers(props,item?.__groupRuntimeSettings);});}function _rootSlotFromHitOwner(slot,owner){if(owner?.props&&owner.props!==slot?.props){return{id:owner.id||slot?.id||\"\",props:owner.props,runtimeSettings:owner.runtimeSettings||null,element:slot?.element,scrollContainer:slot?.scrollContainer};}return slot;}function _findRootModelHoverSlotFromHits(record,slot,hits,cfg){const groupedHoverSlot=_makeRootGroupedModelHoverSlot(slot);for(const hit of hits||[]){const owner=_findRootGroupSlotInfo(record,hit?.object);const hoverSlot=_rootSlotFromHitOwner(slot,owner);if(_rootPropsHasModelHoverHandlers(hoverSlot?.props,hoverSlot?.runtimeSettings)){return groupedHoverSlot||hoverSlot;}}if(groupedHoverSlot&&hits?.length){return groupedHoverSlot;}if(cfg?.animationModelHoverGate&&hits?.length){return slot;}return null;}function _raycastRootInteractiveAt(record,rect,x,y,cfg){if(!record?.camera||!rect)return[];if(!Number.isFinite(x)||!Number.isFinite(y)||x<rect.left||x>rect.right||y<rect.top||y>rect.bottom){return[];}const meshes=_collectRootInteractiveMeshes(record,cfg);if(!meshes.length)return[];record.camera.updateMatrixWorld?.(true);record.scene.updateMatrixWorld?.(true);_rootHoverMouse.x=(x-rect.left)/Math.max(1,rect.width)*2-1;_rootHoverMouse.y=-((y-rect.top)/Math.max(1,rect.height))*2+1;_rootHoverRaycaster.setFromCamera(_rootHoverMouse,record.camera);// Native intersectObjects is now accelerated globally by three-mesh-bvh\n// since we always generate the BVH trees.\nreturn _rootHoverRaycaster.intersectObjects(meshes,false);}function _collectRootChildMeshes(obj){const meshes=[];if(obj?.isMesh)meshes.push(obj);else obj?.traverse?.(child=>{if(child?.isMesh)meshes.push(child);});return meshes;}function _saveRootOrigEmissive(meshes){const map=new Map;for(const mesh of meshes){if(!mesh?.material)continue;const mats=Array.isArray(mesh.material)?mesh.material:[mesh.material];map.set(mesh,mats.map(mat=>{if(!mat?.emissive)return null;mat.userData=mat.userData||{};if(!mat.userData.__framerBaseEmissive){mat.userData.__framerBaseEmissive=mat.emissive.clone();}return mat.userData.__framerBaseEmissive.clone();}));}return map;}function _applyRootHoverLerp(channel){if(!channel?.mesh)return;const t=Math.max(0,Math.min(1,channel.progress??0));if(channel.origEmissive&&channel.targetColor){channel.origEmissive.forEach((saved,mesh)=>{if(!mesh?.material)return;const mats=Array.isArray(mesh.material)?mesh.material:[mesh.material];mats.forEach((mat,index)=>{if(!mat?.emissive)return;const orig=saved?.[index];if(orig)_rootInteractionColor.copy(orig);else _rootInteractionColor.setHex(0);mat.emissive.copy(_rootInteractionColor.lerp(channel.targetColor,t));});});}if(channel.origScale&&channel.targetScale){channel.mesh.scale.x+=(channel.targetScale.x-channel.origScale.x)*t;channel.mesh.scale.y+=(channel.targetScale.y-channel.origScale.y)*t;channel.mesh.scale.z+=(channel.targetScale.z-channel.origScale.z)*t;}if(channel.origPosition&&channel.targetPosition){channel.mesh.position.x+=(channel.targetPosition.x-channel.origPosition.x)*t;channel.mesh.position.y+=(channel.targetPosition.y-channel.origPosition.y)*t;channel.mesh.position.z+=(channel.targetPosition.z-channel.origPosition.z)*t;}if(channel.origRotation&&channel.targetRotation){channel.mesh.rotation.x+=(channel.targetRotation.x-channel.origRotation.x)*t;channel.mesh.rotation.y+=(channel.targetRotation.y-channel.origRotation.y)*t;channel.mesh.rotation.z+=(channel.targetRotation.z-channel.origRotation.z)*t;}}function _snapRootHoverChannel(channel){if(!channel?.mesh)return;channel.progress=0;_applyRootHoverLerp(channel)// Resets emissive color to orig\n;if(!channel.mesh._meshAnimOrigPos){if(channel.origPosition)channel.mesh.position.copy(channel.origPosition);if(channel.origRotation)channel.mesh.rotation.copy(channel.origRotation);if(channel.origScale)channel.mesh.scale.copy(channel.origScale);}_clearObjectEventHoverBaseTransform(channel.mesh);channel.mesh=null;channel.config=null;channel.origEmissive=null;channel.origPosition=null;channel.origRotation=null;channel.origScale=null;channel.targetColor=null;channel.targetPosition=null;channel.targetRotation=null;channel.targetScale=null;}function _ensureRootInteractionState(record){if(!record._rootHoverLerp){record._rootHoverLerp={mesh:null,config:null,progress:0,target:0,origEmissive:null,origPosition:null,origRotation:null,origScale:null,targetColor:null,targetPosition:null,targetRotation:null,targetScale:null};record._rootHoverLerpOut={mesh:null,config:null,progress:0,target:0,origEmissive:null,origPosition:null,origRotation:null,origScale:null,targetColor:null,targetPosition:null,targetRotation:null,targetScale:null};record._rootPressLerp={mesh:null,config:null,progress:0,target:0,origEmissive:null,origPosition:null,origRotation:null,origScale:null,targetColor:null,targetPosition:null,targetRotation:null,targetScale:null};}}function _resetRootPressInteract(record){if(!record?._rootPressLerp?.mesh)return;const channel=record._rootPressLerp;channel.progress=0;_applyRootHoverLerp(channel);channel.mesh=null;channel.config=null;channel.origPosition=null;channel.origRotation=null;channel.origScale=null;channel.targetPosition=null;channel.targetRotation=null;channel.targetScale=null;}function _applyRootPressInteract(record,obj,config){if(!record||!obj||!config?.pressEnabled||config?.draggable)return;_ensureRootInteractionState(record);if(record._rootPressLerp?.mesh&&record._rootPressLerp.mesh!==obj){_resetRootPressInteract(record);}const channel=record._rootPressLerp;const targets=_makeObjectEventTransformTargets(obj,config,\"pressTransform\");channel.mesh=obj;channel.config=config;channel.progress=1;channel.target=1;channel.origPosition=targets.origPosition;channel.origRotation=targets.origRotation;channel.origScale=targets.origScale;channel.targetPosition=targets.targetPosition;channel.targetRotation=targets.targetRotation;channel.targetScale=targets.targetScale;_applyRootHoverLerp(channel);}function _unhighlightRootInteract(record,emitEvent=true,event=null){if(!record)return;if(record._rootInteractHoverEndTimer){clearTimeout(record._rootInteractHoverEndTimer);record._rootInteractHoverEndTimer=null;}_ensureRootInteractionState(record);const hovered=record._rootInteractHovered;if(hovered){if(emitEvent){_emitRootMeshInteractionEvent(record._rootInteractHoveredConfig,\"onMeshLeave\",event,hovered);}if(_rootTooltipHandler)_rootTooltipHandler(null,0,0);const active=record._rootHoverLerp;const leaving=record._rootHoverLerpOut;if(leaving.mesh&&leaving.mesh!==hovered)_snapRootHoverChannel(leaving);leaving.mesh=active.mesh;leaving.config=active.config;leaving.progress=active.progress;leaving.origEmissive=active.origEmissive;leaving.origPosition=active.origPosition;leaving.origRotation=active.origRotation;leaving.origScale=active.origScale;leaving.targetColor=active.targetColor;leaving.targetPosition=active.targetPosition;leaving.targetRotation=active.targetRotation;leaving.targetScale=active.targetScale;active.mesh=null;active.config=null;active.progress=0;active.target=0;active.origEmissive=null;active.origPosition=null;active.origRotation=null;active.origScale=null;active.targetColor=null;active.targetPosition=null;active.targetRotation=null;active.targetScale=null;}record._rootInteractHovered=null;record._rootInteractHoveredConfig=null;}function _scheduleUnhighlightRootInteract(record,event=null){if(!record?._rootInteractHovered||record._rootInteractHoverEndTimer)return;record._rootInteractHoverEndTimer=setTimeout(()=>{record._rootInteractHoverEndTimer=null;_unhighlightRootInteract(record,true,event);},90);}function _highlightRootInteract(record,obj,config,event=null){if(!record||!obj||!config)return;if(record._rootInteractHoverEndTimer){clearTimeout(record._rootInteractHoverEndTimer);record._rootInteractHoverEndTimer=null;}_ensureRootInteractionState(record);if(record._rootInteractHovered===obj){const tooltipText=(config.hoverTooltip??\"\").trim();if(tooltipText&&_rootTooltipHandler&&event){_rootTooltipHandler(tooltipText,event.clientX??0,event.clientY??0);}return;}const leaving=record._rootHoverLerpOut;const active=record._rootHoverLerp;if(leaving.mesh===obj){active.mesh=leaving.mesh;active.config=leaving.config;active.progress=leaving.progress;active.target=1;active.origEmissive=leaving.origEmissive;active.origPosition=leaving.origPosition;active.origRotation=leaving.origRotation;active.origScale=leaving.origScale;active.targetColor=leaving.targetColor;active.targetPosition=leaving.targetPosition;active.targetRotation=leaving.targetRotation;active.targetScale=leaving.targetScale;leaving.mesh=null;leaving.config=null;leaving.progress=0;leaving.origEmissive=null;leaving.origPosition=null;leaving.origRotation=null;leaving.origScale=null;leaving.targetColor=null;leaving.targetPosition=null;leaving.targetRotation=null;leaving.targetScale=null;record._rootInteractHovered=obj;record._rootInteractHoveredConfig=config;_emitRootMeshInteractionEvent(config,\"onMeshEnter\",event,obj);const tooltipText=(config.hoverTooltip??\"\").trim();if(tooltipText&&_rootTooltipHandler&&event){_rootTooltipHandler(tooltipText,event.clientX??0,event.clientY??0);}return;}_unhighlightRootInteract(record,true,event);record._rootInteractHovered=obj;record._rootInteractHoveredConfig=config;_emitRootMeshInteractionEvent(config,\"onMeshEnter\",event,obj);const tooltipText=(config.hoverTooltip??\"\").trim();if(tooltipText&&_rootTooltipHandler&&event){_rootTooltipHandler(tooltipText,event.clientX??0,event.clientY??0);}const hoverEffect=config.hoverEffect??\"highlight\";if(hoverEffect===\"none\")return;active.mesh=obj;active.config=config;active.progress=0;active.target=1;// Always apply color (parameters linked)\nconst childMeshes=_collectRootChildMeshes(obj);active.origEmissive=_saveRootOrigEmissive(childMeshes);active.targetColor=parseColor(config.hoverColor??\"#4466ff\");if(hoverEffect===\"scale\"){active.origScale=obj.scale.clone();active.targetScale=obj.scale.clone().multiplyScalar(config.hoverScale??1.1);}else if(hoverEffect===\"transform\"){const targets=_makeObjectEventTransformTargets(obj,config,\"hoverTransform\");active.origPosition=targets.origPosition;active.origRotation=targets.origRotation;active.origScale=targets.origScale;active.targetPosition=targets.targetPosition;active.targetRotation=targets.targetRotation;active.targetScale=targets.targetScale;}}function _syncRootMeshHover(record,slot,rect,state,cfg){if(!record||!_rootSlotHasEnabledMeshInteractions(slot,cfg)||cfg?.responsiveIsMobile){_unhighlightRootInteract(record,true,state?.pointerEvent);return;}const x=state?.pointerX;const y=state?.pointerY;if(!state?.pointerActive||!Number.isFinite(x)||!Number.isFinite(y)||(state?.suppressHoverUntil||0)>performance.now()){_unhighlightRootInteract(record,true,state?.pointerEvent);return;}const now=performance.now();const pointerSeq=state?.pointerSeq??0;const hoverInterval=record._rootInteractHovered?36:64;if(now-(record._rootLastMeshHoverCheckAt||0)<hoverInterval){return;}if(record._rootLastMeshHoverPointerSeq===pointerSeq&&now-(record._rootLastMeshHoverCheckAt||0)<120){return;}record._rootLastMeshHoverPointerSeq=pointerSeq;record._rootLastMeshHoverCheckAt=now;const hits=_raycastRootInteractiveAt(record,rect,x,y,cfg);for(const hit of hits){const matched=_findRootInteractiveHit(record,rect,hit.object,cfg);if(matched){_highlightRootInteract(record,matched.obj,matched.config,state?.pointerEvent);return;}}_scheduleUnhighlightRootInteract(record,state?.pointerEvent);}function _syncRootMeshInteractionFrame(record,cfg,dt){if(!record)return;_ensureRootInteractionState(record);const active=record._rootHoverLerp;const leaving=record._rootHoverLerpOut;if(dt>0){if(active.mesh){const speed=active.config?.hoverSpeed??10;active.progress+=(1-active.progress)*Math.min(1,dt*speed);if(Math.abs(1-active.progress)<.001)active.progress=1;_applyRootHoverLerp(active);}if(leaving.mesh){const speed=leaving.config?.hoverSpeed??10;leaving.progress+=(0-leaving.progress)*Math.min(1,dt*speed);if(leaving.progress<.001)_snapRootHoverChannel(leaving);else _applyRootHoverLerp(leaving);}if(record._rootDragSnapBack?.mesh&&record._rootDragSnapBack?.targetPos){const snap=record._rootDragSnapBack;snap.mesh.position.lerp(snap.targetPos,Math.min(1,dt*8));if(snap.mesh.position.distanceTo(snap.targetPos)<5e-4){snap.mesh.position.copy(snap.targetPos);record._rootDragSnapBack=null;}}}let hasAnyInteractions=!!cfg?.hasEnabledMeshInteractions;if(!hasAnyInteractions&&record.subScenes){for(const[,entry]of record.subScenes){if(entry?._rootOwnRuntimeCfg?.hasEnabledMeshInteractions){hasAnyInteractions=true;break;}}}if(!hasAnyInteractions)return;const items=[...cfg?.meshInteractionItems||[]];if(record.subScenes){for(const[,entry]of record.subScenes){const subCfg=entry?._rootOwnRuntimeCfg;if(subCfg?.hasEnabledMeshInteractions&&subCfg.meshInteractionItems){items.push(...subCfg.meshInteractionItems);}}}if(!items.length)return;if(record._rootMeshInteractionApplyKey!==_rootInteractionCacheKey(record,cfg)){record._rootMeshInteractionApplyKey=_rootInteractionCacheKey(record,cfg);record._rootMeshInteractionTargets=new Map;for(const item of items){const name=String(item?.meshName||\"\").trim().toLowerCase();if(!name||record._rootMeshInteractionTargets.has(name))continue;let matched=null;const roots=[record.model];if(record.subScenes){for(const[,entry]of record.subScenes)roots.push(entry?.group);}for(const root of roots){if(matched||!root)continue;root.traverse?.(node=>{if(matched)return;if(node===root)return;if(String(node?.name||\"\").toLowerCase().includes(name)){matched=node;}});}record._rootMeshInteractionTargets.set(name,matched);}}for(const item of items){const name=String(item?.meshName||\"\").trim().toLowerCase();const target=record._rootMeshInteractionTargets?.get?.(name);if(!target)continue;if(item.autoRotate&&dt>0){const speed=(item.meshAutoRotateSpeed??1)*dt;const axis=item.meshAutoRotateAxis||\"y\";if(axis===\"x\")target.rotation.x+=speed;else if(axis===\"z\")target.rotation.z+=speed;else target.rotation.y+=speed;}if(item.mouseRotate&&!cfg.responsiveIsMobile){if(!target._rootInteractMouseOrig){target._rootInteractMouseOrig={x:target.rotation.x,y:target.rotation.y};}const intensity=item.meshMouseRotateIntensity??.1;target.rotation.y=target._rootInteractMouseOrig.y+(record._rootMouseX||0)*intensity;target.rotation.x=target._rootInteractMouseOrig.x+(record._rootMouseY||0)*intensity*.5;}}}function _applyRootMeshHoverTransforms(record){if(!record)return;const active=record._rootHoverLerp;const leaving=record._rootHoverLerpOut;const press=record._rootPressLerp;const resetMeshes=new Set;const tryReset=channel=>{if(channel?.mesh&&!resetMeshes.has(channel.mesh)){resetMeshes.add(channel.mesh);if(!channel.mesh._meshAnimOrigPos){if(channel.origPosition)channel.mesh.position.copy(channel.origPosition);if(channel.origRotation)channel.mesh.rotation.copy(channel.origRotation);if(channel.origScale)channel.mesh.scale.copy(channel.origScale);}}};tryReset(active);tryReset(leaving);tryReset(press);if(active?.mesh)_applyRootHoverLerp(active);if(leaving?.mesh)_applyRootHoverLerp(leaving);if(press?.mesh)_applyRootHoverLerp(press);}function _rootMeshAnimationCacheKey(record,cfg){const parts=[record?.model?.uuid||\"no-main\",cfg?.meshAnimationLookupKey||\"\"];if(record?.subScenes){for(const[key,entry]of record.subScenes){parts.push(`${key}:${entry?.group?.uuid||\"none\"}:${entry?.group?.visible!==false}`);}}return parts.join(\"|\");}function _syncRootMeshAnimations(record,cfg){if(!record)return;record._rootMeshAnimationSmoothingActive=false;if(!cfg?.hasEnabledMeshAnimations)return;const items=cfg.meshAnimationItems||[];if(!items.length)return;if(!record._rootMeshSmooth)record._rootMeshSmooth=new Map;const cacheKey=_rootMeshAnimationCacheKey(record,cfg);if(record._rootMeshAnimationMatchKey!==cacheKey){record._rootMeshAnimationMatchKey=cacheKey;record._rootMeshAnimationTargets=new Map;const roots=[record.model];if(record.subScenes){for(const[,entry]of record.subScenes)roots.push(entry?.group);}for(const anim of items){const name=String(anim?.meshName||\"\").trim().toLowerCase();if(!name||record._rootMeshAnimationTargets.has(name))continue;let matched=null;for(const root of roots){if(matched||!root)continue;root.traverse?.(node=>{if(matched)return;if(node===root)return;if((node?.isMesh||node?.isGroup||node?.isObject3D)&&String(node?.name||\"\").toLowerCase().includes(name)){matched=node;}});}record._rootMeshAnimationTargets.set(name,matched);}}const lerpFactor=cfg.enableScrollAnimation?Math.max(.001,Math.min(1,cfg.scrollSmoothing||.05)):1;const degToRad=Math.PI/180;let hasSmoothingDelta=false;for(const anim of items){const meshName=String(anim?.meshName||\"\").trim();if(!meshName)continue;const key=meshName.toLowerCase();const target=record._rootMeshAnimationTargets?.get?.(key);if(!target)continue;const desired=_getMeshAnimationDesired(anim,_getObjectEventScrollProgress(anim.scrollMatch,null,anim.scrollAnchorY));const scrollMatch=String(anim?.scrollMatch??\"\").trim();let smooth=record._rootMeshSmooth.get(key);if(!smooth||smooth._scrollMatch!==scrollMatch){// A mesh can keep its name while its Scroll ID changes. Do not\n// carry the previous target's eased transform into the new\n// scroll source.\nsmooth={...desired,_scrollMatch:scrollMatch};record._rootMeshSmooth.set(key,smooth);}else{const currentScaleX=smooth.scaleX??smooth.scale??1;const currentScaleY=smooth.scaleY??smooth.scale??1;const currentScaleZ=smooth.scaleZ??smooth.scale??1;if(lerpFactor<1&&(Math.abs(desired.posX-smooth.posX)>.001||Math.abs(desired.posY-smooth.posY)>.001||Math.abs(desired.posZ-smooth.posZ)>.001||Math.abs(desired.rotX-smooth.rotX)>.001||Math.abs(desired.rotY-smooth.rotY)>.001||Math.abs(desired.rotZ-smooth.rotZ)>.001||Math.abs(desired.scaleX-currentScaleX)>.001||Math.abs(desired.scaleY-currentScaleY)>.001||Math.abs(desired.scaleZ-currentScaleZ)>.001||Math.abs(desired.opacity-(smooth.opacity??1))>.001)){hasSmoothingDelta=true;}smooth.posX+=(desired.posX-smooth.posX)*lerpFactor;smooth.posY+=(desired.posY-smooth.posY)*lerpFactor;smooth.posZ+=(desired.posZ-smooth.posZ)*lerpFactor;smooth.rotX+=(desired.rotX-smooth.rotX)*lerpFactor;smooth.rotY+=(desired.rotY-smooth.rotY)*lerpFactor;smooth.rotZ+=(desired.rotZ-smooth.rotZ)*lerpFactor;if(smooth.scaleX===undefined){const legacyScale=smooth.scale??1;smooth.scaleX=legacyScale;smooth.scaleY=legacyScale;smooth.scaleZ=legacyScale;}smooth.scaleX+=(desired.scaleX-smooth.scaleX)*lerpFactor;smooth.scaleY+=(desired.scaleY-smooth.scaleY)*lerpFactor;smooth.scaleZ+=(desired.scaleZ-smooth.scaleZ)*lerpFactor;smooth.opacity+=(desired.opacity-smooth.opacity)*lerpFactor;}if(target._meshAnimOrigPos===undefined){target._meshAnimOrigPos=target.position.clone();target._meshAnimOrigRot=target.rotation.clone();target._meshAnimOrigScale=target.scale.clone();}target.position.x=target._meshAnimOrigPos.x+smooth.posX;target.position.y=target._meshAnimOrigPos.y+smooth.posY;target.position.z=target._meshAnimOrigPos.z+smooth.posZ;target.rotation.x=target._meshAnimOrigRot.x+smooth.rotX*degToRad;target.rotation.y=target._meshAnimOrigRot.y+smooth.rotY*degToRad;target.rotation.z=target._meshAnimOrigRot.z+smooth.rotZ*degToRad;target.scale.x=target._meshAnimOrigScale.x*Math.max(.001,smooth.scaleX);target.scale.y=target._meshAnimOrigScale.y*Math.max(.001,smooth.scaleY);target.scale.z=target._meshAnimOrigScale.z*Math.max(.001,smooth.scaleZ);const opacity=Math.max(0,Math.min(1,smooth.opacity));if(target._meshAnimLastOpacity!==opacity){let opacityTargets=target._meshAnimOpacityTargets;if(!opacityTargets){opacityTargets=target.isMesh?[target]:[];if(!target.isMesh){target.traverse?.(node=>{if(node?.isMesh&&node.material)opacityTargets.push(node);});}target._meshAnimOpacityTargets=opacityTargets;}for(const node of opacityTargets){const mats=Array.isArray(node.material)?node.material:[node.material];mats.forEach(mat=>{if(!mat)return;mat.opacity=opacity;mat.transparent=opacity<1||!!mat.transparent;mat.needsUpdate=true;});}target._meshAnimLastOpacity=opacity;}}record._rootMeshAnimationSmoothingActive=hasSmoothingDelta;}function _findRootMeshHelperGroup(record,hitObj){const parent=hitObj?.parent;if(parent&&parent!==record?.scene&&parent!==record?.model&&!parent.isMesh){return parent;}return hitObj;}function _buildRootMeshHelperInfo(record,hitObj,rect,x,y){if(!record||!hitObj||!rect)return null;const group=_findRootMeshHelperGroup(record,hitObj);const name=group?.name||hitObj?.name||\"<unnamed>\";const type=hitObj?.isSkinnedMesh?\"SkinnedMesh\":\"Mesh\";const groupMeshes=[];if(group?.isMesh)groupMeshes.push(group);else{group?.traverse?.(child=>{if(child?.isMesh)groupMeshes.push(child);});}let verts=0;for(const mesh of groupMeshes){const attr=mesh?.geometry?.getAttribute?.(\"position\");if(attr)verts+=attr.count||0;}let mat=\"\";if(hitObj?.material){if(Array.isArray(hitObj.material)){mat=hitObj.material.map(material=>material?.name||material?.type||\"\").filter(Boolean).join(\", \");}else{mat=hitObj.material.name||hitObj.material.type||\"\";}}let path=name;let current=group?.parent;while(current&&current!==record.scene){if(current.name)path=`${current.name} › ${path}`;current=current.parent;}return{x:x-rect.left,y:y-rect.top,screenX:x,screenY:y,name,type,verts,mat,path};}function _countRootDescendantMeshes(node){let count=0;node?.traverse?.(child=>{if(child?.isMesh)count++;});return count;}function _buildRootMeshHelperTree(record){if(!record)return[];const rows=[];const roots=[];if(record.model)roots.push(record.model);if(record.subScenes){for(const[,entry]of record.subScenes){if(entry?.group)roots.push(entry.group);}}const visit=(node,depth)=>{if(!node||rows.length>=240)return;if(node.isMesh){const attr=node.geometry?.getAttribute?.(\"position\");rows.push({name:node.name||\"<unnamed>\",type:node.isSkinnedMesh?\"SkinnedMesh\":\"Mesh\",depth,verts:attr?.count||0,isGroup:false});return;}const childMeshCount=_countRootDescendantMeshes(node);if(node.name&&childMeshCount>0){rows.push({name:node.name,type:\"Group\",depth,verts:0,isGroup:true,childMeshCount});}const nextDepth=node.name?depth+1:depth;for(const child of node.children||[])visit(child,nextDepth);};roots.forEach(root=>visit(root,0));return rows;}function _playRootMeshClickAnimation(record,config,event,obj){const clipName=String(config?.clickAnimClip||\"\").trim();if(!clipName||!record?.mixer||!record.animations?.length)return;const clip=_findAnimationClip(record.animations,clipName);if(!clip)return;const action=record.mixer.clipAction(clip);if(action?.isRunning?.()){if(action._meshCompleteListener){record.mixer.removeEventListener(\"finished\",action._meshCompleteListener);action._meshCompleteListener=null;}action.stop();return;}if(action._meshCompleteListener){record.mixer.removeEventListener(\"finished\",action._meshCompleteListener);action._meshCompleteListener=null;}const loopMode=config.clickAnimLoop??\"once\";if(loopMode===\"repeat\"){action.setLoop(THREE.LoopRepeat,Infinity);action.clampWhenFinished=false;}else if(loopMode===\"pingPong\"){action.setLoop(THREE.LoopPingPong,Infinity);action.clampWhenFinished=false;}else{action.setLoop(THREE.LoopOnce,1);action.clampWhenFinished=true;}action.timeScale=config.clickAnimReverse?-1:1;if(config.clickAnimReverse){action.time=clip.duration;}if(loopMode===\"once\"&&config.onAnimationComplete){const onFinished=evt=>{if(evt?.action!==action)return;record.mixer.removeEventListener(\"finished\",onFinished);action._meshCompleteListener=null;_emitRootMeshInteractionEvent(config,\"onAnimationComplete\",event,obj);};record.mixer.addEventListener(\"finished\",onFinished);action._meshCompleteListener=onFinished;}action.reset();if(config.clickAnimReverse){action.time=clip.duration;action.paused=false;}action.play();}function _applyRootMeshClickAction(record,config,event,obj){const action=config?.clickAction??\"none\";if(action===\"openUrl\"){const url=config.clickUrl??\"\";if(url){if(config.clickUrlNewTab)window.open(url,\"_blank\",\"noopener\");else window.location.href=url;}}else if(action===\"toggleVisibility\"){const targetName=String(config.clickTargetMesh||\"\").trim().toLowerCase();if(!targetName){obj.visible=!obj.visible;_markRootHoverMeshesDirty(record);return;}const toggle=node=>{if(!node)return;node.traverse?.(child=>{if(String(child?.name||\"\").toLowerCase().includes(targetName)){child.visible=!child.visible;}});};toggle(record.model);if(record.subScenes){for(const[,entry]of record.subScenes)toggle(entry?.group);}_markRootHoverMeshesDirty(record);}else if(action===\"changeColor\"){const meshes=_collectRootChildMeshes(obj);const applied=!!obj._interactColorApplied;for(const mesh of meshes){if(applied){_restoreMaterial(mesh);}else if(mesh.material){_backupMaterial(mesh);const mats=Array.isArray(mesh.material)?mesh.material:[mesh.material];const color=parseColor(config.clickColor??\"#ff0000\");mats.forEach(mat=>{if(mat?.color)mat.color.copy(color);});}}obj._interactColorApplied=!applied;}else if(action===\"playAnimation\"){_playRootMeshClickAnimation(record,config,event,obj);}}function _getRootAnimationOnceProxy(record){if(!record)return null;if(!record._rootAnimationOnceProxy){record._rootAnimationOnceProxy=event=>{const handler=record._rootLatestSlotRuntimeSettings?.onAnimationOnceComplete||record._rootLatestSlotProps?.onAnimationOnceComplete;if(!handler)return;handler(event);};}return record._rootAnimationOnceProxy;}function _setRootModelHoverActive(record,slot,active,eventLike=null,immediate=false){if(!record)return;if(active&&record._rootModelHoverEndTimer){clearTimeout(record._rootModelHoverEndTimer);record._rootModelHoverEndTimer=null;record._rootModelHoverPendingEndEvent=null;}if(!active&&immediate&&record._rootModelHoverEndTimer){clearTimeout(record._rootModelHoverEndTimer);record._rootModelHoverEndTimer=null;record._rootModelHoverPendingEndEvent=null;}const wasInitialized=record._rootModelHoverInitialized===true;const nextSlotId=active?slot?.id||\"\":\"\";const prevSlot=record._rootModelHoverSlot||slot;const prevSlotId=record._rootModelHoverSlotId||\"\";const sameHoverTarget=wasInitialized&&record._rootModelHoverActive===active&&(!active||prevSlotId===nextSlotId);if(sameHoverTarget){if(active&&slot)record._rootModelHoverSlot=slot;return;}if(!active&&wasInitialized&&!immediate){record._rootModelHoverPendingEndEvent=eventLike;if(record._rootModelHoverEndTimer)return;record._rootModelHoverEndTimer=setTimeout(()=>{record._rootModelHoverEndTimer=null;const pendingEvent=record._rootModelHoverPendingEndEvent;record._rootModelHoverPendingEndEvent=null;_setRootModelHoverActive(record,slot,false,pendingEvent,true);},90);return;}if(active&&wasInitialized&&record._rootModelHoverActive&&prevSlotId&&prevSlotId!==nextSlotId){const prevHandler=_getRootModelHoverHandler(prevSlot,false);if(prevHandler){try{if(eventLike)prevHandler(eventLike);else prevHandler();}catch(error){console.warn(\"[Import_3D_Canvas_Root] model hover handler failed\",error);}}}record._rootModelHoverInitialized=true;record._rootModelHoverActive=active;record._rootModelHoverSlot=active?slot:null;record._rootModelHoverSlotId=active?nextSlotId:\"\";record._modelHoverRaycastActive=active;if(record.subScenes){for(const[,entry]of record.subScenes){entry._modelHoverRaycastActive=active;}}if(!wasInitialized&&!active)return;const eventSlot=active?slot:prevSlot;const handler=_getRootModelHoverHandler(eventSlot,active);if(!handler)return;try{if(eventLike)handler(eventLike);else handler();}catch(error){console.warn(\"[Import_3D_Canvas_Root] model hover handler failed\",error);}}function _syncRootModelHover(record,slot,rect,state){const cfg=record?._rootRuntimeCfg;const needsHover=_rootSlotNeedsModelHover(slot,cfg);if(!needsHover||!record?.camera||!rect){_setRootModelHoverActive(record,slot,false,null,true);return;}const x=state?.pointerX;const y=state?.pointerY;const pointerActive=!!state?.pointerActive;const pointerInside=pointerActive&&Number.isFinite(x)&&Number.isFinite(y)&&x>=rect.left&&x<=rect.right&&y>=rect.top&&y<=rect.bottom;if(!pointerInside){_setRootModelHoverActive(record,slot,false,state?.pointerEvent,true);return;}const now=performance.now();if((state?.suppressHoverUntil||0)>now){return;}const pointerSeq=state?.pointerSeq??0;const hoverRectSig=[Math.round(rect.left),Math.round(rect.top),Math.round(rect.width),Math.round(rect.height),record._rootHoverMeshVersion||0].join(\"|\");const hoverCheckInterval=record._rootModelHoverActive?96:64;if(record._rootLastHoverRectSig===hoverRectSig&&now-(record._rootLastHoverCheckAt||0)<hoverCheckInterval){return;}if(record._rootLastHoverPointerSeq===pointerSeq&&record._rootLastHoverRectSig===hoverRectSig){return;}record._rootLastHoverPointerSeq=pointerSeq;record._rootLastHoverRectSig=hoverRectSig;record._rootLastHoverCheckAt=now;const hits=_raycastRootInteractiveAt(record,rect,x,y,cfg);if(hits.length>0){const hoverSlot=_findRootModelHoverSlotFromHits(record,slot,hits,cfg);if(hoverSlot){_setRootModelHoverActive(record,hoverSlot,true,state?.pointerEvent);return;}}_setRootModelHoverActive(record,slot,false,state?.pointerEvent);}function _resetRootModelHoverGateState(holder,clipName=\"\"){if(!holder)return;holder._modelHoverGateInitialized=false;holder._modelHoverBaseAnimationClip=clipName;holder._modelHoverPendingAnimationClip=clipName;}function _resolveRootModelHoverGatedClip(holder,cfg,clipName){if(!cfg?.animationModelHoverGate||cfg?.animationMode!==\"single\"){_resetRootModelHoverGateState(holder,String(clipName??\"\"));return clipName;}const requestedClip=String(clipName??\"\");if(!holder._modelHoverGateInitialized){holder._modelHoverGateInitialized=true;holder._modelHoverBaseAnimationClip=requestedClip;}holder._modelHoverPendingAnimationClip=requestedClip;if(holder._modelHoverRaycastActive){return requestedClip;}return holder._modelHoverBaseAnimationClip||holder._activeAnimationClipName||requestedClip;}function _getRootAnimationOnceCallback(holder,requestSig,callback){if(holder._rootAnimationOnceCallbackSig!==requestSig||holder._rootAnimationOnceCallbackSource!==callback){holder._rootAnimationOnceCallbackSig=requestSig;holder._rootAnimationOnceCallbackSource=callback;holder._rootAnimationOnceCallback=event=>{holder._rootAnimationOnceCompletedSig=requestSig;callback?.(event);};}return holder._rootAnimationOnceCallback;}function _getRootAnimationOnceAllCallback(holder,requestSig,callback){if(holder._rootAnimationOnceAllCallbackSig!==requestSig||holder._rootAnimationOnceAllCallbackSource!==callback){holder._rootAnimationOnceAllCallbackSig=requestSig;holder._rootAnimationOnceAllCallbackSource=callback;holder._rootAnimationOnceAllCallback=event=>{holder._rootAnimationOnceCompletedSig=requestSig;callback?.(event);};}return holder._rootAnimationOnceAllCallback;}function _syncRootAnimations(holder,cfg){const animations=holder.animations||[];if(!holder.mixer||!animations.length||!(cfg?.enableAnimation??false)){if(holder._activeAnimationKey)holder.mixer?.stopAllAction?.();_clearAnimationOnceCompleteListener(holder,holder.mixer);holder._activeAnimationKey=\"\";holder._activeAnimationAction=null;holder._activeAnimationClipName=\"\";holder._lastAnimationRequestSig=\"\";holder._rootAnimationOnceCompletedSig=\"\";return;}const mode=cfg?.animationMode||\"all\";const clipName=_resolveRootModelHoverGatedClip(holder,cfg,cfg?.animationClip||\"\");const speed=cfg?.animationSpeed??1;const loopMode=cfg?.hasAnimationOnceCompleteHandler?\"once\":cfg?.animationLoopMode||\"repeat\";const normalizedLoopMode=String(loopMode||\"repeat\").toLowerCase();const restartOnSwitch=!!(cfg?.animationRestartOnSwitch||cfg?.hasAnimationOnceCompleteHandler);holder.mixer.timeScale=speed;if(mode===\"single\"){const clip=_findRootClip(animations,clipName);if(!clip){if(holder._activeAnimationKey)holder.mixer.stopAllAction();_clearAnimationOnceCompleteListener(holder,holder.mixer);holder._activeAnimationKey=\"\";holder._activeAnimationAction=null;holder._activeAnimationClipName=\"\";holder._lastAnimationRequestSig=\"\";holder._rootAnimationOnceCompletedSig=\"\";return;}const blendDuration=Math.max(0,cfg?.animationBlendDuration??.35);const actionKey=`${clip.name}|${loopMode}`;const requestSig=[\"single\",actionKey,blendDuration,cfg?.animationWarp?1:0,cfg?.animationSyncPhase?1:0,restartOnSwitch?1:0,normalizedLoopMode===\"once\"?cfg?._animationReplayHash||\"\":\"\"].join(\"|\");const nextAction=holder.mixer.clipAction(clip);const requestChanged=holder._lastAnimationRequestSig!==requestSig;if(requestChanged){holder._rootAnimationOnceCompletedSig=\"\";}const onceAlreadyCompleted=normalizedLoopMode===\"once\"&&holder._rootAnimationOnceCompletedSig===requestSig;if(holder._activeAnimationKey===actionKey&&holder._lastAnimationRequestSig===requestSig){const activeAction=holder._activeAnimationAction||nextAction;_configureRootAnimationLoop(activeAction,loopMode);activeAction.enabled=true;if(!(normalizedLoopMode===\"once\"&&_isAnimationOnceActionComplete(activeAction))){activeAction.paused=false;}activeAction.setEffectiveTimeScale(1);if(!onceAlreadyCompleted&&!activeAction.isRunning()&&!(normalizedLoopMode===\"once\"&&_isAnimationOnceActionComplete(activeAction))){activeAction.play();}holder._activeAnimationAction=activeAction;holder._activeAnimationClipName=clip.name;if(normalizedLoopMode===\"once\"&&!onceAlreadyCompleted&&cfg?.hasAnimationOnceCompleteHandler&&cfg?.onAnimationOnceComplete){const onceCallback=_getRootAnimationOnceCallback(holder,requestSig,cfg.onAnimationOnceComplete);if(holder._animationOnceCompleteAction!==activeAction||holder._animationOnceCompleteCallback!==onceCallback){_bindAnimationOnceComplete(holder,holder.mixer,activeAction,onceCallback);}}else{_clearAnimationOnceCompleteListener(holder,holder.mixer);}return;}const prevAction=holder._activeAnimationAction||null;const sameAction=prevAction===nextAction;const seenAction=holder._animationActionCache?.has?.(actionKey);const hasPreviousClip=!!prevAction&&!sameAction;const canContinuePhase=hasPreviousClip&&normalizedLoopMode!==\"once\"&&!restartOnSwitch;const shouldSyncPhase=canContinuePhase&&(cfg?.animationSyncPhase||blendDuration>0);_configureRootAnimationLoop(nextAction,loopMode);nextAction.enabled=true;if(!(normalizedLoopMode===\"once\"&&_isAnimationOnceActionComplete(nextAction))){nextAction.paused=false;}nextAction.setEffectiveWeight(1);nextAction.setEffectiveTimeScale(1);const shouldRestart=restartOnSwitch||!prevAction&&!seenAction||normalizedLoopMode===\"once\"&&holder._lastAnimationRequestSig!==requestSig;if(shouldRestart){nextAction.reset();}else if(shouldSyncPhase){_syncRootAnimationPhase(prevAction,nextAction);}nextAction.play();if(sameAction){if(!nextAction.isRunning())nextAction.play();}else if(prevAction){if(blendDuration>0){prevAction.crossFadeTo(nextAction,blendDuration,!!cfg?.animationWarp);}else{prevAction.stop();}}else if(blendDuration>0){nextAction.fadeIn(blendDuration);}if(!holder._animationActionCache){holder._animationActionCache=new Set;}holder._animationActionCache.add(actionKey);holder._activeAnimationAction=nextAction;holder._activeAnimationKey=actionKey;holder._activeAnimationClipName=clip.name;holder._lastAnimationRequestSig=requestSig;if(normalizedLoopMode===\"once\"&&cfg?.hasAnimationOnceCompleteHandler&&cfg?.onAnimationOnceComplete){const onceCallback=_getRootAnimationOnceCallback(holder,requestSig,cfg.onAnimationOnceComplete);_bindAnimationOnceComplete(holder,holder.mixer,nextAction,onceCallback);}else{_clearAnimationOnceCompleteListener(holder,holder.mixer);}return;}const allRequestSig=[\"all\",loopMode,cfg?.hasAnimationOnceCompleteHandler?1:0,normalizedLoopMode===\"once\"?cfg?._animationReplayHash||\"\":\"\"].join(\"|\");if(holder._activeAnimationKey===\"all\"&&holder._lastAnimationRequestSig===allRequestSig){return;}holder.mixer.stopAllAction();_clearAnimationOnceCompleteListener(holder,holder.mixer);const allActions=[];animations.forEach(clip=>{const action=holder.mixer.clipAction(clip);_configureRootAnimationLoop(action,loopMode);action.enabled=true;action.paused=false;action.reset().play();allActions.push(action);});if(normalizedLoopMode===\"once\"&&cfg?.hasAnimationOnceCompleteHandler&&cfg?.onAnimationOnceComplete){const onceCallback=_getRootAnimationOnceAllCallback(holder,allRequestSig,cfg.onAnimationOnceComplete);_bindAnimationOnceCompleteActions(holder,holder.mixer,allActions,onceCallback);}holder._activeAnimationAction=null;holder._activeAnimationKey=\"all\";holder._activeAnimationClipName=\"\";holder._lastAnimationRequestSig=allRequestSig;holder._rootAnimationOnceCompletedSig=\"\";}function _safeSyncRootAnimations(holder,cfg,label=\"model\"){if(!holder)return;try{_syncRootAnimations(holder,cfg);holder._rootAnimationSyncErrorSig=\"\";}catch(error){const errorSig=[label,cfg?.animationMode||\"\",cfg?.animationClip||\"\",cfg?.animationLoopMode||\"\"].join(\"|\");if(holder._rootAnimationSyncErrorSig!==errorSig){holder._rootAnimationSyncErrorSig=errorSig;console.warn(\"[Import_3D_Canvas_Root] animation sync failed; rendering model without animation sync\",error);}holder._lastAnimationRequestSig=\"\";}}function _safeUpdateRootMixer(holder,dt,label=\"model\"){if(!holder?.mixer)return;try{holder.mixer.update(dt);holder._rootMixerUpdateError=false;}catch(error){if(!holder._rootMixerUpdateError){holder._rootMixerUpdateError=true;console.warn(`[Import_3D_Canvas_Root] mixer update failed for ${label}; keeping render loop alive`,error);}}}function _safeSyncRootModelHover(record,slot,rect,state){try{_syncRootModelHover(record,slot,rect,state);record._rootHoverSyncError=false;}catch(error){if(!record._rootHoverSyncError){record._rootHoverSyncError=true;console.warn(\"[Import_3D_Canvas_Root] hover/state sync failed; keeping render loop alive\",error);}}}function _rootSubSceneHashFromItems(items=[]){return(items||[]).map((item,index)=>{const url=_rootSubSceneUrlFromItem(item);return`${index}:${url}`;}).join(\"|\");}function _rootSubSceneHash(props,runtimeCfg=null){return _rootSubSceneHashFromItems(_getRootRuntimeSceneItems(props,runtimeCfg));}function _rootHasRenderableSubScenes(props,runtimeCfg=null){const items=_getRootRuntimeSceneItems(props,runtimeCfg);return items.some(item=>{const url=_rootSubSceneUrlFromItem(item);return!!url;});}function _getRootSubSceneSmoothedItem(entry,item,cfg){const resolved=resolveThreeJSRuntimeSubSceneItem(item)||{};const target={scale:resolved.scale??1,offX:resolved.offX??0,offY:resolved.offY??0,offZ:resolved.offZ??0,rotX:resolved.rotX??0,rotY:resolved.rotY??0,rotZ:resolved.rotZ??0};if(!cfg?.enableScrollAnimation){entry._rootScrollSmoothingActive=false;return target;}if(entry._rootSmoothFrameId===entry._rootFrameId&&entry._smoothState){return entry._smoothState;}if(!entry._smoothState){entry._smoothState={...target};entry._rootSmoothFrameId=entry._rootFrameId;entry._rootScrollSmoothingActive=false;return entry._smoothState;}const live=entry._smoothState;const smooth=Math.max(0,Math.min(1,cfg.scrollSmoothing??.05));if(smooth>=1){entry._smoothState={...target};entry._rootSmoothFrameId=entry._rootFrameId;entry._rootScrollSmoothingActive=false;return entry._smoothState;}// Feature-enabled is not the same as currently moving: let the root\n// renderer sleep once this sub-scene has eased to its latest target.\nlet hasSmoothingDelta=false;for(const key of Object.keys(target)){if(Math.abs(target[key]-live[key])>.001){hasSmoothingDelta=true;}live[key]+=(target[key]-live[key])*smooth;}entry._rootScrollSmoothingActive=hasSmoothingDelta;entry._rootSmoothFrameId=entry._rootFrameId;return live;}function _applyRootSubSceneTransform(entry,item,props,parent,mainGroundY=0,rectWidth=0,positionState=null,record=null,runtimeCfg=null){const group=entry?.group;if(!group)return;entry._rootFrameId=record?._rootFrameId||entry._rootFrameId||0;const local=_getRootSubSceneSmoothedItem(entry,item,runtimeCfg);const parentToMain=!!(item?.parentToMain??item?.parent);const parentPivot=parentToMain&&(item?.parentPivot??item?.pivotMode)===\"main\"?\"main\":\"own\";const parentCurrent=parent?.userData?._rootBaseTransform||{};const baseScale=((parentToMain?parent?.userData?._rootNormalizeScale:group.userData?._rootNormalizeScale)||1)*((parentToMain?parent?.userData?._rootFitRatio:group.userData?._rootFitRatio)||1);const parentScale=parentToMain?parentCurrent.scale??1:1;const parentOffX=parentToMain?parentCurrent.offX??0:0;const parentOffY=parentToMain?parentCurrent.offY??0:0;const parentOffZ=parentToMain?parentCurrent.offZ??0:0;const parentRotX=parentToMain?parentCurrent.rotX??0:0;const parentRotY=parentToMain?parentCurrent.rotY??0:0;const parentRotZ=parentToMain?parentCurrent.rotZ??0:0;const localOffX=local.offX;const localOffY=local.offY;const localOffZ=local.offZ;const localRotX=local.rotX;const localRotY=local.rotY;const localRotZ=local.rotZ;const useScale=parentScale*local.scale;const useOffX=parentOffX+localOffX;const useOffY=parentOffY+localOffY;const useOffZ=parentOffZ+localOffZ;const useRotX=parentRotX+localRotX;const useRotY=parentRotY+localRotY;const useRotZ=parentRotZ+localRotZ;group.visible=item?.visible!==false;if(!group.visible)return;const effectiveScale=baseScale*Math.max(.01,useScale);_cacheRootObjectBaseBounds(group);group.scale.setScalar(effectiveScale);const center={x:(group.userData?._rootBaseCenterX||0)*effectiveScale,y:(group.userData?._rootBaseCenterY||0)*effectiveScale,z:(group.userData?._rootBaseCenterZ||0)*effectiveScale};const minY=(group.userData?._rootBaseMinY||0)*effectiveScale;if(item?.__groupAnchor){group.position.set(-center.x+useOffX+(item.__groupAnchor.x||0),-center.y+useOffY+(item.__groupAnchor.y||0),-center.z+useOffZ);}else if(parentToMain&&parentPivot===\"main\"){// Reuse shared scratch objects (state.tsx) instead of allocating a\n// fresh Euler/Vector3/Quaternion per sub-scene per frame — mirrors\n// Slot's identical pivot math in slotRuntime.tsx.\n_tmpSubScenePivotEuler.set(parentRotX*Math.PI/180,parentRotY*Math.PI/180,parentRotZ*Math.PI/180,\"XYZ\");_tmpSubScenePivotQuat.setFromEuler(_tmpSubScenePivotEuler);_tmpSubScenePivotOffset.set(-center.x+localOffX,mainGroundY-minY+localOffY,-center.z+localOffZ).applyQuaternion(_tmpSubScenePivotQuat);group.position.set(parentOffX+_tmpSubScenePivotOffset.x,parentOffY+_tmpSubScenePivotOffset.y,parentOffZ+_tmpSubScenePivotOffset.z);}else{group.position.set(-center.x+useOffX,mainGroundY-minY+useOffY,-center.z+useOffZ);}group.rotation.set(useRotX*Math.PI/180,useRotY*Math.PI/180,useRotZ*Math.PI/180);_applyRootPositionToObject(group,positionState);}function _syncRootSubScenes(record,props,runtimeCfg=null,sceneItems=null){const items=sceneItems||_getRootRuntimeSceneItems(props,runtimeCfg||record?._rootRuntimeCfg);const nextHash=_rootSubSceneHashFromItems(items);if(record._subSceneHash===nextHash)return;record._subSceneHash=nextHash;const wanted=new Set;items.forEach((item,index)=>{const url=_rootSubSceneUrlFromItem(item);if(!url)return;const key=`${index}|${url}`;wanted.add(key);if(record.subScenes.has(key))return;const placeholder={key,index,url,group:null,mixer:null,animations:[],_rootOwnRuntimeCfg:item?.__groupRuntimeCfg||null,_rootGroupSlotProps:item?.__groupSlotProps||null,_rootGroupRuntimeSettings:item?.__groupRuntimeSettings||null,_animationActionCache:new Set,_activeAnimationAction:null,_activeAnimationKey:\"\",_activeAnimationClipName:\"\",_lastAnimationRequestSig:\"\"};record.subScenes.set(key,placeholder);_loadRootModel(url).then(loaded=>{if(!record.subScenes.has(key))return;const group=SkeletonUtils.clone(loaded.object);const normalizeScale=_centerAndNormalizeRootModel(group);const fitRatio=record.model?.userData?._rootFitRatio||1;const normalizedSize=_computeMeshOnlyBoundingBox(group).getSize(new THREE.Vector3);_prepareRootModel(group);_cacheRootObjectBaseBounds(group);group.userData._rootFormat=loaded.format||\"\";group.userData._rootNormalizeScale=normalizeScale;group.userData._rootNormalizedSize=normalizedSize.clone();group.userData._rootFitRatio=fitRatio;group.userData._rootGroupSlotProps=item?.__groupSlotProps||null;group.userData._rootGroupRuntimeSettings=item?.__groupRuntimeSettings||null;group.userData._rootGroupSlotId=item?.__groupSlotId||\"\";group.visible=item?.visible!==false;placeholder.group=group;placeholder.animations=_sanitizeAnimationClipsForObject(group,loaded.animations||[]);placeholder._loaded=true;placeholder.loadedUrl=url;if(placeholder.animations.length){placeholder.mixer=new THREE.AnimationMixer(group);}record.scene.add(group);_markRootHoverMeshesDirty(record);const runtimeCfg=item?.__groupRuntimeCfg||record._rootRuntimeCfg||_resolveRootRuntimeConfig(props,0);_applyRootCanonicalMaterial(group,runtimeCfg);placeholder._rootOwnRuntimeCfg=item?.__groupRuntimeCfg||null;placeholder._rootGroupRuntimeSettings=item?.__groupRuntimeSettings||null;placeholder._rootOwnMaterialHash=runtimeCfg?._materialHash??materialHash(runtimeCfg);}).catch(error=>{console.warn(\"[Import_3D_Canvas_Root] sub-scene load failed\",error);});});for(const[key,entry]of record.subScenes){if(wanted.has(key))continue;if(entry.group)record.scene.remove(entry.group);if(entry.group)_disposeMaterialsOnly(entry.group);entry.mixer?.stopAllAction?.();record.subScenes.delete(key);_markRootHoverMeshesDirty(record);}}// Bridge state management functions now use global _getImport3DBridgeState, _emitImport3DBridge, _subscribeImport3DBridge, _snapshotImport3DBridge\n/**\n     * @framerSupportedLayoutWidth any-prefer-fixed\n     * @framerSupportedLayoutHeight any-prefer-fixed\n     * @framerIntrinsicWidth 200\n     * @framerIntrinsicHeight 40\n     *\n     * @framerDisableUnlink\n     */function Import_3D_Canvas_Root(props){const{style={},mode=\"coordinator\",desktopSlots=3,mobileSlots=2,mobileBreakpoint=768,qualityMode=\"balanced\",dprCapDesktop=1.5,dprCapMobile=1.2,pauseHidden=true,pauseOffscreen=true,destroyOffscreen=false,destroyAfterMs=2e4,canvasZIndex=10,nativeAntialias=false,debug=false}=props;const rootCanvasRef=React.useRef(null);const rootInstanceIdRef=React.useRef(`root-${Math.random().toString(36).slice(2,9)}`);const[bridgeInfo,setBridgeInfo]=React.useState(()=>_snapshotImport3DBridge());const[rootHelper,setRootHelper]=React.useState({tooltip:null,tree:[],meshCount:0});const rootHelperRef=React.useRef(rootHelper);rootHelperRef.current=rootHelper;const isOnFramerCanvas=useIsOnFramerCanvas();const isCanvasTarget=getFramerRuntimeMode(isOnFramerCanvas)===\"canvas\";React.useEffect(()=>{if(mode===\"renderer\")return;const empty={tooltip:null,tree:[],meshCount:0,_sig:\"\"};rootHelperRef.current=empty;setRootHelper(empty);},[mode]);useBrowserLayoutEffect(()=>{const bridge=_getImport3DBridgeState();const syncBridge=()=>{const isMobile=typeof window!==\"undefined\"?(window.innerWidth||0)<=mobileBreakpoint:false;const nextBudget=isMobile?mobileSlots:desktopSlots;bridge.renderMode=mode;bridge._rendererModeAnnounced=mode===\"renderer\";bridge.contextBudget=nextBudget>0?nextBudget:null;bridge.qualityMode=qualityMode||\"balanced\";bridge.dprCapDesktop=dprCapDesktop>0?Number(dprCapDesktop):null;bridge.dprCapMobile=dprCapMobile>0?Number(dprCapMobile):null;bridge.pauseHidden=!!pauseHidden;bridge.pauseOffscreen=!!pauseOffscreen;bridge.destroyOffscreen=!!destroyOffscreen;bridge.destroyAfterMs=Math.max(0,Number(destroyAfterMs)||0);bridge.rendererDebug=!!debug;_emitImport3DBridge();};bridge.rootCount=(bridge.rootCount||0)+1;if(bridge.rootCount>1){console.warn(`[Import_3D] Multiple ThreeJSRuntimeRoot components detected (count: ${bridge.rootCount}). Only ONE root should be used per page to avoid renderer conflicts. Extra roots will be blocked.`);}syncBridge();if(typeof window!==\"undefined\"){window.addEventListener(\"resize\",syncBridge,{passive:true});}return()=>{const nextBridge=_getImport3DBridgeState();nextBridge.rootCount=Math.max(0,(nextBridge.rootCount||0)-1);if(nextBridge.rootCount===0){nextBridge.contextBudget=null;nextBridge.rendererState=null;nextBridge.qualityMode=\"balanced\";nextBridge.dprCapDesktop=null;nextBridge.dprCapMobile=null;nextBridge.pauseHidden=true;nextBridge.pauseOffscreen=true;nextBridge.destroyOffscreen=false;nextBridge.destroyAfterMs=2e4;nextBridge.rendererDebug=false;nextBridge._rendererModeAnnounced=false;nextBridge.renderMode=\"coordinator\";}_emitImport3DBridge();if(typeof window!==\"undefined\"){window.removeEventListener(\"resize\",syncBridge);}};},[mode,desktopSlots,mobileSlots,mobileBreakpoint,qualityMode,dprCapDesktop,dprCapMobile,pauseHidden,pauseOffscreen,destroyOffscreen,destroyAfterMs,debug]);React.useEffect(()=>{if(typeof window===\"undefined\")return;const bridge=_getImport3DBridgeState();if(mode!==\"renderer\"){bridge.rendererState=null;_emitImport3DBridge();return;}let rafId=0;let lastActiveId=\"\";const bootStartedAt=performance.now();let lastBootEmitAt=0;const pointerState={x:-1,y:-1,active:false,event:null,seq:0};const scrollState={lastLeft:Number.NaN,lastTop:Number.NaN,suppressHoverUntil:0};const clamp01=value=>Math.max(0,Math.min(1,Number.isFinite(value)?value:0));const onPointerMove=event=>{pointerState.x=event?.clientX??-1;pointerState.y=event?.clientY??-1;pointerState.active=true;pointerState.event=event||null;pointerState.seq+=1;};const onPointerLeave=()=>{pointerState.active=false;pointerState.x=-1;pointerState.y=-1;pointerState.event=null;pointerState.seq+=1;};const suspendHoverForScroll=()=>{scrollState.suppressHoverUntil=performance.now()+520;};window.addEventListener(\"pointermove\",onPointerMove,{passive:true});window.addEventListener(\"mousemove\",onPointerMove,{passive:true});window.addEventListener(\"pointerleave\",onPointerLeave,{passive:true});window.addEventListener(\"wheel\",suspendHoverForScroll,{passive:true});window.addEventListener(\"touchmove\",suspendHoverForScroll,{passive:true});const tick=()=>{const rawSlots=Array.from(bridge.slots?.values?.()||[]);const primaryScrollContainer=rawSlots.find(slot=>slot?.scrollContainer)?.scrollContainer||null;const metrics=_getRootScrollMetrics(primaryScrollContainer);const viewportWidth=metrics.viewportWidth;const viewportHeight=metrics.viewportHeight;const viewportCenterY=metrics.viewportTop+metrics.viewportHeight/2;const padPx=viewportHeight*_ROOT_SCROLL_CANVAS_PADDING;const currentScrollLeft=metrics.scrollLeft||0;const currentScrollTop=metrics.scrollTop||0;const scrollChanged=!Number.isFinite(scrollState.lastLeft)||!Number.isFinite(scrollState.lastTop)||Math.abs(currentScrollLeft-scrollState.lastLeft)>.5||Math.abs(currentScrollTop-scrollState.lastTop)>.5;if(scrollChanged){scrollState.lastLeft=currentScrollLeft;scrollState.lastTop=currentScrollTop;suspendHoverForScroll();}const hoverSuppressed=scrollState.suppressHoverUntil>performance.now();const measuredSlots=rawSlots.map(slot=>{const el=slot?.element;if(!el?.getBoundingClientRect)return null;const slotWebglActive=_isRootSlotWebglEnabled(slot);const rect=el.getBoundingClientRect();const domOpacity=_getRootEffectiveDomOpacity(el);const pointerInside=pointerState.active&&pointerState.x>=rect.left&&pointerState.x<=rect.right&&pointerState.y>=rect.top&&pointerState.y<=rect.bottom;const canCheckPointerHit=pointerInside&&!hoverSuppressed&&!!document.elementFromPoint;const hitNode=canCheckPointerHit?document.elementFromPoint(pointerState.x,pointerState.y):null;const pointerHit=!!(pointerInside&&hitNode&&el.contains?.(hitNode));const visible=slotWebglActive&&rect.bottom>metrics.viewportTop-padPx&&rect.top<metrics.viewportBottom+padPx&&rect.right>metrics.viewportLeft&&rect.left<metrics.viewportRight&&domOpacity>.001;const distance=Math.abs(rect.top+rect.height/2-viewportCenterY);const localProgress=clamp01((metrics.viewportHeight-(rect.top-metrics.viewportTop))/Math.max(1,metrics.viewportHeight+rect.height));const visibleHeight=Math.min(rect.bottom,metrics.viewportBottom)-Math.max(rect.top,metrics.viewportTop);const visibility=clamp01(visibleHeight/Math.max(1,rect.height));const slotProps=slot?.props||{};const interaction=slotProps.interaction||{};return{id:slot.id,updatedAt:slot.updatedAt||0,rect:{top:rect.top,left:rect.left,width:rect.width,height:rect.height,right:rect.right,bottom:rect.bottom},localRect:{left:rect.left-metrics.viewportLeft,top:rect.top-metrics.viewportTop,width:rect.width,height:rect.height,right:rect.right-metrics.viewportLeft,bottom:rect.bottom-metrics.viewportTop},visible,pointerHit,domOpacity,visibility,distance,localProgress,hasRenderableModel:slotWebglActive&&!!_rootRecordKeyForSlot(slot),debug:{animationClip:slotProps.animClip??interaction.animClip??\"\",animationMode:String(slotProps.animClip??interaction.animClip??\"\").trim()?\"single\":\"all\",animationEnabled:true,animationHoverGate:false}};}).filter(Boolean);const activeSlot=measuredSlots.filter(slot=>slot.visible).sort((a,b)=>{const priority=_compareRootVariantPriority(a,b);if(priority!==0)return priority;return a.distance-b.distance;})[0]||measuredSlots.sort((a,b)=>{const priority=_compareRootVariantPriority(a,b);if(priority!==0)return priority;return a.distance-b.distance;})[0]||null;const maxScroll=Math.max(1,(metrics.scrollContainer?.scrollHeight||0)-(metrics.scrollContainer?.clientHeight||0));const scrollTop=currentScrollTop;const scrollProgress=clamp01(scrollTop/maxScroll);bridge.rendererState={mode:\"renderer\",activeSlotId:activeSlot?.id||\"\",activeRect:activeSlot?.rect||null,activeLocalRect:activeSlot?.localRect||null,activeProgress:activeSlot?.localProgress??0,activeVisibility:activeSlot?.visibility??0,scrollContainer:metrics.scrollContainer,isDocumentScroll:metrics.isDocument,scrollLeft:metrics.scrollLeft,scrollTop,scrollProgress,viewportWidth,viewportHeight,viewportLeft:metrics.viewportLeft,viewportTop:metrics.viewportTop,viewportRight:metrics.viewportRight,viewportBottom:metrics.viewportBottom,containerRect:metrics.containerRect,canvasPaddingRatio:_ROOT_SCROLL_CANVAS_PADDING,canvasPaddingPx:padPx,canvasHeight:viewportHeight+padPx*2,suppressHoverUntil:scrollState.suppressHoverUntil,pointerActive:!!pointerState.active,pointerX:pointerState.x,pointerY:pointerState.y,pointerEvent:pointerState.event,pointerSeq:pointerState.seq,slots:measuredSlots,preloadSlots:measuredSlots.filter(slot=>slot.hasRenderableModel).sort(_compareRootPreloadOrder).slice(0,Math.max(8,bridge.contextBudget||0)),debugSlots:measuredSlots.filter(slot=>slot.visible).slice(0,8).map(slot=>({id:slot.id,pointerHit:!!slot.pointerHit,domOpacity:Number(slot.domOpacity||0).toFixed(3),visibility:Number(slot.visibility||0).toFixed(3),animOn:!!slot.debug?.animationEnabled,hoverGate:!!slot.debug?.animationHoverGate,animMode:slot.debug?.animationMode||\"\",animClip:slot.debug?.animationClip||\"\"})),updatedAt:performance.now()};const now=performance.now();if(debug||(activeSlot?.id||\"\")!==lastActiveId){lastActiveId=activeSlot?.id||\"\";_emitImport3DBridge();}else if(now-bootStartedAt<3e3&&now-lastBootEmitAt>250){lastBootEmitAt=now;_emitImport3DBridge();}rafId=window.requestAnimationFrame(tick);};tick();return()=>{if(rafId)window.cancelAnimationFrame(rafId);window.removeEventListener(\"pointermove\",onPointerMove);window.removeEventListener(\"mousemove\",onPointerMove);window.removeEventListener(\"pointerleave\",onPointerLeave);window.removeEventListener(\"wheel\",suspendHoverForScroll);window.removeEventListener(\"touchmove\",suspendHoverForScroll);bridge.rendererState=null;_emitImport3DBridge();};},[mode]);React.useEffect(()=>{if(typeof window===\"undefined\")return;// UX Fix: Do not initialize the shared renderer on the Framer Design Canvas.\n// In the editor, slots handle their own rendering (standalone) for better UX.\n// We use RenderTarget.current() directly for maximum reliability in distinguishing Canvas vs Preview.\nif(mode!==\"renderer\"||RenderTarget.current()===RenderTarget.canvas)return;_installRootPreloadBridge();const bridge=_getImport3DBridgeState();// Guard: only the first root component should create renderer\nif((bridge.rootCount||0)>1){console.warn(`[Import_3D] Skipping renderer creation for duplicate root (rootCount: ${bridge.rootCount}). Only the first ThreeJSRuntimeRoot creates the shared renderer.`);return;}const rootOwnerId=rootInstanceIdRef.current;const canvas=document.createElement(\"canvas\");rootCanvasRef.current=canvas;canvas.setAttribute(\"data-import-3d-root-canvas\",\"true\");canvas.setAttribute(\"data-import-3d-renderer-owner\",rootOwnerId);canvas.style.position=\"absolute\";canvas.style.left=\"0\";canvas.style.top=\"0\";canvas.style.display=\"none\";canvas.style.pointerEvents=\"none\";canvas.style.zIndex=String(canvasZIndex??10);canvas.style.transform=\"translate3d(0,0,0)\";canvas.style.willChange=\"transform\";const renderer=new THREE.WebGLRenderer({canvas,alpha:true,antialias:!!nativeAntialias,powerPreference:\"high-performance\",premultipliedAlpha:true,stencil:false});renderer.setClearColor(0,0);renderer.__import3DRendererOwner=rootOwnerId;_debugImport3DRendererEvent(\"create\",{role:\"root\",ownerId:rootOwnerId,canvas,bridgeMode:bridge.renderMode,renderTarget:RenderTarget.current(),rootCount:bridge.rootCount||0,slotCount:bridge.slots?.size||0,forceLog:!!debug});const isMobile=(window.innerWidth||0)<=mobileBreakpoint;renderer.setPixelRatio(Math.min(window.devicePixelRatio||1,isMobile?dprCapMobile||1.2:dprCapDesktop||1.5));renderer.setScissorTest(true);let rafId=0;let lastWidth=0;let lastHeight=0;let lastDpr=0;let lastRootPerfLog=0;let lastPrewarmAt=0;// Track local rects rendered in the previous frame so we can clear\n// stale regions (slots that disappeared/moved) without a full canvas clear.\nlet lastRenderedLocalRects=[];const records=new Map;const preloadSigs=new Map;// Mirrors Slot's performancePauseHidden/performancePauseOffscreen\n// (slotRuntime.tsx). One shared page-visibility flag for all records\n// (tab visibility is global) plus a per-record IntersectionObserver\n// so an individual slot that scrolls off-screen can be paused while\n// other slots sharing this Root canvas keep rendering.\nlet rootPageVisible=typeof document===\"undefined\"?true:!document.hidden;const onRootVisibilityChange=()=>{rootPageVisible=!document.hidden;};document.addEventListener(\"visibilitychange\",onRootVisibilityChange);const rootRecordObservers=new Map;const _ensureRootRecordObserver=(record,slot)=>{if(!record||!slot?.element||typeof IntersectionObserver===\"undefined\")return;if(record._rootObservedElement===slot.element)return;const prevObserver=rootRecordObservers.get(record.key);prevObserver?.disconnect?.();record._rootInViewport=true;const observer=new IntersectionObserver(([entry])=>{record._rootInViewport=!!entry?.isIntersecting;},{threshold:[0,.01]});observer.observe(slot.element);rootRecordObservers.set(record.key,observer);record._rootObservedElement=slot.element;};const groupedRuntimeCfgCache=new Map;let groupedRenderViewsSig=\"\";let groupedRenderViewsCache=[];let disposed=false;let hostNode=null;let documentCanvasClipper=null;let patchedPositionHost=null;let patchedPositionPrev=\"\";const restorePatchedHost=()=>{if(patchedPositionHost){patchedPositionHost.style.position=patchedPositionPrev;patchedPositionHost=null;patchedPositionPrev=\"\";}};// Uses the top-level getFramerRuntimeMode() with the\n// React-hook-derived isOnFramerCanvas for accurate detection.\nconst getRuntimeMode=()=>getFramerRuntimeMode(isOnFramerCanvas);const getDocumentCanvasHeight=state=>{const scrollEl=document.scrollingElement||document.documentElement||document.body;const scrollTop=scrollEl?.scrollTop||window.scrollY||state?.scrollTop||0;let contentBottom=Math.max(1,Math.ceil(window.innerHeight||state?.viewportHeight||1));for(const child of Array.from(document.body.children)){if(child===documentCanvasClipper||child===canvas){continue;}if(!(child instanceof HTMLElement))continue;const style=window.getComputedStyle(child);if(style.position===\"fixed\")continue;const rect=child.getBoundingClientRect();if(rect.width<=0&&rect.height<=0)continue;contentBottom=Math.max(contentBottom,Math.ceil(rect.bottom+scrollTop),Math.ceil(child.offsetTop+Math.max(child.scrollHeight,child.offsetHeight)));}if(!documentCanvasClipper?.parentElement){contentBottom=Math.max(contentBottom,Math.ceil(scrollEl?.scrollHeight||0),Math.ceil(document.documentElement?.scrollHeight||0),Math.ceil(document.body?.scrollHeight||0));}return Math.max(1,contentBottom);};const ensureDocumentCanvasClipper=state=>{if(!documentCanvasClipper){documentCanvasClipper=document.createElement(\"div\");documentCanvasClipper.setAttribute(\"data-import-3d-root-canvas-clipper\",\"true\");documentCanvasClipper.style.position=\"absolute\";documentCanvasClipper.style.left=\"0\";documentCanvasClipper.style.top=\"0\";documentCanvasClipper.style.width=\"100%\";documentCanvasClipper.style.overflow=\"hidden\";documentCanvasClipper.style.pointerEvents=\"none\";documentCanvasClipper.style.zIndex=String(canvasZIndex??10);documentCanvasClipper.style.contain=\"paint\";}const framerRuntimeMode=getRuntimeMode();if(framerRuntimeMode===\"canvas\"||framerRuntimeMode===\"preview\"){documentCanvasClipper.style.height=document.documentElement.scrollHeight+\"px\";}else{documentCanvasClipper.style.height=`${getDocumentCanvasHeight(state)}px`;}if(documentCanvasClipper.parentElement!==document.body){document.body.appendChild(documentCanvasClipper);}return documentCanvasClipper;};const ensureCanvasHost=state=>{if(state?.isDocumentScroll){restorePatchedHost();const clipper=ensureDocumentCanvasClipper(state);if(canvas.parentElement&&canvas.parentElement!==clipper){canvas.parentElement.removeChild(canvas);}if(canvas.parentElement!==clipper){clipper.appendChild(canvas);}canvas.style.zIndex=\"0\";hostNode=clipper;return;}const nextHost=state&&!state.isDocumentScroll&&state.scrollContainer?state.scrollContainer:document.body;if(!nextHost||nextHost===hostNode)return;if(canvas.parentElement&&canvas.parentElement!==nextHost){canvas.parentElement.removeChild(canvas);}if(nextHost!==document.body&&nextHost instanceof HTMLElement&&window.getComputedStyle(nextHost).position===\"static\"){restorePatchedHost();patchedPositionHost=nextHost;patchedPositionPrev=nextHost.style.position||\"\";nextHost.style.position=\"relative\";}else if(patchedPositionHost&&patchedPositionHost!==nextHost){restorePatchedHost();}nextHost.appendChild(canvas);canvas.style.zIndex=String(canvasZIndex??10);hostNode=nextHost;};const ensureRootMainModelLoaded=(record,slot,rect,runtimeCfg,recordKey)=>{const url=_rootModelUrlFromProps(slot.props);if(!url){record.loadedUrl=\"\";record.loadingUrl=\"\";if(_rootHasRenderableSubScenes(slot.props,runtimeCfg)){_syncRootSubScenes(record,slot.props,runtimeCfg);}return;}if(record.loadedUrl===url&&record.model)return;if(record.loadingUrl===url&&record._rootLoadPromise)return;if(record._rootNextLoadRetryAt&&performance.now()<record._rootNextLoadRetryAt){return;}record.loadingUrl=url;record._rootNextLoadRetryAt=0;if(!_rootModelCache.has(url)){_notifyRootModelLoadingStart();}record._rootLoadPromise=_loadRootModel(url).then(loaded=>{if(disposed||records.get(recordKey)!==record)return;if(record.model){record.scene.remove(record.model);record.mixer?.stopAllAction?.();}const model=SkeletonUtils.clone(loaded.object);const safeAnimations=_sanitizeAnimationClipsForObject(model,loaded.animations||[]);const normalizeScale=_centerAndNormalizeRootModel(model);const fitCamera=_makeRootCamera(runtimeCfg,rect.width/Math.max(1,rect.height));const normalizedSize=_computeMeshOnlyBoundingBox(model).getSize(new THREE.Vector3);const fitRatio=_getAutoFitRatio(fitCamera,normalizedSize);_prepareRootModel(model);// OPTIMIZATION: Geometry Instancing and Merging for Static Models\nif(runtimeCfg.autoMergeMeshes&&safeAnimations.length===0){_optimizeStaticGeometries(model);}// OPTIMIZATION: BVH Generation for Fast Raycasting\n_computeBVHForModel(model);// OPTIMIZATION (Issue #5): Disable matrixAutoUpdate for internal meshes\n// if the model is completely static (no animations). This saves CPU matrix\n// calculation time every frame. The root model handles the slot's layout transform.\nif(safeAnimations.length===0){model.traverse(child=>{if(child.isMesh&&!child.isSkinnedMesh){child.updateMatrix();child.matrixAutoUpdate=false;}});}_cacheRootObjectBaseBounds(model);model.userData._rootFormat=loaded.format||\"\";model.userData._rootNormalizeScale=normalizeScale;model.userData._rootNormalizedSize=normalizedSize.clone();model.userData._rootFitRatio=fitRatio;record.model=model;record.animations=safeAnimations;record.mixer=record.animations.length?new THREE.AnimationMixer(model):null;record._animationActionCache=new Set;record._activeAnimationAction=null;record._activeAnimationKey=\"\";record._activeAnimationClipName=\"\";record._lastAnimationRequestSig=\"\";if(_rootShouldAnimateAppear(runtimeCfg)){record._rootAppearPendingReplay=true;}record.loadedUrl=url;record.loadingUrl=\"\";record._rootLoadPromise=null;record.scene.add(model);_markRootHoverMeshesDirty(record);_applyRootSlotTransform(model,slot.props,rect.width);// NOTE: Slot's progressive-loading placeholder swap\n// (_storeAndReplacePlaceholder/_restoreProgressiveMaterials)\n// relies on a single shared, non-reentrant module-level\n// cache in materialSystem.tsx that gets fully cleared on\n// every call. That's safe for Slot (one model at a time\n// per component instance) but not for Root, which can\n// load multiple slots concurrently on the same shared\n// renderer — a second slot's load wipes the first slot's\n// cache entry, permanently stranding it on the gray\n// placeholder material. Root intentionally does NOT mirror\n// progressive loading until materialSystem.tsx supports\n// concurrent/keyed placeholder state.\n_applyRootCanonicalMaterial(model,runtimeCfg);_safeSyncRootAnimations(record,runtimeCfg,\"main-load\");_syncRootSubScenes(record,slot.props,runtimeCfg);// Compile shaders asynchronously so the first render frame\n// does not block the main thread with GPU shader compilation.\n// _rootShaderReady=false prevents renderThreeJSRuntimeScene\n// from issuing any draw calls until compile is done.\nrecord._rootShaderReady=false;// CRITICAL: Sync the visual pipeline (environment maps, lights, etc.)\n// BEFORE compiling. If we compile without the env map, the shader\n// lacks USE_ENVMAP. When the next frame applies the env map, the\n// pre-compiled shader is invalidated, causing a synchronous stall!\n_syncRootVisualRuntimePipeline(record,runtimeCfg,renderer);const _compileCamera=fitCamera||record.camera;const _compileAsync=renderer.compileAsync?.bind?.(renderer);if(_compileAsync&&_compileCamera){_compileAsync(record.scene,_compileCamera).catch(()=>{}).finally(()=>{record._rootShaderReady=true;requestAnimationFrame(()=>{requestAnimationFrame(_notifyRootModelLoadingComplete);});});}else{// No async compile — do sync compile now (outside RAF),\n// so the cost is paid in the loader microtask, not render loop.\nif(_compileCamera){try{renderer.compile(record.scene,_compileCamera);}catch(_e){/* */}}record._rootShaderReady=true;requestAnimationFrame(()=>{requestAnimationFrame(_notifyRootModelLoadingComplete);});}}).catch(error=>{record.loadingUrl=\"\";record._rootLoadPromise=null;record._rootNextLoadRetryAt=performance.now()+1e3;_notifyRootModelLoadingComplete();console.warn(\"[Import_3D_Canvas_Root] model load failed\",error);});};const getRecord=(slot,rect)=>{const recordKey=_rootRecordKeyForSlot(slot);if(!recordKey)return null;const runtimeCfg=_resolveRootRuntimeConfig(slot?.props,rect?.width||0);let record=records.get(recordKey);if(!record){record=_makeRootScene(runtimeCfg,rect.width/Math.max(1,rect.height));record.slotId=slot.id;record.key=recordKey;_ensureRootRuntimeAdapter(record,renderer);records.set(recordKey,record);}record._rootRuntimeCfg=runtimeCfg;_ensureRootRecordObserver(record,slot);ensureRootMainModelLoaded(record,slot,rect,runtimeCfg,recordKey);return record;};const createThreeJSRuntimeScene=(slot,rect)=>{return getRecord(slot,rect);};const prewarmThreeJSRuntimeScene=(slot,measured,record)=>{if(!slot?.props||!record||measured?.visible)return false;if(!record.model&&record.subScenes?.size===0)return false;const rect=measured?.rect;if(!rect||rect.width<=1||rect.height<=1)return false;const runtimeCfg=_resolveRootRuntimeConfig(slot.props,rect.width||0);const sig=[record.loadedUrl||\"\",record.model?.uuid||\"\",record.subScenes?.size||0,runtimeCfg?._sceneConfigHash||sceneConfigHash(runtimeCfg),Math.round(rect.width),Math.round(rect.height)].join(\"|\");if(record._rootPrewarmSig===sig||record._rootPrewarmBusy){return false;}record._rootPrewarmBusy=true;record._rootPrewarmSig=sig;try{const aspect=rect.width/Math.max(1,rect.height);record.camera=_getRootCamera(record,runtimeCfg,aspect);_syncRootVisualRuntimePipeline(record,runtimeCfg,renderer);if(record.model){if(record.model.userData?._rootNormalizedSize){record.model.userData._rootFitRatio=_getAutoFitRatio(record.camera,record.model.userData._rootNormalizedSize);}_applyRootSlotTransform(record.model,slot.props,rect.width,null,record,runtimeCfg);_warmAnimationActions(record,record.mixer,record.animations||[],runtimeCfg);}for(const[,entry]of record.subScenes||[]){if(!entry?.group)continue;_warmAnimationActions(entry,entry.mixer,entry.animations||[],runtimeCfg);}const compileAsync=renderer.compileAsync?.bind?.(renderer);if(compileAsync){compileAsync(record.scene,record.camera).catch(()=>{}).finally(()=>{record._rootPrewarmBusy=false;});}else{renderer.compile?.(record.scene,record.camera);record._rootPrewarmBusy=false;}return true;}catch(error){record._rootPrewarmBusy=false;record._rootPrewarmSig=\"\";console.warn(\"[Import_3D_Canvas_Root] preload prewarm failed\",error);return false;}};const preloadThreeJSRuntimeSceneModels=(slot,measured)=>{if(!slot?.props||!measured?.rect)return;const urls=new Set;const mainUrl=_rootModelUrlFromProps(slot.props);if(mainUrl)urls.add(mainUrl);const runtimeCfg=_resolveRootRuntimeConfig(slot.props,measured.rect?.width||0);for(const item of _getRootRuntimeSceneItems(slot.props,runtimeCfg)){const url=_rootSubSceneUrlFromItem(item);if(url)urls.add(url);}const sig=Array.from(urls).sort().join(\"|\");const preloadKey=slot.id||sig;if(!sig||preloadSigs.get(preloadKey)===sig)return;preloadSigs.set(preloadKey,sig);for(const url of urls){_preloadRootModel3D(url);}createThreeJSRuntimeScene(slot,measured.rect);};const disposeThreeJSRuntimeScene=(record,slot=null,options={})=>{if(!record)return;if(record._rootModelHoverEndTimer){clearTimeout(record._rootModelHoverEndTimer);record._rootModelHoverEndTimer=null;record._rootModelHoverPendingEndEvent=null;}if(record._rootModelHoverActive){_setRootModelHoverActive(record,slot,false,null,true);}_unhighlightRootInteract(record,false);if(options?.destroy){if(record.mixer){_clearAnimationOnceCompleteListener(record,record.mixer);record.mixer.stopAllAction?.();}if(record.model){record.scene?.remove?.(record.model);_disposeMaterialsOnly(record.model);record.model=null;}if(record.subScenes){for(const[,entry]of record.subScenes){if(entry?.mixer){_clearAnimationOnceCompleteListener(entry,entry.mixer);entry.mixer.stopAllAction?.();}if(entry?.group){record.scene?.remove?.(entry.group);_disposeMaterialsOnly(entry.group);}}record.subScenes.clear?.();}_releaseEnvironmentMap(record);if(record.extraLightObjects?.length){for(const light of record.extraLightObjects){record.scene?.remove?.(light);if(light.target&&light.isSpotLight){record.scene?.remove?.(light.target);}light.shadow?.map?.dispose?.();light.dispose?.();}record.extraLightObjects.length=0;}if(record.ground){record.scene?.remove?.(record.ground);record.ground.geometry?.dispose?.();record.ground.material?.dispose?.();record.ground=null;}_disposeRootHelperObject(record.gridHelper);_disposeRootHelperObject(record.axesHelper);_disposeRootHelperObject(record.modelAxesHelper);record.gridHelper=null;record.axesHelper=null;record.modelAxesHelper=null;_disposeRootPostFxPipeline(record);_removeStatsMonitor(record);if(record.key){rootRecordObservers.get(record.key)?.disconnect?.();rootRecordObservers.delete(record.key);}record._rootObservedElement=null;record.timer?.dispose?.();record.timer=null;record.animations=[];record._animationActionCache?.clear?.();record._activeAnimationAction=null;record._activeAnimationKey=\"\";record._activeAnimationClipName=\"\";record._lastAnimationRequestSig=\"\";record._rootDisposed=true;}record._rootWasRendered=false;};const clickState={x:-1,y:-1,time:0};const dragState={active:false,kind:\"\",record:null,slot:null,rect:null,obj:null,config:null,plane:null,offset:new THREE.Vector3,pointerId:null,lastX:-1,lastY:-1,moved:false};const endRootModelPressHover=event=>{for(const[,record]of records){if(!record?._rootModelHoverActive)continue;const cfg=record._rootRuntimeCfg||{};if(!_isMobileInteraction(event,cfg))continue;_setRootModelHoverActive(record,record._rootModelHoverSlot,false,event,true);}};const onRootPointerDown=event=>{const x=event?.clientX??-1;const y=event?.clientY??-1;clickState.x=x;clickState.y=y;clickState.time=performance.now();dragState.active=false;dragState.kind=\"\";dragState.record=null;dragState.slot=null;dragState.rect=null;dragState.obj=null;dragState.config=null;dragState.plane=null;dragState.pointerId=event?.pointerId??null;dragState.lastX=x;dragState.lastY=y;dragState.moved=false;if(!Number.isFinite(x)||!Number.isFinite(y))return;const isTouch=event?.pointerType===\"touch\";const measuredSlots=bridge.rendererState?.slots||[];const candidates=makeGroupedRenderViews(measuredSlots.filter(measured=>measured?.visible)).filter(measured=>{const rect=measured?.measured?.rect;if(!rect||!measured?.measured?.visible)return false;return x>=rect.left&&x<=rect.right&&y>=rect.top&&y<=rect.bottom;}).sort((a,b)=>{const priority=_compareRootVariantPriority(a.measured,b.measured);if(priority!==0)return priority;return(a.measured?.distance||0)-(b.measured?.distance||0);});for(const view of candidates){const{measured,slot}=view;if(!slot?.props)continue;const cfg=_resolveRootRuntimeConfig(slot.props,measured.rect?.width||0);const isModelPress=_isMobileInteraction(event,cfg)&&_rootSlotNeedsModelHover(slot,cfg);if(!(cfg?.enableOrbitControls??false)&&!_rootSlotHasEnabledMeshInteractions(slot,cfg)&&!isModelPress)continue;const record=createThreeJSRuntimeScene(slot,measured.rect);if(!record?.model&&!record?.subScenes?.size)continue;const hits=_raycastRootInteractiveAt(record,measured.rect,x,y,cfg);if(!hits.length)continue;if(isModelPress){const owner=_findRootGroupSlotInfo(record,hits[0].object);const pressSlot=owner?.props&&owner.props!==slot?.props?{id:owner.id||slot?.id||\"\",props:owner.props,runtimeSettings:owner.runtimeSettings||null,element:slot?.element,scrollContainer:slot?.scrollContainer}:slot;_setRootModelHoverActive(record,pressSlot,true,event);if(!_rootSlotHasEnabledMeshInteractions(slot,cfg)&&!(cfg?.enableOrbitControls??false)){return;}}if(_rootSlotHasEnabledMeshInteractions(slot,cfg)){for(const hit of hits){const matched=_findRootInteractiveHit(record,measured.rect,hit.object,cfg);if(!matched)continue;if(isTouch){_highlightRootInteract(record,matched.obj,matched.config,event);}_applyRootPressInteract(record,matched.obj,matched.config);if(matched.config?.draggable){_rootHoverRaycaster.ray.intersectPlane(_rootInteractionPlane.setFromNormalAndCoplanarPoint(matched.config.dragPlane===\"xy\"?_rootInteractionVecA.set(0,0,1):matched.config.dragPlane===\"yz\"?_rootInteractionVecA.set(1,0,0):matched.config.dragPlane===\"screen\"?record.camera.getWorldDirection(_rootInteractionVecA).negate():_rootInteractionVecA.set(0,1,0),matched.obj.position),_rootInteractionVecB);dragState.active=true;dragState.kind=\"mesh\";dragState.record=record;dragState.slot=slot;dragState.rect=measured.rect;dragState.obj=matched.obj;dragState.config=matched.config;dragState.plane=_rootInteractionPlane.clone();dragState.offset.copy(_rootInteractionVecB).sub(matched.obj.position);if(!matched.obj._interactOrigPos){matched.obj._interactOrigPos=matched.obj.position.clone();}_emitRootMeshInteractionEvent(matched.config,\"onDragStart\",event,matched.obj);return;}break;}}if(!isTouch&&(cfg?.enableOrbitControls??false)){dragState.active=true;dragState.kind=\"orbit\";dragState.record=record;dragState.slot=slot;dragState.rect=measured.rect;return;}}};const onRootPointerMove=event=>{if(!dragState.active||!dragState.record)return;if(dragState.pointerId!=null&&event?.pointerId!=null&&event.pointerId!==dragState.pointerId){return;}const x=event?.clientX??-1;const y=event?.clientY??-1;if(!Number.isFinite(x)||!Number.isFinite(y))return;const dx=x-dragState.lastX;const dy=y-dragState.lastY;if(Math.abs(dx)+Math.abs(dy)>.5)dragState.moved=true;dragState.lastX=x;dragState.lastY=y;if(dragState.kind===\"mesh\"&&dragState.obj&&dragState.plane){const rect=dragState.rect||bridge.rendererState?.slots?.find?.(slot=>slot.id===dragState.slot?.id)?.rect||null;if(!rect)return;_rootHoverMouse.x=(x-rect.left)/Math.max(1,rect.width)*2-1;_rootHoverMouse.y=-((y-rect.top)/Math.max(1,rect.height))*2+1;_rootHoverRaycaster.setFromCamera(_rootHoverMouse,dragState.record.camera);if(_rootHoverRaycaster.ray.intersectPlane(dragState.plane,_rootInteractionVecB)){_rootInteractionVecB.sub(dragState.offset);const constraint=dragState.config?.dragConstraint??0;const orig=dragState.obj._interactOrigPos;if(constraint>0&&orig){const dist=_rootInteractionVecB.distanceTo(orig);if(dist>constraint){_rootInteractionVecB.sub(orig).normalize().multiplyScalar(constraint).add(orig);}}dragState.obj.position.copy(_rootInteractionVecB);}return;}dragState.record._rootOrbitTheta=(dragState.record._rootOrbitTheta||0)-dx*.006;dragState.record._rootOrbitPhi=(dragState.record._rootOrbitPhi||0)-dy*.006;};const onRootPointerUp=event=>{const x=event?.clientX??-1;const y=event?.clientY??-1;const wasDragging=!!dragState.active&&!!dragState.moved;const dragKind=dragState.kind;const draggedRecord=dragState.record;const draggedObj=dragState.obj;const draggedConfig=dragState.config;for(const[,record]of records){_resetRootPressInteract(record);}dragState.active=false;dragState.kind=\"\";dragState.record=null;dragState.slot=null;dragState.rect=null;dragState.obj=null;dragState.config=null;dragState.plane=null;dragState.pointerId=null;if(dragKind===\"mesh\"&&draggedObj&&draggedConfig){if(draggedConfig.dragSnapBack&&draggedObj._interactOrigPos){draggedRecord._rootDragSnapBack={mesh:draggedObj,targetPos:draggedObj._interactOrigPos.clone()};}_emitRootMeshInteractionEvent(draggedConfig,\"onDragEnd\",event,draggedObj);if(event?.pointerType===\"touch\"){_unhighlightRootInteract(draggedRecord,true,event);}endRootModelPressHover(event);return;}endRootModelPressHover(event);if(!Number.isFinite(x)||!Number.isFinite(y))return;if(wasDragging)return;if(Math.abs(x-clickState.x)>8||Math.abs(y-clickState.y)>8||performance.now()-(clickState.time||0)>900){return;}const measuredSlots=bridge.rendererState?.slots||[];const candidates=makeGroupedRenderViews(measuredSlots.filter(measured=>measured?.visible)).filter(measured=>{const rect=measured?.measured?.rect;if(!rect||!measured?.measured?.visible)return false;return x>=rect.left&&x<=rect.right&&y>=rect.top&&y<=rect.bottom;}).sort((a,b)=>{const priority=_compareRootVariantPriority(a.measured,b.measured);if(priority!==0)return priority;return(a.measured?.distance||0)-(b.measured?.distance||0);});for(const view of candidates){const{measured,slot}=view;const record=createThreeJSRuntimeScene(slot,measured.rect);if(!record?.model&&!record?.subScenes?.size)continue;const cfg=record._rootRuntimeCfg||_resolveRootRuntimeConfig(slot?.props,measured.rect?.width||0);const hits=_raycastRootInteractiveAt(record,measured.rect,x,y,cfg);if(!hits.length)continue;const hitSlotInfo=_findRootGroupSlotInfo(record,hits[0].object);const hitSlotProps=hitSlotInfo?.props||slot?.props;const hitRuntime=hitSlotInfo?.runtimeSettings||hitSlotProps?.__import3DRuntimeSettings||null;const handler=hitSlotProps?.onModelClick||hitRuntime?.onModelClick;try{handler?.(event);}catch(error){console.warn(\"[Import_3D_Canvas_Root] model click handler failed\",error);}if(_rootSlotHasEnabledMeshInteractions(slot,cfg)){for(const hit of hits){const matched=_findRootInteractiveHit(record,measured.rect,hit.object,cfg);if(!matched)continue;_emitRootMeshInteractionEvent(matched.config,\"onMeshClick\",event,matched.obj);_applyRootMeshClickAction(record,matched.config,event,matched.obj);if(event?.pointerType===\"touch\"){_unhighlightRootInteract(record,true,event);}return;}}return;}};// Mirrors Slot's scroll-to-zoom gating (slotRuntime.tsx onCanvasWheel):\n// only capture the wheel event (and zoom) when the slot under the\n// cursor has enableZoom on and isn't using scroll-driven animation.\nconst onRootCanvasWheel=event=>{const x=event?.clientX??-1;const y=event?.clientY??-1;if(!Number.isFinite(x)||!Number.isFinite(y))return;const measuredSlots=bridge.rendererState?.slots||[];const candidates=makeGroupedRenderViews(measuredSlots.filter(measured=>measured?.visible)).filter(measured=>{const rect=measured?.measured?.rect;if(!rect||!measured?.measured?.visible)return false;return x>=rect.left&&x<=rect.right&&y>=rect.top&&y<=rect.bottom;});for(const view of candidates){const{measured,slot}=view;if(!slot?.props)continue;const cfg=_resolveRootRuntimeConfig(slot.props,measured.rect?.width||0);if(!cfg?.enableZoom||cfg?.enableScrollAnimation)continue;const record=createThreeJSRuntimeScene(slot,measured.rect);if(!record)continue;event.preventDefault?.();const factor=Math.exp((event.deltaY||0)*.0015);record._rootOrbitZoom=Math.max(.2,Math.min(4,(record._rootOrbitZoom??1)*factor));return;}};canvas.addEventListener(\"wheel\",onRootCanvasWheel,{passive:false});window.addEventListener(\"pointerdown\",onRootPointerDown,{passive:true});window.addEventListener(\"pointermove\",onRootPointerMove,{passive:true});window.addEventListener(\"pointerup\",onRootPointerUp,{passive:true});window.addEventListener(\"pointercancel\",onRootPointerUp,{passive:true});const renderThreeJSRuntimeScene=(record,measured,state)=>{const localRect=measured?.localRect;if(!record||!localRect)return;if(!record.model&&record.subScenes.size===0)return;// Skip rendering until async shader compilation completes.\n// _rootShaderReady is set to false after model load and true\n// once compileAsync resolves, preventing a synchronous GPU stall\n// on the first rendered frame.\nif(record._rootShaderReady===false)return;const padPx=state?.canvasPaddingPx||0;const viewLeft=localRect.left;const viewTop=localRect.top+padPx;const viewRight=viewLeft+localRect.width;const viewBottom=viewTop+localRect.height;const scissorLeft=Math.max(0,viewLeft);const scissorRight=Math.min(lastWidth,viewRight);const scissorTop=Math.max(0,viewTop);const scissorBottom=Math.min(lastHeight,viewBottom);const scissorWidth=scissorRight-scissorLeft;const scissorHeight=scissorBottom-scissorTop;if(scissorWidth<=1||scissorHeight<=1)return;renderer.setViewport(Math.round(viewLeft),Math.round(lastHeight-viewBottom),Math.round(localRect.width),Math.round(localRect.height));renderer.setScissor(Math.round(scissorLeft),Math.round(lastHeight-scissorBottom),Math.round(scissorWidth),Math.round(scissorHeight));const cfg=record._rootRuntimeCfg||_resolveRootRuntimeConfig(record._rootLatestSlotProps||{},localRect.width||0);// Apply per-slot Tone Mapping and Exposure to shared renderer\n// FIX: In bridge mode, switching tone mapping per-slot causes massive shader recompilation\n// every frame. We lock it to ACESFilmic globally to prevent stuttering.\nif(bridge.renderMode!==\"bridge\"){renderer.toneMapping=TONE_MAPPINGS[cfg.toneMapping]||THREE.ACESFilmicToneMapping;}else{renderer.toneMapping=THREE.ACESFilmicToneMapping;}renderer.toneMappingExposure=cfg.exposure;// Continuous Interaction Updates\nconst dt=_getRootTimerDelta(record);if(cfg.enableParticles){_rootUpdateParticles(record,cfg.particleSpeed||1,cfg.particleSpread||10);}if(cfg?.cameraType===\"stereo\"){if(!record.stereoCamera){record.stereoCamera=new THREE.StereoCamera;}record.stereoCamera.eyeSep=cfg?.stereoEyeSep??.064;record.stereoCamera.update(record.camera);const halfWidth=localRect.width/2;const renderEye=(eyeCamera,eyeIndex)=>{const eyeLeft=viewLeft+halfWidth*eyeIndex;const eyeRight=eyeLeft+halfWidth;const eyeScissorLeft=Math.max(0,eyeLeft);const eyeScissorRight=Math.min(lastWidth,eyeRight);const eyeScissorWidth=eyeScissorRight-eyeScissorLeft;if(eyeScissorWidth<=1||scissorHeight<=1)return;renderer.setViewport(Math.round(eyeLeft),Math.round(lastHeight-viewBottom),Math.round(halfWidth),Math.round(localRect.height));renderer.setScissor(Math.round(eyeScissorLeft),Math.round(lastHeight-scissorBottom),Math.round(eyeScissorWidth),Math.round(scissorHeight));renderer.render(record.scene,eyeCamera);};renderEye(record.stereoCamera.cameraL,0);renderEye(record.stereoCamera.cameraR,1);return;}const hasPostFx=_ensureRootPostFxPipeline(record,renderer,localRect.width,localRect.height,cfg);if(hasPostFx&&record._rootComposer){if(record._filmGrain?.enabled){record._filmGrain.uniforms.time.value=performance.now()*.001;}renderer.setRenderTarget(null);renderer.setViewport(Math.round(viewLeft),Math.round(lastHeight-viewBottom),Math.round(localRect.width),Math.round(localRect.height));renderer.setScissor(Math.round(scissorLeft),Math.round(lastHeight-scissorBottom),Math.round(scissorWidth),Math.round(scissorHeight));renderer.setScissorTest(true);record._rootComposer.renderToScreen=true;record._rootComposer.render();}else{renderer.render(record.scene,record.camera);}};const updateRootHelperOverlay=next=>{const tooltip=next?.tooltip||null;const tree=next?.tree||[];const sig=[tooltip?.name||\"\",tooltip?Math.round(tooltip.screenX||0):-1,tooltip?Math.round(tooltip.screenY||0):-1,tree.length,tree[0]?.name||\"\"].join(\"|\");if(rootHelperRef.current?._sig===sig)return;const value={tooltip,tree,meshCount:tree.filter(item=>!item.isGroup).length,_sig:sig};rootHelperRef.current=value;setRootHelper(value);};const syncRootHelperOverlay=(state,visibleViews)=>{if(!visibleViews?.length){updateRootHelperOverlay(null);return;}const pointerX=state?.pointerX;const pointerY=state?.pointerY;const pointerActive=!!state?.pointerActive&&Number.isFinite(pointerX)&&Number.isFinite(pointerY);let fallback=null;for(const view of visibleViews){const measured=view?.measured||view;const slot=view?.slot||bridge.slots?.get?.(measured.id);if(!slot?.props)continue;const cfg=_resolveRootRuntimeConfig(slot.props,measured.rect?.width||0);if(!cfg?.showMeshHelper)continue;const recordKey=_rootRecordKeyForSlot(slot);const record=recordKey?records.get(recordKey):null;if(!record||!record.model&&!record.subScenes?.size){continue;}const tree=_buildRootMeshHelperTree(record);if(!fallback)fallback={tooltip:null,tree};const rect=measured.rect;const inside=pointerActive&&rect&&pointerX>=rect.left&&pointerX<=rect.right&&pointerY>=rect.top&&pointerY<=rect.bottom;if(!inside)continue;const hits=_raycastRootInteractiveAt(record,rect,pointerX,pointerY,cfg);if(!hits.length){updateRootHelperOverlay({tooltip:null,tree});return;}const tooltip=_buildRootMeshHelperInfo(record,hits[0].object,rect,pointerX,pointerY);updateRootHelperOverlay({tooltip,tree});return;}updateRootHelperOverlay(fallback);};const syncThreeJSRuntimeScene=(slot,measured,state,useCanvasAppearStyle)=>{const rect=measured?.rect;const localRect=measured?.localRect;if(!slot?.props||!rect||!localRect||rect.width<=1||rect.height<=1){return;}const record=createThreeJSRuntimeScene(slot,rect);if(!record)return;record._rootLatestSlotProps=slot.props;record._rootLatestSlotRuntimeSettings=slot.runtimeSettings;record._rootFrameId=(record._rootFrameId||0)+1;const runtimeCfg=record._rootRuntimeCfg||_resolveRootRuntimeConfig(slot?.props,rect?.width||0);if(runtimeCfg?.hasAnimationOnceCompleteHandler){runtimeCfg.onAnimationOnceComplete=_getRootAnimationOnceProxy(record);}const rootSceneItems=_getRootRuntimeSceneItems(slot.props,runtimeCfg);_syncRootSubScenes(record,slot.props,runtimeCfg,rootSceneItems);const dt=_getRootTimerDelta(record);const aspect=rect.width/Math.max(1,rect.height);record.camera=_getRootCamera(record,runtimeCfg,aspect);_applyRootCameraSmoothing(record,runtimeCfg,rect.width);_applyRootOrbitCamera(record,runtimeCfg);_syncRootVisualRuntimePipeline(record,runtimeCfg,renderer,dt);_syncRootHelperRuntime(record,runtimeCfg);_syncRootMouseRotationState(record,rect,state);if(record._rootWasRendered===false&&_rootShouldAnimateAppear(runtimeCfg)){record._rootAppearPendingReplay=true;}record._rootWasRendered=true;const appearVisibility=_syncRootAppear(record,runtimeCfg);const domOpacity=Math.max(0,Math.min(1,measured?.domOpacity??1));record._rootDomOpacity=domOpacity;const renderVisibility=appearVisibility*domOpacity;const positionState=_getRootPositionState(record,slot.props,slot,rect,record.camera,runtimeCfg);if(record.model){if(record.model.userData?._rootNormalizedSize){record.model.userData._rootFitRatio=_getAutoFitRatio(record.camera,record.model.userData._rootNormalizedSize);}_applyRootSlotTransform(record.model,slot.props,rect.width,positionState,record,runtimeCfg);if(runtimeCfg.enableAutoRotate??false){const rotateSpeed=runtimeCfg.autoRotateSpeed??.5;record.model.userData._rootAutoRotateY=(record.model.userData._rootAutoRotateY||0)+dt*rotateSpeed;record.model.rotation.y+=record.model.userData._rootAutoRotateY;}else{record.model.userData._rootAutoRotateY=0;}const floatEnabled=runtimeCfg.enableFloat??false;if(floatEnabled){const speed=runtimeCfg.floatSpeed??.4;const amp=runtimeCfg.floatAmplitude??.8;const baseY=record.model.position.y;record.model.userData._rootFloatBaseY=baseY;record.model.position.y=baseY+Math.sin(performance.now()*.001*speed)*amp;}else{record.model.userData._rootFloatBaseY=record.model.position.y;}_resetRootAppearTransformOffset(record.model);_applyRootAppearTransformOffset(record.model,appearVisibility,runtimeCfg);_applyRootMouseRotation(record.model,record,runtimeCfg);_syncRootAppearDissolve(record.model,appearVisibility,runtimeCfg);const modelOpacityVisibility=runtimeCfg.dissolveEnabled?domOpacity:renderVisibility;_applyRootAppearOpacity(record.model,useCanvasAppearStyle?1:modelOpacityVisibility);_safeUpdateRootMixer(record,dt,\"main\");record._rootMainGroundY=record.model.userData?._rootBaseGroundWorldY??record.model.position.y+(record.model.userData?._rootBaseGroundY??0)-.001;}const sceneItems=rootSceneItems;for(const[key,entry]of record.subScenes){const index=Number(String(key).split(\"|\")[0]);const item=sceneItems[index]||{};if(!entry.group)continue;const itemRuntimeCfg=item?.__groupRuntimeCfg||runtimeCfg;const itemMeasured=item?.__groupMeasured||measured;const itemSlot=item?.__groupSlotProps?{id:item?.__groupSlotId||slot.id,props:item.__groupSlotProps,runtimeSettings:item?.__groupRuntimeSettings||null,element:slot.element,scrollContainer:slot.scrollContainer}:slot;entry._rootOwnRuntimeCfg=item?.__groupRuntimeCfg||null;entry._rootGroupSlotProps=item?.__groupSlotProps||null;entry._rootGroupRuntimeSettings=item?.__groupRuntimeSettings||null;const itemMaterialHash=itemRuntimeCfg?._materialHash??materialHash(itemRuntimeCfg);if(entry._rootOwnRuntimeCfg&&entry._rootOwnMaterialHash!==itemMaterialHash){_applyRootCanonicalMaterial(entry.group,itemRuntimeCfg);entry._rootOwnMaterialHash=itemMaterialHash;}if(entry.group.userData?._rootNormalizedSize){entry.group.userData._rootFitRatio=item?.parentToMain&&record.model?record.model.userData?._rootFitRatio||1:_getAutoFitRatio(record.camera,entry.group.userData._rootNormalizedSize);}const itemPositionState=item?.__groupRuntimeCfg?_getRootPositionState(record,item.__groupSlotProps||slot.props,itemSlot,itemMeasured?.rect||rect,record.camera,itemRuntimeCfg):positionState;entry.group.userData._rootGroupSlotProps=item?.__groupSlotProps||null;entry.group.userData._rootGroupRuntimeSettings=item?.__groupRuntimeSettings||null;entry.group.userData._rootGroupSlotId=item?.__groupSlotId||\"\";if(item?.__groupAnchorPx){const visible=_getAutoFitVisibleSize(record.camera,record.camera?.position?.length?.()||1);item.__groupAnchor={x:item.__groupAnchorPx.x/Math.max(1,rect.width||1)*visible.width,y:-item.__groupAnchorPx.y/Math.max(1,rect.height||1)*visible.height};}_applyRootSubSceneTransform(entry,item,slot.props,record.model,record._rootMainGroundY??0,itemMeasured?.rect?.width||rect.width,itemPositionState,record,itemRuntimeCfg);if(entry.group.visible===false)continue;if(itemRuntimeCfg.enableAutoRotate??false){const rotateSpeed=itemRuntimeCfg.autoRotateSpeed??.5;entry.group.userData._rootAutoRotateY=(entry.group.userData._rootAutoRotateY||0)+dt*rotateSpeed;entry.group.rotation.y+=entry.group.userData._rootAutoRotateY;}else{entry.group.userData._rootAutoRotateY=0;}if(itemRuntimeCfg.enableFloat??false){const speed=itemRuntimeCfg.floatSpeed??.4;const amp=itemRuntimeCfg.floatAmplitude??.8;const baseY=entry.group.position.y;entry.group.userData._rootFloatBaseY=baseY;entry.group.position.y=baseY+Math.sin(performance.now()*.001*speed)*amp;}else{entry.group.userData._rootFloatBaseY=entry.group.position.y;}const itemAppearVisibility=item?.__groupRuntimeCfg?_syncRootAppear(entry,itemRuntimeCfg):appearVisibility;const itemDomOpacity=Math.max(0,Math.min(1,itemMeasured?.domOpacity??measured?.domOpacity??1));const itemRenderVisibility=itemAppearVisibility*itemDomOpacity;_resetRootAppearTransformOffset(entry.group);_applyRootAppearTransformOffset(entry.group,itemAppearVisibility,itemRuntimeCfg);_applyRootMouseRotation(entry.group,record,itemRuntimeCfg);_syncRootAppearDissolve(entry.group,itemAppearVisibility,itemRuntimeCfg);const itemOpacityVisibility=itemRuntimeCfg.dissolveEnabled?itemDomOpacity:itemRenderVisibility;_applyRootAppearOpacity(entry.group,useCanvasAppearStyle?1:itemOpacityVisibility);_safeUpdateRootMixer(entry,dt,\"sub-scene\");}_safeSyncRootModelHover(record,slot,rect,state);_syncRootMeshHover(record,slot,rect,state,runtimeCfg);_syncRootMeshAnimations(record,runtimeCfg);_syncRootMeshInteractionFrame(record,runtimeCfg,dt);_applyRootMeshHoverTransforms(record);if(record.model){_safeSyncRootAnimations(record,runtimeCfg,\"main\");}const sceneItemsForAnimation=rootSceneItems;for(const[key,entry]of record.subScenes){const index=Number(String(key).split(\"|\")[0]);const item=sceneItemsForAnimation[index]||{};const baseRuntimeCfg=item?.__groupRuntimeCfg||runtimeCfg;const allowGroupedOnceComplete=!!(item?.__groupRuntimeCfg&&baseRuntimeCfg?.hasAnimationOnceCompleteHandler);const subAnimClip=item?.animClip||\"\";const subAnimCfg=item?.animOverride?{...baseRuntimeCfg,enableAnimation:true,animationMode:String(subAnimClip).trim()?\"single\":\"all\",animationClip:subAnimClip,animationSpeed:item.animSpeed??1,animationBlendDuration:item.animBlend??baseRuntimeCfg.animationBlendDuration,animationLoopMode:item.animLoopMode??baseRuntimeCfg.animationLoopMode,animationWarp:item.animWarp??baseRuntimeCfg.animationWarp,animationSyncPhase:item.animSyncPhase??baseRuntimeCfg.animationSyncPhase,animationRestartOnSwitch:item.animRestart??baseRuntimeCfg.animationRestartOnSwitch,hasAnimationOnceCompleteHandler:allowGroupedOnceComplete,onAnimationOnceComplete:allowGroupedOnceComplete?baseRuntimeCfg.onAnimationOnceComplete:null}:{...baseRuntimeCfg,hasAnimationOnceCompleteHandler:allowGroupedOnceComplete,onAnimationOnceComplete:allowGroupedOnceComplete?baseRuntimeCfg.onAnimationOnceComplete:null};_safeSyncRootAnimations(entry,subAnimCfg,\"sub-scene\");}if(!record.model&&record.subScenes.size===0)return;return record;};const getRootRenderDpr=(state,width,height)=>{const isMobile=(window.innerWidth||0)<=mobileBreakpoint;const cap=isMobile?dprCapMobile||1.2:dprCapDesktop||1.5;let dpr=Math.min(window.devicePixelRatio||1,cap);let maxPixelCount=0;for(const measured of state?.slots||[]){if(!measured?.visible)continue;const slot=bridge.slots?.get?.(measured.id);if(!slot?.props)continue;const cfg=_resolveRootRuntimeConfig(slot.props,measured.rect?.width||0);const slotMax=cfg?.performanceMaxPixelCount||0;if(slotMax>0){maxPixelCount=maxPixelCount>0?Math.min(maxPixelCount,slotMax):slotMax;}}if(maxPixelCount>0){const cssPixels=Math.max(1,width*height);const targetPixels=cssPixels*dpr*dpr;if(targetPixels>maxPixelCount){dpr=Math.max(.5,Math.sqrt(maxPixelCount/cssPixels));}}return Math.max(.5,dpr);};const resize=state=>{const visualViewportWidth=Math.max(1,Math.round(window.visualViewport?.width||window.innerWidth||state?.viewportWidth||1));const width=Math.max(1,Math.min(Math.round(state?.viewportWidth||1),visualViewportWidth));const height=Math.max(1,Math.round(state?.canvasHeight||1));const dpr=getRootRenderDpr(state,width,height);if(width===lastWidth&&height===lastHeight&&Math.abs(dpr-lastDpr)<=.01)return;lastWidth=width;lastHeight=height;lastDpr=dpr;renderer.setPixelRatio(dpr);renderer.setSize(width,height,false);canvas.style.width=`${width}px`;canvas.style.height=`${height}px`;};const syncCanvasPlacement=state=>{if(!state){canvas.style.display=\"none\";return;}ensureCanvasHost(state);canvas.style.display=\"block\";canvas.style.transform=`translate3d(${Math.round(state.scrollLeft||0)}px, ${Math.round((state.scrollTop||0)-(state.canvasPaddingPx||0))}px, 0)`;};const getSlotGroupName=slot=>{const props=slot?.props||{};if(props.role!==\"group\"&&!props.asGroup)return\"\";return String(props.groupName||\"\").trim();};const getSlotGroupKey=slot=>getSlotGroupName(slot).toLowerCase();const getRenderViewKey=view=>{const recordKey=_rootRecordKeyForSlot(view?.slot)||\"\";return`${view?.measured?.id||\"\"}|${recordKey}`;};const getRenderViewRect=(view,state)=>{const rect=view?.measured?.localRect;if(!rect)return null;const padPx=state?.canvasPaddingPx||0;const left=Math.round(rect.left||0);const top=Math.round((rect.top||0)+padPx);const width=Math.round(rect.width||0);const height=Math.round(rect.height||0);if(width<=1||height<=1)return null;return{key:getRenderViewKey(view),sig:`${left}:${top}:${width}:${height}`,left,top,width,height};};const clearRootScissorRect=rect=>{const sl=Math.max(0,rect.left);const sr=Math.min(lastWidth,rect.left+rect.width);const st=Math.max(0,rect.top);const sb=Math.min(lastHeight,rect.top+rect.height);const sw=sr-sl;const sh=sb-st;if(sw<=1||sh<=1)return;renderer.setScissor(Math.round(sl),Math.round(lastHeight-sb),Math.round(sw),Math.round(sh));renderer.clearColor();renderer.clearDepth();};const rootHoverChannelActive=channel=>!!channel?.mesh&&Math.abs((channel.target??0)-(channel.progress??0))>.001;const rootHolderAnimating=holder=>{if(!holder?.mixer||!_canAdvanceAnimationMixer(holder,holder.mixer)){return false;}const action=holder._activeAnimationAction;return!action||action.isRunning?.()!==false;};const rootRecordHasActiveMotion=(record,cfg,state)=>{if(!record||!cfg)return false;if(record._rootAppearStart>0||record._rootAppearPendingReplay||(record._rootFadeProgress||0)>0){return true;}if(cfg.enableParticles||cfg.enableFloat||cfg.enableAutoRotate||cfg.enableFilmGrain||record._rootScrollSmoothingActive||record._rootMeshAnimationSmoothingActive){return true;}if(cfg.enableMouseRotation&&state?.pointerActive)return true;if(rootHolderAnimating(record))return true;if(rootHoverChannelActive(record._rootHoverLerp)||rootHoverChannelActive(record._rootHoverLerpOut)||rootHoverChannelActive(record._rootPressLerp)||!!record._rootDragSnapBack?.mesh){return true;}for(const[,entry]of record.subScenes||[]){const entryCfg=entry?._rootOwnRuntimeCfg||cfg;if(entry?._rootAppearStart>0||entry?._rootAppearPendingReplay||entryCfg?.enableFloat||entryCfg?.enableAutoRotate||entry?._rootScrollSmoothingActive||rootHolderAnimating(entry)){return true;}}return false;};const rootRenderSignature=(view,record,cfg,state)=>{const rect=view?.measured?.localRect||{};return[getRenderViewKey(view),view?.slot?.updatedAt||0,view?.measured?.updatedAt||0,Math.round(rect.left||0),Math.round(rect.top||0),Math.round(rect.width||0),Math.round(rect.height||0),Math.round((view?.measured?.domOpacity??1)*1e3),Math.round(state?.scrollLeft||0),Math.round(state?.scrollTop||0),cfg?._sceneConfigHash||\"\",cfg?._materialHash||\"\",cfg?._envHash||\"\",cfg?._effectsHash||\"\",cfg?.meshAnimationLookupKey||\"\",cfg?.meshInteractionLookupKey||\"\",record?.model?.uuid||\"\",record?.subScenes?.size||0,record?._rootAppearHash||\"\"].join(\"|\");};const shouldRenderRootRecord=(view,record,cfg,state)=>{if(!record)return false;if(cfg?.performanceMode&&(cfg.performancePauseHidden&&!rootPageVisible||cfg.performancePauseOffscreen&&record._rootInViewport===false)){return false;}if(record._rootShaderReady===false){record._rootDirtyFrames=Math.max(record._rootDirtyFrames||0,3);return false;}const sig=rootRenderSignature(view,record,cfg,state);if(sig!==record._rootLastRenderSig){record._rootLastRenderSig=sig;record._rootDirtyFrames=Math.max(record._rootDirtyFrames||0,3);}if(rootRecordHasActiveMotion(record,cfg,state)){record._rootDirtyFrames=Math.max(record._rootDirtyFrames||0,2);return true;}if((record._rootDirtyFrames||0)>0){record._rootDirtyFrames-=1;return true;}return false;};const getGroupedSlotCacheSignature=slot=>{const props=slot?.props||{};const runtime=slot?.runtimeSettings||props.__import3DRuntimeSettings||{};return[props.role||\"\",props.asGroup?1:0,props.groupName||\"\",_rootModelUrlFromProps(props),runtime._animationReplayHash||\"\",runtime._sceneConfigHash||\"\",runtime.meshInteractionLookupKey||\"\",runtime.meshAnimationLookupKey||\"\",JSON.stringify(props.meshInteractions||[]),JSON.stringify(props.meshAnimations||[]),JSON.stringify(_getRootRuntimeSceneItems(props,runtime).map(item=>({url:_rootSubSceneUrlFromItem(item),visible:item?.visible,scale:item?.scale,offX:item?.offX,offY:item?.offY,offZ:item?.offZ,rotX:item?.rotX,rotY:item?.rotY,rotZ:item?.rotZ,animOverride:item?.animOverride,animClip:item?.animClip})))].join(\":\");};const getGroupedSlotRuntimeCfg=(slot,measured)=>{const width=Math.round(measured?.rect?.width||0);const key=[slot?.id||\"\",getGroupedSlotCacheSignature(slot),width].join(\"|\");if(groupedRuntimeCfgCache.has(key)){return groupedRuntimeCfgCache.get(key);}const cfg=_resolveRootRuntimeConfig(slot?.props||{},width);groupedRuntimeCfgCache.set(key,cfg);if(groupedRuntimeCfgCache.size>128){const firstKey=groupedRuntimeCfgCache.keys().next().value;groupedRuntimeCfgCache.delete(firstKey);}return cfg;};const attachGroupedSlotRuntime=(item,slot,measured)=>{if(!item)return item;const resolved=resolveThreeJSRuntimeSubSceneItem(item);return{...resolved,__groupSlotId:slot?.id||\"\",__groupSlotProps:slot?.props||{},__groupRuntimeSettings:slot?.runtimeSettings||slot?.props?.__import3DRuntimeSettings||null,__groupMeasured:measured||null,__groupRuntimeCfg:getGroupedSlotRuntimeCfg(slot,measured)};};const slotModelAsSceneItem=(slot,measured)=>{const props=slot?.props||{};const rawTr=_resolveRootResponsiveTransform(props.transform||{},measured?.rect?.width||0);const runtime=slot?.runtimeSettings||props.__import3DRuntimeSettings||null;const tr=runtime?{scale:runtime.modelScale??rawTr.scale,offX:runtime.modelOffsetX??rawTr.offX,offY:runtime.modelOffsetY??rawTr.offY,offZ:runtime.modelOffsetZ??rawTr.offZ,rotX:runtime.modelRotationX??rawTr.rotX,rotY:runtime.modelRotationY??rawTr.rotY,rotZ:runtime.modelRotationZ??rawTr.rotZ}:rawTr;const source=props.modelSource||\"url\";const modelUrl=source===\"file\"?props.modelFile||props.modelUrl||\"\":props.modelUrl||props.modelUrlProp||props.modelFile||\"\";if(!String(modelUrl||\"\").trim())return null;return attachGroupedSlotRuntime({modelSource:source,modelUrl,modelFile:props.modelFile||\"\",visible:true,parentToMain:false,__fromGroupedSlot:true,scale:tr.scale??1,offX:tr.offX??0,offY:tr.offY??0,offZ:tr.offZ??0,rotX:tr.rotX??0,rotY:tr.rotY??0,rotZ:tr.rotZ??0,animOverride:false},slot,measured);};const unionMeasuredRects=members=>{const rects=members.map(m=>m.measured?.rect).filter(Boolean);const localRects=members.map(m=>m.measured?.localRect).filter(Boolean);const union=items=>{const left=Math.min(...items.map(r=>r.left));const top=Math.min(...items.map(r=>r.top));const right=Math.max(...items.map(r=>r.right));const bottom=Math.max(...items.map(r=>r.bottom));return{left,top,right,bottom,width:right-left,height:bottom-top};};return{rect:union(rects),localRect:union(localRects)};};const applyGroupedSlotAnchors=(items,groupMeasured)=>items.map(item=>{if(!item?.__fromGroupedSlot)return item;const childRect=item.__groupMeasured?.rect;const groupRect=groupMeasured?.rect;if(!childRect||!groupRect)return item;const childCenterX=childRect.left+childRect.width/2;const childCenterY=childRect.top+childRect.height/2;const groupCenterX=groupRect.left+groupRect.width/2;const groupCenterY=groupRect.top+groupRect.height/2;return{...item,__groupAnchorPx:{x:childCenterX-groupCenterX,y:childCenterY-groupCenterY}};});const makeGroupedRenderViews=visibleSlots=>{const sig=visibleSlots.map(measured=>{const slot=bridge.slots?.get?.(measured.id);const groupKey=getSlotGroupKey(slot);const rect=measured?.rect||{};const localRect=measured?.localRect||{};return[measured?.id||\"\",slot?.updatedAt||0,getGroupedSlotCacheSignature(slot),groupKey,Math.round(rect.left||0),Math.round(rect.top||0),Math.round(rect.width||0),Math.round(rect.height||0),Math.round(localRect.left||0),Math.round(localRect.top||0),Math.round(localRect.width||0),Math.round(localRect.height||0)].join(\":\");}).join(\"|\");if(sig===groupedRenderViewsSig){return groupedRenderViewsCache;}const views=[];const groups=new Map;for(const measured of visibleSlots){const slot=bridge.slots?.get?.(measured.id);const groupKey=getSlotGroupKey(slot);if(!groupKey){views.push({measured,slot});continue;}if(!groups.has(groupKey))groups.set(groupKey,[]);groups.get(groupKey).push({measured,slot});}for(const[groupKey,members]of groups){if(members.length<=1){views.push(members[0]);continue;}const leader=members.find(m=>!!_rootModelUrlFromProps(m.slot?.props))||members[0];const scenes=members.map(m=>slotModelAsSceneItem(m.slot,m.measured)).filter(Boolean);for(const member of members){const memberSceneItems=_getRootRuntimeSceneItems(member.slot?.props,member.slot?.runtimeSettings||member.slot?.props?.__import3DRuntimeSettings);scenes.push(...memberSceneItems.map(item=>attachGroupedSlotRuntime(item,member.slot,member.measured)));}const meshAnimations=members.flatMap(member=>[...member.slot?.props?.meshAnimations||[],..._objectEventScrollAnimations(member.slot?.props?.meshInteractions||[])]);const meshInteractions=members.flatMap(member=>member.slot?.props?.meshInteractions||[]);const rects=unionMeasuredRects(members);const groupName=getSlotGroupName(leader.slot)||groupKey;const measured={...leader.measured,id:`group:${groupKey}`,rect:rects.rect,localRect:rects.localRect,visible:true,visibility:Math.max(...members.map(m=>m.measured?.visibility||0)),domOpacity:Math.max(...members.map(m=>m.measured?.domOpacity??1))};const anchoredScenes=applyGroupedSlotAnchors(scenes,measured);const slot={...leader.slot,id:`group:${groupKey}`,props:{...leader.slot.props,groupName,modelUrl:\"\",modelUrlProp:\"\",modelFile:\"\",scenes:anchoredScenes,meshAnimations,meshInteractions},element:leader.slot.element,scrollContainer:leader.slot.scrollContainer,runtimeSettings:leader.slot.runtimeSettings};views.push({measured,slot});}groupedRenderViewsSig=sig;groupedRenderViewsCache=views.sort((a,b)=>_compareRootRenderOrder(a.measured,b.measured));return groupedRenderViewsCache;};const tick=()=>{try{const state=bridge.rendererState;syncCanvasPlacement(state);if(state){resize(state);renderer.setScissorTest(true);const budget=typeof bridge.contextBudget===\"number\"&&bridge.contextBudget>0?bridge.contextBudget:Number.POSITIVE_INFINITY;const visibleSlots=(state?.slots||[]).filter(slot=>slot.visible).sort(_compareRootRenderOrder).slice(0,budget);const renderViews=makeGroupedRenderViews(visibleSlots);state._renderViews=renderViews;state.renderedSlotCount=renderViews.length;const currentRenderedRects=renderViews.map(view=>getRenderViewRect(view,state)).filter(Boolean);const currentRectSigs=new Set(currentRenderedRects.map(rect=>rect.sig));// Clear only stale scissor regions. Unchanged visible slots\n// are cleared by renderer.render() inside their own scissor,\n// so clearing them here just duplicates GPU work.\nfor(const prevRect of lastRenderedLocalRects){if(!currentRectSigs.has(prevRect.sig)){clearRootScissorRect(prevRect);}}for(const view of renderViews){try{preloadThreeJSRuntimeSceneModels(view.slot,view.measured);}catch(error){console.warn(\"[Import_3D_Canvas_Root] grouped preload failed\",error);}}for(const measured of state?.preloadSlots||[]){const slot=bridge.slots?.get?.(measured.id);if(!slot)continue;try{const record=createThreeJSRuntimeScene(slot,measured.rect);const now=performance.now();if(record&&now-lastPrewarmAt>160&&prewarmThreeJSRuntimeScene(slot,measured,record)){lastPrewarmAt=now;}}catch(error){console.warn(\"[Import_3D_Canvas_Root] preload record sync failed\",error);}}const renderedRecordKeys=new Set;const visibleSlotIds=new Set;for(const view of renderViews){const{measured,slot}=view;if(slot?.id)visibleSlotIds.add(slot.id);const recordKey=_rootRecordKeyForSlot(slot);if(recordKey)renderedRecordKeys.add(recordKey);}for(const[recordKey,record]of records){if(!renderedRecordKeys.has(recordKey)){if(visibleSlotIds.has(record.slotId)){disposeThreeJSRuntimeScene(record,bridge.slots?.get?.(record.slotId),{destroy:true});records.delete(recordKey);continue;}disposeThreeJSRuntimeScene(record,bridge.slots?.get?.(record.slotId));}}const useCanvasAppearStyle=renderViews.length===1;// Resolved once per view here and reused below for the perf-log\n// check — avoids a second _resolveRootRuntimeConfig pass (which\n// rebuilds the whole settings object) over the same slots every\n// single frame just to read one boolean flag.\nlet shouldLogPerf=false;for(const view of renderViews){const{measured,slot}=view;try{const cfg=slot?.props?_resolveRootRuntimeConfig(slot.props,measured.rect?.width||0):null;if(cfg?.performanceStats)shouldLogPerf=true;const record=syncThreeJSRuntimeScene(slot,measured,state,useCanvasAppearStyle&&!cfg?.dissolveEnabled);if(shouldRenderRootRecord(view,record,cfg,state)){// Mirrors Slot's Stats.js overlay (slotRuntime.tsx) so the\n// debug panel also works for slots rendered via the Root bridge.\nconst statsMonitor=cfg?.showStatsMonitor?_syncStatsMonitor(record,cfg,slot?.element):(_removeStatsMonitor(record),null);statsMonitor?.begin?.();renderThreeJSRuntimeScene(record,measured,state);statsMonitor?.end?.();}}catch{// Suppress per-frame group render failures; keep render flow unchanged.\n}}lastRenderedLocalRects=currentRenderedRects;syncRootHelperOverlay(state,renderViews);if(renderViews.length){const now=performance.now();if(shouldLogPerf&&now-lastRootPerfLog>2e3){console.log(\"[Import_3D root perf]\",{dpr:Number(renderer.getPixelRatio().toFixed(2)),pixels:(renderer.domElement.width||0)*(renderer.domElement.height||0),size:`${renderer.domElement.width||0}x${renderer.domElement.height||0}`,slotViews:renderViews.length,calls:renderer.info.render.calls,triangles:renderer.info.render.triangles,geometries:renderer.info.memory.geometries,textures:renderer.info.memory.textures});lastRootPerfLog=now;}}const activeMeasured=useCanvasAppearStyle?renderViews[0]?.measured:null;const activeSlot=useCanvasAppearStyle?renderViews[0]?.slot:null;const activeRecordKey=activeSlot?_rootRecordKeyForSlot(activeSlot):\"\";const activeRecord=activeRecordKey?records.get(activeRecordKey):null;const activeCfg=activeSlot?.props?_resolveRootRuntimeConfig(activeSlot.props,activeMeasured?.rect?.width||0):null;_syncRootCanvasAppearStyle(canvas,activeRecord,useCanvasAppearStyle&&!activeCfg?.dissolveEnabled);}else{updateRootHelperOverlay(null);}}catch(error){console.warn(\"[Import_3D_Canvas_Root] renderer tick failed; retrying next frame\",error);}rafId=window.requestAnimationFrame(tick);};tick();return()=>{disposed=true;if(rafId)window.cancelAnimationFrame(rafId);window.removeEventListener(\"pointerdown\",onRootPointerDown);window.removeEventListener(\"pointermove\",onRootPointerMove);window.removeEventListener(\"pointerup\",onRootPointerUp);window.removeEventListener(\"pointercancel\",onRootPointerUp);canvas.removeEventListener(\"wheel\",onRootCanvasWheel);document.removeEventListener(\"visibilitychange\",onRootVisibilityChange);for(const observer of rootRecordObservers.values()){observer.disconnect();}rootRecordObservers.clear();if(canvas.parentElement){canvas.parentElement.removeChild(canvas);}if(documentCanvasClipper?.parentElement){documentCanvasClipper.parentElement.removeChild(documentCanvasClipper);}documentCanvasClipper=null;restorePatchedHost();rootCanvasRef.current=null;renderer.setScissorTest(false);for(const[,record]of records){disposeThreeJSRuntimeScene(record,bridge.slots?.get?.(record.slotId),{destroy:true});}records.clear();_debugImport3DRendererEvent(\"dispose\",{role:\"root\",ownerId:rootOwnerId,canvas,reason:\"root renderer effect cleanup\",bridgeMode:_getImport3DBridgeState().renderMode,renderTarget:RenderTarget.current(),rootCount:_getImport3DBridgeState().rootCount||0,slotCount:_getImport3DBridgeState().slots?.size||0,forceLog:!!debug});renderer.dispose();};},[mode,dprCapDesktop,dprCapMobile,mobileBreakpoint,canvasZIndex,nativeAntialias,isOnFramerCanvas]);React.useEffect(()=>{const sync=()=>{setBridgeInfo(_snapshotImport3DBridge());};sync();return _subscribeImport3DBridge(sync);},[]);return /*#__PURE__*/_jsxs(\"div\",{style:{width:debug?\"auto\":0,height:debug?\"auto\":0,...UI_STYLES.canvasContainer,...style},children:[debug&&/*#__PURE__*/_jsxs(\"div\",{style:{...UI_STYLES.debugOverlay,lineHeight:1.6,backdropFilter:\"blur(10px)\"},children:[/*#__PURE__*/_jsx(\"div\",{style:UI_STYLES.debugTitle,children:\"Root Coordinator\"}),/*#__PURE__*/_jsxs(\"div\",{children:[\"roots: \",/*#__PURE__*/_jsx(\"b\",{children:bridgeInfo.rootCount})]}),/*#__PURE__*/_jsxs(\"div\",{children:[\"slots: \",/*#__PURE__*/_jsx(\"b\",{children:bridgeInfo.slots.length})]}),/*#__PURE__*/_jsxs(\"div\",{children:[\"active budget:\",\" \",/*#__PURE__*/_jsx(\"b\",{children:bridgeInfo.contextBudget??\"auto (device)\"})]}),/*#__PURE__*/_jsxs(\"div\",{children:[\"mode: \",/*#__PURE__*/_jsx(\"b\",{children:bridgeInfo.renderMode})]}),bridgeInfo.rendererState&&/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsxs(\"div\",{children:[\"active slot:\",\" \",/*#__PURE__*/_jsx(\"b\",{children:bridgeInfo.rendererState.activeSlotId||\"none\"})]}),/*#__PURE__*/_jsxs(\"div\",{children:[\"progress:\",\" \",/*#__PURE__*/_jsx(\"b\",{children:bridgeInfo.rendererState.activeProgress.toFixed(3)})]})]}),/*#__PURE__*/_jsxs(\"div\",{children:[\"quality: \",/*#__PURE__*/_jsx(\"b\",{children:bridgeInfo.qualityMode})]}),/*#__PURE__*/_jsxs(\"div\",{children:[\"dpr:\",\" \",/*#__PURE__*/_jsxs(\"b\",{children:[bridgeInfo.dprCapDesktop??\"auto\",\" /\",\" \",bridgeInfo.dprCapMobile??\"auto\"]})]}),/*#__PURE__*/_jsxs(\"div\",{children:[\"pause:\",\" \",/*#__PURE__*/_jsxs(\"b\",{children:[bridgeInfo.pauseHidden?\"hidden\":\"-\",\" \\xb7\",\" \",bridgeInfo.pauseOffscreen?\"offscreen\":\"-\"]})]}),/*#__PURE__*/_jsxs(\"div\",{children:[\"destroy:\",\" \",/*#__PURE__*/_jsx(\"b\",{children:bridgeInfo.destroyOffscreen?`${Math.round((bridgeInfo.destroyAfterMs||0)/1e3)}s`:\"off\"})]}),/*#__PURE__*/_jsx(\"div\",{style:{opacity:.55,fontSize:10,marginTop:3},children:bridgeInfo.renderMode===\"renderer\"?`root canvas \\xb7 ${bridgeInfo.rendererState?.renderedSlotCount??0} slot views`:\"inline canvas \\xb7 native scroll sync\"}),bridgeInfo.rendererState?.debugSlots?.length?/*#__PURE__*/_jsx(\"div\",{style:{marginTop:8,paddingTop:6,borderTop:\"1px solid rgba(0,255,0,0.25)\",opacity:.85,fontSize:9,maxWidth:260},children:bridgeInfo.rendererState.debugSlots.slice(0,4).map(slot=>/*#__PURE__*/_jsxs(\"div\",{children:[slot.pointerHit?\"hit\":\"box\",\" \\xb7\",\" \",slot.animOn?\"anim\":\"no-anim\",\" \\xb7\",\" \",slot.hoverGate?\"gate\":\"free\",\" \\xb7\",\" \",slot.animMode||\"-\",\" \\xb7\",\" \",slot.animClip||\"-\"]},slot.id))}):null]}),rootHelper.tooltip&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"fixed\",left:Math.min((rootHelper.tooltip.screenX||0)+16,(typeof window!==\"undefined\"?window.innerWidth:300)-230),top:Math.max((rootHelper.tooltip.screenY||0)-10,4),pointerEvents:\"none\",zIndex:(canvasZIndex??10)+1e3},children:/*#__PURE__*/_jsxs(\"div\",{style:{background:\"rgba(0,0,0,0.92)\",border:\"1px solid rgba(255,255,255,0.12)\",borderRadius:8,padding:\"8px 12px\",backdropFilter:\"blur(12px)\",minWidth:140,maxWidth:260,boxShadow:\"0 8px 28px rgba(0,0,0,0.35)\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:6,marginBottom:4},children:[/*#__PURE__*/_jsx(\"span\",{style:{width:8,height:8,borderRadius:2,background:rootHelper.tooltip.type===\"SkinnedMesh\"?\"#a855f7\":\"#3b82f6\"}}),/*#__PURE__*/_jsx(\"span\",{style:{color:\"#fff\",fontWeight:600,fontSize:12,letterSpacing:\"-0.01em\"},children:rootHelper.tooltip.name})]}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexWrap:\"wrap\",gap:\"4px 10px\"},children:[/*#__PURE__*/_jsx(\"span\",{style:{padding:\"1px 5px\",borderRadius:4,fontSize:9,background:rootHelper.tooltip.type===\"SkinnedMesh\"?\"rgba(168,85,247,0.15)\":\"rgba(59,130,246,0.15)\",color:rootHelper.tooltip.type===\"SkinnedMesh\"?\"#c084fc\":\"#60a5fa\"},children:rootHelper.tooltip.type}),/*#__PURE__*/_jsxs(\"span\",{style:{color:\"rgba(255,255,255,0.45)\",fontSize:10},children:[rootHelper.tooltip.verts.toLocaleString(),\" \",\"verts\"]}),rootHelper.tooltip.mat&&/*#__PURE__*/_jsx(\"span\",{style:{color:\"rgba(255,255,255,0.32)\",fontSize:10},children:rootHelper.tooltip.mat})]}),/*#__PURE__*/_jsx(\"div\",{style:{marginTop:4,color:\"rgba(255,255,255,0.25)\",fontSize:9,wordBreak:\"break-all\"},children:rootHelper.tooltip.path})]})}),(debug||isCanvasTarget)&&rootHelper.tree?.length>0&&/*#__PURE__*/_jsxs(\"div\",{style:{...UI_STYLES.sceneOverlay,zIndex:(canvasZIndex??10)+999},children:[/*#__PURE__*/_jsxs(\"div\",{style:UI_STYLES.sceneHeader,children:[/*#__PURE__*/_jsx(\"span\",{style:UI_STYLES.debugHighlight,children:\"Scene Hierarchy\"}),/*#__PURE__*/_jsxs(\"span\",{style:UI_STYLES.debugRight,children:[rootHelper.meshCount,\" meshes\"]})]}),rootHelper.tree.slice(0,160).map((item,i)=>{const indent=Math.min(80,(item.depth||0)*12);const hovered=rootHelper.tooltip?.name&&rootHelper.tooltip.name===item.name;return /*#__PURE__*/_jsxs(\"div\",{style:{...UI_STYLES.sceneItem,padding:`2px 10px 2px ${10+indent}px`,color:item.isGroup?\"#fbbf24\":hovered?\"#60a5fa\":\"rgba(255,255,255,0.62)\",background:hovered?\"rgba(59,130,246,0.1)\":\"transparent\"},children:[/*#__PURE__*/_jsx(\"span\",{style:{...UI_STYLES.sceneDot,borderRadius:item.isGroup?2:\"50%\",background:item.isGroup?\"#f59e0b\":hovered?\"#60a5fa\":\"rgba(255,255,255,0.22)\"}}),/*#__PURE__*/_jsx(\"span\",{style:UI_STYLES.sceneEllipsis,children:item.name}),/*#__PURE__*/_jsx(\"span\",{style:{marginLeft:\"auto\",flexShrink:0,fontSize:8,color:item.isGroup?\"rgba(251,191,36,0.8)\":item.type===\"SkinnedMesh\"?\"#c084fc\":\"#60a5fa\"},children:item.isGroup?item.childMeshCount:item.type===\"SkinnedMesh\"?\"Skin\":\"Mesh\"})]},`${item.isGroup?\"g\":\"m\"}-${i}-${item.name}`);})]})]});}Import_3D_Canvas_Root.defaultProps={mode:\"coordinator\",desktopSlots:3,mobileSlots:2,mobileBreakpoint:768,qualityMode:\"balanced\",dprCapDesktop:1.5,dprCapMobile:1.2,pauseHidden:true,pauseOffscreen:true,destroyOffscreen:false,destroyAfterMs:2e4,canvasZIndex:10,nativeAntialias:false,debug:false};const ROOT_PROPERTY_CONTROLS={mode:{type:ControlType.Enum,title:\"Mode\",options:[\"coordinator\",\"renderer\"],optionTitles:[\"Coordinator\",\"Renderer Bridge\"],defaultValue:\"coordinator\"},desktopSlots:{type:ControlType.Number,title:\"Desktop Slots\",defaultValue:3,min:0,max:8,step:1,displayStepper:true},mobileSlots:{type:ControlType.Number,title:\"Mobile Slots\",defaultValue:2,min:0,max:6,step:1,displayStepper:true},mobileBreakpoint:{type:ControlType.Number,title:\"Mobile <=\",defaultValue:768,min:320,max:1440,step:1,displayStepper:true},canvasZIndex:{type:ControlType.Number,title:\"Canvas Z\",defaultValue:10,min:-999,max:9999,step:1,displayStepper:true,hidden:p=>p.mode!==\"renderer\"},nativeAntialias:{type:ControlType.Boolean,title:\"Native AA\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\",hidden:p=>p.mode!==\"renderer\",description:\"On = Smoother edges\"},qualityMode:{type:ControlType.Enum,title:\"Quality\",options:[\"performance\",\"balanced\",\"quality\"],optionTitles:[\"Performance\",\"Balanced\",\"Quality\"],defaultValue:\"balanced\"},dprCapDesktop:{type:ControlType.Number,title:\"DPR Desktop\",defaultValue:1.5,min:.5,max:3,step:.1,displayStepper:true},dprCapMobile:{type:ControlType.Number,title:\"DPR Mobile\",defaultValue:1.2,min:.5,max:3,step:.1,displayStepper:true},pauseHidden:{type:ControlType.Boolean,title:\"Pause Hidden\",defaultValue:true,enabledTitle:\"Yes\",disabledTitle:\"No\"},pauseOffscreen:{type:ControlType.Boolean,title:\"Pause Offscreen\",defaultValue:true,enabledTitle:\"Yes\",disabledTitle:\"No\"},destroyOffscreen:{type:ControlType.Boolean,title:\"Destroy Far\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\"},destroyAfterMs:{type:ControlType.Number,title:\"Destroy After\",defaultValue:2e4,min:1e3,max:12e4,step:1e3,displayStepper:true,unit:\"ms\",hidden:props=>!props.destroyOffscreen},debug:{type:ControlType.Boolean,title:\"Debug\",defaultValue:false,enabledTitle:\"Show\",disabledTitle:\"Hide\",description:\"On = Show bridge debug\"}};return{Component:Import_3D_Canvas_Root,controls:ROOT_PROPERTY_CONTROLS};})()// #endregion\n;\nexport const __FramerMetadata__ = {\"exports\":{\"Root\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./rootRuntime.map","// @ts-nocheck\n// #region 24. MAIN EXPORT — ROOT/SLOT DISPATCHER\n/**\n * ============================================================\n * 3D Model Importer for Framer - v4.0 PBR + Post-FX\n * Supports: GLB, GLTF, FBX (via URL or File Upload), ZIP Archives\n * Features: Full PBR Material Override, Material Presets,\n *   Environment Presets, Advanced Post-Processing,\n *   Animations, Float Effect, Orbit Controls, Root/Slot Renderer Bridge\n * ============================================================\n *\n * Copy this file (and the ./runtime/ folder) into Framer:\n * Assets -> Code -> New Component. This file is the canonical entry\n * point Framer publishes; it only wires together the modules under\n * ./runtime/ and exposes the memoized Root/Slot dispatcher.\n *\n * Module map (see ./runtime/<folder>/ for implementation):\n *  - core/          deps, types, constants, global runtime state\n *  - utils/         hashes, format/color parsing, object3D + animation utils\n *  - config/        Framer prop -> runtime config resolution\n *  - loaders/       GLTF/FBX/ZIP model loading\n *  - materials/     material system, dissolve/fade transitions\n *  - scene/         scene transforms, lighting, environment\n *  - rendering/     postprocessing, render metrics, diagnostics, stats\n *  - bridge/        Root/Slot registry (bridge.tsx) and WebGL budget gate (coordinator.tsx)\n *  - framer/        property control schema, runtime glue helpers\n *  - components/    slotRuntime.tsx (Slot) and rootRuntime.tsx (Root) — the two\n *                    renderer implementations this file dispatches between\n *\n * API navigation:\n *  - List API anchors: rg -n \"@api\" \"src/ThreeJS_Runtime.tsx\" \"src/runtime\"\n *  - Bridge bugs: @api RenderBridge.getState, @api RootRenderer.component\n *  - Render ownership: @api RendererDiagnostics.logEvent\n *  - Model loading: @api ModelLoading.preload, @api ModelLoading.loadDirect\n *  - Materials and stylized presets: @api MaterialSystem.applyOverride\n *  - Framer controls: @api FramerControls.schema, @api ConfigResolution.resolveRuntimeConfig\n *  - Lifecycle/UI symptoms: @api Slot.component, @api PublicExport.ThreeJS_Runtime\n * ============================================================\n */import{jsx as _jsx}from\"react/jsx-runtime\";import{React,addPropertyControls,ControlType}from\"https://framerusercontent.com/modules/YeYAFpMfJfcs2D9mfKFW/DDv12VyHhTY27qyXtQ6t/deps.js\";import{IMPORT_3D_PROPERTY_CONTROLS}from\"https://framerusercontent.com/modules/skuA7xWTM73AnSOFKd3r/grwUaKbGSWUnvDWJx4xe/propertyControls.js\";import{_withRuntimeRoleHidden}from\"https://framerusercontent.com/modules/D0qFzYPgVWq5uzUVdTNq/6cvZ9EORoJ20sh3iSQXN/runtimeGlue.js\";import{Slot,_startModelPreload}from\"https://framerusercontent.com/modules/A88Jq1D176bZgp9Jdto1/TXHIfc3fJ7pTbveWbn9q/slotRuntime.js\";import{Root}from\"https://framerusercontent.com/modules/TQqgo7f4M8CfLELulofs/slbcdA7zLhV9v7VroZbp/rootRuntime.js\";export{IMPORT_3D_PROPERTY_CONTROLS}from\"https://framerusercontent.com/modules/skuA7xWTM73AnSOFKd3r/grwUaKbGSWUnvDWJx4xe/propertyControls.js\";const ThreeJSRuntimeSlot=Slot.Component;const ThreeJSRuntimeRoot=Root.Component;const ROOT_RUNTIME_PROPERTY_CONTROLS=Root.controls;// Missing global shared refs from original monolith\nlet _rootSharedFinalScene=null;let _rootSharedFinalCamera=null;let _rootSharedFinalMaterial=null;const SLOT_RUNTIME_PROPERTY_CONTROLS=_withRuntimeRoleHidden(IMPORT_3D_PROPERTY_CONTROLS,props=>props.role===\"root\");const ROOT_RUNTIME_CONTROLS=_withRuntimeRoleHidden(ROOT_RUNTIME_PROPERTY_CONTROLS,props=>props.role!==\"root\");/* Framer property-control schema is defined in ./runtime/propertyControls.tsx. */addPropertyControls(ThreeJS_Runtime,{role:{type:ControlType.Enum,title:\"Role\",options:[\"slot\",\"group\",\"root\"],optionTitles:[\"Slot\",\"Group\",\"Root\"],defaultValue:\"slot\"},groupName:{type:ControlType.String,title:\"Group Name\",defaultValue:\"\",placeholder:\"hero-world\",hidden:p=>p.role!==\"group\"&&!p.asGroup},...SLOT_RUNTIME_PROPERTY_CONTROLS,...ROOT_RUNTIME_CONTROLS});const ThreeJSRuntimeRootMemo=React.memo(ThreeJSRuntimeRoot);const ThreeJSRuntimeSlotMemo=React.memo(ThreeJSRuntimeSlot);/**\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerIntrinsicWidth 800\n * @framerIntrinsicHeight 600\n *\n * @framerDisableUnlink\n */// @api PublicExport.ThreeJS_Runtime\nexport default function ThreeJS_Runtime(props){const{role=\"slot\"}=props;if(role===\"root\")return /*#__PURE__*/_jsx(ThreeJSRuntimeRootMemo,{...props});return /*#__PURE__*/_jsx(ThreeJSRuntimeSlotMemo,{...props,asGroup:role===\"group\"||!!props.asGroup});}// Expose globally so splash screen or external scripts can trigger preload early\nif(typeof window!==\"undefined\"){window.__preloadModel3D=_startModelPreload;}ThreeJS_Runtime.defaultProps={...ThreeJSRuntimeSlot.defaultProps,...ThreeJSRuntimeRoot.defaultProps,role:\"slot\",asGroup:false,groupName:\"\"}// #endregion\n;\nexport const __FramerMetadata__ = {\"exports\":{\"IMPORT_3D_PROPERTY_CONTROLS\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"ThreeJS_Runtime\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"600\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerDisableUnlink\":\"\",\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"800\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"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AAG,OAAO,KAAK,IAAI,EAAE,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC,EAAE,EAAE,KAAKC,GAAG,KAAKC,GAAG,KAAKC,GAAG,KAAKC,GAAG,OAAO,KAAK,OAAO,EAAE,GAAG,CAAC,EAAE,KAAK,OAAO,EAAE,GAAG,CAAC,EAAE,EAAE,KAAKC,GAAG,KAAK,GAAG,KAAK,GAAG,OAAO,KAAK,OAAO,EAAE,GAAG,CAAC,EAAE,KAAK,OAAO,EAAE,GAAG,CAAC,EAAE,GAAG,KAAK,GAAG,OAAO,KAAK,OAAO,EAAE,GAAG,CAAC,EAAE,KAAK,OAAO,EAAE,GAAG,CAAC,EAAE,GAAG,KAAK,GAAG,OAAO,KAAK,OAAO,EAAE,GAAG,CAAC,EAAE,KAAK,OAAO,EAAE,GAAG,CAAC,EAAE,GAAG,KAAK,GAAG,OAAO,KAAK,OAAO,EAAE,GAAG,CAAC,EAAE,KAAK,OAAO,EAAE,GAAG,CAAC,EAAE,GAAG,KAAK,GAAG,OAAO,KAAK,OAAO,EAAE,GAAG,CAAC,EAAE,KAAK,OAAO,EAAE,GAAG,CAAC,EAAE,GAAG,KAAK,GAAG,OAAO,KAAK,OAAO,EAAE,GAAG,CAAC,EAAE,KAAK,OAAO,EAAE,GAAG,CAAC,EAAE,GAAG,KAAK,GAAG,OAAO,KAAK,OAAO,EAAE,GAAG,CAAC,EAAE,KAAK,OAAO,EAAE,GAAG,CAAC,EAAE,GAAG,KAAK,GAAG,OAAO,KAAK,OAAO,EAAE,GAAG,CAAC,EAAE,KAAK,OAAO,EAAE,GAAG,CAAC,EAAE,GAAG,KAAK,GAAG,OAAO,KAAK,OAAO,EAAE,GAAG,CAAC,EAAE,KAAK,OAAO,EAAE,GAAG,CAAC,EAAE,GAAG,KAAK,GAAG,OAAO,KAAK,OAAO,EAAE,GAAG,EAAE,EAAE,KAAK,OAAO,EAAE,GAAG,CAAC,EAAE,GAAG,KAAK,GAAG,OAAO,KAAK,OAAO,EAAE,GAAG,EAAE,EAAE,KAAK,OAAO,EAAE,GAAG,CAAC,EAAE,GAAG,KAAK,GAAG,OAAO,KAAK,OAAO,EAAE,GAAG,EAAE,EAAE,KAAK,OAAO,EAAE,GAAG,CAAC,EAAE,GAAG,KAAK,GAAG,OAAO,KAAK,OAAO,EAAE,GAAG,EAAE,E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EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,sBAAsB,EAAE,CAAC,IAAI,EAAE,KAAK,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,IAAI,CAAC,EAAE,EAAE,KAAK,IAAI,CAAC,EAAE,EAAE,KAAK,IAAI,CAAC,EAAE,EAAE,KAAK,IAAI,CAAC,EAAE,EAAE,KAAK,IAAI,CAAC,EAAE,EAAE,KAAK,IAAI,CAAC,EAAE,GAAG,EAAE,QAAQ,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,GAAG,EAAE,QAAQ,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,GAAG,EAAE,QAAQ,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,IAA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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAAG,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAAG,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAAG,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAAG,gBAAgB;;;;;;;;;QAAG,gBAAgB;;;;;GAAG,gBAAgB;;;;;;;;;;;;GAAG,oBAAoB;;;;;;;GAAG,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;GAAG,UAAU;;;;;;;GAAG,UAAU;;;;;;;;;;GAAG,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;GAAG,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAAG,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;GAAG,cAAc;;;;;;;;;;;;;;;;;;;;;;;GAAG,cAAc;;;;;;GAAG,cAAc;;;;;;;;;GAAG,gBAAgB;;;;;;;;;;;;;;;;;;;;;;GAAG,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAAG,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAAG,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAAG,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAAG,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAAG,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAAG,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAAG,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAAG,gBAAgB;;;;;;;;;;;;;;;;;;;;;GAAG,eAAe;;;;;;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M,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,KAAK,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,KAAK,MAAM,KAAK,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,IAAI,MAAM,IAAI,MAAM,IAAI,MAAM,IAAI,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,IAAI,MAAM,IAAI,MAAM,IAAI,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,IAAI,CAAC,EAAE2B,GAAG,KAA0L,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,OAAO,EAAEwB,EAAG,EAAE,QAAQ,EAAE,KAAK,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,mBAAmB,EAAE,CAAC,EAAE,sBAAsB,EAAE,CAAC,EAAE,gBAAgB,EAAE,UAAU,6BAA6B,EAAE,CAAC,EAAE,oBAAoB,EAAE,CAAC,EAAE,iBAAiB,EAAEF,IAAI,EAAE,KAAK,gBAAgB,CAAC,EAAE,IAAI,EAAE,GAAG,IAAI,KAAK,CAAC,GAAG,OAAO,sBAAsB,KAAK,aAAa,sBAAsB,MAAU,MAAM,2DAA2D,EAAE,EAAE,EAAE,qBAAqB,CAAC,CAAC,KAAK,KAAM,GAAE,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,IAAI,CAACG,GAAGC,GAAGC,EAAE,CAAC,EAAE,EAAE,IAAI,IAAI,CAACL,GAAGtC,GAAG4C,GAAGC,GAAGC,GAAGC,EAAE,CAAC,EAAE,EAAE,IAAI,YAAY,CAAC,EAAE,EAAE,IAAI,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,KAAK,KAAK,WAAW,EAAE,KAAK,MAAM,CAAC,kBAAkB,CAAC,EAAE,cAAc,IAAI,EAAE,KAAK,UAAU,CAAC,EAAE,KAAK,eAAe,CAAC,EAAE,KAAK,eAAe,CAAC,EAAE,KAAK,iBAAiB,CAAC,EAAE,KAAK,YAAY,CAAC,EAAE,KAAK,eAAe,CAAC,EAAE,KAAK,qBAAqB,CAAC,EAAE,KAAK,YAAA,EAAe,KAAK,oBAAoB,EAAE,KAAK,4BAA4B,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,kBAAkBC,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,GAAE,IAAIpF,GAAG,GAAE,IAAIA,GAAG,GAAG,KAAK,GAAG,IAAIzB,EAAG,CAAC,EAAE,GAAG,EAAE,EAAG,EAAE,MAAM,GAAG,EAAE,OAAO,GAAG,EAAE,GAAG,KAAK,GAAG,KAAK,GAAE,IAAIyB,GAAG,EAAE,EAAE,EAAG,EAAE,EAAE,GAAE,IAAIA,GAAG,EAAE,EAAE,EAAG,EAAE,EAAE,GAAG,CAAC,EAAE,GAAG,IAAI2B,GAAG,GAAG,CAAC,EAAE,GAAG,CAAC,EAAE,EAAG,IAAIF,EAAG,GAAG,IAAI9B,EAAG,GAAG,IAAIK,GAAG,GAAG,CAAC,WAAW,KAAK,IAAI,KAAK,YAAY,KAAK,iBAAiB,KAAK,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,SAAS,IAAI,CAAC,OAAO,IAAI,KAAK,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,SAAS,GAAG,EAAE,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,6BAA6B,CAAC,EAAE,GAAG,iBAAiB,GAAG,EAAE,aAAa,cAAc,eAAiB,EAAE,EAAE,iBAAiB,mBAAmB,GAAG,CAAC,CAAC,EAAE,EAAE,iBAAiB,uBAAuB,GAAG,CAAC,CAAC,EAAE,EAAE,iBAAiB,4BAA4B,GAAG,CAAC,CAAC,EAAE,IAAI,KAAK,CAAC,IAAI,EAAE,SAAS,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,KAAK,MAAM,GAAG,CAAC,EAAM,MAAM,6DAA6D,EAAM,MAAM,+BAA+B,CAAC,CAAC,OAAO,EAAE,CAAC,MAAMkD,EAAG,kBAAkB,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,GAAG,GAAG,EAAG,GAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAG,GAAG,GAAG,GAAG,GAAE,GAAE,GAAG,GAAG,GAAG,GAAG,GAAE,GAAG,EAAE,GAAG,SAAS,IAAG,CAAC,GAAG,IAAI,GAAG,CAAC,EAAE,GAAG,KAAK,EAAE,GAAG,IAAI,GAAG,EAAE,EAAE,EAAE,GAAG,IAAI,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAG,IAAI,GAAG,EAAE,EAAE,EAAE,GAAG,qBAAqB,GAAG,EAAG,QAAQ,MAAM,YAAY,CAAC,CAAC,EAAE,GAAE,IAAI,GAAG,CAAC,EAAE,EAAE,IAAI,GAAG,EAAE,IAAI,GAAG,EAAE,GAAG,EAAG,EAAE,GAAG,GAAG,EAAC,EAAE,EAAE,IAAI,GAAG,CAAC,EAAE,EAAE,IAAI,GAAG,CAAC,EAAE,EAAE,IAAI,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,GAAG,EAAE,EAAE,GAAE,CAAC,EAAE,EAAG,IAAI,GAAG,EAAE,EAAE,EAAE,EAAE,EAAC,EAAE,GAAG,IAAI,GAAG,EAAE,GAAG,CAAC,EAAE,GAAE,IAAI,GAAG,CAAC,EAAE,GAAG,IAAI,GAAG,EAAE,EAAE,GAAG,GAAG,EAAE,EAAC,EAAE,GAAG,IAAI,GAAG,EAAE,CAAC,EAAE,GAAG,IAAI,GAAG,GAAE,IAAI,GAAG,EAAE,EAAE,GAAG,IAAI,GAAG,EAAE,EAAE,EAAG,EAAG,EAAE,CAAC,EAAE,GAAG,IAAI,GAAG,EAAE,EAAG,EAAE,EAAE,GAAG,IAAI,GAAG,EAAE,GAAE,GAAG,CAAE,EAAE,GAAG,IAAI,GAAG,EAAE,GAAG,EAAC,EAAE,GAAE,IAAI,GAAG,EAAE,GAAG,EAAC,EAAE,GAAE,SAAS,GAAG,SAAS,EAAE,aAAa,GAAG,EAAE,WAAW,GAAG,EAAE,WAAW,EAAE,EAAE,YAAY,GAAG,EAAE,UAAU,GAAG,EAAE,MAAM,EAAG,EAAE,KAAK,EAAC,CAAC,GAAE,EAAE,IAAA,OAAS,EAAE,IAAI,GAAG,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI,GAAE,IAAIoB,GAAG,EAAE,CAAC,EAAE,KAAK,GAAG,GAAE,KAAK,WAAW,UAAU,CAAC,OAAO,CAAC,EAAE,KAAK,qBAAqB,UAAU,CAAC,OAAO,EAAE,qBAAqB,CAAC,EAAE,KAAK,iBAAiB,UAAU,CAAC,IAAI,EAAE,GAAG,IAAI,oBAAoB,EAAE,GAAG,EAAE,YAAY,CAAC,EAAE,KAAK,oBAAoB,UAAU,CAAC,IAAI,EAAE,GAAG,IAAI,oBAAoB,EAAE,GAAG,EAAE,eAAe,CAAC,EAAE,KAAK,cAAc,UAAU,CAAC,OAAO,EAAE,EAAE,KAAK,cAAc,SAAS,EAAE,CAAC,IAAI,IAAK,KAAI,GAAG,EAAE,KAAK,QAAQ,EAAG,GAAG,CAAC,CAAC,EAAE,EAAE,KAAK,QAAQ,SAAS,EAAE,CAAC,OAAO,EAAE,IAAI,EAAG,EAAE,CAAC,EAAE,KAAK,QAAQ,SAAS,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,GAAE,aAAa,CAAC,EAAG,iEAAiE,EAAE,MAAM,CAAC,EAAG,EAAE,GAAG,EAAE,EAAE,MAAM,KAAK,MAAM,EAAE,EAAE,EAAE,EAAE,OAAO,KAAK,MAAM,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,MAAM,EAAE,KAAK,EAAE,MAAM,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,YAAY,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,qBAAqB,SAAS,EAAE,CAAC,OAAO,EAAE,IAAI,EAAG,GAAG,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,KAAK,qBAAqB,SAAS,EAAE,EAAE,EAAE,CAAC,EAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,MAAM,KAAK,MAAM,EAAE,CAAC,EAAE,EAAE,OAAO,KAAK,MAAM,EAAE,CAAC,EAAE,KAAK,YAAY,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,WAAW,SAAS,EAAE,CAAC,GAAG,IAAA,KAAO,CAAC,QAAQ,MAAM,gGAAgG,EAAE,MAAM,CAAC,GAAG,OAAO,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,IAAI,GAAG,EAAE,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC,QAAQ,KAAK,mIAAmI,EAAE,KAAK,EAAE,EAAE,WAAW,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,mBAAmB,SAAS,EAAE,CAAC,OAAO,EAAE,KAAK,EAAC,CAAC,EAAE,KAAK,YAAY,SAAS,EAAE,CAAC,OAAO,EAAE,KAAK,EAAC,CAAC,EAAE,KAAK,YAAY,SAAS,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,UAAU,GAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,GAAE,IAAI,EAAE,EAAE,EAAE,CAAC,EAAE,EAAG,SAAS,GAAE,KAAK,EAAC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,WAAW,SAAS,EAAE,CAAC,OAAO,EAAE,KAAK,EAAC,CAAC,EAAE,KAAK,WAAW,SAAS,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,UAAU,GAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,GAAE,IAAI,EAAE,EAAE,EAAE,CAAC,EAAE,EAAG,QAAQ,GAAE,KAAK,EAAC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,eAAe,UAAU,CAAC,OAAO,EAAE,EAAE,KAAK,eAAe,SAAS,EAAE,CAAC,EAAG,eAAe,GAAG,CAAC,CAAC,EAAE,KAAK,cAAc,SAAS,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,mBAAmB,SAAS,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,cAAc,SAAS,EAAE,CAAC,OAAO,EAAE,KAAK,GAAG,cAAc,CAAC,CAAC,EAAE,KAAK,cAAc,UAAU,CAAC,GAAG,cAAc,GAAG,SAAS,CAAC,EAAE,KAAK,cAAc,UAAU,CAAC,OAAO,GAAG,cAAc,CAAC,EAAE,KAAK,cAAc,UAAU,CAAC,GAAG,cAAc,GAAG,SAAS,CAAC,EAAE,KAAK,MAAM,SAAS,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,IAAI,KAAK,CAAC,IAAI,EAAG,EAAE,QAAQ,OAAO,EAAE,EAAE,IAAI,CAAE,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,EAAG,EAAE,QAAQ,KAAK,EAAG,EAAE,IAAI,CAAE,EAAE,EAAG,GAAG,cAAc,EAAE,EAAG,GAAG,cAAc,EAAE,EAAG,EAAG,EAAE,EAAG,EAAG,EAAE,EAAG,EAAG,EAAE,GAAI,EAAE,GAAG,EAAG,EAAE,GAAG,EAAG,EAAE,GAAG,EAAG,EAAE,GAAG,EAAG,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,GAAG,EAAG,EAAE,GAAG,EAAG,EAAE,GAAG,EAAG,EAAE,GAAG,EAAG,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,EAAE,KAAM,IAAG,EAAE,gBAAgB,CAAC,IAAI,GAAG,EAAE,kBAAkB,IAAI,GAAG,EAAE,mBAAmB,KAAK,MAAM,QAAQ,QAAQ,QAAQ,UAAU,GAAG,IAAI,GAAG,EAAE,MAAM,CAAC,CAAC,EAAE,KAAK,WAAW,UAAU,CAAC,KAAK,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,WAAW,UAAU,CAAC,KAAK,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,aAAa,UAAU,CAAC,KAAK,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,QAAQ,UAAU,CAAC,EAAE,oBAAoB,mBAAmB,GAAG,CAAC,CAAC,EAAE,EAAE,oBAAoB,uBAAuB,GAAG,CAAC,CAAC,EAAE,EAAE,oBAAoB,4BAA4B,GAAG,CAAC,CAAC,EAAE,GAAG,QAAQ,EAAE,GAAG,QAAQ,EAAE,GAAE,QAAQ,EAAE,EAAE,QAAQ,EAAE,EAAE,QAAQ,EAAE,EAAG,QAAQ,EAAE,EAAE,QAAQ,EAAE,GAAG,QAAQ,EAAE,GAAG,QAAQ,EAAE,GAAE,QAAQ,EAAE,GAAE,oBAAoB,eAAe,EAAE,EAAE,GAAE,oBAAoB,aAAa,EAAE,EAAE,GAAG,KAAK,CAAC,EAAE,SAAS,GAAG,EAAE,CAAC,EAAE,eAAe,EAAEe,EAAG,8BAA8B,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,EAAG,kCAAkC,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,GAAE,UAAU,EAAE,GAAG,QAAQ,EAAE,GAAG,WAAW,EAAE,GAAG,YAAY,EAAE,GAAG,KAAK,GAAE,EAAE,GAAE,UAAU,EAAE,GAAG,QAAQ,EAAE,GAAG,WAAW,EAAE,GAAG,YAAY,EAAE,GAAG,KAAK,CAAC,CAAC,SAAS,GAAG,EAAE,CAAC,EAAG,gEAAgE,EAAE,aAAa,CAAC,CAAC,SAAS,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,oBAAoB,UAAU,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,SAAS,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,SAAS,IAAI,IAAK,KAAI,EAAE,QAAQ,SAAS,EAAE,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,EAAE,EAAE,kBAAkB,GAAG,mBAAmB,CAAC,EAAE,CAAC,KAAK,mBAAmB,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,EAAG,CAAC,IAAI,OAAO,EAAE,IAAI,IAAI,EAAG,EAAE,QAAQ,EAAE,YAAY,YAAY,EAAE,EAAE,EAAG,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAG,YAAY,EAAE,CAAE,EAAE,IAAI,EAAG,EAAE,MAAM,EAAG,EAAE,GAAG,EAAE,YAAY,CAAC,EAAE,CAAC,GAAG,EAAG,EAAE,sBAAsB,CAAC,EAAE,IAAK,IAAK,GAAE,OAAO,EAAG,CAAC,CAAC,IAAI,EAAG,EAAE,UAAU,EAAG,EAAE,WAAW,SAAS,EAAG,EAAG,MAAM,EAAG,GAAI,EAAG,MAAM,EAAG,OAAO,EAAG,IAAK,OAAO,EAAG,KAAK,IAAI,EAAG,EAAG,MAAM,CAAE,EAAE,EAAG,KAAK,IAAI,GAAI,EAAG,MAAM,EAAG,OAAO,CAAE,GAAG,IAAK,KAAkD,GAAI,OAAO,EAAG,KAAK,IAAI,EAAG,CAAC,EAAE,EAAG,KAAK,IAAI,EAAG,EAAG,KAAK,IAAhG,EAAG,KAAK,IAAI,EAAG,CAAC,EAAE,EAAG,KAAK,IAAI,EAAG,EAAG,KAAK,GAA0D,IAAI,EAAG,EAAG,EAAG,GAAG,EAAG,GAAG,IAAK,IAAI,OAAO,EAAE,MAAM,EAAE,EAAE,EAAG,EAAE,CAAE,EAAE,IAAI,EAAG,EAAG,GAAG,GAAG,IAAK,OAAO,EAAG,EAAE,IAAI,CAAE,EAAE,EAAG,GAAE,EAAG,SAAS,CAAE,GAAG,EAAE,OAAO,EAAE,YAAY,CAAC,GAAG,EAAG,aAAa,EAAE,mBAAmB,GAAG,CAAC,EAAE,EAAG,QAAQ,EAAE,KAAK,GAAG,EAAG,QAAQ,EAAE,SAAS,OAAO,GAAG,EAAE,OAAO,CAAC,IAAI,EAAG,EAAE,UAAU,IAAK,IAAK,KAAI,EAAG,GAAG,EAAG,aAAa,EAAG,GAAG,CAAC,EAAE,EAAE,eAAe,EAAG,QAAQ,EAAE,KAAK,EAAE,EAAE,WAAW,EAAG,QAAQ,EAAE,SAAS,EAAE,EAAG,QAAQ,EAAE,UAAU,CAAC,MAAM,EAAE,SAAS,EAAG,QAAQ,EAAE,MAAM,EAAE,EAAE,UAAU,EAAG,QAAQ,EAAE,SAAS,EAAE,GAAG,EAAE,cAAc,GAAG,EAAE,sBAAsB,KAAK,EAAG,mJAAmJ,EAAE,EAAG,yBAAyB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,mBAAmB,OAAO,GAAG,GAAG,IAAI,kBAAkB,EAAE,EAAG,gBAAgB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,eAAe,MAAM,CAAC,IAAI,EAAG,EAAE,iBAAiB,EAAG,EAAE,iBAAiB,EAAG,EAAE,gBAAgB,EAAG,EAAG,EAAE,IAAI,CAAE,CAAC,CAAC,gBAAgB,EAAE,EAAG,EAAE,IAAI,CAAC,CAAC,CAAC,eAAe,YAAY,EAAE,IAAI,IAAI,EAAG,EAAE,EAAG,EAAG,IAAK,EAAG,SAAS,EAAE,aAAa,CAAE,EAAE,EAAG,OAAO,EAAG,GAAI,EAAG,EAAG,EAAG,CAAC,MAAM,GAAG,EAAE,gBAAgB,EAAG,gBAAgB,EAAG,EAAG,EAAE,KAAK,OAAO,GAAG,EAAE,0BAA0B,CAAC,IAAI,EAAG,EAAE,oBAAoB,IAAK,GAAsB,IAApB,EAAE,kBAAsB,EAAG,KAAK,IAAI,EAAE,cAAc,CAAE,EAAE,EAAG,gBAAgB,EAAG,EAAG,CAAE,CAAC,MAAM,EAAG,OAAO,EAAG,CAAE,CAAC,EAAE,SAAS,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,cAAc,CAAC,GAAG,EAAE,OAAA,GAAW,EAAE,kBAAkB,CAAC,GAAG,EAAE,KAAA,EAAQ,EAAE,YAAY,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,KAAA,EAAQ,EAAE,YAAY,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,KAAA,GAAS,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,QAAQ,SAAS,EAAE,EAAE,EAAE,KAAK,CAAC,IAAI,OAAO,EAAE,GAAG,EAAE,GAAE,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,gBAAgB,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,OAAO,KAAK,EAAE,MAAM,IAAI,EAAE,UAAU,CAAC,EAAE,EAAE,YAAY,EAAE,WAAW,CAAC,EAAE,CAAC,EAAE,IAAI,GAAG,EAAE,gBAAgB,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,OAAO,KAAK,EAAE,MAAM,IAAI,EAAE,UAAU,CAAC,EAAE,EAAE,YAAY,EAAE,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,IAAI,OAAO,EAAE,SAAS,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,OAAO,IAAI,EAAG,EAAE,SAAS,GAAG,EAAG,GAAG,MAAM,QAAQ,CAAE,EAAE,IAAI,IAAI,EAAG,EAAE,EAAG,EAAG,OAAO,IAAK,CAAC,IAAI,EAAG,EAAG,GAAI,GAAG,EAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAE,CAAC,MAAM,GAAG,EAAG,EAAE,CAAC,EAAE,EAAE,IAAI,CAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,aAAa,SAAS,EAAE,EAAE,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,QAAQ,EAAE,EAAE,CAAC,EAAE,OAAO,IAAI,QAAQ,GAAG,CAAC,SAAS,GAAI,CAAC,GAAG,EAAE,QAAQ,SAAS,EAAG,CAAC,EAAE,IAAI,CAAE,CAAC,CAAC,eAAe,QAAQ,GAAG,EAAE,OAAO,CAAE,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,WAAW,EAAG,EAAE,CAAC,CAAC,GAAG,IAAI,6BAA6B,IAAI,KAAU,WAAW,EAAG,EAAE,EAArB,EAAG,CAAmB,CAAC,CAAC,EAAE,IAAI,GAAG,KAAK,SAAS,GAAG,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,SAAS,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC,IAAI,GAAG,IAAI,GAAG,GAAG,iBAAiB,EAAE,EAAE,OAAO,KAAK,KAAK,GAAG,WAAW,IAAI,EAAE,KAAK,iBAAiB,SAAS,EAAE,CAAC,GAAG,EAAE,GAAE,iBAAiB,CAAC,EAAE,IAAI,KAAK,GAAG,KAAK,EAAE,GAAG,MAAM,CAAC,EAAE,GAAE,iBAAiB,eAAe,EAAE,EAAE,GAAE,iBAAiB,aAAa,EAAE,EAAE,KAAK,OAAO,SAAS,EAAE,EAAE,CAAC,GAAG,IAAI,IAAK,IAAG,EAAE,WAAW,CAAC,EAAE,CAAC,EAAG,kEAAkE,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC,EAAE,OAAO,IAAI,EAAE,GAAE,UAAU,CAAC,GAAG,GAAE,eAAe,CAAC,EAAE,EAAE,IAAI,OAAO,IAAI,MAAM,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,wBAAwB,CAAC,GAAG,EAAE,kBAAkB,EAAE,EAAE,SAAS,MAAM,EAAE,wBAAwB,CAAC,GAAG,EAAE,kBAAkB,EAAE,GAAE,UAAU,CAAC,GAAG,GAAE,eAAe,CAAC,IAAI,IAAI,MAAM,EAAE,cAAc,IAAI,CAAC,KAAK,GAAE,mBAAmB,CAAC,GAAG,GAAE,aAAa,CAAC,EAAE,EAAE,GAAE,UAAU,GAAG,EAAE,UAAU,CAAC,GAAG,EAAE,eAAe,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,GAAE,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,EAAG,iBAAiB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,GAAG,wBAAwB,EAAA,IAAM,EAAE,aAAa,EAAE,GAAG,KAAK,qBAAqB,GAAG,GAAE,KAAK,KAAK,eAAe,EAAE,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,KAAK,CAAC,EAAE,GAAE,UAAU,CAAC,GAAG,GAAE,eAAe,CAAC,EAAE,CAAC,IAAI,EAAG,EAAE,GAAG,oBAAoB,EAAE,IAAK,MAAM,GAAG,EAAG,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,OAAO,EAAE,EAAE,cAAc,CAAC,GAAG,EAAE,KAAK,GAAG,EAAE,EAAE,GAAG,GAAE,UAAU,CAAC,GAAG,GAAE,eAAe,CAAC,GAAG,GAAE,gBAAgB,IAAI,CAAC,EAAE,IAAI,GAAG,gBAAgB,EAAE,CAAC,EAAE,KAAK,KAAK,OAAO,QAAQ,KAAK,CAAC,GAAG,GAAE,aAAa,EAAE,IAAI,EAAE,EAAE,MAAM,aAAa,GAAG,GAAG,OAAO,EAAE,EAAE,CAAC,EAAE,KAAK,CAAC,GAAG,GAAE,WAAW,EAAE,KAAK,KAAK,YAAY,CAAC,GAAG,KAAK,KAAK,MAAM,GAAG,GAAG,EAAE,cAAc,KAAK,CAAC,EAAE,CAAC,IAAI,EAAG,EAAE,OAAO,EAAG,EAAE,aAAa,GAAG,EAAE,YAAY,EAAE,EAAE,cAAc,CAAC,IAAI,EAAG,EAAE,QAAQ,GAAG,EAAG,OAAO,EAAE,IAAI,IAAI,EAAG,EAAE,EAAG,EAAG,OAAO,EAAG,EAAG,IAAK,CAAC,IAAI,EAAG,EAAG,GAAI,GAAG,EAAG,EAAG,EAAE,CAAE,CAAC,CAAC,IAAI,GAAG,OAAO,CAAC,EAAE,IAAI,IAAI,EAAG,EAAE,EAAG,EAAG,OAAO,EAAG,EAAG,IAAK,CAAC,IAAI,EAAG,EAAG,GAAI,GAAG,EAAE,EAAE,EAAG,EAAG,QAAQ,CAAC,CAAC,MAAM,EAAG,OAAO,GAAG,GAAG,EAAG,EAAG,EAAE,CAAC,EAAE,IAAI,GAAG,OAAO,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,MAAM,IAAI,IAAI,EAAE,8BAA8B,CAAC,EAAE,EAAE,yBAAyB,CAAC,GAAG,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,UAAU,CAAC,GAAG,EAAE,cAAc,EAAE,EAAE,CAAC,EAAE,EAAE,kBAAkB,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,OAAO,GAAG,EAAE,EAAE,EAAE,OAAO,GAAG,KAAK,CAAC,GAAG,GAAE,eAAe,EAAE,eAAe,EAAE,MAAM,MAAM,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,AAA2B,EAA3B,EAAE,OAAO,EAAI,EAAE,EAAE,OAAO,GAAK,IAAI,EAAE,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,UAAU,CAAC,EAAE,OAAO,GAAG,EAAE,OAAO,KAAK,EAAE,MAAM,MAAM,EAAE,QAAQ,EAAE,EAAE,iBAAiB,GAAG,EAAE,MAAM,EAAE,aAAa,CAAC,GAAG,EAAE,OAAO,CAAC,OAAO,GAAG,EAAE,QAAQ,EAAE,UAAU,CAAC,EAAE,EAAE,YAAY,EAAE,WAAW,CAAC,OAAO,GAAG,EAAE,aAAa,CAAC,EAAE,eAAe,GAAG,iBAAiB,CAAC,EAAE,CAAC,GAAG,GAAG,sBAAsB,EAAE,WAAW,CAAC,CAAC,aAAa,CAAE,EAAE,IAAI,EAAG,EAAG,OAAO,CAAC,EAAE,EAAG,EAAE,SAAS,EAAG,SAAS,EAAE,KAAK,EAAE,EAAG,EAAG,EAAE,GAAG,EAAE,IAAI,CAAC,OAAO,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,CAAC,EAAE,eAAe,GAAG,iBAAiB,CAAC,GAAG,CAAC,IAAI,EAAG,EAAG,OAAO,CAAC,EAAE,EAAG,EAAE,SAAS,GAAG,IAAI,EAAE,iBAAiB,IAAK,IAAyF,EAAG,iBAAiB,MAAM,EAAG,sBAAsB,EAAE,GAAG,KAAK,EAAG,eAAe,MAAM,IAA3K,EAAE,iBAAiB,MAAM,EAAE,sBAAsB,EAAE,GAAG,KAAK,EAAE,eAAe,MAAM,GAA4F,GAAG,aAAa,EAAE,WAAW,CAAC,CAAC,aAAa,CAAE,GAAG,MAAM,QAAQ,CAAE,EAAE,CAAC,IAAI,EAAG,EAAG,OAAO,IAAI,IAAI,EAAG,EAAE,EAAG,EAAG,OAAO,EAAG,EAAG,IAAK,CAAC,IAAI,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,eAAe,GAAI,EAAG,SAAS,EAAE,KAAK,EAAE,EAAG,EAAG,EAAE,GAAG,EAAE,CAAE,CAAC,CAAC,MAAM,EAAG,SAAS,EAAE,KAAK,EAAE,EAAG,EAAG,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,IAAI,EAAG,EAAE,SAAS,IAAI,IAAI,EAAG,EAAE,EAAG,EAAG,OAAO,EAAG,EAAG,IAAK,GAAG,EAAG,GAAI,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,aAAa,EAAG,YAAY,GAAI,EAAE,EAAE,gBAAgB,CAAC,EAAE,KAAK,CAAC,GAAG,GAAE,eAAe,EAAE,eAAe,CAAC,EAAE,GAAG,EAAG,SAAS,GAAE,KAAK,CAAC,CAAC,EAAE,EAAE,OAAO,GAAG,GAAG,EAAE,EAAE,CAAC,EAAE,EAAG,OAAO,GAAG,GAAG,EAAG,EAAE,CAAC,EAAE,EAAG,OAAO,GAAG,GAAG,EAAG,EAAE,CAAC,EAAE,EAAG,QAAQ,MAAM,QAAQ,CAAC,CAAC,EAAE,EAAG,QAAQ,MAAM,QAAQ,CAAC,CAAC,EAAE,EAAG,QAAQ,MAAM,QAAQ,CAAC,CAAC,EAAE,EAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE,EAAE,iBAAiB,QAAQ,KAAK,OAAO,GAAG,EAAE,MAAM,yBAAyB,EAAE,MAAM,IAAK,GAAE,CAAC,IAAI,EAAG,GAAG,IAAI,6BAA6B,GAAG,GAAG,IAAI,wBAAwB,EAAE,EAAE,MAAM,yBAAyB,EAAE,IAAI,IAAI9F,GAAG,EAAE,EAAE,CAAC,gBAAgB,CAAC,EAAE,KAAK,EAAGa,GAAGsE,GAAG,UAAU3B,GAAG,QAAQ,KAAK,IAAI,EAAE,GAAG,OAAO,EAAE,cAAc,EAAE,mBAAmB,CAAC,EAAE,qBAAqB,CAAC,EAAE,WAAWlE,GAAG,iBAAiB,CAAC,CAAC,CAAC,IAAI,EAAG,EAAE,MAAM,yBAAyB,EAAE,IAAI,EAAG,EAAE,UAAU,GAAE,EAAG,QAAQ,EAAG,EAAE,EAAE,4BAA4B,EAAG,EAAE,EAAE,2BAA2B,EAAE,IAAI,EAAG,EAAE,gBAAgB,EAAE,EAAG,EAAE,kBAAkB,EAAE,EAAG,EAAE,qBAAqB,EAAE,EAAE,gBAAgB,CAAE,EAAE,EAAE,cAAc,EAAE,EAAE,GAAG,EAAE,cAAc,EAAE,GAAG,GAAG,EAAE,cAAc,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,GAAG,OAAO,CAAC,EAAE,IAAI,EAAG,EAAE,YAAY,EAAE,YAAA,EAAe,IAAI,EAAG,EAAE,SAAS,GAAG,EAAE,WAAW,IAAK,KAAI,EAAE,SAAS,IAAK,IAAG,EAAE,gBAAgB,CAAC,EAAE,KAAK,CAAC,GAAG,GAAE,eAAe,EAAE,eAAe,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,8BAA8B,CAAE,EAAE,EAAE,yBAAyB,CAAE,EAAE,GAAG,IAAI,sCAAsC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAG,CAAC,EAAE,IAAI,IAAI,EAAG,EAAE,EAAG,EAAE,OAAO,EAAG,EAAG,IAAK,CAAC,GAAa,CAAC,OAAO,EAAG,SAAS,EAAG,SAAS,EAAG,MAAM,GAA/C,EAAE,GAAoD,GAAG,EAAG,OAAA,GAAW,EAAG,OAAO,KAAK,EAAE,MAAM,EAAE,CAAC,IAAI,EAAG,EAAG,KAAK,EAAG,KAAA,EAAQ,EAAG,YAAY,CAAC,EAAE,GAAG,EAAG,EAAE,EAAE,EAAG,EAAG,CAAE,EAAE,EAAG,KAAK,EAAG,EAAG,YAAY,CAAC,EAAE,EAAG,CAAC,CAAC,CAAC,CAAC,IAAK,CAAC,IAAI,EAAE,8BAA8B,CAAE,EAAE,EAAE,yBAAyB,CAAE,EAAE,CAAC,EAAE,gBAAgB,EAAG,EAAG,CAAE,EAAE,EAAE,cAAc,GAAG,EAAE,EAAE,IAAK,IAAK,KAAI,EAAE,SAAS,GAAI,EAAE,YAAY,CAAE,CAAC,SAAS,GAAG,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,UAAU,CAAC,EAAE,EAAE,iBAAiB,KAAK,IAAI,IAAI,EAAE,EAAE,EAAG,EAAE,OAAO,EAAE,EAAG,IAAI,CAAC,IAAI,EAAG,EAAE,GAAG,CAAC,OAAO,EAAG,SAAS,EAAG,MAAM,GAAI,EAAG,EAAG,EAAG,SAAS,EAAG,gBAAgB,CAAC,GAAG,IAAI,OAAO,EAAG,GAAG,EAAG,OAAO,KAAK,EAAE,MAAM,GAAG,GAAG,EAAG,EAAE,EAAE,EAAG,EAAG,CAAE,CAAC,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAG,CAAC,EAAE,eAAe,EAAE,EAAE,EAAE,EAAE,EAAE,CAAE,EAAE,EAAE,gBAAgB,iBAAiB,EAAE,mBAAmB,EAAE,WAAW,EAAE,EAAE,aAAa,gBAAgB,EAAE,eAAe,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,EAAE,EAAE,CAAE,EAAE,EAAE,cAAc,CAAC,GAAG,EAAE,OAAA,GAAW,EAAE,kBAAkB,CAAC,GAAG,EAAE,KAAA,EAAQ,EAAE,YAAY,CAAC,EAAE,EAAE,mBAAmB,EAAE,EAAE,EAAE,EAAE,EAAE,CAAE,EAAE,EAAE,KAAA,EAAQ,EAAE,YAAY,CAAC,EAAE,EAAE,mBAAmB,EAAE,EAAE,EAAE,EAAE,EAAE,CAAE,EAAE,EAAE,KAAA,GAAS,EAAE,mBAAmB,EAAE,EAAE,EAAE,EAAE,EAAE,CAAE,EAAE,EAAE,cAAc,EAAE,EAAE,EAAE,EAAE,EAAE,CAAE,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,UAAU,CAAC,IAAI,EAAE,IAAI,IAAI,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,EAAG,EAAE,MAAM,aAAa,EAAG,EAAE,MAAM,QAAQ,EAAG,GAAG,cAAc,EAAE,EAAE,MAAM,EAAG,EAAE,CAAC,EAAE,EAAG,GAAG,mBAAmB,CAAE,EAAE,EAAG,EAAE,SAAS,EAAE,YAAY,EAAE,wBAAwB,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,YAAY,KAAK,EAAE,IAAI,EAAE,IAAI,IAAI,EAAG,EAAE,wBAAwB,EAAE,uBAAuB,CAAC,EAAE,QAAQ,EAAE,qBAAqB,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,CAAE,EAAE,EAAE,eAAe,EAAE,cAAc,MAAM,EAAE,SAAS,KAAK,EAAE,oBAAoB,EAAE,eAAe,IAAK,IAAK,KAAI,EAAE,iBAAiB,UAAU,EAAE,EAAE,EAAG,IAAI,IAAI,EAAE,SAAS,GAAI,IAAI,EAAG,EAAG,IAAI,CAAE,EAAE,GAAG,IAAK,IAAK,OAAM,EAAE,iBAAiB,GAAI,EAAE,qBAAqB,EAAG,OAAO,GAAG,EAAE,CAAE,EAAE,CAAA,KAAQ,GAAG,SAAS,GAAG,YAAY,CAAC,EAAE,EAAE,gBAAgB,EAAG,CAAC,EAAE,EAAG,GAAG,eAAe,EAAG,CAAE,EAAE,EAAG,IAAI,EAAG,CAAE,EAAE,EAAE,SAAS,EAAG,SAAS,IAAI,EAAG,EAAE,SAAS,OAAO,CAAC,EAAE,kBAAkB,CAAC,EAAE,qBAAqB,EAAE,WAAW,CAAC,KAAK,EAAG,eAAe,GAAE,SAAS,GAAG,EAAE,CAAE,EAAE,EAAE,YAAY,GAAG,CAAC,EAAE,EAAE,mBAAmB,EAAG,EAAE,cAAc,EAAG,kBAAkB,MAAM,EAAE,MAAM,QAAQ,EAAG,WAAW,MAAM,EAAE,MAAM,MAAM,EAAG,kBAAkB,MAAM,EAAE,MAAM,YAAY,EAAG,wBAAwB,MAAM,EAAE,MAAM,kBAAkB,EAAG,WAAW,MAAM,EAAE,MAAM,KAAK,EAAG,iBAAiB,MAAM,EAAE,MAAM,WAAW,EAAG,eAAe,MAAM,EAAE,MAAM,SAAS,EAAG,MAAM,MAAM,EAAE,MAAM,aAAa,EAAG,MAAM,MAAM,EAAE,MAAM,aAAa,EAAG,YAAY,MAAM,EAAE,MAAM,MAAM,EAAG,kBAAkB,MAAM,EAAE,MAAM,YAAY,EAAG,iBAAiB,MAAM,EAAE,MAAM,KAAK,EAAG,wBAAwB,MAAM,EAAE,MAAM,wBAAwB,EAAG,gBAAgB,MAAM,EAAE,MAAM,gBAAgB,EAAG,aAAa,MAAM,EAAE,MAAM,aAAa,EAAG,kBAAkB,MAAM,EAAE,MAAM,mBAAmB,EAAE,eAAe,EAAG,EAAE,aAAa,KAAK,CAAE,CAAC,SAAS,GAAG,EAAE,CAAC,GAAG,EAAE,eAAe,KAAK,CAAC,IAAI,EAAE,EAAE,eAAe,YAAY,EAAE,EAAE,aAAa,GAAG,aAAa,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,SAAS,EAAE,SAAS,EAAE,cAAc,EAAE,cAAc,EAAE,WAAW,EAAE,WAAW,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,YAAY,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,aAAa,EAAE,aAAa,EAAE,eAAe,EAAE,eAAe,EAAE,YAAY,EAAE,WAAW,CAAC,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAG,EAAE,IAAI,EAAG,EAAE,wBAAwB,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,YAAY,KAAK,EAAG,IAAI,KAAK,EAAE,iBAAiB,EAAE,mBAAmB,CAAC,EAAE,EAAE,QAAQ,WAAW0C,GAAG,EAAG,EAAE,wBAAwB,EAAE,uBAAuB,CAAC,EAAE,QAAQ,EAAE,qBAAqB,CAAC,EAAE,OAAO,EAAG,EAAE,IAAI,EAAE,QAAQ,EAAG,CAAE,EAAE,EAAG,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,OAAO,EAAE,WAAW,MAAM,WAAW,EAAE,EAAG,CAAC,CAAC,EAAE,WAAW,UAAU,CAAC,CAAC,EAAE,WAAW,EAAE,WAAW,GAAG,EAAG,CAAC,CAAC,EAAE,gBAAgB,SAAS,EAAG,CAAC,CAAC,EAAE,gBAAgB,OAAO,EAAG,CAAC,CAAC,EAAE,gBAAgB,MAAM,EAAA,EAAM,EAAE,aAAa,IAAI,MAAM,EAAE,mBAAmB,CAAC,KAAK,EAAG,EAAE,aAAa,IAAI,EAAG,EAAE,gBAAgB,UAAU,EAAE,gBAAgB,QAAQ,EAAE,gBAAgB,MAAM,EAAG,IAAK,IAAK,GAAY,EAAV,EAAG,OAAS,EAAG,EAAE,IAAI,CAAC,EAAE,EAAG,EAAE,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,KAAK,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,EAAG,IAAI,GAAG,EAAE,KAAK,EAAE,GAAE,SAAS,EAAE,EAAE,CAAE,CAAC,CAAC,IAAI,EAAG,CAAC,EAAE,EAAE,UAAU,EAAG,WAAW,EAAG,aAAa,EAAG,qBAAqB,EAAG,MAAM,SAAS,EAAG,mBAAmB,GAAI,EAAE,eAAe,EAAG,WAAW,CAAC,GAAG,CAAC,EAAE,eAAe,EAAG,WAAW,CAAC,GAAG,EAAE,eAAe,EAAG,gBAAgB,CAAC,GAAG,EAAE,eAAe,MAAM,EAAE,eAAe,EAAG,gBAAgB,CAAC,GAAG,EAAE,eAAe,MAAM,EAAE,iBAAiB,EAAG,aAAa,CAAC,GAAG,CAAC,EAAE,iBAAiB,EAAG,aAAa,CAAC,GAAG,EAAE,eAAe,EAAG,WAAW,CAAC,GAAG,CAAC,EAAE,eAAe,EAAG,WAAW,CAAC,GAAG,EAAE,iBAAiB,EAAG,kBAAkB,CAAC,GAAG,EAAE,gBAAgB,MAAM,EAAE,iBAAiB,EAAG,kBAAkB,CAAC,GAAG,EAAE,gBAAgB,MAAM,EAAE,iBAAiB,EAAG,kBAAkB,CAAC,GAAG,EAAE,eAAe,MAAM,EAAE,iBAAiB,EAAG,kBAAkB,CAAC,GAAG,EAAE,eAAe,MAAM,EAAG,SAAS,GAAI,EAAE,MAAM,CAAC,GAAG,EAAG,MAAM,GAAI,EAAG,oBAAoB,IAAK,KAAI,EAAG,oBAAoB,GAAE,WAAW,EAAG,kBAAkB,GAAE,kBAAkB,EAAG,eAAe,GAAI,EAAG,iBAAiB,GAAI,EAAG,eAAe,GAAI,EAAG,eAAe,GAAI,EAAG,cAAc,GAAI,EAAG,cAAc,GAAI,EAAG,oBAAoB,KAAM,EAAG,CAAC,IAAI,EAAG,CAAC,EAAE,EAAG,UAAU,EAAE,SAAS,IAAI,EAAG,EAAG,eAAe,IAAK,CAAC,IAAI,EAAG,GAAG,EAAE,EAAE,CAAC,GAAG,IAAI,EAAG,CAAC,EAAE,EAAG,CAAC,EAAE,EAAG,CAAC,EAAE,EAAG,EAAG,YAAY,EAAE,EAAG,EAAG,SAAS,GAAG,EAAG,WAAW,EAAG,OAAO,IAAI,EAAG,CAAC,EAAE,EAAG,CAAC,EAAE,EAAG,CAAC,GAAG,EAAE,KAAK,IAAI,EAAE,EAAE,GAAG,EAAG,CAAC,GAAG,GAAI,IAAI,EAAE,CAAC,EAAG,QAAQ,MAAM,YAAY,GAAG,EAAE,gBAAgB,CAAC,IAAI,EAAE,eAAe,CAAC,EAAE,EAAE,uBAAuB,GAAG,EAAG,SAAS,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,EAAG,SAAS,EAAE,aAAa,EAAE,kBAAkB,EAAE,IAAI,EAAG,EAAG,IAAI,eAAe,IAAK,IAAK,IAAG,EAAG,SAAS,EAAE,GAAG,sBAAsB,EAAE,WAAW,CAAC,EAAE,GAAG,wBAAwB,EAAG,SAAS,EAAE,gBAAgB,GAAG,KAAK,IAAI,EAAE,IAAI,CAAC,EAAE,KAAK,IAAI,GAAG,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,mBAAmB,EAAG,SAAS,EAAE,iBAAiB,EAAE,uBAAuB,CAAC,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAG,CAAC,EAAE,EAAG,CAAC,EAAE,CAAC,GAAG,EAAG,cAAc,EAAG,MAAM,qBAAqB,OAAO,GAAG,EAAG,SAAS,EAAE,uBAAuB,EAAG,MAAM,qBAAqB,CAAC,EAAE,EAAG,MAAM,cAAc,OAAO,GAAG,EAAG,SAAS,EAAE,gBAAgB,EAAG,MAAM,cAAc,CAAC,EAAE,EAAG,MAAM,eAAe,OAAO,GAAG,EAAG,SAAS,EAAE,iBAAiB,EAAG,MAAM,eAAe,CAAC,GAAG,EAAE,cAAc,CAAC,EAAG,YAAY,EAAE,EAAE,YAAY,EAAE,EAAG,YAAY,EAAE,EAAE,mBAAmB,EAAE,IAAI,EAAG,EAAE,SAAS,IAAK,EAAG,cAAc,MAAM,EAAG,mBAAmB,EAAE,EAAG,SAAS,EAAE,cAAc,EAAG,YAAY,CAAC,EAAE,CAAC,EAAE,gBAAgB,EAAG,YAAY,EAAE,EAAE,iBAAiB,EAAE,EAAG,SAAS,EAAE,kBAAkB,EAAE,iBAAiB,CAAC,EAAE,EAAG,YAAY,EAAE,EAAE,mBAAmB,EAAE,EAAG,SAAS,EAAE,oBAAoB,EAAE,iBAAiB,CAAC,EAAE,EAAG,YAAY,EAAE,EAAE,sBAAsB,EAAE,EAAE,iBAAiB,MAAM,EAAG,SAAS,EAAE,uBAAuB,EAAE,eAAe,CAAC,GAAG,IAAI,EAAG,EAAE,gBAAgB,IAAI,EAAG,WAAW,IAAK,IAAG,EAAG,SAAS,IAAK,IAAG,EAAG,QAAQ,IAAK,KAAI,GAAG,OAAO,EAAE,EAAE,CAAE,GAAG,GAAI,EAAG,gBAAgB,EAAE,iBAAiB,EAAG,cAAc,EAAE,cAAc,EAAG,SAAS,EAAE,gBAAgB,EAAE,aAAa,IAAI,EAAE,wBAAwB,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,SAAS,MAAM,EAAE,cAAc,OAAO,EAAG,gBAAgB,MAAM,EAAE,sBAAsB,EAAG,SAAS,IAAK,KAAI,EAAG,OAAO,MAAM,GAAG,GAAG,IAAK,EAAG,SAAS,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,EAAG,aAAa,GAAG,EAAG,CAAE,EAAE,GAAI,EAAE,MAAM,CAAC,GAAG,GAAG,mBAAmB,EAAG,CAAE,EAAE,GAAG,wBAAwB,EAAG,EAAE,GAAG,GAAG,EAAE,MAAM,yBAAyB,EAAE,GAAG,EAAE,GAAG,OAAO,EAAE,GAAG,CAAE,EAAE,EAAG,CAAC,GAAG,EAAE,kBAAkB,EAAE,qBAAqB,CAAC,IAAI,GAAG,OAAO,EAAE,GAAG,CAAE,EAAE,EAAG,CAAC,EAAE,EAAE,mBAAmB,CAAC,GAAG,EAAE,kBAAkB,EAAG,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,EAAG,SAAS,EAAE,kBAAkB,EAAE,eAAe,EAAE,EAAG,SAAS,EAAE,eAAe,EAAE,YAAY,EAAE,EAAG,SAAS,EAAE,cAAc,EAAE,WAAW,EAAE,EAAE,kBAAkB,EAAE,oBAAoB,CAAC,IAAI,EAAG,EAAE,eAAe,IAAI,IAAI,EAAG,EAAE,EAAG,EAAG,OAAO,EAAG,EAAG,IAAK,CAAC,IAAI,EAAG,EAAG,GAAI,GAAG,OAAO,EAAG,CAAE,EAAE,GAAG,KAAK,EAAG,CAAE,CAAC,CAAC,CAAC,OAAO,CAAE,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,EAAE,kBAAkB,YAAY,EAAE,EAAE,WAAW,YAAY,EAAE,EAAE,kBAAkB,YAAY,EAAE,EAAE,wBAAwB,YAAY,EAAE,EAAE,YAAY,YAAY,EAAE,EAAE,kBAAkB,YAAY,EAAE,EAAE,WAAW,YAAY,EAAE,EAAE,iBAAiB,YAAY,EAAE,EAAE,eAAe,YAAY,EAAE,EAAE,iBAAiB,YAAY,CAAC,CAAC,SAAS,GAAG,EAAE,CAAC,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,kBAAkB,UAAU,CAAC,OAAO,CAAC,EAAE,KAAK,qBAAqB,UAAU,CAAC,OAAO,CAAC,EAAE,KAAK,gBAAgB,UAAU,CAAC,OAAO,CAAC,EAAE,KAAK,wBAAwB,SAAS,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,0BAA0B,EAAE,qBAAqB,CAAC,EAAE,EAAE,4BAA4B,CAAC,IAAI,EAAE,qBAAqB,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,eAAe,EAAE,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC,eAAe,EAAE,0BAA0B,IAAK,GAAE,EAAE,EAAE,sBAAsB,CAAC,CAAC,EAAE,KAAK,2BAA2B,SAAS,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,mBAAmB,EAAE,EAAE,wBAAwB,IAAI,IAAK,EAAC,EAAE,IAAI+D,GAAG,EAAE,kBAAkB,EAAE,KAAK,gBAAgB,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,EAAG,CAAC,EAAE,GAAG,EAAE,CAAC,IAAI,EAAG,EAAE,IAAI,CAAC,EAAE,GAAG,EAAG,0BAA0B,IAAK,GAAE,CAAC,EAAG,gBAAgB,EAAE,YAAY,EAAG,kBAAkB,EAAE,GAAE,KAAK,EAAE,QAAQ,EAAE,GAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,YAAY,EAAG,SAAS,EAAC,EAAE,EAAG,QAAQ,EAAC,EAAE,EAAG,eAAe,EAAE,EAAE,EAAE,GAAG,MAAM,MAAM,GAAG,EAAG,qBAAqB,IAAK,GAAE,EAAE,kBAAkB,CAAC,OAAO,GAAG,EAAG,sBAAsB,EAAE,eAAe,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,eAAe,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC,cAAc,OAAO,GAAG,EAAE,YAAY,CAAC,IAAI,EAAG,EAAE,aAAa,GAAG,EAAG,sBAAsB,EAAG,CAAC,GAAG,IAAK,MAAM,EAAE,IAAI,CAAE,IAAI,EAAE,QAAQ,EAAG,MAAM,OAAO,EAAE,SAAS,EAAG,MAAM,QAAQ,MAAU,MAAM,gFAAgF,EAAE,EAAE,uBAAuB,CAAC,CAAC,CAAC,CAAC,IAAI,EAAG,EAAE,SAAS,EAAG,iBAAiB,EAAG,oBAAoB,EAAG,4BAA4B,EAAG,CAAC,GAAG,IAAI,EAAG,EAAE,IAAI,CAAC,CAAC,CAAC,mBAAmB,EAAE,yBAAyB,AAAgC,EAAhC,MAAM,QAAQ,EAAG,EAAE,EAAI,EAAG,EAAE,CAAC,GAAK,EAAG,GAAG,EAAE,CAAC,GAAG,AAA8G,EAA9G,EAAE,QAAQ,GAAG,EAAE,mBAAmB,CAAC,IAAI,CAAC,EAAI,EAAE,IAAI,CAAC,CAAC,CAAC,+BAA+B,MAAM,QAAQ,CAAE,EAAI,EAAG,GAAK,EAAG,GAAE,KAAK,EAAE,QAAQ,EAAE,GAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,WAAW,MAAM,GAAE,KAAK,EAAC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,GAAE,KAAK,EAAC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG,IAAI,IAAI,EAAEA,IAAI,EAAG,gBAAgB,EAAE,YAAY,CAAC,GAAG,EAAG,YAAY,EAAE,CAAC,EAAE,EAAG,SAAS,EAAC,EAAE,EAAG,QAAQ,EAAC,EAAE,EAAG,eAAe,EAAE,EAAE,EAAE,CAAC,IAAI,EAAG,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,qBAAqB,EAAE,YAAY,EAAE,kBAAkB,EAAE,4BAA4B,EAAE,EAAG,eAAe,CAAC,CAAC,MAAM,GAAG,EAAG,CAAC,IAAI,EAAG,EAAE,IAAI,IAAI,EAAG,EAAE,EAAG,EAAE,SAAS,OAAO,IAAK,CAAC,IAAI,EAAG,EAAE,IAAI,EAAE,SAAS,EAAG,EAAE,EAAE,wBAAwB,EAAE,YAAY,EAAE,kBAAkB,EAAG,EAAG,eAAe,EAAE,CAAE,CAAC,CAAC,MAAM,GAAG,IAAI,MAAM,IAAI,EAAE,CAAC,IAAI,EAAG,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,qBAAqB,EAAE,YAAY,EAAE,kBAAkB,EAAE,WAAW,EAAG,eAAe,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,uBAAuB,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,EAAG,EAAG,EAAG,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,qBAAqB,CAAC,EAAG,oFAAoF,EAAE,MAAM,CAAC,IAAI,EAAG,EAAE,IAAI,CAAC,CAAC,CAAC,mBAAmB,GAAG,EAAE,yBAAyB,IAAK,IAAK,KAAI,EAAG,EAAG,IAAK,EAAG,CAAC,EAAG,gBAAgB,EAAE,YAAY,CAAE,EAAE,GAAG,CAAC,IAAI,EAAG,EAAE,SAAS,GAAI,EAAG,EAAG,OAAO,EAAG,EAAG,KAAK,GAAG,EAAE,SAAS,OAAO,GAAG,EAAE,WAAW,EAAE,kBAAkB,CAAE,EAAE,CAAC,GAAG,sBAAsB,CAAE,EAAE,CAAC,EAAG,qGAAqG,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG,oBAAoB,CAAE,EAAE,CAAC,EAAG,+GAA+G,EAAE,MAAM,CAAC,GAAG,GAAG,GAAG,EAAE,MAAM,GAAG,GAAG,GAAG,GAAG,EAAE,OAAO,GAAG,EAAE,WAAW,EAAE,EAAE,EAAE,EAAE,GAAG,QAAQ,CAAE,EAAE,GAAG,QAAQ,CAAE,EAAE,CAAE,CAAC,QAAQ,CAAC,IAAI,EAAG,IAAI,KAAiC,KAA5B,EAAE,IAAI,CAAC,CAAC,CAAC,mBAAwB,EAAG,gBAAgB,EAAE,YAAY,CAAE,CAAC,CAAC,CAAC,EAAE,KAAK,4BAA4B,eAAe,EAAE,EAAE,EAAE,EAAE,EAAE,EAAG,EAAG,EAAG,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,qBAAqB,MAAU,MAAM,0FAA0F,EAAE,IAAI,EAAG,EAAE,IAAI,CAAC,CAAC,CAAC,mBAAmB,GAAG,EAAE,yBAAyB,IAAK,IAAK,KAAI,EAAG,EAAG,IAAK,EAAG,GAAG,GAAG,GAAG,GAAG,EAAE,MAAM,GAAG,GAAG,GAAG,GAAG,EAAE,OAAO,EAAE,CAAC,EAAG,gBAAgB,EAAE,YAAY,CAAE,EAAE,IAAI,EAAG,EAAE,SAAS,GAAI,EAAG,EAAG,OAAO,EAAG,EAAG,KAAK,GAAG,EAAE,SAAS,OAAO,GAAG,EAAE,WAAW,EAAE,kBAAkB,CAAE,EAAE,CAAC,GAAG,sBAAsB,CAAE,EAAE,MAAU,MAAM,gHAAgH,EAAE,GAAG,CAAC,GAAG,oBAAoB,CAAE,EAAE,MAAU,MAAM,0HAA0H,EAAE,IAAI,EAAG,EAAE,aAAa,EAAE,EAAE,WAAW,EAAE,kBAAkB,CAAE,EAAE,EAAE,WAAW,EAAE,kBAAkB,EAAG,WAAW,EAAE,WAAW,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,EAAE,GAAG,QAAQ,CAAE,EAAE,GAAG,QAAQ,CAAE,EAAE,CAAC,EAAE,IAAI,EAAG,IAAI,KAAiC,KAA5B,EAAE,IAAI,CAAC,CAAC,CAAC,mBAAwB,EAAG,gBAAgB,EAAE,YAAY,CAAE,EAAE,IAAI,EAAG,EAAE,UAAU,EAAE,2BAA2B,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,MAAMC,EAAG,EAAE,EAAG,CAAC,EAAE,EAAE,WAAW,EAAE,kBAAkB,CAAE,EAAE,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,CAAE,EAAE,EAAE,aAAa,CAAE,EAAE,EAAE,WAAW,CAAE,EAAE,CAAE,MAAM,MAAU,MAAM,0FAA0F,CAAC,EAAE,KAAK,yBAAyB,SAAS,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,EAAW,GAAE,CAAC,EAAG,EAAE,KAAK,MAAM,EAAE,MAAM,MAAM,CAAC,EAAE,EAAG,KAAK,MAAM,EAAE,MAAM,OAAO,CAAC,EAAE,EAAG,IAAI,KAAS,EAAJ,EAAE,EAAI,EAAG,IAAI,KAAS,EAAJ,EAAE,EAAI,EAAE,aAAa,EAAE,CAAC,EAAE,EAAE,kBAAkB,EAAE,WAAW,EAAE,EAAE,EAAE,EAAG,EAAG,EAAE,CAAE,EAAE,EAAG,cAAc,CAAC,EAAE,IAAI,GAAG,EAAE,kBAAkB,EAAEC,GAAG,EAAE,kBAAkB,EAAE,KAAK,qBAAqB,SAAS,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAG,EAAE,CAAC,IAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAE,oBAAoB,EAAE,QAAQ,GAAI,EAAE,MAAM,GAAG,IAAI,KAAK,EAAG,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAG,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAG,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,EAAG,EAAE,IAAI,EAAE,EAAG,EAAE,IAAI,EAAE,EAAG,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAY,GAAE,CAAC,EAAG,EAAG,KAAK,MAAM,EAAG,MAAM,CAAE,EAAE,EAAG,KAAK,MAAM,EAAG,OAAO,CAAE,EAAE,AAA8E,EAA9E,EAAE,mBAAsB,EAAG,MAAM,EAAE,gBAAmB,KAAK,MAAM,EAAG,MAAM,CAAE,EAAK,EAAE,EAAG,EAAE,EAAG,EAAE,EAAG,CAAC,CAAC,IAAI,MAA6B,EAAG,EAAE,EAAG,EAAE,EAAG,IAApC,EAAG,EAAE,EAAE,EAAG,EAAE,EAAE,EAAG,EAAE,GAAoB,IAAI,EAAG,GAAG,QAAQ,EAAE,MAAM,EAAE,EAAG,GAAG,QAAQ,EAAE,IAAI,EAAE,EAAG,EAAE,iBAAiB,EAAE,aAAa,EAAE,CAAC,EAAE,EAAG,EAAE,YAAY,EAAE,oBAAoB,EAAE,0BAA0B,EAAE,kBAAkB,EAAE,CAAC,EAAE,EAAG,EAAE,mBAAmB,EAAE,aAAa,EAAE,CAAC,EAAE,EAAG,EAAE,YAAY,EAAE,YAAY,EAAE,oBAAoB,EAAE,KAAK,EAAE,EAAE,YAAY,EAAE,+BAA+B,EAAE,gBAAgB,EAAE,EAAE,YAAY,EAAE,iBAAiB,EAAE,eAAe,EAAE,IAAI,EAAG,EAAE,aAAa,EAAE,iBAAiB,EAAE,EAAG,EAAE,aAAa,EAAE,mBAAmB,EAAE,EAAG,EAAE,aAAa,EAAE,kBAAkB,EAAE,EAAG,EAAE,aAAa,EAAE,gBAAgB,EAAE,EAAG,EAAE,aAAa,EAAE,kBAAkB,EAAE,EAAE,YAAY,EAAE,kBAAkB,EAAG,KAAK,EAAE,EAAE,YAAY,EAAE,oBAAoB,EAAG,MAAM,EAAE,EAAE,YAAY,EAAE,mBAAmB,CAAE,EAAE,EAAE,YAAY,EAAE,iBAAiB,CAAE,EAAE,EAAE,YAAY,EAAE,mBAAmB,CAAE,EAAE,IAAI,EAAG,EAAE,oBAAoB,EAAE,gBAAgB,EAAG,EAAE,oBAAoB,EAAE,gBAAgB,GAAG,EAAE,eAAe,CAAC,IAAI,EAAG,EAAE,IAAI,CAAC,EAAE,EAAG,EAAE,IAAI,CAAC,EAAE,EAAG,EAAE,IAAI,EAAG,cAAc,EAAE,EAAG,EAAE,IAAI,EAAG,cAAc,EAAE,EAAG,gBAAgB,EAAE,iBAAiB,EAAG,kBAAkB,EAAE,EAAG,gBAAgB,EAAE,iBAAiB,EAAG,kBAAkB,EAAE,IAAI,IAAI,EAAG,EAAE,EAAG,EAAG,IAAK,IAAK,EAAE,wBAAwB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,IAAI,CAAC,CAAC,CAAC,eAAe,EAAE,EAAG,CAAE,EAAE,EAAE,wBAAwB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,IAAI,CAAC,CAAC,CAAC,eAAe,EAAG,EAAG,CAAE,GAAG,EAAE,gBAAgB,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAE,iBAAiB,EAAE,OAAO,EAAE,EAAG,gBAAgB,EAAE,iBAAiB,IAAI,EAAE,EAAG,gBAAgB,EAAE,iBAAiB,IAAI,CAAC,MAAM,GAAG,IAAI,GAAG,EAAE,uBAAuB,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,EAAG,EAAE,IAAI,CAAC,EAAE,EAAG,EAAE,IAAI,CAAC,EAAE,EAAG,gBAAgB,EAAE,iBAAiB,EAAE,EAAE,EAAG,gBAAgB,EAAE,iBAAiBA,EAAE,EAAE,IAAI,IAAI,EAAG,EAAE,EAAG,EAAG,IAAK,EAAG,EAAE,wBAAwB,EAAE,iBAAiB,EAAE,kBAAkB,EAAG,eAAe,EAAE,EAAG,CAAE,EAAE,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,WAAW,EAAG,eAAe,CAAC,EAAE,EAAG,EAAE,wBAAwB,EAAE,iBAAiB,EAAE,kBAAkB,EAAG,eAAe,EAAG,EAAG,CAAE,EAAE,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,WAAW,EAAG,eAAe,CAAE,EAAE,IAAI,EAA0E,EAAG,EAAE,kBAAkB,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAE,EAAE,EAAE,kBAAkB,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAE,EAAzK,EAAE,gBAAgB,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAE,iBAAiB,EAAE,OAAO,EAAqG,EAAG,gBAAgB,EAAE,iBAAiB,IAAI,EAAE,EAAG,gBAAgB,EAAE,iBAAiB,IAAI,CAAC,MAAM,EAAG,EAAE,eAAe,EAAE,gBAAgB,EAAE,cAAc,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAI,EAAE,EAAE,yBAAyB,EAAE,wBAAwB,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAI,EAAE,EAAE,cAAc,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAE,EAAE,EAAE,cAAc,EAAE,cAAc,EAAE,WAAW,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAI,EAAE,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,WAAW,EAAG,EAAG,EAAG,EAAG,MAAM,EAAG,OAAO,EAAG,EAAG,IAAI,EAAE,EAAE,cAAc,EAAE,WAAW,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAE,EAAE,EAAE,YAAY,EAAE,kBAAkB,CAAE,EAAE,EAAE,YAAY,EAAE,oBAAoB,CAAE,EAAE,EAAE,YAAY,EAAE,mBAAmB,CAAE,EAAE,EAAE,YAAY,EAAE,iBAAiB,CAAE,EAAE,EAAE,YAAY,EAAE,mBAAmB,CAAE,EAAE,IAAK,GAAG,EAAE,iBAAiB,EAAE,eAAe,CAAE,EAAE,EAAG,cAAc,CAAC,EAAE,KAAK,iBAAiB,SAAS,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,qBAAqB,IAAK,IAAG,EAAE,kBAAkB,CAAC,CAAC,EAAE,KAAK,YAAY,SAAS,EAAE,CAAC,EAAE,cAAc,EAAE,eAAe,EAAE,CAAC,EAAE,EAAE,gBAAgB,EAAE,aAAa,EAAE,CAAC,EAAE,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,kBAAkB,EAAE,CAAC,EAAE,EAAE,aAAa,EAAE,CAAC,EAAE,EAAG,cAAc,CAAC,EAAE,KAAK,WAAW,UAAU,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,EAAG,MAAM,EAAE,EAAE,MAAM,CAAC,EAAE,OAAO,mBAAmB,KAAK,mBAAmB,cAAc,IAAI,YAAY,UAAU,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,kBAAkB,CAAC,OAAOC,EAAE,CAAC,IAAI,kBAAkB,CAAC,OAAO,KAAK,iBAAiB,CAAC,IAAI,iBAAiB,EAAE,CAAC,KAAK,kBAAkB,EAAE,IAAI,EAAE,KAAK,WAAW,EAAE,EAAE,wBAAwB5G,GAAG,4BAA4B,CAAC,EAAE,EAAE,iBAAiBA,GAAG,qBAAqB,CAAC,CAAC;;;;;;;;;;GC58HjqqD,UCAiS,SAAS,GAAG,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,EAAE,WAAW,SAAS,KAAK,CAAC,SAAS6G,GAAE,EAAE,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,YAAY,CAAC,OAAO,EAAE,MAAM,IAAI,YAAY,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,YAAY,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,IAAI,EAAE,EAAE,WAAW,SAAS,MAA6D,EAAE,GAAG,EAA1D,EAAE,qBAAqB,kBAAkB,WAAoB,EAAE,EAAE,SAAS,IAAIC,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,SAASC,GAAG,EAAE,EAAE,CAAC,IAAI,EAAEF,GAAE,CAAC,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,KAAK,IAAI,EAAE,CAAC,EAAE,EAAE,KAAK,IAAI,EAAE,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,OAAO,KAAK,MAAM,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,EAAE,OAAO,OAAO,OAAOE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,IAAI,IAAI,EAAE,GAAG,EAAE,UAAU,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,IAAI,KAAK,EAAE,OAAO,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,IAAI,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,OAAO,KAAK,MAAM,CAAC,EAAE,MAAM,KAAK,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,IAAI,EAAEF,GAAE,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,OAAO,GAAG,EAAE,MAAM,KAAK,IAAI,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,SAAS,CAAC,MAAM,KAAK,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,SAASG,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,IAAI,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,WAAW,SAAS,EAAE,EAAE,MAAM,EAAE,MAAM,MAAM,KAAK,EAAEH,GAAE,CAAC,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI,MAAM,EAAE,IAAI,aAAa,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,IAAK,EAAE,IAAK,GAAG,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,+BAA+B,EAAE,EAAE,KAAK,QAAQ,IAAI,EAAE,CAAC,OAAO,OAAO,MAAM,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,IAAI,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,GAAG,KAAK,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,SAASI,GAAE,EAAE,EAAE,EAAE,CAAC,MAAO,GAAE,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,SAASC,GAAG,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,SAASC,GAAG,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,SAASC,GAAG,EAAE,EAAE,EAAE,CAAC,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,SAAS,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,MAAO,IAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAA+N,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,GAAG,IAAI,EAAE,EAAEF,GAAG,CAAC,EAAE,IAAI,KAAK,GAAG,EAAE,GAAG,EAAE,EAAE,IAAI,QAAQ,GAAG,IAAI,EAAE,EAAEA,GAAG,CAAC,EAAE,IAAI,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,QAAQ,GAAG,IAAI,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,GAAG,EAAE,EAAE,GAAG,GAAGG,GAAE,GAAG,EAAEA,GAAE,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,GAAG,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,EAAE,GAAG,KAAK,EAAE,GAAG,IAAI,EAAE,EAAE,GAAG,KAAK,EAAE,GAAG,IAAI,EAAE,EAAE,GAAG,KAAK,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,GAAG,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,GAAG,EAAE,UAAUD,GAAG,EAAE,EAAE,EAAE,gBAAgB,GAAGA,GAAG,EAAE,EAAE,EAAE,eAAe,EAAE,EAAE,QAAQ,CAAC,CAAC,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,gBAAgB,EAAE,EAAE,iBAAiB,EAAE,EAAE,IAAI,IAAI,EAAE,GAAG,CAAC,EAAE,GAAG,IAAI,EAAE,EAAE,IAAI,IAAI,EAAE,GAAG,CAAC,EAAE,GAAG,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,UAAU,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,EAAE,EAAEC,GAAE,IAAI,CAAC,IAAI,EAAE,GAAG,GAAG,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,OAAO,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,EAAE,GAAG,IAAI,CAAC,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,GAAG,GAAG,GAAGA,KAAI,EAAEA,GAAE,GAAG,IAAI,EAAE,GAAG,GAAG,EAAE,QAAQD,GAAG,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,GAAGC,GAAE,GAAG,GAAG,EAAE,OAAO,EAAE,gBAAgB,EAAE,IAAI,IAAI,EAAEA,GAAE,EAAE,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,EAAE,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI,IAAI,EAAE,EAAE,EAAEA,GAAE,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,GAAG,EAAE,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,CAAC,iBAAiB,IAAI,IAAI,IAAI,EAAE,GAAG,EAAEC,EAAE,EAAEH,GAAG,EAAEG,GAAGA,EAAE,GAAG,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,IAAI,EAAE,GAAGA,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,IAAI,IAAI,EAAE,GAAG,CAAC,EAAE,GAAG,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC,MAAM,QAAQ,KAAK,yCAAyC,EAAE,OAAO,EAAE,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,GAAG,EAAE,EAAE,EAAE,EAAE,GAAG,OAAO,EAAE,CAAC,CAAoE,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,GAAG,GAAG,EAAE,EAAE,EAAE,GAAG,GAAG,IAAI,KAAK,GAAG,GAAG,EAAE,EAAE,EAAE,IAAI,GAAG,IAAI,GAAG,EAAE,EAAE,CAAC,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,IAAI,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,GAAG,GAAG,EAAE,EAAE,EAAE,GAAG,GAAG,IAAI,KAAK,GAAG,GAAG,EAAE,EAAE,EAAE,IAAI,GAAG,IAAI,GAAG,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,IAAI,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,SAASC,GAAE,EAAE,EAAE,CAAC,OAAO,EAAE,EAAE,MAAM,KAAK,CAAC,SAAS,GAAE,EAAE,EAAE,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC,SAASC,GAAE,EAAE,EAAE,CAAC,OAAO,EAAE,EAAE,GAAG,CAAC,SAASC,GAAE,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,SAASC,GAAE,EAAE,EAAE,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,OAAO,EAAE,EAAE,EAAE,CAAmC,SAASC,GAAG,EAAE,CAAC,MAAM,UAAU,EAAE,EAAE,EAAEA,GAAG,EAAE,IAAI,EAAEA,GAAG,EAAE,KAAK,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,EAAE,CAAC,MAAO,IAAG,IAAI,aAAa,CAAC,EAAE,GAAG,IAAI,YAAY,CAAC,EAAE,GAAG,IAAI,YAAY,CAAC,EAAE,GAAG,IAAI,WAAW,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,aAAa,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,IAAI,EAAE,EAAE,OAAO,GAAG,IAAI,IAAI,WAAW,CAAC,EAAE,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,GAAG,GAAc,GAAJ,EAAE,EAAMC,EAAE,IAAI,GAAG,EAAE,EAAE,IAAI,GAAG,OAAO,EAAE,EAAE,UAAU,KAAK,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,MAAM,MAAO,IAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,MAAM,EAAE,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,GAAG,MAAU,MAAM,2DAA2D,EAAE,MAAO,IAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,IAAI,GAAG,EAAE,MAAM,EAAE,MAAM,MAAM,EAAE,WAAW,SAAS,OAAO,EAAE,EAAE,EAAE,GAAG,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,kBAAkB,EAAE,CAAC,EAAE,IAAI,YAAY,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,YAAY,CAAC,EAAE,IAAI,YAAY,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,GAAG,EAAE,EAAE,EAAE,gBAAgB,EAAE,EAAE,SAAS,EAAE,EAAE,MAAM,EAAE,MAAM,MAAM,KAAK,EAAE,EAAE,GAAG,GAAG,EAAEf,GAAE,CAAC,EAAE,EAAE,IAAI,aAAa,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,IAAI,GAAG,OAAOG,GAAG,EAAE,EAAE,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI,EAAE,CAAC,EAAE,IAAI,QAAQ,KAAK,yBAAyB,EAAE,4DAA4D,EAAE,QAAQ,KAAK,CAAC,IAAI,GAAG,GAAG,GAAG,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,aAAa,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,IAAI,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,EAAE,MAAM,MAAM,CAAC,EAAE,UAAU,EAAE,KAAK,IAAI,EAAE,IAAI,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,EAAEA,GAAG,EAAE,EAAE,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,GAAG,EAAE,EAAE,EAAG,EAAE,EAAE,EAAE,MAAM,EAAEA,GAAG,EAAE,EAAE,EAAG,EAAE,aAAa,CAAC,EAAE,EAAE,EAAE,EAAE,EAAG,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,WAAW,EAAE,gBAAgB,GAAG,EAAE,EAAE,oBAAoB,EAAE,GAAG,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,SAAS,QAAQ,KAAK,sNAAsN,GAAG,EAAE,iBAAiB,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,qBAAqB,kBAAkB,YAAY,EAAE,GAAG,CAAC,EAA2C,EAAE,QAAzC,EAAE,SAASD,GAAG,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,KAAK,EAAA,CAAa,IAAI,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,EAAEY,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAA+mF,SAAS,GAAG,EAAE,CAAC,OAAO,KAAK,IAAI,CAAC,EAAE,EAAE,CAA+kR,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAGE,GAAG,aAAa,EAAE,GAAGA,GAAG,aAAa,EAAE,GAAG,KAAK,GAAG,EAAE,EAAEC,GAAE,UAAU,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,EAAE,GAAE,YAAY,EAAED,GAAG,iBAAiB,EAAE,EAAEA,GAAG,iBAAiB,EAAE,EAAE,GAAG,IAAI,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,GAAG,OAAO,OAAO,EAAE,IAAI,GAAG,GAAG,EAAE,GAAG,GAAG,GAAG,EAAE,IAAI,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,aAAa,EAAE,YAAY,EAAE,YAAY,GAAGC,GAAE,EAAE,EAAE,EAAE,GAAGP,GAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,GAAE,EAAE,CAAC,EAAE,EAAEC,GAAE,EAAE,CAAC,EAAE,OAAOP,GAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,GAAG,CAAC,YAAY,EAAE,YAAY,GAAGa,GAAE,EAAE,EAAE,EAAE,KAAK,CAACP,GAAE,EAAE,CAAC,GAAG,EAAEE,GAAE,CAAC,EAAE,EAAE,EAAE,EAAE,OAAO,GAAE,EAAE,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,CAAC,GAAG,CAAC,YAAY,EAAE,YAAY,GAAGK,GAAE,EAAE,EAAE,EAAE,KAAK,CAACP,GAAE,EAAE,CAAC,GAAG,EAAEG,GAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,OAAO,GAAE,EAAE,CAAC,EAAEF,GAAE,EAAE,CAAC,CAAC,EAAE,EAAEC,GAAE,CAAC,EAAE,EAAEC,GAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAGT,GAAE,EAAE,EAAE,CAAC,EAAEA,GAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,GAAGA,GAAE,EAAE,EAAE,CAAC,GAAG,IAAI,EAAEM,GAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,EAAW,EAAE,EAAE,EAAX,EAAE,CAAC,EAAE,EAAU,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,KAAM,GAAE,GAAG,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,EAAE,GAAGN,GAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAEM,GAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,EAAW,EAAE,EAAE,EAAX,EAAE,CAAC,EAAE,EAAU,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,KAAM,GAAE,GAAG,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAoF,SAAS,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,GAAG,EAAE,UAAU,CAAC,oBAAoB,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,kBAAkB,CAAC,GAAG,kBAAkB,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,oBAAoB,EAAE,IAAI,CAAC,EAAE,oBAAoB,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,kBAAkB,EAAE,EAAE,OAAO,EAAE,IAAI,GAAG,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,OAAO,KAAK,IAAI,EAAE,KAAK,KAAK,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,SAAS,EAAE,EAAE,UAAU,EAAE,CAAC,CAA6P,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,GAAG,AAAyC,EAAzC,IAAA,EAAS,EAAE,kBAAkB,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAI,EAAE,kBAAkB,EAAE,EAAE,EAAE,IAAA,EAAO,CAAC,EAAE,IAAI,KAAK,OAAO,KAAK,IAAI,EAAE,EAAE,OAAO,WAAW,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,oBAAoB,EAAE,CAAC,EAAE,GAAG,oBAAoB,EAAE,CAAC,EAAE,GAAG,oBAAoB,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAEQ,GAAG,GAAG,GAAGC,GAAG,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,IAAIC,EAAE,GAAG,aAAaD,GAAGD,GAAG,GAAG,GAAG,CAAC,EAAE,IAAIG,GAAG,oBAAoB,EAAE,CAAC,EAAEC,GAAG,oBAAoB,EAAE,CAAC,EAAEC,GAAG,oBAAoB,EAAE,CAAC,EAAE,EAAE,GAAGC,GAAG,iBAAiBL,GAAGD,GAAG,GAAG,GAAGG,GAAGC,GAAGC,GAAG,IAAIE,CAAE,GAAG,IAAIJ,GAAG,oBAAoB,EAAE,CAAC,EAAEC,GAAG,oBAAoB,EAAE,CAAC,EAAEC,GAAG,oBAAoB,EAAE,CAAC,EAAE,EAAE,IAAIC,GAAG,iBAAiBL,GAAGD,GAAG,GAAG,GAAGG,GAAGC,GAAGC,GAAG,IAAIE,CAAE,GAAG,IAAI,GAAG,oBAAoB,EAAE,CAAC,EAAE,GAAG,oBAAoB,EAAE,CAAC,EAAE,GAAG,oBAAoB,EAAE,CAAC,EAAE,EAAE,OAAOD,GAAG,iBAAiBL,GAAGD,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAIE,CAAC,EAAE,EAAE,OAAO,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,OAAO,eAAe,EAAE,GAAG,IAAI,EAAE,CAAG,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,IAAIA,EAAE,cAAc,CAAC,EAAE,GAAG,UAAUF,GAAG,GAAG,GAAG,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,OAAO,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,GAAG,GAAG,CAAC,SAAS,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,GAAG,EAAE,WAAW,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,OAAO,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,GAAG,IAAI,CAAyF,SAASQ,GAAE,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,GAAG,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC,CAA25B,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,EAAE,gBAAgB,GAAG,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,EAAE,gBAAgB,GAAG,EAAE,EAAE,IAAI,EAAE,KAAK,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,SAAS,IAAI,EAAE,EAAE,EAAE,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,GAAG,EAAE,CAAC,MAAM,GAAG,EAAE,EAAE,EAAE,WAAW,SAAS,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,EAAEA,GAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,YAAY,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,KAAK,CAAC,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,GAAG,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE,MAAM,EAAE,MAAM,MAAM,KAAK,EAAE,EAAE,WAAW,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,YAAY,CAAC,EAAE,EAAE,IAAI,YAAY,CAAC,EAAE,EAAE,IAAI,aAAa,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,WAAW,SAAS,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,MAAM,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,OAAO,EAAE,EAAE,KAAK,GAAG,EAAE,EAAE,KAAK,GAAG,EAAE,EAAE,KAAK,GAAG,EAAE,EAAE,KAAK,GAAG,EAAE,EAAE,KAAK,GAAG,EAAE,EAAE,KAAK,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,AAA0B,KAAtB,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAG,EAAE,EAAE,GAAG,EAAG,EAAE,GAAG,EAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAG,EAAE,EAAG,EAAE,EAAE,EAAE,GAAG,EAAG,EAAG,EAAG,CAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAASC,GAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,GAAG,OAAO,GAAG,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC,KAAK,EAAE,GAAG,GAAG,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,IAAI,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI,KAAK,EAAE,GAAG,GAAG,GAAG,GAAG,EAAE,CAAC,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,EAAE,gBAAgB,GAAG,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAoB,GAAG,EAAE,EAAE,EAAhB,EAAE,EAAE,GAAG,EAAa,EAAE,EAAE,CAAC,CAAE,CAAC,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,EAAE,gBAAgB,GAAG,EAAE,EAAE,IAAI,EAAE,KAAK,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,SAAS,IAAI,EAAE,EAAE,EAAE,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,GAAG,EAAE,CAAC,MAAM,GAAG,EAAE,EAAE,EAAE,WAAW,SAAS,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,qBAAqB,CAAC,EAAED,GAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,YAAY,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAE,UAAU,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAET,GAAE,YAAY,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,aAAa,EAAE,YAAY,EAAE,YAAY,GAAGA,GAAE,EAAE,EAAE,EAAE,GAAGP,GAAE,EAAE,CAAC,EAAyB,GAAG,EAAE,EAAE,EAAvB,GAAE,EAAE,CAAqB,EAAhBC,GAAE,EAAE,CAAc,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,EAAEC,GAAE,CAAC,EAAE,GAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAEC,GAAE,EAAE,CAAC,EAAE,GAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAsB,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAE,UAAU,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,OAAOI,GAAE,YAAY,EAAE,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,aAAa,EAAE,YAAY,EAAE,YAAY,GAAGA,GAAE,EAAE,EAAE,EAAE,GAAGP,GAAE,EAAE,CAAC,EAAyB,OAAO,GAAG,EAAE,EAAE,EAA9B,GAAE,EAAE,CAA4B,EAAvBC,GAAE,EAAE,CAAqB,EAAE,EAAE,CAAC,EAAM,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,GAAG,GAAG,EAAE,EAAE,UAAU,IAAI,EAAE,EAAE,EAAE,GAAG,EAAEC,GAAE,CAAC,EAAE,EAAEC,GAAE,EAAE,CAAC,IAAI,EAAEA,GAAE,EAAE,CAAC,EAAE,EAAED,GAAE,CAAC,GAAG,IAAI,EAAEe,GAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,MAAM,GAAG,GAAG,EAAE,GAAG,EAAE,EAAE,GAAG,GAAG,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,CAAC,IAAI,EAAEA,GAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,OAAO,GAAG,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE,GAAG,GAAG,IAAI,CAAC,CAAmI,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,GAAE,UAAU,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,OAAOV,GAAE,YAAY,EAAE,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,GAAG,CAAC,aAAa,EAAE,YAAY,EAAE,YAAY,GAAGA,GAAE,EAAE,EAAE,EAAE,GAAG,IAAI,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,GAAG,IAAI,EAAE,YAAY,IAAI,EAAE,YAAY,IAAI,CAAC,EAAE,EAAE,IAAIP,GAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE,MAAM,EAAE,EAAE,WAAW,SAAS,EAAE,EAAE,MAAM,EAAE,EAAE,WAAW,SAAS,EAAE,GAAE,EAAE,CAAC,EAAE,EAAEC,GAAE,EAAE,CAAC,EAAE,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,WAAW,OAAOP,GAAE,EAAE,EAAEwB,EAAE,EAAEA,GAAG,OAAO,KAAK,EAAE,EAAE,GAAG,YAAY,CAAC,EAAE,EAAE,WAAW,UAAU,CAAC,iBAAiB,GAAGA,GAAG,cAAc,CAAC,EAAE,mBAAmB,GAAG,CAAC,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,YAAY,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAGF,GAAE,GAAG,EAAE,EAAE,CAAC,EAAE,GAAG,YAAY,CAAC,EAAE,EAAE,mBAAmB,EAAE,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,GAAE,GAAG,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,aAAa,EAAE,EAAE,GAAG,EAAE,aAAa,EAAE,EAAE,GAAG,EAAE,aAAa,EAAE,EAAE,GAAG,YAAY,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,GAAGA,GAAE,GAAG,EAAE,EAAE,CAAC,EAAE,GAAG,YAAY,CAAC,EAAE,GAAG,mBAAmB,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,OAAOtB,GAAE,EAAE,EAAEyB,EAAE,EAAE,CAAC,EAAE,EAAE,cAAcA,EAAE,GAAG,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,IAAIzB,GAAE,EAAE,EAAEyB,EAAE,EAAE,EAAE,cAAcA,EAAE,GAAG,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,CAAkJ,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,aAAa,EAAE,mBAAmB,EAAE,GAAG,IAAI,EAAE,YAAY,IAAI,EAAE,YAAY,IAAI,CAAC,EAAE,GAAG,YAAY,CAAC,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE,WAAW,SAAS,EAAE,EAAE,MAAM,EAAE,EAAE,WAAW,SAAS,EAAE,EAAE,MAAM,EAAE,GAAE,aAAa,EAAE,EAAE,GAAE,aAAa,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE,GAAG,EAAE,IAAI,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,OAAOC,GAAG,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,GAAG,OAAO,KAAKA,EAAE,EAAE,EAAE,UAAU,CAAC,oBAAoB,GAAG,GAAG,cAAc,CAAC,EAAE,kBAAkB,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,KAAK,EAAE,GAAG,EAAE,GAAG,IAAI,KAAK,EAAE,GAAG,EAAE,GAAG,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,iBAAiB,EAAE,IAAI,CAAC,GAAG,EAAE,WAAW,OAAO,EAAE,WAAW,UAAU,CAAC,oBAAoB,GAAG,GAAG,cAAc,CAAC,EAAE,kBAAkB,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,iBAAiB,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,GAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,YAAY,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,GAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,YAAY,CAAC,EAAE,IAAI,EAAE,EAAE,mBAAmB,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE9B,GAAE,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,GAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,YAAY,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,GAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,YAAY,CAAC,EAAE,IAAI,EAAE,EAAE,mBAAmB,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAE,iBAAiB,CAAC,EAAE,GAAE,iBAAiB,CAAC,EAAE,IAAI,IAAI,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,MAAM,aAAa8B,EAAE,EAAE,EAAE,aAAaA,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,OAAO,EAAE,EAAE,UAAU,GAAG,EAAE,CAAC,SAAS,GAAG,EAAE,EAAE,KAAK,CAAC,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,GAAG,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE,MAAM,EAAE,MAAM,MAAM,KAAK,EAAE,EAAE,WAAW,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,YAAY,CAAC,EAAE,EAAE,IAAI,YAAY,CAAC,EAAE,EAAE,IAAI,aAAa,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,WAAW,SAAS,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,MAAM,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,qBAAqB,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,KAAK,GAAG,EAAE,EAAE,KAAK,GAAG,EAAE,EAAE,KAAK,GAAG,EAAE,EAAE,KAAK,GAAG,EAAE,EAAE,KAAK,GAAG,EAAE,EAAE,KAAK,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,AAA0B,KAAtB,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAG,EAAE,EAAE,GAAG,EAAG,EAAE,GAAG,EAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAG,EAAE,EAAG,EAAE,EAAE,EAAE,GAAG,EAAG,EAAG,EAAG,CAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAE,UAAU,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAEb,GAAE,YAAY,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,aAAa,EAAE,YAAY,EAAE,YAAY,GAAGA,GAAE,EAAE,EAAE,EAAE,GAAGP,GAAE,EAAE,CAAC,EAAyB,GAAG,EAAE,EAAE,EAAvB,GAAE,EAAE,CAAqB,EAAhBC,GAAE,EAAE,CAAc,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,EAAEC,GAAE,CAAC,EAAE,GAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAEC,GAAE,EAAE,CAAC,EAAE,GAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAsB,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAE,UAAU,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,OAAOI,GAAE,YAAY,EAAE,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,aAAa,EAAE,YAAY,EAAE,YAAY,GAAGA,GAAE,EAAE,EAAE,EAAE,GAAGP,GAAE,EAAE,CAAC,EAAyB,OAAO,GAAG,EAAE,EAAE,EAA9B,GAAE,EAAE,CAA4B,EAAvBC,GAAE,EAAE,CAAqB,EAAE,EAAE,CAAC,EAAM,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,GAAG,GAAG,EAAE,EAAE,UAAU,IAAI,EAAE,EAAE,EAAE,GAAG,EAAEC,GAAE,CAAC,EAAE,EAAEC,GAAE,EAAE,CAAC,IAAI,EAAEA,GAAE,EAAE,CAAC,EAAE,EAAED,GAAE,CAAC,GAAG,IAAI,EAAEe,GAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,MAAM,GAAG,GAAG,EAAE,GAAG,EAAE,EAAE,GAAG,GAAG,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,CAAC,IAAI,EAAEA,GAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,OAAO,GAAG,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE,GAAG,GAAG,IAAI,CAAC,CAAmI,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,GAAE,UAAU,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,OAAOV,GAAE,YAAY,EAAE,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,GAAG,CAAC,aAAa,EAAE,YAAY,EAAE,YAAY,GAAGA,GAAE,EAAE,EAAE,EAAE,GAAG,IAAI,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,GAAG,IAAI,EAAE,YAAY,IAAI,EAAE,YAAY,IAAI,CAAC,EAAE,EAAE,IAAIP,GAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE,MAAM,EAAE,EAAE,WAAW,SAAS,EAAE,EAAE,MAAM,EAAE,EAAE,WAAW,SAAS,EAAE,GAAE,EAAE,CAAC,EAAE,EAAEC,GAAE,EAAE,CAAC,EAAE,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,WAAW,OAAOP,GAAE,EAAE,EAAE2B,EAAE,EAAEA,GAAG,OAAO,KAAK,EAAE,EAAE,GAAG,YAAY,CAAC,EAAE,EAAE,WAAW,UAAU,CAAC,iBAAiB,GAAGA,GAAG,cAAc,CAAC,EAAE,mBAAmB,GAAG,CAAC,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,YAAY,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,GAAGL,GAAE,GAAG,EAAE,EAAE,qBAAqB,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,YAAY,CAAC,EAAE,EAAE,mBAAmB,EAAE,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,CAAiC,GAAEM,GAAG,EAA/B,EAAE,qBAAqB,CAAU,EAAE,EAAE,CAAC,EAAEA,GAAG,EAAE,aAAa,EAAE,EAAEA,GAAG,EAAE,aAAa,EAAE,EAAEA,GAAG,EAAE,aAAa,EAAE,EAAE,GAAG,YAAY,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,GAAGN,GAAE,GAAG,EAAE,EAAE,CAAC,EAAE,GAAG,YAAY,CAAC,EAAEM,GAAG,mBAAmB,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,OAAO5B,GAAE,EAAE,EAAE6B,EAAE,EAAE,CAAC,EAAE,EAAE,cAAcA,EAAE,GAAG,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI7B,GAAE,EAAE,EAAE6B,EAAE,EAAE,EAAE,cAAcA,EAAE,GAAG,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,CAAkJ,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,aAAa,EAAE,mBAAmB,EAAE,GAAG,IAAI,EAAE,YAAY,IAAI,EAAE,YAAY,IAAI,CAAC,EAAE,GAAG,YAAY,CAAC,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE,WAAW,SAAS,EAAE,EAAE,MAAM,EAAE,EAAE,WAAW,SAAS,EAAE,EAAE,MAAM,EAAE,GAAE,aAAa,EAAE,EAAE,GAAE,aAAa,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE,GAAG,EAAE,IAAI,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,OAAOC,GAAG,KAAK,CAAC,CAAC,CAAC,OAAO,EAAEC,GAAG,OAAO,KAAKD,EAAE,EAAE,EAAE,UAAU,CAAC,oBAAoB,GAAG,GAAG,cAAc,CAAC,EAAE,kBAAkB,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,IAAIC,GAAG,IAAI,KAAK,EAAE,GAAG,EAAEA,GAAG,IAAI,KAAK,EAAE,GAAG,EAAE,GAAG,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,iBAAiB,EAAE,IAAI,CAAC,GAAG,EAAE,WAAW,CAAC,IAAI,EAAE,EAAE,WAAW,OAAO,EAAE,UAAU,CAAC,oBAAoB,GAAGA,GAAG,cAAc,CAAC,EAAE,kBAAkB,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,iBAAiB,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,qBAAqB,CAAC,EAAE,GAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,YAAY,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,qBAAqB,CAAC,EAAE,GAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,YAAY,CAAC,EAAE,IAAI,EAAE,EAAE,mBAAmB,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAEnC,GAAE,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,GAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,YAAY,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,qBAAqB,CAAC,EAAE,GAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,YAAY,CAAC,EAAE,IAAI,EAAE,EAAE,mBAAmB,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAE,iBAAiB,CAAC,EAAE,GAAE,iBAAiB,CAAC,EAAE,IAAI,IAAI,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,MAAM,aAAakC,EAAE,EAAE,EAAE,aAAaA,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,OAAO,EAAE,EAAE,UAAU,GAAG,EAAE,CAAC,SAASE,IAAI,CAAC,OAAO,OAAO,kBAAkB,GAAG,CAAyL,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,GAAG,MAAU,MAAM,oDAAoD,EAAE,GAAG,CAAC,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAIC,EAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,CAAC,GAAG,UAAU,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,aAAa,EAAE,GAAE,EAAE,GAAG,aAAa,CAAC,EAAE,EAAE,aAAa,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,GAAG,UAAU,EAAE,EAAE,EAAE,EAAEC,GAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,YAAY,EAAE,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,KAAK,GAAG,GAAG,iBAAiB,CAAC,EAAE,GAAG,YAAY,EAAE,GAAG,EAAE,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,MAAO,IAAG,CAAC,EAAE,CAAC,CAAC,SAASA,GAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,IAAI,EAAE,EAAE,aAAa,EAAE,EAAE,YAAY,EAAE,EAAE,YAAY,EAAE,EAAE,aAAa,EAAE,EAAE,YAAY,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE5B,GAAE,EAAE,CAAC,EAAE,EAAEA,GAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,GAAG,EAAE,AAAmD,EAAnD,EAAI,EAAE,GAAE,EAAE,CAAC,EAAEC,GAAE,EAAE,EAAE,CAAC,EAAE,GAAE,EAAE,CAAC,EAAEA,GAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAI,EAAE,GAAE,EAAE,CAAC,EAAEA,GAAE,EAAE,EAAE,CAAC,EAAE,GAAE,EAAE,CAAC,EAAEA,GAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,OAAO,GAAG,EAAE,CAAC,IAAI,EAAE,GAAG,aAAa,EAAE,GAAE,EAAE,EAAE,CAAC,EAAE,EAAE,aAAa,CAAC,EAAE,IAAI,EAAEC,GAAE,CAAC,EAAE,EAAEC,GAAE,EAAE,CAAC,EAAE,GAAE,EAAE,EAAE,EAAE,EAAET,GAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,cAAc,EAAE,EAAE,EAAE,EAAE,cAAc,EAAE,EAAE,EAAE,GAAGkC,GAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,GAAG,GAAGA,GAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,iBAAiB,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE1B,GAAE,CAAC,EAAE,EAAEC,GAAE,EAAE,CAAC,EAAE,GAAE,EAAE,EAAE,EAAE,EAAET,GAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,cAAc,EAAE,EAAE,EAAE,EAAE,cAAc,EAAE,EAAE,GAAG,GAAG,EAAE,EAAEkC,GAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAGA,GAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,OAAO,GAAG,EAAE,GAAG,EAAE,EAAEA,GAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,aAAa,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE1B,GAAE,CAAC,EAAE,EAAEC,GAAE,EAAE,CAAC,EAAE,GAAE,EAAE,EAAE,EAAE,EAAET,GAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,cAAc,EAAE,EAAE,EAAE,EAAE,cAAc,EAAE,EAAE,EAAE,GAAGkC,GAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,GAAG,GAAGA,GAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,iBAAiB,CAAC,CAAC,MAAM,GAAG,EAAE,GAAG,EAAE,EAAEA,GAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,aAAa,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE1B,GAAE,CAAC,EAAE,EAAEC,GAAE,EAAE,CAAC,EAAE,GAAE,EAAE,EAAE,EAAE,EAAET,GAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,cAAc,EAAE,EAAE,EAAE,EAAE,cAAc,EAAE,EAAE,EAAE,GAAGkC,GAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,GAAG,GAAGA,GAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAgzT,SAAS,GAAG,EAAE,EAAE,EAAE,CAAC,OAAO,IAAI,KAAK,MAAM,EAAE,MAAM,aAAa,EAAE,WAAW,EAAE,EAAE,SAAS,EAAE,MAAM,WAAW,EAAE,IAAI,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,CAAiI,SAAS,GAAG,EAAE,EAAE,CAAC,KAAK,cAAc,GAAG,KAAK,KAAK,EAAE,CAAC,EAAE,GAAG,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,YAAY,CAAC,IAAI,EAAE,KAAK,YAAY,EAAE,KAAK,UAAU,EAAE,KAAK,YAAY,EAAE,KAAK,YAAY,GAAE,SAAS,KAAK,SAAS,GAAE,SAAS,KAAK,SAAS,IAAI,EAAE,GAAE,SAAS,WAAW,EAAE,GAAE,SAAS,UAAU,GAAE,SAAS,iBAAiB,OAAO,GAAE,SAAS,eAAe,IAAIC,IAAI,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,aAAa,CAAC,EAAE,SAAS,IAAI,EAAE,EAAE,EAAE,CAAC,cAAc,GAAG,GAAE,SAAS,WAAW,EAAE,GAAG,KAAK,YAAY,EAAE,GAAE,WAAW,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,GAAE,SAAS,WAAW,CAAC,KAAK,iBAAiB,EAAE,GAAE,SAAS,WAAW,EAAE,KAAK,oBAAoB,EAAE,GAAE,SAAS,cAAc,EAAE,IAAI,EAAE,EAAE,GAAG,GAAE,SAAS,aAAa,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,GAAE,QAAQ,EAAEC,EAAE,EAAE,IAAI,IAAI,EAAE,EAAE,EAAEA,GAAG,OAAO,EAAE,EAAE,IAAI,CAAC,IAAI,EAAEA,GAAG,GAAG,EAAE,OAAO,KAAK,EAAE,QAAQ,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,GAAE,SAAS,WAAW,EAAE,GAAE,SAAS,UAAU,EAAE,GAAE,SAAS,KAAK,GAAE,SAAS,IAAI,MAAM,GAAG,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,SAAS,WAAW,CAAC,GAAG,KAAK,WAAW,IAAK,GAAE,OAAO,GAAG,KAAK,KAAK,WAAW,CAAC,CAAC,OAAO,EAAEC,GAAG,KAAK,EAAE,GAAG,CAAC,CAAC,aAAa,EAAE,EAAE,GAAG,mBAAmB,KAAK,WAAW,EAAE,GAAG,KAAKA,GAAG,SAAS,CAAC,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,KAAK,SAAS,WAAW,GAAG,EAAE,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,aAAaA,GAAG,KAAK,SAAS,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,QAAQA,GAAG,KAAK,SAAS,EAAE,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,GAAG,EAAE,CAAC,EAAE,CAAC,MAAO,MAAK,WAAW,IAAIC,GAAE,KAAK,CAAC,EAAE,KAAK,UAAU,CAAC,SAAS,IAAI,CAAC,KAAK,WAAW,IAAI,mTAApt/C,EAAtL,GAAG,OAAO,eAAmB,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,IAAI,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,EAAsI,GAAY,GAAE,IAAK,GAAG,OAAO,iBAAiB,EAA0wFlC,GAAE,GAAG,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,GAAO,MAAMA,EAAC,CAAC,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,IAAI,aAAa,CAAC,EAAE,iBAAiB,IAAI,aAAa,CAAC,EAAE,gBAAgB,IAAI,aAAa,CAAC,EAAE,UAAU,CAAC,EAAE,EAAEC,GAAG,IAAI,aAAa,CAAC,EAA4sD,GAAG,KAAK,CAAC,aAAa,CAAC,KAAK,aAAa,IAAI,aAAa,CAAC,CAAC,CAAC,EAA+tB,GAAY,GAAE,GAAm9EkC,GAAE,KAAK,CAAC,aAAa,CAAC,KAAK,IAAI,IAAI,KAAK,IAAI,IAAI,CAAC,mBAAmB,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,EAAE,KAAK,IAAI,CAAC,CAAC,cAAc,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,EAAE,KAAK,IAAI,CAAC,CAAC,YAAY,EAAE,CAAC,OAAO,KAAK,IAAI,EAAE,KAAK,EAAE,IAAI,KAAK,GAAG,CAAC,EAAE,GAAE,UAAU,YAAY,UAAU,CAAC,IAAI,EAAE,IAAIC,EAAG,OAAO,SAAS,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,IAAI,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,IAAI,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,IAAI,EAAE,CAAC,EAAE,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,KAAK,IAAI,CAAC,CAAC,EAAA,CAAG,GAAU,UAAU,CAAC,IAAI,EAAE,IAAID,GAAE,OAAO,SAAS,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,EAAE,UAAU,EAAE,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,EAAE,UAAU,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,GAAG,EAAE,cAAc,EAAE,CAAC,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,GAAG,EAAE,cAAc,EAAE,CAAC,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAA,CAAG,EAAqN,IAAI,UAAU,CAAC,IAAI,EAAE,IAAIE,EAAG,EAAE,IAAIA,EAAG,EAAE,IAAIA,EAAG,OAAO,SAAS,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,AAAM,EAAN,IAAI,EAAkB,GAAb,EAAE,EAAE,EAAE,GAAG,EAAM,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAA,CAAG,EAAE,IAAI,UAAU,CAAC,IAAI,EAAE,IAAIC,EAAG,EAAE,IAAID,EAAG,EAAE,IAAIA,EAAG,OAAO,SAAS,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,MAAM,GAAG,GAAG,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,oBAAoB,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,MAAM,GAAG,GAAG,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,oBAAoB,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC,IAAI,EAAE,AAAc,EAAd,EAAE,EAAI,EAAE,MAAQ,EAAE,IAAI,IAAI,EAAE,AAAc,EAAd,EAAE,EAAI,EAAE,MAAQ,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,oBAAoB,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,oBAAoB,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,kBAAkB,CAAC,GAAG,EAAE,kBAAkB,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,EAAA,CAAG,EAAE,IAAI,UAAU,CAAC,IAAI,EAAE,IAAIA,EAAG,EAAE,IAAIA,EAAG,EAAE,IAAIE,GAAG,EAAE,IAAIC,GAAG,OAAO,SAAS,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,oBAAoB,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,oBAAoB,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,KAAK,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,oBAAoB,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,GAAG,MAAM,CAAC,EAAE,IAAI,EAAE,EAAE,SAAS,CAAC,EAAE,GAAG,KAAK,IAAI,EAAE,gBAAgB,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,aAAa,EAAE,CAAC,EAAE,GAAG,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAA,CAAG,EAAM,GAAG,MAA+CC,GAAE,cAAcC,EAAE,CAAC,YAAY,GAAG,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,mBAAmB,CAAC,EAAE,KAAK,QAAQ,KAAW,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ,IAAIC,CAAC,EAAE,KAAK,UAAU,KAAW,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ,IAAIR,EAAC,EAAE,KAAK,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,EAAE,KAAK,OAAO,IAAIS,GAAG,KAAK,MAAM,IAAIC,GAAG,KAAK,YAAY,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,OAAO,GAAG,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,KAAK,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,UAAU,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,KAAK,UAAU,CAAC,EAAE,EAAE,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC,EAAE,EAAE,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC,EAAE,EAAE,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC,EAAE,EAAE,cAAc,EAAE,CAAC,EAAE,KAAK,OAAO,cAAc,KAAK,MAAM,EAAE,KAAK,MAAM,8BAA8B,EAAE,CAAC,EAAE,KAAK,YAAY,CAAC,CAAC,CAAC,EAAE,GAAE,UAAU,uBAAuB,UAAU,CAAC,IAAI,EAAE,IAAIF,EAAE,EAAE,IAAIA,EAAE,EAAE,IAAIG,GAAG,OAAO,SAAS,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,GAAG,EAAE,EAAE,KAAK,OAAO,EAAE,EAAE,IAAI,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,GAAG,EAAE,GAAG,EAAE,EAAE,MAAM,KAAK,EAAE,EAAE,EAAE,EAAE,IAAI,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,kBAAkB,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC,OAAO,KAAK,oBAAoB,EAAE,CAAC,EAAE,EAAE,EAAE,kBAAkB,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,KAAK,oBAAoB,EAAE,CAAC,EAAE,EAAE,EAAE,kBAAkB,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,EAAA,CAAG,EAAE,GAAE,UAAU,oBAAoB,UAAU,CAAC,IAAI,EAAE,IAAIL,GAAE,EAAE,IAAW,EAAE,EAAE,IAAW,EAAE,EAAE,IAAIN,GAAE,EAAE,IAAIA,GAAE,EAAE,IAAIQ,EAAE,EAAE,IAAIA,EAAE,EAAE,IAAIA,EAAE,EAAE,IAAIA,EAAE,EAAE,IAAIA,EAAE,EAAE,IAAIG,GAAG,EAAE,IAAIA,GAAG,EAAE,IAAIA,GAAG,EAAE,IAAIH,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,GAAG,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,KAAK,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,gBAAgB,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,cAAc,EAAE,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,EAAE,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,GAAG,IAAI,EAAE,EAAE,MAAM,EAAE,IAAA,CAAK,KAAK,CAAC,EAAE,IAAI,EAAE,QAAQ,GAAG,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAA,CAAK,KAAK,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,GAAG,IAAI,IAAI,GAAG,IAAI,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,SAAS,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,KAAK,aAAa,KAAK,OAAO,EAAE,EAAE,mBAAmB,EAAE,aAAa,EAAE,OAAO,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,OAAO,EAAE,EAAE,GAAG,IAAI,EAAE,KAAK,MAAM,EAAE,EAAE,MAAM,GAAG,KAAK,IAAI,EAAE,OAAO,IAAI,EAAE,MAAM,CAAC,EAAE,YAAQ,CAAC,IAAI,EAAE,KAAK,UAAU,EAAE,KAAK,QAAQ,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,GAAG,EAAE,cAAc,EAAE,CAAC,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,KAAK,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,GAAG,EAAE,cAAc,EAAE,CAAC,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,GAAG,EAAE,aAAa,EAAE,CAAC,EAAE,EAAE,cAAc,EAAE,CAAC,EAAE,EAAE,cAAc,EAAE,CAAC,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,GAAG,QAAQ,KAAK,6HAA6H,EAAE,EAAE,MAAM,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,IAAI,GAAG,EAAE,cAAc,EAAE,GAAG,EAAE,OAAO,IAAI,EAAE,MAAM,KAAK,EAAE,GAAG,EAAE,EAAE,IAAI,KAAK,EAAE,GAAG,GAAG,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,IAAI,GAAG,KAAK,cAAc,EAAE,GAAG,EAAE,OAAO,IAAI,EAAE,MAAM,KAAK,EAAE,GAAG,EAAE,EAAE,IAAI,KAAK,EAAE,GAAG,GAAG,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,MAAM,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,IAAI,CAAC,EAAE,EAAE,EAAE,MAAM,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,IAAI,CAAC,EAAc,OAAO,IAAI,GAAG,IAAI,GAA5B,EAAE,GAAI,EAAE,EAA6B,CAAC,GAAG,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,MAAM,KAAK,EAAE,KAAK,EAAE,EAAE,MAAM,KAAK,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,KAAK,EAAE,GAAG,EAAE,EAAE,IAAI,KAAK,EAAE,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC,EAAA,CAAG,EAAE,GAAE,UAAU,iBAAiB,UAAU,CAAC,IAAI,EAAE,IAAIA,EAAE,OAAO,SAAS,EAAE,CAAC,OAAO,KAAK,oBAAoB,EAAE,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC,EAAA,CAAG,EAAE,GAAE,UAAU,oBAAoB,UAAU,CAAC,IAAI,EAAE,IAAIA,EAAE,EAAE,IAAIA,EAAE,EAAE,CAAC,IAAI,IAAI,GAAG,EAAE,EAAE,IAAIG,GAAG,EAAE,IAAIA,GAAG,OAAO,SAAS,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,KAAK,GAAG,KAAK,mBAAmB,EAAE,CAAC,EAAE,OAAO,GAAG,KAAK,GAAG,EAAE,UAAU,CAAC,EAAE,GAAG,EAAE,UAAU,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,KAAK,oBAAoB,EAAE,CAAC,EAAE,EAAE,EAAE,kBAAkB,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,IAAI,EAAE,KAAK,GAAG,EAAE,oBAAoB,EAAE,CAAC,EAAE,EAAE,EAAE,kBAAkB,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,EAAE,IAAI,KAAK,GAAG,KAAK,EAAE,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,kBAAkB,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,EAAA,CAAG,EAAM,GAAE,KAAK,CAAC,YAAY,EAAE,EAAE,EAAE,CAAC,KAAK,cAAc,CAAC,EAAE,KAAK,IAAI,IAAIC,EAAG,KAAK,IAAI,IAAIA,EAAG,KAAK,OAAO,IAAIC,EAAG,KAAK,UAAU,IAAIA,EAAG,KAAK,OAAW,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ,IAAID,CAAE,EAAE,KAAK,QAAQ,IAAW,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ,IAAIA,CAAE,EAAE,KAAK,UAAU,IAAW,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ,IAAIZ,EAAC,EAAE,KAAK,iBAAiB,IAAW,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ,IAAIA,EAAC,EAAE,KAAK,YAAY,CAAC,EAAE,GAAG,KAAK,IAAI,KAAK,CAAC,EAAE,GAAG,KAAK,IAAI,KAAK,CAAC,EAAE,GAAG,KAAK,OAAO,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,KAAK,IAAI,KAAK,CAAC,EAAE,KAAK,IAAI,KAAK,CAAC,EAAE,KAAK,OAAO,KAAK,CAAC,EAAE,KAAK,YAAY,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,KAAK,EAAE,GAAG,EAAE,KAAK,IAAI,KAAK,EAAE,GAAG,EAAE,KAAK,OAAO,KAAK,EAAE,MAAM,EAAE,KAAK,YAAY,CAAC,CAAC,CAAC,EAAE,GAAE,UAAU,QAAQ,UAAU,CAAC,OAAO,UAAU,CAAC,IAAI,EAAE,KAAK,OAAO,EAAE,KAAK,IAAI,EAAE,KAAK,IAAI,EAAE,KAAK,OAAO,IAAI,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,IAAI,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,IAAI,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,IAAkB,EAAE,EAAd,EAAE,EAAE,EAAE,EAAE,EAAE,GAAS,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,aAAa,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,UAAU,EAAE,KAAK,QAAQ,EAAE,EAAE,GAAG,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,GAAU,EAAE,EAAP,GAAG,GAAS,EAAE,WAAW,EAAE,CAAC,EAAE,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,iBAAiB,EAAE,EAAE,CAAC,mBAAmB,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,mBAAmB,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,mBAAmB,EAAE,GAAG,EAAE,KAAK,UAAU,KAAK,KAAK,MAAM,CAAC,CAAC,OAAO,EAAE,KAAK,YAAY,CAAC,CAAC,CAAC,EAAA,CAAG,EAAE,GAAE,UAAU,eAAe,UAAU,CAAC,IAAI,EAAE,IAAIA,GAAE,OAAO,SAAS,EAAE,CAAC,KAAK,aAAa,KAAK,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,UAAU,EAAE,KAAK,QAAQ,EAAE,KAAK,iBAAiB,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,GAAG,EAAE,WAAW,EAAE,CAAC,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAA,CAAG,EAAE,GAAE,UAAU,oBAAoB,UAAU,CAAC,IAAI,EAAE,IAAIM,GAAE,EAAE,IAAW,EAAE,EAAE,IAAIN,GAAE,EAAE,IAAIA,GAAE,EAAE,IAAIY,EAAG,OAAO,SAAS,EAAE,CAAC,KAAK,aAAa,KAAK,OAAO,EAAE,EAAE,mBAAmB,EAAE,aAAa,EAAE,OAAO,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,OAAO,EAAE,EAAE,GAAG,IAAI,EAAE,KAAK,UAAU,EAAE,KAAK,QAAQ,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,GAAG,EAAE,cAAc,EAAE,CAAC,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,KAAK,OAAO,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,GAAG,EAAE,cAAc,EAAE,CAAC,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,GAAG,EAAE,aAAa,EAAE,CAAC,EAAE,EAAE,cAAc,EAAE,CAAC,EAAE,EAAE,cAAc,EAAE,CAAC,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAA,CAAG,EAAE,GAAE,UAAU,qBAAqB,UAAU,CAAC,OAAO,SAAS,EAAE,EAAE,CAAC,OAAO,KAAK,aAAa,KAAK,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,MAAM,KAAK,IAAI,KAAK,GAAG,CAAC,CAAC,aAAa,KAAK,MAAM,EAAE,CAAC,CAAC,EAAA,CAAG,EAAE,GAAE,UAAU,iBAAiB,UAAU,CAAC,IAAI,EAAE,IAAIA,EAAG,OAAO,SAAS,EAAE,CAAC,OAAO,KAAK,oBAAoB,EAAE,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC,EAAA,CAAG,EAAE,GAAE,UAAU,eAAe,UAAU,CAAC,IAAI,EAAE,CAAC,IAAI,IAAI,GAAG,EAAE,EAAM,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ,IAAIE,EAAE,EAAE,EAAM,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ,IAAIA,EAAE,EAAE,EAAE,IAAIF,EAAG,EAAE,IAAIA,EAAG,OAAO,SAAS,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,GAAG,KAAK,aAAa,KAAK,OAAO,EAAE,KAAK,cAAc,CAAC,EAAE,OAAO,GAAG,KAAK,EAAE,UAAU,CAAC,EAAE,KAAK,oBAAoB,EAAE,CAAC,EAAE,EAAE,oBAAoB,EAAE,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,OAAO,EAAE,IAAI,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,kBAAkB,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,GAAG,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,IAAI,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,IAAI,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,IAAI,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,IAAI,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,IAAI,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,oBAAoB,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,kBAAkB,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,GAAG,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,IAAI,IAAI,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,kBAAkB,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,GAAG,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,EAAA,CAAG,EAAM,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC,KAAK,iBAAiB,EAAE,KAAK,YAAY,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,EAAE,KAAK,YAAY,OAAO,EAAE,SAAS,EAAE,KAAK,iBAAiB,EAAE,EAAE,IAAI,CAAC,CAAC,iBAAiB,EAAE,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,EAAM,GAAG,cAAc,EAAE,CAAC,aAAa,CAAC,UAAU,IAAIN,EAAC,CAAC,CAAC,EAAE,GAAE,IAAI,GAA+D,GAAG,KAAK,CAAC,aAAa,CAAC,KAAK,aAAa,KAAK,KAAK,YAAY,KAAK,KAAK,YAAY,KAAK,IAAI,EAAE,CAAC,EAAE,EAAE,KAAK,KAAK,UAAU,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,KAAK,aAAa,IAAI,aAAa,CAAC,EAAE,KAAK,YAAY,IAAI,YAAY,CAAC,EAAE,KAAK,YAAY,IAAI,YAAY,CAAC,CAAC,EAAE,KAAK,gBAAgB,CAAC,EAAE,KAAK,KAAK,aAAa,KAAK,KAAK,YAAY,KAAK,KAAK,YAAY,KAAK,EAAE,SAAS,GAAG,KAAK,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,EAAEhC,GAAE,IAAI,GAAa,GAAG,CAAC,EAAED,GAAG,IAAI,OAAO,IAAI0C,EAAE,EAAimC,GAAG,IAAIC,EAAG,GAAG,IAAIA,EAAikB,GAAG,GAAkBzC,GAAG,IAAIE,EAAE,GAAG,IAAIA,EAAE,GAAG,IAAIA,EAAEC,GAAG,IAAII,EAAGH,GAAG,IAAIG,EAAGF,GAAG,IAAIE,EAAG,GAAG,IAAIL,EAAE,GAAG,IAAIA,EAAE,GAAG,IAAIA,EAAED,GAAG,IAAIC,EAA0jD,IAAIyC,EAAM,IAAIA,EAAM,IAAIA,EAAM,IAAIE,EAAM,IAAIA,EAAM,IAAIA,EAAihH,GAAG,CAAC,IAAI,IAAI,GAAG,EAA+kBlC,GAAG,IAAImC,GAAG,GAAG,IAAIf,GAAE,GAAG,IAAIA,GAAE,GAAG,IAAIgB,EAAG,GAAG,IAAI,GAAErC,GAAG,IAAI,GAAwqCE,GAAG,IAAIoC,EAAG,GAAG,IAAI,GAAE,GAAG,IAAI,GAAE,GAAG,IAAIC,EAAG,GAAG,IAAIA,EAAG,GAAG,IAAIA,EAAG,GAAG,IAAIA,EAA40F,GAAG,CAAC,IAAI,IAAI,GAAG,EAA+kBlC,GAAG,IAAImC,GAAGpC,GAAG,IAAIiB,GAAE,GAAG,IAAIA,GAAE,GAAG,IAAIoB,EAAG,GAAG,IAAI,GAAEtC,GAAG,IAAI,GAAstCG,GAAG,IAAIoC,EAAG,GAAG,IAAI,GAAEnC,GAAG,IAAI,GAAE,GAAG,IAAIoC,EAAG,GAAG,IAAIA,EAAG,GAAG,IAAIA,EAAG,GAAG,IAAIA,EAAquD,GAAG,IAAItD,GAAE,YAAY,GAAG,IAAIA,GAAE,YAAY,GAAG,IAAI,OAAO,IAAIuD,EAAE,EAAE,GAAG,IAAIA,GAAG,GAAG,IAAIA,GAAG,GAAG,IAAIA,GAAG,GAAG,IAAIA,GAAG,GAAG,CAAC,EAA+uDC,GAAG,IAAI,GAAE,GAAG,IAAIC,GAAG,GAAG,CAAC,SAAS,EAAE,SAAS,GAAG,YAAY,GAAG,qBAAqB,CAAC,EAAE,eAAe,CAAC,EAAE,WAAW,KAAK,SAAS,CAAC,EAAE,QAAQ,CAAC,EAAE,MAAM,IAAI,EAAEhC,GAAE,MAAM,CAAC,CAAC,OAAO,UAAU,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,aAAa,CAAC,EAAE,GAAG,CAAC,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,EAAE,gBAAgB,EAAE,EAAE,SAAS,EAAE,EAAE,MAAO,CAA0G,EAA1G,EAAE,aAAe,CAAC,MAAM,EAAE,IAAI,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE,MAAM,MAAM,EAAE,KAAK,eAAe,EAAE,EAAE,MAAM,EAAE,IAAI,EAAI,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,MAAM,KAAK,eAAe,CAAC,EAAE,CAAC,CAAC,OAAO,YAAY,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC,CAAC,EAAE,eAAe,GAAG,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,eAAe,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,gBAAgB,GAAG,KAAK,EAAE,SAAS,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,GAAG,IAAI,KAAK,CAAC,IAAI,EAAE,IAAIiC,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC,MAAM,EAAE,QAAQ,IAAI,EAAE,MAAM,IAAI,CAAC,EAAE,EAAE,YAAY,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC,KAAK,eAAe,CAAC,YAAY,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,qBAAqB,EAAE,OAAO,EAAE,MAAM,6BAA6B,MAAU,MAAM,+EAA+E,CAAA,MAAO,MAAU,MAAM,+CAA+C,EAAE,GAAG,EAAE,OAAO,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,sBAAsB,CAACvC,GAAG,EAAE,MAAU,MAAM,8CAA8C,EAAE,KAAK,SAAS,EAAE,KAAK,OAAO,KAAK,KAAK,gBAAgB,KAAK,EAAE,MAAM,GAAG,KAAK,CAAC,EAAE,CAAC,EAAE,aAAa,EAAE,iBAAiB,EAAE,YAAY,KAAK,eAAe,IAAIsC,EAAE,IAAI,KAAK,qBAAqB,EAAE,SAAS,GAAG,KAAK,gBAAgB,GAAG,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,OAAO,KAAK,SAAS,GAAG,GAAA,CAAI,KAAK,CAAC,CAAC,CAAC,SAAS,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,KAAK,OAAO,GAAG,EAAE,IAAI,YAAY,CAAC,EAAE,EAAE,IAAI,YAAY,CAAC,EAAE,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,MAAM,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,aAAa,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,aAAa,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAA,EAAK,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,OAAO,EAAE,KAAK,SAAS,EAAE,CAAC,EAAE,EAAE,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,KAAK,SAAS,GAAG,GAAG,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,cAAc,CAAC,KAAK,EAAE,EAAE,EAAE,OAAO,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,cAAc,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,KAAK,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,aAAa,EAAE,EAAA,EAAK,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,OAAO,EAAE,KAAK,SAAS,EAAE,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,KAAK,SAAS,GAAG,GAAG,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,cAAc,CAAC,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,OAAO,GAAG,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,KAAK,cAAc,EAAE,EAAE,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,mBAAmB,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,KAAK,OAAO,EAAE,KAAK,SAAS,GAAG,GAAG,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,KAAK,OAAO,CAAC,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,GAAE,aAAa,EAAE,EAAE,KAAK,SAAS,GAAG,GAAG,CAAC,oBAAoB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,mBAAmB,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,KAAM,CAAuC,IAAnC,GAAK,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,GAAK,EAAE,EAAE,IAAI,EAAG,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,OAAO,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,GAAG,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,MAAM,GAAG,EAAE,UAAU,CAAC,OAAO,GAAE,iBAAiB,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,iBAAiB,EAAE,oBAAoB,GAAG,EAAE,EAAE,GAAE,aAAa,EAAE,EAAE,KAAK,SAAS,MAAM,EAAE,KAAK,SAAS,WAAW,SAAS,EAAE,KAAK,SAAS,GAAG,CAAC,IAAI,EAAE,KAAK,qBAAqB,CAAC,EAAE,GAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,GAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,GAAE,aAAa,EAAE,EAAE,EAAE,SAAS,MAAM,EAAE,EAAE,SAAS,WAAW,SAAS,EAAE,EAAE,SAAS,GAAG,CAAC,IAAI,EAAE,EAAE,qBAAqB,CAAC,EAAE,GAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,GAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,IAAI,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,YAAY,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,GAAG,EAAE,CAAC,EAAE,EAAE,YAAY,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,KAAM,GAAE,CAAC,CAAC,OAAO,GAAG,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,EAAE,EAAE,CAAC,OAAOD,GAAG,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,GAAG,YAAY,CAAC,EAAE,KAAK,UAAU,CAAC,iBAAiB,GAAGA,GAAG,cAAc,CAAC,EAAE,mBAAmB,GAAGA,GAAG,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,OAAO,KAAK,UAAU,CAAC,iBAAiB,GAAG,EAAE,cAAc,CAAC,EAAE,mBAAmB,GAAG,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,uBAAuB,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,OAAO,KAAK,SAAS,GAAG,GAAA,CAAI,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,oBAAoB,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,OAAO,GAAG,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,OAAO,QAAQ,GAAG,CAAC,GAAE,EAAE,IAAI,aAAa,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAgN,IAAIG,GAAM,IAAIC,EAAquG,IAAIC,GAAM,IAAIA,GAAM,IAAIC,EAAgyEtC,GAAG,IAAIuC,GAAG,GAAG,IAAIC,EAAG,GAAG,IAAIC,EAAG,GAAGC,GAAG,UAAU,QAAQ,GAAGC,GAAG,UAAU,QAAQ,GAAG,IAAIH,EAAG,GAAE,IAAIE,GAAG3C,GAAG,CAAC,EAAwiN,IAAI6C,EAAM,IAAIA,EAAM,IAAIA,EAAM,IAAIC,GAAM,IAAID,EAAM,IAAIA,EAAM,IAAIC,GAAM,IAAIA,GAAM,IAAIC,EAAM,IAAIA,EAAiuN,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC,2BAA2B,GAAG,sBAAsB,GAAG,2BAA2B,GAAG,qBAAqB,EAAE,CAAC,EAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkFj33D,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyLH,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4MH,GAAG;;;;;;;;;;EAUY,GAClB,GADkB,EAElB,GAFkB,mBCjemB,wBCApCC,IAAG,UAAU,CAAC,IAAI,EAAE,swSAAswS,EAAE,ighBAAighB,EAAE,IAAI,WAAW,CAAC,EAAE,GAAG,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,IAAI,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,IAAI,GAAG,GAAG,EAAE,IAAI,GAAG,EAAE,GAAG,GAAG,EAAE,IAAI,GAAG,EAAE,GAAG,IAAI,IAAI,EAAE,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAAE,GAAG,IAAI,IAAI,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,GAAG,IAAI,GAAG,GAAG,GAAG,CAAC,EAAE,GAAG,OAAO,aAAa,SAAS,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,EAAE,YAAY,SAAS,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,YAAY,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,QAAQ,kBAAkB,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,CAAC,IAAI,IAAI,EAAE,IAAI,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,WAAW,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,GAAG,EAAE,EAAE,KAAK,EAAE,GAAG,IAAI,GAAG,EAAE,EAAE,GAAG,OAAO,EAAE,OAAO,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,QAAQ,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,WAAW,EAAE,QAAQ,OAAO,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,GAAG,GAAG,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,MAAU,MAAM,0BAA0B,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,GAAG,WAAW,0BAA0B,WAAW,2BAA2B,YAAY,0BAA0B,MAAM,2BAA2B,EAAE,EAAE,CAAC,WAAW,6BAA6B,UAAU,4BAA4B,QAAQ,6BAA6B,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,OAAO,IAAI,OAAO,CAAC,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,EAAE,MAAO,GAAE,OAAO,UAAU,SAAS,EAAE,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,CAAC,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,IAAI,EAAE,wDAAwD,IAAI,WAAW,CAAC,EAAE,4HAA4H,EAAE,KAAK,IAAI,EAAE,SAAS,EAAE,EAAE,SAAS,EAAE,EAAE,IAAI,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,iBAAiB,CAAC,EAAE,EAAE,IAAI,gBAAgB,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,CAAC,OAAO,YAAY,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,gBAAgB,CAAC,CAAC,CAAC,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,EAAE,IAAI,OAAO,IAAI,QAAQ,SAAS,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,WAAW,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,SAAS,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,EAAE,OAAO,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,GAAG,OAAO,KAAK,MAAM,EAAE,KAAK,MAAM,KAAK,SAAS,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,YAAY,CAAC,GAAG,EAAE,GAAG,MAAM,EAAE,MAAM,OAAO,UAAU,MAAM,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC,KAAK,YAAY,CAAC,GAAG,EAAE,GAAG,MAAM,EAAE,MAAM,OAAO,SAAS,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,WAAW,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,mBAAmB,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,QAAQ,2BAA2B,EAAE,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,CAAC,EAAE,kBAAkB,SAAS,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,QAAQ,0BAA0B,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,oBAAoB,SAAS,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,QAAQ,4BAA4B,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,iBAAiB,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,CAAC,EAAE,sBAAsB,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,KAAK,UAAU,CAAC,IAAI,EAAE,IAAI,WAAW,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAA,CAAG,wBEAhz2B,SAAS,GAAE,EAAE,EAAE,CAAC,GAAG,IAAA,EAAO,OAAO,QAAQ,KAAK,yFAAyF,EAAE,EAAE,GAAG,IAAA,GAAQ,IAAA,EAAO,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,GAAG,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,aAAa,UAAU,EAAE,GAAG,IAAI,IAAK,GAAE,CAAC,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,MAAM,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,SAAS,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC,MAAM,OAAO,QAAQ,MAAM,yGAAyG,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,GAAG,IAAA,EAAO,IAAI,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,OAAO,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,GAAI,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,GAAG,EAAE,OAAO,IAAI,GAAG,QAAQ,MAAM,kGAAkG,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,EAAE,YAAY,EAAE,CAAC,MAAM,OAAO,QAAQ,MAAM,sEAAsE,CAAC,EAAE,CAAC,CAAoM,SAAS,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,IAAI,EAAE,IAAI,IAAI,EAAE,EAAE,MAAM,EAAE,OAAO,GAAG,EAAE,EAAE,SAAS,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,SAAS,SAAS,EAAE,CAAC,GAAG,CAAC,EAAE,cAAc,OAAO,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,SAAS,MAAM,EAAE,SAAS,EAAE,SAAS,MAAM,EAAE,EAAE,WAAW,KAAK,EAAE,UAAU,EAAE,EAAE,SAAS,MAAM,EAAE,IAAI,SAAS,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,SAAS,OAAO,IAAI,GAAG,EAAE,SAAS,GAAG,EAAE,SAAS,GAAG,CAAC,CAAC,CAA8xG,SAAS,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE,EAAE,IAAI,SAAS,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,OAAO,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE,EAAE,UAAU,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,SAASC,GAAE,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,KAAK,UAAU,GAAG,OAAO,EAAE,YAAY,EAAE,WAAW,GAAG,EAAE,WAAW,GAAG,IAAI,CAA65e,SAAS,GAAG,EAAE,CAAC,OAAO,EAAE,kBAAkB,IAAK,KAAI,EAAE,gBAAgB,IAAIC,GAAG,CAAC,MAAM,SAAS,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,CAAC,EAAE,UAAU,CAAC,EAAE,KAAA,CAAO,CAAC,GAAG,EAAE,eAAe,CAAC,SAAS,GAAE,EAAE,EAAE,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE,WAAW,EAAE,KAAK,IAAK,KAAI,EAAE,SAAS,eAAe,EAAE,SAAS,gBAAgB,CAAC,EAAE,EAAE,SAAS,eAAe,GAAG,EAAE,WAAW,GAAG,CAAC,SAASC,GAAE,EAAE,EAAE,CAAC,EAAE,SAAS,IAAK,KAAI,OAAO,EAAE,QAAQ,SAAS,OAAO,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,KAAK,sDAAsD,EAAE,MAAM,EAAE,CAAC,SAAS,GAAG,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,GAAG,EAAE,WAAW,IAAK,KAAI,EAAE,CAAC,GAAG,EAAE,SAAS,IAAK,KAAI,EAAE,CAAC,GAAG,EAAE,UAAU,IAAK,KAAI,EAAE,CAAC,GAAG,GAAG,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,OAAO,QAAQ,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,WAAW,IAAK,GAAyC,EAAE,WAAW,SAApD,EAAE,cAAc,WAAW,EAAE,QAAQ,EAAwB,EAAE,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,SAAS,IAAK,GAAuC,EAAE,WAAW,OAAlD,EAAE,cAAc,WAAW,EAAE,MAAM,EAAsB,EAAE,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,UAAU,IAAK,GAAwC,EAAE,WAAW,MAAnD,EAAE,cAAc,WAAW,EAAE,OAAO,EAAqB,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,QAAQ,IAAI,CAAC,QAAQ,IAAI,CAAC,EAAE,QAAQ,IAAI,CAAC,EAAE,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,OAAO,IAAI,EAAE,gBAAgB,SAAS,GAAG,IAAI,EAAE,gBAAgB,OAAO,GAAG,IAAI,EAAE,gBAAgB,MAAM,GAAG,EAAE,qBAAqB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,mBAAmB,EAAE,EAAE,UAAU,IAAK,GAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,QAAQ,OAAO,EAAE,EAAE,IAAI,EAAE,sBAAsB,GAAG,EAAE,QAAQ,GAAG,GAAG,EAAE,QAAQ,MAAM,QAAQ,EAAE,OAAO,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE,OAAO,YAAY,GAAG,EAAE,sBAAsB,SAAS,EAAE,OAAO,CAAC,EAAE,sBAAsB,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,CAAC,MAAM,QAAQ,KAAK,sEAAsE,CAAC,CAAC,CAAC,SAAS,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,YAAY,EAAE,WAAW,GAAE,4BAA4B,GAAG,AAA4D,EAA5D,EAAI,SAAS,EAAE,WAAW,IAAI,EAAE,QAAQ,IAAI,GAAE,EAAE,UAAU,EAAI,EAAE,QAAQ,IAAI,GAAE,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,IAAK,GAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,QAAQ,OAAO,EAAE,EAAE,IAAI,GAAG,IAAI,GAAE,EAAE,QAAQ,EAAE,EAAE,OAAO,CAAC,CAAC,SAAS,GAAE,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,EAAE,IAAI,IAAI,OAAO,CAAC,CAAC,SAAS,GAAG,EAAE,CAAC,OAAO,EAAP,CAAU,KAAK,UAAU,MAAO,GAAE,IAAI,KAAK,WAAW,MAAO,GAAE,IAAI,KAAK,WAAW,MAAO,GAAE,MAAM,KAAK,YAAY,MAAO,GAAE,MAAM,QAAQ,MAAU,MAAM,mEAAmE,CAAC,CAAC,CAAC,SAAS,GAAG,EAAE,CAAC,OAAO,EAAE,OAAO,gBAAgB,EAAE,GAAG,EAAE,OAAO,oBAAoB,IAAI,EAAE,aAAa,EAAE,OAAO,eAAe,EAAE,GAAG,EAAE,OAAO,oBAAoB,IAAI,EAAE,aAAa,EAAE,OAAO,eAAe,EAAE,GAAG,EAAE,OAAO,oBAAoB,IAAI,EAAE,aAAa,WAAW,CAAktkB,SAAS,GAAG,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,IAAIC,GAAG,GAAG,EAAE,WAAW,IAAK,GAAE,CAAC,IAAI,EAAE,EAAE,KAAK,UAAU,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,GAAG,IAAI,IAAK,IAAG,IAAI,IAAK,OAAM,EAAE,IAAI,IAAIC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,IAAIA,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,WAAW,CAAC,IAAI,EAAE,GAAGC,GAAE,EAAE,cAAc,EAAE,EAAE,IAAI,eAAe,CAAC,EAAE,EAAE,IAAI,eAAe,CAAC,CAAC,MAAM,CAAC,QAAQ,KAAK,qEAAqE,EAAE,MAAM,CAAC,MAAM,OAAO,IAAI,EAAE,EAAE,QAAQ,GAAG,IAAI,IAAK,GAAE,CAAC,IAAI,EAAE,IAAID,EAAE,EAAE,IAAIA,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,GAAG,EAAE,WAAW,IAAK,GAAE,CAAC,IAAI,EAAE,EAAE,KAAK,UAAU,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,GAAG,IAAI,IAAK,IAAG,IAAI,IAAK,GAAE,CAAC,GAAG,EAAE,KAAK,KAAK,IAAI,KAAK,IAAI,EAAE,EAAE,EAAE,KAAK,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,KAAK,KAAK,IAAI,KAAK,IAAI,EAAE,EAAE,EAAE,KAAK,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,KAAK,KAAK,IAAI,KAAK,IAAI,EAAE,EAAE,EAAE,KAAK,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,WAAW,CAAC,IAAI,EAAE,GAAGC,GAAE,EAAE,cAAc,EAAE,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,MAAM,QAAQ,KAAK,qEAAqE,CAAC,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,IAAIC,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,WAAW,EAAE,GAAG,EAAE,EAAE,EAAE,eAAe,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,OAAO,EAAE,cAAc,WAAW,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC,IAAI,EAAE,GAAG,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,UAAU,IAAK,IAAG,CAAC,EAAE,MAAM,CAAC,IAAI,EAAE,EAAE,cAAc,WAAW,EAAE,OAAO,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,OAAOC,GAAG,oBAAA,eAAuB,YAAY,GAAG,QAAQ,KAAK,qEAAqEA,GAAG,kBAAkB,iBAAiB,EAAEL,GAAE,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,QAAQ,IAAI,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,OAAO,EAAE,UAAU,IAAK,GAAoB,EAAlB,GAAG,EAAE,EAAE,QAAQ,CAAC,CAAG,CAAC,CAAC,kJAAlt2C,EAAw3D,GAAG,cAAcM,EAAE,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,YAAY,KAAK,KAAK,WAAW,KAAK,KAAK,eAAe,KAAK,KAAK,gBAAgB,CAAC,EAAE,KAAK,SAAS,SAAS,EAAE,CAAC,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,SAAS,EAAE,CAAC,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,SAAS,EAAE,CAAC,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,SAAS,EAAE,CAAC,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,SAAS,EAAE,CAAC,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,SAAS,EAAE,CAAC,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,SAAS,EAAE,CAAC,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,SAAS,EAAE,CAAC,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,SAAS,EAAE,CAAC,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,SAAS,EAAE,CAAC,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,SAAS,EAAE,CAAC,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,SAAS,EAAE,CAAC,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,SAAS,EAAE,CAAC,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,SAAS,EAAE,CAAC,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,SAAS,EAAE,CAAC,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,SAAS,EAAE,CAAC,OAAO,IAAI,GAAE,EAAE,GAAE,uBAAuB,CAAC,CAAC,EAAE,KAAK,SAAS,SAAS,EAAE,CAAC,OAAO,IAAI,GAAE,EAAE,GAAE,uBAAuB,CAAC,CAAC,EAAE,KAAK,SAAS,SAAS,EAAE,CAAC,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,KAAK,eAAe,GAAG,EAAE,KAAK,kBAAkB,GAAG,KAAK,OAAO,GAAG,CAAC,IAAI,EAAEC,GAAE,eAAe,CAAC,EAAE,EAAEA,GAAE,WAAW,EAAE,KAAK,IAAI,CAAC,KAAM,GAAEA,GAAE,eAAe,CAAC,EAAE,KAAK,QAAQ,UAAU,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,QAAQ,MAAM,CAAC,EAAE,EAAE,QAAQ,UAAU,CAAC,EAAE,EAAE,QAAQ,QAAQ,CAAC,CAAC,EAAE,EAAE,IAAIC,GAAG,KAAK,OAAO,EAAE,EAAE,QAAQ,KAAK,IAAI,EAAE,EAAE,gBAAgB,aAAa,EAAE,EAAE,iBAAiB,KAAK,aAAa,EAAE,EAAE,mBAAmB,KAAK,eAAe,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,QAAQ,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,MAAO,MAAK,YAAY,EAAE,IAAI,CAAC,cAAc,EAAE,CAAC,MAAO,MAAK,WAAW,EAAE,IAAI,CAAC,kBAAkB,EAAE,CAAC,MAAO,MAAK,eAAe,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,OAAO,KAAK,gBAAgB,QAAQ,CAAC,IAAI,IAAI,KAAK,gBAAgB,KAAK,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,KAAK,gBAAgB,QAAQ,CAAC,IAAI,IAAI,KAAK,gBAAgB,OAAO,KAAK,gBAAgB,QAAQ,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,IAAI,YAAY,GAAG,OAAO,GAAG,SAAS,EAAE,KAAK,MAAM,CAAC,OAAO,GAAG,aAAa,YAAY,GAAG,EAAE,OAAO,IAAI,WAAW,EAAE,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,EAAE,GAAE,iBAAiB,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,KAAK,MAAM,EAAE,GAAE,gBAAgB,CAAC,OAAO,CAAC,KAAM,GAAE,KAAK,MAAM,EAAE,OAAO,CAAC,CAAC,MAAO,GAAE,EAAE,GAAG,EAAE,QAAQ,IAAK,IAAG,EAAE,MAAM,QAAQ,GAAG,EAAE,CAAC,GAAG,EAAM,MAAM,yEAAyE,CAAC,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,GAAG,EAAE,CAAC,KAAK,GAAG,KAAK,cAAc,GAAG,YAAY,KAAK,YAAY,cAAc,KAAK,cAAc,QAAQ,KAAK,QAAQ,WAAW,KAAK,WAAW,eAAe,KAAK,cAAc,CAAC,EAAE,EAAE,WAAW,iBAAiB,KAAK,aAAa,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,KAAK,gBAAgB,OAAO,IAAI,CAAC,IAAI,EAAE,KAAK,gBAAgB,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,QAAQ,MAAM,sDAAsD,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,eAAe,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,eAAe,OAAO,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,eAAe,GAAG,EAAE,EAAE,oBAAoB,CAAC,EAAE,OAAO,EAAP,CAAU,KAAK,GAAE,oBAAoB,EAAE,GAAG,IAAI,GAAG,MAAM,KAAK,GAAE,2BAA2B,EAAE,GAAG,IAAI,GAAG,EAAE,KAAK,WAAW,EAAE,MAAM,KAAK,GAAE,sBAAsB,EAAE,GAAG,IAAI,GAAG,MAAM,KAAK,GAAE,sBAAsB,EAAE,GAAG,IAAI,GAAG,MAAM,QAAQ,EAAE,QAAQ,CAAC,GAAG,GAAG,EAAE,KAAK,IAAK,IAAG,QAAQ,KAAK,wCAAwC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,cAAc,CAAC,EAAE,EAAE,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,IAAI,EAAE,KAAK,OAAO,IAAI,QAAQ,SAAS,EAAE,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAA6P,GAAE,CAAC,gBAAgB,kBAAkB,2BAA2B,6BAA6B,oBAAoB,sBAAsB,wBAAwB,0BAA0B,yBAAyB,2BAA2B,kBAAkB,oBAAoB,oBAAoB,sBAAsB,uBAAuB,yBAAyB,2BAA2B,6BAA6B,0BAA0B,4BAA4B,yBAAyB,2BAA2B,oBAAoB,sBAAsB,qBAAqB,uBAAuB,mBAAmB,qBAAqB,sBAAsB,wBAAwB,sBAAsB,wBAAwB,gCAAgC,kCAAkC,mBAAmB,qBAAqB,iBAAiB,mBAAmB,iBAAiB,mBAAmB,wBAAwB,0BAA0B,wBAAwB,0BAA0B,wBAAwB,yBAAyB,EAAE,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC,KAAK,OAAO,EAAE,KAAK,KAAK,GAAE,oBAAoB,KAAK,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,OAAO,EAAE,KAAK,OAAO,KAAK,OAAO,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,WAAW,KAAK,OAAO,EAAE,WAAW,KAAK,KAAK,CAAC,QAAQ,IAAK,IAAG,EAAE,YAAY,KAAK,MAAM,EAAE,WAAW,KAAK,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,KAAK,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,IAAI,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,KAAK,IAAI,EAAE,YAAY,EAAE,WAAW,KAAK,OAAO,CAAC,EAAA,CAAG,QAAQ,CAAC,EAAA,CAAG,GAAG,EAAE,EAAE,IAAIC,EAAE,QAAQ,EAAE,EAAE,QAAQ,IAAK,IAAG,EAAE,OAAO,EAAE,MAAM,GAAG,EAAE,MAAM,GAAG,EAAE,MAAM,GAAA,aAAI,EAAE,IAAI,EAAE,EAAE,QAAQ,IAAK,GAAU,EAAR,EAAE,MAAQ,OAAO,EAAE,KAAT,CAAe,IAAI,cAAc,EAAE,IAAIC,GAAG,CAAC,EAAE,EAAE,OAAO,SAAS,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,IAAI,QAAQ,EAAE,IAAIC,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,IAAI,OAAO,EAAE,IAAIC,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,KAAK,eAAe,EAAE,KAAK,iBAAiB,IAAK,GAAwB,EAAtB,EAAE,KAAK,eAAiB,EAAE,KAAK,eAAe,EAAE,KAAK,iBAAiB,IAAK,GAAwB,KAAK,GAAG,EAA9B,EAAE,KAAK,eAAyB,EAAE,MAAM,EAAE,KAAK,eAAe,EAAE,SAAS,EAAE,EAAE,KAAK,eAAe,EAAE,KAAK,eAAe,EAAE,OAAO,SAAS,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,QAAQ,MAAU,MAAM,4CAA4C,EAAE,IAAI,CAAC,CAAC,OAAO,EAAE,SAAS,IAAI,EAAE,EAAE,CAAC,EAAEZ,GAAE,EAAE,CAAC,EAAE,EAAE,YAAY,IAAK,KAAI,EAAE,UAAU,EAAE,WAAW,EAAE,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC,EAAE,EAAE,QAAQ,QAAQ,CAAC,EAAE,EAAE,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,cAAc,EAAE,EAAE,CAAC,GAAG,IAAI,QAAQ,OAAO,KAAK,WAAW,CAAC,CAAC,CAAC,qBAAqB,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,OAAO,EAAE,EAAE,KAAK,MAAM,GAAG,GAAG,EAAE,YAAY,EAAE,WAAW,KAAK,OAAO,CAAC,EAAA,CAAG,MAAM,OAAO,IAAI,IAAK,GAAE,KAAK,KAAK,WAAW,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,aAAa,CAAC,KAAK,KAAK,GAAE,mBAAmB,CAAC,iBAAiB,CAAC,OAAOa,EAAC,CAAC,aAAa,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,MAAM,IAAIJ,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,qBAAqB,GAAG,EAAE,CAAC,GAAG,MAAM,QAAQ,EAAE,eAAe,EAAE,CAAC,IAAI,EAAE,EAAE,gBAAgB,EAAE,MAAM,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,GAAGK,EAAC,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,mBAAmB,IAAK,IAAG,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,iBAAA,MAAkB,CAAC,CAAC,CAAC,OAAO,QAAQ,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC,KAAK,OAAO,EAAE,KAAK,KAAK,GAAE,+BAA+B,CAAC,qBAAqB,EAAE,EAAE,CAAC,IAAI,EAAEhB,GAAE,KAAK,OAAO,EAAE,KAAK,IAAI,EAAE,OAAO,IAAI,MAAM,EAAE,mBAAmB,IAAK,KAAI,EAAE,kBAAkB,EAAE,kBAAkB,QAAQ,QAAQ,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC,KAAK,OAAO,EAAE,KAAK,KAAK,GAAE,uBAAuB,CAAC,gBAAgB,EAAE,CAAC,OAAOA,GAAE,KAAK,OAAO,EAAE,KAAK,IAAI,IAAI,KAAO,KAAFiB,EAAM,CAAC,qBAAqB,EAAE,EAAE,CAAC,IAAI,EAAEjB,GAAE,KAAK,OAAO,EAAE,KAAK,IAAI,EAAE,GAAG,IAAI,KAAK,OAAO,QAAQ,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,kBAAkB,IAAK,KAAI,EAAE,UAAU,EAAE,iBAAiB,EAAE,mBAAmB,IAAK,IAAG,EAAE,KAAK,KAAK,OAAO,cAAc,EAAE,eAAe,EAAE,gBAAgB,CAAC,EAAE,EAAE,2BAA2B,IAAK,KAAI,EAAE,mBAAmB,EAAE,0BAA0B,EAAE,4BAA4B,IAAK,IAAG,EAAE,KAAK,KAAK,OAAO,cAAc,EAAE,wBAAwB,EAAE,yBAAyB,CAAC,EAAE,EAAE,yBAAyB,IAAK,KAAI,EAAE,KAAK,KAAK,OAAO,cAAc,EAAE,qBAAqB,EAAE,sBAAsB,CAAC,EAAE,EAAE,uBAAuB,QAAQ,IAAK,IAAG,CAAC,IAAI,EAAE,EAAE,uBAAuB,MAAM,EAAE,qBAAqB,IAAIkB,EAAG,EAAE,CAAC,CAAC,CAAC,OAAO,QAAQ,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC,KAAK,OAAO,EAAE,KAAK,KAAK,GAAE,wBAAwB,CAAC,gBAAgB,EAAE,CAAC,OAAOlB,GAAE,KAAK,OAAO,EAAE,KAAK,IAAI,IAAI,KAAO,KAAFiB,EAAM,CAAC,qBAAqB,EAAE,EAAE,CAAC,IAAI,EAAEjB,GAAE,KAAK,OAAO,EAAE,KAAK,IAAI,EAAE,OAAO,IAAI,OAAO,EAAE,WAAW,EAAE,aAAa,IAAK,GAAe,EAAb,EAAE,YAAc,QAAQ,QAAQ,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC,KAAK,OAAO,EAAE,KAAK,KAAK,GAAE,yBAAyB,CAAC,gBAAgB,EAAE,CAAC,OAAOA,GAAE,KAAK,OAAO,EAAE,KAAK,IAAI,IAAI,KAAO,KAAFiB,EAAM,CAAC,qBAAqB,EAAE,EAAE,CAAC,IAAI,EAAEjB,GAAE,KAAK,OAAO,EAAE,KAAK,IAAI,EAAE,GAAG,IAAI,KAAK,OAAO,QAAQ,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,oBAAoB,IAAK,KAAI,EAAE,YAAY,EAAE,mBAAmB,EAAE,qBAAqB,IAAK,IAAG,EAAE,KAAK,KAAK,OAAO,cAAc,EAAE,iBAAiB,EAAE,kBAAkB,CAAC,EAAE,EAAE,iBAAiB,IAAK,KAAI,EAAE,eAAe,EAAE,gBAAgB,EAAE,4BAA4B,IAAK,KAAI,EAAE,0BAA0B,CAAC,IAAI,GAAG,GAAG,EAAE,8BAA8B,IAAK,KAAI,EAAE,0BAA0B,GAAG,EAAE,6BAA6B,EAAE,8BAA8B,IAAK,KAAI,EAAE,0BAA0B,GAAG,EAAE,6BAA6B,EAAE,8BAA8B,IAAK,IAAG,EAAE,KAAK,KAAK,OAAO,cAAc,EAAE,0BAA0B,EAAE,2BAA2B,CAAC,EAAE,QAAQ,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC,KAAK,OAAO,EAAE,KAAK,KAAK,GAAE,mBAAmB,CAAC,gBAAgB,EAAE,CAAC,OAAOA,GAAE,KAAK,OAAO,EAAE,KAAK,IAAI,IAAI,KAAO,KAAFiB,EAAM,CAAC,qBAAqB,EAAE,EAAE,CAAC,IAAI,EAAEjB,GAAE,KAAK,OAAO,EAAE,KAAK,IAAI,EAAE,GAAG,IAAI,KAAK,OAAO,QAAQ,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,WAAW,IAAIW,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,eAAe,EAAE,EAAE,MAAM,EAAE,EAAE,mBAAmB,IAAK,GAAE,CAAC,IAAI,EAAE,EAAE,iBAAiB,EAAE,WAAW,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,GAAGK,EAAC,CAAC,CAAC,OAAO,EAAE,uBAAuB,IAAK,KAAI,EAAE,eAAe,EAAE,sBAAsB,EAAE,oBAAoB,IAAK,IAAG,EAAE,KAAK,KAAK,OAAO,cAAc,EAAE,gBAAgB,EAAE,kBAAA,MAAmB,CAAC,EAAE,EAAE,wBAAwB,IAAK,IAAG,EAAE,KAAK,KAAK,OAAO,cAAc,EAAE,oBAAoB,EAAE,qBAAqB,CAAC,EAAE,QAAQ,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC,KAAK,OAAO,EAAE,KAAK,KAAK,GAAE,0BAA0B,CAAC,gBAAgB,EAAE,CAAC,OAAOhB,GAAE,KAAK,OAAO,EAAE,KAAK,IAAI,IAAI,KAAO,KAAFiB,EAAM,CAAC,qBAAqB,EAAE,EAAE,CAAC,IAAI,EAAEjB,GAAE,KAAK,OAAO,EAAE,KAAK,IAAI,EAAE,GAAG,IAAI,KAAK,OAAO,QAAQ,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,qBAAqB,IAAK,KAAI,EAAE,aAAa,EAAE,oBAAoB,EAAE,sBAAsB,IAAK,IAAG,EAAE,KAAK,KAAK,OAAO,cAAc,EAAE,kBAAkB,EAAE,mBAAmB,CAAC,EAAE,QAAQ,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC,KAAK,OAAO,EAAE,KAAK,KAAK,GAAE,oBAAoB,CAAC,gBAAgB,EAAE,CAAC,OAAOA,GAAE,KAAK,OAAO,EAAE,KAAK,IAAI,IAAI,KAAO,KAAFiB,EAAM,CAAC,qBAAqB,EAAE,EAAE,CAAC,IAAI,EAAEjB,GAAE,KAAK,OAAO,EAAE,KAAK,IAAI,EAAE,GAAG,IAAI,KAAK,OAAO,QAAQ,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,UAAU,EAAE,kBAAkB,IAAK,GAAoB,EAAlB,EAAE,gBAAkB,EAAE,mBAAmB,IAAK,IAAG,EAAE,KAAK,KAAK,OAAO,cAAc,EAAE,eAAe,EAAE,gBAAgB,CAAC,EAAE,EAAE,oBAAoB,EAAE,qBAAqB,IAAI,IAAI,EAAE,EAAE,kBAAkB,CAAC,EAAE,EAAE,CAAC,EAAE,MAAO,GAAE,iBAAiB,IAAIW,EAAE,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,GAAGK,EAAC,EAAE,QAAQ,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC,KAAK,OAAO,EAAE,KAAK,KAAK,GAAE,iBAAiB,CAAC,gBAAgB,EAAE,CAAC,OAAOhB,GAAE,KAAK,OAAO,EAAE,KAAK,IAAI,IAAI,KAAO,KAAFiB,EAAM,CAAC,qBAAqB,EAAE,EAAE,CAAC,IAAI,EAAEjB,GAAE,KAAK,OAAO,EAAE,KAAK,IAAI,EAAE,OAAO,IAAI,OAAO,EAAE,IAAI,EAAE,MAAM,IAAK,GAAQ,IAAN,EAAE,KAAS,QAAQ,QAAQ,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC,KAAK,OAAO,EAAE,KAAK,KAAK,GAAE,sBAAsB,CAAC,gBAAgB,EAAE,CAAC,OAAOA,GAAE,KAAK,OAAO,EAAE,KAAK,IAAI,IAAI,KAAO,KAAFiB,EAAM,CAAC,qBAAqB,EAAE,EAAE,CAAC,IAAI,EAAEjB,GAAE,KAAK,OAAO,EAAE,KAAK,IAAI,EAAE,GAAG,IAAI,KAAK,OAAO,QAAQ,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,kBAAkB,EAAE,iBAAiB,IAAK,GAAmB,EAAjB,EAAE,eAAiB,EAAE,kBAAkB,IAAK,IAAG,EAAE,KAAK,KAAK,OAAO,cAAc,EAAE,uBAAuB,EAAE,eAAe,CAAC,EAAE,IAAI,EAAE,EAAE,qBAAqB,CAAC,EAAE,EAAE,CAAC,EAAE,MAAO,GAAE,cAAc,IAAIW,EAAE,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,GAAGK,EAAC,EAAE,EAAE,uBAAuB,IAAK,IAAG,EAAE,KAAK,KAAK,OAAO,cAAc,EAAE,mBAAmB,EAAE,qBAAA,MAAsB,CAAC,EAAE,QAAQ,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC,KAAK,OAAO,EAAE,KAAK,KAAK,GAAE,kBAAkB,CAAC,gBAAgB,EAAE,CAAC,OAAOhB,GAAE,KAAK,OAAO,EAAE,KAAK,IAAI,IAAI,KAAO,KAAFiB,EAAM,CAAC,qBAAqB,EAAE,EAAE,CAAC,IAAI,EAAEjB,GAAE,KAAK,OAAO,EAAE,KAAK,IAAI,EAAE,GAAG,IAAI,KAAK,OAAO,QAAQ,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,MAAO,GAAE,UAAU,EAAE,aAAa,IAAK,GAAe,EAAb,EAAE,WAAa,EAAE,cAAc,IAAK,IAAG,EAAE,KAAK,KAAK,OAAO,cAAc,EAAE,UAAU,EAAE,WAAW,CAAC,EAAE,QAAQ,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC,KAAK,OAAO,EAAE,KAAK,KAAK,GAAE,wBAAwB,CAAC,gBAAgB,EAAE,CAAC,OAAOA,GAAE,KAAK,OAAO,EAAE,KAAK,IAAI,IAAI,KAAO,KAAFiB,EAAM,CAAC,qBAAqB,EAAE,EAAE,CAAC,IAAI,EAAEjB,GAAE,KAAK,OAAO,EAAE,KAAK,IAAI,EAAE,GAAG,IAAI,KAAK,OAAO,QAAQ,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,qBAAqB,IAAK,KAAI,EAAE,WAAW,EAAE,oBAAoB,EAAE,qBAAqB,IAAK,KAAI,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,oBAAoB,IAAK,IAAG,EAAE,KAAK,KAAK,OAAO,cAAc,EAAE,gBAAgB,EAAE,iBAAiB,CAAC,EAAE,QAAQ,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC,KAAK,OAAO,EAAE,KAAK,KAAK,GAAE,kBAAkB,CAAC,YAAY,EAAE,CAAC,IAAI,EAAE,KAAK,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,SAAS,GAAG,GAAG,CAAC,EAAE,YAAY,CAAC,EAAE,WAAW,KAAK,MAAM,OAAO,KAAK,IAAI,EAAE,EAAE,WAAW,KAAK,MAAM,EAAE,EAAE,QAAQ,WAAW,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,oBAAoB,EAAE,mBAAmB,QAAQ,KAAK,IAAI,GAAG,EAAE,MAAU,MAAM,6EAA6E,EAAE,OAAO,IAAI,CAAC,OAAO,EAAE,iBAAiB,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC,KAAK,OAAO,EAAE,KAAK,KAAK,GAAE,gBAAgB,CAAC,YAAY,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,EAAE,KAAK,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,SAAS,GAAG,GAAG,CAAC,EAAE,YAAY,CAAC,EAAE,WAAW,GAAG,OAAO,KAAK,IAAI,EAAE,EAAE,WAAW,GAAG,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,cAAc,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,QAAQ,QAAQ,WAAW,EAAE,GAAG,EAAE,IAAI,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,iBAAiB,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC,KAAK,OAAO,EAAE,KAAK,KAAK,GAAE,gBAAgB,CAAC,YAAY,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,EAAE,KAAK,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,SAAS,GAAG,GAAG,CAAC,EAAE,YAAY,CAAC,EAAE,WAAW,GAAG,OAAO,KAAK,IAAI,EAAE,EAAE,WAAW,GAAG,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,cAAc,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,QAAQ,QAAQ,WAAW,EAAE,GAAG,EAAE,IAAI,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,iBAAiB,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,GAAE,KAAK,CAAC,YAAY,EAAE,EAAE,CAAC,KAAK,KAAK,EAAE,KAAK,OAAO,CAAC,CAAC,eAAe,EAAE,CAAC,IAAI,EAAE,KAAK,OAAO,KAAK,EAAE,EAAE,YAAY,GAAG,GAAG,EAAE,YAAY,EAAE,WAAW,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE,WAAW,KAAK,MAAM,EAAE,KAAK,OAAO,cAAc,SAAS,EAAE,MAAM,EAAE,EAAE,KAAK,OAAO,QAAQ,eAAe,GAAG,CAAC,GAAG,CAAC,EAAE,UAAU,CAAC,GAAG,EAAE,oBAAoB,EAAE,mBAAmB,QAAQ,KAAK,IAAI,GAAG,EAAE,MAAU,MAAM,oFAAoF,EAAE,OAAO,IAAI,CAAC,OAAO,EAAE,KAAK,SAAS,EAAE,CAAC,IAAI,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,IAAI,WAAW,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,KAAK,UAAU,CAAC,IAAI,EAAE,IAAI,YAAY,EAAE,CAAC,EAAE,OAAO,EAAE,iBAAiB,IAAI,WAAW,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,OAAO,IAAI,CAAC,EAAE,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC,KAAK,KAAK,GAAE,wBAAwB,KAAK,OAAO,CAAC,CAAC,eAAe,EAAE,CAAC,IAAI,EAAE,KAAK,OAAO,KAAK,EAAE,EAAE,MAAM,GAAG,GAAG,CAAC,EAAE,YAAY,CAAC,EAAE,WAAW,KAAK,OAAO,EAAE,OAAO,IAAK,GAAE,OAAO,KAAK,IAAI,EAAE,EAAE,OAAO,EAAE,MAAM,IAAI,IAAI,KAAK,EAAE,WAAW,GAAG,EAAE,OAAO,GAAE,WAAW,EAAE,OAAO,GAAE,gBAAgB,EAAE,OAAO,GAAE,cAAc,EAAE,OAAO,IAAK,GAAE,OAAO,KAAK,IAAI,EAAE,EAAE,WAAW,KAAK,KAAK,CAAC,WAAW,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,IAAI,IAAI,KAAK,EAAE,EAAE,KAAK,KAAK,OAAO,cAAc,WAAW,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,EAAE,GAAG,EAAE,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,KAAK,OAAO,eAAe,CAAC,CAAC,EAAE,QAAQ,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,IAAI,KAAK,EAAE,CAAC,IAAI,EAAE,IAAImB,EAAE,EAAE,IAAIf,EAAE,EAAE,IAAIgB,GAAG,EAAE,IAAIhB,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,IAAIiB,GAAG,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,oBAAoB,EAAE,YAAY,CAAC,EAAE,EAAE,UAAU,EAAE,oBAAoB,EAAE,SAAS,CAAC,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE,MAAM,CAAC,EAAE,EAAE,YAAY,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,IAAI,KAAK,EAAE,GAAG,IAAI,WAAW,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,cAAc,IAAIC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,CAAC,MAAM,IAAI,eAAe,IAAI,YAAY,IAAI,SAAS,EAAE,SAAS,aAAa,EAAE,EAAE,EAAE,EAAE,GAAG,UAAU,KAAK,KAAK,EAAE,CAAC,EAAE,KAAK,OAAO,oBAAoB,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,IAAI,GAAG,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,OAAOC,GAAE,GAAG,GAAG,CAAC,KAAK,WAAW,IAAI,OAAO,EAAE,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC,KAAK,KAAK,GAAE,gBAAgB,KAAK,QAAQ,KAAK,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,SAAS,EAAE,EAAEA,EAAC,EAAE,EAAE,IAAI,YAAY,GAAG,KAAK,OAAO,CAAC,MAAM,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,QAAQ,GAAG,MAAU,MAAM,mDAAmD,EAAE,GAAG,KAAK,OAAO,QAAQ,EAAE,MAAU,MAAM,gDAAgD,EAAE,IAAI,EAAE,KAAK,OAAO,OAAOA,GAAE,EAAE,IAAI,SAAS,EAAEA,EAAC,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,IAAI,GAAG,KAAK,CAAC,IAAI,EAAE,IAAI,WAAW,EAAEA,GAAE,EAAE,CAAC,EAAE,KAAK,QAAQ,EAAE,OAAO,CAAC,CAAC,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC,IAAI,EAAEA,GAAE,EAAE,KAAK,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,UAAU,KAAK,MAAU,MAAM,2CAA2C,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,YAAY,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,MAAU,MAAM,qDAAqD,EAAE,KAAK,KAAK,GAAE,2BAA2B,KAAK,KAAK,EAAE,KAAK,YAAY,EAAE,KAAK,YAAY,QAAQ,CAAC,CAAC,gBAAgB,EAAE,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,EAAE,KAAK,YAAY,EAAE,EAAE,WAAW,KAAK,KAAK,CAAC,WAAW,EAAE,EAAE,WAAW,KAAK,KAAK,CAAC,WAAW,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,IAAI,IAAI,KAAK,EAAE,CAAC,IAAI,EAAE,GAAG,IAAI,EAAE,YAAY,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE,WAAW,CAAC,IAAI,EAAE,GAAG,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,KAAK,IAAK,GAAE,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,WAAW,IAAyB,EAAE,GAArBlB,GAAE,EAAE,cAAqB,CAAC,KAAK,EAAE,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,cAAc,aAAa,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC,OAAO,IAAI,QAAQ,SAAS,EAAE,EAAE,CAAC,EAAE,gBAAgB,EAAE,SAAS,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE,WAAW,CAAC,IAAI,EAAE,EAAE,WAAW,GAAG,EAAE,EAAE,GAAG,IAAI,IAAK,KAAI,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,EAAEW,GAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,aAAa,CAAC,KAAK,KAAK,GAAE,qBAAqB,CAAC,cAAc,EAAE,EAAE,CAAC,OAAO,EAAE,WAAW,IAAK,IAAG,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,IAAK,IAAG,EAAE,WAAW,IAAK,IAAG,EAAE,QAAQ,IAAK,KAAI,EAAE,EAAE,MAAM,EAAE,EAAE,WAAW,IAAK,KAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,IAAK,IAAG,EAAE,OAAO,UAAU,EAAE,MAAM,EAAE,EAAE,WAAW,IAAK,KAAI,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,IAAK,IAAG,EAAE,OAAO,UAAU,EAAE,KAAK,EAAE,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,aAAa,CAAC,KAAK,KAAK,GAAE,qBAAqB,CAAC,EAAEQ,GAAE,cAAcC,EAAE,CAAC,YAAY,EAAE,EAAE,EAAE,EAAE,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,IAAI,EAAE,KAAK,aAAa,EAAE,KAAK,aAAa,EAAE,KAAK,UAAU,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,CAAC,aAAa,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,KAAK,aAAa,EAAE,KAAK,aAAa,EAAE,KAAK,UAAU,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,GAAG,IAAIL,GAAG,GAAG,cAAcI,EAAC,CAAC,aAAa,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,aAAa,EAAE,EAAE,EAAE,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,GAAE,CAAC,MAAM,KAAK,WAAW,MAAM,WAAW,MAAM,WAAW,MAAM,WAAW,MAAM,WAAW,MAAM,OAAO,KAAK,OAAO,MAAM,WAAW,MAAM,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,eAAe,EAAE,aAAa,EAAE,cAAc,KAAK,eAAe,IAAI,EAAEnB,GAAE,CAAC,KAAK,UAAU,KAAK,WAAW,KAAK,WAAW,KAAK,YAAY,KAAK,YAAY,KAAK,YAAY,EAAE,GAAG,CAAC,KAAKqB,GAAG,KAAKC,GAAE,KAAKC,GAAG,KAAKC,GAAG,KAAKC,GAAG,KAAKC,EAAE,EAAE,GAAG,CAAC,MAAMC,GAAG,MAAMC,GAAG,MAAMC,EAAE,EAAEC,GAAE,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,GAAG,CAAC,SAAS,WAAW,OAAO,SAAS,QAAQ,UAAU,WAAW,KAAK,WAAW,MAAM,WAAW,MAAM,WAAW,MAAM,QAAQ,QAAQ,UAAU,aAAa,SAAS,WAAW,EAAE,GAAE,CAAC,MAAM,QAAQ,YAAY,WAAW,SAAS,aAAa,QAAQ,uBAAuB,EAAE,GAAG,CAAC,YAAY,IAAK,GAAE,OAAOC,GAAG,KAAKC,EAAE,EAAE,GAAE,CAAC,OAAO,SAAS,KAAK,OAAO,MAAM,OAAO,EAA+nF,GAAG,IAAIlB,EAAE,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,KAAK,EAAE,KAAK,WAAW,CAAC,EAAE,KAAK,QAAQ,CAAC,EAAE,KAAK,QAAQ,EAAE,KAAK,MAAM,IAAI,GAAG,KAAK,aAAa,IAAI,IAAI,KAAK,eAAe,CAAC,EAAE,KAAK,UAAU,CAAC,EAAE,KAAK,UAAU,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,KAAK,YAAY,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,KAAK,WAAW,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,KAAK,YAAY,CAAC,EAAE,KAAK,aAAa,CAAC,EAAE,KAAK,cAAc,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,GAAG,GAAG,OAAO,EAAU,KAAK,OAAO,EAAU,UAAU,IAAI,CAAC,IAAI,EAAE,EAAU,UAAU,EAAE,iCAAiC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,MAAM,gBAAgB,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,QAAQ,SAAS,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,qBAAqB,CAAC,CAAC,GAAG,EAAE,CAAC,OAAO,kBAAkB,KAAK,GAAG,EAAE,IAAI,GAAG,EAAE,GAAG,KAAK,cAAc,IAAImB,GAAG,KAAK,QAAQ,OAAO,EAAE,KAAK,cAAc,IAAIC,GAAG,KAAK,QAAQ,OAAO,EAAE,KAAK,cAAc,eAAe,KAAK,QAAQ,WAAW,EAAE,KAAK,cAAc,iBAAiB,KAAK,QAAQ,aAAa,EAAE,KAAK,WAAW,IAAI7B,GAAG,KAAK,QAAQ,OAAO,EAAE,KAAK,WAAW,gBAAgB,aAAa,EAAE,KAAK,QAAQ,cAAc,mBAAmB,KAAK,WAAW,mBAAmB,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,CAAC,KAAK,WAAW,CAAC,CAAC,WAAW,EAAE,CAAC,KAAK,QAAQ,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,KAAK,EAAE,KAAK,WAAW,KAAK,MAAM,UAAU,EAAE,KAAK,UAAU,CAAC,EAAE,KAAK,WAAW,SAAS,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC,EAAE,QAAQ,IAAI,KAAK,WAAW,SAAS,EAAE,CAAC,OAAO,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,OAAO,QAAQ,IAAI,CAAC,EAAE,gBAAgB,OAAO,EAAE,EAAE,gBAAgB,WAAW,EAAE,EAAE,gBAAgB,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,OAAO,GAAG,OAAO,EAAE,GAAG,WAAW,EAAE,GAAG,QAAQ,EAAE,GAAG,MAAM,EAAE,MAAM,OAAO,EAAE,SAAS,CAAC,CAAC,EAAE,OAAO,GAAE,EAAE,EAAE,CAAC,EAAER,GAAE,EAAE,CAAC,EAAE,QAAQ,IAAI,EAAE,WAAW,SAAS,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,IAAI,IAAI,KAAK,EAAE,OAAO,EAAE,kBAAkB,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,KAAK,OAAO,CAAC,EAAE,EAAE,KAAK,KAAK,OAAO,CAAC,EAAE,EAAE,KAAK,KAAK,QAAQ,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,OAAO,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,OAAO,IAAK,KAAI,KAAK,YAAY,KAAK,UAAU,EAAE,IAAI,EAAE,EAAE,OAAO,IAAK,KAAI,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,IAAI,EAAE,SAAS,IAAK,IAAG,KAAK,YAAY,KAAK,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,IAAI,IAAK,KAAI,EAAE,KAAK,KAAK,IAAK,KAAI,EAAE,KAAK,GAAG,EAAE,KAAK,GAAG,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,YAAY,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,KAAK,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,aAAa,IAAI,CAAC,EAAE,GAAG,MAAM,KAAK,aAAa,IAAI,EAAE,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,KAAK,EAAE,SAAS,QAAQ,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE,MAAM,aAAa,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,OAAO,OAAO,KAAK,OAAO,EAAE,EAAE,KAAK,IAAI,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,OAAO,OAAO,KAAK,OAAO,EAAE,EAAE,QAAQ,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,cAAc,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,KAAK,MAAM,IAAI,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,OAAO,EAAP,CAAU,IAAI,QAAQ,EAAE,KAAK,UAAU,CAAC,EAAE,MAAM,IAAI,OAAO,EAAE,KAAK,WAAW,SAAS,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,OAAO,EAAE,KAAK,WAAW,SAAS,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,WAAW,EAAE,KAAK,aAAa,CAAC,EAAE,MAAM,IAAI,aAAa,EAAE,KAAK,WAAW,SAAS,EAAE,CAAC,OAAO,EAAE,gBAAgB,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,SAAS,EAAE,KAAK,WAAW,CAAC,EAAE,MAAM,IAAI,WAAW,EAAE,KAAK,WAAW,SAAS,EAAE,CAAC,OAAO,EAAE,cAAc,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,UAAU,EAAE,KAAK,WAAW,SAAS,EAAE,CAAC,OAAO,EAAE,aAAa,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,OAAO,EAAE,KAAK,SAAS,CAAC,EAAE,MAAM,IAAI,YAAY,EAAE,KAAK,WAAW,SAAS,EAAE,CAAC,OAAO,EAAE,eAAe,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,SAAS,EAAE,KAAK,WAAW,CAAC,EAAE,MAAM,QAAQ,GAAG,EAAE,KAAK,WAAW,SAAS,EAAE,CAAC,OAAO,GAAG,MAAM,EAAE,eAAe,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAU,MAAM,iBAAiB,CAAC,EAAE,KAAK,CAAC,KAAK,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,gBAAgB,EAAE,CAAC,IAAI,EAAE,KAAK,MAAM,IAAI,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,KAAK,GAAG,IAAI,OAAO,KAAK,OAAO,CAAC,EAAE,EAAE,QAAQ,IAAI,EAAE,IAAI,SAAS,EAAE,EAAE,CAAC,OAAO,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,QAAQ,GAAG,EAAE,KAAK,WAAW,GAAG,EAAE,MAAM,EAAE,OAAO,cAAc,MAAU,MAAM,qBAAqB,EAAE,KAAK,gCAAgC,EAAE,GAAG,EAAE,MAAM,IAAK,IAAG,IAAI,EAAE,OAAO,QAAQ,QAAQ,KAAK,WAAW,GAAE,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,QAAQ,OAAO,IAAI,QAAQ,SAAS,EAAE,EAAE,CAAC,EAAE,KAAKO,GAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,IAAK,GAAE,UAAU,CAAC,EAAM,MAAM,4CAA4C,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,YAAY,GAAG,OAAO,KAAK,cAAc,SAAS,EAAE,MAAM,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC,IAAI,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,KAAK,EAAE,KAAK,KAAK,UAAU,GAAG,GAAG,EAAE,aAAa,IAAK,IAAG,EAAE,SAAS,IAAK,GAAE,CAAC,IAAI,EAAE0B,GAAE,EAAE,MAAM,EAAE9B,GAAE,EAAE,eAAe,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,MAAM,CAAC,EAAE,OAAO,QAAQ,QAAQ,IAAImC,GAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,aAAa,IAAK,GAAwD,EAAE,KAAK,IAAI,EAAjE,EAAE,KAAK,KAAK,cAAc,aAAa,EAAE,UAAU,CAAC,EAAe,EAAE,SAAS,IAAK,KAAI,EAAE,KAAK,KAAK,cAAc,aAAa,EAAE,OAAO,QAAQ,UAAU,CAAC,EAAE,EAAE,KAAK,KAAK,cAAc,aAAa,EAAE,OAAO,OAAO,UAAU,CAAC,GAAG,QAAQ,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,EAAEL,GAAE,EAAE,MAAM,EAAE9B,GAAE,EAAE,eAAe,EAAE,EAAE,kBAAkB,EAAE,EAAE,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,aAAa,IAAK,GAAyC,IAAK,GAA5C,EAAE,YAAY,EAAE,WAAW,CAAC,WAAkB,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,EAAE,GAAG,GAAG,IAAI,EAAE,CAAC,IAAI,EAAE,KAAK,MAAM,EAAE,CAAC,EAAE,EAAE,qBAAqB,EAAE,WAAW,IAAI,EAAE,cAAc,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,MAAM,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,IAAIoC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,MAAM,IAAI,EAAE,CAAC,GAAG,EAAE,IAAIC,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,KAAM,CAA4B,EAA5B,IAAI,KAAO,IAAI,EAAE,EAAE,MAAM,CAAC,EAAI,IAAI,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,IAAIF,GAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,SAAS,IAAK,GAAE,CAAC,IAAI,EAAEL,GAAE,OAAO,EAAE9B,GAAE,EAAE,OAAO,QAAQ,eAAe,EAAE,EAAE,OAAO,QAAQ,YAAY,EAAE,EAAE,EAAE,OAAO,OAAO,YAAY,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,OAAO,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,OAAO,MAAM,CAAC,EAAE,IAAI,OAAO,EAAE,IAAImC,GAAE,EAAE,MAAM,MAAM,EAAE,EAAE,SAAS,EAAE,UAAU,GAAG,EAAE,WAAW,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,MAAU,MAAM,mEAAmE,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,EAAE,KAAK,QAAQ,EAAE,EAAE,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE,OAAO,GAAG,EAAE,KAAK,cAAc,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,QAAQ,WAAW,EAAE,GAAG,EAAE,IAAI,OAAO,EAAE,EAAE,CAAC,OAAO,KAAK,iBAAiB,EAAE,EAAE,CAAC,CAAC,CAAC,iBAAiB,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,KAAK,EAAE,EAAE,SAAS,GAAG,EAAE,EAAE,OAAO,GAAG,GAAG,EAAE,KAAK,EAAE,YAAY,IAAI,EAAE,QAAQ,GAAG,KAAK,aAAa,GAAG,OAAO,KAAK,aAAa,GAAG,IAAI,EAAE,KAAK,gBAAgB,EAAE,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,GAAG,EAAE,OAAO,IAAI,OAAO,EAAE,KAAK,UAAU,EAAE,IAAI,WAAW,aAAa,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,IAAI,GAAG,EAAE,UAAU,CAAC,EAAA,CAAG,EAAE,UAAU,CAAC,EAAE,MAAO,GAAE,UAAU,GAAG,EAAE,YAAA,KAAc,EAAE,UAAU,GAAG,EAAE,YAAA,KAAe,EAAE,MAAM,GAAG,EAAE,QAAA,IAAW,EAAE,MAAM,GAAG,EAAE,QAAA,IAAW,EAAE,gBAAgB,CAAC,EAAE,qBAAqB,EAAE,YAAA,MAAgB,EAAE,YAAA,KAAc,EAAE,aAAa,IAAI,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,UAAU,CAAC,OAAO,IAAI,CAAC,EAAE,MAAO,MAAK,aAAa,GAAG,EAAE,CAAC,CAAC,gBAAgB,EAAE,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,KAAK,EAAE,KAAK,QAAQ,GAAG,KAAK,YAAY,KAAK,IAAK,GAAE,OAAO,KAAK,YAAY,EAAE,CAAC,KAAK,GAAG,EAAE,MAAM,CAAC,EAAE,IAAI,EAAE,EAAE,OAAO,GAAG,EAAE,KAAK,KAAK,KAAK,UAAU,EAAE,EAAE,KAAK,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,aAAa,IAAK,GAAE,EAAE,EAAE,cAAc,aAAa,EAAE,UAAU,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,MAAO,GAAE,EAAE,gBAAgB,CAAC,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE,MAAM,IAAK,GAAE,MAAU,MAAM,2BAA2B,EAAE,gCAAgC,EAAE,IAAI,EAAE,QAAQ,QAAQ,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC,OAAO,IAAI,QAAQ,SAAS,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,sBAAsB,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,IAAI,EAAE,IAAIG,GAAG,CAAC,EAAE,EAAE,YAAY,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,KAAKlC,GAAE,WAAW,EAAE,EAAE,IAAI,EAAE,EAAE,IAAK,GAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC,OAAO,IAAI,CAAC,GAAG,EAAE,gBAAgB,CAAC,EAAEP,GAAE,EAAE,CAAC,EAAE,EAAE,SAAS,SAAS,EAAE,UAAU,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,SAAS,EAAE,CAAC,MAAM,QAAQ,MAAM,0CAA0C,CAAC,EAAE,CAAC,CAAC,EAAE,MAAO,MAAK,YAAY,GAAG,EAAE,CAAC,CAAC,cAAc,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,KAAK,OAAO,KAAK,cAAc,UAAU,EAAE,KAAK,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC,GAAG,CAAC,EAAE,OAAO,KAAK,GAAG,EAAE,WAAW,IAAK,IAAG,EAAE,SAAS,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,GAAE,uBAAuB,CAAC,IAAI,EAAE,EAAE,aAAa,IAAK,GAAwC,IAAK,GAA3C,EAAE,WAAW,GAAE,uBAA8B,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,aAAa,IAAI,CAAC,EAAE,EAAE,EAAE,WAAW,GAAE,sBAAsB,CAAC,cAAc,EAAE,CAAC,EAAE,EAAE,aAAa,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,IAAK,KAAI,EAAE,WAAW,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,oBAAoB,EAAE,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE,SAAS,EAAE,EAAE,WAAW,UAAU,IAAK,GAAE,EAAE,EAAE,WAAW,QAAQ,IAAK,GAAE,EAAE,EAAE,WAAW,SAAS,IAAK,GAAE,GAAG,EAAE,SAAS,CAAC,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,KAAK,MAAM,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI0C,GAAGC,GAAE,UAAU,KAAK,KAAK,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,gBAAgB,CAAC,EAAE,KAAK,MAAM,IAAI,EAAE,CAAC,GAAG,EAAE,CAAC,MAAM,GAAG,EAAE,OAAO,CAAC,IAAI,EAAE,qBAAqB,EAAE,KAAK,EAAE,KAAK,MAAM,IAAI,CAAC,EAAE,IAAI,EAAE,IAAIC,GAAGD,GAAE,UAAU,KAAK,KAAK,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,KAAK,MAAM,IAAI,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC,IAAI,EAAE,kBAAkB,EAAE,KAAK,IAAI,IAAI,GAAG,wBAAwB,IAAI,GAAG,kBAAkB,IAAI,GAAG,iBAAiB,IAAI,EAAE,KAAK,MAAM,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,CAAC,GAAG,IAAI,EAAE,YAAY,CAAC,GAAG,IAAI,EAAE,cAAc,EAAE,YAAY,GAAG,IAAI,EAAE,uBAAuB,EAAE,qBAAqB,GAAG,KAAK,KAAK,MAAM,IAAI,EAAE,CAAC,EAAE,KAAK,aAAa,IAAI,EAAE,KAAK,aAAa,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,iBAAiB,CAAC,OAAO5C,EAAE,CAAC,aAAa,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,KAAK,EAAE,KAAK,WAAW,EAAE,EAAE,UAAU,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,YAAY,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,GAAE,qBAAqB,CAAC,IAAI,EAAE,EAAE,GAAE,qBAAqB,EAAE,EAAE,gBAAgB,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,sBAAsB,CAAC,EAAE,GAAG,EAAE,MAAM,IAAIU,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,QAAQ,EAAE,eAAe,EAAE,CAAC,IAAI,EAAE,EAAE,gBAAgB,EAAE,MAAM,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,GAAGK,EAAC,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,mBAAmB,IAAK,IAAG,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,iBAAA,MAAkB,CAAC,EAAE,EAAE,UAAU,EAAE,iBAAiB,IAAK,GAAmB,EAAjB,EAAE,eAAiB,EAAE,UAAU,EAAE,kBAAkB,IAAK,GAAoB,EAAlB,EAAE,gBAAkB,EAAE,2BAA2B,IAAK,KAAI,EAAE,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,wBAAwB,CAAC,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,wBAAwB,CAAC,GAAG,EAAE,KAAK,WAAW,SAAS,EAAE,CAAC,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,EAAE,KAAK,QAAQ,IAAI,KAAK,WAAW,SAAS,EAAE,CAAC,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,cAAc,CAAC,IAAI,EAAE,KAAA,GAAS,IAAI,EAAE,EAAE,WAAW,GAAE,OAAO,GAAG,IAAI,GAAE,OAAO,EAAE,YAAY,CAAC,EAAE,EAAE,WAAW,CAAC,IAAI,EAAE,YAAY,CAAC,EAAE,IAAI,GAAE,OAAO,EAAE,UAAU,EAAE,cAAc,IAAK,GAAgB,GAAd,EAAE,cAAiB,EAAE,gBAAgB,IAAK,IAAG,IAAID,KAAI,EAAE,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,aAAa,CAAC,EAAE,EAAE,YAAY,IAAIG,EAAG,EAAE,CAAC,EAAE,EAAE,cAAc,QAAQ,IAAK,IAAG,CAAC,IAAI,EAAE,EAAE,cAAc,MAAM,EAAE,YAAY,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,mBAAmB,IAAK,IAAG,IAAIH,KAAI,EAAE,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,gBAAgB,CAAC,EAAE,EAAE,iBAAiB,WAAW,IAAK,KAAI,EAAE,eAAe,EAAE,iBAAiB,WAAW,EAAE,iBAAiB,IAAK,IAAG,IAAIA,GAAE,CAAC,IAAI,EAAE,EAAE,eAAe,EAAE,SAAS,IAAIJ,EAAE,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,GAAGK,EAAC,CAAC,CAAC,OAAO,EAAE,kBAAkB,IAAK,IAAG,IAAID,IAAG,EAAE,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,gBAAA,MAAiB,CAAC,EAAE,QAAQ,IAAI,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAMb,GAAE,EAAE,CAAC,EAAE,EAAE,aAAa,IAAI,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE,YAAY,GAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,IAAI,EAAE6C,GAAG,iBAAiB,GAAG,EAAE,EAAE,OAAO,KAAK,KAAK,cAAc,EAAE,KAAK,EAAE,KAAK,cAAc,IAAI,KAAK,cAAc,GAAG,EAAE,EAAE,CAAC,eAAe,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,WAAW,EAAE,KAAK,eAAe,SAAS,EAAE,EAAE,CAAC,OAAO,EAAE,GAAE,2BAA2B,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC,OAAO,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,GAAG,GAAG,EAAE,EAAE,KAAK,EAAE,OAAO,MAAM,CAAC,IAAI,EAAE,AAAgE,EAAhE,EAAE,YAAY,EAAE,WAAW,GAAE,4BAA8B,EAAE,CAAC,EAAI,GAAG,IAAIC,GAAG,EAAE,CAAC,EAAE,EAAE,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,QAAQ,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,KAAK,EAAE,KAAK,WAAW,EAAE,EAAE,OAAO,GAAG,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,WAAW,IAAK,GAAE,GAAG,KAAK,KAAK,EAAE,KAAK,cAAc,WAAW,EAAE,EAAE,CAAC,QAAQ,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,eAAe,CAAC,CAAC,EAAE,QAAQ,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,EAAE,EAAE,OAAO,GAAG,EAAE,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,GAAG,EAAE,OAAO,GAAE,WAAW,EAAE,OAAO,GAAE,gBAAgB,EAAE,OAAO,GAAE,cAAc,EAAE,OAAO,IAAK,GAAE,EAAE,EAAE,gBAAgB,CAAC,EAAE,IAAIC,GAAG,EAAE,CAAC,EAAE,IAAIC,GAAG,EAAE,CAAC,EAAE,EAAE,gBAAgB,CAAC,GAAG,EAAE,qBAAqB,EAAE,EAAE,OAAO,GAAE,eAAe,EAAE,SAAS,GAAE,EAAE,SAAA,CAAW,EAAE,EAAE,OAAO,GAAE,eAAe,EAAE,SAAS,GAAE,EAAE,SAAA,CAAW,QAAQ,GAAG,EAAE,OAAO,GAAE,MAAM,EAAE,IAAIC,GAAG,EAAE,CAAC,OAAO,GAAG,EAAE,OAAO,GAAE,WAAW,EAAE,IAAIC,GAAG,EAAE,CAAC,OAAO,GAAG,EAAE,OAAO,GAAE,UAAU,EAAE,IAAIC,GAAG,EAAE,CAAC,OAAO,GAAG,EAAE,OAAO,GAAE,OAAO,EAAE,IAAIC,GAAG,EAAE,CAAC,OAAO,MAAU,MAAM,iDAAiD,EAAE,IAAI,EAAE,OAAO,KAAK,EAAE,SAAS,eAAe,CAAC,CAAC,OAAO,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC,EAAEpD,GAAE,EAAE,CAAC,EAAE,EAAE,YAAY,GAAE,EAAE,EAAE,CAAC,EAAE,EAAE,oBAAoB,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,aAAa,IAAI,EAAE,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,OAAO,EAAE,YAAY,GAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,IAAI,EAAE,IAAIqD,GAAE,EAAE,YAAY,GAAE,EAAE,EAAE,CAAC,EAAE,EAAE,aAAa,IAAI,EAAE,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE,KAAK,KAAK,QAAQ,GAAG,EAAE,EAAE,EAAE,MAAM,GAAG,CAAC,EAAE,CAAC,QAAQ,KAAK,8CAA8C,EAAE,MAAM,CAAC,OAAO,EAAE,OAAO,cAAc,EAAE,IAAIC,GAAGC,GAAG,SAAS,EAAE,IAAI,EAAE,EAAE,aAAa,EAAE,EAAE,OAAO,EAAE,EAAE,MAAM,GAAG,EAAE,EAAE,OAAO,iBAAiB,EAAE,IAAIC,GAAG,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,GAAG,EAAE,OAAO,EAAE,KAAK,KAAK,iBAAiB,EAAE,IAAI,GAAGxD,GAAE,EAAE,CAAC,EAAE,QAAQ,QAAQ,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,MAAM,GAAG,EAAE,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,OAAO,EAAE,EAAE,IAAI,EAAE,KAAK,KAAK,iBAAiB,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,sBAAsB,IAAK,GAA+D,EAAE,KAAK,IAAI,EAAxE,EAAE,KAAK,KAAK,cAAc,WAAW,EAAE,mBAAmB,CAAC,EAAe,QAAQ,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,GAAG,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,IAAIiB,EAAE,IAAI,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC,MAAM,QAAQ,KAAK,mDAAmD,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,IAAIwC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,EAAE,KAAK,EAAE,EAAE,WAAW,GAAG,EAAE,EAAE,KAAK,EAAE,KAAK,aAAa,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,SAAS,OAAO,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,SAAS,GAAG,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,aAAa,IAAK,GAAwB,EAAE,MAAxB,EAAE,WAAW,EAAE,OAAe,EAAE,EAAE,aAAa,IAAK,GAAyB,EAAE,OAAzB,EAAE,WAAW,EAAE,QAAiB,EAAE,OAAO,IAAK,KAAI,EAAE,KAAK,KAAK,cAAc,OAAO,CAAC,CAAC,EAAE,EAAE,KAAK,KAAK,cAAc,WAAW,CAAC,CAAC,EAAE,EAAE,KAAK,KAAK,cAAc,WAAW,CAAC,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,OAAO,QAAQ,IAAI,CAAC,QAAQ,IAAI,CAAC,EAAE,QAAQ,IAAI,CAAC,EAAE,QAAQ,IAAI,CAAC,EAAE,QAAQ,IAAI,CAAC,EAAE,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,GAAG,IAAI,IAAK,GAAE,SAAS,EAAE,cAAc,EAAE,aAAa,EAAE,IAAI,EAAE,EAAE,uBAAuB,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,IAAIC,GAAG,EAAE,IAAK,GAAE,CAAC,EAAE,OAAO1D,GAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,EAAE,KAAK,EAAE,EAAE,MAAM,GAAG,OAAO,EAAE,OAAO,IAAK,GAAE,KAAK,EAAE,cAAc,OAAO,EAAE,IAAI,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC,IAAI,EAAE,EAAE,YAAY,EAAE,UAAU,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,UAAU,IAAK,IAAG,EAAE,SAAS,SAAS,EAAE,CAAC,GAAG,EAAE,OAAO,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,QAAQ,OAAO,EAAE,EAAE,IAAI,EAAE,sBAAsB,GAAG,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,EAAE,KAAK,EAAE,EAAE,MAAM,GAAG,EAAE,EAAE,iBAAiB,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,UAAU,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,cAAc,OAAO,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,OAAO,IAAK,GAAE,QAAQ,QAAQ,IAAI,EAAE,EAAE,cAAc,OAAO,EAAE,IAAI,EAAE,OAAO,QAAQ,IAAI,CAAC,EAAE,QAAQ,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,IAAI,MAAM,EAAE,SAAS,SAAS,EAAE,CAAC,EAAE,eAAe,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,SAAS,QAAQ,IAAK,IAAG,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,SAAS,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,IAAIE,EAAE,CAAC,CAAC,UAAU,CAAC,EAAE,EAAE,SAAS,GAAG,EAAE,GAAG,EAAE,SAAS,GAAG,EAAE,GAAG,EAAE,SAAS,GAAG,EAAE,GAAG,EAAE,SAAS,IAAI,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,EAAE,KAAK,WAAW,EAAE,KAAK,GAAG,KAAK,UAAU,KAAK,IAAK,GAAE,OAAO,KAAK,UAAU,GAAG,IAAI,EAAE,EAAE,MAAM,GAAG,EAAE,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,WAAW,SAAS,EAAE,CAAC,OAAO,EAAE,gBAAgB,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,OAAO,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,SAAS,IAAK,IAAG,EAAE,KAAK,EAAE,cAAc,SAAS,EAAE,MAAM,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,WAAW,SAAS,EAAE,CAAC,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,SAAS,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,UAAU,GAAG,QAAQ,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC,IAAI,EAAE,GAAG,AAA8D,EAA9D,EAAE,SAAS,CAAC,EAAI,IAAIyD,GAAG,EAAE,OAAO,EAAI,IAAIN,GAAE,EAAE,SAAS,EAAI,EAAE,GAAK,IAAIO,GAAG,IAAI,EAAE,GAAG,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,SAAS,KAAK,EAAE,KAAK,EAAE,KAAK,GAAG5D,GAAE,EAAE,CAAC,EAAE,EAAE,YAAY,GAAE,EAAE,EAAE,CAAC,EAAE,EAAE,SAAS,IAAK,GAAE,CAAC,IAAI,EAAE,IAAIiB,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,aAAa,CAAC,CAAC,MAAM,EAAE,cAAc,IAAK,IAAG,EAAE,SAAS,UAAU,EAAE,WAAW,EAAE,EAAE,WAAW,IAAK,IAAG,EAAE,WAAW,UAAU,EAAE,QAAQ,EAAE,EAAE,QAAQ,IAAK,IAAG,EAAE,MAAM,UAAU,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,aAAa,IAAI,CAAC,EAAE,EAAE,aAAa,IAAI,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE,OAAO,IAAK,IAAG,EAAE,UAAU,KAAK,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,aAAa,IAAI,CAAC,EAAE,EAAE,aAAa,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAO,GAAE,aAAa,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,KAAK,UAAU,EAAE,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,KAAK,WAAW,EAAE,KAAK,KAAK,OAAO,GAAG,EAAE,KAAK,EAAE,IAAIoC,GAAE,EAAE,OAAO,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,GAAGrD,GAAE,EAAE,CAAC,EAAE,EAAE,YAAY,GAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,cAAc,OAAO,EAAE,EAAE,CAAC,EAAE,OAAO,QAAQ,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,SAAS,KAAkB,EAAE,IAAI,CAAC,EAApB,EAAE,IAAI,GAAG,CAAC,CAAC,CAAU,CAAgL,MAAO,GAAE,cAAlL,GAAG,CAAC,IAAI,EAAE,IAAI,IAAI,IAAI,GAAG,CAAC,EAAE,KAAK,EAAE,cAAc,aAAa2C,IAAG,aAAaF,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS,GAAG,CAAC,IAAI,EAAE,EAAE,aAAa,IAAI,CAAC,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAwB,CAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,uBAAuB,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,GAAE,EAAE,QAAQ,GAAE,QAAQ,EAAE,SAAS,SAAS,EAAE,CAAC,EAAE,uBAAuB,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,OAAO,GAAE,EAAE,MAAX,CAAkB,KAAK,GAAE,QAAQ,EAAEoB,GAAG,MAAM,KAAK,GAAE,SAAS,EAAEC,GAAG,MAAM,KAAK,GAAE,YAAY,KAAK,GAAE,MAAM,EAAEC,GAAG,MAAM,QAAQ,AAAoB,EAApB,EAAE,WAAW,EAAIF,GAAKE,GAAG,KAAK,CAAC,IAAI,EAAE,EAAE,gBAAgB,IAAK,GAAsB7B,GAApB,GAAG,EAAE,eAAkB,EAAE,KAAK,sBAAsB,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,GAAG,IAAI,GAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,gBAAgB,eAAe,KAAK,mCAAmC,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,sBAAsB,EAAE,CAAC,IAAI,EAAE,EAAE,MAAM,GAAG,EAAE,WAAW,CAAC,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE,EAAE,IAAI,aAAa,EAAE,MAAM,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,mCAAmC,EAAE,CAAC,EAAE,kBAAkB,SAAS,EAAE,CAA+B,OAAO,IAA/B,gBAAgB4B,GAAG,GAAGxC,IAAe,KAAK,MAAM,KAAK,OAAO,KAAK,aAAa,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,kBAAkB,0CAA0C,CAAC,CAAC,CAAC,mBCAt51C,UCCoiC,SAAS,IAAG,CAAC,IAAI,EAAE,EAAE,UAAU,SAAS,EAAE,CAAC,IAAI,EAAE,EAAE,KAAK,OAAO,EAAE,KAAT,CAAe,IAAI,OAAO,EAAE,EAAE,cAAc,EAAE,IAAI,QAAQ,SAAS,EAAE,CAAC,EAAE,eAAe,SAAS,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,SAAS,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,WAAW,EAAE,KAAK,GAAG,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,UAAU,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,WAAW,IAAI,GAAG,EAAE,MAAM,MAAM,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,MAAM,MAAM,EAAE,KAAK,YAAY,CAAC,KAAK,SAAS,GAAG,EAAE,GAAG,SAAS,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,MAAM,CAAC,EAAE,KAAK,YAAY,CAAC,KAAK,QAAQ,GAAG,EAAE,GAAG,MAAM,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,aAAa,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,EAAE,uBAAuB,CAAC,EAAE,GAAG,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,kBAAkB,EAAE,EAAE,WAAW,CAAC,OAAO,GAAG,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,wBAAwB,EAAE,EAAE,WAAW,CAAC,OAAO,MAAU,MAAM,8CAA8C,EAAE,GAAG,CAAC,EAAE,GAAG,GAAG,EAAE,MAAM,EAAE,MAAU,MAAM,uCAAuC,EAAE,UAAU,CAAC,EAAE,IAAI,EAAE,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,EAAE,IAAI,IAAI,KAAK,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,aAAa,EAAE,EAAE,GAAG,EAAE,EAAE,uBAAuB,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,GAAG,SAAS,EAAE,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,UAAU,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,WAAW,KAAK,CAAC,CAAC,CAAC,OAAO,IAAI,EAAE,kBAAkB,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE,wBAAwB,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,YAAY,EAAE,QAAQ,OAAO,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,kBAAkB,EAAE,KAAK,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,kBAAkB,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE,kCAAkC,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,QAAQ,OAAO,EAAE,EAAE,EAAE,iBAAiB,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,MAAM,MAAM,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,EAAE,EAAE,CAAC,OAAO,EAAP,CAAU,KAAK,aAAa,OAAO,EAAE,WAAW,KAAK,UAAU,OAAO,EAAE,QAAQ,KAAK,WAAW,OAAO,EAAE,SAAS,KAAK,WAAW,OAAO,EAAE,SAAS,KAAK,WAAW,OAAO,EAAE,SAAS,KAAK,YAAY,OAAO,EAAE,UAAU,KAAK,YAAY,OAAO,EAAE,SAAS,CAAC,CAAC,yBAD5kG,EAAK0C,GAAE,IAAI,QAAQC,GAAE,cAAcC,EAAC,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,YAAY,GAAG,KAAK,cAAc,CAAC,EAAE,KAAK,cAAc,KAAK,KAAK,eAAe,KAAK,KAAK,YAAY,EAAE,KAAK,WAAW,CAAC,EAAE,KAAK,iBAAiB,EAAE,KAAK,gBAAgB,GAAG,KAAK,oBAAoB,CAAC,SAAS,WAAW,OAAO,SAAS,MAAM,QAAQ,GAAG,WAAW,EAAE,KAAK,sBAAsB,CAAC,SAAS,eAAe,OAAO,eAAe,MAAM,eAAe,GAAG,cAAc,CAAC,CAAC,eAAe,EAAE,CAAC,MAAO,MAAK,YAAY,EAAE,IAAI,CAAC,iBAAiB,EAAE,CAAC,MAAO,MAAK,cAAc,EAAE,IAAI,CAAC,eAAe,EAAE,CAAC,MAAO,MAAK,YAAY,EAAE,IAAI,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,IAAIC,GAAE,KAAK,OAAO,EAAE,EAAE,QAAQ,KAAK,IAAI,EAAE,EAAE,gBAAgB,aAAa,EAAE,EAAE,iBAAiB,KAAK,aAAa,EAAE,EAAE,mBAAmB,KAAK,eAAe,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,KAAK,gBAAgB,EAAE,EAAE,KAAK,KAAKC,GAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,gBAAgB,EAAE,EAAE,EAAE,EAAE,EAAEC,GAAE,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,aAAa,GAAG,KAAK,oBAAoB,eAAe,GAAG,KAAK,sBAAsB,aAAa,CAAC,CAAC,EAAE,iBAAiB,CAAC,EAAE,OAAO,KAAK,eAAe,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,EAAE,EAAE,CAAC,IAAI,EAAE,KAAK,UAAU,CAAC,EAAE,GAAGL,GAAE,IAAI,CAAC,EAAE,CAAC,IAAI,EAAEA,GAAE,IAAI,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,GAAG,EAAE,aAAa,EAAE,MAAU,MAAM,+GAA+G,CAAC,CAAC,IAAI,EAAE,EAAE,KAAK,mBAAmB,EAAE,EAAE,WAAW,EAAE,KAAK,WAAW,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,EAAE,IAAI,SAAS,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,EAAE,YAAY,CAAC,KAAK,SAAS,GAAG,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,GAAG,KAAK,gBAAgB,EAAE,QAAQ,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,GAAG,KAAK,aAAa,EAAE,CAAC,CAAC,CAAC,EAAEA,GAAE,IAAI,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,gBAAgB,EAAE,CAAC,IAAI,EAAE,IAAIM,GAAE,EAAE,OAAO,EAAE,SAAS,IAAIC,GAAE,EAAE,MAAM,MAAM,CAAC,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,WAAW,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,iBAAiB,GAAG,EAAE,WAAW,GAAG,EAAE,AAA4C,EAAzC,IAAI,EAAI,IAAIA,GAAE,EAAE,CAAC,EAA0B,IAAIC,GAAE,IAAfC,GAAE,EAAE,CAAW,EAAE,EAAE,CAAC,EAAE,IAAI,UAAU,KAAK,wBAAwB,EAAE,CAAC,EAAE,EAAE,WAAW,EAAE,aAAa,eAAe,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,wBAAwB,EAAE,EAAE,CAAC,GAAG,IAAA,OAAM,OAAO,IAAI,EAAE,IAAIC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC,EAAEC,GAAE,oBAAoB,EAAEP,EAAC,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,EAAE,EAAE,CAAC,IAAI,EAAE,IAAID,GAAE,KAAK,OAAO,EAAE,OAAO,EAAE,QAAQ,KAAK,WAAW,EAAE,EAAE,gBAAgB,CAAC,EAAE,EAAE,mBAAmB,KAAK,eAAe,EAAE,IAAI,SAAS,EAAE,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,IAAK,GAAE,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,KAAK,aAAa,EAAE,IAAI,CAAC,cAAc,CAAC,GAAG,KAAK,eAAe,OAAO,KAAK,eAAe,IAAI,EAAE,OAAO,aAAa,UAAU,KAAK,cAAc,OAAO,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,KAAK,KAAK,aAAa,mBAAmB,MAAM,CAAC,GAAG,EAAE,KAAK,KAAK,aAAa,wBAAwB,MAAM,CAAC,EAAE,EAAE,KAAK,KAAK,aAAa,qBAAqB,aAAa,CAAC,GAAG,KAAK,eAAe,QAAQ,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,IAAI,EAAE,EAAE,GAAG,IAAI,KAAK,cAAc,WAAW,EAAE,IAAI,IAAI,EAAE,GAAE,SAAS,EAAE,EAAE,CAAC,sBAAsB,EAAE,GAAG,eAAe,EAAE,UAAU,EAAE,QAAQ,GAAG,EAAE,EAAE,EAAE,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK;CAChpG,EAAE,KAAK,gBAAgB,IAAI,gBAAgB,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,cAAc,CAAC,WAAW,EAAE,EAAE,CAAC,OAAO,KAAK,aAAa,CAAC,CAAC,SAAS,CAAC,GAAG,KAAK,WAAW,OAAO,KAAK,YAAY,CAAC,IAAI,EAAE,IAAI,OAAO,KAAK,eAAe,EAAE,EAAE,WAAW,CAAC,EAAE,EAAE,WAAW,CAAC,EAAE,EAAE,UAAU,EAAE,EAAE,YAAY,CAAC,KAAK,OAAO,cAAc,KAAK,aAAa,CAAC,EAAE,EAAE,UAAU,SAAS,EAAE,CAAC,IAAI,EAAE,EAAE,KAAK,OAAO,EAAE,KAAT,CAAe,IAAI,SAAS,EAAE,WAAW,EAAE,GAAG,CAAC,QAAQ,CAAC,EAAE,MAAM,IAAI,QAAQ,EAAE,WAAW,EAAE,GAAG,CAAC,OAAO,CAAC,EAAE,MAAM,QAAQ,QAAQ,MAAM,2CAA2C,EAAE,KAAK,GAAG,CAAC,CAAC,EAAE,KAAK,WAAW,KAAK,CAAC,CAAC,MAAM,KAAK,WAAW,KAAK,SAAS,EAAE,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,UAAU,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,WAAW,KAAK,WAAW,OAAO,GAAG,MAAO,GAAE,WAAW,GAAG,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,EAAE,CAAC,EAAE,WAAW,EAAE,WAAW,GAAG,OAAO,EAAE,WAAW,GAAG,OAAO,EAAE,WAAW,EAAE,CAAC,OAAO,CAAC,QAAQ,IAAI,cAAc,KAAK,WAAW,IAAI,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,IAAI,EAAE,EAAE,EAAE,KAAK,WAAW,OAAO,EAAE,EAAE,KAAK,WAAW,EAAE,CAAC,UAAU,EAAE,MAAO,MAAK,WAAW,OAAO,EAAE,KAAK,kBAAkB,IAAI,IAAI,gBAAgB,KAAK,eAAe,EAAE,IAAI,CAAC,mBCDliC,UCAy0G,SAASS,GAAE,EAAE,CAAC,IAAI,EAAE,IAAI,IAAI,EAAE,IAAI,IAAI,EAAE,EAAE,MAAM,EAAE,OAAO,GAAE,EAAE,EAAE,SAAS,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,SAAS,SAAS,EAAE,CAAC,GAAG,CAAC,EAAE,cAAc,OAAO,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,SAAS,MAAM,EAAE,SAAS,EAAE,SAAS,MAAM,EAAE,EAAE,WAAW,KAAK,EAAE,UAAU,EAAE,EAAE,SAAS,MAAM,EAAE,IAAI,SAAS,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,CAA4L,SAAS,GAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,SAAS,OAAO,IAAI,GAAE,EAAE,SAAS,GAAG,EAAE,SAAS,GAAG,CAAC,CAAC,mBAAnyH,mBCAlJ,UCA6hC,SAAS,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,QAAQ,KAAK,EAAE,IAAI,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,EAAE,IAAI,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC,eAAe,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,qBAAqB,EAAE,IAAIC,GAAG,EAAE,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,KAAK,EAAE,QAAQ,MAAM,OAAO,QAAQ,MAAM,+EAA+E,EAAE,8HAA8H,EAAE,KAAK,IAAI,IAAI,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,EAAE,OAAO,QAAQ,MAAM,+EAA+E,EAAE,gEAAgE,EAAE,8DAA8D,EAAE,KAAK,EAAE,KAAK,IAAK,KAAI,EAAE,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,GAAG,CAAC,GAAG,IAAI,EAAE,KAAK,OAAO,QAAQ,MAAM,+EAA+E,EAAE,gEAAgE,EAAE,KAAK,GAAG,IAAI,EAAE,qBAAqB,OAAO,QAAQ,MAAM,+EAA+E,EAAE,uEAAuE,EAAE,KAAK,IAAI,IAAI,KAAK,EAAE,gBAAgB,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,EAAE,OAAO,QAAQ,MAAM,+EAA+E,EAAE,mEAAmE,EAAE,KAAK,EAAE,KAAK,IAAK,KAAI,EAAE,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,EAAE,gBAAgB,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,WAAW,GAAG,EAAE,WAAW,WAAW,IAAK,GAAE,EAAE,EAAE,WAAW,SAAS,WAAW,OAAO,QAAQ,MAAM,+EAA+E,EAAE,kEAAkE,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,MAAM,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,WAAW,SAAS,KAAK,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC,IAAI,EAAEC,GAAE,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,OAAO,QAAQ,MAAM,kFAAkF,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,GAAG,IAAI,EAAE,MAAM,EAAE,gBAAgB,EAAE,iBAAiB,CAAC,EAAE,EAAE,gBAAgB,GAAG,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,IAAI,EAAEA,GAAE,CAAC,EAAE,GAAG,CAAC,EAAE,OAAO,QAAQ,MAAM,kFAAkF,EAAE,kBAAkB,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,SAASA,GAAE,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,GAAG,IAAI,IAAK,KAAI,EAAE,EAAE,MAAM,aAAa,IAAI,EAAE,MAAM,YAAY,OAAO,QAAQ,MAAM,2IAA2I,EAAE,KAAK,GAAG,IAAI,IAAK,KAAI,EAAE,EAAE,UAAU,IAAI,EAAE,SAAS,OAAO,QAAQ,MAAM,+HAA+H,EAAE,KAAK,GAAG,IAAI,IAAK,KAAI,EAAE,EAAE,YAAY,IAAI,EAAE,WAAW,OAAO,QAAQ,MAAM,iIAAiI,EAAE,KAAK,GAAG,IAAI,KAAK,EAAE,EAAE,SAAS,IAAI,EAAE,QAAQ,OAAO,QAAQ,MAAM,8HAA8H,EAAE,KAAK,GAAG,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,IAAIC,GAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,GAAG,EAAE,6BAA6B,CAAC,IAAI,EAAE,EAAE,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,aAAa,EAAE,CAAC,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,OAAO,IAAI,IAAK,KAAI,EAAE,QAAQ,GAAG,CAAC,mBAAt7I,mBCA9O,UCAkve,SAAS,GAAE,EAAE,CAAC,KAAK,UAAU,CAAC,IAAI,KAAK,UAAU,SAAS,IAAI,KAAK,WAAW,kBAAkB,EAAE,SAAS,EAAE,KAAK,WAAW,cAAc,iBAAiB,cAAc,KAAK,cAAc,EAAE,KAAK,WAAW,cAAc,iBAAiB,YAAY,KAAK,YAAY,GAAG,CAAC,KAAK,mBAAmB,CAAC,IAAI,KAAK,YAAY,CAAC,EAAE,EAAE,cAAc,QAAQ,KAAK,cAAc,CAAC,EAAE,KAAK,aAAa,CAAC,EAAE,KAAK,eAAe,SAAS,KAAK,WAAW,MAAM,OAAO,aAAa,CAAC,SAAS,GAAE,EAAE,CAAC,KAAK,UAAU,CAAC,IAAI,EAAE,cAAc,QAAQ,KAAK,aAAa,CAAC,EAAE,KAAK,aAAa,CAAC,EAAE,CAAC,SAAS,GAAE,EAAE,CAAC,OAAO,KAAK,eAAe,CAAC,EAAE,KAAK,UAAU,OAA7C,CAAqD,IAAK,GAAE,KAAK,WAAW,sBAAsB,EAAE,SAAS,EAAE,KAAK,WAAW,cAAc,oBAAoB,cAAc,KAAK,cAAc,EAAE,KAAK,WAAW,cAAc,oBAAoB,YAAY,KAAK,YAAY,EAAE,KAAK,cAAc,EAAC,EAAE,KAAK,MAAM,GAAE,KAAK,KAAK,eAAe,SAAS,KAAK,WAAW,MAAM,OAAO,QAAQ,MAAM,IAAK,GAAE,IAAI,EAAE,KAAK,UAAU,GAAG,EAAE,KAAK,kBAAkB,GAAG,KAAK,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,SAAS,GAAE,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,OAAT,CAAiB,IAAK,GAAE,EAAE,KAAK,aAAa,KAAK,MAAM,IAAK,GAAE,EAAE,KAAK,aAAa,OAAO,MAAM,IAAK,GAAE,EAAE,KAAK,aAAa,MAAM,MAAM,QAAQ,EAAE,EAAE,CAAC,OAAO,EAAP,CAAU,KAAKC,GAAE,MAAM,GAAG,KAAK,aAAa,CAAC,EAAE,OAAO,KAAK,sBAAsB,CAAC,EAAE,KAAK,MAAM,GAAE,MAAM,MAAM,KAAKA,GAAE,OAAO,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,GAAG,KAAK,YAAY,CAAC,EAAE,OAAO,KAAK,oBAAoB,CAAC,EAAE,KAAK,MAAM,GAAE,GAAG,KAAK,CAAC,GAAG,KAAK,eAAe,CAAC,EAAE,OAAO,KAAK,uBAAuB,CAAC,EAAE,KAAK,MAAM,GAAE,MAAM,CAAC,MAAM,KAAKA,GAAE,IAAI,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,GAAG,KAAK,eAAe,CAAC,EAAE,OAAO,KAAK,uBAAuB,CAAC,EAAE,KAAK,MAAM,GAAE,MAAM,KAAK,CAAC,GAAG,KAAK,YAAY,CAAC,EAAE,OAAO,KAAK,oBAAoB,CAAC,EAAE,KAAK,MAAM,GAAE,GAAG,CAAC,MAAM,QAAQ,KAAK,MAAM,GAAE,IAAI,CAAC,KAAK,QAAQ,GAAE,MAAM,KAAK,cAAc,EAAC,CAAC,CAAC,SAAS,GAAE,EAAE,CAAC,OAAO,KAAK,MAAZ,CAAmB,KAAK,GAAE,OAAO,GAAG,KAAK,eAAe,CAAC,EAAE,OAAO,KAAK,uBAAuB,CAAC,EAAE,MAAM,KAAK,GAAE,MAAM,GAAG,KAAK,aAAa,CAAC,EAAE,OAAO,KAAK,sBAAsB,CAAC,EAAE,MAAM,KAAK,GAAE,IAAI,GAAG,KAAK,YAAY,CAAC,EAAE,OAAO,KAAK,oBAAoB,CAAC,EAAE,KAAK,CAAC,CAAC,SAAS,GAAE,EAAE,CAAC,KAAK,UAAU,CAAC,GAAG,KAAK,aAAa,CAAC,GAAG,KAAK,QAAQ,GAAE,OAAO,EAAE,eAAe,EAAE,KAAK,cAAc,EAAC,EAAE,KAAK,kBAAkB,KAAK,kBAAkB,CAAC,CAAC,EAAE,KAAK,cAAc,EAAC,EAAE,CAAC,SAAS,GAAE,EAAE,CAAC,KAAK,UAAU,CAAC,GAAG,KAAK,eAAe,CAAC,CAAC,CAAC,SAAS,GAAE,EAAE,CAAC,OAAO,KAAK,cAAc,CAAC,EAAE,KAAK,UAAU,OAA5C,CAAoD,IAAK,GAAE,OAAO,KAAK,QAAQ,IAApB,CAAyB,KAAKC,GAAE,OAAO,GAAG,KAAK,eAAe,CAAC,EAAE,OAAO,KAAK,wBAAwB,CAAC,EAAE,KAAK,MAAM,GAAE,aAAa,MAAM,KAAKA,GAAE,IAAI,GAAG,KAAK,YAAY,CAAC,EAAE,OAAO,KAAK,qBAAqB,CAAC,EAAE,KAAK,MAAM,GAAE,UAAU,MAAM,QAAQ,KAAK,MAAM,GAAE,IAAI,CAAC,MAAM,IAAK,GAAE,OAAO,KAAK,QAAQ,IAApB,CAAyB,KAAKA,GAAE,UAAU,GAAG,KAAK,aAAa,CAAC,GAAG,KAAK,YAAY,CAAC,EAAE,OAAO,KAAK,0BAA0B,CAAC,EAAE,KAAK,MAAM,GAAE,gBAAgB,MAAM,KAAKA,GAAE,aAAa,GAAG,KAAK,aAAa,CAAC,GAAG,KAAK,eAAe,CAAC,EAAE,OAAO,KAAK,6BAA6B,CAAC,EAAE,KAAK,MAAM,GAAE,mBAAmB,MAAM,QAAQ,KAAK,MAAM,GAAE,IAAI,CAAC,MAAM,QAAQ,KAAK,MAAM,GAAE,IAAI,CAAC,KAAK,QAAQ,GAAE,MAAM,KAAK,cAAc,EAAC,CAAC,CAAC,SAAS,GAAE,EAAE,CAAC,OAAO,KAAK,cAAc,CAAC,EAAE,KAAK,MAAlC,CAAyC,KAAK,GAAE,aAAa,GAAG,KAAK,eAAe,CAAC,EAAE,OAAO,KAAK,uBAAuB,CAAC,EAAE,KAAK,OAAO,EAAE,MAAM,KAAK,GAAE,UAAU,GAAG,KAAK,YAAY,CAAC,EAAE,OAAO,KAAK,oBAAoB,CAAC,EAAE,KAAK,OAAO,EAAE,MAAM,KAAK,GAAE,gBAAgB,GAAG,KAAK,aAAa,CAAC,GAAG,KAAK,YAAY,CAAC,EAAE,OAAO,KAAK,yBAAyB,CAAC,EAAE,KAAK,OAAO,EAAE,MAAM,KAAK,GAAE,mBAAmB,GAAG,KAAK,aAAa,CAAC,GAAG,KAAK,eAAe,CAAC,EAAE,OAAO,KAAK,4BAA4B,CAAC,EAAE,KAAK,OAAO,EAAE,MAAM,QAAQ,KAAK,MAAM,GAAE,IAAI,CAAC,CAAC,SAAS,GAAE,EAAE,CAAC,KAAK,UAAU,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC,SAAS,GAAE,EAAE,CAAC,EAAE,MAAM,YAAY,KAAK,eAAe,CAAC,EAAE,KAAK,WAAW,YAAY,CAAC,CAAC,iBAAiB,QAAQ,KAAK,oBAAoB,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,GAAE,EAAE,CAAC,EAAE,MAAM,YAAY,KAAK,eAAe,CAAC,EAAE,KAAK,WAAW,YAAY,CAAC,CAAC,oBAAoB,QAAQ,KAAK,oBAAoB,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,oDAArmmB,EAAK,GAAE,CAAC,KAAK,QAAQ,EAAE,GAAE,CAAC,KAAK,OAAO,EAAE,GAAE,CAAC,KAAK,KAAK,EAAE,GAAE,IAAIC,GAAE,GAAE,IAAIC,GAAE,GAAE,KAAK,IAAI,GAAGC,GAAE,OAAO,EAAE,GAAE,IAAIC,EAAE,GAAE,EAAE,KAAK,GAAG,GAAE,CAAC,KAAK,GAAG,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,UAAU,EAAE,gBAAgB,EAAE,mBAAmB,CAAC,EAAE,GAAE,KAAK,GAAE,cAAcC,EAAC,CAAC,YAAY,EAAE,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,KAAK,MAAM,GAAE,KAAK,KAAK,OAAO,IAAID,EAAE,KAAK,OAAO,IAAIA,EAAE,KAAK,YAAY,EAAE,KAAK,YAAY,IAAI,KAAK,QAAQ,EAAE,KAAK,QAAQ,IAAI,KAAK,gBAAgB,EAAE,KAAK,gBAAgB,IAAI,KAAK,cAAc,EAAE,KAAK,cAAc,KAAK,GAAG,KAAK,gBAAgB,KAAK,KAAK,gBAAgB,IAAI,KAAK,cAAc,CAAC,EAAE,KAAK,cAAc,IAAI,KAAK,WAAW,CAAC,EAAE,KAAK,UAAU,EAAE,KAAK,aAAa,CAAC,EAAE,KAAK,YAAY,EAAE,KAAK,eAAe,EAAE,KAAK,UAAU,CAAC,EAAE,KAAK,SAAS,EAAE,KAAK,mBAAmB,CAAC,EAAE,KAAK,YAAY,EAAE,KAAK,aAAa,CAAC,EAAE,KAAK,WAAW,CAAC,EAAE,KAAK,gBAAgB,EAAE,KAAK,KAAK,CAAC,KAAK,YAAY,GAAG,UAAU,MAAM,aAAa,OAAO,WAAW,EAAE,KAAK,aAAa,CAAC,KAAKL,GAAE,OAAO,OAAOA,GAAE,MAAM,MAAMA,GAAE,GAAG,EAAE,KAAK,QAAQ,CAAC,IAAIC,GAAE,OAAO,IAAIA,GAAE,SAAS,EAAE,KAAK,QAAQ,KAAK,OAAO,MAAM,EAAE,KAAK,UAAU,KAAK,OAAO,SAAS,MAAM,EAAE,KAAK,MAAM,KAAK,OAAO,KAAK,KAAK,aAAa,OAAO,KAAK,qBAAqB,KAAK,KAAK,cAAc,IAAII,EAAE,KAAK,gBAAgB,IAAIE,GAAE,KAAK,oBAAoB,IAAIF,EAAE,KAAK,MAAM,IAAIE,GAAE,CAAC,CAAC,mBAAmB,EAAE,GAAG,IAAIF,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,aAAa,KAAK,MAAM,MAAM,CAAC,CAAC,OAAO,EAAE,KAAK,WAAW,IAAIG,GAAE,KAAK,gBAAgB,IAAIA,GAAE,KAAK,OAAO,EAAE,KAAK,WAAW,IAAIH,EAAE,KAAK,aAAa,IAAII,EAAE,KAAK,WAAW,IAAIA,EAAE,KAAK,aAAa,IAAIA,EAAE,KAAK,UAAU,IAAIA,EAAE,KAAK,QAAQ,IAAIA,EAAE,KAAK,UAAU,IAAIA,EAAE,KAAK,YAAY,IAAIA,EAAE,KAAK,UAAU,IAAIA,EAAE,KAAK,YAAY,IAAIA,EAAE,KAAK,gBAAgB,IAAIJ,EAAE,KAAK,OAAO,IAAII,EAAE,KAAK,mBAAmB,CAAC,EAAE,KAAK,UAAU,CAAC,EAAE,KAAK,kBAAkB,CAAC,EAAE,KAAK,eAAe,CAAC,EAAE,KAAK,eAAe,GAAE,KAAK,IAAI,EAAE,KAAK,eAAe,GAAE,KAAK,IAAI,EAAE,KAAK,aAAa,GAAE,KAAK,IAAI,EAAE,KAAK,eAAe,GAAE,KAAK,IAAI,EAAE,KAAK,cAAc,GAAE,KAAK,IAAI,EAAE,KAAK,WAAW,GAAE,KAAK,IAAI,EAAE,KAAK,cAAc,GAAE,KAAK,IAAI,EAAE,KAAK,aAAa,GAAE,KAAK,IAAI,EAAE,KAAK,aAAa,GAAE,KAAK,IAAI,EAAE,KAAK,aAAa,GAAE,KAAK,IAAI,EAAE,KAAK,sBAAsB,GAAE,KAAK,IAAI,EAAE,KAAK,oBAAoB,GAAE,KAAK,IAAI,EAAE,KAAK,aAAa,MAAM,KAAK,QAAQ,KAAK,UAAU,EAAE,KAAK,OAAO,CAAC,CAAC,IAAI,YAAY,EAAE,CAAC,KAAK,aAAa,EAAE,IAAI,OAAO,KAAK,WAAW,MAAM,OAAO,OAAO,KAAK,WAAW,MAAM,OAAO,MAAM,CAAC,IAAI,aAAa,CAAC,OAAO,KAAK,YAAY,CAAC,QAAQ,EAAE,CAAC,MAAM,QAAQ,CAAC,EAAE,KAAK,WAAW,iBAAiB,cAAc,KAAK,cAAc,EAAE,KAAK,WAAW,iBAAiB,gBAAgB,KAAK,YAAY,EAAE,KAAK,WAAW,iBAAiB,cAAc,KAAK,cAAc,EAAE,KAAK,WAAW,iBAAiB,QAAQ,KAAK,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,KAAK,WAAW,YAAY,CAAC,CAAC,iBAAiB,UAAU,KAAK,sBAAsB,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,KAAK,WAAW,MAAM,YAAY,MAAM,CAAC,YAAY,CAAC,KAAK,WAAW,oBAAoB,cAAc,KAAK,cAAc,EAAE,KAAK,WAAW,cAAc,oBAAoB,cAAc,KAAK,cAAc,EAAE,KAAK,WAAW,cAAc,oBAAoB,YAAY,KAAK,YAAY,EAAE,KAAK,WAAW,oBAAoB,gBAAgB,KAAK,YAAY,EAAE,KAAK,WAAW,oBAAoB,QAAQ,KAAK,aAAa,EAAE,KAAK,WAAW,oBAAoB,cAAc,KAAK,cAAc,EAAE,KAAK,sBAAsB,EAAE,KAAK,WAAW,YAAY,CAAC,CAAC,oBAAoB,UAAU,KAAK,sBAAsB,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,KAAK,WAAW,MAAM,YAAY,MAAM,CAAC,SAAS,CAAC,KAAK,WAAW,CAAC,CAAC,eAAe,CAAC,OAAO,KAAK,WAAW,GAAG,CAAC,mBAAmB,CAAC,OAAO,KAAK,WAAW,KAAK,CAAC,aAAa,CAAC,OAAO,KAAK,OAAO,SAAS,WAAW,KAAK,MAAM,CAAC,CAAC,kBAAkB,EAAE,CAAC,EAAE,iBAAiB,UAAU,KAAK,UAAU,EAAE,KAAK,qBAAqB,CAAC,CAAC,uBAAuB,CAAC,KAAK,uBAAuB,OAAO,KAAK,qBAAqB,oBAAoB,UAAU,KAAK,UAAU,EAAE,KAAK,qBAAqB,KAAK,CAAC,WAAW,CAAC,KAAK,QAAQ,KAAK,KAAK,MAAM,EAAE,KAAK,UAAU,KAAK,KAAK,OAAO,QAAQ,EAAE,KAAK,MAAM,KAAK,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,OAAO,KAAK,KAAK,OAAO,EAAE,KAAK,OAAO,SAAS,KAAK,KAAK,SAAS,EAAE,KAAK,OAAO,KAAK,KAAK,MAAM,KAAK,OAAO,uBAAuB,EAAE,KAAK,cAAc,EAAC,EAAE,KAAK,OAAO,EAAE,KAAK,MAAM,GAAE,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,KAAK,EAAE,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC,KAAK,SAAS,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC,SAAS,EAAE,CAAC,KAAK,UAAU,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC,KAAK,YAAY,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC,SAAS,EAAE,CAAC,KAAK,UAAU,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,OAAO,SAAS,GAAE,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,EAAE,GAAE,gBAAgB,KAAK,KAAK,EAAE,KAAK,WAAW,eAAe,EAAC,EAAE,KAAK,YAAY,KAAK,QAAQ,GAAE,MAAM,KAAK,YAAY,KAAK,sBAAsB,CAAC,CAAC,EAAE,KAAK,eAAe,KAAK,WAAW,OAAO,KAAK,gBAAgB,MAAM,KAAK,cAAc,KAAK,WAAW,KAAK,KAAK,gBAAgB,IAAI,KAAK,gBAAgB,KAAK,WAAW,OAAO,KAAK,gBAAgB,MAAM,KAAK,WAAW,KAAK,KAAK,gBAAgB,KAAK,IAAI,EAAE,KAAK,gBAAgB,EAAE,KAAK,gBAAgB,SAAS,CAAC,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC,KAAK,GAAG,GAAG,GAAE,EAAE,KAAK,KAAK,GAAG,IAAG,EAAE,CAAC,KAAK,GAAG,GAAG,GAAE,EAAE,KAAK,KAAK,GAAG,IAAG,GAAG,EAAE,KAAK,WAAW,MAAM,KAAK,IAAI,EAAE,KAAK,IAAI,EAAE,KAAK,WAAW,KAAK,CAAC,EAAE,KAAK,WAAW,MAAM,KAAK,WAAW,OAAO,EAAE,GAAG,EAAE,KAAK,IAAI,EAAE,KAAK,WAAW,KAAK,EAAE,KAAK,IAAI,EAAE,KAAK,WAAW,KAAK,GAAG,KAAK,WAAW,IAAI,KAAK,IAAI,KAAK,cAAc,KAAK,IAAI,KAAK,cAAc,KAAK,WAAW,GAAG,CAAC,EAAE,KAAK,WAAW,SAAS,EAAE,KAAK,gBAAgB,CAAC,EAAE,KAAK,OAAO,gBAAgB,KAAK,WAAW,KAAK,aAAa,EAAE,KAAK,OAAO,IAAI,KAAK,UAAU,EAAE,KAAK,OAAO,IAAI,KAAK,MAAM,EAAE,KAAK,OAAO,YAAY,KAAK,gBAAgB,KAAK,eAAe,EAAE,KAAK,OAAO,IAAI,KAAK,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,KAAK,cAAc,KAAK,oBAAoB,KAAK,OAAO,qBAAqB,KAAK,WAAW,OAAO,KAAK,eAAe,KAAK,WAAW,MAAM,MAAM,CAAC,IAAI,EAAE,KAAK,WAAW,OAAO,KAAK,WAAW,OAAO,KAAK,eAAe,KAAK,WAAW,OAAO,KAAK,MAAM,EAAE,EAAE,GAAG,KAAK,WAAW,MAAM,CAAC,GAAG,GAAE,iBAAiB,KAAK,UAAU,EAAE,GAAE,gBAAgB,KAAK,YAAY,EAAE,EAAE,KAAK,KAAK,MAAM,CAAC,CAAC,IAAI,EAAC,EAAE,KAAK,OAAO,OAAO,KAAK,MAAM,EAAE,KAAK,gBAAgB,CAAC,GAAG,KAAK,gBAAgB,OAAO,EAAE,KAAK,cAAc,KAAK,gBAAgB,KAAK,EAAE,KAAK,cAAc,KAAK,WAAW,eAAe,EAAE,KAAK,aAAa,IAAI,KAAK,gBAAgB,IAAI,EAAE,EAAE,CAAC,EAAE,KAAK,WAAW,IAAI,EAAE,EAAE,CAAC,GAAG,KAAK,cAAc,KAAK,mBAAmB,CAAC,IAAI,EAAE,KAAK,GAAG,KAAK,OAAO,oBAAoB,CAAC,IAAI,EAAE,GAAE,OAAO,EAAE,EAAE,KAAK,eAAe,EAAE,KAAK,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,OAAO,SAAS,gBAAgB,KAAK,gBAAgB,CAAC,EAAE,KAAK,OAAO,kBAAkB,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,KAAK,OAAO,qBAAqB,CAAC,IAAI,EAAE,IAAIJ,EAAE,KAAK,OAAO,EAAE,KAAK,OAAO,EAAE,CAAC,EAAE,EAAE,UAAU,KAAK,MAAM,EAAE,IAAI,EAAE,KAAK,OAAO,KAAK,KAAK,OAAO,KAAK,KAAK,IAAI,KAAK,QAAQ,KAAK,IAAI,KAAK,QAAQ,KAAK,OAAO,KAAK,KAAK,MAAM,CAAC,EAAE,KAAK,OAAO,uBAAuB,EAAE,EAAE,IAAI,KAAK,OAAO,KAAK,IAAI,EAAE,IAAIA,EAAE,KAAK,OAAO,EAAE,KAAK,OAAO,EAAE,CAAC,EAAE,EAAE,UAAU,KAAK,MAAM,EAAE,KAAK,OAAO,SAAS,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,OAAO,kBAAkB,EAAE,EAAE,GAAE,OAAO,CAAC,MAAM,QAAQ,KAAK,yFAAyF,EAAE,KAAK,aAAa,CAAC,EAAE,IAAI,OAAO,KAAK,mBAAmB,KAAK,OAAO,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,mBAAmB,KAAK,OAAO,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,QAAQ,GAAG,GAAE,OAAO,KAAK,KAAK,OAAO,QAAQ,EAAE,GAAE,UAAU,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,mBAAmB,KAAK,OAAO,MAAM,EAAE,KAAK,IAAI,KAAK,OAAO,GAAG,IAAI,GAAE,SAAS,CAAC,EAAE,GAAE,KAAK,OAAO,OAAO,KAAK,MAAM,GAAG,GAAE,8BAA8B,KAAK,OAAO,GAAG,KAAK,MAAM,EAAE,GAAE,eAAe,GAAE,KAAK,MAAM,IAAI,MAAM,GAAG,KAAK,OAAO,qBAAqB,CAAC,IAAI,EAAE,KAAK,OAAO,KAAK,KAAK,OAAO,KAAK,KAAK,IAAI,KAAK,QAAQ,KAAK,IAAI,KAAK,QAAQ,KAAK,OAAO,KAAK,KAAK,MAAM,CAAC,EAAE,IAAI,KAAK,OAAO,OAAO,KAAK,OAAO,uBAAuB,EAAE,EAAE,CAAC,EAAE,CAAC,MAAO,MAAK,OAAO,EAAE,KAAK,mBAAmB,CAAC,EAAE,GAAG,KAAK,cAAc,kBAAkB,KAAK,OAAO,QAAQ,EAAE,IAAG,GAAG,EAAE,KAAK,gBAAgB,IAAI,KAAK,OAAO,UAAU,GAAG,IAAG,KAAK,oBAAoB,kBAAkB,KAAK,MAAM,EAAE,IAAG,KAAK,cAAc,EAAC,EAAE,KAAK,cAAc,KAAK,KAAK,OAAO,QAAQ,EAAE,KAAK,gBAAgB,KAAK,KAAK,OAAO,UAAU,EAAE,KAAK,oBAAoB,KAAK,KAAK,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,sBAAsB,EAAE,CAAC,OAAO,IAAI,KAAiC,GAAE,GAAG,GAAG,KAAK,gBAAzC,GAAE,GAAG,KAAK,gBAAgB,CAA8B,CAAC,cAAc,EAAE,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,GAAG,EAAE,MAAgB,OAAI,KAAK,UAAU,EAAE,CAAC,YAAY,EAAE,CAAC,KAAK,gBAAgB,OAAO,CAAC,CAAC,UAAU,EAAE,CAAC,KAAK,gBAAgB,KAAK,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,GAAE,oBAAoB,EAAE,CAAC,EAAE,GAAE,eAAe,CAAC,CAAC,EAAE,KAAK,WAAW,IAAI,EAAC,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,KAAK,qBAAqB,CAAC,EAAE,GAAE,oBAAoB,EAAE,CAAC,GAAG,GAAE,oBAAoB,EAAE,CAAC,EAAE,GAAE,aAAa,KAAK,OAAO,GAAG,EAAC,GAAG,GAAE,eAAe,CAAC,EAAE,KAAK,WAAW,IAAI,EAAC,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,EAAE,KAAK,WAAW,GAAG,KAAK,OAAO,oBAAoB,CAAC,IAAI,EAAE,KAAK,OAAO,SAAS,GAAE,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,EAAE,IAAI,EAAE,GAAE,OAAO,EAAE,GAAG,KAAK,IAAI,KAAK,OAAO,IAAI,EAAE,KAAK,GAAG,GAAG,EAAE,KAAK,SAAS,EAAE,EAAE,EAAE,EAAE,aAAa,KAAK,OAAO,MAAM,EAAE,KAAK,OAAO,EAAE,EAAE,EAAE,EAAE,aAAa,KAAK,OAAO,MAAM,CAAC,MAAM,KAAK,OAAO,sBAAsB,KAAK,SAAS,GAAG,KAAK,OAAO,MAAM,KAAK,OAAO,MAAM,KAAK,OAAO,KAAK,EAAE,YAAY,KAAK,OAAO,MAAM,EAAE,KAAK,OAAO,GAAG,KAAK,OAAO,IAAI,KAAK,OAAO,QAAQ,KAAK,OAAO,KAAK,EAAE,aAAa,KAAK,OAAO,MAAM,IAAI,QAAQ,KAAK,8EAA8E,EAAE,KAAK,UAAU,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC,KAAK,OAAO,qBAAqB,KAAK,OAAO,qBAAqB,KAAK,QAAQ,GAAG,QAAQ,KAAK,qFAAqF,EAAE,KAAK,WAAW,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,KAAK,OAAO,qBAAqB,KAAK,OAAO,qBAAqB,KAAK,QAAQ,GAAG,QAAQ,KAAK,qFAAqF,EAAE,KAAK,WAAW,CAAC,EAAE,CAAC,sBAAsB,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,aAAa,OAAO,KAAK,mBAAmB,CAAC,EAAE,IAAI,EAAE,KAAK,WAAW,sBAAsB,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,OAAO,KAAK,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,KAAK,gBAAgB,IAAI,KAAK,OAAO,EAAE,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,MAAM,CAAC,CAAC,IAAI,KAAK,OAAO,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC,eAAe,EAAE,CAAC,OAAO,KAAK,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,CAAC,uBAAuB,EAAE,CAAC,KAAK,aAAa,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,sBAAsB,EAAE,CAAC,KAAK,sBAAsB,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,YAAY,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,oBAAoB,EAAE,CAAC,KAAK,UAAU,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,uBAAuB,EAAE,CAAC,KAAK,WAAW,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,aAAa,WAAW,KAAK,WAAW,KAAK,YAAY,CAAC,CAAC,eAAe,KAAK,WAAW,EAAE,IAAI,EAAE,KAAK,WAAW,KAAK,YAAY,GAAE,KAAK,aAAa,EAAE,EAAE,YAAY,EAAE,KAAK,UAAU,GAAE,KAAK,aAAa,EAAE,EAAE,YAAY,EAAE,KAAK,aAAa,KAAK,KAAK,UAAU,EAAE,KAAK,OAAO,CAAC,CAAC,sBAAsB,EAAE,CAAC,KAAK,UAAU,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,YAAY,WAAW,KAAK,UAAU,KAAK,WAAW,EAAE,KAAK,YAAY,EAAE,EAAE,KAAK,UAAU,KAAK,cAAc,KAAK,YAAY,CAAC,CAAC,EAAE,KAAK,YAAY,EAAE,GAAG,KAAK,SAAS,KAAK,cAAc,KAAK,YAAY,CAAC,CAAC,EAAE,KAAK,YAAY,KAAK,KAAK,SAAS,EAAE,KAAK,OAAO,CAAC,CAAC,oBAAoB,EAAE,CAAC,KAAK,QAAQ,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,UAAU,WAAW,KAAK,QAAQ,KAAK,SAAS,CAAC,CAAC,eAAe,KAAK,QAAQ,EAAE,KAAK,KAAK,KAAK,UAAU,EAAE,KAAK,UAAU,CAAC,EAAE,KAAK,UAAU,KAAK,KAAK,OAAO,EAAE,KAAK,OAAO,CAAC,CAAC,kBAAkB,EAAE,CAAC,KAAK,sBAAsB,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,KAAK,SAAS,KAAK,cAAc,EAAE,MAAM,CAAC,EAAE,EAAE,OAAO,GAAG,KAAK,UAAU,KAAK,cAAc,EAAE,MAAM,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC,eAAe,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,KAAT,CAAe,KAAK,KAAK,KAAK,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,KAAK,cAAc,KAAK,UAAU,GAAE,KAAK,eAAe,KAAK,WAAW,YAAY,EAAE,KAAK,WAAW,KAAK,KAAK,EAAE,KAAK,WAAW,EAAE,EAAE,CAAC,EAAE,MAAM,KAAK,KAAK,KAAK,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,KAAK,cAAc,KAAK,UAAU,CAAC,GAAE,KAAK,eAAe,KAAK,WAAW,YAAY,EAAE,KAAK,WAAW,KAAK,KAAK,EAAE,CAAC,KAAK,WAAW,EAAE,EAAE,CAAC,EAAE,MAAM,KAAK,KAAK,KAAK,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,KAAK,cAAc,KAAK,YAAY,GAAE,KAAK,eAAe,KAAK,WAAW,YAAY,EAAE,KAAK,WAAW,KAAK,KAAK,KAAK,YAAY,CAAC,EAAE,EAAE,CAAC,EAAE,MAAM,KAAK,KAAK,KAAK,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,KAAK,cAAc,KAAK,YAAY,CAAC,GAAE,KAAK,eAAe,KAAK,WAAW,YAAY,EAAE,KAAK,WAAW,KAAK,KAAK,CAAC,KAAK,YAAY,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,CAAC,IAAI,EAAE,eAAe,EAAE,KAAK,OAAO,EAAE,CAAC,wBAAwB,EAAE,CAAC,GAAG,KAAK,UAAU,SAAS,EAAE,KAAK,aAAa,IAAI,EAAE,MAAM,EAAE,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,0BAA0B,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,KAAK,aAAa,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,qBAAqB,EAAE,CAAC,GAAG,KAAK,UAAU,SAAS,EAAE,KAAK,UAAU,IAAI,EAAE,MAAM,EAAE,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,0BAA0B,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,KAAK,UAAU,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,uBAAuB,EAAE,CAAC,IAAI,EAAE,KAAK,0BAA0B,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,KAAK,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,YAAY,IAAI,EAAE,CAAC,CAAC,CAAC,0BAA0B,EAAE,CAAC,KAAK,YAAY,KAAK,uBAAuB,CAAC,EAAE,KAAK,WAAW,KAAK,qBAAqB,CAAC,CAAC,CAAC,6BAA6B,EAAE,CAAC,KAAK,YAAY,KAAK,uBAAuB,CAAC,EAAE,KAAK,cAAc,KAAK,wBAAwB,CAAC,CAAC,CAAC,uBAAuB,EAAE,CAAC,GAAG,KAAK,UAAU,QAAQ,EAAE,KAAK,WAAW,IAAI,EAAE,MAAM,EAAE,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,0BAA0B,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,KAAK,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,aAAa,WAAW,KAAK,WAAW,KAAK,YAAY,CAAC,CAAC,eAAe,KAAK,WAAW,EAAE,IAAI,EAAE,KAAK,WAAW,KAAK,YAAY,GAAE,KAAK,aAAa,EAAE,EAAE,YAAY,EAAE,KAAK,UAAU,GAAE,KAAK,aAAa,EAAE,EAAE,YAAY,EAAE,KAAK,aAAa,KAAK,KAAK,UAAU,CAAC,CAAC,oBAAoB,EAAE,CAAC,GAAG,KAAK,UAAU,SAAS,EAAE,KAAK,QAAQ,IAAI,EAAE,MAAM,EAAE,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,0BAA0B,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,KAAK,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,UAAU,WAAW,KAAK,QAAQ,KAAK,SAAS,CAAC,CAAC,eAAe,KAAK,QAAQ,EAAE,KAAK,KAAK,KAAK,UAAU,EAAE,KAAK,UAAU,CAAC,EAAE,KAAK,UAAU,KAAK,KAAK,OAAO,CAAC,CAAC,sBAAsB,EAAE,CAAC,IAAI,EAAE,KAAK,0BAA0B,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,KAAK,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,UAAU,IAAI,EAAE,CAAC,EAAE,KAAK,YAAY,IAAI,GAAW,KAAK,UAAU,EAAE,KAAK,YAAY,KAAE,KAAK,SAAU,EAAE,KAAK,UAAU,KAAK,YAAY,CAAC,EAAE,KAAK,YAAY,KAAK,KAAK,SAAS,EAAE,IAAI,GAAG,EAAE,MAAM,EAAE,GAAG,GAAG,GAAG,EAAE,MAAM,EAAE,GAAG,GAAG,KAAK,sBAAsB,EAAE,CAAC,CAAC,CAAC,yBAAyB,EAAE,CAAC,KAAK,YAAY,KAAK,sBAAsB,CAAC,EAAE,KAAK,WAAW,KAAK,oBAAoB,CAAC,CAAC,CAAC,4BAA4B,EAAE,CAAC,KAAK,YAAY,KAAK,sBAAsB,CAAC,EAAE,KAAK,cAAc,KAAK,uBAAuB,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,UAAU,KAAK,EAAE,SAAS,CAAC,CAAC,eAAe,EAAE,CAAC,OAAO,KAAK,kBAAkB,EAAE,WAAW,IAAI,IAAI,EAAE,EAAE,EAAE,KAAK,UAAU,OAAO,IAAI,GAAG,KAAK,UAAU,IAAI,EAAE,UAAU,CAAC,KAAK,UAAU,OAAO,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,mBAAmB,EAAE,CAAC,IAAI,IAAI,EAAE,EAAE,EAAE,KAAK,UAAU,OAAO,IAAI,GAAG,KAAK,UAAU,IAAI,EAAE,UAAU,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,cAAc,EAAE,CAAC,IAAI,EAAE,KAAK,kBAAkB,EAAE,WAAW,IAAI,IAAK,KAAI,EAAE,IAAII,EAAE,KAAK,kBAAkB,EAAE,WAAW,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,0BAA0B,EAAE,CAAC,IAAI,EAAE,EAAE,YAAY,KAAK,UAAU,GAAG,KAAK,UAAU,GAAG,KAAK,UAAU,GAAG,OAAO,KAAK,kBAAkB,EAAE,CAAC,kBAAkB,EAAE,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,CAAC,QAAQ,EAAE,QAAQ,QAAQ,EAAE,QAAQ,OAAO,EAAE,MAAM,EAAE,OAAO,EAAP,CAAU,IAAK,GAAE,EAAE,QAAQ,GAAG,MAAM,IAAK,GAAE,EAAE,QAAQ,IAAI,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,KAAK,iBAAiB,EAAE,QAAQ,IAAI,CAAC,CAAC,mBCAhve,UCQd,SAAgB,IAAgB,CAA0J,MAAzJ,CAAsB,KAAiB,OAAO,+CAAoF,CAAC,KAAK,GAAG,EAAE,SAAS,EAAU,EAAiB,CAA2B,SAAgB,IAAgB,CAA0J,MAAzJ,CAAsB,KAAiB,OAAO,+CAAoF,CAAC,KAAK,GAAG,EAAE,SAAS,EAAU,EAAiB,CAAuB,SAAgB,IAAY,CAA6F,MAA5F,CAAkB,KAAa,OAAO,4BAA8B,CAAC,KAAK,GAAG,EAAE,SAAS,CAAC,EAAU,EAAa,CAAuB,SAAgB,IAAY,CAAgG,MAA/F,CAAkB,KAAa,OAAO,+BAAiC,CAAC,KAAK,GAAG,EAAE,SAAS,CAAC,EAAU,EAAa,CAAyB,SAAgB,IAAoB,CAAktC,MAAjtC,CAAoB,KAAe,QAAQ,IAAI,CAAC,OAAO,qDAAiG,OAAO,iDAA6F,OAAO,sDAAkG,OAAO,iDAA6F,OAAO,+CAA2F,OAAO,gDAA4F,OAAO,iDAA6F,OAAO,gDAAqF,CAAC,CAAC,CAAC,MAAM,CAAC,EAAkB,EAAc,EAAS,EAAc,EAAQ,EAAS,EAAU,MAAY,CAAC,eAAe,EAAkB,eAAe,WAAW,EAAc,WAAW,gBAAgB,EAAS,gBAAgB,WAAW,EAAc,WAAW,SAAS,EAAQ,SAAS,UAAU,EAAS,UAAU,WAAW,EAAU,WAAW,WAAW,EAAQ,UAAU,EAAE,EAAU,EAAe,kCAPvhE,KAA2H,KAA8S,KAA2G,KAA6G,KAAkH,KAA8H,KAAkH,IAA4B,IAAuG,IAAiH,EAA3lC,GAAqB,UAAU,kBAAkBC,GAAkB,GAAqB,UAAU,kBAAkBC,GAAkB,GAAW,UAAU,QAAQC,GAO7U,GAAiB,KAA4N,GAAiB,KAA4N,GAAa,KAAuJ,GAAa,KAA0J,GAAe,uDCP9sB,EAAc,GAA8B,+BAAyQ,GAAqB,KAAmG,GAAsB,KAA+F,GAAS,KAAK,GAAG,IAAqG,GAAwB,IAAiB,GAAc,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAW,GAAG,EAAE,IAAE,EAAG,EAE9wB,GAAiB,CAAC,KAAK,KAAK,UAAU,CAAC,UAAU,EAAE,UAAU,GAAG,UAAU,EAAE,mBAAmB,EAAE,MAAM,UAAU,gBAAgB,GAAG,aAAa,GAAG,aAAa,EAAE,IAAI,IAAI,UAAU,EAAI,EACvQ,YAAY,CAAC,MAAM,SAAS,MAAM,CAAC,EAAE,YAAY,CAAC,MAAM,SAAS,MAAM,CAAC,EAAE,UAAU,CAAC,MAAM,UAAU,MAAM,UAAU,cAAc,UAAU,kBAAkB,IAAI,aAAa,UAAU,iBAAiB,IAAI,MAAM,CAAC,CAAC,EAEzI,GAAc,CAAC,KAAK,EAA4B,SAAS,EAA0B,OAAO,EAAwB,OAAO,EAAwB,IAAI,EAAqB,QAAQ,CAAwB,EAElI,GAAa,CACnK,gBAAgB,CAAC,IAAI,8EAAmC,MAAM,aAAa,EAAE,uBAAuB,CAAC,IAAI,qFAA0C,MAAM,aAAa,EAAE,gBAAgB,CAAC,IAAI,8EAAmC,MAAM,aAAa,EAAE,qBAAqB,CAAC,IAAI,mFAAwC,MAAM,cAAc,EAC3U,qCAAqC,CAAC,IAAI,mGAAwD,MAAM,YAAY,EAAE,SAAS,CAAC,IAAI,uEAA4B,MAAM,QAAQ,EAAE,qBAAqB,CAAC,IAAI,mFAAwC,MAAM,cAAc,EAAE,eAAe,CAAC,IAAI,6EAAkC,MAAM,SAAS,EAAE,kBAAkB,CAAC,IAAI,gFAAqC,MAAM,QAAQ,EACzZ,cAAc,CAAC,IAAI,4EAAiC,MAAM,eAAe,EAAE,0BAA0B,CAAC,IAAI,wFAA6C,MAAM,mBAAmB,EAAE,mBAAmB,CAAC,IAAI,iFAAsC,MAAM,YAAY,EAClQ,gBAAgB,CAAC,IAAI,8EAAmC,MAAM,WAAW,EAAE,aAAa,CAAC,IAAI,2EAAgC,MAAM,SAAS,EAC5I,mBAAmB,CAAC,IAAI,iFAAsC,MAAM,aAAa,EAAE,gBAAgB,CAAC,IAAI,8EAAmC,MAAM,cAAc,EAAE,eAAe,CAAC,IAAI,6EAAkC,MAAM,cAAc,EAC3O,qBAAqB,CAAC,IAAI,mFAAwC,MAAM,cAAc,EAAE,YAAY,CAAC,IAAI,0EAA+B,MAAM,aAAa,EAAE,+BAA+B,CAAC,IAAI,6FAAkD,MAAM,WAAW,CAAC,EAEvL,GAAY,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,EAAE,IAAI,CAAC,IAAI,IAAI,GAAG,EAAE,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,GAAG,EAAE,IAAI,CAAC,GAAG,GAAG,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,EAAE,IAAI,CAAC,GAAG,GAAG,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,EAAE,IAAI,CAAC,GAAG,IAAI,EAAE,EAAE,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,EAAE,IAAI,CAAC,GAAG,GAAG,GAAG,EAAE,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,GAAG,EAAE,IAAI,CAAC,GAAG,GAAG,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,GAAG,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,EAAE,IAAI,CAAC,IAAI,IAAI,GAAG,EAAE,IAAI,CAAC,KAAK,KAAK,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,GAAG,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,GAAG,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,EAAE,IAAI,CAAC,GAAG,IAAI,GAAG,EAAE,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,EAAE,EAAE,IAAI,CAAC,GAAG,GAAG,EAAE,EAAE,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,GAAG,EAAE,IAAI,CAAC,GAAG,GAAG,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,GAAG,GAAG,EAAE,IAAI,CAAC,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAe,GAAsB,qDCfxrC,KAAuH,EAG1N,GAA4B,CACzC,YAAY,CAAC,KAAK,EAAY,KAAK,MAAM,SAAS,QAAQ,CAAC,MAAM,MAAM,EAAE,aAAa,CAAC,MAAM,QAAQ,EAAE,aAAa,MAAM,wBAAwB,EAAI,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,GAAG,YAAY,gCAAgC,YAAY,IAAI,OAAO,GAAG,EAAE,cAAc,MAAM,EAAE,UAAU,CAAC,KAAK,EAAY,KAAK,MAAM,aAAa,iBAAiB,CAAC,MAAM,OAAO,MAAM,KAAK,EAAE,OAAO,GAAG,EAAE,cAAc,MAAM,EAAE,gBAAgB,CAAC,KAAK,EAAY,QAAQ,MAAM,kBAAkB,aAAa,GAAM,YAAY,6EAA6E,EAC1mB,SAAS,CAAC,KAAK,EAAY,OAAO,MAAM,WAAW,SAAS,CAAC,OAAO,CAAC,KAAK,EAAY,KAAK,MAAM,SAAS,QAAQ,CAAC,OAAO,YAAY,cAAc,WAAW,EAAE,aAAa,CAAC,kBAAkB,YAAY,eAAe,YAAY,EAAE,aAAa,MAAM,EAAE,mBAAmB,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,aAAa,IAAI,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,eAAe,GAAK,OAAO,GAAG,EAAE,SAAS,WAAW,EAAE,eAAe,CAAC,KAAK,EAAY,MAAM,MAAM,aAAa,aAAa,UAAU,OAAO,GAAG,EAAE,SAAS,WAAW,EAAE,uBAAuB,CAAC,KAAK,EAAY,MAAM,MAAM,WAAW,aAAa,UAAU,OAAO,GAAG,EAAE,SAAS,WAAW,EAAE,2BAA2B,CAAC,KAAK,EAAY,OAAO,MAAM,iBAAiB,aAAa,IAAI,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,eAAe,GAAK,OAAO,GAAG,EAAE,SAAS,WAAW,EAAE,gBAAgB,CAAC,KAAK,EAAY,MAAM,MAAM,eAAe,aAAa,UAAU,OAAO,GAAG,EAAE,SAAS,aAAa,EAAE,gBAAgB,CAAC,KAAK,EAAY,MAAM,MAAM,cAAc,aAAa,UAAU,OAAO,GAAG,EAAE,SAAS,aAAa,EAAE,oBAAoB,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,aAAa,KAAK,IAAI,EAAE,IAAI,EAAE,KAAK,KAAK,eAAe,GAAK,OAAO,GAAG,EAAE,SAAS,aAAa,EAAE,YAAY,CAAC,KAAK,EAAY,OAAO,MAAM,gBAAgB,aAAa,EAAE,IAAI,EAAE,IAAI,GAAG,KAAK,KAAK,eAAe,GAAK,OAAO,GAAG,EAAE,SAAS,aAAa,EAAE,SAAS,CAAC,KAAK,EAAY,QAAQ,MAAM,aAAa,aAAa,GAAM,aAAa,KAAK,cAAc,MAAM,OAAO,GAAG,EAAE,SAAS,MAAM,EAAE,UAAU,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,YAAY,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,OAAO,GAAG,EAAE,SAAS,QAAQ,CAAC,EAAE,QAAQ,EAAE,UAAU,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,YAAY,aAAa,GAAG,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,OAAO,GAAG,EAAE,SAAS,QAAQ,CAAC,EAAE,QAAQ,EAAE,UAAU,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,YAAY,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,OAAO,GAAG,EAAE,SAAS,QAAQ,CAAC,EAAE,QAAQ,EAAE,mBAAmB,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,eAAe,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,OAAO,GAAG,EAAE,SAAS,QAAQ,CAAC,EAAE,UAAU,EAAE,YAAY,CAAC,EAAE,aAAa,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,eAAe,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,OAAO,GAAG,EAAE,SAAS,QAAQ,CAAC,EAAE,SAAS,YAAY,2BAA2B,EAAE,UAAU,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,YAAY,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,OAAO,GAAG,EAAE,SAAS,QAAQ,CAAC,EAAE,UAAU,EAAE,eAAe,CAAC,EAAE,IAAI,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,MAAM,aAAa,IAAI,IAAI,EAAE,IAAI,IAAI,KAAK,IAAI,OAAO,GAAG,EAAE,SAAS,QAAQ,CAAC,EAAE,UAAU,EAAE,eAAe,EAAE,YAAY,qBAAqB,EAAE,QAAQ,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,UAAU,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,OAAO,GAAG,EAAE,SAAS,QAAQ,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,cAAc,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,OAAO,GAAG,EAAE,SAAS,QAAQ,CAAC,EAAE,QAAQ,EAAE,eAAe,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,WAAW,aAAa,IAAI,IAAI,EAAE,IAAI,IAAI,KAAK,IAAI,OAAO,GAAG,EAAE,SAAS,QAAQ,CAAC,EAAE,UAAU,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,QAAQ,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,OAAO,GAAG,EAAE,SAAS,QAAQ,CAAC,EAAE,QAAQ,EAAE,eAAe,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,cAAc,aAAa,GAAG,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,OAAO,GAAG,EAAE,SAAS,QAAQ,CAAC,EAAE,UAAU,EAAE,QAAQ,CAAC,EAAE,WAAW,CAAC,KAAK,EAAY,MAAM,MAAM,cAAc,aAAa,UAAU,OAAO,GAAG,EAAE,SAAS,QAAQ,CAAC,EAAE,UAAU,EAAE,QAAQ,CAAC,EAAE,gBAAgB,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,cAAc,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,OAAO,GAAG,EAAE,SAAS,QAAQ,CAAC,EAAE,QAAQ,EAAE,aAAa,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,eAAe,aAAa,GAAG,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,OAAO,GAAG,EAAE,SAAS,QAAQ,CAAC,EAAE,QAAQ,EAAE,kBAAkB,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,eAAe,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,OAAO,GAAG,EAAE,SAAS,QAAQ,CAAC,EAAE,QAAQ,EAAE,cAAc,CAAC,KAAK,EAAY,MAAM,MAAM,iBAAiB,aAAa,UAAU,OAAO,GAAG,EAAE,SAAS,QAAQ,CAAC,EAAE,UAAU,EAAE,oBAAoB,CAAC,EAAE,UAAU,CAAC,KAAK,EAAY,QAAQ,MAAM,YAAY,aAAa,GAAM,aAAa,KAAK,cAAc,MAAM,OAAO,GAAG,EAAE,SAAS,QAAQ,CAAC,EAAE,QAAQ,EAAE,mBAAmB,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,sBAAsB,aAAa,GAAG,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,KAAK,IAAI,YAAY,sBAAsB,CAAC,CAAC,EAC/+I,YAAY,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,SAAS,CAAC,MAAM,CAAC,KAAK,EAAY,QAAQ,MAAM,QAAQ,aAAa,GAAK,aAAa,KAAK,cAAc,KAAK,EAAE,KAAK,CAAC,KAAK,EAAY,QAAQ,MAAM,OAAO,aAAa,GAAM,aAAa,KAAK,cAAc,MAAM,OAAO,GAAG,CAAC,EAAE,MAAM,YAAY,GAAG,EAAE,WAAW,CAAC,KAAK,EAAY,QAAQ,MAAM,cAAc,aAAa,GAAK,aAAa,KAAK,cAAc,KAAK,EAAE,YAAY,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,QAAQ,aAAa,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,GAAG,OAAO,GAAG,CAAC,EAAE,WAAW,YAAY,GAAG,EAAE,MAAM,CAAC,KAAK,EAAY,QAAQ,MAAM,QAAQ,aAAa,GAAK,aAAa,KAAK,cAAc,KAAK,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,YAAY,aAAa,GAAG,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,cAAc,aAAa,GAAG,IAAI,IAAI,IAAI,EAAE,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,MAAM,YAAY,GAAG,EAAE,YAAY,CAAC,KAAK,EAAY,QAAQ,MAAM,eAAe,aAAa,GAAM,aAAa,KAAK,cAAc,KAAK,EAAE,qBAAqB,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,kBAAkB,aAAa,GAAG,IAAI,IAAI,IAAI,EAAE,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,YAAY,YAAY,GAAG,EAAE,UAAU,CAAC,KAAK,EAAY,QAAQ,MAAM,YAAY,aAAa,GAAM,aAAa,KAAK,cAAc,KAAK,EAAE,cAAc,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,QAAQ,aAAa,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,SAAS,EAAE,aAAa,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,OAAO,aAAa,IAAI,IAAI,IAAI,IAAI,EAAE,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,SAAS,EAAE,cAAc,CAAC,KAAK,EAAY,MAAM,MAAM,QAAQ,aAAa,UAAU,OAAO,GAAG,CAAC,EAAE,SAAS,EAAE,cAAc,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,QAAQ,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,GAAG,OAAO,GAAG,CAAC,EAAE,SAAS,EAAE,eAAe,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,SAAS,aAAa,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,GAAG,OAAO,GAAG,CAAC,EAAE,UAAU,YAAY,GAAG,CAAC,CAAC,EAC19D,iBAAiB,CAAC,KAAK,EAAY,MAAM,MAAM,gBAAgB,YAAY,IAAI,SAAS,GAAG,QAAQ,CAAC,KAAK,EAAY,OAAO,SAAS,CAAC,SAAS,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,aAAa,GAAG,YAAY,qBAAqB,EAAE,MAAM,CAAC,KAAK,EAAY,OAAO,MAAM,QAAQ,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAY,QAAQ,MAAM,QAAQ,aAAa,GAAM,aAAa,KAAK,cAAc,KAAK,EAAE,OAAO,CAAC,KAAK,EAAY,KAAK,MAAM,SAAS,QAAQ,CAAC,OAAO,UAAU,mBAAmB,cAAc,eAAe,EAAE,aAAa,CAAC,OAAO,WAAW,oBAAoB,eAAe,gBAAgB,EAAE,aAAa,OAAO,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,EAAY,KAAK,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,CAAC,EAAE,SAAS,EAAE,SAAS,SAAS,EAAE,OAAO,CAAC,KAAK,EAAY,QAAQ,MAAM,UAAU,aAAa,GAAK,aAAa,MAAM,cAAc,KAAK,YAAY,IAAI,OAAO,GAAG,CAAC,EAAE,SAAS,EAAE,SAAS,SAAS,EAAE,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,gBAAgB,aAAa,GAAG,YAAY,kCAAkC,YAAY,IAAI,OAAO,GAAG,CAAC,EAAE,SAAS,EAAE,SAAS,kBAAkB,EAAE,MAAM,CAAC,KAAK,EAAY,MAAM,MAAM,QAAQ,aAAa,UAAU,YAAY,IAAI,OAAO,GAAG,CAAC,EAAE,SAAS,EAAE,SAAS,aAAa,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,GAAG,YAAY,sBAAsB,OAAO,GAAG,CAAC,EAAE,SAAS,EAAE,SAAS,eAAe,EAAE,SAAS,CAAC,KAAK,EAAY,KAAK,MAAM,YAAY,QAAQ,CAAC,OAAO,SAAS,UAAU,EAAE,aAAa,CAAC,OAAO,SAAS,WAAW,EAAE,aAAa,OAAO,OAAO,GAAG,CAAC,EAAE,SAAS,EAAE,SAAS,eAAe,EAAE,YAAY,CAAC,KAAK,EAAY,QAAQ,MAAM,UAAU,aAAa,GAAM,aAAa,MAAM,cAAc,KAAK,YAAY,IAAI,OAAO,GAAG,CAAC,EAAE,SAAS,EAAE,SAAS,eAAe,EAAE,QAAQ,CAAC,KAAK,EAAY,aAAa,MAAM,iBAAiB,YAAY,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,oBAAoB,CAAC,KAAK,EAAY,aAAa,MAAM,mBAAmB,OAAO,GAAG,CAAC,EAAE,SAAS,EAAE,SAAS,eAAe,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,EAAY,OAAO,MAAM,QAAQ,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAY,QAAQ,MAAM,QAAQ,aAAa,GAAM,aAAa,KAAK,cAAc,KAAK,EAAE,MAAM,CAAC,KAAK,EAAY,MAAM,MAAM,cAAc,aAAa,UAAU,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,eAAe,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,QAAQ,aAAa,EAAE,IAAI,IAAI,IAAI,EAAE,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,kBAAkB,CAAC,KAAK,EAAY,OAAO,MAAM,WAAW,aAAa,QAAQ,YAAY,QAAQ,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,kBAAkB,CAAC,KAAK,EAAY,OAAO,MAAM,WAAW,aAAa,QAAQ,YAAY,QAAQ,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,cAAc,aAAa,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,GAAG,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,KAAK,EAAY,OAAO,MAAM,UAAU,aAAa,GAAG,YAAY,wBAAwB,YAAY,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,KAAK,EAAY,aAAa,MAAM,cAAc,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,KAAK,EAAY,aAAa,MAAM,eAAe,OAAO,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,EAAY,OAAO,MAAM,QAAQ,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAY,QAAQ,MAAM,QAAQ,aAAa,GAAM,aAAa,KAAK,cAAc,KAAK,EAAE,eAAe,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,QAAQ,aAAa,EAAE,IAAI,IAAI,IAAI,EAAE,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,kBAAkB,CAAC,KAAK,EAAY,OAAO,MAAM,WAAW,aAAa,QAAQ,YAAY,QAAQ,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,kBAAkB,CAAC,KAAK,EAAY,OAAO,MAAM,WAAW,aAAa,QAAQ,YAAY,QAAQ,YAAY,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,YAAY,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAY,QAAQ,MAAM,cAAc,aAAa,GAAM,aAAa,KAAK,cAAc,KAAK,EAAE,WAAW,CAAC,KAAK,EAAY,QAAQ,MAAM,cAAc,aAAa,GAAM,aAAa,KAAK,cAAc,MAAM,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,YAAY,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,eAAe,aAAa,EAAE,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,OAAO,GAAG,CAAC,EAAE,SAAS,CAAC,EAAE,UAAU,EAAE,WAAW,CAAC,KAAK,EAAY,KAAK,MAAM,cAAc,QAAQ,CAAC,IAAI,IAAI,GAAG,EAAE,aAAa,CAAC,SAAS,YAAY,aAAa,EAAE,aAAa,IAAI,OAAO,GAAG,CAAC,EAAE,SAAS,CAAC,EAAE,UAAU,EAAE,YAAY,CAAC,KAAK,EAAY,QAAQ,MAAM,eAAe,aAAa,GAAM,aAAa,KAAK,cAAc,MAAM,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,qBAAqB,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,YAAY,aAAa,GAAG,IAAI,IAAI,IAAI,EAAE,KAAK,IAAI,YAAY,IAAI,OAAO,GAAG,CAAC,EAAE,SAAS,CAAC,EAAE,WAAW,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,EAAY,OAAO,MAAM,OAAO,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAY,QAAQ,MAAM,OAAO,aAAa,GAAM,aAAa,KAAK,cAAc,KAAK,EAAE,MAAM,CAAC,KAAK,EAAY,KAAK,MAAM,QAAQ,QAAQ,CAAC,KAAK,KAAK,KAAK,QAAQ,EAAE,aAAa,CAAC,aAAa,YAAY,YAAY,QAAQ,EAAE,aAAa,KAAK,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,KAAK,EAAY,QAAQ,MAAM,YAAY,aAAa,GAAM,aAAa,KAAK,cAAc,MAAM,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,WAAW,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,eAAe,aAAa,EAAE,IAAI,EAAE,IAAI,GAAG,KAAK,GAAG,YAAY,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,KAAK,EAAY,aAAa,MAAM,gBAAgB,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,KAAK,EAAY,aAAa,MAAM,cAAc,OAAO,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,OAAO,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAY,QAAQ,MAAM,SAAS,aAAa,GAAM,aAAa,KAAK,cAAc,KAAK,EAAE,MAAM,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,GAAG,YAAY,OAAO,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,EAAY,KAAK,MAAM,SAAS,QAAQ,CAAC,MAAM,SAAS,QAAQ,EAAE,aAAa,CAAC,MAAM,SAAS,QAAQ,EAAE,aAAa,SAAS,wBAAwB,GAAK,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,KAAK,EAAY,OAAO,MAAM,QAAQ,aAAa,EAAE,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,eAAe,GAAK,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,MAAM,WAAW,aAAa,QAAQ,YAAY,QAAQ,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,MAAM,WAAW,aAAa,QAAQ,YAAY,QAAQ,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,UAAU,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,YAAY,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,KAAK,EAAY,OAAO,MAAM,QAAQ,aAAa,EAAE,IAAI,IAAI,IAAI,EAAE,KAAK,IAAI,eAAe,EAAI,EAAE,cAAc,CAAC,KAAK,EAAY,OAAO,MAAM,WAAW,aAAa,QAAQ,YAAY,OAAO,EAAE,cAAc,CAAC,KAAK,EAAY,OAAO,MAAM,WAAW,aAAa,QAAQ,YAAY,OAAO,EACv+M,OAAO,CAAC,KAAK,EAAY,MAAM,MAAM,aAAa,YAAY,IAAI,SAAS,EAAE,QAAQ,CAAC,KAAK,EAAY,OAAO,SAAS,CAAC,YAAY,CAAC,KAAK,EAAY,KAAK,MAAM,SAAS,QAAQ,CAAC,MAAM,MAAM,EAAE,aAAa,CAAC,MAAM,QAAQ,EAAE,aAAa,MAAM,wBAAwB,EAAI,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,GAAG,YAAY,gCAAgC,YAAY,+BAA+B,OAAO,GAAG,EAAE,cAAc,MAAM,EAAE,UAAU,CAAC,KAAK,EAAY,KAAK,MAAM,aAAa,iBAAiB,CAAC,MAAM,OAAO,MAAM,MAAM,MAAM,MAAM,OAAO,MAAM,EAAE,YAAY,IAAI,OAAO,GAAG,EAAE,cAAc,MAAM,EAAE,QAAQ,CAAC,KAAK,EAAY,QAAQ,MAAM,UAAU,aAAa,GAAK,aAAa,OAAO,cAAc,MAAM,EAAE,aAAa,CAAC,KAAK,EAAY,QAAQ,MAAM,SAAS,aAAa,GAAM,aAAa,cAAc,cAAc,MAAM,YAAY,6BAA6B,EAAE,YAAY,CAAC,KAAK,EAAY,KAAK,MAAM,QAAQ,QAAQ,CAAC,MAAM,MAAM,EAAE,aAAa,CAAC,YAAY,YAAY,EAAE,aAAa,MAAM,OAAO,GAAG,CAAC,EAAE,aAAa,YAAY,yBAAyB,EAAE,MAAM,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,QAAQ,aAAa,EAAE,IAAI,IAAI,IAAI,GAAG,KAAK,GAAG,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,MAAM,WAAW,aAAa,QAAQ,YAAY,OAAO,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,MAAM,WAAW,aAAa,QAAQ,YAAY,QAAQ,YAAY,GAAG,EAC/3C,aAAa,CAAC,KAAK,EAAY,QAAQ,MAAM,gBAAgB,aAAa,GAAM,aAAa,SAAS,cAAc,cAAc,YAAY,oBAAoB,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,GAAG,YAAY,sBAAsB,OAAO,GAAG,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,aAAa,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,GAAG,OAAO,GAAG,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,qBAAqB,CAAC,KAAK,EAAY,OAAO,MAAM,eAAe,aAAa,EAAE,IAAI,IAAI,IAAI,GAAG,KAAK,IAAI,eAAe,EAAI,EAAE,wBAAwB,CAAC,KAAK,EAAY,OAAO,MAAM,kBAAkB,aAAa,QAAQ,YAAY,OAAO,EAAE,wBAAwB,CAAC,KAAK,EAAY,OAAO,MAAM,kBAAkB,aAAa,QAAQ,YAAY,OAAO,EAAE,aAAa,CAAC,KAAK,EAAY,QAAQ,MAAM,SAAS,aAAa,GAAK,aAAa,KAAK,cAAc,KAAK,EACl4B,mBAAmB,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,YAAY,IAAI,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAY,QAAQ,MAAM,WAAW,aAAa,GAAK,aAAa,KAAK,cAAc,KAAK,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,gBAAgB,aAAa,IAAI,IAAI,GAAG,IAAI,EAAE,KAAK,GAAG,OAAO,GAAG,CAAC,EAAE,OAAO,EAC3U,MAAM,CAAC,KAAK,EAAY,OAAO,MAAM,iBAAiB,OAAO,GAAG,CAAC,EAAE,QAAQ,SAAS,CACpF,WAAW,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,YAAY,aAAa,IAAI,IAAI,KAAK,IAAI,EAAE,KAAK,IAAI,EACnH,UAAU,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,YAAY,aAAa,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,EAAE,CAAC,CAAC,EAChH,KAAK,CAAC,KAAK,EAAY,OAAO,MAAM,gBAAgB,OAAO,GAAG,CAAC,EAAE,QAAQ,SAAS,CAClF,UAAU,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,QAAQ,aAAa,GAAG,IAAI,GAAG,IAAI,EAAE,KAAK,GAAG,EAAE,cAAc,CAAC,KAAK,EAAY,MAAM,MAAM,QAAQ,aAAa,SAAS,EACtL,kBAAkB,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,YAAY,aAAa,EAAE,IAAI,EAAE,IAAI,GAAG,KAAK,EAAE,CAAC,CAAC,EACtH,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,qBAAqB,OAAO,GAAG,CAAC,EAAE,QAAQ,YAAY,IAAI,SAAS,CAC5G,QAAQ,CAAC,KAAK,EAAY,QAAQ,MAAM,OAAO,aAAa,GAAK,aAAa,KAAK,cAAc,KAAK,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,OAAO,aAAa,GAAG,IAAI,GAAG,IAAI,IAAI,KAAK,EAAE,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,KAAK,EAAY,MAAM,MAAM,QAAQ,aAAa,UAAU,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,QAAQ,aAAa,IAAI,IAAI,KAAK,IAAI,GAAG,KAAK,KAAK,OAAO,GAAG,CAAC,EAAE,OAAO,EAChc,QAAQ,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,iBAAiB,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,aAAa,aAAa,IAAI,IAAI,EAAE,IAAI,GAAG,KAAK,GAAG,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,aAAa,aAAa,EAAE,IAAI,EAAE,IAAI,GAAG,KAAK,GAAG,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,YAAY,aAAa,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,QAAQ,YAAY,GAAG,CAAC,CAAC,EAC9hB,YAAY,CAAC,KAAK,EAAY,QAAQ,MAAM,mBAAmB,aAAa,GAAM,aAAa,KAAK,cAAc,KAAK,EAAE,gBAAgB,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,aAAa,aAAa,GAAG,IAAI,GAAG,IAAI,EAAE,KAAK,GAAG,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,YAAY,YAAY,GAAG,EAAE,WAAW,CAAC,KAAK,EAAY,QAAQ,MAAM,cAAc,aAAa,GAAM,aAAa,KAAK,cAAc,KAAK,EAClZ,cAAc,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,iBAAiB,aAAa,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,EAAE,KAAK,KAAK,OAAO,GAAG,CAAC,EAAE,UAAU,EAAE,aAAa,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,gBAAgB,aAAa,GAAG,IAAI,GAAG,IAAI,EAAE,KAAK,GAAG,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,WAAW,YAAY,GAAG,EAAE,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,OAAO,GAAK,SAAS,CAAC,MAAM,CAAC,KAAK,EAAY,OAAO,MAAM,QAAQ,aAAa,EAAE,IAAI,IAAI,IAAI,GAAG,KAAK,IAAI,eAAe,EAAI,EAAE,KAAK,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,aAAa,aAAa,EAAE,IAAI,KAAK,IAAI,IAAI,KAAK,CAAC,EAAE,KAAK,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,aAAa,aAAa,EAAE,IAAI,KAAK,IAAI,IAAI,KAAK,CAAC,EAAE,KAAK,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,aAAa,aAAa,EAAE,IAAI,KAAK,IAAI,IAAI,KAAK,EAAE,YAAY,GAAG,EAAE,KAAK,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,aAAa,aAAa,EAAE,IAAI,KAAK,IAAI,IAAI,KAAK,CAAC,EAAE,KAAK,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,aAAa,aAAa,EAAE,IAAI,KAAK,IAAI,IAAI,KAAK,CAAC,EAAE,KAAK,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,aAAa,aAAa,EAAE,IAAI,KAAK,IAAI,IAAI,KAAK,EAAE,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,qBAAqB,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,GAAG,YAAY,MAAM,EAAE,sBAAsB,CAAC,KAAK,EAAY,KAAK,MAAM,SAAS,QAAQ,CAAC,MAAM,SAAS,QAAQ,EAAE,aAAa,CAAC,MAAM,SAAS,QAAQ,EAAE,aAAa,SAAS,wBAAwB,EAAI,EAAE,qBAAqB,CAAC,KAAK,EAAY,OAAO,MAAM,eAAe,aAAa,EAAE,IAAI,IAAI,IAAI,GAAG,KAAK,IAAI,eAAe,EAAI,EAAE,wBAAwB,CAAC,KAAK,EAAY,OAAO,MAAM,kBAAkB,aAAa,QAAQ,YAAY,OAAO,EAAE,wBAAwB,CAAC,KAAK,EAAY,OAAO,MAAM,kBAAkB,aAAa,QAAQ,YAAY,QAAQ,YAAY,GAAG,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,GAAG,YAAY,aAAa,EAAE,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,aAAa,EAAE,IAAI,GAAG,IAAI,EAAE,KAAK,GAAG,eAAe,EAAI,EAAE,aAAa,CAAC,KAAK,EAAY,KAAK,MAAM,YAAY,YAAY,IAAI,QAAQ,CAAC,SAAS,OAAO,UAAU,EAAE,aAAa,CAAC,SAAS,OAAO,WAAW,EAAE,aAAa,QAAQ,EACjrE,YAAY,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,SAAS,CAClE,YAAY,CAAC,KAAK,EAAY,QAAQ,MAAM,iBAAiB,aAAa,GAAK,aAAa,MAAM,cAAc,KAAK,YAAY,GAAG,EAAE,QAAQ,CAAC,KAAK,EAAY,MAAM,MAAM,WAAW,aAAa,kBAAkB,OAAO,GAAG,EAAE,YAAY,YAAY,GAAG,EAC7P,QAAQ,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,UAAU,aAAa,GAAG,IAAI,EAAE,IAAI,EAAE,KAAK,GAAG,EAAE,aAAa,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,cAAc,aAAa,EAAE,IAAI,EAAE,IAAI,GAAG,KAAK,EAAE,EAAE,SAAS,CAAC,KAAK,EAAY,MAAM,MAAM,YAAY,aAAa,oBAAoB,EAAE,QAAQ,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,YAAY,aAAa,EAAE,IAAI,IAAI,IAAI,GAAG,KAAK,EAAE,EAAE,QAAQ,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,YAAY,aAAa,GAAG,IAAI,IAAI,IAAI,GAAG,KAAK,EAAE,EAAE,QAAQ,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,YAAY,aAAa,EAAE,IAAI,IAAI,IAAI,GAAG,KAAK,GAAG,YAAY,GAAG,EAC7oB,QAAQ,CAAC,KAAK,EAAY,QAAQ,MAAM,OAAO,aAAa,GAAK,aAAa,KAAK,cAAc,KAAK,EAAE,KAAK,CAAC,KAAK,EAAY,KAAK,MAAM,OAAO,QAAQ,CAAC,aAAa,MAAM,EAAE,aAAa,CAAC,aAAa,mBAAmB,EAAE,aAAa,aAAa,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,EAAY,KAAK,MAAM,SAAS,QAAQ,CAAC,SAAS,SAAS,OAAO,QAAQ,YAAY,SAAS,EAAE,aAAa,CAAC,SAAS,SAAS,OAAO,QAAQ,YAAY,SAAS,EAAE,aAAa,SAAS,OAAO,GAAG,CAAC,EAAE,SAAS,EAAE,OAAO,YAAY,EAAE,WAAW,CAAC,KAAK,EAAY,KAAK,MAAM,OAAO,QAAQ,OAAO,KAAK,EAAY,EAAE,aAAa,OAAO,OAAO,EAAY,CAAC,CAAC,IAAI,GAAG,EAAE,KAAK,EAAE,aAAa,kBAAkB,OAAO,GAAG,CAAC,EAAE,SAAS,EAAE,OAAO,MAAM,EAAE,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,aAAa,GAAG,YAAY,8BAA8B,OAAO,GAAG,CAAC,EAAE,SAAS,EAAE,OAAO,MAAM,EAAE,OAAO,CAAC,KAAK,EAAY,QAAQ,MAAM,aAAa,aAAa,GAAM,aAAa,MAAM,cAAc,KAAK,OAAO,GAAG,CAAC,EAAE,SAAS,EAAE,OAAO,MAAM,EAAE,UAAU,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,YAAY,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,QAAQ,YAAY,GAAG,EAClpC,QAAQ,CAAC,KAAK,EAAY,QAAQ,MAAM,UAAU,aAAa,GAAM,aAAa,KAAK,cAAc,KAAK,EAAE,WAAW,CAAC,KAAK,EAAY,KAAK,MAAM,iBAAiB,QAAQ,CAAC,MAAM,OAAO,OAAO,MAAM,EAAE,aAAa,CAAC,YAAY,cAAc,YAAY,YAAY,EAAE,aAAa,OAAO,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,WAAW,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,cAAc,aAAa,MAAM,IAAI,KAAK,IAAI,IAAI,KAAK,KAAK,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,iBAAiB,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,cAAc,aAAa,IAAI,IAAI,EAAE,IAAI,GAAG,KAAK,KAAK,YAAY,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,EACtmB,QAAQ,CAAC,KAAK,EAAY,OAAO,MAAM,UAAU,SAAS,CAC1D,MAAM,CAAC,KAAK,EAAY,QAAQ,MAAM,QAAQ,aAAa,GAAM,aAAa,KAAK,cAAc,KAAK,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,YAAY,aAAa,GAAG,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,KAAK,EAAE,YAAY,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,eAAe,aAAa,GAAG,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,SAAS,aAAa,GAAG,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,MAAM,YAAY,GAAG,EAC5f,YAAY,CAAC,KAAK,EAAY,KAAK,MAAM,WAAW,QAAQ,CAAC,OAAO,WAAW,SAAS,SAAS,MAAM,SAAS,EAAE,aAAa,CAAC,cAAc,WAAW,SAAS,SAAS,MAAM,SAAS,EAAE,aAAa,MAAM,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,WAAW,aAAa,IAAI,IAAI,GAAG,IAAI,EAAE,KAAK,IAAI,YAAY,GAAG,EAAE,KAAK,CAAC,KAAK,EAAY,QAAQ,MAAM,OAAO,aAAa,GAAK,aAAa,KAAK,cAAc,KAAK,EACnb,aAAa,CAAC,KAAK,EAAY,QAAQ,MAAM,gBAAgB,aAAa,GAAM,aAAa,KAAK,cAAc,KAAK,EAAE,WAAW,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,aAAa,aAAa,EAAE,IAAI,IAAI,IAAI,GAAG,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,YAAY,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,WAAW,aAAa,EAAE,IAAI,GAAG,IAAI,EAAE,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,YAAY,EAAE,WAAW,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,aAAa,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,aAAa,YAAY,GAAG,EACniB,SAAS,CAAC,KAAK,EAAY,QAAQ,MAAM,WAAW,aAAa,GAAM,aAAa,KAAK,cAAc,KAAK,EAAE,UAAU,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,aAAa,aAAa,EAAE,IAAI,GAAG,IAAI,EAAE,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,WAAW,aAAa,IAAI,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,SAAS,YAAY,GAAG,EACrY,WAAW,CAAC,KAAK,EAAY,QAAQ,MAAM,cAAc,aAAa,GAAM,aAAa,KAAK,cAAc,KAAK,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,cAAc,aAAa,KAAK,IAAI,EAAE,IAAI,IAAI,KAAK,KAAK,OAAO,GAAG,CAAC,EAAE,WAAW,YAAY,GAAG,EAC9Q,UAAU,CAAC,KAAK,EAAY,QAAQ,MAAM,aAAa,aAAa,GAAM,aAAa,KAAK,cAAc,KAAK,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,YAAY,aAAa,IAAI,IAAI,EAAE,IAAI,GAAG,KAAK,KAAK,OAAO,GAAG,CAAC,EAAE,UAAU,YAAY,GAAG,EACvQ,SAAS,CAAC,KAAK,EAAY,QAAQ,MAAM,WAAW,aAAa,GAAM,aAAa,KAAK,cAAc,MAAM,YAAY,gDAAgD,EAAE,WAAW,CAAC,KAAK,EAAY,KAAK,MAAM,QAAQ,QAAQ,CAAC,YAAY,UAAU,UAAU,UAAU,EAAE,aAAa,CAAC,YAAY,UAAU,UAAU,UAAU,EAAE,aAAa,YAAY,OAAO,GAAG,CAAC,EAAE,QAAQ,EAAE,UAAU,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,OAAO,aAAa,GAAG,IAAI,EAAE,IAAI,IAAI,KAAK,EAAE,KAAK,KAAK,OAAO,GAAG,CAAC,EAAE,QAAQ,EAAE,aAAa,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,UAAU,aAAa,EAAE,IAAI,IAAI,IAAI,IAAI,KAAK,EAAE,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,QAAQ,EAAE,kBAAkB,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,gBAAgB,aAAa,GAAG,IAAI,EAAE,IAAI,IAAI,KAAK,EAAE,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,QAAQ,EAAE,kBAAkB,CAAC,KAAK,EAAY,KAAK,MAAM,gBAAgB,QAAQ,CAAC,UAAU,MAAM,EAAE,aAAa,CAAC,UAAU,MAAM,EAAE,aAAa,UAAU,OAAO,GAAG,CAAC,EAAE,QAAQ,EAAE,cAAc,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,WAAW,aAAa,EAAE,IAAI,EAAE,IAAI,IAAI,KAAK,EAAE,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,QAAQ,EAAE,aAAa,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,UAAU,aAAa,EAAE,IAAI,EAAE,IAAI,IAAI,KAAK,EAAE,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,QAAQ,EAAE,cAAc,CAAC,KAAK,EAAY,QAAQ,MAAM,WAAW,aAAa,GAAK,aAAa,KAAK,cAAc,MAAM,OAAO,GAAG,CAAC,EAAE,QAAQ,EAC13C,KAAK,CAAC,KAAK,EAAY,QAAQ,MAAM,OAAO,aAAa,GAAM,aAAa,KAAK,cAAc,MAAM,YAAY,yBAAyB,EAAE,WAAW,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,YAAY,aAAa,EAAE,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,OAAO,GAAG,CAAC,EAAE,IAAI,EAAE,YAAY,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,cAAc,aAAa,KAAK,IAAI,KAAK,IAAI,IAAI,KAAK,KAAK,OAAO,GAAG,CAAC,EAAE,IAAI,EAAE,YAAY,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,cAAc,aAAa,GAAG,IAAI,IAAI,IAAI,EAAE,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,EACliB,YAAY,CAAC,KAAK,EAAY,MAAM,MAAM,eAAe,YAAY,IAAI,SAAS,EAAE,QAAQ,CAAC,KAAK,EAAY,OAAO,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAY,QAAQ,MAAM,UAAU,aAAa,GAAK,aAAa,KAAK,cAAc,KAAK,EAAE,UAAU,CAAC,KAAK,EAAY,KAAK,MAAM,OAAO,QAAQ,CAAC,QAAQ,MAAM,EAAE,aAAa,CAAC,cAAc,YAAY,EAAE,aAAa,QAAQ,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,KAAK,EAAY,MAAM,MAAM,QAAQ,aAAa,UAAU,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,YAAY,aAAa,EAAE,IAAI,EAAE,IAAI,GAAG,KAAK,GAAG,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,aAAa,aAAa,EAAE,IAAI,IAAI,IAAI,GAAG,KAAK,GAAG,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,aAAa,aAAa,EAAE,IAAI,IAAI,IAAI,GAAG,KAAK,GAAG,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,aAAa,aAAa,EAAE,IAAI,IAAI,IAAI,GAAG,KAAK,GAAG,OAAO,GAAG,CAAC,EAAE,QAAQ,YAAY,GAAG,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,WAAW,aAAa,EAAE,IAAI,EAAE,IAAI,IAAI,KAAK,GAAG,YAAY,8BAA8B,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,QAAQ,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,GAAG,YAAY,0BAA0B,OAAO,GAAG,CAAC,EAAE,OAAO,EAC/zC,MAAM,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,aAAa,aAAa,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,EAAE,YAAY,sBAAsB,OAAO,GAAG,CAAC,EAAE,SAAS,EAAE,YAAY,MAAM,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,WAAW,aAAa,GAAG,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,YAAY,uBAAuB,OAAO,GAAG,CAAC,EAAE,SAAS,EAAE,YAAY,MAAM,EAAE,QAAQ,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,WAAW,aAAa,EAAE,IAAI,IAAI,IAAI,GAAG,KAAK,GAAG,OAAO,GAAG,CAAC,EAAE,SAAS,EAAE,YAAY,MAAM,EAAE,QAAQ,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,WAAW,aAAa,EAAE,IAAI,IAAI,IAAI,GAAG,KAAK,GAAG,OAAO,GAAG,CAAC,EAAE,SAAS,EAAE,YAAY,MAAM,EAAE,QAAQ,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,WAAW,aAAa,EAAE,IAAI,IAAI,IAAI,GAAG,KAAK,GAAG,OAAO,GAAG,CAAC,EAAE,SAAS,EAAE,YAAY,OAAO,YAAY,GAAG,EAAE,WAAW,CAAC,KAAK,EAAY,QAAQ,MAAM,cAAc,aAAa,GAAM,aAAa,KAAK,cAAc,MAAM,OAAO,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,EACp9B,OAAO,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,SAAS,CAAC,WAAW,CAAC,KAAK,EAAY,KAAK,MAAM,OAAO,QAAQ,CAAC,cAAc,eAAe,QAAQ,EAAE,aAAa,CAAC,cAAc,eAAe,QAAQ,EAAE,aAAa,cAAc,YAAY,0BAA0B,EAAE,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,aAAa,EAAE,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,eAAe,GAAK,YAAY,qBAAqB,OAAO,GAAG,EAAE,aAAa,cAAc,EAAE,aAAa,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,iBAAiB,aAAa,KAAK,IAAI,EAAE,IAAI,GAAG,KAAK,KAAK,YAAY,6BAA6B,OAAO,GAAG,EAAE,aAAa,QAAQ,EAAE,EAAE,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,IAAI,aAAa,GAAG,IAAI,IAAI,IAAI,GAAG,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,IAAI,aAAa,EAAE,IAAI,IAAI,IAAI,GAAG,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,IAAI,aAAa,GAAG,IAAI,IAAI,IAAI,GAAG,KAAK,EAAE,EAC/6B,IAAI,CAAC,KAAK,EAAY,QAAQ,MAAM,iBAAiB,aAAa,GAAM,aAAa,KAAK,cAAc,MAAM,YAAY,kBAAkB,OAAO,GAAG,EAAE,aAAa,cAAc,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,YAAY,aAAa,GAAG,IAAI,GAAG,IAAI,IAAI,KAAK,GAAG,YAAY,yBAAyB,OAAO,GAAG,CAAC,EAAE,KAAK,EAAE,aAAa,cAAc,EAAE,YAAY,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,eAAe,aAAa,KAAK,IAAI,EAAE,IAAI,GAAG,KAAK,KAAK,YAAY,qBAAqB,OAAO,GAAG,CAAC,EAAE,KAAK,EAAE,aAAa,cAAc,EAAE,WAAW,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,eAAe,aAAa,IAAI,IAAI,EAAE,IAAI,GAAG,KAAK,KAAK,YAAY,yBAAyB,OAAO,GAAG,CAAC,EAAE,KAAK,EAAE,aAAa,cAAc,CAAC,CAAC,EAC9wB,YAAY,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,SAAS,CAAC,KAAK,CAAC,KAAK,EAAY,QAAQ,MAAM,SAAS,aAAa,GAAK,aAAa,KAAK,cAAc,MAAM,YAAY,qBAAqB,EAAE,YAAY,CAAC,KAAK,EAAY,QAAQ,MAAM,eAAe,aAAa,GAAK,aAAa,SAAS,cAAc,MAAM,YAAY,uBAAuB,EAAE,OAAO,CAAC,KAAK,EAAY,OAAO,MAAM,UAAU,aAAa,IAAI,IAAI,GAAG,IAAI,EAAE,KAAK,GAAG,eAAe,GAAK,OAAO,GAAG,CAAC,EAAE,KAAK,YAAY,sBAAsB,EAAE,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,aAAa,IAAI,IAAI,GAAG,IAAI,EAAE,KAAK,IAAI,eAAe,GAAK,OAAO,GAAG,CAAC,EAAE,KAAK,YAAY,sBAAsB,EAAE,cAAc,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,aAAa,IAAI,IAAI,EAAE,IAAI,KAAK,KAAK,IAAI,eAAe,GAAK,OAAO,GAAG,CAAC,EAAE,KAAK,YAAY,0BAA0B,EAAE,UAAU,CAAC,KAAK,EAAY,QAAQ,MAAM,aAAa,aAAa,GAAK,aAAa,KAAK,cAAc,MAAM,OAAO,GAAG,CAAC,EAAE,KAAK,YAAY,yBAAyB,EAAE,UAAU,CAAC,KAAK,EAAY,QAAQ,MAAM,YAAY,aAAa,GAAM,aAAa,KAAK,cAAc,MAAM,OAAO,GAAG,CAAC,EAAE,KAAK,YAAY,oBAAoB,EAAE,YAAY,CAAC,KAAK,EAAY,QAAQ,MAAM,eAAe,aAAa,GAAK,aAAa,KAAK,cAAc,MAAM,OAAO,GAAG,CAAC,EAAE,KAAK,YAAY,uBAAuB,EAAE,eAAe,CAAC,KAAK,EAAY,QAAQ,MAAM,kBAAkB,aAAa,GAAK,aAAa,KAAK,cAAc,MAAM,OAAO,GAAG,CAAC,EAAE,KAAK,YAAY,sBAAsB,EAAE,MAAM,CAAC,KAAK,EAAY,QAAQ,MAAM,aAAa,aAAa,GAAM,aAAa,MAAM,cAAc,MAAM,OAAO,GAAG,CAAC,EAAE,KAAK,YAAY,uBAAuB,CAAC,CAAC,EAC3qD,GAAG,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,SAAS,CAAC,UAAU,CAAC,KAAK,EAAY,QAAQ,MAAM,gBAAgB,aAAa,GAAK,aAAa,OAAO,cAAc,MAAM,EAAE,WAAW,CAAC,KAAK,EAAY,QAAQ,MAAM,cAAc,aAAa,GAAM,aAAa,KAAK,cAAc,MAAM,YAAY,sBAAsB,EAAE,aAAa,CAAC,KAAK,EAAY,QAAQ,MAAM,gBAAgB,aAAa,GAAM,aAAa,OAAO,cAAc,OAAO,YAAY,yBAAyB,EAAE,WAAW,CAAC,KAAK,EAAY,KAAK,MAAM,cAAc,QAAQ,CAAC,MAAM,KAAK,IAAI,EAAE,aAAa,CAAC,MAAM,KAAK,IAAI,EAAE,aAAa,MAAM,OAAO,GAAG,CAAC,EAAE,YAAY,EAAE,SAAS,CAAC,KAAK,EAAY,QAAQ,MAAM,OAAO,aAAa,GAAM,aAAa,OAAO,cAAc,OAAO,YAAY,gBAAgB,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,YAAY,aAAa,GAAG,IAAI,EAAE,IAAI,IAAI,KAAK,EAAE,OAAO,GAAG,CAAC,EAAE,SAAS,YAAY,sBAAsB,EAAE,cAAc,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,iBAAiB,aAAa,GAAG,IAAI,EAAE,IAAI,IAAI,KAAK,EAAE,OAAO,GAAG,CAAC,EAAE,SAAS,YAAY,0BAA0B,EAAE,WAAW,CAAC,KAAK,EAAY,MAAM,MAAM,eAAe,aAAa,yBAAyB,OAAO,GAAG,CAAC,EAAE,SAAS,YAAY,qBAAqB,EAAE,WAAW,CAAC,KAAK,EAAY,MAAM,MAAM,eAAe,aAAa,wBAAwB,OAAO,GAAG,CAAC,EAAE,SAAS,YAAY,kBAAkB,EAAE,SAAS,CAAC,KAAK,EAAY,QAAQ,MAAM,OAAO,aAAa,GAAM,aAAa,OAAO,cAAc,OAAO,YAAY,sBAAsB,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,YAAY,aAAa,EAAE,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,OAAO,GAAG,CAAC,EAAE,SAAS,YAAY,sBAAsB,EAAE,cAAc,CAAC,KAAK,EAAY,QAAQ,MAAM,aAAa,aAAa,GAAM,aAAa,OAAO,cAAc,OAAO,YAAY,sBAAsB,EAAE,cAAc,CAAC,KAAK,EAAY,OAAO,eAAe,GAAK,MAAM,kBAAkB,aAAa,EAAE,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,OAAO,GAAG,CAAC,EAAE,cAAc,YAAY,4BAA4B,EAAE,aAAa,CAAC,KAAK,EAAY,QAAQ,MAAM,iBAAiB,aAAa,GAAM,YAAY,uBAAuB,CAAC,CAAC,EACnpE,kBAAkB,CAAC,KAAK,EAAY,aAAa,MAAM,qBAAqB,EAAE,gBAAgB,CAAC,KAAK,EAAY,aAAa,MAAM,mBAAmB,EAAE,wBAAwB,CAAC,KAAK,EAAY,aAAa,MAAM,yBAAyB,EAAE,aAAa,CAAC,KAAK,EAAY,aAAa,MAAM,aAAa,CAAC,EAElO,GAAU,CAAC,gBAAgB,CAAC,SAAS,WAAW,KAAK,EAAE,IAAI,EAAE,SAAS,UAAU,cAAc,MAAM,EAAE,aAAa,CAAC,SAAS,QAAQ,KAAK,GAAG,IAAI,GAAG,OAAO,KAAK,WAAW,mBAAmB,MAAM,OAAO,OAAO,+BAA+B,aAAa,EAAE,QAAQ,WAAW,SAAS,GAAG,WAAW,YAAY,cAAc,OAAO,WAAW,WAAW,SAAS,GAAG,EAAE,WAAW,CAAC,WAAW,IAAI,aAAa,CAAC,EAAE,UAAU,CAAC,MAAM,MAAM,EAAE,eAAe,CAAC,MAAM,UAAU,WAAW,GAAG,EAAE,WAAW,CAAC,WAAW,MAAM,EAAE,WAAW,CAAC,WAAW,OAAO,SAAS,CAAC,EAAE,aAAa,CAAC,SAAS,QAAQ,MAAM,GAAG,IAAI,GAAG,UAAU,OAAO,UAAU,OAAO,SAAS,IAAI,SAAS,IAAI,QAAQ,QAAQ,MAAM,yBAAyB,WAAW,mBAAmB,OAAO,mCAAmC,aAAa,EAAE,eAAe,aAAa,SAAS,GAAG,WAAW,wBAAwB,WAAW,IAAI,cAAc,MAAM,EAAE,YAAY,CAAC,QAAQ,eAAe,SAAS,GAAG,MAAM,yBAAyB,aAAa,kCAAkC,aAAa,EAAE,QAAQ,OAAO,IAAI,CAAC,EAAE,UAAU,CAAC,WAAW,SAAS,SAAS,SAAS,aAAa,WAAW,QAAQ,OAAO,WAAW,SAAS,IAAI,CAAC,EAAE,SAAS,CAAC,MAAM,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,cAAc,CAAC,SAAS,SAAS,aAAa,UAAU,CAAC,KC5Cn1C,SAAgB,GAAa,EAAI,CAAC,MAAM,GAAG,EAAI,eAAe,GAAG,EAAI,gBAAgB,GAAG,EAAI,gBAAgB,GAAG,EAAI,oBAAoB,GAAG,EAAI,YAAY,GAAG,EAAI,iBAAiB,GAAG,EAAI,UAAU,GAAG,EAAI,UAAU,GAAG,EAAI,UAAU,GAAG,EAAI,mBAAmB,GAAG,EAAI,aAAa,GAAG,EAAI,UAAU,GAAG,EAAI,IAAI,GAAG,EAAI,YAAY,GAAG,EAAI,eAAe,GAAG,EAAI,MAAM,GAAG,EAAI,eAAe,GAAG,EAAI,WAAW,GAAG,EAAI,gBAAgB,GAAG,EAAI,kBAAkB,GAAG,EAAI,cAAc,GAAG,EAAI,aAAa,GAAG,EAAI,SAAU,CAAC,SAAgB,GAAa,EAAI,CAAC,IAAI,EAAE,GAAG,EAAI,sBAAsB,GAAG,EAAI,0BAA0B,GAAG,EAAI,sBAAsB,GAAG,EAAI,aAAa,GAAG,EAAI,aAAa,GAAG,EAAI,aAAa,GAAG,EAAI,cAAc,GAAG,EAAI,cAAc,GAAG,EAAI,WAAW,GAAG,EAAI,mBAAmB,GAAG,EAAI,aAAa,OAAQ,IAAI,IAAM,KAAM,EAAI,YAAiB,IAAY,GAAG,OAAO,EAAG,QAAQ,GAAG,EAAG,UAAU,GAAG,EAAG,MAAM,GAAG,EAAG,UAAU,GAAG,EAAG,KAAK,GAAG,EAAG,KAAK,GAAG,EAAG,KAAK,GAAG,EAAG,SAAS,GAAG,EAAG,MAAM,GAAG,EAAG,MAAM,GAAG,EAAG,SAAS,GAAG,EAAG,QAAQ,GAAG,EAAG,QAAQ,GAAG,EAAG,QAAQ,GAAG,EAAG,cAAe,OAAO,CAAE,CAAC,SAAgB,GAAQ,EAAI,CAAC,MAAM,GAAG,EAAI,kBAAkB,GAAG,EAAI,gBAAgB,GAAG,EAAI,kBAAkB,GAAG,EAAI,WAAW,GAAG,EAAI,eAAgB,CAAC,SAAgB,GAAY,EAAI,CAAC,MAAM,GAAG,EAAI,aAAa,GAAG,EAAI,cAAc,GAAG,EAAI,eAAe,GAAG,EAAI,YAAY,GAAG,EAAI,YAAY,GAAG,EAAI,SAAS,GAAG,EAAI,WAAW,GAAG,EAAI,mBAAmB,GAAG,EAAI,WAAW,GAAG,EAAI,SAAS,GAAG,EAAI,WAAW,GAAG,EAAI,eAAe,GAAG,EAAI,eAAe,GAAG,EAAI,iBAAiB,GAAG,EAAI,0BAA0B,GAAG,EAAI,4BAA4B,GAAG,EAAI,gBAAgB,GAAG,EAAI,mBAAmB,GAAG,EAAI,eAAe,GAAG,EAAI,cAAc,GAAG,EAAI,aAAa,GAAG,EAAI,gBAAgB,GAAG,EAAI,YAAY,GAAG,EAAI,kBAAkB,GAAG,EAAI,qBAAqB,GAAG,EAAI,qBAAqB,GAAG,EAAI,iBAAiB,GAAG,EAAI,gBAAgB,GAAG,EAAI,iBAAiB,GAAG,EAAI,WAAW,GAAG,EAAI,WAAW,GAAG,EAAI,gBAAgB,GAAG,EAAI,gBAAgB,GAAG,EAAI,UAAU,GAAG,EAAI,SAAS,GAAG,EAAI,YAAY,GAAG,EAAI,YAAa,CAAC,SAAgB,GAAiB,EAAI,CAAC,IAAI,EAAE,CAAC,EAAI,aAAa,EAAI,WAAW,EAAI,aAAa,EAAI,aAAa,EAAI,aAAa,EAAI,eAAe,EAAI,eAAe,EAAI,eAAe,EAAI,gBAAgB,EAAI,iBAAiB,EAAI,WAAW,EAAI,oBAAoB,EAAI,mBAAmB,EAAI,cAAc,EAAI,cAAc,EAAI,cAAc,EAAI,YAAY,EAAI,cAAc,EAAI,cAAc,EAAI,cAAc,EAAI,mBAAmB,EAAI,kBAAkB,EAAI,kBAAkB,EAAI,sBAAsB,EAAI,0BAA0B,EAAI,gBAAgB,EAAI,gBAAgB,EAAI,gBAAgB,EAAI,UAAU,EAAI,IAAI,EAAI,sBAAsB,EAAI,gBAAgB,EAAI,oBAAoB,EAAI,kBAAkB,EAAI,sBAAsB,EAAI,sBAAsB,EAAI,sBAAsB,EAAI,+BAA+B,EAAI,2BAA2B,EAAI,wBAAwB,EAAI,wBAAwB,EAAI,wBAAwB,EAAI,oBAAoB,EAAI,sBAAsB,EAAI,sBAAsB,EAAI,qBAAqB,CAAC,CAAC,KAAK,GAAG,EAAE,GAAG,EAAI,eAAe,OAAQ,IAAI,IAAM,KAAQ,EAAI,cAAmB,IAAc,GAAG,OAAO,EAAK,QAAQ,GAAG,EAAK,MAAM,GAAG,EAAK,KAAK,GAAG,EAAK,KAAK,GAAG,EAAK,KAAK,GAAG,EAAK,KAAK,GAAG,EAAK,KAAK,GAAG,EAAK,QAAS,OAAO,CAAE,CAAC,SAAgB,GAAgB,EAAI,CAAC,OAAO,GAAa,CAAG,EAAE,KAAK,GAAa,CAAG,EAAE,KAAK,GAAQ,CAAG,EAAE,KAAK,GAAY,CAAG,CAAE,oBCApyG,SAAgB,GAAmB,EAAW,EAAS,CAAC,IAAM,EAAY,OAAO,GAAU,EAAE,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,EAAY,OAAO,KAAK,IAAM,EAAU,EAAY,YAAY,EAAE,OAAO,EAAW,KAAK,GAAG,EAAE,OAAO,CAAW,GAAG,EAAW,KAAK,GAAG,EAAE,KAAK,YAAY,IAAI,CAAS,GAAG,EAAW,KAAK,GAAG,EAAE,KAAK,YAAY,CAAC,CAAC,SAAS,CAAS,CAAC,GAAG,IAAK,CAAC,SAAgB,GAAwB,EAAO,EAAS,CAAI,IAAW,QAAQ,EAAO,QAAQC,GAAe,CAAC,EAAE,EAAO,kBAAkB,IAAc,IAAW,YAAY,EAAO,QAAQC,GAAmB,GAAQ,EAAE,EAAO,kBAAkB,KAAY,EAAO,QAAQC,GAAiB,GAAQ,EAAE,EAAO,kBAAkB,GAAO,CAAC,SAAgB,GAAoC,EAAO,EAAM,CAAK,IAAmB,EAAO,6BAA6B,aAAa,EAAO,2BAA2B,EAAM,EAAO,gCAAgC,GAAO,EAAM,oBAAoB,WAAW,EAAO,8BAA8B,EAAG,EAAO,+BAA+B,KAAK,EAAO,6BAA6B,KAAK,EAAO,8BAA8B,KAAK,EAAO,+BAA+B,KAAK,EAAO,4BAA4B,KAAK,CAAC,SAAgB,GAA+B,EAAO,CAAC,IAAM,EAAa,GAAQ,UAAU,CAAC,EAAE,UAAU,EAAE,GAAG,CAAC,OAAO,SAAS,CAAY,GAAG,GAAc,EAAE,MAAO,GAAM,IAAM,EAAQ,KAAK,IAAI,KAAK,EAAa,IAAI,EAAqF,OAAnE,EAAO,WAAW,GAAe,GAAS,EAAO,MAAM,IAAI,GAAe,EAAO,MAAM,IAAI,EAAa,CAAQ,CAAC,SAAgB,GAAkC,EAAO,EAAW,EAAS,CAAoS,OAAhS,EAAO,4BAA4B,GAAY,EAAO,+BAA+B,KAAU,EAAO,0BAA0B,EAAW,EAAO,6BAA6B,EAAS,EAAO,uBAAuB,GAAO,CAAC,EAAO,2BAA2B,EAAW,IAAW,CAAK,CAAE,GAAU,EAAO,sBAAuB,CAAC,SAAgB,GAA2B,EAAO,EAAM,EAAO,EAAW,CAAC,GAAG,CAAC,GAAQ,CAAC,GAAO,CAAC,GAAQ,CAAC,EAAW,OAAO,GAAoC,EAAO,CAAK,EAAE,IAAM,EAAS,GAAK,CAAI,EAAO,+BAA+B,IAAc,GAAoC,EAAO,CAAK,EAAE,EAAW,CAAG,EAAE,EAAQ,EAAW,GAAK,CAAI,GAAK,SAAS,GAAc,EAAS,CAAG,CAAE,EAAE,EAAO,+BAA+B,EAAW,EAAO,6BAA6B,EAAO,EAAO,+BAA+B,EAAW,EAAM,iBAAiB,WAAW,CAAU,EAEzjF,IAAM,EAAa,EAAO,UAAU,CAAC,EAAE,UAAU,EAAE,GAAG,OAAO,SAAS,CAAY,GAAG,EAAa,EAAE,CAAC,GAAG,GAA+B,CAAM,GAAG,CAAC,EAAO,YAAY,EAAE,CAAC,EAAO,4BAA4B,eAAe,CAAC,EAAS,CAAC,SAAO,KAAK,uBAAuB,CAAC,CAAE,EAAE,CAAC,EAAE,MAAO,CAAC,IAAM,EAAU,KAAK,IAAI,IAAI,GAAc,EAAO,MAAM,EAAE,EAAQ,EAAM,KAAK,IAAI,KAAK,KAAK,KAAK,EAAO,WAAW,IAAI,EAAM,WAAW,EAAE,CAAC,EAAE,EAAO,4BAA4B,eAAe,CAAC,EAAS,CAAC,SAAO,KAAK,uBAAuB,CAAC,CAAE,GAAG,EAAU,EAAM,KAAK,GAAG,CAAE,CAAC,CAAC,SAAgB,GAAkC,EAAO,EAAM,EAAQ,EAAW,CAAC,IAAM,GAAc,GAAS,CAAC,EAAA,CAAG,OAAO,OAAO,EAAE,GAAG,CAAC,GAAQ,CAAC,GAAO,CAAC,EAAa,QAAQ,CAAC,EAAW,OAAO,GAAoC,EAAO,CAAK,EAAE,IAAM,EAAQ,IAAI,IAAI,CAAY,EAAQ,EAAS,GAAK,CAAI,EAAO,gCAAgC,IAAe,GAAoC,EAAO,CAAK,EAAE,EAAW,CAAG,EAAE,EAAQ,EAAW,GAAK,CAAK,EAAQ,IAAI,GAAK,MAAM,IAAS,EAAQ,OAAO,EAAI,MAAM,EAAK,EAAQ,OAAO,GAAE,EAAS,CAAG,EAAE,EAAE,EAAO,+BAA+B,EAAW,EAAO,8BAA8B,EAAQ,EAAO,+BAA+B,EAAW,EAAM,iBAAiB,WAAW,CAAU,EAAE,IAAI,EAAa,EAAM,EAAc,EAAE,IAAI,IAAM,KAAU,EAAa,CAAC,GAAG,GAA+B,CAAM,GAAG,CAAC,EAAO,YAAY,EAAE,CAAC,EAAQ,OAAO,CAAM,EAAE,IAAgB,QAAS,CAAC,IAAM,EAAa,EAAO,UAAU,CAAC,EAAE,UAAU,EAAK,CAAC,OAAO,SAAS,CAAY,GAAG,GAAc,IAAW,EAAa,KAAK,IAAI,EAAa,KAAK,IAAI,IAAI,GAAc,EAAO,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,EAAQ,OAAO,GAAG,EAAc,EAAE,CAAC,EAAO,4BAA4B,eAAe,EAAS,CAAC,QAAQ,EAAa,KAAK,2BAA2B,CAAC,EAAE,CAAC,EAAE,MAAO,CAAC,GAAG,EAAa,EAAE,CAAC,IAAM,EAAM,KAAK,IAAI,KAAK,KAAK,KAAK,EAAa,EAAE,CAAC,WAAW,IAAI,EAAM,WAAW,EAAE,CAAC,EAAE,EAAO,4BAA4B,eAAe,EAAS,CAAC,QAAQ,EAAa,KAAK,2BAA2B,CAAC,GAAG,EAAa,EAAM,KAAK,GAAG,CAAE,CAAC,CAAC,SAAgB,GAAoB,EAAW,EAAW,CAAC,IAAM,EAAS,GAAY,UAAU,EAAQ,EAAS,GAAY,UAAU,EAAK,CAAC,GAAU,UAAU,CAAC,GAAU,WAA6G,EAAW,MAAlF,EAAW,KAAK,EAAS,SAAS,EAAS,UAAU,EAAS,SAAwC,EAAS,SAAS,EAAS,SAAS,CAAC,SAAgB,GAAsB,EAAO,EAAM,EAAW,EAAI,CAAkF,GAA9E,CAAC,GAAQ,CAAC,GAAO,CAAC,GAAY,QAAiB,CAAC,EAAI,oBAA6B,EAAO,qBAAqB,OAAO,EAAO,qBAAqB,GAAK,IAAM,EAAM,EAAW,MAAM,EAAQ,EAAU,CAAC,SAAS,OAAO,UAAU,EAAM,EAAI,EAAQ,MAAa,CAAC,GAAG,CAAC,EAAO,sBAAsB,CAAC,EAAM,OAAO,IAAM,EAAK,EAAM,KAAW,KAEnxF,GAAM,WAAW,CAAI,EAAE,IAAI,IAAM,KAAY,EAAW,EAAO,uBAAuB,MAAM,GAAG,EAAK,KAAK,GAAG,GAAU,EAAG,sBAAsB,CAAQ,CAAlI,CAAoI,EAAE,sBAAsB,CAAQ,CAAE,CAIxL,SAAgB,GAAgB,EAAM,EAAW,EAAK,EAAS,EAAQ,CAAC,EAAE,CAAI,MAAC,GAAO,CAAC,GAAY,QAAc,GAAG,IAAO,UAAU,EAAS,CAAC,IAAM,EAAY,OAAO,CAAQ,CAAC,CAAC,KAAK,EAAQ,EAAK,GAAmB,EAAW,CAAW,EAAE,GAAG,CAAC,EAAK,CAAI,EAAQ,QAAQ,GAAoC,EAAQ,OAAO,CAAK,EAAG,QAAQ,KAAK,qBAAqB,EAAY,yBAAyB,EAAW,IAAI,GAAG,EAAE,IAAI,CAAC,EAAE,MAAO,CAAC,IAAM,EAAc,KAAK,IAAI,EAAE,EAAQ,eAAe,CAAC,EAAQ,EAAO,EAAQ,OAAa,EAAS,EAAQ,UAAU,SAAe,EAAU,GAAG,EAAK,KAAK,GAAG,IAAiB,EAAU,IAAW,QAAO,EAAQ,WAAc,GAAS,EAAW,UAAU,EAAU,GAAG,EAAc,GAAG,KAAQ,KAAS,GAAG,KAAQ,UAAc,GAAG,KAAQ,gBAAoB,GAAG,IAAe,GAAQ,EAAO,2BAA2B,IAAY,EAAO,2BAA2B,IAAI,IAAM,EAAqB,IAAW,QAAQ,GAAQ,6BAA6B,EAAW,GAAG,EAAc,GAAG,EAAO,CAAC,GAAG,EAAO,sBAAsB,EAAU,CAAC,IAAM,EAAa,EAAO,wBAAwB,EAAM,WAAW,CAAI,EAAQ,EAAY,EAAO,2BAA2B,EAAgf,GAAre,GAAwB,EAAa,CAAQ,EAAE,EAAa,QAAQ,GAAU,IAAW,QAAQ,GAA+B,CAAY,IAAI,EAAa,OAAO,IAAO,EAAa,mBAAmB,CAAC,EAAE,EAAa,sBAAsB,CAAC,EAAK,EAAQ,iBAAiB,CAAC,GAAa,IAAW,QAAQ,CAAC,GAAa,EAAa,MAAM,EAAE,EAAa,KAAK,GAAW,CAAC,EAAa,UAAU,GAAG,EAAE,IAAW,QAAQ,GAA+B,CAAY,IAAI,EAAa,KAAK,EAAM,IAAW,QAAQ,EAAQ,gBAAgB,CAAC,EAAqB,CAAC,IAAM,EAAa,GAAkC,EAAO,EAAW,EAAQ,cAAc,GAAK,EAAO,+BAA+B,GAAc,EAAO,iCAAiC,IAAc,GAA2B,EAAO,EAAM,EAAa,CAAY,CAAG,MAAM,GAAoC,EAAO,CAAK,EAAG,EAAO,uBAAuB,EAAa,EAAO,yBAAyB,EAAK,KAAK,EAAO,yBAAyB,EAAW,MAAO,CAAC,IAAM,EAAW,EAAM,WAAW,CAAI,EAAQ,EAAW,EAAO,uBAA6B,EAAY,CAAC,CAAC,GAAY,IAAa,EAAiB,EAAc,EAAO,uBAAuB,IAAI,CAAS,EAAE,AAAkC,EAAO,wBAAsB,IAAI,IAAK,GAAwB,EAAW,CAAQ,EAAE,EAAW,QAAQ,GAAU,IAAW,QAAQ,GAA+B,CAAU,IAAI,EAAW,OAAO,IAAO,EAAW,mBAAmB,CAAC,EAAE,EAAW,sBAAsB,CAAC,GAAK,EAAQ,iBAAiB,IAAW,QAAQ,CAAC,IAAe,EAAW,MAAM,EAAM,EAAQ,WAAW,GAAY,IAAa,GAAY,CAAC,EAAQ,iBAAiB,GAAoB,EAAW,CAAU,EAAG,EAAW,KAAK,EAAK,IAAW,QAAQ,EAAQ,eAA+G,GAA2B,EAAO,EAAM,EAApH,GAAkC,EAAO,EAAW,EAAQ,cAA8E,CAAC,EAAQ,GAAoC,EAAO,CAAK,EAAM,EAAa,EAAW,YAAY,EAAW,EAAc,CAAC,CAAC,EAAQ,IAAI,EAAQ,EAAW,OAAO,CAAa,EAAG,EAAO,sBAAsB,IAAI,CAAS,EAAE,EAAO,uBAAuB,EAAW,EAAO,oBAAoB,EAAU,EAAO,yBAAyB,EAAK,KAAK,EAAO,yBAAyB,EAAW,MAAO,CAAC,IAAM,EAAO,EAAM,WAAW,CAAI,EAAE,GAAG,GAAQ,EAAO,sBAAsB,EAAU,CAAC,IAAM,EAAY,EAAO,2BAA2B,EAA8a,GAAna,GAAwB,EAAO,CAAQ,EAAE,EAAO,QAAQ,GAAU,IAAW,QAAQ,GAA+B,CAAM,IAAI,EAAO,OAAO,IAAO,EAAO,mBAAmB,CAAC,EAAE,EAAO,sBAAsB,CAAC,EAAK,EAAQ,iBAAiB,CAAC,GAAa,IAAW,QAAQ,CAAC,GAAa,EAAO,MAAM,EAAE,EAAO,KAAK,GAAW,CAAC,EAAO,UAAU,GAAG,EAAE,IAAW,QAAQ,GAA+B,CAAM,IAAI,EAAO,KAAK,EAAM,IAAW,QAAQ,EAAQ,gBAAgB,CAAC,EAAqB,CAAC,IAAM,EAAa,GAAkC,EAAO,EAAW,EAAQ,cAAc,GAAK,EAAO,+BAA+B,GAAQ,EAAO,iCAAiC,IAAc,GAA2B,EAAO,EAAM,EAAO,CAAY,CAAG,MAAM,GAAoC,EAAO,CAAK,EAAG,EAAO,uBAAuB,EAAO,EAAO,oBAAoB,EAAU,EAAO,yBAAyB,EAAK,KAAK,EAAO,yBAAyB,EAAW,MAAO,CAAI,GAAQ,wBAAwB,EAAO,yBAAyB,GAAQ,EAAO,uBAAuB,KAAK,EAAG,GAAwB,EAAO,CAAQ,EAAE,EAAO,QAAQ,GAAU,IAAW,QAAQ,GAA+B,CAAM,IAAI,EAAO,OAAO,IAAO,EAAO,mBAAmB,CAAC,EAAE,EAAO,sBAAsB,CAAC,GAAK,EAAQ,iBAAiB,IAAW,QAAQ,CAAC,EAAO,UAAU,IAAG,EAAO,MAAM,EAAG,EAAO,KAAK,EAAK,IAAW,IAAW,QAAQ,EAAQ,eAA+G,GAA2B,EAAO,EAAM,EAApH,GAAkC,EAAO,EAAW,EAAQ,cAA0E,CAAC,EAAQ,GAAoC,EAAO,CAAK,EAAG,EAAO,uBAAuB,EAAO,EAAO,oBAAoB,GAAG,EAAK,KAAK,GAAG,IAAW,EAAO,yBAAyB,EAAK,KAAK,EAAO,yBAAyB,EAAY,KAAK,CAAC,IAAM,EAAS,EAAQ,UAAU,SAAe,EAAU,IAAW,QAAO,EAAQ,WAAc,GAAS,EAAW,OAAO,EAAS,GAAG,KAAQ,eAAmB,GAAG,IAAmI,GAApH,EAAQ,QAAQ,EAAQ,OAAO,2BAA2B,IAAY,EAAQ,OAAO,2BAA2B,IAAO,EAAQ,QAAQ,sBAAsB,OAAO,EAAQ,QAAQ,2BAA2B,EAAY,OAAQ,EAAM,cAAc,EAAE,IAAM,EAAQ,CAAC,EACr3L,IAAI,IAAM,KAAQ,EAAW,CAAC,IAAM,EAAO,EAAM,WAAW,CAAI,EAAE,GAAwB,EAAO,CAAQ,EAAE,EAAO,QAAQ,GAAK,EAAO,OAAO,GAAM,EAAO,MAAM,CAAC,CAAC,KAAK,EAAE,EAAQ,KAAK,CAAM,CAAE,CAAC,GAAG,EAAQ,OAAO,CAAC,GAAG,IAAW,QAAQ,EAAQ,eAAe,CAAC,IAAM,EAAa,GAAkC,EAAQ,OAAO,EAAW,EAAQ,cAAc,EAAE,GAAkC,EAAQ,OAAO,EAAM,EAAQ,CAAY,CAAE,MAAM,GAAoC,EAAQ,OAAO,CAAK,EAAG,EAAQ,OAAO,uBAAuB,KAAK,EAAQ,OAAO,oBAAoB,MAAM,EAAQ,OAAO,yBAAyB,GAAG,EAAQ,OAAO,yBAAyB,CAAW,CAAC,CAAC,CAA2D,SAAgB,GAA0B,EAAO,EAAI,EAAc,CAAC,MAAM,CAAC,SAAO,cAAc,GAAe,EAAI,uBAAuB,KAAK,EAAI,cAAc,UAAU,EAAI,mBAAmB,gBAAgB,EAAI,yBAAyB,SAAS,EAAI,kBAAkB,UAAU,EAAI,oBAAoB,CAAE,CAAC,SAAgB,GAA0B,EAAO,EAAM,CAAwB,GAApB,CAAC,IAAuB,EAAM,WAAW,KAAK,EAAE,MAAO,GAAM,IAAM,EAAU,GAAQ,qBAAqB,GAAG,GAAG,CAAC,EAAU,MAAO,GAAM,GAAG,IAAY,MAAM,MAAO,GAAK,IAAM,EAAO,GAAQ,uBAA+C,OAApB,EAA2B,EAAO,UAAU,IAAO,CAAC,EAAO,OAA7C,EAAoD,mBATnwC,KCCqD,SAAgB,GAAuB,EAAQ,CAAC,GAAoB,CAAQ,CAAsjB,SAAgB,IAA2B,CAAC,IAAM,EAAa,OAAO,kBAAoB,IAAY,IAAIC,GAAwB,KAAQ,GAAa,EAAa,WAAW,CAAC,iBAAiB,OAAO,CAAC,EAAE,IAAM,EAAe,IAAIC,GAAoB,MAAM,CAAC,KAAK,SAAS,EAAI,EAAO,EAAW,EAAQ,CAAC,IAAM,EAAM,EAAI,YAAY,CAAC,CAAC,SAAS,MAAM,GAAG,EAAI,WAAW,oBAAoB,EAAE,GAAG,CAAC,GAAc,EAAO,OAAO,EAAe,KAAK,EAAI,EAAO,EAAW,CAAO,EAAG,IAAM,EAAQ,IAAIC,GAA4S,OAA9R,EAAa,KAAK,EAAI,SAAS,EAAY,CAAC,EAAQ,MAAM,EAAY,EAAQ,YAAY,GAAQ,GAAO,EAAO,CAAO,CAAE,EAAE,EAAW,SAAS,EAAI,CAAC,EAAe,KAAK,EAAI,SAAS,EAAI,CAAC,EAAQ,MAAM,EAAI,MAAM,EAAQ,YAAY,GAAQ,GAAO,EAAO,CAAO,CAAE,EAAE,EAAW,CAAO,CAAE,CAAC,EAAS,CAAQ,CAAC,CAAE,mEAD59C,EAC7F,GAAU,IAAIC,EAA2B,GAAU,IAAIA,EAAqC,IAAIA,EAAyB,GAAoB,KAAgH,IAAIA,EAA4C,IAAIA,EAAqC,IAAIC,GAAwC,IAAIA,GAAyC,IAAIC,GAAyB,GAAS,IAAIC,GAAwB,GAAe,IAAIC,EAAuC,IAAIC,GAAgD,IAAIC,EAA2B,GAAwB,IAAIN,EAA2B,GAAuB,IAAIE,GAAyB,GAAsB,IAAID,GAAo0B,GAAY,IAAI,IAAiB,GAAiB,IAAI,IAAiB,GAAc,IAAI,IAAiB,GAAU,IAAI,IAAiB,GAAa,IAAI,IAAiB,GAAmB,IAAI,QAAqB,GAA6B,IAAIM,EAAY,IAAI,IAAI,GAAG,EAAe,GAAqB,IAAI,OCD34D,SAAS,GAAiB,EAAI,EAAI,EAAM,CAAmI,OAA/H,KAAO,EAAK,OAAO,eAAe,EAAI,EAAI,CAAO,QAAM,WAAW,GAAK,aAAa,GAAK,SAAS,EAAI,CAAC,EAAQ,EAAI,GAAK,EAAc,CAAI,CA8InD,SAAgB,GAA6B,EAAW,CAAC,IAAM,EAAK,IAAI,EAAW,EAAwB,EAAQ,EAAS,EAAK,UAAU,EAAK,UAAU,SAK8G,MALrG,GAAK,YAAY,EAAE,EAAK,YAAY,KAAK,EAAK,SAAS,EAAM,IAAS,CAAC,EAAS,WAAW,MAAM,IAAI,KAAK,IAAI,EAAE,CAAK,EAAE,KAAK,IAAI,EAAE,CAAM,CAAC,CAAE,EAAE,EAAK,cAAc,GAAY,CAAC,EAAK,YAAY,KAAK,IAAI,GAAG,GAAY,CAAC,EAAK,EAAK,aAAY,EAAK,sBAAsB,EAAK,WAAW,CAAE,EAAE,EAAK,sBAAsB,GAAK,CAAC,EAAK,YAAY,EAAI,IAAM,EAAK,KAAK,IAAI,EAAE,OAAO,EAAI,YAAY,GAAG,EAAE,EAAQ,EAAQ,KAAK,IAAI,IAAI,OAAO,EAAI,eAAe,GAAG,CAAC,EAAQ,EAAY,KAAK,IAAI,GAAG,EAAE,EAAQ,GAAG,EAAQ,EAAM,GAAqB,EAAI,gBAAgB,EAGn0B,EAAY,KAAK,IAAI,EAAE,KAAK,MAAM,EAAK,EAAY,EAAK,WAAW,CAAC,EAAQ,EAAa,KAAK,IAAI,EAAE,KAAK,MAAM,EAAK,EAAK,WAAW,CAAC,EAAE,EAAS,MAAM,MAAM,EAAM,EAAS,OAAO,MAAM,IAAI,EAAY,CAAY,EAE1N,EAAS,IAAI,MAAM,EAAE,EAAS,UAAU,MAAM,EAAE,EAAS,aAAa,MAAM,IAAU,OAAO,EAAI,oBAAoB,GAAG,GAAG,GAAG,EAAE,EAAS,SAAS,MAAM,IAAU,OAAO,EAAI,gBAAgB,GAAG,GAAG,GAAG,EAAE,EAAS,QAAQ,MAAM,IAAU,OAAO,EAAI,eAAe,GAAG,GAAG,GAAG,EAAE,EAAS,aAAa,MAAM,IAAI,uBAAuB,QAAW,EAAS,SAAS,MAAM,EAAI,mBAAmB,GAAM,EAAE,CAAE,EAAS,CAAK,CAyHpZ,SAAgB,GAAoB,EAAG,EAAI,CAAC,GAAK,CAAC,OAAO,EAAM,MAAM,EAAK,cAAc,EAAa,UAAU,EAAS,qBAAqB,EAAoB,WAAW,EAAU,WAAW,EAAU,MAAM,GAAM,EAC1N,EAAG,UAAU,YAAY,GAAc,EAAI,cAAc,EAA4B,EAAG,UAAU,oBAAoB,EAAI,SACvH,IAAM,EAAM,QAAQ,EAAI,cAAgB,GAAO,EAAI,eAAc,EAAM,SAAS,EAAI,cAAc,EAAM,UAAU,EAAI,eAAe,EAAM,OAAO,EAAI,aACtJ,IAAM,EAAK,QAAQ,EAAI,WAAc,EAAI,aAAY,EAAK,aAAa,EAAI,WAAW,EAAK,YAAY,EAAI,gBAAgB,EAAK,YAAY,EAAI,kBACnJ,IAAM,EAAI,EAAG,KAAQ,IAAK,EAAI,QAAQ,EAAI,WAAW,EAAI,aAAa,eAAkB,EAAI,YAAW,EAAI,SAAS,MAAS,MAAM,EAAI,SAAS,EAAI,SAAS,SAAY,MAAM,EAAI,YAAY,EAAI,SAAS,QAAW,MAAM,EAAI,aACjO,IAAM,GAAc,EAAI,cAAc,EAAI,YAAY,EAAI,sBAAyB,EAAG,aAAW,EAAG,WAAW,QAAQ,GAAgB,EAAG,gBAAc,EAAG,cAAc,QAAQ,GAC9K,IAAa,EAAa,QAAQ,EAAI,oBAAsB,GAAc,EAAI,qBAAoB,EAAa,SAAS,WAAW,MAAM,EAAI,WAAW,EAAa,SAAS,SAAS,MAAM,EAAI,SAAS,EAAa,SAAS,WAAW,MAAM,EAAI,YACrP,IAAS,EAAS,QAAQ,EAAI,gBAAkB,GAAU,EAAI,iBAAgB,EAAS,SAAS,OAAO,MAAM,EAAI,eAAe,EAAS,SAAS,SAAS,MAAM,EAAI,kBACrK,IAAoB,EAAoB,QAAQ,EAAI,2BAA6B,GAAqB,EAAI,4BAA2B,EAAoB,SAAS,SAAS,MAAM,EAAI,6BACrL,IAAU,EAAU,QAAQ,EAAI,iBAAmB,GAAW,EAAI,kBAAiB,EAAU,SAAS,UAAU,MAAM,EAAI,oBAC1H,IAAU,EAAU,QAAQ,EAAI,gBAAkB,GAAW,EAAI,gBAAgB,EAAU,wBAAwB,CAAG,EACtH,IAAK,EAAK,QAAQ,EAAI,WAAW,wDAvRmQ,KAAwH,EAAc,GAA8B,IAAS,OAAkCE,EAAtBD,EAIhd,GAAyB,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,IAAI,EAAE,WAAW,CAAC,MAAM,IAAIE,EAAc,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,MAAM,IAAIA,EAAc,GAAG,EAAE,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,EAAE,aAAa,CAAC,MAAM,GAAG,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,aAAa;;;;;;MAM9T,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAoIhB,EAAQ,GAAqB,CAAC,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,EAAQ,GAAS,GAAO,KAAK,IAAI,EAAE,KAAK,IAAI,EAAE,CAAK,CAAC,EAMpH,GAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqDsD,GAAe,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,aAAa,wGAAwG,eAAe;;;;;;;;;;;UAW7R,EAAe,GAA0B,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,IAAI,EAAE,SAAS,CAAC,MAAM,IAAI,EAAE,WAAW,CAAC,MAAM,IAAIA,EAAc,EAAE,CAAC,CAAC,CAAC,EAAE,aAAa,wGAAwG,eAAe;;;;;;;;;;;;;;;UAe/Q,EAAe,GAAgB,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,aAAa,wGAAwG,eAAe;;;;;;;;;;;UAW1O,EAIM,GAAmB,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,IAAI,EAAE,OAAO,CAAC,MAAM,IAAI,CAAC,EAAE,aAAa,wGAAwG,eAAe;;;;;;;;UAQnN,EAGM,GAAb,KAA0B,CAAC,QAAQ,EAAE,EAAE,CAAC,KAAK,SAAS,QAAQ,EAAE,CAAC,CAAE,CAAC,OAAO,EAAS,EAAY,EAAW,CAAC,GAAG,CAAC,KAAK,QAAQ,OAAO,KAAK,SAAS,SAAS,SAAS,MAAM,EAAW,QAAQ,IAAM,EAAM,EAAS,gBAAgB,EAAE,EAAS,gBAAgB,KAAK,QAAQ,EAAE,EAAS,MAAM,EAAE,EAAS,OAAO,KAAK,OAAO,KAAK,IAAI,EAAE,EAAS,gBAAgB,CAAK,CAAE,CAAC,SAAS,CAAC,KAAK,SAAS,QAAQ,EAAE,KAAK,QAAQ,SAAS,QAAQ,EAAE,KAAK,SAAS,QAAQ,CAAE,CAAC,YAAY,EAAS,CAAC,GAAiB,KAAK,UAAU,EAAI,EAAE,GAAiB,KAAK,YAAY,EAAK,EAAE,GAAiB,KAAK,iBAAiB,EAAK,EAAE,GAAiB,KAAK,QAAQ,EAAK,EAAE,GAAiB,KAAK,WAAW,IAAK,EAAC,EAAE,GAAiB,KAAK,WAAW,IAAK,EAAC,EAAE,GAAiB,KAAK,UAAU,IAAK,EAAC,EAAE,GAAiB,KAAK,SAAS,IAAK,EAAC,EAAE,GAAiB,KAAK,OAAO,IAAK,EAAC,EAAE,KAAK,SAAS,EAAS,KAAK,SAAS,IAAIC,GAAqB,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,EAAE,aAAa,wGAAwG,eAAe,iGAAiG,UAAU,GAAM,WAAW,EAAK,CAAC,EAAE,IAAM,EAAI,IAAIC,GAAoB,EAAE,CAAC,EAAE,KAAK,QAAQ,IAAIC,GAAW,EAAI,KAAK,QAAQ,EAAE,KAAK,QAAQ,cAAc,GAAM,KAAK,OAAO,IAAIC,GAAY,KAAK,OAAO,IAAI,KAAK,OAAO,EAAE,KAAK,KAAK,IAAIC,GAAyB,GAAG,EAAE,EAAE,GAAG,EAAE,CAAC,CAAE,CAAC,EAAc,GAAmB,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,EAAE,aAAa,wGAAwG,eAAe;;;;;;;;;;;;;UAa3oD,KC1QiG,SAAgB,GAAa,EAAI,CAAC,GAAG,CAAC,EAAI,OAAO,KAAK,IAAM,EAAI,EAAI,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,EAAgG,OAA3F,IAAM,OAAO,IAAM,OAAc,EAAO,IAAM,MAAY,MAAS,IAAM,MAAY,MAAa,IAC9U,CAAC,SAAgB,GAAkB,EAAI,CAAC,GAAG,CAAC,EAAI,OAAO,KAAK,IAAM,EAAI,EAAI,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,EAAqF,OAAhF,IAAM,OAAO,IAAM,OAAO,IAAM,QAAQ,IAAM,QAAQ,IAAM,OAAe,EAAY,IAAK,CAAC,SAAgB,GAA0B,EAAM,CAAC,OAAO,OAAO,GAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,YAAY,CAAE,CAAC,SAAS,GAA+B,EAAM,CAAC,OAAO,OAAO,GAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ,QAAQ,EAAE,CAAE,CAAC,SAAgB,GAAqB,EAAK,CAAC,GAAG,CAAC,EAAK,MAAM,CAAC,EAAE,IAAM,EAAO,CAAC,EAAK,GAAG,EAAK,eAAe,YAAY,EAAE,EAAK,eAAe,kBAAkB,EAAE,EAAK,eAAe,4BAA4B,EAAE,EAAK,eAAe,iBAAiB,EAAE,EAAK,eAAe,WAAW,EAAE,EAAK,eAAe,OAAO,CAAC,EAA+D,OAA1D,EAAK,WAAU,EAAO,KAAK,GAAG,MAAM,KAAK,EAAK,SAAS,CAAC,EAAS,EAAO,OAAO,OAAO,CAAC,CAAC,IAAI,GAAO,GAA0B,CAAK,CAAC,CAAE,CAAuf,SAAgB,GAAsB,EAAM,EAAS,GAAG,CAAC,GAAG,OAAO,GAAQ,UAAU,OAAO,SAAS,CAAK,EAAG,OAAO,KAAK,IAAI,EAAE,KAAK,IAAI,EAAE,CAAK,CAAC,EAAG,IAAM,EAAI,OAAO,GAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,YAAY,EAA0I,OAArI,IAAM,OAAO,IAAM,QAAe,EAAK,IAAM,UAAU,IAAM,MAAa,EAAK,IAAM,UAAU,IAAM,OAAO,IAAM,SAAgB,GAAU,CAAS,CAAC,SAAgB,GAA8B,EAAS,EAAS,KAAK,EAAO,GAAG,CAAC,GAAU,IAAS,OAAY,MAAO,GAAE,IAAM,EAAM,OAAO,GAAU,EAAE,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,EAAM,MAAO,GAAE,IAAM,EAAG,GAAuB,EAAM,CAAQ,EAAE,GAAG,CAAC,EAAG,MAAO,GAAE,IAAM,EAAK,EAAG,wBAAwB,EAAQ,EAAM,EAAO,aAAa,EAAE,GAAG,CAAC,GAAM,CAAC,EAAM,MAAO,GAAE,IAAM,EAAQ,EAAK,IAAI,EAAK,OAAO,GAAsB,CAAM,EAAE,OAAO,KAAK,IAAI,EAAE,KAAK,IAAI,EAAE,EAAE,EAAQ,CAAK,CAAC,CAAE,CAAC,SAAgB,GAA6B,EAAK,EAAS,CAA8F,GAA1F,CAAC,GAAM,EAAK,WAAW,GAAkB,GAAU,EAAS,WAAW,CAAI,GAAkB,EAAK,eAAe,mBAAmB,EAAE,MAAO,GAAM,IAAM,EAAK,EAAK,wBAAwB,EAG73E,GAAG,CAAC,GAAM,EAAK,OAAO,GAAG,EAAK,QAAQ,EAAE,MAAO,GAAM,IAAI,EAAQ,EAAK,KAAM,GAAS,IAAU,SAAS,MAAK,CAAC,GAAG,EAAQ,eAAe,aAAa,IAAI,QAAQ,EAAQ,eAAe,oBAAoB,IAAI,OAAQ,MAAO,GAAO,IAAM,EAAa,IAAS,OAA6C,KAAjC,EAAO,iBAAiB,CAAO,EAAO,GAAG,IAAQ,EAAM,UAAU,QAAQ,EAAM,aAAa,UAAU,OAAO,EAAM,OAAO,IAAI,GAAI,MAAO,GAAO,EAAQ,EAAQ,aAAc,CAAC,MAAO,EAAK,CAAC,SAAgB,GAAsB,EAAS,EAAS,CAAC,IAAM,EAAQ,OAAO,GAAU,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,EAAyB,CAAC,CAAC,QAAQ,GAAO,CAAC,EAAM,EAAM,QAAQ,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,OAAO,EAAE,GAAG,CAAC,EAAQ,OAAO,MAAO,GAAK,IAAI,EAAK,EAAS,KAAM,GAAM,IAAO,SAAS,MAAK,CAAC,IAAM,EAAO,GAAqB,CAAI,EAAE,IAAI,IAAM,KAAU,EAAS,GAAG,EAAO,KAAK,GAAO,IAAQ,CAAM,EAAE,MAAO,GAAM,EAAK,EAAK,aAAc,CAAC,MAAO,EAAM,CAAC,SAAgB,GAAuB,EAAS,EAAS,KAAK,CAAC,GAAG,OAAO,SAAW,IAAY,OAAO,KAAK,IAAM,EAAQ,OAAO,GAAU,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,EAA8B,CAAC,CAAC,OAAO,OAAO,EAAE,GAAG,CAAC,EAAQ,OAAO,OAAO,KAAK,IAAM,EAAgB,SAAS,iBAAiB,wBAAwB,EAAQ,EAAiB,MAAM,KAAK,CAAe,CAAC,CAAC,OAAO,GAAM,GAA6B,EAAK,CAAQ,CAAC,EAItyC,IAAI,IAAM,KAAU,EAAQ,CAAC,IAAM,EAAQ,EAAiB,KAAK,GAAM,EAAK,KAAK,CAAM,EAAE,GAAG,EAAQ,OAAO,EAAQ,IAAM,EAAe,EAAiB,KAAK,GAAM,EAAK,eAAe,iBAAiB,IAAI,CAAM,EAAE,GAAG,EAAe,OAAO,EAE9O,IAAM,EAAa,EAAO,YAAY,EAAQ,EAAc,EAAiB,OAAO,GAAc,GAA0B,EAAK,EAAE,IAAI,GAAc,GAA0B,EAAK,eAAe,iBAAiB,CAAC,IAAI,CAAc,EAAE,GAAG,EAAc,SAAS,EAAE,OAAO,EAAc,EAAG,CAAC,OAAO,IAAK,CAAC,SAAgB,GAAW,EAAE,CAAC,GAAG,CAAC,EAAE,OAAO,IAAIC,EAAY,OAAO,EAAE,GAAG,CAElX,IAAI,EAAE,OAAO,GAAI,SAAS,EAAE,KAAK,EAAE,EACnC,GAAG,OAAO,GAAI,UAAU,EAAE,SAAS,MAAM,EAAE,CAC3C,IAAM,EAAM,EAAE,MAAM,yBAAyB,EAAE,GAAG,GAAO,EAAM,GAAI,EAAE,EAAM,EAAE,CAAC,KAAK,OACnF,OAAO,IAAIA,EAAY,OAAO,CAAG,CAAC,GAAG,OAAO,GAAI,UAAU,EAAE,WAAW,OAAO,EAAE,CAAC,IAAM,EAAM,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,GAAG,EAAE,EAAE,OAAO,EAAM,GAAG,GAAG,EAAM,GAAG,GAAG,EAAM,GAAG,EAAG,CAAC,OAAO,IAAIA,EAAY,CAAC,CAAE,MAAM,CAAC,OAAO,IAAIA,EAAY,OAAO,CAAE,CAAC,uBAf5H,uBCC7F,QAAuB,CAAC,IAAM,EAAU,IAAI,IAAU,EAAa,CAAC,EAAM,EAAO,EAAM,EAAU,GAAM,SAAS,GAAe,CAAC,GAAU,IAAY,OAAY,MAAO,GAAE,IAAM,EAAG,EAAU,WAAW,GAAS,EAAM,iBAAiB,KAAK,CAAE,GAAG,MAAM,KAAK,CAAE,GAAG,EAAU,eAAe,EAAQ,EAAS,6CAA6C,KAAK,CAAE,EAAQ,EAAI,EAAU,cAAc,EAA2D,OAAtD,EAAa,GAAK,EAAE,EAAE,EAAK,EAAgB,GAAK,EAAE,EAAE,EAAS,GAAK,EAAE,EAAE,CAAE,CAAC,IAAM,EAAc,EAAc,EAElgB,SAAS,GAAkB,CAAC,GAAU,IAAS,OAAY,OAAO,EAAiE,IAAM,EAA5C,EAAO,6BAAsD,cAAc,OAAO,OAAO,GAAW,UAAU,EAAS,EAAE,EAAS,CAAc,CAAC,SAAS,GAAgB,CAAC,GAAU,IAAS,OAAa,MAAM,CAAC,QAAQ,GAAM,MAAM,CAAe,EAAG,IAAM,EAAO,EAAO,4BAA+B,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAQ,iBAAiB,MAAM,KAAK,IAAI,IAAI,OAAO,GAAQ,cAAc,GAAG,CAAe,CAAC,CAAE,CAGvf,SAAS,GAAe,CAAC,OAAO,KAAK,KAAK,EAAiB,EAAE,GAAG,EAAE,CAAC,CAAE,CAGrE,IAAM,EAAgB,IACrB,SAAS,EAAU,EAAE,EAAE,CAAC,OAAO,EAAE,OAAO,IAAI,EAAE,OAAO,EAAG,CAAC,SAAS,GAAa,CAAC,EAAU,GAAM,EAAa,OAAO,EAAE,IAAI,IAAM,KAAQ,EAAU,OAAO,EAAE,EAAa,KAAK,CAAI,EAAE,EAAa,KAAK,CAAS,EAAE,IAAM,EAAE,EAAa,OAAa,EAAO,EAAiB,EAAQ,EAAM,EAAc,EAAQ,EAAI,YAAY,IAAI,EAAQ,EAAc,EAAe,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAM,EAAK,EAAa,GAAS,GAAS,EAAK,OAAO,GAAG,EAAQ,EAAY,GAAG,GAAQ,CAAC,EAAQ,GAAG,EAAK,GACxe,GAD4e,EAAK,GAAG,mBAAmB,EACngB,EAGqH,EAAK,GAAG,qBAAqB,EAAE,EAAK,GAAG,0BAA0B,OAH9K,CAAqE,GAAhE,EAAK,GAAG,uBAAsB,EAAK,GAAG,qBAAqB,GAAQ,EAAK,GAAG,kBAAkB,CAAC,EAAK,GAAG,0BAA0B,GAAM,QAAS,CAAC,GAAG,CAAC,EAAc,QAAS,EAAK,GAAG,0BAA0B,OAAW,CAGzO,IAAM,EAAM,EAAI,EAAK,GAAG,qBAAqB,EAAK,GAAG,0BAA0B,EAAE,GAAO,EAAM,EAAc,KAAM,CAAC,CAA+E,CAAC,EAAa,OAAO,CAAE,CAAC,SAAS,GAAiB,CAAI,IAAiB,EAAU,GAAQ,OAAO,eAAiB,IAAY,eAAe,CAAW,EAAO,QAAQ,QAAQ,CAAC,CAAC,KAAK,CAAW,EAAE,CAAC,MAAM,CAAC,SAAS,EAAG,CAAC,IAAM,EAAG,IAA6D,OAApD,EAAU,IAAI,EAAG,CAAC,KAAG,MAAM,EAAE,IAAE,CAAC,EAAE,EAAgB,EAAS,CAAG,EAAE,WAAW,EAAG,CAAI,GAAI,IAAS,EAAU,OAAO,CAAE,EAAE,EAAgB,EAAE,EAAE,OAAO,EAAG,EAAM,CAAC,IAAM,EAAK,EAAU,IAAI,CAAE,EAAM,GAAe,EAAK,QAAQ,IAAa,EAAK,MAAM,EAAM,EAAgB,EAAE,EACjrB,aAAa,CAAC,EAAgB,CAAE,EAAE,MAAM,CAAC,OAAO,EAAU,IAAK,EAAE,WAAW,CAAC,OAAO,EAAiB,CAAE,EAEvG,kBAAkB,CAAC,IAAM,EAAM,EAAU,KAA0E,OAAlE,GAAO,EAAS,EAAK,IAAQ,EAAS,IAAO,IAAQ,EAAS,IAAW,GAAI,EAG9H,sBAAsB,CAAC,OAAO,EAAU,KAAK,CAAE,CAAC,CAAE,EAAA,CAAG,KCpBsgB,SAAgB,GAAgB,EAAO,EAAS,CAAC,GAAG,GAAQ,qBAAsB,MAAM,CAAC,OAAO,EAAO,MAAM,EAAO,MAAM,KAAK,IAAI,KAAK,EAAO,IAAI,EAAE,QAAQ,EAAO,IAAI,EAAO,QAAQ,KAAK,IAAI,KAAK,EAAO,IAAI,CAAC,EAAG,IAAM,GAAK,GAAQ,KAAK,IAAI,KAAK,GAAG,IAAU,EAAO,EAAE,KAAK,IAAI,EAAI,CAAC,EAAE,KAAK,IAAI,KAAK,CAAQ,EAAE,MAAM,CAAC,MAAM,EAAO,KAAK,IAAI,KAAK,GAAQ,QAAQ,CAAC,EAAE,QAAM,CAAE,CAIx6B,SAAgB,GAAuB,EAAO,EAAS,CAAC,IAAM,EAAQ,GAAgB,EAAO,CAAQ,EAAQ,EAAY,EAAQ,OAAO,KAAK,IAAI,EAAO,QAAA,KAA6B,EAAoB,EAAE,MAAM,CAAC,MAAM,KAAK,IAAI,EAAQ,MAAM,CAAW,EAAE,OAAO,EAAQ,MAAM,CAAE,CAAC,SAAgB,GAAiB,EAAO,EAAS,CAAgD,IAAM,EAAQ,GAAuB,EAArE,GAAQ,UAAU,SAAS,GAAG,CAAsD,EAAE,OAAO,KAAK,IAAI,EAAQ,MAAM,KAAK,IAAI,GAAsB,EAAS,CAAC,EAAE,EAAQ,OAAO,KAAK,IAAI,GAAsB,EAAS,CAAC,CAAC,EAAE,GAAI,CAAyF,SAAgB,IAAe,CAAC,GAAU,IAAS,OAAY,MAAO,GAAM,IAAM,EAAI,OAAO,YAAc,IAAY,YAAY,IAAI,EAAE,KAAK,IAAI,EAAQ,EAAM,EAAO,YAAY,EAA+O,OAA1O,IAAoB,EAAI,GAAmB,KAAK,IAAQ,GAA8B,IAAkB,GAAmB,EAAI,GAAsB,EAAM,GAAiB,EAAO,aAAa,mBAAmB,CAAC,EAAE,SAAS,GAAO,IAAW,GAAiB,CAAC,SAAgB,GAAmB,EAAK,EAAI,EAAM,CAAK,GAAM,OAAgB,EAAK,MAAM,KAAO,IAAM,EAAK,MAAM,GAAK,EAAM,CAAC,SAAgB,GAAqB,EAAK,EAAI,CAAK,GAAM,OAAgB,EAAK,MAAM,KAAK,EAAK,MAAM,GAAK,GAAG,CAAC,SAAgB,GAAiB,EAAI,CAAC,GAAU,IAAS,OAAY,MAAO,GAAE,IAAM,EAAI,EAAO,kBAAkB,EAAM,EAAI,EAAI,gBAAgB,EAAI,mBAAmB,IAAI,EAAI,mBAAmB,EAEv8C,OAF48C,GAAc,GAAG,EAAI,yBAAyB,OAAM,EAAI,KAAK,IAAI,EAAI,EAAI,uBAAuB,GAEzlD,GAAQ,GAAkB,iBAAiB,EAAS,KAAK,IAAI,GAAG,KAAK,IAAI,EAAI,CAAG,CAAC,CAAE,CAAC,SAAgB,GAA2B,EAAS,EAAU,EAAI,CAAC,IAAM,EAAU,KAAK,IAAI,EAAE,GAAU,CAAC,EAAQ,EAAW,KAAK,IAAI,EAAE,GAAW,CAAC,EAAM,EAAI,GAAiB,CAAG,EAAQ,EAAc,EAAI,0BAA0B,EAAwK,OAAnK,EAAc,GAAsB,EAAU,EAAW,EAAI,EAAoB,IAAe,EAAI,KAAK,IAAI,GAAG,KAAK,KAAK,GAAe,EAAU,EAAW,CAAC,GAAU,CAAC,MAAI,YAAY,KAAK,IAAI,EAAE,KAAK,MAAM,EAAU,CAAG,CAAC,EAAE,aAAa,KAAK,IAAI,EAAE,KAAK,MAAM,EAAW,CAAG,CAAC,CAAC,CAAE,CAAC,SAAgB,GAAwB,EAAS,EAAI,KAAK,CAAC,IAAM,EAAS,GAAU,cAAc,mBAAmB,GAAG,EAAqC,OAAzB,GAAK,gBAA2B,KAAK,IAAI,EAAE,KAAK,IAAI,EAAS,CAAG,CAAC,CAAE,CAAC,SAAgB,GAAoB,EAAI,CAAiD,MAA7C,CAAC,GAAK,EAAI,aAAa,SAAgB,GAAY,CAAC,EAAE,EAAI,cAAc,EAAI,YAAY,EAAI,WAAW,EAAI,aAAa,gBAAgB,EAAI,oBAAoB,EAAI,gBAAgB,EAAI,2BAA2B,EAAI,iBAAiB,EAAI,gBAAgB,EAAI,WAAY,CAAC,SAAgB,GAAyB,EAAI,CAAC,GAAG,CAAC,GAAoB,CAAG,EAAE,MAAM,GAAG,IAAM,EAAQ,CAAC,EAAE,EAAI,WAAW,EAAI,aAAa,gBAAsB,EAAU,CAAC,EAAE,EAAI,wBAAwB,EAAI,cAAc,IAAU,MAAM,CAAC,EAAI,WAAW,OAAO,GAAG,EAAU,QAAQ,GAAG,EAAQ,MAAM,GAAG,EAAI,aAAa,QAAQ,GAAG,EAAI,mBAAmB,QAAQ,GAAG,EAAI,eAAe,WAAW,GAAG,EAAI,0BAA0B,YAAY,GAAG,EAAI,gBAAgB,QAAQ,GAAG,EAAI,eAAe,WAAW,GAAG,EAAI,WAAW,OAAO,EAAE,CAAC,CAAC,OAAO,OAAO,CAAC,CAAC,KAAK,GAAG,CAAE,CAKxnD,SAAgB,GAAqB,EAAiB,CAAC,IAAM,EAAa,EAAa,QAAQ,EAAoN,OAA/M,IAAe,EAAa,QAAQ,EAAwB,SAAa,IAAe,EAAa,SAAgB,IAAS,QAAa,EAAO,SAAS,KAAK,SAAS,kBAAkB,EAAS,UAAiB,MAAO,gCAXlN,KAAqJ,KAA8H,EAAK,GAAiB,GAAU,GAAmB,EAAM,GAAsB,MCEhd,SAAgB,GAAgB,EAAO,CAAC,IAAI,EAAM,GAAmE,OAA7D,EAAO,SAAS,GAAO,CAAI,EAAM,gBAAc,EAAM,GAAK,CAAC,EAAS,CAAM,CAAC,SAAgB,GAA6B,EAAO,CAAC,IAAM,EAAM,IAAI,IAAU,EAAQC,GAAwQ,OAAlP,GAAQ,WAAW,GAAO,CAAK,OAAgB,EAAM,MAAK,EAAM,IAAI,OAAO,EAAM,IAAI,CAAC,EAAK,EAAM,MAAK,CAAC,IAAM,EAAI,OAAO,EAAM,IAAI,EAAE,EAAM,IAAI,CAAG,EAAE,IAAM,EAAU,GAAS,mBAAmB,CAAG,EAAK,GAAU,EAAM,IAAI,OAAO,CAAS,CAAC,CAAE,CAAC,CAAC,EAAS,CAAM,CAAC,SAAgB,GAA0B,EAAU,CAAC,IAAM,EAAK,OAAO,GAAW,EAAE,EAAQ,EAAQA,GAAsB,GAAG,CAAC,IAAM,EAAO,GAAS,iBAAiB,CAAI,EAAE,GAAG,GAAQ,SAAS,OAAO,OAAO,EAAO,QAAQ,CAAE,MAAM,CAAC,CAAC,IAAM,EAAM,EAAK,MAAM,yDAAyD,EAAE,GAAG,CAAC,EAAM,MAAM,GAAG,IAAM,EAAO,EAAM,IAAI,GAA0E,OAAvD,EAAO,MAAM,wCAAyD,CAAC,GAAG,IAAI,CAAO,CAAC,SAAgB,GAAkC,EAAM,EAAY,CAAC,IAAM,EAAU,OAAO,GAAO,MAAM,EAAE,EAAE,GAAG,CAAC,qDAAqD,KAAK,CAAS,EAAG,MAAO,GAAO,IAAM,EAAO,GAA0B,CAAS,EAAwC,GAAnC,CAAC,GAAQ,IAAS,KAAoB,EAAY,IAAI,CAAM,EAAE,MAAO,GAAM,IAAM,OAAa,CAAC,GAAG,CAAC,OAAO,mBAAmB,CAAM,CAAE,MAAM,CAAC,OAAO,CAAO,CAAC,EAAA,CAAG,EAAE,GAAG,GAAS,EAAY,IAAI,CAAO,EAAE,MAAO,GAAM,IAAM,EAAK,EAAQ,MAAM,MAAM,CAAC,CAAC,OAAO,OAAO,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,GAAM,CAAC,EAAY,IAAI,CAAI,CAAE,CAAC,SAAgB,GAAiC,EAAO,EAAW,CAAC,EAAE,CAAC,GAAG,CAAC,GAAQ,CAAC,GAAY,OAAO,OAAO,GAAY,CAAC,EAAE,IAAM,EAAY,GAA6B,CAAM,EAAE,OAAO,EAAW,IAAI,GAAM,CAAC,IAAM,EAAO,GAAM,QAAQ,CAAC,EAAE,GAAG,CAAC,EAAO,OAAO,OAAO,EAAK,IAAM,EAAK,EAAO,OAAO,GAAO,CAAC,GAAkC,EAAM,CAAW,CAAC,EAAE,GAAG,EAAK,SAAS,EAAO,OAAO,OAAO,EAAK,GAAG,CAAC,EAAK,OAAO,OAAO,KAAK,IAAM,EAAK,IAAIC,GAAoB,EAAK,KAAK,EAAK,SAAS,EAAK,IAAI,GAAO,EAAM,QAAQ,GAAG,CAAK,CAAC,EAAgC,MAA9B,GAAK,UAAU,EAAK,UAAiB,CAAK,CAAC,CAAC,CAAC,OAAO,OAAO,CAAE,CAGhjE,SAAgB,GAA4B,EAAO,CAAC,EAAO,kBAAkB,GAAK,EAAI,EAAE,IAAM,EAAI,IAAIC,GAAe,EAAQ,GAAwZ,OAAlZ,EAAO,SAAS,GAAO,CAAC,IAAI,EAAM,QAAQ,EAAM,gBAAgB,EAAM,SAAY,EAAM,WAAc,EAAM,SAAS,aAAY,EAAM,SAAS,mBAAmB,EAAK,EAAM,SAAS,aAAa,CAAC,EAAM,SAAS,YAAY,QAAQ,GAAE,CAAC,IAAM,EAAQ,EAAM,SAAS,YAAY,MAAM,EAAE,EAAQ,aAAa,EAAM,WAAW,EAAE,EAAI,MAAM,CAAO,EAAE,EAAQ,EAAK,CAAG,CAAC,EAAM,GAAS,EAAI,cAAc,CAAM,EAAU,CAAI,mBALzb,KCAupB,SAAgB,IAAqB,CAAyP,OAApP,KAAa,GAAa,IAAIC,GAAY,GAAa,eAAe,yDAAyD,EAAE,GAAY,IAAIC,GAAW,GAAY,eAAe,EAAY,EAAE,GAAY,kBAAkBC,EAAc,GAAU,EAAY,CAAC,eAAsB,IAAoB,CAAC,GAAG,CAAC,GAAW,CAAC,IAAM,EAAU,MAAM,GAAe,EAAE,AAAe,KAAW,IAAI,CAAU,CAAC,OAAO,EAAW,CAAC,SAAgB,IAAwB,CAA6E,MAA5E,CAA0B,KAAqB,GAA0B,EAAU,EAAqB,CAU/1C,eAAsB,GAAa,EAAO,EAAS,EAAW,EAAQ,CAAC,GAAG,CAAC,IAAI,EAAY,EAAa,EACrG,EAAO,GAAc,IAAI,CAAM,EAAE,GAAG,EAAQ,EAAQ,EAAO,QAAQ,EAAS,EAAO,SAAS,EAAW,EAAO,eAAgB,CACpI,IAAM,EAAS,MAAM,MAAM,CAAM,EAAE,GAAG,CAAC,EAAS,GAAG,MAAU,MAAM,wBAAwB,EAAS,OAAO,GAAG,EAAS,YAAY,EAAE,IAAM,EAAc,SAAS,EAAS,QAAQ,IAAI,gBAAgB,GAAG,IAAI,EAAE,EAAQ,EAAO,EAAS,MAAM,UAAU,EAAE,GAAG,CAAC,EAAO,MAAU,MAAM,8BAA8B,EAAE,IAAM,EAAO,CAAC,EAAM,EAAe,EAAE,OAAW,CAAC,GAAK,CAAC,OAAK,SAAO,MAAM,EAAO,KAAK,EAAE,GAAG,EAAK,MAAM,EAAO,KAAK,CAAK,EAAE,GAAgB,EAAM,OAAU,GAAY,EAAc,GACve,EAAW,CAAC,OAAO,EAAe,GAAG,MAAM,EAAc,iBAAiB,EAAI,CAAC,CAAG,CAClF,IAAM,EAAU,IAAI,WAAW,CAAc,EAAM,EAAO,EAAE,IAAI,IAAM,KAAS,EAAQ,EAAU,IAAI,EAAM,CAAM,EAAE,GAAQ,EAAM,OAClG,IAAM,EAAI,MAAM,MAA7B,GAAW,EAAA,CAAwB,UAAU,EAAU,MAAM,EAC/E,EAAQ,CAAC,EAAE,IAAM,EAAY,CAAC,EAAE,EAAI,SAAS,EAAa,IAAW,CAAK,EAAS,KAAK,EAAY,KAAK,CAAC,KAAK,EAAa,KAAK,CAAQ,CAAC,CAAG,CAAC,EAC9I,IAAM,EAAiB,CAAC,OAAO,QAAQ,MAAM,EAAM,EAAU,KAAK,IAAI,IAAM,KAAO,EAAiB,CAAC,IAAM,EAAM,EAAY,KAAK,GAAG,EAAE,KAAK,YAAY,CAAC,CAAC,SAAS,CAAG,CAAC,EAAE,GAAG,EAAM,CAAC,EAAU,CAAC,KAAK,EAAM,KAAK,IAAI,EAAI,MAAM,CAAC,CAAC,EAC7N,KAAM,CAAC,CAAC,GAAG,CAAC,EAAW,MAAU,MAAM,qEAAqE,EAAG,EAAS,EAAU,KAAK,EAAW,EAAU,IAC7J,IAAI,IAAI,EAAE,EAAE,EAAE,EAAY,OAAO,IAAI,CAAC,GAAK,CAAC,OAAK,QAAM,EAAY,GAAS,EAAI,EAAK,YAAY,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,GAAG,GACjH,EAAS,2BAA8B,IAAM,QAAQ,IAAM,OAAO,EAAS,mBAA2B,IAAM,MAAM,EAAS,oBAA4B,IAAM,MAAM,EAAS,2BAAmC,IAAM,MAAM,EAAS,YAAoB,IAAM,OAAO,IAAM,OAAO,EAAS,aAAqB,IAAM,OAAO,EAAS,cAAqB,IAAM,OAAkD,IAAM,SAAlD,EAAS,4BAAmF,IAAM,EAAK,MAAM,EAAK,MAAM,MAAM,EAAQ,EAAU,IAAI,KAAK,CAAC,CAAI,EAAE,CAAC,KAAK,CAAQ,CAAC,EAAQ,EAAQ,IAAI,gBAAgB,CAAS,EACvkB,EAAQ,GAAM,EACd,IAAM,EAAS,EAAK,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,EAAQ,GAAU,EACvD,EAAQ,EAAK,YAAY,GAAG,EAAQ,EAAQ,EAAS,YAAY,GAAG,EAAW,GAAY,EAAc,GAC5D,EAAW,CAAC,QAAxC,GAAG,EAAE,EAAY,OAAO,KAAkC,EAAc,MAAM,EAAc,iBAAiB,EAAI,CAAC,CAAG,CACtI,GAAc,IAAI,EAAO,CAAC,UAAQ,WAAS,YAAU,CAAC,CAAE,CACxD,IAAM,EAAY,EAAQ,IAAW,EAAQ,EAAS,YAAY,GAAG,GAAG,CAAC,EAAa,MAAU,MAAM,gDAAgD,GAAU,EAChK,IAAM,EAAQ,IAAIC,GAOlB,GAPuC,EAAQ,eAAe,GAAK,CACnE,GAAG,EAAI,WAAW,OAAO,EAAE,OAAO,EAAI,IAAM,EAAW,EAAI,QAAQ,MAAM,GAAG,EAC5E,GAAG,EAAQ,GAAY,OAAO,EAAQ,GACtC,IAAM,EAAS,EAAW,MAAM,GAAG,CAAC,CAAC,IAAI,GAAG,GAAG,GAAG,EAAQ,GAAU,OAAO,EAAQ,GACnF,GAAG,EAAQ,EAAW,YAAY,GAAG,OAAO,EAAQ,EAAW,YAAY,GAAG,GAAG,EAAQ,EAAS,YAAY,GAAG,OAAO,EAAQ,EAAS,YAAY,GACrJ,GAAG,CAAC,IAAM,EAAQ,mBAAmB,CAAQ,EAAE,GAAG,EAAQ,GAAS,OAAO,EAAQ,GAAS,GAAG,EAAQ,EAAQ,YAAY,GAAG,OAAO,EAAQ,EAAQ,YAAY,EAAG,MAAM,CAAC,CAAC,OAAO,CACjL,CAAC,EACC,IAAa,MAAqF,IAAnB,MAArC,GAAe,IAAgC,CAAiB,CAAC,CAAC,KAAK,EAAY,GAAK,EAAS,EAAI,EAAI,YAAY,CAAC,CAAC,EAAE,IAAA,GAAU,GAAK,CAAI,GAAQ,EAAQ,CAAG,CAAE,CAAC,MAAO,CAAC,IAAM,EAAW,IAAIF,GAAW,CAAO,EAAQ,EAAM,IAAID,GAAY,EAAM,eAAe,yDAAyD,EAAE,EAAW,eAAe,CAAK,EAAE,EAAW,KAAK,EAAY,GAAM,EAAS,EAAK,MAAM,EAAK,UAAU,EAAE,IAAA,GAAU,GAAK,CAAI,GAAQ,EAAQ,CAAG,CAAE,CAAC,CAAE,CAAC,OAAO,EAAI,CAAC,QAAQ,MAAM,uCAAuC,CAAG,EAAK,GAAQ,EAAQ,CAAG,CAAE,CAAC,CAAC,SAAgB,GAAgB,EAAG,EAAG,CAAI,EAAG,QAAO,EAAG,MAAM,OAAO,EAAG,KAAK,EAAK,EAAG,eAAgB,GAAkB,EAAG,KAAK,EAC9tB,GAAsB,EAAG,KAAK,GAAI,EAAG,qBAAqB,GAAS,EAAG,QAAO,GAAoC,EAAG,EAAG,KAAK,EAAE,EAAG,MAAM,cAAc,EAAG,CAAC,SAAgB,GAAqB,EAAO,CAAC,GAAG,CAAC,GAAgB,CAAM,EAAE,OAAO,IAAM,EAAkB,IAAI,IAAI,EAAO,SAAS,GAAO,CAAI,EAAM,eAAe,EAAM,UAAU,EAAkB,IAAI,EAAM,QAAQ,CAAG,CAAC,EAAE,EAAO,SAAS,GAAO,CAAC,GAAG,CAAC,EAAM,QAAQ,EAAM,cAAc,OACjb,GAAG,EAAM,UAAU,EAAkB,IAAI,EAAM,QAAQ,EAAE,CAAC,EAAM,QAAQ,GAAM,MAAO,CACrF,IAAI,EAAE,EAAM,OAAO,KAAM,GAAE,CAAC,GAAG,EAAE,OAAO,CAAC,EAAM,QAAQ,GAAM,MAAO,CAAC,EAAE,EAAE,MAAO,CAChF,GAAG,EAAM,SAAS,CAAK,EAAM,SAAS,aAAY,EAAM,SAAS,mBAAmB,EAAE,IAAM,EAAG,EAAM,SAAS,YAAY,GAAG,EAAG,CAAC,IAAM,EAAG,EAAG,QAAQ,EAAS,EAAE,GAAG,KAAK,IAAI,EAAG,EAAE,EAAG,EAAE,EAAG,CAAC,EAAE,KAAK,CAAC,EAAM,QAAQ,GAAM,MAAO,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,SAAgB,GAAyB,EAAO,CAAC,IAAM,EAAM,GAAgB,CAAM,EAAEI,GAAoB,CAAM,EAAE,EAAO,MAAM,EAAI,EAA6L,OAA3L,EAAM,SAAS,GAAO,CAAI,EAAM,QAAQ,EAAM,WAAa,MAAM,QAAQ,EAAM,QAAQ,EAAG,EAAM,SAAS,EAAM,SAAS,IAAI,GAAG,EAAE,MAAM,CAAC,EAAQ,EAAM,SAAS,EAAM,SAAS,MAAM,EAAI,CAAC,EAAS,CAAM,CAAC,SAAgB,GAAkB,EAAO,CAAC,MAAM,CAAC,MAAM,GAAyB,EAAO,KAAK,EAAE,WAAW,EAAO,WAAW,IAAI,GAAM,EAAK,MAAM,CAAC,CAAC,CAAE,CAAiD,SAAgB,GAAsB,EAAM,CAAC,EAAM,SAAS,GAAG,CAAI,EAAE,SACxzB,EAAE,eAAe,EAAE,UAAU,EAAE,SAAS,QAAQ,GAAI,MAAM,QAAQ,EAAE,QAAQ,EAAE,EAAE,SAAS,CAAC,EAAE,QAAQ,EAAA,CAAG,QAAQ,GAAG,EAAE,UAAU,CAAC,EAAE,GAAqB,OAAO,EAAE,IAAI,EAAG,CAAC,CAAE,CAAC,SAAgB,GAAkB,EAAM,CAAK,GAAa,EAAM,SAAS,GAAG,CAAsC,GAAlC,EAAE,UAAU,EAAE,SAAS,QAAQ,EAAM,EAAE,SAAS,CAAC,IAAM,EAAK,MAAM,QAAQ,EAAE,QAAQ,EAAE,EAAE,SAAS,CAAC,EAAE,QAAQ,EAAE,IAAI,IAAM,KAAK,EAAU,KACpY,KAAI,IAAM,KAAO,EAAE,CAAC,IAAM,EAAI,EAAE,GAAQ,GAAK,EAAI,WAAU,EAAI,QAAQ,CAAE,CACzE,GAAG,EAAE,SAAU,IAAI,IAAM,KAAK,EAAE,SAAS,CAAC,IAAM,EAAG,EAAE,SAAS,EAAE,CAAC,MAAS,GAAI,EAAG,WAAU,EAAG,QAAQ,CAAE,CAAE,EAAE,QAAQ,CAD3C,CAC8C,CAAI,EAAE,eAAe,EAAE,UAAU,EAAE,SAAS,QAAQ,EAAM,EAAE,SAAS,EAAE,QAAQ,KAAK,EAAE,OAAO,IAAI,QAAQ,EAAM,EAAE,MAAK,GAAqB,OAAO,EAAE,IAAI,CAAE,CAAC,CAAE,CAAC,SAAgB,GAAiB,EAAI,EAAO,EAAS,EAAW,EAAQ,CAAC,GAAG,IAAS,MAAM,CAAC,GAAa,GAAK,EAAO,IAAa,CAAC,GAAqB,CAAM,EAAE,IAAM,EAAe,GAAiC,EAAO,GAAY,CAAC,CAAC,EAAM,GAAY,IAAI,CAAG,GAAG,GAAY,IAAI,EAAI,CAAC,MAAM,GAAyB,CAAM,EAAE,WAAW,EAAe,IAAI,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,EAAG,EAAS,EAAO,CAAc,CAAE,EAAE,EAAW,CAAO,EAAE,MAAO,CAAC,GAAG,IAAS,MAAM,CAAC,GAAmB,CAAC,CAAC,KAAK,GAAQ,CAAC,EAAO,KAAK,EAAI,GAAK,CAAC,IAAM,EAAW,EAAI,YAAY,CAAC,EAAE,GAAqB,CAAG,EAAE,IAAM,EAAe,GAAiC,EAAI,CAAU,EAAM,GAAY,IAAI,CAAG,GAAG,GAAY,IAAI,EAAI,CAAC,MAAM,GAAyB,CAAG,EAAE,WAAW,EAAe,IAAI,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,EAAG,EAAS,EAAI,CAAc,CAAE,EAAE,EAAW,CAAO,CAAE,CAAC,CAAC,CAAC,MAAM,GAAK,CAAI,GAAQ,EAAQ,CAAG,CAAE,CAAC,EAAE,MAAO,CAAC,GAAoB,CAAC,CAAC,KAAK,EAAI,GAAG,CAAC,GAAqB,EAAE,KAAK,EAAE,IAAM,EAAe,GAAiC,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC,EAAM,GAAY,IAAI,CAAG,GAAG,GAAY,IAAI,EAAI,CAAC,MAAM,GAAyB,EAAE,KAAK,EAAE,WAAW,EAAe,IAAI,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,EAAG,EAAS,EAAE,MAAM,CAAc,CAAE,EAAE,EAAW,CAAO,CAAE,+BAzClxC,KAAyL,KAA+J,KAAmJ,EAAK,GAAa,KAAS,GAAY,KAAS,GAAW,KAAS,GAAqB,QCAkQ,SAAgB,IAAoB,CAAC,GAAG,GAAiB,OAAO,GAAiB,IAAoB,EAAO,SAAS,cAAc,QAAQ,EAAE,EAAO,MAAM,GAAK,EAAO,OAAO,GAAK,IAAM,EAAI,EAAO,WAAW,KAAK,CAAC,mBAAmB,EAAI,CAAC,EAAQ,EAAS,EAAI,qBAAqB,GAAK,EAAE,GAAK,EAAE,EAAE,GAAK,EAAE,GAAK,EAAE,GAAK,CAAC,EAAwS,OAAtS,EAAS,aAAa,EAAE,qBAAqB,EAAE,EAAS,aAAa,GAAG,uBAAuB,EAAE,EAAS,aAAa,GAAG,uBAAuB,EAAE,EAAS,aAAa,EAAE,qBAAqB,EAAE,EAAI,UAAU,EAAS,EAAI,SAAS,EAAE,EAAE,GAAK,EAAI,EAAE,GAAiB,IAAIC,GAAoB,CAAM,EAAS,EAAiB,CAAC,SAAgB,GAAwB,EAAM,EAAI,CAAsD,IAAM,EAAc,GAAqB,EAA3E,EAAI,0BAA0B,GAA+D,EAAQ,EAAM,EAAc,OAAO,EAAQ,EAAW,IAAI,aAAa,CAAa,EAAQ,EAAS,IAAI,aAAa,EAAM,CAAC,EAAQ,EAAU,IAAI,aAAa,CAAK,EAAQ,EAAK,IAAI,aAAa,CAAK,EAAQ,EAAM,IAAI,aAAa,CAAK,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAM,IAAK,EAAU,GAAG,KAAK,OAAO,EAAE,IAAI,IAAI,EAAS,EAAE,GAAG,KAAK,OAAO,EAAE,GAAG,GAAG,EAAS,EAAE,EAAE,GAAG,KAAK,OAAO,EAAE,GAAG,GAAG,EAAS,EAAE,EAAE,GAAG,KAAK,OAAO,EAAE,GAAG,EAAK,GAAG,KAAK,EAAM,GAAG,KAAK,OAAO,EAAE,KAAK,GAAG,EAAG,IAAM,EAAI,IAAIC,GAAqB,EAAI,aAAa,WAAW,IAAIC,GAAsB,IAAI,aAAa,CAAa,EAAE,CAAC,CAAC,EAAE,EAAI,aAAa,cAAc,IAAIA,GAAsB,EAAW,CAAC,CAAC,EAAE,EAAI,aAAa,QAAQ,IAAIA,GAAsB,EAAK,CAAC,CAAC,EAAE,EAAI,aAAa,SAAS,IAAIA,GAAsB,EAAM,CAAC,CAAC,EAAE,IAAM,EAAY,GAAmB,EAAQ,EAAI,IAAIC,GAAqB,CAAC,YAAY,GAAK,SAAS,EAAuB,WAAW,GAAM,SAAS,CAAC,SAAS,CAAC,MAAM,CAAW,EAAE,cAAc,CAAC,MAAa,IAAS,OAAoC,EAAxB,EAAO,gBAAkB,EAAE,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAI,mBAAmB,EAAE,EAAE,KAAK,CAAC,MAAM,EAAI,mBAAmB,EAAE,EAAE,MAAM,CAAC,MAAM,EAAI,oBAAoB,GAAG,EAAE,UAAU,CAAC,MAAM,EAAI,0BAA0B,EAAE,EAAE,OAAO,CAAC,MAAM,GAAW,EAAI,uBAAuB,EAAI,uBAAuB,SAAS,CAAC,CAAC,EAAE,aAAa;EAClkG,GAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmCX,eAAe;;;;;;;;;;;;;;;;;;;;CAoBhB,CAAC,EAAQ,EAAO,IAAIC,GAAa,EAAI,CAAG,EAA6B,MAA3B,GAAO,cAAc,GAAY,CAAC,SAAO,MAAI,MAAI,MAAM,CAAC,QAAM,cAAc,IAAI,aAAa,CAAa,EAAE,aAAW,WAAS,YAAU,OAAK,QAAM,MAAM,EAAI,uBAAuB,IAAI,QAAQ,EAAI,yBAAyB,EAAE,UAAU,CAAC,EAAE,EAAI,sBAAsB,IAAI,EAAE,EAAI,sBAAsB,CAAC,CAAC,CAAC,CAAE,CAAC,SAAgB,GAAwB,EAAO,CAAC,GAAK,CAAC,QAAM,gBAAc,aAAW,WAAS,YAAU,OAAK,QAAM,QAAM,UAAQ,aAAW,EAAO,IAAI,IAAI,EAAE,EAAE,EAAE,EAAM,IAAI,CAAC,IAAM,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAM,EAAG,EAAS,GAAG,EAAU,EAAM,EAAG,EAAS,GAAG,EAAU,EAAM,EAAG,EAAS,GAAG,GAAG,EAAQ,EAAE,CAAC,IAAM,EAAG,EAAW,GAAG,EAAG,EAAW,GAAG,IAAK,KAAK,IAAI,EAAG,CAAC,EAAE,GAAG,KAAK,IAAI,EAAG,CAAC,EAAE,IAAI,EAAQ,IAAK,KAAK,IAAI,EAAG,CAAC,EAAE,GAAG,KAAK,IAAI,EAAG,CAAC,EAAE,IAAI,CAAQ,CAAC,GAAI,KAAK,IAAI,CAAK,EAAE,GAAI,KAAK,IAAI,CAAK,EAAE,GAAI,KAAK,IAAI,CAAK,EAAE,EAAW,IAAI,EAAG,EAAW,IAAI,EAAG,EAAW,IAAI,EAAG,IAAM,EAAG,EAAW,GAAG,EAAc,GAAS,EAAG,EAAW,GAAG,EAAc,GAAS,EAAG,EAAW,GAAG,EAAc,GAAS,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAK,GAAG,KAAK,KAAK,CAAG,EAAE,EAAM,IAAI,IAAO,EAAI,EAAU,GAAG,EAAU,KAAI,EAAW,GAAG,EAAc,GAAG,EAAW,GAAG,EAAc,GAAG,EAAW,GAAG,EAAc,GAAI,CAAC,CAAC,SAAgB,GAAuB,EAAK,EAAO,CAAC,IAAM,EAAO,EAAK,aAAa,aAAa,EAAK,IAAQ,EAAO,MAAM,EAAO,WAAW,EAAO,YAAY,IAAM,IAAM,EAAM,EAAK,aAAa,OAAO,EAAK,IAAO,EAAM,MAAM,EAAO,KAAK,EAAM,YAAY,IAAM,IAAM,EAAM,EAAK,aAAa,QAAQ,EAAK,IAAO,EAAM,MAAM,EAAO,MAAM,EAAM,YAAY,GAAM,CAAC,SAAgB,GAAyB,EAAE,CAAK,IAAS,EAAE,KAAK,QAAQ,EAAE,EAAE,KAAK,QAAQ,EAAK,EAAE,QAAQ,QAAO,EAAE,OAAO,OAAO,OAAO,EAAE,MAAM,EAAE,CAAC,SAAgB,GAAoB,EAAE,EAAI,EAAK,CAAC,IAAM,GAAO,GAAK,KAAK,GAAM,IAAI,MAAM,CAAC,EAAM,EAAE,EAAE,CAAM,CAAC,SAAgB,GAAmB,EAAM,CAAC,GAAG,IAAoB,GAAmB,SAAS,EAAM,OAAO,GAAmB,IAAM,EAAK,KAAK,IAAI,EAAM,CAAC,EAAQ,EAAK,IAAI,WAAW,CAAI,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAK,IAAK,EAAK,GAAG,KAAK,MAAM,GAAG,EAAK,GAAG,GAAG,EAAG,IAAM,EAAI,IAAIC,GAAkB,EAAK,EAAK,EAAEC,EAAe,EAAmI,MAAjI,GAAI,UAAUC,GAAoB,EAAI,UAAUA,GAAoB,EAAI,YAAY,GAAK,EAAI,OAAO,EAAM,GAAmB,EAAW,CAAI,CAAC,SAAgB,IAAuB,CAAC,GAAG,GAAoB,OAAO,GAAoB,IAAqB,EAAO,SAAS,cAAc,QAAQ,EAAE,EAAO,MAAM,IAAK,EAAO,OAAO,IAAK,IAAM,EAAI,EAAO,WAAW,KAAK,CAAC,mBAAmB,EAAK,CAAC,EAAE,GAAG,CAAC,EAAI,OAAO,KAAK,EAAI,UAAU,UAAU,EAAI,SAAS,EAAE,EAAE,IAAK,GAAI,EAAE,EAAI,YAAY,mBAAmB,EAAI,UAAU,EAAE,IAAI,IAAI,EAAE,KAAM,EAAE,IAAK,EAAE,GAAG,GAAI,EAAI,UAAU,EAAE,EAAI,OAAO,EAAE,GAAI,EAAE,EAAI,OAAO,EAAE,IAAK,CAAC,EAAE,EAAI,OAAO,EAAG,IAAM,EAAI,IAAIP,GAAoB,CAAM,EAAqK,MAAnK,GAAI,MAAMQ,GAAqB,EAAI,MAAMA,GAAqB,EAAI,OAAO,IAAI,EAAE,CAAC,EAAE,EAAI,WAAWC,GAAqB,EAAI,YAAY,GAAK,GAAoB,EAAW,CAAI,CAAC,SAAgB,GAAmB,EAAK,CAAC,IAAI,EAAE,GAAM,OAAO,KAAM,GAAE,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,OAAO,MAAO,GAAK,EAAE,EAAE,MAAO,CAAC,MAAO,EAAM,CAAC,SAAgB,GAAsB,EAAI,CAAC,GAAG,EAAI,uBAAuB,OAAO,EAAI,MAAM,EAAE,IAAM,EAAG,IAAIC,GAAsU,IAAI,IAAM,IAAK,CAAxS,QAAQ,WAAW,YAAY,YAAY,UAAU,YAAY,OAAO,eAAe,YAAY,MAAM,cAAc,aAAa,mBAAmB,sBAAsB,kBAAkB,oBAAoB,YAAY,qBAAqB,oBAAoB,eAAyC,EAAM,EAAI,KAAK,IAAA,KAAU,EAAG,GAAG,EAAI,EAAE,EAAE,MAAM,EAAI,EAAE,CAAC,MAAM,EAAE,EAAI,IAA2M,IAAI,IAAM,IAAK,CAAvM,MAAM,YAAY,QAAQ,cAAc,WAAW,kBAAkB,eAAe,eAAe,eAAe,eAAe,wBAAwB,qBAAqB,QAA+B,EAAM,EAAI,KAAG,EAAG,GAAG,EAAI,IAA8D,OAAvD,EAAI,cAAY,EAAG,YAAY,EAAI,YAAY,MAAM,GAAS,CAAG,CAAC,SAAgB,GAAqB,EAAS,CAC94H,EAAS,UAAU,KAAK,IAAI,EAAS,UAAU,GAAG,EAAE,EAAS,UAAU,KAAK,IAAI,EAAS,UAAU,CAAC,EAAE,EAAS,gBAAgB,KAAK,IAAI,EAAS,iBAAiB,EAAE,EAAE,EACnK,EAAS,aAAa,IAAG,EAAS,YAAY,GAAM,EAAS,WAAW,GAAK,EAAS,QAAQ,GAAG,EAAS,YAAY,EAAK,CAAC,SAAgB,GAAgB,EAAM,EAAO,CAAC,GAAG,CAAC,EAAM,OAAO,IAAM,EAAQ,GAAmB,EAAO,OAAO,CAAC,EAAE,EAAM,SAAS,GAAO,CAAC,GAAG,CAAC,GAAwB,CAAK,EAAE,OAAO,IAAM,EAAK,MAAM,QAAQ,EAAM,QAAQ,EAAE,EAAM,SAAS,CAAC,EAAM,QAAQ,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAK,OAAO,IAAI,CAAC,IAAM,EAAI,EAAK,GACxa,GAAG,GAAiB,CAAG,EAAE,CAAC,IAAM,EAAS,GAAsB,CAAG,EAAE,GAAqB,CAAQ,EAAK,MAAM,QAAQ,EAAM,QAAQ,EAAE,EAAM,SAAS,GAAG,EAAc,EAAM,SAAS,EAAS,QAAS,CACrM,IAAM,EAAQ,IAAIC,GAAuB,CAAC,MAAM,EAAI,MAAM,EAAI,MAAM,MAAM,EAAE,IAAIC,EAAY,QAAQ,EAAE,YAAY,EAAQ,KAAK,EAAI,MAAM,CAAe,CAAC,EACtJ,EAAI,MAAI,EAAQ,IAAI,EAAI,KAAO,EAAI,YAAW,EAAQ,UAAU,EAAI,UAAU,EAAQ,YAAY,EAAI,aAAa,MAAM,GAAG,IAAIC,EAAc,EAAE,CAAC,GAAM,EAAI,QAAO,EAAQ,MAAM,EAAI,MAAM,EAAQ,eAAe,EAAI,gBAAgB,GAAM,EAAI,WAAS,EAAQ,SAAS,EAAI,SAAS,MAAM,GAAK,EAAI,cAAY,EAAQ,YAAY,EAAI,aAAe,EAAI,mBAAmB,OAAK,EAAQ,kBAAkB,EAAI,mBAAqB,EAAI,WAAS,EAAQ,SAAS,EAAI,UAAY,EAAI,cAAY,EAAQ,YAAY,EAAI,aAAe,EAAI,SAAS,OAAK,EAAQ,QAAQ,EAAI,SAAW,EAAI,YAAU,EAAQ,UAAU,EAAI,WAAU,EAAQ,YAAY,GAAQ,MAAM,QAAQ,EAAM,QAAQ,EAAE,EAAM,SAAS,GAAG,EAAa,EAAM,SAAS,CAAQ,CAAC,CAAC,CAAE,CAAC,SAAgB,GAAkB,EAAM,EAAO,CAAC,GAAG,CAAC,EAAM,OAAO,IAAM,EAAQ,GAAmB,EAAO,OAAO,CAAC,EAAQ,EAAS,GAAsB,EAAQ,EAAU,GAAW,EAAO,OAAO,SAAS,EAAQ,EAAa,GAAW,EAAO,cAAc,SAAS,EAAQ,EAAU,EAAO,kBAAkB,KAAW,EAAmB,CAAC,EAAE,GAAoB,CAAK,EAAE,EAAM,SAAS,GAAO,CAAC,GAAG,CAAC,GAAwB,CAAK,EAAE,OAAO,IAAM,EAAK,MAAM,QAAQ,EAAM,QAAQ,EAAE,EAAM,SAAS,CAAC,EAAM,QAAQ,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAK,OAAO,IAAI,CAAC,IAAM,EAAI,EAAK,GAAG,GAAG,GAAiB,CAAG,EAAE,CAAC,IAAM,EAAS,GAAsB,CAAG,EAAE,EAAS,MAAM,EAAU,MAAM,EAAE,GAAqB,CAAQ,EAAK,MAAM,QAAQ,EAAM,QAAQ,EAAE,EAAM,SAAS,GAAG,EAAc,EAAM,SAAS,EAAS,QAAS,CAAC,IAAM,EAAU,IAAIF,GAAuB,CAAC,MAAM,EAAU,YAAY,EAAQ,IAAI,EAAS,KAAK,EAAI,MAAM,CAAe,CAAC,EAAK,EAAI,YAAW,EAAU,UAAU,EAAI,UAAU,EAAU,YAAY,EAAI,aAAa,MAAM,GAAG,IAAIE,EAAc,EAAE,CAAC,GAAM,EAAI,QAAO,EAAU,MAAM,EAAI,MAAM,EAAU,eAAe,EAAI,gBAAgB,GAAG,EAAU,YAAY,GAAQ,MAAM,QAAQ,EAAM,QAAQ,EAAE,EAAM,SAAS,GAAG,EAAe,EAAM,SAAS,CAAU,CAAC,IAAM,EAAW,IAAIC,GAAwB,CAAC,MAAM,EAAa,KAAK,CAAc,CAAC,EAAQ,EAAY,GAAiC,EAAM,EAAW,CAAS,EAAK,EAAa,EAAmB,KAAK,CAAC,OAAO,EAAM,OAAO,KAAK,CAAW,CAAC,EAAQ,EAAW,QAAQ,CAAG,CAAC,EAAE,IAAI,IAAM,KAAS,EAAuB,EAAM,QAAO,EAAM,OAAO,IAAI,EAAM,IAAI,CAAG,CAAC,SAAgB,GAAmB,EAAM,EAAO,CAAC,GAAG,CAAC,EAAM,OAAO,IAAM,EAAU,GAAW,EAAO,OAAO,SAAS,EAAQ,EAAc,GAAW,EAAO,eAAe,SAAS,EAAQ,EAAkB,EAAO,mBAAmB,EAAQ,EAAa,GAAW,EAAO,cAAc,SAAS,EAAQ,EAAU,EAAO,kBAAkB,IAC3nF,GAAoB,CAAK,EACzB,IAAM,EAAmB,CAAC,EAAE,EAAM,SAAS,GAAO,CAAC,GAAG,CAAC,GAAwB,CAAK,EAAE,OAAO,IAAM,EAAK,MAAM,QAAQ,EAAM,QAAQ,EAAE,EAAM,SAAS,CAAC,EAAM,QAAQ,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAK,OAAO,IAAI,CAAC,IAAM,EAAI,EAAK,GAAG,GAAG,GAAiB,CAAG,EAAE,CAChP,IAAM,EAAS,GAAsB,CAAG,EAAE,GAAqB,CAAQ,EACvE,EAAS,UAAU,KAAK,IAAI,EAAS,UAAU,EAAE,EAAK,MAAM,QAAQ,EAAM,QAAQ,EAAE,EAAM,SAAS,GAAG,EAAc,EAAM,SAAS,CAAS,KAAK,CACjJ,IAAM,EAAQ,IAAIH,GAAuB,CAAC,MAAM,EAAU,SAAS,EAAc,oBAAkB,YAAY,GAAmB,CAAC,EAAE,KAAK,CAAe,CAAC,EAAK,EAAI,MAAI,EAAQ,IAAI,EAAI,KAAI,EAAQ,YAAY,GAAQ,MAAM,QAAQ,EAAM,QAAQ,EAAE,EAAM,SAAS,GAAG,EAAa,EAAM,SAAS,CAAQ,CAAC,CAC5S,GAAG,EAAM,SAAS,CAAC,IAAM,EAAW,IAAIG,GAAwB,CAAC,MAAM,EAAa,KAAK,CAAc,CAAC,EAAQ,EAAY,GAAiC,EAAM,EAAW,CAAS,EAAK,EAAa,EAAmB,KAAK,CAAC,OAAO,EAAM,OAAO,KAAK,CAAW,CAAC,EAAQ,EAAW,QAAQ,CAAG,CAAC,CAAC,EACvS,IAAI,IAAM,KAAS,EAAuB,EAAM,QAAO,EAAM,OAAO,IAAI,EAAM,IAAI,CAAG,CAAC,SAAgB,GAAoB,EAAM,CAAC,GAAG,CAAC,EAAM,OAAO,IAAM,EAAS,CAAC,EAAE,EAAM,SAAS,GAAO,CAAI,EAAM,iBAAgB,EAAS,KAAK,CAAK,CAAE,CAAC,EAAE,IAAI,IAAM,KAAK,EAAa,EAAE,QAAO,EAAE,OAAO,OAAO,CAAC,EAAK,EAAE,qBAAoB,EAAE,UAAU,QAAQ,EAAE,EAAE,SAAS,KAC7V,EAAE,UAAU,QAAQ,CAAG,CAAmG,SAAgB,GAA4B,EAAM,CAAC,GAA0B,MAAM,EAAE,IAAM,EAAY,CAAC,EAGnO,OAHqO,EAAM,SAAS,GAAO,CAAC,GAAG,CAAC,EAAM,OAAO,OAAO,IAAM,EAAS,MAAM,QAAQ,EAAM,QAAQ,EAAE,EAAM,SAAS,CAAC,EAAM,QAAQ,EAAQ,EAAS,CAAC,EAC3W,EAAQ,CAAC,MAAM,YAAY,eAAe,eAAe,QAAQ,cAAc,UAAU,kBAAkB,WAAW,WAAW,SAAS,eAAe,qBAAqB,wBAAwB,gBAAgB,oBAAoB,kBAAkB,eAAe,iBAAiB,0BAA0B,uBAAuB,kBAAkB,EAAE,IAAI,IAAM,KAAO,EAAU,IAAI,IAAM,KAAO,EAAY,EAAI,IAAM,EAAI,EAAI,CAAC,WAAW,EAAS,KAAK,EAAI,EAAI,EAAK,GAA0B,IAAI,EAAM,KAAK,CAAC,SAAS,MAAM,QAAQ,EAAM,QAAQ,EAAE,CAAC,GAAG,EAAM,QAAQ,EAAE,EAAM,SAAS,UAAQ,CAAC,EAAE,EAAY,KAAK,GAAG,CAAQ,EACpkB,EAAM,SAAnC,GAAsD,CAAE,CAAC,EACrE,CAAC,GAAG,IAAI,IAAI,CAAW,CAAC,CAAE,CAAC,eAAsB,GAA4B,EAAS,EAAS,EAAW,CAAC,GAAG,CAAC,EAAS,OAAO,CAAC,IAAa,CAAC,EAAE,MAAO,CAAC,IAAI,EAAO,EAAQ,EAAM,EAAS,OAAO,IAAI,IAAM,KAAO,EAAS,CAAC,GAAG,CACrO,EAAS,YAAY,CAAG,EACrB,EAAI,OAAO,EAAI,iBAAiB,kBAAkB,CAAC,EAAI,MAAM,WAAU,MAAM,IAAI,QAAQ,GAAS,CAAC,EAAI,MAAM,OAAO,EAAQ,EAAI,MAAM,QAAQ,EACjJ,WAAW,EAAQ,GAAG,CAAE,CAAC,EAAE,EAAS,YAAY,CAAG,EAAG,MAAS,CAC/D,CAAC,IAAS,IAAa,EAAO,CAAK,CAAE,CAAC,CAAC,SAAgB,GAAe,EAAM,CAAK,GAAa,EAAM,SAAS,GAAO,CAAK,EAAM,SAAiB,EAAM,kBAC3I,MAAM,QAAQ,EAAM,QAAQ,EAAE,EAAM,SAAS,CAAC,EAAM,QAAQ,EAAA,CAAO,QAAQ,GAAK,CAAK,IAC7F,EAAI,gBAAgB,EAAI,MAAM,KAAK,EAAI,cAAc,EAAM,EAAI,mBAAmB,EAAI,UAAU,EAAI,SAAS,KAAK,EAAI,iBAAiB,EAAM,EAAI,2BAA2B,IAAA,KAAW,EAAI,gBAAgB,EAAI,0BAClN,OAAO,EAAI,eAAe,OAAO,EAAI,kBAAkB,OAAO,EAAI,yBAAyB,CAAC,EAAE,CAAC,CAAE,CAAC,SAAgB,GAAuB,EAAiB,EAAe,CAAC,GAAK,CAAC,WAAS,aAAW,YAAU,gBAAc,oBAAkB,aAAW,EAAqB,EAAI,EAAiB,MAAM,EA8B/Q,MA7B1B,GAAI,SAAS,iBAAiB,EAAS,EAAI,SAAS,WAAW,EAC9D,EAAI,SAAS,UAAU,GAAW,GAClC,EAAI,SAAS,UAAU,EAAU,EAAI,SAAS,cAAc,GAAW,CAAa,EAAE,EAAI,SAAS,kBAAkB,EAAkB,EAAI,gBAAgB,GAAQ,CAAC,EAAO,SAAS,UAAU,CAAC,MAAM,EAAI,SAAS,gBAAgB,EAAE,EAAO,SAAS,MAAM,CAAC,MAAM,EAAI,SAAS,UAAU,EAAE,EAAO,SAAS,KAAK,CAAC,MAAM,EAAI,SAAS,SAAS,EAAE,EAAO,SAAS,MAAM,CAAC,MAAM,EAAI,SAAS,SAAS,EAAE,EAAO,SAAS,WAAW,CAAC,MAAM,EAAI,SAAS,aAAa,EAAE,EAAO,SAAS,eAAe,CAAC,MAAM,EAAI,SAAS,iBAAiB,EAAE,EAAI,SAAS,eAAe,EAAO,SAC3iB,EAAO,aAAa,EAAO,aAAa,QAAQ,oBAAoB;mBACjD,EAAE,EAAO,aAAa,EAAO,aAAa,QAAQ,0BAA0B;iBAC9E,EACjB,EAAO,eAAe,EAAO,eAAe,QAAQ,oBAAoB;;;;;;;;;;EAUtE,GAAW;CACZ,EACD,EAAO,eAAe,EAAO,eAAe,QAAQ,gCAAgC;;;;;;;;;;;CAWnF,CAAE,EAAE,EAAI,YAAY,GAAY,CAAI,CAAC,SAAgB,GAAqB,EAAM,EAAS,CAAC,EAAM,kBAAkB,EAAI,EACtH,IAAM,EAAU,CAAC,EAAE,EAAM,SAAS,GAAO,CAAC,GAAG,CAAC,EAAM,QAAQ,EAAM,gBAAgB,OAAO,IAAM,EAAQ,EAAM,UAAU,aAAa,UAAU,EAAE,GAAG,CAAC,EAAQ,OAAO,IAAM,EAAS,EAAM,YAAY,MAAM,EAA8D,EAAzC,EAAM,YAAY,MAAM,CAAC,CAAC,OAAmC,CAAC,CAAC,SAAS,CAAQ,EAAQ,EAAE,IAAIC,EAAc,IAAI,IAAI,EAAE,EAAE,EAAE,EAAQ,MAAM,IAAK,EAAE,IAAI,EAAQ,KAAK,CAAC,EAAE,EAAQ,KAAK,CAAC,EAAE,EAAQ,KAAK,CAAC,CAAC,EAAE,EAAE,aAAa,CAAQ,EAAE,EAAU,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAG,CAAC,EAAE,IAAM,EAAW,EAAU,OAAO,EAAE,GAAG,GAAY,EAAS,OAAO,IAAI,aAAa,CAAS,EAAE,IAAM,EAAO,KAAK,KAAK,EAAW,CAAQ,EAAQ,EAAQ,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAW,GAAG,EAAQ,EAAQ,KAAK,EAAU,EAAE,GAAG,EAAU,EAAE,EAAE,GAAG,EAAU,EAAE,EAAE,EAAE,EAAG,OAAO,IAAI,aAAa,CAAO,CAAE,CAAC,SAAgB,GAAyB,EAAG,EAAI,CAA6mC,OAAxmC,GAAI,OAAmB,EAAG,MAAM,QAAQ,GAAK,EAAG,eAAe,GAAK,EAAG,kBAAkB,GAAG,EAAG,iBAAiB,EAAE,EAAG,mBAAmB,GAAM,EAAG,MAAM,SAAS,GAAO,CAAC,GAAG,CAAC,EAAM,OAAO,OAAO,EAAG,0BAA0B,IAAI,EAAM,KAAK,EAAM,QAAQ,EAAE,IAAM,EAAY,GAAuB,EAAM,SAAS,CAAC,SAAS,GAAoB,EAAE,EAAI,kBAAkB,EAAI,iBAAiB,EAAE,WAAW,EAAI,mBAAmB,UAAU,EAAI,kBAAkB,UAAU,EAAI,kBAAkB,cAAc,EAAI,sBAAsB,kBAAkB,EAAI,yBAAyB,CAAC,EAAE,EAAG,kBAAkB,IAAI,EAAM,KAAK,CAAW,EAAE,EAAM,SAAS,CAAY,CAAC,EAAK,EAAI,2BAA0B,GAAyB,EAAG,iBAAiB,EAAE,EAAG,kBAAkB,GAAwB,EAAG,MAAM,CAAG,EAAE,EAAG,kBAAkB,OAAO,SAAS,KAAK,EAAG,MAAM,QAAQ,EAAE,EAAG,kBAAkB,OAAO,SAAS,KAAK,EAAG,MAAM,QAAQ,EAAE,EAAG,kBAAkB,OAAO,MAAM,KAAK,EAAG,MAAM,KAAK,EAAE,EAAG,MAAM,IAAI,EAAG,kBAAkB,MAAM,EAAE,EAAG,kBAAkB,IAAI,SAAS,UAAU,MAAM,GAAoB,EAAE,EAAI,kBAAkB,EAAI,iBAAiB,GAAU,IAA9lC,EAAmmC,CAAC,SAAgB,GAAwB,EAAM,CAAsJ,GAAlJ,CAAC,GAAO,QAAuB,EAAM,iBAAgC,EAAM,UAAU,IAAsB,GAAmB,CAAK,GAAkB,CAAC,EAAM,SAAS,MAAO,GAAM,IAAM,EAAQ,EAAM,SAAS,eAAe,UAAU,EAAE,MAAM,CAAC,GAAS,EAAQ,MAAM,CAAE,CAAC,SAAgB,GAAiC,EAAM,EAAW,EAAU,CAAC,IAAM,EAAW,EAAM,SAAS,MAAM,EAAM,EAAW,WAAW,QAAQ,EAAW,qBAAqB,EAAG,IAAM,EAAQ,EAAW,WAAW,SAAe,EAAS,EAAW,WAAW,OAAO,GAAG,GAAS,EAAS,CAAC,EAAW,sBAAsB,EAA4E,IAAM,EAAO,GAA1E,EAAW,eAAe,EAAW,eAAe,OAAO,GAAgC,IAAI,IAAI,EAAE,EAAE,EAAE,EAAQ,MAAM,IAAI,CAAC,IAAI,EAAE,EAAQ,KAAK,CAAC,EAAM,EAAE,EAAQ,KAAK,CAAC,EAAM,EAAE,EAAQ,KAAK,CAAC,EAAE,GAAG,EAAS,KAAK,CAAC,EAAE,EAAO,GAAG,EAAS,KAAK,CAAC,EAAE,EAAO,GAAG,EAAS,KAAK,CAAC,EAAE,EAAO,EAAQ,OAAO,EAAE,EAAE,EAAE,CAAC,CAAE,CAAC,EAAQ,YAAY,EAAK,CAAC,IAAI,EAA4rB,OAA7qB,EAAM,eAAe,EAAY,IAAIC,GAAkB,EAAW,CAAU,EAAE,EAAY,KAAK,EAAM,SAAS,EAAM,UAAU,GAAQ,EAAY,IAAIC,GAAW,EAAW,CAAU,EAAG,EAAY,gBAAgB,GAAK,EAAY,oBAAoB,GAAK,EAAY,WAAW,GAAM,EAAY,cAAc,GAAM,EAAY,cAAc,EAAM,cAAc,EAAY,MAAM,KAAK,EAAM,KAAK,EAAE,EAAY,SAAS,KAAK,EAAM,QAAQ,EAAE,EAAY,SAAS,KAAK,EAAM,QAAQ,EAAE,EAAY,WAAW,KAAK,EAAM,UAAU,EAAK,EAAM,wBAAuB,EAAY,sBAAsB,EAAM,sBAAsB,EAAY,sBAAsB,EAAM,uBAA8B,CAAY,CAAC,SAAgB,GAAiB,EAAI,CAAC,OAAO,EAAI,cAAc,EAAI,aAAa,GAAG,CAAC,CAAC,EAAI,eAAgB,CAAC,SAAgB,GAAoB,EAAI,EAAS,EAAS,EAAQ,CAAC,GAAuB,CAAC,CAAC,KAAK,EAAI,GAAS,CAAC,EAAQ,WAAWR,GAAqB,EAAQ,YAAY,GAAK,EAAQ,WAAW,GAAwB,CAAQ,EAAE,IAAM,EAAM,EAAQ,OAAO,CAAC,EAAwF,EAA1E,KAAK,IAAI,EAAE,EAAM,OAAO,CAA6D,EAA7C,KAAK,IAAI,EAAE,EAAM,QAAQ,CAA2B,EAAQ,EAAW,GAAQ,EAAE,EAAO,EAAQ,EAAY,GAAQ,EAAE,EAAE,EAAE,EAAa,EAAS,IAAIS,GAAoB,EAAW,CAAW,EAAQ,EAAS,IAAIC,GAA2B,CAAC,IAAI,EAAQ,YAAY,GAAK,UAAU,KAAK,KAAK,EAAiB,UAAU,EAAE,UAAU,CAAC,CAAC,EAAQ,EAAK,IAAIF,GAAW,EAAS,CAAQ,EAAE,EAAK,KAAK,aAAa,EAAK,WAAW,GAAM,EAAK,cAAc,GAAM,IAAM,EAAM,IAAIG,GAAY,EAAM,IAAI,CAAI,EAAE,EAAS,EAAM,CAAC,CAAC,CAAE,EAAE,IAAA,GAAU,CAAO,CAAE,CAAC,SAAgB,GAAgB,EAAK,CAAC,GAAG,GAAqB,IAAI,EAAK,IAAI,EAAE,OAA6E,IAAM,GAAjE,MAAM,QAAQ,EAAK,QAAQ,EAAE,EAAK,SAAS,CAAC,EAAK,QAAQ,EAAA,CAAoB,IAAI,GAAG,EAAE,MAAM,CAAC,EAAE,GAAqB,IAAI,EAAK,KAAK,CAAM,EAIhvJ,EAAK,SAAS,EAAO,SAAS,EAAE,EAAO,GAAG,CAAO,CAAC,SAAgB,GAAiB,EAAK,CAAC,IAAM,EAAO,GAAqB,IAAI,EAAK,IAAI,EAAE,GAAG,CAAC,EAAO,OACrJ,IAAM,EAAS,EAAO,IAAI,GAAG,EAAE,MAAM,CAAC,EAAE,EAAK,SAAS,EAAS,SAAS,EAAE,EAAS,GAAG,CAAS,CAAC,SAAgB,IAA4B,CAAC,OAAO,IAAID,GAA2B,CAAC,MAAM,GAA6B,UAAU,GAAG,UAAU,GAAG,gBAAgB,EAAE,CAAC,CAAE,CAAC,SAAgB,GAA6B,EAAM,CAAC,EAAM,SAAS,GAAO,CAAC,GAAG,CAAC,EAAM,OAAO,OAAO,IAAM,EAAO,GAA0B,IAAI,EAAM,IAAI,EAAE,GAAG,CAAC,EAAO,OAC5a,IAAM,EAAQ,MAAM,QAAQ,EAAM,QAAQ,EAAE,EAAM,SAAS,CAAC,EAAM,QAAQ,EAAE,IAAI,IAAM,KAAK,EAAY,IAAI,EAAO,UAAU,CAAC,MAAM,QAAQ,EAAO,QAAQ,GAAE,EAAE,UAAU,EACxK,EAAM,SAAS,EAAO,QAAS,CAAC,EAAE,GAA0B,MAAM,CAAE,CAAC,SAAgB,GAAa,EAAM,EAAO,CAAK,GAAa,EAAM,SAAS,GAAO,CAAK,EAAM,SAE/J,EAAM,kBAAkC,MAAM,QAAQ,EAAM,QAAQ,EAAE,EAAM,SAAS,CAAC,EAAM,QAAQ,EAAA,CAAO,QAAQ,GAAK,CAAK,IAC7H,EAAI,iBAAiB,IAAA,KAAW,EAAI,eAAe,EAAI,MAAM,EAAI,MAAM,MAAM,EAAE,IAAIP,EAAY,EAAE,EAAE,CAAC,EAAE,EAAI,kBAAkB,EAAI,SAAS,EAAI,SAAS,MAAM,EAAE,KAAK,EAAI,yBAAyB,EAAI,iBAAiB,GACxN,EAAI,MAAM,KAAK,EAAI,cAAc,CAAC,CAAC,eAAe,CAAM,EAAK,EAAI,mBAAmB,EAAI,UAAU,EAAI,SAAS,KAAK,EAAI,iBAAiB,CAAC,CAAC,eAAe,CAAM,EAAG,EAAI,gBAAgB,EAAI,yBAAyB,EACjN,GAAQ,IAAG,EAAI,MAAM,KAAK,EAAI,cAAc,EAAK,EAAI,mBAAmB,EAAI,UAAU,EAAI,SAAS,KAAK,EAAI,iBAAiB,EAAG,EAAI,gBAAgB,EAAI,yBAAyB,OAAO,EAAI,eAAe,OAAO,EAAI,kBAAkB,OAAO,EAAI,0BAA0B,CAAC,EAAE,CAAC,CAAE,CAAC,SAAgB,GAAsB,EAAM,EAAI,CAAC,GAAG,CAAC,EAAM,OAAO,IAAI,EAAO,EAAI,iBAAiB,OAA4C,KAArC,GAAiB,EAAI,gBAAwB,GAAQ,EAAI,iBAAiB,YAAa,EAAO,CAAC,GAAG,EAAO,iBAAiB,EAAI,oBAAoB,IAAI,aAAa,EAAI,gBAAgB,UAAU,cAAc,EAAI,wBAAwB,UAAU,kBAAkB,EAAI,4BAA4B,GAAG,EAAW,GAAQ,EAAI,iBAAiB,gBAAe,EAAO,CAAC,GAAG,EAAO,MAAM,EAAI,iBAAiB,UAAU,iBAAiB,EAAI,qBAAqB,KAAK,aAAa,EAAI,iBAAiB,UAAU,MAAM,EAAI,aAAa,CAAC,GAC34B,IAAM,EAAY,EAAI,kBAAkB,EACxC,GADkD,GAAa,EAAM,SAAS,GAAO,CAAI,EAAM,QAAO,GAAgB,CAAK,CAAE,CAAC,EAC3H,GAAQ,EAAO,MAAM,CAC+B,GAApD,EAAO,QAAQ,WAAU,GAAoB,CAAK,EAAK,EAAO,QAAQ,OAAO,CAAC,GAAgB,EAAM,CAAM,EAAE,MAAO,CAAC,GAAG,EAAO,QAAQ,SAAS,CAAC,GAAkB,EAAM,CAAM,EAAE,MAAO,CAAC,GAAG,EAAO,QAAQ,UAAU,CAAC,GAAmB,EAAM,CAAM,EAAE,MAAO,CAAC,CACtO,GAA3B,GAAoB,CAAK,EAAK,CAAC,EAAY,CAC3C,EAAM,SAAS,GAAO,CAAK,EAAM,QAAc,GAAiB,CAAK,CAAE,CAAC,EAAE,MAAO,CAAC,EAAM,SAAS,GAAO,CAAC,GAAG,CAAC,EAAM,OAAO,OAAO,IAAM,EAAK,MAAM,QAAQ,EAAM,QAAQ,EAAE,EAAM,SAAS,CAAC,EAAM,QAAQ,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAK,OAAO,IAAI,CAAC,IAAI,EAAI,EAAK,GACtP,GAAG,CAAC,EAAI,uBAAuB,CAAC,IAAM,EAAO,EAAI,EAAI,IAAIF,GAC8S,IAAI,IAAM,IAAK,CAAvW,MAAM,YAAY,QAAQ,eAAe,eAAe,cAAc,UAAU,kBAAkB,WAAW,WAAW,SAAS,eAAe,wBAAwB,qBAAqB,kBAAkB,eAAe,gBAAgB,oBAAoB,iBAAiB,0BAA0B,uBAAuB,kBAAyC,EAAM,EAAO,KAAG,EAAI,GAAG,EAAO,IAExL,IAAI,IAAM,IAAK,gcAAS,EAAM,EAAO,KAAK,IAAA,KAAW,EAAI,GAAG,EAAO,EAAE,EAAE,MAAM,EAAO,EAAE,CAAC,MAAM,EAAE,EAAO,IAAQ,MAAM,QAAQ,EAAM,QAAQ,EAAE,EAAM,SAAS,GAAG,EAAS,EAAM,SAAS,CAAI,CAI5Z,IAAM,EAAE,GAAQ,CAAC,EAAQ,EAAS,EAAI,iBAAiB,EAAI,UAAU,EAAS,EAAI,UAAU,EAAE,WAAW,EAAI,UAAU,EAAI,UAAU,EAAS,EAAI,UAAU,EAAE,WAAW,EAAI,UAAU,EAAI,UAAU,EAAS,EAAI,UAAU,EAAE,WAAW,EAAI,WAAW,EAAE,EAAI,mBAAmB,EAAS,EAAI,mBAAmB,EAAE,oBAAoB,EAAI,oBAAoB,EAAE,IAAM,EAAM,EAAS,EAAI,aAAa,EAAE,cAAc,EAAiH,GAA/G,EAAI,aAAa,EAAM,EAAI,UAAU,EAAS,EAAI,UAAU,EAAE,WAAW,EAAE,EAAI,IAAI,EAAS,EAAI,IAAI,EAAE,KAAK,IAAO,EAAM,EAIjhB,EAAI,YAAY,GAAM,EAAI,WAAW,GAAK,EAAI,QAAQ,MAAO,CAC7D,IAAM,EAAG,EAAS,EAAI,QAAQ,EAAE,SAAS,EAAI,SAAS,EAAE,EAAI,QAAQ,EAAM,EAAG,IAAG,EAAI,YAAY,GAAK,EAAI,WAAW,GAAO,CAAC,EAAI,YAAY,EAAS,EAAI,YAAY,EAAE,aAAa,EAAE,EAAI,eAAe,EAAS,EAAI,eAAe,EAAE,gBAAgB,IAAI,IAAM,EAAS,EAAS,EAAI,MAAM,EAAE,OAAO,EAAE,EAAI,MAAM,EAAS,EAAI,eAAe,EAAS,EAAI,eAAe,EAAE,gBAAgB,GAAM,EAAS,IAAE,EAAI,WAAW,GAAW,EAAS,EAAI,WAAW,EAAE,YAAY,SAAS,GAAE,EAAI,gBAAgB,EAAS,EAAI,gBAAgB,EAAE,iBAAiB,EACzhB,GAAQ,EAAE,QAAM,EAAI,MAAM,GAAW,EAAE,KAAK,GAAE,IAAM,EAAM,EAAS,EAAI,kBAAkB,EAAE,mBAAmB,EAAE,EAAI,kBAAkB,EAAS,EAAM,IAAE,EAAI,SAAS,GAAW,EAAS,EAAI,cAAc,EAAE,eAAe,SAAS,GAAE,EAAI,aAAa,EAAS,EAAI,aAAa,EAAE,cAAc,GACpS,EAAI,UAAU,EAAS,EAAI,WAAW,GAAM,EAAE,WAAW,GAAM,EAAI,YAAY,EAAK,CAAC,CAAC,CAAE,mCA9IkB,KAA2H,KAAwJ,KAA0H,KAA0H,KAAsI,KAAoI,EAAK,GAAiB,KAAS,GAAmB,KAAS,GAAoB,KAAkB,GAA0B,IAAI,OCArxB,SAAgB,GAAqB,EAAG,EAAI,CAAC,IAAM,EAAe,EAAI,eAAe,EAAI,aAAa,KAAK,GAAI,GAAI,SAAS,GAAI,UAAU,EAAE,EAAG,UAAU,UAAU,QAAQ,CAAC,CAAC,EAAe,EAAG,aAAa,UAAU,EAAI,sBAAsB,EAAG,SAAS,UAAU,EAAI,0BAA0B,EAAG,eAAe,GAAW,EAAI,qBAAqB,EAAE,EAAG,SAAS,MAAM,EAAG,eAAe,EAAG,SAAS,SAAS,IAAI,EAAI,cAAc,EAAE,EAAI,cAAc,GAAG,EAAI,cAAc,CAAC,EAAE,EAAG,SAAS,WAAW,EAAI,cACvtB,IAAM,EAAO,EAAI,eAAe,KAAQ,EAAG,SAAS,OAAO,QAAQ,IAAI,IAAQ,EAAG,SAAS,OAAO,QAAQ,IAAI,EAAO,CAAM,EAAK,EAAG,SAAS,OAAO,MAAK,EAAG,SAAS,OAAO,IAAI,QAAQ,EAAE,EAAG,SAAS,OAAO,IAAI,OAC7M,EAAG,SAAS,OAAO,KAAK,EAAI,YAAY,MAAM,EAAG,SAAS,OAAO,WAAW,EAAI,kBAAkB,IAAI,EAAG,OAAO,QAAQ,EAAI,cAC/H,GAAiB,EAAG,CAAG,CAAE,CAAC,SAAgB,GAAiB,EAAG,EAAI,CAAC,IAAM,EAAM,EAAG,MAAY,EAAO,EAAG,kBAAwB,EAAQ,EAAI,aAAa,CAAC,EAC1J,KAAM,EAAO,OAAO,EAAQ,QAAO,CAAC,IAAM,EAAM,EAAO,IAAI,EAAE,EAAM,OAAO,CAAK,EAAK,EAAM,QAAQ,EAAM,aAAY,EAAM,OAAO,EAAM,MAAM,EAAK,EAAM,QAAQ,KAAI,EAAM,OAAO,IAAI,QAAQ,EAAE,EAAM,QAAQ,CAAE,CAAC,IAAI,IAAI,EAAE,EAAE,EAAE,EAAQ,OAAO,IAAI,CAAC,IAAM,EAAG,EAAQ,GAAG,GAAG,CAAC,EAAG,SAAS,IAAM,EAAK,EAAG,WAAW,QAAc,EAAQ,EAAG,SAAS,GAAW,EAAM,GAAW,EAAG,OAAO,SAAS,EAAQ,EAAU,EAAG,WAAW,EAAQ,EAAK,EAAG,MAAM,EAAQ,EAAK,EAAG,MAAM,EAAQ,EAAK,EAAG,MAAM,EAAQ,EAAS,EAAG,UAAU,EAAQ,EAAM,EAAG,OAAO,EAAQ,EAAW,EAAG,YAAY,GAAU,EAAM,EAAO,GAG/X,GAF9L,IAAQ,IAAO,SAAS,CAAC,EAAM,cAAc,IAAO,QAAQ,CAAC,EAAM,eAA+B,EAAM,OAAO,CAAK,EAAK,EAAM,QAAQ,EAAM,aAAY,EAAM,OAAO,EAAM,MAAM,EAAK,EAAM,QAAQ,KAAI,EAAM,OAAO,IAAI,QAAQ,EAAE,EAAM,QAAQ,EAAE,EAAM,KAAK,EAAO,GAAG,MAAU,IACpS,IAAO,QAAQ,EAAM,IAAIW,GAAgB,EAAM,CAAS,EAAE,EAAM,OAAO,EAAG,OAAO,KAAK,KAAK,GAAG,KAAK,EAAM,SAAS,EAAG,UAAU,GAAG,EAAM,IAAI,EAAM,MAAM,GAAQ,EAAM,IAAIC,GAAiB,EAAM,EAAU,EAAS,CAAK,EAAG,EAAM,OAAO,QAAQ,IAAI,KAAK,IAAI,EAAE,EAAM,OAAO,KAAK,MAAM,EAAM,OAAO,WAAW,IAAI,EAAM,IAAI,CAAK,EAAE,EAAO,GAAG,GAClV,EAAM,QAAQ,EAAQ,EAAM,MAAM,KAAK,CAAK,EAAE,EAAM,UAAU,EAAU,EAAM,SAAS,IAAI,EAAK,EAAK,CAAI,EAAE,EAAM,WAAW,GAAY,EAAW,EAAM,eAAc,EAAM,SAAS,EAAS,EAAM,MAAM,GAAU,EAAM,YAAY,CAAC,EAAM,SAAS,EAAS,EAAM,MAAM,EAAM,EAAM,OAAO,EAAG,OAAO,KAAK,KAAK,GAAG,KAAK,EAAM,SAAS,EAAG,UAAU,GAAG,IAAM,EAAG,EAAG,SAAS,EAAQ,EAAG,EAAG,SAAS,EAAQ,EAAG,EAAG,SAAS,EAAE,EAAM,OAAO,SAAS,IAAI,EAAG,EAAG,CAAE,CAAE,CAAC,CAAC,mBAP3V,KAA0H,KCAmS,SAAgB,GAAgB,EAAQ,EAAI,CAAuG,OAAlG,IAAuB,EAAQ,SAAS,EAAQ,UAAU,CAAC,EAAE,EAAQ,SAAS,gBAAgB,EAAW,EAAQ,CAAoF,SAAgB,GAAS,EAAS,EAAI,EAAO,CAAC,GAAG,GAAU,IAAI,CAAG,EAAE,CAAC,IAAM,EAAM,GAAU,IAAI,CAAG,EAAE,EAAM,SAAS,YAAY,IAAI,EAAE,EAAO,EAAM,OAAO,EAAE,MAAO,CAAC,GAAG,GAAa,IAAI,CAAG,EAAE,CAAC,GAAa,IAAI,CAAG,CAAC,CAAC,KAAK,CAAM,EAAE,MAAO,CAAC,GAAa,IAAI,EAAI,CAAC,CAAM,CAAC,EAElgC,GAAe,CAAC,CAAC,KAAK,GAAW,CAAC,IAAI,EAAU,CAAC,CAAC,KAAK,EAAI,GAAS,CAAC,EAAQ,QAAQ,IAAuC,IAAM,EAAO,GAAgB,EAAQ,CAAG,EAAE,GAAU,IAAI,EAAI,CAAC,QAAQ,EAAO,KAAK,EAAE,SAAS,YAAY,IAAI,CAAC,CAAC,EAAE,IAAM,EAAU,GAAa,IAAI,CAAG,GAAG,CAAC,EAAE,GAAa,OAAO,CAAG,EAAE,EAAU,QAAQ,GAAI,EAAG,CAAM,CAAC,CAAE,EAAE,IAAA,GAAU,GAAK,CAAC,QAAQ,KAAK,oBAAoB,EAAI,CAAG,EAAE,IAAM,EAAU,GAAa,IAAI,CAAG,GAAG,CAAC,EAAE,GAAa,OAAO,CAAG,EAAE,EAAU,QAAQ,GAAI,EAAG,IAAI,CAAC,CAAE,CAAC,CAAE,CAAC,CAAC,CAAC,MAAM,GAAK,CAAC,QAAQ,KAAK,qCAAqC,CAAG,EAAE,IAAM,EAAU,GAAa,IAAI,CAAG,GAAG,CAAC,EAAE,GAAa,OAAO,CAAG,EAAE,EAAU,QAAQ,GAAI,EAAG,IAAI,CAAC,CAAE,CAAC,CAAE,CAAC,SAAgB,GAAY,EAAI,EAAQ,CAAC,GAAG,CAAC,GAAK,CAAC,EAAQ,OAAO,IAAM,EAAM,GAAU,IAAI,CAAG,GAAG,CAAC,UAAQ,KAAK,EAAE,SAAS,YAAY,IAAI,CAAC,EAAE,EAAM,QAAQ,EAAQ,EAAM,MAAM,EAAM,MAAM,GAAG,EAAE,EAAM,SAAS,YAAY,IAAI,EAAE,GAAU,IAAI,EAAI,CAAK,CAAE,CAAC,SAAgB,GAAa,EAAI,CAAC,IAAM,EAAM,GAAU,IAAI,CAAG,EAAE,GAAG,CAAC,EAAM,OAAO,EAAM,KAAK,KAAK,IAAI,GAAG,EAAM,MAAM,GAAG,CAAC,EAAE,EAAM,SAAS,YAAY,IAAI,EAEtjC,IAAM,EAAK,CAAC,GAAG,GAAU,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,MAAS,EAAK,MAAM,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,UAAU,IAAI,EAAE,EAAE,CAAC,UAAU,EAAE,EAAE,KAAM,EAAK,OAAO,GAAE,CAAC,GAAK,CAAC,EAAO,GAAU,EAAK,MAAM,EAAE,EAAS,SAAS,UAAU,EAAE,GAAU,OAAO,CAAM,CAAE,CAAC,CAAC,SAAgB,GAA+B,EAAS,CAAC,GAAG,CAAC,EAAS,OAAO,KAAK,IAAI,EAAM,GAAmB,IAAI,CAAQ,EAAmE,OAA7D,IAAO,EAAM,IAAI,IAAI,GAAmB,IAAI,EAAS,CAAK,GAAU,CAAM,CAAC,SAAgB,GAAyB,EAAS,EAAW,CAAC,IAAM,EAAI,GAAY,SAAe,EAAM,GAA+B,CAAQ,EAAE,GAAG,CAAC,EAAM,OAAO,GAAoB,EAAS,CAAG,EAAE,IAAI,EAAM,EAAM,IAAI,CAAG,EAAqL,OAA/K,IAAO,EAAM,CAAC,QAAQ,GAAoB,EAAS,CAAG,EAAE,KAAK,EAAE,SAAS,YAAY,IAAI,CAAC,EAAE,EAAM,IAAI,EAAI,CAAK,GAAG,EAAM,MAAM,EAAM,MAAM,GAAG,EAAE,EAAM,SAAS,YAAY,IAAI,EAAS,EAAM,OAAQ,CAAC,SAAgB,GAA8B,EAAS,EAAW,CAAC,IAAM,EAAM,EAAS,GAAmB,IAAI,CAAQ,EAAE,KAAK,GAAG,CAAC,EAAM,OAAO,IAAM,EAAI,GAAY,SAAe,EAAM,EAAM,IAAI,CAAG,EAAE,GAAG,CAAC,EAAM,OAAO,EAAM,KAAK,KAAK,IAAI,GAAG,EAAM,MAAM,GAAG,CAAC,EAAE,EAAM,SAAS,YAAY,IAAI,EAAE,IAAM,EAAK,CAAC,GAAG,EAAM,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,MAAS,EAAK,MAAM,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,UAAU,IAAI,EAAE,EAAE,CAAC,UAAU,EAAE,EAAE,KAAM,EAAK,OAAO,GAAE,CAAC,GAAK,CAAC,EAAO,GAAU,EAAK,MAAM,EAAE,EAAS,SAAS,UAAU,EAAE,EAAM,OAAO,CAAM,CAAE,CAAC,CAAC,SAAgB,GAAuB,EAAG,CAAC,GAAG,CAAC,EAAG,OAAO,IAAM,EAAO,EAAG,OAAa,EAAU,EAAG,WAAW,GAAS,EAAa,EAAG,cAAc,GAAM,IAAe,QAAQ,EAAW,GAAa,CAAS,EAAW,IAAe,cAAc,GAAQ,GAA8B,EAAG,WAAW,EAAG,SAAS,EAAU,QAAQ,eAAe,EAAE,GAAG,QAAQ,EAAG,EAAG,OAAO,KAAK,EAAG,aAAa,GAAG,EAAG,UAAU,GAAG,EAAG,eAAe,EAAG,CAAC,SAAgB,GAAoB,EAAS,EAAW,CAAC,IAAM,EAAO,GAAY,IAAa,GAAY,OAAa,EAAM,IAAIC,GAAqB,CAAQ,EAAE,EAAM,6BAA6B,EAAE,IAAM,EAAS,IAAIC,GAAiB,CAAC,MAAI,MAAI,OAAK,EAAO,IAAU,EAAO,IAAIC,GAAqB,CAAC,KAAK,EAAe,SAAS,CAAC,KAAK,CAAC,MAAM,IAAIC,EAAc,GAAG,CAAG,CAAC,EAAE,KAAK,CAAC,MAAM,IAAIA,EAAc,GAAG,CAAG,CAAC,EAAE,KAAK,CAAC,MAAM,IAAIA,EAAc,GAAG,CAAG,CAAC,CAAC,EAAE,aAAa,0IAA0I,eAAe,gOAAgO,CAAC,EAAE,EAAS,IAAI,IAAIC,GAAW,IAAIC,GAAqB,GAAG,GAAG,EAAE,EAAE,CAAM,CAAC,EAAE,IAAI,IAAM,KAAS,EAAO,OAAO,CAAC,IAAM,EAAI,IAAIC,GAAwB,CAAC,MAAM,IAAIC,EAAY,GAAG,EAAM,KAAK,EAAE,KAAK,CAAgB,CAAC,EAAQ,EAAE,IAAIH,GAAW,IAAII,GAAoB,EAAM,KAAK,EAAM,IAAI,EAAE,CAAG,EAAE,EAAE,SAAS,IAAI,GAAG,EAAM,GAAG,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,EAAS,IAAI,CAAC,CAAE,CAAC,IAAM,EAAO,EAAM,UAAU,EAAS,GAAG,CAAC,CAAC,QAAuH,OAA/G,EAAM,QAAQ,EAAE,EAAS,SAAS,GAAG,CAAI,EAAE,UAAS,EAAE,SAAS,QAAQ,EAAK,EAAE,UAAS,EAAE,SAAS,QAAQ,CAAE,CAAC,EAAS,CAAO,CAAC,SAAgB,GAAwB,EAAG,EAAI,EAAS,EAAM,CAAC,GAAG,CAAC,EAAI,kBAAmB,GAAuB,CAAE,EAAE,EAAM,YAAY,KAAK,EAAM,WAAW,EAAI,sBAAsB,KAAK,GAAW,EAAI,eAAe,OAAQ,GAAG,EAAI,kBAAkB,OAAO,CAAC,IAAM,EAAQ,EAAI,eAAe,GAAa,EAAI,WAAW,EAAE,KAAK,GAAa,gBAAgB,IAAI,GAAG,EAAG,YAAY,GAAS,EAAG,OAAO,CAAC,EAAM,YAAY,EAAG,OAAU,EAAI,2BAA2B,CAAC,EAAI,wBAAuB,EAAM,WAAW,EAAG,QAAQ,MAAO,CAAC,GAAuB,CAAE,EAAE,EAAM,YAAY,KAAK,EAAG,aAAa,OAAO,EAAG,UAAU,EAAQ,EAAG,eAAe,EAAQ,GAAS,EAAS,EAAQ,GAAQ,CAAI,EAAG,WAAW,EAAG,YAAY,GAAS,EAAG,iBAAiB,IAAoB,IAAQ,GAAY,EAAQ,CAAM,EAAE,EAAG,OAAO,EAAO,EAAG,aAAa,OAAO,EAAM,YAAY,EAAU,EAAI,2BAA2B,CAAC,EAAI,wBAAuB,EAAM,WAAW,IAAS,EAAG,eAAe,GAAG,CAAC,CAAE,KAAK,CAAC,IAAM,EAAW,EAAI,mBAAmB,SAAe,EAAO,cAAc,IAAa,GAAG,EAAG,YAAY,GAAQ,EAAG,OAAO,CAAC,EAAM,YAAY,EAAG,OAAO,MAAO,CAAC,GAAuB,CAAE,EAAE,EAAG,OAAO,GAAyB,EAAS,CAAU,EAAE,EAAG,aAAa,aAAa,EAAG,UAAU,EAAO,EAAM,YAAY,EAAG,MAAO,CAAC,mBAJ9wI,KAAmI,KAAgJ,KAA0H,KCA8V,SAAgB,GAA0B,EAAO,EAAS,GAAG,CAAK,IAAc,EAAO,2BAA2B,GAAM,EAAO,6BAA6B,EAAS,EAAO,gCAAgC,EAAS,CAAC,SAAgB,GAA4B,EAAO,EAAI,EAAS,CAAC,GAAG,CAAC,EAAI,yBAAyB,EAAI,gBAAgB,UAAU,EAAI,sBAA8E,OAAvD,GAA0B,EAAO,OAAO,GAAU,EAAE,CAAC,EAAS,EAAU,IAAM,EAAc,OAAO,GAAU,EAAE,EACplC,OAA5O,EAAO,6BAA4B,EAAO,2BAA2B,GAAK,EAAO,6BAA6B,GAAe,EAAO,gCAAgC,EAAiB,EAAO,yBAAiC,EAAsB,EAAO,8BAA8B,EAAO,0BAA0B,CAAc,CAAC,SAAgB,GAA+B,EAAG,EAAI,CAA0P,GAAtP,CAAC,EAAI,yBAAyB,CAAC,EAAI,iBAAiB,EAAI,gBAAgB,UAAU,EAAI,wBAAkC,EAAG,OAAO,EAAG,YAAY,QAAQ,GAAyB,EAAG,EAAG,MAAM,EAAG,WAAW,EAAI,EAAI,cAAc,EAAI,aAAa,EAAM,CAAC,EAAG,WAAU,OAAO,IAAM,EAAW,EAAI,eAAe,CAAC,EAAQ,EAAY,CAAC,GAAG,EAAI,wBAAwB,IAAI,EAAE,IAAI,GAAK,CAAC,EAAI,KAAM,EAAG,UAAc,CAAC,EAAG,OAAO,CAAC,EAAG,YAAY,QAAmB,EAAG,OAAO,EAAG,MAAM,UAAU,IAA0B,EAAW,EAAY,EAAE,eAAsB,EAAG,yBAAyB,EAAG,yBAAyB,GAAyB,EAAG,EAAG,MAAM,EAAG,WAAW,EAAY,EAAI,cAAc,EAAI,aAAa,EAAG,CAAC,SAAgB,GAA0B,EAAG,EAAU,CAAC,GAAsB,EAAG,MAAM,CAAS,EAAE,IAAI,GAAK,EAAE,KAAM,EAAG,UAAc,EAAG,SAAS,EAAG,OAAO,GAAsB,EAAG,MAAM,CAAS,CAAI,CAAC,SAAgB,GAAkB,EAAG,EAAO,EAAM,GAAM,CAAC,IAAM,EAAW,GAAQ,KAAK,EAAE,EAAU,MAAC,GAAO,EAAG,sBAAsB,MAAM,KAAK,IAAI,EAAG,qBAAqB,CAAU,EAAE,KAAK,IAAa,GAAW,IAAa,EAAG,MAAM,CAAU,EAAE,IAAI,GAAK,EAAE,KAAM,EAAG,UAAc,EAAG,SAAS,EAAG,OAAO,GAAa,EAAG,MAAM,CAAU,EAAI,EAAG,qBAAqB,EAAW,EAAG,gBAAgB,EAAW,CAA/J,CAAiK,CAAC,SAAgB,GAAyB,EAAG,CAAC,GAAe,EAAG,KAAK,EAAE,IAAI,GAAK,EAAE,KAAM,EAAG,UAAc,EAAG,SAAS,EAAG,OAAO,GAAe,EAAG,KAAK,EAAI,EAAG,qBAAqB,KAAK,EAAG,gBAAgB,EAAM,CAAC,SAAgB,GAAuB,EAAG,EAAI,EAAU,GAAgB,CAAG,EAAE,CAAC,EAAG,cAAc,EAAU,EAAG,iBAAiB,EAAI,eAAe,GAAa,CAAG,EAAE,EAAG,iBAAiB,EAAI,eAAe,GAAa,CAAG,EAAE,EAAG,YAAY,EAAI,UAAU,GAAQ,CAAG,EAAE,EAAG,gBAAgB,EAAI,cAAc,GAAY,CAAG,CAAE,CAAC,SAAgB,GAAyB,EAAO,EAAM,EAAW,EAAI,EAAK,EAAS,EAAc,CAAC,IAAM,EAAiB,GAA4B,EAAO,EAAI,CAAQ,EAAQ,EAAQ,GAA0B,EAAO,EAAI,CAAa,EAAQ,EAAa,OAAO,GAAkB,EAAE,CAAC,CAAC,KAAK,EAAQ,EAAS,EAAI,mBAAmB,SAAe,EAAkB,EAAI,gCAAgC,OAAO,EAAe,EAAuB,EAAI,iCAAiC,OAAO,CAAiB,CAAC,CAAC,YAAY,IAAI,SAAS,EAAI,gBAAgB,UAAU,CAAC,CAAC,GAAc,EAAQ,SAAS,EAAqB,IAAwB,EAAQ,gBAAgB,GAAK,EAAQ,eAAe,GAAO,CAAC,EAAI,0BAA0B,CAAK,CAAE,GAAG,GAAgB,EAAM,EAAW,EAAK,EAAiB,CAAO,CAAE,CAAC,SAAgB,GAAyB,EAAG,EAAI,EAAS,EAAM,EAAU,CAAC,IAAM,EAAiB,EAAI,eAAe,GAAa,CAAG,EAAQ,EAAiB,EAAI,eAAe,GAAa,CAAG,EAAQ,EAAY,EAAI,UAAU,GAAQ,CAAG,EAAQ,EAAgB,EAAI,cAAc,GAAY,CAAG,EAAK,IAAmB,EAAG,mBAAkB,GAA0B,EAAG,CAAG,EAAE,EAAG,iBAAiB,GAAqB,IAAmB,EAAG,mBAAkB,GAAqB,EAAG,CAAG,EAAE,EAAG,iBAAiB,GAAqB,IAAc,EAAG,cAAa,GAAwB,EAAG,EAAI,EAAS,CAAK,EAAE,EAAG,YAAY,GAAgB,IAAkB,EAAG,kBAAiB,GAAoB,EAAG,CAAG,EAAE,EAAG,gBAAgB,GAAiB,EAAG,cAAc,GAAW,EAAI,kBAAkB,GAAgB,CAAG,CAAE,CAAC,SAAgB,GAAuB,EAAS,EAAa,CAAC,IAAM,EAAO,CAAC,EAAwQ,OAAtQ,OAAO,QAAQ,GAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,EAAI,KAAW,CAAC,IAAM,EAAe,GAAS,OAAO,EAAO,GAAK,CAAC,GAAG,EAAQ,OAAO,GAAW,EAAa,CAAK,EAAS,GAAQ,OAAO,GAAiB,WAAkB,EAAe,CAAK,EAAQ,CAAC,CAAC,CAAgB,CAAE,CAAC,EAAS,CAAO,CAAC,SAAgB,GAAoB,EAAM,CAAC,EAAM,SAAS,GAAO,CAAI,EAAM,QAAQ,EAAM,UAAU,CAAC,EAAM,SAAS,YAAY,EAAM,SAAS,kBAAkB,CAAG,CAAC,CAAE,mBADlmI,KAAyJ,KAAiK,KAA8H,KAAoI,KAAmI,KCCn2B,SAAgB,IAAyB,CAA0tB,OAA/sB,IAAS,OAAmB,CAAC,UAAU,EAAE,WAAW,cAAc,cAAc,KAAK,cAAc,KAAK,YAAY,WAAW,cAAc,KAAK,aAAa,KAAK,YAAY,GAAK,eAAe,GAAK,iBAAiB,GAAM,eAAe,IAAI,cAAc,GAAM,uBAAuB,GAAM,aAAa,EAAE,MAAM,IAAI,IAAI,UAAU,IAAI,GAAG,GAAO,EAAA,8BAA+B,EAAO,IAAuB,CAAC,UAAU,EAAE,WAAW,cAAc,cAAc,KAAK,cAAc,KAAK,YAAY,WAAW,cAAc,KAAK,aAAa,KAAK,YAAY,GAAK,eAAe,GAAK,iBAAiB,GAAM,eAAe,IAAI,cAAc,GAAM,uBAAuB,GAAM,aAAa,EAAE,MAAM,IAAI,IAAI,UAAU,IAAI,GAAG,GAAU,EAAO,IAAuB,CAAC,SAAgB,IAAqB,CAAC,IAAM,EAAM,GAAwB,EAAM,GAAO,WAAiB,EAAM,UAAU,QAAQ,GAAU,CAAC,GAAG,CAAC,EAAS,CAAE,OAAO,EAAM,CAAC,QAAQ,KAAK,oCAAoC,CAAK,CAAE,CAAC,CAAC,CAAE,CAAC,SAAgB,GAAyB,EAAS,CAAC,IAAM,EAAM,GAAwB,EAAgC,OAA9B,EAAM,UAAU,IAAI,CAAQ,MAAY,CAAC,EAAM,UAAU,OAAO,CAAQ,CAAE,CAAE,CAAC,SAAgB,IAAyB,CAAC,IAAM,EAAM,GAAwB,EAAE,MAAM,CAAC,UAAU,EAAM,WAAW,EAAE,WAAW,EAAM,YAAY,cAAc,cAAc,EAAM,eAAe,KAAK,cAAc,EAAM,eAAe,KAAK,YAAY,EAAM,aAAa,WAAW,cAAc,EAAM,eAAe,KAAK,aAAa,EAAM,cAAc,KAAK,YAAY,EAAM,aAAa,GAAK,eAAe,EAAM,gBAAgB,GAAK,iBAAiB,EAAM,kBAAkB,GAAM,eAAe,EAAM,gBAAgB,IAAI,cAAc,EAAM,eAAe,GAAM,aAAa,EAAM,cAAc,EAAE,MAAM,MAAM,KAAK,EAAM,OAAO,SAAS,GAAG,CAAC,CAAC,CAAC,CAAE,uBAD7rD,KCAwI,SAAS,GAA6B,EAAO,CAAC,GAAG,CAAC,EAAO,OAAO,KAAK,IAAM,EAAK,EAAO,wBAAwB,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,EAAO,YAAY,KAAK,EAAO,eAAe,4BAA4B,GAAG,KAAK,KAAK,EAAO,eAAe,mBAAmB,GAAG,KAAK,MAAM,EAAO,eAAe,+BAA+B,GAAG,KAAK,MAAM,EAAO,OAAO,EAAE,OAAO,EAAO,QAAQ,EAAE,SAAS,EAAO,OAAO,OAAO,GAAG,UAAU,EAAO,OAAO,QAAQ,GAAG,QAAQ,EAAO,OAAO,SAAS,GAAG,OAAO,EAAO,eAAe,SAAS,KAAK,KAAK,EAAK,CAAC,EAAE,KAAK,MAAM,EAAK,CAAC,EAAE,EAAE,KAAK,MAAM,EAAK,CAAC,EAAE,MAAM,KAAK,MAAM,EAAK,KAAK,EAAE,OAAO,KAAK,MAAM,EAAK,MAAM,CAAC,EAAE,IAAI,CAAE,CAAC,SAAS,IAAgC,CAAC,GAAU,IAAS,OAAa,OAAO,KAAU,EAAA,+BAAuC,EAAO,IAA+B,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC,GAAG,IAAM,EAAM,EAAO,IAAiqB,OAA/nB,OAAO,EAAM,MAAO,aAAY,EAAM,SAAS,CAAC,IAAM,EAAS,MAAM,KAAK,SAAS,iBAAiB,QAAQ,CAAC,CAAC,CAAC,KAAK,EAAO,KAAS,CAAC,QAAM,KAAK,EAAO,eAAe,4BAA4B,GAAG,KAAK,KAAK,EAAO,eAAe,mBAAmB,GAAG,KAAK,MAAM,EAAO,eAAe,+BAA+B,GAAG,KAAK,UAAU,CAAC,CAAC,EAAO,YAAY,MAAM,EAAO,OAAO,EAAE,OAAO,EAAO,QAAQ,EAAE,SAAS,EAAO,OAAO,OAAO,GAAG,UAAU,EAAO,OAAO,QAAQ,GAAG,QAAQ,EAAO,OAAO,SAAS,EAAE,EAAE,EAAQ,EAAK,OAAO,OAAO,EAAM,MAAM,CAAC,CAAC,EAA8C,OAA5C,QAAQ,MAAM,CAAQ,EAAE,QAAQ,MAAM,CAAI,EAAQ,CAAC,WAAS,OAAK,OAAO,EAAM,QAAQ,CAAC,CAAC,CAAE,GAAU,CAAM,CAClxD,SAAgB,GAA4B,EAAM,EAAQ,CAAC,EAAE,CAAC,IAAM,EAAM,GAA+B,EAAE,GAAG,CAAC,EAAM,OAAO,IAAM,EAAQ,EAAQ,SAAS,EAAQ,QAAQ,eAAe,+BAA+B,GAAG,GAAG,EAAQ,MAAM,WAAW,GAAG,EAAM,IAAI,IAAU,EAAM,CAAC,IAAI,EAAE,EAAM,IAAI,QAAM,UAAQ,KAAK,EAAQ,MAAM,GAAG,OAAO,EAAQ,QAAQ,GAAG,WAAW,EAAQ,YAAY,GAAG,aAAa,EAAQ,cAAc,GAAG,mBAAmB,EAAQ,mBAAmB,eAAe,EAAQ,eAAe,UAAU,EAAQ,UAAU,UAAU,EAAQ,UAAU,OAAO,GAA6B,EAAQ,MAAM,EAAE,GAAG,KAAK,MAAM,YAAY,IAAI,CAAC,CAAC,EAAK,IAAQ,SAAU,EAAM,KAAK,GAAS,EAAe,IAAQ,WAAW,OAAO,EAAM,KAAK,GAAU,EAAM,OAAO,KAAK,CAAK,EAAK,EAAM,OAAO,OAAO,IAAG,EAAM,OAAO,MAAM,GAAkB,EAAQ,UAAiB,IAAS,QAAe,EAAO,uCAAmD,QAAQ,IAAI,8BAA8B,IAAQ,EAAM,QAAQ,OAAO,KAAK,EAAM,IAAI,CAAC,CAAG,CAAC,SAAgB,IAAiC,CAAC,GAAU,IAAS,OAAY,MAAO,GAAM,IAAM,EAAM,GAAwB,EAAE,OAAO,EAAM,aAAa,cAAc,EAAM,WAAW,GAAG,GAAG,CAAC,CAAC,EAAM,uBAAwB,uBAD/mC,KAA+H,KCAtJ,SAAgB,GAAoB,EAAM,CAAmD,OAA/C,IAAQ,KAAY,EAAK,IAAQ,KAAY,EAAS,CAAE,CAAC,SAAgB,GAAoB,EAAG,CAAC,GAAG,CAAC,EAAG,OAAO,IAAM,EAAI,EAAG,UAAa,GAAK,YAAW,EAAI,WAAW,YAAY,CAAG,EAAE,EAAG,OAAO,KAAK,EAAG,UAAU,KAAK,EAAG,YAAY,KAAK,EAAG,cAAc,EAAM,CAGna,SAAgB,GAAkB,EAAG,EAAI,EAAK,CAAC,GAAG,CAAC,EAAG,OAAO,KAAK,GAAG,CAAC,EAAI,kBAAkB,CAAC,EAA8B,OAAxB,GAAoB,CAAE,EAAS,KAAM,IAAM,EAAM,GAAoB,EAAI,iBAAiB,EAAE,GAAI,EAAG,OAA4kB,EAAG,cAAc,IAAO,EAAG,OAAO,UAAU,CAAK,EAAE,EAAG,YAAY,QAAvF,OAA3iB,EAAG,gBAAe,EAAG,cAAc,GAAK,GAAW,CAAC,CAAC,KAAK,GAAO,CAAC,GAAG,CAAC,EAAG,eAAe,EAAG,OAAO,OAAO,IAAM,EAAM,IAAI,EAAY,EAAI,EAAM,KAAK,EAAM,WAAW,GAAG,CAAC,EAAI,CAAC,EAAG,cAAc,GAAM,MAAO,CAAC,EAAM,UAAU,GAAoB,EAAI,iBAAiB,CAAC,EAAE,EAAI,MAAM,SAAS,WAAW,EAAI,MAAM,KAAK,MAAM,EAAI,MAAM,IAAI,MAAM,EAAI,MAAM,OAAO,OAAO,EAAI,MAAM,cAAc,OAAO,EAAI,MAAM,QAAQ,MAAM,EAAK,YAAY,CAAG,EAAE,EAAG,OAAO,EAAM,EAAG,UAAU,EAAI,EAAG,YAAY,GAAoB,EAAI,iBAAiB,EAAE,EAAG,cAAc,EAAM,CAAC,GAAU,KAAuF,OAAO,EAAG,MAAO,mBAH7vB,KCAwpB,SAAgB,GAAuB,EAAG,CAAK,IAAU,EAAG,sBAAsB,EAAG,sBAAsB,GAAG,EAAE,CAAC,SAAgB,GAAyB,EAAG,EAAS,EAAI,CAIl5B,GAAG,CAAnB,GAA2B,MAAM,EAAG,6BAA6B,EAAG,sBAAsB,IAAI,EAAG,wBAAwB,GAAU,EAAG,sBAAuB,OAAO,EAAG,qBAAA,MAGtE,GAA7G,EAAG,wBAAwB,MAAO,EAAG,uBAAuB,MAAM,EAAQ,EAAG,uBAAuB,IAAI,IAAQ,EAAG,6BAA6B,EAAG,sBAAsB,IAAI,EAAG,wBAAwB,GAAU,EAAG,sBAAuB,OAAO,EAAG,sBAAgQ,GAAxO,EAAG,uBAAuB,EAAI,EAAG,0BAA0B,EAAG,sBAAsB,EAAE,EAAG,sBAAsB,EAAY,EAAG,wBAAwB,MAAO,EAAG,uBAAuB,MAAM,EAAQ,EAAG,uBAAuB,IAAI,IAAQ,EAAG,qBAAqB,UAAU,GAAU,sBAAsB,CAAC,IAAM,EAAS,EAAS,sBAAsB,EAAQ,EAAS,EAAS,aAAa,EAAS,MAAY,EAAS,EAAS,cAAc,EAAS,OAAO,GAAG,EAAS,MAAM,GAAG,EAAS,OAAO,GAAG,EAAS,GAAG,EAAS,EAAmK,MAAhK,GAAG,sBAAsB,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,EAAS,OAAO,EAAS,MAAM,GAAK,WAAS,OAAO,EAAS,MAAM,GAAU,EAAE,OAAO,EAAS,OAAO,GAAU,CAAC,EAAS,EAAG,qBAAuB,CAA4J,MAA3J,GAAG,sBAAsB,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,EAAO,YAAY,GAAU,aAAa,EAAE,OAAO,EAAO,aAAa,GAAU,cAAc,EAAE,MAAM,EAAK,EAAS,EAAG,qBAAsB,CAAC,SAAgB,GAAqB,EAAG,EAAK,EAAS,CAAC,GAAG,CAAC,EAAK,OAAO,KAAK,IAAM,EAAU,EAAG,uBAAuB,GAAG,GAAW,IAAI,CAAI,EAAE,OAAO,EAAU,IAAI,CAAI,EAAE,IAAM,EAAQ,EAAK,sBAAsB,EAAE,GAAG,CAAC,GAAU,OAAO,CAAC,EAAS,SAAuC,OAA7B,GAAW,IAAI,EAAK,CAAO,EAAS,EAEx7C,IAAM,EAAO,EAAS,QAAQ,EAAQ,EAAO,EAAS,QAAQ,EAAQ,GAAM,EAAQ,KAAK,EAAS,SAAS,MAAM,EAAa,GAAK,EAAQ,IAAI,EAAS,SAAS,KAAK,EAAa,EAAM,EAAQ,MAAM,EAAa,EAAO,EAAQ,OAAO,EAAa,EAAK,CAAC,OAAK,MAAI,QAAM,SAAO,MAAM,EAAK,EAAM,OAAO,EAAI,CAAM,EAA4B,OAA1B,GAAW,IAAI,EAAK,CAAI,EAAS,CAAK,CAAC,SAAgB,GAAuB,EAAG,EAAI,EAAS,EAAI,CAAC,IAAM,EAAU,EAAG,mBAAmB,GAAG,CAAC,EAAI,qBAAqB,CAAC,EAAI,mBAA0B,IAAS,OAAwU,MAA3T,GAAG,qBAAqB,EAAE,EAAG,qBAAqB,EAAE,EAAG,0BAA0B,IAAA,GAAU,EAAG,0BAA0B,IAAA,GAAU,EAAG,0BAA0B,GAAG,EAAG,6BAA6B,EAAE,EAAG,iCAAiC,GAAG,EAAG,0BAA0B,EAAE,EAAG,gBAAgB,KAAK,EAAG,mBAAmB,GAAS,CAAC,EAAE,EAAE,EAAE,EAAE,OAAO,GAAM,OAAO,EAAI,EAAG,IAAM,EAAmB,OAAO,EAAI,gCAAgC,EAAE,CAAC,CAAC,KAAK,EAAQ,EAAoB,CAAC,EAAE,EAAI,+BAA+B,EAAI,0BAAgC,EAAa,IAAY,EAAI,kBAAkB,GAAG,GAAc,CAAC,EAAG,iBAAiB,CAAC,EAAG,gBAAgB,aAAa,IAAM,EAAG,uBAAuB,GAAG,CAAC,IAAM,EAAe,EAAG,gBAAgB,EAAG,mBAAmB,EAAI,kBAAkB,EAAG,gBAAgB,GAAuB,EAAI,kBAAkB,CAAQ,EAAE,EAAG,sBAAsB,EAAI,IAAO,GAAgB,IAAiB,EAAG,kBAAiB,EAAG,0BAA0B,GAAG,EAAG,6BAA6B,EAAE,EAAG,iCAAiC,GAAG,EAAG,0BAA0B,EAAG,CAAC,IAAI,EAAG,EAAG,gBAAmB,GAAI,CAAC,GAA6B,EAAG,CAAQ,IAAG,EAAG,gBAAgB,GAAuB,EAAI,kBAAkB,CAAQ,EAAE,EAAG,sBAAsB,EAAI,IAAI,EAAG,EAAG,gBAAgB,EAAG,0BAA0B,GAAG,EAAG,6BAA6B,EAAE,EAAG,iCAAiC,GAAG,EAAG,0BAA0B,GAAG,IAAM,EAAO,GAAW,IAAY,EAAI,kBAAkB,GAAuB,EAAU,CAAQ,EAAE,KAAW,EAAwB,CAAC,GAAoB,CAAC,CAAC,GAAQ,GAAsB,EAAO,CAAkB,GAAG,GAA0B,CAAkB,IAAI,GAA0B,CAAS,GAAG,GAA0B,CAAkB,IAAI,GAA0B,EAAG,oCAAoC,EAAQ,EAAkB,GAAqB,EAAwB,GAAG,CAAC,EAE7nE,MAA1Q,GAAG,qBAAqB,EAAE,EAAG,qBAAqB,EAAE,EAAG,0BAA0B,IAAA,GAAU,EAAG,0BAA0B,IAAA,GAAU,EAAG,0BAA0B,GAAG,EAAG,6BAA6B,EAAE,EAAG,iCAAiC,GAAG,EAAG,0BAA0B,EAAQ,CAAC,EAAE,EAAE,EAAE,EAAE,OAAO,GAAM,OAAO,EAAK,EAAG,IAAM,EAAS,GAAyB,EAAG,EAAS,CAAG,EAAQ,EAAqB,GAAM,CAAC,GAAG,CAAC,GAAa,IAAS,OAAY,OAAO,KAAK,IAAM,EAAK,GAAqB,EAAG,EAAK,CAAQ,EAAE,GAAG,CAAC,EAAK,OAAO,KAAK,IAAM,EAAM,EAAS,MAAY,EAAM,EAAS,OAAO,GAAG,CAAC,GAAO,CAAC,EAAM,OAAO,KAAK,IAAM,EAAQ,EAAI,eAAe,GAAS,EAAQ,EAAI,eAAe,GAAS,EAAI,EAAK,KAAK,EAAK,MAAM,GAAS,EAAS,KAAK,EAAM,GAAS,EAAI,EAAK,IAAI,EAAK,OAAO,GAAS,EAAS,IAAI,EAAM,GAAS,EAAc,EAAK,IAAI,EAAK,OAAO,EAAQ,EAAS,IAAU,EAAS,KAAK,IAAI,EAAE,KAAK,IAAI,EAAE,EAAE,EAAc,CAAK,CAAC,EAIx5B,EAAe,EAAiB,EAAI,EAAG,OAAO,GAAG,GAAK,qBAC1D,GAAY,EAAI,MAAM,EAAI,OAAO,EAAI,MAAM,GAAG,EAAM,GAAY,EAAI,IAAI,EAAI,SAAS,EAAI,MAAM,GAAG,MAAW,CAA4C,IAAM,EAAQ,GAAgB,EAA3D,GAAK,UAAU,SAAS,GAAG,CAA2C,EAAE,EAAW,EAAQ,MAAM,EAAM,EAAW,EAAQ,OAAO,CAAM,CAAC,MAAM,CAAC,EAAE,EAAI,GAAY,EAAI,uBAAuB,GAAG,EAAE,CAAC,EAAI,GAAY,EAAI,uBAAuB,GAAG,OAAO,EAAK,MAAM,EAAS,MAAM,EAAK,KAAK,EAAS,KAAK,GAAO,EAAK,OAAO,EAAS,KAAK,EAAK,IAAI,EAAS,IAAI,EAAM,UAAQ,CAAE,EAAQ,EAAe,EAAqB,CAAE,EAAE,GAAG,CAAC,EAAgB,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,OAAO,GAAM,OAAO,EAAI,EAAG,IAAM,EAAY,EAAqB,CAAM,EAAQ,EAAa,EAAe,OAAa,EAAQ,EAAe,EAAQ,EAAQ,EAAe,EAAuc,GAApa,EAAI,oBAAma,GAAc,GAAW,CAAC,EAGh8B,MAAlR,GAAG,0BAA0B,GAAG,EAAG,6BAA6B,EAAE,EAAG,iCAAiC,GAAG,EAAG,0BAA0B,EAAE,EAAG,qBAAqB,EAAQ,EAAG,qBAAqB,EAAQ,EAAG,0BAA0B,EAAQ,EAAG,0BAA0B,EAAc,CAAC,EAAE,EAAU,EAAQ,OAAO,GAAK,OAAO,EAAa,SAAS,EAAe,QAAQ,EAAG,IAAM,EAAkB,CAAC,CAAC,EAAG,4BAA4B,EAA2vB,GAAtuB,IAAoB,GAAc,KAAqB,EAAG,uBAAuB,IAAA,IAAW,EAAG,uBAAuB,IAAA,IAAW,IAAc,EAAG,qCAAqC,GAAW,GAAG,EAAG,0BAA0B,EAAkB,EAAG,6BAA6B,EAAG,sBAAsB,GAAa,GAAG,EAAQ,EAAG,6BAA6B,EAAG,sBAAsB,GAAa,GAAG,EAAQ,EAAG,2BAA2B,EAAQ,EAAG,2BAA2B,EAAQ,EAAG,6BAA6B,EAAI,EAAG,gCAAgC,KAAK,IAAI,IAAI,KAAK,EAAI,uBAAuB,GAAG,GAAG,GAAY,EAA2F,EAAG,0BAA0B,IAArG,EAAG,0BAA0B,GAAG,EAAG,6BAA6B,GAA8C,CAAC,GAAmB,GAAc,EAGz/B,MAAhN,GAAG,iCAAiC,GAAG,EAAG,0BAA0B,EAAE,EAAG,qBAAqB,EAAQ,EAAG,qBAAqB,EAAQ,EAAG,0BAA0B,EAAQ,EAAG,0BAA0B,EAAc,CAAC,EAAE,EAAU,EAAQ,OAAO,GAAK,OAAO,EAAa,SAAS,EAAe,QAAQ,EAAG,GAAG,CAAC,IAAoB,EAAG,2BAA2B,GAAG,EAA+I,MAA1I,GAAG,qBAAqB,EAAQ,EAAG,qBAAqB,EAAQ,EAAG,0BAA0B,EAAQ,EAAG,0BAA0B,EAAc,CAAC,EAAE,EAAU,EAAQ,OAAO,GAAK,OAAO,EAAa,SAAS,EAAe,QAAQ,EAAG,GAAG,GAAmB,EAAG,6BAA6B,EAAE,CAAC,EAAG,2BAA2B,EAAQ,EAAG,2BAA2B,EAAQ,IAAM,EAAS,KAAK,IAAI,EAAE,EAAG,iCAAiC,GAAG,EAAQ,EAAE,KAAK,IAAI,GAAG,EAAI,EAAG,8BAA8B,CAAQ,EAAQ,EAAM,GAAW,EAAE,IAAE,EAAukB,MAApkB,GAAG,sBAAsB,EAAG,8BAA8B,KAAW,EAAG,4BAA4B,IAAU,EAAG,8BAA8B,IAAU,EAAM,EAAG,sBAAsB,EAAG,8BAA8B,KAAW,EAAG,4BAA4B,IAAU,EAAG,8BAA8B,IAAU,EAAM,EAAG,0BAA0B,EAAG,qBAAqB,EAAG,0BAA0B,EAAG,qBAAwB,GAAG,IAAG,EAAG,6BAA6B,EAAE,EAAG,6BAA6B,EAAG,qBAAqB,EAAG,6BAA6B,EAAG,sBAA4B,CAAC,EAAE,EAAG,qBAAqB,EAAE,EAAG,qBAAqB,OAAO,GAAK,OAAO,EAAa,SAAS,EAAe,QAAQ,CAAE,CAAC,IAAM,EAAO,KAAK,IAAI,EAAE,KAAK,IAAI,EAAE,EAAI,uBAAuB,CAAC,CAAC,EAGznD,EAAM,EAAG,sBAAsB,EAAc,EAAM,EAAG,sBAAsB,EAAc,EAAG,KAAK,IAAI,EAAQ,CAAK,EAAQ,EAAG,KAAK,IAAI,EAAQ,CAAK,EAAQ,EAAI,EAAG,OAAW,EAAS,EAG8F,MAH5F,CAEtG,EAFyG,GAAK,sBAC5L,EAAI,MAAM,EAAI,OAAO,EAAI,MAAM,GAAG,KACe,GAAgB,EAAvD,GAAK,UAAU,SAAS,GAAG,CAAoD,CAAC,CAAC,MAAM,KAA2B,GAA4E,IAAzC,EAAG,GAAU,EAAG,IAC1L,EAAG,qBAAqB,EAAQ,EAAG,qBAAqB,IAAc,EAAG,qBAAqB,GAAO,EAAQ,GAAO,EAAO,EAAG,qBAAqB,GAAO,EAAQ,GAAO,GAAQ,EAAG,0BAA0B,EAAG,qBAAqB,EAAG,0BAA0B,EAAG,qBAA2B,CAAC,EAAE,EAAG,qBAAqB,EAAE,EAAG,qBAAqB,OAAO,GAAK,OAAO,EAAa,SAAS,EAAe,QAAQ,CAAE,CAAC,SAAgB,GAAkC,EAAG,EAAI,EAAS,EAAI,CAAC,GAAG,CAAC,EAAI,gCAAgC,CAAC,EAAI,4BAAmC,IAAS,OAAgF,MAAnE,GAAG,yBAAyB,KAAK,EAAG,4BAA4B,GAAS,CAAC,EAAE,EAAE,EAAE,EAAE,OAAO,GAAM,OAAO,GAAK,SAAS,CAAC,EAAG,IAAM,EAAM,EAAI,4BAA8B,EAAG,8BAA8B,GAAO,CAAC,EAAG,0BAA0B,CAAC,EAAG,yBAAyB,aAAa,CAAC,GAA6B,EAAG,yBAAyB,CAAQ,GAAG,IAAM,EAAG,gCAAgC,MAAI,EAAG,4BAA4B,EAAM,EAAG,yBAAyB,GAAuB,EAAM,CAAQ,EAAE,EAAG,+BAA+B,EAAI,KAAK,IAAM,EAAG,EAAG,yBAAyB,GAAG,CAAC,EAAI,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,OAAO,GAAM,OAAO,GAAM,SAAS,CAAC,EAAG,IAAM,EAAS,GAAyB,EAAG,EAAS,CAAG,EAAQ,EAAK,GAAqB,EAAG,EAAG,CAAQ,EAAE,GAAG,CAAC,EAAM,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,OAAO,GAAM,OAAO,GAAK,SAAS,CAAC,EAAG,IAAM,EAAM,EAAS,MAAY,EAAM,EAAS,OAAO,GAAG,CAAC,GAAO,CAAC,EAAO,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,OAAO,GAAM,OAAO,GAAK,SAAS,CAAC,EAAG,IAAM,EAAQ,EAAI,eAAe,GAAS,EAAc,EAAK,IAAI,EAAK,OAAO,EAAQ,EAAS,IAAU,EAAS,KAAK,IAAI,EAAE,KAAK,IAAI,EAAE,EAAE,EAAc,CAAK,CAAC,EAA8H,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,OAAO,GAAK,OAA1I,EAAK,MAAM,EAAS,MAAM,EAAK,KAAK,EAAS,KAAK,GAAO,EAAK,OAAO,EAAS,KAAK,EAAK,IAAI,EAAS,IAAI,EAAwC,UAAQ,CAAE,CAAC,SAAgB,GAAwB,EAAG,EAAI,EAAS,EAAW,CAA0F,GAAtF,CAAC,GAAwF,EAAlD,EAAG,mBAAmB,GAAG,EAAG,iBAAiB,IAAqB,EAAG,qBAAqB,OAAO,IAAI,EAAW,EAAE,GAAG,EAAG,mBAAmB,EAAE,CAAC,IAAM,GAAe,YAAY,IAAI,EAAE,EAAG,oBAAoB,IAAU,EAAe,KAAK,IAAI,KAAK,EAAI,kBAAkB,GAAG,EAAE,GAAG,GAAe,EAAgB,EAAG,mBAAmB,MAAO,CAAsC,IAAM,EAAM,GAAW,EAApD,EAAc,IAA0C,EAAG,EAAW,KAAK,IAAI,EAAW,CAAK,CAAE,CAAC,CAAqH,GAApH,EAAG,kBAAkB,EAAW,GAAmB,EAAW,UAAU,GAAY,KAAK,IAAI,EAAW,QAAQ,CAAC,CAAC,EAAK,EAAG,iBAAiB,EAAE,CAAC,EAAG,qBAAqB,GAAM,GAAmB,EAAW,aAAa,iBAAiB,EAAE,MAAO,CAAC,GAAG,EAAI,WAAW,CAA2C,IAAM,GAAlC,EAAI,qBAAqB,KAAyB,EAAE,GAAe,EAAO,KAAK,EAAG,qBAAqB,GAAM,GAAmB,EAAW,SAAS,QAAQ,EAAO,QAAQ,CAAC,EAAE,IAAI,EAAE,GAAmB,EAAW,aAAa,iBAAiB,IAAQ,GAAqB,EAAW,QAAQ,EAAK,GAAY,MAAM,GAAqB,EAAW,YAAY,EAAE,EAAG,qBAAqB,KAAW,GAAmB,EAAW,aAAa,SAAS,EAAE,EAAG,qBAAqB,KAAQ,MAAO,CAAC,GAAqB,EAAW,QAAQ,EAAK,GAAY,MAAM,GAAqB,EAAW,YAAY,EAAE,EAAG,qBAAqB,KAAW,GAAmB,EAAW,aAAa,SAAS,EAAE,EAAG,qBAAqB,GAAO,CAAC,SAAgB,GAA0B,EAAI,CAAsB,OAAjB,EAAwB,KAAK,IAAI,EAAI,eAAe,CAAC,EAAE,MAAM,KAAK,IAAI,EAAI,eAAe,CAAC,EAAE,MAAM,KAAK,IAAI,EAAI,eAAe,CAAC,EAAE,MAAM,KAAK,KAAK,EAAI,aAAa,GAAG,CAAC,EAAE,MAAM,KAAK,IAAI,EAAI,eAAe,CAAC,EAAE,MAAM,KAAK,IAAI,EAAI,eAAe,CAAC,EAAE,MAAM,KAAK,IAAI,EAAI,eAAe,CAAC,EAAE,KAA5Q,EAAiR,CAAC,SAAgB,GAAoB,EAAI,CAAC,OAAO,GAAK,eAAe,EAAM,CAAC,SAAgB,GAAuB,EAAG,EAAI,EAAW,EAAM,GAAM,CAAI,MAAC,GAAI,CAAC,GAAO,CAAC,GAAK,iBAAiB,CAAC,GAA0B,CAAG,KAAS,EAAG,mBAAmB,YAAY,IAAI,EAAK,IAAY,EAAW,MAAM,QAAQ,KAAQ,EAAI,YAAY,GAAW,CAAC,IAAM,EAAU,EAAI,qBAAqB,GAAG,EAAW,MAAM,OAAO,QAAQ,EAAU,KAAK,EAAW,MAAM,WAAW,kBAAkB,EAAG,iBAAiB,YAAY,IAAI,CAAE,CAAC,CAAC,SAAgB,GAA4B,EAAO,EAAW,EAAI,CAAC,GAAG,CAAC,EAAO,OAA4C,IAAM,EAAE,EAAE,KAAK,IAAI,EAAE,KAAK,IAAI,EAA5C,GAAY,CAAkD,CAAC,EAAQ,GAAS,EAAI,eAAe,GAAG,EAAQ,GAAS,EAAI,eAAe,GAAG,EAAQ,GAAS,EAAI,eAAe,GAAG,EAAQ,EAAY,IAAI,EAAI,aAAa,GAAG,GAAG,EAAQ,GAAY,EAAI,eAAe,GAAG,KAAK,GAAG,EAAE,IAAU,GAAY,EAAI,eAAe,GAAG,KAAK,GAAG,EAAE,IAAU,GAAY,EAAI,eAAe,GAAG,KAAK,GAAG,EAAE,IAAI,EAAO,SAAS,GAAG,GAAS,EAAO,iBAAiB,GAAG,EAAO,SAAS,GAAG,GAAS,EAAO,iBAAiB,GAAG,EAAO,SAAS,GAAG,GAAS,EAAO,iBAAiB,GAAG,EAAO,SAAS,GAAG,GAAY,EAAO,oBAAoB,GAAG,EAAO,SAAS,GAAG,GAAY,EAAO,oBAAoB,GAAG,EAAO,SAAS,GAAG,GAAY,EAAO,oBAAoB,GAAG,IAAM,EAAU,EAAO,qBAAqB,EAAK,IAAY,GAAG,EAAO,MAAM,eAAe,EAAY,CAAS,EAAG,EAAO,gBAAgB,EAAQ,EAAO,gBAAgB,EAAQ,EAAO,gBAAgB,EAAQ,EAAO,mBAAmB,EAAW,EAAO,mBAAmB,EAAW,EAAO,mBAAmB,EAAW,EAAO,oBAAoB,CAAY,CAAC,SAAgB,GAA4B,EAAO,CAAK,IAAc,EAAO,gBAAgB,EAAE,EAAO,gBAAgB,EAAE,EAAO,gBAAgB,EAAE,EAAO,mBAAmB,EAAE,EAAO,mBAAmB,EAAE,EAAO,mBAAmB,EAAE,EAAO,oBAAoB,EAAE,CAAC,SAAgB,GAAyB,EAAO,EAAO,CAAK,IAAc,EAAO,SAAS,IAAI,GAAQ,GAAG,IAAI,EAAO,uBAAuB,GAAG,EAAO,SAAS,IAAI,GAAQ,GAAG,IAAI,EAAO,uBAAuB,GAAG,EAAO,sBAAsB,GAAQ,GAAG,EAAE,EAAO,sBAAsB,GAAQ,GAAG,EAAE,CAAC,SAAgB,GAA2B,EAAO,EAAO,EAAI,EAAS,EAAE,EAAS,EAAE,EAAS,EAAE,CAAC,GAAG,CAAC,GAAQ,CAAC,GAAQ,OAAO,OAAO,IAAM,EAAS,KAAK,IAAI,EAAE,KAAK,IAAI,EAAE,EAAO,UAAU,CAAC,CAAC,EAAQ,EAAW,EAAI,uBAAuB,EAAQ,EAAW,EAAI,uBAAuB,EAAQ,EAAW,EAAI,uBAAuB,EAAE,EAAO,SAAS,GAAG,EAAW,EAAS,GAAS,EAAO,SAAS,GAAG,EAAW,EAAS,GAAS,EAAO,SAAS,GAAG,EAAW,EAAS,EAAS,CAAC,SAAgB,GAA8B,EAAO,EAAO,EAAI,EAAS,EAAE,EAAS,EAAE,EAAS,EAAE,EAAU,EAAE,CAAC,GAAG,CAAC,GAAQ,CAAC,GAAQ,QAAQ,CAAC,EAAI,+BAA+B,OAAO,IAAM,EAAS,KAAK,IAAI,EAAE,KAAK,IAAI,EAAE,EAAO,UAAU,CAAC,CAAC,EAAQ,EAAQ,EAAI,yBAAyB,EAAQ,EAAQ,EAAI,yBAAyB,EAAQ,EAAQ,EAAI,yBAAyB,EAAQ,EAAgB,EAAI,qBAAqB,EAAE,EAAO,SAAS,GAAG,EAAQ,EAAS,EAAO,SAAS,GAAG,EAAQ,EAAS,EAAO,SAAS,GAAG,EAAQ,EAAS,IAAM,EAAgB,GAAG,EAAgB,GAAG,EAAS,EAAO,MAAM,eAAe,CAAe,CAAE,CAAC,SAAgB,GAA0B,EAAO,CAAK,IAAc,EAAO,sBAAsB,EAAE,EAAO,sBAAsB,EAAE,CAAC,SAAgB,GAA4B,EAAO,EAAI,EAAG,EAAO,GAAM,CAAC,GAAG,CAAC,EAAO,OAAO,GAAG,GAAQ,EAAE,GAAK,kBAAkB,KAAQ,GAAI,EAAE,CAAC,EAAO,SAAS,kBAAkB,EAAE,MAAO,CAAC,IAAM,EAAY,EAAI,iBAAiB,GAAG,EAAO,SAAS,mBAAmB,EAAO,SAAS,mBAAmB,GAAG,EAAG,EAAY,EAAO,SAAS,GAAG,EAAO,SAAS,iBAAkB,CAAC,SAAgB,GAAqB,EAAE,EAAI,CAAC,OAAO,GAAK,oBAAoB,GAAG,cAAc,SAAS,GAAG,cAAc,OAAO,GAAG,MAAM,aAAa,OAAO,CAAE,CAAC,SAAgB,GAA6B,EAAK,CAAC,GAAU,IAAS,OAAY,OAAO,KAAK,IAAI,EAAQ,GAAM,eAAe,KAAK,KAAM,GAAS,IAAU,SAAS,MAAK,CAAC,IAAM,EAAM,EAAO,iBAAiB,CAAO,EAAQ,EAAU,EAAM,WAAW,EAAM,SAAwI,IAA9G,IAAY,QAAQ,IAAY,UAAU,IAAY,YAAY,EAAQ,aAAa,EAAQ,aAAa,EAAe,OAAO,EAAQ,EAAQ,EAAQ,aAAc,CAAC,OAAO,SAAS,kBAAkB,SAAS,iBAAiB,SAAS,MAAM,IAAK,CAAC,SAAgB,GAAoB,EAAG,EAAI,CAAC,GAAG,CAAC,EAAG,MAAM,OAAO,IAAM,EAAQ,EAAG,MACnrQ,EAAQ,SAAS,IAAI,EAAE,EAAE,CAAC,EAAE,EAAQ,SAAS,IAAI,EAAE,EAAE,CAAC,EACtD,GAAS,KAAK,GAA4B,CAAO,CAAC,EAAE,IAAM,EAAU,GAAS,UAAU,EAAS,EAChG,EAAQ,SAAS,IAAI,CAAC,EAAU,GAAG,EAAI,cAAc,GAAG,CAAC,EAAU,GAAG,EAAI,cAAc,GAAG,CAAC,EAAU,GAAG,EAAI,cAAc,EAAE,EAAE,EAAG,WAAW,EAAQ,SAAS,EAAE,EAAG,WAAW,EAAQ,SAAS,EAAE,EAAG,WAAW,EAAQ,SAAS,EAChO,EAAQ,SAAS,KAAK,EAAI,gBAAgB,GAAG,IAAU,EAAI,gBAAgB,GAAG,IAAU,EAAI,gBAAgB,GAAG,EAAQ,EACvH,EAAG,SAAS,OAAO,IAAI,EAAE,EAAE,CAAC,EAAE,EAAG,SAAS,OAAO,EACjD,GAAS,KAAK,GAA4B,CAAO,CAAC,EAAE,EAAG,OAAO,SAAS,EAAE,GAAS,IAAI,EAAE,KAAK,EAAG,YAAY,EAAG,OAAO,SAAS,EAAE,EAAG,YAAY,EAAG,OAAO,SAAS,EAAE,IAAM,EAAG,GAAS,QAAQ,EAAS,EAAQ,EAAK,KAAK,IAAI,EAAG,EAAE,EAAG,EAAE,EAAG,CAAC,EAAE,IAAI,EAAG,SAAS,OAAO,OAAO,KAAK,CAAC,EAAK,EAAG,SAAS,OAAO,OAAO,MAAM,EAAK,EAAG,SAAS,OAAO,OAAO,IAAI,EAAK,EAAG,SAAS,OAAO,OAAO,OAAO,CAAC,EAAK,EAAG,SAAS,OAAO,OAAO,uBAAuB,EAAE,EAAG,WAAW,EAAQ,SAAS,EAAE,EAAG,cAAc,EAAQ,SAAS,EAAE,EAAG,cAAc,EAAQ,SAAS,EAAE,EAAG,cAAc,EAAQ,SAAS,CAAE,CAAC,SAAgB,GAAmB,EAAG,EAAI,KAAK,EAAO,KAAK,CAAI,CAAC,GAAI,OAAO,CAAC,EAAG,SAAc,EAAG,OAAO,SAAS,EAAE,EAAG,MAAM,uBAAuB,EAA6B,GAAQ,QAAQ,IAAM,EAAI,uBAAuB,EAAI,uBAAuB,EAAI,wBAEt0B,GAAS,KAAK,GAA4B,EAAG,KAAK,CAAC,EAAE,EAAG,OAAO,SAAS,EAAE,GAAS,IAAI,EAAE,MAAW,EAAG,OAAO,SAAS,GAAG,EAAG,aAAa,EAAG,OAAO,SAAS,IAAI,EAAG,MAAM,uBAAuB,GAAI,EAAG,OAAO,SAAS,EAAE,EAAG,aAAa,EAAE,uBApC1H,KAAmI,KAAoL,KAAmN,KAA0I,KCArN,SAAgB,GAAyB,EAAK,EAAS,EAAE,CAAC,IAAM,EAAE,KAAK,IAAI,EAAE,KAAK,IAAI,EAAE,OAAO,CAAQ,GAAG,CAAC,CAAC,EAAQ,EAAY,OAAO,SAAS,OAAO,GAAM,KAAK,CAAC,EAAE,OAAO,EAAK,KAAK,EAAE,EAAQ,EAAS,GAAmB,GAAM,SAAS,CAAC,EAAE,GAAM,MAAM,EAAE,EAAE,GAAM,MAAM,EAAE,EAAE,GAAM,MAAM,CAAC,CAAC,EAAQ,EAAS,GAAmB,GAAM,SAAS,CAAC,EAAE,GAAM,MAAM,EAAE,EAAE,GAAM,MAAM,EAAE,EAAE,GAAM,MAAM,CAAC,CAAC,EAAQ,EAAM,GAAmB,GAAM,MAAM,CAAC,EAAE,GAAM,QAAQ,EAAY,EAAE,GAAM,QAAQ,EAAY,EAAE,GAAM,QAAQ,CAAW,CAAC,EAAE,MAAM,CAAC,KAAK,EAAS,EAAE,EAAE,KAAK,EAAS,EAAE,EAAE,KAAK,EAAS,EAAE,EAAE,KAAK,EAAS,EAAE,EAAE,KAAK,EAAS,EAAE,EAAE,KAAK,EAAS,EAAE,EAAE,OAAO,GAAG,EAAM,EAAE,GAAG,EAAE,OAAO,GAAG,EAAM,EAAE,GAAG,EAAE,OAAO,GAAG,EAAM,EAAE,GAAG,EAAE,QAAQ,IAAI,GAAM,SAAS,GAAG,GAAG,CAAC,CAAE,CAAC,SAAgB,GAAyB,EAAO,EAAO,CAAC,IAAM,EAAS,GAAmB,IAAS,GAAG,EAAO,WAAW,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAQ,EAAS,GAAmB,IAAS,GAAG,EAAO,WAAW,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAQ,EAAW,IAAS,GAAG,EAAO,QAAc,EAAY,OAAO,CAAU,EAAqJ,MAAM,CAAC,WAAS,WAAS,MAAhK,IAAa,IAAI,OAAO,SAAS,CAAW,EAAE,CAAC,EAAE,EAAY,EAAE,EAAY,EAAE,CAAW,EAAE,GAAmB,EAAW,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAgC,CAAE,CAAC,SAAgB,GAAkC,EAAI,CAAC,GAAG,CAAC,EAAI,OAAO,KAAK,EAAI,SAAS,EAAI,UAAU,CAAC,EAAM,EAAI,SAAS,+BAA8B,EAAI,SAAS,6BAA6B,CAAC,SAAS,EAAI,SAAS,MAAM,EAAE,SAAS,EAAI,SAAS,MAAM,EAAE,MAAM,EAAI,MAAM,MAAM,CAAC,GAAG,IAAM,EAAK,EAAI,SAAS,6BAA6B,MAAM,CAAC,SAAS,EAAK,SAAS,MAAM,EAAE,SAAS,EAAK,SAAS,MAAM,EAAE,MAAM,EAAK,MAAM,MAAM,CAAC,CAAE,CAAC,SAAgB,GAAoC,EAAI,CAAK,GAAK,UAAgB,OAAO,EAAI,SAAS,4BAA6B,CAAC,SAAgB,GAAiC,EAAI,EAAO,EAAO,CAAC,IAAM,EAAU,GAAyB,EAAO,CAAM,EAAQ,EAAU,IAAS,iBAAiB,GAAkC,CAAG,EAAE,KAAW,EAAa,GAAW,UAAU,EAAI,SAAS,MAAM,EAAQ,EAAa,GAAW,UAAU,EAAI,SAAS,MAAM,EAAQ,EAAU,GAAW,OAAO,EAAI,MAAM,MAAM,EAAE,MAAM,CAAC,eAAa,eAAa,YAAU,eAAe,EAAa,MAAM,CAAC,CAAC,IAAI,IAAIC,EAAc,EAAU,SAAS,EAAE,EAAU,SAAS,EAAE,EAAU,SAAS,CAAC,CAAC,EAAE,eAAe,IAAIC,GAAY,EAAa,EAAE,EAAU,SAAS,EAAE,GAAS,EAAa,EAAE,EAAU,SAAS,EAAE,GAAS,EAAa,EAAE,EAAU,SAAS,EAAE,GAAS,EAAa,KAAK,EAAE,YAAY,IAAID,EAAc,EAAU,EAAE,KAAK,IAAI,KAAK,EAAU,MAAM,CAAC,EAAE,EAAU,EAAE,KAAK,IAAI,KAAK,EAAU,MAAM,CAAC,EAAE,EAAU,EAAE,KAAK,IAAI,KAAK,EAAU,MAAM,CAAC,CAAC,CAAC,CAAE,CAAC,SAAgB,GAA4B,EAAU,EAAU,CAAC,OAAO,GAA+B,EAAU,CAAC,WAAS,CAAC,CAAE,CAAC,SAAgB,GAA2B,EAAS,EAAU,CAAC,OAAO,GAA8B,EAAS,CAAC,WAAS,CAAC,CAAE,CAAC,SAAgB,GAAY,EAAI,EAAI,CAAC,MAAM,CAAC,CAAC,GAAK,OAAO,UAAU,eAAe,KAAK,EAAI,CAAG,CAAE,CAAC,SAAgB,GAAgC,EAAM,EAAU,CAAC,EAAE,CAAC,IAAM,EAAO,CAAC,GAAG,GAAW,CAAC,CAAC,EAAuN,OAAlN,GAAY,EAAM,YAAY,IAAE,EAAO,MAAM,EAAM,YAAc,GAAY,EAAM,eAAe,IAAE,EAAO,SAAS,EAAM,eAAiB,GAAY,EAAM,eAAe,IAAE,EAAO,SAAS,EAAM,eAAqB,CAAO,CAAC,SAAgB,GAA6B,EAAM,CAAC,IAAM,EAAS,CAAC,GAAG,GAAO,oBAAoB,CAAC,CAAC,EAAQ,EAAU,CAAC,GAAG,EAAS,WAAW,CAAC,CAAC,EAAoW,OAA/V,GAAY,EAAM,cAAc,IAAE,EAAS,OAAO,EAAM,cAAgB,GAAY,EAAM,sBAAsB,IAAE,EAAU,MAAM,EAAM,sBAAwB,GAAY,EAAM,yBAAyB,IAAE,EAAU,SAAS,EAAM,yBAA2B,GAAY,EAAM,yBAAyB,IAAE,EAAU,SAAS,EAAM,yBAA8B,CAAC,GAAG,EAAS,WAAS,CAAE,CAAC,SAAgB,GAAsC,EAAM,CAAC,IAAM,EAAS,GAAO,UAAU,CAAC,EAAQ,EAAa,CAAC,GAAG,EAAS,cAAc,CAAC,CAAC,EAAQ,EAAmB,CAAC,GAAG,EAAS,oBAAoB,CAAC,CAAC,EAA0gB,MAAxgB,GAAS,gBAAgB,GAAQ,GAAY,EAAM,sBAAsB,IAAE,EAAS,qBAAqB,EAAM,sBAAwB,GAAY,EAAM,uBAAuB,IAAE,EAAS,cAAc,EAAM,uBAAyB,GAAY,EAAM,sBAAsB,IAAE,EAAa,MAAM,EAAM,sBAAwB,GAAY,EAAM,yBAAyB,IAAE,EAAa,SAAS,EAAM,yBAA2B,GAAY,EAAM,yBAAyB,IAAE,EAAa,SAAS,EAAM,yBAA8B,CAAC,GAAG,EAAS,eAAa,oBAAkB,CAAE,CAAC,SAAgB,GAA8B,EAAM,EAAU,CAAC,EAAE,CAAC,IAAM,EAAY,GAAO,OAAO,QAAQ,MAAM,CAAC,GAAG,EAAM,QAAQ,GAAa,CAAC,CAAC,GAAO,QAAQ,UAAU,GAAgC,EAAM,CAAS,EAAE,mBAAmB,GAA6B,CAAK,EAAE,SAAS,GAAsC,CAAK,CAAC,CAAE,CAAC,SAAgB,GAAmB,EAAM,EAAS,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,MAAM,QAAQ,CAAK,EAAG,MAAM,CAAC,EAAE,OAAO,SAAS,OAAO,EAAM,EAAE,CAAC,EAAE,OAAO,EAAM,EAAE,EAAE,EAAS,EAAE,EAAE,OAAO,SAAS,OAAO,EAAM,EAAE,CAAC,EAAE,OAAO,EAAM,EAAE,EAAE,EAAS,EAAE,EAAE,OAAO,SAAS,OAAO,EAAM,EAAE,CAAC,EAAE,OAAO,EAAM,EAAE,EAAE,EAAS,CAAC,EAAG,GAAG,GAAO,OAAO,GAAQ,SAAU,MAAM,CAAC,EAAE,OAAO,SAAS,OAAO,EAAM,CAAC,CAAC,EAAE,OAAO,EAAM,CAAC,EAAE,EAAS,EAAE,EAAE,OAAO,SAAS,OAAO,EAAM,CAAC,CAAC,EAAE,OAAO,EAAM,CAAC,EAAE,EAAS,EAAE,EAAE,OAAO,SAAS,OAAO,EAAM,CAAC,CAAC,EAAE,OAAO,EAAM,CAAC,EAAE,EAAS,CAAC,EAAG,GAAG,OAAO,GAAQ,SAAS,OAAO,EAAS,IAAM,EAAM,EAAM,KAAK,CAAC,CAAC,MAAM,QAAQ,CAAC,CAAC,IAAI,GAAM,OAAO,CAAI,CAAC,EAAE,MAAM,CAAC,EAAE,OAAO,SAAS,EAAM,EAAE,EAAE,EAAM,GAAG,EAAS,EAAE,EAAE,OAAO,SAAS,EAAM,EAAE,EAAE,EAAM,GAAG,EAAS,EAAE,EAAE,OAAO,SAAS,EAAM,EAAE,EAAE,EAAM,GAAG,EAAS,CAAC,CAAE,CAAC,SAAgB,GAA+B,EAAU,EAAQ,CAAC,EAAE,CAAC,IAAM,EAAM,OAAO,GAAU,SAAS,EAAQ,OAAO,GAAS,OAAO,CAAC,EAAQ,EAAa,OAAO,GAAU,UAAU,EAAQ,GAAS,UAAgB,EAAQ,GAAW,SAAS,GAAW,CAAC,EAAQ,EAAW,GAAW,YAAY,IAAU,EAAU,IAAe,IAAA,GAAyB,CAAC,CAAC,GAAO,GAAO,EAA/B,CAAC,CAAC,EAA8C,EAAgB,GAAmB,EAAQ,SAAS,CAAC,EAAE,EAAQ,MAAM,EAAE,EAAE,EAAQ,MAAM,EAAE,EAAE,EAAQ,MAAM,CAAC,CAAC,EAAQ,EAAgB,GAAmB,EAAQ,SAAS,CAAC,EAAE,EAAQ,MAAM,EAAE,EAAE,EAAQ,MAAM,EAAE,EAAE,EAAQ,MAAM,CAAC,CAAC,EAAQ,EAAgB,CAAC,GAAG,EAAQ,KAAK,EAAgB,EAAE,KAAK,EAAgB,EAAE,KAAK,EAAgB,EAAE,KAAK,EAAgB,EAAE,KAAK,EAAgB,EAAE,KAAK,EAAgB,CAAC,EAAE,GAAG,CAAC,EAAU,OAAO,EAAgB,IAAM,EAAa,GAAW,QAAQ,CAAC,EAAQ,EAAe,GAAmB,GAAW,gBAAgB,EAAa,SAAS,CAAC,EAAE,GAAW,YAAY,EAAa,KAAK,EAAE,GAAW,YAAY,EAAa,KAAK,EAAE,GAAW,YAAY,EAAa,IAAI,CAAC,EAAQ,EAAe,GAAmB,GAAW,gBAAgB,EAAa,SAAS,CAAC,EAAE,GAAW,YAAY,EAAa,KAAK,EAAE,GAAW,YAAY,EAAa,KAAK,EAAE,GAAW,YAAY,EAAa,IAAI,CAAC,EAAQ,EAAO,CAAC,QAAQ,GAAW,eAAe,EAAa,QAAQ,MAAM,GAAW,aAAa,EAAa,MAAM,KAAK,EAAe,EAAE,KAAK,EAAe,EAAE,KAAK,EAAe,EAAE,KAAK,EAAe,EAAE,KAAK,EAAe,EAAE,KAAK,EAAe,CAAC,EAA4C,OAAtC,EAAO,QAAqC,CAAC,GAAG,EAAgB,GAAG,EAAO,MAAM,EAAO,OAAO,EAAgB,MAAM,KAAK,EAAO,MAAM,EAAgB,KAAK,KAAK,EAAO,MAAM,EAAgB,KAAK,KAAK,EAAO,MAAM,EAAgB,KAAK,KAAK,EAAO,MAAM,EAAgB,KAAK,KAAK,EAAO,MAAM,EAAgB,KAAK,KAAK,EAAO,MAAM,EAAgB,IAAI,EAAvU,CAAyU,CAAC,SAAgB,GAAkC,EAAK,CAAC,GAAG,CAAC,EAAK,OAAO,EAAK,IAAM,EAAS,GAAmB,EAAK,SAAS,CAAC,EAAE,EAAK,MAAM,EAAE,EAAE,EAAK,MAAM,EAAE,EAAE,EAAK,MAAM,CAAC,CAAC,EAAQ,EAAS,GAAmB,EAAK,SAAS,CAAC,EAAE,EAAK,MAAM,EAAE,EAAE,EAAK,MAAM,EAAE,EAAE,EAAK,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG,EAAK,KAAK,EAAS,EAAE,KAAK,EAAS,EAAE,KAAK,EAAS,EAAE,KAAK,EAAS,EAAE,KAAK,EAAS,EAAE,KAAK,EAAS,CAAC,CAAE,CAAC,SAAgB,GAAuC,EAAK,CAAC,GAAG,CAAC,EAAK,OAAO,EAAK,IAAM,EAAQ,GAAyB,CAAI,EAAE,MAAM,CAAC,GAAG,EAAK,SAAS,CAAC,EAAE,EAAQ,KAAK,EAAE,EAAQ,KAAK,EAAE,EAAQ,IAAI,EAAE,SAAS,CAAC,EAAE,EAAQ,KAAK,EAAE,EAAQ,KAAK,EAAE,EAAQ,IAAI,EAAE,MAAM,CAAC,EAAE,EAAQ,OAAO,EAAE,EAAQ,OAAO,EAAE,EAAQ,MAAM,EAAE,KAAK,EAAQ,KAAK,KAAK,EAAQ,KAAK,KAAK,EAAQ,KAAK,KAAK,EAAQ,KAAK,KAAK,EAAQ,KAAK,KAAK,EAAQ,KAAK,OAAO,EAAQ,OAAO,OAAO,EAAQ,OAAO,OAAO,EAAQ,MAAM,CAAE,CAAC,SAAgB,GAAqC,EAAK,CAAC,GAAG,CAAC,EAAK,OAAO,EAAK,IAAM,EAAM,EAAK,OAAO,CAAC,EAAQ,EAAM,EAAK,OAAO,CAAC,EAAQ,EAAM,EAAK,OAAO,CAAC,EAAQ,EAAY,EAAK,aAAa,CAAC,EAAQ,EAAK,EAAK,MAAM,CAAC,EAAQ,EAAO,EAAK,QAAQ,CAAC,EAAQ,EAAa,EAAM,UAAU,GAAW,EAAa,EAAM,UAAU,GAAW,EAAa,EAAM,UAAU,GAAW,EAAmB,EAAY,UAAU,GAAW,EAAY,EAAK,UAAU,GAAW,EAAc,EAAO,UAAU,GAAS,EAAoB,OAAO,GAAG,IAAc,EAAoB,EAAM,OAAU,CAAC,GAAqB,IAAsB,QAAO,CAAC,IAAM,EAAkB,EAAM,eAAqB,EAAqB,EAAM,kBAAwB,EAAqB,EAAM,kBAAwB,EAAc,EAAM,MAAY,EAAa,IAAoB,IAAA,IAAW,OAAO,CAAiB,IAAI,GAAG,IAAuB,IAAA,IAAW,IAAuB,SAAS,IAAuB,IAAA,IAAW,IAAuB,QAAc,EAAS,IAAgB,IAAA,IAAW,OAAO,CAAa,IAAI,GAAG,OAAO,CAAa,IAAI,EAAE,AAAsG,EAAnG,EAAkC,YAAqB,EAA8B,QAAkC,WAAa,CAAE,MAAM,CAAC,GAAG,EAAK,sBAAsB,GAAc,GAAc,GAAc,GAAoB,GAAa,EAAc,YAAY,EAAa,EAAM,QAAQ,OAAO,OAAO,SAAS,EAAM,IAAI,eAAe,EAAM,OAAO,gBAAgB,EAAM,aAAa,WAAW,EAAM,MAAM,cAAc,EAAM,SAAS,cAAc,EAAM,SAAS,iBAAiB,EAAM,YAAY,YAAY,EAAM,QAAQ,oBAAoB,EAAM,oBAAoB,YAAY,EAAoB,WAAW,EAAM,MAAM,WAAW,EAAM,MAAM,uBAAuB,EAAM,kBAAkB,uBAAuB,EAAM,kBAAkB,oBAAoB,EAAM,eAAe,WAAW,EAAM,MAAM,YAAY,EAAM,OAAO,aAAa,EAAM,QAAQ,eAAa,uBAAuB,EAAM,kBAAkB,uBAAuB,EAAM,kBAAkB,oBAAoB,EAAM,eAAe,WAAW,EAAmB,EAAY,WAAW,GAAM,oBAAoB,EAAY,YAAY,mBAAmB,EAAY,WAAW,YAAY,EAAmB,EAAY,YAAY,GAAM,yBAAyB,EAAY,qBAAqB,YAAY,EAAM,QAAQ,YAAY,EAAM,QAAQ,UAAU,EAAY,UAAU,EAAK,MAAM,aAAa,EAAK,SAAS,eAAe,EAAK,WAAW,YAAY,EAAK,QAAQ,UAAU,EAAK,MAAM,eAAa,CAAE,CAAC,SAAgB,GAA6B,EAAM,CAAC,EAAE,CAAC,OAAO,GAAO,CAAC,EAAA,CAAG,OAAO,GAAM,GAAM,QAAQ,CAAC,CAAC,OAAO,GAAM,GAAM,QAAQ,OAAO,CAAC,CAAC,IAAI,IAAO,CAAC,GAAG,EAAK,QAAQ,CAAC,EAAE,SAAS,EAAK,SAAS,QAAQ,EAAK,QAAQ,QAAQ,YAAY,EAAK,QAAQ,MAAM,cAAc,GAAsB,EAAK,QAAQ,OAAO,EAAE,EAAE,MAAM,EAAK,QAAQ,MAAM,SAAS,EAAK,QAAQ,SAAS,SAAS,EAAK,QAAQ,SAAS,QAAQ,EAAK,QAAQ,OAAO,EAAE,CAAE,CAAC,SAAgB,GAA8B,EAAS,EAAQ,CAAC,EAAE,CAAC,IAAM,EAAM,OAAO,GAAU,SAAS,EAAQ,OAAO,GAAS,OAAO,CAAC,EAAQ,EAAa,OAAO,GAAU,UAAU,EAAQ,GAAS,UAAgB,EAAQ,GAAU,SAAS,GAAU,CAAC,EAAQ,EAAW,GAAU,YAAY,IAAuF,GAAG,EAAtE,IAAe,IAAA,GAA2B,GAAO,GAAO,EAA7B,GAAsD,OAAO,EAAQ,IAAM,EAAa,GAAU,QAAQ,CAAC,EAAQ,EAAc,GAAU,eAAe,EAAa,QAAQ,GAAG,CAAC,EAAc,OAAO,EAAQ,IAAM,EAAoB,EAAQ,cAAc,CAAC,EAAQ,EAAoB,EAAQ,cAAc,CAAC,EAAQ,EAAmB,EAAa,cAAc,CAAC,EAAQ,EAAmB,EAAa,cAAc,CAAC,EAAE,MAAM,CAAC,GAAG,EAAQ,GAAG,EAAa,YAAY,EAAa,YAAY,YAAY,EAAa,YAAY,kBAAkB,EAAa,kBAAkB,mBAAmB,EAAa,mBAAmB,gBAAgB,GAAK,qBAAqB,EAAa,qBAAqB,aAAa,CAAC,GAAG,EAAoB,GAAG,CAAkB,EAAE,aAAa,CAAC,GAAG,EAAoB,GAAG,CAAkB,EAAE,eAAa,CAAE,CAAC,SAAgB,GAAoC,EAAM,EAAQ,CAAC,EAAE,CAAC,IAAM,EAAM,OAAO,GAAU,SAAS,EAAQ,OAAO,GAAS,OAAO,CAAC,EAAQ,EAAa,OAAO,GAAU,UAAU,EAAQ,GAAS,UAAgB,EAAS,GAAO,UAAU,CAAC,EAAQ,EAAa,GAAU,QAAQ,CAAC,EAAQ,EAAiB,GAAU,YAAY,IAAU,EAAmB,IAAe,IAAA,GAA4E,CAAC,CAAC,GAAO,GAAO,GAAkB,CAAC,EAAE,GAAU,eAAe,EAAa,SAA7I,CAAC,CAAC,GAAc,CAAC,EAAE,GAAU,eAAe,EAAa,SAAmG,EAAU,GAAS,gBAAgB,GAA8B,EAAS,CAAC,QAAM,UAAU,CAAY,CAAC,EAAQ,EAAG,GAAO,IAAI,CAAC,EAAQ,EAAY,OAAO,EAAU,aAAa,EAAE,CAAC,CAAC,KAAK,EAAQ,EAAe,OAAO,EAAU,sBAAsB,EAAE,CAAC,CAAC,KAAK,EAAQ,EAAgB,EAAU,cAAc,CAAC,EAAQ,EAAqB,GAAmB,EAAgB,SAAS,CAAC,EAAE,EAAgB,MAAM,EAAE,EAAE,EAAgB,MAAM,EAAE,EAAE,EAAgB,MAAM,CAAC,CAAC,EAAQ,EAAqB,GAAmB,EAAgB,SAAS,CAAC,EAAE,EAAgB,MAAM,EAAE,EAAE,EAAgB,MAAM,EAAE,EAAE,EAAgB,MAAM,CAAC,CAAC,EAAQ,EAAqB,EAAgB,MAAY,EAAa,CAAC,KAAK,EAAqB,EAAE,KAAK,EAAqB,EAAE,KAAK,EAAqB,EAAE,KAAK,EAAqB,EAAE,KAAK,EAAqB,EAAE,KAAK,EAAqB,EAAE,MAAM,IAAuB,IAAA,IAAW,IAAuB,EAAE,EAAqB,IAAI,EAAwH,EAAQ,GAAS,EAAQ,GAAsB,EAAU,cAAc,EAAE,EAAuD,MAAM,CAAC,eAAe,EAAU,mBAAmB,EAAU,MAAM,EAAG,cAAc,WAAW,iBAAiB,EAAU,YAAY,EAAG,oBAAoB,GAAG,UAAU,EAAU,KAAK,EAAG,aAAa,EAAE,WAAW,EAAU,MAAM,EAAG,cAAc,EAAE,YAAY,EAAU,OAAO,EAAG,eAAe,KAAK,aAAa,EAAU,QAAQ,EAAG,gBAAgB,KAAK,aAAa,EAAU,QAAQ,EAAG,gBAAgB,GAAG,iBAAc,mBAAmB,GAAc,oBAAoB,GAAc,cAAY,kBAAkB,EAAY,oBAAiB,+BAA+B,GAAiB,iBAAe,2BAA2B,EAAe,qBAAkB,8BAA8B,GAAkB,sBAAmB,+BAA+B,GAAmB,UAAQ,UAAQ,eAAa,sBAAsB,EAAQ,sBAAsB,EAAQ,sBAAsB,EAAa,UAAQ,UAAQ,cAAc,EAAQ,cAAc,EAAQ,eAAa,sBAAuC,EAAa,KAAO,sBAAuC,EAAa,KAAO,sBAAuC,EAAa,KAAO,wBAAwB,EAAa,KAAK,wBAAwB,EAAa,KAAK,wBAAwB,EAAa,KAAK,oBAAoB,EAAa,MAAM,oBAAkB,CAAE,CAAC,SAAgB,GAAuC,EAAM,EAAQ,CAAC,EAAE,CAAC,IAAM,EAAI,GAAO,aAAa,CAAC,EAAQ,EAAG,GAAO,SAAS,CAAC,EAAQ,EAAqB,CAAC,CAAC,GAAS,qBAA2B,GAAsB,EAAI,IAAoB,GAAY,EAAM,CAAG,EAAuC,EAAM,GAApC,EAAI,IAAM,EAAuC,EAAc,EAAqB,WAAW,EAAE,EAAQ,EAAc,OAAO,GAAe,EAAE,CAAC,CAAC,KAAK,EAAE,SAAS,MAAM,MAAM,CAAC,oBAAoB,EAAI,OAAO,GAAK,WAAW,EAAI,MAAM,GAAM,iBAAiB,EAAI,YAAY,GAAK,gBAAgB,EAAI,aAAa,GAAG,gBAAgB,GAAK,gBAAc,gBAAc,eAAe,EAAqB,YAAY,CAAC,EAAE,uBAAuB,IAAI,kBAAkB,EAAqB,eAAe,QAAQ,EAAE,yBAAyB,GAAM,mBAAmB,GAAK,cAAc,GAAM,wBAAwB,EAAI,gBAAgB,GAAM,mBAAmB,GAAK,oBAAoB,EAAqB,GAAM,EAAI,aAAa,GAAM,uBAAuB,EAAI,sBAAsB,GAAG,gBAAgB,EAAI,WAAW,GAAM,cAAc,EAAI,eAAe,IAAI,aAAa,EAAI,cAAc,IAAI,cAAc,EAAI,eAAe,UAAU,cAAc,EAAI,eAAe,EAAE,eAAe,EAAI,gBAAgB,GAAG,YAAY,EAAI,OAAO,EAAG,OAAO,GAAK,eAAe,EAAI,UAAU,EAAG,UAAU,GAAG,WAAW,EAAI,YAAY,EAAG,YAAY,GAAG,gCAAgC,CAAC,CAAC,GAAO,wBAAwB,wBAAwB,GAAO,yBAAyB,IAAI,CAAE,CAAC,SAAgB,GAA4B,EAAM,EAAU,EAAE,CAAC,IAAM,EAAG,GAA+B,GAAO,WAAW,CAAC,EAAE,CAAC,MAAM,CAAS,CAAC,EAAQ,EAAI,GAAO,QAAQ,CAAC,EAAQ,EAAI,GAAO,aAAa,CAAC,EAAQ,EAAI,GAAuC,CAAK,EAAQ,EAAI,GAAO,UAAU,CAAC,EAAQ,EAAG,GAAO,SAAS,CAAC,EAAQ,EAAY,GAAO,aAAa,CAAC,EAA0C,GAAxB,GAAO,QAAQ,CAAC,EAAA,CAAgC,IAAI,GAAM,CAAC,GAAG,CAAC,EAAK,OAAO,EAAK,IAAM,EAAS,GAAkC,CAAI,EAA0C,GAA9B,EAAK,aAAa,SAA2B,OAAO,EAAK,WAAW,GAAG,EAAK,UAAU,GAAG,MAAM,CAAC,GAAG,EAAS,UAAQ,CAAE,CAAC,EAAQ,EAAI,CAAC,gBAAgB,GAAO,iBAAiB,GAAM,WAAW,EAAG,OAAO,EAAE,aAAa,EAAG,MAAM,EAAE,aAAa,EAAG,MAAM,EAAE,aAAa,EAAG,MAAM,EAAE,eAAe,EAAG,MAAM,EAAE,eAAe,EAAG,MAAM,EAAE,eAAe,EAAG,MAAM,EAAE,WAAW,EAAI,YAAY,cAAc,gBAAgB,EAAI,GAAG,GAAG,gBAAgB,EAAI,GAAG,EAAE,gBAAgB,EAAI,GAAG,GAAG,UAAU,EAAI,WAAW,EAAE,aAAa,EAAI,cAAc,KAAK,IAAI,EAAI,KAAK,GAAG,gBAAgB,EAAI,SAAS,UAAU,sBAAsB,EAAI,aAAa,GAAK,kBAAkB,EAAI,SAAS,GAAK,gBAAgB,EAAI,MAAM,aAAa,kBAAkB,EAAI,QAAQ,SAAS,WAAW,EAAI,YAAY,kBAAkB,cAAc,EAAI,WAAW,GAAG,qBAAqB,EAAI,WAAW,EAAE,0BAA0B,EAAI,QAAQ,GAAM,sBAAsB,EAAI,SAAS,GAAG,0BAA0B,EAAI,cAAc,EAAE,sBAAsB,EAAI,UAAU,UAAU,aAAa,EAAI,SAAS,EAAE,aAAa,EAAI,SAAS,GAAG,aAAa,EAAI,SAAS,EAAE,cAAc,EAAI,SAAS,GAAM,cAAc,SAAS,EAAI,YAAY,OAAO,EAAE,GAAG,KAAK,WAAW,EAAI,YAAY,MAAM,iBAAiB,EAAI,kBAAkB,IAAI,cAAY,GAAG,EAAI,eAAe,EAAI,QAAQ,OAAO,gBAAgB,EAAI,iBAAiB,UAAU,gBAAgB,EAAI,iBAAiB,UAAU,oBAAoB,EAAI,qBAAqB,KAAK,YAAY,EAAI,aAAa,EAAE,mBAAmB,EAAI,oBAAoB,IAAI,eAAe,EAAI,gBAAgB,UAAU,uBAAuB,EAAI,wBAAwB,UAAU,2BAA2B,EAAI,4BAA4B,IAAI,iBAAiB,EAAI,UAAU,GAAM,UAAU,EAAI,WAAW,EAAE,UAAU,EAAI,WAAW,GAAG,UAAU,EAAI,WAAW,EAAE,mBAAmB,EAAI,oBAAoB,EAAE,aAAa,EAAI,cAAc,EAAE,UAAU,EAAI,WAAW,EAAE,IAAI,EAAI,KAAK,IAAI,YAAY,EAAI,aAAa,EAAE,eAAe,EAAI,gBAAgB,IAAI,MAAM,EAAI,OAAO,EAAE,eAAe,EAAI,gBAAgB,GAAG,WAAW,EAAI,YAAY,UAAU,gBAAgB,EAAI,iBAAiB,EAAE,aAAa,EAAI,cAAc,GAAG,kBAAkB,EAAI,mBAAmB,EAAE,cAAc,EAAI,eAAe,UAAU,QAAQ,EAAI,SAAS,EAAE,UAAU,EAAI,WAAW,GAAM,2BAA2B,EAAI,oBAAoB,GAAG,aAAa,EAAG,OAAO,GAAM,cAAc,EAAG,UAAU,GAAG,eAAe,EAAG,aAAa,GAAG,YAAY,EAAG,UAAU,GAAG,YAAY,EAAG,aAAa,OAAO,SAAS,EAAG,UAAU,IAAI,WAAW,EAAG,MAAM,GAAK,mBAAmB,EAAG,cAAc,GAAM,WAAW,EAAG,YAAY,EAAE,SAAS,EAAG,UAAU,EAAE,WAAW,EAAG,YAAY,EAAE,eAAe,EAAG,UAAU,GAAM,eAAe,EAAG,WAAW,EAAE,iBAAiB,EAAG,SAAS,IAAI,0BAA0B,EAAG,YAAY,GAAM,4BAA4B,EAAG,UAAU,KAAK,gBAAgB,EAAG,WAAW,GAAM,mBAAmB,EAAG,UAAU,IAAI,eAAe,EAAG,UAAU,GAAM,cAAc,EAAG,YAAY,YAAY,aAAa,EAAG,WAAW,GAAG,gBAAgB,EAAG,cAAc,EAIjoqB,YAAY,EAAE,kBAAkB,EAAE,qBAAqB,EAAG,mBAAmB,GAAG,qBAAqB,EAAG,mBAAmB,UAAU,iBAAiB,EAAG,eAAe,EAAE,gBAAgB,EAAG,cAAc,EAAE,iBAAiB,EAAG,eAAe,GAChP,2BAA2B,EAAG,iBAAiB,GAAG,0BAA0B,EAAG,gBAAgB,GAAG,WAAW,EAAG,MAAM,GAAM,WAAW,EAAG,YAAY,EAAE,gBAAgB,EAAG,aAAa,KAAK,gBAAgB,EAAG,aAAa,GAAG,UAAU,EAAI,KAAK,GAAM,SAAS,EAAI,UAAU,GAAG,YAAY,EAAI,aAAa,KAAK,WAAW,EAAI,YAAY,IAAI,eAAa,EAAu+D,MAAr+D,GAAI,cAAc,CAAC,EAAI,eAAe,EAAI,iBAAiB,EAAI,UAAU,EAAI,UAAU,EAAI,UAAU,EAAI,mBAAmB,EAAI,aAAa,EAAI,UAAU,EAAI,IAAI,EAAI,YAAY,EAAI,eAAe,EAAI,MAAM,EAAI,eAAe,EAAI,WAAW,EAAI,gBAAgB,EAAI,kBAAkB,EAAI,cAAc,EAAI,aAAa,EAAI,QAAQ,EAAI,SAAS,CAAC,CAAC,KAAK,GAAG,EAAE,EAAI,cAAc,CAAC,EAAI,sBAAsB,EAAI,0BAA0B,EAAI,sBAAsB,EAAI,aAAa,EAAI,aAAa,EAAI,aAAa,EAAI,cAAc,EAAI,cAAc,EAAI,WAAW,EAAI,iBAAiB,KAAK,WAAW,EAAI,aAAa,CAAC,EAAA,CAAG,IAAI,IAAQ,CAAC,QAAQ,GAAO,QAAQ,KAAK,GAAO,UAAU,MAAM,GAAO,MAAM,UAAU,GAAO,UAAU,KAAK,GAAO,KAAK,KAAK,GAAO,KAAK,KAAK,GAAO,KAAK,SAAS,GAAO,SAAS,MAAM,GAAO,MAAM,MAAM,GAAO,MAAM,SAAS,GAAO,SAAS,QAAQ,GAAO,QAAQ,QAAQ,GAAO,QAAQ,QAAQ,GAAO,QAAQ,WAAW,GAAO,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,EAAI,SAAS,CAAC,EAAI,kBAAkB,EAAI,gBAAgB,EAAI,kBAAkB,EAAI,WAAW,EAAI,cAAc,EAAI,qBAAqB,EAAI,0BAA0B,EAAI,sBAAsB,EAAI,eAAe,CAAC,CAAC,KAAK,GAAG,EAAE,EAAI,aAAa,CAAC,EAAI,aAAa,EAAI,cAAc,EAAI,eAAe,EAAI,YAAY,EAAI,YAAY,EAAI,SAAS,EAAI,WAAW,EAAI,mBAAmB,EAAI,WAAW,EAAI,SAAS,EAAI,WAAW,EAAI,eAAe,EAAI,eAAe,EAAI,iBAAiB,EAAI,0BAA0B,EAAI,4BAA4B,EAAI,gBAAgB,EAAI,mBAAmB,EAAI,eAAe,EAAI,cAAc,EAAI,aAAa,EAAI,gBAAgB,EAAI,YAAY,EAAI,kBAAkB,EAAI,qBAAqB,EAAI,qBAAqB,EAAI,iBAAiB,EAAI,gBAAgB,EAAI,iBAAiB,EAAI,WAAW,EAAI,WAAW,EAAI,gBAAgB,EAAI,gBAAgB,EAAI,UAAU,EAAI,SAAS,EAAI,YAAY,EAAI,UAAU,CAAC,CAAC,KAAK,GAAG,EAAE,EAAI,iBAAiB,CAAC,EAAI,cAAc,EAAI,cAAc,EAAI,SAAS,EAAI,YAAY,CAAC,CAAC,KAAK,IAAI,EAAS,CAAI,CAAC,SAAgB,GAAkC,EAAM,CAAC,GAAK,CAAC,mBAAmB,EAAS,CAAC,GAAG,EAAY,EAAU,EAAS,WAAW,CAAC,EAAQ,EAAM,EAAS,OAAO,CAAC,EAAQ,EAAK,EAAS,MAAM,CAAC,EAAQ,EAAU,EAAS,WAAW,CAAC,EAAQ,EAAS,EAAS,UAAU,IAAU,EAAe,GAAmB,EAAU,SAAS,CAAC,EAAE,EAAU,MAAM,EAAE,EAAE,EAAU,MAAM,EAAE,EAAE,EAAU,MAAM,CAAC,CAAC,EAAQ,EAAe,GAAmB,EAAU,SAAS,CAAC,EAAE,EAAU,MAAM,EAAE,EAAE,EAAU,MAAM,EAAE,EAAE,EAAU,MAAM,CAAC,CAAC,EAAQ,EAAK,EAAe,EAAQ,EAAK,EAAe,EAAQ,EAAK,EAAe,EAAQ,EAAM,EAAU,OAAO,EAAQ,EAAK,EAAe,EAAQ,EAAK,EAAe,EAAQ,EAAK,EAAe,EAAQ,EAAW,EAAS,YAAY,GAAY,EAAoB,EAAS,eAAe,GAAS,EAAmB,EAAS,cAAc,GAAS,EAAW,EAAM,YAAY,IAAU,EAAU,EAAM,WAAW,GAAS,EAAU,EAAK,WAAW,GAAS,EAAc,EAAK,eAAe,UAAgB,EAAkB,EAAK,mBAAmB,EAAE,MAAM,CAAC,gBAAgB,EAAS,SAAS,GAAK,aAAa,GAAO,cAAc,EAAS,QAAQ,GAAK,WAAS,iBAAiB,EAAS,OAAK,OAAK,OAAK,QAAM,OAAK,OAAK,OAAK,cAAc,EAAK,cAAc,EAAK,cAAc,EAAK,YAAY,EAAM,cAAc,EAAK,cAAc,EAAK,cAAc,EAAK,aAAW,sBAAoB,qBAAmB,aAAW,YAAU,mBAAmB,EAAW,kBAAkB,EAAU,YAAU,gBAAc,oBAAkB,kBAAkB,EAAU,sBAAsB,EAAc,0BAA0B,EAAkB,yBAAyB,EAAU,SAAS,GAAK,yBAAyB,EAAU,UAAU,GAAG,sBAAsB,EAAU,OAAO,UAAU,sBAAsB,EAAU,OAAO,IAAI,wBAAwB,EAAU,SAAS,EAAE,qBAAqB,EAAU,MAAM,IAAI,qBAAqB,EAAU,MAAM,EAAE,yBAAyB,EAAU,UAAU,IAAI,mBAAmB,EAAS,aAAa,GAAM,wBAAwB,EAAS,iBAAiB,EAAE,CAAE,CAAC,SAAgB,GAA4B,EAAM,EAAQ,CAAC,EAAE,CAAC,IAAM,EAAU,GAAS,WAAW,GAAS,OAAO,GAAS,aAAa,EAAQ,EAAW,GAA4B,EAAM,CAAS,EAAQ,EAAY,GAAoC,EAAM,CAAC,MAAM,EAAU,UAAU,GAAS,SAAS,CAAC,EAAQ,EAAU,GAAkC,CAAK,EAAQ,EAAK,GAAO,aAAa,CAAC,EAAQ,EAAG,GAAO,IAAI,CAAC,EAAQ,GAAqB,GAAO,kBAAkB,CAAC,EAAA,CAAG,IAAI,EAAoC,EAAQ,EAAkB,CAAC,GAAG,GAAO,gBAAgB,CAAC,EAAE,GAAG,GAA6B,GAAO,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAsC,EAAQ,GAAoB,GAAmB,CAAC,EAAA,CAAG,OAAO,GAAM,GAAM,SAAS,GAAM,QAAQ,EAAQ,EAAwB,KAAK,UAAU,EAAmB,IAAI,GAAM,OAAO,EAAK,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,CAAC,EAAQ,GAAsB,GAAqB,CAAC,EAAA,CAAG,OAAO,GAAI,GAAI,WAAW,EAAG,uBAAuB,GAAK,EAAQ,EAA2B,EAAqB,IAAI,GAAI,OAAO,EAAG,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,EAAQ,EAAyB,KAAK,UAAU,CAA0B,EAAQ,EAA0B,KAAK,UAAU,EAAqB,IAAI,IAAK,CAAC,SAAS,GAAI,SAAS,YAAY,GAAI,YAAY,SAAS,GAAI,SAAS,gBAAgB,GAAI,gBAAgB,WAAW,GAAI,WAAW,cAAc,GAAI,cAAc,cAAc,GAAI,cAAc,iBAAiB,GAAI,iBAAiB,WAAW,GAAI,WAAW,oBAAoB,GAAI,oBAAoB,mBAAmB,GAAI,mBAAmB,YAAY,GAAI,YAAY,yBAAyB,GAAI,yBAAyB,YAAY,GAAI,YAAY,WAAW,GAAI,WAAW,WAAW,GAAI,WAAW,uBAAuB,GAAI,uBAAuB,uBAAuB,GAAI,uBAAuB,oBAAoB,GAAI,oBAAoB,WAAW,GAAI,WAAW,aAAa,GAAI,aAAa,uBAAuB,GAAI,uBAAuB,uBAAuB,GAAI,uBAAuB,oBAAoB,GAAI,oBAAoB,UAAU,GAAI,UAAU,UAAU,GAAI,UAAU,aAAa,GAAI,aAAa,eAAe,GAAI,cAAc,EAAE,CAAC,EAAQ,EAAY,GAAS,aAAa,WAAiB,EAAS,CAAC,CAAC,EAAY,mBAAyB,EAAgB,EAAK,MAAM,EAAG,iBAAiB,GAAW,EAAyB,EAAK,eAAe,EAAG,0BAA0B,IAAU,EAAqB,GAAiB,EAAe,EAAc,IAAc,cAAoB,EAAW,IAAc,WAAiB,EAAsB,EAAc,EAAS,KAAK,KAAK,EAAW,EAAS,KAAK,KAAK,EAAS,KAAK,EAA+B,EAAkC,EAAsB,EAAE,EAAyB,EAAE,KAAK,IAAI,EAAyB,CAAqB,EAAE,EAAsB,EAA+B,EAAuB,EAAc,KAAK,IAAI,EAAW,cAAc,GAAG,EAAE,GAAY,EAAqB,KAAK,IAAI,EAAW,cAAc,GAAG,EAAE,EAAW,cAAoB,EAAsB,IAAoB,EAAW,aAAmB,EAAoB,GAAe,GAAY,EAAqB,GAAM,EAAW,WAAiB,EAAmB,GAAe,GAAY,EAAqB,GAAM,EAAW,UAAgB,EAAmC,GAAe,EAAqB,GAAM,EAAW,0BAAgC,EAAyB,GAAe,EAAqB,GAAM,EAAW,gBAAsB,EAAuB,EAAc,KAAK,IAAI,EAAW,cAAc,GAAG,EAAE,GAAsB,EAAW,KAAK,IAAI,EAAW,cAAc,GAAG,EAAE,EAAW,cAAoB,EAAkC,EAAc,KAAK,IAAI,EAAU,yBAAyB,IAAI,EAAE,GAAsB,EAAW,KAAK,IAAI,EAAU,yBAAyB,GAAG,EAAE,EAAU,yBAA+B,EAAI,CAAC,GAAG,EAAW,GAAG,EAAY,GAAG,EAAU,YAAY,EAAW,aAAa,GAAO,aAAa,CAAC,EAAE,cAAc,EAAuB,aAAa,EAAsB,WAAW,EAAoB,UAAU,EAAmB,0BAA0B,EAAmC,gBAAgB,EAAyB,cAAc,EAAuB,yBAAyB,EAAkC,kBAAgB,YAAY,EAAK,aAAa,EAAG,aAAa,GAAK,kBAAkB,GAAS,eAAe,EAAK,QAAQ,EAAG,oBAAoB,EAAgB,IAAI,GAAG,wBAAwB,GAAS,cAAc,EAAK,cAAc,EAAG,yBAAyB,IAAI,yBAAyB,EAAkC,qBAAqB,EAAK,WAAW,EAAG,sBAAsB,GAAK,uBAAuB,GAAS,aAAa,EAAK,aAAa,EAAG,wBAAwB,GAAK,0BAA0B,GAAS,gBAAgB,EAAK,gBAAgB,EAAG,2BAA2B,GAAK,iBAAiB,EAAK,OAAO,EAAG,kBAAkB,GAAM,qBAAqB,EAAc,GAAM,EAAK,WAAW,EAAG,sBAAsB,CAAC,EAAgB,aAAa,EAAG,WAAW,GAAK,eAAe,EAAG,YAAY,GAAM,iBAAiB,EAAG,cAAc,GAAM,kBAAkB,EAAG,YAAY,MAAM,SAAS,EAAG,UAAU,GAAM,aAAa,EAAG,UAAU,GAAG,kBAAkB,EAAG,eAAe,GAAG,eAAe,EAAG,YAAY,yBAAyB,eAAe,EAAG,YAAY,wBAAwB,SAAS,EAAG,UAAU,GAAM,aAAa,EAAG,UAAU,EAAE,cAAc,EAAG,eAAe,GAAM,kBAAkB,EAAG,eAAe,EAAE,mBAAmB,EAAG,cAAc,GAAM,sBAAsB,GAAK,gBAAgB,GAAwB,mBAAmB,EAAS,eAAe,EAAkB,qBAAmB,yBAAyB,EAAmB,OAAO,EAAE,uBAAuB,EAAwB,iBAAiB,EAAoB,uBAAqB,6BAA2B,2BAA2B,EAAqB,OAAO,EAAE,6BAA6B,EAAqB,KAAK,GAAI,CAAC,CAAC,GAAI,SAAS,EAAE,2BAAyB,2BAAyB,EAA+N,MAA7N,GAAI,cAAc,GAAa,CAAG,EAAE,EAAI,cAAc,GAAa,CAAG,EAAE,EAAI,SAAS,GAAQ,CAAG,EAAE,EAAI,aAAa,GAAY,CAAG,EAAE,EAAI,iBAAiB,GAAgB,CAAG,EAAE,EAAI,qBAAqB,GAAiB,CAAG,EAAS,CAAI,mBALvoV,KAA2I,KAAqI,KAAsL,KCInd,SAAS,GAAwB,EAAO,UAAU,CAAC,GAAiB,GAAM,GAAwB,YAAY,IAAI,EAAK,IAAwB,qBAAqB,EAAuB,EAAE,IAAM,MAAS,CAAC,GAAG,GAAiB,OAC9T,IAAM,EAAW,IAAS,OAAuC,KAA3B,EAAO,oBAAyB,GAAG,CAAC,GAAK,CAAC,EAAI,WAAW,EAAI,WAAW,OAE9G,IAAM,GAAS,YAAY,IAAI,EAAE,IAAyB,IAAU,GAAW,EAAE,KAAK,IAAI,CAAC,EAAQ,CAAC,GAAG,IAAI,EAAI,YAAY,EAAO,CAAS,EAAE,GAAwB,sBAAsB,CAAI,CAAE,EACjM,eAAe,CAAK,KAAkB,GAAwB,sBAAsB,CAAI,EAAG,EAAE,GAAG,CAAE,CAAC,SAAS,IAAwB,CAAC,AAA0E,MAA9C,qBAAqB,EAAuB,EAA0B,KAAM,CAA8L,SAAgB,GAAmB,EAAI,CAAkC,GAA9B,CAAC,GAAgC,GAAY,IAAI,CAAG,EAAE,OAAO,QAAQ,QAAQ,EAAE,GAAG,GAAiB,IAAI,CAAG,EAAE,OAAO,GAAiB,IAAI,CAAG,EAAE,IAAM,EAAO,GAAa,CAAG,EAChoB,GAAU,IAAS,QAAa,EAAO,oBAAoB,CAAC,IAAM,EAAI,EAAO,oBAAuB,CAAC,EAAI,WAAW,CAAC,EAAI,YAAY,EAAI,WAAW,CAAG,CAAG,CAC1J,KACG,KAAqB,GAAE,GAAwB,CAAG,EAAE,IAAM,EAAQ,IAAI,QAAQ,GAAS,CAAC,IAAM,MAAwB,CAGzH,GAAG,GAAiB,OAAO,GAAU,IAAS,QAAa,EAAO,oBAAoB,CAAC,IAAM,EAAI,EAAO,oBAAuB,EAAI,WAAW,CAAC,EAAI,aAAY,GAAuB,EAAE,EAAI,YAAY,EAAI,GAAG,GAC/M,GAAmB,EAAE,GAAkB,CAAE,CAAC,EAAQ,GAAQ,EAAO,IAAa,CAAC,GAAG,CAAC,GAAY,IAAI,CAAG,EAAE,CACxG,GAAqB,CAAM,EAAE,IAAM,EAAe,GAAiC,EAAO,GAAY,CAAC,CAAC,EAAE,GAAY,IAAI,EAAI,CAAC,MAAM,EAAO,WAAW,EAAe,IAAI,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,CAAE,CAAC,GAAiB,OAAO,CAAG,EAAE,KAAoB,EAAoB,EAAE,EAAQ,CAAE,EAAQ,EAAW,GAAO,CAAC,GAAG,CAAC,EAAM,iBAAiB,OAC9T,KAAkB,GAAiB,GAAK,GAAuB,GAAG,IAAM,EAAI,EAAM,OAAO,EAAM,MAAM,GAAU,IAAS,QAAa,EAAO,oBAAoB,CACpH,IAAM,EAAY,EAAjD,KAAK,IAAI,GAAmB,CAAgC,GAAoB,GAAkB,GAAK,EAAY,EAAO,oBAAoB,YAAY,EAAI,KAAK,IAAI,EAAI,IAAI,GAAG,CAAC,CAAE,CAAC,EAAQ,EAAM,GAAK,CAAC,QAAQ,KAAK,uBAAuB,EAAI,CAAG,EAAE,GAAiB,OAAO,CAAG,EAAE,KAAoB,EAAoB,EAAE,EAAQ,CACtV,EAAE,GAAG,CAAI,IAAS,MAAM,GAAa,EAAI,EAAO,EAAW,CAAK,EAAU,IAAS,MAAM,GAAmB,CAAC,CAAC,KAAK,GAAQ,EAAO,KAAK,EAAI,GAAK,EAAO,EAAI,EAAI,YAAY,CAAC,CAAC,EAAE,EAAW,CAAK,CAAC,CAAC,CAAC,MAAM,CAAK,EAAO,GAAoB,CAAC,CAAC,KAAK,EAAI,GAAG,EAAO,EAAE,MAAM,EAAE,UAAU,EAAE,EAAW,CAAK,CAAE,OAAO,EAAI,CAAC,EAAM,CAAG,CAAE,CAAC,CAAC,EAAoC,OAAlC,GAAiB,IAAI,EAAI,CAAO,EAAS,CAAQ,CAAC,SAAS,GAAoB,EAAG,EAAQ,EAAM,EAAgB,KAAK,EAAgB,KAAK,CAAC,GAAG,CAAC,EAAG,OAAO,IAAM,EAAM,GAAwB,EAAQ,EAAS,EAAM,MAAM,IAAI,CAAE,EAAQ,EAAa,CAAC,GAAU,EAAS,UAAU,GAAS,EAAS,kBAAkB,EAAmB,IAAc,EAAM,cAAc,EAAM,cAAc,GAAG,GAAG,IAAM,EAAY,EAAgB,CAAC,GAAG,EAAM,0BAA0B,CAAe,EAAE,EAAM,EAAM,MAAM,IAAI,EAAG,CAAC,KAAG,UAAQ,kBAAgB,MAAM,EAAY,kBAAgB,SAAS,EAAa,EAAM,aAAa,GAAU,UAAU,EAAM,aAAa,UAAU,KAAK,IAAI,CAAC,CAAC,EAAK,GAAc,GAAoB,CAAG,CAAC,SAAS,GAAkB,EAAG,CAAC,MAAM,iBAAiB,OAAO,GAAI,MAAM,CAAC,CAAC,QAAQ,kBAAkB,GAAG,GAAI,CAAC,SAAS,GAAwB,EAAG,EAAM,EAAQ,EAAS,CAAC,GAAU,IAAS,QAAa,CAAC,GAAI,CAAC,EAAQ,OAAO,IAAM,EAAI,EAAa,EAAS,AAA0B,EAAI,sBAAoB,CAAC,MAAM,IAAI,IAAI,SAAS,CAAC,EAAG,AAAe,EAAQ,KAAG,EAAM,IAAM,EAAS,EAAS,MAAM,IAAI,CAAE,EAAE,EAAS,MAAM,IAAI,EAAG,CAAC,KAAG,QAAM,UAAQ,SAAS,GAAU,GAAG,UAAU,GAAU,WAAW,KAAK,IAAI,EAAE,UAAU,KAAK,IAAI,CAAC,CAAC,EAAE,EAAS,UAAU,CAAE,CAAC,SAAS,GAAwB,EAAG,CAAC,GAAU,IAAS,QAAa,CAAC,EAAG,OAAO,IAAM,EAAS,EAAO,oBAAuB,GAAU,OAAO,SAAS,CAAE,IAAG,EAAS,UAAU,EAAS,UAAU,GAAG,EAAG,CAAC,SAAS,GAAoB,EAAG,CAAK,GAAsB,GAAiC,CAAC,CAAC,MAAM,OAAO,CAAE,GAAG,GAAoB,CAAG,CAQ13D,SAAS,GAAoB,EAAM,CAAC,GAAK,CAAC,cAAY,MAAM,SAAS,EAAa,GAAG,YAAU,GAAG,UAAU,EAAI,CAAC,EAAE,SAAS,EAAK,CAAC,EAAE,YAAY,EAAM,CAAC,EAAE,GAAG,EAAI,CAAC,EAAE,QAAM,CAAC,GAAG,EAAY,EAAQE,EAAO,IAAI,EAAO,CAAC,EAAe,GAAmBC,MAAa,GAAwB,CAAC,EAAO,CAAC,EAAkB,GAAsBA,EAAS,CAAC,EAAQ,EAAoB,EAAI,YAAY,IAAU,EAAmB,EAAK,YAAY,EAA0B,EAAc,GAA8B,EAAM,CAAG,EAAO,CAAC,EAAsB,GAA0BA,EAAS,CAAC,EAAQ,EAAe,EAAsB,GAAG,GAAuB,EAA0B,EAAuB,EAAsB,GAAG,GAAuB,EAAmB,MAAc,CAAC,GAAU,IAAS,OAAY,OAAO,IAAM,MAAW,CAAC,IAAM,EAAM,EAAQ,SAAS,aAAa,EAAO,YAAY,EAAE,EAAyB,GAAM,IAAO,EAAM,EAAK,CAAK,CAAE,EAAE,EAAO,EAAE,IAAI,EAAG,KAAkK,OAA1J,OAAO,eAAiB,KAAa,EAAQ,UAAS,EAAG,IAAI,eAAe,CAAM,EAAE,EAAG,QAAQ,EAAQ,OAAO,GAAG,EAAO,iBAAiB,SAAS,CAAM,MAAY,CAAC,GAAI,WAAW,EAAE,EAAO,oBAAoB,SAAS,CAAM,CAAE,CAAE,EAAE,CAAC,EAAoB,CAAkB,CAAC,EACluC,IAAM,EAAkB,EAAM,gBAAgB,CAAC,EACzC,EAAoB,EAAM,kBAAkB,CAAC,EAC7C,EAAU,GAA4B,EAAc,UAAU,CAAc,EAAQ,EAAW,GAA2B,EAAc,SAAS,CAAsB,EAAQ,EAAe,GAA4B,EAAc,CAAqB,EAAQ,EAAW,EAAU,OAAO,EAAQ,GAAa,EAAU,MAAM,EAAQ,GAAa,EAAU,MAAM,EAAQ,GAAa,EAAU,MAAM,EAAQ,GAAe,EAAU,MAAM,EAAQ,GAAe,EAAU,MAAM,EAAQ,EAAe,EAAU,MAAM,EAAQ,GAAW,EAAe,WAAiB,GAAgB,EAAe,gBAAsB,GAAgB,EAAe,gBAAsB,GAAgB,EAAe,gBAAsB,GAAU,EAAe,UAAgB,GAAa,EAAe,aAAmB,GAAgB,EAAe,gBAAsB,GAAsB,EAAe,sBAA4B,GAAkB,EAAe,kBAAwB,GAAgB,EAAe,gBAAsB,EAAkB,EAAe,kBAAwB,GAAW,EAAe,WAAiB,GAAc,EAAe,cAAoB,GAAqB,EAAe,qBAA2B,GAA0B,EAAe,0BAAgC,GAAsB,EAAe,sBAA4B,EAA0B,EAAe,0BAAgC,GAAsB,EAAe,sBAA4B,GAAa,EAAe,aAAmB,GAAa,EAAe,aAAmB,EAAa,EAAe,aAAmB,GAAc,EAAe,cAAoB,EAAc,EAAe,cAAoB,EAAW,EAAe,WAAiB,EAAiB,EAAe,iBACrzD,EAAe,EAAM,aAAa,CAAC,EAAQ,EAAmB,GAAuC,EAAM,CAAC,qBAAqB,CAAc,CAAC,EAAQ,EAAoB,EAAmB,oBAA0B,GAAW,EAAmB,WAAiB,GAAiB,EAAmB,iBAAuB,GAAgB,EAAmB,gBAAoB,GAAgB,EAAmB,gBAAoB,GAAc,EAAmB,cAAkB,GAAc,EAAmB,cAAkB,GAAe,EAAmB,eAAqB,GAAuB,EAAmB,uBAA6B,GAAc,EAAmB,cAAoB,GAAmB,EAAmB,mBAAyB,GAAyB,EAAmB,yBAA6B,EAAkB,EAAmB,kBAAwB,GAAwB,EAAmB,wBAA8B,GAAmB,EAAmB,mBAAyB,GAAgC,CAAC,CAAC,EAAM,wBAA8B,GAAoB,EAAmB,oBAA0B,GAAuB,EAAmB,uBAA6B,GAAgB,EAAmB,gBAAsB,GAAc,EAAmB,cAAoB,GAAa,EAAmB,aAAmB,GAAc,EAAmB,cAAoB,GAAc,EAAmB,cAAoB,GAAe,EAAmB,eAAqB,GAAyB,CAAC,MAAoB,GAAc,GAAc,GAAe,GAAuB,MAAkB,MAAuB,MAA6B,EAAkB,MAA4B,KAAmC,CAAC,CAAC,KAAK,GAAG,EAAQ,GAAQ,GAAkC,CAAa,EAAQ,GAAgB,GAAQ,gBAAsB,GAAiB,GAAQ,iBAAuB,GAAc,GAAQ,cAAoB,GAAc,GAAQ,cAAoB,GAAc,GAAQ,cAAoB,GAAY,GAAQ,YAAkB,GAAc,GAAQ,cAAoB,GAAc,GAAQ,cAAoB,GAAc,GAAQ,cAAoB,GAAmB,GAAQ,mBAAyB,GAAkB,GAAQ,kBAAwB,GAAkB,GAAQ,kBAAwB,GAAsB,GAAQ,sBAA4B,GAA0B,GAAQ,0BAAgC,GAAyB,GAAQ,yBAA+B,GAAyB,GAAQ,yBAA+B,GAAsB,GAAQ,sBAA4B,GAAsB,GAAQ,sBAA4B,GAAwB,GAAQ,wBAA8B,GAAqB,GAAQ,qBAA2B,GAAqB,GAAQ,qBAA2B,GAAyB,GAAQ,yBAA+B,GAAe,EAAe,eAAqB,GAAgB,EAAe,gBAAsB,GAAgB,EAAe,gBAAsB,GAAoB,EAAe,oBAA0B,GAAY,EAAe,YAAkB,GAAiB,EAAe,iBAAuB,GAAU,EAAe,UAAgB,GAAU,EAAe,UAAgB,GAAU,EAAe,UAAgB,GAAmB,EAAe,mBAAyB,GAAa,EAAe,aAAmB,GAAU,EAAe,UAAgB,GAAI,EAAe,IAAU,GAAY,EAAe,YAAkB,GAAe,EAAe,eAAqB,GAAM,EAAe,MAAY,GAAe,EAAe,eAAqB,GAAW,EAAe,WAAiB,GAAgB,EAAe,gBAAsB,GAAa,EAAe,aAAmB,GAAkB,EAAe,kBAAwB,GAAc,EAAe,cAAoB,GAAQ,EAAe,QAAc,GAAU,EAAe,UAAgB,GAA2B,EAAe,2BAAiC,GAAY,EAAe,YAAkB,GAAe,EAAe,eAAqB,GAAW,EAAe,WAAiB,GAAa,EAAe,aAAmB,GAAc,EAAe,cAAoB,GAAe,EAAe,eAAqB,GAAY,EAAe,YAAkB,GAAY,EAAe,YAAkB,GAAS,EAAe,SAAe,GAAW,EAAe,WAAiB,GAAmB,EAAe,mBAAyB,GAAW,EAAe,WAAiB,GAAS,EAAe,SAAe,GAAW,EAAe,WAAiB,GAAe,EAAe,eAAqB,GAAe,EAAe,eAAqB,GAAiB,EAAe,iBAAuB,GAA0B,EAAe,0BAAgC,GAA4B,EAAe,4BAAkC,GAAgB,EAAe,gBAAsB,GAAmB,EAAe,mBAAyB,GAAW,EAAe,WAAiB,GAAW,EAAe,WAAiB,GAAgB,EAAe,gBAAsB,GAAgB,EAAe,gBAAsB,GAAU,EAAe,UAAgB,GAAS,EAAe,SAAe,GAAY,EAAe,YAAkB,GAAW,EAAe,WAAiB,GAAa,EAAI,WAAW,GAAW,GAAe,EAAI,YAAY,GAAY,GAAiB,EAAI,cAAc,GAAY,GAAkB,EAAI,YAAY,MAAY,GAAS,EAAI,UAAU,GAAY,GAAa,EAAI,UAAU,GAAS,GAAkB,EAAI,eAAe,GAAS,GAAe,EAAI,YAAY,yBAA+B,GAAe,EAAI,YAAY,wBAA8B,GAAS,EAAI,UAAU,GAAY,GAAa,EAAI,UAAU,EAAQ,GAAc,EAAI,eAAe,GAAY,GAAkB,EAAI,eAAe,EAAQ,GAAmB,EAAI,cAAc,GAAY,GAAmB,GAAQ,mBAAyB,GAAwB,GAAQ,wBAA8B,GAAW,GAAQ,WAAiB,GAAoB,GAAQ,oBAA0B,GAAmB,GAAQ,mBAAyB,GAAgB,GAAoC,EAAc,CAAC,eAAe,EAAW,UAAU,CAAsB,CAAC,EAAQ,GAAmB,GAAgB,mBAAyB,GAAiB,GAAgB,iBAAuB,GAAU,GAAgB,UAAgB,GAAW,GAAgB,WAAiB,GAAY,GAAgB,YAAkB,GAAa,GAAgB,aAAmB,GAAa,GAAgB,aAAmB,GAAoB,GAAgB,oBAA0B,GAAkB,GAAgB,kBAAwB,GAA2B,GAAgB,2BAAiC,GAA+B,GAAgB,+BAAqC,GAA8B,GAAgB,8BAAoC,GAA+B,GAAgB,+BAAqC,GAAc,GAAgB,cAAoB,GAAc,GAAgB,cAAoB,GAAsB,GAAgB,sBAA4B,GAAsB,GAAgB,sBAA4B,GAAsB,GAAgB,sBAA4B,GAAsB,GAAgB,sBAA4B,GAAsB,GAAgB,sBAA4B,GAAsB,GAAgB,sBAA4B,GAAwB,GAAgB,wBAA8B,GAAwB,GAAgB,wBAA8B,GAAwB,GAAgB,wBAA8B,GAAoB,GAAgB,oBAA0B,GAAgB,EAAM,MAAM,EAAI,iBAAiB,GAAW,GAAY,EAAM,aAAa,EAAI,aAAa,GAAW,GAAoB,EAAe,aAAa,WAAiB,GAAsB,EAAM,QAAQ,EAAI,oBAAoB,GAAgB,IAAI,GAAS,GAA4B,EAAM,cAAc,EAAI,yBAAyB,IAAU,GAAkB,EAAe,eAAe,KAAkE,GAA7D,KAAK,IAAI,GAAsB,EAAe,aAAa,EAA8B,GAAwB,EAAe,cAAc,KAAuE,GAAlE,KAAK,IAAI,GAA4B,EAAe,YAAY,EAAoC,GAAyB,EAAM,eAAe,EAAI,0BAA0B,IAAU,GAAqB,EAAM,WAAW,EAAI,sBAAsB,GAAW,GAAuB,EAAe,aAAa,EAAM,aAAa,EAAI,wBAAwB,GAAW,GAA0B,EAAe,gBAAgB,EAAM,gBAAgB,EAAI,2BAA2B,GAAW,GAAiB,EAAM,OAAO,EAAI,kBAAkB,GAAY,GAAqB,KAAsB,cAAc,GAAM,EAAM,WAAW,EAAI,sBAAsB,CAAC,GAAsB,GAAqB,IAAiB,EAAqB,GAAsB,KAAsB,cAAoB,GAAmB,KAAsB,WAAiB,GAAsB,GAAsB,EAAe,KAAK,KAAK,GAAmB,EAAe,KAAK,KAAK,EAAe,KAAK,GAA+B,GAAkC,GAAsB,EAAE,GAAyB,EAAE,KAAK,IAAI,GAAyB,EAAqB,EAAE,GAAsB,GAA+B,GAAuB,GAAsB,KAAK,IAAI,EAAc,GAAG,EAAE,IAAoB,GAAqB,KAAK,IAAI,EAAc,GAAG,EAAE,EAAoB,GAAsB,KAA4B,GAAmB,GAAoB,IAAuB,IAAoB,GAAqB,GAAM,GAAiB,GAAmB,IAAuB,IAAoB,GAAqB,GAAM,GAAgB,GAAmC,IAAuB,GAAqB,GAAM,GAAgC,GAAyB,IAAuB,GAAqB,GAAM,GAAsB,GAAuB,GAAsB,KAAK,IAAI,GAAc,GAAG,EAAE,IAAsB,GAAmB,KAAK,IAAI,GAAc,GAAG,EAAE,GAAoB,GAAkC,GAAsB,KAAK,IAAI,GAAyB,IAAI,EAAE,IAAsB,GAAmB,KAAK,IAAI,GAAyB,GAAG,EAAE,GAAgE,GAAgB,GACx2V,GAAS,IAAc,OAAO,GAAW,GAAG,GAAc,GAClB,IAAvB,EAAM,QAAQ,CAAC,EAAA,CAAuC,IAAI,GAAM,CAAC,GAAG,CAAC,EAAK,OAAO,EAAK,IAAM,EAAS,GAAkC,CAAI,EAA0C,GAA9B,EAAK,aAAa,SAA+B,OAAO,EAAK,WAAW,GAAG,EAAK,UAAU,GAAG,MAAM,CAAC,GAAG,EAAS,SAAS,CAAY,CAAE,CAAC,EAAQ,GAAUD,EAAO,IAAI,EAAQ,GAAOA,EAAO,CAAC,EAAO,CAAC,GAAO,IAAWC,EAAS,EAAE,EAAO,CAAC,GAAgB,GAAoBA,EAAS,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,EAAO,CAAC,GAAmB,IAAuBA,EAAS,CAAC,CAAC,EAAQ,GAASD,EAAO,IAAI,EAC1iB,CAAC,GAAY,IAAgBC,EAAS,IAAI,EAAQ,GAAeD,EAAO,EAAW,EAAE,GAAe,QAAQ,GAAY,IAAM,GAAkB,GAAM,CAAC,IAAM,EAAK,GAAe,QAAQ,GAAG,CAAC,GAAM,CAAC,EAAK,OAAO,GAAG,CAAC,GAAM,CAAC,EAAK,CAAC,GAAe,CAAI,EAAE,MAAO,CAAC,IAAM,EAAM,KAAK,IAAI,EAAK,EAAE,EAAK,CAAC,GAAG,GAAG,KAAK,IAAI,EAAK,EAAE,EAAK,CAAC,GAAG,EAAQ,EAAQ,EAAK,OAAO,EAAK,MAAM,EAAK,OAAO,EAAK,MAAM,EAAK,QAAQ,EAAK,OAAO,EAAK,MAAM,EAAK,KAAK,EAAK,OAAO,EAAK,MAAQ,GAAO,IAAS,GAAe,CAAI,CAAG,EAC1e,CAAC,GAAgB,IAAoBC,EAAS,IAAI,EAAQ,GAAmBD,EAAO,EAAe,EAAE,GAAmB,QAAQ,GAAgB,IAAM,GAAsB,GAAM,CAAC,IAAM,EAAK,GAAmB,QAAQ,GAAG,CAAC,GAAM,CAAC,EAAK,OAAO,GAAG,CAAC,GAAM,CAAC,EAAK,CAAC,GAAmB,CAAI,EAAE,MAAO,CAAC,IAAM,EAAM,KAAK,IAAI,EAAK,EAAE,EAAK,CAAC,GAAG,GAAG,KAAK,IAAI,EAAK,EAAE,EAAK,CAAC,GAAG,EAAQ,EAAQ,EAAK,OAAO,EAAK,MAAQ,GAAO,IAAS,GAAmB,CAAI,CAAG,EAAO,CAAC,GAAoB,IAAwBC,EAAS,EAAK,EAAQ,GAAmBD,EAAO,EAAM,iBAAiB,EAAQ,GAAiBA,EAAO,EAAM,eAAe,EAAQ,GAAcA,EAAO,EAAM,YAAY,EAAQ,GAAyBA,EAAO,IAAI,EAAE,GAAmB,QAAQ,EAAM,kBAAkB,GAAiB,QAAQ,EAAM,gBAAgB,GAAc,QAAQ,EAAM,aAAa,GAAyB,YAAY,CAAC,EAAM,0BAA0B,CAAE,EAC35B,IAAM,GAASE,EAAM,EAAQ,GAAOA,EAAM,CAAC,CAAC,QAAQ,KAAK,GAAG,EAAQ,GAAiB,GAAkB,EAAM,EAAO,CAAC,GAAe,IAAmBD,EAAS,EAAK,EAAO,CAAC,GAAmB,IAAuBA,EAAS,EAAK,EAAO,CAAC,GAAmB,IAAuBA,EAAS,CAAC,EAAgB,EAAQ,GAAmB,EAAe,aAAa,YAAY,GAAgC,EAE9Y,GAAe,EAAa,QAAQ,IAAI,EAAa,OAAa,GAAuB,CAAC,IAAoB,GAAqB,GAAqB,IAAa,GAAuB,MAAc,CAAC,GAAG,GAAsP,OAAlO,IAAwB,EAAK,EAAQ,IAAU,CAAI,GAAM,EAAQ,SAAoB,EAAQ,QAAQ,sBAAsB,EAAE,GAAsB,CAAC,EAAE,EAAQ,EAAE,EAAQ,OAAK,QAAQ,EAAI,CAAC,GAAQ,GAAsB,IAAI,CAAG,CAAC,MAAY,CAAI,IAAoB,GAAuB,IAAI,CAAE,CAAG,EAAE,CAAC,EAAkB,CAAC,EACliB,MAAc,CAAC,MAAoB,CACnC,GAAkB,GAAqB,IAAI,QAAQ,CAAE,CAAC,CAAE,EAAE,CAAC,CAAC,EAAE,MAAc,CAAC,IAAM,MAAS,CAAC,EAAkB,GAAwB,CAAC,CAAE,EAAS,OAAP,EAAK,EAAS,GAAyB,CAAI,CAAE,EAAE,CAAC,CAAC,EAAE,MAAc,CAAC,GAAkB,YAAY,CAAE,EAAE,CAAC,EAAe,WAAW,EAAe,cAAc,EAAe,YAAY,EAAe,eAAe,EAAe,iBAAiB,EAAe,cAAc,CAAC,EAAE,MAAc,CAAC,GAAG,GAAe,CAAC,EAAqB,CAAC,EAAE,MAAO,CAAC,IAAM,EAAK,EAAQ,QAAQ,GAAG,CAAC,GAAM,OAAO,qBAAuB,IAAY,CAAC,EAAqB,CAAC,EAAE,MAAO,CAAC,IAAM,EAAS,IAAI,sBAAsB,CAAC,KAAS,CAAC,EAAqB,GAAO,mBAAmB,CAAC,CAAE,EAAE,CAAC,UAAU,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,EAAyB,OAAvB,EAAS,QAAQ,CAAI,MAAY,EAAS,WAAW,CAAE,EAAE,CAAC,EAAc,CAAC,EAAE,MAAc,CAAK,EAAQ,UAAe,GAAoB,GAAO,EAAQ,QAAQ,EAAc,GAA6B,EAAQ,OAAO,EAAE,GAAY,OAAO,EAAE,GAAwB,GAAO,GAAiB,EAAQ,QAAQ,EAAQ,EAAE,EAAE,CAAC,GAAO,GAAiB,GAAS,EAAc,GAAe,GAAyB,EAAM,kBAAkB,EAAM,gBAAgB,EAAM,YAAY,CAAC,EAAE,UAAyB,CAAC,GAAoB,EAAM,EAAE,GAAwB,EAAM,CAAE,EAAI,CAAC,EAAM,CAAC,EAAE,MAAc,CAAC,IAAM,EAAS,GAAqB,IAAI,SAAS,GAAG,CAAC,IAAsB,GAAgC,EAAE,CAAC,GAAsB,EAAK,EAAE,MAAO,CAG77C,IAAM,EAAU,GAAkB,qBAAqB,EAAkG,GAAG,EAA9B,IAAiB,IAA0B,EAA5F,IAAsB,IAAsF,EAAS,CAAC,GAAsB,EAAI,EAAE,MAAO,CAAC,GAAG,EAAkB,EAAE,CAAC,GAAsB,EAAI,EAAE,MAAO,CAAC,IAAM,EAAK,EAAQ,QAAQ,GAAG,CAAC,GAAM,OAAO,qBAAuB,IAAY,CAAC,GAAsB,EAAI,EAAE,MAAO,CAAC,IAAM,EAAS,IAAI,sBAAsB,CAAC,KAAS,CAAI,GAAO,iBAAgB,GAAsB,EAAI,EAAE,EAAS,WAAW,EAAG,EAAE,CAAC,WAAW,MAAM,UAAU,CAAC,CAAC,EAAyB,OAAvB,EAAS,QAAQ,CAAI,MAAY,EAAS,WAAW,CAAE,EAAE,CAAC,GAAqB,GAAgB,GAAqB,GAAuB,CAAiB,CAAC,EAAE,MAAc,CAAC,GAAG,KAAqB,YAAY,CAAC,GAAiB,CAAC,GAAsB,EAAI,EAAE,MAAO,CAAC,IAAI,EAAI,EAAQ,MAAe,CAAC,IAAM,EAAK,EAAQ,QAAQ,GAAsB,CAAC,CAAC,GAAM,GAAsB,EAAK,EAAgB,CAAC,CAAE,EAAqD,OAAnD,EAAW,EAAE,EAAI,sBAAsB,CAAU,MAAY,qBAAqB,CAAG,CAAE,EAAE,CAAC,GAAmB,EAAgB,CAAC,EAAE,IAAM,IAAyB,GAAqB,CAAC,EAAA,CAAG,IAAI,EAAoC,EAAQ,GAA4B,GAAwB,OAAO,GAAI,GAAI,WAAW,EAAG,uBAAuB,GAAK,EAAQ,GAAkC,GAA4B,OAAO,EAAQ,GAAoC,GAA4B,KAAK,GAAI,CAAC,CAAC,GAAI,SAAS,EAAQ,GAAkC,GAA4B,IAAI,GAAI,OAAO,EAAG,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,EAAQ,GAAgC,KAAK,UAAU,EAAiC,EAAQ,GAAsB,CAAC,GAAG,GAAmB,CAAC,EAAE,GAAG,GAA6B,GAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAsC,EAAQ,GAA0B,GAAsB,OAAO,GAAM,GAAM,SAAS,GAAM,QAAQ,EAAQ,GAAgC,GAA0B,OAAO,EAAQ,GAA8B,KAAK,UAAU,GAA0B,IAAI,GAAM,OAAO,EAAK,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,CAAC,EAAQ,GAAoB,GAAa,CAAC,kBAAe,mBAAgB,mBAAgB,uBAAoB,eAAY,oBAAiB,aAAU,aAAU,aAAU,sBAAmB,gBAAa,aAAU,OAAI,eAAY,kBAAe,SAAM,kBAAe,cAAW,mBAAgB,qBAAkB,iBAAc,gBAAa,UAAO,CAAC,EAAQ,GAAoB,GAAa,CAAC,yBAAsB,4BAA0B,yBAAsB,gBAAa,gBAAa,eAAa,iBAAc,cAAc,GAAuB,aAAW,mBAAiB,YAAY,CAAc,CAAC,EAAQ,GAAe,GAAQ,CAAC,qBAAkB,oBAAkB,mBAAgB,cAAW,iBAAc,wBAAqB,6BAA0B,wBAAqB,CAAC,EAAQ,GAAmB,GAAY,CAAC,aAAa,GAAsB,iBAAc,kBAAe,eAAY,eAAY,YAAS,cAAW,kBAAe,kBAAe,oBAAiB,0BAA0B,GAAmC,+BAA4B,gBAAgB,GAAyB,sBAAmB,WAAW,GAAoB,cAAW,mBAAgB,mBAAgB,UAAU,GAAmB,YAAS,eAAY,cAAW,sBAAmB,cAAW,YAAS,aAAU,CAAC,EAAQ,GAAuB,GAAoB,IAAI,GAAoB,IAAI,GAAe,IAAI,GAAyB,GAAuB,GAA4B,EAAc,CAAC,UAAU,EAAsB,YAAY,GAAoB,cAAc,EAAe,cAAc,aAAa,EAAe,aAAa,YAAY,EAAe,YAAY,eAAe,EAAe,cAAc,CAAC,EAAQ,GAAYD,EAAO,CAAC,CAAC,EAAE,GAAY,QAAQ,CAAC,GAAG,GAAuB,aAAW,gBAAa,gBAAa,gBAAa,kBAAe,kBAAe,iBAAe,mBAAgB,yBAAsB,cAAW,mBAAgB,mBAAgB,mBAAgB,aAAU,gBAAa,qBAAkB,oBAAkB,mBAAgB,cAAW,iBAAc,wBAAqB,6BAA0B,yBAAsB,4BAA0B,yBAAsB,gBAAa,gBAAa,eAAa,iBAAc,cAAc,GAAuB,aAAW,mBAAiB,YAAY,EAAe,sBAAoB,cAAW,oBAAiB,mBAAgB,mBAAgB,iBAAc,iBAAc,kBAAe,0BAAuB,iBAAc,sBAAmB,4BAAyB,oBAAkB,2BAAwB,sBAAmB,mCAAgC,wBAAwB,GAAyB,QAAQ,kBAAkB,GAAmB,QAAQ,gBAAgB,GAAiB,QAAQ,aAAa,GAAc,QAAQ,uBAAoB,0BAAuB,mBAAgB,cAAc,GAAuB,gBAAa,iBAAc,iBAAc,kBAAe,mBAAgB,oBAAiB,iBAAc,iBAAc,iBAAc,eAAY,iBAAc,iBAAc,iBAAc,sBAAmB,qBAAkB,qBAAkB,yBAAsB,6BAA0B,4BAAyB,4BAAyB,yBAAsB,yBAAsB,2BAAwB,wBAAqB,wBAAqB,yBAAyB,GAAkC,kBAAe,oBAAiB,aAAU,aAAU,aAAU,sBAAmB,gBAAa,aAAU,OAAI,eAAY,kBAAe,SAAM,kBAAe,cAAW,mBAAgB,qBAAkB,iBAAc,gBAAa,WAAQ,aAAU,8BAA2B,eAAY,kBAAe,cAAW,aAAa,GAAsB,iBAAc,kBAAe,eAAY,eAAY,YAAS,cAAW,kBAAe,kBAAe,oBAAiB,0BAA0B,GAAmC,+BAA4B,gBAAgB,GAAyB,sBAAmB,WAAW,GAAoB,cAAW,mBAAgB,mBAAgB,UAAU,GAAmB,YAAS,eAAY,cAAW,sBAAmB,cAAW,YAAS,cAAW,gBAAa,kBAAe,oBAAiB,qBAAkB,YAAS,gBAAa,qBAAkB,kBAAe,kBAAe,YAAS,gBAAa,iBAAc,qBAAkB,sBAAmB,sBAAmB,2BAAwB,cAAW,uBAAoB,sBAAmB,sBAAmB,oBAAiB,aAAU,cAAW,eAAY,gBAAa,gBAAa,uBAAoB,qBAAkB,8BAA2B,kCAA+B,iCAA8B,kCAA+B,iBAAc,iBAAc,yBAAsB,yBAAsB,yBAAsB,yBAAsB,yBAAsB,yBAAsB,2BAAwB,2BAAwB,2BAAwB,uBAAoB,mBAAgB,YAAY,GAAqB,qBAAkB,2BAAwB,yBAAyB,GAAkC,wBAAqB,0BAAuB,6BAA0B,oBAAiB,wBAAqB,yBAAsB,mBAAgB,mBAAmB,EAAe,iBAAc,eAAe,GAAsB,mBAAmB,GAA0B,yBAAyB,GAAgC,uBAAuB,GAA8B,iBAAiB,GAAwB,qBAAqB,GAA4B,2BAA2B,GAAkC,2BAA2B,GAAkC,6BAA6B,GAAoC,yBAAyB,GAAgC,cAAc,GAAoB,cAAc,GAAoB,SAAS,GAAe,aAAa,GAAmB,iBAAiB,EAAsB,EAAE,GAAY,QAAQ,qBAAqB,GAAiB,GAAY,OAAO,EAAE,IAAM,GAA2B,GAAgC,GAAY,QAAQ,qBAAqB,GAAS,GAAoB,KAAK,WAAW,IAAe,CAAC,EAAA,CAAG,IAAI,GAAM,GAAM,UAAU,EAAE,CAAC,EAAQ,GAAqB,KAAK,WAAW,IAAe,CAAC,EAAA,CAAG,IAAI,GAAM,EAAK,CAAC,aAAa,CAAC,CAAC,EAAK,aAAa,SAAS,OAAO,EAAK,UAAU,EAAE,CAAC,CAAC,KAAK,EAAE,SAAS,MAAM,SAAS,EAAK,UAAU,GAAG,UAAU,EAAK,WAAW,IAAI,EAAE,IAAI,CAAC,EAIliR,MAAc,CAAK,OAA8B,KAAgB,GAAmB,EAAQ,EACzF,IAAe,YAAY,IAAM,KAAQ,GAAkB,GAAM,UAAU,CAAC,GAAkB,EAAK,QAAQ,GAAG,GAAmB,EAAK,QAAQ,CAAK,EAAE,CAAC,GAAS,KAAK,UAAU,IAAe,IAAI,GAAG,GAAG,QAAQ,CAAC,EAAE,EAAkB,CAAC,EACxO,MAAc,CAAC,IAAM,EAAO,GAAU,QAAQ,GAAG,CAAC,EAAO,OAAO,IAAM,EAAI,GAAY,QAAc,EAAS,GAAqB,IAAI,SAAS,GAAG,CAAC,EAAI,aAAa,CAAC,IAAoB,GAAgC,EAAE,CAAC,GAAS,QAAQ,KAAQ,IAAoB,GAAsB,EAAK,EAAG,MAAO,CAC9S,GAAY,QAAQ,GAAK,IAAM,EAAgB,QAAQ,GAAO,GAAG,KAAW,EAAO,aAAa,gCAAgC,CAAe,EAAE,IAAM,EAAS,IAAIG,GAAoB,CAAC,SAAO,UAAU,EAAI,qBAAqB,MAAM,GAAK,gBAAgB,mBAAmB,mBAAmB,GAAK,QAAQ,EAAK,CAAC,EAAE,EAAS,UAAU,QAAQ,CAAC,EAAE,EAAI,eAAe,EAAI,aAAa,KAAK,GAAI,GAAI,SAAS,GAAI,UAAU,GAAG,EAAS,UAAU,KAAK,EAAmB,EAAS,YAAY,GAAc,EAAI,cAAc,EAA4B,EAAS,oBAAoB,EAAI,SAAS,EAAS,iBAAiBC,GAAqB,EAAS,wBAAwB,EAAgB,GAA4B,SAAS,CAAC,KAAK,OAAO,QAAQ,EAAgB,SAAO,WAAW,GAAwB,CAAC,CAAC,WAAW,aAAa,EAAa,QAAQ,EAAE,sBAAmB,eAAe,EAAI,YAAY,UAAU,GAAwB,CAAC,CAAC,WAAW,EAAE,UAAU,GAAwB,CAAC,CAAC,OAAO,MAAM,EAAE,SAAS,CAAC,CAAC,GAAwB,CAAC,CAAC,aAAa,CAAC,EAAE,IAAM,EAAM,IAAIC,GAAgB,EAAI,sBAA4E,EAAM,WAAW,KAAvE,EAAM,WAAW,GAAW,EAAI,eAAe,EAA6B,IACxpC,EAAM,EAAQ,SAAS,aAAa,EAAQ,EAAM,EAAQ,SAAS,cAAc,EAAQ,EAAW,EAAM,EAAU,EAAU,EAAI,aAAa,gBAAgB,EAAO,IAAIC,GAAyB,IAAgB,EAAW,EAAA,GAAiB,EAAW,EAAA,GAAiB,EAAE,IAAgB,EAAE,IAAI,GAAG,EAAE,EAAO,KAAK,EAAI,WAAW,EAAE,EAAO,uBAAuB,GACzW,EAAO,IAAIC,GAAwB,GAAG,EAAW,IAAI,GAAG,EAAG,EAAO,SAAS,IAAI,EAAI,gBAAgB,EAAI,gBAAgB,EAAI,eAAe,EAC1I,IAAI,EAAa,KAAQ,EAAI,aAAa,WAAU,EAAa,IAAIC,GAAmB,EAAa,OAAO,EAAI,cAAc,MAAM,IAAM,EAAS,IAAIC,GAAc,EAAO,CAAM,EAAE,EAAS,cAAc,GAAK,EAAS,cAAc,IAAI,EAAS,UAAU,GAAK,EAAS,SAAS,GAAG,EAAS,YAAY,GAAG,EAAS,aAAa,EAAI,oBAAoB,EAAS,QAAQ,EAAI,oBAAoB,EAAS,WAAW,EAAI,WAAW,EAAS,WAAW,GAAM,EAAS,gBAAgB,EAAI,gBAAgB,IAAM,EAAa,IAAIC,GAAmB,SAAS,EAAI,qBAAqB,EAAE,EAAM,IAAI,CAAY,EAAE,IAAM,EAAS,IAAIC,GAAuB,GAAW,EAAI,qBAAqB,EAAE,EAAI,yBAAyB,EAAE,EAAS,SAAS,IAAI,EAAI,cAAc,EAAE,EAAI,cAAc,GAAG,EAAI,cAAc,CAAC,EAAE,EAAS,WAAW,EAAI,cAAc,IAAM,EAAO,EAAI,eAAe,KAAK,EAAS,OAAO,QAAQ,IAAI,EAAO,CAAM,EAAE,EAAS,OAAO,KAAK,EAAI,YAAY,MAAM,EAAS,OAAO,WAAW,EAAI,kBAAkB,IAAI,EAAM,IAAI,CAAQ,EAAE,IAAM,EAAU,IAAIA,GAAuB,SAAS,EAAE,EAAE,EAAU,SAAS,IAAI,GAAG,EAAE,EAAE,EAAE,EAAM,IAAI,CAAS,EAAE,EAAM,IAAI,IAAIC,GAAsB,SAAS,QAAQ,GAAG,CAAC,EAC1qC,IAAM,EAAkB,CAAC,EACrB,EAAe,KAAK,SAAS,EAAqB,EAAM,EAAK,EAAM,EAAO,CAAI,IAAgB,EAAM,OAAO,CAAc,EAAE,EAAe,SAAS,QAAQ,EAAE,EAAe,SAAS,QAAQ,GAAG,IAAM,EAAS,IAAIC,GAA2B,EAAU,IAAI,aAAa,EAAM,CAAC,EAAQ,EAAW,IAAI,aAAa,EAAM,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAM,IAAI,CAAC,IAAM,EAAG,EAAE,EAC/V,EAAE,EAAO,KAAK,OAAO,EAAQ,EAAM,KAAK,OAAO,EAAE,KAAK,GAAG,EAAQ,EAAI,KAAK,KAAK,EAAE,KAAK,OAAO,EAAE,CAAC,EAAE,EAAU,GAAI,EAAE,KAAK,IAAI,CAAG,EAAE,KAAK,IAAI,CAAK,EAAE,EAAU,EAAG,GAAG,EAAE,KAAK,IAAI,CAAG,EAAE,KAAK,IAAI,CAAK,EAAE,EAAU,EAAG,GAAG,EAAE,KAAK,IAAI,CAAG,EACpO,EAAW,IAAK,KAAK,OAAO,EAAE,IAAI,IAAI,EAAW,EAAG,IAAI,KAAK,OAAO,EAAE,IAAI,IAAI,EAAW,EAAG,IAAI,KAAK,OAAO,EAAE,IAAI,GAAI,CAAC,EAAS,aAAa,WAAW,IAAIC,GAAsB,EAAU,CAAC,CAAC,EAAE,EAAS,aAAa,WAAW,IAAIA,GAAsB,EAAW,CAAC,CAAC,EAAE,IAAM,EAAS,IAAIC,GAAqB,CAAM,OAAK,MAAM,GAAW,CAAK,EAAE,YAAY,GAAK,QAAQ,GAAG,SAAS,EAAuB,WAAW,EAAK,CAAC,EAAE,EAAe,IAAIC,GAAa,EAAS,CAAQ,EAAE,EAAM,IAAI,CAAc,CAAE,CAAC,SAAS,EAAgB,EAAM,EAAO,CAAC,GAAG,CAAC,EAAe,OAAO,IAAM,EAAU,EAAe,SAAS,WAAW,SAAS,MAAY,EAAW,EAAe,SAAS,WAAW,SAAS,MAAY,EAAM,EAAU,OAAO,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAM,IAAI,CAAC,IAAM,EAAG,EAAE,EAClpB,GADopB,EAAU,IAAK,EAAW,GAAI,EAAM,EAAU,EAAG,IAAI,EAAW,EAAG,GAAG,EAAM,EAAU,EAAG,IAAI,EAAW,EAAG,GAAG,EAC91B,EAAU,GAAI,EAAU,GAAI,EAAU,EAAG,GAAG,EAAU,EAAG,GAAG,EAAU,EAAG,GAAG,EAAU,EAAG,GAAa,EAAO,EAAO,CAAC,IAAM,EAAE,EAAO,KAAK,OAAO,EAAE,GAAS,EAAM,KAAK,OAAO,EAAE,KAAK,GAAG,EAAQ,EAAI,KAAK,KAAK,EAAE,KAAK,OAAO,EAAE,CAAC,EAAE,EAAU,GAAI,EAAE,KAAK,IAAI,CAAG,EAAE,KAAK,IAAI,CAAK,EAAE,EAAU,EAAG,GAAG,EAAE,KAAK,IAAI,CAAG,EAAE,KAAK,IAAI,CAAK,EAAE,EAAU,EAAG,GAAG,EAAE,KAAK,IAAI,CAAG,CAAE,CAAC,CAAC,EAAe,SAAS,WAAW,SAAS,YAAY,EAAK,CAAC,IAAM,EAAO,IAAIC,GAAW,IAAIC,GAAoB,GAAG,EAAE,EAAE,IAAIC,GAAqB,CAAC,QAAQ,GAAG,CAAC,CAAC,EAAE,EAAO,SAAS,EAAE,CAAC,KAAK,GAAG,EAAE,EAAO,cAAc,GAAK,EAAO,QAAQ,EAAI,cAAc,EAAM,IAAI,CAAM,EACvnB,IAAM,EAAY,GAA2B,EAAM,EAAM,CAAG,EAAQ,EAAQ,EAAY,IAAI,EAAS,cAAc,CAAO,EAAE,IAAI,EAAS,KAAS,EAAM,KAAS,EAAW,KAAS,EAAS,KAAS,EAAU,KAAS,EAAQ,KAAS,EAAU,KAAS,EAAa,KAAS,EAAM,KAAS,EAAa,KAAS,EAAS,KAAS,GAAoB,KAAS,GAAU,KAAS,GAAU,KAAS,GAAW,KAAS,GAAK,KAAS,EAAgB,GAAO,GAAQ,EAAM,GAAQ,EAAM,GAAU,EAKze,GAAW,KAAS,GAAkB,GAAY,OAA8B,CAAI,IAAY,KAAyB,GAAkB,GAAK,GAAmB,CAAC,CAAC,KAAK,GAAM,CAAC,GAAW,EAAK,GAAkB,EAAM,CAAC,CAAC,CAAC,MAAM,GAAK,CAAC,GAAkB,GAAM,QAAQ,KAAK,2DAA2D,CAAG,CAAE,CAAC,EAAE,EAAQ,OAAmB,CAAC,IAAM,EAAO,GAAS,QAAY,IAAc,EAAO,SAAS,EAAS,EAAO,MAAM,EAAM,EAAO,SAAS,EAAS,EAAO,UAAU,EAAU,EAAO,QAAQ,EAAQ,EAAO,UAAU,EAAU,EAAO,aAAa,EAAa,EAAO,SAAS,EAAS,EAAO,oBAAoB,GAAoB,EAAO,UAAU,GAAU,EAAO,UAAU,GAAU,EAAO,WAAW,GAAW,EAAO,KAAK,GAAK,EAAO,aAAa,EAAa,EAAO,OAAO,EAAM,EAAO,MAAM,EAAS,EAAO,KAAK,EAAU,EAAO,WAAW,EAAU,EAAO,cAAc,EAAa,EAAO,cAAc,EAAa,EAAO,UAAU,EAAS,EAAO,qBAAqB,GAAoB,EAAO,WAAW,GAAU,EAAO,WAAW,GAAU,EAAO,YAAY,GAAW,EAAO,MAAM,GAAK,EAAQ,OAA0B,CAAC,GAAU,UAAU,EAAE,GAAO,UAAU,EAAK,EAAU,EAAU,UAAU,EAAO,GAAS,UAAU,EAAE,GAAU,UAAU,EAAE,GAAW,UAAU,EAAE,GAAW,mBAAmB,UAAU,EAAE,GAAW,eAAe,UAAU,EAAE,GAAW,eAAe,UAAU,EAAE,GAAO,UAAU,EAAE,GAAc,UAAU,UAAU,EAAE,GAAU,UAAU,UAAU,EAAE,IAAqB,UAAU,UAAU,EAAE,IAAW,UAAU,UAAU,EAAE,IAAW,UAAU,EAAE,IAAY,UAAU,EAAE,IAAM,UAAU,UAAU,EAAE,GAAc,UAAU,UAAU,EAAE,EAAS,KAAK,EAAM,KAAK,EAAW,KAAK,EAAS,KAAK,EAAU,KAAK,EAAQ,KAAK,EAAU,KAAK,EAAa,KAAK,EAAM,KAAK,EAAa,KAAK,EAAS,KAAK,GAAoB,KAAK,GAAU,KAAK,GAAU,KAAK,GAAW,KAAK,GAAK,KAAK,EAAgB,GAAG,GAAQ,EAAE,GAAQ,EAAE,GAAU,EAAE,GAAe,CAAE,EAAQ,IAAsB,EAAU,EAAE,IAAI,CAAC,GAAG,CAAC,GAAoB,CAAS,EAA2B,OAAxB,GAAsB,EAAS,GAAO,GAAG,CAAC,GAAwC,OAA5B,GAA0B,EAAS,GAAO,GAAK,CAAC,iBAAe,aAAW,kBAAgB,aAAW,WAAS,YAAU,aAAW,cAAY,GAAiB,EAAQ,GAA2B,EAAE,EAAE,CAAS,EAAQ,EAAI,EAAQ,IAAU,EAAQ,GAAyB,CAAS,EAAE,GAAG,CAAC,GAAU,IAAkB,EAAQ,CAAC,GAAsB,EAAE,EAAM,IAAIC,GAAwB,EAAQ,YAAY,EAAQ,aAAa,CAAC,KAAKC,GAAoB,OAAOC,GAAiB,UAAUC,GAAmB,UAAUA,GAAmB,WAAWnB,EAAoB,CAAC,EAAE,EAAS,IAAI,EAAe,EAAS,CAAK,EAAE,EAAS,cAAc,CAAG,EAKvuF,EAAS,eAAe,GAAK,EAAW,IAAI,EAAW,EAAM,CAAM,EAAE,EAAW,MAAM,GAAK,EAAW,WAAW,GAAK,EAAS,QAAQ,CAAU,EAAK,EAAU,aAAY,EAAS,IAAI,EAAS,EAAM,EAAO,EAAQ,YAAY,EAAQ,YAAY,EAAE,EAAS,OAAO,EAAS,OAAO,QAAQ,EAAS,QAAQ,CAAQ,GAAG,IAAM,EAAQ,EAAU,WAAW,EAAU,aAAa,eAAqB,GAAc,EAAU,cAAc,IAAU,EAAU,sBAAyB,IAAc,EAAQ,IAAIgB,GAAwB,EAAQ,YAAY,EAAQ,aAAa,CAAC,KAAKC,GAAoB,OAAOC,GAAiB,UAAUC,GAAmB,UAAUA,EAAkB,CAAC,EAAE,EAAU,IAAI,GAAc,CAAO,EAAE,EAAS,QAAQ,CAAS,GAAM,IAAS,EAAU,IAAI,EAAU,EAAM,EAAO,CAAC,MAAM,EAAU,SAAS,SAAS,EAAU,YAAY,QAAQ,EAAU,UAAU,CAAC,EAAE,EAAS,QAAQ,CAAS,GAAM,EAAU,eAAc,EAAM,IAAI,EAAgB,IAAIC,EAAc,EAAQ,YAAY,EAAQ,YAAY,EAAE,EAAU,cAAc,EAAU,YAAY,EAAU,cAAc,EAAE,EAAS,QAAQ,CAAK,GAAM,EAAU,qBAAoB,EAAa,IAAI,EAAW,EAAkB,EAAE,EAAS,QAAQ,CAAY,GAAM,EAAU,iBAAgB,EAAS,IAAI,EAAW,EAAc,EAAE,EAAS,QAAQ,CAAQ,GAAM,EAAU,4BAA2B,GAAoB,IAAI,EAAW,EAAyB,EAAE,EAAS,QAAQ,EAAmB,GAAM,EAAU,kBAAiB,GAAU,IAAI,EAAW,EAAe,EAAE,EAAS,QAAQ,EAAS,GAAM,IAAc,EAAa,IAAI,EAAW,EAAkB,EAAE,EAAa,SAAS,OAAO,MAAM,EAAQ,QAAQ,EAAS,QAAQ,CAAY,GAAM,EAAU,iBAEvsD,GAAW,IAAI,EAAW,EAAS,QAAQ,EAAU,GAAM,EAAU,aAAY,GAAK,IAAI,EAAW,CAAU,EAAE,EAAS,QAAQ,EAAI,GAAM,EAAU,iBAAgB,GAAU,GAA6B,CAAU,EAAE,GAAU,gBAAgB,CAAG,EAAE,GAAU,UAAU,EAAQ,YAAY,EAAQ,YAAY,EAAE,GAAU,wBAAwB,CAAS,EAAE,EAAS,QAAQ,EAAS,GAAG,EAAgB,EAAQ,GAAe,CAAE,CAAyiC,OAAhhC,KAAU,GAAG,KAAU,GAAG,KAAK,IAAI,GAAU,CAAG,EAAE,OAA0B,EAAS,cAAc,CAAG,EAAE,EAAS,QAAQ,EAAE,CAAC,EAAE,GAAO,UAAU,EAAQ,YAAY,EAAQ,YAAY,EAAE,GAAS,UAAU,EAAQ,YAAY,EAAQ,YAAY,EAAE,GAAW,UAAU,EAAQ,YAAY,EAAQ,YAAY,EAAE,GAAU,UAAU,EAAQ,YAAY,EAAQ,YAAY,EAAE,GAAW,UAAU,EAAQ,YAAY,EAAQ,YAAY,EAAE,IAAW,gBAAgB,CAAG,EAAE,IAAW,UAAU,EAAQ,YAAY,EAAQ,YAAY,EAAE,GAAO,YAAY,MAAM,EAAQ,YAAY,EAAQ,YAAY,EAAE,IAAM,UAAU,YAAY,OAAO,MAAM,EAAE,EAAQ,YAAY,EAAE,EAAQ,YAAY,EAAE,IAAqB,UAAU,YAAY,OAAO,MAAM,EAAQ,YAAY,EAAQ,YAAY,EAAE,GAAQ,EAAE,GAAQ,EAAE,GAAU,GAAQ,GAAW,UAAW,SAAW,EAAU,SAAS,OAAU,MAAM,EAAE,GAAM,GAAc,IAAS,EAAa,SAAS,OAAO,MAAM,EAAQ,SAAY,GAAS,SAAS,GAAoB,GAAS,QAAQ,CAAS,EAAU,EAAK,EAAQ,GAAM,CAAC,YAAY,EAAE,UAAU,YAAY,IAAI,EAAE,UAAU,CAAC,IAAM,EAAI,YAAY,IAAI,EAAQ,EAAM,KAAK,IAAI,GAAG,EAAI,KAAK,WAAW,GAAG,EAA6C,MAA3C,MAAK,UAAU,EAAI,KAAK,aAAa,EAAa,CAAM,EAAE,OAAO,CAAC,KAAK,UAAU,YAAY,IAAI,CAAE,CAAC,EAAQ,EAAG,CAAC,mBAAmB,EAAE,WAAS,QAAM,SAAO,eAAa,WAAS,WAAS,QAAM,WAAS,YAAU,UAAQ,YAAU,eAAa,WAAS,uBAAoB,aAAU,aAAU,QAAK,eAAa,YAAO,SAAO,WAAS,YAAU,eAAa,oBAAkB,MAAM,KAAK,WAAW,KAAK,MAAM,KAAK,WAAW,CAAC,EAAE,uBAAuB,KAAK,oBAAoB,GAAG,yBAAyB,GAAG,sBAAsB,IAAI,IAAI,+BAA+B,KAAK,6BAA6B,KAAK,qBAAqB,GAAM,yBAAyB,GAAM,2BAA2B,GAAM,6BAA6B,GAAG,gCAAgC,GAAG,oBAAoB,GAAM,SAAM,eAAe,KAAK,WAAW,KAAK,WAAW,KAAK,gBAAgB,KAAK,uBAAqB,kBACv+E,eAAe,GAAM,mBAAmB,GAAM,iBAAiB,EAAE,kBAAkB,EAAE,iBAAiB,KAAK,0BAA0B,IAAI,IAAI,kBAAkB,IAAI,IAAI,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,eAAe,EAAI,WAAW,YAAY,EAAI,aAAa,YAAY,EAAI,aAAa,YAAY,EAAI,aAAa,SAAS,EAAI,eAAe,SAAS,EAAI,eAAe,SAAS,EAAI,eAAe,YAAY,GAAM,eAAe,GAAG,aAAa,GAAG,UAAU,GAAG,kBAAkB,IAAI,IAChf,YAAY,EAAI,gBAAgB,cAAc,GAAW,EAAI,eAAe,EAAE,eAAe,GAAW,EAAI,qBAAqB,EAAE,yBAAyB,EAAI,sBAAsB,wBAAwB,GAAW,EAAI,qBAAqB,EAAE,6BAA6B,GAAG,4BAA4B,IAAIC,EAAY,qBAAqB,EAAI,cAAc,oBAAoB,GAAW,EAAI,aAAa,EACvZ,cAAc,EAAI,YAAY,EAAE,aAAa,EAAI,cAAc,EAAE,aAAa,EAAI,cAAc,EAAE,aAAa,EAAI,cAAc,EAAE,aAAa,EAAI,gBAAgB,EAAE,aAAa,EAAI,gBAAgB,EAAE,aAAa,EAAI,gBAAgB,EAAE,aAAa,EAAI,iBAAiB,GAAG,aAAa,EAAI,iBAAiB,EAAE,aAAa,EAAI,iBAAiB,GACvV,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,aAAa,EAE9C,UAAU,IAAI,IAAI,mBAAmB,EAAI,eAAe,QAAQ,GAAG,EAAE,eAAe,EACpF,UAAU,EAAS,OAAO,EAAM,MAAM,EAAS,KAAK,EAAU,WAAW,EAAU,cAAc,EAAa,cAAc,EAAa,UAAU,EAAS,qBAAqB,GAAoB,WAAW,GAAU,MAAM,GAChO,cAAc,GAAG,iBAAiB,GAAG,iBAAiB,GAAG,YAAY,GAAG,gBAAgB,GACxF,kBAAkB,EAAE,oBAAoB,KAAK,mBAAmB,KAAK,aAAa,GAAM,qBAAqB,KAAK,gBAAgB,GAClI,kBAAkB,KAAK,mBAAmB,EAAE,sBAAsB,GAClE,iBAAiB,EACjB,yBAAyB,EAAE,yBAAyB,EAAE,yBAAyB,EAAE,yBAAyB,EAAE,yBAAyB,EAAE,yBAAyB,EAAE,0BAA0B,EAAE,mBAAmB,GAAqB,EAAE,qBAAqB,EAAE,0BAA0B,EAAE,aAAa,OAAO,SAAW,KAAiB,CAAC,SAAS,OAAO,kBAAkB,GAAK,eAAe,EAAQ,sBAAsB,EAAY,YAAY,uBAAuB,EAAY,aAAa,gBAAgB,EAAE,gBAAgB,EAAE,cAAc,EAAE,aAAa,EAAE,eAAe,EAAE,OAAO,KAAK,UAAU,KAAK,YAAY,KAAK,UAAU,GAAM,mBAAmB,GAAM,SAAS,CAAC,EAAE,GAAS,QAAQ,EAAG,EAAS,iBAAiB,aAAa,CAAI,GAAS,UAAQ,GAAS,QAAQ,mBAAmB,EAAE,CAAC,EAAE,EAAG,qBAAqB,GAAqB,EAAG,SAAS,GAAkB,SAAS,CAAE,EAAE,GAAwB,EAAG,EAAI,EAAS,CAAK,EAE35B,IAAM,GAAY,GAAG,CAAC,GAAG,CAAC,EAAQ,QAAQ,OAAO,IAAM,EAAK,EAAQ,QAAQ,sBAAsB,EAC/F,EAAE,SAAS,EAAK,MAAM,EAAE,SAAS,EAAK,OAAO,EAAE,SAAS,EAAK,KAAK,EAAE,SAAS,EAAK,QACrF,EAAG,cAAc,EAAE,QAAQ,EAAK,MAAM,EAAK,MAAM,EAAE,EAAE,EAAG,cAAc,EAAE,QAAQ,EAAK,KAAK,EAAK,OAAO,EAAE,IACxG,EAAG,aAAa,EAAE,EAAG,aAAa,EAAG,EAAE,SAAS,iBAAiB,YAAY,EAAW,EACxF,IAAM,GAAqB,IAAIC,GAAgB,GAAqB,aAAa,GAAK,IAAM,GAAiB,IAAIF,EAAkB,GAAmB,KAAS,GAAwB,KAEjL,EAAqB,GAAQ,CAEnC,IAAM,EAAE,EAAO,OAAwF,OAA9E,GAAG,IAAI,EAAG,OAAO,IAAI,EAAG,YAAY,IAAI,EAAG,cAAc,CAAC,EAAE,OAAe,EAAU,CAAO,EAAQ,GAAiB,GAAG,CAA+B,GAAG,CAAvB,GAAY,QAAgB,gBAAgB,CAAC,EAAG,YAAY,CAAC,EAAQ,QAAQ,CAAI,IAAoB,GAAuB,EAAM,GAAe,SAAQ,GAAkB,IAAI,EAAE,MAAO,CAAC,IAAM,EAAK,EAAQ,QAAQ,sBAAsB,EAAE,GAAG,EAAE,QAAQ,EAAK,MAAM,EAAE,QAAQ,EAAK,OAAO,EAAE,QAAQ,EAAK,KAAK,EAAE,QAAQ,EAAK,OAAO,CAAI,IAAmB,GAAuB,EAAK,GAAe,SAAQ,GAAkB,IAAI,EAAE,MAAO,CAAC,GAAiB,GAAG,EAAE,QAAQ,EAAK,MAAM,EAAK,MAAM,EAAE,EAAE,GAAiB,EAAE,GAAG,EAAE,QAAQ,EAAK,KAAK,EAAK,QAAQ,EAAE,EAAE,GAAqB,cAAc,GAAiB,EAAG,MAAM,EAAE,IAAM,EAAO,GAAsB,EAAE,GAAG,CAAC,EAAO,OAAO,CAAI,IAAmB,GAAuB,EAAK,GAAe,SAAQ,GAAkB,IAAI,EAAE,MAAO,CAAC,IAAM,EAAK,GAAqB,iBAAiB,EAAO,EAAK,EAAE,GAAG,EAAK,OAAO,EAAE,CAAC,IAAM,EAAO,EAAK,EAAE,CAAC,OAC7/B,EAAM,EAAqB,CAAM,EACvC,GAAG,KAAmB,GAAQ,KAAmB,EAC9C,IAAoB,KAAqB,GAAM,GAAuB,EAAE,GAAmB,KAAK,GAAwB,UAAW,GAAG,KAAqB,EAAM,CAAC,GAAuB,EAAE,GAAmB,EACjN,GAAwB,IAAI,IAAI,IAAM,EAAY,CAAC,EAAK,EAAM,OAAO,EAAY,KAAK,CAAK,EAAO,EAAM,SAAS,GAAG,CAAI,EAAE,QAAO,EAAY,KAAK,CAAC,CAAE,CAAC,EAAE,EAAY,QAAQ,GAAG,CAAC,GAAG,CAAC,EAAE,SAAS,OAAO,IAAM,EAAK,MAAM,QAAQ,EAAE,QAAQ,EAAE,EAAE,SAAS,CAAC,EAAE,QAAQ,EAAE,GAAwB,IAAI,EAAE,EAAK,IAAI,GAAI,EAAG,SAAS,EAAG,SAAS,MAAM,EAAE,IAAI,CAAC,EAAE,EAAK,QAAQ,GAAI,CAAI,EAAG,UAAS,EAAG,SAAS,OAAO,OAAO,CAAE,CAAC,CAAE,CAAC,CAAE,CACxZ,IAAM,EAAK,EAAM,MAAM,EAAO,MAAM,YAAkB,EAAK,EAAO,cAAc,cAAc,OAC1F,EAAM,EAAQ,EAAY,CAAC,EAAK,EAAM,OAAO,EAAY,KAAK,CAAK,EAAO,EAAM,SAAS,GAAG,CAAI,EAAE,QAAO,EAAY,KAAK,CAAC,CAAE,CAAC,EAAE,EAAY,QAAQ,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,IAAM,EAAG,EAAE,SAAS,aAAa,UAAU,EAAK,IAAG,GAAO,EAAG,MAAM,CAAC,CAAC,EAAE,IAAI,EAAI,GAAM,EAAO,WAAU,AAA6F,EAA1F,MAAM,QAAQ,EAAO,QAAQ,EAAM,EAAO,SAAS,IAAI,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,KAAK,IAAI,EAAW,EAAO,SAAS,MAAM,EAAO,SAAS,MAAM,IAC9Z,IAAI,EAAK,EAAS,EAAE,EAAM,OAAO,KAAM,GAAG,IAAI,EAAG,OAAU,EAAE,OAAK,EAAK,EAAE,KAAK,MAAM,GAAK,EAAE,EAAE,OAAQ,GAAkB,CAAC,EAAE,EAAE,QAAQ,EAAK,KAAK,EAAE,EAAE,QAAQ,EAAK,IAAI,OAAK,OAAK,QAAM,MAAI,MAAI,CAAC,CAAE,MAAS,IAAmB,GAAuB,EAAK,GAAe,SAAQ,GAAkB,IAAI,CAAG,EAAQ,OAA2B,CAAI,IAAoB,IAAyB,GAAwB,SAAS,EAAM,IAAO,EAAY,MAAM,QAAQ,EAAK,QAAQ,EAAE,EAAK,SAAS,CAAC,EAAK,QAAQ,EAAA,CAAO,SAAS,EAAE,IAAI,CAAI,EAAE,UAAU,EAAM,GAAG,EAAE,SAAS,KAAK,EAAM,EAAE,EAAU,EAAE,UAAS,EAAE,SAAS,OAAO,CAAC,CAAE,CAAC,CAAE,CAAC,EAAG,GAAmB,KAAK,GAAwB,IAAK,EAAE,SAAS,iBAAiB,YAAY,EAAgB,EACltB,IAAM,GAAmB,IAAIE,GAAgB,GAAmB,aAAa,GAAK,IAAM,EAAe,IAAIF,EAAkB,GAAiB,KACzI,EAAuB,KAGvB,EAAuB,KAEtB,EAAW,CAAC,KAAK,KAAK,OAAO,KAAK,SAAS,EAAE,OAAO,EAAE,aAAa,KAAK,aAAa,KAAK,aAAa,KAAK,UAAU,KAAK,YAAY,KAAK,eAAe,KAAK,eAAe,KAAK,YAAY,IAAI,EACpM,EAAc,CAAC,KAAK,KAAK,OAAO,KAAK,SAAS,EAAE,aAAa,KAAK,aAAa,KAAK,aAAa,KAAK,UAAU,KAAK,YAAY,KAAK,eAAe,KAAK,eAAe,KAAK,YAAY,IAAI,EAAQ,EAAW,CAAC,KAAK,KAAK,OAAO,KAAK,SAAS,EAAE,OAAO,EAAE,aAAa,KAAK,aAAa,KAAK,aAAa,KAAK,UAAU,KAAK,YAAY,KAAK,eAAe,KAAK,eAAe,KAAK,YAAY,IAAI,EAC3Y,EAAkB,KAClB,GAAoB,KACpB,GAAmB,KACnB,GAAoB,IAAIG,EACxB,GAAqB,GAGrB,GAAc,KAEb,GAAiB,IAAI,IACpB,GAAkB,IAAI,IAIzB,GAAoB,KACnB,GAAuB,GAEtB,GAAgB,IAAI,IAAU,GAAiB,IAAI,IACnD,EAAqB,IAAI,IAAQ,GAA8B,KAAW,GAA6B,IAAI,IAE7G,GAAoB,KAAS,GAAuB,GAAO,GAAwB,CAAC,EAAM,GAA2B,GAAS,GAA0B,CAAC,EAAM,GAA6B,CAAC,EAAM,GAAgC,GAAS,GAA+B,CAAC,EAAM,GAA4B,EAAM,GAAyB,EAC3U,GAAoB,GAAM,CAA+B,IAAM,EAA1B,GAAY,QAA+B,qBAAuJ,GAA/H,KAAgC,IAAc,GAA8B,EAAa,GAA6B,MAAM,GAAM,CAAC,GAAc,QAAQ,CAAC,GAAM,KAAK,OAAO,KAAK,GAAG,GAA6B,IAAI,EAAK,IAAI,EAAG,OAAO,GAA6B,IAAI,EAAK,IAAI,EAAG,IAAM,EAAc,EAAK,KAAK,YAAY,EAAM,EAAc,KAAK,IAAI,IAAM,KAAM,EAAa,CAAC,IAAM,EAAU,GAAI,SAAS,GAAI,uBAAuB,GAAK,GAAG,CAAC,GAAI,CAAC,GAAW,CAAC,EAAG,SAAS,SAAS,IAAM,EAAW,EAAG,SAAS,KAAK,CAAC,CAAC,YAAY,EAAE,GAAG,GAAY,EAAc,SAAS,CAAU,EAAE,CAAC,EAAc,EAAG,KAAM,CAAC,CAA2D,OAA1D,GAA6B,IAAI,EAAK,KAAK,CAAa,EAAS,CAAc,EAAQ,OAAsC,CAAC,GAA8B,KAAK,GAA6B,MAAM,CAAE,EAAQ,IAA2B,EAAO,EAAU,EAAM,IAAM,CAAC,IAAM,EAAQ,IAAS,GAAe,KAAe,IAAG,GAAO,OAAO,GAAQ,SAAU,GAAG,CAAC,EAAM,SAAS,GAAK,MAAM,GAAQ,UAAU,GAAG,EAAM,WAAW,EAAI,EAAM,gBAAgB,CAAO,MAAM,CAAC,CAAK,EAAM,EAAQ,CAAK,EAAO,EAAQ,CAAvC,CAAyC,EACvrC,OAA0B,CAAC,IAAM,EAAS,CAAC,EAAG,YAAY,MAAM,aAAa,EAAG,OAAO,UAAU,GAAwB,iBAAlB,iBAAkC,EAAE,GAAG,EAAG,UAAW,IAAI,GAAK,CAAC,EAAI,KAAM,EAAG,UAAW,EAAS,KAAK,GAAG,EAAI,GAAG,EAAG,QAAQ,GAAG,EAAG,OAAO,MAAM,OAAO,GAAG,EAAG,OAAO,UAAU,IAAO,EAAI,IAAM,EAAI,EAAS,KAAK,GAAG,EAAE,GAAG,IAAM,GAA2B,CAAC,IAAM,EAAO,CAAC,EAAyG,GAApG,EAAG,YAAY,EAAG,OAAO,UAAU,IAAO,EAAG,WAAW,SAAS,GAAG,CAAI,EAAE,QAAO,EAAO,KAAK,CAAC,CAAE,CAAC,EAAM,EAAG,cAAe,GAAK,EAAE,KAAM,EAAG,UAAc,EAAG,SAAS,EAAG,OAAO,EAAG,MAAM,SAAS,EAAG,MAAM,SAAS,GAAG,CAAI,EAAE,QAAO,EAAO,KAAK,CAAC,CAAE,CAAC,EAAK,GAAwB,EAAO,GAA2B,CAAI,CAAC,GAA0B,OAAO,EAAE,IAAI,IAAM,KAAQ,GAA4B,EAAK,SAAQ,GAA0B,KAAK,CAAI,EAAG,OAAO,EAA0B,EAAQ,GAAyB,GAAK,CAAC,EAAE,GAAmB,SAAS,GAAiB,SAAS,EAAI,yBAAyB,EAAI,qBAA2B,GAA2B,GAAK,CAAC,IAAM,EAAU,GAAsB,EAAQ,EAAY,EAAI,4BAA4B,CAAC,EAAE,GAAG,CAAC,EAAY,OAAQ,OAAO,GAAyB,CAAG,EAAE,EAAU,CAAC,EAAG,IAAM,EAAS,GAA2B,YAAY,EAAY,KAAK,GAAG,EAAE,GAAG,IAAW,GAAgC,CAAC,IAAM,EAAS,CAAC,EAAE,IAAI,IAAM,KAAQ,EAAU,CAAC,IAAI,EAAI,EAAK,KAAM,GAAK,IAAM,EAAG,OAAO,IAAM,EAAG,OAAO,IAAM,EAAG,YAAW,CAAC,IAAM,EAAK,EAAI,MAAM,cAAc,GAAG,GAAG,GAAG,GAAM,EAAY,KAAK,GAAQ,EAAK,SAAS,CAAM,CAAC,EAAE,CAAC,EAAS,KAAK,CAAI,EAAE,KAAM,CAAC,EAAI,EAAI,MAAO,CAAC,CAAC,GAA6B,EAAS,GAAgC,CAAS,CAAC,GAA+B,OAAO,EAAE,IAAI,IAAM,KAAQ,GAAiC,EAAK,SAAQ,GAA+B,KAAK,CAAI,EAAG,OAAO,EAA+B,EAC/zD,GAAa,GAAG,CAAC,GAAG,CAAC,EAAQ,QAAQ,MAAO,GAAM,IAAM,EAAK,EAAQ,QAAQ,sBAAsB,EAAQ,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,EAAE,QAAc,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,EAAE,QAAyN,OAA9M,IAAI,IAAA,IAAW,IAAI,IAAA,IAA0B,EAAE,EAAK,MAAM,EAAE,EAAK,OAAO,EAAE,EAAK,KAAK,EAAE,EAAK,OAAc,IAAM,EAAe,GAAG,EAAE,EAAK,MAAM,EAAK,MAAM,EAAE,EAAE,EAAe,EAAE,GAAG,EAAE,EAAK,KAAK,EAAK,QAAQ,EAAE,EAAS,GAAK,EAAQ,OAA0B,CAAC,IAAM,EAAI,GAAY,QAAmF,GAAG,EAA3D,EAAI,qBAAqB,EAAI,4BAA4C,CAAC,GAAuB,EAAK,EAAE,MAAO,CAAC,IAAI,EAAG,wBAAwB,GAAG,YAAY,IAAI,EAAE,CAAC,GAAuB,EAAK,EAAE,MAAO,CAAC,GAAuB,CAAC,CAAC,EAAG,qBAAqB,CAAC,CAAC,EAAG,wBAAwB,CAAE,EAAQ,IAAiC,EAAG,IAAI,EAAM,OAAO,CAAC,EAAG,uBAAuB,KAAK,IAAI,EAAG,wBAAwB,EAAE,YAAY,IAAI,EAAE,CAAE,EAAE,EAAG,oBAAoB,GAAM,GAAgB,GAAM,EAAM,EAAI,EAAE,GAAqB,EAAK,EAAK,GAAmB,SAAQ,GAAsB,IAAI,EAAK,EAAQ,UAAS,EAAQ,QAAQ,MAAM,OAAO,GAAY,QAAQ,oBAAoB,OAAO,WAAW,GAAsB,CAAE,EACrrC,GAAkB,GAAU,GAAoB,KAAS,GAA2B,KAAW,IAAiB,EAAO,EAAM,EAAU,KAAQ,CAAqQ,GAAjQ,GAAQ,KAAqB,aAAa,EAAmB,EAAE,GAAoB,KAAK,GAA2B,MAAS,CAAC,GAAQ,GAAW,KAAqB,aAAa,EAAmB,EAAE,GAAoB,KAAK,GAA2B,MAAS,IAAS,GAAkB,OAAO,GAAG,CAAC,GAAQ,CAAC,EAAU,CAAkC,GAAjC,GAA2B,EAAS,GAAoB,OAAO,GAAoB,eAAe,CAAC,GAAoB,KAAK,IAAM,EAAa,GAA2B,GAA2B,KAAK,GAAgB,GAAM,EAAa,EAAI,CAAE,EAAE,EAAE,EAAE,MAAO,CAAC,GAAkB,EAAO,EAAG,yBAAyB,EAAO,GAA+B,EAAG,GAAY,OAAO,EAAE,GAAsB,EAAE,IAAM,EAAQ,EAAO,GAAmB,QAAQ,GAAiB,QAAW,EAAM,IAAU,CAAK,EAAO,IAAU,CAAE,EAAQ,GAAsB,GAAG,CAAC,IAAM,EAAI,GAAY,QAE51B,IAFw2B,EAAG,wBAAwB,GAAG,YAAY,IAAI,GAEpkC,EAAI,4BAA6K,EAA9G,GAAmB,SAAS,GAAiB,SAAS,EAAI,yBAAyB,EAAI,qBAA+C,OAAO,GAAG,CAAC,GAAa,CAAC,EAAE,CAAC,GAAgB,GAAM,EAAE,EAAI,EAAE,MAAO,CAAC,GAAmB,cAAc,EAAe,EAAG,MAAM,EAAE,IAAM,EAAO,GAAsB,EAAE,GAAG,CAAC,EAAO,OAAO,CAAC,GAAgB,GAAM,EAAE,EAAI,EAAE,MAAO,CAAC,IAAM,EAAK,GAAmB,iBAAiB,EAAO,EAAK,EAAE,GAAgB,EAAK,OAAO,EAAE,CAAC,CAAE,EAC/f,GAAoB,GAAK,CAAC,IAAM,EAAI,CAAC,EAA+E,OAA1E,EAAI,OAAO,EAAI,KAAK,CAAG,EAAO,EAAI,SAAS,GAAG,CAAI,EAAE,QAAO,EAAI,KAAK,CAAC,CAAE,CAAC,EAAS,CAAI,EAC/H,GAAkB,GAAa,CAAC,IAAM,EAAI,IAAI,IAA2V,OAAvV,EAAY,QAAQ,GAAG,CAAC,GAAG,CAAC,EAAE,SAAS,OAAO,IAAM,EAAK,MAAM,QAAQ,EAAE,QAAQ,EAAE,EAAE,SAAS,CAAC,EAAE,QAAQ,EAAE,EAAI,IAAI,EAAE,EAAK,IAAI,GAAU,GAAK,UAAqB,EAAI,SAAS,EAAI,UAAU,CAAC,EAAM,EAAI,SAAS,uBAAsB,EAAI,SAAS,qBAAqB,EAAI,SAAS,MAAM,GAAU,EAAI,SAAS,qBAAqB,MAAM,GAAjL,IAAoL,CAAC,CAAE,CAAC,EAAS,CAAI,EACpZ,GAAe,IAAIF,EAAkB,GAAgB,GAAI,CAAC,IAAM,EAAE,EAAG,SAC3E,GAAG,EAAG,cAAc,EAAG,YAAY,CAAC,IAAM,EAAU,GAAe,EAAG,aAAa,SAAS,EAAM,IAAO,CAAK,EAAK,WAA2B,MAAM,QAAQ,EAAK,QAAQ,EAAE,EAAK,SAAS,CAAC,EAAK,QAAQ,EAAA,CAAO,SAAS,EAAI,IAAI,CAAC,GAAG,CAAC,EAAI,SAAS,OAAO,IAAM,EAAK,IAAQ,GAAM,EAAM,EAAU,KAAK,CAAI,CAAC,CAAC,KAAK,EAAG,YAAY,CAAC,EAAQ,EAAU,OAAO,CAAC,CAAC,CAAC,KAAK,EAAG,YAAY,CAAC,EAAG,EAAI,SAAS,KAAK,CAAS,CAAE,CAAC,CAAE,CAAC,CAAE,CACrZ,EAAG,WAAW,EAAG,aAAa,EAAG,OAAM,EAAG,KAAK,MAAM,IAAI,EAAG,YAAY,EAAE,EAAG,UAAU,GAAG,EAAE,EAAG,KAAK,MAAM,IAAI,EAAG,YAAY,EAAE,EAAG,UAAU,GAAG,EAAE,EAAG,KAAK,MAAM,IAAI,EAAG,YAAY,EAAE,EAAG,UAAU,GAAG,GAAM,EAAG,cAAc,EAAG,gBAAgB,EAAG,OAAM,EAAG,KAAK,SAAS,IAAI,EAAG,eAAe,EAAE,EAAG,aAAa,GAAG,EAAE,EAAG,KAAK,SAAS,IAAI,EAAG,eAAe,EAAE,EAAG,aAAa,GAAG,EAAE,EAAG,KAAK,SAAS,IAAI,EAAG,eAAe,EAAE,EAAG,aAAa,GAAG,GAAM,EAAG,cAAc,EAAG,gBAAgB,EAAG,OAAM,EAAG,KAAK,SAAS,IAAI,EAAG,eAAe,EAAE,EAAG,aAAa,GAAG,EAAE,EAAG,KAAK,SAAS,IAAI,EAAG,eAAe,EAAE,EAAG,aAAa,GAAG,EAAE,EAAG,KAAK,SAAS,IAAI,EAAG,eAAe,EAAE,EAAG,aAAa,GAAG,EAAG,EAC1pB,GAAkB,GAAI,CAAK,EAAG,OAAY,EAAG,SAAS,EAAE,GAAgB,CAAE,EAC3E,EAAG,KAAK,mBAAqB,EAAG,cAAa,EAAG,KAAK,SAAS,KAAK,EAAG,YAAY,EAAK,EAAG,cAAa,EAAG,KAAK,SAAS,KAAK,EAAG,YAAY,EAAK,EAAG,WAAU,EAAG,KAAK,MAAM,KAAK,EAAG,SAAS,GAAG,GAAoC,EAAG,IAAI,EAAE,EAAG,KAAK,KAAK,EAAG,OAAO,KAAK,EAAG,aAAa,KAAK,EAAG,aAAa,KAAK,EAAG,aAAa,KAAK,EAAG,UAAU,KAAK,EAAG,YAAY,KAAK,EAAG,eAAe,KAAK,EAAG,eAAe,KAAK,EAAG,YAAY,KAAK,EAAQ,OAAwB,CAAK,EAAW,OAAY,EAAW,SAAS,EAAE,GAAgB,CAAU,EAAE,EAAW,KAAK,KAAK,EAAW,OAAO,KAAK,EAAW,aAAa,KAAK,EAAW,aAAa,KAAK,EAAW,UAAU,KAAK,EAAW,eAAe,KAAK,EAAW,eAAe,KAAK,EAAW,YAAY,KAAK,EAAQ,IAAqB,EAAK,IAAS,CAAC,GAAG,CAAC,GAAM,CAAC,GAAQ,cAAc,GAAQ,UAAU,OAAU,EAAW,MAAM,EAAW,OAAO,GAAM,GAAoB,EAAG,IAAM,EAAQ,GAAiC,EAAK,EAAO,gBAAgB,EAAE,EAAW,KAAK,EAAK,EAAW,OAAO,EAAO,EAAW,SAAS,EAAE,EAAW,OAAO,EAAE,EAAW,aAAa,EAAQ,aAAa,EAAW,aAAa,EAAQ,aAAa,EAAW,UAAU,EAAQ,UAAU,EAAW,eAAe,EAAQ,eAAe,EAAW,eAAe,EAAQ,eAAe,EAAW,YAAY,EAAQ,YAAY,GAAgB,CAAU,CAAE,EAAQ,IAAsB,EAAU,KAAO,CAAC,AAAgE,KAArC,aAAa,CAAsB,EAAyB,MAAS,KAAqB,GAAW,GAA0B,EAAuB,cAAc,KAAK,EAAgB,EACtnD,EAAc,MAAM,EAAc,OAAO,IAAkB,GAAkB,CAAa,EAC3F,EAAc,KAAK,EAAW,KAAK,EAAc,OAAO,EAAW,OAAO,EAAc,SAAS,EAAW,SAAS,EAAc,aAAa,EAAW,aAAa,EAAc,aAAa,EAAW,aAAa,EAAc,aAAa,EAAW,aAAa,EAAc,UAAU,EAAW,UAAU,EAAc,YAAY,EAAW,YAAY,EAAc,eAAe,EAAW,eAAe,EAAc,eAAe,EAAW,eAAe,EAAc,YAAY,EAAW,YACjgB,EAAW,KAAK,KAAK,EAAW,OAAO,KAAK,EAAW,SAAS,EAAE,EAAW,OAAO,EAAE,EAAW,aAAa,KAAK,EAAW,aAAa,KAAK,EAAW,aAAa,KAAK,EAAW,UAAU,KAAK,EAAW,YAAY,KAAK,EAAW,eAAe,KAAK,EAAW,eAAe,KAAK,EAAW,YAAY,MAAM,GAAiB,KAAK,EAAuB,IAAwD,EAAQ,OAAiC,CAAI,CAAC,IAAkB,IAA8B,EAAuB,eAAe,CAAC,EAAuB,KAAK,GAAqB,CAAE,EAAE,EAAE,EAAE,EAAQ,IAAoB,EAAK,IAAS,CAA8F,GAA7F,AAAgE,KAArC,aAAa,CAAsB,EAAyB,MAAS,KAAmB,EAAK,OACpwB,GAAG,EAAc,OAAO,EAAK,CAAC,EAAW,KAAK,EAAc,KAAK,EAAW,OAAO,EAAc,OAAO,EAAW,SAAS,EAAc,SACzI,EAAW,OAAO,EAAE,EAAW,aAAa,EAAc,aAAa,EAAW,aAAa,EAAc,aAAa,EAAW,aAAa,EAAc,aAAa,EAAW,UAAU,EAAc,UAAU,EAAW,YAAY,EAAc,YAAY,EAAW,eAAe,EAAc,eAAe,EAAW,eAAe,EAAc,eAAe,EAAW,YAAY,EAAc,YAAY,EAAc,KAAK,KAAK,EAAc,OAAO,KAAK,EAAc,SAAS,EAAE,EAAc,aAAa,KAAK,EAAc,aAAa,KAAK,EAAc,aAAa,KAAK,EAAc,UAAU,KAAK,EAAc,YAAY,KAAK,EAAc,eAAe,KAAK,EAAc,eAAe,KAAK,EAAc,YAAY,KAAK,GAAiB,EAAK,EAAuB,EAAO,GAA0B,EAAO,cAAc,KAAK,CAAI,EAAE,MAAO,CAAC,GAAqB,EAAE,GAAiB,EAAK,EAAuB,EAAO,GAA0B,EAAO,cAAc,KAAK,CAAI,EAAE,IAAM,EAAY,EAAO,aAAa,YAAY,GAAG,IAAc,OAAO,OAAO,IAAM,EAAY,GAAoB,CAAI,EAI3mC,GAHA,EAAW,KAAK,EAAK,EAAW,OAAO,EAAO,EAAW,SAAS,EAAE,EAAW,OAAO,EACnF,EAAY,OAAO,IAAG,EAAW,aAAa,GAAkB,CAAW,EAAE,EAAW,YAAY,GAAW,EAAO,YAAY,SAAS,EAAE,EAAiC,cAE9K,IAAc,QAAQ,CAAC,EAAW,UAAU,EAAK,MAAM,MAAM,EAAE,IAAM,EAAO,EAAO,YAAY,IAAI,EAAW,YAAY,EAAK,MAAM,MAAM,CAAC,CAAC,eAAe,CAAM,EAAE,EAA8B,SACpM,MAAM,GAAG,IAAc,YAAY,CAAC,IAAM,EAAQ,GAAiC,EAAK,EAAO,gBAAgB,EAAE,EAAW,aAAa,EAAQ,aAAa,EAAW,aAAa,EAAQ,aAAa,EAAW,UAAU,EAAQ,UAAU,EAAW,eAAe,EAAQ,eAAe,EAAW,eAAe,EAAQ,eAAe,EAAW,YAAY,EAAQ,YAAY,EAA8B,SAC7Z,CAAC,EACI,GAAe,GAAG,CAAC,IAAM,EAAI,GAAY,QAAQ,IAAI,EAAG,wBAAwB,GAAG,YAAY,IAAI,EAAE,OAAO,IAAM,EAAsB,EAAI,mBAAmB,GAAG,CAAC,EAAI,4BAA4B,CAAC,EAAG,YAAY,EAAkB,OAAO,GAAG,CAAC,GAAa,CAAC,EAAE,CAAC,GAAgB,GAAM,EAAE,EAAI,EAAE,GAAqB,EAAK,GAAmB,SAAQ,GAAsB,IAAI,EAAK,EAAQ,UAAQ,EAAQ,QAAQ,MAAM,OAAO,EAAI,oBAAoB,OAAO,WAAU,MAAO,CAAC,GAAmB,cAAc,EAAe,EAAG,MAAM,EAAE,IAAM,EAAO,GAA2B,CAAG,EAAE,GAAG,CAAC,EAAO,OAAO,CAAC,GAAgB,GAAM,EAAE,EAAI,EAAE,MAAO,CAAC,IAAM,EAAK,GAAmB,iBAAiB,EAAO,EAAK,EAAsE,GAAjE,GAAyB,CAAG,GAAG,GAAgB,EAAK,OAAO,EAAE,CAAC,EAAM,EAAsB,CAAC,GAAqB,EAAK,GAAmB,SAAQ,GAAsB,IAAI,EAAK,EAAQ,UAAQ,EAAQ,QAAQ,MAAM,OAAO,EAAI,oBAAoB,OAAO,WAAU,MAAO,CAAC,IAAI,EAAiB,GAAM,IAAI,IAAM,KAAO,EAAK,CACt/B,IAAI,EAAI,EAAI,OAAW,EAAO,KAAK,KAAM,GAAK,IAAM,EAAG,OAAO,IAAM,EAAG,OAAO,IAAM,EAAG,YAAW,CAAgE,GAA/D,EAAO,EAAqB,IAAI,CAAG,GAAG,GAAoB,CAAG,EAAK,EAAO,CAAC,IAAM,EAAY,EAAO,UAAU,KAAK,CAAC,EAAE,YAAY,EAAQ,EAAW,IAAqB,IAAI,CAAW,EAAK,IAAY,EAAI,GAAY,KAAM,CAAC,EAAI,EAAI,MAAO,CAAC,GAAG,GAAQ,EAAI,CAAC,EAAiB,GAAK,GAAmB,EAAI,CAAM,EACnZ,EAAQ,UAAY,EAAO,UAAU,EAAQ,QAAQ,MAAM,OAAO,QAAe,EAAO,aAAa,EAAO,YAAqB,EAAQ,QAAQ,MAAM,OAAO,EAAO,aAAa,YACrL,IAAM,GAAa,EAAO,cAAc,GAAA,CAAI,KAAK,EAAE,GAAG,GAAa,EAAQ,QAAQ,CAAC,IAAM,EAAK,EAAQ,QAAQ,sBAAsB,EAAE,GAAsB,CAAC,EAAE,EAAE,QAAQ,EAAK,KAAK,EAAE,EAAE,QAAQ,EAAK,IAAI,KAAK,CAAW,CAAC,CAAE,MAAS,GAAmB,SAAS,GAAsB,IAAI,EAAG,KAAM,CAAC,CAAK,IAAkB,GAA6B,EAAK,GAAmB,SAAQ,GAAsB,IAAI,EAAK,EAAQ,UAAQ,EAAQ,QAAQ,MAAM,OAAO,EAAI,oBAAoB,OAAO,WAAW,EACze,GAAgB,GAAG,CAAC,IAAM,EAAI,GAAY,QAAQ,GAAG,EAAkB,OAE7E,GAAG,GAAqB,CAAC,GAAqB,GAAM,MAAO,CAAC,GAAG,CAAC,GAAa,CAAC,EAAE,OAAO,GAAmB,cAAc,EAAe,EAAG,MAAM,EAAE,IAAM,EAAO,GAAsB,EAAE,GAAG,CAAC,EAAO,OAAO,OAAO,IAAM,EAAK,GAAmB,iBAAiB,EAAO,EAAK,EAAM,KAAK,SAAc,GAAc,UAAU,CAAC,EAAK,GAAC,EAAI,4BAA4B,CAAC,EAAG,aAAkB,IAAI,IAAM,KAAO,EAAK,CAAC,IAAI,EAAI,EAAI,OAAW,EAAO,KAAK,KAAM,GAAK,IAAM,EAAG,OAAO,IAAM,EAAG,OAAO,IAAM,EAAG,YAAW,CAAgE,GAA/D,EAAO,EAAqB,IAAI,CAAG,GAAG,GAAoB,CAAG,EAAK,EAAO,CAAC,IAAM,EAAY,EAAO,UAAU,KAAK,CAAC,EAAE,YAAY,EAAQ,EAAW,IAAqB,IAAI,CAAW,EAAK,IAAY,EAAI,GAAY,KAAM,CAAC,EAAI,EAAI,MAAO,CAAC,GAAG,CAAC,GAAQ,CAAC,EAAI,SAAS,GAA0B,EAAO,cAAc,EAAE,CAAG,EACjzB,IAAM,EAAO,EAAO,aAAa,OAAO,GAAG,IAAS,UAAU,CAAC,IAAM,EAAI,EAAO,UAAU,GAAM,IAAQ,EAAO,eAAe,EAAO,KAAK,EAAI,SAAS,UAAU,EAAO,EAAO,SAAS,KAAK,EAAK,MAAM,GAAG,IAAS,mBAAmB,CACvO,IAAM,GAAY,EAAO,iBAAiB,GAAA,CAAI,KAAK,EAAE,GAAG,EAAW,CAAC,IAAM,EAAO,EAAW,YAAY,EAAQ,EAAU,CAAC,EAAG,UAAU,EAAE,GAAG,EAAG,cAAe,GAAK,EAAE,KAAM,EAAG,UAAc,EAAG,SAAS,EAAG,OAAM,EAAU,KAAK,EAAG,KAAK,EAAI,IAAI,IAAM,KAAQ,EAAW,EAAK,SAAS,GAAG,CAAI,EAAE,MAAM,EAAE,KAAK,YAAY,CAAC,CAAC,SAAS,CAAM,IAAG,EAAE,QAAQ,CAAC,EAAE,QAAS,CAAC,CAAG,KAAM,GAAI,QAAQ,CAAC,EAAI,QAAQ,GAAqB,CAAG,MAAM,GAAG,IAAS,cAAc,CAE/b,IAAM,EAAY,CAAC,EAA2G,GAAtG,EAAI,OAAO,EAAY,KAAK,CAAG,EAAO,EAAI,SAAS,GAAG,CAAI,EAAE,QAAQ,EAAE,UAAS,EAAY,KAAK,CAAC,CAAE,CAAC,EAAK,EAAY,OAAO,EAA6C,GAA1B,EAAI,sBAAoC,EAAY,QAAQ,GAAG,CAAC,GAAiB,CAAC,CAAE,CAAC,EAAE,EAAI,sBAAsB,OAAW,CAAC,IAAM,EAAS,GAAW,EAAO,YAAY,SAAS,EAAE,EAAY,QAAQ,GAAG,CAAC,GAAgB,CAAC,GAAa,MAAM,QAAQ,EAAE,QAAQ,EAAE,EAAE,SAAS,CAAC,EAAE,QAAQ,EAAA,CAAO,QAAQ,GAAK,CAAI,EAAI,OAAM,EAAI,MAAM,KAAK,CAAQ,CAAE,CAAC,CAAE,CAAC,EAAE,EAAI,sBAAsB,EAAK,CAAE,MAAM,GAAG,IAAS,gBAAgB,CAAC,IAAM,GAAU,EAAO,eAAe,GAAA,CAAI,KAAK,EAAE,GAAG,GAAU,EAAG,OAAO,EAAG,YAAY,OAAO,CAAC,IAAM,EAAK,GAAmB,EAAG,WAAW,CAAQ,EAAE,GAAG,EAAK,CAAC,IAAM,EAAe,EAAG,MAAM,eAAe,CAAI,EAAE,GAAG,GAAgB,UAAU,EAAG,AAAuH,EAAe,yBAA7F,EAAG,MAAM,oBAAoB,WAAW,EAAe,qBAAqB,EAAuC,MAAM,EAAe,KAAK,MAAO,CAAC,IAAM,EAAE,EAAG,MAAM,WAAW,CAAI,EAAE,AAA6F,EAAE,yBAAnE,EAAG,MAAM,oBAAoB,WAAW,EAAE,qBAAqB,EAA0B,MAC7oC,IAAM,EAAS,EAAO,eAAe,OAC2B,GADjB,IAAW,UAAU,EAAE,QAAQG,GAAiB,GAAQ,EAAE,EAAE,kBAAkB,IAAe,IAAW,YAAY,EAAE,QAAQC,GAAmB,GAAQ,EAAE,EAAE,kBAAkB,KAAY,EAAE,QAAQC,GAAe,CAAC,EAAE,EAAE,kBAAkB,IACvR,EAAO,iBAAkB,EAAE,UAAU,GAAS,EAAE,UAAU,EAAM,IAAW,QAAQ,EAAO,oBAAoB,CAAC,IAAM,EAAW,GAAK,CAAI,GAAK,SAAS,IAAS,EAAG,MAAM,oBAAoB,WAAW,CAAU,EAAE,EAAE,sBAAsB,KAAK,GAA0B,EAAO,sBAAsB,EAAE,CAAG,EAAE,EAAE,EAAG,MAAM,iBAAiB,WAAW,CAAU,EAAE,EAAE,sBAAsB,CAAW,CAAC,EAAE,MAAM,EAAK,EAAO,mBAAkB,EAAE,KAAK,EAAK,UAAU,EAAE,KAAK,CAAE,CAAC,CAAC,CAAC,CAAC,KACld,CAAC,EACK,GAAa,IAAIH,EAAoB,GAAc,IAAIA,EAAoB,GAAsB,GAAG,CAAC,IAAM,EAAI,GAAY,QAAc,EAAc,GAAqB,EAAE,CAAG,EAAQ,EAA4B,GAAe,EAAI,qBAAqB,CAAC,EAAI,6BAA6B,GAAG,CAAC,EAAG,WAAW,OAAO,GAAG,EAA4B,CAAC,GAAgB,GAAM,EAAE,EAAI,EAAE,MAAO,CAAC,GAAG,CAAC,GAAa,CAAC,EAAE,CAAI,GAAc,GAAgB,GAAM,EAAE,EAAI,EAAE,MAAO,CAAC,GAAmB,cAAc,EAAe,EAAG,MAAM,EAAE,IAAM,EAAO,GAAsB,EAAQ,EAAK,GAAmB,iBAAiB,EAAO,EAAK,EAAE,GAAG,GAAc,GAAgB,EAAK,OAAO,EAAE,CAAC,EAAM,EAAI,2BAAkC,KAAI,IAAM,KAAO,EAAK,CAAC,IAAI,EAAI,EAAI,OAAW,EAAO,KAAK,KAAM,GAAK,IAAM,EAAG,OAAO,IAAM,EAAG,OAAO,IAAM,EAAG,YAAW,CAAgE,GAA/D,EAAO,EAAqB,IAAI,CAAG,GAAG,GAAoB,CAAG,EAAK,EAAO,CAAC,IAAM,EAAY,EAAO,UAAU,KAAK,CAAC,EAAE,YAAY,EAAQ,EAAW,IAAqB,IAAI,CAAW,EAAK,IAAY,EAAI,GAAY,KAAM,CAAC,EAAI,EAAI,MAAO,CAAC,GAAG,GAAQ,EAAI,CAAC,GAAoB,EAAI,CAAM,EAAE,KAAM,CAAC,CAAC,GAAG,EAAe,IAAI,IAAM,KAAO,EAAK,CAAC,IAAI,EAAI,EAAI,OAAW,EAAO,KAAK,KAAM,GAAK,IAAM,EAAG,OAAO,IAAM,EAAG,OAAO,IAAM,EAAG,YAAW,CAAgE,GAA/D,EAAO,EAAqB,IAAI,CAAG,GAAG,GAAoB,CAAG,EAAK,EAAO,CAAC,IAAM,EAAY,EAAO,UAAU,KAAK,CAAC,EAAE,YAAY,EAAQ,EAAW,IAAqB,IAAI,CAAW,EAAK,IAAY,EAAI,GAAY,KAAM,CAAC,EAAI,EAAI,MAAO,CAAC,GAAG,GAAQ,EAAI,CAAC,GAAmB,EAAI,CAAM,EAAE,KAAM,CAAC,CAAE,IAAI,IAAM,KAAO,EAAK,CAAC,IAAI,EAAI,EAAI,OAAW,EAAO,KAAK,KAAM,GAAK,IAAM,EAAG,OAAO,IAAM,EAAG,OAAO,IAAM,EAAG,YAAW,CAAgE,GAA/D,EAAO,EAAqB,IAAI,CAAG,GAAG,GAAoB,CAAG,EAAK,EAAO,CAAC,IAAM,EAAY,EAAO,UAAU,KAAK,CAAC,EAAE,YAAY,EAAQ,EAAW,IAAqB,IAAI,CAAW,EAAK,IAAY,EAAI,GAAY,KAAM,CAAC,EAAI,EAAI,MAAO,CAAC,GAAG,CAAC,GAAQ,CAAC,EAAO,WAAW,CAAC,EAAI,SAAS,EAAE,iBAAiB,EAAE,EAAE,kBAAkB,EAAE,EAAkB,EAAI,GAAoB,EAAO,GAA0B,EAAO,cAAc,EAAE,CAAG,EACnkE,IAAe,GAAc,OAAO,IAAK,GAAc,MAC1D,AAAyB,EAAI,mBAAiB,EAAI,SAAS,MAAM,EACjE,IAAM,EAAU,EAAO,WAAW,KAAQ,IAAY,KAAK,GAAU,IAAI,EAAE,EAAE,CAAC,EAAU,IAAY,KAAK,GAAU,IAAI,EAAE,EAAE,CAAC,EAAU,IAAY,UAClJ,EAAG,OAAO,kBAAkB,EAAS,EAAE,GAAU,OAAO,GAAQ,GAAU,IAAI,EAAE,EAAE,CAAC,EAClF,GAAmB,IAAII,GAAY,GAAmB,8BAA8B,GAAU,EAAI,QAAQ,EAC3G,GAAmB,IAAI,eAAe,GAAmB,EAAY,EAAE,GAAoB,KAAK,EAAY,CAAC,CAAC,IAAI,EAAI,QAAQ,EAC9H,EAAS,QAAQ,GAAS,EAAQ,UAAQ,EAAQ,QAAQ,MAAM,OAAO,YAAW,KAAM,CAPkhC,CAOjhC,EAAQ,GAAsB,GAAG,CAAI,MAAC,GAAmB,CAAC,KAA8B,GAAa,CAAC,IAAS,GAAmB,cAAc,EAAe,EAAG,MAAM,EAAK,GAAmB,IAAI,eAAe,GAAmB,EAAa,GAAE,CAAC,GAAc,IAAI,EAAmB,EACpX,IAAM,EAAW,IAAqB,gBAAgB,EAAK,EAAW,GAAG,EAAkB,kBAA6B,GAAc,WAAW,EAAkB,gBAAwB,EAAE,GAAY,GAAc,IAAI,EAAkB,gBAAgB,CAAC,CAAC,UAAU,CAAC,CAAC,eAAe,CAAU,CAAC,CAAC,IAAI,EAAkB,gBAAgB,EAAI,EAAkB,SAAS,KAAK,EAAa,CAAE,CAAC,EAAQ,GAAoB,GAAG,CAAC,IAAM,EAAI,GAAY,QAAoH,GAA5G,GAAoB,EAAK,GAAqB,EAAE,CAAG,IAAG,GAAgB,GAAM,EAAE,EAAI,EAAE,GAAqB,GAAM,CAAC,EAAkB,OAAO,IAAM,EAAY,EAAwB,EAAc,GAC/nB,GAAqB,GAClB,IAAqB,cAAc,EAAkB,mBAAkB,GAAc,CAAC,KAAK,EAAkB,UAAU,EAAkB,iBAAiB,MAAM,CAAC,GACpK,EAAS,QAAQ,EAAI,oBAAuB,EAAQ,UAAQ,EAAQ,QAAQ,MAAM,OAAO,EAAI,oBAAoB,OAAO,WAAU,GAA0B,EAAc,YAAY,EAAE,CAAW,EAAE,EAAkB,KAAK,GAAoB,KAAK,GAAmB,IAAK,EAAQ,GAA2B,GAAG,CAAC,IAAM,EAAI,GAAY,QAAuI,IAA3H,EAAG,wBAAwB,GAAG,YAAY,IAAI,GAAY,CAAC,EAAI,qBAAqB,CAAC,EAAI,4BAAqC,CAAC,GAAa,CAAC,EAAE,OAAO,GAAmB,cAAc,EAAe,EAAG,MAAM,EAAE,IAAM,EAAO,GAAsB,EAAM,EAAO,QAAyB,GAAmB,iBAAiB,EAAO,EAAc,CAAC,CAAC,SAAc,EAAG,oBAAoB,GAAK,GAAsB,EAAE,EAAQ,OAA6B,CAAC,EAAG,oBAAoB,GAAM,GAAsB,CAAE,EAAM,GAAmB,EAAM,GAAqB,KAAW,GAAyB,GAAG,CACn6B,IAAI,EAAG,wBAAwB,GAAG,YAAY,IAAI,EAAE,OAAO,IAAM,EAAI,YAAY,IAAI,EAAK,EAAI,GAAyB,KAAU,GAAyB,EAAI,GAAqB,EAAK,MAA0B,GAAmB,0BAA0B,CAAC,GAAmB,EAAE,IAAM,EAAI,GAAqB,GAAqB,KAAQ,GAAI,GAAsB,CAAG,CAAE,CAAC,GAAE,EAAM,GAAiB,EAAM,GAAmB,KAAW,GAAkB,GAAG,CACnc,IAAI,EAAG,wBAAwB,GAAG,YAAY,IAAI,EAAE,OAAO,IAAM,EAAI,YAAY,IAAI,EAAQ,EAAS,GAAiB,GAAG,GAAM,EAAI,GAA4B,IAAgB,GAA4B,EAAI,GAAmB,EAAK,MAAwB,GAAiB,0BAA0B,CAAC,GAAiB,EAAE,IAAM,EAAI,GAAmB,GAAmB,KAAQ,GAAI,GAAe,CAAG,CAAE,CAAC,GAAE,EAAM,GAAwB,EAAM,GAA0B,KAAW,GAAyB,GAAG,CAAI,GAAqB,EAAE,GAAY,OAAO,GAAG,CAAC,IAA2B,GAA0B,EAAK,MAA+B,GAAwB,0BAA0B,CAAC,GAAwB,EAAE,IAAM,EAAI,GAA0B,GAA0B,KAAQ,GAAI,GAAsB,CAAG,CAAE,CAAC,GAAE,EAAQ,GAAc,GAAG,CAAC,IAAM,EAAI,GAAY,QAAQ,GAAgC,IAAI,CAAC,GAAK,EAAI,uBAAuB,CAAC,EAAI,aAEz7B,EAAE,2BAA2B,CAAG,EAAQ,OAAmC,CAAC,GAAgC,IAAI,IAAI,CAAE,EACtH,SAAS,iBAAiB,YAAY,EAAwB,EAAE,SAAS,iBAAiB,YAAY,EAAiB,EAAE,EAAO,iBAAiB,SAAS,GAA+B,CAAC,QAAQ,EAAI,CAAC,EAAE,EAAO,iBAAiB,QAAQ,GAAc,CAAC,QAAQ,GAAK,QAAQ,EAAI,CAAC,EAAE,EAAO,iBAAiB,cAAc,EAA0B,EAAE,SAAS,iBAAiB,QAAQ,EAAe,EAAE,EAAO,iBAAiB,cAAc,EAAqB,EAAE,SAAS,iBAAiB,cAAc,EAAwB,EAAE,SAAS,iBAAiB,YAAY,EAAmB,EAAE,SAAS,iBAAiB,YAAY,EAAwB,EAAE,SAAS,iBAAiB,gBAAgB,EAAmB,EAAE,SAAS,iBAAiB,gBAAgB,EAAwB,EACpwB,EAAO,iBAAiB,aAAa,GAAsB,CAAC,QAAQ,EAAK,CAAC,EAAE,SAAS,iBAAiB,YAAY,GAAyB,CAAC,QAAQ,EAAI,CAAC,EAAE,SAAS,iBAAiB,WAAW,EAAmB,EAAE,SAAS,iBAAiB,WAAW,EAAwB,EAAE,IAAI,GAAU,EAAM,GAAc,KAAW,IAAQ,EAAM,KAAQ,CAAC,GAAG,CAAC,EAAQ,QAAQ,OAE5W,IAAM,EAAE,EAAQ,QAAQ,YAAkB,EAAE,EAAQ,QAAQ,aAAa,GAAG,CAAC,GAAG,CAAC,EAAE,OAAO,IAAM,EAAa,GAAY,QAAc,EAAG,GAAS,QAAQ,GAAG,CAAC,EAAG,OAAO,IAAM,EAAQ,GAA2B,EAAE,EAAE,CAAY,EAAQ,EAAI,EAAQ,IAAU,EAAW,KAAK,IAAI,GAAG,EAAG,iBAAiB,EAAE,GAAG,GAAG,KAAK,IAAI,GAAG,EAAG,iBAAiB,EAAE,GAAG,EAAQ,EAAU,KAAK,IAAI,GAAK,EAAG,gBAAgB,EAAE,GAAG,IAAO,MAAC,GAAO,GAAY,GAC3L,IAAhP,EAAS,QAAQ,EAAE,EAAE,EAAK,EAAE,EAAS,cAAc,CAAG,EAAK,GAAoB,CAAY,EAAG,GAAqB,EAAa,EAAE,CAAC,EAAQ,GAAsB,EAAM,GAAW,UAAW,SAAW,EAAU,SAAS,OAAU,MAAM,EAAE,GAAM,EAAO,qBAAqB,CAAC,IAAM,EAAO,EAAE,EAAE,EAAO,KAAK,IAAgB,EAAO,EAAE,EAAO,MAAA,GAAqB,EAAO,EAAE,EAAO,IAAA,GAAmB,EAAE,EAAO,OAAO,IAAgB,CAAE,KAAM,GAAO,OAAO,EAAE,EAC9P,GADiQ,EAAO,uBAAuB,EAAE,IAAM,UAAU,YAAY,OAAO,MAAM,EAAE,EAAQ,YAAY,EAAE,EAAQ,YAAY,EACrjB,EAAG,eAAe,EAAI,EAAG,sBAAsB,EAAQ,YAAY,EAAG,uBAAuB,EAAQ,aAAa,EAAG,gBAAgB,EAAE,EAAG,gBAAgB,EAAE,EAAG,cAAc,YAAY,IAAI,EAAK,EAAG,MAAM,CAAC,IAAM,EAAI,GAAY,QAAQ,EAAG,MAAM,MAAM,UAAU,EAAG,cAAc,EAAE,EAAG,MAAM,SAAS,IAAI,EAAE,EAAE,CAAC,EAAE,GAAS,KAAK,GAA4B,EAAG,KAAK,CAAC,EAAE,EAAS,OAAO,IAAI,EAAE,EAAE,CAAC,EAAE,EAAS,OAAO,EAAE,IAAM,EAAS,GAAS,QAAQ,EAAS,EAAE,EAAG,SAAS,GAAiB,EAAO,CAAQ,EAAE,IAAM,EAAG,KAAK,IAAI,IAAI,EAAI,YAAY,CAAC,EAAE,EAAG,MAAM,MAAM,UAAU,EAAG,eAAe,EAAG,SAAS,CAAE,EAAE,GAAoB,EAAG,CAAG,CAAE,CADjL,CACkL,EAAQ,IAAgB,EAAM,KAAQ,CAAC,GAAuB,CAAE,EAAE,AAA8C,MAAhC,qBAAqB,EAAS,EAAY,GAAG,AAA8C,MAA5B,aAAa,EAAa,EAAgB,MAAM,IAAM,MAAQ,CAAC,GAAU,EAAE,GAAO,CAAK,CAAE,EAAQ,EAAM,GAAS,QAA0C,EAAxB,YAAY,IAAwB,GAAG,GAAO,eAAe,GAE77B,GAAG,GAAO,EAAU,IAAI,CAAC,GAAU,sBAAsB,CAAG,EAAE,MAAO,CAAC,GAAc,eAAe,CAAC,GAAc,KAAK,GAAU,sBAAsB,CAAG,CAAE,EAAE,GAAG,CAAE,EAAE,EAAG,gBAAgB,GAAe,IAAM,GAAG,IAAI,mBAAmB,CAAC,GAAuB,CAAE,EAAE,GAAe,EAAK,CAAE,CAAC,EAAK,EAAQ,SAAQ,GAAG,QAAQ,EAAQ,OAAO,EAAE,GAAO,EAAI,EACtV,IAAM,GAAoB,CAAC,eAAe,GAAe,EAAI,EAAE,GAAG,EAAE,eAAe,GAAe,EAAI,EAAE,GAAG,CAAC,EAAQ,OAAuB,CAAC,EAAG,aAAa,CAAC,SAAS,OACtK,GAAM,MAAM,CAAE,EAAE,SAAS,iBAAiB,mBAAmB,EAAkB,EAAE,IAAM,OAAyB,CAAC,GAAuB,CAAE,CAAE,EAAE,EAAO,iBAAiB,SAAS,GAAqB,CAAC,QAAQ,EAAI,CAAC,EAAE,EAAO,iBAAiB,SAAS,GAAqB,CAAC,QAAQ,EAAI,CAAC,EAGxR,SAAS,iBAAiB,SAAS,GAAqB,CAAC,QAAQ,GAAK,QAAQ,EAAI,CAAC,EAAE,IAAM,GAAU,IAAS,OAAkC,KAAtB,EAAO,eAAoB,IAAI,iBAAiB,SAAS,GAAqB,CAAC,QAAQ,EAAI,CAAC,EAAE,IAAI,iBAAiB,SAAS,GAAqB,CAAC,QAAQ,EAAI,CAAC,EAGzR,IAAM,OAA2B,CAAI,EAAG,wBAAwB,MAAO,EAAG,uBAAuB,MAAM,EAAQ,EAAG,uBAAuB,IAAI,GAAK,EAAE,EAAO,iBAAiB,YAAY,GAAuB,CAAC,QAAQ,GAAK,QAAQ,EAAK,CAAC,EAAE,IAAI,GAAG,KAAQ,OAAO,qBAAuB,KAAa,EAAQ,UAAS,GAAG,IAAI,sBAAsB,CAAC,KAAS,CAAC,IAAM,EAAM,GAAO,mBAAmB,EAAE,EAAG,kBAAkB,CAAC,CAAC,GAAO,gBAAgB,EAAM,EAAE,GAAkB,OAAO,EAAG,SAAS,CAAK,CAAE,EAAE,CAAC,UAAU,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,QAAQ,EAAQ,OAAO,GACpiB,IAAM,OAAS,CAAC,GAAO,QAAQ,sBAAsB,EAAI,EAAE,IAAM,EAAI,GAAY,QAAuD,EAA7B,GAAoD,IAAI,UAAU,EAAI,mBAAuB,EAAa,KAAQ,EAAI,iBAAkB,EAAa,GAAkB,EAAG,EAAI,EAAQ,OAAO,GAAW,EAAG,QAAQ,EAAG,YAAW,GAAoB,CAAE,EAIlW,IAAM,EAAY,CAAC,CAAC,EAAG,mBAKvB,GAAG,EAAG,2BAA2B,CAAC,EAAG,kBAAkB,CAAC,EAAG,kBAAkB,GAAK,qBAAqB,GAAO,OAAO,EAAE,GAAO,QAAQ,EACtI,eAAe,CAAC,GAAsB,EAAK,EAAE,EAAG,kBAAkB,EAAM,EAAE,CAAC,EAAE,MAAO,CAA0J,GAAvI,GAAa,EAAI,kBAAkB,EAAI,wBAAwB,CAAC,EAAG,cAAc,EAAI,2BAA2B,CAAC,EAAG,mBAAkC,CAC7P,GAAM,MAAM,EAAE,EAAG,eAAe,EAAE,MAAO,CAAC,IAAM,EAAS,YAAY,IAAI,EAAQ,EAAa,EAAU,EAAU,EAAI,EAAG,mBAAmB,EAAI,eAAe,QAAQ,GAAG,EAAE,IAAM,EAAG,EAAa,EAAE,KAAK,IAAI,IAAI,GAAM,SAAS,CAAC,EAAE,GAAc,QAAQ,EACtP,EAAG,cAAc,IAAK,EAAG,YAAY,EAAI,EAAG,mBAAmB,IAAM,EAAG,OAAO,EAAG,wBAAwB,UAAU,GAAG,EAAG,iBAAiB,GAAG,GAAmB,EAAI,uBAAuB,EAAI,iBAAiB,EAAI,aAAa,EAAI,iBAAiB,EAAI,mBAAmB,OAAO,GAAG,EAAI,kBAAkB,KAAG,EAAG,mBAAmB,GAAG,EAAG,qBAAqB,IAAM,EAAe,EAAG,oBAAoB,GAAS,EAAQ,GAAM,YAAkB,EAAmB,GAAuB,EAAG,EAAU,EAAQ,QAAQ,CAAQ,EAAQ,EAA0B,GAAkC,EAAG,EAAU,EAAQ,QAAQ,CAAQ,EAAQ,EAA8B,CAAC,CAAC,EAAI,+BAAqC,EAA8B,EAAG,8BAA8B,EAAG,iCAAiC,GAA+B,EAAG,mCAAmC,EAAI,yBAAyB,EAAG,mCAAmC,EAAI,yBAAyB,EAAG,mCAAmC,EAAI,yBAAyB,EAAG,+BAA+B,EAAI,qBAAqB,EAAG,mCAAmC,EAAI,uBAAuB,EAAG,mCAAmC,EAAI,uBAAuB,EAAG,mCAAmC,EAAI,uBAA0B,GAAU,IAA+B,EAAG,6BAA6B,EAA8B,EAAS,IAAI,GAAG,EAAG,4BAA4B,GAAK,EAAG,+BAA+B,EAA8B,EAAG,iCAAiC,EAAI,wBAAwB,EAAG,iCAAiC,EAAI,wBAAwB,EAAG,iCAAiC,EAAI,wBAAwB,EAAG,6BAA6B,EAAI,oBAAoB,EAAG,iCAAiC,EAAI,sBAAsB,EAAG,iCAAiC,EAAI,sBAAsB,EAAG,iCAAiC,EAAI,sBAAsB,IAAI,EAAsB,EAA0B,GAAG,GAAU,IAAgC,EAAG,8BAA8B,GAAG,EAAS,CAAC,IAAM,EAAc,AAAmC,EAAG,gCAA8B,CAAC,EAAE,EAAE,EAAE,EAAE,OAAO,GAAK,OAAO,GAAK,SAAS,CAAC,EAAG,EAAc,EAAE,EAA0B,EAAE,EAAc,EAAE,EAA0B,EAAE,EAAc,OAAO,GAAK,EAAc,OAAO,EAA0B,OAAO,EAAc,SAAS,EAAE,EAAsB,CAAc,CAAuL,GAAtL,AAA8I,EAAG,oCAAtG,GAAoB,CAAY,GAAG,GAAuB,EAAG,EAAa,GAAU,QAAQ,EAAI,EAAuC,IAAO,EAAG,MAAM,CAAC,IAAM,EAAqB,GAAiB,CAAY,EAAQ,EAAsB,CAAC,CAAC,EAAG,sBAAyB,IAAuB,EAAG,wBAAuB,EAAG,sBAAsB,EAAwB,GAAuB,GAA0B,CAAY,GAAG,GAAoB,CAAY,GAAG,GAAuB,EAAG,EAAa,GAAU,QAAQ,EAAI,EAAI,CAA4E,GAA3E,GAAwB,EAAG,EAAa,EAAQ,QAAQ,GAAU,OAAO,EAAK,EAAI,kBAAkB,GAAU,EAAG,cAAc,GAAG,IAAI,CAAC,IAAM,EAAI,EAAG,EAAE,KAAK,MAAM,EAAE,CAAE,EAAE,EAAE,QAAQ,IAAI,mBAAmB,CAAC,MAAI,IAAI,OAAO,EAAS,cAAc,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,QAAQ,EAAG,uBAAuB,IAAI,EAAG,wBAAwB,GAAG,KAAK,GAAG,EAAG,uBAAuB,EAAE,GAAG,EAAG,wBAAwB,IAAI,MAAM,EAAS,KAAK,OAAO,MAAM,UAAU,EAAS,KAAK,OAAO,UAAU,WAAW,EAAS,KAAK,OAAO,WAAW,SAAS,EAAS,KAAK,OAAO,QAAQ,CAAC,EAAE,EAAG,aAAa,CAAS,CAChhH,EAAa,uBAAuB,EAAG,MAAM,WAAW,KAAK,EAAS,cAAc,EAAE,CAAC,IAAW,EAAa,kBAAkB,EAAG,cAAa,EAAG,cAAc,GAAW,EAAa,eAAe,EAAE,EAAG,YAAY,EAAa,iBAAiB,EAAG,MAAM,WAAW,EAAG,cAIlR,EAAS,cAAc,EAAG,cAAc,CAAC,GACtC,EAAG,MAAM,cAAa,EAAG,MAAM,qBAAqB,EAAa,kBAAkB,EAAa,qBAAqB,EAAK,EAAa,2BAA2B,CAAC,EAAa,uBAAuB,EAAa,kBAAkB,SAAQ,EAAG,MAAM,WAAW,EAAG,SACxQ,IAAM,GAAwB,EAAG,wBAAwB,GAAG,GAAU,CAAC,EAAwB,EAAwB,EAAa,qBAAqB,CAAC,EAC1J,GADoL,EAAS,UAAU,IAAwB,EAAS,QAAQ,GAA2B,EAAS,eAAe,EAAa,sBAAoB,EAAS,aAAa,EAAa,qBAAuB,EAAS,aAAa,EAAa,aAAW,EAAS,WAAW,EAAa,YAAW,AAAuB,EAAS,aAAW,GAAS,EAAS,kBAAkB,EAAa,kBAAgB,EAAS,gBAAgB,EAAa,iBAAgB,EAAS,OAAO,EACvoB,EAAG,MAAM,CAAC,IAAM,EAAa,EAAa,aAAa,EAAG,eAAqB,EAAc,EAAa,eAAe,EAAG,aAAa,EAAa,eAAe,EAAG,aAAa,EAAa,eAAe,EAAG,YAAkB,EAAW,EAAa,iBAAiB,EAAG,UAAU,EAAa,iBAAiB,EAAG,UAAU,EAAa,iBAAiB,EAAG,SAAS,GAAG,GAAc,GAAe,EAAW,CAE/Z,GAAG,CAAC,EAAa,sBAAsB,CAAC,IAAM,EAAG,KAAK,IAAI,IAAI,EAAa,YAAY,CAAC,EAAE,EAAG,MAAM,MAAM,UAAU,EAAG,eAAe,EAAG,SAAS,CAAE,EAAE,GAAoB,EAAG,CAAY,CAAE,CAAC,EAAG,eAAe,EAAa,WAAW,EAAG,YAAY,EAAa,aAAa,EAAG,YAAY,EAAa,aAAa,EAAG,YAAY,EAAa,aAAa,EAAG,SAAS,EAAa,eAAe,EAAG,SAAS,EAAa,eAAe,EAAG,SAAS,EAAa,cAAe,CAAC,CAGzd,GAAG,EAAG,MAAM,CAAC,IAAM,EAAG,EAAa,iBAKnC,GALuE,IAAK,EAAG,iBAAyD,EAAa,gBAAgB,EAAG,kBAAkB,EAAa,WAAW,EAAG,YAA+C,EAAa,4BAA4B,GAAG,IAAe,KAC5T,EAAG,iBAAiB,GAAyB,CAAE,EAAG,GAAyB,EAAG,EAAa,EAAS,EAAM,CAAE,EAAE,EAAG,kBAAkB,EAAE,EAAG,oBAAoB,KAAK,EAAG,mBAAmB,KAAK,EAAG,aAAa,IAAe,EAAG,oBAAoB,GACrP,EAAG,kBAAkB,IAAI,EAAG,oBAAoB,EAAG,EAAG,mBAAmB,CAAC,GAAG,CAAY,EAAE,EAAG,aAAa,IAAe,IAAK,EAAG,sBAC/H,EAAG,kBAAkB,IACrB,CAAC,EAAG,cAAc,EAAG,oBAAoB,GAAyB,CAAE,EAAE,GAAyB,EAAG,EAAG,mBAAmB,EAAS,EAAM,EAAG,mBAAmB,GAAQ,GAAkB,EAAG,EAAE,EAAI,EAAG,EAAG,kBAAkB,IAAI,EAAG,oBAAoB,EAAG,EAAG,mBAAmB,CAAC,GAAG,CAAY,EAAE,EAAG,aAAa,KAAY,EAAG,oBAAoB,EAAG,EAAG,mBAAmB,CAAC,GAAG,CAAY,EAAE,EAAG,aAAa,MAC5Y,EAAG,kBAAkB,EAAE,CAA0E,IAAM,EAAU,EAA1E,KAAK,IAAI,IAAI,EAAa,4BAA4B,EAA6B,EAAE,EAAG,mBAAmB,EAAG,EAExJ,IAAM,EAAQ,IAAU,EAAM,IAAI,GAAG,EAAG,kBAAkB,EAAQ,CAClE,IAAM,EAAE,EAAG,kBAAkB,EAAc,EAAO,GAAO,EAAE,IAAQ,EAAE,GAAc,CAAC,GAAG,GAAkB,EAAG,CAAM,CAAE,KAAK,CACzH,GAAG,CAAC,EAAG,aAAa,CAAC,IAAM,EAAG,EAAG,mBAEjC,GAAyB,CAAE,EAC3B,GAAyB,EAAG,EAAG,EAAS,EAAM,EAAG,mBAAmB,EAAE,EAAG,aAAa,GACtF,GAAkB,EAAG,EAAM,EAAI,CAAE,CAAC,GAAG,EAAG,mBAAmB,EAC3D,GAAkB,EAAG,EAAE,EAAI,EAAE,EAAG,kBAAkB,EAAE,EAAG,oBAAoB,KAAK,EAAG,mBAAmB,KAAK,EAAG,aAAa,OAAW,CACtI,IAAM,GAAG,EAAG,kBAAkB,IAAU,EAAE,GAAe,EAAM,GAAG,EAAE,IAAI,EAAE,GACnE,EAAO,GAAO,EAAE,GAAO,EAAM,GAAkB,EAAG,CAAM,CAAE,CAAC,CAAC,CAAC,CAIpE,GAFG,EAAG,OAAO,EAAG,oBAAoB,GAAG,EAAG,iBAAiB,GAAkB,EAAG,EAAE,EAAI,EAEnF,EAAa,wBAAwB,EAAG,OAAO,EAAG,kBAAkB,CACvE,IAAM,EAAO,EAAU,YAAY,EAAQ,EAAM,EAAU,cAAc,EAAQ,EAAM,EAAU,cAAc,EAAQ,EAAM,EAAU,cAAc,EAAQ,EAAM,EAAU,gBAAgB,EAAQ,EAAM,EAAU,gBAAgB,EAAQ,EAAM,EAAU,gBAAgB,EAAQ,EAAM,EAAU,iBAAiB,GAAS,EAAM,EAAU,iBAAiB,EAAQ,EAAM,EAAU,iBAAiB,GACtY,EAAG,gBAAgB,IAAA,KAAW,EAAG,cAAc,EAAO,EAAG,aAAa,EAAM,EAAG,aAAa,EAAM,EAAG,aAAa,EAAM,EAAG,aAAa,EAAM,EAAG,aAAa,EAAM,EAAG,aAAa,EAAM,EAAG,aAAa,EAAM,EAAG,aAAa,EAAM,EAAG,aAAa,GACzP,IAAM,EAAW,EAAa,iBAAiB,IAAI,EAAG,gBAAgB,EAAO,EAAG,eAAe,EAAW,EAAG,eAAe,EAAM,EAAG,cAAc,EAAW,EAAG,eAAe,EAAM,EAAG,cAAc,EAAW,EAAG,eAAe,EAAM,EAAG,cAAc,EAAW,EAAG,eAAe,EAAM,EAAG,cAAc,EAAW,EAAG,eAAe,EAAM,EAAG,cAAc,EAAW,EAAG,eAAe,EAAM,EAAG,cAAc,EAAW,EAAG,eAAe,EAAM,EAAG,cAAc,EAAW,EAAG,eAAe,EAAM,EAAG,cAAc,EAAW,EAAG,eAAe,EAAM,EAAG,cAAc,EAEnjB,IAAM,EAAe,CAAC,EAAK,EAAG,OAAM,EAAe,KAAK,EAAG,KAAK,EAAK,EAAG,kBAAiB,EAAe,KAAK,EAAG,gBAAgB,EAAE,IAAI,IAAM,KAAe,EAAe,CACrC,IAAM,GAAtH,EAAY,sBAAsB,EAAG,iBAAmC,EAAY,gBAAgB,EAAG,UAA2D,KAAK,IAAI,IAAI,EAAG,aAAa,EAAE,EAAY,MAAM,UAAU,CAAc,EAChQ,AAA8B,EAAY,eAAa,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAG,IAAM,EAAM,EAAY,aAC7H,GAAG,EAAM,YAAY,EAAe,CAAC,EAAY,SAAS,IAAI,EAAE,EAAE,CAAC,EAAE,EAAY,SAAS,IAAI,EAAE,EAAE,CAAC,EAAE,GAAS,KAAK,GAA4B,CAAW,CAAC,EAAE,IAAM,EAAE,GAAS,UAAU,EAAS,EACjM,GADmM,EAAM,QAAQ,EAAE,EAAE,EAAM,QAAQ,EAAE,EAAE,EAAM,QAAQ,EAAE,EAAE,EAAM,UAAU,EACtQ,IAAc,EAAG,OAAO,EAAG,QAAQ,EAAG,SAAS,CAAC,IAAM,EAAG,GAAS,QAAQ,EAAS,EAAE,EAAG,OAAO,SAAS,EAAE,GAAS,IAAI,EAAE,KAAK,EAAG,YAAY,EAAG,OAAO,SAAS,EAAE,EAAG,YAAY,EAAG,OAAO,SAAS,EAAE,IAAM,EAAK,KAAK,IAAI,EAAG,EAAE,EAAG,EAAE,EAAG,CAAC,EAAE,IAAI,EAAG,SAAS,OAAO,OAAO,KAAK,CAAC,EAAK,EAAG,SAAS,OAAO,OAAO,MAAM,EAAK,EAAG,SAAS,OAAO,OAAO,IAAI,EAAK,EAAG,SAAS,OAAO,OAAO,OAAO,CAAC,EAAK,EAAG,SAAS,OAAO,OAAO,uBAAuB,CAAE,CAAC,CAAC,EAAY,SAAS,IAAI,CAAC,EAAM,QAAQ,EAAG,aAAa,CAAC,EAAM,QAAQ,EAAG,aAAa,CAAC,EAAM,QAAQ,EAAG,YAAY,EAAK,IAAc,EAAG,QAAO,EAAG,WAAW,EAAY,SAAS,GAAG,EAAY,SAAS,IAAI,EAAG,aAAa,GAAS,EAAG,aAAa,GAAS,EAAG,aAAa,EAAQ,EACltB,IAAc,EAAG,QAAO,EAAG,cAAc,EAAY,SAAS,EAAE,EAAG,cAAc,EAAY,SAAS,EAAE,EAAG,cAAc,EAAY,SAAS,GAC9I,IAAc,EAAG,OAAO,EAAa,aAAa,CAAC,IAAc,EAAY,SAAS,EAAE,EAAG,WAAW,KAAK,IAAI,EAAQ,EAAa,WAAW,KAAK,GAAG,CAAC,EAAE,EAAa,eAAe,GAAG,EAAY,SAAS,GAAG,KAAK,IAAI,EAAQ,EAAa,WAAW,KAAK,EAAE,EAAE,IAAI,EAAY,SAAS,GAAG,KAAK,IAAI,EAAQ,EAAa,WAAW,KAAK,GAAG,EAAE,EAAE,KAAK,GAA0B,CAAW,EAAE,GAAyB,EAAY,CAAkB,EAAE,GAA8B,EAAY,EAAsB,EAAa,EAAG,aAAa,EAAG,aAAa,EAAG,aAAa,EAAG,aAAa,EAAE,GAA2B,EAAY,EAAsB,EAAa,EAAG,aAAa,EAAG,aAAa,EAAG,YAAY,EAAE,GAA4B,CAAW,EAAE,GAA4B,EAAY,EAAG,kBAAkB,CAAY,CAAE,CAC1zB,EAAG,SAAS,OAAO,IAAI,EAAE,EAAE,CAAC,EAAE,EAAG,OAAO,SAAS,IAAI,EAAG,aAAa,EAAG,aAAa,EAAG,YAAY,CAAE,MAAS,EAAG,OAAO,EAAa,aAAa,CAAC,GAAc,EAAG,MAAM,SAAS,EAAE,EAAG,WAAW,KAAK,IAAI,EAAQ,EAAa,WAAW,KAAK,GAAG,CAAC,EAAE,EAAa,eAAe,GAAG,EAAG,MAAM,SAAS,GAAG,EAAG,eAAe,GAAG,KAAK,IAAI,EAAQ,EAAa,WAAW,KAAK,GAAG,EAAE,EAAE,IACtX,EAAG,MAAM,SAAS,EAAE,EAAG,eAAe,EAAE,EAAG,MAAM,SAAS,GAAG,EAAG,eAAe,GAAG,KAAK,IAAI,EAAQ,EAAa,WAAW,KAAK,EAAE,EAAE,KAAa,EAAG,OAAO,CAAC,EAAa,aAAa,CAAC,EAAa,wBAAuB,EAAG,MAAM,SAAS,EAAE,EAAG,WAAW,EAAG,MAAM,SAAS,EAAE,EAAG,eAAe,EACnS,EAAG,MAAM,SAAS,EAAE,EAAG,eAAe,EAAE,EAAG,MAAM,SAAS,EAAE,EAAG,eAAe,GAAG,GAAG,EAAG,OAAO,CAAC,EAAa,sBAAsB,CAAC,IAAM,EAAG,KAAK,IAAI,IAAI,EAAa,YAAY,CAAC,EAAE,EAAG,MAAM,MAAM,UAAU,EAAG,eAAe,EAAG,SAAS,CAAE,EAAE,EAAG,MAAM,SAAS,EAAE,EAAG,YAAY,EAAG,MAAM,SAAS,GAAG,EAAG,MAAM,uBAAuB,GAAG,EAAG,MAAM,SAAS,EAAE,EAAG,YAAY,EAAG,MAAM,SAAS,EAAE,GAA0B,EAAG,KAAK,EAAE,GAAyB,EAAG,MAAM,CAAkB,EAAE,GAA8B,EAAG,MAAM,EAAsB,EAAa,EAAa,cAAc,EAAE,EAAa,cAAc,EAAE,EAAa,cAAc,EAAE,EAAa,YAAY,CAAC,EAAE,GAA2B,EAAG,MAAM,EAAsB,EAAa,EAAa,gBAAgB,EAAE,EAAa,gBAAgB,EAAE,EAAa,gBAAgB,CAAC,EAAE,GAA4B,EAAG,KAAK,EAAE,GAA4B,EAAG,MAAM,EAAG,kBAAkB,CAAY,CAAE,CAE56B,GAF66B,GAA4B,EAAG,MAAM,EAAa,EAAG,CAAY,EAAK,EAAG,OAAO,EAAa,eAAe,GAAmB,EAAG,EAAa,CAAkB,EAC3kC,EAAG,OAAO,CAAC,IAAc,EAAG,SAAS,EAAG,aAAa,EAAG,QAAQ,IAAI,EAAG,SAAS,EAAG,aAAa,EAAG,QAAQ,KAC3G,EAAG,OAAO,EAAa,qBAAqB,CAAC,EAAa,CAAC,IAAM,EAAU,EAAa,uBAAuB,EAAG,MAAM,SAAS,GAAG,EAAG,OAAO,EAAU,EAAG,MAAM,SAAS,GAAG,EAAG,OAAO,EAAU,EAAG,CACvM,GAAG,EAAG,UAAU,KAAK,EAAE,CAAC,IAAM,EAAW,EAAU,eAAe,CAAC,EAAE,IAAI,GAAK,CAAC,EAAI,KAAM,EAAG,UAAU,CAAC,IAAM,EAAK,EAAW,GAAK,GAAG,CAAC,EAAK,SAC3I,GAAG,CAAC,EAAG,SAAS,CAAC,EAAG,MAAM,CAAC,IAAM,EAAI,EAAG,UAAa,GAAK,EAAI,OAAO,EAAI,UACtE,EAAa,aAAa,CAAC,IAAc,EAAI,MAAM,SAAS,GAAG,EAAI,YAAY,EAAI,MAAM,SAAS,GAAG,KAAK,IAAI,EAAQ,EAAa,WAAW,KAAK,GAAG,CAAC,EAAE,EAAa,eAAe,GAAG,EAAI,MAAM,SAAS,GAAG,KAAK,IAAI,EAAQ,EAAa,WAAW,KAAK,EAAE,EAAE,IAAI,EAAI,MAAM,SAAS,GAAG,KAAK,IAAI,EAAQ,EAAa,WAAW,KAAK,GAAG,EAAE,EAAE,KAC/U,EAAI,OAAO,EAAa,iBAAiB,CAAC,GAAc,GAA0B,EAAI,EAAI,KAAK,GAAE,EAAI,MAAM,OAAO,CAAE,EAAE,GAAyB,EAAI,MAAM,CAAkB,EAAE,GAA4B,EAAI,MAAM,EAAG,kBAAkB,CAAY,GAAG,QAAS,CAC7N,GAAtC,EAAG,MAAM,QAAQ,EAAK,UAAU,GAAS,CAAC,EAAG,MAAM,QAAQ,SAC3D,IAAM,EAAa,CAAC,EAAE,EAAK,cAAc,EAAK,QAAc,EAAY,IAAe,EAAK,aAAa,EAAK,aAAa,OAAO,OAAO,MAAU,EAAW,EAAK,OAAO,EAAM,EAAU,EAAK,MAAM,EAAM,EAAU,EAAK,MAAM,EAAM,EAAU,EAAK,MAAM,EAAM,EAAU,EAAK,MAAM,EAAM,EAAU,EAAK,MAAM,EAAM,EAAU,EAAK,MAAM,EAC5U,GAAG,EAAa,sBAAsB,CAAC,AAAqB,EAAG,eAAa,CAAC,MAAM,EAAW,KAAK,EAAU,KAAK,EAAU,KAAK,EAAU,KAAK,EAAU,KAAK,EAAU,KAAK,CAAS,EAAG,IAAM,EAAI,EAAG,aAAmB,EAAW,EAAa,iBAAiB,IAAI,EAAI,QAAQ,EAAW,EAAI,OAAO,EAAW,EAAI,OAAO,EAAU,EAAI,MAAM,EAAW,EAAI,OAAO,EAAU,EAAI,MAAM,EAAW,EAAI,OAAO,EAAU,EAAI,MAAM,EAAW,EAAI,OAAO,EAAU,EAAI,MAAM,EAAW,EAAI,OAAO,EAAU,EAAI,MAAM,EAAW,EAAI,OAAO,EAAU,EAAI,MAAM,EAAW,EAAW,EAAI,MAAM,EAAU,EAAI,KAAK,EAAU,EAAI,KAAK,EAAU,EAAI,KAAK,EAAU,EAAI,KAAK,EAAU,EAAI,KAAK,EAAU,EAAI,IAAK,CAAC,IAAM,EAAY,EAAa,EAAa,sBAAsB,EAAG,cAAc,EAAa,YAAY,EAAE,EAAQ,EAAW,EAAa,EAAa,sBAAsB,EAAG,aAAa,EAAa,cAAc,EAAE,EAAQ,EAAW,EAAa,EAAa,sBAAsB,EAAG,aAAa,EAAa,cAAc,EAAE,EAAQ,EAAW,EAAa,EAAa,sBAAsB,EAAG,aAAa,EAAa,cAAc,EAAE,EAAQ,EAAW,EAAa,EAAa,sBAAsB,EAAG,aAAa,EAAa,gBAAgB,EAAE,EAAQ,EAAW,EAAa,EAAa,sBAAsB,EAAG,aAAa,EAAa,gBAAgB,EAAE,EAAQ,EAAW,EAAa,EAAa,sBAAsB,EAAG,aAAa,EAAa,gBAAgB,EAAE,EAAQ,EAAS,EAAY,EAAiB,EAAQ,EAAW,EAAgB,EAAQ,EAAW,EAAgB,EAAQ,EAAW,EAAgB,EAAQ,EAAW,EAAgB,EAAQ,EAAW,EAAgB,EAAQ,EAAW,EAAgB,EAAa,GAAc,IAAc,OAC/lD,GAAtH,EAAa,EAAG,eAAe,EAAG,iBAAyC,EAAa,EAAG,SAAS,EAAG,UAA4E,KAAK,IAAI,IAAI,CAAQ,EAExO,GAF0O,EAAG,MAAM,MAAM,UAAU,CAAc,EAE9Q,EAAG,sBAAsB,EAAe,CAAC,GAAG,OAAO,SAAS,EAAG,SAAS,EAAG,EAAG,gBAAgB,EAAG,cAAc,GAAG,EAAe,EAAG,gBAAgB,EAAG,cAAc,GAAG,EAAe,EAAG,gBAAgB,EAAG,cAAc,GAAG,EAAe,EAAG,aAAa,EAAG,WAAW,GAAG,MAAoB,CAAC,EAAG,MAAM,SAAS,IAAI,EAAE,EAAE,CAAC,EAAE,EAAG,MAAM,SAAS,IAAI,EAAE,EAAE,CAAC,EAAE,GAAS,KAAK,GAA4B,EAAG,KAAK,CAAC,EAAE,IAAM,EAAE,GAAS,UAAU,EAAS,EAAE,EAAG,eAAe,EAAE,EAAE,EAAG,eAAe,EAAE,EAAE,EAAG,eAAe,EAAE,EAAE,EAAG,YAAY,GAAS,IAAI,CAAE,CAAC,EAAG,oBAAoB,CAAe,CAGlkB,IAAM,EAAY,EAAG,aAAa,EAAG,QAAQ,UAAU,GAAG,EAE1D,GAF+D,GAAc,GAAuB,IAAI,EAAW,GAAS,EAAW,GAAS,EAAW,GAAS,KAAK,EAAE,GAAsB,aAAa,EAAsB,EAAE,GAAwB,IAAI,CAAC,EAAG,eAAe,EAAU,GAAa,EAAG,aAAa,GAAG,EAAU,CAAC,EAAG,eAAe,CAAS,CAAC,CAAC,gBAAgB,EAAqB,EAAE,EAAG,MAAM,SAAS,IAAI,EAAW,GAAwB,EAAE,EAAW,GAAwB,EAAE,EAAW,GAAwB,CAAC,GAAQ,EAAG,MAAM,SAAS,IAAI,CAAC,EAAG,eAAe,EAAQ,GAAa,EAAG,aAAa,GAAG,EAAQ,CAAC,EAAG,eAAe,CAAO,EAAG,EAAG,WAAW,EAAG,MAAM,SAAS,EAAE,EAAG,MAAM,SAAS,IAAI,EAAQ,GAAS,EAAQ,GAAS,EAAQ,EAAQ,EACvvB,EAAa,aAAa,CAAC,IAAc,EAAG,MAAM,SAAS,EAAE,EAAG,WAAW,KAAK,IAAI,EAAQ,EAAa,WAAW,KAAK,GAAG,CAAC,EAAE,EAAa,eAAe,GAAG,EAAG,MAAM,SAAS,GAAG,KAAK,IAAI,EAAQ,EAAa,WAAW,KAAK,EAAE,EAAE,IAAI,EAAG,MAAM,SAAS,GAAG,KAAK,IAAI,EAAQ,EAAa,WAAW,KAAK,GAAG,EAAE,EAAE,KACnT,EAAa,qBAAqB,CAAC,EAAa,CAAC,IAAM,EAAU,EAAa,uBAAuB,EAAG,MAAM,SAAS,GAAG,EAAG,OAAO,EAAU,EAAG,MAAM,SAAS,GAAG,EAAG,OAAO,EAAU,EAAG,CAAC,GAA0B,EAAG,KAAK,EAAE,GAAyB,EAAG,MAAM,CAAkB,EAAE,GAA8B,EAAG,MAAM,EAAsB,EAAa,EAAQ,EAAQ,EAAQ,CAAQ,EAAE,GAA2B,EAAG,MAAM,EAAsB,EAAa,EAAQ,EAAQ,CAAO,EAAE,GAA4B,EAAG,KAAK,EAAE,GAA4B,EAAG,MAAM,EAAG,kBAAkB,CAAY,EAAE,GAA4B,EAAG,MAAM,EAAa,EAAG,CAAY,EAChpB,EAAG,OAAO,EAAa,iBAAiB,CAAC,GAAc,GAA0B,EAAG,EAAG,KAAK,GAAE,EAAG,MAAM,OAAO,CAAE,CAAE,CAAC,CAEtH,GADG,EAAG,OAAO,EAAa,iBAAiB,CAAC,GAAc,GAA0B,EAAG,EAAG,KAAK,GAAE,EAAG,MAAM,OAAO,CAAE,EAChH,EAAI,4BAA4B,EAAG,WAAW,CAAC,IAAM,GAAU,EAAG,YAAY,MAAM,IAAI,KAAK,EAAI,0BAA0B,IAAI,QAAQ,EAAG,WAAW,MAAM,GAAG,GAAG,KAAyB,GAAU,CAAC,GAAoB,CAC5N,GAAoB,IAAI,IAAI,GAAuB,EAAS,IAAI,IAAM,KAAM,EAAI,sBAAsB,CAAC,EAAE,CAAC,IAAM,EAAY,EAAG,SAAS,KAAK,CAAC,CAAC,YAAY,EAAE,GAAG,CAAC,GAAa,GAAoB,IAAI,CAAW,EAAE,SACnN,IAAI,EAAQ,KAAmJ,GAA9I,EAAG,WAAW,SAAS,GAAG,CAAI,GAAkB,IAAI,EAAG,YAAqB,EAAE,MAAM,EAAE,KAAK,YAAY,CAAC,CAAC,SAAS,CAAW,IAAG,EAAQ,EAAG,CAAC,EAAK,CAAC,GAAS,EAAG,UAAW,IAAI,GAAK,EAAE,KAAM,EAAG,UAAU,CAAC,GAAG,EAAQ,MAAS,EAAG,SAAS,EAAG,OAAO,EAAG,MAAM,SAAS,GAAG,CAAI,GAAkB,IAAI,EAAG,OAAgB,EAAE,MAAM,EAAE,KAAK,YAAY,CAAC,CAAC,SAAS,CAAW,IAAG,EAAQ,EAAG,CAAC,CAAG,CAAE,GAAoB,IAAI,EAAY,CAAO,CAAE,CAAC,CACxb,GAAgB,MAAM,EAAE,GAAiB,MAAM,EAAE,EAAqB,MAAM,EAAE,IAAI,IAAM,KAAM,EAAI,sBAAsB,CAAC,EAAE,CAA8D,GAAG,EAAhD,GAAI,SAAS,GAAI,uBAAuB,IAAmB,SAAS,IAAM,EAAY,OAAO,GAAI,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,YAAY,EAAE,GAAG,CAAC,EAAY,SAAS,IAAM,EAAQ,GAAoB,IAAI,CAAW,EAAE,GAAG,CAAC,EAAQ,SAGxW,EAAqB,IAAI,EAAQ,CAAE,EAAE,IAAM,EAAiB,CAAC,EAAa,mBAAsB,EAAG,YAAW,GAAgB,IAAI,CAAO,EAAK,GAAkB,EAAG,aAAY,GAAiB,IAAI,CAAO,CAAE,CAC7M,IAAI,GAAK,CAAC,KAAQ,GAAsB,GAAgB,IAAI,CAAI,GAAE,GAAiB,OAAO,CAAI,EAAG,IAAI,IAAM,KAAK,GAAgB,CAAC,IAAM,EAAG,EAAqB,IAAI,CAAC,EAAE,GAAG,CAAC,GAAiB,IAAI,CAAC,EAAG,GAAiB,IAAI,EAAE,CAAC,MAAM,GAAI,qBAAqB,EAAE,KAAK,GAAI,oBAAoB,GAAG,CAAC,MAAO,CAAC,IAAM,EAAK,GAAiB,IAAI,CAAC,EAAE,EAAK,MAAM,GAAI,qBAAqB,EAAE,EAAK,KAAK,GAAI,oBAAoB,GAAI,CAAC,CACrZ,IAAI,GAAK,CAAC,KAAQ,GAAmB,GAAG,CAAC,GAAiB,IAAI,CAAI,EAAE,CAAC,IAAM,EAAK,GAAkB,IAAI,CAAI,EAAE,EAAK,SAAS,EAAE,EAAK,SAAS,EAAK,SAAS,EAAE,EAAK,SAAS,GAAkB,OAAO,CAAI,CAAE,CAAE,IAAI,IAAM,KAAK,GAAiB,CAAC,IAAM,EAAG,EAAqB,IAAI,CAAC,EAAE,GAAG,CAAC,GAAkB,IAAI,CAAC,EAAG,GAAkB,IAAI,EAAE,CAAC,UAAU,GAAI,0BAA0B,GAAG,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,MAAO,CAAC,IAAM,EAAK,GAAkB,IAAI,CAAC,EAAE,EAAK,UAAU,GAAI,0BAA0B,EAAG,CAAC,CAAC,MACvc,GAAjD,GAAiB,KAAK,GAAE,GAAiB,MAAM,EAAK,GAAkB,KAAK,EAAE,CAAC,IAAI,GAAK,CAAC,EAAK,KAAQ,GAAmB,EAAK,SAAS,EAAE,EAAK,SAAS,EAAK,SAAS,EAAE,EAAK,SAAU,GAAkB,MAAM,CAAE,CAClN,GAAG,GAAiB,KAAK,GAAG,EAAG,EAAG,IAAI,GAAK,CAAC,EAAK,KAAQ,GAAiB,CAAC,IAAM,EAAI,EAAK,MAAM,EAAM,EAAK,OAAO,IAAI,EAAK,SAAS,GAAG,EAAY,EAAK,OAAO,IAAI,EAAK,SAAS,GAAG,EAAS,EAAK,SAAS,GAAG,CAAI,CAClN,GAAG,GAAkB,KAAK,GAAG,EAAG,eAAe,IAAA,GAAW,IAAI,GAAK,CAAC,EAAK,KAAQ,GAAkB,CAAC,IAAM,EAAG,EAAG,QAAQ,EAAQ,EAAG,EAAG,QAAQ,EAAE,EAAK,SAAS,EAAE,EAAK,SAAS,EAAG,EAAK,UAAU,EAAK,SAAS,EAAE,EAAK,SAAS,EAAG,EAAK,UAAU,EAAG,CACnP,GAAG,EAAG,EAAE,CACR,GAAG,EAAW,KAAK,CAAC,IAAM,EAAI,EAAW,QAAQ,YAAY,GAAwB,EAAO,KAAK,IAAI,EAAE,EAAG,CAAG,EAAE,EAAW,WAAW,EAAW,OAAO,EAAW,UAAU,EACzK,KAAK,IAAI,EAAW,OAAO,EAAW,QAAQ,EAAE,OAAM,EAAW,SAAS,EAAW,OAAQ,CAChG,GAAG,EAAc,KAAK,CAAC,IAAM,EAAI,EAAc,QAAQ,YAAY,GAAwB,EAAO,KAAK,IAAI,EAAE,EAAG,CAAG,EAAE,EAAc,WAAW,EAAE,EAAc,UAAU,EAAU,EAAc,SAAS,MACzM,GAAkB,CAAa,CAAG,CAClC,GAAG,GAAc,CAAC,IAAM,EAAG,GAAoB,EAAO,KAAK,IAAI,EAAE,EAAG,CAAoB,EAAE,EAAG,KAAK,SAAS,KAAK,EAAG,UAAU,CAAM,EAAK,EAAG,KAAK,SAAS,WAAW,EAAG,SAAS,EAAE,OAAM,EAAG,KAAK,SAAS,KAAK,EAAG,SAAS,EAAE,GAAc,KAAM,CAAC,CAIjP,GAAG,EAAI,0BAA0B,EAAG,WAAW,CAAC,AAAmB,EAAG,cAAY,IAAI,IACtF,IAAM,EAAe,EAAI,sBAAsB,EAAI,iBAAiB,IAAI,EAAQ,GAAY,EAAG,YAAY,MAAM,IAAI,KAAK,EAAI,wBAAwB,IAAI,QAAQ,EAAG,WAAW,MAAM,GAAG,GAAG,KAAyB,GAAY,CAAC,GAAoB,CAAC,GAAoB,IAAI,IAAI,GAAuB,EAAW,IAAI,IAAM,KAAQ,EAAI,oBAAoB,CAAC,EAAE,CAAC,IAAM,EAAY,EAAK,SAAS,KAAK,CAAC,CAAC,YAAY,EAAE,GAAG,CAAC,GAAa,GAAoB,IAAI,CAAW,EAAE,SAAS,IAAI,EAAQ,KAAwL,GAAnL,EAAG,WAAW,SAAS,GAAG,CAAI,GAAkB,IAAI,EAAG,aAAsB,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,KAAK,YAAY,CAAC,CAAC,SAAS,CAAW,IAAG,EAAQ,EAAG,CAAC,EAAK,CAAC,GAAS,EAAG,UAAW,IAAI,GAAK,EAAE,KAAM,EAAG,UAAU,CAAC,GAAG,EAAQ,MAAS,EAAG,SAAS,EAAG,OAAO,EAAG,MAAM,SAAS,GAAG,CAAI,GAAkB,IAAI,EAAG,QAAiB,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,KAAK,YAAY,CAAC,CAAC,SAAS,CAAW,IAAG,EAAQ,EAAG,CAAC,CAAG,CAAE,GAAoB,IAAI,EAAY,CAAO,CAAE,CAAC,CAAC,IAAI,IAAM,KAAQ,EAAI,oBAAoB,CAAC,EAAE,CAAC,IAAM,EAAS,EAAK,SAAS,KAAK,EAAE,GAAG,CAAC,EAAS,SACzjC,IAAM,EAAO,GAAoB,IAAI,EAAS,YAAY,CAAC,EAAE,GAAG,CAAC,EAAO,SACxE,IAAM,EAAQ,GAAyB,EAAK,GAA8B,EAAK,YAAY,EAAQ,QAAQ,EAAK,aAAa,CAAC,EACxH,EAAY,OAAO,GAAM,aAAa,EAAE,CAAC,CAAC,KAAK,EAAM,EAAG,EAAG,YAAY,IAAI,CAAQ,EAGiM,IAH5L,CAAC,GAAI,EAAG,eAAe,KAErH,EAAG,CAAC,KAAK,EAAQ,KAAK,KAAK,EAAQ,KAAK,KAAK,EAAQ,KAAK,KAAK,EAAQ,KAAK,KAAK,EAAQ,KAAK,KAAK,EAAQ,KAAK,OAAO,EAAQ,OAAO,OAAO,EAAQ,OAAO,OAAO,EAAQ,OAAO,QAAQ,EAAQ,QAAQ,aAAa,CAAW,EAAE,EAAG,YAAY,IAAI,EAAS,CAAE,GAClQ,EAAG,OAAO,EAAQ,KAAK,EAAG,MAAM,EAAe,EAAG,OAAO,EAAQ,KAAK,EAAG,MAAM,EAAe,EAAG,OAAO,EAAQ,KAAK,EAAG,MAAM,EAAe,EAAG,OAAO,EAAQ,KAAK,EAAG,MAAM,EAAe,EAAG,OAAO,EAAQ,KAAK,EAAG,MAAM,EAAe,EAAG,OAAO,EAAQ,KAAK,EAAG,MAAM,EAAkB,EAAG,SAAS,IAAA,GAAU,CAAC,IAAM,EAAY,EAAG,OAAO,EAAE,EAAG,OAAO,EAAY,EAAG,OAAO,EAAY,EAAG,OAAO,CAAY,CAAC,EAAG,SAAS,EAAQ,OAAO,EAAG,QAAQ,EAAe,EAAG,SAAS,EAAQ,OAAO,EAAG,QAAQ,EAAe,EAAG,SAAS,EAAQ,OAAO,EAAG,QAAQ,EAAe,EAAG,UAAU,EAAQ,QAAQ,EAAG,SAAS,EAC1lB,EAAO,mBAAmB,IAAA,KAAW,EAAO,iBAAiB,EAAO,SAAS,MAAM,EAAE,EAAO,iBAAiB,EAAO,SAAS,MAAM,EAAE,EAAO,mBAAmB,EAAO,MAAM,MAAM,GACrL,EAAO,SAAS,EAAE,EAAO,iBAAiB,EAAE,EAAG,KAAK,EAAO,SAAS,EAAE,EAAO,iBAAiB,EAAE,EAAG,KAAK,EAAO,SAAS,EAAE,EAAO,iBAAiB,EAAE,EAAG,KACvJ,EAAO,SAAS,EAAE,EAAO,iBAAiB,EAAE,EAAG,KAAK,GAAS,EAAO,SAAS,EAAE,EAAO,iBAAiB,EAAE,EAAG,KAAK,GAAS,EAAO,SAAS,EAAE,EAAO,iBAAiB,EAAE,EAAG,KAAK,GAC9K,EAAO,MAAM,EAAE,EAAO,mBAAmB,EAAE,KAAK,IAAI,KAAK,EAAG,MAAM,EAAE,EAAO,MAAM,EAAE,EAAO,mBAAmB,EAAE,KAAK,IAAI,KAAK,EAAG,MAAM,EAAE,EAAO,MAAM,EAAE,EAAO,mBAAmB,EAAE,KAAK,IAAI,KAAK,EAAG,MAAM,EAC1M,IAAM,EAAG,KAAK,IAAI,EAAE,KAAK,IAAI,EAAE,EAAG,OAAO,CAAC,EAAE,GAAG,EAAO,uBAAuB,EAAG,CAAC,IAAI,EAAe,EAAO,wBAA4B,IAAgB,EAAe,EAAO,OAAO,CAAC,CAAM,EAAE,CAAC,EAAM,EAAO,QAAQ,EAAO,SAAS,GAAM,CAAI,EAAK,QAAQ,EAAK,UAAS,EAAe,KAAK,CAAI,CAAE,CAAC,EAAG,EAAO,wBAAwB,GAAgB,IAAI,IAAM,KAAQ,GAA2B,MAAM,QAAQ,EAAK,QAAQ,EAAE,EAAK,SAAS,CAAC,EAAK,QAAQ,EAAA,CAAO,QAAQ,GAAG,CAAC,EAAE,QAAQ,EAAG,EAAE,YAAY,EAAG,CAAE,CAAC,EAAG,EAAO,qBAAqB,CAAG,CAAC,CAAC,CAGnhB,IAAM,EAAY,IAAI,IAAU,EAAS,GAAI,CAAI,GAAI,MAAM,CAAC,EAAY,IAAI,EAAG,IAAI,IAAG,EAAY,IAAI,EAAG,IAAI,EAAM,EAAG,KAAK,mBAAqB,EAAG,cAAa,EAAG,KAAK,SAAS,KAAK,EAAG,YAAY,EAAK,EAAG,cAAa,EAAG,KAAK,SAAS,KAAK,EAAG,YAAY,EAAK,EAAG,WAAU,EAAG,KAAK,MAAM,KAAK,EAAG,SAAS,GAAI,EAEpT,GAFsT,EAAS,CAAU,EAAE,EAAS,CAAa,EAAE,EAAS,CAAU,EAAK,EAAW,MAAK,GAAgB,CAAU,EAAK,EAAc,MAAK,GAAgB,CAAa,EAAK,EAAW,MAAK,GAAgB,CAAU,EACtgB,EAAG,WAAW,UAAS,EAAG,UAAU,SAAS,KAAK,MAAM,GACxD,EAAG,eAAe,CAAC,IAAM,EAAc,EAAE,EAAI,iBAAiB,EAAG,kBAAkB,EAAG,EAAc,EAAG,kBAAkB,IAAM,EAAK,GAAG,GAAoB,EAAE,EAAI,kBAAkB,EAAI,iBAAiB,EAAE,GAAG,EAAG,oBAAoB,MACpO,EAAG,kBAAkB,EAAG,EAAG,iBAAiB,EAAE,AAC+b,EAAG,oBAD1a,EAAG,MAAM,OAAO,EAAG,gBAAgB,EAAE,EAAG,iBAAiB,SAAS,GAAG,CAAC,GAAG,EAAE,OAAO,CACgB,GAAxK,EAAE,eAAe,EAAE,UAAU,EAAE,SAAS,QAAQ,EAAM,EAAG,kBAAkB,IAAI,EAAE,IAAI,IAAG,EAAG,kBAAkB,IAAI,EAAE,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAG,kBAAkB,OAAO,EAAE,IAAI,GAAM,EAAG,0BAA0B,IAAI,EAAE,IAAI,EAAE,CAAC,IAAM,EAAQ,EAAG,0BAA0B,IAAI,EAAE,IAAI,GAAG,MAAM,QAAQ,CAAO,EAAE,EAAQ,CAAC,CAAO,EAAA,CAAG,QAAQ,GAAG,EAAE,UAAU,CAAC,CAAE,EAAE,MAAM,QAAQ,EAAE,QAAQ,EAAE,EAAE,SAAS,CAAC,EAAE,QAAQ,EAAA,CAAG,QAAQ,GAAG,EAAE,UAAU,CAAC,EAAE,GAAqB,OAAO,EAAE,IAAI,CAAE,CAAC,CAAC,EAAE,EAAG,0BAA0B,MAAM,EAAsB,MAAS,EAAG,MAAO,GAAyB,EAAG,CAAG,GAAQ,GAAyB,EAAG,iBAAiB,EAAE,EAAG,kBAAkB,KAAK,EAAG,mBAAmB,GAAK,EAAG,eAAe,SAAa,GAAG,EAAG,iBAAiB,CAAC,IAAM,EAAO,EAAK,EAAG,gBAAgB,EAAE,EAAG,iBAAiB,SAAS,GAAO,CAAC,GAAG,EAAM,QAAQ,EAAG,0BAA0B,IAAI,EAAM,IAAI,EAAG,GAAI,EAAG,kBAAkB,IAAI,EAAM,IAAI,EAAqZ,CAAC,IAAM,EAAY,EAAG,kBAAkB,IAAI,EAAM,IAAI,EAAE,GAAG,GAAa,EAAY,SAAS,eAAe,CAAC,IAAM,EAAE,EAAY,SAAS,eAAe,EAAE,UAAU,MAAM,EAAO,EAAE,MAAM,MAAM,EAAI,mBAAmB,EAAE,KAAK,MAAM,EAAI,kBAAkB,EAAE,MAAM,MAAM,EAAI,kBAAqB,EAAG,2BAA2B,EAAI,wBAAuB,EAAG,yBAAyB,EAAI,sBAAsB,EAAG,wBAAwB,GAAW,EAAI,qBAAqB,GAAG,EAAE,WAAW,MAAM,KAAK,EAAG,uBAAuB,EAAE,EAAE,eAAe,MAAM,EAAI,yBAA0B,CAAC,KAA/8B,CAAgE,IAAM,EAAY,GAA/D,EAAG,0BAA0B,IAAI,EAAM,IAAyD,EAAE,CAAC,SAAS,EAAO,WAAW,EAAI,mBAAmB,UAAU,EAAI,kBAAkB,UAAU,EAAI,kBAAkB,cAAc,EAAI,sBAAsB,kBAAkB,EAAI,yBAAyB,CAAC,EAAE,EAAG,kBAAkB,IAAI,EAAM,KAAK,CAAW,EAAE,EAAM,SAAS,CAAY,CAAmkB,CAAC,CAAE,OACj2D,GAAG,EAAG,kBAAkB,EAAG,EAAG,iBAAiB,EAAE,EAAG,eAAe,GAAS,EAAG,OAAO,EAAG,MAAM,SAAS,GAAO,CAAI,EAAM,SAAW,EAAG,kBAAkB,IAAI,EAAM,IAAI,IAAG,EAAG,kBAAkB,IAAI,EAAM,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAG,kBAAkB,OAAO,EAAM,IAAI,GAAM,EAAG,0BAA0B,IAAI,EAAM,IAAI,IAAG,EAAM,SAAS,EAAG,0BAA0B,IAAI,EAAM,IAAI,GAAI,CAAC,EAAG,EAAG,0BAA0B,MAAM,EACxZ,GAAyB,EAAG,iBAAiB,EAAE,EAAG,kBAAkB,UAAW,GAAG,EAAG,MAAM,CAAC,IAAM,EAAO,EAAK,EAAG,gBAAgB,EAAE,EAAG,MAAM,SAAS,GAAO,CAAC,GAAG,EAAM,QAAQ,EAAG,0BAA0B,IAAI,EAAM,IAAI,EAAG,GAAI,EAAG,kBAAkB,IAAI,EAAM,IAAI,EAAqZ,CAAC,IAAM,EAAY,EAAG,kBAAkB,IAAI,EAAM,IAAI,EAAE,GAAG,GAAa,EAAY,SAAS,eAAe,CAAC,IAAM,EAAE,EAAY,SAAS,eAAe,EAAE,UAAU,MAAM,EAAO,EAAE,MAAM,MAAM,EAAI,mBAAmB,EAAE,KAAK,MAAM,EAAI,kBAAkB,EAAE,MAAM,MAAM,EAAI,kBAAqB,EAAG,2BAA2B,EAAI,wBAAuB,EAAG,yBAAyB,EAAI,sBAAsB,EAAG,wBAAwB,GAAW,EAAI,qBAAqB,GAAG,EAAE,WAAW,MAAM,KAAK,EAAG,uBAAuB,EAAE,EAAE,eAAe,MAAM,EAAI,yBAA0B,CAAC,KAA/8B,CAAgE,IAAM,EAAY,GAA/D,EAAG,0BAA0B,IAAI,EAAM,IAAyD,EAAE,CAAC,SAAS,EAAO,WAAW,EAAI,mBAAmB,UAAU,EAAI,kBAAkB,UAAU,EAAI,kBAAkB,cAAc,EAAI,sBAAsB,kBAAkB,EAAI,yBAAyB,CAAC,EAAE,EAAG,kBAAkB,IAAI,EAAM,KAAK,CAAW,EAAE,EAAM,SAAS,CAAY,CAAmkB,CAAC,CAAE,CACztC,GAAG,EAAG,kBAAkB,CAAC,IAAM,EAAE,EAAG,kBAC9B,EAAY,EAAG,kBAAkB,EAAG,MAAS,IAAa,EAAE,OAAO,SAAS,KAAK,EAAY,QAAQ,EAAE,EAAE,OAAO,SAAS,KAAK,EAAY,QAAQ,EAAE,EAAE,OAAO,MAAM,KAAK,EAAY,KAAK,GAAG,IAAM,EAAO,EAAK,EAAG,gBAAgB,EAAE,EAAE,IAAI,SAAS,UAAU,MAAM,EAAO,EAAE,IAAI,SAAS,MAAM,MAAM,EAAI,mBAAmB,EAAE,IAAI,SAAS,KAAK,MAAM,EAAI,kBAAkB,EAAE,IAAI,SAAS,MAAM,MAAM,EAAI,kBAAkB,IAAM,EAAY,EAAI,uBAAuB,EAAI,sBAAyB,EAAG,+BAA+B,IAAa,EAAG,6BAA6B,EAAY,EAAG,4BAA4B,GAAW,CAAW,GAAG,EAAE,IAAI,SAAS,OAAO,MAAM,KAAK,EAAG,2BAA2B,EAAE,EAAE,IAAI,SAAS,UAAU,MAAM,EAAI,0BAA0B,GAAG,EAAE,MAAM,MAAM,EAAI,uBAAuB,IAAI,EAAE,MAAM,QAAQ,EAAI,yBAAyB,EAAE,EAAE,MAAM,UAAU,EAAE,EAAI,sBAAsB,IAAI,EAAE,MAAM,UAAU,EAAE,EAAI,sBAAsB,EAAE,GAAwB,EAAE,KAAK,EAAE,GAAuB,EAAE,IAAI,EAAE,KAAK,CAAE,CAAC,CACtgC,GAAG,EAAI,gBACP,IADwB,AAAwH,EAAG,kBAApG,EAAG,qBAAqB,EAAI,cAAc,EAAI,aAAa,EAAI,cAAc,EAAI,cAAc,EAAoB,GAC/J,EAAG,eAAe,CAAC,IAAM,EAAI,EAAG,eAAe,SAAY,EAAI,OAAO,EAAI,eAAa,EAAI,KAAK,EAAI,cAAgB,EAAG,uBAAuB,EAAI,gBAAe,EAAG,qBAAqB,EAAI,cAAc,EAAG,oBAAoB,GAAW,EAAI,aAAa,GAAO,EAAI,MAAM,OAAO,EAAG,mBAAmB,GAAG,EAAI,MAAM,KAAK,EAAG,mBAAmB,EACpU,EAAG,eAAe,SAAS,WAAW,SAAS,QAAwB,EAAI,gBAAe,EAAG,qBAAqB,EAAI,cAAc,EAAI,aAAa,EAAI,cAAc,EAAI,cAAc,EAAE,EAAG,eAAe,GAChO,EAAG,gBAAgB,EAAI,cAAc,EAAI,cAAc,CAAE,MAAO,CAC6C,EAAG,kBAAhH,EAAG,MAAM,OAAO,EAAG,cAAc,EAAE,EAAG,eAAe,SAAS,QAAQ,EAAE,EAAG,eAAe,SAAS,QAAQ,EAAoB,MAC/H,IAAM,EAAU,GAAoB,CAAG,EACvC,GAAG,EAAgB,GAAG,EAAI,aAAa,UAAU,EAAG,aAAa,CAAC,EAAG,aAAa,OAAO,CAAM,EAAE,EAAS,QAAQ,EAAc,EAAE,IAAM,EAAI,GAAqB,EAAqB,EAAS,UAAU,WAAW,EAAS,UAAU,GAAK,EAAS,eAAe,EAAI,EAAE,GAAG,CAC7Q,EAAS,WAAW,EAAE,EAAE,EAAI,EAAE,EAAE,EAAI,CAAC,EAAE,EAAS,YAAY,EAAE,EAAE,EAAI,EAAE,EAAE,EAAI,CAAC,EAAE,EAAS,OAAO,EAAM,EAAG,aAAa,OAAO,EAC5H,EAAS,UAAU,WAAW,GAAM,EAAS,WAAW,EAAI,EAAE,EAAE,EAAE,EAAI,EAAE,EAAE,EAAI,CAAC,EAAE,EAAS,YAAY,EAAI,EAAE,EAAE,EAAE,EAAI,EAAE,EAAE,EAAI,CAAC,EAAE,EAAS,OAAO,EAAM,EAAG,aAAa,OAAO,CAAE,QAAQ,CAAC,EAAS,UAAU,WAAW,EAAqB,EAAS,eAAe,EAAK,EAAE,EAAS,YAAY,EAAE,EAAE,EAAI,EAAE,EAAI,CAAC,CAAE,CAAC,MAAS,GACtT,EAAI,uBAAuB,EAAS,cAAc,EAAE,CAAC,EAAgC,EAAS,UAAU,GAAS,GAAqB,EAAI,EAAQ,SAAS,aAAa,EAAE,EAAQ,SAAS,cAAc,CAAC,GAAM,EAAG,WAAW,UAAS,EAAG,UAAU,SAAS,KAAK,MAAM,GAAY,EAAG,WAAU,EAAG,SAAS,eAAe,GAAK,EAAG,SAAS,OAAO,IAEvV,EAAS,OAAO,EAAM,CAAM,IAAS,GAAsB,EAAE,EAAS,UAAU,GAAK,EAAS,OAAO,EAAM,CAAM,GACjH,GAAG,EAAG,iBAAiB,GAAG,GAAU,QAAQ,CAAC,IAAM,GAAa,YAAY,IAAI,EAAE,EAAG,kBAAkB,IAAU,EAAQ,EAAI,oBAAoB,GAAS,EAAQ,EAAI,qBAAqB,GAAG,GAAG,GAAa,EAC9M,GAAU,QAAQ,MAAM,OAAO,GAAG,GAAU,QAAQ,MAAM,WAAW,GAAG,EAAG,iBAAiB,MAAO,CAC1C,IAAM,EAAY,GAAS,GAA7C,GAAW,EAA1C,EAAY,IAAkC,IAAsC,GAAU,QAAQ,MAAM,OAAO,QAAQ,EAAY,QAAQ,CAAC,EAAE,IAAK,CAAC,CAChK,GAAG,EAAE,EAAG,gBAAgB,IAAI,EAAQ,QAAQ,CAAC,EAAG,eAAe,EAAE,IAAM,EAAG,EAAQ,QAAQ,YAAkB,EAAG,EAAQ,QAAQ,aAAa,GAAG,GAAI,EAAG,CAAC,IAAM,EAAI,EAAS,cAAc,GAAG,EAAQ,EAAG,EAAS,WAAW,MAAM,EAAU,EAAG,EAAS,WAAW,OAAO,EAAU,EAAU,GAAY,QAAc,EAAU,GAAiB,CAAS,GAAK,KAAK,IAAI,EAAG,CAAE,EAAE,GAAG,KAAK,IAAI,EAAG,CAAE,EAAE,GAAG,KAAK,IAAI,GAAW,EAAG,gBAAgB,EAAI,EAAE,MAAK,GAAe,EAAK,CAAG,CAAC,CAAC,GAAc,MAAM,CAAE,EAAS,OAAP,GAAK,MAAY,CAAC,EAAG,UAAU,GAAK,GAAkB,WAAW,EAAG,QAAQ,EAAE,EAAG,SAAS,EAAE,qBAAqB,GAAO,OAAO,EACvmB,GAAiB,MAAM,EAAE,GAAkB,MAAM,EAAE,GAAkC,EAAE,GAAoB,KAAK,GAAuB,GAAG,GAA6B,CAAC,EAAE,GAAgC,GAAG,GAA+B,OAAO,EAAE,GAAoB,KAAK,GAAuB,GAClS,GAAU,UAAS,GAAU,QAAQ,MAAM,QAAQ,IAAI,GAAU,QAAQ,MAAM,OAAO,GAAG,GAAU,QAAQ,MAAM,WAAW,IAAI,SAAS,oBAAoB,mBAAmB,EAAkB,EAAE,EAAO,oBAAoB,SAAS,EAAoB,EAAE,EAAO,oBAAoB,SAAS,EAAoB,EAAE,SAAS,oBAAoB,SAAS,GAAqB,EAAI,EAAE,IAAI,oBAAoB,SAAS,EAAoB,EAAE,IAAI,oBAAoB,SAAS,EAAoB,EAAE,EAAO,oBAAoB,YAAY,EAAsB,EAAK,IAAG,GAAG,WAAW,EAAE,GAAG,WAAW,EAAK,IAAU,qBAAqB,EAAS,EAAK,IAAc,aAAa,EAAa,EAAK,EAAG,kBAAkB,IAAgB,OAAO,EAAG,gBAAiB,GAAoB,QAAQ,GAAO,aAAa,CAAK,CAAC,EAAE,GAAoB,CAAE,EAAE,EAAS,QAAQ,EAAE,GAA4B,UAAU,CAAC,KAAK,OAAO,QAAQ,EAAgB,SAAO,OAAO,eAAe,WAAW,GAAwB,CAAC,CAAC,WAAW,aAAa,EAAa,QAAQ,EAAE,UAAU,GAAwB,CAAC,CAAC,WAAW,EAAE,UAAU,GAAwB,CAAC,CAAC,OAAO,MAAM,EAAE,SAAS,CAAC,CAAC,GAAwB,CAAC,CAAC,aAAa,CAAC,EAAE,GAAsB,EAAE,EAAS,QAAQ,EAAE,GAAuB,CAAE,EACruC,IAAgB,EAAG,MAAM,OAAO,CAAc,EAAE,EAAe,SAAS,QAAQ,EAAE,EAAe,SAAS,QAAQ,GAAM,EAAG,QAAO,GAAoC,EAAG,EAAG,KAAK,EAAE,EAAG,MAAM,cAAc,EAAE,EAAG,yBAAyB,IAC3O,GAAyB,EAAG,iBAAiB,EAAE,EAAG,kBAAkB,KAAK,EAAG,mBAAmB,GAC5F,EAAG,mBAAkB,EAAG,MAAM,OAAO,EAAG,gBAAgB,EAC3D,GAAsB,EAAG,gBAAgB,EAAE,EAAG,0BAA0B,MAAM,GAC9E,IAAI,IAAM,KAAe,EAAG,kBAAkB,OAAO,EAAG,EAAY,QAAQ,EAAG,EAAG,kBAAkB,MAAM,EAC1G,IAAI,GAAK,EAAE,KAAM,EAAG,UAAc,EAAG,QAAO,EAAG,MAAM,OAAO,EAAG,KAAK,EAAE,GAAsB,EAAG,KAAK,GAAM,EAAG,QAAO,GAAoC,EAAG,EAAG,KAAK,EAAE,EAAG,MAAM,cAAc,EAAE,EAAG,yBAAyB,IAAK,EAAG,UAAU,MAAM,EAAE,SAAS,oBAAoB,YAAY,EAAW,EAAE,SAAS,oBAAoB,YAAY,EAAgB,EAAE,GAAuB,EAC5X,SAAS,oBAAoB,YAAY,EAAwB,EAAK,IAAmB,qBAAqB,EAAkB,EAAE,GAAgB,GAAM,KAAK,EAAI,EAAE,EAAO,oBAAoB,SAAS,EAA8B,EAAE,EAAO,oBAAoB,cAAc,EAA0B,EAAE,EAAO,oBAAoB,QAAQ,GAAc,EAAI,EAAE,SAAS,oBAAoB,YAAY,EAAiB,EAAK,IAAiB,qBAAqB,EAAgB,EAAE,SAAS,oBAAoB,QAAQ,EAAe,EAAE,EAAO,oBAAoB,cAAc,EAAqB,EAAE,SAAS,oBAAoB,cAAc,EAAwB,EAAK,IAAwB,qBAAqB,EAAuB,EAAE,SAAS,oBAAoB,YAAY,EAAmB,EAAE,SAAS,oBAAoB,YAAY,EAAwB,EAAE,SAAS,oBAAoB,gBAAgB,EAAmB,EAAE,SAAS,oBAAoB,gBAAgB,EAAwB,EAAE,EAAO,oBAAoB,aAAa,EAAqB,EAAE,SAAS,oBAAoB,YAAY,EAAwB,EAAE,SAAS,oBAAoB,WAAW,EAAmB,EAAE,SAAS,oBAAoB,WAAW,EAAwB,EAAE,EAAG,oBAAoB,GAAM,GAAuB,EAAK,EAAE,GAAqB,EAAK,EAAE,GAAc,KAAK,GAAmB,IAAI,EAC12C,GAAoB,EAAE,GAAkB,CAAU,EAAE,GAAkB,CAAa,EACnF,IAAI,IAAM,KAAS,EAAG,kBAAmB,EAAM,OAAO,CAAK,EAAK,EAAM,QAAQ,EAAM,aAAY,EAAM,OAAO,EAAM,MAAM,EAAK,EAAM,QAAQ,KAAI,EAAM,OAAO,IAAI,QAAQ,EAAE,EAAM,QAAQ,EAAG,EAAG,kBAAkB,OAAO,EAGrN,EAAG,QAAO,EAAM,OAAO,EAAG,KAAK,EAAE,GAAsB,EAAG,KAAK,GAAG,GAAkB,CAAK,EAC5F,EAAG,MAAM,KAAK,EAAG,OAAO,KAAK,EAAG,MAAM,KAAK,EAAG,WAAW,KAAK,EAAG,SAAS,KAAK,EAAG,SAAS,KAAK,GAAoB,IAAK,CAAE,EAAE,CAAC,EAAkB,CAAC,EAAE,MAAc,CAA2B,GAAR,SAAY,kBAAkB,EAAI,CAAE,EAAE,CAAC,GAAkB,GAAwB,EAAwB,CAAC,EAC9R,MAAc,CAAC,IAAI,EAAU,GAAU,EAAU,GAC1C,EAAG,GAAS,QAAc,EAAI,GAAY,QAAQ,GAAG,CAAC,EAAG,OAAO,GAAG,CAAC,GAAS,CAAC,MAAoB,CAAC,GAAU,kCAAkC,CAAE,CAAC,EAAE,MAAO,CAAC,EAAG,cAAc,GAAG,EAAG,iBAAiB,GAAG,EAAG,iBAAiB,GAAG,EAAG,YAAY,GAAG,EAAG,gBAAgB,GAG1Q,IAAM,EAAiB,KAAsB,GAAe,EAAe,GAAY,IAAI,EAAQ,EAAQ,EAAa,GAAiB,IAAI,EAAQ,EAAQ,EAA4B,IAAS,QAAa,EAAO,qBAAqB,UAG3O,GAHwP,GAAkB,GAAgB,GAAc,EACxS,MAAoB,CAAC,GAAU,EAAE,CAAE,CAAC,GAAQ,MAAoB,CAAC,GAAU,UAAU,CAAE,CAAC,EAAY,IAAS,QAAa,EAAO,qBAAqB,EAAO,oBAAoB,WAAW,EAAQ,GACjM,EAAG,iBAAiB,GAAG,GAAU,UAAS,GAAU,QAAQ,MAAM,QAAQ,IAAI,GAAU,QAAQ,MAAM,OAAO,GAAG,GAAU,QAAQ,MAAM,WAAW,GAAG,EAAG,iBAAiB,GAAO,EAAI,kBAAiB,EAAG,mBAAmB,IAC5N,EAAI,iBAAiB,EAAG,OAAO,CAAC,EAAG,eAAe,CACrD,IAAI,IAAM,KAAe,EAAG,kBAAkB,OAAO,EAAG,EAAY,QAAQ,EAAG,EAAG,kBAAkB,MAAM,EAAE,EAAG,0BAA0B,MAAM,EAAE,EAAG,iBAAiB,EAAG,MAAM,EAAG,eAAe,GAAK,EAAG,mBAAmB,GAAM,EAAG,iBAAiB,EAAE,EAAG,kBAAkB,EAG5Q,IAAM,EAAY,EAAG,iBAAiB,SAAS,MAAM,EAAQ,EAAY,EAAG,iBAAiB,SAAS,MAAM,EAAQ,EAAc,EAAG,iBAAiB,MAAM,MAAM,EAClK,EAAG,iBAAiB,SAAS,GAAO,CAAC,GAAG,EAAM,OAAO,CAAC,EAAG,0BAA0B,IAAI,EAAM,KAAK,EAAM,QAAQ,EAChH,IAAM,EAAY,GAAuB,EAAM,SAAS,CAAC,SAAS,GAAoB,EAAE,EAAI,kBAAkB,EAAI,iBAAiB,EAAE,WAAW,EAAI,mBAAmB,UAAU,EAAI,kBAAkB,UAAU,EAAI,kBAAkB,cAAc,EAAI,sBAAsB,kBAAkB,EAAI,yBAAyB,CAAC,EAAE,EAAG,kBAAkB,IAAI,EAAM,KAAK,CAAW,EAAE,EAAM,SAAS,CAAY,CAAC,CAAC,EAC5Y,EAAI,2BAA0B,GAAyB,EAAG,iBAAiB,EAAE,EAAG,kBAAkB,GAAwB,EAAG,iBAAiB,CAAG,EAAE,EAAG,kBAAkB,OAAO,SAAS,KAAK,CAAW,EAAE,EAAG,kBAAkB,OAAO,SAAS,KAAK,CAAW,EAAE,EAAG,kBAAkB,OAAO,MAAM,KAAK,CAAa,EAAE,EAAG,MAAM,IAAI,EAAG,kBAAkB,MAAM,EAAE,EAAG,kBAAkB,IAAI,SAAS,UAAU,MAAM,GAAoB,EAAE,EAAI,kBAAkB,EAAI,iBAAiB,GAC7b,EAAG,yBAAyB,EAAG,aAAa,EAAG,yBAAyB,EAAG,aAAa,EAAG,yBAAyB,EAAG,aAAa,EAAG,yBAAyB,EAAG,aAAa,EAAG,yBAAyB,EAAG,aAAa,EAAG,yBAAyB,EAAG,aAAa,EAAG,0BAA0B,EAAG,cAClU,EAAG,MAAM,KAAK,EAAG,WAAW,IAAK,MAAS,EAAG,QAAO,EAAG,mBAAmB,GAE1E,EAAG,MAAM,OAAO,EAAG,KAAK,EAAE,GAAsB,EAAG,KAAK,EAAE,EAAG,MAAM,KAAK,EAAG,WAAW,MAAS,EAAG,QAAO,GAAoC,EAAG,EAAG,KAAK,EAAE,EAAG,MAAM,cAAc,EAAE,EAAG,MAAM,KAAK,EAAG,uBAAuB,KAAK,EAAG,oBAAoB,GAAG,EAAG,yBAAyB,GAAG,EAAG,yBAAyB,GAAG,EAAG,sBAAsB,IAAI,IAAI,EAAG,+BAA+B,KAAK,EAAG,6BAA6B,KAAK,EAAG,qBAAqB,GAAM,EAAG,2BAA2B,GAAM,EAAG,6BAA6B,GAAG,EAAG,gCAAgC,IAAI,IAAM,EAAO,GAAa,EAAQ,EAAQ,GAAU,EAAO,IAAa,CAAqB,GAAjB,GAAoB,CAAC,GAAI,UAAU,CAAC,GAAI,MAAM,OAC3qB,GAAqB,CAAM,EAAE,IAAM,EAAe,GAAiC,EAAO,GAAY,CAAC,CAAC,EAAQ,EAAI,GAA4B,CAAM,EAAQ,EAAO,EAAI,UAAU,IAAIJ,CAAa,EAAQ,EAAK,EAAI,QAAQ,IAAIA,CAAa,EAAuD,EAAe,GAAvD,KAAK,IAAI,EAAK,EAAE,EAAK,EAAE,EAAK,CAAC,GAAG,GAAsC,EAAQ,IAAIK,GAAY,EAAO,SAAS,IAAI,CAAM,EAAE,EAAQ,IAAI,CAAM,EAAE,EAAQ,MAAM,UAAU,CAAc,EAAE,IAAM,EAAI,GAAY,QAAc,EAAS,GAAwB,EAAG,SAAS,CAAG,EAS9e,GATgf,EAAQ,SAAS,GAAO,CAAC,GAAG,EAAM,OAAO,CAAC,EAAM,WAAW,GAAK,EAAM,cAAc,GAE7lB,EAAM,cAAc,CAAC,EAAM,cAAc,IAAM,EAAK,MAAM,QAAQ,EAAM,QAAQ,EAAE,EAAM,SAAS,CAAC,EAAM,QAAQ,EAAE,IAAI,IAAM,KAAO,EAAK,CACrI,EAAI,MAAI,EAAI,IAAI,WAAW5B,IAAwB,EAAI,cAAY,EAAI,YAAY,WAAWA,IACX,IAAI,IAAM,IAAK,CAAtF,MAAM,YAAY,eAAe,eAAe,QAAQ,aAAoC,EAAM,EAAI,KAAI,EAAI,EAAE,CAAC,WAAW,EAAW,CAAC,CAAC,CAAC,EACzJ,GAAoB,CAAO,EAAE,EAAG,sBAAsB,GAAiB,CAAG,GAEvE,EAAG,gBAAgB,EAAG,oBAAoB,GAAG,EAAG,sBAAoB,EAAQ,QAAQ,IAAO,EAAG,MAAM,IAAI,CAAO,EAAE,EAAG,MAAM,EAAQ,EAAG,WAAW,EACnJ,AACA,EAAG,kBAAgB,KAAS,EAAI,cAAc,CAAC,IAAM,EAAG,IAAI6B,GAAiB,EAAI,mBAAmB,CAAC,EAAE,EAAG,YAAY,IAAI,EAAG,SAAS,UAAU,GAAM,EAAQ,IAAI,CAAE,EAAE,EAAG,gBAAgB,CAAG,CAC5L,IAAM,EAAoB,CAAC,EAAQ,EAAmB,CAAC,EACvD,SAAS,EAAe,EAAK,EAAM,CAAC,IAAM,EAAO,EAAK,QAAQ,EAAK,cAAoB,EAAQ,EAAK,SAAS,EAAK,WAAiB,EAAQ,CAAC,CAAC,EAAK,KAAK,GAAG,GAAQ,EAAQ,CAAC,EAAoB,KAAK,EAAK,IAAI,EAAE,IAAI,EAAM,EAAK,EAAK,UAAU,YAAY,WAAU,EAAM,EAAK,SAAS,WAAW,SAAS,OAAO,EAAmB,KAAK,CAAC,KAAK,EAAK,KAAK,KAAK,EAAK,cAAc,cAAc,OAAO,QAAM,QAAM,QAAQ,GAAM,eAAe,CAAC,CAAC,CAAE,MAAM,GAAG,GAAS,GAAS,IAAO,EAAO,CAC7d,IAAI,EAAU,EAAE,EAAK,SAAS,GAAG,CAAI,IAAI,IAAO,EAAE,QAAQ,EAAE,gBAAe,GAAY,CAAC,EAAK,EAAU,GAAG,EAAmB,KAAK,CAAC,KAAK,EAAK,KAAK,KAAK,QAAQ,QAAM,MAAM,EAAE,QAAQ,GAAK,eAAe,CAAS,CAAC,CAAG,CAAC,IAAI,IAAM,KAAS,EAAK,SAAU,EAAe,EAAM,GAAO,GAAS,IAAO,EAAO,EAAE,EAAE,CAAG,CAAC,EAAe,EAAO,CAAC,EAC3U,EAAG,qBAAqB,EAAoB,EAAG,oBAAoB,EAAmB,IAAM,EAAc,GAA4B,CAAO,EAC7I,GADiK,EAAc,UAAU,IAAIN,CAAa,EAAE,EAAG,OAAO,SAAS,IAAI,EAAI,gBAAgB,EAAI,gBAAgB,EAAI,eAAe,EAAE,EAAG,OAAO,KAAK,IAAI,EAAG,OAAO,IAAI,IAC9T,EAAQ,QAAQ,CAAC,IAAM,EAAG,EAAQ,QAAQ,YAAkB,EAAG,EAAQ,QAAQ,aAAa,GAAG,GAAI,EAAI,GAAG,EAAG,OAAO,qBAAqB,CAAC,IAAM,EAAO,EAAG,EAAG,EAAG,OAAO,KAAK,IAAgB,EAAO,EAAE,EAAG,OAAO,MAAA,GAAqB,EAAO,EAAE,EAAG,OAAO,IAAA,GAAmB,EAAE,EAAG,OAAO,OAAO,IAAgB,CAAE,KAAM,GAAG,OAAO,OAAO,EAAG,CAAK,CAAC,EAAG,OAAO,uBAAuB,EAAE,EAAG,SAAS,OAAO,IAAI,EAAE,EAAE,CAAC,EAAE,EAAG,SAAS,OAAO,EACta,IAAM,EAAS,EAAc,QAAQ,IAAIA,CAAa,EAAQ,EAAS,GAAiB,EAAG,OAAO,CAAQ,EAC1G,EAAG,eAAe,EAAe,EAAG,SAAS,EAC7C,EAAQ,qBAAqB,EAAe,EAAQ,eAAe,EAAS,IAAM,EAAG,KAAK,IAAI,IAAI,EAAI,YAAY,CAAC,EAG0Q,GAHxQ,EAAQ,MAAM,UAAU,EAAe,EAAS,CAAE,EACvK,GAAoB,EAAG,CAAG,EAAE,EAAG,eAAe,EAAI,WAAW,EAAG,YAAY,EAAI,aAAa,EAAG,YAAY,EAAI,aAAa,EAAG,YAAY,EAAI,aAAa,EAAG,SAAS,EAAI,eAAe,EAAG,SAAS,EAAI,eAAe,EAAG,SAAS,EAAI,gBAEvO,EAAG,gBAAgB,EAAG,sBAA4C,EAAG,aAAa,EAAG,yBAAyB,EAAG,aAAa,EAAG,yBAAyB,EAAG,aAAa,EAAG,yBAAyB,EAAG,aAAa,EAAG,yBAAyB,EAAG,aAAa,EAAG,yBAAyB,EAAG,aAAa,EAAG,yBAAyB,EAAG,cAAc,EAAG,2BAA8B,EAAG,mBAAmB,CAAC,IAAI,IAAM,KAAe,EAAG,kBAAkB,OAAO,EAAG,EAAY,QAAQ,EAAG,EAAG,kBAAkB,MAAM,EAAE,EAAG,0BAA0B,MAAM,EAAE,GAAyB,EAAG,CAAG,CAAE,CAA2F,GAAvF,GAA0B,CAAG,GAAG,GAAuB,EAAG,EAAI,GAAU,QAAQ,EAAI,EAAM,GAAgB,EAAe,OAAO,EAAE,CAAC,EAAG,MAAM,IAAIO,GAAqB,CAAM,EAAE,EAAG,WAAW,EAAe,GAAsB,EAAG,EAAG,MAAM,EAAe,CAAG,EAC30B,IAAM,EAAU,EAAe,IAAI,GAAG,EAAE,IAAI,CAAC,CAAC,OAAO,OAAO,EAAK,EAAU,QAAQ,MAAoB,CAAC,GAAsB,CAAS,CAAE,CAAC,EAAM,EAAI,kBAAiB,GAAyB,EAAG,EAAG,MAAM,EAAe,EAAI,EAAI,cAAc,EAAI,aAAa,EAAE,EAAG,MAAM,UAAU,EAAI,eAAgB,MAAM,MAAoB,CAAC,GAAsB,CAAC,CAAC,CAAE,CAAC,EAC/V,GAAG,EAAI,YAAY,GAAU,QAAQ,CAAC,IAAM,EAAU,EAAI,qBAAqB,GAAG,GAAU,QAAQ,MAAM,OAAO,QAAQ,EAAU,KAAK,GAAU,QAAQ,MAAM,WAAW,SAAS,EAAG,iBAAiB,YAAY,IAAI,CAAE,CAE1N,GAAG,EAAI,oBAAoB,CAAC,EAAU,CACtC,IAAM,EAAY,GAA4B,CAAO,EACrD,GAAqB,EAAG,CAAG,EAAE,GAAoB,EAAG,CAAG,EAAE,EAAG,cAAc,GAAgB,CAAG,EAAE,EAAG,iBAAiB,GAAa,CAAG,EAAE,EAAG,YAAY,GAAQ,CAAG,EAAE,EAAG,gBAAgB,GAAY,CAAG,EAAE,EAAG,iBAAiB,GACzN,GAAa,EAAQ,CAAC,EAAE,MAAoB,CAAC,GAAU,EAAE,CAAE,CAAC,EAClD,IAAS,QAAa,EAAO,qBAAqB,EAAO,oBAAoB,YAAY,GAAS,EAAE,EAC9G,GAA4B,EAAG,SAAS,EAAY,GAAU,CAC9D,IAAM,EAAQ,GAAG,EAAS,GAAa,IAAS,QAAa,EAAO,qBAAqB,EAAO,oBAAoB,YAAY,GAAS,CAAO,CAAG,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,EAAU,OAC7K,GAA6B,CAAO,EACpC,GAAsB,EAAQ,CAAG,EAAE,GAAuB,EAAG,CAAG,EAChE,IAAM,EAAQ,EAAI,yBAAyB,GAAS,EAAU,YAAY,IAAI,EAAE,EAAG,uBAAuB,GAAK,IAAM,MAAW,CAAC,GAAG,GAAW,CAAC,EAAG,uBAAuB,OAAO,IAAM,GAAS,YAAY,IAAI,EAAE,GAAW,IAAU,EAAE,KAAK,IAAI,EAAQ,EAAQ,CAAC,EACnQ,GAAa,EAAQ,CAAC,EAAK,EAAE,EAAG,sBAAsB,CAAM,GAAQ,GAAa,EAAQ,CAAC,EAAE,EAAG,uBAAuB,GACtH,GAAuB,EAAE,GAAoB,GAAmB,IAAS,QAAa,EAAO,sBAAqB,EAAO,oBAAoB,YAAY,GAAS,CAAC,EAAE,EAAO,oBAAoB,YAAY,EAAQ,GAAI,EAAE,sBAAsB,CAAM,CAAE,CAAC,CAAE,KAAK,CAEhQ,GAAsB,EAAQ,CAAG,EAAE,GAAqB,EAAG,CAAG,EAAE,GAAoB,EAAG,CAAG,EAC1F,GAAuB,EAAG,CAAG,EAC7B,GAAa,EAAQ,CAAC,EAAE,MAAoB,CAAC,GAAU,EAAE,CAAE,CAAC,EAC5D,GAAuB,EACvB,GAAG,CAAI,GAAoB,CAAG,GAAG,EAAQ,SAAS,EAAG,sBAAsB,EAAG,qBAAqB,EAAI,EAAQ,QAAQ,aAAa,EAAE,EAAQ,QAAQ,cAAc,CAAC,EAAG,EAAG,UAAU,OAAO,EAAW,EAAG,UAAU,EAAG,OAAO,EAAG,QAAQ,EAAG,SAAS,OAAO,EAAG,MAAM,EAAG,MAAM,CAAG,MAAS,CAAC,CAE3R,GAAoB,GAAmB,IAAS,QAAa,EAAO,qBAAqB,EAAO,oBAAoB,YAAY,GAAS,GAAG,EAAG,0BAA0B,CAAI,IAA2B,IAAS,QAAa,EAAO,qBAAqB,EAAO,oBAAoB,YAAY,GAAS,GAAG,EAAG,0BAA0B,CAAI,GAA2B,IAAS,QAAa,EAAO,sBAAqB,EAAO,oBAAoB,YAAY,GAAS,CAAC,EAAE,EAAO,oBAAoB,YAAY,EAAQ,EAAG,CAAC,EAAE,CAAC,CAAE,CAAC,EAAQ,EAAQ,GAAK,CAAK,IAAW,QAAQ,MAAM,CAAG,EAAE,MAAoB,CAAC,GAAU,GAAK,SAAS,YAAY,CAAE,CAAC,EAAE,GAAuB,EAC1oB,IAAS,QAAa,EAAO,qBAAqB,EAAO,oBAAoB,YAAY,EAAQ,EAAI,EACzG,EAAmB,GAAO,CAAC,GAAG,CAAC,EAAM,iBAAiB,OACxD,KAAkB,GAAiB,GAAK,GAAuB,GAAG,IAAM,EAAI,EAAM,OAAO,EAAM,MAAgB,IAAS,QAAa,EAAO,sBAAwB,EAAI,mBAAoB,EAAO,oBAAoB,YAAY,GAAS,EAAI,EAAE,EAAQ,EAAO,oBAAoB,YAAY,GAAS,EAAI,GAAG,EAAI,EAAE,GAAG,CAC9T,IAAM,EAAO,GAAY,IAAI,EAAQ,EAAE,GAAG,EAAO,CAAC,EAAU,GAAK,GAAK,CAAC,MAAM,EAAY,WAAW,GAAa,GAAkB,CAAM,EAAE,EAAS,EAAY,CAAW,CAAE,MAAS,GAAiB,IAAI,EAAQ,EACnN,GAAiB,IAAI,EAAQ,CAAC,CAAC,SAAS,CAAC,GAAG,EAAU,OAAO,IAAM,EAAU,GAAY,IAAI,EAAQ,EAAE,GAAG,EAAU,CAAC,EAAU,GAAK,GAAK,CAAC,MAAM,EAAY,WAAW,GAAa,GAAkB,CAAS,EAAE,EAAS,EAAY,CAAW,CAAE,MACnP,QAAQ,KAAK,oEAAoE,EAAM,EAAO,qBAAqB,WAAW,MAAoB,CAAC,GAAU,UAAU,CAAE,CAAC,EAAG,GAAiB,GAAS,EAAO,EAAS,EAAmB,CAAO,CAAG,CAAC,GAErP,GAAwB,EAAQ,EAAE,GAAiB,GAAS,EAAO,EAAS,EAAmB,CAAO,EAAG,OAAO,EAAI,CAAC,EAAQ,CAAG,CAAE,CAAC,UAAU,CAAC,EAAU,GACrJ,GAAS,UAAQ,GAAS,QAAQ,uBAAuB,IAAM,GAA0B,MAAM,CAGlG,CAAE,EAAE,CAAC,GAAS,GAAW,EAAkB,CAAC,EAAE,MAAc,CAAC,IAAM,EAAG,GAAS,QAAQ,GAAG,CAAC,GAAI,MAAM,OAAO,IAAI,EAAI,EAC0wD,MADxwD,GAAI,0BAA0B,CAAC,IAAM,EAAK,GAAS,QAAQ,GAAG,CAAC,GAAM,OAAO,IAAO,EAAG,OAAO,IAAM,EAAI,GAAY,QACzO,GADiP,GAAsB,EAAK,EAAK,MAAM,EAAK,WAAW,CAAG,EAAK,GAAiB,GAAyB,EAAK,EAAK,MAAM,EAAK,WAAW,EAAI,GAAc,EAAa,GAAQ,GAAoC,EAAK,EAAK,KAAK,EAAE,EAAK,MAAM,cAAc,EAAE,EAAK,uBAAuB,KAAK,EAAK,oBAAoB,GAAG,EAAK,yBAAyB,GAAG,EAAK,yBAAyB,IACzmB,EAAK,UAAU,CAAC,IAAM,EAAW,IAAe,CAAC,EAAQ,EAAY,CAAC,GAAG,EAAI,wBAAwB,IAAI,EAAE,IAAI,GAAK,CAAC,EAAI,KAAM,EAAK,UAAU,CAA+C,GAA3C,CAAC,EAAG,OAAO,CAAC,EAAG,YAAY,QAAmB,EAAG,OAAO,EAAG,MAAM,UAAU,GAAM,SAAS,GAAsB,EAAG,EAAG,MAAM,EAAG,WAAW,CAAG,EAAE,IAAM,EAAK,EAAW,GAAK,GAAG,GAAM,aAAa,CAAC,IAAM,EAAY,CAAC,WAAW,MAAoB,EAAK,UAAU,MAAM,EAAK,UAAU,GAAG,EAAI,wBAAwB,EAAE,KAAI,cAAkB,KAAI,mBAAuB,KAAI,yBAA6B,EAAI,mBAAmB,SAAS,EAA0B,CAAC,CAAC,KAAK,GAAG,EAAK,GAAoB,EAAG,gCAAgC,IAAa,EAAG,8BAA8B,EAAY,GAAgB,EAAG,MAAM,EAAG,WAAW,EAAK,UAAU,MAAM,EAAK,UAAU,GAAG,GAA0B,EAAG,CAAG,CAAC,IAAS,GAAoC,EAAG,EAAG,KAAK,EAAE,EAAG,MAAM,cAAc,EAAE,EAAG,uBAAuB,KAAK,EAAG,oBAAoB,GAAG,EAAG,yBAAyB,GAAG,EAAG,yBAAyB,GAAG,EAAG,8BAA8B,GAAI,KAAK,CAAC,IAAM,EAAU,CAAC,SAAS,MAAoB,GAAc,IAAe,GAAG,EAAI,wBAAwB,EAAE,KAAI,cAAkB,KAAI,mBAAuB,KAAI,yBAA6B,EAAI,mBAAmB,SAAS,KAAI,wBAA4B,MAAoC,EAA0B,CAAC,CAAC,KAAK,GAAG,EAAK,IAAiB,EAAG,yBAAyB,EAAK,yBAA4B,EAAG,gCAAgC,IAAW,EAAG,8BAA8B,EAAU,GAAyB,EAAG,EAAG,MAAM,EAAG,WAAW,EAAY,GAAc,EAAa,KAAS,GAAoC,EAAG,EAAG,KAAK,EAAE,EAAG,MAAM,cAAc,EAAE,EAAG,uBAAuB,KAAK,EAAG,oBAAoB,GAAG,EAAG,yBAAyB,GAAG,EAAG,yBAAyB,GAAG,EAAG,8BAA8B,GAAI,CAAC,CAAC,CAAC,CAAC,MAAY,qBAAqB,CAAG,CAAE,EAAE,CAAC,GAAgB,GAAc,GAAc,GAAuB,GAAc,GAAmB,GAAyB,EAAkB,GAAwB,GAAmB,GAAgC,GAA2B,EAAoB,CAAC,EAC/qE,MAAc,CAAC,IAAM,EAAG,GAAS,QAAQ,GAAG,CAAC,GAAI,MAAM,OAAO,IAAI,EAAI,EAAujB,MAArjB,GAAI,0BAA0B,CAAC,IAAM,EAAK,GAAS,QAAW,MAAC,GAAM,OAAO,IAAO,KAAa,EAAK,MAAM,YAAY,KAAgB,EAAK,MAAM,UAAU,IAAmB,EAAK,WAAU,CAAC,IAAM,EAAW,IAAe,CAAC,EAAE,IAAI,GAAK,CAAC,EAAI,KAAM,EAAK,UAAU,CAAuB,GAAnB,CAAC,EAAG,OAAkB,EAAG,OAAO,EAAG,MAAM,UAAU,GAAM,SAAS,IAAM,EAAK,EAAW,GAAQ,GAAM,cAAc,EAAK,WAAW,KAAS,EAAG,MAAM,YAAY,EAAK,YAAW,EAAG,MAAM,UAAU,EAAK,WAAoB,EAAG,MAAM,YAAY,KAAgB,EAAG,MAAM,UAAU,GAAiB,CAAC,CAAC,CAAC,MAAY,qBAAqB,CAAG,CAAE,EAAE,CAAC,GAAe,EAAoB,CAAC,EAAE,MAAc,CAAC,IAAM,EAAG,GAAS,QAAY,IAAU,EAAG,OAAO,SAAS,IAAI,GAAgB,GAAgB,EAAe,EAAE,EAAG,SAAS,OAAO,EAAE,EAAE,CAAC,GAAgB,GAAgB,EAAe,CAAC,EACj5B,MAAc,CAAC,IAAM,EAAG,GAAS,QAAY,GAAI,QAAQ,uBAA4B,EAAG,OAAO,KAAK,GAAU,EAAG,OAAO,uBAAuB,EAAE,EAAE,CAAC,EAAS,CAAC,EAC9J,MAAc,CAAC,IAAM,EAAG,GAAS,QAAY,GAAI,eAAoB,EAAG,aAAa,OAAO,GAAa,EAAE,CAAC,EAAY,CAAC,EACzH,MAAc,CAAC,IAAM,EAAG,GAAS,QAAY,OAC7C,AAAqH,EAAG,cAAtG,EAAG,MAAM,OAAO,EAAG,UAAU,EAAE,EAAG,WAAW,UAAU,QAAQ,EAAE,EAAG,WAAW,UAAU,QAAQ,EAAgB,MAAS,IAAS,CAAC,IAAM,EAAE,IAAIC,GAAiB,GAAa,GAAkB,GAAW,EAAc,EAAE,GAAW,EAAc,CAAC,EAAE,EAAE,SAAS,YAAY,GAAK,EAAE,SAAS,QAAQ,GAAG,EAAE,SAAS,WAAW,GAAM,EAAE,YAAY,GAAG,EAAG,MAAM,IAAI,CAAC,EAAE,EAAG,WAAW,CAAE,CAAC,EAAE,CAAC,GAAS,GAAa,GAAkB,GAAe,EAAc,CAAC,EACld,MAAc,CAAC,IAAM,EAAG,GAAS,QAAY,OAC7C,AAAqN,EAAG,cAAtM,EAAG,MAAM,OAAO,EAAG,UAAU,EAAE,EAAG,WAAW,UAAU,QAAQ,EAAK,MAAM,QAAQ,EAAG,WAAW,QAAQ,EAAG,EAAG,WAAW,SAAS,QAAQ,GAAG,EAAE,QAAQ,CAAC,EAAQ,EAAG,WAAW,UAAU,QAAQ,EAAiB,MAAS,IAAS,CAAC,IAAM,EAAE,IAAIF,GAAiB,EAAY,EAAE,EAAE,YAAY,IAAI,EAAE,SAAS,UAAU,GACvU,EAAG,MAAM,IAAI,CAAC,EAAE,EAAG,WAAW,CAAE,CAAC,EAAE,CAAC,GAAS,EAAY,CAAC,EAC3D,MAAc,CAAC,IAAM,EAAG,GAAS,QAAY,OAC7C,AAAqQ,EAAG,mBAAjP,EAAG,gBAAgB,QAAQ,OAAO,EAAG,eAAe,EAAE,EAAG,gBAAgB,UAAU,QAAQ,EAAK,MAAM,QAAQ,EAAG,gBAAgB,QAAQ,EAAG,EAAG,gBAAgB,SAAS,QAAQ,GAAG,EAAE,QAAQ,CAAC,EAAQ,EAAG,gBAAgB,UAAU,QAAQ,EAAsB,MAAS,IAAe,EAAG,OAAM,CAAC,IAAM,EAAG,IAAIA,GAAiB,EAAiB,EAAE,EAAG,YAAY,IAAI,EAAG,SAAS,UAAU,GAAM,EAAG,MAAM,IAAI,CAAE,EAAE,EAAG,gBAAgB,CAAG,CAAC,EAAE,CAAC,GAAc,EAAiB,CAAC,EACre,MAAc,CAAC,IAAM,EAAG,GAAS,QAAQ,GAAG,CAAC,EAAG,OAAO,IAAI,EAAU,GAC/D,EAAQ,IAAI,IAAI,IAAI,IAAI,EAAE,EAAE,EAAE,GAAc,OAAO,IAAI,CAAC,IAAM,EAAK,GAAc,GAAM,GAAM,EAAK,UAAU,EAAK,SAAS,KAAK,GAAG,EAAQ,IAAI,EAAE,EAAK,SAAS,KAAK,CAAC,CAAG,CAAC,IAAM,EAAY,EAAQ,KAAS,EAAY,EAAQ,MAA0B,CAAC,IAAc,MAAoB,CAAC,EAAmB,CAAC,OAAO,EAAY,MAAM,CAAW,CAAC,CAAE,CAAC,CAAE,EACjW,IAAI,GAAK,CAAC,EAAI,KAAM,EAAG,UAAc,EAAG,SAAS,EAAQ,IAAI,CAAG,GAAG,EAAQ,IAAI,CAAG,IAAI,EAAG,WAAW,IAAgB,MAAoB,CAAC,EAAmB,CAAC,OAAO,EAAY,MAAM,CAAW,CAAC,CAAE,CAAC,EACrM,IAAM,EAAe,IAAI,IAEzB,IAAI,GAAK,CAAC,EAAI,KAAM,EAAG,UAAU,CAAC,IAAM,EAAQ,EAAQ,IAAI,CAAG,EAAM,EACZ,IAAU,EAAG,YACtE,EAAe,IAAI,EAAI,CAAE,EAAE,EAAG,UAAU,OAAO,CAAG,IADlD,GAAgB,EAAG,CAAE,EAAE,EAAG,UAAU,OAAO,CAAG,EACO,CACrD,IAAI,GAAK,CAAC,EAAI,KAAO,EAAQ,CAAC,GAAG,EAAG,UAAU,IAAI,CAAG,EAAE,SACvD,IAAM,EAAM,EAAe,IAAI,CAAG,EAElC,EAAG,UAAU,IAAI,EAAI,CAAC,MAAM,KAAK,WAAW,KAAK,MAAM,KAAK,WAAW,CAAC,EAAE,eAAe,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAI,QAAQ,GACzI,UAAU,GAAO,KAAK,8BAA8B,EAAE,CAAC,EAAE,IAAM,EAAO,GAAa,CAAG,EAAQ,EAAY,GAAkB,CAAG,EAAQ,GAAa,EAAO,IAAa,CAAqB,GAAjB,GAAoB,CAAC,GAAI,UAAU,CAAC,GAAI,OAAO,CAAC,GAAI,OAAO,OAAO,IAAM,EAAI,GAAY,QAAQ,GAAqB,CAAM,EAAE,IAAM,EAAe,GAAiC,EAAO,GAAY,CAAC,CAAC,EAAQ,EAAI,GAA4B,CAAM,EAAQ,EAAO,EAAI,UAAU,IAAIN,CAAa,EAAQ,EAAK,EAAI,QAAQ,IAAIA,CAAa,EAAuD,EAAe,GAAvD,KAAK,IAAI,EAAK,EAAE,EAAK,EAAE,EAAK,CAAC,GAAG,GAAsC,EAAM,IAAIK,GAAY,EAAO,SAAS,IAAI,CAAM,EAAE,EAAM,IAAI,CAAM,EAAE,EAAM,MAAM,UAAU,CAAC,EAAE,GAAS,KAAK,GAA4B,CAAK,CAAC,EAAE,IAAM,EAAW,GAAS,UAAU,IAAIL,CAAa,EAAQ,EAAS,GAAS,IAAI,EAAE,EAAM,MAAM,UAAU,CAAc,EACv1B,IAAM,EAAS,GAAwB,EAAG,SAAS,CAAG,EAAE,EAAM,SAAS,GAAO,CAAC,GAAG,EAAM,OAAO,CAAC,EAAM,WAAW,CAAC,EAAY,EAAM,cAAc,CAAC,EAAY,EAAM,cAAc,CAAC,EAAM,cAAc,IAAM,EAAK,MAAM,QAAQ,EAAM,QAAQ,EAAE,EAAM,SAAS,CAAC,EAAM,QAAQ,EAAE,IAAI,IAAM,KAAO,EAAK,CAAI,EAAI,MAAI,EAAI,IAAI,WAAWvB,IAAwB,EAAI,cAAY,EAAI,YAAY,WAAWA,IAA2G,IAAI,IAAM,IAAK,CAAtF,MAAM,YAAY,eAAe,eAAe,QAAQ,aAAoC,EAAM,EAAI,KAAG,EAAI,EAAE,CAAC,WAAW,EAAU,CAAC,CAAC,CAAC,EAC9f,IAAM,EAAzC,GAA4B,CAAkC,CAAC,CAAC,QAAQ,IAAIuB,CAAa,EAAQ,EAAS,GAAiB,EAAG,OAAO,CAAQ,EACrH,GAA5B,EAAI,eAAe,CAAC,EAAA,CAAuB,IAAM,GAAc,GAAW,EAAQ,KAAK,IAAI,IAAI,GAAM,OAAO,CAAC,EAAE,EAAM,MAAM,UAAU,EAAe,EAAS,CAAO,EACpL,IAAM,EAAY,EAAG,UAAU,IAAI,CAAG,EAAE,EAAM,QAAQ,GAAM,UAAU,GAAM,EAAG,MAAM,IAAI,CAAK,EAC1F,GAAa,GAAsB,EAAM,CAAG,EAC7C,GAAa,WAAW,GAAgB,EAAG,EAAY,SAAS,EAAG,IAAI,EAAM,KAAW,EAAkB,CAAC,uBAAuB,KAAK,oBAAoB,GAAG,yBAAyB,GAAG,yBAAyB,GAAG,8BAA8B,GAAG,sBAAsB,IAAI,IAAI,+BAA+B,KAAK,6BAA6B,KAAK,qBAAqB,GAAM,yBAAyB,EAAG,yBAAyB,2BAA2B,GAAM,6BAA6B,GAAG,gCAAgC,EAAE,EAAE,GAAG,GAAgB,EAAe,OAAO,IAAG,EAAM,IAAIO,GAAqB,CAAM,EAAE,GAAsB,EAAkB,EAAM,EAAe,CAAG,EAAK,EAAI,iBAAgB,CAC/rB,IAAM,EAAY,GAAM,aAAmB,EAAa,GAAM,UAAU,GAAS,EAAS,EAAY,OAAO,CAAY,CAAC,CAAC,KAAK,EAAE,SAAS,MAAM,EAAI,cAAoB,EAAS,EAAY,EAAa,EAAI,cAAc,GAAG,EAAa,GAAgB,EAAM,EAAe,EAAS,EAAS,GAA0B,EAAkB,CAAG,CAAC,MAAO,CAAC,IAAM,EAAY,CAAC,GAAG,EAAI,wBAAwB,IAAI,EAAE,GAAyB,EAAkB,EAAM,EAAe,EAAY,EAAS,CAAQ,CAAE,CAChf,GAAa,EAAK,WAAW,KAAM,EAAM,UAAU,EAAK,UAAgB,EAAM,UAAU,EAAI,cAAgB,CAC/G,IAAM,EAAW,EAAI,sBAAsB,CAAC,MAAM,GAAM,OAAO,EAAE,KAAK,GAAM,MAAM,EAAE,KAAK,GAAM,MAAM,EAAE,KAAK,GAAM,MAAM,EAAE,KAAK,GAAM,MAAM,EAAE,KAAK,GAAM,MAAM,EAAE,KAAK,GAAM,MAAM,CAAC,EAAE,KAAK,EAAG,UAAU,IAAI,EAAI,CAAC,QAAM,WAAW,EAAO,QAAM,WAAW,GAAgB,CAAC,EAAE,iBAAe,WAAS,WAAW,EAAE,UAAU,EAAI,QAAQ,GAAK,UAAU,KAAK,aAAa,EAAW,uBAAuB,EAAkB,uBAAuB,oBAAoB,EAAkB,oBAAoB,yBAAyB,EAAkB,yBAAyB,yBAAyB,EAAkB,yBAAyB,8BAA8B,EAAkB,8BAA8B,sBAAsB,EAAkB,sBAAsB,+BAA+B,EAAkB,+BAA+B,6BAA6B,EAAkB,6BAA6B,qBAAqB,EAAkB,qBAAqB,yBAAyB,EAAkB,yBAAyB,2BAA2B,EAAkB,2BAA2B,6BAA6B,EAAkB,6BAA6B,gCAAgC,EAAkB,gCAAgC,eAAe,CAAC,CAAC,EAAY,aAAa,EAAW,EAAE,aAAa,EAAW,EAAE,aAAa,EAAW,EAAE,UAAU,CAAQ,CAAC,EAAE,EAAsB,CAAE,EAAQ,EAAW,GAAK,CAAC,GAAG,CAAC,EAAU,CAAC,QAAQ,KAAK,aAAa,EAAI,cAAc,CAAG,EACj/C,IAAM,EAAY,EAAG,UAAU,IAAI,CAAG,EAAK,GAAa,YAAW,GAAgB,EAAG,EAAY,SAAS,EAAE,EAAY,UAAU,KAAM,CAAC,EAAsB,CAC/J,EAAE,GAAG,CAAC,GAAG,EAAY,CAAC,GAAoB,EAAI,EAAG,SAAS,EAAY,CAAU,EAAE,QAAS,CAC5F,IAAM,EAAO,GAAY,IAAI,CAAG,EAAE,GAAG,EAAO,CAAC,GAAK,CAAC,MAAM,EAAY,WAAW,GAAa,GAAkB,CAAM,EAAE,EAAY,EAAY,CAAW,CAAE,MAAS,GAAiB,IAAI,CAAG,EAC7L,GAAiB,IAAI,CAAG,CAAC,CAAC,SAAS,CAAC,GAAG,EAAU,OAAO,IAAM,EAAU,GAAY,IAAI,CAAG,EAAE,GAAG,EAAU,CAAC,GAAK,CAAC,MAAM,EAAG,WAAW,GAAI,GAAkB,CAAS,EAAE,EAAY,EAAG,CAAE,CAAE,MAAM,GAAiB,EAAI,EAAO,EAAY,IAAA,GAAU,CAAU,CAAG,CAAC,EAAQ,GAAiB,EAAI,EAAO,EAAY,IAAA,GAAU,CAAU,CAAG,OAAO,EAAI,CAAC,EAAW,CAAG,CAAE,CAAC,CAAC,UAAU,CAAC,EAAU,GACzX,IAAI,GAAK,EAAE,KAAM,EAAG,UAAW,AAAkD,EAAG,aAApC,GAAgB,EAAG,EAAG,SAAS,EAAe,KAAO,CAAE,EAAE,CAAC,GAAoB,EAAkB,CAAC,EAKjJ,IAAM,GAAgB,EAAoB,IAAI,EAAoC,CAAC,CAAC,KAAK,GAAI,GAAI,WAAW,EAAG,uBAAuB,GAAK,EAAuE,IAA3C,GAAqB,KAAgE,GAA0B,GAAY,GAAqB,OAAO,UAAkG,GAA1D,KAAqB,YAAY,GAAqE,CAAC,SAAS,GAAmB,OAAO,GAAa,IAAI,GAAU,KAAK,GAAW,GAAG,KAAc,MAAM,KAAc,GAAG,CAAC,MAAM,EAAW,EAAE,CAAC,EAAE,GAAG,KAAe,MAAM,KAAe,GAAG,CAAC,OAAO,EAAY,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,OAAoB,EAAM,MAAM,CAAC,IAAI,EAAQ,GAAG,GAAiB,iCAAiC,GAAO,MAAM,CAAC,MAAM,OAAO,OAAO,OAAO,GAAG,EAAM,GAAG,GAAoB,OAAO,GAAY,SAAS,SAAS,WAAW,GAAsB,cAAc,IAAA,GAAU,cAAc,GAAqB,OAAO,OAAO,YAAY,EAAoB,QAAQ,MAAM,EAAE,SAAS,CAAC,IAAmC,EAAK,SAAS,CAAC,IAAI,GAAU,oBAAoB,GAAS,MAAM,CAAC,QAAQ,QAAQ,MAAM,OAAO,OAAO,OAAO,QAAQ,EAAE,cAAc,GAAqB,OAAO,OAAO,YAAY,EAAoB,QAAQ,MAAM,CAAC,CAAC,EAAE,IAAoB,IAA6B,EAAM,MAAM,CAAC,MAAM,CAAC,SAAS,WAAW,MAAM,EAAE,QAAQ,OAAO,cAAc,SAAS,WAAW,SAAS,eAAe,SAAS,WAAW,2BAA2B,eAAe,YAAY,OAAO,uCAAuC,aAAa,GAAG,QAAQ,GAAG,UAAU,SAAS,IAAI,GAAG,MAAM,OAAO,WAAW,OAAO,SAAS,QAAQ,EAAE,SAAS,CAAc,EAAM,MAAM,CAAC,MAAM,KAAK,OAAO,KAAK,QAAQ,YAAY,KAAK,OAAO,OAAO,0BAA0B,YAAY,MAAM,cAAc,QAAQ,eAAe,QAAQ,SAAS,CAAc,EAAK,OAAO,CAAC,EAAE,2HAA2H,CAAC,EAAe,EAAK,WAAW,CAAC,OAAO,+BAA+B,CAAC,EAAe,EAAK,OAAO,CAAC,GAAG,KAAK,GAAG,QAAQ,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,EAAe,EAAK,MAAM,CAAC,MAAM,CAAC,SAAS,GAAG,WAAW,IAAI,cAAc,SAAS,QAAQ,GAAG,WAAW,4FAA4F,EAAE,SAAS,wCAAwC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAoB,CAAC,IAA6B,EAAK,MAAM,CAAC,+BAA+B,OAAO,MAAM,CAAC,MAAM,OAAO,OAAO,OAAO,cAAc,OAAO,WAAW,aAAa,CAAC,CAAC,EAAE,IAAgB,IAA0B,EAAK,MAAM,CAAC,MAAM,CAAC,SAAS,WAAW,KAAK,KAAK,IAAI,GAAY,EAAE,IAAI,EAAQ,SAAS,aAAa,KAAK,GAAG,EAAE,IAAI,KAAK,IAAI,GAAY,EAAE,GAAG,CAAC,EAAE,cAAc,OAAO,OAAO,GAAG,EAAE,SAAsB,EAAM,MAAM,CAAC,MAAM,CAAC,WAAW,mBAAmB,OAAO,mCAAmC,aAAa,EAAE,QAAQ,WAAW,eAAe,aAAa,SAAS,IAAI,SAAS,GAAG,EAAE,SAAS,CAAc,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,WAAW,SAAS,IAAI,EAAE,aAAa,CAAC,EAAE,SAAS,CAAc,EAAK,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,WAAW,GAAY,OAAO,cAAc,UAAU,SAAS,CAAC,CAAC,EAAe,EAAK,OAAO,CAAC,MAAM,CAAC,MAAM,OAAO,WAAW,IAAI,SAAS,GAAG,cAAc,SAAS,EAAE,SAAS,GAAY,IAAI,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,SAAS,OAAO,IAAI,WAAW,UAAU,CAAC,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,QAAQ,eAAe,QAAQ,UAAU,aAAa,EAAE,SAAS,EAAE,WAAW,GAAY,OAAO,cAAc,wBAAwB,wBAAwB,MAAM,GAAY,OAAO,cAAc,UAAU,UAAU,OAAO,aAAa,GAAY,OAAO,cAAc,uBAAuB,wBAAwB,EAAE,SAAS,GAAY,IAAI,CAAC,EAAe,EAAM,OAAO,CAAC,MAAM,CAAC,MAAM,wBAAwB,SAAS,EAAE,EAAE,SAAS,CAAC,GAAY,MAAM,eAAe,EAAE,QAAQ,CAAC,CAAC,EAAE,GAAY,KAAkB,EAAK,OAAO,CAAC,MAAM,CAAC,MAAM,wBAAwB,SAAS,EAAE,EAAE,SAAS,GAAY,GAAG,CAAC,CAAC,CAAC,CAAC,EAAe,EAAK,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,wBAAwB,SAAS,EAAE,UAAU,WAAW,EAAE,SAAS,GAAY,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAgB,GAAgB,SAAS,OAAO,SAAW,IAAYE,EAA0B,EAAK,MAAM,CAAC,MAAM,CAAC,SAAS,QAAQ,KAAK,KAAK,IAAI,GAAgB,EAAE,GAAU,IAAS,OAAkC,IAAtB,EAAO,WAAW,GAAO,EAAE,IAAI,KAAK,IAAI,GAAgB,EAAE,GAAG,CAAC,EAAE,cAAc,OAAO,OAAO,UAAU,EAAE,SAAsB,EAAK,MAAM,CAAC,MAAM,CAAC,WAAW,mBAAmB,MAAM,OAAO,QAAQ,WAAW,aAAa,EAAE,SAAS,GAAG,WAAW,wBAAwB,WAAW,SAAS,UAAU,4BAA4B,OAAO,kCAAkC,SAAS,IAAI,SAAS,SAAS,aAAa,UAAU,EAAE,SAAS,GAAgB,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,IAAI,EAAe,EAAK,MAAM,CAAC,MAAM,CAAC,SAAS,WAAW,KAAK,KAAK,IAAI,GAAgB,EAAE,IAAI,EAAQ,SAAS,aAAa,KAAK,GAAG,EAAE,IAAI,KAAK,IAAI,GAAgB,EAAE,GAAG,CAAC,EAAE,cAAc,OAAO,OAAO,MAAM,EAAE,SAAsB,EAAK,MAAM,CAAC,MAAM,CAAC,WAAW,mBAAmB,MAAM,OAAO,QAAQ,WAAW,aAAa,EAAE,SAAS,GAAG,WAAW,wBAAwB,WAAW,SAAS,UAAU,4BAA4B,OAAO,kCAAkC,SAAS,IAAI,SAAS,SAAS,aAAa,UAAU,EAAE,SAAS,GAAgB,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,IAAgB,GAAS,SAAS,qBAAqB,OAAO,GAAG,IAA6B,EAAM,MAAM,CAAC,MAAM,CAAC,SAAS,WAAW,MAAM,GAAG,IAAI,GAAG,UAAU,MAAM,UAAU,OAAO,QAAQ,QAAQ,SAAS,GAAG,MAAM,yBAAyB,WAAW,kBAAkB,aAAa,EAAE,eAAe,aAAa,cAAc,OAAO,SAAS,IAAI,SAAS,IAAI,WAAW,IAAI,OAAO,GAAG,OAAO,kCAAkC,EAAE,SAAS,CAAc,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,eAAe,SAAS,GAAG,MAAM,wBAAwB,aAAa,kCAAkC,aAAa,EAAE,QAAQ,OAAO,WAAW,SAAS,IAAI,CAAC,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,QAAQ,eAAe,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,WAAW,SAAS,CAAC,CAAC,EAAe,EAAK,OAAO,CAAC,MAAM,CAAC,WAAW,IAAI,MAAM,uBAAuB,EAAE,SAAS,iBAAiB,CAAC,EAAe,EAAM,OAAO,CAAC,MAAM,CAAC,WAAW,OAAO,SAAS,CAAC,EAAE,SAAS,CAAC,GAAS,QAAQ,qBAAqB,OAAO,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAS,QAAQ,oBAAoB,KAAK,EAAK,IAAI,CAAC,IAAM,EAAU,IAAa,OAAO,EAAK,KAAW,EAAO,EAAK,MAAM,GAAG,GAAG,EAAK,QAClgN,OAAoB,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,gBAAgB,GAAG,EAAO,IAAI,WAAW,SAAS,SAAS,SAAS,aAAa,WAAW,QAAQ,OAAO,WAAW,SAAS,IAAI,EAAE,UAAU,EAAE,EAAE,mCAAmC,OAAO,UAAU,IAAE,EAAK,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,UAAU,WAAW,CAAC,EAAE,SAAS,GAAG,CAAC,EAAe,EAAK,OAAO,CAAC,MAAM,CAAC,WAAW,IAAI,SAAS,GAAG,MAAM,UAAU,cAAc,QAAQ,EAAE,SAAS,EAAK,IAAI,CAAC,EAAe,EAAK,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,yBAAyB,WAAW,OAAO,WAAW,EAAE,QAAQ,UAAU,aAAa,EAAE,WAAW,uBAAuB,OAAO,iCAAiC,EAAE,SAAS,EAAK,cAAc,CAAC,CAAC,CAAC,EAAE,KAAK,GAAG,EAC5tB,IAAM,EAAU,EAAK,OAAO,cAAc,CAAC,GAAG,wBAAwB,OAAO,uBAAuB,KAAK,SAAS,EAAE,CAAC,GAAG,uBAAuB,OAAO,wBAAwB,KAAK,SAAS,EAAE,OAAoB,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,gBAAgB,GAAG,EAAO,IAAI,WAAW,SAAS,SAAS,SAAS,aAAa,WAAW,QAAQ,OAAO,WAAW,SAAS,IAAI,EAAE,MAAM,EAAU,UAAU,wBAAwB,WAAW,EAAU,uBAAuB,cAAc,WAAW,gCAAgC,SAAS,EAAE,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,MAAM,WAAW,EAAU,UAAU,wBAAwB,WAAW,CAAC,CAAC,CAAC,EAAe,EAAK,OAAO,CAAC,MAAM,CAAC,SAAS,SAAS,aAAa,UAAU,EAAE,SAAS,EAAK,IAAI,CAAC,EAAe,EAAK,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,EAAU,KAAK,QAAQ,QAAQ,aAAa,EAAE,WAAW,EAAU,GAAG,OAAO,aAAa,EAAU,SAAS,WAAW,EAAE,WAAW,MAAM,EAAE,SAAS,EAAK,OAAO,cAAc,OAAO,MAAM,CAAC,EAAe,EAAK,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,wBAAwB,WAAW,CAAC,EAAE,SAAS,EAAK,MAAM,IAAI,IAAI,EAAK,MAAM,IAAA,CAAK,QAAQ,CAAC,EAAE,GAAG,EAAK,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,GAAG,CAAE,CAAC,EAAe,EAAK,MAAM,CAAC,MAAM,CAAC,QAAQ,eAAe,SAAS,EAAE,MAAM,wBAAwB,UAAU,mCAAmC,UAAU,CAAC,EAAE,SAAS,gCAAgC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAqB,EAAK,MAAM,CAAC,MAAM,CAAC,SAAS,WAAW,KAAK,MAAM,IAAI,MAAM,UAAU,wBAAwB,QAAQ,YAAY,SAAS,GAAG,WAAW,mBAAmB,MAAM,OAAO,aAAa,GAAG,eAAe,YAAY,cAAc,MAAM,EAAE,SAAS,EAAM,CAAC,EAAE,CAAC,IAAQ,GAAgB,MAAM,GAAG,GAAgB,OAAO,GAAgB,OAAoB,EAAM,MAAM,CAAC,MAAM,CAAC,SAAS,WAAW,KAAK,MAAM,OAAO,GAAG,UAAU,mBAAmB,QAAQ,WAAW,SAAS,GAAG,WAAW,kBAAkB,MAAM,wBAAwB,aAAa,EAAE,eAAe,YAAY,cAAc,OAAO,WAAW,QAAQ,EAAE,SAAS,CAAC,cAAc,GAAgB,OAAO,IAAI,GAAgB,KAAK,CAAC,CAAC,EAAE,IAAiB,GAAmB,OAAO,GAAG,IAA6B,EAAM,MAAM,CAAC,MAAM,CAAC,SAAS,WAAW,KAAK,GAAG,OAAO,GAAG,UAAU,MAAM,UAAU,OAAO,QAAQ,QAAQ,SAAS,GAAG,MAAM,yBAAyB,WAAW,mBAAmB,aAAa,EAAE,eAAe,YAAY,cAAc,OAAO,SAAS,IAAI,WAAW,GAAG,EAAE,SAAS,CAAc,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,eAAe,SAAS,EAAE,MAAM,yBAAyB,aAAa,kCAAkC,aAAa,CAAC,EAAE,SAAS,CAAC,eAAe,GAAmB,OAAO,GAAG,CAAC,CAAC,EAAE,GAAmB,IAAI,GAAmB,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,WAAW,OAAO,UAAU,WAAW,KAAgB,UAAU,KAAgB,EAAK,uBAAuB,cAAc,MAAM,KAAgB,UAAU,KAAgB,EAAK,UAAU,yBAAyB,WAAW,QAAQ,EAAE,SAAS,CAAC,KAAgB,OAAO,KAAgB,UAAU,KAAgB,EAAK,KAAK,MAAM,CAAI,CAAC,EAAE,CAAI,CAAC,EAAE,KAAgB,OAAoB,EAAK,MAAM,CAAC,MAAM,CAAC,QAAQ,WAAW,SAAS,EAAE,MAAM,yBAAyB,UAAU,kCAAkC,UAAU,CAAC,EAAE,SAAS,iBAAiB,CAAC,CAAC,CAAC,CAAC,EAAE,IAAc,GAAqB,CAAC,IAAqB,EAAM,MAAM,CAAC,MAAM,CAAC,SAAS,WAAW,MAAM,GAAG,OAAO,GAAG,QAAQ,UAAU,SAAS,EAAE,MAAM,yBAAyB,WAAW,kBAAkB,aAAa,EAAE,cAAc,OAAO,WAAW,IAAI,UAAU,OAAO,EAAE,SAAS,CAAC,gBAAgB,GAAW,oBAAuB,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,2CA1d7/G,KAAsN,KAAwK,KAAoM,KAA8H,KAAwK,KAA6Q,KAAoM,KAA+K,KAAsO,KAA2J,KAA8H,KAAoP,KAAmJ,KAA2K,KAAiR,KAA0d,KAAsjB,KAAmR,KAAolB,KAAsK,EAA+1B,GAAoB,KAAsF,GAAmB,EAAM,GAAkB,EAI52L,GAAwB,KAAS,GAAwB,EAAM,GAAiB,GA+e1E,GAAK,CAAC,UAAU,EAAmB,yBC5eiC,KAAwQ,KAAuI,KAAoM,KAAwI,KAA+S,KAA2H,KAAsP,KAAsL,KAAwJ,KAAkT,KAA2J,KAA8H,KAAmJ,KAAwO,KAA2K,KAAqK,KAAsQ,KAAgI,KAAyJ,KAA+Y,EACj9H,QAAU,CACe,IAAM,EAA4B,IAA0C,EAAiB,KAAS,EAAgB,KAAS,EAAe,KAAS,EAAmB,KAE5M,EAAgB,KAAS,EAAuB,GAAM,SAAS,GAAgC,CAAI,GAAiB,IAA8B,EAAuB,GAAK,GAAmB,CAAC,CAAC,KAAK,GAAM,CAAC,EAAgB,EAAK,EAAuB,EAAM,CAAC,CAAC,CAAC,MAAM,GAAK,CAAC,EAAuB,GAAM,QAAQ,KAAK,2DAA2D,CAAG,CAAE,CAAC,EAAE,CAAC,IAAM,EAAgB,IAAI,IAAU,EAAkB,IAAI,IAAU,EAA0B,GAAW,SAAS,GAAoB,CAAqR,OAAhR,IAAiB,EAAiB,IAAIC,GAAY,EAAiB,eAAe,yDAAyD,EAAE,EAAgB,IAAIC,GAAW,EAAgB,eAAe,CAAgB,EAAE,EAAgB,kBAAkBC,EAAc,GAAU,CAAgB,CAAC,eAAe,GAAmB,CAAC,GAAG,CAAC,EAAe,CAAC,IAAM,EAAU,MAAM,GAAe,EAAE,AAAmB,IAAe,IAAI,CAAU,CAAC,OAAO,CAAe,CAAC,SAAS,GAAuB,CAAuE,MAAtE,CAAuB,IAAmB,GAA0B,EAAS,CAAmB,CAAC,SAAS,EAAuB,EAAM,CAAC,IAAM,EAAO,GAAO,aAAa,MAAY,EAAQ,GAAO,WAAW,GAAS,EAAI,GAAO,UAAU,GAAO,cAAc,GAAG,OAAO,OAAO,IAAS,OAAO,GAAS,EAAI,GAAK,CAAO,CAAC,CAAC,KAAK,CAAE,CAAC,SAAS,EAAwB,EAAK,CAAC,IAAM,EAAM,GAAM,OAAO,CAAC,EAAQ,EAAK,EAAM,aAAa,CAAC,EAAQ,EAAG,EAAM,IAAI,CAAC,EAAE,OAAO,EAAK,aAAa,EAAG,aAAa,EAAK,CAAC,SAAS,EAAsB,EAAK,CAAuB,GAAnB,CAAC,GAAM,IAAe,CAAC,EAAwB,CAAI,EAAE,MAAM,GAAG,IAAM,EAAI,EAAuB,EAAK,KAAK,EAAQ,EAAa,GAA4B,EAAK,MAAM,EAAK,iBAAiB,EAAK,OAAO,yBAAyB,EAAkC,MAA7B,CAAC,GAAK,CAAC,EAAmB,GAAS,GAAG,EAAK,GAAG,GAAG,GAAK,iBAAkB,CAAC,SAAS,EAAiB,EAAI,CAAC,IAAM,EAAM,OAAO,GAAK,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC,YAAY,EAAgQ,OAA3P,EAAM,SAAS,MAAM,EAAQ,MAAS,EAAM,SAAS,MAAM,GAAG,EAAM,SAAS,OAAO,EAAQ,OAAU,EAAM,SAAS,MAAM,GAAG,EAAM,SAAS,MAAM,GAAG,EAAM,SAAS,OAAO,GAAG,EAAM,SAAS,OAAO,EAAQ,QAAW,EAAM,SAAS,MAAM,EAAQ,MAAY,EAAG,CAAC,SAAS,EAAyB,EAAK,CAAC,IAAM,EAAO,GAAM,aAAa,MAAY,EAAQ,GAAM,WAAW,GAAS,EAAI,GAAM,UAAU,GAAG,OAAO,OAAO,IAAS,OAAO,GAAS,EAAI,GAAK,CAAO,CAAC,CAAC,KAAK,CAAE,CAAC,SAAS,EAAiB,EAAI,CAAC,GAAG,CAAC,EAAI,OAAO,QAAQ,OAAW,MAAM,qBAAqB,CAAC,EAAE,GAAG,EAAkB,IAAI,CAAG,EAAE,OAAO,EAAkB,IAAI,CAAG,EAAE,IAAM,EAAQ,IAAI,SAAS,EAAQ,IAAS,CAAC,EAAsB,CAAC,CAAC,KAAK,EAAI,GAAS,CAAC,EAAQ,WAAWC,GAAqB,EAAQ,YAAY,GAAK,EAAQ,CAAO,CAAE,EAAE,IAAA,GAAU,CAAM,CAAE,CAAC,EAAqC,OAAnC,EAAkB,IAAI,EAAI,CAAO,EAAS,CAAQ,CAAC,SAAS,EAAsB,EAAQ,CAAC,IAAM,EAAM,GAAS,OAAO,CAAC,EAAQ,EAAO,EAAM,OAAO,EAAM,OAAO,EAAM,MAAM,KAAK,IAAI,EAAE,EAAM,MAAM,EAAE,EAAQ,EAAS,IAAIC,GAAoB,GAAQ,EAAE,EAAO,EAAE,GAAQ,EAAE,EAAE,EAAE,CAAM,EAAQ,EAAS,IAAIC,GAAwB,CAAC,IAAI,EAAQ,YAAY,GAAK,UAAU,KAAK,WAAW,GAAM,KAAK,CAAgB,CAAC,EAAE,OAAO,IAAIC,GAAW,EAAS,CAAQ,CAAE,CAAC,SAAS,EAAe,EAAI,CAAC,GAAG,CAAC,EAAI,OAAO,QAAQ,OAAW,MAAM,mBAAmB,CAAC,EAAE,GAAG,EAAgB,IAAI,CAAG,EAAE,OAAO,EAAgB,IAAI,CAAG,EAAE,IAAM,EAAQ,IAAI,SAAS,EAAQ,IAAS,CAAC,IAAM,EAAO,EAAiB,CAAG,EAAE,GAAG,IAAS,MAAM,CAAC,GAAa,GAAK,EAAO,EAAW,CAAC,IAAI,CAAC,GAAqB,CAAM,EAA2E,EAAQ,CAAC,SAAO,WAApE,GAAiC,EAAO,CAAoD,EAAE,OAAO,KAAK,CAAC,CAAE,EAAE,IAAA,GAAU,CAAM,EAAE,MAAO,CAAC,GAAG,IAAS,QAAQ,CAAC,EAAiB,CAAG,CAAC,CAAC,KAAK,GAAS,EAAQ,CAAC,OAAO,EAAsB,CAAO,EAAE,WAAW,CAAC,EAAE,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAM,EAAE,MAAO,CAAC,GAAG,IAAS,MAAM,CAAC,EAAkB,CAAC,CAAC,KAAK,GAAQ,CAAC,EAAO,KAAK,EAAI,GAAQ,EAAQ,CAAC,SAAO,WAAW,GAAiC,EAAO,EAAO,YAAY,CAAC,CAAC,EAAE,OAAO,KAAK,CAAC,EAAE,IAAA,GAAU,CAAM,CAAE,CAAC,CAAC,CAAC,MAAM,CAAM,EAAE,MAAO,CAAC,EAAmB,CAAC,CAAC,KAAK,EAAI,GAAM,EAAQ,CAAC,OAAO,EAAK,MAAM,WAAW,GAAiC,EAAK,MAAM,EAAK,YAAY,CAAC,CAAC,EAAE,OAAO,MAAM,CAAC,EAAE,IAAA,GAAU,CAAM,CAAE,CAAC,EAA6H,OAA3H,EAAgB,IAAI,EAAI,CAAO,EAAE,EAAQ,UAAU,CAAI,EAAgB,IAAI,CAAG,IAAI,GAAS,EAAgB,OAAO,CAAG,CAAG,CAAC,EAAS,CAAQ,CAAC,SAAS,EAA4B,EAAO,EAAI,CAAI,CAAC,GAAQ,EAAO,UAAU,cAAc,SAAe,GAAsB,EAAO,CAAG,CAAE,CAAC,SAAS,GAA8B,CAAC,GAAU,IAAS,OAAY,OAAO,IAAM,EAAM,EAAO,oBAAuB,CAAC,GAAO,EAAM,WAAW,EAAM,YAAkB,EAAM,aAAa,CAAE,CAAC,SAAS,GAAiC,CAAC,GAAU,IAAS,OAAY,OAAO,IAAM,EAAM,EAAO,oBAAuB,CAAC,GAAO,EAAM,aAAkB,EAAM,cAAc,CAAC,EAAE,EAAM,cAAc,EAAE,CAAC,SAAS,EAAoB,EAAI,CAAC,IAAM,EAAS,OAAO,GAAK,EAAE,CAAC,CAAC,KAAK,EAAiI,MAA5H,CAAC,GAAqC,EAAgB,IAAI,CAAQ,EAAS,QAAQ,QAAQ,GAAE,EAA6B,EAAS,EAAe,CAAQ,CAAC,CAAC,SAAS,CAAC,GAAU,IAAS,OAAY,OAAO,IAAM,EAAM,EAAO,oBAAuB,GAAO,WAAW,CAAC,GAAO,YAAY,EAAM,cAAc,GAAG,CAAG,CAAC,CAAC,CAAC,MAAM,GAAO,CAAC,QAAQ,KAAK,yCAAyC,CAAK,CAAE,CAAC,EAAE,CAAC,SAAS,GAA2B,CAAC,GAAU,IAAS,OAAY,OAAO,IAAM,EAAI,EAAa,EAAgB,EAAI,iBAAiB,GAAG,GAAiB,mBAAmB,OAAO,IAAM,EAAQ,GAAK,CAAC,IAAM,EAAQ,CAAC,EAAoB,CAAG,CAAC,EAAE,GAAG,OAAO,GAAkB,WAAY,GAAG,CAAC,EAAQ,KAAK,QAAQ,QAAQ,EAAgB,CAAG,CAAC,CAAC,CAAE,OAAO,EAAM,CAAC,QAAQ,KAAK,kDAAkD,CAAK,CAAE,CAAE,OAAO,QAAQ,WAAW,CAAO,CAAC,CAAC,SAAS,IAAA,EAAS,CAAE,EAAE,EAAQ,mBAAmB,GAAK,EAAQ,iBAAiB,EAAgB,EAAI,iBAAiB,CAAQ,CAAC,EAA0B,EAAE,SAAS,GAA6B,EAAM,CAAC,IAAM,EAAI,GAA4B,CAAK,EAAQ,EAAK,EAAI,QAAQ,IAAIC,CAAa,EAAQ,EAAO,EAAI,UAAU,IAAIA,CAAa,EAAE,EAAM,SAAS,IAAI,CAAM,EAAoD,IAAM,EAAe,EAAzD,KAAK,IAAI,EAAK,EAAE,EAAK,EAAE,EAAK,EAAE,IAAmC,EAAwC,OAAtC,EAAM,MAAM,UAAU,CAAc,EAAS,CAAe,CAAC,SAAS,GAA0B,EAAM,CAAC,EAAM,kBAAkB,EAAI,EAAE,IAAM,EAAW,IAAI,IAAU,EAAU,IAAI,IAAI,EAAM,SAAS,GAAO,CAA8C,GAA1C,CAAC,EAAM,QAAQ,EAAM,eAAwB,CAAC,EAAM,UAAU,CAAC,EAAM,SAAS,WAAW,SAAS,OAAO,IAAI,EAAO,GAAG,GAAG,MAAM,QAAQ,EAAM,QAAQ,EAAG,EAAO,EAAM,SAAS,IAAI,GAAG,EAAE,IAAI,CAAC,CAAC,KAAK,GAAG,OAAQ,GAAG,EAAM,SAAU,EAAO,EAAM,SAAS,UAAW,OAAQ,IAAM,EAAQ,EAAM,SAAS,KAAW,EAAQ,EAAO,MAAM,EAAY,EAAU,IAAI,CAAO,GAAG,EAAU,IAAI,EAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,EAAM,SAAS,SAAS,EAAM,QAAQ,CAAC,EAAG,EAAU,IAAI,CAAO,CAAC,CAAC,OAAO,KAAK,CAAK,CAAE,CAAC,EAAE,IAAM,EAAS,CAAC,EAAQ,EAAU,IAAIC,EAAc,CAAC,CAAC,KAAK,EAAM,WAAW,CAAC,CAAC,OAAO,EACp7N,IAAI,GAAK,CAAC,EAAQ,KAAS,EAAU,QAAQ,EAAG,GAAG,EAAM,OAAO,OAAO,EAAE,CAAC,IAAM,EAAM,EAAM,OAAO,OAAa,EAAc,IAAIC,GAAoB,EAAM,SAAS,EAAM,SAAS,CAAK,EAAE,EAAc,KAAK,aAAa,EAAQ,UAAU,EAAE,EAAE,EAAE,IAAM,EAAQ,IAAID,EAAc,IAAI,IAAI,EAAE,EAAE,EAAE,EAAM,IAAI,CAAC,IAAM,EAAK,EAAM,OAAO,GAAG,EAAQ,KAAK,EAAK,WAAW,EAAE,EAAQ,YAAY,CAAS,EAAE,EAAc,YAAY,EAAE,CAAO,EAAE,EAAS,KAAK,CAAI,EAAE,EAAK,SAAS,WAAW,EAAK,CAAC,EAAM,IAAI,CAAa,CAAE,CACtf,EAAM,SAAS,GAAO,CAAmG,GAA/F,CAAC,EAAM,QAAQ,EAAM,eAAe,EAAM,SAAS,YAAY,EAAS,SAAS,CAAK,GAAY,CAAC,EAAM,UAAU,CAAC,EAAM,SAAS,WAAW,SAAS,OAAO,IAAI,EAAO,GAAG,GAAG,MAAM,QAAQ,EAAM,QAAQ,EAAG,EAAO,EAAM,SAAS,IAAI,GAAG,EAAE,IAAI,CAAC,CAAC,KAAK,GAAG,OAAQ,GAAG,EAAM,SAAU,EAAO,EAAM,SAAS,UAAW,OAAQ,IAAM,EAAS,OAAO,KAAK,EAAM,SAAS,UAAU,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,EAAQ,EAAS,EAAO,MAAM,EAAa,EAAW,IAAI,CAAQ,GAAG,EAAW,IAAI,EAAS,CAAC,OAAO,CAAC,EAAE,SAAS,EAAM,QAAQ,CAAC,EAAG,EAAW,IAAI,CAAQ,CAAC,CAAC,OAAO,KAAK,CAAK,CAAE,CAAC,EAAE,IAAI,GAAK,CAAC,EAAS,KAAS,EAAW,QAAQ,EAAG,GAAG,EAAM,OAAO,OAAO,EAAE,CAAC,IAAM,EAAkB,CAAC,EAAE,IAAI,IAAM,KAAQ,EAAM,OAAO,CAAC,IAAM,EAAW,EAAK,SAAS,MAAM,EAAE,EAAW,aAAa,EAAK,WAAW,EAAE,EAAW,aAAa,CAAS,EAAE,EAAkB,KAAK,CAAU,EAAE,EAAS,KAAK,CAAI,CAAE,CAAC,GAAG,CAAC,IAAM,EAAeE,GAAoC,EAAkB,EAAK,EAAE,GAAG,EAAe,CAAC,IAAM,EAAW,IAAIJ,GAAW,EAAe,EAAM,QAAQ,EAAE,EAAW,KAAK,UAAU,EAAS,UAAU,EAAE,EAAE,EAAE,EAAM,IAAI,CAAU,CAAE,CAAC,OAAO,EAAE,CAAC,QAAQ,KAAK,uDAAuD,EAAS,CAAC,EAAE,IAAI,IAAM,KAAQ,EAAM,OAAO,CAAC,IAAM,EAAI,EAAS,QAAQ,CAAI,EAAK,EAAI,IAAG,EAAS,OAAO,EAAI,CAAC,CAAE,CAAC,QAAQ,CAAC,IAAI,IAAM,KAAQ,EAAmB,EAAK,QAAQ,CAAG,CAAC,CAAE,IAAI,IAAM,KAAQ,EAAa,EAAK,QAAQ,EAAK,OAAO,OAAO,CAAI,EAAO,EAAK,SAAS,YAAY,EAAK,UAAU,UAAU,EAAI,OAAO,CAAM,CACjgD,SAAS,GAAkB,EAAM,CAAC,EAAM,SAAS,GAAO,CAAK,GAAO,SAAc,EAAM,cAAc,GAAM,EAAM,WAAW,GAAM,EAAM,cAAc,GAAM,AAAmB,EAAM,WAAS,MAAM,QAAQ,EAAM,QAAQ,EAAE,EAAM,SAAS,IAAI,GAAK,GAAK,QAAQ,GAAG,CAAG,EAAE,EAAM,SAAS,QAAQ,GAAG,EAAM,UAA0B,MAAM,QAAQ,EAAM,QAAQ,EAAE,EAAM,SAAS,CAAC,EAAM,QAAQ,EAAA,CAAY,QAAQ,GAAK,CAAK,IAAW,EAAI,SAAS,EAAI,UAAU,CAAC,EAAM,EAAI,SAAS,gBAAe,EAAI,SAAS,cAAc,CAAC,MAAM,EAAI,OAAO,QAAQ,EAAE,SAAS,EAAI,UAAU,QAAQ,EAAE,UAAU,EAAI,UAAU,UAAU,EAAI,UAAU,QAAQ,EAAI,QAAQ,YAAY,EAAI,YAAY,UAAU,EAAI,UAAU,gBAAgB,EAAI,eAAe,GAAG,EAAI,YAAY,GAAQ,EAAI,aAAa,EAAI,SAAS,OAAK,EAAI,QAAQ,GAAK,EAAI,SAAS,mBAAmB,IAAA,KAAW,EAAI,SAAS,iBAAiB,EAAI,SAAS,GAAM,EAAI,SAAS,uBAAuB,IAAA,KAAW,EAAI,SAAS,qBAAqB,EAAI,aAAa,IAAO,CAAC,EAAE,CAAC,CAAE,CAAC,SAAS,GAAyB,EAAE,EAAI,EAAK,CAAC,IAAM,GAAO,GAAK,KAAK,GAAM,IAAI,MAAM,CAAC,EAAM,EAAE,EAAE,CAAM,CAAC,SAAS,GAA4B,EAAiB,EAAO,CAAC,IAAM,EAAI,EAAiB,MAAM,EAAQ,EAAU,IAAIK,EAAY,EAAO,uBAAuB,SAAS,EAoB1uC,MApB4uC,GAAI,SAAS,EAAI,UAAU,CAAC,EAAE,EAAI,SAAS,sBAAsB,GAAyB,EAAE,EAAO,kBAAkB,EAAO,iBAAiB,EAAE,EAAI,SAAS,kBAAkB,EAAO,oBAAoB,IAAI,EAAI,SAAS,iBAAiB,EAAO,mBAAmB,GAAG,EAAI,SAAS,kBAAkB,EAAO,mBAAmB,GAAG,EAAI,SAAS,uBAAuB,EAAU,EAAI,SAAS,2BAA2B,EAAO,2BAA2B,EAAE,EAAI,SAAS,iBAAiB,GAAkB,UAAU,kBAAkB,GAAkB,SAAS,EAAE,EAAI,SAAS,qBAAqB,GAAkB,UAAU,sBAAsB,GAAkB,aAAa,GAAM,EAAI,YAAY,GAAK,EAAI,gBAAgB,GAAQ,CAAC,EAAO,SAAS,UAAU,CAAC,MAAM,EAAI,SAAS,qBAAqB,EAAE,EAAO,SAAS,MAAM,CAAC,MAAM,EAAI,SAAS,iBAAiB,EAAE,EAAO,SAAS,KAAK,CAAC,MAAM,EAAI,SAAS,gBAAgB,EAAE,EAAO,SAAS,MAAM,CAAC,MAAM,EAAI,SAAS,iBAAiB,EAAE,EAAO,SAAS,WAAW,CAAC,MAAM,EAAI,SAAS,sBAAsB,EAAE,EAAO,SAAS,eAAe,CAAC,MAAM,EAAI,SAAS,0BAA0B,EAAE,EAAI,SAAS,sBAAsB,EAAO,SAAS,EAAO,aAAa,EAAO,aAAa,QAAQ,oBAAoB;+BACh8E,EAAE,EAAO,aAAa,EAAO,aAAa,QAAQ,0BAA0B;6BAC9E,EAAE,EAAO,eAAe,EAAO,eAAe,QAAQ,oBAAoB;;;;;;;;EAQrG,EAA0B;CAC3B,EAAE,EAAO,eAAe,EAAO,eAAe,QAAQ,gCAAgC;;;;;;;;;CAStF,CAAE,EAAE,EAAI,YAAY,GAAY,CAAI,CAAC,SAAS,EAA2B,EAAO,CAAC,GAAG,CAAC,EAAO,OAAO,IAAM,EAAM,EAAO,UAAU,oBAAwB,GAAO,SAAc,EAAO,SAAS,GAAO,CAAC,GAAG,CAAC,GAAO,OAAO,OAAO,IAAM,EAAS,EAAM,kBAAkB,IAAI,EAAM,IAAI,EAAK,IAAS,EAAM,SAAS,GAAS,IAAM,EAAS,EAAM,kBAAkB,IAAI,EAAM,IAAI,GAAG,MAAM,QAAQ,CAAQ,EAAE,EAAS,CAAC,CAAQ,EAAA,CAAG,QAAQ,GAAK,GAAK,UAAU,CAAC,CAAE,CAAC,EAAE,EAAM,kBAAkB,MAAM,EAAE,EAAM,kBAAkB,MAAM,EAAE,AAAuI,EAAM,aAAzH,GAAyB,EAAM,SAAS,EAAK,EAAM,UAAU,QAAO,EAAM,UAAU,OAAO,OAAO,EAAM,SAAS,EAAkB,MAAM,EAAM,OAAO,GAAM,EAAM,KAAK,GAAG,CAAC,SAAS,GAAwB,EAAO,EAAW,EAAO,CAAC,GAAG,CAAC,EAAO,OAAqE,IAAM,EAAE,EAA9C,KAAK,IAAI,EAAE,KAAK,IAAI,EAAE,GAAY,CAAC,CAA6B,EAAgD,EAAe,CAA9C,CAAC,GAAQ,iBAA8C,EAAE,KAA6B,EAAa,CAAC,EAAO,mBAAmB,EAAO,kBAAkB,EAAO,kBAAkB,EAAO,sBAAsB,EAAO,0BAA0B,EAAO,uBAAuB,CAAC,CAAC,KAAK,GAAG,EAAQ,EAAM,EAAO,SAAS,sBAAsB,EAAO,SAAS,oBAAoB,CAAC,OAAO,GAAM,KAAK,GAAG,kBAAkB,IAAI,IAAI,kBAAkB,IAAI,IAAI,UAAU,IAAI,GAAG,GAAG,CAAC,EAAe,CAAC,EAA2B,CAAM,EAAE,MAAO,EAAI,CAAC,EAAM,QAAQ,EAAM,OAAO,KAAc,EAA2B,CAAM,EAAE,EAAO,SAAS,GAAO,CAAC,GAAG,CAAC,GAAO,QAAQ,CAAC,EAAM,SAAS,OAAO,IAAM,EAAS,EAAM,SAAS,EAAM,kBAAkB,IAAI,EAAM,KAAK,CAAQ,EAAE,IAAM,EAAa,MAAM,QAAQ,CAAQ,EAAE,EAAS,IAAI,GAAK,GAA4B,EAAI,CAAM,CAAC,EAAE,GAA4B,EAAS,CAAM,EAAE,EAAM,kBAAkB,IAAI,EAAM,KAAK,CAAY,EAAE,EAAM,SAAS,CAAa,CAAC,EAAK,EAAO,0BAAyB,EAAM,UAAU,GAAwB,EAAO,CAAM,EAAK,EAAO,QAAQ,EAAO,OAAO,IAAI,EAAM,UAAU,MAAM,GAAI,EAAM,OAAO,GAAK,EAAM,KAAK,GAAc,IAAM,EAAe,GAAyB,EAAE,EAAO,kBAAkB,EAAO,iBAAiB,EAAE,EAAO,SAAS,GAAO,CAAI,CAAC,GAAO,QAAQ,CAAC,EAAM,WAAgC,MAAM,QAAQ,EAAM,QAAQ,EAAE,EAAM,SAAS,CAAC,EAAM,QAAQ,EAAA,CAAY,QAAQ,GAAK,CAAC,GAAG,CAAC,GAAK,SAAS,OAAO,EAAI,SAAS,sBAAsB,EAAe,IAAM,EAAS,EAAI,SAAS,sBAA0B,IAAgB,EAAS,UAAU,MAAM,EAAe,EAAS,MAAM,MAAM,EAAO,oBAAoB,IAAI,EAAS,KAAK,MAAM,EAAO,mBAAmB,GAAG,EAAS,MAAM,MAAM,EAAO,mBAAmB,GAAG,EAAS,WAAW,MAAM,IAAI,EAAO,uBAAuB,SAAS,EAAE,EAAS,eAAe,MAAM,EAAO,2BAA2B,EAAE,CAAC,CAAE,CAAC,EAAK,EAAM,YAI5vF,EAAM,UAAU,IAAI,SAAS,UAAU,MAAM,EAAe,EAAM,UAAU,IAAI,SAAS,MAAM,MAAM,EAAO,oBAAoB,IAAI,EAAM,UAAU,IAAI,SAAS,KAAK,MAAM,EAAO,mBAAmB,GAAG,EAAM,UAAU,IAAI,SAAS,MAAM,MAAM,EAAO,mBAAmB,GAAG,EAAM,UAAU,IAAI,SAAS,UAAU,MAAM,EAAO,0BAA0B,GAAG,EAAM,UAAU,IAAI,SAAS,OAAO,MAAM,KAAK,GAAW,EAAO,uBAAuB,EAAO,uBAAuB,SAAS,CAAC,EAAE,EAAM,UAAU,MAAM,MAAM,EAAO,uBAAuB,IAAI,EAAM,UAAU,MAAM,QAAQ,EAAO,yBAAyB,EAAE,EAAM,UAAU,MAAM,UAAU,EAAE,EAAO,sBAAsB,IAAI,EAAM,UAAU,MAAM,UAAU,EAAE,EAAO,sBAAsB,EAAE,GAAwB,EAAM,UAAU,KAAK,EAAE,GAAuB,EAAM,UAAU,IAAI,EAAM,UAAU,KAAK,EAAG,CAAC,SAAS,GAA+B,EAAK,CAA4C,OAAjC,IAAS,QAA8B,CAAC,GAAM,IAAO,GAAQ,IAAO,SAAS,MAAM,IAAO,SAAS,iBAAiB,IAAO,SAAS,gBAAiB,CAAC,SAAS,GAAsB,EAAgB,CAAC,GAAU,IAAS,OAAa,MAAM,CAAC,gBAAgB,KAAK,WAAW,GAAK,WAAW,EAAE,UAAU,EAAE,cAAc,EAAE,eAAe,EAAE,aAAa,EAAE,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,EAAG,IAAM,EAAW,GAA+B,CAAe,EAAQ,EAAS,EAAW,SAAS,kBAAkB,SAAS,iBAAiB,SAAS,KAAK,EAAsB,EAAc,KAAK,IAAI,EAAE,EAAW,EAAO,YAAY,EAAE,GAAU,aAAa,CAAC,EAAQ,EAAe,KAAK,IAAI,EAAE,EAAW,EAAO,aAAa,EAAE,GAAU,cAAc,CAAC,EAAQ,EAAc,EAAW,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,EAAc,OAAO,EAAe,MAAM,EAAc,OAAO,CAAc,EAAE,EAAS,sBAAsB,EAAE,MAAM,CAAC,gBAAgB,EAAS,aAAW,WAAW,GAAU,YAAY,EAAO,SAAS,EAAE,UAAU,GAAU,WAAW,EAAO,SAAS,EAAE,gBAAc,iBAAe,aAAa,EAAc,KAAK,YAAY,EAAc,IAAI,cAAc,EAAc,KAAK,EAAc,eAAe,EAAc,IAAI,EAAe,eAAa,CAAE,CAAC,SAAS,GAA4B,EAAK,CAAC,GAAU,IAAS,QAAa,CAAC,EAAK,MAAO,GAAE,IAAI,EAAQ,EAAS,EAAQ,EAAE,KAAM,GAAS,IAAU,SAAS,MAAM,IAAU,SAAS,iBAAgB,CAAC,GAAG,EAAE,aAAmB,aAAa,CAAC,EAAQ,EAAQ,cAAc,QAAS,CAAC,IAAM,EAAM,EAAO,iBAAiB,CAAO,EAAE,GAAG,EAAM,UAAU,QAAQ,EAAM,aAAa,SAAU,MAAO,GAAG,IAAM,EAAW,OAAO,WAAW,EAAM,SAAS,GAAG,EAAK,OAAO,SAAS,CAAU,IAAE,GAAS,GAAW,EAAQ,EAAQ,aAAc,CAAC,OAAO,KAAK,IAAI,EAAE,KAAK,IAAI,EAAE,CAAO,CAAC,CAAE,CAAC,SAAS,GAAsB,EAAE,EAAE,EAAU,EAAE,CAAwB,MAApB,CAAC,GAAG,CAAC,EAAS,GAAa,KAAK,KAAK,EAAE,MAAM,IAAI,EAAE,MAAM,EAAE,GAAG,GAAW,KAAK,KAAK,EAAE,KAAK,IAAI,EAAE,KAAK,EAAE,GAAG,GAAW,KAAK,KAAK,EAAE,OAAO,IAAI,EAAE,OAAO,EAAE,GAAG,GAAW,KAAK,KAAK,EAAE,QAAQ,IAAI,EAAE,QAAQ,EAAE,GAAG,CAAU,CAAC,SAAS,GAA4B,EAAE,EAAE,CAAC,IAAM,EAAa,OAAO,CAAC,CAAC,GAAG,UAAU,EAAE,OAAO,CAAC,CAAC,GAAG,UAAU,EAAE,GAAG,IAAe,EAAE,OAAO,EAAa,IAAM,GAAc,GAAG,YAAY,IAAI,GAAG,YAAY,GAAG,GAAG,KAAK,IAAI,CAAY,EAAE,KAAK,OAAO,EAAa,IAAM,GAAc,GAAG,WAAW,IAAI,GAAG,WAAW,GAAG,GAAG,KAAK,IAAI,CAAY,EAAE,GAAG,OAAO,EAAa,IAAM,GAAiB,GAAG,YAAY,IAAI,GAAG,YAAY,GAA4D,OAAtD,KAAK,IAAI,CAAe,EAAE,KAAY,GAAuB,GAAG,UAAU,IAAI,GAAG,UAAU,EAAG,CAAC,SAAS,GAAwB,EAAE,EAAE,CAAuD,GAAvC,GAAsB,GAAG,KAAK,GAAG,IAAgB,EAAE,CAAC,IAAM,GAAc,GAAG,YAAY,IAAI,GAAG,YAAY,GAAG,GAAG,KAAK,IAAI,CAAY,EAAE,KAAK,OAAO,EAAa,IAAM,GAAc,GAAG,WAAW,IAAI,GAAG,WAAW,GAAG,GAAG,KAAK,IAAI,CAAY,EAAE,GAAG,OAAO,CAAa,CAAC,OAAO,GAAG,UAAU,IAAI,GAAG,UAAU,EAAG,CAAC,SAAS,GAAyB,EAAE,EAAE,CAAC,IAAM,GAAiB,GAAG,YAAY,IAAI,GAAG,YAAY,GAA4D,OAAtD,KAAK,IAAI,CAAe,EAAE,KAAY,GAAuB,GAAG,UAAU,IAAI,GAAG,UAAU,EAAG,CAAC,SAAS,GAAgC,EAAU,EAAM,CAAC,OAAO,GAA+B,EAAU,CAAC,OAAK,CAAC,CAAE,CAAC,SAAS,GAA8B,EAAM,CAAC,OAAO,OAAO,GAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,YAAY,CAAE,CAAC,SAAS,EAAiC,EAAK,EAAS,CAA8F,GAA1F,CAAC,GAAM,EAAK,WAAW,GAAkB,GAAU,EAAS,WAAW,CAAI,GAAkB,EAAK,eAAe,mBAAmB,EAAE,MAAO,GAAM,IAAM,EAAK,EAAK,wBAAwB,EAAE,GAAG,CAAC,GAAM,EAAK,MAAM,GAAG,EAAK,OAAO,EAAE,MAAO,GAAM,IAAI,EAAQ,EAAK,KAAM,GAAS,IAAU,SAAS,MAAK,CAAC,GAAG,EAAQ,eAAe,aAAa,IAAI,QAAQ,EAAQ,eAAe,oBAAoB,IAAI,OAAQ,MAAO,GAAO,IAAM,EAAa,IAAS,OAA6C,KAAjC,EAAO,iBAAiB,CAAO,EAAO,GAAG,IAAQ,EAAM,UAAU,QAAQ,EAAM,aAAa,UAAU,OAAO,EAAM,OAAO,IAAI,GAAI,MAAO,GAAO,EAAQ,EAAQ,aAAc,CAAC,MAAO,EAAK,CAAC,SAAS,GAA0B,EAAS,EAAS,CAAC,IAAM,EAAQ,OAAO,GAAU,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,EAA6B,CAAC,CAAC,QAAQ,GAAO,CAAC,EAAM,EAAM,QAAQ,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,OAAO,EAAE,GAAG,CAAC,EAAQ,OAAO,MAAO,GAAK,IAAI,EAAK,EAAS,KAAM,GAAM,IAAO,SAAS,MAAK,CAAC,IAAM,EAAO,CAAC,EAAK,GAAG,EAAK,eAAe,YAAY,EAAE,EAAK,eAAe,kBAAkB,EAAE,EAAK,eAAe,4BAA4B,EAAE,EAAK,eAAe,iBAAiB,EAAE,EAAK,eAAe,WAAW,EAAE,EAAK,eAAe,OAAO,CAAC,EAA+D,GAA1D,EAAK,WAAU,EAAO,KAAK,GAAG,MAAM,KAAK,EAAK,SAAS,CAAC,EAAK,EAAO,OAAO,OAAO,CAAC,CAAC,IAAI,EAA6B,CAAC,CAAC,KAAK,GAAO,EAAQ,SAAS,CAAK,CAAC,EAAG,MAAO,GAAM,EAAK,EAAK,aAAc,CAAC,MAAO,EAAM,CAAC,SAAS,GAA2B,EAAS,EAAS,KAAK,CAAC,GAAG,OAAO,SAAW,IAAY,OAAO,KAAK,IAAM,EAAQ,OAAO,GAAU,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,EAA6B,CAAC,CAAC,IAAI,GAAO,EAAM,QAAQ,QAAQ,EAAE,CAAC,CAAC,CAAC,OAAO,OAAO,EAAE,GAAG,CAAC,EAAQ,OAAO,OAAO,KAAK,IAAM,EAAgB,SAAS,iBAAiB,wBAAwB,EAAE,IAAI,IAAM,KAAU,EAAQ,CAAC,IAAI,IAAM,KAAQ,EAAgB,CAAC,GAAG,CAAC,EAAiC,EAAK,CAAQ,EAAE,SAAS,IAAM,EAAU,GAA8B,EAAK,eAAe,iBAAiB,CAAC,EAAE,GAAG,GAAW,IAAY,EAAO,OAAO,CAAK,CAAC,IAAI,IAAM,KAAQ,EAAgB,CAAC,GAAG,CAAC,EAAiC,EAAK,CAAQ,EAAE,SAAS,IAAM,EAAG,GAA8B,EAAK,EAAE,EAAE,GAAG,GAAI,IAAK,EAAO,OAAO,CAAK,CAAC,CAAC,OAAO,IAAK,CAAC,SAAS,GAA6B,EAAO,EAAS,EAAgB,EAAI,CAAC,GAAG,EAAO,4BAA4B,EAAI,EAAO,2BAA2B,IAAO,EAAO,4BAA4B,GAAU,EAAO,mCAAmC,GAAiB,EAAO,0BAA2B,OAAO,EAAO,0BAA4B,EAAO,2BAA2B,EAAI,EAAO,0BAA0B,EAAS,EAAO,iCAAiC,EAAmB,EAAO,4BAA4B,MAAO,EAAO,2BAA2B,MAAM,EAAQ,EAAO,2BAA2B,IAAI,IAAK,IAAM,EAAQ,GAAsB,CAAe,EAAgR,MAA9Q,GAAO,0BAA0B,EAAQ,WAAW,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,EAAQ,cAAc,OAAO,EAAQ,eAAe,MAAM,EAAK,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,EAAQ,cAAc,OAAO,EAAQ,eAAe,MAAM,GAAK,SAAS,EAAQ,cAAc,OAAO,EAAE,OAAO,CAAC,EAAS,EAAO,yBAA0B,CAAC,SAAS,GAAyB,EAAO,EAAK,EAAS,CAAC,GAAG,CAAC,EAAK,OAAO,KAAK,IAAM,EAAU,EAAO,2BAA2B,GAAG,GAAW,IAAI,CAAI,EAAE,OAAO,EAAU,IAAI,CAAI,EAAE,IAAM,EAAQ,EAAK,sBAAsB,EAAE,GAAG,CAAC,GAAU,OAAO,CAAC,EAAS,SAAuC,OAA7B,GAAW,IAAI,EAAK,CAAO,EAAS,EAAS,IAAM,EAAO,EAAS,QAAQ,EAAQ,EAAO,EAAS,QAAQ,EAAQ,GAAM,EAAQ,KAAK,EAAS,SAAS,MAAM,EAAa,GAAK,EAAQ,IAAI,EAAS,SAAS,KAAK,EAAa,EAAM,EAAQ,MAAM,EAAa,EAAO,EAAQ,OAAO,EAAa,EAAK,CAAC,OAAK,MAAI,QAAM,SAAO,MAAM,EAAK,EAAM,OAAO,EAAI,CAAM,EAA4B,OAA1B,GAAW,IAAI,EAAK,CAAI,EAAS,CAAK,CAAC,SAAS,GAAoB,EAAM,EAAU,EAAE,CAAC,OAAO,GAAoC,EAAM,CAAC,MAAM,CAAS,CAAC,CAAE,CAAC,SAAS,EAA2B,EAAO,EAAc,CAAC,GAAG,CAAC,GAAQ,CAAC,EAAc,OAAO,IAAM,EAAa,EAAc,cAAc,CAAC,EAAQ,EAAS,EAAc,gBAAgB,KAAK,IAAI,EAAE,KAAK,IAAI,EAAE,EAAc,UAAU,CAAC,CAAC,EAAE,EAA0F,GAAxF,EAAO,SAAS,GAAG,EAAc,SAAS,EAAE,EAAO,SAAS,GAAG,EAAc,SAAS,EAAK,EAAc,gBAAgB,CAAC,EAAO,SAAS,IAAI,EAAa,MAAM,GAAG,EAAS,EAAO,SAAS,IAAI,EAAa,MAAM,GAAG,EAAS,EAAO,SAAS,IAAI,EAAa,MAAM,GAAG,EAAS,IAAM,EAAgB,EAAa,OAAO,KAAuC,EAAlC,GAAG,EAAa,MAAM,GAAG,EAAW,EAAO,MAAM,eAAe,CAAe,EAAE,EAAO,SAAS,IAAI,EAAa,MAAM,GAAG,EAAS,KAAK,GAAG,IAAI,EAAO,SAAS,IAAI,EAAa,MAAM,GAAG,EAAS,KAAK,GAAG,IAAI,EAAO,SAAS,IAAI,EAAa,MAAM,GAAG,EAAS,KAAK,GAAG,GAAI,CAAC,CAA4a,SAAS,GAAqB,EAAO,EAAI,EAAS,EAAgB,EAAO,EAAI,CAAC,IAAM,EAAU,EAAO,iBAAiB,GAAG,CAAC,EAAI,eAAe,CAAC,EAAI,aAAoB,IAAS,OAAkR,MAArQ,GAAO,mBAAmB,EAAE,EAAO,mBAAmB,EAAE,EAAO,wBAAwB,IAAA,GAAU,EAAO,wBAAwB,IAAA,GAAU,EAAO,wBAAwB,GAAG,EAAO,2BAA2B,EAAE,EAAO,cAAc,KAAK,EAAO,iBAAiB,GAAS,CAAC,EAAE,EAAE,EAAE,EAAE,OAAO,GAAM,OAAO,GAAK,SAAS,CAAC,EAAG,IAAM,EAAmB,OAAO,EAAI,oBAAoB,EAAE,CAAC,CAAC,KAAK,EAAQ,EAAoB,CAAC,CAAC,EAAI,kBAAwB,EAAa,IAAY,EAAI,YAAY,GAAG,GAAc,CAAC,EAAO,eAAe,CAAC,EAAO,cAAc,aAAa,CAAC,EAAiC,EAAO,cAAc,CAAQ,GAAG,IAAM,EAAO,qBAAqB,GAAG,CAAC,IAAM,EAAe,EAAO,cAAc,EAAO,iBAAiB,EAAI,YAAY,EAAO,cAAc,GAA2B,EAAI,YAAY,CAAQ,EAAE,EAAO,oBAAoB,EAAI,IAAO,GAAgB,IAAiB,EAAO,gBAAe,EAAO,wBAAwB,GAAG,EAAO,2BAA2B,EAAG,CAAC,IAAI,EAAG,EAAO,cAAiB,GAAI,CAAC,EAAiC,EAAG,CAAQ,IAAG,EAAO,cAAc,GAA2B,EAAI,YAAY,CAAQ,EAAE,EAAO,oBAAoB,EAAI,IAAI,EAAG,EAAO,cAAc,EAAO,wBAAwB,GAAG,EAAO,2BAA2B,GAAG,IAAM,EAAO,GAAW,IAAY,EAAI,YAAY,GAA2B,EAAU,CAAQ,EAAE,KAAW,EAAwB,CAAC,GAAoB,CAAC,CAAC,GAAQ,GAA0B,EAAO,CAAkB,GAAG,GAA8B,CAAkB,IAAI,GAA8B,CAAS,GAAG,GAA8B,CAAkB,IAAI,GAA8B,EAAO,kCAAkC,EAAQ,EAAkB,GAAqB,EAAwB,GAAG,CAAC,EAAoN,MAAhN,GAAO,mBAAmB,EAAE,EAAO,mBAAmB,EAAE,EAAO,wBAAwB,IAAA,GAAU,EAAO,wBAAwB,IAAA,GAAU,EAAO,wBAAwB,GAAG,EAAO,2BAA2B,EAAQ,CAAC,EAAE,EAAE,EAAE,EAAE,OAAO,GAAM,OAAO,GAAM,SAAS,CAAC,EAAG,IAAM,EAAS,GAA6B,EAAO,EAAS,EAAgB,CAAG,EAAQ,EAAoB,GAAM,CAAC,GAAG,CAAC,GAAa,IAAS,OAAY,OAAO,KAAK,IAAM,EAAK,GAAyB,EAAO,EAAK,CAAQ,EAAE,GAAG,CAAC,EAAK,OAAO,KAAK,IAAM,EAAM,EAAS,MAAY,EAAM,EAAS,OAAO,GAAG,CAAC,GAAO,CAAC,EAAM,OAAO,KAAK,IAAM,EAAQ,EAAI,SAAS,GAAS,EAAQ,EAAI,SAAS,GAAS,EAAI,EAAK,KAAK,EAAK,MAAM,GAAS,EAAS,KAAK,EAAM,GAAS,EAAI,EAAK,IAAI,EAAK,OAAO,GAAS,EAAS,IAAI,EAAM,GAAS,EAAc,EAAK,IAAI,EAAK,OAAO,EAAQ,EAAS,IAAU,EAAS,KAAK,IAAI,EAAE,KAAK,IAAI,EAAE,EAAE,EAAc,CAAK,CAAC,EAAM,EAAe,EAAW,GAAG,GAAQ,qBAAsB,GAAY,EAAO,MAAM,EAAO,OAAO,EAAO,MAAM,GAAG,EAAM,GAAY,EAAO,IAAI,EAAO,SAAS,EAAO,MAAM,GAAG,MAAW,CAA+C,IAAM,EAAQ,GAAgB,EAA9D,GAAQ,UAAU,SAAS,GAAG,CAA8C,EAAE,EAAW,EAAQ,MAAM,EAAM,EAAW,EAAQ,OAAO,CAAM,CAAC,MAAM,CAAC,EAAE,EAAI,GAAY,EAAI,SAAS,GAAG,EAAE,CAAC,EAAI,GAAY,EAAI,SAAS,GAAG,OAAO,EAAK,MAAM,EAAS,MAAM,EAAK,KAAK,EAAS,KAAK,GAAO,EAAK,OAAO,EAAS,KAAK,EAAK,IAAI,EAAS,IAAI,EAAM,UAAQ,CAAE,EAAQ,EAAe,EAAoB,CAAE,EAAE,GAAG,CAAC,EAAgB,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,OAAO,GAAM,OAAO,GAAK,SAAS,CAAC,EAAG,IAAM,EAAY,EAAoB,CAAM,EAAQ,EAAa,EAAe,OAAa,EAAQ,EAAe,EAAQ,EAAQ,EAAe,EAAmV,GAA9U,EAAI,oBAA6U,GAAc,GAAW,CAAC,EAAqO,MAAxN,GAAO,wBAAwB,GAAG,EAAO,2BAA2B,EAAE,EAAO,mBAAmB,EAAQ,EAAO,mBAAmB,EAAQ,EAAO,wBAAwB,EAAQ,EAAO,wBAAwB,EAAc,CAAC,EAAE,EAAQ,EAAE,EAAQ,OAAO,GAAK,OAAO,EAAa,SAAS,EAAe,QAAQ,EAAG,IAAM,EAAkB,CAAC,CAAC,EAAO,0BAA0B,EAAgxB,GAA3vB,IAAoB,GAAc,KAAqB,EAAO,qBAAqB,IAAA,IAAW,EAAO,qBAAqB,IAAA,IAAW,IAAc,EAAO,mCAAmC,GAAW,GAAG,EAAO,wBAAwB,EAAkB,EAAO,2BAA2B,EAAO,oBAAoB,GAAa,GAAG,EAAQ,EAAO,2BAA2B,EAAO,oBAAoB,GAAa,GAAG,EAAQ,EAAO,yBAAyB,EAAQ,EAAO,yBAAyB,EAAQ,EAAO,2BAA2B,EAAI,EAAO,8BAA8B,KAAK,IAAI,IAAI,KAAK,EAAI,cAAc,GAAG,GAAG,GAAY,EAA+F,EAAO,wBAAwB,IAA3G,EAAO,wBAAwB,GAAG,EAAO,2BAA2B,GAAgD,CAAC,GAAmB,GAAc,EAA6J,MAAlJ,GAAO,mBAAmB,EAAQ,EAAO,mBAAmB,EAAQ,EAAO,wBAAwB,EAAQ,EAAO,wBAAwB,EAAc,CAAC,EAAE,EAAQ,EAAE,EAAQ,OAAO,GAAK,OAAO,EAAa,SAAS,EAAe,QAAQ,EAAG,GAAG,GAAmB,EAAO,2BAA2B,EAAE,CAAC,EAAO,yBAAyB,EAAQ,EAAO,yBAAyB,EAAQ,IAAM,EAAS,KAAK,IAAI,EAAE,EAAO,+BAA+B,GAAG,EAAQ,EAAE,KAAK,IAAI,GAAG,EAAI,EAAO,4BAA4B,CAAQ,EAAQ,EAAM,GAAW,EAAE,IAAE,EAAymB,MAAtmB,GAAO,oBAAoB,EAAO,4BAA4B,KAAW,EAAO,0BAA0B,IAAU,EAAO,4BAA4B,IAAU,EAAM,EAAO,oBAAoB,EAAO,4BAA4B,KAAW,EAAO,0BAA0B,IAAU,EAAO,4BAA4B,IAAU,EAAM,EAAO,wBAAwB,EAAO,mBAAmB,EAAO,wBAAwB,EAAO,mBAAsB,GAAG,IAAG,EAAO,2BAA2B,EAAE,EAAO,2BAA2B,EAAO,mBAAmB,EAAO,2BAA2B,EAAO,oBAA0B,CAAC,EAAE,EAAO,mBAAmB,EAAE,EAAO,mBAAmB,OAAO,GAAK,OAAO,EAAa,SAAS,EAAe,QAAQ,CAAE,CAAC,IAAM,EAAO,KAAK,IAAI,EAAE,KAAK,IAAI,EAAE,EAAI,cAAc,CAAC,CAAC,EAAQ,EAAM,EAAO,oBAAoB,EAAc,EAAM,EAAO,oBAAoB,EAAwO,MAAhO,GAAO,mBAAmB,GAAO,EAAQ,GAAO,EAAO,EAAO,mBAAmB,GAAO,EAAQ,GAAO,EAAO,EAAO,wBAAwB,EAAO,mBAAmB,EAAO,wBAAwB,EAAO,mBAAyB,CAAC,EAAE,EAAO,mBAAmB,EAAE,EAAO,mBAAmB,OAAO,GAAK,OAAO,EAAa,SAAS,EAAe,QAAQ,CAAE,CAAC,SAAS,GAAwB,EAAO,EAAI,EAAS,EAAgB,EAAI,CAAC,GAAG,CAAC,EAAI,kBAAkB,CAAC,EAAI,gBAAuB,IAAS,OAAwE,MAA3D,GAAO,iBAAiB,KAAK,EAAO,oBAAoB,GAAS,CAAC,OAAO,GAAM,OAAO,GAAK,SAAS,CAAC,EAAG,IAAM,EAAM,EAAI,gBAAkB,EAAO,sBAAsB,GAAO,CAAC,EAAO,kBAAkB,CAAC,EAAO,iBAAiB,aAAa,CAAC,EAAiC,EAAO,iBAAiB,CAAQ,GAAG,IAAM,EAAO,wBAAwB,MAAI,EAAO,oBAAoB,EAAM,EAAO,iBAAiB,GAA2B,EAAM,CAAQ,EAAE,EAAO,uBAAuB,EAAI,KAAK,IAAM,EAAG,EAAO,iBAAiB,GAAG,CAAC,EAAI,MAAM,CAAC,OAAO,GAAM,OAAO,GAAM,SAAS,CAAC,EAAG,IAAM,EAAS,GAA6B,EAAO,EAAS,EAAgB,CAAG,EAAQ,EAAK,GAAyB,EAAO,EAAG,CAAQ,EAAE,GAAG,CAAC,EAAM,MAAM,CAAC,OAAO,GAAM,OAAO,GAAK,SAAS,CAAC,EAAG,IAAM,EAAM,EAAS,MAAY,EAAM,EAAS,OAAO,GAAG,CAAC,GAAO,CAAC,EAAO,MAAM,CAAC,OAAO,GAAM,OAAO,GAAK,SAAS,CAAC,EAAG,IAAM,EAAQ,EAAI,SAAS,GAAS,EAAc,EAAK,IAAI,EAAK,OAAO,EAAQ,EAAS,IAAU,EAAS,KAAK,IAAI,EAAE,KAAK,IAAI,EAAE,EAAE,EAAc,CAAK,CAAC,EAA8H,MAAM,CAAC,OAAO,GAAK,OAAlI,EAAK,MAAM,EAAS,MAAM,EAAK,KAAK,EAAS,KAAK,GAAO,EAAK,OAAO,EAAS,KAAK,EAAK,IAAI,EAAS,IAAI,EAAgC,UAAQ,CAAE,CAAC,SAAS,GAAsB,EAAO,EAAM,EAAK,EAAK,EAAO,EAAW,KAAK,CAAC,IAAM,EAAI,GAAY,GAAoB,EAAM,GAAM,OAAO,CAAC,EAAQ,EAAI,OAAO,YAAc,IAAY,YAAY,IAAI,EAAE,KAAK,IAAI,EAAQ,EAAS,GAAM,SAAS,KAAW,EAAgB,GAAM,iBAAiB,KAAW,EAAa,GAAqB,EAAO,EAAI,EAAS,EAAgB,EAAO,CAAG,EAAQ,EAAgB,GAAwB,EAAO,EAAI,EAAS,EAAgB,CAAG,EAAE,MAAM,CAAC,QAAQ,EAAa,EAAE,QAAQ,EAAa,EAAE,aAAa,EAAa,OAAO,aAAa,EAAa,OAAO,eAAe,EAAa,SAAS,SAAS,EAAgB,SAAS,gBAAgB,EAAgB,OAAO,gBAAgB,EAAgB,OAAO,aAAa,EAAI,YAAY,CAAE,CAAoF,SAAS,EAA0B,EAAM,EAAU,EAAE,CAAC,IAAM,EAAI,GAA4B,EAAM,CAAC,YAAU,KAAK,MAAM,CAAC,EAAQ,EAAY,GAAO,0BAAyE,OAA5C,EAAmB,CAAC,GAAG,EAAI,GAAG,CAAW,EAAU,CAAI,CAAC,SAAS,GAAgC,EAAM,CAAC,EAAE,CAAC,OAAO,GAAO,CAAC,EAAA,CAAG,IAAI,GAAW,GAAwB,GAAkC,CAAI,CAAG,CAAE,CAAC,SAAS,EAA0B,EAAM,EAAW,KAAK,CAAC,IAAM,EAAS,GAAO,QAAQ,CAAC,EAA4H,GAA9F,EAAS,KAAK,GAAM,GAAM,mBAAmB,GAAM,kBAAkB,GAAM,iBAA0C,EAAG,OAAO,GAAgC,CAAQ,EAAG,IAAM,EAAa,GAAY,eAAe,GAAO,2BAA2B,cAAoG,OAA/C,GAApC,MAAM,QAAQ,CAAY,EAA0C,EAAsD,CAA1C,CAAoD,CAAC,SAAS,EAA2B,EAAO,CAAC,GAAG,CAAC,GAAQ,EAAO,UAAU,qBAAqB,OAAO,IAAM,EAAa,EAAO,UAAU,QAAQ,EAAQ,EAAa,EAAO,UAAU,QAAQ,EAAQ,EAAU,EAAO,OAAO,QAAQ,EAAE,EAAO,UAAU,MAAM,EAAE,EAAE,CAAC,EAAE,EAAO,UAAU,MAAM,EAAE,EAAE,CAAC,EAAE,EAAO,OAAO,YAAY,CAAC,EAAE,EAAO,oBAAoB,EAAI,EAAE,GAAS,KAAK,GAA4B,CAAM,CAAC,EAAE,IAAM,EAAO,GAAS,UAAU,EAAS,EAAQ,EAAK,GAAS,QAAQ,EAAS,EAAE,EAAO,SAAS,EAAO,UAAU,CAAC,EAAE,EAAO,SAAS,iBAAiB,EAAO,EAAE,EAAO,SAAS,iBAAiB,EAAO,EAAE,EAAO,SAAS,iBAAiB,EAAO,EAAE,EAAO,SAAS,cAAc,GAAS,IAAI,EAAE,EAAO,SAAS,eAAe,EAAK,EAAE,EAAO,SAAS,eAAe,EAAK,EAAE,EAAO,SAAS,eAAe,EAAK,EAAE,EAAO,SAAS,qBAAqB,GAAQ,GAAa,EAAO,SAAS,KAAK,CAAY,EAAK,GAAa,EAAO,SAAS,KAAK,CAAY,EAAK,GAAU,EAAO,MAAM,KAAK,CAAS,EAAE,EAAO,oBAAoB,EAAI,CAAE,CAAC,SAAS,EAA0B,EAAO,EAAM,EAAK,EAAM,EAAO,CAAC,GAAG,CAAC,GAAQ,CAAC,EAAO,MAAM,OAAU,EAAO,iBAAgB,EAAO,MAAM,OAAO,EAAO,cAAc,EAAE,EAAO,eAAe,SAAS,QAAQ,EAAE,EAAO,eAAe,SAAS,QAAQ,GAAG,IAAM,EAAS,IAAIC,GAA2B,EAAU,IAAI,aAAa,EAAM,CAAC,EAAQ,EAAW,IAAI,aAAa,EAAM,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAM,IAAI,CAAC,IAAM,EAAG,EAAE,EAAQ,EAAE,EAAO,KAAK,OAAO,EAAQ,EAAM,KAAK,OAAO,EAAE,KAAK,GAAG,EAAQ,EAAI,KAAK,KAAK,EAAE,KAAK,OAAO,EAAE,CAAC,EAAE,EAAU,GAAI,EAAE,KAAK,IAAI,CAAG,EAAE,KAAK,IAAI,CAAK,EAAE,EAAU,EAAG,GAAG,EAAE,KAAK,IAAI,CAAG,EAAE,KAAK,IAAI,CAAK,EAAE,EAAU,EAAG,GAAG,EAAE,KAAK,IAAI,CAAG,EAAE,EAAW,IAAK,KAAK,OAAO,EAAE,IAAI,IAAI,EAAW,EAAG,IAAI,KAAK,OAAO,EAAE,IAAI,IAAI,EAAW,EAAG,IAAI,KAAK,OAAO,EAAE,IAAI,GAAI,CAAC,EAAS,aAAa,WAAW,IAAIC,GAAsB,EAAU,CAAC,CAAC,EAAE,EAAS,aAAa,WAAW,IAAIA,GAAsB,EAAW,CAAC,CAAC,EAAE,IAAM,EAAS,IAAIC,GAAqB,CAAM,OAAK,MAAM,IAAIH,EAAY,CAAK,EAAE,YAAY,GAAK,QAAQ,GAAG,SAAS,EAAuB,WAAW,EAAK,CAAC,EAAE,EAAO,eAAe,IAAII,GAAa,EAAS,CAAQ,EAAE,EAAO,MAAM,IAAI,EAAO,cAAc,CAAE,CAAC,SAAS,EAAqB,EAAO,EAAM,EAAO,CAAC,GAAG,CAAC,GAAQ,eAAe,OAAO,IAAM,EAAU,EAAO,eAAe,SAAS,WAAW,SAAS,MAAY,EAAW,EAAO,eAAe,SAAS,WAAW,SAAS,MAAY,EAAM,EAAU,OAAO,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAM,IAAI,CAAC,IAAM,EAAG,EAAE,EAA+N,GAA7N,EAAU,IAAK,EAAW,GAAI,EAAM,EAAU,EAAG,IAAI,EAAW,EAAG,GAAG,EAAM,EAAU,EAAG,IAAI,EAAW,EAAG,GAAG,EAAmB,EAAU,GAAI,EAAU,GAAI,EAAU,EAAG,GAAG,EAAU,EAAG,GAAG,EAAU,EAAG,GAAG,EAAU,EAAG,GAAa,EAAO,EAAO,CAAC,IAAM,EAAE,EAAO,KAAK,OAAO,EAAE,GAAS,EAAM,KAAK,OAAO,EAAE,KAAK,GAAG,EAAQ,EAAI,KAAK,KAAK,EAAE,KAAK,OAAO,EAAE,CAAC,EAAE,EAAU,GAAI,EAAE,KAAK,IAAI,CAAG,EAAE,KAAK,IAAI,CAAK,EAAE,EAAU,EAAG,GAAG,EAAE,KAAK,IAAI,CAAG,EAAE,KAAK,IAAI,CAAK,EAAE,EAAU,EAAG,GAAG,EAAE,KAAK,IAAI,CAAG,CAAE,CAAC,CAAC,EAAO,eAAe,SAAS,WAAW,SAAS,YAAY,EAAK,CAAC,SAAS,EAA0B,EAAO,EAAS,CAAI,MAAC,GAAQ,EAAO,0BAAwK,IAAxI,EAAO,UAAU,EAAS,EAAO,aAAa,EAAO,cAAc,EAAO,QAAQ,EAAO,kBAAkB,EAAO,mBAAmB,CAAC,EAAK,CAAC,EAAO,OAAO,CAAC,IAAM,EAAO,IAAIT,GAAW,IAAIF,GAAoB,GAAG,EAAE,EAAE,IAAIY,GAAqB,CAAC,QAAQ,GAAG,CAAC,CAAC,EAAE,EAAO,SAAS,EAAE,CAAC,KAAK,GAAG,EAAE,EAAO,cAAc,GAAK,EAAO,QAAQ,GAAM,EAAO,OAAO,EAAO,EAAO,OAAO,MAAM,CAAM,CAAE,CAAC,EAAO,yBAAyB,EAAjC,CAAsC,CAAC,SAAS,EAAiB,EAAI,CAAC,OAAO,GAAoB,CAAG,CAAE,CAAC,SAAS,GAA2B,EAAO,CAAK,IAAc,EAAO,eAAe,UAAU,EAAE,EAAO,YAAY,UAAU,EAAK,EAAO,eAAe,EAAO,eAAe,UAAU,EAAO,EAAO,cAAc,UAAU,EAAE,EAAO,eAAe,UAAU,EAAE,EAAO,cAAc,UAAU,EAAE,EAAO,gBAAgB,UAAU,EAAE,EAAO,uBAAuB,UAAU,UAAU,EAAE,EAAO,mBAAmB,UAAU,UAAU,EAAE,EAAO,oBAAoB,UAAU,UAAU,EAAE,EAAO,oBAAoB,UAAU,UAAU,EAAE,EAAO,oBAAoB,UAAU,EAAE,EAAO,iBAAiB,UAAU,EAAE,EAAO,eAAe,UAAU,UAAU,EAAE,EAAO,uBAAuB,UAAU,UAAU,EAAE,EAAO,cAAc,KAAK,EAAO,WAAW,KAAK,EAAO,aAAa,KAAK,EAAO,gBAAgB,KAAK,EAAO,cAAc,KAAK,EAAO,aAAa,KAAK,EAAO,eAAe,KAAK,EAAO,sBAAsB,KAAK,EAAO,kBAAkB,KAAK,EAAO,mBAAmB,KAAK,EAAO,mBAAmB,KAAK,EAAO,mBAAmB,KAAK,EAAO,gBAAgB,KAAK,EAAO,cAAc,KAAK,EAAO,eAAe,KAAK,EAAO,sBAAsB,KAAK,EAAO,OAAO,KAAK,EAAO,MAAM,KAAK,EAAO,KAAK,KAAK,EAAO,cAAc,KAAK,EAAO,UAAU,KAAK,EAAO,qBAAqB,KAAK,EAAO,WAAW,KAAK,EAAO,WAAW,KAAK,EAAO,MAAM,KAAK,EAAO,WAAW,KAAK,EAAO,cAAc,KAAK,EAAO,mBAAmB,EAAE,EAAO,oBAAoB,EAAE,EAAO,iBAAiB,EAAE,EAAO,qBAAqB,GAAG,EAAO,gBAAgB,GAAG,CAAC,SAAS,GAA0B,EAAO,EAAS,EAAM,EAAO,EAAI,CAAC,GAAG,CAAC,GAAQ,CAAC,GAAU,CAAC,GAAK,CAAC,EAAiB,CAAG,EAAsC,OAAnC,GAA2B,CAAM,EAAS,GAAO,GAAG,CAAC,EAAkD,OAAjC,EAA+B,EAAS,GAAO,GAAK,CAAC,iBAAe,aAAW,kBAAgB,aAAW,WAAS,YAAU,aAAW,cAAY,EAAsB,EAAE,KAAK,IAAI,EAAE,KAAK,MAAM,GAAO,CAAC,CAAC,EAAQ,EAAE,KAAK,IAAI,EAAE,KAAK,MAAM,GAAQ,CAAC,CAAC,EAAQ,EAAI,KAAK,IAAI,GAAG,EAAS,gBAAgB,GAAG,CAAC,EAAQ,EAAQ,KAAK,IAAI,EAAE,KAAK,MAAM,EAAE,CAAG,CAAC,EAAQ,EAAQ,KAAK,IAAI,EAAE,KAAK,MAAM,EAAE,CAAG,CAAC,EAAQ,EAAY,GAAyB,CAAG,EAAE,GAAG,CAAC,EAAO,eAAe,EAAO,wBAAwB,GAAU,EAAO,uBAAuB,EAAY,CAAC,GAA2B,CAAM,EAAE,IAAM,EAAM,IAAIC,GAAwB,EAAQ,EAAQ,CAAC,KAAKC,GAAoB,OAAOC,GAAiB,UAAUC,GAAmB,UAAUA,GAAmB,WAAWjB,EAAoB,CAAC,EAAQ,EAAS,IAAI,EAAe,EAAS,CAAK,EAAE,EAAS,cAAc,CAAG,EAAE,EAAS,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAW,IAAI,EAAW,EAAO,MAAM,EAAO,MAAM,EAAE,EAAW,MAAM,GAAK,EAAW,WAAW,GAAK,EAAS,QAAQ,CAAU,EAAE,IAAI,EAAc,KAAS,EAAS,KAAQ,EAAI,aAAY,EAAS,IAAI,EAAS,EAAO,MAAM,EAAO,OAAO,EAAQ,CAAO,EAAE,EAAS,OAAO,EAAS,OAAO,QAAQ,EAAS,QAAQ,CAAQ,GAAG,IAAM,EAAQ,EAAI,WAAW,EAAI,aAAa,eAAqB,GAAc,EAAI,cAAc,IAAU,EAAI,sBAA0B,EAAQ,KAAS,EAAU,KAAQ,IAAc,EAAQ,IAAIc,GAAwB,EAAQ,EAAQ,CAAC,KAAKC,GAAoB,OAAOC,GAAiB,UAAUC,GAAmB,UAAUA,EAAkB,CAAC,EAAE,EAAU,IAAI,GAAc,CAAO,EAAE,EAAS,QAAQ,CAAS,GAAG,IAAI,EAAQ,KAAQ,IAAS,EAAQ,IAAI,EAAU,EAAO,MAAM,EAAO,OAAO,CAAC,MAAM,EAAI,SAAS,SAAS,EAAI,YAAY,QAAQ,EAAI,UAAU,CAAC,EAAE,EAAS,QAAQ,CAAO,GAAG,IAAI,EAAU,KAAQ,EAAI,eAAc,EAAU,IAAI,EAAgB,IAAIC,EAAc,EAAQ,CAAO,EAAE,EAAI,cAAc,EAAI,YAAY,EAAI,cAAc,EAAE,EAAS,QAAQ,CAAS,GAAG,IAAI,EAAiB,KAAQ,EAAI,qBAAoB,EAAiB,IAAI,EAAW,EAAkB,EAAE,EAAS,QAAQ,CAAgB,GAAG,IAAI,EAAa,KAAQ,EAAI,iBAAgB,EAAa,IAAI,EAAW,EAAc,EAAE,EAAS,QAAQ,CAAY,GAAG,IAAI,EAAc,KAAQ,EAAI,4BAA2B,EAAc,IAAI,EAAW,EAAyB,EAAE,EAAS,QAAQ,CAAa,GAAG,IAAI,EAAc,KAAQ,EAAI,kBAAiB,EAAc,IAAI,EAAW,EAAe,EAAE,EAAS,QAAQ,CAAa,GAAG,IAAI,EAAiB,KAAQ,IAAc,EAAiB,IAAI,EAAW,EAAkB,EAAE,EAAiB,SAAS,OAAO,MAAM,EAAQ,QAAQ,EAAS,QAAQ,CAAgB,GAAG,IAAI,EAAW,KAAQ,EAAI,iBAEzt2B,EAAW,IAAI,EAAW,EAAS,QAAQ,CAAU,GAAG,IAAI,EAAS,KAAQ,EAAI,aAAY,EAAS,IAAI,EAAW,CAAU,EAAE,EAAS,QAAQ,CAAQ,GAAM,EAAI,iBAAgB,EAAc,GAA6B,CAAU,EAAE,EAAc,gBAAgB,CAAG,EAAE,EAAc,UAAU,EAAQ,CAAO,EAAE,EAAc,wBAAwB,CAAG,EAAE,EAAS,QAAQ,CAAa,GAAG,EAAO,cAAc,EAAS,EAAO,sBAAsB,EAAS,EAAO,qBAAqB,EAAY,EAAO,WAAW,EAAM,EAAO,aAAa,EAAQ,EAAO,gBAAgB,EAAW,EAAO,mBAAmB,EAAc,EAAO,cAAc,EAAS,EAAO,eAAe,EAAU,EAAO,aAAa,EAAQ,EAAO,eAAe,EAAU,EAAO,sBAAsB,EAAiB,EAAO,kBAAkB,EAAa,EAAO,mBAAmB,EAAc,EAAO,mBAAmB,EAAc,EAAO,gBAAgB,EAAW,EAAO,cAAc,EAAS,EAAO,sBAAsB,EAAiB,EAAO,OAAO,EAAU,EAAO,MAAM,EAAS,EAAO,KAAK,EAAQ,EAAO,cAAc,EAAiB,EAAO,UAAU,EAAa,EAAO,qBAAqB,EAAc,EAAO,WAAW,EAAc,EAAO,WAAW,EAAc,EAAO,YAAY,EAAW,EAAO,MAAM,EAAS,EAAO,WAAW,EAAU,EAAO,cAAc,EAAiB,EAAO,gBAAgB,EAAG,CAAy7C,OAAr7C,EAAO,kBAAiB,EAAO,gBAAgB,MAAM,EAAO,MAAM,EAAO,gBAAgB,OAAO,EAAO,QAAW,EAAO,qBAAoB,EAAO,mBAAmB,MAAM,EAAO,MAAM,EAAO,mBAAmB,OAAO,EAAO,QAAW,EAAO,gBAAe,EAAO,cAAc,MAAM,EAAO,MAAM,EAAO,cAAc,OAAO,EAAO,QAAW,EAAO,eAAc,EAAO,aAAa,MAAM,EAAO,MAAM,EAAO,aAAa,OAAO,EAAO,SAAW,EAAO,qBAAqB,GAAG,EAAO,sBAAsB,GAAG,KAAK,KAAK,EAAO,kBAAkB,GAAG,CAAG,EAAE,OAAK,EAAO,mBAAmB,EAAE,EAAO,oBAAoB,EAAE,EAAO,iBAAiB,EAAI,EAAO,eAAe,gBAAgB,CAAG,EAAE,EAAO,eAAe,UAAU,EAAE,CAAC,EAAE,EAAO,YAAY,UAAU,EAAQ,CAAO,EAAE,EAAO,cAAc,UAAU,EAAQ,CAAO,EAAE,EAAO,gBAAgB,UAAU,EAAQ,CAAO,EAAE,EAAO,eAAe,UAAU,EAAQ,CAAO,EAAE,EAAO,gBAAgB,YAAY,MAAM,EAAQ,CAAO,EAAE,EAAO,oBAAoB,gBAAgB,CAAG,EAAE,EAAO,oBAAoB,UAAU,EAAQ,CAAO,EAAE,EAAO,eAAe,UAAU,YAAY,OAAO,MAAM,EAAE,EAAQ,EAAE,CAAO,EAAE,EAAO,oBAAoB,UAAU,YAAY,OAAO,MAAM,EAAQ,CAAO,GAAM,EAAO,uBAAuB,EAAO,eAAc,EAAO,sBAAsB,SAAS,OAAO,MAAM,EAAO,aAAa,SAAS,GAAoB,EAAO,CAAG,EAAE,EAAO,gBAAgB,EAAI,cAAc,GAAY,CAAG,EAAS,EAAK,CAAC,SAAS,GAAsB,EAAO,EAAO,CAAC,IAAM,EAAQ,KAAK,IAAI,EAAE,KAAK,IAAI,EAAE,CAAM,CAAC,EAAQ,EAAS,GAAK,CAAK,GAAW,EAAI,WAAW,GAAO,CAAC,GAAG,CAAC,EAAM,OAAO,OAAO,IAAM,EAAK,MAAM,QAAQ,EAAM,QAAQ,EAAE,EAAM,SAAS,CAAC,EAAM,QAAQ,EAAE,IAAI,IAAM,KAAO,EAAU,IAAgB,EAAI,gBAAgB,IAAA,KAAW,EAAI,cAAc,EAAI,SAAS,EAAE,EAAI,mBAAmB,EAAI,aAAa,IAAO,EAAI,SAAS,EAAI,eAAe,GAAG,EAAQ,EAAI,YAAY,EAAI,QAAQ,KAAK,EAAI,YAAY,GAAM,CAAC,CAAE,EAAE,EAAS,EAAO,KAAK,EAAE,IAAI,GAAK,EAAE,KAAS,EAAO,WAAW,CAAC,EAAG,EAAS,GAAO,KAAK,CAAG,CAAC,SAAS,GAAuB,EAAO,CAAC,IAAM,EAAW,GAAK,CAAK,GAAW,EAAI,WAAW,GAAO,CAAC,GAAG,CAAC,EAAM,OAAO,OAAO,IAAM,EAAK,MAAM,QAAQ,EAAM,QAAQ,EAAE,EAAM,SAAS,CAAC,EAAM,QAAQ,EAAE,IAAI,IAAM,KAAO,EAAS,CAAC,GAAK,EAAI,gBAAgB,IAAA,KAAmB,EAAI,QAAQ,EAAI,cAAc,EAAI,YAAY,EAAI,oBAAoB,EAAI,QAAQ,KAAK,EAAI,YAAY,GAAK,OAAO,EAAI,cAAc,OAAO,EAAI,mBAAoB,CAAC,CAAE,EAAE,EAAW,EAAO,KAAK,EAAE,IAAI,GAAK,EAAE,KAAS,EAAO,WAAW,CAAC,EAAG,EAAW,GAAO,KAAK,CAAG,CAAC,SAAS,GAA+B,EAAO,EAAI,EAAS,EAAG,EAAE,CAAC,GAAG,CAAC,GAAQ,CAAC,GAAK,CAAC,EAAS,OAAO,EAA0B,EAAO,CAAQ,EAAE,IAAM,EAAU,EAAI,kBAAkB,GAAgB,CAAG,EAAQ,EAAiB,EAAI,eAAe,GAAa,CAAG,EAAQ,EAAiB,EAAI,eAAe,GAAa,CAAG,EAAQ,EAAY,EAAI,UAAU,GAAQ,CAAG,EAAQ,EAAgB,EAAI,cAAc,GAAY,CAAG,EAAQ,EAAgB,IAAmB,EAAO,iBAAuB,EAAW,IAAc,EAAO,YAAkB,EAAgB,IAAmB,EAAO,iBAAuB,EAAe,IAAkB,EAAO,gBAAgB,GAAG,GAAiB,OAA2B,EAAI,4BAA4B,KAAgB,KAC3pJ,EAAO,mBAAmB,GAAG,GAAG,GAAuB,CAAM,EAAG,EAAO,kBAAkB,EAAE,EAAO,oBAAoB,KAAK,EAAO,mBAAmB,KAAK,EAAO,kBAAkB,QAAY,IAAI,EAAO,mBAAmB,KAAK,EACtO,EAAO,kBAAkB,IAAI,EAAO,oBAAoB,EAAU,EAAO,mBAAmB,CAAC,GAAG,CAAG,EAAE,EAAO,kBAAkB,QAAY,GAAG,IAAY,EAAO,oBAChK,GAAG,EAAO,kBAAkB,GAAG,CAAC,GAAG,CAAC,EAAO,mBAAmB,EAAO,mBAAmB,CAAC,GAAuB,CAAM,EAAE,IAAM,EAAG,EAAO,mBAAmB,EAA4B,EAAO,MAAM,CAAE,EAAE,IAAI,GAAK,EAAE,KAAS,EAAO,WAAW,CAAC,EAAM,GAAO,oBAA+B,GAAO,OAAM,EAA4B,EAAM,MAAM,CAAE,EAAG,EAAO,iBAAiB,EAAG,eAAe,GAAa,CAAE,EAAE,GAAwB,EAAO,EAAG,EAAS,EAAO,KAAK,EAAE,EAAO,YAAY,EAAG,UAAU,GAAQ,CAAE,EAAE,GAAqB,EAAO,CAAE,EAAE,EAAO,iBAAiB,EAAG,eAAe,GAAa,CAAE,EAAK,EAAO,eAAc,GAAoB,EAAO,CAAE,EAAE,EAAO,gBAAgB,EAAG,cAAc,GAAY,CAAE,CAAE,MAAM,GAAsB,EAAO,CAAC,EAAG,EAAO,kBAAkB,IAAI,EAAO,oBAAoB,EAAU,EAAO,mBAAmB,CAAC,GAAG,CAAG,EAAE,EAAO,kBAAkB,EAAM,KAAM,GAAO,oBAAoB,EAAU,EAAO,mBAAmB,CAAC,GAAG,CAAG,EAAE,EAAO,kBAAkB,EAAM,CAAG,IAAI,EAAO,mBAAmB,KAAK,EAAE,CAC//B,GAAG,EAAgB,CAAC,EAA4B,EAAO,MAAM,CAAG,EAAE,IAAI,GAAK,EAAE,KAAS,EAAO,WAAW,CAAC,EAAM,GAAO,oBAA+B,GAAO,OAAM,EAA4B,EAAM,MAAM,CAAG,EAAG,EAAO,iBAAiB,CAAiB,CAAI,IAAiB,GAAqB,EAAO,CAAG,EAAE,EAAO,iBAAiB,GAAqB,IAAY,GAAwB,EAAO,EAAI,EAAS,EAAO,KAAK,EAAE,EAAO,YAAY,GAAgB,IAAmB,EAAO,eAAe,GAAoB,EAAO,CAAG,EAAG,EAAO,gBAAgB,EAAiB,KAAK,CAC5f,IAAM,EAAU,EAAjE,KAAK,IAAI,IAAI,EAAI,4BAA4B,EAA6B,EAAE,EAAO,mBAAmB,EAAG,EAAU,IAAM,EAAQ,IAAU,EAAM,IAAU,EAAc,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAW,GAAG,EAAE,IAAE,EAAG,EAAE,GAAG,EAAO,kBAAkB,EAAQ,CAAC,IAAM,EAAE,EAAO,kBAAkB,EAA0D,GAAsB,EAA3D,GAAO,EAAE,IAAQ,EAAE,EAAc,CAAC,EAAsC,CAAE,KAAK,CAAC,GAAG,CAAC,EAAO,kBAAkB,CAAC,IAAM,EAAG,EAAO,oBAAoB,EAAI,GAAuB,CAAM,EAAE,EAA4B,EAAO,MAAM,CAAE,EAAE,IAAI,GAAK,EAAE,KAAS,EAAO,WAAW,CAAC,EAAM,GAAO,oBAA+B,GAAO,OAAM,EAA4B,EAAM,MAAM,CAAE,EAAG,EAAO,iBAAiB,EAAG,eAAe,GAAa,CAAE,EAAE,GAAwB,EAAO,EAAG,EAAS,EAAO,KAAK,EAAE,EAAO,YAAY,EAAG,UAAU,GAAQ,CAAE,EAAE,GAAqB,EAAO,CAAE,EAAE,EAAO,iBAAiB,EAAG,eAAe,GAAa,CAAE,EAAK,EAAO,eAAc,GAAoB,EAAO,CAAE,EAAE,EAAO,gBAAgB,EAAG,cAAc,GAAY,CAAE,EAAE,EAAO,kBAAkB,GAAK,GAAsB,EAAO,CAAK,CAAE,CAAC,GAAG,EAAO,mBAAmB,EAAG,GAAuB,CAAM,EAAE,EAAO,kBAAkB,EAAE,EAAO,oBAAoB,KAAK,EAAO,mBAAmB,KAAK,EAAO,kBAAkB,OAAW,CAAC,IAAM,GAAG,EAAO,kBAAkB,IAAU,EAAE,GAAuD,GAAsB,EAAvD,GAAO,EAAE,GAAO,EAAc,CAAC,CAAqC,CAAE,CAAC,CAAC,CAAC,EAAO,MAAM,qBAAqB,EAAI,kBAAkB,EAAI,qBAAqB,EAAK,EAAO,MAAM,aAAa,EAAI,2BAA2B,CAAC,EAAI,uBAAuB,EAAI,kBAAkB,SAAQ,EAAO,MAAM,WAAW,EAAO,MAAM,aAAa,IAAM,EAAY,GAAG,EAAI,gBAAgB,GAAG,EAAI,cAAc,GAAG,EAAI,aAAa,GAAG,EAAI,cAAc,GAAG,EAAI,iBAAoB,EAAO,mBAAmB,IAAa,EAAO,iBAAiB,EAAe,EAAI,gBAAiB,EAA0B,EAAO,EAAI,eAAe,IAAI,EAAI,cAAc,GAAG,EAAI,eAAe,UAAU,EAAI,gBAAgB,EAAE,EAAQ,AAA6J,EAAO,kBAA1I,EAAO,MAAM,OAAO,EAAO,cAAc,EAAE,EAAO,eAAe,UAAU,UAAU,EAAE,EAAO,eAAe,UAAU,UAAU,EAAwB,OAAO,EAAO,cAAc,CAAU,CAAC,SAAS,GAAyB,EAAO,CAAC,GAAG,CAAC,EAAO,OAAO,EAAO,QAAQ,SAAS,CAAM,EAAE,EAAO,UAAU,UAAU,EAAE,IAAM,EAAS,EAAO,SAAY,MAAM,QAAQ,CAAQ,EAAG,EAAS,QAAQ,GAAK,GAAK,UAAU,CAAC,EAAQ,GAAU,UAAU,CAAG,CAAC,SAAS,GAAuB,EAAO,EAAI,CAAC,GAAG,CAAC,GAAQ,OAAO,CAAC,EAAI,OAAO,IAAM,EAAQ,CAAC,CAAC,CAAC,EAAI,SAAS,EAAI,cAAc,GAAG,EAAI,mBAAmB,GAAG,EAAI,gBAAgB,yBAAyB,EAAI,gBAAgB,uBAAuB,CAAC,CAAC,KAAK,GAAG,EAAE,GAAG,EAAO,qBAAqB,IAAS,GAAyB,EAAO,UAAU,EAAE,EAAO,WAAW,KAAK,EAAO,mBAAmB,EAAW,EAAI,UAAS,CAAC,IAAM,EAAK,IAAIC,GAAiB,EAAI,cAAc,GAAG,EAAI,mBAAmB,GAAG,GAAW,EAAI,gBAAgB,wBAAwB,EAAE,GAAW,EAAI,gBAAgB,uBAAuB,CAAC,EAAQ,EAAS,EAAK,SAAS,EAAS,YAAY,GAAK,EAAS,QAAQ,GAAG,EAAS,WAAW,GAAM,EAAK,YAAY,GAAG,EAAO,MAAM,IAAI,CAAI,EAAE,EAAO,WAAW,CAAK,CAAE,IAAM,EAAQ,CAAC,CAAC,CAAC,EAAI,SAAS,EAAI,cAAc,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,GAAG,EAAO,qBAAqB,IAAS,GAAyB,EAAO,UAAU,EAAE,EAAO,WAAW,KAAK,EAAO,mBAAmB,EAAW,EAAI,UAAS,CAAC,IAAM,EAAK,IAAIC,GAAiB,EAAI,cAAc,CAAC,EAAE,EAAK,YAAY,IAAI,IAAM,EAAS,EAAK,SAAY,MAAM,QAAQ,CAAQ,EAAG,EAAS,QAAQ,GAAK,CAAC,EAAI,UAAU,EAAM,CAAC,EAAW,IAAU,EAAS,UAAU,IAAO,EAAO,MAAM,IAAI,CAAI,EAAE,EAAO,WAAW,CAAK,CAAE,IAAM,EAAa,CAAC,CAAC,CAAC,EAAI,cAAc,EAAI,mBAAmB,EAAE,EAAO,OAAO,MAAM,UAAU,CAAC,CAAC,KAAK,GAAG,EAAE,GAAG,EAAO,0BAA0B,IAAc,GAAyB,EAAO,eAAe,EAAE,EAAO,gBAAgB,KAAK,EAAO,wBAAwB,EAAgB,EAAI,eAAe,EAAO,OAAM,CAAC,IAAM,EAAU,IAAIA,GAAiB,EAAI,mBAAmB,CAAC,EAAE,EAAU,YAAY,IAAI,IAAM,EAAS,EAAU,SAAY,MAAM,QAAQ,CAAQ,EAAG,EAAS,QAAQ,GAAK,CAAC,EAAI,UAAU,EAAM,CAAC,EAAW,IAAU,EAAS,UAAU,IAAO,EAAO,MAAM,IAAI,CAAS,EAAE,EAAO,gBAAgB,CAAU,CAAE,CAAC,SAAS,GAA0B,EAAO,EAAM,EAAU,EAAE,EAAI,KAAK,CAAC,IAAM,EAAG,EAAI,CAAC,MAAM,EAAI,WAAW,KAAK,EAAI,aAAa,KAAK,EAAI,aAAa,KAAK,EAAI,aAAa,KAAK,EAAI,eAAe,KAAK,EAAI,eAAe,KAAK,EAAI,cAAc,EAAE,GAAgC,GAAO,WAAW,CAAC,EAAE,CAAS,EAAQ,EAAO,CAAC,MAAM,EAAG,OAAO,EAAE,KAAK,EAAG,MAAM,EAAE,KAAK,EAAG,MAAM,EAAE,KAAK,EAAG,MAAM,EAAE,KAAK,EAAG,MAAM,EAAE,KAAK,EAAG,MAAM,EAAE,KAAK,EAAG,MAAM,EAAE,KAAK,GAAK,iBAAiB,GAAG,KAAK,GAAK,iBAAiB,EAAE,KAAK,GAAK,iBAAiB,EAAE,EAAE,GAAG,CAAC,GAAK,sBAA+D,MAAxC,GAAO,2BAA2B,GAAa,EAAQ,IAAM,EAAO,KAAK,IAAI,EAAE,KAAK,IAAI,EAAE,EAAI,iBAAiB,GAAG,CAAC,EAAE,GAAG,EAAO,qBAAqB,EAAO,cAAc,EAAO,qBAAsB,OAAO,EAAO,qBAAsB,GAAG,CAAC,EAAO,qBAA4G,MAAtF,GAAO,qBAAqB,CAAC,GAAG,CAAM,EAAE,EAAO,mBAAmB,EAAO,aAAoB,EAAO,qBAAsB,IAAM,EAAK,EAAO,qBAAqB,GAAG,GAAQ,EAAiI,MAA9H,GAAO,qBAAqB,CAAC,GAAG,CAAM,EAAE,EAAO,mBAAmB,EAAO,aAAa,EAAO,2BAA2B,GAAa,EAAO,qBAAsB,IAAI,EAAkB,GAAM,IAAI,IAAM,KAAO,OAAO,KAAK,CAAM,EAAM,KAAK,IAAI,EAAO,GAAK,EAAK,EAAI,EAAE,OAAM,EAAkB,IAAM,EAAK,KAAO,EAAO,GAAK,EAAK,IAAM,EAA0G,MAAlG,GAAO,2BAA2B,EAAkB,EAAO,mBAAmB,EAAO,aAAoB,CAAK,CAAC,SAAS,GAA0B,EAAO,EAAI,EAAU,EAAE,CAAC,GAAG,CAAC,GAAQ,QAAQ,CAAC,GAAK,sBAAsB,OAAO,IAAM,EAAS,GAA0B,EAAO,EAAO,sBAAsB,CAAC,EAAE,EAAU,CAAG,EAAE,EAAO,OAAO,SAAS,IAAI,EAAS,KAAK,EAAS,KAAK,EAAS,IAAI,EAAE,EAAO,OAAO,yBAAyB,CAAE,CAAC,SAAS,GAA8B,EAAO,CAAyB,OAApB,EAA2B,KAAK,IAAI,EAAO,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,EAAO,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,EAAO,MAAM,CAAC,EAAE,MAAM,KAAK,KAAK,EAAO,OAAO,GAAG,CAAC,EAAE,MAAM,KAAK,IAAI,EAAO,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,EAAO,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,EAAO,MAAM,CAAC,EAAE,KAArO,EAA0O,CAAC,SAAS,GAAyB,EAAO,CAAC,MAAM,CAAC,CAAC,GAAQ,iBAAiB,GAA8B,CAAM,CAAE,CAAC,SAAS,EAA2B,EAAO,EAAI,EAAM,GAAM,CAAI,CAAC,GAAQ,CAAC,GAAO,CAAC,GAAK,iBAAiB,CAAC,GAA8B,CAAG,IAAW,EAAO,iBAAiB,YAAY,IAAI,EAAE,EAAO,sBAAsB,EAAE,CAAC,SAAS,GAAgB,EAAO,EAAI,CAAC,IAAM,EAAS,GAAiB,GAAK,CAAC,CAAC,EAAQ,EAAc,GAAyB,CAAG,EAAQ,EAAa,GAAoB,CAAG,EAAE,GAAG,CAAC,EAAO,gBAAiB,EAAO,gBAAgB,GAAK,EAAO,gBAAgB,EAAS,EAAO,sBAAsB,IAAkB,EAAO,iBAAiB,EAAc,YAAY,IAAI,EAAE,EAAE,EAAO,yBAAyB,OAAW,CAAC,AAAkG,EAAO,4BAAlE,GAAc,EAA2B,EAAO,EAAI,EAAI,EAAmC,IAAO,IAAM,EAAsB,CAAC,CAAC,EAAO,gBAAmB,IAAW,EAAO,kBAAiB,EAAO,gBAAgB,EAAY,GAAuB,GAAe,GAAc,EAA2B,EAAO,EAAI,EAAI,EAAI,CAAC,IAAI,EAAW,EAAE,GAAG,EAAO,iBAAiB,EAAE,CAAC,IAAM,GAAS,YAAY,IAAI,EAAE,EAAO,kBAAkB,IAAU,EAAS,KAAK,IAAI,KAAK,GAAK,kBAAkB,GAAG,EAAK,GAAS,EAAU,EAAO,iBAAiB,EAAiC,EAAW,GAAW,EAAvC,EAAQ,IAAmC,CAAI,CAA8I,MAA7I,GAAO,sBAAsB,EAAW,EAAO,kBAAkB,GAAK,WAAW,KAAK,IAAI,GAAG,GAAK,qBAAqB,KAAK,EAAE,EAAW,EAAE,EAAS,CAAW,CAAC,SAAS,GAAgC,EAAO,CAAK,IAAc,EAAO,oBAAoB,EAAE,EAAO,oBAAoB,EAAE,EAAO,oBAAoB,EAAE,EAAO,uBAAuB,EAAE,EAAO,uBAAuB,EAAE,EAAO,uBAAuB,EAAE,EAAO,wBAAwB,EAAE,CAAC,SAAS,GAAgC,EAAO,EAAW,EAAO,CAAC,GAAG,CAAC,EAAO,OAAoE,IAAM,EAAE,EAA9C,KAAK,IAAI,EAAE,KAAK,IAAI,EAAE,GAAY,CAAC,CAA4B,EAAQ,GAAS,EAAO,MAAM,GAAG,EAAQ,GAAS,EAAO,MAAM,GAAG,EAAQ,GAAS,EAAO,MAAM,GAAG,EAAQ,EAAY,IAAI,EAAO,OAAO,GAAG,GAAG,EAAQ,GAAY,EAAO,MAAM,GAAG,KAAK,GAAG,IAAI,EAAQ,GAAY,EAAO,MAAM,GAAG,KAAK,GAAG,IAAI,EAAQ,GAAY,EAAO,MAAM,GAAG,KAAK,GAAG,IAAI,EAAQ,EAAU,EAAO,EAAO,SAAS,GAAG,GAAS,EAAU,qBAAqB,GAAG,EAAO,SAAS,GAAG,GAAS,EAAU,qBAAqB,GAAG,EAAO,SAAS,GAAG,GAAS,EAAU,qBAAqB,GAAG,EAAO,SAAS,GAAG,GAAY,EAAU,wBAAwB,GAAG,EAAO,SAAS,GAAG,GAAY,EAAU,wBAAwB,GAAG,EAAO,SAAS,GAAG,GAAY,EAAU,wBAAwB,GAAG,IAAM,EAAU,EAAU,yBAAyB,EAAK,IAAY,GAAG,EAAO,MAAM,eAAe,EAAY,CAAS,EAAG,EAAU,oBAAoB,EAAQ,EAAU,oBAAoB,EAAQ,EAAU,oBAAoB,EAAQ,EAAU,uBAAuB,EAAW,EAAU,uBAAuB,EAAW,EAAU,uBAAuB,EAAW,EAAU,wBAAwB,CAAY,CAAC,SAAS,GAAwB,EAAO,EAAW,CAAC,GAAG,CAAC,EAAO,OAAO,IAAM,EAAiB,KAAK,IAAI,EAAE,KAAK,IAAI,EAAE,GAAY,CAAC,CAAC,EAAE,EAAO,SAAS,GAAO,CAAI,CAAC,GAAO,QAAQ,CAAC,EAAM,WAAgC,MAAM,QAAQ,EAAM,QAAQ,EAAE,EAAM,SAAS,CAAC,EAAM,QAAQ,EAAA,CAAY,QAAQ,GAAK,CAAC,GAAG,CAAC,EAAI,OAAO,EAAI,SAAS,EAAI,UAAU,CAAC,EAAK,EAAI,SAAS,mBAAmB,IAAA,KAAW,EAAI,SAAS,iBAAiB,EAAI,UAAU,eAAe,SAAS,EAAI,SAAS,GAAM,EAAI,SAAS,uBAAuB,IAAA,KAAW,EAAI,SAAS,qBAAqB,EAAI,UAAU,eAAe,aAAa,EAAI,aAAa,IAAO,IAAM,EAAY,EAAI,UAAU,kBAAkB,EAAI,SAAS,EAAQ,EAAgB,EAAI,UAAU,sBAAsB,EAAI,aAAa,GAAY,EAAY,EAAY,EAAiB,EAAI,QAAQ,EAAY,EAAI,YAAY,GAAiB,EAAY,KAAK,EAAI,WAAW,GAAa,KAAK,EAAI,YAAY,EAAK,CAAC,CAAE,CAAC,CAAE,CAAC,SAAS,GAA2B,EAAO,EAAO,EAAQ,CAAC,GAAG,CAAC,EAAO,OAAO,GAAG,CAAC,GAAS,CAAC,EAAO,CAAC,EAAO,MAAM,QAAQ,IAAI,EAAO,MAAM,OAAO,GAAG,EAAO,MAAM,WAAW,YAAY,MAAO,CAAC,IAAM,EAAW,KAAK,IAAI,EAAE,KAAK,IAAI,GAAG,EAAO,uBAAuB,IAAI,EAAO,iBAAiB,EAAE,CAAC,EAAQ,EAAO,KAAK,IAAI,EAAE,EAAO,mBAAmB,CAAC,EAAE,EAAO,MAAM,QAAQ,GAAY,KAAK,IAAI,EAAW,QAAQ,CAAC,EAAE,EAAO,MAAM,OAAO,EAAO,IAAI,QAAQ,EAAO,QAAQ,CAAC,EAAE,KAAK,GAAG,EAAO,MAAM,WAAW,EAAO,KAAK,EAAW,KAAK,6BAA6B,WAAY,CAAC,SAAS,GAAwB,EAAM,EAAM,EAAU,EAAE,EAAc,KAAK,EAAO,KAAK,EAAW,KAAK,CAAC,IAAM,EAAG,EAAO,GAA0B,EAAO,EAAM,EAAU,CAAU,EAAE,GAAgC,GAAO,WAAW,CAAC,EAAE,CAAS,EAAQ,EAAM,EAAG,OAAO,EAAQ,EAAK,EAAG,MAAM,EAAQ,EAAK,EAAG,MAAM,EAAQ,EAAK,EAAG,MAAM,EAAQ,EAAK,EAAG,MAAM,EAAQ,EAAK,EAAG,MAAM,EAAQ,EAAK,EAAG,MAAM,EAAQ,GAAW,EAAM,UAAU,qBAAqB,IAAI,EAAM,UAAU,eAAe,GAAS,EAAmB,EAAY,EAAe,EAAU,KAAK,IAAI,KAAK,CAAkB,EAAE,EAA2B,CAAK,EAAE,IAAM,EAAO,CAAC,GAAG,EAAM,UAAU,kBAAkB,GAAG,EAAe,GAAG,EAAM,UAAU,kBAAkB,GAAG,EAAe,GAAG,EAAM,UAAU,kBAAkB,GAAG,CAAc,EAAQ,GAAa,EAAM,UAAU,eAAe,GAAG,EAAe,EAAM,MAAM,UAAU,CAAc,EAAE,EAAM,SAAS,IAAI,CAAC,EAAO,EAAE,EAAK,CAAC,EAAO,EAAE,EAAK,CAAC,EAAO,EAAE,CAAI,EAAE,EAAM,SAAS,IAAI,EAAK,KAAK,GAAG,IAAI,EAAK,KAAK,GAAG,IAAI,EAAK,KAAK,GAAG,GAAG,EAAE,EAAM,SAAS,iBAAiB,EAAY,EAAM,SAAS,mBAAmB,CAAC,MAAM,EAAmB,OAAK,OAAK,OAAK,OAAK,OAAK,MAAI,EAAE,EAAM,SAAS,sBAAsB,EAAM,SAAS,EAAE,EAAY,KAAK,EAA2B,EAAM,CAAa,EAAE,EAAM,SAAS,sBAAsB,CAAC,MAAM,EAAM,MAAM,EAAE,KAAK,IAAI,KAAK,CAAS,EAAE,KAAK,EAAM,SAAS,EAAE,EAAO,EAAE,KAAK,EAAM,SAAS,EAAE,EAAO,EAAE,KAAK,EAAM,SAAS,EAAE,EAAO,EAAE,KAAK,EAAM,SAAS,EAAE,IAAI,KAAK,GAAG,KAAK,EAAM,SAAS,EAAE,IAAI,KAAK,GAAG,KAAK,EAAM,SAAS,EAAE,IAAI,KAAK,EAAE,CAAE,CAAC,SAAS,GAAgB,EAAI,EAAO,CAA2C,IAA/B,GAAK,YAAY,iBAAwB,eAAe,CAAC,IAAmC,EAAO,IAAIC,GAAyB,GAAO,EAAO,EAAM,EAAO,EAAM,GAAO,IAAI,GAAG,EAAoL,MAAlL,GAAO,KAAK,GAAK,WAAW,EAAE,EAAO,SAAS,IAAI,GAAK,iBAAiB,GAAG,GAAK,iBAAiB,EAAE,GAAK,iBAAiB,EAAE,EAAE,EAAO,OAAO,EAAE,EAAE,CAAC,EAAE,EAAO,uBAAuB,EAAS,CAAO,CAAC,IAAM,EAAO,IAAIC,GAAwB,GAAK,KAAK,GAAG,EAAO,IAAI,GAAG,EAAsJ,OAApJ,EAAO,SAAS,IAAI,GAAK,iBAAiB,GAAG,GAAK,iBAAiB,EAAE,GAAK,iBAAiB,EAAE,EAAE,EAAO,OAAO,EAAE,EAAE,CAAC,EAAE,EAAO,uBAAuB,EAAS,CAAO,CAAC,SAAS,GAAgB,EAAI,EAAO,CAAC,MAAM,CAAC,GAAK,YAAY,cAAc,OAAO,GAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,GAAK,iBAAiB,GAAG,GAAK,iBAAiB,EAAE,GAAK,iBAAiB,GAAG,GAAK,WAAW,EAAE,GAAK,KAAK,GAAG,GAAK,cAAc,IAAI,CAAC,CAAC,KAAK,GAAG,CAAE,CAAC,SAAS,GAAe,EAAO,EAAI,EAAO,CAAC,IAAM,EAAK,GAAgB,EAAI,CAAM,EAAiR,OAA5Q,CAAC,EAAO,QAAQ,EAAO,kBAAkB,KAAM,EAAO,OAAO,GAAgB,EAAI,CAAM,EAAE,EAAO,gBAAgB,GAAS,GAAK,aAAa,WAAU,AAAwB,EAAO,eAAa,IAAIC,GAAmB,EAAO,aAAa,OAAO,GAAK,cAAc,MAAa,EAAO,MAAO,CAAC,SAAS,GAAe,EAAI,EAAO,CAAC,IAAM,EAAM,IAAIC,GAAkB,EAAQ,IAAIC,GAAmB,SAAS,GAAK,uBAAuB,EAAE,EAAQ,EAAI,IAAIC,GAAuB,SAAS,GAAK,2BAA2B,GAAG,EAAE,EAAI,MAAM,IAAI,GAAK,uBAAuB,SAAS,EAAE,EAAI,SAAS,IAAI,GAAK,cAAc,EAAE,GAAK,cAAc,GAAG,GAAK,cAAc,CAAC,EAE/+b,IAAM,EAAU,IAAIA,GAAuB,SAAS,EAAE,EAAE,EAAU,SAAS,IAAI,GAAG,EAAE,EAAE,EAAE,IAAM,EAAgB,IAAIC,GAAsB,SAAS,QAAQ,GAAG,EAAmD,OAAjD,EAAM,IAAI,EAAQ,EAAI,EAAU,CAAe,EAAQ,CAAC,QAAM,UAAQ,SAAS,EAAI,YAAU,kBAAgB,OAAO,GAAgB,EAAI,CAAM,EAAE,MAAM,KAAK,UAAU,GAAG,WAAW,GAAG,MAAM,KAAK,WAAW,CAAC,EAAE,UAAU,IAAI,IAAI,MAAM,IAAIC,GAAY,sBAAsB,IAAI,IAAI,uBAAuB,KAAK,oBAAoB,GAAG,yBAAyB,GAAG,yBAAyB,GAAG,gBAAgB,EAAE,CAAE,CAAC,SAAS,GAAmB,EAAO,CAAC,IAAM,EAAM,GAAQ,MAA0C,OAAhC,GAAe,EAAM,SAAS,EAAS,KAAK,IAAI,IAAI,EAAM,WAAW,GAAG,CAAC,GAA5D,CAA8D,CAAC,SAAS,GAAc,EAAW,EAAS,CAAC,GAAG,CAAC,GAAY,OAAO,OAAO,KAAK,GAAG,CAAC,EAAS,OAAO,EAAW,GAAG,IAAM,EAAO,OAAO,CAAQ,CAAC,CAAC,YAAY,EAAE,OAAO,EAAW,KAAK,GAAM,OAAO,EAAK,IAAI,CAAC,CAAC,YAAY,IAAI,CAAM,GAAG,EAAW,KAAK,GAAM,OAAO,EAAK,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,CAAM,CAAC,GAAG,IAAK,CAAC,SAAS,GAA4B,EAAO,EAAS,CAAC,IAAM,EAAK,OAAO,GAAU,QAAQ,CAAC,CAAC,YAAY,EAAK,IAAO,QAAQ,EAAO,QAAQC,GAAe,CAAC,EAAE,EAAO,kBAAkB,IAAc,IAAO,YAAY,EAAO,QAAQC,GAAmB,GAAQ,EAAE,EAAO,kBAAkB,KAAY,EAAO,QAAQC,GAAiB,GAAQ,EAAE,EAAO,kBAAkB,GAAO,CAAC,SAAS,GAAwB,EAAW,EAAW,CAAC,IAAM,EAAS,GAAY,UAAU,EAAQ,EAAS,GAAY,UAAU,EAAK,CAAC,GAAU,UAAU,CAAC,GAAU,WAA6G,EAAW,MAAlF,EAAW,KAAK,EAAS,SAAS,EAAS,UAAU,EAAS,SAAwC,EAAS,SAAS,EAAS,SAAS,CAAC,IAAM,GAAoB,IAAIC,GAAgB,GAAoB,aAAa,GAAK,IAAM,GAAgB,IAAId,EAAoB,GAAwB,IAAId,EAAoB,GAAiB,IAAIA,EAAoB,GAAoB,IAAI6B,GAAsB,GAAsB,IAAIC,GAAkB,GAAqB,IAAI9B,EAAoB,GAAqB,IAAIA,EAAoB,GAAsB,IAAII,EAAsC,IAAI2B,GAAW,SAAS,GAA0B,EAAO,CAAK,IAAc,EAAO,uBAAuB,EAAO,uBAAuB,GAAG,EAAE,CAAC,SAAS,GAA4B,EAAO,EAAK,EAAM,CAAC,GAAG,CAAC,GAAQ,CAAC,EAAK,OAAO,IAAM,EAAE,GAAO,SAAe,EAAE,GAAO,SAAwB,GAAO,eAAe,OAAO,SAAS,CAAC,GAAG,OAAO,SAAS,CAAC,GAAG,GAAG,EAAK,MAAM,GAAG,EAAK,OAAO,GAAG,EAAK,KAAK,GAAG,EAAK,QAAkB,EAAO,mBAAmB,EAAE,EAAK,MAAM,KAAK,IAAI,EAAE,EAAK,KAAK,EAAE,EAAE,EAAE,EAAO,mBAAmB,EAAE,EAAK,KAAK,KAAK,IAAI,EAAE,EAAK,MAAM,EAAE,EAAE,IAAQ,EAAO,kBAAkB,EAAE,EAAO,kBAAkB,GAAG,EAAO,aAAa,EAAO,aAAa,KAAK,EAAO,mBAAmB,IAAI,EAAO,aAAa,IAAI,IAAI,EAAO,aAAa,EAAO,aAAa,KAAK,EAAO,mBAAmB,IAAI,EAAO,aAAa,IAAI,GAAI,CAAC,SAAS,GAAwB,EAAO,EAAO,EAAI,EAAW,EAAE,CAAC,GAAG,CAAC,GAAQ,CAAC,GAAQ,EAAE,GAAK,qBAAqB,IAAO,OAAO,IAAM,GAAW,GAAK,wBAAwB,IAAI,EAAW,EAAO,SAAS,IAAI,EAAO,aAAa,GAAG,EAAU,EAAO,SAAS,IAAI,EAAO,aAAa,GAAG,EAAU,EAAG,CAAC,SAAS,GAAsB,EAAO,EAAI,CAAC,IAAM,EAAO,GAAQ,OAAO,GAAG,CAAC,GAAQ,CAAC,EAAO,OAAO,IAAM,EAAO,GAAqB,IAAI,EAAE,EAAE,CAAC,EAAE,GAAwB,IAAI,GAAK,iBAAiB,GAAG,GAAK,iBAAiB,EAAE,GAAK,iBAAiB,EAAE,EAGh+G,IAAM,EAAW,GAAK,WAAW,KAAK,IAAI,GAAG,KAAK,IAAI,EAAE,EAAO,gBAAgB,CAAC,CAAC,EAAE,EAAE,EAAO,eAAe,EAAc,GAAK,qBAAqB,GAAiB,KAAK,EAAuB,EAAE,GAAoB,eAAe,EAAgB,EAAE,GAAoB,OAAO,EAAO,iBAAiB,EAAE,GAAoB,IAAI,KAAK,IAAI,IAAI,KAAK,IAAI,KAAK,GAAG,IAAI,GAAoB,KAAK,EAAO,eAAe,EAAE,CAAC,EAAE,GAAoB,QAAQ,EAAW,GAAiB,iBAAiB,EAAmB,EAAE,EAAO,SAAS,KAAK,CAAM,CAAC,CAAC,IAAI,EAAgB,IAAQ,EAAO,SAAS,KAAK,EAAuB,CAAC,CAAC,eAAe,CAAU,CAAC,CAAC,IAAI,CAAM,EAAE,EAAO,gBAAgB,EAAE,EAAO,cAAc,GAAM,EAAO,uBAAsB,EAAO,MAAM,GAAK,WAAW,GAAG,GAAY,EAAO,OAAO,CAAM,EAAE,EAAO,oBAAoB,EAAI,EAAE,EAAO,yBAAyB,CAAE,CAAC,SAAS,GAA8B,EAAO,EAAU,EAAM,EAAI,CAAC,IAAM,EAAQ,IAAS,GAAe,KAAe,IAAG,GAAO,OAAO,GAAQ,SAAU,GAAG,CAAC,EAAM,SAAS,GAAK,MAAM,GAAQ,UAAU,GAAG,EAAM,WAAW,EAAI,EAAM,gBAAgB,CAAO,MAAM,CAAC,CAAE,GAAG,CAAI,EAAM,EAAQ,CAAK,EAAO,EAAQ,CAAE,OAAO,EAAM,CAAC,QAAQ,KAAK,kDAAkD,CAAK,CAAE,CAAjI,CAAkI,CAAC,SAAS,GAAyB,EAAO,EAAI,CAAC,IAAM,EAAM,CAAC,GAAQ,OAAO,MAAM,UAAU,GAAQ,OAAO,UAAU,GAAqB,cAAf,eAA6B,GAAK,2BAA2B,GAAK,0BAA0B,EAAE,EAAE,GAAG,GAAQ,UAAW,IAAI,GAAK,CAAC,EAAI,KAAS,EAAO,UAAU,CAAC,IAAM,EAAO,GAAO,mBAAmB,EAAM,KAAK,GAAG,EAAI,GAAG,GAAO,OAAO,MAAM,OAAO,GAAG,GAAO,OAAO,UAAU,GAAM,GAAG,GAAQ,2BAA2B,GAAQ,0BAA0B,IAAI,CAAE,CAAE,OAAO,EAAM,KAAK,GAAG,CAAE,CAAC,SAAS,GAA8B,EAAO,EAAI,CAAC,GAAG,CAAC,EAAO,MAAM,CAAC,EAAE,IAAM,EAAI,GAAyB,EAAO,CAAG,EAAE,GAAG,EAAO,4BAA4B,EAAI,CAAC,IAAM,EAAO,CAAC,EAA6G,GAAxG,EAAO,OAAO,UAAU,IAAO,EAAO,OAAO,WAAW,GAAO,CAAI,GAAO,QAAO,EAAO,KAAK,CAAK,CAAE,CAAC,EAAM,EAAO,UAAW,IAAI,GAAK,EAAE,KAAS,EAAO,UAAc,CAAC,GAAO,OAAO,EAAM,MAAM,UAAU,IAAe,EAAM,MAAM,WAAW,GAAO,CAAI,GAAO,QAAO,EAAO,KAAK,CAAK,CAAE,CAAC,EAAI,EAAO,uBAAuB,EAAO,EAAO,0BAA0B,EAAI,EAAO,yBAAyB,IAAI,GAAI,CAAC,OAAO,EAAO,wBAAwB,CAAC,EAAA,CAAG,OAAO,GAAM,GAAM,UAAU,EAAK,CAAE,CAAC,SAAS,GAAwB,EAAO,EAAI,EAAI,CAAC,IAAM,EAAM,GAAK,sBAAsB,CAAC,EAAE,GAAG,CAAC,EAAM,QAAQ,CAAC,EAAI,OAAO,KAAK,AAAqC,EAAO,2BAAyB,IAAI,IAAK,IAAM,EAAO,GAAK,2BAA2B,GAAK,0BAA0B,GAAS,EAAS,GAAG,EAAI,MAAM,GAAG,GAAG,IAAS,GAAG,EAAO,yBAAyB,IAAI,CAAQ,EAAG,OAAO,EAAO,yBAAyB,IAAI,CAAQ,EAAG,IAAM,EAAK,OAAO,EAAI,MAAM,EAAE,CAAC,CAAC,YAAY,EAAM,EAAQ,KAAK,GAAG,EAAM,IAAI,IAAM,KAAQ,EAAM,CAAC,IAAM,EAAO,OAAO,GAAM,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,YAAY,EAAE,GAAG,GAAQ,EAAK,SAAS,CAAM,EAAE,CAAC,EAAQ,EAAK,KAAM,CAAC,CAAwD,OAAtD,EAAO,yBAAyB,IAAI,EAAS,CAAO,EAAS,CAAQ,CAAC,SAAS,GAA2B,EAAO,EAAU,EAAI,CAAC,IAAI,EAAI,EAAU,KAAM,GAAK,IAAM,GAAQ,OAAO,IAAM,GAAQ,OAAO,IAAM,GAAQ,YAAW,CAAC,IAAM,EAAO,GAAwB,EAAO,EAAI,CAAG,EAAE,GAAG,EAAO,CAAC,IAAM,EAAK,OAAO,EAAO,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,YAAY,EAAQ,EAAW,EAAO,6BAA6B,MAAM,CAAI,EAAiC,OAA5B,IAAY,EAAI,GAAkB,CAAC,MAAI,QAAM,CAAE,CAAC,EAAI,EAAI,MAAO,CAAC,OAAO,IAAK,CAAC,SAAS,GAAuB,EAAO,EAAU,CAAC,IAAI,EAAI,EAAU,KAAM,GAAK,IAAM,GAAQ,OAAM,CAAC,GAAG,EAAI,UAAU,oBAAqB,MAAM,CAAC,GAAG,EAAI,UAAU,kBAAkB,GAAG,MAAM,EAAI,SAAS,oBAAoB,gBAAgB,EAAI,UAAU,2BAA2B,IAAI,EAAG,EAAI,EAAI,MAAO,CAAC,MAAM,CAAC,GAAG,GAAG,MAAM,GAAQ,sBAAsB,KAAK,gBAAgB,GAAQ,gCAAgC,IAAI,CAAE,CAAC,SAAS,GAAiC,EAAO,EAAK,EAAU,EAAY,CAAC,IAAM,EAAS,GAAuB,EAAO,CAAS,EAAQ,EAAU,GAAU,OAAO,KAAK,GAAG,CAAC,GAAW,IAAY,GAAQ,qBAAsB,OAAO,EAAoI,IAAM,EAAS,EAArH,GAAU,gBAAgB,CAAC,GAAG,EAAU,0BAA0B,EAAS,eAAe,EAAE,EAA8D,GAAM,OAAO,CAAC,EAAE,OAAO,GAAU,2BAA2B,EAAS,CAAY,CAAC,SAAS,GAAwB,EAAO,EAAK,EAAU,EAAY,CAAC,IAAM,EAAS,GAAiC,EAAO,EAAK,EAAU,CAAW,EAAQ,EAAW,GAA2B,EAAO,EAAU,CAAQ,EAA0D,OAArD,GAAY,IAAW,EAAmB,EAAkB,GAA2B,EAAO,EAAU,CAAW,CAAE,CAAC,SAAS,GAAoC,EAAK,EAAI,CAAgD,OAA5C,GAAK,2BAAkC,GAAY,EAA0B,GAAM,MAAM,CAAG,CAAC,CAAC,KAAK,GAAM,GAAM,mBAAmB,0BAA0B,CAAE,CAAC,SAAS,GAAgC,EAAM,EAAgB,KAAK,CAAC,IAAM,EAAQ,GAAiB,GAAO,0BAA0B,MAAM,CAAC,EAAE,GAAO,mBAAmB,GAAO,iBAAiB,GAAS,mBAAmB,GAAS,gBAAiB,CAAC,SAAS,GAA0B,EAAK,EAAO,CAAC,GAAG,GAAM,cAAe,OAAO,EAAO,EAAK,cAAc,MAAM,EAAK,cAAc,IAAK,IAAM,EAAM,GAAM,OAAO,CAAC,EAAQ,EAAQ,GAAM,iBAAiB,EAAM,2BAA2B,CAAC,EAAE,OAAO,EAAO,EAAM,mBAAmB,EAAQ,kBAAkB,EAAM,iBAAiB,EAAQ,eAAgB,CAAC,SAAS,GAA+B,EAAK,CAAC,IAAI,EAAM,KAAS,EAAI,KAAK,IAAI,IAAM,KAAQ,EAA0B,GAAM,MAAM,GAAM,eAAe,EAAE,CAAC,IAAM,EAAM,GAAM,kBAAkB,CAAC,EAAQ,EAAQ,GAAM,wBAAwB,EAAM,2BAA2B,CAAC,EAA0H,GAAxH,EAAM,GAAO,EAAM,mBAAmB,EAAQ,kBAAkB,EAAI,GAAK,EAAM,iBAAiB,EAAQ,gBAAmB,GAAO,EAAI,KAAM,CAA6B,MAAzB,CAAC,GAAO,CAAC,EAAW,KAAW,CAAC,GAAG,GAAG,GAAM,IAAI,QAAQ,cAAc,MAAM,CAAC,kBAAkB,GAAO,IAAA,GAAU,gBAAgB,GAAK,IAAA,EAAS,EAAE,gBAAgB,KAAK,cAAc,CAAC,QAAM,KAAG,EAAE,QAAQ,GAAM,QAAQ,gBAAgB,GAAM,eAAe,CAAE,CAAC,SAAS,GAAyB,EAAK,EAAI,CAAmH,OAA/G,GAAgC,GAAM,MAAM,GAAM,eAAe,GAAG,GAAK,wBAAgC,GAAa,EAA0B,GAAM,MAAM,CAAG,CAAC,CAAC,KAAK,GAAM,CAAC,IAAM,EAAM,GAAM,iBAAiB,OAAO,GAAgC,EAAM,GAAM,sBAAsB,CAAE,CAAC,CAAE,CAAC,SAAS,GAAsB,EAAK,EAAM,CAA0M,OAAtM,GAAO,OAAO,EAAM,QAAQ,GAAM,MAAa,CAAC,GAAG,EAAM,IAAI,GAAM,IAAI,GAAG,MAAM,EAAM,MAAM,gBAAgB,EAAM,iBAAiB,KAAK,QAAQ,GAAM,QAAQ,gBAAgB,GAAM,eAAe,EAAU,CAAK,CAAC,SAAS,GAAgC,EAAO,EAAK,EAAK,EAAI,CAAC,IAAM,EAAiB,GAA+B,CAAI,EAAE,IAAI,IAAM,KAAO,GAAM,CAAC,EAAE,CAAwD,IAAM,EAAU,GAAsB,EAAjF,GAAuB,EAAO,GAAK,MAAuD,CAAC,EAAE,GAAG,GAAgC,GAAW,MAAM,GAAW,eAAe,EAAG,OAAO,GAAkB,CAAW,CAAyH,OAArH,GAAkB,GAAM,OAAe,EAAqB,GAAK,yBAAyB,GAAM,OAAe,EAAa,IAAK,CAAC,SAAS,GAA0B,EAAO,EAAK,EAAE,EAAE,EAAI,CAAoC,GAAhC,CAAC,GAAQ,QAAQ,CAAC,GAAiB,CAAC,OAAO,SAAS,CAAC,GAAG,CAAC,OAAO,SAAS,CAAC,GAAG,EAAE,EAAK,MAAM,EAAE,EAAK,OAAO,EAAE,EAAK,KAAK,EAAE,EAAK,OAAQ,MAAM,CAAC,EAAG,IAAM,EAAO,GAA8B,EAAO,CAAG,EAEz+O,OAF++O,EAAO,QAAgB,EAAO,OAAO,oBAAoB,EAAI,EAAE,EAAO,MAAM,oBAAoB,EAAI,EAAE,GAAgB,GAAG,EAAE,EAAK,MAAM,KAAK,IAAI,EAAE,EAAK,KAAK,EAAE,EAAE,EAAE,GAAgB,EAAE,GAAG,EAAE,EAAK,KAAK,KAAK,IAAI,EAAE,EAAK,MAAM,GAAG,EAAE,EAAE,GAAoB,cAAc,GAAgB,EAAO,MAAM,EAEtwP,GAAoB,iBAAiB,EAAO,EAAK,GAF28O,CAAC,CAE18O,CAAC,SAAS,GAAwB,EAAI,CAAC,IAAM,EAAO,CAAC,EAAsG,OAAjG,GAAK,OAAO,EAAO,KAAK,CAAG,EAAO,GAAK,WAAW,GAAO,CAAI,GAAO,QAAO,EAAO,KAAK,CAAK,CAAE,CAAC,EAAS,CAAO,CAAC,SAAS,GAAsB,EAAO,CAAC,IAAM,EAAI,IAAI,IAAI,IAAI,IAAM,KAAQ,EAAO,CAAC,GAAG,CAAC,GAAM,SAAS,SAAS,IAAM,EAAK,MAAM,QAAQ,EAAK,QAAQ,EAAE,EAAK,SAAS,CAAC,EAAK,QAAQ,EAAE,EAAI,IAAI,EAAK,EAAK,IAAI,GAAU,GAAK,UAAqB,EAAI,SAAS,EAAI,UAAU,CAAC,EAAM,EAAI,SAAS,uBAAsB,EAAI,SAAS,qBAAqB,EAAI,SAAS,MAAM,GAAU,EAAI,SAAS,qBAAqB,MAAM,GAAjL,IAAoL,CAAC,CAAE,CAAC,OAAO,CAAI,CAAC,SAAS,GAAoB,EAAQ,CAAC,GAAG,CAAC,GAAS,KAAK,OAAO,IAAM,EAAE,KAAK,IAAI,EAAE,KAAK,IAAI,EAAE,EAAQ,UAAU,CAAC,CAAC,EAAK,EAAQ,cAAc,EAAQ,aAAa,EAAQ,aAAa,SAAS,EAAM,IAAO,CAAK,GAAM,WAA2B,MAAM,QAAQ,EAAK,QAAQ,EAAE,EAAK,SAAS,CAAC,EAAK,QAAQ,EAAA,CAAO,SAAS,EAAI,IAAQ,CAAC,GAAG,CAAC,GAAK,SAAS,OAAO,IAAM,EAAK,IAAQ,GAAU,EAAK,GAAsB,KAAK,CAAI,EAAO,GAAsB,OAAO,CAAC,EAAE,EAAI,SAAS,KAAK,GAAsB,KAAK,EAAQ,YAAY,CAAC,CAAC,CAAE,CAAC,CAAE,CAAC,EAAM,EAAQ,WAAW,EAAQ,cAAa,EAAQ,KAAK,MAAM,IAAI,EAAQ,YAAY,EAAE,EAAQ,UAAU,GAAG,EAAE,EAAQ,KAAK,MAAM,IAAI,EAAQ,YAAY,EAAE,EAAQ,UAAU,GAAG,EAAE,EAAQ,KAAK,MAAM,IAAI,EAAQ,YAAY,EAAE,EAAQ,UAAU,GAAG,GAAM,EAAQ,cAAc,EAAQ,iBAAgB,EAAQ,KAAK,SAAS,IAAI,EAAQ,eAAe,EAAE,EAAQ,aAAa,GAAG,EAAE,EAAQ,KAAK,SAAS,IAAI,EAAQ,eAAe,EAAE,EAAQ,aAAa,GAAG,EAAE,EAAQ,KAAK,SAAS,IAAI,EAAQ,eAAe,EAAE,EAAQ,aAAa,GAAG,GAAM,EAAQ,cAAc,EAAQ,iBAAgB,EAAQ,KAAK,SAAS,IAAI,EAAQ,eAAe,EAAE,EAAQ,aAAa,GAAG,EAAE,EAAQ,KAAK,SAAS,IAAI,EAAQ,eAAe,EAAE,EAAQ,aAAa,GAAG,EAAE,EAAQ,KAAK,SAAS,IAAI,EAAQ,eAAe,EAAE,EAAQ,aAAa,GAAG,EAAG,CAAC,SAAS,GAAsB,EAAQ,CAAK,GAAS,OAAY,EAAQ,SAAS,EAAE,GAAoB,CAAO,EAC5jE,EAAQ,KAAK,mBAAqB,EAAQ,cAAa,EAAQ,KAAK,SAAS,KAAK,EAAQ,YAAY,EAAK,EAAQ,cAAa,EAAQ,KAAK,SAAS,KAAK,EAAQ,YAAY,EAAK,EAAQ,WAAU,EAAQ,KAAK,MAAM,KAAK,EAAQ,SAAS,GAAG,GAAoC,EAAQ,IAAI,EAAE,EAAQ,KAAK,KAAK,EAAQ,OAAO,KAAK,EAAQ,aAAa,KAAK,EAAQ,aAAa,KAAK,EAAQ,aAAa,KAAK,EAAQ,UAAU,KAAK,EAAQ,YAAY,KAAK,EAAQ,eAAe,KAAK,EAAQ,eAAe,KAAK,EAAQ,YAAY,KAAK,CAAC,SAAS,GAA4B,EAAO,CAAK,EAAO,iBAAgB,EAAO,eAAe,CAAC,KAAK,KAAK,OAAO,KAAK,SAAS,EAAE,OAAO,EAAE,aAAa,KAAK,aAAa,KAAK,aAAa,KAAK,UAAU,KAAK,YAAY,KAAK,eAAe,KAAK,eAAe,KAAK,YAAY,IAAI,EAAE,EAAO,kBAAkB,CAAC,KAAK,KAAK,OAAO,KAAK,SAAS,EAAE,OAAO,EAAE,aAAa,KAAK,aAAa,KAAK,aAAa,KAAK,UAAU,KAAK,YAAY,KAAK,eAAe,KAAK,eAAe,KAAK,YAAY,IAAI,EAAE,EAAO,eAAe,CAAC,KAAK,KAAK,OAAO,KAAK,SAAS,EAAE,OAAO,EAAE,aAAa,KAAK,aAAa,KAAK,aAAa,KAAK,UAAU,KAAK,YAAY,KAAK,eAAe,KAAK,eAAe,KAAK,YAAY,IAAI,EAAG,CAAC,SAAS,GAAwB,EAAO,CAAC,GAAG,CAAC,GAAQ,gBAAgB,KAAK,OAAO,IAAM,EAAQ,EAAO,eAAe,EAAQ,SAAS,EAAE,GAAoB,CAAO,EAAE,EAAQ,KAAK,KAAK,EAAQ,OAAO,KAAK,EAAQ,aAAa,KAAK,EAAQ,aAAa,KAAK,EAAQ,UAAU,KAAK,EAAQ,eAAe,KAAK,EAAQ,eAAe,KAAK,EAAQ,YAAY,IAAK,CAAC,SAAS,GAAwB,EAAO,EAAI,EAAO,CAAC,GAAG,CAAC,GAAQ,CAAC,GAAK,CAAC,GAAQ,cAAc,GAAQ,UAAU,OAAO,GAA4B,CAAM,EAAK,EAAO,gBAAgB,MAAM,EAAO,eAAe,OAAO,GAAK,GAAwB,CAAM,EAAG,IAAM,EAAQ,EAAO,eAAqB,EAAQ,GAAiC,EAAI,EAAO,gBAAgB,EAAE,EAAQ,KAAK,EAAI,EAAQ,OAAO,EAAO,EAAQ,SAAS,EAAE,EAAQ,OAAO,EAAE,EAAQ,aAAa,EAAQ,aAAa,EAAQ,aAAa,EAAQ,aAAa,EAAQ,UAAU,EAAQ,UAAU,EAAQ,eAAe,EAAQ,eAAe,EAAQ,eAAe,EAAQ,eAAe,EAAQ,YAAY,EAAQ,YAAY,GAAoB,CAAO,CAAE,CAAC,SAAS,GAAyB,EAAO,EAAU,GAAK,EAAM,KAAK,CAAC,GAAG,CAAC,EAAO,OAAO,AAAsF,EAAO,8BAAvD,aAAa,EAAO,0BAA0B,EAAoC,MAAM,GAA4B,CAAM,EAAE,IAAM,EAAQ,EAAO,qBAAqB,GAAG,EAAQ,CAAI,GAAW,GAA8B,EAAO,2BAA2B,cAAc,EAAM,CAAO,EAAM,IAAoB,GAAoB,KAAK,EAAE,CAAC,EAAE,IAAM,EAAO,EAAO,eAAqB,EAAQ,EAAO,kBAAqB,EAAQ,MAAM,EAAQ,OAAO,GAAQ,GAAsB,CAAO,EAAE,EAAQ,KAAK,EAAO,KAAK,EAAQ,OAAO,EAAO,OAAO,EAAQ,SAAS,EAAO,SAAS,EAAQ,aAAa,EAAO,aAAa,EAAQ,aAAa,EAAO,aAAa,EAAQ,aAAa,EAAO,aAAa,EAAQ,UAAU,EAAO,UAAU,EAAQ,YAAY,EAAO,YAAY,EAAQ,eAAe,EAAO,eAAe,EAAQ,eAAe,EAAO,eAAe,EAAQ,YAAY,EAAO,YAAY,EAAO,KAAK,KAAK,EAAO,OAAO,KAAK,EAAO,SAAS,EAAE,EAAO,OAAO,EAAE,EAAO,aAAa,KAAK,EAAO,aAAa,KAAK,EAAO,aAAa,KAAK,EAAO,UAAU,KAAK,EAAO,YAAY,KAAK,EAAO,eAAe,KAAK,EAAO,eAAe,KAAK,EAAO,YAAY,IAAK,CAAC,EAAO,qBAAqB,KAAK,EAAO,2BAA2B,IAAK,CAAC,SAAS,GAAiC,EAAO,EAAM,KAAK,CAAI,CAAC,GAAQ,sBAAsB,EAAO,6BAAkC,EAAO,2BAA2B,eAAe,CAAC,EAAO,2BAA2B,KAAK,GAAyB,EAAO,GAAK,CAAK,CAAE,EAAE,EAAE,EAAE,CAAC,SAAS,GAAuB,EAAO,EAAI,EAAO,EAAM,KAAK,CAAC,GAAG,CAAC,GAAQ,CAAC,GAAK,CAAC,EAAO,OAAyK,GAAlK,AAAsF,EAAO,8BAAvD,aAAa,EAAO,0BAA0B,EAAoC,MAAM,GAA4B,CAAM,EAAK,EAAO,uBAAuB,EAAI,CAAC,IAAM,GAAa,EAAO,cAAc,GAAA,CAAI,KAAK,EAAK,GAAa,IAAqB,GAAO,GAAoB,EAAY,EAAM,SAAS,EAAE,EAAM,SAAS,CAAC,EAAG,MAAO,CAAC,IAAM,EAAQ,EAAO,kBAAwB,EAAO,EAAO,eAAe,GAAG,EAAQ,OAAO,EAAI,CAAC,EAAO,KAAK,EAAQ,KAAK,EAAO,OAAO,EAAQ,OAAO,EAAO,SAAS,EAAQ,SAAS,EAAO,OAAO,EAAE,EAAO,aAAa,EAAQ,aAAa,EAAO,aAAa,EAAQ,aAAa,EAAO,aAAa,EAAQ,aAAa,EAAO,UAAU,EAAQ,UAAU,EAAO,YAAY,EAAQ,YAAY,EAAO,eAAe,EAAQ,eAAe,EAAO,eAAe,EAAQ,eAAe,EAAO,YAAY,EAAQ,YAAY,EAAQ,KAAK,KAAK,EAAQ,OAAO,KAAK,EAAQ,SAAS,EAAE,EAAQ,aAAa,KAAK,EAAQ,aAAa,KAAK,EAAQ,aAAa,KAAK,EAAQ,UAAU,KAAK,EAAQ,YAAY,KAAK,EAAQ,eAAe,KAAK,EAAQ,eAAe,KAAK,EAAQ,YAAY,KAAK,EAAO,qBAAqB,EAAI,EAAO,2BAA2B,EAAO,GAA8B,EAAO,cAAc,EAAM,CAAG,EAAE,IAAM,GAAa,EAAO,cAAc,GAAA,CAAI,KAAK,EAAK,GAAa,IAAqB,GAAO,GAAoB,EAAY,EAAM,SAAS,EAAE,EAAM,SAAS,CAAC,EAAG,MAAO,CAAC,GAAyB,EAAO,GAAK,CAAK,EAAE,EAAO,qBAAqB,EAAI,EAAO,2BAA2B,EAAO,GAA8B,EAAO,cAAc,EAAM,CAAG,EAAE,IAAM,GAAa,EAAO,cAAc,GAAA,CAAI,KAAK,EAAK,GAAa,IAAqB,GAAO,GAAoB,EAAY,EAAM,SAAS,EAAE,EAAM,SAAS,CAAC,EAAG,IAAM,EAAY,EAAO,aAAa,YAAe,OAAc,OAClpL,IADgqL,EAAO,KAAK,EAAI,EAAO,OAAO,EAAO,EAAO,SAAS,EAAE,EAAO,OAAO,EACx1L,EAAO,aAAa,GAAjD,GAAwB,CAAyD,CAAC,EAAE,EAAO,YAAY,GAAW,EAAO,YAAY,SAAS,EAAK,IAAc,QAAS,EAAO,UAAU,EAAI,MAAM,MAAM,EAAE,EAAO,YAAY,EAAI,MAAM,MAAM,CAAC,CAAC,eAAe,EAAO,YAAY,GAAG,OAAQ,GAAG,IAAc,YAAY,CAAC,IAAM,EAAQ,GAAiC,EAAI,EAAO,gBAAgB,EAAE,EAAO,aAAa,EAAQ,aAAa,EAAO,aAAa,EAAQ,aAAa,EAAO,UAAU,EAAQ,UAAU,EAAO,eAAe,EAAQ,eAAe,EAAO,eAAe,EAAQ,eAAe,EAAO,YAAY,EAAQ,WAAY,EAAC,CAAC,SAAS,GAAmB,EAAO,EAAK,EAAK,EAAM,EAAI,CAAC,GAAG,CAAC,GAAQ,CAAC,GAAoC,EAAK,CAAG,GAAG,GAAK,mBAAmB,CAAC,GAAyB,EAAO,GAAK,GAAO,YAAY,EAAE,MAAO,CAAC,IAAM,EAAE,GAAO,SAAe,EAAE,GAAO,SAAS,GAAG,CAAC,GAAO,eAAe,CAAC,OAAO,SAAS,CAAC,GAAG,CAAC,OAAO,SAAS,CAAC,IAAI,GAAO,oBAAoB,GAAG,YAAY,IAAI,EAAE,CAAC,GAAyB,EAAO,GAAK,GAAO,YAAY,EAAE,MAAO,CAAC,IAAM,EAAI,YAAY,IAAI,EAAQ,EAAW,GAAO,YAAY,EAAQ,EAAc,EAAO,qBAAqB,GAAG,GAAuE,GAAjE,GAAK,EAAO,2BAA2B,GAAG,GAA0B,EAAO,+BAA+B,GAAY,GAAK,EAAO,2BAA2B,GAAG,IAAK,OAAQ,EAAO,6BAA6B,EAAW,EAAO,0BAA0B,EAAI,IAAM,EAAK,GAA0B,EAAO,EAAK,EAAE,EAAE,CAAG,EAAE,IAAI,IAAM,KAAO,EAAK,CAAC,IAAM,EAAQ,GAAwB,EAAO,EAAK,EAAI,OAAO,CAAG,EAAE,GAAG,EAAQ,CAAC,GAAuB,EAAO,EAAQ,IAAI,EAAQ,OAAO,GAAO,YAAY,EAAE,MAAO,CAAC,CAAC,GAAiC,EAAO,GAAO,YAAY,CAAE,CAAC,SAAS,GAA8B,EAAO,EAAI,EAAG,CAAC,GAAG,CAAC,EAAO,OAAO,GAA4B,CAAM,EAAE,IAAM,EAAO,EAAO,eAAqB,EAAQ,EAAO,kBAAkB,GAAG,EAAG,EAAE,CAAC,GAAG,EAAO,KAAK,CAAC,IAAM,EAAM,EAAO,QAAQ,YAAY,GAAG,EAAO,WAAW,EAAE,EAAO,UAAU,KAAK,IAAI,EAAE,EAAG,CAAK,EAAK,KAAK,IAAI,EAAE,EAAO,QAAQ,EAAE,OAAK,EAAO,SAAS,GAAE,GAAoB,CAAM,CAAE,CAAC,GAAG,EAAQ,KAAK,CAAC,IAAM,EAAM,EAAQ,QAAQ,YAAY,GAAG,EAAQ,WAAW,EAAE,EAAQ,UAAU,KAAK,IAAI,EAAE,EAAG,CAAK,EAAK,EAAQ,SAAS,KAAK,GAAsB,CAAO,EAAO,GAAoB,CAAO,CAAE,CAAC,GAAG,EAAO,mBAAmB,MAAM,EAAO,mBAAmB,UAAU,CAAC,IAAM,EAAK,EAAO,kBAAkB,EAAK,KAAK,SAAS,KAAK,EAAK,UAAU,KAAK,IAAI,EAAE,EAAG,CAAC,CAAC,EAAK,EAAK,KAAK,SAAS,WAAW,EAAK,SAAS,EAAE,OAAM,EAAK,KAAK,SAAS,KAAK,EAAK,SAAS,EAAE,EAAO,kBAAkB,KAAM,CAAC,CAAC,IAAI,EAAmB,CAAC,CAAC,GAAK,2BAA2B,GAAG,CAAC,GAAoB,EAAO,eAAe,GAAK,EAAE,KAAS,EAAO,UAAW,GAAG,GAAO,oBAAoB,2BAA2B,CAAC,EAAmB,GAAK,KAAM,EAAG,GAAG,CAAC,EAAmB,OAAO,IAAM,EAAM,CAAC,GAAG,GAAK,sBAAsB,CAAC,CAAC,EAAE,GAAG,EAAO,UAAW,IAAI,GAAK,EAAE,KAAS,EAAO,UAAU,CAAC,IAAM,EAAO,GAAO,mBAAsB,GAAQ,4BAA4B,EAAO,sBAAsB,EAAM,KAAK,GAAG,EAAO,oBAAoB,CAAG,CAAM,KAAM,OAAc,IAAG,EAAO,+BAA+B,GAAyB,EAAO,CAAG,EAAE,CAAC,EAAO,6BAA6B,GAAyB,EAAO,CAAG,EAAE,EAAO,4BAA4B,IAAI,IAAI,IAAI,IAAM,KAAQ,EAAM,CAAC,IAAM,EAAK,OAAO,GAAM,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,YAAY,EAAE,GAAG,CAAC,GAAM,EAAO,4BAA4B,IAAI,CAAI,EAAE,SAAS,IAAI,EAAQ,KAAW,EAAM,CAAC,EAAO,KAAK,EAAE,GAAG,EAAO,UAAW,IAAI,GAAK,EAAE,KAAS,EAAO,UAAU,EAAM,KAAK,GAAO,KAAK,EAAG,IAAI,IAAM,KAAQ,EAAU,GAAS,CAAC,GAAc,EAAK,WAAW,GAAM,CAAI,GAAkB,IAAO,GAAe,OAAO,GAAM,MAAM,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,CAAI,IAAG,EAAQ,EAAM,CAAC,EAAG,EAAO,4BAA4B,IAAI,EAAK,CAAO,CAAE,CAAC,CAAC,IAAI,IAAM,KAAQ,EAAM,CAAC,IAAM,EAAK,OAAO,GAAM,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,YAAY,EAAQ,EAAO,EAAO,6BAA6B,MAAM,CAAI,EAAM,KAAgB,IAAG,EAAK,YAAY,EAAG,EAAE,CAAC,IAAM,GAAO,EAAK,qBAAqB,GAAG,EAAS,EAAK,EAAK,oBAAoB,IAAO,IAAO,IAAI,EAAO,SAAS,GAAG,EAAc,IAAO,IAAI,EAAO,SAAS,GAAG,EAAW,EAAO,SAAS,GAAG,CAAM,CAAC,GAAG,EAAK,aAAa,CAAC,EAAI,mBAAmB,CAAC,AAAmC,EAAO,yBAAuB,CAAC,EAAE,EAAO,SAAS,EAAE,EAAE,EAAO,SAAS,CAAC,EAAG,IAAM,EAAU,EAAK,0BAA0B,GAAG,EAAO,SAAS,EAAE,EAAO,uBAAuB,GAAG,EAAO,aAAa,GAAG,EAAU,EAAO,SAAS,EAAE,EAAO,uBAAuB,GAAG,EAAO,aAAa,GAAG,EAAU,EAAG,CAAxX,CAAyX,CAA/vB,CAAgwB,CAAC,SAAS,GAA8B,EAAO,CAAC,GAAG,CAAC,EAAO,OAAO,IAAM,EAAO,EAAO,eAAqB,EAAQ,EAAO,kBAAwB,EAAM,EAAO,eAAqB,EAAY,IAAI,IAAU,EAAS,GAAS,CAAI,GAAS,MAAM,CAAC,EAAY,IAAI,EAAQ,IAAI,IAAG,EAAY,IAAI,EAAQ,IAAI,EAAM,EAAQ,KAAK,mBAAqB,EAAQ,cAAa,EAAQ,KAAK,SAAS,KAAK,EAAQ,YAAY,EAAK,EAAQ,cAAa,EAAQ,KAAK,SAAS,KAAK,EAAQ,YAAY,EAAK,EAAQ,WAAU,EAAQ,KAAK,MAAM,KAAK,EAAQ,SAAS,GAAI,EAAE,EAAS,CAAM,EAAE,EAAS,CAAO,EAAE,EAAS,CAAK,EAAK,GAAQ,MAAK,GAAoB,CAAM,EAAK,GAAS,MAAK,GAAoB,CAAO,EAAK,GAAO,MAAK,GAAoB,CAAK,CAAE,CAAC,SAAS,GAA2B,EAAO,EAAI,CAAC,IAAM,EAAM,CAAC,GAAQ,OAAO,MAAM,UAAU,GAAK,wBAAwB,EAAE,EAAE,GAAG,GAAQ,UAAW,IAAI,GAAK,CAAC,EAAI,KAAS,EAAO,UAAW,EAAM,KAAK,GAAG,EAAI,GAAG,GAAO,OAAO,MAAM,OAAO,GAAG,GAAO,OAAO,UAAU,IAAO,EAAI,OAAO,EAAM,KAAK,GAAG,CAAE,CAAC,SAAS,GAAwB,EAAO,EAAI,CAAkE,GAA9D,CAAC,IAAc,EAAO,kCAAkC,GAAS,CAAC,GAAK,0BAAyB,OAAO,IAAM,EAAM,EAAI,oBAAoB,CAAC,EAAE,GAAG,CAAC,EAAM,OAAO,OAAO,AAA2B,EAAO,kBAAgB,IAAI,IAAI,IAAM,EAAS,GAA2B,EAAO,CAAG,EAAE,GAAG,EAAO,6BAA6B,EAAS,CAAC,EAAO,2BAA2B,EAAS,EAAO,0BAA0B,IAAI,IAAI,IAAM,EAAM,CAAC,EAAO,KAAK,EAAE,GAAG,EAAO,UAAW,IAAI,GAAK,EAAE,KAAS,EAAO,UAAU,EAAM,KAAK,GAAO,KAAK,EAAG,IAAI,IAAM,KAAQ,EAAM,CAAC,IAAM,EAAK,OAAO,GAAM,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,YAAY,EAAE,GAAG,CAAC,GAAM,EAAO,0BAA0B,IAAI,CAAI,EAAE,SAAS,IAAI,EAAQ,KAAK,IAAI,IAAM,KAAQ,EAAU,GAAS,CAAC,GAAc,EAAK,WAAW,GAAM,CAAI,GAAkB,IAAO,IAAgB,GAAM,QAAQ,GAAM,SAAS,GAAM,aAAa,OAAO,GAAM,MAAM,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,CAAI,IAAG,EAAQ,EAAM,CAAC,EAAG,EAAO,0BAA0B,IAAI,EAAK,CAAO,CAAE,CAAC,CAAC,IAAM,EAAW,EAAI,sBAAsB,KAAK,IAAI,KAAK,KAAK,IAAI,EAAE,EAAI,iBAAiB,GAAG,CAAC,EAAE,EAAQ,EAAS,KAAK,GAAG,IAAQ,EAAkB,GAAM,IAAI,IAAM,KAAQ,EAAM,CAAC,IAAM,EAAS,OAAO,GAAM,UAAU,EAAE,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,EAAS,SAAS,IAAM,EAAI,EAAS,YAAY,EAAQ,EAAO,EAAO,2BAA2B,MAAM,CAAG,EAAE,GAAG,CAAC,EAAO,SAAS,IAAM,EAAQ,GAAyB,EAAK,GAA8B,EAAK,YAAY,KAAK,EAAK,aAAa,CAAC,EAAQ,EAAY,OAAO,GAAM,aAAa,EAAE,CAAC,CAAC,KAAK,EAAM,EAAO,EAAO,gBAAgB,IAAI,CAAG,EAAE,GAAG,CAAC,GAAQ,EAAO,eAAe,EAG3sO,EAAO,CAAC,GAAG,EAAQ,aAAa,CAAW,EAAE,EAAO,gBAAgB,IAAI,EAAI,CAAM,MAAO,CAAC,IAAM,EAAc,EAAO,QAAQ,EAAO,OAAO,EAAQ,EAAc,EAAO,QAAQ,EAAO,OAAO,EAAQ,EAAc,EAAO,QAAQ,EAAO,OAAO,EAAgxB,GAA3wB,EAAW,IAAI,KAAK,IAAI,EAAQ,KAAK,EAAO,IAAI,EAAE,MAAM,KAAK,IAAI,EAAQ,KAAK,EAAO,IAAI,EAAE,MAAM,KAAK,IAAI,EAAQ,KAAK,EAAO,IAAI,EAAE,MAAM,KAAK,IAAI,EAAQ,KAAK,EAAO,IAAI,EAAE,MAAM,KAAK,IAAI,EAAQ,KAAK,EAAO,IAAI,EAAE,MAAM,KAAK,IAAI,EAAQ,KAAK,EAAO,IAAI,EAAE,MAAM,KAAK,IAAI,EAAQ,OAAO,CAAa,EAAE,MAAM,KAAK,IAAI,EAAQ,OAAO,CAAa,EAAE,MAAM,KAAK,IAAI,EAAQ,OAAO,CAAa,EAAE,MAAM,KAAK,IAAI,EAAQ,SAAS,EAAO,SAAS,EAAE,EAAE,QAAO,EAAkB,IAAM,EAAO,OAAO,EAAQ,KAAK,EAAO,MAAM,EAAW,EAAO,OAAO,EAAQ,KAAK,EAAO,MAAM,EAAW,EAAO,OAAO,EAAQ,KAAK,EAAO,MAAM,EAAW,EAAO,OAAO,EAAQ,KAAK,EAAO,MAAM,EAAW,EAAO,OAAO,EAAQ,KAAK,EAAO,MAAM,EAAW,EAAO,OAAO,EAAQ,KAAK,EAAO,MAAM,EAAc,EAAO,SAAS,IAAA,GAAU,CAAC,IAAM,EAAY,EAAO,OAAO,EAAE,EAAO,OAAO,EAAY,EAAO,OAAO,EAAY,EAAO,OAAO,CAAY,CAAC,EAAO,SAAS,EAAQ,OAAO,EAAO,QAAQ,EAAW,EAAO,SAAS,EAAQ,OAAO,EAAO,QAAQ,EAAW,EAAO,SAAS,EAAQ,OAAO,EAAO,QAAQ,EAAW,EAAO,UAAU,EAAQ,QAAQ,EAAO,SAAS,CAAW,CAAI,EAAO,mBAAmB,IAAA,KAAW,EAAO,iBAAiB,EAAO,SAAS,MAAM,EAAE,EAAO,iBAAiB,EAAO,SAAS,MAAM,EAAE,EAAO,mBAAmB,EAAO,MAAM,MAAM,GAAG,EAAO,SAAS,EAAE,EAAO,iBAAiB,EAAE,EAAO,KAAK,EAAO,SAAS,EAAE,EAAO,iBAAiB,EAAE,EAAO,KAAK,EAAO,SAAS,EAAE,EAAO,iBAAiB,EAAE,EAAO,KAAK,EAAO,SAAS,EAAE,EAAO,iBAAiB,EAAE,EAAO,KAAK,EAAS,EAAO,SAAS,EAAE,EAAO,iBAAiB,EAAE,EAAO,KAAK,EAAS,EAAO,SAAS,EAAE,EAAO,iBAAiB,EAAE,EAAO,KAAK,EAAS,EAAO,MAAM,EAAE,EAAO,mBAAmB,EAAE,KAAK,IAAI,KAAK,EAAO,MAAM,EAAE,EAAO,MAAM,EAAE,EAAO,mBAAmB,EAAE,KAAK,IAAI,KAAK,EAAO,MAAM,EAAE,EAAO,MAAM,EAAE,EAAO,mBAAmB,EAAE,KAAK,IAAI,KAAK,EAAO,MAAM,EAAE,IAAM,EAAQ,KAAK,IAAI,EAAE,KAAK,IAAI,EAAE,EAAO,OAAO,CAAC,EAAE,GAAG,EAAO,uBAAuB,EAAQ,CAAC,IAAI,EAAe,EAAO,wBAA4B,IAAgB,EAAe,EAAO,OAAO,CAAC,CAAM,EAAE,CAAC,EAAM,EAAO,QAAQ,EAAO,WAAW,GAAM,CAAI,GAAM,QAAQ,EAAK,UAAS,EAAe,KAAK,CAAI,CAAE,CAAC,EAAG,EAAO,wBAAwB,GAAgB,IAAI,IAAM,KAAQ,GAA2B,MAAM,QAAQ,EAAK,QAAQ,EAAE,EAAK,SAAS,CAAC,EAAK,QAAQ,EAAA,CAAO,QAAQ,GAAK,CAAK,IAAW,EAAI,QAAQ,EAAQ,EAAI,YAAY,EAAQ,GAAG,CAAC,CAAC,EAAI,YAAY,EAAI,YAAY,GAAK,CAAC,EAAG,EAAO,qBAAqB,CAAQ,CAAC,CAAC,EAAO,kCAAkC,CAAkB,CAAC,SAAS,GAAyB,EAAO,EAAO,CAAC,IAAM,EAAO,GAAQ,OAAiG,OAAvF,GAAQ,IAAS,GAAQ,OAAO,IAAS,GAAQ,OAAO,CAAC,EAAO,OAAe,EAAe,CAAO,CAAC,SAAS,GAAyB,EAAO,EAAO,EAAK,EAAE,EAAE,CAAC,GAAG,CAAC,GAAQ,CAAC,GAAQ,CAAC,EAAK,OAAO,KAAK,IAAM,EAAM,GAAyB,EAAO,CAAM,EAAQ,EAAK,GAAO,MAAM,GAAQ,MAAM,YAAkB,EAAK,GAAQ,cAAc,cAAc,OAAa,EAAY,CAAC,EAAK,GAAO,OAAO,EAAY,KAAK,CAAK,EAAO,GAAO,WAAW,GAAO,CAAI,GAAO,QAAO,EAAY,KAAK,CAAK,CAAE,CAAC,EAAG,IAAI,EAAM,EAAE,IAAI,IAAM,KAAQ,EAAY,CAAC,IAAM,EAAK,GAAM,UAAU,eAAe,UAAU,EAAK,IAAK,GAAO,EAAK,OAAO,EAAE,CAAC,IAAI,EAAI,GAAM,GAAQ,WAAU,AAA0I,EAAvI,MAAM,QAAQ,EAAO,QAAQ,EAAO,EAAO,SAAS,IAAI,GAAU,GAAU,MAAM,GAAU,MAAM,EAAE,CAAC,CAAC,OAAO,OAAO,CAAC,CAAC,KAAK,IAAI,EAAY,EAAO,SAAS,MAAM,EAAO,SAAS,MAAM,IAAK,IAAI,EAAK,EAAS,EAAQ,GAAO,OAAO,KAAM,GAAS,IAAU,EAAO,OAAU,EAAQ,OAAK,EAAK,GAAG,EAAQ,KAAK,KAAK,KAAO,EAAQ,EAAQ,OAAQ,MAAM,CAAC,EAAE,EAAE,EAAK,KAAK,EAAE,EAAE,EAAK,IAAI,QAAQ,EAAE,QAAQ,EAAE,OAAK,OAAK,QAAM,MAAI,MAAI,CAAE,CAAC,SAAS,GAA2B,EAAK,CAAC,IAAI,EAAM,EAAuD,OAArD,GAAM,WAAW,GAAO,CAAI,GAAO,QAAO,GAAQ,CAAC,EAAS,CAAM,CAAC,SAAS,GAAyB,EAAO,CAAC,GAAG,CAAC,EAAO,MAAM,CAAC,EAAE,IAAM,EAAK,CAAC,EAAQ,EAAM,CAAC,EAA2C,GAAtC,EAAO,OAAM,EAAM,KAAK,EAAO,KAAK,EAAK,EAAO,cAAe,GAAK,EAAE,KAAS,EAAO,UAAc,GAAO,OAAM,EAAM,KAAK,EAAM,KAAK,EAAI,IAAM,GAAO,EAAK,IAAQ,CAAC,GAAG,CAAC,GAAM,EAAK,QAAQ,IAAI,OAAO,GAAG,EAAK,OAAO,CAAC,IAAM,EAAK,EAAK,UAAU,eAAe,UAAU,EAAE,EAAK,KAAK,CAAC,KAAK,EAAK,MAAM,YAAY,KAAK,EAAK,cAAc,cAAc,OAAO,QAAM,MAAM,GAAM,OAAO,EAAE,QAAQ,EAAK,CAAC,EAAE,MAAO,CAAC,IAAM,EAAe,GAA2B,CAAI,EAAK,EAAK,MAAM,EAAe,GAAG,EAAK,KAAK,CAAC,KAAK,EAAK,KAAK,KAAK,QAAQ,QAAM,MAAM,EAAE,QAAQ,GAAK,gBAAc,CAAC,EAAG,IAAM,EAAU,EAAK,KAAK,EAAM,EAAE,EAAM,IAAI,IAAM,KAAS,EAAK,UAAU,CAAC,EAAE,EAAM,EAAM,CAAS,CAAE,EAAqC,OAAnC,EAAM,QAAQ,GAAM,EAAM,EAAK,CAAC,CAAC,EAAS,CAAK,CAAC,SAAS,GAA4B,EAAO,EAAO,EAAM,EAAI,CAAC,IAAM,EAAS,OAAO,GAAQ,eAAe,EAAE,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,GAAU,CAAC,GAAQ,OAAO,CAAC,EAAO,YAAY,OAAO,OAAO,IAAM,EAAK,GAAmB,EAAO,WAAW,CAAQ,EAAE,GAAG,CAAC,EAAK,OAAO,IAAM,EAAO,EAAO,MAAM,WAAW,CAAI,EAAE,GAAG,GAAQ,YAAY,EAAE,CAAC,AAA2G,EAAO,yBAAjF,EAAO,MAAM,oBAAoB,WAAW,EAAO,qBAAqB,EAA+B,MAAM,EAAO,KAAK,EAAE,MAAO,CAAC,AAA2G,EAAO,yBAAjF,EAAO,MAAM,oBAAoB,WAAW,EAAO,qBAAqB,EAA+B,MAAM,IAAM,EAAS,EAAO,eAAe,OAA8X,GAApX,IAAW,UAAU,EAAO,QAAQJ,GAAiB,GAAQ,EAAE,EAAO,kBAAkB,IAAe,IAAW,YAAY,EAAO,QAAQD,GAAmB,GAAQ,EAAE,EAAO,kBAAkB,KAAY,EAAO,QAAQD,GAAe,CAAC,EAAE,EAAO,kBAAkB,IAAM,EAAO,UAAU,EAAO,iBAAiB,GAAG,EAAK,EAAO,mBAAkB,EAAO,KAAK,EAAK,UAAa,IAAW,QAAQ,EAAO,oBAAoB,CAAC,IAAM,EAAW,GAAK,CAAI,GAAK,SAAS,IAAc,EAAO,MAAM,oBAAoB,WAAW,CAAU,EAAE,EAAO,sBAAsB,KAAK,GAA8B,EAAO,sBAAsB,EAAM,CAAG,EAAE,EAAE,EAAO,MAAM,iBAAiB,WAAW,CAAU,EAAE,EAAO,sBAAsB,CAAW,CAAC,EAAO,MAAM,EAAK,EAAO,mBAAkB,EAAO,KAAK,EAAK,SAAS,EAAO,OAAO,IAAO,EAAO,KAAK,CAAE,CAAC,SAAS,GAA0B,EAAO,EAAO,EAAM,EAAI,CAAC,IAAM,EAAO,GAAQ,aAAa,OAAO,GAAG,IAAS,UAAU,CAAC,IAAM,EAAI,EAAO,UAAU,GAAM,IAAQ,EAAO,eAAe,EAAO,KAAK,EAAI,SAAS,UAAU,EAAO,EAAO,SAAS,KAAK,EAAK,MAAM,GAAG,IAAS,mBAAmB,CAAC,IAAM,EAAW,OAAO,EAAO,iBAAiB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,YAAY,EAAE,GAAG,CAAC,EAAW,CAAC,EAAI,QAAQ,CAAC,EAAI,QAAQ,GAA0B,CAAM,EAAE,MAAO,CAAC,IAAM,EAAO,GAAM,CAAK,GAAY,EAAK,WAAW,GAAO,CAAI,OAAO,GAAO,MAAM,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,CAAU,IAAG,EAAM,QAAQ,CAAC,EAAM,QAAS,CAAC,CAAE,EAAuB,GAArB,EAAO,EAAO,KAAK,EAAK,EAAO,UAAW,IAAI,GAAK,EAAE,KAAS,EAAO,UAAU,EAAO,GAAO,KAAK,EAAG,GAA0B,CAAM,CAAE,MAAM,GAAG,IAAS,cAAc,CAAC,IAAM,EAAO,GAAwB,CAAG,EAAQ,EAAQ,CAAC,CAAC,EAAI,sBAAsB,IAAI,IAAM,KAAQ,EAAQ,GAAG,EAAS,GAAiB,CAAI,OAAQ,GAAG,EAAK,SAAS,CAAC,GAAgB,CAAI,EAAE,IAAM,EAAK,MAAM,QAAQ,EAAK,QAAQ,EAAE,EAAK,SAAS,CAAC,EAAK,QAAQ,EAAQ,EAAM,GAAW,EAAO,YAAY,SAAS,EAAE,EAAK,QAAQ,GAAK,CAAI,GAAK,OAAM,EAAI,MAAM,KAAK,CAAK,CAAE,CAAC,CAAE,CAAE,EAAI,sBAAsB,CAAC,CAAQ,MAAS,IAAS,iBAAiB,GAA4B,EAAO,EAAO,EAAM,CAAG,CAAG,CAAC,SAAS,GAA2B,EAAO,CAA2Q,OAAtQ,GAAmB,AAAoC,EAAO,0BAAwB,GAAO,CAAC,IAAM,EAAQ,EAAO,gCAAgC,yBAAyB,EAAO,sBAAsB,wBAA4B,GAAe,EAAQ,CAAK,CAAE,EAAU,EAAO,yBAAtQ,IAA8R,CAAC,SAAS,GAAyB,EAAO,EAAK,EAAO,EAAU,KAAK,EAAU,GAAM,CAAC,GAAG,CAAC,EAAO,OAAU,GAAQ,EAAO,0BAAyB,aAAa,EAAO,uBAAuB,EAAE,EAAO,wBAAwB,KAAK,EAAO,+BAA+B,MAAS,CAAC,GAAQ,GAAW,EAAO,0BAAyB,aAAa,EAAO,uBAAuB,EAAE,EAAO,wBAAwB,KAAK,EAAO,+BAA+B,MAAM,IAAM,EAAe,EAAO,6BAA6B,GAAW,EAAW,GAAO,GAAM,IAAO,GAAS,EAAS,EAAO,qBAAqB,EAAW,EAAW,EAAO,uBAAuB,GAAmH,GAA1F,GAAgB,EAAO,wBAAwB,IAAS,CAAC,GAAQ,IAAa,GAA+B,CAAI,GAAQ,IAAK,EAAO,oBAAoB,GAAK,MAAO,CAAC,GAAG,CAAC,GAAQ,GAAgB,CAAC,EAAU,CAAiD,GAAhD,EAAO,+BAA+B,EAAa,EAAO,wBAAwB,OAAO,EAAO,wBAAwB,eAAe,CAAC,EAAO,wBAAwB,KAAK,IAAM,EAAa,EAAO,+BAA+B,EAAO,+BAA+B,KAAK,GAAyB,EAAO,EAAK,GAAM,EAAa,EAAI,CAAE,EAAE,EAAE,EAAE,MAAO,CAAC,GAAG,GAAQ,GAAgB,EAAO,uBAAuB,GAAY,IAAa,EAAW,CAAC,IAAM,EAAY,GAA0B,EAAS,EAAK,EAAE,GAAG,EAAa,GAAG,CAAI,EAAU,EAAY,CAAS,EAAO,EAAY,CAAE,OAAO,EAAM,CAAC,QAAQ,KAAK,qDAAqD,CAAK,CAAE,CAAE,CAAiN,GAAhN,EAAO,2BAA2B,GAAK,EAAO,sBAAsB,EAAO,EAAO,oBAAoB,EAAO,EAAK,KAAK,EAAO,sBAAsB,EAAO,EAAW,GAAG,EAAO,yBAAyB,EAAU,EAAO,UAAW,IAAI,GAAK,EAAE,KAAS,EAAO,UAAW,EAAM,yBAAyB,EAAS,GAAG,CAAC,GAAgB,CAAC,EAAO,OAA4C,IAAM,EAAQ,GAAnC,EAAO,EAAK,EAA2D,CAAM,EAAM,KAAe,GAAG,CAAI,EAAU,EAAQ,CAAS,EAAO,EAAQ,CAAE,OAAO,EAAM,CAAC,QAAQ,KAAK,qDAAqD,CAAK,CAAE,CAAC,CAAC,SAAS,GAAoB,EAAO,EAAK,EAAK,EAAM,CAAC,IAAM,EAAI,GAAQ,gBAAoE,GAAG,CAAtC,GAAyB,EAAK,CAAkB,GAAG,CAAC,GAAQ,QAAQ,CAAC,EAAK,CAAC,GAAyB,EAAO,EAAK,GAAM,KAAK,EAAI,EAAE,MAAO,CAAC,IAAM,EAAE,GAAO,SAAe,EAAE,GAAO,SAAwL,GAAG,EAA5J,GAAO,eAAiD,OAAO,SAAS,CAAC,GAAG,OAAO,SAAS,CAAC,GAAG,GAAG,EAAK,MAAM,GAAG,EAAK,OAAO,GAAG,EAAK,KAAK,GAAG,EAAK,QAAyB,CAAC,GAAyB,EAAO,EAAK,GAAM,GAAO,aAAa,EAAI,EAAE,MAAO,CAAC,IAAM,EAAI,YAAY,IAAI,EAAE,IAAI,GAAO,oBAAoB,GAAG,EAAK,OAAQ,IAAM,EAAW,GAAO,YAAY,EAAQ,EAAa,CAAC,KAAK,MAAM,EAAK,IAAI,EAAE,KAAK,MAAM,EAAK,GAAG,EAAE,KAAK,MAAM,EAAK,KAAK,EAAE,KAAK,MAAM,EAAK,MAAM,EAAE,EAAO,uBAAuB,CAAC,CAAC,CAAC,KAAK,GAAG,EAAQ,EAAmB,EAAO,sBAAsB,GAAG,GAAqH,GAA/G,EAAO,wBAAwB,GAAc,GAAK,EAAO,uBAAuB,GAAG,GAA+B,EAAO,2BAA2B,GAAY,EAAO,wBAAwB,EAAc,OAAQ,EAAO,yBAAyB,EAAW,EAAO,sBAAsB,EAAa,EAAO,sBAAsB,EAAI,IAAM,EAAK,GAA0B,EAAO,EAAK,EAAE,EAAE,CAAG,EAAE,GAAG,EAAK,OAAO,EAAE,CAAC,IAAM,EAAU,GAAgC,EAAO,EAAK,EAAK,CAAG,EAAE,GAAG,EAAU,CAAC,GAAyB,EAAO,EAAU,GAAK,GAAO,YAAY,EAAE,MAAO,CAAC,CAAC,GAAyB,EAAO,EAAK,GAAM,GAAO,YAAY,CAAE,CAAC,SAAS,GAA8B,EAAO,EAAS,GAAG,CAAK,IAAc,EAAO,2BAA2B,GAAM,EAAO,6BAA6B,EAAS,EAAO,gCAAgC,EAAS,CAAC,SAAS,GAAgC,EAAO,EAAI,EAAS,CAAC,GAAG,CAAC,GAAK,yBAAyB,GAAK,gBAAgB,SAAqE,OAA3D,GAA8B,EAAO,OAAO,GAAU,EAAE,CAAC,EAAS,EAAU,IAAM,EAAc,OAAO,GAAU,EAAE,EAAkP,OAA5O,EAAO,6BAA4B,EAAO,2BAA2B,GAAK,EAAO,6BAA6B,GAAe,EAAO,gCAAgC,EAAiB,EAAO,yBAAiC,EAAsB,EAAO,8BAA8B,EAAO,0BAA0B,CAAc,CAAC,SAAS,GAA8B,EAAO,EAAW,EAAS,CAA4T,OAAxT,EAAO,gCAAgC,GAAY,EAAO,mCAAmC,KAAU,EAAO,8BAA8B,EAAW,EAAO,iCAAiC,EAAS,EAAO,2BAA2B,GAAO,CAAC,EAAO,+BAA+B,EAAW,IAAW,CAAK,CAAE,GAAU,EAAO,0BAA2B,CAAC,SAAS,GAAiC,EAAO,EAAW,EAAS,CAA2U,OAAvU,EAAO,mCAAmC,GAAY,EAAO,sCAAsC,KAAU,EAAO,iCAAiC,EAAW,EAAO,oCAAoC,EAAS,EAAO,8BAA8B,GAAO,CAAC,EAAO,+BAA+B,EAAW,IAAW,CAAK,CAAE,GAAU,EAAO,6BAA8B,CAAC,SAAS,GAAoB,EAAO,EAAI,CAAC,IAAM,EAAW,EAAO,YAAY,CAAC,EAAE,GAAG,CAAC,EAAO,OAAO,CAAC,EAAW,QAAQ,EAAE,GAAK,iBAAiB,IAAO,CAAI,EAAO,qBAAoB,EAAO,OAAO,gBAAgB,EAAE,GAAoC,EAAO,EAAO,KAAK,EAAE,EAAO,oBAAoB,GAAG,EAAO,uBAAuB,KAAK,EAAO,yBAAyB,GAAG,EAAO,yBAAyB,GAAG,EAAO,+BAA+B,GAAG,MAAO,CAAC,IAAM,EAAK,GAAK,eAAe,MAAY,EAAS,GAAgC,EAAO,EAAI,GAAK,eAAe,EAAE,EAAQ,EAAM,GAAK,gBAAgB,EAAQ,EAAS,GAAK,gCAAgC,OAAO,GAAK,mBAAmB,SAAe,EAAmB,OAAO,GAAU,QAAQ,CAAC,CAAC,YAAY,EAAQ,EAAgB,CAAC,EAAE,GAAK,0BAA0B,GAAK,iCAA8D,GAA7B,EAAO,MAAM,UAAU,EAAS,IAAO,SAAS,CAAC,IAAM,EAAK,GAAc,EAAW,CAAQ,EAAE,GAAG,CAAC,EAAK,CAAI,EAAO,qBAAoB,EAAO,MAAM,cAAc,EAAE,GAAoC,EAAO,EAAO,KAAK,EAAE,EAAO,oBAAoB,GAAG,EAAO,uBAAuB,KAAK,EAAO,yBAAyB,GAAG,EAAO,yBAAyB,GAAG,EAAO,+BAA+B,GAAG,MAAO,CAAC,IAAM,EAAc,KAAK,IAAI,EAAE,GAAK,wBAAwB,GAAG,EAAQ,EAAU,GAAG,EAAK,KAAK,GAAG,IAAiB,EAAW,CAAC,SAAS,EAAU,EAAc,MAAK,cAAkB,MAAK,mBAAuB,KAAoB,IAAqB,QAAO,GAAK,sBAAyB,EAAE,CAAC,CAAC,KAAK,GAAG,EAAQ,EAAW,EAAO,MAAM,WAAW,CAAI,EAAuB,EAAO,2BAA2B,IAA8B,EAAO,+BAA+B,IAAI,IAAM,EAAqB,IAAqB,QAAQ,EAAO,iCAAiC,EAAW,GAAG,EAAO,sBAAsB,GAAW,EAAO,2BAA2B,EAAW,CAAC,IAAM,EAAa,EAAO,wBAAwB,EAAud,GAA5c,GAA4B,EAAa,CAAQ,EAAE,EAAa,QAAQ,GAAU,IAAqB,QAAQ,GAA+B,CAAY,IAAI,EAAa,OAAO,IAAO,EAAa,sBAAsB,CAAC,EAAK,CAAC,GAAsB,CAAC,EAAa,UAAU,GAAG,EAAE,IAAqB,QAAQ,GAA+B,CAAY,IAAI,EAAa,KAAK,EAAG,EAAO,uBAAuB,EAAa,EAAO,yBAAyB,EAAK,KAAQ,IAAqB,QAAQ,CAAC,GAAsB,GAAK,iCAAiC,GAAK,wBAAwB,CAAC,IAAM,EAAa,GAA8B,EAAO,EAAW,EAAI,uBAAuB,GAAK,EAAO,+BAA+B,GAAc,EAAO,iCAAiC,IAAc,GAA2B,EAAO,EAAO,MAAM,EAAa,CAAY,CAAG,MAAM,GAAoC,EAAO,EAAO,KAAK,EAAG,MAAO,CAAC,IAAM,EAAW,EAAO,wBAAwB,KAAW,EAAW,IAAa,EAAiB,EAAW,EAAO,uBAAuB,MAAM,CAAS,EAA8I,EAAtH,CAAC,CAAC,GAAY,CAAC,GAAmD,IAAqB,QAAQ,CAAC,IAAyD,GAAK,oBAAoB,EAAc,GAA0hC,GAAvhC,GAA4B,EAAW,CAAQ,EAAE,EAAW,QAAQ,GAAU,IAAqB,QAAQ,GAA+B,CAAU,IAAI,EAAW,OAAO,IAAO,EAAW,mBAAmB,CAAC,EAAE,EAAW,sBAAsB,CAAC,EAAsB,GAAiB,CAAC,GAAY,CAAC,GAAY,IAAqB,QAAQ,EAAO,2BAA2B,EAA6B,EAAW,MAAM,EAAW,GAAiB,GAAwB,EAAW,CAAU,EAAG,EAAW,KAAK,EAAK,EAAgB,EAAW,UAAU,GAAE,EAAW,KAAK,EAAW,EAAe,EAAc,EAAG,EAAW,YAAY,EAAW,EAAc,CAAC,CAAC,GAAK,aAAa,EAAQ,EAAW,KAAK,EAAY,EAAc,GAAG,EAAW,OAAO,CAAa,EAAG,AAAkC,EAAO,wBAAsB,IAAI,IAAK,EAAO,sBAAsB,IAAI,CAAS,EAAE,EAAO,uBAAuB,EAAW,EAAO,oBAAoB,EAAU,EAAO,yBAAyB,EAAK,KAAK,EAAO,yBAAyB,EAAc,IAAqB,QAAQ,GAAK,iCAAiC,GAAK,wBAAwB,CAAC,IAAM,EAAa,GAA8B,EAAO,EAAW,EAAI,uBAAuB,EAAE,GAA2B,EAAO,EAAO,MAAM,EAAW,CAAY,CAAE,MAAM,GAAoC,EAAO,EAAO,KAAK,EAAG,MAAO,CAAC,IAAM,EAAc,CAAC,MAAM,EAAS,MAAK,gCAAoC,IAAqB,QAAO,GAAK,sBAAyB,EAAE,CAAC,CAAC,KAAK,GAAG,EAAE,GAAG,EAAO,sBAAsB,OAAO,EAAO,2BAA2B,EAAe,OAAQ,EAAO,MAAM,cAAc,EAAE,GAAoC,EAAO,EAAO,KAAK,EAAE,IAAM,EAAW,CAAC,EAA6M,GAA3M,EAAW,QAAQ,GAAM,CAAC,IAAM,EAAO,EAAO,MAAM,WAAW,CAAI,EAAE,GAA4B,EAAO,CAAQ,EAAE,EAAO,QAAQ,GAAK,EAAO,OAAO,GAAM,EAAO,MAAM,CAAC,CAAC,KAAK,EAAE,EAAW,KAAK,CAAM,CAAE,CAAC,EAAK,IAAqB,QAAQ,GAAK,iCAAiC,GAAK,wBAAwB,CAAC,IAAM,EAAa,GAAiC,EAAO,EAAc,EAAI,uBAAuB,EAAE,GAAkC,EAAO,EAAO,MAAM,EAAW,CAAY,CAAE,CAAC,EAAO,uBAAuB,KAAK,EAAO,oBAAoB,MAAM,EAAO,yBAAyB,GAAG,EAAO,yBAAyB,EAAc,EAAO,+BAA+B,EAAG,CAAC,SAAS,GAAwB,EAAO,EAAI,EAAM,QAAQ,CAAK,KAAc,GAAG,CAAC,GAAoB,EAAO,CAAG,EAAE,EAAO,2BAA2B,EAAG,OAAO,EAAM,CAAC,IAAM,EAAS,CAAC,EAAM,GAAK,eAAe,GAAG,GAAK,eAAe,GAAG,GAAK,mBAAmB,EAAE,CAAC,CAAC,KAAK,GAAG,EAAK,EAAO,6BAA6B,IAAU,EAAO,2BAA2B,EAAS,QAAQ,KAAK,wFAAwF,CAAK,GAAG,EAAO,yBAAyB,EAAG,CAAC,CAAC,SAAS,GAAqB,EAAO,EAAG,EAAM,QAAQ,CAAK,MAAQ,MAAa,GAAG,CAAC,EAAO,MAAM,OAAO,CAAE,EAAE,EAAO,sBAAsB,EAAM,OAAO,EAAM,CAAK,EAAO,wBAAuB,EAAO,sBAAsB,GAAK,QAAQ,KAAK,mDAAmD,EAAM,6BAA6B,CAAK,EAAG,CAAC,CAAC,SAAS,GAAwB,EAAO,EAAK,EAAK,EAAM,CAAC,GAAG,CAAC,GAAoB,EAAO,EAAK,EAAK,CAAK,EAAE,EAAO,oBAAoB,EAAM,OAAO,EAAM,CAAK,EAAO,sBAAqB,EAAO,oBAAoB,GAAK,QAAQ,KAAK,6EAA6E,CAAK,EAAG,CAAC,CAAC,SAAS,GAA2B,EAAM,CAAC,EAAE,CAAC,OAAO,GAAO,CAAC,EAAA,CAAG,KAAK,EAAK,IAAwD,GAAG,EAAM,GAA9C,EAAyB,CAA0B,GAAK,CAAC,CAAC,KAAK,GAAG,CAAE,CAAmI,SAAS,GAA4B,EAAM,EAAW,KAAK,CAAyD,OAA5C,EAA0B,EAAM,CAAuB,CAAC,CAAC,KAAK,GAAsD,CAAC,CAAtC,EAAyB,CAAgB,CAAG,CAAE,CAAC,SAAS,GAA6B,EAAM,EAAK,EAAI,CAAC,IAAM,EAAS,GAAkC,CAAI,GAAG,CAAC,EAAQ,EAAO,CAAC,MAAM,EAAS,OAAO,EAAE,KAAK,EAAS,MAAM,EAAE,KAAK,EAAS,MAAM,EAAE,KAAK,EAAS,MAAM,EAAE,KAAK,EAAS,MAAM,EAAE,KAAK,EAAS,MAAM,EAAE,KAAK,EAAS,MAAM,CAAC,EAAE,GAAG,CAAC,GAAK,sBAA8D,MAAvC,GAAM,2BAA2B,GAAa,EAAQ,GAAG,EAAM,qBAAqB,EAAM,cAAc,EAAM,aAAc,OAAO,EAAM,aAAc,GAAG,CAAC,EAAM,aAAgI,MAAlH,GAAM,aAAa,CAAC,GAAG,CAAM,EAAE,EAAM,mBAAmB,EAAM,aAAa,EAAM,2BAA2B,GAAa,EAAM,aAAc,IAAM,EAAK,EAAM,aAAmB,EAAO,KAAK,IAAI,EAAE,KAAK,IAAI,EAAE,EAAI,iBAAiB,GAAG,CAAC,EAAE,GAAG,GAAQ,EAAqH,MAAlH,GAAM,aAAa,CAAC,GAAG,CAAM,EAAE,EAAM,mBAAmB,EAAM,aAAa,EAAM,2BAA2B,GAAa,EAAM,aAEloqB,IAAI,EAAkB,GAAM,IAAI,IAAM,KAAO,OAAO,KAAK,CAAM,EAAM,KAAK,IAAI,EAAO,GAAK,EAAK,EAAI,EAAE,OAAM,EAAkB,IAAM,EAAK,KAAO,EAAO,GAAK,EAAK,IAAM,EAAuG,MAA/F,GAAM,2BAA2B,EAAkB,EAAM,mBAAmB,EAAM,aAAoB,CAAK,CAAC,SAAS,GAA4B,EAAM,EAAK,EAAM,EAAO,EAAY,EAAE,EAAU,EAAE,EAAc,KAAK,EAAO,KAAK,EAAW,KAAK,CAAC,IAAM,EAAM,GAAO,MAAM,GAAG,CAAC,EAAM,OAAO,EAAM,aAAa,GAAQ,cAAc,EAAM,cAAc,EAAE,IAAM,EAAM,GAA6B,EAAM,EAAK,CAAU,EAAQ,EAAa,CAAC,EAAE,GAAM,cAAc,GAAM,QAAc,EAAY,IAAe,GAAM,aAAa,GAAM,aAAa,OAAO,OAAO,MAAY,EAAc,GAAQ,UAAU,oBAAoB,CAAC,EAAQ,IAAY,EAAa,GAAQ,UAAU,oBAAoB,EAAM,UAAU,sBAAsB,KAAK,EAAa,GAAQ,UAAU,cAAc,EAAM,UAAU,gBAAgB,GAAS,EAAY,EAAa,EAAc,OAAO,EAAE,EAAQ,EAAW,EAAa,EAAc,MAAM,EAAE,EAAQ,EAAW,EAAa,EAAc,MAAM,EAAE,EAAQ,EAAW,EAAa,EAAc,MAAM,EAAE,EAAQ,EAAW,EAAa,EAAc,MAAM,EAAE,EAAQ,EAAW,EAAa,EAAc,MAAM,EAAE,EAAQ,EAAW,EAAa,EAAc,MAAM,EAAE,EAAQ,EAAU,EAAM,KAAW,EAAU,EAAM,KAAW,EAAU,EAAM,KAAW,EAAU,EAAM,KAAW,EAAU,EAAM,KAAW,EAAU,EAAM,KAAW,EAAS,EAAY,EAAM,MAAY,EAAQ,EAAW,EAAgB,EAAQ,EAAW,EAAgB,EAAQ,EAAW,EAAgB,EAAQ,EAAW,EAAgB,EAAQ,EAAW,EAAgB,EAAQ,EAAW,EAA8C,GAApC,EAAM,QAAQ,GAAM,UAAU,GAAS,CAAC,EAAM,QAAQ,OAAO,IAAM,EAAe,EAAU,KAAK,IAAI,IAAI,CAAQ,EAAE,EAA2B,CAAK,EAAE,EAAM,MAAM,UAAU,CAAc,EAAE,IAAM,EAAO,CAAC,GAAG,EAAM,UAAU,kBAAkB,GAAG,EAAe,GAAG,EAAM,UAAU,kBAAkB,GAAG,EAAe,GAAG,EAAM,UAAU,kBAAkB,GAAG,CAAc,EAAQ,IAAM,EAAM,UAAU,eAAe,GAAG,EAAkB,GAAM,cAAe,EAAM,SAAS,IAAI,CAAC,EAAO,EAAE,GAAS,EAAK,cAAc,GAAG,GAAG,CAAC,EAAO,EAAE,GAAS,EAAK,cAAc,GAAG,GAAG,CAAC,EAAO,EAAE,CAAO,EAAW,GAAc,IAAc,QAGx1E,GAAuB,IAAI,EAAW,KAAK,GAAG,IAAI,EAAW,KAAK,GAAG,IAAI,EAAW,KAAK,GAAG,IAAI,KAAK,EAAE,GAAsB,aAAa,EAAsB,EAAE,GAAwB,IAAI,CAAC,EAAO,EAAE,EAAU,EAAY,GAAK,EAAU,CAAC,EAAO,EAAE,CAAS,CAAC,CAAC,gBAAgB,EAAqB,EAAE,EAAM,SAAS,IAAI,EAAW,GAAwB,EAAE,EAAW,GAAwB,EAAE,EAAW,GAAwB,CAAC,GAAQ,EAAM,SAAS,IAAI,CAAC,EAAO,EAAE,EAAQ,EAAY,GAAK,EAAQ,CAAC,EAAO,EAAE,CAAO,EAAG,EAAM,SAAS,IAAI,EAAQ,KAAK,GAAG,IAAI,EAAQ,KAAK,GAAG,IAAI,EAAQ,KAAK,GAAG,GAAG,EAAE,EAA2B,EAAM,CAAa,CAAE,CAAC,SAAS,GAAmB,EAAO,EAAM,EAAW,KAAK,EAAW,KAAK,CAAC,IAAM,EAAM,GAAY,EAA0B,EAAM,GAAY,GAAQ,eAAe,EAAQ,EAAS,GAA2B,CAAK,EAAE,GAAG,EAAO,gBAAgB,EAAS,OAAO,EAAO,cAAc,EAAS,IAAM,EAAO,IAAI,IAAI,EAAM,SAAS,EAAK,IAAQ,CAAC,IAAM,EAAI,EAAyB,CAAI,EAAE,GAAG,CAAC,EAAI,OAAO,IAAM,EAAI,GAAG,EAAM,GAAG,IAAsB,GAAhB,EAAO,IAAI,CAAG,EAAK,EAAO,UAAU,IAAI,CAAG,EAAE,OAAO,IAAM,EAAY,CAAC,MAAI,QAAM,MAAI,MAAM,KAAK,MAAM,KAAK,WAAW,CAAC,EAAE,mBAAmB,GAAM,mBAAmB,KAAK,oBAAoB,GAAM,kBAAkB,KAAK,0BAA0B,GAAM,wBAAwB,KAAK,sBAAsB,IAAI,IAAI,uBAAuB,KAAK,oBAAoB,GAAG,yBAAyB,GAAG,yBAAyB,EAAE,EAAE,EAAO,UAAU,IAAI,EAAI,CAAW,EAAE,EAAe,CAAG,CAAC,CAAC,KAAK,GAAQ,CAAC,GAAG,CAAC,EAAO,UAAU,IAAI,CAAG,EAAE,OAAO,IAAM,EAAMO,GAAoB,EAAO,MAAM,EAAQ,EAAe,GAA6B,CAAK,EAAQ,EAAS,EAAO,OAAO,UAAU,eAAe,EAAQ,EAAe,GAA4B,CAAK,CAAC,CAAC,QAAQ,IAAIhC,CAAa,EAAE,GAAkB,CAAK,EAAE,EAA2B,CAAK,EAAE,EAAM,SAAS,YAAY,EAAO,QAAQ,GAAG,EAAM,SAAS,oBAAoB,EAAe,EAAM,SAAS,oBAAoB,EAAe,MAAM,EAAE,EAAM,SAAS,cAAc,EAAS,EAAM,SAAS,oBAAoB,GAAM,kBAAkB,KAAK,EAAM,SAAS,0BAA0B,GAAM,wBAAwB,KAAK,EAAM,SAAS,iBAAiB,GAAM,eAAe,GAAG,EAAM,QAAQ,GAAM,UAAU,GAAM,EAAY,MAAM,EAAM,EAAY,WAAW,GAAiC,EAAM,EAAO,YAAY,CAAC,CAAC,EAAE,EAAY,QAAQ,GAAK,EAAY,UAAU,EAAO,EAAY,WAAW,SAAQ,EAAY,MAAM,IAAIiC,GAAqB,CAAK,GAAG,EAAO,MAAM,IAAI,CAAK,EAAE,GAA0B,CAAM,EAAE,IAAM,EAAW,GAAM,mBAAmB,EAAO,iBAAiB,EAA0B,EAAM,CAAC,EAAE,EAA4B,EAAM,CAAU,EAAE,EAAY,mBAAmB,GAAM,mBAAmB,KAAK,EAAY,0BAA0B,GAAM,wBAAwB,KAAK,EAAY,qBAAqB,GAAY,eAAe,GAAa,CAAU,CAAE,CAAC,CAAC,CAAC,MAAM,GAAO,CAAC,QAAQ,KAAK,gDAAgD,CAAK,CAAE,CAAC,CAAE,CAAC,EAAE,IAAI,GAAK,CAAC,EAAI,KAAS,EAAO,UAAc,EAAO,IAAI,CAAG,IAAc,EAAM,OAAM,EAAO,MAAM,OAAO,EAAM,KAAK,EAAK,EAAM,OAAM,GAAsB,EAAM,KAAK,EAAE,EAAM,OAAO,gBAAgB,EAAE,EAAO,UAAU,OAAO,CAAG,EAAE,GAA0B,CAAM,EAAG,CAQtwG,SAAS,GAAsB,EAAM,CAAC,GAAK,CAAC,QAAM,CAAC,EAAE,OAAK,cAAc,eAAa,EAAE,cAAY,EAAE,mBAAiB,IAAI,cAAY,WAAW,gBAAc,IAAI,eAAa,IAAI,cAAY,GAAK,iBAAe,GAAK,mBAAiB,GAAM,iBAAe,IAAI,eAAa,GAAG,kBAAgB,GAAM,QAAM,IAAO,EAAY,GAAcC,EAAa,IAAI,EAAQ,GAAkBA,EAAa,QAAQ,KAAK,OAAO,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAO,CAAC,EAAW,IAAeC,MAAmB,GAAwB,CAAC,EAAO,CAAC,GAAW,IAAeA,EAAe,CAAC,QAAQ,KAAK,KAAK,CAAC,EAAE,UAAU,CAAC,CAAC,EAAQ,EAAcD,EAAa,EAAU,EAAE,EAAc,QAAQ,GAAW,IAAM,GAAiB,EAAoB,EAAQ,GAAe,GAAqB,EAAgB,IAAI,SA6Du+D,OA7D99D,MAAoB,CAAC,GAAG,IAAO,WAAW,OAAO,IAAM,EAAM,CAAC,QAAQ,KAAK,KAAK,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAc,QAAQ,EAAM,GAAc,CAAK,CAAE,EAAE,CAAC,CAAI,CAAC,EAAE,OAA2B,CAAC,IAAM,EAAO,GAAwB,EAAQ,MAAe,CAA2F,IAAM,EAA1E,IAAS,SAAa,EAAO,YAAY,IAAI,EAAiD,EAAY,EAAa,EAAO,WAAW,EAAK,EAAO,uBAAuB,IAAO,WAAW,EAAO,cAAc,EAAW,EAAE,EAAW,KAAK,EAAO,YAAY,GAAa,WAAW,EAAO,cAAc,EAAc,EAAE,OAAO,CAAa,EAAE,KAAK,EAAO,aAAa,EAAa,EAAE,OAAO,CAAY,EAAE,KAAK,EAAO,YAAY,CAAC,CAAC,EAAY,EAAO,eAAe,CAAC,CAAC,EAAe,EAAO,iBAAiB,CAAC,CAAC,EAAiB,EAAO,eAAe,KAAK,IAAI,EAAE,OAAO,CAAc,GAAG,CAAC,EAAE,EAAO,cAAc,CAAC,CAAC,EAAM,GAAoB,CAAE,EAAuX,MAArX,GAAO,WAAW,EAAO,WAAW,GAAG,EAAK,EAAO,UAAU,GAAG,QAAQ,KAAK,uEAAuE,EAAO,UAAU,mGAAmG,EAAG,EAAW,EAAY,IAAS,QAAa,EAAO,iBAAiB,SAAS,EAAW,CAAC,QAAQ,EAAI,CAAC,MAAa,CAAC,IAAM,EAAW,GAAwB,EAAE,EAAW,UAAU,KAAK,IAAI,GAAG,EAAW,WAAW,GAAG,CAAC,EAAK,EAAW,YAAY,IAAG,EAAW,cAAc,KAAK,EAAW,cAAc,KAAK,EAAW,YAAY,WAAW,EAAW,cAAc,KAAK,EAAW,aAAa,KAAK,EAAW,YAAY,GAAK,EAAW,eAAe,GAAK,EAAW,iBAAiB,GAAM,EAAW,eAAe,IAAI,EAAW,cAAc,GAAM,EAAW,uBAAuB,GAAM,EAAW,WAAW,eAAe,GAAoB,EAAY,IAAS,QAAa,EAAO,oBAAoB,SAAS,CAAU,CAAG,CAAE,EAAE,CAAC,EAAK,EAAa,EAAY,EAAiB,EAAY,EAAc,EAAa,EAAY,EAAe,EAAiB,EAAe,CAAK,CAAC,EAAE,MAAoB,CAAC,GAAU,IAAS,OAAY,OAAO,IAAM,EAAO,GAAwB,EAAE,GAAG,IAAO,WAAW,CAAC,EAAO,cAAc,KAAK,GAAoB,EAAE,MAAO,CAAC,IAAI,EAAM,EAAM,EAAa,GAAS,EAAc,YAAY,IAAI,EAAM,EAAe,EAAQ,EAAa,CAAC,EAAE,GAAG,EAAE,GAAG,OAAO,GAAM,MAAM,KAAK,IAAI,CAAC,EAAQ,EAAY,CAAC,SAAS,IAAW,QAAQ,IAAW,mBAAmB,CAAC,EAAQ,EAAQ,GAAO,KAAK,IAAI,EAAE,KAAK,IAAI,EAAE,OAAO,SAAS,CAAK,EAAE,EAAM,CAAC,CAAC,EAAQ,EAAc,GAAO,CAAC,EAAa,EAAE,GAAO,SAAS,GAAG,EAAa,EAAE,GAAO,SAAS,GAAG,EAAa,OAAO,GAAK,EAAa,MAAM,GAAO,KAAK,EAAa,KAAK,CAAE,EAAQ,MAAmB,CAAC,EAAa,OAAO,GAAM,EAAa,EAAE,GAAG,EAAa,EAAE,GAAG,EAAa,MAAM,KAAK,EAAa,KAAK,CAAE,EAAQ,MAA0B,CAAC,EAAY,mBAAmB,YAAY,IAAI,EAAE,GAAI,EAAE,EAAO,iBAAiB,cAAc,EAAc,CAAC,QAAQ,EAAI,CAAC,EAAE,EAAO,iBAAiB,YAAY,EAAc,CAAC,QAAQ,EAAI,CAAC,EAAE,EAAO,iBAAiB,eAAe,EAAe,CAAC,QAAQ,EAAI,CAAC,EAAE,EAAO,iBAAiB,QAAQ,EAAsB,CAAC,QAAQ,EAAI,CAAC,EAAE,EAAO,iBAAiB,YAAY,EAAsB,CAAC,QAAQ,EAAI,CAAC,EAAE,IAAM,MAAS,CAAC,IAAM,EAAS,MAAM,KAAK,EAAO,OAAO,SAAS,GAAG,CAAC,CAAC,EAAuG,EAAQ,GAAhF,EAAS,KAAK,GAAM,GAAM,eAAe,CAAC,EAAE,iBAAiB,IAA+D,EAAQ,EAAc,EAAQ,cAAoB,EAAe,EAAQ,eAAqB,EAAgB,EAAQ,YAAY,EAAQ,eAAe,EAAQ,EAAM,EAAe,EAAkC,EAAkB,EAAQ,YAAY,EAAQ,EAAiB,EAAQ,WAAW,GAAsB,CAAC,OAAO,SAAS,EAAY,QAAQ,GAAG,CAAC,OAAO,SAAS,EAAY,OAAO,GAAG,KAAK,IAAI,EAAkB,EAAY,QAAQ,EAAE,IAAI,KAAK,IAAI,EAAiB,EAAY,OAAO,EAAE,MAAqB,EAAY,SAAS,EAAkB,EAAY,QAAQ,EAAiB,EAAsB,GAAG,IAAM,EAAgB,EAAY,mBAAmB,YAAY,IAAI,EAAQ,EAAc,EAAS,IAAI,GAAM,CAAC,IAAM,EAAG,GAAM,QAAQ,GAAG,CAAC,GAAI,sBAAsB,OAAO,KAAK,IAAM,EAAgB,EAAwB,CAAI,EAAQ,EAAK,EAAG,sBAAsB,EAAQ,EAAW,GAA4B,CAAE,EAAQ,EAAc,EAAa,QAAQ,EAAa,GAAG,EAAK,MAAM,EAAa,GAAG,EAAK,OAAO,EAAa,GAAG,EAAK,KAAK,EAAa,GAAG,EAAK,OAAmG,EAAnE,GAAe,CAAC,GAAmB,SAAS,iBAAkD,SAAS,iBAAiB,EAAa,EAAE,EAAa,CAAC,EAAE,KAAW,EAAW,CAAC,EAAE,GAAe,GAAS,EAAG,WAAW,CAAO,GAAS,EAAQ,GAAiB,EAAK,OAAO,EAAQ,YAAY,GAAO,EAAK,IAAI,EAAQ,eAAe,GAAO,EAAK,MAAM,EAAQ,cAAc,EAAK,KAAK,EAAQ,eAAe,EAAW,KAAW,EAAS,KAAK,IAAI,EAAK,IAAI,EAAK,OAAO,EAAE,CAAe,EAAQ,EAAc,GAAS,EAAQ,gBAAgB,EAAK,IAAI,EAAQ,cAAc,KAAK,IAAI,EAAE,EAAQ,eAAe,EAAK,MAAM,CAAC,EAAQ,EAAc,KAAK,IAAI,EAAK,OAAO,EAAQ,cAAc,EAAE,KAAK,IAAI,EAAK,IAAI,EAAQ,WAAW,EAAQ,EAAW,EAAQ,EAAc,KAAK,IAAI,EAAE,EAAK,MAAM,CAAC,EAAQ,EAAU,GAAM,OAAO,CAAC,EAAQ,EAAY,EAAU,aAAa,CAAC,EAAE,MAAM,CAAC,GAAG,EAAK,GAAG,UAAU,EAAK,WAAW,EAAE,KAAK,CAAC,IAAI,EAAK,IAAI,KAAK,EAAK,KAAK,MAAM,EAAK,MAAM,OAAO,EAAK,OAAO,MAAM,EAAK,MAAM,OAAO,EAAK,MAAM,EAAE,UAAU,CAAC,KAAK,EAAK,KAAK,EAAQ,aAAa,IAAI,EAAK,IAAI,EAAQ,YAAY,MAAM,EAAK,MAAM,OAAO,EAAK,OAAO,MAAM,EAAK,MAAM,EAAQ,aAAa,OAAO,EAAK,OAAO,EAAQ,WAAW,EAAE,UAAQ,aAAW,aAAW,aAAW,WAAS,gBAAc,mBAAmB,GAAiB,CAAC,CAAC,EAAsB,CAAI,EAAE,MAAM,CAAC,cAAc,EAAU,UAAU,EAAY,UAAU,GAAG,cAAc,OAAO,EAAU,UAAU,EAAY,UAAU,EAAE,CAAC,CAAC,KAAK,EAAE,SAAS,MAAM,iBAAiB,GAAK,mBAAmB,EAAK,CAAC,CAAE,CAAC,CAAC,CAAC,OAAO,OAAO,EAAQ,EAAW,EAAc,OAAO,GAAM,EAAK,OAAO,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,IAAM,EAAS,GAA4B,EAAE,CAAC,EAAkC,OAA7B,IAAW,EAAyB,EAAE,SAAS,EAAE,SAA7B,CAAsC,CAAC,CAAC,CAAC,IAAI,EAAc,MAAM,EAAE,IAAI,CAAC,IAAM,EAAS,GAA4B,EAAE,CAAC,EAAkC,OAA7B,IAAW,EAAyB,EAAE,SAAS,EAAE,SAA7B,CAAsC,CAAC,CAAC,CAAC,IAAI,KAAW,EAAU,KAAK,IAAI,GAAG,EAAQ,iBAAiB,cAAc,IAAI,EAAQ,iBAAiB,cAAc,EAAE,EAAQ,EAAU,EAAuB,EAAe,EAAQ,EAAU,CAAS,EAAE,EAAO,cAAc,CAAC,KAAK,WAAW,aAAa,GAAY,IAAI,GAAG,WAAW,GAAY,MAAM,KAAK,gBAAgB,GAAY,WAAW,KAAK,eAAe,GAAY,eAAe,EAAE,iBAAiB,GAAY,YAAY,EAAE,gBAAgB,EAAQ,gBAAgB,iBAAiB,EAAQ,WAAW,WAAW,EAAQ,WAAW,YAAU,iBAAe,gBAAc,iBAAe,aAAa,EAAQ,aAAa,YAAY,EAAQ,YAAY,cAAc,EAAQ,cAAc,eAAe,EAAQ,eAAe,cAAc,EAAQ,cAAc,mBAAmB,EAA4B,gBAAgB,EAAM,aAAa,EAAe,EAAM,EAAE,mBAAmB,EAAY,mBAAmB,cAAc,CAAC,CAAC,EAAa,OAAO,SAAS,EAAa,EAAE,SAAS,EAAa,EAAE,aAAa,EAAa,MAAM,WAAW,EAAa,IAAI,MAAM,EAAc,aAAa,EAAc,OAAO,GAAM,EAAK,kBAAkB,CAAC,CAAC,KAAK,EAAwB,CAAC,CAAC,MAAM,EAAE,KAAK,IAAI,EAAE,EAAO,eAAe,CAAC,CAAC,EAAE,WAAW,EAAc,OAAO,GAAM,EAAK,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,IAAO,CAAC,GAAG,EAAK,GAAG,WAAW,CAAC,CAAC,EAAK,WAAW,WAAW,OAAO,EAAK,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,WAAW,OAAO,EAAK,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,CAAC,EAAK,OAAO,iBAAiB,UAAU,CAAC,CAAC,EAAK,OAAO,mBAAmB,SAAS,EAAK,OAAO,eAAe,GAAG,SAAS,EAAK,OAAO,eAAe,EAAE,EAAE,EAAE,UAAU,YAAY,IAAI,CAAC,EAAE,IAAM,EAAI,YAAY,IAAI,EAAK,IAAQ,GAAY,IAAI,MAAM,GAAc,EAAa,GAAY,IAAI,GAAG,GAAoB,GAAW,EAAI,EAAc,KAAK,EAAI,EAAe,MAAK,EAAe,EAAI,GAAoB,GAAG,EAAM,EAAO,sBAAsB,CAAI,CAAE,EAAS,OAAP,EAAK,MAAY,CAAI,GAAM,EAAO,qBAAqB,CAAK,EAAE,EAAO,oBAAoB,cAAc,CAAa,EAAE,EAAO,oBAAoB,YAAY,CAAa,EAAE,EAAO,oBAAoB,eAAe,CAAc,EAAE,EAAO,oBAAoB,QAAQ,CAAqB,EAAE,EAAO,oBAAoB,YAAY,CAAqB,EAAE,EAAO,cAAc,KAAK,GAAoB,CAAE,CAAE,EAAE,CAAC,CAAI,CAAC,EAAE,MAAoB,CAG77S,GAHw8S,IAAS,QAG98S,IAAO,YAAY,EAAa,QAAQ,IAAI,EAAa,OAAO,OAAO,EAA0B,EAAE,IAAM,EAAO,GAAwB,EAC3I,IAAI,EAAO,WAAW,GAAG,EAAE,CAAC,QAAQ,KAAK,yEAAyE,EAAO,UAAU,kEAAkE,EAAE,MAAO,CAAC,IAAM,EAAY,GAAkB,QAAc,EAAO,SAAS,cAAc,QAAQ,EAAE,GAAc,QAAQ,EAAO,EAAO,aAAa,6BAA6B,MAAM,EAAE,EAAO,aAAa,gCAAgC,CAAW,EAAE,EAAO,MAAM,SAAS,WAAW,EAAO,MAAM,KAAK,IAAI,EAAO,MAAM,IAAI,IAAI,EAAO,MAAM,QAAQ,OAAO,EAAO,MAAM,cAAc,OAAO,EAAO,MAAM,OAAO,OAAO,GAAc,EAAE,EAAE,EAAO,MAAM,UAAU,qBAAqB,EAAO,MAAM,WAAW,YAAY,IAAM,EAAS,IAAIE,GAAoB,CAAC,SAAO,MAAM,GAAK,UAAU,CAAC,CAAC,EAAgB,gBAAgB,mBAAmB,mBAAmB,GAAK,QAAQ,EAAK,CAAC,EAAE,EAAS,cAAc,EAAE,CAAC,EAAE,EAAS,wBAAwB,EAAY,GAA4B,SAAS,CAAC,KAAK,OAAO,QAAQ,EAAY,SAAO,WAAW,EAAO,WAAW,aAAa,EAAa,QAAQ,EAAE,UAAU,EAAO,WAAW,EAAE,UAAU,EAAO,OAAO,MAAM,EAAE,SAAS,CAAC,CAAC,CAAK,CAAC,EAAE,IAAM,GAAU,EAAO,YAAY,IAAI,EAAiB,EAAS,cAAc,KAAK,IAAI,EAAO,kBAAkB,EAAE,EAAS,GAAc,IAAI,GAAe,GAAG,CAAC,EAAE,EAAS,eAAe,EAAI,EAAE,IAAI,EAAM,EAAM,EAAU,EAAM,EAAW,EAAM,EAAQ,EAAM,EAAgB,EAAM,EAAc,EAEh7C,EAAuB,CAAC,EAAQ,EAAQ,IAAI,IAAU,EAAY,IAAI,IAKtE,EAAgB,OAAO,SAAW,KAAiB,CAAC,SAAS,OAAa,MAA2B,CAAC,EAAgB,CAAC,SAAS,MAAO,EAAE,SAAS,iBAAiB,mBAAmB,CAAsB,EAAE,IAAM,EAAoB,IAAI,IAAU,GAA2B,EAAO,IAAO,CAA8E,GAA1E,CAAC,GAAQ,CAAC,GAAM,SAAS,OAAO,qBAAuB,KAAsB,EAAO,uBAAuB,EAAK,QAAQ,OAA8D,EAAhB,IAAI,EAAO,GAAgB,CAAC,EAAE,aAAa,EAAE,EAAO,gBAAgB,GAAK,IAAM,EAAS,IAAI,sBAAsB,CAAC,KAAS,CAAC,EAAO,gBAAgB,CAAC,CAAC,GAAO,cAAe,EAAE,CAAC,UAAU,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,EAAS,QAAQ,EAAK,OAAO,EAAE,EAAoB,IAAI,EAAO,IAAI,CAAQ,EAAE,EAAO,qBAAqB,EAAK,OAAQ,EAAQ,EAAuB,IAAI,IAAQ,GAAsB,GAAO,GAAwB,CAAC,EAAM,GAAS,GAAU,GAAS,KAAS,GAAsB,KAAS,GAAoB,KAAS,GAAoB,GAAS,OAAuB,CAAI,KAAqB,GAAoB,MAAM,SAAS,GAAoB,GAAoB,KAAK,GAAoB,GAAI,EAE5nC,OAAmB,GAAqB,EAAgB,EAAQ,EAAwB,GAAO,CAAC,IAAM,EAAS,SAAS,kBAAkB,SAAS,iBAAiB,SAAS,KAAW,EAAU,GAAU,WAAW,EAAO,SAAS,GAAO,WAAW,EAAM,EAAc,KAAK,IAAI,EAAE,KAAK,KAAK,EAAO,aAAa,GAAO,gBAAgB,CAAC,CAAC,EAAE,IAAI,IAAM,KAAS,MAAM,KAAK,SAAS,KAAK,QAAQ,EAAE,CAAoJ,GAAhJ,IAAQ,IAAuB,IAAQ,GAAqB,EAAE,aAAiB,cAAkC,EAAO,iBAAiB,CAAc,CAAC,CAAC,WAAW,QAAQ,SAAS,IAAM,EAAK,EAAM,sBAAsB,EAAK,EAAK,OAAO,GAAG,EAAK,QAAQ,IAAW,EAAc,KAAK,IAAI,EAAc,KAAK,KAAK,EAAK,OAAO,CAAS,EAAE,KAAK,KAAK,EAAM,UAAU,KAAK,IAAI,EAAM,aAAa,EAAM,YAAY,CAAC,CAAC,EAAE,CAAsN,OAAjN,IAAuB,gBAAe,EAAc,KAAK,IAAI,EAAc,KAAK,KAAK,GAAU,cAAc,CAAC,EAAE,KAAK,KAAK,SAAS,iBAAiB,cAAc,CAAC,EAAE,KAAK,KAAK,SAAS,MAAM,cAAc,CAAC,CAAC,GAAU,KAAK,IAAI,EAAE,CAAa,CAAE,EAAQ,GAA4B,GAAO,CAAK,KAAuB,GAAsB,SAAS,cAAc,KAAK,EAAE,GAAsB,aAAa,qCAAqC,MAAM,EAAE,GAAsB,MAAM,SAAS,WAAW,GAAsB,MAAM,KAAK,IAAI,GAAsB,MAAM,IAAI,IAAI,GAAsB,MAAM,MAAM,OAAO,GAAsB,MAAM,SAAS,SAAS,GAAsB,MAAM,cAAc,OAAO,GAAsB,MAAM,OAAO,OAAO,GAAc,EAAE,EAAE,GAAsB,MAAM,QAAQ,SAAS,IAAM,EAAkB,GAAe,EAA0U,OAArU,IAAoB,UAAU,IAAoB,UAAW,GAAsB,MAAM,OAAO,SAAS,gBAAgB,aAAa,KAAW,GAAsB,MAAM,OAAO,GAAG,EAAwB,CAAK,EAAE,IAAQ,GAAsB,gBAAgB,SAAS,MAAM,SAAS,KAAK,YAAY,EAAqB,EAAU,EAAsB,EAAQ,GAAiB,GAAO,CAAC,GAAG,GAAO,iBAAiB,CAAC,GAAmB,EAAE,IAAM,EAAQ,GAA4B,CAAK,EAAK,EAAO,eAAe,EAAO,gBAAgB,GAAS,EAAO,cAAc,YAAY,CAAM,EAAM,EAAO,gBAAgB,GAAS,EAAQ,YAAY,CAAM,EAAG,EAAO,MAAM,OAAO,IAAI,GAAS,EAAQ,MAAO,CAAC,IAAM,EAAS,GAAO,CAAC,EAAM,kBAAkB,EAAM,gBAAgB,EAAM,gBAAgB,SAAS,KAAQ,CAAC,GAAU,IAAW,KAAmB,EAAO,eAAe,EAAO,gBAAgB,GAAU,EAAO,cAAc,YAAY,CAAM,EAAM,IAAW,SAAS,MAAM,aAAoB,aAAa,EAAO,iBAAiB,CAAQ,CAAC,CAAC,WAAW,UAAU,GAAmB,EAAE,GAAoB,EAAS,GAAoB,EAAS,MAAM,UAAU,GAAG,EAAS,MAAM,SAAS,YAAoB,IAAqB,KAAsB,GAAU,GAAmB,EAAG,EAAS,YAAY,CAAM,EAAE,EAAO,MAAM,OAAO,OAAO,GAAc,EAAE,EAAE,GAAS,EAAS,EAAQ,IAA2B,EAAO,EAAK,EAAK,EAAW,IAAY,CAAC,IAAM,EAAI,EAAuB,EAAK,KAAK,EAAE,GAAG,CAAC,EAAI,CAAC,EAAO,UAAU,GAAG,EAAO,WAAW,GAAM,GAA4B,EAAK,MAAM,CAAU,GAAG,GAAmB,EAAO,EAAK,MAAM,CAAU,EAAG,MAAO,CAAI,EAAO,YAAY,GAAK,EAAO,OAAgB,EAAO,aAAa,GAAK,EAAO,kBAA2B,EAAO,sBAAsB,YAAY,IAAI,EAAE,EAAO,uBAA8B,EAAO,WAAW,EAAI,EAAO,qBAAqB,EAAM,EAAgB,IAAI,CAAG,GAAG,EAA6B,EAAG,EAAO,iBAAiB,EAAe,CAAG,CAAC,CAAC,KAAK,GAAQ,CAAC,GAAG,IAAU,EAAQ,IAAI,CAAS,IAAI,EAAO,OAAU,EAAO,QAAO,EAAO,MAAM,OAAO,EAAO,KAAK,EAAE,EAAO,OAAO,gBAAgB,GAAG,IAAM,EAAMJ,GAAoB,EAAO,MAAM,EAAQ,EAAe,GAAiC,EAAM,EAAO,YAAY,CAAC,CAAC,EAAQ,EAAe,GAA6B,CAAK,EAAQ,EAAU,GAAgB,EAAW,EAAK,MAAM,KAAK,IAAI,EAAE,EAAK,MAAM,CAAC,EAAQ,EAAe,GAA4B,CAAK,CAAC,CAAC,QAAQ,IAAIhC,CAAa,EAAQ,EAAS,GAAiB,EAAU,CAAc,EAAE,GAAkB,CAAK,EACxpI,EAAW,iBAAiB,EAAe,SAAS,GAAG,GAA0B,CAAK,EACzF,GAAoB,CAAK,EAGtB,EAAe,SAAS,GAAG,EAAM,SAAS,GAAO,CAAI,EAAM,QAAQ,CAAC,EAAM,gBAAe,EAAM,aAAa,EAAE,EAAM,iBAAiB,GAAO,CAAC,EAAG,EAA2B,CAAK,EAAE,EAAM,SAAS,YAAY,EAAO,QAAQ,GAAG,EAAM,SAAS,oBAAoB,EAAe,EAAM,SAAS,oBAAoB,EAAe,MAAM,EAAE,EAAM,SAAS,cAAc,EAAS,EAAO,MAAM,EAAM,EAAO,WAAW,EAAe,EAAO,MAAM,EAAO,WAAW,OAAO,IAAIiC,GAAqB,CAAK,EAAE,KAAK,EAAO,sBAAsB,IAAI,IAAI,EAAO,uBAAuB,KAAK,EAAO,oBAAoB,GAAG,EAAO,yBAAyB,GAAG,EAAO,yBAAyB,GAAM,GAAyB,CAAU,IAAG,EAAO,yBAAyB,IAAM,EAAO,UAAU,EAAI,EAAO,WAAW,GAAG,EAAO,iBAAiB,KAAK,EAAO,MAAM,IAAI,CAAK,EAAE,GAA0B,CAAM,EAAE,GAAwB,EAAM,EAAK,MAAM,EAAK,KAAK,EAYl6B,EAA4B,EAAM,CAAU,EAAE,GAAwB,EAAO,EAAW,WAAW,EAAE,GAAmB,EAAO,EAAK,MAAM,CAAU,EAIpJ,EAAO,iBAAiB,GAIxB,GAA+B,EAAO,EAAW,CAAQ,EAAE,IAAM,EAAe,GAAW,EAAO,OAAa,EAAc,EAAS,cAAc,OAAO,CAAQ,EAAE,GAAG,GAAe,EAAgB,EAAc,EAAO,MAAM,CAAc,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,EAAO,iBAAiB,GAAK,0BAA0B,CAAC,sBAAsB,CAA+B,CAAE,CAAC,CAAE,CAAC,MAAO,CAEvY,GAAG,EAAgB,GAAG,CAAC,EAAS,QAAQ,EAAO,MAAM,CAAc,CAAE,MAAU,CAAM,CAAE,EAAO,iBAAiB,GAAK,0BAA0B,CAAC,sBAAsB,CAA+B,CAAE,CAAC,CAAE,CAAC,CAAC,CAAC,CAAC,MAAM,GAAO,CAAC,EAAO,WAAW,GAAG,EAAO,iBAAiB,KAAK,EAAO,qBAAqB,YAAY,IAAI,EAAE,IAAI,EAAgC,EAAE,QAAQ,KAAK,4CAA4C,CAAK,CAAE,CAAC,EAAE,EAAQ,GAAW,EAAK,IAAO,CAAC,IAAM,EAAU,EAAsB,CAAI,EAAE,GAAG,CAAC,EAAU,OAAO,KAAK,IAAM,EAAW,EAA0B,GAAM,MAAM,GAAM,OAAO,CAAC,EAAM,EAAO,EAAQ,IAAI,CAAS,EAAkV,OAA5U,IAAQ,EAAO,GAAe,EAAW,EAAK,MAAM,KAAK,IAAI,EAAE,EAAK,MAAM,CAAC,EAAE,EAAO,OAAO,EAAK,GAAG,EAAO,IAAI,EAAU,EAA0B,EAAO,CAAQ,EAAE,EAAQ,IAAI,EAAU,CAAM,GAAG,EAAO,gBAAgB,EAAW,EAA0B,EAAO,CAAI,EAAE,GAA0B,EAAO,EAAK,EAAK,EAAW,CAAS,EAAS,CAAO,EAAQ,GAA2B,EAAK,IAAe,EAAU,EAAK,CAAI,EAAU,IAA4B,EAAK,EAAS,IAAS,CAA0D,GAAtD,CAAC,GAAM,OAAO,CAAC,GAAQ,GAAU,SAAwB,CAAC,EAAO,OAAO,EAAO,WAAW,OAAO,EAAE,MAAO,GAAM,IAAM,EAAK,GAAU,KAAK,GAAG,CAAC,GAAM,EAAK,OAAO,GAAG,EAAK,QAAQ,EAAE,MAAO,GAAM,IAAM,EAAW,EAA0B,EAAK,MAAM,EAAK,OAAO,CAAC,EAAQ,EAAI,CAAC,EAAO,WAAW,GAAG,EAAO,OAAO,MAAM,GAAG,EAAO,WAAW,MAAM,EAAE,GAAY,kBAAkB,GAAgB,CAAU,EAAE,KAAK,MAAM,EAAK,KAAK,EAAE,KAAK,MAAM,EAAK,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,GAAG,EAAO,kBAAkB,GAAK,EAAO,iBAAkB,MAAO,GAAO,EAAO,iBAAiB,GAAK,EAAO,gBAAgB,EAAI,GAAG,CAAiD,EAAO,OAAO,GAAe,EAAO,EAAvE,EAAK,MAAM,KAAK,IAAI,EAAE,EAAK,MAAM,CAAuD,EAAE,GAA+B,EAAO,EAAW,CAAQ,EAAK,EAAO,QAAU,EAAO,MAAM,UAAU,sBAAqB,EAAO,MAAM,SAAS,cAAc,GAAiB,EAAO,OAAO,EAAO,MAAM,SAAS,mBAAmB,GAAG,GAAwB,EAAO,MAAM,EAAK,MAAM,EAAK,MAAM,KAAK,EAAO,CAAU,EAAE,GAAsB,EAAO,EAAO,MAAM,EAAO,YAAY,CAAC,EAAE,CAAU,GAAG,IAAI,GAAK,EAAE,KAAS,EAAO,WAAW,CAAC,EAAO,GAAO,OAAe,GAAsB,EAAM,EAAM,MAAM,EAAM,YAAY,CAAC,EAAE,CAAU,EAAG,IAAM,EAAa,EAAS,cAAc,OAAO,CAAQ,EAA4M,OAAvM,EAAc,EAAa,EAAO,MAAM,EAAO,MAAM,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,EAAO,iBAAiB,EAAM,CAAC,GAAQ,EAAS,UAAU,EAAO,MAAM,EAAO,MAAM,EAAE,EAAO,iBAAiB,IAAc,EAAK,OAAO,EAAM,CAA8H,MAA7H,GAAO,iBAAiB,GAAM,EAAO,gBAAgB,GAAG,QAAQ,KAAK,iDAAiD,CAAK,EAAS,EAAM,CAAC,EAAQ,IAAkC,EAAK,IAAW,CAAC,GAAG,CAAC,GAAM,OAAO,CAAC,GAAU,KAAK,OAAO,IAAM,EAAK,IAAI,IAAU,EAAQ,EAAuB,EAAK,KAAK,EAAK,GAAQ,EAAK,IAAI,CAAO,EAAE,IAAM,EAAW,EAA0B,EAAK,MAAM,EAAS,MAAM,OAAO,CAAC,EAAE,IAAI,IAAM,KAAQ,EAA0B,EAAK,MAAM,CAAU,EAAE,CAAC,IAAM,EAAI,EAAyB,CAAI,EAAK,GAAI,EAAK,IAAI,CAAG,CAAE,CAAC,IAAM,EAAI,MAAM,KAAK,CAAI,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,EAAQ,EAAW,EAAK,IAAI,EAAO,MAAC,GAAK,EAAY,IAAI,CAAU,IAAI,GAAW,GAAY,IAAI,EAAW,CAAG,EAAE,IAAI,IAAM,KAAO,EAAM,EAAoB,CAAG,EAAG,EAA0B,EAAK,EAAS,IAAI,CAA/F,CAAiG,EAAQ,IAA4B,EAAO,EAAK,KAAK,EAAQ,CAAC,IAAI,CAAK,KAA6S,IAA5R,EAAO,0BAAyB,aAAa,EAAO,uBAAuB,EAAE,EAAO,wBAAwB,KAAK,EAAO,+BAA+B,MAAS,EAAO,uBAAuB,GAAyB,EAAO,EAAK,GAAM,KAAK,EAAI,EAAG,GAAyB,EAAO,EAAK,EAAK,GAAS,QAAQ,CAAwN,GAApN,EAAO,QAAO,GAAoC,EAAO,EAAO,KAAK,EAAE,EAAO,MAAM,gBAAgB,GAAG,AAA0F,EAAO,SAAhF,EAAO,OAAO,SAAS,EAAO,KAAK,EAAE,GAAsB,EAAO,KAAK,EAAe,MAAS,EAAO,UAAU,CAAC,IAAI,GAAK,EAAE,KAAS,EAAO,UAAc,GAAO,QAAO,GAAoC,EAAM,EAAM,KAAK,EAAE,EAAM,MAAM,gBAAgB,GAAM,GAAO,QAAO,EAAO,OAAO,SAAS,EAAM,KAAK,EAAE,GAAsB,EAAM,KAAK,GAAI,EAAO,UAAU,QAAQ,CAAE,CAAgC,GAA/B,GAAuB,CAAM,EAAK,EAAO,mBAAmB,OAAO,CAAC,IAAI,IAAM,KAAS,EAAO,kBAAmB,EAAO,OAAO,SAAS,CAAK,EAAK,EAAM,QAAQ,EAAM,aAAa,EAAO,OAAO,SAAS,EAAM,MAAM,EAAG,EAAM,QAAQ,KAAK,UAAU,EAAE,EAAM,UAAU,EAAG,EAAO,kBAAkB,OAAO,CAAE,CAAC,AAAgI,EAAO,UAArH,EAAO,OAAO,SAAS,EAAO,MAAM,EAAE,EAAO,OAAO,UAAU,UAAU,EAAE,EAAO,OAAO,UAAU,UAAU,EAAgB,MAAM,GAAyB,EAAO,UAAU,EAAE,GAAyB,EAAO,UAAU,EAAE,GAAyB,EAAO,eAAe,EAAE,EAAO,WAAW,KAAK,EAAO,WAAW,KAAK,EAAO,gBAAgB,KAAK,GAA2B,CAAM,EAAE,GAAoB,CAAM,EAAK,EAAO,MAAK,EAAoB,IAAI,EAAO,GAAG,CAAC,EAAE,aAAa,EAAE,EAAoB,OAAO,EAAO,GAAG,GAAG,EAAO,qBAAqB,KAAK,EAAO,OAAO,UAAU,EAAE,EAAO,MAAM,KAAK,EAAO,WAAW,CAAC,EAAE,EAAO,uBAAuB,QAAQ,EAAE,EAAO,uBAAuB,KAAK,EAAO,oBAAoB,GAAG,EAAO,yBAAyB,GAAG,EAAO,yBAAyB,GAAG,EAAO,cAAc,EAAK,CAAC,EAAO,iBAAiB,EAAzB,CAA+B,EAAQ,GAAW,CAAC,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC,EAAQ,EAAU,CAAC,OAAO,GAAM,KAAK,GAAG,OAAO,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,KAAK,OAAO,KAAK,MAAM,KAAK,OAAO,IAAIjC,EAAc,UAAU,KAAK,MAAM,GAAG,MAAM,GAAG,MAAM,EAAK,EAAQ,GAAuB,GAAO,CAAC,IAAI,GAAK,EAAE,KAAU,EAAa,GAAQ,uBAAwE,GAAqB,EAApD,EAAO,iBAAiB,CAAC,CAAoC,GAAW,GAAyB,EAAO,EAAO,oBAAoB,GAAM,EAAM,EAAI,CAAG,EAAQ,GAAkB,GAAO,CAAC,IAAM,EAAE,GAAO,SAAS,GAAS,EAAE,GAAO,SAAS,GAA6U,GAA1U,GAAW,EAAE,EAAE,GAAW,EAAE,EAAE,GAAW,KAAK,YAAY,IAAI,EAAE,EAAU,OAAO,GAAM,EAAU,KAAK,GAAG,EAAU,OAAO,KAAK,EAAU,KAAK,KAAK,EAAU,KAAK,KAAK,EAAU,IAAI,KAAK,EAAU,OAAO,KAAK,EAAU,MAAM,KAAK,EAAU,UAAU,GAAO,WAAW,KAAK,EAAU,MAAM,EAAE,EAAU,MAAM,EAAE,EAAU,MAAM,GAAS,CAAC,OAAO,SAAS,CAAC,GAAG,CAAC,OAAO,SAAS,CAAC,EAAE,OAAO,IAAM,EAAQ,GAAO,cAAc,QAAc,EAAc,EAAO,eAAe,OAAO,CAAC,EAAQ,EAAW,GAAuB,EAAc,OAAO,GAAU,GAAU,OAAO,CAAC,CAAC,CAAC,OAAO,GAAU,CAAC,IAAM,EAAK,GAAU,UAAU,KAAyD,MAAjD,CAAC,GAAM,CAAC,GAAU,UAAU,QAAe,GAAa,GAAG,EAAK,MAAM,GAAG,EAAK,OAAO,GAAG,EAAK,KAAK,GAAG,EAAK,MAAO,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,IAAM,EAAS,GAA4B,EAAE,SAAS,EAAE,QAAQ,EAAkC,OAA7B,IAAW,GAAyB,EAAE,UAAU,UAAU,IAAI,EAAE,UAAU,UAAU,GAAhE,CAAmE,CAAC,EAAE,IAAI,IAAM,KAAQ,EAAW,CAAC,GAAK,CAAC,WAAS,QAAM,EAAK,GAAG,CAAC,GAAM,MAAM,SAAS,IAAM,EAAI,EAA0B,EAAK,MAAM,EAAS,MAAM,OAAO,CAAC,EAAQ,EAAa,GAAqB,EAAM,CAAG,GAAG,GAAyB,EAAK,CAAG,EAAE,GAAG,EAAE,GAAK,qBAAqB,KAAQ,CAAC,GAAoC,EAAK,CAAG,GAAG,CAAC,EAAa,SAAS,IAAM,EAAO,EAA0B,EAAK,EAAS,IAAI,EAAE,GAAG,CAAC,GAAQ,OAAO,CAAC,GAAQ,WAAW,KAAK,SAAS,IAAM,EAAK,GAA0B,EAAO,EAAS,KAAK,EAAE,EAAE,CAAG,EAAM,KAAK,OAAgB,IAAG,EAAa,CAAC,IAAM,EAAM,GAAuB,EAAO,EAAK,EAAE,CAAC,MAAM,EAA2Q,GAAtD,GAAyB,EAA5N,GAAO,OAAO,EAAM,QAAQ,GAAM,MAAM,CAAC,GAAG,EAAM,IAAI,GAAM,IAAI,GAAG,MAAM,EAAM,MAAM,gBAAgB,EAAM,iBAAiB,KAAK,QAAQ,GAAM,QAAQ,gBAAgB,GAAM,eAAe,EAAE,EAA+C,GAAK,CAAK,EAAK,CAAC,GAAoC,EAAK,CAAG,GAAG,EAAE,GAAK,qBAAqB,IAAQ,MAAQ,CAAC,GAAG,GAAoC,EAAK,CAAG,EAAG,IAAI,IAAM,KAAO,EAAK,CAAC,IAAM,EAAQ,GAAwB,EAAO,EAAS,KAAK,EAAI,OAAO,CAAG,EAAM,KAAyJ,IAArI,GAAS,GAAuB,EAAO,EAAQ,IAAI,EAAQ,OAAO,CAAK,EAAG,GAAwB,EAAO,EAAQ,IAAI,EAAQ,MAAM,EAAK,EAAQ,QAAQ,UAAU,CAAC,GAAoB,IAAI,eAAe,GAAsB,8BAA8B,EAAQ,OAAO,YAAY,KAAK,GAAqB,IAAI,EAAE,EAAE,CAAC,EAAE,EAAQ,OAAO,YAAY,KAAK,GAAqB,IAAI,EAAE,EAAE,CAAC,EAAE,EAAQ,OAAO,YAAY,SAAS,EAAO,OAAO,kBAAkB,EAAoB,CAAC,CAAC,OAAO,EAAE,GAAqB,IAAI,EAAE,EAAE,CAAC,EAAE,EAAQ,IAAI,QAAQ,EAAE,EAAoB,EAAE,EAAU,OAAO,GAAK,EAAU,KAAK,OAAO,EAAU,OAAO,EAAO,EAAU,KAAK,EAAK,EAAU,KAAK,EAAS,KAAK,EAAU,IAAI,EAAQ,IAAI,EAAU,OAAO,EAAQ,OAAO,EAAU,MAAM,GAAsB,MAAM,EAAE,EAAU,OAAO,KAAK,EAAoB,CAAC,CAAC,IAAI,EAAQ,IAAI,QAAQ,EAAM,EAAQ,IAAI,mBAAkB,EAAQ,IAAI,iBAAiB,EAAQ,IAAI,SAAS,MAAM,GAAG,GAA8B,EAAQ,OAAO,cAAc,EAAM,EAAQ,GAAG,EAAE,MAAO,CAAC,KAAD,CAAO,CAAE,GAAG,CAAC,IAAU,GAAK,qBAAqB,IAAO,CAAC,EAAU,OAAO,GAAK,EAAU,KAAK,QAAQ,EAAU,OAAO,EAAO,EAAU,KAAK,EAAK,EAAU,KAAK,EAAS,KAAK,MAAO,CAAr2C,CAAs2C,CAAC,EAAQ,GAAkB,GAAO,CAAgD,GAA5C,CAAC,EAAU,QAAQ,CAAC,EAAU,QAAiB,EAAU,WAAW,MAAM,GAAO,WAAW,MAAM,EAAM,YAAY,EAAU,UAAW,OAAQ,IAAM,EAAE,GAAO,SAAS,GAAS,EAAE,GAAO,SAAS,GAAG,GAAG,CAAC,OAAO,SAAS,CAAC,GAAG,CAAC,OAAO,SAAS,CAAC,EAAE,OAAO,IAAM,EAAG,EAAE,EAAU,MAAY,EAAG,EAAE,EAAU,MAA+F,GAAtF,KAAK,IAAI,CAAE,EAAE,KAAK,IAAI,CAAE,EAAE,KAAG,EAAU,MAAM,IAAK,EAAU,MAAM,EAAE,EAAU,MAAM,EAAK,EAAU,OAAO,QAAQ,EAAU,KAAK,EAAU,MAAM,CAAC,IAAM,EAAK,EAAU,MAAM,EAAO,eAAe,OAAO,OAAO,GAAM,EAAK,KAAK,EAAU,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,GAAG,CAAC,EAAK,OAA2M,GAApM,GAAgB,GAAG,EAAE,EAAK,MAAM,KAAK,IAAI,EAAE,EAAK,KAAK,EAAE,EAAE,EAAE,GAAgB,EAAE,GAAG,EAAE,EAAK,KAAK,KAAK,IAAI,EAAE,EAAK,MAAM,GAAG,EAAE,EAAE,GAAoB,cAAc,GAAgB,EAAU,OAAO,MAAM,EAAK,GAAoB,IAAI,eAAe,EAAU,MAAM,EAAoB,EAAE,CAAC,GAAqB,IAAI,EAAU,MAAM,EAAE,IAAM,EAAW,EAAU,QAAQ,gBAAgB,EAAQ,EAAK,EAAU,IAAI,iBAAoB,EAAW,GAAG,GAAiB,GAAqB,WAAW,CAAY,EAAE,GAAY,GAAqB,IAAI,CAAI,CAAC,CAAC,UAAU,CAAC,CAAC,eAAe,CAAU,CAAC,CAAC,IAAI,CAAI,EAAI,EAAU,IAAI,SAAS,KAAK,EAAoB,CAAE,CAAC,MAAO,CAAC,EAAU,OAAO,iBAAiB,EAAU,OAAO,iBAAiB,GAAG,EAAG,KAAK,EAAU,OAAO,eAAe,EAAU,OAAO,eAAe,GAAG,EAAG,IAAK,EAAQ,GAAgB,GAAO,CAAC,IAAM,EAAE,GAAO,SAAS,GAAS,EAAE,GAAO,SAAS,GAAS,EAAY,CAAC,CAAC,EAAU,QAAQ,CAAC,CAAC,EAAU,MAAY,EAAS,EAAU,KAAW,EAAc,EAAU,OAAa,EAAW,EAAU,IAAU,EAAc,EAAU,OAAO,IAAI,GAAK,EAAE,KAAU,EAAS,GAAwB,CAAM,EAAiM,GAA9L,EAAU,OAAO,GAAM,EAAU,KAAK,GAAG,EAAU,OAAO,KAAK,EAAU,KAAK,KAAK,EAAU,KAAK,KAAK,EAAU,IAAI,KAAK,EAAU,OAAO,KAAK,EAAU,MAAM,KAAK,EAAU,UAAU,KAAQ,IAAW,QAAQ,GAAY,EAAc,CAAI,EAAc,cAAc,EAAW,mBAAkB,EAAc,kBAAkB,CAAC,KAAK,EAAW,UAAU,EAAW,iBAAiB,MAAM,CAAC,GAAG,GAA8B,EAAc,YAAY,EAAM,CAAU,EAAK,GAAO,cAAc,SAAS,GAAyB,EAAc,GAAK,CAAK,EAAG,GAAuB,CAAK,EAAE,MAAO,CAAwG,GAAvG,GAAuB,CAAK,EAAK,CAAC,OAAO,SAAS,CAAC,GAAG,CAAC,OAAO,SAAS,CAAC,GAAY,GAAsB,KAAK,IAAI,EAAE,GAAW,CAAC,EAAE,GAAG,KAAK,IAAI,EAAE,GAAW,CAAC,EAAE,GAAG,YAAY,IAAI,GAAG,GAAW,MAAM,GAAG,IAAK,OAAQ,IAAM,EAAc,EAAO,eAAe,OAAO,CAAC,EAAQ,EAAW,GAAuB,EAAc,OAAO,GAAU,GAAU,OAAO,CAAC,CAAC,CAAC,OAAO,GAAU,CAAC,IAAM,EAAK,GAAU,UAAU,KAAyD,MAAjD,CAAC,GAAM,CAAC,GAAU,UAAU,QAAe,GAAa,GAAG,EAAK,MAAM,GAAG,EAAK,OAAO,GAAG,EAAK,KAAK,GAAG,EAAK,MAAO,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,IAAM,EAAS,GAA4B,EAAE,SAAS,EAAE,QAAQ,EAAkC,OAA7B,IAAW,GAAyB,EAAE,UAAU,UAAU,IAAI,EAAE,UAAU,UAAU,GAAhE,CAAmE,CAAC,EAAE,IAAI,IAAM,KAAQ,EAAW,CAAC,GAAK,CAAC,WAAS,QAAM,EAAW,EAAO,EAA0B,EAAK,EAAS,IAAI,EAAE,GAAG,CAAC,GAAQ,OAAO,CAAC,GAAQ,WAAW,KAAK,SAAS,IAAM,EAAI,EAAO,iBAAiB,EAA0B,GAAM,MAAM,EAAS,MAAM,OAAO,CAAC,EAAQ,EAAK,GAA0B,EAAO,EAAS,KAAK,EAAE,EAAE,CAAG,EAAE,GAAG,CAAC,EAAK,OAAO,SAAS,IAAM,EAAY,GAAuB,EAAO,EAAK,EAAE,CAAC,MAAM,EAAQ,EAAa,GAAa,OAAO,GAAM,MAAY,EAAW,GAAa,iBAAiB,GAAc,2BAA2B,KAAW,EAAQ,GAAc,cAAc,GAAY,aAAa,GAAG,CAAC,IAAU,CAAK,CAAE,OAAO,EAAM,CAAC,QAAQ,KAAK,qDAAqD,CAAK,CAAE,CAAC,GAAG,GAAoC,EAAK,CAAG,EAAG,IAAI,IAAM,KAAO,EAAK,CAAC,IAAM,EAAQ,GAAwB,EAAO,EAAS,KAAK,EAAI,OAAO,CAAG,EAAM,KAAkK,CAAjJ,GAA8B,EAAQ,OAAO,cAAc,EAAM,EAAQ,GAAG,EAAE,GAA0B,EAAO,EAAQ,OAAO,EAAM,EAAQ,GAAG,EAAK,GAAO,cAAc,SAAS,GAAyB,EAAO,GAAK,CAAK,EAAG,MAAH,CAAU,CAAE,MAAO,CAAC,EAGvta,GAAkB,GAAO,CAAC,IAAM,EAAE,GAAO,SAAS,GAAS,EAAE,GAAO,SAAS,GAAG,GAAG,CAAC,OAAO,SAAS,CAAC,GAAG,CAAC,OAAO,SAAS,CAAC,EAAE,OAAO,IAAM,EAAc,EAAO,eAAe,OAAO,CAAC,EAAQ,EAAW,GAAuB,EAAc,OAAO,GAAU,GAAU,OAAO,CAAC,CAAC,CAAC,OAAO,GAAU,CAAC,IAAM,EAAK,GAAU,UAAU,KAAyD,MAAjD,CAAC,GAAM,CAAC,GAAU,UAAU,QAAe,GAAa,GAAG,EAAK,MAAM,GAAG,EAAK,OAAO,GAAG,EAAK,KAAK,GAAG,EAAK,MAAO,CAAC,EAAE,IAAI,IAAM,KAAQ,EAAW,CAAC,GAAK,CAAC,WAAS,QAAM,EAAK,GAAG,CAAC,GAAM,MAAM,SAAS,IAAM,EAAI,EAA0B,EAAK,MAAM,EAAS,MAAM,OAAO,CAAC,EAAE,GAAG,CAAC,GAAK,YAAY,GAAK,sBAAsB,SAAS,IAAM,EAAO,EAA0B,EAAK,EAAS,IAAI,EAAE,GAAG,CAAC,EAAO,SAAS,EAAM,iBAAiB,EAAE,IAAM,EAAO,KAAK,KAAK,EAAM,QAAQ,GAAG,KAAK,EAAE,EAAO,eAAe,KAAK,IAAI,GAAG,KAAK,IAAI,GAAG,EAAO,gBAAgB,GAAG,CAAM,CAAC,EAAE,MAAO,CAAC,EAAE,EAAO,iBAAiB,QAAQ,GAAkB,CAAC,QAAQ,EAAK,CAAC,EAAE,EAAO,iBAAiB,cAAc,GAAkB,CAAC,QAAQ,EAAI,CAAC,EAAE,EAAO,iBAAiB,cAAc,GAAkB,CAAC,QAAQ,EAAI,CAAC,EAAE,EAAO,iBAAiB,YAAY,GAAgB,CAAC,QAAQ,EAAI,CAAC,EAAE,EAAO,iBAAiB,gBAAgB,GAAgB,CAAC,QAAQ,EAAI,CAAC,EAAE,IAAM,IAA2B,EAAO,EAAS,IAAQ,CAAC,IAAM,EAAU,GAAU,UAI5zC,GAJy0C,CAAC,GAAQ,CAAC,GAAoB,CAAC,EAAO,OAAO,EAAO,UAAU,OAAO,GAI34C,EAAO,mBAAmB,GAAM,OAAO,IAAM,EAAM,GAAO,iBAAiB,EAAQ,EAAS,EAAU,KAAW,EAAQ,EAAU,IAAI,EAAY,EAAU,EAAS,EAAU,MAAY,EAAW,EAAQ,EAAU,OAAa,EAAY,KAAK,IAAI,EAAE,CAAQ,EAAQ,EAAa,KAAK,IAAI,EAAU,CAAS,EAAQ,EAAW,KAAK,IAAI,EAAE,CAAO,EAAQ,EAAc,KAAK,IAAI,EAAW,CAAU,EAAQ,EAAa,EAAa,EAAkB,EAAc,EAAc,EAAW,GAAG,GAAc,GAAG,GAAe,EAAE,OAAO,EAAS,YAAY,KAAK,MAAM,CAAQ,EAAE,KAAK,MAAM,EAAW,CAAU,EAAE,KAAK,MAAM,EAAU,KAAK,EAAE,KAAK,MAAM,EAAU,MAAM,CAAC,EAAE,EAAS,WAAW,KAAK,MAAM,CAAW,EAAE,KAAK,MAAM,EAAW,CAAa,EAAE,KAAK,MAAM,CAAY,EAAE,KAAK,MAAM,CAAa,CAAC,EAAE,IAAM,EAAI,EAAO,iBAAiB,EAA0B,EAAO,sBAAsB,CAAC,EAAE,EAAU,OAAO,CAAC,EAI5wB,GADnI,EAAO,aAAa,SAAiG,EAAS,YAAY,EAA5G,EAAS,YAAY,GAAc,EAAI,cAAc,EAAoF,EAAS,oBAAoB,EAAI,SAClM,GAAmB,CAAM,EAAK,EAAI,iBAAiB,EAAqB,EAAO,EAAI,eAAe,EAAE,EAAI,gBAAgB,EAAE,EAAM,GAAK,aAAa,SAAS,CAAC,AAAyB,EAAO,eAAa,IAAImB,GAAoB,EAAO,aAAa,OAAO,GAAK,cAAc,KAAK,EAAO,aAAa,OAAO,EAAO,MAAM,EAAE,IAAM,EAAU,EAAU,MAAM,EAAQ,GAAW,EAAU,IAAW,CAAC,IAAM,EAAQ,EAAS,EAAU,EAAe,EAAS,EAAQ,EAAgB,EAAe,KAAK,IAAI,EAAE,CAAO,EAA2D,EAAnC,KAAK,IAAI,EAAU,CAA8C,EAAE,EAAkB,GAAiB,GAAG,GAAe,IAAS,EAAS,YAAY,KAAK,MAAM,CAAO,EAAE,KAAK,MAAM,EAAW,CAAU,EAAE,KAAK,MAAM,CAAS,EAAE,KAAK,MAAM,EAAU,MAAM,CAAC,EAAE,EAAS,WAAW,KAAK,MAAM,CAAc,EAAE,KAAK,MAAM,EAAW,CAAa,EAAE,KAAK,MAAM,CAAe,EAAE,KAAK,MAAM,CAAa,CAAC,EAAE,EAAS,OAAO,EAAO,MAAM,CAAS,EAAE,EAAE,EAAU,EAAO,aAAa,QAAQ,CAAC,EAAE,EAAU,EAAO,aAAa,QAAQ,CAAC,EAAE,MAAO,CAAiB,GAA0B,EAAO,EAAS,EAAU,MAAM,EAAU,OAAO,CAAgB,GAAG,EAAO,eAAkB,EAAO,YAAY,UAAS,EAAO,WAAW,SAAS,KAAK,MAAM,YAAY,IAAI,EAAE,MAAM,EAAS,gBAAgB,IAAI,EAAE,EAAS,YAAY,KAAK,MAAM,CAAQ,EAAE,KAAK,MAAM,EAAW,CAAU,EAAE,KAAK,MAAM,EAAU,KAAK,EAAE,KAAK,MAAM,EAAU,MAAM,CAAC,EAAE,EAAS,WAAW,KAAK,MAAM,CAAW,EAAE,KAAK,MAAM,EAAW,CAAa,EAAE,KAAK,MAAM,CAAY,EAAE,KAAK,MAAM,CAAa,CAAC,EAAE,EAAS,eAAe,EAAI,EAAE,EAAO,cAAc,eAAe,GAAK,EAAO,cAAc,OAAO,GAAQ,EAAS,OAAO,EAAO,MAAM,EAAO,MAAM,CAAG,EAAQ,GAAwB,GAAM,CAAC,IAAM,EAAQ,GAAM,SAAS,KAAW,EAAK,GAAM,MAAM,CAAC,EAAQ,EAAI,CAAC,GAAS,MAAM,GAAG,EAAQ,KAAK,MAAM,EAAQ,SAAS,CAAC,EAAE,GAAG,EAAQ,KAAK,MAAM,EAAQ,SAAS,CAAC,EAAE,GAAG,EAAK,OAAO,EAAK,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,KAAK,GAAG,EAAE,GAAG,EAAc,SAAS,OAAO,EAAI,OAAO,IAAM,EAAM,CAAC,UAAQ,OAAK,UAAU,EAAK,OAAO,GAAM,CAAC,EAAK,OAAO,CAAC,CAAC,OAAO,KAAK,CAAG,EAAE,EAAc,QAAQ,EAAM,GAAc,CAAK,CAAE,EAAQ,IAAuB,EAAM,IAAe,CAAC,GAAG,CAAC,GAAc,OAAO,CAAC,GAAwB,IAAI,EAAE,MAAO,CAAC,IAAM,EAAS,GAAO,SAAe,EAAS,GAAO,SAAe,EAAc,CAAC,CAAC,GAAO,eAAe,OAAO,SAAS,CAAQ,GAAG,OAAO,SAAS,CAAQ,EAAM,EAAS,KAAK,IAAI,IAAM,KAAQ,EAAa,CAAC,IAAM,EAAS,GAAM,UAAU,EAAW,EAAK,GAAM,MAAM,EAAO,OAAO,MAAM,EAAS,EAAE,EAAE,GAAG,CAAC,GAAM,MAAM,SAAS,IAAM,EAAI,EAA0B,EAAK,MAAM,EAAS,MAAM,OAAO,CAAC,EAAE,GAAG,CAAC,GAAK,eAAe,SAAS,IAAM,EAAU,EAAsB,CAAI,EAAQ,EAAO,EAAU,EAAQ,IAAI,CAAS,EAAE,KAAK,GAAG,CAAC,GAAQ,CAAC,EAAO,OAAO,CAAC,EAAO,WAAW,KAAM,SAAU,IAAM,EAAK,GAAyB,CAAM,EAAE,AAAa,IAAS,CAAC,QAAQ,KAAK,MAAI,EAAE,IAAM,EAAK,EAAS,KAA4H,GAAG,EAA7G,GAAe,GAAM,GAAU,EAAK,MAAM,GAAU,EAAK,OAAO,GAAU,EAAK,KAAK,GAAU,EAAK,QAAkB,SAAS,IAAM,EAAK,GAA0B,EAAO,EAAK,EAAS,EAAS,CAAG,EAAE,GAAG,CAAC,EAAK,OAAO,CAAC,GAAwB,CAAC,QAAQ,KAAK,MAAI,CAAC,EAAE,MAAO,CAAC,IAAM,EAAQ,GAAyB,EAAO,EAAK,EAAE,CAAC,OAAO,EAAK,EAAS,CAAQ,EAAE,GAAwB,CAAC,UAAQ,MAAI,CAAC,EAAE,MAAO,CAAC,GAAwB,CAAQ,CAAE,EAAQ,IAAyB,EAAK,EAAS,EAAM,IAAuB,CAAC,IAAM,EAAK,GAAU,KAAW,EAAU,GAAU,UAAU,GAAG,CAAC,GAAM,OAAO,CAAC,GAAM,CAAC,GAAW,EAAK,OAAO,GAAG,EAAK,QAAQ,EAAG,OAAQ,IAAM,EAAO,EAA0B,EAAK,CAAI,EAAE,GAAG,CAAC,EAAO,OAAO,EAAO,qBAAqB,EAAK,MAAM,EAAO,+BAA+B,EAAK,gBAAgB,EAAO,cAAc,EAAO,cAAc,GAAG,EAAE,IAAM,EAAW,EAAO,iBAAiB,EAA0B,GAAM,MAAM,GAAM,OAAO,CAAC,EAAK,GAAY,kCAAiC,EAAW,wBAAwB,GAA2B,CAAM,GAAG,IAAM,EAAe,EAA0B,EAAK,MAAM,CAAU,EAAE,GAAmB,EAAO,EAAK,MAAM,EAAW,CAAc,EAAE,IAAM,EAAG,GAAmB,CAAM,EAAkD,EAAO,OAAO,GAAe,EAAO,EAAvE,EAAK,MAAM,KAAK,IAAI,EAAE,EAAK,MAAM,CAAuD,EAAE,GAA0B,EAAO,EAAW,EAAK,KAAK,EAAE,GAAsB,EAAO,CAAU,EAAE,GAA+B,EAAO,EAAW,EAAS,CAAE,EAAE,GAAuB,EAAO,CAAU,EAAE,GAA4B,EAAO,EAAK,CAAK,EAAK,EAAO,mBAAmB,IAAO,GAAyB,CAAU,IAAG,EAAO,yBAAyB,IAAM,EAAO,iBAAiB,GAAK,IAAM,EAAiB,GAAgB,EAAO,CAAU,EAAQ,EAAW,KAAK,IAAI,EAAE,KAAK,IAAI,EAAE,GAAU,YAAY,CAAC,CAAC,EAAE,EAAO,gBAAgB,EAAW,IAAM,EAAiB,EAAiB,EAAiB,EAAc,GAAsB,EAAO,EAAK,MAAM,EAAK,EAAK,EAAO,OAAO,CAAU,EAAE,GAAG,EAAO,MAAM,CAA2P,GAAvP,EAAO,MAAM,UAAU,sBAAqB,EAAO,MAAM,SAAS,cAAc,GAAiB,EAAO,OAAO,EAAO,MAAM,SAAS,mBAAmB,GAAG,GAAwB,EAAO,MAAM,EAAK,MAAM,EAAK,MAAM,EAAc,EAAO,CAAU,EAAK,EAAW,kBAAkB,GAAM,CAAC,IAAM,EAAY,EAAW,iBAAiB,GAAG,EAAO,MAAM,SAAS,kBAAkB,EAAO,MAAM,SAAS,kBAAkB,GAAG,EAAG,EAAY,EAAO,MAAM,SAAS,GAAG,EAAO,MAAM,SAAS,gBAAiB,KAAM,GAAO,MAAM,SAAS,iBAAiB,EAAoD,GAA9B,EAAW,aAAa,GAAsB,CAAC,IAAM,EAAM,EAAW,YAAY,GAAS,EAAI,EAAW,gBAAgB,GAAS,EAAM,EAAO,MAAM,SAAS,EAAE,EAAO,MAAM,SAAS,gBAAgB,EAAM,EAAO,MAAM,SAAS,EAAE,EAAM,KAAK,IAAI,YAAY,IAAI,EAAE,KAAK,CAAK,EAAE,CAAI,KAAM,GAAO,MAAM,SAAS,gBAAgB,EAAO,MAAM,SAAS,EAAG,GAAgC,EAAO,KAAK,EAAE,GAAgC,EAAO,MAAM,EAAiB,CAAU,EAAE,GAAwB,EAAO,MAAM,EAAO,CAAU,EAAE,GAAwB,EAAO,MAAM,EAAiB,CAAU,EAAE,IAAM,EAAuB,EAAW,gBAAgB,EAAW,EAAiB,GAAwB,EAAO,MAAM,EAAqB,EAAE,CAAsB,EAAE,GAAqB,EAAO,EAAG,MAAM,EAAE,EAAO,iBAAiB,EAAO,MAAM,UAAU,uBAAuB,EAAO,MAAM,SAAS,GAAG,EAAO,MAAM,UAAU,kBAAkB,GAAG,IAAK,CAAC,IAAM,EAAW,EAAe,IAAI,GAAK,CAAC,EAAI,KAAS,EAAO,UAAU,CAA+C,IAAM,EAAK,EAA7C,OAAO,OAAO,CAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,EAA8B,IAAI,CAAC,EAAE,GAAG,CAAC,EAAM,MAAM,SAAS,IAAM,EAAe,GAAM,mBAAmB,EAAiB,EAAa,GAAM,iBAAiB,EAAe,EAAS,GAAM,iBAAiB,CAAC,GAAG,GAAM,eAAe,EAAK,GAAG,MAAM,EAAK,iBAAiB,gBAAgB,GAAM,wBAAwB,KAAK,QAAQ,EAAK,QAAQ,gBAAgB,EAAK,eAAe,EAAE,EAAK,EAAM,mBAAmB,GAAM,mBAAmB,KAAK,EAAM,oBAAoB,GAAM,kBAAkB,KAAK,EAAM,0BAA0B,GAAM,wBAAwB,KAAK,IAAM,EAAiB,GAAgB,eAAe,GAAa,CAAc,EAAK,EAAM,oBAAoB,EAAM,uBAAuB,IAAkB,EAA4B,EAAM,MAAM,CAAc,EAAE,EAAM,qBAAqB,GAAqB,EAAM,MAAM,UAAU,sBAAqB,EAAM,MAAM,SAAS,cAAc,GAAM,cAAc,EAAO,MAAM,EAAO,MAAM,UAAU,eAAe,EAAE,GAAiB,EAAO,OAAO,EAAM,MAAM,SAAS,mBAAmB,GAAG,IAAM,EAAkB,GAAM,kBAAkB,GAAsB,EAAO,EAAK,kBAAkB,EAAK,MAAM,EAAS,GAAc,MAAM,EAAK,EAAO,OAAO,CAAc,EAAE,EAAoO,GAAtN,EAAM,MAAM,SAAS,oBAAoB,GAAM,kBAAkB,KAAK,EAAM,MAAM,SAAS,0BAA0B,GAAM,wBAAwB,KAAK,EAAM,MAAM,SAAS,iBAAiB,GAAM,eAAe,GAAM,GAAM,gBAAgB,CAAC,IAAM,EAAQ,GAAuB,EAAO,OAAO,EAAO,QAAQ,UAAU,SAAS,GAAG,CAAC,EAAE,EAAK,cAAc,CAAC,EAAE,EAAK,gBAAgB,EAAE,KAAK,IAAI,EAAE,EAAK,OAAO,CAAC,EAAE,EAAQ,MAAM,EAAE,CAAC,EAAK,gBAAgB,EAAE,KAAK,IAAI,EAAE,EAAK,QAAQ,CAAC,EAAE,EAAQ,MAAM,CAAE,CAA0K,GAAzK,GAA4B,EAAM,EAAK,EAAK,MAAM,EAAO,MAAM,EAAO,kBAAkB,EAAE,GAAc,MAAM,OAAO,EAAK,MAAM,EAAkB,EAAO,CAAc,EAAK,EAAM,MAAM,UAAU,GAAM,SAAS,GAAG,EAAe,kBAAkB,GAAM,CAAC,IAAM,EAAY,EAAe,iBAAiB,GAAG,EAAM,MAAM,SAAS,kBAAkB,EAAM,MAAM,SAAS,kBAAkB,GAAG,EAAG,EAAY,EAAM,MAAM,SAAS,GAAG,EAAM,MAAM,SAAS,gBAAiB,KAAM,GAAM,MAAM,SAAS,iBAAiB,EAAG,GAAG,EAAe,aAAa,GAAM,CAAC,IAAM,EAAM,EAAe,YAAY,GAAS,EAAI,EAAe,gBAAgB,GAAS,EAAM,EAAM,MAAM,SAAS,EAAE,EAAM,MAAM,SAAS,gBAAgB,EAAM,EAAM,MAAM,SAAS,EAAE,EAAM,KAAK,IAAI,YAAY,IAAI,EAAE,KAAK,CAAK,EAAE,CAAI,KAAM,GAAM,MAAM,SAAS,gBAAgB,EAAM,MAAM,SAAS,EAAG,IAAM,EAAqB,GAAM,kBAAkB,GAAgB,EAAM,CAAc,EAAE,EAAuB,EAAe,KAAK,IAAI,EAAE,KAAK,IAAI,EAAE,GAAc,YAAY,GAAU,YAAY,CAAC,CAAC,EAAQ,EAAqB,EAAqB,EAAe,GAAgC,EAAM,KAAK,EAAE,GAAgC,EAAM,MAAM,EAAqB,CAAc,EAAE,GAAwB,EAAM,MAAM,EAAO,CAAc,EAAE,GAAwB,EAAM,MAAM,EAAqB,CAAc,EAAE,IAAM,EAAsB,EAAe,gBAAgB,EAAe,EAAqB,GAAwB,EAAM,MAAM,EAAqB,EAAE,CAAqB,EAAE,GAAqB,EAAM,EAAG,WAAW,CAAE,CAAC,GAAwB,EAAO,EAAK,EAAK,CAAK,EAAE,GAAmB,EAAO,EAAK,EAAK,EAAM,CAAU,EAAE,GAAwB,EAAO,CAAU,EAAE,GAA8B,EAAO,EAAW,CAAE,EAAE,GAA8B,CAAM,EAAK,EAAO,OAAO,GAAwB,EAAO,EAAW,MAAM,EAAG,IAAM,EAAuB,EAAe,IAAI,GAAK,CAAC,EAAI,KAAS,EAAO,UAAU,CAA+C,IAAM,EAAK,EAA7C,OAAO,OAAO,CAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,EAA0C,IAAI,CAAC,EAAQ,EAAe,GAAM,mBAAmB,EAAiB,EAAyB,CAAC,EAAE,GAAM,mBAAmB,GAAgB,iCAAuC,EAAY,GAAM,UAAU,GAA42B,GAAwB,EAAh3B,GAAM,aAAa,CAAC,GAAG,EAAe,gBAAgB,GAAK,cAAc,OAAO,CAAW,CAAC,CAAC,KAAK,EAAE,SAAS,MAAM,cAAc,EAAY,eAAe,EAAK,WAAW,EAAE,uBAAuB,EAAK,WAAW,EAAe,uBAAuB,kBAAkB,EAAK,cAAc,EAAe,kBAAkB,cAAc,EAAK,UAAU,EAAe,cAAc,mBAAmB,EAAK,eAAe,EAAe,mBAAmB,yBAAyB,EAAK,aAAa,EAAe,yBAAyB,gCAAgC,EAAyB,wBAAwB,EAAyB,EAAe,wBAAwB,IAAI,EAAE,CAAC,GAAG,EAAe,gCAAgC,EAAyB,wBAAwB,EAAyB,EAAe,wBAAwB,IAAI,EAA2C,WAAW,CAAE,CAAI,MAAC,EAAO,OAAO,EAAO,UAAU,OAAO,GAAS,OAAO,CAAO,EAAQ,IAAkB,EAAM,EAAM,IAAS,CAAyD,IAAM,GAA9C,EAAO,YAAY,IAAI,EAAoC,GAAc,IAAI,GAAe,IAAQ,EAAI,KAAK,IAAI,EAAO,kBAAkB,EAAE,CAAG,EAAM,EAAc,EAAE,IAAI,IAAM,KAAY,GAAO,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,GAAU,QAAQ,SAAS,IAAM,EAAK,EAAO,OAAO,MAAM,EAAS,EAAE,EAAE,GAAG,CAAC,GAAM,MAAM,SAAiF,IAAM,EAApE,EAA0B,EAAK,MAAM,EAAS,MAAM,OAAO,CAAmB,CAAC,EAAE,0BAA0B,EAAK,EAAQ,IAAG,EAAc,EAAc,EAAE,KAAK,IAAI,EAAc,CAAO,EAAE,EAAS,CAAC,GAAG,EAAc,EAAE,CAAC,IAAM,EAAU,KAAK,IAAI,EAAE,EAAM,CAAM,EAAqB,EAAU,EAAI,EAAoB,IAAe,EAAI,KAAK,IAAI,GAAG,KAAK,KAAK,EAAc,CAAS,CAAC,EAAG,CAAC,OAAO,KAAK,IAAI,GAAG,CAAG,CAAE,EAAQ,GAAO,GAAO,CAAC,IAAM,EAAoB,KAAK,IAAI,EAAE,KAAK,MAAM,EAAO,gBAAgB,OAAO,EAAO,YAAY,GAAO,eAAe,CAAC,CAAC,EAAQ,EAAM,KAAK,IAAI,EAAE,KAAK,IAAI,KAAK,MAAM,GAAO,eAAe,CAAC,EAAE,CAAmB,CAAC,EAAQ,EAAO,KAAK,IAAI,EAAE,KAAK,MAAM,GAAO,cAAc,CAAC,CAAC,EAAQ,EAAI,GAAiB,EAAM,EAAM,CAAM,EAAK,IAAQ,GAAW,IAAS,GAAY,KAAK,IAAI,EAAI,CAAO,GAAG,MAAW,EAAU,EAAM,EAAW,EAAO,EAAQ,EAAI,EAAS,cAAc,CAAG,EAAE,EAAS,QAAQ,EAAM,EAAO,EAAK,EAAE,EAAO,MAAM,MAAM,GAAG,EAAM,IAAI,EAAO,MAAM,OAAO,GAAG,EAAO,IAAI,EAAQ,GAAoB,GAAO,CAAC,GAAG,CAAC,EAAM,CAAC,EAAO,MAAM,QAAQ,OAAO,MAAO,CAAC,GAAiB,CAAK,EAAE,EAAO,MAAM,QAAQ,QAAQ,EAAO,MAAM,UAAU,eAAe,KAAK,MAAM,EAAM,YAAY,CAAC,EAAE,MAAM,KAAK,OAAO,EAAM,WAAW,IAAI,EAAM,iBAAiB,EAAE,EAAE,OAAQ,EAAQ,GAAiB,GAAM,CAAC,IAAM,EAAM,GAAM,OAAO,CAAC,EAAmD,OAA9C,EAAM,OAAO,SAAS,CAAC,EAAM,QAAc,GAAU,OAAO,EAAM,WAAW,EAAE,CAAC,CAAC,KAAK,CAAE,EAAQ,GAAgB,GAAM,GAAiB,CAAI,CAAC,CAAC,YAAY,EAAQ,GAAiB,GAAM,CAAC,IAAM,EAAU,EAAsB,GAAM,IAAI,GAAG,GAAG,MAAM,GAAG,GAAM,UAAU,IAAI,GAAG,GAAG,GAAY,EAAQ,IAAmB,EAAK,IAAQ,CAAC,IAAM,EAAK,GAAM,UAAU,UAAU,GAAG,CAAC,EAAK,OAAO,KAAK,IAAM,EAAM,GAAO,iBAAiB,EAAQ,EAAK,KAAK,MAAM,EAAK,MAAM,CAAC,EAAQ,EAAI,KAAK,OAAO,EAAK,KAAK,GAAG,CAAK,EAAQ,EAAM,KAAK,MAAM,EAAK,OAAO,CAAC,EAAQ,EAAO,KAAK,MAAM,EAAK,QAAQ,CAAC,EAAqC,OAAhC,GAAO,GAAG,GAAQ,EAAS,KAAW,CAAC,IAAI,GAAiB,CAAI,EAAE,IAAI,GAAG,EAAK,GAAG,EAAI,GAAG,EAAM,GAAG,IAAS,OAAK,MAAI,QAAM,QAAM,CAAE,EAAQ,GAAqB,GAAM,CAAC,IAAM,EAAG,KAAK,IAAI,EAAE,EAAK,IAAI,EAAQ,EAAG,KAAK,IAAI,EAAU,EAAK,KAAK,EAAK,KAAK,EAAQ,EAAG,KAAK,IAAI,EAAE,EAAK,GAAG,EAAQ,EAAG,KAAK,IAAI,EAAW,EAAK,IAAI,EAAK,MAAM,EAAQ,EAAG,EAAG,EAAS,EAAG,EAAG,EAAM,GAAI,GAAG,GAAI,IAAS,EAAS,WAAW,KAAK,MAAM,CAAE,EAAE,KAAK,MAAM,EAAW,CAAE,EAAE,KAAK,MAAM,CAAE,EAAE,KAAK,MAAM,CAAE,CAAC,EAAE,EAAS,WAAW,EAAE,EAAS,WAAW,EAAE,EAAQ,GAAuB,GAAS,CAAC,CAAC,GAAS,MAAM,KAAK,KAAK,EAAQ,QAAQ,IAAI,EAAQ,UAAU,EAAE,EAAE,KAAW,GAAoB,GAAQ,CAAC,GAAG,CAAC,GAAQ,OAAO,CAAC,GAA0B,EAAO,EAAO,KAAK,EAAG,MAAO,GAAO,IAAM,EAAO,EAAO,uBAAuB,MAAM,CAAC,GAAQ,EAAO,YAAY,IAAI,EAAM,EAAQ,IAA2B,EAAO,EAAI,IAAQ,CAAC,GAAG,CAAC,GAAQ,CAAC,EAAI,MAAO,GAAyY,GAAhY,EAAO,iBAAiB,GAAG,EAAO,2BAA2B,EAAO,mBAAmB,GAAG,GAAmB,EAAI,iBAAiB,EAAI,aAAa,EAAI,kBAAkB,EAAI,iBAAiB,EAAO,4BAA4B,EAAO,mCAAmD,EAAI,qBAAqB,GAAO,eAA6B,GAAoB,CAAM,GAAiB,GAAuB,EAAO,cAAc,GAAG,GAAuB,EAAO,iBAAiB,GAAG,GAAuB,EAAO,cAAc,GAAK,EAAO,mBAAmB,KAAM,MAAO,GAAM,IAAI,GAAK,EAAE,KAAS,EAAO,WAAW,CAAC,EAAE,CAAC,IAAM,EAAS,GAAO,oBAAoB,EAAI,GAAG,GAAO,iBAAiB,GAAG,GAAO,0BAA0B,GAAU,aAAa,GAAU,kBAAkB,GAAO,4BAA4B,GAAoB,CAAK,EAAG,MAAO,EAAM,CAAC,MAAO,EAAM,EAAQ,IAAqB,EAAK,EAAO,EAAI,IAAQ,CAAC,IAAM,EAAK,GAAM,UAAU,WAAW,CAAC,EAAE,MAAM,CAAC,GAAiB,CAAI,EAAE,GAAM,MAAM,WAAW,EAAE,GAAM,UAAU,WAAW,EAAE,KAAK,MAAM,EAAK,MAAM,CAAC,EAAE,KAAK,MAAM,EAAK,KAAK,CAAC,EAAE,KAAK,MAAM,EAAK,OAAO,CAAC,EAAE,KAAK,MAAM,EAAK,QAAQ,CAAC,EAAE,KAAK,OAAO,GAAM,UAAU,YAAY,GAAG,GAAG,EAAE,KAAK,MAAM,GAAO,YAAY,CAAC,EAAE,KAAK,MAAM,GAAO,WAAW,CAAC,EAAE,GAAK,kBAAkB,GAAG,GAAK,eAAe,GAAG,GAAK,UAAU,GAAG,GAAK,cAAc,GAAG,GAAK,wBAAwB,GAAG,GAAK,0BAA0B,GAAG,GAAQ,OAAO,MAAM,GAAG,GAAQ,WAAW,MAAM,EAAE,GAAQ,iBAAiB,EAAE,CAAC,CAAC,KAAK,GAAG,CAAE,EAAQ,IAAwB,EAAK,EAAO,EAAI,IAAQ,CAAyB,GAArB,CAAC,GAAuB,GAAK,kBAAkB,EAAI,wBAAwB,CAAC,GAAiB,EAAI,2BAA2B,EAAO,kBAAkB,IAAQ,MAAO,GAAO,GAAG,EAAO,mBAAmB,GAAsE,MAA/D,GAAO,iBAAiB,KAAK,IAAI,EAAO,kBAAkB,EAAE,CAAC,EAAS,GAAO,IAAM,EAAI,GAAoB,EAAK,EAAO,EAAI,CAAK,EAA2U,OAAtU,IAAM,EAAO,qBAAoB,EAAO,mBAAmB,EAAI,EAAO,iBAAiB,KAAK,IAAI,EAAO,kBAAkB,EAAE,CAAC,GAAM,GAA0B,EAAO,EAAI,CAAK,GAAG,EAAO,iBAAiB,KAAK,IAAI,EAAO,kBAAkB,EAAE,CAAC,EAAS,KAAU,EAAO,kBAAkB,GAAG,GAAG,IAAO,iBAA2B,IAAa,EAAM,EAAQ,GAA6B,GAAM,CAAC,IAAM,EAAM,GAAM,OAAO,CAAC,EAAQ,EAAQ,GAAM,iBAAiB,EAAM,2BAA2B,CAAC,EAAE,MAAM,CAAC,EAAM,MAAM,GAAG,KAAM,QAAY,EAAM,WAAW,GAAG,EAAuB,CAAK,EAAE,EAAQ,sBAAsB,GAAG,EAAQ,kBAAkB,GAAG,EAAQ,0BAA0B,GAAG,EAAQ,wBAAwB,GAAG,KAAK,UAAU,EAAM,kBAAkB,CAAC,CAAC,EAAE,KAAK,UAAU,EAAM,gBAAgB,CAAC,CAAC,EAAE,KAAK,UAAU,EAA0B,EAAM,CAAO,CAAC,CAAC,IAAI,IAAO,CAAC,IAAI,EAAyB,CAAI,EAAE,QAAQ,GAAM,QAAQ,MAAM,GAAM,MAAM,KAAK,GAAM,KAAK,KAAK,GAAM,KAAK,KAAK,GAAM,KAAK,KAAK,GAAM,KAAK,KAAK,GAAM,KAAK,KAAK,GAAM,KAAK,aAAa,GAAM,aAAa,SAAS,GAAM,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAE,EAAQ,IAA0B,EAAK,IAAW,CAAC,IAAM,EAAM,KAAK,MAAM,GAAU,MAAM,OAAO,CAAC,EAAQ,EAAI,CAAC,GAAM,IAAI,GAAG,GAA6B,CAAI,EAAE,CAAK,CAAC,CAAC,KAAK,GAAG,EAAE,GAAG,EAAuB,IAAI,CAAG,EAAG,OAAO,EAAuB,IAAI,CAAG,EAAG,IAAM,EAAI,EAA0B,GAAM,OAAO,CAAC,EAAE,CAAK,EAAsC,GAApC,EAAuB,IAAI,EAAI,CAAG,EAAK,EAAuB,KAAK,IAAI,CAAC,IAAM,EAAS,EAAuB,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,EAAuB,OAAO,CAAQ,CAAE,CAAC,OAAO,CAAI,EAAQ,IAA0B,EAAK,EAAK,IAAgB,GAA8E,CAAC,GAA/C,GAAkC,CAAuB,EAAE,cAAc,GAAM,IAAI,GAAG,iBAAiB,GAAM,OAAO,CAAC,EAAE,uBAAuB,GAAM,iBAAiB,GAAM,OAAO,2BAA2B,KAAK,gBAAgB,GAAU,KAAK,kBAAkB,GAAyB,EAAK,CAAQ,CAAC,EAAU,IAAsB,EAAK,IAAW,CAAC,IAAM,EAAM,GAAM,OAAO,CAAC,EAAQ,EAAM,GAAgC,EAAM,WAAW,CAAC,EAAE,GAAU,MAAM,OAAO,CAAC,EAAQ,EAAQ,GAAM,iBAAiB,EAAM,2BAA2B,KAAW,EAAG,EAAQ,CAAC,MAAM,EAAQ,YAAY,EAAM,MAAM,KAAK,EAAQ,cAAc,EAAM,KAAK,KAAK,EAAQ,cAAc,EAAM,KAAK,KAAK,EAAQ,cAAc,EAAM,KAAK,KAAK,EAAQ,gBAAgB,EAAM,KAAK,KAAK,EAAQ,gBAAgB,EAAM,KAAK,KAAK,EAAQ,gBAAgB,EAAM,IAAI,EAAE,EAAY,EAAO,EAAM,aAAa,MAAY,EAAS,IAAS,OAAO,EAAM,WAAW,EAAM,UAAU,GAAG,EAAM,UAAU,EAAM,cAAc,EAAM,WAAW,GAA+C,OAAxC,OAAO,GAAU,EAAE,CAAC,CAAC,KAAK,EAAqB,GAAyB,CAAC,YAAY,EAAO,WAAS,UAAU,EAAM,WAAW,GAAG,QAAQ,GAAK,aAAa,GAAM,kBAAkB,GAAK,MAAM,EAAG,OAAO,EAAE,KAAK,EAAG,MAAM,EAAE,KAAK,EAAG,MAAM,EAAE,KAAK,EAAG,MAAM,EAAE,KAAK,EAAG,MAAM,EAAE,KAAK,EAAG,MAAM,EAAE,KAAK,EAAG,MAAM,EAAE,aAAa,EAAK,EAAE,EAAK,CAAQ,EAA1S,IAA4S,EAAQ,GAAmB,GAAS,CAAC,IAAM,EAAM,EAAQ,IAAI,GAAG,EAAE,UAAU,IAAI,CAAC,CAAC,OAAO,OAAO,EAAQ,EAAW,EAAQ,IAAI,GAAG,EAAE,UAAU,SAAS,CAAC,CAAC,OAAO,OAAO,EAAQ,EAAM,GAAO,CAAC,IAAM,EAAK,KAAK,IAAI,GAAG,EAAM,IAAI,GAAG,EAAE,IAAI,CAAC,EAAQ,EAAI,KAAK,IAAI,GAAG,EAAM,IAAI,GAAG,EAAE,GAAG,CAAC,EAAQ,EAAM,KAAK,IAAI,GAAG,EAAM,IAAI,GAAG,EAAE,KAAK,CAAC,EAAQ,EAAO,KAAK,IAAI,GAAG,EAAM,IAAI,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,OAAK,MAAI,QAAM,SAAO,MAAM,EAAM,EAAK,OAAO,EAAO,CAAG,CAAE,EAAE,MAAM,CAAC,KAAK,EAAM,CAAK,EAAE,UAAU,EAAM,CAAU,CAAC,CAAE,EAAQ,IAAyB,EAAM,IAAgB,EAAM,IAAI,GAAM,CAAC,GAAG,CAAC,GAAM,kBAAkB,OAAO,EAAK,IAAM,EAAU,EAAK,iBAAiB,KAAW,EAAU,GAAe,KAAK,GAAG,CAAC,GAAW,CAAC,EAAU,OAAO,EAAK,IAAM,EAAa,EAAU,KAAK,EAAU,MAAM,EAAQ,EAAa,EAAU,IAAI,EAAU,OAAO,EAAQ,EAAa,EAAU,KAAK,EAAU,MAAM,EAAQ,EAAa,EAAU,IAAI,EAAU,OAAO,EAAE,MAAM,CAAC,GAAG,EAAK,gBAAgB,CAAC,EAAE,EAAa,EAAa,EAAE,EAAa,CAAY,CAAC,CAAE,CAAC,EAAQ,GAAuB,GAAc,CAAC,IAAM,EAAI,EAAa,IAAI,GAAU,CAAC,IAAM,EAAK,EAAO,OAAO,MAAM,EAAS,EAAE,EAAQ,EAAS,GAAgB,CAAI,EAAQ,EAAK,GAAU,MAAM,CAAC,EAAQ,EAAU,GAAU,WAAW,CAAC,EAAE,MAAM,CAAC,GAAU,IAAI,GAAG,GAAM,WAAW,EAAE,GAA6B,CAAI,EAAE,EAAS,KAAK,MAAM,EAAK,MAAM,CAAC,EAAE,KAAK,MAAM,EAAK,KAAK,CAAC,EAAE,KAAK,MAAM,EAAK,OAAO,CAAC,EAAE,KAAK,MAAM,EAAK,QAAQ,CAAC,EAAE,KAAK,MAAM,EAAU,MAAM,CAAC,EAAE,KAAK,MAAM,EAAU,KAAK,CAAC,EAAE,KAAK,MAAM,EAAU,OAAO,CAAC,EAAE,KAAK,MAAM,EAAU,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAE,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,GAAG,IAAM,GAAuB,OAAO,GAAyB,IAAM,EAAM,CAAC,EAAQ,EAAO,IAAI,IAAI,IAAI,IAAM,KAAY,EAAa,CAAC,IAAM,EAAK,EAAO,OAAO,MAAM,EAAS,EAAE,EAAQ,EAAS,GAAgB,CAAI,EAAE,GAAG,CAAC,EAAS,CAAC,EAAM,KAAK,CAAC,WAAS,MAAI,CAAC,EAAE,QAAS,CAAK,EAAO,IAAI,CAAQ,GAAE,EAAO,IAAI,EAAS,CAAC,CAAC,EAAE,EAAO,IAAI,CAAQ,CAAC,CAAC,KAAK,CAAC,WAAS,MAAI,CAAC,CAAE,CAAC,IAAI,GAAK,CAAC,EAAS,KAAW,EAAO,CAAC,GAAG,EAAQ,QAAQ,EAAE,CAAC,EAAM,KAAK,EAAQ,EAAE,EAAE,QAAS,CAAC,IAAM,EAAO,EAAQ,KAAK,GAAG,CAAC,CAAC,EAAuB,EAAE,MAAM,KAAK,CAAC,GAAG,EAAQ,GAAS,EAAO,EAAQ,IAAI,GAAG,GAAqB,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,OAAO,EAAE,IAAI,IAAM,KAAU,EAAQ,CAAC,IAAM,EAAiB,EAA0B,EAAO,MAAM,MAAM,EAAO,MAAM,iBAAiB,EAAO,MAAM,OAAO,yBAAyB,EAAE,EAAO,KAAK,GAAG,EAAiB,IAAI,GAAM,GAAyB,EAAK,EAAO,KAAK,EAAO,QAAQ,CAAC,CAAC,CAAE,CAAC,IAAM,EAAe,EAAQ,QAAQ,GAAQ,CAAC,GAAG,EAAO,MAAM,OAAO,gBAAgB,CAAC,EAAE,GAAG,GAA6B,EAAO,MAAM,OAAO,kBAAkB,CAAC,CAAC,CAAC,CAAC,EAAQ,EAAiB,EAAQ,QAAQ,GAAQ,EAAO,MAAM,OAAO,kBAAkB,CAAC,CAAC,EAAQ,EAAM,GAAmB,CAAO,EAAQ,EAAU,GAAiB,EAAO,IAAI,GAAG,EAAe,EAAS,CAAC,GAAG,EAAO,SAAS,GAAG,SAAS,IAAW,KAAK,EAAM,KAAK,UAAU,EAAM,UAAU,QAAQ,GAAK,WAAW,KAAK,IAAI,GAAG,EAAQ,IAAI,GAAG,EAAE,UAAU,YAAY,CAAC,CAAC,EAAE,WAAW,KAAK,IAAI,GAAG,EAAQ,IAAI,GAAG,EAAE,UAAU,YAAY,CAAC,CAAC,CAAC,EAAQ,EAAe,GAAwB,EAAO,CAAQ,EAAQ,EAAK,CAAC,GAAG,EAAO,KAAK,GAAG,SAAS,IAAW,MAAM,CAAC,GAAG,EAAO,KAAK,MAAM,YAAU,SAAS,GAAG,aAAa,GAAG,UAAU,GAAG,OAAO,EAAe,iBAAe,kBAAgB,EAAE,QAAQ,EAAO,KAAK,QAAQ,gBAAgB,EAAO,KAAK,gBAAgB,gBAAgB,EAAO,KAAK,eAAe,EAAE,EAAM,KAAK,CAAC,WAAS,MAAI,CAAC,CAAE,CAAqH,MAApH,IAAsB,EAAI,GAAwB,EAAM,MAAM,EAAE,IAAI,GAAwB,EAAE,SAAS,EAAE,QAAQ,CAAC,EAAS,EAAwB,EAAQ,OAAS,CAAC,GAAG,CAAC,IAAM,EAAM,EAAO,cAAyC,GAA3B,GAAoB,CAAK,EAAK,EAAM,CAAC,GAAO,CAAK,EAAE,EAAS,eAAe,EAAI,EAAE,IAAM,EAAO,OAAO,EAAO,eAAgB,UAAU,EAAO,cAAc,EAAE,EAAO,cAAc,IAA+B,GAAc,GAAO,OAAO,CAAC,EAAA,CAAG,OAAO,GAAM,EAAK,OAAO,CAAC,CAAC,KAAK,EAAuB,CAAC,CAAC,MAAM,EAAE,CAAM,EAAQ,EAAY,GAAuB,CAAY,EAAE,EAAM,aAAa,EAAY,EAAM,kBAAkB,EAAY,OAAO,IAAM,EAAqB,EAAY,IAAI,GAAM,GAAkB,EAAK,CAAK,CAAC,CAAC,CAAC,OAAO,OAAO,EAAQ,EAAgB,IAAI,IAAI,EAAqB,IAAI,GAAM,EAAK,GAAG,CAAC,EAG3jvB,IAAI,IAAM,KAAY,EAA4B,EAAgB,IAAI,EAAS,GAAG,GAAG,GAAqB,CAAQ,EAAI,IAAI,IAAM,KAAQ,EAAa,GAAG,CAAC,GAAiC,EAAK,KAAK,EAAK,QAAQ,CAAE,OAAO,EAAM,CAAC,QAAQ,KAAK,iDAAiD,CAAK,CAAE,CAAE,IAAI,IAAM,KAAY,GAAO,cAAc,CAAC,EAAE,CAAC,IAAM,EAAK,EAAO,OAAO,MAAM,EAAS,EAAE,EAAM,KAAc,GAAG,CAAC,IAAM,EAAO,EAA0B,EAAK,EAAS,IAAI,EAAQ,EAAI,YAAY,IAAI,EAAK,GAAQ,EAAI,EAAc,KAAK,GAA2B,EAAK,EAAS,CAAM,IAAG,EAAc,EAAK,OAAO,EAAM,CAAC,QAAQ,KAAK,qDAAqD,CAAK,CAAE,CAAC,CAAC,IAAM,EAAmB,IAAI,IAAU,EAAe,IAAI,IAAI,IAAI,IAAM,KAAQ,EAAY,CAAC,GAAK,CAAC,WAAS,QAAM,EAAQ,GAAM,IAAG,EAAe,IAAI,EAAK,EAAE,EAAE,IAAM,EAAU,EAAsB,CAAI,EAAK,GAAU,EAAmB,IAAI,CAAS,CAAE,CAAC,IAAI,GAAK,CAAC,EAAU,KAAU,EAAS,GAAG,CAAC,EAAmB,IAAI,CAAS,EAAE,CAAC,GAAG,EAAe,IAAI,EAAO,MAAM,EAAE,CAAC,GAA2B,EAAO,EAAO,OAAO,MAAM,EAAO,MAAM,EAAE,CAAC,QAAQ,EAAI,CAAC,EAAE,EAAQ,OAAO,CAAS,EAAE,QAAS,CAAC,GAA2B,EAAO,EAAO,OAAO,MAAM,EAAO,MAAM,CAAC,CAAE,CAAE,IAAM,EAAqB,EAAY,SAAS,EAI5wC,EAAc,GAAM,IAAI,IAAM,KAAQ,EAAY,CAAC,GAAK,CAAC,WAAS,QAAM,EAAK,GAAG,CAAC,IAAM,EAAI,GAAM,MAAM,EAA0B,EAAK,MAAM,EAAS,MAAM,OAAO,CAAC,EAAE,KAAQ,GAAK,mBAAiB,EAAc,IAAK,IAAM,EAAO,GAAwB,EAAK,EAAS,EAAM,GAAsB,CAAC,GAAK,eAAe,EAAE,GAAG,GAAuB,EAAK,EAAO,EAAI,CAAK,EAAE,CAEjX,IAAM,EAAa,GAAK,iBAAiB,GAAkB,EAAO,EAAI,GAAM,OAAO,GAAG,GAAoB,CAAM,EAAE,MAAM,GAAc,QAAQ,EAAE,GAA0B,EAAO,EAAS,CAAK,EAAE,GAAc,MAAM,CAAE,CAAC,MAAM,CAC9N,CAAC,CAAsF,GAArF,EAAuB,EAAqB,GAAsB,EAAM,CAAW,EAAK,EAAY,OAAO,CAAC,IAAM,EAAI,YAAY,IAAI,EAAK,GAAe,EAAI,EAAgB,MAAK,QAAQ,IAAI,wBAAwB,CAAC,IAAI,OAAO,EAAS,cAAc,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,QAAQ,EAAS,WAAW,OAAO,IAAI,EAAS,WAAW,QAAQ,GAAG,KAAK,GAAG,EAAS,WAAW,OAAO,EAAE,GAAG,EAAS,WAAW,QAAQ,IAAI,UAAU,EAAY,OAAO,MAAM,EAAS,KAAK,OAAO,MAAM,UAAU,EAAS,KAAK,OAAO,UAAU,WAAW,EAAS,KAAK,OAAO,WAAW,SAAS,EAAS,KAAK,OAAO,QAAQ,CAAC,EAAE,EAAgB,EAAK,CAAC,IAAM,EAAe,EAAqB,EAAY,EAAE,EAAE,SAAS,KAAW,EAAW,EAAqB,EAAY,EAAE,EAAE,KAAK,KAAW,EAAgB,EAAW,EAAsB,CAAU,EAAE,GAAS,EAAa,EAAgB,EAAQ,IAAI,CAAe,EAAE,KAAW,EAAU,GAAY,MAAM,EAA0B,EAAW,MAAM,GAAgB,MAAM,OAAO,CAAC,EAAE,KAAK,GAA2B,EAAO,EAAa,GAAsB,CAAC,GAAW,eAAe,CAAE,MAAM,GAAwB,IAAI,CAAG,OAAO,EAAM,CAAC,QAAQ,KAAK,oEAAoE,CAAK,CAAE,CAAC,EAAM,EAAO,sBAAsB,EAAI,CAAE,EAAS,OAAP,GAAK,MAAY,CAAC,GAAS,GAAQ,GAAM,EAAO,qBAAqB,CAAK,EAAE,EAAO,oBAAoB,cAAc,EAAiB,EAAE,EAAO,oBAAoB,cAAc,EAAiB,EAAE,EAAO,oBAAoB,YAAY,EAAe,EAAE,EAAO,oBAAoB,gBAAgB,EAAe,EAAE,EAAO,oBAAoB,QAAQ,EAAiB,EAAE,SAAS,oBAAoB,mBAAmB,CAAsB,EAAE,IAAI,IAAM,KAAY,EAAoB,OAAO,EAAG,EAAS,WAAW,EAAG,EAAoB,MAAM,EAAK,EAAO,eAAe,EAAO,cAAc,YAAY,CAAM,EAAM,IAAuB,eAAe,GAAsB,cAAc,YAAY,EAAqB,EAAG,GAAsB,KAAK,GAAmB,EAAE,GAAc,QAAQ,KAAK,EAAS,eAAe,EAAK,EAAE,IAAI,GAAK,EAAE,KAAU,EAAS,GAA2B,EAAO,EAAO,OAAO,MAAM,EAAO,MAAM,EAAE,CAAC,QAAQ,EAAI,CAAC,EAAG,EAAQ,MAAM,EAAE,GAA4B,UAAU,CAAC,KAAK,OAAO,QAAQ,EAAY,SAAO,OAAO,+BAA+B,WAAW,GAAwB,CAAC,CAAC,WAAW,aAAa,EAAa,QAAQ,EAAE,UAAU,GAAwB,CAAC,CAAC,WAAW,EAAE,UAAU,GAAwB,CAAC,CAAC,OAAO,MAAM,EAAE,SAAS,CAAC,CAAC,CAAK,CAAC,EAAE,EAAS,QAAQ,CAAE,CAAE,EAAE,CAAC,EAAK,EAAc,EAAa,EAAiB,EAAa,EAAgB,EAAgB,CAAC,EAAE,MAAoB,CAAC,IAAM,MAAS,CAAC,GAAc,GAAwB,CAAC,CAAE,EAAS,OAAP,EAAK,EAAS,GAAyB,CAAI,CAAE,EAAE,CAAC,CAAC,EAAsB,EAAM,MAAM,CAAC,MAAM,CAAC,MAAM,EAAM,OAAO,EAAE,OAAO,EAAM,OAAO,EAAE,GAAG,GAAU,gBAAgB,GAAG,CAAK,EAAE,SAAS,CAAC,GAAoB,EAAM,MAAM,CAAC,MAAM,CAAC,GAAG,GAAU,aAAa,WAAW,IAAI,eAAe,YAAY,EAAE,SAAS,CAAc,EAAK,MAAM,CAAC,MAAM,GAAU,WAAW,SAAS,kBAAkB,CAAC,EAAe,EAAM,MAAM,CAAC,SAAS,CAAC,UAAuB,EAAK,IAAI,CAAC,SAAS,EAAW,SAAS,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,MAAM,CAAC,SAAS,CAAC,UAAuB,EAAK,IAAI,CAAC,SAAS,EAAW,MAAM,MAAM,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,MAAM,CAAC,SAAS,CAAC,iBAAiB,IAAiB,EAAK,IAAI,CAAC,SAAS,EAAW,eAAe,eAAe,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,MAAM,CAAC,SAAS,CAAC,SAAsB,EAAK,IAAI,CAAC,SAAS,EAAW,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,EAAW,eAA4B,EAAMkB,EAAU,CAAC,SAAS,CAAc,EAAM,MAAM,CAAC,SAAS,CAAC,eAAe,IAAiB,EAAK,IAAI,CAAC,SAAS,EAAW,cAAc,cAAc,MAAM,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,MAAM,CAAC,SAAS,CAAC,YAAY,IAAiB,EAAK,IAAI,CAAC,SAAS,EAAW,cAAc,eAAe,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,MAAM,CAAC,SAAS,CAAC,YAAyB,EAAK,IAAI,CAAC,SAAS,EAAW,WAAW,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,MAAM,CAAC,SAAS,CAAC,OAAO,IAAiB,EAAM,IAAI,CAAC,SAAS,CAAC,EAAW,eAAe,OAAO,KAAK,IAAI,EAAW,cAAc,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,MAAM,CAAC,SAAS,CAAC,SAAS,IAAiB,EAAM,IAAI,CAAC,SAAS,CAAC,EAAW,YAAY,SAAS,IAAI,KAAQ,IAAI,EAAW,eAAe,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,MAAM,CAAC,SAAS,CAAC,WAAW,IAAiB,EAAK,IAAI,CAAC,SAAS,EAAW,iBAAiB,GAAG,KAAK,OAAO,EAAW,gBAAgB,GAAG,GAAG,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,EAAe,EAAK,MAAM,CAAC,MAAM,CAAC,QAAQ,IAAI,SAAS,GAAG,UAAU,CAAC,EAAE,SAAS,EAAW,aAAa,WAAW,oBAAoB,EAAW,eAAe,mBAAmB,EAAE,aAAa,oCAAuC,CAAC,EAAE,EAAW,eAAe,YAAY,OAAoB,EAAK,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,WAAW,EAAE,UAAU,+BAA+B,QAAQ,IAAI,SAAS,EAAE,SAAS,GAAG,EAAE,SAAS,EAAW,cAAc,WAAW,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,GAAmB,EAAM,MAAM,CAAC,SAAS,CAAC,EAAK,WAAW,MAAM,MAAM,KAAQ,IAAI,EAAK,OAAO,OAAO,UAAU,KAAQ,IAAI,EAAK,UAAU,OAAO,OAAO,KAAQ,IAAI,EAAK,UAAU,IAAI,KAAQ,IAAI,EAAK,UAAU,GAAG,CAAC,EAAE,EAAK,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,GAAW,SAAsB,EAAK,MAAM,CAAC,MAAM,CAAC,SAAS,QAAQ,KAAK,KAAK,KAAK,GAAW,QAAQ,SAAS,GAAG,IAAW,IAAS,OAA8B,IAAlB,EAAO,YAAgB,GAAG,EAAE,IAAI,KAAK,KAAK,GAAW,QAAQ,SAAS,GAAG,GAAG,CAAC,EAAE,cAAc,OAAO,QAAQ,GAAc,IAAI,GAAG,EAAE,SAAsB,EAAM,MAAM,CAAC,MAAM,CAAC,WAAW,mBAAmB,OAAO,mCAAmC,aAAa,EAAE,QAAQ,WAAW,eAAe,aAAa,SAAS,IAAI,SAAS,IAAI,UAAU,6BAA6B,EAAE,SAAS,CAAc,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,WAAW,SAAS,IAAI,EAAE,aAAa,CAAC,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,WAAW,GAAW,QAAQ,OAAO,cAAc,UAAU,SAAS,CAAC,CAAC,EAAe,EAAK,OAAO,CAAC,MAAM,CAAC,MAAM,OAAO,WAAW,IAAI,SAAS,GAAG,cAAc,SAAS,EAAE,SAAS,GAAW,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,SAAS,OAAO,IAAI,UAAU,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,QAAQ,UAAU,aAAa,EAAE,SAAS,EAAE,WAAW,GAAW,QAAQ,OAAO,cAAc,wBAAwB,wBAAwB,MAAM,GAAW,QAAQ,OAAO,cAAc,UAAU,SAAS,EAAE,SAAS,GAAW,QAAQ,IAAI,CAAC,EAAe,EAAM,OAAO,CAAC,MAAM,CAAC,MAAM,yBAAyB,SAAS,EAAE,EAAE,SAAS,CAAC,GAAW,QAAQ,MAAM,eAAe,EAAE,IAAI,OAAO,CAAC,CAAC,EAAE,GAAW,QAAQ,KAAkB,EAAK,OAAO,CAAC,MAAM,CAAC,MAAM,yBAAyB,SAAS,EAAE,EAAE,SAAS,GAAW,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,EAAe,EAAK,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,yBAAyB,SAAS,EAAE,UAAU,WAAW,EAAE,SAAS,GAAW,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAO,KAAiB,GAAW,MAAM,OAAO,GAAgB,EAAM,MAAM,CAAC,MAAM,CAAC,GAAG,GAAU,aAAa,QAAQ,GAAc,IAAI,GAAG,EAAE,SAAS,CAAc,EAAM,MAAM,CAAC,MAAM,GAAU,YAAY,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,GAAU,eAAe,SAAS,iBAAiB,CAAC,EAAe,EAAM,OAAO,CAAC,MAAM,GAAU,WAAW,SAAS,CAAC,GAAW,UAAU,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAW,KAAK,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,EAAK,IAAI,CAAC,IAAM,EAAO,KAAK,IAAI,IAAI,EAAK,OAAO,GAAG,EAAE,EAAQ,EAAQ,GAAW,SAAS,MAAM,GAAW,QAAQ,OAAO,EAAK,KAAK,OAAoB,EAAM,MAAM,CAAC,MAAM,CAAC,GAAG,GAAU,UAAU,QAAQ,gBAAgB,GAAG,EAAO,IAAI,MAAM,EAAK,QAAQ,UAAU,EAAQ,UAAU,yBAAyB,WAAW,EAAQ,uBAAuB,aAAa,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,GAAG,GAAU,SAAS,aAAa,EAAK,QAAQ,EAAE,MAAM,WAAW,EAAK,QAAQ,UAAU,EAAQ,UAAU,wBAAwB,CAAC,CAAC,EAAe,EAAK,OAAO,CAAC,MAAM,GAAU,cAAc,SAAS,EAAK,IAAI,CAAC,EAAe,EAAK,OAAO,CAAC,MAAM,CAAC,WAAW,OAAO,WAAW,EAAE,SAAS,EAAE,MAAM,EAAK,QAAQ,uBAAuB,EAAK,OAAO,cAAc,UAAU,SAAS,EAAE,SAAS,EAAK,QAAQ,EAAK,eAAe,EAAK,OAAO,cAAc,OAAO,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,EAAK,QAAQ,IAAI,IAAI,GAAG,EAAE,GAAG,EAAK,MAAM,CAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAA6rE,MAA5rE,IAAsB,aAAa,CAAC,KAAK,cAAc,aAAa,EAAE,YAAY,EAAE,iBAAiB,IAAI,YAAY,WAAW,cAAc,IAAI,aAAa,IAAI,YAAY,GAAK,eAAe,GAAK,iBAAiB,GAAM,eAAe,IAAI,aAAa,GAAG,gBAAgB,GAAM,MAAM,EAAK,EAA+5D,CAAC,UAAU,GAAsB,SAAS,CAAz6D,KAAK,CAAC,KAAK,EAAY,KAAK,MAAM,OAAO,QAAQ,CAAC,cAAc,UAAU,EAAE,aAAa,CAAC,cAAc,iBAAiB,EAAE,aAAa,aAAa,EAAE,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,gBAAgB,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,eAAe,EAAI,EAAE,YAAY,CAAC,KAAK,EAAY,OAAO,MAAM,eAAe,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,eAAe,EAAI,EAAE,iBAAiB,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,IAAI,IAAI,IAAI,IAAI,KAAK,KAAK,EAAE,eAAe,EAAI,EAAE,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,WAAW,aAAa,GAAG,IAAI,KAAK,IAAI,KAAK,KAAK,EAAE,eAAe,GAAK,OAAO,GAAG,EAAE,OAAO,UAAU,EAAE,gBAAgB,CAAC,KAAK,EAAY,QAAQ,MAAM,YAAY,aAAa,GAAM,aAAa,KAAK,cAAc,MAAM,OAAO,GAAG,EAAE,OAAO,WAAW,YAAY,qBAAqB,EAAE,YAAY,CAAC,KAAK,EAAY,KAAK,MAAM,UAAU,QAAQ,CAAC,cAAc,WAAW,SAAS,EAAE,aAAa,CAAC,cAAc,WAAW,SAAS,EAAE,aAAa,UAAU,EAAE,cAAc,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,aAAa,IAAI,IAAI,GAAG,IAAI,EAAE,KAAK,GAAG,eAAe,EAAI,EAAE,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,aAAa,IAAI,IAAI,GAAG,IAAI,EAAE,KAAK,GAAG,eAAe,EAAI,EAAE,YAAY,CAAC,KAAK,EAAY,QAAQ,MAAM,eAAe,aAAa,GAAK,aAAa,MAAM,cAAc,IAAI,EAAE,eAAe,CAAC,KAAK,EAAY,QAAQ,MAAM,kBAAkB,aAAa,GAAK,aAAa,MAAM,cAAc,IAAI,EAAE,iBAAiB,CAAC,KAAK,EAAY,QAAQ,MAAM,cAAc,aAAa,GAAM,aAAa,KAAK,cAAc,KAAK,EAAE,eAAe,CAAC,KAAK,EAAY,OAAO,MAAM,gBAAgB,aAAa,IAAI,IAAI,IAAI,IAAI,KAAK,KAAK,IAAI,eAAe,GAAK,KAAK,KAAK,OAAO,GAAO,CAAC,EAAM,gBAAgB,EAAE,MAAM,CAAC,KAAK,EAAY,QAAQ,MAAM,QAAQ,aAAa,GAAM,aAAa,OAAO,cAAc,OAAO,YAAY,wBAAwB,CAAwE,CAAC,CAAE,EAAA,CAAG,KCtFn6U,SAAwB,GAAgB,EAAM,CAAC,GAAK,CAAC,OAAK,QAAQ,EAAmF,OAA1E,IAAO,OAA2B,EAAK,GAAuB,CAAC,GAAG,CAAK,CAAC,EAAsB,EAAK,GAAuB,CAAC,GAAG,EAAM,QAAQ,IAAO,SAAS,CAAC,CAAC,EAAM,OAAO,CAAC,CAAE,2CAT5M,KAA2I,KAA6I,KAAmI,KAAoI,KAAiH,EAAoJ,GAAmB,GAAK,UAAgB,GAAmB,GAAK,UAAgB,GAA+B,GAAK,SAC91B,GAA+B,GAAuB,GAA4B,GAAO,EAAM,OAAO,MAAM,EAAQ,GAAsB,GAAuB,GAA+B,GAAO,EAAM,OAAO,MAAM,EAAoF,EAAoB,GAAgB,CAAC,KAAK,CAAC,KAAK,EAAY,KAAK,MAAM,OAAO,QAAQ,CAAC,OAAO,QAAQ,MAAM,EAAE,aAAa,CAAC,OAAO,QAAQ,MAAM,EAAE,aAAa,MAAM,EAAE,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,aAAa,GAAG,YAAY,aAAa,OAAO,GAAG,EAAE,OAAO,SAAS,CAAC,EAAE,OAAO,EAAE,GAAG,GAA+B,GAAG,EAAqB,CAAC,EAAQ,GAAuBC,EAAW,EAAkB,EAAQ,GAAuBA,EAAW,EAAkB,EAS72B,IAAS,SAAa,EAAO,iBAAiB,IAAoB,GAAgB,aAAa,CAAC,GAAG,GAAmB,aAAa,GAAG,GAAmB,aAAa,KAAK,OAAO,QAAQ,GAAM,UAAU,EAAE"}